angular-multiselect3 10.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.
Files changed (40) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +306 -0
  3. package/esm2022/angular-multiselect.mjs +5 -0
  4. package/esm2022/lib/clickOutside.mjs +58 -0
  5. package/esm2022/lib/list-filter.mjs +59 -0
  6. package/esm2022/lib/menu-item.mjs +352 -0
  7. package/esm2022/lib/multiselect.component.mjs +1038 -0
  8. package/esm2022/lib/multiselect.interface.mjs +2 -0
  9. package/esm2022/lib/multiselect.model.mjs +9 -0
  10. package/esm2022/lib/multiselect.service.mjs +28 -0
  11. package/esm2022/lib/virtual-scroll/defaultoptions.mjs +2 -0
  12. package/esm2022/lib/virtual-scroll/idimension.mjs +2 -0
  13. package/esm2022/lib/virtual-scroll/ipageinfo.mjs +2 -0
  14. package/esm2022/lib/virtual-scroll/iviewport.mjs +2 -0
  15. package/esm2022/lib/virtual-scroll/virtual-scroll.mjs +1162 -0
  16. package/esm2022/lib/virtual-scroll/wrapgroupdimension.mjs +2 -0
  17. package/esm2022/lib/virtual-scroll/wrapgroupdimensions.mjs +2 -0
  18. package/esm2022/public_api.mjs +7 -0
  19. package/fesm2022/angular-multiselect.mjs +2689 -0
  20. package/fesm2022/angular-multiselect.mjs.map +1 -0
  21. package/index.d.ts +5 -0
  22. package/lib/clickOutside.d.ts +17 -0
  23. package/lib/list-filter.d.ts +12 -0
  24. package/lib/menu-item.d.ts +36 -0
  25. package/lib/multiselect.component.d.ts +134 -0
  26. package/lib/multiselect.interface.d.ts +34 -0
  27. package/lib/multiselect.model.d.ts +5 -0
  28. package/lib/multiselect.service.d.ts +11 -0
  29. package/lib/virtual-scroll/defaultoptions.d.ts +11 -0
  30. package/lib/virtual-scroll/idimension.d.ts +12 -0
  31. package/lib/virtual-scroll/ipageinfo.d.ts +9 -0
  32. package/lib/virtual-scroll/iviewport.d.ts +5 -0
  33. package/lib/virtual-scroll/virtual-scroll.d.ts +132 -0
  34. package/lib/virtual-scroll/wrapgroupdimension.d.ts +5 -0
  35. package/lib/virtual-scroll/wrapgroupdimensions.d.ts +7 -0
  36. package/package.json +37 -0
  37. package/public_api.d.ts +6 -0
  38. package/themes/dark.theme.scss +113 -0
  39. package/themes/default.theme.css +107 -0
  40. package/themes/default.theme.scss +155 -0
@@ -0,0 +1,352 @@
1
+ import { Component, TemplateRef, ContentChild, ViewEncapsulation, Input, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ export class Item {
5
+ template;
6
+ constructor() { }
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Item, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: Item, selector: "c-item", queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: ``, isInline: true });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Item, decorators: [{
11
+ type: Component,
12
+ args: [{
13
+ selector: 'c-item',
14
+ template: ``,
15
+ }]
16
+ }], ctorParameters: () => [], propDecorators: { template: [{
17
+ type: ContentChild,
18
+ args: [TemplateRef, { static: true }]
19
+ }] } });
20
+ export class Badge {
21
+ template;
22
+ constructor() { }
23
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Badge, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: Badge, selector: "c-badge", queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: ``, isInline: true });
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Badge, decorators: [{
27
+ type: Component,
28
+ args: [{
29
+ selector: 'c-badge',
30
+ template: ``,
31
+ }]
32
+ }], ctorParameters: () => [], propDecorators: { template: [{
33
+ type: ContentChild,
34
+ args: [TemplateRef, { static: true }]
35
+ }] } });
36
+ export class Search {
37
+ template;
38
+ constructor() { }
39
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Search, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: Search, selector: "c-search", queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: ``, isInline: true });
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Search, decorators: [{
43
+ type: Component,
44
+ args: [{
45
+ selector: 'c-search',
46
+ template: ``,
47
+ }]
48
+ }], ctorParameters: () => [], propDecorators: { template: [{
49
+ type: ContentChild,
50
+ args: [TemplateRef, { static: true }]
51
+ }] } });
52
+ export class TemplateRenderer {
53
+ viewContainer;
54
+ data;
55
+ item;
56
+ view;
57
+ constructor(viewContainer) {
58
+ this.viewContainer = viewContainer;
59
+ }
60
+ ngOnInit() {
61
+ this.view = this.viewContainer.createEmbeddedView(this.data.template, {
62
+ $implicit: this.data,
63
+ item: this.item,
64
+ });
65
+ }
66
+ ngOnDestroy() {
67
+ this.view.destroy();
68
+ }
69
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TemplateRenderer, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
70
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: TemplateRenderer, selector: "c-templateRenderer", inputs: { data: "data", item: "item" }, ngImport: i0, template: ``, isInline: true });
71
+ }
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TemplateRenderer, decorators: [{
73
+ type: Component,
74
+ args: [{
75
+ selector: 'c-templateRenderer',
76
+ template: ``,
77
+ }]
78
+ }], ctorParameters: () => [{ type: i0.ViewContainerRef }], propDecorators: { data: [{
79
+ type: Input
80
+ }], item: [{
81
+ type: Input
82
+ }] } });
83
+ export class CIcon {
84
+ name;
85
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
86
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: CIcon, selector: "c-icon", inputs: { name: "name" }, ngImport: i0, template: `<svg
87
+ *ngIf="name == 'remove'"
88
+ width="100%"
89
+ height="100%"
90
+ version="1.1"
91
+ id="Capa_1"
92
+ xmlns="http://www.w3.org/2000/svg"
93
+ xmlns:xlink="http://www.w3.org/1999/xlink"
94
+ x="0px"
95
+ y="0px"
96
+ viewBox="0 0 47.971 47.971"
97
+ style="enable-background:new 0 0 47.971 47.971;"
98
+ xml:space="preserve"
99
+ >
100
+ <g>
101
+ <path
102
+ d="M28.228,23.986L47.092,5.122c1.172-1.171,1.172-3.071,0-4.242c-1.172-1.172-3.07-1.172-4.242,0L23.986,19.744L5.121,0.88
103
+ c-1.172-1.172-3.07-1.172-4.242,0c-1.172,1.171-1.172,3.071,0,4.242l18.865,18.864L0.879,42.85c-1.172,1.171-1.172,3.071,0,4.242
104
+ C1.465,47.677,2.233,47.97,3,47.97s1.535-0.293,2.121-0.879l18.865-18.864L42.85,47.091c0.586,0.586,1.354,0.879,2.121,0.879
105
+ s1.535-0.293,2.121-0.879c1.172-1.171,1.172-3.071,0-4.242L28.228,23.986z"
106
+ />
107
+ </g>
108
+ </svg>
109
+ <svg
110
+ *ngIf="name == 'angle-down'"
111
+ version="1.1"
112
+ id="Capa_1"
113
+ xmlns="http://www.w3.org/2000/svg"
114
+ xmlns:xlink="http://www.w3.org/1999/xlink"
115
+ x="0px"
116
+ y="0px"
117
+ width="100%"
118
+ height="100%"
119
+ viewBox="0 0 612 612"
120
+ style="enable-background:new 0 0 612 612;"
121
+ xml:space="preserve"
122
+ >
123
+ <g>
124
+ <g id="_x31_0_34_">
125
+ <g>
126
+ <path
127
+ d="M604.501,134.782c-9.999-10.05-26.222-10.05-36.221,0L306.014,422.558L43.721,134.782
128
+ c-9.999-10.05-26.223-10.05-36.222,0s-9.999,26.35,0,36.399l279.103,306.241c5.331,5.357,12.422,7.652,19.386,7.296
129
+ c6.988,0.356,14.055-1.939,19.386-7.296l279.128-306.268C614.5,161.106,614.5,144.832,604.501,134.782z"
130
+ />
131
+ </g>
132
+ </g>
133
+ </g>
134
+ </svg>
135
+ <svg
136
+ *ngIf="name == 'angle-up'"
137
+ version="1.1"
138
+ id="Capa_1"
139
+ xmlns="http://www.w3.org/2000/svg"
140
+ xmlns:xlink="http://www.w3.org/1999/xlink"
141
+ x="0px"
142
+ y="0px"
143
+ width="100%"
144
+ height="100%"
145
+ viewBox="0 0 612 612"
146
+ style="enable-background:new 0 0 612 612;"
147
+ xml:space="preserve"
148
+ >
149
+ <g>
150
+ <g id="_x39__30_">
151
+ <g>
152
+ <path
153
+ d="M604.501,440.509L325.398,134.956c-5.331-5.357-12.423-7.627-19.386-7.27c-6.989-0.357-14.056,1.913-19.387,7.27
154
+ L7.499,440.509c-9.999,10.024-9.999,26.298,0,36.323s26.223,10.024,36.222,0l262.293-287.164L568.28,476.832
155
+ c9.999,10.024,26.222,10.024,36.221,0C614.5,466.809,614.5,450.534,604.501,440.509z"
156
+ />
157
+ </g>
158
+ </g>
159
+ </g>
160
+ </svg>
161
+ <svg
162
+ *ngIf="name == 'search'"
163
+ version="1.1"
164
+ id="Capa_1"
165
+ xmlns="http://www.w3.org/2000/svg"
166
+ xmlns:xlink="http://www.w3.org/1999/xlink"
167
+ x="0px"
168
+ y="0px"
169
+ width="100%"
170
+ height="100%"
171
+ viewBox="0 0 615.52 615.52"
172
+ style="enable-background:new 0 0 615.52 615.52;"
173
+ xml:space="preserve"
174
+ >
175
+ <g>
176
+ <g>
177
+ <g id="Search__x28_and_thou_shall_find_x29_">
178
+ <g>
179
+ <path
180
+ d="M602.531,549.736l-184.31-185.368c26.679-37.72,42.528-83.729,42.528-133.548C460.75,103.35,357.997,0,231.258,0
181
+ C104.518,0,1.765,103.35,1.765,230.82c0,127.47,102.753,230.82,229.493,230.82c49.53,0,95.271-15.944,132.78-42.777
182
+ l184.31,185.366c7.482,7.521,17.292,11.291,27.102,11.291c9.812,0,19.62-3.77,27.083-11.291
183
+ C617.496,589.188,617.496,564.777,602.531,549.736z M355.9,319.763l-15.042,21.273L319.7,356.174
184
+ c-26.083,18.658-56.667,28.526-88.442,28.526c-84.365,0-152.995-69.035-152.995-153.88c0-84.846,68.63-153.88,152.995-153.88
185
+ s152.996,69.034,152.996,153.88C384.271,262.769,374.462,293.526,355.9,319.763z"
186
+ />
187
+ </g>
188
+ </g>
189
+ </g>
190
+ </g>
191
+ </svg>
192
+ <svg
193
+ *ngIf="name == 'clear'"
194
+ version="1.1"
195
+ id="Capa_1"
196
+ xmlns="http://www.w3.org/2000/svg"
197
+ xmlns:xlink="http://www.w3.org/1999/xlink"
198
+ x="0px"
199
+ y="0px"
200
+ viewBox="0 0 51.976 51.976"
201
+ style="enable-background:new 0 0 51.976 51.976;"
202
+ xml:space="preserve"
203
+ >
204
+ <g>
205
+ <path
206
+ d="M44.373,7.603c-10.137-10.137-26.632-10.138-36.77,0c-10.138,10.138-10.137,26.632,0,36.77s26.632,10.138,36.77,0
207
+ C54.51,34.235,54.51,17.74,44.373,7.603z M36.241,36.241c-0.781,0.781-2.047,0.781-2.828,0l-7.425-7.425l-7.778,7.778
208
+ c-0.781,0.781-2.047,0.781-2.828,0c-0.781-0.781-0.781-2.047,0-2.828l7.778-7.778l-7.425-7.425c-0.781-0.781-0.781-2.048,0-2.828
209
+ c0.781-0.781,2.047-0.781,2.828,0l7.425,7.425l7.071-7.071c0.781-0.781,2.047-0.781,2.828,0c0.781,0.781,0.781,2.047,0,2.828
210
+ l-7.071,7.071l7.425,7.425C37.022,34.194,37.022,35.46,36.241,36.241z"
211
+ />
212
+ </g>
213
+ </svg>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
214
+ }
215
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CIcon, decorators: [{
216
+ type: Component,
217
+ args: [{
218
+ selector: 'c-icon',
219
+ template: `<svg
220
+ *ngIf="name == 'remove'"
221
+ width="100%"
222
+ height="100%"
223
+ version="1.1"
224
+ id="Capa_1"
225
+ xmlns="http://www.w3.org/2000/svg"
226
+ xmlns:xlink="http://www.w3.org/1999/xlink"
227
+ x="0px"
228
+ y="0px"
229
+ viewBox="0 0 47.971 47.971"
230
+ style="enable-background:new 0 0 47.971 47.971;"
231
+ xml:space="preserve"
232
+ >
233
+ <g>
234
+ <path
235
+ d="M28.228,23.986L47.092,5.122c1.172-1.171,1.172-3.071,0-4.242c-1.172-1.172-3.07-1.172-4.242,0L23.986,19.744L5.121,0.88
236
+ c-1.172-1.172-3.07-1.172-4.242,0c-1.172,1.171-1.172,3.071,0,4.242l18.865,18.864L0.879,42.85c-1.172,1.171-1.172,3.071,0,4.242
237
+ C1.465,47.677,2.233,47.97,3,47.97s1.535-0.293,2.121-0.879l18.865-18.864L42.85,47.091c0.586,0.586,1.354,0.879,2.121,0.879
238
+ s1.535-0.293,2.121-0.879c1.172-1.171,1.172-3.071,0-4.242L28.228,23.986z"
239
+ />
240
+ </g>
241
+ </svg>
242
+ <svg
243
+ *ngIf="name == 'angle-down'"
244
+ version="1.1"
245
+ id="Capa_1"
246
+ xmlns="http://www.w3.org/2000/svg"
247
+ xmlns:xlink="http://www.w3.org/1999/xlink"
248
+ x="0px"
249
+ y="0px"
250
+ width="100%"
251
+ height="100%"
252
+ viewBox="0 0 612 612"
253
+ style="enable-background:new 0 0 612 612;"
254
+ xml:space="preserve"
255
+ >
256
+ <g>
257
+ <g id="_x31_0_34_">
258
+ <g>
259
+ <path
260
+ d="M604.501,134.782c-9.999-10.05-26.222-10.05-36.221,0L306.014,422.558L43.721,134.782
261
+ c-9.999-10.05-26.223-10.05-36.222,0s-9.999,26.35,0,36.399l279.103,306.241c5.331,5.357,12.422,7.652,19.386,7.296
262
+ c6.988,0.356,14.055-1.939,19.386-7.296l279.128-306.268C614.5,161.106,614.5,144.832,604.501,134.782z"
263
+ />
264
+ </g>
265
+ </g>
266
+ </g>
267
+ </svg>
268
+ <svg
269
+ *ngIf="name == 'angle-up'"
270
+ version="1.1"
271
+ id="Capa_1"
272
+ xmlns="http://www.w3.org/2000/svg"
273
+ xmlns:xlink="http://www.w3.org/1999/xlink"
274
+ x="0px"
275
+ y="0px"
276
+ width="100%"
277
+ height="100%"
278
+ viewBox="0 0 612 612"
279
+ style="enable-background:new 0 0 612 612;"
280
+ xml:space="preserve"
281
+ >
282
+ <g>
283
+ <g id="_x39__30_">
284
+ <g>
285
+ <path
286
+ d="M604.501,440.509L325.398,134.956c-5.331-5.357-12.423-7.627-19.386-7.27c-6.989-0.357-14.056,1.913-19.387,7.27
287
+ L7.499,440.509c-9.999,10.024-9.999,26.298,0,36.323s26.223,10.024,36.222,0l262.293-287.164L568.28,476.832
288
+ c9.999,10.024,26.222,10.024,36.221,0C614.5,466.809,614.5,450.534,604.501,440.509z"
289
+ />
290
+ </g>
291
+ </g>
292
+ </g>
293
+ </svg>
294
+ <svg
295
+ *ngIf="name == 'search'"
296
+ version="1.1"
297
+ id="Capa_1"
298
+ xmlns="http://www.w3.org/2000/svg"
299
+ xmlns:xlink="http://www.w3.org/1999/xlink"
300
+ x="0px"
301
+ y="0px"
302
+ width="100%"
303
+ height="100%"
304
+ viewBox="0 0 615.52 615.52"
305
+ style="enable-background:new 0 0 615.52 615.52;"
306
+ xml:space="preserve"
307
+ >
308
+ <g>
309
+ <g>
310
+ <g id="Search__x28_and_thou_shall_find_x29_">
311
+ <g>
312
+ <path
313
+ d="M602.531,549.736l-184.31-185.368c26.679-37.72,42.528-83.729,42.528-133.548C460.75,103.35,357.997,0,231.258,0
314
+ C104.518,0,1.765,103.35,1.765,230.82c0,127.47,102.753,230.82,229.493,230.82c49.53,0,95.271-15.944,132.78-42.777
315
+ l184.31,185.366c7.482,7.521,17.292,11.291,27.102,11.291c9.812,0,19.62-3.77,27.083-11.291
316
+ C617.496,589.188,617.496,564.777,602.531,549.736z M355.9,319.763l-15.042,21.273L319.7,356.174
317
+ c-26.083,18.658-56.667,28.526-88.442,28.526c-84.365,0-152.995-69.035-152.995-153.88c0-84.846,68.63-153.88,152.995-153.88
318
+ s152.996,69.034,152.996,153.88C384.271,262.769,374.462,293.526,355.9,319.763z"
319
+ />
320
+ </g>
321
+ </g>
322
+ </g>
323
+ </g>
324
+ </svg>
325
+ <svg
326
+ *ngIf="name == 'clear'"
327
+ version="1.1"
328
+ id="Capa_1"
329
+ xmlns="http://www.w3.org/2000/svg"
330
+ xmlns:xlink="http://www.w3.org/1999/xlink"
331
+ x="0px"
332
+ y="0px"
333
+ viewBox="0 0 51.976 51.976"
334
+ style="enable-background:new 0 0 51.976 51.976;"
335
+ xml:space="preserve"
336
+ >
337
+ <g>
338
+ <path
339
+ d="M44.373,7.603c-10.137-10.137-26.632-10.138-36.77,0c-10.138,10.138-10.137,26.632,0,36.77s26.632,10.138,36.77,0
340
+ C54.51,34.235,54.51,17.74,44.373,7.603z M36.241,36.241c-0.781,0.781-2.047,0.781-2.828,0l-7.425-7.425l-7.778,7.778
341
+ c-0.781,0.781-2.047,0.781-2.828,0c-0.781-0.781-0.781-2.047,0-2.828l7.778-7.778l-7.425-7.425c-0.781-0.781-0.781-2.048,0-2.828
342
+ c0.781-0.781,2.047-0.781,2.828,0l7.425,7.425l7.071-7.071c0.781-0.781,2.047-0.781,2.828,0c0.781,0.781,0.781,2.047,0,2.828
343
+ l-7.071,7.071l7.425,7.425C37.022,34.194,37.022,35.46,36.241,36.241z"
344
+ />
345
+ </g>
346
+ </svg>`,
347
+ encapsulation: ViewEncapsulation.None,
348
+ }]
349
+ }], propDecorators: { name: [{
350
+ type: Input
351
+ }] } });
352
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjItbXVsdGlzZWxlY3QtZHJvcGRvd24tbGliL3NyYy9saWIvbWVudS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBR1QsV0FBVyxFQUNYLFlBQVksRUFHWixpQkFBaUIsRUFDakIsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDOzs7QUFNdkIsTUFBTSxPQUFPLElBQUk7SUFDOEIsUUFBUSxDQUFtQjtJQUN4RSxnQkFBZSxDQUFDO3dHQUZMLElBQUk7NEZBQUosSUFBSSxvRkFDRCxXQUFXLDhEQUhmLEVBQUU7OzRGQUVELElBQUk7a0JBSmhCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFFBQVEsRUFBRSxFQUFFO2lCQUNiO3dEQUU4QyxRQUFRO3NCQUFwRCxZQUFZO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7O0FBUTdDLE1BQU0sT0FBTyxLQUFLO0lBQzZCLFFBQVEsQ0FBbUI7SUFDeEUsZ0JBQWUsQ0FBQzt3R0FGTCxLQUFLOzRGQUFMLEtBQUsscUZBQ0YsV0FBVyw4REFIZixFQUFFOzs0RkFFRCxLQUFLO2tCQUpqQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxTQUFTO29CQUNuQixRQUFRLEVBQUUsRUFBRTtpQkFDYjt3REFFOEMsUUFBUTtzQkFBcEQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOztBQVE3QyxNQUFNLE9BQU8sTUFBTTtJQUM0QixRQUFRLENBQW1CO0lBQ3hFLGdCQUFlLENBQUM7d0dBRkwsTUFBTTs0RkFBTixNQUFNLHNGQUNILFdBQVcsOERBSGYsRUFBRTs7NEZBRUQsTUFBTTtrQkFKbEIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7d0RBRThDLFFBQVE7c0JBQXBELFlBQVk7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7QUFPN0MsTUFBTSxPQUFPLGdCQUFnQjtJQUtSO0lBSlYsSUFBSSxDQUFNO0lBQ1YsSUFBSSxDQUFNO0lBQ25CLElBQUksQ0FBdUI7SUFFM0IsWUFBbUIsYUFBK0I7UUFBL0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO0lBQUcsQ0FBQztJQUN0RCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3BFLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNwQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3RCLENBQUM7d0dBZlUsZ0JBQWdCOzRGQUFoQixnQkFBZ0Isa0dBRmpCLEVBQUU7OzRGQUVELGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsRUFBRTtpQkFDYjtxRkFFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLOztBQW9KUixNQUFNLE9BQU8sS0FBSztJQUNQLElBQUksQ0FBTTt3R0FEUixLQUFLOzRGQUFMLEtBQUssd0VBbElOOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBK0hEOzs0RkFHRSxLQUFLO2tCQXBJakIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBK0hEO29CQUNULGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs4QkFFVSxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBUZW1wbGF0ZVJlZixcbiAgQ29udGVudENoaWxkLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtaXRlbScsXG4gIHRlbXBsYXRlOiBgYCxcbn0pXG5leHBvcnQgY2xhc3MgSXRlbSB7XG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYsIHsgc3RhdGljOiB0cnVlIH0pIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBjb25zdHJ1Y3RvcigpIHt9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtYmFkZ2UnLFxuICB0ZW1wbGF0ZTogYGAsXG59KVxuZXhwb3J0IGNsYXNzIEJhZGdlIHtcbiAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZiwgeyBzdGF0aWM6IHRydWUgfSkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGNvbnN0cnVjdG9yKCkge31cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1zZWFyY2gnLFxuICB0ZW1wbGF0ZTogYGAsXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaCB7XG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYsIHsgc3RhdGljOiB0cnVlIH0pIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBjb25zdHJ1Y3RvcigpIHt9XG59XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXRlbXBsYXRlUmVuZGVyZXInLFxuICB0ZW1wbGF0ZTogYGAsXG59KVxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlUmVuZGVyZXIgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcbiAgQElucHV0KCkgaXRlbTogYW55O1xuICB2aWV3OiBFbWJlZGRlZFZpZXdSZWY8YW55PjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikge31cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52aWV3ID0gdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLmRhdGEudGVtcGxhdGUsIHtcbiAgICAgICRpbXBsaWNpdDogdGhpcy5kYXRhLFxuICAgICAgaXRlbTogdGhpcy5pdGVtLFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy52aWV3LmRlc3Ryb3koKTtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLWljb24nLFxuICB0ZW1wbGF0ZTogYDxzdmdcbiAgICAgICpuZ0lmPVwibmFtZSA9PSAncmVtb3ZlJ1wiXG4gICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgIGlkPVwiQ2FwYV8xXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgIHg9XCIwcHhcIlxuICAgICAgeT1cIjBweFwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDQ3Ljk3MSA0Ny45NzFcIlxuICAgICAgc3R5bGU9XCJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ3Ljk3MSA0Ny45NzE7XCJcbiAgICAgIHhtbDpzcGFjZT1cInByZXNlcnZlXCJcbiAgICA+XG4gICAgICA8Zz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTI4LjIyOCwyMy45ODZMNDcuMDkyLDUuMTIyYzEuMTcyLTEuMTcxLDEuMTcyLTMuMDcxLDAtNC4yNDJjLTEuMTcyLTEuMTcyLTMuMDctMS4xNzItNC4yNDIsMEwyMy45ODYsMTkuNzQ0TDUuMTIxLDAuODhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYy0xLjE3Mi0xLjE3Mi0zLjA3LTEuMTcyLTQuMjQyLDBjLTEuMTcyLDEuMTcxLTEuMTcyLDMuMDcxLDAsNC4yNDJsMTguODY1LDE4Ljg2NEwwLjg3OSw0Mi44NWMtMS4xNzIsMS4xNzEtMS4xNzIsMy4wNzEsMCw0LjI0MlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDMS40NjUsNDcuNjc3LDIuMjMzLDQ3Ljk3LDMsNDcuOTdzMS41MzUtMC4yOTMsMi4xMjEtMC44NzlsMTguODY1LTE4Ljg2NEw0Mi44NSw0Ny4wOTFjMC41ODYsMC41ODYsMS4zNTQsMC44NzksMi4xMjEsMC44NzlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgczEuNTM1LTAuMjkzLDIuMTIxLTAuODc5YzEuMTcyLTEuMTcxLDEuMTcyLTMuMDcxLDAtNC4yNDJMMjguMjI4LDIzLjk4NnpcIlxuICAgICAgICAvPlxuICAgICAgPC9nPlxuICAgIDwvc3ZnPlxuICAgIDxzdmdcbiAgICAgICpuZ0lmPVwibmFtZSA9PSAnYW5nbGUtZG93bidcIlxuICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICBpZD1cIkNhcGFfMVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICB4PVwiMHB4XCJcbiAgICAgIHk9XCIwcHhcIlxuICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgdmlld0JveD1cIjAgMCA2MTIgNjEyXCJcbiAgICAgIHN0eWxlPVwiZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA2MTIgNjEyO1wiXG4gICAgICB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiXG4gICAgPlxuICAgICAgPGc+XG4gICAgICAgIDxnIGlkPVwiX3gzMV8wXzM0X1wiPlxuICAgICAgICAgIDxnPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgZD1cIk02MDQuNTAxLDEzNC43ODJjLTkuOTk5LTEwLjA1LTI2LjIyMi0xMC4wNS0zNi4yMjEsMEwzMDYuMDE0LDQyMi41NThMNDMuNzIxLDEzNC43ODJcblx0XHRcdFx0Yy05Ljk5OS0xMC4wNS0yNi4yMjMtMTAuMDUtMzYuMjIyLDBzLTkuOTk5LDI2LjM1LDAsMzYuMzk5bDI3OS4xMDMsMzA2LjI0MWM1LjMzMSw1LjM1NywxMi40MjIsNy42NTIsMTkuMzg2LDcuMjk2XG5cdFx0XHRcdGM2Ljk4OCwwLjM1NiwxNC4wNTUtMS45MzksMTkuMzg2LTcuMjk2bDI3OS4xMjgtMzA2LjI2OEM2MTQuNSwxNjEuMTA2LDYxNC41LDE0NC44MzIsNjA0LjUwMSwxMzQuNzgyelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgIDwvc3ZnPlxuICAgIDxzdmdcbiAgICAgICpuZ0lmPVwibmFtZSA9PSAnYW5nbGUtdXAnXCJcbiAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgaWQ9XCJDYXBhXzFcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgICAgeD1cIjBweFwiXG4gICAgICB5PVwiMHB4XCJcbiAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgNjEyIDYxMlwiXG4gICAgICBzdHlsZT1cImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjEyIDYxMjtcIlxuICAgICAgeG1sOnNwYWNlPVwicHJlc2VydmVcIlxuICAgID5cbiAgICAgIDxnPlxuICAgICAgICA8ZyBpZD1cIl94MzlfXzMwX1wiPlxuICAgICAgICAgIDxnPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgZD1cIk02MDQuNTAxLDQ0MC41MDlMMzI1LjM5OCwxMzQuOTU2Yy01LjMzMS01LjM1Ny0xMi40MjMtNy42MjctMTkuMzg2LTcuMjdjLTYuOTg5LTAuMzU3LTE0LjA1NiwxLjkxMy0xOS4zODcsNy4yN1xuXHRcdFx0XHRMNy40OTksNDQwLjUwOWMtOS45OTksMTAuMDI0LTkuOTk5LDI2LjI5OCwwLDM2LjMyM3MyNi4yMjMsMTAuMDI0LDM2LjIyMiwwbDI2Mi4yOTMtMjg3LjE2NEw1NjguMjgsNDc2LjgzMlxuXHRcdFx0XHRjOS45OTksMTAuMDI0LDI2LjIyMiwxMC4wMjQsMzYuMjIxLDBDNjE0LjUsNDY2LjgwOSw2MTQuNSw0NTAuNTM0LDYwNC41MDEsNDQwLjUwOXpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvZz5cbiAgICA8L3N2Zz5cbiAgICA8c3ZnXG4gICAgICAqbmdJZj1cIm5hbWUgPT0gJ3NlYXJjaCdcIlxuICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICBpZD1cIkNhcGFfMVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICB4PVwiMHB4XCJcbiAgICAgIHk9XCIwcHhcIlxuICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgdmlld0JveD1cIjAgMCA2MTUuNTIgNjE1LjUyXCJcbiAgICAgIHN0eWxlPVwiZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA2MTUuNTIgNjE1LjUyO1wiXG4gICAgICB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiXG4gICAgPlxuICAgICAgPGc+XG4gICAgICAgIDxnPlxuICAgICAgICAgIDxnIGlkPVwiU2VhcmNoX194MjhfYW5kX3Rob3Vfc2hhbGxfZmluZF94MjlfXCI+XG4gICAgICAgICAgICA8Zz5cbiAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICBkPVwiTTYwMi41MzEsNTQ5LjczNmwtMTg0LjMxLTE4NS4zNjhjMjYuNjc5LTM3LjcyLDQyLjUyOC04My43MjksNDIuNTI4LTEzMy41NDhDNDYwLjc1LDEwMy4zNSwzNTcuOTk3LDAsMjMxLjI1OCwwXG5cdFx0XHRcdFx0QzEwNC41MTgsMCwxLjc2NSwxMDMuMzUsMS43NjUsMjMwLjgyYzAsMTI3LjQ3LDEwMi43NTMsMjMwLjgyLDIyOS40OTMsMjMwLjgyYzQ5LjUzLDAsOTUuMjcxLTE1Ljk0NCwxMzIuNzgtNDIuNzc3XG5cdFx0XHRcdFx0bDE4NC4zMSwxODUuMzY2YzcuNDgyLDcuNTIxLDE3LjI5MiwxMS4yOTEsMjcuMTAyLDExLjI5MWM5LjgxMiwwLDE5LjYyLTMuNzcsMjcuMDgzLTExLjI5MVxuXHRcdFx0XHRcdEM2MTcuNDk2LDU4OS4xODgsNjE3LjQ5Niw1NjQuNzc3LDYwMi41MzEsNTQ5LjczNnogTTM1NS45LDMxOS43NjNsLTE1LjA0MiwyMS4yNzNMMzE5LjcsMzU2LjE3NFxuXHRcdFx0XHRcdGMtMjYuMDgzLDE4LjY1OC01Ni42NjcsMjguNTI2LTg4LjQ0MiwyOC41MjZjLTg0LjM2NSwwLTE1Mi45OTUtNjkuMDM1LTE1Mi45OTUtMTUzLjg4YzAtODQuODQ2LDY4LjYzLTE1My44OCwxNTIuOTk1LTE1My44OFxuXHRcdFx0XHRcdHMxNTIuOTk2LDY5LjAzNCwxNTIuOTk2LDE1My44OEMzODQuMjcxLDI2Mi43NjksMzc0LjQ2MiwyOTMuNTI2LDM1NS45LDMxOS43NjN6XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvZz5cbiAgICA8L3N2Zz5cbiAgICA8c3ZnXG4gICAgICAqbmdJZj1cIm5hbWUgPT0gJ2NsZWFyJ1wiXG4gICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgIGlkPVwiQ2FwYV8xXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgIHg9XCIwcHhcIlxuICAgICAgeT1cIjBweFwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDUxLjk3NiA1MS45NzZcIlxuICAgICAgc3R5bGU9XCJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDUxLjk3NiA1MS45NzY7XCJcbiAgICAgIHhtbDpzcGFjZT1cInByZXNlcnZlXCJcbiAgICA+XG4gICAgICA8Zz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTQ0LjM3Myw3LjYwM2MtMTAuMTM3LTEwLjEzNy0yNi42MzItMTAuMTM4LTM2Ljc3LDBjLTEwLjEzOCwxMC4xMzgtMTAuMTM3LDI2LjYzMiwwLDM2Ljc3czI2LjYzMiwxMC4xMzgsMzYuNzcsMFxuXHRcdEM1NC41MSwzNC4yMzUsNTQuNTEsMTcuNzQsNDQuMzczLDcuNjAzeiBNMzYuMjQxLDM2LjI0MWMtMC43ODEsMC43ODEtMi4wNDcsMC43ODEtMi44MjgsMGwtNy40MjUtNy40MjVsLTcuNzc4LDcuNzc4XG5cdFx0Yy0wLjc4MSwwLjc4MS0yLjA0NywwLjc4MS0yLjgyOCwwYy0wLjc4MS0wLjc4MS0wLjc4MS0yLjA0NywwLTIuODI4bDcuNzc4LTcuNzc4bC03LjQyNS03LjQyNWMtMC43ODEtMC43ODEtMC43ODEtMi4wNDgsMC0yLjgyOFxuXHRcdGMwLjc4MS0wLjc4MSwyLjA0Ny0wLjc4MSwyLjgyOCwwbDcuNDI1LDcuNDI1bDcuMDcxLTcuMDcxYzAuNzgxLTAuNzgxLDIuMDQ3LTAuNzgxLDIuODI4LDBjMC43ODEsMC43ODEsMC43ODEsMi4wNDcsMCwyLjgyOFxuXHRcdGwtNy4wNzEsNy4wNzFsNy40MjUsNy40MjVDMzcuMDIyLDM0LjE5NCwzNy4wMjIsMzUuNDYsMzYuMjQxLDM2LjI0MXpcIlxuICAgICAgICAvPlxuICAgICAgPC9nPlxuICAgIDwvc3ZnPmAsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIENJY29uIHtcbiAgQElucHV0KCkgbmFtZTogYW55O1xufVxuIl19