@nucypher/taco 0.6.0-alpha.0 → 0.6.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/cjs/conditions/base/index.d.ts +1 -0
- package/dist/cjs/conditions/base/index.js +2 -1
- package/dist/cjs/conditions/base/index.js.map +1 -1
- package/dist/cjs/conditions/base/json-api.d.ts +1 -1
- package/dist/cjs/conditions/base/json-api.js +1 -2
- package/dist/cjs/conditions/base/json-api.js.map +1 -1
- package/dist/cjs/conditions/base/json-rpc.d.ts +7 -0
- package/dist/cjs/conditions/base/json-rpc.js +18 -0
- package/dist/cjs/conditions/base/json-rpc.js.map +1 -0
- package/dist/cjs/conditions/condition-factory.js +3 -0
- package/dist/cjs/conditions/condition-factory.js.map +1 -1
- package/dist/cjs/conditions/const.d.ts +0 -2
- package/dist/cjs/conditions/const.js +1 -8
- package/dist/cjs/conditions/const.js.map +1 -1
- package/dist/cjs/conditions/context/context.d.ts +1 -0
- package/dist/cjs/conditions/context/context.js +46 -30
- package/dist/cjs/conditions/context/context.js.map +1 -1
- package/dist/cjs/conditions/schemas/common.d.ts +2 -0
- package/dist/cjs/conditions/schemas/common.js +31 -1
- package/dist/cjs/conditions/schemas/common.js.map +1 -1
- package/dist/cjs/conditions/schemas/contract.d.ts +13 -13
- package/dist/cjs/conditions/schemas/json-api.d.ts +1 -2
- package/dist/cjs/conditions/schemas/json-api.js +5 -25
- package/dist/cjs/conditions/schemas/json-api.js.map +1 -1
- package/dist/cjs/conditions/schemas/json-rpc.d.ts +48 -0
- package/dist/cjs/conditions/schemas/json-rpc.js +21 -0
- package/dist/cjs/conditions/schemas/json-rpc.js.map +1 -0
- package/dist/cjs/conditions/schemas/rpc.d.ts +7 -7
- package/dist/cjs/conditions/schemas/rpc.js +2 -26
- package/dist/cjs/conditions/schemas/rpc.js.map +1 -1
- package/dist/cjs/conditions/schemas/time.d.ts +4 -4
- package/dist/cjs/conditions/schemas/utils.js +2 -0
- package/dist/cjs/conditions/schemas/utils.js.map +1 -1
- package/dist/es/conditions/base/index.d.ts +1 -0
- package/dist/es/conditions/base/index.js +1 -0
- package/dist/es/conditions/base/index.js.map +1 -1
- package/dist/es/conditions/base/json-api.d.ts +1 -1
- package/dist/es/conditions/base/json-api.js +1 -1
- package/dist/es/conditions/base/json-api.js.map +1 -1
- package/dist/es/conditions/base/json-rpc.d.ts +7 -0
- package/dist/es/conditions/base/json-rpc.js +12 -0
- package/dist/es/conditions/base/json-rpc.js.map +1 -0
- package/dist/es/conditions/condition-factory.js +3 -0
- package/dist/es/conditions/condition-factory.js.map +1 -1
- package/dist/es/conditions/const.d.ts +0 -2
- package/dist/es/conditions/const.js +0 -7
- package/dist/es/conditions/const.js.map +1 -1
- package/dist/es/conditions/context/context.d.ts +1 -0
- package/dist/es/conditions/context/context.js +47 -31
- package/dist/es/conditions/context/context.js.map +1 -1
- package/dist/es/conditions/schemas/common.d.ts +2 -0
- package/dist/es/conditions/schemas/common.js +31 -1
- package/dist/es/conditions/schemas/common.js.map +1 -1
- package/dist/es/conditions/schemas/contract.d.ts +13 -13
- package/dist/es/conditions/schemas/json-api.d.ts +1 -2
- package/dist/es/conditions/schemas/json-api.js +3 -23
- package/dist/es/conditions/schemas/json-api.js.map +1 -1
- package/dist/es/conditions/schemas/json-rpc.d.ts +48 -0
- package/dist/es/conditions/schemas/json-rpc.js +18 -0
- package/dist/es/conditions/schemas/json-rpc.js.map +1 -0
- package/dist/es/conditions/schemas/rpc.d.ts +7 -7
- package/dist/es/conditions/schemas/rpc.js +2 -3
- package/dist/es/conditions/schemas/rpc.js.map +1 -1
- package/dist/es/conditions/schemas/time.d.ts +4 -4
- package/dist/es/conditions/schemas/utils.js +2 -0
- package/dist/es/conditions/schemas/utils.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.es.tsbuildinfo +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
To use `taco`, you need to connect with a proper network: `mainnet`, `testnet`, or `devnet`. You can find a proper version for each network in the [npmjs.com package tags](https://www.npmjs.com/package/@nucypher/taco?activeTab=versions).
|
|
8
8
|
|
|
9
|
-
Visit [our documentation](https://docs.
|
|
9
|
+
Visit [our documentation](https://docs.taco.build/taco-integration/) to learn more.
|
|
10
10
|
|
|
11
11
|
## Usage
|
|
12
12
|
|
|
@@ -67,4 +67,4 @@ const decryptedMessage = await decrypt(
|
|
|
67
67
|
## Learn more
|
|
68
68
|
|
|
69
69
|
Please find developer documentation for
|
|
70
|
-
TACo [here](https://docs.
|
|
70
|
+
TACo [here](https://docs.taco.build/).
|
|
@@ -25,9 +25,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
return result;
|
|
26
26
|
};
|
|
27
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
-
exports.time = exports.rpc = exports.jsonApi = exports.contract = void 0;
|
|
28
|
+
exports.time = exports.rpc = exports.jsonRpc = exports.jsonApi = exports.contract = void 0;
|
|
29
29
|
exports.contract = __importStar(require("./contract"));
|
|
30
30
|
exports.jsonApi = __importStar(require("./json-api"));
|
|
31
|
+
exports.jsonRpc = __importStar(require("./json-rpc"));
|
|
31
32
|
exports.rpc = __importStar(require("./rpc"));
|
|
32
33
|
exports.time = __importStar(require("./time"));
|
|
33
34
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/conditions/base/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,gDAAgD;;;;;;;;;;;;;;;;;;;;;;;;;;AAEhD,uDAAuC;AACvC,sDAAsC;AACtC,6CAA6B;AAC7B,+CAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/conditions/base/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,gDAAgD;;;;;;;;;;;;;;;;;;;;;;;;;;AAEhD,uDAAuC;AACvC,sDAAsC;AACtC,sDAAsC;AACtC,6CAA6B;AAC7B,+CAA+B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Condition } from '../condition';
|
|
2
2
|
import { JsonApiConditionProps } from '../schemas/json-api';
|
|
3
3
|
import { OmitConditionType } from '../shared';
|
|
4
|
-
export { JsonApiConditionProps, jsonApiConditionSchema, JsonApiConditionType,
|
|
4
|
+
export { JsonApiConditionProps, jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api';
|
|
5
5
|
export declare class JsonApiCondition extends Condition {
|
|
6
6
|
constructor(value: OmitConditionType<JsonApiConditionProps>);
|
|
7
7
|
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.JsonApiCondition = exports.
|
|
3
|
+
exports.JsonApiCondition = exports.JsonApiConditionType = exports.jsonApiConditionSchema = void 0;
|
|
4
4
|
const condition_1 = require("../condition");
|
|
5
5
|
const json_api_1 = require("../schemas/json-api");
|
|
6
6
|
var json_api_2 = require("../schemas/json-api");
|
|
7
7
|
Object.defineProperty(exports, "jsonApiConditionSchema", { enumerable: true, get: function () { return json_api_2.jsonApiConditionSchema; } });
|
|
8
8
|
Object.defineProperty(exports, "JsonApiConditionType", { enumerable: true, get: function () { return json_api_2.JsonApiConditionType; } });
|
|
9
|
-
Object.defineProperty(exports, "jsonPathSchema", { enumerable: true, get: function () { return json_api_2.jsonPathSchema; } });
|
|
10
9
|
class JsonApiCondition extends condition_1.Condition {
|
|
11
10
|
constructor(value) {
|
|
12
11
|
super(json_api_1.jsonApiConditionSchema, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-api.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AACzC,kDAI6B;AAG7B,
|
|
1
|
+
{"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-api.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AACzC,kDAI6B;AAG7B,gDAI6B;AAF3B,kHAAA,sBAAsB,OAAA;AACtB,gHAAA,oBAAoB,OAAA;AAGtB,MAAa,gBAAiB,SAAQ,qBAAS;IAC7C,YAAY,KAA+C;QACzD,KAAK,CAAC,iCAAsB,EAAE;YAC5B,aAAa,EAAE,+BAAoB;YACnC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF;AAPD,4CAOC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Condition } from '../condition';
|
|
2
|
+
import { JsonRpcConditionProps } from '../schemas/json-rpc';
|
|
3
|
+
import { OmitConditionType } from '../shared';
|
|
4
|
+
export { JsonRpcConditionProps, jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc';
|
|
5
|
+
export declare class JsonRpcCondition extends Condition {
|
|
6
|
+
constructor(value: OmitConditionType<JsonRpcConditionProps>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.JsonRpcCondition = exports.JsonRpcConditionType = exports.jsonRpcConditionSchema = void 0;
|
|
4
|
+
const condition_1 = require("../condition");
|
|
5
|
+
const json_rpc_1 = require("../schemas/json-rpc");
|
|
6
|
+
var json_rpc_2 = require("../schemas/json-rpc");
|
|
7
|
+
Object.defineProperty(exports, "jsonRpcConditionSchema", { enumerable: true, get: function () { return json_rpc_2.jsonRpcConditionSchema; } });
|
|
8
|
+
Object.defineProperty(exports, "JsonRpcConditionType", { enumerable: true, get: function () { return json_rpc_2.JsonRpcConditionType; } });
|
|
9
|
+
class JsonRpcCondition extends condition_1.Condition {
|
|
10
|
+
constructor(value) {
|
|
11
|
+
super(json_rpc_1.jsonRpcConditionSchema, {
|
|
12
|
+
conditionType: json_rpc_1.JsonRpcConditionType,
|
|
13
|
+
...value,
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.JsonRpcCondition = JsonRpcCondition;
|
|
18
|
+
//# sourceMappingURL=json-rpc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-rpc.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-rpc.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AACzC,kDAI6B;AAG7B,gDAI6B;AAF3B,kHAAA,sBAAsB,OAAA;AACtB,gHAAA,oBAAoB,OAAA;AAGtB,MAAa,gBAAiB,SAAQ,qBAAS;IAC7C,YAAY,KAA+C;QACzD,KAAK,CAAC,iCAAsB,EAAE;YAC5B,aAAa,EAAE,+BAAoB;YACnC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF;AAPD,4CAOC"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ConditionFactory = void 0;
|
|
4
4
|
const contract_1 = require("./base/contract");
|
|
5
5
|
const json_api_1 = require("./base/json-api");
|
|
6
|
+
const json_rpc_1 = require("./base/json-rpc");
|
|
6
7
|
const rpc_1 = require("./base/rpc");
|
|
7
8
|
const time_1 = require("./base/time");
|
|
8
9
|
const compound_condition_1 = require("./compound-condition");
|
|
@@ -21,6 +22,8 @@ class ConditionFactory {
|
|
|
21
22
|
return new contract_1.ContractCondition(props);
|
|
22
23
|
case json_api_1.JsonApiConditionType:
|
|
23
24
|
return new json_api_1.JsonApiCondition(props);
|
|
25
|
+
case json_rpc_1.JsonRpcConditionType:
|
|
26
|
+
return new json_rpc_1.JsonRpcCondition(props);
|
|
24
27
|
// Logical Conditions
|
|
25
28
|
case compound_condition_1.CompoundConditionType:
|
|
26
29
|
return new compound_condition_1.CompoundCondition(props);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"condition-factory.js","sourceRoot":"","sources":["../../../src/conditions/condition-factory.ts"],"names":[],"mappings":";;;AAAA,8CAIyB;AACzB,8CAIyB;AACzB,oCAA+E;AAC/E,sCAIqB;AACrB,6DAI8B;AAE9B,qEAIkC;AAClC,6CAIsB;AAEtB,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,2BAA2B,IAAI,EAAE,CAAC;AAEpC,MAAa,gBAAgB;IACpB,MAAM,CAAC,kBAAkB,CAAC,KAAqB;QACpD,QAAQ,KAAK,CAAC,aAAa,EAAE,CAAC;YAC5B,kBAAkB;YAClB,KAAK,sBAAgB;gBACnB,OAAO,IAAI,kBAAY,CAAC,KAA0B,CAAC,CAAC;YACtD,KAAK,wBAAiB;gBACpB,OAAO,IAAI,oBAAa,CAAC,KAA2B,CAAC,CAAC;YACxD,KAAK,gCAAqB;gBACxB,OAAO,IAAI,4BAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE,KAAK,+BAAoB;gBACvB,OAAO,IAAI,2BAAgB,CAAC,KAA8B,CAAC,CAAC;YAC9D,qBAAqB;YACrB,KAAK,0CAAqB;gBACxB,OAAO,IAAI,sCAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE,KAAK,oCAAuB;gBAC1B,OAAO,IAAI,gCAAmB,CAAC,KAAiC,CAAC,CAAC;YACpE,KAAK,gDAAuB;gBAC1B,OAAO,IAAI,4CAAmB,CAAC,KAAiC,CAAC,CAAC;YACpE;gBACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"condition-factory.js","sourceRoot":"","sources":["../../../src/conditions/condition-factory.ts"],"names":[],"mappings":";;;AAAA,8CAIyB;AACzB,8CAIyB;AACzB,8CAIyB;AACzB,oCAA+E;AAC/E,sCAIqB;AACrB,6DAI8B;AAE9B,qEAIkC;AAClC,6CAIsB;AAEtB,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,2BAA2B,IAAI,EAAE,CAAC;AAEpC,MAAa,gBAAgB;IACpB,MAAM,CAAC,kBAAkB,CAAC,KAAqB;QACpD,QAAQ,KAAK,CAAC,aAAa,EAAE,CAAC;YAC5B,kBAAkB;YAClB,KAAK,sBAAgB;gBACnB,OAAO,IAAI,kBAAY,CAAC,KAA0B,CAAC,CAAC;YACtD,KAAK,wBAAiB;gBACpB,OAAO,IAAI,oBAAa,CAAC,KAA2B,CAAC,CAAC;YACxD,KAAK,gCAAqB;gBACxB,OAAO,IAAI,4BAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE,KAAK,+BAAoB;gBACvB,OAAO,IAAI,2BAAgB,CAAC,KAA8B,CAAC,CAAC;YAC9D,KAAK,+BAAoB;gBACvB,OAAO,IAAI,2BAAgB,CAAC,KAA8B,CAAC,CAAC;YAC9D,qBAAqB;YACrB,KAAK,0CAAqB;gBACxB,OAAO,IAAI,sCAAiB,CAAC,KAA+B,CAAC,CAAC;YAChE,KAAK,oCAAuB;gBAC1B,OAAO,IAAI,gCAAmB,CAAC,KAAiC,CAAC,CAAC;YACpE,KAAK,gDAAuB;gBAC1B,OAAO,IAAI,4CAAmB,CAAC,KAAiC,CAAC,CAAC;YACpE;gBACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF;AAzBD,4CAyBC"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { ChainId } from '@nucypher/shared';
|
|
2
1
|
export declare const CONTEXT_PARAM_REGEXP: RegExp;
|
|
3
2
|
export declare const CONTEXT_PARAM_FULL_MATCH_REGEXP: RegExp;
|
|
4
3
|
export declare const CONTEXT_PARAM_PREFIX = ":";
|
|
5
|
-
export declare const SUPPORTED_CHAIN_IDS: ChainId[];
|
|
6
4
|
export declare const USER_ADDRESS_PARAMS: string[];
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.USER_ADDRESS_PARAMS = exports.
|
|
4
|
-
const shared_1 = require("@nucypher/shared");
|
|
3
|
+
exports.USER_ADDRESS_PARAMS = exports.CONTEXT_PARAM_PREFIX = exports.CONTEXT_PARAM_FULL_MATCH_REGEXP = exports.CONTEXT_PARAM_REGEXP = void 0;
|
|
5
4
|
const taco_auth_1 = require("@nucypher/taco-auth");
|
|
6
5
|
// Only allow alphanumeric characters and underscores
|
|
7
6
|
const contextParamRegexString = ':[a-zA-Z_][a-zA-Z0-9_]*';
|
|
@@ -9,12 +8,6 @@ exports.CONTEXT_PARAM_REGEXP = new RegExp(contextParamRegexString);
|
|
|
9
8
|
// Entire string is context param
|
|
10
9
|
exports.CONTEXT_PARAM_FULL_MATCH_REGEXP = new RegExp(`^${contextParamRegexString}$`);
|
|
11
10
|
exports.CONTEXT_PARAM_PREFIX = ':';
|
|
12
|
-
exports.SUPPORTED_CHAIN_IDS = [
|
|
13
|
-
shared_1.ChainId.POLYGON,
|
|
14
|
-
shared_1.ChainId.AMOY,
|
|
15
|
-
shared_1.ChainId.SEPOLIA,
|
|
16
|
-
shared_1.ChainId.ETHEREUM_MAINNET,
|
|
17
|
-
];
|
|
18
11
|
exports.USER_ADDRESS_PARAMS = [
|
|
19
12
|
taco_auth_1.USER_ADDRESS_PARAM_EXTERNAL_EIP4361,
|
|
20
13
|
// Ordering matters, this should always be last
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/conditions/const.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/conditions/const.ts"],"names":[],"mappings":";;;AAAA,mDAG6B;AAE7B,qDAAqD;AACrD,MAAM,uBAAuB,GAAG,yBAAyB,CAAC;AAE7C,QAAA,oBAAoB,GAAG,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAExE,iCAAiC;AACpB,QAAA,+BAA+B,GAAG,IAAI,MAAM,CACvD,IAAI,uBAAuB,GAAG,CAC/B,CAAC;AAEW,QAAA,oBAAoB,GAAG,GAAG,CAAC;AAE3B,QAAA,mBAAmB,GAAG;IACjC,+CAAmC;IACnC,+CAA+C;IAC/C,sCAA0B;CAC3B,CAAC"}
|
|
@@ -17,6 +17,7 @@ export declare class ConditionContext {
|
|
|
17
17
|
private fillAuthContextParameters;
|
|
18
18
|
private validateCustomContextParameter;
|
|
19
19
|
private static isContextParameter;
|
|
20
|
+
private static findContextParameter;
|
|
20
21
|
private static findContextParameters;
|
|
21
22
|
addCustomContextParameterValues(customContextParameters: Record<string, CustomContextParam>): void;
|
|
22
23
|
addAuthProvider(contextParam: string, authProvider: AuthProvider): void;
|
|
@@ -4,7 +4,6 @@ exports.ConditionContext = exports.RESERVED_CONTEXT_PARAMS = void 0;
|
|
|
4
4
|
const shared_1 = require("@nucypher/shared");
|
|
5
5
|
const taco_auth_1 = require("@nucypher/taco-auth");
|
|
6
6
|
const types_1 = require("../../types");
|
|
7
|
-
const compound_condition_1 = require("../compound-condition");
|
|
8
7
|
const condition_expr_1 = require("../condition-expr");
|
|
9
8
|
const const_1 = require("../const");
|
|
10
9
|
const ERR_RESERVED_PARAM = (key) => `Cannot use reserved parameter name ${key} as custom parameter`;
|
|
@@ -89,42 +88,59 @@ class ConditionContext {
|
|
|
89
88
|
static isContextParameter(param) {
|
|
90
89
|
return !!String(param).match(const_1.CONTEXT_PARAM_FULL_MATCH_REGEXP);
|
|
91
90
|
}
|
|
92
|
-
static
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
if (
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
requestedParameters.add(value);
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
else if (ConditionContext.isContextParameter(rvt)) {
|
|
107
|
-
requestedParameters.add(rvt);
|
|
91
|
+
static findContextParameter(value) {
|
|
92
|
+
const includedContextVars = new Set();
|
|
93
|
+
// value not set
|
|
94
|
+
if (!value) {
|
|
95
|
+
return includedContextVars;
|
|
96
|
+
}
|
|
97
|
+
if (typeof value === 'string') {
|
|
98
|
+
if (this.isContextParameter(value)) {
|
|
99
|
+
// entire string is context parameter
|
|
100
|
+
includedContextVars.add(String(value));
|
|
108
101
|
}
|
|
109
102
|
else {
|
|
110
|
-
//
|
|
103
|
+
// context var could be substring; find all matches
|
|
104
|
+
const contextVarMatches = value.match(
|
|
105
|
+
// RegExp with 'g' is stateful, so new instance needed every time
|
|
106
|
+
new RegExp(const_1.CONTEXT_PARAM_REGEXP.source, 'g'));
|
|
107
|
+
if (contextVarMatches) {
|
|
108
|
+
for (const match of contextVarMatches) {
|
|
109
|
+
includedContextVars.add(match);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
111
112
|
}
|
|
112
113
|
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
114
|
+
else if (Array.isArray(value)) {
|
|
115
|
+
// array
|
|
116
|
+
value.forEach((subValue) => {
|
|
117
|
+
const contextVarsForValue = this.findContextParameter(subValue);
|
|
118
|
+
contextVarsForValue.forEach((contextVar) => {
|
|
119
|
+
includedContextVars.add(contextVar);
|
|
120
|
+
});
|
|
121
|
+
});
|
|
118
122
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
for (const
|
|
122
|
-
const
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
}
|
|
123
|
+
else if (typeof value === 'object') {
|
|
124
|
+
// dictionary (Record<string, T> - complex object eg. Condition, ConditionVariable, ReturnValueTest etc.)
|
|
125
|
+
for (const [, entry] of Object.entries(value)) {
|
|
126
|
+
const contextVarsForValue = this.findContextParameter(entry);
|
|
127
|
+
contextVarsForValue.forEach((contextVar) => {
|
|
128
|
+
includedContextVars.add(contextVar);
|
|
129
|
+
});
|
|
126
130
|
}
|
|
127
131
|
}
|
|
132
|
+
return includedContextVars;
|
|
133
|
+
}
|
|
134
|
+
static findContextParameters(condition) {
|
|
135
|
+
// find all the context variables we need
|
|
136
|
+
const requestedParameters = new Set();
|
|
137
|
+
// iterate through all properties in ConditionProps
|
|
138
|
+
const properties = Object.keys(condition);
|
|
139
|
+
properties.forEach((prop) => {
|
|
140
|
+
this.findContextParameter(condition[prop]).forEach((contextVar) => {
|
|
141
|
+
requestedParameters.add(contextVar);
|
|
142
|
+
});
|
|
143
|
+
});
|
|
128
144
|
return requestedParameters;
|
|
129
145
|
}
|
|
130
146
|
addCustomContextParameterValues(customContextParameters) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/conditions/context/context.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAC1C,mDAO6B;AAE7B,uCAA0D;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/conditions/context/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,3 +10,5 @@ export declare const baseConditionSchema: z.ZodObject<{
|
|
|
10
10
|
}>;
|
|
11
11
|
declare function createUnionSchema<T extends readonly Primitive[]>(values: T): z.ZodNever | z.ZodLiteral<Primitive> | z.ZodUnion<[z.ZodLiteral<Primitive>, z.ZodLiteral<Primitive>, ...z.ZodLiteral<Primitive>[]]>;
|
|
12
12
|
export default createUnionSchema;
|
|
13
|
+
export declare const jsonPathSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
14
|
+
export declare const httpsURLSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.baseConditionSchema = exports.UserAddressSchema = exports.plainStringSchema = void 0;
|
|
3
|
+
exports.httpsURLSchema = exports.jsonPathSchema = exports.baseConditionSchema = exports.UserAddressSchema = exports.plainStringSchema = void 0;
|
|
4
|
+
const jsonpath_1 = require("@astronautlabs/jsonpath");
|
|
4
5
|
const taco_auth_1 = require("@nucypher/taco-auth");
|
|
5
6
|
const zod_1 = require("zod");
|
|
6
7
|
const const_1 = require("../const");
|
|
@@ -33,4 +34,33 @@ function createUnionSchema(values) {
|
|
|
33
34
|
return createUnion(values);
|
|
34
35
|
}
|
|
35
36
|
exports.default = createUnionSchema;
|
|
37
|
+
const validateJSONPath = (jsonPath) => {
|
|
38
|
+
// account for embedded context variables
|
|
39
|
+
if (const_1.CONTEXT_PARAM_REGEXP.test(jsonPath)) {
|
|
40
|
+
// skip validation
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
try {
|
|
44
|
+
jsonpath_1.JSONPath.parse(jsonPath);
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
exports.jsonPathSchema = zod_1.z
|
|
52
|
+
.string()
|
|
53
|
+
.refine((val) => validateJSONPath(val), {
|
|
54
|
+
message: 'Invalid JSONPath expression',
|
|
55
|
+
});
|
|
56
|
+
const validateHttpsURL = (url) => {
|
|
57
|
+
return URL.canParse(url) && url.startsWith('https://');
|
|
58
|
+
};
|
|
59
|
+
// Use our own URL refinement check due to https://github.com/colinhacks/zod/issues/2236
|
|
60
|
+
exports.httpsURLSchema = zod_1.z
|
|
61
|
+
.string()
|
|
62
|
+
.url()
|
|
63
|
+
.refine((url) => validateHttpsURL(url), {
|
|
64
|
+
message: 'Invalid URL',
|
|
65
|
+
});
|
|
36
66
|
//# sourceMappingURL=common.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/common.ts"],"names":[],"mappings":";;;AAAA,mDAG6B;AAC7B,6BAA+C;AAE/C,
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/common.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AACnD,mDAG6B;AAC7B,6BAA+C;AAE/C,oCAAsE;AAEtE,kEAAkE;AAClE,mDAAmD;AACtC,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAChD,CAAC,GAAG,EAAE,EAAE;IACN,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,4BAAoB,CAAC,CAAC;AAC/C,CAAC,EACD;IACE,OAAO,EAAE,+DAA+D,4BAAoB,GAAG;CAChG,CACF,CAAC;AAEW,QAAA,iBAAiB,GAAG,OAAC,CAAC,IAAI,CAAC;IACtC,sCAA0B;IAC1B,+CAAmC;CACpC,CAAC,CAAC;AAEU,QAAA,mBAAmB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE;CAC1B,CAAC,CAAC;AAEH,+EAA+E;AAC/E,MAAM,WAAW,GAAG,CAGlB,MAAS,EACT,EAAE;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAIzD,CAAC;IACF,OAAO,OAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,SAAS,iBAAiB,CAAiC,MAAS;IAClE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,OAAC,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,WAAW,CAChB,MAAqE,CACtE,CAAC;AACJ,CAAC;AAED,kBAAe,iBAAiB,CAAC;AAEjC,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAW,EAAE;IACrD,yCAAyC;IACzC,IAAI,4BAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,kBAAkB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,mBAAQ,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;AAEW,QAAA,cAAc,GAAG,OAAC;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,gBAAgB,GAAG,CAAC,GAAW,EAAW,EAAE;IAChD,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,wFAAwF;AAC3E,QAAA,cAAc,GAAG,OAAC;KAC5B,MAAM,EAAE;KACR,GAAG,EAAE;KACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;IACtC,OAAO,EAAE,aAAa;CACvB,CAAC,CAAC"}
|
|
@@ -154,7 +154,7 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<{
|
|
|
154
154
|
index?: number | undefined;
|
|
155
155
|
value?: any;
|
|
156
156
|
}>;
|
|
157
|
-
chain: z.
|
|
157
|
+
chain: z.ZodNumber;
|
|
158
158
|
conditionType: z.ZodDefault<z.ZodLiteral<"contract">>;
|
|
159
159
|
contractAddress: z.ZodEffects<z.ZodString, string, string>;
|
|
160
160
|
standardContractType: z.ZodOptional<z.ZodEnum<["ERC20", "ERC721"]>>;
|
|
@@ -301,15 +301,15 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<{
|
|
|
301
301
|
parameters: z.ZodArray<z.ZodType<any, z.ZodTypeDef, any>, "many">;
|
|
302
302
|
}, "strip", z.ZodTypeAny, {
|
|
303
303
|
conditionType: "contract";
|
|
304
|
-
|
|
304
|
+
method: string;
|
|
305
305
|
returnValueTest: {
|
|
306
306
|
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
307
307
|
index?: number | undefined;
|
|
308
308
|
value?: any;
|
|
309
309
|
};
|
|
310
|
-
|
|
310
|
+
parameters: any[];
|
|
311
|
+
chain: number;
|
|
311
312
|
contractAddress: string;
|
|
312
|
-
chain?: z.Primitive;
|
|
313
313
|
standardContractType?: "ERC20" | "ERC721" | undefined;
|
|
314
314
|
functionAbi?: {
|
|
315
315
|
type: "function";
|
|
@@ -331,15 +331,15 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<{
|
|
|
331
331
|
stateMutability: "view" | "pure";
|
|
332
332
|
} | undefined;
|
|
333
333
|
}, {
|
|
334
|
-
|
|
334
|
+
method: string;
|
|
335
335
|
returnValueTest: {
|
|
336
336
|
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
337
337
|
index?: number | undefined;
|
|
338
338
|
value?: any;
|
|
339
339
|
};
|
|
340
|
-
|
|
340
|
+
parameters: any[];
|
|
341
|
+
chain: number;
|
|
341
342
|
contractAddress: string;
|
|
342
|
-
chain?: z.Primitive;
|
|
343
343
|
conditionType?: "contract" | undefined;
|
|
344
344
|
standardContractType?: "ERC20" | "ERC721" | undefined;
|
|
345
345
|
functionAbi?: {
|
|
@@ -363,15 +363,15 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<{
|
|
|
363
363
|
} | undefined;
|
|
364
364
|
}>, {
|
|
365
365
|
conditionType: "contract";
|
|
366
|
-
|
|
366
|
+
method: string;
|
|
367
367
|
returnValueTest: {
|
|
368
368
|
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
369
369
|
index?: number | undefined;
|
|
370
370
|
value?: any;
|
|
371
371
|
};
|
|
372
|
-
|
|
372
|
+
parameters: any[];
|
|
373
|
+
chain: number;
|
|
373
374
|
contractAddress: string;
|
|
374
|
-
chain?: z.Primitive;
|
|
375
375
|
standardContractType?: "ERC20" | "ERC721" | undefined;
|
|
376
376
|
functionAbi?: {
|
|
377
377
|
type: "function";
|
|
@@ -393,15 +393,15 @@ export declare const contractConditionSchema: z.ZodEffects<z.ZodObject<{
|
|
|
393
393
|
stateMutability: "view" | "pure";
|
|
394
394
|
} | undefined;
|
|
395
395
|
}, {
|
|
396
|
-
|
|
396
|
+
method: string;
|
|
397
397
|
returnValueTest: {
|
|
398
398
|
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
399
399
|
index?: number | undefined;
|
|
400
400
|
value?: any;
|
|
401
401
|
};
|
|
402
|
-
|
|
402
|
+
parameters: any[];
|
|
403
|
+
chain: number;
|
|
403
404
|
contractAddress: string;
|
|
404
|
-
chain?: z.Primitive;
|
|
405
405
|
conditionType?: "contract" | undefined;
|
|
406
406
|
standardContractType?: "ERC20" | "ERC721" | undefined;
|
|
407
407
|
functionAbi?: {
|
|
@@ -1,9 +1,8 @@
|
|
|
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
3
|
export declare const jsonApiConditionSchema: z.ZodObject<{
|
|
5
4
|
conditionType: z.ZodDefault<z.ZodLiteral<"json-api">>;
|
|
6
|
-
endpoint: z.ZodString
|
|
5
|
+
endpoint: z.ZodEffects<z.ZodString, string, string>;
|
|
7
6
|
parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
8
7
|
query: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
9
8
|
authorizationToken: z.ZodOptional<z.ZodString>;
|
|
@@ -1,36 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.jsonApiConditionSchema = exports.
|
|
4
|
-
const jsonpath_1 = require("@astronautlabs/jsonpath");
|
|
3
|
+
exports.jsonApiConditionSchema = exports.JsonApiConditionType = void 0;
|
|
5
4
|
const zod_1 = require("zod");
|
|
6
|
-
const
|
|
5
|
+
const common_1 = require("./common");
|
|
7
6
|
const context_1 = require("./context");
|
|
8
7
|
const return_value_test_1 = require("./return-value-test");
|
|
9
8
|
exports.JsonApiConditionType = 'json-api';
|
|
10
|
-
|
|
11
|
-
// account for embedded context variables
|
|
12
|
-
if (const_1.CONTEXT_PARAM_REGEXP.test(jsonPath)) {
|
|
13
|
-
// skip validation
|
|
14
|
-
return true;
|
|
15
|
-
}
|
|
16
|
-
try {
|
|
17
|
-
jsonpath_1.JSONPath.parse(jsonPath);
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
catch (error) {
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
exports.jsonPathSchema = zod_1.z
|
|
25
|
-
.string()
|
|
26
|
-
.refine((val) => validateJSONPath(val), {
|
|
27
|
-
message: 'Invalid JSONPath expression',
|
|
28
|
-
});
|
|
29
|
-
exports.jsonApiConditionSchema = zod_1.z.object({
|
|
9
|
+
exports.jsonApiConditionSchema = common_1.baseConditionSchema.extend({
|
|
30
10
|
conditionType: zod_1.z.literal(exports.JsonApiConditionType).default(exports.JsonApiConditionType),
|
|
31
|
-
endpoint:
|
|
11
|
+
endpoint: common_1.httpsURLSchema,
|
|
32
12
|
parameters: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
|
|
33
|
-
query:
|
|
13
|
+
query: common_1.jsonPathSchema.optional(),
|
|
34
14
|
authorizationToken: context_1.contextParamSchema.optional(),
|
|
35
15
|
returnValueTest: return_value_test_1.returnValueTestSchema, // Update to allow multiple return values after expanding supported methods
|
|
36
16
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/json-api.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/schemas/json-api.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,qCAA+E;AAC/E,uCAA+C;AAC/C,2DAA4D;AAE/C,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAElC,QAAA,sBAAsB,GAAG,4BAAmB,CAAC,MAAM,CAAC;IAC/D,aAAa,EAAE,OAAC,CAAC,OAAO,CAAC,4BAAoB,CAAC,CAAC,OAAO,CAAC,4BAAoB,CAAC;IAC5E,QAAQ,EAAE,uBAAc;IACxB,UAAU,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACxD,KAAK,EAAE,uBAAc,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,4BAAkB,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,yCAAqB,EAAE,2EAA2E;CACpH,CAAC,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const JsonRpcConditionType = "json-rpc";
|
|
3
|
+
export declare const jsonRpcConditionSchema: z.ZodObject<{
|
|
4
|
+
conditionType: z.ZodDefault<z.ZodLiteral<"json-rpc">>;
|
|
5
|
+
endpoint: z.ZodEffects<z.ZodString, string, string>;
|
|
6
|
+
method: z.ZodString;
|
|
7
|
+
params: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodUnknown, "many">, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
|
|
8
|
+
query: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
9
|
+
authorizationToken: z.ZodOptional<z.ZodString>;
|
|
10
|
+
returnValueTest: z.ZodObject<{
|
|
11
|
+
index: z.ZodOptional<z.ZodNumber>;
|
|
12
|
+
comparator: z.ZodEnum<["==", ">", "<", ">=", "<=", "!="]>;
|
|
13
|
+
value: z.ZodType<any, z.ZodTypeDef, any>;
|
|
14
|
+
}, "strip", z.ZodTypeAny, {
|
|
15
|
+
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
16
|
+
index?: number | undefined;
|
|
17
|
+
value?: any;
|
|
18
|
+
}, {
|
|
19
|
+
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
20
|
+
index?: number | undefined;
|
|
21
|
+
value?: any;
|
|
22
|
+
}>;
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
conditionType: "json-rpc";
|
|
25
|
+
endpoint: string;
|
|
26
|
+
method: string;
|
|
27
|
+
returnValueTest: {
|
|
28
|
+
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
29
|
+
index?: number | undefined;
|
|
30
|
+
value?: any;
|
|
31
|
+
};
|
|
32
|
+
params?: unknown[] | Record<string, unknown> | undefined;
|
|
33
|
+
query?: string | undefined;
|
|
34
|
+
authorizationToken?: string | undefined;
|
|
35
|
+
}, {
|
|
36
|
+
endpoint: string;
|
|
37
|
+
method: string;
|
|
38
|
+
returnValueTest: {
|
|
39
|
+
comparator: "==" | ">" | "<" | ">=" | "<=" | "!=";
|
|
40
|
+
index?: number | undefined;
|
|
41
|
+
value?: any;
|
|
42
|
+
};
|
|
43
|
+
conditionType?: "json-rpc" | undefined;
|
|
44
|
+
params?: unknown[] | Record<string, unknown> | undefined;
|
|
45
|
+
query?: string | undefined;
|
|
46
|
+
authorizationToken?: string | undefined;
|
|
47
|
+
}>;
|
|
48
|
+
export type JsonRpcConditionProps = z.infer<typeof jsonRpcConditionSchema>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.jsonRpcConditionSchema = exports.JsonRpcConditionType = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const common_1 = require("./common");
|
|
6
|
+
const context_1 = require("./context");
|
|
7
|
+
const return_value_test_1 = require("./return-value-test");
|
|
8
|
+
exports.JsonRpcConditionType = 'json-rpc';
|
|
9
|
+
exports.jsonRpcConditionSchema = common_1.baseConditionSchema.extend({
|
|
10
|
+
conditionType: zod_1.z.literal(exports.JsonRpcConditionType).default(exports.JsonRpcConditionType),
|
|
11
|
+
endpoint: common_1.httpsURLSchema,
|
|
12
|
+
method: zod_1.z.string(),
|
|
13
|
+
// list or dictionary
|
|
14
|
+
params: zod_1.z
|
|
15
|
+
.union([zod_1.z.array(zod_1.z.unknown()), zod_1.z.record(zod_1.z.string(), zod_1.z.unknown())])
|
|
16
|
+
.optional(),
|
|
17
|
+
query: common_1.jsonPathSchema.optional(),
|
|
18
|
+
authorizationToken: context_1.contextParamSchema.optional(),
|
|
19
|
+
returnValueTest: return_value_test_1.returnValueTestSchema,
|
|
20
|
+
});
|
|
21
|
+
//# 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,6BAAwB;AAExB,qCAA+E;AAC/E,uCAA+C;AAC/C,2DAA4D;AAE/C,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAElC,QAAA,sBAAsB,GAAG,4BAAmB,CAAC,MAAM,CAAC;IAC/D,aAAa,EAAE,OAAC,CAAC,OAAO,CAAC,4BAAoB,CAAC,CAAC,OAAO,CAAC,4BAAoB,CAAC;IAC5E,QAAQ,EAAE,uBAAc;IACxB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,qBAAqB;IACrB,MAAM,EAAE,OAAC;SACN,KAAK,CAAC,CAAC,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SAChE,QAAQ,EAAE;IACb,KAAK,EAAE,uBAAc,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,4BAAkB,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,yCAAqB;CACvC,CAAC,CAAC"}
|