thirdweb 5.34.0-nightly-325416ea19905901f30e795cbf93cb8a085be02f-20240708203622 → 5.34.0-nightly-3f0291def5ac8b5006a75e8c1212d4f287647d05-20240709000342
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.
- package/dist/cjs/exports/wallets/smart.js +10 -1
- package/dist/cjs/exports/wallets/smart.js.map +1 -1
- package/dist/cjs/react/core/hooks/others/useChainQuery.js +44 -0
- package/dist/cjs/react/core/hooks/others/useChainQuery.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/NetworkSelector.js +20 -4
- package/dist/cjs/react/web/ui/ConnectWallet/NetworkSelector.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/smart/index.js +19 -9
- package/dist/cjs/wallets/smart/index.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/bundler.js +57 -9
- package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/calls.js +31 -21
- package/dist/cjs/wallets/smart/lib/calls.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/paymaster.js +5 -6
- package/dist/cjs/wallets/smart/lib/paymaster.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/userop.js +45 -21
- package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
- package/dist/esm/exports/wallets/smart.js +3 -1
- package/dist/esm/exports/wallets/smart.js.map +1 -1
- package/dist/esm/react/core/hooks/others/useChainQuery.js +43 -1
- package/dist/esm/react/core/hooks/others/useChainQuery.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/NetworkSelector.js +21 -5
- package/dist/esm/react/web/ui/ConnectWallet/NetworkSelector.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/smart/index.js +19 -9
- package/dist/esm/wallets/smart/index.js.map +1 -1
- package/dist/esm/wallets/smart/lib/bundler.js +56 -8
- package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/esm/wallets/smart/lib/calls.js +31 -21
- package/dist/esm/wallets/smart/lib/calls.js.map +1 -1
- package/dist/esm/wallets/smart/lib/paymaster.js +5 -6
- package/dist/esm/wallets/smart/lib/paymaster.js.map +1 -1
- package/dist/esm/wallets/smart/lib/userop.js +46 -22
- package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
- package/dist/types/exports/wallets/smart.d.ts +3 -1
- package/dist/types/exports/wallets/smart.d.ts.map +1 -1
- package/dist/types/react/core/hooks/others/useChainQuery.d.ts +10 -0
- package/dist/types/react/core/hooks/others/useChainQuery.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/NetworkSelector.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/smart/index.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/bundler.d.ts +53 -5
- package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/calls.d.ts +25 -7
- package/dist/types/wallets/smart/lib/calls.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/paymaster.d.ts +7 -2
- package/dist/types/wallets/smart/lib/paymaster.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/userop.d.ts +15 -4
- package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
- package/dist/types/wallets/smart/types.d.ts +4 -2
- package/dist/types/wallets/smart/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/exports/wallets/smart.ts +14 -1
- package/src/react/core/hooks/others/useChainQuery.ts +47 -1
- package/src/react/web/ui/ConnectWallet/NetworkSelector.tsx +27 -4
- package/src/version.ts +1 -1
- package/src/wallets/smart/index.ts +19 -9
- package/src/wallets/smart/lib/bundler.ts +56 -9
- package/src/wallets/smart/lib/calls.ts +67 -28
- package/src/wallets/smart/lib/paymaster.ts +12 -13
- package/src/wallets/smart/lib/userop.ts +74 -30
- package/src/wallets/smart/types.ts +6 -6
@@ -7,7 +7,19 @@ import { stringify } from "../../../utils/json.js";
|
|
7
7
|
import { DEBUG, ENTRYPOINT_ADDRESS_v0_6, MANAGED_ACCOUNT_GAS_BUFFER, getDefaultBundlerUrl, } from "./constants.js";
|
8
8
|
import { hexlifyUserOp } from "./utils.js";
|
9
9
|
/**
|
10
|
-
*
|
10
|
+
* Bundle a user operation.
|
11
|
+
* @param args - The options for bundling a user operation.
|
12
|
+
* @returns The bundle hash of the user operation.
|
13
|
+
* @example
|
14
|
+
* ```ts
|
15
|
+
* import { bundleUserOp } from "thirdweb/wallets/smart";
|
16
|
+
*
|
17
|
+
* const userOpHash = await bundleUserOp({
|
18
|
+
* userOp,
|
19
|
+
* options,
|
20
|
+
* });
|
21
|
+
* ```
|
22
|
+
* @walletUtils
|
11
23
|
*/
|
12
24
|
export async function bundleUserOp(args) {
|
13
25
|
return sendBundlerRequest({
|
@@ -15,12 +27,24 @@ export async function bundleUserOp(args) {
|
|
15
27
|
operation: "eth_sendUserOperation",
|
16
28
|
params: [
|
17
29
|
hexlifyUserOp(args.userOp),
|
18
|
-
args.options.
|
30
|
+
args.options.entrypointAddress ?? ENTRYPOINT_ADDRESS_v0_6,
|
19
31
|
],
|
20
32
|
});
|
21
33
|
}
|
22
34
|
/**
|
23
|
-
*
|
35
|
+
* Estimate the gas cost of a user operation.
|
36
|
+
* @param args - The options for estimating the gas cost of a user operation.
|
37
|
+
* @returns The estimated gas cost of the user operation.
|
38
|
+
* @example
|
39
|
+
* ```ts
|
40
|
+
* import { estimateUserOpGas } from "thirdweb/wallets/smart";
|
41
|
+
*
|
42
|
+
* const gasCost = await estimateUserOpGas({
|
43
|
+
* userOp,
|
44
|
+
* options,
|
45
|
+
* });
|
46
|
+
* ```
|
47
|
+
* @walletUtils
|
24
48
|
*/
|
25
49
|
export async function estimateUserOpGas(args) {
|
26
50
|
const res = await sendBundlerRequest({
|
@@ -28,7 +52,7 @@ export async function estimateUserOpGas(args) {
|
|
28
52
|
operation: "eth_estimateUserOperationGas",
|
29
53
|
params: [
|
30
54
|
hexlifyUserOp(args.userOp),
|
31
|
-
args.options.
|
55
|
+
args.options.entrypointAddress ?? ENTRYPOINT_ADDRESS_v0_6,
|
32
56
|
],
|
33
57
|
});
|
34
58
|
// add gas buffer for managed account factory delegate calls
|
@@ -40,9 +64,20 @@ export async function estimateUserOpGas(args) {
|
|
40
64
|
};
|
41
65
|
}
|
42
66
|
/**
|
43
|
-
*
|
67
|
+
* Get the gas fees of a user operation.
|
68
|
+
* @param args - The options for getting the gas price of a user operation.
|
69
|
+
* @returns The gas price of the user operation.
|
70
|
+
* @example
|
71
|
+
* ```ts
|
72
|
+
* import { getUserOpGasPrice } from "thirdweb/wallets/smart";
|
73
|
+
*
|
74
|
+
* const fees = await getUserOpGasPrice({
|
75
|
+
* options,
|
76
|
+
* });
|
77
|
+
* ```
|
78
|
+
* @walletUtils
|
44
79
|
*/
|
45
|
-
export async function
|
80
|
+
export async function getUserOpGasFees(args) {
|
46
81
|
const res = await sendBundlerRequest({
|
47
82
|
...args,
|
48
83
|
operation: "thirdweb_getUserOperationGasPrice",
|
@@ -54,7 +89,20 @@ export async function getUserOpGasPrice(args) {
|
|
54
89
|
};
|
55
90
|
}
|
56
91
|
/**
|
57
|
-
*
|
92
|
+
* Get the receipt of a user operation.
|
93
|
+
* @param args - The options for getting the receipt of a user operation.
|
94
|
+
* @returns The receipt of the user operation.
|
95
|
+
* @example
|
96
|
+
* ```ts
|
97
|
+
* import { getUserOpReceipt } from "thirdweb/wallets/smart";
|
98
|
+
*
|
99
|
+
* const receipt = await getUserOpReceipt({
|
100
|
+
* client,
|
101
|
+
* chain,
|
102
|
+
* userOpHash,
|
103
|
+
* });
|
104
|
+
* ```
|
105
|
+
* @walletUtils
|
58
106
|
*/
|
59
107
|
export async function getUserOpReceipt(args) {
|
60
108
|
const res = await sendBundlerRequest({
|
@@ -116,7 +164,7 @@ async function sendBundlerRequest(args) {
|
|
116
164
|
if (DEBUG) {
|
117
165
|
console.debug(`>>> sending ${operation} with payload:`, params);
|
118
166
|
}
|
119
|
-
const bundlerUrl = options.
|
167
|
+
const bundlerUrl = options.bundlerUrl ?? getDefaultBundlerUrl(options.chain);
|
120
168
|
const fetchWithHeaders = getClientFetch(options.client);
|
121
169
|
const response = await fetchWithHeaders(bundlerUrl, {
|
122
170
|
method: "POST",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,iBAAiB,EAAE,MAAM,MAAM,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,8BAA8B,EAAE,MAAM,2FAA2F,CAAC;AAE3I,OAAO,EAAY,WAAW,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAQnD,OAAO,EACL,KAAK,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C
|
1
|
+
{"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"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"}
|
@@ -2,20 +2,33 @@ import { prepareContractCall } from "../../../transaction/prepare-contract-call.
|
|
2
2
|
import { readContract } from "../../../transaction/read-contract.js";
|
3
3
|
import { stringToHex } from "../../../utils/encoding/hex.js";
|
4
4
|
/**
|
5
|
-
*
|
5
|
+
* Predict the address of a smart account.
|
6
|
+
* @param args - The options for predicting the address of a smart account.
|
7
|
+
* @returns The predicted address of the smart account.
|
8
|
+
* @example
|
9
|
+
* ```ts
|
10
|
+
* import { predictAddress } from "thirdweb/wallets/smart";
|
11
|
+
*
|
12
|
+
* const predictedAddress = await predictAddress({
|
13
|
+
* factoryContract,
|
14
|
+
* adminAddress,
|
15
|
+
* accountSalt,
|
16
|
+
* });
|
17
|
+
* ```
|
18
|
+
* @walletUtils
|
6
19
|
*/
|
7
|
-
export async function predictAddress(
|
8
|
-
|
9
|
-
|
20
|
+
export async function predictAddress(args) {
|
21
|
+
const { factoryContract, predictAddressOverride: predictAddress, adminAddress, accountSalt, accountAddress, } = args;
|
22
|
+
if (predictAddress) {
|
23
|
+
return predictAddress(factoryContract);
|
10
24
|
}
|
11
|
-
if (
|
12
|
-
return
|
25
|
+
if (accountAddress) {
|
26
|
+
return accountAddress;
|
13
27
|
}
|
14
|
-
const adminAddress = options.personalAccountAddress;
|
15
28
|
if (!adminAddress) {
|
16
29
|
throw new Error("Account address is required to predict the smart wallet address.");
|
17
30
|
}
|
18
|
-
const extraData = stringToHex(
|
31
|
+
const extraData = stringToHex(accountSalt ?? "");
|
19
32
|
return readContract({
|
20
33
|
contract: factoryContract,
|
21
34
|
method: "function getAddress(address, bytes) returns (address)",
|
@@ -26,26 +39,23 @@ export async function predictAddress(factoryContract, options) {
|
|
26
39
|
* @internal
|
27
40
|
*/
|
28
41
|
export function prepareCreateAccount(args) {
|
29
|
-
const { factoryContract,
|
30
|
-
if (
|
31
|
-
return
|
42
|
+
const { adminAddress, factoryContract, createAccountOverride: createAccount, accountSalt, } = args;
|
43
|
+
if (createAccount) {
|
44
|
+
return createAccount(factoryContract);
|
32
45
|
}
|
33
46
|
return prepareContractCall({
|
34
47
|
contract: factoryContract,
|
35
48
|
method: "function createAccount(address, bytes) returns (address)",
|
36
|
-
params: [
|
37
|
-
options.personalAccount.address,
|
38
|
-
stringToHex(options.overrides?.accountSalt ?? ""),
|
39
|
-
],
|
49
|
+
params: [adminAddress, stringToHex(accountSalt ?? "")],
|
40
50
|
});
|
41
51
|
}
|
42
52
|
/**
|
43
53
|
* @internal
|
44
54
|
*/
|
45
55
|
export function prepareExecute(args) {
|
46
|
-
const { accountContract,
|
47
|
-
if (
|
48
|
-
return
|
56
|
+
const { accountContract, transaction, executeOverride: execute } = args;
|
57
|
+
if (execute) {
|
58
|
+
return execute(accountContract, transaction);
|
49
59
|
}
|
50
60
|
return prepareContractCall({
|
51
61
|
contract: accountContract,
|
@@ -61,9 +71,9 @@ export function prepareExecute(args) {
|
|
61
71
|
* @internal
|
62
72
|
*/
|
63
73
|
export function prepareBatchExecute(args) {
|
64
|
-
const { accountContract,
|
65
|
-
if (
|
66
|
-
return
|
74
|
+
const { accountContract, transactions, executeBatchOverride: executeBatch, } = args;
|
75
|
+
if (executeBatch) {
|
76
|
+
return executeBatch(accountContract, transactions);
|
67
77
|
}
|
68
78
|
return prepareContractCall({
|
69
79
|
contract: accountContract,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/calls.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;
|
1
|
+
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/calls.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAG7D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAQpC;IACC,MAAM,EACJ,eAAe,EACf,sBAAsB,EAAE,cAAc,EACtC,YAAY,EACZ,WAAW,EACX,cAAc,GACf,GAAG,IAAI,CAAC;IACT,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC,eAAe,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACjD,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE,uDAAuD;QAC/D,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAOpC;IACC,MAAM,EACJ,YAAY,EACZ,eAAe,EACf,qBAAqB,EAAE,aAAa,EACpC,WAAW,GACZ,GAAG,IAAI,CAAC;IACT,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC,eAAe,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE,0DAA0D;QAClE,MAAM,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;KACvD,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAO9B;IACC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACxE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE,2CAA2C;QACnD,MAAM,EAAE;YACN,WAAW,CAAC,EAAE,IAAI,EAAE;YACpB,WAAW,CAAC,KAAK,IAAI,EAAE;YACvB,WAAW,CAAC,IAAI,IAAI,IAAI;SACzB;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAOnC;IACC,MAAM,EACJ,eAAe,EACf,YAAY,EACZ,oBAAoB,EAAE,YAAY,GACnC,GAAG,IAAI,CAAC;IACT,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE,sDAAsD;QAC9D,MAAM,EAAE;YACN,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;YACrC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YACxC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC;SAC1C;KACF,CAAC,CAAC;AACL,CAAC"}
|
@@ -7,16 +7,15 @@ import { hexlifyUserOp } from "./utils.js";
|
|
7
7
|
* @internal
|
8
8
|
*/
|
9
9
|
export async function getPaymasterAndData(args) {
|
10
|
-
const { userOp,
|
11
|
-
if (
|
12
|
-
return
|
10
|
+
const { userOp, paymasterOverride, client, chain, entrypointAddress } = args;
|
11
|
+
if (paymasterOverride) {
|
12
|
+
return paymasterOverride(userOp);
|
13
13
|
}
|
14
14
|
const headers = {
|
15
15
|
"Content-Type": "application/json",
|
16
16
|
};
|
17
|
-
const
|
18
|
-
const
|
19
|
-
const entrypoint = options.overrides?.entrypointAddress ?? ENTRYPOINT_ADDRESS_v0_6;
|
17
|
+
const paymasterUrl = getDefaultPaymasterUrl(chain);
|
18
|
+
const entrypoint = entrypointAddress ?? ENTRYPOINT_ADDRESS_v0_6;
|
20
19
|
// Ask the paymaster to sign the transaction and return a valid paymasterAndData value.
|
21
20
|
const fetchWithHeaders = getClientFetch(client);
|
22
21
|
const response = await fetchWithHeaders(paymasterUrl, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"paymaster.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/paymaster.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"paymaster.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/paymaster.ts"],"names":[],"mappings":"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"}
|
@@ -7,7 +7,7 @@ import { hexToBytes } from "../../../utils/encoding/to-bytes.js";
|
|
7
7
|
import { isThirdwebUrl } from "../../../utils/fetch.js";
|
8
8
|
import { keccak256 } from "../../../utils/hashing/keccak256.js";
|
9
9
|
import { resolvePromisedValue } from "../../../utils/promise/resolve-promised-value.js";
|
10
|
-
import { estimateUserOpGas,
|
10
|
+
import { estimateUserOpGas, getUserOpGasFees, getUserOpReceipt, } from "./bundler.js";
|
11
11
|
import { prepareCreateAccount } from "./calls.js";
|
12
12
|
import { DUMMY_SIGNATURE, ENTRYPOINT_ADDRESS_v0_6, getDefaultBundlerUrl, } from "./constants.js";
|
13
13
|
import { getPaymasterAndData } from "./paymaster.js";
|
@@ -54,22 +54,38 @@ export async function waitForUserOpReceipt(args) {
|
|
54
54
|
*
|
55
55
|
* const userOp = await createUnsignedUserOp({
|
56
56
|
* transaction,
|
57
|
-
*
|
57
|
+
* accountContract,
|
58
|
+
* sponsorGas,
|
59
|
+
* overrides,
|
58
60
|
* });
|
59
61
|
* ```
|
60
62
|
* @walletUtils
|
61
63
|
*/
|
62
64
|
export async function createUnsignedUserOp(args) {
|
63
|
-
const { transaction: executeTx,
|
64
|
-
const
|
65
|
-
const
|
65
|
+
const { transaction: executeTx, accountContract, factoryContract, adminAddress, overrides, sponsorGas, } = args;
|
66
|
+
const chain = executeTx.chain;
|
67
|
+
const client = executeTx.client;
|
68
|
+
const isDeployed = await isContractDeployed(accountContract);
|
69
|
+
const initCode = isDeployed
|
70
|
+
? "0x"
|
71
|
+
: await getAccountInitCode({
|
72
|
+
factoryContract: factoryContract,
|
73
|
+
adminAddress,
|
74
|
+
accountSalt: overrides?.accountSalt,
|
75
|
+
createAccountOverride: overrides?.createAccount,
|
76
|
+
});
|
66
77
|
const callData = await encode(executeTx);
|
78
|
+
const bundlerOptions = {
|
79
|
+
client,
|
80
|
+
chain,
|
81
|
+
entrypointAddress: overrides?.entrypointAddress,
|
82
|
+
};
|
67
83
|
let { maxFeePerGas, maxPriorityFeePerGas } = executeTx;
|
68
|
-
const bundlerUrl =
|
84
|
+
const bundlerUrl = overrides?.bundlerUrl ?? getDefaultBundlerUrl(chain);
|
69
85
|
if (isThirdwebUrl(bundlerUrl)) {
|
70
86
|
// get gas prices from bundler
|
71
|
-
const bundlerGasPrice = await
|
72
|
-
options,
|
87
|
+
const bundlerGasPrice = await getUserOpGasFees({
|
88
|
+
options: bundlerOptions,
|
73
89
|
});
|
74
90
|
maxFeePerGas = bundlerGasPrice.maxFeePerGas;
|
75
91
|
maxPriorityFeePerGas = bundlerGasPrice.maxPriorityFeePerGas;
|
@@ -87,7 +103,7 @@ export async function createUnsignedUserOp(args) {
|
|
87
103
|
}
|
88
104
|
else {
|
89
105
|
// Fallback to RPC gas prices if no explicit values provided
|
90
|
-
const feeData = await getDefaultGasOverrides(
|
106
|
+
const feeData = await getDefaultGasOverrides(client, chain);
|
91
107
|
// Still check for explicit values in case one is provided and not the other
|
92
108
|
maxPriorityFeePerGas =
|
93
109
|
resolvedMaxPriorityFeePerGas ?? feeData.maxPriorityFeePerGas ?? 0n;
|
@@ -97,7 +113,7 @@ export async function createUnsignedUserOp(args) {
|
|
97
113
|
// const nonce = BigInt(transaction.nonce || randomNonce());
|
98
114
|
const nonce = randomNonce(); // FIXME getNonce should be overrideable by the wallet
|
99
115
|
const partialOp = {
|
100
|
-
sender:
|
116
|
+
sender: accountContract.address,
|
101
117
|
nonce,
|
102
118
|
initCode,
|
103
119
|
callData,
|
@@ -109,10 +125,13 @@ export async function createUnsignedUserOp(args) {
|
|
109
125
|
paymasterAndData: "0x",
|
110
126
|
signature: DUMMY_SIGNATURE,
|
111
127
|
};
|
112
|
-
if (
|
128
|
+
if (sponsorGas) {
|
113
129
|
const paymasterResult = await getPaymasterAndData({
|
114
130
|
userOp: partialOp,
|
115
|
-
|
131
|
+
chain,
|
132
|
+
client,
|
133
|
+
entrypointAddress: overrides?.entrypointAddress,
|
134
|
+
paymasterOverride: overrides?.paymaster,
|
116
135
|
});
|
117
136
|
const paymasterAndData = paymasterResult.paymasterAndData;
|
118
137
|
if (paymasterAndData && paymasterAndData !== "0x") {
|
@@ -130,7 +149,7 @@ export async function createUnsignedUserOp(args) {
|
|
130
149
|
// otherwise fallback to bundler for gas limits
|
131
150
|
const estimates = await estimateUserOpGas({
|
132
151
|
userOp: partialOp,
|
133
|
-
options,
|
152
|
+
options: bundlerOptions,
|
134
153
|
});
|
135
154
|
partialOp.callGasLimit = estimates.callGasLimit;
|
136
155
|
partialOp.verificationGasLimit = estimates.verificationGasLimit;
|
@@ -139,7 +158,10 @@ export async function createUnsignedUserOp(args) {
|
|
139
158
|
if (paymasterAndData && paymasterAndData !== "0x") {
|
140
159
|
const paymasterResult2 = await getPaymasterAndData({
|
141
160
|
userOp: partialOp,
|
142
|
-
|
161
|
+
chain,
|
162
|
+
client,
|
163
|
+
entrypointAddress: overrides?.entrypointAddress,
|
164
|
+
paymasterOverride: overrides?.paymaster,
|
143
165
|
});
|
144
166
|
if (paymasterResult2.paymasterAndData &&
|
145
167
|
paymasterResult2.paymasterAndData !== "0x") {
|
@@ -152,7 +174,7 @@ export async function createUnsignedUserOp(args) {
|
|
152
174
|
// not gasless, so we just need to estimate gas limits
|
153
175
|
const estimates = await estimateUserOpGas({
|
154
176
|
userOp: partialOp,
|
155
|
-
options,
|
177
|
+
options: bundlerOptions,
|
156
178
|
});
|
157
179
|
partialOp.callGasLimit = estimates.callGasLimit;
|
158
180
|
partialOp.verificationGasLimit = estimates.verificationGasLimit;
|
@@ -181,14 +203,14 @@ export async function createUnsignedUserOp(args) {
|
|
181
203
|
* @walletUtils
|
182
204
|
*/
|
183
205
|
export async function signUserOp(args) {
|
184
|
-
const { userOp,
|
206
|
+
const { userOp, chain, entrypointAddress, adminAccount } = args;
|
185
207
|
const userOpHash = getUserOpHash({
|
186
208
|
userOp,
|
187
|
-
entryPoint:
|
188
|
-
chainId:
|
209
|
+
entryPoint: entrypointAddress || ENTRYPOINT_ADDRESS_v0_6,
|
210
|
+
chainId: chain.id,
|
189
211
|
});
|
190
|
-
if (
|
191
|
-
const signature = await
|
212
|
+
if (adminAccount.signMessage) {
|
213
|
+
const signature = await adminAccount.signMessage({
|
192
214
|
message: {
|
193
215
|
raw: hexToBytes(userOpHash),
|
194
216
|
},
|
@@ -201,10 +223,12 @@ export async function signUserOp(args) {
|
|
201
223
|
throw new Error("signMessage not implemented in signingAccount");
|
202
224
|
}
|
203
225
|
async function getAccountInitCode(options) {
|
204
|
-
const { factoryContract } = options;
|
226
|
+
const { factoryContract, adminAddress, accountSalt, createAccountOverride } = options;
|
205
227
|
const deployTx = prepareCreateAccount({
|
206
228
|
factoryContract,
|
207
|
-
|
229
|
+
adminAddress,
|
230
|
+
accountSalt,
|
231
|
+
createAccountOverride,
|
208
232
|
});
|
209
233
|
return concat([factoryContract.address, await encode(deployTx)]);
|
210
234
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"userop.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/userop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"userop.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/userop.ts"],"names":[],"mappings":"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"}
|
@@ -1,5 +1,7 @@
|
|
1
1
|
export { smartWallet } from "../../wallets/smart/smart-wallet.js";
|
2
|
-
export { waitForUserOpReceipt } from "../../wallets/smart/lib/userop.js";
|
2
|
+
export { waitForUserOpReceipt, createUnsignedUserOp, signUserOp, } from "../../wallets/smart/lib/userop.js";
|
3
|
+
export { getUserOpReceipt, bundleUserOp, getUserOpGasFees, estimateUserOpGas, } from "../../wallets/smart/lib/bundler.js";
|
4
|
+
export { predictAddress } from "../../wallets/smart/lib/calls.js";
|
3
5
|
export type { SmartWalletConnectionOptions, SmartWalletOptions, UserOperation, PaymasterResult, } from "../../wallets/smart/types.js";
|
4
6
|
export { ENTRYPOINT_ADDRESS_v0_6, DEFAULT_ACCOUNT_FACTORY, } from "../../wallets/smart/lib/constants.js";
|
5
7
|
//# sourceMappingURL=smart.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"smart.d.ts","sourceRoot":"","sources":["../../../../src/exports/wallets/smart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,OAAO,
|
1
|
+
{"version":3,"file":"smart.d.ts","sourceRoot":"","sources":["../../../../src/exports/wallets/smart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,GACX,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,YAAY,EACV,4BAA4B,EAC5B,kBAAkB,EAClB,aAAa,EACb,eAAe,GAChB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,sCAAsC,CAAC"}
|
@@ -23,4 +23,14 @@ export declare function useChainExplorers(chain?: Chain): {
|
|
23
23
|
}[];
|
24
24
|
isLoading: boolean;
|
25
25
|
};
|
26
|
+
/**
|
27
|
+
* @internal
|
28
|
+
*/
|
29
|
+
export declare function useChainQuery(chain?: Chain): import("@tanstack/react-query").UseQueryResult<import("../../../../chains/types.js").ChainMetadata, Error>;
|
30
|
+
/**
|
31
|
+
* @param chains - array of `Chains`
|
32
|
+
* @param maxConcurrency - maximum number of concurrent requests to make
|
33
|
+
* @internal
|
34
|
+
*/
|
35
|
+
export declare function useChainsQuery(chains: Chain[], maxConcurrency: number): import("@tanstack/react-query").UseQueryResult<import("../../../../chains/types.js").ChainMetadata, Error>[];
|
26
36
|
//# sourceMappingURL=useChainQuery.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useChainQuery.d.ts","sourceRoot":"","sources":["../../../../../../src/react/core/hooks/others/useChainQuery.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"useChainQuery.d.ts","sourceRoot":"","sources":["../../../../../../src/react/core/hooks/others/useChainQuery.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAOzD,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK;;;EAqBzC;AAED,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,KAAK;;;EAsB5C;AAED,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,KAAK;;;EA0B5C;AAED,wBAAgB,cAAc,CAAC,KAAK,CAAC,EAAE,KAAK;;;EAuB3C;AAED,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,KAAK;;;;;;;EAsB9C;AAUD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,8GAU1C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,gHAcrE"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NetworkSelector.d.ts","sourceRoot":"","sources":["../../../../../../src/react/web/ui/ConnectWallet/NetworkSelector.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;
|
1
|
+
{"version":3,"file":"NetworkSelector.d.ts","sourceRoot":"","sources":["../../../../../../src/react/web/ui/ConnectWallet/NetworkSelector.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAKnE,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,sCAAsC,CAAC;AAsB9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,KAAK,yBAAyB,GAAG;IAC/B;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IACb;;OAEG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAE/B;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;IAElD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAElC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC;AAEF,KAAK,2BAA2B,GAAG;IACjC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEF;;GAEG;AAEH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,8CAyUxE;AAqJD,eAAO,MAAM,WAAW;WACf,KAAK;aACH,MAAM,IAAI;gBACP,OAAO;qBACF,OAAO;YAChB,cAAc;mBACP,aAAa;EAmE5B,CAAC;AAiFH;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;IAEjC;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAE/B;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;IAElD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAElC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B;;;;;;;;;;;;;;OAcG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,uBAAuB;kBASrB,8BAA8B;;EA0C/C"}
|
package/dist/types/version.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export declare const version = "5.34.0-nightly-
|
1
|
+
export declare const version = "5.34.0-nightly-3f0291def5ac8b5006a75e8c1212d4f287647d05-20240709000342";
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/wallets/smart/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAUnD,OAAO,KAAK,EACV,OAAO,EAEP,MAAM,EACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,gBAAgB,EAChB,sBAAsB,EACtB,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAwB5B;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,GACvB,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAE3B;AAED;;;GAGG;AACH,eAAO,MAAM,gCAAgC,mCAG1C,CAAC;AAIJ;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,iBAAiB,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAClD,eAAe,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC5C,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/wallets/smart/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAUnD,OAAO,KAAK,EACV,OAAO,EAEP,MAAM,EACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,gBAAgB,EAChB,sBAAsB,EACtB,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAwB5B;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,GACvB,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAE3B;AAED;;;GAGG;AACH,eAAO,MAAM,gCAAgC,mCAG1C,CAAC;AAIJ;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,iBAAiB,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAClD,eAAe,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC5C,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAkE3B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GACtB,OAAO,CAAC,IAAI,CAAC,CAQf"}
|
@@ -3,27 +3,75 @@ import type { TransactionReceipt } from "../../../transaction/types.js";
|
|
3
3
|
import { type Hex } from "../../../utils/encoding/hex.js";
|
4
4
|
import type { BundlerOptions, EstimationResult, GasPriceResult, PmTransactionData, UserOperation } from "../types.js";
|
5
5
|
/**
|
6
|
-
*
|
6
|
+
* Bundle a user operation.
|
7
|
+
* @param args - The options for bundling a user operation.
|
8
|
+
* @returns The bundle hash of the user operation.
|
9
|
+
* @example
|
10
|
+
* ```ts
|
11
|
+
* import { bundleUserOp } from "thirdweb/wallets/smart";
|
12
|
+
*
|
13
|
+
* const userOpHash = await bundleUserOp({
|
14
|
+
* userOp,
|
15
|
+
* options,
|
16
|
+
* });
|
17
|
+
* ```
|
18
|
+
* @walletUtils
|
7
19
|
*/
|
8
20
|
export declare function bundleUserOp(args: {
|
9
21
|
userOp: UserOperation;
|
10
22
|
options: BundlerOptions;
|
11
23
|
}): Promise<Hex>;
|
12
24
|
/**
|
13
|
-
*
|
25
|
+
* Estimate the gas cost of a user operation.
|
26
|
+
* @param args - The options for estimating the gas cost of a user operation.
|
27
|
+
* @returns The estimated gas cost of the user operation.
|
28
|
+
* @example
|
29
|
+
* ```ts
|
30
|
+
* import { estimateUserOpGas } from "thirdweb/wallets/smart";
|
31
|
+
*
|
32
|
+
* const gasCost = await estimateUserOpGas({
|
33
|
+
* userOp,
|
34
|
+
* options,
|
35
|
+
* });
|
36
|
+
* ```
|
37
|
+
* @walletUtils
|
14
38
|
*/
|
15
39
|
export declare function estimateUserOpGas(args: {
|
16
40
|
userOp: UserOperation;
|
17
41
|
options: BundlerOptions;
|
18
42
|
}): Promise<EstimationResult>;
|
19
43
|
/**
|
20
|
-
*
|
44
|
+
* Get the gas fees of a user operation.
|
45
|
+
* @param args - The options for getting the gas price of a user operation.
|
46
|
+
* @returns The gas price of the user operation.
|
47
|
+
* @example
|
48
|
+
* ```ts
|
49
|
+
* import { getUserOpGasPrice } from "thirdweb/wallets/smart";
|
50
|
+
*
|
51
|
+
* const fees = await getUserOpGasPrice({
|
52
|
+
* options,
|
53
|
+
* });
|
54
|
+
* ```
|
55
|
+
* @walletUtils
|
21
56
|
*/
|
22
|
-
export declare function
|
57
|
+
export declare function getUserOpGasFees(args: {
|
23
58
|
options: BundlerOptions;
|
24
59
|
}): Promise<GasPriceResult>;
|
25
60
|
/**
|
26
|
-
*
|
61
|
+
* Get the receipt of a user operation.
|
62
|
+
* @param args - The options for getting the receipt of a user operation.
|
63
|
+
* @returns The receipt of the user operation.
|
64
|
+
* @example
|
65
|
+
* ```ts
|
66
|
+
* import { getUserOpReceipt } from "thirdweb/wallets/smart";
|
67
|
+
*
|
68
|
+
* const receipt = await getUserOpReceipt({
|
69
|
+
* client,
|
70
|
+
* chain,
|
71
|
+
* userOpHash,
|
72
|
+
* });
|
73
|
+
* ```
|
74
|
+
* @walletUtils
|
27
75
|
*/
|
28
76
|
export declare function getUserOpReceipt(args: BundlerOptions & {
|
29
77
|
userOpHash: Hex;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,uBAAuB,EAAqB,MAAM,MAAM,CAAC;AAGvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,gCAAgC,CAAC;AAGvE,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACd,MAAM,aAAa,CAAC;AASrB
|
1
|
+
{"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,uBAAuB,EAAqB,MAAM,MAAM,CAAC;AAGvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,gCAAgC,CAAC;AAGvE,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACd,MAAM,aAAa,CAAC;AASrB;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,GAAG,CAAC,CASf;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAiB5B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,cAAc,CAAC,CAW1B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,cAAc,GAAG;IACrB,UAAU,EAAE,GAAG,CAAC;CACjB,GACA,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CA6BzC;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,uBAAuB,CAAC;CACtC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAW7B;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,uBAAuB,CAAC;IACrC,iBAAiB,EAAE,GAAG,CAAC;CACxB,GAAG,OAAO,CAAC;IAAE,eAAe,EAAE,GAAG,CAAA;CAAE,CAAC,CAepC"}
|