Browse Source

enhance(rtc,crypt): impl some remote api calls

rcmerci 1 year ago
parent
commit
6bcdf2bbf4
1 changed files with 29 additions and 0 deletions
  1. 29 0
      src/main/frontend/worker/device.cljs

+ 29 - 0
src/main/frontend/worker/device.cljs

@@ -3,6 +3,8 @@
   (:require ["/frontend/idbkv" :as idb-keyval]
             [datascript.core :as d]
             [frontend.worker.crypt :as crypt]
+            [frontend.worker.rtc.ws-util :as ws-util]
+            [logseq.db :as ldb]
             [promesa.core :as p]))
 
 ;;; TODO: move frontend.idb to deps/, then we can use it in both frontend and db-worker
@@ -50,3 +52,30 @@
       (reset! *device-id (uuid device-uuid-str))
       (reset! *device-public-key device-public-key)
       (reset! *device-private-key device-private-key))))
+
+(defn new-task--get-user-devices
+  [get-ws-create-task]
+  (ws-util/send&recv get-ws-create-task {:action "get-user-devices"}))
+
+(defn new-task--add-user-device
+  [get-ws-create-task device-name]
+  (ws-util/send&recv get-ws-create-task {:action "add-user-device"
+                                         :device-name device-name}))
+
+(defn new-task--remove-user-device
+  [get-ws-create-task device-uuid]
+  (ws-util/send&recv get-ws-create-task {:action "remove-user-device"
+                                         :device-uuid device-uuid}))
+
+(defn new-task--add-device-public-key
+  [get-ws-create-task device-uuid key-name public-key-jwk]
+  (ws-util/send&recv get-ws-create-task {:action "add-device-public-key"
+                                         :device-uuid device-uuid
+                                         :key-name key-name
+                                         :public-key (ldb/write-transit-str public-key-jwk)}))
+
+(defn new-task--remove-device-public-key
+  [get-ws-create-task device-uuid key-name]
+  (ws-util/send&recv get-ws-create-task {:action "remove-device-public-key"
+                                         :device-uuid device-uuid
+                                         :key-name key-name}))