mock-config-server 3.0.1 → 3.1.1
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/LICENSE +21 -21
- package/README.md +614 -502
- package/dist/bin/bin.js +8 -3
- package/dist/bin/build.js +51 -45
- package/dist/bin/cli.js +37 -44
- package/dist/bin/helpers/index.js +36 -17
- package/dist/bin/helpers/resolveConfigFile.js +20 -17
- package/dist/bin/helpers/resolveConfigFilePath.js +12 -35
- package/dist/bin/helpers/resolveExportsFromSourceCode.js +11 -8
- package/dist/bin/resolveConfigFilePath/resolveConfigFilePath.js +12 -35
- package/dist/bin/run.js +17 -12
- package/dist/bin/validateMockServerConfig/helpers/index.js +25 -16
- package/dist/bin/validateMockServerConfig/helpers/isCheckModeValid/index.js +14 -15
- package/dist/bin/validateMockServerConfig/helpers/isCheckModeValid/isCheckModeValid.js +8 -6
- package/dist/bin/validateMockServerConfig/helpers/isDescriptorValueValid/index.js +14 -15
- package/dist/bin/validateMockServerConfig/helpers/isDescriptorValueValid/isDescriptorValueValid.js +15 -18
- package/dist/bin/validateMockServerConfig/validateBaseUrl/validateBaseUrl.js +12 -9
- package/dist/bin/validateMockServerConfig/validateCors/validateCors.js +75 -73
- package/dist/bin/validateMockServerConfig/validateDatabaseConfig/validateDatabaseConfig.d.ts +1 -0
- package/dist/bin/validateMockServerConfig/validateDatabaseConfig/validateDatabaseConfig.js +45 -0
- package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateGraphqlConfig.js +47 -43
- package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateRoutes/validateRoutes.js +90 -83
- package/dist/bin/validateMockServerConfig/validateInterceptors/validateInterceptors.js +22 -16
- package/dist/bin/validateMockServerConfig/validateMockServerConfig.js +29 -27
- package/dist/bin/validateMockServerConfig/validatePort/validatePort.js +9 -6
- package/dist/bin/validateMockServerConfig/validateRestConfig/validateRestConfig.js +52 -47
- package/dist/bin/validateMockServerConfig/validateRestConfig/validateRoutes/validateRoutes.js +94 -87
- package/dist/bin/validateMockServerConfig/validateStaticPath/validateStaticPath.js +43 -34
- package/dist/index.js +14 -15
- package/dist/src/core/database/createDatabaseRoutes/createDatabaseRoutes.d.ts +3 -0
- package/dist/src/core/database/createDatabaseRoutes/createDatabaseRoutes.js +33 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/createNewId/createNewId.d.ts +4 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/createNewId/createNewId.js +16 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/findIndexById/findIndexById.d.ts +4 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/findIndexById/findIndexById.js +8 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/index.d.ts +3 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/index.js +38 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/isIndex/isIndex.d.ts +1 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/array/isIndex/isIndex.js +8 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/createNestedDatabaseRoutes/createNestedDatabaseRoutes.d.ts +4 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/createNestedDatabaseRoutes/createNestedDatabaseRoutes.js +88 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/createRewrittenDatabaseRoutes/createRewrittenDatabaseRoutes.d.ts +2 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/createRewrittenDatabaseRoutes/createRewrittenDatabaseRoutes.js +12 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/createShallowDatabaseRoutes/createShallowDatabaseRoutes.d.ts +4 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/createShallowDatabaseRoutes/createShallowDatabaseRoutes.js +38 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/index.d.ts +5 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/index.js +60 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/splitDatabaseByNesting/splitDatabaseByNesting.d.ts +5 -0
- package/dist/src/core/database/createDatabaseRoutes/helpers/splitDatabaseByNesting/splitDatabaseByNesting.js +30 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/File/FileStorage.d.ts +11 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/File/FileStorage.js +64 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/File/FileWriter.d.ts +11 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/File/FileWriter.js +58 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/Memory/MemoryStorage.d.ts +10 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/Memory/MemoryStorage.js +54 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/index.d.ts +2 -0
- package/dist/src/core/database/createDatabaseRoutes/storages/index.js +27 -0
- package/dist/src/core/database/index.d.ts +1 -0
- package/dist/src/core/database/index.js +16 -0
- package/dist/src/core/graphql/createGraphQLRoutes/createGraphQLRoutes.js +96 -83
- package/dist/src/core/graphql/createGraphQLRoutes/helpers/index.js +14 -15
- package/dist/src/core/graphql/createGraphQLRoutes/helpers/prepareGraphQLRequestConfigs/prepareGraphQLRequestConfigs.js +36 -30
- package/dist/src/core/graphql/index.js +14 -15
- package/dist/src/core/middlewares/cookieParseMiddleware/cookieParseMiddleware.js +15 -13
- package/dist/src/core/middlewares/cookieParseMiddleware/helpers/index.js +14 -15
- package/dist/src/core/middlewares/cookieParseMiddleware/helpers/parseCookie/parseCookie.js +16 -14
- package/dist/src/core/middlewares/corsMiddleware/corsMiddleware.js +48 -41
- package/dist/src/core/middlewares/corsMiddleware/helpers/getAllowedOrigins/getAllowedOrigins.js +13 -10
- package/dist/src/core/middlewares/corsMiddleware/helpers/index.js +14 -15
- package/dist/src/core/middlewares/destroyerMiddleware/destroyerMiddleware.js +21 -18
- package/dist/src/core/middlewares/errorMiddleware/errorMiddleware.js +18 -15
- package/dist/src/core/middlewares/index.js +92 -23
- package/dist/src/core/middlewares/noCorsMiddleware/noCorsMiddleware.js +21 -21
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/getGraphqlUrlSuggestions/getGraphqlUrlSuggestions.js +24 -16
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/getLevenshteinDistance/getLevenshteinDistance.js +78 -74
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/getRestUrlSuggestions.js +36 -31
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/getActualRestUrlMeaningfulString/getActualRestUrlMeaningfulString.js +6 -5
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/getPatternRestUrlMeaningfulString/getPatternRestUrlMeaningfulString.js +6 -3
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/index.js +25 -16
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/index.js +36 -17
- package/dist/src/core/middlewares/notFoundMiddleware/notFoundMiddleware.js +63 -48
- package/dist/src/core/middlewares/requestInterceptorMiddleware/requestInterceptorMiddleware.js +13 -7
- package/dist/src/core/middlewares/staticMiddleware/staticMiddleware.js +26 -25
- package/dist/src/core/rest/createRestRoutes/createRestRoutes.js +71 -56
- package/dist/src/core/rest/createRestRoutes/helpers/index.js +14 -15
- package/dist/src/core/rest/createRestRoutes/helpers/prepareRestRequestConfigs/prepareRestRequestConfigs.js +38 -32
- package/dist/src/core/rest/index.js +14 -15
- package/dist/src/index.js +36 -17
- package/dist/src/server/createMockServer/createMockServer.js +74 -53
- package/dist/src/server/index.js +25 -16
- package/dist/src/server/startMockServer/startMockServer.js +20 -17
- package/dist/src/static/views/assets/icons/scheme-dark.svg +3 -3
- package/dist/src/static/views/assets/icons/scheme-light.svg +3 -3
- package/dist/src/static/views/assets/styles/global.css +88 -88
- package/dist/src/static/views/components/header/index.css +55 -55
- package/dist/src/static/views/components/header/index.ejs +39 -39
- package/dist/src/static/views/components/header/index.js +1 -1
- package/dist/src/static/views/features/scheme/dark.css +12 -12
- package/dist/src/static/views/features/scheme/index.ejs +3 -3
- package/dist/src/static/views/features/scheme/index.js +31 -31
- package/dist/src/static/views/features/scheme/light.css +12 -12
- package/dist/src/static/views/features/tab/index.css +30 -30
- package/dist/src/static/views/features/tab/index.ejs +1 -1
- package/dist/src/static/views/features/tab/index.js +12 -12
- package/dist/src/static/views/pages/404/index.css +10 -10
- package/dist/src/static/views/pages/404/index.ejs +84 -84
- package/dist/src/utils/constants/appPath.js +6 -2
- package/dist/src/utils/constants/checkModes.js +21 -30
- package/dist/src/utils/constants/default.js +15 -11
- package/dist/src/utils/constants/index.js +36 -17
- package/dist/src/utils/helpers/asyncHandler.js +6 -3
- package/dist/src/utils/helpers/config/index.js +14 -15
- package/dist/src/utils/helpers/config/resolveEntityValues/resolveEntityValues.js +109 -122
- package/dist/src/utils/helpers/entities/convertToEntityDescriptor/convertToEntityDescriptor.js +10 -6
- package/dist/src/utils/helpers/entities/index.js +25 -16
- package/dist/src/utils/helpers/entities/isEntityDescriptor/isEntityDescriptor.js +7 -4
- package/dist/src/utils/helpers/graphql/getGraphQLInput/getGraphQLInput.js +28 -18
- package/dist/src/utils/helpers/graphql/index.js +36 -17
- package/dist/src/utils/helpers/graphql/parseGraphQLRequest/parseGraphQLRequest.js +11 -9
- package/dist/src/utils/helpers/graphql/parseQuery/parseQuery.js +20 -17
- package/dist/src/utils/helpers/index.js +114 -25
- package/dist/src/utils/helpers/interceptors/callRequestInterceptor/callRequestInterceptor.js +22 -16
- package/dist/src/utils/helpers/interceptors/callResponseInterceptors/callResponseInterceptors.js +56 -48
- package/dist/src/utils/helpers/interceptors/helpers/setDelay.js +8 -5
- package/dist/src/utils/helpers/interceptors/index.js +25 -16
- package/dist/src/utils/helpers/isPlainObject/isPlainObject.js +6 -6
- package/dist/src/utils/helpers/isPrimitive/isPrimitive.js +6 -3
- package/dist/src/utils/helpers/isRegExp/isRegExp.js +6 -3
- package/dist/src/utils/helpers/sleep.js +7 -4
- package/dist/src/utils/helpers/url/convertWin32PathToUnix/convertWin32PathToUnix.js +6 -6
- package/dist/src/utils/helpers/url/getUrlParts/getUrlParts.js +7 -4
- package/dist/src/utils/helpers/url/index.js +47 -18
- package/dist/src/utils/helpers/url/removeLeadingAndTrailingSlashes/removeLeadingAndTrailingSlashes.js +6 -3
- package/dist/src/utils/helpers/url/urlJoin/urlJoin.js +11 -10
- package/dist/src/utils/types/checkModes.js +1 -2
- package/dist/src/utils/types/database.d.ts +6 -0
- package/dist/src/utils/types/database.js +1 -0
- package/dist/src/utils/types/graphql.js +1 -2
- package/dist/src/utils/types/index.d.ts +1 -0
- package/dist/src/utils/types/index.js +80 -20
- package/dist/src/utils/types/interceptors.js +1 -2
- package/dist/src/utils/types/rest.js +1 -2
- package/dist/src/utils/types/server.d.ts +5 -0
- package/dist/src/utils/types/server.js +1 -2
- package/dist/src/utils/types/values.js +1 -2
- package/package.json +130 -113
|
@@ -1,131 +1,118 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.resolveEntityValues = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
var _flat = require("flat");
|
|
8
|
+
var _constants = require("../../../constants");
|
|
9
|
+
var _isPlainObject = require("../../isPlainObject/isPlainObject");
|
|
10
|
+
var _isPrimitive = require("../../isPrimitive/isPrimitive");
|
|
11
|
+
var _isRegExp = require("../../isRegExp/isRegExp");
|
|
9
12
|
const checkFunction = (checkMode, actualValue, descriptorValue) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if (checkMode === 'notIncludes')
|
|
30
|
-
return !actualValueString.includes(descriptorValueString);
|
|
31
|
-
if (checkMode === 'startsWith')
|
|
32
|
-
return actualValueString.startsWith(descriptorValueString);
|
|
33
|
-
if (checkMode === 'notStartsWith')
|
|
34
|
-
return !actualValueString.startsWith(descriptorValueString);
|
|
35
|
-
if (checkMode === 'endsWith')
|
|
36
|
-
return actualValueString.endsWith(descriptorValueString);
|
|
37
|
-
if (checkMode === 'notEndsWith')
|
|
38
|
-
return !actualValueString.endsWith(descriptorValueString);
|
|
39
|
-
throw new Error('Wrong checkMode');
|
|
13
|
+
if (checkMode === 'function' && typeof descriptorValue === 'function') return descriptorValue(actualValue, checkFunction);
|
|
14
|
+
const actualValueString = String(actualValue);
|
|
15
|
+
if (checkMode === 'regExp' && (0, _isRegExp.isRegExp)(descriptorValue)) return descriptorValue.test(actualValueString);
|
|
16
|
+
const isActualValueUndefined = typeof actualValue === 'undefined';
|
|
17
|
+
if (checkMode === 'exists') return !isActualValueUndefined;
|
|
18
|
+
if (checkMode === 'notExists') return isActualValueUndefined;
|
|
19
|
+
|
|
20
|
+
// ✅ important:
|
|
21
|
+
// cast values to string for ignore types of values
|
|
22
|
+
const descriptorValueString = String(descriptorValue);
|
|
23
|
+
if (checkMode === 'equals') return actualValueString === descriptorValueString;
|
|
24
|
+
if (checkMode === 'notEquals') return actualValueString !== descriptorValueString;
|
|
25
|
+
if (checkMode === 'includes') return actualValueString.includes(descriptorValueString);
|
|
26
|
+
if (checkMode === 'notIncludes') return !actualValueString.includes(descriptorValueString);
|
|
27
|
+
if (checkMode === 'startsWith') return actualValueString.startsWith(descriptorValueString);
|
|
28
|
+
if (checkMode === 'notStartsWith') return !actualValueString.startsWith(descriptorValueString);
|
|
29
|
+
if (checkMode === 'endsWith') return actualValueString.endsWith(descriptorValueString);
|
|
30
|
+
if (checkMode === 'notEndsWith') return !actualValueString.endsWith(descriptorValueString);
|
|
31
|
+
throw new Error('Wrong checkMode');
|
|
40
32
|
};
|
|
41
33
|
const resolveEntityValues = (checkMode, actualValue, descriptorValue) => {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if (
|
|
55
|
-
|
|
56
|
-
return descriptorValue.every((descriptorValueElement) => checkFunction(checkMode, actualValue, descriptorValueElement));
|
|
57
|
-
}
|
|
58
|
-
return descriptorValue.some((descriptorValueElement) => checkFunction(checkMode, actualValue, descriptorValueElement));
|
|
34
|
+
if (checkMode === 'function') return descriptorValue(actualValue, checkFunction);
|
|
35
|
+
if (checkMode === 'exists' || checkMode === 'notExists') return checkFunction(checkMode, actualValue, descriptorValue);
|
|
36
|
+
|
|
37
|
+
// ✅ actual: primitive, descriptor: primitive
|
|
38
|
+
const isActualValuePrimitive = (0, _isPrimitive.isPrimitive)(actualValue);
|
|
39
|
+
const isDescriptorValuePrimitive = (0, _isPrimitive.isPrimitive)(descriptorValue);
|
|
40
|
+
if (isActualValuePrimitive && isDescriptorValuePrimitive) return checkFunction(checkMode, actualValue, descriptorValue);
|
|
41
|
+
|
|
42
|
+
// ✅ actual: primitive, descriptor: array
|
|
43
|
+
const isDescriptorValueArray = Array.isArray(descriptorValue);
|
|
44
|
+
const isNegativeCheckMode = _constants.NEGATION_CHECK_MODES.includes(checkMode);
|
|
45
|
+
if (isActualValuePrimitive && isDescriptorValueArray) {
|
|
46
|
+
if (isNegativeCheckMode) {
|
|
47
|
+
return descriptorValue.every(descriptorValueElement => checkFunction(checkMode, actualValue, descriptorValueElement));
|
|
59
48
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
49
|
+
return descriptorValue.some(descriptorValueElement => checkFunction(checkMode, actualValue, descriptorValueElement));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// ✅ actual: primitive, descriptor: object => skip
|
|
53
|
+
const isDescriptorValueObject = (0, _isPlainObject.isPlainObject)(descriptorValue) || (0, _isRegExp.isRegExp)(descriptorValue);
|
|
54
|
+
if (isActualValuePrimitive && isDescriptorValueObject) {
|
|
55
|
+
if (checkMode === 'regExp') return checkFunction(checkMode, actualValue, descriptorValue);
|
|
56
|
+
// ✅ important: resolving primitive with object make no sense
|
|
57
|
+
return isNegativeCheckMode;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// ✅ actual: array, descriptor: primitive => skip
|
|
61
|
+
const isActualValueArray = Array.isArray(actualValue);
|
|
62
|
+
// ✅ important: resolving array with primitive make no sense
|
|
63
|
+
if (isActualValueArray && isDescriptorValuePrimitive) return isNegativeCheckMode;
|
|
64
|
+
|
|
65
|
+
// ✅ actual: array, descriptor: array
|
|
66
|
+
if (isActualValueArray && isDescriptorValueArray) {
|
|
67
|
+
if (actualValue.length !== descriptorValue.length) return isNegativeCheckMode;
|
|
68
|
+
const flattenActualValue = (0, _flat.flatten)(actualValue);
|
|
69
|
+
const flattenDescriptorValue = (0, _flat.flatten)(descriptorValue);
|
|
70
|
+
if (Object.keys(flattenActualValue).length === Object.keys(flattenDescriptorValue).length) return Object.keys(flattenDescriptorValue).every(flattenDescriptorValueKey => checkFunction(checkMode, flattenActualValue[flattenDescriptorValueKey], flattenDescriptorValue[flattenDescriptorValueKey]));
|
|
71
|
+
return isNegativeCheckMode;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// ✅ actual: array, descriptor: object => skip
|
|
75
|
+
if (isActualValueArray && isDescriptorValueObject) {
|
|
76
|
+
if (checkMode === 'regExp') return actualValue.some(actualValueElement => checkFunction(checkMode, actualValueElement, descriptorValue));
|
|
77
|
+
// ✅ important: resolving array with object make no sense
|
|
78
|
+
return isNegativeCheckMode;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// ✅ actual: object, descriptor: primitive => skip
|
|
82
|
+
const isActualValueObject = (0, _isPlainObject.isPlainObject)(actualValue);
|
|
83
|
+
// ✅ important: resolving object with primitive make no sense
|
|
84
|
+
if (isActualValueObject && isDescriptorValuePrimitive) return isNegativeCheckMode;
|
|
85
|
+
|
|
86
|
+
// ✅ actual: object, descriptor: array
|
|
87
|
+
if (isActualValueObject && isDescriptorValueArray) {
|
|
88
|
+
// ✅ important: any object can not pass RegExp check
|
|
89
|
+
if (checkMode === 'regExp') return false;
|
|
90
|
+
const flattenActualValue = (0, _flat.flatten)(actualValue);
|
|
91
|
+
if (isNegativeCheckMode) {
|
|
92
|
+
return descriptorValue.every(descriptorValueElement => {
|
|
93
|
+
const flattenDescriptorValue = (0, _flat.flatten)(descriptorValueElement);
|
|
94
|
+
if (Object.keys(flattenActualValue).length !== Object.keys(flattenDescriptorValue).length) return isNegativeCheckMode;
|
|
95
|
+
return Object.keys(flattenActualValue).every(flattenActualValueKey => checkFunction(checkMode, flattenActualValue[flattenActualValueKey], flattenDescriptorValue[flattenActualValueKey]));
|
|
96
|
+
});
|
|
67
97
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
if (isActualValueArray && isDescriptorValueObject) {
|
|
85
|
-
if (checkMode === 'regExp')
|
|
86
|
-
return actualValue.some((actualValueElement) => checkFunction(checkMode, actualValueElement, descriptorValue));
|
|
87
|
-
// ✅ important: resolving array with object make no sense
|
|
88
|
-
return isNegativeCheckMode;
|
|
89
|
-
}
|
|
90
|
-
// ✅ actual: object, descriptor: primitive => skip
|
|
91
|
-
const isActualValueObject = (0, isPlainObject_1.isPlainObject)(actualValue);
|
|
92
|
-
// ✅ important: resolving object with primitive make no sense
|
|
93
|
-
if (isActualValueObject && isDescriptorValuePrimitive)
|
|
94
|
-
return isNegativeCheckMode;
|
|
95
|
-
// ✅ actual: object, descriptor: array
|
|
96
|
-
if (isActualValueObject && isDescriptorValueArray) {
|
|
97
|
-
// ✅ important: any object can not pass RegExp check
|
|
98
|
-
if (checkMode === 'regExp')
|
|
99
|
-
return false;
|
|
100
|
-
const flattenActualValue = (0, flat_1.flatten)(actualValue);
|
|
101
|
-
if (isNegativeCheckMode) {
|
|
102
|
-
return descriptorValue.every((descriptorValueElement) => {
|
|
103
|
-
const flattenDescriptorValue = (0, flat_1.flatten)(descriptorValueElement);
|
|
104
|
-
if (Object.keys(flattenActualValue).length !== Object.keys(flattenDescriptorValue).length)
|
|
105
|
-
return isNegativeCheckMode;
|
|
106
|
-
return Object.keys(flattenActualValue).every((flattenActualValueKey) => checkFunction(checkMode, flattenActualValue[flattenActualValueKey], flattenDescriptorValue[flattenActualValueKey]));
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
return descriptorValue.some((descriptorValueElement) => {
|
|
110
|
-
const flattenDescriptorValue = (0, flat_1.flatten)(descriptorValueElement);
|
|
111
|
-
if (Object.keys(flattenActualValue).length !== Object.keys(flattenDescriptorValue).length)
|
|
112
|
-
return isNegativeCheckMode;
|
|
113
|
-
return Object.keys(flattenActualValue).every((flattenActualValueKey) => checkFunction(checkMode, flattenActualValue[flattenActualValueKey], flattenDescriptorValue[flattenActualValueKey]));
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
// ✅ actual: object, descriptor: object
|
|
117
|
-
if (isActualValueObject && isDescriptorValueObject) {
|
|
118
|
-
// ✅ important: any object can not pass RegExp check
|
|
119
|
-
if (checkMode === 'regExp')
|
|
120
|
-
return false;
|
|
121
|
-
const flattenActualValue = (0, flat_1.flatten)(actualValue);
|
|
122
|
-
const flattenDescriptorValue = (0, flat_1.flatten)(descriptorValue);
|
|
123
|
-
if (Object.keys(flattenActualValue).length !== Object.keys(flattenDescriptorValue).length)
|
|
124
|
-
return isNegativeCheckMode;
|
|
125
|
-
if (isNegativeCheckMode) {
|
|
126
|
-
return Object.keys(flattenDescriptorValue).some((flattenDescriptorValueKey) => checkFunction(checkMode, flattenActualValue[flattenDescriptorValueKey], flattenDescriptorValue[flattenDescriptorValueKey]));
|
|
127
|
-
}
|
|
128
|
-
return Object.keys(flattenDescriptorValue).every((flattenDescriptorValueKey) => checkFunction(checkMode, flattenActualValue[flattenDescriptorValueKey], flattenDescriptorValue[flattenDescriptorValueKey]));
|
|
98
|
+
return descriptorValue.some(descriptorValueElement => {
|
|
99
|
+
const flattenDescriptorValue = (0, _flat.flatten)(descriptorValueElement);
|
|
100
|
+
if (Object.keys(flattenActualValue).length !== Object.keys(flattenDescriptorValue).length) return isNegativeCheckMode;
|
|
101
|
+
return Object.keys(flattenActualValue).every(flattenActualValueKey => checkFunction(checkMode, flattenActualValue[flattenActualValueKey], flattenDescriptorValue[flattenActualValueKey]));
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// ✅ actual: object, descriptor: object
|
|
106
|
+
if (isActualValueObject && isDescriptorValueObject) {
|
|
107
|
+
// ✅ important: any object can not pass RegExp check
|
|
108
|
+
if (checkMode === 'regExp') return false;
|
|
109
|
+
const flattenActualValue = (0, _flat.flatten)(actualValue);
|
|
110
|
+
const flattenDescriptorValue = (0, _flat.flatten)(descriptorValue);
|
|
111
|
+
if (Object.keys(flattenActualValue).length !== Object.keys(flattenDescriptorValue).length) return isNegativeCheckMode;
|
|
112
|
+
if (isNegativeCheckMode) {
|
|
113
|
+
return Object.keys(flattenDescriptorValue).some(flattenDescriptorValueKey => checkFunction(checkMode, flattenActualValue[flattenDescriptorValueKey], flattenDescriptorValue[flattenDescriptorValueKey]));
|
|
129
114
|
}
|
|
115
|
+
return Object.keys(flattenDescriptorValue).every(flattenDescriptorValueKey => checkFunction(checkMode, flattenActualValue[flattenDescriptorValueKey], flattenDescriptorValue[flattenDescriptorValueKey]));
|
|
116
|
+
}
|
|
130
117
|
};
|
|
131
|
-
exports.resolveEntityValues = resolveEntityValues;
|
|
118
|
+
exports.resolveEntityValues = resolveEntityValues;
|
package/dist/src/utils/helpers/entities/convertToEntityDescriptor/convertToEntityDescriptor.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.convertToEntityDescriptor = void 0;
|
|
4
|
-
|
|
5
|
-
const convertToEntityDescriptor =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
var _isEntityDescriptor = require("../isEntityDescriptor/isEntityDescriptor");
|
|
8
|
+
const convertToEntityDescriptor = valueOrDescriptor => (0, _isEntityDescriptor.isEntityDescriptor)(valueOrDescriptor) ? valueOrDescriptor : {
|
|
9
|
+
checkMode: 'equals',
|
|
10
|
+
value: valueOrDescriptor
|
|
11
|
+
};
|
|
12
|
+
exports.convertToEntityDescriptor = convertToEntityDescriptor;
|
|
@@ -1,18 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _convertToEntityDescriptor = require("./convertToEntityDescriptor/convertToEntityDescriptor");
|
|
7
|
+
Object.keys(_convertToEntityDescriptor).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _convertToEntityDescriptor[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _convertToEntityDescriptor[key];
|
|
7
14
|
}
|
|
8
|
-
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _isEntityDescriptor = require("./isEntityDescriptor/isEntityDescriptor");
|
|
18
|
+
Object.keys(_isEntityDescriptor).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _isEntityDescriptor[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _isEntityDescriptor[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.isEntityDescriptor = void 0;
|
|
4
|
-
|
|
5
|
-
const isEntityDescriptor =
|
|
6
|
-
exports.isEntityDescriptor = isEntityDescriptor;
|
|
7
|
+
var _isPlainObject = require("../../isPlainObject/isPlainObject");
|
|
8
|
+
const isEntityDescriptor = value => (0, _isPlainObject.isPlainObject)(value) && 'checkMode' in value;
|
|
9
|
+
exports.isEntityDescriptor = isEntityDescriptor;
|
|
@@ -1,21 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.getGraphQLInput = void 0;
|
|
4
|
-
const getGraphQLInput =
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
7
|
+
const getGraphQLInput = request => {
|
|
8
|
+
if (request.method === 'GET') {
|
|
9
|
+
var _ref;
|
|
10
|
+
const {
|
|
11
|
+
query,
|
|
12
|
+
variables
|
|
13
|
+
} = request.query;
|
|
14
|
+
return {
|
|
15
|
+
query: query === null || query === void 0 ? void 0 : query.toString(),
|
|
16
|
+
variables: JSON.parse((_ref = variables) !== null && _ref !== void 0 ? _ref : '{}')
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
if (request.method === 'POST') {
|
|
20
|
+
const {
|
|
21
|
+
query,
|
|
22
|
+
variables
|
|
23
|
+
} = request.body;
|
|
24
|
+
return {
|
|
25
|
+
query,
|
|
26
|
+
variables: variables !== null && variables !== void 0 ? variables : {}
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
throw new Error('Not allowed request method for graphql request');
|
|
20
30
|
};
|
|
21
|
-
exports.getGraphQLInput = getGraphQLInput;
|
|
31
|
+
exports.getGraphQLInput = getGraphQLInput;
|
|
@@ -1,19 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _parseGraphQLRequest = require("./parseGraphQLRequest/parseGraphQLRequest");
|
|
7
|
+
Object.keys(_parseGraphQLRequest).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _parseGraphQLRequest[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _parseGraphQLRequest[key];
|
|
7
14
|
}
|
|
8
|
-
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _parseQuery = require("./parseQuery/parseQuery");
|
|
18
|
+
Object.keys(_parseQuery).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _parseQuery[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _parseQuery[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
var _getGraphQLInput = require("./getGraphQLInput/getGraphQLInput");
|
|
29
|
+
Object.keys(_getGraphQLInput).forEach(function (key) {
|
|
30
|
+
if (key === "default" || key === "__esModule") return;
|
|
31
|
+
if (key in exports && exports[key] === _getGraphQLInput[key]) return;
|
|
32
|
+
Object.defineProperty(exports, key, {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function () {
|
|
35
|
+
return _getGraphQLInput[key];
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
});
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.parseGraphQLRequest = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const parseGraphQLRequest =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
return (0, parseQuery_1.parseQuery)(graphQLInput.query);
|
|
7
|
+
var _getGraphQLInput = require("../getGraphQLInput/getGraphQLInput");
|
|
8
|
+
var _parseQuery = require("../parseQuery/parseQuery");
|
|
9
|
+
const parseGraphQLRequest = request => {
|
|
10
|
+
const graphQLInput = (0, _getGraphQLInput.getGraphQLInput)(request);
|
|
11
|
+
if (!graphQLInput.query) return null;
|
|
12
|
+
return (0, _parseQuery.parseQuery)(graphQLInput.query);
|
|
11
13
|
};
|
|
12
|
-
exports.parseGraphQLRequest = parseGraphQLRequest;
|
|
14
|
+
exports.parseGraphQLRequest = parseGraphQLRequest;
|
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.parseQuery = void 0;
|
|
4
|
-
|
|
5
|
-
const parseDocumentNode =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
var _graphql = require("graphql");
|
|
8
|
+
const parseDocumentNode = node => {
|
|
9
|
+
var _operationDefinition$, _operationDefinition$2;
|
|
10
|
+
const operationDefinition = node.definitions.find(definition => definition.kind === 'OperationDefinition');
|
|
11
|
+
return {
|
|
12
|
+
operationType: operationDefinition.operation,
|
|
13
|
+
operationName: (_operationDefinition$ = (_operationDefinition$2 = operationDefinition.name) === null || _operationDefinition$2 === void 0 ? void 0 : _operationDefinition$2.value) !== null && _operationDefinition$ !== void 0 ? _operationDefinition$ : ''
|
|
14
|
+
};
|
|
11
15
|
};
|
|
12
|
-
const parseQuery =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
16
|
+
const parseQuery = query => {
|
|
17
|
+
try {
|
|
18
|
+
const document = (0, _graphql.parse)(query);
|
|
19
|
+
return parseDocumentNode(document);
|
|
20
|
+
} catch {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
20
23
|
};
|
|
21
|
-
exports.parseQuery = parseQuery;
|
|
24
|
+
exports.parseQuery = parseQuery;
|