@reown/appkit-react-native 2.0.0-alpha.4 → 2.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/AppKit.js +59 -93
- package/lib/commonjs/AppKit.js.map +1 -1
- package/lib/commonjs/AppKitContext.js +16 -10
- package/lib/commonjs/AppKitContext.js.map +1 -1
- package/lib/commonjs/connectors/WalletConnectConnector.js +36 -63
- package/lib/commonjs/connectors/WalletConnectConnector.js.map +1 -1
- package/lib/commonjs/hooks/useAccount.js +9 -4
- package/lib/commonjs/hooks/useAccount.js.map +1 -1
- package/lib/commonjs/hooks/useAppKit.js +12 -12
- package/lib/commonjs/hooks/useAppKit.js.map +1 -1
- package/lib/commonjs/hooks/useAppKitState.js +32 -0
- package/lib/commonjs/hooks/useAppKitState.js.map +1 -0
- package/lib/commonjs/hooks/useProvider.js +14 -8
- package/lib/commonjs/hooks/useProvider.js.map +1 -1
- package/lib/commonjs/hooks/useWalletInfo.js +6 -4
- package/lib/commonjs/hooks/useWalletInfo.js.map +1 -1
- package/lib/commonjs/index.js +14 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/modal/w3m-modal/index.js +16 -5
- package/lib/commonjs/modal/w3m-modal/index.js.map +1 -1
- package/lib/commonjs/modal/w3m-router/index.js +25 -21
- package/lib/commonjs/modal/w3m-router/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-account-activity/index.js +1 -1
- package/lib/commonjs/partials/w3m-account-activity/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-all-wallets-list/components/Loading.js +9 -97
- package/lib/commonjs/partials/w3m-all-wallets-list/components/Loading.js.map +1 -1
- package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletItem.js +6 -10
- package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletItem.js.map +1 -1
- package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletList.js +96 -0
- package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletList.js.map +1 -0
- package/lib/commonjs/partials/w3m-all-wallets-list/index.js +19 -45
- package/lib/commonjs/partials/w3m-all-wallets-list/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-all-wallets-list/styles.js +10 -4
- package/lib/commonjs/partials/w3m-all-wallets-list/styles.js.map +1 -1
- package/lib/commonjs/partials/w3m-all-wallets-search/index.js +25 -49
- package/lib/commonjs/partials/w3m-all-wallets-search/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-all-wallets-search/styles.js +3 -1
- package/lib/commonjs/partials/w3m-all-wallets-search/styles.js.map +1 -1
- package/lib/commonjs/partials/w3m-connecting-mobile/index.js +4 -4
- package/lib/commonjs/partials/w3m-connecting-mobile/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-connecting-mobile/styles.js +2 -1
- package/lib/commonjs/partials/w3m-connecting-mobile/styles.js.map +1 -1
- package/lib/commonjs/partials/w3m-connecting-qrcode/index.js +7 -2
- package/lib/commonjs/partials/w3m-connecting-qrcode/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-connecting-web/index.js +2 -1
- package/lib/commonjs/partials/w3m-connecting-web/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-connecting-web/styles.js +3 -0
- package/lib/commonjs/partials/w3m-connecting-web/styles.js.map +1 -1
- package/lib/commonjs/partials/w3m-header/index.js +5 -4
- package/lib/commonjs/partials/w3m-header/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-selector-modal/index.js +72 -57
- package/lib/commonjs/partials/w3m-selector-modal/index.js.map +1 -1
- package/lib/commonjs/partials/w3m-selector-modal/styles.js +9 -11
- package/lib/commonjs/partials/w3m-selector-modal/styles.js.map +1 -1
- package/lib/commonjs/utils/SIWXUtil.js +282 -0
- package/lib/commonjs/utils/SIWXUtil.js.map +1 -0
- package/lib/commonjs/views/w3m-account-default-view/index.js +3 -3
- package/lib/commonjs/views/w3m-account-default-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-account-view/index.js +2 -2
- package/lib/commonjs/views/w3m-account-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-account-view/styles.js +0 -5
- package/lib/commonjs/views/w3m-account-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-all-wallets-view/index.js +7 -24
- package/lib/commonjs/views/w3m-all-wallets-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-connect-socials-view/index.js +2 -2
- package/lib/commonjs/views/w3m-connect-socials-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-connect-view/components/all-wallet-list.js +18 -13
- package/lib/commonjs/views/w3m-connect-view/components/all-wallet-list.js.map +1 -1
- package/lib/commonjs/views/w3m-connect-view/index.js +4 -12
- package/lib/commonjs/views/w3m-connect-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-connecting-external-view/index.js +4 -4
- package/lib/commonjs/views/w3m-connecting-external-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-connecting-external-view/styles.js +1 -1
- package/lib/commonjs/views/w3m-connecting-external-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-connecting-social-view/index.js +35 -30
- package/lib/commonjs/views/w3m-connecting-social-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-connecting-view/index.js +11 -31
- package/lib/commonjs/views/w3m-connecting-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-get-wallet-view/index.js +1 -1
- package/lib/commonjs/views/w3m-get-wallet-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-network-switch-view/index.js +61 -80
- package/lib/commonjs/views/w3m-network-switch-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-networks-view/index.js +25 -14
- package/lib/commonjs/views/w3m-networks-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-checkout-view/index.js +160 -152
- package/lib/commonjs/views/w3m-onramp-checkout-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-loading-view/index.js +4 -4
- package/lib/commonjs/views/w3m-onramp-loading-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-loading-view/styles.js +1 -1
- package/lib/commonjs/views/w3m-onramp-loading-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-settings-view/components/Country.js +5 -2
- package/lib/commonjs/views/w3m-onramp-settings-view/components/Country.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-settings-view/index.js +16 -7
- package/lib/commonjs/views/w3m-onramp-settings-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-settings-view/styles.js +4 -1
- package/lib/commonjs/views/w3m-onramp-settings-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-settings-view/utils.js +17 -1
- package/lib/commonjs/views/w3m-onramp-settings-view/utils.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-transaction-view/index.js +1 -1
- package/lib/commonjs/views/w3m-onramp-transaction-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-view/components/Currency.js +3 -2
- package/lib/commonjs/views/w3m-onramp-view/components/Currency.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-view/components/Header.js +1 -1
- package/lib/commonjs/views/w3m-onramp-view/components/LoadingView.js +1 -1
- package/lib/commonjs/views/w3m-onramp-view/components/LoadingView.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-view/components/SelectPaymentModal.js +5 -2
- package/lib/commonjs/views/w3m-onramp-view/components/SelectPaymentModal.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-view/index.js +5 -4
- package/lib/commonjs/views/w3m-onramp-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-onramp-view/styles.js +3 -0
- package/lib/commonjs/views/w3m-onramp-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-siwx-sign-view/index.js +109 -0
- package/lib/commonjs/views/w3m-siwx-sign-view/index.js.map +1 -0
- package/lib/commonjs/views/{w3m-connecting-siwe-view → w3m-siwx-sign-view}/styles.js +0 -7
- package/lib/commonjs/views/w3m-siwx-sign-view/styles.js.map +1 -0
- package/lib/commonjs/views/w3m-swap-preview-view/index.js +1 -1
- package/lib/commonjs/views/w3m-swap-preview-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-swap-preview-view/styles.js +0 -3
- package/lib/commonjs/views/w3m-swap-preview-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/index.js +156 -0
- package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/index.js.map +1 -0
- package/lib/commonjs/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.js +6 -2
- package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/styles.js.map +1 -0
- package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/utils.js.map +1 -0
- package/lib/commonjs/views/w3m-swap-view/index.js +15 -15
- package/lib/commonjs/views/w3m-swap-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-swap-view/styles.js +0 -8
- package/lib/commonjs/views/w3m-swap-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-unsupported-chain-view/index.js +6 -12
- package/lib/commonjs/views/w3m-unsupported-chain-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-unsupported-chain-view/styles.js +1 -1
- package/lib/commonjs/views/w3m-unsupported-chain-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-upgrade-email-wallet-view/index.js +3 -5
- package/lib/commonjs/views/w3m-upgrade-email-wallet-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-wallet-compatible-networks-view/index.js +1 -2
- package/lib/commonjs/views/w3m-wallet-compatible-networks-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-wallet-receive-view/index.js +1 -1
- package/lib/commonjs/views/w3m-wallet-receive-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-wallet-send-preview-view/index.js +1 -1
- package/lib/commonjs/views/w3m-wallet-send-preview-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-wallet-send-select-token-view/index.js +5 -3
- package/lib/commonjs/views/w3m-wallet-send-select-token-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-wallet-send-view/index.js +11 -5
- package/lib/commonjs/views/w3m-wallet-send-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-wallet-send-view/styles.js +0 -3
- package/lib/commonjs/views/w3m-wallet-send-view/styles.js.map +1 -1
- package/lib/commonjs/views/w3m-what-is-a-network-view/index.js +1 -1
- package/lib/commonjs/views/w3m-what-is-a-network-view/index.js.map +1 -1
- package/lib/commonjs/views/w3m-what-is-a-wallet-view/index.js +1 -1
- package/lib/commonjs/views/w3m-what-is-a-wallet-view/index.js.map +1 -1
- package/lib/module/AppKit.js +59 -93
- package/lib/module/AppKit.js.map +1 -1
- package/lib/module/AppKitContext.js +17 -11
- package/lib/module/AppKitContext.js.map +1 -1
- package/lib/module/connectors/WalletConnectConnector.js +34 -62
- package/lib/module/connectors/WalletConnectConnector.js.map +1 -1
- package/lib/module/hooks/useAccount.js +9 -5
- package/lib/module/hooks/useAccount.js.map +1 -1
- package/lib/module/hooks/useAppKit.js +13 -13
- package/lib/module/hooks/useAppKit.js.map +1 -1
- package/lib/module/hooks/useAppKitState.js +27 -0
- package/lib/module/hooks/useAppKitState.js.map +1 -0
- package/lib/module/hooks/useProvider.js +13 -8
- package/lib/module/hooks/useProvider.js.map +1 -1
- package/lib/module/hooks/useWalletInfo.js +6 -4
- package/lib/module/hooks/useWalletInfo.js.map +1 -1
- package/lib/module/index.js +4 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/modal/w3m-modal/index.js +17 -6
- package/lib/module/modal/w3m-modal/index.js.map +1 -1
- package/lib/module/modal/w3m-router/index.js +26 -22
- package/lib/module/modal/w3m-router/index.js.map +1 -1
- package/lib/module/partials/w3m-account-activity/index.js +1 -1
- package/lib/module/partials/w3m-account-activity/index.js.map +1 -1
- package/lib/module/partials/w3m-all-wallets-list/components/Loading.js +10 -98
- package/lib/module/partials/w3m-all-wallets-list/components/Loading.js.map +1 -1
- package/lib/module/partials/w3m-all-wallets-list/components/WalletItem.js +6 -10
- package/lib/module/partials/w3m-all-wallets-list/components/WalletItem.js.map +1 -1
- package/lib/module/partials/w3m-all-wallets-list/components/WalletList.js +92 -0
- package/lib/module/partials/w3m-all-wallets-list/components/WalletList.js.map +1 -0
- package/lib/module/partials/w3m-all-wallets-list/index.js +19 -45
- package/lib/module/partials/w3m-all-wallets-list/index.js.map +1 -1
- package/lib/module/partials/w3m-all-wallets-list/styles.js +10 -4
- package/lib/module/partials/w3m-all-wallets-list/styles.js.map +1 -1
- package/lib/module/partials/w3m-all-wallets-search/index.js +27 -51
- package/lib/module/partials/w3m-all-wallets-search/index.js.map +1 -1
- package/lib/module/partials/w3m-all-wallets-search/styles.js +3 -1
- package/lib/module/partials/w3m-all-wallets-search/styles.js.map +1 -1
- package/lib/module/partials/w3m-connecting-mobile/index.js +4 -4
- package/lib/module/partials/w3m-connecting-mobile/index.js.map +1 -1
- package/lib/module/partials/w3m-connecting-mobile/styles.js +2 -1
- package/lib/module/partials/w3m-connecting-mobile/styles.js.map +1 -1
- package/lib/module/partials/w3m-connecting-qrcode/index.js +7 -2
- package/lib/module/partials/w3m-connecting-qrcode/index.js.map +1 -1
- package/lib/module/partials/w3m-connecting-web/index.js +2 -1
- package/lib/module/partials/w3m-connecting-web/index.js.map +1 -1
- package/lib/module/partials/w3m-connecting-web/styles.js +3 -0
- package/lib/module/partials/w3m-connecting-web/styles.js.map +1 -1
- package/lib/module/partials/w3m-header/index.js +5 -4
- package/lib/module/partials/w3m-header/index.js.map +1 -1
- package/lib/module/partials/w3m-selector-modal/index.js +74 -59
- package/lib/module/partials/w3m-selector-modal/index.js.map +1 -1
- package/lib/module/partials/w3m-selector-modal/styles.js +9 -11
- package/lib/module/partials/w3m-selector-modal/styles.js.map +1 -1
- package/lib/module/utils/SIWXUtil.js +279 -0
- package/lib/module/utils/SIWXUtil.js.map +1 -0
- package/lib/module/views/w3m-account-default-view/index.js +3 -3
- package/lib/module/views/w3m-account-default-view/index.js.map +1 -1
- package/lib/module/views/w3m-account-view/index.js +2 -2
- package/lib/module/views/w3m-account-view/index.js.map +1 -1
- package/lib/module/views/w3m-account-view/styles.js +1 -6
- package/lib/module/views/w3m-account-view/styles.js.map +1 -1
- package/lib/module/views/w3m-all-wallets-view/index.js +8 -25
- package/lib/module/views/w3m-all-wallets-view/index.js.map +1 -1
- package/lib/module/views/w3m-connect-socials-view/index.js +2 -2
- package/lib/module/views/w3m-connect-socials-view/index.js.map +1 -1
- package/lib/module/views/w3m-connect-view/components/all-wallet-list.js +19 -14
- package/lib/module/views/w3m-connect-view/components/all-wallet-list.js.map +1 -1
- package/lib/module/views/w3m-connect-view/index.js +4 -12
- package/lib/module/views/w3m-connect-view/index.js.map +1 -1
- package/lib/module/views/w3m-connecting-external-view/index.js +4 -4
- package/lib/module/views/w3m-connecting-external-view/index.js.map +1 -1
- package/lib/module/views/w3m-connecting-external-view/styles.js +1 -1
- package/lib/module/views/w3m-connecting-external-view/styles.js.map +1 -1
- package/lib/module/views/w3m-connecting-social-view/index.js +35 -30
- package/lib/module/views/w3m-connecting-social-view/index.js.map +1 -1
- package/lib/module/views/w3m-connecting-view/index.js +12 -32
- package/lib/module/views/w3m-connecting-view/index.js.map +1 -1
- package/lib/module/views/w3m-get-wallet-view/index.js +1 -1
- package/lib/module/views/w3m-get-wallet-view/index.js.map +1 -1
- package/lib/module/views/w3m-network-switch-view/index.js +65 -85
- package/lib/module/views/w3m-network-switch-view/index.js.map +1 -1
- package/lib/module/views/w3m-networks-view/index.js +25 -15
- package/lib/module/views/w3m-networks-view/index.js.map +1 -1
- package/lib/module/views/w3m-onramp-checkout-view/index.js +162 -154
- package/lib/module/views/w3m-onramp-checkout-view/index.js.map +1 -1
- package/lib/module/views/w3m-onramp-loading-view/index.js +4 -4
- package/lib/module/views/w3m-onramp-loading-view/index.js.map +1 -1
- package/lib/module/views/w3m-onramp-loading-view/styles.js +1 -1
- package/lib/module/views/w3m-onramp-loading-view/styles.js.map +1 -1
- package/lib/module/views/w3m-onramp-settings-view/components/Country.js +5 -2
- package/lib/module/views/w3m-onramp-settings-view/components/Country.js.map +1 -1
- package/lib/module/views/w3m-onramp-settings-view/index.js +17 -8
- package/lib/module/views/w3m-onramp-settings-view/index.js.map +1 -1
- package/lib/module/views/w3m-onramp-settings-view/styles.js +4 -1
- package/lib/module/views/w3m-onramp-settings-view/styles.js.map +1 -1
- package/lib/module/views/w3m-onramp-settings-view/utils.js +14 -0
- package/lib/module/views/w3m-onramp-settings-view/utils.js.map +1 -1
- package/lib/module/views/w3m-onramp-transaction-view/index.js +1 -1
- package/lib/module/views/w3m-onramp-transaction-view/index.js.map +1 -1
- package/lib/module/views/w3m-onramp-view/components/Currency.js +3 -2
- package/lib/module/views/w3m-onramp-view/components/Currency.js.map +1 -1
- package/lib/module/views/w3m-onramp-view/components/Header.js +1 -1
- package/lib/module/views/w3m-onramp-view/components/LoadingView.js +1 -1
- package/lib/module/views/w3m-onramp-view/components/LoadingView.js.map +1 -1
- package/lib/module/views/w3m-onramp-view/components/SelectPaymentModal.js +6 -3
- package/lib/module/views/w3m-onramp-view/components/SelectPaymentModal.js.map +1 -1
- package/lib/module/views/w3m-onramp-view/index.js +5 -4
- package/lib/module/views/w3m-onramp-view/index.js.map +1 -1
- package/lib/module/views/w3m-onramp-view/styles.js +3 -0
- package/lib/module/views/w3m-onramp-view/styles.js.map +1 -1
- package/lib/module/views/w3m-siwx-sign-view/index.js +104 -0
- package/lib/module/views/w3m-siwx-sign-view/index.js.map +1 -0
- package/lib/module/views/{w3m-connecting-siwe-view → w3m-siwx-sign-view}/styles.js +0 -7
- package/lib/module/views/w3m-siwx-sign-view/styles.js.map +1 -0
- package/lib/module/views/w3m-swap-preview-view/index.js +1 -1
- package/lib/module/views/w3m-swap-preview-view/index.js.map +1 -1
- package/lib/module/views/w3m-swap-preview-view/styles.js +0 -3
- package/lib/module/views/w3m-swap-preview-view/styles.js.map +1 -1
- package/lib/module/views/w3m-swap-view/components/select-token-modal/index.js +151 -0
- package/lib/module/views/w3m-swap-view/components/select-token-modal/index.js.map +1 -0
- package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.js +6 -2
- package/lib/module/views/w3m-swap-view/components/select-token-modal/styles.js.map +1 -0
- package/lib/module/views/w3m-swap-view/components/select-token-modal/utils.js.map +1 -0
- package/lib/module/views/w3m-swap-view/index.js +16 -16
- package/lib/module/views/w3m-swap-view/index.js.map +1 -1
- package/lib/module/views/w3m-swap-view/styles.js +0 -8
- package/lib/module/views/w3m-swap-view/styles.js.map +1 -1
- package/lib/module/views/w3m-unsupported-chain-view/index.js +8 -14
- package/lib/module/views/w3m-unsupported-chain-view/index.js.map +1 -1
- package/lib/module/views/w3m-unsupported-chain-view/styles.js +1 -1
- package/lib/module/views/w3m-unsupported-chain-view/styles.js.map +1 -1
- package/lib/module/views/w3m-upgrade-email-wallet-view/index.js +4 -6
- package/lib/module/views/w3m-upgrade-email-wallet-view/index.js.map +1 -1
- package/lib/module/views/w3m-wallet-compatible-networks-view/index.js +1 -2
- package/lib/module/views/w3m-wallet-compatible-networks-view/index.js.map +1 -1
- package/lib/module/views/w3m-wallet-receive-view/index.js +1 -1
- package/lib/module/views/w3m-wallet-receive-view/index.js.map +1 -1
- package/lib/module/views/w3m-wallet-send-preview-view/index.js +1 -1
- package/lib/module/views/w3m-wallet-send-preview-view/index.js.map +1 -1
- package/lib/module/views/w3m-wallet-send-select-token-view/index.js +5 -3
- package/lib/module/views/w3m-wallet-send-select-token-view/index.js.map +1 -1
- package/lib/module/views/w3m-wallet-send-view/index.js +11 -5
- package/lib/module/views/w3m-wallet-send-view/index.js.map +1 -1
- package/lib/module/views/w3m-wallet-send-view/styles.js +0 -3
- package/lib/module/views/w3m-wallet-send-view/styles.js.map +1 -1
- package/lib/module/views/w3m-what-is-a-network-view/index.js +1 -1
- package/lib/module/views/w3m-what-is-a-network-view/index.js.map +1 -1
- package/lib/module/views/w3m-what-is-a-wallet-view/index.js +1 -1
- package/lib/module/views/w3m-what-is-a-wallet-view/index.js.map +1 -1
- package/lib/typescript/AppKit.d.ts +1 -3
- package/lib/typescript/AppKit.d.ts.map +1 -1
- package/lib/typescript/AppKitContext.d.ts.map +1 -1
- package/lib/typescript/connectors/WalletConnectConnector.d.ts.map +1 -1
- package/lib/typescript/hooks/useAccount.d.ts +33 -1
- package/lib/typescript/hooks/useAccount.d.ts.map +1 -1
- package/lib/typescript/hooks/useAppKit.d.ts +0 -1
- package/lib/typescript/hooks/useAppKit.d.ts.map +1 -1
- package/lib/typescript/hooks/useAppKitEvents.d.ts +6 -4
- package/lib/typescript/hooks/useAppKitEvents.d.ts.map +1 -1
- package/lib/typescript/hooks/useAppKitState.d.ts +38 -0
- package/lib/typescript/hooks/useAppKitState.d.ts.map +1 -0
- package/lib/typescript/hooks/useProvider.d.ts.map +1 -1
- package/lib/typescript/hooks/useWalletInfo.d.ts +1 -0
- package/lib/typescript/hooks/useWalletInfo.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +4 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/modal/w3m-modal/index.d.ts.map +1 -1
- package/lib/typescript/modal/w3m-router/index.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-all-wallets-list/components/Loading.d.ts +4 -4
- package/lib/typescript/partials/w3m-all-wallets-list/components/Loading.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-all-wallets-list/components/WalletItem.d.ts +2 -3
- package/lib/typescript/partials/w3m-all-wallets-list/components/WalletItem.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-all-wallets-list/components/WalletList.d.ts +15 -0
- package/lib/typescript/partials/w3m-all-wallets-list/components/WalletList.d.ts.map +1 -0
- package/lib/typescript/partials/w3m-all-wallets-list/index.d.ts +1 -3
- package/lib/typescript/partials/w3m-all-wallets-list/index.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-all-wallets-list/styles.d.ts +9 -3
- package/lib/typescript/partials/w3m-all-wallets-list/styles.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-all-wallets-search/index.d.ts +1 -4
- package/lib/typescript/partials/w3m-all-wallets-search/index.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-all-wallets-search/styles.d.ts +2 -0
- package/lib/typescript/partials/w3m-all-wallets-search/styles.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-connecting-mobile/styles.d.ts +1 -0
- package/lib/typescript/partials/w3m-connecting-mobile/styles.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-connecting-qrcode/index.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-connecting-web/styles.d.ts +3 -0
- package/lib/typescript/partials/w3m-connecting-web/styles.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-header/index.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-selector-modal/index.d.ts +3 -1
- package/lib/typescript/partials/w3m-selector-modal/index.d.ts.map +1 -1
- package/lib/typescript/partials/w3m-selector-modal/styles.d.ts +6 -8
- package/lib/typescript/partials/w3m-selector-modal/styles.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +5 -7
- package/lib/typescript/types.d.ts.map +1 -1
- package/lib/typescript/utils/SIWXUtil.d.ts +34 -0
- package/lib/typescript/utils/SIWXUtil.d.ts.map +1 -0
- package/lib/typescript/views/w3m-account-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-account-view/styles.d.ts +0 -3
- package/lib/typescript/views/w3m-account-view/styles.d.ts.map +1 -1
- package/lib/typescript/views/w3m-all-wallets-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-connect-view/components/all-wallet-list.d.ts.map +1 -1
- package/lib/typescript/views/w3m-connect-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-connecting-social-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-connecting-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-network-switch-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-networks-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-checkout-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-loading-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-settings-view/components/Country.d.ts +4 -1
- package/lib/typescript/views/w3m-onramp-settings-view/components/Country.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-settings-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-settings-view/styles.d.ts +4 -1
- package/lib/typescript/views/w3m-onramp-settings-view/styles.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-settings-view/utils.d.ts +2 -0
- package/lib/typescript/views/w3m-onramp-settings-view/utils.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-view/components/Currency.d.ts +3 -1
- package/lib/typescript/views/w3m-onramp-view/components/Currency.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-view/components/SelectPaymentModal.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-onramp-view/styles.d.ts +3 -0
- package/lib/typescript/views/w3m-onramp-view/styles.d.ts.map +1 -1
- package/lib/typescript/views/w3m-siwx-sign-view/index.d.ts +2 -0
- package/lib/typescript/views/w3m-siwx-sign-view/index.d.ts.map +1 -0
- package/lib/typescript/views/{w3m-connecting-siwe-view → w3m-siwx-sign-view}/styles.d.ts +0 -7
- package/lib/typescript/views/w3m-siwx-sign-view/styles.d.ts.map +1 -0
- package/lib/typescript/views/w3m-swap-preview-view/styles.d.ts +0 -3
- package/lib/typescript/views/w3m-swap-preview-view/styles.d.ts.map +1 -1
- package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/index.d.ts +2 -1
- package/lib/typescript/views/w3m-swap-view/components/select-token-modal/index.d.ts.map +1 -0
- package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.d.ts +6 -2
- package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.d.ts.map +1 -1
- package/lib/typescript/views/w3m-swap-view/components/select-token-modal/utils.d.ts.map +1 -0
- package/lib/typescript/views/w3m-swap-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-swap-view/styles.d.ts +0 -8
- package/lib/typescript/views/w3m-swap-view/styles.d.ts.map +1 -1
- package/lib/typescript/views/w3m-unsupported-chain-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-upgrade-email-wallet-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-wallet-send-view/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-wallet-send-view/styles.d.ts +0 -3
- package/lib/typescript/views/w3m-wallet-send-view/styles.d.ts.map +1 -1
- package/package.json +10 -9
- package/src/AppKit.ts +62 -107
- package/src/AppKitContext.tsx +19 -11
- package/src/connectors/WalletConnectConnector.ts +47 -75
- package/src/hooks/useAccount.ts +15 -5
- package/src/hooks/useAppKit.ts +17 -12
- package/src/hooks/useAppKitState.ts +26 -0
- package/src/hooks/useProvider.ts +11 -5
- package/src/hooks/useWalletInfo.ts +5 -2
- package/src/index.ts +11 -0
- package/src/modal/w3m-modal/index.tsx +13 -4
- package/src/modal/w3m-router/index.tsx +19 -20
- package/src/partials/w3m-account-activity/index.tsx +1 -1
- package/src/partials/w3m-all-wallets-list/components/Loading.tsx +12 -35
- package/src/partials/w3m-all-wallets-list/components/WalletItem.tsx +5 -12
- package/src/partials/w3m-all-wallets-list/components/WalletList.tsx +103 -0
- package/src/partials/w3m-all-wallets-list/index.tsx +25 -51
- package/src/partials/w3m-all-wallets-list/styles.ts +10 -4
- package/src/partials/w3m-all-wallets-search/index.tsx +25 -60
- package/src/partials/w3m-all-wallets-search/styles.ts +3 -1
- package/src/partials/w3m-connecting-mobile/index.tsx +8 -8
- package/src/partials/w3m-connecting-mobile/styles.ts +2 -1
- package/src/partials/w3m-connecting-qrcode/index.tsx +5 -2
- package/src/partials/w3m-connecting-web/index.tsx +2 -2
- package/src/partials/w3m-connecting-web/styles.ts +3 -0
- package/src/partials/w3m-header/index.tsx +7 -4
- package/src/partials/w3m-selector-modal/index.tsx +81 -61
- package/src/partials/w3m-selector-modal/styles.ts +9 -11
- package/src/types.ts +6 -8
- package/src/utils/SIWXUtil.ts +364 -0
- package/src/views/w3m-account-default-view/index.tsx +3 -3
- package/src/views/w3m-account-view/index.tsx +1 -9
- package/src/views/w3m-account-view/styles.ts +1 -4
- package/src/views/w3m-all-wallets-view/index.tsx +11 -34
- package/src/views/w3m-connect-socials-view/index.tsx +2 -2
- package/src/views/w3m-connect-view/components/all-wallet-list.tsx +28 -21
- package/src/views/w3m-connect-view/index.tsx +3 -7
- package/src/views/w3m-connecting-external-view/index.tsx +8 -8
- package/src/views/w3m-connecting-external-view/styles.ts +1 -1
- package/src/views/w3m-connecting-social-view/index.tsx +26 -28
- package/src/views/w3m-connecting-view/index.tsx +13 -32
- package/src/views/w3m-get-wallet-view/index.tsx +1 -1
- package/src/views/w3m-network-switch-view/index.tsx +70 -98
- package/src/views/w3m-networks-view/index.tsx +26 -22
- package/src/views/w3m-onramp-checkout-view/index.tsx +147 -143
- package/src/views/w3m-onramp-loading-view/index.tsx +3 -7
- package/src/views/w3m-onramp-loading-view/styles.ts +1 -1
- package/src/views/w3m-onramp-settings-view/components/Country.tsx +10 -3
- package/src/views/w3m-onramp-settings-view/index.tsx +17 -5
- package/src/views/w3m-onramp-settings-view/styles.ts +4 -1
- package/src/views/w3m-onramp-settings-view/utils.ts +18 -0
- package/src/views/w3m-onramp-transaction-view/index.tsx +1 -1
- package/src/views/w3m-onramp-view/components/Currency.tsx +4 -3
- package/src/views/w3m-onramp-view/components/Header.tsx +1 -1
- package/src/views/w3m-onramp-view/components/LoadingView.tsx +1 -1
- package/src/views/w3m-onramp-view/components/SelectPaymentModal.tsx +6 -3
- package/src/views/w3m-onramp-view/index.tsx +4 -3
- package/src/views/w3m-onramp-view/styles.ts +3 -0
- package/src/views/w3m-siwx-sign-view/index.tsx +96 -0
- package/src/views/{w3m-connecting-siwe-view → w3m-siwx-sign-view}/styles.ts +0 -7
- package/src/views/w3m-swap-preview-view/index.tsx +1 -1
- package/src/views/w3m-swap-preview-view/styles.ts +0 -3
- package/src/views/w3m-swap-view/components/select-token-modal/index.tsx +181 -0
- package/src/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.ts +6 -2
- package/src/views/w3m-swap-view/index.tsx +10 -9
- package/src/views/w3m-swap-view/styles.ts +0 -8
- package/src/views/w3m-unsupported-chain-view/index.tsx +5 -7
- package/src/views/w3m-unsupported-chain-view/styles.ts +1 -1
- package/src/views/w3m-upgrade-email-wallet-view/index.tsx +4 -6
- package/src/views/w3m-wallet-compatible-networks-view/index.tsx +1 -1
- package/src/views/w3m-wallet-receive-view/index.tsx +1 -1
- package/src/views/w3m-wallet-send-preview-view/index.tsx +1 -1
- package/src/views/w3m-wallet-send-select-token-view/index.tsx +3 -3
- package/src/views/w3m-wallet-send-view/index.tsx +5 -4
- package/src/views/w3m-wallet-send-view/styles.ts +0 -3
- package/src/views/w3m-what-is-a-network-view/index.tsx +1 -1
- package/src/views/w3m-what-is-a-wallet-view/index.tsx +1 -1
- package/lib/commonjs/views/w3m-connect-view/components/custom-wallet-list.js +0 -45
- package/lib/commonjs/views/w3m-connect-view/components/custom-wallet-list.js.map +0 -1
- package/lib/commonjs/views/w3m-connect-view/components/recent-wallet-list.js +0 -41
- package/lib/commonjs/views/w3m-connect-view/components/recent-wallet-list.js.map +0 -1
- package/lib/commonjs/views/w3m-connect-view/utils.js +0 -14
- package/lib/commonjs/views/w3m-connect-view/utils.js.map +0 -1
- package/lib/commonjs/views/w3m-connecting-siwe-view/index.js +0 -145
- package/lib/commonjs/views/w3m-connecting-siwe-view/index.js.map +0 -1
- package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js.map +0 -1
- package/lib/commonjs/views/w3m-swap-view/components/select-token-view/index.js +0 -145
- package/lib/commonjs/views/w3m-swap-view/components/select-token-view/index.js.map +0 -1
- package/lib/commonjs/views/w3m-swap-view/components/select-token-view/styles.js.map +0 -1
- package/lib/commonjs/views/w3m-swap-view/components/select-token-view/utils.js.map +0 -1
- package/lib/module/views/w3m-connect-view/components/custom-wallet-list.js +0 -41
- package/lib/module/views/w3m-connect-view/components/custom-wallet-list.js.map +0 -1
- package/lib/module/views/w3m-connect-view/components/recent-wallet-list.js +0 -37
- package/lib/module/views/w3m-connect-view/components/recent-wallet-list.js.map +0 -1
- package/lib/module/views/w3m-connect-view/utils.js +0 -9
- package/lib/module/views/w3m-connect-view/utils.js.map +0 -1
- package/lib/module/views/w3m-connecting-siwe-view/index.js +0 -140
- package/lib/module/views/w3m-connecting-siwe-view/index.js.map +0 -1
- package/lib/module/views/w3m-connecting-siwe-view/styles.js.map +0 -1
- package/lib/module/views/w3m-swap-view/components/select-token-view/index.js +0 -140
- package/lib/module/views/w3m-swap-view/components/select-token-view/index.js.map +0 -1
- package/lib/module/views/w3m-swap-view/components/select-token-view/styles.js.map +0 -1
- package/lib/module/views/w3m-swap-view/components/select-token-view/utils.js.map +0 -1
- package/lib/typescript/views/w3m-connect-view/components/custom-wallet-list.d.ts +0 -9
- package/lib/typescript/views/w3m-connect-view/components/custom-wallet-list.d.ts.map +0 -1
- package/lib/typescript/views/w3m-connect-view/components/recent-wallet-list.d.ts +0 -9
- package/lib/typescript/views/w3m-connect-view/components/recent-wallet-list.d.ts.map +0 -1
- package/lib/typescript/views/w3m-connect-view/utils.d.ts +0 -3
- package/lib/typescript/views/w3m-connect-view/utils.d.ts.map +0 -1
- package/lib/typescript/views/w3m-connecting-siwe-view/index.d.ts +0 -2
- package/lib/typescript/views/w3m-connecting-siwe-view/index.d.ts.map +0 -1
- package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts.map +0 -1
- package/lib/typescript/views/w3m-swap-view/components/select-token-view/index.d.ts.map +0 -1
- package/lib/typescript/views/w3m-swap-view/components/select-token-view/utils.d.ts.map +0 -1
- package/src/views/w3m-connect-view/components/custom-wallet-list.tsx +0 -51
- package/src/views/w3m-connect-view/components/recent-wallet-list.tsx +0 -45
- package/src/views/w3m-connect-view/utils.ts +0 -14
- package/src/views/w3m-connecting-siwe-view/index.tsx +0 -126
- package/src/views/w3m-swap-view/components/select-token-view/index.tsx +0 -176
- /package/lib/commonjs/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js +0 -0
- /package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js +0 -0
- /package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.d.ts +0 -0
- /package/src/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.ts +0 -0
package/src/AppKit.ts
CHANGED
|
@@ -14,7 +14,8 @@ import {
|
|
|
14
14
|
CoreHelperUtil,
|
|
15
15
|
SendController,
|
|
16
16
|
BlockchainApiController,
|
|
17
|
-
WalletUtil
|
|
17
|
+
WalletUtil,
|
|
18
|
+
type RouterControllerState
|
|
18
19
|
} from '@reown/appkit-core-react-native';
|
|
19
20
|
|
|
20
21
|
import {
|
|
@@ -36,13 +37,13 @@ import {
|
|
|
36
37
|
type Connection,
|
|
37
38
|
type WcWallet
|
|
38
39
|
} from '@reown/appkit-common-react-native';
|
|
39
|
-
import { SIWEController } from '@reown/appkit-siwe-react-native';
|
|
40
40
|
|
|
41
41
|
import { WalletConnectConnector } from './connectors/WalletConnectConnector';
|
|
42
42
|
import { WcHelpersUtil } from './utils/HelpersUtil';
|
|
43
43
|
import { NetworkUtil } from './utils/NetworkUtil';
|
|
44
44
|
import { RouterUtil } from './utils/RouterUtil';
|
|
45
45
|
import { type AppKitConfig } from './types';
|
|
46
|
+
import { SIWXUtil } from './utils/SIWXUtil';
|
|
46
47
|
|
|
47
48
|
export class AppKit {
|
|
48
49
|
private projectId: string;
|
|
@@ -130,8 +131,7 @@ export class AppKit {
|
|
|
130
131
|
const approvedNamespaces = await connector.connect({
|
|
131
132
|
namespaces: this.namespaces,
|
|
132
133
|
defaultNetwork: chain,
|
|
133
|
-
universalLink: targetWallet?.link_mode ?? undefined
|
|
134
|
-
siweConfig: this.config?.siweConfig
|
|
134
|
+
universalLink: targetWallet?.link_mode ?? undefined
|
|
135
135
|
});
|
|
136
136
|
|
|
137
137
|
this.processConnection(connector, approvedNamespaces);
|
|
@@ -149,11 +149,7 @@ export class AppKit {
|
|
|
149
149
|
}
|
|
150
150
|
}
|
|
151
151
|
|
|
152
|
-
private processConnection(
|
|
153
|
-
connector: WalletConnector,
|
|
154
|
-
namespaces?: Namespaces,
|
|
155
|
-
shouldCloseModal: boolean = true
|
|
156
|
-
) {
|
|
152
|
+
private async processConnection(connector: WalletConnector, namespaces?: Namespaces) {
|
|
157
153
|
if (!namespaces || Object.keys(namespaces).length === 0) {
|
|
158
154
|
throw new Error('No namespaces provided');
|
|
159
155
|
}
|
|
@@ -173,21 +169,9 @@ export class AppKit {
|
|
|
173
169
|
this.setConnection(initializedAdapters, namespaces, walletInfo, properties);
|
|
174
170
|
|
|
175
171
|
// Sync accounts
|
|
176
|
-
this.syncAccounts(initializedAdapters);
|
|
172
|
+
await this.syncAccounts(initializedAdapters);
|
|
177
173
|
|
|
178
|
-
|
|
179
|
-
this.handleSiweConnectionIfEnabled(shouldCloseModal);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
private handleSiweConnectionIfEnabled(shouldCloseModal: boolean = true): void {
|
|
183
|
-
if (
|
|
184
|
-
OptionsController.state.isSiweEnabled &&
|
|
185
|
-
ConnectionsController.state.activeNamespace === 'eip155'
|
|
186
|
-
) {
|
|
187
|
-
this.handleSiweChange({ isConnection: true });
|
|
188
|
-
} else if (shouldCloseModal) {
|
|
189
|
-
ModalController.close();
|
|
190
|
-
}
|
|
174
|
+
await SIWXUtil.initializeIfEnabled({ onDisconnect: this.disconnect, closeModal: true });
|
|
191
175
|
}
|
|
192
176
|
|
|
193
177
|
/**
|
|
@@ -229,8 +213,8 @@ export class AppKit {
|
|
|
229
213
|
);
|
|
230
214
|
}
|
|
231
215
|
|
|
232
|
-
if (
|
|
233
|
-
await
|
|
216
|
+
if (SIWXUtil.getSIWX()?.signOutOnDisconnect) {
|
|
217
|
+
await SIWXUtil.clearSessions();
|
|
234
218
|
}
|
|
235
219
|
|
|
236
220
|
EventsController.sendEvent({
|
|
@@ -289,10 +273,6 @@ export class AppKit {
|
|
|
289
273
|
});
|
|
290
274
|
|
|
291
275
|
ConnectionsController.setActiveNetwork(network.chainNamespace, network.caipNetworkId);
|
|
292
|
-
|
|
293
|
-
if (ConnectionsController.state.activeNamespace !== network.chainNamespace) {
|
|
294
|
-
ConnectionsController.setActiveNamespace(network.chainNamespace);
|
|
295
|
-
}
|
|
296
276
|
}
|
|
297
277
|
|
|
298
278
|
open(options?: AppKitOpenOptions) {
|
|
@@ -301,19 +281,19 @@ export class AppKit {
|
|
|
301
281
|
|
|
302
282
|
async close() {
|
|
303
283
|
ModalController.close();
|
|
284
|
+
const isSIWXRequired = SIWXUtil.getSIWX()?.getRequired?.();
|
|
304
285
|
|
|
305
|
-
if (
|
|
306
|
-
const
|
|
307
|
-
if (
|
|
308
|
-
|
|
309
|
-
SIWEController.state.status !== 'success' &&
|
|
310
|
-
ConnectionsController.state.activeNamespace === 'eip155' &&
|
|
311
|
-
!!ConnectionsController.state.activeAddress
|
|
312
|
-
) {
|
|
313
|
-
await this.disconnect();
|
|
286
|
+
if (isSIWXRequired && ConnectionsController.state.isConnected) {
|
|
287
|
+
const sessions = await SIWXUtil.getSessions();
|
|
288
|
+
if (!sessions.length) {
|
|
289
|
+
return await this.disconnect();
|
|
314
290
|
}
|
|
315
291
|
}
|
|
316
292
|
|
|
293
|
+
if (RouterController.state.view === 'UnsupportedChain') {
|
|
294
|
+
return await this.disconnect();
|
|
295
|
+
}
|
|
296
|
+
|
|
317
297
|
RouterUtil.checkOnRampBack();
|
|
318
298
|
RouterUtil.checkSocialLoginBack();
|
|
319
299
|
}
|
|
@@ -325,6 +305,13 @@ export class AppKit {
|
|
|
325
305
|
return RouterController.goBack();
|
|
326
306
|
}
|
|
327
307
|
|
|
308
|
+
const isSIWXRequired = SIWXUtil.getSIWX()?.getRequired?.();
|
|
309
|
+
|
|
310
|
+
if (isSIWXRequired) {
|
|
311
|
+
// Don't close the modal if SIWX is required
|
|
312
|
+
return;
|
|
313
|
+
}
|
|
314
|
+
|
|
328
315
|
return this.close();
|
|
329
316
|
}
|
|
330
317
|
|
|
@@ -332,11 +319,16 @@ export class AppKit {
|
|
|
332
319
|
const adapter = this.getAdapterByNamespace(namespace);
|
|
333
320
|
if (!adapter) throw new Error('No active adapter');
|
|
334
321
|
|
|
335
|
-
ConnectionsController.setAccountType(namespace, type);
|
|
322
|
+
const address = ConnectionsController.setAccountType(namespace, type);
|
|
336
323
|
|
|
337
324
|
// Get balances from API
|
|
338
325
|
ConnectionsController.fetchBalance();
|
|
339
326
|
|
|
327
|
+
// Fetch transactions for the new account
|
|
328
|
+
if (address) {
|
|
329
|
+
TransactionsController.fetchTransactions(address, true);
|
|
330
|
+
}
|
|
331
|
+
|
|
340
332
|
// Sync balances from adapter
|
|
341
333
|
this.syncNativeBalance(adapter, network);
|
|
342
334
|
|
|
@@ -390,25 +382,27 @@ export class AppKit {
|
|
|
390
382
|
* This attempts to restore previous sessions.
|
|
391
383
|
*/
|
|
392
384
|
private async initConnectors() {
|
|
385
|
+
ModalController.setLoading(true);
|
|
393
386
|
const connectedConnectors = await StorageUtil.getConnectedConnectors();
|
|
394
387
|
if (connectedConnectors.length > 0) {
|
|
395
|
-
ModalController.setLoading(true);
|
|
396
|
-
|
|
397
388
|
for (const connected of connectedConnectors) {
|
|
398
389
|
try {
|
|
399
390
|
const connector = await this.createConnector(connected.type);
|
|
400
391
|
|
|
401
392
|
const namespaces = connector.getNamespaces();
|
|
402
393
|
|
|
403
|
-
this.processConnection(connector, namespaces
|
|
394
|
+
await this.processConnection(connector, namespaces);
|
|
404
395
|
} catch (error) {
|
|
405
396
|
// Use console.warn for non-critical initialization failures
|
|
406
397
|
console.warn(`Failed to initialize connector type ${connected.type}:`, error);
|
|
407
398
|
await StorageUtil.removeConnectedConnectors(connected.type);
|
|
408
399
|
}
|
|
409
400
|
}
|
|
410
|
-
ModalController.setLoading(false);
|
|
411
401
|
}
|
|
402
|
+
|
|
403
|
+
//Always init the walletconnect connector
|
|
404
|
+
await this.createWalletConnectConnector();
|
|
405
|
+
ModalController.setLoading(false);
|
|
412
406
|
}
|
|
413
407
|
|
|
414
408
|
private setupAdaptersAndSubscribe(
|
|
@@ -505,7 +499,7 @@ export class AppKit {
|
|
|
505
499
|
}
|
|
506
500
|
}
|
|
507
501
|
|
|
508
|
-
private
|
|
502
|
+
private refreshBalance(fetchAllBalances: boolean = false) {
|
|
509
503
|
try {
|
|
510
504
|
if (fetchAllBalances) {
|
|
511
505
|
ConnectionsController.fetchBalance();
|
|
@@ -542,7 +536,6 @@ export class AppKit {
|
|
|
542
536
|
const recomputePolling = () => {
|
|
543
537
|
const open = ModalController.state.open;
|
|
544
538
|
const view = RouterController.state.view;
|
|
545
|
-
|
|
546
539
|
if (open && (view === 'Account' || view === 'AccountDefault')) {
|
|
547
540
|
// fetch all balances when user is using embedded wallet
|
|
548
541
|
this.startBalancePolling(view === 'Account');
|
|
@@ -550,9 +543,7 @@ export class AppKit {
|
|
|
550
543
|
this.stopBalancePolling();
|
|
551
544
|
}
|
|
552
545
|
};
|
|
553
|
-
|
|
554
546
|
recomputePolling();
|
|
555
|
-
|
|
556
547
|
subscribeKey(RouterController.state, 'view', () => recomputePolling());
|
|
557
548
|
subscribeKey(ModalController.state, 'open', () => recomputePolling());
|
|
558
549
|
}
|
|
@@ -573,7 +564,8 @@ export class AppKit {
|
|
|
573
564
|
const caipNetwork = adapter?.connector?.getChainId(namespace);
|
|
574
565
|
const namespaceProperties = {
|
|
575
566
|
...properties,
|
|
576
|
-
smartAccounts: properties?.smartAccounts?.filter(account => account.startsWith(namespace))
|
|
567
|
+
smartAccounts: properties?.smartAccounts?.filter(account => account.startsWith(namespace)),
|
|
568
|
+
canAddEvmChain: wallet?.name === 'MetaMask Wallet' // MetaMask allows adding EVM chains after connecting
|
|
577
569
|
};
|
|
578
570
|
|
|
579
571
|
ConnectionsController.setConnection({
|
|
@@ -600,21 +592,21 @@ export class AppKit {
|
|
|
600
592
|
adapter.on('accountsChanged', ({ accounts }) => {
|
|
601
593
|
const namespace = adapter.getSupportedNamespace();
|
|
602
594
|
ConnectionsController.updateAccounts(namespace, accounts);
|
|
595
|
+
});
|
|
603
596
|
|
|
604
|
-
|
|
605
|
-
|
|
597
|
+
adapter.on('chainChanged', async ({ chainId }) => {
|
|
598
|
+
const isSupported = this.networks.some(network => network.id?.toString() === chainId);
|
|
599
|
+
if (!isSupported) {
|
|
600
|
+
return this.navigate('UnsupportedChain');
|
|
606
601
|
}
|
|
607
|
-
});
|
|
608
602
|
|
|
609
|
-
adapter.on('chainChanged', ({ chainId }) => {
|
|
610
603
|
const namespace = adapter.getSupportedNamespace();
|
|
611
604
|
const chain = `${namespace}:${chainId}` as CaipNetworkId;
|
|
612
605
|
ConnectionsController.setActiveNetwork(namespace, chain);
|
|
606
|
+
|
|
613
607
|
const connection = ConnectionsController.state.connections.get(namespace);
|
|
614
608
|
const isAuth = !!connection?.properties?.provider;
|
|
615
609
|
|
|
616
|
-
const activeNamespace = ConnectionsController.state.activeNamespace;
|
|
617
|
-
|
|
618
610
|
const network = this.networks.find(n => n.id?.toString() === chainId);
|
|
619
611
|
this.syncNativeBalance(adapter, network);
|
|
620
612
|
SendController.resetState();
|
|
@@ -624,20 +616,14 @@ export class AppKit {
|
|
|
624
616
|
ConnectionsController.fetchBalance();
|
|
625
617
|
}
|
|
626
618
|
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
);
|
|
632
|
-
if (address) {
|
|
633
|
-
TransactionsController.fetchTransactions(address, true);
|
|
634
|
-
}
|
|
619
|
+
const address = connection?.accounts?.find(account =>
|
|
620
|
+
account.startsWith(`${namespace}:${chainId}`)
|
|
621
|
+
);
|
|
622
|
+
if (address) {
|
|
623
|
+
TransactionsController.fetchTransactions(address, true);
|
|
635
624
|
}
|
|
636
625
|
|
|
637
|
-
|
|
638
|
-
if (namespace === 'eip155') {
|
|
639
|
-
this.handleSiweChange({ isNetworkChange: true });
|
|
640
|
-
}
|
|
626
|
+
SIWXUtil.initializeIfEnabled({ onDisconnect: this.disconnect, caipAddress: address });
|
|
641
627
|
});
|
|
642
628
|
|
|
643
629
|
adapter.on('disconnect', () => {
|
|
@@ -670,7 +656,7 @@ export class AppKit {
|
|
|
670
656
|
OptionsController.setDefaultNetwork(network);
|
|
671
657
|
}
|
|
672
658
|
|
|
673
|
-
ThemeController.
|
|
659
|
+
ThemeController.setDefaultThemeMode(options.themeMode);
|
|
674
660
|
ThemeController.setThemeVariables(options.themeVariables);
|
|
675
661
|
|
|
676
662
|
OptionsController.setSdkVersion(
|
|
@@ -683,8 +669,8 @@ export class AppKit {
|
|
|
683
669
|
|
|
684
670
|
ConnectionsController.setNetworks(this.networks);
|
|
685
671
|
|
|
686
|
-
if (options.
|
|
687
|
-
|
|
672
|
+
if (options.siwx) {
|
|
673
|
+
OptionsController.setSiwx(options.siwx);
|
|
688
674
|
}
|
|
689
675
|
|
|
690
676
|
if (
|
|
@@ -779,48 +765,17 @@ export class AppKit {
|
|
|
779
765
|
await this.initRecentWallets(options);
|
|
780
766
|
}
|
|
781
767
|
|
|
782
|
-
private
|
|
768
|
+
private navigate = (routeName: RouterControllerState['view']) => {
|
|
769
|
+
if (RouterController.state.view === routeName) {
|
|
770
|
+
return;
|
|
771
|
+
}
|
|
772
|
+
|
|
783
773
|
if (ModalController.state.open) {
|
|
784
|
-
RouterController.push(
|
|
774
|
+
RouterController.push(routeName);
|
|
785
775
|
} else {
|
|
786
|
-
ModalController.open({ view:
|
|
776
|
+
ModalController.open({ view: routeName });
|
|
787
777
|
}
|
|
788
778
|
};
|
|
789
|
-
|
|
790
|
-
private async handleSiweChange(params?: {
|
|
791
|
-
isConnection?: boolean;
|
|
792
|
-
isNetworkChange?: boolean;
|
|
793
|
-
isAccountChange?: boolean;
|
|
794
|
-
}) {
|
|
795
|
-
const { isNetworkChange, isAccountChange, isConnection } = params ?? {};
|
|
796
|
-
const { enabled, signOutOnAccountChange, signOutOnNetworkChange } =
|
|
797
|
-
SIWEController.state._client?.options ?? {};
|
|
798
|
-
|
|
799
|
-
if (enabled) {
|
|
800
|
-
const session = await SIWEController.getSession();
|
|
801
|
-
if (session && isAccountChange) {
|
|
802
|
-
if (signOutOnAccountChange) {
|
|
803
|
-
// If the address has changed and signOnAccountChange is enabled, sign out
|
|
804
|
-
await SIWEController.signOut();
|
|
805
|
-
|
|
806
|
-
return this.onSiweNavigation();
|
|
807
|
-
}
|
|
808
|
-
} else if (isNetworkChange) {
|
|
809
|
-
if (signOutOnNetworkChange) {
|
|
810
|
-
// If the network has changed and signOnNetworkChange is enabled, sign out
|
|
811
|
-
await SIWEController.signOut();
|
|
812
|
-
|
|
813
|
-
return this.onSiweNavigation();
|
|
814
|
-
}
|
|
815
|
-
} else if (!session) {
|
|
816
|
-
// If it's connected but there's no session, show sign view
|
|
817
|
-
return this.onSiweNavigation();
|
|
818
|
-
} else if (isConnection) {
|
|
819
|
-
// Connected with 1CA
|
|
820
|
-
ModalController.close();
|
|
821
|
-
}
|
|
822
|
-
}
|
|
823
|
-
}
|
|
824
779
|
}
|
|
825
780
|
|
|
826
781
|
export function createAppKit(config: AppKitConfig): AppKit {
|
package/src/AppKitContext.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { createContext, useContext, type ReactNode } from 'react';
|
|
1
|
+
import React, { createContext, useContext, useMemo, type ReactNode } from 'react';
|
|
2
2
|
import { AppKit } from './AppKit';
|
|
3
3
|
|
|
4
4
|
interface AppKitContextType {
|
|
@@ -26,14 +26,22 @@ export const useInternalAppKit = () => {
|
|
|
26
26
|
throw new Error('AppKit instance is not yet available in context.');
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
29
|
+
const stableFunctions = useMemo(() => {
|
|
30
|
+
if (!context.appKit) {
|
|
31
|
+
throw new Error('AppKit instance is not available');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return {
|
|
35
|
+
connect: context.appKit.connect.bind(context.appKit),
|
|
36
|
+
disconnect: context.appKit.disconnect.bind(context.appKit),
|
|
37
|
+
open: context.appKit.open.bind(context.appKit),
|
|
38
|
+
close: context.appKit.close.bind(context.appKit),
|
|
39
|
+
back: context.appKit.back.bind(context.appKit),
|
|
40
|
+
switchNetwork: context.appKit.switchNetwork.bind(context.appKit),
|
|
41
|
+
getProvider: context.appKit.getProvider.bind(context.appKit),
|
|
42
|
+
switchAccountType: context.appKit.switchAccountType.bind(context.appKit)
|
|
43
|
+
};
|
|
44
|
+
}, [context.appKit]);
|
|
45
|
+
|
|
46
|
+
return stableFunctions;
|
|
39
47
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WcController } from '@reown/appkit-core-react-native';
|
|
2
|
-
import
|
|
2
|
+
import UniversalProvider from '@walletconnect/universal-provider';
|
|
3
3
|
import {
|
|
4
4
|
WalletConnector,
|
|
5
5
|
type AppKitNetwork,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
type ConnectionProperties,
|
|
15
15
|
type RequestArguments
|
|
16
16
|
} from '@reown/appkit-common-react-native';
|
|
17
|
-
import {
|
|
17
|
+
import { SIWXUtil } from '../utils/SIWXUtil';
|
|
18
18
|
|
|
19
19
|
interface WalletConnectConnectorConfig {
|
|
20
20
|
projectId: string;
|
|
@@ -42,7 +42,7 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
override async restoreSession(): Promise<boolean> {
|
|
45
|
-
const provider = this.getProvider() as
|
|
45
|
+
const provider = this.getProvider() as UniversalProvider;
|
|
46
46
|
if (!provider) {
|
|
47
47
|
return false;
|
|
48
48
|
}
|
|
@@ -67,9 +67,15 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
67
67
|
this.wallet = {
|
|
68
68
|
...metadata,
|
|
69
69
|
name: metadata.name,
|
|
70
|
-
icon: metadata.icons?.[0]
|
|
70
|
+
icon: metadata.icons?.[0],
|
|
71
|
+
type: 'walletconnect'
|
|
71
72
|
};
|
|
72
73
|
}
|
|
74
|
+
} else {
|
|
75
|
+
this.wallet = {
|
|
76
|
+
name: 'Unknown Wallet',
|
|
77
|
+
type: 'walletconnect'
|
|
78
|
+
};
|
|
73
79
|
}
|
|
74
80
|
|
|
75
81
|
return true;
|
|
@@ -81,7 +87,7 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
81
87
|
}: {
|
|
82
88
|
projectId: string;
|
|
83
89
|
metadata: Metadata;
|
|
84
|
-
}): Promise<
|
|
90
|
+
}): Promise<UniversalProvider> {
|
|
85
91
|
if (!this.provider) {
|
|
86
92
|
this.provider = (await UniversalProvider.init({
|
|
87
93
|
projectId,
|
|
@@ -90,82 +96,36 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
90
96
|
})) as Provider;
|
|
91
97
|
}
|
|
92
98
|
|
|
93
|
-
return this.provider as
|
|
99
|
+
return this.provider as UniversalProvider;
|
|
94
100
|
}
|
|
95
101
|
|
|
96
102
|
override async connect(opts: ConnectOptions) {
|
|
97
|
-
const {
|
|
103
|
+
const { namespaces, defaultNetwork, universalLink } = opts;
|
|
98
104
|
function onUri(uri: string) {
|
|
99
105
|
WcController.setWcUri(uri);
|
|
100
106
|
}
|
|
101
107
|
|
|
102
|
-
const provider = this.getProvider() as
|
|
108
|
+
const provider = this.getProvider() as UniversalProvider;
|
|
103
109
|
|
|
104
110
|
// @ts-ignore
|
|
105
111
|
provider.on('display_uri', onUri);
|
|
106
112
|
|
|
107
|
-
let session:
|
|
113
|
+
let session: UniversalProvider['session'];
|
|
108
114
|
|
|
109
115
|
// SIWE
|
|
110
116
|
const isEVMOnly = Object.keys(namespaces ?? {}).length === 1 && namespaces?.['eip155'];
|
|
111
|
-
|
|
112
|
-
if (
|
|
117
|
+
|
|
118
|
+
if (isEVMOnly && SIWXUtil.getSIWX()) {
|
|
113
119
|
// 1CA is only supported on EVM
|
|
114
120
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
nonce: await siweConfig.getNonce(),
|
|
120
|
-
methods: namespaces?.['eip155']?.methods,
|
|
121
|
-
chains: params.chains
|
|
122
|
-
},
|
|
121
|
+
session = await SIWXUtil.universalProviderAuthenticate({
|
|
122
|
+
universalProvider: this.provider as UniversalProvider,
|
|
123
|
+
chains: namespaces?.['eip155']?.chains ?? [],
|
|
124
|
+
methods: namespaces?.['eip155']?.methods ?? [],
|
|
123
125
|
universalLink
|
|
124
|
-
);
|
|
125
|
-
|
|
126
|
-
// Auths is an array of signed CACAO objects https://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-74.md
|
|
127
|
-
const signedCacao = result?.auths?.[0];
|
|
128
|
-
if (signedCacao) {
|
|
129
|
-
const { p, s } = signedCacao;
|
|
130
|
-
const chainId = getDidChainId(p.iss);
|
|
131
|
-
const address = getDidAddress(p.iss);
|
|
132
|
-
|
|
133
|
-
try {
|
|
134
|
-
// Kicks off verifyMessage and populates external states
|
|
135
|
-
const message = provider?.client?.formatAuthMessage({
|
|
136
|
-
request: p,
|
|
137
|
-
iss: p.iss
|
|
138
|
-
})!;
|
|
139
|
-
|
|
140
|
-
await SIWEController.verifyMessage({
|
|
141
|
-
message,
|
|
142
|
-
signature: s.s,
|
|
143
|
-
cacao: signedCacao
|
|
144
|
-
});
|
|
145
|
-
|
|
146
|
-
if (address && chainId) {
|
|
147
|
-
const siweSession = {
|
|
148
|
-
address,
|
|
149
|
-
chainId: parseInt(chainId, 10)
|
|
150
|
-
};
|
|
151
|
-
|
|
152
|
-
SIWEController.setSession(siweSession);
|
|
153
|
-
SIWEController.onSignIn?.(siweSession);
|
|
154
|
-
}
|
|
155
|
-
} catch (error) {
|
|
156
|
-
// eslint-disable-next-line no-console
|
|
157
|
-
console.error('Error verifying message', error);
|
|
158
|
-
// eslint-disable-next-line no-console
|
|
159
|
-
await provider.disconnect().catch(console.error);
|
|
160
|
-
// eslint-disable-next-line no-console
|
|
161
|
-
await SIWEController.signOut().catch(console.error);
|
|
162
|
-
throw error;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
session = result?.session;
|
|
126
|
+
});
|
|
166
127
|
} else {
|
|
167
|
-
session = await (this.provider as
|
|
168
|
-
namespaces: {},
|
|
128
|
+
session = await (this.provider as UniversalProvider).connect({
|
|
169
129
|
optionalNamespaces: namespaces
|
|
170
130
|
});
|
|
171
131
|
}
|
|
@@ -175,14 +135,18 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
175
135
|
this.wallet = {
|
|
176
136
|
...metadata,
|
|
177
137
|
name: metadata?.name,
|
|
178
|
-
icon: metadata?.icons?.[0]
|
|
138
|
+
icon: metadata?.icons?.[0],
|
|
139
|
+
type: 'walletconnect'
|
|
179
140
|
};
|
|
180
141
|
} else {
|
|
181
|
-
this.wallet =
|
|
142
|
+
this.wallet = {
|
|
143
|
+
name: 'Unknown Wallet',
|
|
144
|
+
type: 'walletconnect'
|
|
145
|
+
};
|
|
182
146
|
}
|
|
183
147
|
|
|
184
148
|
if (defaultNetwork?.caipNetworkId) {
|
|
185
|
-
(this.provider as
|
|
149
|
+
(this.provider as UniversalProvider).setDefaultChain(defaultNetwork.caipNetworkId);
|
|
186
150
|
}
|
|
187
151
|
|
|
188
152
|
if (session?.sessionProperties) {
|
|
@@ -199,7 +163,7 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
199
163
|
|
|
200
164
|
provider.off('display_uri', onUri);
|
|
201
165
|
|
|
202
|
-
return
|
|
166
|
+
return (session?.namespaces as Namespaces) ?? {};
|
|
203
167
|
}
|
|
204
168
|
|
|
205
169
|
override getProvider(namespace?: ChainNamespace): Provider {
|
|
@@ -207,13 +171,16 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
207
171
|
throw new Error('WalletConnectConnector: Provider not initialized. Call init() first.');
|
|
208
172
|
}
|
|
209
173
|
|
|
210
|
-
const provider = this.provider
|
|
174
|
+
const provider = this.provider;
|
|
211
175
|
|
|
212
176
|
if (namespace) {
|
|
213
|
-
// @ts-ignore
|
|
214
177
|
return {
|
|
215
|
-
...provider,
|
|
216
|
-
|
|
178
|
+
...this.provider,
|
|
179
|
+
connect: async (params?: any) => provider.connect(params) as Promise<any>,
|
|
180
|
+
disconnect: provider.disconnect.bind(provider),
|
|
181
|
+
on: provider.on.bind(provider),
|
|
182
|
+
off: provider.off.bind(provider),
|
|
183
|
+
request: async (args: RequestArguments, chainId?: CaipNetworkId) => {
|
|
217
184
|
const _chainId = this.getChainId(namespace);
|
|
218
185
|
|
|
219
186
|
return provider.request(args, chainId || _chainId);
|
|
@@ -225,7 +192,11 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
225
192
|
}
|
|
226
193
|
|
|
227
194
|
override getNamespaces(): Namespaces {
|
|
228
|
-
|
|
195
|
+
const namespaces =
|
|
196
|
+
((this.provider as UniversalProvider)?.session?.namespaces as Namespaces) ?? {};
|
|
197
|
+
this.namespaces = namespaces;
|
|
198
|
+
|
|
199
|
+
return namespaces;
|
|
229
200
|
}
|
|
230
201
|
|
|
231
202
|
override getProperties(): ConnectionProperties | undefined {
|
|
@@ -237,7 +208,7 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
237
208
|
|
|
238
209
|
let caipNetworkId = network.caipNetworkId ?? `eip155:${network.id}`;
|
|
239
210
|
|
|
240
|
-
(this.provider as
|
|
211
|
+
(this.provider as UniversalProvider).setDefaultChain(caipNetworkId);
|
|
241
212
|
|
|
242
213
|
return Promise.resolve();
|
|
243
214
|
}
|
|
@@ -247,11 +218,12 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
247
218
|
}
|
|
248
219
|
|
|
249
220
|
override getChainId(namespace: ChainNamespace): CaipNetworkId | undefined {
|
|
250
|
-
|
|
221
|
+
const namespaces = this.getNamespaces();
|
|
222
|
+
if (!namespaces || !namespaces[namespace]) {
|
|
251
223
|
return undefined;
|
|
252
224
|
}
|
|
253
225
|
|
|
254
|
-
const chainId = (this.provider as
|
|
226
|
+
const chainId = (this.provider as UniversalProvider).rpcProviders[
|
|
255
227
|
namespace
|
|
256
228
|
]?.getDefaultChain?.();
|
|
257
229
|
|
package/src/hooks/useAccount.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
/* eslint-disable valtio/state-snapshot-rule */
|
|
2
|
+
import { useMemo } from 'react';
|
|
1
3
|
import { useSnapshot } from 'valtio';
|
|
2
|
-
import { ConnectionsController } from '@reown/appkit-core-react-native';
|
|
4
|
+
import { ConnectionsController, CoreHelperUtil } from '@reown/appkit-core-react-native';
|
|
3
5
|
import { useAppKit } from './useAppKit';
|
|
4
6
|
|
|
5
7
|
export function useAccount() {
|
|
@@ -8,15 +10,23 @@ export function useAccount() {
|
|
|
8
10
|
const {
|
|
9
11
|
activeAddress: address,
|
|
10
12
|
activeNamespace,
|
|
11
|
-
|
|
13
|
+
connection,
|
|
14
|
+
networks
|
|
12
15
|
} = useSnapshot(ConnectionsController.state);
|
|
13
16
|
|
|
14
|
-
const
|
|
17
|
+
const activeChain = useMemo(
|
|
18
|
+
() =>
|
|
19
|
+
connection?.caipNetwork
|
|
20
|
+
? networks.find(network => network.caipNetworkId === connection?.caipNetwork)
|
|
21
|
+
: undefined,
|
|
22
|
+
[connection?.caipNetwork, networks]
|
|
23
|
+
);
|
|
15
24
|
|
|
16
25
|
return {
|
|
17
|
-
address: address
|
|
26
|
+
address: CoreHelperUtil.getPlainAddress(address),
|
|
18
27
|
isConnected: !!address,
|
|
19
|
-
chainId:
|
|
28
|
+
chainId: activeChain?.id,
|
|
29
|
+
chain: activeChain,
|
|
20
30
|
namespace: activeNamespace
|
|
21
31
|
};
|
|
22
32
|
}
|