From a4082ad75520a6640d1face2748446edc71c5b60 Mon Sep 17 00:00:00 2001 From: taek Date: Sat, 7 Dec 2024 16:16:47 +0900 Subject: [PATCH] Fix/update sdk (#11) * added test case, need to figure out how to deal with celo-alfajores * bumped version to 0.1.1 --- biome.json | 2 +- bun.lockb | Bin 155832 -> 95107 bytes package.json | 8 ++--- src/action/deployContracts.ts | 19 +++-------- src/clients/createKernelClient.ts | 54 ++++++++++++++---------------- test/deployContract.test.ts | 38 +++++++++++++++++++++ 6 files changed, 73 insertions(+), 48 deletions(-) create mode 100644 test/deployContract.test.ts diff --git a/biome.json b/biome.json index 9d6847c..17d4834 100644 --- a/biome.json +++ b/biome.json @@ -40,7 +40,7 @@ "javascript": { "formatter": { "semicolons": "asNeeded", - "trailingComma": "none" + "trailingCommas": "none" } } } diff --git a/bun.lockb b/bun.lockb index a98633c141d82f6ec1e477cf90b49e0f04bbcb53..5c3614cfcb985277a3a76defbb97cc92fd7b839d 100755 GIT binary patch delta 27181 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

ZUU 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 { - const entryPoint = ENTRYPOINT_ADDRESS_V07 +export const createKernelClient = async ( + privateKey: Hex, + chain: Chain +): Promise => { const rpcUrl = getZeroDevBundlerRPC(chain.projectId, "PIMLICO") const paymasterRpcUrl = getZeroDevPaymasterRPC(chain.projectId, "PIMLICO") - + const entryPoint = getEntryPoint("0.7") const publicClient = createPublicClient({ - transport: http(rpcUrl) + transport: http(rpcUrl), + chain: chain.viemChainObject }) const signer = privateKeyToAccount(privateKey) - const ecdsaValidatorPlugin = await signerToEcdsaValidator(publicClient, { - entryPoint, + const ecdsaValidator = await signerToEcdsaValidator(publicClient, { signer, + entryPoint, kernelVersion: KERNEL_V3_1 }) - const kernelAccount = await createKernelAccount(publicClient, { - entryPoint, + // Construct a Kernel account + const account = await createKernelAccount(publicClient, { plugins: { - sudo: ecdsaValidatorPlugin + sudo: ecdsaValidator }, + entryPoint, kernelVersion: KERNEL_V3_1 }) + const zerodevPaymaster = createZeroDevPaymasterClient({ + chain: chain.viemChainObject, + transport: http(paymasterRpcUrl) + }) + // Construct a Kernel account client const kernelClient = createKernelAccountClient({ - account: kernelAccount, + account, chain: chain.viemChainObject, - bundlerTransport: http(rpcUrl, { - timeout: 60000 // 1 min - }), - middleware: { - sponsorUserOperation: async ({ userOperation }) => { - const zeroDevPaymasterClient = createZeroDevPaymasterClient({ - chain: chain.viemChainObject, - transport: http(paymasterRpcUrl), - entryPoint - }) - return zeroDevPaymasterClient.sponsorUserOperation({ - userOperation, - entryPoint - }) + bundlerTransport: http(rpcUrl), + paymaster: { + getPaymasterData(userOperation) { + return zerodevPaymaster.sponsorUserOperation({ userOperation }) } - }, - entryPoint + } }) return kernelClient diff --git a/test/deployContract.test.ts b/test/deployContract.test.ts new file mode 100644 index 0000000..6a202c1 --- /dev/null +++ b/test/deployContract.test.ts @@ -0,0 +1,38 @@ +import { expect, test } from "bun:test"; +import { deployToChain,deployContracts } from "../src/action/deployContracts"; +import { processAndValidateChains } from "../src/utils"; +import {generatePrivateKey,} from "viem/accounts"; +import { concat } from 'viem' + + +const PRIVATE_KEY = generatePrivateKey(); // this is copied from viem.sh docs, so don't use this in production and no it's not even ours + +test("deployContract", async () => { + await deployToChain( + PRIVATE_KEY, + processAndValidateChains("sepolia", { + testnetAll : false, + mainnetAll : false, + allNetworks : false + })[0], + concat(['0x00', generatePrivateKey()]), + generatePrivateKey(), + undefined, + undefined + ); +}, 30000); + +test("deployContractTestnet", async () => { + await deployContracts( + PRIVATE_KEY, + concat(['0x00', generatePrivateKey()]), + processAndValidateChains(undefined, { + testnetAll : true, + mainnetAll : false, + allNetworks : false + }), + generatePrivateKey(), + undefined, + undefined + ); +}, 30000); \ No newline at end of file