diff --git a/src/status_im/subs.cljs b/src/status_im/subs.cljs index 3cf11b305b..376e695b6c 100644 --- a/src/status_im/subs.cljs +++ b/src/status_im/subs.cljs @@ -526,6 +526,14 @@ (fn [accounts] (filter #(not= (:type %) :watch) accounts))) +(re-frame/reg-sub + :add-account-disabled? + :<- [:multiaccount/accounts] + :<- [:add-account] + (fn [[accounts {:keys [address]}]] + (or (not (ethereum/address? address)) + (some #(when (= (:address %) address) %) accounts)))) + ;;CHAT ============================================================================================================== (re-frame/reg-sub diff --git a/src/status_im/ui/screens/wallet/add_new/views.cljs b/src/status_im/ui/screens/wallet/add_new/views.cljs index c09050fec3..52dead1781 100644 --- a/src/status_im/ui/screens/wallet/add_new/views.cljs +++ b/src/status_im/ui/screens/wallet/add_new/views.cljs @@ -62,7 +62,7 @@ :background-color colors/gray-lighter}) (defview add-watch-account [] - (letsubs [{:keys [address]} [:add-account]] + (letsubs [add-account-disabled? [:add-account-disabled?]] [react/keyboard-avoiding-view {:flex 1} [topbar/topbar] [react/view {:flex 1 @@ -84,7 +84,7 @@ :right {:type :next :label "Next" :on-press #(re-frame/dispatch [:wallet.accounts/add-watch-account]) - :disabled? (not (ethereum/address? address))}}]])) + :disabled? add-account-disabled?}}]])) (defview pin [] (letsubs [pin [:hardwallet/pin]