@iota/dapp-kit 0.1.2 → 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.
Files changed (359) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +14 -12
  3. package/dist/cjs/components/AccountDropdownMenu.css +4 -5
  4. package/dist/cjs/components/AccountDropdownMenu.css.css.map +1 -1
  5. package/dist/cjs/components/AccountDropdownMenu.css.map +3 -3
  6. package/dist/cjs/components/AccountDropdownMenu.d.ts +3 -1
  7. package/dist/cjs/components/AccountDropdownMenu.js +50 -106
  8. package/dist/cjs/components/AccountDropdownMenu.js.map +4 -4
  9. package/dist/cjs/components/ConnectButton.css +5 -10
  10. package/dist/cjs/components/ConnectButton.css.map +3 -3
  11. package/dist/cjs/components/ConnectButton.d.ts +5 -3
  12. package/dist/cjs/components/ConnectButton.js +129 -179
  13. package/dist/cjs/components/ConnectButton.js.map +4 -4
  14. package/dist/cjs/components/IotaClientProvider.d.ts +0 -1
  15. package/dist/cjs/components/WalletProvider.d.ts +3 -3
  16. package/dist/cjs/components/WalletProvider.js +115 -75
  17. package/dist/cjs/components/WalletProvider.js.map +2 -2
  18. package/dist/cjs/components/connect-modal/ConnectModal.css +5 -10
  19. package/dist/cjs/components/connect-modal/ConnectModal.css.css.map +1 -1
  20. package/dist/cjs/components/connect-modal/ConnectModal.css.map +3 -3
  21. package/dist/cjs/components/connect-modal/ConnectModal.js +15 -9
  22. package/dist/cjs/components/connect-modal/ConnectModal.js.map +3 -3
  23. package/dist/cjs/components/connect-modal/InfoSection.css.css.map +1 -1
  24. package/dist/cjs/components/connect-modal/InfoSection.css.map +1 -1
  25. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css +4 -5
  26. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.css.map +1 -1
  27. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.map +3 -3
  28. package/dist/cjs/components/connect-modal/views/ConnectionStatus.js.map +2 -2
  29. package/dist/cjs/components/connect-modal/views/GetTheWallet.css +78 -0
  30. package/dist/cjs/components/connect-modal/views/GetTheWallet.css.css +35 -0
  31. package/dist/cjs/components/connect-modal/views/GetTheWallet.css.css.map +7 -0
  32. package/dist/cjs/components/connect-modal/views/GetTheWallet.css.d.ts +5 -0
  33. package/dist/cjs/components/connect-modal/views/GetTheWallet.css.js +35 -0
  34. package/dist/cjs/components/connect-modal/views/GetTheWallet.css.js.map +7 -0
  35. package/dist/cjs/components/connect-modal/views/GetTheWallet.css.map +7 -0
  36. package/dist/cjs/components/connect-modal/views/GetTheWallet.d.ts +1 -0
  37. package/dist/cjs/components/connect-modal/views/GetTheWallet.js +145 -0
  38. package/dist/cjs/components/connect-modal/views/GetTheWallet.js.map +7 -0
  39. package/dist/cjs/components/connect-modal/views/GettingStarted.css +4 -5
  40. package/dist/cjs/components/connect-modal/views/GettingStarted.css.css.map +1 -1
  41. package/dist/cjs/components/connect-modal/views/GettingStarted.css.map +3 -3
  42. package/dist/cjs/components/connect-modal/views/GettingStarted.js +2 -2
  43. package/dist/cjs/components/connect-modal/views/GettingStarted.js.map +1 -1
  44. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.css.map +1 -1
  45. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.map +1 -1
  46. package/dist/cjs/components/connect-modal/views/index.css +205 -0
  47. package/dist/cjs/components/connect-modal/views/index.css.map +7 -0
  48. package/dist/cjs/components/connect-modal/views/index.d.ts +3 -0
  49. package/dist/cjs/components/connect-modal/views/index.js +286 -0
  50. package/dist/cjs/components/connect-modal/views/index.js.map +7 -0
  51. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.css.map +1 -1
  52. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.map +1 -1
  53. package/dist/cjs/components/connect-modal/wallet-list/WalletList.js +1 -1
  54. package/dist/cjs/components/connect-modal/wallet-list/WalletList.js.map +2 -2
  55. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.css.map +1 -1
  56. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.map +1 -1
  57. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.js.map +1 -1
  58. package/dist/cjs/components/icons/ArrowRightIcon.d.ts +2 -0
  59. package/dist/cjs/components/icons/ArrowRightIcon.js +47 -0
  60. package/dist/cjs/components/icons/ArrowRightIcon.js.map +7 -0
  61. package/dist/cjs/components/icons/ArrowTopRightIcon.d.ts +2 -0
  62. package/dist/cjs/components/icons/ArrowTopRightIcon.js +47 -0
  63. package/dist/cjs/components/icons/ArrowTopRightIcon.js.map +7 -0
  64. package/dist/cjs/components/styling/InjectedThemeStyles.js +15 -8
  65. package/dist/cjs/components/styling/InjectedThemeStyles.js.map +2 -2
  66. package/dist/cjs/components/styling/StyleMarker.css.css.map +1 -1
  67. package/dist/cjs/components/styling/StyleMarker.css.map +1 -1
  68. package/dist/cjs/components/styling/StyleMarker.d.ts +0 -1
  69. package/dist/cjs/components/styling/StyleMarker.js +2 -2
  70. package/dist/cjs/components/styling/StyleMarker.js.map +3 -3
  71. package/dist/cjs/components/ui/Button.css +4 -5
  72. package/dist/cjs/components/ui/Button.css.css +4 -5
  73. package/dist/cjs/components/ui/Button.css.css.map +3 -3
  74. package/dist/cjs/components/ui/Button.css.d.ts +0 -1
  75. package/dist/cjs/components/ui/Button.css.js.map +1 -1
  76. package/dist/cjs/components/ui/Button.css.map +3 -3
  77. package/dist/cjs/components/ui/Button.d.ts +1 -1
  78. package/dist/cjs/components/ui/Button.js.map +1 -1
  79. package/dist/cjs/components/ui/Heading.css.css.map +1 -1
  80. package/dist/cjs/components/ui/Heading.css.map +1 -1
  81. package/dist/cjs/components/ui/Heading.d.ts +0 -1
  82. package/dist/cjs/components/ui/IconButton.css +1 -5
  83. package/dist/cjs/components/ui/IconButton.css.css +1 -5
  84. package/dist/cjs/components/ui/IconButton.css.css.map +3 -3
  85. package/dist/cjs/components/ui/IconButton.css.js.map +1 -1
  86. package/dist/cjs/components/ui/IconButton.css.map +3 -3
  87. package/dist/cjs/components/ui/IconButton.d.ts +1 -1
  88. package/dist/cjs/components/ui/IconButton.js.map +1 -1
  89. package/dist/cjs/components/ui/Text.css.css.map +1 -1
  90. package/dist/cjs/components/ui/Text.css.map +1 -1
  91. package/dist/cjs/components/ui/Text.d.ts +0 -1
  92. package/dist/cjs/constants/styleDataAttribute.js.map +1 -1
  93. package/dist/cjs/constants/walletDefaults.d.ts +3 -2
  94. package/dist/cjs/constants/walletDefaults.js +8 -6
  95. package/dist/cjs/constants/walletDefaults.js.map +2 -2
  96. package/dist/cjs/constants/walletMutationKeys.d.ts +3 -2
  97. package/dist/cjs/constants/walletMutationKeys.js +4 -3
  98. package/dist/cjs/constants/walletMutationKeys.js.map +2 -2
  99. package/dist/cjs/contexts/walletContext.d.ts +1 -2
  100. package/dist/cjs/hooks/useIotaClientInfiniteQuery.js.map +2 -2
  101. package/dist/cjs/hooks/useIotaClientQuery.js +3 -1
  102. package/dist/cjs/hooks/useIotaClientQuery.js.map +2 -2
  103. package/dist/cjs/hooks/wallet/useAutoConnectWallet.js +17 -7
  104. package/dist/cjs/hooks/wallet/useAutoConnectWallet.js.map +2 -2
  105. package/dist/cjs/hooks/wallet/useConnectWallet.js +10 -4
  106. package/dist/cjs/hooks/wallet/useConnectWallet.js.map +2 -2
  107. package/dist/cjs/hooks/wallet/useCurrentWallet.d.ts +3 -0
  108. package/dist/cjs/hooks/wallet/useCurrentWallet.js +7 -3
  109. package/dist/cjs/hooks/wallet/useCurrentWallet.js.map +2 -2
  110. package/dist/cjs/hooks/wallet/useDisconnectWallet.js +11 -6
  111. package/dist/cjs/hooks/wallet/useDisconnectWallet.js.map +2 -2
  112. package/dist/cjs/hooks/wallet/useReportTransactionEffects.d.ts +15 -0
  113. package/dist/cjs/hooks/wallet/{useSignTransactionBlock.js → useReportTransactionEffects.js} +41 -37
  114. package/dist/cjs/hooks/wallet/useReportTransactionEffects.js.map +7 -0
  115. package/dist/cjs/hooks/wallet/useSignAndExecuteTransaction.d.ts +29 -0
  116. package/dist/cjs/hooks/wallet/useSignAndExecuteTransaction.js +252 -0
  117. package/dist/cjs/hooks/wallet/useSignAndExecuteTransaction.js.map +7 -0
  118. package/dist/cjs/hooks/wallet/useSignPersonalMessage.js +21 -27
  119. package/dist/cjs/hooks/wallet/useSignPersonalMessage.js.map +2 -2
  120. package/dist/cjs/hooks/wallet/useSignTransaction.d.ts +18 -0
  121. package/dist/cjs/hooks/wallet/{useSignAndExecuteTransactionBlock.js → useSignTransaction.js} +86 -46
  122. package/dist/cjs/hooks/wallet/useSignTransaction.js.map +7 -0
  123. package/dist/cjs/hooks/wallet/useSwitchAccount.js +11 -6
  124. package/dist/cjs/hooks/wallet/useSwitchAccount.js.map +2 -2
  125. package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.js +45 -33
  126. package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.js.map +2 -2
  127. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js +7 -3
  128. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
  129. package/dist/cjs/hooks/wallet/useWalletsChanged.d.ts +1 -1
  130. package/dist/cjs/hooks/wallet/useWalletsChanged.js +7 -6
  131. package/dist/cjs/hooks/wallet/useWalletsChanged.js.map +2 -2
  132. package/dist/cjs/index.css +5 -10
  133. package/dist/cjs/index.css.map +3 -3
  134. package/dist/cjs/index.d.ts +4 -3
  135. package/dist/cjs/index.js +437 -287
  136. package/dist/cjs/index.js.map +4 -4
  137. package/dist/cjs/themes/darkTheme.d.ts +2 -0
  138. package/dist/cjs/themes/darkTheme.js +88 -0
  139. package/dist/cjs/themes/darkTheme.js.map +7 -0
  140. package/dist/cjs/themes/lightTheme.js +13 -8
  141. package/dist/cjs/themes/lightTheme.js.map +2 -2
  142. package/dist/cjs/themes/themeContract.d.ts +22 -12
  143. package/dist/cjs/themes/themeContract.js +13 -8
  144. package/dist/cjs/themes/themeContract.js.map +2 -2
  145. package/dist/cjs/types.d.ts +1 -1
  146. package/dist/cjs/types.js.map +1 -1
  147. package/dist/cjs/utils/assertUnreachable.js.map +1 -1
  148. package/dist/cjs/utils/walletUtils.d.ts +2 -2
  149. package/dist/cjs/utils/walletUtils.js +2 -2
  150. package/dist/cjs/utils/walletUtils.js.map +2 -2
  151. package/dist/cjs/walletStore.d.ts +3 -2
  152. package/dist/cjs/walletStore.js +8 -4
  153. package/dist/cjs/walletStore.js.map +2 -2
  154. package/dist/esm/components/AccountDropdownMenu.css +4 -5
  155. package/dist/esm/components/AccountDropdownMenu.css.css.map +1 -1
  156. package/dist/esm/components/AccountDropdownMenu.css.map +3 -3
  157. package/dist/esm/components/AccountDropdownMenu.d.ts +3 -1
  158. package/dist/esm/components/AccountDropdownMenu.js +39 -95
  159. package/dist/esm/components/AccountDropdownMenu.js.map +4 -4
  160. package/dist/esm/components/ConnectButton.css +5 -10
  161. package/dist/esm/components/ConnectButton.css.map +3 -3
  162. package/dist/esm/components/ConnectButton.d.ts +5 -3
  163. package/dist/esm/components/ConnectButton.js +101 -151
  164. package/dist/esm/components/ConnectButton.js.map +4 -4
  165. package/dist/esm/components/IotaClientProvider.d.ts +0 -1
  166. package/dist/esm/components/WalletProvider.d.ts +3 -3
  167. package/dist/esm/components/WalletProvider.js +114 -74
  168. package/dist/esm/components/WalletProvider.js.map +2 -2
  169. package/dist/esm/components/connect-modal/ConnectModal.css +5 -10
  170. package/dist/esm/components/connect-modal/ConnectModal.css.css.map +1 -1
  171. package/dist/esm/components/connect-modal/ConnectModal.css.map +3 -3
  172. package/dist/esm/components/connect-modal/ConnectModal.js +15 -9
  173. package/dist/esm/components/connect-modal/ConnectModal.js.map +3 -3
  174. package/dist/esm/components/connect-modal/InfoSection.css.css.map +1 -1
  175. package/dist/esm/components/connect-modal/InfoSection.css.map +1 -1
  176. package/dist/esm/components/connect-modal/views/ConnectionStatus.css +4 -5
  177. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.css.map +1 -1
  178. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.map +3 -3
  179. package/dist/esm/components/connect-modal/views/ConnectionStatus.js.map +2 -2
  180. package/dist/esm/components/connect-modal/views/GetTheWallet.css +78 -0
  181. package/dist/esm/components/connect-modal/views/GetTheWallet.css.css +35 -0
  182. package/dist/esm/components/connect-modal/views/GetTheWallet.css.css.map +7 -0
  183. package/dist/esm/components/connect-modal/views/GetTheWallet.css.d.ts +5 -0
  184. package/dist/esm/components/connect-modal/views/GetTheWallet.css.js +14 -0
  185. package/dist/esm/components/connect-modal/views/GetTheWallet.css.js.map +7 -0
  186. package/dist/esm/components/connect-modal/views/GetTheWallet.css.map +7 -0
  187. package/dist/esm/components/connect-modal/views/GetTheWallet.d.ts +1 -0
  188. package/dist/esm/components/connect-modal/views/GetTheWallet.js +112 -0
  189. package/dist/esm/components/connect-modal/views/GetTheWallet.js.map +7 -0
  190. package/dist/esm/components/connect-modal/views/GettingStarted.css +4 -5
  191. package/dist/esm/components/connect-modal/views/GettingStarted.css.css.map +1 -1
  192. package/dist/esm/components/connect-modal/views/GettingStarted.css.map +3 -3
  193. package/dist/esm/components/connect-modal/views/GettingStarted.js +2 -2
  194. package/dist/esm/components/connect-modal/views/GettingStarted.js.map +1 -1
  195. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.css.map +1 -1
  196. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.map +1 -1
  197. package/dist/esm/components/connect-modal/views/index.css +205 -0
  198. package/dist/esm/components/connect-modal/views/index.css.map +7 -0
  199. package/dist/esm/components/connect-modal/views/index.d.ts +3 -0
  200. package/dist/esm/components/connect-modal/views/index.js +253 -0
  201. package/dist/esm/components/connect-modal/views/index.js.map +7 -0
  202. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.css.map +1 -1
  203. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.map +1 -1
  204. package/dist/esm/components/connect-modal/wallet-list/WalletList.js +1 -1
  205. package/dist/esm/components/connect-modal/wallet-list/WalletList.js.map +2 -2
  206. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.css.map +1 -1
  207. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.map +1 -1
  208. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.js.map +1 -1
  209. package/dist/esm/components/icons/ArrowRightIcon.d.ts +2 -0
  210. package/dist/esm/components/icons/ArrowRightIcon.js +26 -0
  211. package/dist/esm/components/icons/ArrowRightIcon.js.map +7 -0
  212. package/dist/esm/components/icons/ArrowTopRightIcon.d.ts +2 -0
  213. package/dist/esm/components/icons/ArrowTopRightIcon.js +26 -0
  214. package/dist/esm/components/icons/ArrowTopRightIcon.js.map +7 -0
  215. package/dist/esm/components/styling/InjectedThemeStyles.js +15 -8
  216. package/dist/esm/components/styling/InjectedThemeStyles.js.map +2 -2
  217. package/dist/esm/components/styling/StyleMarker.css.css.map +1 -1
  218. package/dist/esm/components/styling/StyleMarker.css.js +2 -2
  219. package/dist/esm/components/styling/StyleMarker.css.js.map +3 -3
  220. package/dist/esm/components/styling/StyleMarker.css.map +1 -1
  221. package/dist/esm/components/styling/StyleMarker.d.ts +0 -1
  222. package/dist/esm/components/styling/StyleMarker.js +2 -2
  223. package/dist/esm/components/styling/StyleMarker.js.map +3 -3
  224. package/dist/esm/components/ui/Button.css +4 -5
  225. package/dist/esm/components/ui/Button.css.css +4 -5
  226. package/dist/esm/components/ui/Button.css.css.map +3 -3
  227. package/dist/esm/components/ui/Button.css.d.ts +0 -1
  228. package/dist/esm/components/ui/Button.css.js.map +1 -1
  229. package/dist/esm/components/ui/Button.css.map +3 -3
  230. package/dist/esm/components/ui/Button.d.ts +1 -1
  231. package/dist/esm/components/ui/Button.js.map +1 -1
  232. package/dist/esm/components/ui/Heading.css.css.map +1 -1
  233. package/dist/esm/components/ui/Heading.css.map +1 -1
  234. package/dist/esm/components/ui/Heading.d.ts +0 -1
  235. package/dist/esm/components/ui/IconButton.css +1 -5
  236. package/dist/esm/components/ui/IconButton.css.css +1 -5
  237. package/dist/esm/components/ui/IconButton.css.css.map +3 -3
  238. package/dist/esm/components/ui/IconButton.css.js.map +1 -1
  239. package/dist/esm/components/ui/IconButton.css.map +3 -3
  240. package/dist/esm/components/ui/IconButton.d.ts +1 -1
  241. package/dist/esm/components/ui/IconButton.js.map +1 -1
  242. package/dist/esm/components/ui/Text.css.css.map +1 -1
  243. package/dist/esm/components/ui/Text.css.map +1 -1
  244. package/dist/esm/components/ui/Text.d.ts +0 -1
  245. package/dist/esm/constants/styleDataAttribute.js.map +1 -1
  246. package/dist/esm/constants/walletDefaults.d.ts +3 -2
  247. package/dist/esm/constants/walletDefaults.js +8 -6
  248. package/dist/esm/constants/walletDefaults.js.map +2 -2
  249. package/dist/esm/constants/walletMutationKeys.d.ts +3 -2
  250. package/dist/esm/constants/walletMutationKeys.js +4 -3
  251. package/dist/esm/constants/walletMutationKeys.js.map +2 -2
  252. package/dist/esm/contexts/walletContext.d.ts +1 -2
  253. package/dist/esm/hooks/useIotaClientInfiniteQuery.js.map +2 -2
  254. package/dist/esm/hooks/useIotaClientQuery.js +3 -1
  255. package/dist/esm/hooks/useIotaClientQuery.js.map +2 -2
  256. package/dist/esm/hooks/wallet/useAutoConnectWallet.js +17 -7
  257. package/dist/esm/hooks/wallet/useAutoConnectWallet.js.map +2 -2
  258. package/dist/esm/hooks/wallet/useConnectWallet.js +10 -4
  259. package/dist/esm/hooks/wallet/useConnectWallet.js.map +2 -2
  260. package/dist/esm/hooks/wallet/useCurrentWallet.d.ts +3 -0
  261. package/dist/esm/hooks/wallet/useCurrentWallet.js +7 -3
  262. package/dist/esm/hooks/wallet/useCurrentWallet.js.map +2 -2
  263. package/dist/esm/hooks/wallet/useDisconnectWallet.js +11 -6
  264. package/dist/esm/hooks/wallet/useDisconnectWallet.js.map +2 -2
  265. package/dist/esm/hooks/wallet/useReportTransactionEffects.d.ts +15 -0
  266. package/dist/esm/hooks/wallet/{useSignTransactionBlock.js → useReportTransactionEffects.js} +38 -34
  267. package/dist/esm/hooks/wallet/useReportTransactionEffects.js.map +7 -0
  268. package/dist/esm/hooks/wallet/useSignAndExecuteTransaction.d.ts +29 -0
  269. package/dist/esm/hooks/wallet/useSignAndExecuteTransaction.js +231 -0
  270. package/dist/esm/hooks/wallet/useSignAndExecuteTransaction.js.map +7 -0
  271. package/dist/esm/hooks/wallet/useSignPersonalMessage.js +21 -27
  272. package/dist/esm/hooks/wallet/useSignPersonalMessage.js.map +2 -2
  273. package/dist/esm/hooks/wallet/useSignTransaction.d.ts +18 -0
  274. package/dist/esm/hooks/wallet/{useSignAndExecuteTransactionBlock.js → useSignTransaction.js} +83 -43
  275. package/dist/esm/hooks/wallet/useSignTransaction.js.map +7 -0
  276. package/dist/esm/hooks/wallet/useSwitchAccount.js +11 -6
  277. package/dist/esm/hooks/wallet/useSwitchAccount.js.map +2 -2
  278. package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.js +44 -32
  279. package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.js.map +2 -2
  280. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js +7 -3
  281. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
  282. package/dist/esm/hooks/wallet/useWalletsChanged.d.ts +1 -1
  283. package/dist/esm/hooks/wallet/useWalletsChanged.js +7 -6
  284. package/dist/esm/hooks/wallet/useWalletsChanged.js.map +2 -2
  285. package/dist/esm/index.css +5 -10
  286. package/dist/esm/index.css.map +3 -3
  287. package/dist/esm/index.d.ts +4 -3
  288. package/dist/esm/index.js +424 -274
  289. package/dist/esm/index.js.map +4 -4
  290. package/dist/esm/themes/darkTheme.d.ts +2 -0
  291. package/dist/esm/themes/darkTheme.js +67 -0
  292. package/dist/esm/themes/darkTheme.js.map +7 -0
  293. package/dist/esm/themes/lightTheme.js +13 -8
  294. package/dist/esm/themes/lightTheme.js.map +2 -2
  295. package/dist/esm/themes/themeContract.d.ts +22 -12
  296. package/dist/esm/themes/themeContract.js +13 -8
  297. package/dist/esm/themes/themeContract.js.map +2 -2
  298. package/dist/esm/types.d.ts +1 -1
  299. package/dist/esm/utils/assertUnreachable.js.map +1 -1
  300. package/dist/esm/utils/walletUtils.d.ts +2 -2
  301. package/dist/esm/utils/walletUtils.js +2 -2
  302. package/dist/esm/utils/walletUtils.js.map +2 -2
  303. package/dist/esm/walletStore.d.ts +3 -2
  304. package/dist/esm/walletStore.js +8 -4
  305. package/dist/esm/walletStore.js.map +2 -2
  306. package/dist/index.css/package.json +5 -0
  307. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  308. package/dist/tsconfig.tsbuildinfo +1 -1
  309. package/package.json +27 -28
  310. package/src/components/AccountDropdownMenu.tsx +5 -12
  311. package/src/components/ConnectButton.tsx +8 -4
  312. package/src/components/WalletProvider.tsx +9 -9
  313. package/src/components/connect-modal/views/GetTheWallet.css.ts +38 -0
  314. package/src/components/connect-modal/views/GetTheWallet.tsx +25 -0
  315. package/src/components/connect-modal/views/GettingStarted.tsx +3 -3
  316. package/src/components/connect-modal/views/index.ts +6 -0
  317. package/src/components/connect-modal/wallet-list/WalletList.tsx +1 -1
  318. package/src/components/icons/ArrowRightIcon.tsx +23 -0
  319. package/src/components/icons/ArrowTopRightIcon.tsx +23 -0
  320. package/src/components/styling/InjectedThemeStyles.tsx +4 -0
  321. package/src/components/ui/Button.css.ts +3 -5
  322. package/src/components/ui/IconButton.css.ts +0 -3
  323. package/src/constants/walletDefaults.ts +11 -5
  324. package/src/constants/walletMutationKeys.ts +3 -2
  325. package/src/hooks/useIotaClientInfiniteQuery.ts +2 -1
  326. package/src/hooks/useIotaClientQuery.ts +3 -1
  327. package/src/hooks/wallet/useAutoConnectWallet.ts +1 -1
  328. package/src/hooks/wallet/useConnectWallet.ts +6 -1
  329. package/src/hooks/wallet/useCurrentWallet.ts +4 -0
  330. package/src/hooks/wallet/useReportTransactionEffects.ts +87 -0
  331. package/src/hooks/wallet/useSignAndExecuteTransaction.ts +165 -0
  332. package/src/hooks/wallet/useSignPersonalMessage.ts +11 -25
  333. package/src/hooks/wallet/useSignTransaction.ts +117 -0
  334. package/src/hooks/wallet/useUnsafeBurnerWallet.ts +41 -18
  335. package/src/hooks/wallet/useWalletsChanged.ts +5 -4
  336. package/src/index.ts +4 -3
  337. package/src/themes/darkTheme.ts +69 -0
  338. package/src/themes/lightTheme.ts +11 -6
  339. package/src/themes/themeContract.ts +11 -6
  340. package/src/types.ts +1 -1
  341. package/src/utils/walletUtils.ts +8 -3
  342. package/src/walletStore.ts +12 -1
  343. package/dist/cjs/hooks/useResolveIotaNSNames.d.ts +0 -3
  344. package/dist/cjs/hooks/useResolveIotaNSNames.js +0 -83
  345. package/dist/cjs/hooks/useResolveIotaNSNames.js.map +0 -7
  346. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +0 -15
  347. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +0 -7
  348. package/dist/cjs/hooks/wallet/useSignTransactionBlock.d.ts +0 -13
  349. package/dist/cjs/hooks/wallet/useSignTransactionBlock.js.map +0 -7
  350. package/dist/esm/hooks/useResolveIotaNSNames.d.ts +0 -3
  351. package/dist/esm/hooks/useResolveIotaNSNames.js +0 -60
  352. package/dist/esm/hooks/useResolveIotaNSNames.js.map +0 -7
  353. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +0 -15
  354. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +0 -7
  355. package/dist/esm/hooks/wallet/useSignTransactionBlock.d.ts +0 -13
  356. package/dist/esm/hooks/wallet/useSignTransactionBlock.js.map +0 -7
  357. package/src/hooks/useResolveIotaNSNames.ts +0 -31
  358. package/src/hooks/wallet/useSignAndExecuteTransactionBlock.ts +0 -117
  359. 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,22 +35,12 @@ 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
- if (!member.has(obj))
37
- throw TypeError("Cannot " + msg);
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
42
  // vanilla-extract-css-ns:src/components/styling/StyleMarker.css.ts.vanilla.css?source=OndoZXJlKCopIHsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGNvbG9yOiB2YXIoLS1kYXBwLWtpdC1jb2xvcnMtYm9keSk7CiAgZm9udC1mYW1pbHk6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udEZhbWlseSk7CiAgZm9udC1zaXplOiB2YXIoLS1kYXBwLWtpdC1mb250V2VpZ2h0cy1ub3JtYWwpOwogIGZvbnQtc3R5bGU6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udFN0eWxlKTsKICBmb250LXdlaWdodDogdmFyKC0tZGFwcC1raXQtZm9udFdlaWdodHMtbm9ybWFsKTsKICBsaW5lLWhlaWdodDogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1saW5lSGVpZ2h0KTsKICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1sZXR0ZXJTcGFjaW5nKTsKfQo6d2hlcmUoYnV0dG9uKSB7CiAgYXBwZWFyYW5jZTogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7CiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7CiAgY29sb3I6IGluaGVyaXQ7CiAgYm9yZGVyOiAwOwogIHBhZGRpbmc6IDA7CiAgbWFyZ2luOiAwOwp9Cjp3aGVyZShhKSB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGNvbG9yOiBpbmhlcml0OwogIG91dGxpbmU6IG5vbmU7Cn0KOndoZXJlKG9sLCB1bCkgewogIGxpc3Qtc3R5bGU6IG5vbmU7CiAgbWFyZ2luOiAwOwogIHBhZGRpbmc6IDA7Cn0KOndoZXJlKGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYpIHsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7CiAgbWFyZ2luOiAwOwp9
50
- var init_ = __esm({
43
+ var init_StyleMarker_css_ts_vanilla = __esm({
51
44
  "vanilla-extract-css-ns:src/components/styling/StyleMarker.css.ts.vanilla.css?source=OndoZXJlKCopIHsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGNvbG9yOiB2YXIoLS1kYXBwLWtpdC1jb2xvcnMtYm9keSk7CiAgZm9udC1mYW1pbHk6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udEZhbWlseSk7CiAgZm9udC1zaXplOiB2YXIoLS1kYXBwLWtpdC1mb250V2VpZ2h0cy1ub3JtYWwpOwogIGZvbnQtc3R5bGU6IHZhcigtLWRhcHAta2l0LXR5cG9ncmFwaHktZm9udFN0eWxlKTsKICBmb250LXdlaWdodDogdmFyKC0tZGFwcC1raXQtZm9udFdlaWdodHMtbm9ybWFsKTsKICBsaW5lLWhlaWdodDogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1saW5lSGVpZ2h0KTsKICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZGFwcC1raXQtdHlwb2dyYXBoeS1sZXR0ZXJTcGFjaW5nKTsKfQo6d2hlcmUoYnV0dG9uKSB7CiAgYXBwZWFyYW5jZTogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7CiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7CiAgY29sb3I6IGluaGVyaXQ7CiAgYm9yZGVyOiAwOwogIHBhZGRpbmc6IDA7CiAgbWFyZ2luOiAwOwp9Cjp3aGVyZShhKSB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGNvbG9yOiBpbmhlcml0OwogIG91dGxpbmU6IG5vbmU7Cn0KOndoZXJlKG9sLCB1bCkgewogIGxpc3Qtc3R5bGU6IG5vbmU7CiAgbWFyZ2luOiAwOwogIHBhZGRpbmc6IDA7Cn0KOndoZXJlKGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYpIHsKICBmb250LXNpemU6IGluaGVyaXQ7CiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7CiAgbWFyZ2luOiAwOwp9"() {
52
45
  }
53
46
  });
@@ -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
- init_();
52
+ init_StyleMarker_css_ts_vanilla();
60
53
  }
61
54
  });
62
55
 
@@ -69,6 +62,7 @@ __export(src_exports, {
69
62
  IotaClientProvider: () => IotaClientProvider,
70
63
  WalletProvider: () => WalletProvider,
71
64
  createNetworkConfig: () => createNetworkConfig,
65
+ darkTheme: () => darkTheme,
72
66
  lightTheme: () => lightTheme,
73
67
  useAccounts: () => useAccounts,
74
68
  useAutoConnectWallet: () => useAutoConnectWallet,
@@ -82,10 +76,10 @@ __export(src_exports, {
82
76
  useIotaClientMutation: () => useIotaClientMutation,
83
77
  useIotaClientQueries: () => useIotaClientQueries,
84
78
  useIotaClientQuery: () => useIotaClientQuery,
85
- useResolveIotaNSName: () => useResolveIotaNSName,
86
- useSignAndExecuteTransactionBlock: () => useSignAndExecuteTransactionBlock,
79
+ useReportTransactionEffects: () => useReportTransactionEffects,
80
+ useSignAndExecuteTransaction: () => useSignAndExecuteTransaction,
87
81
  useSignPersonalMessage: () => useSignPersonalMessage,
88
- useSignTransactionBlock: () => useSignTransactionBlock,
82
+ useSignTransaction: () => useSignTransaction,
89
83
  useSwitchAccount: () => useSwitchAccount,
90
84
  useWallets: () => useWallets
91
85
  });
@@ -107,9 +101,10 @@ var walletMutationKeys = {
107
101
  autoconnectWallet: formMutationKeyFn("autoconnect-wallet"),
108
102
  disconnectWallet: formMutationKeyFn("disconnect-wallet"),
109
103
  signPersonalMessage: formMutationKeyFn("sign-personal-message"),
110
- signTransactionBlock: formMutationKeyFn("sign-transaction-block"),
111
- signAndExecuteTransactionBlock: formMutationKeyFn("sign-and-execute-transaction-block"),
112
- switchAccount: formMutationKeyFn("switch-account")
104
+ signTransaction: formMutationKeyFn("sign-transaction"),
105
+ signAndExecuteTransaction: formMutationKeyFn("sign-and-execute-transaction"),
106
+ switchAccount: formMutationKeyFn("switch-account"),
107
+ reportTransactionEffects: formMutationKeyFn("report-transaction-effects")
113
108
  };
114
109
  function formMutationKeyFn(baseEntity) {
115
110
  return function mutationKeyFn(additionalKeys = []) {
@@ -153,7 +148,12 @@ function useConnectWallet({
153
148
  (account) => account.chains.some(import_wallet_standard.isSupportedChain)
154
149
  );
155
150
  const selectedAccount = getSelectedAccount(connectedIotaAccounts, accountAddress);
156
- setWalletConnected(wallet, connectedIotaAccounts, selectedAccount);
151
+ setWalletConnected(
152
+ wallet,
153
+ connectedIotaAccounts,
154
+ selectedAccount,
155
+ connectResult.supportedIntents
156
+ );
157
157
  return { accounts: connectedIotaAccounts };
158
158
  } catch (error) {
159
159
  setConnectionStatus("disconnected");
@@ -178,11 +178,11 @@ function getSelectedAccount(connectedAccounts, accountAddress) {
178
178
 
179
179
  // src/utils/walletUtils.ts
180
180
  var import_wallet_standard2 = require("@iota/wallet-standard");
181
- function getRegisteredWallets(preferredWallets, requiredFeatures) {
181
+ function getRegisteredWallets(preferredWallets, walletFilter) {
182
182
  const walletsApi = (0, import_wallet_standard2.getWallets)();
183
183
  const wallets = walletsApi.get();
184
184
  const iotaWallets = wallets.filter(
185
- (wallet) => (0, import_wallet_standard2.isWalletWithRequiredFeatureSet)(wallet, requiredFeatures)
185
+ (wallet) => (0, import_wallet_standard2.isWalletWithRequiredFeatureSet)(wallet) && (!walletFilter || walletFilter(wallet))
186
186
  );
187
187
  return [
188
188
  // Preferred wallets, in order:
@@ -423,9 +423,9 @@ var installButtonContainer = "GettingStarted_installButtonContainer__qu36t92";
423
423
  var import_jsx_runtime10 = require("react/jsx-runtime");
424
424
  function GettingStarted() {
425
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" }),
426
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Heading, { as: "h2", children: "Get Started with IOTA" }),
427
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." }),
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
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
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
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)(
@@ -524,7 +524,7 @@ function WalletList({ selectedWalletName, onPlaceholderClick, onSelect }) {
524
524
  )) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
525
525
  WalletListItem,
526
526
  {
527
- name: "Iota Wallet",
527
+ name: "IOTA Wallet",
528
528
  icon: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(IotaIcon, {}),
529
529
  onClick: onPlaceholderClick,
530
530
  isSelected: true
@@ -655,109 +655,13 @@ var import_utils = require("@iota/iota-sdk/utils");
655
655
  var DropdownMenu = __toESM(require("@radix-ui/react-dropdown-menu"));
656
656
  var import_clsx7 = __toESM(require("clsx"));
657
657
 
658
- // src/hooks/useIotaClientQuery.ts
659
- var import_react_query2 = require("@tanstack/react-query");
660
-
661
- // src/hooks/useIotaClient.ts
662
- var import_react10 = require("react");
663
-
664
- // src/components/IotaClientProvider.tsx
665
- var import_client = require("@iota/iota-sdk/client");
666
- var import_react9 = require("react");
667
- var import_jsx_runtime16 = require("react/jsx-runtime");
668
- var IotaClientContext = (0, import_react9.createContext)(null);
669
- var DEFAULT_NETWORKS = {
670
- localnet: { url: (0, import_client.getNetwork)(import_client.Network.Local).url }
671
- };
672
- var DEFAULT_CREATE_CLIENT = function createClient(_name, config) {
673
- if ((0, import_client.isIotaClient)(config)) {
674
- return config;
675
- }
676
- return new import_client.IotaClient(config);
677
- };
678
- function IotaClientProvider(props) {
679
- const { onNetworkChange, network, children } = props;
680
- const networks = props.networks ?? DEFAULT_NETWORKS;
681
- const createClient2 = props.createClient ?? DEFAULT_CREATE_CLIENT;
682
- const [selectedNetwork, setSelectedNetwork] = (0, import_react9.useState)(
683
- props.network ?? props.defaultNetwork ?? Object.keys(networks)[0]
684
- );
685
- const currentNetwork = props.network ?? selectedNetwork;
686
- const client = (0, import_react9.useMemo)(() => {
687
- return createClient2(currentNetwork, networks[currentNetwork]);
688
- }, [createClient2, currentNetwork, networks]);
689
- const ctx = (0, import_react9.useMemo)(() => {
690
- return {
691
- client,
692
- networks,
693
- network: currentNetwork,
694
- config: networks[currentNetwork] instanceof import_client.IotaClient ? null : networks[currentNetwork],
695
- selectNetwork: (newNetwork) => {
696
- if (currentNetwork === newNetwork) {
697
- return;
698
- }
699
- if (!network && newNetwork !== selectedNetwork) {
700
- setSelectedNetwork(newNetwork);
701
- }
702
- onNetworkChange?.(newNetwork);
703
- }
704
- };
705
- }, [client, networks, selectedNetwork, currentNetwork, network, onNetworkChange]);
706
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(IotaClientContext.Provider, { value: ctx, children });
707
- }
708
-
709
- // src/hooks/useIotaClient.ts
710
- function useIotaClientContext() {
711
- const iotaClient = (0, import_react10.useContext)(IotaClientContext);
712
- if (!iotaClient) {
713
- throw new Error(
714
- "Could not find IotaClientContext. Ensure that you have set up the IotaClientProvider"
715
- );
716
- }
717
- return iotaClient;
718
- }
719
- function useIotaClient() {
720
- return useIotaClientContext().client;
721
- }
722
-
723
- // src/hooks/useIotaClientQuery.ts
724
- function useIotaClientQuery(...args) {
725
- const [method, params, { queryKey = [], ...options } = {}] = args;
726
- const iotaContext = useIotaClientContext();
727
- return (0, import_react_query2.useQuery)({
728
- ...options,
729
- queryKey: [iotaContext.network, method, params, ...queryKey],
730
- queryFn: async () => {
731
- return await iotaContext.client[method](params);
732
- }
733
- });
734
- }
735
-
736
- // src/hooks/useResolveIotaNSNames.ts
737
- function useResolveIotaNSName(address, options) {
738
- return useIotaClientQuery(
739
- "resolveNameServiceNames",
740
- {
741
- address,
742
- limit: 1
743
- },
744
- {
745
- ...options,
746
- refetchOnWindowFocus: false,
747
- retry: false,
748
- select: (data) => data.data.length > 0 ? data.data[0] : null,
749
- enabled: !!address && options?.enabled !== false
750
- }
751
- );
752
- }
753
-
754
658
  // src/hooks/wallet/useAccounts.ts
755
659
  function useAccounts() {
756
660
  return useWalletStore((state) => state.accounts);
757
661
  }
758
662
 
759
663
  // src/hooks/wallet/useDisconnectWallet.ts
760
- var import_react_query3 = require("@tanstack/react-query");
664
+ var import_react_query2 = require("@tanstack/react-query");
761
665
 
762
666
  // src/errors/walletErrors.ts
763
667
  var WalletNotConnectedError = class extends Error {
@@ -773,6 +677,7 @@ var WalletAccountNotFoundError = class extends Error {
773
677
  function useCurrentWallet() {
774
678
  const currentWallet = useWalletStore((state) => state.currentWallet);
775
679
  const connectionStatus2 = useWalletStore((state) => state.connectionStatus);
680
+ const supportedIntents = useWalletStore((state) => state.supportedIntents);
776
681
  switch (connectionStatus2) {
777
682
  case "connecting":
778
683
  return {
@@ -780,7 +685,8 @@ function useCurrentWallet() {
780
685
  currentWallet: null,
781
686
  isDisconnected: false,
782
687
  isConnecting: true,
783
- isConnected: false
688
+ isConnected: false,
689
+ supportedIntents: []
784
690
  };
785
691
  case "disconnected":
786
692
  return {
@@ -788,7 +694,8 @@ function useCurrentWallet() {
788
694
  currentWallet: null,
789
695
  isDisconnected: true,
790
696
  isConnecting: false,
791
- isConnected: false
697
+ isConnected: false,
698
+ supportedIntents: []
792
699
  };
793
700
  case "connected": {
794
701
  return {
@@ -796,7 +703,8 @@ function useCurrentWallet() {
796
703
  currentWallet,
797
704
  isDisconnected: false,
798
705
  isConnecting: false,
799
- isConnected: true
706
+ isConnected: true,
707
+ supportedIntents
800
708
  };
801
709
  }
802
710
  }
@@ -809,7 +717,7 @@ function useDisconnectWallet({
809
717
  } = {}) {
810
718
  const { currentWallet } = useCurrentWallet();
811
719
  const setWalletDisconnected = useWalletStore((state) => state.setWalletDisconnected);
812
- return (0, import_react_query3.useMutation)({
720
+ return (0, import_react_query2.useMutation)({
813
721
  mutationKey: walletMutationKeys.disconnectWallet(mutationKey),
814
722
  mutationFn: async () => {
815
723
  if (!currentWallet) {
@@ -830,14 +738,14 @@ function useDisconnectWallet({
830
738
  }
831
739
 
832
740
  // src/hooks/wallet/useSwitchAccount.ts
833
- var import_react_query4 = require("@tanstack/react-query");
741
+ var import_react_query3 = require("@tanstack/react-query");
834
742
  function useSwitchAccount({
835
743
  mutationKey,
836
744
  ...mutationOptions
837
745
  } = {}) {
838
746
  const { currentWallet } = useCurrentWallet();
839
747
  const setAccountSwitched = useWalletStore((state) => state.setAccountSwitched);
840
- return (0, import_react_query4.useMutation)({
748
+ return (0, import_react_query3.useMutation)({
841
749
  mutationKey: walletMutationKeys.switchAccount(mutationKey),
842
750
  mutationFn: async ({ account }) => {
843
751
  if (!currentWallet) {
@@ -866,9 +774,9 @@ var separator = "AccountDropdownMenu_separator__1x0gmpf5";
866
774
  var switchAccountMenuItem = "AccountDropdownMenu_switchAccountMenuItem__1x0gmpf4";
867
775
 
868
776
  // src/components/icons/CheckIcon.tsx
869
- var import_jsx_runtime17 = require("react/jsx-runtime");
777
+ var import_jsx_runtime16 = require("react/jsx-runtime");
870
778
  function CheckIcon(props) {
871
- 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)(
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)(
872
780
  "path",
873
781
  {
874
782
  fill: "currentColor",
@@ -878,9 +786,9 @@ function CheckIcon(props) {
878
786
  }
879
787
 
880
788
  // src/components/icons/ChevronIcon.tsx
881
- var import_jsx_runtime18 = require("react/jsx-runtime");
789
+ var import_jsx_runtime17 = require("react/jsx-runtime");
882
790
  function ChevronIcon(props) {
883
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: 16, height: 16, fill: "none", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
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)(
884
792
  "path",
885
793
  {
886
794
  stroke: "#A0B6C3",
@@ -893,20 +801,17 @@ function ChevronIcon(props) {
893
801
  }
894
802
 
895
803
  // src/components/AccountDropdownMenu.tsx
896
- var import_jsx_runtime19 = require("react/jsx-runtime");
897
- function AccountDropdownMenu({ currentAccount }) {
804
+ var import_jsx_runtime18 = require("react/jsx-runtime");
805
+ function AccountDropdownMenu({ currentAccount, size = "lg" }) {
898
806
  const { mutate: disconnectWallet } = useDisconnectWallet();
899
- const { data: domain } = useResolveIotaNSName(
900
- currentAccount.label ? null : currentAccount.address
901
- );
902
807
  const accounts = useAccounts();
903
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(DropdownMenu.Root, { modal: false, children: [
904
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DropdownMenu.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(Button, { size: "lg", className: connectedAccount, children: [
905
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Text, { mono: true, weight: "bold", children: currentAccount.label ?? domain ?? (0, import_utils.formatAddress)(currentAccount.address) }),
906
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(ChevronIcon, {})
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, {})
907
812
  ] }) }) }),
908
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DropdownMenu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(StyleMarker, { className: menuContainer, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(DropdownMenu.Content, { className: menuContent, children: [
909
- accounts.map((account) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
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)(
910
815
  AccountDropdownMenuItem,
911
816
  {
912
817
  account,
@@ -914,8 +819,8 @@ function AccountDropdownMenu({ currentAccount }) {
914
819
  },
915
820
  account.address
916
821
  )),
917
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DropdownMenu.Separator, { className: separator }),
918
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
822
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DropdownMenu.Separator, { className: separator }),
823
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
919
824
  DropdownMenu.Item,
920
825
  {
921
826
  className: (0, import_clsx7.default)(menuItem),
@@ -931,35 +836,80 @@ function AccountDropdownMenuItem({
931
836
  active
932
837
  }) {
933
838
  const { mutate: switchAccount } = useSwitchAccount();
934
- const { data: domain } = useResolveIotaNSName(account.label ? null : account.address);
935
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
839
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
936
840
  DropdownMenu.Item,
937
841
  {
938
842
  className: (0, import_clsx7.default)(menuItem, switchAccountMenuItem),
939
843
  onSelect: () => switchAccount({ account }),
940
844
  children: [
941
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Text, { mono: true, children: account.label ?? domain ?? (0, import_utils.formatAddress)(account.address) }),
942
- active ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(CheckIcon, {}) : null
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
943
847
  ]
944
848
  }
945
849
  );
946
850
  }
947
851
 
948
852
  // src/components/ConnectButton.tsx
949
- var import_jsx_runtime20 = require("react/jsx-runtime");
853
+ var import_jsx_runtime19 = require("react/jsx-runtime");
950
854
  function ConnectButton({
951
855
  connectText = "Connect Wallet",
856
+ size,
952
857
  ...buttonProps
953
858
  }) {
954
859
  const currentAccount = useCurrentAccount();
955
- return currentAccount ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(AccountDropdownMenu, { currentAccount }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
860
+ return currentAccount ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AccountDropdownMenu, { currentAccount, size }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
956
861
  ConnectModal,
957
862
  {
958
- trigger: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Button, { ...buttonProps, children: connectText }) })
863
+ trigger: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(StyleMarker, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Button, { ...buttonProps, size, children: connectText }) })
959
864
  }
960
865
  );
961
866
  }
962
867
 
868
+ // src/components/IotaClientProvider.tsx
869
+ var import_client = require("@iota/iota-sdk/client");
870
+ var import_react9 = require("react");
871
+ var import_jsx_runtime20 = require("react/jsx-runtime");
872
+ var IotaClientContext = (0, import_react9.createContext)(null);
873
+ var DEFAULT_NETWORKS = {
874
+ localnet: { url: (0, import_client.getNetwork)(import_client.Network.Local).url }
875
+ };
876
+ var DEFAULT_CREATE_CLIENT = function createClient(_name, config) {
877
+ if ((0, import_client.isIotaClient)(config)) {
878
+ return config;
879
+ }
880
+ return new import_client.IotaClient(config);
881
+ };
882
+ function IotaClientProvider(props) {
883
+ const { onNetworkChange, network, children } = props;
884
+ const networks = props.networks ?? DEFAULT_NETWORKS;
885
+ const createClient2 = props.createClient ?? DEFAULT_CREATE_CLIENT;
886
+ const [selectedNetwork, setSelectedNetwork] = (0, import_react9.useState)(
887
+ props.network ?? props.defaultNetwork ?? Object.keys(networks)[0]
888
+ );
889
+ const currentNetwork = props.network ?? selectedNetwork;
890
+ const client = (0, import_react9.useMemo)(() => {
891
+ return createClient2(currentNetwork, networks[currentNetwork]);
892
+ }, [createClient2, currentNetwork, networks]);
893
+ const ctx = (0, import_react9.useMemo)(() => {
894
+ return {
895
+ client,
896
+ networks,
897
+ network: currentNetwork,
898
+ config: networks[currentNetwork] instanceof import_client.IotaClient ? null : networks[currentNetwork],
899
+ selectNetwork: (newNetwork) => {
900
+ if (currentNetwork === newNetwork) {
901
+ return;
902
+ }
903
+ if (!network && newNetwork !== selectedNetwork) {
904
+ setSelectedNetwork(newNetwork);
905
+ }
906
+ onNetworkChange?.(newNetwork);
907
+ }
908
+ };
909
+ }, [client, networks, selectedNetwork, currentNetwork, network, onNetworkChange]);
910
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(IotaClientContext.Provider, { value: ctx, children });
911
+ }
912
+
963
913
  // src/components/WalletProvider.tsx
964
914
  var import_react15 = require("react");
965
915
 
@@ -980,17 +930,18 @@ function createInMemoryStore() {
980
930
  }
981
931
 
982
932
  // src/constants/walletDefaults.ts
983
- var IOTA_WALLET_NAME = "Iota Wallet";
933
+ var IOTA_WALLET_NAME = "IOTA Wallet";
984
934
  var DEFAULT_STORAGE = typeof window !== "undefined" && window.localStorage ? localStorage : createInMemoryStore();
985
935
  var DEFAULT_STORAGE_KEY = "iota-dapp-kit:wallet-connection-info";
986
- var DEFAULT_REQUIRED_FEATURES = [
987
- "iota:signTransactionBlock"
988
- ];
936
+ var SIGN_FEATURES = ["iota:signTransaction"];
937
+ var DEFAULT_WALLET_FILTER = (wallet) => SIGN_FEATURES.some((feature) => wallet.features[feature]);
989
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;
990
941
 
991
942
  // src/hooks/wallet/useAutoConnectWallet.ts
992
- var import_react_query5 = require("@tanstack/react-query");
993
- var import_react11 = require("react");
943
+ var import_react_query4 = require("@tanstack/react-query");
944
+ var import_react10 = require("react");
994
945
  function useAutoConnectWallet() {
995
946
  const { mutateAsync: connectWallet } = useConnectWallet();
996
947
  const autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);
@@ -1000,11 +951,11 @@ function useAutoConnectWallet() {
1000
951
  );
1001
952
  const wallets = useWallets();
1002
953
  const { isConnected } = useCurrentWallet();
1003
- const [clientOnly, setClientOnly] = (0, import_react11.useState)(false);
1004
- (0, import_react11.useLayoutEffect)(() => {
954
+ const [clientOnly, setClientOnly] = (0, import_react10.useState)(false);
955
+ (0, import_react10.useLayoutEffect)(() => {
1005
956
  setClientOnly(true);
1006
957
  }, []);
1007
- const { data, isError } = (0, import_react_query5.useQuery)({
958
+ const { data, isError } = (0, import_react_query4.useQuery)({
1008
959
  queryKey: [
1009
960
  "@iota/dapp-kit",
1010
961
  "autoconnect",
@@ -1065,8 +1016,27 @@ function useAutoConnectWallet() {
1065
1016
 
1066
1017
  // src/hooks/wallet/useUnsafeBurnerWallet.ts
1067
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");
1068
1021
  var import_wallet_standard3 = require("@iota/wallet-standard");
1069
1022
  var import_react12 = require("react");
1023
+
1024
+ // src/hooks/useIotaClient.ts
1025
+ var import_react11 = require("react");
1026
+ function useIotaClientContext() {
1027
+ const iotaClient = (0, import_react11.useContext)(IotaClientContext);
1028
+ if (!iotaClient) {
1029
+ throw new Error(
1030
+ "Could not find IotaClientContext. Ensure that you have set up the IotaClientProvider"
1031
+ );
1032
+ }
1033
+ return iotaClient;
1034
+ }
1035
+ function useIotaClient() {
1036
+ return useIotaClientContext().client;
1037
+ }
1038
+
1039
+ // src/hooks/wallet/useUnsafeBurnerWallet.ts
1070
1040
  var WALLET_NAME = "Unsafe Burner Wallet";
1071
1041
  function useUnsafeBurnerWallet(enabled) {
1072
1042
  const iotaClient = useIotaClient();
@@ -1079,7 +1049,7 @@ function useUnsafeBurnerWallet(enabled) {
1079
1049
  }, [enabled, iotaClient]);
1080
1050
  }
1081
1051
  function registerUnsafeBurnerWallet(iotaClient) {
1082
- var _on, _connect, _signPersonalMessage, _signTransactionBlock, _signAndExecuteTransactionBlock;
1052
+ var _on, _connect, _signPersonalMessage, _signTransaction, _signAndExecuteTransaction;
1083
1053
  const walletsApi = (0, import_wallet_standard3.getWallets)();
1084
1054
  const registeredWallets = walletsApi.get();
1085
1055
  if (registeredWallets.find((wallet) => wallet.name === WALLET_NAME)) {
@@ -1096,7 +1066,7 @@ function registerUnsafeBurnerWallet(iotaClient) {
1096
1066
  address: keypair.getPublicKey().toIotaAddress(),
1097
1067
  publicKey: keypair.getPublicKey().toIotaBytes(),
1098
1068
  chains: ["iota:unknown"],
1099
- features: ["iota:signAndExecuteTransactionBlock", "iota:signTransactionBlock"]
1069
+ features: ["iota:signTransaction", "iota:signAndExecuteTransaction"]
1100
1070
  });
1101
1071
  class UnsafeBurnerWallet {
1102
1072
  constructor() {
@@ -1111,23 +1081,40 @@ function registerUnsafeBurnerWallet(iotaClient) {
1111
1081
  const { bytes, signature } = await keypair.signPersonalMessage(messageInput.message);
1112
1082
  return { bytes, signature };
1113
1083
  });
1114
- __privateAdd(this, _signTransactionBlock, async (transactionInput) => {
1115
- const { bytes, signature } = await transactionInput.transactionBlock.sign({
1084
+ __privateAdd(this, _signTransaction, async (transactionInput) => {
1085
+ const { bytes, signature } = await import_transactions.Transaction.from(
1086
+ await transactionInput.transaction.toJSON()
1087
+ ).sign({
1116
1088
  client: iotaClient,
1117
1089
  signer: keypair
1118
1090
  });
1091
+ transactionInput.signal?.throwIfAborted();
1119
1092
  return {
1120
- transactionBlockBytes: bytes,
1093
+ bytes,
1121
1094
  signature
1122
1095
  };
1123
1096
  });
1124
- __privateAdd(this, _signAndExecuteTransactionBlock, async (transactionInput) => {
1125
- return await iotaClient.signAndExecuteTransactionBlock({
1126
- signer: keypair,
1127
- transactionBlock: transactionInput.transactionBlock,
1128
- options: transactionInput.options,
1129
- requestType: transactionInput.requestType
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
+ }
1130
1111
  });
1112
+ return {
1113
+ bytes,
1114
+ signature,
1115
+ digest,
1116
+ effects: (0, import_utils2.toB64)(new Uint8Array(rawEffects))
1117
+ };
1131
1118
  });
1132
1119
  }
1133
1120
  get version() {
@@ -1139,7 +1126,7 @@ function registerUnsafeBurnerWallet(iotaClient) {
1139
1126
  get icon() {
1140
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==";
1141
1128
  }
1142
- // Return the Iota chains that your wallet supports.
1129
+ // Return the IOTA chains that your wallet supports.
1143
1130
  get chains() {
1144
1131
  return import_wallet_standard3.SUPPORTED_CHAINS;
1145
1132
  }
@@ -1160,13 +1147,13 @@ function registerUnsafeBurnerWallet(iotaClient) {
1160
1147
  version: "1.0.0",
1161
1148
  signPersonalMessage: __privateGet(this, _signPersonalMessage)
1162
1149
  },
1163
- "iota:signTransactionBlock": {
1164
- version: "1.0.0",
1165
- signTransactionBlock: __privateGet(this, _signTransactionBlock)
1150
+ "iota:signTransaction": {
1151
+ version: "2.0.0",
1152
+ signTransaction: __privateGet(this, _signTransaction)
1166
1153
  },
1167
- "iota:signAndExecuteTransactionBlock": {
1168
- version: "1.0.0",
1169
- signAndExecuteTransactionBlock: __privateGet(this, _signAndExecuteTransactionBlock)
1154
+ "iota:signAndExecuteTransaction": {
1155
+ version: "2.0.0",
1156
+ signAndExecuteTransaction: __privateGet(this, _signAndExecuteTransaction)
1170
1157
  }
1171
1158
  };
1172
1159
  }
@@ -1174,8 +1161,8 @@ function registerUnsafeBurnerWallet(iotaClient) {
1174
1161
  _on = new WeakMap();
1175
1162
  _connect = new WeakMap();
1176
1163
  _signPersonalMessage = new WeakMap();
1177
- _signTransactionBlock = new WeakMap();
1178
- _signAndExecuteTransactionBlock = new WeakMap();
1164
+ _signTransaction = new WeakMap();
1165
+ _signAndExecuteTransaction = new WeakMap();
1179
1166
  return walletsApi.register(new UnsafeBurnerWallet());
1180
1167
  }
1181
1168
 
@@ -1200,17 +1187,18 @@ function useWalletPropertiesChanged() {
1200
1187
  // src/hooks/wallet/useWalletsChanged.ts
1201
1188
  var import_wallet_standard4 = require("@iota/wallet-standard");
1202
1189
  var import_react14 = require("react");
1203
- function useWalletsChanged(preferredWallets, requiredFeatures) {
1190
+ function useWalletsChanged(preferredWallets, walletFilter) {
1204
1191
  const setWalletRegistered = useWalletStore((state) => state.setWalletRegistered);
1205
1192
  const setWalletUnregistered = useWalletStore((state) => state.setWalletUnregistered);
1206
1193
  (0, import_react14.useEffect)(() => {
1207
1194
  const walletsApi = (0, import_wallet_standard4.getWallets)();
1195
+ setWalletRegistered(getRegisteredWallets(preferredWallets, walletFilter));
1208
1196
  const unsubscribeFromRegister = walletsApi.on("register", () => {
1209
- setWalletRegistered(getRegisteredWallets(preferredWallets, requiredFeatures));
1197
+ setWalletRegistered(getRegisteredWallets(preferredWallets, walletFilter));
1210
1198
  });
1211
1199
  const unsubscribeFromUnregister = walletsApi.on("unregister", (unregisteredWallet) => {
1212
1200
  setWalletUnregistered(
1213
- getRegisteredWallets(preferredWallets, requiredFeatures),
1201
+ getRegisteredWallets(preferredWallets, walletFilter),
1214
1202
  unregisteredWallet
1215
1203
  );
1216
1204
  });
@@ -1218,7 +1206,7 @@ function useWalletsChanged(preferredWallets, requiredFeatures) {
1218
1206
  unsubscribeFromRegister();
1219
1207
  unsubscribeFromUnregister();
1220
1208
  };
1221
- }, [preferredWallets, requiredFeatures, setWalletRegistered, setWalletUnregistered]);
1209
+ }, [preferredWallets, walletFilter, setWalletRegistered, setWalletUnregistered]);
1222
1210
  }
1223
1211
 
1224
1212
  // src/themes/lightTheme.ts
@@ -1234,18 +1222,18 @@ var lightTheme = {
1234
1222
  modalPrimary: "white",
1235
1223
  modalSecondary: "#F7F8F8",
1236
1224
  iconButton: "transparent",
1237
- iconButtonHover: "#F0F1F2",
1238
1225
  dropdownMenu: "#FFFFFF",
1239
1226
  dropdownMenuSeparator: "#F3F6F8",
1240
1227
  walletItemSelected: "white",
1241
- walletItemHover: "#3C424226"
1228
+ walletItemHover: "#3C424226",
1229
+ scrollThumb: "#cad4e2"
1242
1230
  },
1243
1231
  borderColors: {
1244
1232
  outlineButton: "#E4E4E7"
1245
1233
  },
1246
1234
  colors: {
1247
1235
  primaryButton: "#373737",
1248
- outlineButton: "#373737",
1236
+ outlineButtonHover: "#373737",
1249
1237
  iconButton: "#000000",
1250
1238
  body: "#182435",
1251
1239
  bodyMuted: "#767A81",
@@ -1255,11 +1243,8 @@ var lightTheme = {
1255
1243
  small: "6px",
1256
1244
  medium: "8px",
1257
1245
  large: "12px",
1258
- xlarge: "16px"
1259
- },
1260
- shadows: {
1261
- primaryButton: "0px 4px 12px rgba(0, 0, 0, 0.1)",
1262
- walletItemSelected: "0px 2px 6px rgba(0, 0, 0, 0.05)"
1246
+ xlarge: "16px",
1247
+ full: "120px"
1263
1248
  },
1264
1249
  fontWeights: {
1265
1250
  normal: "400",
@@ -1277,6 +1262,14 @@ var lightTheme = {
1277
1262
  fontStyle: "normal",
1278
1263
  lineHeight: "1.3",
1279
1264
  letterSpacing: "1"
1265
+ },
1266
+ spacing: {
1267
+ xxsmall: "4px",
1268
+ xsmall: "8px",
1269
+ small: "12px",
1270
+ medium: "16px",
1271
+ large: "24px",
1272
+ xlarge: "32px"
1280
1273
  }
1281
1274
  };
1282
1275
 
@@ -1300,19 +1293,21 @@ function createWalletStore({
1300
1293
  lastConnectedAccountAddress: null,
1301
1294
  lastConnectedWalletName: null,
1302
1295
  connectionStatus: "disconnected",
1296
+ supportedIntents: [],
1303
1297
  setConnectionStatus(connectionStatus2) {
1304
1298
  set(() => ({
1305
1299
  connectionStatus: connectionStatus2
1306
1300
  }));
1307
1301
  },
1308
- setWalletConnected(wallet, connectedAccounts, selectedAccount) {
1302
+ setWalletConnected(wallet, connectedAccounts, selectedAccount, supportedIntents = []) {
1309
1303
  set(() => ({
1310
1304
  accounts: connectedAccounts,
1311
1305
  currentWallet: wallet,
1312
1306
  currentAccount: selectedAccount,
1313
1307
  lastConnectedWalletName: getWalletUniqueIdentifier(wallet),
1314
1308
  lastConnectedAccountAddress: selectedAccount?.address,
1315
- connectionStatus: "connected"
1309
+ connectionStatus: "connected",
1310
+ supportedIntents
1316
1311
  }));
1317
1312
  },
1318
1313
  setWalletDisconnected() {
@@ -1322,7 +1317,8 @@ function createWalletStore({
1322
1317
  currentAccount: null,
1323
1318
  lastConnectedWalletName: null,
1324
1319
  lastConnectedAccountAddress: null,
1325
- connectionStatus: "disconnected"
1320
+ connectionStatus: "disconnected",
1321
+ supportedIntents: []
1326
1322
  }));
1327
1323
  },
1328
1324
  setAccountSwitched(selectedAccount) {
@@ -1343,7 +1339,8 @@ function createWalletStore({
1343
1339
  currentAccount: null,
1344
1340
  lastConnectedWalletName: null,
1345
1341
  lastConnectedAccountAddress: null,
1346
- connectionStatus: "disconnected"
1342
+ connectionStatus: "disconnected",
1343
+ supportedIntents: []
1347
1344
  }));
1348
1345
  } else {
1349
1346
  set(() => ({ wallets: updatedWallets }));
@@ -1390,16 +1387,16 @@ var themeContractValues = {
1390
1387
  modalPrimary: "",
1391
1388
  modalSecondary: "",
1392
1389
  iconButton: "",
1393
- iconButtonHover: "",
1394
1390
  dropdownMenu: "",
1395
- dropdownMenuSeparator: ""
1391
+ dropdownMenuSeparator: "",
1392
+ scrollThumb: ""
1396
1393
  },
1397
1394
  borderColors: {
1398
1395
  outlineButton: ""
1399
1396
  },
1400
1397
  colors: {
1401
1398
  primaryButton: "",
1402
- outlineButton: "",
1399
+ outlineButtonHover: "",
1403
1400
  body: "",
1404
1401
  bodyMuted: "",
1405
1402
  bodyDanger: "",
@@ -1409,11 +1406,8 @@ var themeContractValues = {
1409
1406
  small: "",
1410
1407
  medium: "",
1411
1408
  large: "",
1412
- xlarge: ""
1413
- },
1414
- shadows: {
1415
- primaryButton: "",
1416
- walletItemSelected: ""
1409
+ xlarge: "",
1410
+ full: ""
1417
1411
  },
1418
1412
  fontWeights: {
1419
1413
  normal: "",
@@ -1431,6 +1425,14 @@ var themeContractValues = {
1431
1425
  fontStyle: "",
1432
1426
  lineHeight: "",
1433
1427
  letterSpacing: ""
1428
+ },
1429
+ spacing: {
1430
+ xxsmall: "",
1431
+ xsmall: "",
1432
+ small: "",
1433
+ medium: "",
1434
+ large: "",
1435
+ xlarge: ""
1434
1436
  }
1435
1437
  };
1436
1438
  var themeVars = (0, import_css.createGlobalThemeContract)(
@@ -1445,6 +1447,8 @@ function InjectedThemeStyles({ theme }) {
1445
1447
  return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1446
1448
  "style",
1447
1449
  {
1450
+ precedence: "default",
1451
+ href: "iota-dapp-kit-theme",
1448
1452
  dangerouslySetInnerHTML: {
1449
1453
  __html: themeStyles
1450
1454
  }
@@ -1469,7 +1473,7 @@ function cssStringFromTheme(theme) {
1469
1473
  var import_jsx_runtime22 = require("react/jsx-runtime");
1470
1474
  function WalletProvider({
1471
1475
  preferredWallets = DEFAULT_PREFERRED_WALLETS,
1472
- requiredFeatures = DEFAULT_REQUIRED_FEATURES,
1476
+ walletFilter = DEFAULT_WALLET_FILTER,
1473
1477
  storage = DEFAULT_STORAGE,
1474
1478
  storageKey = DEFAULT_STORAGE_KEY,
1475
1479
  enableUnsafeBurner = false,
@@ -1480,7 +1484,7 @@ function WalletProvider({
1480
1484
  const storeRef = (0, import_react15.useRef)(
1481
1485
  createWalletStore({
1482
1486
  autoConnectEnabled: autoConnect,
1483
- wallets: getRegisteredWallets(preferredWallets, requiredFeatures),
1487
+ wallets: getRegisteredWallets(preferredWallets, walletFilter),
1484
1488
  storage: storage || createInMemoryStore(),
1485
1489
  storageKey
1486
1490
  })
@@ -1489,7 +1493,7 @@ function WalletProvider({
1489
1493
  WalletConnectionManager,
1490
1494
  {
1491
1495
  preferredWallets,
1492
- requiredFeatures,
1496
+ walletFilter,
1493
1497
  enableUnsafeBurner,
1494
1498
  children: [
1495
1499
  theme ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(InjectedThemeStyles, { theme }) : null,
@@ -1500,11 +1504,11 @@ function WalletProvider({
1500
1504
  }
1501
1505
  function WalletConnectionManager({
1502
1506
  preferredWallets = DEFAULT_PREFERRED_WALLETS,
1503
- requiredFeatures = DEFAULT_REQUIRED_FEATURES,
1507
+ walletFilter = DEFAULT_WALLET_FILTER,
1504
1508
  enableUnsafeBurner = false,
1505
1509
  children
1506
1510
  }) {
1507
- useWalletsChanged(preferredWallets, requiredFeatures);
1511
+ useWalletsChanged(preferredWallets, walletFilter);
1508
1512
  useWalletPropertiesChanged();
1509
1513
  useUnsafeBurnerWallet(enableUnsafeBurner);
1510
1514
  useAutoConnectWallet();
@@ -1537,14 +1541,14 @@ function createNetworkConfig(networkConfig) {
1537
1541
  }
1538
1542
 
1539
1543
  // src/hooks/useIotaClientInfiniteQuery.ts
1540
- var import_react_query6 = require("@tanstack/react-query");
1544
+ var import_react_query5 = require("@tanstack/react-query");
1541
1545
  function useIotaClientInfiniteQuery(method, params, {
1542
1546
  queryKey = [],
1543
1547
  enabled = !!params,
1544
1548
  ...options
1545
1549
  } = {}) {
1546
1550
  const iotaContext = useIotaClientContext();
1547
- return (0, import_react_query6.useInfiniteQuery)({
1551
+ return (0, import_react_query5.useInfiniteQuery)({
1548
1552
  ...options,
1549
1553
  initialPageParam: null,
1550
1554
  queryKey: [iotaContext.network, method, params, ...queryKey],
@@ -1558,10 +1562,10 @@ function useIotaClientInfiniteQuery(method, params, {
1558
1562
  }
1559
1563
 
1560
1564
  // src/hooks/useIotaClientMutation.ts
1561
- var import_react_query7 = require("@tanstack/react-query");
1565
+ var import_react_query6 = require("@tanstack/react-query");
1562
1566
  function useIotaClientMutation(method, options = {}) {
1563
1567
  const iotaContext = useIotaClientContext();
1564
- return (0, import_react_query7.useMutation)({
1568
+ return (0, import_react_query6.useMutation)({
1565
1569
  ...options,
1566
1570
  mutationFn: async (params) => {
1567
1571
  return await iotaContext.client[method](params);
@@ -1569,6 +1573,22 @@ function useIotaClientMutation(method, options = {}) {
1569
1573
  });
1570
1574
  }
1571
1575
 
1576
+ // src/hooks/useIotaClientQuery.ts
1577
+ var import_react_query7 = require("@tanstack/react-query");
1578
+ function useIotaClientQuery(...args) {
1579
+ const [method, params, { queryKey = [], ...options } = {}] = args;
1580
+ const iotaContext = useIotaClientContext();
1581
+ return (0, import_react_query7.useQuery)({
1582
+ ...options,
1583
+ queryKey: [iotaContext.network, method, params, ...queryKey],
1584
+ queryFn: async () => {
1585
+ return await iotaContext.client[method](
1586
+ params
1587
+ );
1588
+ }
1589
+ });
1590
+ }
1591
+
1572
1592
  // src/hooks/useIotaClientQueries.ts
1573
1593
  var import_react_query8 = require("@tanstack/react-query");
1574
1594
  function useIotaClientQueries({
@@ -1591,144 +1611,274 @@ function useIotaClientQueries({
1591
1611
  });
1592
1612
  }
1593
1613
 
1594
- // src/hooks/wallet/useSignAndExecuteTransactionBlock.ts
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");
1595
1621
  var import_react_query9 = require("@tanstack/react-query");
1596
- function useSignAndExecuteTransactionBlock({
1622
+ function useReportTransactionEffects({
1597
1623
  mutationKey,
1598
- executeFromWallet,
1599
1624
  ...mutationOptions
1600
1625
  } = {}) {
1601
1626
  const { currentWallet } = useCurrentWallet();
1602
1627
  const currentAccount = useCurrentAccount();
1603
- const client = useIotaClient();
1604
1628
  return (0, import_react_query9.useMutation)({
1605
- mutationKey: walletMutationKeys.signAndExecuteTransactionBlock(mutationKey),
1606
- mutationFn: async ({ requestType, options, ...signTransactionBlockArgs }) => {
1629
+ mutationKey: walletMutationKeys.reportTransactionEffects(mutationKey),
1630
+ mutationFn: async ({
1631
+ effects,
1632
+ chain = currentWallet?.chains[0],
1633
+ account = currentAccount
1634
+ }) => {
1607
1635
  if (!currentWallet) {
1608
1636
  throw new WalletNotConnectedError("No wallet is connected.");
1609
1637
  }
1610
- const signerAccount = signTransactionBlockArgs.account ?? currentAccount;
1611
- if (!signerAccount) {
1638
+ if (!account) {
1612
1639
  throw new WalletNoAccountSelectedError(
1613
- "No wallet account is selected to sign and execute the transaction block with."
1640
+ "No wallet account is selected to report transaction effects for"
1614
1641
  );
1615
1642
  }
1616
- if (executeFromWallet) {
1617
- const walletFeature2 = currentWallet.features["iota:signAndExecuteTransactionBlock"];
1618
- if (!walletFeature2) {
1619
- throw new WalletFeatureNotSupportedError(
1620
- "This wallet doesn't support the `signAndExecuteTransactionBlock` feature."
1621
- );
1622
- }
1623
- return walletFeature2.signAndExecuteTransactionBlock({
1624
- ...signTransactionBlockArgs,
1625
- account: signerAccount,
1626
- chain: signTransactionBlockArgs.chain ?? signerAccount.chains[0],
1627
- requestType,
1628
- 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]
1629
1649
  });
1630
1650
  }
1631
- const walletFeature = currentWallet.features["iota:signTransactionBlock"];
1632
- if (!walletFeature) {
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"]) {
1633
1696
  throw new WalletFeatureNotSupportedError(
1634
- "This wallet doesn't support the `signTransactionBlock` feature."
1697
+ "This wallet doesn't support the `signTransaction` feature."
1635
1698
  );
1636
1699
  }
1637
- const { signature, transactionBlockBytes } = await walletFeature.signTransactionBlock({
1638
- ...signTransactionBlockArgs,
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
+ },
1639
1710
  account: signerAccount,
1640
- chain: signTransactionBlockArgs.chain ?? signerAccount.chains[0]
1641
- });
1642
- return client.executeTransactionBlock({
1643
- transactionBlock: transactionBlockBytes,
1644
- signature,
1645
- requestType,
1646
- options
1711
+ chain: signTransactionArgs.chain ?? signerAccount.chains[0]
1647
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;
1648
1724
  },
1649
1725
  ...mutationOptions
1650
1726
  });
1651
1727
  }
1652
1728
 
1653
1729
  // src/hooks/wallet/useSignPersonalMessage.ts
1654
- var import_react_query10 = require("@tanstack/react-query");
1730
+ var import_react_query11 = require("@tanstack/react-query");
1655
1731
  function useSignPersonalMessage({
1656
1732
  mutationKey,
1657
1733
  ...mutationOptions
1658
1734
  } = {}) {
1659
1735
  const { currentWallet } = useCurrentWallet();
1660
1736
  const currentAccount = useCurrentAccount();
1661
- return (0, import_react_query10.useMutation)({
1737
+ return (0, import_react_query11.useMutation)({
1662
1738
  mutationKey: walletMutationKeys.signPersonalMessage(mutationKey),
1663
1739
  mutationFn: async (signPersonalMessageArgs) => {
1664
1740
  if (!currentWallet) {
1665
1741
  throw new WalletNotConnectedError("No wallet is connected.");
1666
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
+ }
1667
1749
  const signerAccount = signPersonalMessageArgs.account ?? currentAccount;
1668
1750
  if (!signerAccount) {
1669
1751
  throw new WalletNoAccountSelectedError(
1670
1752
  "No wallet account is selected to sign the personal message with."
1671
1753
  );
1672
1754
  }
1673
- const signPersonalMessageFeature = currentWallet.features["iota:signPersonalMessage"];
1674
- if (signPersonalMessageFeature) {
1675
- return await signPersonalMessageFeature.signPersonalMessage({
1676
- ...signPersonalMessageArgs,
1677
- account: signerAccount
1678
- });
1679
- }
1680
- const signMessageFeature = currentWallet.features["iota:signMessage"];
1681
- if (signMessageFeature) {
1682
- console.warn(
1683
- "This wallet doesn't support the `signPersonalMessage` feature... falling back to `signMessage`."
1684
- );
1685
- const { messageBytes, signature } = await signMessageFeature.signMessage({
1686
- ...signPersonalMessageArgs,
1687
- account: signerAccount
1688
- });
1689
- return { bytes: messageBytes, signature };
1690
- }
1691
- throw new WalletFeatureNotSupportedError(
1692
- "This wallet doesn't support the `signPersonalMessage` feature."
1693
- );
1755
+ return await signPersonalMessageFeature.signPersonalMessage({
1756
+ ...signPersonalMessageArgs,
1757
+ account: signerAccount
1758
+ });
1694
1759
  },
1695
1760
  ...mutationOptions
1696
1761
  });
1697
1762
  }
1698
1763
 
1699
- // src/hooks/wallet/useSignTransactionBlock.ts
1700
- var import_react_query11 = require("@tanstack/react-query");
1701
- function useSignTransactionBlock({
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({
1702
1768
  mutationKey,
1703
1769
  ...mutationOptions
1704
1770
  } = {}) {
1705
1771
  const { currentWallet } = useCurrentWallet();
1706
1772
  const currentAccount = useCurrentAccount();
1707
- return (0, import_react_query11.useMutation)({
1708
- mutationKey: walletMutationKeys.signTransactionBlock(mutationKey),
1709
- mutationFn: async (signTransactionBlockArgs) => {
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 }) => {
1710
1778
  if (!currentWallet) {
1711
1779
  throw new WalletNotConnectedError("No wallet is connected.");
1712
1780
  }
1713
- const signerAccount = signTransactionBlockArgs.account ?? currentAccount;
1781
+ const signerAccount = signTransactionArgs.account ?? currentAccount;
1714
1782
  if (!signerAccount) {
1715
1783
  throw new WalletNoAccountSelectedError(
1716
- "No wallet account is selected to sign the transaction block with."
1784
+ "No wallet account is selected to sign the transaction with."
1717
1785
  );
1718
1786
  }
1719
- const walletFeature = currentWallet.features["iota:signTransactionBlock"];
1720
- if (!walletFeature) {
1787
+ if (!currentWallet.features["iota:signTransaction"]) {
1721
1788
  throw new WalletFeatureNotSupportedError(
1722
- "This wallet doesn't support the `SignTransactionBlock` feature."
1789
+ "This wallet doesn't support the `signTransaction` feature."
1723
1790
  );
1724
1791
  }
1725
- return await walletFeature.signTransactionBlock({
1726
- ...signTransactionBlockArgs,
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
+ },
1727
1802
  account: signerAccount,
1728
- chain: signTransactionBlockArgs.chain ?? signerAccount.chains[0]
1803
+ chain: signTransactionArgs.chain ?? signerAccount.chains[0]
1729
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
+ };
1730
1816
  },
1731
1817
  ...mutationOptions
1732
1818
  });
1733
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
+ };
1734
1884
  //# sourceMappingURL=index.js.map