mirror of
https://github.com/penpot/penpot.git
synced 2025-05-30 16:26:18 +02:00
🐛 Fix import error messages (#6265)
This commit is contained in:
parent
6f2f1b7a76
commit
caf558f8dd
6 changed files with 83 additions and 18 deletions
|
@ -291,7 +291,7 @@
|
|||
|
||||
import-error?
|
||||
[:div {:class (stl/css :error-message)}
|
||||
(tr "dashboard.import.import-error")]
|
||||
(tr "labels.error")]
|
||||
|
||||
(and (not import-success?) (some? progress))
|
||||
[:div {:class (stl/css :progress-message)} (parse-progress-message progress)])
|
||||
|
@ -443,7 +443,12 @@
|
|||
|
||||
(and (seq entries)
|
||||
(every? #(= :import-success (:status %)) entries))
|
||||
(reset! status* :import-success)))
|
||||
(reset! status* :import-success)
|
||||
|
||||
(and (seq entries)
|
||||
(and (every? #(not= :import-ready (:status %)) entries)
|
||||
(some #(= :import-error (:status %)) entries)))
|
||||
(reset! status* :import-error)))
|
||||
|
||||
;; Run analyze operation on component mount
|
||||
(mf/with-effect []
|
||||
|
@ -469,15 +474,30 @@
|
|||
{:level (if (zero? import-success-total) :warning :success)
|
||||
:content (tr "dashboard.import.import-message" (i18n/c import-success-total))}])
|
||||
|
||||
(for [entry entries]
|
||||
[:> import-entry* {:edition edition
|
||||
:key (dm/str (:uri entry) "/" (:file-id entry))
|
||||
:entry entry
|
||||
:entries entries
|
||||
:on-edit on-edit
|
||||
:on-change on-entry-change
|
||||
:on-delete on-entry-delete
|
||||
:can-be-deleted (> (count entries) 1)}])
|
||||
(when (= :import-error status)
|
||||
[:& context-notification
|
||||
{:level :error
|
||||
:class (stl/css :context-notification-error)
|
||||
:content (tr "dashboard.import.import-error.disclaimer")}])
|
||||
|
||||
(if (= :import-error status)
|
||||
[:div {:class (stl/css :import-error-disclaimer)}
|
||||
[:div (tr "dashboard.import.import-error.message1")]
|
||||
[:ul {:class (stl/css :import-error-list)}
|
||||
(for [entry entries]
|
||||
(when (= :import-error (:status entry))
|
||||
[:li {:class (stl/css :import-error-list-enry)} (:name entry)]))]
|
||||
[:div (tr "dashboard.import.import-error.message2")]]
|
||||
|
||||
(for [entry entries]
|
||||
[:> import-entry* {:edition edition
|
||||
:key (dm/str (:uri entry) "/" (:file-id entry))
|
||||
:entry entry
|
||||
:entries entries
|
||||
:on-edit on-edit
|
||||
:on-change on-entry-change
|
||||
:on-delete on-entry-delete
|
||||
:can-be-deleted (> (count entries) 1)}]))
|
||||
|
||||
(when (some? template)
|
||||
[:> import-entry* {:entry (assoc template :status status)
|
||||
|
@ -499,6 +519,7 @@
|
|||
:on-click on-continue}])
|
||||
|
||||
(when (or (= :import-success status)
|
||||
(= :import-error status)
|
||||
(= :import-progress status))
|
||||
[:input {:class (stl/css :accept-btn)
|
||||
:type "button"
|
||||
|
|
17
frontend/src/app/main/ui/dashboard/import.scss
vendored
17
frontend/src/app/main/ui/dashboard/import.scss
vendored
|
@ -192,3 +192,20 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.context-notification-error {
|
||||
--context-notification-bg-color: var(--modal-background-color);
|
||||
}
|
||||
|
||||
.import-error-disclaimer {
|
||||
color: var(--color-foreground-primary);
|
||||
}
|
||||
|
||||
.import-error-list {
|
||||
padding: 0 var(--sp-l);
|
||||
list-style: disc;
|
||||
}
|
||||
|
||||
.import-error-list-enry {
|
||||
padding: var(--sp-xs) 0;
|
||||
}
|
||||
|
|
|
@ -38,13 +38,16 @@
|
|||
"They are persistent, informative and non-actionable.
|
||||
They are contextual messages in specific areas off the app"
|
||||
{::mf/props :obj}
|
||||
[{:keys [level content links is-html] :as props}]
|
||||
[:aside {:class (stl/css-case :context-notification true
|
||||
:contain-html is-html
|
||||
:warning (= level :warning)
|
||||
:error (= level :error)
|
||||
:success (= level :success)
|
||||
:info (= level :info))}
|
||||
[{:keys [level content links is-html class] :as props}]
|
||||
[:aside {:class (dm/str
|
||||
class
|
||||
" "
|
||||
(stl/css-case :context-notification true
|
||||
:contain-html is-html
|
||||
:warning (= level :warning)
|
||||
:error (= level :error)
|
||||
:success (= level :success)
|
||||
:info (= level :info)))}
|
||||
|
||||
(get-icon-by-level level)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue