@pimlico/alto 0.0.0-prool.20240609T211112 → 0.0.0-prool.20240609T212210
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/esm/cli/alto.js +59 -28
- package/esm/cli/alto.js.map +1 -1
- package/esm/cli/config/bundler.d.ts +38 -38
- package/esm/cli/config/bundler.js +77 -74
- package/esm/cli/config/bundler.js.map +1 -1
- package/esm/cli/config/index.js +18 -2
- package/esm/cli/config/index.js.map +1 -1
- package/esm/cli/config/options.js +13 -10
- package/esm/cli/config/options.js.map +1 -1
- package/esm/cli/customTransport.js +11 -7
- package/esm/cli/customTransport.js.map +1 -1
- package/esm/cli/handler.js +28 -24
- package/esm/cli/handler.js.map +1 -1
- package/esm/cli/index.js +19 -3
- package/esm/cli/index.js.map +1 -1
- package/esm/cli/instrumentation.js +22 -20
- package/esm/cli/instrumentation.js.map +1 -1
- package/esm/cli/setupServer.js +21 -17
- package/esm/cli/setupServer.js.map +1 -1
- package/esm/cli/util.js +5 -1
- package/esm/cli/util.js.map +1 -1
- package/esm/executor/executor.js +84 -56
- package/esm/executor/executor.js.map +1 -1
- package/esm/executor/executorManager.js +11 -7
- package/esm/executor/executorManager.js.map +1 -1
- package/esm/executor/index.js +20 -4
- package/esm/executor/index.js.map +1 -1
- package/esm/executor/senderManager.js +12 -8
- package/esm/executor/senderManager.js.map +1 -1
- package/esm/executor/test/utils.js +28 -22
- package/esm/executor/test/utils.js.map +1 -1
- package/esm/executor/utils.js +61 -31
- package/esm/executor/utils.js.map +1 -1
- package/esm/mempool/index.js +20 -4
- package/esm/mempool/index.js.map +1 -1
- package/esm/mempool/mempool.js +59 -55
- package/esm/mempool/mempool.js.map +1 -1
- package/esm/mempool/monitoring.js +5 -1
- package/esm/mempool/monitoring.js.map +1 -1
- package/esm/mempool/nullMempool.js +5 -1
- package/esm/mempool/nullMempool.js.map +1 -1
- package/esm/mempool/reputationManager.js +49 -44
- package/esm/mempool/reputationManager.js.map +1 -1
- package/esm/mempool/store.js +5 -1
- package/esm/mempool/store.js.map +1 -1
- package/esm/rpc/EntryPointSimulationsV07.js +50 -44
- package/esm/rpc/EntryPointSimulationsV07.js.map +1 -1
- package/esm/rpc/ExecuteSimulator.js +5 -2
- package/esm/rpc/ExecuteSimulator.js.map +1 -1
- package/esm/rpc/gasEstimation.js +69 -62
- package/esm/rpc/gasEstimation.js.map +1 -1
- package/esm/rpc/index.js +20 -4
- package/esm/rpc/index.js.map +1 -1
- package/esm/rpc/nonceQueuer.js +20 -16
- package/esm/rpc/nonceQueuer.js.map +1 -1
- package/esm/rpc/rpcHandler.js +103 -76
- package/esm/rpc/rpcHandler.js.map +1 -1
- package/esm/rpc/server.js +58 -28
- package/esm/rpc/server.js.map +1 -1
- package/esm/rpc/validation/BundlerCollectorTracerV06.js +5 -1
- package/esm/rpc/validation/BundlerCollectorTracerV06.js.map +1 -1
- package/esm/rpc/validation/BundlerCollectorTracerV07.js +5 -1
- package/esm/rpc/validation/BundlerCollectorTracerV07.js.map +1 -1
- package/esm/rpc/validation/SafeValidator.js +69 -65
- package/esm/rpc/validation/SafeValidator.js.map +1 -1
- package/esm/rpc/validation/TracerResultParserV06.js +30 -26
- package/esm/rpc/validation/TracerResultParserV06.js.map +1 -1
- package/esm/rpc/validation/TracerResultParserV07.js +36 -29
- package/esm/rpc/validation/TracerResultParserV07.js.map +1 -1
- package/esm/rpc/validation/UnsafeValidator.js +73 -46
- package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
- package/esm/rpc/validation/index.js +18 -2
- package/esm/rpc/validation/index.js.map +1 -1
- package/esm/rpc/validation/tracer.d.ts +1 -1
- package/esm/rpc/validation/tracer.js +37 -7
- package/esm/rpc/validation/tracer.js.map +1 -1
- package/esm/types/contracts/BundleBulker.js +4 -1
- package/esm/types/contracts/BundleBulker.js.map +1 -1
- package/esm/types/contracts/CallEngine.js +4 -1
- package/esm/types/contracts/CallEngine.js.map +1 -1
- package/esm/types/contracts/CodeHashGetter.js +5 -2
- package/esm/types/contracts/CodeHashGetter.js.map +1 -1
- package/esm/types/contracts/EntryPoint.js +7 -4
- package/esm/types/contracts/EntryPoint.js.map +1 -1
- package/esm/types/contracts/EntryPointSimulations.js +6 -3
- package/esm/types/contracts/EntryPointSimulations.js.map +1 -1
- package/esm/types/contracts/IOpInflator.js +4 -1
- package/esm/types/contracts/IOpInflator.js.map +1 -1
- package/esm/types/contracts/IPaymaster.js +4 -1
- package/esm/types/contracts/IPaymaster.js.map +1 -1
- package/esm/types/contracts/Inflator.js +4 -1
- package/esm/types/contracts/Inflator.js.map +1 -1
- package/esm/types/contracts/PerOpInflator.js +4 -1
- package/esm/types/contracts/PerOpInflator.js.map +1 -1
- package/esm/types/contracts/PimlicoEntryPointSimulations.js +5 -2
- package/esm/types/contracts/PimlicoEntryPointSimulations.js.map +1 -1
- package/esm/types/contracts/SenderCreator.js +5 -2
- package/esm/types/contracts/SenderCreator.js.map +1 -1
- package/esm/types/contracts/SimpleAccountFactory.js +5 -2
- package/esm/types/contracts/SimpleAccountFactory.js.map +1 -1
- package/esm/types/contracts/TestOpcodesAccount.js +5 -2
- package/esm/types/contracts/TestOpcodesAccount.js.map +1 -1
- package/esm/types/contracts/TestOpcodesAccountFactory.js +5 -2
- package/esm/types/contracts/TestOpcodesAccountFactory.js.map +1 -1
- package/esm/types/contracts/TestStorageAccount.js +5 -2
- package/esm/types/contracts/TestStorageAccount.js.map +1 -1
- package/esm/types/contracts/index.js +32 -16
- package/esm/types/contracts/index.js.map +1 -1
- package/esm/types/gasPrice.js +17 -14
- package/esm/types/gasPrice.js.map +1 -1
- package/esm/types/index.js +26 -10
- package/esm/types/index.js.map +1 -1
- package/esm/types/interfaces.js +2 -1
- package/esm/types/mempool.js +10 -5
- package/esm/types/mempool.js.map +1 -1
- package/esm/types/schemas.d.ts +82 -82
- package/esm/types/schemas.js +284 -254
- package/esm/types/schemas.js.map +1 -1
- package/esm/types/test/validationTestErrors.js +5 -2
- package/esm/types/test/validationTestErrors.js.map +1 -1
- package/esm/types/utils.js +9 -5
- package/esm/types/utils.js.map +1 -1
- package/esm/types/validation.js +142 -139
- package/esm/types/validation.js.map +1 -1
- package/esm/utils/bigInt.js +7 -2
- package/esm/utils/bigInt.js.map +1 -1
- package/esm/utils/compressionHandler.js +11 -7
- package/esm/utils/compressionHandler.js.map +1 -1
- package/esm/utils/gasPriceManager.js +57 -30
- package/esm/utils/gasPriceManager.js.map +1 -1
- package/esm/utils/helpers.js +10 -5
- package/esm/utils/helpers.js.map +1 -1
- package/esm/utils/index.js +26 -10
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/logger.js +19 -10
- package/esm/utils/logger.js.map +1 -1
- package/esm/utils/metrics.d.ts +4 -4
- package/esm/utils/metrics.js +24 -20
- package/esm/utils/metrics.js.map +1 -1
- package/esm/utils/rpc-reply.js +3 -1
- package/esm/utils/rpc-reply.js.map +1 -1
- package/esm/utils/test.d.ts +1 -1
- package/esm/utils/test.js +67 -36
- package/esm/utils/test.js.map +1 -1
- package/esm/utils/toArgs.js +11 -4
- package/esm/utils/toArgs.js.map +1 -1
- package/esm/utils/userop.js +107 -62
- package/esm/utils/userop.js.map +1 -1
- package/esm/utils/validation.js +99 -64
- package/esm/utils/validation.js.map +1 -1
- package/lib/cli/config/bundler.d.ts +37 -37
- package/lib/rpc/validation/tracer.d.ts +1 -1
- package/lib/types/schemas.d.ts +116 -116
- package/lib/types/validation.d.ts +12 -12
- package/lib/utils/metrics.d.ts +4 -4
- package/lib/utils/test.d.ts +1 -1
- package/package.json +1 -1
- package/esm/index.d.ts +0 -449
- package/esm/index.js +0 -64
- package/esm/index.js.map +0 -1
- package/lib/index.d.ts +0 -449
- package/lib/index.js +0 -67
- package/lib/index.js.map +0 -1
package/esm/utils/metrics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../utils/metrics.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../utils/metrics.ts"],"names":[],"mappings":";;;AAAA,6CAMoB;AAIpB,SAAgB,aAAa,CAAC,QAAkB,EAAE,QAAQ,GAAG,IAAI;IAC7D,IAAA,mCAAqB,EAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE7C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAE5C,MAAM,YAAY,GAAG,IAAI,qBAAO,CAAC;QAC7B,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,0BAA0B;QAChC,UAAU,EAAE;YACR,OAAO;YACP,SAAS;YACT,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,MAAM;YACN,QAAQ;SACF;QACV,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,IAAI,uBAAS,CAAC;QACvC,IAAI,EAAE,gCAAgC;QACtC,IAAI,EAAE,iCAAiC;QACvC,UAAU,EAAE;YACR,OAAO;YACP,SAAS;YACT,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,MAAM;YACN,QAAQ;YACR,aAAa;SACP;QACV,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,uBAAuB,GAAG,IAAI,mBAAK,CAAC;QACtC,IAAI,EAAE,uCAAuC;QAC7C,IAAI,EAAE,sCAAsC;QAC5C,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAU;QACrD,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,IAAI,mBAAK,CAAC;QAC/B,IAAI,EAAE,uCAAuC;QAC7C,IAAI,EAAE,qDAAqD;QAC3D,UAAU,EAAE,EAAW;QACvB,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,IAAI,mBAAK,CAAC;QAC3B,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE,iDAAiD;QACvD,UAAU,EAAE,EAAW;QACvB,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,qBAAqB,GAAG,IAAI,qBAAO,CAAC;QACtC,IAAI,EAAE,qCAAqC;QAC3C,IAAI,EAAE,8CAA8C;QACpD,UAAU,EAAE,CAAC,QAAQ,CAAU;QAC/B,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,uBAAuB,GAAG,IAAI,qBAAO,CAAC;QACxC,IAAI,EAAE,sCAAsC;QAC5C,IAAI,EAAE,sDAAsD;QAC5D,UAAU,EAAE,CAAC,QAAQ,CAAU;QAC/B,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,IAAI,qBAAO,CAAC;QAChC,IAAI,EAAE,6BAA6B;QACnC,IAAI,EAAE,qDAAqD;QAC3D,UAAU,EAAE,EAAW;QACvB,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,IAAI,qBAAO,CAAC;QACjC,IAAI,EAAE,8BAA8B;QACpC,IAAI,EAAE,sDAAsD;QAC5D,UAAU,EAAE,CAAC,QAAQ,CAAU;QAC/B,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,sBAAsB,GAAG,IAAI,qBAAO,CAAC;QACvC,IAAI,EAAE,qCAAqC;QAC3C,IAAI,EAAE,oCAAoC;QAC1C,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAU;QACvC,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,+BAA+B,GAAG,IAAI,qBAAO,CAAC;QAChD,IAAI,EAAE,+CAA+C;QACrD,IAAI,EAAE,kDAAkD;QACxD,UAAU,EAAE,EAAW;QACvB,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,+BAA+B,GAAG,IAAI,qBAAO,CAAC;QAChD,IAAI,EAAE,+CAA+C;QACrD,IAAI,EAAE,8CAA8C;QACpD,UAAU,EAAE,EAAW;QACvB,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,8BAA8B,GAAG,IAAI,uBAAS,CAAC;QACjD,IAAI,EAAE,gDAAgD;QACtD,IAAI,EAAE,kFAAkF;QACxF,UAAU,EAAE,EAAW;QACvB,SAAS;QACT,OAAO,EAAE;YACL,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG;YACnE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI;SAChC;KACJ,CAAC,CAAA;IAEF,MAAM,kCAAkC,GAAG,IAAI,uBAAS,CAAC;QACrD,IAAI,EAAE,qDAAqD;QAC3D,IAAI,EAAE,qDAAqD;QAC3D,UAAU,EAAE,EAAW;QACvB,SAAS;QACT,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;KACzD,CAAC,CAAA;IAEF,MAAM,mCAAmC,GAAG,IAAI,uBAAS,CAAC;QACtD,IAAI,EAAE,8CAA8C;QACpD,IAAI,EAAE,mDAAmD;QACzD,UAAU,EAAE,EAAW;QACvB,SAAS;QACT,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;KAC9C,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,IAAI,qBAAO,CAAC;QACrC,IAAI,EAAE,kCAAkC;QACxC,IAAI,EAAE,iCAAiC;QACvC,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAU;QACzC,SAAS;KACZ,CAAC,CAAA;IAEF,MAAM,yBAAyB,GAAG,IAAI,qBAAO,CAAC;QAC1C,IAAI,EAAE,wCAAwC;QAC9C,IAAI,EAAE,uCAAuC;QAC7C,UAAU,EAAE,EAAW;QACvB,SAAS;KACZ,CAAC,CAAA;IAEF,OAAO;QACH,YAAY;QACZ,oBAAoB;QACpB,uBAAuB;QACvB,gBAAgB;QAChB,YAAY;QACZ,qBAAqB;QACrB,uBAAuB;QACvB,eAAe;QACf,gBAAgB;QAChB,sBAAsB;QACtB,+BAA+B;QAC/B,+BAA+B;QAC/B,8BAA8B;QAC9B,kCAAkC;QAClC,mCAAmC;QACnC,oBAAoB;QACpB,yBAAyB;KAC5B,CAAA;AACL,CAAC;AAtKD,sCAsKC"}
|
package/esm/utils/rpc-reply.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
3
|
class RpcReply {
|
|
2
4
|
http;
|
|
3
5
|
websocket;
|
|
@@ -37,5 +39,5 @@ class RpcReply {
|
|
|
37
39
|
return this._rpcStatus;
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
|
-
|
|
42
|
+
exports.default = RpcReply;
|
|
41
43
|
//# sourceMappingURL=rpc-reply.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc-reply.js","sourceRoot":"","sources":["../../utils/rpc-reply.ts"],"names":[],"mappings":"AAGA,MAAM,QAAQ;IACF,IAAI,CAAqB;IACzB,SAAS,CAA4B;IAE7C,0CAA0C;IAClC,OAAO,CAAQ;IACf,UAAU,CAAsB;IAExC,YACI,IAAyB,EACzB,SAAqC;QAErC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,GAAG,CAAA;QAClB,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;IAC9B,CAAC;IAEM,MAAM,CAAC,MAAc;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QAErB,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,IAAS;QACvB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpD,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,CAAC;IACL,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,KAAmB;QACpC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAE1C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAA2B;QACzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE3C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,IAAI,SAAS,CAAC,MAA4B;QACtC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;IAC5B,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;CACJ;AAED,
|
|
1
|
+
{"version":3,"file":"rpc-reply.js","sourceRoot":"","sources":["../../utils/rpc-reply.ts"],"names":[],"mappings":";;AAGA,MAAM,QAAQ;IACF,IAAI,CAAqB;IACzB,SAAS,CAA4B;IAE7C,0CAA0C;IAClC,OAAO,CAAQ;IACf,UAAU,CAAsB;IAExC,YACI,IAAyB,EACzB,SAAqC;QAErC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,GAAG,CAAA;QAClB,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;IAC9B,CAAC;IAEM,MAAM,CAAC,MAAc;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QAErB,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,IAAS;QACvB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpD,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,CAAC;IACL,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,KAAmB;QACpC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAE1C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAA2B;QACzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE3C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,IAAI,SAAS,CAAC,MAA4B;QACtC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;IAC5B,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;CACJ;AAED,kBAAe,QAAQ,CAAA"}
|
package/esm/utils/test.d.ts
CHANGED
package/esm/utils/test.js
CHANGED
|
@@ -1,17 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.parseSenderAddressError = exports.getUserOpHash = exports.deployContract = exports.createClients = exports.launchAnvil = void 0;
|
|
1
27
|
// biome-ignore lint/nursery/noNodejsModules: <explanation>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const anvilProcess = exec("anvil");
|
|
12
|
-
const client = createPublicClient({
|
|
13
|
-
chain: foundry,
|
|
14
|
-
transport: http()
|
|
28
|
+
const child_process_1 = require("child_process");
|
|
29
|
+
const types_1 = require("../types/index.js");
|
|
30
|
+
const sentry = __importStar(require("@sentry/node"));
|
|
31
|
+
const abitype_1 = require("abitype");
|
|
32
|
+
const viem_1 = require("viem");
|
|
33
|
+
const accounts_1 = require("viem/accounts");
|
|
34
|
+
const chains_1 = require("viem/chains");
|
|
35
|
+
const zod_validation_error_1 = require("zod-validation-error");
|
|
36
|
+
const launchAnvil = async () => {
|
|
37
|
+
const anvilProcess = (0, child_process_1.exec)("anvil");
|
|
38
|
+
const client = (0, viem_1.createPublicClient)({
|
|
39
|
+
chain: chains_1.foundry,
|
|
40
|
+
transport: (0, viem_1.http)()
|
|
15
41
|
});
|
|
16
42
|
// keep calling getNetwork every 2ms until it doesn't throw
|
|
17
43
|
while (true) {
|
|
@@ -25,10 +51,11 @@ export const launchAnvil = async () => {
|
|
|
25
51
|
}
|
|
26
52
|
return anvilProcess;
|
|
27
53
|
};
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
54
|
+
exports.launchAnvil = launchAnvil;
|
|
55
|
+
const createClients = async (signer) => {
|
|
56
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
57
|
+
chain: chains_1.foundry,
|
|
58
|
+
transport: (0, viem_1.http)("http://127.0.0.1:8545")
|
|
32
59
|
});
|
|
33
60
|
try {
|
|
34
61
|
await publicClient.getChainId();
|
|
@@ -36,16 +63,16 @@ export const createClients = async (signer) => {
|
|
|
36
63
|
catch {
|
|
37
64
|
throw new Error("anvil is not running");
|
|
38
65
|
}
|
|
39
|
-
const testClient = createTestClient({
|
|
40
|
-
chain: foundry,
|
|
41
|
-
transport: http("http://127.0.0.1:8545"),
|
|
66
|
+
const testClient = (0, viem_1.createTestClient)({
|
|
67
|
+
chain: chains_1.foundry,
|
|
68
|
+
transport: (0, viem_1.http)("http://127.0.0.1:8545"),
|
|
42
69
|
mode: "anvil"
|
|
43
70
|
});
|
|
44
71
|
testClient.key;
|
|
45
|
-
const walletClient = createWalletClient({
|
|
46
|
-
chain: foundry,
|
|
47
|
-
transport: http("http://127.0.0.1:8545"),
|
|
48
|
-
account: signer ?? privateKeyToAccount(generatePrivateKey())
|
|
72
|
+
const walletClient = (0, viem_1.createWalletClient)({
|
|
73
|
+
chain: chains_1.foundry,
|
|
74
|
+
transport: (0, viem_1.http)("http://127.0.0.1:8545"),
|
|
75
|
+
account: signer ?? (0, accounts_1.privateKeyToAccount)((0, accounts_1.generatePrivateKey)())
|
|
49
76
|
});
|
|
50
77
|
// : createWalletClient({
|
|
51
78
|
// chain: foundry,
|
|
@@ -58,7 +85,8 @@ export const createClients = async (signer) => {
|
|
|
58
85
|
wallet: walletClient
|
|
59
86
|
};
|
|
60
87
|
};
|
|
61
|
-
|
|
88
|
+
exports.createClients = createClients;
|
|
89
|
+
const deployContract = async (clients, deployer, abi,
|
|
62
90
|
// biome-ignore lint/suspicious/noExplicitAny: it's a generic type
|
|
63
91
|
args, bytecode) => {
|
|
64
92
|
if (clients.wallet.chain === undefined) {
|
|
@@ -79,18 +107,19 @@ args, bytecode) => {
|
|
|
79
107
|
}
|
|
80
108
|
return contractAddress;
|
|
81
109
|
};
|
|
82
|
-
|
|
110
|
+
exports.deployContract = deployContract;
|
|
111
|
+
function getUserOpHash(op, entryPoint, chainId) {
|
|
83
112
|
const hashedUserOp = {
|
|
84
113
|
sender: op.sender,
|
|
85
114
|
nonce: op.nonce,
|
|
86
|
-
initCodeHash: keccak256(op.initCode),
|
|
87
|
-
callDataHash: keccak256(op.callData),
|
|
115
|
+
initCodeHash: (0, viem_1.keccak256)(op.initCode),
|
|
116
|
+
callDataHash: (0, viem_1.keccak256)(op.callData),
|
|
88
117
|
callGasLimit: op.callGasLimit,
|
|
89
118
|
verificationGasLimit: op.verificationGasLimit,
|
|
90
119
|
preVerificationGas: op.preVerificationGas,
|
|
91
120
|
maxFeePerGas: op.maxFeePerGas,
|
|
92
121
|
maxPriorityFeePerGas: op.maxPriorityFeePerGas,
|
|
93
|
-
paymasterAndDataHash: keccak256(op.paymasterAndData)
|
|
122
|
+
paymasterAndDataHash: (0, viem_1.keccak256)(op.paymasterAndData)
|
|
94
123
|
};
|
|
95
124
|
const userOpType = {
|
|
96
125
|
components: [
|
|
@@ -108,17 +137,18 @@ export function getUserOpHash(op, entryPoint, chainId) {
|
|
|
108
137
|
name: "hashedUserOp",
|
|
109
138
|
type: "tuple"
|
|
110
139
|
};
|
|
111
|
-
const encoded = encodeAbiParameters([userOpType], [{ ...hashedUserOp }]);
|
|
140
|
+
const encoded = (0, viem_1.encodeAbiParameters)([userOpType], [{ ...hashedUserOp }]);
|
|
112
141
|
// remove leading word (total length) and trailing word (zero-length signature)
|
|
113
|
-
const userOpHash = keccak256(encoded);
|
|
114
|
-
const enc = encodeAbiParameters(parseAbiParameters("bytes32, address, uint256"), [userOpHash, entryPoint, BigInt(chainId)]);
|
|
115
|
-
return keccak256(enc);
|
|
142
|
+
const userOpHash = (0, viem_1.keccak256)(encoded);
|
|
143
|
+
const enc = (0, viem_1.encodeAbiParameters)((0, abitype_1.parseAbiParameters)("bytes32, address, uint256"), [userOpHash, entryPoint, BigInt(chainId)]);
|
|
144
|
+
return (0, viem_1.keccak256)(enc);
|
|
116
145
|
}
|
|
117
|
-
|
|
118
|
-
|
|
146
|
+
exports.getUserOpHash = getUserOpHash;
|
|
147
|
+
const parseSenderAddressError = (e) => {
|
|
148
|
+
const entryPointExecutionErrorSchemaParsing = types_1.entryPointExecutionErrorSchemaV06.safeParse(e);
|
|
119
149
|
if (!entryPointExecutionErrorSchemaParsing.success) {
|
|
120
150
|
sentry.captureException(e);
|
|
121
|
-
throw fromZodError(entryPointExecutionErrorSchemaParsing.error);
|
|
151
|
+
throw (0, zod_validation_error_1.fromZodError)(entryPointExecutionErrorSchemaParsing.error);
|
|
122
152
|
}
|
|
123
153
|
const errorData = entryPointExecutionErrorSchemaParsing.data;
|
|
124
154
|
if (errorData.errorName !== "SenderAddressResult") {
|
|
@@ -127,4 +157,5 @@ export const parseSenderAddressError = (e) => {
|
|
|
127
157
|
}
|
|
128
158
|
return errorData.args.sender;
|
|
129
159
|
};
|
|
160
|
+
exports.parseSenderAddressError = parseSenderAddressError;
|
|
130
161
|
//# sourceMappingURL=test.js.map
|
package/esm/utils/test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../utils/test.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../utils/test.ts"],"names":[],"mappings":"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"}
|
package/esm/utils/toArgs.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toFlagCase = exports.toArgs = exports.stripColors = exports.extractPath = void 0;
|
|
1
4
|
/**
|
|
2
5
|
* Parse a request url into an object containing the id and path.
|
|
3
6
|
*
|
|
4
7
|
* @param request The request url.
|
|
5
8
|
* @returns The parsed request context or undefined.
|
|
6
9
|
*/
|
|
7
|
-
|
|
10
|
+
function extractPath(request) {
|
|
8
11
|
const host = "http://localhost"; // Dummy value for URL constructor
|
|
9
12
|
const url = new URL(`${host}${request ?? "/"}`);
|
|
10
13
|
const [idOrPath, ...pathname] = url.pathname
|
|
@@ -18,6 +21,7 @@ export function extractPath(request) {
|
|
|
18
21
|
: [idOrPath, ...pathname].join("/")}`;
|
|
19
22
|
return { id, path };
|
|
20
23
|
}
|
|
24
|
+
exports.extractPath = extractPath;
|
|
21
25
|
const ansiColorRegex =
|
|
22
26
|
// biome-ignore lint/suspicious/noControlCharactersInRegex: <explanation>
|
|
23
27
|
/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;
|
|
@@ -27,16 +31,17 @@ const ansiColorRegex =
|
|
|
27
31
|
* @param message The string to strip.
|
|
28
32
|
* @returns The stripped string.
|
|
29
33
|
*/
|
|
30
|
-
|
|
34
|
+
function stripColors(message) {
|
|
31
35
|
return message.replace(ansiColorRegex, "");
|
|
32
36
|
}
|
|
37
|
+
exports.stripColors = stripColors;
|
|
33
38
|
/**
|
|
34
39
|
* Converts an object of options to an array of command line arguments.
|
|
35
40
|
*
|
|
36
41
|
* @param options The options object.
|
|
37
42
|
* @returns The command line arguments.
|
|
38
43
|
*/
|
|
39
|
-
|
|
44
|
+
function toArgs(parameters) {
|
|
40
45
|
return Object.entries(parameters).flatMap(([key, value]) => {
|
|
41
46
|
if (value === undefined) {
|
|
42
47
|
return [];
|
|
@@ -68,13 +73,15 @@ export function toArgs(parameters) {
|
|
|
68
73
|
return [flag, stringified];
|
|
69
74
|
});
|
|
70
75
|
}
|
|
76
|
+
exports.toArgs = toArgs;
|
|
71
77
|
/**
|
|
72
78
|
* Converts a camelCase string to a flag case string.
|
|
73
79
|
*
|
|
74
80
|
* @param key The camelCase string.
|
|
75
81
|
* @returns The flag case string.
|
|
76
82
|
*/
|
|
77
|
-
|
|
83
|
+
function toFlagCase(key) {
|
|
78
84
|
return `--${key.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`)}`;
|
|
79
85
|
}
|
|
86
|
+
exports.toFlagCase = toFlagCase;
|
|
80
87
|
//# sourceMappingURL=toArgs.js.map
|
package/esm/utils/toArgs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toArgs.js","sourceRoot":"","sources":["../../utils/toArgs.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,
|
|
1
|
+
{"version":3,"file":"toArgs.js","sourceRoot":"","sources":["../../utils/toArgs.ts"],"names":[],"mappings":"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"}
|
package/esm/utils/userop.js
CHANGED
|
@@ -1,24 +1,53 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.toUnpackedUserOperation = exports.getNonceKeyAndValue = exports.getUserOperationHash = exports.getUserOperationHashV07 = exports.getUserOperationHashV06 = exports.transactionIncluded = exports.getAddressFromInitCodeOrPaymasterAndData = exports.deepHexlify = exports.toPackedUserOperation = exports.unpackPaymasterAndData = exports.getPaymasterAndData = exports.unpackGasLimits = exports.getGasLimits = exports.unpackAccountGasLimits = exports.getAccountGasLimits = exports.unPackInitCode = exports.getInitCode = exports.isVersion07 = exports.isVersion06 = void 0;
|
|
27
|
+
const types_1 = require("../types/index.js");
|
|
28
|
+
const sentry = __importStar(require("@sentry/node"));
|
|
29
|
+
const viem_1 = require("viem");
|
|
30
|
+
const helpers_1 = require("./helpers.js");
|
|
5
31
|
// Type predicate check if the UserOperation is V06.
|
|
6
|
-
|
|
32
|
+
function isVersion06(operation) {
|
|
7
33
|
return "initCode" in operation && "paymasterAndData" in operation;
|
|
8
34
|
}
|
|
35
|
+
exports.isVersion06 = isVersion06;
|
|
9
36
|
// Type predicate to check if the UserOperation is V07.
|
|
10
|
-
|
|
37
|
+
function isVersion07(operation) {
|
|
11
38
|
return "factory" in operation && "paymaster" in operation;
|
|
12
39
|
}
|
|
13
|
-
|
|
40
|
+
exports.isVersion07 = isVersion07;
|
|
41
|
+
function getInitCode(unpackedUserOperation) {
|
|
14
42
|
return unpackedUserOperation.factory
|
|
15
|
-
? concat([
|
|
43
|
+
? (0, viem_1.concat)([
|
|
16
44
|
unpackedUserOperation.factory,
|
|
17
45
|
unpackedUserOperation.factoryData || "0x"
|
|
18
46
|
])
|
|
19
47
|
: "0x";
|
|
20
48
|
}
|
|
21
|
-
|
|
49
|
+
exports.getInitCode = getInitCode;
|
|
50
|
+
function unPackInitCode(initCode) {
|
|
22
51
|
if (initCode === "0x") {
|
|
23
52
|
return {
|
|
24
53
|
factory: null,
|
|
@@ -26,53 +55,59 @@ export function unPackInitCode(initCode) {
|
|
|
26
55
|
};
|
|
27
56
|
}
|
|
28
57
|
return {
|
|
29
|
-
factory: getAddress(slice(initCode, 0, 20)),
|
|
30
|
-
factoryData: slice(initCode, 20)
|
|
58
|
+
factory: (0, viem_1.getAddress)((0, viem_1.slice)(initCode, 0, 20)),
|
|
59
|
+
factoryData: (0, viem_1.slice)(initCode, 20)
|
|
31
60
|
};
|
|
32
61
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
62
|
+
exports.unPackInitCode = unPackInitCode;
|
|
63
|
+
function getAccountGasLimits(unpackedUserOperation) {
|
|
64
|
+
return (0, viem_1.concat)([
|
|
65
|
+
(0, viem_1.pad)((0, viem_1.toHex)(unpackedUserOperation.verificationGasLimit), {
|
|
36
66
|
size: 16
|
|
37
67
|
}),
|
|
38
|
-
pad(toHex(unpackedUserOperation.callGasLimit), { size: 16 })
|
|
68
|
+
(0, viem_1.pad)((0, viem_1.toHex)(unpackedUserOperation.callGasLimit), { size: 16 })
|
|
39
69
|
]);
|
|
40
70
|
}
|
|
41
|
-
|
|
71
|
+
exports.getAccountGasLimits = getAccountGasLimits;
|
|
72
|
+
function unpackAccountGasLimits(accountGasLimits) {
|
|
42
73
|
return {
|
|
43
|
-
verificationGasLimit: BigInt(slice(accountGasLimits, 0, 16)),
|
|
44
|
-
callGasLimit: BigInt(slice(accountGasLimits, 16))
|
|
74
|
+
verificationGasLimit: BigInt((0, viem_1.slice)(accountGasLimits, 0, 16)),
|
|
75
|
+
callGasLimit: BigInt((0, viem_1.slice)(accountGasLimits, 16))
|
|
45
76
|
};
|
|
46
77
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
78
|
+
exports.unpackAccountGasLimits = unpackAccountGasLimits;
|
|
79
|
+
function getGasLimits(unpackedUserOperation) {
|
|
80
|
+
return (0, viem_1.concat)([
|
|
81
|
+
(0, viem_1.pad)((0, viem_1.toHex)(unpackedUserOperation.maxPriorityFeePerGas), {
|
|
50
82
|
size: 16
|
|
51
83
|
}),
|
|
52
|
-
pad(toHex(unpackedUserOperation.maxFeePerGas), { size: 16 })
|
|
84
|
+
(0, viem_1.pad)((0, viem_1.toHex)(unpackedUserOperation.maxFeePerGas), { size: 16 })
|
|
53
85
|
]);
|
|
54
86
|
}
|
|
55
|
-
|
|
87
|
+
exports.getGasLimits = getGasLimits;
|
|
88
|
+
function unpackGasLimits(gasLimits) {
|
|
56
89
|
return {
|
|
57
|
-
maxPriorityFeePerGas: BigInt(slice(gasLimits, 0, 16)),
|
|
58
|
-
maxFeePerGas: BigInt(slice(gasLimits, 16))
|
|
90
|
+
maxPriorityFeePerGas: BigInt((0, viem_1.slice)(gasLimits, 0, 16)),
|
|
91
|
+
maxFeePerGas: BigInt((0, viem_1.slice)(gasLimits, 16))
|
|
59
92
|
};
|
|
60
93
|
}
|
|
61
|
-
|
|
94
|
+
exports.unpackGasLimits = unpackGasLimits;
|
|
95
|
+
function getPaymasterAndData(unpackedUserOperation) {
|
|
62
96
|
return unpackedUserOperation.paymaster
|
|
63
|
-
? concat([
|
|
97
|
+
? (0, viem_1.concat)([
|
|
64
98
|
unpackedUserOperation.paymaster,
|
|
65
|
-
pad(toHex(unpackedUserOperation.paymasterVerificationGasLimit || 0n), {
|
|
99
|
+
(0, viem_1.pad)((0, viem_1.toHex)(unpackedUserOperation.paymasterVerificationGasLimit || 0n), {
|
|
66
100
|
size: 16
|
|
67
101
|
}),
|
|
68
|
-
pad(toHex(unpackedUserOperation.paymasterPostOpGasLimit || 0n), {
|
|
102
|
+
(0, viem_1.pad)((0, viem_1.toHex)(unpackedUserOperation.paymasterPostOpGasLimit || 0n), {
|
|
69
103
|
size: 16
|
|
70
104
|
}),
|
|
71
105
|
unpackedUserOperation.paymasterData || "0x"
|
|
72
106
|
])
|
|
73
107
|
: "0x";
|
|
74
108
|
}
|
|
75
|
-
|
|
109
|
+
exports.getPaymasterAndData = getPaymasterAndData;
|
|
110
|
+
function unpackPaymasterAndData(paymasterAndData) {
|
|
76
111
|
if (paymasterAndData === "0x") {
|
|
77
112
|
return {
|
|
78
113
|
paymaster: null,
|
|
@@ -82,13 +117,14 @@ export function unpackPaymasterAndData(paymasterAndData) {
|
|
|
82
117
|
};
|
|
83
118
|
}
|
|
84
119
|
return {
|
|
85
|
-
paymaster: getAddress(slice(paymasterAndData, 0, 20)),
|
|
86
|
-
paymasterVerificationGasLimit: BigInt(slice(paymasterAndData, 20, 36)),
|
|
87
|
-
paymasterPostOpGasLimit: BigInt(slice(paymasterAndData, 36, 52)),
|
|
88
|
-
paymasterData: slice(paymasterAndData, 52)
|
|
120
|
+
paymaster: (0, viem_1.getAddress)((0, viem_1.slice)(paymasterAndData, 0, 20)),
|
|
121
|
+
paymasterVerificationGasLimit: BigInt((0, viem_1.slice)(paymasterAndData, 20, 36)),
|
|
122
|
+
paymasterPostOpGasLimit: BigInt((0, viem_1.slice)(paymasterAndData, 36, 52)),
|
|
123
|
+
paymasterData: (0, viem_1.slice)(paymasterAndData, 52)
|
|
89
124
|
};
|
|
90
125
|
}
|
|
91
|
-
|
|
126
|
+
exports.unpackPaymasterAndData = unpackPaymasterAndData;
|
|
127
|
+
function toPackedUserOperation(unpackedUserOperation) {
|
|
92
128
|
return {
|
|
93
129
|
sender: unpackedUserOperation.sender,
|
|
94
130
|
nonce: unpackedUserOperation.nonce,
|
|
@@ -101,8 +137,9 @@ export function toPackedUserOperation(unpackedUserOperation) {
|
|
|
101
137
|
signature: unpackedUserOperation.signature
|
|
102
138
|
};
|
|
103
139
|
}
|
|
140
|
+
exports.toPackedUserOperation = toPackedUserOperation;
|
|
104
141
|
// biome-ignore lint/suspicious/noExplicitAny: it's a generic type
|
|
105
|
-
|
|
142
|
+
function deepHexlify(obj) {
|
|
106
143
|
if (typeof obj === "function") {
|
|
107
144
|
return undefined;
|
|
108
145
|
}
|
|
@@ -110,10 +147,10 @@ export function deepHexlify(obj) {
|
|
|
110
147
|
return obj;
|
|
111
148
|
}
|
|
112
149
|
if (typeof obj === "bigint") {
|
|
113
|
-
return toHex(obj);
|
|
150
|
+
return (0, viem_1.toHex)(obj);
|
|
114
151
|
}
|
|
115
152
|
if (obj._isBigNumber != null || typeof obj !== "object") {
|
|
116
|
-
return toHex(obj).replace(/^0x0/, "0x");
|
|
153
|
+
return (0, viem_1.toHex)(obj).replace(/^0x0/, "0x");
|
|
117
154
|
}
|
|
118
155
|
if (Array.isArray(obj)) {
|
|
119
156
|
return obj.map((member) => deepHexlify(member));
|
|
@@ -125,28 +162,30 @@ export function deepHexlify(obj) {
|
|
|
125
162
|
return set;
|
|
126
163
|
}, {});
|
|
127
164
|
}
|
|
128
|
-
|
|
165
|
+
exports.deepHexlify = deepHexlify;
|
|
166
|
+
function getAddressFromInitCodeOrPaymasterAndData(data) {
|
|
129
167
|
if (!data) {
|
|
130
168
|
return null;
|
|
131
169
|
}
|
|
132
170
|
if (data.length >= 42) {
|
|
133
|
-
return getAddress(data.slice(0, 42));
|
|
171
|
+
return (0, viem_1.getAddress)(data.slice(0, 42));
|
|
134
172
|
}
|
|
135
173
|
return null;
|
|
136
174
|
}
|
|
137
|
-
|
|
175
|
+
exports.getAddressFromInitCodeOrPaymasterAndData = getAddressFromInitCodeOrPaymasterAndData;
|
|
176
|
+
const transactionIncluded = async (isVersion06, txHash, publicClient, entryPoint) => {
|
|
138
177
|
try {
|
|
139
178
|
const rcp = await publicClient.getTransactionReceipt({ hash: txHash });
|
|
140
179
|
if (rcp.status === "success") {
|
|
141
180
|
// find if any logs are UserOperationEvent or AccountDeployed
|
|
142
181
|
const r = rcp.logs
|
|
143
182
|
.map((l) => {
|
|
144
|
-
if (areAddressesEqual(l.address, entryPoint)) {
|
|
183
|
+
if ((0, helpers_1.areAddressesEqual)(l.address, entryPoint)) {
|
|
145
184
|
try {
|
|
146
|
-
const log = decodeEventLog({
|
|
185
|
+
const log = (0, viem_1.decodeEventLog)({
|
|
147
186
|
abi: isVersion06
|
|
148
|
-
? EntryPointV06Abi
|
|
149
|
-
: EntryPointV07Abi,
|
|
187
|
+
? types_1.EntryPointV06Abi
|
|
188
|
+
: types_1.EntryPointV07Abi,
|
|
150
189
|
data: l.data,
|
|
151
190
|
topics: l.topics
|
|
152
191
|
});
|
|
@@ -208,8 +247,9 @@ export const transactionIncluded = async (isVersion06, txHash, publicClient, ent
|
|
|
208
247
|
};
|
|
209
248
|
}
|
|
210
249
|
};
|
|
211
|
-
|
|
212
|
-
|
|
250
|
+
exports.transactionIncluded = transactionIncluded;
|
|
251
|
+
const getUserOperationHashV06 = (userOperation, entryPointAddress, chainId) => {
|
|
252
|
+
const hash = (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)([
|
|
213
253
|
{
|
|
214
254
|
name: "sender",
|
|
215
255
|
type: "address"
|
|
@@ -253,16 +293,16 @@ export const getUserOperationHashV06 = (userOperation, entryPointAddress, chainI
|
|
|
253
293
|
], [
|
|
254
294
|
userOperation.sender,
|
|
255
295
|
userOperation.nonce,
|
|
256
|
-
keccak256(userOperation.initCode),
|
|
257
|
-
keccak256(userOperation.callData),
|
|
296
|
+
(0, viem_1.keccak256)(userOperation.initCode),
|
|
297
|
+
(0, viem_1.keccak256)(userOperation.callData),
|
|
258
298
|
userOperation.callGasLimit,
|
|
259
299
|
userOperation.verificationGasLimit,
|
|
260
300
|
userOperation.preVerificationGas,
|
|
261
301
|
userOperation.maxFeePerGas,
|
|
262
302
|
userOperation.maxPriorityFeePerGas,
|
|
263
|
-
keccak256(userOperation.paymasterAndData)
|
|
303
|
+
(0, viem_1.keccak256)(userOperation.paymasterAndData)
|
|
264
304
|
]));
|
|
265
|
-
return keccak256(encodeAbiParameters([
|
|
305
|
+
return (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)([
|
|
266
306
|
{
|
|
267
307
|
name: "userOpHash",
|
|
268
308
|
type: "bytes32"
|
|
@@ -277,8 +317,9 @@ export const getUserOperationHashV06 = (userOperation, entryPointAddress, chainI
|
|
|
277
317
|
}
|
|
278
318
|
], [hash, entryPointAddress, BigInt(chainId)]));
|
|
279
319
|
};
|
|
280
|
-
|
|
281
|
-
|
|
320
|
+
exports.getUserOperationHashV06 = getUserOperationHashV06;
|
|
321
|
+
const getUserOperationHashV07 = (userOperation, entryPointAddress, chainId) => {
|
|
322
|
+
const hash = (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)([
|
|
282
323
|
{
|
|
283
324
|
name: "sender",
|
|
284
325
|
type: "address"
|
|
@@ -314,14 +355,14 @@ export const getUserOperationHashV07 = (userOperation, entryPointAddress, chainI
|
|
|
314
355
|
], [
|
|
315
356
|
userOperation.sender,
|
|
316
357
|
userOperation.nonce,
|
|
317
|
-
keccak256(userOperation.initCode),
|
|
318
|
-
keccak256(userOperation.callData),
|
|
358
|
+
(0, viem_1.keccak256)(userOperation.initCode),
|
|
359
|
+
(0, viem_1.keccak256)(userOperation.callData),
|
|
319
360
|
userOperation.accountGasLimits,
|
|
320
361
|
userOperation.preVerificationGas,
|
|
321
362
|
userOperation.gasFees,
|
|
322
|
-
keccak256(userOperation.paymasterAndData)
|
|
363
|
+
(0, viem_1.keccak256)(userOperation.paymasterAndData)
|
|
323
364
|
]));
|
|
324
|
-
return keccak256(encodeAbiParameters([
|
|
365
|
+
return (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)([
|
|
325
366
|
{
|
|
326
367
|
name: "userOpHash",
|
|
327
368
|
type: "bytes32"
|
|
@@ -336,18 +377,21 @@ export const getUserOperationHashV07 = (userOperation, entryPointAddress, chainI
|
|
|
336
377
|
}
|
|
337
378
|
], [hash, entryPointAddress, BigInt(chainId)]));
|
|
338
379
|
};
|
|
339
|
-
|
|
380
|
+
exports.getUserOperationHashV07 = getUserOperationHashV07;
|
|
381
|
+
const getUserOperationHash = (userOperation, entryPointAddress, chainId) => {
|
|
340
382
|
if (isVersion06(userOperation)) {
|
|
341
|
-
return getUserOperationHashV06(userOperation, entryPointAddress, chainId);
|
|
383
|
+
return (0, exports.getUserOperationHashV06)(userOperation, entryPointAddress, chainId);
|
|
342
384
|
}
|
|
343
|
-
return getUserOperationHashV07(toPackedUserOperation(userOperation), entryPointAddress, chainId);
|
|
385
|
+
return (0, exports.getUserOperationHashV07)(toPackedUserOperation(userOperation), entryPointAddress, chainId);
|
|
344
386
|
};
|
|
345
|
-
|
|
387
|
+
exports.getUserOperationHash = getUserOperationHash;
|
|
388
|
+
const getNonceKeyAndValue = (nonce) => {
|
|
346
389
|
const nonceKey = nonce >> 64n; // first 192 bits of nonce
|
|
347
390
|
const userOperationNonceValue = nonce & 0xffffffffffffffffn; // last 64 bits of nonce
|
|
348
391
|
return [nonceKey, userOperationNonceValue];
|
|
349
392
|
};
|
|
350
|
-
|
|
393
|
+
exports.getNonceKeyAndValue = getNonceKeyAndValue;
|
|
394
|
+
function toUnpackedUserOperation(packedUserOperation) {
|
|
351
395
|
const { factory, factoryData } = unPackInitCode(packedUserOperation.initCode);
|
|
352
396
|
const { callGasLimit, verificationGasLimit } = unpackAccountGasLimits(packedUserOperation.accountGasLimits);
|
|
353
397
|
const { maxFeePerGas, maxPriorityFeePerGas } = unpackGasLimits(packedUserOperation.gasFees);
|
|
@@ -370,6 +414,7 @@ export function toUnpackedUserOperation(packedUserOperation) {
|
|
|
370
414
|
signature: packedUserOperation.signature
|
|
371
415
|
};
|
|
372
416
|
}
|
|
417
|
+
exports.toUnpackedUserOperation = toUnpackedUserOperation;
|
|
373
418
|
/*
|
|
374
419
|
function pack(
|
|
375
420
|
UserOperation calldata userOp
|