Clean up database interop

This commit is contained in:
arne 2025-11-20 11:25:19 +01:00
commit 2b78afde38
2 changed files with 17 additions and 20 deletions

View file

@ -156,10 +156,8 @@
(declare refresh-displayed-posts!)
(defn- fetch-application-settings []
(-> (db/open-cursor! ::db/application db/all)
(db/transduce-cursor (comp (take 1)
(map #(js->clj % :keywordize-keys true)))
(fn [_ x] x))))
(->> (db/open-cursor! ::db/application db/all)
(db/first-result (map #(js->clj % :keywordize-keys true)))))
(defn setup-application!
"Handles Mastodon application setup on the client side"
@ -377,8 +375,8 @@
refresh-id (js/Date.now)]
(swap! state update-in [:section/posts :loading] conj refresh-id)
(. (promise-all [(db/count! ::db/posts)
(-> (db/open-cursor! ::db/posts ::db/post-created-at db/all "prev")
(db/transduce-cursor xform))])
(->> (db/open-cursor! ::db/posts ::db/post-created-at db/all "prev")
(db/transduce-cursor xform))])
(then (fn [[total displayed-posts]]
(swap! state update :section/posts #(-> (assoc % :total total)
(assoc :displayed-posts displayed-posts)
@ -407,12 +405,10 @@
(paginate-posts! (merge defaults opts))))
(defn- internal-post-id [max-or-min]
(-> (db/open-cursor! ::db/posts ::db/post-created-at db/all (if (= max-or-min :min)
"next"
"prev"))
(db/transduce-cursor (comp (keep (j/get :internal_id))
(take 1))
(fn [_ x] x))))
(->> (db/open-cursor! ::db/posts ::db/post-created-at db/all (if (= max-or-min :min)
"next"
"prev"))
(db/first-result (keep (j/get :internal_id)))))
(defn fetch-more-posts! [e]
(.preventDefault e)