mirror of
https://github.com/penpot/penpot.git
synced 2025-06-11 07:51:39 +02:00
🎉 Add workspace read-only setting
This commit is contained in:
parent
6b7adec617
commit
cd47c0356a
22 changed files with 567 additions and 460 deletions
|
@ -21,6 +21,7 @@
|
|||
[app.main.repo :as rp]
|
||||
[app.main.store :as st]
|
||||
[app.main.ui.components.dropdown :refer [dropdown]]
|
||||
[app.main.ui.context :as ctx]
|
||||
[app.main.ui.export :refer [export-progress-widget]]
|
||||
[app.main.ui.formats :as fmt]
|
||||
[app.main.ui.hooks.resize :as r]
|
||||
|
@ -107,13 +108,14 @@
|
|||
|
||||
(mf/defc menu
|
||||
[{:keys [layout project file team-id] :as props}]
|
||||
(let [show-menu? (mf/use-state false)
|
||||
show-sub-menu? (mf/use-state false)
|
||||
editing? (mf/use-state false)
|
||||
edit-input-ref (mf/use-ref nil)
|
||||
objects (mf/deref refs/workspace-page-objects)
|
||||
frames (->> (cph/get-immediate-children objects uuid/zero)
|
||||
(filterv cph/frame-shape?))
|
||||
(let [show-menu? (mf/use-state false)
|
||||
show-sub-menu? (mf/use-state false)
|
||||
editing? (mf/use-state false)
|
||||
edit-input-ref (mf/use-ref nil)
|
||||
objects (mf/deref refs/workspace-page-objects)
|
||||
frames (->> (cph/get-immediate-children objects uuid/zero)
|
||||
(filterv cph/frame-shape?))
|
||||
workspace-read-only? (mf/use-ctx ctx/workspace-read-only?)
|
||||
|
||||
add-shared-fn
|
||||
#(st/emit! (dwl/set-file-shared (:id file) true))
|
||||
|
@ -328,25 +330,27 @@
|
|||
(tr "workspace.header.menu.show-grid"))]
|
||||
[:span.shortcut (sc/get-tooltip :toggle-grid)]]
|
||||
|
||||
[:li {:on-click (fn []
|
||||
(r/set-resize-type! :bottom)
|
||||
(st/emit! (dw/remove-layout-flag :textpalette)
|
||||
(toggle-flag :colorpalette)))}
|
||||
[:span
|
||||
(if (contains? layout :colorpalette)
|
||||
(tr "workspace.header.menu.hide-palette")
|
||||
(tr "workspace.header.menu.show-palette"))]
|
||||
[:span.shortcut (sc/get-tooltip :toggle-colorpalette)]]
|
||||
(when-not workspace-read-only?
|
||||
[:*
|
||||
[:li {:on-click (fn []
|
||||
(r/set-resize-type! :bottom)
|
||||
(st/emit! (dw/remove-layout-flag :textpalette)
|
||||
(toggle-flag :colorpalette)))}
|
||||
[:span
|
||||
(if (contains? layout :colorpalette)
|
||||
(tr "workspace.header.menu.hide-palette")
|
||||
(tr "workspace.header.menu.show-palette"))]
|
||||
[:span.shortcut (sc/get-tooltip :toggle-colorpalette)]]
|
||||
|
||||
[:li {:on-click (fn []
|
||||
(r/set-resize-type! :bottom)
|
||||
(st/emit! (dw/remove-layout-flag :colorpalette)
|
||||
(toggle-flag :textpalette)))}
|
||||
[:span
|
||||
(if (contains? layout :textpalette)
|
||||
(tr "workspace.header.menu.hide-textpalette")
|
||||
(tr "workspace.header.menu.show-textpalette"))]
|
||||
[:span.shortcut (sc/get-tooltip :toggle-textpalette)]]
|
||||
[:li {:on-click (fn []
|
||||
(r/set-resize-type! :bottom)
|
||||
(st/emit! (dw/remove-layout-flag :colorpalette)
|
||||
(toggle-flag :textpalette)))}
|
||||
[:span
|
||||
(if (contains? layout :textpalette)
|
||||
(tr "workspace.header.menu.hide-textpalette")
|
||||
(tr "workspace.header.menu.show-textpalette"))]
|
||||
[:span.shortcut (sc/get-tooltip :toggle-textpalette)]]])
|
||||
|
||||
[:li {:on-click #(st/emit! (toggle-flag :display-artboard-names))}
|
||||
[:span
|
||||
|
@ -436,6 +440,7 @@
|
|||
(let [team-id (:team-id project)
|
||||
zoom (mf/deref refs/selected-zoom)
|
||||
params {:page-id page-id :file-id (:id file) :section "interactions"}
|
||||
workspace-read-only? (mf/use-ctx ctx/workspace-read-only?)
|
||||
|
||||
close-modals
|
||||
(mf/use-callback
|
||||
|
@ -474,13 +479,14 @@
|
|||
[:div.options-section
|
||||
[:& persistence-state-widget]
|
||||
[:& export-progress-widget]
|
||||
[:button.document-history
|
||||
{:alt (tr "workspace.sidebar.history" (sc/get-tooltip :toggle-history))
|
||||
:aria-label (tr "workspace.sidebar.history" (sc/get-tooltip :toggle-history))
|
||||
:class (when (contains? layout :document-history) "selected")
|
||||
:on-click #(st/emit! (-> (dw/toggle-layout-flag :document-history)
|
||||
(vary-meta assoc ::ev/origin "workspace-header")))}
|
||||
i/recent]]
|
||||
(when-not workspace-read-only?
|
||||
[:button.document-history
|
||||
{:alt (tr "workspace.sidebar.history" (sc/get-tooltip :toggle-history))
|
||||
:aria-label (tr "workspace.sidebar.history" (sc/get-tooltip :toggle-history))
|
||||
:class (when (contains? layout :document-history) "selected")
|
||||
:on-click #(st/emit! (-> (dw/toggle-layout-flag :document-history)
|
||||
(vary-meta assoc ::ev/origin "workspace-header")))}
|
||||
i/recent])]
|
||||
|
||||
[:div.options-section
|
||||
[:& zoom-widget-workspace
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue