Browse Source

Merge branch 'master' into master

Gabriel Horner 3 năm trước cách đây
mục cha
commit
a66cd0041e

+ 72 - 72
src/main/frontend/components/page.cljs

@@ -256,78 +256,78 @@
                    (db/get-page-format page))
           journal? (db/journal-page? page-name)
           fmt-journal? (boolean (date/journal-title->int page-name))
-          sidebar? (:sidebar? option)]
-      (let [route-page-name path-page-name
-            page (if block?
-                   (->> (:db/id (:block/page (db/entity repo [:block/uuid block-id])))
-                        (db/entity repo))
-                   (do
-                     (when-not (db/entity repo [:block/name page-name])
-                       (let [m (format-block/page-name->map path-page-name true)]
-                         (db/transact! repo [m])))
-                     (db/pull [:block/name page-name])))
-            {:keys [icon]} (:block/properties page)
-            page-name (:block/name page)
-            page-original-name (:block/original-name page)
-            title (or page-original-name page-name)
-            icon (or icon "")
-            today? (and
-                    journal?
-                    (= page-name (util/page-name-sanity-lc (date/journal-name))))]
-        [:div.flex-1.page.relative
-         (merge (if (seq (:block/tags page))
-                  (let [page-names (model/get-page-names-by-ids (map :db/id (:block/tags page)))]
-                    {:data-page-tags (text/build-data-value page-names)})
-                  {})
-
-                {:key path-page-name
-                 :class (util/classnames [{:is-journals (or journal? fmt-journal?)}])})
-
-         [:div.relative
-          (when (and (not sidebar?)
-                     (not block?))
-            [:div.flex.flex-row.space-between
-             [:div.flex-1.flex-row
-              (page-title page-name icon title format fmt-journal?)]
-             (when (not config/publishing?)
-               [:div.flex.flex-row
-                (when plugin-handler/lsp-enabled?
-                  (plugins/hook-ui-slot :page-head-actions-slotted nil)
-                  (plugins/hook-ui-items :pagebar))])])
-          [:div
-           (when (and block? (not sidebar?))
-             (let [config {:id "block-parent"
-                           :block? true}]
-               [:div.mb-4
-                (block/block-parents config repo block-id {:level-limit 3})]))
-
-           ;; blocks
-           (let [page (if block?
-                        (db/entity repo [:block/uuid block-id])
-                        page)]
-             (page-blocks-cp repo page {:sidebar? sidebar?}))]]
-
-         (when-not block?
-           (today-queries repo today? sidebar?))
-
-         (when-not block?
-           (tagged-pages repo page-name))
-
-         ;; referenced blocks
-         [:div {:key "page-references"}
-          (rum/with-key
-            (reference/references route-page-name false)
-            (str route-page-name "-refs"))]
-
-         (when-not block?
-           [:div
-            (when (not journal?)
-              (hierarchy/structures route-page-name))
-
-            ;; TODO: or we can lazy load them
-            (when-not sidebar?
-              [:div {:key "page-unlinked-references"}
-               (reference/unlinked-references route-page-name)])])]))))
+          sidebar? (:sidebar? option)
+          route-page-name path-page-name
+          page (if block?
+                 (->> (:db/id (:block/page (db/entity repo [:block/uuid block-id])))
+                      (db/entity repo))
+                 (do
+                   (when-not (db/entity repo [:block/name page-name])
+                     (let [m (format-block/page-name->map path-page-name true)]
+                       (db/transact! repo [m])))
+                   (db/pull [:block/name page-name])))
+          {:keys [icon]} (:block/properties page)
+          page-name (:block/name page)
+          page-original-name (:block/original-name page)
+          title (or page-original-name page-name)
+          icon (or icon "")
+          today? (and
+                  journal?
+                  (= page-name (util/page-name-sanity-lc (date/journal-name))))]
+      [:div.flex-1.page.relative
+       (merge (if (seq (:block/tags page))
+                (let [page-names (model/get-page-names-by-ids (map :db/id (:block/tags page)))]
+                  {:data-page-tags (text/build-data-value page-names)})
+                {})
+
+              {:key path-page-name
+               :class (util/classnames [{:is-journals (or journal? fmt-journal?)}])})
+
+       [:div.relative
+        (when (and (not sidebar?)
+                   (not block?))
+          [:div.flex.flex-row.space-between
+           [:div.flex-1.flex-row
+            (page-title page-name icon title format fmt-journal?)]
+           (when (not config/publishing?)
+             [:div.flex.flex-row
+              (when plugin-handler/lsp-enabled?
+                (plugins/hook-ui-slot :page-head-actions-slotted nil)
+                (plugins/hook-ui-items :pagebar))])])
+        [:div
+         (when (and block? (not sidebar?))
+           (let [config {:id "block-parent"
+                         :block? true}]
+             [:div.mb-4
+              (block/block-parents config repo block-id {:level-limit 3})]))
+
+         ;; blocks
+         (let [page (if block?
+                      (db/entity repo [:block/uuid block-id])
+                      page)]
+           (page-blocks-cp repo page {:sidebar? sidebar?}))]]
+
+       (when-not block?
+         (today-queries repo today? sidebar?))
+
+       (when-not block?
+         (tagged-pages repo page-name))
+
+       ;; referenced blocks
+       [:div {:key "page-references"}
+        (rum/with-key
+          (reference/references route-page-name false)
+          (str route-page-name "-refs"))]
+
+       (when-not block?
+         [:div
+          (when (not journal?)
+            (hierarchy/structures route-page-name))
+
+          ;; TODO: or we can lazy load them
+          (when-not sidebar?
+            [:div {:key "page-unlinked-references"}
+             (reference/unlinked-references route-page-name)])])])))
 
 (defonce layout (atom [js/window.innerWidth js/window.innerHeight]))
 

+ 0 - 1
src/main/frontend/components/page_menu.cljs

@@ -10,7 +10,6 @@
             [frontend.state :as state]
             [frontend.ui :as ui]
             [frontend.util :as util]
-            [rum.core :as rum]
             [frontend.handler.shell :as shell]
             [frontend.handler.plugin :as plugin-handler]
             [frontend.mobile.util :as mobile-util]))

+ 0 - 4
src/main/frontend/config.cljs

@@ -253,10 +253,6 @@
   [path]
   (util/starts-with? path default-draw-directory))
 
-(defn journal?
-  [path]
-  (string/includes? path (str (get-journals-directory) "/")))
-
 (defonce local-repo "local")
 
 (defn demo-graph?

+ 0 - 1
src/main/frontend/context/i18n.cljs

@@ -1,7 +1,6 @@
 (ns frontend.context.i18n
   (:require [frontend.dicts :as dicts]
             [frontend.modules.shortcut.dict :as shortcut-dict]
-            [rum.core :as rum]
             [medley.core :refer [deep-merge]]
             [frontend.state :as state]))
 

+ 0 - 6
src/main/frontend/db/model.cljs

@@ -1247,12 +1247,6 @@
          (reset! blocks-count-cache n)
          n)))))
 
-(defn get-all-block-uuids
-  []
-  (when-let [conn (conn/get-conn)]
-    (->> (d/datoms conn :avet :block/uuid)
-         (map :v))))
-
 ;; block/uuid and block/content
 (defn get-all-block-contents
   []

+ 21 - 21
src/main/frontend/handler/repo.cljs

@@ -179,8 +179,6 @@
         new-graph? (:new-graph? opts)
         delete-data (->> (concat delete-files delete-blocks)
                          (remove nil?))]
-    (when delete-data
-      (js/console.dir delete-data))
     (when (seq delete-data) (db/transact! repo-url delete-data))
     (doseq [file parsed-files]
       (file-handler/alter-file repo-url
@@ -221,31 +219,33 @@
   [repo-url files {:keys [first-clone? delete-files delete-blocks re-render? re-render-opts refresh?] :as opts
                    :or {re-render? true}}]
   (update-parsing-state! repo-url refresh?)
-  ;; TODO: parsing rotating ui will be not refreshed without setTimeout
-  (js/setTimeout
-   (fn []
-     (let [file-paths (map :file/path files)
-           metadata-file (config/get-metadata-path)
-           metadata-content (some #(when (= (:file/path %) metadata-file)
-                                     (:file/content %)) files)
-           metadata (when metadata-content
-                      (common-handler/read-metadata! metadata-content))
-           db-encrypted? (:db/encrypted? metadata)
-           db-encrypted-secret (if db-encrypted? (:db/encrypted-secret metadata) nil)]
-       (if db-encrypted?
-         (let [close-fn #(parse-files-and-create-default-files! repo-url files delete-files delete-blocks file-paths first-clone? db-encrypted? re-render? re-render-opts metadata opts)]
-           (state/set-state! :encryption/graph-parsing? true)
-           (state/pub-event! [:modal/encryption-input-secret-dialog repo-url
-                              db-encrypted-secret
-                              close-fn]))
-         (parse-files-and-create-default-files! repo-url files delete-files delete-blocks file-paths first-clone? db-encrypted? re-render? re-render-opts metadata opts))))
-   100))
+
+  (let [f (fn []
+            (let [file-paths (map :file/path files)
+                  metadata-file (config/get-metadata-path)
+                  metadata-content (some #(when (= (:file/path %) metadata-file)
+                                            (:file/content %)) files)
+                  metadata (when metadata-content
+                             (common-handler/read-metadata! metadata-content))
+                  db-encrypted? (:db/encrypted? metadata)
+                  db-encrypted-secret (if db-encrypted? (:db/encrypted-secret metadata) nil)]
+              (if db-encrypted?
+                (let [close-fn #(parse-files-and-create-default-files! repo-url files delete-files delete-blocks file-paths first-clone? db-encrypted? re-render? re-render-opts metadata opts)]
+                  (state/set-state! :encryption/graph-parsing? true)
+                  (state/pub-event! [:modal/encryption-input-secret-dialog repo-url
+                                     db-encrypted-secret
+                                     close-fn]))
+                (parse-files-and-create-default-files! repo-url files delete-files delete-blocks file-paths first-clone? db-encrypted? re-render? re-render-opts metadata opts))))]
+    (if util/node-test?
+      (f)
+      (js/setTimeout f 100))))
 
 (defn load-repo-to-db!
   [repo-url {:keys [first-clone? diffs nfs-files refresh? new-graph?]}]
   (spec/validate :repos/url repo-url)
   (when (= :repos (state/get-current-route))
     (route-handler/redirect-to-home!))
+
   (let [config (or (state/get-config repo-url)
                    (when-let [content (some-> (first (filter #(= (config/get-config-path repo-url) (:file/path %)) nfs-files))
                                         :file/content)]

+ 0 - 5
src/main/frontend/search/db.cljs

@@ -1,5 +1,4 @@
 (ns frontend.search.db
-  (:refer-clojure :exclude [empty?])
   (:require [cljs-bean.core :as bean]
             [clojure.string :as string]
             [frontend.db :as db]
@@ -9,10 +8,6 @@
 
 (defonce indices (atom nil))
 
-(defn empty?
-  [repo]
-  (nil? (get @indices repo)))
-
 (defn block->index
   "Convert a block to the index for searching"
   [{:block/keys [uuid page content] :as block}]

+ 0 - 8
src/main/frontend/text.cljs

@@ -231,14 +231,6 @@
   [img-formats s]
   (some (fn [fmt] (util/safe-re-find (re-pattern (str "(?i)\\." fmt "(?:\\?([^#]*))?(?:#(.*))?$")) s)) img-formats))
 
-(defn scheduled-deadline-dash->star
-  [content]
-  (-> content
-      (string/replace "- TODO -> DONE [" "* TODO -> DONE [")
-      (string/replace "- DOING -> DONE [" "* DOING -> DONE [")
-      (string/replace "- LATER -> DONE [" "* LATER -> DONE [")
-      (string/replace "- NOW -> DONE [" "* NOW -> DONE [")))
-
 (defn remove-indentation-spaces
   [s level remove-first-line?]
   (let [lines (string/split-lines s)

+ 2 - 2
src/test/frontend/db/query_dsl_test.cljs

@@ -164,7 +164,7 @@ last-modified-at:: 1609084800002"}]]
         :count 1}
 
        "(page-property parent \"child page 1\")"
-       {:query (dsl/->page-property-query "parent" "child page 1") 
+       {:query (dsl/->page-property-query "parent" "child page 1")
         :count 2}
 
        "(and (page-property parent [[child page 1]]) (page-property parent [[child page 2]]))"
@@ -476,7 +476,7 @@ last-modified-at:: 1609084800002"}]]
                       (done))))
    :after config/destroy-test-db!})
 
-#_(run-tests)
+#_(cljs.test/run-tests)
 
 (comment
   (require '[clojure.pprint :as pprint])

+ 1 - 1
src/test/frontend/format/block_test.cljs

@@ -32,4 +32,4 @@
     [["foo" "#bar, #baz"]] ["bar" "baz"]
     [["foo" "[[nested [[page]]]], test"]] ["nested [[page]]" "test"]))
 
-#_(run-tests)
+#_(cljs.test/run-tests)

+ 1 - 1
src/test/frontend/handler/extract_test.cljs

@@ -73,4 +73,4 @@
      - line4"
    [[1 "line1"] [2 "line2"] [3 "line3"] [3 "line4"]]))
 
-#_(run-tests)
+#_(cljs.test/run-tests)

+ 2 - 2
src/test/frontend/modules/outliner/core_test.cljs

@@ -330,7 +330,7 @@
         (is (= [19 20] children-of-18))))))
 
 (comment
-  (run-test test-insert-nodes))
+  (cljs.test/run-tests test-insert-nodes))
 
 (comment
-  (run-tests))
+  (cljs.test/run-tests))