@nucypher/taco 0.6.0-alpha.1 → 0.6.0-alpha.3

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 (142) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/conditions/base/index.d.ts +2 -0
  3. package/dist/cjs/conditions/base/index.js +20 -8
  4. package/dist/cjs/conditions/base/index.js.map +1 -1
  5. package/dist/cjs/conditions/base/json-api.d.ts +1 -1
  6. package/dist/cjs/conditions/base/json-api.js +1 -2
  7. package/dist/cjs/conditions/base/json-api.js.map +1 -1
  8. package/dist/cjs/conditions/base/json-rpc.d.ts +7 -0
  9. package/dist/cjs/conditions/base/json-rpc.js +18 -0
  10. package/dist/cjs/conditions/base/json-rpc.js.map +1 -0
  11. package/dist/cjs/conditions/base/jwt.d.ts +7 -0
  12. package/dist/cjs/conditions/base/jwt.js +19 -0
  13. package/dist/cjs/conditions/base/jwt.js.map +1 -0
  14. package/dist/cjs/conditions/condition-expr.js +5 -5
  15. package/dist/cjs/conditions/condition-expr.js.map +1 -1
  16. package/dist/cjs/conditions/condition-factory.js +6 -0
  17. package/dist/cjs/conditions/condition-factory.js.map +1 -1
  18. package/dist/cjs/conditions/condition.js +2 -1
  19. package/dist/cjs/conditions/condition.js.map +1 -1
  20. package/dist/cjs/conditions/const.d.ts +0 -2
  21. package/dist/cjs/conditions/const.js +1 -9
  22. package/dist/cjs/conditions/const.js.map +1 -1
  23. package/dist/cjs/conditions/context/context.d.ts +2 -1
  24. package/dist/cjs/conditions/context/context.js +57 -61
  25. package/dist/cjs/conditions/context/context.js.map +1 -1
  26. package/dist/cjs/conditions/index.js +17 -7
  27. package/dist/cjs/conditions/index.js.map +1 -1
  28. package/dist/cjs/conditions/predefined/index.js +17 -7
  29. package/dist/cjs/conditions/predefined/index.js.map +1 -1
  30. package/dist/cjs/conditions/schemas/common.d.ts +3 -1
  31. package/dist/cjs/conditions/schemas/common.js +40 -7
  32. package/dist/cjs/conditions/schemas/common.js.map +1 -1
  33. package/dist/cjs/conditions/schemas/context.d.ts +1 -0
  34. package/dist/cjs/conditions/schemas/context.js +24 -3
  35. package/dist/cjs/conditions/schemas/context.js.map +1 -1
  36. package/dist/cjs/conditions/schemas/contract.d.ts +44 -25
  37. package/dist/cjs/conditions/schemas/contract.js +7 -7
  38. package/dist/cjs/conditions/schemas/contract.js.map +1 -1
  39. package/dist/cjs/conditions/schemas/export-for-zod-doc-gen.d.ts +18 -0
  40. package/dist/cjs/conditions/schemas/export-for-zod-doc-gen.js +37 -0
  41. package/dist/cjs/conditions/schemas/export-for-zod-doc-gen.js.map +1 -0
  42. package/dist/cjs/conditions/schemas/json-api.d.ts +14 -12
  43. package/dist/cjs/conditions/schemas/json-api.js +5 -25
  44. package/dist/cjs/conditions/schemas/json-api.js.map +1 -1
  45. package/dist/cjs/conditions/schemas/json-rpc.d.ts +51 -0
  46. package/dist/cjs/conditions/schemas/json-rpc.js +21 -0
  47. package/dist/cjs/conditions/schemas/json-rpc.js.map +1 -0
  48. package/dist/cjs/conditions/schemas/jwt.d.ts +22 -0
  49. package/dist/cjs/conditions/schemas/jwt.js +19 -0
  50. package/dist/cjs/conditions/schemas/jwt.js.map +1 -0
  51. package/dist/cjs/conditions/schemas/return-value-test.d.ts +18 -2
  52. package/dist/cjs/conditions/schemas/return-value-test.js +7 -2
  53. package/dist/cjs/conditions/schemas/return-value-test.js.map +1 -1
  54. package/dist/cjs/conditions/schemas/rpc.d.ts +19 -16
  55. package/dist/cjs/conditions/schemas/rpc.js +19 -37
  56. package/dist/cjs/conditions/schemas/rpc.js.map +1 -1
  57. package/dist/cjs/conditions/schemas/time.d.ts +11 -10
  58. package/dist/cjs/conditions/schemas/utils.js +4 -0
  59. package/dist/cjs/conditions/schemas/utils.js.map +1 -1
  60. package/dist/cjs/conditions/shared.d.ts +1 -1
  61. package/dist/cjs/conditions/shared.js +2 -1
  62. package/dist/cjs/conditions/shared.js.map +1 -1
  63. package/dist/cjs/index.js +17 -7
  64. package/dist/cjs/index.js.map +1 -1
  65. package/dist/cjs/utils.d.ts +2 -0
  66. package/dist/cjs/utils.js +48 -0
  67. package/dist/cjs/utils.js.map +1 -0
  68. package/dist/es/conditions/base/index.d.ts +2 -0
  69. package/dist/es/conditions/base/index.js +2 -0
  70. package/dist/es/conditions/base/index.js.map +1 -1
  71. package/dist/es/conditions/base/json-api.d.ts +1 -1
  72. package/dist/es/conditions/base/json-api.js +1 -1
  73. package/dist/es/conditions/base/json-api.js.map +1 -1
  74. package/dist/es/conditions/base/json-rpc.d.ts +7 -0
  75. package/dist/es/conditions/base/json-rpc.js +12 -0
  76. package/dist/es/conditions/base/json-rpc.js.map +1 -0
  77. package/dist/es/conditions/base/jwt.d.ts +7 -0
  78. package/dist/es/conditions/base/jwt.js +12 -0
  79. package/dist/es/conditions/base/jwt.js.map +1 -0
  80. package/dist/es/conditions/condition-expr.js +3 -3
  81. package/dist/es/conditions/condition-expr.js.map +1 -1
  82. package/dist/es/conditions/condition-factory.js +6 -0
  83. package/dist/es/conditions/condition-factory.js.map +1 -1
  84. package/dist/es/conditions/condition.js +2 -1
  85. package/dist/es/conditions/condition.js.map +1 -1
  86. package/dist/es/conditions/const.d.ts +0 -2
  87. package/dist/es/conditions/const.js +1 -9
  88. package/dist/es/conditions/const.js.map +1 -1
  89. package/dist/es/conditions/context/context.d.ts +2 -1
  90. package/dist/es/conditions/context/context.js +57 -61
  91. package/dist/es/conditions/context/context.js.map +1 -1
  92. package/dist/es/conditions/schemas/common.d.ts +3 -1
  93. package/dist/es/conditions/schemas/common.js +41 -8
  94. package/dist/es/conditions/schemas/common.js.map +1 -1
  95. package/dist/es/conditions/schemas/context.d.ts +1 -0
  96. package/dist/es/conditions/schemas/context.js +23 -2
  97. package/dist/es/conditions/schemas/context.js.map +1 -1
  98. package/dist/es/conditions/schemas/contract.d.ts +44 -25
  99. package/dist/es/conditions/schemas/contract.js +4 -4
  100. package/dist/es/conditions/schemas/contract.js.map +1 -1
  101. package/dist/es/conditions/schemas/export-for-zod-doc-gen.d.ts +18 -0
  102. package/dist/es/conditions/schemas/export-for-zod-doc-gen.js +21 -0
  103. package/dist/es/conditions/schemas/export-for-zod-doc-gen.js.map +1 -0
  104. package/dist/es/conditions/schemas/json-api.d.ts +14 -12
  105. package/dist/es/conditions/schemas/json-api.js +3 -23
  106. package/dist/es/conditions/schemas/json-api.js.map +1 -1
  107. package/dist/es/conditions/schemas/json-rpc.d.ts +51 -0
  108. package/dist/es/conditions/schemas/json-rpc.js +18 -0
  109. package/dist/es/conditions/schemas/json-rpc.js.map +1 -0
  110. package/dist/es/conditions/schemas/jwt.d.ts +22 -0
  111. package/dist/es/conditions/schemas/jwt.js +16 -0
  112. package/dist/es/conditions/schemas/jwt.js.map +1 -0
  113. package/dist/es/conditions/schemas/return-value-test.d.ts +18 -2
  114. package/dist/es/conditions/schemas/return-value-test.js +7 -2
  115. package/dist/es/conditions/schemas/return-value-test.js.map +1 -1
  116. package/dist/es/conditions/schemas/rpc.d.ts +19 -16
  117. package/dist/es/conditions/schemas/rpc.js +20 -15
  118. package/dist/es/conditions/schemas/rpc.js.map +1 -1
  119. package/dist/es/conditions/schemas/time.d.ts +11 -10
  120. package/dist/es/conditions/schemas/utils.js +4 -0
  121. package/dist/es/conditions/schemas/utils.js.map +1 -1
  122. package/dist/es/conditions/shared.d.ts +1 -1
  123. package/dist/es/conditions/shared.js +1 -1
  124. package/dist/es/conditions/shared.js.map +1 -1
  125. package/dist/es/utils.d.ts +2 -0
  126. package/dist/es/utils.js +43 -0
  127. package/dist/es/utils.js.map +1 -0
  128. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  129. package/dist/tsconfig.es.tsbuildinfo +1 -1
  130. package/package.json +13 -8
  131. package/dist/cjs/conditions/context/providers.d.ts +0 -16
  132. package/dist/cjs/conditions/context/providers.js +0 -111
  133. package/dist/cjs/conditions/context/providers.js.map +0 -1
  134. package/dist/cjs/web3.d.ts +0 -33
  135. package/dist/cjs/web3.js +0 -3
  136. package/dist/cjs/web3.js.map +0 -1
  137. package/dist/es/conditions/context/providers.d.ts +0 -16
  138. package/dist/es/conditions/context/providers.js +0 -107
  139. package/dist/es/conditions/context/providers.js.map +0 -1
  140. package/dist/es/web3.d.ts +0 -33
  141. package/dist/es/web3.js +0 -2
  142. package/dist/es/web3.js.map +0 -1
@@ -0,0 +1,21 @@
1
+ /**
2
+ * This file is used by zod2md to generate markdown documentation for the Zod schemas.
3
+ *
4
+ * NOTE: The order of the exported Zod objects in this file dictates the order of the generated markdown.
5
+ */
6
+ export * from './utils';
7
+ // ts-unused-exports:disable-next-line - this comment line is added to prevent lint from changing or objecting the export order.
8
+ export * from './common';
9
+ export * from './context';
10
+ // ts-unused-exports:disable-next-line - this comment line is added to prevent lint from changing or objecting the export order.
11
+ export * from './compound';
12
+ export * from './contract';
13
+ export * from './if-then-else';
14
+ export * from './json-api';
15
+ export * from './json-rpc';
16
+ export * from './jwt';
17
+ export * from './return-value-test';
18
+ export * from './rpc';
19
+ export * from './sequential';
20
+ export * from './time';
21
+ //# sourceMappingURL=export-for-zod-doc-gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-for-zod-doc-gen.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/export-for-zod-doc-gen.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,SAAS,CAAC;AACxB,gIAAgI;AAChI,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,gIAAgI;AAChI,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,qBAAqB,CAAC;AACpC,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC"}
@@ -1,43 +1,45 @@
1
1
  import { z } from 'zod';
2
2
  export declare const JsonApiConditionType = "json-api";
3
- export declare const jsonPathSchema: z.ZodEffects<z.ZodString, string, string>;
4
- export declare const jsonApiConditionSchema: z.ZodObject<{
3
+ export declare const jsonApiConditionSchema: z.ZodObject<z.objectUtil.extendShape<{
4
+ conditionType: z.ZodString;
5
+ }, {
5
6
  conditionType: z.ZodDefault<z.ZodLiteral<"json-api">>;
6
- endpoint: z.ZodString;
7
+ endpoint: z.ZodEffects<z.ZodString, string, string>;
7
8
  parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
8
9
  query: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
9
10
  authorizationToken: z.ZodOptional<z.ZodString>;
10
- returnValueTest: z.ZodObject<{
11
+ returnValueTest: z.ZodObject<z.objectUtil.extendShape<{
11
12
  index: z.ZodOptional<z.ZodNumber>;
12
13
  comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
14
+ }, {
13
15
  value: z.ZodType<any, z.ZodTypeDef, any>;
14
- }, "strip", z.ZodTypeAny, {
16
+ }>, "strip", z.ZodTypeAny, {
15
17
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
16
- index?: number | undefined;
17
18
  value?: any;
19
+ index?: number | undefined;
18
20
  }, {
19
21
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
20
- index?: number | undefined;
21
22
  value?: any;
23
+ index?: number | undefined;
22
24
  }>;
23
- }, "strip", z.ZodTypeAny, {
25
+ }>, "strip", z.ZodTypeAny, {
24
26
  conditionType: "json-api";
25
- endpoint: string;
26
27
  returnValueTest: {
27
28
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
28
- index?: number | undefined;
29
29
  value?: any;
30
+ index?: number | undefined;
30
31
  };
32
+ endpoint: string;
31
33
  parameters?: Record<string, unknown> | undefined;
32
34
  query?: string | undefined;
33
35
  authorizationToken?: string | undefined;
34
36
  }, {
35
- endpoint: string;
36
37
  returnValueTest: {
37
38
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
38
- index?: number | undefined;
39
39
  value?: any;
40
+ index?: number | undefined;
40
41
  };
42
+ endpoint: string;
41
43
  conditionType?: "json-api" | undefined;
42
44
  parameters?: Record<string, unknown> | undefined;
43
45
  query?: string | undefined;
@@ -1,31 +1,11 @@
1
- import { JSONPath } from '@astronautlabs/jsonpath';
2
1
  import { z } from 'zod';
3
- import { CONTEXT_PARAM_REGEXP } from '../const';
2
+ import { baseConditionSchema, httpsURLSchema, jsonPathSchema } from './common';
4
3
  import { contextParamSchema } from './context';
5
4
  import { returnValueTestSchema } from './return-value-test';
6
5
  export const JsonApiConditionType = 'json-api';
7
- const validateJSONPath = (jsonPath) => {
8
- // account for embedded context variables
9
- if (CONTEXT_PARAM_REGEXP.test(jsonPath)) {
10
- // skip validation
11
- return true;
12
- }
13
- try {
14
- JSONPath.parse(jsonPath);
15
- return true;
16
- }
17
- catch (error) {
18
- return false;
19
- }
20
- };
21
- export const jsonPathSchema = z
22
- .string()
23
- .refine((val) => validateJSONPath(val), {
24
- message: 'Invalid JSONPath expression',
25
- });
26
- export const jsonApiConditionSchema = z.object({
6
+ export const jsonApiConditionSchema = baseConditionSchema.extend({
27
7
  conditionType: z.literal(JsonApiConditionType).default(JsonApiConditionType),
28
- endpoint: z.string().url(),
8
+ endpoint: httpsURLSchema,
29
9
  parameters: z.record(z.string(), z.unknown()).optional(),
30
10
  query: jsonPathSchema.optional(),
31
11
  authorizationToken: contextParamSchema.optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/json-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE/C,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAW,EAAE;IACrD,yCAAyC;IACzC,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,kBAAkB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;IACtC,OAAO,EAAE,6BAA6B;CACvC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IAC5E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACxD,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,qBAAqB,EAAE,2EAA2E;CACpH,CAAC,CAAC"}
1
+ {"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/json-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAC/D,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IAC5E,QAAQ,EAAE,cAAc;IACxB,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACxD,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,qBAAqB,EAAE,2EAA2E;CACpH,CAAC,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+ export declare const JsonRpcConditionType = "json-rpc";
3
+ export declare const jsonRpcConditionSchema: z.ZodObject<z.objectUtil.extendShape<{
4
+ conditionType: z.ZodString;
5
+ }, {
6
+ conditionType: z.ZodDefault<z.ZodLiteral<"json-rpc">>;
7
+ endpoint: z.ZodEffects<z.ZodString, string, string>;
8
+ method: z.ZodString;
9
+ params: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodUnknown, "many">, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
10
+ query: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
11
+ authorizationToken: z.ZodOptional<z.ZodString>;
12
+ returnValueTest: z.ZodObject<z.objectUtil.extendShape<{
13
+ index: z.ZodOptional<z.ZodNumber>;
14
+ comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
15
+ }, {
16
+ value: z.ZodType<any, z.ZodTypeDef, any>;
17
+ }>, "strip", z.ZodTypeAny, {
18
+ comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
19
+ value?: any;
20
+ index?: number | undefined;
21
+ }, {
22
+ comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
23
+ value?: any;
24
+ index?: number | undefined;
25
+ }>;
26
+ }>, "strip", z.ZodTypeAny, {
27
+ conditionType: "json-rpc";
28
+ method: string;
29
+ returnValueTest: {
30
+ comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
31
+ value?: any;
32
+ index?: number | undefined;
33
+ };
34
+ endpoint: string;
35
+ params?: unknown[] | Record<string, unknown> | undefined;
36
+ query?: string | undefined;
37
+ authorizationToken?: string | undefined;
38
+ }, {
39
+ method: string;
40
+ returnValueTest: {
41
+ comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
42
+ value?: any;
43
+ index?: number | undefined;
44
+ };
45
+ endpoint: string;
46
+ params?: unknown[] | Record<string, unknown> | undefined;
47
+ conditionType?: "json-rpc" | undefined;
48
+ query?: string | undefined;
49
+ authorizationToken?: string | undefined;
50
+ }>;
51
+ export type JsonRpcConditionProps = z.infer<typeof jsonRpcConditionSchema>;
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { baseConditionSchema, httpsURLSchema, jsonPathSchema } from './common';
3
+ import { contextParamSchema } from './context';
4
+ import { returnValueTestSchema } from './return-value-test';
5
+ export const JsonRpcConditionType = 'json-rpc';
6
+ export const jsonRpcConditionSchema = baseConditionSchema.extend({
7
+ conditionType: z.literal(JsonRpcConditionType).default(JsonRpcConditionType),
8
+ endpoint: httpsURLSchema,
9
+ method: z.string(),
10
+ // list or dictionary
11
+ params: z
12
+ .union([z.array(z.unknown()), z.record(z.string(), z.unknown())])
13
+ .optional(),
14
+ query: jsonPathSchema.optional(),
15
+ authorizationToken: contextParamSchema.optional(),
16
+ returnValueTest: returnValueTestSchema,
17
+ });
18
+ //# sourceMappingURL=json-rpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-rpc.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/json-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAC/D,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IAC5E,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,qBAAqB;IACrB,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SAChE,QAAQ,EAAE;IACb,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,qBAAqB;CACvC,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { z } from 'zod';
2
+ export declare const JWT_PARAM_DEFAULT = ":jwtToken";
3
+ export declare const JWTConditionType = "jwt";
4
+ export declare const jwtConditionSchema: z.ZodObject<z.objectUtil.extendShape<{
5
+ conditionType: z.ZodString;
6
+ }, {
7
+ conditionType: z.ZodDefault<z.ZodLiteral<"jwt">>;
8
+ publicKey: z.ZodString;
9
+ expectedIssuer: z.ZodOptional<z.ZodString>;
10
+ jwtToken: z.ZodDefault<z.ZodString>;
11
+ }>, "strip", z.ZodTypeAny, {
12
+ conditionType: "jwt";
13
+ publicKey: string;
14
+ jwtToken: string;
15
+ expectedIssuer?: string | undefined;
16
+ }, {
17
+ publicKey: string;
18
+ conditionType?: "jwt" | undefined;
19
+ expectedIssuer?: string | undefined;
20
+ jwtToken?: string | undefined;
21
+ }>;
22
+ export type JWTConditionProps = z.infer<typeof jwtConditionSchema>;
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { baseConditionSchema } from './common';
3
+ import { contextParamSchema } from './context';
4
+ export const JWT_PARAM_DEFAULT = ':jwtToken';
5
+ export const JWTConditionType = 'jwt';
6
+ export const jwtConditionSchema = baseConditionSchema.extend({
7
+ conditionType: z.literal(JWTConditionType).default(JWTConditionType),
8
+ publicKey: z.string(),
9
+ expectedIssuer: z.string().optional(),
10
+ // TODO see https://github.com/nucypher/taco-web/pull/604#discussion_r1901746814
11
+ // subject: contextParamSchema.optional(),
12
+ // expirationWindow: z.number().int().nonnegative().optional(),
13
+ // issuedWindow: z.number().int().nonnegative().optional(),
14
+ jwtToken: contextParamSchema.default(JWT_PARAM_DEFAULT),
15
+ });
16
+ //# sourceMappingURL=jwt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/jwt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAE7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAC3D,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACpE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,gFAAgF;IAChF,0CAA0C;IAC1C,+DAA+D;IAC/D,2DAA2D;IAC3D,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,CAAC;CACxD,CAAC,CAAC"}
@@ -1,15 +1,31 @@
1
1
  import { z } from 'zod';
2
- export declare const returnValueTestSchema: z.ZodObject<{
2
+ export declare const returnValueTestSchema: z.ZodObject<z.objectUtil.extendShape<{
3
3
  index: z.ZodOptional<z.ZodNumber>;
4
4
  comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
5
+ }, {
5
6
  value: z.ZodType<any, z.ZodTypeDef, any>;
6
- }, "strip", z.ZodTypeAny, {
7
+ }>, "strip", z.ZodTypeAny, {
7
8
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
9
+ value?: any;
8
10
  index?: number | undefined;
11
+ }, {
12
+ comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
9
13
  value?: any;
14
+ index?: number | undefined;
15
+ }>;
16
+ export declare const blockchainReturnValueTestSchema: z.ZodObject<z.objectUtil.extendShape<{
17
+ index: z.ZodOptional<z.ZodNumber>;
18
+ comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
10
19
  }, {
20
+ value: z.ZodType<any, z.ZodTypeDef, any>;
21
+ }>, "strip", z.ZodTypeAny, {
11
22
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
23
+ value?: any;
12
24
  index?: number | undefined;
25
+ }, {
26
+ comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
13
27
  value?: any;
28
+ index?: number | undefined;
14
29
  }>;
15
30
  export type ReturnValueTestProps = z.infer<typeof returnValueTestSchema>;
31
+ export type BlockchainReturnValueTestProps = z.infer<typeof blockchainReturnValueTestSchema>;
@@ -1,8 +1,13 @@
1
1
  import { z } from 'zod';
2
- import { paramOrContextParamSchema } from './context';
3
- export const returnValueTestSchema = z.object({
2
+ import { blockchainParamOrContextParamSchema, paramOrContextParamSchema, } from './context';
3
+ const returnValueTestBaseSchema = z.object({
4
4
  index: z.number().int().nonnegative().optional(),
5
5
  comparator: z.enum(['==', '>', '<', '>=', '<=', '!=']),
6
+ });
7
+ export const returnValueTestSchema = returnValueTestBaseSchema.extend({
6
8
  value: paramOrContextParamSchema,
7
9
  });
10
+ export const blockchainReturnValueTestSchema = returnValueTestBaseSchema.extend({
11
+ value: blockchainParamOrContextParamSchema,
12
+ });
8
13
  //# sourceMappingURL=return-value-test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"return-value-test.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/return-value-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAEtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAChD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACtD,KAAK,EAAE,yBAAyB;CACjC,CAAC,CAAC"}
1
+ {"version":3,"file":"return-value-test.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/return-value-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,mCAAmC,EACnC,yBAAyB,GAC1B,MAAM,WAAW,CAAC;AAEnB,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAChD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,yBAAyB,CAAC,MAAM,CAAC;IACpE,KAAK,EAAE,yBAAyB;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAAG,yBAAyB,CAAC,MAAM,CAC7E;IACE,KAAK,EAAE,mCAAmC;CAC3C,CACF,CAAC"}
@@ -1,42 +1,45 @@
1
1
  import { z } from 'zod';
2
2
  export declare const RpcConditionType = "rpc";
3
- export declare const rpcConditionSchema: z.ZodObject<{
3
+ export declare const rpcConditionSchema: z.ZodObject<z.objectUtil.extendShape<{
4
+ conditionType: z.ZodString;
5
+ }, {
4
6
  conditionType: z.ZodDefault<z.ZodLiteral<"rpc">>;
5
- chain: z.ZodNever | z.ZodLiteral<z.Primitive> | z.ZodUnion<[z.ZodLiteral<z.Primitive>, z.ZodLiteral<z.Primitive>, ...z.ZodLiteral<z.Primitive>[]]>;
7
+ chain: z.ZodNumber;
6
8
  method: z.ZodEnum<["eth_getBalance"]>;
7
- parameters: z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodEnum<[":userAddress", ":userAddressExternalEIP4361"]>, z.ZodString]>, z.ZodUnion<[z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodEnum<["earliest", "finalized", "safe", "latest", "pending"]>]>, z.ZodString]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodEnum<[":userAddress", ":userAddressExternalEIP4361"]>, z.ZodString]>], null>]>;
8
- returnValueTest: z.ZodObject<{
9
+ parameters: z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodLiteral<":userAddress">, z.ZodString]>, z.ZodUnion<[z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodEnum<["earliest", "finalized", "safe", "latest", "pending"]>]>, z.ZodString]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodLiteral<":userAddress">, z.ZodString]>], null>]>;
10
+ returnValueTest: z.ZodObject<z.objectUtil.extendShape<{
9
11
  index: z.ZodOptional<z.ZodNumber>;
10
12
  comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
13
+ }, {
11
14
  value: z.ZodType<any, z.ZodTypeDef, any>;
12
- }, "strip", z.ZodTypeAny, {
15
+ }>, "strip", z.ZodTypeAny, {
13
16
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
14
- index?: number | undefined;
15
17
  value?: any;
18
+ index?: number | undefined;
16
19
  }, {
17
20
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
18
- index?: number | undefined;
19
21
  value?: any;
22
+ index?: number | undefined;
20
23
  }>;
21
- }, "strip", z.ZodTypeAny, {
24
+ }>, "strip", z.ZodTypeAny, {
22
25
  conditionType: "rpc";
23
- parameters: [string] | [string, string | number];
26
+ chain: number;
27
+ method: "eth_getBalance";
28
+ parameters: [string, string | number] | [string];
24
29
  returnValueTest: {
25
30
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
26
- index?: number | undefined;
27
31
  value?: any;
32
+ index?: number | undefined;
28
33
  };
29
- method: "eth_getBalance";
30
- chain?: z.Primitive;
31
34
  }, {
32
- parameters: [string] | [string, string | number];
35
+ chain: number;
36
+ method: "eth_getBalance";
37
+ parameters: [string, string | number] | [string];
33
38
  returnValueTest: {
34
39
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
35
- index?: number | undefined;
36
40
  value?: any;
41
+ index?: number | undefined;
37
42
  };
38
- method: "eth_getBalance";
39
43
  conditionType?: "rpc" | undefined;
40
- chain?: z.Primitive;
41
44
  }>;
42
45
  export type RpcConditionProps = z.infer<typeof rpcConditionSchema>;
@@ -1,32 +1,37 @@
1
1
  import { BlockIdentifierSchema, EthAddressSchema } from '@nucypher/shared';
2
2
  import { z } from 'zod';
3
- import { SUPPORTED_CHAIN_IDS } from '../const';
4
- import createUnionSchema, { baseConditionSchema, UserAddressSchema, } from './common';
3
+ import { baseConditionSchema, UserAddressSchema } from './common';
5
4
  import { contextParamSchema } from './context';
6
- import { returnValueTestSchema } from './return-value-test';
5
+ import { blockchainReturnValueTestSchema } from './return-value-test';
7
6
  export const RpcConditionType = 'rpc';
8
7
  const EthAddressOrContextVariableSchema = z.union([
9
8
  EthAddressSchema,
10
9
  UserAddressSchema,
11
10
  contextParamSchema,
12
11
  ]);
13
- const BlockOrContextParamSchema = z.union([
14
- BlockIdentifierSchema,
15
- contextParamSchema,
16
- ]);
12
+ const BlockOrContextParamSchema = z
13
+ .union([BlockIdentifierSchema, contextParamSchema])
14
+ .describe('A block identifier or a context variable that will be replaced with a block identifier at execution time.');
17
15
  // eth_getBalance schema specification
18
16
  // - Ethereum spec: https://ethereum.github.io/execution-apis/api-documentation/
19
17
  // - web3py: https://web3py.readthedocs.io/en/stable/web3.eth.html#web3.eth.Eth.get_balance
20
- export const rpcConditionSchema = baseConditionSchema.extend({
18
+ export const rpcConditionSchema = baseConditionSchema
19
+ .extend({
21
20
  conditionType: z.literal(RpcConditionType).default(RpcConditionType),
22
- chain: createUnionSchema(SUPPORTED_CHAIN_IDS),
23
- method: z.enum(['eth_getBalance']),
21
+ chain: z.number().int().nonnegative(),
22
+ method: z
23
+ .enum(['eth_getBalance'])
24
+ .describe("Only 'eth_getBalance' method is supported"),
24
25
  parameters: z.union([
25
26
  // Spec requires 2 parameters: an address and a block identifier
26
- z.tuple([EthAddressOrContextVariableSchema, BlockOrContextParamSchema]),
27
- // Block identifier can be omitted, since web3py (which runs on TACo exec layer) defaults to 'latest',
28
- z.tuple([EthAddressOrContextVariableSchema]),
27
+ z
28
+ .tuple([EthAddressOrContextVariableSchema, BlockOrContextParamSchema])
29
+ .describe('Spec requires 2 parameters - an address and a block identifier'),
30
+ z
31
+ .tuple([EthAddressOrContextVariableSchema])
32
+ .describe("Block identifier, which defaults to 'latest' if not specified"),
29
33
  ]),
30
- returnValueTest: returnValueTestSchema, // Update to allow multiple return values after expanding supported methods
31
- });
34
+ returnValueTest: blockchainReturnValueTestSchema, // Update to allow multiple return values after expanding supported methods
35
+ })
36
+ .describe('RPC Condition for calling [Ethereum JSON RPC APIs](https://ethereum.github.io/execution-apis/api-documentation/)');
32
37
  //# sourceMappingURL=rpc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,iBAAiB,EAAE,EACxB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC;IAChD,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;CACnB,CAAC,CAAC;AACH,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC;IACxC,qBAAqB;IACrB,kBAAkB;CACnB,CAAC,CAAC;AAEH,sCAAsC;AACtC,gFAAgF;AAChF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAC3D,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACpE,KAAK,EAAE,iBAAiB,CAAC,mBAAmB,CAAC;IAC7C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAClC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC;QAClB,gEAAgE;QAChE,CAAC,CAAC,KAAK,CAAC,CAAC,iCAAiC,EAAE,yBAAyB,CAAC,CAAC;QACvE,sGAAsG;QACtG,CAAC,CAAC,KAAK,CAAC,CAAC,iCAAiC,CAAC,CAAC;KAC7C,CAAC;IACF,eAAe,EAAE,qBAAqB,EAAE,2EAA2E;CACpH,CAAC,CAAC"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AAEtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC;IAChD,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;CACnB,CAAC,CAAC;AACH,MAAM,yBAAyB,GAAG,CAAC;KAChC,KAAK,CAAC,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;KAClD,QAAQ,CACP,2GAA2G,CAC5G,CAAC;AAEJ,sCAAsC;AACtC,gFAAgF;AAChF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB;KAClD,MAAM,CAAC;IACN,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACpE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACrC,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC;SACxB,QAAQ,CAAC,2CAA2C,CAAC;IACxD,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC;QAClB,gEAAgE;QAChE,CAAC;aACE,KAAK,CAAC,CAAC,iCAAiC,EAAE,yBAAyB,CAAC,CAAC;aACrE,QAAQ,CACP,gEAAgE,CACjE;QACH,CAAC;aACE,KAAK,CAAC,CAAC,iCAAiC,CAAC,CAAC;aAC1C,QAAQ,CACP,+DAA+D,CAChE;KACJ,CAAC;IACF,eAAe,EAAE,+BAA+B,EAAE,2EAA2E;CAC9H,CAAC;KACD,QAAQ,CACP,kHAAkH,CACnH,CAAC"}
@@ -4,37 +4,38 @@ export declare const TimeConditionMethod = "blocktime";
4
4
  export declare const timeConditionSchema: z.ZodObject<{
5
5
  conditionType: z.ZodDefault<z.ZodLiteral<"time">>;
6
6
  method: z.ZodDefault<z.ZodLiteral<"blocktime">>;
7
- chain: z.ZodNever | z.ZodLiteral<z.Primitive> | z.ZodUnion<[z.ZodLiteral<z.Primitive>, z.ZodLiteral<z.Primitive>, ...z.ZodLiteral<z.Primitive>[]]>;
8
- returnValueTest: z.ZodObject<{
7
+ chain: z.ZodNumber;
8
+ returnValueTest: z.ZodObject<z.objectUtil.extendShape<{
9
9
  index: z.ZodOptional<z.ZodNumber>;
10
10
  comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
11
+ }, {
11
12
  value: z.ZodType<any, z.ZodTypeDef, any>;
12
- }, "strip", z.ZodTypeAny, {
13
+ }>, "strip", z.ZodTypeAny, {
13
14
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
14
- index?: number | undefined;
15
15
  value?: any;
16
+ index?: number | undefined;
16
17
  }, {
17
18
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
18
- index?: number | undefined;
19
19
  value?: any;
20
+ index?: number | undefined;
20
21
  }>;
21
22
  }, "strip", z.ZodTypeAny, {
22
23
  conditionType: "time";
24
+ chain: number;
25
+ method: "blocktime";
23
26
  returnValueTest: {
24
27
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
25
- index?: number | undefined;
26
28
  value?: any;
29
+ index?: number | undefined;
27
30
  };
28
- method: "blocktime";
29
- chain?: z.Primitive;
30
31
  }, {
32
+ chain: number;
31
33
  returnValueTest: {
32
34
  comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
33
- index?: number | undefined;
34
35
  value?: any;
36
+ index?: number | undefined;
35
37
  };
36
38
  conditionType?: "time" | undefined;
37
39
  method?: "blocktime" | undefined;
38
- chain?: z.Primitive;
39
40
  }>;
40
41
  export type TimeConditionProps = z.infer<typeof timeConditionSchema>;
@@ -3,6 +3,8 @@ import { compoundConditionSchema } from '../compound-condition';
3
3
  import { contractConditionSchema } from './contract';
4
4
  import { ifThenElseConditionSchema } from './if-then-else';
5
5
  import { jsonApiConditionSchema } from './json-api';
6
+ import { jsonRpcConditionSchema } from './json-rpc';
7
+ import { jwtConditionSchema } from './jwt';
6
8
  import { rpcConditionSchema } from './rpc';
7
9
  import { sequentialConditionSchema } from './sequential';
8
10
  import { timeConditionSchema } from './time';
@@ -12,6 +14,8 @@ export const anyConditionSchema = z.lazy(() => z.union([
12
14
  contractConditionSchema,
13
15
  compoundConditionSchema,
14
16
  jsonApiConditionSchema,
17
+ jsonRpcConditionSchema,
18
+ jwtConditionSchema,
15
19
  sequentialConditionSchema,
16
20
  ifThenElseConditionSchema,
17
21
  ]));
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C,MAAM,CAAC,MAAM,kBAAkB,GAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACzD,CAAC,CAAC,KAAK,CAAC;IACN,kBAAkB;IAClB,mBAAmB;IACnB,uBAAuB;IACvB,uBAAuB;IACvB,sBAAsB;IACtB,yBAAyB;IACzB,yBAAyB;CAC1B,CAAC,CACH,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C,MAAM,CAAC,MAAM,kBAAkB,GAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACzD,CAAC,CAAC,KAAK,CAAC;IACN,kBAAkB;IAClB,mBAAmB;IACnB,uBAAuB;IACvB,uBAAuB;IACvB,sBAAsB;IACtB,sBAAsB;IACtB,kBAAkB;IAClB,yBAAyB;IACzB,yBAAyB;CAC1B,CAAC,CACH,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export type OmitConditionType<T> = Omit<T, 'conditionType'>;
2
2
  export { contextParamSchema, paramOrContextParamSchema, } from './schemas/context';
3
- export { ReturnValueTestProps, returnValueTestSchema, } from './schemas/return-value-test';
3
+ export { BlockchainReturnValueTestProps, ReturnValueTestProps, blockchainReturnValueTestSchema, returnValueTestSchema, } from './schemas/return-value-test';
@@ -1,3 +1,3 @@
1
1
  export { contextParamSchema, paramOrContextParamSchema, } from './schemas/context';
2
- export { returnValueTestSchema, } from './schemas/return-value-test';
2
+ export { blockchainReturnValueTestSchema, returnValueTestSchema, } from './schemas/return-value-test';
3
3
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/conditions/shared.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAEL,qBAAqB,GACtB,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/conditions/shared.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAGL,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const toJSON: (obj: unknown) => string;
2
+ export declare const fromJSON: (json: string) => any;
@@ -0,0 +1,43 @@
1
+ import { toHexString } from '@nucypher/shared';
2
+ const customTypeReplacer = (_key, value) => {
3
+ if (value instanceof Uint8Array) {
4
+ // use hex string for byte arrays
5
+ return `0x${toHexString(value)}`;
6
+ }
7
+ if (typeof value === 'bigint') {
8
+ if (value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER) {
9
+ // can't serialized to a safe number so use bigint string notation
10
+ return `${value}n`;
11
+ }
12
+ return Number(value);
13
+ }
14
+ return value;
15
+ };
16
+ const customTypeReceiver = (_key, value) => {
17
+ if (typeof value === 'string') {
18
+ if (/^-?\d+n$/.test(value)) {
19
+ // bigint number stored as string (`${value}n`)
20
+ return BigInt(value.slice(0, -1));
21
+ }
22
+ // NOTE: hex strings remain hex strings - could be an address (not bytes) or hex string (originally a byte array). Can't be sure which is which other than length (42) which feels flimsy
23
+ }
24
+ return value;
25
+ };
26
+ const sortedReplacer = (_key, value) => {
27
+ if (value instanceof Object && !(value instanceof Array)) {
28
+ return Object.keys(value)
29
+ .sort()
30
+ .reduce((sorted, key) => {
31
+ sorted[key] = value[key];
32
+ return sorted;
33
+ }, {});
34
+ }
35
+ return value;
36
+ };
37
+ const sortedSerializingReplacer = (_key, value) => {
38
+ const serializedValue = customTypeReplacer(_key, value);
39
+ return sortedReplacer(_key, serializedValue);
40
+ };
41
+ export const toJSON = (obj) => JSON.stringify(obj, sortedSerializingReplacer);
42
+ export const fromJSON = (json) => JSON.parse(json, customTypeReceiver);
43
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE;IAC1D,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,iCAAiC;QACjC,OAAO,KAAK,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,KAAK,GAAG,MAAM,CAAC,gBAAgB,IAAI,KAAK,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACvE,kEAAkE;YAClE,OAAO,GAAG,KAAK,GAAG,CAAC;QACrB,CAAC;QAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,+CAA+C;YAC/C,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC;QACD,yLAAyL;IAC3L,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE;IACtD,IAAI,KAAK,YAAY,MAAM,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aACtB,IAAI,EAAE;aACN,MAAM,CAAC,CAAC,MAA+B,EAAE,GAAG,EAAE,EAAE;YAC/C,MAAM,CAAC,GAAG,CAAC,GAAI,KAAiC,CAAC,GAAG,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC;QAChB,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE;IAC1E,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxD,OAAO,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAY,EAAE,EAAE,CACrC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;AAEjD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC"}