Merge pull request #2694 from penpot/niwinz-enhancements-6

🐛 Bugfixes
This commit is contained in:
Alejandro 2022-12-28 09:57:07 +01:00 committed by GitHub
commit 1f00d91dd7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 338 additions and 292 deletions

View file

@ -150,14 +150,15 @@
(defn- bundle-fetched
[features [{:keys [id data] :as file} thumbnails project users comments-users]]
(letfn [(resolve-pointer [[key pointer]]
(->> (rp/cmd! :get-file-fragment {:file-id id :fragment-id @pointer})
(letfn [(resolve-pointer [file-id [key pointer]]
(->> (rp/cmd! :get-file-fragment {:file-id file-id :fragment-id @pointer})
(rx/map :content)
(rx/map #(vector key %))))
(resolve-pointers [in-to coll]
(resolve-pointers [file-id coll]
(->> (rx/from (seq coll))
(rx/merge-map resolve-pointer)
(rx/reduce conj in-to)))]
(rx/merge-map (partial resolve-pointer file-id))
(rx/reduce conj {})))]
(ptk/reify ::bundle-fetched
ptk/UpdateEvent
@ -186,7 +187,7 @@
(rx/merge-map
(fn [[_ page :as kp]]
(if (t/pointer? page)
(resolve-pointer kp)
(resolve-pointer id kp)
(rx/of kp))))
(rx/merge-map
(fn [[id page]]
@ -212,15 +213,17 @@
(->> data
(filter (comp t/pointer? val))
(resolve-pointers {})
(resolve-pointers id)
(rx/map workspace-data-pointers-loaded))
(->> (rp/cmd! :get-file-libraries {:file-id id :features features})
(rx/mapcat identity)
(rx/mapcat
(fn [file]
(->> (filter (comp t/pointer? val) file)
(resolve-pointers file))))
(fn [{:keys [id data] :as file}]
(->> (filter (comp t/pointer? val) data)
(resolve-pointers id)
(rx/map #(update file :data merge %)))))
(rx/reduce conj [])
(rx/map libraries-fetched)))))))
(rx/take-until stoper)))))))

View file

@ -148,12 +148,7 @@
(->> (rp/cmd! :update-file params)
(rx/mapcat (fn [lagged]
(log/debug :hint "changes persisted" :lagged (count lagged))
(let [lagged-updates
(cond->> lagged
(= #{sid} (into #{} (map :session-id) lagged))
(map #(assoc % :changes [])))
frame-updates
(let [frame-updates
(-> (group-by :page-id changes)
(update-vals #(into #{} (mapcat :frames) %)))]
@ -162,9 +157,13 @@
(rx/mapcat (fn [[page-id frames]]
(->> frames (map #(vector page-id %)))))
(rx/map (fn [[page-id frame-id]] (dwt/update-thumbnail (:id file) page-id frame-id))))
(->> (rx/of lagged-updates)
(rx/mapcat seq)
(rx/map #(shapes-changes-persisted file-id %)))))))
(->> (rx/from lagged)
(rx/merge-map (fn [{:keys [changes] :as entry}]
(rx/merge
(rx/from
(for [[page-id changes] (group-by :page-id changes)]
(dch/update-indices page-id changes)))
(rx/of (shapes-changes-persisted file-id entry))))))))))
(rx/catch (fn [cause]
(rx/concat
(if (= :authentication (:type cause))

View file

@ -22,6 +22,7 @@
(derive :get-team-members ::query)
(derive :get-team-stats ::query)
(derive :get-team-invitations ::query)
(derive :get-team-shared-files ::query)
(defn handle-response
[{:keys [status body] :as response}]