From 0ab126748f6ebf9b8ad87ba8940f9eb4ebacaaaf Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Tue, 27 Jan 2026 15:07:18 +0100 Subject: [PATCH] :lipstick: Add format rule for code comments (#8211) * :lipstick: Add format rule for code comments * :arrow_up: Update linter and formatter on devenv --- .clj-kondo/config.edn | 9 ++ .cljfmt.edn | 5 + backend/src/app/binfile/v3.clj | 5 +- backend/src/app/http/sse.clj | 1 - .../app/rpc/commands/teams_invitations.clj | 8 +- backend/src/app/util/events.clj | 2 +- backend/test/backend_tests/rpc_file_test.clj | 8 +- .../test/backend_tests/rpc_profile_test.clj | 2 +- .../test/backend_tests/rpc_project_test.clj | 4 +- common/src/app/common/data.cljc | 4 +- common/src/app/common/files/repair.cljc | 74 ++++----- .../src/app/common/files/shapes_builder.cljc | 4 +- common/src/app/common/logic/libraries.cljc | 25 ++- common/src/app/common/logic/shapes.cljc | 42 ++--- common/src/app/common/logic/variants.cljc | 2 +- common/src/app/common/text.cljc | 2 +- common/src/app/common/types/container.cljc | 8 +- common/src/app/common/types/file.cljc | 8 +- common/src/app/common/types/fills/impl.cljc | 2 +- .../app/common/types/shape/interactions.cljc | 32 ++-- common/src/app/common/types/shape_tree.cljc | 6 +- common/src/app/common/types/text.cljc | 2 +- .../common_tests/logic/text_sync_test.cljc | 4 +- .../common_tests/logic/variants_test.cljc | 2 +- docker/devenv/Dockerfile | 5 +- frontend/src/app/main/data/dashboard.cljs | 2 +- frontend/src/app/main/data/fonts.cljs | 18 +-- frontend/src/app/main/data/plugins.cljs | 4 +- .../src/app/main/data/style_dictionary.cljs | 12 +- .../app/main/data/workspace/libraries.cljs | 6 +- .../src/app/main/data/workspace/media.cljs | 6 +- .../app/main/data/workspace/modifiers.cljs | 4 +- .../src/app/main/data/workspace/shapes.cljs | 2 +- .../data/workspace/tokens/application.cljs | 2 +- .../app/main/data/workspace/transforms.cljs | 6 +- .../src/app/main/data/workspace/variants.cljs | 26 +-- frontend/src/app/main/fonts.cljs | 4 +- frontend/src/app/main/render.cljs | 2 +- frontend/src/app/main/ui/comments.cljs | 2 +- .../src/app/main/ui/components/forms.cljs | 2 +- .../app/main/ui/dashboard/subscription.cljs | 4 +- frontend/src/app/main/ui/exports/assets.cljs | 4 +- frontend/src/app/main/ui/hooks/resize.cljs | 4 +- .../main/ui/inspect/attributes/common.cljs | 2 +- .../app/main/ui/inspect/attributes/text.cljs | 20 +-- frontend/src/app/main/ui/inspect/styles.cljs | 8 +- .../main/ui/inspect/styles/panels/text.cljs | 2 +- .../notifications/context_notification.cljs | 2 +- .../src/app/main/ui/shapes/custom_stroke.cljs | 4 +- frontend/src/app/main/ui/shapes/frame.cljs | 12 +- frontend/src/app/main/ui/viewer.cljs | 8 +- frontend/src/app/main/ui/viewer/shapes.cljs | 2 +- .../app/main/ui/workspace/left_header.cljs | 2 +- .../app/main/ui/workspace/shapes/frame.cljs | 2 +- .../sidebar/assets/file_library.cljs | 2 +- .../options/menus/color_selection.cljs | 2 +- .../sidebar/options/rows/stroke_row.cljs | 2 +- .../forms/controls/color_input.cljs | 4 +- .../tokens/management/token_tree.cljs | 2 +- .../main/ui/workspace/viewport/actions.cljs | 2 +- .../ui/workspace/viewport/path_actions.cljs | 2 +- .../main/ui/workspace/viewport/widgets.cljs | 4 +- frontend/src/app/render_wasm/api/texts.cljs | 2 +- frontend/src/app/render_wasm/api/webgl.cljs | 2 +- frontend/src/app/render_wasm/serializers.cljs | 4 +- .../app/render_wasm/serializers/color.cljs | 2 +- frontend/src/app/util/clipboard.cljs | 2 +- frontend/src/app/util/dom/dnd.cljs | 6 +- .../src/app/util/text/content/to_dom.cljs | 4 +- .../logic/comp_remove_swap_slots_test.cljs | 150 +++++++++--------- .../logic/components_and_tokens.cljs | 26 +-- .../logic/copying_and_duplicating_test.cljs | 58 +++---- .../logic/frame_guides_test.cljs | 2 +- .../logic/pasting_in_containers_test.cljs | 100 ++++++------ .../tokens/logic/token_actions_test.cljs | 6 +- 75 files changed, 417 insertions(+), 407 deletions(-) diff --git a/.clj-kondo/config.edn b/.clj-kondo/config.edn index 1d5149d6b6..fba4cac7bc 100644 --- a/.clj-kondo/config.edn +++ b/.clj-kondo/config.edn @@ -45,6 +45,15 @@ :potok/reify-type {:level :error} + :redundant-primitive-coercion + {:level :off} + + :unused-excluded-var + {:level :off} + + :unresolved-excluded-var + {:level :off} + :missing-protocol-method {:level :off} diff --git a/.cljfmt.edn b/.cljfmt.edn index 38cfeb89b6..ad56b8c70d 100644 --- a/.cljfmt.edn +++ b/.cljfmt.edn @@ -2,6 +2,11 @@ :remove-multiple-non-indenting-spaces? false :remove-surrounding-whitespace? true :remove-consecutive-blank-lines? false + :indent-line-comments? true + :parallel? true + :align-form-columns? false + ;; :align-map-columns? false + ;; :align-single-column-lines? false :extra-indents {rumext.v2/fnc [[:inner 0]] cljs.test/async [[:inner 0]] promesa.exec/thread [[:inner 0]] diff --git a/backend/src/app/binfile/v3.clj b/backend/src/app/binfile/v3.clj index bd6c041b0a..0db826e407 100644 --- a/backend/src/app/binfile/v3.clj +++ b/backend/src/app/binfile/v3.clj @@ -873,11 +873,8 @@ (import-storage-objects cfg) (let [files (get manifest :files) - result (reduce (fn [result {:keys [id] :as file}] + result (reduce (fn [result file] (let [name' (get file :name) - name' (if (map? name) - (get name id) - name') file (assoc file :name name')] (conj result (import-file cfg file)))) [] diff --git a/backend/src/app/http/sse.clj b/backend/src/app/http/sse.clj index 747452a7f7..da5fd4e05a 100644 --- a/backend/src/app/http/sse.clj +++ b/backend/src/app/http/sse.clj @@ -6,7 +6,6 @@ (ns app.http.sse "SSE (server sent events) helpers" - (:refer-clojure :exclude [tap]) (:require [app.common.data :as d] [app.common.logging :as l] diff --git a/backend/src/app/rpc/commands/teams_invitations.clj b/backend/src/app/rpc/commands/teams_invitations.clj index b4bc676acf..5cffdd0c69 100644 --- a/backend/src/app/rpc/commands/teams_invitations.clj +++ b/backend/src/app/rpc/commands/teams_invitations.clj @@ -248,11 +248,11 @@ invitations (into #{} (comp - ;; We don't re-send invitations to - ;; already existing members + ;; We don't re-send invitations to + ;; already existing members (remove #(contains? team-members (:email %))) - ;; We don't send invitations to - ;; join-requested members + ;; We don't send invitations to + ;; join-requested members (remove #(contains? join-requests (:email %))) (map (fn [{:keys [email role]}] (create-invitation cfg diff --git a/backend/src/app/util/events.clj b/backend/src/app/util/events.clj index 5fd8b6474c..365ae58bcf 100644 --- a/backend/src/app/util/events.clj +++ b/backend/src/app/util/events.clj @@ -8,7 +8,7 @@ "A generic asynchronous events notifications subsystem; used mainly for mark event points in functions and be able to attach listeners to them. Mainly used in http.sse for progress reporting." - (:refer-clojure :exclude [tap run!]) + (:refer-clojure :exclude [run!]) (:require [app.common.exceptions :as ex] [app.common.logging :as l] diff --git a/backend/test/backend_tests/rpc_file_test.clj b/backend/test/backend_tests/rpc_file_test.clj index f327571448..beb1327d8b 100644 --- a/backend/test/backend_tests/rpc_file_test.clj +++ b/backend/test/backend_tests/rpc_file_test.clj @@ -841,7 +841,7 @@ out (th/command! data) error (:error out)] - ;; (th/print-result! out) + ;; (th/print-result! out) (t/is (th/ex-info? error)) (t/is (th/ex-of-type? error :not-found)))) @@ -863,7 +863,7 @@ out (th/command! data) error (:error out)] - ;; (th/print-result! out) + ;; (th/print-result! out) (t/is (th/ex-info? error)) (t/is (th/ex-of-type? error :not-found)))) @@ -1261,7 +1261,7 @@ (t/is (= 1 (count rows))) (t/is (every? #(some? (:data %)) rows))) - ;; Mark the file ellegible again for GC + ;; Mark the file ellegible again for GC (th/db-update! :file {:has-media-trimmed false} {:id (:id file)}) @@ -1318,7 +1318,7 @@ {:file-id (:id file) :type "fragment"} {:order-by [:created-at]})] - ;; (pp/pprint rows) + ;; (pp/pprint rows) (t/is (= 2 (count rows))) (t/is (nil? (:data row1))) (t/is (= "storage" (:backend row1))) diff --git a/backend/test/backend_tests/rpc_profile_test.clj b/backend/test/backend_tests/rpc_profile_test.clj index eb700936dd..ec18cc10b2 100644 --- a/backend/test/backend_tests/rpc_profile_test.clj +++ b/backend/test/backend_tests/rpc_profile_test.clj @@ -536,7 +536,7 @@ :token rtoken} {:keys [result error] :as out} (th/command! data)] - ;; (th/print-result! out) + ;; (th/print-result! out) (t/is (nil? error)) (t/is (map? result)) (t/is (string? (:invitation-token result)))))) diff --git a/backend/test/backend_tests/rpc_project_test.clj b/backend/test/backend_tests/rpc_project_test.clj index e2ebdaa034..6d0778776a 100644 --- a/backend/test/backend_tests/rpc_project_test.clj +++ b/backend/test/backend_tests/rpc_project_test.clj @@ -30,7 +30,7 @@ :team-id (:id team) :name "test project"} out (th/command! data)] - ;; (th/print-result! out) + ;; (th/print-result! out) (t/is (nil? (:error out))) (let [result (:result out)] @@ -93,7 +93,7 @@ :id project-id} out (th/command! data)] - ;; (th/print-result! out) + ;; (th/print-result! out) (t/is (nil? (:error out))) (t/is (nil? (:result out)))) diff --git a/common/src/app/common/data.cljc b/common/src/app/common/data.cljc index 6f05c439da..e89f7c91da 100644 --- a/common/src/app/common/data.cljc +++ b/common/src/app/common/data.cljc @@ -1092,9 +1092,9 @@ (if (number? num) (try (let [num-str (mth/to-fixed num precision) - ;; Remove all trailing zeros after the comma 100.00000 + ;; Remove all trailing zeros after the comma 100.00000 num-str (str/replace num-str trail-zeros-regex-1 "")] - ;; Remove trailing zeros after a decimal number: 0.001|00| + ;; Remove trailing zeros after a decimal number: 0.001|00| (if-let [m (re-find trail-zeros-regex-2 num-str)] (str/replace num-str (first m) (second m)) num-str)) diff --git a/common/src/app/common/files/repair.cljc b/common/src/app/common/files/repair.cljc index eaa70209a2..454cc78e0a 100644 --- a/common/src/app/common/files/repair.cljc +++ b/common/src/app/common/files/repair.cljc @@ -44,7 +44,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Set parent to root frame. + ;; Set parent to root frame. (log/debug :hint " -> set to " :parent-id uuid/zero) (assoc shape :parent-id uuid/zero))] @@ -57,7 +57,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [parent-shape] - ; Add shape to parent's children list + ;; Add shape to parent's children list (log/debug :hint " -> add children to" :parent-id (:id parent-shape)) (update parent-shape :shapes conj (:id shape)))] @@ -70,7 +70,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Remove duplicated + ;; Remove duplicated (log/debug :hint " -> remove duplicated children") (update shape :shapes distinct))] @@ -102,7 +102,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Locate the first frame in parents and set frame-id to it. + ;; Locate the first frame in parents and set frame-id to it. (let [page (ctpl/get-page file-data page-id) frame (cfh/get-frame (:objects page) (:parent-id shape)) frame-id (or (:id frame) uuid/zero)] @@ -118,7 +118,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Locate the first frame in parents and set frame-id to it. + ;; Locate the first frame in parents and set frame-id to it. (let [page (ctpl/get-page file-data page-id) frame (cfh/get-frame (:objects page) (:parent-id shape)) frame-id (or (:id frame) uuid/zero)] @@ -134,7 +134,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Set the :shape as main instance root + ;; Set the :shape as main instance root (log/debug :hint " -> set :main-instance") (assoc shape :main-instance true))] @@ -147,12 +147,13 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Set :component-file to local file + ;; Set :component-file to local file (log/debug :hint " -> set :component-file to local file") (assoc shape :component-file (:id file-data)))] - ; There is no solution that may recover it with confidence - ;; (log/warn :hint " -> CANNOT REPAIR THIS AUTOMATICALLY.") - ;; shape)] + + ;; There is no solution that may recover it with confidence + ;; (log/warn :hint " -> CANNOT REPAIR THIS AUTOMATICALLY.") + ;; shape)] (log/dbg :hint "repairing shape :component-main-external" :id (:id shape) :name (:name shape) :page-id page-id) (-> (pcb/empty-changes nil page-id) @@ -166,12 +167,12 @@ repair-shape (fn [shape] - ; Detach the shape and convert it to non instance. + ;; Detach the shape and convert it to non instance. (log/debug :hint " -> detach shape" :shape-id (:id shape)) (ctk/detach-shape shape))] - ; There is no solution that may recover it with confidence - ;; (log/warn :hint " -> CANNOT REPAIR THIS AUTOMATICALLY.") - ;; shape)] + ;; There is no solution that may recover it with confidence + ;; (log/warn :hint " -> CANNOT REPAIR THIS AUTOMATICALLY.") + ;; shape)] (log/dbg :hint "repairing shape :component-not-found" :id (:id shape) :name (:name shape) :page-id page-id) (-> (pcb/empty-changes nil page-id) @@ -184,7 +185,7 @@ repair-component (fn [component] - ; Assign main instance in the component to current shape + ;; Assign main instance in the component to current shape (log/debug :hint " -> assign main-instance-id" :component-id (:id component)) (assoc component :main-instance-id (:id shape))) @@ -207,7 +208,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-component (fn [component] - ; Assign main instance in the component to current shape + ;; Assign main instance in the component to current shape (log/debug :hint " -> assign main-instance-page" :component-id (:id component)) (assoc component :main-instance-page page-id))] (log/dbg :hint "repairing shape :invalid-main-instance-page" :id (:id shape) :name (:name shape) :page-id page-id) @@ -219,7 +220,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; There is no solution that may recover it with confidence + ;; There is no solution that may recover it with confidence (log/warn :hint " -> CANNOT REPAIR THIS AUTOMATICALLY.") shape)] @@ -232,7 +233,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Unset the :shape as main instance root + ;; Unset the :shape as main instance root (log/debug :hint " -> unset :main-instance") (dissoc shape :main-instance))] @@ -245,7 +246,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a top copy root. + ;; Convert the shape in a top copy root. (log/debug :hint " -> set :component-root") (assoc shape :component-root true))] @@ -258,7 +259,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a nested copy root. + ;; Convert the shape in a nested copy root. (log/debug :hint " -> unset :component-root") (dissoc shape :component-root))] @@ -307,8 +308,8 @@ (log/debug :hint " -> detach shape" :shape-id (:id shape)) (ctk/detach-shape shape))] - ; If the shape still refers to the remote component, try to find the corresponding near one - ; and link to it. If not, detach the shape. + ;; If the shape still refers to the remote component, try to find the corresponding near one + ;; and link to it. If not, detach the shape. (log/dbg :hint "repairing shape :ref-shape-not-found" :id (:id shape) :name (:name shape) :page-id page-id) (if (some? matching-shape) (-> (pcb/empty-changes nil page-id) @@ -324,7 +325,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert shape in a normal copy, removing nested copy status + ;; Convert shape in a normal copy, removing nested copy status (log/debug :hint " -> unhead shape") (ctk/unhead-shape shape))] @@ -337,7 +338,7 @@ [_ {:keys [shape page-id args] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert shape in a nested head, adding component info + ;; Convert shape in a nested head, adding component info (log/debug :hint " -> reroot shape") (ctk/rehead-shape shape (:component-file args) (:component-id args)))] @@ -350,8 +351,9 @@ [_ {:keys [shape args] :as error} file-data _] (let [repair-component (fn [component] - (let [objects (:objects component) ;; we only have encounter this on deleted components, - ;; so the relevant objects are inside the component + (let [objects (:objects component) + ;; we only have encounter this on deleted components, + ;; so the relevant objects are inside the component to-detach (->> (:cycles-ids args) (map #(get objects %)) (map #(ctn/get-head-shape objects %)) @@ -378,7 +380,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Remove shape-ref + ;; Remove shape-ref (log/debug :hint " -> unset :shape-ref") (dissoc shape :shape-ref))] @@ -391,7 +393,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a nested main head. + ;; Convert the shape in a nested main head. (log/debug :hint " -> unset :component-root") (dissoc shape :component-root))] @@ -404,7 +406,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a top main head. + ;; Convert the shape in a top main head. (log/debug :hint " -> set :component-root") (assoc shape :component-root true))] @@ -418,7 +420,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a nested copy head. + ;; Convert the shape in a nested copy head. (log/debug :hint " -> unset :component-root") (dissoc shape :component-root))] @@ -431,7 +433,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a top copy root. + ;; Convert the shape in a top copy root. (log/debug :hint " -> set :component-root") (assoc shape :component-root true))] @@ -444,7 +446,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Detach the shape and convert it to non instance. + ;; Detach the shape and convert it to non instance. (log/debug :hint " -> detach shape" :shape-id (:id shape)) (ctk/detach-shape shape))] @@ -457,7 +459,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Detach the shape and convert it to non instance. + ;; Detach the shape and convert it to non instance. (log/debug :hint " -> detach shape" :shape-id (:id shape)) (ctk/detach-shape shape))] @@ -470,7 +472,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; There is no solution that may recover it with confidence + ;; There is no solution that may recover it with confidence (log/warn :hint " -> CANNOT REPAIR THIS AUTOMATICALLY.") shape)] @@ -483,7 +485,7 @@ [_ {:keys [shape page-id] :as error} file-data _] (let [repair-shape (fn [shape] - ; Convert the shape in a frame. + ;; Convert the shape in a frame. (log/debug :hint " -> set :type :frame") (assoc shape :type :frame :fills [] @@ -502,7 +504,7 @@ [_ {:keys [shape] :as error} file-data _] (let [repair-component (fn [component] - ; Remove the objects key, or set it to {} if the component is deleted + ;; Remove the objects key, or set it to {} if the component is deleted (if (:deleted component) (do (log/debug :hint " -> set :objects {}") diff --git a/common/src/app/common/files/shapes_builder.cljc b/common/src/app/common/files/shapes_builder.cljc index 004b495583..76b6ef4c04 100644 --- a/common/src/app/common/files/shapes_builder.cljc +++ b/common/src/app/common/files/shapes_builder.cljc @@ -430,8 +430,8 @@ (assoc :frame-id frame-id) (assoc :svg-viewbox vbox) (assoc :svg-attrs props) - ;; We need to ensure fills are empty on import process - ;; because setup-shape assings one by default. + ;; We need to ensure fills are empty on import process + ;; because setup-shape assings one by default. (assoc :fills []) (merge radius-attrs))))) diff --git a/common/src/app/common/logic/libraries.cljc b/common/src/app/common/logic/libraries.cljc index acc4eb1434..93d6b5008e 100644 --- a/common/src/app/common/logic/libraries.cljc +++ b/common/src/app/common/logic/libraries.cljc @@ -49,9 +49,9 @@ (def log-container-ids #{}) (def updatable-attrs (->> (seq (keys ctk/sync-attrs)) - ;; We don't update the flex-child attrs + ;; We don't update the flex-child attrs (remove ctk/swap-keep-attrs) - ;; We don't do automatic update of the `layout-grid-cells` property. + ;; We don't do automatic update of the `layout-grid-cells` property. (remove #(= :layout-grid-cells %)))) (defn enabled-shape? @@ -1898,10 +1898,10 @@ (gsh/absolute-move shape new-pos))) (defn- switch-path-change-value - [prev-shape ;; The shape before the switch - current-shape ;; The shape after the switch (a clean copy) - ref-shape ;; The referenced shape on the main component - ;; before the switch + [prev-shape ; The shape before the switch + current-shape ; The shape after the switch (a clean copy) + ref-shape ; The referenced shape on the main component + ; before the switch attr] (let [old-width (-> ref-shape :selrect :width) new-width (-> prev-shape :selrect :width) @@ -1918,10 +1918,9 @@ (defn- switch-text-change-value - [prev-content ;; The :content of the text before the switch - current-content ;; The :content of the text after the switch (a clean copy) - ref-content touched] ;; The :content of the referenced text on the main component - ;; before the switch + [prev-content ; The :content of the text before the switch + current-content ; The :content of the text after the switch (a clean copy) + ref-content touched] ; The :content of the referenced text on the main component before the switch (let [;; We need the differences between the contents on the main ;; components. current-content is the content of a clean copy, ;; so for all effects its the same as the content on its main @@ -2845,8 +2844,8 @@ duplicating-component? true (and remove-swap-slot? - ;; only remove swap slot of children when the current shape - ;; is not a subinstance head nor a instance root + ;; only remove swap slot of children when the current shape + ;; is not a subinstance head nor a instance root (not subinstance-head?) (not instance-root?)) variant-props)) @@ -2902,7 +2901,7 @@ variant-props) changes)) - ;; We need to check the changes to get the ids-map + ;; We need to check the changes to get the ids-map ids-map (into {} (comp diff --git a/common/src/app/common/logic/shapes.cljc b/common/src/app/common/logic/shapes.cljc index 4b74f795ef..845b2cfcad 100644 --- a/common/src/app/common/logic/shapes.cljc +++ b/common/src/app/common/logic/shapes.cljc @@ -138,12 +138,12 @@ ids (cfh/clean-loops objects ids) in-component-copy? (fn [shape-id] - ;; Look for shapes that are inside a component copy, but are - ;; not the root. In this case, they must not be deleted, - ;; but hidden (to be able to recover them more easily). - ;; If we want to specifically allow altering the copies, this is - ;; a special case, like a component swap, in which case we want - ;; to delete the old shape + ;; Look for shapes that are inside a component copy, but are + ;; not the root. In this case, they must not be deleted, + ;; but hidden (to be able to recover them more easily). + ;; If we want to specifically allow altering the copies, this is + ;; a special case, like a component swap, in which case we want + ;; to delete the old shape (let [shape (get objects shape-id)] (and (ctn/has-any-copy-parent? objects shape) (not allow-altering-copies)))) @@ -168,9 +168,9 @@ groups-to-unmask (when-not ignore-mask (reduce (fn [group-ids id] - ;; When the shape to delete is the mask of a masked group, - ;; the mask condition must be removed, and it must be - ;; converted to a normal group. + ;; When the shape to delete is the mask of a masked group, + ;; the mask condition must be removed, and it must be + ;; converted to a normal group. (let [obj (lookup id) parent (lookup (:parent-id obj))] (if (and (:masked-group parent) @@ -183,8 +183,8 @@ interacting-shapes (filter (fn [shape] - ;; If any of the deleted shapes is the destination of - ;; some interaction, this must be deleted, too. + ;; If any of the deleted shapes is the destination of + ;; some interaction, this must be deleted, too. (let [interactions (:interactions shape)] (some #(and (ctsi/has-destination %) (contains? ids-to-delete (:destination %))) @@ -207,7 +207,7 @@ all-parents (reduce (fn [res id] - ;; All parents of any deleted shape must be resized. + ;; All parents of any deleted shape must be resized. (into res (cfh/get-parent-ids objects id))) (d/ordered-set) (concat ids-to-delete ids-to-hide)) @@ -239,10 +239,10 @@ (recursive-find-empty-parents parents)))) empty-parents - ;; Any parent whose children are all deleted, must be deleted too. - ;; If we want to specifically allow altering the copies, this is a special case, - ;; for example during a component swap. in this case we are replacing a shape by - ;; other one, so must not delete empty parents. + ;; Any parent whose children are all deleted, must be deleted too. + ;; If we want to specifically allow altering the copies, this is a special case, + ;; for example during a component swap. in this case we are replacing a shape by + ;; other one, so must not delete empty parents. (if-not allow-altering-copies (into (d/ordered-set) (find-all-empty-parents #{})) #{}) @@ -274,8 +274,8 @@ guides-to-delete) changes (reduce (fn [changes component-id] - ;; It's important to delete the component before the main instance, because we - ;; need to store the instance position if we want to restore it later. + ;; It's important to delete the component before the main instance, because we + ;; need to store the instance position if we want to restore it later. (pcb/delete-component changes component-id (:id page))) changes components-to-delete) @@ -327,7 +327,7 @@ result #{}] (if-not current-id - ;; Base case, no next element + ;; Base case, no next element result (let [group (get objects current-id)] @@ -335,14 +335,14 @@ (not= current-id parent-id) (empty? (remove removed-id? (:shapes group)))) - ;; Adds group to the remove and check its parent + ;; Adds group to the remove and check its parent (let [to-check (concat to-check [(cfh/get-parent-id objects current-id)])] (recur (first to-check) (rest to-check) (conj removed-id? current-id) (conj result current-id))) - ;; otherwise recur + ;; otherwise recur (recur (first to-check) (rest to-check) removed-id? diff --git a/common/src/app/common/logic/variants.cljc b/common/src/app/common/logic/variants.cljc index 0159b0c126..883a3a40da 100644 --- a/common/src/app/common/logic/variants.cljc +++ b/common/src/app/common/logic/variants.cljc @@ -111,7 +111,7 @@ "Check if any ancestor of a shape (between base-parent-id and shape) was swapped" [shape objects base-parent-id] (let [ancestors (->> (ctn/get-parent-heads objects shape) - ;; Ignore ancestors ahead of base-parent + ;; Ignore ancestors ahead of base-parent (drop-while #(not= base-parent-id (:id %))) seq) num-ancestors (count ancestors) diff --git a/common/src/app/common/text.cljc b/common/src/app/common/text.cljc index bea80c9ebc..e0ed3515e6 100644 --- a/common/src/app/common/text.cljc +++ b/common/src/app/common/text.cljc @@ -222,7 +222,7 @@ :else (cons [node-style (dm/str head-text "" (:text node))] (rest acc))) - ;; We add an end-of-line when finish a paragraph + ;; We add an end-of-line when finish a paragraph new-acc (if (= (:type node) "paragraph") (let [[hs ht] (first new-acc)] diff --git a/common/src/app/common/types/container.cljc b/common/src/app/common/types/container.cljc index f9ea3207b7..fa27ce5f07 100644 --- a/common/src/app/common/types/container.cljc +++ b/common/src/app/common/types/container.cljc @@ -458,13 +458,13 @@ (map #(cfh/components-nesting-loop? objects (:id %) (:id parent))) (every? nil?)))] (or - ;;We don't want to change the structure of component copies + ;;We don't want to change the structure of component copies (ctk/in-component-copy? parent) (has-any-copy-parent? objects parent) - ;; If we are moving something containing a main instance the container can't be part of a component (neither main nor copy) + ;; If we are moving something containing a main instance the container can't be part of a component (neither main nor copy) (and selected-main-instance? parent-in-component?) - ;; Avoid placing a shape as a direct or indirect child of itself, - ;; or inside its main component if it's in a copy. + ;; Avoid placing a shape as a direct or indirect child of itself, + ;; or inside its main component if it's in a copy. comps-nesting-loop?))) (defn find-valid-parent-and-frame-ids diff --git a/common/src/app/common/types/file.cljc b/common/src/app/common/types/file.cljc index ca14d0ac1c..3733359a6c 100644 --- a/common/src/app/common/types/file.cljc +++ b/common/src/app/common/types/file.cljc @@ -775,9 +775,9 @@ file-data (cond-> file-data (d/not-empty? used-components) (absorb-components used-components library-data)) - ;; Note that absorbed components may also be using colors - ;; and typographies. This is the reason of doing this first - ;; and accumulating file data for the next ones. + ;; Note that absorbed components may also be using colors + ;; and typographies. This is the reason of doing this first + ;; and accumulating file data for the next ones. used-colors (find-asset-type-usages file-data library-data :color) file-data (cond-> file-data @@ -1017,7 +1017,7 @@ libs-to-show (-> libs-to-show (add-component library-id component-id)))))) - ;; (find-used-components-cumulative page root) + ;; (find-used-components-cumulative page root) libs-to-show components)) diff --git a/common/src/app/common/types/fills/impl.cljc b/common/src/app/common/types/fills/impl.cljc index beebc29655..06475d183f 100644 --- a/common/src/app/common/types/fills/impl.cljc +++ b/common/src/app/common/types/fills/impl.cljc @@ -306,7 +306,7 @@ (-write-to [_ heap offset] (let [buffer' (.-buffer ^js/DataView dbuffer) - ;; Calculate byte size: 4 bytes header + (size * FILL-U8-SIZE) + ;; Calculate byte size: 4 bytes header + (size * FILL-U8-SIZE) byte-size (+ 4 (* size FILL-U8-SIZE)) ;; Create Uint32Array with exact size needed (convert bytes to u32 elements) u32-array (js/Uint32Array. buffer' 0 (/ byte-size 4))] diff --git a/common/src/app/common/types/shape/interactions.cljc b/common/src/app/common/types/shape/interactions.cljc index 8dd4ea457c..59ad708776 100644 --- a/common/src/app/common/types/shape/interactions.cljc +++ b/common/src/app/common/types/shape/interactions.cljc @@ -13,14 +13,15 @@ [app.common.schema :as sm] [app.common.schema.generators :as sg])) -;; WARNING: options are not deleted when changing event or action type, so it can be -;; restored if the user changes it back later. +;; WARNING: options are not deleted when changing event or action +;; type, so it can be restored if the user changes it back later. ;; -;; But that means that an interaction may have for example a delay or -;; destination, even if its type does not require it (but a previous type did). +;; But that means that an interaction may have for example a delay or +;; destination, even if its type does not require it (but a previous +;; type did). ;; -;; So make sure to use has-delay/has-destination... functions, or similar, -;; before reading them. +;; So make sure to use has-delay/has-destination... functions, or +;; similar, before reading them. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; SCHEMA @@ -452,16 +453,15 @@ (gpt/point 0 0))) (defn calc-overlay-position - [interaction ;; interaction data - shape ;; Shape with the interaction - objects ;; the objects tree - relative-to-shape ;; the interaction position is realtive to this - ;; sape - base-frame ;; the base frame of the current interaction - dest-frame ;; the frame to display with this interaction - frame-offset] ;; if this interaction starts in a frame opened - ;; on another interaction, this is the position - ;; of that frame + [interaction ; interaction data + shape ; Shape with the interaction + objects ; the objects tree + relative-to-shape ; the interaction position is realtive to this shape + base-frame ; the base frame of the current interaction + dest-frame ; the frame to display with this interaction + frame-offset] ; if this interaction starts in a frame opened + ; on another interaction, this is the position + ; of that frame (assert (check-interaction interaction)) (assert (has-overlay-opts interaction) "expected compatible interaction map") diff --git a/common/src/app/common/types/shape_tree.cljc b/common/src/app/common/types/shape_tree.cljc index 492699ea34..20f542fbbe 100644 --- a/common/src/app/common/types/shape_tree.cljc +++ b/common/src/app/common/types/shape_tree.cljc @@ -382,9 +382,9 @@ keep-ids? (:id shape) :else (uuid/next)) - ;; Assign the correct frame-id for the given parent. It's the parent-id (if parent is frame) - ;; or the parent's frame-id otherwise. Only for the first cloned shapes. In recursive calls - ;; this is not needed. + ;; Assign the correct frame-id for the given parent. It's the parent-id (if parent is frame) + ;; or the parent's frame-id otherwise. Only for the first cloned shapes. In recursive calls + ;; this is not needed. frame-id (cond (and (nil? frame-id) (cfh/frame-shape? dest-objects parent-id)) parent-id diff --git a/common/src/app/common/types/text.cljc b/common/src/app/common/types/text.cljc index 9a56504f0e..69b44af802 100644 --- a/common/src/app/common/types/text.cljc +++ b/common/src/app/common/types/text.cljc @@ -393,7 +393,7 @@ :else (cons [node-style (dm/str head-text "" (:text node))] (rest acc))) - ;; We add an end-of-line when finish a paragraph + ;; We add an end-of-line when finish a paragraph new-acc (if (= (:type node) "paragraph") (let [[hs ht] (first new-acc)] diff --git a/common/test/common_tests/logic/text_sync_test.cljc b/common/test/common_tests/logic/text_sync_test.cljc index 77abc14a77..0c9a8e15c8 100644 --- a/common/test/common_tests/logic/text_sync_test.cljc +++ b/common/test/common_tests/logic/text_sync_test.cljc @@ -693,7 +693,7 @@ changes1 (cls/generate-update-shapes (pcb/empty-changes nil (:id page)) #{(:id main-child)} (fn [shape] - ;; Update the attrs on all the content tree + ;; Update the attrs on all the content tree (-> shape (assoc-in [:content :children 0 :children 0 :children 0 :font-size] "32") (assoc-in [:content :children 0 :children 0 :font-size] "32") @@ -851,7 +851,7 @@ changes1 (cls/generate-update-shapes (pcb/empty-changes nil (:id page)) #{(:id main-child)} (fn [shape] - ;; Update the attrs on all the content tree + ;; Update the attrs on all the content tree (-> shape (assoc-in [:content :children 0 :children 0 :children 0 :font-size] "32") (assoc-in [:content :children 0 :children 0 :font-size] "32") diff --git a/common/test/common_tests/logic/variants_test.cljc b/common/test/common_tests/logic/variants_test.cljc index 03a3484811..2afcdbb5be 100644 --- a/common/test/common_tests/logic/variants_test.cljc +++ b/common/test/common_tests/logic/variants_test.cljc @@ -267,7 +267,7 @@ page' (thf/current-page file') objects' (:objects page')] - ;; ==== Check + ;; ==== Check (thf/validate-file! file') (t/is (= (count (:components data)) 2)) (t/is (= (count (:components data')) 4)) diff --git a/docker/devenv/Dockerfile b/docker/devenv/Dockerfile index 04eb0136ea..6644654312 100644 --- a/docker/devenv/Dockerfile +++ b/docker/devenv/Dockerfile @@ -179,9 +179,9 @@ RUN set -eux; \ FROM base AS setup-utils -ENV CLJKONDO_VERSION=2025.07.28 \ +ENV CLJKONDO_VERSION=2026.01.19 \ BABASHKA_VERSION=1.12.208 \ - CLJFMT_VERSION=0.13.1 + CLJFMT_VERSION=0.15.6 RUN set -ex; \ ARCH="$(dpkg --print-architecture)"; \ @@ -398,7 +398,6 @@ COPY files/Caddyfile /home/ COPY files/selfsigned.crt /home/ COPY files/selfsigned.key /home/ COPY files/start-tmux.sh /home/start-tmux.sh -COPY files/start-tmux-back.sh /home/start-tmux-back.sh COPY files/entrypoint.sh /home/entrypoint.sh COPY files/init.sh /home/init.sh diff --git a/frontend/src/app/main/data/dashboard.cljs b/frontend/src/app/main/data/dashboard.cljs index 792357e22f..f4f6ead4be 100644 --- a/frontend/src/app/main/data/dashboard.cljs +++ b/frontend/src/app/main/data/dashboard.cljs @@ -81,7 +81,7 @@ ptk/UpdateEvent (update [_ state] (reduce (fn [state {:keys [id] :as project}] - ;; Replace completely instead of merge to ensure deleted-at is removed + ;; Replace completely instead of merge to ensure deleted-at is removed (assoc-in state [:projects id] project)) state projects)))) diff --git a/frontend/src/app/main/data/fonts.cljs b/frontend/src/app/main/data/fonts.cljs index 4efa40718f..28f702ed8a 100644 --- a/frontend/src/app/main/data/fonts.cljs +++ b/frontend/src/app/main/data/fonts.cljs @@ -104,15 +104,15 @@ variant (or (.getEnglishName ^js font "preferredSubfamily") (.getEnglishName ^js font "fontSubfamily")) - ;; Vertical metrics determine the baseline in a text and the space between lines of - ;; text. For historical reasons, there are three pairs of ascender/descender - ;; values, known as hhea, OS/2 and uSWin metrics. Depending on the font, operating - ;; system and application a different set will be used to render text on the - ;; screen. On Mac, Safari and Chrome use the hhea values to render text. Firefox - ;; will respect the useTypoMetrics setting and will use the OS/2 if it is set. If - ;; the useTypoMetrics is not set, Firefox will also use metrics from the hhea - ;; table. On Windows, all browsers use the usWin metrics, but respect the - ;; useTypoMetrics setting and if set will use the OS/2 values. + ;; Vertical metrics determine the baseline in a text and the space between lines of + ;; text. For historical reasons, there are three pairs of ascender/descender + ;; values, known as hhea, OS/2 and uSWin metrics. Depending on the font, operating + ;; system and application a different set will be used to render text on the + ;; screen. On Mac, Safari and Chrome use the hhea values to render text. Firefox + ;; will respect the useTypoMetrics setting and will use the OS/2 if it is set. If + ;; the useTypoMetrics is not set, Firefox will also use metrics from the hhea + ;; table. On Windows, all browsers use the usWin metrics, but respect the + ;; useTypoMetrics setting and if set will use the OS/2 values. hhea-ascender (abs (-> ^js font .-tables .-hhea .-ascender)) hhea-descender (abs (-> ^js font .-tables .-hhea .-descender)) diff --git a/frontend/src/app/main/data/plugins.cljs b/frontend/src/app/main/data/plugins.cljs index b9969ead6e..a075e54a12 100644 --- a/frontend/src/app/main/data/plugins.cljs +++ b/frontend/src/app/main/data/plugins.cljs @@ -156,8 +156,8 @@ (defn- update-plugin-permissions-peek [{:keys [plugin-id url]}] (when url - ;; If the saved manifest has a URL we fetch the manifest to check - ;; for updates + ;; If the saved manifest has a URL we fetch the manifest to check + ;; for updates (->> (fetch-manifest url) (rx/subs! (fn [new-manifest] diff --git a/frontend/src/app/main/data/style_dictionary.cljs b/frontend/src/app/main/data/style_dictionary.cljs index 0ed5fd68d9..a1003ac8c7 100644 --- a/frontend/src/app/main/data/style_dictionary.cljs +++ b/frontend/src/app/main/data/style_dictionary.cljs @@ -410,25 +410,25 @@ (string? value) {:errors [(wte/error-with-value :error.style-dictionary/invalid-token-value-shadow value)]} - ;; Empty value + ;; Empty value (nil? value) {:errors [(wte/get-error-code :error.token/empty-input)]} - ;; Invalid value + ;; Invalid value (not (js/Array.isArray value)) {:errors [(wte/error-with-value :error.style-dictionary/invalid-token-value value)]} - ;; Array of shadows + ;; Array of shadows :else (let [converted (js->clj value :keywordize-keys true) - ;; Parse each shadow with its index + ;; Parse each shadow with its index parsed-shadows (map-indexed (fn [idx shadow-map] (parse-single-shadow shadow-map idx)) converted) - ;; Collect all errors from all shadows + ;; Collect all errors from all shadows all-errors (mapcat :errors parsed-shadows) - ;; Collect all values from shadows that have values + ;; Collect all values from shadows that have values all-values (into [] (keep :value parsed-shadows))] (if (seq all-errors) diff --git a/frontend/src/app/main/data/workspace/libraries.cljs b/frontend/src/app/main/data/workspace/libraries.cljs index 2fb6a96650..9156b7bfe9 100644 --- a/frontend/src/app/main/data/workspace/libraries.cljs +++ b/frontend/src/app/main/data/workspace/libraries.cljs @@ -1292,9 +1292,9 @@ (rx/take 1 workspace-data-s) (rx/take 1 workspace-data-s) workspace-data-s) - ;; Need to get the file data before the change, so deleted shapes - ;; still exist, for example. We initialize the buffer with three - ;; copies of the initial state + ;; Need to get the file data before the change, so deleted shapes + ;; still exist, for example. We initialize the buffer with three + ;; copies of the initial state (rx/buffer 3 1)) changes-s diff --git a/frontend/src/app/main/data/workspace/media.cljs b/frontend/src/app/main/data/workspace/media.cljs index 3cb250afc5..3cafb123fd 100644 --- a/frontend/src/app/main/data/workspace/media.cljs +++ b/frontend/src/app/main/data/workspace/media.cljs @@ -231,12 +231,12 @@ :timeout nil :tag :media-loading})) (->> (if (seq uris) - ;; Media objects is a list of URL's pointing to the path + ;; Media objects is a list of URL's pointing to the path (process-uris params) - ;; Media objects are blob of data to be upload + ;; Media objects are blob of data to be upload (process-blobs params)) - ;; Every stream has its own sideeffect. We need to ignore the result + ;; Every stream has its own sideeffect. We need to ignore the result (rx/ignore) (rx/catch #(handle-media-error % on-error)) (rx/finalize #(st/emit! (ntf/hide :tag :media-loading)))))))) diff --git a/frontend/src/app/main/data/workspace/modifiers.cljs b/frontend/src/app/main/data/workspace/modifiers.cljs index c438cf8815..c4e018b9e8 100644 --- a/frontend/src/app/main/data/workspace/modifiers.cljs +++ b/frontend/src/app/main/data/workspace/modifiers.cljs @@ -793,8 +793,8 @@ (-> options (assoc :reg-objects? true) (assoc :ignore-tree ignore-tree) - ;; Attributes that can change in the transform. This - ;; way we don't have to check all the attributes + ;; Attributes that can change in the transform. This + ;; way we don't have to check all the attributes (assoc :attrs transform-attrs)) update-shape diff --git a/frontend/src/app/main/data/workspace/shapes.cljs b/frontend/src/app/main/data/workspace/shapes.cljs index 3df0560a32..06981f7bb9 100644 --- a/frontend/src/app/main/data/workspace/shapes.cljs +++ b/frontend/src/app/main/data/workspace/shapes.cljs @@ -439,7 +439,7 @@ add-new-variant? (and ;; The parent is a variant container (-> parent-id objects ctc/is-variant-container?) - ;; Any of the shapes is a main instance + ;; Any of the shapes is a main instance (some (comp ctc/main-instance? objects) ids)) undo-id (js/Symbol)] diff --git a/frontend/src/app/main/data/workspace/tokens/application.cljs b/frontend/src/app/main/data/workspace/tokens/application.cljs index 7a5c83c904..e6dbfb4efd 100644 --- a/frontend/src/app/main/data/workspace/tokens/application.cljs +++ b/frontend/src/app/main/data/workspace/tokens/application.cljs @@ -143,7 +143,7 @@ ([value shape-ids attributes] (update-stroke-color value shape-ids attributes nil)) - ;; The attributes param is needed to have the same arity that other update functions + ;; The attributes param is needed to have the same arity that other update functions ([value shape-ids _attributes page-id] (when-let [color (value->color value)] (dwsh/update-shapes shape-ids diff --git a/frontend/src/app/main/data/workspace/transforms.cljs b/frontend/src/app/main/data/workspace/transforms.cljs index dd427e6bd7..21812d7f74 100644 --- a/frontend/src/app/main/data/workspace/transforms.cljs +++ b/frontend/src/app/main/data/workspace/transforms.cljs @@ -1121,15 +1121,15 @@ :cell cell)) add-component-to-variant? (and - ;; Any of the shapes is a head + ;; Any of the shapes is a head (some (comp ctk/instance-head? objects) ids) ;; Any ancestor of the destination parent is a variant (->> (cfh/get-parents-with-self objects frame-id) (some ctk/is-variant?))) add-new-variant? (and - ;; The parent is a variant container + ;; The parent is a variant container (-> frame-id objects ctk/is-variant-container?) - ;; Any of the shapes is a main instance + ;; Any of the shapes is a main instance (some (comp ctk/main-instance? objects) ids))] (rx/concat diff --git a/frontend/src/app/main/data/workspace/variants.cljs b/frontend/src/app/main/data/workspace/variants.cljs index 1def674c9b..28f1a30963 100644 --- a/frontend/src/app/main/data/workspace/variants.cljs +++ b/frontend/src/app/main/data/workspace/variants.cljs @@ -447,8 +447,8 @@ :stroke-opacity 1 :stroke-width 2} - ;; Move the position of the variant container so the main shape doesn't - ;; change its position + ;; Move the position of the variant container so the main shape doesn't + ;; change its position delta (or delta (if (ctsl/any-layout? parent) (gpt/point 0 0) @@ -456,8 +456,8 @@ undo-id (js/Symbol)] - ;;TODO Refactor all called methods in order to be able to - ;;generate changes instead of call the events + ;;TODO Refactor all called methods in order to be able to + ;;generate changes instead of call the events (rx/concat @@ -467,7 +467,7 @@ (when (not= name (:name main)) (dwl/rename-component component-id name)) - ;; Create variant container + ;; Create variant container (dwsh/create-artboard-from-shapes [main-instance-id] variant-id nil nil nil delta flex?) (cl/remove-all-fills variant-vec {:color clr/black :opacity 1}) (when flex? (dwsl/create-layout-from-id variant-id :flex)) @@ -476,12 +476,12 @@ (cl/add-stroke variant-vec stroke-props) (set-variant-id component-id variant-id)) - ;; Add the necessary number of new properties, with default values + ;; Add the necessary number of new properties, with default values (rx/from (repeatedly num-props #(add-new-property variant-id {:fill-values? true}))) - ;; When the component has path, set the path items as properties values + ;; When the component has path, set the path items as properties values (when (> (count cpath) 1) (rx/from (map @@ -634,7 +634,7 @@ prefix (->> shapes (mapv #(cpn/split-path (:name %))) (common-prefix)) - ;; When the common parent is root, add a wrapper + ;; When the common parent is root, add a wrapper add-wrapper? (empty? prefix) first-shape (first shapes) delta (gpt/point (- (:x rect) (:x first-shape) 30) @@ -667,10 +667,10 @@ (dwt/update-dimensions [variant-id] :height (+ (:height rect) 60)) (ev/event {::ev/name "combine-as-variants" ::ev/origin trigger :number-of-combined (count ids)})) - ;; NOTE: we need to schedule a commit into a - ;; microtask for ensure that all the scheduled - ;; microtask of previous events execute before the - ;; commit + ;; NOTE: we need to schedule a commit into a + ;; microtask for ensure that all the scheduled + ;; microtask of previous events execute before the + ;; commit (->> (rx/of (dwu/commit-undo-transaction undo-id)) (rx/observe-on :async))))))) @@ -705,7 +705,7 @@ (let [libraries (dsh/lookup-libraries state) component-id (:component-id shape) component (ctf/get-component libraries (:component-file shape) component-id :include-deleted? false)] - ;; If the value is already val, do nothing + ;; If the value is already val, do nothing (when (not= val (dm/get-in component [:variant-properties pos :value])) (let [current-page-objects (dsh/lookup-page-objects state) variant-id (:variant-id component) diff --git a/frontend/src/app/main/fonts.cljs b/frontend/src/app/main/fonts.cljs index 639bd34365..56e59667b2 100644 --- a/frontend/src/app/main/fonts.cljs +++ b/frontend/src/app/main/fonts.cljs @@ -214,8 +214,8 @@ ([font-id variant-id] (log/dbg :action "try-ensure-loaded!" :font-id font-id :variant-id variant-id) (if-not (exists? js/window) - ;; If we are in the worker environment, we just mark it as loaded - ;; without really loading it. + ;; If we are in the worker environment, we just mark it as loaded + ;; without really loading it. (do (swap! loaded-hints conj {:font-id font-id :font-variant-id variant-id}) (p/resolved font-id)) diff --git a/frontend/src/app/main/render.cljs b/frontend/src/app/main/render.cljs index a36f7c7e72..ca3478130e 100644 --- a/frontend/src/app/main/render.cljs +++ b/frontend/src/app/main/render.cljs @@ -133,7 +133,7 @@ [{:keys [shape] :as props}] (let [childs (mapv #(get objects %) (:shapes shape))] (if (and (map? (:content shape)) - ;; tspan shouldn't be contained in a group or have svg defs + ;; tspan shouldn't be contained in a group or have svg defs (not= :tspan (get-in shape [:content :tag])) (or (= :svg (get-in shape [:content :tag])) (contains? shape :svg-attrs))) diff --git a/frontend/src/app/main/ui/comments.cljs b/frontend/src/app/main/ui/comments.cljs index 1ea7ab7985..8f34c41277 100644 --- a/frontend/src/app/main/ui/comments.cljs +++ b/frontend/src/app/main/ui/comments.cljs @@ -762,7 +762,7 @@ h (:height viewport) comment-width 284 ;; TODO: this is the width set via CSS in an outer container… - ;; We should probably do this in a different way. + ;; We should probably do this in a different way. orientation-left? (>= (+ base-x comment-width (:x bubble-margin)) w) orientation-top? (>= base-y (/ h 2)) diff --git a/frontend/src/app/main/ui/components/forms.cljs b/frontend/src/app/main/ui/components/forms.cljs index 0e6c55882a..a4428e2aa5 100644 --- a/frontend/src/app/main/ui/components/forms.cljs +++ b/frontend/src/app/main/ui/components/forms.cljs @@ -198,7 +198,7 @@ :valid (and touched? (not error)) :invalid (and touched? error) :disabled disabled) - ;; :empty (str/empty? value) + ;; :empty (str/empty? value) on-focus #(reset! focus? true) diff --git a/frontend/src/app/main/ui/dashboard/subscription.cljs b/frontend/src/app/main/ui/dashboard/subscription.cljs index 65f8da6894..1d90cf9e6d 100644 --- a/frontend/src/app/main/ui/dashboard/subscription.cljs +++ b/frontend/src/app/main/ui/dashboard/subscription.cljs @@ -225,10 +225,10 @@ (and (= subscription-type "unlimited") (or - ;; common: seats < 25 and diff >= 4 + ;; common: seats < 25 and diff >= 4 (and (< seats 25) (>= (- editors seats) 4)) - ;; special: reached 25+ editors, seats < 25 and there is overuse + ;; special: reached 25+ editors, seats < 25 and there is overuse (and (< seats 25) (>= editors 25) (> editors seats))))))) diff --git a/frontend/src/app/main/ui/exports/assets.cljs b/frontend/src/app/main/ui/exports/assets.cljs index c82b13ffb3..7850050c7c 100644 --- a/frontend/src/app/main/ui/exports/assets.cljs +++ b/frontend/src/app/main/ui/exports/assets.cljs @@ -135,8 +135,8 @@ :version "1.1" :xmlns "http://www.w3.org/2000/svg" :xmlnsXlink "http://www.w3.org/1999/xlink" - ;; Fix Chromium bug about color of html texts - ;; https://bugs.chromium.org/p/chromium/issues/detail?id=1244560#c5 + ;; Fix Chromium bug about color of html texts + ;; https://bugs.chromium.org/p/chromium/issues/detail?id=1244560#c5 :style {:-webkit-print-color-adjust :exact} :fill "none"} diff --git a/frontend/src/app/main/ui/hooks/resize.cljs b/frontend/src/app/main/ui/hooks/resize.cljs index 84a89125f9..703f67f868 100644 --- a/frontend/src/app/main/ui/hooks/resize.cljs +++ b/frontend/src/app/main/ui/hooks/resize.cljs @@ -71,11 +71,11 @@ start-size-ref (mf/use-ref nil) start-ref (mf/use-ref nil) - ;; Since Penpot is not responsive designed, this value will only refer to vertical axis. + ;; Since Penpot is not responsive designed, this value will only refer to vertical axis. window-height* (mf/use-state #(dom/get-window-height)) window-height (deref window-height*) - ;; In case max-val is a string, we need to parse it as a double. + ;; In case max-val is a string, we need to parse it as a double. max-val (mf/with-memo [max-val window-height] (let [parsed-max-val (when (string? max-val) (d/parse-double max-val))] (if parsed-max-val diff --git a/frontend/src/app/main/ui/inspect/attributes/common.cljs b/frontend/src/app/main/ui/inspect/attributes/common.cljs index 22a760274b..8dc1d7088f 100644 --- a/frontend/src/app/main/ui/inspect/attributes/common.cljs +++ b/frontend/src/app/main/ui/inspect/attributes/common.cljs @@ -82,7 +82,7 @@ :style #js {"--bullet-size" "16px"}} [:& cb/color-bullet {:color color :mini true}]] - ;; REMOVE this conditional when :inspect-styles flag is removed + ;; REMOVE this conditional when :inspect-styles flag is removed (if (contains? cf/flags :inspect-styles) [:div {:class (stl/css :global/attr-label)} property] [:div {:class (stl/css :format-wrapper)} diff --git a/frontend/src/app/main/ui/inspect/attributes/text.cljs b/frontend/src/app/main/ui/inspect/attributes/text.cljs index 33feff476c..488ad5fa59 100644 --- a/frontend/src/app/main/ui/inspect/attributes/text.cljs +++ b/frontend/src/app/main/ui/inspect/attributes/text.cljs @@ -107,10 +107,10 @@ (when (:text-decoration style) [:div {:class (stl/css :text-row)} [:div {:class (stl/css :global/attr-label)} "Text Decoration"] - ;; Execution time translation strings: - ;; (tr "inspect.attributes.typography.text-decoration.none") - ;; (tr "inspect.attributes.typography.text-decoration.strikethrough") - ;; (tr "inspect.attributes.typography.text-decoration.underline") + ;; Execution time translation strings: + ;; (tr "inspect.attributes.typography.text-decoration.none") + ;; (tr "inspect.attributes.typography.text-decoration.strikethrough") + ;; (tr "inspect.attributes.typography.text-decoration.underline") [:div {:class (stl/css :global/attr-value)} [:> copy-button* {:data (copy-style-data style :text-decoration)} [:div {:class (stl/css :button-children)} @@ -119,12 +119,12 @@ (when (:text-transform style) [:div {:class (stl/css :text-row)} [:div {:class (stl/css :global/attr-label)} "Text Transform"] - ;; Execution time translation strings: - ;; (tr "inspect.attributes.typography.text-transform.lowercase") - ;; (tr "inspect.attributes.typography.text-transform.none") - ;; (tr "inspect.attributes.typography.text-transform.capitalize") - ;; (tr "inspect.attributes.typography.text-transform.uppercase") - ;; (tr "inspect.attributes.typography.text-transform.unset") + ;; Execution time translation strings: + ;; (tr "inspect.attributes.typography.text-transform.lowercase") + ;; (tr "inspect.attributes.typography.text-transform.none") + ;; (tr "inspect.attributes.typography.text-transform.capitalize") + ;; (tr "inspect.attributes.typography.text-transform.uppercase") + ;; (tr "inspect.attributes.typography.text-transform.unset") [:div {:class (stl/css :global/attr-value)} [:> copy-button* {:data (copy-style-data style :text-transform)} [:div {:class (stl/css :button-children)} diff --git a/frontend/src/app/main/ui/inspect/styles.cljs b/frontend/src/app/main/ui/inspect/styles.cljs index 72df40bdbe..3794ba61c7 100644 --- a/frontend/src/app/main/ui/inspect/styles.cljs +++ b/frontend/src/app/main/ui/inspect/styles.cljs @@ -141,14 +141,14 @@ (for [panel panels] [:li {:key (d/name panel)} (case panel - ;; VARIANTS PANEL + ;; VARIANTS PANEL :variant [:> style-box* {:panel :variant} [:> variants-panel* {:component first-component :objects objects :shape first-shape :data data}]] - ;; GEOMETRY PANEL + ;; GEOMETRY PANEL :geometry [:> style-box* {:panel :geometry :shorthand (:geometry shorthands)} @@ -156,7 +156,7 @@ :objects objects :resolved-tokens resolved-active-tokens :on-geometry-shorthand set-shorthands}]] - ;; LAYOUT PANEL + ;; LAYOUT PANEL :layout (let [layout-shapes (->> shapes (filter ctl/any-layout?))] (when (seq layout-shapes) @@ -166,7 +166,7 @@ :objects objects :resolved-tokens resolved-active-tokens :on-layout-shorthand set-shorthands}]])) - ;; LAYOUT ELEMENT PANEL + ;; LAYOUT ELEMENT PANEL :layout-element (let [shapes (->> shapes (filter #(ctl/any-layout-immediate-child? objects %))) some-layout-prop? (->> shapes diff --git a/frontend/src/app/main/ui/inspect/styles/panels/text.cljs b/frontend/src/app/main/ui/inspect/styles/panels/text.cljs index 86e36d2048..d446b9213e 100644 --- a/frontend/src/app/main/ui/inspect/styles/panels/text.cljs +++ b/frontend/src/app/main/ui/inspect/styles/panels/text.cljs @@ -101,7 +101,7 @@ :resolved-tokens resolved-tokens :color-space color-space}])) - ;; Typography style + ;; Typography style (when (and (not composite-typography-token) (:typography-ref-id style)) [:> typography-name-block* {:style style}]) diff --git a/frontend/src/app/main/ui/notifications/context_notification.cljs b/frontend/src/app/main/ui/notifications/context_notification.cljs index 50ec3e138a..2d4bb0fb19 100644 --- a/frontend/src/app/main/ui/notifications/context_notification.cljs +++ b/frontend/src/app/main/ui/notifications/context_notification.cljs @@ -61,7 +61,7 @@ content (when (some? links) (for [[index link] (d/enumerate links)] - ;; TODO Review this component + ;; TODO Review this component [:& lb/link-button {:class (stl/css :link) :on-click (:callback link) :value (:label link) diff --git a/frontend/src/app/main/ui/shapes/custom_stroke.cljs b/frontend/src/app/main/ui/shapes/custom_stroke.cljs index 1a7ad91d7f..02c3b5d07e 100644 --- a/frontend/src/app/main/ui/shapes/custom_stroke.cljs +++ b/frontend/src/app/main/ui/shapes/custom_stroke.cljs @@ -171,8 +171,8 @@ :fillOpacity opacity} [:path {:d "M 3 0 L 6 3 L 3 6 L 0 3 z"}]]) - ;; If the user wants line caps but different in each end, - ;; simulate it with markers. + ;; If the user wants line caps but different in each end, + ;; simulate it with markers. (when (and (or (= cap-start :round) (= cap-end :round)) (not= cap-start cap-end)) diff --git a/frontend/src/app/main/ui/shapes/frame.cljs b/frontend/src/app/main/ui/shapes/frame.cljs index 4840e18a86..470267bcad 100644 --- a/frontend/src/app/main/ui/shapes/frame.cljs +++ b/frontend/src/app/main/ui/shapes/frame.cljs @@ -100,14 +100,14 @@ [:& filters/filters {:shape (dissoc shape :blur) :filter-id filter-id-shadows}] [:& filters/filters {:shape (assoc shape :shadow []) :filter-id filter-id-blur}]] - ;; This need to be separated in two layers so the clip doesn't affect the shadow filters - ;; otherwise the shadow will be clipped and not visible + ;; This need to be separated in two layers so the clip doesn't affect the shadow filters + ;; otherwise the shadow will be clipped and not visible [:g.frame-container-shadows {:filter filter-str-shadows} [:g {:clip-path (when-not ^boolean show-content? (frame-clip-url shape render-id)) - ;; A frame sets back normal fill behavior (default - ;; transparent). It may have been changed to default black - ;; if a shape coming from an imported SVG file is - ;; rendered. See main.ui.shapes.attrs/add-style-attrs. + ;; A frame sets back normal fill behavior (default + ;; transparent). It may have been changed to default black + ;; if a shape coming from an imported SVG file is + ;; rendered. See main.ui.shapes.attrs/add-style-attrs. :fill "none"} [:& shape-fills {:shape shape} diff --git a/frontend/src/app/main/ui/viewer.cljs b/frontend/src/app/main/ui/viewer.cljs index f5715c3bd6..8ef3e26056 100644 --- a/frontend/src/app/main/ui/viewer.cljs +++ b/frontend/src/app/main/ui/viewer.cljs @@ -447,7 +447,7 @@ (mf/use-effect (mf/deps nav-scroll) (fn [] - ;; Set scroll position after navigate + ;; Set scroll position after navigate (when (number? nav-scroll) (let [viewer-section (dom/get-element "viewer-section")] (st/emit! (dv/reset-nav-scroll)) @@ -481,8 +481,8 @@ :fit (st/emit! dv/zoom-to-fit) :fill (st/emit! dv/zoom-to-fill) nil) - ;; Navigate animation needs to be started after navigation - ;; is complete, and we have the next page index. + ;; Navigate animation needs to be started after navigation + ;; is complete, and we have the next page index. (let [nav-animation (d/seek #(= (:kind %) :go-to-frame) (vals current-animations))] (when nav-animation (let [orig-viewport (mf/ref-val orig-viewport-ref) @@ -498,7 +498,7 @@ (mf/use-effect (mf/deps current-animations) (fn [] - ;; Overlay animations may be started when needed. + ;; Overlay animations may be started when needed. (when current-animations (doseq [[overlay-frame-id animation-vals] current-animations] (let [overlay-viewport (dom/get-element (str "overlay-" (str (:overlay-id animation-vals)))) diff --git a/frontend/src/app/main/ui/viewer/shapes.cljs b/frontend/src/app/main/ui/viewer/shapes.cljs index cb7aba7fdd..7850b8f23a 100644 --- a/frontend/src/app/main/ui/viewer/shapes.cljs +++ b/frontend/src/app/main/ui/viewer/shapes.cljs @@ -47,7 +47,7 @@ (defn- ignore-frame-shape [shape objects manual?] (let [shape (cond-> shape ;; When the the interaction is not manual and its origin is a frame, - ;; we need to ignore it on all the find-frame calculations + ;; we need to ignore it on all the find-frame calculations (and (:frame-id shape) (not manual?)) (assoc :type :rect)) objects (assoc objects (:id shape) shape)] diff --git a/frontend/src/app/main/ui/workspace/left_header.cljs b/frontend/src/app/main/ui/workspace/left_header.cljs index 914d4ef1a8..de2d59ca4e 100644 --- a/frontend/src/app/main/ui/workspace/left_header.cljs +++ b/frontend/src/app/main/ui/workspace/left_header.cljs @@ -112,7 +112,7 @@ {:class (stl/css :file-name) :title file-name :on-double-click start-editing-name} - ;;-- Persistende state widget + ;;-- Persistende state widget [:div {:class (case persistence-status :pending (stl/css :status-notification :pending-status) :saving (stl/css :status-notification :saving-status) diff --git a/frontend/src/app/main/ui/workspace/shapes/frame.cljs b/frontend/src/app/main/ui/workspace/shapes/frame.cljs index 27b6ae38a5..e6db4677a2 100644 --- a/frontend/src/app/main/ui/workspace/shapes/frame.cljs +++ b/frontend/src/app/main/ui/workspace/shapes/frame.cljs @@ -191,7 +191,7 @@ :key "frame-container" :opacity (when ^boolean hidden? 0)} - ;; When there is no thumbnail, we generate a empty rect. + ;; When there is no thumbnail, we generate a empty rect. (when (and (not ^boolean content-visible?) (not @imposter-loaded)) [:g.frame-placeholder [:rect {:x x diff --git a/frontend/src/app/main/ui/workspace/sidebar/assets/file_library.cljs b/frontend/src/app/main/ui/workspace/sidebar/assets/file_library.cljs index 27cd620eae..2fc62e001d 100644 --- a/frontend/src/app/main/ui/workspace/sidebar/assets/file_library.cljs +++ b/frontend/src/app/main/ui/workspace/sidebar/assets/file_library.cljs @@ -106,7 +106,7 @@ :title (if is-local (mf/html [:div {:class (stl/css :special-title)} (tr "workspace.assets.local-library")]) - ;; Do we need to add shared info here? + ;; Do we need to add shared info here? (mf/html [:div {:class (stl/css :special-title)} file-name]))} (when-not ^boolean is-local diff --git a/frontend/src/app/main/ui/workspace/sidebar/options/menus/color_selection.cljs b/frontend/src/app/main/ui/workspace/sidebar/options/menus/color_selection.cljs index 7fe3efce8f..652de6ca23 100644 --- a/frontend/src/app/main/ui/workspace/sidebar/options/menus/color_selection.cljs +++ b/frontend/src/app/main/ui/workspace/sidebar/options/menus/color_selection.cljs @@ -67,7 +67,7 @@ (let [data (into [] (remove nil?) (dwc/extract-all-colors shapes file-id libraries)) groups (d/group-by :attrs #(dissoc % :attrs) data) - ;; Unique color attribute maps + ;; Unique color attribute maps all-colors (distinct (mapv :attrs data)) ;; Split into: library colors, token colors, and plain colors diff --git a/frontend/src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs b/frontend/src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs index 19c011d023..5c8feffc7d 100644 --- a/frontend/src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs +++ b/frontend/src/app/main/ui/workspace/sidebar/options/rows/stroke_row.cljs @@ -281,7 +281,7 @@ :options stroke-style-options :on-change on-style-change}]])] - ;; Stroke Caps + ;; Stroke Caps (when show-caps [:div {:class (stl/css :stroke-caps-options)} [:& select {:default-value (:stroke-cap-start stroke) diff --git a/frontend/src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs b/frontend/src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs index 9f9d395013..8feb36761c 100644 --- a/frontend/src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs +++ b/frontend/src/app/main/ui/workspace/tokens/management/forms/controls/color_input.cljs @@ -211,7 +211,7 @@ (let [;; StyleDictionary will always convert to hex/rgba, so we take the format from the value input field prev-input-color (some-> value (tinycolor/valid-color)) - ;; If the input is a reference we will take the format from the computed value + ;; If the input is a reference we will take the format from the computed value prev-computed-color (when-not prev-input-color (some-> value (tinycolor/valid-color))) prev-format (some-> (or prev-input-color prev-computed-color) @@ -380,7 +380,7 @@ (let [;; StyleDictionary will always convert to hex/rgba, so we take the format from the value input field prev-input-color (some-> value (tinycolor/valid-color)) - ;; If the input is a reference we will take the format from the computed value + ;; If the input is a reference we will take the format from the computed value prev-computed-color (when-not prev-input-color (some-> value (tinycolor/valid-color))) prev-format (some-> (or prev-input-color prev-computed-color) diff --git a/frontend/src/app/main/ui/workspace/tokens/management/token_tree.cljs b/frontend/src/app/main/ui/workspace/tokens/management/token_tree.cljs index 40c1938eee..c08c1cd618 100644 --- a/frontend/src/app/main/ui/workspace/tokens/management/token_tree.cljs +++ b/frontend/src/app/main/ui/workspace/tokens/management/token_tree.cljs @@ -146,7 +146,7 @@ :active-theme-tokens active-theme-tokens :on-click on-token-pill-click :on-context-menu on-pill-context-menu}]) - ;; Render segment folder + ;; Render segment folder [:ul {:class (stl/css :node-parent) :key (:path node)} [:> folder-node* {:node node diff --git a/frontend/src/app/main/ui/workspace/viewport/actions.cljs b/frontend/src/app/main/ui/workspace/viewport/actions.cljs index 902c8f860b..c336c49c75 100644 --- a/frontend/src/app/main/ui/workspace/viewport/actions.cljs +++ b/frontend/src/app/main/ui/workspace/viewport/actions.cljs @@ -245,7 +245,7 @@ (dom/child? (dom/get-target event) (dom/query ".grid-layout-editor")) (dom/class? (dom/get-target event) "viewport-selrect")) (let [position (dom/get-client-position event)] - ;; Delayed callback because we need to wait to the previous context menu to be closed + ;; Delayed callback because we need to wait to the previous context menu to be closed (ts/schedule #(st/emit! (if (and (not read-only?) (some? @hover)) diff --git a/frontend/src/app/main/ui/workspace/viewport/path_actions.cljs b/frontend/src/app/main/ui/workspace/viewport/path_actions.cljs index 9ca8f4d526..b9be870c15 100644 --- a/frontend/src/app/main/ui/workspace/viewport/path_actions.cljs +++ b/frontend/src/app/main/ui/workspace/viewport/path_actions.cljs @@ -123,7 +123,7 @@ :aria-label (tr "workspace.path.actions.draw-nodes" (sc/get-tooltip :draw-nodes)) :tooltip-placement "bottom" :on-click on-select-draw-mode}] - ;; Edit mode + ;; Edit mode [:> icon-button* {:variant "ghost" :class (stl/css :topbar-btn) :icon i/move diff --git a/frontend/src/app/main/ui/workspace/viewport/widgets.cljs b/frontend/src/app/main/ui/workspace/viewport/widgets.cljs index 17da584434..9d101982a7 100644 --- a/frontend/src/app/main/ui/workspace/viewport/widgets.cljs +++ b/frontend/src/app/main/ui/workspace/viewport/widgets.cljs @@ -200,7 +200,7 @@ is-variant? [:use {:href "#icon-component"}])]) (if ^boolean edition? - ;; Case when edition? is true + ;; Case when edition? is true [:foreignObject {:x text-pos-x :y -15 :width (max 0 (- text-width text-pos-x)) @@ -217,7 +217,7 @@ :ref ref :default-value (:name frame) :on-blur accept-edit}]] - ;; Case when edition? is false + ;; Case when edition? is false [:foreignObject {:x text-pos-x :y -11 :width (max 0 (- text-width text-pos-x)) diff --git a/frontend/src/app/render_wasm/api/texts.cljs b/frontend/src/app/render_wasm/api/texts.cljs index bbc41bf1e4..9598cb73bc 100644 --- a/frontend/src/app/render_wasm/api/texts.cljs +++ b/frontend/src/app/render_wasm/api/texts.cljs @@ -215,7 +215,7 @@ :meroitic #"\uD802[\uDD80-\uDD9F]" ;; Arrows, Mathematical Operators, Misc Technical, Geometric Shapes, Misc Symbols, Dingbats, Supplemental Arrows, etc. :symbols #"[\u2190-\u21FF\u2200-\u22FF\u2300-\u23FF\u25A0-\u25FF\u2600-\u26FF\u2700-\u27BF\u2B00-\u2BFF]" - ;; Additional arrows, math, technical, geometric, and symbol blocks + ;; Additional arrows, math, technical, geometric, and symbol blocks :symbols-2 #"[\u2190-\u21FF\u2200-\u22FF\u2300-\u23FF\u25A0-\u25FF\u2600-\u26FF\u2700-\u27BF\u2B00-\u2BFF]" :music #"[\u2669-\u267B]|\uD834[\uDD00-\uDD1F]"}) diff --git a/frontend/src/app/render_wasm/api/webgl.cljs b/frontend/src/app/render_wasm/api/webgl.cljs index d2da5df87a..b97f977a0d 100644 --- a/frontend/src/app/render_wasm/api/webgl.cljs +++ b/frontend/src/app/render_wasm/api/webgl.cljs @@ -108,7 +108,7 @@ void main() { (.bufferData ^js gl (.-ARRAY_BUFFER ^js gl) (js/Float32Array. positions) (.-STATIC_DRAW ^js gl)) (.enableVertexAttribArray ^js gl position-location) (.vertexAttribPointer ^js gl position-location 2 (.-FLOAT ^js gl) false 0 0) - ;; Set up texcoord buffer + ;; Set up texcoord buffer (.bindBuffer ^js gl (.-ARRAY_BUFFER ^js gl) texcoord-buffer) (.bufferData ^js gl (.-ARRAY_BUFFER ^js gl) (js/Float32Array. texcoords) (.-STATIC_DRAW ^js gl)) (.enableVertexAttribArray ^js gl texcoord-location) diff --git a/frontend/src/app/render_wasm/serializers.cljs b/frontend/src/app/render_wasm/serializers.cljs index d6e73aa3f5..758152697f 100644 --- a/frontend/src/app/render_wasm/serializers.cljs +++ b/frontend/src/app/render_wasm/serializers.cljs @@ -258,8 +258,8 @@ (let [values (unchecked-get wasm/serializers "font-style") default (unchecked-get values "normal")] (case font-style - ;; NOTE: normal == regular! - ;; is it OK to keep those two values in our cljs model? + ;; NOTE: normal == regular! + ;; is it OK to keep those two values in our cljs model? "normal" (unchecked-get values "normal") "regular" (unchecked-get values "normal") "italic" (unchecked-get values "italic") diff --git a/frontend/src/app/render_wasm/serializers/color.cljs b/frontend/src/app/render_wasm/serializers/color.cljs index 35fda2b756..7d5d28b8c7 100644 --- a/frontend/src/app/render_wasm/serializers/color.cljs +++ b/frontend/src/app/render_wasm/serializers/color.cljs @@ -7,5 +7,5 @@ [hex opacity] (let [rgb (js/parseInt (subs hex 1) 16) a (mth/floor (* (or opacity 1) 0xff))] - ;; rgba >>> 0 so we have an unsigned representation + ;; rgba >>> 0 so we have an unsigned representation (unsigned-bit-shift-right (bit-or (bit-shift-left a 24) rgb) 0))) \ No newline at end of file diff --git a/frontend/src/app/util/clipboard.cljs b/frontend/src/app/util/clipboard.cljs index 92729e5ec4..5f18798847 100644 --- a/frontend/src/app/util/clipboard.cljs +++ b/frontend/src/app/util/clipboard.cljs @@ -56,7 +56,7 @@ is-input? (= (dom/get-tag-name target) "INPUT")] - ;; ignore when pasting into an editable control + ;; ignore when pasting into an editable control (if-not (or content-editable? is-input?) (-> event (dom/event->browser-event) diff --git a/frontend/src/app/util/dom/dnd.cljs b/frontend/src/app/util/dom/dnd.cljs index 0f29caab50..b99d899537 100644 --- a/frontend/src/app/util/dom/dnd.cljs +++ b/frontend/src/app/util/dom/dnd.cljs @@ -44,9 +44,9 @@ (js/console.log label "[" (:name data) "]" - ;; (if currentTarget - ;; (str "<" (.-localName currentTarget) " " (.-textContent currentTarget) ">") - ;; "null") + ;; (if currentTarget + ;; (str "<" (.-localName currentTarget) " " (.-textContent currentTarget) ">") + ;; "null") (if relatedTarget (str "<" (.-localName relatedTarget) " " (.-textContent relatedTarget) ">") "null")))) diff --git a/frontend/src/app/util/text/content/to_dom.cljs b/frontend/src/app/util/text/content/to_dom.cljs index a4c5c747bb..5d01908919 100644 --- a/frontend/src/app/util/text/content/to_dom.cljs +++ b/frontend/src/app/util/text/content/to_dom.cljs @@ -54,8 +54,8 @@ (assoc acc key (get node key default-value)))) {} attrs) fills (cond - ;; DEPRECATED: still here for backward compatibility with - ;; old penpot files that still has a single color. + ;; DEPRECATED: still here for backward compatibility with + ;; old penpot files that still has a single color. (or (some? (:fill-color node)) (some? (:fill-opacity node)) (some? (:fill-color-gradient node))) diff --git a/frontend/test/frontend_tests/logic/comp_remove_swap_slots_test.cljs b/frontend/test/frontend_tests/logic/comp_remove_swap_slots_test.cljs index feaf11c091..ac8da0c92d 100644 --- a/frontend/test/frontend_tests/logic/comp_remove_swap_slots_test.cljs +++ b/frontend/test/frontend_tests/logic/comp_remove_swap_slots_test.cljs @@ -100,7 +100,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) blue1 (cths/get-shape file :blue1) features #{"components/v2"} @@ -121,12 +121,12 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' uuid/zero)] - ;; ==== Check + ;; ==== Check - ;; blue1 has swap-id + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -138,7 +138,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b1 (cths/get-shape file :frame-b1) blue1 (cths/get-shape file :blue1) @@ -161,11 +161,11 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' (:id b1'))] - ;; ==== Check - ;; blue1 has swap-id + ;; ==== Check + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -176,7 +176,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) blue1 (cths/get-shape file :blue1) @@ -199,11 +199,11 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' (:id yellow'))] - ;; ==== Check - ;; blue1 has swap-id + ;; ==== Check + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -215,7 +215,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b2 (cths/get-shape file :frame-b2) blue1 (cths/get-shape file :blue1) @@ -238,11 +238,11 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' (:id b2'))] - ;; ==== Check - ;; blue1 has swap-id + ;; ==== Check + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -254,7 +254,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) blue1 (cths/get-shape file :blue1) features #{"components/v2"} @@ -276,8 +276,8 @@ page' (cthf/current-page file') copied-blue1' (find-copied-shape blue1 page' uuid/zero)] - ;; ==== Check - ;; copied-blue1 has not swap-id + ;; ==== Check + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -290,7 +290,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) blue1 (cths/get-shape file :blue1) @@ -314,8 +314,8 @@ yellow' (cths/get-shape file' :frame-yellow) copied-blue1' (find-copied-shape blue1 page' (:id yellow'))] - ;; ==== Check - ;; copied-blue1 has not swap-id + ;; ==== Check + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -327,7 +327,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b2 (cths/get-shape file :frame-b2) blue1 (cths/get-shape file :blue1) @@ -351,8 +351,8 @@ b2' (cths/get-shape file' :frame-b2) copied-blue1' (find-copied-shape blue1 page' (:id b2'))] - ;; ==== Check - ;; copied-blue1 has not swap-id + ;; ==== Check + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -364,7 +364,7 @@ file (setup-file-blue1-in-yellow) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) features #{"components/v2"} @@ -386,12 +386,12 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' (:id copied-yellow'))] - ;; ==== Check + ;; ==== Check - ;; blue1 has swap-id + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -402,7 +402,7 @@ file (setup-file-blue1-in-yellow) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) b1 (cths/get-shape file :frame-b1) @@ -426,12 +426,12 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' (:id copied-yellow'))] - ;; ==== Check + ;; ==== Check - ;; blue1 has swap-id + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -442,7 +442,7 @@ file (setup-file-blue1-in-yellow) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) b2 (cths/get-shape file :frame-b2) @@ -466,11 +466,11 @@ blue1' (cths/get-shape file' :blue1) copied-blue1' (find-copied-shape blue1' page' (:id copied-yellow'))] - ;; ==== Check + ;; ==== Check - ;; blue1 has swap-id + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -482,7 +482,7 @@ store (ths/setup-store file) blue1 (cths/get-shape file :blue1) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) features #{"components/v2"} @@ -505,8 +505,8 @@ copied-yellow' (find-copied-shape yellow page' uuid/zero) copied-blue1' (find-copied-shape blue1 page' (:id copied-yellow'))] - ;; ==== Check - ;; copied-blue1 has not swap-id + ;; ==== Check + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -518,7 +518,7 @@ store (ths/setup-store file) blue1 (cths/get-shape file :blue1) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) b1 (cths/get-shape file :frame-b1) @@ -543,8 +543,8 @@ copied-yellow' (find-copied-shape yellow page' (:id b1')) copied-blue1' (find-copied-shape blue1 page' (:id copied-yellow'))] - ;; ==== Check - ;; copied-blue1 has not swap-id + ;; ==== Check + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -556,7 +556,7 @@ store (ths/setup-store file) blue1 (cths/get-shape file :blue1) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) yellow (cths/get-shape file :frame-yellow) b2 (cths/get-shape file :frame-b2) @@ -581,8 +581,8 @@ copied-yellow' (find-copied-shape yellow page' (:id b2')) copied-blue1' (find-copied-shape blue1 page' (:id copied-yellow'))] - ;; ==== Check - ;; copied-blue1 has not swap-id + ;; ==== Check + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) @@ -593,7 +593,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) green (cths/get-shape file :green-copy) features #{"components/v2"} @@ -615,12 +615,12 @@ copied-green' (find-copied-shape green page' uuid/zero) copied-blue2' (find-copied-shape blue2' page' (:id copied-green'))] - ;; ==== Check + ;; ==== Check - ;; blue2 has swap-id + ;; blue2 has swap-id (t/is (some? (ctk/get-swap-slot blue2'))) - ;; copied-blue2 also has swap-id + ;; copied-blue2 also has swap-id (t/is (some? copied-blue2')) (t/is (some? (ctk/get-swap-slot copied-blue2'))))))))) @@ -631,7 +631,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b1 (cths/get-shape file :frame-b1) green (cths/get-shape file :green-copy) @@ -655,12 +655,12 @@ copied-green' (find-copied-shape green page' (:id b1')) copied-blue2' (find-copied-shape blue2' page' (:id copied-green'))] - ;; ==== Check + ;; ==== Check - ;; blue1 has swap-id + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue2'))) - ;; copied-blue1 also has swap-id + ;; copied-blue1 also has swap-id (t/is (some? copied-blue2')) (t/is (some? (ctk/get-swap-slot copied-blue2'))))))))) @@ -671,7 +671,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b2 (cths/get-shape file :frame-b2) green (cths/get-shape file :green-copy) @@ -695,12 +695,12 @@ copied-green' (find-copied-shape green page' (:id b2')) copied-blue2' (find-copied-shape blue2' page' (:id copied-green'))] - ;; ==== Check + ;; ==== Check - ;; blue2 has swap-id + ;; blue2 has swap-id (t/is (some? (ctk/get-swap-slot blue2'))) - ;; copied-blue1 also has swap-id + ;; copied-blue1 also has swap-id (t/is (some? copied-blue2')) (t/is (some? (ctk/get-swap-slot copied-blue2'))))))))) @@ -712,7 +712,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) green (cths/get-shape file :green-copy) blue2 (cths/get-shape file :blue-copy-in-green-copy) @@ -736,8 +736,8 @@ copied-green' (find-copied-shape green page' uuid/zero) copied-blue1' (find-copied-shape blue2 page' (:id copied-green'))] - ;; ==== Check - ;; copied-blue1 has swap-id + ;; ==== Check + ;; copied-blue1 has swap-id (t/is (some? copied-blue1')) (t/is (some? (ctk/get-swap-slot copied-blue1'))))))))) @@ -748,7 +748,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b1 (cths/get-shape file :frame-b1) green (cths/get-shape file :green-copy) @@ -774,8 +774,8 @@ copied-green' (find-copied-shape green page' (:id b1')) copied-blue2' (find-copied-shape blue2 page' (:id copied-green'))] - ;; ==== Check - ;; copied-blue1 has swap-id + ;; ==== Check + ;; copied-blue1 has swap-id (t/is (some? copied-blue2')) (t/is (some? (ctk/get-swap-slot copied-blue2'))))))))) @@ -786,7 +786,7 @@ file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) b2 (cths/get-shape file :frame-b2) blue2 (cths/get-shape file :blue-copy-in-green-copy) @@ -812,8 +812,8 @@ copied-green' (find-copied-shape green page' (:id b2')) copied-blue2' (find-copied-shape blue2 page' (:id copied-green'))] - ;; ==== Check - ;; copied-blue1 has swap-id + ;; ==== Check + ;; copied-blue1 has swap-id (t/is (some? copied-blue2')) (t/is (some? (ctk/get-swap-slot copied-blue2'))))))))) @@ -823,10 +823,10 @@ (t/async done (let [;; ==== Setup - ;; {:frame-red} [:name frame-blue] # [Component :red] - ;; {:frame-blue} [:name frame-blue] #[Component :blue] - ;; {:frame-green} [:name frame-green] #[Component :green] - ;; :blue1 [:name frame-blue, :swap-slot-label :red-copy-green] @--> frame-blue + ;; {:frame-red} [:name frame-blue] # [Component :red] + ;; {:frame-blue} [:name frame-blue] #[Component :blue] + ;; {:frame-green} [:name frame-green] #[Component :green] + ;; :blue1 [:name frame-blue, :swap-slot-label :red-copy-green] @--> frame-blue file (-> (cthf/sample-file :file1) (ctho/add-frame :frame-red :name "frame-blue") @@ -839,7 +839,7 @@ (cthc/component-swap :red-copy-green :blue :blue1)) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) green (cths/get-shape file :frame-green) features #{"components/v2"} @@ -862,11 +862,11 @@ copied-green' (find-copied-shape green' page' uuid/zero) copied-blue1' (find-copied-shape blue1' page' (:id copied-green'))] - ;; ==== Check - ;; blue1 has swap-id + ;; ==== Check + ;; blue1 has swap-id (t/is (some? (ctk/get-swap-slot blue1'))) - ;; copied-blue1 has not swap-id + ;; copied-blue1 has not swap-id (t/is (some? copied-blue1')) (t/is (nil? (ctk/get-swap-slot copied-blue1'))))))))) diff --git a/frontend/test/frontend_tests/logic/components_and_tokens.cljs b/frontend/test/frontend_tests/logic/components_and_tokens.cljs index cdfb94a220..9682403013 100644 --- a/frontend/test/frontend_tests/logic/components_and_tokens.cljs +++ b/frontend/test/frontend_tests/logic/components_and_tokens.cljs @@ -74,7 +74,7 @@ file (setup-base-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dws/select-shape (cthi/id :frame1)) (dwl/add-component)]] @@ -87,7 +87,7 @@ frame1' (cths/get-shape file' :frame1) tokens-frame1' (:applied-tokens frame1')] - ;; ==== Check + ;; ==== Check (t/is (= (count tokens-frame1') 4)) (t/is (= (get tokens-frame1' :r1) "test-token-1")) (t/is (= (get tokens-frame1' :r2) "test-token-1")) @@ -105,7 +105,7 @@ file (setup-file-with-main) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dwl/instantiate-component (:id file) (cthi/id :component1) @@ -119,7 +119,7 @@ c-frame1' (dsh/lookup-shape new-state (first selected)) tokens-frame1' (:applied-tokens c-frame1')] - ;; ==== Check + ;; ==== Check (t/is (= (count tokens-frame1') 4)) (t/is (= (get tokens-frame1' :r1) "test-token-1")) (t/is (= (get tokens-frame1' :r2) "test-token-1")) @@ -137,7 +137,7 @@ file (setup-file-with-copy) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dwta/apply-token {:shape-ids [(cthi/id :frame1)] :attributes #{:r1 :r2 :r3 :r4} :token (toht/get-token file "test-token-2") @@ -153,7 +153,7 @@ c-frame1' (cths/get-shape file' :c-frame1) tokens-frame1' (:applied-tokens c-frame1')] - ;; ==== Check + ;; ==== Check (t/is (= (count tokens-frame1') 4)) (t/is (= (get tokens-frame1' :r1) "test-token-2")) (t/is (= (get tokens-frame1' :r2) "test-token-2")) @@ -174,7 +174,7 @@ file (setup-file-with-copy) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dwta/unapply-token {:shape-ids [(cthi/id :frame1)] :attributes #{:r1 :r2 :r3 :r4} :token (toht/get-token file "test-token-1")})] @@ -189,7 +189,7 @@ c-frame1' (cths/get-shape file' :c-frame1) tokens-frame1' (:applied-tokens c-frame1')] - ;; ==== Check + ;; ==== Check (t/is (= (count tokens-frame1') 0)) (t/is (= (get c-frame1' :r1) 25)) (t/is (= (get c-frame1' :r2) 25)) @@ -245,7 +245,7 @@ file (setup-file-with-copy) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dwta/apply-token {:shape-ids [(cthi/id :c-frame1)] :attributes #{:r1 :r2 :r3 :r4} :token (toht/get-token file "test-token-2") @@ -265,7 +265,7 @@ c-frame1' (cths/get-shape file' :c-frame1) tokens-frame1' (:applied-tokens c-frame1')] - ;; ==== Check + ;; ==== Check (t/is (= (count tokens-frame1') 4)) (t/is (= (get tokens-frame1' :r1) "test-token-2")) (t/is (= (get tokens-frame1' :r2) "test-token-2")) @@ -286,7 +286,7 @@ file (setup-file-with-copy) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dwta/unapply-token {:shape-ids [(cthi/id :c-frame1)] :attributes #{:r1 :r2 :r3 :r4} :token (toht/get-token file "test-token-1")}) @@ -305,7 +305,7 @@ c-frame1' (cths/get-shape file' :c-frame1) tokens-frame1' (:applied-tokens c-frame1')] - ;; ==== Check + ;; ==== Check (t/is (= (count tokens-frame1') 0)) (t/is (= (get c-frame1' :r1) 25)) (t/is (= (get c-frame1' :r2) 25)) @@ -369,7 +369,7 @@ (cthc/instantiate-component :component1 :c-frame1)) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action events [(dwtl/set-selected-token-set-id (cthi/id :test-token-set)) (dwtl/update-token (cthi/id :token-radius) {:name "token-radius" diff --git a/frontend/test/frontend_tests/logic/copying_and_duplicating_test.cljs b/frontend/test/frontend_tests/logic/copying_and_duplicating_test.cljs index 1ea6f05ee3..ef925a4998 100644 --- a/frontend/test/frontend_tests/logic/copying_and_duplicating_test.cljs +++ b/frontend/test/frontend_tests/logic/copying_and_duplicating_test.cljs @@ -162,17 +162,17 @@ (let [;; ==== Setup file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action - ;; For each main and first level copy: - ;; - Duplicate it two times with copy-paste. + ;; For each main and first level copy: + ;; - Duplicate it two times with copy-paste. events (concat (duplicate-each-main-and-first-level-copy file) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}) - ;; - Change color of the nearest main and check propagation to duplicated. + ;; - Change color of the nearest main and check propagation to duplicated. (set-color-bottom-shape :frame-composed-1 file {:color "#222222"}))] (ths/run-store @@ -188,17 +188,17 @@ (let [;; ==== Setup file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action - ;; For each main and first level copy: - ;; - Duplicate it two times with copy-paste. + ;; For each main and first level copy: + ;; - Duplicate it two times with copy-paste. events (concat (duplicate-each-main-and-first-level-copy file) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}) - ;; - Change color of the nearest main and check propagation to duplicated. + ;; - Change color of the nearest main and check propagation to duplicated. (set-color-bottom-shape :frame-composed-1 file {:color "#222222"}) (set-color-bottom-shape :frame-composed-2 file {:color "#333333"}))] @@ -216,17 +216,17 @@ (let [;; ==== Setup file (setup-file) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action - ;; For each main and first level copy: - ;; - Duplicate it two times with copy-paste. + ;; For each main and first level copy: + ;; - Duplicate it two times with copy-paste. events (concat (duplicate-each-main-and-first-level-copy file) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}) - ;; - Change color of the nearest main and check propagation to duplicated. + ;; - Change color of the nearest main and check propagation to duplicated. (set-color-bottom-shape :frame-composed-1 file {:color "#222222"}) (set-color-bottom-shape :frame-composed-2 file {:color "#333333"}) (set-color-bottom-shape :frame-composed-3 file {:color "#444444"}))] @@ -251,14 +251,14 @@ events (concat (duplicate-simple-nested-in-main-and-group file) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}))] (ths/run-store store done events (fn [new-state] (let [file' (ths/get-file-from-state new-state)] - ;; Check propagation to all copies. + ;; Check propagation to all copies. (t/is (= (count-shapes file' "rect-simple-1" "#111111") 28))))))))) (t/deftest copy-nested-in-main-2 @@ -275,14 +275,14 @@ events (concat (duplicate-simple-nested-in-main-and-group file) - ;; - Change color of the nearest main + ;; - Change color of the nearest main (set-color-bottom-shape :frame-composed-1 file {:color "#222222"}))] (ths/run-store store done events (fn [new-state] (let [file' (ths/get-file-from-state new-state)] - ;; Check propagation to duplicated. + ;; Check propagation to duplicated. (t/is (= (count-shapes file' "rect-simple-1" "#222222") 9))))))))) (t/deftest copy-nested-in-main-3 @@ -299,14 +299,14 @@ events (concat (duplicate-simple-nested-in-main-and-group file) - ;; - Change color of the copy you duplicated from. + ;; - Change color of the copy you duplicated from. (set-color-bottom-shape :group-3 file {:color "#333333"}))] (ths/run-store store done events (fn [new-state] (let [file' (ths/get-file-from-state new-state)] - ;; Check that it's NOT PROPAGATED. + ;; Check that it's NOT PROPAGATED. (t/is (= (count-shapes file' "rect-simple-1" "#333333") 2))))))))) (t/deftest copy-nested-1 @@ -324,14 +324,14 @@ events (concat (duplicate-copy-nested-and-group-out-of-the-main file) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}))] (ths/run-store store done events (fn [new-state] (let [file' (ths/get-file-from-state new-state)] - ;; Check propagation to all copies. + ;; Check propagation to all copies. (t/is (= (count-shapes file' "rect-simple-1" "#111111") 20))))))))) @@ -350,9 +350,9 @@ events (concat (duplicate-copy-nested-and-group-out-of-the-main file) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}) - ;; - Change color of the previous main + ;; - Change color of the previous main (set-color-bottom-shape :frame-composed-1 file {:color "#222222"}) (set-color-bottom-shape :group-3 file {:color "#333333"}))] @@ -360,7 +360,7 @@ store done events (fn [new-state] (let [file' (ths/get-file-from-state new-state)] - ;; Check that it's NOT PROPAGATED. + ;; Check that it's NOT PROPAGATED. (t/is (= (count-shapes file' "rect-simple-1" "#111111") 11)) (t/is (= (count-shapes file' "rect-simple-1" "#222222") 7)) (t/is (= (count-shapes file' "rect-simple-1" "#333333") 2))))))))) @@ -380,9 +380,9 @@ events (concat (duplicate-copy-nested-and-group-out-of-the-main file :target-page-label :page-2) - ;; - Change color of Simple1 + ;; - Change color of Simple1 (set-color-bottom-shape :frame-simple-1 file {:color "#111111"}) - ;; - Change color of the previous main + ;; - Change color of the previous main (set-color-bottom-shape :frame-composed-1 file {:color "#222222"}) (set-color-bottom-shape :group-3 file {:color "#333333"}))] @@ -391,7 +391,7 @@ (fn [new-state] (let [file' (-> (ths/get-file-from-state new-state) (cthf/switch-to-page :page-2))] - ;; Check that it's NOT PROPAGATED. + ;; Check that it's NOT PROPAGATED. (t/is (= (count-shapes file' "rect-simple-1" "#111111") 10)) (t/is (= (count-shapes file' "rect-simple-1" "#222222") 4)) (t/is (= (count-shapes file' "rect-simple-1" "#333333") 0))))))))) diff --git a/frontend/test/frontend_tests/logic/frame_guides_test.cljs b/frontend/test/frontend_tests/logic/frame_guides_test.cljs index c88f362ed4..996d84cf4a 100644 --- a/frontend/test/frontend_tests/logic/frame_guides_test.cljs +++ b/frontend/test/frontend_tests/logic/frame_guides_test.cljs @@ -33,7 +33,7 @@ :id (uuid/next) :position 0} - ;; ==== Action + ;; ==== Action events [(dw/update-guides guide) (dw/update-position (:id frame1) {:x 100})]] diff --git a/frontend/test/frontend_tests/logic/pasting_in_containers_test.cljs b/frontend/test/frontend_tests/logic/pasting_in_containers_test.cljs index ac69e1cafd..5f974bff59 100644 --- a/frontend/test/frontend_tests/logic/pasting_in_containers_test.cljs +++ b/frontend/test/frontend_tests/logic/pasting_in_containers_test.cljs @@ -76,7 +76,7 @@ (ctho/add-frame :frame-blue {:name "frame-blue"})) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) frame-blue (cths/get-shape file :frame-blue) @@ -99,7 +99,7 @@ frame-blue' (cths/get-shape file' :frame-blue) copied-blue1' (find-copied-shape frame-blue' page' (:id frame-red'))] - ;; ==== Check + ;; ==== Check (t/is (= (:parent-id copied-blue1') (:id frame-red'))))))))) (t/deftest copy-shape-to-component @@ -113,7 +113,7 @@ (ctho/add-frame :frame-blue {:name "frame-blue"})) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) frame-blue (cths/get-shape file :frame-blue) @@ -136,7 +136,7 @@ frame-blue' (cths/get-shape file' :frame-blue) copied-blue1' (find-copied-shape frame-blue' page' (:id frame-red'))] - ;; ==== Check + ;; ==== Check (t/is (= (:parent-id copied-blue1') (:id frame-red'))))))))) (t/deftest copy-component-to-frame @@ -150,7 +150,7 @@ (cthc/make-component :blue :frame-blue)) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) frame-blue (cths/get-shape file :frame-blue) @@ -173,7 +173,7 @@ frame-blue' (cths/get-shape file' :frame-blue) copied-blue1' (find-copied-shape frame-blue' page' (:id frame-red'))] - ;; ==== Check + ;; ==== Check (t/is (= (:parent-id copied-blue1') (:id frame-red'))))))))) (t/deftest copy-component-to-component @@ -188,7 +188,7 @@ (cthc/make-component :blue :frame-blue)) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) frame-blue (cths/get-shape file :frame-blue) @@ -211,7 +211,7 @@ frame-blue' (cths/get-shape file' :frame-blue) copied-blue1' (find-copied-shape frame-blue' page' (:id frame-red'))] - ;; ==== Check + ;; ==== Check (t/is (not (ctk/main-instance? copied-blue1'))) (t/is (= (:parent-id copied-blue1') (:id frame-red'))))))))) @@ -228,7 +228,7 @@ (cthc/make-component :blue :frame-blue)) store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) frame-blue (cths/get-shape file :frame-blue) @@ -254,7 +254,7 @@ copied-blue1' (find-copied-shape frame-blue' page' (:id frame-red')) copied-blue2' (find-copied-shape frame-blue' page' uuid/zero true)] - ;; ==== Check + ;; ==== Check (t/is (nil? copied-blue1')) (t/is (ctk/main-instance? copied-blue2')) (t/is (= (:parent-id copied-blue2') uuid/zero)))))))) @@ -272,7 +272,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) root (cths/get-shape-by-id file uuid/zero) frame-red (cths/get-shape file :frame-red) @@ -297,13 +297,13 @@ root-children' (->> (:shapes root') (map #(cths/get-shape-by-id file' %)))] - ;; ==== Check - ;; The main shape of the component have no children + ;; ==== Check + ;; The main shape of the component have no children (t/is (= 0 (count (:shapes frame-red')))) - ;; Root had two children, now have 3 + ;; Root had two children, now have 3 (t/is (= 2 (count (:shapes root)))) (t/is (= 3 (count (:shapes root')))) - ;; Two of the children of root are variant-containers + ;; Two of the children of root are variant-containers (t/is (= 2 (count (filter ctk/is-variant-container? root-children')))))))))) (t/deftest cut-paste-variant-container-into-component @@ -319,7 +319,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) root (cths/get-shape-by-id file uuid/zero) frame-red (cths/get-shape file :frame-red) @@ -346,13 +346,13 @@ root-children' (->> (:shapes root') (map #(cths/get-shape-by-id file' %)))] - ;; ==== Check - ;; The main shape of the component have no children + ;; ==== Check + ;; The main shape of the component have no children (t/is (= 0 (count (:shapes frame-red')))) - ;; Root had two children, now it still have two (because we have cutted one of them, and then created a new one) + ;; Root had two children, now it still have two (because we have cutted one of them, and then created a new one) (t/is (= 2 (count (:shapes root)))) (t/is (= 2 (count (:shapes root')))) - ;; One of the children of root is a variant-container + ;; One of the children of root is a variant-container (t/is (= 1 (count (filter ctk/is-variant-container? root-children')))))))))) (t/deftest copy-variant-into-different-variant-container @@ -366,7 +366,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) m01 (cths/get-shape file :m01) v02 (cths/get-shape file :v02) @@ -389,12 +389,12 @@ v02' (cths/get-shape file' :v02) components' (cthc/get-components file')] - ;; ==== Check - ;; v02 had two children, now it have 3 + ;; ==== Check + ;; v02 had two children, now it have 3 (t/is (= 2 (count (:shapes v02)))) (t/is (= 3 (count (:shapes v02')))) - ;;There was 4 components, now there are 5 + ;;There was 4 components, now there are 5 (t/is (= 4 (count components))) (t/is (= 5 (count components'))))))))) @@ -409,7 +409,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) m01 (cths/get-shape file :m01) v02 (cths/get-shape file :v02) @@ -434,16 +434,16 @@ m03' (cths/get-shape file' :m03) components' (cthc/get-components file')] - ;; ==== Check - ;; v02 had two children, now it have still 2 + ;; ==== Check + ;; v02 had two children, now it have still 2 (t/is (= 2 (count (:shapes v02)))) (t/is (= 2 (count (:shapes v02')))) - ;; m03 had no children, now it have 1 + ;; m03 had no children, now it have 1 (t/is (= 0 (count (:shapes m03)))) (t/is (= 1 (count (:shapes m03')))) - ;;There was 4 components, now there is still 4 + ;;There was 4 components, now there is still 4 (t/is (= 4 (count components))) (t/is (= 4 (count components'))))))))) @@ -457,7 +457,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) m01 (cths/get-shape file :m01) v01 (cths/get-shape file :v01) @@ -480,12 +480,12 @@ v01' (cths/get-shape file' :v01) components' (cthc/get-components file')] - ;; ==== Check - ;; v01 had two children, now it have 3 + ;; ==== Check + ;; v01 had two children, now it have 3 (t/is (= 2 (count (:shapes v01)))) (t/is (= 3 (count (:shapes v01')))) - ;;There was 2 components, now there are 3 + ;;There was 2 components, now there are 3 (t/is (= 2 (count components))) (t/is (= 3 (count components'))))))))) @@ -499,7 +499,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) m01 (cths/get-shape file :m01) v01 (cths/get-shape file :v01) @@ -522,12 +522,12 @@ v01' (cths/get-shape file' :v01) components' (cthc/get-components file')] - ;; ==== Check - ;; v01 had two children, now it have 3 + ;; ==== Check + ;; v01 had two children, now it have 3 (t/is (= 2 (count (:shapes v01)))) (t/is (= 3 (count (:shapes v01')))) - ;;There was 2 components, now there are 3 + ;;There was 2 components, now there are 3 (t/is (= 2 (count components))) (t/is (= 3 (count components'))))))))) @@ -541,7 +541,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) m01 (cths/get-shape file :m01) m02 (cths/get-shape file :m02) @@ -565,12 +565,12 @@ v01' (cths/get-shape file' :v01) components' (cthc/get-components file')] - ;; ==== Check - ;; v01 had two children, now it have 3 + ;; ==== Check + ;; v01 had two children, now it have 3 (t/is (= 2 (count (:shapes v01)))) (t/is (= 3 (count (:shapes v01')))) - ;;There was 2 components, now there are 3 + ;;There was 2 components, now there are 3 (t/is (= 2 (count components))) (t/is (= 3 (count components'))))))))) @@ -586,7 +586,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) v01 (cths/get-shape file :v01) @@ -609,12 +609,12 @@ v01' (cths/get-shape file' :v01) components' (cthc/get-components file')] - ;; ==== Check - ;; v01 had two children, now it have 3 + ;; ==== Check + ;; v01 had two children, now it have 3 (t/is (= 2 (count (:shapes v01)))) (t/is (= 3 (count (:shapes v01')))) - ;;There was 3 components, now there are 4 + ;;There was 3 components, now there are 4 (t/is (= 3 (count components))) (t/is (= 4 (count components'))))))))) @@ -630,7 +630,7 @@ store (ths/setup-store file) - ;; ==== Action + ;; ==== Action page (cthf/current-page file) frame-red (cths/get-shape file :frame-red) v01 (cths/get-shape file :v01) @@ -655,15 +655,15 @@ m01' (cths/get-shape file' :m01) components' (cthc/get-components file')] - ;; ==== Check - ;; v01 had two children, now it have still 2 + ;; ==== Check + ;; v01 had two children, now it have still 2 (t/is (= 2 (count (:shapes v01)))) (t/is (= 2 (count (:shapes v01')))) - ;; m01 had no children, now it have 1 + ;; m01 had no children, now it have 1 (t/is (= 0 (count (:shapes m01)))) (t/is (= 1 (count (:shapes m01')))) - ;;There was 3 components, now there are still 3 + ;;There was 3 components, now there are still 3 (t/is (= 3 (count components))) (t/is (= 3 (count components'))))))))) \ No newline at end of file diff --git a/frontend/test/frontend_tests/tokens/logic/token_actions_test.cljs b/frontend/test/frontend_tests/tokens/logic/token_actions_test.cljs index e215981948..cb6f2e39d8 100644 --- a/frontend/test/frontend_tests/tokens/logic/token_actions_test.cljs +++ b/frontend/test/frontend_tests/tokens/logic/token_actions_test.cljs @@ -118,9 +118,9 @@ :token (toht/get-token file "borderRadius.sm") :shape-ids [(:id rect-1)] :on-update-shape dwta/update-shape-radius-all}) - ;; Apply single `:r1` attribute to same shape - ;; while removing other attributes from the border-radius set - ;; but keep `:r4` for testing purposes + ;; Apply single `:r1` attribute to same shape + ;; while removing other attributes from the border-radius set + ;; but keep `:r4` for testing purposes (dwta/apply-token {:attributes #{:r1 :r2 :r3} :token (toht/get-token file "borderRadius.md") :shape-ids [(:id rect-1)]