thirdweb 5.61.7-nightly-da9f1964e4ae74ed5d33666788e2d16e4d56614d-20241015000333 → 5.62.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 (231) hide show
  1. package/dist/cjs/exports/extensions/erc1155.js +3 -1
  2. package/dist/cjs/exports/extensions/erc1155.js.map +1 -1
  3. package/dist/cjs/extensions/erc1155/write/mintToBatch.js +79 -0
  4. package/dist/cjs/extensions/erc1155/write/mintToBatch.js.map +1 -0
  5. package/dist/cjs/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js +15 -4
  6. package/dist/cjs/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js.map +1 -1
  7. package/dist/cjs/react/native/ui/components/WalletImage.js +3 -2
  8. package/dist/cjs/react/native/ui/components/WalletImage.js.map +1 -1
  9. package/dist/cjs/react/native/ui/connect/ConnectModal.js +6 -6
  10. package/dist/cjs/react/native/ui/connect/ConnectModal.js.map +1 -1
  11. package/dist/cjs/react/native/ui/connect/ConnectedButton.js +2 -2
  12. package/dist/cjs/react/native/ui/connect/ConnectedButton.js.map +1 -1
  13. package/dist/cjs/react/native/ui/connect/ConnectedModal.js +3 -3
  14. package/dist/cjs/react/native/ui/connect/ConnectedModal.js.map +1 -1
  15. package/dist/cjs/react/native/ui/connect/ReceiveScreen.js +2 -2
  16. package/dist/cjs/react/native/ui/connect/ReceiveScreen.js.map +1 -1
  17. package/dist/cjs/react/web/wallets/in-app/WalletAuth.js +8 -0
  18. package/dist/cjs/react/web/wallets/in-app/WalletAuth.js.map +1 -1
  19. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +1 -0
  20. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  21. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +11 -16
  22. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  23. package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js +7 -0
  24. package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
  25. package/dist/cjs/react/web/wallets/shared/SocialLogin.js +9 -12
  26. package/dist/cjs/react/web/wallets/shared/SocialLogin.js.map +1 -1
  27. package/dist/cjs/version.js +1 -1
  28. package/dist/cjs/version.js.map +1 -1
  29. package/dist/cjs/wallets/in-app/{web/lib → core}/actions/generate-wallet.enclave.js +2 -2
  30. package/dist/cjs/wallets/in-app/core/actions/generate-wallet.enclave.js.map +1 -0
  31. package/dist/cjs/wallets/in-app/{web/lib → core}/actions/get-enclave-user-status.js +2 -2
  32. package/dist/cjs/wallets/in-app/core/actions/get-enclave-user-status.js.map +1 -0
  33. package/dist/cjs/wallets/in-app/{web/lib → core}/actions/sign-message.enclave.js +6 -5
  34. package/dist/cjs/wallets/in-app/core/actions/sign-message.enclave.js.map +1 -0
  35. package/dist/cjs/wallets/in-app/{web/lib → core}/actions/sign-transaction.enclave.js +6 -5
  36. package/dist/cjs/wallets/in-app/core/actions/sign-transaction.enclave.js.map +1 -0
  37. package/dist/cjs/wallets/in-app/{web/lib → core}/actions/sign-typed-data.enclave.js +6 -5
  38. package/dist/cjs/wallets/in-app/core/actions/sign-typed-data.enclave.js.map +1 -0
  39. package/dist/cjs/wallets/in-app/core/authentication/client-scoped-storage.js +9 -2
  40. package/dist/cjs/wallets/in-app/core/authentication/client-scoped-storage.js.map +1 -1
  41. package/dist/cjs/wallets/in-app/core/authentication/guest.js +1 -1
  42. package/dist/cjs/wallets/in-app/core/authentication/guest.js.map +1 -1
  43. package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js +4 -8
  44. package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
  45. package/dist/cjs/wallets/in-app/native/auth/passkeys.js +1 -1
  46. package/dist/cjs/wallets/in-app/native/auth/passkeys.js.map +1 -1
  47. package/dist/cjs/wallets/in-app/native/helpers/api/fetchers.js +14 -0
  48. package/dist/cjs/wallets/in-app/native/helpers/api/fetchers.js.map +1 -1
  49. package/dist/cjs/wallets/in-app/native/helpers/auth/middleware.js +3 -2
  50. package/dist/cjs/wallets/in-app/native/helpers/auth/middleware.js.map +1 -1
  51. package/dist/cjs/wallets/in-app/native/helpers/constants.js +2 -1
  52. package/dist/cjs/wallets/in-app/native/helpers/constants.js.map +1 -1
  53. package/dist/cjs/wallets/in-app/native/helpers/wallet/migration.js +133 -0
  54. package/dist/cjs/wallets/in-app/native/helpers/wallet/migration.js.map +1 -0
  55. package/dist/cjs/wallets/in-app/native/helpers/wallet/retrieval.js +2 -0
  56. package/dist/cjs/wallets/in-app/native/helpers/wallet/retrieval.js.map +1 -1
  57. package/dist/cjs/wallets/in-app/native/native-connector.js +50 -28
  58. package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
  59. package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js +2 -2
  60. package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
  61. package/dist/cjs/wallets/in-app/web/lib/auth/passkeys.js +1 -1
  62. package/dist/cjs/wallets/in-app/web/lib/auth/passkeys.js.map +1 -1
  63. package/dist/cjs/wallets/in-app/web/lib/web-connector.js +13 -13
  64. package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
  65. package/dist/cjs/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js +1 -1
  66. package/dist/cjs/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js.map +1 -1
  67. package/dist/esm/exports/extensions/erc1155.js +1 -0
  68. package/dist/esm/exports/extensions/erc1155.js.map +1 -1
  69. package/dist/esm/extensions/erc1155/write/mintToBatch.js +76 -0
  70. package/dist/esm/extensions/erc1155/write/mintToBatch.js.map +1 -0
  71. package/dist/esm/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js +15 -4
  72. package/dist/esm/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js.map +1 -1
  73. package/dist/esm/react/native/ui/components/WalletImage.js +3 -2
  74. package/dist/esm/react/native/ui/components/WalletImage.js.map +1 -1
  75. package/dist/esm/react/native/ui/connect/ConnectModal.js +6 -6
  76. package/dist/esm/react/native/ui/connect/ConnectModal.js.map +1 -1
  77. package/dist/esm/react/native/ui/connect/ConnectedButton.js +2 -2
  78. package/dist/esm/react/native/ui/connect/ConnectedButton.js.map +1 -1
  79. package/dist/esm/react/native/ui/connect/ConnectedModal.js +3 -3
  80. package/dist/esm/react/native/ui/connect/ConnectedModal.js.map +1 -1
  81. package/dist/esm/react/native/ui/connect/ReceiveScreen.js +2 -2
  82. package/dist/esm/react/native/ui/connect/ReceiveScreen.js.map +1 -1
  83. package/dist/esm/react/web/wallets/in-app/WalletAuth.js +8 -0
  84. package/dist/esm/react/web/wallets/in-app/WalletAuth.js.map +1 -1
  85. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +1 -0
  86. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  87. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +12 -17
  88. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  89. package/dist/esm/react/web/wallets/shared/PassKeyLogin.js +7 -0
  90. package/dist/esm/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
  91. package/dist/esm/react/web/wallets/shared/SocialLogin.js +9 -12
  92. package/dist/esm/react/web/wallets/shared/SocialLogin.js.map +1 -1
  93. package/dist/esm/version.js +1 -1
  94. package/dist/esm/version.js.map +1 -1
  95. package/dist/esm/wallets/in-app/{web/lib → core}/actions/generate-wallet.enclave.js +2 -2
  96. package/dist/esm/wallets/in-app/core/actions/generate-wallet.enclave.js.map +1 -0
  97. package/dist/esm/wallets/in-app/{web/lib → core}/actions/get-enclave-user-status.js +2 -2
  98. package/dist/esm/wallets/in-app/core/actions/get-enclave-user-status.js.map +1 -0
  99. package/dist/esm/wallets/in-app/{web/lib → core}/actions/sign-message.enclave.js +6 -5
  100. package/dist/esm/wallets/in-app/core/actions/sign-message.enclave.js.map +1 -0
  101. package/dist/esm/wallets/in-app/{web/lib → core}/actions/sign-transaction.enclave.js +6 -5
  102. package/dist/esm/wallets/in-app/core/actions/sign-transaction.enclave.js.map +1 -0
  103. package/dist/esm/wallets/in-app/{web/lib → core}/actions/sign-typed-data.enclave.js +6 -5
  104. package/dist/esm/wallets/in-app/core/actions/sign-typed-data.enclave.js.map +1 -0
  105. package/dist/esm/wallets/in-app/core/authentication/client-scoped-storage.js +9 -2
  106. package/dist/esm/wallets/in-app/core/authentication/client-scoped-storage.js.map +1 -1
  107. package/dist/esm/wallets/in-app/core/authentication/guest.js +1 -1
  108. package/dist/esm/wallets/in-app/core/authentication/guest.js.map +1 -1
  109. package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js +4 -8
  110. package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
  111. package/dist/esm/wallets/in-app/native/auth/passkeys.js +1 -1
  112. package/dist/esm/wallets/in-app/native/auth/passkeys.js.map +1 -1
  113. package/dist/esm/wallets/in-app/native/helpers/api/fetchers.js +14 -0
  114. package/dist/esm/wallets/in-app/native/helpers/api/fetchers.js.map +1 -1
  115. package/dist/esm/wallets/in-app/native/helpers/auth/middleware.js +3 -2
  116. package/dist/esm/wallets/in-app/native/helpers/auth/middleware.js.map +1 -1
  117. package/dist/esm/wallets/in-app/native/helpers/constants.js +1 -0
  118. package/dist/esm/wallets/in-app/native/helpers/constants.js.map +1 -1
  119. package/dist/esm/wallets/in-app/native/helpers/wallet/migration.js +130 -0
  120. package/dist/esm/wallets/in-app/native/helpers/wallet/migration.js.map +1 -0
  121. package/dist/esm/wallets/in-app/native/helpers/wallet/retrieval.js +2 -2
  122. package/dist/esm/wallets/in-app/native/helpers/wallet/retrieval.js.map +1 -1
  123. package/dist/esm/wallets/in-app/native/native-connector.js +50 -28
  124. package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
  125. package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js +2 -2
  126. package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
  127. package/dist/esm/wallets/in-app/web/lib/auth/passkeys.js +1 -1
  128. package/dist/esm/wallets/in-app/web/lib/auth/passkeys.js.map +1 -1
  129. package/dist/esm/wallets/in-app/web/lib/web-connector.js +13 -13
  130. package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
  131. package/dist/esm/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js +1 -1
  132. package/dist/esm/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js.map +1 -1
  133. package/dist/types/exports/extensions/erc1155.d.ts +1 -0
  134. package/dist/types/exports/extensions/erc1155.d.ts.map +1 -1
  135. package/dist/types/extensions/erc1155/write/mintToBatch.d.ts +72 -0
  136. package/dist/types/extensions/erc1155/write/mintToBatch.d.ts.map +1 -0
  137. package/dist/types/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.d.ts.map +1 -1
  138. package/dist/types/react/native/ui/components/WalletImage.d.ts +2 -0
  139. package/dist/types/react/native/ui/components/WalletImage.d.ts.map +1 -1
  140. package/dist/types/react/native/ui/connect/ConnectModal.d.ts.map +1 -1
  141. package/dist/types/react/native/ui/connect/ConnectedButton.d.ts.map +1 -1
  142. package/dist/types/react/native/ui/connect/ConnectedModal.d.ts.map +1 -1
  143. package/dist/types/react/native/ui/connect/ReceiveScreen.d.ts +2 -0
  144. package/dist/types/react/native/ui/connect/ReceiveScreen.d.ts.map +1 -1
  145. package/dist/types/react/web/wallets/in-app/WalletAuth.d.ts.map +1 -1
  146. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
  147. package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts.map +1 -1
  148. package/dist/types/react/web/wallets/shared/SocialLogin.d.ts.map +1 -1
  149. package/dist/types/version.d.ts +1 -1
  150. package/dist/types/version.d.ts.map +1 -1
  151. package/dist/types/wallets/in-app/core/actions/generate-wallet.enclave.d.ts +13 -0
  152. package/dist/types/wallets/in-app/core/actions/generate-wallet.enclave.d.ts.map +1 -0
  153. package/dist/types/wallets/in-app/core/actions/get-enclave-user-status.d.ts +14 -0
  154. package/dist/types/wallets/in-app/core/actions/get-enclave-user-status.d.ts.map +1 -0
  155. package/dist/types/wallets/in-app/core/actions/sign-message.enclave.d.ts +17 -0
  156. package/dist/types/wallets/in-app/core/actions/sign-message.enclave.d.ts.map +1 -0
  157. package/dist/types/wallets/in-app/core/actions/sign-transaction.enclave.d.ts +9 -0
  158. package/dist/types/wallets/in-app/core/actions/sign-transaction.enclave.d.ts.map +1 -0
  159. package/dist/types/wallets/in-app/{web/lib → core}/actions/sign-typed-data.enclave.d.ts +3 -5
  160. package/dist/types/wallets/in-app/core/actions/sign-typed-data.enclave.d.ts.map +1 -0
  161. package/dist/types/wallets/in-app/core/authentication/client-scoped-storage.d.ts +4 -3
  162. package/dist/types/wallets/in-app/core/authentication/client-scoped-storage.d.ts.map +1 -1
  163. package/dist/types/wallets/in-app/core/wallet/enclave-wallet.d.ts +6 -7
  164. package/dist/types/wallets/in-app/core/wallet/enclave-wallet.d.ts.map +1 -1
  165. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts.map +1 -1
  166. package/dist/types/wallets/in-app/native/helpers/constants.d.ts +1 -0
  167. package/dist/types/wallets/in-app/native/helpers/constants.d.ts.map +1 -1
  168. package/dist/types/wallets/in-app/native/helpers/wallet/migration.d.ts +17 -0
  169. package/dist/types/wallets/in-app/native/helpers/wallet/migration.d.ts.map +1 -0
  170. package/dist/types/wallets/in-app/native/helpers/wallet/retrieval.d.ts +27 -0
  171. package/dist/types/wallets/in-app/native/helpers/wallet/retrieval.d.ts.map +1 -1
  172. package/dist/types/wallets/in-app/native/native-connector.d.ts +2 -2
  173. package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
  174. package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts.map +1 -1
  175. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts +1 -1
  176. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts.map +1 -1
  177. package/package.json +5 -1
  178. package/src/exports/extensions/erc1155.ts +5 -0
  179. package/src/extensions/erc1155/write/mintToBatch.test.ts +74 -0
  180. package/src/extensions/erc1155/write/mintToBatch.ts +117 -0
  181. package/src/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.test.ts +75 -80
  182. package/src/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.ts +18 -4
  183. package/src/react/native/ui/components/WalletImage.tsx +5 -2
  184. package/src/react/native/ui/connect/ConnectModal.tsx +19 -2
  185. package/src/react/native/ui/connect/ConnectedButton.tsx +8 -2
  186. package/src/react/native/ui/connect/ConnectedModal.tsx +9 -2
  187. package/src/react/native/ui/connect/ReceiveScreen.tsx +5 -2
  188. package/src/react/web/wallets/in-app/WalletAuth.tsx +8 -0
  189. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +1 -0
  190. package/src/react/web/wallets/shared/OTPLoginUI.tsx +12 -18
  191. package/src/react/web/wallets/shared/PassKeyLogin.tsx +7 -0
  192. package/src/react/web/wallets/shared/SocialLogin.tsx +9 -12
  193. package/src/version.ts +1 -1
  194. package/src/wallets/in-app/{web/lib → core}/actions/generate-wallet.enclave.ts +6 -8
  195. package/src/wallets/in-app/{web/lib → core}/actions/get-enclave-user-status.ts +5 -5
  196. package/src/wallets/in-app/{web/lib → core}/actions/sign-message.enclave.ts +7 -9
  197. package/src/wallets/in-app/{web/lib → core}/actions/sign-transaction.enclave.ts +8 -10
  198. package/src/wallets/in-app/{web/lib → core}/actions/sign-typed-data.enclave.ts +7 -9
  199. package/src/wallets/in-app/core/authentication/client-scoped-storage.ts +6 -4
  200. package/src/wallets/in-app/core/authentication/guest.ts +1 -1
  201. package/src/wallets/in-app/core/wallet/enclave-wallet.ts +11 -17
  202. package/src/wallets/in-app/native/auth/passkeys.ts +1 -1
  203. package/src/wallets/in-app/native/helpers/api/fetchers.ts +14 -0
  204. package/src/wallets/in-app/native/helpers/auth/middleware.ts +3 -2
  205. package/src/wallets/in-app/native/helpers/constants.ts +2 -0
  206. package/src/wallets/in-app/native/helpers/wallet/migration.ts +185 -0
  207. package/src/wallets/in-app/native/helpers/wallet/retrieval.ts +2 -2
  208. package/src/wallets/in-app/native/native-connector.ts +62 -28
  209. package/src/wallets/in-app/web/lib/auth/iframe-auth.ts +2 -2
  210. package/src/wallets/in-app/web/lib/auth/passkeys.ts +1 -1
  211. package/src/wallets/in-app/web/lib/web-connector.ts +13 -13
  212. package/src/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.ts +1 -1
  213. package/dist/cjs/wallets/in-app/web/lib/actions/generate-wallet.enclave.js.map +0 -1
  214. package/dist/cjs/wallets/in-app/web/lib/actions/get-enclave-user-status.js.map +0 -1
  215. package/dist/cjs/wallets/in-app/web/lib/actions/sign-message.enclave.js.map +0 -1
  216. package/dist/cjs/wallets/in-app/web/lib/actions/sign-transaction.enclave.js.map +0 -1
  217. package/dist/cjs/wallets/in-app/web/lib/actions/sign-typed-data.enclave.js.map +0 -1
  218. package/dist/esm/wallets/in-app/web/lib/actions/generate-wallet.enclave.js.map +0 -1
  219. package/dist/esm/wallets/in-app/web/lib/actions/get-enclave-user-status.js.map +0 -1
  220. package/dist/esm/wallets/in-app/web/lib/actions/sign-message.enclave.js.map +0 -1
  221. package/dist/esm/wallets/in-app/web/lib/actions/sign-transaction.enclave.js.map +0 -1
  222. package/dist/esm/wallets/in-app/web/lib/actions/sign-typed-data.enclave.js.map +0 -1
  223. package/dist/types/wallets/in-app/web/lib/actions/generate-wallet.enclave.d.ts +0 -15
  224. package/dist/types/wallets/in-app/web/lib/actions/generate-wallet.enclave.d.ts.map +0 -1
  225. package/dist/types/wallets/in-app/web/lib/actions/get-enclave-user-status.d.ts +0 -14
  226. package/dist/types/wallets/in-app/web/lib/actions/get-enclave-user-status.d.ts.map +0 -1
  227. package/dist/types/wallets/in-app/web/lib/actions/sign-message.enclave.d.ts +0 -19
  228. package/dist/types/wallets/in-app/web/lib/actions/sign-message.enclave.d.ts.map +0 -1
  229. package/dist/types/wallets/in-app/web/lib/actions/sign-transaction.enclave.d.ts +0 -11
  230. package/dist/types/wallets/in-app/web/lib/actions/sign-transaction.enclave.d.ts.map +0 -1
  231. package/dist/types/wallets/in-app/web/lib/actions/sign-typed-data.enclave.d.ts.map +0 -1
@@ -1,18 +1,19 @@
1
1
  import type { AsyncStorage } from "../../../../utils/storage/AsyncStorage.js";
2
- import type { EcosystemWalletId } from "../../../wallet-types.js";
2
+ import type { Ecosystem } from "../wallet/types.js";
3
3
  /**
4
4
  * @internal
5
5
  */
6
6
  export declare class ClientScopedStorage {
7
7
  protected key: string;
8
8
  protected storage: AsyncStorage | null;
9
+ ecosystem?: Ecosystem;
9
10
  /**
10
11
  * @internal
11
12
  */
12
- constructor({ storage, clientId, ecosystemId, }: {
13
+ constructor({ storage, clientId, ecosystem, }: {
13
14
  storage: AsyncStorage | null;
14
15
  clientId: string;
15
- ecosystemId?: EcosystemWalletId;
16
+ ecosystem?: Ecosystem;
16
17
  });
17
18
  protected getItem(key: string): Promise<string | null>;
18
19
  protected setItem(key: string, value: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"client-scoped-storage.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/authentication/client-scoped-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAYlE;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IACvC;;OAEG;gBACS,EACV,OAAO,EACP,QAAQ,EACR,WAAW,GACZ,EAAE;QACD,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KACjC;cAKe,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;cAO5C,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAOlD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASzD;;OAEG;IACG,wBAAwB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIxD;;OAEG;IACG,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3E;;OAEG;IACG,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD;;OAEG;IACG,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAItD;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGnD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAG7C;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI1C;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnE;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAO9C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ3C;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAG/C;;OAEG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGrD;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAGjD;;OAEG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
1
+ {"version":3,"file":"client-scoped-storage.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/authentication/client-scoped-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAS9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAIpD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IAC7B;;OAEG;gBACS,EACV,OAAO,EACP,QAAQ,EACR,SAAS,GACV,EAAE;QACD,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,SAAS,CAAC;KACvB;cAMe,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;cAO5C,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAOlD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASzD;;OAEG;IACG,wBAAwB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIxD;;OAEG;IACG,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3E;;OAEG;IACG,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD;;OAEG;IACG,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAItD;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGnD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAG7C;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI1C;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnE;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAO9C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ3C;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAG/C;;OAEG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGrD;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAGjD;;OAEG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
@@ -22,15 +22,14 @@ export type UserStatus = {
22
22
  [key: string]: string;
23
23
  };
24
24
  }[];
25
- wallets: [
26
- {
27
- address: string;
28
- createdAt: string;
29
- type: "sharded" | "enclave";
30
- }
31
- ] | [];
25
+ wallets: UserWallet[];
32
26
  id: string;
33
27
  };
28
+ export type UserWallet = {
29
+ address: string;
30
+ createdAt: string;
31
+ type: "sharded" | "enclave";
32
+ };
34
33
  export declare class EnclaveWallet implements IWebWallet {
35
34
  private client;
36
35
  private ecosystem?;
@@ -1 +1 @@
1
- {"version":3,"file":"enclave-wallet.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/enclave-wallet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAMnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EACV,OAAO,EAER,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAEV,yBAAyB,EACzB,OAAO,EACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG;IACvB,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EACH;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GACxC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GACxC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GAC1C;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;KAC3C,EAAE,CAAC;IACJ,OAAO,EACH;QACE;YACE,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;SAC7B;KACF,GACD,EAAE,CAAC;IACP,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,qBAAa,aAAc,YAAW,UAAU;IAC9C,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAsB;gBAE9B,EACV,MAAM,EACN,SAAS,EACT,OAAO,EACP,OAAO,GACR,EAAE,QAAQ,CAAC;QACV,MAAM,EAAE,cAAc,CAAC;QACvB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,mBAAmB,CAAC;KAC9B,CAAC;IAOF;;;;OAIG;IACG,eAAe,CAAC,UAAU,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3E;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;IA2C7C;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;CA6GrC"}
1
+ {"version":3,"file":"enclave-wallet.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/enclave-wallet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAMnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EACV,OAAO,EAER,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAEV,yBAAyB,EACzB,OAAO,EACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG;IACvB,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EACH;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GACxC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GACxC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GAC1C;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;KAC3C,EAAE,CAAC;IACJ,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,qBAAa,aAAc,YAAW,UAAU;IAC9C,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAsB;gBAE9B,EACV,MAAM,EACN,SAAS,EACT,OAAO,EACP,OAAO,GACR,EAAE,QAAQ,CAAC;QACV,MAAM,EAAE,cAAc,CAAC;QACvB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,mBAAmB,CAAC;KAC9B,CAAC;IAOF;;;;OAIG;IACG,eAAe,CAAC,UAAU,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3E;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;IA2C7C;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;CAyGrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchers.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/native/helpers/api/fetchers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAItE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAchF,wBAAgB,iBAAiB;;;EAQhC;AAED,eAAO,MAAM,cAAc,WAAkB,cAAc;;EAiB1D,CAAC;AAEF,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IACtD,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoCpB;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAuB9B;AAED,wBAAsB,eAAe,CAAC,EACpC,MAAM,EACN,aAAa,EACb,4BAA4B,EAC5B,SAAS,EACT,OAAO,GACR,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,4BAA4B,CAAC,EAAE;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,iBAAiB,EAAE,OAAO,CAAC;KAC5B,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,iBA2BA;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,mBAAmB,CAAC;CAC9B;gBAuBiB,MAAM;mCACa,MAAM,EAAE;GAO5C;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,gBAkBA"}
1
+ {"version":3,"file":"fetchers.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/native/helpers/api/fetchers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAItE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAgBhF,wBAAgB,iBAAiB;;;EAQhC;AAED,eAAO,MAAM,cAAc,WAAkB,cAAc;;EAiB1D,CAAC;AAEF,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IACtD,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAgDpB;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAuB9B;AAED,wBAAsB,eAAe,CAAC,EACpC,MAAM,EACN,aAAa,EACb,4BAA4B,EAC5B,SAAS,EACT,OAAO,GACR,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,4BAA4B,CAAC,EAAE;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,iBAAiB,EAAE,OAAO,CAAC;KAC5B,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,iBA2BA;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,mBAAmB,CAAC;CAC9B;gBAuBiB,MAAM;mCACa,MAAM,EAAE;GAO5C;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,gBAkBA"}
@@ -8,6 +8,7 @@ export declare const THIRDWEB_SESSION_NONCE_HEADER = "x-session-nonce";
8
8
  export declare const COGNITO_IDENTITY_POOL_ID = "us-west-2:2ad7ab1e-f48b-48a6-adfa-ac1090689c26";
9
9
  export declare const GENERATE_RECOVERY_PASSWORD_LAMBDA_FUNCTION_V1 = "arn:aws:lambda:us-west-2:324457261097:function:recovery-share-password-GenerateRecoverySharePassw-bbE5ZbVAToil";
10
10
  export declare const GENERATE_RECOVERY_PASSWORD_LAMBDA_FUNCTION_V2 = "arn:aws:lambda:us-west-2:324457261097:function:lambda-thirdweb-auth-enc-key-prod-ThirdwebAuthEncKeyFunction";
11
+ export declare const ENCLAVE_KMS_KEY_ARN = "arn:aws:kms:us-west-2:324457261097:key/8b2a8cd5-9b22-4ea0-a6bc-463824a78f20";
11
12
  export declare const ROUTE_EMBEDDED_WALLET_DETAILS: string;
12
13
  export declare const ROUTE_COGNITO_IDENTITY_POOL_URL = "cognito-idp.us-west-2.amazonaws.com/us-west-2_UFwLcZIpq";
13
14
  export declare const ROUTE_STORE_USER_SHARES: string;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/native/helpers/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,QAAoB,CAAC;AAGlD,eAAO,MAAM,kBAAkB,QAAsB,CAAC;AACtD,eAAO,MAAM,4BAA4B,0BAA0B,CAAC;AACpE,eAAO,MAAM,4BAA4B,kDACQ,CAAC;AAGlD,eAAO,MAAM,oBAAoB,QAAwB,CAAC;AAE1D,eAAO,MAAM,UAAU,cAAc,CAAC;AAEtC,eAAO,MAAM,6BAA6B,oBAAoB,CAAC;AAE/D,eAAO,MAAM,wBAAwB,mDACa,CAAC;AACnD,eAAO,MAAM,6CAA6C,mHACwD,CAAC;AACnH,eAAO,MAAM,6CAA6C,gHACqD,CAAC;AAQhH,eAAO,MAAM,6BAA6B,QAAmF,CAAC;AAC9H,eAAO,MAAM,+BAA+B,4DAAoE,CAAC;AAEjH,eAAO,MAAM,uBAAuB,QAA6E,CAAC;AAClH,eAAO,MAAM,qBAAqB,QAA6E,CAAC;AAChH,eAAO,MAAM,+BAA+B,QAAgF,CAAC;AAC7H,eAAO,MAAM,uBAAuB,QAA0E,CAAC;AAC/G,eAAO,MAAM,4BAA4B,QAAoF,CAAC;AAE9H,eAAO,MAAM,8BAA8B,QAAuE,CAAC;AACnH,eAAO,MAAM,8BAA8B,QAA+D,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/native/helpers/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,QAAoB,CAAC;AAGlD,eAAO,MAAM,kBAAkB,QAAsB,CAAC;AACtD,eAAO,MAAM,4BAA4B,0BAA0B,CAAC;AACpE,eAAO,MAAM,4BAA4B,kDACQ,CAAC;AAGlD,eAAO,MAAM,oBAAoB,QAAwB,CAAC;AAE1D,eAAO,MAAM,UAAU,cAAc,CAAC;AAEtC,eAAO,MAAM,6BAA6B,oBAAoB,CAAC;AAE/D,eAAO,MAAM,wBAAwB,mDACa,CAAC;AACnD,eAAO,MAAM,6CAA6C,mHACwD,CAAC;AACnH,eAAO,MAAM,6CAA6C,gHACqD,CAAC;AAChH,eAAO,MAAM,mBAAmB,gFAC+C,CAAC;AAQhF,eAAO,MAAM,6BAA6B,QAAmF,CAAC;AAC9H,eAAO,MAAM,+BAA+B,4DAAoE,CAAC;AAEjH,eAAO,MAAM,uBAAuB,QAA6E,CAAC;AAClH,eAAO,MAAM,qBAAqB,QAA6E,CAAC;AAChH,eAAO,MAAM,+BAA+B,QAAgF,CAAC;AAC7H,eAAO,MAAM,uBAAuB,QAA0E,CAAC;AAC/G,eAAO,MAAM,4BAA4B,QAAoF,CAAC;AAE9H,eAAO,MAAM,8BAA8B,QAAuE,CAAC;AACnH,eAAO,MAAM,8BAA8B,QAA+D,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { ThirdwebClient } from "../../../../../client/client.js";
2
+ import type { ClientScopedStorage } from "../../../core/authentication/client-scoped-storage.js";
3
+ import type { AuthStoredTokenWithCookieReturnType } from "../../../core/authentication/types.js";
4
+ import type { UserWallet } from "../../../core/wallet/enclave-wallet.js";
5
+ /**
6
+ * Migrate a sharded wallet to an enclave wallet.
7
+ *
8
+ * @param args - The arguments for the migration process.
9
+ * @returns The migrated user wallet.
10
+ */
11
+ export declare function migrateToEnclaveWallet(args: {
12
+ client: ThirdwebClient;
13
+ storage: ClientScopedStorage;
14
+ storedToken: AuthStoredTokenWithCookieReturnType["storedToken"];
15
+ encryptionKey?: string;
16
+ }): Promise<UserWallet>;
17
+ //# sourceMappingURL=migration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/native/helpers/wallet/migration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAStE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AACjG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAUzE;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,WAAW,EAAE,mCAAmC,CAAC,aAAa,CAAC,CAAC;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,UAAU,CAAC,CAoHtB"}
@@ -10,6 +10,33 @@ export declare function getExistingUserAccount(args: {
10
10
  client: ThirdwebClient;
11
11
  storage: ClientScopedStorage;
12
12
  }): Promise<Account>;
13
+ export declare function getWalletPrivateKeyFromShares(shares: string[]): Promise<string>;
14
+ /**
15
+ *
16
+ * @param deviceShare - retrieves the current share associated with the user's device.
17
+ * @returns The requested shares
18
+ * @throws if attempting to get deviceShare when it's not present
19
+ */
20
+ export declare function getShares<A extends boolean, D extends boolean, R extends boolean>({ client, authShare, deviceShare, recoveryShare, storage, }: {
21
+ client: ThirdwebClient;
22
+ authShare: {
23
+ toRetrieve: A;
24
+ };
25
+ recoveryShare: R extends true ? {
26
+ toRetrieve: R;
27
+ recoveryCode: string;
28
+ } : {
29
+ toRetrieve: R;
30
+ };
31
+ deviceShare: {
32
+ toRetrieve: D;
33
+ };
34
+ storage: ClientScopedStorage;
35
+ }): Promise<{
36
+ authShare: A extends true ? string : undefined;
37
+ recoveryShare: R extends true ? string : undefined;
38
+ deviceShare: D extends true ? string : undefined;
39
+ }>;
13
40
  export declare function setUpShareForNewDevice({ recoveryCode, client, storage, }: {
14
41
  recoveryCode: string;
15
42
  client: ThirdwebClient;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieval.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/native/helpers/wallet/retrieval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAWtF;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,oBAaA;AAkKD,wBAAsB,sBAAsB,CAAC,EAC3C,YAAY,EACZ,MAAM,EACN,OAAO,GACR,EAAE;IACD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA8BpC"}
1
+ {"version":3,"file":"retrieval.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/native/helpers/wallet/retrieval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAWtF;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,oBAaA;AAED,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,mBAYnE;AA4BD;;;;;GAKG;AACH,wBAAsB,SAAS,CAC7B,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,EACA,MAAM,EACN,SAAS,EACT,WAAW,EACX,aAAa,EACb,OAAO,GACR,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE;QAAE,UAAU,EAAE,CAAC,CAAA;KAAE,CAAC;IAC7B,aAAa,EAAE,CAAC,SAAS,IAAI,GACzB;QACE,UAAU,EAAE,CAAC,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;KACtB,GACD;QACE,UAAU,EAAE,CAAC,CAAC;KACf,CAAC;IACN,WAAW,EAAE;QAAE,UAAU,EAAE,CAAC,CAAA;KAAE,CAAC;IAC/B,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAAC;IACV,SAAS,EAAE,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAC/C,aAAa,EAAE,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IACnD,WAAW,EAAE,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;CAClD,CAAC,CA6ED;AAUD,wBAAsB,sBAAsB,CAAC,EAC3C,YAAY,EACZ,MAAM,EACN,OAAO,GACR,EAAE;IACD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA8BpC"}
@@ -11,11 +11,11 @@ type NativeConnectorOptions = {
11
11
  export declare class InAppNativeConnector implements InAppConnector {
12
12
  private client;
13
13
  private ecosystem?;
14
+ private storage;
14
15
  private passkeyDomain?;
15
- private localStorage;
16
16
  private wallet?;
17
17
  constructor(options: NativeConnectorOptions);
18
- initializeWallet(authToken?: string): Promise<void>;
18
+ initializeWallet(authResult?: AuthStoredTokenWithCookieReturnType, encryptionKey?: string): Promise<void>;
19
19
  getUser(): Promise<GetUser>;
20
20
  getAccount(): Promise<Account>;
21
21
  preAuthenticate(args: MultiStepAuthProviderType): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"native-connector.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/in-app/native/native-connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAc1D,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,mCAAmC,EACnC,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAQzD,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,MAAM,CAAC,CAAa;gBAEhB,OAAO,EAAE,sBAAsB;IAWrC,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM;IAgCnC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAcjC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAO9B,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD,YAAY,CAChB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,mCAAmC,CAAC;IAwDzC,OAAO,CACX,MAAM,EAAE,qBAAqB,GAAG,sBAAsB,GACrD,OAAO,CAAC,mBAAmB,CAAC;YAgCjB,WAAW;IAgEnB,mBAAmB;IAOzB,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAO7B,WAAW,CAAC,IAAI,EAAE,YAAY;IAU9B,WAAW;CAOlB"}
1
+ {"version":3,"file":"native-connector.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/in-app/native/native-connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAe1D,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,mCAAmC,EACnC,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAOzD,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,MAAM,CAAC,CAAa;gBAEhB,OAAO,EAAE,sBAAsB;IAWrC,gBAAgB,CACpB,UAAU,CAAC,EAAE,mCAAmC,EAChD,aAAa,CAAC,EAAE,MAAM;IAiElB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAcjC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAO9B,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD,YAAY,CAChB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,mCAAmC,CAAC;IAwDzC,OAAO,CACX,MAAM,EAAE,qBAAqB,GAAG,sBAAsB,GACrD,OAAO,CAAC,mBAAmB,CAAC;YA+BjB,WAAW;IAgEnB,mBAAmB;IAOzB,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAO7B,WAAW,CAAC,IAAI,EAAE,YAAY;IAU9B,WAAW;CAOlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"iframe-auth.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/web/lib/auth/iframe-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iframe-auth.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/web/lib/auth/iframe-auth.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export declare class InAppWebConnector implements InAppConnector {
11
11
  private client;
12
12
  private ecosystem?;
13
13
  private querier;
14
- private localStorage;
14
+ private storage;
15
15
  private wallet?;
16
16
  /**
17
17
  * Used to manage the Auth state of the user.
@@ -1 +1 @@
1
- {"version":3,"file":"web-connector.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/web/lib/web-connector.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAY7D,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,mCAAmC,EACnC,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAKzE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAyB,MAAM,uBAAuB,CAAC;AAKpE;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAkD;IACjE,OAAO,CAAC,YAAY,CAAsB;IAE1C,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,OAAO,CAAC,qBAAqB;IAO7B;;;;OAIG;gBACS,EACV,MAAM,EACN,aAAa,EACb,SAAS,EACT,aAAa,GACd,EAAE,0BAA0B;IA4FvB,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM;IAwCzC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAejC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAOxB,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrE,wBAAwB,CACtB,QAAQ,EAAE,gBAAgB,EAC1B,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,EACtC,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI;IAUD,kBAAkB,CAAC,UAAU,EAAE,mCAAmC;IAIxE;;OAEG;IACG,YAAY,CAChB,IAAI,EAAE,qBAAqB,GAAG,sBAAsB,GACnD,OAAO,CAAC,mCAAmC,CAAC;IAwE/C;;OAEG;IACG,OAAO,CACX,IAAI,EAAE,qBAAqB,GAAG,sBAAsB,GACnD,OAAO,CAAC,mBAAmB,CAAC;IAiDzB,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;YAI3B,WAAW;IAgCnB,WAAW,CAAC,IAAI,EAAE,YAAY;IAU9B,WAAW;CAOlB"}
1
+ {"version":3,"file":"web-connector.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/web/lib/web-connector.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAa7D,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,mCAAmC,EACnC,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIzE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAyB,MAAM,uBAAuB,CAAC;AAKpE;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAkD;IACjE,OAAO,CAAC,OAAO,CAAsB;IAErC,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,OAAO,CAAC,qBAAqB;IAO7B;;;;OAIG;gBACS,EACV,MAAM,EACN,aAAa,EACb,SAAS,EACT,aAAa,GACd,EAAE,0BAA0B;IA4FvB,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM;IAwCzC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAejC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAOxB,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrE,wBAAwB,CACtB,QAAQ,EAAE,gBAAgB,EAC1B,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,EACtC,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI;IAUD,kBAAkB,CAAC,UAAU,EAAE,mCAAmC;IAIxE;;OAEG;IACG,YAAY,CAChB,IAAI,EAAE,qBAAqB,GAAG,sBAAsB,GACnD,OAAO,CAAC,mCAAmC,CAAC;IAwE/C;;OAEG;IACG,OAAO,CACX,IAAI,EAAE,qBAAqB,GAAG,sBAAsB,GACnD,OAAO,CAAC,mBAAmB,CAAC;IAiDzB,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;YAI3B,WAAW;IAgCnB,WAAW,CAAC,IAAI,EAAE,YAAY;IAU9B,WAAW;CAOlB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thirdweb",
3
- "version": "5.61.7-nightly-da9f1964e4ae74ed5d33666788e2d16e4d56614d-20241015000333",
3
+ "version": "5.62.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/thirdweb-dev/js.git#main"
@@ -270,6 +270,9 @@
270
270
  "@aws-sdk/client-lambda": {
271
271
  "optional": true
272
272
  },
273
+ "@aws-sdk/client-kms": {
274
+ "optional": true
275
+ },
273
276
  "@aws-sdk/credential-providers": {
274
277
  "optional": true
275
278
  },
@@ -287,6 +290,7 @@
287
290
  "node": ">=18"
288
291
  },
289
292
  "devDependencies": {
293
+ "@aws-sdk/client-kms": "3.670.0",
290
294
  "@aws-sdk/client-lambda": "3.670.0",
291
295
  "@aws-sdk/credential-providers": "3.670.0",
292
296
  "@biomejs/biome": "1.9.3",
@@ -198,3 +198,8 @@ export {
198
198
 
199
199
  // Zora 1155 contract
200
200
  export { nextTokenId } from "../../extensions/erc1155/__generated__/Zora1155/read/nextTokenId.js";
201
+
202
+ export {
203
+ mintToBatch,
204
+ type MintToBatchParams,
205
+ } from "../../extensions/erc1155/write/mintToBatch.js";
@@ -0,0 +1,74 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { ANVIL_CHAIN } from "~test/chains.js";
3
+ import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
4
+ import { TEST_CLIENT } from "~test/test-clients.js";
5
+ import { TEST_ACCOUNT_C } from "~test/test-wallets.js";
6
+ import { getContract } from "../../../contract/contract.js";
7
+ import { deployERC1155Contract } from "../../../extensions/prebuilts/deploy-erc1155.js";
8
+ import { sendAndConfirmTransaction } from "../../../transaction/actions/send-and-confirm-transaction.js";
9
+ import { getNFTs } from "../read/getNFTs.js";
10
+ import { mintToBatch } from "./mintToBatch.js";
11
+
12
+ const chain = ANVIL_CHAIN;
13
+ const client = TEST_CLIENT;
14
+ const account = TEST_ACCOUNT_C;
15
+
16
+ describe("ERC1155 Edition: mintToBatch", () => {
17
+ it("should mint multiple tokens in one tx", async () => {
18
+ const contract = getContract({
19
+ chain,
20
+ client,
21
+ address: await deployERC1155Contract({
22
+ chain,
23
+ client,
24
+ account,
25
+ type: "TokenERC1155",
26
+ params: {
27
+ name: "edition",
28
+ contractURI: TEST_CONTRACT_URI,
29
+ },
30
+ }),
31
+ });
32
+
33
+ await sendAndConfirmTransaction({
34
+ account,
35
+ transaction: mintToBatch({
36
+ contract,
37
+ to: account.address,
38
+ nfts: [
39
+ { metadata: { name: "token 0" }, supply: 1n },
40
+ { metadata: { name: "token 1" }, supply: 2n },
41
+ { metadata: { name: "token 2" }, supply: 3n },
42
+ ],
43
+ }),
44
+ });
45
+
46
+ const nfts = await getNFTs({ contract });
47
+ expect(nfts).toStrictEqual([
48
+ {
49
+ metadata: { name: "token 0" },
50
+ owner: null,
51
+ id: 0n,
52
+ tokenURI: "ipfs://QmPZ6LpGqMuFbHKTXrNW1NRNLHf1nrxS4dtoFqdZZTKvPX/0",
53
+ type: "ERC1155",
54
+ supply: 1n,
55
+ },
56
+ {
57
+ metadata: { name: "token 1" },
58
+ owner: null,
59
+ id: 1n,
60
+ tokenURI: "ipfs://QmRFPyc3yEYxR4pQxwyTQWTine51TxWCoD6nzJWR3eX45b/0",
61
+ type: "ERC1155",
62
+ supply: 2n,
63
+ },
64
+ {
65
+ metadata: { name: "token 2" },
66
+ owner: null,
67
+ id: 2n,
68
+ tokenURI: "ipfs://QmesQiRLHCgqWZM2GFCs7Nb7rr2S72hU1BVQc7xiTyKZtT/0",
69
+ type: "ERC1155",
70
+ supply: 3n,
71
+ },
72
+ ]);
73
+ });
74
+ });
@@ -0,0 +1,117 @@
1
+ import { maxUint256 } from "viem";
2
+ import { multicall } from "../../../extensions/common/__generated__/IMulticall/write/multicall.js";
3
+ import { upload } from "../../../storage/upload.js";
4
+ import type {
5
+ BaseTransactionOptions,
6
+ WithOverrides,
7
+ } from "../../../transaction/types.js";
8
+ import type { NFTInput } from "../../../utils/nft/parseNft.js";
9
+ import { encodeMintTo } from "../__generated__/IMintableERC1155/write/mintTo.js";
10
+
11
+ /**
12
+ * @extension ERC1155
13
+ */
14
+ export type MintToBatchParams = WithOverrides<{
15
+ /**
16
+ * The wallet that the NFTs will be minted to
17
+ */
18
+ to: string;
19
+ /**
20
+ * An array of NFT metadata & supply to mint
21
+ * @example
22
+ * ```ts
23
+ * const nfts = [
24
+ * {
25
+ * metadata: { name: "token 0" },
26
+ * supply: 1n,
27
+ * },
28
+ * {
29
+ * metadata: { name: "token 1" },
30
+ * supply: 10n,
31
+ * },
32
+ * ]
33
+ * ```
34
+ */
35
+ nfts: Array<{
36
+ supply: bigint;
37
+ metadata: NFTInput | string;
38
+ }>;
39
+ }>;
40
+
41
+ /**
42
+ * This extension batches multiple `mintTo` extensions into one single multicall.
43
+ * Keep in mind that there is a limit of how many NFTs you can mint per transaction.
44
+ * This limit varies depends on the network that you are transacting on.
45
+ *
46
+ * You are recommended to experiment with the number to figure out the best number for your chain of choice.
47
+ * @param options - the transaction options
48
+ * @returns A promise that resolves to the transaction result.
49
+ * @extension ERC1155
50
+ * @example
51
+ * ```ts
52
+ * import { mintBatchTo } from "thirdweb/extension/erc1155";
53
+ *
54
+ * const transaction = mintToBatch({
55
+ * contract: editionContract,
56
+ * to: "0x...",
57
+ * nfts: [
58
+ * {
59
+ * metadata: {
60
+ * name: "Token #0",
61
+ * image: "...",
62
+ * attributes: [],
63
+ * },
64
+ * supply: 100n,
65
+ * },
66
+ * {
67
+ * metadata: {
68
+ * name: "Token #1",
69
+ * image: "...",
70
+ * attributes: [],
71
+ * },
72
+ * supply: 111n,
73
+ * },
74
+ * ],
75
+ * });
76
+ *
77
+ * await sendTransaction({ transaction, account });
78
+ * ```
79
+ */
80
+ export function mintToBatch(
81
+ options: BaseTransactionOptions<MintToBatchParams>,
82
+ ) {
83
+ return multicall({
84
+ contract: options.contract,
85
+ asyncParams: async () => {
86
+ const uris = await Promise.all(
87
+ options.nfts.map((item) => {
88
+ if (typeof item.metadata === "string") {
89
+ return item.metadata;
90
+ }
91
+ return upload({
92
+ client: options.contract.client,
93
+ files: [item.metadata],
94
+ });
95
+ }),
96
+ );
97
+
98
+ const data = uris.map((uri, index) => {
99
+ const item = options.nfts[index];
100
+ if (!item) {
101
+ // Should not happen
102
+ throw new Error("Index mismatch");
103
+ }
104
+ return encodeMintTo({
105
+ to: options.to,
106
+ // maxUint256 is used to indicate that this is a NEW token!
107
+ tokenId: maxUint256,
108
+ uri,
109
+ amount: item.supply,
110
+ });
111
+ });
112
+
113
+ return { data };
114
+ },
115
+ overrides: options.overrides,
116
+ });
117
+ }
@@ -1,97 +1,92 @@
1
- import { beforeAll, describe, expect, it, vi } from "vitest";
1
+ import { describe, expect, it } from "vitest";
2
+ import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
3
+ import { TEST_ACCOUNT_D } from "~test/test-wallets.js";
2
4
  import { ANVIL_CHAIN } from "../../../../../test/src/chains.js";
3
5
  import { TEST_CLIENT } from "../../../../../test/src/test-clients.js";
4
- import {
5
- type ThirdwebContract,
6
- getContract,
7
- } from "../../../../contract/contract.js";
8
- import type { Hex } from "../../../../utils/encoding/hex.js";
6
+ import { getContract } from "../../../../contract/contract.js";
7
+ import { deployERC721Contract } from "../../../../extensions/prebuilts/deploy-erc721.js";
8
+ import { sendAndConfirmTransaction } from "../../../../transaction/actions/send-and-confirm-transaction.js";
9
+ import { getNFT } from "../../read/getNFT.js";
9
10
  import { createDelayedRevealBatch } from "./createDelayedRevealBatch.js";
11
+ import { reveal } from "./reveal.js";
10
12
 
11
- const mocks = vi.hoisted(() => ({
12
- getBaseUriFromBatch: vi.fn(),
13
- getBaseURICount: vi.fn(),
14
- encryptDecrypt: vi.fn(),
15
- lazyMint: vi.fn(),
16
- upload: vi.fn(),
17
- }));
18
-
19
- vi.mock("../../../../utils/ipfs.js", () => ({
20
- getBaseUriFromBatch: mocks.getBaseUriFromBatch,
21
- }));
22
-
23
- vi.mock(
24
- "../../__generated__/IBatchMintMetadata/read/getBaseURICount.js",
25
- () => ({
26
- getBaseURICount: mocks.getBaseURICount,
27
- }),
28
- );
29
-
30
- vi.mock("../../__generated__/IDelayedReveal/read/encryptDecrypt.js", () => ({
31
- encryptDecrypt: mocks.encryptDecrypt,
32
- }));
33
-
34
- vi.mock("../../../../storage/upload.js", () => ({
35
- upload: mocks.upload,
36
- }));
37
-
38
- const placeholderNFT = {
13
+ const placeholderMetadata = {
39
14
  name: "Hidden NFT",
40
15
  description: "Will be revealed next week!",
41
16
  };
17
+ const account = TEST_ACCOUNT_D;
18
+ const chain = ANVIL_CHAIN;
19
+ const client = TEST_CLIENT;
20
+ const password = "1234";
42
21
 
43
- const realNFTs = [
44
- {
45
- name: "Common NFT #1",
46
- description: "Common NFT, one of many.",
47
- },
48
- {
49
- name: "Super Rare NFT #2",
50
- description: "You got a Super Rare NFT!",
51
- },
52
- ];
22
+ describe.runIf(process.env.TW_SECRET_KEY)("createDelayedRevealedBatch", () => {
23
+ it("should create delayed-reveal batches properly", async () => {
24
+ const contract = getContract({
25
+ address: await deployERC721Contract({
26
+ account,
27
+ chain,
28
+ client,
29
+ type: "DropERC721",
30
+ params: {
31
+ name: "nftdrop",
32
+ contractURI: TEST_CONTRACT_URI,
33
+ },
34
+ }),
35
+ chain,
36
+ client,
37
+ });
53
38
 
54
- describe("createDelayedRevealedBatch", () => {
55
- let contract: ThirdwebContract;
56
- beforeAll(() => {
57
- vi.clearAllMocks();
58
- contract = getContract({
59
- chain: ANVIL_CHAIN,
60
- address: "0x708781BAE850faA490cB5b5b16b4687Ec0A8D65D",
61
- client: TEST_CLIENT,
39
+ // Create batch #0
40
+ await sendAndConfirmTransaction({
41
+ account,
42
+ transaction: createDelayedRevealBatch({
43
+ contract,
44
+ placeholderMetadata,
45
+ password: "1234",
46
+ metadata: [{ name: "token 0" }, { name: "token 1" }],
47
+ }),
62
48
  });
63
- });
64
49
 
65
- it("should generate the proper calldata", async () => {
66
- mocks.getBaseUriFromBatch
67
- .mockReturnValueOnce(
68
- "ipfs://QmQbqDu4aT7sMJHNUk76s4F6DgGk2hVYXYSqpsTRoRM5G8/",
69
- )
70
- .mockReturnValueOnce(
71
- "ipfs://QmRhASFGXNRE3NXNTfakz82j4Tmv5A9rBezTKGZ5DL6uip/",
72
- );
73
- mocks.getBaseURICount.mockResolvedValue(0n);
74
- mocks.encryptDecrypt.mockResolvedValue(
75
- "0x8967ae24bd1c6439791bc1c8ca3b3499537283b71af366693792a707eb99e80bc0058c90c1f92f18ec716e4760fdf9279241d442b5b5",
76
- );
50
+ // Create batch #1
51
+ await sendAndConfirmTransaction({
52
+ account,
53
+ transaction: createDelayedRevealBatch({
54
+ contract,
55
+ placeholderMetadata,
56
+ password,
57
+ metadata: [{ name: "token 2" }, { name: "token 3" }],
58
+ }),
59
+ });
77
60
 
78
- const tx = createDelayedRevealBatch({
79
- contract,
80
- placeholderMetadata: placeholderNFT,
81
- metadata: realNFTs,
82
- password: "password123",
61
+ // Reveal batch #0
62
+ await sendAndConfirmTransaction({
63
+ account,
64
+ transaction: reveal({ contract, batchId: 0n, password }),
65
+ });
66
+ // Reveal batch #1
67
+ await sendAndConfirmTransaction({
68
+ account,
69
+ transaction: reveal({ contract, batchId: 1n, password }),
83
70
  });
84
71
 
85
- let data: Hex;
86
- if (typeof tx.data === "string") {
87
- data = tx.data;
88
- } else {
89
- data = (await tx.data?.()) || "0x";
90
- }
72
+ /**
73
+ * The token URIs of batch 0 should end with "/0" and "/1"
74
+ * while the token URIs of batch 1 should end with "/2" and "/3"
75
+ */
76
+ const [token0, token1, token2, token3] = await Promise.all([
77
+ getNFT({ contract, tokenId: 0n }),
78
+ getNFT({ contract, tokenId: 1n }),
79
+ getNFT({ contract, tokenId: 2n }),
80
+ getNFT({ contract, tokenId: 3n }),
81
+ ]);
91
82
 
92
- expect(data).toEqual(
93
- "0xd37c353b0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d516271447534615437734d4a484e556b3736733446364467476b3268565958595371707354526f524d3547382f0000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000040963325533d81f66ae93aff4f562735814e51020ea8bf2bd48eb983ae88cbc40b00000000000000000000000000000000000000000000000000000000000000368967ae24bd1c6439791bc1c8ca3b3499537283b71af366693792a707eb99e80bc0058c90c1f92f18ec716e4760fdf9279241d442b5b500000000000000000000",
94
- );
95
- expect(mocks.upload).toHaveBeenCalledTimes(2);
83
+ expect(token0.tokenURI.endsWith("/0")).toBe(true);
84
+ expect(token0.metadata.name).toBe("token 0");
85
+ expect(token1.tokenURI.endsWith("/1")).toBe(true);
86
+ expect(token1.metadata.name).toBe("token 1");
87
+ expect(token2.tokenURI.endsWith("/2")).toBe(true);
88
+ expect(token2.metadata.name).toBe("token 2");
89
+ expect(token3.tokenURI.endsWith("/3")).toBe(true);
90
+ expect(token3.metadata.name).toBe("token 3");
96
91
  });
97
92
  });