@nucypher/taco 0.3.0 → 0.5.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 (100) hide show
  1. package/README.md +0 -1
  2. package/dist/cjs/conditions/base/contract.d.ts +14 -18
  3. package/dist/cjs/conditions/base/contract.js +6 -6
  4. package/dist/cjs/conditions/base/contract.js.map +1 -1
  5. package/dist/cjs/conditions/base/rpc.d.ts +7 -7
  6. package/dist/cjs/conditions/base/time.d.ts +5 -5
  7. package/dist/cjs/conditions/compound-condition.js.map +1 -1
  8. package/dist/cjs/conditions/condition-expr.d.ts +3 -7
  9. package/dist/cjs/conditions/condition-expr.js +2 -9
  10. package/dist/cjs/conditions/condition-expr.js.map +1 -1
  11. package/dist/cjs/conditions/condition-factory.js.map +1 -1
  12. package/dist/cjs/conditions/condition.d.ts +3 -2
  13. package/dist/cjs/conditions/condition.js +12 -2
  14. package/dist/cjs/conditions/condition.js.map +1 -1
  15. package/dist/cjs/conditions/const.d.ts +1 -3
  16. package/dist/cjs/conditions/const.js +7 -4
  17. package/dist/cjs/conditions/const.js.map +1 -1
  18. package/dist/cjs/conditions/context/context.d.ts +21 -17
  19. package/dist/cjs/conditions/context/context.js +107 -70
  20. package/dist/cjs/conditions/context/context.js.map +1 -1
  21. package/dist/cjs/conditions/predefined/erc20.js +2 -2
  22. package/dist/cjs/conditions/predefined/erc20.js.map +1 -1
  23. package/dist/cjs/conditions/predefined/erc721.js +3 -3
  24. package/dist/cjs/conditions/predefined/erc721.js.map +1 -1
  25. package/dist/cjs/conditions/shared.d.ts +3 -3
  26. package/dist/cjs/conditions/shared.js +8 -4
  27. package/dist/cjs/conditions/shared.js.map +1 -1
  28. package/dist/cjs/conditions/zod.js.map +1 -1
  29. package/dist/cjs/dkg.d.ts +1 -1
  30. package/dist/cjs/dkg.js +2 -2
  31. package/dist/cjs/dkg.js.map +1 -1
  32. package/dist/cjs/index.d.ts +2 -2
  33. package/dist/cjs/index.js +2 -4
  34. package/dist/cjs/index.js.map +1 -1
  35. package/dist/cjs/taco.d.ts +5 -22
  36. package/dist/cjs/taco.js +10 -31
  37. package/dist/cjs/taco.js.map +1 -1
  38. package/dist/cjs/tdec.d.ts +3 -3
  39. package/dist/cjs/tdec.js +16 -12
  40. package/dist/cjs/tdec.js.map +1 -1
  41. package/dist/cjs/types.d.ts +1 -0
  42. package/dist/cjs/types.js +8 -0
  43. package/dist/cjs/types.js.map +1 -0
  44. package/dist/es/conditions/base/contract.d.ts +14 -18
  45. package/dist/es/conditions/base/contract.js +3 -3
  46. package/dist/es/conditions/base/contract.js.map +1 -1
  47. package/dist/es/conditions/base/rpc.d.ts +7 -7
  48. package/dist/es/conditions/base/time.d.ts +5 -5
  49. package/dist/es/conditions/compound-condition.js.map +1 -1
  50. package/dist/es/conditions/condition-expr.d.ts +3 -7
  51. package/dist/es/conditions/condition-expr.js +4 -11
  52. package/dist/es/conditions/condition-expr.js.map +1 -1
  53. package/dist/es/conditions/condition-factory.js.map +1 -1
  54. package/dist/es/conditions/condition.d.ts +3 -2
  55. package/dist/es/conditions/condition.js +13 -3
  56. package/dist/es/conditions/condition.js.map +1 -1
  57. package/dist/es/conditions/const.d.ts +1 -3
  58. package/dist/es/conditions/const.js +6 -3
  59. package/dist/es/conditions/const.js.map +1 -1
  60. package/dist/es/conditions/context/context.d.ts +21 -17
  61. package/dist/es/conditions/context/context.js +108 -71
  62. package/dist/es/conditions/context/context.js.map +1 -1
  63. package/dist/es/conditions/predefined/erc20.js +2 -2
  64. package/dist/es/conditions/predefined/erc20.js.map +1 -1
  65. package/dist/es/conditions/predefined/erc721.js +3 -3
  66. package/dist/es/conditions/predefined/erc721.js.map +1 -1
  67. package/dist/es/conditions/shared.d.ts +3 -3
  68. package/dist/es/conditions/shared.js +8 -4
  69. package/dist/es/conditions/shared.js.map +1 -1
  70. package/dist/es/conditions/zod.js.map +1 -1
  71. package/dist/es/dkg.d.ts +1 -1
  72. package/dist/es/dkg.js +2 -2
  73. package/dist/es/dkg.js.map +1 -1
  74. package/dist/es/index.d.ts +2 -2
  75. package/dist/es/index.js +2 -3
  76. package/dist/es/index.js.map +1 -1
  77. package/dist/es/taco.d.ts +5 -22
  78. package/dist/es/taco.js +10 -29
  79. package/dist/es/taco.js.map +1 -1
  80. package/dist/es/tdec.d.ts +3 -3
  81. package/dist/es/tdec.js +17 -13
  82. package/dist/es/tdec.js.map +1 -1
  83. package/dist/es/types.d.ts +1 -0
  84. package/dist/es/types.js +3 -0
  85. package/dist/es/types.js.map +1 -0
  86. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  87. package/dist/tsconfig.es.tsbuildinfo +1 -1
  88. package/package.json +8 -8
  89. package/dist/cjs/conditions/context/providers.d.ts +0 -16
  90. package/dist/cjs/conditions/context/providers.js +0 -111
  91. package/dist/cjs/conditions/context/providers.js.map +0 -1
  92. package/dist/cjs/web3.d.ts +0 -33
  93. package/dist/cjs/web3.js +0 -3
  94. package/dist/cjs/web3.js.map +0 -1
  95. package/dist/es/conditions/context/providers.d.ts +0 -16
  96. package/dist/es/conditions/context/providers.js +0 -107
  97. package/dist/es/conditions/context/providers.js.map +0 -1
  98. package/dist/es/web3.d.ts +0 -33
  99. package/dist/es/web3.js +0 -2
  100. package/dist/es/web3.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { DkgPublicKey, ThresholdMessageKit } from '@nucypher/nucypher-core';
2
- import { Domain } from '@nucypher/shared';
2
+ import { Domain, PorterClient } from '@nucypher/shared';
3
3
  import { ethers } from 'ethers';
4
4
  import { ConditionExpression } from './conditions/condition-expr';
5
- import { CustomContextParam } from './conditions/context';
5
+ import { ConditionContext } from './conditions/context';
6
6
  export declare const encryptMessage: (plaintext: Uint8Array | string, encryptingKey: DkgPublicKey, conditions: ConditionExpression, authSigner: ethers.Signer) => Promise<ThresholdMessageKit>;
7
- export declare const retrieveAndDecrypt: (provider: ethers.providers.Provider, domain: Domain, porterUri: string, thresholdMessageKit: ThresholdMessageKit, ritualId: number, sharesNum: number, threshold: number, signer?: ethers.Signer, customParameters?: Record<string, CustomContextParam>) => Promise<Uint8Array>;
7
+ export declare const retrieveAndDecrypt: (provider: ethers.providers.Provider, domain: Domain, porter: PorterClient, thresholdMessageKit: ThresholdMessageKit, ritualId: number, context?: ConditionContext) => Promise<Uint8Array>;
package/dist/cjs/tdec.js CHANGED
@@ -5,10 +5,11 @@ const nucypher_core_1 = require("@nucypher/nucypher-core");
5
5
  const shared_1 = require("@nucypher/shared");
6
6
  const utils_1 = require("ethers/lib/utils");
7
7
  const context_1 = require("./conditions/context");
8
+ const dkg_1 = require("./dkg");
8
9
  const ERR_DECRYPTION_FAILED = (errors) => `Threshold of responses not met; TACo decryption failed with errors: ${JSON.stringify(errors)}`;
9
10
  const ERR_RITUAL_ID_MISMATCH = (expectedRitualId, ritualIds) => `Ritual id mismatch. Expected ${expectedRitualId}, got ${ritualIds}`;
10
11
  const encryptMessage = async (plaintext, encryptingKey, conditions, authSigner) => {
11
- const [ciphertext, authenticatedData] = (0, nucypher_core_1.encryptForDkg)(plaintext instanceof Uint8Array ? plaintext : (0, shared_1.toBytes)(plaintext), encryptingKey, conditions.toWASMConditions());
12
+ const [ciphertext, authenticatedData] = (0, nucypher_core_1.encryptForDkg)(plaintext instanceof Uint8Array ? plaintext : (0, shared_1.toBytes)(plaintext), encryptingKey, conditions.toCoreCondition());
12
13
  const headerHash = (0, utils_1.keccak256)(ciphertext.header.toBytes());
13
14
  const authorization = await authSigner.signMessage((0, utils_1.arrayify)(headerHash));
14
15
  const acp = new nucypher_core_1.AccessControlPolicy(authenticatedData, (0, shared_1.toBytes)(authorization));
@@ -16,20 +17,22 @@ const encryptMessage = async (plaintext, encryptingKey, conditions, authSigner)
16
17
  };
17
18
  exports.encryptMessage = encryptMessage;
18
19
  // Retrieve and decrypt ciphertext using provider and condition expression
19
- const retrieveAndDecrypt = async (provider, domain, porterUri, thresholdMessageKit, ritualId, sharesNum, threshold, signer, customParameters) => {
20
- const decryptionShares = await retrieve(provider, domain, porterUri, thresholdMessageKit, ritualId, sharesNum, threshold, signer, customParameters);
20
+ const retrieveAndDecrypt = async (provider, domain, porter, thresholdMessageKit, ritualId, context) => {
21
+ const decryptionShares = await retrieve(provider, domain, porter, thresholdMessageKit, ritualId, context);
21
22
  const sharedSecret = (0, nucypher_core_1.combineDecryptionSharesSimple)(decryptionShares);
22
23
  return thresholdMessageKit.decryptWithSharedSecret(sharedSecret);
23
24
  };
24
25
  exports.retrieveAndDecrypt = retrieveAndDecrypt;
25
26
  // Retrieve decryption shares
26
- const retrieve = async (provider, domain, porterUri, thresholdMessageKit, ritualId, sharesNum, threshold, signer, customParameters) => {
27
- const dkgParticipants = await shared_1.DkgCoordinatorAgent.getParticipants(provider, domain, ritualId, sharesNum);
28
- const wasmContext = await context_1.ConditionContext.fromConditions(provider, thresholdMessageKit.acp.conditions, signer, customParameters).toWASMContext();
29
- const { sharedSecrets, encryptedRequests } = await makeDecryptionRequests(ritualId, wasmContext, dkgParticipants, thresholdMessageKit);
30
- const porter = new shared_1.PorterClient(porterUri);
31
- const { encryptedResponses, errors } = await porter.tacoDecrypt(encryptedRequests, threshold);
32
- if (Object.keys(encryptedResponses).length < threshold) {
27
+ const retrieve = async (provider, domain, porter, thresholdMessageKit, ritualId, context) => {
28
+ const ritual = await dkg_1.DkgClient.getActiveRitual(provider, domain, ritualId);
29
+ const dkgParticipants = await shared_1.DkgCoordinatorAgent.getParticipants(provider, domain, ritualId, ritual.sharesNum);
30
+ const conditionContext = context
31
+ ? context
32
+ : context_1.ConditionContext.fromMessageKit(thresholdMessageKit);
33
+ const { sharedSecrets, encryptedRequests } = await makeDecryptionRequests(ritualId, conditionContext, dkgParticipants, thresholdMessageKit);
34
+ const { encryptedResponses, errors } = await porter.tacoDecrypt(encryptedRequests, ritual.threshold);
35
+ if (Object.keys(encryptedResponses).length < ritual.threshold) {
33
36
  throw new Error(ERR_DECRYPTION_FAILED(errors));
34
37
  }
35
38
  return makeDecryptionShares(encryptedResponses, sharedSecrets, ritualId);
@@ -42,8 +45,9 @@ const makeDecryptionShares = (encryptedResponses, sessionSharedSecret, expectedR
42
45
  }
43
46
  return decryptedResponses.map(({ decryptionShare }) => nucypher_core_1.DecryptionShareSimple.fromBytes(decryptionShare));
44
47
  };
45
- const makeDecryptionRequests = async (ritualId, wasmContext, dkgParticipants, thresholdMessageKit) => {
46
- const decryptionRequest = new nucypher_core_1.ThresholdDecryptionRequest(ritualId, nucypher_core_1.FerveoVariant.simple, thresholdMessageKit.ciphertextHeader, thresholdMessageKit.acp, wasmContext);
48
+ const makeDecryptionRequests = async (ritualId, conditionContext, dkgParticipants, thresholdMessageKit) => {
49
+ const coreContext = await conditionContext.toCoreContext();
50
+ const decryptionRequest = new nucypher_core_1.ThresholdDecryptionRequest(ritualId, nucypher_core_1.FerveoVariant.simple, thresholdMessageKit.ciphertextHeader, thresholdMessageKit.acp, coreContext);
47
51
  const ephemeralSessionKey = makeSessionKey();
48
52
  // Compute shared secrets for each participant
49
53
  const sharedSecrets = Object.fromEntries(dkgParticipants.map(({ provider, decryptionRequestStaticKey }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"tdec.js","sourceRoot":"","sources":["../../src/tdec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tdec.js","sourceRoot":"","sources":["../../src/tdec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export { Conditions as CoreConditions, Context as CoreContext, } from '@nucypher/nucypher-core';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CoreContext = exports.CoreConditions = void 0;
4
+ // Re-exporting core types to avoid confusion with taco types
5
+ var nucypher_core_1 = require("@nucypher/nucypher-core");
6
+ Object.defineProperty(exports, "CoreConditions", { enumerable: true, get: function () { return nucypher_core_1.Conditions; } });
7
+ Object.defineProperty(exports, "CoreContext", { enumerable: true, get: function () { return nucypher_core_1.Context; } });
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAAA,6DAA6D;AAC7D,yDAGiC;AAF/B,+GAAA,UAAU,OAAkB;AAC5B,4GAAA,OAAO,OAAe"}
@@ -142,25 +142,21 @@ declare const functionAbiSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
142
142
  }>;
143
143
  export type FunctionAbiProps = z.infer<typeof functionAbiSchema>;
144
144
  export declare const ContractConditionType = "contract";
145
- export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<z.objectUtil.extendShape<{
146
- conditionType: z.ZodDefault<z.ZodLiteral<"rpc">>;
145
+ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<{
147
146
  chain: z.ZodNever | z.ZodLiteral<z.Primitive> | z.ZodUnion<[z.ZodLiteral<z.Primitive>, z.ZodLiteral<z.Primitive>, ...z.ZodLiteral<z.Primitive>[]]>;
148
- method: z.ZodEnum<["eth_getBalance"]>;
149
- parameters: z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodLiteral<":userAddress">]>, "atleastone">, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodLiteral<":userAddress">]>, z.ZodType<any, z.ZodTypeDef, any>], null>]>;
150
147
  returnValueTest: z.ZodObject<{
151
148
  index: z.ZodOptional<z.ZodNumber>;
152
149
  comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
153
150
  value: z.ZodType<any, z.ZodTypeDef, any>;
154
151
  }, "strip", z.ZodTypeAny, {
155
152
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
156
- value?: any;
157
153
  index?: number | undefined;
154
+ value?: any;
158
155
  }, {
159
156
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
160
- value?: any;
161
157
  index?: number | undefined;
158
+ value?: any;
162
159
  }>;
163
- }, {
164
160
  conditionType: z.ZodDefault<z.ZodLiteral<"contract">>;
165
161
  contractAddress: z.ZodString;
166
162
  standardContractType: z.ZodOptional<z.ZodEnum<["ERC20", "ERC721"]>>;
@@ -305,17 +301,18 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<z.objectU
305
301
  stateMutability: "view" | "pure";
306
302
  }>>;
307
303
  parameters: z.ZodArray<z.ZodType<any, z.ZodTypeDef, any>, "many">;
308
- }>, "strip", z.ZodTypeAny, {
304
+ }, "strip", z.ZodTypeAny, {
309
305
  conditionType: "contract";
310
306
  method: string;
311
307
  parameters: any[];
312
308
  returnValueTest: {
313
309
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
314
- value?: any;
315
310
  index?: number | undefined;
311
+ value?: any;
316
312
  };
317
313
  contractAddress: string;
318
314
  chain?: z.Primitive;
315
+ standardContractType?: "ERC20" | "ERC721" | undefined;
319
316
  functionAbi?: {
320
317
  type: "function";
321
318
  name: string;
@@ -335,18 +332,18 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<z.objectU
335
332
  }[]];
336
333
  stateMutability: "view" | "pure";
337
334
  } | undefined;
338
- standardContractType?: "ERC20" | "ERC721" | undefined;
339
335
  }, {
340
336
  method: string;
341
337
  parameters: any[];
342
338
  returnValueTest: {
343
339
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
344
- value?: any;
345
340
  index?: number | undefined;
341
+ value?: any;
346
342
  };
347
343
  contractAddress: string;
348
- conditionType?: "contract" | undefined;
349
344
  chain?: z.Primitive;
345
+ conditionType?: "contract" | undefined;
346
+ standardContractType?: "ERC20" | "ERC721" | undefined;
350
347
  functionAbi?: {
351
348
  type: "function";
352
349
  name: string;
@@ -366,18 +363,18 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<z.objectU
366
363
  }[]];
367
364
  stateMutability: "view" | "pure";
368
365
  } | undefined;
369
- standardContractType?: "ERC20" | "ERC721" | undefined;
370
366
  }>, {
371
367
  conditionType: "contract";
372
368
  method: string;
373
369
  parameters: any[];
374
370
  returnValueTest: {
375
371
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
376
- value?: any;
377
372
  index?: number | undefined;
373
+ value?: any;
378
374
  };
379
375
  contractAddress: string;
380
376
  chain?: z.Primitive;
377
+ standardContractType?: "ERC20" | "ERC721" | undefined;
381
378
  functionAbi?: {
382
379
  type: "function";
383
380
  name: string;
@@ -397,18 +394,18 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<z.objectU
397
394
  }[]];
398
395
  stateMutability: "view" | "pure";
399
396
  } | undefined;
400
- standardContractType?: "ERC20" | "ERC721" | undefined;
401
397
  }, {
402
398
  method: string;
403
399
  parameters: any[];
404
400
  returnValueTest: {
405
401
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
406
- value?: any;
407
402
  index?: number | undefined;
403
+ value?: any;
408
404
  };
409
405
  contractAddress: string;
410
- conditionType?: "contract" | undefined;
411
406
  chain?: z.Primitive;
407
+ conditionType?: "contract" | undefined;
408
+ standardContractType?: "ERC20" | "ERC721" | undefined;
412
409
  functionAbi?: {
413
410
  type: "function";
414
411
  name: string;
@@ -428,7 +425,6 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<z.objectU
428
425
  }[]];
429
426
  stateMutability: "view" | "pure";
430
427
  } | undefined;
431
- standardContractType?: "ERC20" | "ERC721" | undefined;
432
428
  }>;
433
429
  export type ContractConditionProps = z.infer<typeof contractConditionSchema>;
434
430
  export declare class ContractCondition extends Condition {
@@ -1,7 +1,7 @@
1
+ import { ETH_ADDRESS_REGEXP } from '@nucypher/shared';
1
2
  import { ethers } from 'ethers';
2
3
  import { z } from 'zod';
3
4
  import { Condition } from '../condition';
4
- import { ETH_ADDRESS_REGEXP } from '../const';
5
5
  import { paramOrContextParamSchema } from '../shared';
6
6
  import { rpcConditionSchema } from './rpc';
7
7
  // TODO: Consider replacing with `z.unknown`:
@@ -12,9 +12,9 @@ const EthBaseTypes = [
12
12
  'string',
13
13
  'address',
14
14
  'address payable',
15
- ...Array.from({ length: 32 }, (_v, i) => `bytes${i + 1}`),
15
+ ...Array.from({ length: 32 }, (_v, i) => `bytes${i + 1}`), // bytes1 through bytes32
16
16
  'bytes',
17
- ...Array.from({ length: 32 }, (_v, i) => `uint${8 * (i + 1)}`),
17
+ ...Array.from({ length: 32 }, (_v, i) => `uint${8 * (i + 1)}`), // uint8 through uint256
18
18
  ...Array.from({ length: 32 }, (_v, i) => `int${8 * (i + 1)}`), // int8 through int256
19
19
  ];
20
20
  const functionAbiVariableSchema = z
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../src/conditions/base/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../src/conditions/base/contract.ts"],"names":[],"mappings":"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"}
@@ -6,37 +6,37 @@ export declare const rpcConditionSchema: z.ZodObject<{
6
6
  conditionType: z.ZodDefault<z.ZodLiteral<"rpc">>;
7
7
  chain: z.ZodNever | z.ZodLiteral<z.Primitive> | z.ZodUnion<[z.ZodLiteral<z.Primitive>, z.ZodLiteral<z.Primitive>, ...z.ZodLiteral<z.Primitive>[]]>;
8
8
  method: z.ZodEnum<["eth_getBalance"]>;
9
- parameters: z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodLiteral<":userAddress">]>, "atleastone">, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodLiteral<":userAddress">]>, z.ZodType<any, z.ZodTypeDef, any>], null>]>;
9
+ parameters: z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodEnum<[":userAddress", ":userAddressExternalEIP4361"]>]>, "atleastone">, z.ZodTuple<[z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodEnum<[":userAddress", ":userAddressExternalEIP4361"]>]>, z.ZodType<any, z.ZodTypeDef, any>], null>]>;
10
10
  returnValueTest: z.ZodObject<{
11
11
  index: z.ZodOptional<z.ZodNumber>;
12
12
  comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
13
13
  value: z.ZodType<any, z.ZodTypeDef, any>;
14
14
  }, "strip", z.ZodTypeAny, {
15
15
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
16
- value?: any;
17
16
  index?: number | undefined;
17
+ value?: any;
18
18
  }, {
19
19
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
20
- value?: any;
21
20
  index?: number | undefined;
21
+ value?: any;
22
22
  }>;
23
23
  }, "strip", z.ZodTypeAny, {
24
24
  conditionType: "rpc";
25
25
  method: "eth_getBalance";
26
- parameters: [string, ...string[]] | [string, any];
26
+ parameters: ([string, ...string[]] | [string, any]) & ([string, ...string[]] | [string, any] | undefined);
27
27
  returnValueTest: {
28
28
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
29
- value?: any;
30
29
  index?: number | undefined;
30
+ value?: any;
31
31
  };
32
32
  chain?: z.Primitive;
33
33
  }, {
34
34
  method: "eth_getBalance";
35
- parameters: [string, ...string[]] | [string, any];
35
+ parameters: ([string, ...string[]] | [string, any]) & ([string, ...string[]] | [string, any] | undefined);
36
36
  returnValueTest: {
37
37
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
38
- value?: any;
39
38
  index?: number | undefined;
39
+ value?: any;
40
40
  };
41
41
  conditionType?: "rpc" | undefined;
42
42
  chain?: z.Primitive;
@@ -13,31 +13,31 @@ export declare const timeConditionSchema: z.ZodObject<{
13
13
  value: z.ZodType<any, z.ZodTypeDef, any>;
14
14
  }, "strip", z.ZodTypeAny, {
15
15
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
16
- value?: any;
17
16
  index?: number | undefined;
17
+ value?: any;
18
18
  }, {
19
19
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
20
- value?: any;
21
20
  index?: number | undefined;
21
+ value?: any;
22
22
  }>;
23
23
  }, "strip", z.ZodTypeAny, {
24
24
  conditionType: "time";
25
25
  method: "blocktime";
26
26
  returnValueTest: {
27
27
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
28
- value?: any;
29
28
  index?: number | undefined;
29
+ value?: any;
30
30
  };
31
31
  chain?: z.Primitive;
32
32
  }, {
33
33
  returnValueTest: {
34
34
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
35
- value?: any;
36
35
  index?: number | undefined;
36
+ value?: any;
37
37
  };
38
38
  conditionType?: "time" | undefined;
39
- chain?: z.Primitive;
40
39
  method?: "blocktime" | undefined;
40
+ chain?: z.Primitive;
41
41
  }>;
42
42
  export type TimeConditionProps = z.infer<typeof timeConditionSchema>;
43
43
  export declare class TimeCondition extends Condition {
@@ -1 +1 @@
1
- {"version":3,"file":"compound-condition.js","sourceRoot":"","sources":["../../../src/conditions/compound-condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAC;AAGxD,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAgB,CAAC;KAClD,MAAM,CAAC;IACN,aAAa,EAAE,CAAC;SACb,OAAO,CAAC,qBAAqB,CAAC;SAC9B,OAAO,CAAC,qBAAqB,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACtC,QAAQ,EAAE,CAAC;SACR,KAAK,CACJ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACV,CAAC,CAAC,KAAK,CAAC;QACN,kBAAkB;QAClB,mBAAmB;QACnB,uBAAuB;QACvB,uBAAuB;KACxB,CAAC,CACH,CACF;SACA,GAAG,CAAC,CAAC,CAAC;CACV,CAAC;KACD,MAAM,CACL,CAAC,SAAS,EAAE,EAAE;IACZ,yDAAyD;IACzD,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;QAC9C,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;KACvC;IAED,6CAA6C;IAC7C,IAAI,SAAS,CAAC,QAAQ,KAAK,KAAK,EAAE;QAChC,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;KACxC;IAED,gEAAgE;IAChE,OAAO,KAAK,CAAC;AACf,CAAC,EACD,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3B,OAAO,EAAE,8BAA8B,QAAQ,CAAC,MAAM,kBAAkB,QAAQ,GAAG;IACnF,IAAI,EAAE,CAAC,UAAU,CAAC;CACnB,CAAC,CACH,CAAC;AAMJ,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,KAAgD;QAC1D,KAAK,CAAC,uBAAuB,EAAE;YAC7B,aAAa,EAAE,qBAAqB;YACpC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;IAEO,MAAM,CAAC,YAAY,CACzB,QAA4B,EAC5B,QAA8B;QAE9B,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACzC,IAAI,OAAO,YAAY,SAAS,EAAE;gBAChC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;aACxB;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,iBAAiB,CAAC;YAC3B,QAAQ;YACR,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,EAAE,CAAC,UAA8B;QAC7C,OAAO,iBAAiB,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,UAA8B;QAC9C,OAAO,iBAAiB,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,SAA2B;QAC3C,OAAO,iBAAiB,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;CACF"}
1
+ {"version":3,"file":"compound-condition.js","sourceRoot":"","sources":["../../../src/conditions/compound-condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAC;AAGxD,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAgB,CAAC;KAClD,MAAM,CAAC;IACN,aAAa,EAAE,CAAC;SACb,OAAO,CAAC,qBAAqB,CAAC;SAC9B,OAAO,CAAC,qBAAqB,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACtC,QAAQ,EAAE,CAAC;SACR,KAAK,CACJ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACV,CAAC,CAAC,KAAK,CAAC;QACN,kBAAkB;QAClB,mBAAmB;QACnB,uBAAuB;QACvB,uBAAuB;KACxB,CAAC,CACH,CACF;SACA,GAAG,CAAC,CAAC,CAAC;CACV,CAAC;KACD,MAAM,CACL,CAAC,SAAS,EAAE,EAAE;IACZ,yDAAyD;IACzD,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/C,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,6CAA6C;IAC7C,IAAI,SAAS,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,gEAAgE;IAChE,OAAO,KAAK,CAAC;AACf,CAAC,EACD,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3B,OAAO,EAAE,8BAA8B,QAAQ,CAAC,MAAM,kBAAkB,QAAQ,GAAG;IACnF,IAAI,EAAE,CAAC,UAAU,CAAC;CACnB,CAAC,CACH,CAAC;AAMJ,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,KAAgD;QAC1D,KAAK,CAAC,uBAAuB,EAAE;YAC7B,aAAa,EAAE,qBAAqB;YACpC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;IAEO,MAAM,CAAC,YAAY,CACzB,QAA4B,EAC5B,QAA8B;QAE9B,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACzC,IAAI,OAAO,YAAY,SAAS,EAAE,CAAC;gBACjC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,iBAAiB,CAAC;YAC3B,QAAQ;YACR,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,EAAE,CAAC,UAA8B;QAC7C,OAAO,iBAAiB,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,UAA8B;QAC9C,OAAO,iBAAiB,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,SAA2B;QAC3C,OAAO,iBAAiB,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;CACF"}
@@ -1,7 +1,5 @@
1
- import { Conditions as WASMConditions } from '@nucypher/nucypher-core';
2
- import { ethers } from 'ethers';
1
+ import { Conditions as CoreConditions } from '@nucypher/nucypher-core';
3
2
  import { Condition } from './condition';
4
- import { ConditionContext, CustomContextParam } from './context';
5
3
  export type ConditionExpressionJSON = {
6
4
  version: string;
7
5
  condition: Record<string, unknown>;
@@ -15,9 +13,7 @@ export declare class ConditionExpression {
15
13
  static fromObj(obj: ConditionExpressionJSON): ConditionExpression;
16
14
  toJson(): string;
17
15
  static fromJSON(json: string): ConditionExpression;
18
- toWASMConditions(): WASMConditions;
19
- static fromWASMConditions(conditions: WASMConditions): ConditionExpression;
20
- buildContext(provider: ethers.providers.Provider, customParameters?: Record<string, CustomContextParam>, signer?: ethers.Signer): ConditionContext;
21
- contextRequiresSigner(): boolean;
16
+ toCoreCondition(): CoreConditions;
17
+ static fromCoreConditions(conditions: CoreConditions): ConditionExpression;
22
18
  equals(other: ConditionExpression): boolean;
23
19
  }
@@ -1,8 +1,7 @@
1
- import { Conditions as WASMConditions } from '@nucypher/nucypher-core';
1
+ import { Conditions as CoreConditions } from '@nucypher/nucypher-core';
2
2
  import { toJSON } from '@nucypher/shared';
3
3
  import { SemVer } from 'semver';
4
4
  import { ConditionFactory } from './condition-factory';
5
- import { ConditionContext } from './context';
6
5
  const ERR_VERSION = (provided, current) => `Version provided, ${provided}, is incompatible with current version, ${current}`;
7
6
  const ERR_CONDITION = (condition) => `Invalid condition: unrecognized condition data ${JSON.stringify(condition)}`;
8
7
  export class ConditionExpression {
@@ -38,18 +37,12 @@ export class ConditionExpression {
38
37
  static fromJSON(json) {
39
38
  return ConditionExpression.fromObj(JSON.parse(json));
40
39
  }
41
- toWASMConditions() {
42
- return new WASMConditions(toJSON(this.toObj()));
40
+ toCoreCondition() {
41
+ return new CoreConditions(toJSON(this.toObj()));
43
42
  }
44
- static fromWASMConditions(conditions) {
43
+ static fromCoreConditions(conditions) {
45
44
  return ConditionExpression.fromJSON(conditions.toString());
46
45
  }
47
- buildContext(provider, customParameters = {}, signer) {
48
- return new ConditionContext(provider, this.condition, customParameters, signer);
49
- }
50
- contextRequiresSigner() {
51
- return this.condition.requiresSigner();
52
- }
53
46
  equals(other) {
54
47
  return [
55
48
  this.version === other.version,
@@ -1 +1 @@
1
- {"version":3,"file":"condition-expr.js","sourceRoot":"","sources":["../../../src/conditions/condition-expr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"condition-expr.js","sourceRoot":"","sources":["../../../src/conditions/condition-expr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,OAAe,EAAE,EAAE,CACxD,qBAAqB,QAAQ,2CAA2C,OAAO,EAAE,CAAC;AACpF,MAAM,aAAa,GAAG,CAAC,SAAkC,EAAE,EAAE,CAC3D,kDAAkD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;AAOhF,MAAM,OAAO,mBAAmB;IAIZ;IACA;IAJX,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAEhC,YACkB,SAAoB,EACpB,UAAkB,mBAAmB,CAAC,OAAO;QAD7C,cAAS,GAAT,SAAS,CAAW;QACpB,YAAO,GAAP,OAAO,CAAsC;IAC5D,CAAC;IAEG,KAAK;QACV,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS;SACV,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,GAA4B;QAChD,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,eAAe,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACrE,OAAO,IAAI,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAEM,MAAM;QACX,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAY;QACjC,OAAO,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC;IAEM,eAAe;QACpB,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAAC,UAA0B;QACzD,OAAO,mBAAmB,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,KAA0B;QACtC,OAAO;YACL,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;YAC9B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;SACvC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"condition-factory.js","sourceRoot":"","sources":["../../../src/conditions/condition-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAqB,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC/E,OAAO,EACL,aAAa,EAEb,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,2BAA2B,IAAI,EAAE,CAAC;AAEpC,MAAM,OAAO,gBAAgB;IACpB,MAAM,CAAC,kBAAkB,CAAC,KAAqB;QACpD,QAAQ,KAAK,CAAC,aAAa,EAAE;YAC3B,KAAK,gBAAgB;gBACnB,OAAO,IAAI,YAAY,CAAC,KAA0B,CAAC,CAAC;YACtD,KAAK,iBAAiB;gBACpB,OAAO,IAAI,aAAa,CAAC,KAA2B,CAAC,CAAC;YACxD,KAAK,qBAAqB;gBACxB,OAAO,IAAI,iBAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE,KAAK,qBAAqB;gBACxB,OAAO,IAAI,iBAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE;gBACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;SACpE;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"condition-factory.js","sourceRoot":"","sources":["../../../src/conditions/condition-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAqB,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC/E,OAAO,EACL,aAAa,EAEb,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,2BAA2B,IAAI,EAAE,CAAC;AAEpC,MAAM,OAAO,gBAAgB;IACpB,MAAM,CAAC,kBAAkB,CAAC,KAAqB;QACpD,QAAQ,KAAK,CAAC,aAAa,EAAE,CAAC;YAC5B,KAAK,gBAAgB;gBACnB,OAAO,IAAI,YAAY,CAAC,KAA0B,CAAC,CAAC;YACtD,KAAK,iBAAiB;gBACpB,OAAO,IAAI,aAAa,CAAC,KAA2B,CAAC,CAAC;YACxD,KAAK,qBAAqB;gBACxB,OAAO,IAAI,iBAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE,KAAK,qBAAqB;gBACxB,OAAO,IAAI,iBAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE;gBACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF"}
@@ -9,8 +9,9 @@ export declare class Condition {
9
9
  data?: ConditionProps;
10
10
  error?: z.ZodError;
11
11
  };
12
- requiresSigner(): boolean;
13
- toObj(): any;
12
+ findParamWithAuthentication(): string | null;
13
+ requiresAuthentication(): boolean;
14
+ toObj(): ConditionProps;
14
15
  equals(other: Condition): boolean;
15
16
  }
16
17
  export {};
@@ -1,5 +1,5 @@
1
1
  import { objectEquals } from '@nucypher/shared';
2
- import { USER_ADDRESS_PARAM } from './const';
2
+ import { USER_ADDRESS_PARAMS } from './const';
3
3
  const ERR_INVALID_CONDITION = (error) => `Invalid condition: ${JSON.stringify(error.issues)}`;
4
4
  export class Condition {
5
5
  schema;
@@ -20,8 +20,18 @@ export class Condition {
20
20
  }
21
21
  return { error: result.error };
22
22
  }
23
- requiresSigner() {
24
- return JSON.stringify(this.value).includes(USER_ADDRESS_PARAM);
23
+ // TODO: Fix this method and add a test for it
24
+ findParamWithAuthentication() {
25
+ const serialized = JSON.stringify(this.value);
26
+ for (const param of USER_ADDRESS_PARAMS) {
27
+ if (serialized.includes(param)) {
28
+ return param;
29
+ }
30
+ }
31
+ return null;
32
+ }
33
+ requiresAuthentication() {
34
+ return Boolean(this.findParamWithAuthentication());
25
35
  }
26
36
  toObj() {
27
37
  const { data, error } = Condition.validate(this.schema, this.value);
@@ -1 +1 @@
1
- {"version":3,"file":"condition.js","sourceRoot":"","sources":["../../../src/conditions/condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAK7C,MAAM,qBAAqB,GAAG,CAAC,KAAiB,EAAE,EAAE,CAClD,sBAAsB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AAEvD,MAAM,OAAO,SAAS;IAEF;IACA;IAFlB,YACkB,MAAuB,EACvB,KAAqB;QADrB,WAAM,GAAN,MAAM,CAAiB;QACvB,UAAK,GAAL,KAAK,CAAgB;QAErC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,KAAK,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;SAC/C;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,QAAQ,CACpB,MAAuB,EACvB,KAAqB;QAKrB,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;SAC9B;QACD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAEM,cAAc;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACjE,CAAC;IAEM,KAAK;QACV,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,KAAK,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;SAC/C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAgB;QAC5B,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACnD,CAAC;CACF"}
1
+ {"version":3,"file":"condition.js","sourceRoot":"","sources":["../../../src/conditions/condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAK9C,MAAM,qBAAqB,GAAG,CAAC,KAAiB,EAAE,EAAE,CAClD,sBAAsB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AAEvD,MAAM,OAAO,SAAS;IAEF;IACA;IAFlB,YACkB,MAAuB,EACvB,KAAqB;QADrB,WAAM,GAAN,MAAM,CAAiB;QACvB,UAAK,GAAL,KAAK,CAAgB;QAErC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,QAAQ,CACpB,MAAuB,EACvB,KAAqB;QAKrB,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,8CAA8C;IACvC,2BAA2B;QAChC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,sBAAsB;QAC3B,OAAO,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC;IACrD,CAAC;IAEM,KAAK;QACV,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAgB;QAC5B,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACnD,CAAC;CACF"}
@@ -1,7 +1,5 @@
1
1
  import { ChainId } from '@nucypher/shared';
2
- export declare const USER_ADDRESS_PARAM = ":userAddress";
3
- export declare const ETH_ADDRESS_REGEXP: RegExp;
4
2
  export declare const CONTEXT_PARAM_REGEXP: RegExp;
5
3
  export declare const CONTEXT_PARAM_PREFIX = ":";
6
4
  export declare const SUPPORTED_CHAIN_IDS: ChainId[];
7
- export declare const RESERVED_CONTEXT_PARAMS: string[];
5
+ export declare const USER_ADDRESS_PARAMS: string[];
@@ -1,6 +1,5 @@
1
1
  import { ChainId } from '@nucypher/shared';
2
- export const USER_ADDRESS_PARAM = ':userAddress';
3
- export const ETH_ADDRESS_REGEXP = new RegExp('^0x[a-fA-F0-9]{40}$');
2
+ import { USER_ADDRESS_PARAM_DEFAULT, USER_ADDRESS_PARAM_EXTERNAL_EIP4361, } from '@nucypher/taco-auth';
4
3
  // Only allow alphanumeric characters and underscores
5
4
  export const CONTEXT_PARAM_REGEXP = new RegExp('^:[a-zA-Z_][a-zA-Z0-9_]*$');
6
5
  export const CONTEXT_PARAM_PREFIX = ':';
@@ -10,5 +9,9 @@ export const SUPPORTED_CHAIN_IDS = [
10
9
  ChainId.SEPOLIA,
11
10
  ChainId.ETHEREUM_MAINNET,
12
11
  ];
13
- export const RESERVED_CONTEXT_PARAMS = [USER_ADDRESS_PARAM];
12
+ export const USER_ADDRESS_PARAMS = [
13
+ USER_ADDRESS_PARAM_EXTERNAL_EIP4361,
14
+ // Ordering matters, this should always be last
15
+ USER_ADDRESS_PARAM_DEFAULT,
16
+ ];
14
17
  //# sourceMappingURL=const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/conditions/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAEjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAEpE,qDAAqD;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAExC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,gBAAgB;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/conditions/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EACL,0BAA0B,EAC1B,mCAAmC,GACpC,MAAM,qBAAqB,CAAC;AAE7B,qDAAqD;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAExC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,gBAAgB;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,mCAAmC;IACnC,+CAA+C;IAC/C,0BAA0B;CAC3B,CAAC"}
@@ -1,23 +1,27 @@
1
- import { Context, Conditions as WASMConditions } from '@nucypher/nucypher-core';
2
- import { ethers } from 'ethers';
1
+ import { ThresholdMessageKit } from '@nucypher/nucypher-core';
2
+ import { AuthProvider, AuthSignature } from '@nucypher/taco-auth';
3
+ import { CoreContext } from '../../types';
3
4
  import { Condition } from '../condition';
4
- import { TypedSignature } from './providers';
5
5
  export type CustomContextParam = string | number | boolean;
6
- export type ContextParam = CustomContextParam | TypedSignature;
6
+ export type ContextParam = CustomContextParam | AuthSignature;
7
+ export declare const RESERVED_CONTEXT_PARAMS: string[];
7
8
  export declare class ConditionContext {
8
- private readonly provider;
9
- private readonly condition;
10
- readonly customParameters: Record<string, CustomContextParam>;
11
- private readonly signer?;
12
- private readonly walletAuthProvider?;
13
- constructor(provider: ethers.providers.Provider, condition: Condition, customParameters?: Record<string, CustomContextParam>, signer?: ethers.Signer | undefined);
14
- private validate;
15
- toObj: () => Promise<Record<string, ContextParam>>;
9
+ requestedContextParameters: Set<string>;
10
+ private customContextParameters;
11
+ private authProviders;
12
+ constructor(condition: Condition);
13
+ private static validateCoreConditions;
14
+ private validateNoMissingContextParameters;
16
15
  private fillContextParameters;
17
- private isContextParameter;
18
- private findRequestedParameters;
16
+ private validateAuthProviders;
17
+ private fillAuthContextParameters;
18
+ private validateCustomContextParameter;
19
+ private static isContextParameter;
20
+ private static findContextParameters;
21
+ addCustomContextParameterValues(customContextParameters: Record<string, CustomContextParam>): void;
22
+ addAuthProvider(contextParam: string, authProvider: AuthProvider): void;
19
23
  toJson(): Promise<string>;
20
- withCustomParams(params: Record<string, CustomContextParam>): ConditionContext;
21
- toWASMContext(): Promise<Context>;
22
- static fromConditions(provider: ethers.providers.Provider, conditions: WASMConditions, signer?: ethers.Signer, customParameters?: Record<string, CustomContextParam>): ConditionContext;
24
+ toCoreContext(): Promise<CoreContext>;
25
+ toContextParameters: () => Promise<Record<string, ContextParam>>;
26
+ static fromMessageKit(messageKit: ThresholdMessageKit): ConditionContext;
23
27
  }