瀏覽代碼

improve(ux): adjust asset loader for mobile

charlie 3 年之前
父節點
當前提交
ec9b4476e5
共有 2 個文件被更改,包括 19 次插入2 次删除
  1. 17 0
      deps/graph-parser/src/logseq/graph_parser/config.cljs
  2. 2 2
      src/main/frontend/components/block.cljs

+ 17 - 0
deps/graph-parser/src/logseq/graph_parser/config.cljs

@@ -8,12 +8,29 @@
   "Copy of frontend.config/app-name. Too small to couple to main app"
   "Copy of frontend.config/app-name. Too small to couple to main app"
   "logseq")
   "logseq")
 
 
+(defonce asset-protocol "assets://")
+(defonce capacitor-protocol "capacitor://")
+
 (defonce local-assets-dir "assets")
 (defonce local-assets-dir "assets")
 
 
 (defn local-asset?
 (defn local-asset?
   [s]
   [s]
   (gp-util/safe-re-find (re-pattern (str "^[./]*" local-assets-dir)) s))
   (gp-util/safe-re-find (re-pattern (str "^[./]*" local-assets-dir)) s))
 
 
+(defn local-protocol-asset?
+  [s]
+  (when (string? s)
+    (or (string/starts-with? s asset-protocol)
+        (string/starts-with? s capacitor-protocol))))
+
+(defn remove-asset-protocol
+  [s]
+  (if (local-protocol-asset? s)
+    (-> s
+        (string/replace-first asset-protocol "")
+        (string/replace-first capacitor-protocol ""))
+    s))
+
 (defonce default-draw-directory "draws")
 (defonce default-draw-directory "draws")
 
 
 (defn draw?
 (defn draw?

+ 2 - 2
src/main/frontend/components/block.cljs

@@ -182,10 +182,10 @@
     (rum/local false ::loading?)
     (rum/local false ::loading?)
     {:will-mount  (fn [state]
     {:will-mount  (fn [state]
                     (let [src (first (:rum/args state))]
                     (let [src (first (:rum/args state))]
-                      (if (and (gp-config/local-asset? src)
+                      (if (and (gp-config/local-protocol-asset? src)
                                (file-sync/current-graph-sync-on?))
                                (file-sync/current-graph-sync-on?))
                         (let [*exist? (::exist? state)
                         (let [*exist? (::exist? state)
-                              asset-path (string/replace src (str gp-config/local-assets-dir "://") "")]
+                              asset-path (gp-config/remove-asset-protocol src)]
                           (if (string/blank? asset-path)
                           (if (string/blank? asset-path)
                             (reset! *exist? false)
                             (reset! *exist? false)
                             (-> (fs/file-exists? "" asset-path)
                             (-> (fs/file-exists? "" asset-path)