소스 검색

feat(rtc): add rtc-add-migration-client-ops for debug&fix

rcmerci 7 달 전
부모
커밋
631fdcafee
2개의 변경된 파일19개의 추가작업 그리고 0개의 파일을 삭제
  1. 14 0
      src/main/frontend/db/rtc/debug_ui.cljs
  2. 5 0
      src/main/frontend/worker/rtc/core.cljs

+ 14 - 0
src/main/frontend/db/rtc/debug_ui.cljs

@@ -260,6 +260,20 @@
          (for [{:keys [graph-uuid graph-schema-version graph-status]} (:remote-graphs debug-state*)]
            (shui/select-item {:value [graph-uuid graph-schema-version] :disabled (some? graph-status)} graph-uuid)))))]
 
+     [:div.pb-2.flex.flex-row.items-center.gap-2
+      (ui/button "Run server-migrations"
+                 {:on-click (fn []
+                              (let [repo (state/get-current-repo)]
+                                (when-let [server-schema-version (:server-schema-version debug-state*)]
+                                  (state/<invoke-db-worker :thread-api/rtc-add-migration-client-ops
+                                                           repo server-schema-version))))})
+      [:input.form-input.my-2.py-1.w-32
+       {:on-change (fn [e] (swap! debug-state assoc :server-schema-version (util/evalue e)))
+        :on-focus (fn [e] (let [v (.-value (.-target e))]
+                            (when (= v "server migration start version here(e.g. \"64.2\")")
+                              (set! (.-value (.-target e)) ""))))
+        :placeholder "server migration start version here(e.g. \"64.2\")"}]]
+
      [:hr.my-2]
 
      (let [*keys-state (get state ::keys-state)

+ 5 - 0
src/main/frontend/worker/rtc/core.cljs

@@ -597,6 +597,11 @@
   [token graph-uuid schema-version]
   (new-task--download-info-list token graph-uuid schema-version))
 
+(def-thread-api :thread-api/rtc-add-migration-client-ops
+  [repo server-schema-version]
+  (when-let [db @(worker-state/get-datascript-conn repo)]
+    (add-migration-client-ops! repo db server-schema-version)))
+
 ;;; ================ API (ends) ================
 
 ;;; subscribe state ;;;