@wizco/fenixds-ngx 17.0.16 → 17.0.18

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.
@@ -1,5 +1,5 @@
1
- import { CommonModule } from "@angular/common";
2
- import { Component, Input, ViewEncapsulation } from "@angular/core";
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input, ViewEncapsulation, } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/platform-browser";
5
5
  export class SmartSelectOptionComponent {
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
45
45
  }], viewOnly: [{
46
46
  type: Input
47
47
  }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2VsZWN0LW9wdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvbmVudHMvc3JjL2xpYi9zbWFydC1zZWxlY3Qvc21hcnQtc2VsZWN0LW9wdGlvbnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWlCLFNBQVMsRUFBYyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVUvRixNQUFNLE9BQU8sMEJBQTBCO0lBUWpCO0lBQXdCO0lBUG5DLEtBQUssQ0FBTTtJQUNYLEtBQUssQ0FBVTtJQUNmLFVBQVUsQ0FBVTtJQUNwQixRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLFFBQVEsR0FBRyxLQUFLLENBQUE7SUFDekIsZUFBZSxDQUF1QjtJQUV0QyxZQUFvQixFQUFjLEVBQVUsU0FBdUI7UUFBL0MsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQWM7SUFBRyxDQUFDO0lBRXZFLGVBQWU7UUFDYixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWU7WUFDbEIsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUM7Z0JBQ3hELENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDbEIsQ0FBQzt3R0FoQlUsMEJBQTBCOzRGQUExQiwwQkFBMEIscU1BSDNCLDJCQUEyQiwyREFEM0IsWUFBWTs7NEZBSVgsMEJBQTBCO2tCQVB0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs0SEFFVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3djby1zbWFydC1zZWxlY3Qtb3B0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0U2VsZWN0T3B0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG4gIEBJbnB1dCgpIGxhYmVsITogc3RyaW5nO1xuICBASW5wdXQoKSBpY29uUHJlZml4ITogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIHZpZXdPbmx5ID0gZmFsc2VcbiAgc2FmZUh0bWxDb250ZW50OiBTYWZlSHRtbCB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCByYXdIdG1sQ29udGVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5pbm5lckhUTUwudHJpbSgpO1xuICAgIHRoaXMuc2FmZUh0bWxDb250ZW50ID1cbiAgICAgIHJhd0h0bWxDb250ZW50Lmxlbmd0aCA+IDBcbiAgICAgICAgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChyYXdIdG1sQ29udGVudClcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2VsZWN0LW9wdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvbmVudHMvc3JjL2xpYi9zbWFydC1zZWxlY3Qvc21hcnQtc2VsZWN0LW9wdGlvbnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBRUwsU0FBUyxFQUVULEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7OztBQVV2QixNQUFNLE9BQU8sMEJBQTBCO0lBUWpCO0lBQXdCO0lBUG5DLEtBQUssQ0FBTTtJQUNYLEtBQUssQ0FBVTtJQUNmLFVBQVUsQ0FBVTtJQUNwQixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDMUIsZUFBZSxDQUF1QjtJQUV0QyxZQUFvQixFQUFjLEVBQVUsU0FBdUI7UUFBL0MsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQWM7SUFBRyxDQUFDO0lBRXZFLGVBQWU7UUFDYixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWU7WUFDbEIsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUM7Z0JBQ3hELENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDbEIsQ0FBQzt3R0FoQlUsMEJBQTBCOzRGQUExQiwwQkFBMEIscU1BSDNCLDJCQUEyQiwyREFEM0IsWUFBWTs7NEZBSVgsMEJBQTBCO2tCQVB0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs0SEFFVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2NvLXNtYXJ0LXNlbGVjdC1vcHRpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU21hcnRTZWxlY3RPcHRpb25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgdmFsdWU6IGFueTtcbiAgQElucHV0KCkgbGFiZWwhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGljb25QcmVmaXghOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHZpZXdPbmx5ID0gZmFsc2U7XG4gIHNhZmVIdG1sQ29udGVudDogU2FmZUh0bWwgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgcmF3SHRtbENvbnRlbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MLnRyaW0oKTtcbiAgICB0aGlzLnNhZmVIdG1sQ29udGVudCA9XG4gICAgICByYXdIdG1sQ29udGVudC5sZW5ndGggPiAwXG4gICAgICAgID8gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwocmF3SHRtbENvbnRlbnQpXG4gICAgICAgIDogdW5kZWZpbmVkO1xuICB9XG59XG4iXX0=
@@ -1,12 +1,13 @@
1
- import { Component, ContentChildren, Input, ViewEncapsulation, forwardRef } from '@angular/core';
1
+ import { Component, ContentChildren, EventEmitter, Input, Output, ViewEncapsulation, forwardRef, } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { FormControl, FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
3
+ import { FormControl, FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, ReactiveFormsModule, } from '@angular/forms';
4
4
  import { SmartSelectOptionComponent } from './smart-select-options.component';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/common";
7
7
  export class SmartSelectComponent {
8
8
  el;
9
9
  options;
10
+ onChange = new EventEmitter();
10
11
  /* Id do elemento */
11
12
  inputId = 'select_' + Math.random().toString(36).substring(2);
12
13
  /* Attr name do elemento */
@@ -21,7 +22,9 @@ export class SmartSelectComponent {
21
22
  textEmpty = 'Não há resultados para a busca';
22
23
  /* habilitar opção de multiplas seleções */
23
24
  multiSelect = false;
24
- /* Tipos pré definidos de checkbox, radio ou icon */
25
+ /* Limitar visualização de itens selecionados */
26
+ showMaxSelectedLabel = 0;
27
+ /* Tipos pré definidos de checkbox, radio ou null */
25
28
  typePrefix = null;
26
29
  isMobile = window.innerWidth <= 768;
27
30
  formValue;
@@ -50,10 +53,17 @@ export class SmartSelectComponent {
50
53
  registerOnTouched(fn) {
51
54
  this.onTouched = fn;
52
55
  }
53
- validate({ value }) {
54
- const validator = !!value && value.length > 0 ? null : { invalid: true };
55
- this.autocompleteControl.setErrors(validator);
56
- return validator;
56
+ validate(_control) {
57
+ if (this.multiSelect) {
58
+ if (this.formValue?.length) {
59
+ return null;
60
+ }
61
+ return { required: true };
62
+ }
63
+ if (this.formValue) {
64
+ return null;
65
+ }
66
+ return { required: true };
57
67
  }
58
68
  setDisabledState(isDisabled) {
59
69
  if (isDisabled) {
@@ -101,46 +111,126 @@ export class SmartSelectComponent {
101
111
  if (option.disabled || option.viewOnly) {
102
112
  return;
103
113
  }
114
+ const oldValue = this.formValue;
104
115
  if (this.multiSelect) {
105
- if (this.formValue?.includes(option.value)) {
106
- this.formValue = this.formValue.filter((item) => item !== option.value);
107
- this.autocompleteControl.setValue(this.formValue);
108
- return;
116
+ if (typeof option.value === 'object') {
117
+ const list = this.compareMultiValuesArray(option);
118
+ const hasValueOption = list.some((item) => item.selected);
119
+ if (hasValueOption) {
120
+ this.formValue = list
121
+ .filter((item) => !item.selected)
122
+ .map((item) => item.item);
123
+ }
124
+ else {
125
+ this.formValue = [...(this.formValue || []), option.value];
126
+ }
109
127
  }
110
- console.log('entrou aqui', typeof this.formValue);
111
- // is Array []
112
- if (!!this.formValue === false) {
113
- this.formValue = [];
114
- this.autocompleteControl.setValue(this.formValue);
128
+ else {
129
+ const index = this.formValue?.indexOf(option.value);
130
+ if (index !== undefined && index > -1) {
131
+ this.formValue?.splice(index, 1);
132
+ }
133
+ else {
134
+ this.formValue = [...(this.formValue || []), option.value];
135
+ }
115
136
  }
116
- this.formValue = [...this.formValue, option.value];
117
137
  this.autocompleteControl.setValue(this.formValue);
118
138
  }
119
139
  else {
120
140
  this.formValue = option.value;
121
141
  this.autocompleteControl.setValue(option.value);
122
- }
123
- if (!this.multiSelect) {
124
142
  this.showList = false;
125
143
  }
144
+ if (oldValue !== this.formValue) {
145
+ this.onChange.emit({ type: 'updateValue', value: this.formValue });
146
+ }
147
+ this.renderBoxOptions();
126
148
  }
127
149
  // Show label span
128
150
  get selectedLabel() {
129
- const selectedOption = this.options?.find((option) => option.value === this.formValue);
151
+ const selectedOption = this.options?.find((option) => this.normalizeText(String(option.value)) ===
152
+ this.normalizeText(String(this.formValue)));
130
153
  return selectedOption?.label || ' ';
131
154
  }
132
155
  // show label multi select
133
156
  get selectedLabelMulti() {
134
- if (typeof this.formValue === 'string') {
135
- return this.selectedLabel;
157
+ const selectedOptions = this.options?.filter((option) => {
158
+ if (typeof option.value === 'object') {
159
+ return this.compareValueArray(option);
160
+ }
161
+ else {
162
+ return this.formValue?.includes(option.value);
163
+ }
164
+ });
165
+ if (!selectedOptions?.length) {
166
+ return [];
136
167
  }
168
+ if (!this.showMaxSelectedLabel) {
169
+ return selectedOptions;
170
+ }
171
+ if (this.showMaxSelectedLabel &&
172
+ selectedOptions.length > this.showMaxSelectedLabel) {
173
+ return selectedOptions.slice(0, this.showMaxSelectedLabel);
174
+ }
175
+ return selectedOptions;
176
+ }
177
+ valueToArray(options) {
178
+ const keys = Object.keys(options);
179
+ const value = [];
180
+ keys.forEach((key) => {
181
+ if (options[key] &&
182
+ options[key] !== '' &&
183
+ typeof options[key] !== 'object' &&
184
+ typeof options[key] !== 'function' &&
185
+ typeof options[key] !== 'boolean') {
186
+ value.push(options[key]);
187
+ }
188
+ });
189
+ return value;
190
+ }
191
+ compareValueArray(option, value = this.formValue) {
192
+ if (option && option.value) {
193
+ const valuesItems = this.valueToArray(option.value);
194
+ return value.some((item) => {
195
+ const itemArray = this.valueToArray(item);
196
+ return itemArray.every((itemValue) => valuesItems.includes(itemValue));
197
+ });
198
+ }
199
+ return [];
200
+ }
201
+ compareMultiValuesArray(option, value = this.formValue) {
202
+ if (option && option.value) {
203
+ const valuesItems = this.valueToArray(option.value);
204
+ const formValueArray = value.map((item, index) => {
205
+ const itemArray = this.valueToArray(item);
206
+ return {
207
+ index,
208
+ item,
209
+ selected: itemArray.some((itemValue) => valuesItems.includes(itemValue)),
210
+ };
211
+ });
212
+ // Remove duplicate items
213
+ const uniqueFormValueArray = Array.from(new Set(formValueArray.map((item) => JSON.stringify(item)))).map((item) => JSON.parse(item));
214
+ return uniqueFormValueArray;
215
+ }
216
+ return [];
217
+ }
218
+ get selectedLabelMultiCount() {
219
+ const show = this.showMaxSelectedLabel || 0;
137
220
  const selectedOptions = this.options?.filter((option) => this.formValue?.includes(option.value));
138
221
  if (!selectedOptions?.length) {
139
- return `<span class="wco-smart-select-placeholder">${this.placeholder}</span>`;
222
+ return 0;
140
223
  }
141
- return selectedOptions.map((option) => {
142
- return ` <span class='wco-smart-select-item'>${option.label}</span>`;
143
- }).join('').toString();
224
+ if (show > 0 && selectedOptions.length > show) {
225
+ return selectedOptions.length - show;
226
+ }
227
+ return 0;
228
+ }
229
+ removeItem(option) {
230
+ this.onSelect(option);
231
+ setTimeout(() => {
232
+ this.showList = false;
233
+ }, 100);
144
234
  }
145
235
  onKeyPress(event) {
146
236
  event.preventDefault();
@@ -173,7 +263,18 @@ export class SmartSelectComponent {
173
263
  }
174
264
  selectedValue(option) {
175
265
  if (this.multiSelect) {
176
- return this.formValue?.includes(option.value);
266
+ if (typeof option.value === 'object') {
267
+ if (option && option.value) {
268
+ const valuesItems = this.valueToArray(option.value);
269
+ return this.formValue.some((item) => {
270
+ const itemArray = this.valueToArray(item);
271
+ return itemArray.every((itemValue) => valuesItems.includes(itemValue));
272
+ });
273
+ }
274
+ }
275
+ else {
276
+ return this.formValue?.includes(option.value);
277
+ }
177
278
  }
178
279
  return option.value === this.formValue;
179
280
  }
@@ -188,7 +289,7 @@ export class SmartSelectComponent {
188
289
  iconPrefix: option.iconPrefix,
189
290
  htmlLabel: option.safeHtmlContent || option.label,
190
291
  disabled: option.disabled,
191
- viewOnly: option.viewOnly
292
+ viewOnly: option.viewOnly,
192
293
  };
193
294
  })
194
295
  .filter((option) => {
@@ -206,7 +307,7 @@ export class SmartSelectComponent {
206
307
  .toLowerCase();
207
308
  }
208
309
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SmartSelectComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
209
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SmartSelectComponent, isStandalone: true, selector: "wco-smart-select", inputs: { inputId: "inputId", inputName: "inputName", IconMaterial: "IconMaterial", placeholder: "placeholder", label: "label", showSearch: "showSearch", textEmpty: "textEmpty", multiSelect: "multiSelect", typePrefix: "typePrefix" }, providers: [
310
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SmartSelectComponent, isStandalone: true, selector: "wco-smart-select", inputs: { inputId: "inputId", inputName: "inputName", IconMaterial: "IconMaterial", placeholder: "placeholder", label: "label", showSearch: "showSearch", textEmpty: "textEmpty", multiSelect: "multiSelect", showMaxSelectedLabel: "showMaxSelectedLabel", typePrefix: "typePrefix" }, outputs: { onChange: "onChange" }, providers: [
210
311
  {
211
312
  provide: NG_VALUE_ACCESSOR,
212
313
  useExisting: forwardRef(() => SmartSelectComponent),
@@ -217,7 +318,7 @@ export class SmartSelectComponent {
217
318
  useExisting: SmartSelectComponent,
218
319
  multi: true,
219
320
  },
220
- ], queries: [{ propertyName: "options", predicate: SmartSelectOptionComponent }], ngImport: i0, template: "\n<div \nclass=\"wco-smartSelect\"\n[ngClass]=\"{\n 'wco-smartSelect--open': showList,\n 'wco-smartSelect--isMobile': isMobile,\n}\"\n(resize)=\"onResize()\"\n(mouseleave)=\"onFocusOut()\"\n>\n <div class=\"form-field\">\n <input \n *ngIf=\"!multiSelect\" \n class=\"form-field__input\" \n [ngClass]=\"{'form-field--error': autocompleteControl.invalid && autocompleteControl.touched}\"\n [disabled]=\"autocompleteControl.disabled\"\n id=\"{{ inputId ? inputId : '' }}\"\n name=\"{{ inputName ? inputName : '' }}\" \n (click)=\"onFocusIn(true)\" \n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\" \n (keypress)=\"onKeyPress($event)\"\n [placeholder]=\"placeholder\" \n type=\"text\"\n [value]=\"selectedLabel\"\n aria-label=\"Selecione uma op\u00E7\u00E3o\"\n />\n <div \n *ngIf=\"multiSelect\" \n class=\"form-field__input readonly multiSelect\" \n [ngClass]=\"{\n 'form-field--error': autocompleteControl.invalid && autocompleteControl.touched,\n 'form-field--disabled': autocompleteControl.disabled,\n }\"\n (click)=\"onFocusIn(true)\" \n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\" \n [innerHTML]=\"selectedLabelMulti\"\n >\n </div>\n <label>{{label}}</label>\n <span class=\"material-icons\">{{IconMaterial}}</span>\n </div>\n <div \n class=\"wco-smartSelect--box\" \n [ngClass]=\"{'wco-smartSelect--box--open': showList && !autocompleteControl.disabled}\"\n >\n <div class=\"wco-smartSelect--isMobile-close\">\n <button (click)=\"closeList()\" class=\"btn btn-sm btn-primary btn-outline mb-nano\">fechar</button>\n </div>\n <ul>\n <li tabindex=\"0\" class=\"wco-smart-selected-filter\" *ngIf=\"showList && showSearch\">\n <input \n placeholder=\"buscar\"\n (keyup)=\"onFilter($event)\"\n aria-label=\"Search through site content\"\n type=\"text\" \n />\n </li>\n <li \n *ngFor=\"let option of filteredOptions; let i = index\"\n [tabindex]=\"i + 1\"\n [ngClass]=\"{\n 'wco-smart-selected': selectedValue(option),\n 'wc-smart-select-disabled-option': option.disabled,\n 'wc-smart-select-view-only-option': option.viewOnly,\n }\"\n (click)=\"onSelect(option)\"\n >\n <span class=\"wco-smart-select-label-prefix\">\n <ng-container *ngIf=\"typePrefix === 'checkbox'\">\n <span class=\"material-icons-outlined\">\n {{selectedValue(option) ? 'check_box' : 'check_box_outline_blank'}}\n </span>\n </ng-container>\n <ng-container *ngIf=\"typePrefix === 'radio'\">\n <span class=\"material-icons-outlined\">\n {{selectedValue(option) ? 'radio_button_checked' : 'radio_button_unchecked'}}\n </span>\n </ng-container>\n <ng-container *ngIf=\"!!option.iconPrefix && typePrefix !== 'radio' && typePrefix !== 'checkbox'\">\n <span class=\"material-icons-outlined\">\n {{option.iconPrefix}}\n </span>\n </ng-container>\n </span>\n <span class=\"wco-smart-select-label\" [innerHTML]=\"option.htmlLabel\"></span>\n </li>\n <li *ngIf=\"!filteredOptions.length\">\n <p class=\"display-body\">{{textEmpty}}</p>\n </li>\n </ul>\n </div>\n</div>", styles: [".wco-smartSelect{width:100%;position:relative;display:inline-block;--wco-smart-select-box-height: 0px;--wco-smart-select-box-max-height: 300px;--wco-smart-select-box-radius: 8px;--wco-smart-select-box-shadow: var(--wco-shadow-level-1, 0 2px 4px rgba(0, 0, 0, .2));--wco-smart-select-box-default-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-default-color-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-box-default-padding: var(--wco-spacing-nano) var(--wco-spacing-xxxs);--wco-smart-select-box-hover-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-hover-color-bg: var(--wco-color-neutral-300, #bdbdbd);--wco-smart-select-box-selected-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-selected-color-bg: var(--wco-color-primary-100, #819ed3);--wco-smart-select-option-disabled-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-option-disabled-color: var(--wco-color-neutral-500, #9e9e9e);--wco-smart-select-box-option-height: 48px}.wco-smartSelect--open{--wco-smart-select-box-height: auto }.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--isMobile-close{display:flex;padding:var(--wco-spacing-nano);align-items:center;justify-content:flex-end}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box{position:fixed;bottom:0;left:0;width:100%}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open{padding:0}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open ul,.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open input{border-radius:0}.wco-smartSelect .wco-smartSelect--isMobile-close{display:none}.wco-smartSelect input{cursor:pointer}.wco-smartSelect .form-field__input.multiSelect{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:var(--wco-spacing-nano)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-placeholder{opacity:.5}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item{display:inline-flex;align-items:center;justify-content:center;padding:var(--wco-spacing-quark) var(--wco-spacing-nano);border-radius:var(--wco-smart-select-box-radius);background-color:var(--wco-smart-select-box-default-color-bg)}.wco-smartSelect .wco-smartSelect--box{position:absolute;left:-12px;width:calc(100% + 24px);z-index:999;display:grid;grid-template-columns:1fr;grid-template-rows:var(--wco-smart-select-box-height, 0px);max-height:var(--wco-smart-select-box-max-height);transition:all .4s ease-in-out,padding 0ms linear;padding:0;opacity:0;visibility:hidden;pointer-events:none}.wco-smartSelect .wco-smartSelect--box.wco-smartSelect--box--open{pointer-events:all;padding:var(--wco-spacing-nano) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs);animation:introSmartSelectBox .4s ease-in-out .1s forwards}@keyframes introSmartSelectBox{0%{opacity:0;visibility:hidden;transform:translateY(-10px)}to{opacity:1;visibility:visible;transform:translateY(0)}}.wco-smartSelect .wco-smartSelect--box ul{border-top:none;border-radius:var(--wco-smart-select-box-radius);box-shadow:var(--wco-smart-select-box-shadow);background-color:var(--wco-smart-select-box-default-color-bg);overflow-y:auto;overflow-x:hidden;max-height:var(--wco-smart-select-box-max-height)}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar{width:8px}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-track{background-color:transparent}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-thumb{border-radius:99px;background-color:var(--wco-color-neutral-500, #9e9e9e)}.wco-smartSelect .wco-smartSelect--box ul li{color:var(--wco-smart-select-box-default-color-label);padding:var(--wco-smart-select-box-default-padding);display:grid;width:100%;align-items:center;justify-content:flex-start;grid-template-columns:auto 1fr auto;gap:var(--wco-spacing-xxxs);font-family:var(--wco-font-family);font-size:var(--wco-font-size-xs);font-weight:400;line-height:var(--wco-font-lineheight-500);letter-spacing:.4px;min-height:var(--wco-smart-select-box-option-height)}.wco-smartSelect .wco-smartSelect--box ul li .wco-smart-select-label-prefix{display:inline-flex;align-items:center}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter{padding:0;align-items:stretch;display:flex}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input{width:100%;height:auto;padding:var(--wco-smart-select-box-default-padding);border:none;border-bottom:1px solid #ccc;border-radius:var(--wco-smart-select-box-radius) var(--wco-smart-select-box-radius) 0 0}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input:focus{outline:none}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter){cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):hover{background-color:var(--wco-smart-select-box-hover-color-bg);color:var(--wco-smart-select-box-hover-color-label);cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):focus,.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):active{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label)}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter).wco-smart-selected{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label);font-weight:600}.wco-smartSelect .wco-smartSelect--box ul li.wc-smart-select-disabled-option{background-color:var(--wco-smart-select-option-disabled-bg);color:var(--wco-smart-select-option-disabled-color);cursor:not-allowed}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: FormsModule }], encapsulation: i0.ViewEncapsulation.None });
321
+ ], queries: [{ propertyName: "options", predicate: SmartSelectOptionComponent }], ngImport: i0, template: "<div\n class=\"wco-smartSelect\"\n [ngClass]=\"{\n 'wco-smartSelect--open': showList,\n 'wco-smartSelect--isMobile': isMobile,\n}\"\n (resize)=\"onResize()\"\n (mouseleave)=\"onFocusOut()\"\n>\n <div class=\"form-field\">\n <input\n *ngIf=\"!multiSelect\"\n class=\"form-field__input\"\n [ngClass]=\"{\n 'form-field--error':\n autocompleteControl.invalid && autocompleteControl.touched\n }\"\n [disabled]=\"autocompleteControl.disabled\"\n id=\"{{ inputId ? inputId : '' }}\"\n name=\"{{ inputName ? inputName : '' }}\"\n (click)=\"onFocusIn(true)\"\n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\"\n (keypress)=\"onKeyPress($event)\"\n [placeholder]=\"placeholder\"\n type=\"text\"\n [value]=\"selectedLabel\"\n aria-label=\"Selecione uma op\u00E7\u00E3o\"\n />\n <div\n *ngIf=\"multiSelect\"\n class=\"form-field__input readonly multiSelect\"\n [ngClass]=\"{\n 'form-field--error': autocompleteControl.invalid && autocompleteControl.touched,\n 'form-field--disabled': autocompleteControl.disabled,\n }\"\n (click)=\"onFocusIn(true)\"\n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\"\n >\n <ng-container *ngIf=\"!selectedLabelMulti.length\">\n <span class=\"wco-smart-select-placeholder\">{{ placeholder || 'Selecione uma op\u00E7\u00E3o' }}</span>\n </ng-container>\n <ng-container *ngIf=\"selectedLabelMulti.length\">\n <span *ngFor=\"let optionSelected of selectedLabelMulti\" class=\"wco-smart-select-item\">\n {{optionSelected.label}} \n <span class=\"wco-smart-select-remove\" (click)=\"removeItem(optionSelected)\">\n <span class=\"material-icons\">close</span>\n </span>\n </span>\n <span class=\"wco-smart-select-item\" *ngIf=\"selectedLabelMultiCount >= 1\">\n +{{selectedLabelMultiCount}} \n </span>\n </ng-container>\n </div>\n <label>{{ label }}</label>\n <span class=\"material-icons\">{{ IconMaterial }}</span>\n </div>\n <div\n class=\"wco-smartSelect--box\"\n [ngClass]=\"{\n 'wco-smartSelect--box--open': showList && !autocompleteControl.disabled\n }\"\n >\n <div class=\"wco-smartSelect--isMobile-close\">\n <button\n (click)=\"closeList()\"\n class=\"btn btn-sm btn-primary btn-outline mb-nano\"\n >\n fechar\n </button>\n </div>\n <ul>\n <li\n tabindex=\"0\"\n class=\"wco-smart-selected-filter\"\n *ngIf=\"showList && showSearch\"\n >\n <input\n placeholder=\"buscar\"\n (keyup)=\"onFilter($event)\"\n aria-label=\"Search through site content\"\n type=\"text\"\n />\n </li>\n <li\n *ngFor=\"let option of filteredOptions; let i = index\"\n [tabindex]=\"i + 1\"\n [ngClass]=\"{\n 'wco-smart-selected': selectedValue(option),\n 'wc-smart-select-disabled-option': option.disabled,\n 'wc-smart-select-view-only-option': option.viewOnly,\n }\"\n (click)=\"onSelect(option)\"\n >\n <span class=\"wco-smart-select-label-prefix\">\n <ng-container *ngIf=\"typePrefix === 'checkbox'\">\n <span class=\"material-icons-outlined\">\n {{\n selectedValue(option) ? \"check_box\" : \"check_box_outline_blank\"\n }}\n </span>\n </ng-container>\n <ng-container *ngIf=\"typePrefix === 'radio'\">\n <span class=\"material-icons-outlined\">\n {{\n selectedValue(option)\n ? \"radio_button_checked\"\n : \"radio_button_unchecked\"\n }}\n </span>\n </ng-container>\n <ng-container\n *ngIf=\"\n !!option.iconPrefix &&\n typePrefix !== 'radio' &&\n typePrefix !== 'checkbox'\n \"\n >\n <span class=\"material-icons-outlined\">\n {{ option.iconPrefix }}\n </span>\n </ng-container>\n </span>\n <span\n class=\"wco-smart-select-label\"\n [innerHTML]=\"option.htmlLabel\"\n ></span>\n </li>\n <li *ngIf=\"!filteredOptions.length\">\n <p class=\"display-body\">{{ textEmpty }}</p>\n </li>\n </ul>\n </div>\n</div>\n", styles: [".wco-smartSelect{width:100%;position:relative;display:inline-block;--wco-smart-select-box-height: 0px;--wco-smart-select-box-max-height: 300px;--wco-smart-select-box-radius: 8px;--wco-smart-select-box-shadow: var(--wco-shadow-level-1, 0 2px 4px rgba(0, 0, 0, .2));--wco-smart-select-box-default-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-default-color-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-box-default-padding: var(--wco-spacing-nano) var(--wco-spacing-xxxs);--wco-smart-select-box-hover-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-hover-color-bg: var(--wco-color-neutral-300, #bdbdbd);--wco-smart-select-box-selected-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-selected-color-bg: var(--wco-color-primary-100, #819ed3);--wco-smart-select-option-disabled-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-option-disabled-color: var(--wco-color-neutral-500, #9e9e9e);--wco-smart-select-box-option-height: 48px}.wco-smartSelect--open{--wco-smart-select-box-height: auto }.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--isMobile-close{display:flex;padding:var(--wco-spacing-nano);align-items:center;justify-content:flex-end}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box{position:fixed;bottom:0;left:0;width:100%}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open{padding:0}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open ul,.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open input{border-radius:0}.wco-smartSelect .wco-smartSelect--isMobile-close{display:none}.wco-smartSelect input{cursor:pointer}.wco-smartSelect .form-field__input.multiSelect{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:var(--wco-spacing-nano);padding-right:var(--wco-spacing-sm)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-placeholder{opacity:.5}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item{display:inline-flex;align-items:center;justify-content:center;padding:var(--wco-spacing-quark) var(--wco-spacing-xxs);border-radius:var(--wco-smart-select-box-radius);background-color:var(--wco-smart-select-box-default-color-bg);position:relative}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item:hover>span{width:calc(var(--wco-spacing-xxs) - 2px)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item>span{position:absolute;right:0;top:50%;transform:translateY(-50%);border-radius:0 var(--wco-smart-select-box-radius) var(--wco-smart-select-box-radius) 0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;height:100%;width:0px;transition:width .1s linear,margin .1s linear;overflow:hidden;z-index:1}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item>span>span{font-size:var(--wco-font-size-xxxs);font-weight:400;line-height:var(--wco-font-lineheight-500);letter-spacing:.4px;color:var(--wco-smart-select-box-default-color-label)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item>span:hover{color:var(--wco-smart-select-box-hover-color-label);background-color:var(--wco-smart-select-box-hover-color-bg)}.wco-smartSelect .wco-smartSelect--box{position:absolute;left:-12px;width:calc(100% + 24px);z-index:999;display:grid;grid-template-columns:1fr;grid-template-rows:var(--wco-smart-select-box-height, 0px);max-height:var(--wco-smart-select-box-max-height);transition:all .4s ease-in-out,padding 0ms linear;padding:0;opacity:0;visibility:hidden;pointer-events:none}.wco-smartSelect .wco-smartSelect--box.wco-smartSelect--box--open{pointer-events:all;padding:var(--wco-spacing-nano) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs);animation:introSmartSelectBox .4s ease-in-out .1s forwards}@keyframes introSmartSelectBox{0%{opacity:0;visibility:hidden;transform:translateY(-10px)}to{opacity:1;visibility:visible;transform:translateY(0)}}.wco-smartSelect .wco-smartSelect--box ul{border-top:none;border-radius:var(--wco-smart-select-box-radius);box-shadow:var(--wco-smart-select-box-shadow);background-color:var(--wco-smart-select-box-default-color-bg);overflow-y:auto;overflow-x:hidden;max-height:var(--wco-smart-select-box-max-height)}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar{width:8px}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-track{background-color:transparent}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-thumb{border-radius:99px;background-color:var(--wco-color-neutral-500, #9e9e9e)}.wco-smartSelect .wco-smartSelect--box ul li{color:var(--wco-smart-select-box-default-color-label);padding:var(--wco-smart-select-box-default-padding);display:grid;width:100%;align-items:center;justify-content:flex-start;grid-template-columns:auto 1fr auto;gap:var(--wco-spacing-xxxs);font-family:var(--wco-font-family);font-size:var(--wco-font-size-xs);font-weight:400;line-height:var(--wco-font-lineheight-500);letter-spacing:.4px;min-height:var(--wco-smart-select-box-option-height)}.wco-smartSelect .wco-smartSelect--box ul li .wco-smart-select-label-prefix{display:inline-flex;align-items:center}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter{padding:0;align-items:stretch;display:flex}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input{width:100%;height:auto;padding:var(--wco-smart-select-box-default-padding);border:none;border-bottom:1px solid #ccc;border-radius:var(--wco-smart-select-box-radius) var(--wco-smart-select-box-radius) 0 0}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input:focus{outline:none}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter){cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):hover{background-color:var(--wco-smart-select-box-hover-color-bg);color:var(--wco-smart-select-box-hover-color-label);cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):focus,.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):active{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label)}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter).wco-smart-selected{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label);font-weight:600}.wco-smartSelect .wco-smartSelect--box ul li.wc-smart-select-disabled-option{background-color:var(--wco-smart-select-option-disabled-bg);color:var(--wco-smart-select-option-disabled-color);cursor:not-allowed}.wco-smartSelect .wco-smartSelect--box ul li.wc-smart-select-disabled-option .wco-smart-select-remove{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: FormsModule }], encapsulation: i0.ViewEncapsulation.None });
221
322
  }
222
323
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SmartSelectComponent, decorators: [{
223
324
  type: Component,
@@ -232,10 +333,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
232
333
  useExisting: SmartSelectComponent,
233
334
  multi: true,
234
335
  },
235
- ], template: "\n<div \nclass=\"wco-smartSelect\"\n[ngClass]=\"{\n 'wco-smartSelect--open': showList,\n 'wco-smartSelect--isMobile': isMobile,\n}\"\n(resize)=\"onResize()\"\n(mouseleave)=\"onFocusOut()\"\n>\n <div class=\"form-field\">\n <input \n *ngIf=\"!multiSelect\" \n class=\"form-field__input\" \n [ngClass]=\"{'form-field--error': autocompleteControl.invalid && autocompleteControl.touched}\"\n [disabled]=\"autocompleteControl.disabled\"\n id=\"{{ inputId ? inputId : '' }}\"\n name=\"{{ inputName ? inputName : '' }}\" \n (click)=\"onFocusIn(true)\" \n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\" \n (keypress)=\"onKeyPress($event)\"\n [placeholder]=\"placeholder\" \n type=\"text\"\n [value]=\"selectedLabel\"\n aria-label=\"Selecione uma op\u00E7\u00E3o\"\n />\n <div \n *ngIf=\"multiSelect\" \n class=\"form-field__input readonly multiSelect\" \n [ngClass]=\"{\n 'form-field--error': autocompleteControl.invalid && autocompleteControl.touched,\n 'form-field--disabled': autocompleteControl.disabled,\n }\"\n (click)=\"onFocusIn(true)\" \n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\" \n [innerHTML]=\"selectedLabelMulti\"\n >\n </div>\n <label>{{label}}</label>\n <span class=\"material-icons\">{{IconMaterial}}</span>\n </div>\n <div \n class=\"wco-smartSelect--box\" \n [ngClass]=\"{'wco-smartSelect--box--open': showList && !autocompleteControl.disabled}\"\n >\n <div class=\"wco-smartSelect--isMobile-close\">\n <button (click)=\"closeList()\" class=\"btn btn-sm btn-primary btn-outline mb-nano\">fechar</button>\n </div>\n <ul>\n <li tabindex=\"0\" class=\"wco-smart-selected-filter\" *ngIf=\"showList && showSearch\">\n <input \n placeholder=\"buscar\"\n (keyup)=\"onFilter($event)\"\n aria-label=\"Search through site content\"\n type=\"text\" \n />\n </li>\n <li \n *ngFor=\"let option of filteredOptions; let i = index\"\n [tabindex]=\"i + 1\"\n [ngClass]=\"{\n 'wco-smart-selected': selectedValue(option),\n 'wc-smart-select-disabled-option': option.disabled,\n 'wc-smart-select-view-only-option': option.viewOnly,\n }\"\n (click)=\"onSelect(option)\"\n >\n <span class=\"wco-smart-select-label-prefix\">\n <ng-container *ngIf=\"typePrefix === 'checkbox'\">\n <span class=\"material-icons-outlined\">\n {{selectedValue(option) ? 'check_box' : 'check_box_outline_blank'}}\n </span>\n </ng-container>\n <ng-container *ngIf=\"typePrefix === 'radio'\">\n <span class=\"material-icons-outlined\">\n {{selectedValue(option) ? 'radio_button_checked' : 'radio_button_unchecked'}}\n </span>\n </ng-container>\n <ng-container *ngIf=\"!!option.iconPrefix && typePrefix !== 'radio' && typePrefix !== 'checkbox'\">\n <span class=\"material-icons-outlined\">\n {{option.iconPrefix}}\n </span>\n </ng-container>\n </span>\n <span class=\"wco-smart-select-label\" [innerHTML]=\"option.htmlLabel\"></span>\n </li>\n <li *ngIf=\"!filteredOptions.length\">\n <p class=\"display-body\">{{textEmpty}}</p>\n </li>\n </ul>\n </div>\n</div>", styles: [".wco-smartSelect{width:100%;position:relative;display:inline-block;--wco-smart-select-box-height: 0px;--wco-smart-select-box-max-height: 300px;--wco-smart-select-box-radius: 8px;--wco-smart-select-box-shadow: var(--wco-shadow-level-1, 0 2px 4px rgba(0, 0, 0, .2));--wco-smart-select-box-default-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-default-color-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-box-default-padding: var(--wco-spacing-nano) var(--wco-spacing-xxxs);--wco-smart-select-box-hover-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-hover-color-bg: var(--wco-color-neutral-300, #bdbdbd);--wco-smart-select-box-selected-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-selected-color-bg: var(--wco-color-primary-100, #819ed3);--wco-smart-select-option-disabled-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-option-disabled-color: var(--wco-color-neutral-500, #9e9e9e);--wco-smart-select-box-option-height: 48px}.wco-smartSelect--open{--wco-smart-select-box-height: auto }.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--isMobile-close{display:flex;padding:var(--wco-spacing-nano);align-items:center;justify-content:flex-end}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box{position:fixed;bottom:0;left:0;width:100%}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open{padding:0}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open ul,.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open input{border-radius:0}.wco-smartSelect .wco-smartSelect--isMobile-close{display:none}.wco-smartSelect input{cursor:pointer}.wco-smartSelect .form-field__input.multiSelect{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:var(--wco-spacing-nano)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-placeholder{opacity:.5}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item{display:inline-flex;align-items:center;justify-content:center;padding:var(--wco-spacing-quark) var(--wco-spacing-nano);border-radius:var(--wco-smart-select-box-radius);background-color:var(--wco-smart-select-box-default-color-bg)}.wco-smartSelect .wco-smartSelect--box{position:absolute;left:-12px;width:calc(100% + 24px);z-index:999;display:grid;grid-template-columns:1fr;grid-template-rows:var(--wco-smart-select-box-height, 0px);max-height:var(--wco-smart-select-box-max-height);transition:all .4s ease-in-out,padding 0ms linear;padding:0;opacity:0;visibility:hidden;pointer-events:none}.wco-smartSelect .wco-smartSelect--box.wco-smartSelect--box--open{pointer-events:all;padding:var(--wco-spacing-nano) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs);animation:introSmartSelectBox .4s ease-in-out .1s forwards}@keyframes introSmartSelectBox{0%{opacity:0;visibility:hidden;transform:translateY(-10px)}to{opacity:1;visibility:visible;transform:translateY(0)}}.wco-smartSelect .wco-smartSelect--box ul{border-top:none;border-radius:var(--wco-smart-select-box-radius);box-shadow:var(--wco-smart-select-box-shadow);background-color:var(--wco-smart-select-box-default-color-bg);overflow-y:auto;overflow-x:hidden;max-height:var(--wco-smart-select-box-max-height)}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar{width:8px}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-track{background-color:transparent}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-thumb{border-radius:99px;background-color:var(--wco-color-neutral-500, #9e9e9e)}.wco-smartSelect .wco-smartSelect--box ul li{color:var(--wco-smart-select-box-default-color-label);padding:var(--wco-smart-select-box-default-padding);display:grid;width:100%;align-items:center;justify-content:flex-start;grid-template-columns:auto 1fr auto;gap:var(--wco-spacing-xxxs);font-family:var(--wco-font-family);font-size:var(--wco-font-size-xs);font-weight:400;line-height:var(--wco-font-lineheight-500);letter-spacing:.4px;min-height:var(--wco-smart-select-box-option-height)}.wco-smartSelect .wco-smartSelect--box ul li .wco-smart-select-label-prefix{display:inline-flex;align-items:center}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter{padding:0;align-items:stretch;display:flex}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input{width:100%;height:auto;padding:var(--wco-smart-select-box-default-padding);border:none;border-bottom:1px solid #ccc;border-radius:var(--wco-smart-select-box-radius) var(--wco-smart-select-box-radius) 0 0}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input:focus{outline:none}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter){cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):hover{background-color:var(--wco-smart-select-box-hover-color-bg);color:var(--wco-smart-select-box-hover-color-label);cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):focus,.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):active{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label)}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter).wco-smart-selected{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label);font-weight:600}.wco-smartSelect .wco-smartSelect--box ul li.wc-smart-select-disabled-option{background-color:var(--wco-smart-select-option-disabled-bg);color:var(--wco-smart-select-option-disabled-color);cursor:not-allowed}\n"] }]
336
+ ], template: "<div\n class=\"wco-smartSelect\"\n [ngClass]=\"{\n 'wco-smartSelect--open': showList,\n 'wco-smartSelect--isMobile': isMobile,\n}\"\n (resize)=\"onResize()\"\n (mouseleave)=\"onFocusOut()\"\n>\n <div class=\"form-field\">\n <input\n *ngIf=\"!multiSelect\"\n class=\"form-field__input\"\n [ngClass]=\"{\n 'form-field--error':\n autocompleteControl.invalid && autocompleteControl.touched\n }\"\n [disabled]=\"autocompleteControl.disabled\"\n id=\"{{ inputId ? inputId : '' }}\"\n name=\"{{ inputName ? inputName : '' }}\"\n (click)=\"onFocusIn(true)\"\n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\"\n (keypress)=\"onKeyPress($event)\"\n [placeholder]=\"placeholder\"\n type=\"text\"\n [value]=\"selectedLabel\"\n aria-label=\"Selecione uma op\u00E7\u00E3o\"\n />\n <div\n *ngIf=\"multiSelect\"\n class=\"form-field__input readonly multiSelect\"\n [ngClass]=\"{\n 'form-field--error': autocompleteControl.invalid && autocompleteControl.touched,\n 'form-field--disabled': autocompleteControl.disabled,\n }\"\n (click)=\"onFocusIn(true)\"\n (focusin)=\"onFocusIn()\"\n (keyup.escape)=\"onFocusOut()\"\n >\n <ng-container *ngIf=\"!selectedLabelMulti.length\">\n <span class=\"wco-smart-select-placeholder\">{{ placeholder || 'Selecione uma op\u00E7\u00E3o' }}</span>\n </ng-container>\n <ng-container *ngIf=\"selectedLabelMulti.length\">\n <span *ngFor=\"let optionSelected of selectedLabelMulti\" class=\"wco-smart-select-item\">\n {{optionSelected.label}} \n <span class=\"wco-smart-select-remove\" (click)=\"removeItem(optionSelected)\">\n <span class=\"material-icons\">close</span>\n </span>\n </span>\n <span class=\"wco-smart-select-item\" *ngIf=\"selectedLabelMultiCount >= 1\">\n +{{selectedLabelMultiCount}} \n </span>\n </ng-container>\n </div>\n <label>{{ label }}</label>\n <span class=\"material-icons\">{{ IconMaterial }}</span>\n </div>\n <div\n class=\"wco-smartSelect--box\"\n [ngClass]=\"{\n 'wco-smartSelect--box--open': showList && !autocompleteControl.disabled\n }\"\n >\n <div class=\"wco-smartSelect--isMobile-close\">\n <button\n (click)=\"closeList()\"\n class=\"btn btn-sm btn-primary btn-outline mb-nano\"\n >\n fechar\n </button>\n </div>\n <ul>\n <li\n tabindex=\"0\"\n class=\"wco-smart-selected-filter\"\n *ngIf=\"showList && showSearch\"\n >\n <input\n placeholder=\"buscar\"\n (keyup)=\"onFilter($event)\"\n aria-label=\"Search through site content\"\n type=\"text\"\n />\n </li>\n <li\n *ngFor=\"let option of filteredOptions; let i = index\"\n [tabindex]=\"i + 1\"\n [ngClass]=\"{\n 'wco-smart-selected': selectedValue(option),\n 'wc-smart-select-disabled-option': option.disabled,\n 'wc-smart-select-view-only-option': option.viewOnly,\n }\"\n (click)=\"onSelect(option)\"\n >\n <span class=\"wco-smart-select-label-prefix\">\n <ng-container *ngIf=\"typePrefix === 'checkbox'\">\n <span class=\"material-icons-outlined\">\n {{\n selectedValue(option) ? \"check_box\" : \"check_box_outline_blank\"\n }}\n </span>\n </ng-container>\n <ng-container *ngIf=\"typePrefix === 'radio'\">\n <span class=\"material-icons-outlined\">\n {{\n selectedValue(option)\n ? \"radio_button_checked\"\n : \"radio_button_unchecked\"\n }}\n </span>\n </ng-container>\n <ng-container\n *ngIf=\"\n !!option.iconPrefix &&\n typePrefix !== 'radio' &&\n typePrefix !== 'checkbox'\n \"\n >\n <span class=\"material-icons-outlined\">\n {{ option.iconPrefix }}\n </span>\n </ng-container>\n </span>\n <span\n class=\"wco-smart-select-label\"\n [innerHTML]=\"option.htmlLabel\"\n ></span>\n </li>\n <li *ngIf=\"!filteredOptions.length\">\n <p class=\"display-body\">{{ textEmpty }}</p>\n </li>\n </ul>\n </div>\n</div>\n", styles: [".wco-smartSelect{width:100%;position:relative;display:inline-block;--wco-smart-select-box-height: 0px;--wco-smart-select-box-max-height: 300px;--wco-smart-select-box-radius: 8px;--wco-smart-select-box-shadow: var(--wco-shadow-level-1, 0 2px 4px rgba(0, 0, 0, .2));--wco-smart-select-box-default-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-default-color-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-box-default-padding: var(--wco-spacing-nano) var(--wco-spacing-xxxs);--wco-smart-select-box-hover-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-hover-color-bg: var(--wco-color-neutral-300, #bdbdbd);--wco-smart-select-box-selected-color-label: var(--wco-color-neutral-900, #000);--wco-smart-select-box-selected-color-bg: var(--wco-color-primary-100, #819ed3);--wco-smart-select-option-disabled-bg: var(--wco-color-neutral-100, #e0e0e0);--wco-smart-select-option-disabled-color: var(--wco-color-neutral-500, #9e9e9e);--wco-smart-select-box-option-height: 48px}.wco-smartSelect--open{--wco-smart-select-box-height: auto }.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--isMobile-close{display:flex;padding:var(--wco-spacing-nano);align-items:center;justify-content:flex-end}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box{position:fixed;bottom:0;left:0;width:100%}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open{padding:0}.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open ul,.wco-smartSelect.wco-smartSelect--isMobile .wco-smartSelect--box.wco-smartSelect--box--open input{border-radius:0}.wco-smartSelect .wco-smartSelect--isMobile-close{display:none}.wco-smartSelect input{cursor:pointer}.wco-smartSelect .form-field__input.multiSelect{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:var(--wco-spacing-nano);padding-right:var(--wco-spacing-sm)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-placeholder{opacity:.5}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item{display:inline-flex;align-items:center;justify-content:center;padding:var(--wco-spacing-quark) var(--wco-spacing-xxs);border-radius:var(--wco-smart-select-box-radius);background-color:var(--wco-smart-select-box-default-color-bg);position:relative}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item:hover>span{width:calc(var(--wco-spacing-xxs) - 2px)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item>span{position:absolute;right:0;top:50%;transform:translateY(-50%);border-radius:0 var(--wco-smart-select-box-radius) var(--wco-smart-select-box-radius) 0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;height:100%;width:0px;transition:width .1s linear,margin .1s linear;overflow:hidden;z-index:1}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item>span>span{font-size:var(--wco-font-size-xxxs);font-weight:400;line-height:var(--wco-font-lineheight-500);letter-spacing:.4px;color:var(--wco-smart-select-box-default-color-label)}.wco-smartSelect .form-field__input.multiSelect .wco-smart-select-item>span:hover{color:var(--wco-smart-select-box-hover-color-label);background-color:var(--wco-smart-select-box-hover-color-bg)}.wco-smartSelect .wco-smartSelect--box{position:absolute;left:-12px;width:calc(100% + 24px);z-index:999;display:grid;grid-template-columns:1fr;grid-template-rows:var(--wco-smart-select-box-height, 0px);max-height:var(--wco-smart-select-box-max-height);transition:all .4s ease-in-out,padding 0ms linear;padding:0;opacity:0;visibility:hidden;pointer-events:none}.wco-smartSelect .wco-smartSelect--box.wco-smartSelect--box--open{pointer-events:all;padding:var(--wco-spacing-nano) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs) var(--wco-spacing-xxxs);animation:introSmartSelectBox .4s ease-in-out .1s forwards}@keyframes introSmartSelectBox{0%{opacity:0;visibility:hidden;transform:translateY(-10px)}to{opacity:1;visibility:visible;transform:translateY(0)}}.wco-smartSelect .wco-smartSelect--box ul{border-top:none;border-radius:var(--wco-smart-select-box-radius);box-shadow:var(--wco-smart-select-box-shadow);background-color:var(--wco-smart-select-box-default-color-bg);overflow-y:auto;overflow-x:hidden;max-height:var(--wco-smart-select-box-max-height)}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar{width:8px}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-track{background-color:transparent}.wco-smartSelect .wco-smartSelect--box ul::-webkit-scrollbar-thumb{border-radius:99px;background-color:var(--wco-color-neutral-500, #9e9e9e)}.wco-smartSelect .wco-smartSelect--box ul li{color:var(--wco-smart-select-box-default-color-label);padding:var(--wco-smart-select-box-default-padding);display:grid;width:100%;align-items:center;justify-content:flex-start;grid-template-columns:auto 1fr auto;gap:var(--wco-spacing-xxxs);font-family:var(--wco-font-family);font-size:var(--wco-font-size-xs);font-weight:400;line-height:var(--wco-font-lineheight-500);letter-spacing:.4px;min-height:var(--wco-smart-select-box-option-height)}.wco-smartSelect .wco-smartSelect--box ul li .wco-smart-select-label-prefix{display:inline-flex;align-items:center}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter{padding:0;align-items:stretch;display:flex}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input{width:100%;height:auto;padding:var(--wco-smart-select-box-default-padding);border:none;border-bottom:1px solid #ccc;border-radius:var(--wco-smart-select-box-radius) var(--wco-smart-select-box-radius) 0 0}.wco-smartSelect .wco-smartSelect--box ul li.wco-smart-selected-filter input:focus{outline:none}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter){cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):hover{background-color:var(--wco-smart-select-box-hover-color-bg);color:var(--wco-smart-select-box-hover-color-label);cursor:pointer}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):focus,.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter):active{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label)}.wco-smartSelect .wco-smartSelect--box ul li:not(.wc-smart-select-view-only-option):not(.wc-smart-select-disabled-option):not(.wco-smart-selected-filter).wco-smart-selected{background-color:var(--wco-smart-select-box-selected-color-bg);color:var(--wco-smart-select-box-selected-color-label);font-weight:600}.wco-smartSelect .wco-smartSelect--box ul li.wc-smart-select-disabled-option{background-color:var(--wco-smart-select-option-disabled-bg);color:var(--wco-smart-select-option-disabled-color);cursor:not-allowed}.wco-smartSelect .wco-smartSelect--box ul li.wc-smart-select-disabled-option .wco-smart-select-remove{display:none}\n"] }]
236
337
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { options: [{
237
338
  type: ContentChildren,
238
339
  args: [SmartSelectOptionComponent]
340
+ }], onChange: [{
341
+ type: Output
239
342
  }], inputId: [{
240
343
  type: Input
241
344
  }], inputName: [{
@@ -252,7 +355,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
252
355
  type: Input
253
356
  }], multiSelect: [{
254
357
  type: Input
358
+ }], showMaxSelectedLabel: [{
359
+ type: Input
255
360
  }], typePrefix: [{
256
361
  type: Input
257
362
  }] } });
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb25lbnRzL3NyYy9saWIvc21hcnQtc2VsZWN0L3NtYXJ0LXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9uZW50cy9zcmMvbGliL3NtYXJ0LXNlbGVjdC9zbWFydC1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsZUFBZSxFQUFjLEtBQUssRUFBZ0QsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVMLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXlDLFdBQVcsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFhLG1CQUFtQixFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQ2hNLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUF1QjlFLE1BQU0sT0FBTyxvQkFBb0I7SUFnRFg7SUEvQ3lCLE9BQU8sQ0FFdEM7SUFFZCxvQkFBb0I7SUFFcEIsT0FBTyxHQUFHLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUU5RCwyQkFBMkI7SUFFM0IsU0FBUyxDQUFVO0lBR25CLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztJQUVqQywyQkFBMkI7SUFFM0IsV0FBVyxHQUFHLHFCQUFxQixDQUFDO0lBRXBDLHFCQUFxQjtJQUNaLEtBQUssR0FBRyxHQUFHLENBQUM7SUFHckIsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUVuQiw0Q0FBNEM7SUFFNUMsU0FBUyxHQUFHLGdDQUFnQyxD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QUFlO3VCQUFDLDBCQUEwQjtnQkFNM0MsT0FBTztzQkFETixLQUFLO2dCQUtOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBS04sV0FBVztzQkFEVixLQUFLO2dCQUlHLEtBQUs7c0JBQWIsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSztnQkFLTixVQUFVO3NCQURULEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgUXVlcnlMaXN0LCBTZWxmLCBWaWV3RW5jYXBzdWxhdGlvbiwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBGb3Jtc01vZHVsZSwgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IsIE5nQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU21hcnRTZWxlY3RPcHRpb25Db21wb25lbnQgfSBmcm9tICcuL3NtYXJ0LXNlbGVjdC1vcHRpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2NvLXNtYXJ0LXNlbGVjdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNtYXJ0U2VsZWN0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBTbWFydFNlbGVjdENvbXBvbmVudCxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0U2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG4gIEBDb250ZW50Q2hpbGRyZW4oU21hcnRTZWxlY3RPcHRpb25Db21wb25lbnQpIG9wdGlvbnM6XG4gICAgfCBRdWVyeUxpc3Q8U21hcnRTZWxlY3RPcHRpb25Db21wb25lbnQ+XG4gICAgfCB1bmRlZmluZWQ7XG5cbiAgLyogSWQgZG8gZWxlbWVudG8gKi9cbiAgQElucHV0KClcbiAgaW5wdXRJZCA9ICdzZWxlY3RfJyArIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyKTtcblxuICAvKiBBdHRyIG5hbWUgZG8gZWxlbWVudG8gKi9cbiAgQElucHV0KClcbiAgaW5wdXROYW1lPzogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIEljb25NYXRlcmlhbCA9ICdhcnJvd19kcm9wX2Rvd24nO1xuXG4gIC8qIFBsYWNlaG9sZGVyIGRvIHNlbGVjdCAqL1xuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciA9ICdTZWxlY2lvbmUgdW1hIG9ww6fDo28nO1xuXG4gIC8qIExhYmVsIGRvIHNlbGVjdCAqL1xuICBASW5wdXQoKSBsYWJlbCA9ICcgJztcblxuICBASW5wdXQoKVxuICBzaG93U2VhcmNoID0gZmFsc2U7XG5cbiAgLyogVGV4dG8gZXhpYmlkbyBxdWFuZG8gbsOjbyBow6EgcmVzdWx0YWRvcyAqL1xuICBASW5wdXQoKVxuICB0ZXh0RW1wdHkgPSAnTsOjbyBow6EgcmVzdWx0YWRvcyBwYXJhIGEgYnVzY2EnO1xuXG4gIC8qIGhhYmlsaXRhciBvcMOnw6NvIGRlIG11bHRpcGxhcyBzZWxlw6fDtWVzICovXG4gIEBJbnB1dCgpXG4gIG11bHRpU2VsZWN0ID0gZmFsc2U7XG5cbiAgLyogVGlwb3MgcHLDqSBkZWZpbmlkb3MgZGUgY2hlY2tib3gsIHJhZGlvIG91IGljb24gKi9cbiAgQElucHV0KClcbiAgdHlwZVByZWZpeDogJ2NoZWNrYm94JyB8ICdyYWRpbycgfCAnaWNvbicgfCBudWxsID0gbnVsbDtcblxuICBpc01vYmlsZSA9IHdpbmRvdy5pbm5lcldpZHRoIDw9IDc2ODtcblxuICBmb3JtVmFsdWU6IGFueTtcbiAgaXNGb2N1c2VkID0gZmFsc2U7XG4gIHByZXZlbnRFc2NhcGVGb2N1cyA9IGZhbHNlO1xuICBhdXRvY29tcGxldGVDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG4gIGZpbHRlcmVkT3B0aW9uczogYW55W10gPSBbXTtcblxuICBzaG93TGlzdCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHt9XG5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgfTtcblxuICAvLy8gZXN0YWRvcyBkbyBjb250cm9sXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1WYWx1ZSA9IG9iajtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wuc2V0VmFsdWUob2JqKTtcbiAgfVxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgIGZuKHZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgdmFsaWRhdGUoeyB2YWx1ZSB9OiBGb3JtQ29udHJvbCkge1xuICAgIGNvbnN0IHZhbGlkYXRvciA9ICEhdmFsdWUgJiYgdmFsdWUubGVuZ3RoID4gMCA/IG51bGwgOiB7IGludmFsaWQ6IHRydWUgfTtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wuc2V0RXJyb3JzKHZhbGlkYXRvcik7XG4gICAgcmV0dXJuIHZhbGlkYXRvcjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoaXNEaXNhYmxlZCkge1xuICAgICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLmRpc2FibGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLmVuYWJsZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8vLyBBYmVydHVyYSBlIGZlY2hhbWVudG8gZGEgbGlzdGFcbiAgb25Gb2N1c0luKGZvY3VzID0gZmFsc2UpIHtcbiAgICB0aGlzLnJlbmRlckJveE9wdGlvbnMoKTtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmb2N1cztcbiAgICB0aGlzLnNob3dMaXN0ID0gZm9jdXM7XG4gICAgdGhpcy5wb3NpdGlvbkJveCgpO1xuICB9XG5cbiAgLy8vIGhlcmUgZnVuY3Rpb24gdG8gcG9zaXRpb24gYm94IGVsZW1lbnQgdG9wIG9yIGJvdHRvbVxuICBwb3NpdGlvbkJveCgpIHtcbiAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgcmV0dXJuOyAgXG4gICAgfVxuICAgIFxuICAgIGNvbnN0IGNvbXBvbmVudEJveCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIWNvbXBvbmVudEJveCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb21wb25lbnRCb3hQb3NpdGlvbiA9IGNvbXBvbmVudEJveC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBpbnB1dElkID0gY29tcG9uZW50Qm94LnF1ZXJ5U2VsZWN0b3IoJy5mb3JtLWZpZWxkJyk7XG4gICAgY29uc3QgYm94ID0gY29tcG9uZW50Qm94LnF1ZXJ5U2VsZWN0b3IoJy53Y28tc21hcnRTZWxlY3QtLWJveCcpO1xuICAgIGNvbnN0IGlucHV0SWRQb3NpdGlvbiA9IGlucHV0SWQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgIGNvbnN0IHBhZ2VIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG4gICAgaWYgKGJveCAmJiBjb21wb25lbnRCb3hQb3NpdGlvbi55ICsgMzIwID49IHBhZ2VIZWlnaHQpIHtcbiAgICAgIGJveC5zdHlsZS5ib3R0b20gPSBpbnB1dElkUG9zaXRpb24gKyAncHgnO1xuICAgICAgYm94LnN0eWxlLmhlaWdodCA9IGB2YXIoLS13Y28tc21hcnQtc2VsZWN0LWJveC1tYXgtaGVpZ2h0KWA7XG4gICAgICBib3guc3R5bGUudG9wID0gJ2luaXRpYWwnO1xuICAgIH0gZWxzZSB7XG4gICAgICBib3guc3R5bGUudG9wID0gaW5wdXRJZFBvc2l0aW9uICsgJ3B4JztcbiAgICAgIGJveC5zdHlsZS5ib3R0b20gPSAnaW5pdGlhbCc7XG4gICAgICBib3guc3R5bGUuaGVpZ2h0ID0gYGF1dG9gO1xuICAgIH1cbiAgfVxuXG4gIG9uU2VsZWN0KG9wdGlvbjogYW55KSB7XG4gICAgaWYgKG9wdGlvbi5kaXNhYmxlZCB8fCBvcHRpb24udmlld09ubHkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3QpIHtcbiAgICAgIGlmICh0aGlzLmZvcm1WYWx1ZT8uaW5jbHVkZXMob3B0aW9uLnZhbHVlKSkge1xuICAgICAgICB0aGlzLmZvcm1WYWx1ZSA9IHRoaXMuZm9ybVZhbHVlLmZpbHRlcihcbiAgICAgICAgICAoaXRlbTogYW55KSA9PiBpdGVtICE9PSBvcHRpb24udmFsdWVcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLnNldFZhbHVlKHRoaXMuZm9ybVZhbHVlKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc29sZS5sb2coJ2VudHJvdSBhcXVpJywgdHlwZW9mIHRoaXMuZm9ybVZhbHVlKTtcbiAgICAgIC8vIGlzIEFycmF5IFtdXG4gICAgICBpZighIXRoaXMuZm9ybVZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICB0aGlzLmZvcm1WYWx1ZSA9IFtdO1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wuc2V0VmFsdWUodGhpcy5mb3JtVmFsdWUpO1xuICAgICAgfVxuICAgICAgdGhpcy5mb3JtVmFsdWUgPSBbLi4udGhpcy5mb3JtVmFsdWUsIG9wdGlvbi52YWx1ZV07XG4gICAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wuc2V0VmFsdWUodGhpcy5mb3JtVmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm1WYWx1ZSA9IG9wdGlvbi52YWx1ZTtcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29udHJvbC5zZXRWYWx1ZShvcHRpb24udmFsdWUpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3QpIHtcbiAgICAgIHRoaXMuc2hvd0xpc3QgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvLyBTaG93IGxhYmVsIHNwYW5cbiAgZ2V0IHNlbGVjdGVkTGFiZWwoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB0aGlzLm9wdGlvbnM/LmZpbmQoXG4gICAgICAob3B0aW9uKSA9PiBvcHRpb24udmFsdWUgPT09IHRoaXMuZm9ybVZhbHVlXG4gICAgKTtcbiAgICByZXR1cm4gc2VsZWN0ZWRPcHRpb24/LmxhYmVsIHx8ICcgJztcbiAgfVxuXG4gIC8vIHNob3cgbGFiZWwgbXVsdGkgc2VsZWN0XG4gIGdldCBzZWxlY3RlZExhYmVsTXVsdGkoKSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmZvcm1WYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkTGFiZWw7XG4gICAgfVxuICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucz8uZmlsdGVyKChvcHRpb24pID0+XG4gICAgICB0aGlzLmZvcm1WYWx1ZT8uaW5jbHVkZXMob3B0aW9uLnZhbHVlKVxuICAgICk7XG5cbiAgICBpZiAoIXNlbGVjdGVkT3B0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gYDxzcGFuIGNsYXNzPVwid2NvLXNtYXJ0LXNlbGVjdC1wbGFjZWhvbGRlclwiPiR7dGhpcy5wbGFjZWhvbGRlcn08L3NwYW4+YDtcbiAgICB9XG5cbiAgICByZXR1cm4gc2VsZWN0ZWRPcHRpb25zLm1hcCgob3B0aW9uKSA9PiB7XG4gICAgICByZXR1cm4gYCA8c3BhbiBjbGFzcz0nd2NvLXNtYXJ0LXNlbGVjdC1pdGVtJz4ke29wdGlvbi5sYWJlbH08L3NwYW4+YDtcbiAgICB9KS5qb2luKCcnKS50b1N0cmluZygpO1xuICB9XG5cbiAgb25LZXlQcmVzcyhldmVudDogYW55KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnJlbmRlckJveE9wdGlvbnMoKTtcbiAgfVxuXG4gIG9uRmlsdGVyKGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLnJlbmRlckJveE9wdGlvbnMoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5maWx0ZXJlZE9wdGlvbnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnJlbmRlckJveE9wdGlvbnModmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uUmVzaXplKCkge1xuICAgIHRoaXMucmVuZGVyQm94T3B0aW9ucygpO1xuICAgIHRoaXMucG9zaXRpb25Cb3goKTtcbiAgfVxuXG4gIG9uRm9jdXNPdXQoKSB7XG4gICAgaWYgKCF0aGlzLnByZXZlbnRFc2NhcGVGb2N1cyAmJiAhdGhpcy5pc01vYmlsZSkge1xuICAgICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2hvd0xpc3QgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBjbG9zZUxpc3QoKSB7XG4gICAgdGhpcy5wcmV2ZW50RXNjYXBlRm9jdXMgPSB0cnVlO1xuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgdGhpcy5zaG93TGlzdCA9IGZhbHNlO1xuICB9XG5cbiAgc2VsZWN0ZWRWYWx1ZShvcHRpb246IHsgdmFsdWU6IGFueTsgbGFiZWw6IHN0cmluZzsgc2FmZUh0bWxDb250ZW50OiBhbnkgfSkge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0KSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtVmFsdWU/LmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9wdGlvbi52YWx1ZSA9PT0gdGhpcy5mb3JtVmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHJlbmRlckJveE9wdGlvbnMoZmlsdGVyVmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsKSB7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMgfHwgIXRoaXMub3B0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSB0aGlzLm9wdGlvbnNcbiAgICAgID8ubWFwKChvcHRpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgICAgIGljb25QcmVmaXg6IG9wdGlvbi5pY29uUHJlZml4LFxuICAgICAgICAgIGh0bWxMYWJlbDogb3B0aW9uLnNhZmVIdG1sQ29udGVudCB8fCBvcHRpb24ubGFiZWwsXG4gICAgICAgICAgZGlzYWJsZWQ6ICBvcHRpb24uZGlzYWJsZWQsXG4gICAgICAgICAgdmlld09ubHk6ICBvcHRpb24udmlld09ubHlcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKChvcHRpb24pID0+IHtcbiAgICAgICAgaWYgKCFmaWx0ZXJWYWx1ZSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRGaWx0ZXIgPSB0aGlzLm5vcm1hbGl6ZVRleHQoZmlsdGVyVmFsdWUpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkTGFiZWwgPSB0aGlzLm5vcm1hbGl6ZVRleHQoXG4gICAgICAgICAgb3B0aW9uLmh0bWxMYWJlbD8udG9TdHJpbmcoKSB8fCAnJ1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4gbm9ybWFsaXplZExhYmVsLmluY2x1ZGVzKG5vcm1hbGl6ZWRGaWx0ZXIpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZVRleHQodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGV4dFxuICAgICAgLnJlcGxhY2UoL1tcXFdfXSsvZywgJycpIC8vIFJlbW92ZSBjYXJhY3RlcmVzIGVzcGVjaWFpcyBlIHN1YmxpbmhhZG9zXG4gICAgICAudG9Mb3dlckNhc2UoKTtcbiAgfVxufVxuXG5cbiIsIlxuPGRpdiBcbmNsYXNzPVwid2NvLXNtYXJ0U2VsZWN0XCJcbltuZ0NsYXNzXT1cIntcbiAgICAnd2NvLXNtYXJ0U2VsZWN0LS1vcGVuJzogc2hvd0xpc3QsXG4gICAgJ3djby1zbWFydFNlbGVjdC0taXNNb2JpbGUnOiBpc01vYmlsZSxcbn1cIlxuKHJlc2l6ZSk9XCJvblJlc2l6ZSgpXCJcbihtb3VzZWxlYXZlKT1cIm9uRm9jdXNPdXQoKVwiXG4+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZmllbGRcIj5cbiAgICAgICAgPGlucHV0IFxuICAgICAgICAgICAgKm5nSWY9XCIhbXVsdGlTZWxlY3RcIiBcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXRcIiBcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZm9ybS1maWVsZC0tZXJyb3InOiBhdXRvY29tcGxldGVDb250cm9sLmludmFsaWQgJiYgYXV0b2NvbXBsZXRlQ29udHJvbC50b3VjaGVkfVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYXV0b2NvbXBsZXRlQ29udHJvbC5kaXNhYmxlZFwiXG4gICAgICAgICAgICBpZD1cInt7IGlucHV0SWQgPyBpbnB1dElkIDogJycgfX1cIlxuICAgICAgICAgICAgbmFtZT1cInt7IGlucHV0TmFtZSA/IGlucHV0TmFtZSA6ICcnIH19XCIgXG4gICAgICAgICAgICAoY2xpY2spPVwib25Gb2N1c0luKHRydWUpXCIgXG4gICAgICAgICAgICAoZm9jdXNpbik9XCJvbkZvY3VzSW4oKVwiXG4gICAgICAgICAgICAoa2V5dXAuZXNjYXBlKT1cIm9uRm9jdXNPdXQoKVwiIFxuICAgICAgICAgICAgKGtleXByZXNzKT1cIm9uS2V5UHJlc3MoJGV2ZW50KVwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZExhYmVsXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJTZWxlY2lvbmUgdW1hIG9ww6fDo29cIlxuICAgICAgICAvPlxuICAgICAgICA8ZGl2IFxuICAgICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFwiIFxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWZpZWxkX19pbnB1dCByZWFkb25seSBtdWx0aVNlbGVjdFwiIFxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICdmb3JtLWZpZWxkLS1lcnJvcic6IGF1dG9jb21wbGV0ZUNvbnRyb2wuaW52YWxpZCAmJiBhdXRvY29tcGxldGVDb250cm9sLnRvdWNoZWQsXG4gICAgICAgICAgICAgICAgJ2Zvcm0tZmllbGQtLWRpc2FibGVkJzogYXV0b2NvbXBsZXRlQ29udHJvbC5kaXNhYmxlZCxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uRm9jdXNJbih0cnVlKVwiIFxuICAgICAgICAgICAgKGZvY3VzaW4pPVwib25Gb2N1c0luKClcIlxuICAgICAgICAgICAgKGtleXVwLmVzY2FwZSk9XCJvbkZvY3VzT3V0KClcIiBcbiAgICAgICAgICAgIFtpbm5lckhUTUxdPVwic2VsZWN0ZWRMYWJlbE11bHRpXCJcbiAgICAgICAgPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGxhYmVsPnt7bGFiZWx9fTwvbGFiZWw+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIj57e0ljb25NYXRlcmlhbH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgXG4gICAgICAgIGNsYXNzPVwid2NvLXNtYXJ0U2VsZWN0LS1ib3hcIiBcbiAgICAgICAgW25nQ2xhc3NdPVwieyd3Y28tc21hcnRTZWxlY3QtLWJveC0tb3Blbic6IHNob3dMaXN0ICYmICFhdXRvY29tcGxldGVDb250cm9sLmRpc2FibGVkfVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwid2NvLXNtYXJ0U2VsZWN0LS1pc01vYmlsZS1jbG9zZVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiY2xvc2VMaXN0KClcIiAgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1wcmltYXJ5IGJ0bi1vdXRsaW5lIG1iLW5hbm9cIj5mZWNoYXI8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDx1bD5cbiAgICAgICAgICAgIDxsaSB0YWJpbmRleD1cIjBcIiBjbGFzcz1cIndjby1zbWFydC1zZWxlY3RlZC1maWx0ZXJcIiAqbmdJZj1cInNob3dMaXN0ICYmIHNob3dTZWFyY2hcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXQgXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiYnVzY2FyXCJcbiAgICAgICAgICAgICAgICAgICAgKGtleXVwKT1cIm9uRmlsdGVyKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoIHRocm91Z2ggc2l0ZSBjb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIiBcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaSAgXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXJlZE9wdGlvbnM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCJpICsgMVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAnd2NvLXNtYXJ0LXNlbGVjdGVkJzogc2VsZWN0ZWRWYWx1ZShvcHRpb24pLFxuICAgICAgICAgICAgICAgICAgICAnd2Mtc21hcnQtc2VsZWN0LWRpc2FibGVkLW9wdGlvbic6IG9wdGlvbi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICAgJ3djLXNtYXJ0LXNlbGVjdC12aWV3LW9ubHktb3B0aW9uJzogb3B0aW9uLnZpZXdPbmx5LFxuICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdChvcHRpb24pXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2NvLXNtYXJ0LXNlbGVjdC1sYWJlbC1wcmVmaXhcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidHlwZVByZWZpeCA9PT0gJ2NoZWNrYm94J1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e3NlbGVjdGVkVmFsdWUob3B0aW9uKSA/ICdjaGVja19ib3gnIDogJ2NoZWNrX2JveF9vdXRsaW5lX2JsYW5rJ319XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidHlwZVByZWZpeCA9PT0gJ3JhZGlvJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e3NlbGVjdGVkVmFsdWUob3B0aW9uKSA/ICdyYWRpb19idXR0b25fY2hlY2tlZCcgOiAncmFkaW9fYnV0dG9uX3VuY2hlY2tlZCd9fVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEhb3B0aW9uLmljb25QcmVmaXggJiYgdHlwZVByZWZpeCAhPT0gJ3JhZGlvJyAmJiB0eXBlUHJlZml4ICE9PSAnY2hlY2tib3gnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7b3B0aW9uLmljb25QcmVmaXh9fVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndjby1zbWFydC1zZWxlY3QtbGFiZWxcIiBbaW5uZXJIVE1MXT1cIm9wdGlvbi5odG1sTGFiZWxcIj48L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGkgKm5nSWY9XCIhZmlsdGVyZWRPcHRpb25zLmxlbmd0aFwiPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZGlzcGxheS1ib2R5XCI+e3t0ZXh0RW1wdHl9fTwvcD5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
363
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb25lbnRzL3NyYy9saWIvc21hcnQtc2VsZWN0L3NtYXJ0LXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9uZW50cy9zcmMvbGliL3NtYXJ0LXNlbGVjdC9zbWFydC1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4saUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVMLFdBQVcsRUFDWCxXQUFXLEVBQ1gsYUFBYSxFQUNiLGlCQUFpQixFQUNqQixtQkFBbUIsR0FFcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBc0I5RSxNQUFNLE9BQU8sb0JBQW9CO0lBb0RYO0lBbkR5QixPQUFPLENBRXRDO0lBRUosUUFBUSxHQUFHLElBQUksWUFBWSxFQUFnQyxDQUFDO0lBRXRFLG9CQUFvQjtJQUVwQixPQUFPLEdBQUcsU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTlELDJCQUEyQjtJQUNsQixTQUFTLENBQVU7SUFFbkIsWUFBWSxHQUFHLGlCQUFpQixDQUFDO0lBRTFDLDJCQUEyQjtJQUUzQixXQUFXLEdBQUcscUJBQXFCLENBQUM7SUFFcEMscUJBQXFCO0lBQ1osS0FBSyxHQUFHLEdBQUcsQ0FBQztJQUdyQixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBRW5CLDRDQUE0QztJQUU1QyxTQUFTLEdBQUcsZ0NBQWdDLENBQUM7SUFFN0MsMkNBQTJDO0lBRTNDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFFcEIsZ0RBQWdEO0lBRWhELG9CQUFvQixHQUFHLENBQUMsQ0FBQztJQUV6QixvREFBb0Q7SUFFcEQsVUFBVSxHQUFnQyxJQUFJLENBQUM7SUFFL0MsUUFBUSxHQUFHLE1BQU0sQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDO0lBRXBDLFNBQVMsQ0FBTTtJQUNmLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDbEIsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQzNCLG1CQUFtQixHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7SUFDeEMsZUFBZSxHQUFVLEVBQUUsQ0FBQztJQUU1QixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRWpCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBRWxDLENBQUM7SUFFRCxTQUFTLEdBQUcsR0FBRyxFQUFFO1FBQ2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQyxDQUFDO0lBRUYsc0JBQXNCO0lBRXRCLFFBQVEsS0FBVSxDQUFDO0lBRW5CLFVBQVUsQ0FBQyxHQUFRO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUNELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN4RCxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDWixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxRQUFRLENBQUMsUUFBcUI7UUFDNUIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFDRCxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1NBQzNCO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxJQUFJLFVBQVUsRUFBRTtZQUNkLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNwQzthQUFNO1lBQ0wsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQUVELGtDQUFrQztJQUNsQyxTQUFTLENBQUMsS0FBSyxHQUFHLEtBQUs7UUFDckIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELHVEQUF1RDtJQUN2RCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQzNDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBQ0QsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzFELE1BQU0sR0FBRyxHQUFHLFlBQVksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNoRSxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDL0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUN0QyxJQUFJLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLFVBQVUsRUFBRTtZQUNyRCxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLHdDQUF3QyxDQUFDO1lBQzVELEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQztTQUMzQjthQUFNO1lBQ0wsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsZUFBZSxHQUFHLElBQUksQ0FBQztZQUN2QyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDN0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxNQUFZO1FBQ25CLElBQUksTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFO1lBQ3RDLE9BQU87U0FDUjtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFFaEMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksT0FBTyxNQUFNLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRTtnQkFDcEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNsRCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQy9ELElBQUksY0FBYyxFQUFFO29CQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUk7eUJBQ2xCLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO3lCQUNyQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDbEM7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDNUQ7YUFDRjtpQkFBTTtnQkFDTCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BELElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7b0JBQ3JDLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDbEM7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDNUQ7YUFDRjtZQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ25EO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDOUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FDdkI7UUFFRCxJQUFJLFFBQVEsS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDcEU7UUFFRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksYUFBYTtRQUNmLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUN2QyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUM3QyxDQUFDO1FBQ0YsT0FBTyxjQUFjLEVBQUUsS0FBSyxJQUFJLEdBQUcsQ0FBQztJQUN0QyxDQUFDO0lBRUQsMEJBQTBCO0lBQzFCLElBQUksa0JBQWtCO1FBQ3BCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUFFO2dCQUNwQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMvQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUU7WUFDNUIsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDOUIsT0FBTyxlQUFlLENBQUM7U0FDeEI7UUFFRCxJQUNFLElBQUksQ0FBQyxvQkFBb0I7WUFDekIsZUFBZSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsb0JBQW9CLEVBQ2xEO1lBQ0EsT0FBTyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUM1RDtRQUVELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxZQUFZLENBQUMsT0FBWTtRQUMvQixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sS0FBSyxHQUFVLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDbkIsSUFDRSxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNaLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFO2dCQUNuQixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLEVBQ2pDO2dCQUNBLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDMUI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE1BQVcsRUFBRSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVM7UUFDM0QsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRTtZQUMxQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtnQkFDOUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDMUMsT0FBTyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBYyxFQUFFLEVBQUUsQ0FDeEMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FDaEMsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxNQUFXLEVBQUUsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTO1FBQ2pFLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDMUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEQsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxLQUFhLEVBQUUsRUFBRTtnQkFDNUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDMUMsT0FBTztvQkFDTCxLQUFLO29CQUNMLElBQUk7b0JBQ0osUUFBUSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFjLEVBQUUsRUFBRSxDQUMxQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUNoQztpQkFDRixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFDSCx5QkFBeUI7WUFDekIsTUFBTSxvQkFBb0IsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUNyQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDakUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUV2QyxPQUFPLG9CQUFvQixDQUFDO1NBQzdCO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsSUFBSSx1QkFBdUI7UUFDekIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQztRQUM1QyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ3RELElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FDdkMsQ0FBQztRQUNGLElBQUksQ0FBQyxlQUFlLEVBQUUsTUFBTSxFQUFFO1lBQzVCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksZUFBZSxDQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUU7WUFDN0MsT0FBTyxlQUFlLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztTQUN0QztRQUVELE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFXO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN4QixPQUFPO1NBQ1I7UUFFRCxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFO1lBQy9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUEyRDtRQUN2RSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUFFO2dCQUNwQyxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFO29CQUMxQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDcEQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO3dCQUN2QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUMxQyxPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFjLEVBQUUsRUFBRSxDQUN4QyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUNoQyxDQUFDO29CQUNKLENBQUMsQ0FBQyxDQUFDO2lCQUNKO2FBQ0Y7aUJBQU07Z0JBQ0wsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDL0M7U0FDRjtRQUVELE9BQU8sTUFBTSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3pDLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxjQUE2QixJQUFJO1FBQ3hELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDekMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTztZQUNqQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2YsT0FBTztnQkFDTCxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7Z0JBQ25CLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtnQkFDN0IsU0FBUyxFQUFFLE1BQU0sQ0FBQyxlQUFlLElBQUksTUFBTSxDQUFDLEtBQUs7Z0JBQ2pELFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtnQkFDekIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO2FBQzFCLENBQUM7UUFDSixDQUFDLENBQUM7YUFDRCxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNqQixJQUFJLENBQUMsV0FBVyxFQUFFO2dCQUNoQixPQUFPLElBQUksQ0FBQzthQUNiO1lBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3pELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQ3hDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUNuQyxDQUFDO1lBQ0YsT0FBTyxlQUFlLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDcEQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sYUFBYSxDQUFDLElBQVk7UUFDaEMsT0FBTyxJQUFJO2FBQ1IsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyw0Q0FBNEM7YUFDbkUsV0FBVyxFQUFFLENBQUM7SUFDbkIsQ0FBQzt3R0F0WFUsb0JBQW9COzRGQUFwQixvQkFBb0IsMFhBYnBCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDbkQsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixXQUFXLEVBQUUsb0JBQW9CO2dCQUNqQyxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0Ysa0RBR2dCLDBCQUEwQiw2QkM1QzdDLHk4SUF1SUEsa3NPRDdHWSxZQUFZLDZWQUFFLG1CQUFtQiw4QkFBRSxXQUFXOzs0RkFpQjdDLG9CQUFvQjtrQkFwQmhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxXQUFXLENBQUMsaUJBRzFDLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7NEJBQ25ELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixXQUFXLHNCQUFzQjs0QkFDakMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUdBRzRDLE9BQU87c0JBQW5ELGVBQWU7dUJBQUMsMEJBQTBCO2dCQUlqQyxRQUFRO3NCQUFqQixNQUFNO2dCQUlQLE9BQU87c0JBRE4sS0FBSztnQkFJRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlHLEtBQUs7c0JBQWIsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSztnQkFLTixvQkFBb0I7c0JBRG5CLEtBQUs7Z0JBS04sVUFBVTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIEZvcm1Db250cm9sLFxuICBGb3Jtc01vZHVsZSxcbiAgTkdfVkFMSURBVE9SUyxcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIFZhbGlkYXRvcixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU21hcnRTZWxlY3RPcHRpb25Db21wb25lbnQgfSBmcm9tICcuL3NtYXJ0LXNlbGVjdC1vcHRpb25zLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3djby1zbWFydC1zZWxlY3QnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zbWFydC1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTbWFydFNlbGVjdENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogU21hcnRTZWxlY3RDb21wb25lbnQsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3Ige1xuICBAQ29udGVudENoaWxkcmVuKFNtYXJ0U2VsZWN0T3B0aW9uQ29tcG9uZW50KSBvcHRpb25zOlxuICAgIHwgUXVlcnlMaXN0PFNtYXJ0U2VsZWN0T3B0aW9uQ29tcG9uZW50PlxuICAgIHwgdW5kZWZpbmVkO1xuXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8eyB0eXBlOiBzdHJpbmc7IHZhbHVlOiBhbnkgfT4oKTtcblxuICAvKiBJZCBkbyBlbGVtZW50byAqL1xuICBASW5wdXQoKVxuICBpbnB1dElkID0gJ3NlbGVjdF8nICsgTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIpO1xuXG4gIC8qIEF0dHIgbmFtZSBkbyBlbGVtZW50byAqL1xuICBASW5wdXQoKSBpbnB1dE5hbWU/OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgSWNvbk1hdGVyaWFsID0gJ2Fycm93X2Ryb3BfZG93bic7XG5cbiAgLyogUGxhY2Vob2xkZXIgZG8gc2VsZWN0ICovXG4gIEBJbnB1dCgpXG4gIHBsYWNlaG9sZGVyID0gJ1NlbGVjaW9uZSB1bWEgb3DDp8Ojbyc7XG5cbiAgLyogTGFiZWwgZG8gc2VsZWN0ICovXG4gIEBJbnB1dCgpIGxhYmVsID0gJyAnO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dTZWFyY2ggPSBmYWxzZTtcblxuICAvKiBUZXh0byBleGliaWRvIHF1YW5kbyBuw6NvIGjDoSByZXN1bHRhZG9zICovXG4gIEBJbnB1dCgpXG4gIHRleHRFbXB0eSA9ICdOw6NvIGjDoSByZXN1bHRhZG9zIHBhcmEgYSBidXNjYSc7XG5cbiAgLyogaGFiaWxpdGFyIG9ww6fDo28gZGUgbXVsdGlwbGFzIHNlbGXDp8O1ZXMgKi9cbiAgQElucHV0KClcbiAgbXVsdGlTZWxlY3QgPSBmYWxzZTtcblxuICAvKiBMaW1pdGFyIHZpc3VhbGl6YcOnw6NvIGRlIGl0ZW5zIHNlbGVjaW9uYWRvcyAqL1xuICBASW5wdXQoKVxuICBzaG93TWF4U2VsZWN0ZWRMYWJlbCA9IDA7XG5cbiAgLyogVGlwb3MgcHLDqSBkZWZpbmlkb3MgZGUgY2hlY2tib3gsIHJhZGlvIG91IG51bGwgKi9cbiAgQElucHV0KClcbiAgdHlwZVByZWZpeDogJ2NoZWNrYm94JyB8ICdyYWRpbycgfCBudWxsID0gbnVsbDtcblxuICBpc01vYmlsZSA9IHdpbmRvdy5pbm5lcldpZHRoIDw9IDc2ODtcblxuICBmb3JtVmFsdWU6IGFueTtcbiAgaXNGb2N1c2VkID0gZmFsc2U7XG4gIHByZXZlbnRFc2NhcGVGb2N1cyA9IGZhbHNlO1xuICBhdXRvY29tcGxldGVDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG4gIGZpbHRlcmVkT3B0aW9uczogYW55W10gPSBbXTtcblxuICBzaG93TGlzdCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHtcbiAgICBcbiAgfVxuXG4gIG9uVG91Y2hlZCA9ICgpID0+IHtcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gIH07XG5cbiAgLy8vIGVzdGFkb3MgZG8gY29udHJvbFxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb3JtVmFsdWUgPSBvYmo7XG4gICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLnNldFZhbHVlKG9iaik7XG4gIH1cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICBmbih2YWx1ZSk7XG4gICAgfSk7XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHZhbGlkYXRlKF9jb250cm9sOiBGb3JtQ29udHJvbCkge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0KSB7XG4gICAgICBpZiAodGhpcy5mb3JtVmFsdWU/Lmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7IHJlcXVpcmVkOiB0cnVlIH07XG4gICAgfVxuICAgIGlmICh0aGlzLmZvcm1WYWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB7IHJlcXVpcmVkOiB0cnVlIH07XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGlzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29udHJvbC5kaXNhYmxlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29udHJvbC5lbmFibGUoKTtcbiAgICB9XG4gIH1cblxuICAvLy8gQWJlcnR1cmEgZSBmZWNoYW1lbnRvIGRhIGxpc3RhXG4gIG9uRm9jdXNJbihmb2N1cyA9IGZhbHNlKSB7XG4gICAgdGhpcy5yZW5kZXJCb3hPcHRpb25zKCk7XG4gICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIHRoaXMuaXNGb2N1c2VkID0gZm9jdXM7XG4gICAgdGhpcy5zaG93TGlzdCA9IGZvY3VzO1xuICAgIHRoaXMucG9zaXRpb25Cb3goKTtcbiAgfVxuXG4gIC8vLyBoZXJlIGZ1bmN0aW9uIHRvIHBvc2l0aW9uIGJveCBlbGVtZW50IHRvcCBvciBib3R0b21cbiAgcG9zaXRpb25Cb3goKSB7XG4gICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wb25lbnRCb3ggPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKCFjb21wb25lbnRCb3gpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgY29tcG9uZW50Qm94UG9zaXRpb24gPSBjb21wb25lbnRCb3guZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgaW5wdXRJZCA9IGNvbXBvbmVudEJveC5xdWVyeVNlbGVjdG9yKCcuZm9ybS1maWVsZCcpO1xuICAgIGNvbnN0IGJveCA9IGNvbXBvbmVudEJveC5xdWVyeVNlbGVjdG9yKCcud2NvLXNtYXJ0U2VsZWN0LS1ib3gnKTtcbiAgICBjb25zdCBpbnB1dElkUG9zaXRpb24gPSBpbnB1dElkLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcbiAgICBjb25zdCBwYWdlSGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xuICAgIGlmIChib3ggJiYgY29tcG9uZW50Qm94UG9zaXRpb24ueSArIDMyMCA+PSBwYWdlSGVpZ2h0KSB7XG4gICAgICBib3guc3R5bGUuYm90dG9tID0gaW5wdXRJZFBvc2l0aW9uICsgJ3B4JztcbiAgICAgIGJveC5zdHlsZS5oZWlnaHQgPSBgdmFyKC0td2NvLXNtYXJ0LXNlbGVjdC1ib3gtbWF4LWhlaWdodClgO1xuICAgICAgYm94LnN0eWxlLnRvcCA9ICdpbml0aWFsJztcbiAgICB9IGVsc2Uge1xuICAgICAgYm94LnN0eWxlLnRvcCA9IGlucHV0SWRQb3NpdGlvbiArICdweCc7XG4gICAgICBib3guc3R5bGUuYm90dG9tID0gJ2luaXRpYWwnO1xuICAgICAgYm94LnN0eWxlLmhlaWdodCA9IGBhdXRvYDtcbiAgICB9XG4gIH1cblxuICBvblNlbGVjdChvcHRpb24/OiBhbnkpIHtcbiAgICBpZiAob3B0aW9uLmRpc2FibGVkIHx8IG9wdGlvbi52aWV3T25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9sZFZhbHVlID0gdGhpcy5mb3JtVmFsdWU7XG5cbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdCkge1xuICAgICAgaWYgKHR5cGVvZiBvcHRpb24udmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbnN0IGxpc3QgPSB0aGlzLmNvbXBhcmVNdWx0aVZhbHVlc0FycmF5KG9wdGlvbik7XG4gICAgICAgIGNvbnN0IGhhc1ZhbHVlT3B0aW9uID0gbGlzdC5zb21lKChpdGVtOiBhbnkpID0+IGl0ZW0uc2VsZWN0ZWQpO1xuICAgICAgICBpZiAoaGFzVmFsdWVPcHRpb24pIHtcbiAgICAgICAgICB0aGlzLmZvcm1WYWx1ZSA9IGxpc3RcbiAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW06IGFueSkgPT4gIWl0ZW0uc2VsZWN0ZWQpXG4gICAgICAgICAgICAubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0uaXRlbSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5mb3JtVmFsdWUgPSBbLi4uKHRoaXMuZm9ybVZhbHVlIHx8IFtdKSwgb3B0aW9uLnZhbHVlXTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmZvcm1WYWx1ZT8uaW5kZXhPZihvcHRpb24udmFsdWUpO1xuICAgICAgICBpZiAoaW5kZXggIT09IHVuZGVmaW5lZCAmJiBpbmRleCA+IC0xKSB7XG4gICAgICAgICAgdGhpcy5mb3JtVmFsdWU/LnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5mb3JtVmFsdWUgPSBbLi4uKHRoaXMuZm9ybVZhbHVlIHx8IFtdKSwgb3B0aW9uLnZhbHVlXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5hdXRvY29tcGxldGVDb250cm9sLnNldFZhbHVlKHRoaXMuZm9ybVZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb3JtVmFsdWUgPSBvcHRpb24udmFsdWU7XG4gICAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbnRyb2wuc2V0VmFsdWUob3B0aW9uLnZhbHVlKTtcbiAgICAgIHRoaXMuc2hvd0xpc3QgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAob2xkVmFsdWUgIT09IHRoaXMuZm9ybVZhbHVlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyB0eXBlOiAndXBkYXRlVmFsdWUnLCB2YWx1ZTogdGhpcy5mb3JtVmFsdWUgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5yZW5kZXJCb3hPcHRpb25zKCk7XG4gIH1cblxuICAvLyBTaG93IGxhYmVsIHNwYW5cbiAgZ2V0IHNlbGVjdGVkTGFiZWwoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB0aGlzLm9wdGlvbnM/LmZpbmQoXG4gICAgICAob3B0aW9uKSA9PlxuICAgICAgICB0aGlzLm5vcm1hbGl6ZVRleHQoU3RyaW5nKG9wdGlvbi52YWx1ZSkpID09PVxuICAgICAgICB0aGlzLm5vcm1hbGl6ZVRleHQoU3RyaW5nKHRoaXMuZm9ybVZhbHVlKSlcbiAgICApO1xuICAgIHJldHVybiBzZWxlY3RlZE9wdGlvbj8ubGFiZWwgfHwgJyAnO1xuICB9XG5cbiAgLy8gc2hvdyBsYWJlbCBtdWx0aSBzZWxlY3RcbiAgZ2V0IHNlbGVjdGVkTGFiZWxNdWx0aSgpOiB7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmcgfVtdIHtcbiAgICBjb25zdCBzZWxlY3RlZE9wdGlvbnMgPSB0aGlzLm9wdGlvbnM/LmZpbHRlcigob3B0aW9uKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIG9wdGlvbi52YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcGFyZVZhbHVlQXJyYXkob3B0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1WYWx1ZT8uaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmICghc2VsZWN0ZWRPcHRpb25zPy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuc2hvd01heFNlbGVjdGVkTGFiZWwpIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZE9wdGlvbnM7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgdGhpcy5zaG93TWF4U2VsZWN0ZWRMYWJlbCAmJlxuICAgICAgc2VsZWN0ZWRPcHRpb25zLmxlbmd0aCA+IHRoaXMuc2hvd01heFNlbGVjdGVkTGFiZWxcbiAgICApIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZE9wdGlvbnMuc2xpY2UoMCwgdGhpcy5zaG93TWF4U2VsZWN0ZWRMYWJlbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNlbGVjdGVkT3B0aW9ucztcbiAgfVxuXG4gIHByaXZhdGUgdmFsdWVUb0FycmF5KG9wdGlvbnM6IGFueSkge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhvcHRpb25zKTtcbiAgICBjb25zdCB2YWx1ZTogYW55W10gPSBbXTtcbiAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBvcHRpb25zW2tleV0gJiYgXG4gICAgICAgIG9wdGlvbnNba2V5XSAhPT0gJycgJiZcbiAgICAgICAgdHlwZW9mIG9wdGlvbnNba2V5XSAhPT0gJ29iamVjdCcgJiYgXG4gICAgICAgIHR5cGVvZiBvcHRpb25zW2tleV0gIT09ICdmdW5jdGlvbicmJiBcbiAgICAgICAgdHlwZW9mIG9wdGlvbnNba2V5XSAhPT0gJ2Jvb2xlYW4nXG4gICAgICApIHtcbiAgICAgICAgdmFsdWUucHVzaChvcHRpb25zW2tleV0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgY29tcGFyZVZhbHVlQXJyYXkob3B0aW9uOiBhbnksIHZhbHVlID0gdGhpcy5mb3JtVmFsdWUpOiBhbnlbXSB7XG4gICAgaWYgKG9wdGlvbiAmJiBvcHRpb24udmFsdWUpIHtcbiAgICAgIGNvbnN0IHZhbHVlc0l0ZW1zID0gdGhpcy52YWx1ZVRvQXJyYXkob3B0aW9uLnZhbHVlKTtcbiAgICAgIHJldHVybiB2YWx1ZS5zb21lKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgaXRlbUFycmF5ID0gdGhpcy52YWx1ZVRvQXJyYXkoaXRlbSk7XG4gICAgICAgIHJldHVybiBpdGVtQXJyYXkuZXZlcnkoKGl0ZW1WYWx1ZTogYW55KSA9PlxuICAgICAgICAgIHZhbHVlc0l0ZW1zLmluY2x1ZGVzKGl0ZW1WYWx1ZSlcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH1cblxuICBwcml2YXRlIGNvbXBhcmVNdWx0aVZhbHVlc0FycmF5KG9wdGlvbjogYW55LCB2YWx1ZSA9IHRoaXMuZm9ybVZhbHVlKTogYW55W10ge1xuICAgIGlmIChvcHRpb24gJiYgb3B0aW9uLnZhbHVlKSB7XG4gICAgICBjb25zdCB2YWx1ZXNJdGVtcyA9IHRoaXMudmFsdWVUb0FycmF5KG9wdGlvbi52YWx1ZSk7XG4gICAgICBjb25zdCBmb3JtVmFsdWVBcnJheSA9IHZhbHVlLm1hcCgoaXRlbTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW1BcnJheSA9IHRoaXMudmFsdWVUb0FycmF5KGl0ZW0pO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGluZGV4LFxuICAgICAgICAgIGl0ZW0sXG4gICAgICAgICAgc2VsZWN0ZWQ6IGl0ZW1BcnJheS5zb21lKChpdGVtVmFsdWU6IGFueSkgPT5cbiAgICAgICAgICAgIHZhbHVlc0l0ZW1zLmluY2x1ZGVzKGl0ZW1WYWx1ZSlcbiAgICAgICAgICApLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgICAvLyBSZW1vdmUgZHVwbGljYXRlIGl0ZW1zXG4gICAgICBjb25zdCB1bmlxdWVGb3JtVmFsdWVBcnJheSA9IEFycmF5LmZyb20oXG4gICAgICAgIG5ldyBTZXQoZm9ybVZhbHVlQXJyYXkubWFwKChpdGVtOiBhbnkpID0+IEpTT04uc3RyaW5naWZ5KGl0ZW0pKSlcbiAgICAgICkubWFwKChpdGVtOiBhbnkpID0+IEpTT04ucGFyc2UoaXRlbSkpO1xuXG4gICAgICByZXR1cm4gdW5pcXVlRm9ybVZhbHVlQXJyYXk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZExhYmVsTXVsdGlDb3VudCgpOiBudW1iZXIge1xuICAgIGNvbnN0IHNob3cgPSB0aGlzLnNob3dNYXhTZWxlY3RlZExhYmVsIHx8IDA7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb25zID0gdGhpcy5vcHRpb25zPy5maWx0ZXIoKG9wdGlvbikgPT5cbiAgICAgIHRoaXMuZm9ybVZhbHVlPy5pbmNsdWRlcyhvcHRpb24udmFsdWUpXG4gICAgKTtcbiAgICBpZiAoIXNlbGVjdGVkT3B0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBpZiAoc2hvdyA+IDAgJiYgc2VsZWN0ZWRPcHRpb25zLmxlbmd0aCA+IHNob3cpIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZE9wdGlvbnMubGVuZ3RoIC0gc2hvdztcbiAgICB9XG5cbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0ob3B0aW9uOiBhbnkpIHtcbiAgICB0aGlzLm9uU2VsZWN0KG9wdGlvbik7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnNob3dMaXN0ID0gZmFsc2U7XG4gICAgfSwgMTAwKTtcbiAgfVxuXG4gIG9uS2V5UHJlc3MoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5yZW5kZXJCb3hPcHRpb25zKCk7XG4gIH1cblxuICBvbkZpbHRlcihldmVudDogYW55KSB7XG4gICAgY29uc3QgdmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5yZW5kZXJCb3hPcHRpb25zKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZmlsdGVyZWRPcHRpb25zLmxlbmd0aCkge1xuICAgICAgdGhpcy5yZW5kZXJCb3hPcHRpb25zKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBvblJlc2l6ZSgpIHtcbiAgICB0aGlzLnJlbmRlckJveE9wdGlvbnMoKTtcbiAgICB0aGlzLnBvc2l0aW9uQm94KCk7XG4gIH1cblxuICBvbkZvY3VzT3V0KCkge1xuICAgIGlmICghdGhpcy5wcmV2ZW50RXNjYXBlRm9jdXMgJiYgIXRoaXMuaXNNb2JpbGUpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICB0aGlzLnNob3dMaXN0ID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgY2xvc2VMaXN0KCkge1xuICAgIHRoaXMucHJldmVudEVzY2FwZUZvY3VzID0gdHJ1ZTtcbiAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xuICAgIHRoaXMuc2hvd0xpc3QgPSBmYWxzZTtcbiAgfVxuXG4gIHNlbGVjdGVkVmFsdWUob3B0aW9uOiB7IHZhbHVlOiBhbnk7IGxhYmVsOiBzdHJpbmc7IHNhZmVIdG1sQ29udGVudDogYW55IH0pIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdCkge1xuICAgICAgaWYgKHR5cGVvZiBvcHRpb24udmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGlmIChvcHRpb24gJiYgb3B0aW9uLnZhbHVlKSB7XG4gICAgICAgICAgY29uc3QgdmFsdWVzSXRlbXMgPSB0aGlzLnZhbHVlVG9BcnJheShvcHRpb24udmFsdWUpO1xuICAgICAgICAgIHJldHVybiB0aGlzLmZvcm1WYWx1ZS5zb21lKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1BcnJheSA9IHRoaXMudmFsdWVUb0FycmF5KGl0ZW0pO1xuICAgICAgICAgICAgcmV0dXJuIGl0ZW1BcnJheS5ldmVyeSgoaXRlbVZhbHVlOiBhbnkpID0+XG4gICAgICAgICAgICAgIHZhbHVlc0l0ZW1zLmluY2x1ZGVzKGl0ZW1WYWx1ZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1WYWx1ZT8uaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gb3B0aW9uLnZhbHVlID09PSB0aGlzLmZvcm1WYWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgcmVuZGVyQm94T3B0aW9ucyhmaWx0ZXJWYWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGwpIHtcbiAgICBpZiAoIXRoaXMub3B0aW9ucyB8fCAhdGhpcy5vcHRpb25zLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMub3B0aW9uc1xuICAgICAgPy5tYXAoKG9wdGlvbikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgICAgICAgaWNvblByZWZpeDogb3B0aW9uLmljb25QcmVmaXgsXG4gICAgICAgICAgaHRtbExhYmVsOiBvcHRpb24uc2FmZUh0bWxDb250ZW50IHx8IG9wdGlvbi5sYWJlbCxcbiAgICAgICAgICBkaXNhYmxlZDogb3B0aW9uLmRpc2FibGVkLFxuICAgICAgICAgIHZpZXdPbmx5OiBvcHRpb24udmlld09ubHksXG4gICAgICAgIH07XG4gICAgICB9KVxuICAgICAgLmZpbHRlcigob3B0aW9uKSA9PiB7XG4gICAgICAgIGlmICghZmlsdGVyVmFsdWUpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBub3JtYWxpemVkRmlsdGVyID0gdGhpcy5ub3JtYWxpemVUZXh0KGZpbHRlclZhbHVlKTtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZExhYmVsID0gdGhpcy5ub3JtYWxpemVUZXh0KFxuICAgICAgICAgIG9wdGlvbi5odG1sTGFiZWw/LnRvU3RyaW5nKCkgfHwgJydcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZWRMYWJlbC5pbmNsdWRlcyhub3JtYWxpemVkRmlsdGVyKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBub3JtYWxpemVUZXh0KHRleHQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRleHRcbiAgICAgIC5yZXBsYWNlKC9bXFxXX10rL2csICcnKSAvLyBSZW1vdmUgY2FyYWN0ZXJlcyBlc3BlY2lhaXMgZSBzdWJsaW5oYWRvc1xuICAgICAgLnRvTG93ZXJDYXNlKCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJ3Y28tc21hcnRTZWxlY3RcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3djby1zbWFydFNlbGVjdC0tb3Blbic6IHNob3dMaXN0LFxuICAgICd3Y28tc21hcnRTZWxlY3QtLWlzTW9iaWxlJzogaXNNb2JpbGUsXG59XCJcbiAgKHJlc2l6ZSk9XCJvblJlc2l6ZSgpXCJcbiAgKG1vdXNlbGVhdmUpPVwib25Gb2N1c091dCgpXCJcbj5cbiAgPGRpdiBjbGFzcz1cImZvcm0tZmllbGRcIj5cbiAgICA8aW5wdXRcbiAgICAgICpuZ0lmPVwiIW11bHRpU2VsZWN0XCJcbiAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXRcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAnZm9ybS1maWVsZC0tZXJyb3InOlxuICAgICAgICAgIGF1dG9jb21wbGV0ZUNvbnRyb2wuaW52YWxpZCAmJiBhdXRvY29tcGxldGVDb250cm9sLnRvdWNoZWRcbiAgICAgIH1cIlxuICAgICAgW2Rpc2FibGVkXT1cImF1dG9jb21wbGV0ZUNvbnRyb2wuZGlzYWJsZWRcIlxuICAgICAgaWQ9XCJ7eyBpbnB1dElkID8gaW5wdXRJZCA6ICcnIH19XCJcbiAgICAgIG5hbWU9XCJ7eyBpbnB1dE5hbWUgPyBpbnB1dE5hbWUgOiAnJyB9fVwiXG4gICAgICAoY2xpY2spPVwib25Gb2N1c0luKHRydWUpXCJcbiAgICAgIChmb2N1c2luKT1cIm9uRm9jdXNJbigpXCJcbiAgICAgIChrZXl1cC5lc2NhcGUpPVwib25Gb2N1c091dCgpXCJcbiAgICAgIChrZXlwcmVzcyk9XCJvbktleVByZXNzKCRldmVudClcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZExhYmVsXCJcbiAgICAgIGFyaWEtbGFiZWw9XCJTZWxlY2lvbmUgdW1hIG9ww6fDo29cIlxuICAgIC8+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFwiXG4gICAgICBjbGFzcz1cImZvcm0tZmllbGRfX2lucHV0IHJlYWRvbmx5IG11bHRpU2VsZWN0XCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAnZm9ybS1maWVsZC0tZXJyb3InOiBhdXRvY29tcGxldGVDb250cm9sLmludmFsaWQgJiYgYXV0b2NvbXBsZXRlQ29udHJvbC50b3VjaGVkLFxuICAgICAgICAgICAgICAgICdmb3JtLWZpZWxkLS1kaXNhYmxlZCc6IGF1dG9jb21wbGV0ZUNvbnRyb2wuZGlzYWJsZWQsXG4gICAgICAgICAgICB9XCJcbiAgICAgIChjbGljayk9XCJvbkZvY3VzSW4odHJ1ZSlcIlxuICAgICAgKGZvY3VzaW4pPVwib25Gb2N1c0luKClcIlxuICAgICAgKGtleXVwLmVzY2FwZSk9XCJvbkZvY3VzT3V0KClcIlxuICAgID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXNlbGVjdGVkTGFiZWxNdWx0aS5sZW5ndGhcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ3Y28tc21hcnQtc2VsZWN0LXBsYWNlaG9sZGVyXCI+e3sgcGxhY2Vob2xkZXIgfHwgJ1NlbGVjaW9uZSB1bWEgb3DDp8OjbycgfX08L3NwYW4+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZExhYmVsTXVsdGkubGVuZ3RoXCI+XG4gICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBvcHRpb25TZWxlY3RlZCBvZiBzZWxlY3RlZExhYmVsTXVsdGlcIiBjbGFzcz1cIndjby1zbWFydC1zZWxlY3QtaXRlbVwiPlxuICAgICAgICAgIHt7b3B0aW9uU2VsZWN0ZWQubGFiZWx9fSBcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIndjby1zbWFydC1zZWxlY3QtcmVtb3ZlXCIgKGNsaWNrKT1cInJlbW92ZUl0ZW0ob3B0aW9uU2VsZWN0ZWQpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zXCI+Y2xvc2U8L3NwYW4+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3Y28tc21hcnQtc2VsZWN0LWl0ZW1cIiAgKm5nSWY9XCJzZWxlY3RlZExhYmVsTXVsdGlDb3VudCA+PSAxXCI+XG4gICAgICAgICAgICAre3tzZWxlY3RlZExhYmVsTXVsdGlDb3VudH19IFxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgICA8bGFiZWw+e3sgbGFiZWwgfX08L2xhYmVsPlxuICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIj57eyBJY29uTWF0ZXJpYWwgfX08L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ3Y28tc21hcnRTZWxlY3QtLWJveFwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ3djby1zbWFydFNlbGVjdC0tYm94LS1vcGVuJzogc2hvd0xpc3QgJiYgIWF1dG9jb21wbGV0ZUNvbnRyb2wuZGlzYWJsZWRcbiAgICB9XCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJ3Y28tc21hcnRTZWxlY3QtLWlzTW9iaWxlLWNsb3NlXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIChjbGljayk9XCJjbG9zZUxpc3QoKVwiXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tcHJpbWFyeSBidG4tb3V0bGluZSBtYi1uYW5vXCJcbiAgICAgID5cbiAgICAgICAgZmVjaGFyXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8dWw+XG4gICAgICA8bGlcbiAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgY2xhc3M9XCJ3Y28tc21hcnQtc2VsZWN0ZWQtZmlsdGVyXCJcbiAgICAgICAgKm5nSWY9XCJzaG93TGlzdCAmJiBzaG93U2VhcmNoXCJcbiAgICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJidXNjYXJcIlxuICAgICAgICAgIChrZXl1cCk9XCJvbkZpbHRlcigkZXZlbnQpXCJcbiAgICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoIHRocm91Z2ggc2l0ZSBjb250ZW50XCJcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIC8+XG4gICAgICA8L2xpPlxuICAgICAgPGxpXG4gICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyZWRPcHRpb25zOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgW3RhYmluZGV4XT1cImkgKyAxXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3djby1zbWFydC1zZWxlY3RlZCc6IHNlbGVjdGVkVmFsdWUob3B0aW9uKSxcbiAgICAgICAgICAgICd3Yy1zbWFydC1zZWxlY3QtZGlzYWJsZWQtb3B0aW9uJzogb3B0aW9uLmRpc2FibGVkLFxuICAgICAgICAgICAgJ3djLXNtYXJ0LXNlbGVjdC12aWV3LW9ubHktb3B0aW9uJzogb3B0aW9uLnZpZXdPbmx5LFxuICAgICAgICB9XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0KG9wdGlvbilcIlxuICAgICAgPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIndjby1zbWFydC1zZWxlY3QtbGFiZWwtcHJlZml4XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInR5cGVQcmVmaXggPT09ICdjaGVja2JveCdcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICBzZWxlY3RlZFZhbHVlKG9wdGlvbikgPyBcImNoZWNrX2JveFwiIDogXCJjaGVja19ib3hfb3V0bGluZV9ibGFua1wiXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInR5cGVQcmVmaXggPT09ICdyYWRpbydcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICBzZWxlY3RlZFZhbHVlKG9wdGlvbilcbiAgICAgICAgICAgICAgICAgID8gXCJyYWRpb19idXR0b25fY2hlY2tlZFwiXG4gICAgICAgICAgICAgICAgICA6IFwicmFkaW9fYnV0dG9uX3VuY2hlY2tlZFwiXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgISFvcHRpb24uaWNvblByZWZpeCAmJlxuICAgICAgICAgICAgICB0eXBlUHJlZml4ICE9PSAncmFkaW8nICYmXG4gICAgICAgICAgICAgIHR5cGVQcmVmaXggIT09ICdjaGVja2JveCdcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZFwiPlxuICAgICAgICAgICAgICB7eyBvcHRpb24uaWNvblByZWZpeCB9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJ3Y28tc21hcnQtc2VsZWN0LWxhYmVsXCJcbiAgICAgICAgICBbaW5uZXJIVE1MXT1cIm9wdGlvbi5odG1sTGFiZWxcIlxuICAgICAgICA+PC9zcGFuPlxuICAgICAgPC9saT5cbiAgICAgIDxsaSAqbmdJZj1cIiFmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiZGlzcGxheS1ib2R5XCI+e3sgdGV4dEVtcHR5IH19PC9wPlxuICAgICAgPC9saT5cbiAgICA8L3VsPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -125,14 +125,14 @@ export class TabsComponent {
125
125
  }, timer);
126
126
  }
127
127
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TabsComponent, deps: [{ token: i1.Router }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
128
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TabsComponent, isStandalone: true, selector: "wco-navtabs", inputs: { type: "type", full: "full", selected: "selected", enabledResponsive: ["enabled-responsive", "enabledResponsive"], setListOptions: ["listOptions", "setListOptions"], noBorder: ["no-border", "noBorder"] }, outputs: { handleClick: "handleClick" }, viewQueries: [{ propertyName: "navTabs", first: true, predicate: ["navTabs"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n <nav \n class=\"wco-navtabs\" \n #navTabs role=\"navigation\"\n [class.no-border]=\"noBorder\" \n [class.navTabs-full]=\"full\"\n [class.navTabs-mobile]=\"!isMobile\"\n>\n <ng-container *ngFor=\"let link of links\">\n <ng-container *ngIf=\"link.type === 'link'\">\n <button \n (click)=\"eventSubmit()\" \n [class.color-to-nav]=\"type === 'nav'\"\n [routerLink]=\"link.path\" routerLinkActive=\"active\" [attr.id]=\"'page-' + link.path\"\n >\n {{ link.name }}\n </button>\n </ng-container>\n </ng-container>\n <ng-content></ng-content>\n</nav>\n", styles: ["wco-navtabs{width:100%;overflow:auto;display:block}@media screen and (max-width: 600px){wco-navtabs{overflow:auto;white-space:nowrap;max-width:100vw}wco-navtabs::-webkit-scrollbar{display:none}}.wco-navtabs{--leftActive: 50px;--widthActive: 0px;--navtabs-gapLine: var(--wco-spacing-nano);--navtabs-gap: 0;--navtab-color-selected: var(--wco-color-primary-600);--navtabs-underline-height: 3px;display:inline-flex;position:relative;gap:var(--navtabs-gap);height:100%;border-bottom:1px solid var(--wco-color-neutral-100);scroll-behavior:smooth}.wco-navtabs.navTabs-mobile:before{display:none}.wco-navtabs.navTabs-mobile button.active{border-bottom:3px solid var(--wco-color-primary-600)}.wco-navtabs.navTabs-full{display:grid;grid-template-columns:repeat(auto-fit,minmax(30px,1fr))}.wco-navtabs.navTabs-full>button{width:100%}.wco-navtabs.no-border{border-bottom:none!important}@media (max-width: 900px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxxs);--navtabs-gap: var(--wco-spacing-xxs)}}@media (max-width: 600px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxs)}}.wco-navtabs:before{content:\"\";width:var(--widthActive);height:var(--navtabs-underline-height);background-color:var(--navtab-color-selected);position:absolute;bottom:0;left:0;transform:translate(var(--leftActive));transition:transform .15s cubic-bezier(.645,.045,.355,1),width .1s linear}.wco-navtabs button{background-color:transparent;border:none;font-size:var(--wco-font-size-md);font-weight:500;min-height:48px;padding:var(--wco-spacing-nano) var(--wco-spacing-xxs) var(--navtabs-gapLine) var(--wco-spacing-xxs);display:flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:center;color:var(--wco-color-neutral-900);letter-spacing:.5px}.wco-navtabs button:hover:not(:disabled){background-color:var(--wco-color-primary-50);color:var(--wco-color-primary-700);cursor:pointer;border-radius:var(--wco-spacing-nano) var(--wco-spacing-nano) 0 0}@media (max-width: 600px){.wco-navtabs button{font-size:var(--wco-font-size-xs);min-height:30px}}.wco-navtabs button:disabled{cursor:not-allowed;color:var(--wco-color-neutral-900)}.wco-navtabs button.color-to-nav{font-weight:700}.wco-navtabs button.active{font-weight:700;letter-spacing:0px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], encapsulation: i0.ViewEncapsulation.None });
128
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TabsComponent, isStandalone: true, selector: "wco-navtabs", inputs: { type: "type", full: "full", selected: "selected", enabledResponsive: ["enabled-responsive", "enabledResponsive"], setListOptions: ["listOptions", "setListOptions"], noBorder: ["no-border", "noBorder"] }, outputs: { handleClick: "handleClick" }, viewQueries: [{ propertyName: "navTabs", first: true, predicate: ["navTabs"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n <nav \n class=\"wco-navtabs\" \n #navTabs role=\"navigation\"\n [class.no-border]=\"noBorder\" \n [class.navTabs-full]=\"full\"\n [class.navTabs-mobile]=\"!isMobile\"\n>\n <ng-container *ngFor=\"let link of links\">\n <ng-container *ngIf=\"link.type === 'link'\">\n <button \n (click)=\"eventSubmit()\" \n [class.color-to-nav]=\"type === 'nav'\"\n [routerLink]=\"link.path\" routerLinkActive=\"active\" [attr.id]=\"'page-' + link.path\"\n >\n {{ link.name }}\n </button>\n </ng-container>\n </ng-container>\n <ng-content></ng-content>\n</nav>\n", styles: ["wco-navtabs{width:100%;overflow:auto;display:block}@media screen and (max-width: 600px){wco-navtabs{overflow:auto;white-space:nowrap;max-width:100vw}wco-navtabs::-webkit-scrollbar{display:none}}.wco-navtabs{--leftActive: 50px;--widthActive: 0px;--navtabs-gapLine: var(--wco-spacing-nano);--navtabs-gap: 0;--navtab-color-selected: var(--wco-color-primary-600);--navtabs-underline-height: 3px;display:inline-flex;position:relative;gap:var(--navtabs-gap);height:100%;border-bottom:1px solid var(--wco-color-neutral-100);scroll-behavior:smooth}.wco-navtabs.navTabs-mobile:before{display:none}.wco-navtabs.navTabs-mobile button.active{border-bottom:3px solid var(--wco-color-primary-600)}.wco-navtabs.navTabs-full{display:grid;grid-template-columns:repeat(auto-fit,minmax(30px,1fr))}.wco-navtabs.navTabs-full>button{width:100%}.wco-navtabs.no-border{border-bottom:none!important}@media (max-width: 900px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxxs);--navtabs-gap: var(--wco-spacing-xxs)}}@media (max-width: 600px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxs)}}.wco-navtabs:before{content:\"\";width:var(--widthActive);height:var(--navtabs-underline-height);background-color:var(--navtab-color-selected);position:absolute;bottom:0;left:0;transform:translate(var(--leftActive));transition:transform .15s cubic-bezier(.645,.045,.355,1),width .1s linear}.wco-navtabs button{background-color:transparent;border:none;font-size:var(--wco-font-size-md);font-weight:400;min-height:48px;padding:var(--wco-spacing-nano) var(--wco-spacing-xxs) var(--navtabs-gapLine) var(--wco-spacing-xxs);display:flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:center;color:var(--wco-color-neutral-900);letter-spacing:.5px}.wco-navtabs button:hover:not(:disabled){background-color:var(--wco-color-primary-50);color:var(--wco-color-primary-700);cursor:pointer;border-radius:var(--wco-spacing-nano) var(--wco-spacing-nano) 0 0}@media (max-width: 600px){.wco-navtabs button{font-size:var(--wco-font-size-xs);min-height:30px}}.wco-navtabs button:disabled{cursor:not-allowed;color:var(--wco-color-neutral-900)}.wco-navtabs button.color-to-nav{font-weight:700}.wco-navtabs button.active{font-weight:700;letter-spacing:0px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], encapsulation: i0.ViewEncapsulation.None });
129
129
  }
130
130
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TabsComponent, decorators: [{
131
131
  type: Component,
132
132
  args: [{ selector: 'wco-navtabs', standalone: true, imports: [
133
133
  CommonModule,
134
134
  RouterModule
135
- ], encapsulation: ViewEncapsulation.None, template: "\n <nav \n class=\"wco-navtabs\" \n #navTabs role=\"navigation\"\n [class.no-border]=\"noBorder\" \n [class.navTabs-full]=\"full\"\n [class.navTabs-mobile]=\"!isMobile\"\n>\n <ng-container *ngFor=\"let link of links\">\n <ng-container *ngIf=\"link.type === 'link'\">\n <button \n (click)=\"eventSubmit()\" \n [class.color-to-nav]=\"type === 'nav'\"\n [routerLink]=\"link.path\" routerLinkActive=\"active\" [attr.id]=\"'page-' + link.path\"\n >\n {{ link.name }}\n </button>\n </ng-container>\n </ng-container>\n <ng-content></ng-content>\n</nav>\n", styles: ["wco-navtabs{width:100%;overflow:auto;display:block}@media screen and (max-width: 600px){wco-navtabs{overflow:auto;white-space:nowrap;max-width:100vw}wco-navtabs::-webkit-scrollbar{display:none}}.wco-navtabs{--leftActive: 50px;--widthActive: 0px;--navtabs-gapLine: var(--wco-spacing-nano);--navtabs-gap: 0;--navtab-color-selected: var(--wco-color-primary-600);--navtabs-underline-height: 3px;display:inline-flex;position:relative;gap:var(--navtabs-gap);height:100%;border-bottom:1px solid var(--wco-color-neutral-100);scroll-behavior:smooth}.wco-navtabs.navTabs-mobile:before{display:none}.wco-navtabs.navTabs-mobile button.active{border-bottom:3px solid var(--wco-color-primary-600)}.wco-navtabs.navTabs-full{display:grid;grid-template-columns:repeat(auto-fit,minmax(30px,1fr))}.wco-navtabs.navTabs-full>button{width:100%}.wco-navtabs.no-border{border-bottom:none!important}@media (max-width: 900px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxxs);--navtabs-gap: var(--wco-spacing-xxs)}}@media (max-width: 600px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxs)}}.wco-navtabs:before{content:\"\";width:var(--widthActive);height:var(--navtabs-underline-height);background-color:var(--navtab-color-selected);position:absolute;bottom:0;left:0;transform:translate(var(--leftActive));transition:transform .15s cubic-bezier(.645,.045,.355,1),width .1s linear}.wco-navtabs button{background-color:transparent;border:none;font-size:var(--wco-font-size-md);font-weight:500;min-height:48px;padding:var(--wco-spacing-nano) var(--wco-spacing-xxs) var(--navtabs-gapLine) var(--wco-spacing-xxs);display:flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:center;color:var(--wco-color-neutral-900);letter-spacing:.5px}.wco-navtabs button:hover:not(:disabled){background-color:var(--wco-color-primary-50);color:var(--wco-color-primary-700);cursor:pointer;border-radius:var(--wco-spacing-nano) var(--wco-spacing-nano) 0 0}@media (max-width: 600px){.wco-navtabs button{font-size:var(--wco-font-size-xs);min-height:30px}}.wco-navtabs button:disabled{cursor:not-allowed;color:var(--wco-color-neutral-900)}.wco-navtabs button.color-to-nav{font-weight:700}.wco-navtabs button.active{font-weight:700;letter-spacing:0px}\n"] }]
135
+ ], encapsulation: ViewEncapsulation.None, template: "\n <nav \n class=\"wco-navtabs\" \n #navTabs role=\"navigation\"\n [class.no-border]=\"noBorder\" \n [class.navTabs-full]=\"full\"\n [class.navTabs-mobile]=\"!isMobile\"\n>\n <ng-container *ngFor=\"let link of links\">\n <ng-container *ngIf=\"link.type === 'link'\">\n <button \n (click)=\"eventSubmit()\" \n [class.color-to-nav]=\"type === 'nav'\"\n [routerLink]=\"link.path\" routerLinkActive=\"active\" [attr.id]=\"'page-' + link.path\"\n >\n {{ link.name }}\n </button>\n </ng-container>\n </ng-container>\n <ng-content></ng-content>\n</nav>\n", styles: ["wco-navtabs{width:100%;overflow:auto;display:block}@media screen and (max-width: 600px){wco-navtabs{overflow:auto;white-space:nowrap;max-width:100vw}wco-navtabs::-webkit-scrollbar{display:none}}.wco-navtabs{--leftActive: 50px;--widthActive: 0px;--navtabs-gapLine: var(--wco-spacing-nano);--navtabs-gap: 0;--navtab-color-selected: var(--wco-color-primary-600);--navtabs-underline-height: 3px;display:inline-flex;position:relative;gap:var(--navtabs-gap);height:100%;border-bottom:1px solid var(--wco-color-neutral-100);scroll-behavior:smooth}.wco-navtabs.navTabs-mobile:before{display:none}.wco-navtabs.navTabs-mobile button.active{border-bottom:3px solid var(--wco-color-primary-600)}.wco-navtabs.navTabs-full{display:grid;grid-template-columns:repeat(auto-fit,minmax(30px,1fr))}.wco-navtabs.navTabs-full>button{width:100%}.wco-navtabs.no-border{border-bottom:none!important}@media (max-width: 900px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxxs);--navtabs-gap: var(--wco-spacing-xxs)}}@media (max-width: 600px){.wco-navtabs{--navtabs-gapLine: var(--wco-spacing-xxs)}}.wco-navtabs:before{content:\"\";width:var(--widthActive);height:var(--navtabs-underline-height);background-color:var(--navtab-color-selected);position:absolute;bottom:0;left:0;transform:translate(var(--leftActive));transition:transform .15s cubic-bezier(.645,.045,.355,1),width .1s linear}.wco-navtabs button{background-color:transparent;border:none;font-size:var(--wco-font-size-md);font-weight:400;min-height:48px;padding:var(--wco-spacing-nano) var(--wco-spacing-xxs) var(--navtabs-gapLine) var(--wco-spacing-xxs);display:flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:center;color:var(--wco-color-neutral-900);letter-spacing:.5px}.wco-navtabs button:hover:not(:disabled){background-color:var(--wco-color-primary-50);color:var(--wco-color-primary-700);cursor:pointer;border-radius:var(--wco-spacing-nano) var(--wco-spacing-nano) 0 0}@media (max-width: 600px){.wco-navtabs button{font-size:var(--wco-font-size-xs);min-height:30px}}.wco-navtabs button:disabled{cursor:not-allowed;color:var(--wco-color-neutral-900)}.wco-navtabs button.color-to-nav{font-weight:700}.wco-navtabs button.active{font-weight:700;letter-spacing:0px}\n"] }]
136
136
  }], ctorParameters: function () { return [{ type: i1.Router }, { type: i0.ElementRef }]; }, propDecorators: { navTabs: [{
137
137
  type: ViewChild,
138
138
  args: ['navTabs']