thirdweb 5.41.0 → 5.42.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 (180) hide show
  1. package/dist/cjs/adapters/wallet-adapter.js +12 -1
  2. package/dist/cjs/adapters/wallet-adapter.js.map +1 -1
  3. package/dist/cjs/client/client.js +19 -1
  4. package/dist/cjs/client/client.js.map +1 -1
  5. package/dist/cjs/exports/extensions/common.js +3 -1
  6. package/dist/cjs/exports/extensions/common.js.map +1 -1
  7. package/dist/cjs/exports/extensions/erc1155.js +2 -1
  8. package/dist/cjs/exports/extensions/erc1155.js.map +1 -1
  9. package/dist/cjs/exports/react.js +7 -2
  10. package/dist/cjs/exports/react.js.map +1 -1
  11. package/dist/cjs/exports/utils.js +3 -1
  12. package/dist/cjs/exports/utils.js.map +1 -1
  13. package/dist/cjs/exports/wallets/in-app.js.map +1 -1
  14. package/dist/cjs/exports/wallets.js.map +1 -1
  15. package/dist/cjs/exports/wallets.native.js.map +1 -1
  16. package/dist/cjs/react/core/hooks/others/useChainQuery.js +19 -3
  17. package/dist/cjs/react/core/hooks/others/useChainQuery.js.map +1 -1
  18. package/dist/cjs/react/core/hooks/transaction/transaction-button-utils.js.map +1 -1
  19. package/dist/cjs/react/web/ui/AutoConnect/AutoConnect.js +5 -0
  20. package/dist/cjs/react/web/ui/AutoConnect/AutoConnect.js.map +1 -1
  21. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +196 -2
  22. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  23. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +109 -3
  24. package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  25. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js +1 -1
  26. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js.map +1 -1
  27. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +1 -1
  28. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
  29. package/dist/cjs/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.js +127 -0
  30. package/dist/cjs/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.js.map +1 -0
  31. package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +70 -3
  32. package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
  33. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +19 -7
  34. package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  35. package/dist/cjs/storage/download.js +44 -4
  36. package/dist/cjs/storage/download.js.map +1 -1
  37. package/dist/cjs/utils/contract/parse-abi-params.js +87 -0
  38. package/dist/cjs/utils/contract/parse-abi-params.js.map +1 -0
  39. package/dist/cjs/version.js +1 -1
  40. package/dist/cjs/wallets/create-wallet.js +73 -0
  41. package/dist/cjs/wallets/create-wallet.js.map +1 -1
  42. package/dist/cjs/wallets/in-app/core/wallet/index.js +2 -3
  43. package/dist/cjs/wallets/in-app/core/wallet/index.js.map +1 -1
  44. package/dist/cjs/wallets/in-app/web/ecosystem.js +29 -3
  45. package/dist/cjs/wallets/in-app/web/ecosystem.js.map +1 -1
  46. package/dist/cjs/wallets/in-app/web/in-app.js +100 -5
  47. package/dist/cjs/wallets/in-app/web/in-app.js.map +1 -1
  48. package/dist/cjs/wallets/smart/smart-wallet.js +71 -5
  49. package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
  50. package/dist/esm/adapters/wallet-adapter.js +12 -1
  51. package/dist/esm/adapters/wallet-adapter.js.map +1 -1
  52. package/dist/esm/client/client.js +19 -1
  53. package/dist/esm/client/client.js.map +1 -1
  54. package/dist/esm/exports/extensions/common.js +1 -0
  55. package/dist/esm/exports/extensions/common.js.map +1 -1
  56. package/dist/esm/exports/extensions/erc1155.js +1 -1
  57. package/dist/esm/exports/extensions/erc1155.js.map +1 -1
  58. package/dist/esm/exports/react.js +3 -0
  59. package/dist/esm/exports/react.js.map +1 -1
  60. package/dist/esm/exports/utils.js +1 -0
  61. package/dist/esm/exports/utils.js.map +1 -1
  62. package/dist/esm/exports/wallets/in-app.js.map +1 -1
  63. package/dist/esm/exports/wallets.js.map +1 -1
  64. package/dist/esm/exports/wallets.native.js.map +1 -1
  65. package/dist/esm/react/core/hooks/others/useChainQuery.js +19 -3
  66. package/dist/esm/react/core/hooks/others/useChainQuery.js.map +1 -1
  67. package/dist/esm/react/core/hooks/transaction/transaction-button-utils.js.map +1 -1
  68. package/dist/esm/react/web/ui/AutoConnect/AutoConnect.js +5 -0
  69. package/dist/esm/react/web/ui/AutoConnect/AutoConnect.js.map +1 -1
  70. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +196 -2
  71. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  72. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +109 -3
  73. package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
  74. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js +2 -2
  75. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js.map +1 -1
  76. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +2 -2
  77. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
  78. package/dist/esm/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.js +124 -0
  79. package/dist/esm/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.js.map +1 -0
  80. package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +69 -3
  81. package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
  82. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +19 -7
  83. package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
  84. package/dist/esm/storage/download.js +44 -4
  85. package/dist/esm/storage/download.js.map +1 -1
  86. package/dist/esm/utils/contract/parse-abi-params.js +84 -0
  87. package/dist/esm/utils/contract/parse-abi-params.js.map +1 -0
  88. package/dist/esm/version.js +1 -1
  89. package/dist/esm/wallets/create-wallet.js +73 -0
  90. package/dist/esm/wallets/create-wallet.js.map +1 -1
  91. package/dist/esm/wallets/in-app/core/wallet/index.js +2 -3
  92. package/dist/esm/wallets/in-app/core/wallet/index.js.map +1 -1
  93. package/dist/esm/wallets/in-app/web/ecosystem.js +29 -3
  94. package/dist/esm/wallets/in-app/web/ecosystem.js.map +1 -1
  95. package/dist/esm/wallets/in-app/web/in-app.js +100 -5
  96. package/dist/esm/wallets/in-app/web/in-app.js.map +1 -1
  97. package/dist/esm/wallets/smart/smart-wallet.js +71 -5
  98. package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
  99. package/dist/types/adapters/wallet-adapter.d.ts +12 -1
  100. package/dist/types/adapters/wallet-adapter.d.ts.map +1 -1
  101. package/dist/types/client/client.d.ts +19 -1
  102. package/dist/types/client/client.d.ts.map +1 -1
  103. package/dist/types/exports/extensions/common.d.ts +1 -0
  104. package/dist/types/exports/extensions/common.d.ts.map +1 -1
  105. package/dist/types/exports/extensions/erc1155.d.ts +1 -1
  106. package/dist/types/exports/extensions/erc1155.d.ts.map +1 -1
  107. package/dist/types/exports/react.d.ts +2 -0
  108. package/dist/types/exports/react.d.ts.map +1 -1
  109. package/dist/types/exports/utils.d.ts +2 -0
  110. package/dist/types/exports/utils.d.ts.map +1 -1
  111. package/dist/types/exports/wallets/in-app.d.ts +1 -0
  112. package/dist/types/exports/wallets/in-app.d.ts.map +1 -1
  113. package/dist/types/exports/wallets.d.ts +4 -2
  114. package/dist/types/exports/wallets.d.ts.map +1 -1
  115. package/dist/types/exports/wallets.native.d.ts +3 -2
  116. package/dist/types/exports/wallets.native.d.ts.map +1 -1
  117. package/dist/types/react/core/hooks/others/useChainQuery.d.ts +21 -4
  118. package/dist/types/react/core/hooks/others/useChainQuery.d.ts.map +1 -1
  119. package/dist/types/react/core/hooks/transaction/transaction-button-utils.d.ts +1 -0
  120. package/dist/types/react/core/hooks/transaction/transaction-button-utils.d.ts.map +1 -1
  121. package/dist/types/react/web/ui/AutoConnect/AutoConnect.d.ts +5 -0
  122. package/dist/types/react/web/ui/AutoConnect/AutoConnect.d.ts.map +1 -1
  123. package/dist/types/react/web/ui/ConnectWallet/ConnectButton.d.ts +196 -2
  124. package/dist/types/react/web/ui/ConnectWallet/ConnectButton.d.ts.map +1 -1
  125. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts +109 -3
  126. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts.map +1 -1
  127. package/dist/types/react/web/ui/PayEmbed.d.ts +1 -1
  128. package/dist/types/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.d.ts +63 -0
  129. package/dist/types/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.d.ts.map +1 -0
  130. package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/index.d.ts +21 -0
  131. package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/index.d.ts.map +1 -1
  132. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
  133. package/dist/types/storage/download.d.ts +43 -3
  134. package/dist/types/storage/download.d.ts.map +1 -1
  135. package/dist/types/utils/contract/parse-abi-params.d.ts +29 -0
  136. package/dist/types/utils/contract/parse-abi-params.d.ts.map +1 -0
  137. package/dist/types/version.d.ts +1 -1
  138. package/dist/types/wallets/create-wallet.d.ts +73 -0
  139. package/dist/types/wallets/create-wallet.d.ts.map +1 -1
  140. package/dist/types/wallets/ecosystem/types.d.ts +5 -4
  141. package/dist/types/wallets/ecosystem/types.d.ts.map +1 -1
  142. package/dist/types/wallets/in-app/core/wallet/index.d.ts.map +1 -1
  143. package/dist/types/wallets/in-app/web/ecosystem.d.ts +29 -3
  144. package/dist/types/wallets/in-app/web/ecosystem.d.ts.map +1 -1
  145. package/dist/types/wallets/in-app/web/in-app.d.ts +100 -5
  146. package/dist/types/wallets/in-app/web/in-app.d.ts.map +1 -1
  147. package/dist/types/wallets/smart/smart-wallet.d.ts +71 -5
  148. package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
  149. package/package.json +1 -1
  150. package/src/adapters/wallet-adapter.ts +12 -1
  151. package/src/client/client.ts +19 -1
  152. package/src/exports/extensions/common.ts +5 -0
  153. package/src/exports/extensions/erc1155.ts +1 -0
  154. package/src/exports/react.ts +7 -0
  155. package/src/exports/utils.ts +3 -0
  156. package/src/exports/wallets/in-app.ts +6 -0
  157. package/src/exports/wallets.native.ts +8 -1
  158. package/src/exports/wallets.ts +13 -1
  159. package/src/react/core/hooks/others/useChainQuery.ts +24 -4
  160. package/src/react/core/hooks/transaction/transaction-button-utils.ts +1 -0
  161. package/src/react/web/ui/AutoConnect/AutoConnect.tsx +5 -0
  162. package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +196 -2
  163. package/src/react/web/ui/ConnectWallet/Modal/ConnectEmbed.tsx +109 -3
  164. package/src/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.tsx +2 -2
  165. package/src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx +2 -2
  166. package/src/react/web/ui/PayEmbed.tsx +1 -1
  167. package/src/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/BuyDirectListingButton.test.tsx +27 -0
  168. package/src/react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.tsx +200 -0
  169. package/src/react/web/ui/prebuilt/thirdweb/ClaimButton/index.tsx +78 -5
  170. package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +19 -8
  171. package/src/storage/download.ts +47 -4
  172. package/src/utils/contract/parse-abi-params.test.ts +160 -0
  173. package/src/utils/contract/parse-abi-params.ts +90 -0
  174. package/src/version.ts +1 -1
  175. package/src/wallets/create-wallet.ts +73 -0
  176. package/src/wallets/ecosystem/types.ts +9 -5
  177. package/src/wallets/in-app/core/wallet/index.ts +2 -3
  178. package/src/wallets/in-app/web/ecosystem.ts +29 -3
  179. package/src/wallets/in-app/web/in-app.ts +100 -5
  180. package/src/wallets/smart/smart-wallet.ts +71 -5
@@ -1,18 +1,58 @@
1
1
  import { getClientFetch } from "../utils/fetch.js";
2
2
  import { resolveScheme } from "../utils/ipfs.js";
3
3
  /**
4
- * Downloads a file from the specified URI.
4
+ * @description Downloads a file from the specified IPFS, Arweave, or HTTP URI.
5
+ *
6
+ * `download` will parse the provided URI based on its scheme (ipfs://, ar://, https://) and convert it to a URL to fetch the file from thirdweb's storage service.
7
+ *
5
8
  * @param options - The download options.
6
- * @returns A Promise that resolves to the downloaded file.
7
- * @throws An error if the URI scheme is invalid.
9
+ * @param options.client - The Thirdweb client. See [createThirdwebClient](https://portal.thirdweb.com/references/typescript/v5/createThirdwebClient).
10
+ * @param options.uri - The URI of the file to download. Can be IPFS, Arweave, or HTTP.
11
+ * @param [options.requestTimeoutMs] - The maximum time in milliseconds to wait for the request to complete. Defaults to 60 seconds (60,000 milliseconds).
12
+ *
13
+ * @returns Asynchronously returns the network response from fetching the file.
14
+ * @throws An error if the URI scheme is invalid or if the request fails.
15
+ *
8
16
  * @example
17
+ * Download a file from IPFS:
9
18
  * ```ts
10
19
  * import { download } from "thirdweb/storage";
20
+ * import { createThirdwebClient } from "@thirdweb-dev/sdk";
21
+ *
22
+ * const client = createThirdwebClient({ clientId: "YOUR_CLIENT_ID" });
23
+ *
11
24
  * const file = await download({
12
25
  * client,
13
26
  * uri: "ipfs://Qm...",
14
27
  * });
15
28
  * ```
29
+ *
30
+ * Download a file from Arweave:
31
+ * ```ts
32
+ * import { download } from "thirdweb/storage";
33
+ * import { createThirdwebClient } from "@thirdweb-dev/sdk";
34
+ *
35
+ * const client = createThirdwebClient({ clientId: "YOUR_CLIENT_ID" });
36
+ *
37
+ * const file = await download({
38
+ * client,
39
+ * uri: "ar://{arweave-transaction-id}",
40
+ * });
41
+ * ```
42
+ *
43
+ * Download a file from HTTP:
44
+ * ```ts
45
+ * import { download } from "thirdweb/storage";
46
+ * import { createThirdwebClient } from "@thirdweb-dev/sdk";
47
+ *
48
+ * const client = createThirdwebClient({ clientId: "YOUR_CLIENT_ID" });
49
+ *
50
+ * const file = await download({
51
+ * client,
52
+ * uri: "https://example.com/file.txt",
53
+ * });
54
+ * ```
55
+ *
16
56
  * @storage
17
57
  */
18
58
  export async function download(options) {
@@ -27,7 +67,7 @@ export async function download(options) {
27
67
  const res = await getClientFetch(options.client)(url, {
28
68
  keepalive: options.client.config?.storage?.fetch?.keepalive,
29
69
  headers: options.client.config?.storage?.fetch?.headers,
30
- requestTimeoutMs: options.client.config?.storage?.fetch?.requestTimeoutMs,
70
+ requestTimeoutMs: options.client.config?.storage?.fetch?.requestTimeoutMs ?? 60000,
31
71
  });
32
72
  if (!res.ok) {
33
73
  res.body?.cancel();
@@ -1 +1 @@
1
- {"version":3,"file":"download.js","sourceRoot":"","sources":["../../../src/storage/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAA6B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAS5E;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IACrD,IAAI,GAAW,CAAC;IAChB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACrE,GAAG,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE;QACpD,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;QAC3D,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;QACvD,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB;KAC1E,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"download.js","sourceRoot":"","sources":["../../../src/storage/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAA6B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAS5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IACrD,IAAI,GAAW,CAAC;IAChB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACrE,GAAG,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE;QACpD,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;QAC3D,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;QACvD,gBAAgB,EACd,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,IAAI,KAAK;KACnE,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,84 @@
1
+ import { isAddress } from "../address.js";
2
+ import { isHex, padHex } from "../encoding/hex.js";
3
+ /**
4
+ * Converts an array of parameter values to their respective types based on the provided type array.
5
+ *
6
+ * This utility function is particularly useful for ensuring that parameter values are correctly formatted
7
+ * according to the expected types before they are used in further processing or passed to a Solidity smart contract.
8
+ *
9
+ * @param {string[]} constructorParamTypes - An array of type strings indicating the expected types of the values,
10
+ * following Solidity type conventions (e.g., "address", "uint256", "bool").
11
+ * @param {unknown[]} constructorParamValues - An array of values to be converted according to the types.
12
+ * @returns - An array of values converted to their respective types.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * import { parseAbiParams } from "thirdweb/utils";
17
+ *
18
+ * const example1 = parseAbiParams(
19
+ * ["address", "uint256"],
20
+ * ["0x.....", "1200000"]
21
+ * ); // result: ["0x......", 1200000n]
22
+ *
23
+ * const example2 = parseAbiParams(
24
+ * ["address", "bool"],
25
+ * ["0x.....", "true"]
26
+ * ); // result: ["0x......", true]
27
+ * ```
28
+ * @utils
29
+ */
30
+ export function parseAbiParams(constructorParamTypes, constructorParamValues) {
31
+ // Make sure they have the same length
32
+ if (constructorParamTypes.length !== constructorParamValues.length) {
33
+ throw new Error(`Passed the wrong number of constructor arguments: ${constructorParamValues.length}, expected ${constructorParamTypes.length}`);
34
+ }
35
+ return constructorParamTypes.map((type, index) => {
36
+ const value = constructorParamValues[index];
37
+ if (type === "tuple" || type.endsWith("[]")) {
38
+ if (typeof value === "string") {
39
+ return JSON.parse(value);
40
+ }
41
+ return value;
42
+ }
43
+ if (type === "bytes32") {
44
+ if (!isHex(value)) {
45
+ throw new Error(`${value} is not a valid hex string`);
46
+ }
47
+ return padHex(value);
48
+ }
49
+ if (type.startsWith("bytes")) {
50
+ if (!isHex(value)) {
51
+ throw new Error(`${value} is not a valid hex string`);
52
+ }
53
+ return value;
54
+ }
55
+ if (type === "address") {
56
+ if (typeof value !== "string" || !isAddress(value)) {
57
+ throw new Error(`${value} is not a valid address`);
58
+ }
59
+ return value;
60
+ }
61
+ if (type.startsWith("uint") || type.startsWith("int")) {
62
+ if (typeof value !== "string" && typeof value !== "number") {
63
+ throw new Error(`Cannot convert type ${typeof value} to BigInt`);
64
+ }
65
+ try {
66
+ const val = BigInt(value);
67
+ return val;
68
+ }
69
+ catch (err) {
70
+ throw new Error(err.message);
71
+ }
72
+ }
73
+ if (type.startsWith("bool")) {
74
+ if (value === "false" || value === false) {
75
+ return false;
76
+ }
77
+ if (value === "true" || value === true) {
78
+ return true;
79
+ }
80
+ throw new Error("Invalid boolean value. Expecting either 'true' or 'false'");
81
+ }
82
+ });
83
+ }
84
+ //# sourceMappingURL=parse-abi-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-abi-params.js","sourceRoot":"","sources":["../../../../src/utils/contract/parse-abi-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,cAAc,CAC5B,qBAA+B,EAC/B,sBAAiC;IAEjC,sCAAsC;IACtC,IAAI,qBAAqB,CAAC,MAAM,KAAK,sBAAsB,CAAC,MAAM,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CACb,qDAAqD,sBAAsB,CAAC,MAAM,cAAc,qBAAqB,CAAC,MAAM,EAAE,CAC/H,CAAC;IACJ,CAAC;IACD,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC/C,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,yBAAyB,CAAC,CAAC;YACrD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC3D,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,KAAK,YAAY,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC1B,OAAO,GAAG,CAAC;YACb,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACzC,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACvC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,2 +1,2 @@
1
- export const version = "5.41.0";
1
+ export const version = "5.42.0";
2
2
  //# sourceMappingURL=version.js.map
@@ -13,9 +13,31 @@ import { createWalletEmitter } from "./wallet-emitter.js";
13
13
  // TODO: figure out how to define the type without tuple args type and using function overloads
14
14
  /**
15
15
  * Creates a wallet based on the provided ID and arguments.
16
+ *
17
+ * - Supports 350+ wallets
18
+ * - Handles both injected browser wallets and WalletConnect sessions
19
+ *
20
+ * [View all available wallets](https://portal.thirdweb.com/typescript/v5/supported-wallets)
21
+ *
16
22
  * @param args - The arguments for creating the wallet.
23
+ * @param args.id - The ID of the wallet to create, this will be autocompleted by your IDE.
24
+ * [View all available wallets](https://portal.thirdweb.com/typescript/v5/supported-wallets)
25
+ * @param args.createOptions - The options for creating the wallet.
26
+ * The arguments are different for each wallet type.
27
+ * Refer to the [WalletCreationOptions](https://portal.thirdweb.com/references/typescript/v5/WalletCreationOptions) type for more details.
17
28
  * @returns - The created wallet.
18
29
  * @example
30
+ *
31
+ * ## Connecting the wallet
32
+ *
33
+ * Once created, you can connect the wallet to your app by calling the `connect` method.
34
+ *
35
+ * The `connect` method returns a promise that resolves to the connected account.
36
+ *
37
+ * Each wallet type can have different connect options. [View the different connect options](https://portal.thirdweb.com/references/typescript/v5/WalletConnectionOption)
38
+ *
39
+ * ## Connecting to an injected wallet
40
+ *
19
41
  * ```ts
20
42
  * import { createWallet } from "thirdweb/wallets";
21
43
  *
@@ -25,6 +47,57 @@ import { createWalletEmitter } from "./wallet-emitter.js";
25
47
  * client,
26
48
  * });
27
49
  * ```
50
+ *
51
+ * You can check if a wallet is installed by calling the [injectedProvider](https://portal.thirdweb.com/references/typescript/v5/injectedProvider) method.
52
+ *
53
+ * ## Connecting via WalletConnect modal
54
+ *
55
+ * ```ts
56
+ * import { createWallet } from "thirdweb/wallets";
57
+ *
58
+ * const metamaskWallet = createWallet("io.metamask");
59
+ *
60
+ * await metamask.connect({
61
+ * client,
62
+ * walletConnect: {
63
+ * projectId: "YOUR_PROJECT_ID",
64
+ * showQrModal: true,
65
+ * appMetadata: {
66
+ * name: "My App",
67
+ * url: "https://my-app.com",
68
+ * description: "my app description",
69
+ * logoUrl: "https://path/to/my-app/logo.svg",
70
+ * },
71
+ * },
72
+ * });
73
+ * ```
74
+ * [View ConnectWallet connection options](https://portal.thirdweb.com/references/typescript/v5/WCConnectOptions)
75
+ *
76
+ * ## Connecting with coinbase wallet
77
+ *
78
+ * ```ts
79
+ * import { createWallet } from "thirdweb/wallets";
80
+ *
81
+ * const cbWallet = createWallet("com.coinbase.wallet", {
82
+ * appMetadata: {
83
+ * name: "My App",
84
+ * url: "https://my-app.com",
85
+ * description: "my app description",
86
+ * logoUrl: "https://path/to/my-app/logo.svg",
87
+ * },
88
+ * walletConfig: {
89
+ * // options: 'all' | 'smartWalletOnly' | 'eoaOnly'
90
+ * options: 'all',
91
+ * },
92
+ * });
93
+ *
94
+ * const account = await cbWallet.connect({
95
+ * client,
96
+ * });
97
+ * ```
98
+ *
99
+ * [View Coinbase wallet creation options](https://portal.thirdweb.com/references/typescript/v5/CoinbaseWalletCreationOptions)
100
+ *
28
101
  * @wallet
29
102
  */
30
103
  export function createWallet(...args) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-wallet.js","sourceRoot":"","sources":["../../../src/wallets/create-wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-wallet.js","sourceRoot":"","sources":["../../../src/wallets/create-wallet.ts"],"names":[],"mappings":"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"}
@@ -17,10 +17,9 @@ export async function connectInAppWallet(options, createOptions, connector) {
17
17
  if (createOptions?.auth?.mode === "redirect" &&
18
18
  connector.authenticateWithRedirect) {
19
19
  const strategy = options.strategy;
20
- if (!socialAuthOptions.includes(strategy)) {
21
- throw new Error("This authentication method does not support redirects");
20
+ if (socialAuthOptions.includes(strategy)) {
21
+ connector.authenticateWithRedirect(strategy);
22
22
  }
23
- connector.authenticateWithRedirect(strategy);
24
23
  }
25
24
  // If we don't have authenticateWithRedirect then it's likely react native, so the default is to redirect and we can carry on
26
25
  // IF WE EVER ADD MORE CONNECTOR TYPES, this could cause redirect to be ignored despite being specified
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/index.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,28 @@
1
1
  import { createEcosystemWallet } from "../core/wallet/ecosystem-core.js";
2
2
  /**
3
- * Creates an ecosystem wallet.
3
+ * Creates an [Ecosystem Wallet](https://portal.thirdweb.com/connect/ecosystems/overview) based on various authentication methods.
4
+ *
5
+ * Available authentication methods:
6
+ * - Email
7
+ * - Phone
8
+ * - Passkey
9
+ * - Google
10
+ * - Apple
11
+ * - Facebook
12
+ * - Discord
13
+ * - Farcaster
14
+ *
15
+ * Can also be configured to use Account Abstraction to directly connect to a ERC4337 smart account based on those authentication methods.
16
+ *
17
+ * Refer to [inAppWallet](https://portal.thirdweb.com/references/typescript/v5/inAppWallet) for detailed usage examples.
18
+ *
4
19
  * @param createOptions - configuration options
20
+ * Refer to [EcosystemWalletCreationOptions](https://portal.thirdweb.com/references/typescript/v5/EcosystemWalletCreationOptions) for more details.
5
21
  * @returns The created ecosystem wallet.
6
22
  * @example
23
+ *
24
+ * ### Connect to an ecosystem wallet
25
+ *
7
26
  * ```ts
8
27
  * import { ecosystemWallet } from "thirdweb/wallets";
9
28
  *
@@ -16,14 +35,21 @@ import { createEcosystemWallet } from "../core/wallet/ecosystem-core.js";
16
35
  * });
17
36
  * ```
18
37
  *
19
- * Connect to a restricted ecosystem wallet with your designated partner ID
20
- * @note The parnter ID will be provided to you by the ecosystem with which you're integrating.
38
+ * [View all connection options](https://portal.thirdweb.com/references/typescript/v5/EcosystemWalletConnectionOptions)
39
+ *
40
+ * ### Connect to a restricted ecosystem wallet with your designated partner ID
41
+ *
42
+ * The parnter ID will be provided to you by the ecosystem with which you're integrating.
43
+ *
21
44
  * ```ts
22
45
  * import { ecosystemWallet } from "thirdweb/wallets";
23
46
  * const wallet = ecosystemWallet("ecosystem.hooli", {
24
47
  * partnerId: "..."
25
48
  * });
26
49
  * ```
50
+ *
51
+ * Refer to [inAppWallet](https://portal.thirdweb.com/references/typescript/v5/inAppWallet) for more usage examples.
52
+ *
27
53
  * @wallet
28
54
  */
29
55
  export function ecosystemWallet(...args) {
@@ -1 +1 @@
1
- {"version":3,"file":"ecosystem.js","sourceRoot":"","sources":["../../../../../src/wallets/in-app/web/ecosystem.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,eAAe,CAC7B,GAAG,IAAyC;IAE5C,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC;IAC1C,OAAO,qBAAqB,CAAC;QAC3B,EAAE,EAAE,WAAW;QACf,aAAa;QACb,gBAAgB,EAAE,KAAK,EAAE,MAAsB,EAAE,EAAE;YACjD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACrE,OAAO,IAAI,iBAAiB,CAAC;gBAC3B,MAAM;gBACN,SAAS,EAAE;oBACT,EAAE,EAAE,WAAW;oBACf,SAAS,EAAE,aAAa,EAAE,SAAS;iBACpC;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"ecosystem.js","sourceRoot":"","sources":["../../../../../src/wallets/in-app/web/ecosystem.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,UAAU,eAAe,CAC7B,GAAG,IAAyC;IAE5C,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC;IAC1C,OAAO,qBAAqB,CAAC;QAC3B,EAAE,EAAE,WAAW;QACf,aAAa;QACb,gBAAgB,EAAE,KAAK,EAAE,MAAsB,EAAE,EAAE;YACjD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACrE,OAAO,IAAI,iBAAiB,CAAC;gBAC3B,MAAM;gBACN,SAAS,EAAE;oBACT,EAAE,EAAE,WAAW;oBACf,SAAS,EAAE,aAAa,EAAE,SAAS;iBACpC;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1,9 +1,26 @@
1
1
  import { createInAppWallet } from "../core/wallet/in-app-core.js";
2
2
  /**
3
- * Creates an in-app wallet.
3
+ * Creates an app scoped wallet for users based on various authentication methods.
4
+ *
5
+ * Available authentication methods:
6
+ * - Email
7
+ * - Phone
8
+ * - Passkey
9
+ * - Google
10
+ * - Apple
11
+ * - Facebook
12
+ * - Discord
13
+ * - Farcaster
14
+ *
15
+ * Can also be configured to use Account Abstraction to directly connect to a ERC4337 smart account based on those authentication methods.
16
+ *
4
17
  * @param createOptions - configuration options
18
+ * Refer to [InAppWalletCreationOptions](https://portal.thirdweb.com/references/typescript/v5/InAppWalletCreationOptions) to see the available options.
5
19
  * @returns The created in-app wallet.
6
20
  * @example
21
+ *
22
+ * ### Login with socials
23
+ *
7
24
  * ```ts
8
25
  * import { inAppWallet } from "thirdweb/wallets";
9
26
  *
@@ -16,18 +33,90 @@ import { createInAppWallet } from "../core/wallet/in-app-core.js";
16
33
  * });
17
34
  * ```
18
35
  *
19
- * Enable smart accounts and sponsor gas for your users:
36
+ * [View all available social auth methods](https://portal.thirdweb.com/references/typescript/v5/InAppWalletSocialAuth)
37
+ *
38
+ * * ### Login with email
39
+ *
40
+ * ```ts
41
+ * import { inAppWallet, preAuthenticate } from "thirdweb/wallets/in-app";
42
+ *
43
+ * const wallet = inAppWallet();
44
+ *
45
+ * // sends a verification code to the provided email
46
+ * await preAuthenticate({
47
+ * client,
48
+ * strategy: "email",
49
+ * email: "example@example.com",
50
+ * });
51
+ *
52
+ * // login with the verification code
53
+ * const account = await wallet.connect({
54
+ * client,
55
+ * chain,
56
+ * strategy: "email",
57
+ * verificationCode: "123456",
58
+ * });
59
+ * ```
60
+ *
61
+ * ### Login with phone number
62
+ * ```ts
63
+ * import { inAppWallet, preAuthenticate } from "thirdweb/wallets/in-app";
64
+ *
65
+ * const wallet = inAppWallet();
66
+ *
67
+ * // sends a verification code to the provided phone number
68
+ * await preAuthenticate({
69
+ * client,
70
+ * strategy: "phone",
71
+ * phoneNumber: "+1234567890",
72
+ * });
73
+ *
74
+ * // login with the verification code
75
+ * const account = await wallet.connect({
76
+ * client,
77
+ * chain,
78
+ * strategy: "phone",
79
+ * verificationCode: "123456",
80
+ * });
81
+ *
82
+ * ### Login with passkey
83
+ *
84
+ * ```ts
85
+ * import { inAppWallet, hasStoredPasskey } from "thirdweb/wallets/in-app";
86
+ *
87
+ * const wallet = inAppWallet();
88
+ *
89
+ * const wallet = inAppWallet();
90
+ * const hasPasskey = await hasStoredPasskey(client);
91
+ * await wallet.connect({
92
+ * client,
93
+ * strategy: "passkey",
94
+ * type: hasPasskey ? "sign-in" : "sign-up",
95
+ * });
96
+ * ```
97
+ *
98
+ * ### Enable smart accounts and sponsor gas for your users:
99
+ *
20
100
  * ```ts
21
101
  * import { inAppWallet } from "thirdweb/wallets";
102
+ * import { sepolia } from "thirdweb/chains";
103
+ *
22
104
  * const wallet = inAppWallet({
23
105
  * smartAccount: {
24
106
  * chain: sepolia,
25
107
  * sponsorGas: true,
26
108
  * },
27
109
  * });
110
+ *
111
+ * // account will be a smart account with sponsored gas enabled
112
+ * const account = await wallet.connect({
113
+ * client,
114
+ * chain,
115
+ * strategy: "google",
116
+ * });
28
117
  * ```
29
118
  *
30
- * Specify a logo for your login page
119
+ * ### Specify a logo for your login page (Connect UI)
31
120
  * ```ts
32
121
  * import { inAppWallet } from "thirdweb/wallets";
33
122
  * const wallet = inAppWallet({
@@ -42,7 +131,8 @@ import { createInAppWallet } from "../core/wallet/in-app-core.js";
42
131
  * });
43
132
  * ```
44
133
  *
45
- * Hide the ability to export the private key within the Connect Modal
134
+ * ### Hide the ability to export the private key within the Connect Modal UI
135
+ *
46
136
  * ```ts
47
137
  * import { inAppWallet } from "thirdweb/wallets";
48
138
  * const wallet = inAppWallet({
@@ -50,7 +140,10 @@ import { createInAppWallet } from "../core/wallet/in-app-core.js";
50
140
  * });
51
141
  * ```
52
142
  *
53
- * Open the Oauth window in the same tab
143
+ * ### Open the Oauth window in the same tab
144
+ *
145
+ * By default, the Oauth window will open in a popup window. You can change this behavior by setting the `auth.mode` option to `"redirect"`.
146
+ *
54
147
  * ```ts
55
148
  * import { inAppWallet } from "thirdweb/wallets";
56
149
  * const wallet = inAppWallet({
@@ -59,6 +152,8 @@ import { createInAppWallet } from "../core/wallet/in-app-core.js";
59
152
  * }
60
153
  * });
61
154
  * ```
155
+ *
156
+ * @returns The created in-app wallet.
62
157
  * @wallet
63
158
  */
64
159
  export function inAppWallet(createOptions) {
@@ -1 +1 @@
1
- {"version":3,"file":"in-app.js","sourceRoot":"","sources":["../../../../../src/wallets/in-app/web/in-app.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,MAAM,UAAU,WAAW,CACzB,aAA4C;IAE5C,OAAO,iBAAiB,CAAC;QACvB,aAAa;QACb,gBAAgB,EAAE,KAAK,EAAE,MAAsB,EAAE,EAAE;YACjD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACrE,OAAO,IAAI,iBAAiB,CAAC;gBAC3B,MAAM;aACP,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"in-app.js","sourceRoot":"","sources":["../../../../../src/wallets/in-app/web/in-app.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4JG;AACH,MAAM,UAAU,WAAW,CACzB,aAA4C;IAE5C,OAAO,iBAAiB,CAAC;QACvB,aAAa;QACb,gBAAgB,EAAE,KAAK,EAAE,MAAsB,EAAE,EAAE;YACjD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACrE,OAAO,IAAI,iBAAiB,CAAC;gBAC3B,MAAM;aACP,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -4,23 +4,89 @@ import { isContractDeployed } from "../../utils/bytecode/is-contract-deployed.js
4
4
  import { createWalletEmitter } from "../wallet-emitter.js";
5
5
  import { DEFAULT_ACCOUNT_FACTORY } from "./lib/constants.js";
6
6
  /**
7
- * Creates a smart wallet.
7
+ * Creates a ERC4337 smart wallet based on a admin account.
8
+ *
9
+ * Smart wallets are smart contract wallets that enable multiple benefits for users:
10
+ *
11
+ * - Sponsor gas fees for transactions
12
+ * - Multiple owners
13
+ * - Session keys
14
+ * - Batch transactions
15
+ * - Predictable addresses
16
+ * - Programmable features
17
+ *
18
+ * [Learn more about account abstraction](https://portal.thirdweb.com/connect/account-abstraction/how-it-works)
19
+ *
8
20
  * @param createOptions - The options for creating the wallet.
21
+ * Refer to [SmartWalletCreationOptions](https://portal.thirdweb.com/references/typescript/v5/SmartWalletCreationOptions) for more details.
9
22
  * @returns The created smart wallet.
10
23
  * @example
24
+ *
25
+ * ## Connect to a smart wallet
26
+ *
27
+ * To connect to a smart wallet, you need to provide an admin account as the `personalAccount` option.
28
+ *
29
+ * Any wallet can be used as an admin account, including an in-app wallets.
30
+ *
31
+ * The `sponsorGas` option is used to enable sponsored gas for transactions automatically.
32
+ *
11
33
  * ```ts
12
- * import { smartWallet } from "thirdweb/wallets";
34
+ * import { smartWalletm inAppWallet } from "thirdweb/wallets";
35
+ * import { sepolia } from "thirdweb/chains";
36
+ * import { sendTransaction } from "thirdweb";
13
37
  *
14
38
  * const wallet = smartWallet({
15
39
  * chain: sepolia,
16
- * gasless: true,
40
+ * sponsorGas: true, // enable sponsored transactions
17
41
  * });
18
42
  *
19
- * const account = await wallet.connect({
43
+ * // any wallet can be used as an admin account
44
+ * // in this example we use an in-app wallet
45
+ * const adminWallet = inAppWallet();
46
+ * const personalAccount = await adminWallet.connect({
20
47
  * client,
21
- * personalAccount: account,
48
+ * chain: sepolia,
49
+ * strategy: "google",
50
+ * });
51
+ *
52
+ * const smartAccount = await wallet.connect({
53
+ * client,
54
+ * personalAccount, // pass the admin account
55
+ * });
56
+ *
57
+ * // sending sponsored transactions with the smartAccount
58
+ * await sendTransaction({
59
+ * account: smartAccount,
60
+ * transaction,
22
61
  * });
23
62
  * ```
63
+ *
64
+ * ## Configuring the smart wallet
65
+ *
66
+ * You can pass options to the `smartWallet` function to configure the smart wallet.
67
+ *
68
+ * ```ts
69
+ * import { smartWallet } from "thirdweb/wallets";
70
+ * import { sepolia } from "thirdweb/chains";
71
+ *
72
+ * const wallet = smartWallet({
73
+ * chain: sepolia,
74
+ * sponsorGas: true, // enable sponsored transactions
75
+ * factoryAddress: "0x...", // custom factory address
76
+ * overrides: {
77
+ * accountAddress: "0x...", // override account address
78
+ * accountSalt: "0x...", // override account salt
79
+ * entrypointAddress: "0x...", // override entrypoint address
80
+ * erc20Paymaster: { ... }, // enable erc20 paymaster
81
+ * bundlerUrl: "https://...", // override bundler url
82
+ * paymaster: (userOp) => { ... }, // override paymaster
83
+ * ...
84
+ * }
85
+ * });
86
+ * ```
87
+ *
88
+ * Refer to [SmartWalletOptions](https://portal.thirdweb.com/references/typescript/v5/SmartWalletOptions) for more details.
89
+ *
24
90
  * @wallet
25
91
  */
26
92
  export function smartWallet(createOptions) {
@@ -1 +1 @@
1
- {"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"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"}