thirdweb 5.48.2 → 5.48.3-nightly-b661ce7b2fd58e7ff01faf47cf8fb3bb232841ec-20240827000337

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 (112) hide show
  1. package/dist/cjs/exports/wallets/smart.js +4 -2
  2. package/dist/cjs/exports/wallets/smart.js.map +1 -1
  3. package/dist/cjs/extensions/erc1155/drops/write/claimTo.js.map +1 -1
  4. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js +32 -0
  5. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js.map +1 -0
  6. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js +153 -0
  7. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js.map +1 -0
  8. package/dist/cjs/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js +184 -0
  9. package/dist/cjs/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js.map +1 -0
  10. package/dist/cjs/extensions/prebuilts/deploy-vote.js +122 -0
  11. package/dist/cjs/extensions/prebuilts/deploy-vote.js.map +1 -0
  12. package/dist/cjs/version.js +1 -1
  13. package/dist/cjs/version.js.map +1 -1
  14. package/dist/cjs/wallets/smart/index.js +13 -2
  15. package/dist/cjs/wallets/smart/index.js.map +1 -1
  16. package/dist/cjs/wallets/smart/lib/bundler.js +11 -2
  17. package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
  18. package/dist/cjs/wallets/smart/lib/constants.js +27 -13
  19. package/dist/cjs/wallets/smart/lib/constants.js.map +1 -1
  20. package/dist/cjs/wallets/smart/lib/packUserOp.js +75 -0
  21. package/dist/cjs/wallets/smart/lib/packUserOp.js.map +1 -0
  22. package/dist/cjs/wallets/smart/lib/paymaster.js +11 -1
  23. package/dist/cjs/wallets/smart/lib/paymaster.js.map +1 -1
  24. package/dist/cjs/wallets/smart/lib/userop.js +201 -66
  25. package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
  26. package/dist/cjs/wallets/smart/lib/utils.js +1 -1
  27. package/dist/cjs/wallets/smart/lib/utils.js.map +1 -1
  28. package/dist/cjs/wallets/smart/smart-wallet.js +2 -1
  29. package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
  30. package/dist/cjs/wallets/smart/types.js.map +1 -1
  31. package/dist/esm/exports/wallets/smart.js +1 -1
  32. package/dist/esm/exports/wallets/smart.js.map +1 -1
  33. package/dist/esm/extensions/erc1155/drops/write/claimTo.js.map +1 -1
  34. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js +29 -0
  35. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js.map +1 -0
  36. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js +145 -0
  37. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js.map +1 -0
  38. package/dist/esm/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js +177 -0
  39. package/dist/esm/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js.map +1 -0
  40. package/dist/esm/extensions/prebuilts/deploy-vote.js +119 -0
  41. package/dist/esm/extensions/prebuilts/deploy-vote.js.map +1 -0
  42. package/dist/esm/version.js +1 -1
  43. package/dist/esm/version.js.map +1 -1
  44. package/dist/esm/wallets/smart/index.js +14 -3
  45. package/dist/esm/wallets/smart/index.js.map +1 -1
  46. package/dist/esm/wallets/smart/lib/bundler.js +12 -3
  47. package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
  48. package/dist/esm/wallets/smart/lib/constants.js +23 -10
  49. package/dist/esm/wallets/smart/lib/constants.js.map +1 -1
  50. package/dist/esm/wallets/smart/lib/packUserOp.js +65 -0
  51. package/dist/esm/wallets/smart/lib/packUserOp.js.map +1 -0
  52. package/dist/esm/wallets/smart/lib/paymaster.js +12 -2
  53. package/dist/esm/wallets/smart/lib/paymaster.js.map +1 -1
  54. package/dist/esm/wallets/smart/lib/userop.js +202 -67
  55. package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
  56. package/dist/esm/wallets/smart/lib/utils.js +1 -1
  57. package/dist/esm/wallets/smart/lib/utils.js.map +1 -1
  58. package/dist/esm/wallets/smart/smart-wallet.js +3 -2
  59. package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
  60. package/dist/esm/wallets/smart/types.js.map +1 -1
  61. package/dist/types/exports/wallets/smart.d.ts +2 -2
  62. package/dist/types/exports/wallets/smart.d.ts.map +1 -1
  63. package/dist/types/extensions/erc1155/drops/write/claimTo.d.ts +2 -3
  64. package/dist/types/extensions/erc1155/drops/write/claimTo.d.ts.map +1 -1
  65. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.d.ts +57 -0
  66. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.d.ts.map +1 -0
  67. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.d.ts +123 -0
  68. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.d.ts.map +1 -0
  69. package/dist/types/extensions/prebuilts/__generated__/VoteERC20/write/initialize.d.ts +129 -0
  70. package/dist/types/extensions/prebuilts/__generated__/VoteERC20/write/initialize.d.ts.map +1 -0
  71. package/dist/types/extensions/prebuilts/deploy-vote.d.ts +82 -0
  72. package/dist/types/extensions/prebuilts/deploy-vote.d.ts.map +1 -0
  73. package/dist/types/version.d.ts +1 -1
  74. package/dist/types/version.d.ts.map +1 -1
  75. package/dist/types/wallets/smart/index.d.ts.map +1 -1
  76. package/dist/types/wallets/smart/lib/bundler.d.ts +3 -3
  77. package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
  78. package/dist/types/wallets/smart/lib/constants.d.ts +6 -6
  79. package/dist/types/wallets/smart/lib/constants.d.ts.map +1 -1
  80. package/dist/types/wallets/smart/lib/packUserOp.d.ts +16 -0
  81. package/dist/types/wallets/smart/lib/packUserOp.d.ts.map +1 -0
  82. package/dist/types/wallets/smart/lib/paymaster.d.ts +3 -3
  83. package/dist/types/wallets/smart/lib/paymaster.d.ts.map +1 -1
  84. package/dist/types/wallets/smart/lib/userop.d.ts +6 -4
  85. package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
  86. package/dist/types/wallets/smart/lib/utils.d.ts +2 -2
  87. package/dist/types/wallets/smart/lib/utils.d.ts.map +1 -1
  88. package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
  89. package/dist/types/wallets/smart/types.d.ts +62 -9
  90. package/dist/types/wallets/smart/types.d.ts.map +1 -1
  91. package/package.json +1 -1
  92. package/src/exports/wallets/smart.ts +4 -2
  93. package/src/extensions/erc1155/drops/write/claimTo.ts +2 -3
  94. package/src/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.ts +49 -0
  95. package/src/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.ts +181 -0
  96. package/src/extensions/prebuilts/__generated__/VoteERC20/write/initialize.ts +230 -0
  97. package/src/extensions/prebuilts/deploy-vote.test.ts +73 -0
  98. package/src/extensions/prebuilts/deploy-vote.ts +213 -0
  99. package/src/extensions/vote/read/proposalExists.test.ts +123 -0
  100. package/src/version.ts +1 -1
  101. package/src/wallets/smart/index.ts +21 -5
  102. package/src/wallets/smart/lib/bundler.ts +21 -5
  103. package/src/wallets/smart/lib/constants.ts +29 -10
  104. package/src/wallets/smart/lib/packUserOp.ts +79 -0
  105. package/src/wallets/smart/lib/paymaster.ts +22 -5
  106. package/src/wallets/smart/lib/userop.ts +292 -85
  107. package/src/wallets/smart/lib/utils.ts +11 -4
  108. package/src/wallets/smart/smart-wallet-integration-v07.test.ts +206 -0
  109. package/src/wallets/smart/smart-wallet-integration.test.ts +1 -1
  110. package/src/wallets/smart/smart-wallet-zksync.test.ts +1 -2
  111. package/src/wallets/smart/smart-wallet.ts +4 -2
  112. package/src/wallets/smart/types.ts +73 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/wallets/smart/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/wallets/smart/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { decodeErrorResult } from "viem";
2
2
  import { parseEventLogs } from "../../../event/actions/parse-logs.js";
3
3
  import { userOperationRevertReasonEvent } from "../../../extensions/erc4337/__generated__/IEntryPoint/events/UserOperationRevertReason.js";
4
+ import { postOpRevertReasonEvent } from "../../../extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js";
4
5
  import { hexToBigInt } from "../../../utils/encoding/hex.js";
5
6
  import { getClientFetch } from "../../../utils/fetch.js";
6
7
  import { stringify } from "../../../utils/json.js";
7
8
  import { formatUserOperationReceipt, } from "../types.js";
8
- import { DEBUG, ENTRYPOINT_ADDRESS_v0_6, MANAGED_ACCOUNT_GAS_BUFFER, getDefaultBundlerUrl, } from "./constants.js";
9
+ import { DEBUG, ENTRYPOINT_ADDRESS_v0_6, MANAGED_ACCOUNT_GAS_BUFFER, getDefaultBundlerUrl, getEntryPointVersion, } from "./constants.js";
9
10
  import { hexlifyUserOp } from "./utils.js";
10
11
  /**
11
12
  * Bundle a user operation.
@@ -62,6 +63,12 @@ export async function estimateUserOpGas(args) {
62
63
  verificationGas: hexToBigInt(res.verificationGas),
63
64
  verificationGasLimit: hexToBigInt(res.verificationGasLimit),
64
65
  callGasLimit: hexToBigInt(res.callGasLimit) + MANAGED_ACCOUNT_GAS_BUFFER,
66
+ paymasterVerificationGasLimit: res.paymasterVerificationGasLimit !== undefined
67
+ ? hexToBigInt(res.paymasterVerificationGasLimit)
68
+ : undefined,
69
+ paymasterPostOpGasLimit: res.paymasterPostOpGasLimit !== undefined
70
+ ? hexToBigInt(res.paymasterPostOpGasLimit)
71
+ : undefined,
65
72
  };
66
73
  }
67
74
  /**
@@ -113,7 +120,7 @@ export async function getUserOpReceipt(args) {
113
120
  if (res.success === false) {
114
121
  // parse revert reason
115
122
  const logs = parseEventLogs({
116
- events: [userOperationRevertReasonEvent()],
123
+ events: [userOperationRevertReasonEvent(), postOpRevertReasonEvent()],
117
124
  logs: res.logs,
118
125
  });
119
126
  const revertReason = logs[0]?.args?.revertReason;
@@ -188,7 +195,9 @@ async function sendBundlerRequest(args) {
188
195
  if (DEBUG) {
189
196
  console.debug(`>>> sending ${operation} with payload:`, params);
190
197
  }
191
- const bundlerUrl = options.bundlerUrl ?? getDefaultBundlerUrl(options.chain);
198
+ const entryPointVersion = getEntryPointVersion(options.entrypointAddress || ENTRYPOINT_ADDRESS_v0_6);
199
+ const bundlerVersion = entryPointVersion === "v0.6" ? "v1" : "v2";
200
+ const bundlerUrl = options.bundlerUrl ?? getDefaultBundlerUrl(options.chain, bundlerVersion);
192
201
  const fetchWithHeaders = getClientFetch(options.client);
193
202
  const response = await fetchWithHeaders(bundlerUrl, {
194
203
  method: "POST",
@@ -1 +1 @@
1
- {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,41 @@
1
+ import { getAddress } from "../../../utils/address.js";
1
2
  import { getThirdwebDomains } from "../../../utils/domains.js";
2
3
  // dev only
3
4
  export const DEBUG = false;
4
5
  export const DUMMY_SIGNATURE = "0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c";
5
- export const DEFAULT_ACCOUNT_FACTORY = "0x85e23b94e7F5E9cC1fF78BCe78cfb15B81f0DF00";
6
+ export const DEFAULT_ACCOUNT_FACTORY_V0_6 = "0x85e23b94e7F5E9cC1fF78BCe78cfb15B81f0DF00";
7
+ export const DEFAULT_ACCOUNT_FACTORY_V0_7 = "0x4be0ddfebca9a5a4a617dee4dece99e7c862dceb";
6
8
  export const ENTRYPOINT_ADDRESS_v0_6 = "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789"; // v0.6
9
+ export const ENTRYPOINT_ADDRESS_v0_7 = "0x0000000071727De22E5E9d8BAf0edAc6f37da032"; // v0.7
7
10
  export const MANAGED_ACCOUNT_GAS_BUFFER = 50000n;
8
- /**
11
+ /*
9
12
  * @internal
10
13
  */
11
- export const getDefaultBundlerUrl = (chain) => {
12
- const domain = getThirdwebDomains().bundler;
13
- if (domain.startsWith("localhost:")) {
14
- return `http://${domain}?chain=${chain.id}`;
14
+ export const getDefaultAccountFactory = (entryPointAddress) => {
15
+ const version = getEntryPointVersion(entryPointAddress || ENTRYPOINT_ADDRESS_v0_6);
16
+ if (version === "v0.7") {
17
+ return DEFAULT_ACCOUNT_FACTORY_V0_7;
15
18
  }
16
- return `https://${chain.id}.${domain}/`;
19
+ return DEFAULT_ACCOUNT_FACTORY_V0_6;
17
20
  };
18
21
  /**
19
22
  * @internal
20
23
  */
21
- export const getDefaultPaymasterUrl = (chain) => {
24
+ export const getDefaultBundlerUrl = (chain, version) => {
22
25
  const domain = getThirdwebDomains().bundler;
23
26
  if (domain.startsWith("localhost:")) {
24
- return `http://${domain}?chain=${chain.id}`;
27
+ return `http://${domain}/${version ?? "v1"}?chain=${chain.id}`;
28
+ }
29
+ return `https://${chain.id}.${domain}/${version ?? "v1"}`;
30
+ };
31
+ export const getEntryPointVersion = (address) => {
32
+ const checksummedAddress = getAddress(address);
33
+ if (checksummedAddress === ENTRYPOINT_ADDRESS_v0_6) {
34
+ return "v0.6";
35
+ }
36
+ if (checksummedAddress === ENTRYPOINT_ADDRESS_v0_7) {
37
+ return "v0.7";
25
38
  }
26
- return `https://${chain.id}.${domain}/`;
39
+ throw new Error("Unknown paymaster version");
27
40
  };
28
41
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,WAAW;AACX,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC;AAE3B,MAAM,CAAC,MAAM,eAAe,GAC1B,sIAAsI,CAAC;AAEzI,MAAM,CAAC,MAAM,uBAAuB,GAClC,4CAA4C,CAAC;AAE/C,MAAM,CAAC,MAAM,uBAAuB,GAClC,4CAA4C,CAAC,CAAC,OAAO;AACvD,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAE,EAAE;IACnD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC,OAAO,CAAC;IAC5C,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,OAAO,UAAU,MAAM,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO,WAAW,KAAK,CAAC,EAAE,IAAI,MAAM,GAAG,CAAC;AAC1C,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAY,EAAE,EAAE;IACrD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC,OAAO,CAAC;IAC5C,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,OAAO,UAAU,MAAM,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO,WAAW,KAAK,CAAC,EAAE,IAAI,MAAM,GAAG,CAAC;AAC1C,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,WAAW;AACX,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC;AAE3B,MAAM,CAAC,MAAM,eAAe,GAC1B,sIAAsI,CAAC;AAEzI,MAAM,CAAC,MAAM,4BAA4B,GACvC,4CAA4C,CAAC;AAC/C,MAAM,CAAC,MAAM,4BAA4B,GACvC,4CAA4C,CAAC;AAE/C,MAAM,CAAC,MAAM,uBAAuB,GAClC,4CAA4C,CAAC,CAAC,OAAO;AACvD,MAAM,CAAC,MAAM,uBAAuB,GAClC,4CAA4C,CAAC,CAAC,OAAO;AAEvD,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,iBAA0B,EAAE,EAAE;IACrE,MAAM,OAAO,GAAG,oBAAoB,CAClC,iBAAiB,IAAI,uBAAuB,CAC7C,CAAC;IACF,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,4BAA4B,CAAC;IACtC,CAAC;IACD,OAAO,4BAA4B,CAAC;AACtC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAE,OAAoB,EAAE,EAAE;IACzE,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC,OAAO,CAAC;IAC5C,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,OAAO,UAAU,MAAM,IAAI,OAAO,IAAI,IAAI,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC;IACjE,CAAC;IACD,OAAO,WAAW,KAAK,CAAC,EAAE,IAAI,MAAM,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAmB,EAAE;IACvE,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,kBAAkB,KAAK,uBAAuB,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,kBAAkB,KAAK,uBAAuB,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC/C,CAAC,CAAC"}
@@ -0,0 +1,65 @@
1
+ import { concat, pad, slice, toHex } from "viem";
2
+ export function getInitCode(unpackedUserOperation) {
3
+ return unpackedUserOperation.factory
4
+ ? concat([
5
+ unpackedUserOperation.factory,
6
+ unpackedUserOperation.factoryData || "0x",
7
+ ])
8
+ : "0x";
9
+ }
10
+ export function getAccountGasLimits(unpackedUserOperation) {
11
+ return concat([
12
+ pad(toHex(unpackedUserOperation.verificationGasLimit), {
13
+ size: 16,
14
+ }),
15
+ pad(toHex(unpackedUserOperation.callGasLimit), { size: 16 }),
16
+ ]);
17
+ }
18
+ export function unpackAccountGasLimits(accountGasLimits) {
19
+ return {
20
+ verificationGasLimit: BigInt(slice(accountGasLimits, 0, 16)),
21
+ callGasLimit: BigInt(slice(accountGasLimits, 16)),
22
+ };
23
+ }
24
+ export function getGasLimits(unpackedUserOperation) {
25
+ return concat([
26
+ pad(toHex(unpackedUserOperation.maxPriorityFeePerGas), {
27
+ size: 16,
28
+ }),
29
+ pad(toHex(unpackedUserOperation.maxFeePerGas), { size: 16 }),
30
+ ]);
31
+ }
32
+ export function unpackGasLimits(gasLimits) {
33
+ return {
34
+ maxPriorityFeePerGas: BigInt(slice(gasLimits, 0, 16)),
35
+ maxFeePerGas: BigInt(slice(gasLimits, 16)),
36
+ };
37
+ }
38
+ export function getPaymasterAndData(unpackedUserOperation) {
39
+ return unpackedUserOperation.paymaster
40
+ ? concat([
41
+ unpackedUserOperation.paymaster,
42
+ pad(toHex(unpackedUserOperation.paymasterVerificationGasLimit || BigInt(0)), {
43
+ size: 16,
44
+ }),
45
+ pad(toHex(unpackedUserOperation.paymasterPostOpGasLimit || BigInt(0)), {
46
+ size: 16,
47
+ }),
48
+ unpackedUserOperation.paymasterData || "0x",
49
+ ])
50
+ : "0x";
51
+ }
52
+ export const getPackedUserOperation = (userOperation) => {
53
+ return {
54
+ sender: userOperation.sender,
55
+ nonce: userOperation.nonce,
56
+ initCode: getInitCode(userOperation),
57
+ callData: userOperation.callData,
58
+ accountGasLimits: getAccountGasLimits(userOperation),
59
+ preVerificationGas: userOperation.preVerificationGas,
60
+ gasFees: getGasLimits(userOperation),
61
+ paymasterAndData: getPaymasterAndData(userOperation),
62
+ signature: userOperation.signature,
63
+ };
64
+ };
65
+ //# sourceMappingURL=packUserOp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packUserOp.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/packUserOp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAG3D,MAAM,UAAU,WAAW,CAAC,qBAAuC;IACjE,OAAO,qBAAqB,CAAC,OAAO;QAClC,CAAC,CAAC,MAAM,CAAC;YACL,qBAAqB,CAAC,OAAc;YACpC,qBAAqB,CAAC,WAAW,IAAK,IAAY;SACnD,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,qBAAuC;IACzE,OAAO,MAAM,CAAC;QACZ,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,EAAE;YACrD,IAAI,EAAE,EAAE;SACT,CAAC;QACF,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;KAC7D,CAAQ,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,gBAAqB;IAC1D,OAAO;QACL,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,qBAAuC;IAClE,OAAO,MAAM,CAAC;QACZ,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,EAAE;YACrD,IAAI,EAAE,EAAE;SACT,CAAC;QACF,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;KAC7D,CAAQ,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,SAAc;IAC5C,OAAO;QACL,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACrD,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;KAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,qBAAuC;IACzE,OAAO,qBAAqB,CAAC,SAAS;QACpC,CAAC,CAAC,MAAM,CAAC;YACL,qBAAqB,CAAC,SAAgB;YACtC,GAAG,CACD,KAAK,CACH,qBAAqB,CAAC,6BAA6B,IAAI,MAAM,CAAC,CAAC,CAAC,CACjE,EACD;gBACE,IAAI,EAAE,EAAE;aACT,CACF;YACD,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,uBAAuB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;gBACrE,IAAI,EAAE,EAAE;aACT,CAAC;YACF,qBAAqB,CAAC,aAAa,IAAK,IAAY;SACrD,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,aAA+B,EACV,EAAE;IACvB,OAAO;QACL,MAAM,EAAE,aAAa,CAAC,MAAM;QAC5B,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,QAAQ,EAAE,WAAW,CAAC,aAAa,CAAC;QACpC,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,gBAAgB,EAAE,mBAAmB,CAAC,aAAa,CAAC;QACpD,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;QACpD,OAAO,EAAE,YAAY,CAAC,aAAa,CAAC;QACpC,gBAAgB,EAAE,mBAAmB,CAAC,aAAa,CAAC;QACpD,SAAS,EAAE,aAAa,CAAC,SAAS;KACnC,CAAC;AACJ,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { hexToBigInt } from "../../../utils/encoding/hex.js";
2
2
  import { getClientFetch } from "../../../utils/fetch.js";
3
- import { DEBUG, ENTRYPOINT_ADDRESS_v0_6, getDefaultPaymasterUrl, } from "./constants.js";
3
+ import { DEBUG, ENTRYPOINT_ADDRESS_v0_6, getDefaultBundlerUrl, getEntryPointVersion, } from "./constants.js";
4
4
  import { hexlifyUserOp } from "./utils.js";
5
5
  /**
6
6
  * Get paymaster and data details for a user operation.
@@ -28,8 +28,10 @@ export async function getPaymasterAndData(args) {
28
28
  const headers = {
29
29
  "Content-Type": "application/json",
30
30
  };
31
- const paymasterUrl = getDefaultPaymasterUrl(chain);
32
31
  const entrypoint = entrypointAddress ?? ENTRYPOINT_ADDRESS_v0_6;
32
+ const entrypointVersion = getEntryPointVersion(entrypoint);
33
+ const paymasterVersion = entrypointVersion === "v0.6" ? "v1" : "v2";
34
+ const paymasterUrl = getDefaultBundlerUrl(chain, paymasterVersion);
33
35
  // Ask the paymaster to sign the transaction and return a valid paymasterAndData value.
34
36
  const fetchWithHeaders = getClientFetch(client);
35
37
  const response = await fetchWithHeaders(paymasterUrl, {
@@ -71,6 +73,14 @@ Code: ${code}`);
71
73
  callGasLimit: res.result.callGasLimit
72
74
  ? hexToBigInt(res.result.callGasLimit)
73
75
  : undefined,
76
+ paymaster: res.result.paymaster,
77
+ paymasterData: res.result.paymasterData,
78
+ paymasterVerificationGasLimit: res.result.paymasterVerificationGasLimit
79
+ ? hexToBigInt(res.result.paymasterVerificationGasLimit)
80
+ : undefined,
81
+ paymasterPostOpGasLimit: res.result.paymasterPostOpGasLimit
82
+ ? hexToBigInt(res.result.paymasterPostOpGasLimit)
83
+ : undefined,
74
84
  };
75
85
  }
76
86
  const error = res.error?.message || res.error || response.statusText || "unknown error";
@@ -1 +1 @@
1
- {"version":3,"file":"paymaster.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/paymaster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paymaster.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/paymaster.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,18 @@
1
1
  import { concat } from "viem";
2
2
  import { getContract, } from "../../../contract/contract.js";
3
3
  import { getNonce } from "../../../extensions/erc4337/__generated__/IEntryPoint/read/getNonce.js";
4
+ import { getUserOpHash as getUserOpHashV06 } from "../../../extensions/erc4337/__generated__/IEntryPoint/read/getUserOpHash.js";
5
+ import { getUserOpHash as getUserOpHashV07 } from "../../../extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js";
4
6
  import { getDefaultGasOverrides } from "../../../gas/fee-data.js";
5
7
  import { encode } from "../../../transaction/actions/encode.js";
6
- import { encodeAbiParameters } from "../../../utils/abi/encodeAbiParameters.js";
7
8
  import { isContractDeployed } from "../../../utils/bytecode/is-contract-deployed.js";
8
9
  import { hexToBytes } from "../../../utils/encoding/to-bytes.js";
9
10
  import { isThirdwebUrl } from "../../../utils/fetch.js";
10
- import { keccak256 } from "../../../utils/hashing/keccak256.js";
11
11
  import { resolvePromisedValue } from "../../../utils/promise/resolve-promised-value.js";
12
12
  import { estimateUserOpGas, getUserOpGasFees, getUserOpReceipt, } from "./bundler.js";
13
13
  import { prepareCreateAccount } from "./calls.js";
14
- import { DUMMY_SIGNATURE, ENTRYPOINT_ADDRESS_v0_6, getDefaultBundlerUrl, } from "./constants.js";
14
+ import { DUMMY_SIGNATURE, ENTRYPOINT_ADDRESS_v0_6, ENTRYPOINT_ADDRESS_v0_7, getDefaultBundlerUrl, getEntryPointVersion, } from "./constants.js";
15
+ import { getPackedUserOperation } from "./packUserOp.js";
15
16
  import { getPaymasterAndData } from "./paymaster.js";
16
17
  import { generateRandomUint192 } from "./utils.js";
17
18
  /**
@@ -69,23 +70,66 @@ export async function createUnsignedUserOp(args) {
69
70
  const { transaction: executeTx, accountContract, factoryContract, adminAddress, overrides, sponsorGas, } = args;
70
71
  const chain = executeTx.chain;
71
72
  const client = executeTx.client;
72
- const isDeployed = await isContractDeployed(accountContract);
73
- const initCode = isDeployed
74
- ? "0x"
75
- : await getAccountInitCode({
76
- factoryContract: factoryContract,
77
- adminAddress,
78
- accountSalt: overrides?.accountSalt,
79
- createAccountOverride: overrides?.createAccount,
80
- });
81
- const callData = await encode(executeTx);
82
73
  const bundlerOptions = {
83
74
  client,
84
75
  chain,
85
76
  entrypointAddress: overrides?.entrypointAddress,
86
77
  };
78
+ const entrypointVersion = getEntryPointVersion(args.overrides?.entrypointAddress || ENTRYPOINT_ADDRESS_v0_6);
79
+ const [isDeployed, callData, gasFees, nonce] = await Promise.all([
80
+ isContractDeployed(accountContract),
81
+ encode(executeTx),
82
+ getGasFees({
83
+ executeTx,
84
+ bundlerOptions,
85
+ chain,
86
+ client,
87
+ }),
88
+ getAccountNonce({
89
+ accountContract,
90
+ chain,
91
+ client,
92
+ entrypointAddress: overrides?.entrypointAddress,
93
+ getNonceOverride: overrides?.getAccountNonce,
94
+ }),
95
+ ]);
96
+ const { maxFeePerGas, maxPriorityFeePerGas } = gasFees;
97
+ if (entrypointVersion === "v0.7") {
98
+ return populateUserOp_v0_7({
99
+ bundlerOptions,
100
+ factoryContract,
101
+ accountContract,
102
+ adminAddress,
103
+ sponsorGas,
104
+ overrides,
105
+ isDeployed,
106
+ nonce,
107
+ callData,
108
+ maxFeePerGas,
109
+ maxPriorityFeePerGas,
110
+ });
111
+ }
112
+ // default to v0.6
113
+ return populateUserOp_v0_6({
114
+ bundlerOptions,
115
+ factoryContract,
116
+ accountContract,
117
+ adminAddress,
118
+ sponsorGas,
119
+ overrides,
120
+ isDeployed,
121
+ nonce,
122
+ callData,
123
+ maxFeePerGas,
124
+ maxPriorityFeePerGas,
125
+ });
126
+ }
127
+ async function getGasFees(args) {
128
+ const { executeTx, bundlerOptions, chain, client } = args;
87
129
  let { maxFeePerGas, maxPriorityFeePerGas } = executeTx;
88
- const bundlerUrl = overrides?.bundlerUrl ?? getDefaultBundlerUrl(chain);
130
+ const entrypointVersion = getEntryPointVersion(bundlerOptions.entrypointAddress || ENTRYPOINT_ADDRESS_v0_6);
131
+ const bundlerVersion = entrypointVersion === "v0.6" ? "v1" : "v2";
132
+ const bundlerUrl = bundlerOptions?.bundlerUrl ?? getDefaultBundlerUrl(chain, bundlerVersion);
89
133
  if (isThirdwebUrl(bundlerUrl)) {
90
134
  // get gas prices from bundler
91
135
  const bundlerGasPrice = await getUserOpGasFees({
@@ -114,13 +158,119 @@ export async function createUnsignedUserOp(args) {
114
158
  maxFeePerGas = resolvedMaxFeePerGas ?? feeData.maxFeePerGas ?? 0n;
115
159
  }
116
160
  }
117
- const nonce = await getAccountNonce({
118
- accountContract,
119
- chain,
120
- client,
121
- entrypointAddress: overrides?.entrypointAddress,
122
- getNonceOverride: overrides?.getAccountNonce,
123
- });
161
+ return { maxFeePerGas, maxPriorityFeePerGas };
162
+ }
163
+ async function populateUserOp_v0_7(args) {
164
+ const { bundlerOptions, isDeployed, factoryContract, accountContract, adminAddress, sponsorGas, overrides, nonce, callData, maxFeePerGas, maxPriorityFeePerGas, } = args;
165
+ const { chain, client } = bundlerOptions;
166
+ const factory = isDeployed ? undefined : factoryContract.address;
167
+ const factoryData = isDeployed
168
+ ? "0x"
169
+ : await encode(prepareCreateAccount({
170
+ factoryContract: factoryContract,
171
+ adminAddress,
172
+ accountSalt: overrides?.accountSalt,
173
+ createAccountOverride: overrides?.createAccount,
174
+ }));
175
+ const partialOp = {
176
+ sender: accountContract.address,
177
+ nonce,
178
+ callData,
179
+ maxFeePerGas,
180
+ maxPriorityFeePerGas,
181
+ callGasLimit: 0n,
182
+ verificationGasLimit: 0n,
183
+ preVerificationGas: 0n,
184
+ factory,
185
+ factoryData,
186
+ paymaster: undefined,
187
+ paymasterData: "0x",
188
+ paymasterVerificationGasLimit: 0n,
189
+ paymasterPostOpGasLimit: 0n,
190
+ signature: DUMMY_SIGNATURE,
191
+ };
192
+ if (sponsorGas) {
193
+ const paymasterResult = (await getPaymasterAndData({
194
+ userOp: partialOp,
195
+ chain,
196
+ client,
197
+ entrypointAddress: overrides?.entrypointAddress,
198
+ paymasterOverride: overrides?.paymaster,
199
+ }));
200
+ if (paymasterResult.paymaster && paymasterResult.paymasterData) {
201
+ partialOp.paymaster = paymasterResult.paymaster;
202
+ partialOp.paymasterData = paymasterResult.paymasterData;
203
+ }
204
+ // paymaster can have the gas limits in the response
205
+ if (paymasterResult.callGasLimit &&
206
+ paymasterResult.verificationGasLimit &&
207
+ paymasterResult.preVerificationGas &&
208
+ paymasterResult.paymasterPostOpGasLimit &&
209
+ paymasterResult.paymasterVerificationGasLimit) {
210
+ partialOp.callGasLimit = paymasterResult.callGasLimit;
211
+ partialOp.verificationGasLimit = paymasterResult.verificationGasLimit;
212
+ partialOp.preVerificationGas = paymasterResult.preVerificationGas;
213
+ partialOp.paymasterPostOpGasLimit =
214
+ paymasterResult.paymasterPostOpGasLimit;
215
+ partialOp.paymasterVerificationGasLimit =
216
+ paymasterResult.paymasterVerificationGasLimit;
217
+ }
218
+ else {
219
+ // otherwise fallback to bundler for gas limits
220
+ const estimates = await estimateUserOpGas({
221
+ userOp: partialOp,
222
+ options: bundlerOptions,
223
+ });
224
+ partialOp.callGasLimit = estimates.callGasLimit;
225
+ partialOp.verificationGasLimit = estimates.verificationGasLimit;
226
+ partialOp.preVerificationGas = estimates.preVerificationGas;
227
+ partialOp.paymasterPostOpGasLimit =
228
+ paymasterResult.paymasterPostOpGasLimit || 0n;
229
+ partialOp.paymasterVerificationGasLimit =
230
+ paymasterResult.paymasterVerificationGasLimit || 0n;
231
+ // need paymaster to re-sign after estimates
232
+ const paymasterResult2 = (await getPaymasterAndData({
233
+ userOp: partialOp,
234
+ chain,
235
+ client,
236
+ entrypointAddress: overrides?.entrypointAddress,
237
+ paymasterOverride: overrides?.paymaster,
238
+ }));
239
+ if (paymasterResult2.paymaster && paymasterResult2.paymasterData) {
240
+ partialOp.paymaster = paymasterResult2.paymaster;
241
+ partialOp.paymasterData = paymasterResult2.paymasterData;
242
+ }
243
+ }
244
+ }
245
+ else {
246
+ // not gasless, so we just need to estimate gas limits
247
+ const estimates = await estimateUserOpGas({
248
+ userOp: partialOp,
249
+ options: bundlerOptions,
250
+ });
251
+ partialOp.callGasLimit = estimates.callGasLimit;
252
+ partialOp.verificationGasLimit = estimates.verificationGasLimit;
253
+ partialOp.preVerificationGas = estimates.preVerificationGas;
254
+ partialOp.paymasterPostOpGasLimit = estimates.paymasterPostOpGasLimit || 0n;
255
+ partialOp.paymasterVerificationGasLimit =
256
+ estimates.paymasterVerificationGasLimit || 0n;
257
+ }
258
+ return {
259
+ ...partialOp,
260
+ signature: "0x",
261
+ };
262
+ }
263
+ async function populateUserOp_v0_6(args) {
264
+ const { bundlerOptions, isDeployed, factoryContract, accountContract, adminAddress, sponsorGas, overrides, nonce, callData, maxFeePerGas, maxPriorityFeePerGas, } = args;
265
+ const { chain, client } = bundlerOptions;
266
+ const initCode = isDeployed
267
+ ? "0x"
268
+ : await getAccountInitCode({
269
+ factoryContract: factoryContract,
270
+ adminAddress,
271
+ accountSalt: overrides?.accountSalt,
272
+ createAccountOverride: overrides?.createAccount,
273
+ });
124
274
  const partialOp = {
125
275
  sender: accountContract.address,
126
276
  nonce,
@@ -142,7 +292,9 @@ export async function createUnsignedUserOp(args) {
142
292
  entrypointAddress: overrides?.entrypointAddress,
143
293
  paymasterOverride: overrides?.paymaster,
144
294
  });
145
- const paymasterAndData = paymasterResult.paymasterAndData;
295
+ const paymasterAndData = "paymasterAndData" in paymasterResult
296
+ ? paymasterResult.paymasterAndData
297
+ : "0x";
146
298
  if (paymasterAndData && paymasterAndData !== "0x") {
147
299
  partialOp.paymasterAndData = paymasterAndData;
148
300
  }
@@ -172,9 +324,11 @@ export async function createUnsignedUserOp(args) {
172
324
  entrypointAddress: overrides?.entrypointAddress,
173
325
  paymasterOverride: overrides?.paymaster,
174
326
  });
175
- if (paymasterResult2.paymasterAndData &&
176
- paymasterResult2.paymasterAndData !== "0x") {
177
- partialOp.paymasterAndData = paymasterResult2.paymasterAndData;
327
+ const paymasterAndData2 = "paymasterAndData" in paymasterResult2
328
+ ? paymasterResult2.paymasterAndData
329
+ : "0x";
330
+ if (paymasterAndData2 && paymasterAndData2 !== "0x") {
331
+ partialOp.paymasterAndData = paymasterAndData2;
178
332
  }
179
333
  }
180
334
  }
@@ -214,11 +368,29 @@ export async function createUnsignedUserOp(args) {
214
368
  */
215
369
  export async function signUserOp(args) {
216
370
  const { userOp, chain, entrypointAddress, adminAccount } = args;
217
- const userOpHash = getUserOpHash({
218
- userOp,
219
- entryPoint: entrypointAddress || ENTRYPOINT_ADDRESS_v0_6,
220
- chainId: chain.id,
221
- });
371
+ const entrypointVersion = getEntryPointVersion(entrypointAddress || ENTRYPOINT_ADDRESS_v0_6);
372
+ let userOpHash;
373
+ if (entrypointVersion === "v0.7") {
374
+ const packedUserOp = getPackedUserOperation(userOp);
375
+ userOpHash = await getUserOpHashV07({
376
+ contract: getContract({
377
+ address: entrypointAddress || ENTRYPOINT_ADDRESS_v0_7,
378
+ chain,
379
+ client: args.client,
380
+ }),
381
+ userOp: packedUserOp,
382
+ });
383
+ }
384
+ else {
385
+ userOpHash = await getUserOpHashV06({
386
+ contract: getContract({
387
+ address: entrypointAddress || ENTRYPOINT_ADDRESS_v0_6,
388
+ chain,
389
+ client: args.client,
390
+ }),
391
+ userOp: userOp,
392
+ });
393
+ }
222
394
  if (adminAccount.signMessage) {
223
395
  const signature = await adminAccount.signMessage({
224
396
  message: {
@@ -257,41 +429,4 @@ async function getAccountNonce(options) {
257
429
  sender: accountContract.address,
258
430
  });
259
431
  }
260
- /**
261
- * Get the hash of a user operation.
262
- * @param args - The user operation, entrypoint address, and chain ID
263
- * @returns - The hash of the user operation
264
- * @walletUtils
265
- */
266
- function getUserOpHash(args) {
267
- const { userOp, entryPoint, chainId } = args;
268
- const hashedInitCode = keccak256(userOp.initCode);
269
- const hashedCallData = keccak256(userOp.callData);
270
- const hashedPaymasterAndData = keccak256(userOp.paymasterAndData);
271
- const packedUserOp = encodeAbiParameters([
272
- { type: "address" },
273
- { type: "uint256" },
274
- { type: "bytes32" },
275
- { type: "bytes32" },
276
- { type: "uint256" },
277
- { type: "uint256" },
278
- { type: "uint256" },
279
- { type: "uint256" },
280
- { type: "uint256" },
281
- { type: "bytes32" },
282
- ], [
283
- userOp.sender,
284
- userOp.nonce,
285
- hashedInitCode,
286
- hashedCallData,
287
- userOp.callGasLimit,
288
- userOp.verificationGasLimit,
289
- userOp.preVerificationGas,
290
- userOp.maxFeePerGas,
291
- userOp.maxPriorityFeePerGas,
292
- hashedPaymasterAndData,
293
- ]);
294
- const encoded = encodeAbiParameters([{ type: "bytes32" }, { type: "address" }, { type: "uint256" }], [keccak256(packedUserOp), entryPoint, BigInt(chainId)]);
295
- return keccak256(encoded);
296
- }
297
432
  //# sourceMappingURL=userop.js.map