@iota/dapp-kit 0.2.0 → 0.3.0
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/CHANGELOG.md +13 -0
- package/README.md +14 -12
- package/dist/cjs/components/AccountDropdownMenu.css +26 -54
- package/dist/cjs/components/AccountDropdownMenu.css.css +18 -27
- package/dist/cjs/components/AccountDropdownMenu.css.css.map +3 -3
- package/dist/cjs/components/AccountDropdownMenu.css.d.ts +0 -1
- package/dist/cjs/components/AccountDropdownMenu.css.js +4 -6
- package/dist/cjs/components/AccountDropdownMenu.css.js.map +2 -2
- package/dist/cjs/components/AccountDropdownMenu.css.map +3 -3
- package/dist/cjs/components/AccountDropdownMenu.d.ts +3 -1
- package/dist/cjs/components/AccountDropdownMenu.js +25 -21
- package/dist/cjs/components/AccountDropdownMenu.js.map +3 -3
- package/dist/cjs/components/ConnectButton.css +181 -190
- package/dist/cjs/components/ConnectButton.css.map +3 -3
- package/dist/cjs/components/ConnectButton.d.ts +5 -3
- package/dist/cjs/components/ConnectButton.js +344 -669
- package/dist/cjs/components/ConnectButton.js.map +4 -4
- package/dist/cjs/components/IotaClientProvider.d.ts +0 -1
- package/dist/cjs/components/WalletProvider.d.ts +3 -3
- package/dist/cjs/components/WalletProvider.js +107 -152
- package/dist/cjs/components/WalletProvider.js.map +3 -3
- package/dist/cjs/components/connect-modal/ConnectModal.css +214 -172
- package/dist/cjs/components/connect-modal/ConnectModal.css.css +69 -32
- package/dist/cjs/components/connect-modal/ConnectModal.css.css.map +3 -3
- package/dist/cjs/components/connect-modal/ConnectModal.css.d.ts +5 -1
- package/dist/cjs/components/connect-modal/ConnectModal.css.js +15 -7
- package/dist/cjs/components/connect-modal/ConnectModal.css.js.map +2 -2
- package/dist/cjs/components/connect-modal/ConnectModal.css.map +3 -3
- package/dist/cjs/components/connect-modal/ConnectModal.js +411 -707
- package/dist/cjs/components/connect-modal/ConnectModal.js.map +4 -4
- package/dist/cjs/components/connect-modal/InfoSection.css +7 -11
- package/dist/cjs/components/connect-modal/InfoSection.css.css.map +1 -1
- package/dist/cjs/components/connect-modal/InfoSection.css.map +3 -3
- package/dist/cjs/components/connect-modal/InfoSection.js +1 -1
- package/dist/cjs/components/connect-modal/InfoSection.js.map +2 -2
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css +145 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.css +32 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.css.map +7 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.d.ts +5 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.js +35 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.js.map +7 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.map +7 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.d.ts +8 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.js +173 -0
- package/dist/cjs/components/connect-modal/views/ConnectionStatus.js.map +7 -0
- package/dist/cjs/components/connect-modal/views/GetTheWallet.css.css.map +1 -1
- package/dist/cjs/components/connect-modal/views/GetTheWallet.css.map +1 -1
- package/dist/cjs/components/connect-modal/views/GetTheWallet.js +12 -391
- package/dist/cjs/components/connect-modal/views/GetTheWallet.js.map +2 -2
- package/dist/cjs/components/connect-modal/views/GettingStarted.css +144 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.css.css +23 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.css.css.map +7 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.css.d.ts +3 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.css.js +31 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.css.js.map +7 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.css.map +7 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.d.ts +1 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.js +172 -0
- package/dist/cjs/components/connect-modal/views/GettingStarted.js.map +7 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css +95 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.css +17 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.css.map +7 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.d.ts +2 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.js +29 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.js.map +7 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.map +7 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.d.ts +1 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.js +135 -0
- package/dist/cjs/components/connect-modal/views/WhatIsAWallet.js.map +7 -0
- package/dist/cjs/components/connect-modal/views/index.css +115 -124
- package/dist/cjs/components/connect-modal/views/index.css.map +3 -3
- package/dist/cjs/components/connect-modal/views/index.d.ts +2 -1
- package/dist/cjs/components/connect-modal/views/index.js +136 -640
- package/dist/cjs/components/connect-modal/views/index.js.map +4 -4
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.css +10 -22
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.css +2 -5
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.css.map +3 -3
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.js.map +1 -1
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.map +3 -3
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.d.ts +4 -4
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.js +61 -38
- package/dist/cjs/components/connect-modal/wallet-list/WalletList.js.map +4 -4
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css +8 -17
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.css +8 -17
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.css.map +3 -3
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.d.ts +0 -1
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.js +2 -4
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.js.map +2 -2
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.map +3 -3
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.js +5 -32
- package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.js.map +4 -4
- package/dist/cjs/components/icons/BackIcon.d.ts +2 -0
- package/dist/cjs/components/icons/BackIcon.js +36 -0
- package/dist/cjs/components/icons/BackIcon.js.map +7 -0
- package/dist/cjs/components/icons/IotaIcon.js +12 -391
- package/dist/cjs/components/icons/IotaIcon.js.map +2 -2
- package/dist/cjs/components/styling/InjectedThemeStyles.js +2 -0
- package/dist/cjs/components/styling/InjectedThemeStyles.js.map +2 -2
- package/dist/cjs/components/styling/StyleMarker.css +1 -16
- package/dist/cjs/components/styling/StyleMarker.css.css +1 -16
- package/dist/cjs/components/styling/StyleMarker.css.css.map +3 -3
- package/dist/cjs/components/styling/StyleMarker.css.map +3 -3
- package/dist/cjs/components/styling/StyleMarker.d.ts +0 -1
- package/dist/cjs/components/styling/StyleMarker.js +4 -4
- package/dist/cjs/components/styling/StyleMarker.js.map +3 -3
- package/dist/cjs/components/ui/Button.css.css.map +1 -1
- package/dist/cjs/components/ui/Button.css.map +1 -1
- package/dist/cjs/components/ui/Button.d.ts +1 -1
- package/dist/cjs/components/ui/Heading.css.css.map +1 -1
- package/dist/cjs/components/ui/Heading.css.map +1 -1
- package/dist/cjs/components/ui/Heading.d.ts +0 -1
- package/dist/cjs/components/ui/IconButton.css.css.map +1 -1
- package/dist/cjs/components/ui/IconButton.css.map +1 -1
- package/dist/cjs/components/ui/IconButton.d.ts +1 -1
- package/dist/cjs/components/ui/Text.css +7 -11
- package/dist/cjs/components/ui/Text.css.css +7 -11
- package/dist/cjs/components/ui/Text.css.css.map +3 -3
- package/dist/cjs/components/ui/Text.css.d.ts +0 -3
- package/dist/cjs/components/ui/Text.css.js +1 -1
- package/dist/cjs/components/ui/Text.css.js.map +2 -2
- package/dist/cjs/components/ui/Text.css.map +3 -3
- package/dist/cjs/components/ui/Text.d.ts +0 -1
- package/dist/cjs/components/ui/Text.js +1 -1
- package/dist/cjs/components/ui/Text.js.map +2 -2
- package/dist/cjs/constants/styleDataAttribute.js.map +1 -1
- package/dist/cjs/constants/walletDefaults.d.ts +2 -2
- package/dist/cjs/constants/walletDefaults.js +4 -5
- package/dist/cjs/constants/walletDefaults.js.map +2 -2
- package/dist/cjs/constants/walletMutationKeys.d.ts +3 -2
- package/dist/cjs/constants/walletMutationKeys.js +4 -3
- package/dist/cjs/constants/walletMutationKeys.js.map +2 -2
- package/dist/cjs/contexts/walletContext.d.ts +1 -2
- package/dist/cjs/hooks/useIotaClientInfiniteQuery.js.map +2 -2
- package/dist/cjs/hooks/useIotaClientQuery.js +3 -1
- package/dist/cjs/hooks/useIotaClientQuery.js.map +2 -2
- package/dist/cjs/hooks/wallet/useAutoConnectWallet.js +17 -7
- package/dist/cjs/hooks/wallet/useAutoConnectWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useConnectWallet.js +10 -4
- package/dist/cjs/hooks/wallet/useConnectWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useCurrentWallet.d.ts +3 -0
- package/dist/cjs/hooks/wallet/useCurrentWallet.js +7 -3
- package/dist/cjs/hooks/wallet/useCurrentWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useDisconnectWallet.js +11 -6
- package/dist/cjs/hooks/wallet/useDisconnectWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useReportTransactionEffects.d.ts +15 -0
- package/dist/cjs/hooks/wallet/{useSignTransactionBlock.js → useReportTransactionEffects.js} +41 -37
- package/dist/cjs/hooks/wallet/useReportTransactionEffects.js.map +7 -0
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransaction.d.ts +29 -0
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransaction.js +252 -0
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransaction.js.map +7 -0
- package/dist/cjs/hooks/wallet/useSignPersonalMessage.js +21 -27
- package/dist/cjs/hooks/wallet/useSignPersonalMessage.js.map +2 -2
- package/dist/cjs/hooks/wallet/useSignTransaction.d.ts +18 -0
- package/dist/cjs/hooks/wallet/{useSignAndExecuteTransactionBlock.js → useSignTransaction.js} +86 -46
- package/dist/cjs/hooks/wallet/useSignTransaction.js.map +7 -0
- package/dist/cjs/hooks/wallet/useSwitchAccount.js +11 -6
- package/dist/cjs/hooks/wallet/useSwitchAccount.js.map +2 -2
- package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.js +45 -33
- package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js +7 -3
- package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
- package/dist/cjs/hooks/wallet/useWalletsChanged.d.ts +1 -1
- package/dist/cjs/hooks/wallet/useWalletsChanged.js +7 -6
- package/dist/cjs/hooks/wallet/useWalletsChanged.js.map +2 -2
- package/dist/cjs/index.css +232 -241
- package/dist/cjs/index.css.map +3 -3
- package/dist/cjs/index.d.ts +4 -3
- package/dist/cjs/index.js +816 -1042
- package/dist/cjs/index.js.map +4 -4
- package/dist/cjs/themes/lightTheme.js +19 -19
- package/dist/cjs/themes/lightTheme.js.map +1 -1
- package/dist/cjs/themes/themeContract.js.map +1 -1
- package/dist/cjs/types.d.ts +1 -1
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/utils/assertUnreachable.js.map +1 -1
- package/dist/cjs/utils/walletUtils.d.ts +2 -2
- package/dist/cjs/utils/walletUtils.js +2 -2
- package/dist/cjs/utils/walletUtils.js.map +2 -2
- package/dist/cjs/walletStore.d.ts +3 -2
- package/dist/cjs/walletStore.js +8 -4
- package/dist/cjs/walletStore.js.map +2 -2
- package/dist/esm/components/AccountDropdownMenu.css +26 -54
- package/dist/esm/components/AccountDropdownMenu.css.css +18 -27
- package/dist/esm/components/AccountDropdownMenu.css.css.map +3 -3
- package/dist/esm/components/AccountDropdownMenu.css.d.ts +0 -1
- package/dist/esm/components/AccountDropdownMenu.css.js +4 -6
- package/dist/esm/components/AccountDropdownMenu.css.js.map +2 -2
- package/dist/esm/components/AccountDropdownMenu.css.map +3 -3
- package/dist/esm/components/AccountDropdownMenu.d.ts +3 -1
- package/dist/esm/components/AccountDropdownMenu.js +25 -21
- package/dist/esm/components/AccountDropdownMenu.js.map +3 -3
- package/dist/esm/components/ConnectButton.css +181 -190
- package/dist/esm/components/ConnectButton.css.map +3 -3
- package/dist/esm/components/ConnectButton.d.ts +5 -3
- package/dist/esm/components/ConnectButton.js +344 -669
- package/dist/esm/components/ConnectButton.js.map +4 -4
- package/dist/esm/components/IotaClientProvider.d.ts +0 -1
- package/dist/esm/components/WalletProvider.d.ts +3 -3
- package/dist/esm/components/WalletProvider.js +106 -151
- package/dist/esm/components/WalletProvider.js.map +3 -3
- package/dist/esm/components/connect-modal/ConnectModal.css +214 -172
- package/dist/esm/components/connect-modal/ConnectModal.css.css +69 -32
- package/dist/esm/components/connect-modal/ConnectModal.css.css.map +3 -3
- package/dist/esm/components/connect-modal/ConnectModal.css.d.ts +5 -1
- package/dist/esm/components/connect-modal/ConnectModal.css.js +15 -7
- package/dist/esm/components/connect-modal/ConnectModal.css.js.map +2 -2
- package/dist/esm/components/connect-modal/ConnectModal.css.map +3 -3
- package/dist/esm/components/connect-modal/ConnectModal.js +407 -703
- package/dist/esm/components/connect-modal/ConnectModal.js.map +4 -4
- package/dist/esm/components/connect-modal/InfoSection.css +7 -11
- package/dist/esm/components/connect-modal/InfoSection.css.css.map +1 -1
- package/dist/esm/components/connect-modal/InfoSection.css.map +3 -3
- package/dist/esm/components/connect-modal/InfoSection.js +1 -1
- package/dist/esm/components/connect-modal/InfoSection.js.map +2 -2
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css +145 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css.css +32 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css.css.map +7 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css.d.ts +5 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css.js +14 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css.js.map +7 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.css.map +7 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.d.ts +8 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.js +140 -0
- package/dist/esm/components/connect-modal/views/ConnectionStatus.js.map +7 -0
- package/dist/esm/components/connect-modal/views/GetTheWallet.css.css.map +1 -1
- package/dist/esm/components/connect-modal/views/GetTheWallet.css.map +1 -1
- package/dist/esm/components/connect-modal/views/GetTheWallet.js +12 -391
- package/dist/esm/components/connect-modal/views/GetTheWallet.js.map +2 -2
- package/dist/esm/components/connect-modal/views/GettingStarted.css +144 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.css.css +23 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.css.css.map +7 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.css.d.ts +3 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.css.js +10 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.css.js.map +7 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.css.map +7 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.d.ts +1 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.js +139 -0
- package/dist/esm/components/connect-modal/views/GettingStarted.js.map +7 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css +95 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.css +17 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.css.map +7 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.d.ts +2 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.js +8 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.js.map +7 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.map +7 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.d.ts +1 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.js +102 -0
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.js.map +7 -0
- package/dist/esm/components/connect-modal/views/index.css +115 -124
- package/dist/esm/components/connect-modal/views/index.css.map +3 -3
- package/dist/esm/components/connect-modal/views/index.d.ts +2 -1
- package/dist/esm/components/connect-modal/views/index.js +141 -645
- package/dist/esm/components/connect-modal/views/index.js.map +4 -4
- package/dist/esm/components/connect-modal/wallet-list/WalletList.css +10 -22
- package/dist/esm/components/connect-modal/wallet-list/WalletList.css.css +2 -5
- package/dist/esm/components/connect-modal/wallet-list/WalletList.css.css.map +3 -3
- package/dist/esm/components/connect-modal/wallet-list/WalletList.css.js.map +1 -1
- package/dist/esm/components/connect-modal/wallet-list/WalletList.css.map +3 -3
- package/dist/esm/components/connect-modal/wallet-list/WalletList.d.ts +4 -4
- package/dist/esm/components/connect-modal/wallet-list/WalletList.js +61 -38
- package/dist/esm/components/connect-modal/wallet-list/WalletList.js.map +4 -4
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css +8 -17
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.css +8 -17
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.css.map +3 -3
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.d.ts +0 -1
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.js +2 -4
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.js.map +2 -2
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.map +3 -3
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.js +5 -32
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.js.map +4 -4
- package/dist/esm/components/icons/BackIcon.d.ts +2 -0
- package/dist/esm/components/icons/BackIcon.js +15 -0
- package/dist/esm/components/icons/BackIcon.js.map +7 -0
- package/dist/esm/components/icons/IotaIcon.js +12 -391
- package/dist/esm/components/icons/IotaIcon.js.map +2 -2
- package/dist/esm/components/styling/InjectedThemeStyles.js +2 -0
- package/dist/esm/components/styling/InjectedThemeStyles.js.map +2 -2
- package/dist/esm/components/styling/StyleMarker.css +1 -16
- package/dist/esm/components/styling/StyleMarker.css.css +1 -16
- package/dist/esm/components/styling/StyleMarker.css.css.map +3 -3
- package/dist/esm/components/styling/StyleMarker.css.js +4 -4
- package/dist/esm/components/styling/StyleMarker.css.js.map +3 -3
- package/dist/esm/components/styling/StyleMarker.css.map +3 -3
- package/dist/esm/components/styling/StyleMarker.d.ts +0 -1
- package/dist/esm/components/styling/StyleMarker.js +4 -4
- package/dist/esm/components/styling/StyleMarker.js.map +3 -3
- package/dist/esm/components/ui/Button.css.css.map +1 -1
- package/dist/esm/components/ui/Button.css.map +1 -1
- package/dist/esm/components/ui/Button.d.ts +1 -1
- package/dist/esm/components/ui/Heading.css.css.map +1 -1
- package/dist/esm/components/ui/Heading.css.map +1 -1
- package/dist/esm/components/ui/Heading.d.ts +0 -1
- package/dist/esm/components/ui/IconButton.css.css.map +1 -1
- package/dist/esm/components/ui/IconButton.css.map +1 -1
- package/dist/esm/components/ui/IconButton.d.ts +1 -1
- package/dist/esm/components/ui/Text.css +7 -11
- package/dist/esm/components/ui/Text.css.css +7 -11
- package/dist/esm/components/ui/Text.css.css.map +3 -3
- package/dist/esm/components/ui/Text.css.d.ts +0 -3
- package/dist/esm/components/ui/Text.css.js +1 -1
- package/dist/esm/components/ui/Text.css.js.map +2 -2
- package/dist/esm/components/ui/Text.css.map +3 -3
- package/dist/esm/components/ui/Text.d.ts +0 -1
- package/dist/esm/components/ui/Text.js +1 -1
- package/dist/esm/components/ui/Text.js.map +2 -2
- package/dist/esm/constants/styleDataAttribute.js.map +1 -1
- package/dist/esm/constants/walletDefaults.d.ts +2 -2
- package/dist/esm/constants/walletDefaults.js +4 -5
- package/dist/esm/constants/walletDefaults.js.map +2 -2
- package/dist/esm/constants/walletMutationKeys.d.ts +3 -2
- package/dist/esm/constants/walletMutationKeys.js +4 -3
- package/dist/esm/constants/walletMutationKeys.js.map +2 -2
- package/dist/esm/contexts/walletContext.d.ts +1 -2
- package/dist/esm/hooks/useIotaClientInfiniteQuery.js.map +2 -2
- package/dist/esm/hooks/useIotaClientQuery.js +3 -1
- package/dist/esm/hooks/useIotaClientQuery.js.map +2 -2
- package/dist/esm/hooks/wallet/useAutoConnectWallet.js +17 -7
- package/dist/esm/hooks/wallet/useAutoConnectWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useConnectWallet.js +10 -4
- package/dist/esm/hooks/wallet/useConnectWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useCurrentWallet.d.ts +3 -0
- package/dist/esm/hooks/wallet/useCurrentWallet.js +7 -3
- package/dist/esm/hooks/wallet/useCurrentWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useDisconnectWallet.js +11 -6
- package/dist/esm/hooks/wallet/useDisconnectWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useReportTransactionEffects.d.ts +15 -0
- package/dist/esm/hooks/wallet/{useSignTransactionBlock.js → useReportTransactionEffects.js} +38 -34
- package/dist/esm/hooks/wallet/useReportTransactionEffects.js.map +7 -0
- package/dist/esm/hooks/wallet/useSignAndExecuteTransaction.d.ts +29 -0
- package/dist/esm/hooks/wallet/useSignAndExecuteTransaction.js +231 -0
- package/dist/esm/hooks/wallet/useSignAndExecuteTransaction.js.map +7 -0
- package/dist/esm/hooks/wallet/useSignPersonalMessage.js +21 -27
- package/dist/esm/hooks/wallet/useSignPersonalMessage.js.map +2 -2
- package/dist/esm/hooks/wallet/useSignTransaction.d.ts +18 -0
- package/dist/esm/hooks/wallet/{useSignAndExecuteTransactionBlock.js → useSignTransaction.js} +83 -43
- package/dist/esm/hooks/wallet/useSignTransaction.js.map +7 -0
- package/dist/esm/hooks/wallet/useSwitchAccount.js +11 -6
- package/dist/esm/hooks/wallet/useSwitchAccount.js.map +2 -2
- package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.js +44 -32
- package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js +7 -3
- package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
- package/dist/esm/hooks/wallet/useWalletsChanged.d.ts +1 -1
- package/dist/esm/hooks/wallet/useWalletsChanged.js +7 -6
- package/dist/esm/hooks/wallet/useWalletsChanged.js.map +2 -2
- package/dist/esm/index.css +232 -241
- package/dist/esm/index.css.map +3 -3
- package/dist/esm/index.d.ts +4 -3
- package/dist/esm/index.js +818 -1044
- package/dist/esm/index.js.map +4 -4
- package/dist/esm/themes/lightTheme.js +19 -19
- package/dist/esm/themes/lightTheme.js.map +1 -1
- package/dist/esm/themes/themeContract.js.map +1 -1
- package/dist/esm/types.d.ts +1 -1
- package/dist/esm/utils/assertUnreachable.js.map +1 -1
- package/dist/esm/utils/walletUtils.d.ts +2 -2
- package/dist/esm/utils/walletUtils.js +2 -2
- package/dist/esm/utils/walletUtils.js.map +2 -2
- package/dist/esm/walletStore.d.ts +3 -2
- package/dist/esm/walletStore.js +8 -4
- package/dist/esm/walletStore.js.map +2 -2
- package/dist/index.css/package.json +5 -0
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +27 -28
- package/src/components/AccountDropdownMenu.css.ts +11 -17
- package/src/components/AccountDropdownMenu.tsx +10 -5
- package/src/components/ConnectButton.tsx +12 -5
- package/src/components/WalletProvider.tsx +11 -22
- package/src/components/connect-modal/ConnectModal.css.ts +58 -17
- package/src/components/connect-modal/ConnectModal.tsx +101 -16
- package/src/components/connect-modal/views/ConnectionStatus.css.ts +36 -0
- package/src/components/connect-modal/views/ConnectionStatus.tsx +55 -0
- package/src/components/connect-modal/views/GettingStarted.css.ts +26 -0
- package/src/components/connect-modal/views/GettingStarted.tsx +40 -0
- package/src/components/connect-modal/views/WhatIsAWallet.css.ts +20 -0
- package/src/components/connect-modal/views/WhatIsAWallet.tsx +24 -0
- package/src/components/connect-modal/views/index.ts +2 -1
- package/src/components/connect-modal/wallet-list/WalletList.css.ts +1 -5
- package/src/components/connect-modal/wallet-list/WalletList.tsx +25 -11
- package/src/components/connect-modal/wallet-list/WalletListItem.css.ts +6 -14
- package/src/components/connect-modal/wallet-list/WalletListItem.tsx +9 -12
- package/src/components/icons/BackIcon.tsx +18 -0
- package/src/components/icons/IotaIcon.tsx +6 -222
- package/src/components/styling/InjectedThemeStyles.tsx +4 -0
- package/src/components/styling/StyleMarker.css.ts +0 -15
- package/src/components/ui/Text.css.ts +1 -1
- package/src/constants/walletDefaults.ts +6 -5
- package/src/constants/walletMutationKeys.ts +3 -2
- package/src/hooks/useIotaClientInfiniteQuery.ts +2 -1
- package/src/hooks/useIotaClientQuery.ts +3 -1
- package/src/hooks/wallet/useAutoConnectWallet.ts +1 -1
- package/src/hooks/wallet/useConnectWallet.ts +6 -1
- package/src/hooks/wallet/useCurrentWallet.ts +4 -0
- package/src/hooks/wallet/useReportTransactionEffects.ts +87 -0
- package/src/hooks/wallet/useSignAndExecuteTransaction.ts +165 -0
- package/src/hooks/wallet/useSignPersonalMessage.ts +11 -25
- package/src/hooks/wallet/useSignTransaction.ts +117 -0
- package/src/hooks/wallet/useUnsafeBurnerWallet.ts +41 -18
- package/src/hooks/wallet/useWalletsChanged.ts +5 -4
- package/src/index.ts +4 -3
- package/src/themes/lightTheme.ts +19 -19
- package/src/types.ts +1 -1
- package/src/utils/walletUtils.ts +8 -3
- package/src/walletStore.ts +12 -1
- package/dist/cjs/components/connect-modal/views/WalletConnect.css +0 -179
- package/dist/cjs/components/connect-modal/views/WalletConnect.css.css +0 -51
- package/dist/cjs/components/connect-modal/views/WalletConnect.css.css.map +0 -7
- package/dist/cjs/components/connect-modal/views/WalletConnect.css.d.ts +0 -8
- package/dist/cjs/components/connect-modal/views/WalletConnect.css.js +0 -41
- package/dist/cjs/components/connect-modal/views/WalletConnect.css.js.map +0 -7
- package/dist/cjs/components/connect-modal/views/WalletConnect.css.map +0 -7
- package/dist/cjs/components/connect-modal/views/WalletConnect.d.ts +0 -7
- package/dist/cjs/components/connect-modal/views/WalletConnect.js +0 -325
- package/dist/cjs/components/connect-modal/views/WalletConnect.js.map +0 -7
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +0 -15
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +0 -7
- package/dist/cjs/hooks/wallet/useSignTransactionBlock.d.ts +0 -13
- package/dist/cjs/hooks/wallet/useSignTransactionBlock.js.map +0 -7
- package/dist/esm/components/connect-modal/views/WalletConnect.css +0 -179
- package/dist/esm/components/connect-modal/views/WalletConnect.css.css +0 -51
- package/dist/esm/components/connect-modal/views/WalletConnect.css.css.map +0 -7
- package/dist/esm/components/connect-modal/views/WalletConnect.css.d.ts +0 -8
- package/dist/esm/components/connect-modal/views/WalletConnect.css.js +0 -20
- package/dist/esm/components/connect-modal/views/WalletConnect.css.js.map +0 -7
- package/dist/esm/components/connect-modal/views/WalletConnect.css.map +0 -7
- package/dist/esm/components/connect-modal/views/WalletConnect.d.ts +0 -7
- package/dist/esm/components/connect-modal/views/WalletConnect.js +0 -294
- package/dist/esm/components/connect-modal/views/WalletConnect.js.map +0 -7
- package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +0 -15
- package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +0 -7
- package/dist/esm/hooks/wallet/useSignTransactionBlock.d.ts +0 -13
- package/dist/esm/hooks/wallet/useSignTransactionBlock.js.map +0 -7
- package/src/components/connect-modal/views/WalletConnect.css.ts +0 -55
- package/src/components/connect-modal/views/WalletConnect.tsx +0 -79
- package/src/hooks/wallet/useSignAndExecuteTransactionBlock.ts +0 -117
- package/src/hooks/wallet/useSignTransactionBlock.ts +0 -85
package/dist/cjs/index.js
CHANGED
|
@@ -5,6 +5,9 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __typeError = (msg) => {
|
|
9
|
+
throw TypeError(msg);
|
|
10
|
+
};
|
|
8
11
|
var __esm = (fn, res) => function __init() {
|
|
9
12
|
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
10
13
|
};
|
|
@@ -32,23 +35,13 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
32
35
|
mod
|
|
33
36
|
));
|
|
34
37
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
35
|
-
var __accessCheck = (obj, member, msg) =>
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
};
|
|
39
|
-
var __privateGet = (obj, member, getter) => {
|
|
40
|
-
__accessCheck(obj, member, "read from private field");
|
|
41
|
-
return getter ? getter.call(obj) : member.get(obj);
|
|
42
|
-
};
|
|
43
|
-
var __privateAdd = (obj, member, value) => {
|
|
44
|
-
if (member.has(obj))
|
|
45
|
-
throw TypeError("Cannot add the same private member more than once");
|
|
46
|
-
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
47
|
-
};
|
|
38
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
39
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
40
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
48
41
|
|
|
49
|
-
// vanilla-extract-css-ns:src/components/styling/StyleMarker.css.ts.vanilla.css?source
|
|
50
|
-
var
|
|
51
|
-
"vanilla-extract-css-ns:src/components/styling/StyleMarker.css.ts.vanilla.css?source
|
|
42
|
+
// vanilla-extract-css-ns:src/components/styling/StyleMarker.css.ts.vanilla.css?source=OndoZXJlKCopIHsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGNvbG9yOiB2YXIoLS1kYXBwLWtpdC1jb2xvcnMtYm9keSk7CiAgZm9udC1mYW1pbHk6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udEZhbWlseSk7CiAgZm9udC1zaXplOiB2YXIoLS1kYXBwLWtpdC1mb250V2VpZ2h0cy1ub3JtYWwpOwogIGZvbnQtc3R5bGU6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udFN0eWxlKTsKICBmb250LXdlaWdodDogdmFyKC0tZGFwcC1raXQtZm9udFdlaWdodHMtbm9ybWFsKTsKICBsaW5lLWhlaWdodDogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1saW5lSGVpZ2h0KTsKICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1sZXR0ZXJTcGFjaW5nKTsKfQo6d2hlcmUoYnV0dG9uKSB7CiAgYXBwZWFyYW5jZTogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7CiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7CiAgY29sb3I6IGluaGVyaXQ7CiAgYm9yZGVyOiAwOwogIHBhZGRpbmc6IDA7CiAgbWFyZ2luOiAwOwp9Cjp3aGVyZShhKSB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGNvbG9yOiBpbmhlcml0OwogIG91dGxpbmU6IG5vbmU7Cn0KOndoZXJlKG9sLCB1bCkgewogIGxpc3Qtc3R5bGU6IG5vbmU7CiAgbWFyZ2luOiAwOwogIHBhZGRpbmc6IDA7Cn0KOndoZXJlKGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYpIHsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7CiAgbWFyZ2luOiAwOwp9
|
|
43
|
+
var init_StyleMarker_css_ts_vanilla = __esm({
|
|
44
|
+
"vanilla-extract-css-ns:src/components/styling/StyleMarker.css.ts.vanilla.css?source=OndoZXJlKCopIHsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGNvbG9yOiB2YXIoLS1kYXBwLWtpdC1jb2xvcnMtYm9keSk7CiAgZm9udC1mYW1pbHk6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udEZhbWlseSk7CiAgZm9udC1zaXplOiB2YXIoLS1kYXBwLWtpdC1mb250V2VpZ2h0cy1ub3JtYWwpOwogIGZvbnQtc3R5bGU6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udFN0eWxlKTsKICBmb250LXdlaWdodDogdmFyKC0tZGFwcC1raXQtZm9udFdlaWdodHMtbm9ybWFsKTsKICBsaW5lLWhlaWdodDogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1saW5lSGVpZ2h0KTsKICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1sZXR0ZXJTcGFjaW5nKTsKfQo6d2hlcmUoYnV0dG9uKSB7CiAgYXBwZWFyYW5jZTogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7CiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7CiAgY29sb3I6IGluaGVyaXQ7CiAgYm9yZGVyOiAwOwogIHBhZGRpbmc6IDA7CiAgbWFyZ2luOiAwOwp9Cjp3aGVyZShhKSB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGNvbG9yOiBpbmhlcml0OwogIG91dGxpbmU6IG5vbmU7Cn0KOndoZXJlKG9sLCB1bCkgewogIGxpc3Qtc3R5bGU6IG5vbmU7CiAgbWFyZ2luOiAwOwogIHBhZGRpbmc6IDA7Cn0KOndoZXJlKGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYpIHsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7CiAgbWFyZ2luOiAwOwp9"() {
|
|
52
45
|
}
|
|
53
46
|
});
|
|
54
47
|
|
|
@@ -56,7 +49,7 @@ var init_ = __esm({
|
|
|
56
49
|
var require_StyleMarker_css = __commonJS({
|
|
57
50
|
"src/components/styling/StyleMarker.css.ts"() {
|
|
58
51
|
"use strict";
|
|
59
|
-
|
|
52
|
+
init_StyleMarker_css_ts_vanilla();
|
|
60
53
|
}
|
|
61
54
|
});
|
|
62
55
|
|
|
@@ -83,9 +76,10 @@ __export(src_exports, {
|
|
|
83
76
|
useIotaClientMutation: () => useIotaClientMutation,
|
|
84
77
|
useIotaClientQueries: () => useIotaClientQueries,
|
|
85
78
|
useIotaClientQuery: () => useIotaClientQuery,
|
|
86
|
-
|
|
79
|
+
useReportTransactionEffects: () => useReportTransactionEffects,
|
|
80
|
+
useSignAndExecuteTransaction: () => useSignAndExecuteTransaction,
|
|
87
81
|
useSignPersonalMessage: () => useSignPersonalMessage,
|
|
88
|
-
|
|
82
|
+
useSignTransaction: () => useSignTransaction,
|
|
89
83
|
useSwitchAccount: () => useSwitchAccount,
|
|
90
84
|
useWallets: () => useWallets
|
|
91
85
|
});
|
|
@@ -93,12 +87,130 @@ module.exports = __toCommonJS(src_exports);
|
|
|
93
87
|
|
|
94
88
|
// src/components/connect-modal/ConnectModal.tsx
|
|
95
89
|
var Dialog = __toESM(require("@radix-ui/react-dialog"));
|
|
90
|
+
var import_clsx6 = __toESM(require("clsx"));
|
|
96
91
|
var import_react8 = require("react");
|
|
97
92
|
|
|
98
|
-
// src/
|
|
93
|
+
// src/hooks/wallet/useConnectWallet.ts
|
|
94
|
+
var import_wallet_standard = require("@iota/wallet-standard");
|
|
95
|
+
var import_react_query = require("@tanstack/react-query");
|
|
96
|
+
|
|
97
|
+
// src/constants/walletMutationKeys.ts
|
|
98
|
+
var walletMutationKeys = {
|
|
99
|
+
all: { baseScope: "wallet" },
|
|
100
|
+
connectWallet: formMutationKeyFn("connect-wallet"),
|
|
101
|
+
autoconnectWallet: formMutationKeyFn("autoconnect-wallet"),
|
|
102
|
+
disconnectWallet: formMutationKeyFn("disconnect-wallet"),
|
|
103
|
+
signPersonalMessage: formMutationKeyFn("sign-personal-message"),
|
|
104
|
+
signTransaction: formMutationKeyFn("sign-transaction"),
|
|
105
|
+
signAndExecuteTransaction: formMutationKeyFn("sign-and-execute-transaction"),
|
|
106
|
+
switchAccount: formMutationKeyFn("switch-account"),
|
|
107
|
+
reportTransactionEffects: formMutationKeyFn("report-transaction-effects")
|
|
108
|
+
};
|
|
109
|
+
function formMutationKeyFn(baseEntity) {
|
|
110
|
+
return function mutationKeyFn(additionalKeys = []) {
|
|
111
|
+
return [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// src/hooks/wallet/useWalletStore.ts
|
|
116
|
+
var import_react2 = require("react");
|
|
117
|
+
var import_zustand = require("zustand");
|
|
118
|
+
|
|
119
|
+
// src/contexts/walletContext.ts
|
|
120
|
+
var import_react = require("react");
|
|
121
|
+
var WalletContext = (0, import_react.createContext)(null);
|
|
122
|
+
|
|
123
|
+
// src/hooks/wallet/useWalletStore.ts
|
|
124
|
+
function useWalletStore(selector) {
|
|
125
|
+
const store = (0, import_react2.useContext)(WalletContext);
|
|
126
|
+
if (!store) {
|
|
127
|
+
throw new Error(
|
|
128
|
+
"Could not find WalletContext. Ensure that you have set up the WalletProvider."
|
|
129
|
+
);
|
|
130
|
+
}
|
|
131
|
+
return (0, import_zustand.useStore)(store, selector);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// src/hooks/wallet/useConnectWallet.ts
|
|
135
|
+
function useConnectWallet({
|
|
136
|
+
mutationKey,
|
|
137
|
+
...mutationOptions
|
|
138
|
+
} = {}) {
|
|
139
|
+
const setWalletConnected = useWalletStore((state) => state.setWalletConnected);
|
|
140
|
+
const setConnectionStatus = useWalletStore((state) => state.setConnectionStatus);
|
|
141
|
+
return (0, import_react_query.useMutation)({
|
|
142
|
+
mutationKey: walletMutationKeys.connectWallet(mutationKey),
|
|
143
|
+
mutationFn: async ({ wallet, accountAddress, ...connectArgs }) => {
|
|
144
|
+
try {
|
|
145
|
+
setConnectionStatus("connecting");
|
|
146
|
+
const connectResult = await wallet.features["standard:connect"].connect(connectArgs);
|
|
147
|
+
const connectedIotaAccounts = connectResult.accounts.filter(
|
|
148
|
+
(account) => account.chains.some(import_wallet_standard.isSupportedChain)
|
|
149
|
+
);
|
|
150
|
+
const selectedAccount = getSelectedAccount(connectedIotaAccounts, accountAddress);
|
|
151
|
+
setWalletConnected(
|
|
152
|
+
wallet,
|
|
153
|
+
connectedIotaAccounts,
|
|
154
|
+
selectedAccount,
|
|
155
|
+
connectResult.supportedIntents
|
|
156
|
+
);
|
|
157
|
+
return { accounts: connectedIotaAccounts };
|
|
158
|
+
} catch (error) {
|
|
159
|
+
setConnectionStatus("disconnected");
|
|
160
|
+
throw error;
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
...mutationOptions
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
function getSelectedAccount(connectedAccounts, accountAddress) {
|
|
167
|
+
if (connectedAccounts.length === 0) {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
170
|
+
if (accountAddress) {
|
|
171
|
+
const selectedAccount = connectedAccounts.find(
|
|
172
|
+
(account) => account.address === accountAddress
|
|
173
|
+
);
|
|
174
|
+
return selectedAccount ?? connectedAccounts[0];
|
|
175
|
+
}
|
|
176
|
+
return connectedAccounts[0];
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
// src/utils/walletUtils.ts
|
|
180
|
+
var import_wallet_standard2 = require("@iota/wallet-standard");
|
|
181
|
+
function getRegisteredWallets(preferredWallets, walletFilter) {
|
|
182
|
+
const walletsApi = (0, import_wallet_standard2.getWallets)();
|
|
183
|
+
const wallets = walletsApi.get();
|
|
184
|
+
const iotaWallets = wallets.filter(
|
|
185
|
+
(wallet) => (0, import_wallet_standard2.isWalletWithRequiredFeatureSet)(wallet) && (!walletFilter || walletFilter(wallet))
|
|
186
|
+
);
|
|
187
|
+
return [
|
|
188
|
+
// Preferred wallets, in order:
|
|
189
|
+
...preferredWallets.map((name) => iotaWallets.find((wallet) => wallet.name === name)).filter(Boolean),
|
|
190
|
+
// Wallets in default order:
|
|
191
|
+
...iotaWallets.filter((wallet) => !preferredWallets.includes(wallet.name))
|
|
192
|
+
];
|
|
193
|
+
}
|
|
194
|
+
function getWalletUniqueIdentifier(wallet) {
|
|
195
|
+
return wallet?.id ?? wallet?.name;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// src/components/icons/BackIcon.tsx
|
|
99
199
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
200
|
+
function BackIcon(props) {
|
|
201
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { width: 24, height: 24, fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
202
|
+
"path",
|
|
203
|
+
{
|
|
204
|
+
d: "M7.57 12.262c0 .341.13.629.403.895l5.175 5.059c.204.205.45.307.751.307.609 0 1.101-.485 1.101-1.087 0-.293-.123-.574-.349-.8L10.14 12.27l4.511-4.375A1.13 1.13 0 0 0 15 7.087C15 6.485 14.508 6 13.9 6c-.295 0-.54.103-.752.308l-5.175 5.058c-.28.28-.404.56-.404.896Z",
|
|
205
|
+
fill: "currentColor"
|
|
206
|
+
}
|
|
207
|
+
) });
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
// src/components/icons/CloseIcon.tsx
|
|
211
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
100
212
|
function CloseIcon(props) {
|
|
101
|
-
return /* @__PURE__ */ (0,
|
|
213
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { width: 10, height: 10, fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
102
214
|
"path",
|
|
103
215
|
{
|
|
104
216
|
d: "M9.708.292a.999.999 0 0 0-1.413 0l-3.289 3.29L1.717.291A.999.999 0 0 0 .305 1.705l3.289 3.289-3.29 3.289a.999.999 0 1 0 1.413 1.412l3.29-3.289 3.288 3.29a.999.999 0 0 0 1.413-1.413l-3.29-3.29 3.29-3.288a.999.999 0 0 0 0-1.413Z",
|
|
@@ -109,7 +221,7 @@ function CloseIcon(props) {
|
|
|
109
221
|
|
|
110
222
|
// src/components/styling/StyleMarker.tsx
|
|
111
223
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
112
|
-
var
|
|
224
|
+
var import_react3 = require("react");
|
|
113
225
|
|
|
114
226
|
// src/constants/styleDataAttribute.ts
|
|
115
227
|
var styleDataAttributeName = "data-dapp-kit";
|
|
@@ -118,22 +230,22 @@ var styleDataAttribute = { [styleDataAttributeName]: "" };
|
|
|
118
230
|
|
|
119
231
|
// src/components/styling/StyleMarker.tsx
|
|
120
232
|
var import_StyleMarker_css = __toESM(require_StyleMarker_css());
|
|
121
|
-
var
|
|
122
|
-
var StyleMarker = (0,
|
|
233
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
234
|
+
var StyleMarker = (0, import_react3.forwardRef)(({ children, ...props }, forwardedRef) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_slot.Slot, { ref: forwardedRef, ...props, ...styleDataAttribute, children }));
|
|
123
235
|
StyleMarker.displayName = "StyleMarker";
|
|
124
236
|
|
|
125
237
|
// src/components/ui/Heading.tsx
|
|
126
238
|
var import_react_slot2 = require("@radix-ui/react-slot");
|
|
127
239
|
var import_clsx = __toESM(require("clsx"));
|
|
128
|
-
var
|
|
240
|
+
var import_react4 = require("react");
|
|
129
241
|
|
|
130
242
|
// src/components/ui/Heading.css.ts
|
|
131
243
|
var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
132
244
|
var headingVariants = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "Heading__12b5l8i0", variantClassNames: { size: { sm: "Heading_headingVariants_size_sm__12b5l8i1", md: "Heading_headingVariants_size_md__12b5l8i2", lg: "Heading_headingVariants_size_lg__12b5l8i3", xl: "Heading_headingVariants_size_xl__12b5l8i4" }, weight: { normal: "Heading_headingVariants_weight_normal__12b5l8i5", bold: "Heading_headingVariants_weight_bold__12b5l8i6" }, truncate: { true: "Heading_headingVariants_truncate_true__12b5l8i7" } }, defaultVariants: { size: "lg", weight: "bold" }, compoundVariants: [] });
|
|
133
245
|
|
|
134
246
|
// src/components/ui/Heading.tsx
|
|
135
|
-
var
|
|
136
|
-
var Heading = (0,
|
|
247
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
248
|
+
var Heading = (0, import_react4.forwardRef)(
|
|
137
249
|
({
|
|
138
250
|
children,
|
|
139
251
|
className,
|
|
@@ -144,13 +256,13 @@ var Heading = (0, import_react2.forwardRef)(
|
|
|
144
256
|
truncate,
|
|
145
257
|
...headingProps
|
|
146
258
|
}, forwardedRef) => {
|
|
147
|
-
return /* @__PURE__ */ (0,
|
|
259
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
148
260
|
import_react_slot2.Slot,
|
|
149
261
|
{
|
|
150
262
|
...headingProps,
|
|
151
263
|
ref: forwardedRef,
|
|
152
264
|
className: (0, import_clsx.default)(headingVariants({ size, weight, truncate }), className),
|
|
153
|
-
children: asChild ? children : /* @__PURE__ */ (0,
|
|
265
|
+
children: asChild ? children : /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Tag, { children })
|
|
154
266
|
}
|
|
155
267
|
);
|
|
156
268
|
}
|
|
@@ -160,196 +272,247 @@ Heading.displayName = "Heading";
|
|
|
160
272
|
// src/components/ui/IconButton.tsx
|
|
161
273
|
var import_react_slot3 = require("@radix-ui/react-slot");
|
|
162
274
|
var import_clsx2 = __toESM(require("clsx"));
|
|
163
|
-
var
|
|
275
|
+
var import_react5 = require("react");
|
|
164
276
|
|
|
165
277
|
// src/components/ui/IconButton.css.ts
|
|
166
278
|
var container = "IconButton_container__ap1qll0";
|
|
167
279
|
|
|
168
280
|
// src/components/ui/IconButton.tsx
|
|
169
|
-
var
|
|
170
|
-
var IconButton = (0,
|
|
281
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
282
|
+
var IconButton = (0, import_react5.forwardRef)(
|
|
171
283
|
({ className, asChild = false, ...props }, forwardedRef) => {
|
|
172
284
|
const Comp = asChild ? import_react_slot3.Slot : "button";
|
|
173
|
-
return /* @__PURE__ */ (0,
|
|
285
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Comp, { ...props, className: (0, import_clsx2.default)(container, className), ref: forwardedRef });
|
|
174
286
|
}
|
|
175
287
|
);
|
|
176
288
|
IconButton.displayName = "Button";
|
|
177
289
|
|
|
178
290
|
// src/components/connect-modal/ConnectModal.css.ts
|
|
179
|
-
var
|
|
180
|
-
var
|
|
291
|
+
var backButtonContainer = "ConnectModal_backButtonContainer__17mljma6";
|
|
292
|
+
var closeButtonContainer = "ConnectModal_closeButtonContainer__17mljma7";
|
|
293
|
+
var content = "ConnectModal_content__17mljma2";
|
|
181
294
|
var overlay = "ConnectModal_overlay__17mljma0";
|
|
182
|
-
var
|
|
295
|
+
var selectedViewContainer = "ConnectModal_selectedViewContainer__17mljma5";
|
|
183
296
|
var title = "ConnectModal_title__17mljma1";
|
|
184
|
-
var
|
|
297
|
+
var viewContainer = "ConnectModal_viewContainer__17mljma4";
|
|
298
|
+
var walletListContainer = "ConnectModal_walletListContainer__17mljma9";
|
|
299
|
+
var walletListContainerWithViewSelected = "ConnectModal_walletListContainerWithViewSelected__17mljmaa";
|
|
300
|
+
var walletListContent = "ConnectModal_walletListContent__17mljma8";
|
|
301
|
+
var whatIsAWalletButton = "ConnectModal_whatIsAWalletButton__17mljma3";
|
|
185
302
|
|
|
186
|
-
// src/
|
|
187
|
-
var
|
|
188
|
-
var
|
|
303
|
+
// src/components/ui/Button.tsx
|
|
304
|
+
var import_react_slot4 = require("@radix-ui/react-slot");
|
|
305
|
+
var import_clsx3 = __toESM(require("clsx"));
|
|
306
|
+
var import_react6 = require("react");
|
|
189
307
|
|
|
190
|
-
// src/
|
|
191
|
-
var
|
|
192
|
-
var
|
|
308
|
+
// src/components/ui/Button.css.ts
|
|
309
|
+
var import_createRuntimeFn2 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
310
|
+
var buttonVariants = (0, import_createRuntimeFn2.createRuntimeFn)({ defaultClassName: "Button_buttonVariants__ctbx2n0", variantClassNames: { variant: { primary: "Button_buttonVariants_variant_primary__ctbx2n1", outline: "Button_buttonVariants_variant_outline__ctbx2n2" }, size: { md: "Button_buttonVariants_size_md__ctbx2n3", lg: "Button_buttonVariants_size_lg__ctbx2n4" } }, defaultVariants: { variant: "primary", size: "md" }, compoundVariants: [] });
|
|
193
311
|
|
|
194
|
-
// src/
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
312
|
+
// src/components/ui/Button.tsx
|
|
313
|
+
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
314
|
+
var Button = (0, import_react6.forwardRef)(
|
|
315
|
+
({ className, variant, size, asChild = false, ...props }, forwardedRef) => {
|
|
316
|
+
const Comp = asChild ? import_react_slot4.Slot : "button";
|
|
317
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
318
|
+
Comp,
|
|
319
|
+
{
|
|
320
|
+
...props,
|
|
321
|
+
className: (0, import_clsx3.default)(buttonVariants({ variant, size }), className),
|
|
322
|
+
ref: forwardedRef
|
|
323
|
+
}
|
|
200
324
|
);
|
|
201
325
|
}
|
|
202
|
-
|
|
203
|
-
|
|
326
|
+
);
|
|
327
|
+
Button.displayName = "Button";
|
|
204
328
|
|
|
205
|
-
// src/
|
|
206
|
-
|
|
207
|
-
|
|
329
|
+
// src/components/ui/Text.tsx
|
|
330
|
+
var import_react_slot5 = require("@radix-ui/react-slot");
|
|
331
|
+
var import_clsx4 = __toESM(require("clsx"));
|
|
332
|
+
var import_react7 = require("react");
|
|
333
|
+
|
|
334
|
+
// src/components/ui/Text.css.ts
|
|
335
|
+
var import_createRuntimeFn3 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
336
|
+
var textVariants = (0, import_createRuntimeFn3.createRuntimeFn)({ defaultClassName: "Text__aprhbd0", variantClassNames: { size: { sm: "Text_textVariants_size_sm__aprhbd1" }, weight: { normal: "Text_textVariants_weight_normal__aprhbd2", medium: "Text_textVariants_weight_medium__aprhbd3", bold: "Text_textVariants_weight_bold__aprhbd4" }, color: { muted: "Text_textVariants_color_muted__aprhbd5", danger: "Text_textVariants_color_danger__aprhbd6" }, mono: { true: "Text_textVariants_mono_true__aprhbd7" } }, defaultVariants: { size: "sm", weight: "normal" }, compoundVariants: [] });
|
|
337
|
+
|
|
338
|
+
// src/components/ui/Text.tsx
|
|
339
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
340
|
+
var Text = (0, import_react7.forwardRef)(
|
|
341
|
+
({
|
|
342
|
+
children,
|
|
343
|
+
className,
|
|
344
|
+
asChild = false,
|
|
345
|
+
as: Tag = "div",
|
|
346
|
+
size,
|
|
347
|
+
weight,
|
|
348
|
+
color,
|
|
349
|
+
mono,
|
|
350
|
+
...textProps
|
|
351
|
+
}, forwardedRef) => {
|
|
352
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
353
|
+
import_react_slot5.Slot,
|
|
354
|
+
{
|
|
355
|
+
...textProps,
|
|
356
|
+
ref: forwardedRef,
|
|
357
|
+
className: (0, import_clsx4.default)(textVariants({ size, weight, color, mono }), className),
|
|
358
|
+
children: asChild ? children : /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Tag, { children })
|
|
359
|
+
}
|
|
360
|
+
);
|
|
361
|
+
}
|
|
362
|
+
);
|
|
363
|
+
Text.displayName = "Text";
|
|
364
|
+
|
|
365
|
+
// src/components/connect-modal/views/ConnectionStatus.css.ts
|
|
366
|
+
var connectionStatus = "ConnectionStatus_connectionStatus__c5q1ll3";
|
|
367
|
+
var container2 = "ConnectionStatus_container__c5q1ll0";
|
|
368
|
+
var retryButtonContainer = "ConnectionStatus_retryButtonContainer__c5q1ll4";
|
|
369
|
+
var title2 = "ConnectionStatus_title__c5q1ll2";
|
|
370
|
+
var walletIcon = "ConnectionStatus_walletIcon__c5q1ll1";
|
|
371
|
+
|
|
372
|
+
// src/components/connect-modal/views/ConnectionStatus.tsx
|
|
373
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
374
|
+
function ConnectionStatus({
|
|
375
|
+
selectedWallet,
|
|
376
|
+
hadConnectionError,
|
|
377
|
+
onRetryConnection
|
|
378
|
+
}) {
|
|
379
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: container2, children: [
|
|
380
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
381
|
+
"img",
|
|
382
|
+
{
|
|
383
|
+
className: walletIcon,
|
|
384
|
+
src: selectedWallet.icon,
|
|
385
|
+
alt: `${selectedWallet.name} logo`
|
|
386
|
+
}
|
|
387
|
+
),
|
|
388
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: title2, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Heading, { as: "h2", size: "xl", children: [
|
|
389
|
+
"Opening ",
|
|
390
|
+
selectedWallet.name
|
|
391
|
+
] }) }),
|
|
392
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: connectionStatus, children: hadConnectionError ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { color: "danger", children: "Connection failed" }) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { color: "muted", children: "Confirm connection in the wallet..." }) }),
|
|
393
|
+
hadConnectionError ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: retryButtonContainer, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
394
|
+
Button,
|
|
395
|
+
{
|
|
396
|
+
type: "button",
|
|
397
|
+
variant: "outline",
|
|
398
|
+
onClick: () => onRetryConnection(selectedWallet),
|
|
399
|
+
children: "Retry Connection"
|
|
400
|
+
}
|
|
401
|
+
) }) : null
|
|
402
|
+
] });
|
|
208
403
|
}
|
|
209
404
|
|
|
210
|
-
// src/components/connect-modal/
|
|
211
|
-
var
|
|
405
|
+
// src/components/connect-modal/InfoSection.css.ts
|
|
406
|
+
var container3 = "InfoSection_container__1d1nrmt0";
|
|
212
407
|
|
|
213
|
-
// src/
|
|
214
|
-
var
|
|
215
|
-
function
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
);
|
|
221
|
-
return [
|
|
222
|
-
// Preferred wallets, in order:
|
|
223
|
-
...preferredWallets.map((name) => iotaWallets.find((wallet) => wallet.name === name)).filter(Boolean),
|
|
224
|
-
// Wallets in default order:
|
|
225
|
-
...iotaWallets.filter((wallet) => !preferredWallets.includes(wallet.name))
|
|
226
|
-
];
|
|
408
|
+
// src/components/connect-modal/InfoSection.tsx
|
|
409
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
410
|
+
function InfoSection({ title: title3, children }) {
|
|
411
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("section", { className: container3, children: [
|
|
412
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Heading, { as: "h3", size: "sm", weight: "normal", children: title3 }),
|
|
413
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Text, { weight: "medium", color: "muted", children })
|
|
414
|
+
] });
|
|
227
415
|
}
|
|
228
|
-
|
|
229
|
-
|
|
416
|
+
|
|
417
|
+
// src/components/connect-modal/views/GettingStarted.css.ts
|
|
418
|
+
var container4 = "GettingStarted_container__qu36t90";
|
|
419
|
+
var content2 = "GettingStarted_content__qu36t91";
|
|
420
|
+
var installButtonContainer = "GettingStarted_installButtonContainer__qu36t92";
|
|
421
|
+
|
|
422
|
+
// src/components/connect-modal/views/GettingStarted.tsx
|
|
423
|
+
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
424
|
+
function GettingStarted() {
|
|
425
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: container4, children: [
|
|
426
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Heading, { as: "h2", children: "Get Started with IOTA" }),
|
|
427
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: content2, children: [
|
|
428
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(InfoSection, { title: "Install the IOTA Wallet Extension", children: "We recommend pinning IOTA Wallet to your taskbar for quicker access." }),
|
|
429
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(InfoSection, { title: "Create or Import a Wallet", children: "Be sure to back up your wallet using a secure method. Never share your secret phrase with anyone." }),
|
|
430
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(InfoSection, { title: "Refresh Your Browser", children: "Once you set up your wallet, refresh this window browser to load up the extension." }),
|
|
431
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: installButtonContainer, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Button, { variant: "outline", asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
432
|
+
"a",
|
|
433
|
+
{
|
|
434
|
+
href: "https://chrome.google.com/webstore/detail/iota-wallet/opcgpfmipidbgpenhmajoajpbobppdil",
|
|
435
|
+
target: "_blank",
|
|
436
|
+
rel: "noreferrer",
|
|
437
|
+
children: "Install Wallet Extension"
|
|
438
|
+
}
|
|
439
|
+
) }) })
|
|
440
|
+
] })
|
|
441
|
+
] });
|
|
230
442
|
}
|
|
231
443
|
|
|
232
|
-
// src/
|
|
233
|
-
var
|
|
234
|
-
var
|
|
444
|
+
// src/components/connect-modal/views/WhatIsAWallet.css.ts
|
|
445
|
+
var container5 = "WhatIsAWallet_container__1kdcimq0";
|
|
446
|
+
var content3 = "WhatIsAWallet_content__1kdcimq1";
|
|
235
447
|
|
|
236
|
-
// src/
|
|
237
|
-
var
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
};
|
|
247
|
-
function formMutationKeyFn(baseEntity) {
|
|
248
|
-
return function mutationKeyFn(additionalKeys = []) {
|
|
249
|
-
return [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];
|
|
250
|
-
};
|
|
448
|
+
// src/components/connect-modal/views/WhatIsAWallet.tsx
|
|
449
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
450
|
+
function WhatIsAWallet() {
|
|
451
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: container5, children: [
|
|
452
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Heading, { as: "h2", children: "What is a Wallet" }),
|
|
453
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: content3, children: [
|
|
454
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(InfoSection, { title: "Easy Login", children: "No need to create new accounts and passwords for every website. Just connect your wallet and get going." }),
|
|
455
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(InfoSection, { title: "Store your Digital Assets", children: "Send, receive, store, and display your digital assets like NFTs & coins." })
|
|
456
|
+
] })
|
|
457
|
+
] });
|
|
251
458
|
}
|
|
252
459
|
|
|
253
|
-
// src/hooks/wallet/
|
|
254
|
-
function
|
|
255
|
-
|
|
256
|
-
...mutationOptions
|
|
257
|
-
} = {}) {
|
|
258
|
-
const setWalletConnected = useWalletStore((state) => state.setWalletConnected);
|
|
259
|
-
const setConnectionStatus = useWalletStore((state) => state.setConnectionStatus);
|
|
260
|
-
return (0, import_react_query.useMutation)({
|
|
261
|
-
mutationKey: walletMutationKeys.connectWallet(mutationKey),
|
|
262
|
-
mutationFn: async ({ wallet, accountAddress, ...connectArgs }) => {
|
|
263
|
-
try {
|
|
264
|
-
setConnectionStatus("connecting");
|
|
265
|
-
const connectResult = await wallet.features["standard:connect"].connect(connectArgs);
|
|
266
|
-
const connectedIotaAccounts = connectResult.accounts.filter(
|
|
267
|
-
(account) => account.chains.some(import_wallet_standard2.isSupportedChain)
|
|
268
|
-
);
|
|
269
|
-
const selectedAccount = getSelectedAccount(connectedIotaAccounts, accountAddress);
|
|
270
|
-
setWalletConnected(wallet, connectedIotaAccounts, selectedAccount);
|
|
271
|
-
return { accounts: connectedIotaAccounts };
|
|
272
|
-
} catch (error) {
|
|
273
|
-
setConnectionStatus("disconnected");
|
|
274
|
-
throw error;
|
|
275
|
-
}
|
|
276
|
-
},
|
|
277
|
-
...mutationOptions
|
|
278
|
-
});
|
|
460
|
+
// src/hooks/wallet/useWallets.ts
|
|
461
|
+
function useWallets() {
|
|
462
|
+
return useWalletStore((state) => state.wallets);
|
|
279
463
|
}
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
464
|
+
|
|
465
|
+
// src/components/icons/IotaIcon.tsx
|
|
466
|
+
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
467
|
+
function IotaIcon(props) {
|
|
468
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("svg", { width: 28, height: 28, fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
|
|
469
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("rect", { width: 28, height: 28, rx: 6, fill: "#6FBCF0" }),
|
|
470
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
471
|
+
"path",
|
|
472
|
+
{
|
|
473
|
+
fillRule: "evenodd",
|
|
474
|
+
clipRule: "evenodd",
|
|
475
|
+
d: "M7.942 20.527A6.875 6.875 0 0 0 13.957 24c2.51 0 4.759-1.298 6.015-3.473a6.875 6.875 0 0 0 0-6.945l-5.29-9.164a.837.837 0 0 0-1.45 0l-5.29 9.164a6.875 6.875 0 0 0 0 6.945Zm4.524-11.75 1.128-1.953a.418.418 0 0 1 .725 0l4.34 7.516a5.365 5.365 0 0 1 .449 4.442 4.675 4.675 0 0 0-.223-.73c-.599-1.512-1.954-2.68-4.029-3.47-1.426-.54-2.336-1.336-2.706-2.364-.476-1.326.021-2.77.316-3.44Zm-1.923 3.332L9.255 14.34a5.373 5.373 0 0 0 0 5.43 5.373 5.373 0 0 0 4.702 2.714 5.38 5.38 0 0 0 3.472-1.247c.125-.314.51-1.462.034-2.646-.44-1.093-1.5-1.965-3.15-2.594-1.864-.707-3.076-1.811-3.6-3.28a4.601 4.601 0 0 1-.17-.608Z",
|
|
476
|
+
fill: "#fff"
|
|
477
|
+
}
|
|
478
|
+
)
|
|
479
|
+
] });
|
|
291
480
|
}
|
|
292
481
|
|
|
293
482
|
// src/components/connect-modal/wallet-list/WalletList.css.ts
|
|
294
|
-
var
|
|
483
|
+
var container6 = "WalletList_container__1tkdegw0";
|
|
295
484
|
|
|
296
485
|
// src/components/connect-modal/wallet-list/WalletListItem.tsx
|
|
297
|
-
var
|
|
486
|
+
var import_clsx5 = require("clsx");
|
|
298
487
|
|
|
299
488
|
// src/components/connect-modal/wallet-list/WalletListItem.css.ts
|
|
300
|
-
var
|
|
489
|
+
var container7 = "WalletListItem_container__1vrvezk0";
|
|
301
490
|
var selectedWalletItem = "WalletListItem_selectedWalletItem__1vrvezk2";
|
|
302
|
-
var
|
|
491
|
+
var walletIcon2 = "WalletListItem_walletIcon__1vrvezk3";
|
|
303
492
|
var walletItem = "WalletListItem_walletItem__1vrvezk1";
|
|
304
|
-
var walletName = "WalletListItem_walletName__1vrvezk3";
|
|
305
|
-
|
|
306
|
-
// src/components/icons/ArrowRightIcon.tsx
|
|
307
|
-
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
308
|
-
function ArrowRightIcon(props) {
|
|
309
|
-
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
310
|
-
"svg",
|
|
311
|
-
{
|
|
312
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
313
|
-
width: "24",
|
|
314
|
-
height: "24",
|
|
315
|
-
viewBox: "0 0 24 24",
|
|
316
|
-
fill: "none",
|
|
317
|
-
...props,
|
|
318
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
319
|
-
"path",
|
|
320
|
-
{
|
|
321
|
-
fill: "currentColor",
|
|
322
|
-
d: "m10.707 6.293 5 5a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414-1.414L13.586 12 9.293 7.707a1 1 0 0 1 1.414-1.414Z"
|
|
323
|
-
}
|
|
324
|
-
)
|
|
325
|
-
}
|
|
326
|
-
);
|
|
327
|
-
}
|
|
328
493
|
|
|
329
494
|
// src/components/connect-modal/wallet-list/WalletListItem.tsx
|
|
330
|
-
var
|
|
331
|
-
function WalletListItem({ name, icon
|
|
332
|
-
return /* @__PURE__ */ (0,
|
|
495
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
496
|
+
function WalletListItem({ name, icon, onClick, isSelected = false }) {
|
|
497
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("li", { className: container7, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
|
|
333
498
|
"button",
|
|
334
499
|
{
|
|
335
|
-
className: (0,
|
|
500
|
+
className: (0, import_clsx5.clsx)(walletItem, { [selectedWalletItem]: isSelected }),
|
|
336
501
|
type: "button",
|
|
337
502
|
onClick,
|
|
338
503
|
children: [
|
|
339
|
-
/* @__PURE__ */ (0,
|
|
340
|
-
|
|
341
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Heading, { size: "md", truncate: true, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { children: name }) })
|
|
342
|
-
] }),
|
|
343
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ArrowRightIcon, {})
|
|
504
|
+
typeof icon === "string" ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("img", { className: walletIcon2, src: icon, alt: `${name} logo` }) : icon,
|
|
505
|
+
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Heading, { size: "md", truncate: true, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { children: name }) })
|
|
344
506
|
]
|
|
345
507
|
}
|
|
346
508
|
) });
|
|
347
509
|
}
|
|
348
510
|
|
|
349
511
|
// src/components/connect-modal/wallet-list/WalletList.tsx
|
|
350
|
-
var
|
|
351
|
-
function WalletList({ selectedWalletName,
|
|
352
|
-
|
|
512
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
513
|
+
function WalletList({ selectedWalletName, onPlaceholderClick, onSelect }) {
|
|
514
|
+
const wallets = useWallets();
|
|
515
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("ul", { className: container6, children: wallets.length > 0 ? wallets.map((wallet) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
353
516
|
WalletListItem,
|
|
354
517
|
{
|
|
355
518
|
name: wallet.name,
|
|
@@ -358,597 +521,126 @@ function WalletList({ selectedWalletName, onSelect, wallets }) {
|
|
|
358
521
|
onClick: () => onSelect(wallet)
|
|
359
522
|
},
|
|
360
523
|
getWalletUniqueIdentifier(wallet)
|
|
361
|
-
))
|
|
524
|
+
)) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
525
|
+
WalletListItem,
|
|
526
|
+
{
|
|
527
|
+
name: "IOTA Wallet",
|
|
528
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(IotaIcon, {}),
|
|
529
|
+
onClick: onPlaceholderClick,
|
|
530
|
+
isSelected: true
|
|
531
|
+
}
|
|
532
|
+
) });
|
|
362
533
|
}
|
|
363
534
|
|
|
364
|
-
// src/components/connect-modal/
|
|
365
|
-
var
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
var successContainer = "WalletConnect_successContainer__uo0o3s4";
|
|
371
|
-
var walletConnectContainer = "WalletConnect_walletConnectContainer__uo0o3s0";
|
|
372
|
-
var walletConnectFooter = "WalletConnect_walletConnectFooter__uo0o3s1";
|
|
373
|
-
|
|
374
|
-
// src/components/ui/Button.tsx
|
|
375
|
-
var import_react_slot4 = require("@radix-ui/react-slot");
|
|
376
|
-
var import_clsx4 = __toESM(require("clsx"));
|
|
377
|
-
var import_react6 = require("react");
|
|
378
|
-
|
|
379
|
-
// src/components/ui/Button.css.ts
|
|
380
|
-
var import_createRuntimeFn2 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
381
|
-
var buttonVariants = (0, import_createRuntimeFn2.createRuntimeFn)({ defaultClassName: "Button_buttonVariants__ctbx2n0", variantClassNames: { variant: { primary: "Button_buttonVariants_variant_primary__ctbx2n1", outline: "Button_buttonVariants_variant_outline__ctbx2n2" }, size: { md: "Button_buttonVariants_size_md__ctbx2n3", lg: "Button_buttonVariants_size_lg__ctbx2n4" } }, defaultVariants: { variant: "primary", size: "md" }, compoundVariants: [] });
|
|
382
|
-
|
|
383
|
-
// src/components/ui/Button.tsx
|
|
384
|
-
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
385
|
-
var Button = (0, import_react6.forwardRef)(
|
|
386
|
-
({ className, variant, size, asChild = false, ...props }, forwardedRef) => {
|
|
387
|
-
const Comp = asChild ? import_react_slot4.Slot : "button";
|
|
388
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
389
|
-
Comp,
|
|
390
|
-
{
|
|
391
|
-
...props,
|
|
392
|
-
className: (0, import_clsx4.default)(buttonVariants({ variant, size }), className),
|
|
393
|
-
ref: forwardedRef
|
|
394
|
-
}
|
|
395
|
-
);
|
|
396
|
-
}
|
|
397
|
-
);
|
|
398
|
-
Button.displayName = "Button";
|
|
399
|
-
|
|
400
|
-
// src/components/connect-modal/views/WalletConnect.tsx
|
|
401
|
-
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
402
|
-
function WalletConnectListView({ wallets, onOpenChange }) {
|
|
403
|
-
const [selectedWallet, setSelectedWallet] = (0, import_react7.useState)();
|
|
535
|
+
// src/components/connect-modal/ConnectModal.tsx
|
|
536
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
537
|
+
function ConnectModal({ trigger, open, defaultOpen, onOpenChange }) {
|
|
538
|
+
const [isModalOpen, setModalOpen] = (0, import_react8.useState)(open ?? defaultOpen);
|
|
539
|
+
const [currentView, setCurrentView] = (0, import_react8.useState)();
|
|
540
|
+
const [selectedWallet, setSelectedWallet] = (0, import_react8.useState)();
|
|
404
541
|
const { mutate, isError } = useConnectWallet();
|
|
405
|
-
|
|
406
|
-
if (getWalletUniqueIdentifier(selectedWallet) !== getWalletUniqueIdentifier(wallet)) {
|
|
407
|
-
setSelectedWallet(wallet);
|
|
408
|
-
connectWallet(wallet);
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
function resetSelection() {
|
|
542
|
+
const resetSelection = () => {
|
|
412
543
|
setSelectedWallet(void 0);
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
544
|
+
setCurrentView(void 0);
|
|
545
|
+
};
|
|
546
|
+
const handleOpenChange = (open2) => {
|
|
547
|
+
if (!open2) {
|
|
416
548
|
resetSelection();
|
|
417
549
|
}
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
550
|
+
setModalOpen(open2);
|
|
551
|
+
onOpenChange?.(open2);
|
|
552
|
+
};
|
|
553
|
+
const connectWallet = (wallet) => {
|
|
554
|
+
setCurrentView("connection-status");
|
|
421
555
|
mutate(
|
|
422
556
|
{ wallet },
|
|
423
557
|
{
|
|
424
558
|
onSuccess: () => handleOpenChange(false)
|
|
425
559
|
}
|
|
426
560
|
);
|
|
561
|
+
};
|
|
562
|
+
let modalContent;
|
|
563
|
+
switch (currentView) {
|
|
564
|
+
case "what-is-a-wallet":
|
|
565
|
+
modalContent = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(WhatIsAWallet, {});
|
|
566
|
+
break;
|
|
567
|
+
case "getting-started":
|
|
568
|
+
modalContent = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(GettingStarted, {});
|
|
569
|
+
break;
|
|
570
|
+
case "connection-status":
|
|
571
|
+
modalContent = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
572
|
+
ConnectionStatus,
|
|
573
|
+
{
|
|
574
|
+
selectedWallet,
|
|
575
|
+
hadConnectionError: isError,
|
|
576
|
+
onRetryConnection: connectWallet
|
|
577
|
+
}
|
|
578
|
+
);
|
|
579
|
+
break;
|
|
580
|
+
default:
|
|
581
|
+
modalContent = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(WhatIsAWallet, {});
|
|
427
582
|
}
|
|
428
|
-
return /* @__PURE__ */ (0,
|
|
429
|
-
/* @__PURE__ */ (0,
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
onSelect: handleSelectWallet,
|
|
434
|
-
wallets
|
|
435
|
-
}
|
|
436
|
-
) }),
|
|
437
|
-
selectedWallet && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: walletConnectFooter, children: isError ? /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: errorContainer, children: [
|
|
438
|
-
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: errorMessage, children: "Connection failed" }),
|
|
439
|
-
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
440
|
-
Button,
|
|
583
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(Dialog.Root, { open: open ?? isModalOpen, onOpenChange: handleOpenChange, children: [
|
|
584
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Dialog.Trigger, { asChild: true, children: trigger }),
|
|
585
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Dialog.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Dialog.Overlay, { className: overlay, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(Dialog.Content, { className: content, "aria-describedby": void 0, children: [
|
|
586
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
587
|
+
"div",
|
|
441
588
|
{
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
children:
|
|
589
|
+
className: (0, import_clsx6.default)(walletListContainer, {
|
|
590
|
+
[walletListContainerWithViewSelected]: !!currentView
|
|
591
|
+
}),
|
|
592
|
+
children: [
|
|
593
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: walletListContent, children: [
|
|
594
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Dialog.Title, { className: title, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Heading, { as: "h2", children: "Connect a Wallet" }) }),
|
|
595
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
596
|
+
WalletList,
|
|
597
|
+
{
|
|
598
|
+
selectedWalletName: getWalletUniqueIdentifier(
|
|
599
|
+
selectedWallet
|
|
600
|
+
),
|
|
601
|
+
onPlaceholderClick: () => setCurrentView("getting-started"),
|
|
602
|
+
onSelect: (wallet) => {
|
|
603
|
+
if (getWalletUniqueIdentifier(selectedWallet) !== getWalletUniqueIdentifier(wallet)) {
|
|
604
|
+
setSelectedWallet(wallet);
|
|
605
|
+
connectWallet(wallet);
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
)
|
|
610
|
+
] }),
|
|
611
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
612
|
+
"button",
|
|
613
|
+
{
|
|
614
|
+
className: whatIsAWalletButton,
|
|
615
|
+
onClick: () => setCurrentView("what-is-a-wallet"),
|
|
616
|
+
type: "button",
|
|
617
|
+
children: "What is a Wallet?"
|
|
618
|
+
}
|
|
619
|
+
)
|
|
620
|
+
]
|
|
446
621
|
}
|
|
447
|
-
)
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
"Opening ",
|
|
451
|
-
selectedWallet.name,
|
|
452
|
-
"..."
|
|
453
|
-
] }),
|
|
454
|
-
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: separator2 }),
|
|
455
|
-
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: confirmText, children: "Please confirm the connection in your wallet" })
|
|
456
|
-
] }) })
|
|
457
|
-
] });
|
|
458
|
-
}
|
|
459
|
-
|
|
460
|
-
// src/utils/stateStorage.ts
|
|
461
|
-
function createInMemoryStore() {
|
|
462
|
-
const store = /* @__PURE__ */ new Map();
|
|
463
|
-
return {
|
|
464
|
-
getItem(key) {
|
|
465
|
-
return store.get(key);
|
|
466
|
-
},
|
|
467
|
-
setItem(key, value) {
|
|
468
|
-
store.set(key, value);
|
|
469
|
-
},
|
|
470
|
-
removeItem(key) {
|
|
471
|
-
store.delete(key);
|
|
472
|
-
}
|
|
473
|
-
};
|
|
474
|
-
}
|
|
475
|
-
|
|
476
|
-
// src/constants/walletDefaults.ts
|
|
477
|
-
var IOTA_WALLET_NAME = "Iota Wallet";
|
|
478
|
-
var DEFAULT_STORAGE = typeof window !== "undefined" && window.localStorage ? localStorage : createInMemoryStore();
|
|
479
|
-
var DEFAULT_STORAGE_KEY = "iota-dapp-kit:wallet-connection-info";
|
|
480
|
-
var DEFAULT_REQUIRED_FEATURES = [
|
|
481
|
-
"iota:signTransactionBlock"
|
|
482
|
-
];
|
|
483
|
-
var DEFAULT_PREFERRED_WALLETS = [IOTA_WALLET_NAME];
|
|
484
|
-
var WALLET_CHROME_EXTENSION_ID = "TODO";
|
|
485
|
-
var WALLET_DOWNLOAD_URL = "https://chromewebstore.google.com/detail/" + WALLET_CHROME_EXTENSION_ID;
|
|
486
|
-
|
|
487
|
-
// src/components/icons/ArrowTopRightIcon.tsx
|
|
488
|
-
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
489
|
-
function ArrowTopRightIcon(props) {
|
|
490
|
-
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
491
|
-
"svg",
|
|
492
|
-
{
|
|
493
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
494
|
-
width: "24",
|
|
495
|
-
height: "24",
|
|
496
|
-
viewBox: "0 0 24 24",
|
|
497
|
-
fill: "none",
|
|
498
|
-
...props,
|
|
499
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
500
|
-
"path",
|
|
622
|
+
),
|
|
623
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
624
|
+
"div",
|
|
501
625
|
{
|
|
502
|
-
|
|
503
|
-
|
|
626
|
+
className: (0, import_clsx6.default)(viewContainer, {
|
|
627
|
+
[selectedViewContainer]: !!currentView
|
|
628
|
+
}),
|
|
629
|
+
children: [
|
|
630
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: backButtonContainer, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
631
|
+
IconButton,
|
|
632
|
+
{
|
|
633
|
+
type: "button",
|
|
634
|
+
"aria-label": "Back",
|
|
635
|
+
onClick: () => resetSelection(),
|
|
636
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(BackIcon, {})
|
|
637
|
+
}
|
|
638
|
+
) }),
|
|
639
|
+
modalContent
|
|
640
|
+
]
|
|
504
641
|
}
|
|
505
|
-
)
|
|
506
|
-
|
|
507
|
-
);
|
|
508
|
-
}
|
|
509
|
-
|
|
510
|
-
// src/components/icons/IotaIcon.tsx
|
|
511
|
-
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
512
|
-
function IotaIcon(props) {
|
|
513
|
-
return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
|
|
514
|
-
"svg",
|
|
515
|
-
{
|
|
516
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
517
|
-
width: "24",
|
|
518
|
-
height: "24",
|
|
519
|
-
viewBox: "0 0 24 24",
|
|
520
|
-
fill: "none",
|
|
521
|
-
...props,
|
|
522
|
-
children: [
|
|
523
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
524
|
-
"path",
|
|
525
|
-
{
|
|
526
|
-
d: "M18.2698 2.25899C18.2698 2.95431 17.7023 3.51797 17.0023 3.51797C16.3024 3.51797 15.7349 2.95431 15.7349 2.25899C15.7349 1.56367 16.3024 1 17.0023 1C17.7023 1 18.2698 1.56367 18.2698 2.25899Z",
|
|
527
|
-
fill: "currentColor"
|
|
528
|
-
}
|
|
529
|
-
),
|
|
530
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
531
|
-
"path",
|
|
532
|
-
{
|
|
533
|
-
d: "M19.6946 20.0436C19.6946 20.7389 19.1272 21.3026 18.4272 21.3026C17.7272 21.3026 17.1598 20.7389 17.1598 20.0436C17.1598 19.3483 17.7272 18.7846 18.4272 18.7846C19.1272 18.7846 19.6946 19.3483 19.6946 20.0436Z",
|
|
534
|
-
fill: "currentColor"
|
|
535
|
-
}
|
|
536
|
-
),
|
|
537
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
538
|
-
"path",
|
|
539
|
-
{
|
|
540
|
-
d: "M17.3647 6.66519C17.952 6.66519 18.4282 6.19222 18.4282 5.60878C18.4282 5.02534 17.952 4.55236 17.3647 4.55236C16.7773 4.55236 16.3012 5.02534 16.3012 5.60878C16.3012 6.19222 16.7773 6.66519 17.3647 6.66519Z",
|
|
541
|
-
fill: "currentColor"
|
|
542
|
-
}
|
|
543
|
-
),
|
|
544
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
545
|
-
"path",
|
|
546
|
-
{
|
|
547
|
-
d: "M21.2564 6.01379C21.2564 6.59723 20.7802 7.0702 20.1929 7.0702C19.6055 7.0702 19.1294 6.59723 19.1294 6.01379C19.1294 5.43034 19.6055 4.95737 20.1929 4.95737C20.7802 4.95737 21.2564 5.43034 21.2564 6.01379Z",
|
|
548
|
-
fill: "currentColor"
|
|
549
|
-
}
|
|
550
|
-
),
|
|
551
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
552
|
-
"path",
|
|
553
|
-
{
|
|
554
|
-
d: "M17.0027 9.34312C17.5028 9.34312 17.9083 8.94036 17.9083 8.44353C17.9083 7.9467 17.5028 7.54394 17.0027 7.54394C16.5026 7.54394 16.0971 7.9467 16.0971 8.44353C16.0971 8.94036 16.5026 9.34312 17.0027 9.34312Z",
|
|
555
|
-
fill: "currentColor"
|
|
556
|
-
}
|
|
557
|
-
),
|
|
558
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
559
|
-
"path",
|
|
560
|
-
{
|
|
561
|
-
d: "M20.7373 8.82346C20.7373 9.32029 20.3318 9.72305 19.8317 9.72305C19.3315 9.72305 18.9261 9.32029 18.9261 8.82346C18.9261 8.32663 19.3315 7.92388 19.8317 7.92388C20.3318 7.92388 20.7373 8.32663 20.7373 8.82346Z",
|
|
562
|
-
fill: "currentColor"
|
|
563
|
-
}
|
|
564
|
-
),
|
|
565
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
566
|
-
"path",
|
|
567
|
-
{
|
|
568
|
-
d: "M22.0944 10.6007C22.5945 10.6007 23 10.1979 23 9.70111C23 9.20428 22.5945 8.80152 22.0944 8.80152C21.5942 8.80152 21.1888 9.20428 21.1888 9.70111C21.1888 10.1979 21.5942 10.6007 22.0944 10.6007Z",
|
|
569
|
-
fill: "currentColor"
|
|
570
|
-
}
|
|
571
|
-
),
|
|
572
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
573
|
-
"path",
|
|
574
|
-
{
|
|
575
|
-
d: "M19.7849 11.0954C19.7849 11.5297 19.4305 11.8817 18.9933 11.8817C18.5562 11.8817 18.2018 11.5297 18.2018 11.0954C18.2018 10.6611 18.5562 10.3091 18.9933 10.3091C19.4305 10.3091 19.7849 10.6611 19.7849 11.0954Z",
|
|
576
|
-
fill: "currentColor"
|
|
577
|
-
}
|
|
578
|
-
),
|
|
579
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
580
|
-
"path",
|
|
581
|
-
{
|
|
582
|
-
d: "M16.1651 11.4988C16.6023 11.4988 16.9567 11.1467 16.9567 10.7124C16.9567 10.2782 16.6023 9.92612 16.1651 9.92612C15.7279 9.92612 15.3735 10.2782 15.3735 10.7124C15.3735 11.1467 15.7279 11.4988 16.1651 11.4988Z",
|
|
583
|
-
fill: "currentColor"
|
|
584
|
-
}
|
|
585
|
-
),
|
|
586
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
587
|
-
"path",
|
|
588
|
-
{
|
|
589
|
-
d: "M22.0722 11.9708C22.0722 12.405 21.7178 12.7571 21.2806 12.7571C20.8434 12.7571 20.489 12.405 20.489 11.9708C20.489 11.5365 20.8434 11.1845 21.2806 11.1845C21.7178 11.1845 22.0722 11.5365 22.0722 11.9708Z",
|
|
590
|
-
fill: "currentColor"
|
|
591
|
-
}
|
|
592
|
-
),
|
|
593
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
594
|
-
"path",
|
|
595
|
-
{
|
|
596
|
-
d: "M17.8618 13.5243C18.2372 13.5243 18.5415 13.222 18.5415 12.849C18.5415 12.4761 18.2372 12.1738 17.8618 12.1738C17.4864 12.1738 17.182 12.4761 17.182 12.849C17.182 13.222 17.4864 13.5243 17.8618 13.5243Z",
|
|
597
|
-
fill: "currentColor"
|
|
598
|
-
}
|
|
599
|
-
),
|
|
600
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
601
|
-
"path",
|
|
602
|
-
{
|
|
603
|
-
d: "M20.8296 13.7024C20.8296 14.0753 20.5252 14.3776 20.1498 14.3776C19.7744 14.3776 19.4701 14.0753 19.4701 13.7024C19.4701 13.3294 19.7744 13.0271 20.1498 13.0271C20.5252 13.0271 20.8296 13.3294 20.8296 13.7024Z",
|
|
604
|
-
fill: "currentColor"
|
|
605
|
-
}
|
|
606
|
-
),
|
|
607
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
608
|
-
"path",
|
|
609
|
-
{
|
|
610
|
-
d: "M15.0558 13.12C15.4312 13.12 15.7356 12.8177 15.7356 12.4448C15.7356 12.0719 15.4312 11.7695 15.0558 11.7695C14.6804 11.7695 14.3761 12.0719 14.3761 12.4448C14.3761 12.8177 14.6804 13.12 15.0558 13.12Z",
|
|
611
|
-
fill: "currentColor"
|
|
612
|
-
}
|
|
613
|
-
),
|
|
614
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
615
|
-
"path",
|
|
616
|
-
{
|
|
617
|
-
d: "M17.1825 14.0625C17.1825 14.3729 16.9292 14.6245 16.6168 14.6245C16.3043 14.6245 16.0511 14.3729 16.0511 14.0625C16.0511 13.7521 16.3043 13.5005 16.6168 13.5005C16.9292 13.5005 17.1825 13.7521 17.1825 14.0625Z",
|
|
618
|
-
fill: "currentColor"
|
|
619
|
-
}
|
|
620
|
-
),
|
|
621
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
622
|
-
"path",
|
|
623
|
-
{
|
|
624
|
-
d: "M17.59 16.1771C17.8649 16.1771 18.0878 15.9557 18.0878 15.6826C18.0878 15.4095 17.8649 15.1882 17.59 15.1882C17.3151 15.1882 17.0923 15.4095 17.0923 15.6826C17.0923 15.9557 17.3151 16.1771 17.59 16.1771Z",
|
|
625
|
-
fill: "currentColor"
|
|
626
|
-
}
|
|
627
|
-
),
|
|
628
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
629
|
-
"path",
|
|
630
|
-
{
|
|
631
|
-
d: "M16.7985 16.0872C16.7985 16.311 16.6159 16.4924 16.3906 16.4924C16.1654 16.4924 15.9828 16.311 15.9828 16.0872C15.9828 15.8635 16.1654 15.6821 16.3906 15.6821C16.6159 15.6821 16.7985 15.8635 16.7985 16.0872Z",
|
|
632
|
-
fill: "currentColor"
|
|
633
|
-
}
|
|
634
|
-
),
|
|
635
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
636
|
-
"path",
|
|
637
|
-
{
|
|
638
|
-
d: "M15.3273 15.3222C15.6022 15.3222 15.825 15.1008 15.825 14.8278C15.825 14.5547 15.6022 14.3333 15.3273 14.3333C15.0524 14.3333 14.8295 14.5547 14.8295 14.8278C14.8295 15.1008 15.0524 15.3222 15.3273 15.3222Z",
|
|
639
|
-
fill: "currentColor"
|
|
640
|
-
}
|
|
641
|
-
),
|
|
642
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
643
|
-
"path",
|
|
644
|
-
{
|
|
645
|
-
d: "M14.3535 13.6818C14.3535 13.9922 14.1003 14.2438 13.7878 14.2438C13.4754 14.2438 13.2221 13.9922 13.2221 13.6818C13.2221 13.3714 13.4754 13.1198 13.7878 13.1198C14.1003 13.1198 14.3535 13.3714 14.3535 13.6818Z",
|
|
646
|
-
fill: "currentColor"
|
|
647
|
-
}
|
|
648
|
-
),
|
|
649
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
650
|
-
"path",
|
|
651
|
-
{
|
|
652
|
-
d: "M13.7663 10.0159C14.0788 10.0159 14.3321 9.76428 14.3321 9.45391C14.3321 9.14355 14.0788 8.89194 13.7663 8.89194C13.4539 8.89194 13.2006 9.14355 13.2006 9.45391C13.2006 9.76428 13.4539 10.0159 13.7663 10.0159Z",
|
|
653
|
-
fill: "currentColor"
|
|
654
|
-
}
|
|
655
|
-
),
|
|
656
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
657
|
-
"path",
|
|
658
|
-
{
|
|
659
|
-
d: "M14.5115 7.54296C14.5115 7.81603 14.2886 8.03741 14.0137 8.03741C13.7388 8.03741 13.516 7.81603 13.516 7.54296C13.516 7.26988 13.7388 7.04851 14.0137 7.04851C14.2886 7.04851 14.5115 7.26988 14.5115 7.54296Z",
|
|
660
|
-
fill: "currentColor"
|
|
661
|
-
}
|
|
662
|
-
),
|
|
663
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
664
|
-
"path",
|
|
665
|
-
{
|
|
666
|
-
d: "M14.5576 6.41961C14.7828 6.41961 14.9654 6.23823 14.9654 6.01447C14.9654 5.79072 14.7828 5.60933 14.5576 5.60933C14.3323 5.60933 14.1497 5.79072 14.1497 6.01447C14.1497 6.23823 14.3323 6.41961 14.5576 6.41961Z",
|
|
667
|
-
fill: "currentColor"
|
|
668
|
-
}
|
|
669
|
-
),
|
|
670
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
671
|
-
"path",
|
|
672
|
-
{
|
|
673
|
-
d: "M14.1056 5.16003C14.1056 5.4331 13.8827 5.65448 13.6078 5.65448C13.3329 5.65448 13.1101 5.4331 13.1101 5.16003C13.1101 4.88695 13.3329 4.66558 13.6078 4.66558C13.8827 4.66558 14.1056 4.88695 14.1056 5.16003Z",
|
|
674
|
-
fill: "currentColor"
|
|
675
|
-
}
|
|
676
|
-
),
|
|
677
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
678
|
-
"path",
|
|
679
|
-
{
|
|
680
|
-
d: "M18.8818 15.4808C19.1943 15.4808 19.4475 15.2292 19.4475 14.9189C19.4475 14.6085 19.1943 14.3569 18.8818 14.3569C18.5694 14.3569 18.3161 14.6085 18.3161 14.9189C18.3161 15.2292 18.5694 15.4808 18.8818 15.4808Z",
|
|
681
|
-
fill: "currentColor"
|
|
682
|
-
}
|
|
683
|
-
),
|
|
684
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
685
|
-
"path",
|
|
686
|
-
{
|
|
687
|
-
d: "M12.8827 4.43881C12.8827 4.74918 12.6294 5.00078 12.3169 5.00078C12.0045 5.00078 11.7512 4.74918 11.7512 4.43881C11.7512 4.12845 12.0045 3.87684 12.3169 3.87684C12.6294 3.87684 12.8827 4.12845 12.8827 4.43881Z",
|
|
688
|
-
fill: "currentColor"
|
|
689
|
-
}
|
|
690
|
-
),
|
|
691
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
692
|
-
"path",
|
|
693
|
-
{
|
|
694
|
-
d: "M12.7029 7.38447C13.0153 7.38447 13.2686 7.13287 13.2686 6.8225C13.2686 6.51214 13.0153 6.26053 12.7029 6.26053C12.3904 6.26053 12.1371 6.51214 12.1371 6.8225C12.1371 7.13287 12.3904 7.38447 12.7029 7.38447Z",
|
|
695
|
-
fill: "currentColor"
|
|
696
|
-
}
|
|
697
|
-
),
|
|
698
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
699
|
-
"path",
|
|
700
|
-
{
|
|
701
|
-
d: "M12.7485 8.98132C12.7485 9.35424 12.4442 9.65656 12.0688 9.65656C11.6934 9.65656 11.389 9.35424 11.389 8.98132C11.389 8.6084 11.6934 8.30609 12.0688 8.30609C12.4442 8.30609 12.7485 8.6084 12.7485 8.98132Z",
|
|
702
|
-
fill: "currentColor"
|
|
703
|
-
}
|
|
704
|
-
),
|
|
705
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
706
|
-
"path",
|
|
707
|
-
{
|
|
708
|
-
d: "M10.0077 9.65685C10.4448 9.65685 10.7992 9.3048 10.7992 8.87053C10.7992 8.43626 10.4448 8.08421 10.0077 8.08421C9.57049 8.08421 9.21609 8.43626 9.21609 8.87053C9.21609 9.3048 9.57049 9.65685 10.0077 9.65685Z",
|
|
709
|
-
fill: "currentColor"
|
|
710
|
-
}
|
|
711
|
-
),
|
|
712
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
713
|
-
"path",
|
|
714
|
-
{
|
|
715
|
-
d: "M8.51443 9.29686C8.51443 9.79369 8.10898 10.1964 7.60883 10.1964C7.10868 10.1964 6.70323 9.79369 6.70323 9.29686C6.70323 8.80003 7.10868 8.39727 7.60883 8.39727C8.10898 8.39727 8.51443 8.80003 8.51443 9.29686Z",
|
|
716
|
-
fill: "currentColor"
|
|
717
|
-
}
|
|
718
|
-
),
|
|
719
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
720
|
-
"path",
|
|
721
|
-
{
|
|
722
|
-
d: "M4.98453 11.4774C5.57188 11.4774 6.04801 11.0044 6.04801 10.421C6.04801 9.83755 5.57188 9.36458 4.98453 9.36458C4.39719 9.36458 3.92105 9.83755 3.92105 10.421C3.92105 11.0044 4.39719 11.4774 4.98453 11.4774Z",
|
|
723
|
-
fill: "currentColor"
|
|
724
|
-
}
|
|
725
|
-
),
|
|
726
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
727
|
-
"path",
|
|
728
|
-
{
|
|
729
|
-
d: "M3.53481 12.3773C3.53481 13.0726 2.96737 13.6363 2.2674 13.6363C1.56744 13.6363 1 13.0726 1 12.3773C1 11.682 1.56744 11.1183 2.2674 11.1183C2.96737 11.1183 3.53481 11.682 3.53481 12.3773Z",
|
|
730
|
-
fill: "currentColor"
|
|
731
|
-
}
|
|
732
|
-
),
|
|
733
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
734
|
-
"path",
|
|
735
|
-
{
|
|
736
|
-
d: "M3.92108 8.846C4.50842 8.846 4.98455 8.37303 4.98455 7.78959C4.98455 7.20614 4.50842 6.73317 3.92108 6.73317C3.33373 6.73317 2.8576 7.20614 2.8576 7.78959C2.8576 8.37303 3.33373 8.846 3.92108 8.846Z",
|
|
737
|
-
fill: "currentColor"
|
|
738
|
-
}
|
|
739
|
-
),
|
|
740
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
741
|
-
"path",
|
|
742
|
-
{
|
|
743
|
-
d: "M7.45097 6.66545C7.45097 7.16228 7.04552 7.56504 6.54537 7.56504C6.04522 7.56504 5.63977 7.16228 5.63977 6.66545C5.63977 6.16862 6.04522 5.76586 6.54537 5.76586C7.04552 5.76586 7.45097 6.16862 7.45097 6.66545Z",
|
|
744
|
-
fill: "currentColor"
|
|
745
|
-
}
|
|
746
|
-
),
|
|
747
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
748
|
-
"path",
|
|
749
|
-
{
|
|
750
|
-
d: "M6.16173 5.18211C6.66188 5.18211 7.06733 4.77935 7.06733 4.28252C7.06733 3.78569 6.66188 3.38293 6.16173 3.38293C5.66158 3.38293 5.25613 3.78569 5.25613 4.28252C5.25613 4.77935 5.66158 5.18211 6.16173 5.18211Z",
|
|
751
|
-
fill: "currentColor"
|
|
752
|
-
}
|
|
753
|
-
),
|
|
754
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
755
|
-
"path",
|
|
756
|
-
{
|
|
757
|
-
d: "M9.35214 3.85619C9.35214 4.29046 8.99774 4.64251 8.56057 4.64251C8.12339 4.64251 7.76899 4.29046 7.76899 3.85619C7.76899 3.42192 8.12339 3.06987 8.56057 3.06987C8.99774 3.06987 9.35214 3.42192 9.35214 3.85619Z",
|
|
758
|
-
fill: "currentColor"
|
|
759
|
-
}
|
|
760
|
-
),
|
|
761
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
762
|
-
"path",
|
|
763
|
-
{
|
|
764
|
-
d: "M10.6194 4.64374C10.9948 4.64374 11.2991 4.34143 11.2991 3.9685C11.2991 3.59558 10.9948 3.29327 10.6194 3.29327C10.244 3.29327 9.93964 3.59558 9.93964 3.9685C9.93964 4.34143 10.244 4.64374 10.6194 4.64374Z",
|
|
765
|
-
fill: "currentColor"
|
|
766
|
-
}
|
|
767
|
-
),
|
|
768
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
769
|
-
"path",
|
|
770
|
-
{
|
|
771
|
-
d: "M11.6828 6.3522C11.6828 6.72512 11.3784 7.02743 11.003 7.02743C10.6276 7.02743 10.3233 6.72512 10.3233 6.3522C10.3233 5.97927 10.6276 5.67696 11.003 5.67696C11.3784 5.67696 11.6828 5.97927 11.6828 6.3522Z",
|
|
772
|
-
fill: "currentColor"
|
|
773
|
-
}
|
|
774
|
-
),
|
|
775
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
776
|
-
"path",
|
|
777
|
-
{
|
|
778
|
-
d: "M8.94421 7.04748C9.38139 7.04748 9.73579 6.69543 9.73579 6.26116C9.73579 5.82688 9.38139 5.47484 8.94421 5.47484C8.50703 5.47484 8.15263 5.82688 8.15263 6.26116C8.15263 6.69543 8.50703 7.04748 8.94421 7.04748Z",
|
|
779
|
-
fill: "currentColor"
|
|
780
|
-
}
|
|
781
|
-
),
|
|
782
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
783
|
-
"path",
|
|
784
|
-
{
|
|
785
|
-
d: "M7.1115 12.6253C7.1115 12.849 6.9289 13.0304 6.70365 13.0304C6.4784 13.0304 6.2958 12.849 6.2958 12.6253C6.2958 12.4015 6.4784 12.2201 6.70365 12.2201C6.9289 12.2201 7.1115 12.4015 7.1115 12.6253Z",
|
|
786
|
-
fill: "currentColor"
|
|
787
|
-
}
|
|
788
|
-
),
|
|
789
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
790
|
-
"path",
|
|
791
|
-
{
|
|
792
|
-
d: "M8.33273 12.8261C8.60763 12.8261 8.83048 12.6047 8.83048 12.3316C8.83048 12.0585 8.60763 11.8372 8.33273 11.8372C8.05782 11.8372 7.83497 12.0585 7.83497 12.3316C7.83497 12.6047 8.05782 12.8261 8.33273 12.8261Z",
|
|
793
|
-
fill: "currentColor"
|
|
794
|
-
}
|
|
795
|
-
),
|
|
796
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
797
|
-
"path",
|
|
798
|
-
{
|
|
799
|
-
d: "M10.6874 11.5899C10.6874 11.9003 10.4342 12.1519 10.1217 12.1519C9.80928 12.1519 9.55599 11.9003 9.55599 11.5899C9.55599 11.2795 9.80928 11.0279 10.1217 11.0279C10.4342 11.0279 10.6874 11.2795 10.6874 11.5899Z",
|
|
800
|
-
fill: "currentColor"
|
|
801
|
-
}
|
|
802
|
-
),
|
|
803
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
804
|
-
"path",
|
|
805
|
-
{
|
|
806
|
-
d: "M10.5519 13.9513C10.9273 13.9513 11.2316 13.649 11.2316 13.2761C11.2316 12.9031 10.9273 12.6008 10.5519 12.6008C10.1764 12.6008 9.87212 12.9031 9.87212 13.2761C9.87212 13.649 10.1764 13.9513 10.5519 13.9513Z",
|
|
807
|
-
fill: "currentColor"
|
|
808
|
-
}
|
|
809
|
-
),
|
|
810
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
811
|
-
"path",
|
|
812
|
-
{
|
|
813
|
-
d: "M8.94418 13.8163C8.94418 14.1267 8.69089 14.3783 8.37845 14.3783C8.06601 14.3783 7.81272 14.1267 7.81272 13.8163C7.81272 13.5059 8.06601 13.2543 8.37845 13.2543C8.69089 13.2543 8.94418 13.5059 8.94418 13.8163Z",
|
|
814
|
-
fill: "currentColor"
|
|
815
|
-
}
|
|
816
|
-
),
|
|
817
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
818
|
-
"path",
|
|
819
|
-
{
|
|
820
|
-
d: "M6.45595 14.3542C6.73085 14.3542 6.9537 14.1328 6.9537 13.8597C6.9537 13.5866 6.73085 13.3653 6.45595 13.3653C6.18105 13.3653 5.95819 13.5866 5.95819 13.8597C5.95819 14.1328 6.18105 14.3542 6.45595 14.3542Z",
|
|
821
|
-
fill: "currentColor"
|
|
822
|
-
}
|
|
823
|
-
),
|
|
824
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
825
|
-
"path",
|
|
826
|
-
{
|
|
827
|
-
d: "M7.04361 15.3451C7.04361 15.6555 6.79033 15.9071 6.47788 15.9071C6.16544 15.9071 5.91216 15.6555 5.91216 15.3451C5.91216 15.0348 6.16544 14.7832 6.47788 14.7832C6.79033 14.7832 7.04361 15.0348 7.04361 15.3451Z",
|
|
828
|
-
fill: "currentColor"
|
|
829
|
-
}
|
|
830
|
-
),
|
|
831
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
832
|
-
"path",
|
|
833
|
-
{
|
|
834
|
-
d: "M8.78634 16.1997C9.16176 16.1997 9.46609 15.8974 9.46609 15.5245C9.46609 15.1516 9.16176 14.8493 8.78634 14.8493C8.41093 14.8493 8.10659 15.1516 8.10659 15.5245C8.10659 15.8974 8.41093 16.1997 8.78634 16.1997Z",
|
|
835
|
-
fill: "currentColor"
|
|
836
|
-
}
|
|
837
|
-
),
|
|
838
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
839
|
-
"path",
|
|
840
|
-
{
|
|
841
|
-
d: "M12.2709 15.1196C12.2709 15.5539 11.9165 15.906 11.4793 15.906C11.0421 15.906 10.6877 15.5539 10.6877 15.1196C10.6877 14.6854 11.0421 14.3333 11.4793 14.3333C11.9165 14.3333 12.2709 14.6854 12.2709 15.1196Z",
|
|
842
|
-
fill: "currentColor"
|
|
843
|
-
}
|
|
844
|
-
),
|
|
845
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
846
|
-
"path",
|
|
847
|
-
{
|
|
848
|
-
d: "M13.0642 17.8635C13.5644 17.8635 13.9698 17.4607 13.9698 16.9639C13.9698 16.4671 13.5644 16.0643 13.0642 16.0643C12.5641 16.0643 12.1586 16.4671 12.1586 16.9639C12.1586 17.4607 12.5641 17.8635 13.0642 17.8635Z",
|
|
849
|
-
fill: "currentColor"
|
|
850
|
-
}
|
|
851
|
-
),
|
|
852
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
853
|
-
"path",
|
|
854
|
-
{
|
|
855
|
-
d: "M10.5276 17.3445C10.5276 17.7788 10.1732 18.1308 9.73605 18.1308C9.29887 18.1308 8.94447 17.7788 8.94447 17.3445C8.94447 16.9103 9.29887 16.5582 9.73605 16.5582C10.1732 16.5582 10.5276 16.9103 10.5276 17.3445Z",
|
|
856
|
-
fill: "currentColor"
|
|
857
|
-
}
|
|
858
|
-
),
|
|
859
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
860
|
-
"path",
|
|
861
|
-
{
|
|
862
|
-
d: "M7.8585 19.6612C8.29568 19.6612 8.65008 19.3092 8.65008 18.8749C8.65008 18.4406 8.29568 18.0886 7.8585 18.0886C7.42132 18.0886 7.06692 18.4406 7.06692 18.8749C7.06692 19.3092 7.42132 19.6612 7.8585 19.6612Z",
|
|
863
|
-
fill: "currentColor"
|
|
864
|
-
}
|
|
865
|
-
),
|
|
866
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
867
|
-
"path",
|
|
868
|
-
{
|
|
869
|
-
d: "M10.3252 20.7404C10.3252 21.2372 9.91977 21.64 9.41962 21.64C8.91947 21.64 8.51402 21.2372 8.51402 20.7404C8.51402 20.2436 8.91947 19.8408 9.41962 19.8408C9.91977 19.8408 10.3252 20.2436 10.3252 20.7404Z",
|
|
870
|
-
fill: "currentColor"
|
|
871
|
-
}
|
|
872
|
-
),
|
|
873
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
874
|
-
"path",
|
|
875
|
-
{
|
|
876
|
-
d: "M13.5843 22C14.1716 22 14.6477 21.527 14.6477 20.9436C14.6477 20.3601 14.1716 19.8872 13.5843 19.8872C12.9969 19.8872 12.5208 20.3601 12.5208 20.9436C12.5208 21.527 12.9969 22 13.5843 22Z",
|
|
877
|
-
fill: "currentColor"
|
|
878
|
-
}
|
|
879
|
-
),
|
|
880
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
881
|
-
"path",
|
|
882
|
-
{
|
|
883
|
-
d: "M12.2051 19.2123C12.2051 19.7091 11.7996 20.1119 11.2995 20.1119C10.7993 20.1119 10.3939 19.7091 10.3939 19.2123C10.3939 18.7155 10.7993 18.3127 11.2995 18.3127C11.7996 18.3127 12.2051 18.7155 12.2051 19.2123Z",
|
|
884
|
-
fill: "currentColor"
|
|
885
|
-
}
|
|
886
|
-
),
|
|
887
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
888
|
-
"path",
|
|
889
|
-
{
|
|
890
|
-
d: "M15.3275 19.7516C15.9149 19.7516 16.391 19.2786 16.391 18.6951C16.391 18.1117 15.9149 17.6387 15.3275 17.6387C14.7402 17.6387 14.2641 18.1117 14.2641 18.6951C14.2641 19.2786 14.7402 19.7516 15.3275 19.7516Z",
|
|
891
|
-
fill: "currentColor"
|
|
892
|
-
}
|
|
893
|
-
),
|
|
894
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
895
|
-
"path",
|
|
896
|
-
{
|
|
897
|
-
d: "M7.58701 17.0534C7.58701 17.4263 7.28268 17.7286 6.90726 17.7286C6.53185 17.7286 6.22751 17.4263 6.22751 17.0534C6.22751 16.6804 6.53185 16.3781 6.90726 16.3781C7.28268 16.3781 7.58701 16.6804 7.58701 17.0534Z",
|
|
898
|
-
fill: "currentColor"
|
|
899
|
-
}
|
|
900
|
-
)
|
|
901
|
-
]
|
|
902
|
-
}
|
|
903
|
-
);
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
// src/components/connect-modal/views/GetTheWallet.css.ts
|
|
907
|
-
var button = "GetTheWallet_button__1iomrym3";
|
|
908
|
-
var container4 = "GetTheWallet_container__1iomrym0";
|
|
909
|
-
var content2 = "GetTheWallet_content__1iomrym1";
|
|
910
|
-
var icon = "GetTheWallet_icon__1iomrym4";
|
|
911
|
-
var text = "GetTheWallet_text__1iomrym2";
|
|
912
|
-
|
|
913
|
-
// src/components/connect-modal/views/GetTheWallet.tsx
|
|
914
|
-
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
915
|
-
function GetTheWalletView() {
|
|
916
|
-
return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: container4, children: [
|
|
917
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: content2, children: [
|
|
918
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(IotaIcon, { className: icon, width: 48, height: 48 }),
|
|
919
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: text, children: "Don't have a wallet yet?" })
|
|
920
|
-
] }),
|
|
921
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("a", { href: WALLET_DOWNLOAD_URL, target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Button, { size: "md", variant: "primary", className: button, children: [
|
|
922
|
-
"Get the IOTA wallet",
|
|
923
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(ArrowTopRightIcon, { width: 16, height: 16 })
|
|
924
|
-
] }) })
|
|
925
|
-
] });
|
|
926
|
-
}
|
|
927
|
-
|
|
928
|
-
// src/components/connect-modal/ConnectModal.tsx
|
|
929
|
-
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
930
|
-
function ConnectModal({ trigger, open, defaultOpen, onOpenChange }) {
|
|
931
|
-
const wallets = useWallets();
|
|
932
|
-
const [isModalOpen, setModalOpen] = (0, import_react8.useState)(open ?? defaultOpen);
|
|
933
|
-
const handleOpenChange = (open2) => {
|
|
934
|
-
setModalOpen(open2);
|
|
935
|
-
onOpenChange?.(open2);
|
|
936
|
-
};
|
|
937
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Dialog.Root, { open: open ?? isModalOpen, onOpenChange: handleOpenChange, children: [
|
|
938
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Dialog.Trigger, { asChild: true, children: trigger }),
|
|
939
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Dialog.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Dialog.Overlay, { className: overlay, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Dialog.Content, { className: content, "aria-describedby": void 0, children: [
|
|
940
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: walletListContent, children: [
|
|
941
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Dialog.Title, { className: title, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Heading, { as: "h2", children: "Connect a Wallet" }) }),
|
|
942
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: separator }),
|
|
943
|
-
wallets?.length ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
944
|
-
WalletConnectListView,
|
|
945
|
-
{
|
|
946
|
-
wallets,
|
|
947
|
-
onOpenChange: handleOpenChange
|
|
948
|
-
}
|
|
949
|
-
) : /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(GetTheWalletView, {})
|
|
950
|
-
] }),
|
|
951
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Dialog.Close, { className: closeButtonContainer, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(IconButton, { type: "button", "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(CloseIcon, {}) }) })
|
|
642
|
+
),
|
|
643
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Dialog.Close, { className: closeButtonContainer, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(IconButton, { type: "button", "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(CloseIcon, {}) }) })
|
|
952
644
|
] }) }) }) })
|
|
953
645
|
] });
|
|
954
646
|
}
|
|
@@ -961,7 +653,7 @@ function useCurrentAccount() {
|
|
|
961
653
|
// src/components/AccountDropdownMenu.tsx
|
|
962
654
|
var import_utils = require("@iota/iota-sdk/utils");
|
|
963
655
|
var DropdownMenu = __toESM(require("@radix-ui/react-dropdown-menu"));
|
|
964
|
-
var
|
|
656
|
+
var import_clsx7 = __toESM(require("clsx"));
|
|
965
657
|
|
|
966
658
|
// src/hooks/wallet/useAccounts.ts
|
|
967
659
|
function useAccounts() {
|
|
@@ -984,31 +676,35 @@ var WalletAccountNotFoundError = class extends Error {
|
|
|
984
676
|
// src/hooks/wallet/useCurrentWallet.ts
|
|
985
677
|
function useCurrentWallet() {
|
|
986
678
|
const currentWallet = useWalletStore((state) => state.currentWallet);
|
|
987
|
-
const
|
|
988
|
-
|
|
679
|
+
const connectionStatus2 = useWalletStore((state) => state.connectionStatus);
|
|
680
|
+
const supportedIntents = useWalletStore((state) => state.supportedIntents);
|
|
681
|
+
switch (connectionStatus2) {
|
|
989
682
|
case "connecting":
|
|
990
683
|
return {
|
|
991
|
-
connectionStatus,
|
|
684
|
+
connectionStatus: connectionStatus2,
|
|
992
685
|
currentWallet: null,
|
|
993
686
|
isDisconnected: false,
|
|
994
687
|
isConnecting: true,
|
|
995
|
-
isConnected: false
|
|
688
|
+
isConnected: false,
|
|
689
|
+
supportedIntents: []
|
|
996
690
|
};
|
|
997
691
|
case "disconnected":
|
|
998
692
|
return {
|
|
999
|
-
connectionStatus,
|
|
693
|
+
connectionStatus: connectionStatus2,
|
|
1000
694
|
currentWallet: null,
|
|
1001
695
|
isDisconnected: true,
|
|
1002
696
|
isConnecting: false,
|
|
1003
|
-
isConnected: false
|
|
697
|
+
isConnected: false,
|
|
698
|
+
supportedIntents: []
|
|
1004
699
|
};
|
|
1005
700
|
case "connected": {
|
|
1006
701
|
return {
|
|
1007
|
-
connectionStatus,
|
|
702
|
+
connectionStatus: connectionStatus2,
|
|
1008
703
|
currentWallet,
|
|
1009
704
|
isDisconnected: false,
|
|
1010
705
|
isConnecting: false,
|
|
1011
|
-
isConnected: true
|
|
706
|
+
isConnected: true,
|
|
707
|
+
supportedIntents
|
|
1012
708
|
};
|
|
1013
709
|
}
|
|
1014
710
|
}
|
|
@@ -1071,17 +767,16 @@ function useSwitchAccount({
|
|
|
1071
767
|
|
|
1072
768
|
// src/components/AccountDropdownMenu.css.ts
|
|
1073
769
|
var connectedAccount = "AccountDropdownMenu_connectedAccount__1x0gmpf0";
|
|
1074
|
-
var icon2 = "AccountDropdownMenu_icon__1x0gmpf2";
|
|
1075
770
|
var menuContainer = "AccountDropdownMenu_menuContainer__1x0gmpf1";
|
|
1076
|
-
var menuContent = "
|
|
1077
|
-
var menuItem = "
|
|
1078
|
-
var
|
|
1079
|
-
var switchAccountMenuItem = "
|
|
771
|
+
var menuContent = "AccountDropdownMenu_menuContent__1x0gmpf2";
|
|
772
|
+
var menuItem = "AccountDropdownMenu_menuItem__1x0gmpf3";
|
|
773
|
+
var separator = "AccountDropdownMenu_separator__1x0gmpf5";
|
|
774
|
+
var switchAccountMenuItem = "AccountDropdownMenu_switchAccountMenuItem__1x0gmpf4";
|
|
1080
775
|
|
|
1081
776
|
// src/components/icons/CheckIcon.tsx
|
|
1082
|
-
var
|
|
777
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1083
778
|
function CheckIcon(props) {
|
|
1084
|
-
return /* @__PURE__ */ (0,
|
|
779
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: 16, height: 16, fill: "none", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1085
780
|
"path",
|
|
1086
781
|
{
|
|
1087
782
|
fill: "currentColor",
|
|
@@ -1091,9 +786,9 @@ function CheckIcon(props) {
|
|
|
1091
786
|
}
|
|
1092
787
|
|
|
1093
788
|
// src/components/icons/ChevronIcon.tsx
|
|
1094
|
-
var
|
|
789
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
1095
790
|
function ChevronIcon(props) {
|
|
1096
|
-
return /* @__PURE__ */ (0,
|
|
791
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: 16, height: 16, fill: "none", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
1097
792
|
"path",
|
|
1098
793
|
{
|
|
1099
794
|
stroke: "#A0B6C3",
|
|
@@ -1101,58 +796,22 @@ function ChevronIcon(props) {
|
|
|
1101
796
|
strokeLinejoin: "round",
|
|
1102
797
|
strokeWidth: 1.5,
|
|
1103
798
|
d: "m4 6 4 4 4-4"
|
|
1104
|
-
}
|
|
1105
|
-
) });
|
|
1106
|
-
}
|
|
1107
|
-
|
|
1108
|
-
// src/components/ui/Text.tsx
|
|
1109
|
-
var import_react_slot5 = require("@radix-ui/react-slot");
|
|
1110
|
-
var import_clsx5 = __toESM(require("clsx"));
|
|
1111
|
-
var import_react9 = require("react");
|
|
1112
|
-
|
|
1113
|
-
// src/components/ui/Text.css.ts
|
|
1114
|
-
var import_createRuntimeFn3 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
1115
|
-
var textVariants = (0, import_createRuntimeFn3.createRuntimeFn)({ defaultClassName: "Text__aprhbd0", variantClassNames: { size: { sm: "Text_textVariants_size_sm__aprhbd1" }, weight: { normal: "Text_textVariants_weight_normal__aprhbd2", medium: "Text_textVariants_weight_medium__aprhbd3", bold: "Text_textVariants_weight_bold__aprhbd4" }, color: { body: "Text_textVariants_color_body__aprhbd5", muted: "Text_textVariants_color_muted__aprhbd6", danger: "Text_textVariants_color_danger__aprhbd7" }, mono: { true: "Text_textVariants_mono_true__aprhbd8" } }, defaultVariants: { size: "sm", weight: "normal" }, compoundVariants: [] });
|
|
1116
|
-
|
|
1117
|
-
// src/components/ui/Text.tsx
|
|
1118
|
-
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1119
|
-
var Text = (0, import_react9.forwardRef)(
|
|
1120
|
-
({
|
|
1121
|
-
children,
|
|
1122
|
-
className,
|
|
1123
|
-
asChild = false,
|
|
1124
|
-
as: Tag = "div",
|
|
1125
|
-
size,
|
|
1126
|
-
weight,
|
|
1127
|
-
color,
|
|
1128
|
-
mono,
|
|
1129
|
-
...textProps
|
|
1130
|
-
}, forwardedRef) => {
|
|
1131
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1132
|
-
import_react_slot5.Slot,
|
|
1133
|
-
{
|
|
1134
|
-
...textProps,
|
|
1135
|
-
ref: forwardedRef,
|
|
1136
|
-
className: (0, import_clsx5.default)(textVariants({ size, weight, color, mono }), className),
|
|
1137
|
-
children: asChild ? children : /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Tag, { children })
|
|
1138
|
-
}
|
|
1139
|
-
);
|
|
1140
|
-
}
|
|
1141
|
-
);
|
|
1142
|
-
Text.displayName = "Text";
|
|
799
|
+
}
|
|
800
|
+
) });
|
|
801
|
+
}
|
|
1143
802
|
|
|
1144
803
|
// src/components/AccountDropdownMenu.tsx
|
|
1145
|
-
var
|
|
1146
|
-
function AccountDropdownMenu({ currentAccount }) {
|
|
804
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
805
|
+
function AccountDropdownMenu({ currentAccount, size = "lg" }) {
|
|
1147
806
|
const { mutate: disconnectWallet } = useDisconnectWallet();
|
|
1148
807
|
const accounts = useAccounts();
|
|
1149
|
-
return /* @__PURE__ */ (0,
|
|
1150
|
-
/* @__PURE__ */ (0,
|
|
1151
|
-
/* @__PURE__ */ (0,
|
|
1152
|
-
/* @__PURE__ */ (0,
|
|
808
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(DropdownMenu.Root, { modal: false, children: [
|
|
809
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DropdownMenu.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(Button, { size, className: connectedAccount, children: [
|
|
810
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Text, { mono: true, weight: "bold", children: currentAccount.label ?? (0, import_utils.formatAddress)(currentAccount.address) }),
|
|
811
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ChevronIcon, {})
|
|
1153
812
|
] }) }) }),
|
|
1154
|
-
/* @__PURE__ */ (0,
|
|
1155
|
-
accounts.map((account) => /* @__PURE__ */ (0,
|
|
813
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DropdownMenu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(StyleMarker, { className: menuContainer, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(DropdownMenu.Content, { className: menuContent, children: [
|
|
814
|
+
accounts.map((account) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1156
815
|
AccountDropdownMenuItem,
|
|
1157
816
|
{
|
|
1158
817
|
account,
|
|
@@ -1160,11 +819,11 @@ function AccountDropdownMenu({ currentAccount }) {
|
|
|
1160
819
|
},
|
|
1161
820
|
account.address
|
|
1162
821
|
)),
|
|
1163
|
-
/* @__PURE__ */ (0,
|
|
1164
|
-
/* @__PURE__ */ (0,
|
|
822
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DropdownMenu.Separator, { className: separator }),
|
|
823
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1165
824
|
DropdownMenu.Item,
|
|
1166
825
|
{
|
|
1167
|
-
className: (0,
|
|
826
|
+
className: (0, import_clsx7.default)(menuItem),
|
|
1168
827
|
onSelect: () => disconnectWallet(),
|
|
1169
828
|
children: "Disconnect"
|
|
1170
829
|
}
|
|
@@ -1177,36 +836,40 @@ function AccountDropdownMenuItem({
|
|
|
1177
836
|
active
|
|
1178
837
|
}) {
|
|
1179
838
|
const { mutate: switchAccount } = useSwitchAccount();
|
|
1180
|
-
return /* @__PURE__ */ (0,
|
|
839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
|
|
1181
840
|
DropdownMenu.Item,
|
|
1182
841
|
{
|
|
1183
|
-
className: (0,
|
|
842
|
+
className: (0, import_clsx7.default)(menuItem, switchAccountMenuItem),
|
|
1184
843
|
onSelect: () => switchAccount({ account }),
|
|
1185
844
|
children: [
|
|
1186
|
-
/* @__PURE__ */ (0,
|
|
1187
|
-
active ? /* @__PURE__ */ (0,
|
|
845
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Text, { mono: true, children: account.label ?? (0, import_utils.formatAddress)(account.address) }),
|
|
846
|
+
active ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(CheckIcon, {}) : null
|
|
1188
847
|
]
|
|
1189
848
|
}
|
|
1190
849
|
);
|
|
1191
850
|
}
|
|
1192
851
|
|
|
1193
852
|
// src/components/ConnectButton.tsx
|
|
1194
|
-
var
|
|
1195
|
-
function ConnectButton({
|
|
853
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
854
|
+
function ConnectButton({
|
|
855
|
+
connectText = "Connect Wallet",
|
|
856
|
+
size,
|
|
857
|
+
...buttonProps
|
|
858
|
+
}) {
|
|
1196
859
|
const currentAccount = useCurrentAccount();
|
|
1197
|
-
return currentAccount ? /* @__PURE__ */ (0,
|
|
860
|
+
return currentAccount ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AccountDropdownMenu, { currentAccount, size }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1198
861
|
ConnectModal,
|
|
1199
862
|
{
|
|
1200
|
-
trigger: /* @__PURE__ */ (0,
|
|
863
|
+
trigger: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Button, { ...buttonProps, size, children: connectText }) })
|
|
1201
864
|
}
|
|
1202
865
|
);
|
|
1203
866
|
}
|
|
1204
867
|
|
|
1205
868
|
// src/components/IotaClientProvider.tsx
|
|
1206
869
|
var import_client = require("@iota/iota-sdk/client");
|
|
1207
|
-
var
|
|
1208
|
-
var
|
|
1209
|
-
var IotaClientContext = (0,
|
|
870
|
+
var import_react9 = require("react");
|
|
871
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
872
|
+
var IotaClientContext = (0, import_react9.createContext)(null);
|
|
1210
873
|
var DEFAULT_NETWORKS = {
|
|
1211
874
|
localnet: { url: (0, import_client.getNetwork)(import_client.Network.Local).url }
|
|
1212
875
|
};
|
|
@@ -1220,14 +883,14 @@ function IotaClientProvider(props) {
|
|
|
1220
883
|
const { onNetworkChange, network, children } = props;
|
|
1221
884
|
const networks = props.networks ?? DEFAULT_NETWORKS;
|
|
1222
885
|
const createClient2 = props.createClient ?? DEFAULT_CREATE_CLIENT;
|
|
1223
|
-
const [selectedNetwork, setSelectedNetwork] = (0,
|
|
886
|
+
const [selectedNetwork, setSelectedNetwork] = (0, import_react9.useState)(
|
|
1224
887
|
props.network ?? props.defaultNetwork ?? Object.keys(networks)[0]
|
|
1225
888
|
);
|
|
1226
889
|
const currentNetwork = props.network ?? selectedNetwork;
|
|
1227
|
-
const client = (0,
|
|
890
|
+
const client = (0, import_react9.useMemo)(() => {
|
|
1228
891
|
return createClient2(currentNetwork, networks[currentNetwork]);
|
|
1229
892
|
}, [createClient2, currentNetwork, networks]);
|
|
1230
|
-
const ctx = (0,
|
|
893
|
+
const ctx = (0, import_react9.useMemo)(() => {
|
|
1231
894
|
return {
|
|
1232
895
|
client,
|
|
1233
896
|
networks,
|
|
@@ -1244,15 +907,41 @@ function IotaClientProvider(props) {
|
|
|
1244
907
|
}
|
|
1245
908
|
};
|
|
1246
909
|
}, [client, networks, selectedNetwork, currentNetwork, network, onNetworkChange]);
|
|
1247
|
-
return /* @__PURE__ */ (0,
|
|
910
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(IotaClientContext.Provider, { value: ctx, children });
|
|
1248
911
|
}
|
|
1249
912
|
|
|
1250
913
|
// src/components/WalletProvider.tsx
|
|
1251
|
-
var
|
|
914
|
+
var import_react15 = require("react");
|
|
915
|
+
|
|
916
|
+
// src/utils/stateStorage.ts
|
|
917
|
+
function createInMemoryStore() {
|
|
918
|
+
const store = /* @__PURE__ */ new Map();
|
|
919
|
+
return {
|
|
920
|
+
getItem(key) {
|
|
921
|
+
return store.get(key);
|
|
922
|
+
},
|
|
923
|
+
setItem(key, value) {
|
|
924
|
+
store.set(key, value);
|
|
925
|
+
},
|
|
926
|
+
removeItem(key) {
|
|
927
|
+
store.delete(key);
|
|
928
|
+
}
|
|
929
|
+
};
|
|
930
|
+
}
|
|
931
|
+
|
|
932
|
+
// src/constants/walletDefaults.ts
|
|
933
|
+
var IOTA_WALLET_NAME = "IOTA Wallet";
|
|
934
|
+
var DEFAULT_STORAGE = typeof window !== "undefined" && window.localStorage ? localStorage : createInMemoryStore();
|
|
935
|
+
var DEFAULT_STORAGE_KEY = "iota-dapp-kit:wallet-connection-info";
|
|
936
|
+
var SIGN_FEATURES = ["iota:signTransaction"];
|
|
937
|
+
var DEFAULT_WALLET_FILTER = (wallet) => SIGN_FEATURES.some((feature) => wallet.features[feature]);
|
|
938
|
+
var DEFAULT_PREFERRED_WALLETS = [IOTA_WALLET_NAME];
|
|
939
|
+
var WALLET_CHROME_EXTENSION_ID = "TODO";
|
|
940
|
+
var WALLET_DOWNLOAD_URL = "https://chromewebstore.google.com/detail/" + WALLET_CHROME_EXTENSION_ID;
|
|
1252
941
|
|
|
1253
942
|
// src/hooks/wallet/useAutoConnectWallet.ts
|
|
1254
943
|
var import_react_query4 = require("@tanstack/react-query");
|
|
1255
|
-
var
|
|
944
|
+
var import_react10 = require("react");
|
|
1256
945
|
function useAutoConnectWallet() {
|
|
1257
946
|
const { mutateAsync: connectWallet } = useConnectWallet();
|
|
1258
947
|
const autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);
|
|
@@ -1262,8 +951,8 @@ function useAutoConnectWallet() {
|
|
|
1262
951
|
);
|
|
1263
952
|
const wallets = useWallets();
|
|
1264
953
|
const { isConnected } = useCurrentWallet();
|
|
1265
|
-
const [clientOnly, setClientOnly] = (0,
|
|
1266
|
-
(0,
|
|
954
|
+
const [clientOnly, setClientOnly] = (0, import_react10.useState)(false);
|
|
955
|
+
(0, import_react10.useLayoutEffect)(() => {
|
|
1267
956
|
setClientOnly(true);
|
|
1268
957
|
}, []);
|
|
1269
958
|
const { data, isError } = (0, import_react_query4.useQuery)({
|
|
@@ -1327,13 +1016,15 @@ function useAutoConnectWallet() {
|
|
|
1327
1016
|
|
|
1328
1017
|
// src/hooks/wallet/useUnsafeBurnerWallet.ts
|
|
1329
1018
|
var import_ed25519 = require("@iota/iota-sdk/keypairs/ed25519");
|
|
1019
|
+
var import_transactions = require("@iota/iota-sdk/transactions");
|
|
1020
|
+
var import_utils2 = require("@iota/iota-sdk/utils");
|
|
1330
1021
|
var import_wallet_standard3 = require("@iota/wallet-standard");
|
|
1331
|
-
var
|
|
1022
|
+
var import_react12 = require("react");
|
|
1332
1023
|
|
|
1333
1024
|
// src/hooks/useIotaClient.ts
|
|
1334
|
-
var
|
|
1025
|
+
var import_react11 = require("react");
|
|
1335
1026
|
function useIotaClientContext() {
|
|
1336
|
-
const iotaClient = (0,
|
|
1027
|
+
const iotaClient = (0, import_react11.useContext)(IotaClientContext);
|
|
1337
1028
|
if (!iotaClient) {
|
|
1338
1029
|
throw new Error(
|
|
1339
1030
|
"Could not find IotaClientContext. Ensure that you have set up the IotaClientProvider"
|
|
@@ -1349,7 +1040,7 @@ function useIotaClient() {
|
|
|
1349
1040
|
var WALLET_NAME = "Unsafe Burner Wallet";
|
|
1350
1041
|
function useUnsafeBurnerWallet(enabled) {
|
|
1351
1042
|
const iotaClient = useIotaClient();
|
|
1352
|
-
(0,
|
|
1043
|
+
(0, import_react12.useEffect)(() => {
|
|
1353
1044
|
if (!enabled) {
|
|
1354
1045
|
return;
|
|
1355
1046
|
}
|
|
@@ -1358,7 +1049,7 @@ function useUnsafeBurnerWallet(enabled) {
|
|
|
1358
1049
|
}, [enabled, iotaClient]);
|
|
1359
1050
|
}
|
|
1360
1051
|
function registerUnsafeBurnerWallet(iotaClient) {
|
|
1361
|
-
var _on, _connect, _signPersonalMessage,
|
|
1052
|
+
var _on, _connect, _signPersonalMessage, _signTransaction, _signAndExecuteTransaction;
|
|
1362
1053
|
const walletsApi = (0, import_wallet_standard3.getWallets)();
|
|
1363
1054
|
const registeredWallets = walletsApi.get();
|
|
1364
1055
|
if (registeredWallets.find((wallet) => wallet.name === WALLET_NAME)) {
|
|
@@ -1375,7 +1066,7 @@ function registerUnsafeBurnerWallet(iotaClient) {
|
|
|
1375
1066
|
address: keypair.getPublicKey().toIotaAddress(),
|
|
1376
1067
|
publicKey: keypair.getPublicKey().toIotaBytes(),
|
|
1377
1068
|
chains: ["iota:unknown"],
|
|
1378
|
-
features: ["iota:
|
|
1069
|
+
features: ["iota:signTransaction", "iota:signAndExecuteTransaction"]
|
|
1379
1070
|
});
|
|
1380
1071
|
class UnsafeBurnerWallet {
|
|
1381
1072
|
constructor() {
|
|
@@ -1390,23 +1081,40 @@ function registerUnsafeBurnerWallet(iotaClient) {
|
|
|
1390
1081
|
const { bytes, signature } = await keypair.signPersonalMessage(messageInput.message);
|
|
1391
1082
|
return { bytes, signature };
|
|
1392
1083
|
});
|
|
1393
|
-
__privateAdd(this,
|
|
1394
|
-
const { bytes, signature } = await
|
|
1084
|
+
__privateAdd(this, _signTransaction, async (transactionInput) => {
|
|
1085
|
+
const { bytes, signature } = await import_transactions.Transaction.from(
|
|
1086
|
+
await transactionInput.transaction.toJSON()
|
|
1087
|
+
).sign({
|
|
1395
1088
|
client: iotaClient,
|
|
1396
1089
|
signer: keypair
|
|
1397
1090
|
});
|
|
1091
|
+
transactionInput.signal?.throwIfAborted();
|
|
1398
1092
|
return {
|
|
1399
|
-
|
|
1093
|
+
bytes,
|
|
1400
1094
|
signature
|
|
1401
1095
|
};
|
|
1402
1096
|
});
|
|
1403
|
-
__privateAdd(this,
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1097
|
+
__privateAdd(this, _signAndExecuteTransaction, async (transactionInput) => {
|
|
1098
|
+
const { bytes, signature } = await import_transactions.Transaction.from(
|
|
1099
|
+
await transactionInput.transaction.toJSON()
|
|
1100
|
+
).sign({
|
|
1101
|
+
client: iotaClient,
|
|
1102
|
+
signer: keypair
|
|
1103
|
+
});
|
|
1104
|
+
transactionInput.signal?.throwIfAborted();
|
|
1105
|
+
const { rawEffects, digest } = await iotaClient.executeTransactionBlock({
|
|
1106
|
+
signature,
|
|
1107
|
+
transactionBlock: bytes,
|
|
1108
|
+
options: {
|
|
1109
|
+
showRawEffects: true
|
|
1110
|
+
}
|
|
1409
1111
|
});
|
|
1112
|
+
return {
|
|
1113
|
+
bytes,
|
|
1114
|
+
signature,
|
|
1115
|
+
digest,
|
|
1116
|
+
effects: (0, import_utils2.toB64)(new Uint8Array(rawEffects))
|
|
1117
|
+
};
|
|
1410
1118
|
});
|
|
1411
1119
|
}
|
|
1412
1120
|
get version() {
|
|
@@ -1418,7 +1126,7 @@ function registerUnsafeBurnerWallet(iotaClient) {
|
|
|
1418
1126
|
get icon() {
|
|
1419
1127
|
return "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAJrElEQVR42tWbe2xT1x3H7UxAyD3XrdrSbGXlUbKWsq5rWdVuVOMRSEqSOmnVRZMmJqZNYv1nf3R/jWmVmVrtRRM/YwPd1nVTNcrE3pQCoikrIRAC4VVNY0hlD9ZOo1uCfe3ra9979v0dcy3s5Pper76Oh/STE+495/4+5/c85zqe2f7HAx5vKsS+monJj/CdHi/f4/HWW4f6AwdblmXjTM0NyS+movKtw9v+j6C5gKhyTMTTpA2x15Qwy+Pz75motOGdgKep8WF5ATgVZIt5NeO2wMqD0hfVGNPh3oYaYflsjG0l63PeyLCDnqbsLpZIhaRNFI+Ox+Le5KB0RybK8gDmJOkI07U4i/FhT1NDQl8Me5rUIfaDfELOJ0NsFa/SJQHm1WLsHcDqRWiy9BCL8s0N5t6UWWFVvxplejYm60hC91cNjPtzCTZsAptCVoeLP8PDDQJNCSodap6H+LtE8ZcdkvVkkD38vwDn4/Jvy4EhBhZSvRaUHiTXn31gJJxkUPoClBKKFizM+inhVA2cYIdM4HJouPvoe9s9H+KzDhyGK6KkmIqitBhww2C11rjQL2L4kgUwFxk8yPyzauUA3Pk/353XnA6zKbKCaQ2UlMvJF6W5uF5F8yHfZWZpC9HRmBziaEpm1bpY9XvhxuWJRldC7Mt03WlZwpjnkZUNa2DMG2EaPj9MGd2l2mofd0hQ7ZSopsXckHxVCUp32fXGdD0ZktrgFUmMqwhcWFjp87RArsD+9bn585IRaSHAKgBL3SZwOTRc8BKg7yYoskp5OJDiiPmF2Sj7ox0siYJ7lJA04EqvzZ9B1xSVt6PlW0IxZgUMJdZYAJuWngLQt9IRuZXmoTEkmci8ZtTXTViUKyasA9FRun5d8z6bfw0gYWm9mmCXxZatQgxfC7I2NVpRYQOxKWppLs4mcgn5NcibgL1K40xYp8CYY5TXEpjcb3LAJ0OZyyg3+2nySm6fjEtzkEz+7VBx3RTb+60z9dma7pkvwO2QQL5HzTtAdpKF7euw/HuzfrosBHy+ZsBimzbQshjWTVMDgez53B5MbjcGbr1ZjdUJOM5O0SLXzJ2R+uOA1dMAVoLsm5zb73JSId8t8Aa1LsAJdoTCrCaw6e3NC2DdFMUXWRg173mysJNOSUNskUJ1cOlXa2LhcbgmSszXYSn9hl3KSxTDjrZ2cbbfbWDyumsh9m3e7zCG7a3ETt+gtI7fx6lEOanZKDVvuA2cjYmt5xNOd2Louz3IQ12UZ2Zo3lkb9cDlvSs6m4Vk5Yqlabs0B97wT7PUuCXQz0Bnt9QxMPTW4iwBtmUlY8hFsHJPlzcQ1xuG75CVK1kXofCUGnU9fg1aVD7kfE9MoabtYkcAvIUYS2op3Hc3TTrDQzIAeojugTVLFolWDR6wFPtY0R66n6HltwjCIawnE2ymresk9NtN+pfUUi0mX6RJLfrh9zMRaRPOqubSA8W2MNzC0mHpK7j2ruuw5mYkxl5+2+HGQeg4yNYg7vNg+xMxFsuRMuiTsRJZG3cysAl4D9n4aC4un8L9qUyVvbCyYwFXX1nGUxFf1cCiEQqy75O+TpMwYKNKSPQUqhLyyWLsRbESLctx0YnixgfphRWA8pOPc+N4F9d+eV9V4OlCX/As5w5g+wtGhJGukp5go2R3D7EW9rSDcnGL56YgJHj+8GcFND/Vy41jj/H0jxc6HU/AA2QlR01UlH3D7CmITQnJq4lVWBi1yl8XYEh278c5H++F+Iui7r7bYR8tH/gbqoJN7fVODUhLYVVxzmYCEyOxFg7RUVa0egCHZZ55eRHnp/tKgMna6s/bbMdTxZgMzl9CCcmq7k690OzDfaeSN4QcsREjsQpgXHwyWyfg9K5WE7hc6JqTWjyihObfygOFOkv6i5K5TZx8LsL1sVS4NL8ItiB7sgAcEKcWHfUCVhK3kUVnBNbfXIs4l5xAv5sJs234eTUy93L0Au2otQOw5ORMyfQ6WwexFupVSHowG6uThXfebmlhWojMS3fazmMeGxEI6S2SUti6RAo2vKohVuH3qUG5FWm/PjH8kzutgSH5g58xrVwzIbZkxHf7OFjFC+wrMDXcpOqOKX/g01U/XPvVJyxdWsiJblqYmnZoWbDxAcR56X5WPuh4ewcL5PY9JBRUYjc7fzjG6Uc3mHBWbg23X1BLaFHOSnrw4bWiNAXSEWcWRntIignXTP/oDsfKZX66mMbZAPfhviU1AyYmJLYAMZa/QXjUSeIiixpj3UUFtd884KytjN7EjdGNNMbWwtlf3FvbQ4OQtIoYSzbxqVDLXMTxP8jnnbiyKcaJLvueGLD6kXW2sKZov1tpn7hwXf3ZUvq0K2FXOM7Op/Xgb6PhxsWIErYGVuK3WGXWkkwMMZVCVl5kWtax5A6usgemvnx4DelUcYcFC0eIbcbXKzggeyBjeXIhkftaKknJKLtnuSg7KmKQsrH+1nqbmLWY6w/tBGy/8xrruR5SM99LLIjfT/4ZbNZnQEPssIVb21rKTGRIPDagNoLdFMKgcuLc/TF6Bulk6c7ovg4TU+XvS6FNw1tDfVqH9MOPmBDui0hcK6wz744FlDjNe0m3aVldJYagtI6YbF+3ZGPsQHlN1vbeh8lJofqJ+uo9Zi4wXZxKFiXKGxbHT7pNq71oNg4Qi6MviE0FpRVqjGXILYoJ4tCjdYU1rWeMdPLc/ochj3B9pGNGL4NupGPRlUl35KMVxFLNO6ZnxYlBsUPqoMkbUqAb6VhMVKQ7MVT1dYdrL8hzEAcjpmvjHKphgaFb0ZVJZw7dwVD9q5fkgPTRbBxnzmGfgRLQsMCkG+moQdcp6GzzZsL2MGyllvBNGWM9RqMCk26kI7aBK526csVShZTfzid6FEzeiNAGP92jpCPQEbrW7EW5MbZxAz/fN9lg0IbQaaxrQ83/VoKPb/HqJx67Hw+43CDQBPsX0gm6ufXNvH4vP9rZapzx7+Nn+oxZAjfo2caZ3n350c5W6FSEdQ86sNarj3c/jRV+H42AXsdGRBfPPIlnb/mUtxzWXfALn/PmRze2Gud6E/xsXwYtnlsWN8Tc5/oyxjn/jvyJrlY82xLUfWuPr/TqxzuXQZkIP9M7CXiyuP4B4WmsTnNhzinjrD+WO9bRhmdZWLXe4EKRtV5tpN3Hx3s2G+d79/MJf4qff0LnE72kfFEs4ITQvWLMab8C131dP9n9Je1Yx000Nz2jAf+UJwCBchc3NvGR1Qx71XXY2Ww1Jvx7YalzAPkX9rp5E5Z+pv+ja8bE43uN491b9dHO9Xx4lUxziLn21Nai/wXWM6t9vkvtrwAAAABJRU5ErkJggg==";
|
|
1420
1128
|
}
|
|
1421
|
-
// Return the
|
|
1129
|
+
// Return the IOTA chains that your wallet supports.
|
|
1422
1130
|
get chains() {
|
|
1423
1131
|
return import_wallet_standard3.SUPPORTED_CHAINS;
|
|
1424
1132
|
}
|
|
@@ -1439,13 +1147,13 @@ function registerUnsafeBurnerWallet(iotaClient) {
|
|
|
1439
1147
|
version: "1.0.0",
|
|
1440
1148
|
signPersonalMessage: __privateGet(this, _signPersonalMessage)
|
|
1441
1149
|
},
|
|
1442
|
-
"iota:
|
|
1443
|
-
version: "
|
|
1444
|
-
|
|
1150
|
+
"iota:signTransaction": {
|
|
1151
|
+
version: "2.0.0",
|
|
1152
|
+
signTransaction: __privateGet(this, _signTransaction)
|
|
1445
1153
|
},
|
|
1446
|
-
"iota:
|
|
1447
|
-
version: "
|
|
1448
|
-
|
|
1154
|
+
"iota:signAndExecuteTransaction": {
|
|
1155
|
+
version: "2.0.0",
|
|
1156
|
+
signAndExecuteTransaction: __privateGet(this, _signAndExecuteTransaction)
|
|
1449
1157
|
}
|
|
1450
1158
|
};
|
|
1451
1159
|
}
|
|
@@ -1453,17 +1161,17 @@ function registerUnsafeBurnerWallet(iotaClient) {
|
|
|
1453
1161
|
_on = new WeakMap();
|
|
1454
1162
|
_connect = new WeakMap();
|
|
1455
1163
|
_signPersonalMessage = new WeakMap();
|
|
1456
|
-
|
|
1457
|
-
|
|
1164
|
+
_signTransaction = new WeakMap();
|
|
1165
|
+
_signAndExecuteTransaction = new WeakMap();
|
|
1458
1166
|
return walletsApi.register(new UnsafeBurnerWallet());
|
|
1459
1167
|
}
|
|
1460
1168
|
|
|
1461
1169
|
// src/hooks/wallet/useWalletPropertiesChanged.ts
|
|
1462
|
-
var
|
|
1170
|
+
var import_react13 = require("react");
|
|
1463
1171
|
function useWalletPropertiesChanged() {
|
|
1464
1172
|
const { currentWallet } = useCurrentWallet();
|
|
1465
1173
|
const updateWalletAccounts = useWalletStore((state) => state.updateWalletAccounts);
|
|
1466
|
-
(0,
|
|
1174
|
+
(0, import_react13.useEffect)(() => {
|
|
1467
1175
|
const unsubscribeFromEvents = currentWallet?.features["standard:events"].on(
|
|
1468
1176
|
"change",
|
|
1469
1177
|
({ accounts }) => {
|
|
@@ -1478,18 +1186,19 @@ function useWalletPropertiesChanged() {
|
|
|
1478
1186
|
|
|
1479
1187
|
// src/hooks/wallet/useWalletsChanged.ts
|
|
1480
1188
|
var import_wallet_standard4 = require("@iota/wallet-standard");
|
|
1481
|
-
var
|
|
1482
|
-
function useWalletsChanged(preferredWallets,
|
|
1189
|
+
var import_react14 = require("react");
|
|
1190
|
+
function useWalletsChanged(preferredWallets, walletFilter) {
|
|
1483
1191
|
const setWalletRegistered = useWalletStore((state) => state.setWalletRegistered);
|
|
1484
1192
|
const setWalletUnregistered = useWalletStore((state) => state.setWalletUnregistered);
|
|
1485
|
-
(0,
|
|
1193
|
+
(0, import_react14.useEffect)(() => {
|
|
1486
1194
|
const walletsApi = (0, import_wallet_standard4.getWallets)();
|
|
1195
|
+
setWalletRegistered(getRegisteredWallets(preferredWallets, walletFilter));
|
|
1487
1196
|
const unsubscribeFromRegister = walletsApi.on("register", () => {
|
|
1488
|
-
setWalletRegistered(getRegisteredWallets(preferredWallets,
|
|
1197
|
+
setWalletRegistered(getRegisteredWallets(preferredWallets, walletFilter));
|
|
1489
1198
|
});
|
|
1490
1199
|
const unsubscribeFromUnregister = walletsApi.on("unregister", (unregisteredWallet) => {
|
|
1491
1200
|
setWalletUnregistered(
|
|
1492
|
-
getRegisteredWallets(preferredWallets,
|
|
1201
|
+
getRegisteredWallets(preferredWallets, walletFilter),
|
|
1493
1202
|
unregisteredWallet
|
|
1494
1203
|
);
|
|
1495
1204
|
});
|
|
@@ -1497,38 +1206,38 @@ function useWalletsChanged(preferredWallets, requiredFeatures) {
|
|
|
1497
1206
|
unsubscribeFromRegister();
|
|
1498
1207
|
unsubscribeFromUnregister();
|
|
1499
1208
|
};
|
|
1500
|
-
}, [preferredWallets,
|
|
1209
|
+
}, [preferredWallets, walletFilter, setWalletRegistered, setWalletUnregistered]);
|
|
1501
1210
|
}
|
|
1502
1211
|
|
|
1503
1212
|
// src/themes/lightTheme.ts
|
|
1504
1213
|
var lightTheme = {
|
|
1505
1214
|
blurs: {
|
|
1506
|
-
modalOverlay: "blur(
|
|
1215
|
+
modalOverlay: "blur(0)"
|
|
1507
1216
|
},
|
|
1508
1217
|
backgroundColors: {
|
|
1509
|
-
primaryButton: "#
|
|
1510
|
-
primaryButtonHover: "#
|
|
1511
|
-
outlineButtonHover: "#
|
|
1512
|
-
modalOverlay: "rgba(
|
|
1513
|
-
modalPrimary: "
|
|
1514
|
-
modalSecondary: "#
|
|
1218
|
+
primaryButton: "#F6F7F9",
|
|
1219
|
+
primaryButtonHover: "#F0F2F5",
|
|
1220
|
+
outlineButtonHover: "#F4F4F5",
|
|
1221
|
+
modalOverlay: "rgba(24 36 53 / 20%)",
|
|
1222
|
+
modalPrimary: "white",
|
|
1223
|
+
modalSecondary: "#F7F8F8",
|
|
1515
1224
|
iconButton: "transparent",
|
|
1516
1225
|
dropdownMenu: "#FFFFFF",
|
|
1517
|
-
dropdownMenuSeparator: "#
|
|
1518
|
-
walletItemSelected: "
|
|
1519
|
-
walletItemHover: "
|
|
1226
|
+
dropdownMenuSeparator: "#F3F6F8",
|
|
1227
|
+
walletItemSelected: "white",
|
|
1228
|
+
walletItemHover: "#3C424226",
|
|
1520
1229
|
scrollThumb: "#cad4e2"
|
|
1521
1230
|
},
|
|
1522
1231
|
borderColors: {
|
|
1523
|
-
outlineButton: "#
|
|
1232
|
+
outlineButton: "#E4E4E7"
|
|
1524
1233
|
},
|
|
1525
1234
|
colors: {
|
|
1526
|
-
primaryButton: "#
|
|
1527
|
-
outlineButtonHover: "#
|
|
1528
|
-
iconButton: "#
|
|
1529
|
-
body: "#
|
|
1530
|
-
bodyMuted: "#
|
|
1531
|
-
bodyDanger: "#
|
|
1235
|
+
primaryButton: "#373737",
|
|
1236
|
+
outlineButtonHover: "#373737",
|
|
1237
|
+
iconButton: "#000000",
|
|
1238
|
+
body: "#182435",
|
|
1239
|
+
bodyMuted: "#767A81",
|
|
1240
|
+
bodyDanger: "#FF794B"
|
|
1532
1241
|
},
|
|
1533
1242
|
radii: {
|
|
1534
1243
|
small: "6px",
|
|
@@ -1551,8 +1260,8 @@ var lightTheme = {
|
|
|
1551
1260
|
typography: {
|
|
1552
1261
|
fontFamily: 'ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
|
|
1553
1262
|
fontStyle: "normal",
|
|
1554
|
-
lineHeight: "
|
|
1555
|
-
letterSpacing: "
|
|
1263
|
+
lineHeight: "1.3",
|
|
1264
|
+
letterSpacing: "1"
|
|
1556
1265
|
},
|
|
1557
1266
|
spacing: {
|
|
1558
1267
|
xxsmall: "4px",
|
|
@@ -1584,19 +1293,21 @@ function createWalletStore({
|
|
|
1584
1293
|
lastConnectedAccountAddress: null,
|
|
1585
1294
|
lastConnectedWalletName: null,
|
|
1586
1295
|
connectionStatus: "disconnected",
|
|
1587
|
-
|
|
1296
|
+
supportedIntents: [],
|
|
1297
|
+
setConnectionStatus(connectionStatus2) {
|
|
1588
1298
|
set(() => ({
|
|
1589
|
-
connectionStatus
|
|
1299
|
+
connectionStatus: connectionStatus2
|
|
1590
1300
|
}));
|
|
1591
1301
|
},
|
|
1592
|
-
setWalletConnected(wallet, connectedAccounts, selectedAccount) {
|
|
1302
|
+
setWalletConnected(wallet, connectedAccounts, selectedAccount, supportedIntents = []) {
|
|
1593
1303
|
set(() => ({
|
|
1594
1304
|
accounts: connectedAccounts,
|
|
1595
1305
|
currentWallet: wallet,
|
|
1596
1306
|
currentAccount: selectedAccount,
|
|
1597
1307
|
lastConnectedWalletName: getWalletUniqueIdentifier(wallet),
|
|
1598
1308
|
lastConnectedAccountAddress: selectedAccount?.address,
|
|
1599
|
-
connectionStatus: "connected"
|
|
1309
|
+
connectionStatus: "connected",
|
|
1310
|
+
supportedIntents
|
|
1600
1311
|
}));
|
|
1601
1312
|
},
|
|
1602
1313
|
setWalletDisconnected() {
|
|
@@ -1606,7 +1317,8 @@ function createWalletStore({
|
|
|
1606
1317
|
currentAccount: null,
|
|
1607
1318
|
lastConnectedWalletName: null,
|
|
1608
1319
|
lastConnectedAccountAddress: null,
|
|
1609
|
-
connectionStatus: "disconnected"
|
|
1320
|
+
connectionStatus: "disconnected",
|
|
1321
|
+
supportedIntents: []
|
|
1610
1322
|
}));
|
|
1611
1323
|
},
|
|
1612
1324
|
setAccountSwitched(selectedAccount) {
|
|
@@ -1627,7 +1339,8 @@ function createWalletStore({
|
|
|
1627
1339
|
currentAccount: null,
|
|
1628
1340
|
lastConnectedWalletName: null,
|
|
1629
1341
|
lastConnectedAccountAddress: null,
|
|
1630
|
-
connectionStatus: "disconnected"
|
|
1342
|
+
connectionStatus: "disconnected",
|
|
1343
|
+
supportedIntents: []
|
|
1631
1344
|
}));
|
|
1632
1345
|
} else {
|
|
1633
1346
|
set(() => ({ wallets: updatedWallets }));
|
|
@@ -1728,12 +1441,14 @@ var themeVars = (0, import_css.createGlobalThemeContract)(
|
|
|
1728
1441
|
);
|
|
1729
1442
|
|
|
1730
1443
|
// src/components/styling/InjectedThemeStyles.tsx
|
|
1731
|
-
var
|
|
1444
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
1732
1445
|
function InjectedThemeStyles({ theme }) {
|
|
1733
1446
|
const themeStyles = Array.isArray(theme) ? getDynamicThemeStyles(theme) : getStaticThemeStyles(theme);
|
|
1734
|
-
return /* @__PURE__ */ (0,
|
|
1447
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1735
1448
|
"style",
|
|
1736
1449
|
{
|
|
1450
|
+
precedence: "default",
|
|
1451
|
+
href: "iota-dapp-kit-theme",
|
|
1737
1452
|
dangerouslySetInnerHTML: {
|
|
1738
1453
|
__html: themeStyles
|
|
1739
1454
|
}
|
|
@@ -1754,107 +1469,34 @@ function cssStringFromTheme(theme) {
|
|
|
1754
1469
|
return Object.entries((0, import_dynamic.assignInlineVars)(themeVars, theme)).map(([key, value]) => `${key}:${value};`).join("");
|
|
1755
1470
|
}
|
|
1756
1471
|
|
|
1757
|
-
// src/themes/darkTheme.ts
|
|
1758
|
-
var darkTheme = {
|
|
1759
|
-
blurs: {
|
|
1760
|
-
modalOverlay: "blur(12px)"
|
|
1761
|
-
},
|
|
1762
|
-
backgroundColors: {
|
|
1763
|
-
primaryButton: "#253041",
|
|
1764
|
-
primaryButtonHover: "#313D50",
|
|
1765
|
-
outlineButtonHover: "#313D50",
|
|
1766
|
-
modalOverlay: "rgba(0, 47, 109, 0.72)",
|
|
1767
|
-
modalPrimary: "#0f141c",
|
|
1768
|
-
modalSecondary: "#171d26",
|
|
1769
|
-
iconButton: "transparent",
|
|
1770
|
-
dropdownMenu: "#0f141c",
|
|
1771
|
-
dropdownMenuSeparator: "#bed8ff14",
|
|
1772
|
-
walletItemSelected: "#171D26",
|
|
1773
|
-
walletItemHover: "rgba(190, 216, 255, 0.12)",
|
|
1774
|
-
scrollThumb: "#3c4656"
|
|
1775
|
-
},
|
|
1776
|
-
borderColors: {
|
|
1777
|
-
outlineButton: "#8892A1"
|
|
1778
|
-
},
|
|
1779
|
-
colors: {
|
|
1780
|
-
primaryButton: "#E3EAF6",
|
|
1781
|
-
outlineButtonHover: "#171D26",
|
|
1782
|
-
iconButton: "#E3EAF6",
|
|
1783
|
-
body: "#E3EAF6",
|
|
1784
|
-
bodyMuted: "#8892A1",
|
|
1785
|
-
bodyDanger: "#FFB0BE"
|
|
1786
|
-
},
|
|
1787
|
-
radii: {
|
|
1788
|
-
small: "6px",
|
|
1789
|
-
medium: "8px",
|
|
1790
|
-
large: "12px",
|
|
1791
|
-
xlarge: "16px",
|
|
1792
|
-
full: "120px"
|
|
1793
|
-
},
|
|
1794
|
-
fontWeights: {
|
|
1795
|
-
normal: "400",
|
|
1796
|
-
medium: "500",
|
|
1797
|
-
bold: "600"
|
|
1798
|
-
},
|
|
1799
|
-
fontSizes: {
|
|
1800
|
-
small: "14px",
|
|
1801
|
-
medium: "16px",
|
|
1802
|
-
large: "18px",
|
|
1803
|
-
xlarge: "20px"
|
|
1804
|
-
},
|
|
1805
|
-
typography: {
|
|
1806
|
-
fontFamily: 'ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
|
|
1807
|
-
fontStyle: "normal",
|
|
1808
|
-
lineHeight: "24px",
|
|
1809
|
-
letterSpacing: "0.1px"
|
|
1810
|
-
},
|
|
1811
|
-
spacing: {
|
|
1812
|
-
xxsmall: "4px",
|
|
1813
|
-
xsmall: "8px",
|
|
1814
|
-
small: "12px",
|
|
1815
|
-
medium: "16px",
|
|
1816
|
-
large: "24px",
|
|
1817
|
-
xlarge: "32px"
|
|
1818
|
-
}
|
|
1819
|
-
};
|
|
1820
|
-
|
|
1821
1472
|
// src/components/WalletProvider.tsx
|
|
1822
|
-
var
|
|
1823
|
-
var themeWithSelectorAndMediaQuery = [
|
|
1824
|
-
{
|
|
1825
|
-
selector: ".dark",
|
|
1826
|
-
variables: darkTheme
|
|
1827
|
-
},
|
|
1828
|
-
{
|
|
1829
|
-
variables: lightTheme
|
|
1830
|
-
}
|
|
1831
|
-
];
|
|
1473
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
1832
1474
|
function WalletProvider({
|
|
1833
1475
|
preferredWallets = DEFAULT_PREFERRED_WALLETS,
|
|
1834
|
-
|
|
1476
|
+
walletFilter = DEFAULT_WALLET_FILTER,
|
|
1835
1477
|
storage = DEFAULT_STORAGE,
|
|
1836
1478
|
storageKey = DEFAULT_STORAGE_KEY,
|
|
1837
1479
|
enableUnsafeBurner = false,
|
|
1838
1480
|
autoConnect = false,
|
|
1839
|
-
theme =
|
|
1481
|
+
theme = lightTheme,
|
|
1840
1482
|
children
|
|
1841
1483
|
}) {
|
|
1842
|
-
const storeRef = (0,
|
|
1484
|
+
const storeRef = (0, import_react15.useRef)(
|
|
1843
1485
|
createWalletStore({
|
|
1844
1486
|
autoConnectEnabled: autoConnect,
|
|
1845
|
-
wallets: getRegisteredWallets(preferredWallets,
|
|
1487
|
+
wallets: getRegisteredWallets(preferredWallets, walletFilter),
|
|
1846
1488
|
storage: storage || createInMemoryStore(),
|
|
1847
1489
|
storageKey
|
|
1848
1490
|
})
|
|
1849
1491
|
);
|
|
1850
|
-
return /* @__PURE__ */ (0,
|
|
1492
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(WalletContext.Provider, { value: storeRef.current, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
1851
1493
|
WalletConnectionManager,
|
|
1852
1494
|
{
|
|
1853
1495
|
preferredWallets,
|
|
1854
|
-
|
|
1496
|
+
walletFilter,
|
|
1855
1497
|
enableUnsafeBurner,
|
|
1856
1498
|
children: [
|
|
1857
|
-
theme ? /* @__PURE__ */ (0,
|
|
1499
|
+
theme ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(InjectedThemeStyles, { theme }) : null,
|
|
1858
1500
|
children
|
|
1859
1501
|
]
|
|
1860
1502
|
}
|
|
@@ -1862,11 +1504,11 @@ function WalletProvider({
|
|
|
1862
1504
|
}
|
|
1863
1505
|
function WalletConnectionManager({
|
|
1864
1506
|
preferredWallets = DEFAULT_PREFERRED_WALLETS,
|
|
1865
|
-
|
|
1507
|
+
walletFilter = DEFAULT_WALLET_FILTER,
|
|
1866
1508
|
enableUnsafeBurner = false,
|
|
1867
1509
|
children
|
|
1868
1510
|
}) {
|
|
1869
|
-
useWalletsChanged(preferredWallets,
|
|
1511
|
+
useWalletsChanged(preferredWallets, walletFilter);
|
|
1870
1512
|
useWalletPropertiesChanged();
|
|
1871
1513
|
useUnsafeBurnerWallet(enableUnsafeBurner);
|
|
1872
1514
|
useAutoConnectWallet();
|
|
@@ -1940,7 +1582,9 @@ function useIotaClientQuery(...args) {
|
|
|
1940
1582
|
...options,
|
|
1941
1583
|
queryKey: [iotaContext.network, method, params, ...queryKey],
|
|
1942
1584
|
queryFn: async () => {
|
|
1943
|
-
return await iotaContext.client[method](
|
|
1585
|
+
return await iotaContext.client[method](
|
|
1586
|
+
params
|
|
1587
|
+
);
|
|
1944
1588
|
}
|
|
1945
1589
|
});
|
|
1946
1590
|
}
|
|
@@ -1967,144 +1611,274 @@ function useIotaClientQueries({
|
|
|
1967
1611
|
});
|
|
1968
1612
|
}
|
|
1969
1613
|
|
|
1970
|
-
// src/hooks/wallet/
|
|
1614
|
+
// src/hooks/wallet/useSignAndExecuteTransaction.ts
|
|
1615
|
+
var import_utils4 = require("@iota/iota-sdk/utils");
|
|
1616
|
+
var import_wallet_standard5 = require("@iota/wallet-standard");
|
|
1617
|
+
var import_react_query10 = require("@tanstack/react-query");
|
|
1618
|
+
|
|
1619
|
+
// src/hooks/wallet/useReportTransactionEffects.ts
|
|
1620
|
+
var import_utils3 = require("@iota/iota-sdk/utils");
|
|
1971
1621
|
var import_react_query9 = require("@tanstack/react-query");
|
|
1972
|
-
function
|
|
1622
|
+
function useReportTransactionEffects({
|
|
1973
1623
|
mutationKey,
|
|
1974
|
-
executeFromWallet,
|
|
1975
1624
|
...mutationOptions
|
|
1976
1625
|
} = {}) {
|
|
1977
1626
|
const { currentWallet } = useCurrentWallet();
|
|
1978
1627
|
const currentAccount = useCurrentAccount();
|
|
1979
|
-
const client = useIotaClient();
|
|
1980
1628
|
return (0, import_react_query9.useMutation)({
|
|
1981
|
-
mutationKey: walletMutationKeys.
|
|
1982
|
-
mutationFn: async ({
|
|
1629
|
+
mutationKey: walletMutationKeys.reportTransactionEffects(mutationKey),
|
|
1630
|
+
mutationFn: async ({
|
|
1631
|
+
effects,
|
|
1632
|
+
chain = currentWallet?.chains[0],
|
|
1633
|
+
account = currentAccount
|
|
1634
|
+
}) => {
|
|
1983
1635
|
if (!currentWallet) {
|
|
1984
1636
|
throw new WalletNotConnectedError("No wallet is connected.");
|
|
1985
1637
|
}
|
|
1986
|
-
|
|
1987
|
-
if (!signerAccount) {
|
|
1638
|
+
if (!account) {
|
|
1988
1639
|
throw new WalletNoAccountSelectedError(
|
|
1989
|
-
"No wallet account is selected to
|
|
1640
|
+
"No wallet account is selected to report transaction effects for"
|
|
1990
1641
|
);
|
|
1991
1642
|
}
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
}
|
|
1999
|
-
return walletFeature2.signAndExecuteTransactionBlock({
|
|
2000
|
-
...signTransactionBlockArgs,
|
|
2001
|
-
account: signerAccount,
|
|
2002
|
-
chain: signTransactionBlockArgs.chain ?? signerAccount.chains[0],
|
|
2003
|
-
requestType,
|
|
2004
|
-
options
|
|
1643
|
+
const reportTransactionEffectsFeature = currentWallet.features["iota:reportTransactionEffects"];
|
|
1644
|
+
if (reportTransactionEffectsFeature) {
|
|
1645
|
+
return await reportTransactionEffectsFeature.reportTransactionEffects({
|
|
1646
|
+
effects: Array.isArray(effects) ? (0, import_utils3.toB64)(new Uint8Array(effects)) : effects,
|
|
1647
|
+
account,
|
|
1648
|
+
chain: chain ?? currentWallet?.chains[0]
|
|
2005
1649
|
});
|
|
2006
1650
|
}
|
|
2007
|
-
|
|
2008
|
-
|
|
1651
|
+
},
|
|
1652
|
+
...mutationOptions
|
|
1653
|
+
});
|
|
1654
|
+
}
|
|
1655
|
+
|
|
1656
|
+
// src/hooks/wallet/useSignAndExecuteTransaction.ts
|
|
1657
|
+
function useSignAndExecuteTransaction({
|
|
1658
|
+
mutationKey,
|
|
1659
|
+
execute,
|
|
1660
|
+
...mutationOptions
|
|
1661
|
+
} = {}) {
|
|
1662
|
+
const { currentWallet, supportedIntents } = useCurrentWallet();
|
|
1663
|
+
const currentAccount = useCurrentAccount();
|
|
1664
|
+
const client = useIotaClient();
|
|
1665
|
+
const { mutate: reportTransactionEffects } = useReportTransactionEffects();
|
|
1666
|
+
const executeTransaction = execute ?? (async ({ bytes, signature }) => {
|
|
1667
|
+
const { digest, rawEffects } = await client.executeTransactionBlock({
|
|
1668
|
+
transactionBlock: bytes,
|
|
1669
|
+
signature,
|
|
1670
|
+
options: {
|
|
1671
|
+
showRawEffects: true
|
|
1672
|
+
}
|
|
1673
|
+
});
|
|
1674
|
+
return {
|
|
1675
|
+
digest,
|
|
1676
|
+
rawEffects,
|
|
1677
|
+
effects: (0, import_utils4.toB64)(new Uint8Array(rawEffects)),
|
|
1678
|
+
bytes,
|
|
1679
|
+
signature
|
|
1680
|
+
};
|
|
1681
|
+
});
|
|
1682
|
+
return (0, import_react_query10.useMutation)({
|
|
1683
|
+
mutationKey: walletMutationKeys.signAndExecuteTransaction(mutationKey),
|
|
1684
|
+
mutationFn: async ({ transaction, ...signTransactionArgs }) => {
|
|
1685
|
+
if (!currentWallet) {
|
|
1686
|
+
throw new WalletNotConnectedError("No wallet is connected.");
|
|
1687
|
+
}
|
|
1688
|
+
const signerAccount = signTransactionArgs.account ?? currentAccount;
|
|
1689
|
+
if (!signerAccount) {
|
|
1690
|
+
throw new WalletNoAccountSelectedError(
|
|
1691
|
+
"No wallet account is selected to sign the transaction with."
|
|
1692
|
+
);
|
|
1693
|
+
}
|
|
1694
|
+
const chain = signTransactionArgs.chain ?? signerAccount?.chains[0];
|
|
1695
|
+
if (!currentWallet.features["iota:signTransaction"]) {
|
|
2009
1696
|
throw new WalletFeatureNotSupportedError(
|
|
2010
|
-
"This wallet doesn't support the `
|
|
1697
|
+
"This wallet doesn't support the `signTransaction` feature."
|
|
2011
1698
|
);
|
|
2012
1699
|
}
|
|
2013
|
-
const { signature,
|
|
2014
|
-
...
|
|
1700
|
+
const { signature, bytes } = await (0, import_wallet_standard5.signTransaction)(currentWallet, {
|
|
1701
|
+
...signTransactionArgs,
|
|
1702
|
+
transaction: {
|
|
1703
|
+
async toJSON() {
|
|
1704
|
+
return typeof transaction === "string" ? transaction : await transaction.toJSON({
|
|
1705
|
+
supportedIntents,
|
|
1706
|
+
client
|
|
1707
|
+
});
|
|
1708
|
+
}
|
|
1709
|
+
},
|
|
2015
1710
|
account: signerAccount,
|
|
2016
|
-
chain:
|
|
2017
|
-
});
|
|
2018
|
-
return client.executeTransactionBlock({
|
|
2019
|
-
transactionBlock: transactionBlockBytes,
|
|
2020
|
-
signature,
|
|
2021
|
-
requestType,
|
|
2022
|
-
options
|
|
1711
|
+
chain: signTransactionArgs.chain ?? signerAccount.chains[0]
|
|
2023
1712
|
});
|
|
1713
|
+
const result = await executeTransaction({ bytes, signature });
|
|
1714
|
+
let effects;
|
|
1715
|
+
if ("effects" in result && result.effects?.bcs) {
|
|
1716
|
+
effects = result.effects.bcs;
|
|
1717
|
+
} else if ("rawEffects" in result) {
|
|
1718
|
+
effects = (0, import_utils4.toB64)(new Uint8Array(result.rawEffects));
|
|
1719
|
+
} else {
|
|
1720
|
+
throw new Error("Could not parse effects from transaction result.");
|
|
1721
|
+
}
|
|
1722
|
+
reportTransactionEffects({ effects, account: signerAccount, chain });
|
|
1723
|
+
return result;
|
|
2024
1724
|
},
|
|
2025
1725
|
...mutationOptions
|
|
2026
1726
|
});
|
|
2027
1727
|
}
|
|
2028
1728
|
|
|
2029
1729
|
// src/hooks/wallet/useSignPersonalMessage.ts
|
|
2030
|
-
var
|
|
1730
|
+
var import_react_query11 = require("@tanstack/react-query");
|
|
2031
1731
|
function useSignPersonalMessage({
|
|
2032
1732
|
mutationKey,
|
|
2033
1733
|
...mutationOptions
|
|
2034
1734
|
} = {}) {
|
|
2035
1735
|
const { currentWallet } = useCurrentWallet();
|
|
2036
1736
|
const currentAccount = useCurrentAccount();
|
|
2037
|
-
return (0,
|
|
1737
|
+
return (0, import_react_query11.useMutation)({
|
|
2038
1738
|
mutationKey: walletMutationKeys.signPersonalMessage(mutationKey),
|
|
2039
1739
|
mutationFn: async (signPersonalMessageArgs) => {
|
|
2040
1740
|
if (!currentWallet) {
|
|
2041
1741
|
throw new WalletNotConnectedError("No wallet is connected.");
|
|
2042
1742
|
}
|
|
1743
|
+
const signPersonalMessageFeature = currentWallet.features["iota:signPersonalMessage"];
|
|
1744
|
+
if (!signPersonalMessageFeature) {
|
|
1745
|
+
throw new WalletFeatureNotSupportedError(
|
|
1746
|
+
"This wallet doesn't support the `signPersonalMessage` feature."
|
|
1747
|
+
);
|
|
1748
|
+
}
|
|
2043
1749
|
const signerAccount = signPersonalMessageArgs.account ?? currentAccount;
|
|
2044
1750
|
if (!signerAccount) {
|
|
2045
1751
|
throw new WalletNoAccountSelectedError(
|
|
2046
1752
|
"No wallet account is selected to sign the personal message with."
|
|
2047
1753
|
);
|
|
2048
1754
|
}
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
account: signerAccount
|
|
2054
|
-
});
|
|
2055
|
-
}
|
|
2056
|
-
const signMessageFeature = currentWallet.features["iota:signMessage"];
|
|
2057
|
-
if (signMessageFeature) {
|
|
2058
|
-
console.warn(
|
|
2059
|
-
"This wallet doesn't support the `signPersonalMessage` feature... falling back to `signMessage`."
|
|
2060
|
-
);
|
|
2061
|
-
const { messageBytes, signature } = await signMessageFeature.signMessage({
|
|
2062
|
-
...signPersonalMessageArgs,
|
|
2063
|
-
account: signerAccount
|
|
2064
|
-
});
|
|
2065
|
-
return { bytes: messageBytes, signature };
|
|
2066
|
-
}
|
|
2067
|
-
throw new WalletFeatureNotSupportedError(
|
|
2068
|
-
"This wallet doesn't support the `signPersonalMessage` feature."
|
|
2069
|
-
);
|
|
1755
|
+
return await signPersonalMessageFeature.signPersonalMessage({
|
|
1756
|
+
...signPersonalMessageArgs,
|
|
1757
|
+
account: signerAccount
|
|
1758
|
+
});
|
|
2070
1759
|
},
|
|
2071
1760
|
...mutationOptions
|
|
2072
1761
|
});
|
|
2073
1762
|
}
|
|
2074
1763
|
|
|
2075
|
-
// src/hooks/wallet/
|
|
2076
|
-
var
|
|
2077
|
-
|
|
1764
|
+
// src/hooks/wallet/useSignTransaction.ts
|
|
1765
|
+
var import_wallet_standard6 = require("@iota/wallet-standard");
|
|
1766
|
+
var import_react_query12 = require("@tanstack/react-query");
|
|
1767
|
+
function useSignTransaction({
|
|
2078
1768
|
mutationKey,
|
|
2079
1769
|
...mutationOptions
|
|
2080
1770
|
} = {}) {
|
|
2081
1771
|
const { currentWallet } = useCurrentWallet();
|
|
2082
1772
|
const currentAccount = useCurrentAccount();
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
1773
|
+
const client = useIotaClient();
|
|
1774
|
+
const { mutate: reportTransactionEffects } = useReportTransactionEffects();
|
|
1775
|
+
return (0, import_react_query12.useMutation)({
|
|
1776
|
+
mutationKey: walletMutationKeys.signTransaction(mutationKey),
|
|
1777
|
+
mutationFn: async ({ transaction, ...signTransactionArgs }) => {
|
|
2086
1778
|
if (!currentWallet) {
|
|
2087
1779
|
throw new WalletNotConnectedError("No wallet is connected.");
|
|
2088
1780
|
}
|
|
2089
|
-
const signerAccount =
|
|
1781
|
+
const signerAccount = signTransactionArgs.account ?? currentAccount;
|
|
2090
1782
|
if (!signerAccount) {
|
|
2091
1783
|
throw new WalletNoAccountSelectedError(
|
|
2092
|
-
"No wallet account is selected to sign the transaction
|
|
1784
|
+
"No wallet account is selected to sign the transaction with."
|
|
2093
1785
|
);
|
|
2094
1786
|
}
|
|
2095
|
-
|
|
2096
|
-
if (!walletFeature) {
|
|
1787
|
+
if (!currentWallet.features["iota:signTransaction"]) {
|
|
2097
1788
|
throw new WalletFeatureNotSupportedError(
|
|
2098
|
-
"This wallet doesn't support the `
|
|
1789
|
+
"This wallet doesn't support the `signTransaction` feature."
|
|
2099
1790
|
);
|
|
2100
1791
|
}
|
|
2101
|
-
|
|
2102
|
-
...
|
|
1792
|
+
const { bytes, signature } = await (0, import_wallet_standard6.signTransaction)(currentWallet, {
|
|
1793
|
+
...signTransactionArgs,
|
|
1794
|
+
transaction: {
|
|
1795
|
+
toJSON: async () => {
|
|
1796
|
+
return typeof transaction === "string" ? transaction : await transaction.toJSON({
|
|
1797
|
+
supportedIntents: [],
|
|
1798
|
+
client
|
|
1799
|
+
});
|
|
1800
|
+
}
|
|
1801
|
+
},
|
|
2103
1802
|
account: signerAccount,
|
|
2104
|
-
chain:
|
|
1803
|
+
chain: signTransactionArgs.chain ?? signerAccount.chains[0]
|
|
2105
1804
|
});
|
|
1805
|
+
return {
|
|
1806
|
+
bytes,
|
|
1807
|
+
signature,
|
|
1808
|
+
reportTransactionEffects: (effects) => {
|
|
1809
|
+
reportTransactionEffects({
|
|
1810
|
+
effects,
|
|
1811
|
+
account: signerAccount,
|
|
1812
|
+
chain: signTransactionArgs.chain ?? signerAccount.chains[0]
|
|
1813
|
+
});
|
|
1814
|
+
}
|
|
1815
|
+
};
|
|
2106
1816
|
},
|
|
2107
1817
|
...mutationOptions
|
|
2108
1818
|
});
|
|
2109
1819
|
}
|
|
1820
|
+
|
|
1821
|
+
// src/themes/darkTheme.ts
|
|
1822
|
+
var darkTheme = {
|
|
1823
|
+
blurs: {
|
|
1824
|
+
modalOverlay: "blur(12px)"
|
|
1825
|
+
},
|
|
1826
|
+
backgroundColors: {
|
|
1827
|
+
primaryButton: "#253041",
|
|
1828
|
+
primaryButtonHover: "#313D50",
|
|
1829
|
+
outlineButtonHover: "#313D50",
|
|
1830
|
+
modalOverlay: "rgba(0, 47, 109, 0.72)",
|
|
1831
|
+
modalPrimary: "#0f141c",
|
|
1832
|
+
modalSecondary: "#171d26",
|
|
1833
|
+
iconButton: "transparent",
|
|
1834
|
+
dropdownMenu: "#0f141c",
|
|
1835
|
+
dropdownMenuSeparator: "#bed8ff14",
|
|
1836
|
+
walletItemSelected: "#171D26",
|
|
1837
|
+
walletItemHover: "rgba(190, 216, 255, 0.12)",
|
|
1838
|
+
scrollThumb: "#3c4656"
|
|
1839
|
+
},
|
|
1840
|
+
borderColors: {
|
|
1841
|
+
outlineButton: "#8892A1"
|
|
1842
|
+
},
|
|
1843
|
+
colors: {
|
|
1844
|
+
primaryButton: "#E3EAF6",
|
|
1845
|
+
outlineButtonHover: "#171D26",
|
|
1846
|
+
iconButton: "#E3EAF6",
|
|
1847
|
+
body: "#E3EAF6",
|
|
1848
|
+
bodyMuted: "#8892A1",
|
|
1849
|
+
bodyDanger: "#FFB0BE"
|
|
1850
|
+
},
|
|
1851
|
+
radii: {
|
|
1852
|
+
small: "6px",
|
|
1853
|
+
medium: "8px",
|
|
1854
|
+
large: "12px",
|
|
1855
|
+
xlarge: "16px",
|
|
1856
|
+
full: "120px"
|
|
1857
|
+
},
|
|
1858
|
+
fontWeights: {
|
|
1859
|
+
normal: "400",
|
|
1860
|
+
medium: "500",
|
|
1861
|
+
bold: "600"
|
|
1862
|
+
},
|
|
1863
|
+
fontSizes: {
|
|
1864
|
+
small: "14px",
|
|
1865
|
+
medium: "16px",
|
|
1866
|
+
large: "18px",
|
|
1867
|
+
xlarge: "20px"
|
|
1868
|
+
},
|
|
1869
|
+
typography: {
|
|
1870
|
+
fontFamily: 'ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
|
|
1871
|
+
fontStyle: "normal",
|
|
1872
|
+
lineHeight: "24px",
|
|
1873
|
+
letterSpacing: "0.1px"
|
|
1874
|
+
},
|
|
1875
|
+
spacing: {
|
|
1876
|
+
xxsmall: "4px",
|
|
1877
|
+
xsmall: "8px",
|
|
1878
|
+
small: "12px",
|
|
1879
|
+
medium: "16px",
|
|
1880
|
+
large: "24px",
|
|
1881
|
+
xlarge: "32px"
|
|
1882
|
+
}
|
|
1883
|
+
};
|
|
2110
1884
|
//# sourceMappingURL=index.js.map
|