This commit is contained in:
Alexander Pantiukhov 2025-01-27 09:56:31 +01:00
parent 4ccef58950
commit d5c41bfd21
No known key found for this signature in database

View File

@ -38,8 +38,8 @@
(update-in [:wallet :ui :activity-tab :request] dissoc :request-id) (update-in [:wallet :ui :activity-tab :request] dissoc :request-id)
(update-in [:wallet :ui :activity-tab :request] (update-in [:wallet :ui :activity-tab :request]
assoc assoc
:address address :address address
:loading? true :loading? true
:remove-all-previous-activites? true)) :remove-all-previous-activites? true))
:fx [[:json-rpc/call :fx [[:json-rpc/call
[{:method "wallet_startActivityFilterSessionV2" [{:method "wallet_startActivityFilterSessionV2"
@ -91,15 +91,17 @@
(rf/reg-event-fx (rf/reg-event-fx
:wallet/activity-filtering-for-current-account-done :wallet/activity-filtering-for-current-account-done
(fn [{:keys [db]} [{:keys [message]}]] (fn [{:keys [db]} [{:keys [message]}]]
(let [{:keys [address remove-all-existing-activities?]} (get-in db [:wallet :ui :activity-tab :request]) (let [{:keys [address
{:keys [activities offset hasMore]} (transforms/json->clj message) remove-all-existing-activities?]} (get-in db [:wallet :ui :activity-tab :request])
new-activities (->> activities {:keys [activities offset hasMore]} (transforms/json->clj message)
(cske/transform-keys transforms/->kebab-case-keyword) new-activities (->> activities
(collection/index-by :key)) (cske/transform-keys
existing-activities (get-in db [:wallet :activities address]) transforms/->kebab-case-keyword)
updated-activities (if remove-all-existing-activities? (collection/index-by :key))
new-activities existing-activities (get-in db [:wallet :activities address])
(nested-merge existing-activities new-activities))] updated-activities (if remove-all-existing-activities?
new-activities
(nested-merge existing-activities new-activities))]
{:db (-> db {:db (-> db
(assoc-in [:wallet :activities address] updated-activities) (assoc-in [:wallet :activities address] updated-activities)
(assoc-in [:wallet :ui :activity-tab :request :offset] offset) (assoc-in [:wallet :ui :activity-tab :request :offset] offset)