@loadmill/core 0.3.139 → 0.3.141
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/dist/assertions/index.d.ts +32 -0
- package/dist/assertions/index.js +52 -0
- package/dist/assertions/index.js.map +1 -0
- package/dist/code-step/index.d.ts +23 -0
- package/dist/code-step/index.js +97 -0
- package/dist/code-step/index.js.map +1 -0
- package/dist/conf/defaults.d.ts +1 -0
- package/dist/conf/defaults.js +11 -0
- package/dist/conf/defaults.js.map +1 -0
- package/dist/conf/extrema.d.ts +7 -0
- package/dist/conf/extrema.js +12 -0
- package/dist/conf/extrema.js.map +1 -0
- package/dist/conf/index.d.ts +15 -0
- package/dist/conf/index.js +80 -0
- package/dist/conf/index.js.map +1 -0
- package/dist/conf/notifications.d.ts +2 -0
- package/dist/conf/notifications.js +19 -0
- package/dist/conf/notifications.js.map +1 -0
- package/dist/conf/types.d.ts +122 -0
- package/dist/conf/types.js +38 -0
- package/dist/conf/types.js.map +1 -0
- package/dist/conf/validate.d.ts +69 -0
- package/dist/conf/validate.js +509 -0
- package/dist/conf/validate.js.map +1 -0
- package/dist/distributed-logger-reporter.d.ts +3 -0
- package/dist/distributed-logger-reporter.js +74 -0
- package/dist/distributed-logger-reporter.js.map +1 -0
- package/dist/echo/firehose.d.ts +7 -0
- package/dist/echo/firehose.js +130 -0
- package/dist/echo/firehose.js.map +1 -0
- package/dist/echo/index.d.ts +3 -0
- package/dist/echo/index.js +8 -0
- package/dist/echo/index.js.map +1 -0
- package/dist/echo/stats.d.ts +8 -0
- package/dist/echo/stats.js +152 -0
- package/dist/echo/stats.js.map +1 -0
- package/dist/extract-and-assert-step/index.d.ts +29 -0
- package/dist/extract-and-assert-step/index.js +108 -0
- package/dist/extract-and-assert-step/index.js.map +1 -0
- package/dist/extractions/index.d.ts +36 -0
- package/dist/extractions/index.js +49 -0
- package/dist/extractions/index.js.map +1 -0
- package/dist/har/index.d.ts +71 -0
- package/dist/har/index.js +61 -0
- package/dist/har/index.js.map +1 -0
- package/dist/labels/constants.d.ts +1 -0
- package/dist/labels/constants.js +5 -0
- package/dist/labels/constants.js.map +1 -0
- package/dist/multipart-form-data/files.d.ts +2 -0
- package/dist/multipart-form-data/files.js +63 -0
- package/dist/multipart-form-data/files.js.map +1 -0
- package/dist/multipart-form-data/form-data-utils.d.ts +19 -0
- package/dist/multipart-form-data/form-data-utils.js +118 -0
- package/dist/multipart-form-data/form-data-utils.js.map +1 -0
- package/dist/multipart-form-data/is-binary-file.d.ts +2 -0
- package/dist/multipart-form-data/is-binary-file.js +215 -0
- package/dist/multipart-form-data/is-binary-file.js.map +1 -0
- package/dist/multipart-form-data/multipart-text-to-post-form-data.d.ts +3 -0
- package/dist/multipart-form-data/multipart-text-to-post-form-data.js +93 -0
- package/dist/multipart-form-data/multipart-text-to-post-form-data.js.map +1 -0
- package/dist/parameters/extractions.d.ts +27 -0
- package/dist/parameters/extractions.js +51 -0
- package/dist/parameters/extractions.js.map +1 -0
- package/dist/parameters/extractors/cheerio-extractor.d.ts +11 -0
- package/dist/parameters/extractors/cheerio-extractor.js +84 -0
- package/dist/parameters/extractors/cheerio-extractor.js.map +1 -0
- package/dist/parameters/extractors/expression-extractor.d.ts +6 -0
- package/dist/parameters/extractors/expression-extractor.js +38 -0
- package/dist/parameters/extractors/expression-extractor.js.map +1 -0
- package/dist/parameters/extractors/extractor.d.ts +3 -0
- package/dist/parameters/extractors/extractor.js +3 -0
- package/dist/parameters/extractors/extractor.js.map +1 -0
- package/dist/parameters/extractors/header-extractor.d.ts +7 -0
- package/dist/parameters/extractors/header-extractor.js +51 -0
- package/dist/parameters/extractors/header-extractor.js.map +1 -0
- package/dist/parameters/extractors/index.d.ts +10 -0
- package/dist/parameters/extractors/index.js +20 -0
- package/dist/parameters/extractors/index.js.map +1 -0
- package/dist/parameters/extractors/json-path-extractor.d.ts +11 -0
- package/dist/parameters/extractors/json-path-extractor.js +127 -0
- package/dist/parameters/extractors/json-path-extractor.js.map +1 -0
- package/dist/parameters/extractors/parametrized-extractor.d.ts +10 -0
- package/dist/parameters/extractors/parametrized-extractor.js +34 -0
- package/dist/parameters/extractors/parametrized-extractor.js.map +1 -0
- package/dist/parameters/extractors/regex-extractor.d.ts +7 -0
- package/dist/parameters/extractors/regex-extractor.js +46 -0
- package/dist/parameters/extractors/regex-extractor.js.map +1 -0
- package/dist/parameters/extractors/regex-matcher.d.ts +1 -0
- package/dist/parameters/extractors/regex-matcher.js +22 -0
- package/dist/parameters/extractors/regex-matcher.js.map +1 -0
- package/dist/parameters/extractors/ws-extractor.d.ts +33 -0
- package/dist/parameters/extractors/ws-extractor.js +215 -0
- package/dist/parameters/extractors/ws-extractor.js.map +1 -0
- package/dist/parameters/extractors/x-path-extractor.d.ts +9 -0
- package/dist/parameters/extractors/x-path-extractor.js +77 -0
- package/dist/parameters/extractors/x-path-extractor.js.map +1 -0
- package/dist/parameters/generate-random.d.ts +13 -0
- package/dist/parameters/generate-random.js +108 -0
- package/dist/parameters/generate-random.js.map +1 -0
- package/dist/parameters/html-utils.d.ts +1 -0
- package/dist/parameters/html-utils.js +18 -0
- package/dist/parameters/html-utils.js.map +1 -0
- package/dist/parameters/index.d.ts +94 -0
- package/dist/parameters/index.js +619 -0
- package/dist/parameters/index.js.map +1 -0
- package/dist/parameters/json-path-utils.d.ts +1 -0
- package/dist/parameters/json-path-utils.js +16 -0
- package/dist/parameters/json-path-utils.js.map +1 -0
- package/dist/parameters/operators/binary-operator.d.ts +13 -0
- package/dist/parameters/operators/binary-operator.js +39 -0
- package/dist/parameters/operators/binary-operator.js.map +1 -0
- package/dist/parameters/operators/index.d.ts +5 -0
- package/dist/parameters/operators/index.js +21 -0
- package/dist/parameters/operators/index.js.map +1 -0
- package/dist/parameters/parameter-functions/aws-cognito.d.ts +3 -0
- package/dist/parameters/parameter-functions/aws-cognito.js +119 -0
- package/dist/parameters/parameter-functions/aws-cognito.js.map +1 -0
- package/dist/parameters/parameter-functions/boolean-parameter-functions.d.ts +12 -0
- package/dist/parameters/parameter-functions/boolean-parameter-functions.js +47 -0
- package/dist/parameters/parameter-functions/boolean-parameter-functions.js.map +1 -0
- package/dist/parameters/parameter-functions/crypto.d.ts +11 -0
- package/dist/parameters/parameter-functions/crypto.js +71 -0
- package/dist/parameters/parameter-functions/crypto.js.map +1 -0
- package/dist/parameters/parameter-functions/json-schema.d.ts +1 -0
- package/dist/parameters/parameter-functions/json-schema.js +33 -0
- package/dist/parameters/parameter-functions/json-schema.js.map +1 -0
- package/dist/parameters/parameter-functions/numeric-input-parameter-functions.d.ts +11 -0
- package/dist/parameters/parameter-functions/numeric-input-parameter-functions.js +34 -0
- package/dist/parameters/parameter-functions/numeric-input-parameter-functions.js.map +1 -0
- package/dist/parameters/parameter-functions/numeric-parameter-functions.d.ts +15 -0
- package/dist/parameters/parameter-functions/numeric-parameter-functions.js +56 -0
- package/dist/parameters/parameter-functions/numeric-parameter-functions.js.map +1 -0
- package/dist/parameters/parameter-functions/parameter-function-utils.d.ts +5 -0
- package/dist/parameters/parameter-functions/parameter-function-utils.js +82 -0
- package/dist/parameters/parameter-functions/parameter-function-utils.js.map +1 -0
- package/dist/parameters/parameter-functions/parameter-function.d.ts +6 -0
- package/dist/parameters/parameter-functions/parameter-function.js +28 -0
- package/dist/parameters/parameter-functions/parameter-function.js.map +1 -0
- package/dist/parameters/parameter-functions/parameter-functions.d.ts +7 -0
- package/dist/parameters/parameter-functions/parameter-functions.js +53 -0
- package/dist/parameters/parameter-functions/parameter-functions.js.map +1 -0
- package/dist/parameters/parameter-functions/random-parameter-functions.d.ts +1 -0
- package/dist/parameters/parameter-functions/random-parameter-functions.js +43 -0
- package/dist/parameters/parameter-functions/random-parameter-functions.js.map +1 -0
- package/dist/parameters/parameter-functions/textual-parameter-functions.d.ts +72 -0
- package/dist/parameters/parameter-functions/textual-parameter-functions.js +389 -0
- package/dist/parameters/parameter-functions/textual-parameter-functions.js.map +1 -0
- package/dist/parameters/parameter-name-utils.d.ts +6 -0
- package/dist/parameters/parameter-name-utils.js +124 -0
- package/dist/parameters/parameter-name-utils.js.map +1 -0
- package/dist/parameters/parameter-regex-providers.d.ts +24 -0
- package/dist/parameters/parameter-regex-providers.js +70 -0
- package/dist/parameters/parameter-regex-providers.js.map +1 -0
- package/dist/parameters/resolvers/random-parameters-resolver.d.ts +1 -0
- package/dist/parameters/resolvers/random-parameters-resolver.js +12 -0
- package/dist/parameters/resolvers/random-parameters-resolver.js.map +1 -0
- package/dist/parameters/type.d.ts +10 -0
- package/dist/parameters/type.js +9 -0
- package/dist/parameters/type.js.map +1 -0
- package/dist/parameters/value-utils.d.ts +5 -0
- package/dist/parameters/value-utils.js +44 -0
- package/dist/parameters/value-utils.js.map +1 -0
- package/dist/request/index.d.ts +174 -0
- package/dist/request/index.js +356 -0
- package/dist/request/index.js.map +1 -0
- package/dist/schema/json-schema-generator.d.ts +20 -0
- package/dist/schema/json-schema-generator.js +135 -0
- package/dist/schema/json-schema-generator.js.map +1 -0
- package/dist/signals.d.ts +4 -0
- package/dist/signals.js +9 -0
- package/dist/signals.js.map +1 -0
- package/dist/socket-events/index.d.ts +13 -0
- package/dist/socket-events/index.js +17 -0
- package/dist/socket-events/index.js.map +1 -0
- package/dist/step/assertable.d.ts +4 -0
- package/dist/step/assertable.js +3 -0
- package/dist/step/assertable.js.map +1 -0
- package/dist/step/codeable.d.ts +3 -0
- package/dist/step/codeable.js +3 -0
- package/dist/step/codeable.js.map +1 -0
- package/dist/step/extractable.d.ts +4 -0
- package/dist/step/extractable.js +3 -0
- package/dist/step/extractable.js.map +1 -0
- package/dist/step/index.d.ts +72 -0
- package/dist/step/index.js +71 -0
- package/dist/step/index.js.map +1 -0
- package/dist/step/step-type.d.ts +4 -0
- package/dist/step/step-type.js +3 -0
- package/dist/step/step-type.js.map +1 -0
- package/dist/step/type-guards.d.ts +7 -0
- package/dist/step/type-guards.js +18 -0
- package/dist/step/type-guards.js.map +1 -0
- package/dist/subset/index.d.ts +3 -0
- package/dist/subset/index.js +8 -0
- package/dist/subset/index.js.map +1 -0
- package/dist/subset/is-subset.d.ts +2 -0
- package/dist/subset/is-subset.js +29 -0
- package/dist/subset/is-subset.js.map +1 -0
- package/dist/subset/json-contains.d.ts +1 -0
- package/dist/subset/json-contains.js +24 -0
- package/dist/subset/json-contains.js.map +1 -0
- package/dist/team-options/constants.d.ts +3 -0
- package/dist/team-options/constants.js +7 -0
- package/dist/team-options/constants.js.map +1 -0
- package/dist/xml/decode.d.ts +2 -0
- package/dist/xml/decode.js +91 -0
- package/dist/xml/decode.js.map +1 -0
- package/dist/xml/encode.d.ts +1 -0
- package/dist/xml/encode.js +14 -0
- package/dist/xml/encode.js.map +1 -0
- package/dist/xml/escape-reserved-chars.d.ts +6 -0
- package/dist/xml/escape-reserved-chars.js +57 -0
- package/dist/xml/escape-reserved-chars.js.map +1 -0
- package/dist/xml/is-xml.d.ts +1 -0
- package/dist/xml/is-xml.js +9 -0
- package/dist/xml/is-xml.js.map +1 -0
- package/dist/xml/json-to-xml.d.ts +2 -0
- package/dist/xml/json-to-xml.js +11 -0
- package/dist/xml/json-to-xml.js.map +1 -0
- package/dist/xml/namespaces.d.ts +7 -0
- package/dist/xml/namespaces.js +16 -0
- package/dist/xml/namespaces.js.map +1 -0
- package/dist/xml/remove-invisible-chars.d.ts +2 -0
- package/dist/xml/remove-invisible-chars.js +13 -0
- package/dist/xml/remove-invisible-chars.js.map +1 -0
- package/dist/xml/replace-s-tags.d.ts +4 -0
- package/dist/xml/replace-s-tags.js +21 -0
- package/dist/xml/replace-s-tags.js.map +1 -0
- package/dist/xml/xml-to-json.d.ts +7 -0
- package/dist/xml/xml-to-json.js +21 -0
- package/dist/xml/xml-to-json.js.map +1 -0
- package/package.json +3 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getLongestJsonPathToken = void 0;
|
|
7
|
+
var jsonpath_1 = __importDefault(require("jsonpath"));
|
|
8
|
+
var getLongestJsonPathToken = function (jsonPath) {
|
|
9
|
+
var pathExpressionsValues = jsonpath_1.default.parse(jsonPath)
|
|
10
|
+
.map(function (p) { return p.expression.value; });
|
|
11
|
+
var longestToken = pathExpressionsValues.reduce(longestStringReducer);
|
|
12
|
+
return longestToken;
|
|
13
|
+
};
|
|
14
|
+
exports.getLongestJsonPathToken = getLongestJsonPathToken;
|
|
15
|
+
var longestStringReducer = function (prev, curr) { return curr.length > prev.length ? curr : prev; };
|
|
16
|
+
//# sourceMappingURL=json-path-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-path-utils.js","sourceRoot":"","sources":["../../src/parameters/json-path-utils.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAgC;AAWzB,IAAM,uBAAuB,GAAG,UAAC,QAAgB;IACtD,IAAM,qBAAqB,GAAI,kBAAQ,CAAC,KAAK,CAAC,QAAQ,CAAyB;SAC5E,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,UAAU,CAAC,KAAK,EAAlB,CAAkB,CAAC,CAAC;IAEhC,IAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACxE,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AANW,QAAA,uBAAuB,2BAMlC;AAEF,IAAM,oBAAoB,GAAG,UAAC,IAAY,EAAE,IAAY,IAAK,OAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAvC,CAAuC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ParameterFunction } from '../parameter-functions/parameter-function';
|
|
2
|
+
export declare class BinaryOperator {
|
|
3
|
+
readonly symbols: string[];
|
|
4
|
+
readonly parameterFunction: ParameterFunction;
|
|
5
|
+
readonly regexSymbol: any;
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
* @param {string[]} symbols
|
|
9
|
+
* @param {ParameterFunction} parameterFunction
|
|
10
|
+
* @param {string} regexSymbol Must NOT contain any capture groups! I.e. use non-capturing (?:) instead.
|
|
11
|
+
*/
|
|
12
|
+
constructor(symbols: string[], parameterFunction: ParameterFunction, regexSymbol?: string);
|
|
13
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BinaryOperator = void 0;
|
|
4
|
+
var BinaryOperator = /** @class */ (function () {
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
* @param {string[]} symbols
|
|
8
|
+
* @param {ParameterFunction} parameterFunction
|
|
9
|
+
* @param {string} regexSymbol Must NOT contain any capture groups! I.e. use non-capturing (?:) instead.
|
|
10
|
+
*/
|
|
11
|
+
function BinaryOperator(symbols, parameterFunction, regexSymbol) {
|
|
12
|
+
Object.defineProperty(this, "symbols", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
writable: true,
|
|
16
|
+
value: symbols
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(this, "parameterFunction", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
configurable: true,
|
|
21
|
+
writable: true,
|
|
22
|
+
value: parameterFunction
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(this, "regexSymbol", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
configurable: true,
|
|
27
|
+
writable: true,
|
|
28
|
+
value: void 0
|
|
29
|
+
});
|
|
30
|
+
this.regexSymbol =
|
|
31
|
+
regexSymbol ||
|
|
32
|
+
symbols
|
|
33
|
+
.map(function (symbol) { return (symbol.length > 1 ? "(?:" + symbol + ")" : symbol); })
|
|
34
|
+
.join('|');
|
|
35
|
+
}
|
|
36
|
+
return BinaryOperator;
|
|
37
|
+
}());
|
|
38
|
+
exports.BinaryOperator = BinaryOperator;
|
|
39
|
+
//# sourceMappingURL=binary-operator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binary-operator.js","sourceRoot":"","sources":["../../../src/parameters/operators/binary-operator.ts"],"names":[],"mappings":";;;AAEA;IAGE;;;;;OAKG;IACH,wBACW,OAAiB,EACjB,iBAAoC,EAC7C,WAAoB;;;;;mBAFX;;;;;;mBACA;;QAVX;;;;;WAAqB;QAanB,IAAI,CAAC,WAAW;YACd,WAAW;gBACX,OAAO;qBACJ,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAM,MAAM,MAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAA9C,CAA8C,CAAC;qBAC/D,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IACH,qBAAC;AAAD,CAAC,AApBD,IAoBC;AApBY,wCAAc"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.operatorsAsStrings = exports.operators = void 0;
|
|
4
|
+
var binary_operator_1 = require("./binary-operator");
|
|
5
|
+
var textual_parameter_functions_1 = require("../parameter-functions/textual-parameter-functions");
|
|
6
|
+
var boolean_parameter_functions_1 = require("../parameter-functions/boolean-parameter-functions");
|
|
7
|
+
var numeric_input_parameter_functions_1 = require("../parameter-functions/numeric-input-parameter-functions");
|
|
8
|
+
var numeric_parameter_functions_1 = require("../parameter-functions/numeric-parameter-functions");
|
|
9
|
+
exports.operators = mapOperators(new binary_operator_1.BinaryOperator(['=', '==', '==='], textual_parameter_functions_1.textualParameterFunctions.__eq), new binary_operator_1.BinaryOperator(['!=', '!=='], textual_parameter_functions_1.textualParameterFunctions.__neq), new binary_operator_1.BinaryOperator(['&', '&&'], boolean_parameter_functions_1.booleanParameterFunctions.__and), new binary_operator_1.BinaryOperator(['|', '||'], boolean_parameter_functions_1.booleanParameterFunctions.__or, '\\||(?:\\|\\|)'), new binary_operator_1.BinaryOperator(['<'], numeric_input_parameter_functions_1.numericInputParameterFunctions.__lt), new binary_operator_1.BinaryOperator(['>'], numeric_input_parameter_functions_1.numericInputParameterFunctions.__gt), new binary_operator_1.BinaryOperator(['<='], numeric_input_parameter_functions_1.numericInputParameterFunctions.__lte), new binary_operator_1.BinaryOperator(['>='], numeric_input_parameter_functions_1.numericInputParameterFunctions.__gte), new binary_operator_1.BinaryOperator(['+'], numeric_parameter_functions_1.numericParameterFunctions.__add, '\\+'), new binary_operator_1.BinaryOperator(['-'], numeric_parameter_functions_1.numericParameterFunctions.__sub), new binary_operator_1.BinaryOperator(['*'], numeric_parameter_functions_1.numericParameterFunctions.__mult, '\\*'), new binary_operator_1.BinaryOperator(['/'], numeric_parameter_functions_1.numericParameterFunctions.__div));
|
|
10
|
+
function mapOperators() {
|
|
11
|
+
var operators = [];
|
|
12
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
13
|
+
operators[_i] = arguments[_i];
|
|
14
|
+
}
|
|
15
|
+
return operators.reduce(function (obj, op) {
|
|
16
|
+
op.symbols.forEach(function (symbol) { return (obj[symbol] = op); });
|
|
17
|
+
return obj;
|
|
18
|
+
}, {});
|
|
19
|
+
}
|
|
20
|
+
exports.operatorsAsStrings = Object.keys(exports.operators);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parameters/operators/index.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AACnD,kGAA+F;AAC/F,kGAA+F;AAC/F,8GAA0G;AAC1G,kGAA+F;AAElF,QAAA,SAAS,GAAG,YAAY,CACnC,IAAI,gCAAc,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,uDAAyB,CAAC,IAAI,CAAC,EACtE,IAAI,gCAAc,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,uDAAyB,CAAC,KAAK,CAAC,EAElE,IAAI,gCAAc,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,uDAAyB,CAAC,KAAK,CAAC,EAChE,IAAI,gCAAc,CAChB,CAAC,GAAG,EAAE,IAAI,CAAC,EACX,uDAAyB,CAAC,IAAI,EAC9B,gBAAgB,CACjB,EAED,IAAI,gCAAc,CAAC,CAAC,GAAG,CAAC,EAAE,kEAA8B,CAAC,IAAI,CAAC,EAE9D,IAAI,gCAAc,CAAC,CAAC,GAAG,CAAC,EAAE,kEAA8B,CAAC,IAAI,CAAC,EAE9D,IAAI,gCAAc,CAAC,CAAC,IAAI,CAAC,EAAE,kEAA8B,CAAC,KAAK,CAAC,EAEhE,IAAI,gCAAc,CAAC,CAAC,IAAI,CAAC,EAAE,kEAA8B,CAAC,KAAK,CAAC,EAEhE,IAAI,gCAAc,CAAC,CAAC,GAAG,CAAC,EAAE,uDAAyB,CAAC,KAAK,EAAE,KAAK,CAAC,EACjE,IAAI,gCAAc,CAAC,CAAC,GAAG,CAAC,EAAE,uDAAyB,CAAC,KAAK,CAAC,EAC1D,IAAI,gCAAc,CAAC,CAAC,GAAG,CAAC,EAAE,uDAAyB,CAAC,MAAM,EAAE,KAAK,CAAC,EAClE,IAAI,gCAAc,CAAC,CAAC,GAAG,CAAC,EAAE,uDAAyB,CAAC,KAAK,CAAC,CAC3D,CAAC;AAEF,SAAS,YAAY;IAAC,mBAA8B;SAA9B,UAA8B,EAA9B,qBAA8B,EAA9B,IAA8B;QAA9B,8BAA8B;;IAClD,OAAO,SAAS,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,EAAE;QAC9B,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAC,MAAM,IAAK,OAAA,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAlB,CAAkB,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAA0C,CAAC,CAAC;AACjD,CAAC;AAEY,QAAA,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const awsCognitoGetSrp: (seed: string) => string;
|
|
2
|
+
export declare const awsCognitoGetSignature: (seed: string, salt_arg: string, srp_b: string, username: string, poolname: string, password: string, secretBlock: string, timestamp: string) => string;
|
|
3
|
+
export declare const awsCognitoGetNowTimestamp: () => string;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.awsCognitoGetNowTimestamp = exports.awsCognitoGetSignature = exports.awsCognitoGetSrp = void 0;
|
|
4
|
+
var crypto_1 = require("crypto");
|
|
5
|
+
var jsbn_1 = require("jsbn");
|
|
6
|
+
var sha256_js_1 = require("@aws-crypto/sha256-js");
|
|
7
|
+
// Most code in this file was taken from https://github.com/aws-amplify/amplify-js
|
|
8
|
+
var initN = 'FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1' + '29024E088A67CC74020BBEA63B139B22514A08798E3404DD' + 'EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245' +
|
|
9
|
+
'E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED' + 'EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D' + 'C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F' +
|
|
10
|
+
'83655D23DCA3AD961C62F356208552BB9ED529077096966D' + '670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B' + 'E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9' +
|
|
11
|
+
'DE2BCBF6955817183995497CEA956AE515D2261898FA0510' + '15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64' + 'ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7' +
|
|
12
|
+
'ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B' + 'F12FFA06D98A0864D87602733EC86A64521F2B18177B200C' + 'BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31' +
|
|
13
|
+
'43DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF';
|
|
14
|
+
var g = new jsbn_1.BigInteger('2', 16);
|
|
15
|
+
var N = new jsbn_1.BigInteger(initN, 16);
|
|
16
|
+
var k = new jsbn_1.BigInteger(hexHash('' + padHex(N) + padHex(g)), 16);
|
|
17
|
+
function getNowString() {
|
|
18
|
+
var monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
|
19
|
+
var weekNames = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
|
|
20
|
+
var now = new Date();
|
|
21
|
+
var weekDay = weekNames[now.getUTCDay()];
|
|
22
|
+
var month = monthNames[now.getUTCMonth()];
|
|
23
|
+
var day = now.getUTCDate();
|
|
24
|
+
var hours = now.getUTCHours();
|
|
25
|
+
if (hours < 10) {
|
|
26
|
+
//@ts-ignore
|
|
27
|
+
hours = '0' + hours;
|
|
28
|
+
}
|
|
29
|
+
var minutes = now.getUTCMinutes();
|
|
30
|
+
if (minutes < 10) {
|
|
31
|
+
//@ts-ignore
|
|
32
|
+
minutes = '0' + minutes;
|
|
33
|
+
}
|
|
34
|
+
var seconds = now.getUTCSeconds();
|
|
35
|
+
if (seconds < 10) {
|
|
36
|
+
//@ts-ignore
|
|
37
|
+
seconds = '0' + seconds;
|
|
38
|
+
}
|
|
39
|
+
var year = now.getUTCFullYear();
|
|
40
|
+
// ddd MMM D HH:mm:ss UTC YYYY
|
|
41
|
+
var dateNow = weekDay + ' ' + month + ' ' + day + ' ' + hours + ':' + minutes + ':' + seconds + ' UTC ' + year;
|
|
42
|
+
return dateNow;
|
|
43
|
+
}
|
|
44
|
+
function padHex(value) {
|
|
45
|
+
// Convert the value to a two's complement hex string
|
|
46
|
+
var hex = value.toString(16);
|
|
47
|
+
// Determine the length of the hex string
|
|
48
|
+
var length = hex.length;
|
|
49
|
+
// If the length is odd, pad with a leading zero
|
|
50
|
+
if (length % 2 !== 0) {
|
|
51
|
+
hex = '0' + hex;
|
|
52
|
+
length++;
|
|
53
|
+
}
|
|
54
|
+
// Check if the most significant bit is set
|
|
55
|
+
var msbSet = parseInt(hex[0], 16) >= 8;
|
|
56
|
+
// If the most significant bit is set, pad with "00" for negative values
|
|
57
|
+
if (msbSet && length % 2 === 0) {
|
|
58
|
+
hex = '00' + hex;
|
|
59
|
+
length += 2;
|
|
60
|
+
}
|
|
61
|
+
// If the most significant bit is not set, pad with "FF" for positive values
|
|
62
|
+
if (!msbSet && length % 2 === 1) {
|
|
63
|
+
hex = 'FF' + hex;
|
|
64
|
+
length += 2;
|
|
65
|
+
}
|
|
66
|
+
return hex.toLowerCase(); // Return the padded hex string in uppercase
|
|
67
|
+
}
|
|
68
|
+
function sha256Local(input) {
|
|
69
|
+
var hash = crypto_1.createHash('sha256');
|
|
70
|
+
hash.update(input);
|
|
71
|
+
return hash.digest('hex');
|
|
72
|
+
}
|
|
73
|
+
function hexHash(hexStr) {
|
|
74
|
+
return sha256Local(Buffer.from(hexStr, 'hex'));
|
|
75
|
+
}
|
|
76
|
+
function computehkdf(ikm, salt, info) {
|
|
77
|
+
var awsCryptoHash = new sha256_js_1.Sha256(salt);
|
|
78
|
+
awsCryptoHash.update(ikm);
|
|
79
|
+
var resultFromAWSCryptoPrk = awsCryptoHash.digestSync();
|
|
80
|
+
var awsCryptoHashHmac = new sha256_js_1.Sha256(resultFromAWSCryptoPrk);
|
|
81
|
+
awsCryptoHashHmac.update(info);
|
|
82
|
+
var resultFromAWSCryptoHmac = awsCryptoHashHmac.digestSync();
|
|
83
|
+
return resultFromAWSCryptoHmac.slice(0, 16);
|
|
84
|
+
}
|
|
85
|
+
var awsCognitoGetSrp = function (seed) {
|
|
86
|
+
var smallAValue = new jsbn_1.BigInteger(seed.toString(), 16);
|
|
87
|
+
var largeAValue = g.modPow(smallAValue, N);
|
|
88
|
+
var srp_a = largeAValue.toString(16);
|
|
89
|
+
return srp_a;
|
|
90
|
+
};
|
|
91
|
+
exports.awsCognitoGetSrp = awsCognitoGetSrp;
|
|
92
|
+
var awsCognitoGetSignature = function (seed, salt_arg, srp_b, username, poolname, password, secretBlock, timestamp) {
|
|
93
|
+
var salt = new jsbn_1.BigInteger(salt_arg, 16);
|
|
94
|
+
var serverBValue = new jsbn_1.BigInteger(srp_b, 16);
|
|
95
|
+
var smallAValue = new jsbn_1.BigInteger(seed.toString(), 16);
|
|
96
|
+
var largeAValue = g.modPow(smallAValue, N);
|
|
97
|
+
var uvalue = new jsbn_1.BigInteger(hexHash(padHex(largeAValue) + padHex(serverBValue)), 16);
|
|
98
|
+
var usernamePasswordHash = sha256Local('' + poolname + username + ':' + password);
|
|
99
|
+
var xValue = new jsbn_1.BigInteger(hexHash(Buffer.from(padHex(salt) + usernamePasswordHash, 'hex')), 16);
|
|
100
|
+
var gModPowXN = g.modPow(xValue, N);
|
|
101
|
+
var intValue2 = serverBValue.subtract(k.multiply(gModPowXN));
|
|
102
|
+
var sValue = intValue2.modPow(smallAValue.add(uvalue.multiply(xValue)), N).mod(N);
|
|
103
|
+
var info = Buffer.concat([Buffer.from('Caldera Derived Key', 'utf8'), Buffer.from(String.fromCharCode(1), 'utf8')]);
|
|
104
|
+
var hkdfVal = computehkdf(Buffer.from(padHex(sValue), 'hex'), Buffer.from(padHex(uvalue), 'hex'), info);
|
|
105
|
+
var challange = Buffer.concat([
|
|
106
|
+
Buffer.from(poolname, 'utf8'),
|
|
107
|
+
Buffer.from(username, 'utf8'),
|
|
108
|
+
Buffer.from(secretBlock, 'base64'),
|
|
109
|
+
Buffer.from(timestamp, 'utf8')
|
|
110
|
+
]);
|
|
111
|
+
var awsCryptoHash = new sha256_js_1.Sha256(hkdfVal);
|
|
112
|
+
awsCryptoHash.update(challange);
|
|
113
|
+
var signature = Buffer.from(awsCryptoHash.digestSync()).toString('base64');
|
|
114
|
+
return signature;
|
|
115
|
+
};
|
|
116
|
+
exports.awsCognitoGetSignature = awsCognitoGetSignature;
|
|
117
|
+
var awsCognitoGetNowTimestamp = function () { return getNowString(); };
|
|
118
|
+
exports.awsCognitoGetNowTimestamp = awsCognitoGetNowTimestamp;
|
|
119
|
+
//# sourceMappingURL=aws-cognito.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-cognito.js","sourceRoot":"","sources":["../../../src/parameters/parameter-functions/aws-cognito.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ParameterFunction } from './parameter-function';
|
|
2
|
+
declare class BooleanParameterFunction extends ParameterFunction {
|
|
3
|
+
constructor(operate: (...args: boolean[]) => boolean, minArgs?: any, maxArgs?: any);
|
|
4
|
+
}
|
|
5
|
+
export declare const booleanParameterFunctions: {
|
|
6
|
+
__and: BooleanParameterFunction;
|
|
7
|
+
__or: BooleanParameterFunction;
|
|
8
|
+
__not: BooleanParameterFunction;
|
|
9
|
+
__true: BooleanParameterFunction;
|
|
10
|
+
__false: BooleanParameterFunction;
|
|
11
|
+
};
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.booleanParameterFunctions = void 0;
|
|
19
|
+
var parameter_function_utils_1 = require("./parameter-function-utils");
|
|
20
|
+
var parameter_function_1 = require("./parameter-function");
|
|
21
|
+
var BooleanParameterFunction = /** @class */ (function (_super) {
|
|
22
|
+
__extends(BooleanParameterFunction, _super);
|
|
23
|
+
function BooleanParameterFunction(operate, minArgs, maxArgs) {
|
|
24
|
+
return _super.call(this, parameter_function_utils_1.withBooleanInput(operate), minArgs, maxArgs) || this;
|
|
25
|
+
}
|
|
26
|
+
return BooleanParameterFunction;
|
|
27
|
+
}(parameter_function_1.ParameterFunction));
|
|
28
|
+
exports.booleanParameterFunctions = {
|
|
29
|
+
__and: new BooleanParameterFunction(function () {
|
|
30
|
+
var args = [];
|
|
31
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
32
|
+
args[_i] = arguments[_i];
|
|
33
|
+
}
|
|
34
|
+
return args.reduce(function (x, y) { return x && y; }, true);
|
|
35
|
+
}),
|
|
36
|
+
__or: new BooleanParameterFunction(function () {
|
|
37
|
+
var args = [];
|
|
38
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
39
|
+
args[_i] = arguments[_i];
|
|
40
|
+
}
|
|
41
|
+
return args.reduce(function (x, y) { return x || y; }, false);
|
|
42
|
+
}),
|
|
43
|
+
__not: new BooleanParameterFunction(function (x) { return !x; }, 1, 1),
|
|
44
|
+
__true: new BooleanParameterFunction(function () { return true; }, 0, 0),
|
|
45
|
+
__false: new BooleanParameterFunction(function () { return false; }, 0, 0),
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=boolean-parameter-functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boolean-parameter-functions.js","sourceRoot":"","sources":["../../../src/parameters/parameter-functions/boolean-parameter-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,uEAA8D;AAC9D,2DAAyD;AAEzD;IAAuC,4CAAiB;IACtD,kCAAY,OAAwC,EAAE,OAAQ,EAAE,OAAQ;eACtE,kBAAM,2CAAgB,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;IACpD,CAAC;IACH,+BAAC;AAAD,CAAC,AAJD,CAAuC,sCAAiB,GAIvD;AAEY,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,IAAI,wBAAwB,CAAC;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAC1C,OAAA,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,CAAC,EAAN,CAAM,EAAE,IAAI,CAAC;IAAnC,CAAmC,CACpC;IAED,IAAI,EAAE,IAAI,wBAAwB,CAAC;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QACzC,OAAA,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,CAAC,EAAN,CAAM,EAAE,KAAK,CAAC;IAApC,CAAoC,CACrC;IAED,KAAK,EAAE,IAAI,wBAAwB,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAF,CAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpD,MAAM,EAAE,IAAI,wBAAwB,CAAC,cAAM,OAAA,IAAI,EAAJ,CAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAEtD,OAAO,EAAE,IAAI,wBAAwB,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,EAAE,CAAC,EAAE,CAAC,CAAC;CACzD,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const FORMATS: {
|
|
2
|
+
UTF8: string;
|
|
3
|
+
HEX: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const HASH: {
|
|
6
|
+
SHA1: string;
|
|
7
|
+
SHA256: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const toSha: (secret: string, alg: string, secretFormat: string) => any;
|
|
10
|
+
export declare const toHMAC: (secret: string, alg: string, secretFormat: string, salt: string) => any;
|
|
11
|
+
export declare const toRiskifiedHMAC: (method: string, url: string, requestBody: string, token: string) => any;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toRiskifiedHMAC = exports.toHMAC = exports.toSha = exports.HASH = exports.FORMATS = void 0;
|
|
4
|
+
var CryptoJS = require('crypto-js');
|
|
5
|
+
var errors_1 = require("@loadmill/universal/dist/errors");
|
|
6
|
+
exports.FORMATS = {
|
|
7
|
+
UTF8: 'utf-8',
|
|
8
|
+
HEX: 'hex'
|
|
9
|
+
};
|
|
10
|
+
exports.HASH = {
|
|
11
|
+
SHA1: 'SHA1',
|
|
12
|
+
SHA256: 'SHA256',
|
|
13
|
+
};
|
|
14
|
+
var toSha = function (secret, alg, secretFormat) {
|
|
15
|
+
try {
|
|
16
|
+
var hashFunction = toHashFunction(alg);
|
|
17
|
+
var hashed = hashFunction(toCryptoFormat(secret, secretFormat));
|
|
18
|
+
return hashed.toString(CryptoJS.enc.Hex);
|
|
19
|
+
}
|
|
20
|
+
catch (_e) {
|
|
21
|
+
throw new errors_1.PresentableError("Can't digest " + secret);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.toSha = toSha;
|
|
25
|
+
var toHMAC = function (secret, alg, secretFormat, salt) {
|
|
26
|
+
try {
|
|
27
|
+
var converted = toCryptoFormat(secret, secretFormat);
|
|
28
|
+
var hmaced = CryptoJS.algo.HMAC.create(CryptoJS.algo[(alg || exports.HASH.SHA256)], converted);
|
|
29
|
+
salt && hmaced.update(salt);
|
|
30
|
+
var hashed = hmaced.finalize();
|
|
31
|
+
return hashed.toString(CryptoJS.enc.Hex);
|
|
32
|
+
}
|
|
33
|
+
catch (_e) {
|
|
34
|
+
throw new errors_1.PresentableError("Can't digest " + secret);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
exports.toHMAC = toHMAC;
|
|
38
|
+
var toRiskifiedHMAC = function (method, url, requestBody, token) {
|
|
39
|
+
try {
|
|
40
|
+
var payload = requestBody;
|
|
41
|
+
if (method == 'GET') {
|
|
42
|
+
var modifiedUrl = url.replace('https://', '').replace('http://', '');
|
|
43
|
+
payload = modifiedUrl.substring(modifiedUrl.indexOf('/'));
|
|
44
|
+
}
|
|
45
|
+
var hash = CryptoJS.HmacSHA256(payload, token);
|
|
46
|
+
return CryptoJS.enc.Hex.stringify(hash);
|
|
47
|
+
}
|
|
48
|
+
catch (_e) {
|
|
49
|
+
throw new errors_1.PresentableError('Can\'t process hmac');
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
exports.toRiskifiedHMAC = toRiskifiedHMAC;
|
|
53
|
+
var toHashFunction = function (type) {
|
|
54
|
+
switch (type) {
|
|
55
|
+
case exports.HASH.SHA1:
|
|
56
|
+
return CryptoJS.SHA1;
|
|
57
|
+
case exports.HASH.SHA256:
|
|
58
|
+
default:
|
|
59
|
+
return CryptoJS.SHA256;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
var toCryptoFormat = function (from, base) {
|
|
63
|
+
switch (base) {
|
|
64
|
+
case exports.FORMATS.HEX:
|
|
65
|
+
return CryptoJS.enc.Hex.parse(from);
|
|
66
|
+
case exports.FORMATS.UTF8:
|
|
67
|
+
default:
|
|
68
|
+
return CryptoJS.enc.Utf8.parse(from);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=crypto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/parameters/parameter-functions/crypto.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const applyJSONSchema: (instance: any, schema: any) => boolean;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.applyJSONSchema = void 0;
|
|
7
|
+
var jsonschema_1 = require("jsonschema");
|
|
8
|
+
var isEmpty_1 = __importDefault(require("lodash/isEmpty"));
|
|
9
|
+
var json_utils_1 = require("@loadmill/universal/dist/json-utils");
|
|
10
|
+
var errors_1 = require("@loadmill/universal/dist/errors");
|
|
11
|
+
var applyJSONSchema = function (instance, schema) {
|
|
12
|
+
var v = new jsonschema_1.Validator();
|
|
13
|
+
var parsedInstance, parsedSchema;
|
|
14
|
+
try {
|
|
15
|
+
parsedInstance = JSON.parse(instance);
|
|
16
|
+
}
|
|
17
|
+
catch (_a) {
|
|
18
|
+
parsedInstance = instance;
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
parsedSchema = JSON.parse(json_utils_1.stripJsonTrailingCommas(schema));
|
|
22
|
+
}
|
|
23
|
+
catch (e) {
|
|
24
|
+
throw new errors_1.JSONSchemaAssertionError("Invalid schema - " + e.message);
|
|
25
|
+
}
|
|
26
|
+
var res = v.validate(parsedInstance, parsedSchema);
|
|
27
|
+
if (!isEmpty_1.default(res.errors)) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
return true;
|
|
31
|
+
};
|
|
32
|
+
exports.applyJSONSchema = applyJSONSchema;
|
|
33
|
+
//# sourceMappingURL=json-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../../../src/parameters/parameter-functions/json-schema.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAuC;AACvC,2DAAqC;AACrC,kEAA8E;AAC9E,0DAA2E;AAEpE,IAAM,eAAe,GAAG,UAAC,QAAQ,EAAE,MAAM;IAC9C,IAAM,CAAC,GAAG,IAAI,sBAAS,EAAE,CAAC;IAC1B,IAAI,cAAc,EAAE,YAAY,CAAC;IAEjC,IAAI;QACF,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KACvC;IAAC,WAAM;QACN,cAAc,GAAG,QAAQ,CAAC;KAC3B;IAED,IAAI;QACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,oCAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC5D;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,IAAI,iCAAwB,CAAC,sBAAoB,CAAC,CAAC,OAAS,CAAC,CAAC;KACrE;IAED,IAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAErD,IAAI,CAAC,iBAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAvBW,QAAA,eAAe,mBAuB1B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ParameterFunction } from './parameter-function';
|
|
2
|
+
declare class NumericInputParameterFunction extends ParameterFunction {
|
|
3
|
+
constructor(operate: (...args: number[]) => NonNullable<any>, minArgs?: any, maxArgs?: any);
|
|
4
|
+
}
|
|
5
|
+
export declare const numericInputParameterFunctions: {
|
|
6
|
+
__lt: NumericInputParameterFunction;
|
|
7
|
+
__lte: NumericInputParameterFunction;
|
|
8
|
+
__gt: NumericInputParameterFunction;
|
|
9
|
+
__gte: NumericInputParameterFunction;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.numericInputParameterFunctions = void 0;
|
|
19
|
+
var parameter_function_utils_1 = require("./parameter-function-utils");
|
|
20
|
+
var parameter_function_1 = require("./parameter-function");
|
|
21
|
+
var NumericInputParameterFunction = /** @class */ (function (_super) {
|
|
22
|
+
__extends(NumericInputParameterFunction, _super);
|
|
23
|
+
function NumericInputParameterFunction(operate, minArgs, maxArgs) {
|
|
24
|
+
return _super.call(this, parameter_function_utils_1.withNumericInput(operate), minArgs, maxArgs) || this;
|
|
25
|
+
}
|
|
26
|
+
return NumericInputParameterFunction;
|
|
27
|
+
}(parameter_function_1.ParameterFunction));
|
|
28
|
+
exports.numericInputParameterFunctions = {
|
|
29
|
+
__lt: new NumericInputParameterFunction(function (x, y) { return x < y; }, 2, 2),
|
|
30
|
+
__lte: new NumericInputParameterFunction(function (x, y) { return x <= y; }, 2, 2),
|
|
31
|
+
__gt: new NumericInputParameterFunction(function (x, y) { return x > y; }, 2, 2),
|
|
32
|
+
__gte: new NumericInputParameterFunction(function (x, y) { return x >= y; }, 2, 2),
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=numeric-input-parameter-functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"numeric-input-parameter-functions.js","sourceRoot":"","sources":["../../../src/parameters/parameter-functions/numeric-input-parameter-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,uEAA8D;AAC9D,2DAAyD;AAEzD;IAA4C,iDAAiB;IAC3D,uCACE,OAAgD,EAChD,OAAQ,EACR,OAAQ;eAER,kBAAM,2CAAgB,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;IACpD,CAAC;IACH,oCAAC;AAAD,CAAC,AARD,CAA4C,sCAAiB,GAQ5D;AAEY,QAAA,8BAA8B,GAAG;IAC5C,IAAI,EAAE,IAAI,6BAA6B,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,GAAG,CAAC,EAAL,CAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAE9D,KAAK,EAAE,IAAI,6BAA6B,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,CAAC,EAAN,CAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEhE,IAAI,EAAE,IAAI,6BAA6B,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,GAAG,CAAC,EAAL,CAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAE9D,KAAK,EAAE,IAAI,6BAA6B,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,CAAC,EAAN,CAAM,EAAE,CAAC,EAAE,CAAC,CAAC;CACjE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ParameterFunction } from './parameter-function';
|
|
2
|
+
declare class NumericParameterFunction extends ParameterFunction {
|
|
3
|
+
constructor(operate: (...args: number[]) => number, minArgs?: any, maxArgs?: any);
|
|
4
|
+
}
|
|
5
|
+
export declare const numericParameterFunctions: {
|
|
6
|
+
__add: NumericParameterFunction;
|
|
7
|
+
__sub: NumericParameterFunction;
|
|
8
|
+
__neg: NumericParameterFunction;
|
|
9
|
+
__abs: NumericParameterFunction;
|
|
10
|
+
__round: NumericParameterFunction;
|
|
11
|
+
__floor: NumericParameterFunction;
|
|
12
|
+
__mult: NumericParameterFunction;
|
|
13
|
+
__div: NumericParameterFunction;
|
|
14
|
+
};
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.numericParameterFunctions = void 0;
|
|
19
|
+
var parameter_function_1 = require("./parameter-function");
|
|
20
|
+
var parameter_function_utils_1 = require("./parameter-function-utils");
|
|
21
|
+
var errors_1 = require("@loadmill/universal/dist/errors");
|
|
22
|
+
var NumericParameterFunction = /** @class */ (function (_super) {
|
|
23
|
+
__extends(NumericParameterFunction, _super);
|
|
24
|
+
function NumericParameterFunction(operate, minArgs, maxArgs) {
|
|
25
|
+
return _super.call(this, parameter_function_utils_1.withNumericIO(operate), minArgs, maxArgs) || this;
|
|
26
|
+
}
|
|
27
|
+
return NumericParameterFunction;
|
|
28
|
+
}(parameter_function_1.ParameterFunction));
|
|
29
|
+
exports.numericParameterFunctions = {
|
|
30
|
+
__add: new NumericParameterFunction(function () {
|
|
31
|
+
var args = [];
|
|
32
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
33
|
+
args[_i] = arguments[_i];
|
|
34
|
+
}
|
|
35
|
+
return args.reduce(function (x, y) { return x + y; }, 0);
|
|
36
|
+
}),
|
|
37
|
+
__sub: new NumericParameterFunction(function (v1, v2) { return v1 - v2; }, 2, 2),
|
|
38
|
+
__neg: new NumericParameterFunction(function (x) { return -x; }, 1, 1),
|
|
39
|
+
__abs: new NumericParameterFunction(function (x) { return Math.abs(x); }, 1, 1),
|
|
40
|
+
__round: new NumericParameterFunction(function (x) { return Math.round(x); }, 1, 1),
|
|
41
|
+
__floor: new NumericParameterFunction(function (x) { return Math.floor(x); }, 1, 1),
|
|
42
|
+
__mult: new NumericParameterFunction(function () {
|
|
43
|
+
var args = [];
|
|
44
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
45
|
+
args[_i] = arguments[_i];
|
|
46
|
+
}
|
|
47
|
+
return args.reduce(function (x, y) { return x * y; }, 1);
|
|
48
|
+
}),
|
|
49
|
+
__div: new NumericParameterFunction(function (v1, v2) {
|
|
50
|
+
if (v2 === 0) {
|
|
51
|
+
throw new errors_1.PresentableError('Cannot divide by zero');
|
|
52
|
+
}
|
|
53
|
+
return v1 / v2;
|
|
54
|
+
}, 2, 2),
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=numeric-parameter-functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"numeric-parameter-functions.js","sourceRoot":"","sources":["../../../src/parameters/parameter-functions/numeric-parameter-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2DAAyD;AACzD,uEAA2D;AAC3D,0DAAmE;AAEnE;IAAuC,4CAAiB;IACtD,kCAAY,OAAsC,EAAE,OAAQ,EAAE,OAAQ;eACpE,kBAAM,wCAAa,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;IACjD,CAAC;IACH,+BAAC;AAAD,CAAC,AAJD,CAAuC,sCAAiB,GAIvD;AAEY,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,IAAI,wBAAwB,CAAC;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAC1C,OAAA,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,GAAG,CAAC,EAAL,CAAK,EAAE,CAAC,CAAC;IAA/B,CAA+B,CAChC;IAED,KAAK,EAAE,IAAI,wBAAwB,CAAC,UAAC,EAAE,EAAE,EAAE,IAAK,OAAA,EAAE,GAAG,EAAE,EAAP,CAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAE9D,KAAK,EAAE,IAAI,wBAAwB,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAF,CAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpD,KAAK,EAAE,IAAI,wBAAwB,CAAC,UAAC,CAAC,IAAK,OAAA,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAX,CAAW,EAAE,CAAC,EAAE,CAAC,CAAC;IAE7D,OAAO,EAAE,IAAI,wBAAwB,CAAC,UAAC,CAAC,IAAK,OAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAb,CAAa,EAAE,CAAC,EAAE,CAAC,CAAC;IAEjE,OAAO,EAAE,IAAI,wBAAwB,CAAC,UAAC,CAAC,IAAK,OAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAb,CAAa,EAAE,CAAC,EAAE,CAAC,CAAC;IAEjE,MAAM,EAAE,IAAI,wBAAwB,CAAC;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAC3C,OAAA,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,GAAG,CAAC,EAAL,CAAK,EAAE,CAAC,CAAC;IAA/B,CAA+B,CAChC;IAED,KAAK,EAAE,IAAI,wBAAwB,CACjC,UAAC,EAAE,EAAE,EAAE;QACL,IAAI,EAAE,KAAK,CAAC,EAAE;YACZ,MAAM,IAAI,yBAAgB,CAAC,uBAAuB,CAAC,CAAC;SACrD;QAED,OAAO,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC,EACD,CAAC,EACD,CAAC,CACF;CACF,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ParameterFunction } from './parameter-function';
|
|
2
|
+
export declare const withParameters: (fun: any) => (...args: any[]) => any, withBooleanInput: (fun: any) => (...args: any[]) => any, withNumericInput: (fun: any) => (...args: any[]) => any, withNumericIO: (fun: any) => (...args: any[]) => any;
|
|
3
|
+
export declare class BasicParameterFunction extends ParameterFunction {
|
|
4
|
+
constructor(operate: (...args: string[]) => NonNullable<any>, minArgs?: any, maxArgs?: any);
|
|
5
|
+
}
|