thirdweb 5.101.2 → 5.102.1

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 (126) hide show
  1. package/dist/cjs/engine/create-server-wallet.js +46 -0
  2. package/dist/cjs/engine/create-server-wallet.js.map +1 -0
  3. package/dist/cjs/engine/get-status.js +0 -54
  4. package/dist/cjs/engine/get-status.js.map +1 -1
  5. package/dist/cjs/engine/index.js +9 -2
  6. package/dist/cjs/engine/index.js.map +1 -1
  7. package/dist/cjs/engine/list-server-wallets.js +40 -0
  8. package/dist/cjs/engine/list-server-wallets.js.map +1 -0
  9. package/dist/cjs/engine/search-transactions.js +115 -0
  10. package/dist/cjs/engine/search-transactions.js.map +1 -0
  11. package/dist/cjs/engine/server-wallet.js +97 -17
  12. package/dist/cjs/engine/server-wallet.js.map +1 -1
  13. package/dist/cjs/engine/wait-for-tx-hash.js +59 -0
  14. package/dist/cjs/engine/wait-for-tx-hash.js.map +1 -0
  15. package/dist/cjs/insight/get-nfts.js +6 -1
  16. package/dist/cjs/insight/get-nfts.js.map +1 -1
  17. package/dist/cjs/react/native/hooks/wallets/useUnlinkProfile.js +19 -1
  18. package/dist/cjs/react/native/hooks/wallets/useUnlinkProfile.js.map +1 -1
  19. package/dist/cjs/react/web/hooks/wallets/useUnlinkProfile.js +19 -1
  20. package/dist/cjs/react/web/hooks/wallets/useUnlinkProfile.js.map +1 -1
  21. package/dist/cjs/utils/fetch.js +1 -0
  22. package/dist/cjs/utils/fetch.js.map +1 -1
  23. package/dist/cjs/version.js +1 -1
  24. package/dist/cjs/wallets/in-app/core/authentication/linkAccount.js +6 -2
  25. package/dist/cjs/wallets/in-app/core/authentication/linkAccount.js.map +1 -1
  26. package/dist/cjs/wallets/in-app/native/auth/index.js +1 -1
  27. package/dist/cjs/wallets/in-app/native/auth/index.js.map +1 -1
  28. package/dist/cjs/wallets/in-app/native/native-connector.js +2 -1
  29. package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
  30. package/dist/cjs/wallets/in-app/web/lib/auth/index.js +30 -1
  31. package/dist/cjs/wallets/in-app/web/lib/auth/index.js.map +1 -1
  32. package/dist/cjs/wallets/in-app/web/lib/web-connector.js +2 -1
  33. package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
  34. package/dist/esm/engine/create-server-wallet.js +43 -0
  35. package/dist/esm/engine/create-server-wallet.js.map +1 -0
  36. package/dist/esm/engine/get-status.js +0 -53
  37. package/dist/esm/engine/get-status.js.map +1 -1
  38. package/dist/esm/engine/index.js +5 -1
  39. package/dist/esm/engine/index.js.map +1 -1
  40. package/dist/esm/engine/list-server-wallets.js +37 -0
  41. package/dist/esm/engine/list-server-wallets.js.map +1 -0
  42. package/dist/esm/engine/search-transactions.js +112 -0
  43. package/dist/esm/engine/search-transactions.js.map +1 -0
  44. package/dist/esm/engine/server-wallet.js +96 -16
  45. package/dist/esm/engine/server-wallet.js.map +1 -1
  46. package/dist/esm/engine/wait-for-tx-hash.js +56 -0
  47. package/dist/esm/engine/wait-for-tx-hash.js.map +1 -0
  48. package/dist/esm/insight/get-nfts.js +6 -1
  49. package/dist/esm/insight/get-nfts.js.map +1 -1
  50. package/dist/esm/react/native/hooks/wallets/useUnlinkProfile.js +19 -1
  51. package/dist/esm/react/native/hooks/wallets/useUnlinkProfile.js.map +1 -1
  52. package/dist/esm/react/web/hooks/wallets/useUnlinkProfile.js +19 -1
  53. package/dist/esm/react/web/hooks/wallets/useUnlinkProfile.js.map +1 -1
  54. package/dist/esm/utils/fetch.js +1 -0
  55. package/dist/esm/utils/fetch.js.map +1 -1
  56. package/dist/esm/version.js +1 -1
  57. package/dist/esm/wallets/in-app/core/authentication/linkAccount.js +6 -2
  58. package/dist/esm/wallets/in-app/core/authentication/linkAccount.js.map +1 -1
  59. package/dist/esm/wallets/in-app/native/auth/index.js +1 -1
  60. package/dist/esm/wallets/in-app/native/auth/index.js.map +1 -1
  61. package/dist/esm/wallets/in-app/native/native-connector.js +2 -1
  62. package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
  63. package/dist/esm/wallets/in-app/web/lib/auth/index.js +30 -1
  64. package/dist/esm/wallets/in-app/web/lib/auth/index.js.map +1 -1
  65. package/dist/esm/wallets/in-app/web/lib/web-connector.js +2 -1
  66. package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
  67. package/dist/types/engine/create-server-wallet.d.ts +29 -0
  68. package/dist/types/engine/create-server-wallet.d.ts.map +1 -0
  69. package/dist/types/engine/get-status.d.ts +0 -23
  70. package/dist/types/engine/get-status.d.ts.map +1 -1
  71. package/dist/types/engine/index.d.ts +5 -1
  72. package/dist/types/engine/index.d.ts.map +1 -1
  73. package/dist/types/engine/list-server-wallets.d.ts +25 -0
  74. package/dist/types/engine/list-server-wallets.d.ts.map +1 -0
  75. package/dist/types/engine/search-transactions.d.ts +127 -0
  76. package/dist/types/engine/search-transactions.d.ts.map +1 -0
  77. package/dist/types/engine/server-wallet.d.ts +36 -0
  78. package/dist/types/engine/server-wallet.d.ts.map +1 -1
  79. package/dist/types/engine/wait-for-tx-hash.d.ts +25 -0
  80. package/dist/types/engine/wait-for-tx-hash.d.ts.map +1 -0
  81. package/dist/types/react/native/hooks/wallets/useUnlinkProfile.d.ts +18 -0
  82. package/dist/types/react/native/hooks/wallets/useUnlinkProfile.d.ts.map +1 -1
  83. package/dist/types/react/web/hooks/wallets/useUnlinkProfile.d.ts +18 -0
  84. package/dist/types/react/web/hooks/wallets/useUnlinkProfile.d.ts.map +1 -1
  85. package/dist/types/utils/fetch.d.ts.map +1 -1
  86. package/dist/types/version.d.ts +1 -1
  87. package/dist/types/wallets/in-app/core/authentication/linkAccount.d.ts +2 -1
  88. package/dist/types/wallets/in-app/core/authentication/linkAccount.d.ts.map +1 -1
  89. package/dist/types/wallets/in-app/core/authentication/types.d.ts +1 -0
  90. package/dist/types/wallets/in-app/core/authentication/types.d.ts.map +1 -1
  91. package/dist/types/wallets/in-app/core/interfaces/connector.d.ts +1 -1
  92. package/dist/types/wallets/in-app/core/interfaces/connector.d.ts.map +1 -1
  93. package/dist/types/wallets/in-app/native/auth/index.d.ts.map +1 -1
  94. package/dist/types/wallets/in-app/native/native-connector.d.ts +1 -1
  95. package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
  96. package/dist/types/wallets/in-app/web/lib/auth/index.d.ts +29 -0
  97. package/dist/types/wallets/in-app/web/lib/auth/index.d.ts.map +1 -1
  98. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts +1 -1
  99. package/dist/types/wallets/in-app/web/lib/web-connector.d.ts.map +1 -1
  100. package/package.json +2 -2
  101. package/src/bridge/Chains.test.ts +1 -1
  102. package/src/engine/create-server-wallet.ts +57 -0
  103. package/src/engine/get-status.ts +0 -69
  104. package/src/engine/index.ts +13 -1
  105. package/src/engine/list-server-wallets.ts +46 -0
  106. package/src/engine/search-transactions.ts +132 -0
  107. package/src/engine/server-wallet.test.ts +54 -0
  108. package/src/engine/server-wallet.ts +104 -17
  109. package/src/engine/wait-for-tx-hash.ts +75 -0
  110. package/src/extensions/erc1155/read/getOwnedNFTs.test.ts +25 -0
  111. package/src/extensions/erc20/drop20.test.ts +91 -1
  112. package/src/insight/get-nfts.ts +6 -1
  113. package/src/react/native/hooks/wallets/useUnlinkProfile.test.tsx +27 -0
  114. package/src/react/native/hooks/wallets/useUnlinkProfile.ts +24 -1
  115. package/src/react/web/hooks/wallets/useUnlinkProfile.test.tsx +2 -0
  116. package/src/react/web/hooks/wallets/useUnlinkProfile.ts +24 -1
  117. package/src/utils/fetch.ts +1 -0
  118. package/src/version.ts +1 -1
  119. package/src/wallets/in-app/core/authentication/linkAccount.test.ts +31 -1
  120. package/src/wallets/in-app/core/authentication/linkAccount.ts +7 -1
  121. package/src/wallets/in-app/core/authentication/types.ts +1 -0
  122. package/src/wallets/in-app/core/interfaces/connector.ts +4 -1
  123. package/src/wallets/in-app/native/auth/index.ts +4 -1
  124. package/src/wallets/in-app/native/native-connector.ts +2 -1
  125. package/src/wallets/in-app/web/lib/auth/index.ts +33 -1
  126. package/src/wallets/in-app/web/lib/web-connector.ts +2 -1
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createServerWallet = createServerWallet;
4
+ const engine_1 = require("@thirdweb-dev/engine");
5
+ const viem_1 = require("viem");
6
+ const domains_js_1 = require("../utils/domains.js");
7
+ const fetch_js_1 = require("../utils/fetch.js");
8
+ /**
9
+ * Create a server wallet.
10
+ * @param params - The parameters for the server wallet.
11
+ * @param params.client - The thirdweb client to use.
12
+ * @param params.label - The label for the server wallet.
13
+ * @returns The server wallet signer address and the predicted smart account address.
14
+ * @engine
15
+ * @example
16
+ * ```ts
17
+ * import { Engine } from "thirdweb";
18
+ *
19
+ * const serverWallet = await Engine.createServerWallet({
20
+ * client,
21
+ * label: "My Server Wallet",
22
+ * });
23
+ * console.log(serverWallet.address);
24
+ * console.log(serverWallet.smartAccountAddress);
25
+ * ```
26
+ */
27
+ async function createServerWallet(params) {
28
+ const { client, label } = params;
29
+ const result = await (0, engine_1.createAccount)({
30
+ baseUrl: (0, domains_js_1.getThirdwebBaseUrl)("engineCloud"),
31
+ bodySerializer: viem_1.stringify,
32
+ fetch: (0, fetch_js_1.getClientFetch)(client),
33
+ body: {
34
+ label,
35
+ },
36
+ });
37
+ if (result.error) {
38
+ throw new Error(`Error creating server wallet with label ${label}: ${(0, viem_1.stringify)(result.error)}`);
39
+ }
40
+ const data = result.data?.result;
41
+ if (!data) {
42
+ throw new Error(`No server wallet created with label ${label}`);
43
+ }
44
+ return data;
45
+ }
46
+ //# sourceMappingURL=create-server-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-server-wallet.js","sourceRoot":"","sources":["../../../src/engine/create-server-wallet.ts"],"names":[],"mappings":";;AA8BA,gDA0BC;AAxDD,iDAAqD;AACrD,+BAAiC;AAEjC,oDAAyD;AACzD,gDAAmD;AAOnD;;;;;;;;;;;;;;;;;;GAkBG;AACI,KAAK,UAAU,kBAAkB,CAAC,MAA8B;IACrE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAa,EAAC;QACjC,OAAO,EAAE,IAAA,+BAAkB,EAAC,aAAa,CAAC;QAC1C,cAAc,EAAE,gBAAS;QACzB,KAAK,EAAE,IAAA,yBAAc,EAAC,MAAM,CAAC;QAC7B,IAAI,EAAE;YACJ,KAAK;SACN;KACF,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,2CAA2C,KAAK,KAAK,IAAA,gBAAS,EAC5D,MAAM,CAAC,KAAK,CACb,EAAE,CACJ,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;IAEjC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getTransactionStatus = getTransactionStatus;
4
- exports.waitForTransactionHash = waitForTransactionHash;
5
4
  const engine_1 = require("@thirdweb-dev/engine");
6
5
  const utils_js_1 = require("../chains/utils.js");
7
6
  const domains_js_1 = require("../utils/domains.js");
@@ -58,57 +57,4 @@ async function getTransactionStatus(args) {
58
57
  id: data.id,
59
58
  };
60
59
  }
61
- /**
62
- * Wait for a transaction to be submitted onchain and return the transaction hash.
63
- * @param args - The arguments for the transaction.
64
- * @param args.client - The thirdweb client to use.
65
- * @param args.transactionId - The id of the transaction to wait for.
66
- * @param args.timeoutInSeconds - The timeout in seconds.
67
- * @engine
68
- * @example
69
- * ```ts
70
- * import { Engine } from "thirdweb";
71
- *
72
- * const { transactionHash } = await Engine.waitForTransactionHash({
73
- * client,
74
- * transactionId, // the transaction id returned from enqueueTransaction
75
- * });
76
- * ```
77
- */
78
- async function waitForTransactionHash(args) {
79
- const startTime = Date.now();
80
- const TIMEOUT_IN_MS = args.timeoutInSeconds
81
- ? args.timeoutInSeconds * 1000
82
- : 5 * 60 * 1000; // 5 minutes in milliseconds
83
- while (Date.now() - startTime < TIMEOUT_IN_MS) {
84
- const executionResult = await getTransactionStatus(args);
85
- const status = executionResult.status;
86
- switch (status) {
87
- case "FAILED": {
88
- throw new Error(`Transaction failed: ${executionResult.error || "Unknown error"}`);
89
- }
90
- case "CONFIRMED": {
91
- const onchainStatus = executionResult && "onchainStatus" in executionResult
92
- ? executionResult.onchainStatus
93
- : null;
94
- if (onchainStatus === "REVERTED") {
95
- const revertData = "revertData" in executionResult
96
- ? executionResult.revertData
97
- : undefined;
98
- throw new Error(`Transaction reverted: ${revertData?.errorName || ""} ${revertData?.errorArgs ? (0, json_js_1.stringify)(revertData.errorArgs) : ""}`);
99
- }
100
- return {
101
- transactionHash: executionResult.transactionHash,
102
- client: args.client,
103
- chain: executionResult.chain,
104
- };
105
- }
106
- default: {
107
- // wait for the transaction to be confirmed
108
- await new Promise((resolve) => setTimeout(resolve, 1000));
109
- }
110
- }
111
- }
112
- throw new Error(`Transaction timed out after ${TIMEOUT_IN_MS / 1000} seconds`);
113
- }
114
60
  //# sourceMappingURL=get-status.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-status.js","sourceRoot":"","sources":["../../../src/engine/get-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-status.js","sourceRoot":"","sources":["../../../src/engine/get-status.ts"],"names":[],"mappings":";;AAyEA,oDA4CC;AArHD,iDAA0D;AAE1D,iDAAoD;AAEpD,oDAAyD;AAEzD,gDAAmD;AACnD,8CAA6C;AAiD7C;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,oBAAoB,CAAC,IAG1C;IACC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,IAAA,2BAAkB,EAAC;QAC5C,OAAO,EAAE,IAAA,+BAAkB,EAAC,aAAa,CAAC;QAC1C,cAAc,EAAE,mBAAS;QACzB,KAAK,EAAE,IAAA,yBAAc,EAAC,MAAM,CAAC;QAC7B,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,CAAC,aAAa,CAAC;oBACvB,SAAS,EAAE,IAAI;iBAChB;aACF;SACF;KACF,CAAC,CAAC;IAEH,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,mCAAmC,aAAa,KAAK,IAAA,mBAAS,EAC5D,YAAY,CAAC,KAAK,CACnB,EAAE,CACJ,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IAE1D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,eAAe,aAAa,YAAY,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,eAAgD,CAAC;IAC9E,OAAO;QACL,GAAG,eAAe;QAClB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,KAAK,EAAE,IAAA,yBAAc,EAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,SAAS;QAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;KACZ,CAAC;AACJ,CAAC"}
@@ -1,9 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.waitForTransactionHash = exports.getTransactionStatus = exports.serverWallet = void 0;
3
+ exports.getServerWallets = exports.createServerWallet = exports.searchTransactions = exports.waitForTransactionHash = exports.getTransactionStatus = exports.serverWallet = void 0;
4
4
  var server_wallet_js_1 = require("./server-wallet.js");
5
5
  Object.defineProperty(exports, "serverWallet", { enumerable: true, get: function () { return server_wallet_js_1.serverWallet; } });
6
6
  var get_status_js_1 = require("./get-status.js");
7
7
  Object.defineProperty(exports, "getTransactionStatus", { enumerable: true, get: function () { return get_status_js_1.getTransactionStatus; } });
8
- Object.defineProperty(exports, "waitForTransactionHash", { enumerable: true, get: function () { return get_status_js_1.waitForTransactionHash; } });
8
+ var wait_for_tx_hash_js_1 = require("./wait-for-tx-hash.js");
9
+ Object.defineProperty(exports, "waitForTransactionHash", { enumerable: true, get: function () { return wait_for_tx_hash_js_1.waitForTransactionHash; } });
10
+ var search_transactions_js_1 = require("./search-transactions.js");
11
+ Object.defineProperty(exports, "searchTransactions", { enumerable: true, get: function () { return search_transactions_js_1.searchTransactions; } });
12
+ var create_server_wallet_js_1 = require("./create-server-wallet.js");
13
+ Object.defineProperty(exports, "createServerWallet", { enumerable: true, get: function () { return create_server_wallet_js_1.createServerWallet; } });
14
+ var list_server_wallets_js_1 = require("./list-server-wallets.js");
15
+ Object.defineProperty(exports, "getServerWallets", { enumerable: true, get: function () { return list_server_wallets_js_1.getServerWallets; } });
9
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine/index.ts"],"names":[],"mappings":";;;AAAA,uDAI4B;AAH1B,gHAAA,YAAY,OAAA;AAId,iDAKyB;AAJvB,qHAAA,oBAAoB,OAAA;AACpB,uHAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine/index.ts"],"names":[],"mappings":";;;AAAA,uDAI4B;AAH1B,gHAAA,YAAY,OAAA;AAId,iDAIyB;AAHvB,qHAAA,oBAAoB,OAAA;AAItB,6DAA+D;AAAtD,6HAAA,sBAAsB,OAAA;AAC/B,mEAGkC;AAFhC,4HAAA,kBAAkB,OAAA;AAGpB,qEAGmC;AAFjC,6HAAA,kBAAkB,OAAA;AAGpB,mEAGkC;AAFhC,0HAAA,gBAAgB,OAAA"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getServerWallets = getServerWallets;
4
+ const engine_1 = require("@thirdweb-dev/engine");
5
+ const viem_1 = require("viem");
6
+ const domains_js_1 = require("../utils/domains.js");
7
+ const fetch_js_1 = require("../utils/fetch.js");
8
+ /**
9
+ * List all server wallets.
10
+ * @param params - The parameters for the server wallet.
11
+ * @param params.client - The thirdweb client to use.
12
+ * @returns an array of server wallets with their signer address and predicted smart account address.
13
+ * @engine
14
+ * @example
15
+ * ```ts
16
+ * import { Engine } from "thirdweb";
17
+ *
18
+ * const serverWallets = await Engine.getServerWallets({
19
+ * client,
20
+ * });
21
+ * console.log(serverWallets);
22
+ * ```
23
+ */
24
+ async function getServerWallets(params) {
25
+ const { client } = params;
26
+ const result = await (0, engine_1.listAccounts)({
27
+ baseUrl: (0, domains_js_1.getThirdwebBaseUrl)("engineCloud"),
28
+ bodySerializer: viem_1.stringify,
29
+ fetch: (0, fetch_js_1.getClientFetch)(client),
30
+ });
31
+ if (result.error) {
32
+ throw new Error(`Error listing server wallets: ${(0, viem_1.stringify)(result.error)}`);
33
+ }
34
+ const data = result.data?.result;
35
+ if (!data) {
36
+ throw new Error("No server wallets found");
37
+ }
38
+ return data;
39
+ }
40
+ //# sourceMappingURL=list-server-wallets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-server-wallets.js","sourceRoot":"","sources":["../../../src/engine/list-server-wallets.ts"],"names":[],"mappings":";;AA0BA,4CAmBC;AA7CD,iDAAoD;AACpD,+BAAiC;AAEjC,oDAAyD;AACzD,gDAAmD;AAMnD;;;;;;;;;;;;;;;GAeG;AACI,KAAK,UAAU,gBAAgB,CAAC,MAA4B;IACjE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAY,EAAC;QAChC,OAAO,EAAE,IAAA,+BAAkB,EAAC,aAAa,CAAC;QAC1C,cAAc,EAAE,gBAAS;QACzB,KAAK,EAAE,IAAA,yBAAc,EAAC,MAAM,CAAC;KAC9B,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAA,gBAAS,EAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;IAEjC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.searchTransactions = searchTransactions;
4
+ const engine_1 = require("@thirdweb-dev/engine");
5
+ const domains_js_1 = require("../utils/domains.js");
6
+ const fetch_js_1 = require("../utils/fetch.js");
7
+ const json_js_1 = require("../utils/json.js");
8
+ /**
9
+ * Search for transactions by their ids.
10
+ * @param args - The arguments for the search.
11
+ * @param args.client - The thirdweb client to use.
12
+ * @param args.transactionIds - The ids of the transactions to search for.
13
+ * @engine
14
+ * @example
15
+ * ## Search for transactions by their ids
16
+ *
17
+ * ```ts
18
+ * import { Engine } from "thirdweb";
19
+ *
20
+ * const transactions = await Engine.searchTransactions({
21
+ * client,
22
+ * filters: [
23
+ * {
24
+ * field: "id",
25
+ * values: ["1", "2", "3"],
26
+ * },
27
+ * ],
28
+ * });
29
+ * console.log(transactions);
30
+ * ```
31
+ *
32
+ * ## Search for transactions by chain id
33
+ *
34
+ * ```ts
35
+ * import { Engine } from "thirdweb";
36
+ *
37
+ * const transactions = await Engine.searchTransactions({
38
+ * client,
39
+ * filters: [
40
+ * {
41
+ * field: "chainId",
42
+ * values: ["1", "137"],
43
+ * },
44
+ * ],
45
+ * });
46
+ * console.log(transactions);
47
+ * ```
48
+ *
49
+ * ## Search for transactions by sender wallet address
50
+ *
51
+ * ```ts
52
+ * import { Engine } from "thirdweb";
53
+ *
54
+ * const transactions = await Engine.searchTransactions({
55
+ * client,
56
+ * filters: [
57
+ * {
58
+ * field: "from",
59
+ * values: ["0x1234567890123456789012345678901234567890"],
60
+ * },
61
+ * ],
62
+ * });
63
+ * console.log(transactions);
64
+ * ```
65
+ *
66
+ * ## Combined search
67
+ *
68
+ * ```ts
69
+ * import { Engine } from "thirdweb";
70
+ *
71
+ * const transactions = await Engine.searchTransactions({
72
+ * client,
73
+ * filters: [
74
+ * {
75
+ * filters: [
76
+ * {
77
+ * field: "from",
78
+ * values: ["0x1234567890123456789012345678901234567890"],
79
+ * },
80
+ * {
81
+ * field: "chainId",
82
+ * values: ["8453"],
83
+ * },
84
+ * ],
85
+ * operation: "AND",
86
+ * },
87
+ * ],
88
+ * pageSize: 100,
89
+ * page: 0,
90
+ * });
91
+ * console.log(transactions);
92
+ * ```
93
+ */
94
+ async function searchTransactions(args) {
95
+ const { client, filters, pageSize = 100, page = 1 } = args;
96
+ const searchResult = await (0, engine_1.searchTransactions)({
97
+ baseUrl: (0, domains_js_1.getThirdwebBaseUrl)("engineCloud"),
98
+ bodySerializer: json_js_1.stringify,
99
+ fetch: (0, fetch_js_1.getClientFetch)(client),
100
+ body: {
101
+ filters,
102
+ limit: pageSize,
103
+ page,
104
+ },
105
+ });
106
+ if (searchResult.error) {
107
+ throw new Error(`Error searching for transaction with filters ${(0, json_js_1.stringify)(filters)}: ${(0, json_js_1.stringify)(searchResult.error)}`);
108
+ }
109
+ const data = searchResult.data?.result;
110
+ if (!data) {
111
+ throw new Error(`No transactions found with filters ${(0, json_js_1.stringify)(filters)}`);
112
+ }
113
+ return data;
114
+ }
115
+ //# sourceMappingURL=search-transactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-transactions.js","sourceRoot":"","sources":["../../../src/engine/search-transactions.ts"],"names":[],"mappings":";;AAuGA,gDA4BC;AAnID,iDAI8B;AAE9B,oDAAyD;AACzD,gDAAmD;AACnD,8CAA6C;AAS7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqFG;AACI,KAAK,UAAU,kBAAkB,CAAC,IAA4B;IACnE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,GAAG,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;IAC3D,MAAM,YAAY,GAAG,MAAM,IAAA,2BAAwB,EAAC;QAClD,OAAO,EAAE,IAAA,+BAAkB,EAAC,aAAa,CAAC;QAC1C,cAAc,EAAE,mBAAS;QACzB,KAAK,EAAE,IAAA,yBAAc,EAAC,MAAM,CAAC;QAC7B,IAAI,EAAE;YACJ,OAAO;YACP,KAAK,EAAE,QAAQ;YACf,IAAI;SACL;KACF,CAAC,CAAC;IAEH,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,gDAAgD,IAAA,mBAAS,EAAC,OAAO,CAAC,KAAK,IAAA,mBAAS,EAC9E,YAAY,CAAC,KAAK,CACnB,EAAE,CACJ,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC;IAEvC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAA,mBAAS,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -9,7 +9,7 @@ const hex_js_1 = require("../utils/encoding/hex.js");
9
9
  const fetch_js_1 = require("../utils/fetch.js");
10
10
  const json_js_1 = require("../utils/json.js");
11
11
  const resolve_promised_value_js_1 = require("../utils/promise/resolve-promised-value.js");
12
- const get_status_js_1 = require("./get-status.js");
12
+ const wait_for_tx_hash_js_1 = require("./wait-for-tx-hash.js");
13
13
  /**
14
14
  * Create a server wallet for sending transactions and signing messages via engine (v3+).
15
15
  * @param options - The server wallet options.
@@ -56,6 +56,37 @@ const get_status_js_1 = require("./get-status.js");
56
56
  * console.log("Transaction sent:", transactionHash);
57
57
  * ```
58
58
  *
59
+ * ### Sending a batch of transactions
60
+ * ```ts
61
+ * // prepare the transactions
62
+ * const transaction1 = claimTo({
63
+ * contract,
64
+ * to: firstRecipient,
65
+ * quantity: 1n,
66
+ * });
67
+ * const transaction2 = claimTo({
68
+ * contract,
69
+ * to: secondRecipient,
70
+ * quantity: 1n,
71
+ * });
72
+ *
73
+ *
74
+ * // enqueue the transactions in a batch
75
+ * const { transactionId } = await myServerWallet.enqueueBatchTransaction({
76
+ * transactions: [transaction1, transaction2],
77
+ * });
78
+ * ```
79
+ *
80
+ * ### Polling for the batch of transactions to be submitted onchain
81
+ * ```ts
82
+ * // optionally poll for the transaction to be submitted onchain
83
+ * const { transactionHash } = await Engine.waitForTransactionHash({
84
+ * client,
85
+ * transactionId,
86
+ * });
87
+ * console.log("Transaction sent:", transactionHash);
88
+ * ```
89
+ *
59
90
  * ### Getting the execution status of a transaction
60
91
  * ```ts
61
92
  * const executionResult = await Engine.getTransactionStatus({
@@ -82,15 +113,27 @@ function serverWallet(options) {
82
113
  };
83
114
  };
84
115
  const enqueueTx = async (transaction) => {
116
+ if (transaction.length === 0) {
117
+ throw new Error("No transactions to enqueue");
118
+ }
119
+ const firstTransaction = transaction[0];
120
+ if (!firstTransaction) {
121
+ throw new Error("No transactions to enqueue");
122
+ }
123
+ const chainId = firstTransaction.chainId;
124
+ // Validate all transactions are on the same chain
125
+ for (let i = 1; i < transaction.length; i++) {
126
+ if (transaction[i]?.chainId !== chainId) {
127
+ throw new Error(`All transactions in batch must be on the same chain. Expected ${chainId}, got ${transaction[i]?.chainId} at index ${i}`);
128
+ }
129
+ }
85
130
  const body = {
86
- executionOptions: getExecutionOptions(transaction.chainId),
87
- params: [
88
- {
89
- to: transaction.to ?? undefined,
90
- data: transaction.data,
91
- value: transaction.value?.toString(),
92
- },
93
- ],
131
+ executionOptions: getExecutionOptions(chainId),
132
+ params: transaction.map((t) => ({
133
+ to: t.to ?? undefined,
134
+ data: t.data,
135
+ value: t.value?.toString(),
136
+ })),
94
137
  };
95
138
  const result = await (0, engine_1.sendTransaction)({
96
139
  baseUrl: (0, domains_js_1.getThirdwebBaseUrl)("engineCloud"),
@@ -106,11 +149,7 @@ function serverWallet(options) {
106
149
  if (!data) {
107
150
  throw new Error("No data returned from engine");
108
151
  }
109
- const transactionId = data.transactions?.[0]?.id;
110
- if (!transactionId) {
111
- throw new Error("No transactionId returned from engine");
112
- }
113
- return transactionId;
152
+ return data.transactions.map((t) => t.id);
114
153
  };
115
154
  return {
116
155
  address,
@@ -138,12 +177,53 @@ function serverWallet(options) {
138
177
  value: value ?? undefined,
139
178
  };
140
179
  }
141
- const transactionId = await enqueueTx(serializedTransaction);
180
+ const transactionIds = await enqueueTx([serializedTransaction]);
181
+ const transactionId = transactionIds[0];
182
+ if (!transactionId) {
183
+ throw new Error("No transactionId returned from engine");
184
+ }
185
+ return { transactionId };
186
+ },
187
+ enqueueBatchTransaction: async (args) => {
188
+ const serializedTransactions = [];
189
+ for (const transaction of args.transactions) {
190
+ const [to, data, value] = await Promise.all([
191
+ transaction.to ? (0, resolve_promised_value_js_1.resolvePromisedValue)(transaction.to) : null,
192
+ (0, encode_js_1.encode)(transaction),
193
+ transaction.value ? (0, resolve_promised_value_js_1.resolvePromisedValue)(transaction.value) : null,
194
+ ]);
195
+ serializedTransactions.push({
196
+ chainId: transaction.chain.id,
197
+ data,
198
+ to: to ?? undefined,
199
+ value: value ?? undefined,
200
+ });
201
+ }
202
+ const transactionIds = await enqueueTx(serializedTransactions);
203
+ const transactionId = transactionIds[0];
204
+ if (!transactionId) {
205
+ throw new Error("No transactionId returned from engine");
206
+ }
142
207
  return { transactionId };
143
208
  },
144
209
  sendTransaction: async (transaction) => {
145
- const transactionId = await enqueueTx(transaction);
146
- return (0, get_status_js_1.waitForTransactionHash)({
210
+ const transactionIds = await enqueueTx([transaction]);
211
+ const transactionId = transactionIds[0];
212
+ if (!transactionId) {
213
+ throw new Error("No transactionId returned from engine");
214
+ }
215
+ return (0, wait_for_tx_hash_js_1.waitForTransactionHash)({
216
+ client,
217
+ transactionId,
218
+ });
219
+ },
220
+ sendBatchTransaction: async (transactions) => {
221
+ const transactionIds = await enqueueTx(transactions);
222
+ const transactionId = transactionIds[0];
223
+ if (!transactionId) {
224
+ throw new Error("No transactionId returned from engine");
225
+ }
226
+ return (0, wait_for_tx_hash_js_1.waitForTransactionHash)({
147
227
  client,
148
228
  transactionId,
149
229
  });
@@ -1 +1 @@
1
- {"version":3,"file":"server-wallet.js","sourceRoot":"","sources":["../../../src/engine/server-wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-wallet.js","sourceRoot":"","sources":["../../../src/engine/server-wallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitForTransactionHash = waitForTransactionHash;
4
+ const viem_1 = require("viem");
5
+ const get_status_js_1 = require("./get-status.js");
6
+ /**
7
+ * Wait for a transaction to be submitted onchain and return the transaction hash.
8
+ * @param args - The arguments for the transaction.
9
+ * @param args.client - The thirdweb client to use.
10
+ * @param args.transactionId - The id of the transaction to wait for.
11
+ * @param args.timeoutInSeconds - The timeout in seconds.
12
+ * @engine
13
+ * @example
14
+ * ```ts
15
+ * import { Engine } from "thirdweb";
16
+ *
17
+ * const { transactionHash } = await Engine.waitForTransactionHash({
18
+ * client,
19
+ * transactionId, // the transaction id returned from enqueueTransaction
20
+ * });
21
+ * ```
22
+ */
23
+ async function waitForTransactionHash(args) {
24
+ const startTime = Date.now();
25
+ const TIMEOUT_IN_MS = args.timeoutInSeconds
26
+ ? args.timeoutInSeconds * 1000
27
+ : 5 * 60 * 1000; // 5 minutes in milliseconds
28
+ while (Date.now() - startTime < TIMEOUT_IN_MS) {
29
+ const executionResult = await (0, get_status_js_1.getTransactionStatus)(args);
30
+ const status = executionResult.status;
31
+ switch (status) {
32
+ case "FAILED": {
33
+ throw new Error(`Transaction failed: ${executionResult.error || "Unknown error"}`);
34
+ }
35
+ case "CONFIRMED": {
36
+ const onchainStatus = executionResult && "onchainStatus" in executionResult
37
+ ? executionResult.onchainStatus
38
+ : null;
39
+ if (onchainStatus === "REVERTED") {
40
+ const revertData = "revertData" in executionResult
41
+ ? executionResult.revertData
42
+ : undefined;
43
+ throw new Error(`Transaction reverted: ${revertData?.errorName || "unknown error"} ${revertData?.errorArgs ? (0, viem_1.stringify)(revertData.errorArgs) : ""} - ${executionResult.transactionHash ? executionResult.transactionHash : ""}`);
44
+ }
45
+ return {
46
+ transactionHash: executionResult.transactionHash,
47
+ client: args.client,
48
+ chain: executionResult.chain,
49
+ };
50
+ }
51
+ default: {
52
+ // wait for the transaction to be confirmed
53
+ await new Promise((resolve) => setTimeout(resolve, 1000));
54
+ }
55
+ }
56
+ }
57
+ throw new Error(`Transaction timed out after ${TIMEOUT_IN_MS / 1000} seconds`);
58
+ }
59
+ //# sourceMappingURL=wait-for-tx-hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-for-tx-hash.js","sourceRoot":"","sources":["../../../src/engine/wait-for-tx-hash.ts"],"names":[],"mappings":";;AAyBA,wDAiDC;AA1ED,+BAAiC;AAMjC,mDAAuD;AAEvD;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,sBAAsB,CAAC,IAI5C;IACC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB;QACzC,CAAC,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI;QAC9B,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,4BAA4B;IAE/C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,aAAa,EAAE,CAAC;QAC9C,MAAM,eAAe,GAAG,MAAM,IAAA,oCAAoB,EAAC,IAAI,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QAEtC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,KAAK,CACb,uBAAuB,eAAe,CAAC,KAAK,IAAI,eAAe,EAAE,CAClE,CAAC;YACJ,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,aAAa,GACjB,eAAe,IAAI,eAAe,IAAI,eAAe;oBACnD,CAAC,CAAC,eAAe,CAAC,aAAa;oBAC/B,CAAC,CAAC,IAAI,CAAC;gBACX,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;oBACjC,MAAM,UAAU,GACd,YAAY,IAAI,eAAe;wBAC7B,CAAC,CAAC,eAAe,CAAC,UAAU;wBAC5B,CAAC,CAAC,SAAS,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,yBAAyB,UAAU,EAAE,SAAS,IAAI,eAAe,IAAI,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,IAAA,gBAAS,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAChN,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,eAAe,EAAE,eAAe,CAAC,eAAsB;oBACvD,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,eAAe,CAAC,KAAK;iBAC7B,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,2CAA2C;gBAC3C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CACb,+BAA+B,aAAa,GAAG,IAAI,UAAU,CAC9D,CAAC;AACJ,CAAC"}
@@ -200,7 +200,12 @@ async function transformNFTModel(nfts, client, ownerAddress) {
200
200
  chainId: contract?.chain_id ?? 0,
201
201
  });
202
202
  }
203
- return parsedNft;
203
+ return {
204
+ ...parsedNft,
205
+ ...(contract?.type === "erc1155"
206
+ ? { quantityOwned: balance ? BigInt(balance) : undefined }
207
+ : {}),
208
+ };
204
209
  }));
205
210
  }
206
211
  // biome-ignore lint/suspicious/noExplicitAny: this should be fixed in the API
@@ -1 +1 @@
1
- {"version":3,"file":"get-nfts.js","sourceRoot":"","sources":["../../../src/insight/get-nfts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-nfts.js","sourceRoot":"","sources":["../../../src/insight/get-nfts.ts"],"names":[],"mappings":"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"}