kwikid-forms 0.0.0-watch
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 +44 -0
- package/assets/done1.png +0 -0
- package/assets/edit.png +0 -0
- package/assets/lock.png +0 -0
- package/esm2015/kwikid-forms.js +5 -0
- package/esm2015/lib/builder/builder.component.js +138 -0
- package/esm2015/lib/builder/builder.module.js +21 -0
- package/esm2015/lib/kwikid-forms.module.js +53 -0
- package/esm2015/lib/renderer/form-view/definitions/actions/form-view.actions.enum.definitions.js +16 -0
- package/esm2015/lib/renderer/form-view/definitions/actions/form-view.actions.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/apis/form-view.apis.enum.definitions.js +8 -0
- package/esm2015/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/common/form-view.common.enum.definitions.js +47 -0
- package/esm2015/lib/renderer/form-view/definitions/common/form-view.common.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/fields/form-view.fields.enum.definitions.js +15 -0
- package/esm2015/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/rules/form-view.rules.enum.definitions.js +7 -0
- package/esm2015/lib/renderer/form-view/definitions/rules/form-view.rules.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/sources/form-view.sources.enum.definitions.js +16 -0
- package/esm2015/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/triggers/form-view.triggers.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/definitions/validations/form-view.validations.type.definitions.js +2 -0
- package/esm2015/lib/renderer/form-view/form-view.component.js +654 -0
- package/esm2015/lib/renderer/form-view/form-view.decorators.js +93 -0
- package/esm2015/lib/renderer/form-view/form-view.module.js +37 -0
- package/esm2015/lib/renderer/form-view/form-view.service.js +27 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.actions.helper.js +27 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.apis.helper.js +105 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.common.helper.js +136 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.condition.helper.js +46 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.defaults.helper.js +52 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.fields.helper.js +146 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.rules.helper.js +86 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.sources.helper.js +161 -0
- package/esm2015/lib/renderer/form-view/helpers/form-view.validations.helper.js +156 -0
- package/esm2015/lib/renderer/forms-list/forms-list.component.js +61 -0
- package/esm2015/lib/renderer/forms-list/forms-list.helper.js +4 -0
- package/esm2015/lib/renderer/forms-list/forms-list.module.js +37 -0
- package/esm2015/lib/renderer/renderer.component.js +201 -0
- package/esm2015/lib/renderer/renderer.config-converter.helper.js +530 -0
- package/esm2015/lib/renderer/renderer.helper.js +50 -0
- package/esm2015/lib/renderer/renderer.module.js +39 -0
- package/esm2015/lib/renderer/renderer.service.js +115 -0
- package/esm2015/public_api.js +17 -0
- package/fesm2015/kwikid-forms.js +2970 -0
- package/fesm2015/kwikid-forms.js.map +1 -0
- package/kwikid-forms.d.ts +5 -0
- package/lib/builder/builder.component.d.ts +68 -0
- package/lib/builder/builder.module.d.ts +10 -0
- package/lib/kwikid-forms.module.d.ts +13 -0
- package/lib/renderer/form-view/definitions/actions/form-view.actions.enum.definitions.d.ts +14 -0
- package/lib/renderer/form-view/definitions/actions/form-view.actions.type.definitions.d.ts +91 -0
- package/lib/renderer/form-view/definitions/apis/form-view.apis.enum.definitions.d.ts +6 -0
- package/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.d.ts +40 -0
- package/lib/renderer/form-view/definitions/common/form-view.common.enum.definitions.d.ts +43 -0
- package/lib/renderer/form-view/definitions/common/form-view.common.type.definitions.d.ts +7 -0
- package/lib/renderer/form-view/definitions/fields/form-view.fields.enum.definitions.d.ts +13 -0
- package/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.d.ts +137 -0
- package/lib/renderer/form-view/definitions/rules/form-view.rules.enum.definitions.d.ts +5 -0
- package/lib/renderer/form-view/definitions/rules/form-view.rules.type.definitions.d.ts +41 -0
- package/lib/renderer/form-view/definitions/sources/form-view.sources.enum.definitions.d.ts +13 -0
- package/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.d.ts +16 -0
- package/lib/renderer/form-view/definitions/triggers/form-view.triggers.type.definitions.d.ts +1 -0
- package/lib/renderer/form-view/definitions/validations/form-view.validations.type.definitions.d.ts +17 -0
- package/lib/renderer/form-view/form-view.component.d.ts +66 -0
- package/lib/renderer/form-view/form-view.decorators.d.ts +7 -0
- package/lib/renderer/form-view/form-view.module.d.ts +11 -0
- package/lib/renderer/form-view/form-view.service.d.ts +5 -0
- package/lib/renderer/form-view/helpers/form-view.actions.helper.d.ts +13 -0
- package/lib/renderer/form-view/helpers/form-view.apis.helper.d.ts +17 -0
- package/lib/renderer/form-view/helpers/form-view.common.helper.d.ts +19 -0
- package/lib/renderer/form-view/helpers/form-view.condition.helper.d.ts +8 -0
- package/lib/renderer/form-view/helpers/form-view.defaults.helper.d.ts +10 -0
- package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +20 -0
- package/lib/renderer/form-view/helpers/form-view.rules.helper.d.ts +12 -0
- package/lib/renderer/form-view/helpers/form-view.sources.helper.d.ts +29 -0
- package/lib/renderer/form-view/helpers/form-view.validations.helper.d.ts +25 -0
- package/lib/renderer/forms-list/forms-list.component.d.ts +18 -0
- package/lib/renderer/forms-list/forms-list.helper.d.ts +1 -0
- package/lib/renderer/forms-list/forms-list.module.d.ts +11 -0
- package/lib/renderer/renderer.component.d.ts +30 -0
- package/lib/renderer/renderer.config-converter.helper.d.ts +7 -0
- package/lib/renderer/renderer.helper.d.ts +6 -0
- package/lib/renderer/renderer.module.d.ts +12 -0
- package/lib/renderer/renderer.service.d.ts +27 -0
- package/package.json +47 -0
- package/public_api.d.ts +9 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A function that logs the execution of a method.
|
|
3
|
+
* @param {any} target - The object the method belongs to.
|
|
4
|
+
* @param {string} propertyKey - The name of the method.
|
|
5
|
+
* @param {PropertyDescriptor} descriptor - The property descriptor for the method.
|
|
6
|
+
*/
|
|
7
|
+
export function log(target, propertyKey, descriptor) {
|
|
8
|
+
// save a reference to the original method
|
|
9
|
+
const originalMethod = descriptor.value;
|
|
10
|
+
// update the descriptor value with a new function that will log and execute the original method
|
|
11
|
+
descriptor.value = function (...args) {
|
|
12
|
+
console.group("Logging Method"); // start a new logging group
|
|
13
|
+
console.time("Execution Time:"); // start a timer
|
|
14
|
+
let result; // declare result variable
|
|
15
|
+
try {
|
|
16
|
+
// execute the original method and save the result
|
|
17
|
+
result = originalMethod.apply(this, args);
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
// if an error is thrown, log the error and throw it again
|
|
21
|
+
logSyncMethodError(target.constructor.name, propertyKey, args, error);
|
|
22
|
+
console.timeEnd(`Execution Time:`); // stop the timer
|
|
23
|
+
console.groupEnd(); // end the logging group
|
|
24
|
+
throw error;
|
|
25
|
+
}
|
|
26
|
+
// if the result is a Promise, handle it as an async method
|
|
27
|
+
if (result instanceof Promise) {
|
|
28
|
+
result = result
|
|
29
|
+
.then((resolvedValue) => {
|
|
30
|
+
// on success, log the resolved value and return it
|
|
31
|
+
logAsyncMethod(target.constructor.name, propertyKey, args, resolvedValue);
|
|
32
|
+
console.timeEnd(`Execution Time:`); // stop the timer
|
|
33
|
+
console.groupEnd(); // end the logging group
|
|
34
|
+
return resolvedValue;
|
|
35
|
+
})
|
|
36
|
+
.catch((error) => {
|
|
37
|
+
// on error, log the error and throw it again
|
|
38
|
+
logAsyncMethodError(target.constructor.name, propertyKey, args, error);
|
|
39
|
+
console.timeEnd(`Execution Time:`); // stop the timer
|
|
40
|
+
console.groupEnd(); // end the logging group
|
|
41
|
+
throw error;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
// if the result is not a Promise, handle it as a sync method
|
|
46
|
+
logSyncMethod(target.constructor.name, propertyKey, args, result);
|
|
47
|
+
console.timeEnd("Execution Time:");
|
|
48
|
+
console.groupEnd();
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* This function logs a sync method's information to the console.
|
|
55
|
+
* @param {string} className - The name of the class where the method belongs.
|
|
56
|
+
* @param {string} methodName - The name of the method being called.
|
|
57
|
+
* @param {any[]} args - An array of arguments passed to the method.
|
|
58
|
+
* @param {any} result - The result of the method.
|
|
59
|
+
*/
|
|
60
|
+
function logSyncMethod(className, methodName, args, result) {
|
|
61
|
+
console.log("%cType: Sync Method -", "color: #0d47a1; font-weight: bold;", "\nClass:", className, "\nMethod:", methodName, "\nArgs:", args, "\nReturn:", result);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Logs an error that occurred during the execution of a synchronous method.
|
|
65
|
+
* @param {string} className - The name of the class the method belongs to.
|
|
66
|
+
* @param {string} methodName - The name of the method.
|
|
67
|
+
* @param {any[]} args - The arguments passed to the method.
|
|
68
|
+
* @param {Error} error - The error that occurred.
|
|
69
|
+
*/
|
|
70
|
+
function logSyncMethodError(className, methodName, args, error) {
|
|
71
|
+
console.log("%cType: Sync Method -", "color: #0d47a1; font-weight: bold;", "\nClass:", className, "\nMethod:", methodName, "\nArgs:", args, "\nError:", error);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Logs the result of the execution of an asynchronous method.
|
|
75
|
+
* @param {string} className - The name of the class the method belongs to.
|
|
76
|
+
* @param {string} methodName - The name of the method.
|
|
77
|
+
* @param {any[]} args - The arguments passed to the method.
|
|
78
|
+
* @param {any} result - The result of the method execution.
|
|
79
|
+
*/
|
|
80
|
+
function logAsyncMethod(className, methodName, args, result) {
|
|
81
|
+
console.log("%cType: Async Method -", "color: #1565c0; font-weight: bold;", "\nClass:", className, "\nMethod:", methodName, "\nArgs:", args, "\nReturn:", result);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Logs an error that occurred during the execution of an asynchronous method.
|
|
85
|
+
* @param {string} className - The name of the class the method belongs to.
|
|
86
|
+
* @param {string} methodName - The name of the method.
|
|
87
|
+
* @param {any[]} args - The arguments passed to the method.
|
|
88
|
+
* @param {Error} error - The error that occurred.
|
|
89
|
+
*/
|
|
90
|
+
function logAsyncMethodError(className, methodName, args, error) {
|
|
91
|
+
console.log("%cType: Async Method -", "color: #1565c0; font-weight: bold;", "\nClass:", className, "\nMethod:", methodName, "\nArgs:", args, "\nError:", error);
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmRlY29yYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9mb3JtLXZpZXcvZm9ybS12aWV3LmRlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUNqQixNQUFXLEVBQ1gsV0FBbUIsRUFDbkIsVUFBOEI7SUFFOUIsMENBQTBDO0lBQzFDLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDeEMsZ0dBQWdHO0lBQ2hHLFVBQVUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxHQUFHLElBQVc7UUFDekMsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsNEJBQTRCO1FBQzdELE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGdCQUFnQjtRQUVqRCxJQUFJLE1BQU0sQ0FBQyxDQUFDLDBCQUEwQjtRQUN0QyxJQUFJO1lBQ0Ysa0RBQWtEO1lBQ2xELE1BQU0sR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztTQUMzQztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsMERBQTBEO1lBQzFELGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsaUJBQWlCO1lBQ3JELE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QjtZQUM1QyxNQUFNLEtBQUssQ0FBQztTQUNiO1FBRUQsMkRBQTJEO1FBQzNELElBQUksTUFBTSxZQUFZLE9BQU8sRUFBRTtZQUM3QixNQUFNLEdBQUcsTUFBTTtpQkFDWixJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRTtnQkFDdEIsbURBQW1EO2dCQUNuRCxjQUFjLENBQ1osTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQ3ZCLFdBQVcsRUFDWCxJQUFJLEVBQ0osYUFBYSxDQUNkLENBQUM7Z0JBQ0YsT0FBTyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsaUJBQWlCO2dCQUNyRCxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyx3QkFBd0I7Z0JBQzVDLE9BQU8sYUFBYSxDQUFDO1lBQ3ZCLENBQUMsQ0FBQztpQkFDRCxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDZiw2Q0FBNkM7Z0JBQzdDLG1CQUFtQixDQUNqQixNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksRUFDdkIsV0FBVyxFQUNYLElBQUksRUFDSixLQUFLLENBQ04sQ0FBQztnQkFDRixPQUFPLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxpQkFBaUI7Z0JBQ3JELE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QjtnQkFDNUMsTUFBTSxLQUFLLENBQUM7WUFDZCxDQUFDLENBQUMsQ0FBQztTQUNOO2FBQU07WUFDTCw2REFBNkQ7WUFDN0QsYUFBYSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ25DLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNwQjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFTLGFBQWEsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNO0lBQ3hELE9BQU8sQ0FBQyxHQUFHLENBQ1QsdUJBQXVCLEVBQ3ZCLG9DQUFvQyxFQUNwQyxVQUFVLEVBQ1YsU0FBUyxFQUNULFdBQVcsRUFDWCxVQUFVLEVBQ1YsU0FBUyxFQUNULElBQUksRUFDSixXQUFXLEVBQ1gsTUFBTSxDQUNQLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxLQUFLO0lBQzVELE9BQU8sQ0FBQyxHQUFHLENBQ1QsdUJBQXVCLEVBQ3ZCLG9DQUFvQyxFQUNwQyxVQUFVLEVBQ1YsU0FBUyxFQUNULFdBQVcsRUFDWCxVQUFVLEVBQ1YsU0FBUyxFQUNULElBQUksRUFDSixVQUFVLEVBQ1YsS0FBSyxDQUNOLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsU0FBUyxjQUFjLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTTtJQUN6RCxPQUFPLENBQUMsR0FBRyxDQUNULHdCQUF3QixFQUN4QixvQ0FBb0MsRUFDcEMsVUFBVSxFQUNWLFNBQVMsRUFDVCxXQUFXLEVBQ1gsVUFBVSxFQUNWLFNBQVMsRUFDVCxJQUFJLEVBQ0osV0FBVyxFQUNYLE1BQU0sQ0FDUCxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQVMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSztJQUM3RCxPQUFPLENBQUMsR0FBRyxDQUNULHdCQUF3QixFQUN4QixvQ0FBb0MsRUFDcEMsVUFBVSxFQUNWLFNBQVMsRUFDVCxXQUFXLEVBQ1gsVUFBVSxFQUNWLFNBQVMsRUFDVCxJQUFJLEVBQ0osVUFBVSxFQUNWLEtBQUssQ0FDTixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBBIGZ1bmN0aW9uIHRoYXQgbG9ncyB0aGUgZXhlY3V0aW9uIG9mIGEgbWV0aG9kLlxyXG4gKiBAcGFyYW0ge2FueX0gdGFyZ2V0IC0gVGhlIG9iamVjdCB0aGUgbWV0aG9kIGJlbG9uZ3MgdG8uXHJcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcm9wZXJ0eUtleSAtIFRoZSBuYW1lIG9mIHRoZSBtZXRob2QuXHJcbiAqIEBwYXJhbSB7UHJvcGVydHlEZXNjcmlwdG9yfSBkZXNjcmlwdG9yIC0gVGhlIHByb3BlcnR5IGRlc2NyaXB0b3IgZm9yIHRoZSBtZXRob2QuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbG9nKFxyXG4gIHRhcmdldDogYW55LFxyXG4gIHByb3BlcnR5S2V5OiBzdHJpbmcsXHJcbiAgZGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yXHJcbikge1xyXG4gIC8vIHNhdmUgYSByZWZlcmVuY2UgdG8gdGhlIG9yaWdpbmFsIG1ldGhvZFxyXG4gIGNvbnN0IG9yaWdpbmFsTWV0aG9kID0gZGVzY3JpcHRvci52YWx1ZTtcclxuICAvLyB1cGRhdGUgdGhlIGRlc2NyaXB0b3IgdmFsdWUgd2l0aCBhIG5ldyBmdW5jdGlvbiB0aGF0IHdpbGwgbG9nIGFuZCBleGVjdXRlIHRoZSBvcmlnaW5hbCBtZXRob2RcclxuICBkZXNjcmlwdG9yLnZhbHVlID0gZnVuY3Rpb24gKC4uLmFyZ3M6IGFueVtdKSB7XHJcbiAgICBjb25zb2xlLmdyb3VwKFwiTG9nZ2luZyBNZXRob2RcIik7IC8vIHN0YXJ0IGEgbmV3IGxvZ2dpbmcgZ3JvdXBcclxuICAgIGNvbnNvbGUudGltZShcIkV4ZWN1dGlvbiBUaW1lOlwiKTsgLy8gc3RhcnQgYSB0aW1lclxyXG5cclxuICAgIGxldCByZXN1bHQ7IC8vIGRlY2xhcmUgcmVzdWx0IHZhcmlhYmxlXHJcbiAgICB0cnkge1xyXG4gICAgICAvLyBleGVjdXRlIHRoZSBvcmlnaW5hbCBtZXRob2QgYW5kIHNhdmUgdGhlIHJlc3VsdFxyXG4gICAgICByZXN1bHQgPSBvcmlnaW5hbE1ldGhvZC5hcHBseSh0aGlzLCBhcmdzKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIC8vIGlmIGFuIGVycm9yIGlzIHRocm93biwgbG9nIHRoZSBlcnJvciBhbmQgdGhyb3cgaXQgYWdhaW5cclxuICAgICAgbG9nU3luY01ldGhvZEVycm9yKHRhcmdldC5jb25zdHJ1Y3Rvci5uYW1lLCBwcm9wZXJ0eUtleSwgYXJncywgZXJyb3IpO1xyXG4gICAgICBjb25zb2xlLnRpbWVFbmQoYEV4ZWN1dGlvbiBUaW1lOmApOyAvLyBzdG9wIHRoZSB0aW1lclxyXG4gICAgICBjb25zb2xlLmdyb3VwRW5kKCk7IC8vIGVuZCB0aGUgbG9nZ2luZyBncm91cFxyXG4gICAgICB0aHJvdyBlcnJvcjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBpZiB0aGUgcmVzdWx0IGlzIGEgUHJvbWlzZSwgaGFuZGxlIGl0IGFzIGFuIGFzeW5jIG1ldGhvZFxyXG4gICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIFByb21pc2UpIHtcclxuICAgICAgcmVzdWx0ID0gcmVzdWx0XHJcbiAgICAgICAgLnRoZW4oKHJlc29sdmVkVmFsdWUpID0+IHtcclxuICAgICAgICAgIC8vIG9uIHN1Y2Nlc3MsIGxvZyB0aGUgcmVzb2x2ZWQgdmFsdWUgYW5kIHJldHVybiBpdFxyXG4gICAgICAgICAgbG9nQXN5bmNNZXRob2QoXHJcbiAgICAgICAgICAgIHRhcmdldC5jb25zdHJ1Y3Rvci5uYW1lLFxyXG4gICAgICAgICAgICBwcm9wZXJ0eUtleSxcclxuICAgICAgICAgICAgYXJncyxcclxuICAgICAgICAgICAgcmVzb2x2ZWRWYWx1ZVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIGNvbnNvbGUudGltZUVuZChgRXhlY3V0aW9uIFRpbWU6YCk7IC8vIHN0b3AgdGhlIHRpbWVyXHJcbiAgICAgICAgICBjb25zb2xlLmdyb3VwRW5kKCk7IC8vIGVuZCB0aGUgbG9nZ2luZyBncm91cFxyXG4gICAgICAgICAgcmV0dXJuIHJlc29sdmVkVmFsdWU7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAvLyBvbiBlcnJvciwgbG9nIHRoZSBlcnJvciBhbmQgdGhyb3cgaXQgYWdhaW5cclxuICAgICAgICAgIGxvZ0FzeW5jTWV0aG9kRXJyb3IoXHJcbiAgICAgICAgICAgIHRhcmdldC5jb25zdHJ1Y3Rvci5uYW1lLFxyXG4gICAgICAgICAgICBwcm9wZXJ0eUtleSxcclxuICAgICAgICAgICAgYXJncyxcclxuICAgICAgICAgICAgZXJyb3JcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoYEV4ZWN1dGlvbiBUaW1lOmApOyAvLyBzdG9wIHRoZSB0aW1lclxyXG4gICAgICAgICAgY29uc29sZS5ncm91cEVuZCgpOyAvLyBlbmQgdGhlIGxvZ2dpbmcgZ3JvdXBcclxuICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gaWYgdGhlIHJlc3VsdCBpcyBub3QgYSBQcm9taXNlLCBoYW5kbGUgaXQgYXMgYSBzeW5jIG1ldGhvZFxyXG4gICAgICBsb2dTeW5jTWV0aG9kKHRhcmdldC5jb25zdHJ1Y3Rvci5uYW1lLCBwcm9wZXJ0eUtleSwgYXJncywgcmVzdWx0KTtcclxuICAgICAgY29uc29sZS50aW1lRW5kKFwiRXhlY3V0aW9uIFRpbWU6XCIpO1xyXG4gICAgICBjb25zb2xlLmdyb3VwRW5kKCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaGlzIGZ1bmN0aW9uIGxvZ3MgYSBzeW5jIG1ldGhvZCdzIGluZm9ybWF0aW9uIHRvIHRoZSBjb25zb2xlLlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gY2xhc3NOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGNsYXNzIHdoZXJlIHRoZSBtZXRob2QgYmVsb25ncy5cclxuICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZE5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbWV0aG9kIGJlaW5nIGNhbGxlZC5cclxuICogQHBhcmFtIHthbnlbXX0gYXJncyAtIEFuIGFycmF5IG9mIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIG1ldGhvZC5cclxuICogQHBhcmFtIHthbnl9IHJlc3VsdCAtIFRoZSByZXN1bHQgb2YgdGhlIG1ldGhvZC5cclxuICovXHJcbmZ1bmN0aW9uIGxvZ1N5bmNNZXRob2QoY2xhc3NOYW1lLCBtZXRob2ROYW1lLCBhcmdzLCByZXN1bHQpIHtcclxuICBjb25zb2xlLmxvZyhcclxuICAgIFwiJWNUeXBlOiBTeW5jIE1ldGhvZCAtXCIsXHJcbiAgICBcImNvbG9yOiAjMGQ0N2ExOyBmb250LXdlaWdodDogYm9sZDtcIixcclxuICAgIFwiXFxuQ2xhc3M6XCIsXHJcbiAgICBjbGFzc05hbWUsXHJcbiAgICBcIlxcbk1ldGhvZDpcIixcclxuICAgIG1ldGhvZE5hbWUsXHJcbiAgICBcIlxcbkFyZ3M6XCIsXHJcbiAgICBhcmdzLFxyXG4gICAgXCJcXG5SZXR1cm46XCIsXHJcbiAgICByZXN1bHRcclxuICApO1xyXG59XHJcblxyXG4vKipcclxuICogTG9ncyBhbiBlcnJvciB0aGF0IG9jY3VycmVkIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIGEgc3luY2hyb25vdXMgbWV0aG9kLlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gY2xhc3NOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGNsYXNzIHRoZSBtZXRob2QgYmVsb25ncyB0by5cclxuICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZE5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbWV0aG9kLlxyXG4gKiBAcGFyYW0ge2FueVtdfSBhcmdzIC0gVGhlIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIG1ldGhvZC5cclxuICogQHBhcmFtIHtFcnJvcn0gZXJyb3IgLSBUaGUgZXJyb3IgdGhhdCBvY2N1cnJlZC5cclxuICovXHJcbmZ1bmN0aW9uIGxvZ1N5bmNNZXRob2RFcnJvcihjbGFzc05hbWUsIG1ldGhvZE5hbWUsIGFyZ3MsIGVycm9yKSB7XHJcbiAgY29uc29sZS5sb2coXHJcbiAgICBcIiVjVHlwZTogU3luYyBNZXRob2QgLVwiLFxyXG4gICAgXCJjb2xvcjogIzBkNDdhMTsgZm9udC13ZWlnaHQ6IGJvbGQ7XCIsXHJcbiAgICBcIlxcbkNsYXNzOlwiLFxyXG4gICAgY2xhc3NOYW1lLFxyXG4gICAgXCJcXG5NZXRob2Q6XCIsXHJcbiAgICBtZXRob2ROYW1lLFxyXG4gICAgXCJcXG5BcmdzOlwiLFxyXG4gICAgYXJncyxcclxuICAgIFwiXFxuRXJyb3I6XCIsXHJcbiAgICBlcnJvclxyXG4gICk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBMb2dzIHRoZSByZXN1bHQgb2YgdGhlIGV4ZWN1dGlvbiBvZiBhbiBhc3luY2hyb25vdXMgbWV0aG9kLlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gY2xhc3NOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGNsYXNzIHRoZSBtZXRob2QgYmVsb25ncyB0by5cclxuICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZE5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbWV0aG9kLlxyXG4gKiBAcGFyYW0ge2FueVtdfSBhcmdzIC0gVGhlIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIG1ldGhvZC5cclxuICogQHBhcmFtIHthbnl9IHJlc3VsdCAtIFRoZSByZXN1bHQgb2YgdGhlIG1ldGhvZCBleGVjdXRpb24uXHJcbiAqL1xyXG5mdW5jdGlvbiBsb2dBc3luY01ldGhvZChjbGFzc05hbWUsIG1ldGhvZE5hbWUsIGFyZ3MsIHJlc3VsdCkge1xyXG4gIGNvbnNvbGUubG9nKFxyXG4gICAgXCIlY1R5cGU6IEFzeW5jIE1ldGhvZCAtXCIsXHJcbiAgICBcImNvbG9yOiAjMTU2NWMwOyBmb250LXdlaWdodDogYm9sZDtcIixcclxuICAgIFwiXFxuQ2xhc3M6XCIsXHJcbiAgICBjbGFzc05hbWUsXHJcbiAgICBcIlxcbk1ldGhvZDpcIixcclxuICAgIG1ldGhvZE5hbWUsXHJcbiAgICBcIlxcbkFyZ3M6XCIsXHJcbiAgICBhcmdzLFxyXG4gICAgXCJcXG5SZXR1cm46XCIsXHJcbiAgICByZXN1bHRcclxuICApO1xyXG59XHJcblxyXG4vKipcclxuICogTG9ncyBhbiBlcnJvciB0aGF0IG9jY3VycmVkIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIGFuIGFzeW5jaHJvbm91cyBtZXRob2QuXHJcbiAqIEBwYXJhbSB7c3RyaW5nfSBjbGFzc05hbWUgLSBUaGUgbmFtZSBvZiB0aGUgY2xhc3MgdGhlIG1ldGhvZCBiZWxvbmdzIHRvLlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBtZXRob2QuXHJcbiAqIEBwYXJhbSB7YW55W119IGFyZ3MgLSBUaGUgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgbWV0aG9kLlxyXG4gKiBAcGFyYW0ge0Vycm9yfSBlcnJvciAtIFRoZSBlcnJvciB0aGF0IG9jY3VycmVkLlxyXG4gKi9cclxuZnVuY3Rpb24gbG9nQXN5bmNNZXRob2RFcnJvcihjbGFzc05hbWUsIG1ldGhvZE5hbWUsIGFyZ3MsIGVycm9yKSB7XHJcbiAgY29uc29sZS5sb2coXHJcbiAgICBcIiVjVHlwZTogQXN5bmMgTWV0aG9kIC1cIixcclxuICAgIFwiY29sb3I6ICMxNTY1YzA7IGZvbnQtd2VpZ2h0OiBib2xkO1wiLFxyXG4gICAgXCJcXG5DbGFzczpcIixcclxuICAgIGNsYXNzTmFtZSxcclxuICAgIFwiXFxuTWV0aG9kOlwiLFxyXG4gICAgbWV0aG9kTmFtZSxcclxuICAgIFwiXFxuQXJnczpcIixcclxuICAgIGFyZ3MsXHJcbiAgICBcIlxcbkVycm9yOlwiLFxyXG4gICAgZXJyb3JcclxuICApO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { CommonModule } from "@angular/common";
|
|
2
|
+
import { NgModule } from "@angular/core";
|
|
3
|
+
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
|
|
4
|
+
import { TuiLabelModule } from "@taiga-ui/core";
|
|
5
|
+
import { KwikUIModule } from "kwikui";
|
|
6
|
+
import { KwikIDFormViewComponent } from "./form-view.component";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class KwikIDFormViewModule {
|
|
9
|
+
}
|
|
10
|
+
/** @nocollapse */ KwikIDFormViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KwikIDFormViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
/** @nocollapse */ KwikIDFormViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KwikIDFormViewModule, declarations: [KwikIDFormViewComponent], imports: [CommonModule,
|
|
12
|
+
FormsModule,
|
|
13
|
+
ReactiveFormsModule,
|
|
14
|
+
TuiLabelModule,
|
|
15
|
+
KwikUIModule], exports: [KwikIDFormViewComponent] });
|
|
16
|
+
/** @nocollapse */ KwikIDFormViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KwikIDFormViewModule, imports: [[
|
|
17
|
+
CommonModule,
|
|
18
|
+
FormsModule,
|
|
19
|
+
ReactiveFormsModule,
|
|
20
|
+
TuiLabelModule,
|
|
21
|
+
KwikUIModule
|
|
22
|
+
]] });
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KwikIDFormViewModule, decorators: [{
|
|
24
|
+
type: NgModule,
|
|
25
|
+
args: [{
|
|
26
|
+
declarations: [KwikIDFormViewComponent],
|
|
27
|
+
imports: [
|
|
28
|
+
CommonModule,
|
|
29
|
+
FormsModule,
|
|
30
|
+
ReactiveFormsModule,
|
|
31
|
+
TuiLabelModule,
|
|
32
|
+
KwikUIModule
|
|
33
|
+
],
|
|
34
|
+
exports: [KwikIDFormViewComponent]
|
|
35
|
+
}]
|
|
36
|
+
}] });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2Zvcm0tdmlldy9mb3JtLXZpZXcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN0QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFhaEUsTUFBTSxPQUFPLG9CQUFvQjs7cUlBQXBCLG9CQUFvQjtzSUFBcEIsb0JBQW9CLGlCQVZoQix1QkFBdUIsYUFFcEMsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsY0FBYztRQUNkLFlBQVksYUFFSix1QkFBdUI7c0lBRXRCLG9CQUFvQixZQVR0QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGNBQWM7WUFDZCxZQUFZO1NBQ2I7NEZBR1Usb0JBQW9CO2tCQVhoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUN2QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRSxDQUFDLHVCQUF1QixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBUdWlMYWJlbE1vZHVsZSB9IGZyb20gXCJAdGFpZ2EtdWkvY29yZVwiO1xyXG5pbXBvcnQgeyBLd2lrVUlNb2R1bGUgfSBmcm9tIFwia3dpa3VpXCI7XHJcbmltcG9ydCB7IEt3aWtJREZvcm1WaWV3Q29tcG9uZW50IH0gZnJvbSBcIi4vZm9ybS12aWV3LmNvbXBvbmVudFwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtLd2lrSURGb3JtVmlld0NvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgVHVpTGFiZWxNb2R1bGUsXHJcbiAgICBLd2lrVUlNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtLd2lrSURGb3JtVmlld0NvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEt3aWtJREZvcm1WaWV3TW9kdWxlIHt9XHJcbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { FormControl, FormGroup } from "@angular/forms";
|
|
3
|
+
import { log } from "./form-view.decorators";
|
|
4
|
+
import { Defaults } from "./helpers/form-view.defaults.helper";
|
|
5
|
+
import { Validations } from "./helpers/form-view.validations.helper";
|
|
6
|
+
export class KwikIDFormViewService {
|
|
7
|
+
constructor() { }
|
|
8
|
+
// 'init' stage of the form
|
|
9
|
+
createFormGroup(fields, formData, previousFormData, allFormsData, takeAction) {
|
|
10
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
11
|
+
let formGroup = new FormGroup({});
|
|
12
|
+
for (let field of fields) {
|
|
13
|
+
if (field.type !== "title") {
|
|
14
|
+
const defaults = new Defaults(field, allFormsData, formData, previousFormData, takeAction);
|
|
15
|
+
const value = yield defaults.getDefaultValue();
|
|
16
|
+
const validators = new Validations(field, formData, previousFormData, allFormsData, takeAction).getFieldValidators(field);
|
|
17
|
+
formGroup.addControl(field.key, new FormControl({ value: value, disabled: field.disabled }, { validators: validators }));
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return formGroup;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
__decorate([
|
|
25
|
+
log
|
|
26
|
+
], KwikIDFormViewService.prototype, "createFormGroup", null);
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9mb3JtLXZpZXcvZm9ybS12aWV3LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFckUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZSxDQUFDO0lBRWhCLDJCQUEyQjtJQUVyQixlQUFlLENBQ25CLE1BQVcsRUFDWCxRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFlBQWlCLEVBQ2pCLFVBQW9COztZQUVwQixJQUFJLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUVsQyxLQUFLLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRTtnQkFDeEIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtvQkFDMUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQzNCLEtBQUssRUFDTCxZQUFZLEVBQ1osUUFBUSxFQUNSLGdCQUFnQixFQUNoQixVQUFVLENBQ1gsQ0FBQztvQkFDRixNQUFNLEtBQUssR0FBRyxNQUFNLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQztvQkFFL0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxXQUFXLENBQ2hDLEtBQUssRUFDTCxRQUFRLEVBQ1IsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixVQUFVLENBQ1gsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFFNUIsU0FBUyxDQUFDLFVBQVUsQ0FDbEIsS0FBSyxDQUFDLEdBQUcsRUFDVCxJQUFJLFdBQVcsQ0FDYixFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFDMUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQzNCLENBQ0YsQ0FBQztpQkFDSDthQUNGO1lBRUQsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztLQUFBO0NBQ0Y7QUF4Q0M7SUFEQyxHQUFHOzREQXdDSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgbG9nIH0gZnJvbSBcIi4vZm9ybS12aWV3LmRlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgRGVmYXVsdHMgfSBmcm9tIFwiLi9oZWxwZXJzL2Zvcm0tdmlldy5kZWZhdWx0cy5oZWxwZXJcIjtcclxuaW1wb3J0IHsgVmFsaWRhdGlvbnMgfSBmcm9tIFwiLi9oZWxwZXJzL2Zvcm0tdmlldy52YWxpZGF0aW9ucy5oZWxwZXJcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBLd2lrSURGb3JtVmlld1NlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgLy8gJ2luaXQnIHN0YWdlIG9mIHRoZSBmb3JtXHJcbiAgQGxvZ1xyXG4gIGFzeW5jIGNyZWF0ZUZvcm1Hcm91cChcclxuICAgIGZpZWxkczogYW55LFxyXG4gICAgZm9ybURhdGE6IGFueSxcclxuICAgIHByZXZpb3VzRm9ybURhdGE6IGFueSxcclxuICAgIGFsbEZvcm1zRGF0YTogYW55LFxyXG4gICAgdGFrZUFjdGlvbjogRnVuY3Rpb25cclxuICApIHtcclxuICAgIGxldCBmb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcclxuXHJcbiAgICBmb3IgKGxldCBmaWVsZCBvZiBmaWVsZHMpIHtcclxuICAgICAgaWYgKGZpZWxkLnR5cGUgIT09IFwidGl0bGVcIikge1xyXG4gICAgICAgIGNvbnN0IGRlZmF1bHRzID0gbmV3IERlZmF1bHRzKFxyXG4gICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICBhbGxGb3Jtc0RhdGEsXHJcbiAgICAgICAgICBmb3JtRGF0YSxcclxuICAgICAgICAgIHByZXZpb3VzRm9ybURhdGEsXHJcbiAgICAgICAgICB0YWtlQWN0aW9uXHJcbiAgICAgICAgKTtcclxuICAgICAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGRlZmF1bHRzLmdldERlZmF1bHRWYWx1ZSgpO1xyXG5cclxuICAgICAgICBjb25zdCB2YWxpZGF0b3JzID0gbmV3IFZhbGlkYXRpb25zKFxyXG4gICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICBmb3JtRGF0YSxcclxuICAgICAgICAgIHByZXZpb3VzRm9ybURhdGEsXHJcbiAgICAgICAgICBhbGxGb3Jtc0RhdGEsXHJcbiAgICAgICAgICB0YWtlQWN0aW9uXHJcbiAgICAgICAgKS5nZXRGaWVsZFZhbGlkYXRvcnMoZmllbGQpO1xyXG5cclxuICAgICAgICBmb3JtR3JvdXAuYWRkQ29udHJvbChcclxuICAgICAgICAgIGZpZWxkLmtleSxcclxuICAgICAgICAgIG5ldyBGb3JtQ29udHJvbChcclxuICAgICAgICAgICAgeyB2YWx1ZTogdmFsdWUsIGRpc2FibGVkOiBmaWVsZC5kaXNhYmxlZCB9LFxyXG4gICAgICAgICAgICB7IHZhbGlkYXRvcnM6IHZhbGlkYXRvcnMgfVxyXG4gICAgICAgICAgKVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZm9ybUdyb3VwO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { log } from "../form-view.decorators";
|
|
3
|
+
import { Condition } from "./form-view.condition.helper";
|
|
4
|
+
export class Actions {
|
|
5
|
+
constructor(action, field, ruleMapping, allFormsData, formData, previousFormData, takeAction) {
|
|
6
|
+
this._action = action;
|
|
7
|
+
this._field = field;
|
|
8
|
+
this._ruleMapping = ruleMapping;
|
|
9
|
+
this._allFormsData = allFormsData;
|
|
10
|
+
this._formData = formData;
|
|
11
|
+
this._previousFormData = previousFormData;
|
|
12
|
+
this._takeAction = takeAction;
|
|
13
|
+
}
|
|
14
|
+
execute() {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const condition = new Condition(this._action.condition, this._ruleMapping);
|
|
17
|
+
const actionSuccess = condition.evaluate();
|
|
18
|
+
if (actionSuccess) {
|
|
19
|
+
return this._takeAction(this._action, this._field, this._allFormsData, this._formData, this._previousFormData);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
__decorate([
|
|
25
|
+
log
|
|
26
|
+
], Actions.prototype, "execute", null);
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmFjdGlvbnMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWZvcm1zL3NyYy9saWIvcmVuZGVyZXIvZm9ybS12aWV3L2hlbHBlcnMvZm9ybS12aWV3LmFjdGlvbnMuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXpELE1BQU0sT0FBTyxPQUFPO0lBU2xCLFlBQ0UsTUFBZSxFQUNmLEtBQWEsRUFDYixXQUFnQixFQUNoQixZQUFpQixFQUNqQixRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFVBQW9CO1FBRXBCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBR0ssT0FBTzs7WUFDWCxNQUFNLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDM0UsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRTNDLElBQUksYUFBYSxFQUFFO2dCQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQ3JCLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLE1BQU0sRUFDWCxJQUFJLENBQUMsYUFBYSxFQUNsQixJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxpQkFBaUIsQ0FDdkIsQ0FBQzthQUNIO1FBQ0gsQ0FBQztLQUFBO0NBQ0Y7QUFkQztJQURDLEdBQUc7c0NBY0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUQWN0aW9uIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2FjdGlvbnMvZm9ybS12aWV3LmFjdGlvbnMudHlwZS5kZWZpbml0aW9uc1wiO1xyXG5pbXBvcnQgeyBURmllbGQgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvZmllbGRzL2Zvcm0tdmlldy5maWVsZHMudHlwZS5kZWZpbml0aW9uc1wiO1xyXG5pbXBvcnQgeyBsb2cgfSBmcm9tIFwiLi4vZm9ybS12aWV3LmRlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4vZm9ybS12aWV3LmNvbmRpdGlvbi5oZWxwZXJcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25zIHtcclxuICBwcml2YXRlIF9hY3Rpb246IFRBY3Rpb247XHJcbiAgcHJpdmF0ZSBfYWxsRm9ybXNEYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSBfZmllbGQ6IFRGaWVsZDtcclxuICBwcml2YXRlIF9mb3JtRGF0YTogYW55O1xyXG4gIHByaXZhdGUgX3ByZXZpb3VzRm9ybURhdGE6IGFueTtcclxuICBwcml2YXRlIF9ydWxlTWFwcGluZzogYW55O1xyXG4gIHByaXZhdGUgX3Rha2VBY3Rpb246IEZ1bmN0aW9uO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGFjdGlvbjogVEFjdGlvbixcclxuICAgIGZpZWxkOiBURmllbGQsXHJcbiAgICBydWxlTWFwcGluZzogYW55LFxyXG4gICAgYWxsRm9ybXNEYXRhOiBhbnksXHJcbiAgICBmb3JtRGF0YTogYW55LFxyXG4gICAgcHJldmlvdXNGb3JtRGF0YTogYW55LFxyXG4gICAgdGFrZUFjdGlvbjogRnVuY3Rpb25cclxuICApIHtcclxuICAgIHRoaXMuX2FjdGlvbiA9IGFjdGlvbjtcclxuICAgIHRoaXMuX2ZpZWxkID0gZmllbGQ7XHJcbiAgICB0aGlzLl9ydWxlTWFwcGluZyA9IHJ1bGVNYXBwaW5nO1xyXG4gICAgdGhpcy5fYWxsRm9ybXNEYXRhID0gYWxsRm9ybXNEYXRhO1xyXG4gICAgdGhpcy5fZm9ybURhdGEgPSBmb3JtRGF0YTtcclxuICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEgPSBwcmV2aW91c0Zvcm1EYXRhO1xyXG4gICAgdGhpcy5fdGFrZUFjdGlvbiA9IHRha2VBY3Rpb247XHJcbiAgfVxyXG5cclxuICBAbG9nXHJcbiAgYXN5bmMgZXhlY3V0ZSgpIHtcclxuICAgIGNvbnN0IGNvbmRpdGlvbiA9IG5ldyBDb25kaXRpb24odGhpcy5fYWN0aW9uLmNvbmRpdGlvbiwgdGhpcy5fcnVsZU1hcHBpbmcpO1xyXG4gICAgY29uc3QgYWN0aW9uU3VjY2VzcyA9IGNvbmRpdGlvbi5ldmFsdWF0ZSgpO1xyXG5cclxuICAgIGlmIChhY3Rpb25TdWNjZXNzKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90YWtlQWN0aW9uKFxyXG4gICAgICAgIHRoaXMuX2FjdGlvbixcclxuICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICB0aGlzLl9hbGxGb3Jtc0RhdGEsXHJcbiAgICAgICAgdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgICAgdGhpcy5fcHJldmlvdXNGb3JtRGF0YVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { log } from "../form-view.decorators";
|
|
3
|
+
import { Actions } from "./form-view.actions.helper";
|
|
4
|
+
import { setValueToObject } from "./form-view.common.helper";
|
|
5
|
+
import { Condition } from "./form-view.condition.helper";
|
|
6
|
+
import { Rules } from "./form-view.rules.helper";
|
|
7
|
+
import { Sources } from "./form-view.sources.helper";
|
|
8
|
+
export class Apis {
|
|
9
|
+
constructor(field, formData, previousFormData, allFormsData, takeAction) {
|
|
10
|
+
this._field = field;
|
|
11
|
+
this._formData = formData;
|
|
12
|
+
this._previousFormData = previousFormData;
|
|
13
|
+
this._allFormsData = allFormsData;
|
|
14
|
+
this._takeAction = takeAction;
|
|
15
|
+
this._api = field.api;
|
|
16
|
+
this._request = field.api.request;
|
|
17
|
+
this._response = field.api.response;
|
|
18
|
+
this._status = field.api.status;
|
|
19
|
+
}
|
|
20
|
+
setRequestBodyParams() {
|
|
21
|
+
var _a, _b, _c;
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
let params = this._request.body.params;
|
|
24
|
+
let paramIndex = 0;
|
|
25
|
+
for (let param of params) {
|
|
26
|
+
let sources = param.sources;
|
|
27
|
+
let sourceIndex = 0;
|
|
28
|
+
for (let source of sources) {
|
|
29
|
+
const sources = new Sources(this._field, this._formData, this._previousFormData, this._allFormsData);
|
|
30
|
+
const value = sources.getValueFromSource(source);
|
|
31
|
+
// Set the Value of current source.
|
|
32
|
+
this._field = setValueToObject(this._field, `api.request.body.params[${paramIndex}].sources[${sourceIndex}].value`, value);
|
|
33
|
+
const validation = source.validation;
|
|
34
|
+
const triggers = (_a = validation === null || validation === void 0 ? void 0 : validation.triggers) !== null && _a !== void 0 ? _a : [];
|
|
35
|
+
const rules = (_b = validation === null || validation === void 0 ? void 0 : validation.rules) !== null && _b !== void 0 ? _b : [];
|
|
36
|
+
const actions = (_c = validation === null || validation === void 0 ? void 0 : validation.actions) !== null && _c !== void 0 ? _c : [];
|
|
37
|
+
const rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
|
|
38
|
+
for (let action of actions) {
|
|
39
|
+
const conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
|
|
40
|
+
if (conditionEvaluation) {
|
|
41
|
+
const actions = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
|
|
42
|
+
yield actions.execute();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
sourceIndex++;
|
|
46
|
+
}
|
|
47
|
+
paramIndex++;
|
|
48
|
+
}
|
|
49
|
+
return this._field;
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
validateRequestBody() {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
const body = this._request.body;
|
|
55
|
+
const validation = body.validation;
|
|
56
|
+
const triggers = validation.triggers;
|
|
57
|
+
const rules = validation.rules;
|
|
58
|
+
const actions = validation.actions;
|
|
59
|
+
const rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
|
|
60
|
+
for (let action of actions) {
|
|
61
|
+
const conditionSuccess = new Condition(action.condition, rulesMapping).evaluate();
|
|
62
|
+
if (conditionSuccess) {
|
|
63
|
+
const actions = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
|
|
64
|
+
yield actions.execute();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return this._field;
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
validateApiCallResponse() {
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
const validation = this._response.validation;
|
|
73
|
+
const triggers = validation.triggers;
|
|
74
|
+
const rules = validation.rules;
|
|
75
|
+
const actions = validation.actions;
|
|
76
|
+
const rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
|
|
77
|
+
for (let action of actions) {
|
|
78
|
+
const conditionSuccess = new Condition(action.condition, rulesMapping).evaluate();
|
|
79
|
+
if (conditionSuccess) {
|
|
80
|
+
const actions = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
|
|
81
|
+
yield actions.execute();
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return this._field;
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
getPropsValues() {
|
|
88
|
+
return {
|
|
89
|
+
field: this._field,
|
|
90
|
+
formData: this._formData,
|
|
91
|
+
previousFormData: this._previousFormData,
|
|
92
|
+
allFormsData: this._allFormsData
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
__decorate([
|
|
97
|
+
log
|
|
98
|
+
], Apis.prototype, "setRequestBodyParams", null);
|
|
99
|
+
__decorate([
|
|
100
|
+
log
|
|
101
|
+
], Apis.prototype, "validateRequestBody", null);
|
|
102
|
+
__decorate([
|
|
103
|
+
log
|
|
104
|
+
], Apis.prototype, "validateApiCallResponse", null);
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmFwaXMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWZvcm1zL3NyYy9saWIvcmVuZGVyZXIvZm9ybS12aWV3L2hlbHBlcnMvZm9ybS12aWV3LmFwaXMuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFjQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXJELE1BQU0sT0FBTyxJQUFJO0lBWWYsWUFDRSxLQUFvQixFQUNwQixRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFlBQWlCLEVBQ2pCLFVBQW9CO1FBRXBCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQztRQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztRQUU5QixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ3BDLElBQUks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R0FBRyxJQUFJLFNBQVMsQ0FDcEMsTUFBTSxDQUFDLFNBQVMsRUFDaEIsWUFBWSxDQUNiLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBRWIsSUFBSSxnQkFBZ0IsRUFBRTtvQkFDcEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQ3pCLE1BQU0sRUFDTixJQUFJLENBQUMsTUFBTSxFQUNYLFlBQVksRUFDWixJQUFJLENBQUMsYUFBYSxFQUNsQixJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FDakIsQ0FBQztvQkFFRixNQUFNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDekI7YUFDRjtZQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNyQixDQUFDO0tBQUE7SUFFRCxjQUFjO1FBQ1osT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNsQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDeEIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN4QyxZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDakMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTdKQztJQURDLEdBQUc7Z0RBa0VIO0FBR0Q7SUFEQyxHQUFHOytDQXdDSDtBQUdEO0lBREMsR0FBRzttREFzQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUQWN0aW9uIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2FjdGlvbnMvZm9ybS12aWV3LmFjdGlvbnMudHlwZS5kZWZpbml0aW9uc1wiO1xyXG5pbXBvcnQge1xyXG4gIFRBcGksXHJcbiAgVEFwaVJlcXVlc3QsXHJcbiAgVEFwaVJlcXVlc3RCb2R5LFxyXG4gIFRBcGlSZXF1ZXN0Qm9keVBhcmFtLFxyXG4gIFRBcGlSZXNwb25zZSxcclxuICBUQXBpU3RhdHVzXHJcbn0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2FwaXMvZm9ybS12aWV3LmFwaXMudHlwZS5kZWZpbml0aW9uc1wiO1xyXG5pbXBvcnQgeyBURmllbGRBcGlDYWxsIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2ZpZWxkcy9mb3JtLXZpZXcuZmllbGRzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFJ1bGUgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvcnVsZXMvZm9ybS12aWV3LnJ1bGVzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFNvdXJjZSB9IGZyb20gXCIuLi9kZWZpbml0aW9ucy9zb3VyY2VzL2Zvcm0tdmlldy5zb3VyY2VzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFRyaWdnZXIgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvdHJpZ2dlcnMvZm9ybS12aWV3LnRyaWdnZXJzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFZhbGlkYXRpb24gfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvdmFsaWRhdGlvbnMvZm9ybS12aWV3LnZhbGlkYXRpb25zLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgbG9nIH0gZnJvbSBcIi4uL2Zvcm0tdmlldy5kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IEFjdGlvbnMgfSBmcm9tIFwiLi9mb3JtLXZpZXcuYWN0aW9ucy5oZWxwZXJcIjtcclxuaW1wb3J0IHsgc2V0VmFsdWVUb09iamVjdCB9IGZyb20gXCIuL2Zvcm0tdmlldy5jb21tb24uaGVscGVyXCI7XHJcbmltcG9ydCB7IENvbmRpdGlvbiB9IGZyb20gXCIuL2Zvcm0tdmlldy5jb25kaXRpb24uaGVscGVyXCI7XHJcbmltcG9ydCB7IFJ1bGVzIH0gZnJvbSBcIi4vZm9ybS12aWV3LnJ1bGVzLmhlbHBlclwiO1xyXG5pbXBvcnQgeyBTb3VyY2VzIH0gZnJvbSBcIi4vZm9ybS12aWV3LnNvdXJjZXMuaGVscGVyXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQXBpcyB7XHJcbiAgcHJpdmF0ZSBfZm9ybURhdGE6IGFueTtcclxuICBwcml2YXRlIF9wcmV2aW91c0Zvcm1EYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSBfYWxsRm9ybXNEYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSBfZmllbGQ6IFRGaWVsZEFwaUNhbGw7XHJcbiAgcHJpdmF0ZSBfdGFrZUFjdGlvbjogRnVuY3Rpb247XHJcblxyXG4gIHByaXZhdGUgX2FwaTogVEFwaTtcclxuICBwcml2YXRlIF9yZXF1ZXN0OiBUQXBpUmVxdWVzdDtcclxuICBwcml2YXRlIF9yZXNwb25zZTogVEFwaVJlc3BvbnNlO1xyXG4gIHByaXZhdGUgX3N0YXR1czogVEFwaVN0YXR1cztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBmaWVsZDogVEZpZWxkQXBpQ2FsbCxcclxuICAgIGZvcm1EYXRhOiBhbnksXHJcbiAgICBwcmV2aW91c0Zvcm1EYXRhOiBhbnksXHJcbiAgICBhbGxGb3Jtc0RhdGE6IGFueSxcclxuICAgIHRha2VBY3Rpb246IEZ1bmN0aW9uXHJcbiAgKSB7XHJcbiAgICB0aGlzLl9maWVsZCA9IGZpZWxkO1xyXG4gICAgdGhpcy5fZm9ybURhdGEgPSBmb3JtRGF0YTtcclxuICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEgPSBwcmV2aW91c0Zvcm1EYXRhO1xyXG4gICAgdGhpcy5fYWxsRm9ybXNEYXRhID0gYWxsRm9ybXNEYXRhO1xyXG4gICAgdGhpcy5fdGFrZUFjdGlvbiA9IHRha2VBY3Rpb247XHJcblxyXG4gICAgdGhpcy5fYXBpID0gZmllbGQuYXBpO1xyXG4gICAgdGhpcy5fcmVxdWVzdCA9IGZpZWxkLmFwaS5yZXF1ZXN0O1xyXG4gICAgdGhpcy5fcmVzcG9uc2UgPSBmaWVsZC5hcGkucmVzcG9uc2U7XHJcbiAgICB0aGlzLl9zdGF0dXMgPSBmaWVsZC5hcGkuc3RhdHVzO1xyXG4gIH1cclxuXHJcbiAgQGxvZ1xyXG4gIHB1YmxpYyBhc3luYyBzZXRSZXF1ZXN0Qm9keVBhcmFtcygpOiBQcm9taXNlPFRGaWVsZEFwaUNhbGw+IHtcclxuICAgIGxldCBwYXJhbXM6IEFycmF5PFRBcGlSZXF1ZXN0Qm9keVBhcmFtPiA9IHRoaXMuX3JlcXVlc3QuYm9keS5wYXJhbXM7XHJcblxyXG4gICAgbGV0IHBhcmFtSW5kZXggPSAwO1xyXG4gICAgZm9yIChsZXQgcGFyYW0gb2YgcGFyYW1zKSB7XHJcbiAgICAgIGxldCBzb3VyY2VzOiBBcnJheTxUU291cmNlPiA9IHBhcmFtLnNvdXJjZXM7XHJcblxyXG4gICAgICBsZXQgc291cmNlSW5kZXggPSAwO1xyXG4gICAgICBmb3IgKGxldCBzb3VyY2Ugb2Ygc291cmNlcykge1xyXG4gICAgICAgIGNvbnN0IHNvdXJjZXMgPSBuZXcgU291cmNlcyhcclxuICAgICAgICAgIHRoaXMuX2ZpZWxkLFxyXG4gICAgICAgICAgdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgICAgICB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICAgICAgdGhpcy5fYWxsRm9ybXNEYXRhXHJcbiAgICAgICAgKTtcclxuICAgICAgICBjb25zdCB2YWx1ZSA9IHNvdXJjZXMuZ2V0VmFsdWVGcm9tU291cmNlKHNvdXJjZSk7XHJcbiAgICAgICAgLy8gU2V0IHRoZSBWYWx1ZSBvZiBjdXJyZW50IHNvdXJjZS5cclxuICAgICAgICB0aGlzLl9maWVsZCA9IHNldFZhbHVlVG9PYmplY3QoXHJcbiAgICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICAgIGBhcGkucmVxdWVzdC5ib2R5LnBhcmFtc1ske3BhcmFtSW5kZXh9XS5zb3VyY2VzWyR7c291cmNlSW5kZXh9XS52YWx1ZWAsXHJcbiAgICAgICAgICB2YWx1ZVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGNvbnN0IHZhbGlkYXRpb246IFRWYWxpZGF0aW9uID0gc291cmNlLnZhbGlkYXRpb247XHJcblxyXG4gICAgICAgIGNvbnN0IHRyaWdnZXJzOiBBcnJheTxUVHJpZ2dlcj4gPSB2YWxpZGF0aW9uPy50cmlnZ2VycyA/PyBbXTtcclxuICAgICAgICBjb25zdCBydWxlczogQXJyYXk8VFJ1bGU+ID0gdmFsaWRhdGlvbj8ucnVsZXMgPz8gW107XHJcbiAgICAgICAgY29uc3QgYWN0aW9uczogQXJyYXk8VEFjdGlvbj4gPSB2YWxpZGF0aW9uPy5hY3Rpb25zID8/IFtdO1xyXG5cclxuICAgICAgICBjb25zdCBydWxlc01hcHBpbmcgPSBuZXcgUnVsZXMoXHJcbiAgICAgICAgICBydWxlcyxcclxuICAgICAgICAgIHRoaXMuX2ZpZWxkLFxyXG4gICAgICAgICAgdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgICAgICB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICAgICAgdGhpcy5fYWxsRm9ybXNEYXRhXHJcbiAgICAgICAgKS5tYXBwaW5nKCk7XHJcblxyXG4gICAgICAgIGZvciAobGV0IGFjdGlvbiBvZiBhY3Rpb25zKSB7XHJcbiAgICAgICAgICBjb25zdCBjb25kaXRpb25FdmFsdWF0aW9uID0gbmV3IENvbmRpdGlvbihcclxuICAgICAgICAgICAgYWN0aW9uLmNvbmRpdGlvbixcclxuICAgICAgICAgICAgcnVsZXNNYXBwaW5nXHJcbiAgICAgICAgICApLmV2YWx1YXRlKCk7XHJcblxyXG4gICAgICAgICAgaWYgKGNvbmRpdGlvbkV2YWx1YXRpb24pIHtcclxuICAgICAgICAgICAgY29uc3QgYWN0aW9ucyA9IG5ldyBBY3Rpb25zKFxyXG4gICAgICAgICAgICAgIGFjdGlvbixcclxuICAgICAgICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICAgICAgICBydWxlc01hcHBpbmcsXHJcbiAgICAgICAgICAgICAgdGhpcy5fYWxsRm9ybXNEYXRhLFxyXG4gICAgICAgICAgICAgIHRoaXMuX2Zvcm1EYXRhLFxyXG4gICAgICAgICAgICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEsXHJcbiAgICAgICAgICAgICAgdGhpcy5fdGFrZUFjdGlvblxyXG4gICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgYXdhaXQgYWN0aW9ucy5leGVjdXRlKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzb3VyY2VJbmRleCsrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwYXJhbUluZGV4Kys7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2ZpZWxkO1xyXG4gIH1cclxuXHJcbiAgQGxvZ1xyXG4gIHB1YmxpYyBhc3luYyB2YWxpZGF0ZVJlcXVlc3RCb2R5KCk6IFByb21pc2U8VEZpZWxkQXBpQ2FsbD4ge1xyXG4gICAgY29uc3QgYm9keTogVEFwaVJlcXVlc3RCb2R5ID0gdGhpcy5fcmVxdWVzdC5ib2R5O1xyXG5cclxuICAgIGNvbnN0IHZhbGlkYXRpb246IFRWYWxpZGF0aW9uID0gYm9keS52YWxpZGF0aW9uO1xyXG5cclxuICAgIGNvbnN0IHRyaWdnZXJzOiBBcnJheTxUVHJpZ2dlcj4gPSB2YWxpZGF0aW9uLnRyaWdnZXJzO1xyXG4gICAgY29uc3QgcnVsZXM6IEFycmF5PFRSdWxlPiA9IHZhbGlkYXRpb24ucnVsZXM7XHJcbiAgICBjb25zdCBhY3Rpb25zOiBBcnJheTxUQWN0aW9uPiA9IHZhbGlkYXRpb24uYWN0aW9ucztcclxuXHJcbiAgICBjb25zdCBydWxlc01hcHBpbmcgPSBuZXcgUnVsZXMoXHJcbiAgICAgIHJ1bGVzLFxyXG4gICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEsXHJcbiAgICAgIHRoaXMuX2FsbEZvcm1zRGF0YVxyXG4gICAgKS5tYXBwaW5nKCk7XHJcblxyXG4gICAgZm9yIChsZXQgYWN0aW9uIG9mIGFjdGlvbnMpIHtcclxuICAgICAgY29uc3QgY29uZGl0aW9uU3VjY2VzcyA9IG5ldyBDb25kaXRpb24oXHJcbiAgICAgICAgYWN0aW9uLmNvbmRpdGlvbixcclxuICAgICAgICBydWxlc01hcHBpbmdcclxuICAgICAgKS5ldmFsdWF0ZSgpO1xyXG5cclxuICAgICAgaWYgKGNvbmRpdGlvblN1Y2Nlc3MpIHtcclxuICAgICAgICBjb25zdCBhY3Rpb25zID0gbmV3IEFjdGlvbnMoXHJcbiAgICAgICAgICBhY3Rpb24sXHJcbiAgICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICAgIHJ1bGVzTWFwcGluZyxcclxuICAgICAgICAgIHRoaXMuX2FsbEZvcm1zRGF0YSxcclxuICAgICAgICAgIHRoaXMuX2Zvcm1EYXRhLFxyXG4gICAgICAgICAgdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcclxuICAgICAgICAgIHRoaXMuX3Rha2VBY3Rpb25cclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBhd2FpdCBhY3Rpb25zLmV4ZWN1dGUoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLl9maWVsZDtcclxuICB9XHJcblxyXG4gIEBsb2dcclxuICBwdWJsaWMgYXN5bmMgdmFsaWRhdGVBcGlDYWxsUmVzcG9uc2UoKTogUHJvbWlzZTxURmllbGRBcGlDYWxsPiB7XHJcbiAgICBjb25zdCB2YWxpZGF0aW9uOiBUVmFsaWRhdGlvbiA9IHRoaXMuX3Jlc3BvbnNlLnZhbGlkYXRpb247XHJcblxyXG4gICAgY29uc3QgdHJpZ2dlcnM6IEFycmF5PFRUcmlnZ2VyPiA9IHZhbGlkYXRpb24udHJpZ2dlcnM7XHJcbiAgICBjb25zdCBydWxlczogQXJyYXk8VFJ1bGU+ID0gdmFsaWRhdGlvbi5ydWxlcztcclxuICAgIGNvbnN0IGFjdGlvbnM6IEFycmF5PFRBY3Rpb24+ID0gdmFsaWRhdGlvbi5hY3Rpb25zO1xyXG5cclxuICAgIGNvbnN0IHJ1bGVzTWFwcGluZyA9IG5ldyBSdWxlcyhcclxuICAgICAgcnVsZXMsXHJcbiAgICAgIHRoaXMuX2ZpZWxkLFxyXG4gICAgICB0aGlzLl9mb3JtRGF0YSxcclxuICAgICAgdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcclxuICAgICAgdGhpcy5fYWxsRm9ybXNEYXRhXHJcbiAgICApLm1hcHBpbmcoKTtcclxuXHJcbiAgICBmb3IgKGxldCBhY3Rpb24gb2YgYWN0aW9ucykge1xyXG4gICAgICBjb25zdCBjb25kaXRpb25TdWNjZXNzID0gbmV3IENvbmRpdGlvbihcclxuICAgICAgICBhY3Rpb24uY29uZGl0aW9uLFxyXG4gICAgICAgIHJ1bGVzTWFwcGluZ1xyXG4gICAgICApLmV2YWx1YXRlKCk7XHJcblxyXG4gICAgICBpZiAoY29uZGl0aW9uU3VjY2Vzcykge1xyXG4gICAgICAgIGNvbnN0IGFjdGlvbnMgPSBuZXcgQWN0aW9ucyhcclxuICAgICAgICAgIGFjdGlvbixcclxuICAgICAgICAgIHRoaXMuX2ZpZWxkLFxyXG4gICAgICAgICAgcnVsZXNNYXBwaW5nLFxyXG4gICAgICAgICAgdGhpcy5fYWxsRm9ybXNEYXRhLFxyXG4gICAgICAgICAgdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgICAgICB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICAgICAgdGhpcy5fdGFrZUFjdGlvblxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGF3YWl0IGFjdGlvbnMuZXhlY3V0ZSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2ZpZWxkO1xyXG4gIH1cclxuXHJcbiAgZ2V0UHJvcHNWYWx1ZXMoKTogYW55IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGZpZWxkOiB0aGlzLl9maWVsZCxcclxuICAgICAgZm9ybURhdGE6IHRoaXMuX2Zvcm1EYXRhLFxyXG4gICAgICBwcmV2aW91c0Zvcm1EYXRhOiB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICBhbGxGb3Jtc0RhdGE6IHRoaXMuX2FsbEZvcm1zRGF0YVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { TuiDay } from "@taiga-ui/cdk";
|
|
2
|
+
import jp from "jsonpath";
|
|
3
|
+
import _ from "lodash";
|
|
4
|
+
import { EFieldType } from "../definitions/fields/form-view.fields.enum.definitions";
|
|
5
|
+
export const hasKey = (object, key) => {
|
|
6
|
+
return object.hasOwnProperty(key);
|
|
7
|
+
};
|
|
8
|
+
export const hasPath = (object, path) => {
|
|
9
|
+
return _.has(object, path);
|
|
10
|
+
};
|
|
11
|
+
export const isEmptyString = (value) => {
|
|
12
|
+
return value === "";
|
|
13
|
+
};
|
|
14
|
+
export const isUndefined = (value) => {
|
|
15
|
+
return value === undefined;
|
|
16
|
+
};
|
|
17
|
+
export const isNull = (value) => {
|
|
18
|
+
return value === null;
|
|
19
|
+
};
|
|
20
|
+
export const isEmptyObject = (object) => {
|
|
21
|
+
return (object &&
|
|
22
|
+
Object.keys(object).length === 0 &&
|
|
23
|
+
Object.getPrototypeOf(object) === Object.prototype);
|
|
24
|
+
};
|
|
25
|
+
export const isEmptyArray = (arr) => {
|
|
26
|
+
return arr.length === 0;
|
|
27
|
+
};
|
|
28
|
+
export const isEmpty = (value) => {
|
|
29
|
+
if (isEmptyString(value) || isUndefined(value) || isNull(value)) {
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
else if (isEmptyObject(value)) {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
else if (Array.isArray(value)) {
|
|
36
|
+
if (isEmptyArray(value)) {
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
export const isNotEmpty = (value) => {
|
|
48
|
+
return !isEmpty(value);
|
|
49
|
+
};
|
|
50
|
+
export const isEmptyBrowserStorageValue = (value) => {
|
|
51
|
+
return isNull(value) && isUndefined(value);
|
|
52
|
+
};
|
|
53
|
+
export const isNotEmptyBrowserStorageValue = (value) => {
|
|
54
|
+
return !isEmptyBrowserStorageValue(value);
|
|
55
|
+
};
|
|
56
|
+
export const handleJPQueryResponse = (value) => {
|
|
57
|
+
/**
|
|
58
|
+
* jp.query doesn't always return an array with one element
|
|
59
|
+
* so directly can't access with [0], need to check conditionally
|
|
60
|
+
*/
|
|
61
|
+
if (Array.isArray(value)) {
|
|
62
|
+
if (value.length > 0) {
|
|
63
|
+
value = value[0];
|
|
64
|
+
}
|
|
65
|
+
else if (value.length === 0) {
|
|
66
|
+
value = "";
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
value = "";
|
|
71
|
+
}
|
|
72
|
+
return value;
|
|
73
|
+
};
|
|
74
|
+
export const jpQueryWrapper = (obj, key) => {
|
|
75
|
+
return handleJPQueryResponse(jp.query(obj, key));
|
|
76
|
+
};
|
|
77
|
+
export const replaceString = (str, find, replace) => {
|
|
78
|
+
return str.replace(new RegExp(find, "g"), replace);
|
|
79
|
+
};
|
|
80
|
+
export const setFieldKeyValue = (field, path, value) => {
|
|
81
|
+
return _.set(field, path, value);
|
|
82
|
+
};
|
|
83
|
+
export const setValueToObject = (object, path, value) => {
|
|
84
|
+
return _.set(object, path, value);
|
|
85
|
+
};
|
|
86
|
+
export const formatValue = (field, fieldValue) => {
|
|
87
|
+
const fieldType = field.type;
|
|
88
|
+
let value;
|
|
89
|
+
if (isNotEmpty(fieldValue)) {
|
|
90
|
+
switch (fieldType) {
|
|
91
|
+
case EFieldType.DATE:
|
|
92
|
+
const splitDate = fieldValue.split("-");
|
|
93
|
+
value = new TuiDay(Number(splitDate[2]), // Year
|
|
94
|
+
Number(splitDate[1]) - 1, // Month, Why '-1' => Because Taiga-UI Required It, So...
|
|
95
|
+
Number(splitDate[0]) // Day
|
|
96
|
+
);
|
|
97
|
+
break;
|
|
98
|
+
case EFieldType.RADIO:
|
|
99
|
+
const fieldRadio = field;
|
|
100
|
+
value = fieldRadio.options.find((item) => {
|
|
101
|
+
return item.label === fieldValue;
|
|
102
|
+
});
|
|
103
|
+
break;
|
|
104
|
+
case EFieldType.CHECKBOX:
|
|
105
|
+
value = Boolean(fieldValue);
|
|
106
|
+
break;
|
|
107
|
+
default:
|
|
108
|
+
value = fieldValue;
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
value = fieldValue;
|
|
114
|
+
}
|
|
115
|
+
return value;
|
|
116
|
+
};
|
|
117
|
+
export const setEmptyValue = (field) => {
|
|
118
|
+
const fieldType = field.type;
|
|
119
|
+
let value;
|
|
120
|
+
switch (fieldType) {
|
|
121
|
+
case EFieldType.CHECKBOX:
|
|
122
|
+
value = false;
|
|
123
|
+
break;
|
|
124
|
+
case EFieldType.NUMBER:
|
|
125
|
+
value = null;
|
|
126
|
+
break;
|
|
127
|
+
case EFieldType.DATE:
|
|
128
|
+
value = null;
|
|
129
|
+
break;
|
|
130
|
+
default:
|
|
131
|
+
value = "";
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
return value;
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmNvbW1vbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9mb3JtLXZpZXcvaGVscGVycy9mb3JtLXZpZXcuY29tbW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMxQixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBT3JGLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxDQUFDLE1BQVcsRUFBRSxHQUFXLEVBQVcsRUFBRTtJQUMxRCxPQUFPLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDcEMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBVyxFQUFFLElBQVksRUFBVyxFQUFFO0lBQzVELE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsS0FBYSxFQUFXLEVBQUU7SUFDdEQsT0FBTyxLQUFLLEtBQUssRUFBRSxDQUFDO0FBQ3RCLENBQUMsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQVUsRUFBVyxFQUFFO0lBQ2pELE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQztBQUM3QixDQUFDLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxLQUFVLEVBQVcsRUFBRTtJQUM1QyxPQUFPLEtBQUssS0FBSyxJQUFJLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FB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Q0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixLQUFLLFVBQVUsQ0FBQyxRQUFRO2dCQUN0QixLQUFLLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUM1QixNQUFNO1lBQ1I7Z0JBQ0UsS0FBSyxHQUFHLFVBQVUsQ0FBQztnQkFDbkIsTUFBTTtTQUNUO0tBQ0Y7U0FBTTtRQUNMLEtBQUssR0FBRyxVQUFVLENBQUM7S0FDcEI7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWEsRUFBTyxFQUFFO0lBQ2xELE1BQU0sU0FBUyxHQUFlLEtBQUssQ0FBQyxJQUFJLENBQUM7SUFDekMsSUFBSSxLQUFVLENBQUM7SUFFZixRQUFRLFNBQVMsRUFBRTtRQUNqQixLQUFLLFVBQVUsQ0FBQyxRQUFRO1lBQ3RCLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDZCxNQUFNO1FBQ1IsS0FBSyxVQUFVLENBQUMsTUFBTTtZQUNwQixLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ2IsTUFBTTtRQUNSLEtBQUssVUFBVSxDQUFDLElBQUk7WUFDbEIsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNiLE1BQU07UUFDUjtZQUNFLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDWCxNQUFNO0tBQ1Q7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR1aURheSB9IGZyb20gXCJAdGFpZ2EtdWkvY2RrXCI7XHJcbmltcG9ydCBqcCBmcm9tIFwianNvbnBhdGhcIjtcclxuaW1wb3J0IF8gZnJvbSBcImxvZGFzaFwiO1xyXG5pbXBvcnQgeyBFRmllbGRUeXBlIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2ZpZWxkcy9mb3JtLXZpZXcuZmllbGRzLmVudW0uZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHtcclxuICBURmllbGQsXHJcbiAgVEZpZWxkUmFkaW8sXHJcbiAgVEZpZWxkVHlwZVxyXG59IGZyb20gXCIuLi9kZWZpbml0aW9ucy9maWVsZHMvZm9ybS12aWV3LmZpZWxkcy50eXBlLmRlZmluaXRpb25zXCI7XHJcblxyXG5leHBvcnQgY29uc3QgaGFzS2V5ID0gKG9iamVjdDogYW55LCBrZXk6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xyXG4gIHJldHVybiBvYmplY3QuaGFzT3duUHJvcGVydHkoa2V5KTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBoYXNQYXRoID0gKG9iamVjdDogYW55LCBwYXRoOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gXy5oYXMob2JqZWN0LCBwYXRoKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBpc0VtcHR5U3RyaW5nID0gKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gdmFsdWUgPT09IFwiXCI7XHJcbn07XHJcbmV4cG9ydCBjb25zdCBpc1VuZGVmaW5lZCA9ICh2YWx1ZTogYW55KTogYm9vbGVhbiA9PiB7XHJcbiAgcmV0dXJuIHZhbHVlID09PSB1bmRlZmluZWQ7XHJcbn07XHJcbmV4cG9ydCBjb25zdCBpc051bGwgPSAodmFsdWU6IGFueSk6IGJvb2xlYW4gPT4ge1xyXG4gIHJldHVybiB2YWx1ZSA9PT0gbnVsbDtcclxufTtcclxuZXhwb3J0IGNvbnN0IGlzRW1wdHlPYmplY3QgPSAob2JqZWN0OiBhbnkpOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gKFxyXG4gICAgb2JqZWN0ICYmXHJcbiAgICBPYmplY3Qua2V5cyhvYmplY3QpLmxlbmd0aCA9PT0gMCAmJlxyXG4gICAgT2JqZWN0LmdldFByb3RvdHlwZU9mKG9iamVjdCkgPT09IE9iamVjdC5wcm90b3R5cGVcclxuICApO1xyXG59O1xyXG5leHBvcnQgY29uc3QgaXNFbXB0eUFycmF5ID0gKGFycjogYW55W10pOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gYXJyLmxlbmd0aCA9PT0gMDtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBpc0VtcHR5ID0gKHZhbHVlOiBhbnkpOiBib29sZWFuID0+IHtcclxuICBpZiAoaXNFbXB0eVN0cmluZyh2YWx1ZSkgfHwgaXNVbmRlZmluZWQodmFsdWUpIHx8IGlzTnVsbCh2YWx1ZSkpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH0gZWxzZSBpZiAoaXNFbXB0eU9iamVjdCh2YWx1ZSkpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgIGlmIChpc0VtcHR5QXJyYXkodmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGlzTm90RW1wdHkgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIHJldHVybiAhaXNFbXB0eSh2YWx1ZSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaXNFbXB0eUJyb3dzZXJTdG9yYWdlVmFsdWUgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIHJldHVybiBpc051bGwodmFsdWUpICYmIGlzVW5kZWZpbmVkKHZhbHVlKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBpc05vdEVtcHR5QnJvd3NlclN0b3JhZ2VWYWx1ZSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgcmV0dXJuICFpc0VtcHR5QnJvd3NlclN0b3JhZ2VWYWx1ZSh2YWx1ZSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaGFuZGxlSlBRdWVyeVJlc3BvbnNlID0gKHZhbHVlOiBhbnkpOiBhbnkgPT4ge1xyXG4gIC8qKlxyXG4gICAqIGpwLnF1ZXJ5IGRvZXNuJ3QgYWx3YXlzIHJldHVybiBhbiBhcnJheSB3aXRoIG9uZSBlbGVtZW50XHJcbiAgICogc28gZGlyZWN0bHkgY2FuJ3QgYWNjZXNzIHdpdGggWzBdLCBuZWVkIHRvIGNoZWNrIGNvbmRpdGlvbmFsbHlcclxuICAgKi9cclxuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgIGlmICh2YWx1ZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHZhbHVlID0gdmFsdWVbMF07XHJcbiAgICB9IGVsc2UgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB2YWx1ZSA9IFwiXCI7XHJcbiAgICB9XHJcbiAgfSBlbHNlIHtcclxuICAgIHZhbHVlID0gXCJcIjtcclxuICB9XHJcblxyXG4gIHJldHVybiB2YWx1ZTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBqcFF1ZXJ5V3JhcHBlciA9IChvYmo6IGFueSwga2V5OiBzdHJpbmcpID0+IHtcclxuICByZXR1cm4gaGFuZGxlSlBRdWVyeVJlc3BvbnNlKGpwLnF1ZXJ5KG9iaiwga2V5KSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgcmVwbGFjZVN0cmluZyA9IChcclxuICBzdHI6IHN0cmluZyxcclxuICBmaW5kOiBzdHJpbmcsXHJcbiAgcmVwbGFjZTogc3RyaW5nXHJcbik6IHN0cmluZyA9PiB7XHJcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKG5ldyBSZWdFeHAoZmluZCwgXCJnXCIpLCByZXBsYWNlKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBzZXRGaWVsZEtleVZhbHVlID0gKGZpZWxkOiBhbnksIHBhdGg6IHN0cmluZywgdmFsdWU6IGFueSk6IGFueSA9PiB7XHJcbiAgcmV0dXJuIF8uc2V0KGZpZWxkLCBwYXRoLCB2YWx1ZSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3Qgc2V0VmFsdWVUb09iamVjdCA9IChcclxuICBvYmplY3Q6IGFueSxcclxuICBwYXRoOiBzdHJpbmcsXHJcbiAgdmFsdWU6IGFueVxyXG4pOiBhbnkgPT4ge1xyXG4gIHJldHVybiBfLnNldChvYmplY3QsIHBhdGgsIHZhbHVlKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBmb3JtYXRWYWx1ZSA9IChmaWVsZDogVEZpZWxkLCBmaWVsZFZhbHVlOiBhbnkpOiBhbnkgPT4ge1xyXG4gIGNvbnN0IGZpZWxkVHlwZTogVEZpZWxkVHlwZSA9IGZpZWxkLnR5cGU7XHJcbiAgbGV0IHZhbHVlOiBhbnk7XHJcblxyXG4gIGlmIChpc05vdEVtcHR5KGZpZWxkVmFsdWUpKSB7XHJcbiAgICBzd2l0Y2ggKGZpZWxkVHlwZSkge1xyXG4gICAgICBjYXNlIEVGaWVsZFR5cGUuREFURTpcclxuICAgICAgICBjb25zdCBzcGxpdERhdGUgPSBmaWVsZFZhbHVlLnNwbGl0KFwiLVwiKTtcclxuICAgICAgICB2YWx1ZSA9IG5ldyBUdWlEYXkoXHJcbiAgICAgICAgICBOdW1iZXIoc3BsaXREYXRlWzJdKSwgLy8gWWVhclxyXG4gICAgICAgICAgTnVtYmVyKHNwbGl0RGF0ZVsxXSkgLSAxLCAvLyBNb250aCwgV2h5ICctMScgPT4gQmVjYXVzZSBUYWlnYS1VSSBSZXF1aXJlZCBJdCwgU28uLi5cclxuICAgICAgICAgIE51bWJlcihzcGxpdERhdGVbMF0pIC8vIERheVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRUZpZWxkVHlwZS5SQURJTzpcclxuICAgICAgICBjb25zdCBmaWVsZFJhZGlvID0gZmllbGQgYXMgVEZpZWxkUmFkaW87XHJcbiAgICAgICAgdmFsdWUgPSBmaWVsZFJhZGlvLm9wdGlvbnMuZmluZCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gaXRlbS5sYWJlbCA9PT0gZmllbGRWYWx1ZTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBFRmllbGRUeXBlLkNIRUNLQk9YOlxyXG4gICAgICAgIHZhbHVlID0gQm9vbGVhbihmaWVsZFZhbHVlKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB2YWx1ZSA9IGZpZWxkVmFsdWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfSBlbHNlIHtcclxuICAgIHZhbHVlID0gZmllbGRWYWx1ZTtcclxuICB9XHJcblxyXG4gIHJldHVybiB2YWx1ZTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBzZXRFbXB0eVZhbHVlID0gKGZpZWxkOiBURmllbGQpOiBhbnkgPT4ge1xyXG4gIGNvbnN0IGZpZWxkVHlwZTogVEZpZWxkVHlwZSA9IGZpZWxkLnR5cGU7XHJcbiAgbGV0IHZhbHVlOiBhbnk7XHJcblxyXG4gIHN3aXRjaCAoZmllbGRUeXBlKSB7XHJcbiAgICBjYXNlIEVGaWVsZFR5cGUuQ0hFQ0tCT1g6XHJcbiAgICAgIHZhbHVlID0gZmFsc2U7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgY2FzZSBFRmllbGRUeXBlLk5VTUJFUjpcclxuICAgICAgdmFsdWUgPSBudWxsO1xyXG4gICAgICBicmVhaztcclxuICAgIGNhc2UgRUZpZWxkVHlwZS5EQVRFOlxyXG4gICAgICB2YWx1ZSA9IG51bGw7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgZGVmYXVsdDpcclxuICAgICAgdmFsdWUgPSBcIlwiO1xyXG4gICAgICBicmVhaztcclxuICB9XHJcblxyXG4gIHJldHVybiB2YWx1ZTtcclxufTtcclxuIl19
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { log } from "../form-view.decorators";
|
|
3
|
+
import { replaceString } from "./form-view.common.helper";
|
|
4
|
+
export class Condition {
|
|
5
|
+
constructor(condition, rulesMapping) {
|
|
6
|
+
this._condition = condition;
|
|
7
|
+
this._rulesMapping = rulesMapping;
|
|
8
|
+
}
|
|
9
|
+
parseKeys(condition, rulesEvaluationMapping) {
|
|
10
|
+
Object.keys(rulesEvaluationMapping).forEach((key) => {
|
|
11
|
+
condition = replaceString(condition, key, rulesEvaluationMapping[key]);
|
|
12
|
+
});
|
|
13
|
+
return condition;
|
|
14
|
+
}
|
|
15
|
+
parseOperators(condition) {
|
|
16
|
+
return condition.replace(/AND|OR|NOT|XOR|NAND|NOR|XNOR/g, (match) => {
|
|
17
|
+
switch (match) {
|
|
18
|
+
case "AND":
|
|
19
|
+
return "&&";
|
|
20
|
+
case "OR":
|
|
21
|
+
return "||";
|
|
22
|
+
case "NOT":
|
|
23
|
+
return "!";
|
|
24
|
+
case "XOR":
|
|
25
|
+
return "^";
|
|
26
|
+
case "NAND":
|
|
27
|
+
return "!&";
|
|
28
|
+
case "NOR":
|
|
29
|
+
return "!|";
|
|
30
|
+
case "XNOR":
|
|
31
|
+
return "!^";
|
|
32
|
+
default:
|
|
33
|
+
return match;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
evaluate() {
|
|
38
|
+
this._condition = this.parseKeys(this._condition, this._rulesMapping);
|
|
39
|
+
this._condition = this.parseOperators(this._condition);
|
|
40
|
+
return eval(this._condition);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
__decorate([
|
|
44
|
+
log
|
|
45
|
+
], Condition.prototype, "evaluate", null);
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmNvbmRpdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9mb3JtLXZpZXcvaGVscGVycy9mb3JtLXZpZXcuY29uZGl0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxNQUFNLE9BQU8sU0FBUztJQUlwQixZQUFZLFNBQWlCLEVBQUUsWUFBaUI7UUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUM7SUFDcEMsQ0FBQztJQUVPLFNBQVMsQ0FBQyxTQUFpQixFQUFFLHNCQUE4QjtRQUNqRSxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDbEQsU0FBUyxHQUFHLGFBQWEsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDekUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRU8sY0FBYyxDQUFDLFNBQWlCO1FBQ3RDLE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2xFLFFBQVEsS0FBSyxFQUFFO2dCQUNiLEtBQUssS0FBSztvQkFDUixPQUFPLElBQUksQ0FBQztnQkFDZCxLQUFLLElBQUk7b0JBQ1AsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsS0FBSyxLQUFLO29CQUNSLE9BQU8sR0FBRyxDQUFDO2dCQUNiLEtBQUssS0FBSztvQkFDUixPQUFPLEdBQUcsQ0FBQztnQkFDYixLQUFLLE1BQU07b0JBQ1QsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsS0FBSyxLQUFLO29CQUNSLE9BQU8sSUFBSSxDQUFDO2dCQUNkLEtBQUssTUFBTTtvQkFDVCxPQUFPLElBQUksQ0FBQztnQkFDZDtvQkFDRSxPQUFPLEtBQUssQ0FBQzthQUNoQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBTkM7SUFEQyxHQUFHO3lDQU1IIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9nIH0gZnJvbSBcIi4uL2Zvcm0tdmlldy5kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IHJlcGxhY2VTdHJpbmcgfSBmcm9tIFwiLi9mb3JtLXZpZXcuY29tbW9uLmhlbHBlclwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbmRpdGlvbiB7XHJcbiAgcHJpdmF0ZSBfY29uZGl0aW9uOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfcnVsZXNNYXBwaW5nOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNvbmRpdGlvbjogc3RyaW5nLCBydWxlc01hcHBpbmc6IGFueSkge1xyXG4gICAgdGhpcy5fY29uZGl0aW9uID0gY29uZGl0aW9uO1xyXG4gICAgdGhpcy5fcnVsZXNNYXBwaW5nID0gcnVsZXNNYXBwaW5nO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZUtleXMoY29uZGl0aW9uOiBzdHJpbmcsIHJ1bGVzRXZhbHVhdGlvbk1hcHBpbmc6IG9iamVjdCk6IHN0cmluZyB7XHJcbiAgICBPYmplY3Qua2V5cyhydWxlc0V2YWx1YXRpb25NYXBwaW5nKS5mb3JFYWNoKChrZXkpID0+IHtcclxuICAgICAgY29uZGl0aW9uID0gcmVwbGFjZVN0cmluZyhjb25kaXRpb24sIGtleSwgcnVsZXNFdmFsdWF0aW9uTWFwcGluZ1trZXldKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBjb25kaXRpb247XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBhcnNlT3BlcmF0b3JzKGNvbmRpdGlvbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBjb25kaXRpb24ucmVwbGFjZSgvQU5EfE9SfE5PVHxYT1J8TkFORHxOT1J8WE5PUi9nLCAobWF0Y2gpID0+IHtcclxuICAgICAgc3dpdGNoIChtYXRjaCkge1xyXG4gICAgICAgIGNhc2UgXCJBTkRcIjpcclxuICAgICAgICAgIHJldHVybiBcIiYmXCI7XHJcbiAgICAgICAgY2FzZSBcIk9SXCI6XHJcbiAgICAgICAgICByZXR1cm4gXCJ8fFwiO1xyXG4gICAgICAgIGNhc2UgXCJOT1RcIjpcclxuICAgICAgICAgIHJldHVybiBcIiFcIjtcclxuICAgICAgICBjYXNlIFwiWE9SXCI6XHJcbiAgICAgICAgICByZXR1cm4gXCJeXCI7XHJcbiAgICAgICAgY2FzZSBcIk5BTkRcIjpcclxuICAgICAgICAgIHJldHVybiBcIiEmXCI7XHJcbiAgICAgICAgY2FzZSBcIk5PUlwiOlxyXG4gICAgICAgICAgcmV0dXJuIFwiIXxcIjtcclxuICAgICAgICBjYXNlIFwiWE5PUlwiOlxyXG4gICAgICAgICAgcmV0dXJuIFwiIV5cIjtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgcmV0dXJuIG1hdGNoO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIEBsb2dcclxuICBldmFsdWF0ZSgpOiBib29sZWFuIHtcclxuICAgIHRoaXMuX2NvbmRpdGlvbiA9IHRoaXMucGFyc2VLZXlzKHRoaXMuX2NvbmRpdGlvbiwgdGhpcy5fcnVsZXNNYXBwaW5nKTtcclxuICAgIHRoaXMuX2NvbmRpdGlvbiA9IHRoaXMucGFyc2VPcGVyYXRvcnModGhpcy5fY29uZGl0aW9uKTtcclxuXHJcbiAgICByZXR1cm4gZXZhbCh0aGlzLl9jb25kaXRpb24pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { isEmpty } from "../../renderer.helper";
|
|
3
|
+
import { log } from "../form-view.decorators";
|
|
4
|
+
import { Actions } from "./form-view.actions.helper";
|
|
5
|
+
import { setEmptyValue, setValueToObject } from "./form-view.common.helper";
|
|
6
|
+
import { Condition } from "./form-view.condition.helper";
|
|
7
|
+
import { Rules } from "./form-view.rules.helper";
|
|
8
|
+
import { Sources } from "./form-view.sources.helper";
|
|
9
|
+
export class Defaults {
|
|
10
|
+
constructor(field, allFormsData, formData, previousFormData, takeAction) {
|
|
11
|
+
this._field = field;
|
|
12
|
+
this._allFormsData = allFormsData;
|
|
13
|
+
this._formData = formData;
|
|
14
|
+
this._previousFormData = previousFormData;
|
|
15
|
+
this._takeAction = takeAction;
|
|
16
|
+
}
|
|
17
|
+
getDefaultValue() {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
let defaultValue;
|
|
20
|
+
const sources = this._field.default.value.sources;
|
|
21
|
+
let sourceIndex = 0;
|
|
22
|
+
for (let source of sources) {
|
|
23
|
+
const sources = new Sources(this._field, this._formData, this._previousFormData, this._allFormsData);
|
|
24
|
+
const value = sources.getValueFromSource(source);
|
|
25
|
+
// Set the Value of current source.
|
|
26
|
+
this._field = setValueToObject(this._field, `default.value.sources.[${sourceIndex}].value`, value);
|
|
27
|
+
const validation = source.validation;
|
|
28
|
+
const triggers = validation.triggers;
|
|
29
|
+
const rules = validation.rules;
|
|
30
|
+
const actions = validation.actions;
|
|
31
|
+
const rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
|
|
32
|
+
for (let action of actions) {
|
|
33
|
+
const conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
|
|
34
|
+
if (conditionEvaluation) {
|
|
35
|
+
const actions = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
|
|
36
|
+
yield actions.execute();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
sourceIndex++;
|
|
40
|
+
}
|
|
41
|
+
defaultValue = this._field.default.value.value;
|
|
42
|
+
if (isEmpty(defaultValue)) {
|
|
43
|
+
defaultValue = setEmptyValue(this._field);
|
|
44
|
+
}
|
|
45
|
+
return defaultValue;
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
__decorate([
|
|
50
|
+
log
|
|
51
|
+
], Defaults.prototype, "getDefaultValue", null);
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmRlZmF1bHRzLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2Zvcm0tdmlldy9oZWxwZXJzL2Zvcm0tdmlldy5kZWZhdWx0cy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU1oRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDekQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sUUFBUTtJQU9uQixZQUNFLEtBQWEsRUFDYixZQUFpQixFQUNqQixRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFVBQW9CO1FBRXBCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBR0ssZUFBZTs7WUFDbkIsSUFBSSxZQUFpQixDQUFDO1lBRXRCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFFbEQsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1lBQ3BCLEtBQUssSUFBSSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FDekIsSUFBSSxDQUFDLE1BQU0sRUFDWCxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FDbkIsQ0FBQztnQkFDRixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2pELG1DQUFtQztnQkFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsQ0FDNUIsSUFBSSxDQUFDLE1BQU0sRUFDWCwwQkFBMEIsV0FBVyxTQUFTLEVBQzlDLEtBQUssQ0FDTixDQUFDO2dCQUVGLE1BQU0sVUFBVSxHQUFnQixNQUFNLENBQUMsVUFBVSxDQUFDO2dCQUVsRCxNQUFNLFFBQVEsR0FBb0IsVUFBVSxDQUFDLFFBQVEsQ0FBQztnQkFDdEQsTUFBTSxLQUFLLEdBQWlCLFVBQVUsQ0FBQyxLQUFLLENBQUM7Z0JBQzdDLE1BQU0sT0FBTyxHQUFtQixVQUFVLENBQUMsT0FBTyxDQUFDO2dCQUVuRCxNQUFNLFlBQVksR0FBRyxJQUFJLEtBQUssQ0FDNUIsS0FBSyxFQUNMLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsaUJBQWlCLEVBQ3RCLElBQUksQ0FBQyxhQUFhLENBQ25CLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBRVosS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUU7b0JBQzFCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxTQUFTLENBQ3ZDLE1BQU0sQ0FBQyxTQUFTLEVBQ2hCLFlBQVksQ0FDYixDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUViLElBQUksbUJBQW1CLEVBQUU7d0JBQ3ZCLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUN6QixNQUFNLEVBQ04sSUFBSSxDQUFDLE1BQU0sRUFDWCxZQUFZLEVBQ1osSUFBSSxDQUFDLGFBQWEsRUFDbEIsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsaUJBQWlCLEVBQ3RCLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7d0JBRUYsTUFBTSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7cUJBQ3pCO2lCQUNGO2dCQUVELFdBQVcsRUFBRSxDQUFDO2FBQ2Y7WUFFRCxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUUvQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDekIsWUFBWSxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDM0M7WUFFRCxPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDO0tBQUE7Q0FDRjtBQW5FQztJQURDLEdBQUc7K0NBbUVIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gXCIuLi8uLi9yZW5kZXJlci5oZWxwZXJcIjtcclxuaW1wb3J0IHsgVEFjdGlvbiB9IGZyb20gXCIuLi9kZWZpbml0aW9ucy9hY3Rpb25zL2Zvcm0tdmlldy5hY3Rpb25zLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVEZpZWxkIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2ZpZWxkcy9mb3JtLXZpZXcuZmllbGRzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFJ1bGUgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvcnVsZXMvZm9ybS12aWV3LnJ1bGVzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFRyaWdnZXIgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvdHJpZ2dlcnMvZm9ybS12aWV3LnRyaWdnZXJzLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgVFZhbGlkYXRpb24gfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvdmFsaWRhdGlvbnMvZm9ybS12aWV3LnZhbGlkYXRpb25zLnR5cGUuZGVmaW5pdGlvbnNcIjtcclxuaW1wb3J0IHsgbG9nIH0gZnJvbSBcIi4uL2Zvcm0tdmlldy5kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IEFjdGlvbnMgfSBmcm9tIFwiLi9mb3JtLXZpZXcuYWN0aW9ucy5oZWxwZXJcIjtcclxuaW1wb3J0IHsgc2V0RW1wdHlWYWx1ZSwgc2V0VmFsdWVUb09iamVjdCB9IGZyb20gXCIuL2Zvcm0tdmlldy5jb21tb24uaGVscGVyXCI7XHJcbmltcG9ydCB7IENvbmRpdGlvbiB9IGZyb20gXCIuL2Zvcm0tdmlldy5jb25kaXRpb24uaGVscGVyXCI7XHJcbmltcG9ydCB7IFJ1bGVzIH0gZnJvbSBcIi4vZm9ybS12aWV3LnJ1bGVzLmhlbHBlclwiO1xyXG5pbXBvcnQgeyBTb3VyY2VzIH0gZnJvbSBcIi4vZm9ybS12aWV3LnNvdXJjZXMuaGVscGVyXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgRGVmYXVsdHMge1xyXG4gIHByaXZhdGUgX2FsbEZvcm1zRGF0YTogYW55O1xyXG4gIHByaXZhdGUgX2ZpZWxkOiBURmllbGQ7XHJcbiAgcHJpdmF0ZSBfZm9ybURhdGE6IGFueTtcclxuICBwcml2YXRlIF9wcmV2aW91c0Zvcm1EYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSBfdGFrZUFjdGlvbjogRnVuY3Rpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZmllbGQ6IFRGaWVsZCxcclxuICAgIGFsbEZvcm1zRGF0YTogYW55LFxyXG4gICAgZm9ybURhdGE6IGFueSxcclxuICAgIHByZXZpb3VzRm9ybURhdGE6IGFueSxcclxuICAgIHRha2VBY3Rpb246IEZ1bmN0aW9uXHJcbiAgKSB7XHJcbiAgICB0aGlzLl9maWVsZCA9IGZpZWxkO1xyXG4gICAgdGhpcy5fYWxsRm9ybXNEYXRhID0gYWxsRm9ybXNEYXRhO1xyXG4gICAgdGhpcy5fZm9ybURhdGEgPSBmb3JtRGF0YTtcclxuICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEgPSBwcmV2aW91c0Zvcm1EYXRhO1xyXG4gICAgdGhpcy5fdGFrZUFjdGlvbiA9IHRha2VBY3Rpb247XHJcbiAgfVxyXG5cclxuICBAbG9nXHJcbiAgYXN5bmMgZ2V0RGVmYXVsdFZhbHVlKCkge1xyXG4gICAgbGV0IGRlZmF1bHRWYWx1ZTogYW55O1xyXG5cclxuICAgIGNvbnN0IHNvdXJjZXMgPSB0aGlzLl9maWVsZC5kZWZhdWx0LnZhbHVlLnNvdXJjZXM7XHJcblxyXG4gICAgbGV0IHNvdXJjZUluZGV4ID0gMDtcclxuICAgIGZvciAobGV0IHNvdXJjZSBvZiBzb3VyY2VzKSB7XHJcbiAgICAgIGNvbnN0IHNvdXJjZXMgPSBuZXcgU291cmNlcyhcclxuICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICB0aGlzLl9mb3JtRGF0YSxcclxuICAgICAgICB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICAgIHRoaXMuX2FsbEZvcm1zRGF0YVxyXG4gICAgICApO1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IHNvdXJjZXMuZ2V0VmFsdWVGcm9tU291cmNlKHNvdXJjZSk7XHJcbiAgICAgIC8vIFNldCB0aGUgVmFsdWUgb2YgY3VycmVudCBzb3VyY2UuXHJcbiAgICAgIHRoaXMuX2ZpZWxkID0gc2V0VmFsdWVUb09iamVjdChcclxuICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICBgZGVmYXVsdC52YWx1ZS5zb3VyY2VzLlske3NvdXJjZUluZGV4fV0udmFsdWVgLFxyXG4gICAgICAgIHZhbHVlXHJcbiAgICAgICk7XHJcblxyXG4gICAgICBjb25zdCB2YWxpZGF0aW9uOiBUVmFsaWRhdGlvbiA9IHNvdXJjZS52YWxpZGF0aW9uO1xyXG5cclxuICAgICAgY29uc3QgdHJpZ2dlcnM6IEFycmF5PFRUcmlnZ2VyPiA9IHZhbGlkYXRpb24udHJpZ2dlcnM7XHJcbiAgICAgIGNvbnN0IHJ1bGVzOiBBcnJheTxUUnVsZT4gPSB2YWxpZGF0aW9uLnJ1bGVzO1xyXG4gICAgICBjb25zdCBhY3Rpb25zOiBBcnJheTxUQWN0aW9uPiA9IHZhbGlkYXRpb24uYWN0aW9ucztcclxuXHJcbiAgICAgIGNvbnN0IHJ1bGVzTWFwcGluZyA9IG5ldyBSdWxlcyhcclxuICAgICAgICBydWxlcyxcclxuICAgICAgICB0aGlzLl9maWVsZCxcclxuICAgICAgICB0aGlzLl9mb3JtRGF0YSxcclxuICAgICAgICB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICAgIHRoaXMuX2FsbEZvcm1zRGF0YVxyXG4gICAgICApLm1hcHBpbmcoKTtcclxuXHJcbiAgICAgIGZvciAobGV0IGFjdGlvbiBvZiBhY3Rpb25zKSB7XHJcbiAgICAgICAgY29uc3QgY29uZGl0aW9uRXZhbHVhdGlvbiA9IG5ldyBDb25kaXRpb24oXHJcbiAgICAgICAgICBhY3Rpb24uY29uZGl0aW9uLFxyXG4gICAgICAgICAgcnVsZXNNYXBwaW5nXHJcbiAgICAgICAgKS5ldmFsdWF0ZSgpO1xyXG5cclxuICAgICAgICBpZiAoY29uZGl0aW9uRXZhbHVhdGlvbikge1xyXG4gICAgICAgICAgY29uc3QgYWN0aW9ucyA9IG5ldyBBY3Rpb25zKFxyXG4gICAgICAgICAgICBhY3Rpb24sXHJcbiAgICAgICAgICAgIHRoaXMuX2ZpZWxkLFxyXG4gICAgICAgICAgICBydWxlc01hcHBpbmcsXHJcbiAgICAgICAgICAgIHRoaXMuX2FsbEZvcm1zRGF0YSxcclxuICAgICAgICAgICAgdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgICAgICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEsXHJcbiAgICAgICAgICAgIHRoaXMuX3Rha2VBY3Rpb25cclxuICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgYXdhaXQgYWN0aW9ucy5leGVjdXRlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBzb3VyY2VJbmRleCsrO1xyXG4gICAgfVxyXG5cclxuICAgIGRlZmF1bHRWYWx1ZSA9IHRoaXMuX2ZpZWxkLmRlZmF1bHQudmFsdWUudmFsdWU7XHJcblxyXG4gICAgaWYgKGlzRW1wdHkoZGVmYXVsdFZhbHVlKSkge1xyXG4gICAgICBkZWZhdWx0VmFsdWUgPSBzZXRFbXB0eVZhbHVlKHRoaXMuX2ZpZWxkKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
|