kwikid-forms 0.1.4 → 0.1.7

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 (68) hide show
  1. package/README.md +43 -43
  2. package/bundles/kwikid-forms.umd.js +4286 -4213
  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 +20 -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 +15 -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 +814 -814
  20. package/esm2015/lib/renderer/form-view/form-view.module.js +44 -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 +137 -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 +63 -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 +161 -161
  27. package/esm2015/lib/renderer/forms-list/forms-list.component.js +89 -89
  28. package/esm2015/lib/renderer/forms-list/forms-list.module.js +37 -37
  29. package/esm2015/lib/renderer/renderer.component.js +282 -267
  30. package/esm2015/lib/renderer/renderer.config-converter.helper.js +586 -586
  31. package/esm2015/lib/renderer/renderer.helper.js +50 -50
  32. package/esm2015/lib/renderer/renderer.module.js +50 -50
  33. package/esm2015/lib/renderer/renderer.service.js +172 -172
  34. package/esm2015/public_api.js +17 -17
  35. package/fesm2015/kwikid-forms.js +3031 -3016
  36. package/fesm2015/kwikid-forms.js.map +1 -1
  37. package/kwikid-forms.d.ts +5 -5
  38. package/lib/builder/builder.component.d.ts +68 -68
  39. package/lib/builder/builder.module.d.ts +10 -10
  40. package/lib/kwikid-forms.module.d.ts +10 -10
  41. package/lib/renderer/form-view/definitions/actions/form-view.actions.enum.definitions.d.ts +18 -18
  42. package/lib/renderer/form-view/definitions/actions/form-view.actions.type.definitions.d.ts +91 -91
  43. package/lib/renderer/form-view/definitions/apis/form-view.apis.enum.definitions.d.ts +6 -6
  44. package/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.d.ts +40 -40
  45. package/lib/renderer/form-view/definitions/common/form-view.common.enum.definitions.d.ts +97 -97
  46. package/lib/renderer/form-view/definitions/common/form-view.common.type.definitions.d.ts +7 -7
  47. package/lib/renderer/form-view/definitions/fields/form-view.fields.enum.definitions.d.ts +13 -13
  48. package/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.d.ts +136 -136
  49. package/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.d.ts +16 -16
  50. package/lib/renderer/form-view/definitions/triggers/form-view.triggers.type.definitions.d.ts +1 -1
  51. package/lib/renderer/form-view/definitions/validations/form-view.validations.type.definitions.d.ts +16 -16
  52. package/lib/renderer/form-view/form-view.component.d.ts +80 -80
  53. package/lib/renderer/form-view/form-view.module.d.ts +12 -12
  54. package/lib/renderer/form-view/form-view.service.d.ts +5 -5
  55. package/lib/renderer/form-view/helpers/form-view.apis.helper.d.ts +17 -17
  56. package/lib/renderer/form-view/helpers/form-view.common.helper.d.ts +19 -19
  57. package/lib/renderer/form-view/helpers/form-view.defaults.helper.d.ts +10 -10
  58. package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +24 -24
  59. package/lib/renderer/form-view/helpers/form-view.validations.helper.d.ts +25 -25
  60. package/lib/renderer/forms-list/forms-list.component.d.ts +22 -22
  61. package/lib/renderer/forms-list/forms-list.module.d.ts +11 -11
  62. package/lib/renderer/renderer.component.d.ts +36 -35
  63. package/lib/renderer/renderer.config-converter.helper.d.ts +7 -7
  64. package/lib/renderer/renderer.helper.d.ts +6 -6
  65. package/lib/renderer/renderer.module.d.ts +14 -14
  66. package/lib/renderer/renderer.service.d.ts +28 -28
  67. package/package.json +1 -1
  68. 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,63 @@
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, 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmRlZmF1bHRzLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2Zvcm0tdmlldy9oZWxwZXJzL2Zvcm0tdmlldy5kZWZhdWx0cy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsT0FBTyxFQUdSLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU1RSxNQUFNLE9BQU8sUUFBUTtJQU9uQixZQUNFLEtBQWEsRUFDYixZQUFpQixFQUNqQixRQUFhLEVBQ2IsZ0JBQXFCLEVBQ3JCLFVBQW9CO1FBRXBCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBR0ssZUFBZTs7WUFDbkIsSUFBSSxZQUFpQixDQUFDO1lBRXRCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFFbEQsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1lBQ3BCLEtBQUssSUFBSSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQztvQkFDMUIsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7b0JBQzFDLGNBQWMsRUFBRSxJQUFJLENBQUMsYUFBYTtpQkFDbkMsQ0FBQyxDQUFDO2dCQUNILE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDakQsbUNBQW1DO2dCQUNuQyxJQUFJLENBQUMsTUFBTSxHQUFHLGdCQUFnQixDQUM1QixJQUFJLENBQUMsTUFBTSxFQUNYLDBCQUEwQixXQUFXLFNBQVMsRUFDOUMsS0FBSyxDQUNOLENBQUM7Z0JBRUYsTUFBTSxVQUFVLEdBQWlCLE1BQWMsQ0FBQyxVQUFVLENBQUM7Z0JBRTNELE1BQU0sUUFBUSxHQUFvQixVQUFVLENBQUMsUUFBUSxDQUFDO2dCQUN0RCxNQUFNLEtBQUssR0FBaUIsVUFBVSxDQUFDLEtBQUssQ0FBQztnQkFDN0MsTUFBTSxPQUFPLEdBQW1CLFVBQVUsQ0FBQyxPQUFPLENBQUM7Z0JBRW5ELE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtvQkFDcEMsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7b0JBQzFDLGNBQWMsRUFBRSxJQUFJLENBQUMsYUFBYTtpQkFDbkMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUViLEtBQUssSUFBSSxNQUFNLElBQUksT0FBTyxFQUFFO29CQUMxQixNQUFNLG1CQUFtQixHQUFHLElBQUksU0FBUyxDQUN2QyxNQUFNLENBQUMsU0FBUyxFQUNoQixZQUFZLENBQ2IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFFYixJQUFJLG1CQUFtQixFQUFFO3dCQUN2QixNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FDekIsTUFBTSxFQUNOLFlBQVksRUFDWjs0QkFDRSxZQUFZLEVBQUUsSUFBSSxDQUFDLE1BQU07NEJBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzs0QkFDekIsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjs0QkFDMUMsY0FBYyxFQUFFLElBQUksQ0FBQyxhQUFhO3lCQUNuQyxFQUNELElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7d0JBRUYsTUFBTSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7cUJBQ3pCO2lCQUNGO2dCQUVELFdBQVcsRUFBRSxDQUFDO2FBQ2Y7WUFFRCxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUUvQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDekIsWUFBWSxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDM0M7WUFFRCxPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDO0tBQUE7Q0FDRjtBQXBFQztJQURDLFNBQVM7K0NBb0VUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWN0aW9ucyxcbiAgQ29uZGl0aW9uLFxuICBsb2dNZXRob2QsXG4gIFJ1bGVzLFxuICBTb3VyY2VzLFxuICBUQWN0aW9uLFxuICBUUnVsZVxufSBmcm9tIFwia3dpa2lkLXRvb2xraXRcIjtcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tIFwiLi4vLi4vcmVuZGVyZXIuaGVscGVyXCI7XG5pbXBvcnQgeyBURmllbGQgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvZmllbGRzL2Zvcm0tdmlldy5maWVsZHMudHlwZS5kZWZpbml0aW9uc1wiO1xuaW1wb3J0IHsgVFRyaWdnZXIgfSBmcm9tIFwiLi4vZGVmaW5pdGlvbnMvdHJpZ2dlcnMvZm9ybS12aWV3LnRyaWdnZXJzLnR5cGUuZGVmaW5pdGlvbnNcIjtcbmltcG9ydCB7IFRWYWxpZGF0aW9uIH0gZnJvbSBcIi4uL2RlZmluaXRpb25zL3ZhbGlkYXRpb25zL2Zvcm0tdmlldy52YWxpZGF0aW9ucy50eXBlLmRlZmluaXRpb25zXCI7XG5pbXBvcnQgeyBzZXRFbXB0eVZhbHVlLCBzZXRWYWx1ZVRvT2JqZWN0IH0gZnJvbSBcIi4vZm9ybS12aWV3LmNvbW1vbi5oZWxwZXJcIjtcblxuZXhwb3J0IGNsYXNzIERlZmF1bHRzIHtcbiAgcHJpdmF0ZSBfYWxsRm9ybXNEYXRhOiBhbnk7XG4gIHByaXZhdGUgX2ZpZWxkOiBURmllbGQ7XG4gIHByaXZhdGUgX2Zvcm1EYXRhOiBhbnk7XG4gIHByaXZhdGUgX3ByZXZpb3VzRm9ybURhdGE6IGFueTtcbiAgcHJpdmF0ZSBfdGFrZUFjdGlvbjogRnVuY3Rpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZmllbGQ6IFRGaWVsZCxcbiAgICBhbGxGb3Jtc0RhdGE6IGFueSxcbiAgICBmb3JtRGF0YTogYW55LFxuICAgIHByZXZpb3VzRm9ybURhdGE6IGFueSxcbiAgICB0YWtlQWN0aW9uOiBGdW5jdGlvblxuICApIHtcbiAgICB0aGlzLl9maWVsZCA9IGZpZWxkO1xuICAgIHRoaXMuX2FsbEZvcm1zRGF0YSA9IGFsbEZvcm1zRGF0YTtcbiAgICB0aGlzLl9mb3JtRGF0YSA9IGZvcm1EYXRhO1xuICAgIHRoaXMuX3ByZXZpb3VzRm9ybURhdGEgPSBwcmV2aW91c0Zvcm1EYXRhO1xuICAgIHRoaXMuX3Rha2VBY3Rpb24gPSB0YWtlQWN0aW9uO1xuICB9XG5cbiAgQGxvZ01ldGhvZFxuICBhc3luYyBnZXREZWZhdWx0VmFsdWUoKSB7XG4gICAgbGV0IGRlZmF1bHRWYWx1ZTogYW55O1xuXG4gICAgY29uc3Qgc291cmNlcyA9IHRoaXMuX2ZpZWxkLmRlZmF1bHQudmFsdWUuc291cmNlcztcblxuICAgIGxldCBzb3VyY2VJbmRleCA9IDA7XG4gICAgZm9yIChsZXQgc291cmNlIG9mIHNvdXJjZXMpIHtcbiAgICAgIGNvbnN0IHNvdXJjZXMgPSBuZXcgU291cmNlcyh7XG4gICAgICAgIEZJRUxEX0NPTkZJRzogdGhpcy5fZmllbGQsXG4gICAgICAgIEZPUk1fREFUQTogdGhpcy5fZm9ybURhdGEsXG4gICAgICAgIFBSRVZJT1VTX0ZPUk1fREFUQTogdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcbiAgICAgICAgQUxMX0ZPUk1TX0RBVEE6IHRoaXMuX2FsbEZvcm1zRGF0YVxuICAgICAgfSk7XG4gICAgICBjb25zdCB2YWx1ZSA9IHNvdXJjZXMuZ2V0VmFsdWVGcm9tU291cmNlKHNvdXJjZSk7XG4gICAgICAvLyBTZXQgdGhlIFZhbHVlIG9mIGN1cnJlbnQgc291cmNlLlxuICAgICAgdGhpcy5fZmllbGQgPSBzZXRWYWx1ZVRvT2JqZWN0KFxuICAgICAgICB0aGlzLl9maWVsZCxcbiAgICAgICAgYGRlZmF1bHQudmFsdWUuc291cmNlcy5bJHtzb3VyY2VJbmRleH1dLnZhbHVlYCxcbiAgICAgICAgdmFsdWVcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IHZhbGlkYXRpb246IFRWYWxpZGF0aW9uID0gKHNvdXJjZSBhcyBhbnkpLnZhbGlkYXRpb247XG5cbiAgICAgIGNvbnN0IHRyaWdnZXJzOiBBcnJheTxUVHJpZ2dlcj4gPSB2YWxpZGF0aW9uLnRyaWdnZXJzO1xuICAgICAgY29uc3QgcnVsZXM6IEFycmF5PFRSdWxlPiA9IHZhbGlkYXRpb24ucnVsZXM7XG4gICAgICBjb25zdCBhY3Rpb25zOiBBcnJheTxUQWN0aW9uPiA9IHZhbGlkYXRpb24uYWN0aW9ucztcblxuICAgICAgY29uc3QgcnVsZXNNYXBwaW5nID0gbmV3IFJ1bGVzKHJ1bGVzLCB7XG4gICAgICAgIEZJRUxEX0NPTkZJRzogdGhpcy5fZmllbGQsXG4gICAgICAgIEZPUk1fREFUQTogdGhpcy5fZm9ybURhdGEsXG4gICAgICAgIFBSRVZJT1VTX0ZPUk1fREFUQTogdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcbiAgICAgICAgQUxMX0ZPUk1TX0RBVEE6IHRoaXMuX2FsbEZvcm1zRGF0YVxuICAgICAgfSkubWFwcGluZygpO1xuXG4gICAgICBmb3IgKGxldCBhY3Rpb24gb2YgYWN0aW9ucykge1xuICAgICAgICBjb25zdCBjb25kaXRpb25FdmFsdWF0aW9uID0gbmV3IENvbmRpdGlvbihcbiAgICAgICAgICBhY3Rpb24uY29uZGl0aW9uLFxuICAgICAgICAgIHJ1bGVzTWFwcGluZ1xuICAgICAgICApLmV2YWx1YXRlKCk7XG5cbiAgICAgICAgaWYgKGNvbmRpdGlvbkV2YWx1YXRpb24pIHtcbiAgICAgICAgICBjb25zdCBhY3Rpb25zID0gbmV3IEFjdGlvbnMoXG4gICAgICAgICAgICBhY3Rpb24sXG4gICAgICAgICAgICBydWxlc01hcHBpbmcsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIEZJRUxEX0NPTkZJRzogdGhpcy5fZmllbGQsXG4gICAgICAgICAgICAgIEZPUk1fREFUQTogdGhpcy5fZm9ybURhdGEsXG4gICAgICAgICAgICAgIFBSRVZJT1VTX0ZPUk1fREFUQTogdGhpcy5fcHJldmlvdXNGb3JtRGF0YSxcbiAgICAgICAgICAgICAgQUxMX0ZPUk1TX0RBVEE6IHRoaXMuX2FsbEZvcm1zRGF0YVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRoaXMuX3Rha2VBY3Rpb25cbiAgICAgICAgICApO1xuXG4gICAgICAgICAgYXdhaXQgYWN0aW9ucy5leGVjdXRlKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc291cmNlSW5kZXgrKztcbiAgICB9XG5cbiAgICBkZWZhdWx0VmFsdWUgPSB0aGlzLl9maWVsZC5kZWZhdWx0LnZhbHVlLnZhbHVlO1xuXG4gICAgaWYgKGlzRW1wdHkoZGVmYXVsdFZhbHVlKSkge1xuICAgICAgZGVmYXVsdFZhbHVlID0gc2V0RW1wdHlWYWx1ZSh0aGlzLl9maWVsZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgfVxufVxuIl19