@cap-js/process 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +135 -10
- package/dist/lib/api/process-api-client.js.map +1 -1
- package/dist/lib/build/constants.js +9 -1
- package/dist/lib/build/constants.js.map +1 -1
- package/dist/lib/build/plugin.js +67 -71
- package/dist/lib/build/plugin.js.map +1 -1
- package/dist/lib/build/validation-utils.js +2 -2
- package/dist/lib/build/validation-utils.js.map +1 -1
- package/dist/lib/build/validations.js +44 -34
- package/dist/lib/build/validations.js.map +1 -1
- package/dist/lib/constants.js +24 -32
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/handlers/annotationCache.js +30 -20
- package/dist/lib/handlers/annotationCache.js.map +1 -1
- package/dist/lib/handlers/annotationHandlers.js +13 -17
- package/dist/lib/handlers/annotationHandlers.js.map +1 -1
- package/dist/lib/handlers/index.js +2 -7
- package/dist/lib/handlers/index.js.map +1 -1
- package/dist/lib/handlers/onDeleteUtils.js +5 -48
- package/dist/lib/handlers/onDeleteUtils.js.map +1 -1
- package/dist/lib/handlers/processActionHandler.js +42 -32
- package/dist/lib/handlers/processActionHandler.js.map +1 -1
- package/dist/lib/handlers/processCancel.js +3 -16
- package/dist/lib/handlers/processCancel.js.map +1 -1
- package/dist/lib/handlers/processResume.js +3 -16
- package/dist/lib/handlers/processResume.js.map +1 -1
- package/dist/lib/handlers/processStart.js +136 -75
- package/dist/lib/handlers/processStart.js.map +1 -1
- package/dist/lib/handlers/processSuspend.js +3 -16
- package/dist/lib/handlers/processSuspend.js.map +1 -1
- package/dist/lib/handlers/utils.js +3 -0
- package/dist/lib/handlers/utils.js.map +1 -1
- package/dist/lib/processImport/csnBuilder.js +196 -0
- package/dist/lib/processImport/csnBuilder.js.map +1 -0
- package/dist/lib/processImport/index.js +178 -0
- package/dist/lib/processImport/index.js.map +1 -0
- package/dist/lib/processImport/rawWorkflowConverter.js +148 -0
- package/dist/lib/processImport/rawWorkflowConverter.js.map +1 -0
- package/dist/lib/processImport/schemaMapper.js +200 -0
- package/dist/lib/processImport/schemaMapper.js.map +1 -0
- package/dist/lib/processImport/utils.js +33 -0
- package/dist/lib/processImport/utils.js.map +1 -0
- package/dist/lib/processImportRegistration.js +5 -1
- package/dist/lib/processImportRegistration.js.map +1 -1
- package/dist/lib/shared/annotations-helper.js +98 -0
- package/dist/lib/shared/annotations-helper.js.map +1 -0
- package/dist/lib/shared/businessKey-helper.js +1 -0
- package/dist/lib/shared/businessKey-helper.js.map +1 -1
- package/package.json +5 -3
- package/dist/lib/processImport.js +0 -450
- package/dist/lib/processImport.js.map +0 -1
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.validateAllowedAnnotations = validateAllowedAnnotations;
|
|
7
7
|
exports.validateOnAnnotation = validateOnAnnotation;
|
|
8
8
|
exports.validateIfAnnotation = validateIfAnnotation;
|
|
9
|
+
exports.validateBusinessKeyForProcessStart = validateBusinessKeyForProcessStart;
|
|
9
10
|
exports.validateBusinessKeyAnnotation = validateBusinessKeyAnnotation;
|
|
10
11
|
exports.validateCascadeAnnotation = validateCascadeAnnotation;
|
|
11
12
|
exports.validateRequiredStartAnnotations = validateRequiredStartAnnotations;
|
|
@@ -13,9 +14,8 @@ exports.validateIdAnnotation = validateIdAnnotation;
|
|
|
13
14
|
exports.validateRequiredGenericAnnotations = validateRequiredGenericAnnotations;
|
|
14
15
|
exports.validateInputTypes = validateInputTypes;
|
|
15
16
|
const cds_1 = __importDefault(require("@sap/cds"));
|
|
16
|
-
const constants_1 = require("../constants");
|
|
17
17
|
const validation_utils_1 = require("./validation-utils");
|
|
18
|
-
const
|
|
18
|
+
const constants_1 = require("./constants");
|
|
19
19
|
const Plugin = cds_1.default.build?.Plugin;
|
|
20
20
|
const ERROR = Plugin?.ERROR;
|
|
21
21
|
const WARNING = Plugin?.WARNING;
|
|
@@ -23,66 +23,76 @@ const VALID_EVENTS = ['CREATE', 'READ', 'UPDATE', 'DELETE', '*'];
|
|
|
23
23
|
function validateAllowedAnnotations(allowedAnnotations, def, entityName, annotationPrefix, buildPlugin) {
|
|
24
24
|
for (const key of Object.keys(def)) {
|
|
25
25
|
if (key.startsWith(annotationPrefix + '.') && !allowedAnnotations.includes(key)) {
|
|
26
|
-
buildPlugin.pushMessage((0,
|
|
26
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_UNKNOWN_ANNOTATION)(entityName, key, allowedAnnotations), WARNING);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
function validateOnAnnotation(def, entityName, annotationOn, buildPlugin) {
|
|
31
31
|
if (typeof def[annotationOn] !== 'string') {
|
|
32
|
-
buildPlugin.pushMessage((0,
|
|
32
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_ANNOTATION_MUST_BE_STRING)(entityName, annotationOn), ERROR);
|
|
33
33
|
}
|
|
34
34
|
const actions = def.actions ? Object.keys(def.actions) : [];
|
|
35
35
|
const annotationValue = def[annotationOn];
|
|
36
36
|
if (!VALID_EVENTS.includes(annotationValue) && !actions.includes(annotationValue)) {
|
|
37
|
-
buildPlugin.pushMessage((0,
|
|
37
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_ANNOTATION_MUST_BE_EVENT_OR_ACTION)(entityName, annotationOn), ERROR);
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
function validateIfAnnotation(def, entityName, annotationIf, buildPlugin) {
|
|
41
41
|
const ifExpr = def[annotationIf];
|
|
42
42
|
if (!ifExpr || !ifExpr['='] || !ifExpr['xpr']) {
|
|
43
|
-
buildPlugin.pushMessage((0,
|
|
43
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_IF_MUST_BE_EXPRESSION)(entityName, annotationIf), ERROR);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
function
|
|
47
|
-
const bKeyExpr = def[
|
|
46
|
+
function validateBusinessKeyForProcessStart(def, entityName, businessKeyAnnotation, buildPlugin) {
|
|
47
|
+
const bKeyExpr = def[businessKeyAnnotation];
|
|
48
|
+
if (!bKeyExpr) {
|
|
49
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_BUSINESS_KEY_NOT_FOUND)(entityName, businessKeyAnnotation), WARNING);
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
if (!bKeyExpr['='] || (!bKeyExpr['xpr'] && !bKeyExpr['ref'])) {
|
|
53
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_BUSINESS_KEY_MUST_BE_EXPRESSION)(entityName, businessKeyAnnotation), WARNING);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function validateBusinessKeyAnnotation(def, entityName, businessKeyAnnotation, buildPlugin) {
|
|
58
|
+
const bKeyExpr = def[businessKeyAnnotation];
|
|
48
59
|
if (!bKeyExpr || !bKeyExpr['='] || (!bKeyExpr['xpr'] && !bKeyExpr['ref'])) {
|
|
49
|
-
buildPlugin.pushMessage((0,
|
|
60
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_BUSINESS_KEY_MUST_BE_EXPRESSION)(entityName, businessKeyAnnotation), ERROR);
|
|
50
61
|
}
|
|
51
62
|
}
|
|
52
63
|
function validateCascadeAnnotation(def, entityName, annotationCascade, buildPlugin) {
|
|
53
64
|
if (typeof def[annotationCascade] !== 'boolean') {
|
|
54
|
-
buildPlugin.pushMessage((0,
|
|
65
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_CASCADE_MUST_BE_BOOLEAN)(entityName, annotationCascade), ERROR);
|
|
55
66
|
}
|
|
56
67
|
}
|
|
57
|
-
function validateRequiredStartAnnotations(hasOn, hasId, entityName, buildPlugin) {
|
|
68
|
+
function validateRequiredStartAnnotations(hasOn, hasId, entityName, annotationOn, annotationId, buildPlugin) {
|
|
58
69
|
if (hasOn && !hasId) {
|
|
59
|
-
buildPlugin.pushMessage((0,
|
|
70
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_START_ON_REQUIRES_ID)(entityName, annotationOn, annotationId), ERROR);
|
|
60
71
|
}
|
|
61
72
|
if (hasId && !hasOn) {
|
|
62
|
-
buildPlugin.pushMessage((0,
|
|
73
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_START_ID_REQUIRES_ON)(entityName, annotationId, annotationOn), ERROR);
|
|
63
74
|
}
|
|
64
75
|
}
|
|
65
|
-
function validateIdAnnotation(def, entityName, processDef, buildPlugin) {
|
|
66
|
-
if (typeof def[
|
|
67
|
-
buildPlugin.pushMessage((0,
|
|
76
|
+
function validateIdAnnotation(def, entityName, annotationId, processDef, buildPlugin) {
|
|
77
|
+
if (typeof def[annotationId] !== 'string') {
|
|
78
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_START_ID_MUST_BE_STRING)(entityName, annotationId), ERROR);
|
|
68
79
|
}
|
|
69
80
|
if (!processDef) {
|
|
70
|
-
buildPlugin.pushMessage((0,
|
|
81
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_NO_PROCESS_DEFINITION)(entityName, annotationId, def[annotationId]), WARNING);
|
|
71
82
|
}
|
|
72
83
|
}
|
|
73
|
-
function validateRequiredGenericAnnotations(hasOn,
|
|
74
|
-
//
|
|
75
|
-
if (
|
|
76
|
-
buildPlugin.pushMessage((0,
|
|
84
|
+
function validateRequiredGenericAnnotations(hasOn, entityName, annotationOn, annotationPrefix, hasBusinessKey, buildPlugin) {
|
|
85
|
+
// .on is required
|
|
86
|
+
if (!hasOn) {
|
|
87
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_ON_REQUIRED)(entityName, annotationPrefix, annotationOn), ERROR);
|
|
77
88
|
}
|
|
78
|
-
// If .on is defined
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
buildPlugin.pushMessage((0, constants_2.ERROR_BUSINESS_KEY_REQUIRED)(entityName, annotationPrefix), ERROR);
|
|
89
|
+
// If .on is defined, businessKey must exist
|
|
90
|
+
if (hasOn && !hasBusinessKey) {
|
|
91
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_BUSINESS_KEY_REQUIRED)(entityName, annotationPrefix), ERROR);
|
|
82
92
|
}
|
|
83
93
|
}
|
|
84
|
-
function validateInputTypes(buildPlugin, entityName, def, processDef, allDefinitions) {
|
|
85
|
-
const parsedEntries = (0, validation_utils_1.getParsedInputEntries)(def);
|
|
94
|
+
function validateInputTypes(buildPlugin, entityName, def, processDef, allDefinitions, inputsAnnotationKey, idAnnotationKey) {
|
|
95
|
+
const parsedEntries = (0, validation_utils_1.getParsedInputEntries)(def, inputsAnnotationKey);
|
|
86
96
|
const elements = def.elements ?? {};
|
|
87
97
|
const entityContext = (0, validation_utils_1.createCsnEntityContext)(elements, allDefinitions || {});
|
|
88
98
|
// entity attributes from inputs array annotation
|
|
@@ -91,7 +101,7 @@ function validateInputTypes(buildPlugin, entityName, def, processDef, allDefinit
|
|
|
91
101
|
const processDefInputs = (0, validation_utils_1.getProcessDefInputsAndTypes)(processDef, allDefinitions || {});
|
|
92
102
|
validateInputPathsExist(buildPlugin, entityName, parsedEntries, entityContext);
|
|
93
103
|
// Compare entity attributes against process definition inputs
|
|
94
|
-
validateInputsMatch(buildPlugin, entityName, entityAttributes, processDefInputs, def[
|
|
104
|
+
validateInputsMatch(buildPlugin, entityName, entityAttributes, processDefInputs, def[idAnnotationKey]);
|
|
95
105
|
}
|
|
96
106
|
function validateInputPathsExist(buildPlugin, entityName, parsedEntries, entityContext) {
|
|
97
107
|
if (!parsedEntries) {
|
|
@@ -111,7 +121,7 @@ function validateInputPathsExist(buildPlugin, entityName, parsedEntries, entityC
|
|
|
111
121
|
if (!element) {
|
|
112
122
|
// Element doesn't exist - push warning
|
|
113
123
|
const fullPath = '$self.' + entry.path.slice(0, i + 1).join('.');
|
|
114
|
-
buildPlugin.pushMessage((0,
|
|
124
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_INPUT_PATH_NOT_IN_ENTITY)(entityName, fullPath), WARNING);
|
|
115
125
|
break; // Stop validating further segments of this path
|
|
116
126
|
}
|
|
117
127
|
// Move to target entity context for next segment (if association/composition)
|
|
@@ -136,7 +146,7 @@ function validateInputsMatch(buildPlugin, entityName, entityAttributes, processD
|
|
|
136
146
|
else {
|
|
137
147
|
// Entity sends extra attributes the process doesn't define - warn, don't fail.
|
|
138
148
|
// The process will simply ignore unknown inputs.
|
|
139
|
-
buildPlugin.pushMessage((0,
|
|
149
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_ATTRIBUTE_NOT_IN_PROCESS_DEF)(entityName, fullKey, processDefId), WARNING);
|
|
140
150
|
}
|
|
141
151
|
}
|
|
142
152
|
// Check for process inputs that are missing from entity attributes
|
|
@@ -146,7 +156,7 @@ function validateInputsMatch(buildPlugin, entityName, entityAttributes, processD
|
|
|
146
156
|
const processInput = processDefInputs[key];
|
|
147
157
|
if (!(key in entityAttributes)) {
|
|
148
158
|
if (processInput.isMandatory) {
|
|
149
|
-
buildPlugin.pushMessage((0,
|
|
159
|
+
buildPlugin.pushMessage((0, constants_1.ERROR_MISSING_MANDATORY_PROCESS_INPUT)(entityName, processDefId, fullKey), ERROR);
|
|
150
160
|
}
|
|
151
161
|
// Optional inputs that are missing are fine - no error needed
|
|
152
162
|
}
|
|
@@ -160,13 +170,13 @@ function validateElementTypeMatch(buildPlugin, entityName, key, entityType, proc
|
|
|
160
170
|
// Check if mandatory flag is compatible
|
|
161
171
|
// Process input is mandatory but entity attribute is not
|
|
162
172
|
if (processType.isMandatory && !entityType.isMandatory) {
|
|
163
|
-
buildPlugin.pushMessage((0,
|
|
173
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_MANDATORY_MISMATCH)(entityName, key, processDefId), WARNING);
|
|
164
174
|
}
|
|
165
175
|
// Check array mismatch
|
|
166
176
|
const entityIsArray = entityType.isArray === true;
|
|
167
177
|
const processIsArray = processType.isArray === true;
|
|
168
178
|
if (entityIsArray !== processIsArray) {
|
|
169
|
-
buildPlugin.pushMessage((0,
|
|
179
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_ARRAY_MISMATCH)(entityName, key, entityIsArray, processIsArray), WARNING);
|
|
170
180
|
}
|
|
171
181
|
// Check base type compatibility
|
|
172
182
|
// For associations/compositions, we compare the target type or allow structural compatibility
|
|
@@ -175,7 +185,7 @@ function validateElementTypeMatch(buildPlugin, entityName, key, entityType, proc
|
|
|
175
185
|
// Skip type mismatch check for association/composition types when comparing with complex types
|
|
176
186
|
const isEntityAssociationOrComposition = entityBaseType === 'cds.Association' || entityBaseType === 'cds.Composition';
|
|
177
187
|
if (!isEntityAssociationOrComposition && entityBaseType !== processBaseType) {
|
|
178
|
-
buildPlugin.pushMessage((0,
|
|
188
|
+
buildPlugin.pushMessage((0, constants_1.WARNING_TYPE_MISMATCH)(entityName, key, entityBaseType, processBaseType), WARNING);
|
|
179
189
|
}
|
|
180
190
|
// Recursively validate nested properties if both have them
|
|
181
191
|
if (entityType.properties && processType.properties) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../lib/build/validations.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../lib/build/validations.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.PROCESS_DEFINITION_ID = exports.PROCESS_RESUME_EVENT = exports.PROCESS_SUSPEND_EVENT = exports.PROCESS_CANCEL_EVENT = exports.PROCESS_START_EVENT = exports.PROCESS_PREFIX = exports.BUILD_PREFIX = exports.PROCESS_RESUME_IF = exports.PROCESS_RESUME_CASCADE = exports.PROCESS_RESUME_ON = exports.PROCESS_SUSPEND_IF = exports.PROCESS_SUSPEND_CASCADE = exports.PROCESS_SUSPEND_ON = exports.PROCESS_CANCEL_IF = exports.PROCESS_CANCEL_CASCADE = exports.PROCESS_CANCEL_ON = exports.PROCESS_START_INPUTS = exports.PROCESS_START_IF = exports.PROCESS_START_ON = exports.PROCESS_START_ID = exports.SUFFIX_INPUTS = exports.SUFFIX_CASCADE = exports.SUFFIX_IF = exports.SUFFIX_ON = exports.SUFFIX_ID = exports.PROCESS_RESUME = exports.PROCESS_SUSPEND = exports.PROCESS_CANCEL = exports.PROCESS_START = exports.BUSINESS_KEY_ALIAS = exports.BUSINESS_KEY_MAX_LENGTH = exports.BUSINESS_KEY = exports.CUD_EVENTS = exports.PROCESS_LOGGER_PREFIX = exports.PROCESS_SERVICE = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Process Service
|
|
6
6
|
*/
|
|
@@ -23,34 +23,36 @@ exports.BUSINESS_KEY_MAX_LENGTH = 255;
|
|
|
23
23
|
*/
|
|
24
24
|
exports.BUSINESS_KEY_ALIAS = 'as businessKey';
|
|
25
25
|
/**
|
|
26
|
-
* Process
|
|
26
|
+
* Process annotation base prefixes
|
|
27
27
|
*/
|
|
28
28
|
exports.PROCESS_START = '@bpm.process.start';
|
|
29
|
-
exports.PROCESS_START_ID = '@bpm.process.start.id';
|
|
30
|
-
exports.PROCESS_START_ON = '@bpm.process.start.on';
|
|
31
|
-
exports.PROCESS_START_IF = '@bpm.process.start.if';
|
|
32
|
-
exports.PROCESS_START_INPUTS = '@bpm.process.start.inputs';
|
|
33
|
-
/**
|
|
34
|
-
* Process Cancel Annotations
|
|
35
|
-
*/
|
|
36
29
|
exports.PROCESS_CANCEL = '@bpm.process.cancel';
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
39
|
-
exports.PROCESS_CANCEL_IF = '@bpm.process.cancel.if';
|
|
30
|
+
exports.PROCESS_SUSPEND = '@bpm.process.suspend';
|
|
31
|
+
exports.PROCESS_RESUME = '@bpm.process.resume';
|
|
40
32
|
/**
|
|
41
|
-
*
|
|
33
|
+
* Annotation property suffixes.
|
|
42
34
|
*/
|
|
43
|
-
exports.
|
|
44
|
-
exports.
|
|
45
|
-
exports.
|
|
46
|
-
exports.
|
|
35
|
+
exports.SUFFIX_ID = '.id';
|
|
36
|
+
exports.SUFFIX_ON = '.on';
|
|
37
|
+
exports.SUFFIX_IF = '.if';
|
|
38
|
+
exports.SUFFIX_CASCADE = '.cascade';
|
|
39
|
+
exports.SUFFIX_INPUTS = '.inputs';
|
|
47
40
|
/**
|
|
48
|
-
*
|
|
41
|
+
* Derived full-path annotation keys (unqualified).
|
|
49
42
|
*/
|
|
50
|
-
exports.
|
|
51
|
-
exports.
|
|
52
|
-
exports.
|
|
53
|
-
exports.
|
|
43
|
+
exports.PROCESS_START_ID = `${exports.PROCESS_START}${exports.SUFFIX_ID}`;
|
|
44
|
+
exports.PROCESS_START_ON = `${exports.PROCESS_START}${exports.SUFFIX_ON}`;
|
|
45
|
+
exports.PROCESS_START_IF = `${exports.PROCESS_START}${exports.SUFFIX_IF}`;
|
|
46
|
+
exports.PROCESS_START_INPUTS = `${exports.PROCESS_START}${exports.SUFFIX_INPUTS}`;
|
|
47
|
+
exports.PROCESS_CANCEL_ON = `${exports.PROCESS_CANCEL}${exports.SUFFIX_ON}`;
|
|
48
|
+
exports.PROCESS_CANCEL_CASCADE = `${exports.PROCESS_CANCEL}${exports.SUFFIX_CASCADE}`;
|
|
49
|
+
exports.PROCESS_CANCEL_IF = `${exports.PROCESS_CANCEL}${exports.SUFFIX_IF}`;
|
|
50
|
+
exports.PROCESS_SUSPEND_ON = `${exports.PROCESS_SUSPEND}${exports.SUFFIX_ON}`;
|
|
51
|
+
exports.PROCESS_SUSPEND_CASCADE = `${exports.PROCESS_SUSPEND}${exports.SUFFIX_CASCADE}`;
|
|
52
|
+
exports.PROCESS_SUSPEND_IF = `${exports.PROCESS_SUSPEND}${exports.SUFFIX_IF}`;
|
|
53
|
+
exports.PROCESS_RESUME_ON = `${exports.PROCESS_RESUME}${exports.SUFFIX_ON}`;
|
|
54
|
+
exports.PROCESS_RESUME_CASCADE = `${exports.PROCESS_RESUME}${exports.SUFFIX_CASCADE}`;
|
|
55
|
+
exports.PROCESS_RESUME_IF = `${exports.PROCESS_RESUME}${exports.SUFFIX_IF}`;
|
|
54
56
|
/**
|
|
55
57
|
* Annotation prefix for filtering
|
|
56
58
|
*/
|
|
@@ -65,14 +67,4 @@ exports.PROCESS_CANCEL_EVENT = '@Process.CancelEvent';
|
|
|
65
67
|
exports.PROCESS_SUSPEND_EVENT = '@Process.SuspendEvent';
|
|
66
68
|
exports.PROCESS_RESUME_EVENT = '@Process.ResumeEvent';
|
|
67
69
|
exports.PROCESS_DEFINITION_ID = '@Process.DefinitionId';
|
|
68
|
-
/**
|
|
69
|
-
* Log Messages
|
|
70
|
-
*/
|
|
71
|
-
exports.LOG_MESSAGES = {
|
|
72
|
-
PROCESS_NOT_STARTED: 'Not starting process as start condition(s) are not met.',
|
|
73
|
-
NO_PROCESS_INPUTS_DEFINED: 'No process start input annotations defined, fetching entire entity row for process start context.',
|
|
74
|
-
PROCESS_NOT_SUSPENDED: 'Not suspending process as suspend condition(s) are not met.',
|
|
75
|
-
PROCESS_NOT_RESUMED: 'Not resuming process as resume condition(s) are not met.',
|
|
76
|
-
PROCESS_NOT_CANCELLED: 'Not canceling process as cancel condition(s) are not met.',
|
|
77
|
-
};
|
|
78
70
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,eAAe,GAAG,gBAAyB,CAAC;AAEzD;;GAEG;AACU,QAAA,qBAAqB,GAAG,SAAkB,CAAC;AAExD;;GAEG;AACU,QAAA,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAElE;;GAEG;AACU,QAAA,YAAY,GAAG,0BAAmC,CAAC;AACnD,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C;;GAEG;AACU,QAAA,kBAAkB,GAAG,gBAAyB,CAAC;AAE5D;;GAEG;AACU,QAAA,aAAa,GAAG,oBAA6B,CAAC;AAC9C,QAAA,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,eAAe,GAAG,gBAAyB,CAAC;AAEzD;;GAEG;AACU,QAAA,qBAAqB,GAAG,SAAkB,CAAC;AAExD;;GAEG;AACU,QAAA,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAElE;;GAEG;AACU,QAAA,YAAY,GAAG,0BAAmC,CAAC;AACnD,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C;;GAEG;AACU,QAAA,kBAAkB,GAAG,gBAAyB,CAAC;AAE5D;;GAEG;AACU,QAAA,aAAa,GAAG,oBAA6B,CAAC;AAC9C,QAAA,cAAc,GAAG,qBAA8B,CAAC;AAChD,QAAA,eAAe,GAAG,sBAA+B,CAAC;AAClD,QAAA,cAAc,GAAG,qBAA8B,CAAC;AAE7D;;GAEG;AACU,QAAA,SAAS,GAAG,KAAc,CAAC;AAC3B,QAAA,SAAS,GAAG,KAAc,CAAC;AAC3B,QAAA,SAAS,GAAG,KAAc,CAAC;AAC3B,QAAA,cAAc,GAAG,UAAmB,CAAC;AACrC,QAAA,aAAa,GAAG,SAAkB,CAAC;AAEhD;;GAEG;AACU,QAAA,gBAAgB,GAAG,GAAG,qBAAa,GAAG,iBAAS,EAAW,CAAC;AAC3D,QAAA,gBAAgB,GAAG,GAAG,qBAAa,GAAG,iBAAS,EAAW,CAAC;AAC3D,QAAA,gBAAgB,GAAG,GAAG,qBAAa,GAAG,iBAAS,EAAW,CAAC;AAC3D,QAAA,oBAAoB,GAAG,GAAG,qBAAa,GAAG,qBAAa,EAAW,CAAC;AAEnE,QAAA,iBAAiB,GAAG,GAAG,sBAAc,GAAG,iBAAS,EAAW,CAAC;AAC7D,QAAA,sBAAsB,GAAG,GAAG,sBAAc,GAAG,sBAAc,EAAW,CAAC;AACvE,QAAA,iBAAiB,GAAG,GAAG,sBAAc,GAAG,iBAAS,EAAW,CAAC;AAE7D,QAAA,kBAAkB,GAAG,GAAG,uBAAe,GAAG,iBAAS,EAAW,CAAC;AAC/D,QAAA,uBAAuB,GAAG,GAAG,uBAAe,GAAG,sBAAc,EAAW,CAAC;AACzE,QAAA,kBAAkB,GAAG,GAAG,uBAAe,GAAG,iBAAS,EAAW,CAAC;AAE/D,QAAA,iBAAiB,GAAG,GAAG,sBAAc,GAAG,iBAAS,EAAW,CAAC;AAC7D,QAAA,sBAAsB,GAAG,GAAG,sBAAc,GAAG,sBAAc,EAAW,CAAC;AACvE,QAAA,iBAAiB,GAAG,GAAG,sBAAc,GAAG,iBAAS,EAAW,CAAC;AAE1E;;GAEG;AACU,QAAA,YAAY,GAAG,MAAe,CAAC;AAC/B,QAAA,cAAc,GAAG,cAAuB,CAAC;AAEtD;;;GAGG;AACU,QAAA,mBAAmB,GAAG,qBAA8B,CAAC;AACrD,QAAA,oBAAoB,GAAG,sBAA+B,CAAC;AACvD,QAAA,qBAAqB,GAAG,uBAAgC,CAAC;AACzD,QAAA,oBAAoB,GAAG,sBAA+B,CAAC;AACvD,QAAA,qBAAqB,GAAG,uBAAgC,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildAnnotationCache = buildAnnotationCache;
|
|
4
4
|
const constants_1 = require("../constants");
|
|
5
|
+
const annotations_helper_1 = require("../shared/annotations-helper");
|
|
5
6
|
function expandEvent(event, entity) {
|
|
6
7
|
if (!event)
|
|
7
8
|
return [];
|
|
@@ -14,31 +15,40 @@ function expandEvent(event, entity) {
|
|
|
14
15
|
function buildAnnotationCache(service) {
|
|
15
16
|
const cache = new Map();
|
|
16
17
|
for (const entity of Object.values(service.entities)) {
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
18
|
+
const startAnnotations = (0, annotations_helper_1.findStartAnnotations)(entity);
|
|
19
|
+
const cancelAnnotations = (0, annotations_helper_1.findLifecycleAnnotations)(entity, constants_1.PROCESS_CANCEL);
|
|
20
|
+
const suspendAnnotations = (0, annotations_helper_1.findLifecycleAnnotations)(entity, constants_1.PROCESS_SUSPEND);
|
|
21
|
+
const resumeAnnotations = (0, annotations_helper_1.findLifecycleAnnotations)(entity, constants_1.PROCESS_RESUME);
|
|
21
22
|
const events = new Set();
|
|
22
|
-
for (const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
for (const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
for (const ann of startAnnotations) {
|
|
24
|
+
for (const ev of expandEvent(ann.on, entity))
|
|
25
|
+
events.add(ev);
|
|
26
|
+
}
|
|
27
|
+
for (const ann of cancelAnnotations) {
|
|
28
|
+
for (const ev of expandEvent(ann.on, entity))
|
|
29
|
+
events.add(ev);
|
|
30
|
+
}
|
|
31
|
+
for (const ann of suspendAnnotations) {
|
|
32
|
+
for (const ev of expandEvent(ann.on, entity))
|
|
33
|
+
events.add(ev);
|
|
34
|
+
}
|
|
35
|
+
for (const ann of resumeAnnotations) {
|
|
36
|
+
for (const ev of expandEvent(ann.on, entity))
|
|
37
|
+
events.add(ev);
|
|
38
|
+
}
|
|
30
39
|
for (const event of events) {
|
|
31
40
|
const matchesEvent = (annotationEvent) => annotationEvent === event || annotationEvent === '*';
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const
|
|
41
|
+
// Filter annotations to those matching this event
|
|
42
|
+
const matchingStarts = startAnnotations.filter((ann) => matchesEvent(ann.on));
|
|
43
|
+
const matchingCancels = cancelAnnotations.filter((ann) => matchesEvent(ann.on));
|
|
44
|
+
const matchingSuspends = suspendAnnotations.filter((ann) => matchesEvent(ann.on));
|
|
45
|
+
const matchingResumes = resumeAnnotations.filter((ann) => matchesEvent(ann.on));
|
|
36
46
|
const cacheKey = `${entity.name}:${event}`;
|
|
37
47
|
cache.set(cacheKey, {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
48
|
+
startAnnotations: matchingStarts,
|
|
49
|
+
cancelAnnotations: matchingCancels,
|
|
50
|
+
suspendAnnotations: matchingSuspends,
|
|
51
|
+
resumeAnnotations: matchingResumes,
|
|
42
52
|
});
|
|
43
53
|
}
|
|
44
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotationCache.js","sourceRoot":"","sources":["../../../lib/handlers/annotationCache.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"annotationCache.js","sourceRoot":"","sources":["../../../lib/handlers/annotationCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.registerAnnotationHandlers = registerAnnotationHandlers;
|
|
7
7
|
const cds_1 = __importDefault(require("@sap/cds"));
|
|
8
8
|
const handlers_1 = require("../handlers");
|
|
9
|
+
const processActionHandler_1 = require("./processActionHandler");
|
|
9
10
|
function registerAnnotationHandlers(service) {
|
|
10
11
|
if (service instanceof cds_1.default.ApplicationService == false)
|
|
11
12
|
return;
|
|
@@ -15,12 +16,15 @@ function registerAnnotationHandlers(service) {
|
|
|
15
16
|
const cached = annotationCache.get(cacheKey);
|
|
16
17
|
if (!cached)
|
|
17
18
|
return;
|
|
19
|
+
const hasStarts = cached.startAnnotations.length > 0;
|
|
20
|
+
const hasCancels = cached.cancelAnnotations.length > 0;
|
|
21
|
+
const hasSuspends = cached.suspendAnnotations.length > 0;
|
|
22
|
+
const hasResumes = cached.resumeAnnotations.length > 0;
|
|
18
23
|
const results = await Promise.all([
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
cached.hasSuspend && (0, handlers_1.addDeletedEntityToRequestSuspend)(req),
|
|
24
|
+
hasStarts && (0, handlers_1.prefetchStartDataForDelete)(req, cached.startAnnotations),
|
|
25
|
+
hasCancels && (0, processActionHandler_1.prefetchLifecycleDataForDelete)(req, cached.cancelAnnotations, 'cancel'),
|
|
26
|
+
hasSuspends && (0, processActionHandler_1.prefetchLifecycleDataForDelete)(req, cached.suspendAnnotations, 'suspend'),
|
|
27
|
+
hasResumes && (0, processActionHandler_1.prefetchLifecycleDataForDelete)(req, cached.resumeAnnotations, 'resume'),
|
|
24
28
|
].filter(Boolean));
|
|
25
29
|
req._Process = Object.assign({}, ...results);
|
|
26
30
|
});
|
|
@@ -41,17 +45,9 @@ function registerAnnotationHandlers(service) {
|
|
|
41
45
|
});
|
|
42
46
|
}
|
|
43
47
|
async function dispatchProcessHandlers(cached, req, data) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
await (0, handlers_1.handleProcessCancel)(req, data);
|
|
49
|
-
}
|
|
50
|
-
if (cached.hasSuspend) {
|
|
51
|
-
await (0, handlers_1.handleProcessSuspend)(req, data);
|
|
52
|
-
}
|
|
53
|
-
if (cached.hasResume) {
|
|
54
|
-
await (0, handlers_1.handleProcessResume)(req, data);
|
|
55
|
-
}
|
|
48
|
+
await Promise.all(cached.startAnnotations.map((startAnn) => (0, handlers_1.handleProcessStart)(req, data, startAnn)));
|
|
49
|
+
await Promise.all(cached.cancelAnnotations.map((cancelAnn) => (0, handlers_1.handleProcessCancel)(req, data, cancelAnn)));
|
|
50
|
+
await Promise.all(cached.suspendAnnotations.map((suspendAnn) => (0, handlers_1.handleProcessSuspend)(req, data, suspendAnn)));
|
|
51
|
+
await Promise.all(cached.resumeAnnotations.map((resumeAnn) => (0, handlers_1.handleProcessResume)(req, data, resumeAnn)));
|
|
56
52
|
}
|
|
57
53
|
//# sourceMappingURL=annotationHandlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotationHandlers.js","sourceRoot":"","sources":["../../../lib/handlers/annotationHandlers.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"annotationHandlers.js","sourceRoot":"","sources":["../../../lib/handlers/annotationHandlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.registerAnnotationHandlers = exports.buildAnnotationCache = exports.registerProcessServiceHandlers = exports.createProcessActionHandler = exports.
|
|
3
|
+
exports.registerAnnotationHandlers = exports.buildAnnotationCache = exports.registerProcessServiceHandlers = exports.createProcessActionHandler = exports.handleProcessResume = exports.handleProcessSuspend = exports.handleProcessCancel = exports.prefetchStartDataForDelete = exports.handleProcessStart = void 0;
|
|
4
4
|
var processStart_1 = require("./processStart");
|
|
5
5
|
Object.defineProperty(exports, "handleProcessStart", { enumerable: true, get: function () { return processStart_1.handleProcessStart; } });
|
|
6
|
-
Object.defineProperty(exports, "
|
|
7
|
-
Object.defineProperty(exports, "addDeletedEntityToRequestStart", { enumerable: true, get: function () { return processStart_1.addDeletedEntityToRequestStart; } });
|
|
8
|
-
Object.defineProperty(exports, "addDeletedEntityToRequestStartBusinessKey", { enumerable: true, get: function () { return processStart_1.addDeletedEntityToRequestStartBusinessKey; } });
|
|
6
|
+
Object.defineProperty(exports, "prefetchStartDataForDelete", { enumerable: true, get: function () { return processStart_1.prefetchStartDataForDelete; } });
|
|
9
7
|
var processCancel_1 = require("./processCancel");
|
|
10
8
|
Object.defineProperty(exports, "handleProcessCancel", { enumerable: true, get: function () { return processCancel_1.handleProcessCancel; } });
|
|
11
|
-
Object.defineProperty(exports, "addDeletedEntityToRequestCancel", { enumerable: true, get: function () { return processCancel_1.addDeletedEntityToRequestCancel; } });
|
|
12
9
|
var processSuspend_1 = require("./processSuspend");
|
|
13
10
|
Object.defineProperty(exports, "handleProcessSuspend", { enumerable: true, get: function () { return processSuspend_1.handleProcessSuspend; } });
|
|
14
|
-
Object.defineProperty(exports, "addDeletedEntityToRequestSuspend", { enumerable: true, get: function () { return processSuspend_1.addDeletedEntityToRequestSuspend; } });
|
|
15
11
|
var processResume_1 = require("./processResume");
|
|
16
12
|
Object.defineProperty(exports, "handleProcessResume", { enumerable: true, get: function () { return processResume_1.handleProcessResume; } });
|
|
17
|
-
Object.defineProperty(exports, "addDeletedEntityToRequestResume", { enumerable: true, get: function () { return processResume_1.addDeletedEntityToRequestResume; } });
|
|
18
13
|
var processActionHandler_1 = require("./processActionHandler");
|
|
19
14
|
Object.defineProperty(exports, "createProcessActionHandler", { enumerable: true, get: function () { return processActionHandler_1.createProcessActionHandler; } });
|
|
20
15
|
var processService_1 = require("./processService");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/handlers/index.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/handlers/index.ts"],"names":[],"mappings":";;;AAAA,+CAAgF;AAAvE,kHAAA,kBAAkB,OAAA;AAAE,0HAAA,0BAA0B,OAAA;AACvD,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,+DAAoE;AAA3D,kIAAA,0BAA0B,OAAA;AACnC,mDAAkE;AAAzD,gIAAA,8BAA8B,OAAA;AACvC,qDAAyD;AAAhD,uHAAA,oBAAoB,OAAA;AAC7B,2DAAkE;AAAzD,gIAAA,0BAA0B,OAAA"}
|
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
7
|
-
exports.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const input_parser_1 = require("../shared/input-parser");
|
|
12
|
-
const LOG = cds_1.default.log(constants_1.PROCESS_LOGGER_PREFIX);
|
|
13
|
-
exports.PROCESS_EVENT_MAP = {
|
|
14
|
-
start: 'Start',
|
|
15
|
-
startBusinessKey: 'StartBusinessKey',
|
|
16
|
-
cancel: 'Cancel',
|
|
17
|
-
suspend: 'Suspend',
|
|
18
|
-
resume: 'Resume',
|
|
19
|
-
};
|
|
3
|
+
exports.getPrefetchedDataForDelete = getPrefetchedDataForDelete;
|
|
4
|
+
exports.buildWhereDeleteExpression = buildWhereDeleteExpression;
|
|
5
|
+
function getPrefetchedDataForDelete(req, qualifierKey, actionKey) {
|
|
6
|
+
return req._Process?.[actionKey]?.get(qualifierKey);
|
|
7
|
+
}
|
|
20
8
|
function buildWhereDeleteExpression(req, conditionExpr) {
|
|
21
9
|
const deleteReq = req;
|
|
22
10
|
const deleteQuery = deleteReq.query?.DELETE;
|
|
@@ -29,35 +17,4 @@ function buildWhereDeleteExpression(req, conditionExpr) {
|
|
|
29
17
|
}
|
|
30
18
|
return where;
|
|
31
19
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Checks if this is a DELETE request without process data (condition not met)
|
|
34
|
-
*/
|
|
35
|
-
function isDeleteWithoutProcess(req, notTriggeredMsg, processEvent) {
|
|
36
|
-
const processEventKey = exports.PROCESS_EVENT_MAP[processEvent];
|
|
37
|
-
if (req.event === 'DELETE' &&
|
|
38
|
-
req._Process?.[processEventKey] === undefined) {
|
|
39
|
-
// means: condition for process event is not met
|
|
40
|
-
LOG.debug(notTriggeredMsg);
|
|
41
|
-
return true;
|
|
42
|
-
}
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Generic factory to create a before-DELETE handler that pre-fetches
|
|
47
|
-
* entity data and attaches it to the request under `_Process.[ProcessEvent]`.
|
|
48
|
-
*/
|
|
49
|
-
function createAddDeletedEntityHandler(config) {
|
|
50
|
-
return async function addDeletedEntityToRequest(req) {
|
|
51
|
-
const columns = config.getColumns(req);
|
|
52
|
-
const annotatedTarget = req.target;
|
|
53
|
-
const conditionExpr = annotatedTarget[config.ifAnnotation];
|
|
54
|
-
const where = buildWhereDeleteExpression(req, conditionExpr);
|
|
55
|
-
if (where) {
|
|
56
|
-
const selectColumns = columns.length > 0 ? columns : [input_parser_1.WILDCARD];
|
|
57
|
-
const processEventKey = exports.PROCESS_EVENT_MAP[config.action];
|
|
58
|
-
const entity = await SELECT.one.from(req.subject).columns(selectColumns).where(where);
|
|
59
|
-
return { [processEventKey]: entity };
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
20
|
//# sourceMappingURL=onDeleteUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onDeleteUtils.js","sourceRoot":"","sources":["../../../lib/handlers/onDeleteUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"onDeleteUtils.js","sourceRoot":"","sources":["../../../lib/handlers/onDeleteUtils.ts"],"names":[],"mappings":";;AAgBA,gEAQC;AAED,gEAiBC;AA3BD,SAAgB,0BAA0B,CACxC,GAAgB,EAChB,YAAoB,EACpB,SAAsC;IAEtC,OAAQ,GAA4B,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,YAAY,CAE/D,CAAC;AAChB,CAAC;AAED,SAAgB,0BAA0B,CACxC,GAAyB,EACzB,aAAwC;IAExC,MAAM,SAAS,GAAG,GAA2B,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,EAAE,MAExB,CAAC;IACd,IAAI,KAAK,GAAY,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,WAAW,EAAE,KAAK,CAAC;IAE9E,IAAI,aAAa,EAAE,CAAC;QAClB,KAAK;YACH,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM;gBAClC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,aAAa,CAAC,GAAG,EAAE,CAAC;gBACrD,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC;IAC1B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|