@wix/motion-edm-autogen-transformations-core 1.26.0 → 1.27.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/dist/cjs/__tests__/corvid-entity.spec.js +4 -2
- package/dist/cjs/__tests__/corvid-entity.spec.js.map +1 -1
- package/dist/cjs/__tests__/reduceTransformation.spec.js +1 -3
- package/dist/cjs/__tests__/reduceTransformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/transformations/preset/create-transformation.spec.js +6 -3
- package/dist/cjs/__tests__/transformations/preset/create-transformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/transformations/preset/delete-transformation.spec.js +9 -4
- package/dist/cjs/__tests__/transformations/preset/delete-transformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/transformations/preset/get-transformation.spec.js +6 -3
- package/dist/cjs/__tests__/transformations/preset/get-transformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/transformations/preset/list-transformation.spec.js +6 -3
- package/dist/cjs/__tests__/transformations/preset/list-transformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/transformations/preset/query-transformation.spec.js +7 -6
- package/dist/cjs/__tests__/transformations/preset/query-transformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/transformations/preset/update-transformation.spec.js +6 -3
- package/dist/cjs/__tests__/transformations/preset/update-transformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/validations/validateRequestTransformation.spec.js +3 -1
- package/dist/cjs/__tests__/validations/validateRequestTransformation.spec.js.map +1 -1
- package/dist/cjs/__tests__/validations/validateResponseTransformation.spec.js +3 -1
- package/dist/cjs/__tests__/validations/validateResponseTransformation.spec.js.map +1 -1
- package/dist/cjs/index.js +13 -16
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/corvid-entity/index.js +2 -4
- package/dist/cjs/lib/corvid-entity/index.js.map +1 -1
- package/dist/cjs/lib/helpers.js +10 -10
- package/dist/cjs/lib/helpers.js.map +1 -1
- package/dist/cjs/lib/transformations/common.js +1 -2
- package/dist/cjs/lib/transformations/common.js.map +1 -1
- package/dist/cjs/lib/transformations/constants.js +2 -4
- package/dist/cjs/lib/transformations/constants.js.map +1 -1
- package/dist/cjs/lib/transformations/preset/delete.js +3 -1
- package/dist/cjs/lib/transformations/preset/delete.js.map +1 -1
- package/dist/cjs/lib/transformations/preset/query.js +9 -7
- package/dist/cjs/lib/transformations/preset/query.js.map +1 -1
- package/dist/cjs/lib/transformations/reduceTransformation.js +46 -36
- package/dist/cjs/lib/transformations/reduceTransformation.js.map +1 -1
- package/dist/cjs/lib/transformations/validations/common.js +4 -2
- package/dist/cjs/lib/transformations/validations/common.js.map +1 -1
- package/dist/cjs/lib/transformations/validations/validateRequestTransformation.js +3 -5
- package/dist/cjs/lib/transformations/validations/validateRequestTransformation.js.map +1 -1
- package/dist/cjs/lib/transformations/validations/validateResponseTransformation.js +7 -6
- package/dist/cjs/lib/transformations/validations/validateResponseTransformation.js.map +1 -1
- package/dist/esm/__tests__/corvid-entity.spec.js +30 -24
- package/dist/esm/__tests__/corvid-entity.spec.js.map +1 -1
- package/dist/esm/__tests__/getArgumentCardinality.spec.js +20 -25
- package/dist/esm/__tests__/getArgumentCardinality.spec.js.map +1 -1
- package/dist/esm/__tests__/helpers.spec.js +37 -29
- package/dist/esm/__tests__/helpers.spec.js.map +1 -1
- package/dist/esm/__tests__/reduceTransformation.spec.js +147 -149
- package/dist/esm/__tests__/reduceTransformation.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/custom-functions.spec.js +62 -59
- package/dist/esm/__tests__/transformations/custom-functions.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/preset/create-transformation.spec.js +24 -26
- package/dist/esm/__tests__/transformations/preset/create-transformation.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/preset/delete-transformation.spec.js +39 -43
- package/dist/esm/__tests__/transformations/preset/delete-transformation.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/preset/get-transformation.spec.js +22 -24
- package/dist/esm/__tests__/transformations/preset/get-transformation.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/preset/list-transformation.spec.js +11 -11
- package/dist/esm/__tests__/transformations/preset/list-transformation.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/preset/query-transformation.spec.js +29 -30
- package/dist/esm/__tests__/transformations/preset/query-transformation.spec.js.map +1 -1
- package/dist/esm/__tests__/transformations/preset/update-transformation.spec.js +58 -62
- package/dist/esm/__tests__/transformations/preset/update-transformation.spec.js.map +1 -1
- package/dist/esm/__tests__/validations/validateRequestTransformation.spec.js +94 -82
- package/dist/esm/__tests__/validations/validateRequestTransformation.spec.js.map +1 -1
- package/dist/esm/__tests__/validations/validateResponseTransformation.spec.js +130 -107
- package/dist/esm/__tests__/validations/validateResponseTransformation.spec.js.map +1 -1
- package/dist/esm/index.js +22 -22
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/corvid-entity/index.js +6 -10
- package/dist/esm/lib/corvid-entity/index.js.map +1 -1
- package/dist/esm/lib/getArgumentCardinality.js +15 -21
- package/dist/esm/lib/getArgumentCardinality.js.map +1 -1
- package/dist/esm/lib/helpers.js +26 -40
- package/dist/esm/lib/helpers.js.map +1 -1
- package/dist/esm/lib/transformations/common.js +2 -5
- package/dist/esm/lib/transformations/common.js.map +1 -1
- package/dist/esm/lib/transformations/constants.js +2 -2
- package/dist/esm/lib/transformations/constants.js.map +1 -1
- package/dist/esm/lib/transformations/custom-functions.js +11 -14
- package/dist/esm/lib/transformations/custom-functions.js.map +1 -1
- package/dist/esm/lib/transformations/preset/create.js +1 -4
- package/dist/esm/lib/transformations/preset/create.js.map +1 -1
- package/dist/esm/lib/transformations/preset/delete.js +9 -13
- package/dist/esm/lib/transformations/preset/delete.js.map +1 -1
- package/dist/esm/lib/transformations/preset/get.js +1 -4
- package/dist/esm/lib/transformations/preset/get.js.map +1 -1
- package/dist/esm/lib/transformations/preset/list.js +1 -3
- package/dist/esm/lib/transformations/preset/list.js.map +1 -1
- package/dist/esm/lib/transformations/preset/query.js +17 -24
- package/dist/esm/lib/transformations/preset/query.js.map +1 -1
- package/dist/esm/lib/transformations/preset/update.js +3 -4
- package/dist/esm/lib/transformations/preset/update.js.map +1 -1
- package/dist/esm/lib/transformations/reduceTransformation.js +33 -44
- package/dist/esm/lib/transformations/reduceTransformation.js.map +1 -1
- package/dist/esm/lib/transformations/validations/common.js +17 -20
- package/dist/esm/lib/transformations/validations/common.js.map +1 -1
- package/dist/esm/lib/transformations/validations/validateRequestTransformation.js +35 -44
- package/dist/esm/lib/transformations/validations/validateRequestTransformation.js.map +1 -1
- package/dist/esm/lib/transformations/validations/validateResponseTransformation.js +57 -69
- package/dist/esm/lib/transformations/validations/validateResponseTransformation.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getArgumentCardinality.js","sourceRoot":"","sources":["../../../src/lib/getArgumentCardinality.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEhD,
|
|
1
|
+
{"version":3,"file":"getArgumentCardinality.js","sourceRoot":"","sources":["../../../src/lib/getArgumentCardinality.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEhD,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,EAAE;IAC1D,4FAA4F;IAC5F,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAEzC,IAAI,OAAO,EAAE;QACX,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;KACzB;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,EAAE,CAC7D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;QAC1C,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KACxC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QACpC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KACxC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,IAAI,CAAC,CAAC;AAEX,MAAM,sBAAsB,GAAG,CAAC,cAAc,EAAE,EAAE,CAChD,OAAO,cAAc,KAAK,QAAQ;IAChC,CAAC,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC,IAAI;IAChD,CAAC,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
|
package/dist/esm/lib/helpers.js
CHANGED
|
@@ -2,55 +2,41 @@ import { JSONPath } from 'jsonpath-plus';
|
|
|
2
2
|
import { attempt, has, isError } from 'lodash';
|
|
3
3
|
import { transformations } from './transformations/common';
|
|
4
4
|
import { JSON_PATH_ROOT } from './transformations/constants';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var isSpreadOperator = function (key) { return key === SPREAD_OPERATOR; };
|
|
15
|
-
var isIdentityResponseTransformation = function (transformationPath) {
|
|
16
|
-
return transformationPath === RESPONSE_OBJECT_UNCHANGED;
|
|
17
|
-
};
|
|
18
|
-
var getArgumentIndex = function (s) {
|
|
19
|
-
var match = s.match(/\$\[(?<argIndex>\d+)\]/);
|
|
5
|
+
const { RESPONSE_OBJECT_UNCHANGED, ARRAY_ITEMS_PATH_PROPERTY_NAME, ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME, OMIT_SOURCE_PROPERTY_NAME, FIELDS_TO_OMIT_PROPERTY_NAME, SPREAD_OPERATOR, CONSTANT_VALUE_PROPERTY_NAME, } = transformations;
|
|
6
|
+
const isInvalidJsonPath = (path) => isError(attempt(() => JSONPath({ path, json: {} })));
|
|
7
|
+
const isInvalidJsonValue = (value) => isError(attempt(() => JSON.parse(value)));
|
|
8
|
+
const isSimpleTransformation = (transformation) => typeof transformation === 'string';
|
|
9
|
+
const isArrayIndexString = (str) => !!/\d+/.test(str);
|
|
10
|
+
const isSpreadOperator = (key) => key === SPREAD_OPERATOR;
|
|
11
|
+
const isIdentityResponseTransformation = (transformationPath) => transformationPath === RESPONSE_OBJECT_UNCHANGED;
|
|
12
|
+
const getArgumentIndex = (s) => {
|
|
13
|
+
const match = s.match(/\$\[(?<argIndex>\d+)\]/);
|
|
20
14
|
return match && match.groups && Number(match.groups.argIndex);
|
|
21
15
|
};
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
var _a = simpleTransformation.split('.'), maybeIndexExpression = _a[0], rest = _a.slice(1);
|
|
30
|
-
var index = getArgumentIndex(maybeIndexExpression);
|
|
16
|
+
const hasValidArgumentIndex = (path) => getArgumentIndex(path) !== null;
|
|
17
|
+
const isRootObjectIdentifier = (s) => s === JSON_PATH_ROOT;
|
|
18
|
+
const isJsonPathExpression = (exp) => exp && exp.startsWith(JSON_PATH_ROOT);
|
|
19
|
+
const stripJsonPathRootPrefix = (jsonPath) => jsonPath.replace(`${JSON_PATH_ROOT}.`, '');
|
|
20
|
+
const extractIndexAndPath = (simpleTransformation) => {
|
|
21
|
+
const [maybeIndexExpression, ...rest] = simpleTransformation.split('.');
|
|
22
|
+
const index = getArgumentIndex(maybeIndexExpression);
|
|
31
23
|
return {
|
|
32
|
-
index
|
|
24
|
+
index,
|
|
33
25
|
nestedPath: index !== null && rest.length > 0 ? rest.join('.') : null,
|
|
34
26
|
};
|
|
35
27
|
};
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
};
|
|
40
|
-
var parseMapArrayItemsTransformation = function (transformationValue) { return ({
|
|
28
|
+
const isMapArrayItemsTransformation = (transformationValue) => has(transformationValue, ARRAY_ITEMS_PATH_PROPERTY_NAME) &&
|
|
29
|
+
has(transformationValue, ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME);
|
|
30
|
+
const parseMapArrayItemsTransformation = (transformationValue) => ({
|
|
41
31
|
sourceArrayExpression: transformationValue[ARRAY_ITEMS_PATH_PROPERTY_NAME],
|
|
42
32
|
itemTransformation: transformationValue[ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME],
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
};
|
|
48
|
-
var parseOmitTransformation = function (transformationValue) { return ({
|
|
33
|
+
});
|
|
34
|
+
const isOmitTransformation = (transformationValue) => has(transformationValue, OMIT_SOURCE_PROPERTY_NAME) &&
|
|
35
|
+
has(transformationValue, FIELDS_TO_OMIT_PROPERTY_NAME);
|
|
36
|
+
const parseOmitTransformation = (transformationValue) => ({
|
|
49
37
|
sourceExpression: transformationValue[OMIT_SOURCE_PROPERTY_NAME],
|
|
50
38
|
fieldsToOmit: transformationValue[FIELDS_TO_OMIT_PROPERTY_NAME],
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
return has(value, CONSTANT_VALUE_PROPERTY_NAME);
|
|
54
|
-
};
|
|
39
|
+
});
|
|
40
|
+
const isConstantExpression = (value) => has(value, CONSTANT_VALUE_PROPERTY_NAME);
|
|
55
41
|
export { extractIndexAndPath, getArgumentIndex, hasValidArgumentIndex, isArrayIndexString, isConstantExpression, isIdentityResponseTransformation, isInvalidJsonPath, isInvalidJsonValue, isJsonPathExpression, isMapArrayItemsTransformation, isOmitTransformation, isRootObjectIdentifier, isSimpleTransformation, isSpreadOperator, parseMapArrayItemsTransformation, parseOmitTransformation, stripJsonPathRootPrefix, };
|
|
56
42
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { JSON_PATH_ROOT } from './constants';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
return "$.".concat(responseMessageResultPath);
|
|
5
|
-
};
|
|
6
|
-
var transformations = {
|
|
2
|
+
const unwrap = ({ responseMessageResultPath }) => `$.${responseMessageResultPath}`;
|
|
3
|
+
const transformations = {
|
|
7
4
|
JS_SINGLE_ARG_UNCHANGED: '$[0]',
|
|
8
5
|
RESPONSE_OBJECT_UNCHANGED: JSON_PATH_ROOT,
|
|
9
6
|
ARRAY_ITEMS_PATH_PROPERTY_NAME: '@path',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/lib/transformations/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/lib/transformations/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,GAAG,CAAC,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAC/C,KAAK,yBAAyB,EAAE,CAAC;AAEnC,MAAM,eAAe,GAAG;IACtB,uBAAuB,EAAE,MAAM;IAC/B,yBAAyB,EAAE,cAAc;IACzC,8BAA8B,EAAE,OAAO;IACvC,uCAAuC,EAAE,qBAAqB;IAC9D,yBAAyB,EAAE,SAAS;IACpC,4BAA4B,EAAE,OAAO;IACrC,eAAe,EAAE,GAAG;IACpB,4BAA4B,EAAE,WAAW;CAC1C,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
const visitorTypes = {
|
|
2
2
|
TOP_LEVEL_SIMPLE_TRANSFORMATION: 'TopLevelSimpleTransformationExpression',
|
|
3
3
|
TOP_LEVEL_CUSTOM_FUNCTION: 'TopLevelCustomFunctionExpression',
|
|
4
4
|
NESTED_UNSUPPORTED_TRANSFORMATION: 'NestedUnsupportedTransformationExpression',
|
|
@@ -13,6 +13,6 @@ var visitorTypes = {
|
|
|
13
13
|
NESTED_OMIT_TRANSFORMATION: 'NestedOmit',
|
|
14
14
|
NESTED_CONSTANT_VALUE: 'NestedConstantValue',
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
const JSON_PATH_ROOT = '$';
|
|
17
17
|
export { JSON_PATH_ROOT, visitorTypes };
|
|
18
18
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/lib/transformations/constants.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/lib/transformations/constants.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG;IACnB,+BAA+B,EAAE,wCAAwC;IACzE,yBAAyB,EAAE,kCAAkC;IAC7D,iCAAiC,EAC/B,2CAA2C;IAC7C,oCAAoC,EAClC,6CAA6C;IAC/C,aAAa,EAAE,wBAAwB;IACvC,gBAAgB,EAAE,0BAA0B;IAC5C,eAAe,EAAE,0BAA0B;IAC3C,4BAA4B,EAAE,sCAAsC;IACpE,eAAe,EAAE,eAAe;IAChC,yBAAyB,EAAE,uBAAuB;IAClD,6BAA6B,EAAE,cAAc;IAC7C,0BAA0B,EAAE,YAAY;IACxC,qBAAqB,EAAE,qBAAqB;CAC7C,CAAC;AAEF,MAAM,cAAc,GAAG,GAAG,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -1,33 +1,30 @@
|
|
|
1
1
|
import { get, isString, trim } from 'lodash';
|
|
2
2
|
// eslint-disable-next-line max-len
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
const FUNCTION_CALL_EXPRESSION_REGEX = /^#(?<functionName>[a-zA-Z0-9]+(\.[a-zA-Z0-9]+)*)\((?<argumentExpressions>[\S ]*)\)$/;
|
|
4
|
+
const parseCustomFunctionCall = (functionCallExpression) => {
|
|
5
|
+
const match = functionCallExpression.match(FUNCTION_CALL_EXPRESSION_REGEX);
|
|
6
|
+
const argumentExpressions = get(match, 'groups.argumentExpressions', null);
|
|
7
7
|
return {
|
|
8
8
|
functionName: get(match, 'groups.functionName', null),
|
|
9
9
|
argumentExpressions: argumentExpressions === null
|
|
10
10
|
? argumentExpressions
|
|
11
11
|
: argumentExpressions
|
|
12
12
|
.split(',')
|
|
13
|
-
.filter(
|
|
13
|
+
.filter((s) => s)
|
|
14
14
|
.map(trim),
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var runCustomFunctionCallExpression = function (_a) {
|
|
21
|
-
var customFunctions = _a.customFunctions, functionName = _a.functionName, _b = _a.argumentValues, argumentValues = _b === void 0 ? [] : _b, transformationParentPath = _a.transformationParentPath;
|
|
22
|
-
var customFunction = get(customFunctions, functionName);
|
|
17
|
+
const isFunctionCallExpression = (expression) => isString(expression) && expression.startsWith('#');
|
|
18
|
+
const runCustomFunctionCallExpression = ({ customFunctions, functionName, argumentValues = [], transformationParentPath, }) => {
|
|
19
|
+
const customFunction = get(customFunctions, functionName);
|
|
23
20
|
if (!customFunction) {
|
|
24
|
-
throw new Error(
|
|
21
|
+
throw new Error(`unrecognized custom function "${functionName}"`);
|
|
25
22
|
}
|
|
26
23
|
try {
|
|
27
|
-
return customFunction
|
|
24
|
+
return customFunction(...argumentValues);
|
|
28
25
|
}
|
|
29
26
|
catch (error) {
|
|
30
|
-
throw new Error(
|
|
27
|
+
throw new Error(`Transforming ${transformationParentPath} failed, #${functionName} threw: "${error.message}" for arguments: ${JSON.stringify(argumentValues)}`);
|
|
31
28
|
}
|
|
32
29
|
};
|
|
33
30
|
export { isFunctionCallExpression, parseCustomFunctionCall, runCustomFunctionCallExpression, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-functions.js","sourceRoot":"","sources":["../../../../src/lib/transformations/custom-functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE7C,mCAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"custom-functions.js","sourceRoot":"","sources":["../../../../src/lib/transformations/custom-functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE7C,mCAAmC;AACnC,MAAM,8BAA8B,GAClC,qFAAqF,CAAC;AAExF,MAAM,uBAAuB,GAAG,CAAC,sBAAsB,EAAE,EAAE;IACzD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAE3E,MAAM,mBAAmB,GAAG,GAAG,CAAC,KAAK,EAAE,4BAA4B,EAAE,IAAI,CAAC,CAAC;IAE3E,OAAO;QACL,YAAY,EAAE,GAAG,CAAC,KAAK,EAAE,qBAAqB,EAAE,IAAI,CAAC;QACrD,mBAAmB,EACjB,mBAAmB,KAAK,IAAI;YAC1B,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,mBAAmB;iBAChB,KAAK,CAAC,GAAG,CAAC;iBACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;iBAChB,GAAG,CAAC,IAAI,CAAC;KACnB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,UAAU,EAAE,EAAE,CAC9C,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAErD,MAAM,+BAA+B,GAAG,CAAC,EACvC,eAAe,EACf,YAAY,EACZ,cAAc,GAAG,EAAE,EACnB,wBAAwB,GAMzB,EAAE,EAAE;IACH,MAAM,cAAc,GAAG,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAE1D,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,YAAY,GAAG,CAAC,CAAC;KACnE;IAED,IAAI;QACF,OAAO,cAAc,CAAC,GAAG,cAAc,CAAC,CAAC;KAC1C;IAAC,OAAO,KAAU,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,gBAAgB,wBAAwB,aAAa,YAAY,YAC/D,KAAK,CAAC,OACR,oBAAoB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CACrD,CAAC;KACH;AACH,CAAC,CAAC;AAEF,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,+BAA+B,GAChC,CAAC"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import { set } from 'lodash';
|
|
2
2
|
import { unwrap as buildResponseTransformation } from '../common';
|
|
3
|
-
|
|
4
|
-
var requestMessageEntityPath = _a.requestMessageEntityPath;
|
|
5
|
-
return set({}, requestMessageEntityPath, '$[0]');
|
|
6
|
-
};
|
|
3
|
+
const buildRequestTransformation = ({ requestMessageEntityPath }) => set({}, requestMessageEntityPath, '$[0]');
|
|
7
4
|
export { buildRequestTransformation, buildResponseTransformation };
|
|
8
5
|
//# sourceMappingURL=create.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAE,MAAM,IAAI,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElE,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAE,MAAM,IAAI,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElE,MAAM,0BAA0B,GAAG,CAAC,EAAE,wBAAwB,EAAE,EAAE,EAAE,CAClE,GAAG,CAAC,EAAE,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAC;AAE5C,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -1,25 +1,21 @@
|
|
|
1
1
|
import { segmentCount } from '@wix/motion-edm-autogen-common';
|
|
2
2
|
import { merge, set } from 'lodash';
|
|
3
3
|
import { transformations } from '../common';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
};
|
|
9
|
-
var buildRequestTransformation = function (_a) {
|
|
10
|
-
var _b;
|
|
11
|
-
var requestMessageIdentifierPath = _a.requestMessageIdentifierPath, requestMessageOptionsPath = _a.requestMessageOptionsPath;
|
|
12
|
-
var transformed = set({}, requestMessageIdentifierPath, '$[0]');
|
|
4
|
+
const { RESPONSE_OBJECT_UNCHANGED } = transformations;
|
|
5
|
+
const contains = (longerPath, shorterPath) => longerPath.startsWith(shorterPath) &&
|
|
6
|
+
segmentCount(longerPath) === segmentCount(shorterPath) + 1;
|
|
7
|
+
const buildRequestTransformation = ({ requestMessageIdentifierPath, requestMessageOptionsPath, }) => {
|
|
8
|
+
const transformed = set({}, requestMessageIdentifierPath, '$[0]');
|
|
13
9
|
if (requestMessageOptionsPath) {
|
|
14
10
|
if (contains(requestMessageIdentifierPath, requestMessageOptionsPath)) {
|
|
15
|
-
return merge(transformed,
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
return merge(transformed, {
|
|
12
|
+
[requestMessageOptionsPath]: { '*': '$[1]' },
|
|
13
|
+
});
|
|
18
14
|
}
|
|
19
15
|
return set(transformed, requestMessageOptionsPath, '$[1]');
|
|
20
16
|
}
|
|
21
17
|
return transformed;
|
|
22
18
|
};
|
|
23
|
-
|
|
19
|
+
const buildResponseTransformation = () => RESPONSE_OBJECT_UNCHANGED;
|
|
24
20
|
export { buildRequestTransformation, buildResponseTransformation };
|
|
25
21
|
//# sourceMappingURL=delete.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,EAAE,yBAAyB,EAAE,GAAG,eAAe,CAAC;AAEtD,MAAM,QAAQ,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,CAC3C,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC;IAClC,YAAY,CAAC,UAAU,CAAC,KAAK,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAE7D,MAAM,0BAA0B,GAAG,CAAC,EAClC,4BAA4B,EAC5B,yBAAyB,GAC1B,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,GAAG,CAAC,EAAE,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;IAElE,IAAI,yBAAyB,EAAE;QAC7B,IAAI,QAAQ,CAAC,4BAA4B,EAAE,yBAAyB,CAAC,EAAE;YACrE,OAAO,KAAK,CAAC,WAAW,EAAE;gBACxB,CAAC,yBAAyB,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;aAC7C,CAAC,CAAC;SACJ;QAED,OAAO,GAAG,CAAC,WAAW,EAAE,yBAAyB,EAAE,MAAM,CAAC,CAAC;KAC5D;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,GAAG,EAAE,CAAC,yBAAyB,CAAC;AAEpE,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import { set } from 'lodash';
|
|
2
2
|
import { unwrap as buildResponseTransformation } from '../common';
|
|
3
|
-
|
|
4
|
-
var requestMessageIdentifierPath = _a.requestMessageIdentifierPath;
|
|
5
|
-
return set({}, requestMessageIdentifierPath, '$[0]');
|
|
6
|
-
};
|
|
3
|
+
const buildRequestTransformation = ({ requestMessageIdentifierPath }) => set({}, requestMessageIdentifierPath, '$[0]');
|
|
7
4
|
export { buildRequestTransformation, buildResponseTransformation };
|
|
8
5
|
//# sourceMappingURL=get.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAE,MAAM,IAAI,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElE,
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAE,MAAM,IAAI,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElE,MAAM,0BAA0B,GAAG,CAAC,EAAE,4BAA4B,EAAE,EAAE,EAAE,CACtE,GAAG,CAAC,EAAE,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { transformations, unwrap as buildResponseTransformation, } from '../common';
|
|
2
|
-
|
|
3
|
-
return transformations.JS_SINGLE_ARG_UNCHANGED;
|
|
4
|
-
};
|
|
2
|
+
const buildRequestTransformation = () => transformations.JS_SINGLE_ARG_UNCHANGED;
|
|
5
3
|
export { buildRequestTransformation, buildResponseTransformation };
|
|
6
4
|
//# sourceMappingURL=list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/list.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,MAAM,IAAI,2BAA2B,GACtC,MAAM,WAAW,CAAC;AAEnB,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/list.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,MAAM,IAAI,2BAA2B,GACtC,MAAM,WAAW,CAAC;AAEnB,MAAM,0BAA0B,GAAG,GAAG,EAAE,CACtC,eAAe,CAAC,uBAAuB,CAAC;AAE1C,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -1,28 +1,21 @@
|
|
|
1
1
|
import { constants } from '@wix/motion-edm-autogen-common';
|
|
2
2
|
import { transformations } from '../common';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
? (_c = {},
|
|
21
|
-
_c[ARRAY_ITEMS_PATH_PROPERTY_NAME] = "$.".concat(responseMessageResultPath),
|
|
22
|
-
_c[ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME] = itemTransformation,
|
|
23
|
-
_c) : "$.".concat(responseMessageResultPath),
|
|
24
|
-
_b[PAGING_METADATA_RESULT_PROPERTY_NAME] = "$.".concat(responseMessagePagingMetadataPath),
|
|
25
|
-
_b);
|
|
26
|
-
};
|
|
3
|
+
const { ARRAY_ITEMS_PATH_PROPERTY_NAME, ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME, } = transformations;
|
|
4
|
+
const { DEFAULT_REQUEST_QUERY_OBJECT_PROPERTY_NAME } = constants;
|
|
5
|
+
const ITEMS_RESULT_PROPERTY_NAME = 'items';
|
|
6
|
+
const PAGING_METADATA_RESULT_PROPERTY_NAME = 'pagingMetadata';
|
|
7
|
+
const buildRequestTransformation = ({ requestQueryObjectPropertyName = DEFAULT_REQUEST_QUERY_OBJECT_PROPERTY_NAME, } = {}) => ({
|
|
8
|
+
[requestQueryObjectPropertyName]: '$[0]',
|
|
9
|
+
'*': '$[1]',
|
|
10
|
+
});
|
|
11
|
+
const buildResponseTransformation = ({ responseMessageResultPath, responseMessagePagingMetadataPath, itemTransformation, }) => ({
|
|
12
|
+
[ITEMS_RESULT_PROPERTY_NAME]: itemTransformation
|
|
13
|
+
? {
|
|
14
|
+
[ARRAY_ITEMS_PATH_PROPERTY_NAME]: `$.${responseMessageResultPath}`,
|
|
15
|
+
[ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME]: itemTransformation,
|
|
16
|
+
}
|
|
17
|
+
: `$.${responseMessageResultPath}`,
|
|
18
|
+
[PAGING_METADATA_RESULT_PROPERTY_NAME]: `$.${responseMessagePagingMetadataPath}`,
|
|
19
|
+
});
|
|
27
20
|
export { buildRequestTransformation, buildResponseTransformation, ITEMS_RESULT_PROPERTY_NAME, PAGING_METADATA_RESULT_PROPERTY_NAME, };
|
|
28
21
|
//# sourceMappingURL=query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,EACJ,8BAA8B,EAC9B,uCAAuC,GACxC,GAAG,eAAe,CAAC;AACpB,MAAM,EAAE,0CAA0C,EAAE,GAAG,SAAS,CAAC;AAEjE,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAC3C,MAAM,oCAAoC,GAAG,gBAAgB,CAAC;AAE9D,MAAM,0BAA0B,GAAG,CAAC,EAClC,8BAA8B,GAAG,0CAA0C,GAC5E,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IACV,CAAC,8BAA8B,CAAC,EAAE,MAAM;IACxC,GAAG,EAAE,MAAM;CACZ,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,CAAC,EACnC,yBAAyB,EACzB,iCAAiC,EACjC,kBAAkB,GACnB,EAAE,EAAE,CAAC,CAAC;IACL,CAAC,0BAA0B,CAAC,EAAE,kBAAkB;QAC9C,CAAC,CAAC;YACE,CAAC,8BAA8B,CAAC,EAAE,KAAK,yBAAyB,EAAE;YAClE,CAAC,uCAAuC,CAAC,EAAE,kBAAkB;SAC9D;QACH,CAAC,CAAC,KAAK,yBAAyB,EAAE;IACpC,CAAC,oCAAoC,CAAC,EAAE,KAAK,iCAAiC,EAAE;CACjF,CAAC,CAAC;AAEH,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,oCAAoC,GACrC,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { merge, set } from 'lodash';
|
|
2
2
|
import { unwrap as buildResponseTransformation } from '../common';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var transformation = objectWithNestedPath("".concat(requestMessageEntityPath, ".").concat(requestMessageEntityIdentifierField), '$[0]');
|
|
3
|
+
const objectWithNestedPath = (path, value) => set({}, path, value);
|
|
4
|
+
const buildRequestTransformation = ({ requestMessageEntityIdentifierField, requestMessageEntityPath, requestMessageOptionsPath, }) => {
|
|
5
|
+
const transformation = objectWithNestedPath(`${requestMessageEntityPath}.${requestMessageEntityIdentifierField}`, '$[0]');
|
|
7
6
|
if (requestMessageOptionsPath) {
|
|
8
7
|
if (requestMessageOptionsPath === requestMessageEntityPath) {
|
|
9
8
|
return merge(transformation, objectWithNestedPath(requestMessageOptionsPath, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,MAAM,IAAI,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElE,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/lib/transformations/preset/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,MAAM,IAAI,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElE,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAEnE,MAAM,0BAA0B,GAAG,CAAC,EAClC,mCAAmC,EACnC,wBAAwB,EACxB,yBAAyB,GAC1B,EAAE,EAAE;IACH,MAAM,cAAc,GAAG,oBAAoB,CACzC,GAAG,wBAAwB,IAAI,mCAAmC,EAAE,EACpE,MAAM,CACP,CAAC;IAEF,IAAI,yBAAyB,EAAE;QAC7B,IAAI,yBAAyB,KAAK,wBAAwB,EAAE;YAC1D,OAAO,KAAK,CACV,cAAc,EACd,oBAAoB,CAAC,yBAAyB,EAAE;gBAC9C,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;aACtB,CAAC,CACH,CAAC;SACH;QAED,GAAG,CAAC,cAAc,EAAE,yBAAyB,EAAE,MAAM,CAAC,CAAC;KACxD;IAED,OAAO,KAAK,CACV,EAAE,EACF,cAAc,EACd,oBAAoB,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAChE,CAAC;AACJ,CAAC,CAAC;AAEF,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -4,49 +4,39 @@ import { isConstantExpression, isJsonPathExpression, isMapArrayItemsTransformati
|
|
|
4
4
|
import { transformations } from './common';
|
|
5
5
|
import { visitorTypes } from './constants';
|
|
6
6
|
import { isFunctionCallExpression, parseCustomFunctionCall, } from './custom-functions';
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
const { ARRAY_ITEMS_PATH_PROPERTY_NAME, ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME, OMIT_SOURCE_PROPERTY_NAME, FIELDS_TO_OMIT_PROPERTY_NAME, CONSTANT_VALUE_PROPERTY_NAME, } = transformations;
|
|
8
|
+
const { TOP_LEVEL_SIMPLE_TRANSFORMATION, TOP_LEVEL_CUSTOM_FUNCTION, TOP_LEVEL_SPREAD, NESTED_SPREAD, NESTED_UNSUPPORTED_TRANSFORMATION, TOP_LEVEL_UNSUPPORTED_TRANSFORMATION, CUSTOM_FUNCTION, NESTED_SIMPLE_TRANSFORMATION, MAP_ARRAY_ITEMS, TOP_LEVEL_MAP_ARRAY_ITEMS, TOP_LEVEL_OMIT_TRANSFORMATION, NESTED_OMIT_TRANSFORMATION, NESTED_CONSTANT_VALUE, } = visitorTypes;
|
|
9
|
+
const safeResolveDefaultExport = (module) => {
|
|
10
|
+
const isEsModule = module && module.__esModule && module.default;
|
|
11
11
|
return isEsModule ? module.default : module;
|
|
12
12
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const deepForEach = safeResolveDefaultExport(deepForEachModule);
|
|
14
|
+
const withoutSpreadOperatorKeys = (obj) => Object.keys(obj).filter((k) => !isSpreadOperator(k));
|
|
15
|
+
const safeInvokeVisitor = (visitors, name, ...args) => {
|
|
16
|
+
const visitor = get(visitors, name);
|
|
17
|
+
return visitor && visitor(...args);
|
|
16
18
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
25
|
-
var reduceComplexTransformation = function (transformation, _a) {
|
|
26
|
-
var visitors = _a.visitors, accumulator = _a.accumulator;
|
|
27
|
-
var terminalPaths = [];
|
|
28
|
-
var addTerminals = function (path, leaves) {
|
|
29
|
-
if (leaves === void 0) { leaves = []; }
|
|
30
|
-
return leaves.length > 0
|
|
31
|
-
? leaves.forEach(function (leaf) { return terminalPaths.push([path, leaf].join('.')); })
|
|
32
|
-
: terminalPaths.push(path);
|
|
33
|
-
};
|
|
34
|
-
deepForEach(transformation, function (value, key, _, path) {
|
|
35
|
-
if (some(terminalPaths, function (tp) { return path.startsWith(tp); })) {
|
|
19
|
+
const reduceComplexTransformation = (transformation, { visitors, accumulator }) => {
|
|
20
|
+
const terminalPaths = [];
|
|
21
|
+
const addTerminals = (path, leaves = []) => leaves.length > 0
|
|
22
|
+
? leaves.forEach((leaf) => terminalPaths.push([path, leaf].join('.')))
|
|
23
|
+
: terminalPaths.push(path);
|
|
24
|
+
deepForEach(transformation, (value, key, _, path) => {
|
|
25
|
+
if (some(terminalPaths, (tp) => path.startsWith(tp))) {
|
|
36
26
|
return;
|
|
37
27
|
}
|
|
38
28
|
if (isSpreadOperator(key)) {
|
|
39
29
|
addTerminals(path);
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
values.forEach(
|
|
43
|
-
if (
|
|
44
|
-
|
|
30
|
+
const spreadOperatorParentPath = path.replace(/\.?\*/, '');
|
|
31
|
+
const values = !isArray(value) ? [value] : value;
|
|
32
|
+
values.forEach((item) => {
|
|
33
|
+
if (spreadOperatorParentPath === '') {
|
|
34
|
+
const siblingKeys = withoutSpreadOperatorKeys(transformation);
|
|
45
35
|
safeInvokeVisitor(visitors, TOP_LEVEL_SPREAD, accumulator, item, siblingKeys);
|
|
46
36
|
}
|
|
47
37
|
else {
|
|
48
|
-
|
|
49
|
-
safeInvokeVisitor(visitors, NESTED_SPREAD, accumulator,
|
|
38
|
+
const siblingKeys = withoutSpreadOperatorKeys(get(transformation, spreadOperatorParentPath));
|
|
39
|
+
safeInvokeVisitor(visitors, NESTED_SPREAD, accumulator, spreadOperatorParentPath, item, siblingKeys);
|
|
50
40
|
}
|
|
51
41
|
});
|
|
52
42
|
return;
|
|
@@ -56,7 +46,7 @@ var reduceComplexTransformation = function (transformation, _a) {
|
|
|
56
46
|
OMIT_SOURCE_PROPERTY_NAME,
|
|
57
47
|
FIELDS_TO_OMIT_PROPERTY_NAME,
|
|
58
48
|
]);
|
|
59
|
-
|
|
49
|
+
const { sourceExpression, fieldsToOmit } = parseOmitTransformation(value);
|
|
60
50
|
safeInvokeVisitor(visitors, NESTED_OMIT_TRANSFORMATION, accumulator, path, sourceExpression, fieldsToOmit);
|
|
61
51
|
return;
|
|
62
52
|
}
|
|
@@ -65,20 +55,20 @@ var reduceComplexTransformation = function (transformation, _a) {
|
|
|
65
55
|
ARRAY_ITEMS_PATH_PROPERTY_NAME,
|
|
66
56
|
ARRAY_ITEM_TRANSFORMATION_PROPERTY_NAME,
|
|
67
57
|
]);
|
|
68
|
-
|
|
58
|
+
const { sourceArrayExpression, itemTransformation } = parseMapArrayItemsTransformation(value);
|
|
69
59
|
safeInvokeVisitor(visitors, MAP_ARRAY_ITEMS, accumulator, path, sourceArrayExpression, itemTransformation);
|
|
70
60
|
return;
|
|
71
61
|
}
|
|
72
62
|
if (isFunctionCallExpression(value)) {
|
|
73
|
-
|
|
63
|
+
const { functionName, argumentExpressions } = parseCustomFunctionCall(value);
|
|
74
64
|
safeInvokeVisitor(visitors, CUSTOM_FUNCTION, accumulator, path, functionName, argumentExpressions, value);
|
|
75
65
|
return;
|
|
76
66
|
}
|
|
77
67
|
if (isConstantExpression(value)) {
|
|
78
68
|
addTerminals(path, [CONSTANT_VALUE_PROPERTY_NAME]);
|
|
79
69
|
safeInvokeVisitor(visitors, NESTED_CONSTANT_VALUE, {
|
|
80
|
-
accumulator
|
|
81
|
-
path
|
|
70
|
+
accumulator,
|
|
71
|
+
path,
|
|
82
72
|
value: value[CONSTANT_VALUE_PROPERTY_NAME],
|
|
83
73
|
});
|
|
84
74
|
return;
|
|
@@ -94,14 +84,13 @@ var reduceComplexTransformation = function (transformation, _a) {
|
|
|
94
84
|
});
|
|
95
85
|
return accumulator;
|
|
96
86
|
};
|
|
97
|
-
|
|
98
|
-
var visitors = _a.visitors, accumulator = _a.accumulator;
|
|
87
|
+
const reduceTransformation = (transformation, { visitors, accumulator }) => {
|
|
99
88
|
if (isSimpleTransformation(transformation)) {
|
|
100
89
|
switch (true) {
|
|
101
90
|
case isJsonPathExpression(transformation):
|
|
102
91
|
return safeInvokeVisitor(visitors, TOP_LEVEL_SIMPLE_TRANSFORMATION, transformation);
|
|
103
92
|
case isFunctionCallExpression(transformation): {
|
|
104
|
-
|
|
93
|
+
const { functionName, argumentExpressions } = parseCustomFunctionCall(transformation);
|
|
105
94
|
return safeInvokeVisitor(visitors, TOP_LEVEL_CUSTOM_FUNCTION, functionName, argumentExpressions, transformation);
|
|
106
95
|
}
|
|
107
96
|
default:
|
|
@@ -109,14 +98,14 @@ var reduceTransformation = function (transformation, _a) {
|
|
|
109
98
|
}
|
|
110
99
|
}
|
|
111
100
|
if (isOmitTransformation(transformation)) {
|
|
112
|
-
|
|
101
|
+
const { sourceExpression, fieldsToOmit } = parseOmitTransformation(transformation);
|
|
113
102
|
return safeInvokeVisitor(visitors, TOP_LEVEL_OMIT_TRANSFORMATION, sourceExpression, fieldsToOmit);
|
|
114
103
|
}
|
|
115
104
|
if (isMapArrayItemsTransformation(transformation)) {
|
|
116
|
-
|
|
105
|
+
const { sourceArrayExpression, itemTransformation } = parseMapArrayItemsTransformation(transformation);
|
|
117
106
|
return safeInvokeVisitor(visitors, TOP_LEVEL_MAP_ARRAY_ITEMS, sourceArrayExpression, itemTransformation);
|
|
118
107
|
}
|
|
119
|
-
return reduceComplexTransformation(transformation, { visitors
|
|
108
|
+
return reduceComplexTransformation(transformation, { visitors, accumulator });
|
|
120
109
|
};
|
|
121
110
|
export { reduceTransformation };
|
|
122
111
|
//# sourceMappingURL=reduceTransformation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reduceTransformation.js","sourceRoot":"","sources":["../../../../src/lib/transformations/reduceTransformation.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEtD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,gCAAgC,EAChC,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"reduceTransformation.js","sourceRoot":"","sources":["../../../../src/lib/transformations/reduceTransformation.ts"],"names":[],"mappings":"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"}
|