@lit-protocol/vincent-ability-sdk 2.3.4 → 2.4.0

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.
Files changed (88) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/README.md +49 -1
  3. package/dist/CHANGELOG.md +6 -0
  4. package/dist/README.md +49 -1
  5. package/dist/package.json +7 -1
  6. package/dist/src/gatedSigner.d.ts +2 -0
  7. package/dist/src/gatedSigner.d.ts.map +1 -0
  8. package/dist/src/gatedSigner.js +5 -0
  9. package/dist/src/gatedSigner.js.map +1 -0
  10. package/dist/src/lib/abilityHelpers/gasSponsorship/get-alchemy-chain-config.js +1 -1
  11. package/dist/src/lib/abilityHelpers/gasSponsorship/get-alchemy-chain-config.js.map +1 -1
  12. package/dist/src/lib/gatedSigner/helpers/eip712.d.ts +34 -0
  13. package/dist/src/lib/gatedSigner/helpers/eip712.d.ts.map +1 -0
  14. package/dist/src/lib/gatedSigner/helpers/eip712.js +30 -0
  15. package/dist/src/lib/gatedSigner/helpers/eip712.js.map +1 -0
  16. package/dist/src/lib/gatedSigner/helpers/hex.d.ts +5 -0
  17. package/dist/src/lib/gatedSigner/helpers/hex.d.ts.map +1 -0
  18. package/dist/src/lib/gatedSigner/helpers/hex.js +16 -0
  19. package/dist/src/lib/gatedSigner/helpers/hex.js.map +1 -0
  20. package/dist/src/lib/gatedSigner/helpers/lifecycleFunctions.d.ts +56 -0
  21. package/dist/src/lib/gatedSigner/helpers/lifecycleFunctions.d.ts.map +1 -0
  22. package/dist/src/lib/gatedSigner/helpers/lifecycleFunctions.js +91 -0
  23. package/dist/src/lib/gatedSigner/helpers/lifecycleFunctions.js.map +1 -0
  24. package/dist/src/lib/gatedSigner/helpers/lowLevelCall.d.ts +13 -0
  25. package/dist/src/lib/gatedSigner/helpers/lowLevelCall.d.ts.map +1 -0
  26. package/dist/src/lib/gatedSigner/helpers/lowLevelCall.js +21 -0
  27. package/dist/src/lib/gatedSigner/helpers/lowLevelCall.js.map +1 -0
  28. package/dist/src/lib/gatedSigner/helpers/schemas.d.ts +925 -0
  29. package/dist/src/lib/gatedSigner/helpers/schemas.d.ts.map +1 -0
  30. package/dist/src/lib/gatedSigner/helpers/schemas.js +64 -0
  31. package/dist/src/lib/gatedSigner/helpers/schemas.js.map +1 -0
  32. package/dist/src/lib/gatedSigner/helpers/signTransaction.d.ts +9 -0
  33. package/dist/src/lib/gatedSigner/helpers/signTransaction.d.ts.map +1 -0
  34. package/dist/src/lib/gatedSigner/helpers/signTransaction.js +30 -0
  35. package/dist/src/lib/gatedSigner/helpers/signTransaction.js.map +1 -0
  36. package/dist/src/lib/gatedSigner/helpers/signUserOperation.d.ts +15 -0
  37. package/dist/src/lib/gatedSigner/helpers/signUserOperation.d.ts.map +1 -0
  38. package/dist/src/lib/gatedSigner/helpers/signUserOperation.js +115 -0
  39. package/dist/src/lib/gatedSigner/helpers/signUserOperation.js.map +1 -0
  40. package/dist/src/lib/gatedSigner/helpers/simulation.d.ts +204 -0
  41. package/dist/src/lib/gatedSigner/helpers/simulation.d.ts.map +1 -0
  42. package/dist/src/lib/gatedSigner/helpers/simulation.js +93 -0
  43. package/dist/src/lib/gatedSigner/helpers/simulation.js.map +1 -0
  44. package/dist/src/lib/gatedSigner/helpers/smartAccounts/kernel.d.ts +8 -0
  45. package/dist/src/lib/gatedSigner/helpers/smartAccounts/kernel.d.ts.map +1 -0
  46. package/dist/src/lib/gatedSigner/helpers/smartAccounts/kernel.js +177 -0
  47. package/dist/src/lib/gatedSigner/helpers/smartAccounts/kernel.js.map +1 -0
  48. package/dist/src/lib/gatedSigner/helpers/smartAccounts/safe.d.ts +26 -0
  49. package/dist/src/lib/gatedSigner/helpers/smartAccounts/safe.d.ts.map +1 -0
  50. package/dist/src/lib/gatedSigner/helpers/smartAccounts/safe.js +195 -0
  51. package/dist/src/lib/gatedSigner/helpers/smartAccounts/safe.js.map +1 -0
  52. package/dist/src/lib/gatedSigner/helpers/toLitActionAccount.d.ts +20 -0
  53. package/dist/src/lib/gatedSigner/helpers/toLitActionAccount.d.ts.map +1 -0
  54. package/dist/src/lib/gatedSigner/helpers/toLitActionAccount.js +69 -0
  55. package/dist/src/lib/gatedSigner/helpers/toLitActionAccount.js.map +1 -0
  56. package/dist/src/lib/gatedSigner/helpers/transaction.d.ts +148 -0
  57. package/dist/src/lib/gatedSigner/helpers/transaction.d.ts.map +1 -0
  58. package/dist/src/lib/gatedSigner/helpers/transaction.js +87 -0
  59. package/dist/src/lib/gatedSigner/helpers/transaction.js.map +1 -0
  60. package/dist/src/lib/gatedSigner/helpers/userOperation.d.ts +200 -0
  61. package/dist/src/lib/gatedSigner/helpers/userOperation.d.ts.map +1 -0
  62. package/dist/src/lib/gatedSigner/helpers/userOperation.js +106 -0
  63. package/dist/src/lib/gatedSigner/helpers/userOperation.js.map +1 -0
  64. package/dist/src/lib/gatedSigner/helpers/validation.d.ts +43 -0
  65. package/dist/src/lib/gatedSigner/helpers/validation.d.ts.map +1 -0
  66. package/dist/src/lib/gatedSigner/helpers/validation.js +81 -0
  67. package/dist/src/lib/gatedSigner/helpers/validation.js.map +1 -0
  68. package/dist/src/lib/gatedSigner/index.d.ts +12 -0
  69. package/dist/src/lib/gatedSigner/index.d.ts.map +1 -0
  70. package/dist/src/lib/gatedSigner/index.js +19 -0
  71. package/dist/src/lib/gatedSigner/index.js.map +1 -0
  72. package/dist/src/lib/gatedSigner/vincentGatedSignerAbility.d.ts +566 -0
  73. package/dist/src/lib/gatedSigner/vincentGatedSignerAbility.d.ts.map +1 -0
  74. package/dist/src/lib/gatedSigner/vincentGatedSignerAbility.js +48 -0
  75. package/dist/src/lib/gatedSigner/vincentGatedSignerAbility.js.map +1 -0
  76. package/dist/src/type-inference-verification/ability-definition-tests.d.ts +6 -6
  77. package/dist/src/type-inference-verification/allow-deny-test-cases-ability.d.ts +90 -90
  78. package/dist/src/type-inference-verification/allow-deny-test-cases.d.ts +8 -8
  79. package/dist/src/type-inference-verification/context-switching-tests.d.ts +3 -3
  80. package/dist/src/type-inference-verification/create-vincent-gated-signer-ability.d.ts +533 -0
  81. package/dist/src/type-inference-verification/create-vincent-gated-signer-ability.d.ts.map +1 -0
  82. package/dist/src/type-inference-verification/create-vincent-gated-signer-ability.js +19 -0
  83. package/dist/src/type-inference-verification/create-vincent-gated-signer-ability.js.map +1 -0
  84. package/dist/src/type-inference-verification/parameter-inference-tests-tool.d.ts +58 -58
  85. package/dist/src/type-inference-verification/parameter-inference-tests.d.ts +5 -5
  86. package/dist/src/type-inference-verification/playground.d.ts +8 -8
  87. package/dist/src/type-inference-verification/schema-test.d.ts +5 -5
  88. package/package.json +8 -2
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assertIsValidUserOp = void 0;
4
+ exports.assertIsValidTransaction = assertIsValidTransaction;
5
+ const viem_1 = require("viem");
6
+ const lowLevelCall_1 = require("./lowLevelCall");
7
+ const simulation_1 = require("./simulation");
8
+ const assertIsValidUserOp = async ({ alchemyRpcUrl, decodeTransaction, entryPointAddress, userOp, validateSimulation, validateTransaction, }) => {
9
+ const publicClient = (0, viem_1.createPublicClient)({
10
+ transport: (0, viem_1.http)(alchemyRpcUrl),
11
+ });
12
+ const chainId = await publicClient.getChainId();
13
+ const sender = (0, viem_1.getAddress)(userOp.sender, chainId);
14
+ const userOpTransactions = (0, lowLevelCall_1.getUserOpCalls)(userOp);
15
+ for (const transaction of userOpTransactions) {
16
+ const decodedTransaction = decodeTransaction({
17
+ transaction: {
18
+ data: transaction.data,
19
+ to: transaction.to,
20
+ value: BigInt(transaction.value),
21
+ },
22
+ });
23
+ await validateTransaction({
24
+ chainId,
25
+ decodedTransaction,
26
+ sender,
27
+ });
28
+ }
29
+ // Simulate userOp and validate changes
30
+ const simulation = await (0, simulation_1.simulateUserOp)({
31
+ entryPointAddress,
32
+ publicClient,
33
+ userOp,
34
+ });
35
+ if (simulation.error) {
36
+ const { message, revertReason } = simulation.error;
37
+ throw new Error(`Simulation failed - Reason: ${revertReason} - Message: ${message}`);
38
+ }
39
+ await validateSimulation({
40
+ chainId,
41
+ sender,
42
+ simulation,
43
+ });
44
+ return simulation.changes;
45
+ };
46
+ exports.assertIsValidUserOp = assertIsValidUserOp;
47
+ async function assertIsValidTransaction({ alchemyRpcUrl, decodeTransaction, transaction, validateSimulation, validateTransaction, }) {
48
+ const publicClient = (0, viem_1.createPublicClient)({
49
+ transport: (0, viem_1.http)(alchemyRpcUrl),
50
+ });
51
+ const chainId = await publicClient.getChainId();
52
+ const sender = (0, viem_1.getAddress)(transaction.from);
53
+ const decodedTransaction = decodeTransaction({
54
+ transaction: {
55
+ data: transaction.data,
56
+ to: transaction.to,
57
+ value: BigInt(transaction.value),
58
+ },
59
+ });
60
+ await validateTransaction({
61
+ chainId,
62
+ decodedTransaction,
63
+ sender,
64
+ });
65
+ const simulation = await (0, simulation_1.simulateTransaction)({
66
+ publicClient,
67
+ transaction,
68
+ });
69
+ const { changes, error } = simulation;
70
+ if (error) {
71
+ const { message, revertReason } = error;
72
+ throw new Error(`Simulation failed - Reason: ${revertReason} - Message: ${message}`);
73
+ }
74
+ await validateSimulation({
75
+ chainId,
76
+ sender,
77
+ simulation,
78
+ });
79
+ return changes;
80
+ }
81
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../src/lib/gatedSigner/helpers/validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export { createVincentGatedSignerAbility } from './vincentGatedSignerAbility';
2
+ export { abilityParamsSchema } from './helpers/schemas';
3
+ export { type Eip712Params } from './helpers/eip712';
4
+ export { type DecodedTransaction, type DecodedTransactionSuccess, type DecodedTransactionError, type DecodeTransactionParams, type ValidateSimulationParams, type ValidateTransactionParams, } from './helpers/lifecycleFunctions';
5
+ export { type LowLevelCall } from './helpers/lowLevelCall';
6
+ export { formatSecondaryValidatorKernelSignature } from './helpers/smartAccounts/kernel';
7
+ export { formatSafeSignature, safeEip712Params } from './helpers/smartAccounts/safe';
8
+ export { type AbilityParams, type UserOpAbilityParams, type TransactionAbilityParams, } from './helpers/schemas';
9
+ export { type SimulateAssetChangesResponse } from './helpers/simulation';
10
+ export { type Transaction, transactionSchema, toVincentTransaction } from './helpers/transaction';
11
+ export { type UserOp, userOpSchema, toVincentUserOp } from './helpers/userOperation';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/gatedSigner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,GAC/B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,uCAAuC,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClG,OAAO,EAAE,KAAK,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toVincentUserOp = exports.userOpSchema = exports.toVincentTransaction = exports.transactionSchema = exports.safeEip712Params = exports.formatSafeSignature = exports.formatSecondaryValidatorKernelSignature = exports.abilityParamsSchema = exports.createVincentGatedSignerAbility = void 0;
4
+ var vincentGatedSignerAbility_1 = require("./vincentGatedSignerAbility");
5
+ Object.defineProperty(exports, "createVincentGatedSignerAbility", { enumerable: true, get: function () { return vincentGatedSignerAbility_1.createVincentGatedSignerAbility; } });
6
+ var schemas_1 = require("./helpers/schemas");
7
+ Object.defineProperty(exports, "abilityParamsSchema", { enumerable: true, get: function () { return schemas_1.abilityParamsSchema; } });
8
+ var kernel_1 = require("./helpers/smartAccounts/kernel");
9
+ Object.defineProperty(exports, "formatSecondaryValidatorKernelSignature", { enumerable: true, get: function () { return kernel_1.formatSecondaryValidatorKernelSignature; } });
10
+ var safe_1 = require("./helpers/smartAccounts/safe");
11
+ Object.defineProperty(exports, "formatSafeSignature", { enumerable: true, get: function () { return safe_1.formatSafeSignature; } });
12
+ Object.defineProperty(exports, "safeEip712Params", { enumerable: true, get: function () { return safe_1.safeEip712Params; } });
13
+ var transaction_1 = require("./helpers/transaction");
14
+ Object.defineProperty(exports, "transactionSchema", { enumerable: true, get: function () { return transaction_1.transactionSchema; } });
15
+ Object.defineProperty(exports, "toVincentTransaction", { enumerable: true, get: function () { return transaction_1.toVincentTransaction; } });
16
+ var userOperation_1 = require("./helpers/userOperation");
17
+ Object.defineProperty(exports, "userOpSchema", { enumerable: true, get: function () { return userOperation_1.userOpSchema; } });
18
+ Object.defineProperty(exports, "toVincentUserOp", { enumerable: true, get: function () { return userOperation_1.toVincentUserOp; } });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/gatedSigner/index.ts"],"names":[],"mappings":";;;AAAA,yEAA8E;AAArE,4IAAA,+BAA+B,OAAA;AACxC,6CAAwD;AAA/C,8GAAA,mBAAmB,OAAA;AAY5B,yDAAyF;AAAhF,iIAAA,uCAAuC,OAAA;AAChD,qDAAqF;AAA5E,2GAAA,mBAAmB,OAAA;AAAE,wGAAA,gBAAgB,OAAA;AAO9C,qDAAkG;AAAvE,gHAAA,iBAAiB,OAAA;AAAE,mHAAA,oBAAoB,OAAA;AAClE,yDAAqF;AAA/D,6GAAA,YAAY,OAAA;AAAE,gHAAA,eAAe,OAAA"}