@tradestack/paymaster 1.2.37 → 1.2.38

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.
@@ -3340,7 +3340,7 @@ export declare const getPublicClient: (chainConfig: EVMChainConfig) => {
3340
3340
  authorizationList: import("viem").TransactionSerializableEIP7702["authorizationList"];
3341
3341
  } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) ? T_12 extends "eip7702" ? import("viem").TransactionRequestEIP7702 : never : never : never)>> & {
3342
3342
  chainId?: number | undefined;
3343
- }, (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "chainId" | "type" | "nonce" | "blobVersionedHashes" | "gas" | "fees") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "chainId" | "type" | "nonce" | "blobVersionedHashes" | "gas" | "fees") ? T_13 extends "fees" ? "gasPrice" | "maxPriorityFeePerGas" | "maxFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) & {
3343
+ }, (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "chainId" | "type" | "nonce" | "gas" | "blobVersionedHashes" | "fees") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "chainId" | "type" | "nonce" | "gas" | "blobVersionedHashes" | "fees") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) & {
3344
3344
  _capabilities?: {
3345
3345
  [x: string]: any;
3346
3346
  } | undefined;
@@ -3355,8 +3355,8 @@ export declare const getPublicClient: (chainConfig: EVMChainConfig) => {
3355
3355
  verifyHash: (args: import("viem").VerifyHashActionParameters) => Promise<import("viem").VerifyHashActionReturnType>;
3356
3356
  verifyMessage: (args: import("viem").VerifyMessageActionParameters) => Promise<import("viem").VerifyMessageActionReturnType>;
3357
3357
  verifySiweMessage: (args: {
3358
- blockTag?: import("viem").BlockTag | undefined;
3359
3358
  blockNumber?: bigint | undefined | undefined;
3359
+ blockTag?: import("viem").BlockTag | undefined;
3360
3360
  address?: `0x${string}` | undefined;
3361
3361
  nonce?: string | undefined | undefined;
3362
3362
  domain?: string | undefined | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"paymaster.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/services/paymaster.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAiB,MAAM,kBAAkB,CAAC;AAQjE,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,GAAG,EACX,cAAa,cAAwD,KACpE,OAAO,CAAC,MAAM,CAkFhB,CAAC"}
1
+ {"version":3,"file":"paymaster.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/services/paymaster.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAiB,MAAM,kBAAkB,CAAC;AAQjE,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,GAAG,EACX,cAAa,cAAwD,KACpE,OAAO,CAAC,MAAM,CAqHhB,CAAC"}
@@ -1,63 +1,89 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.signUserOperation = void 0;
7
4
  const ethers_1 = require("ethers");
8
5
  const chains_1 = require("../config/chains");
9
- const index_1 = __importDefault(require("../config/index"));
10
6
  const contract_1 = require("../contract/contract");
11
7
  const signUserOperation = async (userOp, chainConfig = chains_1.CHAIN_CONFIGS.sepolia) => {
12
- const validAfter = Math.floor(Date.now() / 1000);
13
- const validUntil = validAfter + index_1.default.signatureExpirySeconds;
8
+ // Use current time for realistic timestamps
9
+ const validAfter = Math.floor(Date.now() / 1000) - 300; // 5 minutes ago (allow clock drift)
10
+ const validUntil = validAfter + 3600; // Valid for 1 hour
11
+ console.log(`[${chainConfig.name}] validAfter: ${validAfter} (${new Date(validAfter * 1000).toISOString()})`);
12
+ console.log(`[${chainConfig.name}] validUntil: ${validUntil} (${new Date(validUntil * 1000).toISOString()})`);
14
13
  const paymasterContract = (0, contract_1.getPaymasterContract)(chainConfig);
15
14
  const provider = (0, contract_1.getProvider)(chainConfig);
16
15
  const connectedSigner = contract_1.signer.connect(provider);
17
- const initCode = userOp.factory
16
+ // Handle initCode (factory + factoryData)
17
+ const initCode = userOp.factory && userOp.factory !== "0x"
18
18
  ? ethers_1.ethers.concat([userOp.factory, userOp.factoryData || "0x"])
19
19
  : "0x";
20
- // Pack the gas fields with consistent values
21
- const verificationGasLimit = 250000n; // Hardcoded
22
- const callGasLimit = 50000n; // Hardcoded
23
- const accountGasLimits = ethers_1.ethers.zeroPadValue(ethers_1.ethers.toBeHex((verificationGasLimit << 128n) | callGasLimit), 32);
24
- const maxPriorityFeePerGas = 1000000000n; // 1 gwei - hardcoded
25
- const maxFeePerGas = 1000000000n; // 1 gwei - hardcoded
26
- const gasFees = ethers_1.ethers.zeroPadValue(ethers_1.ethers.toBeHex((maxPriorityFeePerGas << 128n) | maxFeePerGas), 32);
27
- // Paymaster gas limits - consistent with above
28
- const paymasterVerificationGasLimit = 250000n; // Hardcoded - same as verificationGasLimit
29
- const paymasterPostOpGasLimit = 150000n; // Hardcoded
20
+ // Get the packed values from userOp if they exist, otherwise pack them
21
+ let accountGasLimits = userOp.accountGasLimits;
22
+ let gasFees = userOp.gasFees;
23
+ // If accountGasLimits is not provided or is "0x", pack it
24
+ if (!accountGasLimits || accountGasLimits === "0x") {
25
+ const verificationGasLimit = BigInt(userOp.verificationGasLimit || 250000);
26
+ const callGasLimit = BigInt(userOp.callGasLimit || 50000);
27
+ accountGasLimits = ethers_1.ethers.zeroPadValue(ethers_1.ethers.toBeHex((verificationGasLimit << 128n) | callGasLimit), 32);
28
+ }
29
+ // If gasFees is not provided or is "0x", pack it
30
+ if (!gasFees || gasFees === "0x") {
31
+ const maxPriorityFeePerGas = BigInt(userOp.maxPriorityFeePerGas || 1000000000);
32
+ const maxFeePerGas = BigInt(userOp.maxFeePerGas || 1000000000);
33
+ gasFees = ethers_1.ethers.zeroPadValue(ethers_1.ethers.toBeHex((maxPriorityFeePerGas << 128n) | maxFeePerGas), 32);
34
+ }
35
+ // Pack paymaster gas limits (these are always packed)
36
+ const paymasterVerificationGasLimit = 250000n;
37
+ const paymasterPostOpGasLimit = 150000n;
30
38
  const paymasterGasLimitsPacked = ethers_1.ethers.zeroPadValue(ethers_1.ethers.toBeHex((paymasterVerificationGasLimit << 128n) | paymasterPostOpGasLimit), 32);
31
- // Build paymasterAndData for hash (without signature)
39
+ // IMPORTANT: The paymasterAndData for hash calculation MUST include:
40
+ // 1. paymaster address (20 bytes)
41
+ // 2. paymaster gas limits packed (32 bytes)
42
+ // 3. validUntil + validAfter encoded (variable)
43
+ // 4. Empty signature placeholder (65 bytes of zeros)
32
44
  const paymasterAndDataForHash = ethers_1.ethers.concat([
33
45
  chainConfig.paymasterAddress,
34
46
  paymasterGasLimitsPacked,
35
47
  ethers_1.ethers.AbiCoder.defaultAbiCoder().encode(["uint48", "uint48"], [validUntil, validAfter]),
36
- "0x" + "00".repeat(65), // 65-byte placeholder for signature
48
+ "0x" + "00".repeat(65), // 65 bytes of zeros for signature placeholder
37
49
  ]);
38
- console.log(`[${chainConfig.name}] Account Gas Limits: ${accountGasLimits}`);
39
- console.log(`[${chainConfig.name}] Gas Fees: ${gasFees}`);
40
- console.log(`[${chainConfig.name}] PreVerificationGas: ${userOp.preVerificationGas || 50000n}`);
41
- // Get hash from paymaster contract
42
- const hash = await paymasterContract.getHash({
50
+ console.log(`[${chainConfig.name}] PaymasterAndData (for hash): ${paymasterAndDataForHash}`);
51
+ // Prepare the PackedUserOperation for the getHash call
52
+ const packedUserOp = {
43
53
  sender: userOp.sender,
44
- nonce: userOp.nonce,
54
+ nonce: BigInt(userOp.nonce),
45
55
  initCode: initCode,
46
56
  callData: userOp.callData,
47
57
  accountGasLimits: accountGasLimits,
48
58
  preVerificationGas: BigInt(userOp.preVerificationGas || 50000),
49
59
  gasFees: gasFees,
50
60
  paymasterAndData: paymasterAndDataForHash,
51
- signature: userOp.signature || "0x",
52
- }, validUntil, validAfter);
61
+ signature: "0x", // Empty signature for hash calculation
62
+ };
63
+ console.log(`[${chainConfig.name}] PackedUserOp for hash:`, {
64
+ sender: packedUserOp.sender,
65
+ nonce: packedUserOp.nonce.toString(),
66
+ initCode: packedUserOp.initCode,
67
+ callData: packedUserOp.callData,
68
+ accountGasLimits: packedUserOp.accountGasLimits,
69
+ preVerificationGas: packedUserOp.preVerificationGas.toString(),
70
+ gasFees: packedUserOp.gasFees,
71
+ paymasterAndData: packedUserOp.paymasterAndData,
72
+ });
73
+ // Get hash from paymaster contract
74
+ const hash = await paymasterContract.getHash(packedUserOp, validUntil, validAfter);
53
75
  console.log(`[${chainConfig.name}] Hash from contract: ${hash}`);
54
76
  // Sign the hash
55
77
  const signature = await connectedSigner.signMessage(ethers_1.ethers.getBytes(hash));
56
- // Build final paymasterData
78
+ console.log(`[${chainConfig.name}] Signature: ${signature}`);
79
+ // Build final paymasterData (same structure as paymasterAndDataForHash but with real signature)
57
80
  const paymasterData = ethers_1.ethers.concat([
81
+ chainConfig.paymasterAddress,
82
+ paymasterGasLimitsPacked,
58
83
  ethers_1.ethers.AbiCoder.defaultAbiCoder().encode(["uint48", "uint48"], [validUntil, validAfter]),
59
84
  signature,
60
85
  ]);
86
+ console.log(`[${chainConfig.name}] Final paymasterData length: ${paymasterData.length / 2} bytes`);
61
87
  return paymasterData;
62
88
  };
63
89
  exports.signUserOperation = signUserOperation;
@@ -1 +1 @@
1
- {"version":3,"file":"paymaster.service.js","sourceRoot":"","sources":["../../../../src/backend/services/paymaster.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paymaster.service.js","sourceRoot":"","sources":["../../../../src/backend/services/paymaster.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tradestack/paymaster",
3
- "version": "1.2.37",
3
+ "version": "1.2.38",
4
4
  "description": "Multi-chain sweep and paymaster SDK: EVM, Solana, Tron. Gasless transactions for your users.",
5
5
  "main": "dist/sdk/index.js",
6
6
  "types": "dist/sdk/index.d.ts",