@wemake4u/form-player-se 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -0
- package/esm2022/lib/controls/accordion.mjs +7 -0
- package/esm2022/lib/controls/button.mjs +7 -0
- package/esm2022/lib/controls/checkbox.mjs +7 -0
- package/esm2022/lib/controls/checklist.mjs +7 -0
- package/esm2022/lib/controls/chipchecklist.mjs +7 -0
- package/esm2022/lib/controls/chipradio.mjs +7 -0
- package/esm2022/lib/controls/control.mjs +65 -0
- package/esm2022/lib/controls/date.mjs +7 -0
- package/esm2022/lib/controls/dynamiclist.mjs +4 -0
- package/esm2022/lib/controls/factory.mjs +106 -0
- package/esm2022/lib/controls/filepicker.mjs +7 -0
- package/esm2022/lib/controls/form.mjs +4 -0
- package/esm2022/lib/controls/group.mjs +4 -0
- package/esm2022/lib/controls/html.mjs +4 -0
- package/esm2022/lib/controls/iframe.mjs +4 -0
- package/esm2022/lib/controls/image.mjs +4 -0
- package/esm2022/lib/controls/number.mjs +7 -0
- package/esm2022/lib/controls/radio.mjs +7 -0
- package/esm2022/lib/controls/select.mjs +7 -0
- package/esm2022/lib/controls/separator.mjs +4 -0
- package/esm2022/lib/controls/spacer.mjs +4 -0
- package/esm2022/lib/controls/tab.mjs +7 -0
- package/esm2022/lib/controls/table.mjs +13 -0
- package/esm2022/lib/controls/taglist.mjs +7 -0
- package/esm2022/lib/controls/text.mjs +4 -0
- package/esm2022/lib/controls/textarea.mjs +7 -0
- package/esm2022/lib/controls/textfield.mjs +18 -0
- package/esm2022/lib/controls/time.mjs +7 -0
- package/esm2022/lib/controls/toggle.mjs +7 -0
- package/esm2022/lib/dataSources/interfaces.mjs +2 -0
- package/esm2022/lib/dataSources/odata.mjs +131 -0
- package/esm2022/lib/dataSources/rest.mjs +48 -0
- package/esm2022/lib/directives/accordion.directive.mjs +52 -0
- package/esm2022/lib/directives/adorner.directive.mjs +130 -0
- package/esm2022/lib/directives/disable.directive.mjs +38 -0
- package/esm2022/lib/directives/display.directive.mjs +46 -0
- package/esm2022/lib/directives/dropdown.directive.mjs +233 -0
- package/esm2022/lib/directives/frame-security.directive.mjs +66 -0
- package/esm2022/lib/directives/grid.directive.mjs +68 -0
- package/esm2022/lib/directives/register.directive.mjs +86 -0
- package/esm2022/lib/directives/repeat.directive.mjs +38 -0
- package/esm2022/lib/directives/tab.directive.mjs +49 -0
- package/esm2022/lib/directives/updateblur.directive.mjs +32 -0
- package/esm2022/lib/dynamic-fields/dynamic-fields.component.mjs +493 -0
- package/esm2022/lib/dynamic-form/dynamic-form.component.mjs +395 -0
- package/esm2022/lib/locale/locale-it.mjs +13 -0
- package/esm2022/lib/services/data.service.mjs +29 -0
- package/esm2022/lib/services/event.service.mjs +19 -0
- package/esm2022/lib/services/feel.service.mjs +73 -0
- package/esm2022/lib/services/formatter.service.mjs +60 -0
- package/esm2022/lib/services/markdown.service.mjs +24 -0
- package/esm2022/lib/services/mime.service.mjs +32 -0
- package/esm2022/lib/services/programmability.service.mjs +221 -0
- package/esm2022/lib/services/proxy.service.mjs +131 -0
- package/esm2022/lib/services/register.service.mjs +60 -0
- package/esm2022/lib/services/sanitize.service.mjs +38 -0
- package/esm2022/lib/services/scope.service.mjs +46 -0
- package/esm2022/lib/services/toast.service.mjs +37 -0
- package/esm2022/lib/services/weak.service.mjs +60 -0
- package/esm2022/lib/utils/extractFiles.mjs +30 -0
- package/esm2022/lib/utils/gridCells.mjs +49 -0
- package/esm2022/lib/utils/groupByRow.mjs +30 -0
- package/esm2022/lib/utils/patchForm.mjs +55 -0
- package/esm2022/lib/utils/toFormData.mjs +11 -0
- package/esm2022/public-api.mjs +8 -0
- package/esm2022/wemake4u-form-player-se.mjs +5 -0
- package/fesm2022/wemake4u-form-player-se.mjs +3101 -0
- package/fesm2022/wemake4u-form-player-se.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/controls/accordion.d.ts +4 -0
- package/lib/controls/button.d.ts +4 -0
- package/lib/controls/checkbox.d.ts +4 -0
- package/lib/controls/checklist.d.ts +4 -0
- package/lib/controls/chipchecklist.d.ts +4 -0
- package/lib/controls/chipradio.d.ts +4 -0
- package/lib/controls/control.d.ts +24 -0
- package/lib/controls/date.d.ts +4 -0
- package/lib/controls/dynamiclist.d.ts +3 -0
- package/lib/controls/factory.d.ts +4 -0
- package/lib/controls/filepicker.d.ts +4 -0
- package/lib/controls/form.d.ts +3 -0
- package/lib/controls/group.d.ts +3 -0
- package/lib/controls/html.d.ts +3 -0
- package/lib/controls/iframe.d.ts +3 -0
- package/lib/controls/image.d.ts +3 -0
- package/lib/controls/number.d.ts +4 -0
- package/lib/controls/radio.d.ts +4 -0
- package/lib/controls/select.d.ts +4 -0
- package/lib/controls/separator.d.ts +3 -0
- package/lib/controls/spacer.d.ts +3 -0
- package/lib/controls/tab.d.ts +4 -0
- package/lib/controls/table.d.ts +6 -0
- package/lib/controls/taglist.d.ts +4 -0
- package/lib/controls/text.d.ts +3 -0
- package/lib/controls/textarea.d.ts +4 -0
- package/lib/controls/textfield.d.ts +6 -0
- package/lib/controls/time.d.ts +4 -0
- package/lib/controls/toggle.d.ts +4 -0
- package/lib/dataSources/interfaces.d.ts +8 -0
- package/lib/dataSources/odata.d.ts +16 -0
- package/lib/dataSources/rest.d.ts +16 -0
- package/lib/directives/accordion.directive.d.ts +11 -0
- package/lib/directives/adorner.directive.d.ts +22 -0
- package/lib/directives/disable.directive.d.ts +12 -0
- package/lib/directives/display.directive.d.ts +12 -0
- package/lib/directives/dropdown.directive.d.ts +26 -0
- package/lib/directives/frame-security.directive.d.ts +14 -0
- package/lib/directives/grid.directive.d.ts +17 -0
- package/lib/directives/register.directive.d.ts +24 -0
- package/lib/directives/repeat.directive.d.ts +12 -0
- package/lib/directives/tab.directive.d.ts +11 -0
- package/lib/directives/updateblur.directive.d.ts +10 -0
- package/lib/dynamic-fields/dynamic-fields.component.d.ts +84 -0
- package/lib/dynamic-form/dynamic-form.component.d.ts +76 -0
- package/lib/locale/locale-it.d.ts +12 -0
- package/lib/services/data.service.d.ts +15 -0
- package/lib/services/event.service.d.ts +15 -0
- package/lib/services/feel.service.d.ts +10 -0
- package/lib/services/formatter.service.d.ts +10 -0
- package/lib/services/markdown.service.d.ts +7 -0
- package/lib/services/mime.service.d.ts +8 -0
- package/lib/services/programmability.service.d.ts +39 -0
- package/lib/services/proxy.service.d.ts +31 -0
- package/lib/services/register.service.d.ts +18 -0
- package/lib/services/sanitize.service.d.ts +12 -0
- package/lib/services/scope.service.d.ts +13 -0
- package/lib/services/toast.service.d.ts +13 -0
- package/lib/services/weak.service.d.ts +10 -0
- package/lib/utils/extractFiles.d.ts +4 -0
- package/lib/utils/gridCells.d.ts +19 -0
- package/lib/utils/groupByRow.d.ts +38 -0
- package/lib/utils/patchForm.d.ts +8 -0
- package/lib/utils/toFormData.d.ts +1 -0
- package/package.json +42 -0
- package/public-api.d.ts +4 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
|
2
|
+
export class ODataSource {
|
|
3
|
+
url;
|
|
4
|
+
http;
|
|
5
|
+
constructor(url, http) {
|
|
6
|
+
this.url = url;
|
|
7
|
+
this.http = http;
|
|
8
|
+
}
|
|
9
|
+
getRows(params) {
|
|
10
|
+
const queryString = this.getQueryString(params);
|
|
11
|
+
let queryUrl = `${this.url}${queryString}`;
|
|
12
|
+
this.http.get(queryUrl, { observe: 'response' }).subscribe({
|
|
13
|
+
next: response => {
|
|
14
|
+
const data = response.body ?? [];
|
|
15
|
+
const count = response.headers.get('X-Total-Count');
|
|
16
|
+
params.successCallback(data, this.toNumber(count));
|
|
17
|
+
},
|
|
18
|
+
error: error => {
|
|
19
|
+
console.log(error);
|
|
20
|
+
params.failCallback();
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
getQueryString(params) {
|
|
25
|
+
let queryParams = new HttpParams();
|
|
26
|
+
queryParams = this.addCount(queryParams);
|
|
27
|
+
queryParams = this.addSkipAndTake(params, queryParams);
|
|
28
|
+
queryParams = this.addOrderBy(params, queryParams);
|
|
29
|
+
queryParams = this.addFilterBy(params, queryParams);
|
|
30
|
+
const queryString = queryParams.toString();
|
|
31
|
+
return queryString ? "?" + queryString : queryString;
|
|
32
|
+
}
|
|
33
|
+
addCount(queryParams) {
|
|
34
|
+
return queryParams.set("$count", "true");
|
|
35
|
+
}
|
|
36
|
+
addSkipAndTake(params, queryParams) {
|
|
37
|
+
return queryParams
|
|
38
|
+
.set("$top", `${params.endRow - params.startRow}`)
|
|
39
|
+
.set("$skip", `${params.startRow}`);
|
|
40
|
+
}
|
|
41
|
+
addOrderBy(params, queryParams) {
|
|
42
|
+
if (!params.sortModel || params.sortModel.length === 0) {
|
|
43
|
+
return queryParams;
|
|
44
|
+
}
|
|
45
|
+
const orderByParams = params.sortModel
|
|
46
|
+
.map(sort => `${sort.colId} ${sort.sort}`)
|
|
47
|
+
.join(",");
|
|
48
|
+
return queryParams.set("$orderby", orderByParams);
|
|
49
|
+
}
|
|
50
|
+
addFilterBy(params, queryParams) {
|
|
51
|
+
const filterModel = params.filterModel;
|
|
52
|
+
if (!filterModel || Object.keys(filterModel).length === 0) {
|
|
53
|
+
return queryParams;
|
|
54
|
+
}
|
|
55
|
+
const filters = [];
|
|
56
|
+
for (const column in filterModel) {
|
|
57
|
+
const filter = filterModel[column];
|
|
58
|
+
const condition = this.getCondition(column, filter);
|
|
59
|
+
if (condition) {
|
|
60
|
+
filters.push(condition);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return queryParams.set("$filter", filters.join(" and "));
|
|
64
|
+
}
|
|
65
|
+
getCondition(column, filter) {
|
|
66
|
+
if (filter.operator === "AND" || filter.operator === "OR") {
|
|
67
|
+
if (Array.isArray(filter.conditions)) {
|
|
68
|
+
return "(" + filter.conditions.map((subfilter) => this.getCondition(column, subfilter))
|
|
69
|
+
.join(` ${filter.operator.toLowerCase()} `) + ")";
|
|
70
|
+
}
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
const value = filter.filter;
|
|
74
|
+
switch (filter.filterType) {
|
|
75
|
+
case "text":
|
|
76
|
+
const text = (value ?? "").replace(/'/g, "''");
|
|
77
|
+
if (filter.type === "contains") {
|
|
78
|
+
return `contains(${column}, '${text}')`;
|
|
79
|
+
}
|
|
80
|
+
else if (filter.type === "notContains") {
|
|
81
|
+
return `not contains(${column}, '${text}')`;
|
|
82
|
+
}
|
|
83
|
+
else if (filter.type === "equals") {
|
|
84
|
+
return `${column} eq '${text}'`;
|
|
85
|
+
}
|
|
86
|
+
else if (filter.type === "notEqual") {
|
|
87
|
+
return `${column} ne '${text}'`;
|
|
88
|
+
}
|
|
89
|
+
else if (filter.type === "startsWith") {
|
|
90
|
+
return `startswith(${column}, '${text}')`;
|
|
91
|
+
}
|
|
92
|
+
else if (filter.type === "endsWith") {
|
|
93
|
+
return `endswith(${column}, '${text}')`;
|
|
94
|
+
}
|
|
95
|
+
else if (filter.type === "blank") {
|
|
96
|
+
return `${column} eq null`;
|
|
97
|
+
}
|
|
98
|
+
else if (filter.type === "notBlank") {
|
|
99
|
+
return `${column} ne null`;
|
|
100
|
+
}
|
|
101
|
+
break;
|
|
102
|
+
case "number":
|
|
103
|
+
if (filter.type === "equals") {
|
|
104
|
+
return `${column} eq ${value}`;
|
|
105
|
+
}
|
|
106
|
+
else if (filter.type === "greaterThan") {
|
|
107
|
+
return `${column} gt ${value}`;
|
|
108
|
+
}
|
|
109
|
+
else if (filter.type === "lessThan") {
|
|
110
|
+
return `${column} lt ${value}`;
|
|
111
|
+
}
|
|
112
|
+
else if (filter.type === "greaterThanOrEqual") {
|
|
113
|
+
return `${column} ge ${value}`;
|
|
114
|
+
}
|
|
115
|
+
else if (filter.type === "lessThanOrEqual") {
|
|
116
|
+
return `${column} le ${value}`;
|
|
117
|
+
}
|
|
118
|
+
break;
|
|
119
|
+
case "date":
|
|
120
|
+
return `${column} eq ${value}`; // Modifica se OData usa formati ISO
|
|
121
|
+
}
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
toNumber(value) {
|
|
125
|
+
if (!value)
|
|
126
|
+
return undefined;
|
|
127
|
+
const num = parseFloat(value);
|
|
128
|
+
return isNaN(num) ? undefined : num;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2RhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kYXRhU291cmNlcy9vZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJOUQsTUFBTSxPQUFPLFdBQVc7SUFDRjtJQUNSO0lBRFosWUFBb0IsR0FBVyxFQUNuQixJQUFnQjtRQURSLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUM1QixDQUFDO0lBRUQsT0FBTyxDQUFDLE1BQXNCO1FBQzVCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFaEQsSUFBSSxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsRUFBRSxDQUFBO1FBRTFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM5RCxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUU7Z0JBQ2YsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ2pDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUNwRCxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDckQsQ0FBQztZQUNELEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRTtnQkFDYixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNuQixNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDeEIsQ0FBQztTQUNGLENBQUMs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QUMsQ0FBQyxvQ0FBb0M7UUFDeEUsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFFBQVEsQ0FBQyxLQUFvQjtRQUNuQyxJQUFJLENBQUMsS0FBSztZQUNSLE9BQU8sU0FBUyxDQUFDO1FBQ25CLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDdEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSUdldFJvd3NQYXJhbXMgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcbmltcG9ydCB7IElSb3dzU291cmNlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBPRGF0YVNvdXJjZSBpbXBsZW1lbnRzIElSb3dzU291cmNlICB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1cmw6IHN0cmluZ1xyXG4gICAgLCBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHtcclxuICB9XHJcblxyXG4gIGdldFJvd3MocGFyYW1zOiBJR2V0Um93c1BhcmFtcykge1xyXG4gICAgY29uc3QgcXVlcnlTdHJpbmcgPSB0aGlzLmdldFF1ZXJ5U3RyaW5nKHBhcmFtcyk7XHJcblxyXG4gICAgbGV0IHF1ZXJ5VXJsID0gYCR7dGhpcy51cmx9JHtxdWVyeVN0cmluZ31gXHJcblxyXG4gICAgdGhpcy5odHRwLmdldDxhbnk+KHF1ZXJ5VXJsLCB7IG9ic2VydmU6ICdyZXNwb25zZScgfSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogcmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSByZXNwb25zZS5ib2R5ID8/IFtdO1xyXG4gICAgICAgIGNvbnN0IGNvdW50ID0gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ1gtVG90YWwtQ291bnQnKTtcclxuICAgICAgICBwYXJhbXMuc3VjY2Vzc0NhbGxiYWNrKGRhdGEsIHRoaXMudG9OdW1iZXIoY291bnQpKTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IGVycm9yID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgICAgcGFyYW1zLmZhaWxDYWxsYmFjaygpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UXVlcnlTdHJpbmcocGFyYW1zOiBJR2V0Um93c1BhcmFtcyk6IHN0cmluZyB7XHJcbiAgICBsZXQgcXVlcnlQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG4gICAgcXVlcnlQYXJhbXMgPSB0aGlzLmFkZENvdW50KHF1ZXJ5UGFyYW1zKTtcclxuICAgIHF1ZXJ5UGFyYW1zID0gdGhpcy5hZGRTa2lwQW5kVGFrZShwYXJhbXMsIHF1ZXJ5UGFyYW1zKTtcclxuICAgIHF1ZXJ5UGFyYW1zID0gdGhpcy5hZGRPcmRlckJ5KHBhcmFtcywgcXVlcnlQYXJhbXMpO1xyXG4gICAgcXVlcnlQYXJhbXMgPSB0aGlzLmFkZEZpbHRlckJ5KHBhcmFtcywgcXVlcnlQYXJhbXMpO1xyXG5cclxuICAgIGNvbnN0IHF1ZXJ5U3RyaW5nID0gcXVlcnlQYXJhbXMudG9TdHJpbmcoKTtcclxuICAgIHJldHVybiBxdWVyeVN0cmluZyA/IFwiP1wiICsgcXVlcnlTdHJpbmcgOiBxdWVyeVN0cmluZztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkQ291bnQocXVlcnlQYXJhbXM6IEh0dHBQYXJhbXMpOiBIdHRwUGFyYW1zIHtcclxuICAgIHJldHVybiBxdWVyeVBhcmFtcy5zZXQoXCIkY291bnRcIiwgXCJ0cnVlXCIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhZGRTa2lwQW5kVGFrZShwYXJhbXM6IElHZXRSb3dzUGFyYW1zLCBxdWVyeVBhcmFtczogSHR0cFBhcmFtcyk6IEh0dHBQYXJhbXMge1xyXG4gICAgcmV0dXJuIHF1ZXJ5UGFyYW1zXHJcbiAgICAgIC5zZXQoXCIkdG9wXCIsIGAke3BhcmFtcy5lbmRSb3cgLSBwYXJhbXMuc3RhcnRSb3d9YClcclxuICAgICAgLnNldChcIiRza2lwXCIsIGAke3BhcmFtcy5zdGFydFJvd31gKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkT3JkZXJCeShwYXJhbXM6IElHZXRSb3dzUGFyYW1zLCBxdWVyeVBhcmFtczogSHR0cFBhcmFtcyk6IEh0dHBQYXJhbXMge1xyXG4gICAgaWYgKCFwYXJhbXMuc29ydE1vZGVsIHx8IHBhcmFtcy5zb3J0TW9kZWwubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBxdWVyeVBhcmFtcztcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBvcmRlckJ5UGFyYW1zID0gcGFyYW1zLnNvcnRNb2RlbFxyXG4gICAgICAubWFwKHNvcnQgPT4gYCR7c29ydC5jb2xJZH0gJHtzb3J0LnNvcnR9YClcclxuICAgICAgLmpvaW4oXCIsXCIpO1xyXG5cclxuICAgIHJldHVybiBxdWVyeVBhcmFtcy5zZXQoXCIkb3JkZXJieVwiLCBvcmRlckJ5UGFyYW1zKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkRmlsdGVyQnkocGFyYW1zOiBJR2V0Um93c1BhcmFtcywgcXVlcnlQYXJhbXM6IEh0dHBQYXJhbXMpOiBIdHRwUGFyYW1zIHtcclxuXHJcbiAgICBjb25zdCBmaWx0ZXJNb2RlbCA9IHBhcmFtcy5maWx0ZXJNb2RlbDtcclxuXHJcbiAgICBpZiAoIWZpbHRlck1vZGVsIHx8IE9iamVjdC5rZXlzKGZpbHRlck1vZGVsKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIHF1ZXJ5UGFyYW1zO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGZpbHRlcnM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgZm9yIChjb25zdCBjb2x1bW4gaW4gZmlsdGVyTW9kZWwpIHtcclxuICAgICAgY29uc3QgZmlsdGVyID0gZmlsdGVyTW9kZWxbY29sdW1uXTtcclxuXHJcbiAgICAgIGNvbnN0IGNvbmRpdGlvbiA9IHRoaXMuZ2V0Q29uZGl0aW9uKGNvbHVtbiwgZmlsdGVyKTtcclxuXHJcbiAgICAgIGlmIChjb25kaXRpb24pIHtcclxuICAgICAgICBmaWx0ZXJzLnB1c2goY29uZGl0aW9uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBxdWVyeVBhcmFtcy5zZXQoXCIkZmlsdGVyXCIsIGZpbHRlcnMuam9pbihcIiBhbmQgXCIpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Q29uZGl0aW9uKGNvbHVtbjogc3RyaW5nLCBmaWx0ZXI6IGFueSk6IHN0cmluZyB8IG51bGwge1xyXG5cclxuICAgIGlmIChmaWx0ZXIub3BlcmF0b3IgPT09IFwiQU5EXCIgfHwgZmlsdGVyLm9wZXJhdG9yID09PSBcIk9SXCIpIHtcclxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmlsdGVyLmNvbmRpdGlvbnMpKSB7XHJcbiAgICAgICAgcmV0dXJuIFwiKFwiICsgZmlsdGVyLmNvbmRpdGlvbnMubWFwKChzdWJmaWx0ZXI6IGFueSkgPT4gdGhpcy5nZXRDb25kaXRpb24oY29sdW1uLCBzdWJmaWx0ZXIpKVxyXG4gICAgICAgICAgLmpvaW4oYCAke2ZpbHRlci5vcGVyYXRvci50b0xvd2VyQ2FzZSgpfSBgKSArIFwiKVwiO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbHVlID0gZmlsdGVyLmZpbHRlcjtcclxuXHJcbiAgICBzd2l0Y2ggKGZpbHRlci5maWx0ZXJUeXBlKSB7XHJcbiAgICAgIGNhc2UgXCJ0ZXh0XCI6XHJcbiAgICAgICAgY29uc3QgdGV4dCA9ICh2YWx1ZSA/PyBcIlwiKS5yZXBsYWNlKC8nL2csIFwiJydcIik7XHJcbiAgICAgICAgaWYgKGZpbHRlci50eXBlID09PSBcImNvbnRhaW5zXCIpIHtcclxuICAgICAgICAgIHJldHVybiBgY29udGFpbnMoJHtjb2x1bW59LCAnJHt0ZXh0fScpYDtcclxuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlci50eXBlID09PSBcIm5vdENvbnRhaW5zXCIpIHtcclxuICAgICAgICAgIHJldHVybiBgbm90IGNvbnRhaW5zKCR7Y29sdW1ufSwgJyR7dGV4dH0nKWA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXIudHlwZSA9PT0gXCJlcXVhbHNcIikge1xyXG4gICAgICAgICAgcmV0dXJuIGAke2NvbHVtbn0gZXEgJyR7dGV4dH0nYDtcclxuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlci50eXBlID09PSBcIm5vdEVxdWFsXCIpIHtcclxuICAgICAgICAgIHJldHVybiBgJHtjb2x1bW59IG5lICcke3RleHR9J2A7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXIudHlwZSA9PT0gXCJzdGFydHNXaXRoXCIpIHtcclxuICAgICAgICAgIHJldHVybiBgc3RhcnRzd2l0aCgke2NvbHVtbn0sICcke3RleHR9JylgO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyLnR5cGUgPT09IFwiZW5kc1dpdGhcIikge1xyXG4gICAgICAgICAgcmV0dXJuIGBlbmRzd2l0aCgke2NvbHVtbn0sICcke3RleHR9JylgO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyLnR5cGUgPT09IFwiYmxhbmtcIikge1xyXG4gICAgICAgICAgcmV0dXJuIGAke2NvbHVtbn0gZXEgbnVsbGA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXIudHlwZSA9PT0gXCJub3RCbGFua1wiKSB7XHJcbiAgICAgICAgICByZXR1cm4gYCR7Y29sdW1ufSBuZSBudWxsYDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIFwibnVtYmVyXCI6XHJcbiAgICAgICAgaWYgKGZpbHRlci50eXBlID09PSBcImVxdWFsc1wiKSB7XHJcbiAgICAgICAgICByZXR1cm4gYCR7Y29sdW1ufSBlcSAke3ZhbHVlfWA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXIudHlwZSA9PT0gXCJncmVhdGVyVGhhblwiKSB7XHJcbiAgICAgICAgICByZXR1cm4gYCR7Y29sdW1ufSBndCAke3ZhbHVlfWA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXIudHlwZSA9PT0gXCJsZXNzVGhhblwiKSB7XHJcbiAgICAgICAgICByZXR1cm4gYCR7Y29sdW1ufSBsdCAke3ZhbHVlfWA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXIudHlwZSA9PT0gXCJncmVhdGVyVGhhbk9yRXF1YWxcIikge1xyXG4gICAgICAgICAgcmV0dXJuIGAke2NvbHVtbn0gZ2UgJHt2YWx1ZX1gO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyLnR5cGUgPT09IFwibGVzc1RoYW5PckVxdWFsXCIpIHtcclxuICAgICAgICAgIHJldHVybiBgJHtjb2x1bW59IGxlICR7dmFsdWV9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIFwiZGF0ZVwiOlxyXG4gICAgICAgIHJldHVybiBgJHtjb2x1bW59IGVxICR7dmFsdWV9YDsgLy8gTW9kaWZpY2Egc2UgT0RhdGEgdXNhIGZvcm1hdGkgSVNPXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHRvTnVtYmVyKHZhbHVlOiBzdHJpbmcgfCBudWxsKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcclxuICAgIGlmICghdmFsdWUpXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICBjb25zdCBudW0gPSBwYXJzZUZsb2F0KHZhbHVlKTtcclxuICAgIHJldHVybiBpc05hTihudW0pID8gdW5kZWZpbmVkIDogbnVtO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
|
2
|
+
import { map } from 'rxjs/operators';
|
|
3
|
+
export class RestDataSource {
|
|
4
|
+
http;
|
|
5
|
+
baseUrl;
|
|
6
|
+
params = {};
|
|
7
|
+
mapFn;
|
|
8
|
+
constructor(http, baseUrl) {
|
|
9
|
+
this.http = http;
|
|
10
|
+
this.baseUrl = baseUrl;
|
|
11
|
+
}
|
|
12
|
+
setParam(key, value) {
|
|
13
|
+
if (value !== undefined && value !== null) {
|
|
14
|
+
this.params[key] = value;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
delete this.params[key];
|
|
18
|
+
}
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
setParams(params) {
|
|
22
|
+
this.params = { ...params };
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
setMapFunction(mapFn) {
|
|
26
|
+
this.mapFn = mapFn;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
getMapFunction() {
|
|
30
|
+
return this.mapFn;
|
|
31
|
+
}
|
|
32
|
+
getParam(key) {
|
|
33
|
+
return this.params[key];
|
|
34
|
+
}
|
|
35
|
+
getParams() {
|
|
36
|
+
return this.params;
|
|
37
|
+
}
|
|
38
|
+
getData() {
|
|
39
|
+
let httpParams = new HttpParams();
|
|
40
|
+
Object.keys(this.params).forEach(key => {
|
|
41
|
+
if (this.params[key] !== undefined && this.params[key] !== null) {
|
|
42
|
+
httpParams = httpParams.set(key, this.params[key].toString());
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
return this.http.get(this.baseUrl, { params: httpParams }).pipe(map(responseArray => this.mapFn ? responseArray.map(item => this.mapFn(item)) : responseArray));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2RhdGFTb3VyY2VzL3Jlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTlELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxNQUFNLE9BQU8sY0FBYztJQUlMO0lBQ1I7SUFKSixNQUFNLEdBQXdCLEVBQUUsQ0FBQztJQUNqQyxLQUFLLENBQW1CO0lBRWhDLFlBQW9CLElBQWdCLEVBQ3hCLE9BQWU7UUFEUCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ3hCLFlBQU8sR0FBUCxPQUFPLENBQVE7SUFBSSxDQUFDO0lBRWhDLFFBQVEsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUM5QixJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBMkI7UUFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDNUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQXNCO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUFXO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksVUFBVSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFFbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3JDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDaEUsVUFBVSxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUNoRSxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2xFLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUNsQixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFnQyxDQUM3RixDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBSZXN0RGF0YVNvdXJjZTxULCBUMiA9IFQ+IHtcclxuICBwcml2YXRlIHBhcmFtczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gIHByaXZhdGUgbWFwRm4/OiAoZGF0YTogVCkgPT4gVDI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxyXG4gICAgLCBwcml2YXRlIGJhc2VVcmw6IHN0cmluZykgeyB9XHJcblxyXG4gIHNldFBhcmFtKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogUmVzdERhdGFTb3VyY2U8VCwgVDI+IHtcclxuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucGFyYW1zW2tleV0gPSB2YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnBhcmFtc1trZXldO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICBzZXRQYXJhbXMocGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogUmVzdERhdGFTb3VyY2U8VCwgVDI+IHtcclxuICAgIHRoaXMucGFyYW1zID0geyAuLi5wYXJhbXMgfTtcclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgc2V0TWFwRnVuY3Rpb24obWFwRm46IChkYXRhOiBUKSA9PiBUMik6IFJlc3REYXRhU291cmNlPFQsIFQyPiB7XHJcbiAgICB0aGlzLm1hcEZuID0gbWFwRm47XHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIGdldE1hcEZ1bmN0aW9uKCk6ICgoZGF0YTogVCkgPT4gVDIpIHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLm1hcEZuO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGFyYW0oa2V5OiBzdHJpbmcpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMucGFyYW1zW2tleV07XHJcbiAgfVxyXG5cclxuICBnZXRQYXJhbXMoKTogUmVjb3JkPHN0cmluZywgYW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5wYXJhbXM7XHJcbiAgfVxyXG5cclxuICBnZXREYXRhKCk6IE9ic2VydmFibGU8VDJbXT4ge1xyXG4gICAgbGV0IGh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG5cclxuICAgIE9iamVjdC5rZXlzKHRoaXMucGFyYW1zKS5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnBhcmFtc1trZXldICE9PSB1bmRlZmluZWQgJiYgdGhpcy5wYXJhbXNba2V5XSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGh0dHBQYXJhbXMgPSBodHRwUGFyYW1zLnNldChrZXksIHRoaXMucGFyYW1zW2tleV0udG9TdHJpbmcoKSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFRbXT4odGhpcy5iYXNlVXJsLCB7IHBhcmFtczogaHR0cFBhcmFtcyB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2VBcnJheSA9PlxyXG4gICAgICAgIHRoaXMubWFwRm4gPyByZXNwb25zZUFycmF5Lm1hcChpdGVtID0+IHRoaXMubWFwRm4hKGl0ZW0pKSA6IHJlc3BvbnNlQXJyYXkgYXMgdW5rbm93biBhcyBUMltdXHJcbiAgICAgIClcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Directive, Host, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ngx-sirio-lib";
|
|
4
|
+
export class AccordionDirective {
|
|
5
|
+
sirioAccordion;
|
|
6
|
+
accordionCount = 0;
|
|
7
|
+
constructor(sirioAccordion) {
|
|
8
|
+
this.sirioAccordion = sirioAccordion;
|
|
9
|
+
}
|
|
10
|
+
ngOnChanges(changes) {
|
|
11
|
+
if (changes["accordionCount"]) {
|
|
12
|
+
const previous = changes["accordionCount"].previousValue;
|
|
13
|
+
if (previous === undefined)
|
|
14
|
+
return;
|
|
15
|
+
const current = changes["accordionCount"].currentValue;
|
|
16
|
+
const oldIndex = this.sirioAccordion.panels.toArray().findIndex(panel => panel.panelIsOpen);
|
|
17
|
+
setTimeout(() => {
|
|
18
|
+
const event = new Event("");
|
|
19
|
+
this.sirioAccordion.closePanels(event);
|
|
20
|
+
const panels = this.sirioAccordion.panels.toArray();
|
|
21
|
+
const showPanel = (index) => panels[index].onPanelHeaderClicked(event);
|
|
22
|
+
if (previous < current) {
|
|
23
|
+
showPanel(current - 1);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
if (oldIndex == current) {
|
|
27
|
+
// remove last
|
|
28
|
+
showPanel(current - 1);
|
|
29
|
+
}
|
|
30
|
+
else if (oldIndex < current) {
|
|
31
|
+
// remove middle
|
|
32
|
+
showPanel(oldIndex);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}, 100);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccordionDirective, deps: [{ token: i1.SirioAccordionComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: AccordionDirective, isStandalone: true, selector: "[accordionCount]", inputs: { accordionCount: "accordionCount" }, usesOnChanges: true, ngImport: i0 });
|
|
40
|
+
}
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccordionDirective, decorators: [{
|
|
42
|
+
type: Directive,
|
|
43
|
+
args: [{
|
|
44
|
+
selector: '[accordionCount]',
|
|
45
|
+
standalone: true
|
|
46
|
+
}]
|
|
47
|
+
}], ctorParameters: () => [{ type: i1.SirioAccordionComponent, decorators: [{
|
|
48
|
+
type: Host
|
|
49
|
+
}] }], propDecorators: { accordionCount: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}] } });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2RpcmVjdGl2ZXMvYWNjb3JkaW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDOzs7QUFPakYsTUFBTSxPQUFPLGtCQUFrQjtJQUlYO0lBSFQsY0FBYyxHQUFXLENBQUMsQ0FBQztJQUVwQyxZQUNrQixjQUF1QztRQUF2QyxtQkFBYyxHQUFkLGNBQWMsQ0FBeUI7SUFDckQsQ0FBQztJQUVMLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsYUFBYSxDQUFDO1lBRXpELElBQUksUUFBUSxLQUFLLFNBQVM7Z0JBQ3hCLE9BQU87WUFFVCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxZQUFZLENBQUM7WUFFdkQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRTVGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBRWQsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBRTVCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUV2QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFFcEQsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFL0UsSUFBSSxRQUFRLEdBQUcsT0FBTyxFQUFFLENBQUM7b0JBQ3ZCLFNBQVMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pCLENBQUM7cUJBQ0ksQ0FBQztvQkFDSixJQUFJLFFBQVEsSUFBSSxPQUFPLEVBQUUsQ0FBQzt3QkFDeEIsY0FBYzt3QkFDZCxTQUFTLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6QixDQUFDO3lCQUNJLElBQUksUUFBUSxHQUFHLE9BQU8sRUFBRSxDQUFDO3dCQUM1QixnQkFBZ0I7d0JBQ2hCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDdEIsQ0FBQztnQkFDSCxDQUFDO1lBRUgsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsQ0FBQztJQUNILENBQUM7d0dBNUNVLGtCQUFrQjs0RkFBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBS0ksSUFBSTt5Q0FIRSxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpcmlvQWNjb3JkaW9uQ29tcG9uZW50IH0gZnJvbSAnbmd4LXNpcmlvLWxpYic7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1thY2NvcmRpb25Db3VudF0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCkgYWNjb3JkaW9uQ291bnQ6IG51bWJlciA9IDA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBwcml2YXRlIHNpcmlvQWNjb3JkaW9uOiBTaXJpb0FjY29yZGlvbkNvbXBvbmVudFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzW1wiYWNjb3JkaW9uQ291bnRcIl0pIHtcclxuICAgICAgY29uc3QgcHJldmlvdXMgPSBjaGFuZ2VzW1wiYWNjb3JkaW9uQ291bnRcIl0ucHJldmlvdXNWYWx1ZTtcclxuXHJcbiAgICAgIGlmIChwcmV2aW91cyA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBjaGFuZ2VzW1wiYWNjb3JkaW9uQ291bnRcIl0uY3VycmVudFZhbHVlO1xyXG5cclxuICAgICAgY29uc3Qgb2xkSW5kZXggPSB0aGlzLnNpcmlvQWNjb3JkaW9uLnBhbmVscy50b0FycmF5KCkuZmluZEluZGV4KHBhbmVsID0+IHBhbmVsLnBhbmVsSXNPcGVuKTtcclxuXHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cclxuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBFdmVudChcIlwiKTtcclxuXHJcbiAgICAgICAgdGhpcy5zaXJpb0FjY29yZGlvbi5jbG9zZVBhbmVscyhldmVudCk7XHJcblxyXG4gICAgICAgIGNvbnN0IHBhbmVscyA9IHRoaXMuc2lyaW9BY2NvcmRpb24ucGFuZWxzLnRvQXJyYXkoKTtcclxuXHJcbiAgICAgICAgY29uc3Qgc2hvd1BhbmVsID0gKGluZGV4OiBudW1iZXIpID0+IHBhbmVsc1tpbmRleF0ub25QYW5lbEhlYWRlckNsaWNrZWQoZXZlbnQpO1xyXG5cclxuICAgICAgICBpZiAocHJldmlvdXMgPCBjdXJyZW50KSB7XHJcbiAgICAgICAgICBzaG93UGFuZWwoY3VycmVudCAtIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIGlmIChvbGRJbmRleCA9PSBjdXJyZW50KSB7XHJcbiAgICAgICAgICAgIC8vIHJlbW92ZSBsYXN0XHJcbiAgICAgICAgICAgIHNob3dQYW5lbChjdXJyZW50IC0gMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIGlmIChvbGRJbmRleCA8IGN1cnJlbnQpIHtcclxuICAgICAgICAgICAgLy8gcmVtb3ZlIG1pZGRsZVxyXG4gICAgICAgICAgICBzaG93UGFuZWwob2xkSW5kZXgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcblxyXG4gICAgICB9LCAxMDApOyAgICAgIFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { Input, Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class AdornerDirective {
|
|
4
|
+
el;
|
|
5
|
+
renderer;
|
|
6
|
+
prefixAdorner = null;
|
|
7
|
+
suffixAdorner = null;
|
|
8
|
+
constructor(el, renderer) {
|
|
9
|
+
this.el = el;
|
|
10
|
+
this.renderer = renderer;
|
|
11
|
+
}
|
|
12
|
+
ngAfterViewInit() {
|
|
13
|
+
this.updatePrefix(this.prefixAdorner);
|
|
14
|
+
this.updateSuffix(this.suffixAdorner);
|
|
15
|
+
}
|
|
16
|
+
ngOnChanges(changes) {
|
|
17
|
+
if (changes["prefixAdorner"]) {
|
|
18
|
+
this.updatePrefix(changes["prefixAdorner"].currentValue);
|
|
19
|
+
}
|
|
20
|
+
if (changes["suffixAdorner"]) {
|
|
21
|
+
this.updateSuffix(changes["suffixAdorner"].currentValue);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
getWrapper() {
|
|
25
|
+
return this.el.nativeElement.querySelector('div.sirio-input-group');
|
|
26
|
+
}
|
|
27
|
+
;
|
|
28
|
+
isPrepared() {
|
|
29
|
+
return this.getWrapper() !== null;
|
|
30
|
+
}
|
|
31
|
+
prepare() {
|
|
32
|
+
if (this.isPrepared())
|
|
33
|
+
return this.getWrapper();
|
|
34
|
+
const inputElement = this.el.nativeElement.querySelector('input');
|
|
35
|
+
if (!inputElement)
|
|
36
|
+
return null;
|
|
37
|
+
const wrapper = this.renderer.createElement('div');
|
|
38
|
+
this.renderer.addClass(wrapper, 'sirio-input-group');
|
|
39
|
+
const parent = inputElement.parentNode;
|
|
40
|
+
this.renderer.insertBefore(parent, wrapper, inputElement);
|
|
41
|
+
this.renderer.appendChild(wrapper, inputElement);
|
|
42
|
+
return wrapper;
|
|
43
|
+
}
|
|
44
|
+
updatePrefix(prefixAdorner) {
|
|
45
|
+
const prefixText = this.normalizeText(prefixAdorner);
|
|
46
|
+
this.remove("span.prefix");
|
|
47
|
+
if (prefixText !== null) {
|
|
48
|
+
const wrapper = this.prepare();
|
|
49
|
+
if (wrapper) {
|
|
50
|
+
const inputElement = wrapper.querySelector('input');
|
|
51
|
+
const prefixSpan = this.createSpanElement(prefixText);
|
|
52
|
+
this.renderer.addClass(prefixSpan, "prefix");
|
|
53
|
+
this.renderer.insertBefore(wrapper, prefixSpan, inputElement);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
updateSuffix(suffixAdorner) {
|
|
58
|
+
const suffixText = this.normalizeText(suffixAdorner);
|
|
59
|
+
this.remove("span.suffix");
|
|
60
|
+
if (suffixText !== null) {
|
|
61
|
+
const wrapper = this.prepare();
|
|
62
|
+
if (wrapper) {
|
|
63
|
+
const suffixSpan = this.createSpanElement(suffixText);
|
|
64
|
+
this.renderer.addClass(suffixSpan, "suffix");
|
|
65
|
+
this.renderer.appendChild(wrapper, suffixSpan);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
remove(selector) {
|
|
70
|
+
const wrapper = this.getWrapper();
|
|
71
|
+
if (!wrapper)
|
|
72
|
+
return;
|
|
73
|
+
const span = wrapper.querySelector(selector);
|
|
74
|
+
if (span)
|
|
75
|
+
this.renderer.removeChild(wrapper, span);
|
|
76
|
+
}
|
|
77
|
+
createSpanElement(adorner) {
|
|
78
|
+
const outerSpan = this.renderer.createElement('span');
|
|
79
|
+
this.renderer.addClass(outerSpan, 'sirio-input-group-text');
|
|
80
|
+
const innerSpan = this.renderer.createElement('span');
|
|
81
|
+
this.renderer.setAttribute(innerSpan, 'aria-hidden', 'true');
|
|
82
|
+
const iconClass = this.getIconClassName(adorner);
|
|
83
|
+
if (iconClass) {
|
|
84
|
+
this.renderer.addClass(innerSpan, 'fas');
|
|
85
|
+
this.renderer.addClass(innerSpan, iconClass);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
const strongElement = this.renderer.createElement('strong');
|
|
89
|
+
this.renderer.appendChild(innerSpan, strongElement);
|
|
90
|
+
const text = this.renderer.createText(adorner);
|
|
91
|
+
this.renderer.appendChild(strongElement, text);
|
|
92
|
+
}
|
|
93
|
+
this.renderer.appendChild(outerSpan, innerSpan);
|
|
94
|
+
return outerSpan;
|
|
95
|
+
}
|
|
96
|
+
;
|
|
97
|
+
getIconClassName(text) {
|
|
98
|
+
switch (text) {
|
|
99
|
+
case "%":
|
|
100
|
+
return "fa-percent";
|
|
101
|
+
case "@":
|
|
102
|
+
return "fa-envelope";
|
|
103
|
+
case "€":
|
|
104
|
+
return "fa-euro-sign";
|
|
105
|
+
}
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
;
|
|
109
|
+
normalizeText(text) {
|
|
110
|
+
if (text) {
|
|
111
|
+
const trimmedValue = text.trim();
|
|
112
|
+
return trimmedValue.length > 0 ? trimmedValue : null;
|
|
113
|
+
}
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AdornerDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
117
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: AdornerDirective, isStandalone: true, selector: "[prefixAdorner], [suffixAdorner]", inputs: { prefixAdorner: "prefixAdorner", suffixAdorner: "suffixAdorner" }, usesOnChanges: true, ngImport: i0 });
|
|
118
|
+
}
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AdornerDirective, decorators: [{
|
|
120
|
+
type: Directive,
|
|
121
|
+
args: [{
|
|
122
|
+
selector: '[prefixAdorner], [suffixAdorner]',
|
|
123
|
+
standalone: true
|
|
124
|
+
}]
|
|
125
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { prefixAdorner: [{
|
|
126
|
+
type: Input
|
|
127
|
+
}], suffixAdorner: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}] } });
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRvcm5lci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kaXJlY3RpdmVzL2Fkb3JuZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFrRSxNQUFNLGVBQWUsQ0FBQzs7QUFNakgsTUFBTSxPQUFPLGdCQUFnQjtJQUlQO0lBQXdCO0lBSG5DLGFBQWEsR0FBa0IsSUFBSSxDQUFDO0lBQ3BDLGFBQWEsR0FBa0IsSUFBSSxDQUFDO0lBRTdDLFlBQW9CLEVBQWMsRUFBVSxRQUFtQjtRQUEzQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFJLENBQUM7SUFFcEUsZUFBZTtRQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRCxDQUFDO0lBQ0gsQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBQUEsQ0FBQztJQUVNLFVBQVU7UUFD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QUssR0FBRztnQkFDTixPQUFPLFlBQVksQ0FBQztZQUV0QixLQUFLLEdBQUc7Z0JBQ04sT0FBTyxhQUFhLENBQUM7WUFFdkIsS0FBSyxHQUFHO2dCQUNOLE9BQU8sY0FBYyxDQUFDO1FBQzFCLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFBQSxDQUFDO0lBRU0sYUFBYSxDQUFDLElBQW1CO1FBRXZDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakMsT0FBTyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdkQsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzt3R0E1SVUsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBSjVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtDQUFrQztvQkFDNUMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO3VHQUVVLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElucHV0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1twcmVmaXhBZG9ybmVyXSwgW3N1ZmZpeEFkb3JuZXJdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG9ybmVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSBwcmVmaXhBZG9ybmVyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzdWZmaXhBZG9ybmVyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy51cGRhdGVQcmVmaXgodGhpcy5wcmVmaXhBZG9ybmVyKTtcclxuICAgIHRoaXMudXBkYXRlU3VmZml4KHRoaXMuc3VmZml4QWRvcm5lcik7ICAgIFxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbXCJwcmVmaXhBZG9ybmVyXCJdKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlUHJlZml4KGNoYW5nZXNbXCJwcmVmaXhBZG9ybmVyXCJdLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNoYW5nZXNbXCJzdWZmaXhBZG9ybmVyXCJdKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlU3VmZml4KGNoYW5nZXNbXCJzdWZmaXhBZG9ybmVyXCJdLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFdyYXBwZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5zaXJpby1pbnB1dC1ncm91cCcpO1xyXG4gIH07XHJcblxyXG4gIHByaXZhdGUgaXNQcmVwYXJlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmdldFdyYXBwZXIoKSAhPT0gbnVsbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJlcGFyZSgpOiBhbnkge1xyXG4gICAgaWYgKHRoaXMuaXNQcmVwYXJlZCgpKVxyXG4gICAgICByZXR1cm4gdGhpcy5nZXRXcmFwcGVyKCk7XHJcblxyXG4gICAgY29uc3QgaW5wdXRFbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk7XHJcblxyXG4gICAgaWYgKCFpbnB1dEVsZW1lbnQpXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgIGNvbnN0IHdyYXBwZXIgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh3cmFwcGVyLCAnc2lyaW8taW5wdXQtZ3JvdXAnKTtcclxuXHJcbiAgICBjb25zdCBwYXJlbnQgPSBpbnB1dEVsZW1lbnQucGFyZW50Tm9kZTtcclxuICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKHBhcmVudCwgd3JhcHBlciwgaW5wdXRFbGVtZW50KTtcclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHdyYXBwZXIsIGlucHV0RWxlbWVudCk7XHJcblxyXG4gICAgcmV0dXJuIHdyYXBwZXI7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVByZWZpeChwcmVmaXhBZG9ybmVyOiBzdHJpbmcgfCBudWxsKVxyXG4gIHtcclxuICAgIGNvbnN0IHByZWZpeFRleHQgPSB0aGlzLm5vcm1hbGl6ZVRleHQocHJlZml4QWRvcm5lcik7XHJcblxyXG4gICAgdGhpcy5yZW1vdmUoXCJzcGFuLnByZWZpeFwiKTtcclxuICAgIFxyXG4gICAgaWYgKHByZWZpeFRleHQgIT09IG51bGwpIHtcclxuICAgICAgY29uc3Qgd3JhcHBlciA9IHRoaXMucHJlcGFyZSgpO1xyXG4gICAgICBpZiAod3JhcHBlcikge1xyXG4gICAgICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IHdyYXBwZXIucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcclxuICAgICAgICBjb25zdCBwcmVmaXhTcGFuID0gdGhpcy5jcmVhdGVTcGFuRWxlbWVudChwcmVmaXhUZXh0KTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHByZWZpeFNwYW4sIFwicHJlZml4XCIpXHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUod3JhcHBlciwgcHJlZml4U3BhbiwgaW5wdXRFbGVtZW50KTtcclxuICAgICAgfSAgICAgXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVN1ZmZpeChzdWZmaXhBZG9ybmVyOiBzdHJpbmcgfCBudWxsKSB7XHJcbiAgICBjb25zdCBzdWZmaXhUZXh0ID0gdGhpcy5ub3JtYWxpemVUZXh0KHN1ZmZpeEFkb3JuZXIpO1xyXG5cclxuICAgIHRoaXMucmVtb3ZlKFwic3Bhbi5zdWZmaXhcIik7XHJcblxyXG4gICAgaWYgKHN1ZmZpeFRleHQgIT09IG51bGwpIHtcclxuICAgICAgY29uc3Qgd3JhcHBlciA9IHRoaXMucHJlcGFyZSgpO1xyXG4gICAgICBpZiAod3JhcHBlcikge1xyXG4gICAgICAgIGNvbnN0IHN1ZmZpeFNwYW4gPSB0aGlzLmNyZWF0ZVNwYW5FbGVtZW50KHN1ZmZpeFRleHQpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3Moc3VmZml4U3BhbiwgXCJzdWZmaXhcIilcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHdyYXBwZXIsIHN1ZmZpeFNwYW4pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbW92ZShzZWxlY3Rvcjogc3RyaW5nKSB7XHJcbiAgICBjb25zdCB3cmFwcGVyID0gdGhpcy5nZXRXcmFwcGVyKCk7XHJcbiAgICBpZiAoIXdyYXBwZXIpXHJcbiAgICAgIHJldHVybjtcclxuICAgIGNvbnN0IHNwYW4gPSB3cmFwcGVyLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpO1xyXG4gICAgaWYgKHNwYW4pXHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQod3JhcHBlciwgc3Bhbik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZVNwYW5FbGVtZW50KGFkb3JuZXI6IHN0cmluZykge1xyXG4gICAgY29uc3Qgb3V0ZXJTcGFuID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKG91dGVyU3BhbiwgJ3NpcmlvLWlucHV0LWdyb3VwLXRleHQnKTtcclxuICAgIFxyXG4gICAgY29uc3QgaW5uZXJTcGFuID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpbm5lclNwYW4sICdhcmlhLWhpZGRlbicsICd0cnVlJyk7XHJcblxyXG4gICAgY29uc3QgaWNvbkNsYXNzID0gdGhpcy5nZXRJY29uQ2xhc3NOYW1lKGFkb3JuZXIpO1xyXG5cclxuICAgIGlmIChpY29uQ2xhc3MpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhpbm5lclNwYW4sICdmYXMnKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhpbm5lclNwYW4sIGljb25DbGFzcyk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgY29uc3Qgc3Ryb25nRWxlbWVudCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3Ryb25nJyk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoaW5uZXJTcGFuLCBzdHJvbmdFbGVtZW50KTtcclxuXHJcbiAgICAgIGNvbnN0IHRleHQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZVRleHQoYWRvcm5lcik7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoc3Ryb25nRWxlbWVudCwgdGV4dCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChvdXRlclNwYW4sIGlubmVyU3Bhbik7XHJcblxyXG4gICAgcmV0dXJuIG91dGVyU3BhbjtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGdldEljb25DbGFzc05hbWUodGV4dDogc3RyaW5nKSB7XHJcblxyXG4gICAgc3dpdGNoICh0ZXh0KSB7XHJcbiAgICAgIGNhc2UgXCIlXCI6XHJcbiAgICAgICAgcmV0dXJuIFwiZmEtcGVyY2VudFwiO1xyXG5cclxuICAgICAgY2FzZSBcIkBcIjpcclxuICAgICAgICByZXR1cm4gXCJmYS1lbnZlbG9wZVwiO1xyXG5cclxuICAgICAgY2FzZSBcIuKCrFwiOlxyXG4gICAgICAgIHJldHVybiBcImZhLWV1cm8tc2lnblwiO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH07XHJcblxyXG4gIHByaXZhdGUgbm9ybWFsaXplVGV4dCh0ZXh0OiBzdHJpbmcgfCBudWxsKTogc3RyaW5nIHwgbnVsbCB7XHJcblxyXG4gICAgaWYgKHRleHQpIHtcclxuICAgICAgY29uc3QgdHJpbW1lZFZhbHVlID0gdGV4dC50cmltKCk7XHJcbiAgICAgIHJldHVybiB0cmltbWVkVmFsdWUubGVuZ3RoID4gMCA/IHRyaW1tZWRWYWx1ZSA6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
export class DisableDirective {
|
|
5
|
+
ngControl;
|
|
6
|
+
disableControl = null;
|
|
7
|
+
readonly = null;
|
|
8
|
+
constructor(ngControl) {
|
|
9
|
+
this.ngControl = ngControl;
|
|
10
|
+
}
|
|
11
|
+
ngOnChanges(changes) {
|
|
12
|
+
if (changes["disableControl"] || changes["readonly"]) {
|
|
13
|
+
if (this.ngControl.control) {
|
|
14
|
+
if (this.disableControl) {
|
|
15
|
+
this.ngControl.control.disable();
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
this.ngControl.control.enable();
|
|
19
|
+
this.ngControl.valueAccessor?.setDisabledState(this.readonly === true);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DisableDirective, deps: [{ token: i1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DisableDirective, isStandalone: true, selector: "[disableControl], [readonly]", inputs: { disableControl: "disableControl", readonly: "readonly" }, usesOnChanges: true, ngImport: i0 });
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DisableDirective, decorators: [{
|
|
28
|
+
type: Directive,
|
|
29
|
+
args: [{
|
|
30
|
+
selector: '[disableControl], [readonly]',
|
|
31
|
+
standalone: true
|
|
32
|
+
}]
|
|
33
|
+
}], ctorParameters: () => [{ type: i1.NgControl }], propDecorators: { disableControl: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], readonly: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}] } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzYWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kaXJlY3RpdmVzL2Rpc2FibGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7O0FBTzNFLE1BQU0sT0FBTyxnQkFBZ0I7SUFJUDtJQUhYLGNBQWMsR0FBbUIsSUFBSSxDQUFDO0lBQ3RDLFFBQVEsR0FBbUIsSUFBSSxDQUFDO0lBRXpDLFlBQW9CLFNBQW9CO1FBQXBCLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFBSSxDQUFDO0lBRTdDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3JELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNuQyxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBcUIsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxDQUFDO2dCQUNsRixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO3dHQWpCVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEVBRVUsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2Rpc2FibGVDb250cm9sXSwgW3JlYWRvbmx5XScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlzYWJsZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCkgZGlzYWJsZUNvbnRyb2w6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5nQ29udHJvbDogTmdDb250cm9sKSB7IH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbXCJkaXNhYmxlQ29udHJvbFwiXSB8fCBjaGFuZ2VzW1wicmVhZG9ubHlcIl0pIHsgICAgICBcclxuICAgICAgaWYgKHRoaXMubmdDb250cm9sLmNvbnRyb2wpIHtcclxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlQ29udHJvbCkge1xyXG4gICAgICAgICAgdGhpcy5uZ0NvbnRyb2wuY29udHJvbC5kaXNhYmxlKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubmdDb250cm9sLmNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICAgICAgICAodGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciBhcyBhbnkpPy5zZXREaXNhYmxlZFN0YXRlKHRoaXMucmVhZG9ubHkgPT09IHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DisplayDirective {
|
|
4
|
+
el;
|
|
5
|
+
renderer;
|
|
6
|
+
hide = null;
|
|
7
|
+
show = null;
|
|
8
|
+
constructor(el, renderer) {
|
|
9
|
+
this.el = el;
|
|
10
|
+
this.renderer = renderer;
|
|
11
|
+
}
|
|
12
|
+
ngOnChanges(changes) {
|
|
13
|
+
if (changes["hide"]) {
|
|
14
|
+
const value = changes["hide"].currentValue;
|
|
15
|
+
if (value === true) {
|
|
16
|
+
this.renderer.setStyle(this.el.nativeElement, 'display', 'none');
|
|
17
|
+
}
|
|
18
|
+
else if (value === false) {
|
|
19
|
+
this.renderer.setStyle(this.el.nativeElement, 'display', 'block');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
if (changes["show"]) {
|
|
23
|
+
const value = changes["show"].currentValue;
|
|
24
|
+
if (value === true) {
|
|
25
|
+
this.renderer.setStyle(this.el.nativeElement, 'display', 'block');
|
|
26
|
+
}
|
|
27
|
+
else if (value === false) {
|
|
28
|
+
this.renderer.setStyle(this.el.nativeElement, 'display', 'none');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DisplayDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
33
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DisplayDirective, isStandalone: true, selector: "[hide], [show]", inputs: { hide: "hide", show: "show" }, usesOnChanges: true, ngImport: i0 });
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DisplayDirective, decorators: [{
|
|
36
|
+
type: Directive,
|
|
37
|
+
args: [{
|
|
38
|
+
selector: '[hide], [show]',
|
|
39
|
+
standalone: true
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { hide: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], show: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kaXJlY3RpdmVzL2Rpc3BsYXkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFtRCxNQUFNLGVBQWUsQ0FBQzs7QUFNbEcsTUFBTSxPQUFPLGdCQUFnQjtJQUlQO0lBQXdCO0lBSG5DLElBQUksR0FBbUIsSUFBSSxDQUFDO0lBQzVCLElBQUksR0FBbUIsSUFBSSxDQUFDO0lBRXJDLFlBQW9CLEVBQWMsRUFBVSxRQUFtQjtRQUEzQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFJLENBQUM7SUFFcEUsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUMzQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ25FLENBQUM7aUJBQU0sSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNwRSxDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUMzQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3BFLENBQUM7aUJBQU0sSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNuRSxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7d0dBeEJVLGdCQUFnQjs0RkFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjt1R0FFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBFbGVtZW50UmVmLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2hpZGVdLCBbc2hvd10nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIERpc3BsYXlEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpIGhpZGU6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzaG93OiBib29sZWFuIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzW1wiaGlkZVwiXSkge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IGNoYW5nZXNbXCJoaWRlXCJdLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgaWYgKHZhbHVlID09PSB0cnVlKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdkaXNwbGF5JywgJ25vbmUnKTtcclxuICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gZmFsc2UpIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2Rpc3BsYXknLCAnYmxvY2snKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChjaGFuZ2VzW1wic2hvd1wiXSkge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IGNoYW5nZXNbXCJzaG93XCJdLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgaWYgKHZhbHVlID09PSB0cnVlKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdkaXNwbGF5JywgJ2Jsb2NrJyk7ICAgICAgICBcclxuICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gZmFsc2UpIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2Rpc3BsYXknLCAnbm9uZScpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|