fix: use image clock when updating profile images to cause re-render (#21795)

This commit is contained in:
Sean Hagstrom 2024-12-16 02:18:10 -08:00 committed by GitHub
parent 9673eb40df
commit c1daea3e99
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 15 additions and 5 deletions

View File

@ -5,9 +5,11 @@
[utils.re-frame :as rf]))
(rf/reg-event-fx :profile/update-local-picture
(fn [{:keys [db]} [images]]
(fn [{:keys [db now]} [images]]
{:db (if images
(assoc-in db [:profile/profile :images] images)
(assoc-in db
[:profile/profile :images]
(map #(assoc % :clock now) images))
(update db :profile/profile dissoc :images))}))
(rf/reg-event-fx :profile/edit-profile-picture-success

View File

@ -129,8 +129,10 @@
[:dispatch [:hide-bottom-sheet]]]})))
(rf/reg-event-fx :profile.settings/update-local-picture
(fn [{:keys [db]} [images]]
{:db (assoc-in db [:profile/profile :images] images)}))
(fn [{:keys [db now]} [images]]
{:db (assoc-in db
[:profile/profile :images]
(map #(assoc % :clock now) images))}))
(rf/reg-event-fx :profile.settings/mnemonic-was-shown
(fn [_]

View File

@ -65,6 +65,7 @@
(fn [[profiles port font-file theme] [_ target-key-uid]]
(let [{:keys [images ens-name? customization-color] :as profile} (get profiles target-key-uid)
image-name (-> images first :type)
image-clock (-> images first :clock)
override-ring? (when ens-name? false)]
(when (and profile port)
{:config
@ -75,6 +76,7 @@
:image-name image-name
:key-uid target-key-uid
:theme theme
:clock image-clock
:override-ring? override-ring?}}
{:type :initials
:options {:port port
@ -281,7 +283,10 @@
customization-color]} profile
ens-name? (or ens-name? (seq ens-names))
avatar-opts (assoc avatar-opts :override-ring? (when ens-name? false))
images-with-uri (mapv (fn [{key-uid :keyUid image-name :type :as image}]
images-with-uri (mapv (fn [{key-uid :keyUid
image-name :type
image-clock :clock
:as image}]
(assoc image
:config
{:type :account
@ -289,6 +294,7 @@
{:port port
:ratio pixel-ratio/ratio
:image-name image-name
:clock image-clock
:key-uid key-uid
:theme theme}
avatar-opts)}))