kwikid-forms 0.1.5 → 0.1.8

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.
Files changed (70) hide show
  1. package/README.md +43 -43
  2. package/bundles/kwikid-forms.umd.js +4435 -4229
  3. package/bundles/kwikid-forms.umd.js.map +1 -1
  4. package/esm2015/kwikid-forms.js +4 -4
  5. package/esm2015/lib/builder/builder.component.js +138 -138
  6. package/esm2015/lib/builder/builder.module.js +21 -21
  7. package/esm2015/lib/kwikid-forms.module.js +38 -38
  8. package/esm2015/lib/renderer/form-view/definitions/actions/form-view.actions.enum.definitions.js +21 -20
  9. package/esm2015/lib/renderer/form-view/definitions/actions/form-view.actions.type.definitions.js +2 -2
  10. package/esm2015/lib/renderer/form-view/definitions/apis/form-view.apis.enum.definitions.js +8 -8
  11. package/esm2015/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.js +2 -2
  12. package/esm2015/lib/renderer/form-view/definitions/common/form-view.common.enum.definitions.js +101 -101
  13. package/esm2015/lib/renderer/form-view/definitions/common/form-view.common.type.definitions.js +2 -2
  14. package/esm2015/lib/renderer/form-view/definitions/fields/form-view.fields.enum.definitions.js +16 -15
  15. package/esm2015/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.js +2 -2
  16. package/esm2015/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.js +2 -2
  17. package/esm2015/lib/renderer/form-view/definitions/triggers/form-view.triggers.type.definitions.js +2 -2
  18. package/esm2015/lib/renderer/form-view/definitions/validations/form-view.validations.type.definitions.js +2 -2
  19. package/esm2015/lib/renderer/form-view/form-view.component.js +809 -814
  20. package/esm2015/lib/renderer/form-view/form-view.module.js +45 -44
  21. package/esm2015/lib/renderer/form-view/form-view.service.js +29 -29
  22. package/esm2015/lib/renderer/form-view/helpers/form-view.apis.helper.js +146 -137
  23. package/esm2015/lib/renderer/form-view/helpers/form-view.common.helper.js +136 -136
  24. package/esm2015/lib/renderer/form-view/helpers/form-view.defaults.helper.js +94 -63
  25. package/esm2015/lib/renderer/form-view/helpers/form-view.fields.helper.js +203 -203
  26. package/esm2015/lib/renderer/form-view/helpers/form-view.validations.helper.js +170 -161
  27. package/esm2015/lib/renderer/form-view/pipes/safe-html.pipe.js +25 -0
  28. package/esm2015/lib/renderer/forms-list/forms-list.component.js +89 -89
  29. package/esm2015/lib/renderer/forms-list/forms-list.module.js +37 -37
  30. package/esm2015/lib/renderer/renderer.component.js +282 -278
  31. package/esm2015/lib/renderer/renderer.config-converter.helper.js +641 -586
  32. package/esm2015/lib/renderer/renderer.helper.js +50 -50
  33. package/esm2015/lib/renderer/renderer.module.js +50 -50
  34. package/esm2015/lib/renderer/renderer.service.js +172 -172
  35. package/esm2015/public_api.js +17 -17
  36. package/fesm2015/kwikid-forms.js +3156 -3030
  37. package/fesm2015/kwikid-forms.js.map +1 -1
  38. package/kwikid-forms.d.ts +5 -5
  39. package/lib/builder/builder.component.d.ts +68 -68
  40. package/lib/builder/builder.module.d.ts +10 -10
  41. package/lib/kwikid-forms.module.d.ts +10 -10
  42. package/lib/renderer/form-view/definitions/actions/form-view.actions.enum.definitions.d.ts +19 -18
  43. package/lib/renderer/form-view/definitions/actions/form-view.actions.type.definitions.d.ts +91 -91
  44. package/lib/renderer/form-view/definitions/apis/form-view.apis.enum.definitions.d.ts +6 -6
  45. package/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.d.ts +40 -40
  46. package/lib/renderer/form-view/definitions/common/form-view.common.enum.definitions.d.ts +97 -97
  47. package/lib/renderer/form-view/definitions/common/form-view.common.type.definitions.d.ts +7 -7
  48. package/lib/renderer/form-view/definitions/fields/form-view.fields.enum.definitions.d.ts +14 -13
  49. package/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.d.ts +144 -136
  50. package/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.d.ts +16 -16
  51. package/lib/renderer/form-view/definitions/triggers/form-view.triggers.type.definitions.d.ts +1 -1
  52. package/lib/renderer/form-view/definitions/validations/form-view.validations.type.definitions.d.ts +16 -16
  53. package/lib/renderer/form-view/form-view.component.d.ts +80 -80
  54. package/lib/renderer/form-view/form-view.module.d.ts +13 -12
  55. package/lib/renderer/form-view/form-view.service.d.ts +5 -5
  56. package/lib/renderer/form-view/helpers/form-view.apis.helper.d.ts +18 -17
  57. package/lib/renderer/form-view/helpers/form-view.common.helper.d.ts +19 -19
  58. package/lib/renderer/form-view/helpers/form-view.defaults.helper.d.ts +12 -10
  59. package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +24 -24
  60. package/lib/renderer/form-view/helpers/form-view.validations.helper.d.ts +28 -25
  61. package/lib/renderer/form-view/pipes/safe-html.pipe.d.ts +15 -0
  62. package/lib/renderer/forms-list/forms-list.component.d.ts +22 -22
  63. package/lib/renderer/forms-list/forms-list.module.d.ts +11 -11
  64. package/lib/renderer/renderer.component.d.ts +36 -36
  65. package/lib/renderer/renderer.config-converter.helper.d.ts +7 -7
  66. package/lib/renderer/renderer.helper.d.ts +6 -6
  67. package/lib/renderer/renderer.module.d.ts +14 -14
  68. package/lib/renderer/renderer.service.d.ts +28 -28
  69. package/package.json +3 -3
  70. package/public_api.d.ts +9 -9
@@ -1,136 +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
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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Q0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixLQUFLLFVBQVUsQ0FBQyxRQUFRO2dCQUN0QixLQUFLLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUM1QixNQUFNO1lBQ1I7Z0JBQ0UsS0FBSyxHQUFHLFVBQVUsQ0FBQztnQkFDbkIsTUFBTTtTQUNUO0tBQ0Y7U0FBTTtRQUNMLEtBQUssR0FBRyxVQUFVLENBQUM7S0FDcEI7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWEsRUFBTyxFQUFFO0lBQ2xELE1BQU0sU0FBUyxHQUFlLEtBQUssQ0FBQyxJQUFJLENBQUM7SUFDekMsSUFBSSxLQUFVLENBQUM7SUFFZixRQUFRLFNBQVMsRUFBRTtRQUNqQixLQUFLLFVBQVUsQ0FBQyxRQUFRO1lBQ3RCLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDZCxNQUFNO1FBQ1IsS0FBSyxVQUFVLENBQUMsTUFBTTtZQUNwQixLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ2IsTUFBTTtRQUNSLEtBQUssVUFBVSxDQUFDLElBQUk7WUFDbEIsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNiLE1BQU07UUFDUjtZQUNFLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDWCxNQUFNO0tBQ1Q7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR1aURheSB9IGZyb20gXCJAdGFpZ2EtdWkvY2RrXCI7XG5pbXBvcnQganAgZnJvbSBcImpzb25wYXRoXCI7XG5pbXBvcnQgXyBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgeyBFRmllbGRUeXBlIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2ZpZWxkcy9mb3JtLXZpZXcuZmllbGRzLmVudW0uZGVmaW5pdGlvbnNcIjtcbmltcG9ydCB7XG4gIFRGaWVsZCxcbiAgVEZpZWxkUmFkaW8sXG4gIFRGaWVsZFR5cGVcbn0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2ZpZWxkcy9mb3JtLXZpZXcuZmllbGRzLnR5cGUuZGVmaW5pdGlvbnNcIjtcblxuZXhwb3J0IGNvbnN0IGhhc0tleSA9IChvYmplY3Q6IGFueSwga2V5OiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIG9iamVjdC5oYXNPd25Qcm9wZXJ0eShrZXkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhc1BhdGggPSAob2JqZWN0OiBhbnksIHBhdGg6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xuICByZXR1cm4gXy5oYXMob2JqZWN0LCBwYXRoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0VtcHR5U3RyaW5nID0gKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIHZhbHVlID09PSBcIlwiO1xufTtcbmV4cG9ydCBjb25zdCBpc1VuZGVmaW5lZCA9ICh2YWx1ZTogYW55KTogYm9vbGVhbiA9PiB7XG4gIHJldHVybiB2YWx1ZSA9PT0gdW5kZWZpbmVkO1xufTtcbmV4cG9ydCBjb25zdCBpc051bGwgPSAodmFsdWU6IGFueSk6IGJvb2xlYW4gPT4ge1xuICByZXR1cm4gdmFsdWUgPT09IG51bGw7XG59O1xuZXhwb3J0IGNvbnN0IGlzRW1wdHlPYmplY3QgPSAob2JqZWN0OiBhbnkpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIChcbiAgICBvYmplY3QgJiZcbiAgICBPYmplY3Qua2V5cyhvYmplY3QpLmxlbmd0aCA9PT0gMCAmJlxuICAgIE9iamVjdC5nZXRQcm90b3R5cGVPZihvYmplY3QpID09PSBPYmplY3QucHJvdG90eXBlXG4gICk7XG59O1xuZXhwb3J0IGNvbnN0IGlzRW1wdHlBcnJheSA9IChhcnI6IGFueVtdKTogYm9vbGVhbiA9PiB7XG4gIHJldHVybiBhcnIubGVuZ3RoID09PSAwO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRW1wdHkgPSAodmFsdWU6IGFueSk6IGJvb2xlYW4gPT4ge1xuICBpZiAoaXNFbXB0eVN0cmluZyh2YWx1ZSkgfHwgaXNVbmRlZmluZWQodmFsdWUpIHx8IGlzTnVsbCh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBlbHNlIGlmIChpc0VtcHR5T2JqZWN0KHZhbHVlKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgaWYgKGlzRW1wdHlBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGlzTm90RW1wdHkgPSAodmFsdWU6IGFueSkgPT4ge1xuICByZXR1cm4gIWlzRW1wdHkodmFsdWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRW1wdHlCcm93c2VyU3RvcmFnZVZhbHVlID0gKHZhbHVlOiBhbnkpID0+IHtcbiAgcmV0dXJuIGlzTnVsbCh2YWx1ZSkgJiYgaXNVbmRlZmluZWQodmFsdWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzTm90RW1wdHlCcm93c2VyU3RvcmFnZVZhbHVlID0gKHZhbHVlOiBhbnkpID0+IHtcbiAgcmV0dXJuICFpc0VtcHR5QnJvd3NlclN0b3JhZ2VWYWx1ZSh2YWx1ZSk7XG59O1xuXG5leHBvcnQgY29uc3QgaGFuZGxlSlBRdWVyeVJlc3BvbnNlID0gKHZhbHVlOiBhbnkpOiBhbnkgPT4ge1xuICAvKipcbiAgICoganAucXVlcnkgZG9lc24ndCBhbHdheXMgcmV0dXJuIGFuIGFycmF5IHdpdGggb25lIGVsZW1lbnRcbiAgICogc28gZGlyZWN0bHkgY2FuJ3QgYWNjZXNzIHdpdGggWzBdLCBuZWVkIHRvIGNoZWNrIGNvbmRpdGlvbmFsbHlcbiAgICovXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIGlmICh2YWx1ZS5sZW5ndGggPiAwKSB7XG4gICAgICB2YWx1ZSA9IHZhbHVlWzBdO1xuICAgIH0gZWxzZSBpZiAodmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICB2YWx1ZSA9IFwiXCI7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHZhbHVlID0gXCJcIjtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZTtcbn07XG5cbmV4cG9ydCBjb25zdCBqcFF1ZXJ5V3JhcHBlciA9IChvYmo6IGFueSwga2V5OiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGhhbmRsZUpQUXVlcnlSZXNwb25zZShqcC5xdWVyeShvYmosIGtleSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlcGxhY2VTdHJpbmcgPSAoXG4gIHN0cjogc3RyaW5nLFxuICBmaW5kOiBzdHJpbmcsXG4gIHJlcGxhY2U6IHN0cmluZ1xuKTogc3RyaW5nID0+IHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKG5ldyBSZWdFeHAoZmluZCwgXCJnXCIpLCByZXBsYWNlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzZXRGaWVsZEtleVZhbHVlID0gKGZpZWxkOiBhbnksIHBhdGg6IHN0cmluZywgdmFsdWU6IGFueSk6IGFueSA9PiB7XG4gIHJldHVybiBfLnNldChmaWVsZCwgcGF0aCwgdmFsdWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldFZhbHVlVG9PYmplY3QgPSAoXG4gIG9iamVjdDogYW55LFxuICBwYXRoOiBzdHJpbmcsXG4gIHZhbHVlOiBhbnlcbik6IGFueSA9PiB7XG4gIHJldHVybiBfLnNldChvYmplY3QsIHBhdGgsIHZhbHVlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRWYWx1ZSA9IChmaWVsZDogVEZpZWxkLCBmaWVsZFZhbHVlOiBhbnkpOiBhbnkgPT4ge1xuICBjb25zdCBmaWVsZFR5cGU6IFRGaWVsZFR5cGUgPSBmaWVsZC50eXBlO1xuICBsZXQgdmFsdWU6IGFueTtcblxuICBpZiAoaXNOb3RFbXB0eShmaWVsZFZhbHVlKSkge1xuICAgIHN3aXRjaCAoZmllbGRUeXBlKSB7XG4gICAgICBjYXNlIEVGaWVsZFR5cGUuREFURTpcbiAgICAgICAgY29uc3Qgc3BsaXREYXRlID0gZmllbGRWYWx1ZS5zcGxpdChcIi1cIik7XG4gICAgICAgIHZhbHVlID0gbmV3IFR1aURheShcbiAgICAgICAgICBOdW1iZXIoc3BsaXREYXRlWzJdKSwgLy8gWWVhclxuICAgICAgICAgIE51bWJlcihzcGxpdERhdGVbMV0pIC0gMSwgLy8gTW9udGgsIFdoeSAnLTEnID0+IEJlY2F1c2UgVGFpZ2EtVUkgUmVxdWlyZWQgSXQsIFNvLi4uXG4gICAgICAgICAgTnVtYmVyKHNwbGl0RGF0ZVswXSkgLy8gRGF5XG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBFRmllbGRUeXBlLlJBRElPOlxuICAgICAgICBjb25zdCBmaWVsZFJhZGlvID0gZmllbGQgYXMgVEZpZWxkUmFkaW87XG4gICAgICAgIHZhbHVlID0gZmllbGRSYWRpby5vcHRpb25zLmZpbmQoKGl0ZW06IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBpdGVtLmxhYmVsID09PSBmaWVsZFZhbHVlO1xuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEVGaWVsZFR5cGUuQ0hFQ0tCT1g6XG4gICAgICAgIHZhbHVlID0gQm9vbGVhbihmaWVsZFZhbHVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB2YWx1ZSA9IGZpZWxkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICB2YWx1ZSA9IGZpZWxkVmFsdWU7XG4gIH1cblxuICByZXR1cm4gdmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3Qgc2V0RW1wdHlWYWx1ZSA9IChmaWVsZDogVEZpZWxkKTogYW55ID0+IHtcbiAgY29uc3QgZmllbGRUeXBlOiBURmllbGRUeXBlID0gZmllbGQudHlwZTtcbiAgbGV0IHZhbHVlOiBhbnk7XG5cbiAgc3dpdGNoIChmaWVsZFR5cGUpIHtcbiAgICBjYXNlIEVGaWVsZFR5cGUuQ0hFQ0tCT1g6XG4gICAgICB2YWx1ZSA9IGZhbHNlO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBFRmllbGRUeXBlLk5VTUJFUjpcbiAgICAgIHZhbHVlID0gbnVsbDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgRUZpZWxkVHlwZS5EQVRFOlxuICAgICAgdmFsdWUgPSBudWxsO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIHZhbHVlID0gXCJcIjtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlO1xufTtcbiJdfQ==
@@ -1,63 +1,94 @@
1
- import { __awaiter, __decorate } from "tslib";
2
- import { Actions, Condition, logMethod, Rules, Sources } from "kwikid-toolkit";
3
- import { isEmpty } from "../../renderer.helper";
4
- import { setEmptyValue, setValueToObject } from "./form-view.common.helper";
5
- export class Defaults {
6
- constructor(field, allFormsData, formData, previousFormData, takeAction) {
7
- this._field = field;
8
- this._allFormsData = allFormsData;
9
- this._formData = formData;
10
- this._previousFormData = previousFormData;
11
- this._takeAction = takeAction;
12
- }
13
- getDefaultValue() {
14
- return __awaiter(this, void 0, void 0, function* () {
15
- let defaultValue;
16
- const sources = this._field.default.value.sources;
17
- let sourceIndex = 0;
18
- for (let source of sources) {
19
- const sources = new Sources({
20
- FIELD_CONFIG: this._field,
21
- FORM_DATA: this._formData,
22
- PREVIOUS_FORM_DATA: this._previousFormData,
23
- ALL_FORMS_DATA: this._allFormsData
24
- });
25
- const value = sources.getValueFromSource(source);
26
- // Set the Value of current source.
27
- this._field = setValueToObject(this._field, `default.value.sources.[${sourceIndex}].value`, value);
28
- const validation = source.validation;
29
- const triggers = validation.triggers;
30
- const rules = validation.rules;
31
- const actions = validation.actions;
32
- const rulesMapping = new Rules(rules, {
33
- FIELD_CONFIG: this._field,
34
- FORM_DATA: this._formData,
35
- PREVIOUS_FORM_DATA: this._previousFormData,
36
- ALL_FORMS_DATA: this._allFormsData
37
- }).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, rulesMapping, {
42
- FIELD_CONFIG: this._field,
43
- FORM_DATA: this._formData,
44
- PREVIOUS_FORM_DATA: this._previousFormData,
45
- ALL_FORMS_DATA: this._allFormsData
46
- }, this._takeAction);
47
- yield actions.execute();
48
- }
49
- }
50
- sourceIndex++;
51
- }
52
- defaultValue = this._field.default.value.value;
53
- if (isEmpty(defaultValue)) {
54
- defaultValue = setEmptyValue(this._field);
55
- }
56
- return defaultValue;
57
- });
58
- }
59
- }
60
- __decorate([
61
- logMethod
62
- ], Defaults.prototype, "getDefaultValue", null);
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmRlZmF1bHRzLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2Zvcm0tdmlldy9oZWxwZXJzL2Zvcm0tdmlldy5kZWZhdWx0cy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsT0FBTyxFQUdSLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU1RSxNQUFNLE9BQU8sUUFBUTtJQU9uQixZQUNFLEtBQWEsRUFDYixZQUFpQixFQUNqQixRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFVBQW9CO1FBRXBCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBR0ssZUFBZTs7WUFDbkIsSUFBSSxZQUFpQixDQUFDO1lBRXRCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFFbEQsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1lBQ3BCLEtBQUssSUFBSSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQztvQkFDMUIsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7b0JBQzFDLGNBQWMsRUFBRSxJQUFJLENBQUMsYUFBYTtpQkFDbkMsQ0FBQyxDQUFDO2dCQUNILE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDakQsbUNBQW1DO2dCQUNuQyxJQUFJLENBQUMsTUFBTSxHQUFHLGdCQUFnQixDQUM1QixJQUFJLENBQUMsTUFBTSxFQUNYLDBCQUEwQixXQUFXLFNBQVMsRUFDOUMsS0FBSyxDQUNOLENBQUM7Z0JBRUYsTUFBTSxVQUFVLEdBQWlCLE1BQWMsQ0FBQyxVQUFVLENBQUM7Z0JBRTNELE1BQU0sUUFBUSxHQUFvQixVQUFVLENBQUMsUUFBUSxDQUFDO2dCQUN0RCxNQUFNLEtBQUssR0FBaUIsVUFBVSxDQUFDLEtBQUssQ0FBQztnQkFDN0MsTUFBTSxPQUFPLEdBQW1CLFVBQVUsQ0FBQyxPQUFPLENBQUM7Z0JBRW5ELE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtvQkFDcEMsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7b0JBQzFDLGNBQWMsRUFBRSxJQUFJLENBQUMsYUFBYTtpQkFDbkMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUViLEtBQUssSUFBSSxNQUFNLElBQUksT0FBTyxFQUFFO29CQUMxQixNQUFNLG1CQUFtQixHQUFHLElBQUksU0FBUyxDQUN2QyxNQUFNLENBQUMsU0FBUyxFQUNoQixZQUFZLENBQ2IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFFYixJQUFJLG1CQUFtQixFQUFFO3dCQUN2QixNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FDekIsTUFBTSxFQUNOLFlBQVksRUFDWjs0QkFDRSxZQUFZLEVBQUUsSUFBSSxDQUFDLE1BQU07NEJBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzs0QkFDekIsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjs0QkFDMUMsY0FBYyxFQUFFLElBQUksQ0FBQyxhQUFhO3lCQUNuQyxFQUNELElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7d0JBRUYsTUFBTSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7cUJBQ3pCO2lCQUNGO2dCQUVELFdBQVcsRUFBRSxDQUFDO2FBQ2Y7WUFFRCxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUUvQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDekIsWUFBWSxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDM0M7WUFFRCxPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDO0tBQUE7Q0FDRjtBQXBFQztJQURDLFNBQVM7K0NBb0VUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBY3Rpb25zLFxyXG4gIENvbmRpdGlvbixcclxuICBsb2dNZXRob2QsXHJcbiAgUnVsZXMsXHJcbiAgU291cmNlcyxcclxuICBUQWN0aW9uLFxyXG4gIFRSdWxlXHJcbn0gZnJvbSBcImt3aWtpZC10b29sa2l0XCI7XHJcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tIFwiLi4vLi4vcmVuZGVyZXIuaGVscGVyXCI7XHJcbmltcG9ydCB7IFRGaWVsZCB9IGZyb20gXCIuLi9kZWZpbml0aW9ucy9maWVsZHMvZm9ybS12aWV3LmZpZWxkcy50eXBlLmRlZmluaXRpb25zXCI7XHJcbmltcG9ydCB7IFRUcmlnZ2VyIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL3RyaWdnZXJzL2Zvcm0tdmlldy50cmlnZ2Vycy50eXBlLmRlZmluaXRpb25zXCI7XHJcbmltcG9ydCB7IFRWYWxpZGF0aW9uIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL3ZhbGlkYXRpb25zL2Zvcm0tdmlldy52YWxpZGF0aW9ucy50eXBlLmRlZmluaXRpb25zXCI7XHJcbmltcG9ydCB7IHNldEVtcHR5VmFsdWUsIHNldFZhbHVlVG9PYmplY3QgfSBmcm9tIFwiLi9mb3JtLXZpZXcuY29tbW9uLmhlbHBlclwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIERlZmF1bHRzIHtcclxuICBwcml2YXRlIF9hbGxGb3Jtc0RhdGE6IGFueTtcclxuICBwcml2YXRlIF9maWVsZDogVEZpZWxkO1xyXG4gIHByaXZhdGUgX2Zvcm1EYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSBfcHJldmlvdXNGb3JtRGF0YTogYW55O1xyXG4gIHByaXZhdGUgX3Rha2VBY3Rpb246IEZ1bmN0aW9uO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGZpZWxkOiBURmllbGQsXHJcbiAgICBhbGxGb3Jtc0RhdGE6IGFueSxcclxuICAgIGZvcm1EYXRhOiBhbnksXHJcbiAgICBwcmV2aW91c0Zvcm1EYXRhOiBhbnksXHJcbiAgICB0YWtlQWN0aW9uOiBGdW5jdGlvblxyXG4gICkge1xyXG4gICAgdGhpcy5fZmllbGQgPSBmaWVsZDtcclxuICAgIHRoaXMuX2FsbEZvcm1zRGF0YSA9IGFsbEZvcm1zRGF0YTtcclxuICAgIHRoaXMuX2Zvcm1EYXRhID0gZm9ybURhdGE7XHJcbiAgICB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhID0gcHJldmlvdXNGb3JtRGF0YTtcclxuICAgIHRoaXMuX3Rha2VBY3Rpb24gPSB0YWtlQWN0aW9uO1xyXG4gIH1cclxuXHJcbiAgQGxvZ01ldGhvZFxyXG4gIGFzeW5jIGdldERlZmF1bHRWYWx1ZSgpIHtcclxuICAgIGxldCBkZWZhdWx0VmFsdWU6IGFueTtcclxuXHJcbiAgICBjb25zdCBzb3VyY2VzID0gdGhpcy5fZmllbGQuZGVmYXVsdC52YWx1ZS5zb3VyY2VzO1xyXG5cclxuICAgIGxldCBzb3VyY2VJbmRleCA9IDA7XHJcbiAgICBmb3IgKGxldCBzb3VyY2Ugb2Ygc291cmNlcykge1xyXG4gICAgICBjb25zdCBzb3VyY2VzID0gbmV3IFNvdXJjZXMoe1xyXG4gICAgICAgIEZJRUxEX0NPTkZJRzogdGhpcy5fZmllbGQsXHJcbiAgICAgICAgRk9STV9EQVRBOiB0aGlzLl9mb3JtRGF0YSxcclxuICAgICAgICBQUkVWSU9VU19GT1JNX0RBVEE6IHRoaXMuX3ByZXZpb3VzRm9ybURhdGEsXHJcbiAgICAgICAgQUxMX0ZPUk1TX0RBVEE6IHRoaXMuX2FsbEZvcm1zRGF0YVxyXG4gICAgICB9KTtcclxuICAgICAgY29uc3QgdmFsdWUgPSBzb3VyY2VzLmdldFZhbHVlRnJvbVNvdXJjZShzb3VyY2UpO1xyXG4gICAgICAvLyBTZXQgdGhlIFZhbHVlIG9mIGN1cnJlbnQgc291cmNlLlxyXG4gICAgICB0aGlzLl9maWVsZCA9IHNldFZhbHVlVG9PYmplY3QoXHJcbiAgICAgICAgdGhpcy5fZmllbGQsXHJcbiAgICAgICAgYGRlZmF1bHQudmFsdWUuc291cmNlcy5bJHtzb3VyY2VJbmRleH1dLnZhbHVlYCxcclxuICAgICAgICB2YWx1ZVxyXG4gICAgICApO1xyXG5cclxuICAgICAgY29uc3QgdmFsaWRhdGlvbjogVFZhbGlkYXRpb24gPSAoc291cmNlIGFzIGFueSkudmFsaWRhdGlvbjtcclxuXHJcbiAgICAgIGNvbnN0IHRyaWdnZXJzOiBBcnJheTxUVHJpZ2dlcj4gPSB2YWxpZGF0aW9uLnRyaWdnZXJzO1xyXG4gICAgICBjb25zdCBydWxlczogQXJyYXk8VFJ1bGU+ID0gdmFsaWRhdGlvbi5ydWxlcztcclxuICAgICAgY29uc3QgYWN0aW9uczogQXJyYXk8VEFjdGlvbj4gPSB2YWxpZGF0aW9uLmFjdGlvbnM7XHJcblxyXG4gICAgICBjb25zdCBydWxlc01hcHBpbmcgPSBuZXcgUnVsZXMocnVsZXMsIHtcclxuICAgICAgICBGSUVMRF9DT05GSUc6IHRoaXMuX2ZpZWxkLFxyXG4gICAgICAgIEZPUk1fREFUQTogdGhpcy5fZm9ybURhdGEsXHJcbiAgICAgICAgUFJFVklPVVNfRk9STV9EQVRBOiB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxyXG4gICAgICAgIEFMTF9GT1JNU19EQVRBOiB0aGlzLl9hbGxGb3Jtc0RhdGFcclxuICAgICAgfSkubWFwcGluZygpO1xyXG5cclxuICAgICAgZm9yIChsZXQgYWN0aW9uIG9mIGFjdGlvbnMpIHtcclxuICAgICAgICBjb25zdCBjb25kaXRpb25FdmFsdWF0aW9uID0gbmV3IENvbmRpdGlvbihcclxuICAgICAgICAgIGFjdGlvbi5jb25kaXRpb24sXHJcbiAgICAgICAgICBydWxlc01hcHBpbmdcclxuICAgICAgICApLmV2YWx1YXRlKCk7XHJcblxyXG4gICAgICAgIGlmIChjb25kaXRpb25FdmFsdWF0aW9uKSB7XHJcbiAgICAgICAgICBjb25zdCBhY3Rpb25zID0gbmV3IEFjdGlvbnMoXHJcbiAgICAgICAgICAgIGFjdGlvbixcclxuICAgICAgICAgICAgcnVsZXNNYXBwaW5nLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgRklFTERfQ09ORklHOiB0aGlzLl9maWVsZCxcclxuICAgICAgICAgICAgICBGT1JNX0RBVEE6IHRoaXMuX2Zvcm1EYXRhLFxyXG4gICAgICAgICAgICAgIFBSRVZJT1VTX0ZPUk1fREFUQTogdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcclxuICAgICAgICAgICAgICBBTExfRk9STVNfREFUQTogdGhpcy5fYWxsRm9ybXNEYXRhXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHRoaXMuX3Rha2VBY3Rpb25cclxuICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgYXdhaXQgYWN0aW9ucy5leGVjdXRlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBzb3VyY2VJbmRleCsrO1xyXG4gICAgfVxyXG5cclxuICAgIGRlZmF1bHRWYWx1ZSA9IHRoaXMuX2ZpZWxkLmRlZmF1bHQudmFsdWUudmFsdWU7XHJcblxyXG4gICAgaWYgKGlzRW1wdHkoZGVmYXVsdFZhbHVlKSkge1xyXG4gICAgICBkZWZhdWx0VmFsdWUgPSBzZXRFbXB0eVZhbHVlKHRoaXMuX2ZpZWxkKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
1
+ import { __awaiter, __decorate } from "tslib";
2
+ import { Actions, Condition, logMethod, Rules, Sources } from "kwikid-toolkit";
3
+ import { isEmpty } from "../../renderer.helper";
4
+ import { setEmptyValue, setValueToObject } from "./form-view.common.helper";
5
+ export class Defaults {
6
+ constructor(field, formFields, allFormsData, formData, previousFormData, takeAction) {
7
+ this._field = field;
8
+ this._formFields = formFields;
9
+ this._allFormsData = allFormsData;
10
+ this._formData = formData;
11
+ this._previousFormData = previousFormData;
12
+ this._takeAction = takeAction;
13
+ }
14
+ getDefaultValue() {
15
+ return __awaiter(this, void 0, void 0, function* () {
16
+ let defaultValue;
17
+ const sources = this._field.default.value.sources;
18
+ let sourceIndex = 0;
19
+ for (let source of sources) {
20
+ const sources = new Sources({
21
+ FIELD_CONFIG: this._field,
22
+ FORM_FIELDS: this._formFields,
23
+ FORM_DATA: this._formData,
24
+ PREVIOUS_FORM_DATA: this._previousFormData,
25
+ ALL_FORMS_DATA: this._allFormsData
26
+ });
27
+ const value = sources.getValueFromSource(source);
28
+ // Set the Value of current source.
29
+ this._field = setValueToObject(this._field, `default.value.sources.[${sourceIndex}].value`, value);
30
+ const validation = source.validation;
31
+ const triggers = validation.triggers;
32
+ const rules = validation.rules;
33
+ const actions = validation.actions;
34
+ const rulesMapping = new Rules(rules, {
35
+ FIELD_CONFIG: this._field,
36
+ FORM_FIELDS: this._formFields,
37
+ FORM_DATA: this._formData,
38
+ PREVIOUS_FORM_DATA: this._previousFormData,
39
+ ALL_FORMS_DATA: this._allFormsData
40
+ }).mapping();
41
+ for (let action of actions) {
42
+ const conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
43
+ if (conditionEvaluation) {
44
+ const actions = new Actions(action, rulesMapping, {
45
+ FIELD_CONFIG: this._field,
46
+ FORM_FIELDS: this._formFields,
47
+ FORM_DATA: this._formData,
48
+ PREVIOUS_FORM_DATA: this._previousFormData,
49
+ ALL_FORMS_DATA: this._allFormsData
50
+ }, this._takeAction);
51
+ yield actions.execute();
52
+ }
53
+ }
54
+ sourceIndex++;
55
+ }
56
+ defaultValue = this._field.default.value.value;
57
+ if (isEmpty(defaultValue)) {
58
+ defaultValue = setEmptyValue(this._field);
59
+ }
60
+ return defaultValue;
61
+ });
62
+ }
63
+ getDefaultDropdownOptions() {
64
+ return __awaiter(this, void 0, void 0, function* () {
65
+ const optionsConfig = this._field.default.options;
66
+ const rules = optionsConfig.rules;
67
+ const actions = optionsConfig.actions;
68
+ const rulesMapping = new Rules(rules, {
69
+ FIELD_CONFIG: this._field,
70
+ FORM_FIELDS: this._formFields,
71
+ FORM_DATA: this._formData,
72
+ PREVIOUS_FORM_DATA: this._previousFormData,
73
+ ALL_FORMS_DATA: this._allFormsData
74
+ }).mapping();
75
+ for (let action of actions) {
76
+ const conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
77
+ if (conditionEvaluation) {
78
+ const actions = new Actions(action, rulesMapping, {
79
+ FIELD_CONFIG: this._field,
80
+ FORM_FIELDS: this._formFields,
81
+ FORM_DATA: this._formData,
82
+ PREVIOUS_FORM_DATA: this._previousFormData,
83
+ ALL_FORMS_DATA: this._allFormsData
84
+ }, this._takeAction);
85
+ yield actions.execute();
86
+ }
87
+ }
88
+ });
89
+ }
90
+ }
91
+ __decorate([
92
+ logMethod
93
+ ], Defaults.prototype, "getDefaultValue", null);
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmRlZmF1bHRzLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2Zvcm0tdmlldy9oZWxwZXJzL2Zvcm0tdmlldy5kZWZhdWx0cy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsT0FBTyxFQUdSLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU1RSxNQUFNLE9BQU8sUUFBUTtJQVFuQixZQUNFLEtBQWEsRUFDYixVQUFpQixFQUNqQixZQUFpQixFQUNqQixRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFVBQW9CO1FBRXBCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBR0ssZUFBZTs7WUFDbkIsSUFBSSxZQUFpQixDQUFDO1lBRXRCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFFbEQsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1lBQ3BCLEtBQUssSUFBSSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixNQUFN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QWlCO2dCQUMxQyxjQUFjLEVBQUUsSUFBSSxDQUFDLGFBQWE7YUFDbkMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRWIsS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUU7Z0JBQzFCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxTQUFTLENBQ3ZDLE1BQU0sQ0FBQyxTQUFTLEVBQ2hCLFlBQVksQ0FDYixDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUViLElBQUksbUJBQW1CLEVBQUU7b0JBQ3ZCLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUN6QixNQUFNLEVBQ04sWUFBWSxFQUNaO3dCQUNFLFlBQVksRUFBRSxJQUFJLENBQUMsTUFBTTt3QkFDekIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO3dCQUM3QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7d0JBQ3pCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7d0JBQzFDLGNBQWMsRUFBRSxJQUFJLENBQUMsYUFBYTtxQkFDbkMsRUFDRCxJQUFJLENBQUMsV0FBVyxDQUNqQixDQUFDO29CQUVGLE1BQU0sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2lCQUN6QjthQUNGO1FBQ0gsQ0FBQztLQUFBO0NBQ0Y7QUE5R0M7SUFEQyxTQUFTOytDQXVFVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFjdGlvbnMsXG4gIENvbmRpdGlvbixcbiAgbG9nTWV0aG9kLFxuICBSdWxlcyxcbiAgU291cmNlcyxcbiAgVEFjdGlvbixcbiAgVFJ1bGVcbn0gZnJvbSBcImt3aWtpZC10b29sa2l0XCI7XG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSBcIi4uLy4uL3JlbmRlcmVyLmhlbHBlclwiO1xuaW1wb3J0IHsgVEZpZWxkIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL2ZpZWxkcy9mb3JtLXZpZXcuZmllbGRzLnR5cGUuZGVmaW5pdGlvbnNcIjtcbmltcG9ydCB7IFRUcmlnZ2VyIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL3RyaWdnZXJzL2Zvcm0tdmlldy50cmlnZ2Vycy50eXBlLmRlZmluaXRpb25zXCI7XG5pbXBvcnQgeyBUVmFsaWRhdGlvbiB9IGZyb20gXCIuLi9kZWZpbml0aW9ucy92YWxpZGF0aW9ucy9mb3JtLXZpZXcudmFsaWRhdGlvbnMudHlwZS5kZWZpbml0aW9uc1wiO1xuaW1wb3J0IHsgc2V0RW1wdHlWYWx1ZSwgc2V0VmFsdWVUb09iamVjdCB9IGZyb20gXCIuL2Zvcm0tdmlldy5jb21tb24uaGVscGVyXCI7XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0cyB7XG4gIHByaXZhdGUgX2FsbEZvcm1zRGF0YTogYW55O1xuICBwcml2YXRlIF9maWVsZDogVEZpZWxkO1xuICBwcml2YXRlIF9mb3JtRmllbGRzOiBhbnlbXTtcbiAgcHJpdmF0ZSBfZm9ybURhdGE6IGFueTtcbiAgcHJpdmF0ZSBfcHJldmlvdXNGb3JtRGF0YTogYW55O1xuICBwcml2YXRlIF90YWtlQWN0aW9uOiBGdW5jdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBmaWVsZDogVEZpZWxkLFxuICAgIGZvcm1GaWVsZHM6IGFueVtdLFxuICAgIGFsbEZvcm1zRGF0YTogYW55LFxuICAgIGZvcm1EYXRhOiBhbnksXG4gICAgcHJldmlvdXNGb3JtRGF0YTogYW55LFxuICAgIHRha2VBY3Rpb246IEZ1bmN0aW9uXG4gICkge1xuICAgIHRoaXMuX2ZpZWxkID0gZmllbGQ7XG4gICAgdGhpcy5fZm9ybUZpZWxkcyA9IGZvcm1GaWVsZHM7XG4gICAgdGhpcy5fYWxsRm9ybXNEYXRhID0gYWxsRm9ybXNEYXRhO1xuICAgIHRoaXMuX2Zvcm1EYXRhID0gZm9ybURhdGE7XG4gICAgdGhpcy5fcHJldmlvdXNGb3JtRGF0YSA9IHByZXZpb3VzRm9ybURhdGE7XG4gICAgdGhpcy5fdGFrZUFjdGlvbiA9IHRha2VBY3Rpb247XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIGFzeW5jIGdldERlZmF1bHRWYWx1ZSgpIHtcbiAgICBsZXQgZGVmYXVsdFZhbHVlOiBhbnk7XG5cbiAgICBjb25zdCBzb3VyY2VzID0gdGhpcy5fZmllbGQuZGVmYXVsdC52YWx1ZS5zb3VyY2VzO1xuXG4gICAgbGV0IHNvdXJjZUluZGV4ID0gMDtcbiAgICBmb3IgKGxldCBzb3VyY2Ugb2Ygc291cmNlcykge1xuICAgICAgY29uc3Qgc291cmNlcyA9IG5ldyBTb3VyY2VzKHtcbiAgICAgICAgRklFTERfQ09ORklHOiB0aGlzLl9maWVsZCxcbiAgICAgICAgRk9STV9GSUVMRFM6IHRoaXMuX2Zvcm1GaWVsZHMsXG4gICAgICAgIEZPUk1fREFUQTogdGhpcy5fZm9ybURhdGEsXG4gICAgICAgIFBSRVZJT1VTX0ZPUk1fREFUQTogdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcbiAgICAgICAgQUxMX0ZPUk1TX0RBVEE6IHRoaXMuX2FsbEZvcm1zRGF0YVxuICAgICAgfSk7XG4gICAgICBjb25zdCB2YWx1ZSA9IHNvdXJjZXMuZ2V0VmFsdWVGcm9tU291cmNlKHNvdXJjZSk7XG4gICAgICAvLyBTZXQgdGhlIFZhbHVlIG9mIGN1cnJlbnQgc291cmNlLlxuICAgICAgdGhpcy5fZmllbGQgPSBzZXRWYWx1ZVRvT2JqZWN0KFxuICAgICAgICB0aGlzLl9maWVsZCxcbiAgICAgICAgYGRlZmF1bHQudmFsdWUuc291cmNlcy5bJHtzb3VyY2VJbmRleH1dLnZhbHVlYCxcbiAgICAgICAgdmFsdWVcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IHZhbGlkYXRpb246IFRWYWxpZGF0aW9uID0gKHNvdXJjZSBhcyBhbnkpLnZhbGlkYXRpb247XG5cbiAgICAgIGNvbnN0IHRyaWdnZXJzOiBBcnJheTxUVHJpZ2dlcj4gPSB2YWxpZGF0aW9uLnRyaWdnZXJzO1xuICAgICAgY29uc3QgcnVsZXM6IEFycmF5PFRSdWxlPiA9IHZhbGlkYXRpb24ucnVsZXM7XG4gICAgICBjb25zdCBhY3Rpb25zOiBBcnJheTxUQWN0aW9uPiA9IHZhbGlkYXRpb24uYWN0aW9ucztcblxuICAgICAgY29uc3QgcnVsZXNNYXBwaW5nID0gbmV3IFJ1bGVzKHJ1bGVzLCB7XG4gICAgICAgIEZJRUxEX0NPTkZJRzogdGhpcy5fZmllbGQsXG4gICAgICAgIEZPUk1fRklFTERTOiB0aGlzLl9mb3JtRmllbGRzLFxuICAgICAgICBGT1JNX0RBVEE6IHRoaXMuX2Zvcm1EYXRhLFxuICAgICAgICBQUkVWSU9VU19GT1JNX0RBVEE6IHRoaXMuX3ByZXZpb3VzRm9ybURhdGEsXG4gICAgICAgIEFMTF9GT1JNU19EQVRBOiB0aGlzLl9hbGxGb3Jtc0RhdGFcbiAgICAgIH0pLm1hcHBpbmcoKTtcblxuICAgICAgZm9yIChsZXQgYWN0aW9uIG9mIGFjdGlvbnMpIHtcbiAgICAgICAgY29uc3QgY29uZGl0aW9uRXZhbHVhdGlvbiA9IG5ldyBDb25kaXRpb24oXG4gICAgICAgICAgYWN0aW9uLmNvbmRpdGlvbixcbiAgICAgICAgICBydWxlc01hcHBpbmdcbiAgICAgICAgKS5ldmFsdWF0ZSgpO1xuXG4gICAgICAgIGlmIChjb25kaXRpb25FdmFsdWF0aW9uKSB7XG4gICAgICAgICAgY29uc3QgYWN0aW9ucyA9IG5ldyBBY3Rpb25zKFxuICAgICAgICAgICAgYWN0aW9uLFxuICAgICAgICAgICAgcnVsZXNNYXBwaW5nLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBGSUVMRF9DT05GSUc6IHRoaXMuX2ZpZWxkLFxuICAgICAgICAgICAgICBGT1JNX0ZJRUxEUzogdGhpcy5fZm9ybUZpZWxkcyxcbiAgICAgICAgICAgICAgRk9STV9EQVRBOiB0aGlzLl9mb3JtRGF0YSxcbiAgICAgICAgICAgICAgUFJFVklPVVNfRk9STV9EQVRBOiB0aGlzLl9wcmV2aW91c0Zvcm1EYXRhLFxuICAgICAgICAgICAgICBBTExfRk9STVNfREFUQTogdGhpcy5fYWxsRm9ybXNEYXRhXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdGhpcy5fdGFrZUFjdGlvblxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBhd2FpdCBhY3Rpb25zLmV4ZWN1dGUoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzb3VyY2VJbmRleCsrO1xuICAgIH1cblxuICAgIGRlZmF1bHRWYWx1ZSA9IHRoaXMuX2ZpZWxkLmRlZmF1bHQudmFsdWUudmFsdWU7XG5cbiAgICBpZiAoaXNFbXB0eShkZWZhdWx0VmFsdWUpKSB7XG4gICAgICBkZWZhdWx0VmFsdWUgPSBzZXRFbXB0eVZhbHVlKHRoaXMuX2ZpZWxkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICB9XG5cbiAgYXN5bmMgZ2V0RGVmYXVsdERyb3Bkb3duT3B0aW9ucygpIHtcbiAgICBjb25zdCBvcHRpb25zQ29uZmlnID0gdGhpcy5fZmllbGQuZGVmYXVsdC5vcHRpb25zO1xuXG4gICAgY29uc3QgcnVsZXMgPSBvcHRpb25zQ29uZmlnLnJ1bGVzO1xuICAgIGNvbnN0IGFjdGlvbnMgPSBvcHRpb25zQ29uZmlnLmFjdGlvbnM7XG5cbiAgICBjb25zdCBydWxlc01hcHBpbmcgPSBuZXcgUnVsZXMocnVsZXMsIHtcbiAgICAgIEZJRUxEX0NPTkZJRzogdGhpcy5fZmllbGQsXG4gICAgICBGT1JNX0ZJRUxEUzogdGhpcy5fZm9ybUZpZWxkcyxcbiAgICAgIEZPUk1fREFUQTogdGhpcy5fZm9ybURhdGEsXG4gICAgICBQUkVWSU9VU19GT1JNX0RBVEE6IHRoaXMuX3ByZXZpb3VzRm9ybURhdGEsXG4gICAgICBBTExfRk9STVNfREFUQTogdGhpcy5fYWxsRm9ybXNEYXRhXG4gICAgfSkubWFwcGluZygpO1xuXG4gICAgZm9yIChsZXQgYWN0aW9uIG9mIGFjdGlvbnMpIHtcbiAgICAgIGNvbnN0IGNvbmRpdGlvbkV2YWx1YXRpb24gPSBuZXcgQ29uZGl0aW9uKFxuICAgICAgICBhY3Rpb24uY29uZGl0aW9uLFxuICAgICAgICBydWxlc01hcHBpbmdcbiAgICAgICkuZXZhbHVhdGUoKTtcblxuICAgICAgaWYgKGNvbmRpdGlvbkV2YWx1YXRpb24pIHtcbiAgICAgICAgY29uc3QgYWN0aW9ucyA9IG5ldyBBY3Rpb25zKFxuICAgICAgICAgIGFjdGlvbixcbiAgICAgICAgICBydWxlc01hcHBpbmcsXG4gICAgICAgICAge1xuICAgICAgICAgICAgRklFTERfQ09ORklHOiB0aGlzLl9maWVsZCxcbiAgICAgICAgICAgIEZPUk1fRklFTERTOiB0aGlzLl9mb3JtRmllbGRzLFxuICAgICAgICAgICAgRk9STV9EQVRBOiB0aGlzLl9mb3JtRGF0YSxcbiAgICAgICAgICAgIFBSRVZJT1VTX0ZPUk1fREFUQTogdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcbiAgICAgICAgICAgIEFMTF9GT1JNU19EQVRBOiB0aGlzLl9hbGxGb3Jtc0RhdGFcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRoaXMuX3Rha2VBY3Rpb25cbiAgICAgICAgKTtcblxuICAgICAgICBhd2FpdCBhY3Rpb25zLmV4ZWN1dGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==