@eqproject/eqp-attachments 3.0.0 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2020 → esm2022}/eqproject-eqp-attachments.mjs +4 -4
- package/esm2022/lib/directives/eqp-common/dynamic-loader/dynamic-loader.directive.mjs +53 -0
- package/esm2022/lib/directives/eqp-common/eqp-common.service.mjs +78 -0
- package/esm2022/lib/directives/eqp-common/index.mjs +10 -0
- package/esm2022/lib/directives/eqp-common/models/base-field.model.mjs +57 -0
- package/esm2022/lib/directives/eqp-common/models/common-enum.model.mjs +8 -0
- package/esm2022/lib/directives/eqp-common/models/config-column.model.mjs +116 -0
- package/esm2022/lib/directives/eqp-common/models/filterConfig.model.mjs +318 -0
- package/esm2022/lib/directives/eqp-common/models/filterField.model.mjs +254 -0
- package/esm2022/lib/directives/eqp-common/models/form.model.mjs +168 -0
- package/esm2022/lib/directives/eqp-common/models/linqFilterResult.model.mjs +73 -0
- package/esm2022/lib/directives/eqp-common/models/tableColumn-field.model.mjs +107 -0
- package/esm2022/lib/eqp-attachments.component.mjs +1096 -0
- package/{esm2020 → esm2022}/lib/eqp-attachments.module.mjs +43 -43
- package/esm2022/lib/helpers/attachment.helper.mjs +66 -0
- package/{esm2020 → esm2022}/lib/interfaces/IAttachment.mjs +11 -11
- package/{esm2020 → esm2022}/lib/interfaces/IOptions.mjs +1 -1
- package/{esm2020 → esm2022}/lib/modules/material.module.mjs +231 -231
- package/{esm2020 → esm2022}/lib/services/eqp-attachment-dialog.service.mjs +103 -103
- package/{esm2020 → esm2022}/lib/services/eqp-attachment.service.mjs +23 -23
- package/{esm2020 → esm2022}/public-api.mjs +9 -9
- package/fesm2022/eqproject-eqp-attachments.mjs +2730 -0
- package/fesm2022/eqproject-eqp-attachments.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/directives/eqp-common/dynamic-loader/dynamic-loader.directive.d.ts +17 -0
- package/lib/directives/eqp-common/eqp-common.service.d.ts +21 -0
- package/lib/directives/eqp-common/index.d.ts +9 -0
- package/lib/directives/eqp-common/models/base-field.model.d.ts +52 -0
- package/lib/directives/eqp-common/models/common-enum.model.d.ts +6 -0
- package/lib/directives/eqp-common/models/config-column.model.d.ts +113 -0
- package/lib/directives/eqp-common/models/filterConfig.model.d.ts +264 -0
- package/lib/directives/eqp-common/models/filterField.model.d.ts +144 -0
- package/lib/directives/eqp-common/models/form.model.d.ts +129 -0
- package/lib/directives/eqp-common/models/linqFilterResult.model.d.ts +58 -0
- package/lib/directives/eqp-common/models/tableColumn-field.model.d.ts +31 -0
- package/lib/eqp-attachments.component.d.ts +319 -318
- package/lib/eqp-attachments.module.d.ts +13 -13
- package/lib/helpers/attachment.helper.d.ts +20 -20
- package/lib/interfaces/IAttachment.d.ts +21 -21
- package/lib/interfaces/IOptions.d.ts +11 -11
- package/lib/modules/material.module.d.ts +37 -37
- package/lib/services/eqp-attachment-dialog.service.d.ts +31 -31
- package/lib/services/eqp-attachment.service.d.ts +7 -7
- package/package.json +5 -11
- package/public-api.d.ts +6 -6
- package/esm2020/lib/eqp-attachments.component.mjs +0 -1064
- package/esm2020/lib/helpers/attachment.helper.mjs +0 -66
- package/fesm2015/eqproject-eqp-attachments.mjs +0 -1535
- package/fesm2015/eqproject-eqp-attachments.mjs.map +0 -1
- package/fesm2020/eqproject-eqp-attachments.mjs +0 -1532
- package/fesm2020/eqproject-eqp-attachments.mjs.map +0 -1
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { BaseFieldModel, BaseType } from "./base-field.model";
|
|
2
|
+
import { ConfigColumn, TypeColumn } from "./config-column.model";
|
|
3
|
+
export class TableColumnField extends BaseFieldModel {
|
|
4
|
+
type;
|
|
5
|
+
actions;
|
|
6
|
+
booleanValues;
|
|
7
|
+
buttonMenuIcon;
|
|
8
|
+
icons;
|
|
9
|
+
containerStyle;
|
|
10
|
+
isSearchable = true;
|
|
11
|
+
hyperlink;
|
|
12
|
+
image;
|
|
13
|
+
additionalValue;
|
|
14
|
+
externalTemplateSearchFunction;
|
|
15
|
+
isSortable = true;
|
|
16
|
+
isFilterable = true;
|
|
17
|
+
isHidden = false;
|
|
18
|
+
isSticky = false;
|
|
19
|
+
isStickyEnd = false;
|
|
20
|
+
externalTemplate;
|
|
21
|
+
static createTableColumnFields(baseFields) {
|
|
22
|
+
if (Array.isArray(baseFields)) {
|
|
23
|
+
const tableColumnFields = [];
|
|
24
|
+
baseFields.forEach(field => {
|
|
25
|
+
tableColumnFields.push(this.createTableColumnField(field));
|
|
26
|
+
});
|
|
27
|
+
return tableColumnFields;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
return this.createTableColumnField(baseFields);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
static createTableColumnField(baseField) {
|
|
34
|
+
const tableColumnField = new TableColumnField();
|
|
35
|
+
tableColumnField.key = baseField.key;
|
|
36
|
+
tableColumnField.display = baseField.display;
|
|
37
|
+
tableColumnField.value = baseField.value;
|
|
38
|
+
tableColumnField.enumModel = baseField.enumModel;
|
|
39
|
+
tableColumnField.booleanValues = { true: '<i class="fa fa-check"></i>', false: '<i class="fa fa-close"></i>' }; //DEFAULT
|
|
40
|
+
tableColumnField.styles = baseField.styles != null ? baseField.styles : { minWidth: "250px" }; //DEFAULT
|
|
41
|
+
tableColumnField.type = BaseTypeConverterTable.convertToTypeColumn(baseField.baseType);
|
|
42
|
+
tableColumnField.baseType = null;
|
|
43
|
+
return tableColumnField;
|
|
44
|
+
}
|
|
45
|
+
static createConfigColumns(tableColumnFields) {
|
|
46
|
+
if (Array.isArray(tableColumnFields)) {
|
|
47
|
+
const configColumns = [];
|
|
48
|
+
tableColumnFields.forEach(field => {
|
|
49
|
+
configColumns.push(this.createConfigColumn(field));
|
|
50
|
+
});
|
|
51
|
+
return configColumns;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
return this.createConfigColumn(tableColumnFields);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
static createConfigColumn(tableColumnField) {
|
|
58
|
+
const configColumn = new ConfigColumn();
|
|
59
|
+
configColumn.key = tableColumnField.key;
|
|
60
|
+
configColumn.display = tableColumnField.display;
|
|
61
|
+
configColumn.value = tableColumnField.value;
|
|
62
|
+
configColumn.enumModel = tableColumnField.enumModel;
|
|
63
|
+
configColumn.booleanValues = tableColumnField.booleanValues;
|
|
64
|
+
configColumn.externalTemplate = tableColumnField.externalTemplate;
|
|
65
|
+
configColumn.type = tableColumnField.type;
|
|
66
|
+
configColumn.isSortable = tableColumnField.isSortable ?? true;
|
|
67
|
+
configColumn.isFilterable = tableColumnField.isFilterable ?? true;
|
|
68
|
+
configColumn.isHidden = tableColumnField.isHidden ?? false;
|
|
69
|
+
configColumn.isSticky = tableColumnField.isSticky ?? false;
|
|
70
|
+
configColumn.isStickyEnd = tableColumnField.isStickyEnd ?? false;
|
|
71
|
+
configColumn.isSearchable = tableColumnField.isSearchable ?? true;
|
|
72
|
+
configColumn.format = tableColumnField.format;
|
|
73
|
+
configColumn.numberPipe = tableColumnField.numberPipe;
|
|
74
|
+
configColumn.currencyPipeCode = tableColumnField.currencyPipeCode;
|
|
75
|
+
configColumn.actions = tableColumnField.actions;
|
|
76
|
+
configColumn.buttonMenuIcon = tableColumnField.buttonMenuIcon;
|
|
77
|
+
configColumn.icons = tableColumnField.icons;
|
|
78
|
+
configColumn.styles = tableColumnField.styles;
|
|
79
|
+
configColumn.containerStyle = tableColumnField.type;
|
|
80
|
+
configColumn.disabled = tableColumnField.disabled;
|
|
81
|
+
configColumn.multilanguagePrefixKey = tableColumnField.multilanguagePrefixKey;
|
|
82
|
+
configColumn.tooltip = tableColumnField.tooltip;
|
|
83
|
+
configColumn.hyperlink = tableColumnField.hyperlink;
|
|
84
|
+
configColumn.image = tableColumnField.image;
|
|
85
|
+
configColumn.additionalValue = tableColumnField.additionalValue;
|
|
86
|
+
return configColumn;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
export class BaseTypeConverterTable {
|
|
90
|
+
static convertToTypeColumn(baseType) {
|
|
91
|
+
switch (baseType) {
|
|
92
|
+
case BaseType.Text:
|
|
93
|
+
return undefined;
|
|
94
|
+
case BaseType.Number:
|
|
95
|
+
return undefined;
|
|
96
|
+
case BaseType.Date:
|
|
97
|
+
return TypeColumn.Date;
|
|
98
|
+
case BaseType.Enum:
|
|
99
|
+
return TypeColumn.Enum;
|
|
100
|
+
case BaseType.Boolean:
|
|
101
|
+
return TypeColumn.Boolean;
|
|
102
|
+
default:
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGVDb2x1bW4tZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtYXR0YWNobWVudHMvc3JjL2xpYi9kaXJlY3RpdmVzL2VxcC1jb21tb24vbW9kZWxzL3RhYmxlQ29sdW1uLWZpZWxkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFpQixNQUFNLG9CQUFvQixDQUFDO0FBQzdFLE9BQU8sRUFBZ0IsWUFBWSxFQUEwQixVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUd2RyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsY0FBYztJQUNsRCxJQUFJLENBQWM7SUFDbEIsT0FBTyxDQUF1QjtJQUM5QixhQUFhLENBQWlCO0lBQzlCLGNBQWMsQ0FBVTtJQUN4QixLQUFLLENBQWU7SUFDcEIsY0FBYyxDQUFxQjtJQUNuQyxZQUFZLEdBQWEsSUFBSSxDQUFDO0lBQzlCLFNBQVMsQ0FBYTtJQUN0QixLQUFLLENBQVM7SUFDZCxlQUFlLENBQVU7SUFDekIsOEJBQThCLENBQXVDO0lBQ3JFLFVBQVUsR0FBYSxJQUFJLENBQUM7SUFDNUIsWUFBWSxHQUFhLElBQUksQ0FBQztJQUM5QixRQUFRLEdBQWEsS0FBSyxDQUFDO0lBQzNCLFFBQVEsR0FBYSxLQUFLLENBQUM7SUFDM0IsV0FBVyxHQUFhLEtBQUssQ0FBQztJQUM5QixnQkFBZ0IsQ0FBb0I7SUFJcEMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLFVBQTZDO1FBQzFFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM3QixNQUFNLGlCQUFpQixHQUF1QixFQUFFLENBQUM7WUFDakQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDekIsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxL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QVEsQ0FBQyxJQUFJO2dCQUNoQixPQUFPLFNBQVMsQ0FBQztZQUNuQixLQUFLLFFBQVEsQ0FBQyxNQUFNO2dCQUNsQixPQUFPLFNBQVMsQ0FBQztZQUNuQixLQUFLLFFBQVEsQ0FBQyxJQUFJO2dCQUNoQixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDekIsS0FBSyxRQUFRLENBQUMsSUFBSTtnQkFDaEIsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ3pCLEtBQUssUUFBUSxDQUFDLE9BQU87Z0JBQ25CLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQztZQUM1QjtnQkFDRSxPQUFPLFNBQVMsQ0FBQztTQUNwQjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBCYXNlRmllbGRNb2RlbCwgQmFzZVR5cGUsIEJvb2xlYW5WYWx1ZXMgfSBmcm9tIFwiLi9iYXNlLWZpZWxkLm1vZGVsXCI7XHJcbmltcG9ydCB7IENvbmZpZ0FjdGlvbiwgQ29uZmlnQ29sdW1uLCBIeXBlcmxpbmssIEljb24sIEltYWdlLCBUeXBlQ29sdW1uIH0gZnJvbSBcIi4vY29uZmlnLWNvbHVtbi5tb2RlbFwiO1xyXG5pbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVDb2x1bW5GaWVsZCBleHRlbmRzIEJhc2VGaWVsZE1vZGVsIHtcclxuICB0eXBlPzogVHlwZUNvbHVtbjtcclxuICBhY3Rpb25zPzogQXJyYXk8Q29uZmlnQWN0aW9uPjtcclxuICBib29sZWFuVmFsdWVzPzogQm9vbGVhblZhbHVlcztcclxuICBidXR0b25NZW51SWNvbj86IHN0cmluZztcclxuICBpY29ucz86IEFycmF5PEljb24+O1xyXG4gIGNvbnRhaW5lclN0eWxlPzogT2JqZWN0IHwgRnVuY3Rpb247XHJcbiAgaXNTZWFyY2hhYmxlPzogYm9vbGVhbiA9IHRydWU7XHJcbiAgaHlwZXJsaW5rPzogSHlwZXJsaW5rO1xyXG4gIGltYWdlPzogSW1hZ2U7XHJcbiAgYWRkaXRpb25hbFZhbHVlPzogc3RyaW5nO1xyXG4gIGV4dGVybmFsVGVtcGxhdGVTZWFyY2hGdW5jdGlvbj86ICgocm93KSA9PiBzdHJpbmcgfCBudW1iZXIpIHwgc3RyaW5nO1xyXG4gIGlzU29ydGFibGU/OiBib29sZWFuID0gdHJ1ZTtcclxuICBpc0ZpbHRlcmFibGU/OiBib29sZWFuID0gdHJ1ZTtcclxuICBpc0hpZGRlbj86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1N0aWNreT86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1N0aWNreUVuZD86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBleHRlcm5hbFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgc3RhdGljIGNyZWF0ZVRhYmxlQ29sdW1uRmllbGRzKGJhc2VGaWVsZDogQmFzZUZpZWxkTW9kZWwpOiBUYWJsZUNvbHVtbkZpZWxkO1xyXG4gIHN0YXRpYyBjcmVhdGVUYWJsZUNvbHVtbkZpZWxkcyhiYXNlRmllbGRzOiBCYXNlRmllbGRNb2RlbFtdKTogVGFibGVDb2x1bW5GaWVsZFtdO1xyXG4gIHN0YXRpYyBjcmVhdGVUYWJsZUNvbHVtbkZpZWxkcyhiYXNlRmllbGRzOiBCYXNlRmllbGRNb2RlbCB8IEJhc2VGaWVsZE1vZGVsW10pOiBUYWJsZUNvbHVtbkZpZWxkIHwgVGFibGVDb2x1bW5GaWVsZFtdIHtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KGJhc2VGaWVsZHMpKSB7XHJcbiAgICAgIGNvbnN0IHRhYmxlQ29sdW1uRmllbGRzOiBUYWJsZUNvbHVtbkZpZWxkW10gPSBbXTtcclxuICAgICAgYmFzZUZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcclxuICAgICAgICB0YWJsZUNvbHVtbkZpZWxkcy5wdXNoKHRoaXMuY3JlYXRlVGFibGVDb2x1bW5GaWVsZChmaWVsZCkpO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHRhYmxlQ29sdW1uRmllbGRzO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlVGFibGVDb2x1bW5GaWVsZChiYXNlRmllbGRzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIGNyZWF0ZVRhYmxlQ29sdW1uRmllbGQoYmFzZUZpZWxkOiBCYXNlRmllbGRNb2RlbCk6IFRhYmxlQ29sdW1uRmllbGQge1xyXG4gICAgY29uc3QgdGFibGVDb2x1bW5GaWVsZDogVGFibGVDb2x1bW5GaWVsZCA9IG5ldyBUYWJsZUNvbHVtbkZpZWxkKCk7XHJcbiAgICB0YWJsZUNvbHVtbkZpZWxkLmtleSA9IGJhc2VGaWVsZC5rZXk7XHJcbiAgICB0YWJsZUNvbHVtbkZpZWxkLmRpc3BsYXkgPSBiYXNlRmllbGQuZGlzcGxheTtcclxuICAgIHRhYmxlQ29sdW1uRmllbGQudmFsdWUgPSBiYXNlRmllbGQudmFsdWU7XHJcbiAgICB0YWJsZUNvbHVtbkZpZWxkLmVudW1Nb2RlbCA9IGJhc2VGaWVsZC5lbnVtTW9kZWw7XHJcbiAgICB0YWJsZUNvbHVtbkZpZWxkLmJvb2xlYW5WYWx1ZXMgPSB7IHRydWU6ICc8aSBjbGFzcz1cImZhIGZhLWNoZWNrXCI+PC9pPicsIGZhbHNlOiAnPGkgY2xhc3M9XCJmYSBmYS1jbG9zZVwiPjwvaT4nIH07IC8vREVGQVVMVFxyXG4gICAgdGFibGVDb2x1bW5GaWVsZC5zdHlsZXMgPSBiYXNlRmllbGQuc3R5bGVzICE9IG51bGwgPyBiYXNlRmllbGQuc3R5bGVzIDogeyBtaW5XaWR0aDogXCIyNTBweFwiIH07IC8vREVGQVVMVFxyXG4gICAgdGFibGVDb2x1bW5GaWVsZC50eXBlID0gQmFzZVR5cGVDb252ZXJ0ZXJUYWJsZS5jb252ZXJ0VG9UeXBlQ29sdW1uKGJhc2VGaWVsZC5iYXNlVHlwZSk7XHJcbiAgICB0YWJsZUNvbHVtbkZpZWxkLmJhc2VUeXBlID0gbnVsbDtcclxuXHJcbiAgICByZXR1cm4gdGFibGVDb2x1bW5GaWVsZDtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjcmVhdGVDb25maWdDb2x1bW5zKHRhYmxlQ29sdW1uRmllbGRzOiBUYWJsZUNvbHVtbkZpZWxkKTogQ29uZmlnQ29sdW1uO1xyXG4gIHN0YXRpYyBjcmVhdGVDb25maWdDb2x1bW5zKHRhYmxlQ29sdW1uRmllbGRzOiBUYWJsZUNvbHVtbkZpZWxkW10pOiBDb25maWdDb2x1bW5bXTtcclxuICBzdGF0aWMgY3JlYXRlQ29uZmlnQ29sdW1ucyh0YWJsZUNvbHVtbkZpZWxkczogVGFibGVDb2x1bW5GaWVsZCB8IFRhYmxlQ29sdW1uRmllbGRbXSk6IENvbmZpZ0NvbHVtbiB8IENvbmZpZ0NvbHVtbltdIHtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KHRhYmxlQ29sdW1uRmllbGRzKSkge1xyXG4gICAgICBjb25zdCBjb25maWdDb2x1bW5zOiBDb25maWdDb2x1bW5bXSA9IFtdO1xyXG4gICAgICB0YWJsZUNvbHVtbkZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcclxuICAgICAgICBjb25maWdDb2x1bW5zLnB1c2godGhpcy5jcmVhdGVDb25maWdDb2x1bW4oZmllbGQpKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiBjb25maWdDb2x1bW5zO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQ29uZmlnQ29sdW1uKHRhYmxlQ29sdW1uRmllbGRzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIGNyZWF0ZUNvbmZpZ0NvbHVtbih0YWJsZUNvbHVtbkZpZWxkOiBUYWJsZUNvbHVtbkZpZWxkKTogQ29uZmlnQ29sdW1uIHtcclxuICAgIGNvbnN0IGNvbmZpZ0NvbHVtbjogQ29uZmlnQ29sdW1uID0gbmV3IENvbmZpZ0NvbHVtbigpO1xyXG4gICAgY29uZmlnQ29sdW1uLmtleSA9IHRhYmxlQ29sdW1uRmllbGQua2V5O1xyXG4gICAgY29uZmlnQ29sdW1uLmRpc3BsYXkgPSB0YWJsZUNvbHVtbkZpZWxkLmRpc3BsYXk7XHJcbiAgICBjb25maWdDb2x1bW4udmFsdWUgPSB0YWJsZUNvbHVtbkZpZWxkLnZhbHVlO1xyXG4gICAgY29uZmlnQ29sdW1uLmVudW1Nb2RlbCA9IHRhYmxlQ29sdW1uRmllbGQuZW51bU1vZGVsO1xyXG4gICAgY29uZmlnQ29sdW1uLmJvb2xlYW5WYWx1ZXMgPSB0YWJsZUNvbHVtbkZpZWxkLmJvb2xlYW5WYWx1ZXM7XHJcbiAgICBjb25maWdDb2x1bW4uZXh0ZXJuYWxUZW1wbGF0ZSA9IHRhYmxlQ29sdW1uRmllbGQuZXh0ZXJuYWxUZW1wbGF0ZTtcclxuICAgIGNvbmZpZ0NvbHVtbi50eXBlID0gdGFibGVDb2x1bW5GaWVsZC50eXBlO1xyXG4gICAgY29uZmlnQ29sdW1uLmlzU29ydGFibGUgPSB0YWJsZUNvbHVtbkZpZWxkLmlzU29ydGFibGUgPz8gdHJ1ZTtcclxuICAgIGNvbmZpZ0NvbHVtbi5pc0ZpbHRlcmFibGUgPSB0YWJsZUNvbHVtbkZpZWxkLmlzRmlsdGVyYWJsZSA/PyB0cnVlO1xyXG4gICAgY29uZmlnQ29sdW1uLmlzSGlkZGVuID0gdGFibGVDb2x1bW5GaWVsZC5pc0hpZGRlbiA/PyBmYWxzZTtcclxuICAgIGNvbmZpZ0NvbHVtbi5pc1N0aWNreSA9IHRhYmxlQ29sdW1uRmllbGQuaXNTdGlja3kgPz8gZmFsc2U7XHJcbiAgICBjb25maWdDb2x1bW4uaXNTdGlja3lFbmQgPSB0YWJsZUNvbHVtbkZpZWxkLmlzU3RpY2t5RW5kID8/IGZhbHNlO1xyXG4gICAgY29uZmlnQ29sdW1uLmlzU2VhcmNoYWJsZSA9IHRhYmxlQ29sdW1uRmllbGQuaXNTZWFyY2hhYmxlID8/IHRydWU7XHJcbiAgICBjb25maWdDb2x1bW4uZm9ybWF0ID0gdGFibGVDb2x1bW5GaWVsZC5mb3JtYXQ7XHJcbiAgICBjb25maWdDb2x1bW4ubnVtYmVyUGlwZSA9IHRhYmxlQ29sdW1uRmllbGQubnVtYmVyUGlwZTtcclxuICAgIGNvbmZpZ0NvbHVtbi5jdXJyZW5jeVBpcGVDb2RlID0gdGFibGVDb2x1bW5GaWVsZC5jdXJyZW5jeVBpcGVDb2RlO1xyXG4gICAgY29uZmlnQ29sdW1uLmFjdGlvbnMgPSB0YWJsZUNvbHVtbkZpZWxkLmFjdGlvbnM7XHJcbiAgICBjb25maWdDb2x1bW4uYnV0dG9uTWVudUljb24gPSB0YWJsZUNvbHVtbkZpZWxkLmJ1dHRvbk1lbnVJY29uO1xyXG4gICAgY29uZmlnQ29sdW1uLmljb25zID0gdGFibGVDb2x1bW5GaWVsZC5pY29ucztcclxuICAgIGNvbmZpZ0NvbHVtbi5zdHlsZXMgPSB0YWJsZUNvbHVtbkZpZWxkLnN0eWxlcztcclxuICAgIGNvbmZpZ0NvbHVtbi5jb250YWluZXJTdHlsZSA9IHRhYmxlQ29sdW1uRmllbGQudHlwZTtcclxuICAgIGNvbmZpZ0NvbHVtbi5kaXNhYmxlZCA9IHRhYmxlQ29sdW1uRmllbGQuZGlzYWJsZWQ7XHJcbiAgICBjb25maWdDb2x1bW4ubXVsdGlsYW5ndWFnZVByZWZpeEtleSA9IHRhYmxlQ29sdW1uRmllbGQubXVsdGlsYW5ndWFnZVByZWZpeEtleTtcclxuICAgIGNvbmZpZ0NvbHVtbi50b29sdGlwID0gdGFibGVDb2x1bW5GaWVsZC50b29sdGlwO1xyXG4gICAgY29uZmlnQ29sdW1uLmh5cGVybGluayA9IHRhYmxlQ29sdW1uRmllbGQuaHlwZXJsaW5rO1xyXG4gICAgY29uZmlnQ29sdW1uLmltYWdlID0gdGFibGVDb2x1bW5GaWVsZC5pbWFnZTtcclxuICAgIGNvbmZpZ0NvbHVtbi5hZGRpdGlvbmFsVmFsdWUgPSB0YWJsZUNvbHVtbkZpZWxkLmFkZGl0aW9uYWxWYWx1ZTtcclxuXHJcbiAgICByZXR1cm4gY29uZmlnQ29sdW1uO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBCYXNlVHlwZUNvbnZlcnRlclRhYmxlIHtcclxuICBzdGF0aWMgY29udmVydFRvVHlwZUNvbHVtbihiYXNlVHlwZTogQmFzZVR5cGUpOiBUeXBlQ29sdW1uIHtcclxuICAgIHN3aXRjaCAoYmFzZVR5cGUpIHtcclxuICAgICAgY2FzZSBCYXNlVHlwZS5UZXh0OlxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICAgIGNhc2UgQmFzZVR5cGUuTnVtYmVyOlxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICAgIGNhc2UgQmFzZVR5cGUuRGF0ZTpcclxuICAgICAgICByZXR1cm4gVHlwZUNvbHVtbi5EYXRlO1xyXG4gICAgICBjYXNlIEJhc2VUeXBlLkVudW06XHJcbiAgICAgICAgcmV0dXJuIFR5cGVDb2x1bW4uRW51bTtcclxuICAgICAgY2FzZSBCYXNlVHlwZS5Cb29sZWFuOlxyXG4gICAgICAgIHJldHVybiBUeXBlQ29sdW1uLkJvb2xlYW47XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|