|
|
@@ -25,7 +25,8 @@
|
|
|
[frontend.version :as version]
|
|
|
[goog.object :as gobj]
|
|
|
[lambdaisland.glogi :as log]
|
|
|
- [promesa.core :as p]))
|
|
|
+ [promesa.core :as p]
|
|
|
+ [frontend.ui :as ui]))
|
|
|
|
|
|
(defn set-global-error-notification!
|
|
|
[]
|
|
|
@@ -89,7 +90,7 @@
|
|
|
(state/set-db-restoring! false))
|
|
|
(if false ; FIXME: incompatible changes
|
|
|
(notification/show!
|
|
|
- [:p "Database schema changed, please export your notes as a zip file, and re-index your repos."]
|
|
|
+ [:p "Database schema changed, please backup your notes first, and re-index/re-link your graphs."]
|
|
|
:warning
|
|
|
false)
|
|
|
(store-schema!))
|
|
|
@@ -164,31 +165,35 @@
|
|
|
(defn start!
|
|
|
[render]
|
|
|
(set-global-error-notification!)
|
|
|
- (let [{:keys [me logged? repos]} (get-me-and-repos)]
|
|
|
- (when me (state/set-state! :me me))
|
|
|
- (register-components-fns!)
|
|
|
- (state/set-db-restoring! true)
|
|
|
- (render)
|
|
|
- (on-load-events)
|
|
|
- (set-network-watcher!)
|
|
|
-
|
|
|
- (util/indexeddb-check?
|
|
|
- (fn [_error]
|
|
|
- (notification/show! "Sorry, it seems that your browser doesn't support IndexedDB, we recommend to use latest Chrome(Chromium) or Firefox(Non-private mode)." :error false)
|
|
|
- (state/set-indexedb-support! false)))
|
|
|
-
|
|
|
- (events/run!)
|
|
|
-
|
|
|
- (p/let [repos (get-repos)]
|
|
|
- (state/set-repos! repos)
|
|
|
- (restore-and-setup! me repos logged?))
|
|
|
-
|
|
|
- (reset! db/*sync-search-indice-f search/sync-search-indice!)
|
|
|
- (db/run-batch-txs!)
|
|
|
- (file-handler/run-writes-chan!)
|
|
|
- (shortcut/install-shortcuts!)
|
|
|
- (when (util/electron?)
|
|
|
- (el/listen!))))
|
|
|
+ (if (:block/name (storage/get :db-schema))
|
|
|
+ (let [{:keys [me logged? repos]} (get-me-and-repos)]
|
|
|
+ (when me (state/set-state! :me me))
|
|
|
+ (register-components-fns!)
|
|
|
+ (state/set-db-restoring! true)
|
|
|
+ (render)
|
|
|
+ (on-load-events)
|
|
|
+ (set-network-watcher!)
|
|
|
+
|
|
|
+ (util/indexeddb-check?
|
|
|
+ (fn [_error]
|
|
|
+ (notification/show! "Sorry, it seems that your browser doesn't support IndexedDB, we recommend to use latest Chrome(Chromium) or Firefox(Non-private mode)." :error false)
|
|
|
+ (state/set-indexedb-support! false)))
|
|
|
+
|
|
|
+ (events/run!)
|
|
|
+
|
|
|
+ (p/let [repos (get-repos)]
|
|
|
+ (state/set-repos! repos)
|
|
|
+ (restore-and-setup! me repos logged?))
|
|
|
+
|
|
|
+ (reset! db/*sync-search-indice-f search/sync-search-indice!)
|
|
|
+ (db/run-batch-txs!)
|
|
|
+ (file-handler/run-writes-chan!)
|
|
|
+ (shortcut/install-shortcuts!)
|
|
|
+ (when (util/electron?)
|
|
|
+ (el/listen!)))
|
|
|
+
|
|
|
+ ;; before refactoring
|
|
|
+ (clear-cache!)))
|
|
|
|
|
|
(defn stop! []
|
|
|
(prn "stop!"))
|