@pimlico/mock-paymaster 0.0.5 → 0.0.7
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.
- package/CHANGELOG.md +12 -0
- package/_cjs/helpers/erc20-utils.js +6 -17
- package/_cjs/helpers/erc20-utils.js.map +1 -1
- package/_cjs/helpers/schema.js +7 -7
- package/_cjs/helpers/schema.js.map +1 -1
- package/_cjs/index.js +5 -6
- package/_cjs/index.js.map +1 -1
- package/_cjs/relay.js +15 -7
- package/_cjs/relay.js.map +1 -1
- package/_cjs/setup.js +118 -0
- package/_cjs/setup.js.map +1 -0
- package/_cjs/singletonPaymasters.js +1 -64
- package/_cjs/singletonPaymasters.js.map +1 -1
- package/_esm/helpers/erc20-utils.js +4 -14
- package/_esm/helpers/erc20-utils.js.map +1 -1
- package/_esm/helpers/schema.js +7 -7
- package/_esm/helpers/schema.js.map +1 -1
- package/_esm/index.js +3 -5
- package/_esm/index.js.map +1 -1
- package/_esm/relay.js +21 -9
- package/_esm/relay.js.map +1 -1
- package/_esm/setup.js +120 -0
- package/_esm/setup.js.map +1 -0
- package/_esm/singletonPaymasters.js +3 -70
- package/_esm/singletonPaymasters.js.map +1 -1
- package/_types/helpers/erc20-utils.d.ts +2 -1
- package/_types/helpers/erc20-utils.d.ts.map +1 -1
- package/_types/helpers/schema.d.ts +569 -569
- package/_types/helpers/schema.d.ts.map +1 -1
- package/_types/index.d.ts +1 -2
- package/_types/index.d.ts.map +1 -1
- package/_types/relay.d.ts.map +1 -1
- package/_types/setup.d.ts +11 -0
- package/_types/setup.d.ts.map +1 -0
- package/_types/singletonPaymasters.d.ts +1 -5
- package/_types/singletonPaymasters.d.ts.map +1 -1
- package/helpers/erc20-utils.ts +4 -17
- package/helpers/schema.ts +7 -7
- package/index.ts +3 -9
- package/package.json +5 -10
- package/relay.ts +26 -14
- package/setup.ts +163 -0
- package/singletonPaymasters.ts +3 -94
package/_esm/helpers/schema.js
CHANGED
|
@@ -56,7 +56,7 @@ export const hexNumberSchema = z
|
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
})
|
|
59
|
-
.transform(
|
|
59
|
+
.transform(BigInt);
|
|
60
60
|
export const hexDataSchema = z
|
|
61
61
|
.string()
|
|
62
62
|
.regex(hexDataPattern, { message: "not valid hex data" })
|
|
@@ -64,21 +64,21 @@ export const hexDataSchema = z
|
|
|
64
64
|
const signedAuthorizationSchema = z.union([
|
|
65
65
|
z.object({
|
|
66
66
|
contractAddress: addressSchema,
|
|
67
|
-
chainId: hexNumberSchema.transform(
|
|
68
|
-
nonce: hexNumberSchema.transform(
|
|
67
|
+
chainId: hexNumberSchema.transform(Number),
|
|
68
|
+
nonce: hexNumberSchema.transform(Number),
|
|
69
69
|
r: hexDataSchema.transform((val) => val),
|
|
70
70
|
s: hexDataSchema.transform((val) => val),
|
|
71
71
|
v: hexNumberSchema.optional(),
|
|
72
|
-
yParity: hexNumberSchema.transform(
|
|
72
|
+
yParity: hexNumberSchema.transform(Number)
|
|
73
73
|
}),
|
|
74
74
|
z.object({
|
|
75
75
|
address: addressSchema,
|
|
76
|
-
chainId: hexNumberSchema.transform(
|
|
77
|
-
nonce: hexNumberSchema.transform(
|
|
76
|
+
chainId: hexNumberSchema.transform(Number),
|
|
77
|
+
nonce: hexNumberSchema.transform(Number),
|
|
78
78
|
r: hexDataSchema.transform((val) => val),
|
|
79
79
|
s: hexDataSchema.transform((val) => val),
|
|
80
80
|
v: hexNumberSchema.optional(),
|
|
81
|
-
yParity: hexNumberSchema.transform(
|
|
81
|
+
yParity: hexNumberSchema.transform(Number)
|
|
82
82
|
})
|
|
83
83
|
]);
|
|
84
84
|
const userOperationSchemaPaymasterV6 = z
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../helpers/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,MAAM,MAAM,CAAA;AAC3C,OAAO,EAAE,CAAC,EAA0B,MAAM,KAAK,CAAA;AAE/C,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,8EAAsB,CAAA;IACtB,0FAA4B,CAAA;IAC5B,8FAA8B,CAAA;AAClC,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AAED,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC3C,YAAY,GAAY;QACpB,IAAI,OAAO,GAAG,GAAG,CAAA;QACjB,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO,GAAG,6BAA6B,CAAA;QAC3C,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;CACJ;AAED,MAAM,OAAO,QAAS,SAAQ,KAAK;IAC/B,4DAA4D;IAC5D,YACI,GAAW,EACF,IAAa,EACb,OAAgB,SAAS;QAElC,KAAK,CAAC,GAAG,CAAC,CAAA;QAHV;;;;mBAAS,IAAI;WAAS;QACtB;;;;mBAAS,IAAI;WAAqB;IAGtC,CAAC;CACJ;AAED,MAAM,cAAc,GAAG,kBAAkB,CAAA;AACzC,MAAM,cAAc,GAAG,uBAAuB,CAAA;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KACzB,MAAM,EAAE;KACR,KAAK,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;KAC7D,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;AAExC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC3B,MAAM,EAAE;KACR,KAAK,CAAC,cAAc,CAAC;KACrB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACd,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACd,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACvB,qGAAqG;IACrG,IAAI,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,CAAA,CAAC,0DAA0D;IAC3E,CAAC;IAAC,MAAM,CAAC;QACL,GAAG,CAAC,QAAQ,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EACH,kEAAkE;SACzE,CAAC,CAAA;IACN,CAAC;AACL,CAAC,CAAC;KACD,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../helpers/schema.ts"],"names":[],"mappings":"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"}
|
package/_esm/index.js
CHANGED
|
@@ -3,10 +3,9 @@ import Fastify from "fastify";
|
|
|
3
3
|
import { defineInstance } from "prool";
|
|
4
4
|
import { http, createWalletClient } from "viem";
|
|
5
5
|
import { privateKeyToAccount } from "viem/accounts";
|
|
6
|
-
import { deployErc20Token, erc20Address, sudoMintTokens } from "./helpers/erc20-utils.js";
|
|
7
6
|
import { getChain } from "./helpers/utils.js";
|
|
8
7
|
import { createRpcHandler } from "./relay.js";
|
|
9
|
-
import {
|
|
8
|
+
import { setup } from "./setup.js";
|
|
10
9
|
export const paymaster = defineInstance(({ anvilRpc, altoRpc, port: _port, host: _host = "localhost" }) => {
|
|
11
10
|
const app = Fastify({});
|
|
12
11
|
return {
|
|
@@ -20,11 +19,10 @@ export const paymaster = defineInstance(({ anvilRpc, altoRpc, port: _port, host:
|
|
|
20
19
|
account: privateKeyToAccount("0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"),
|
|
21
20
|
transport: http(anvilRpc)
|
|
22
21
|
});
|
|
23
|
-
await
|
|
22
|
+
await setup({
|
|
24
23
|
anvilRpc,
|
|
25
24
|
paymasterSigner: paymasterSigner.account.address
|
|
26
25
|
});
|
|
27
|
-
await deployErc20Token(anvilRpc);
|
|
28
26
|
app.register(cors, {
|
|
29
27
|
origin: "*",
|
|
30
28
|
methods: ["POST", "GET", "OPTIONS"]
|
|
@@ -45,5 +43,5 @@ export const paymaster = defineInstance(({ anvilRpc, altoRpc, port: _port, host:
|
|
|
45
43
|
}
|
|
46
44
|
};
|
|
47
45
|
});
|
|
48
|
-
export { erc20Address, sudoMintTokens };
|
|
46
|
+
export { erc20Address, sudoMintTokens } from "./helpers/erc20-utils.js";
|
|
49
47
|
//# sourceMappingURL=index.js.map
|
package/_esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,eAAe,CAAA;AAChC,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,eAAe,CAAA;AAChC,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CACnC,CAAC,EACG,QAAQ,EACR,OAAO,EACP,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,KAAK,GAAG,WAAW,EACwC,EAAE,EAAE;IACrE,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,CAAA;IAEvB,OAAO;QACH,SAAS,EAAE,EAAE;QACb,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE,EAAE;YAC9B,MAAM,eAAe,GAAG,kBAAkB,CAAC;gBACvC,KAAK,EAAE,MAAM,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,OAAO,EAAE,mBAAmB,CACxB,oEAAoE,CACvE;gBACD,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC;aAC5B,CAAC,CAAA;YAEF,MAAM,KAAK,CAAC;gBACR,QAAQ;gBACR,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,OAAO;aACnD,CAAC,CAAA;YAEF,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE;gBACf,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC;aACtC,CAAC,CAAA;YAEF,MAAM,UAAU,GAAG,gBAAgB,CAAC;gBAChC,OAAO;gBACP,QAAQ;gBACR,eAAe;aAClB,CAAC,CAAA;YACF,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;YAE7B,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;gBACvC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YACpD,CAAC,CAAC,CAAA;YAEF,MAAM,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,GAAG,CAAC,KAAK,EAAE,CAAA;QACf,CAAC;KACJ,CAAA;AACL,CAAC,CACJ,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA"}
|
package/_esm/relay.js
CHANGED
|
@@ -153,14 +153,6 @@ const handleMethod = async ({ parsedBody, paymasterSigner, publicClient, bundler
|
|
|
153
153
|
}
|
|
154
154
|
];
|
|
155
155
|
}
|
|
156
|
-
if (parsedBody.method === "pimlico_getUserOperationGasPrice") {
|
|
157
|
-
return await bundlerClient.request({
|
|
158
|
-
// @ts-ignore
|
|
159
|
-
method: "pimlico_getUserOperationGasPrice",
|
|
160
|
-
// @ts-ignore
|
|
161
|
-
params: []
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
156
|
if (parsedBody.method === "pimlico_getTokenQuotes") {
|
|
165
157
|
const params = pimlicoGetTokenQuotesSchema.safeParse(parsedBody.params);
|
|
166
158
|
if (!params.success) {
|
|
@@ -194,7 +186,27 @@ const handleMethod = async ({ parsedBody, paymasterSigner, publicClient, bundler
|
|
|
194
186
|
}))
|
|
195
187
|
};
|
|
196
188
|
}
|
|
197
|
-
|
|
189
|
+
// If boosted userOp, forward to bundler's boost_sendUserOperation method.
|
|
190
|
+
if (parsedBody.method === "eth_sendUserOperation") {
|
|
191
|
+
const userOp = parsedBody.params[0];
|
|
192
|
+
const isBoosted = userOp.maxFeePerGas === "0x0" &&
|
|
193
|
+
userOp.maxPriorityFeePerGas === "0x0";
|
|
194
|
+
if (isBoosted) {
|
|
195
|
+
return await bundlerClient.request({
|
|
196
|
+
// @ts-ignore
|
|
197
|
+
method: "boost_sendUserOperation",
|
|
198
|
+
// @ts-ignore
|
|
199
|
+
params: parsedBody.params
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
// Forward all other requests to the bundler
|
|
204
|
+
return await bundlerClient.request({
|
|
205
|
+
// @ts-ignore
|
|
206
|
+
method: parsedBody.method,
|
|
207
|
+
// @ts-ignore
|
|
208
|
+
params: parsedBody.params ?? []
|
|
209
|
+
});
|
|
198
210
|
};
|
|
199
211
|
export const createRpcHandler = ({ altoRpc, anvilRpc, paymasterSigner }) => {
|
|
200
212
|
return async (request, _reply) => {
|
package/_esm/relay.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay.js","sourceRoot":"","sources":["../relay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EACH,IAAI,EAGJ,SAAS,EAMT,UAAU,EACV,KAAK,EACR,MAAM,MAAM,CAAA;AACb,OAAO,EAGH,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACtB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EACH,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,eAAe,EAClB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EACH,oBAAoB,EAEpB,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,2BAA2B,EAC3B,kBAAkB,EAClB,kCAAkC,EAClC,kCAAkC,EACrC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEH,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,SAAS,EACZ,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACH,qBAAqB,EACrB,sBAAsB,EACzB,MAAM,0BAA0B,CAAA;AAEjC,MAAM,eAAe,GAAG,KAAK,EAAE,EAC3B,UAAU,EACV,aAAa,EACb,aAAa,EACb,OAAO,EACP,SAAS,EACT,YAAY,EACZ,eAAe,EACf,WAAW,EAUd,EAAE,EAAE;IACD,MAAM,IAAI,GAAG,UAAU,KAAK,mBAAmB,CAAA;IAE/C,IAAI,eAAe,GAAG;QAClB,GAAG,aAAa;QAChB,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;KAC9C,CAAA;IAElB,0BAA0B;IAC1B,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAA;IAC/C,MAAM,oBAAoB,GAAG,aAAa,CAAC,oBAAoB,CAAA;IAC/D,MAAM,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,CAAA;IAE3D,IAAI,WAAW,EAAE,CAAC;QACd,IAAI,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,wBAAwB,CAAC;gBACxD,GAAG,eAAe;gBAClB,iBAAiB,EAAE,UAAU;aAChC,CAAC,CAAA;YAEF,eAAe,GAAG;gBACd,GAAG,eAAe;gBAClB,GAAG,YAAY;aACD,CAAA;YAElB,eAAe,CAAC,YAAY,GAAG,SAAS,CACpC,YAAY,CAAC,YAAY,EACzB,YAAY,CACf,CAAA;YACD,eAAe,CAAC,kBAAkB,GAAG,SAAS,CAC1C,YAAY,CAAC,kBAAkB,EAC/B,kBAAkB,CACrB,CAAA;YACD,eAAe,CAAC,oBAAoB,GAAG,SAAS,CAC5C,YAAY,CAAC,oBAAoB,EACjC,oBAAoB,CACvB,CAAA;QACL,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YAClB,IAAI,CAAC,CAAC,CAAC,YAAY,SAAS,CAAC;gBAAE,MAAM,IAAI,oBAAoB,EAAE,CAAA;YAC/D,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,EAAqB,CAAA;YACvC,MAAM,GAAG,CAAA;QACb,CAAC;IACL,CAAC;SAAM,IACH,aAAa,CAAC,kBAAkB,KAAK,EAAE;QACvC,aAAa,CAAC,oBAAoB,KAAK,EAAE;QACzC,aAAa,CAAC,YAAY,KAAK,EAAE,EACnC,CAAC;QACC,MAAM,IAAI,QAAQ,CACd,uFAAuF,EACvF,gBAAgB,CAAC,aAAa,CACjC,CAAA;IACL,CAAC;IAED,MAAM,MAAM,GAAG;QACX,kBAAkB,EAAE,KAAK,CAAC,eAAe,CAAC,kBAAkB,CAAC;QAC7D,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC;QACjD,6BAA6B,EAAE,KAAK,CAChC,eAAe,CAAC,6BAA6B,IAAI,CAAC,CACrD;QACD,uBAAuB,EAAE,KAAK,CAC1B,eAAe,CAAC,uBAAuB,IAAI,CAAC,CAC/C;QACD,oBAAoB,EAAE,KAAK,CAAC,eAAe,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACtE,GAAG,CAAC,MAAM,sBAAsB,CAAC;YAC7B,YAAY;YACZ,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,eAAe;YACvB,SAAS;YACT,aAAa;SAChB,CAAC,CAAC;KACN,CAAA;IAED,OAAO,MAAM,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,UAAmB,EAAE,EAAE;IAC/C,IACI,UAAU,KAAK,mBAAmB;QAClC,UAAU,KAAK,mBAAmB;QAClC,UAAU,KAAK,mBAAmB,EACpC,CAAC;QACC,MAAM,IAAI,QAAQ,CACd,0BAA0B,EAC1B,gBAAgB,CAAC,aAAa,CACjC,CAAA;IACL,CAAC;AACL,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,KAAK,EAAE,EACxB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,aAAa,EAMhB,EAAE,EAAE;IACD,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC,GAAG;QAC5C,8BAA8B,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;QAC/D,8BAA8B,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;QAC/D,8BAA8B,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;KAClE,CAAA;IAED,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"relay.js","sourceRoot":"","sources":["../relay.ts"],"names":[],"mappings":"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"}
|
package/_esm/setup.js
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { concat, getContract, parseEther } from "viem";
|
|
2
|
+
import { constants, getSingletonPaymaster06Address, getSingletonPaymaster06InitCode, getSingletonPaymaster07Address, getSingletonPaymaster07InitCode, getSingletonPaymaster08Address, getSingletonPaymaster08InitCode } from "./constants.js";
|
|
3
|
+
import { singletonPaymaster06Abi, singletonPaymaster07Abi, singletonPaymaster08Abi } from "./helpers/abi.js";
|
|
4
|
+
import { create2Salt, erc20Address, erc20Bytecode, getPaymasterUtilityWallet } from "./helpers/erc20-utils.js";
|
|
5
|
+
import { getPublicClient } from "./helpers/utils.js";
|
|
6
|
+
export const deployPaymasters = async ({ anvilRpc, paymasterSigner }) => {
|
|
7
|
+
const walletClient = await getPaymasterUtilityWallet(anvilRpc);
|
|
8
|
+
const publicClient = await getPublicClient(anvilRpc);
|
|
9
|
+
let nonce = await publicClient.getTransactionCount({
|
|
10
|
+
address: walletClient.account.address
|
|
11
|
+
});
|
|
12
|
+
const paymaster06Address = getSingletonPaymaster06Address(paymasterSigner);
|
|
13
|
+
const paymaster07Address = getSingletonPaymaster07Address(paymasterSigner);
|
|
14
|
+
const paymaster08Address = getSingletonPaymaster08Address(paymasterSigner);
|
|
15
|
+
// Deploy singleton paymaster 06 if not already deployed.
|
|
16
|
+
const paymaster06Code = await publicClient.getCode({
|
|
17
|
+
address: paymaster06Address
|
|
18
|
+
});
|
|
19
|
+
if (!paymaster06Code) {
|
|
20
|
+
const hash = await walletClient.sendTransaction({
|
|
21
|
+
to: constants.deterministicDeployer,
|
|
22
|
+
data: concat([
|
|
23
|
+
constants.create2Salt,
|
|
24
|
+
getSingletonPaymaster06InitCode(paymasterSigner)
|
|
25
|
+
]),
|
|
26
|
+
nonce: nonce++
|
|
27
|
+
});
|
|
28
|
+
await publicClient.waitForTransactionReceipt({ hash });
|
|
29
|
+
}
|
|
30
|
+
// Deploy singleton paymaster 07 if not already deployed.
|
|
31
|
+
const paymaster07Code = await publicClient.getCode({
|
|
32
|
+
address: paymaster07Address
|
|
33
|
+
});
|
|
34
|
+
if (!paymaster07Code) {
|
|
35
|
+
const hash = await walletClient.sendTransaction({
|
|
36
|
+
to: constants.deterministicDeployer,
|
|
37
|
+
data: concat([
|
|
38
|
+
constants.create2Salt,
|
|
39
|
+
getSingletonPaymaster07InitCode(paymasterSigner)
|
|
40
|
+
]),
|
|
41
|
+
nonce: nonce++
|
|
42
|
+
});
|
|
43
|
+
await publicClient.waitForTransactionReceipt({ hash });
|
|
44
|
+
}
|
|
45
|
+
// Deploy singleton paymaster 08 if not already deployed.
|
|
46
|
+
const paymaster08Code = await publicClient.getCode({
|
|
47
|
+
address: paymaster08Address
|
|
48
|
+
});
|
|
49
|
+
if (!paymaster08Code) {
|
|
50
|
+
const hash = await walletClient.sendTransaction({
|
|
51
|
+
to: constants.deterministicDeployer,
|
|
52
|
+
data: concat([
|
|
53
|
+
constants.create2Salt,
|
|
54
|
+
getSingletonPaymaster08InitCode(paymasterSigner)
|
|
55
|
+
]),
|
|
56
|
+
nonce: nonce++
|
|
57
|
+
});
|
|
58
|
+
await publicClient.waitForTransactionReceipt({ hash });
|
|
59
|
+
}
|
|
60
|
+
const depositAmount = parseEther("50");
|
|
61
|
+
// Initialize contract instances and fund if needed.
|
|
62
|
+
// Only check deposit balance if the contract was already deployed.
|
|
63
|
+
// Fund paymaster 06 if balance is less than deposit amount.
|
|
64
|
+
const singletonPaymaster06 = getContract({
|
|
65
|
+
address: paymaster06Address,
|
|
66
|
+
abi: singletonPaymaster06Abi,
|
|
67
|
+
client: walletClient
|
|
68
|
+
});
|
|
69
|
+
const deposit06 = await singletonPaymaster06.read.getDeposit();
|
|
70
|
+
if (deposit06 < depositAmount) {
|
|
71
|
+
await singletonPaymaster06.write.deposit({
|
|
72
|
+
value: depositAmount,
|
|
73
|
+
nonce: nonce++
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
// Fund paymaster 07 if balance is less than deposit amount.
|
|
77
|
+
const singletonPaymaster07 = getContract({
|
|
78
|
+
address: paymaster07Address,
|
|
79
|
+
abi: singletonPaymaster07Abi,
|
|
80
|
+
client: walletClient
|
|
81
|
+
});
|
|
82
|
+
const deposit07 = await singletonPaymaster07.read.getDeposit();
|
|
83
|
+
if (deposit07 < depositAmount) {
|
|
84
|
+
await singletonPaymaster07.write.deposit({
|
|
85
|
+
value: depositAmount,
|
|
86
|
+
nonce: nonce++
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
// Fund paymaster 08 if balance is less than deposit amount.
|
|
90
|
+
const singletonPaymaster08 = getContract({
|
|
91
|
+
address: paymaster08Address,
|
|
92
|
+
abi: singletonPaymaster08Abi,
|
|
93
|
+
client: walletClient
|
|
94
|
+
});
|
|
95
|
+
const deposit08 = await singletonPaymaster08.read.getDeposit();
|
|
96
|
+
if (deposit08 < depositAmount) {
|
|
97
|
+
await singletonPaymaster08.write.deposit({
|
|
98
|
+
value: depositAmount,
|
|
99
|
+
nonce: nonce++
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
export const deployErc20Token = async (anvilRpc) => {
|
|
104
|
+
const publicClient = await getPublicClient(anvilRpc);
|
|
105
|
+
if ((await publicClient.getCode({ address: erc20Address })) === undefined) {
|
|
106
|
+
const walletClient = await getPaymasterUtilityWallet(anvilRpc);
|
|
107
|
+
await walletClient.sendTransaction({
|
|
108
|
+
to: "0x4e59b44847b379578588920ca78fbf26c0b4956c",
|
|
109
|
+
data: concat([create2Salt, erc20Bytecode])
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
export const setup = async ({ anvilRpc, paymasterSigner }) => {
|
|
114
|
+
await deployPaymasters({
|
|
115
|
+
anvilRpc,
|
|
116
|
+
paymasterSigner
|
|
117
|
+
});
|
|
118
|
+
await deployErc20Token(anvilRpc);
|
|
119
|
+
};
|
|
120
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { concat, encodePacked, getContract,
|
|
1
|
+
import { concat, encodePacked, getContract, toBytes } from "viem";
|
|
2
2
|
import { toPackedUserOperation } from "viem/account-abstraction";
|
|
3
|
-
import { constants
|
|
4
|
-
import { singletonPaymaster06Abi, singletonPaymaster07Abi
|
|
5
|
-
import { getPaymasterUtilityWallet } from "./helpers/erc20-utils.js";
|
|
6
|
-
import { getPublicClient } from "./helpers/utils.js";
|
|
3
|
+
import { constants } from "./constants.js";
|
|
4
|
+
import { singletonPaymaster06Abi, singletonPaymaster07Abi } from "./helpers/abi.js";
|
|
7
5
|
export const getDummyPaymasterData = ({ is06, paymaster, paymasterMode }) => {
|
|
8
6
|
let encodedDummyData;
|
|
9
7
|
const validUntil = 0;
|
|
@@ -156,69 +154,4 @@ export const getSignedPaymasterData = async ({ publicClient, signer, userOp, pay
|
|
|
156
154
|
paymasterData
|
|
157
155
|
};
|
|
158
156
|
};
|
|
159
|
-
export const deployPaymasters = async ({ anvilRpc, paymasterSigner }) => {
|
|
160
|
-
const walletClient = await getPaymasterUtilityWallet(anvilRpc);
|
|
161
|
-
const publicClient = await getPublicClient(anvilRpc);
|
|
162
|
-
let nonce = await publicClient.getTransactionCount({
|
|
163
|
-
address: walletClient.account.address
|
|
164
|
-
});
|
|
165
|
-
// Deploy singleton paymaster 06.
|
|
166
|
-
await walletClient.sendTransaction({
|
|
167
|
-
to: constants.deterministicDeployer,
|
|
168
|
-
data: concat([
|
|
169
|
-
constants.create2Salt,
|
|
170
|
-
getSingletonPaymaster06InitCode(paymasterSigner)
|
|
171
|
-
]),
|
|
172
|
-
nonce: nonce++
|
|
173
|
-
});
|
|
174
|
-
// Deploy singleton paymaster 07.
|
|
175
|
-
await walletClient.sendTransaction({
|
|
176
|
-
to: constants.deterministicDeployer,
|
|
177
|
-
data: concat([
|
|
178
|
-
constants.create2Salt,
|
|
179
|
-
getSingletonPaymaster07InitCode(paymasterSigner)
|
|
180
|
-
]),
|
|
181
|
-
nonce: nonce++
|
|
182
|
-
});
|
|
183
|
-
// Deploy singleton paymaster 08.
|
|
184
|
-
await walletClient.sendTransaction({
|
|
185
|
-
to: constants.deterministicDeployer,
|
|
186
|
-
data: concat([
|
|
187
|
-
constants.create2Salt,
|
|
188
|
-
getSingletonPaymaster08InitCode(paymasterSigner)
|
|
189
|
-
]),
|
|
190
|
-
nonce: nonce++
|
|
191
|
-
});
|
|
192
|
-
// Initialize contract instances.
|
|
193
|
-
const [singletonPaymaster06, singletonPaymaster07, singletonPaymaster08] = [
|
|
194
|
-
getContract({
|
|
195
|
-
address: getSingletonPaymaster06Address(paymasterSigner),
|
|
196
|
-
abi: singletonPaymaster06Abi,
|
|
197
|
-
client: walletClient
|
|
198
|
-
}),
|
|
199
|
-
getContract({
|
|
200
|
-
address: getSingletonPaymaster07Address(paymasterSigner),
|
|
201
|
-
abi: singletonPaymaster07Abi,
|
|
202
|
-
client: walletClient
|
|
203
|
-
}),
|
|
204
|
-
getContract({
|
|
205
|
-
address: getSingletonPaymaster08Address(paymasterSigner),
|
|
206
|
-
abi: singletonPaymaster08Abi,
|
|
207
|
-
client: walletClient
|
|
208
|
-
})
|
|
209
|
-
];
|
|
210
|
-
// Fund the paymasters.
|
|
211
|
-
await singletonPaymaster06.write.deposit({
|
|
212
|
-
value: parseEther("50"),
|
|
213
|
-
nonce: nonce++
|
|
214
|
-
});
|
|
215
|
-
await singletonPaymaster07.write.deposit({
|
|
216
|
-
value: parseEther("50"),
|
|
217
|
-
nonce: nonce++
|
|
218
|
-
});
|
|
219
|
-
await singletonPaymaster08.write.deposit({
|
|
220
|
-
value: parseEther("50"),
|
|
221
|
-
nonce: nonce++
|
|
222
|
-
});
|
|
223
|
-
};
|
|
224
157
|
//# sourceMappingURL=singletonPaymasters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"singletonPaymasters.js","sourceRoot":"","sources":["../singletonPaymasters.ts"],"names":[],"mappings":"AAAA,OAAO,EAQH,MAAM,EACN,YAAY,EACZ,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"singletonPaymasters.js","sourceRoot":"","sources":["../singletonPaymasters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type Account, type Address, type Chain, type Transport, type WalletClient } from "viem";
|
|
2
|
+
export declare const erc20Bytecode: `0x${string}`;
|
|
3
|
+
export declare const create2Salt = "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
2
4
|
export declare const getPaymasterUtilityWallet: (anvilRpc: string) => Promise<WalletClient<Transport, Chain, Account>>;
|
|
3
|
-
export declare const deployErc20Token: (anvilRpc: string) => Promise<void>;
|
|
4
5
|
export declare const tokenBalanceOf: (holder: Address, anvilRpc: string) => Promise<bigint>;
|
|
5
6
|
export declare const sudoMintTokens: ({ amount, to, anvilRpc }: {
|
|
6
7
|
amount: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc20-utils.d.ts","sourceRoot":"","sources":["../../helpers/erc20-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,YAAY,EAWpB,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"erc20-utils.d.ts","sourceRoot":"","sources":["../../helpers/erc20-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,YAAY,EAWpB,MAAM,MAAM,CAAA;AAIb,eAAO,MAAM,aAAa,eAGxB,CAAA;AAEF,eAAO,MAAM,WAAW,uEACgD,CAAA;AAExE,eAAO,MAAM,yBAAyB,GAClC,UAAU,MAAM,KACjB,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CA+BjD,CAAA;AAED,eAAO,MAAM,cAAc,GAAU,QAAQ,OAAO,EAAE,UAAU,MAAM,oBAarE,CAAA;AAED,eAAO,MAAM,cAAc,GAAU,0BAIlC;IACC,MAAM,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,OAAO,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;CACnB,kBAWA,CAAA;AAED,eAAO,MAAM,YAAY,eAIvB,CAAA"}
|