mirror of https://github.com/logseq/logseq
refactor: step 1 file-sync/sync-manager
parent
937a22c7ba
commit
308a4aeb47
|
@ -2865,6 +2865,9 @@
|
|||
(go
|
||||
(when-let [sm ^SyncManager (state/get-file-sync-manager)]
|
||||
(println "[SyncManager" (:graph-uuid sm) "]" "stopping")
|
||||
|
||||
(state/clear-file-sync-state! (:graph-uuid sm))
|
||||
|
||||
(<! (-stop! sm))
|
||||
(swap! state/state assoc :file-sync/sync-state {})
|
||||
(println "[SyncManager" (:graph-uuid sm) "]" "stopped")
|
||||
|
@ -2955,7 +2958,7 @@
|
|||
(clear-graphs-txid! repo)
|
||||
(do
|
||||
(state/set-file-sync-state repo @*sync-state)
|
||||
(state/set-file-sync-manager sm)
|
||||
(state/set-file-sync-manager graph-uuid sm)
|
||||
|
||||
;; update global state when *sync-state changes
|
||||
(add-watch *sync-state ::update-global-state
|
||||
|
|
|
@ -235,9 +235,11 @@
|
|||
:file-sync/jstour-inst nil
|
||||
:file-sync/onboarding-state (or (storage/get :file-sync/onboarding-state)
|
||||
{:welcome false})
|
||||
|
||||
:file-sync/remote-graphs {:loading false :graphs nil}
|
||||
:file-sync/sync-manager nil
|
||||
|
||||
;; graph-uuid -> {}
|
||||
:file-sync/graph-state {}
|
||||
|
||||
:file-sync/sync-state nil
|
||||
:file-sync/sync-uploading-files nil
|
||||
:file-sync/sync-downloading-files nil
|
||||
|
@ -1761,15 +1763,20 @@ Similar to re-frame subscriptions"
|
|||
(defn get-auth-refresh-token []
|
||||
(:auth/refresh-token @state))
|
||||
|
||||
(defn set-file-sync-manager [v]
|
||||
(set-state! :file-sync/sync-manager v))
|
||||
(defn set-file-sync-manager [graph-uuid v]
|
||||
(when (and graph-uuid v)
|
||||
(set-state! [:file-sync/graph-state graph-uuid :file-sync/sync-manager] v)))
|
||||
|
||||
(defn get-file-sync-manager [graph-uuid]
|
||||
(get-in @state [:file-sync/graph-state graph-uuid :file-sync/sync-manager]))
|
||||
|
||||
(defn clear-file-sync-state! [graph-uuid]
|
||||
(set-state! [:file-sync/graph-state graph-uuid] nil))
|
||||
|
||||
(defn set-file-sync-state [graph v]
|
||||
(when v (s/assert :frontend.fs.sync/sync-state v))
|
||||
(set-state! [:file-sync/sync-state graph] v))
|
||||
|
||||
(defn get-file-sync-manager []
|
||||
(:file-sync/sync-manager @state))
|
||||
|
||||
(defn get-file-sync-state
|
||||
([]
|
||||
(get-file-sync-state (get-current-repo)))
|
||||
|
|
Loading…
Reference in New Issue