From 0103d1a455de81bbb24db75d2ded26e017bea120 Mon Sep 17 00:00:00 2001 From: Gabriel Horner Date: Mon, 29 Jul 2024 15:03:29 -0400 Subject: [PATCH] fix: table count in title doesn't update with filter Also add translation keys for table headers --- scripts/src/logseq/tasks/lang.clj | 1 + src/main/frontend/components/all_pages.cljs | 3 +-- src/main/frontend/components/views.cljs | 9 ++++----- src/resources/dicts/en.edn | 7 ++++++- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/scripts/src/logseq/tasks/lang.clj b/scripts/src/logseq/tasks/lang.clj index 4de4f4c18e..77a23fc47a 100644 --- a/scripts/src/logseq/tasks/lang.clj +++ b/scripts/src/logseq/tasks/lang.clj @@ -114,6 +114,7 @@ "(t prompt-key" [:select/default-prompt :select/default-select-multiple :select.graph/prompt] ;; All args to ui/make-confirm-modal are not keywords "(t title" [] + "(t (or title-key" [:views.table/default-title :all-pages/table-title] "(t subtitle" [:asset/physical-delete]}) (defn- whiteboard-dicts diff --git a/src/main/frontend/components/all_pages.cljs b/src/main/frontend/components/all_pages.cljs index 465efadb45..bea19775e9 100644 --- a/src/main/frontend/components/all_pages.cljs +++ b/src/main/frontend/components/all_pages.cljs @@ -59,8 +59,7 @@ [:div.ls-all-pages.w-full (views/view view-entity {:data data :set-data! set-data! - :title (let [data-count (count data)] - (str data-count (if (> data-count 1) " Pages" " Page"))) + :title-key :all-pages/table-title :columns columns :on-delete-rows (fn [table selected-rows] (shui/dialog-open! diff --git a/src/main/frontend/components/views.cljs b/src/main/frontend/components/views.cljs index 18c93b7f29..e43f204fc9 100644 --- a/src/main/frontend/components/views.cljs +++ b/src/main/frontend/components/views.cljs @@ -894,7 +894,7 @@ (property-handler/set-block-property! repo (:db/id entity) :logseq.property/table-ordered-columns ids))))})) (rum/defc view-inner < rum/static - [view-entity {:keys [data set-data! columns add-new-object! create-view! title] :as option}] + [view-entity {:keys [data set-data! columns add-new-object! create-view! title-key] :as option}] (let [[input set-input!] (rum/use-state "") sorting (:logseq.property/table-sorting view-entity) [sorting set-sorting!] (rum/use-state (or sorting [{:id :block/updated-at, :asc? false}])) @@ -943,10 +943,9 @@ [:div.flex.flex-col.gap-2.grid [:div.flex.items-center.justify-between - (let [data-count (count (:data table))] - [:div.flex.flex-row.items-center.gap-2 - [:div.font-medium (or title - (str data-count (if (> data-count 1) " Objects" " Object")))]]) + [:div.flex.flex-row.items-center.gap-2 + [:div.font-medium (t (or title-key :views.table/default-title) + (count (:rows table)))]] [:div.flex.items-center.gap-1 (filter-properties columns table) diff --git a/src/resources/dicts/en.edn b/src/resources/dicts/en.edn index 5af3c4d4ef..ec7a077cc6 100644 --- a/src/resources/dicts/en.edn +++ b/src/resources/dicts/en.edn @@ -207,7 +207,7 @@ ;; 1 Unlinked Reference ;; 5 Unlinked References (str total - (if (= total 1) " Unlinked Reference" " Unlinked References"))) + (if (= total 1) " Unlinked Reference" " Unlinked References"))) :editor/block-search "Search for a block" :text/image "Image" :asset/show-in-folder "Show image in folder" @@ -491,6 +491,8 @@ :export-save-to-file "Save to file" :all-graphs "All graphs" :all-pages "All pages" + ;; E.g. 1 Page or 2 Pages + :all-pages/table-title (fn [total] (str total (if (= total 1) " Page" " Pages"))) :all-pages/failed-to-delete-pages "These pages had their content deleted but were unable to be deleted: {1}. See javascript console for more details." :all-whiteboards "All whiteboards" :all-files "All files" @@ -636,6 +638,9 @@ :header/go-back "Go back" :header/go-forward "Go forward" + ;; E.g. 1 Object or 2 Objects + :views.table/default-title (fn [total] (str total (if (= total 1) " Object" " Objects"))) + ;; Commands are nested for now to stay in sync with the shortcuts system. ;; Other languages should not nest keys under :commands :commands