Feat: sync progress for electron (#6662)

* fix: state shouldn't be returned in ipc

* feat: download && upload processing

* enhance(ui):  interaction of show password checkbox

* feat: time left

* feat: download progress

* Set download batch size to 100

* improve(ui): progress pane of file sync indicator

* improve(ui): progress pie of each file state

* improve(ui): progress pie of each file state

* improve(ui): progress pie of each downloading file

* fix: add last changed time

* enhance: time left

* fix: total needs to be larger than finished

* fix: wait for update-graphs-txid!

* enhance: show in-progress files first

* chore: ui polish

* improve(ui): persist stauts of sync files list toggle switch

* fix(ui): visibility of sync now button on mobile

* chore: remove ios static out after sync

* fix: debounce clicking on sync icon

* fix: repos not refreshed after unlink or delete

* enhance: automatically save page-metadata.edn to avoid sync when restart

* improve(ui): sync now shortcut for file sync progress pane

* enhance: data transfer icons

* fix: stop sync if switched to another graph

* fix: can't switch

* enhance: sort files first before uploading or downloading

* fix: clear current graph uuid when sync stops

* fix: separate progress by graphs

* fix: check files only in the current progress

* fix: prevent multiple sync managers for the same graph

* fix: remove redundant files watchers

* enhance(sync): re-exec remote->local-full-sync when exception

re-exec remote->local-full-sync when <update-local-files return exceptions

* enhance(sync): re-exec remote->local-full-sync when exception

re-exec remote->local-full-sync when <update-local-files return exceptions

* fix(sync): set-progress-callback, update rsapi

* fix(sync): uploading progress bar

Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
Co-authored-by: charlie <xyhp915@qq.com>
Co-authored-by: rcmerci <rcmerci@gmail.com>
This commit is contained in:
Andelf
2022-09-23 02:00:24 +08:00
committed by GitHub
parent 4c3503ff1e
commit ae114afbd8
21 changed files with 962 additions and 438 deletions

View File

@@ -244,6 +244,11 @@
:ui/loading? {}
:file-sync/set-remote-graph-password-result {}
;; graph-uuid -> {file-path -> payload}
:file-sync/progress {}
:file-sync/start {}
;; graph -> epoch
:file-sync/last-synced-at {}
:feature/enable-sync? (storage/get :logseq-sync-enabled)
:file/rename-event-chan (async/chan 100)
@@ -716,9 +721,8 @@ Similar to re-frame subscriptions"
[repo]
(swap! state update-in [:me :repos]
(fn [repos]
(->> (remove #(= (:url repo)
(:url %))
repos)
(->> (remove #(or (= (:url repo) (:url %))
(= (:GraphUUID repo) (:GraphUUID %))) repos)
(util/distinct-by :url)))))
(defn set-timestamp-block!