fig-tree-evaluator 2.6.0 → 2.8.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.
- package/README.md +196 -12
- package/build/FigTreeEvaluator.d.ts +18 -0
- package/build/FigTreeEvaluator.js +26 -3
- package/build/evaluate.js +18 -10
- package/build/helpers.d.ts +29 -4
- package/build/helpers.js +16 -4
- package/build/operators/AND/data.d.ts +5 -0
- package/build/operators/AND/data.js +23 -0
- package/build/operators/AND/index.d.ts +1 -0
- package/build/operators/AND/index.js +5 -0
- package/build/operators/{logicalAnd.d.ts → AND/operator.d.ts} +2 -3
- package/build/operators/AND/operator.js +54 -0
- package/build/operators/BUILD_OBJECT/data.d.ts +5 -0
- package/build/operators/BUILD_OBJECT/data.js +23 -0
- package/build/operators/BUILD_OBJECT/index.d.ts +1 -0
- package/build/operators/BUILD_OBJECT/index.js +17 -0
- package/build/operators/{buildObject.d.ts → BUILD_OBJECT/operator.d.ts} +2 -3
- package/build/operators/{buildObject.js → BUILD_OBJECT/operator.js} +29 -12
- package/build/operators/CONDITIONAL/data.d.ts +5 -0
- package/build/operators/CONDITIONAL/data.js +37 -0
- package/build/operators/CONDITIONAL/index.d.ts +1 -0
- package/build/operators/CONDITIONAL/index.js +17 -0
- package/build/operators/{conditional.d.ts → CONDITIONAL/operator.d.ts} +2 -3
- package/build/operators/{conditional.js → CONDITIONAL/operator.js} +28 -7
- package/build/operators/COUNT/data.d.ts +5 -0
- package/build/operators/COUNT/data.js +23 -0
- package/build/operators/COUNT/index.d.ts +1 -0
- package/build/operators/COUNT/index.js +17 -0
- package/build/operators/COUNT/operator.d.ts +2 -0
- package/build/operators/COUNT/operator.js +50 -0
- package/build/operators/CUSTOM_FUNCTIONS/data.d.ts +5 -0
- package/build/operators/CUSTOM_FUNCTIONS/data.js +37 -0
- package/build/operators/CUSTOM_FUNCTIONS/index.d.ts +1 -0
- package/build/operators/CUSTOM_FUNCTIONS/index.js +17 -0
- package/build/operators/{customFunctions.d.ts → CUSTOM_FUNCTIONS/operator.d.ts} +2 -3
- package/build/operators/{customFunctions.js → CUSTOM_FUNCTIONS/operator.js} +29 -22
- package/build/operators/DIVIDE/data.d.ts +5 -0
- package/build/operators/DIVIDE/data.js +44 -0
- package/build/operators/DIVIDE/index.d.ts +1 -0
- package/build/operators/DIVIDE/index.js +17 -0
- package/build/operators/{divide.d.ts → DIVIDE/operator.d.ts} +2 -2
- package/build/operators/DIVIDE/operator.js +62 -0
- package/build/operators/EQUAL/data.d.ts +5 -0
- package/build/operators/EQUAL/data.js +30 -0
- package/build/operators/EQUAL/index.d.ts +1 -0
- package/build/operators/EQUAL/index.js +17 -0
- package/build/operators/EQUAL/operator.d.ts +2 -0
- package/build/operators/{equal.js → EQUAL/operator.js} +31 -10
- package/build/operators/GET/data.d.ts +5 -0
- package/build/operators/GET/data.js +51 -0
- package/build/operators/GET/index.d.ts +1 -0
- package/build/operators/GET/index.js +5 -0
- package/build/operators/{getRequest.d.ts → GET/operator.d.ts} +2 -3
- package/build/operators/{getRequest.js → GET/operator.js} +51 -13
- package/build/operators/GRAPHQL/data.d.ts +5 -0
- package/build/operators/GRAPHQL/data.js +58 -0
- package/build/operators/GRAPHQL/index.d.ts +1 -0
- package/build/operators/GRAPHQL/index.js +17 -0
- package/build/operators/{graphQL.d.ts → GRAPHQL/operator.d.ts} +2 -3
- package/build/operators/{graphQL.js → GRAPHQL/operator.js} +29 -8
- package/build/operators/GREATER_THAN/data.d.ts +5 -0
- package/build/operators/GREATER_THAN/data.js +30 -0
- package/build/operators/GREATER_THAN/index.d.ts +1 -0
- package/build/operators/GREATER_THAN/index.js +17 -0
- package/build/operators/{greaterThan.d.ts → GREATER_THAN/operator.d.ts} +2 -2
- package/build/operators/GREATER_THAN/operator.js +55 -0
- package/build/operators/LESS_THAN/data.d.ts +5 -0
- package/build/operators/LESS_THAN/data.js +30 -0
- package/build/operators/LESS_THAN/index.d.ts +1 -0
- package/build/operators/LESS_THAN/index.js +17 -0
- package/build/operators/{lessThan.d.ts → LESS_THAN/operator.d.ts} +1 -1
- package/build/operators/LESS_THAN/operator.js +55 -0
- package/build/operators/MATCH/data.d.ts +5 -0
- package/build/operators/MATCH/data.js +30 -0
- package/build/operators/MATCH/index.d.ts +1 -0
- package/build/operators/MATCH/index.js +17 -0
- package/build/operators/{match.d.ts → MATCH/operator.d.ts} +2 -3
- package/build/operators/{match.js → MATCH/operator.js} +31 -18
- package/build/operators/MULTIPLY/data.d.ts +5 -0
- package/build/operators/MULTIPLY/data.js +23 -0
- package/build/operators/MULTIPLY/index.d.ts +1 -0
- package/build/operators/MULTIPLY/index.js +17 -0
- package/build/operators/{multiply.d.ts → MULTIPLY/operator.d.ts} +1 -1
- package/build/operators/MULTIPLY/operator.js +50 -0
- package/build/operators/NOT_EQUAL/data.d.ts +5 -0
- package/build/operators/NOT_EQUAL/data.js +30 -0
- package/build/operators/NOT_EQUAL/index.d.ts +1 -0
- package/build/operators/NOT_EQUAL/index.js +17 -0
- package/build/operators/{notEqual.d.ts → NOT_EQUAL/operator.d.ts} +1 -1
- package/build/operators/{notEqual.js → NOT_EQUAL/operator.js} +31 -10
- package/build/operators/OBJECT_PROPERTIES/data.d.ts +5 -0
- package/build/operators/OBJECT_PROPERTIES/data.js +38 -0
- package/build/operators/OBJECT_PROPERTIES/index.d.ts +1 -0
- package/build/operators/OBJECT_PROPERTIES/index.js +17 -0
- package/build/operators/{objectProperties.d.ts → OBJECT_PROPERTIES/operator.d.ts} +2 -3
- package/build/operators/{objectProperties.js → OBJECT_PROPERTIES/operator.js} +33 -24
- package/build/operators/OR/data.d.ts +5 -0
- package/build/operators/OR/data.js +23 -0
- package/build/operators/OR/index.d.ts +1 -0
- package/build/operators/OR/index.js +17 -0
- package/build/operators/OR/operator.d.ts +2 -0
- package/build/operators/OR/operator.js +50 -0
- package/build/operators/PASSTHRU/data.d.ts +5 -0
- package/build/operators/PASSTHRU/data.js +23 -0
- package/build/operators/PASSTHRU/index.d.ts +1 -0
- package/build/operators/PASSTHRU/index.js +17 -0
- package/build/operators/{passThru.d.ts → PASSTHRU/operator.d.ts} +3 -4
- package/build/operators/PASSTHRU/operator.js +52 -0
- package/build/operators/PG_SQL/data.d.ts +5 -0
- package/build/operators/PG_SQL/data.js +37 -0
- package/build/operators/PG_SQL/index.d.ts +1 -0
- package/build/operators/PG_SQL/index.js +17 -0
- package/build/operators/{pgSQL.d.ts → PG_SQL/operator.d.ts} +2 -2
- package/build/operators/{pgSQL.js → PG_SQL/operator.js} +29 -8
- package/build/operators/PLUS/data.d.ts +5 -0
- package/build/operators/PLUS/data.js +30 -0
- package/build/operators/PLUS/index.d.ts +1 -0
- package/build/operators/PLUS/index.js +17 -0
- package/build/operators/{plus.d.ts → PLUS/operator.d.ts} +3 -4
- package/build/operators/{plus.js → PLUS/operator.js} +34 -10
- package/build/operators/POST/data.d.ts +5 -0
- package/build/operators/POST/data.js +51 -0
- package/build/operators/POST/index.d.ts +1 -0
- package/build/operators/POST/index.js +17 -0
- package/build/operators/POST/operator.d.ts +2 -0
- package/build/operators/{postRequest.js → POST/operator.js} +31 -10
- package/build/operators/REGEX/data.d.ts +5 -0
- package/build/operators/REGEX/data.js +30 -0
- package/build/operators/REGEX/index.d.ts +1 -0
- package/build/operators/REGEX/index.js +17 -0
- package/build/operators/{regex.d.ts → REGEX/operator.d.ts} +2 -3
- package/build/operators/{regex.js → REGEX/operator.js} +30 -16
- package/build/operators/SPLIT/data.d.ts +5 -0
- package/build/operators/SPLIT/data.js +44 -0
- package/build/operators/SPLIT/index.d.ts +1 -0
- package/build/operators/SPLIT/index.js +17 -0
- package/build/operators/{split.d.ts → SPLIT/operator.d.ts} +2 -3
- package/build/operators/{split.js → SPLIT/operator.js} +34 -15
- package/build/operators/STRING_SUBSTITUTION/data.d.ts +5 -0
- package/build/operators/STRING_SUBSTITUTION/data.js +30 -0
- package/build/operators/STRING_SUBSTITUTION/index.d.ts +1 -0
- package/build/operators/STRING_SUBSTITUTION/index.js +17 -0
- package/build/operators/{stringSubstitution.d.ts → STRING_SUBSTITUTION/operator.d.ts} +2 -3
- package/build/operators/{stringSubstitution.js → STRING_SUBSTITUTION/operator.js} +29 -9
- package/build/operators/SUBTRACT/data.d.ts +5 -0
- package/build/operators/SUBTRACT/data.js +37 -0
- package/build/operators/SUBTRACT/index.d.ts +1 -0
- package/build/operators/SUBTRACT/index.js +17 -0
- package/build/operators/{subtract.d.ts → SUBTRACT/operator.d.ts} +2 -2
- package/build/operators/SUBTRACT/operator.js +53 -0
- package/build/operators/_operatorAliases.json +1 -0
- package/build/operators/_operatorUtils.d.ts +9 -1
- package/build/operators/_operatorUtils.js +19 -1
- package/build/operators/index.d.ts +24 -24
- package/build/operators/index.js +24 -27
- package/build/shorthandSyntax.d.ts +2 -0
- package/build/shorthandSyntax.js +55 -0
- package/build/typeCheck.d.ts +1 -1
- package/build/typeCheck.js +1 -0
- package/build/types.d.ts +35 -15
- package/package.json +1 -1
- package/build/operators/count.d.ts +0 -2
- package/build/operators/count.js +0 -29
- package/build/operators/divide.js +0 -41
- package/build/operators/equal.d.ts +0 -2
- package/build/operators/greaterThan.js +0 -35
- package/build/operators/lessThan.js +0 -35
- package/build/operators/logicalAnd.js +0 -33
- package/build/operators/logicalOr.d.ts +0 -2
- package/build/operators/logicalOr.js +0 -29
- package/build/operators/multiply.js +0 -29
- package/build/operators/passThru.js +0 -30
- package/build/operators/postRequest.d.ts +0 -2
- package/build/operators/subtract.js +0 -32
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BasicExtendedNode } from '
|
|
2
|
-
import { EvaluatorNode, OperatorObject, BaseOperatorNode } from '
|
|
1
|
+
import { BasicExtendedNode } from '../AND/operator';
|
|
2
|
+
import { EvaluatorNode, OperatorObject, BaseOperatorNode } from '../../types';
|
|
3
3
|
interface DivisionNodeWithProps extends BaseOperatorNode {
|
|
4
4
|
dividend: EvaluatorNode;
|
|
5
5
|
divisor: EvaluatorNode;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.DIVIDE = void 0;
|
|
36
|
+
const operator_1 = require("../AND/operator");
|
|
37
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
38
|
+
const data_1 = __importStar(require("./data"));
|
|
39
|
+
const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
40
|
+
const [values, dividend, divisor, output] = (yield (0, _operatorUtils_1.evaluateArray)([expression.values, expression.dividend, expression.divisor, expression.output], config));
|
|
41
|
+
config.typeChecker(...(0, _operatorUtils_1.getTypeCheckInput)(data_1.default.parameters, { values, dividend, divisor, output }));
|
|
42
|
+
const vals = values !== null && values !== void 0 ? values : [dividend, divisor];
|
|
43
|
+
if (vals.length < 2)
|
|
44
|
+
throw new Error('- Not enough values provided');
|
|
45
|
+
if (!vals[1])
|
|
46
|
+
throw new Error('Division by zero!');
|
|
47
|
+
switch (output) {
|
|
48
|
+
case 'quotient':
|
|
49
|
+
return Math.floor(vals[0] / vals[1]);
|
|
50
|
+
case 'remainder':
|
|
51
|
+
return vals[0] % vals[1];
|
|
52
|
+
default:
|
|
53
|
+
return vals[0] / vals[1];
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
exports.DIVIDE = {
|
|
57
|
+
requiredProperties: data_1.requiredProperties,
|
|
58
|
+
propertyAliases: data_1.propertyAliases,
|
|
59
|
+
operatorData: data_1.default,
|
|
60
|
+
evaluate,
|
|
61
|
+
parseChildren: operator_1.parseChildren,
|
|
62
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.propertyAliases = exports.requiredProperties = void 0;
|
|
4
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
5
|
+
const description = 'Test multiple values are equal';
|
|
6
|
+
const aliases = ['=', 'eq', 'equal', 'equals'];
|
|
7
|
+
const parameters = [
|
|
8
|
+
{
|
|
9
|
+
name: 'values',
|
|
10
|
+
description: 'Array of values to check for equality',
|
|
11
|
+
aliases: [],
|
|
12
|
+
required: true,
|
|
13
|
+
type: 'array',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'nullEqualsUndefined',
|
|
17
|
+
description: 'Whether a null value should be considered equal to an undefined value',
|
|
18
|
+
aliases: [],
|
|
19
|
+
required: false,
|
|
20
|
+
type: 'boolean',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
exports.requiredProperties = (0, _operatorUtils_1.getRequiredProperties)(parameters);
|
|
24
|
+
exports.propertyAliases = (0, _operatorUtils_1.getPropertyAliases)(parameters);
|
|
25
|
+
const operatorData = {
|
|
26
|
+
description,
|
|
27
|
+
aliases,
|
|
28
|
+
parameters,
|
|
29
|
+
};
|
|
30
|
+
exports.default = operatorData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './operator';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./operator"), exports);
|
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
26
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
27
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -10,16 +33,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
33
|
};
|
|
11
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
35
|
exports.EQUAL = void 0;
|
|
13
|
-
const
|
|
14
|
-
const _operatorUtils_1 = require("
|
|
36
|
+
const operator_1 = require("../AND/operator");
|
|
37
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
15
38
|
const lite_1 = require("dequal/lite");
|
|
16
|
-
const
|
|
17
|
-
const operatorAliases = ['=', 'eq', 'equal', 'equals'];
|
|
18
|
-
const propertyAliases = {};
|
|
39
|
+
const data_1 = __importStar(require("./data"));
|
|
19
40
|
const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
20
41
|
var _a;
|
|
21
42
|
const [values, nullMatch] = (yield (0, _operatorUtils_1.evaluateArray)([expression.values, expression.nullEqualsUndefined], config));
|
|
22
|
-
config.typeChecker(
|
|
43
|
+
config.typeChecker(...(0, _operatorUtils_1.getTypeCheckInput)(data_1.default.parameters, { values, nullEqualsUndefined: nullMatch }));
|
|
23
44
|
const nullEqualsUndefined = nullMatch !== undefined
|
|
24
45
|
? nullMatch
|
|
25
46
|
: ((_a = config.options) === null || _a === void 0 ? void 0 : _a.nullEqualsUndefined) !== undefined
|
|
@@ -30,9 +51,9 @@ const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, funct
|
|
|
30
51
|
return values.every((value) => (0, lite_1.dequal)(value, values[0]));
|
|
31
52
|
});
|
|
32
53
|
exports.EQUAL = {
|
|
33
|
-
requiredProperties,
|
|
34
|
-
|
|
35
|
-
|
|
54
|
+
requiredProperties: data_1.requiredProperties,
|
|
55
|
+
propertyAliases: data_1.propertyAliases,
|
|
56
|
+
operatorData: data_1.default,
|
|
36
57
|
evaluate,
|
|
37
|
-
parseChildren:
|
|
58
|
+
parseChildren: operator_1.parseChildren,
|
|
38
59
|
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.propertyAliases = exports.requiredProperties = void 0;
|
|
4
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
5
|
+
const description = 'HTTP GET Request';
|
|
6
|
+
const aliases = ['get', 'api'];
|
|
7
|
+
const parameters = [
|
|
8
|
+
{
|
|
9
|
+
name: 'url',
|
|
10
|
+
description: 'Endpoint URL',
|
|
11
|
+
aliases: ['endpoint'],
|
|
12
|
+
required: true,
|
|
13
|
+
type: 'string',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'returnProperty',
|
|
17
|
+
description: 'Property from request result',
|
|
18
|
+
aliases: ['outputProperty'],
|
|
19
|
+
required: false,
|
|
20
|
+
type: 'string',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: 'headers',
|
|
24
|
+
description: 'HTTP Headers',
|
|
25
|
+
aliases: [],
|
|
26
|
+
required: false,
|
|
27
|
+
type: 'object',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'parameters',
|
|
31
|
+
description: 'Query parameters (key-value)',
|
|
32
|
+
aliases: [],
|
|
33
|
+
required: false,
|
|
34
|
+
type: 'object',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: 'useCache',
|
|
38
|
+
description: 'Whether or not the FigTree cache is used',
|
|
39
|
+
aliases: [],
|
|
40
|
+
required: false,
|
|
41
|
+
type: 'boolean',
|
|
42
|
+
},
|
|
43
|
+
];
|
|
44
|
+
exports.requiredProperties = (0, _operatorUtils_1.getRequiredProperties)(parameters);
|
|
45
|
+
exports.propertyAliases = (0, _operatorUtils_1.getPropertyAliases)(parameters);
|
|
46
|
+
const operatorData = {
|
|
47
|
+
description,
|
|
48
|
+
aliases,
|
|
49
|
+
parameters,
|
|
50
|
+
};
|
|
51
|
+
exports.default = operatorData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { GET, type APINode } from './operator';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseOperatorNode, EvaluatorNode, FigTreeConfig, CombinedOperatorNode, GenericObject, OperatorObject } from '
|
|
2
|
-
|
|
1
|
+
import { BaseOperatorNode, EvaluatorNode, FigTreeConfig, CombinedOperatorNode, GenericObject, OperatorObject } from '../../types';
|
|
2
|
+
import { requiredProperties } from './data';
|
|
3
3
|
export type APINode = {
|
|
4
4
|
[key in typeof requiredProperties[number]]: EvaluatorNode;
|
|
5
5
|
} & BaseOperatorNode & {
|
|
@@ -9,4 +9,3 @@ export type APINode = {
|
|
|
9
9
|
};
|
|
10
10
|
export declare const parseChildrenGET: (expression: CombinedOperatorNode, config: FigTreeConfig) => Promise<APINode>;
|
|
11
11
|
export declare const GET: OperatorObject;
|
|
12
|
-
export {};
|
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
26
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
27
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -10,15 +33,29 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
33
|
};
|
|
11
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
35
|
exports.GET = exports.parseChildrenGET = void 0;
|
|
13
|
-
const _operatorUtils_1 = require("
|
|
14
|
-
const
|
|
15
|
-
const operatorAliases = ['get', 'api'];
|
|
16
|
-
const propertyAliases = { endpoint: 'url', outputProperty: 'returnProperty' };
|
|
36
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
37
|
+
const data_1 = __importStar(require("./data"));
|
|
17
38
|
const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
39
|
var _a, _b, _c, _d;
|
|
19
|
-
const [urlObj,
|
|
40
|
+
const [urlObj, parameters, returnProperty, headers, useCache] = (yield (0, _operatorUtils_1.evaluateArray)([
|
|
41
|
+
expression.url,
|
|
42
|
+
expression.parameters,
|
|
43
|
+
expression.returnProperty,
|
|
44
|
+
expression.headers,
|
|
45
|
+
expression.useCache,
|
|
46
|
+
], config));
|
|
20
47
|
const { url, headers: headersObj } = urlObj instanceof Object ? urlObj : { url: urlObj, headers: null };
|
|
21
|
-
config.typeChecker(
|
|
48
|
+
config.typeChecker(...(0, _operatorUtils_1.getTypeCheckInput)(data_1.default.parameters, {
|
|
49
|
+
url,
|
|
50
|
+
returnProperty,
|
|
51
|
+
headers,
|
|
52
|
+
parameters,
|
|
53
|
+
useCache,
|
|
54
|
+
}), {
|
|
55
|
+
name: 'headers',
|
|
56
|
+
value: headersObj,
|
|
57
|
+
expectedType: ['object', 'null'],
|
|
58
|
+
});
|
|
22
59
|
const baseUrl = (_a = config.options.baseEndpoint) !== null && _a !== void 0 ? _a : '';
|
|
23
60
|
const httpHeaders = Object.assign(Object.assign(Object.assign({}, (_b = config.options) === null || _b === void 0 ? void 0 : _b.headers), headersObj), headers);
|
|
24
61
|
const shouldUseCache = (_d = (_c = expression.useCache) !== null && _c !== void 0 ? _c : config.options.useCache) !== null && _d !== void 0 ? _d : true;
|
|
@@ -29,23 +66,24 @@ const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, funct
|
|
|
29
66
|
headers,
|
|
30
67
|
});
|
|
31
68
|
return (0, _operatorUtils_1.extractAndSimplify)(response, returnProperty);
|
|
32
|
-
}), (0, _operatorUtils_1.isFullUrl)(url) ? url : (0, _operatorUtils_1.joinUrlParts)(baseUrl, url),
|
|
69
|
+
}), (0, _operatorUtils_1.isFullUrl)(url) ? url : (0, _operatorUtils_1.joinUrlParts)(baseUrl, url), parameters, httpHeaders, returnProperty);
|
|
33
70
|
return result;
|
|
34
71
|
});
|
|
35
72
|
const parseChildren = (expression, config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
36
73
|
const [url = '', fieldNames, ...rest] = (yield (0, _operatorUtils_1.evaluateArray)(expression.children, config));
|
|
37
|
-
const
|
|
38
|
-
const
|
|
74
|
+
const fieldKeys = Array.isArray(fieldNames) ? fieldNames : [fieldNames];
|
|
75
|
+
const values = rest.slice(0, fieldKeys.length);
|
|
76
|
+
const parameters = (0, _operatorUtils_1.zipArraysToObject)(fieldKeys, values);
|
|
39
77
|
const output = Object.assign(Object.assign({}, expression), { url, parameters });
|
|
40
|
-
if (rest.length >
|
|
78
|
+
if (rest.length > fieldKeys.length)
|
|
41
79
|
output.returnProperty = rest.pop();
|
|
42
80
|
return output;
|
|
43
81
|
});
|
|
44
82
|
exports.parseChildrenGET = parseChildren;
|
|
45
83
|
exports.GET = {
|
|
46
|
-
requiredProperties,
|
|
47
|
-
|
|
48
|
-
|
|
84
|
+
requiredProperties: data_1.requiredProperties,
|
|
85
|
+
propertyAliases: data_1.propertyAliases,
|
|
86
|
+
operatorData: data_1.default,
|
|
49
87
|
evaluate,
|
|
50
88
|
parseChildren,
|
|
51
89
|
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.propertyAliases = exports.requiredProperties = void 0;
|
|
4
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
5
|
+
const description = 'GraphQL request';
|
|
6
|
+
const aliases = ['graphQl', 'graphql', 'gql'];
|
|
7
|
+
const parameters = [
|
|
8
|
+
{
|
|
9
|
+
name: 'query',
|
|
10
|
+
description: 'GraphQL query string',
|
|
11
|
+
aliases: [],
|
|
12
|
+
required: true,
|
|
13
|
+
type: 'string',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'url',
|
|
17
|
+
description: 'Endpoint for the GraphQL request (if not already provided in options)',
|
|
18
|
+
aliases: ['endpoint'],
|
|
19
|
+
required: false,
|
|
20
|
+
type: ['string', 'null'],
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: 'headers',
|
|
24
|
+
description: 'HTTP Headers (if not already provided in options)',
|
|
25
|
+
aliases: [],
|
|
26
|
+
required: false,
|
|
27
|
+
type: 'object',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'variables',
|
|
31
|
+
description: 'Values for the variables used in query (key-value pairs)',
|
|
32
|
+
aliases: [],
|
|
33
|
+
required: false,
|
|
34
|
+
type: 'object',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: 'returnNode',
|
|
38
|
+
description: 'Property path to extract from the query response',
|
|
39
|
+
aliases: ['outputNode', 'returnProperty'],
|
|
40
|
+
required: false,
|
|
41
|
+
type: 'string',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'useCache',
|
|
45
|
+
description: 'Whether or not the FigTree cache is used',
|
|
46
|
+
aliases: [],
|
|
47
|
+
required: false,
|
|
48
|
+
type: 'boolean',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
exports.requiredProperties = (0, _operatorUtils_1.getRequiredProperties)(parameters);
|
|
52
|
+
exports.propertyAliases = (0, _operatorUtils_1.getPropertyAliases)(parameters);
|
|
53
|
+
const operatorData = {
|
|
54
|
+
description,
|
|
55
|
+
aliases,
|
|
56
|
+
parameters,
|
|
57
|
+
};
|
|
58
|
+
exports.default = operatorData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './operator';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./operator"), exports);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseOperatorNode, EvaluatorNode, GenericObject, OperatorObject } from '
|
|
2
|
-
|
|
1
|
+
import { BaseOperatorNode, EvaluatorNode, GenericObject, OperatorObject } from '../../types';
|
|
2
|
+
import { requiredProperties } from './data';
|
|
3
3
|
export type GraphQLNode = {
|
|
4
4
|
[key in typeof requiredProperties[number]]: EvaluatorNode;
|
|
5
5
|
} & BaseOperatorNode & {
|
|
@@ -15,4 +15,3 @@ export interface GraphQLConnection {
|
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
export declare const GRAPHQL: OperatorObject;
|
|
18
|
-
export {};
|
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
26
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
27
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -10,10 +33,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
33
|
};
|
|
11
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
35
|
exports.GRAPHQL = void 0;
|
|
13
|
-
const _operatorUtils_1 = require("
|
|
14
|
-
const
|
|
15
|
-
const operatorAliases = ['graphQl', 'graphql', 'gql'];
|
|
16
|
-
const propertyAliases = { endpoint: 'url', outputNode: 'returnNode', returnProperty: 'returnNode' };
|
|
36
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
37
|
+
const data_1 = __importStar(require("./data"));
|
|
17
38
|
const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
39
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
19
40
|
const [query, urlObj, variables, returnNode, headers] = (yield (0, _operatorUtils_1.evaluateArray)([
|
|
@@ -24,7 +45,7 @@ const evaluate = (expression, config) => __awaiter(void 0, void 0, void 0, funct
|
|
|
24
45
|
expression.headers,
|
|
25
46
|
], config));
|
|
26
47
|
const { url, headers: headersObj } = urlObj instanceof Object ? urlObj : { url: urlObj, headers: null };
|
|
27
|
-
config.typeChecker(
|
|
48
|
+
config.typeChecker(...(0, _operatorUtils_1.getTypeCheckInput)(data_1.default.parameters, { url, query, variables, returnNode, headers }), { name: 'headers', value: headersObj, expectedType: ['object', 'null'] });
|
|
28
49
|
const endpoint = !url || url.toLowerCase() === 'graphqlendpoint' ? '' : url;
|
|
29
50
|
const baseEndpoint = (_c = (_b = (_a = config.options.graphQLConnection) === null || _a === void 0 ? void 0 : _a.endpoint) !== null && _b !== void 0 ? _b : config.options.baseEndpoint) !== null && _c !== void 0 ? _c : '';
|
|
30
51
|
const fullUrl = (0, _operatorUtils_1.isFullUrl)(endpoint) ? endpoint : (0, _operatorUtils_1.joinUrlParts)(baseEndpoint, endpoint);
|
|
@@ -46,9 +67,9 @@ const parseChildren = (expression, config) => __awaiter(void 0, void 0, void 0,
|
|
|
46
67
|
return output;
|
|
47
68
|
});
|
|
48
69
|
exports.GRAPHQL = {
|
|
49
|
-
requiredProperties,
|
|
50
|
-
|
|
51
|
-
|
|
70
|
+
requiredProperties: data_1.requiredProperties,
|
|
71
|
+
propertyAliases: data_1.propertyAliases,
|
|
72
|
+
operatorData: data_1.default,
|
|
52
73
|
evaluate,
|
|
53
74
|
parseChildren,
|
|
54
75
|
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.propertyAliases = exports.requiredProperties = void 0;
|
|
4
|
+
const _operatorUtils_1 = require("../_operatorUtils");
|
|
5
|
+
const description = 'Test if a value is greater than (or equal to) another value';
|
|
6
|
+
const aliases = ['>', 'greaterThan', 'higher', 'larger'];
|
|
7
|
+
const parameters = [
|
|
8
|
+
{
|
|
9
|
+
name: 'values',
|
|
10
|
+
description: 'Array of values - 1st element will be compared to the second',
|
|
11
|
+
aliases: [],
|
|
12
|
+
required: true,
|
|
13
|
+
type: 'array',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'strict',
|
|
17
|
+
description: 'Whether value must be strictly greater than (i.e. not equal) (default: false)',
|
|
18
|
+
aliases: [],
|
|
19
|
+
required: false,
|
|
20
|
+
type: 'boolean',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
exports.requiredProperties = (0, _operatorUtils_1.getRequiredProperties)(parameters);
|
|
24
|
+
exports.propertyAliases = (0, _operatorUtils_1.getPropertyAliases)(parameters);
|
|
25
|
+
const operatorData = {
|
|
26
|
+
description,
|
|
27
|
+
aliases,
|
|
28
|
+
parameters,
|
|
29
|
+
};
|
|
30
|
+
exports.default = operatorData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './operator';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./operator"), exports);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { BasicExtendedNode } from '../AND/operator';
|
|
2
|
+
import { OperatorObject } from '../../types';
|
|
3
3
|
export type ComparatorNode = BasicExtendedNode & {
|
|
4
4
|
strict?: boolean;
|
|
5
5
|
};
|