ets-fe-ng-sdk 17.0.309 → 17.0.310
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/esm2022/lib/Shared/components/btn/btn.model.mjs +1 -1
- package/esm2022/lib/Shared/components/btn/btn.service.mjs +168 -164
- package/esm2022/lib/Shared/components/file-upload/file-upload.component.mjs +17 -5
- package/esm2022/lib/Shared/components/webcam-media/webcam-media.component.mjs +266 -0
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/ets-fe-ng-sdk.mjs +522 -253
- package/fesm2022/ets-fe-ng-sdk.mjs.map +1 -1
- package/lib/Services/utility.service.d.ts +1 -1
- package/lib/Shared/components/btn/btn.component.d.ts +1 -1
- package/lib/Shared/components/btn/btn.model.d.ts +1 -1
- package/lib/Shared/components/btn/btn.service.d.ts +7 -0
- package/lib/Shared/components/file-upload/file-upload.component.d.ts +9 -3
- package/lib/Shared/components/info-dialog/info-dialog.component.d.ts +1 -1
- package/lib/Shared/components/webcam-media/webcam-media.component.d.ts +88 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -20,4 +20,4 @@ export class BtnLg {
|
|
|
20
20
|
this.extra = extra;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXRzLWZlLW5nLXNkay9zcmMvbGliL1NoYXJlZC9jb21wb25lbnRzL2J0bi9idG4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0dBLE1BQU0sT0FBTyxHQUFHO0lBaUJkLFlBQ0UsR0FBVyxFQUNYLE1BQXVDLEVBQ3ZDLElBQWMsRUFDZCxJQUFlLEVBQ2YsR0FBWSxFQUNaLElBQWEsRUFDYixZQUFzQixFQUN0QixPQUFpQixFQUNqQixRQUFrQjtRQUVsQixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztDQUNGO0FBQ0QsTUFBTSxPQUFPLEtBQUs7SUFNaEIsWUFDRSxHQUFXLEVBQ1gsS0FBaUMsRUFDakMsTUFBWSxFQUNaLEdBQVksRUFDWixLQUFNO1FBRU4sSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxHQUFHLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJS1ZQIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2luZGV4Lm1vZGVsJztcblxuZXhwb3J0IHR5cGUgQnRuVHlwZSA9XG4gIHwgJ2NsZWFyJ1xuICB8ICdjbG9zZSdcbiAgfCAnZGFuZ2VyLW91dGxpbmUnXG4gIHwgJ2RhbmdlcidcbiAgfCAnZGFyay1vdXRsaW5lJ1xuICB8ICdkYXJrJ1xuICB8ICdvdXRsaW5lLW5tJ1xuICB8ICdvdXRsaW5lJ1xuICB8ICdwcmltYXJ5J1xuICB8ICdzZWNvbmRhcnknXG4gIHwgJ3N1Y2Nlc3MnO1xuZXhwb3J0IHR5cGUgQnRuR3JvdXAgPVxuICB8ICdhZGQnXG4gIHwgJ2Nsb25lJ1xuICB8ICdjbG9zZSdcbiAgfCAnY3JlYXRlJ1xuICB8ICdzYXZlJ1xuICB8ICdkZWxldGUnXG4gIHwgJ2Rvd25sb2FkJ1xuICB8ICdlZGl0J1xuICB8ICdsaW5rJ1xuICB8ICdzZWFyY2gnXG4gIHwgJ3Nob3cnXG4gIHwgJ3N1Ym1pdCdcbiAgfCAndXBsb2FkJztcbmV4cG9ydCB0eXBlIEljb25UeXBlID1cbiAgfCAnYWNjZXNzJ1xuICB8ICdhZGQnXG4gIHwgJ2FkanVzdCdcbiAgfCAnYXJyb3doJ1xuICB8ICdiYW5rJ1xuICB8ICdjYWxlbmRhcidcbiAgfCAnY2FuY2VsJyBcbiAgfCAnY2FzaCdcbiAgfCAnY2hlY2tlZCdcbiAgfCAncGF1c2UnXG4gIHwgJ2NoZWNrbGlzdCdcbiAgfCAnY2xvbmUnXG4gIHwgJ2Nsb3NlJ1xuICB8ICdzdG9wJ1xuICB8ICdjb2dzJ1xuICB8ICdkZWxldGUnXG4gIHwgJ2Rvd25sb2FkJ1xuICB8ICdkcm9wZG93bidcbiAgfCAnZWRpdCdcbiAgfCAnZXJyb3InXG4gIHwgJ2V4cG9ydCdcbiAgfCAnZmlsZSdcbiAgfCAnZmlsdGVyJ1xuICB8ICdnZW5lcmF0ZSdcbiAgfCAnZ3VhcmQnXG4gIHwgJ2hpc3RvcnknXG4gIHwgJ2hvbWUnXG4gIHwgJ2ltcG9ydCdcbiAgfCAnaW5mbydcbiAgfCAnbGluaydcbiAgfCAnbG9jaydcbiAgfCAnbmV4dCdcbiAgfCAncGVuJ1xuICB8ICdwZXJjZW50J1xuICB8ICdwbGF5J1xuICB8ICdwb3N0J1xuICB8ICdwcmV2aW91cydcbiAgfCAncmVjZWlwdCdcbiAgfCAncmVjeWNsZSdcbiAgfCAncmVmcmVzaCdcbiAgfCAncmVuZXcnXG4gIHwgJ3NhdmUnXG4gIHwgJ3NlYXJjaCdcbiAgfCAnc2hha2UnXG4gIHwgJ3Nob3cnXG4gIHwgJ3Nub296ZSdcbiAgfCAnc3Bvb24nXG4gIHwgJ3RhYmxlJ1xuICB8ICd0YWcnXG4gIHwgJ3RydWNrJ1xuICB8ICd1bmxvY2snXG4gIHwgJ3VwbG9hZCdcbiAgfCAndXNlcnMnXG4gIHwgJ3ZpZXcnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElCdG4gZXh0ZW5kcyBJS1ZQIHtcbiAgYWN0aW9uPzogKGFyZz8pID0+IHZvaWQ7XG4gIGdyb3VwPzogQnRuR3JvdXA7XG4gIGhlbHA/OiBzdHJpbmc7XG4gIGljb24/OiBJY29uVHlwZTtcbiAgaWNvbkJ0bj86IGJvb2xlYW47XG4gIG1pbmk/OiBib29sZWFuO1xuICBzaG93SGVscEljb24/OiBib29sZWFuO1xuICBsYWJlbD86IHN0cmluZztcbiAgdHlwZT86IEJ0blR5cGU7XG4gIGV4dHJhPzogYW55O1xufVxuZXhwb3J0IGNsYXNzIEJ0bjxURGF0YSA9IGFueT4gaW1wbGVtZW50cyBJQnRuIHtcbiAgY2xzPzogc3RyaW5nO1xuICBncm91cD86IEJ0bkdyb3VwO1xuICBoZWxwPzogc3RyaW5nO1xuICBpY29uPzogSWNvblR5cGU7XG4gIG1pbmk/OiBib29sZWFuO1xuICBpY29uQnRuPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgYWN0aW9uPzogKGRhdGE/OiBURGF0YSwgLi4uYXJncykgPT4gdm9pZDtcbiAgcmVhZG9ubHkga2V5Pzogc3RyaW5nO1xuICBzaG93SGVscEljb24/OiBib29sZWFuO1xuICBsYWJlbD86IHN0cmluZztcbiAgcm91dGU/OiBzdHJpbmc7XG4gIHR5cGU/OiBCdG5UeXBlO1xuICBleHRyYT86IGFueTtcbiAgbG9hZGluZz86IGJvb2xlYW47XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBrZXk6IHN0cmluZyxcbiAgICBhY3Rpb24/OiAoZGF0YT86IFREYXRhLCAuLi5hcmdzKSA9PiBhbnksXG4gICAgdHlwZT86IEJ0blR5cGUsXG4gICAgaWNvbj86IEljb25UeXBlLFxuICAgIGNscz86IHN0cmluZyxcbiAgICBoZWxwPzogc3RyaW5nLFxuICAgIHNob3dIZWxwSWNvbj86IGJvb2xlYW4sXG4gICAgbG9hZGluZz86IGJvb2xlYW4sXG4gICAgZGlzYWJsZWQ/OiBib29sZWFuLFxuICApIHtcbiAgICB0aGlzLmtleSA9IGtleTtcbiAgICB0aGlzLmFjdGlvbiA9IGFjdGlvbjtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuaWNvbiA9IGljb247XG4gICAgdGhpcy5jbHMgPSBjbHM7XG4gICAgdGhpcy5oZWxwID0gaGVscDtcbiAgICB0aGlzLnNob3dIZWxwSWNvbiA9IHNob3dIZWxwSWNvbjtcbiAgICB0aGlzLmxvYWRpbmcgPSBsb2FkaW5nO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgfVxufVxuZXhwb3J0IGNsYXNzIEJ0bkxnIGltcGxlbWVudHMgSUJ0biB7XG4gIHJlYWRvbmx5IGtleTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlcjtcbiAgcmVhZG9ubHkgYWN0aW9uPzogKCkgPT4gdm9pZDtcbiAgY2xzPzogc3RyaW5nO1xuICBleHRyYT86IGFueTtcbiAgY29uc3RydWN0b3IoXG4gICAga2V5OiBzdHJpbmcsXG4gICAgdmFsdWU/OiBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyLFxuICAgIGFjdGlvbj86IGFueSxcbiAgICBjbHM/OiBzdHJpbmcsXG4gICAgZXh0cmE/LFxuICApIHtcbiAgICB0aGlzLmtleSA9IGtleTtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWUgfHwgJy0nO1xuICAgIHRoaXMuYWN0aW9uID0gYWN0aW9uO1xuICAgIHRoaXMuY2xzID0gY2xzO1xuICAgIHRoaXMuZXh0cmEgPSBleHRyYTtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { faPaperPlane } from '@fortawesome/free-regular-svg-icons';
|
|
3
|
-
import { faArrowLeft, faArrowRight, faCheck, faClone, faCogs, faDownload, faEdit, faEye, faFile, faFileExport, faFileImport, faHistory, faListAlt, faLock, faMoneyCheck, faPen, faPenFancy, faPlus, faRecycle, faSave, faSearch, faSlidersH, faTrash, faUnlock, faFilter, faUpload, faUserShield, faHome, faUsers, faBellSlash, faInfoCircle, faTruck, faTag, faReceipt, faBank, faArrowsH, faPlay, faPercent, faCancel, faCircleExclamation, faHandshake, faTable, faSpoon, } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
+
import { faArrowLeft, faArrowRight, faCheck, faClone, faCogs, faDownload, faEdit, faEye, faFile, faFileExport, faFileImport, faHistory, faListAlt, faLock, faMoneyCheck, faPen, faPenFancy, faPlus, faRecycle, faSave, faSearch, faSlidersH, faTrash, faUnlock, faFilter, faUpload, faUserShield, faHome, faUsers, faBellSlash, faInfoCircle, faTruck, faTag, faReceipt, faBank, faArrowsH, faPlay, faPercent, faCancel, faCircleExclamation, faHandshake, faTable, faSpoon, faStop, faPause, } from '@fortawesome/free-solid-svg-icons';
|
|
4
4
|
import { EUA } from '../../../Reusables/reusable-pages/user-activity/ua-extras/user-activity.model';
|
|
5
5
|
import { FormGroup } from '@angular/forms';
|
|
6
6
|
import { merge, take, tap, timer } from 'rxjs';
|
|
@@ -43,169 +43,173 @@ export class BtnService {
|
|
|
43
43
|
_mclass: 'btn btn-lg btn-success w-100',
|
|
44
44
|
},
|
|
45
45
|
};
|
|
46
|
-
this.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
46
|
+
this.buttonIconIndex = {
|
|
47
|
+
add: {
|
|
48
|
+
icon: faPlus,
|
|
49
|
+
},
|
|
50
|
+
adjust: {
|
|
51
|
+
icon: faSlidersH,
|
|
52
|
+
},
|
|
53
|
+
calendar: {
|
|
54
|
+
iconString: 'fas fa-calendar-alt',
|
|
55
|
+
},
|
|
56
|
+
cash: {
|
|
57
|
+
icon: faMoneyCheck,
|
|
58
|
+
},
|
|
59
|
+
cancel: {
|
|
60
|
+
icon: faCancel,
|
|
61
|
+
},
|
|
62
|
+
checked: {
|
|
63
|
+
icon: faCheck,
|
|
64
|
+
},
|
|
65
|
+
checklist: {
|
|
66
|
+
icon: faListAlt,
|
|
67
|
+
},
|
|
68
|
+
clone: {
|
|
69
|
+
icon: faClone,
|
|
70
|
+
},
|
|
71
|
+
close: {
|
|
72
|
+
iconString: 'fa fa-close',
|
|
73
|
+
},
|
|
74
|
+
cogs: {
|
|
75
|
+
icon: faCogs,
|
|
76
|
+
},
|
|
77
|
+
delete: {
|
|
78
|
+
icon: faTrash,
|
|
79
|
+
},
|
|
80
|
+
download: {
|
|
81
|
+
icon: faDownload,
|
|
82
|
+
},
|
|
83
|
+
dropdown: {
|
|
84
|
+
iconPosition: 'right',
|
|
85
|
+
iconString: 'fa fa-chevron-down',
|
|
86
|
+
},
|
|
87
|
+
edit: {
|
|
88
|
+
icon: faEdit,
|
|
89
|
+
},
|
|
90
|
+
export: {
|
|
91
|
+
icon: faFileExport,
|
|
92
|
+
},
|
|
93
|
+
file: {
|
|
94
|
+
icon: faFile,
|
|
95
|
+
},
|
|
96
|
+
filter: {
|
|
97
|
+
icon: faFilter,
|
|
98
|
+
},
|
|
99
|
+
generate: {
|
|
100
|
+
icon: faPenFancy,
|
|
101
|
+
},
|
|
102
|
+
guard: {
|
|
103
|
+
icon: faUserShield,
|
|
104
|
+
},
|
|
105
|
+
access: {
|
|
106
|
+
icon: faUserShield,
|
|
107
|
+
},
|
|
108
|
+
history: {
|
|
109
|
+
icon: faHistory,
|
|
110
|
+
},
|
|
111
|
+
home: {
|
|
112
|
+
icon: faHome,
|
|
113
|
+
},
|
|
114
|
+
import: {
|
|
115
|
+
icon: faFileImport,
|
|
116
|
+
},
|
|
117
|
+
info: {
|
|
118
|
+
icon: faInfoCircle,
|
|
119
|
+
},
|
|
120
|
+
link: {
|
|
121
|
+
iconString: 'fas fa-chain',
|
|
122
|
+
},
|
|
123
|
+
lock: {
|
|
124
|
+
icon: faLock,
|
|
125
|
+
},
|
|
126
|
+
next: {
|
|
127
|
+
icon: faArrowRight,
|
|
128
|
+
iconPosition: 'right',
|
|
129
|
+
},
|
|
130
|
+
pause: {
|
|
131
|
+
icon: faPause,
|
|
132
|
+
},
|
|
133
|
+
pen: {
|
|
134
|
+
icon: faPen,
|
|
135
|
+
},
|
|
136
|
+
post: {
|
|
137
|
+
icon: faPaperPlane,
|
|
138
|
+
},
|
|
139
|
+
previous: {
|
|
140
|
+
icon: faArrowLeft,
|
|
141
|
+
},
|
|
142
|
+
renew: {
|
|
143
|
+
icon: faRecycle,
|
|
144
|
+
},
|
|
145
|
+
save: {
|
|
146
|
+
icon: faSave,
|
|
147
|
+
},
|
|
148
|
+
search: {
|
|
149
|
+
icon: faSearch,
|
|
150
|
+
},
|
|
151
|
+
show: {
|
|
152
|
+
icon: faEye,
|
|
153
|
+
},
|
|
154
|
+
view: {
|
|
155
|
+
icon: faEye,
|
|
156
|
+
},
|
|
157
|
+
snooze: {
|
|
158
|
+
icon: faBellSlash,
|
|
159
|
+
},
|
|
160
|
+
upload: {
|
|
161
|
+
icon: faUpload,
|
|
162
|
+
},
|
|
163
|
+
unlock: {
|
|
164
|
+
icon: faUnlock,
|
|
165
|
+
},
|
|
166
|
+
users: {
|
|
167
|
+
icon: faUsers,
|
|
168
|
+
},
|
|
169
|
+
recycle: {
|
|
170
|
+
icon: faRecycle,
|
|
171
|
+
},
|
|
172
|
+
refresh: {
|
|
173
|
+
iconString: 'fa fa-refresh',
|
|
174
|
+
},
|
|
175
|
+
stop: {
|
|
176
|
+
icon: faStop,
|
|
177
|
+
},
|
|
178
|
+
truck: {
|
|
179
|
+
icon: faTruck,
|
|
180
|
+
},
|
|
181
|
+
tag: {
|
|
182
|
+
icon: faTag,
|
|
183
|
+
},
|
|
184
|
+
receipt: {
|
|
185
|
+
icon: faReceipt,
|
|
186
|
+
},
|
|
187
|
+
bank: {
|
|
188
|
+
icon: faBank,
|
|
189
|
+
},
|
|
190
|
+
arrowh: {
|
|
191
|
+
icon: faArrowsH,
|
|
192
|
+
},
|
|
193
|
+
play: {
|
|
194
|
+
icon: faPlay,
|
|
195
|
+
},
|
|
196
|
+
percent: {
|
|
197
|
+
icon: faPercent,
|
|
198
|
+
},
|
|
199
|
+
shake: {
|
|
200
|
+
icon: faHandshake,
|
|
201
|
+
},
|
|
202
|
+
error: {
|
|
203
|
+
icon: faCircleExclamation,
|
|
204
|
+
},
|
|
205
|
+
table: {
|
|
206
|
+
icon: faTable,
|
|
207
|
+
},
|
|
208
|
+
spoon: {
|
|
209
|
+
icon: faSpoon,
|
|
210
|
+
},
|
|
208
211
|
};
|
|
212
|
+
this.getIcon = (iconType) => this.buttonIconIndex[iconType];
|
|
209
213
|
this.defaultType = 'secondary';
|
|
210
214
|
this.setFormState = (btn) => {
|
|
211
215
|
btn.checkFormStateSub?.unsubscribe();
|
|
@@ -295,4 +299,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
295
299
|
providedIn: 'root',
|
|
296
300
|
}]
|
|
297
301
|
}], ctorParameters: () => [{ type: i1.UserActivityService }] });
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldHMtZmUtbmctc2RrL3NyYy9saWIvU2hhcmVkL2NvbXBvbmVudHMvYnRuL2J0bi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLE9BQU8sRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLE9BQU8sRUFDUCxPQUFPLEVBQ1AsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osWUFBWSxFQUNaLFNBQVMsRUFDVCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFlBQVksRUFDWixLQUFLLEVBQ0wsVUFBVSxFQUNWLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxFQUNOLFFBQVEsRUFDUixVQUFVLEVBQ1YsT0FBTyxFQUNQLFFBQVEsRUFDUixRQUFRLEVBQ1IsUUFBUSxFQUNSLFlBQVksRUFDWixNQUFNLEVBQ04sT0FBTyxFQUNQLFdBQVcsRUFDWCxZQUFZLEVBQ1osT0FBTyxFQUNQLEtBQUssRUFDTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsRUFDVCxNQUFNLEVBRU4sU0FBUyxFQUNULFFBQVEsRUFDUixtQkFBbUIsRUFDbkIsV0FBVyxFQUNYLE9BQU8sRUFDUCxPQUFPLEdBRVIsTUFBTSxtQ0FBbUMsQ0FBQztBQUkzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sK0VBQStFLENBQUM7QUFDcEcsT0FBTyxFQUFtQixTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQWdCLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFnQixLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0UsT0FBTyxF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O2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZhUGFwZXJQbGFuZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXJlZ3VsYXItc3ZnLWljb25zJztcbmltcG9ydCB7XG4gIGZhQXJyb3dMZWZ0LFxuICBmYUFycm93UmlnaHQsXG4gIGZhQ2hlY2ssXG4gIGZhQ2xvbmUsXG4gIGZhQ29ncyxcbiAgZmFEb3dubG9hZCxcbiAgZmFFZGl0LFxuICBmYUV5ZSxcbiAgZmFGaWxlLFxuICBmYUZpbGVFeHBvcnQsXG4gIGZhRmlsZUltcG9ydCxcbiAgZmFIaXN0b3J5LFxuICBmYUxpc3RBbHQsXG4gIGZhTG9jayxcbiAgZmFNb25leUNoZWNrLFxuICBmYVBlbixcbiAgZmFQZW5GYW5jeSxcbiAgZmFQbHVzLFxuICBmYVJlY3ljbGUsXG4gIGZhU2F2ZSxcbiAgZmFTZWFyY2gsXG4gIGZhU2xpZGVyc0gsXG4gIGZhVHJhc2gsXG4gIGZhVW5sb2NrLFxuICBmYUZpbHRlcixcbiAgZmFVcGxvYWQsXG4gIGZhVXNlclNoaWVsZCxcbiAgZmFIb21lLFxuICBmYVVzZXJzLFxuICBmYUJlbGxTbGFzaCxcbiAgZmFJbmZvQ2lyY2xlLFxuICBmYVRydWNrLFxuICBmYVRhZyxcbiAgZmFSZWNlaXB0LFxuICBmYUJhbmssXG4gIGZhQXJyb3dzSCxcbiAgZmFQbGF5LFxuICBmYUxpbmssXG4gIGZhUGVyY2VudCxcbiAgZmFDYW5jZWwsXG4gIGZhQ2lyY2xlRXhjbGFtYXRpb24sXG4gIGZhSGFuZHNoYWtlLFxuICBmYVRhYmxlLFxuICBmYVNwb29uLFxuICBJY29uRGVmaW5pdGlvbixcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEJ0bkNvbXBvbmVudCB9IGZyb20gJy4vYnRuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdG5UeXBlLCBJY29uVHlwZSB9IGZyb20gJy4vYnRuLm1vZGVsJztcbmltcG9ydCB7IFVzZXJBY3Rpdml0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9SZXVzYWJsZXMvcmV1c2FibGUtcGFnZXMvdXNlci1hY3Rpdml0eS91YS1leHRyYXMvdXNlci1hY3Rpdml0eS5zZXJ2aWNlJztcbmltcG9ydCB7IEVVQSB9IGZyb20gJy4uLy4uLy4uL1JldXNhYmxlcy9yZXVzYWJsZS1wYWdlcy91c2VyLWFjdGl2aXR5L3VhLWV4dHJhcy91c2VyLWFjdGl2aXR5Lm1vZGVsJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtZXJnZSwgdGFrZSwgdGFwLCB0aW1lSW50ZXJ2YWwsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQnRuU2VydmljZSB7XG4gIGJ0bkNsYXNzQ29uZmlnOiBCdG5DbGFzcyA9IHtcbiAgICBbJ3ByaW1hcnknXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tcHJpbWFyeSBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydzZWNvbmRhcnknXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tb3V0bGluZS1wcmltYXJ5IGJ0bi1jbG9uZSBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydvdXRsaW5lJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtcHJpbWFyeSBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydjbGVhciddOiB7XG4gICAgICBfbWNsYXNzOiAnYnRuIHctMTAwJyxcbiAgICB9LFxuICAgIFsnZGFyay1vdXRsaW5lJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtZGFyayBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydvdXRsaW5lLW5tJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtcHJpbWFyeSB3LTEwMCcsXG4gICAgfSxcbiAgICBbJ2RhcmsnXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tZGFyayBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydkYW5nZXInXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tZGFuZ2VyIGJ0bi1sZyB3LTEwMCcsXG4gICAgfSxcbiAgICBbJ2Rhbmdlci1vdXRsaW5lJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtZGFuZ2VyIGJ0bi1sZyB3LTEwMCcsXG4gICAgfSxcbiAgICBbJ2Nsb3NlJ106IHsgX21jbGFzczogJ2J0biBidG4tbGcgIHRleHQtZGFuZ2VyJywgX2ljb246ICdjbG9zZScgfSxcbiAgICBbJ3N1Y2Nlc3MnXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tbGcgYnRuLXN1Y2Nlc3Mgdy0xMDAnLFxuICAgIH0sXG4gIH07XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB1YVM6IFVzZXJBY3Rpdml0eVNlcnZpY2UpIHt9XG4gIGdldEljb24gPSAoaWNvblR5cGU6IEljb25UeXBlKSA9PiB7XG4gICAgY29uc3QgaW5kZXg6IHtcbiAgICAgIFtrIGluIEljb25UeXBlXT86IHtcbiAgICAgICAgaWNvbj86IEljb25EZWZpbml0aW9uO1xuICAgICAgICBpY29uU3RyaW5nPzogc3RyaW5nO1xuICAgICAgICBpY29uUG9zaXRpb24/OiAncmlnaHQnIHwgJ2xlZnQnO1xuICAgICAgfTtcbiAgICB9ID0ge1xuICAgICAgYWRkOiB7XG4gICAgICAgIGljb246IGZhUGx1cyxcbiAgICAgIH0sXG4gICAgICBhZGp1c3Q6IHtcbiAgICAgICAgaWNvbjogZmFTbGlkZXJzSCxcbiAgICAgIH0sXG4gICAgICBjYWxlbmRhcjoge1xuICAgICAgICBpY29uU3RyaW5nOiAnZmFzIGZhLWNhbGVuZGFyLWFsdCcsXG4gICAgICB9LFxuICAgICAgY2FzaDoge1xuICAgICAgICBpY29uOiBmYU1vbmV5Q2hlY2ssXG4gICAgICB9LFxuICAgICAgY2FuY2VsOiB7XG4gICAgICAgIGljb246IGZhQ2FuY2VsLFxuICAgICAgfSxcbiAgICAgIGNoZWNrZWQ6IHtcbiAgICAgICAgaWNvbjogZmFDaGVjayxcbiAgICAgIH0sXG4gICAgICBjaGVja2xpc3Q6IHtcbiAgICAgICAgaWNvbjogZmFMaXN0QWx0LFxuICAgICAgfSxcbiAgICAgIGNsb25lOiB7XG4gICAgICAgIGljb246IGZhQ2xvbmUsXG4gICAgICB9LFxuICAgICAgY2xvc2U6IHtcbiAgICAgICAgaWNvblN0cmluZzogJ2ZhIGZhLWNsb3NlJyxcbiAgICAgIH0sXG4gICAgICBjb2dzOiB7XG4gICAgICAgIGljb246IGZhQ29ncyxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgaWNvbjogZmFUcmFzaCxcbiAgICAgIH0sXG4gICAgICBkb3dubG9hZDoge1xuICAgICAgICBpY29uOiBmYURvd25sb2FkLFxuICAgICAgfSxcbiAgICAgIGRyb3Bkb3duOiB7XG4gICAgICAgIGljb25Qb3NpdGlvbjogJ3JpZ2h0JyxcbiAgICAgICAgaWNvblN0cmluZzogJ2ZhIGZhLWNoZXZyb24tZG93bicsXG4gICAgICB9LFxuICAgICAgZWRpdDoge1xuICAgICAgICBpY29uOiBmYUVkaXQsXG4gICAgICB9LFxuICAgICAgZXhwb3J0OiB7XG4gICAgICAgIGljb246IGZhRmlsZUV4cG9ydCxcbiAgICAgIH0sXG4gICAgICBmaWxlOiB7XG4gICAgICAgIGljb246IGZhRmlsZSxcbiAgICAgIH0sXG4gICAgICBmaWx0ZXI6IHtcbiAgICAgICAgaWNvbjogZmFGaWx0ZXIsXG4gICAgICB9LFxuICAgICAgZ2VuZXJhdGU6IHtcbiAgICAgICAgaWNvbjogZmFQZW5GYW5jeSxcbiAgICAgIH0sXG4gICAgICBndWFyZDoge1xuICAgICAgICBpY29uOiBmYVVzZXJTaGllbGQsXG4gICAgICB9LFxuICAgICAgYWNjZXNzOiB7XG4gICAgICAgIGljb246IGZhVXNlclNoaWVsZCxcbiAgICAgIH0sXG4gICAgICBoaXN0b3J5OiB7XG4gICAgICAgIGljb246IGZhSGlzdG9yeSxcbiAgICAgIH0sXG4gICAgICBob21lOiB7XG4gICAgICAgIGljb246IGZhSG9tZSxcbiAgICAgIH0sXG4gICAgICBpbXBvcnQ6IHtcbiAgICAgICAgaWNvbjogZmFGaWxlSW1wb3J0LFxuICAgICAgfSxcbiAgICAgIGluZm86IHtcbiAgICAgICAgaWNvbjogZmFJbmZvQ2lyY2xlLFxuICAgICAgfSxcbiAgICAgIGxpbms6IHtcbiAgICAgICAgaWNvblN0cmluZzogJ2ZhcyBmYS1jaGFpbicsXG4gICAgICB9LFxuICAgICAgbG9jazoge1xuICAgICAgICBpY29uOiBmYUxvY2ssXG4gICAgICB9LFxuICAgICAgbmV4dDoge1xuICAgICAgICBpY29uOiBmYUFycm93UmlnaHQsXG4gICAgICAgIGljb25Qb3NpdGlvbjogJ3JpZ2h0JyxcbiAgICAgIH0sXG4gICAgICBwZW46IHtcbiAgICAgICAgaWNvbjogZmFQZW4sXG4gICAgICB9LFxuICAgICAgcG9zdDoge1xuICAgICAgICBpY29uOiBmYVBhcGVyUGxhbmUsXG4gICAgICB9LFxuICAgICAgcHJldmlvdXM6IHtcbiAgICAgICAgaWNvbjogZmFBcnJvd0xlZnQsXG4gICAgICB9LFxuICAgICAgcmVuZXc6IHtcbiAgICAgICAgaWNvbjogZmFSZWN5Y2xlLFxuICAgICAgfSxcbiAgICAgIHNhdmU6IHtcbiAgICAgICAgaWNvbjogZmFTYXZlLFxuICAgICAgfSxcbiAgICAgIHNlYXJjaDoge1xuICAgICAgICBpY29uOiBmYVNlYXJjaCxcbiAgICAgIH0sXG4gICAgICBzaG93OiB7XG4gICAgICAgIGljb246IGZhRXllLFxuICAgICAgfSxcbiAgICAgIHZpZXc6IHtcbiAgICAgICAgaWNvbjogZmFFeWUsXG4gICAgICB9LFxuICAgICAgc25vb3plOiB7XG4gICAgICAgIGljb246IGZhQmVsbFNsYXNoLFxuICAgICAgfSxcbiAgICAgIHVwbG9hZDoge1xuICAgICAgICBpY29uOiBmYVVwbG9hZCxcbiAgICAgIH0sXG4gICAgICB1bmxvY2s6IHtcbiAgICAgICAgaWNvbjogZmFVbmxvY2ssXG4gICAgICB9LFxuICAgICAgdXNlcnM6IHtcbiAgICAgICAgaWNvbjogZmFVc2VycyxcbiAgICAgIH0sXG4gICAgICByZWN5Y2xlOiB7XG4gICAgICAgIGljb246IGZhUmVjeWNsZSxcbiAgICAgIH0sXG4gICAgICByZWZyZXNoOiB7XG4gICAgICAgIGljb25TdHJpbmc6ICdmYSBmYS1yZWZyZXNoJyxcbiAgICAgIH0sXG4gICAgICB0cnVjazoge1xuICAgICAgICBpY29uOiBmYVRydWNrLFxuICAgICAgfSxcbiAgICAgIHRhZzoge1xuICAgICAgICBpY29uOiBmYVRhZyxcbiAgICAgIH0sXG4gICAgICByZWNlaXB0OiB7XG4gICAgICAgIGljb246IGZhUmVjZWlwdCxcbiAgICAgIH0sXG4gICAgICBiYW5rOiB7XG4gICAgICAgIGljb246IGZhQmFuayxcbiAgICAgIH0sXG4gICAgICBhcnJvd2g6IHtcbiAgICAgICAgaWNvbjogZmFBcnJvd3NILFxuICAgICAgfSxcbiAgICAgIHBsYXk6IHtcbiAgICAgICAgaWNvbjogZmFQbGF5LFxuICAgICAgfSxcbiAgICAgIHBlcmNlbnQ6IHtcbiAgICAgICAgaWNvbjogZmFQZXJjZW50LFxuICAgICAgfSxcbiAgICAgIHNoYWtlOiB7XG4gICAgICAgIGljb246IGZhSGFuZHNoYWtlLFxuICAgICAgfSxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIGljb246IGZhQ2lyY2xlRXhjbGFtYXRpb24sXG4gICAgICB9LFxuICAgICAgdGFibGU6IHtcbiAgICAgICAgaWNvbjogZmFUYWJsZSxcbiAgICAgIH0sXG4gICAgICBzcG9vbjoge1xuICAgICAgICBpY29uOiBmYVNwb29uLFxuICAgICAgfSxcbiAgICB9O1xuICAgIHJldHVybiBpbmRleFtpY29uVHlwZV07XG4gIH07XG5cbiAgZ2V0VHlwZSh2OiBCdG5UeXBlKSB7XG4gICAgcmV0dXJuIHRoaXMuYnRuQ2xhc3NDb25maWdbdl0gfHwgeyBfdHlwZTogJ3ByaW1hcnknIH07XG4gIH1cbiAgZGVmYXVsdFR5cGU6IEJ0blR5cGUgPSAnc2Vjb25kYXJ5JztcblxuICBsb2dDbGljayhidG46IEJ0bkNvbXBvbmVudCkge1xuICAgIGNvbnNvbGUubG9nKCdidG4uZXh0cmFjdFRleHQnLCBidG4uZXh0cmFjdFRleHQsIGJ0bik7XG4gICAgaWYgKGJ0bi5leGNsdWRlTG9nZ2luZykgcmV0dXJuO1xuICAgIHRoaXMudWFTLmFkZCh7XG4gICAgICBjb2RlOiBFVUEuY2xpY2tlZCxcbiAgICAgIGFjdGl2aXR5RGVzY3JpcHRpb246IGJ0bi5leHRyYWN0VGV4dCxcbiAgICB9KTtcbiAgfVxuXG4gIHNldEZvcm1TdGF0ZSA9IChidG46IEJ0bkNvbXBvbmVudCkgPT4ge1xuICAgIGJ0bi5jaGVja0Zvcm1TdGF0ZVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgICBidG4uY2hlY2tGb3JtU3RhdGVTdWIgPSB0aW1lcigwLCAxMDAwKVxuICAgICAgLnBpcGUodGFrZSgzKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAvLyBidG4uY291bnRlcj8uc2V0KGJ0bi5jb3VudGVyKCkgKyAxKTtcbiAgICAgICAgYnRuLmZvcm1TdGF0ZS5zZXQoXG4gICAgICAgICAgY2xvbmVEZWVwKHtcbiAgICAgICAgICAgIHBlbmRpbmc6IGJ0bi5mb3JtPy5wZW5kaW5nLFxuICAgICAgICAgICAgZGlydHk6IGJ0bi5mb3JtPy5kaXJ0eSxcbiAgICAgICAgICAgIGludmFsaWQ6IGJ0bi5mb3JtPy5pbnZhbGlkLFxuICAgICAgICAgICAgcHJpc3RpbmU6IGJ0bi5mb3JtPy5wcmlzdGluZSxcbiAgICAgICAgICAgIHZhbGlkOiBidG4uZm9ybT8udmFsaWQsXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfTtcblxuICBzZXRGb3Jtc1N0YXRlID0gKGJ0bjogQnRuQ29tcG9uZW50KSA9PiB7XG4gICAgYnRuLmNoZWNrRm9ybXNTdGF0ZVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgICBidG4uY2hlY2tGb3Jtc1N0YXRlU3ViID0gdGltZXIoMCwgMTAwMClcbiAgICAgIC5waXBlKHRha2UoMykpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHsgXG4gICAgICAgIGNvbnN0IGZzID0ge1xuICAgICAgICAgIHBlbmRpbmc6IHRydWUsXG4gICAgICAgICAgZGlydHk6IHRydWUsXG4gICAgICAgICAgaW52YWxpZDogdHJ1ZSxcbiAgICAgICAgICBwcmlzdGluZTogdHJ1ZSxcbiAgICAgICAgICB2YWxpZDogdHJ1ZSxcbiAgICAgICAgfTtcbiAgICAgICAgYnRuLmZvcm1zPy5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICAgICAgaWYgKCF4LnBlbmRpbmcpIGZzLnBlbmRpbmcgPSB4LnBlbmRpbmc7XG4gICAgICAgICAgaWYgKCF4LmRpcnR5KSBmcy5kaXJ0eSA9IHguZGlydHk7XG4gICAgICAgICAgaWYgKCF4LmludmFsaWQpIGZzLmludmFsaWQgPSB4LmludmFsaWQ7XG4gICAgICAgICAgaWYgKCF4LnByaXN0aW5lKSBmcy5wcmlzdGluZSA9IHgucHJpc3RpbmU7XG4gICAgICAgICAgaWYgKCF4LnZhbGlkKSBmcy52YWxpZCA9IHgudmFsaWQ7XG4gICAgICAgIH0pO1xuICAgICAgICBidG4uZm9ybXNTdGF0ZS5zZXQoZnMpO1xuICAgICAgfSk7XG4gIH07XG5cbiAgY2hlY2tGb3JtKGJ0bjogQnRuQ29tcG9uZW50KSB7XG4gICAgaWYgKGJ0bi5pc0Rpc2FibGVkKCkgJiYgYnRuLmZvcm0pIHtcbiAgICAgIGJ0bi5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICAgIGNvbnN0IGZvcm0gPSBidG4uZm9ybTtcbiAgICAgIGNvbnNvbGUubG9nKGZvcm0pO1xuICAgICAgaWYgKGZvcm0gaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgT2JqZWN0LmtleXMoZm9ybS5jb250cm9scylcbiAgICAgICAgICAgIC5maWx0ZXIoKHgpID0+ICFmb3JtLmNvbnRyb2xzW3hdLnZhbGlkKVxuICAgICAgICAgICAgLm1hcCgoeCkgPT4gZm9ybS5jb250cm9sc1t4XSksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChidG4uaXNEaXNhYmxlZCgpICYmIGJ0bi5mb3Jtcykge1xuICAgICAgYnRuLmZvcm1zLmZvckVhY2goKGZvcm0pID0+IGZvcm0ubWFya0FsbEFzVG91Y2hlZCgpKTtcbiAgICAgIC8vIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIGNvbnNvbGUubG9nKGJ0bi5mb3Jtcyk7XG4gICAgfVxuICB9XG4gIC8vIHByb3RlY3RlZCBkZWJvdW5jZXJBcnJheSA9IFsyMDBdLmNvbmNhdChuZXcgQXJyYXkoMykuZmlsbCgxKS5tYXAoKHgsIGkpID0+IChpICsgMSkgKiAxMDAwKSk7XG5cbiAgaGFuZGxlRm9ybSA9IChmb3JtOiBBYnN0cmFjdENvbnRyb2wsIGJ0bjogQnRuQ29tcG9uZW50KSA9PlxuICAgIGZvcm0uc3RhdHVzQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgocikgPT4gdGhpcy5zZXRGb3JtU3RhdGUoYnRuKSksXG4gICAgICAgIC8vIHRhcCgocikgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDIwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1TdGF0ZShmb3JtLCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1TdGF0ZShmb3JtLCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1TdGF0ZShmb3JtLCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1TdGF0ZShmb3JtLCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1TdGF0ZShmb3JtLCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1TdGF0ZShmb3JtLCBidG4pKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge30pO1xuXG4gIGhhbmRsZUZvcm1zID0gKHY6IEFic3RyYWN0Q29udHJvbFtdLCBidG46IEJ0bkNvbXBvbmVudCkgPT5cbiAgICBtZXJnZSh2Lm1hcCgoZikgPT4gZi5zdGF0dXNDaGFuZ2VzKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHIpID0+IHRoaXMuc2V0Rm9ybXNTdGF0ZShidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMjAwKSxcbiAgICAgICAgLy8gdGFwKCgpID0+IHRoaXMuc2V0Rm9ybXNTdGF0ZSh2LCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1zU3RhdGUodiwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3Jtc1N0YXRlKHYsIGJ0bikpLFxuXG4gICAgICAgIC8vIGRlYm91bmNlVGltZSgxMDAwKSxcbiAgICAgICAgLy8gdGFwKCgpID0+IHRoaXMuc2V0Rm9ybXNTdGF0ZSh2LCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1zU3RhdGUodiwgYnRuKSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHt9KTtcbn1cblxudHlwZSBCdG5DbGFzcyA9IHsgW2sgaW4gQnRuVHlwZV06IHsgX21jbGFzcz86IHN0cmluZzsgX2ljb24/OiBJY29uVHlwZTsgX3R5cGU/OiBCdG5UeXBlIH0gfTtcbiJdfQ==
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldHMtZmUtbmctc2RrL3NyYy9saWIvU2hhcmVkL2NvbXBvbmVudHMvYnRuL2J0bi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLE9BQU8sRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLE9BQU8sRUFDUCxPQUFPLEVBQ1AsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osWUFBWSxFQUNaLFNBQVMsRUFDVCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFlBQVksRUFDWixLQUFLLEVBQ0wsVUFBVSxFQUNWLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxFQUNOLFFBQVEsRUFDUixVQUFVLEVBQ1YsT0FBTyxFQUNQLFFBQVEsRUFDUixRQUFRLEVBQ1IsUUFBUSxFQUNSLFlBQVksRUFDWixNQUFNLEVBQ04sT0FBTyxFQUNQLFdBQVcsRUFDWCxZQUFZLEVBQ1osT0FBTyxFQUNQLEtBQUssRUFDTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsRUFDVCxNQUFNLEVBRU4sU0FBUyxFQUNULFFBQVEsRUFDUixtQkFBbUIsRUFDbkIsV0FBVyxFQUNYLE9BQU8sRUFDUCxPQUFPLEVBR1AsTUFBTSxFQUNOLE9BQU8sR0FDUixNQUFNLG1DQUFtQyxDQUFDO0FBSTNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUNwRyxPQUFPLEVBQW1CLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBZ0IsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1B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b250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZhUGFwZXJQbGFuZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXJlZ3VsYXItc3ZnLWljb25zJztcbmltcG9ydCB7XG4gIGZhQXJyb3dMZWZ0LFxuICBmYUFycm93UmlnaHQsXG4gIGZhQ2hlY2ssXG4gIGZhQ2xvbmUsXG4gIGZhQ29ncyxcbiAgZmFEb3dubG9hZCxcbiAgZmFFZGl0LFxuICBmYUV5ZSxcbiAgZmFGaWxlLFxuICBmYUZpbGVFeHBvcnQsXG4gIGZhRmlsZUltcG9ydCxcbiAgZmFIaXN0b3J5LFxuICBmYUxpc3RBbHQsXG4gIGZhTG9jayxcbiAgZmFNb25leUNoZWNrLFxuICBmYVBlbixcbiAgZmFQZW5GYW5jeSxcbiAgZmFQbHVzLFxuICBmYVJlY3ljbGUsXG4gIGZhU2F2ZSxcbiAgZmFTZWFyY2gsXG4gIGZhU2xpZGVyc0gsXG4gIGZhVHJhc2gsXG4gIGZhVW5sb2NrLFxuICBmYUZpbHRlcixcbiAgZmFVcGxvYWQsXG4gIGZhVXNlclNoaWVsZCxcbiAgZmFIb21lLFxuICBmYVVzZXJzLFxuICBmYUJlbGxTbGFzaCxcbiAgZmFJbmZvQ2lyY2xlLFxuICBmYVRydWNrLFxuICBmYVRhZyxcbiAgZmFSZWNlaXB0LFxuICBmYUJhbmssXG4gIGZhQXJyb3dzSCxcbiAgZmFQbGF5LFxuICBmYUxpbmssXG4gIGZhUGVyY2VudCxcbiAgZmFDYW5jZWwsXG4gIGZhQ2lyY2xlRXhjbGFtYXRpb24sXG4gIGZhSGFuZHNoYWtlLFxuICBmYVRhYmxlLFxuICBmYVNwb29uLFxuICBJY29uRGVmaW5pdGlvbixcbiAgZmFCb3gsXG4gIGZhU3RvcCxcbiAgZmFQYXVzZSxcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEJ0bkNvbXBvbmVudCB9IGZyb20gJy4vYnRuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdG5UeXBlLCBJY29uVHlwZSB9IGZyb20gJy4vYnRuLm1vZGVsJztcbmltcG9ydCB7IFVzZXJBY3Rpdml0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9SZXVzYWJsZXMvcmV1c2FibGUtcGFnZXMvdXNlci1hY3Rpdml0eS91YS1leHRyYXMvdXNlci1hY3Rpdml0eS5zZXJ2aWNlJztcbmltcG9ydCB7IEVVQSB9IGZyb20gJy4uLy4uLy4uL1JldXNhYmxlcy9yZXVzYWJsZS1wYWdlcy91c2VyLWFjdGl2aXR5L3VhLWV4dHJhcy91c2VyLWFjdGl2aXR5Lm1vZGVsJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtZXJnZSwgdGFrZSwgdGFwLCB0aW1lSW50ZXJ2YWwsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQnRuU2VydmljZSB7XG4gIGJ0bkNsYXNzQ29uZmlnOiBCdG5DbGFzcyA9IHtcbiAgICBbJ3ByaW1hcnknXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tcHJpbWFyeSBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydzZWNvbmRhcnknXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tb3V0bGluZS1wcmltYXJ5IGJ0bi1jbG9uZSBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydvdXRsaW5lJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtcHJpbWFyeSBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydjbGVhciddOiB7XG4gICAgICBfbWNsYXNzOiAnYnRuIHctMTAwJyxcbiAgICB9LFxuICAgIFsnZGFyay1vdXRsaW5lJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtZGFyayBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydvdXRsaW5lLW5tJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtcHJpbWFyeSB3LTEwMCcsXG4gICAgfSxcbiAgICBbJ2RhcmsnXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tZGFyayBidG4tbGcgdy0xMDAnLFxuICAgIH0sXG4gICAgWydkYW5nZXInXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tZGFuZ2VyIGJ0bi1sZyB3LTEwMCcsXG4gICAgfSxcbiAgICBbJ2Rhbmdlci1vdXRsaW5lJ106IHtcbiAgICAgIF9tY2xhc3M6ICdidG4gYnRuLW91dGxpbmUtZGFuZ2VyIGJ0bi1sZyB3LTEwMCcsXG4gICAgfSxcbiAgICBbJ2Nsb3NlJ106IHsgX21jbGFzczogJ2J0biBidG4tbGcgIHRleHQtZGFuZ2VyJywgX2ljb246ICdjbG9zZScgfSxcbiAgICBbJ3N1Y2Nlc3MnXToge1xuICAgICAgX21jbGFzczogJ2J0biBidG4tbGcgYnRuLXN1Y2Nlc3Mgdy0xMDAnLFxuICAgIH0sXG4gIH07XG4gIGJ1dHRvbkljb25JbmRleDoge1xuICAgIFtrIGluIEljb25UeXBlXT86IHtcbiAgICAgIGljb24/OiBJY29uRGVmaW5pdGlvbjtcbiAgICAgIGljb25TdHJpbmc/OiBzdHJpbmc7XG4gICAgICBpY29uUG9zaXRpb24/OiAncmlnaHQnIHwgJ2xlZnQnO1xuICAgIH07XG4gIH0gPSB7XG4gICAgYWRkOiB7XG4gICAgICBpY29uOiBmYVBsdXMsXG4gICAgfSxcbiAgICBhZGp1c3Q6IHtcbiAgICAgIGljb246IGZhU2xpZGVyc0gsXG4gICAgfSxcbiAgICBjYWxlbmRhcjoge1xuICAgICAgaWNvblN0cmluZzogJ2ZhcyBmYS1jYWxlbmRhci1hbHQnLFxuICAgIH0sXG4gICAgY2FzaDoge1xuICAgICAgaWNvbjogZmFNb25leUNoZWNrLFxuICAgIH0sXG4gICAgY2FuY2VsOiB7XG4gICAgICBpY29uOiBmYUNhbmNlbCxcbiAgICB9LFxuICAgIGNoZWNrZWQ6IHtcbiAgICAgIGljb246IGZhQ2hlY2ssXG4gICAgfSxcbiAgICBjaGVja2xpc3Q6IHtcbiAgICAgIGljb246IGZhTGlzdEFsdCxcbiAgICB9LFxuICAgIGNsb25lOiB7XG4gICAgICBpY29uOiBmYUNsb25lLFxuICAgIH0sXG4gICAgY2xvc2U6IHtcbiAgICAgIGljb25TdHJpbmc6ICdmYSBmYS1jbG9zZScsXG4gICAgfSxcbiAgICBjb2dzOiB7XG4gICAgICBpY29uOiBmYUNvZ3MsXG4gICAgfSxcbiAgICBkZWxldGU6IHtcbiAgICAgIGljb246IGZhVHJhc2gsXG4gICAgfSxcbiAgICBkb3dubG9hZDoge1xuICAgICAgaWNvbjogZmFEb3dubG9hZCxcbiAgICB9LFxuICAgIGRyb3Bkb3duOiB7XG4gICAgICBpY29uUG9zaXRpb246ICdyaWdodCcsXG4gICAgICBpY29uU3RyaW5nOiAnZmEgZmEtY2hldnJvbi1kb3duJyxcbiAgICB9LFxuICAgIGVkaXQ6IHtcbiAgICAgIGljb246IGZhRWRpdCxcbiAgICB9LFxuICAgIGV4cG9ydDoge1xuICAgICAgaWNvbjogZmFGaWxlRXhwb3J0LFxuICAgIH0sXG4gICAgZmlsZToge1xuICAgICAgaWNvbjogZmFGaWxlLFxuICAgIH0sXG4gICAgZmlsdGVyOiB7XG4gICAgICBpY29uOiBmYUZpbHRlcixcbiAgICB9LFxuICAgIGdlbmVyYXRlOiB7XG4gICAgICBpY29uOiBmYVBlbkZhbmN5LFxuICAgIH0sXG4gICAgZ3VhcmQ6IHtcbiAgICAgIGljb246IGZhVXNlclNoaWVsZCxcbiAgICB9LFxuICAgIGFjY2Vzczoge1xuICAgICAgaWNvbjogZmFVc2VyU2hpZWxkLFxuICAgIH0sXG4gICAgaGlzdG9yeToge1xuICAgICAgaWNvbjogZmFIaXN0b3J5LFxuICAgIH0sXG4gICAgaG9tZToge1xuICAgICAgaWNvbjogZmFIb21lLFxuICAgIH0sXG4gICAgaW1wb3J0OiB7XG4gICAgICBpY29uOiBmYUZpbGVJbXBvcnQsXG4gICAgfSxcbiAgICBpbmZvOiB7XG4gICAgICBpY29uOiBmYUluZm9DaXJjbGUsXG4gICAgfSxcbiAgICBsaW5rOiB7XG4gICAgICBpY29uU3RyaW5nOiAnZmFzIGZhLWNoYWluJyxcbiAgICB9LFxuICAgIGxvY2s6IHtcbiAgICAgIGljb246IGZhTG9jayxcbiAgICB9LFxuICAgIG5leHQ6IHtcbiAgICAgIGljb246IGZhQXJyb3dSaWdodCxcbiAgICAgIGljb25Qb3NpdGlvbjogJ3JpZ2h0JyxcbiAgICB9LFxuICAgIHBhdXNlOiB7XG4gICAgICBpY29uOiBmYVBhdXNlLFxuICAgIH0sXG4gICAgcGVuOiB7XG4gICAgICBpY29uOiBmYVBlbixcbiAgICB9LFxuICAgIHBvc3Q6IHtcbiAgICAgIGljb246IGZhUGFwZXJQbGFuZSxcbiAgICB9LFxuICAgIHByZXZpb3VzOiB7XG4gICAgICBpY29uOiBmYUFycm93TGVmdCxcbiAgICB9LFxuICAgIHJlbmV3OiB7XG4gICAgICBpY29uOiBmYVJlY3ljbGUsXG4gICAgfSxcbiAgICBzYXZlOiB7XG4gICAgICBpY29uOiBmYVNhdmUsXG4gICAgfSxcbiAgICBzZWFyY2g6IHtcbiAgICAgIGljb246IGZhU2VhcmNoLFxuICAgIH0sXG4gICAgc2hvdzoge1xuICAgICAgaWNvbjogZmFFeWUsXG4gICAgfSxcbiAgICB2aWV3OiB7XG4gICAgICBpY29uOiBmYUV5ZSxcbiAgICB9LFxuICAgIHNub296ZToge1xuICAgICAgaWNvbjogZmFCZWxsU2xhc2gsXG4gICAgfSxcbiAgICB1cGxvYWQ6IHtcbiAgICAgIGljb246IGZhVXBsb2FkLFxuICAgIH0sXG4gICAgdW5sb2NrOiB7XG4gICAgICBpY29uOiBmYVVubG9jayxcbiAgICB9LFxuICAgIHVzZXJzOiB7XG4gICAgICBpY29uOiBmYVVzZXJzLFxuICAgIH0sXG4gICAgcmVjeWNsZToge1xuICAgICAgaWNvbjogZmFSZWN5Y2xlLFxuICAgIH0sXG4gICAgcmVmcmVzaDoge1xuICAgICAgaWNvblN0cmluZzogJ2ZhIGZhLXJlZnJlc2gnLFxuICAgIH0sXG4gICAgc3RvcDoge1xuICAgICAgaWNvbjogZmFTdG9wLFxuICAgIH0sXG4gICAgdHJ1Y2s6IHtcbiAgICAgIGljb246IGZhVHJ1Y2ssXG4gICAgfSxcbiAgICB0YWc6IHtcbiAgICAgIGljb246IGZhVGFnLFxuICAgIH0sXG4gICAgcmVjZWlwdDoge1xuICAgICAgaWNvbjogZmFSZWNlaXB0LFxuICAgIH0sXG4gICAgYmFuazoge1xuICAgICAgaWNvbjogZmFCYW5rLFxuICAgIH0sXG4gICAgYXJyb3doOiB7XG4gICAgICBpY29uOiBmYUFycm93c0gsXG4gICAgfSxcbiAgICBwbGF5OiB7XG4gICAgICBpY29uOiBmYVBsYXksXG4gICAgfSxcbiAgICBwZXJjZW50OiB7XG4gICAgICBpY29uOiBmYVBlcmNlbnQsXG4gICAgfSxcbiAgICBzaGFrZToge1xuICAgICAgaWNvbjogZmFIYW5kc2hha2UsXG4gICAgfSxcbiAgICBlcnJvcjoge1xuICAgICAgaWNvbjogZmFDaXJjbGVFeGNsYW1hdGlvbixcbiAgICB9LFxuICAgIHRhYmxlOiB7XG4gICAgICBpY29uOiBmYVRhYmxlLFxuICAgIH0sXG4gICAgc3Bvb246IHtcbiAgICAgIGljb246IGZhU3Bvb24sXG4gICAgfSxcbiAgfTtcbiAgY29uc3RydWN0b3IocHVibGljIHVhUzogVXNlckFjdGl2aXR5U2VydmljZSkge31cbiAgZ2V0SWNvbiA9IChpY29uVHlwZTogSWNvblR5cGUpID0+IHRoaXMuYnV0dG9uSWNvbkluZGV4W2ljb25UeXBlXTtcblxuICBnZXRUeXBlKHY6IEJ0blR5cGUpIHtcbiAgICByZXR1cm4gdGhpcy5idG5DbGFzc0NvbmZpZ1t2XSB8fCB7IF90eXBlOiAncHJpbWFyeScgfTtcbiAgfVxuICBkZWZhdWx0VHlwZTogQnRuVHlwZSA9ICdzZWNvbmRhcnknO1xuXG4gIGxvZ0NsaWNrKGJ0bjogQnRuQ29tcG9uZW50KSB7XG4gICAgY29uc29sZS5sb2coJ2J0bi5leHRyYWN0VGV4dCcsIGJ0bi5leHRyYWN0VGV4dCwgYnRuKTtcbiAgICBpZiAoYnRuLmV4Y2x1ZGVMb2dnaW5nKSByZXR1cm47XG4gICAgdGhpcy51YVMuYWRkKHtcbiAgICAgIGNvZGU6IEVVQS5jbGlja2VkLFxuICAgICAgYWN0aXZpdHlEZXNjcmlwdGlvbjogYnRuLmV4dHJhY3RUZXh0LFxuICAgIH0pO1xuICB9XG5cbiAgc2V0Rm9ybVN0YXRlID0gKGJ0bjogQnRuQ29tcG9uZW50KSA9PiB7XG4gICAgYnRuLmNoZWNrRm9ybVN0YXRlU3ViPy51bnN1YnNjcmliZSgpO1xuICAgIGJ0bi5jaGVja0Zvcm1TdGF0ZVN1YiA9IHRpbWVyKDAsIDEwMDApXG4gICAgICAucGlwZSh0YWtlKDMpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vIGJ0bi5jb3VudGVyPy5zZXQoYnRuLmNvdW50ZXIoKSArIDEpO1xuICAgICAgICBidG4uZm9ybVN0YXRlLnNldChcbiAgICAgICAgICBjbG9uZURlZXAoe1xuICAgICAgICAgICAgcGVuZGluZzogYnRuLmZvcm0/LnBlbmRpbmcsXG4gICAgICAgICAgICBkaXJ0eTogYnRuLmZvcm0/LmRpcnR5LFxuICAgICAgICAgICAgaW52YWxpZDogYnRuLmZvcm0/LmludmFsaWQsXG4gICAgICAgICAgICBwcmlzdGluZTogYnRuLmZvcm0/LnByaXN0aW5lLFxuICAgICAgICAgICAgdmFsaWQ6IGJ0bi5mb3JtPy52YWxpZCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIHNldEZvcm1zU3RhdGUgPSAoYnRuOiBCdG5Db21wb25lbnQpID0+IHtcbiAgICBidG4uY2hlY2tGb3Jtc1N0YXRlU3ViPy51bnN1YnNjcmliZSgpO1xuICAgIGJ0bi5jaGVja0Zvcm1zU3RhdGVTdWIgPSB0aW1lcigwLCAxMDAwKVxuICAgICAgLnBpcGUodGFrZSgzKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBjb25zdCBmcyA9IHtcbiAgICAgICAgICBwZW5kaW5nOiB0cnVlLFxuICAgICAgICAgIGRpcnR5OiB0cnVlLFxuICAgICAgICAgIGludmFsaWQ6IHRydWUsXG4gICAgICAgICAgcHJpc3RpbmU6IHRydWUsXG4gICAgICAgICAgdmFsaWQ6IHRydWUsXG4gICAgICAgIH07XG4gICAgICAgIGJ0bi5mb3Jtcz8uZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgICAgIGlmICgheC5wZW5kaW5nKSBmcy5wZW5kaW5nID0geC5wZW5kaW5nO1xuICAgICAgICAgIGlmICgheC5kaXJ0eSkgZnMuZGlydHkgPSB4LmRpcnR5O1xuICAgICAgICAgIGlmICgheC5pbnZhbGlkKSBmcy5pbnZhbGlkID0geC5pbnZhbGlkO1xuICAgICAgICAgIGlmICgheC5wcmlzdGluZSkgZnMucHJpc3RpbmUgPSB4LnByaXN0aW5lO1xuICAgICAgICAgIGlmICgheC52YWxpZCkgZnMudmFsaWQgPSB4LnZhbGlkO1xuICAgICAgICB9KTtcbiAgICAgICAgYnRuLmZvcm1zU3RhdGUuc2V0KGZzKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIGNoZWNrRm9ybShidG46IEJ0bkNvbXBvbmVudCkge1xuICAgIGlmIChidG4uaXNEaXNhYmxlZCgpICYmIGJ0bi5mb3JtKSB7XG4gICAgICBidG4uZm9ybS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgICBjb25zdCBmb3JtID0gYnRuLmZvcm07XG4gICAgICBjb25zb2xlLmxvZyhmb3JtKTtcbiAgICAgIGlmIChmb3JtIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIE9iamVjdC5rZXlzKGZvcm0uY29udHJvbHMpXG4gICAgICAgICAgICAuZmlsdGVyKCh4KSA9PiAhZm9ybS5jb250cm9sc1t4XS52YWxpZClcbiAgICAgICAgICAgIC5tYXAoKHgpID0+IGZvcm0uY29udHJvbHNbeF0pLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoYnRuLmlzRGlzYWJsZWQoKSAmJiBidG4uZm9ybXMpIHtcbiAgICAgIGJ0bi5mb3Jtcy5mb3JFYWNoKChmb3JtKSA9PiBmb3JtLm1hcmtBbGxBc1RvdWNoZWQoKSk7XG4gICAgICAvLyB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICBjb25zb2xlLmxvZyhidG4uZm9ybXMpO1xuICAgIH1cbiAgfVxuICAvLyBwcm90ZWN0ZWQgZGVib3VuY2VyQXJyYXkgPSBbMjAwXS5jb25jYXQobmV3IEFycmF5KDMpLmZpbGwoMSkubWFwKCh4LCBpKSA9PiAoaSArIDEpICogMTAwMCkpO1xuXG4gIGhhbmRsZUZvcm0gPSAoZm9ybTogQWJzdHJhY3RDb250cm9sLCBidG46IEJ0bkNvbXBvbmVudCkgPT5cbiAgICBmb3JtLnN0YXR1c0NoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHIpID0+IHRoaXMuc2V0Rm9ybVN0YXRlKGJ0bikpLFxuICAgICAgICAvLyB0YXAoKHIpID0+IHRoaXMuc2V0Rm9ybVN0YXRlKGZvcm0sIGJ0bikpLFxuXG4gICAgICAgIC8vIGRlYm91bmNlVGltZSgyMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3JtU3RhdGUoZm9ybSwgYnRuKSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHt9KTtcblxuICBoYW5kbGVGb3JtcyA9ICh2OiBBYnN0cmFjdENvbnRyb2xbXSwgYnRuOiBCdG5Db21wb25lbnQpID0+XG4gICAgbWVyZ2Uodi5tYXAoKGYpID0+IGYuc3RhdHVzQ2hhbmdlcykpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChyKSA9PiB0aGlzLnNldEZvcm1zU3RhdGUoYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDIwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1zU3RhdGUodiwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3Jtc1N0YXRlKHYsIGJ0bikpLFxuXG4gICAgICAgIC8vIGRlYm91bmNlVGltZSgxMDAwKSxcbiAgICAgICAgLy8gdGFwKCgpID0+IHRoaXMuc2V0Rm9ybXNTdGF0ZSh2LCBidG4pKSxcblxuICAgICAgICAvLyBkZWJvdW5jZVRpbWUoMTAwMCksXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLnNldEZvcm1zU3RhdGUodiwgYnRuKSksXG5cbiAgICAgICAgLy8gZGVib3VuY2VUaW1lKDEwMDApLFxuICAgICAgICAvLyB0YXAoKCkgPT4gdGhpcy5zZXRGb3Jtc1N0YXRlKHYsIGJ0bikpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7fSk7XG59XG5cbnR5cGUgQnRuQ2xhc3MgPSB7IFtrIGluIEJ0blR5cGVdOiB7IF9tY2xhc3M/OiBzdHJpbmc7IF9pY29uPzogSWNvblR5cGU7IF90eXBlPzogQnRuVHlwZSB9IH07XG4iXX0=
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, inject, input } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, Input, Output, inject, input, model } from '@angular/core';
|
|
2
2
|
import { NgIf, NgClass, NgFor } from '@angular/common';
|
|
3
3
|
import { BtnComponent } from '../btn/btn.component';
|
|
4
4
|
import { UtilityService } from '../../../Services/utility.service';
|
|
5
|
+
import ModalComponents from '../modal-components/modal.components';
|
|
6
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
7
|
+
import { WebcamMediaComponent } from '../webcam-media/webcam-media.component';
|
|
5
8
|
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../modal/modal.component";
|
|
10
|
+
import * as i2 from "../modal/modal-body.directive";
|
|
11
|
+
import * as i3 from "@angular/material/menu";
|
|
6
12
|
export class FileUploadComponent {
|
|
7
13
|
set _accept(v) {
|
|
8
14
|
switch (v) {
|
|
@@ -15,7 +21,13 @@ export class FileUploadComponent {
|
|
|
15
21
|
}
|
|
16
22
|
}
|
|
17
23
|
constructor() {
|
|
24
|
+
this.mediaWidth = model(1080);
|
|
18
25
|
this.class = input();
|
|
26
|
+
this.useWebcam = input(false);
|
|
27
|
+
/**
|
|
28
|
+
* Only useful if using the webcam option
|
|
29
|
+
*/
|
|
30
|
+
this.fileName = input();
|
|
19
31
|
this.mini = input(true);
|
|
20
32
|
this.listFiles = input(true);
|
|
21
33
|
this.fileChange = new EventEmitter();
|
|
@@ -29,6 +41,7 @@ export class FileUploadComponent {
|
|
|
29
41
|
acceptFiles(...files) {
|
|
30
42
|
this.files = files;
|
|
31
43
|
this.file = files ? files[0] : null;
|
|
44
|
+
this.emitFiles();
|
|
32
45
|
}
|
|
33
46
|
emitFiles() {
|
|
34
47
|
if (this.multiple)
|
|
@@ -39,7 +52,6 @@ export class FileUploadComponent {
|
|
|
39
52
|
onUpload(event) {
|
|
40
53
|
const files = Array.from(event.target.files);
|
|
41
54
|
this.acceptFiles(...files);
|
|
42
|
-
this.emitFiles();
|
|
43
55
|
}
|
|
44
56
|
removeFile(index) {
|
|
45
57
|
this.files.splice(index, 1);
|
|
@@ -60,11 +72,11 @@ export class FileUploadComponent {
|
|
|
60
72
|
inp.click();
|
|
61
73
|
}
|
|
62
74
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.1", type: FileUploadComponent, isStandalone: true, selector: "app-file-upload", inputs: { help: { classPropertyName: "help", publicName: "help", isSignal: false, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: null }, mini: { classPropertyName: "mini", publicName: "mini", isSignal: true, isRequired: false, transformFunction: null }, useDocumentModal: { classPropertyName: "useDocumentModal", publicName: "useDocumentModal", isSignal: false, isRequired: false, transformFunction: null }, listFiles: { classPropertyName: "listFiles", publicName: "listFiles", isSignal: true, isRequired: false, transformFunction: null }, _accept: { classPropertyName: "_accept", publicName: "accept", isSignal: false, isRequired: false, transformFunction: null }, file: { classPropertyName: "file", publicName: "file", isSignal: false, isRequired: false, transformFunction: null }, files: { classPropertyName: "files", publicName: "files", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { fileChange: "fileChange", filesChange: "filesChange" }, ngImport: i0, template: "
|
|
75
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.1", type: FileUploadComponent, isStandalone: true, selector: "app-file-upload", inputs: { help: { classPropertyName: "help", publicName: "help", isSignal: false, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, mediaWidth: { classPropertyName: "mediaWidth", publicName: "mediaWidth", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, useWebcam: { classPropertyName: "useWebcam", publicName: "useWebcam", isSignal: true, isRequired: false, transformFunction: null }, fileName: { classPropertyName: "fileName", publicName: "fileName", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: null }, mini: { classPropertyName: "mini", publicName: "mini", isSignal: true, isRequired: false, transformFunction: null }, useDocumentModal: { classPropertyName: "useDocumentModal", publicName: "useDocumentModal", isSignal: false, isRequired: false, transformFunction: null }, listFiles: { classPropertyName: "listFiles", publicName: "listFiles", isSignal: true, isRequired: false, transformFunction: null }, _accept: { classPropertyName: "_accept", publicName: "accept", isSignal: false, isRequired: false, transformFunction: null }, file: { classPropertyName: "file", publicName: "file", isSignal: false, isRequired: false, transformFunction: null }, files: { classPropertyName: "files", publicName: "files", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { mediaWidth: "mediaWidthChange", fileChange: "fileChange", filesChange: "filesChange" }, ngImport: i0, template: "@if (listFiles()) {\n <div [ngClass]=\"{ meta: mini() }\" class=\"{{ class() }} form-label mb-2 hide-scroll\">\n @for (item of files; track item) {\n <div class=\"row align-items-start mb-1\">\n <div class=\"col\">\n <div class=\"hide-scroll file-name\">\n {{ item?.name }}\n </div>\n </div>\n <div class=\"col-auto text-end\">\n <span class=\"text-danger pointer p-1 fa fa-close\" (click)=\"removeFile($index)\"></span>\n </div>\n </div>\n }\n </div>\n}\n<!-- <input type=\"file\" style=\"display: none;\" accept=\"{{accept}}\" (change)=\"onUpload($event)\" #uploadInput [multiple]=\"multiple\"> -->\n<app-btn\n icon=\"upload\"\n (mclick)=\"useWebcam() ? null : openDialog()\"\n [type]=\"file ? 'primary' : 'secondary'\"\n [disabled]=\"disabled\"\n [help]=\"help\"\n [text]=\"label\"\n [matMenuTriggerFor]=\"useWebcam() ? menu : null\" />\n\n<mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"openDialog()\">Upload</button>\n <button mat-menu-item (click)=\"webcamModal.open()\">Use Camera</button>\n</mat-menu>\n\n<modal-comp #webcamModal width=\"1080px\" header=\"Webcam\">\n <ng-template modalBody>\n <lib-webcam-media [fileName]=\"fileName()\" [width]=\"mediaWidth()\" (closed)=\"webcamModal.close(); acceptFiles($event)\" />\n </ng-template>\n</modal-comp>\n", styles: [".meta,.file-name{height:23px}.meta{overflow-y:auto}.file-name{overflow:auto}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BtnComponent, selector: "app-btn", inputs: ["formSchema", "debug", "centerBtn", "danger", "warning", "icon", "rightIcon", "leftIcon", "type", "group", "actionType", "animate", "excludeLogging", "loggingValue", "badge", "class", "customIcon", "disabled", "form", "forms", "help", "iconBtn", "loading", "mclass", "showHelpIcon", "rightCustomIcon", "leftCustomIcon", "text", "valid", "mini", "onFormInvalid"], outputs: ["mclick"] }, { kind: "component", type: i1.ModalComponent, selector: "modal-comp", inputs: ["header", "bodyTemplateRef", "footerTemplateRef", "showHeader", "loading", "isFullscreen", "showFooter", "width", "minWidth", "height", "maxHeight", "icon", "data", "disableClose", "hasBackdrop"], outputs: ["modalOpen", "modalClose"] }, { kind: "directive", type: i2.ModalBodyDirective, selector: "[modalBody]" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: WebcamMediaComponent, selector: "lib-webcam-media", inputs: ["isVideo", "useAudio", "fileName", "fileNameFactory", "fileType", "extraClass", "recordingNotificationInterval", "isBackground", "width"], outputs: ["closed", "recorderStopped", "recorderErrored", "recorderStarted", "recordingState", "recordingChanged", "widthChange"] }] }); }
|
|
64
76
|
}
|
|
65
77
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FileUploadComponent, decorators: [{
|
|
66
78
|
type: Component,
|
|
67
|
-
args: [{ selector: 'app-file-upload', standalone: true, imports: [NgIf, NgClass, NgFor, BtnComponent], template: "
|
|
79
|
+
args: [{ selector: 'app-file-upload', standalone: true, imports: [NgIf, NgClass, NgFor, BtnComponent, ModalComponents, MatMenuModule, WebcamMediaComponent], template: "@if (listFiles()) {\n <div [ngClass]=\"{ meta: mini() }\" class=\"{{ class() }} form-label mb-2 hide-scroll\">\n @for (item of files; track item) {\n <div class=\"row align-items-start mb-1\">\n <div class=\"col\">\n <div class=\"hide-scroll file-name\">\n {{ item?.name }}\n </div>\n </div>\n <div class=\"col-auto text-end\">\n <span class=\"text-danger pointer p-1 fa fa-close\" (click)=\"removeFile($index)\"></span>\n </div>\n </div>\n }\n </div>\n}\n<!-- <input type=\"file\" style=\"display: none;\" accept=\"{{accept}}\" (change)=\"onUpload($event)\" #uploadInput [multiple]=\"multiple\"> -->\n<app-btn\n icon=\"upload\"\n (mclick)=\"useWebcam() ? null : openDialog()\"\n [type]=\"file ? 'primary' : 'secondary'\"\n [disabled]=\"disabled\"\n [help]=\"help\"\n [text]=\"label\"\n [matMenuTriggerFor]=\"useWebcam() ? menu : null\" />\n\n<mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"openDialog()\">Upload</button>\n <button mat-menu-item (click)=\"webcamModal.open()\">Use Camera</button>\n</mat-menu>\n\n<modal-comp #webcamModal width=\"1080px\" header=\"Webcam\">\n <ng-template modalBody>\n <lib-webcam-media [fileName]=\"fileName()\" [width]=\"mediaWidth()\" (closed)=\"webcamModal.close(); acceptFiles($event)\" />\n </ng-template>\n</modal-comp>\n", styles: [".meta,.file-name{height:23px}.meta{overflow-y:auto}.file-name{overflow:auto}\n"] }]
|
|
68
80
|
}], ctorParameters: () => [], propDecorators: { help: [{
|
|
69
81
|
type: Input
|
|
70
82
|
}], label: [{
|
|
@@ -87,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
87
99
|
}], filesChange: [{
|
|
88
100
|
type: Output
|
|
89
101
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXRzLWZlLW5nLXNkay9zcmMvbGliL1NoYXJlZC9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxlQUFlLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7OztBQVM5RSxNQUFNLE9BQU8sbUJBQW1CO0lBZ0I5QixJQUFxQixPQUFPLENBQUMsQ0FBUztRQUNwQyxRQUFRLENBQUMsRUFBRTtZQUNULEtBQUssT0FBTztnQkFDVixJQUFJLENBQUMsTUFBTSxHQUFHLHNCQUFzQixDQUFDO2dCQUNyQyxNQUFNO1lBRVI7Z0JBQ0UsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7Z0JBQ2hCLE1BQU07U0FDVDtJQUNILENBQUM7SUFT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LGNBR2YsSUFBSSxXQUNQLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFDLGVBQWUsRUFBQyxhQUFhLEVBQUMsb0JBQW9CLENBQUM7d0RBR3ZGLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFHZSxPQUFPO3NCQUEzQixLQUFLO3VCQUFDLFFBQVE7Z0JBWU4sSUFBSTtzQkFBWixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0UsS0FBSztzQkFBYixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBpbmplY3QsIGlucHV0LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdJZiwgTmdDbGFzcywgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnRuQ29tcG9uZW50IH0gZnJvbSAnLi4vYnRuL2J0bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXRpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9TZXJ2aWNlcy91dGlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IE1vZGFsQ29tcG9uZW50cyBmcm9tICcuLi9tb2RhbC1jb21wb25lbnRzL21vZGFsLmNvbXBvbmVudHMnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgV2ViY2FtTWVkaWFDb21wb25lbnQgfSBmcm9tICcuLi93ZWJjYW0tbWVkaWEvd2ViY2FtLW1lZGlhLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWxlLXVwbG9hZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0NsYXNzLCBOZ0ZvciwgQnRuQ29tcG9uZW50LE1vZGFsQ29tcG9uZW50cyxNYXRNZW51TW9kdWxlLFdlYmNhbU1lZGlhQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGhlbHA6IHN0cmluZztcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcbiAgbWVkaWFXaWR0aCA9IG1vZGVsPG51bWJlcj4oMTA4MCk7IFxuICBjbGFzcyA9IGlucHV0PHN0cmluZz4oKTtcbiAgdXNlV2ViY2FtID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICAvKipcbiAgICogT25seSB1c2VmdWwgaWYgdXNpbmcgdGhlIHdlYmNhbSBvcHRpb25cbiAgICovXG4gIGZpbGVOYW1lID0gaW5wdXQ8c3RyaW5nPigpO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgbXVsdGlwbGU6IGJvb2xlYW47XG4gIG1pbmkgPSBpbnB1dCh0cnVlKTtcbiAgQElucHV0KCkgdXNlRG9jdW1lbnRNb2RhbDogYm9vbGVhbjtcbiAgbGlzdEZpbGVzID0gaW5wdXQodHJ1ZSk7XG4gIGFjY2VwdDogc3RyaW5nO1xuICBASW5wdXQoJ2FjY2VwdCcpIHNldCBfYWNjZXB0KHY6IHN0cmluZykge1xuICAgIHN3aXRjaCAodikge1xuICAgICAgY2FzZSAnaW1hZ2UnOlxuICAgICAgICB0aGlzLmFjY2VwdCA9ICcucG5nLC5qcGcsLmRvY3gsLnBkZic7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmFjY2VwdCA9IHY7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuICAvLyBAVmlld0NoaWxkKCd1cGxvYWRJbnB1dCcpIHVwbG9hZElucHV0UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBASW5wdXQoKSBmaWxlOiBGaWxlO1xuICBAT3V0cHV0KCkgZmlsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZT4oKTtcbiAgQElucHV0KCkgZmlsZXM6IEZpbGVbXTtcbiAgQE91dHB1dCgpIGZpbGVzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlW10+KCk7XG5cbiAgcHVibGljIHVTID0gaW5qZWN0KFV0aWxpdHlTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIGdldCBpc1NpbmdsZSgpIHtcbiAgICByZXR1cm4gIXRoaXMubXVsdGlwbGU7XG4gIH1cbiAgcHJvdGVjdGVkIGFjY2VwdEZpbGVzKC4uLmZpbGVzOiBGaWxlW10pIHtcbiAgICB0aGlzLmZpbGVzID0gZmlsZXM7XG4gICAgdGhpcy5maWxlID0gZmlsZXMgPyBmaWxlc1swXSA6IG51bGw7XG4gICAgdGhpcy5lbWl0RmlsZXMoKTtcbiAgfVxuICBwcm90ZWN0ZWQgZW1pdEZpbGVzKCkge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB0aGlzLmZpbGVzQ2hhbmdlLmVtaXQodGhpcy5maWxlcyk7XG4gICAgZWxzZSB0aGlzLmZpbGVDaGFuZ2UuZW1pdCh0aGlzLmZpbGUpO1xuICB9XG5cbiAgb25VcGxvYWQoZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IGZpbGVzID0gQXJyYXkuZnJvbTxGaWxlPihldmVudC50YXJnZXQuZmlsZXMpO1xuICAgIHRoaXMuYWNjZXB0RmlsZXMoLi4uZmlsZXMpO1xuICB9XG5cbiAgcmVtb3ZlRmlsZShpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5maWxlcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHRoaXMuZmlsZSA9IHRoaXMuZmlsZXMgPyB0aGlzLmZpbGVzWzBdIDogbnVsbDtcblxuICAgIHRoaXMuZmlsZUNoYW5nZS5lbWl0KHRoaXMuZmlsZSk7XG4gICAgdGhpcy5maWxlc0NoYW5nZS5lbWl0KHRoaXMuZmlsZXMpO1xuICB9XG4gIG9wZW5EaWFsb2coKSB7XG4gICAgY29uc3QgaW5wID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICBpbnAudHlwZSA9ICdmaWxlJztcbiAgICBpbnAuYWNjZXB0ID0gdGhpcy5hY2NlcHQ7XG4gICAgaW5wLm11bHRpcGxlID0gdGhpcy5tdWx0aXBsZTtcbiAgICBpbnAub25jaGFuZ2UgPSAoZSkgPT4ge1xuICAgICAgdGhpcy5vblVwbG9hZChlKTtcbiAgICAgIGlucC5yZW1vdmUoKTtcbiAgICB9O1xuICAgIC8vIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW5wKTtcbiAgICBpbnAuY2xpY2soKTtcbiAgfVxufVxuIiwiQGlmIChsaXN0RmlsZXMoKSkge1xuICA8ZGl2IFtuZ0NsYXNzXT1cInsgbWV0YTogbWluaSgpIH1cIiBjbGFzcz1cInt7IGNsYXNzKCkgfX0gZm9ybS1sYWJlbCBtYi0yIGhpZGUtc2Nyb2xsXCI+XG4gICAgQGZvciAoaXRlbSBvZiBmaWxlczsgdHJhY2sgaXRlbSkge1xuICAgICAgPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1zdGFydCBtYi0xXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGlkZS1zY3JvbGwgZmlsZS1uYW1lXCI+XG4gICAgICAgICAgICB7eyBpdGVtPy5uYW1lIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWF1dG8gdGV4dC1lbmRcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyIHBvaW50ZXIgcC0xIGZhIGZhLWNsb3NlXCIgKGNsaWNrKT1cInJlbW92ZUZpbGUoJGluZGV4KVwiPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxufVxuPCEtLSA8aW5wdXQgdHlwZT1cImZpbGVcIiAgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiIGFjY2VwdD1cInt7YWNjZXB0fX1cIiAoY2hhbmdlKT1cIm9uVXBsb2FkKCRldmVudClcIiAjdXBsb2FkSW5wdXQgW211bHRpcGxlXT1cIm11bHRpcGxlXCI+IC0tPlxuPGFwcC1idG5cbiAgaWNvbj1cInVwbG9hZFwiXG4gIChtY2xpY2spPVwidXNlV2ViY2FtKCkgPyBudWxsIDogb3BlbkRpYWxvZygpXCJcbiAgW3R5cGVdPVwiZmlsZSA/ICdwcmltYXJ5JyA6ICdzZWNvbmRhcnknXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2hlbHBdPVwiaGVscFwiXG4gIFt0ZXh0XT1cImxhYmVsXCJcbiAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cInVzZVdlYmNhbSgpID8gbWVudSA6IG51bGxcIiAvPlxuXG48bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCI+XG4gIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwib3BlbkRpYWxvZygpXCI+VXBsb2FkPC9idXR0b24+XG4gIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwid2ViY2FtTW9kYWwub3BlbigpXCI+VXNlIENhbWVyYTwvYnV0dG9uPlxuPC9tYXQtbWVudT5cblxuPG1vZGFsLWNvbXAgI3dlYmNhbU1vZGFsIHdpZHRoPVwiMTA4MHB4XCIgaGVhZGVyPVwiV2ViY2FtXCI+XG4gIDxuZy10ZW1wbGF0ZSBtb2RhbEJvZHk+XG4gICAgPGxpYi13ZWJjYW0tbWVkaWEgW2ZpbGVOYW1lXT1cImZpbGVOYW1lKClcIiBbd2lkdGhdPVwibWVkaWFXaWR0aCgpXCIgKGNsb3NlZCk9XCJ3ZWJjYW1Nb2RhbC5jbG9zZSgpOyBhY2NlcHRGaWxlcygkZXZlbnQpXCIgLz5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbW9kYWwtY29tcD5cbiJdfQ==
|