Browse Source

enhance(ux): use yyyymmdd to search journals

Tienson Qin 5 months ago
parent
commit
3bdd46a898

+ 0 - 2
src/main/frontend/components/cmdk/core.cljs

@@ -332,8 +332,6 @@
     (swap! !results assoc-in [:current-page :status] :loading)
     (p/let [blocks (search/block-search repo @!input opts)
             blocks (remove nil? blocks)
-            blocks (search/fuzzy-search blocks @!input {:limit 100
-                                                        :extract-fn :block/title})
             items (keep (fn [block]
                           (if (:page? block)
                             (page-item repo block)

+ 4 - 2
src/main/frontend/handler/editor.cljs

@@ -1633,8 +1633,10 @@
                               (when nlp-pages?
                                 (map (fn [title] {:block/title title :nlp-date? true :page? true})
                                      date/nlp-pages)))
-                      (search/fuzzy-search q {:extract-fn :block/title :limit 50}))]
-    (sort-by (complement :page?) result')))
+                      (search/fuzzy-search q {:extract-fn :block/title :limit 50}))
+          result'' (let [ids (set (map :block/uuid result'))]
+                     (concat result' (remove (fn [item] (ids (:block/uuid item))) matched)))]
+    (sort-by (complement :page?) result'')))
 
 (defn <get-matched-templates
   [q]

+ 6 - 3
src/main/frontend/worker/search.cljs

@@ -223,9 +223,12 @@ DROP TRIGGER IF EXISTS blocks_au;
              (ldb/closed-value? block)
              (and (string? title) (> (count title) 10000))
              (string/blank? title))        ; empty page or block
-    (let [title (-> block
-                    (update :block/title ldb/get-title-with-parents)
-                    db-content/recur-replace-uuid-in-block-title)]
+    (let [title (cond->
+                 (-> block
+                     (update :block/title ldb/get-title-with-parents)
+                     db-content/recur-replace-uuid-in-block-title)
+                  (ldb/journal? block)
+                  (str " " (:block/journal-day block)))]
       (when uuid
         {:id (str uuid)
          :page (str (or (:block/uuid page) uuid))