UNPKG

@abstraxn/bundler

Version:

Abstraxn Bundler package to interact with any bundler node as per ERC4337 standard

52 lines 1.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getTimestampInSeconds = exports.deepHexlify = exports.transformUserOP = void 0; const ethers_1 = require("ethers"); const utils_1 = require("ethers/lib/utils"); const transformUserOP = (userOp) => { try { const userOperation = { ...userOp }; const keys = [ "nonce", "callGasLimit", "verificationGasLimit", "preVerificationGas", "maxFeePerGas", "maxPriorityFeePerGas", ]; for (const key of keys) { if (userOperation[key] && userOperation[key] !== "0") { userOperation[key] = ethers_1.BigNumber.from(userOp[key]).toHexString(); } } return userOperation; } catch (error) { throw `Failed to transform user operation: ${error}`; } }; exports.transformUserOP = transformUserOP; function deepHexlify(obj) { if (typeof obj === "function") { return undefined; } if (obj == null || typeof obj === "string" || typeof obj === "boolean") { return obj; } else if (obj._isBigNumber != null || typeof obj !== "object") { return (0, utils_1.hexlify)(obj).replace(/^0x0/, "0x"); } if (Array.isArray(obj)) { return obj.map((member) => deepHexlify(member)); } return Object.keys(obj).reduce((set, key) => ({ ...set, [key]: deepHexlify(obj[key]), }), {}); } exports.deepHexlify = deepHexlify; const getTimestampInSeconds = () => { return Math.floor(Date.now() / 1000); }; exports.getTimestampInSeconds = getTimestampInSeconds; //# sourceMappingURL=HelperFunction.js.map