diff --git a/src/status_im/chat/models/message.cljs b/src/status_im/chat/models/message.cljs index 189a2991b2..1d3d8953d9 100644 --- a/src/status_im/chat/models/message.cljs +++ b/src/status_im/chat/models/message.cljs @@ -222,3 +222,16 @@ :c2 {:m3 {:chat-id :c2 :message-id :m3} :m4 {:chat-id :c2 :message-id :m4}}}}} [:m1 :m3])) + +(defn remove-cleared-message [messages cleared-at] + (into {} (remove #(let [message-clock (:clock-value (second %))] + (<= message-clock cleared-at)) + messages))) + +(fx/defn handle-cleared-histories-messages + {:events [::handle-cleared-hisotories-messages]} + [{:keys [db]} cleared-histories] + {:db (reduce (fn [acc current] + (update-in acc [:messages (:chatId current)] remove-cleared-message (:clearedAt current))) + db + cleared-histories)}) \ No newline at end of file diff --git a/src/status_im/transport/message/core.cljs b/src/status_im/transport/message/core.cljs index 221c9d35b6..08ebc473bb 100644 --- a/src/status_im/transport/message/core.cljs +++ b/src/status_im/transport/message/core.cljs @@ -45,6 +45,7 @@ ^js removed-messages (.-removedMessages response-js) ^js visibility-status-updates (.-statusUpdates response-js) ^js current-visibility-status (.-currentStatus response-js) + ^js cleared-histories (.-clearedHistories response-js) sync-handler (when-not process-async process-response)] (cond @@ -131,6 +132,13 @@ (process-next response-js sync-handler) (models.message/handle-removed-messages removed-messages-clj))) + (seq cleared-histories) + (let [cleared-histories-clj (types/js->clj cleared-histories)] + (js-delete response-js "clearedHistories") + (fx/merge cofx + (process-next response-js sync-handler) + (models.message/handle-cleared-histories-messages cleared-histories-clj))) + (seq visibility-status-updates) (let [visibility-status-updates-clj (types/js->clj visibility-status-updates)] (js-delete response-js "statusUpdates") diff --git a/status-go-version.json b/status-go-version.json index 37b20d07e5..f3e7d99fd7 100644 --- a/status-go-version.json +++ b/status-go-version.json @@ -3,7 +3,7 @@ "_comment": "Instead use: scripts/update-status-go.sh ", "owner": "status-im", "repo": "status-go", - "version": "v0.94.1", - "commit-sha1": "1c549f7d714b489473626b2e933c703c2d73299d", - "src-sha256": "1w3rl1n3bb7a4qpa3m27ksqpm2avhdfwchbynphbrnj3rshnfzc5" + "version": "v0.94.3", + "commit-sha1": "07b9c3c7de5e155ef257e729161c101ccc3ead27", + "src-sha256": "0njp130h3d5k5p694as4y4s012q0s5jwx3p5s98aqj4kh06fyy04" }