@mysten/dapp-kit 0.0.0-experimental-20230928204256

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 (444) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/LICENSE +201 -0
  3. package/README.md +0 -0
  4. package/dist/cjs/components/AccountDropdownMenu.css +41 -0
  5. package/dist/cjs/components/AccountDropdownMenu.css.css +41 -0
  6. package/dist/cjs/components/AccountDropdownMenu.css.css.map +7 -0
  7. package/dist/cjs/components/AccountDropdownMenu.css.d.ts +5 -0
  8. package/dist/cjs/components/AccountDropdownMenu.css.js +35 -0
  9. package/dist/cjs/components/AccountDropdownMenu.css.js.map +7 -0
  10. package/dist/cjs/components/AccountDropdownMenu.css.map +7 -0
  11. package/dist/cjs/components/AccountDropdownMenu.d.ts +6 -0
  12. package/dist/cjs/components/AccountDropdownMenu.js +216 -0
  13. package/dist/cjs/components/AccountDropdownMenu.js.map +7 -0
  14. package/dist/cjs/components/ConnectButton.css +250 -0
  15. package/dist/cjs/components/ConnectButton.css.map +7 -0
  16. package/dist/cjs/components/ConnectButton.d.ts +6 -0
  17. package/dist/cjs/components/ConnectButton.js +580 -0
  18. package/dist/cjs/components/ConnectButton.js.map +7 -0
  19. package/dist/cjs/components/SuiClientProvider.d.ts +26 -0
  20. package/dist/cjs/components/SuiClientProvider.js +69 -0
  21. package/dist/cjs/components/SuiClientProvider.js.map +7 -0
  22. package/dist/cjs/components/WalletProvider.d.ts +20 -0
  23. package/dist/cjs/components/WalletProvider.js +470 -0
  24. package/dist/cjs/components/WalletProvider.js.map +7 -0
  25. package/dist/cjs/components/connect-modal/ConnectModal.css +209 -0
  26. package/dist/cjs/components/connect-modal/ConnectModal.css.css +109 -0
  27. package/dist/cjs/components/connect-modal/ConnectModal.css.css.map +7 -0
  28. package/dist/cjs/components/connect-modal/ConnectModal.css.d.ts +12 -0
  29. package/dist/cjs/components/connect-modal/ConnectModal.css.js +49 -0
  30. package/dist/cjs/components/connect-modal/ConnectModal.css.js.map +7 -0
  31. package/dist/cjs/components/connect-modal/ConnectModal.css.map +7 -0
  32. package/dist/cjs/components/connect-modal/ConnectModal.d.ts +6 -0
  33. package/dist/cjs/components/connect-modal/ConnectModal.js +421 -0
  34. package/dist/cjs/components/connect-modal/ConnectModal.js.map +7 -0
  35. package/dist/cjs/components/connect-modal/InfoSection.css +7 -0
  36. package/dist/cjs/components/connect-modal/InfoSection.css.css +7 -0
  37. package/dist/cjs/components/connect-modal/InfoSection.css.css.map +7 -0
  38. package/dist/cjs/components/connect-modal/InfoSection.css.d.ts +3 -0
  39. package/dist/cjs/components/connect-modal/InfoSection.css.js +31 -0
  40. package/dist/cjs/components/connect-modal/InfoSection.css.js.map +7 -0
  41. package/dist/cjs/components/connect-modal/InfoSection.css.map +7 -0
  42. package/dist/cjs/components/connect-modal/InfoSection.d.ts +6 -0
  43. package/dist/cjs/components/connect-modal/InfoSection.js +40 -0
  44. package/dist/cjs/components/connect-modal/InfoSection.js.map +7 -0
  45. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css +26 -0
  46. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.css +26 -0
  47. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.css.map +7 -0
  48. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.d.ts +5 -0
  49. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.js +35 -0
  50. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.js.map +7 -0
  51. package/dist/cjs/components/connect-modal/views/ConnectionStatus.css.map +7 -0
  52. package/dist/cjs/components/connect-modal/views/ConnectionStatus.d.ts +8 -0
  53. package/dist/cjs/components/connect-modal/views/ConnectionStatus.js +77 -0
  54. package/dist/cjs/components/connect-modal/views/ConnectionStatus.js.map +7 -0
  55. package/dist/cjs/components/connect-modal/views/GettingStarted.css +22 -0
  56. package/dist/cjs/components/connect-modal/views/GettingStarted.css.css +15 -0
  57. package/dist/cjs/components/connect-modal/views/GettingStarted.css.css.map +7 -0
  58. package/dist/cjs/components/connect-modal/views/GettingStarted.css.d.ts +4 -0
  59. package/dist/cjs/components/connect-modal/views/GettingStarted.css.js +33 -0
  60. package/dist/cjs/components/connect-modal/views/GettingStarted.css.js.map +7 -0
  61. package/dist/cjs/components/connect-modal/views/GettingStarted.css.map +7 -0
  62. package/dist/cjs/components/connect-modal/views/GettingStarted.d.ts +1 -0
  63. package/dist/cjs/components/connect-modal/views/GettingStarted.js +69 -0
  64. package/dist/cjs/components/connect-modal/views/GettingStarted.js.map +7 -0
  65. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css +22 -0
  66. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.css +15 -0
  67. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.css.map +7 -0
  68. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.d.ts +3 -0
  69. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.js +31 -0
  70. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.js.map +7 -0
  71. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.css.map +7 -0
  72. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.d.ts +1 -0
  73. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.js +57 -0
  74. package/dist/cjs/components/connect-modal/views/WhatIsAWallet.js.map +7 -0
  75. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css +37 -0
  76. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.css +7 -0
  77. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.css.map +7 -0
  78. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.d.ts +1 -0
  79. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.js +27 -0
  80. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.js.map +7 -0
  81. package/dist/cjs/components/connect-modal/wallet-list/WalletList.css.map +7 -0
  82. package/dist/cjs/components/connect-modal/wallet-list/WalletList.d.ts +8 -0
  83. package/dist/cjs/components/connect-modal/wallet-list/WalletList.js +113 -0
  84. package/dist/cjs/components/connect-modal/wallet-list/WalletList.js.map +7 -0
  85. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css +30 -0
  86. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.css +30 -0
  87. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.css.map +7 -0
  88. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.d.ts +5 -0
  89. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.js +35 -0
  90. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.js.map +7 -0
  91. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.css.map +7 -0
  92. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.d.ts +9 -0
  93. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.js +43 -0
  94. package/dist/cjs/components/connect-modal/wallet-list/WalletListItem.js.map +7 -0
  95. package/dist/cjs/components/icons/BackIcon.d.ts +2 -0
  96. package/dist/cjs/components/icons/BackIcon.js +36 -0
  97. package/dist/cjs/components/icons/BackIcon.js.map +7 -0
  98. package/dist/cjs/components/icons/CheckIcon.d.ts +2 -0
  99. package/dist/cjs/components/icons/CheckIcon.js +36 -0
  100. package/dist/cjs/components/icons/CheckIcon.js.map +7 -0
  101. package/dist/cjs/components/icons/ChevronIcon.d.ts +2 -0
  102. package/dist/cjs/components/icons/ChevronIcon.js +39 -0
  103. package/dist/cjs/components/icons/ChevronIcon.js.map +7 -0
  104. package/dist/cjs/components/icons/CloseIcon.d.ts +2 -0
  105. package/dist/cjs/components/icons/CloseIcon.js +36 -0
  106. package/dist/cjs/components/icons/CloseIcon.js.map +7 -0
  107. package/dist/cjs/components/icons/SuiIcon.d.ts +2 -0
  108. package/dist/cjs/components/icons/SuiIcon.js +41 -0
  109. package/dist/cjs/components/icons/SuiIcon.js.map +7 -0
  110. package/dist/cjs/constants/walletMutationKeys.d.ts +12 -0
  111. package/dist/cjs/constants/walletMutationKeys.js +40 -0
  112. package/dist/cjs/constants/walletMutationKeys.js.map +7 -0
  113. package/dist/cjs/contexts/walletContext.d.ts +12 -0
  114. package/dist/cjs/contexts/walletContext.js +28 -0
  115. package/dist/cjs/contexts/walletContext.js.map +7 -0
  116. package/dist/cjs/errors/walletErrors.d.ts +22 -0
  117. package/dist/cjs/errors/walletErrors.js +37 -0
  118. package/dist/cjs/errors/walletErrors.js.map +7 -0
  119. package/dist/cjs/hooks/useSuiClient.d.ts +2 -0
  120. package/dist/cjs/hooks/useSuiClient.js +51 -0
  121. package/dist/cjs/hooks/useSuiClient.js.map +7 -0
  122. package/dist/cjs/hooks/useSuiClientInfiniteQuery.d.ts +25 -0
  123. package/dist/cjs/hooks/useSuiClientInfiniteQuery.js +66 -0
  124. package/dist/cjs/hooks/useSuiClientInfiniteQuery.js.map +7 -0
  125. package/dist/cjs/hooks/useSuiClientMutation.d.ts +4 -0
  126. package/dist/cjs/hooks/useSuiClientMutation.js +61 -0
  127. package/dist/cjs/hooks/useSuiClientMutation.js.map +7 -0
  128. package/dist/cjs/hooks/useSuiClientQuery.d.ts +18 -0
  129. package/dist/cjs/hooks/useSuiClientQuery.js +64 -0
  130. package/dist/cjs/hooks/useSuiClientQuery.js.map +7 -0
  131. package/dist/cjs/hooks/wallet/useAccounts.d.ts +4 -0
  132. package/dist/cjs/hooks/wallet/useAccounts.js +50 -0
  133. package/dist/cjs/hooks/wallet/useAccounts.js.map +7 -0
  134. package/dist/cjs/hooks/wallet/useAutoConnectWallet.d.ts +1 -0
  135. package/dist/cjs/hooks/wallet/useAutoConnectWallet.js +124 -0
  136. package/dist/cjs/hooks/wallet/useAutoConnectWallet.js.map +7 -0
  137. package/dist/cjs/hooks/wallet/useConnectWallet.d.ts +15 -0
  138. package/dist/cjs/hooks/wallet/useConnectWallet.js +90 -0
  139. package/dist/cjs/hooks/wallet/useConnectWallet.js.map +7 -0
  140. package/dist/cjs/hooks/wallet/useCurrentAccount.d.ts +4 -0
  141. package/dist/cjs/hooks/wallet/useCurrentAccount.js +50 -0
  142. package/dist/cjs/hooks/wallet/useCurrentAccount.js.map +7 -0
  143. package/dist/cjs/hooks/wallet/useCurrentWallet.d.ts +4 -0
  144. package/dist/cjs/hooks/wallet/useCurrentWallet.js +50 -0
  145. package/dist/cjs/hooks/wallet/useCurrentWallet.js.map +7 -0
  146. package/dist/cjs/hooks/wallet/useDisconnectWallet.d.ts +7 -0
  147. package/dist/cjs/hooks/wallet/useDisconnectWallet.js +95 -0
  148. package/dist/cjs/hooks/wallet/useDisconnectWallet.js.map +7 -0
  149. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +13 -0
  150. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js +114 -0
  151. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +7 -0
  152. package/dist/cjs/hooks/wallet/useSignPersonalMessage.d.ts +13 -0
  153. package/dist/cjs/hooks/wallet/useSignPersonalMessage.js +114 -0
  154. package/dist/cjs/hooks/wallet/useSignPersonalMessage.js.map +7 -0
  155. package/dist/cjs/hooks/wallet/useSignTransactionBlock.d.ts +13 -0
  156. package/dist/cjs/hooks/wallet/useSignTransactionBlock.js +114 -0
  157. package/dist/cjs/hooks/wallet/useSignTransactionBlock.js.map +7 -0
  158. package/dist/cjs/hooks/wallet/useSwitchAccount.d.ts +13 -0
  159. package/dist/cjs/hooks/wallet/useSwitchAccount.js +100 -0
  160. package/dist/cjs/hooks/wallet/useSwitchAccount.js.map +7 -0
  161. package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.d.ts +1 -0
  162. package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.js +181 -0
  163. package/dist/cjs/hooks/wallet/useUnsafeBurnerWallet.js.map +7 -0
  164. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.d.ts +4 -0
  165. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js +68 -0
  166. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js.map +7 -0
  167. package/dist/cjs/hooks/wallet/useWalletStore.d.ts +2 -0
  168. package/dist/cjs/hooks/wallet/useWalletStore.js +43 -0
  169. package/dist/cjs/hooks/wallet/useWalletStore.js.map +7 -0
  170. package/dist/cjs/hooks/wallet/useWallets.d.ts +4 -0
  171. package/dist/cjs/hooks/wallet/useWallets.js +50 -0
  172. package/dist/cjs/hooks/wallet/useWallets.js.map +7 -0
  173. package/dist/cjs/hooks/wallet/useWalletsChanged.d.ts +5 -0
  174. package/dist/cjs/hooks/wallet/useWalletsChanged.js +85 -0
  175. package/dist/cjs/hooks/wallet/useWalletsChanged.js.map +7 -0
  176. package/dist/cjs/index.css +250 -0
  177. package/dist/cjs/index.css.map +7 -0
  178. package/dist/cjs/index.d.ts +18 -0
  179. package/dist/cjs/index.js +1152 -0
  180. package/dist/cjs/index.js.map +7 -0
  181. package/dist/cjs/package.json +5 -0
  182. package/dist/cjs/types/utilityTypes.d.ts +1 -0
  183. package/dist/cjs/types/utilityTypes.js +19 -0
  184. package/dist/cjs/types/utilityTypes.js.map +7 -0
  185. package/dist/cjs/types.d.ts +1 -0
  186. package/dist/cjs/types.js +19 -0
  187. package/dist/cjs/types.js.map +7 -0
  188. package/dist/cjs/utils/assertUnreachable.d.ts +4 -0
  189. package/dist/cjs/utils/assertUnreachable.js +29 -0
  190. package/dist/cjs/utils/assertUnreachable.js.map +7 -0
  191. package/dist/cjs/utils/walletUtils.d.ts +2 -0
  192. package/dist/cjs/utils/walletUtils.js +40 -0
  193. package/dist/cjs/utils/walletUtils.js.map +7 -0
  194. package/dist/cjs/walletStore.d.ts +35 -0
  195. package/dist/cjs/walletStore.js +100 -0
  196. package/dist/cjs/walletStore.js.map +7 -0
  197. package/dist/esm/components/AccountDropdownMenu.css +41 -0
  198. package/dist/esm/components/AccountDropdownMenu.css.css +41 -0
  199. package/dist/esm/components/AccountDropdownMenu.css.css.map +7 -0
  200. package/dist/esm/components/AccountDropdownMenu.css.d.ts +5 -0
  201. package/dist/esm/components/AccountDropdownMenu.css.js +14 -0
  202. package/dist/esm/components/AccountDropdownMenu.css.js.map +7 -0
  203. package/dist/esm/components/AccountDropdownMenu.css.map +7 -0
  204. package/dist/esm/components/AccountDropdownMenu.d.ts +6 -0
  205. package/dist/esm/components/AccountDropdownMenu.js +185 -0
  206. package/dist/esm/components/AccountDropdownMenu.js.map +7 -0
  207. package/dist/esm/components/ConnectButton.css +250 -0
  208. package/dist/esm/components/ConnectButton.css.map +7 -0
  209. package/dist/esm/components/ConnectButton.d.ts +6 -0
  210. package/dist/esm/components/ConnectButton.js +547 -0
  211. package/dist/esm/components/ConnectButton.js.map +7 -0
  212. package/dist/esm/components/SuiClientProvider.d.ts +26 -0
  213. package/dist/esm/components/SuiClientProvider.js +48 -0
  214. package/dist/esm/components/SuiClientProvider.js.map +7 -0
  215. package/dist/esm/components/WalletProvider.d.ts +20 -0
  216. package/dist/esm/components/WalletProvider.js +450 -0
  217. package/dist/esm/components/WalletProvider.js.map +7 -0
  218. package/dist/esm/components/connect-modal/ConnectModal.css +209 -0
  219. package/dist/esm/components/connect-modal/ConnectModal.css.css +109 -0
  220. package/dist/esm/components/connect-modal/ConnectModal.css.css.map +7 -0
  221. package/dist/esm/components/connect-modal/ConnectModal.css.d.ts +12 -0
  222. package/dist/esm/components/connect-modal/ConnectModal.css.js +28 -0
  223. package/dist/esm/components/connect-modal/ConnectModal.css.js.map +7 -0
  224. package/dist/esm/components/connect-modal/ConnectModal.css.map +7 -0
  225. package/dist/esm/components/connect-modal/ConnectModal.d.ts +6 -0
  226. package/dist/esm/components/connect-modal/ConnectModal.js +390 -0
  227. package/dist/esm/components/connect-modal/ConnectModal.js.map +7 -0
  228. package/dist/esm/components/connect-modal/InfoSection.css +7 -0
  229. package/dist/esm/components/connect-modal/InfoSection.css.css +7 -0
  230. package/dist/esm/components/connect-modal/InfoSection.css.css.map +7 -0
  231. package/dist/esm/components/connect-modal/InfoSection.css.d.ts +3 -0
  232. package/dist/esm/components/connect-modal/InfoSection.css.js +10 -0
  233. package/dist/esm/components/connect-modal/InfoSection.css.js.map +7 -0
  234. package/dist/esm/components/connect-modal/InfoSection.css.map +7 -0
  235. package/dist/esm/components/connect-modal/InfoSection.d.ts +6 -0
  236. package/dist/esm/components/connect-modal/InfoSection.js +17 -0
  237. package/dist/esm/components/connect-modal/InfoSection.js.map +7 -0
  238. package/dist/esm/components/connect-modal/views/ConnectionStatus.css +26 -0
  239. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.css +26 -0
  240. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.css.map +7 -0
  241. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.d.ts +5 -0
  242. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.js +14 -0
  243. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.js.map +7 -0
  244. package/dist/esm/components/connect-modal/views/ConnectionStatus.css.map +7 -0
  245. package/dist/esm/components/connect-modal/views/ConnectionStatus.d.ts +8 -0
  246. package/dist/esm/components/connect-modal/views/ConnectionStatus.js +46 -0
  247. package/dist/esm/components/connect-modal/views/ConnectionStatus.js.map +7 -0
  248. package/dist/esm/components/connect-modal/views/GettingStarted.css +22 -0
  249. package/dist/esm/components/connect-modal/views/GettingStarted.css.css +15 -0
  250. package/dist/esm/components/connect-modal/views/GettingStarted.css.css.map +7 -0
  251. package/dist/esm/components/connect-modal/views/GettingStarted.css.d.ts +4 -0
  252. package/dist/esm/components/connect-modal/views/GettingStarted.css.js +12 -0
  253. package/dist/esm/components/connect-modal/views/GettingStarted.css.js.map +7 -0
  254. package/dist/esm/components/connect-modal/views/GettingStarted.css.map +7 -0
  255. package/dist/esm/components/connect-modal/views/GettingStarted.d.ts +1 -0
  256. package/dist/esm/components/connect-modal/views/GettingStarted.js +46 -0
  257. package/dist/esm/components/connect-modal/views/GettingStarted.js.map +7 -0
  258. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css +22 -0
  259. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.css +15 -0
  260. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.css.map +7 -0
  261. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.d.ts +3 -0
  262. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.js +10 -0
  263. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.js.map +7 -0
  264. package/dist/esm/components/connect-modal/views/WhatIsAWallet.css.map +7 -0
  265. package/dist/esm/components/connect-modal/views/WhatIsAWallet.d.ts +1 -0
  266. package/dist/esm/components/connect-modal/views/WhatIsAWallet.js +34 -0
  267. package/dist/esm/components/connect-modal/views/WhatIsAWallet.js.map +7 -0
  268. package/dist/esm/components/connect-modal/wallet-list/WalletList.css +37 -0
  269. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.css +7 -0
  270. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.css.map +7 -0
  271. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.d.ts +1 -0
  272. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.js +6 -0
  273. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.js.map +7 -0
  274. package/dist/esm/components/connect-modal/wallet-list/WalletList.css.map +7 -0
  275. package/dist/esm/components/connect-modal/wallet-list/WalletList.d.ts +8 -0
  276. package/dist/esm/components/connect-modal/wallet-list/WalletList.js +90 -0
  277. package/dist/esm/components/connect-modal/wallet-list/WalletList.js.map +7 -0
  278. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css +30 -0
  279. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.css +30 -0
  280. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.css.map +7 -0
  281. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.d.ts +5 -0
  282. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.js +14 -0
  283. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.js.map +7 -0
  284. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.css.map +7 -0
  285. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.d.ts +9 -0
  286. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.js +22 -0
  287. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.js.map +7 -0
  288. package/dist/esm/components/icons/BackIcon.d.ts +2 -0
  289. package/dist/esm/components/icons/BackIcon.js +15 -0
  290. package/dist/esm/components/icons/BackIcon.js.map +7 -0
  291. package/dist/esm/components/icons/CheckIcon.d.ts +2 -0
  292. package/dist/esm/components/icons/CheckIcon.js +15 -0
  293. package/dist/esm/components/icons/CheckIcon.js.map +7 -0
  294. package/dist/esm/components/icons/ChevronIcon.d.ts +2 -0
  295. package/dist/esm/components/icons/ChevronIcon.js +18 -0
  296. package/dist/esm/components/icons/ChevronIcon.js.map +7 -0
  297. package/dist/esm/components/icons/CloseIcon.d.ts +2 -0
  298. package/dist/esm/components/icons/CloseIcon.js +15 -0
  299. package/dist/esm/components/icons/CloseIcon.js.map +7 -0
  300. package/dist/esm/components/icons/SuiIcon.d.ts +2 -0
  301. package/dist/esm/components/icons/SuiIcon.js +20 -0
  302. package/dist/esm/components/icons/SuiIcon.js.map +7 -0
  303. package/dist/esm/constants/walletMutationKeys.d.ts +12 -0
  304. package/dist/esm/constants/walletMutationKeys.js +19 -0
  305. package/dist/esm/constants/walletMutationKeys.js.map +7 -0
  306. package/dist/esm/contexts/walletContext.d.ts +12 -0
  307. package/dist/esm/contexts/walletContext.js +7 -0
  308. package/dist/esm/contexts/walletContext.js.map +7 -0
  309. package/dist/esm/errors/walletErrors.d.ts +22 -0
  310. package/dist/esm/errors/walletErrors.js +16 -0
  311. package/dist/esm/errors/walletErrors.js.map +7 -0
  312. package/dist/esm/hooks/useSuiClient.d.ts +2 -0
  313. package/dist/esm/hooks/useSuiClient.js +30 -0
  314. package/dist/esm/hooks/useSuiClient.js.map +7 -0
  315. package/dist/esm/hooks/useSuiClientInfiniteQuery.d.ts +25 -0
  316. package/dist/esm/hooks/useSuiClientInfiniteQuery.js +45 -0
  317. package/dist/esm/hooks/useSuiClientInfiniteQuery.js.map +7 -0
  318. package/dist/esm/hooks/useSuiClientMutation.d.ts +4 -0
  319. package/dist/esm/hooks/useSuiClientMutation.js +40 -0
  320. package/dist/esm/hooks/useSuiClientMutation.js.map +7 -0
  321. package/dist/esm/hooks/useSuiClientQuery.d.ts +18 -0
  322. package/dist/esm/hooks/useSuiClientQuery.js +43 -0
  323. package/dist/esm/hooks/useSuiClientQuery.js.map +7 -0
  324. package/dist/esm/hooks/wallet/useAccounts.d.ts +4 -0
  325. package/dist/esm/hooks/wallet/useAccounts.js +27 -0
  326. package/dist/esm/hooks/wallet/useAccounts.js.map +7 -0
  327. package/dist/esm/hooks/wallet/useAutoConnectWallet.d.ts +1 -0
  328. package/dist/esm/hooks/wallet/useAutoConnectWallet.js +103 -0
  329. package/dist/esm/hooks/wallet/useAutoConnectWallet.js.map +7 -0
  330. package/dist/esm/hooks/wallet/useConnectWallet.d.ts +15 -0
  331. package/dist/esm/hooks/wallet/useConnectWallet.js +69 -0
  332. package/dist/esm/hooks/wallet/useConnectWallet.js.map +7 -0
  333. package/dist/esm/hooks/wallet/useCurrentAccount.d.ts +4 -0
  334. package/dist/esm/hooks/wallet/useCurrentAccount.js +27 -0
  335. package/dist/esm/hooks/wallet/useCurrentAccount.js.map +7 -0
  336. package/dist/esm/hooks/wallet/useCurrentWallet.d.ts +4 -0
  337. package/dist/esm/hooks/wallet/useCurrentWallet.js +27 -0
  338. package/dist/esm/hooks/wallet/useCurrentWallet.js.map +7 -0
  339. package/dist/esm/hooks/wallet/useDisconnectWallet.d.ts +7 -0
  340. package/dist/esm/hooks/wallet/useDisconnectWallet.js +74 -0
  341. package/dist/esm/hooks/wallet/useDisconnectWallet.js.map +7 -0
  342. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +13 -0
  343. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js +93 -0
  344. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +7 -0
  345. package/dist/esm/hooks/wallet/useSignPersonalMessage.d.ts +13 -0
  346. package/dist/esm/hooks/wallet/useSignPersonalMessage.js +93 -0
  347. package/dist/esm/hooks/wallet/useSignPersonalMessage.js.map +7 -0
  348. package/dist/esm/hooks/wallet/useSignTransactionBlock.d.ts +13 -0
  349. package/dist/esm/hooks/wallet/useSignTransactionBlock.js +93 -0
  350. package/dist/esm/hooks/wallet/useSignTransactionBlock.js.map +7 -0
  351. package/dist/esm/hooks/wallet/useSwitchAccount.d.ts +13 -0
  352. package/dist/esm/hooks/wallet/useSwitchAccount.js +79 -0
  353. package/dist/esm/hooks/wallet/useSwitchAccount.js.map +7 -0
  354. package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.d.ts +1 -0
  355. package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.js +161 -0
  356. package/dist/esm/hooks/wallet/useUnsafeBurnerWallet.js.map +7 -0
  357. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.d.ts +4 -0
  358. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js +47 -0
  359. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js.map +7 -0
  360. package/dist/esm/hooks/wallet/useWalletStore.d.ts +2 -0
  361. package/dist/esm/hooks/wallet/useWalletStore.js +22 -0
  362. package/dist/esm/hooks/wallet/useWalletStore.js.map +7 -0
  363. package/dist/esm/hooks/wallet/useWallets.d.ts +4 -0
  364. package/dist/esm/hooks/wallet/useWallets.js +27 -0
  365. package/dist/esm/hooks/wallet/useWallets.js.map +7 -0
  366. package/dist/esm/hooks/wallet/useWalletsChanged.d.ts +5 -0
  367. package/dist/esm/hooks/wallet/useWalletsChanged.js +64 -0
  368. package/dist/esm/hooks/wallet/useWalletsChanged.js.map +7 -0
  369. package/dist/esm/index.css +250 -0
  370. package/dist/esm/index.css.map +7 -0
  371. package/dist/esm/index.d.ts +18 -0
  372. package/dist/esm/index.js +1120 -0
  373. package/dist/esm/index.js.map +7 -0
  374. package/dist/esm/package.json +5 -0
  375. package/dist/esm/types/utilityTypes.d.ts +1 -0
  376. package/dist/esm/types/utilityTypes.js +1 -0
  377. package/dist/esm/types/utilityTypes.js.map +7 -0
  378. package/dist/esm/types.d.ts +1 -0
  379. package/dist/esm/types.js +1 -0
  380. package/dist/esm/types.js.map +7 -0
  381. package/dist/esm/utils/assertUnreachable.d.ts +4 -0
  382. package/dist/esm/utils/assertUnreachable.js +8 -0
  383. package/dist/esm/utils/assertUnreachable.js.map +7 -0
  384. package/dist/esm/utils/walletUtils.d.ts +2 -0
  385. package/dist/esm/utils/walletUtils.js +19 -0
  386. package/dist/esm/utils/walletUtils.js.map +7 -0
  387. package/dist/esm/walletStore.d.ts +35 -0
  388. package/dist/esm/walletStore.js +79 -0
  389. package/dist/esm/walletStore.js.map +7 -0
  390. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  391. package/dist/tsconfig.tsbuildinfo +1 -0
  392. package/package.json +95 -0
  393. package/src/components/AccountDropdownMenu.css.ts +48 -0
  394. package/src/components/AccountDropdownMenu.tsx +58 -0
  395. package/src/components/ConnectButton.tsx +21 -0
  396. package/src/components/SuiClientProvider.tsx +87 -0
  397. package/src/components/WalletProvider.tsx +93 -0
  398. package/src/components/connect-modal/ConnectModal.css.ts +135 -0
  399. package/src/components/connect-modal/ConnectModal.tsx +122 -0
  400. package/src/components/connect-modal/InfoSection.css.ts +14 -0
  401. package/src/components/connect-modal/InfoSection.tsx +18 -0
  402. package/src/components/connect-modal/views/ConnectionStatus.css.ts +32 -0
  403. package/src/components/connect-modal/views/ConnectionStatus.tsx +42 -0
  404. package/src/components/connect-modal/views/GettingStarted.css.ts +23 -0
  405. package/src/components/connect-modal/views/GettingStarted.tsx +33 -0
  406. package/src/components/connect-modal/views/WhatIsAWallet.css.ts +21 -0
  407. package/src/components/connect-modal/views/WhatIsAWallet.tsx +22 -0
  408. package/src/components/connect-modal/wallet-list/WalletList.css.ts +10 -0
  409. package/src/components/connect-modal/wallet-list/WalletList.tsx +41 -0
  410. package/src/components/connect-modal/wallet-list/WalletListItem.css.ts +36 -0
  411. package/src/components/connect-modal/wallet-list/WalletListItem.tsx +29 -0
  412. package/src/components/icons/BackIcon.tsx +15 -0
  413. package/src/components/icons/CheckIcon.tsx +15 -0
  414. package/src/components/icons/ChevronIcon.tsx +18 -0
  415. package/src/components/icons/CloseIcon.tsx +15 -0
  416. package/src/components/icons/SuiIcon.tsx +18 -0
  417. package/src/constants/walletMutationKeys.ts +20 -0
  418. package/src/contexts/walletContext.ts +8 -0
  419. package/src/errors/walletErrors.ts +24 -0
  420. package/src/hooks/useSuiClient.ts +22 -0
  421. package/src/hooks/useSuiClientInfiniteQuery.ts +63 -0
  422. package/src/hooks/useSuiClientMutation.ts +27 -0
  423. package/src/hooks/useSuiClientQuery.ts +58 -0
  424. package/src/hooks/wallet/useAccounts.ts +11 -0
  425. package/src/hooks/wallet/useAutoConnectWallet.ts +34 -0
  426. package/src/hooks/wallet/useConnectWallet.ts +64 -0
  427. package/src/hooks/wallet/useCurrentAccount.ts +11 -0
  428. package/src/hooks/wallet/useCurrentWallet.ts +11 -0
  429. package/src/hooks/wallet/useDisconnectWallet.ts +47 -0
  430. package/src/hooks/wallet/useSignAndExecuteTransactionBlock.ts +82 -0
  431. package/src/hooks/wallet/useSignPersonalMessage.ts +79 -0
  432. package/src/hooks/wallet/useSignTransactionBlock.ts +79 -0
  433. package/src/hooks/wallet/useSwitchAccount.ts +59 -0
  434. package/src/hooks/wallet/useUnsafeBurnerWallet.ts +144 -0
  435. package/src/hooks/wallet/useWalletPropertiesChanged.ts +29 -0
  436. package/src/hooks/wallet/useWalletStore.ts +18 -0
  437. package/src/hooks/wallet/useWallets.ts +11 -0
  438. package/src/hooks/wallet/useWalletsChanged.ts +40 -0
  439. package/src/index.ts +21 -0
  440. package/src/types/utilityTypes.ts +4 -0
  441. package/src/types.ts +4 -0
  442. package/src/utils/assertUnreachable.ts +9 -0
  443. package/src/utils/walletUtils.ts +32 -0
  444. package/src/walletStore.ts +115 -0
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/hooks/wallet/useDisconnectWallet.ts
21
+ var useDisconnectWallet_exports = {};
22
+ __export(useDisconnectWallet_exports, {
23
+ useDisconnectWallet: () => useDisconnectWallet
24
+ });
25
+ module.exports = __toCommonJS(useDisconnectWallet_exports);
26
+ var import_react_query = require("@tanstack/react-query");
27
+
28
+ // src/constants/walletMutationKeys.ts
29
+ var walletMutationKeys = {
30
+ all: { baseScope: "wallet" },
31
+ connectWallet: formMutationKeyFn("connect-wallet"),
32
+ disconnectWallet: formMutationKeyFn("disconnect-wallet"),
33
+ signPersonalMessage: formMutationKeyFn("sign-personal-message"),
34
+ signTransactionBlock: formMutationKeyFn("sign-transaction-block"),
35
+ signAndExecuteTransactionBlock: formMutationKeyFn("sign-and-execute-transaction-block"),
36
+ switchAccount: formMutationKeyFn("switch-account")
37
+ };
38
+ function formMutationKeyFn(baseEntity) {
39
+ return function mutationKeyFn(additionalKeys = []) {
40
+ return [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];
41
+ };
42
+ }
43
+
44
+ // src/errors/walletErrors.ts
45
+ var WalletNotConnectedError = class extends Error {
46
+ };
47
+
48
+ // src/hooks/wallet/useWalletStore.ts
49
+ var import_react2 = require("react");
50
+ var import_zustand = require("zustand");
51
+
52
+ // src/contexts/walletContext.ts
53
+ var import_react = require("react");
54
+ var WalletContext = (0, import_react.createContext)(null);
55
+
56
+ // src/hooks/wallet/useWalletStore.ts
57
+ function useWalletStore(selector) {
58
+ const store = (0, import_react2.useContext)(WalletContext);
59
+ if (!store) {
60
+ throw new Error(
61
+ "Could not find WalletContext. Ensure that you have set up the WalletProvider."
62
+ );
63
+ }
64
+ return (0, import_zustand.useStore)(store, selector);
65
+ }
66
+
67
+ // src/hooks/wallet/useCurrentWallet.ts
68
+ function useCurrentWallet() {
69
+ return useWalletStore((state) => state.currentWallet);
70
+ }
71
+
72
+ // src/hooks/wallet/useDisconnectWallet.ts
73
+ function useDisconnectWallet({
74
+ mutationKey,
75
+ ...mutationOptions
76
+ } = {}) {
77
+ const currentWallet = useCurrentWallet();
78
+ const setWalletDisconnected = useWalletStore((state) => state.setWalletDisconnected);
79
+ return (0, import_react_query.useMutation)({
80
+ mutationKey: walletMutationKeys.disconnectWallet(mutationKey),
81
+ mutationFn: async () => {
82
+ if (!currentWallet) {
83
+ throw new WalletNotConnectedError("No wallet is connected.");
84
+ }
85
+ try {
86
+ await currentWallet.features["standard:disconnect"]?.disconnect();
87
+ } catch (error) {
88
+ console.error("Failed to disconnect the application from the current wallet.", error);
89
+ }
90
+ setWalletDisconnected();
91
+ },
92
+ ...mutationOptions
93
+ });
94
+ }
95
+ //# sourceMappingURL=useDisconnectWallet.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/hooks/wallet/useDisconnectWallet.ts", "../../../../src/constants/walletMutationKeys.ts", "../../../../src/errors/walletErrors.ts", "../../../../src/hooks/wallet/useWalletStore.ts", "../../../../src/contexts/walletContext.ts", "../../../../src/hooks/wallet/useCurrentWallet.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { UseMutationOptions } from '@tanstack/react-query';\nimport { useMutation } from '@tanstack/react-query';\n\nimport { walletMutationKeys } from '../../constants/walletMutationKeys.js';\nimport { WalletNotConnectedError } from '../../errors/walletErrors.js';\nimport { useCurrentWallet } from './useCurrentWallet.js';\nimport { useWalletStore } from './useWalletStore.js';\n\ntype UseDisconnectWalletMutationOptions = Omit<\n\tUseMutationOptions<void, Error, void, unknown>,\n\t'mutationFn'\n>;\n\n/**\n * Mutation hook for disconnecting from an active wallet connection, if currently connected.\n */\nexport function useDisconnectWallet({\n\tmutationKey,\n\t...mutationOptions\n}: UseDisconnectWalletMutationOptions = {}) {\n\tconst currentWallet = useCurrentWallet();\n\tconst setWalletDisconnected = useWalletStore((state) => state.setWalletDisconnected);\n\n\treturn useMutation({\n\t\tmutationKey: walletMutationKeys.disconnectWallet(mutationKey),\n\t\tmutationFn: async () => {\n\t\t\tif (!currentWallet) {\n\t\t\t\tthrow new WalletNotConnectedError('No wallet is connected.');\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\t// Wallets aren't required to implement the disconnect feature, so we'll\n\t\t\t\t// optionally call the disconnect feature if it exists and reset the UI\n\t\t\t\t// state on the frontend at a minimum.\n\t\t\t\tawait currentWallet.features['standard:disconnect']?.disconnect();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Failed to disconnect the application from the current wallet.', error);\n\t\t\t}\n\n\t\t\tsetWalletDisconnected();\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { MutationKey } from '@tanstack/react-query';\n\nexport const walletMutationKeys = {\n\tall: { baseScope: 'wallet' },\n\tconnectWallet: formMutationKeyFn('connect-wallet'),\n\tdisconnectWallet: formMutationKeyFn('disconnect-wallet'),\n\tsignPersonalMessage: formMutationKeyFn('sign-personal-message'),\n\tsignTransactionBlock: formMutationKeyFn('sign-transaction-block'),\n\tsignAndExecuteTransactionBlock: formMutationKeyFn('sign-and-execute-transaction-block'),\n\tswitchAccount: formMutationKeyFn('switch-account'),\n};\n\nfunction formMutationKeyFn(baseEntity: string) {\n\treturn function mutationKeyFn(additionalKeys: MutationKey = []) {\n\t\treturn [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];\n\t};\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires an active wallet connection.\n */\nexport class WalletNotConnectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires a selected wallet account.\n * This is more of an edge case stemming from the fact that wallets don't technically require you to authorize any\n * accounts when connecting a wallet.\n */\nexport class WalletNoAccountSelectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that isn't supported by a wallet.\n */\nexport class WalletFeatureNotSupportedError extends Error {}\n\n/**\n * An error that is instantiated when a wallet account can't be found for a specific wallet.\n */\nexport class WalletAccountNotFoundError extends Error {}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useContext } from 'react';\nimport { useStore } from 'zustand';\n\nimport { WalletContext } from '../../contexts/walletContext.js';\nimport type { StoreState } from '../../walletStore.js';\n\nexport function useWalletStore<T>(selector: (state: StoreState) => T): T {\n\tconst store = useContext(WalletContext);\n\tif (!store) {\n\t\tthrow new Error(\n\t\t\t'Could not find WalletContext. Ensure that you have set up the WalletProvider.',\n\t\t);\n\t}\n\treturn useStore(store, selector);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { createContext } from 'react';\n\nimport type { WalletStore } from '../walletStore.js';\n\nexport const WalletContext = createContext<WalletStore | null>(null);\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet that is currently connected to the dApp, if one exists.\n */\nexport function useCurrentWallet() {\n\treturn useWalletStore((state) => state.currentWallet);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,yBAA4B;;;ACCrB,IAAM,qBAAqB;AAAA,EACjC,KAAK,EAAE,WAAW,SAAS;AAAA,EAC3B,eAAe,kBAAkB,gBAAgB;AAAA,EACjD,kBAAkB,kBAAkB,mBAAmB;AAAA,EACvD,qBAAqB,kBAAkB,uBAAuB;AAAA,EAC9D,sBAAsB,kBAAkB,wBAAwB;AAAA,EAChE,gCAAgC,kBAAkB,oCAAoC;AAAA,EACtF,eAAe,kBAAkB,gBAAgB;AAClD;AAEA,SAAS,kBAAkB,YAAoB;AAC9C,SAAO,SAAS,cAAc,iBAA8B,CAAC,GAAG;AAC/D,WAAO,CAAC,EAAE,GAAG,mBAAmB,KAAK,WAAW,GAAG,GAAG,cAAc;AAAA,EACrE;AACD;;;ACbO,IAAM,0BAAN,cAAsC,MAAM;AAAC;;;ACHpD,IAAAA,gBAA2B;AAC3B,qBAAyB;;;ACDzB,mBAA8B;AAIvB,IAAM,oBAAgB,4BAAkC,IAAI;;;ADE5D,SAAS,eAAkB,UAAuC;AACxE,QAAM,YAAQ,0BAAW,aAAa;AACtC,MAAI,CAAC,OAAO;AACX,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AACA,aAAO,yBAAS,OAAO,QAAQ;AAChC;;;AETO,SAAS,mBAAmB;AAClC,SAAO,eAAe,CAAC,UAAU,MAAM,aAAa;AACrD;;;ALSO,SAAS,oBAAoB;AAAA,EACnC;AAAA,EACA,GAAG;AACJ,IAAwC,CAAC,GAAG;AAC3C,QAAM,gBAAgB,iBAAiB;AACvC,QAAM,wBAAwB,eAAe,CAAC,UAAU,MAAM,qBAAqB;AAEnF,aAAO,gCAAY;AAAA,IAClB,aAAa,mBAAmB,iBAAiB,WAAW;AAAA,IAC5D,YAAY,YAAY;AACvB,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI,wBAAwB,yBAAyB;AAAA,MAC5D;AAEA,UAAI;AAIH,cAAM,cAAc,SAAS,qBAAqB,GAAG,WAAW;AAAA,MACjE,SAAS,OAAP;AACD,gBAAQ,MAAM,iEAAiE,KAAK;AAAA,MACrF;AAEA,4BAAsB;AAAA,IACvB;AAAA,IACA,GAAG;AAAA,EACJ,CAAC;AACF;",
6
+ "names": ["import_react"]
7
+ }
@@ -0,0 +1,13 @@
1
+ import type { SuiSignAndExecuteTransactionBlockInput, SuiSignAndExecuteTransactionBlockOutput } from '@mysten/wallet-standard';
2
+ import type { UseMutationOptions } from '@tanstack/react-query';
3
+ import { WalletFeatureNotSupportedError, WalletNoAccountSelectedError, WalletNotConnectedError } from '../../errors/walletErrors.js';
4
+ import type { PartialBy } from '../../types/utilityTypes.js';
5
+ type UseSignAndExecuteTransactionBlockArgs = PartialBy<SuiSignAndExecuteTransactionBlockInput, 'account'>;
6
+ type UseSignAndExecuteTransactionBlockResult = SuiSignAndExecuteTransactionBlockOutput;
7
+ type UseSignAndExecuteTransactionBlockError = WalletFeatureNotSupportedError | WalletNoAccountSelectedError | WalletNotConnectedError | Error;
8
+ type UseSignAndExecuteTransactionBlockMutationOptions = Omit<UseMutationOptions<UseSignAndExecuteTransactionBlockResult, UseSignAndExecuteTransactionBlockError, UseSignAndExecuteTransactionBlockArgs, unknown>, 'mutationFn'>;
9
+ /**
10
+ * Mutation hook for prompting the user to sign and execute a transaction block.
11
+ */
12
+ export declare function useSignAndExecuteTransactionBlock({ mutationKey, ...mutationOptions }?: UseSignAndExecuteTransactionBlockMutationOptions): import("@tanstack/react-query").UseMutationResult<SuiSignAndExecuteTransactionBlockOutput, Error | WalletNotConnectedError | WalletNoAccountSelectedError | WalletFeatureNotSupportedError, UseSignAndExecuteTransactionBlockArgs, unknown>;
13
+ export {};
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/hooks/wallet/useSignAndExecuteTransactionBlock.ts
21
+ var useSignAndExecuteTransactionBlock_exports = {};
22
+ __export(useSignAndExecuteTransactionBlock_exports, {
23
+ useSignAndExecuteTransactionBlock: () => useSignAndExecuteTransactionBlock
24
+ });
25
+ module.exports = __toCommonJS(useSignAndExecuteTransactionBlock_exports);
26
+ var import_react_query = require("@tanstack/react-query");
27
+
28
+ // src/constants/walletMutationKeys.ts
29
+ var walletMutationKeys = {
30
+ all: { baseScope: "wallet" },
31
+ connectWallet: formMutationKeyFn("connect-wallet"),
32
+ disconnectWallet: formMutationKeyFn("disconnect-wallet"),
33
+ signPersonalMessage: formMutationKeyFn("sign-personal-message"),
34
+ signTransactionBlock: formMutationKeyFn("sign-transaction-block"),
35
+ signAndExecuteTransactionBlock: formMutationKeyFn("sign-and-execute-transaction-block"),
36
+ switchAccount: formMutationKeyFn("switch-account")
37
+ };
38
+ function formMutationKeyFn(baseEntity) {
39
+ return function mutationKeyFn(additionalKeys = []) {
40
+ return [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];
41
+ };
42
+ }
43
+
44
+ // src/errors/walletErrors.ts
45
+ var WalletNotConnectedError = class extends Error {
46
+ };
47
+ var WalletNoAccountSelectedError = class extends Error {
48
+ };
49
+ var WalletFeatureNotSupportedError = class extends Error {
50
+ };
51
+
52
+ // src/hooks/wallet/useWalletStore.ts
53
+ var import_react2 = require("react");
54
+ var import_zustand = require("zustand");
55
+
56
+ // src/contexts/walletContext.ts
57
+ var import_react = require("react");
58
+ var WalletContext = (0, import_react.createContext)(null);
59
+
60
+ // src/hooks/wallet/useWalletStore.ts
61
+ function useWalletStore(selector) {
62
+ const store = (0, import_react2.useContext)(WalletContext);
63
+ if (!store) {
64
+ throw new Error(
65
+ "Could not find WalletContext. Ensure that you have set up the WalletProvider."
66
+ );
67
+ }
68
+ return (0, import_zustand.useStore)(store, selector);
69
+ }
70
+
71
+ // src/hooks/wallet/useCurrentAccount.ts
72
+ function useCurrentAccount() {
73
+ return useWalletStore((state) => state.currentAccount);
74
+ }
75
+
76
+ // src/hooks/wallet/useCurrentWallet.ts
77
+ function useCurrentWallet() {
78
+ return useWalletStore((state) => state.currentWallet);
79
+ }
80
+
81
+ // src/hooks/wallet/useSignAndExecuteTransactionBlock.ts
82
+ function useSignAndExecuteTransactionBlock({
83
+ mutationKey,
84
+ ...mutationOptions
85
+ } = {}) {
86
+ const currentWallet = useCurrentWallet();
87
+ const currentAccount = useCurrentAccount();
88
+ return (0, import_react_query.useMutation)({
89
+ mutationKey: walletMutationKeys.signAndExecuteTransactionBlock(mutationKey),
90
+ mutationFn: async (signAndExecuteTransactionBlockArgs) => {
91
+ if (!currentWallet) {
92
+ throw new WalletNotConnectedError("No wallet is connected.");
93
+ }
94
+ const signerAccount = signAndExecuteTransactionBlockArgs.account ?? currentAccount;
95
+ if (!signerAccount) {
96
+ throw new WalletNoAccountSelectedError(
97
+ "No wallet account is selected to sign the personal message with."
98
+ );
99
+ }
100
+ const walletFeature = currentWallet.features["sui:signAndExecuteTransactionBlock"];
101
+ if (!walletFeature) {
102
+ throw new WalletFeatureNotSupportedError(
103
+ "This wallet doesn't support the `signAndExecuteTransactionBlock` feature."
104
+ );
105
+ }
106
+ return await walletFeature.signAndExecuteTransactionBlock({
107
+ ...signAndExecuteTransactionBlockArgs,
108
+ account: signerAccount
109
+ });
110
+ },
111
+ ...mutationOptions
112
+ });
113
+ }
114
+ //# sourceMappingURL=useSignAndExecuteTransactionBlock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/hooks/wallet/useSignAndExecuteTransactionBlock.ts", "../../../../src/constants/walletMutationKeys.ts", "../../../../src/errors/walletErrors.ts", "../../../../src/hooks/wallet/useWalletStore.ts", "../../../../src/contexts/walletContext.ts", "../../../../src/hooks/wallet/useCurrentAccount.ts", "../../../../src/hooks/wallet/useCurrentWallet.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type {\n\tSuiSignAndExecuteTransactionBlockInput,\n\tSuiSignAndExecuteTransactionBlockOutput,\n} from '@mysten/wallet-standard';\nimport type { UseMutationOptions } from '@tanstack/react-query';\nimport { useMutation } from '@tanstack/react-query';\n\nimport { walletMutationKeys } from '../../constants/walletMutationKeys.js';\nimport {\n\tWalletFeatureNotSupportedError,\n\tWalletNoAccountSelectedError,\n\tWalletNotConnectedError,\n} from '../../errors/walletErrors.js';\nimport type { PartialBy } from '../../types/utilityTypes.js';\nimport { useCurrentAccount } from './useCurrentAccount.js';\nimport { useCurrentWallet } from './useCurrentWallet.js';\n\ntype UseSignAndExecuteTransactionBlockArgs = PartialBy<\n\tSuiSignAndExecuteTransactionBlockInput,\n\t'account'\n>;\n\ntype UseSignAndExecuteTransactionBlockResult = SuiSignAndExecuteTransactionBlockOutput;\n\ntype UseSignAndExecuteTransactionBlockError =\n\t| WalletFeatureNotSupportedError\n\t| WalletNoAccountSelectedError\n\t| WalletNotConnectedError\n\t| Error;\n\ntype UseSignAndExecuteTransactionBlockMutationOptions = Omit<\n\tUseMutationOptions<\n\t\tUseSignAndExecuteTransactionBlockResult,\n\t\tUseSignAndExecuteTransactionBlockError,\n\t\tUseSignAndExecuteTransactionBlockArgs,\n\t\tunknown\n\t>,\n\t'mutationFn'\n>;\n\n/**\n * Mutation hook for prompting the user to sign and execute a transaction block.\n */\nexport function useSignAndExecuteTransactionBlock({\n\tmutationKey,\n\t...mutationOptions\n}: UseSignAndExecuteTransactionBlockMutationOptions = {}) {\n\tconst currentWallet = useCurrentWallet();\n\tconst currentAccount = useCurrentAccount();\n\n\treturn useMutation({\n\t\tmutationKey: walletMutationKeys.signAndExecuteTransactionBlock(mutationKey),\n\t\tmutationFn: async (signAndExecuteTransactionBlockArgs) => {\n\t\t\tif (!currentWallet) {\n\t\t\t\tthrow new WalletNotConnectedError('No wallet is connected.');\n\t\t\t}\n\n\t\t\tconst signerAccount = signAndExecuteTransactionBlockArgs.account ?? currentAccount;\n\t\t\tif (!signerAccount) {\n\t\t\t\tthrow new WalletNoAccountSelectedError(\n\t\t\t\t\t'No wallet account is selected to sign the personal message with.',\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst walletFeature = currentWallet.features['sui:signAndExecuteTransactionBlock'];\n\t\t\tif (!walletFeature) {\n\t\t\t\tthrow new WalletFeatureNotSupportedError(\n\t\t\t\t\t\"This wallet doesn't support the `signAndExecuteTransactionBlock` feature.\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn await walletFeature.signAndExecuteTransactionBlock({\n\t\t\t\t...signAndExecuteTransactionBlockArgs,\n\t\t\t\taccount: signerAccount,\n\t\t\t});\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { MutationKey } from '@tanstack/react-query';\n\nexport const walletMutationKeys = {\n\tall: { baseScope: 'wallet' },\n\tconnectWallet: formMutationKeyFn('connect-wallet'),\n\tdisconnectWallet: formMutationKeyFn('disconnect-wallet'),\n\tsignPersonalMessage: formMutationKeyFn('sign-personal-message'),\n\tsignTransactionBlock: formMutationKeyFn('sign-transaction-block'),\n\tsignAndExecuteTransactionBlock: formMutationKeyFn('sign-and-execute-transaction-block'),\n\tswitchAccount: formMutationKeyFn('switch-account'),\n};\n\nfunction formMutationKeyFn(baseEntity: string) {\n\treturn function mutationKeyFn(additionalKeys: MutationKey = []) {\n\t\treturn [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];\n\t};\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires an active wallet connection.\n */\nexport class WalletNotConnectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires a selected wallet account.\n * This is more of an edge case stemming from the fact that wallets don't technically require you to authorize any\n * accounts when connecting a wallet.\n */\nexport class WalletNoAccountSelectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that isn't supported by a wallet.\n */\nexport class WalletFeatureNotSupportedError extends Error {}\n\n/**\n * An error that is instantiated when a wallet account can't be found for a specific wallet.\n */\nexport class WalletAccountNotFoundError extends Error {}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useContext } from 'react';\nimport { useStore } from 'zustand';\n\nimport { WalletContext } from '../../contexts/walletContext.js';\nimport type { StoreState } from '../../walletStore.js';\n\nexport function useWalletStore<T>(selector: (state: StoreState) => T): T {\n\tconst store = useContext(WalletContext);\n\tif (!store) {\n\t\tthrow new Error(\n\t\t\t'Could not find WalletContext. Ensure that you have set up the WalletProvider.',\n\t\t);\n\t}\n\treturn useStore(store, selector);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { createContext } from 'react';\n\nimport type { WalletStore } from '../walletStore.js';\n\nexport const WalletContext = createContext<WalletStore | null>(null);\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet account that is currently selected, if one exists.\n */\nexport function useCurrentAccount() {\n\treturn useWalletStore((state) => state.currentAccount);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet that is currently connected to the dApp, if one exists.\n */\nexport function useCurrentWallet() {\n\treturn useWalletStore((state) => state.currentWallet);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,yBAA4B;;;ACHrB,IAAM,qBAAqB;AAAA,EACjC,KAAK,EAAE,WAAW,SAAS;AAAA,EAC3B,eAAe,kBAAkB,gBAAgB;AAAA,EACjD,kBAAkB,kBAAkB,mBAAmB;AAAA,EACvD,qBAAqB,kBAAkB,uBAAuB;AAAA,EAC9D,sBAAsB,kBAAkB,wBAAwB;AAAA,EAChE,gCAAgC,kBAAkB,oCAAoC;AAAA,EACtF,eAAe,kBAAkB,gBAAgB;AAClD;AAEA,SAAS,kBAAkB,YAAoB;AAC9C,SAAO,SAAS,cAAc,iBAA8B,CAAC,GAAG;AAC/D,WAAO,CAAC,EAAE,GAAG,mBAAmB,KAAK,WAAW,GAAG,GAAG,cAAc;AAAA,EACrE;AACD;;;ACbO,IAAM,0BAAN,cAAsC,MAAM;AAAC;AAO7C,IAAM,+BAAN,cAA2C,MAAM;AAAC;AAKlD,IAAM,iCAAN,cAA6C,MAAM;AAAC;;;ACf3D,IAAAA,gBAA2B;AAC3B,qBAAyB;;;ACDzB,mBAA8B;AAIvB,IAAM,oBAAgB,4BAAkC,IAAI;;;ADE5D,SAAS,eAAkB,UAAuC;AACxE,QAAM,YAAQ,0BAAW,aAAa;AACtC,MAAI,CAAC,OAAO;AACX,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AACA,aAAO,yBAAS,OAAO,QAAQ;AAChC;;;AETO,SAAS,oBAAoB;AACnC,SAAO,eAAe,CAAC,UAAU,MAAM,cAAc;AACtD;;;ACFO,SAAS,mBAAmB;AAClC,SAAO,eAAe,CAAC,UAAU,MAAM,aAAa;AACrD;;;ANoCO,SAAS,kCAAkC;AAAA,EACjD;AAAA,EACA,GAAG;AACJ,IAAsD,CAAC,GAAG;AACzD,QAAM,gBAAgB,iBAAiB;AACvC,QAAM,iBAAiB,kBAAkB;AAEzC,aAAO,gCAAY;AAAA,IAClB,aAAa,mBAAmB,+BAA+B,WAAW;AAAA,IAC1E,YAAY,OAAO,uCAAuC;AACzD,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI,wBAAwB,yBAAyB;AAAA,MAC5D;AAEA,YAAM,gBAAgB,mCAAmC,WAAW;AACpE,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MACD;AAEA,YAAM,gBAAgB,cAAc,SAAS,oCAAoC;AACjF,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MACD;AAEA,aAAO,MAAM,cAAc,+BAA+B;AAAA,QACzD,GAAG;AAAA,QACH,SAAS;AAAA,MACV,CAAC;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACJ,CAAC;AACF;",
6
+ "names": ["import_react"]
7
+ }
@@ -0,0 +1,13 @@
1
+ import type { SuiSignPersonalMessageInput, SuiSignPersonalMessageOutput } from '@mysten/wallet-standard';
2
+ import type { UseMutationOptions } from '@tanstack/react-query';
3
+ import { WalletFeatureNotSupportedError, WalletNoAccountSelectedError, WalletNotConnectedError } from '../..//errors/walletErrors.js';
4
+ import type { PartialBy } from '../../types/utilityTypes.js';
5
+ type UseSignPersonalMessageArgs = PartialBy<SuiSignPersonalMessageInput, 'account'>;
6
+ type UseSignPersonalMessageResult = SuiSignPersonalMessageOutput;
7
+ type UseSignPersonalMessageError = WalletFeatureNotSupportedError | WalletNoAccountSelectedError | WalletNotConnectedError | Error;
8
+ type UseSignPersonalMessageMutationOptions = Omit<UseMutationOptions<UseSignPersonalMessageResult, UseSignPersonalMessageError, UseSignPersonalMessageArgs, unknown>, 'mutationFn'>;
9
+ /**
10
+ * Mutation hook for prompting the user to sign a message.
11
+ */
12
+ export declare function useSignPersonalMessage({ mutationKey, ...mutationOptions }?: UseSignPersonalMessageMutationOptions): import("@tanstack/react-query").UseMutationResult<SuiSignPersonalMessageOutput, Error | WalletNotConnectedError | WalletNoAccountSelectedError | WalletFeatureNotSupportedError, UseSignPersonalMessageArgs, unknown>;
13
+ export {};
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/hooks/wallet/useSignPersonalMessage.ts
21
+ var useSignPersonalMessage_exports = {};
22
+ __export(useSignPersonalMessage_exports, {
23
+ useSignPersonalMessage: () => useSignPersonalMessage
24
+ });
25
+ module.exports = __toCommonJS(useSignPersonalMessage_exports);
26
+ var import_react_query = require("@tanstack/react-query");
27
+
28
+ // src/errors/walletErrors.ts
29
+ var WalletNotConnectedError = class extends Error {
30
+ };
31
+ var WalletNoAccountSelectedError = class extends Error {
32
+ };
33
+ var WalletFeatureNotSupportedError = class extends Error {
34
+ };
35
+
36
+ // src/constants/walletMutationKeys.ts
37
+ var walletMutationKeys = {
38
+ all: { baseScope: "wallet" },
39
+ connectWallet: formMutationKeyFn("connect-wallet"),
40
+ disconnectWallet: formMutationKeyFn("disconnect-wallet"),
41
+ signPersonalMessage: formMutationKeyFn("sign-personal-message"),
42
+ signTransactionBlock: formMutationKeyFn("sign-transaction-block"),
43
+ signAndExecuteTransactionBlock: formMutationKeyFn("sign-and-execute-transaction-block"),
44
+ switchAccount: formMutationKeyFn("switch-account")
45
+ };
46
+ function formMutationKeyFn(baseEntity) {
47
+ return function mutationKeyFn(additionalKeys = []) {
48
+ return [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];
49
+ };
50
+ }
51
+
52
+ // src/hooks/wallet/useWalletStore.ts
53
+ var import_react2 = require("react");
54
+ var import_zustand = require("zustand");
55
+
56
+ // src/contexts/walletContext.ts
57
+ var import_react = require("react");
58
+ var WalletContext = (0, import_react.createContext)(null);
59
+
60
+ // src/hooks/wallet/useWalletStore.ts
61
+ function useWalletStore(selector) {
62
+ const store = (0, import_react2.useContext)(WalletContext);
63
+ if (!store) {
64
+ throw new Error(
65
+ "Could not find WalletContext. Ensure that you have set up the WalletProvider."
66
+ );
67
+ }
68
+ return (0, import_zustand.useStore)(store, selector);
69
+ }
70
+
71
+ // src/hooks/wallet/useCurrentAccount.ts
72
+ function useCurrentAccount() {
73
+ return useWalletStore((state) => state.currentAccount);
74
+ }
75
+
76
+ // src/hooks/wallet/useCurrentWallet.ts
77
+ function useCurrentWallet() {
78
+ return useWalletStore((state) => state.currentWallet);
79
+ }
80
+
81
+ // src/hooks/wallet/useSignPersonalMessage.ts
82
+ function useSignPersonalMessage({
83
+ mutationKey,
84
+ ...mutationOptions
85
+ } = {}) {
86
+ const currentWallet = useCurrentWallet();
87
+ const currentAccount = useCurrentAccount();
88
+ return (0, import_react_query.useMutation)({
89
+ mutationKey: walletMutationKeys.signPersonalMessage(mutationKey),
90
+ mutationFn: async (signPersonalMessageArgs) => {
91
+ if (!currentWallet) {
92
+ throw new WalletNotConnectedError("No wallet is connected.");
93
+ }
94
+ const signerAccount = signPersonalMessageArgs.account ?? currentAccount;
95
+ if (!signerAccount) {
96
+ throw new WalletNoAccountSelectedError(
97
+ "No wallet account is selected to sign the personal message with."
98
+ );
99
+ }
100
+ const walletFeature = currentWallet.features["sui:signPersonalMessage"];
101
+ if (!walletFeature) {
102
+ throw new WalletFeatureNotSupportedError(
103
+ "This wallet doesn't support the `signPersonalMessage` feature."
104
+ );
105
+ }
106
+ return await walletFeature.signPersonalMessage({
107
+ ...signPersonalMessageArgs,
108
+ account: signerAccount
109
+ });
110
+ },
111
+ ...mutationOptions
112
+ });
113
+ }
114
+ //# sourceMappingURL=useSignPersonalMessage.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/hooks/wallet/useSignPersonalMessage.ts", "../../../../src/errors/walletErrors.ts", "../../../../src/constants/walletMutationKeys.ts", "../../../../src/hooks/wallet/useWalletStore.ts", "../../../../src/contexts/walletContext.ts", "../../../../src/hooks/wallet/useCurrentAccount.ts", "../../../../src/hooks/wallet/useCurrentWallet.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type {\n\tSuiSignPersonalMessageInput,\n\tSuiSignPersonalMessageOutput,\n} from '@mysten/wallet-standard';\nimport type { UseMutationOptions } from '@tanstack/react-query';\nimport { useMutation } from '@tanstack/react-query';\n\nimport {\n\tWalletFeatureNotSupportedError,\n\tWalletNoAccountSelectedError,\n\tWalletNotConnectedError,\n} from '../..//errors/walletErrors.js';\nimport { walletMutationKeys } from '../../constants/walletMutationKeys.js';\nimport type { PartialBy } from '../../types/utilityTypes.js';\nimport { useCurrentAccount } from './useCurrentAccount.js';\nimport { useCurrentWallet } from './useCurrentWallet.js';\n\ntype UseSignPersonalMessageArgs = PartialBy<SuiSignPersonalMessageInput, 'account'>;\n\ntype UseSignPersonalMessageResult = SuiSignPersonalMessageOutput;\n\ntype UseSignPersonalMessageError =\n\t| WalletFeatureNotSupportedError\n\t| WalletNoAccountSelectedError\n\t| WalletNotConnectedError\n\t| Error;\n\ntype UseSignPersonalMessageMutationOptions = Omit<\n\tUseMutationOptions<\n\t\tUseSignPersonalMessageResult,\n\t\tUseSignPersonalMessageError,\n\t\tUseSignPersonalMessageArgs,\n\t\tunknown\n\t>,\n\t'mutationFn'\n>;\n\n/**\n * Mutation hook for prompting the user to sign a message.\n */\nexport function useSignPersonalMessage({\n\tmutationKey,\n\t...mutationOptions\n}: UseSignPersonalMessageMutationOptions = {}) {\n\tconst currentWallet = useCurrentWallet();\n\tconst currentAccount = useCurrentAccount();\n\n\treturn useMutation({\n\t\tmutationKey: walletMutationKeys.signPersonalMessage(mutationKey),\n\t\tmutationFn: async (signPersonalMessageArgs) => {\n\t\t\tif (!currentWallet) {\n\t\t\t\tthrow new WalletNotConnectedError('No wallet is connected.');\n\t\t\t}\n\n\t\t\tconst signerAccount = signPersonalMessageArgs.account ?? currentAccount;\n\t\t\tif (!signerAccount) {\n\t\t\t\tthrow new WalletNoAccountSelectedError(\n\t\t\t\t\t'No wallet account is selected to sign the personal message with.',\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst walletFeature = currentWallet.features['sui:signPersonalMessage'];\n\t\t\tif (!walletFeature) {\n\t\t\t\tthrow new WalletFeatureNotSupportedError(\n\t\t\t\t\t\"This wallet doesn't support the `signPersonalMessage` feature.\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn await walletFeature.signPersonalMessage({\n\t\t\t\t...signPersonalMessageArgs,\n\t\t\t\taccount: signerAccount,\n\t\t\t});\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires an active wallet connection.\n */\nexport class WalletNotConnectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires a selected wallet account.\n * This is more of an edge case stemming from the fact that wallets don't technically require you to authorize any\n * accounts when connecting a wallet.\n */\nexport class WalletNoAccountSelectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that isn't supported by a wallet.\n */\nexport class WalletFeatureNotSupportedError extends Error {}\n\n/**\n * An error that is instantiated when a wallet account can't be found for a specific wallet.\n */\nexport class WalletAccountNotFoundError extends Error {}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { MutationKey } from '@tanstack/react-query';\n\nexport const walletMutationKeys = {\n\tall: { baseScope: 'wallet' },\n\tconnectWallet: formMutationKeyFn('connect-wallet'),\n\tdisconnectWallet: formMutationKeyFn('disconnect-wallet'),\n\tsignPersonalMessage: formMutationKeyFn('sign-personal-message'),\n\tsignTransactionBlock: formMutationKeyFn('sign-transaction-block'),\n\tsignAndExecuteTransactionBlock: formMutationKeyFn('sign-and-execute-transaction-block'),\n\tswitchAccount: formMutationKeyFn('switch-account'),\n};\n\nfunction formMutationKeyFn(baseEntity: string) {\n\treturn function mutationKeyFn(additionalKeys: MutationKey = []) {\n\t\treturn [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];\n\t};\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useContext } from 'react';\nimport { useStore } from 'zustand';\n\nimport { WalletContext } from '../../contexts/walletContext.js';\nimport type { StoreState } from '../../walletStore.js';\n\nexport function useWalletStore<T>(selector: (state: StoreState) => T): T {\n\tconst store = useContext(WalletContext);\n\tif (!store) {\n\t\tthrow new Error(\n\t\t\t'Could not find WalletContext. Ensure that you have set up the WalletProvider.',\n\t\t);\n\t}\n\treturn useStore(store, selector);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { createContext } from 'react';\n\nimport type { WalletStore } from '../walletStore.js';\n\nexport const WalletContext = createContext<WalletStore | null>(null);\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet account that is currently selected, if one exists.\n */\nexport function useCurrentAccount() {\n\treturn useWalletStore((state) => state.currentAccount);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet that is currently connected to the dApp, if one exists.\n */\nexport function useCurrentWallet() {\n\treturn useWalletStore((state) => state.currentWallet);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,yBAA4B;;;ACFrB,IAAM,0BAAN,cAAsC,MAAM;AAAC;AAO7C,IAAM,+BAAN,cAA2C,MAAM;AAAC;AAKlD,IAAM,iCAAN,cAA6C,MAAM;AAAC;;;ACbpD,IAAM,qBAAqB;AAAA,EACjC,KAAK,EAAE,WAAW,SAAS;AAAA,EAC3B,eAAe,kBAAkB,gBAAgB;AAAA,EACjD,kBAAkB,kBAAkB,mBAAmB;AAAA,EACvD,qBAAqB,kBAAkB,uBAAuB;AAAA,EAC9D,sBAAsB,kBAAkB,wBAAwB;AAAA,EAChE,gCAAgC,kBAAkB,oCAAoC;AAAA,EACtF,eAAe,kBAAkB,gBAAgB;AAClD;AAEA,SAAS,kBAAkB,YAAoB;AAC9C,SAAO,SAAS,cAAc,iBAA8B,CAAC,GAAG;AAC/D,WAAO,CAAC,EAAE,GAAG,mBAAmB,KAAK,WAAW,GAAG,GAAG,cAAc;AAAA,EACrE;AACD;;;AChBA,IAAAA,gBAA2B;AAC3B,qBAAyB;;;ACDzB,mBAA8B;AAIvB,IAAM,oBAAgB,4BAAkC,IAAI;;;ADE5D,SAAS,eAAkB,UAAuC;AACxE,QAAM,YAAQ,0BAAW,aAAa;AACtC,MAAI,CAAC,OAAO;AACX,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AACA,aAAO,yBAAS,OAAO,QAAQ;AAChC;;;AETO,SAAS,oBAAoB;AACnC,SAAO,eAAe,CAAC,UAAU,MAAM,cAAc;AACtD;;;ACFO,SAAS,mBAAmB;AAClC,SAAO,eAAe,CAAC,UAAU,MAAM,aAAa;AACrD;;;ANiCO,SAAS,uBAAuB;AAAA,EACtC;AAAA,EACA,GAAG;AACJ,IAA2C,CAAC,GAAG;AAC9C,QAAM,gBAAgB,iBAAiB;AACvC,QAAM,iBAAiB,kBAAkB;AAEzC,aAAO,gCAAY;AAAA,IAClB,aAAa,mBAAmB,oBAAoB,WAAW;AAAA,IAC/D,YAAY,OAAO,4BAA4B;AAC9C,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI,wBAAwB,yBAAyB;AAAA,MAC5D;AAEA,YAAM,gBAAgB,wBAAwB,WAAW;AACzD,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MACD;AAEA,YAAM,gBAAgB,cAAc,SAAS,yBAAyB;AACtE,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MACD;AAEA,aAAO,MAAM,cAAc,oBAAoB;AAAA,QAC9C,GAAG;AAAA,QACH,SAAS;AAAA,MACV,CAAC;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACJ,CAAC;AACF;",
6
+ "names": ["import_react"]
7
+ }
@@ -0,0 +1,13 @@
1
+ import type { SuiSignTransactionBlockInput, SuiSignTransactionBlockOutput } from '@mysten/wallet-standard';
2
+ import type { UseMutationOptions } from '@tanstack/react-query';
3
+ import { WalletFeatureNotSupportedError, WalletNoAccountSelectedError, WalletNotConnectedError } from '../..//errors/walletErrors.js';
4
+ import type { PartialBy } from '../../types/utilityTypes.js';
5
+ type UseSignTransactionBlockArgs = PartialBy<SuiSignTransactionBlockInput, 'account'>;
6
+ type UseSignTransactionBlockResult = SuiSignTransactionBlockOutput;
7
+ type UseSignTransactionBlockError = WalletFeatureNotSupportedError | WalletNoAccountSelectedError | WalletNotConnectedError | Error;
8
+ type UseSignTransactionBlockMutationOptions = Omit<UseMutationOptions<UseSignTransactionBlockResult, UseSignTransactionBlockError, UseSignTransactionBlockArgs, unknown>, 'mutationFn'>;
9
+ /**
10
+ * Mutation hook for prompting the user to sign a transaction block.
11
+ */
12
+ export declare function useSignTransactionBlock({ mutationKey, ...mutationOptions }?: UseSignTransactionBlockMutationOptions): import("@tanstack/react-query").UseMutationResult<SuiSignTransactionBlockOutput, Error | WalletNotConnectedError | WalletNoAccountSelectedError | WalletFeatureNotSupportedError, UseSignTransactionBlockArgs, unknown>;
13
+ export {};
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/hooks/wallet/useSignTransactionBlock.ts
21
+ var useSignTransactionBlock_exports = {};
22
+ __export(useSignTransactionBlock_exports, {
23
+ useSignTransactionBlock: () => useSignTransactionBlock
24
+ });
25
+ module.exports = __toCommonJS(useSignTransactionBlock_exports);
26
+ var import_react_query = require("@tanstack/react-query");
27
+
28
+ // src/errors/walletErrors.ts
29
+ var WalletNotConnectedError = class extends Error {
30
+ };
31
+ var WalletNoAccountSelectedError = class extends Error {
32
+ };
33
+ var WalletFeatureNotSupportedError = class extends Error {
34
+ };
35
+
36
+ // src/constants/walletMutationKeys.ts
37
+ var walletMutationKeys = {
38
+ all: { baseScope: "wallet" },
39
+ connectWallet: formMutationKeyFn("connect-wallet"),
40
+ disconnectWallet: formMutationKeyFn("disconnect-wallet"),
41
+ signPersonalMessage: formMutationKeyFn("sign-personal-message"),
42
+ signTransactionBlock: formMutationKeyFn("sign-transaction-block"),
43
+ signAndExecuteTransactionBlock: formMutationKeyFn("sign-and-execute-transaction-block"),
44
+ switchAccount: formMutationKeyFn("switch-account")
45
+ };
46
+ function formMutationKeyFn(baseEntity) {
47
+ return function mutationKeyFn(additionalKeys = []) {
48
+ return [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];
49
+ };
50
+ }
51
+
52
+ // src/hooks/wallet/useWalletStore.ts
53
+ var import_react2 = require("react");
54
+ var import_zustand = require("zustand");
55
+
56
+ // src/contexts/walletContext.ts
57
+ var import_react = require("react");
58
+ var WalletContext = (0, import_react.createContext)(null);
59
+
60
+ // src/hooks/wallet/useWalletStore.ts
61
+ function useWalletStore(selector) {
62
+ const store = (0, import_react2.useContext)(WalletContext);
63
+ if (!store) {
64
+ throw new Error(
65
+ "Could not find WalletContext. Ensure that you have set up the WalletProvider."
66
+ );
67
+ }
68
+ return (0, import_zustand.useStore)(store, selector);
69
+ }
70
+
71
+ // src/hooks/wallet/useCurrentAccount.ts
72
+ function useCurrentAccount() {
73
+ return useWalletStore((state) => state.currentAccount);
74
+ }
75
+
76
+ // src/hooks/wallet/useCurrentWallet.ts
77
+ function useCurrentWallet() {
78
+ return useWalletStore((state) => state.currentWallet);
79
+ }
80
+
81
+ // src/hooks/wallet/useSignTransactionBlock.ts
82
+ function useSignTransactionBlock({
83
+ mutationKey,
84
+ ...mutationOptions
85
+ } = {}) {
86
+ const currentWallet = useCurrentWallet();
87
+ const currentAccount = useCurrentAccount();
88
+ return (0, import_react_query.useMutation)({
89
+ mutationKey: walletMutationKeys.signTransactionBlock(mutationKey),
90
+ mutationFn: async (signTransactionBlockArgs) => {
91
+ if (!currentWallet) {
92
+ throw new WalletNotConnectedError("No wallet is connected.");
93
+ }
94
+ const signerAccount = signTransactionBlockArgs.account ?? currentAccount;
95
+ if (!signerAccount) {
96
+ throw new WalletNoAccountSelectedError(
97
+ "No wallet account is selected to sign the personal message with."
98
+ );
99
+ }
100
+ const walletFeature = currentWallet.features["sui:signTransactionBlock"];
101
+ if (!walletFeature) {
102
+ throw new WalletFeatureNotSupportedError(
103
+ "This wallet doesn't support the `SignTransactionBlock` feature."
104
+ );
105
+ }
106
+ return await walletFeature.signTransactionBlock({
107
+ ...signTransactionBlockArgs,
108
+ account: signerAccount
109
+ });
110
+ },
111
+ ...mutationOptions
112
+ });
113
+ }
114
+ //# sourceMappingURL=useSignTransactionBlock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/hooks/wallet/useSignTransactionBlock.ts", "../../../../src/errors/walletErrors.ts", "../../../../src/constants/walletMutationKeys.ts", "../../../../src/hooks/wallet/useWalletStore.ts", "../../../../src/contexts/walletContext.ts", "../../../../src/hooks/wallet/useCurrentAccount.ts", "../../../../src/hooks/wallet/useCurrentWallet.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type {\n\tSuiSignTransactionBlockInput,\n\tSuiSignTransactionBlockOutput,\n} from '@mysten/wallet-standard';\nimport type { UseMutationOptions } from '@tanstack/react-query';\nimport { useMutation } from '@tanstack/react-query';\n\nimport {\n\tWalletFeatureNotSupportedError,\n\tWalletNoAccountSelectedError,\n\tWalletNotConnectedError,\n} from '../..//errors/walletErrors.js';\nimport { walletMutationKeys } from '../../constants/walletMutationKeys.js';\nimport type { PartialBy } from '../../types/utilityTypes.js';\nimport { useCurrentAccount } from './useCurrentAccount.js';\nimport { useCurrentWallet } from './useCurrentWallet.js';\n\ntype UseSignTransactionBlockArgs = PartialBy<SuiSignTransactionBlockInput, 'account'>;\n\ntype UseSignTransactionBlockResult = SuiSignTransactionBlockOutput;\n\ntype UseSignTransactionBlockError =\n\t| WalletFeatureNotSupportedError\n\t| WalletNoAccountSelectedError\n\t| WalletNotConnectedError\n\t| Error;\n\ntype UseSignTransactionBlockMutationOptions = Omit<\n\tUseMutationOptions<\n\t\tUseSignTransactionBlockResult,\n\t\tUseSignTransactionBlockError,\n\t\tUseSignTransactionBlockArgs,\n\t\tunknown\n\t>,\n\t'mutationFn'\n>;\n\n/**\n * Mutation hook for prompting the user to sign a transaction block.\n */\nexport function useSignTransactionBlock({\n\tmutationKey,\n\t...mutationOptions\n}: UseSignTransactionBlockMutationOptions = {}) {\n\tconst currentWallet = useCurrentWallet();\n\tconst currentAccount = useCurrentAccount();\n\n\treturn useMutation({\n\t\tmutationKey: walletMutationKeys.signTransactionBlock(mutationKey),\n\t\tmutationFn: async (signTransactionBlockArgs) => {\n\t\t\tif (!currentWallet) {\n\t\t\t\tthrow new WalletNotConnectedError('No wallet is connected.');\n\t\t\t}\n\n\t\t\tconst signerAccount = signTransactionBlockArgs.account ?? currentAccount;\n\t\t\tif (!signerAccount) {\n\t\t\t\tthrow new WalletNoAccountSelectedError(\n\t\t\t\t\t'No wallet account is selected to sign the personal message with.',\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst walletFeature = currentWallet.features['sui:signTransactionBlock'];\n\t\t\tif (!walletFeature) {\n\t\t\t\tthrow new WalletFeatureNotSupportedError(\n\t\t\t\t\t\"This wallet doesn't support the `SignTransactionBlock` feature.\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn await walletFeature.signTransactionBlock({\n\t\t\t\t...signTransactionBlockArgs,\n\t\t\t\taccount: signerAccount,\n\t\t\t});\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires an active wallet connection.\n */\nexport class WalletNotConnectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that requires a selected wallet account.\n * This is more of an edge case stemming from the fact that wallets don't technically require you to authorize any\n * accounts when connecting a wallet.\n */\nexport class WalletNoAccountSelectedError extends Error {}\n\n/**\n * An error that is instantiated when someone attempts to perform an action that isn't supported by a wallet.\n */\nexport class WalletFeatureNotSupportedError extends Error {}\n\n/**\n * An error that is instantiated when a wallet account can't be found for a specific wallet.\n */\nexport class WalletAccountNotFoundError extends Error {}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { MutationKey } from '@tanstack/react-query';\n\nexport const walletMutationKeys = {\n\tall: { baseScope: 'wallet' },\n\tconnectWallet: formMutationKeyFn('connect-wallet'),\n\tdisconnectWallet: formMutationKeyFn('disconnect-wallet'),\n\tsignPersonalMessage: formMutationKeyFn('sign-personal-message'),\n\tsignTransactionBlock: formMutationKeyFn('sign-transaction-block'),\n\tsignAndExecuteTransactionBlock: formMutationKeyFn('sign-and-execute-transaction-block'),\n\tswitchAccount: formMutationKeyFn('switch-account'),\n};\n\nfunction formMutationKeyFn(baseEntity: string) {\n\treturn function mutationKeyFn(additionalKeys: MutationKey = []) {\n\t\treturn [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];\n\t};\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useContext } from 'react';\nimport { useStore } from 'zustand';\n\nimport { WalletContext } from '../../contexts/walletContext.js';\nimport type { StoreState } from '../../walletStore.js';\n\nexport function useWalletStore<T>(selector: (state: StoreState) => T): T {\n\tconst store = useContext(WalletContext);\n\tif (!store) {\n\t\tthrow new Error(\n\t\t\t'Could not find WalletContext. Ensure that you have set up the WalletProvider.',\n\t\t);\n\t}\n\treturn useStore(store, selector);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { createContext } from 'react';\n\nimport type { WalletStore } from '../walletStore.js';\n\nexport const WalletContext = createContext<WalletStore | null>(null);\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet account that is currently selected, if one exists.\n */\nexport function useCurrentAccount() {\n\treturn useWalletStore((state) => state.currentAccount);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet that is currently connected to the dApp, if one exists.\n */\nexport function useCurrentWallet() {\n\treturn useWalletStore((state) => state.currentWallet);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,yBAA4B;;;ACFrB,IAAM,0BAAN,cAAsC,MAAM;AAAC;AAO7C,IAAM,+BAAN,cAA2C,MAAM;AAAC;AAKlD,IAAM,iCAAN,cAA6C,MAAM;AAAC;;;ACbpD,IAAM,qBAAqB;AAAA,EACjC,KAAK,EAAE,WAAW,SAAS;AAAA,EAC3B,eAAe,kBAAkB,gBAAgB;AAAA,EACjD,kBAAkB,kBAAkB,mBAAmB;AAAA,EACvD,qBAAqB,kBAAkB,uBAAuB;AAAA,EAC9D,sBAAsB,kBAAkB,wBAAwB;AAAA,EAChE,gCAAgC,kBAAkB,oCAAoC;AAAA,EACtF,eAAe,kBAAkB,gBAAgB;AAClD;AAEA,SAAS,kBAAkB,YAAoB;AAC9C,SAAO,SAAS,cAAc,iBAA8B,CAAC,GAAG;AAC/D,WAAO,CAAC,EAAE,GAAG,mBAAmB,KAAK,WAAW,GAAG,GAAG,cAAc;AAAA,EACrE;AACD;;;AChBA,IAAAA,gBAA2B;AAC3B,qBAAyB;;;ACDzB,mBAA8B;AAIvB,IAAM,oBAAgB,4BAAkC,IAAI;;;ADE5D,SAAS,eAAkB,UAAuC;AACxE,QAAM,YAAQ,0BAAW,aAAa;AACtC,MAAI,CAAC,OAAO;AACX,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AACA,aAAO,yBAAS,OAAO,QAAQ;AAChC;;;AETO,SAAS,oBAAoB;AACnC,SAAO,eAAe,CAAC,UAAU,MAAM,cAAc;AACtD;;;ACFO,SAAS,mBAAmB;AAClC,SAAO,eAAe,CAAC,UAAU,MAAM,aAAa;AACrD;;;ANiCO,SAAS,wBAAwB;AAAA,EACvC;AAAA,EACA,GAAG;AACJ,IAA4C,CAAC,GAAG;AAC/C,QAAM,gBAAgB,iBAAiB;AACvC,QAAM,iBAAiB,kBAAkB;AAEzC,aAAO,gCAAY;AAAA,IAClB,aAAa,mBAAmB,qBAAqB,WAAW;AAAA,IAChE,YAAY,OAAO,6BAA6B;AAC/C,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI,wBAAwB,yBAAyB;AAAA,MAC5D;AAEA,YAAM,gBAAgB,yBAAyB,WAAW;AAC1D,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MACD;AAEA,YAAM,gBAAgB,cAAc,SAAS,0BAA0B;AACvE,UAAI,CAAC,eAAe;AACnB,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MACD;AAEA,aAAO,MAAM,cAAc,qBAAqB;AAAA,QAC/C,GAAG;AAAA,QACH,SAAS;AAAA,MACV,CAAC;AAAA,IACF;AAAA,IACA,GAAG;AAAA,EACJ,CAAC;AACF;",
6
+ "names": ["import_react"]
7
+ }
@@ -0,0 +1,13 @@
1
+ import type { WalletAccount } from '@mysten/wallet-standard';
2
+ import type { UseMutationOptions } from '@tanstack/react-query';
3
+ import { WalletAccountNotFoundError, WalletNotConnectedError } from '../../errors/walletErrors.js';
4
+ type SwitchAccountArgs = {
5
+ account: WalletAccount;
6
+ };
7
+ type SwitchAccountResult = void;
8
+ type UseSwitchAccountMutationOptions = Omit<UseMutationOptions<SwitchAccountResult, WalletNotConnectedError | WalletAccountNotFoundError | Error, SwitchAccountArgs, unknown>, 'mutationFn'>;
9
+ /**
10
+ * Mutation hook for switching to a specific wallet account.
11
+ */
12
+ export declare function useSwitchAccount({ mutationKey, ...mutationOptions }?: UseSwitchAccountMutationOptions): import("@tanstack/react-query").UseMutationResult<void, Error | WalletNotConnectedError | WalletAccountNotFoundError, SwitchAccountArgs, unknown>;
13
+ export {};