From 2e7934fba71477b298a5f95353e8418a4ff982f6 Mon Sep 17 00:00:00 2001 From: Omar Basem Date: Fri, 9 Dec 2022 12:40:17 +0400 Subject: [PATCH] refactor https://github.com/status-im/status-go/compare/684e9654...b4bdfd3d --- src/status_im/group_chats/core.cljs | 11 +++-- .../ui2/screens/chat/group_details/view.cljs | 43 +++++++++++++++++-- .../common/contact_list_item/view.cljs | 22 ++++++---- status-go-version.json | 16 +++++++ 4 files changed, 76 insertions(+), 16 deletions(-) diff --git a/src/status_im/group_chats/core.cljs b/src/status_im/group_chats/core.cljs index 39507efad9..0e086c11f0 100644 --- a/src/status_im/group_chats/core.cljs +++ b/src/status_im/group_chats/core.cljs @@ -53,7 +53,6 @@ :on-success #(re-frame/dispatch [:chat-updated % do-not-navigate?])}]}) >>>>>>> bc7bcd83f... refactor - (fx/defn remove-members "remove members from a group chat" {:events [:group-chats.ui/remove-members-pressed]} @@ -211,7 +210,6 @@ (fx/defn deselect-member {:events [:deselect-member]} [{:keys [db]} id] - (println "DESELECTING MEMBER " id) {:db (update db :deselected-members conj id)}) (fx/defn undo-deselect-member @@ -239,11 +237,16 @@ [{:keys [db]} id] {:db (update db :selected-participants conj id)}) -(fx/defn add-participants-toggle-list - {:events [:group/add-participants-toggle-list]} +(fx/defn reset-add-participants + {:events [:group/reset-add-participants]} [{db :db}] {:db (assoc db :selected-participants #{})}) +(fx/defn reset-remove-members + {:events [:group/reset-remove-members]} + [{db :db}] + {:db (assoc db :deselected-members #{})}) + (fx/defn show-group-chat-profile {:events [:show-group-chat-profile]} [{:keys [db] :as cofx} chat-id] diff --git a/src/status_im/ui2/screens/chat/group_details/view.cljs b/src/status_im/ui2/screens/chat/group_details/view.cljs index 73a8f3d4d1..1493800830 100644 --- a/src/status_im/ui2/screens/chat/group_details/view.cljs +++ b/src/status_im/ui2/screens/chat/group_details/view.cljs @@ -10,6 +10,10 @@ [status-im.ui2.screens.chat.group-details.style :as style] [status-im.ui2.screens.common.contact-list.view :as contact-list] [status-im2.common.contact-list-item.view :as contact-list-item] +<<<<<<< HEAD +======= + [quo.components.safe-area :as safe-area] +>>>>>>> ced1d37cd... refactor [status-im2.common.home.actions.view :as actions] <<<<<<< HEAD [utils.re-frame :as rf])) @@ -70,6 +74,7 @@ :weight :medium :style {:color (colors/theme-colors colors/neutral-50 colors/neutral-40)}} title]]) +<<<<<<< HEAD (def added (reagent/atom ())) <<<<<<< HEAD @@ -140,6 +145,35 @@ :disabled (and (zero? (count @added)) (zero? (count @removed)))} >>>>>>> 7ce2b16e0... group details screen 3 (i18n/label :t/save)]]]))]))) +======= +(defn add-members-sheet [group admin?] + [:f> + (fn [] + (let [{window-height :height} (rn/use-window-dimensions) + safe-area (safe-area/use-safe-area) + selected-participants (rf/sub [:selected-participants]) + deselected-members (rf/sub [:deselected-members])] + [rn/view {:style {:height (- window-height (:top safe-area))}} + [rn/touchable-opacity + {:on-press #(rf/dispatch [:bottom-sheet/hide]) + :style (style/close-icon)} + [quo2/icon :i/close {:color (colors/theme-colors colors/neutral-100 colors/white)}]] + [quo2/text {:size :heading-1 + :weight :semi-bold + :style {:margin-left 20}} + (i18n/label (if admin? :t/manage-members :t/add-members))] + [contact-list/contact-list {:icon :check + :group group + :search? true}] + [rn/view {:style style/bottom-container} + [quo2/button {:style {:flex 1} + :on-press (fn [] + (rf/dispatch [:group-chats.ui/add-members-pressed]) + (rf/dispatch [:group-chats.ui/remove-members-pressed]) + (rf/dispatch [:bottom-sheet/hide])) + :disabled (and (zero? (count selected-participants)) (zero? (count deselected-members)))} + (i18n/label :t/save)]]]))]) +>>>>>>> ced1d37cd... refactor (defn group-details [] @@ -205,9 +239,12 @@ [quo2/icon (if muted :i/muted :i/activity-center) {:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}] [quo2/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium} (i18n/label (if muted :unmute-group :mute-group))]] [rn/touchable-opacity {:style (style/action-container color) - :on-press #(rf/dispatch - [:bottom-sheet/show-sheet - {:content (fn [] [add-members-sheet group admin?])} :add-participants-toggle-list])} + :on-press (fn [] + (rf/dispatch [:group/reset-add-participants]) + (rf/dispatch [:group/reset-remove-members]) + (rf/dispatch + [:bottom-sheet/show-sheet + {:content (fn [] [add-members-sheet group admin?])}]))} [rn/view {:style {:flex-direction :row :justify-content :space-between}} >>>>>>> 7ce2b16e0... group details screen 3 diff --git a/src/status_im2/common/contact_list_item/view.cljs b/src/status_im2/common/contact_list_item/view.cljs index 85a4cdb7f5..973600d519 100644 --- a/src/status_im2/common/contact_list_item/view.cljs +++ b/src/status_im2/common/contact_list_item/view.cljs @@ -18,6 +18,7 @@ (rf/dispatch [:chat.ui/navigate-to-chat chat-id])) (rf/dispatch [:search/home-filter-changed nil])))) +<<<<<<< HEAD <<<<<<< HEAD (defn action-icon [{:keys [public-key] :as item} {:keys [icon group added] :as extra-data}] @@ -38,11 +39,13 @@ (reset! added (remove #(= % public-key) @added))))}])])) ======= (defn action-icon [{:keys [public-key] :as item} {:keys [icon group added removed] :as extra-data}] +======= +(defn action-icon [{:keys [public-key] :as item} {:keys [icon group] :as extra-data}] +>>>>>>> ced1d37cd... refactor (let [{:keys [contacts admins]} group member? (contains? contacts public-key) current-pk (rf/sub [:multiaccount/public-key]) - admin? (get admins current-pk) - contact-selected? (rf/sub [:is-participant-selected? public-key])] + admin? (get admins current-pk)] [rn/touchable-opacity {:on-press #(rf/dispatch [:bottom-sheet/show-sheet {:content (fn [] [actions/actions item extra-data])}]) :style {:position :absolute @@ -53,14 +56,8 @@ :disabled? (and member? (not admin?)) :on-change (fn [selected] (if-not member? - (if contact-selected? - (do - (reset! added (remove #(= % public-key) @added)) - (rf/dispatch [:deselect-participant public-key true])) - (do - (swap! added conj public-key) - (rf/dispatch [:select-participant public-key true]))) (if selected +<<<<<<< HEAD <<<<<<< HEAD (reset! removed (remove #(= % public-key) @removed)) (swap! removed conj public-key))))}])])) @@ -73,6 +70,13 @@ (rf/dispatch [:deselect-member public-key true]) (swap! removed conj public-key)))))}])])) >>>>>>> 4b386e4d0... refactor +======= + (rf/dispatch [:select-participant public-key true]) + (rf/dispatch [:deselect-participant public-key true])) + (if selected + (rf/dispatch [:undo-deselect-member public-key true]) + (rf/dispatch [:deselect-member public-key true]))))}])])) +>>>>>>> ced1d37cd... refactor (defn contact-list-item [item _ _ extra-data] diff --git a/status-go-version.json b/status-go-version.json index f8d2129595..3e97488540 100644 --- a/status-go-version.json +++ b/status-go-version.json @@ -3,16 +3,21 @@ "_comment": "Instead use: scripts/update-status-go.sh ", "owner": "status-im", "repo": "status-go", +<<<<<<< HEAD <<<<<<< HEAD "version": "v0.117.1a", "commit-sha1": "b4bdfd3df6cf5fb91ab2d0e9f3b38e8d1b9703e5", "src-sha256": "1s50q53p1j5ysnbj88c52zb2rh1ms21pnf6bjc7wja8gzcpih2wl" ======= +======= +>>>>>>> d60d66248... refactor <<<<<<< HEAD "version": "v0.117.1", "commit-sha1": "8593866862175eeab6f30765e5f0b813f3b1b4db", "src-sha256": "1ml22627jadj150y9yj7p9z91vx49min6hzvsg88i3nhx4153nia" ======= +======= +>>>>>>> d6a933aa2... refactor <<<<<<< HEAD "version": "v0.115.6", "commit-sha1": "a97b5527305b9f23b15246c5489726f8cd758edd", @@ -22,6 +27,17 @@ "commit-sha1": "3745ec03efdf16c231e3df74da0c51af2480107e", "src-sha256": "1hikww0y1p70pr5ga3jnz72zc27k0zqjp9vk79ww9fw0165yi1h0" >>>>>>> 0658974a7... refactor +<<<<<<< HEAD >>>>>>> 2a158b89a... refactor +<<<<<<< HEAD >>>>>>> 6cbb8fb7e... refactor +======= +======= +======= + "version": "v0.115.5", + "commit-sha1": "684e9654de4800df619ce593b5d331ebea9ed1a8", + "src-sha256": "0ci1s3w5jnf6sz2b6hn30gy14hp142gic006r6c3g5ln8y19wdbi" +>>>>>>> 78518d239... refactor +>>>>>>> d6a933aa2... refactor +>>>>>>> d60d66248... refactor }