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.
Files changed (174) hide show
  1. package/README.md +196 -12
  2. package/build/FigTreeEvaluator.d.ts +18 -0
  3. package/build/FigTreeEvaluator.js +26 -3
  4. package/build/evaluate.js +18 -10
  5. package/build/helpers.d.ts +29 -4
  6. package/build/helpers.js +16 -4
  7. package/build/operators/AND/data.d.ts +5 -0
  8. package/build/operators/AND/data.js +23 -0
  9. package/build/operators/AND/index.d.ts +1 -0
  10. package/build/operators/AND/index.js +5 -0
  11. package/build/operators/{logicalAnd.d.ts → AND/operator.d.ts} +2 -3
  12. package/build/operators/AND/operator.js +54 -0
  13. package/build/operators/BUILD_OBJECT/data.d.ts +5 -0
  14. package/build/operators/BUILD_OBJECT/data.js +23 -0
  15. package/build/operators/BUILD_OBJECT/index.d.ts +1 -0
  16. package/build/operators/BUILD_OBJECT/index.js +17 -0
  17. package/build/operators/{buildObject.d.ts → BUILD_OBJECT/operator.d.ts} +2 -3
  18. package/build/operators/{buildObject.js → BUILD_OBJECT/operator.js} +29 -12
  19. package/build/operators/CONDITIONAL/data.d.ts +5 -0
  20. package/build/operators/CONDITIONAL/data.js +37 -0
  21. package/build/operators/CONDITIONAL/index.d.ts +1 -0
  22. package/build/operators/CONDITIONAL/index.js +17 -0
  23. package/build/operators/{conditional.d.ts → CONDITIONAL/operator.d.ts} +2 -3
  24. package/build/operators/{conditional.js → CONDITIONAL/operator.js} +28 -7
  25. package/build/operators/COUNT/data.d.ts +5 -0
  26. package/build/operators/COUNT/data.js +23 -0
  27. package/build/operators/COUNT/index.d.ts +1 -0
  28. package/build/operators/COUNT/index.js +17 -0
  29. package/build/operators/COUNT/operator.d.ts +2 -0
  30. package/build/operators/COUNT/operator.js +50 -0
  31. package/build/operators/CUSTOM_FUNCTIONS/data.d.ts +5 -0
  32. package/build/operators/CUSTOM_FUNCTIONS/data.js +37 -0
  33. package/build/operators/CUSTOM_FUNCTIONS/index.d.ts +1 -0
  34. package/build/operators/CUSTOM_FUNCTIONS/index.js +17 -0
  35. package/build/operators/{customFunctions.d.ts → CUSTOM_FUNCTIONS/operator.d.ts} +2 -3
  36. package/build/operators/{customFunctions.js → CUSTOM_FUNCTIONS/operator.js} +29 -22
  37. package/build/operators/DIVIDE/data.d.ts +5 -0
  38. package/build/operators/DIVIDE/data.js +44 -0
  39. package/build/operators/DIVIDE/index.d.ts +1 -0
  40. package/build/operators/DIVIDE/index.js +17 -0
  41. package/build/operators/{divide.d.ts → DIVIDE/operator.d.ts} +2 -2
  42. package/build/operators/DIVIDE/operator.js +62 -0
  43. package/build/operators/EQUAL/data.d.ts +5 -0
  44. package/build/operators/EQUAL/data.js +30 -0
  45. package/build/operators/EQUAL/index.d.ts +1 -0
  46. package/build/operators/EQUAL/index.js +17 -0
  47. package/build/operators/EQUAL/operator.d.ts +2 -0
  48. package/build/operators/{equal.js → EQUAL/operator.js} +31 -10
  49. package/build/operators/GET/data.d.ts +5 -0
  50. package/build/operators/GET/data.js +51 -0
  51. package/build/operators/GET/index.d.ts +1 -0
  52. package/build/operators/GET/index.js +5 -0
  53. package/build/operators/{getRequest.d.ts → GET/operator.d.ts} +2 -3
  54. package/build/operators/{getRequest.js → GET/operator.js} +51 -13
  55. package/build/operators/GRAPHQL/data.d.ts +5 -0
  56. package/build/operators/GRAPHQL/data.js +58 -0
  57. package/build/operators/GRAPHQL/index.d.ts +1 -0
  58. package/build/operators/GRAPHQL/index.js +17 -0
  59. package/build/operators/{graphQL.d.ts → GRAPHQL/operator.d.ts} +2 -3
  60. package/build/operators/{graphQL.js → GRAPHQL/operator.js} +29 -8
  61. package/build/operators/GREATER_THAN/data.d.ts +5 -0
  62. package/build/operators/GREATER_THAN/data.js +30 -0
  63. package/build/operators/GREATER_THAN/index.d.ts +1 -0
  64. package/build/operators/GREATER_THAN/index.js +17 -0
  65. package/build/operators/{greaterThan.d.ts → GREATER_THAN/operator.d.ts} +2 -2
  66. package/build/operators/GREATER_THAN/operator.js +55 -0
  67. package/build/operators/LESS_THAN/data.d.ts +5 -0
  68. package/build/operators/LESS_THAN/data.js +30 -0
  69. package/build/operators/LESS_THAN/index.d.ts +1 -0
  70. package/build/operators/LESS_THAN/index.js +17 -0
  71. package/build/operators/{lessThan.d.ts → LESS_THAN/operator.d.ts} +1 -1
  72. package/build/operators/LESS_THAN/operator.js +55 -0
  73. package/build/operators/MATCH/data.d.ts +5 -0
  74. package/build/operators/MATCH/data.js +30 -0
  75. package/build/operators/MATCH/index.d.ts +1 -0
  76. package/build/operators/MATCH/index.js +17 -0
  77. package/build/operators/{match.d.ts → MATCH/operator.d.ts} +2 -3
  78. package/build/operators/{match.js → MATCH/operator.js} +31 -18
  79. package/build/operators/MULTIPLY/data.d.ts +5 -0
  80. package/build/operators/MULTIPLY/data.js +23 -0
  81. package/build/operators/MULTIPLY/index.d.ts +1 -0
  82. package/build/operators/MULTIPLY/index.js +17 -0
  83. package/build/operators/{multiply.d.ts → MULTIPLY/operator.d.ts} +1 -1
  84. package/build/operators/MULTIPLY/operator.js +50 -0
  85. package/build/operators/NOT_EQUAL/data.d.ts +5 -0
  86. package/build/operators/NOT_EQUAL/data.js +30 -0
  87. package/build/operators/NOT_EQUAL/index.d.ts +1 -0
  88. package/build/operators/NOT_EQUAL/index.js +17 -0
  89. package/build/operators/{notEqual.d.ts → NOT_EQUAL/operator.d.ts} +1 -1
  90. package/build/operators/{notEqual.js → NOT_EQUAL/operator.js} +31 -10
  91. package/build/operators/OBJECT_PROPERTIES/data.d.ts +5 -0
  92. package/build/operators/OBJECT_PROPERTIES/data.js +38 -0
  93. package/build/operators/OBJECT_PROPERTIES/index.d.ts +1 -0
  94. package/build/operators/OBJECT_PROPERTIES/index.js +17 -0
  95. package/build/operators/{objectProperties.d.ts → OBJECT_PROPERTIES/operator.d.ts} +2 -3
  96. package/build/operators/{objectProperties.js → OBJECT_PROPERTIES/operator.js} +33 -24
  97. package/build/operators/OR/data.d.ts +5 -0
  98. package/build/operators/OR/data.js +23 -0
  99. package/build/operators/OR/index.d.ts +1 -0
  100. package/build/operators/OR/index.js +17 -0
  101. package/build/operators/OR/operator.d.ts +2 -0
  102. package/build/operators/OR/operator.js +50 -0
  103. package/build/operators/PASSTHRU/data.d.ts +5 -0
  104. package/build/operators/PASSTHRU/data.js +23 -0
  105. package/build/operators/PASSTHRU/index.d.ts +1 -0
  106. package/build/operators/PASSTHRU/index.js +17 -0
  107. package/build/operators/{passThru.d.ts → PASSTHRU/operator.d.ts} +3 -4
  108. package/build/operators/PASSTHRU/operator.js +52 -0
  109. package/build/operators/PG_SQL/data.d.ts +5 -0
  110. package/build/operators/PG_SQL/data.js +37 -0
  111. package/build/operators/PG_SQL/index.d.ts +1 -0
  112. package/build/operators/PG_SQL/index.js +17 -0
  113. package/build/operators/{pgSQL.d.ts → PG_SQL/operator.d.ts} +2 -2
  114. package/build/operators/{pgSQL.js → PG_SQL/operator.js} +29 -8
  115. package/build/operators/PLUS/data.d.ts +5 -0
  116. package/build/operators/PLUS/data.js +30 -0
  117. package/build/operators/PLUS/index.d.ts +1 -0
  118. package/build/operators/PLUS/index.js +17 -0
  119. package/build/operators/{plus.d.ts → PLUS/operator.d.ts} +3 -4
  120. package/build/operators/{plus.js → PLUS/operator.js} +34 -10
  121. package/build/operators/POST/data.d.ts +5 -0
  122. package/build/operators/POST/data.js +51 -0
  123. package/build/operators/POST/index.d.ts +1 -0
  124. package/build/operators/POST/index.js +17 -0
  125. package/build/operators/POST/operator.d.ts +2 -0
  126. package/build/operators/{postRequest.js → POST/operator.js} +31 -10
  127. package/build/operators/REGEX/data.d.ts +5 -0
  128. package/build/operators/REGEX/data.js +30 -0
  129. package/build/operators/REGEX/index.d.ts +1 -0
  130. package/build/operators/REGEX/index.js +17 -0
  131. package/build/operators/{regex.d.ts → REGEX/operator.d.ts} +2 -3
  132. package/build/operators/{regex.js → REGEX/operator.js} +30 -16
  133. package/build/operators/SPLIT/data.d.ts +5 -0
  134. package/build/operators/SPLIT/data.js +44 -0
  135. package/build/operators/SPLIT/index.d.ts +1 -0
  136. package/build/operators/SPLIT/index.js +17 -0
  137. package/build/operators/{split.d.ts → SPLIT/operator.d.ts} +2 -3
  138. package/build/operators/{split.js → SPLIT/operator.js} +34 -15
  139. package/build/operators/STRING_SUBSTITUTION/data.d.ts +5 -0
  140. package/build/operators/STRING_SUBSTITUTION/data.js +30 -0
  141. package/build/operators/STRING_SUBSTITUTION/index.d.ts +1 -0
  142. package/build/operators/STRING_SUBSTITUTION/index.js +17 -0
  143. package/build/operators/{stringSubstitution.d.ts → STRING_SUBSTITUTION/operator.d.ts} +2 -3
  144. package/build/operators/{stringSubstitution.js → STRING_SUBSTITUTION/operator.js} +29 -9
  145. package/build/operators/SUBTRACT/data.d.ts +5 -0
  146. package/build/operators/SUBTRACT/data.js +37 -0
  147. package/build/operators/SUBTRACT/index.d.ts +1 -0
  148. package/build/operators/SUBTRACT/index.js +17 -0
  149. package/build/operators/{subtract.d.ts → SUBTRACT/operator.d.ts} +2 -2
  150. package/build/operators/SUBTRACT/operator.js +53 -0
  151. package/build/operators/_operatorAliases.json +1 -0
  152. package/build/operators/_operatorUtils.d.ts +9 -1
  153. package/build/operators/_operatorUtils.js +19 -1
  154. package/build/operators/index.d.ts +24 -24
  155. package/build/operators/index.js +24 -27
  156. package/build/shorthandSyntax.d.ts +2 -0
  157. package/build/shorthandSyntax.js +55 -0
  158. package/build/typeCheck.d.ts +1 -1
  159. package/build/typeCheck.js +1 -0
  160. package/build/types.d.ts +35 -15
  161. package/package.json +1 -1
  162. package/build/operators/count.d.ts +0 -2
  163. package/build/operators/count.js +0 -29
  164. package/build/operators/divide.js +0 -41
  165. package/build/operators/equal.d.ts +0 -2
  166. package/build/operators/greaterThan.js +0 -35
  167. package/build/operators/lessThan.js +0 -35
  168. package/build/operators/logicalAnd.js +0 -33
  169. package/build/operators/logicalOr.d.ts +0 -2
  170. package/build/operators/logicalOr.js +0 -29
  171. package/build/operators/multiply.js +0 -29
  172. package/build/operators/passThru.js +0 -30
  173. package/build/operators/postRequest.d.ts +0 -2
  174. package/build/operators/subtract.js +0 -32
@@ -1,5 +1,5 @@
1
- import { BasicExtendedNode } from './logicalAnd';
2
- import { EvaluatorNode, OperatorObject, BaseOperatorNode } from '../types';
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,5 @@
1
+ import { OperatorData } from '../../types';
2
+ export declare const requiredProperties: string[];
3
+ export declare const propertyAliases: Record<string, string>;
4
+ declare const operatorData: OperatorData;
5
+ export default operatorData;
@@ -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);
@@ -0,0 +1,2 @@
1
+ import { OperatorObject } from '../../types';
2
+ export declare const EQUAL: OperatorObject;
@@ -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 logicalAnd_1 = require("./logicalAnd");
14
- const _operatorUtils_1 = require("./_operatorUtils");
36
+ const operator_1 = require("../AND/operator");
37
+ const _operatorUtils_1 = require("../_operatorUtils");
15
38
  const lite_1 = require("dequal/lite");
16
- const requiredProperties = ['values'];
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({ name: 'values', value: values, expectedType: 'array' });
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
- operatorAliases,
35
- propertyAliases,
54
+ requiredProperties: data_1.requiredProperties,
55
+ propertyAliases: data_1.propertyAliases,
56
+ operatorData: data_1.default,
36
57
  evaluate,
37
- parseChildren: logicalAnd_1.parseChildren,
58
+ parseChildren: operator_1.parseChildren,
38
59
  };
@@ -0,0 +1,5 @@
1
+ import { OperatorData } from '../../types';
2
+ export declare const requiredProperties: string[];
3
+ export declare const propertyAliases: Record<string, string>;
4
+ declare const operatorData: OperatorData;
5
+ export default operatorData;
@@ -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';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = void 0;
4
+ var operator_1 = require("./operator");
5
+ Object.defineProperty(exports, "GET", { enumerable: true, get: function () { return operator_1.GET; } });
@@ -1,5 +1,5 @@
1
- import { BaseOperatorNode, EvaluatorNode, FigTreeConfig, CombinedOperatorNode, GenericObject, OperatorObject } from '../types';
2
- declare const requiredProperties: readonly ["url"];
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("./_operatorUtils");
14
- const requiredProperties = ['url'];
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, params, returnProperty, headers] = (yield (0, _operatorUtils_1.evaluateArray)([expression.url, expression.parameters, expression.returnProperty, expression.headers], config));
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({ name: 'url', value: url, expectedType: 'string' }, { name: 'headers', value: headersObj, expectedType: ['object', 'null'] }, { name: 'headers', value: headers, expectedType: ['object', 'undefined'] }, { name: 'parameters', value: params, expectedType: ['object', 'undefined'] }, { name: 'returnProperty', value: returnProperty, expectedType: ['string', 'undefined'] });
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), params, httpHeaders, returnProperty);
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 values = rest.slice(0, fieldNames.length);
38
- const parameters = (0, _operatorUtils_1.zipArraysToObject)(fieldNames, values);
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 > fieldNames.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
- operatorAliases,
48
- propertyAliases,
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,5 @@
1
+ import { OperatorData } from '../../types';
2
+ export declare const requiredProperties: string[];
3
+ export declare const propertyAliases: Record<string, string>;
4
+ declare const operatorData: OperatorData;
5
+ export default operatorData;
@@ -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 '../types';
2
- declare const requiredProperties: readonly ["query"];
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("./_operatorUtils");
14
- const requiredProperties = ['query'];
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({ name: 'url', value: url, expectedType: ['string', 'undefined', 'null'] }, { name: 'query', value: query, expectedType: 'string' }, { name: 'headers', value: headersObj, expectedType: ['object', 'null'] }, { name: 'variables', value: variables, expectedType: ['object', 'undefined'] }, { name: 'returnNode', value: returnNode, expectedType: ['string', 'undefined'] });
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
- operatorAliases,
51
- propertyAliases,
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,5 @@
1
+ import { OperatorData } from '../../types';
2
+ export declare const requiredProperties: string[];
3
+ export declare const propertyAliases: Record<string, string>;
4
+ declare const operatorData: OperatorData;
5
+ export default operatorData;
@@ -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 { OperatorObject } from '../types';
2
- import { BasicExtendedNode } from './logicalAnd';
1
+ import { BasicExtendedNode } from '../AND/operator';
2
+ import { OperatorObject } from '../../types';
3
3
  export type ComparatorNode = BasicExtendedNode & {
4
4
  strict?: boolean;
5
5
  };