UNPKG

@biconomy/sdk

Version:

SDK for Biconomy integration with support for account abstraction, smart accounts, ERC-4337.

43 lines 2.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.toK1Validator = exports.getK1InitData = exports.getK1ModuleInitData = void 0; const viem_1 = require("viem"); const constants_1 = require("../../constants/index.js"); const Helpers_1 = require("../utils/Helpers.js"); const toModule_1 = require("../utils/toModule.js"); const getK1ModuleInitData = (_) => ({ address: constants_1.MAINNET_ADDRESS_K1_VALIDATOR_ADDRESS, type: "validator", initData: "0x" }); exports.getK1ModuleInitData = getK1ModuleInitData; const getK1InitData = ({ signerAddress }) => (0, viem_1.encodePacked)(["address"], [signerAddress]); exports.getK1InitData = getK1InitData; const toK1Validator = (parameters) => { const { signer, initData: initData_, initArgs: initArgs_ = { signerAddress: signer.address }, moduleInitArgs: moduleInitArgs_, moduleInitData: moduleInitData_, deInitData = "0x", accountAddress, address = constants_1.MAINNET_ADDRESS_K1_VALIDATOR_ADDRESS } = parameters; const initData = initData_ ?? (0, exports.getK1InitData)(initArgs_); const moduleInitData = moduleInitData_ ?? (0, exports.getK1ModuleInitData)(moduleInitArgs_); return (0, toModule_1.toModule)({ signer, address, accountAddress, initData, deInitData, moduleInitData, getStubSignature: async () => { const dynamicPart = address.substring(2).padEnd(40, "0"); return `0x0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000${dynamicPart}000000000000000000000000000000000000000000000000000000000000004181d4b4981670cb18f99f0b4a66446df1bf5b204d24cfcb659bf38ba27a4359b5711649ec2423c5e1247245eba2964679b6a1dbb85c992ae40b9b00c6935b02ff1b00000000000000000000000000000000000000000000000000000000000000`; }, signUserOpHash: async (userOpHash) => { const signature = await signer.signMessage({ message: { raw: userOpHash } }); return signature; }, signMessage: async (message) => (0, Helpers_1.sanitizeSignature)(await signer.signMessage({ message })) }); }; exports.toK1Validator = toK1Validator; //# sourceMappingURL=toK1Validator.js.map