chore(wallet): move add-account funcitonality into its own folder (#19476)

This commit is contained in:
Jamie Caprani 2024-04-11 12:01:35 +02:00 committed by GitHub
parent 63a168b6f4
commit 1d1eae13a9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
33 changed files with 91 additions and 64 deletions

View File

@ -1,6 +1,6 @@
(ns status-im.contexts.wallet.add-address-to-watch.component-spec (ns status-im.contexts.wallet.add-account.add-address-to-watch.component-spec
(:require (:require
[status-im.contexts.wallet.add-address-to-watch.view :as add-address-to-watch] [status-im.contexts.wallet.add-account.add-address-to-watch.view :as add-address-to-watch]
status-im.contexts.wallet.events status-im.contexts.wallet.events
[test-helpers.component :as h])) [test-helpers.component :as h]))

View File

@ -1,6 +1,6 @@
(ns status-im.contexts.wallet.add-address-to-watch.confirm-address.component-spec (ns status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.component-spec
(:require (:require
[status-im.contexts.wallet.add-address-to-watch.confirm-address.view :as confirm-address] [status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.view :as confirm-address]
[test-helpers.component :as h])) [test-helpers.component :as h]))
(h/describe "Add Watch Only Account Page" (h/describe "Add Watch Only Account Page"

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.add-address-to-watch.confirm-address.style) (ns status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.style)
(def container (def container
{:flex 1}) {:flex 1})

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.add-address-to-watch.confirm-address.view (ns status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[quo.core :as quo] [quo.core :as quo]
@ -6,7 +6,7 @@
[react-native.core :as rn] [react-native.core :as rn]
[reagent.core :as reagent] [reagent.core :as reagent]
[status-im.common.emoji-picker.utils :as emoji-picker.utils] [status-im.common.emoji-picker.utils :as emoji-picker.utils]
[status-im.contexts.wallet.add-address-to-watch.confirm-address.style :as style] [status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.style :as style]
[status-im.contexts.wallet.common.screen-base.create-or-edit-account.view :as [status-im.contexts.wallet.common.screen-base.create-or-edit-account.view :as
create-or-edit-account] create-or-edit-account]
[utils.i18n :as i18n] [utils.i18n :as i18n]

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.accounts.add-account.address-to-watch.events (ns status-im.contexts.wallet.add-account.add-address-to-watch.events
(:require [clojure.string :as string] (:require [clojure.string :as string]
[status-im.contexts.wallet.common.utils :as utils] [status-im.contexts.wallet.common.utils :as utils]
[taoensso.timbre :as log] [taoensso.timbre :as log]

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.add-address-to-watch.style) (ns status-im.contexts.wallet.add-account.add-address-to-watch.style)
(def header-container {:padding-bottom 8}) (def header-container {:padding-bottom 8})

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.add-address-to-watch.view (ns status-im.contexts.wallet.add-account.add-address-to-watch.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[quo.core :as quo] [quo.core :as quo]
@ -7,7 +7,7 @@
[reagent.core :as reagent] [reagent.core :as reagent]
[status-im.common.floating-button-page.view :as floating-button-page] [status-im.common.floating-button-page.view :as floating-button-page]
[status-im.constants :as constants] [status-im.constants :as constants]
[status-im.contexts.wallet.add-address-to-watch.style :as style] [status-im.contexts.wallet.add-account.add-address-to-watch.style :as style]
[status-im.contexts.wallet.common.validation :as validation] [status-im.contexts.wallet.common.validation :as validation]
[status-im.subs.wallet.add-account.address-to-watch] [status-im.subs.wallet.add-account.address-to-watch]
[utils.debounce :as debounce] [utils.debounce :as debounce]

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.edit-derivation-path.path-format-sheet.view (ns status-im.contexts.wallet.add-account.create-account.edit-derivation-path.path-format-sheet.view
(:require (:require
[quo.core :as quo] [quo.core :as quo]
[status-im.constants :as constants] [status-im.constants :as constants]

View File

@ -1,6 +1,7 @@
(ns status-im.contexts.wallet.create-account.edit-derivation-path.style (ns status-im.contexts.wallet.add-account.create-account.edit-derivation-path.style
(:require [quo.foundations.colors :as colors])) (:require [quo.foundations.colors :as colors]))
(defn screen (defn screen
[top] [top]
{:flex 1 {:flex 1

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.edit-derivation-path.view (ns status-im.contexts.wallet.add-account.create-account.edit-derivation-path.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[quo.core :as quo] [quo.core :as quo]
@ -7,10 +7,10 @@
[react-native.core :as rn] [react-native.core :as rn]
[react-native.safe-area :as safe-area] [react-native.safe-area :as safe-area]
[reagent.core :as reagent] [reagent.core :as reagent]
[status-im.contexts.wallet.common.utils :as utils] [status-im.contexts.wallet.add-account.create-account.edit-derivation-path.path-format-sheet.view :as
[status-im.contexts.wallet.create-account.edit-derivation-path.path-format-sheet.view :as
path-format-sheet] path-format-sheet]
[status-im.contexts.wallet.create-account.edit-derivation-path.style :as style] [status-im.contexts.wallet.add-account.create-account.edit-derivation-path.style :as style]
[status-im.contexts.wallet.common.utils :as utils]
[utils.i18n :as i18n] [utils.i18n :as i18n]
[utils.re-frame :as rf] [utils.re-frame :as rf]
[utils.security.core :as security])) [utils.security.core :as security]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.events (ns status-im.contexts.wallet.add-account.create-account.events
(:require [camel-snake-kebab.extras :as cske] (:require [camel-snake-kebab.extras :as cske]
[status-im.contexts.wallet.data-store :as data-store] [status-im.contexts.wallet.data-store :as data-store]
[utils.re-frame :as rf] [utils.re-frame :as rf]

View File

@ -1,8 +1,8 @@
(ns status-im.contexts.wallet.create-account.events-test (ns status-im.contexts.wallet.add-account.create-account.events-test
(:require (:require
[cljs.test :refer-macros [deftest is]] [cljs.test :refer-macros [deftest is]]
matcher-combinators.test matcher-combinators.test
[status-im.contexts.wallet.create-account.events :as events])) [status-im.contexts.wallet.add-account.create-account.events :as events]))
(deftest confirm-account-origin (deftest confirm-account-origin
(let [db {:wallet {:ui {:create-account {}}}} (let [db {:wallet {:ui {:create-account {}}}}

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.new-keypair.backup-recovery-phrase.style (ns status-im.contexts.wallet.add-account.create-account.new-keypair.backup-recovery-phrase.style
(:require (:require
[quo.foundations.colors :as colors] [quo.foundations.colors :as colors]
[quo.theme :as quo.theme] [quo.theme :as quo.theme]

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.new-keypair.backup-recovery-phrase.view (ns status-im.contexts.wallet.add-account.create-account.new-keypair.backup-recovery-phrase.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[native-module.core :as native-module] [native-module.core :as native-module]
@ -7,7 +7,8 @@
[react-native.blur :as blur] [react-native.blur :as blur]
[react-native.core :as rn] [react-native.core :as rn]
[reagent.core :as reagent] [reagent.core :as reagent]
[status-im.contexts.wallet.create-account.new-keypair.backup-recovery-phrase.style :as style] [status-im.contexts.wallet.add-account.create-account.new-keypair.backup-recovery-phrase.style :as
style]
[utils.i18n :as i18n] [utils.i18n :as i18n]
[utils.re-frame :as rf])) [utils.re-frame :as rf]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.new-keypair.check-your-backup.style) (ns status-im.contexts.wallet.add-account.create-account.new-keypair.check-your-backup.style)
(def header-container (def header-container
{:margin-horizontal 20 {:margin-horizontal 20

View File

@ -1,10 +1,10 @@
(ns status-im.contexts.wallet.create-account.new-keypair.check-your-backup.view (ns status-im.contexts.wallet.add-account.create-account.new-keypair.check-your-backup.view
(:require (:require
[quo.core :as quo] [quo.core :as quo]
[quo.theme :as quo.theme] [quo.theme :as quo.theme]
[react-native.core :as rn] [react-native.core :as rn]
[reagent.core :as reagent] [reagent.core :as reagent]
[status-im.contexts.wallet.create-account.new-keypair.check-your-backup.style :as style] [status-im.contexts.wallet.add-account.create-account.new-keypair.check-your-backup.style :as style]
[utils.i18n :as i18n] [utils.i18n :as i18n]
[utils.re-frame :as rf])) [utils.re-frame :as rf]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.new-keypair.keypair-name.style) (ns status-im.contexts.wallet.add-account.create-account.new-keypair.keypair-name.style)
(def header-container (def header-container
{:margin-horizontal 20 {:margin-horizontal 20

View File

@ -1,10 +1,10 @@
(ns status-im.contexts.wallet.create-account.new-keypair.keypair-name.view (ns status-im.contexts.wallet.add-account.create-account.new-keypair.keypair-name.view
(:require (:require
[quo.core :as quo] [quo.core :as quo]
[react-native.core :as rn] [react-native.core :as rn]
[status-im.common.floating-button-page.view :as floating-button-page] [status-im.common.floating-button-page.view :as floating-button-page]
[status-im.common.validation.general :as validators] [status-im.common.validation.general :as validators]
[status-im.contexts.wallet.create-account.new-keypair.keypair-name.style :as style] [status-im.contexts.wallet.add-account.create-account.new-keypair.keypair-name.style :as style]
[utils.i18n :as i18n] [utils.i18n :as i18n]
[utils.re-frame :as rf])) [utils.re-frame :as rf]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.select-keypair.style) (ns status-im.contexts.wallet.add-account.create-account.select-keypair.style)
(def header-container (def header-container
{:margin-bottom 8}) {:margin-bottom 8})

View File

@ -1,10 +1,10 @@
(ns status-im.contexts.wallet.create-account.select-keypair.view (ns status-im.contexts.wallet.add-account.create-account.select-keypair.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[quo.core :as quo] [quo.core :as quo]
[react-native.core :as rn] [react-native.core :as rn]
[status-im.constants :as constants] [status-im.constants :as constants]
[status-im.contexts.wallet.create-account.select-keypair.style :as style] [status-im.contexts.wallet.add-account.create-account.select-keypair.style :as style]
[utils.address :as utils] [utils.address :as utils]
[utils.i18n :as i18n] [utils.i18n :as i18n]
[utils.re-frame :as rf])) [utils.re-frame :as rf]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.style (ns status-im.contexts.wallet.add-account.create-account.style
(:require (:require
[quo.foundations.colors :as colors])) [quo.foundations.colors :as colors]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.utils) (ns status-im.contexts.wallet.add-account.create-account.utils)
(defn prepare-new-keypair (defn prepare-new-keypair
[{:keys [new-keypair address account-name account-color emoji derivation-path]}] [{:keys [new-keypair address account-name account-color emoji derivation-path]}]

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.create-account.view (ns status-im.contexts.wallet.add-account.create-account.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[quo.core :as quo] [quo.core :as quo]
@ -11,9 +11,9 @@
[status-im.common.floating-button-page.view :as floating-button-page] [status-im.common.floating-button-page.view :as floating-button-page]
[status-im.common.standard-authentication.core :as standard-auth] [status-im.common.standard-authentication.core :as standard-auth]
[status-im.constants :as constants] [status-im.constants :as constants]
[status-im.contexts.wallet.add-account.create-account.style :as style]
[status-im.contexts.wallet.add-account.create-account.utils :as create-account.utils]
[status-im.contexts.wallet.common.utils :as utils] [status-im.contexts.wallet.common.utils :as utils]
[status-im.contexts.wallet.create-account.style :as style]
[status-im.contexts.wallet.create-account.utils :as create-account.utils]
[status-im.contexts.wallet.sheets.account-origin.view :as account-origin] [status-im.contexts.wallet.sheets.account-origin.view :as account-origin]
[status-im.feature-flags :as ff] [status-im.feature-flags :as ff]
[utils.i18n :as i18n] [utils.i18n :as i18n]

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.events.collectibles (ns status-im.contexts.wallet.collectible.events
(:require [camel-snake-kebab.extras :as cske] (:require [camel-snake-kebab.extras :as cske]
[taoensso.timbre :as log] [taoensso.timbre :as log]
[utils.ethereum.chain :as chain] [utils.ethereum.chain :as chain]

View File

@ -0,0 +1,22 @@
(ns status-im.contexts.wallet.common.wizard.events
(:require [status-im.contexts.wallet.send.flow-config :as wallet-flow]
[utils.re-frame :as rf]))
(defn- wizard-find-next-screen
[db flow-id current-screen]
(let [flow-config (case flow-id
:wallet-flow wallet-flow/steps
nil)]
(first (filter (fn [{:keys [skip-step? screen-id]}]
(and (not= screen-id current-screen)
(not (and (fn? skip-step?) (skip-step? db)))))
flow-config))))
(rf/reg-event-fx
:wallet/wizard-navigate-forward
(fn [{:keys [db]} [{:keys [current-screen flow-id start-flow?]}]]
(let [next-screen (wizard-find-next-screen db flow-id current-screen)]
{:fx [[:dispatch
(if start-flow?
[:open-modal (:screen-id next-screen)]
[:navigate-to-within-stack [(:screen-id next-screen) current-screen]])]]})))

View File

@ -4,11 +4,9 @@
[react-native.background-timer :as background-timer] [react-native.background-timer :as background-timer]
[react-native.platform :as platform] [react-native.platform :as platform]
[status-im.constants :as constants] [status-im.constants :as constants]
[status-im.contexts.wallet.accounts.add-account.address-to-watch.events]
[status-im.contexts.wallet.common.utils :as utils] [status-im.contexts.wallet.common.utils :as utils]
[status-im.contexts.wallet.data-store :as data-store] [status-im.contexts.wallet.data-store :as data-store]
[status-im.contexts.wallet.db :as db] [status-im.contexts.wallet.db :as db]
[status-im.contexts.wallet.events.collectibles]
[status-im.contexts.wallet.item-types :as item-types] [status-im.contexts.wallet.item-types :as item-types]
[taoensso.timbre :as log] [taoensso.timbre :as log]
[utils.collection] [utils.collection]

View File

@ -3,9 +3,9 @@
[cljs.test :refer-macros [deftest is testing]] [cljs.test :refer-macros [deftest is testing]]
matcher-combinators.test matcher-combinators.test
[status-im.constants :as constants] [status-im.constants :as constants]
[status-im.contexts.wallet.collectible.events :as collectible-events]
[status-im.contexts.wallet.db :as db] [status-im.contexts.wallet.db :as db]
[status-im.contexts.wallet.events :as events] [status-im.contexts.wallet.events :as events]))
[status-im.contexts.wallet.events.collectibles :as collectibles]))
(def address "0x2f88d65f3cb52605a54a833ae118fb1363acccd2") (def address "0x2f88d65f3cb52605a54a833ae118fb1363acccd2")
@ -47,7 +47,7 @@
:accounts {"0x1" {:collectibles (list collectible-1 collectible-2)} :accounts {"0x1" {:collectibles (list collectible-1 collectible-2)}
"0x2" {:collectibles (list collectible-3)} "0x2" {:collectibles (list collectible-3)}
"0x3" {}}}} "0x3" {}}}}
result-db (:db (collectibles/flush-collectibles {:db db}))] result-db (:db (collectible-events/flush-collectibles {:db db}))]
(is (match? result-db expected-db))))) (is (match? result-db expected-db)))))
@ -60,7 +60,7 @@
(let [expected-db {:wallet {:accounts {"0x1" {} (let [expected-db {:wallet {:accounts {"0x1" {}
"0x2" {"some other stuff" "with any value"} "0x2" {"some other stuff" "with any value"}
"0x3" {}}}} "0x3" {}}}}
effects (collectibles/clear-stored-collectibles {:db db}) effects (collectible-events/clear-stored-collectibles {:db db})
result-db (:db effects)] result-db (:db effects)]
(is (match? result-db expected-db)))))) (is (match? result-db expected-db))))))
@ -72,7 +72,8 @@
:image-url "https://..."} :image-url "https://..."}
expected-db {:wallet {:last-collectible-details {:description "Pandaria" expected-db {:wallet {:last-collectible-details {:description "Pandaria"
:image-url "https://..."}}} :image-url "https://..."}}}
effects (collectibles/store-last-collectible-details {:db db} [last-collectible]) effects (collectible-events/store-last-collectible-details {:db db}
[last-collectible])
result-db (:db effects)] result-db (:db effects)]
(is (match? result-db expected-db))))) (is (match? result-db expected-db)))))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.events.saved-addresses (ns status-im.contexts.wallet.save-address.events
(:require (:require
[status-im.constants :as constants] [status-im.constants :as constants]
[utils.re-frame :as rf])) [utils.re-frame :as rf]))

View File

@ -1,4 +1,4 @@
(ns status-im.contexts.wallet.send.save-address.style) (ns status-im.contexts.wallet.save-address.style)
(def title-input-container (def title-input-container
{:padding-horizontal 20 {:padding-horizontal 20

View File

@ -1,11 +1,11 @@
(ns status-im.contexts.wallet.send.save-address.view (ns status-im.contexts.wallet.save-address.view
(:require (:require
[clojure.string :as string] [clojure.string :as string]
[quo.core :as quo] [quo.core :as quo]
[quo.theme] [quo.theme]
[react-native.core :as rn] [react-native.core :as rn]
[status-im.common.floating-button-page.view :as floating-button-page] [status-im.common.floating-button-page.view :as floating-button-page]
[status-im.contexts.wallet.send.save-address.style :as style] [status-im.contexts.wallet.save-address.style :as style]
[status-im.contexts.wallet.sheets.network-preferences.view [status-im.contexts.wallet.sheets.network-preferences.view
:as network-preferences] :as network-preferences]
[utils.i18n :as i18n] [utils.i18n :as i18n]

View File

@ -4,6 +4,6 @@
[status-im.contexts.chat.messenger.messages.content.audio.component-spec] [status-im.contexts.chat.messenger.messages.content.audio.component-spec]
[status-im.contexts.communities.actions.community-options.component-spec] [status-im.contexts.communities.actions.community-options.component-spec]
[status-im.contexts.shell.share.wallet.component-spec] [status-im.contexts.shell.share.wallet.component-spec]
[status-im.contexts.wallet.add-address-to-watch.component-spec] [status-im.contexts.wallet.add-account.add-address-to-watch.component-spec]
[status-im.contexts.wallet.add-address-to-watch.confirm-address.component-spec] [status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.component-spec]
[status-im.contexts.wallet.send.input-amount.component-spec])) [status-im.contexts.wallet.send.input-amount.component-spec]))

View File

@ -29,8 +29,10 @@
status-im.contexts.shell.qr-reader.events status-im.contexts.shell.qr-reader.events
status-im.contexts.shell.share.events status-im.contexts.shell.share.events
status-im.contexts.syncing.events status-im.contexts.syncing.events
status-im.contexts.wallet.common.wizard status-im.contexts.wallet.add-account.add-address-to-watch.events
status-im.contexts.wallet.create-account.events status-im.contexts.wallet.add-account.create-account.events
status-im.contexts.wallet.collectible.events
status-im.contexts.wallet.common.wizard.events
status-im.contexts.wallet.effects status-im.contexts.wallet.effects
status-im.contexts.wallet.events status-im.contexts.wallet.events
status-im.contexts.wallet.send.events status-im.contexts.wallet.send.events

View File

@ -60,24 +60,26 @@
[status-im.contexts.wallet.account.edit-account.view :as wallet-edit-account] [status-im.contexts.wallet.account.edit-account.view :as wallet-edit-account]
[status-im.contexts.wallet.account.share-address.view :as wallet-share-address] [status-im.contexts.wallet.account.share-address.view :as wallet-share-address]
[status-im.contexts.wallet.account.view :as wallet-accounts] [status-im.contexts.wallet.account.view :as wallet-accounts]
[status-im.contexts.wallet.add-address-to-watch.confirm-address.view :as [status-im.contexts.wallet.add-account.add-address-to-watch.confirm-address.view :as
wallet-confirm-address-to-watch] wallet-confirm-address-to-watch]
[status-im.contexts.wallet.add-address-to-watch.view :as wallet-add-address-to-watch] [status-im.contexts.wallet.add-account.add-address-to-watch.view :as wallet-add-address-to-watch]
[status-im.contexts.wallet.add-account.create-account.edit-derivation-path.view :as
wallet-edit-derivation-path]
[status-im.contexts.wallet.add-account.create-account.new-keypair.backup-recovery-phrase.view :as
wallet-backup-recovery-phrase]
[status-im.contexts.wallet.add-account.create-account.new-keypair.check-your-backup.view :as
wallet-check-your-backup]
[status-im.contexts.wallet.add-account.create-account.new-keypair.keypair-name.view :as
wallet-keypair-name]
[status-im.contexts.wallet.add-account.create-account.select-keypair.view :as wallet-select-keypair]
[status-im.contexts.wallet.add-account.create-account.view :as wallet-create-account]
[status-im.contexts.wallet.bridge.bridge-to.view :as wallet-bridge-to] [status-im.contexts.wallet.bridge.bridge-to.view :as wallet-bridge-to]
[status-im.contexts.wallet.bridge.input-amount.view :as wallet-bridge-input-amount] [status-im.contexts.wallet.bridge.input-amount.view :as wallet-bridge-input-amount]
[status-im.contexts.wallet.bridge.select-asset.view :as wallet-bridge-select-asset] [status-im.contexts.wallet.bridge.select-asset.view :as wallet-bridge-select-asset]
[status-im.contexts.wallet.collectible.view :as wallet-collectible] [status-im.contexts.wallet.collectible.view :as wallet-collectible]
[status-im.contexts.wallet.common.scan-account.view :as wallet-scan-address] [status-im.contexts.wallet.common.scan-account.view :as wallet-scan-address]
[status-im.contexts.wallet.create-account.edit-derivation-path.view :as wallet-edit-derivation-path] [status-im.contexts.wallet.save-address.view :as wallet-save-address]
[status-im.contexts.wallet.create-account.new-keypair.backup-recovery-phrase.view :as
wallet-backup-recovery-phrase]
[status-im.contexts.wallet.create-account.new-keypair.check-your-backup.view :as
wallet-check-your-backup]
[status-im.contexts.wallet.create-account.new-keypair.keypair-name.view :as wallet-keypair-name]
[status-im.contexts.wallet.create-account.select-keypair.view :as wallet-select-keypair]
[status-im.contexts.wallet.create-account.view :as wallet-create-account]
[status-im.contexts.wallet.send.from.view :as wallet-select-from] [status-im.contexts.wallet.send.from.view :as wallet-select-from]
[status-im.contexts.wallet.send.save-address.view :as wallet-save-address]
[status-im.contexts.wallet.send.select-address.view :as wallet-select-address] [status-im.contexts.wallet.send.select-address.view :as wallet-select-address]
[status-im.contexts.wallet.send.select-asset.view :as wallet-select-asset] [status-im.contexts.wallet.send.select-asset.view :as wallet-select-asset]
[status-im.contexts.wallet.send.select-collectible-amount.view :as wallet-select-collectible-amount] [status-im.contexts.wallet.send.select-collectible-amount.view :as wallet-select-collectible-amount]