@skyux/lookup 6.3.3 → 6.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/documentation.json +909 -927
  2. package/esm2020/lib/modules/autocomplete/autocomplete-adapter.service.mjs +12 -8
  3. package/esm2020/lib/modules/autocomplete/autocomplete-default-search-function.mjs +1 -1
  4. package/esm2020/lib/modules/autocomplete/autocomplete-input.directive.mjs +82 -69
  5. package/esm2020/lib/modules/autocomplete/autocomplete.component.mjs +377 -381
  6. package/esm2020/lib/modules/country-field/country-field.component.mjs +170 -152
  7. package/esm2020/lib/modules/lookup/lookup-autocomplete-adapter.mjs +14 -8
  8. package/esm2020/lib/modules/lookup/lookup-show-more-async-modal.component.mjs +65 -58
  9. package/esm2020/lib/modules/lookup/lookup-show-more-modal.component.mjs +49 -41
  10. package/esm2020/lib/modules/lookup/lookup.component.mjs +231 -222
  11. package/esm2020/lib/modules/lookup/types/lookup-show-more-custom-picker-context.mjs +1 -1
  12. package/esm2020/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.mjs +1 -1
  13. package/esm2020/lib/modules/lookup/types/lookup-show-more-native-picker-context.mjs +1 -1
  14. package/esm2020/lib/modules/search/search-adapter.service.mjs +22 -21
  15. package/esm2020/lib/modules/search/search.component.mjs +68 -67
  16. package/esm2020/testing/country-field/country-field-fixture.mjs +1 -1
  17. package/fesm2015/skyux-lookup-testing.mjs.map +1 -1
  18. package/fesm2015/skyux-lookup.mjs +1075 -1021
  19. package/fesm2015/skyux-lookup.mjs.map +1 -1
  20. package/fesm2020/skyux-lookup-testing.mjs.map +1 -1
  21. package/fesm2020/skyux-lookup.mjs +1073 -1019
  22. package/fesm2020/skyux-lookup.mjs.map +1 -1
  23. package/lib/modules/autocomplete/autocomplete-adapter.service.d.ts +1 -3
  24. package/lib/modules/autocomplete/autocomplete-input.directive.d.ts +3 -16
  25. package/lib/modules/autocomplete/autocomplete.component.d.ts +20 -76
  26. package/lib/modules/country-field/country-field.component.d.ts +14 -36
  27. package/lib/modules/lookup/lookup-autocomplete-adapter.d.ts +6 -8
  28. package/lib/modules/lookup/lookup-show-more-async-modal.component.d.ts +9 -16
  29. package/lib/modules/lookup/lookup-show-more-modal.component.d.ts +3 -4
  30. package/lib/modules/lookup/lookup.component.d.ts +17 -42
  31. package/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.d.ts +1 -1
  32. package/lib/modules/lookup/types/lookup-show-more-native-picker-context.d.ts +1 -1
  33. package/lib/modules/search/search-adapter.service.d.ts +1 -5
  34. package/lib/modules/search/search.component.d.ts +11 -22
  35. package/package.json +10 -10
  36. package/testing/country-field/country-field-fixture.d.ts +1 -1
@@ -10,14 +10,15 @@ import * as i4 from '@skyux/indicators';
10
10
  import { SkyTextHighlightModule, SkyIconModule, SkyWaitModule, SkyTokensMessageType, SkyTokensModule } from '@skyux/indicators';
11
11
  import * as i7 from '@skyux/theme';
12
12
  import { SkyThemeModule } from '@skyux/theme';
13
- import * as i5 from '@skyux/i18n';
13
+ import * as i4$1 from '@skyux/i18n';
14
14
  import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
15
+ import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib';
15
16
  import { Subject, fromEvent, of, from } from 'rxjs';
16
17
  import { takeUntil, debounceTime, switchMap, take, map, distinctUntilChanged } from 'rxjs/operators';
17
18
  import * as i6 from '@skyux/forms';
18
19
  import { SkyInputBoxModule, SkyCheckboxModule } from '@skyux/forms';
19
20
  import 'intl-tel-input';
20
- import * as i4$1 from '@skyux/layout';
21
+ import * as i4$2 from '@skyux/layout';
21
22
  import { SkyToolbarModule } from '@skyux/layout';
22
23
  import * as i7$1 from '@skyux/lists';
23
24
  import { SkyInfiniteScrollModule, SkyRepeaterModule } from '@skyux/lists';
@@ -94,6 +95,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
94
95
  }]
95
96
  }] });
96
97
 
98
+ var _SkyAutocompleteInputDirective_instances, _SkyAutocompleteInputDirective_blur, _SkyAutocompleteInputDirective_control, _SkyAutocompleteInputDirective_elementRef, _SkyAutocompleteInputDirective_focus, _SkyAutocompleteInputDirective_isFirstChange, _SkyAutocompleteInputDirective_ngUnsubscribe, _SkyAutocompleteInputDirective_renderer, _SkyAutocompleteInputDirective_textChanges, _SkyAutocompleteInputDirective__autocompleteAttribute, _SkyAutocompleteInputDirective__blurObs, _SkyAutocompleteInputDirective__disabled, _SkyAutocompleteInputDirective__displayWith, _SkyAutocompleteInputDirective__focusObs, _SkyAutocompleteInputDirective__textChangesObs, _SkyAutocompleteInputDirective__value, _SkyAutocompleteInputDirective_setAttributes, _SkyAutocompleteInputDirective_getValueByKey;
97
99
  const SKY_AUTOCOMPLETE_VALUE_ACCESSOR = {
98
100
  provide: NG_VALUE_ACCESSOR,
99
101
  useExisting: forwardRef(() => SkyAutocompleteInputDirective),
@@ -106,17 +108,33 @@ const SKY_AUTOCOMPLETE_VALIDATOR = {
106
108
  };
107
109
  class SkyAutocompleteInputDirective {
108
110
  constructor(elementRef, renderer) {
109
- this.elementRef = elementRef;
110
- this.renderer = renderer;
111
- this.isFirstChange = true;
112
- this.ngUnsubscribe = new Subject();
113
- this._blur = new Subject();
114
- this._disabled = false;
115
- this._focus = new Subject();
116
- this._textChanges = new Subject();
111
+ _SkyAutocompleteInputDirective_instances.add(this);
112
+ _SkyAutocompleteInputDirective_blur.set(this, void 0);
113
+ _SkyAutocompleteInputDirective_control.set(this, void 0);
114
+ _SkyAutocompleteInputDirective_elementRef.set(this, void 0);
115
+ _SkyAutocompleteInputDirective_focus.set(this, void 0);
116
+ _SkyAutocompleteInputDirective_isFirstChange.set(this, true);
117
+ _SkyAutocompleteInputDirective_ngUnsubscribe.set(this, new Subject());
118
+ _SkyAutocompleteInputDirective_renderer.set(this, void 0);
119
+ _SkyAutocompleteInputDirective_textChanges.set(this, void 0);
120
+ _SkyAutocompleteInputDirective__autocompleteAttribute.set(this, void 0);
121
+ _SkyAutocompleteInputDirective__blurObs.set(this, void 0);
122
+ _SkyAutocompleteInputDirective__disabled.set(this, false);
123
+ _SkyAutocompleteInputDirective__displayWith.set(this, '');
124
+ _SkyAutocompleteInputDirective__focusObs.set(this, void 0);
125
+ _SkyAutocompleteInputDirective__textChangesObs.set(this, void 0);
126
+ _SkyAutocompleteInputDirective__value.set(this, void 0);
117
127
  // istanbul ignore next
118
128
  // eslint-disable-next-line @typescript-eslint/no-empty-function
119
129
  this.onValidatorChange = () => { };
130
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_elementRef, elementRef, "f");
131
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_renderer, renderer, "f");
132
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_blur, new Subject(), "f");
133
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_focus, new Subject(), "f");
134
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_textChanges, new Subject(), "f");
135
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__blurObs, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_blur, "f").asObservable(), "f");
136
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__focusObs, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_focus, "f").asObservable(), "f");
137
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__textChangesObs, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_textChanges, "f").asObservable(), "f");
120
138
  }
121
139
  /**
122
140
  * Specifies the value for the `autocomplete` attribute on the form input.
@@ -124,114 +142,109 @@ class SkyAutocompleteInputDirective {
124
142
  */
125
143
  set autocompleteAttribute(value) {
126
144
  if (!value) {
127
- this._autocompleteAttribute = 'off';
145
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, 'off', "f");
128
146
  }
129
147
  else {
130
- this._autocompleteAttribute = value;
148
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, value, "f");
131
149
  }
132
- this.renderer.setAttribute(this.elementRef.nativeElement, 'autocomplete', this.autocompleteAttribute);
150
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'autocomplete', __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, "f"));
133
151
  }
134
152
  get autocompleteAttribute() {
135
- return this._autocompleteAttribute || 'off';
153
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, "f") || 'off';
136
154
  }
137
155
  /**
138
156
  * Indicates whether to disable the autocomplete field.
139
157
  * @default false
140
158
  */
141
159
  set disabled(value) {
142
- this._disabled = value;
143
- this.renderer.setProperty(this.elementRef.nativeElement, 'disabled', value);
160
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__disabled, value, "f");
161
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setProperty(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'disabled', value);
144
162
  }
145
163
  get disabled() {
146
- return this._disabled;
164
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__disabled, "f");
147
165
  }
148
166
  get blur() {
149
- return this._blur.asObservable();
167
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__blurObs, "f");
150
168
  }
151
169
  get displayWith() {
152
- return this._displayWith;
170
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__displayWith, "f");
153
171
  }
154
172
  set displayWith(value) {
155
- this._displayWith = value;
156
- this.inputTextValue = this.getValueByKey();
173
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__displayWith, value, "f");
174
+ this.inputTextValue = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_getValueByKey).call(this);
157
175
  }
158
176
  get focus() {
159
- return this._focus.asObservable();
177
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__focusObs, "f");
160
178
  }
161
179
  get inputTextValue() {
162
- return this.elementRef.nativeElement.value;
180
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement.value;
163
181
  }
164
182
  set inputTextValue(value) {
165
- this.elementRef.nativeElement.value = value || '';
183
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement.value = value || '';
166
184
  }
167
185
  get textChanges() {
168
- return this._textChanges.asObservable();
186
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__textChangesObs, "f");
169
187
  }
170
188
  get value() {
171
- return this._value;
189
+ return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f");
172
190
  }
173
191
  set value(value) {
174
- const isNewValue = value !== this._value;
192
+ const isNewValue = value !== __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f");
175
193
  /* istanbul ignore else */
176
194
  if (isNewValue) {
177
- this._value = value;
178
- this.inputTextValue = this.getValueByKey();
179
- this.onChange(this._value);
195
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective__value, value, "f");
196
+ this.inputTextValue = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_getValueByKey).call(this);
197
+ this.onChange(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f"));
180
198
  // Do not mark the field as "dirty"
181
199
  // if the field has been initialized with a value.
182
- if (this.isFirstChange && this.control) {
183
- this.control.markAsPristine();
200
+ if (__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_isFirstChange, "f") && __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_control, "f")) {
201
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_control, "f").markAsPristine();
184
202
  }
185
- if (this.isFirstChange && this._value) {
186
- this.isFirstChange = false;
203
+ if (__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_isFirstChange, "f") && __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f")) {
204
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_isFirstChange, false, "f");
187
205
  }
188
206
  }
189
207
  }
190
208
  ngOnInit() {
191
- const element = this.elementRef.nativeElement;
192
- this.setAttributes(element);
209
+ const element = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement;
210
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_setAttributes).call(this, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f"));
193
211
  fromEvent(element, 'input')
194
- .pipe(takeUntil(this.ngUnsubscribe))
212
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
195
213
  .subscribe(() => {
196
- /** Sanity check */
197
214
  if (!this.disabled) {
198
- this._textChanges.next({
199
- value: this.elementRef.nativeElement.value,
215
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_textChanges, "f").next({
216
+ value: __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement.value,
200
217
  });
201
218
  }
202
219
  });
203
220
  fromEvent(element, 'blur')
204
- .pipe(takeUntil(this.ngUnsubscribe))
221
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
205
222
  .subscribe(() => {
206
- /** Sanity check */
207
223
  if (!this.disabled) {
208
- this._blur.next();
224
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_blur, "f").next();
209
225
  }
210
226
  });
211
227
  fromEvent(element, 'focus')
212
- .pipe(takeUntil(this.ngUnsubscribe))
228
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
213
229
  .subscribe(() => {
214
- /** Sanity check */
215
230
  if (!this.disabled) {
216
- this._focus.next();
231
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_focus, "f").next();
217
232
  }
218
233
  });
219
234
  fromEvent(element, 'change')
220
- .pipe(takeUntil(this.ngUnsubscribe))
235
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
221
236
  .subscribe(() => {
222
- /** Sanity check */
223
237
  /* istanbul ignore else */
224
238
  if (!this.disabled) {
225
- this.isFirstChange = false;
239
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_isFirstChange, false, "f");
226
240
  }
227
241
  });
228
242
  }
229
243
  ngOnDestroy() {
230
- this._blur.complete();
231
- this._textChanges.complete();
232
- this.ngUnsubscribe.next();
233
- this.ngUnsubscribe.complete();
234
- this._blur = this._textChanges = this.ngUnsubscribe = undefined;
244
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_blur, "f").complete();
245
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_textChanges, "f").complete();
246
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f").next();
247
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f").complete();
235
248
  }
236
249
  writeValue(value) {
237
250
  this.value = value;
@@ -246,7 +259,7 @@ class SkyAutocompleteInputDirective {
246
259
  this.onValidatorChange = fn;
247
260
  }
248
261
  restoreInputTextValueToPreviousState() {
249
- const modelValue = this.getValueByKey();
262
+ const modelValue = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_getValueByKey).call(this);
250
263
  // If the search field contains text, make sure that the value
251
264
  // matches the selected descriptor key.
252
265
  if (this.inputTextValue !== modelValue) {
@@ -258,18 +271,18 @@ class SkyAutocompleteInputDirective {
258
271
  this.disabled = disabled;
259
272
  }
260
273
  validate(control) {
261
- if (!this.control) {
262
- this.control = control;
274
+ if (!__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_control, "f")) {
275
+ __classPrivateFieldSet(this, _SkyAutocompleteInputDirective_control, control, "f");
263
276
  }
264
- return;
277
+ return null;
265
278
  }
266
279
  // See: https://www.w3.org/TR/wai-aria-practices/#kbd_focus_activedescendant
267
280
  setActiveDescendant(descendantId) {
268
281
  if (descendantId) {
269
- this.renderer.setAttribute(this.elementRef.nativeElement, 'aria-activedescendant', descendantId);
282
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'aria-activedescendant', descendantId);
270
283
  }
271
284
  else {
272
- this.renderer.removeAttribute(this.elementRef.nativeElement, 'aria-activedescendant');
285
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").removeAttribute(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'aria-activedescendant');
273
286
  }
274
287
  }
275
288
  // Angular automatically constructs these methods.
@@ -277,17 +290,17 @@ class SkyAutocompleteInputDirective {
277
290
  onChange(value) { }
278
291
  // eslint-disable-next-line @typescript-eslint/no-empty-function
279
292
  onTouched() { }
280
- setAttributes(element) {
281
- this.renderer.setAttribute(element, 'autocomplete', this.autocompleteAttribute);
282
- this.renderer.setAttribute(element, 'autocapitalize', 'none');
283
- this.renderer.setAttribute(element, 'autocorrect', 'off');
284
- this.renderer.setAttribute(element, 'spellcheck', 'false');
285
- this.renderer.addClass(element, 'sky-form-control');
286
- }
287
- getValueByKey() {
288
- return this.value ? this.value[this.displayWith] : undefined;
289
- }
290
293
  }
294
+ _SkyAutocompleteInputDirective_blur = new WeakMap(), _SkyAutocompleteInputDirective_control = new WeakMap(), _SkyAutocompleteInputDirective_elementRef = new WeakMap(), _SkyAutocompleteInputDirective_focus = new WeakMap(), _SkyAutocompleteInputDirective_isFirstChange = new WeakMap(), _SkyAutocompleteInputDirective_ngUnsubscribe = new WeakMap(), _SkyAutocompleteInputDirective_renderer = new WeakMap(), _SkyAutocompleteInputDirective_textChanges = new WeakMap(), _SkyAutocompleteInputDirective__autocompleteAttribute = new WeakMap(), _SkyAutocompleteInputDirective__blurObs = new WeakMap(), _SkyAutocompleteInputDirective__disabled = new WeakMap(), _SkyAutocompleteInputDirective__displayWith = new WeakMap(), _SkyAutocompleteInputDirective__focusObs = new WeakMap(), _SkyAutocompleteInputDirective__textChangesObs = new WeakMap(), _SkyAutocompleteInputDirective__value = new WeakMap(), _SkyAutocompleteInputDirective_instances = new WeakSet(), _SkyAutocompleteInputDirective_setAttributes = function _SkyAutocompleteInputDirective_setAttributes(elementRef) {
295
+ const element = elementRef.nativeElement;
296
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'autocomplete', this.autocompleteAttribute);
297
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'autocapitalize', 'none');
298
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'autocorrect', 'off');
299
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'spellcheck', 'false');
300
+ __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").addClass(element, 'sky-form-control');
301
+ }, _SkyAutocompleteInputDirective_getValueByKey = function _SkyAutocompleteInputDirective_getValueByKey() {
302
+ return this.value ? this.value[this.displayWith] : undefined;
303
+ };
291
304
  SkyAutocompleteInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteInputDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
292
305
  SkyAutocompleteInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: SkyAutocompleteInputDirective, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: { autocompleteAttribute: "autocompleteAttribute", disabled: "disabled" }, providers: [SKY_AUTOCOMPLETE_VALUE_ACCESSOR, SKY_AUTOCOMPLETE_VALIDATOR], ngImport: i0 });
293
306
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteInputDirective, decorators: [{
@@ -327,14 +340,16 @@ function normalizeDiacritics(value) {
327
340
  return value.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
328
341
  }
329
342
 
343
+ var _SkyAutocompleteAdapterService_coreAdapterService, _SkyAutocompleteAdapterService_renderer;
330
344
  /**
331
345
  * @internal
332
346
  */
333
347
  class SkyAutocompleteAdapterService {
334
348
  constructor(coreAdapterService, rendererFactory) {
335
- this.coreAdapterService = coreAdapterService;
336
- this.rendererFactory = rendererFactory;
337
- this.renderer = this.rendererFactory.createRenderer(undefined, undefined);
349
+ _SkyAutocompleteAdapterService_coreAdapterService.set(this, void 0);
350
+ _SkyAutocompleteAdapterService_renderer.set(this, void 0);
351
+ __classPrivateFieldSet(this, _SkyAutocompleteAdapterService_coreAdapterService, coreAdapterService, "f");
352
+ __classPrivateFieldSet(this, _SkyAutocompleteAdapterService_renderer, rendererFactory.createRenderer(undefined, null), "f");
338
353
  }
339
354
  /**
340
355
  * Adds the className for the provided element.
@@ -343,11 +358,11 @@ class SkyAutocompleteAdapterService {
343
358
  /* Sanity check */
344
359
  /* istanbul ignore else */
345
360
  if (element) {
346
- this.renderer.addClass(element, className);
361
+ __classPrivateFieldGet(this, _SkyAutocompleteAdapterService_renderer, "f").addClass(element, className);
347
362
  }
348
363
  }
349
364
  getOverlayFocusableElements(overlay) {
350
- return this.coreAdapterService.getFocusableChildren(
365
+ return __classPrivateFieldGet(this, _SkyAutocompleteAdapterService_coreAdapterService, "f").getFocusableChildren(
351
366
  /* Sanity check - calling function also has null check */
352
367
  /* istanbul ignore next */
353
368
  overlay?.componentRef.location.nativeElement, { ignoreTabIndex: true });
@@ -359,7 +374,7 @@ class SkyAutocompleteAdapterService {
359
374
  /* Sanity check */
360
375
  /* istanbul ignore else */
361
376
  if (element) {
362
- this.renderer.removeClass(element, className);
377
+ __classPrivateFieldGet(this, _SkyAutocompleteAdapterService_renderer, "f").removeClass(element, className);
363
378
  }
364
379
  }
365
380
  setDropdownWidth(elementRef, dropdownRef, isInputBox) {
@@ -368,7 +383,7 @@ class SkyAutocompleteAdapterService {
368
383
  : elementRef.nativeElement;
369
384
  if (parentElement) {
370
385
  const width = parentElement.getBoundingClientRect().width;
371
- this.renderer.setStyle(dropdownRef.nativeElement, 'width', `${width}px`);
386
+ __classPrivateFieldGet(this, _SkyAutocompleteAdapterService_renderer, "f").setStyle(dropdownRef.nativeElement, 'width', `${width}px`);
372
387
  }
373
388
  }
374
389
  /**
@@ -378,6 +393,7 @@ class SkyAutocompleteAdapterService {
378
393
  element.tabIndex = tabIndex;
379
394
  }
380
395
  }
396
+ _SkyAutocompleteAdapterService_coreAdapterService = new WeakMap(), _SkyAutocompleteAdapterService_renderer = new WeakMap();
381
397
  SkyAutocompleteAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteAdapterService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
382
398
  SkyAutocompleteAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteAdapterService });
383
399
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteAdapterService, decorators: [{
@@ -437,15 +453,11 @@ var SkyAutocompleteMessageType;
437
453
  SkyAutocompleteMessageType[SkyAutocompleteMessageType["RepositionDropdown"] = 1] = "RepositionDropdown";
438
454
  })(SkyAutocompleteMessageType || (SkyAutocompleteMessageType = {}));
439
455
 
456
+ var _SkyAutocompleteComponent_instances, _SkyAutocompleteComponent_activeElementIndex, _SkyAutocompleteComponent_adapterService, _SkyAutocompleteComponent_affixer, _SkyAutocompleteComponent_affixService, _SkyAutocompleteComponent_changeDetector, _SkyAutocompleteComponent_elementRef, _SkyAutocompleteComponent_inputBoxHostSvc, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, _SkyAutocompleteComponent_messageStreamSub, _SkyAutocompleteComponent_ngUnsubscribe, _SkyAutocompleteComponent_overlay, _SkyAutocompleteComponent_overlayService, _SkyAutocompleteComponent_overlayFocusableElements, _SkyAutocompleteComponent_currentSearchSub, _SkyAutocompleteComponent__data, _SkyAutocompleteComponent__debounceTime, _SkyAutocompleteComponent__descriptorProperty, _SkyAutocompleteComponent__highlightText, _SkyAutocompleteComponent__inputDirective, _SkyAutocompleteComponent__messageStream, _SkyAutocompleteComponent__propertiesToSearch, _SkyAutocompleteComponent__resultsRef, _SkyAutocompleteComponent__search, _SkyAutocompleteComponent__searchResults, _SkyAutocompleteComponent__searchResultTemplate, _SkyAutocompleteComponent__searchResultsLimit, _SkyAutocompleteComponent__searchTextMinimumCharacters, _SkyAutocompleteComponent_searchTextChanged, _SkyAutocompleteComponent_performSearch, _SkyAutocompleteComponent_cancelCurrentSearch, _SkyAutocompleteComponent_getHighlightText, _SkyAutocompleteComponent_selectSearchResultById, _SkyAutocompleteComponent_openDropdown, _SkyAutocompleteComponent_closeDropdown, _SkyAutocompleteComponent_setActiveDescendant, _SkyAutocompleteComponent_removeActiveDescendant, _SkyAutocompleteComponent_resetSearch, _SkyAutocompleteComponent_addInputEventListeners, _SkyAutocompleteComponent_destroyOverlay, _SkyAutocompleteComponent_createAffixer, _SkyAutocompleteComponent_destroyAffixer, _SkyAutocompleteComponent_initMessageStream, _SkyAutocompleteComponent_initOverlayFocusableElements, _SkyAutocompleteComponent_getActiveElement, _SkyAutocompleteComponent_removeFocusedClass, _SkyAutocompleteComponent_addFocusedClass;
440
457
  let uniqueId$1 = 0;
441
458
  class SkyAutocompleteComponent {
442
459
  constructor(changeDetector, elementRef, affixService, adapterService, overlayService, inputBoxHostSvc) {
443
- this.changeDetector = changeDetector;
444
- this.elementRef = elementRef;
445
- this.affixService = affixService;
446
- this.adapterService = adapterService;
447
- this.overlayService = overlayService;
448
- this.inputBoxHostSvc = inputBoxHostSvc;
460
+ _SkyAutocompleteComponent_instances.add(this);
449
461
  /**
450
462
  * @internal
451
463
  * Indicates whether to display a button in the dropdown that opens a picker where users can view all options.
@@ -472,26 +484,59 @@ class SkyAutocompleteComponent {
472
484
  * Fires when users select the button to view all options.
473
485
  */
474
486
  this.showMoreClick = new EventEmitter();
487
+ /**
488
+ * Fires when users select items in the dropdown list.
489
+ */
490
+ this.selectionChange = new EventEmitter();
475
491
  /**
476
492
  * Fires when users enter new search information and allows results to be
477
493
  * returned via an observable.
478
494
  */
479
495
  this.searchAsync = new EventEmitter();
480
496
  this.isOpen = false;
497
+ this.searchText = '';
481
498
  this.isSearchingAsync = false;
482
499
  /**
483
500
  * Index that indicates which descendant of the overlay currently has focus.
484
501
  */
485
- this.activeElementIndex = -1;
486
- this.inputDirectiveUnsubscribe = new Subject();
487
- this.ngUnsubscribe = new Subject();
502
+ _SkyAutocompleteComponent_activeElementIndex.set(this, -1);
503
+ _SkyAutocompleteComponent_adapterService.set(this, void 0);
504
+ _SkyAutocompleteComponent_affixer.set(this, void 0);
505
+ _SkyAutocompleteComponent_affixService.set(this, void 0);
506
+ _SkyAutocompleteComponent_changeDetector.set(this, void 0);
507
+ _SkyAutocompleteComponent_elementRef.set(this, void 0);
508
+ _SkyAutocompleteComponent_inputBoxHostSvc.set(this, void 0);
509
+ _SkyAutocompleteComponent_inputDirectiveUnsubscribe.set(this, new Subject());
510
+ _SkyAutocompleteComponent_messageStreamSub.set(this, void 0);
511
+ _SkyAutocompleteComponent_ngUnsubscribe.set(this, new Subject());
512
+ _SkyAutocompleteComponent_overlay.set(this, void 0);
513
+ _SkyAutocompleteComponent_overlayService.set(this, void 0);
488
514
  /**
489
515
  * Elements within the autocomplete dropdown that are focusable.
490
516
  * These are typically the search results and action buttons, but could also be
491
517
  * elements provided in the consumer's own template.
492
518
  */
493
- this.overlayFocusableElements = [];
494
- this._selectionChange = new EventEmitter();
519
+ _SkyAutocompleteComponent_overlayFocusableElements.set(this, []);
520
+ _SkyAutocompleteComponent_currentSearchSub.set(this, void 0);
521
+ _SkyAutocompleteComponent__data.set(this, void 0);
522
+ _SkyAutocompleteComponent__debounceTime.set(this, void 0);
523
+ _SkyAutocompleteComponent__descriptorProperty.set(this, void 0);
524
+ _SkyAutocompleteComponent__highlightText.set(this, void 0);
525
+ _SkyAutocompleteComponent__inputDirective.set(this, void 0);
526
+ _SkyAutocompleteComponent__messageStream.set(this, new Subject());
527
+ _SkyAutocompleteComponent__propertiesToSearch.set(this, void 0);
528
+ _SkyAutocompleteComponent__resultsRef.set(this, void 0);
529
+ _SkyAutocompleteComponent__search.set(this, void 0);
530
+ _SkyAutocompleteComponent__searchResults.set(this, void 0);
531
+ _SkyAutocompleteComponent__searchResultTemplate.set(this, void 0);
532
+ _SkyAutocompleteComponent__searchResultsLimit.set(this, void 0);
533
+ _SkyAutocompleteComponent__searchTextMinimumCharacters.set(this, void 0);
534
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_changeDetector, changeDetector, "f");
535
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_elementRef, elementRef, "f");
536
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_affixService, affixService, "f");
537
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_adapterService, adapterService, "f");
538
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_overlayService, overlayService, "f");
539
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_inputBoxHostSvc, inputBoxHostSvc, "f");
495
540
  const id = ++uniqueId$1;
496
541
  this.resultsListId = `sky-autocomplete-list-${id}`;
497
542
  this.resultsWrapperId = `sky-autocomplete-wrapper-${id}`;
@@ -502,10 +547,10 @@ class SkyAutocompleteComponent {
502
547
  * changes due to server calls, use `search` or `searchAsync` instead.
503
548
  */
504
549
  set data(value) {
505
- this._data = value;
550
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__data, value, "f");
506
551
  }
507
552
  get data() {
508
- return this._data || [];
553
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__data, "f") || [];
509
554
  }
510
555
  /**
511
556
  * Specifies how many milliseconds to wait before searching while users
@@ -513,10 +558,10 @@ class SkyAutocompleteComponent {
513
558
  * @default 0
514
559
  */
515
560
  set debounceTime(value) {
516
- this._debounceTime = value;
561
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__debounceTime, value, "f");
517
562
  }
518
563
  get debounceTime() {
519
- return this._debounceTime || 0;
564
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__debounceTime, "f") || 0;
520
565
  }
521
566
  /**
522
567
  * Specifies an object property to display in the text input after users
@@ -524,31 +569,31 @@ class SkyAutocompleteComponent {
524
569
  * @default "name"
525
570
  */
526
571
  set descriptorProperty(value) {
527
- this._descriptorProperty = value;
572
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__descriptorProperty, value, "f");
528
573
  }
529
574
  get descriptorProperty() {
530
- return this._descriptorProperty || 'name';
575
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__descriptorProperty, "f") || 'name';
531
576
  }
532
577
  /**
533
578
  * Specifies an observable of `SkyAutocompleteMessage` that can close the dropdown.
534
579
  * @internal
535
580
  */
536
581
  set messageStream(value) {
537
- this._messageStream = value;
538
- this.initMessageStream();
582
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__messageStream, value ?? new Subject(), "f");
583
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_initMessageStream).call(this);
539
584
  }
540
585
  get messageStream() {
541
- return this._messageStream;
586
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__messageStream, "f");
542
587
  }
543
588
  /**
544
589
  * Specifies the object properties to search.
545
590
  * @default ["name"]
546
591
  */
547
592
  set propertiesToSearch(value) {
548
- this._propertiesToSearch = value;
593
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__propertiesToSearch, value, "f");
549
594
  }
550
595
  get propertiesToSearch() {
551
- return this._propertiesToSearch || ['name'];
596
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__propertiesToSearch, "f") || ['name'];
552
597
  }
553
598
  /**
554
599
  * Specifies a function to dynamically manage the data source when users
@@ -559,10 +604,10 @@ class SkyAutocompleteComponent {
559
604
  * `search`.
560
605
  */
561
606
  set search(value) {
562
- this._search = value;
607
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__search, value, "f");
563
608
  }
564
609
  get search() {
565
- return (this._search ||
610
+ return (__classPrivateFieldGet(this, _SkyAutocompleteComponent__search, "f") ||
566
611
  skyAutocompleteDefaultSearchFunction({
567
612
  propertiesToSearch: this.propertiesToSearch,
568
613
  searchFilters: this.searchFilters,
@@ -574,10 +619,10 @@ class SkyAutocompleteComponent {
574
619
  * as `item` variables that reference all of the object properties of the search results.
575
620
  */
576
621
  set searchResultTemplate(value) {
577
- this._searchResultTemplate = value;
622
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__searchResultTemplate, value, "f");
578
623
  }
579
624
  get searchResultTemplate() {
580
- return this._searchResultTemplate || this.defaultSearchResultTemplate;
625
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchResultTemplate, "f") || this.defaultSearchResultTemplate;
581
626
  }
582
627
  /**
583
628
  * Specifies the minimum number of characters that users must enter before
@@ -586,11 +631,12 @@ class SkyAutocompleteComponent {
586
631
  * @default 1
587
632
  */
588
633
  set searchTextMinimumCharacters(value) {
589
- this._searchTextMinimumCharacters = value;
634
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__searchTextMinimumCharacters, value, "f");
590
635
  }
591
636
  get searchTextMinimumCharacters() {
592
- return this._searchTextMinimumCharacters > 0
593
- ? this._searchTextMinimumCharacters
637
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchTextMinimumCharacters, "f") &&
638
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchTextMinimumCharacters, "f") > 0
639
+ ? __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchTextMinimumCharacters, "f")
594
640
  : 1;
595
641
  }
596
642
  /**
@@ -598,126 +644,117 @@ class SkyAutocompleteComponent {
598
644
  * By default, the component displays all matching results.
599
645
  */
600
646
  set searchResultsLimit(value) {
601
- this._searchResultsLimit = value;
647
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__searchResultsLimit, value, "f");
602
648
  }
603
649
  get searchResultsLimit() {
604
- if (this._searchResultsLimit) {
605
- return this._searchResultsLimit;
650
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent__searchResultsLimit, "f") && __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchResultsLimit, "f") > 0) {
651
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchResultsLimit, "f");
606
652
  }
607
653
  else {
608
- return this.enableShowMore ? 5 : this._searchResultsLimit;
654
+ return this.enableShowMore ? 5 : __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchResultsLimit, "f");
609
655
  }
610
656
  }
611
- /**
612
- * Fires when users select items in the dropdown list.
613
- */
614
- get selectionChange() {
615
- return this._selectionChange;
616
- }
617
657
  //#endregion
618
658
  //#region template_properties
619
659
  get searchResults() {
620
- return this._searchResults || [];
660
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__searchResults, "f") || [];
661
+ }
662
+ set searchResults(value) {
663
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__searchResults, value, "f");
621
664
  }
622
665
  get highlightText() {
623
- return this._highlightText || [];
666
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__highlightText, "f") || [];
667
+ }
668
+ set highlightText(value) {
669
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__highlightText, value, "f");
624
670
  }
625
671
  get showActionsArea() {
626
672
  return this.showAddButton || this.enableShowMore;
627
673
  }
628
674
  set inputDirective(directive) {
629
- if (this._inputDirective !== directive) {
630
- if (!directive) {
631
- throw Error([
632
- 'The SkyAutocompleteComponent requires a ContentChild input or',
633
- 'textarea bound with the SkyAutocomplete directive. For example:',
634
- '`<input type="text" skyAutocomplete>`.',
635
- ].join(' '));
636
- }
675
+ if (!directive) {
676
+ throw Error([
677
+ 'The SkyAutocompleteComponent requires a ContentChild input or',
678
+ 'textarea bound with the SkyAutocomplete directive. For example:',
679
+ '`<input type="text" skyAutocomplete>`.',
680
+ ].join(' '));
681
+ }
682
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent__inputDirective, "f") !== directive) {
637
683
  // Unsubscribe from old subscriptions on any previous input directive
638
- this.inputDirectiveUnsubscribe.next();
639
- this._inputDirective = directive;
640
- this._inputDirective.displayWith = this.descriptorProperty;
641
- this._inputDirective.textChanges
642
- .pipe(takeUntil(this.inputDirectiveUnsubscribe), debounceTime(this.debounceTime), switchMap((change) => {
684
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, "f").next();
685
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__inputDirective, directive, "f");
686
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent__inputDirective, "f").displayWith = this.descriptorProperty;
687
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent__inputDirective, "f").textChanges
688
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, "f")), debounceTime(this.debounceTime), switchMap((change) => {
643
689
  this.isSearchingAsync = true;
644
690
  return of(change);
645
691
  }))
646
692
  .subscribe((change) => {
647
- this.searchTextChanged(change.value);
693
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_searchTextChanged).call(this, change.value);
648
694
  });
649
- this._inputDirective.blur
650
- .pipe(takeUntil(this.inputDirectiveUnsubscribe))
695
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent__inputDirective, "f").blur
696
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, "f")))
651
697
  .subscribe(() => {
652
- this.inputDirective.restoreInputTextValueToPreviousState();
653
- this.closeDropdown();
654
- this.inputDirective.onTouched();
698
+ directive.restoreInputTextValueToPreviousState();
699
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
700
+ directive.onTouched();
655
701
  });
656
- this._inputDirective.focus
657
- .pipe(takeUntil(this.inputDirectiveUnsubscribe))
702
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent__inputDirective, "f").focus
703
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, "f")))
658
704
  .subscribe(() => {
659
705
  if (this.showActionsArea) {
660
- this.openDropdown();
706
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_openDropdown).call(this);
661
707
  }
662
708
  });
663
709
  }
664
710
  }
665
711
  get inputDirective() {
666
- return this._inputDirective;
712
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__inputDirective, "f");
667
713
  }
668
714
  set resultsRef(value) {
669
715
  if (value) {
670
- this._resultsRef = value;
671
- this.destroyAffixer();
672
- this.createAffixer();
716
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent__resultsRef, value, "f");
717
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_destroyAffixer).call(this);
718
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_createAffixer).call(this);
673
719
  }
674
720
  }
675
721
  get resultsRef() {
676
- return this._resultsRef;
677
- }
678
- ngAfterContentInit() {
679
- if (!this.inputDirective) {
680
- throw Error([
681
- 'The SkyAutocompleteComponent requires a ContentChild input or',
682
- 'textarea bound with the SkyAutocomplete directive. For example:',
683
- '`<input type="text" skyAutocomplete>`.',
684
- ].join(' '));
685
- }
722
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent__resultsRef, "f");
686
723
  }
687
724
  ngAfterViewInit() {
688
- this.addInputEventListeners();
725
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_addInputEventListeners).call(this);
689
726
  }
690
727
  ngOnDestroy() {
691
- this.cancelCurrentSearch();
692
- this.inputDirectiveUnsubscribe.next();
693
- this.inputDirectiveUnsubscribe.complete();
694
- this.ngUnsubscribe.next();
695
- this.ngUnsubscribe.complete();
696
- this.destroyAffixer();
697
- this.destroyOverlay();
728
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_cancelCurrentSearch).call(this);
729
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, "f").next();
730
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_inputDirectiveUnsubscribe, "f").complete();
731
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_ngUnsubscribe, "f").next();
732
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_ngUnsubscribe, "f").complete();
733
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_destroyAffixer).call(this);
734
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_destroyOverlay).call(this);
698
735
  }
699
736
  addButtonClicked() {
700
737
  this.addClick.emit();
701
738
  this.inputDirective.restoreInputTextValueToPreviousState();
702
- this.closeDropdown();
739
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
703
740
  }
704
741
  handleKeydown(event) {
705
742
  /* Sanity check */
706
743
  /* istanbul ignore else */
707
744
  if (event.key) {
708
745
  const key = event.key.toLowerCase();
709
- const activeElement = this.getActiveElement();
746
+ const activeElement = __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_getActiveElement).call(this);
710
747
  const activeElementId = activeElement?.id;
711
748
  const targetIsSearchResult = this.searchResults.find((r) => r.elementId === activeElementId);
712
749
  switch (key) {
713
750
  case 'enter':
714
751
  if (targetIsSearchResult) {
715
- this.selectSearchResultById(activeElementId);
752
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_selectSearchResultById).call(this, activeElementId);
716
753
  if (!this.showActionsArea) {
717
- this.closeDropdown();
754
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
718
755
  }
719
756
  else {
720
- this.resetSearch();
757
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_resetSearch).call(this);
721
758
  }
722
759
  }
723
760
  else {
@@ -730,43 +767,43 @@ class SkyAutocompleteComponent {
730
767
  break;
731
768
  case 'tab':
732
769
  if (targetIsSearchResult) {
733
- this.selectSearchResultById(activeElementId);
770
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_selectSearchResultById).call(this, activeElementId);
734
771
  }
735
772
  else {
736
773
  this.inputDirective.restoreInputTextValueToPreviousState();
737
774
  }
738
- this.closeDropdown();
775
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
739
776
  break;
740
777
  case 'escape':
741
- this.closeDropdown();
778
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
742
779
  break;
743
780
  case 'arrowdown':
744
781
  case 'down':
745
- this.removeFocusedClass();
746
- if (this.activeElementIndex ===
747
- this.overlayFocusableElements.length - 1 ||
748
- this.activeElementIndex === -1) {
749
- this.activeElementIndex = 0;
782
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeFocusedClass).call(this);
783
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") ===
784
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f").length - 1 ||
785
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") === -1) {
786
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, 0, "f");
750
787
  }
751
788
  else {
752
- this.activeElementIndex = this.activeElementIndex + 1;
789
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, __classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") + 1, "f");
753
790
  }
754
- this.addFocusedClass();
755
- this.changeDetector.markForCheck();
791
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_addFocusedClass).call(this);
792
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
756
793
  event.preventDefault();
757
794
  event.stopPropagation();
758
795
  break;
759
796
  case 'arrowup':
760
797
  case 'up':
761
- this.removeFocusedClass();
762
- if (this.activeElementIndex <= 0) {
763
- this.activeElementIndex = this.overlayFocusableElements.length - 1;
798
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeFocusedClass).call(this);
799
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") <= 0) {
800
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f").length - 1, "f");
764
801
  }
765
802
  else {
766
- this.activeElementIndex = this.activeElementIndex - 1;
803
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, __classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") - 1, "f");
767
804
  }
768
- this.addFocusedClass();
769
- this.changeDetector.markForCheck();
805
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_addFocusedClass).call(this);
806
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
770
807
  event.preventDefault();
771
808
  event.stopPropagation();
772
809
  break;
@@ -776,310 +813,284 @@ class SkyAutocompleteComponent {
776
813
  moreButtonClicked() {
777
814
  this.showMoreClick.emit({ inputValue: this.searchText });
778
815
  this.inputDirective.restoreInputTextValueToPreviousState();
779
- this.closeDropdown();
816
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
780
817
  }
781
818
  onResultMouseDown(id, event) {
782
- this.selectSearchResultById(id);
819
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_selectSearchResultById).call(this, id);
783
820
  if (!this.showActionsArea) {
784
- this.closeDropdown();
821
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
785
822
  }
786
823
  else {
787
- this.resetSearch();
824
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_resetSearch).call(this);
788
825
  }
789
826
  event.preventDefault();
790
827
  event.stopPropagation();
791
828
  }
792
829
  onResultMouseMove(id) {
793
- if (id !== this.activeElementIndex) {
794
- this.removeFocusedClass();
795
- this.activeElementIndex = id;
796
- this.addFocusedClass();
797
- this.changeDetector.markForCheck();
830
+ if (id !== __classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f")) {
831
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeFocusedClass).call(this);
832
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, id, "f");
833
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_addFocusedClass).call(this);
834
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
798
835
  }
799
836
  }
800
837
  isElementFocused(ref) {
801
- return ref === this.overlayFocusableElements[this.activeElementIndex];
838
+ return ref === __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f")[__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f")];
802
839
  }
803
- searchTextChanged(searchText) {
804
- const isEmpty = !searchText || !searchText.trim() || searchText.match(/^\s+$/);
805
- if (isEmpty) {
806
- // Emit selectionChange if value has been cleared.
807
- if (this.inputDirective.value) {
808
- this.inputDirective.value = undefined;
809
- this.selectionChange.emit({
810
- selectedItem: undefined,
811
- });
812
- }
813
- if (!this.showActionsArea) {
814
- this.closeDropdown();
815
- }
816
- else {
817
- this.resetSearch();
818
- }
819
- this.isSearchingAsync = false;
820
- this.changeDetector.markForCheck();
821
- return;
822
- }
823
- const isLongEnough = searchText.length >= this.searchTextMinimumCharacters;
824
- const isDifferent = searchText !== this.searchText;
825
- this.searchText = searchText.trim();
826
- if (isLongEnough && isDifferent) {
827
- this.cancelCurrentSearch();
828
- this.currentSearchSub = this.performSearch()
829
- .pipe(take(1))
830
- .subscribe((result) => {
831
- const items = result.items.filter((item) => {
832
- return item && this.descriptorProperty in item;
833
- });
834
- this.isSearchingAsync = false;
835
- this._searchResults = items.map((r, i) => {
836
- const result = {
837
- elementId: `${this.resultsListId}-item-${i}`,
838
- data: r,
839
- };
840
- return result;
841
- });
842
- this.searchResultsCount = result.totalCount;
843
- this._highlightText = this.getHighlightText(this.searchText);
844
- this.removeFocusedClass();
845
- this.removeActiveDescendant();
846
- if (this.searchResults.length > 0) {
847
- this.activeElementIndex = 0;
848
- }
849
- else {
850
- this.activeElementIndex = -1;
851
- }
852
- this.changeDetector.markForCheck();
853
- if (this.isOpen) {
854
- // Let the results populate in the DOM before recalculating placement.
855
- setTimeout(() => {
856
- this.affixer.reaffix();
857
- this.changeDetector.detectChanges();
858
- this.initOverlayFocusableElements();
859
- });
860
- }
861
- else {
862
- this.openDropdown();
863
- this.changeDetector.markForCheck();
864
- }
865
- });
866
- }
867
- else {
868
- this.isSearchingAsync = false;
869
- this.changeDetector.markForCheck();
870
- }
871
- }
872
- performSearch() {
873
- if (!this.searchAsyncDisabled && this.searchAsync.observers.length > 0) {
874
- const searchAsyncArgs = {
875
- displayType: 'popover',
876
- offset: 0,
877
- searchText: this.searchText,
878
- };
879
- this.searchAsync.emit(searchAsyncArgs);
880
- return searchAsyncArgs.result;
881
- }
882
- const result = this.search(this.searchText, this.data);
883
- if (result instanceof Array) {
884
- return of({
885
- items: result,
886
- totalCount: result.length,
840
+ }
841
+ _SkyAutocompleteComponent_activeElementIndex = new WeakMap(), _SkyAutocompleteComponent_adapterService = new WeakMap(), _SkyAutocompleteComponent_affixer = new WeakMap(), _SkyAutocompleteComponent_affixService = new WeakMap(), _SkyAutocompleteComponent_changeDetector = new WeakMap(), _SkyAutocompleteComponent_elementRef = new WeakMap(), _SkyAutocompleteComponent_inputBoxHostSvc = new WeakMap(), _SkyAutocompleteComponent_inputDirectiveUnsubscribe = new WeakMap(), _SkyAutocompleteComponent_messageStreamSub = new WeakMap(), _SkyAutocompleteComponent_ngUnsubscribe = new WeakMap(), _SkyAutocompleteComponent_overlay = new WeakMap(), _SkyAutocompleteComponent_overlayService = new WeakMap(), _SkyAutocompleteComponent_overlayFocusableElements = new WeakMap(), _SkyAutocompleteComponent_currentSearchSub = new WeakMap(), _SkyAutocompleteComponent__data = new WeakMap(), _SkyAutocompleteComponent__debounceTime = new WeakMap(), _SkyAutocompleteComponent__descriptorProperty = new WeakMap(), _SkyAutocompleteComponent__highlightText = new WeakMap(), _SkyAutocompleteComponent__inputDirective = new WeakMap(), _SkyAutocompleteComponent__messageStream = new WeakMap(), _SkyAutocompleteComponent__propertiesToSearch = new WeakMap(), _SkyAutocompleteComponent__resultsRef = new WeakMap(), _SkyAutocompleteComponent__search = new WeakMap(), _SkyAutocompleteComponent__searchResults = new WeakMap(), _SkyAutocompleteComponent__searchResultTemplate = new WeakMap(), _SkyAutocompleteComponent__searchResultsLimit = new WeakMap(), _SkyAutocompleteComponent__searchTextMinimumCharacters = new WeakMap(), _SkyAutocompleteComponent_instances = new WeakSet(), _SkyAutocompleteComponent_searchTextChanged = function _SkyAutocompleteComponent_searchTextChanged(searchText) {
842
+ const isEmpty = !searchText || !searchText.trim() || searchText.match(/^\s+$/);
843
+ if (isEmpty) {
844
+ // Emit selectionChange if value has been cleared.
845
+ if (this.inputDirective.value) {
846
+ this.inputDirective.value = undefined;
847
+ this.selectionChange.emit({
848
+ selectedItem: undefined,
887
849
  });
888
850
  }
889
- return from(result).pipe(map((items) => {
890
- return {
891
- items,
892
- totalCount: items.length,
893
- };
894
- }));
895
- }
896
- cancelCurrentSearch() {
897
- if (this.currentSearchSub) {
898
- this.currentSearchSub.unsubscribe();
899
- this.currentSearchSub = undefined;
851
+ if (!this.showActionsArea) {
852
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
900
853
  }
901
- }
902
- /**
903
- * Returns the text to highlight based on exact matches, case-insensitive matches, and matches for corresponding diacritical characters (a will match à).
904
- */
905
- getHighlightText(searchText) {
906
- const normalizedSearchText = normalizeDiacritics(searchText)
907
- .toLocaleUpperCase()
908
- .trim();
909
- if (!normalizedSearchText) {
910
- return [];
911
- }
912
- let matchesToHighlight = [];
913
- for (let i = 0, n = this._searchResults.length; i < n; i++) {
914
- const value = this._searchResults[i].data[this.descriptorProperty]
915
- .toString()
916
- .toLocaleUpperCase();
917
- const normalizedDataValue = normalizeDiacritics(value);
918
- let offset = 0;
919
- let index;
920
- while ((index = normalizedDataValue.indexOf(normalizedSearchText, offset)) > -1) {
921
- const matchedString = value.slice(index, index + searchText.length);
922
- offset = index + searchText.length;
923
- matchesToHighlight = matchesToHighlight.concat(matchedString);
924
- }
854
+ else {
855
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_resetSearch).call(this);
925
856
  }
926
- // Remove any duplicates from the array.
927
- return [...new Set(matchesToHighlight)];
857
+ this.isSearchingAsync = false;
858
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
859
+ return;
928
860
  }
929
- selectSearchResultById(id) {
930
- const result = this.searchResults.find((r) => r.elementId === id).data;
931
- /* Sanity check */
932
- /* istanbul ignore else */
933
- if (result) {
934
- this.searchText = result[this.descriptorProperty];
935
- this.inputDirective.value = result;
936
- this.selectionChange.emit({
937
- selectedItem: result,
861
+ const isLongEnough = searchText.length >= this.searchTextMinimumCharacters;
862
+ const isDifferent = searchText !== this.searchText;
863
+ this.searchText = searchText.trim();
864
+ if (isLongEnough && isDifferent) {
865
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_cancelCurrentSearch).call(this);
866
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_currentSearchSub, __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_performSearch).call(this)
867
+ .pipe(take(1))
868
+ .subscribe((result) => {
869
+ const items = result.items.filter((item) => {
870
+ return item && this.descriptorProperty in item;
938
871
  });
939
- }
940
- }
941
- openDropdown() {
942
- if (!this.overlay) {
943
- const overlay = this.overlayService.create({
944
- enableClose: false,
945
- enablePointerEvents: true,
946
- wrapperClass: this.wrapperClass,
872
+ this.isSearchingAsync = false;
873
+ this.searchResults = items.map((r, i) => {
874
+ const result = {
875
+ elementId: `${this.resultsListId}-item-${i}`,
876
+ data: r,
877
+ };
878
+ return result;
947
879
  });
948
- overlay.attachTemplate(this.resultsTemplateRef);
949
- this.overlay = overlay;
950
- this.isOpen = true;
951
- this.changeDetector.markForCheck();
952
- this.initOverlayFocusableElements();
953
- }
954
- }
955
- closeDropdown() {
956
- this.resetSearch();
957
- this.isOpen = false;
958
- this.destroyOverlay();
959
- this.removeActiveDescendant();
960
- this.changeDetector.markForCheck();
961
- }
962
- setActiveDescendant() {
963
- const activeElement = this.overlayFocusableElements[this.activeElementIndex];
964
- /* Sanity check */
965
- /* istanbul ignore else */
966
- if (activeElement) {
967
- this.inputDirective.setActiveDescendant(activeElement.id);
968
- }
969
- }
970
- removeActiveDescendant() {
971
- this.inputDirective.setActiveDescendant(null);
972
- }
973
- resetSearch() {
974
- this._searchResults = [];
975
- this.searchText = '';
976
- this._highlightText = [];
977
- this.activeElementIndex = -1;
978
- this.searchResultsCount = undefined;
979
- this.removeActiveDescendant();
980
- this.initOverlayFocusableElements();
981
- this.changeDetector.markForCheck();
982
- }
983
- addInputEventListeners() {
984
- const element = this.elementRef.nativeElement;
985
- fromEvent(element, 'keydown')
986
- .pipe(takeUntil(this.ngUnsubscribe))
987
- .subscribe((event) => {
988
- this.handleKeydown(event);
989
- });
990
- fromEvent(window, 'resize')
991
- .pipe(takeUntil(this.ngUnsubscribe))
992
- .subscribe(() => {
993
- /* istanbul ignore else */
880
+ this.searchResultsCount = result.totalCount;
881
+ this.highlightText = __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_getHighlightText).call(this, this.searchText);
882
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeFocusedClass).call(this);
883
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeActiveDescendant).call(this);
884
+ if (this.searchResults.length > 0) {
885
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, 0, "f");
886
+ }
887
+ else {
888
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, -1, "f");
889
+ }
890
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
994
891
  if (this.isOpen) {
995
- this.adapterService.setDropdownWidth(this.elementRef, this.resultsRef, !!this.inputBoxHostSvc);
892
+ // Let the results populate in the DOM before recalculating placement.
893
+ setTimeout(() => {
894
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_affixer, "f").reaffix();
895
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").detectChanges();
896
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_initOverlayFocusableElements).call(this);
897
+ });
996
898
  }
899
+ else {
900
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_openDropdown).call(this);
901
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
902
+ }
903
+ }), "f");
904
+ }
905
+ else {
906
+ this.isSearchingAsync = false;
907
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
908
+ }
909
+ }, _SkyAutocompleteComponent_performSearch = function _SkyAutocompleteComponent_performSearch() {
910
+ if (!this.searchAsyncDisabled && this.searchAsync.observers.length > 0) {
911
+ const searchAsyncArgs = {
912
+ displayType: 'popover',
913
+ offset: 0,
914
+ searchText: this.searchText,
915
+ };
916
+ this.searchAsync.emit(searchAsyncArgs);
917
+ return searchAsyncArgs.result;
918
+ }
919
+ const result = this.search(this.searchText, this.data);
920
+ if (result instanceof Array) {
921
+ return of({
922
+ items: result,
923
+ totalCount: result.length,
997
924
  });
998
925
  }
999
- destroyOverlay() {
1000
- if (this.overlay) {
1001
- this.overlayService.close(this.overlay);
1002
- this.overlay = undefined;
1003
- }
926
+ return from(result).pipe(map((items) => {
927
+ return {
928
+ items,
929
+ totalCount: items.length,
930
+ };
931
+ }));
932
+ }, _SkyAutocompleteComponent_cancelCurrentSearch = function _SkyAutocompleteComponent_cancelCurrentSearch() {
933
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_currentSearchSub, "f")) {
934
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_currentSearchSub, "f").unsubscribe();
935
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_currentSearchSub, undefined, "f");
936
+ }
937
+ }, _SkyAutocompleteComponent_getHighlightText = function _SkyAutocompleteComponent_getHighlightText(searchText) {
938
+ const normalizedSearchText = normalizeDiacritics(searchText)
939
+ .toLocaleUpperCase()
940
+ .trim();
941
+ if (!normalizedSearchText) {
942
+ return [];
943
+ }
944
+ let matchesToHighlight = [];
945
+ for (let i = 0, n = this.searchResults.length; i < n; i++) {
946
+ const value = this.searchResults[i].data[this.descriptorProperty]
947
+ .toString()
948
+ .toLocaleUpperCase();
949
+ const normalizedDataValue = normalizeDiacritics(value);
950
+ let offset = 0;
951
+ let index;
952
+ while ((index = normalizedDataValue.indexOf(normalizedSearchText, offset)) > -1) {
953
+ const matchedString = value.slice(index, index + searchText.length);
954
+ offset = index + searchText.length;
955
+ matchesToHighlight = matchesToHighlight.concat(matchedString);
956
+ }
957
+ }
958
+ // Remove any duplicates from the array.
959
+ return [...new Set(matchesToHighlight)];
960
+ }, _SkyAutocompleteComponent_selectSearchResultById = function _SkyAutocompleteComponent_selectSearchResultById(id) {
961
+ const result = this.searchResults.find((r) => r.elementId === id);
962
+ /* istanbul ignore else */
963
+ if (result) {
964
+ const data = result.data;
965
+ this.searchText = data[this.descriptorProperty];
966
+ this.inputDirective.value = data;
967
+ this.selectionChange.emit({
968
+ selectedItem: data,
969
+ });
1004
970
  }
1005
- createAffixer() {
1006
- /* Sanity check */
971
+ }, _SkyAutocompleteComponent_openDropdown = function _SkyAutocompleteComponent_openDropdown() {
972
+ if (!__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlay, "f")) {
973
+ const overlay = __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayService, "f").create({
974
+ enableClose: false,
975
+ enablePointerEvents: true,
976
+ wrapperClass: this.wrapperClass,
977
+ });
978
+ overlay.attachTemplate(this.resultsTemplateRef);
979
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_overlay, overlay, "f");
980
+ this.isOpen = true;
981
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
982
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_initOverlayFocusableElements).call(this);
983
+ }
984
+ }, _SkyAutocompleteComponent_closeDropdown = function _SkyAutocompleteComponent_closeDropdown() {
985
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_resetSearch).call(this);
986
+ this.isOpen = false;
987
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_destroyOverlay).call(this);
988
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeActiveDescendant).call(this);
989
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
990
+ }, _SkyAutocompleteComponent_setActiveDescendant = function _SkyAutocompleteComponent_setActiveDescendant() {
991
+ const activeElement = __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f")[__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f")];
992
+ /* Sanity check */
993
+ /* istanbul ignore else */
994
+ if (activeElement) {
995
+ this.inputDirective.setActiveDescendant(activeElement.id);
996
+ }
997
+ }, _SkyAutocompleteComponent_removeActiveDescendant = function _SkyAutocompleteComponent_removeActiveDescendant() {
998
+ this.inputDirective.setActiveDescendant(null);
999
+ }, _SkyAutocompleteComponent_resetSearch = function _SkyAutocompleteComponent_resetSearch() {
1000
+ this.searchResults = [];
1001
+ this.searchText = '';
1002
+ this.highlightText = [];
1003
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_activeElementIndex, -1, "f");
1004
+ this.searchResultsCount = undefined;
1005
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_removeActiveDescendant).call(this);
1006
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_initOverlayFocusableElements).call(this);
1007
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_changeDetector, "f").markForCheck();
1008
+ }, _SkyAutocompleteComponent_addInputEventListeners = function _SkyAutocompleteComponent_addInputEventListeners() {
1009
+ const element = __classPrivateFieldGet(this, _SkyAutocompleteComponent_elementRef, "f").nativeElement;
1010
+ fromEvent(element, 'keydown')
1011
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteComponent_ngUnsubscribe, "f")))
1012
+ .subscribe((event) => {
1013
+ this.handleKeydown(event);
1014
+ });
1015
+ fromEvent(window, 'resize')
1016
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteComponent_ngUnsubscribe, "f")))
1017
+ .subscribe(() => {
1007
1018
  /* istanbul ignore else */
1008
- if (!this.affixer) {
1009
- const affixer = this.affixService.createAffixer(this.resultsRef);
1010
- this.adapterService.setDropdownWidth(this.elementRef, this.resultsRef, !!this.inputBoxHostSvc);
1011
- affixer.affixTo(this.elementRef.nativeElement, {
1012
- autoFitContext: SkyAffixAutoFitContext.Viewport,
1013
- enableAutoFit: true,
1014
- isSticky: true,
1015
- placement: 'below',
1016
- horizontalAlignment: 'left',
1017
- });
1018
- this.affixer = affixer;
1019
- }
1020
- }
1021
- destroyAffixer() {
1022
- if (this.affixer) {
1023
- this.affixer.destroy();
1024
- this.affixer = undefined;
1025
- }
1026
- }
1027
- initMessageStream() {
1028
- /* istanbul ignore if */
1029
- if (this.messageStreamSub) {
1030
- this.messageStreamSub.unsubscribe();
1031
- }
1032
- if (this.messageStream) {
1033
- this.messageStreamSub = this.messageStream
1034
- .pipe(takeUntil(this.ngUnsubscribe))
1035
- .subscribe((message) => {
1036
- switch (message.type) {
1037
- case SkyAutocompleteMessageType.CloseDropdown:
1038
- this.closeDropdown();
1039
- break;
1040
- case SkyAutocompleteMessageType.RepositionDropdown:
1041
- // Settimeout waits for changes in DOM (e.g., tokens being removed)
1042
- setTimeout(() => {
1043
- /* istanbul ignore else */
1044
- if (this.affixer) {
1045
- this.affixer.reaffix();
1046
- }
1047
- });
1048
- break;
1049
- }
1050
- });
1051
- }
1052
- }
1053
- initOverlayFocusableElements() {
1054
- // Wait for dropdown elements to render.
1055
- setTimeout(() => {
1056
- if (this.overlay) {
1057
- this.overlayFocusableElements =
1058
- this.adapterService.getOverlayFocusableElements(this.overlay);
1059
- this.overlayFocusableElements.forEach((el) => {
1060
- this.adapterService.setTabIndex(el, -1);
1061
- });
1062
- this.addFocusedClass();
1063
- }
1019
+ if (this.isOpen && this.resultsRef) {
1020
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_adapterService, "f").setDropdownWidth(__classPrivateFieldGet(this, _SkyAutocompleteComponent_elementRef, "f"), this.resultsRef, !!__classPrivateFieldGet(this, _SkyAutocompleteComponent_inputBoxHostSvc, "f"));
1021
+ }
1022
+ });
1023
+ }, _SkyAutocompleteComponent_destroyOverlay = function _SkyAutocompleteComponent_destroyOverlay() {
1024
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlay, "f")) {
1025
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayService, "f").close(__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlay, "f"));
1026
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_overlay, undefined, "f");
1027
+ }
1028
+ }, _SkyAutocompleteComponent_createAffixer = function _SkyAutocompleteComponent_createAffixer() {
1029
+ /* Sanity check */
1030
+ /* istanbul ignore else */
1031
+ if (!__classPrivateFieldGet(this, _SkyAutocompleteComponent_affixer, "f") && this.resultsRef) {
1032
+ const affixer = __classPrivateFieldGet(this, _SkyAutocompleteComponent_affixService, "f").createAffixer(this.resultsRef);
1033
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_adapterService, "f").setDropdownWidth(__classPrivateFieldGet(this, _SkyAutocompleteComponent_elementRef, "f"), this.resultsRef, !!__classPrivateFieldGet(this, _SkyAutocompleteComponent_inputBoxHostSvc, "f"));
1034
+ affixer.affixTo(__classPrivateFieldGet(this, _SkyAutocompleteComponent_elementRef, "f").nativeElement, {
1035
+ autoFitContext: SkyAffixAutoFitContext.Viewport,
1036
+ enableAutoFit: true,
1037
+ isSticky: true,
1038
+ placement: 'below',
1039
+ horizontalAlignment: 'left',
1064
1040
  });
1065
- }
1066
- getActiveElement() {
1067
- return this.overlayFocusableElements[this.activeElementIndex];
1068
- }
1069
- removeFocusedClass() {
1070
- if (this.activeElementIndex > -1) {
1071
- this.adapterService.removeCSSClass(this.overlayFocusableElements[this.activeElementIndex], 'sky-autocomplete-descendant-focus');
1041
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_affixer, affixer, "f");
1042
+ }
1043
+ }, _SkyAutocompleteComponent_destroyAffixer = function _SkyAutocompleteComponent_destroyAffixer() {
1044
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_affixer, "f")) {
1045
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_affixer, "f").destroy();
1046
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_affixer, undefined, "f");
1047
+ }
1048
+ }, _SkyAutocompleteComponent_initMessageStream = function _SkyAutocompleteComponent_initMessageStream() {
1049
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_messageStreamSub, "f")) {
1050
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_messageStreamSub, "f").unsubscribe();
1051
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_messageStreamSub, undefined, "f");
1052
+ }
1053
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_messageStreamSub, this.messageStream.subscribe((message) => {
1054
+ switch (message.type) {
1055
+ case SkyAutocompleteMessageType.CloseDropdown:
1056
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_closeDropdown).call(this);
1057
+ break;
1058
+ case SkyAutocompleteMessageType.RepositionDropdown:
1059
+ // Settimeout waits for changes in DOM (e.g., tokens being removed)
1060
+ setTimeout(() => {
1061
+ /* istanbul ignore else */
1062
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_affixer, "f")) {
1063
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_affixer, "f").reaffix();
1064
+ }
1065
+ });
1066
+ break;
1067
+ }
1068
+ }), "f");
1069
+ }, _SkyAutocompleteComponent_initOverlayFocusableElements = function _SkyAutocompleteComponent_initOverlayFocusableElements() {
1070
+ // Wait for dropdown elements to render.
1071
+ setTimeout(() => {
1072
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlay, "f")) {
1073
+ __classPrivateFieldSet(this, _SkyAutocompleteComponent_overlayFocusableElements, __classPrivateFieldGet(this, _SkyAutocompleteComponent_adapterService, "f").getOverlayFocusableElements(__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlay, "f")), "f");
1074
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f").forEach((el) => {
1075
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_adapterService, "f").setTabIndex(el, -1);
1076
+ });
1077
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_addFocusedClass).call(this);
1072
1078
  }
1079
+ });
1080
+ }, _SkyAutocompleteComponent_getActiveElement = function _SkyAutocompleteComponent_getActiveElement() {
1081
+ return __classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f")[__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f")];
1082
+ }, _SkyAutocompleteComponent_removeFocusedClass = function _SkyAutocompleteComponent_removeFocusedClass() {
1083
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") > -1) {
1084
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_adapterService, "f").removeCSSClass(__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f")[__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f")], 'sky-autocomplete-descendant-focus');
1073
1085
  }
1074
- addFocusedClass() {
1075
- if (this.activeElementIndex > -1) {
1076
- this.adapterService.addCSSClass(this.overlayFocusableElements[this.activeElementIndex], 'sky-autocomplete-descendant-focus');
1077
- this.setActiveDescendant();
1078
- }
1086
+ }, _SkyAutocompleteComponent_addFocusedClass = function _SkyAutocompleteComponent_addFocusedClass() {
1087
+ if (__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f") > -1) {
1088
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_adapterService, "f").addCSSClass(__classPrivateFieldGet(this, _SkyAutocompleteComponent_overlayFocusableElements, "f")[__classPrivateFieldGet(this, _SkyAutocompleteComponent_activeElementIndex, "f")], 'sky-autocomplete-descendant-focus');
1089
+ __classPrivateFieldGet(this, _SkyAutocompleteComponent_instances, "m", _SkyAutocompleteComponent_setActiveDescendant).call(this);
1079
1090
  }
1080
- }
1091
+ };
1081
1092
  SkyAutocompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.SkyAffixService }, { token: SkyAutocompleteAdapterService }, { token: i1.SkyOverlayService }, { token: i6.SkyInputBoxHostService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1082
- SkyAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyAutocompleteComponent, selector: "sky-autocomplete", inputs: { ariaLabelledBy: "ariaLabelledBy", data: "data", debounceTime: "debounceTime", descriptorProperty: "descriptorProperty", enableShowMore: "enableShowMore", messageStream: "messageStream", wrapperClass: "wrapperClass", propertiesToSearch: "propertiesToSearch", search: "search", searchResultTemplate: "searchResultTemplate", searchTextMinimumCharacters: "searchTextMinimumCharacters", searchFilters: "searchFilters", searchResultsLimit: "searchResultsLimit", showAddButton: "showAddButton", noResultsFoundText: "noResultsFoundText", searchAsyncDisabled: "searchAsyncDisabled" }, outputs: { addClick: "addClick", showMoreClick: "showMoreClick", selectionChange: "selectionChange", searchAsync: "searchAsync" }, providers: [SkyAutocompleteAdapterService], queries: [{ propertyName: "inputDirective", first: true, predicate: SkyAutocompleteInputDirective, descendants: true }], viewQueries: [{ propertyName: "defaultSearchResultTemplate", first: true, predicate: ["defaultSearchResultTemplate"], descendants: true, read: TemplateRef }, { propertyName: "resultsTemplateRef", first: true, predicate: ["resultsTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "resultsRef", first: true, predicate: ["resultsRef"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n class=\"sky-autocomplete\"\n role=\"combobox\"\n [attr.aria-expanded]=\"isOpen && searchText\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-owns]=\"isOpen ? resultsListId : null\"\n [attr.id]=\"resultsWrapperId\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #resultsTemplateRef>\n <div\n class=\"sky-autocomplete-results-container\"\n [skyThemeClass]=\"{\n 'sky-shadow': 'default',\n 'sky-elevation-4': 'modern'\n }\"\n (keydown)=\"handleKeydown($event)\"\n #resultsRef\n >\n <div\n *ngIf=\"isSearchingAsync; else resultControlsTemplateRef\"\n class=\"sky-autocomplete-results-waiting\"\n >\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n </div>\n </div>\n</ng-template>\n\n<ng-template #resultControlsTemplateRef>\n <div\n *ngIf=\"searchText && (!showActionsArea || searchResults.length > 0)\"\n class=\"sky-autocomplete-results\"\n role=\"listbox\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.id]=\"resultsListId\"\n >\n <ng-container *ngFor=\"let result of searchResults; let i = index\">\n <div\n *ngIf=\"!searchResultsLimit || i < searchResultsLimit\"\n class=\"sky-autocomplete-result\"\n role=\"option\"\n tabindex=\"0\"\n [attr.aria-selected]=\"isElementFocused(searchResultEl)\"\n [attr.id]=\"result.elementId\"\n [skyHighlight]=\"highlightText\"\n (mousedown)=\"onResultMouseDown(result.elementId, $event)\"\n (mousemove)=\"onResultMouseMove(i)\"\n #searchResultEl\n >\n <ng-container\n *ngTemplateOutlet=\"\n searchResultTemplate;\n context: { item: result.data }\n \"\n >\n </ng-container>\n </div>\n </ng-container>\n <div\n *ngIf=\"searchResults.length === 0\"\n class=\"sky-deemphasized sky-padding-squish-default\"\n >\n {{\n noResultsFoundText ||\n ('skyux_autocomplete_no_results' | skyLibResources)\n }}\n </div>\n </div>\n <div *ngIf=\"showActionsArea\" class=\"sky-autocomplete-actions\">\n <button\n *ngIf=\"enableShowMore && (!searchText || searchResults.length > 0)\"\n class=\"sky-autocomplete-action sky-autocomplete-action-more sky-btn sky-btn-link\"\n type=\"button\"\n (mousedown)=\"moreButtonClicked()\"\n >\n <ng-container\n *ngIf=\"\n !(\n searchAsync\n | skyAutocompleteSearchAsyncDisabled: searchAsyncDisabled\n ) &&\n searchResults.length === 0 &&\n !searchText\n \"\n >\n {{ 'skyux_autocomplete_show_all' | skyLibResources }}\n </ng-container>\n <ng-container\n *ngIf=\"\n (searchAsync\n | skyAutocompleteSearchAsyncDisabled: searchAsyncDisabled) &&\n !searchText\n \"\n >\n {{\n 'skyux_autocomplete_show_all_count'\n | skyLibResources: (data.length | skyNumeric: { truncate: false })\n }}\n </ng-container>\n <ng-container *ngIf=\"searchText\">\n {{\n 'skyux_autocomplete_show_matches_count'\n | skyLibResources\n : (searchResultsCount === undefined\n ? data.length\n : (searchResultsCount | skyNumeric: { truncate: false }))\n }}\n </ng-container>\n </button>\n <div\n *ngIf=\"searchText && searchResults.length === 0\"\n class=\"sky-font-deemphasized sky-autocomplete-actions-no-results\"\n >\n {{\n noResultsFoundText ||\n ('skyux_autocomplete_no_results' | skyLibResources)\n }}\n </div>\n <button\n *ngIf=\"showAddButton\"\n class=\"sky-autocomplete-action sky-autocomplete-action-add sky-btn sky-btn-link\"\n tabindex=\"0\"\n type=\"button\"\n [class.focused]=\"isElementFocused(addButtonEl)\"\n (mousedown)=\"addButtonClicked()\"\n #addButtonEl\n >\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"add\" iconType=\"skyux\"></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_autocomplete_add' | skyLibResources }}\n </button>\n </div>\n</ng-template>\n\n<ng-template let-item=\"item\" #defaultSearchResultTemplate>\n {{ item[descriptorProperty] }}\n</ng-template>\n", styles: [".sky-autocomplete-results-container{position:fixed;background-color:#fff}.sky-autocomplete-results-waiting{height:70px}.sky-autocomplete-results{display:flex;flex-direction:column;padding:4px;overflow-y:auto;overflow-x:hidden;min-height:35px;max-height:calc(50vh - 50px)}.sky-autocomplete-result{color:#212327;margin-bottom:4px;padding:3px 20px;cursor:pointer}.sky-autocomplete-result:last-child{margin-bottom:0}.sky-autocomplete-actions{border-top:1px solid #cdcfd2}.sky-autocomplete-actions .sky-autocomplete-action{border:none}.sky-autocomplete-actions .sky-autocomplete-actions-no-results{display:inline-block;padding:7px 13px}.sky-autocomplete-action-add{float:right}.sky-autocomplete-action-add sky-icon{padding-right:5px}.sky-autocomplete-descendant-focus:not(.sky-autocomplete-action){background-color:#eeeeef}.sky-autocomplete-descendant-focus.sky-autocomplete-action{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}::ng-deep .sky-theme-modern .sky-autocomplete-results-container{border-radius:6px}::ng-deep .sky-theme-modern .sky-autocomplete-results{padding:10px 0}::ng-deep .sky-theme-modern .sky-autocomplete-result{margin-bottom:0;padding:10px 0 10px 15px}::ng-deep .sky-theme-modern .sky-autocomplete-descendant-focus:not(.sky-autocomplete-action){background-color:inherit}::ng-deep .sky-theme-modern .sky-autocomplete-descendant-focus{border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 8px #0000004d}\n"], components: [{ type: i4.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i7.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.λ11, selector: "[skyHighlight]", inputs: ["skyHighlight"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe, "skyAutocompleteSearchAsyncDisabled": SkyAutcompleteSearchAsyncDisabledPipe, "skyNumeric": i1.SkyNumericPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1093
+ SkyAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyAutocompleteComponent, selector: "sky-autocomplete", inputs: { ariaLabelledBy: "ariaLabelledBy", data: "data", debounceTime: "debounceTime", descriptorProperty: "descriptorProperty", enableShowMore: "enableShowMore", messageStream: "messageStream", wrapperClass: "wrapperClass", propertiesToSearch: "propertiesToSearch", search: "search", searchResultTemplate: "searchResultTemplate", searchTextMinimumCharacters: "searchTextMinimumCharacters", searchFilters: "searchFilters", searchResultsLimit: "searchResultsLimit", showAddButton: "showAddButton", noResultsFoundText: "noResultsFoundText", searchAsyncDisabled: "searchAsyncDisabled" }, outputs: { addClick: "addClick", showMoreClick: "showMoreClick", selectionChange: "selectionChange", searchAsync: "searchAsync" }, providers: [SkyAutocompleteAdapterService], queries: [{ propertyName: "inputDirective", first: true, predicate: SkyAutocompleteInputDirective, descendants: true }], viewQueries: [{ propertyName: "defaultSearchResultTemplate", first: true, predicate: ["defaultSearchResultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "resultsTemplateRef", first: true, predicate: ["resultsTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "resultsRef", first: true, predicate: ["resultsRef"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n class=\"sky-autocomplete\"\n role=\"combobox\"\n [attr.aria-expanded]=\"isOpen && searchText\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-owns]=\"isOpen ? resultsListId : null\"\n [attr.id]=\"resultsWrapperId\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #resultsTemplateRef>\n <div\n class=\"sky-autocomplete-results-container\"\n [skyThemeClass]=\"{\n 'sky-shadow': 'default',\n 'sky-elevation-4': 'modern'\n }\"\n (keydown)=\"handleKeydown($event)\"\n #resultsRef\n >\n <div\n *ngIf=\"isSearchingAsync; else resultControlsTemplateRef\"\n class=\"sky-autocomplete-results-waiting\"\n >\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n </div>\n </div>\n</ng-template>\n\n<ng-template #resultControlsTemplateRef>\n <div\n *ngIf=\"searchText && (!showActionsArea || searchResults.length > 0)\"\n class=\"sky-autocomplete-results\"\n role=\"listbox\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.id]=\"resultsListId\"\n >\n <ng-container *ngFor=\"let result of searchResults; let i = index\">\n <div\n *ngIf=\"!searchResultsLimit || i < searchResultsLimit\"\n class=\"sky-autocomplete-result\"\n role=\"option\"\n tabindex=\"0\"\n [attr.aria-selected]=\"isElementFocused(searchResultEl)\"\n [attr.id]=\"result.elementId\"\n [skyHighlight]=\"highlightText\"\n (mousedown)=\"onResultMouseDown(result.elementId, $event)\"\n (mousemove)=\"onResultMouseMove(i)\"\n #searchResultEl\n >\n <ng-container\n *ngTemplateOutlet=\"\n searchResultTemplate;\n context: { item: result.data }\n \"\n >\n </ng-container>\n </div>\n </ng-container>\n <div\n *ngIf=\"searchResults.length === 0\"\n class=\"sky-deemphasized sky-padding-squish-default\"\n >\n {{\n noResultsFoundText ||\n ('skyux_autocomplete_no_results' | skyLibResources)\n }}\n </div>\n </div>\n <div *ngIf=\"showActionsArea\" class=\"sky-autocomplete-actions\">\n <button\n *ngIf=\"enableShowMore && (!searchText || searchResults.length > 0)\"\n class=\"sky-autocomplete-action sky-autocomplete-action-more sky-btn sky-btn-link\"\n type=\"button\"\n (mousedown)=\"moreButtonClicked()\"\n >\n <ng-container\n *ngIf=\"\n !(\n searchAsync\n | skyAutocompleteSearchAsyncDisabled: searchAsyncDisabled\n ) &&\n searchResults.length === 0 &&\n !searchText\n \"\n >\n {{ 'skyux_autocomplete_show_all' | skyLibResources }}\n </ng-container>\n <ng-container\n *ngIf=\"\n (searchAsync\n | skyAutocompleteSearchAsyncDisabled: searchAsyncDisabled) &&\n !searchText\n \"\n >\n {{\n 'skyux_autocomplete_show_all_count'\n | skyLibResources: (data.length | skyNumeric: { truncate: false })\n }}\n </ng-container>\n <ng-container *ngIf=\"searchText\">\n {{\n 'skyux_autocomplete_show_matches_count'\n | skyLibResources\n : (searchResultsCount === undefined\n ? data.length\n : (searchResultsCount | skyNumeric: { truncate: false }))\n }}\n </ng-container>\n </button>\n <div\n *ngIf=\"searchText && searchResults.length === 0\"\n class=\"sky-font-deemphasized sky-autocomplete-actions-no-results\"\n >\n {{\n noResultsFoundText ||\n ('skyux_autocomplete_no_results' | skyLibResources)\n }}\n </div>\n <button\n *ngIf=\"showAddButton\"\n class=\"sky-autocomplete-action sky-autocomplete-action-add sky-btn sky-btn-link\"\n tabindex=\"0\"\n type=\"button\"\n [class.focused]=\"isElementFocused(addButtonEl)\"\n (mousedown)=\"addButtonClicked()\"\n #addButtonEl\n >\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"add\" iconType=\"skyux\"></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_autocomplete_add' | skyLibResources }}\n </button>\n </div>\n</ng-template>\n\n<ng-template let-item=\"item\" #defaultSearchResultTemplate>\n {{ item[descriptorProperty] }}\n</ng-template>\n", styles: [".sky-autocomplete-results-container{position:fixed;background-color:#fff}.sky-autocomplete-results-waiting{height:70px}.sky-autocomplete-results{display:flex;flex-direction:column;padding:4px;overflow-y:auto;overflow-x:hidden;min-height:35px;max-height:calc(50vh - 50px)}.sky-autocomplete-result{color:#212327;margin-bottom:4px;padding:3px 20px;cursor:pointer}.sky-autocomplete-result:last-child{margin-bottom:0}.sky-autocomplete-actions{border-top:1px solid #cdcfd2}.sky-autocomplete-actions .sky-autocomplete-action{border:none}.sky-autocomplete-actions .sky-autocomplete-actions-no-results{display:inline-block;padding:7px 13px}.sky-autocomplete-action-add{float:right}.sky-autocomplete-action-add sky-icon{padding-right:5px}.sky-autocomplete-descendant-focus:not(.sky-autocomplete-action){background-color:#eeeeef}.sky-autocomplete-descendant-focus.sky-autocomplete-action{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}::ng-deep .sky-theme-modern .sky-autocomplete-results-container{border-radius:6px}::ng-deep .sky-theme-modern .sky-autocomplete-results{padding:10px 0}::ng-deep .sky-theme-modern .sky-autocomplete-result{margin-bottom:0;padding:10px 0 10px 15px}::ng-deep .sky-theme-modern .sky-autocomplete-descendant-focus:not(.sky-autocomplete-action){background-color:inherit}::ng-deep .sky-theme-modern .sky-autocomplete-descendant-focus{border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 8px #0000004d}\n"], components: [{ type: i4.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i7.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.λ11, selector: "[skyHighlight]", inputs: ["skyHighlight"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], pipes: { "skyLibResources": i4$1.SkyLibResourcesPipe, "skyAutocompleteSearchAsyncDisabled": SkyAutcompleteSearchAsyncDisabledPipe, "skyNumeric": i1.SkyNumericPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1083
1094
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteComponent, decorators: [{
1084
1095
  type: Component,
1085
1096
  args: [{ selector: 'sky-autocomplete', providers: [SkyAutocompleteAdapterService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n class=\"sky-autocomplete\"\n role=\"combobox\"\n [attr.aria-expanded]=\"isOpen && searchText\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-owns]=\"isOpen ? resultsListId : null\"\n [attr.id]=\"resultsWrapperId\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #resultsTemplateRef>\n <div\n class=\"sky-autocomplete-results-container\"\n [skyThemeClass]=\"{\n 'sky-shadow': 'default',\n 'sky-elevation-4': 'modern'\n }\"\n (keydown)=\"handleKeydown($event)\"\n #resultsRef\n >\n <div\n *ngIf=\"isSearchingAsync; else resultControlsTemplateRef\"\n class=\"sky-autocomplete-results-waiting\"\n >\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n </div>\n </div>\n</ng-template>\n\n<ng-template #resultControlsTemplateRef>\n <div\n *ngIf=\"searchText && (!showActionsArea || searchResults.length > 0)\"\n class=\"sky-autocomplete-results\"\n role=\"listbox\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.id]=\"resultsListId\"\n >\n <ng-container *ngFor=\"let result of searchResults; let i = index\">\n <div\n *ngIf=\"!searchResultsLimit || i < searchResultsLimit\"\n class=\"sky-autocomplete-result\"\n role=\"option\"\n tabindex=\"0\"\n [attr.aria-selected]=\"isElementFocused(searchResultEl)\"\n [attr.id]=\"result.elementId\"\n [skyHighlight]=\"highlightText\"\n (mousedown)=\"onResultMouseDown(result.elementId, $event)\"\n (mousemove)=\"onResultMouseMove(i)\"\n #searchResultEl\n >\n <ng-container\n *ngTemplateOutlet=\"\n searchResultTemplate;\n context: { item: result.data }\n \"\n >\n </ng-container>\n </div>\n </ng-container>\n <div\n *ngIf=\"searchResults.length === 0\"\n class=\"sky-deemphasized sky-padding-squish-default\"\n >\n {{\n noResultsFoundText ||\n ('skyux_autocomplete_no_results' | skyLibResources)\n }}\n </div>\n </div>\n <div *ngIf=\"showActionsArea\" class=\"sky-autocomplete-actions\">\n <button\n *ngIf=\"enableShowMore && (!searchText || searchResults.length > 0)\"\n class=\"sky-autocomplete-action sky-autocomplete-action-more sky-btn sky-btn-link\"\n type=\"button\"\n (mousedown)=\"moreButtonClicked()\"\n >\n <ng-container\n *ngIf=\"\n !(\n searchAsync\n | skyAutocompleteSearchAsyncDisabled: searchAsyncDisabled\n ) &&\n searchResults.length === 0 &&\n !searchText\n \"\n >\n {{ 'skyux_autocomplete_show_all' | skyLibResources }}\n </ng-container>\n <ng-container\n *ngIf=\"\n (searchAsync\n | skyAutocompleteSearchAsyncDisabled: searchAsyncDisabled) &&\n !searchText\n \"\n >\n {{\n 'skyux_autocomplete_show_all_count'\n | skyLibResources: (data.length | skyNumeric: { truncate: false })\n }}\n </ng-container>\n <ng-container *ngIf=\"searchText\">\n {{\n 'skyux_autocomplete_show_matches_count'\n | skyLibResources\n : (searchResultsCount === undefined\n ? data.length\n : (searchResultsCount | skyNumeric: { truncate: false }))\n }}\n </ng-container>\n </button>\n <div\n *ngIf=\"searchText && searchResults.length === 0\"\n class=\"sky-font-deemphasized sky-autocomplete-actions-no-results\"\n >\n {{\n noResultsFoundText ||\n ('skyux_autocomplete_no_results' | skyLibResources)\n }}\n </div>\n <button\n *ngIf=\"showAddButton\"\n class=\"sky-autocomplete-action sky-autocomplete-action-add sky-btn sky-btn-link\"\n tabindex=\"0\"\n type=\"button\"\n [class.focused]=\"isElementFocused(addButtonEl)\"\n (mousedown)=\"addButtonClicked()\"\n #addButtonEl\n >\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"add\" iconType=\"skyux\"></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_autocomplete_add' | skyLibResources }}\n </button>\n </div>\n</ng-template>\n\n<ng-template let-item=\"item\" #defaultSearchResultTemplate>\n {{ item[descriptorProperty] }}\n</ng-template>\n", styles: [".sky-autocomplete-results-container{position:fixed;background-color:#fff}.sky-autocomplete-results-waiting{height:70px}.sky-autocomplete-results{display:flex;flex-direction:column;padding:4px;overflow-y:auto;overflow-x:hidden;min-height:35px;max-height:calc(50vh - 50px)}.sky-autocomplete-result{color:#212327;margin-bottom:4px;padding:3px 20px;cursor:pointer}.sky-autocomplete-result:last-child{margin-bottom:0}.sky-autocomplete-actions{border-top:1px solid #cdcfd2}.sky-autocomplete-actions .sky-autocomplete-action{border:none}.sky-autocomplete-actions .sky-autocomplete-actions-no-results{display:inline-block;padding:7px 13px}.sky-autocomplete-action-add{float:right}.sky-autocomplete-action-add sky-icon{padding-right:5px}.sky-autocomplete-descendant-focus:not(.sky-autocomplete-action){background-color:#eeeeef}.sky-autocomplete-descendant-focus.sky-autocomplete-action{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}::ng-deep .sky-theme-modern .sky-autocomplete-results-container{border-radius:6px}::ng-deep .sky-theme-modern .sky-autocomplete-results{padding:10px 0}::ng-deep .sky-theme-modern .sky-autocomplete-result{margin-bottom:0;padding:10px 0 10px 15px}::ng-deep .sky-theme-modern .sky-autocomplete-descendant-focus:not(.sky-autocomplete-action){background-color:inherit}::ng-deep .sky-theme-modern .sky-autocomplete-descendant-focus{border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 8px #0000004d}\n"] }]
@@ -1129,7 +1140,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1129
1140
  type: ViewChild,
1130
1141
  args: ['defaultSearchResultTemplate', {
1131
1142
  read: TemplateRef,
1132
- static: false,
1143
+ static: true,
1133
1144
  }]
1134
1145
  }], inputDirective: [{
1135
1146
  type: ContentChild,
@@ -1200,6 +1211,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1200
1211
  }]
1201
1212
  }] });
1202
1213
 
1214
+ var _SkyCountryFieldComponent_instances, _SkyCountryFieldComponent_changeDetector, _SkyCountryFieldComponent_defaultCountryData, _SkyCountryFieldComponent_elRef, _SkyCountryFieldComponent_idle, _SkyCountryFieldComponent_injector, _SkyCountryFieldComponent_internalFormChange, _SkyCountryFieldComponent_isInitialChange, _SkyCountryFieldComponent_ngControl, _SkyCountryFieldComponent_ngUnsubscribe, _SkyCountryFieldComponent_themeSvc, _SkyCountryFieldComponent_windowRef, _SkyCountryFieldComponent__defaultCountry, _SkyCountryFieldComponent__disabled, _SkyCountryFieldComponent__includePhoneInfo, _SkyCountryFieldComponent__selectedCountry, _SkyCountryFieldComponent__supportedCountryISOs, _SkyCountryFieldComponent_countriesAreEqual, _SkyCountryFieldComponent_countriesEqual, _SkyCountryFieldComponent_removeEventListeners, _SkyCountryFieldComponent_setupCountries, _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault, _SkyCountryFieldComponent_updateInputBox;
1215
+ const DEFAULT_COUNTRY_CODE = 'us';
1203
1216
  const SKY_COUNTRY_FIELD_VALIDATOR = {
1204
1217
  provide: NG_VALIDATORS,
1205
1218
  useExisting: forwardRef(() => SkyCountryFieldComponent),
@@ -1208,31 +1221,48 @@ const SKY_COUNTRY_FIELD_VALIDATOR = {
1208
1221
  let uniqueId = 0;
1209
1222
  class SkyCountryFieldComponent {
1210
1223
  constructor(changeDetector, elRef, windowRef, injector, inputBoxHostSvc, themeSvc) {
1211
- this.changeDetector = changeDetector;
1212
- this.elRef = elRef;
1213
- this.windowRef = windowRef;
1214
- this.injector = injector;
1215
1224
  this.inputBoxHostSvc = inputBoxHostSvc;
1216
- this.themeSvc = themeSvc;
1225
+ _SkyCountryFieldComponent_instances.add(this);
1226
+ /**
1227
+ * Indicates whether to hide the flag in the input element.
1228
+ */
1229
+ this.hideSelectedCountryFlag = false;
1217
1230
  /**
1218
1231
  * Fires when the selected country changes.
1219
1232
  */
1220
1233
  this.selectedCountryChange = new EventEmitter();
1234
+ this.countries = [];
1221
1235
  this.isInputFocused = false;
1222
1236
  this.searchTextMinimumCharacters = 2;
1223
1237
  this.currentTheme = 'default';
1224
- this.idle = new Subject();
1225
- this.internalFormChange = false;
1226
- this.isInitialChange = true;
1227
- this.ngUnsubscribe = new Subject();
1228
- this._disabled = false;
1229
- this._includePhoneInfo = false;
1238
+ _SkyCountryFieldComponent_changeDetector.set(this, void 0);
1239
+ _SkyCountryFieldComponent_defaultCountryData.set(this, void 0);
1240
+ _SkyCountryFieldComponent_elRef.set(this, void 0);
1241
+ _SkyCountryFieldComponent_idle.set(this, new Subject());
1242
+ _SkyCountryFieldComponent_injector.set(this, void 0);
1243
+ _SkyCountryFieldComponent_internalFormChange.set(this, false);
1244
+ _SkyCountryFieldComponent_isInitialChange.set(this, true);
1245
+ _SkyCountryFieldComponent_ngControl.set(this, null);
1246
+ _SkyCountryFieldComponent_ngUnsubscribe.set(this, new Subject());
1247
+ _SkyCountryFieldComponent_themeSvc.set(this, void 0);
1248
+ _SkyCountryFieldComponent_windowRef.set(this, void 0);
1249
+ _SkyCountryFieldComponent__defaultCountry.set(this, void 0);
1250
+ _SkyCountryFieldComponent__disabled.set(this, false);
1251
+ _SkyCountryFieldComponent__includePhoneInfo.set(this, false);
1252
+ _SkyCountryFieldComponent__selectedCountry.set(this, void 0);
1253
+ _SkyCountryFieldComponent__supportedCountryISOs.set(this, void 0);
1230
1254
  // Angular automatically constructs these methods.
1231
1255
  // eslint-disable-next-line @typescript-eslint/no-empty-function
1232
1256
  this.onChange = (value) => { };
1233
1257
  // eslint-disable-next-line @typescript-eslint/no-empty-function
1234
1258
  this.onTouched = () => { };
1235
- this.setupCountries();
1259
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_changeDetector, changeDetector, "f");
1260
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_elRef, elRef, "f");
1261
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_windowRef, windowRef, "f");
1262
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_injector, injector, "f");
1263
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_themeSvc, themeSvc, "f");
1264
+ this.inputId = `sky-country-field-input-${uniqueId++}`;
1265
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_setupCountries).call(this);
1236
1266
  this.countrySearchFormControl = new FormControl();
1237
1267
  }
1238
1268
  /**
@@ -1242,40 +1272,43 @@ class SkyCountryFieldComponent {
1242
1272
  * @default "us"
1243
1273
  */
1244
1274
  set defaultCountry(value) {
1245
- if (value !== this._defaultCountry) {
1246
- this._defaultCountry = value.toLowerCase();
1247
- this.defaultCountryData = this.countries.find((country) => country.iso2 === this._defaultCountry);
1248
- this.sortCountriesWithSelectedAndDefault(this.selectedCountry);
1275
+ if (!value) {
1276
+ value = DEFAULT_COUNTRY_CODE;
1277
+ }
1278
+ if (value !== __classPrivateFieldGet(this, _SkyCountryFieldComponent__defaultCountry, "f")) {
1279
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__defaultCountry, value.toLowerCase(), "f");
1280
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_defaultCountryData, this.countries.find((country) => country.iso2 === __classPrivateFieldGet(this, _SkyCountryFieldComponent__defaultCountry, "f")), "f");
1281
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault).call(this, this.selectedCountry);
1249
1282
  }
1250
1283
  }
1251
1284
  get defaultCountry() {
1252
- return this._defaultCountry;
1285
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__defaultCountry, "f");
1253
1286
  }
1254
1287
  /**
1255
1288
  * Indicates whether to disable the country field.
1256
1289
  * @default false
1257
1290
  */
1258
1291
  set disabled(isDisabled) {
1259
- this.removeEventListeners();
1292
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_removeEventListeners).call(this);
1260
1293
  if (!isDisabled) {
1261
1294
  this.addEventListeners();
1262
1295
  }
1263
- this._disabled = isDisabled;
1264
- this.changeDetector.markForCheck();
1296
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__disabled, isDisabled, "f");
1297
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1265
1298
  }
1266
1299
  get disabled() {
1267
- return this._disabled;
1300
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__disabled, "f");
1268
1301
  }
1269
1302
  /**
1270
1303
  * Indicates whether to include phone information in the selected country and country dropdown.
1271
1304
  * @default false
1272
1305
  */
1273
- set includePhoneInfo(includePhoneInfo) {
1274
- this._includePhoneInfo = includePhoneInfo;
1275
- this.setupCountries();
1306
+ set includePhoneInfo(value) {
1307
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__includePhoneInfo, value, "f");
1308
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_setupCountries).call(this);
1276
1309
  }
1277
1310
  get includePhoneInfo() {
1278
- return this._includePhoneInfo;
1311
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__includePhoneInfo, "f") || false;
1279
1312
  }
1280
1313
  /**
1281
1314
  * Specifies the [International Organization for Standardization Alpha 2](https://www.nationsonline.org/oneworld/country_code_list.htm)
@@ -1286,35 +1319,36 @@ class SkyCountryFieldComponent {
1286
1319
  if (Array.isArray(value)) {
1287
1320
  value = value.map((v) => v.toLowerCase());
1288
1321
  }
1289
- this._supportedCountryISOs = value;
1290
- this.setupCountries();
1322
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__supportedCountryISOs, value, "f");
1323
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_setupCountries).call(this);
1291
1324
  }
1292
1325
  get supportedCountryISOs() {
1293
- return this._supportedCountryISOs;
1326
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__supportedCountryISOs, "f") || [];
1294
1327
  }
1295
1328
  set selectedCountry(newCountry) {
1296
- if (!this.countriesAreEqual(this.selectedCountry, newCountry)) {
1297
- if (newCountry && newCountry.iso2) {
1298
- const isoCountry = this.countries.find((country) => country.iso2 === newCountry.iso2);
1329
+ if (!__classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_countriesAreEqual).call(this, this.selectedCountry, newCountry)) {
1330
+ const newCountryIso = newCountry && newCountry.iso2;
1331
+ if (newCountryIso) {
1332
+ const isoCountry = this.countries.find((country) => country.iso2 === newCountryIso);
1299
1333
  if (isoCountry) {
1300
1334
  newCountry = isoCountry;
1301
1335
  }
1302
1336
  }
1303
- this._selectedCountry = newCountry;
1304
- this.sortCountriesWithSelectedAndDefault(newCountry);
1305
- this.internalFormChange = true;
1337
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__selectedCountry, newCountry, "f");
1338
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault).call(this, newCountry);
1339
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_internalFormChange, true, "f");
1306
1340
  this.countrySearchFormControl.setValue(this.selectedCountry);
1307
- if (!this.isInitialChange) {
1341
+ if (!__classPrivateFieldGet(this, _SkyCountryFieldComponent_isInitialChange, "f")) {
1308
1342
  this.onChange(newCountry);
1309
1343
  this.onTouched();
1310
1344
  this.selectedCountryChange.emit(newCountry);
1311
1345
  }
1312
1346
  // Do not mark the field as "dirty"
1313
1347
  // if the field has been initialized with a value.
1314
- if (this.isInitialChange && this.ngControl && this.ngControl.control) {
1315
- this.ngControl.control.markAsPristine();
1348
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_isInitialChange, "f") && __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f") && __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f").control) {
1349
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f").control.markAsPristine();
1316
1350
  }
1317
- this.isInitialChange = false;
1351
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_isInitialChange, false, "f");
1318
1352
  /**
1319
1353
  * The second portion of this if statement is complex. The control type check ensures that
1320
1354
  * we only watch for the initial time through this function on reactive forms. However,
@@ -1322,39 +1356,38 @@ class SkyCountryFieldComponent {
1322
1356
  * so we have to check for when the non-null pass through happens.
1323
1357
  */
1324
1358
  }
1325
- else if (this.isInitialChange &&
1326
- (!(this.ngControl instanceof NgModel) || newCountry !== null)) {
1327
- this.isInitialChange = false;
1359
+ else if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_isInitialChange, "f") &&
1360
+ (!(__classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f") instanceof NgModel) || newCountry !== null)) {
1361
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_isInitialChange, false, "f");
1328
1362
  }
1329
1363
  }
1330
1364
  get selectedCountry() {
1331
- return this._selectedCountry;
1365
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__selectedCountry, "f");
1332
1366
  }
1333
1367
  /**
1334
1368
  * Angular lifecycle hook for when the component is initialized
1335
1369
  * @internal
1336
1370
  */
1337
1371
  ngOnInit() {
1338
- this.updateInputBox();
1339
- this.ngControl = this.injector.get(NgControl, null);
1340
- this.inputId = `sky-country-field-input-${uniqueId++}`;
1341
- if (this.ngControl) {
1342
- this.ngControl.valueAccessor = this;
1372
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_updateInputBox).call(this);
1373
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_ngControl, __classPrivateFieldGet(this, _SkyCountryFieldComponent_injector, "f").get(NgControl, null), "f");
1374
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f")) {
1375
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f").valueAccessor = this;
1343
1376
  }
1344
1377
  else {
1345
1378
  /**
1346
1379
  * The initial change boolean is to determine if the form is setting the value. When no form
1347
1380
  * is present we don't want to ignore the first change.
1348
1381
  */
1349
- this.isInitialChange = false;
1382
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_isInitialChange, false, "f");
1350
1383
  }
1351
1384
  if (!this.defaultCountry) {
1352
- this.defaultCountry = 'us';
1385
+ this.defaultCountry = DEFAULT_COUNTRY_CODE;
1353
1386
  }
1354
1387
  this.countrySearchFormControl.valueChanges
1355
- .pipe(takeUntil(this.ngUnsubscribe))
1388
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyCountryFieldComponent_ngUnsubscribe, "f")))
1356
1389
  .subscribe((newValue) => {
1357
- if (newValue && !this.internalFormChange) {
1390
+ if (newValue && !__classPrivateFieldGet(this, _SkyCountryFieldComponent_internalFormChange, "f")) {
1358
1391
  this.selectedCountry = newValue;
1359
1392
  }
1360
1393
  });
@@ -1364,11 +1397,11 @@ class SkyCountryFieldComponent {
1364
1397
  }
1365
1398
  ngAfterViewInit() {
1366
1399
  /* istanbul ignore else */
1367
- if (this.themeSvc) {
1368
- this.themeSvc.settingsChange.subscribe((change) => {
1400
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_themeSvc, "f")) {
1401
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_themeSvc, "f").settingsChange.subscribe((change) => {
1369
1402
  this.currentTheme = change.currentSettings.theme.name;
1370
- this.updateInputBox();
1371
- this.changeDetector.markForCheck();
1403
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_updateInputBox).call(this);
1404
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1372
1405
  });
1373
1406
  }
1374
1407
  }
@@ -1378,9 +1411,9 @@ class SkyCountryFieldComponent {
1378
1411
  */
1379
1412
  ngOnDestroy() {
1380
1413
  this.selectedCountryChange.complete();
1381
- this.removeEventListeners();
1382
- this.ngUnsubscribe.next();
1383
- this.ngUnsubscribe.complete();
1414
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_removeEventListeners).call(this);
1415
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngUnsubscribe, "f").next();
1416
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngUnsubscribe, "f").complete();
1384
1417
  }
1385
1418
  /**
1386
1419
  * Sets the component's touched value when the autocomplete is blurred
@@ -1422,123 +1455,118 @@ class SkyCountryFieldComponent {
1422
1455
  return { unsupportedCountry: true };
1423
1456
  }
1424
1457
  }
1425
- return;
1458
+ return null;
1426
1459
  }
1427
1460
  writeValue(value) {
1428
1461
  this.selectedCountry = value;
1429
- this.changeDetector.markForCheck();
1462
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1430
1463
  }
1431
1464
  addEventListeners() {
1432
- this.removeEventListeners();
1433
- this.idle = new Subject();
1434
- const documentObj = this.windowRef.nativeWindow.document;
1465
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_removeEventListeners).call(this);
1466
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_idle, new Subject(), "f");
1467
+ const documentObj = __classPrivateFieldGet(this, _SkyCountryFieldComponent_windowRef, "f").nativeWindow.document;
1435
1468
  fromEvent(documentObj, 'mousedown')
1436
- .pipe(takeUntil(this.idle))
1469
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f")))
1437
1470
  .subscribe((event) => {
1438
- this.isInputFocused = this.elRef.nativeElement.contains(event.target);
1439
- this.changeDetector.markForCheck();
1471
+ this.isInputFocused = __classPrivateFieldGet(this, _SkyCountryFieldComponent_elRef, "f").nativeElement.contains(event.target);
1472
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1440
1473
  });
1441
1474
  fromEvent(documentObj, 'focusin')
1442
- .pipe(takeUntil(this.idle))
1475
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f")))
1443
1476
  .subscribe((event) => {
1444
- this.isInputFocused = this.elRef.nativeElement.contains(event.target);
1445
- this.changeDetector.markForCheck();
1477
+ this.isInputFocused = __classPrivateFieldGet(this, _SkyCountryFieldComponent_elRef, "f").nativeElement.contains(event.target);
1478
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1446
1479
  });
1447
1480
  }
1448
- countriesAreEqual(country1, country2) {
1449
- if (country1 && country2) {
1450
- return country1.iso2 === country2.iso2;
1451
- }
1452
- // NOTE: We are doing this in this way because template forms will send through `null`
1453
- // and then `undefined` on empty initialization. These are functionally equivalent but will
1454
- // not pass a standard triple equals check.
1455
- return !country1 && !country2;
1456
- }
1457
- countriesEqual(a, b) {
1458
- return a.iso2 === b.iso2 && a.name === b.name;
1459
- }
1460
- removeEventListeners() {
1461
- this.idle.next();
1462
- this.idle.complete();
1463
- }
1464
- setupCountries() {
1481
+ }
1482
+ _SkyCountryFieldComponent_changeDetector = new WeakMap(), _SkyCountryFieldComponent_defaultCountryData = new WeakMap(), _SkyCountryFieldComponent_elRef = new WeakMap(), _SkyCountryFieldComponent_idle = new WeakMap(), _SkyCountryFieldComponent_injector = new WeakMap(), _SkyCountryFieldComponent_internalFormChange = new WeakMap(), _SkyCountryFieldComponent_isInitialChange = new WeakMap(), _SkyCountryFieldComponent_ngControl = new WeakMap(), _SkyCountryFieldComponent_ngUnsubscribe = new WeakMap(), _SkyCountryFieldComponent_themeSvc = new WeakMap(), _SkyCountryFieldComponent_windowRef = new WeakMap(), _SkyCountryFieldComponent__defaultCountry = new WeakMap(), _SkyCountryFieldComponent__disabled = new WeakMap(), _SkyCountryFieldComponent__includePhoneInfo = new WeakMap(), _SkyCountryFieldComponent__selectedCountry = new WeakMap(), _SkyCountryFieldComponent__supportedCountryISOs = new WeakMap(), _SkyCountryFieldComponent_instances = new WeakSet(), _SkyCountryFieldComponent_countriesAreEqual = function _SkyCountryFieldComponent_countriesAreEqual(country1, country2) {
1483
+ if (country1 && country2) {
1484
+ return country1.iso2 === country2.iso2;
1485
+ }
1486
+ // NOTE: We are doing this in this way because template forms will send through `null`
1487
+ // and then `undefined` on empty initialization. These are functionally equivalent but will
1488
+ // not pass a standard triple equals check.
1489
+ return !country1 && !country2;
1490
+ }, _SkyCountryFieldComponent_countriesEqual = function _SkyCountryFieldComponent_countriesEqual(a, b) {
1491
+ return a.iso2 === b.iso2 && a.name === b.name;
1492
+ }, _SkyCountryFieldComponent_removeEventListeners = function _SkyCountryFieldComponent_removeEventListeners() {
1493
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f").next();
1494
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f").complete();
1495
+ }, _SkyCountryFieldComponent_setupCountries = function _SkyCountryFieldComponent_setupCountries() {
1496
+ /**
1497
+ * The json functions here ensures that we get a copy of the array and not the global original.
1498
+ * This ensures that multiple instances of the component don't overwrite the original data.
1499
+ *
1500
+ * We must type the window object as any here as the intl-tel-input library adds its object
1501
+ * to the main window object.
1502
+ */
1503
+ this.countries = JSON.parse(
1504
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1505
+ JSON.stringify(window.intlTelInputGlobals.getCountryData()));
1506
+ // Ignoring coverage here as this will be removed in the next release.
1507
+ // istanbul ignore next
1508
+ if (!this.includePhoneInfo && !this.hideSelectedCountryFlag) {
1509
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_elRef, "f").nativeElement.parentElement?.classList?.contains('sky-phone-field-country-search')) {
1510
+ this.includePhoneInfo = true;
1511
+ this.hideSelectedCountryFlag = true;
1512
+ }
1513
+ }
1514
+ /* istanbul ignore else */
1515
+ if (!this.includePhoneInfo) {
1465
1516
  /**
1466
- * The json functions here ensures that we get a copy of the array and not the global original.
1467
- * This ensures that multiple instances of the component don't overwrite the original data.
1468
- *
1469
- * We must type the window object as any here as the intl-tel-input library adds its object
1470
- * to the main window object.
1517
+ * The library we get the country data from includes extra phone properties.
1518
+ * We want to remove these unless we are in a phone field
1471
1519
  */
1472
- this.countries = JSON.parse(
1473
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1474
- JSON.stringify(window.intlTelInputGlobals.getCountryData()));
1475
- // Ignoring coverage here as this will be removed in the next release.
1476
- // istanbul ignore next
1477
- if (!this.includePhoneInfo && !this.hideSelectedCountryFlag) {
1478
- if (this.elRef.nativeElement.parentElement?.classList?.contains('sky-phone-field-country-search')) {
1479
- this.includePhoneInfo = true;
1480
- this.hideSelectedCountryFlag = true;
1481
- }
1482
- }
1483
- /* istanbul ignore else */
1484
- if (!this.includePhoneInfo) {
1485
- /**
1486
- * The library we get the country data from includes extra phone properties.
1487
- * We want to remove these unless we are in a phone field
1488
- */
1489
- this.countries.forEach((country) => {
1490
- delete country.dialCode;
1491
- delete country.areaCodes;
1492
- delete country.priority;
1493
- });
1494
- }
1495
- this.sortCountriesWithSelectedAndDefault(this.selectedCountry);
1496
- if (this.supportedCountryISOs && this.supportedCountryISOs.length > 0) {
1497
- this.countries = this.countries.filter((country) => {
1498
- return this.supportedCountryISOs.indexOf(country.iso2) >= 0;
1499
- });
1500
- }
1520
+ this.countries.forEach((country) => {
1521
+ delete country.dialCode;
1522
+ delete country.areaCodes;
1523
+ delete country.priority;
1524
+ });
1501
1525
  }
1502
- sortCountriesWithSelectedAndDefault(selectedCountry) {
1503
- let selectedCountryIndex;
1504
- let selectedCountryData;
1505
- const sortedNewCountries = this.countries.sort((a, b) => {
1506
- if (((this.defaultCountryData &&
1507
- this.countriesEqual(a, this.defaultCountryData)) ||
1508
- a.name < b.name) &&
1509
- (!this.defaultCountryData ||
1510
- !this.countriesEqual(this.defaultCountryData, b))) {
1511
- return -1;
1512
- }
1513
- else {
1514
- return 1;
1515
- }
1526
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault).call(this, this.selectedCountry);
1527
+ if (this.supportedCountryISOs && this.supportedCountryISOs.length > 0) {
1528
+ this.countries = this.countries.filter((country) => {
1529
+ return this.supportedCountryISOs.indexOf(country.iso2) >= 0;
1516
1530
  });
1517
- if (selectedCountry) {
1518
- // Note: We are looking up this data here to ensure we are using the offical data from the
1519
- // library and not the data provided by the user on initialization of the component
1520
- selectedCountryData = this.countries.find((country) => country.iso2 === selectedCountry.iso2.toLocaleLowerCase());
1521
- selectedCountryIndex = this.countries.indexOf(selectedCountryData);
1522
- if (selectedCountryIndex >= 0) {
1523
- this.countries.splice(selectedCountryIndex, 1);
1524
- sortedNewCountries.splice(0, 0, selectedCountryData);
1525
- }
1526
- }
1527
- this.countries = sortedNewCountries;
1528
1531
  }
1529
- updateInputBox() {
1530
- if (this.inputBoxHostSvc) {
1531
- this.inputBoxHostSvc.populate({
1532
- inputTemplate: this.inputTemplateRef,
1533
- iconsInsetTemplate: this.currentTheme === 'modern'
1534
- ? this.searchIconTemplateRef
1535
- : undefined,
1536
- });
1532
+ }, _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault = function _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault(selectedCountry) {
1533
+ let selectedCountryIndex;
1534
+ let selectedCountryData;
1535
+ const sortedNewCountries = this.countries.sort((a, b) => {
1536
+ if (((__classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f") &&
1537
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_countriesEqual).call(this, a, __classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f"))) ||
1538
+ a.name < b.name) &&
1539
+ (!__classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f") ||
1540
+ !__classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_countriesEqual).call(this, __classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f"), b))) {
1541
+ return -1;
1537
1542
  }
1543
+ else {
1544
+ return 1;
1545
+ }
1546
+ });
1547
+ if (selectedCountry) {
1548
+ // Note: We are looking up this data here to ensure we are using the offical data from the
1549
+ // library and not the data provided by the user on initialization of the component
1550
+ selectedCountryData = this.countries.find((country) => country.iso2 === selectedCountry.iso2.toLocaleLowerCase());
1551
+ selectedCountryIndex = this.countries.indexOf(selectedCountryData);
1552
+ if (selectedCountryIndex >= 0) {
1553
+ this.countries.splice(selectedCountryIndex, 1);
1554
+ sortedNewCountries.splice(0, 0, selectedCountryData);
1555
+ }
1556
+ }
1557
+ this.countries = sortedNewCountries;
1558
+ }, _SkyCountryFieldComponent_updateInputBox = function _SkyCountryFieldComponent_updateInputBox() {
1559
+ if (this.inputBoxHostSvc) {
1560
+ this.inputBoxHostSvc.populate({
1561
+ inputTemplate: this.inputTemplateRef,
1562
+ iconsInsetTemplate: this.currentTheme === 'modern'
1563
+ ? this.searchIconTemplateRef
1564
+ : undefined,
1565
+ });
1538
1566
  }
1539
- }
1567
+ };
1540
1568
  SkyCountryFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyCountryFieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.SkyAppWindowRef }, { token: i0.Injector }, { token: i6.SkyInputBoxHostService, optional: true }, { token: i7.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1541
- SkyCountryFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyCountryFieldComponent, selector: "sky-country-field", inputs: { autocompleteAttribute: "autocompleteAttribute", defaultCountry: "defaultCountry", disabled: "disabled", hideSelectedCountryFlag: "hideSelectedCountryFlag", includePhoneInfo: "includePhoneInfo", supportedCountryISOs: "supportedCountryISOs" }, outputs: { selectedCountryChange: "selectedCountryChange" }, providers: [SKY_COUNTRY_FIELD_VALIDATOR], viewQueries: [{ propertyName: "countrySearchAutocompleteDirective", first: true, predicate: SkyAutocompleteInputDirective, descendants: true }, { propertyName: "inputTemplateRef", first: true, predicate: ["inputTemplateRef"], descendants: true, read: TemplateRef, static: true }, { propertyName: "searchIconTemplateRef", first: true, predicate: ["searchIconTemplateRef"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <span\n class=\"sky-country-field-container\"\n [ngClass]=\"{\n 'sky-country-field-disabled': disabled\n }\"\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"inputId\"\n [data]=\"countries\"\n [propertiesToSearch]=\"['name', 'iso2']\"\n [searchResultTemplate]=\"countrySearchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n (selectionChange)=\"onCountrySelected($event)\"\n >\n <div\n class=\"sky-country-field-input\"\n [ngClass]=\"{\n 'sky-country-field-input-with-flag':\n selectedCountry && selectedCountry.iso2 && !hideSelectedCountryFlag\n }\"\n >\n <div\n *ngIf=\"\n selectedCountry && selectedCountry.iso2 && !hideSelectedCountryFlag\n \"\n class=\"sky-country-field-flag\"\n >\n <div\n class=\"iti__flag\"\n [ngClass]=\"'iti__' + selectedCountry.iso2.toLowerCase()\"\n ></div>\n </div>\n <textarea\n class=\"sky-form-control\"\n name=\"selectedCountry\"\n rows=\"1\"\n skyAutocomplete\n [attr.aria-label]=\"\n 'skyux_country_field_search_placeholder' | skyLibResources\n \"\n [attr.disabled]=\"disabled ? true : undefined\"\n [attr.id]=\"inputId\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [formControl]=\"countrySearchFormControl\"\n [placeholder]=\"\n currentTheme === 'default'\n ? ('skyux_country_field_search_placeholder' | skyLibResources)\n : ''\n \"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </sky-autocomplete>\n </span>\n</ng-template>\n\n<ng-template let-item=\"item\" #countrySearchResultTemplate>\n <div\n class=\"sky-country-field-search-result-flag\"\n [ngClass]=\"'iti__flag iti__' + item.iso2.toLowerCase()\"\n ></div>\n {{ item.name }}\n <span *ngIf=\"includePhoneInfo\" class=\"sky-deemphasized\">\n {{ item.dialCode }}\n </span>\n</ng-template>\n\n<!-- This template should only be used in modern theme input boxes. -->\n<ng-template #searchIconTemplateRef>\n <div class=\"sky-input-group-icon sky-input-box-icon-inset\">\n <sky-icon iconType=\"skyux\" icon=\"search\"></sky-icon>\n </div>\n</ng-template>\n", styles: [".iti{position:relative;display:inline-block}.iti *{box-sizing:border-box;-moz-box-sizing:border-box}.iti__hide{display:none}.iti__v-hide{visibility:hidden}.iti input,.iti input[type=text],.iti input[type=tel]{position:relative;z-index:0;margin-top:0!important;margin-bottom:0!important;padding-right:36px;margin-right:0}.iti__flag-container{position:absolute;top:0;bottom:0;right:0;padding:1px}.iti__selected-flag{z-index:1;position:relative;display:flex;align-items:center;height:100%;padding:0 6px 0 8px}.iti__arrow{margin-left:6px;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid #555}.iti__arrow--up{border-top:none;border-bottom:4px solid #555}.iti__country-list{position:absolute;z-index:2;list-style:none;text-align:left;padding:0;margin:0 0 0 -1px;box-shadow:1px 1px 4px #0003;background-color:#fff;border:1px solid #CCC;white-space:nowrap;max-height:200px;overflow-y:scroll;-webkit-overflow-scrolling:touch}.iti__country-list--dropup{bottom:100%;margin-bottom:-1px}@media (max-width: 500px){.iti__country-list{white-space:normal}}.iti__flag-box{display:inline-block;width:20px}.iti__divider{padding-bottom:5px;margin-bottom:5px;border-bottom:1px solid #CCC}.iti__country{padding:5px 10px;outline:none}.iti__dial-code{color:#999}.iti__country.iti__highlight{background-color:#0000000d}.iti__flag-box,.iti__country-name,.iti__dial-code{vertical-align:middle}.iti__flag-box,.iti__country-name{margin-right:6px}.iti--allow-dropdown input,.iti--allow-dropdown input[type=text],.iti--allow-dropdown input[type=tel],.iti--separate-dial-code input,.iti--separate-dial-code input[type=text],.iti--separate-dial-code input[type=tel]{padding-right:6px;padding-left:52px;margin-left:0}.iti--allow-dropdown .iti__flag-container,.iti--separate-dial-code .iti__flag-container{right:auto;left:0}.iti--allow-dropdown .iti__flag-container:hover{cursor:pointer}.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag{background-color:#0000000d}.iti--allow-dropdown input[disabled]+.iti__flag-container:hover,.iti--allow-dropdown input[readonly]+.iti__flag-container:hover{cursor:default}.iti--allow-dropdown input[disabled]+.iti__flag-container:hover .iti__selected-flag,.iti--allow-dropdown input[readonly]+.iti__flag-container:hover .iti__selected-flag{background-color:transparent}.iti--separate-dial-code .iti__selected-flag{background-color:#0000000d}.iti--separate-dial-code .iti__selected-dial-code{margin-left:6px}.iti--container{position:absolute;top:-1000px;left:-1000px;z-index:1060;padding:1px}.iti--container:hover{cursor:pointer}.iti-mobile .iti--container{top:30px;bottom:30px;left:30px;right:30px;position:fixed}.iti-mobile .iti__country-list{max-height:100%;width:100%}.iti-mobile .iti__country{padding:10px;line-height:1.5em}.iti__flag{width:20px}.iti__flag.iti__be{width:18px}.iti__flag.iti__ch{width:15px}.iti__flag.iti__mc{width:19px}.iti__flag.iti__ne{width:18px}.iti__flag.iti__np{width:13px}.iti__flag.iti__va{width:15px}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag{background-size:5652px 15px}}.iti__flag.iti__ac{height:10px;background-position:0px 0px}.iti__flag.iti__ad{height:14px;background-position:-22px 0px}.iti__flag.iti__ae{height:10px;background-position:-44px 0px}.iti__flag.iti__af{height:14px;background-position:-66px 0px}.iti__flag.iti__ag{height:14px;background-position:-88px 0px}.iti__flag.iti__ai{height:10px;background-position:-110px 0px}.iti__flag.iti__al{height:15px;background-position:-132px 0px}.iti__flag.iti__am{height:10px;background-position:-154px 0px}.iti__flag.iti__ao{height:14px;background-position:-176px 0px}.iti__flag.iti__aq{height:14px;background-position:-198px 0px}.iti__flag.iti__ar{height:13px;background-position:-220px 0px}.iti__flag.iti__as{height:10px;background-position:-242px 0px}.iti__flag.iti__at{height:14px;background-position:-264px 0px}.iti__flag.iti__au{height:10px;background-position:-286px 0px}.iti__flag.iti__aw{height:14px;background-position:-308px 0px}.iti__flag.iti__ax{height:13px;background-position:-330px 0px}.iti__flag.iti__az{height:10px;background-position:-352px 0px}.iti__flag.iti__ba{height:10px;background-position:-374px 0px}.iti__flag.iti__bb{height:14px;background-position:-396px 0px}.iti__flag.iti__bd{height:12px;background-position:-418px 0px}.iti__flag.iti__be{height:15px;background-position:-440px 0px}.iti__flag.iti__bf{height:14px;background-position:-460px 0px}.iti__flag.iti__bg{height:12px;background-position:-482px 0px}.iti__flag.iti__bh{height:12px;background-position:-504px 0px}.iti__flag.iti__bi{height:12px;background-position:-526px 0px}.iti__flag.iti__bj{height:14px;background-position:-548px 0px}.iti__flag.iti__bl{height:14px;background-position:-570px 0px}.iti__flag.iti__bm{height:10px;background-position:-592px 0px}.iti__flag.iti__bn{height:10px;background-position:-614px 0px}.iti__flag.iti__bo{height:14px;background-position:-636px 0px}.iti__flag.iti__bq{height:14px;background-position:-658px 0px}.iti__flag.iti__br{height:14px;background-position:-680px 0px}.iti__flag.iti__bs{height:10px;background-position:-702px 0px}.iti__flag.iti__bt{height:14px;background-position:-724px 0px}.iti__flag.iti__bv{height:15px;background-position:-746px 0px}.iti__flag.iti__bw{height:14px;background-position:-768px 0px}.iti__flag.iti__by{height:10px;background-position:-790px 0px}.iti__flag.iti__bz{height:14px;background-position:-812px 0px}.iti__flag.iti__ca{height:10px;background-position:-834px 0px}.iti__flag.iti__cc{height:10px;background-position:-856px 0px}.iti__flag.iti__cd{height:15px;background-position:-878px 0px}.iti__flag.iti__cf{height:14px;background-position:-900px 0px}.iti__flag.iti__cg{height:14px;background-position:-922px 0px}.iti__flag.iti__ch{height:15px;background-position:-944px 0px}.iti__flag.iti__ci{height:14px;background-position:-961px 0px}.iti__flag.iti__ck{height:10px;background-position:-983px 0px}.iti__flag.iti__cl{height:14px;background-position:-1005px 0px}.iti__flag.iti__cm{height:14px;background-position:-1027px 0px}.iti__flag.iti__cn{height:14px;background-position:-1049px 0px}.iti__flag.iti__co{height:14px;background-position:-1071px 0px}.iti__flag.iti__cp{height:14px;background-position:-1093px 0px}.iti__flag.iti__cr{height:12px;background-position:-1115px 0px}.iti__flag.iti__cu{height:10px;background-position:-1137px 0px}.iti__flag.iti__cv{height:12px;background-position:-1159px 0px}.iti__flag.iti__cw{height:14px;background-position:-1181px 0px}.iti__flag.iti__cx{height:10px;background-position:-1203px 0px}.iti__flag.iti__cy{height:14px;background-position:-1225px 0px}.iti__flag.iti__cz{height:14px;background-position:-1247px 0px}.iti__flag.iti__de{height:12px;background-position:-1269px 0px}.iti__flag.iti__dg{height:10px;background-position:-1291px 0px}.iti__flag.iti__dj{height:14px;background-position:-1313px 0px}.iti__flag.iti__dk{height:15px;background-position:-1335px 0px}.iti__flag.iti__dm{height:10px;background-position:-1357px 0px}.iti__flag.iti__do{height:14px;background-position:-1379px 0px}.iti__flag.iti__dz{height:14px;background-position:-1401px 0px}.iti__flag.iti__ea{height:14px;background-position:-1423px 0px}.iti__flag.iti__ec{height:14px;background-position:-1445px 0px}.iti__flag.iti__ee{height:13px;background-position:-1467px 0px}.iti__flag.iti__eg{height:14px;background-position:-1489px 0px}.iti__flag.iti__eh{height:10px;background-position:-1511px 0px}.iti__flag.iti__er{height:10px;background-position:-1533px 0px}.iti__flag.iti__es{height:14px;background-position:-1555px 0px}.iti__flag.iti__et{height:10px;background-position:-1577px 0px}.iti__flag.iti__eu{height:14px;background-position:-1599px 0px}.iti__flag.iti__fi{height:12px;background-position:-1621px 0px}.iti__flag.iti__fj{height:10px;background-position:-1643px 0px}.iti__flag.iti__fk{height:10px;background-position:-1665px 0px}.iti__flag.iti__fm{height:11px;background-position:-1687px 0px}.iti__flag.iti__fo{height:15px;background-position:-1709px 0px}.iti__flag.iti__fr{height:14px;background-position:-1731px 0px}.iti__flag.iti__ga{height:15px;background-position:-1753px 0px}.iti__flag.iti__gb{height:10px;background-position:-1775px 0px}.iti__flag.iti__gd{height:12px;background-position:-1797px 0px}.iti__flag.iti__ge{height:14px;background-position:-1819px 0px}.iti__flag.iti__gf{height:14px;background-position:-1841px 0px}.iti__flag.iti__gg{height:14px;background-position:-1863px 0px}.iti__flag.iti__gh{height:14px;background-position:-1885px 0px}.iti__flag.iti__gi{height:10px;background-position:-1907px 0px}.iti__flag.iti__gl{height:14px;background-position:-1929px 0px}.iti__flag.iti__gm{height:14px;background-position:-1951px 0px}.iti__flag.iti__gn{height:14px;background-position:-1973px 0px}.iti__flag.iti__gp{height:14px;background-position:-1995px 0px}.iti__flag.iti__gq{height:14px;background-position:-2017px 0px}.iti__flag.iti__gr{height:14px;background-position:-2039px 0px}.iti__flag.iti__gs{height:10px;background-position:-2061px 0px}.iti__flag.iti__gt{height:13px;background-position:-2083px 0px}.iti__flag.iti__gu{height:11px;background-position:-2105px 0px}.iti__flag.iti__gw{height:10px;background-position:-2127px 0px}.iti__flag.iti__gy{height:12px;background-position:-2149px 0px}.iti__flag.iti__hk{height:14px;background-position:-2171px 0px}.iti__flag.iti__hm{height:10px;background-position:-2193px 0px}.iti__flag.iti__hn{height:10px;background-position:-2215px 0px}.iti__flag.iti__hr{height:10px;background-position:-2237px 0px}.iti__flag.iti__ht{height:12px;background-position:-2259px 0px}.iti__flag.iti__hu{height:10px;background-position:-2281px 0px}.iti__flag.iti__ic{height:14px;background-position:-2303px 0px}.iti__flag.iti__id{height:14px;background-position:-2325px 0px}.iti__flag.iti__ie{height:10px;background-position:-2347px 0px}.iti__flag.iti__il{height:15px;background-position:-2369px 0px}.iti__flag.iti__im{height:10px;background-position:-2391px 0px}.iti__flag.iti__in{height:14px;background-position:-2413px 0px}.iti__flag.iti__io{height:10px;background-position:-2435px 0px}.iti__flag.iti__iq{height:14px;background-position:-2457px 0px}.iti__flag.iti__ir{height:12px;background-position:-2479px 0px}.iti__flag.iti__is{height:15px;background-position:-2501px 0px}.iti__flag.iti__it{height:14px;background-position:-2523px 0px}.iti__flag.iti__je{height:12px;background-position:-2545px 0px}.iti__flag.iti__jm{height:10px;background-position:-2567px 0px}.iti__flag.iti__jo{height:10px;background-position:-2589px 0px}.iti__flag.iti__jp{height:14px;background-position:-2611px 0px}.iti__flag.iti__ke{height:14px;background-position:-2633px 0px}.iti__flag.iti__kg{height:12px;background-position:-2655px 0px}.iti__flag.iti__kh{height:13px;background-position:-2677px 0px}.iti__flag.iti__ki{height:10px;background-position:-2699px 0px}.iti__flag.iti__km{height:12px;background-position:-2721px 0px}.iti__flag.iti__kn{height:14px;background-position:-2743px 0px}.iti__flag.iti__kp{height:10px;background-position:-2765px 0px}.iti__flag.iti__kr{height:14px;background-position:-2787px 0px}.iti__flag.iti__kw{height:10px;background-position:-2809px 0px}.iti__flag.iti__ky{height:10px;background-position:-2831px 0px}.iti__flag.iti__kz{height:10px;background-position:-2853px 0px}.iti__flag.iti__la{height:14px;background-position:-2875px 0px}.iti__flag.iti__lb{height:14px;background-position:-2897px 0px}.iti__flag.iti__lc{height:10px;background-position:-2919px 0px}.iti__flag.iti__li{height:12px;background-position:-2941px 0px}.iti__flag.iti__lk{height:10px;background-position:-2963px 0px}.iti__flag.iti__lr{height:11px;background-position:-2985px 0px}.iti__flag.iti__ls{height:14px;background-position:-3007px 0px}.iti__flag.iti__lt{height:12px;background-position:-3029px 0px}.iti__flag.iti__lu{height:12px;background-position:-3051px 0px}.iti__flag.iti__lv{height:10px;background-position:-3073px 0px}.iti__flag.iti__ly{height:10px;background-position:-3095px 0px}.iti__flag.iti__ma{height:14px;background-position:-3117px 0px}.iti__flag.iti__mc{height:15px;background-position:-3139px 0px}.iti__flag.iti__md{height:10px;background-position:-3160px 0px}.iti__flag.iti__me{height:10px;background-position:-3182px 0px}.iti__flag.iti__mf{height:14px;background-position:-3204px 0px}.iti__flag.iti__mg{height:14px;background-position:-3226px 0px}.iti__flag.iti__mh{height:11px;background-position:-3248px 0px}.iti__flag.iti__mk{height:10px;background-position:-3270px 0px}.iti__flag.iti__ml{height:14px;background-position:-3292px 0px}.iti__flag.iti__mm{height:14px;background-position:-3314px 0px}.iti__flag.iti__mn{height:10px;background-position:-3336px 0px}.iti__flag.iti__mo{height:14px;background-position:-3358px 0px}.iti__flag.iti__mp{height:10px;background-position:-3380px 0px}.iti__flag.iti__mq{height:14px;background-position:-3402px 0px}.iti__flag.iti__mr{height:14px;background-position:-3424px 0px}.iti__flag.iti__ms{height:10px;background-position:-3446px 0px}.iti__flag.iti__mt{height:14px;background-position:-3468px 0px}.iti__flag.iti__mu{height:14px;background-position:-3490px 0px}.iti__flag.iti__mv{height:14px;background-position:-3512px 0px}.iti__flag.iti__mw{height:14px;background-position:-3534px 0px}.iti__flag.iti__mx{height:12px;background-position:-3556px 0px}.iti__flag.iti__my{height:10px;background-position:-3578px 0px}.iti__flag.iti__mz{height:14px;background-position:-3600px 0px}.iti__flag.iti__na{height:14px;background-position:-3622px 0px}.iti__flag.iti__nc{height:10px;background-position:-3644px 0px}.iti__flag.iti__ne{height:15px;background-position:-3666px 0px}.iti__flag.iti__nf{height:10px;background-position:-3686px 0px}.iti__flag.iti__ng{height:10px;background-position:-3708px 0px}.iti__flag.iti__ni{height:12px;background-position:-3730px 0px}.iti__flag.iti__nl{height:14px;background-position:-3752px 0px}.iti__flag.iti__no{height:15px;background-position:-3774px 0px}.iti__flag.iti__np{height:15px;background-position:-3796px 0px}.iti__flag.iti__nr{height:10px;background-position:-3811px 0px}.iti__flag.iti__nu{height:10px;background-position:-3833px 0px}.iti__flag.iti__nz{height:10px;background-position:-3855px 0px}.iti__flag.iti__om{height:10px;background-position:-3877px 0px}.iti__flag.iti__pa{height:14px;background-position:-3899px 0px}.iti__flag.iti__pe{height:14px;background-position:-3921px 0px}.iti__flag.iti__pf{height:14px;background-position:-3943px 0px}.iti__flag.iti__pg{height:15px;background-position:-3965px 0px}.iti__flag.iti__ph{height:10px;background-position:-3987px 0px}.iti__flag.iti__pk{height:14px;background-position:-4009px 0px}.iti__flag.iti__pl{height:13px;background-position:-4031px 0px}.iti__flag.iti__pm{height:14px;background-position:-4053px 0px}.iti__flag.iti__pn{height:10px;background-position:-4075px 0px}.iti__flag.iti__pr{height:14px;background-position:-4097px 0px}.iti__flag.iti__ps{height:10px;background-position:-4119px 0px}.iti__flag.iti__pt{height:14px;background-position:-4141px 0px}.iti__flag.iti__pw{height:13px;background-position:-4163px 0px}.iti__flag.iti__py{height:11px;background-position:-4185px 0px}.iti__flag.iti__qa{height:8px;background-position:-4207px 0px}.iti__flag.iti__re{height:14px;background-position:-4229px 0px}.iti__flag.iti__ro{height:14px;background-position:-4251px 0px}.iti__flag.iti__rs{height:14px;background-position:-4273px 0px}.iti__flag.iti__ru{height:14px;background-position:-4295px 0px}.iti__flag.iti__rw{height:14px;background-position:-4317px 0px}.iti__flag.iti__sa{height:14px;background-position:-4339px 0px}.iti__flag.iti__sb{height:10px;background-position:-4361px 0px}.iti__flag.iti__sc{height:10px;background-position:-4383px 0px}.iti__flag.iti__sd{height:10px;background-position:-4405px 0px}.iti__flag.iti__se{height:13px;background-position:-4427px 0px}.iti__flag.iti__sg{height:14px;background-position:-4449px 0px}.iti__flag.iti__sh{height:10px;background-position:-4471px 0px}.iti__flag.iti__si{height:10px;background-position:-4493px 0px}.iti__flag.iti__sj{height:15px;background-position:-4515px 0px}.iti__flag.iti__sk{height:14px;background-position:-4537px 0px}.iti__flag.iti__sl{height:14px;background-position:-4559px 0px}.iti__flag.iti__sm{height:15px;background-position:-4581px 0px}.iti__flag.iti__sn{height:14px;background-position:-4603px 0px}.iti__flag.iti__so{height:14px;background-position:-4625px 0px}.iti__flag.iti__sr{height:14px;background-position:-4647px 0px}.iti__flag.iti__ss{height:10px;background-position:-4669px 0px}.iti__flag.iti__st{height:10px;background-position:-4691px 0px}.iti__flag.iti__sv{height:12px;background-position:-4713px 0px}.iti__flag.iti__sx{height:14px;background-position:-4735px 0px}.iti__flag.iti__sy{height:14px;background-position:-4757px 0px}.iti__flag.iti__sz{height:14px;background-position:-4779px 0px}.iti__flag.iti__ta{height:10px;background-position:-4801px 0px}.iti__flag.iti__tc{height:10px;background-position:-4823px 0px}.iti__flag.iti__td{height:14px;background-position:-4845px 0px}.iti__flag.iti__tf{height:14px;background-position:-4867px 0px}.iti__flag.iti__tg{height:13px;background-position:-4889px 0px}.iti__flag.iti__th{height:14px;background-position:-4911px 0px}.iti__flag.iti__tj{height:10px;background-position:-4933px 0px}.iti__flag.iti__tk{height:10px;background-position:-4955px 0px}.iti__flag.iti__tl{height:10px;background-position:-4977px 0px}.iti__flag.iti__tm{height:14px;background-position:-4999px 0px}.iti__flag.iti__tn{height:14px;background-position:-5021px 0px}.iti__flag.iti__to{height:10px;background-position:-5043px 0px}.iti__flag.iti__tr{height:14px;background-position:-5065px 0px}.iti__flag.iti__tt{height:12px;background-position:-5087px 0px}.iti__flag.iti__tv{height:10px;background-position:-5109px 0px}.iti__flag.iti__tw{height:14px;background-position:-5131px 0px}.iti__flag.iti__tz{height:14px;background-position:-5153px 0px}.iti__flag.iti__ua{height:14px;background-position:-5175px 0px}.iti__flag.iti__ug{height:14px;background-position:-5197px 0px}.iti__flag.iti__um{height:11px;background-position:-5219px 0px}.iti__flag.iti__un{height:14px;background-position:-5241px 0px}.iti__flag.iti__us{height:11px;background-position:-5263px 0px}.iti__flag.iti__uy{height:14px;background-position:-5285px 0px}.iti__flag.iti__uz{height:10px;background-position:-5307px 0px}.iti__flag.iti__va{height:15px;background-position:-5329px 0px}.iti__flag.iti__vc{height:14px;background-position:-5346px 0px}.iti__flag.iti__ve{height:14px;background-position:-5368px 0px}.iti__flag.iti__vg{height:10px;background-position:-5390px 0px}.iti__flag.iti__vi{height:14px;background-position:-5412px 0px}.iti__flag.iti__vn{height:14px;background-position:-5434px 0px}.iti__flag.iti__vu{height:12px;background-position:-5456px 0px}.iti__flag.iti__wf{height:14px;background-position:-5478px 0px}.iti__flag.iti__ws{height:10px;background-position:-5500px 0px}.iti__flag.iti__xk{height:15px;background-position:-5522px 0px}.iti__flag.iti__ye{height:14px;background-position:-5544px 0px}.iti__flag.iti__yt{height:14px;background-position:-5566px 0px}.iti__flag.iti__za{height:14px;background-position:-5588px 0px}.iti__flag.iti__zm{height:14px;background-position:-5610px 0px}.iti__flag.iti__zw{height:10px;background-position:-5632px 0px}.iti__flag{height:15px;box-shadow:0 0 1px #888;background-image:url(../img/flags.png);background-repeat:no-repeat;background-color:#dbdbdb;background-position:20px 0}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag{background-image:url(../img/flags@2x.png)}}.iti__flag.iti__np{background-color:transparent}.sky-country-field-country-btn+::ng-deep .sky-form-control{border-left:none}.sky-country-field-container{width:100%}.sky-country-field-search-result-flag{display:inline-block;margin-right:5px}.sky-country-field-flag{display:none}.sky-country-field-disabled .sky-country-field-input{cursor:default;background-color:#cdcfd2}.sky-country-field-disabled .sky-country-field-flag{opacity:.65}.sky-country-field-input{cursor:text;display:flex;position:relative}.sky-country-field-input .sky-country-field-flag{align-items:center;margin-bottom:auto;margin-top:auto;position:absolute;left:13px;height:35px;bottom:0}.sky-country-field-input textarea{overflow:hidden;resize:none;white-space:nowrap}.sky-country-field-input-with-flag .sky-country-field-flag{display:flex}.sky-country-field-input-with-flag .sky-form-control{padding-left:40px}.sky-country-field-country-selected,.sky-country-field-country-default{border-bottom:1px solid #e2e3e4}:host(.ng-invalid.ng-touched) .sky-country-field-input textarea{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}::ng-deep .sky-theme-modern .sky-country-field-disabled .sky-country-field-flag{filter:grayscale(100%)}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input{background-color:transparent;border-radius:6px}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input textarea.sky-form-control{overflow:hidden;resize:none;white-space:nowrap}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input-with-flag .sky-country-field-flag{height:40px;left:15px;opacity:1}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input-with-flag .sky-form-control{padding-left:45px}.iti__flag{max-width:25px;max-height:13px;background-image:url(https://sky.blackbaudcdn.net/static/skyux-public-assets/1.0.0-beta.2/assets/images/intl-tel-input/flags.webp)!important}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag .iti__flag{background-image:url(https://sky.blackbaudcdn.net/static/skyux-public-assets/1.0.0-beta.2/assets/images/intl-tel-input/flags@2x.webp)!important}}\n"], components: [{ type: SkyAutocompleteComponent, selector: "sky-autocomplete", inputs: ["ariaLabelledBy", "data", "debounceTime", "descriptorProperty", "enableShowMore", "messageStream", "wrapperClass", "propertiesToSearch", "search", "searchResultTemplate", "searchTextMinimumCharacters", "searchFilters", "searchResultsLimit", "showAddButton", "noResultsFoundText", "searchAsyncDisabled"], outputs: ["addClick", "showMoreClick", "selectionChange", "searchAsync"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: SkyAutocompleteInputDirective, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1569
+ SkyCountryFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyCountryFieldComponent, selector: "sky-country-field", inputs: { autocompleteAttribute: "autocompleteAttribute", defaultCountry: "defaultCountry", disabled: "disabled", hideSelectedCountryFlag: "hideSelectedCountryFlag", includePhoneInfo: "includePhoneInfo", supportedCountryISOs: "supportedCountryISOs" }, outputs: { selectedCountryChange: "selectedCountryChange" }, providers: [SKY_COUNTRY_FIELD_VALIDATOR], viewQueries: [{ propertyName: "countrySearchAutocompleteDirective", first: true, predicate: SkyAutocompleteInputDirective, descendants: true }, { propertyName: "inputTemplateRef", first: true, predicate: ["inputTemplateRef"], descendants: true, read: TemplateRef, static: true }, { propertyName: "searchIconTemplateRef", first: true, predicate: ["searchIconTemplateRef"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <span\n class=\"sky-country-field-container\"\n [ngClass]=\"{\n 'sky-country-field-disabled': disabled\n }\"\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"inputId\"\n [data]=\"countries\"\n [propertiesToSearch]=\"['name', 'iso2']\"\n [searchResultTemplate]=\"countrySearchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n (selectionChange)=\"onCountrySelected($event)\"\n >\n <div\n class=\"sky-country-field-input\"\n [ngClass]=\"{\n 'sky-country-field-input-with-flag':\n selectedCountry && selectedCountry.iso2 && !hideSelectedCountryFlag\n }\"\n >\n <div\n *ngIf=\"\n selectedCountry && selectedCountry.iso2 && !hideSelectedCountryFlag\n \"\n class=\"sky-country-field-flag\"\n >\n <div\n class=\"iti__flag\"\n [ngClass]=\"'iti__' + selectedCountry.iso2.toLowerCase()\"\n ></div>\n </div>\n <textarea\n class=\"sky-form-control\"\n name=\"selectedCountry\"\n rows=\"1\"\n skyAutocomplete\n [attr.aria-label]=\"\n 'skyux_country_field_search_placeholder' | skyLibResources\n \"\n [attr.disabled]=\"disabled ? true : undefined\"\n [attr.id]=\"inputId\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [formControl]=\"countrySearchFormControl\"\n [placeholder]=\"\n currentTheme === 'default'\n ? ('skyux_country_field_search_placeholder' | skyLibResources)\n : ''\n \"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </sky-autocomplete>\n </span>\n</ng-template>\n\n<ng-template let-item=\"item\" #countrySearchResultTemplate>\n <div\n class=\"sky-country-field-search-result-flag\"\n [ngClass]=\"'iti__flag iti__' + item.iso2.toLowerCase()\"\n ></div>\n {{ item.name }}\n <span *ngIf=\"includePhoneInfo\" class=\"sky-deemphasized\">\n {{ item.dialCode }}\n </span>\n</ng-template>\n\n<!-- This template should only be used in modern theme input boxes. -->\n<ng-template #searchIconTemplateRef>\n <div class=\"sky-input-group-icon sky-input-box-icon-inset\">\n <sky-icon iconType=\"skyux\" icon=\"search\"></sky-icon>\n </div>\n</ng-template>\n", styles: [".iti{position:relative;display:inline-block}.iti *{box-sizing:border-box;-moz-box-sizing:border-box}.iti__hide{display:none}.iti__v-hide{visibility:hidden}.iti input,.iti input[type=text],.iti input[type=tel]{position:relative;z-index:0;margin-top:0!important;margin-bottom:0!important;padding-right:36px;margin-right:0}.iti__flag-container{position:absolute;top:0;bottom:0;right:0;padding:1px}.iti__selected-flag{z-index:1;position:relative;display:flex;align-items:center;height:100%;padding:0 6px 0 8px}.iti__arrow{margin-left:6px;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid #555}.iti__arrow--up{border-top:none;border-bottom:4px solid #555}.iti__country-list{position:absolute;z-index:2;list-style:none;text-align:left;padding:0;margin:0 0 0 -1px;box-shadow:1px 1px 4px #0003;background-color:#fff;border:1px solid #CCC;white-space:nowrap;max-height:200px;overflow-y:scroll;-webkit-overflow-scrolling:touch}.iti__country-list--dropup{bottom:100%;margin-bottom:-1px}@media (max-width: 500px){.iti__country-list{white-space:normal}}.iti__flag-box{display:inline-block;width:20px}.iti__divider{padding-bottom:5px;margin-bottom:5px;border-bottom:1px solid #CCC}.iti__country{padding:5px 10px;outline:none}.iti__dial-code{color:#999}.iti__country.iti__highlight{background-color:#0000000d}.iti__flag-box,.iti__country-name,.iti__dial-code{vertical-align:middle}.iti__flag-box,.iti__country-name{margin-right:6px}.iti--allow-dropdown input,.iti--allow-dropdown input[type=text],.iti--allow-dropdown input[type=tel],.iti--separate-dial-code input,.iti--separate-dial-code input[type=text],.iti--separate-dial-code input[type=tel]{padding-right:6px;padding-left:52px;margin-left:0}.iti--allow-dropdown .iti__flag-container,.iti--separate-dial-code .iti__flag-container{right:auto;left:0}.iti--allow-dropdown .iti__flag-container:hover{cursor:pointer}.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag{background-color:#0000000d}.iti--allow-dropdown input[disabled]+.iti__flag-container:hover,.iti--allow-dropdown input[readonly]+.iti__flag-container:hover{cursor:default}.iti--allow-dropdown input[disabled]+.iti__flag-container:hover .iti__selected-flag,.iti--allow-dropdown input[readonly]+.iti__flag-container:hover .iti__selected-flag{background-color:transparent}.iti--separate-dial-code .iti__selected-flag{background-color:#0000000d}.iti--separate-dial-code .iti__selected-dial-code{margin-left:6px}.iti--container{position:absolute;top:-1000px;left:-1000px;z-index:1060;padding:1px}.iti--container:hover{cursor:pointer}.iti-mobile .iti--container{top:30px;bottom:30px;left:30px;right:30px;position:fixed}.iti-mobile .iti__country-list{max-height:100%;width:100%}.iti-mobile .iti__country{padding:10px;line-height:1.5em}.iti__flag{width:20px}.iti__flag.iti__be{width:18px}.iti__flag.iti__ch{width:15px}.iti__flag.iti__mc{width:19px}.iti__flag.iti__ne{width:18px}.iti__flag.iti__np{width:13px}.iti__flag.iti__va{width:15px}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag{background-size:5652px 15px}}.iti__flag.iti__ac{height:10px;background-position:0px 0px}.iti__flag.iti__ad{height:14px;background-position:-22px 0px}.iti__flag.iti__ae{height:10px;background-position:-44px 0px}.iti__flag.iti__af{height:14px;background-position:-66px 0px}.iti__flag.iti__ag{height:14px;background-position:-88px 0px}.iti__flag.iti__ai{height:10px;background-position:-110px 0px}.iti__flag.iti__al{height:15px;background-position:-132px 0px}.iti__flag.iti__am{height:10px;background-position:-154px 0px}.iti__flag.iti__ao{height:14px;background-position:-176px 0px}.iti__flag.iti__aq{height:14px;background-position:-198px 0px}.iti__flag.iti__ar{height:13px;background-position:-220px 0px}.iti__flag.iti__as{height:10px;background-position:-242px 0px}.iti__flag.iti__at{height:14px;background-position:-264px 0px}.iti__flag.iti__au{height:10px;background-position:-286px 0px}.iti__flag.iti__aw{height:14px;background-position:-308px 0px}.iti__flag.iti__ax{height:13px;background-position:-330px 0px}.iti__flag.iti__az{height:10px;background-position:-352px 0px}.iti__flag.iti__ba{height:10px;background-position:-374px 0px}.iti__flag.iti__bb{height:14px;background-position:-396px 0px}.iti__flag.iti__bd{height:12px;background-position:-418px 0px}.iti__flag.iti__be{height:15px;background-position:-440px 0px}.iti__flag.iti__bf{height:14px;background-position:-460px 0px}.iti__flag.iti__bg{height:12px;background-position:-482px 0px}.iti__flag.iti__bh{height:12px;background-position:-504px 0px}.iti__flag.iti__bi{height:12px;background-position:-526px 0px}.iti__flag.iti__bj{height:14px;background-position:-548px 0px}.iti__flag.iti__bl{height:14px;background-position:-570px 0px}.iti__flag.iti__bm{height:10px;background-position:-592px 0px}.iti__flag.iti__bn{height:10px;background-position:-614px 0px}.iti__flag.iti__bo{height:14px;background-position:-636px 0px}.iti__flag.iti__bq{height:14px;background-position:-658px 0px}.iti__flag.iti__br{height:14px;background-position:-680px 0px}.iti__flag.iti__bs{height:10px;background-position:-702px 0px}.iti__flag.iti__bt{height:14px;background-position:-724px 0px}.iti__flag.iti__bv{height:15px;background-position:-746px 0px}.iti__flag.iti__bw{height:14px;background-position:-768px 0px}.iti__flag.iti__by{height:10px;background-position:-790px 0px}.iti__flag.iti__bz{height:14px;background-position:-812px 0px}.iti__flag.iti__ca{height:10px;background-position:-834px 0px}.iti__flag.iti__cc{height:10px;background-position:-856px 0px}.iti__flag.iti__cd{height:15px;background-position:-878px 0px}.iti__flag.iti__cf{height:14px;background-position:-900px 0px}.iti__flag.iti__cg{height:14px;background-position:-922px 0px}.iti__flag.iti__ch{height:15px;background-position:-944px 0px}.iti__flag.iti__ci{height:14px;background-position:-961px 0px}.iti__flag.iti__ck{height:10px;background-position:-983px 0px}.iti__flag.iti__cl{height:14px;background-position:-1005px 0px}.iti__flag.iti__cm{height:14px;background-position:-1027px 0px}.iti__flag.iti__cn{height:14px;background-position:-1049px 0px}.iti__flag.iti__co{height:14px;background-position:-1071px 0px}.iti__flag.iti__cp{height:14px;background-position:-1093px 0px}.iti__flag.iti__cr{height:12px;background-position:-1115px 0px}.iti__flag.iti__cu{height:10px;background-position:-1137px 0px}.iti__flag.iti__cv{height:12px;background-position:-1159px 0px}.iti__flag.iti__cw{height:14px;background-position:-1181px 0px}.iti__flag.iti__cx{height:10px;background-position:-1203px 0px}.iti__flag.iti__cy{height:14px;background-position:-1225px 0px}.iti__flag.iti__cz{height:14px;background-position:-1247px 0px}.iti__flag.iti__de{height:12px;background-position:-1269px 0px}.iti__flag.iti__dg{height:10px;background-position:-1291px 0px}.iti__flag.iti__dj{height:14px;background-position:-1313px 0px}.iti__flag.iti__dk{height:15px;background-position:-1335px 0px}.iti__flag.iti__dm{height:10px;background-position:-1357px 0px}.iti__flag.iti__do{height:14px;background-position:-1379px 0px}.iti__flag.iti__dz{height:14px;background-position:-1401px 0px}.iti__flag.iti__ea{height:14px;background-position:-1423px 0px}.iti__flag.iti__ec{height:14px;background-position:-1445px 0px}.iti__flag.iti__ee{height:13px;background-position:-1467px 0px}.iti__flag.iti__eg{height:14px;background-position:-1489px 0px}.iti__flag.iti__eh{height:10px;background-position:-1511px 0px}.iti__flag.iti__er{height:10px;background-position:-1533px 0px}.iti__flag.iti__es{height:14px;background-position:-1555px 0px}.iti__flag.iti__et{height:10px;background-position:-1577px 0px}.iti__flag.iti__eu{height:14px;background-position:-1599px 0px}.iti__flag.iti__fi{height:12px;background-position:-1621px 0px}.iti__flag.iti__fj{height:10px;background-position:-1643px 0px}.iti__flag.iti__fk{height:10px;background-position:-1665px 0px}.iti__flag.iti__fm{height:11px;background-position:-1687px 0px}.iti__flag.iti__fo{height:15px;background-position:-1709px 0px}.iti__flag.iti__fr{height:14px;background-position:-1731px 0px}.iti__flag.iti__ga{height:15px;background-position:-1753px 0px}.iti__flag.iti__gb{height:10px;background-position:-1775px 0px}.iti__flag.iti__gd{height:12px;background-position:-1797px 0px}.iti__flag.iti__ge{height:14px;background-position:-1819px 0px}.iti__flag.iti__gf{height:14px;background-position:-1841px 0px}.iti__flag.iti__gg{height:14px;background-position:-1863px 0px}.iti__flag.iti__gh{height:14px;background-position:-1885px 0px}.iti__flag.iti__gi{height:10px;background-position:-1907px 0px}.iti__flag.iti__gl{height:14px;background-position:-1929px 0px}.iti__flag.iti__gm{height:14px;background-position:-1951px 0px}.iti__flag.iti__gn{height:14px;background-position:-1973px 0px}.iti__flag.iti__gp{height:14px;background-position:-1995px 0px}.iti__flag.iti__gq{height:14px;background-position:-2017px 0px}.iti__flag.iti__gr{height:14px;background-position:-2039px 0px}.iti__flag.iti__gs{height:10px;background-position:-2061px 0px}.iti__flag.iti__gt{height:13px;background-position:-2083px 0px}.iti__flag.iti__gu{height:11px;background-position:-2105px 0px}.iti__flag.iti__gw{height:10px;background-position:-2127px 0px}.iti__flag.iti__gy{height:12px;background-position:-2149px 0px}.iti__flag.iti__hk{height:14px;background-position:-2171px 0px}.iti__flag.iti__hm{height:10px;background-position:-2193px 0px}.iti__flag.iti__hn{height:10px;background-position:-2215px 0px}.iti__flag.iti__hr{height:10px;background-position:-2237px 0px}.iti__flag.iti__ht{height:12px;background-position:-2259px 0px}.iti__flag.iti__hu{height:10px;background-position:-2281px 0px}.iti__flag.iti__ic{height:14px;background-position:-2303px 0px}.iti__flag.iti__id{height:14px;background-position:-2325px 0px}.iti__flag.iti__ie{height:10px;background-position:-2347px 0px}.iti__flag.iti__il{height:15px;background-position:-2369px 0px}.iti__flag.iti__im{height:10px;background-position:-2391px 0px}.iti__flag.iti__in{height:14px;background-position:-2413px 0px}.iti__flag.iti__io{height:10px;background-position:-2435px 0px}.iti__flag.iti__iq{height:14px;background-position:-2457px 0px}.iti__flag.iti__ir{height:12px;background-position:-2479px 0px}.iti__flag.iti__is{height:15px;background-position:-2501px 0px}.iti__flag.iti__it{height:14px;background-position:-2523px 0px}.iti__flag.iti__je{height:12px;background-position:-2545px 0px}.iti__flag.iti__jm{height:10px;background-position:-2567px 0px}.iti__flag.iti__jo{height:10px;background-position:-2589px 0px}.iti__flag.iti__jp{height:14px;background-position:-2611px 0px}.iti__flag.iti__ke{height:14px;background-position:-2633px 0px}.iti__flag.iti__kg{height:12px;background-position:-2655px 0px}.iti__flag.iti__kh{height:13px;background-position:-2677px 0px}.iti__flag.iti__ki{height:10px;background-position:-2699px 0px}.iti__flag.iti__km{height:12px;background-position:-2721px 0px}.iti__flag.iti__kn{height:14px;background-position:-2743px 0px}.iti__flag.iti__kp{height:10px;background-position:-2765px 0px}.iti__flag.iti__kr{height:14px;background-position:-2787px 0px}.iti__flag.iti__kw{height:10px;background-position:-2809px 0px}.iti__flag.iti__ky{height:10px;background-position:-2831px 0px}.iti__flag.iti__kz{height:10px;background-position:-2853px 0px}.iti__flag.iti__la{height:14px;background-position:-2875px 0px}.iti__flag.iti__lb{height:14px;background-position:-2897px 0px}.iti__flag.iti__lc{height:10px;background-position:-2919px 0px}.iti__flag.iti__li{height:12px;background-position:-2941px 0px}.iti__flag.iti__lk{height:10px;background-position:-2963px 0px}.iti__flag.iti__lr{height:11px;background-position:-2985px 0px}.iti__flag.iti__ls{height:14px;background-position:-3007px 0px}.iti__flag.iti__lt{height:12px;background-position:-3029px 0px}.iti__flag.iti__lu{height:12px;background-position:-3051px 0px}.iti__flag.iti__lv{height:10px;background-position:-3073px 0px}.iti__flag.iti__ly{height:10px;background-position:-3095px 0px}.iti__flag.iti__ma{height:14px;background-position:-3117px 0px}.iti__flag.iti__mc{height:15px;background-position:-3139px 0px}.iti__flag.iti__md{height:10px;background-position:-3160px 0px}.iti__flag.iti__me{height:10px;background-position:-3182px 0px}.iti__flag.iti__mf{height:14px;background-position:-3204px 0px}.iti__flag.iti__mg{height:14px;background-position:-3226px 0px}.iti__flag.iti__mh{height:11px;background-position:-3248px 0px}.iti__flag.iti__mk{height:10px;background-position:-3270px 0px}.iti__flag.iti__ml{height:14px;background-position:-3292px 0px}.iti__flag.iti__mm{height:14px;background-position:-3314px 0px}.iti__flag.iti__mn{height:10px;background-position:-3336px 0px}.iti__flag.iti__mo{height:14px;background-position:-3358px 0px}.iti__flag.iti__mp{height:10px;background-position:-3380px 0px}.iti__flag.iti__mq{height:14px;background-position:-3402px 0px}.iti__flag.iti__mr{height:14px;background-position:-3424px 0px}.iti__flag.iti__ms{height:10px;background-position:-3446px 0px}.iti__flag.iti__mt{height:14px;background-position:-3468px 0px}.iti__flag.iti__mu{height:14px;background-position:-3490px 0px}.iti__flag.iti__mv{height:14px;background-position:-3512px 0px}.iti__flag.iti__mw{height:14px;background-position:-3534px 0px}.iti__flag.iti__mx{height:12px;background-position:-3556px 0px}.iti__flag.iti__my{height:10px;background-position:-3578px 0px}.iti__flag.iti__mz{height:14px;background-position:-3600px 0px}.iti__flag.iti__na{height:14px;background-position:-3622px 0px}.iti__flag.iti__nc{height:10px;background-position:-3644px 0px}.iti__flag.iti__ne{height:15px;background-position:-3666px 0px}.iti__flag.iti__nf{height:10px;background-position:-3686px 0px}.iti__flag.iti__ng{height:10px;background-position:-3708px 0px}.iti__flag.iti__ni{height:12px;background-position:-3730px 0px}.iti__flag.iti__nl{height:14px;background-position:-3752px 0px}.iti__flag.iti__no{height:15px;background-position:-3774px 0px}.iti__flag.iti__np{height:15px;background-position:-3796px 0px}.iti__flag.iti__nr{height:10px;background-position:-3811px 0px}.iti__flag.iti__nu{height:10px;background-position:-3833px 0px}.iti__flag.iti__nz{height:10px;background-position:-3855px 0px}.iti__flag.iti__om{height:10px;background-position:-3877px 0px}.iti__flag.iti__pa{height:14px;background-position:-3899px 0px}.iti__flag.iti__pe{height:14px;background-position:-3921px 0px}.iti__flag.iti__pf{height:14px;background-position:-3943px 0px}.iti__flag.iti__pg{height:15px;background-position:-3965px 0px}.iti__flag.iti__ph{height:10px;background-position:-3987px 0px}.iti__flag.iti__pk{height:14px;background-position:-4009px 0px}.iti__flag.iti__pl{height:13px;background-position:-4031px 0px}.iti__flag.iti__pm{height:14px;background-position:-4053px 0px}.iti__flag.iti__pn{height:10px;background-position:-4075px 0px}.iti__flag.iti__pr{height:14px;background-position:-4097px 0px}.iti__flag.iti__ps{height:10px;background-position:-4119px 0px}.iti__flag.iti__pt{height:14px;background-position:-4141px 0px}.iti__flag.iti__pw{height:13px;background-position:-4163px 0px}.iti__flag.iti__py{height:11px;background-position:-4185px 0px}.iti__flag.iti__qa{height:8px;background-position:-4207px 0px}.iti__flag.iti__re{height:14px;background-position:-4229px 0px}.iti__flag.iti__ro{height:14px;background-position:-4251px 0px}.iti__flag.iti__rs{height:14px;background-position:-4273px 0px}.iti__flag.iti__ru{height:14px;background-position:-4295px 0px}.iti__flag.iti__rw{height:14px;background-position:-4317px 0px}.iti__flag.iti__sa{height:14px;background-position:-4339px 0px}.iti__flag.iti__sb{height:10px;background-position:-4361px 0px}.iti__flag.iti__sc{height:10px;background-position:-4383px 0px}.iti__flag.iti__sd{height:10px;background-position:-4405px 0px}.iti__flag.iti__se{height:13px;background-position:-4427px 0px}.iti__flag.iti__sg{height:14px;background-position:-4449px 0px}.iti__flag.iti__sh{height:10px;background-position:-4471px 0px}.iti__flag.iti__si{height:10px;background-position:-4493px 0px}.iti__flag.iti__sj{height:15px;background-position:-4515px 0px}.iti__flag.iti__sk{height:14px;background-position:-4537px 0px}.iti__flag.iti__sl{height:14px;background-position:-4559px 0px}.iti__flag.iti__sm{height:15px;background-position:-4581px 0px}.iti__flag.iti__sn{height:14px;background-position:-4603px 0px}.iti__flag.iti__so{height:14px;background-position:-4625px 0px}.iti__flag.iti__sr{height:14px;background-position:-4647px 0px}.iti__flag.iti__ss{height:10px;background-position:-4669px 0px}.iti__flag.iti__st{height:10px;background-position:-4691px 0px}.iti__flag.iti__sv{height:12px;background-position:-4713px 0px}.iti__flag.iti__sx{height:14px;background-position:-4735px 0px}.iti__flag.iti__sy{height:14px;background-position:-4757px 0px}.iti__flag.iti__sz{height:14px;background-position:-4779px 0px}.iti__flag.iti__ta{height:10px;background-position:-4801px 0px}.iti__flag.iti__tc{height:10px;background-position:-4823px 0px}.iti__flag.iti__td{height:14px;background-position:-4845px 0px}.iti__flag.iti__tf{height:14px;background-position:-4867px 0px}.iti__flag.iti__tg{height:13px;background-position:-4889px 0px}.iti__flag.iti__th{height:14px;background-position:-4911px 0px}.iti__flag.iti__tj{height:10px;background-position:-4933px 0px}.iti__flag.iti__tk{height:10px;background-position:-4955px 0px}.iti__flag.iti__tl{height:10px;background-position:-4977px 0px}.iti__flag.iti__tm{height:14px;background-position:-4999px 0px}.iti__flag.iti__tn{height:14px;background-position:-5021px 0px}.iti__flag.iti__to{height:10px;background-position:-5043px 0px}.iti__flag.iti__tr{height:14px;background-position:-5065px 0px}.iti__flag.iti__tt{height:12px;background-position:-5087px 0px}.iti__flag.iti__tv{height:10px;background-position:-5109px 0px}.iti__flag.iti__tw{height:14px;background-position:-5131px 0px}.iti__flag.iti__tz{height:14px;background-position:-5153px 0px}.iti__flag.iti__ua{height:14px;background-position:-5175px 0px}.iti__flag.iti__ug{height:14px;background-position:-5197px 0px}.iti__flag.iti__um{height:11px;background-position:-5219px 0px}.iti__flag.iti__un{height:14px;background-position:-5241px 0px}.iti__flag.iti__us{height:11px;background-position:-5263px 0px}.iti__flag.iti__uy{height:14px;background-position:-5285px 0px}.iti__flag.iti__uz{height:10px;background-position:-5307px 0px}.iti__flag.iti__va{height:15px;background-position:-5329px 0px}.iti__flag.iti__vc{height:14px;background-position:-5346px 0px}.iti__flag.iti__ve{height:14px;background-position:-5368px 0px}.iti__flag.iti__vg{height:10px;background-position:-5390px 0px}.iti__flag.iti__vi{height:14px;background-position:-5412px 0px}.iti__flag.iti__vn{height:14px;background-position:-5434px 0px}.iti__flag.iti__vu{height:12px;background-position:-5456px 0px}.iti__flag.iti__wf{height:14px;background-position:-5478px 0px}.iti__flag.iti__ws{height:10px;background-position:-5500px 0px}.iti__flag.iti__xk{height:15px;background-position:-5522px 0px}.iti__flag.iti__ye{height:14px;background-position:-5544px 0px}.iti__flag.iti__yt{height:14px;background-position:-5566px 0px}.iti__flag.iti__za{height:14px;background-position:-5588px 0px}.iti__flag.iti__zm{height:14px;background-position:-5610px 0px}.iti__flag.iti__zw{height:10px;background-position:-5632px 0px}.iti__flag{height:15px;box-shadow:0 0 1px #888;background-image:url(../img/flags.png);background-repeat:no-repeat;background-color:#dbdbdb;background-position:20px 0}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag{background-image:url(../img/flags@2x.png)}}.iti__flag.iti__np{background-color:transparent}.sky-country-field-country-btn+::ng-deep .sky-form-control{border-left:none}.sky-country-field-container{width:100%}.sky-country-field-search-result-flag{display:inline-block;margin-right:5px}.sky-country-field-flag{display:none}.sky-country-field-disabled .sky-country-field-input{cursor:default;background-color:#cdcfd2}.sky-country-field-disabled .sky-country-field-flag{opacity:.65}.sky-country-field-input{cursor:text;display:flex;position:relative}.sky-country-field-input .sky-country-field-flag{align-items:center;margin-bottom:auto;margin-top:auto;position:absolute;left:13px;height:35px;bottom:0}.sky-country-field-input textarea{overflow:hidden;resize:none;white-space:nowrap}.sky-country-field-input-with-flag .sky-country-field-flag{display:flex}.sky-country-field-input-with-flag .sky-form-control{padding-left:40px}.sky-country-field-country-selected,.sky-country-field-country-default{border-bottom:1px solid #e2e3e4}:host(.ng-invalid.ng-touched) .sky-country-field-input textarea{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}::ng-deep .sky-theme-modern .sky-country-field-disabled .sky-country-field-flag{filter:grayscale(100%)}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input{background-color:transparent;border-radius:6px}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input textarea.sky-form-control{overflow:hidden;resize:none;white-space:nowrap}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input-with-flag .sky-country-field-flag{height:40px;left:15px;opacity:1}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input-with-flag .sky-form-control{padding-left:45px}.iti__flag{max-width:25px;max-height:13px;background-image:url(https://sky.blackbaudcdn.net/static/skyux-public-assets/1.0.0-beta.2/assets/images/intl-tel-input/flags.webp)!important}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag .iti__flag{background-image:url(https://sky.blackbaudcdn.net/static/skyux-public-assets/1.0.0-beta.2/assets/images/intl-tel-input/flags@2x.webp)!important}}\n"], components: [{ type: SkyAutocompleteComponent, selector: "sky-autocomplete", inputs: ["ariaLabelledBy", "data", "debounceTime", "descriptorProperty", "enableShowMore", "messageStream", "wrapperClass", "propertiesToSearch", "search", "searchResultTemplate", "searchTextMinimumCharacters", "searchFilters", "searchResultsLimit", "showAddButton", "noResultsFoundText", "searchAsyncDisabled"], outputs: ["addClick", "showMoreClick", "selectionChange", "searchAsync"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: SkyAutocompleteInputDirective, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "skyLibResources": i4$1.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1542
1570
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyCountryFieldComponent, decorators: [{
1543
1571
  type: Component,
1544
1572
  args: [{ selector: 'sky-country-field', providers: [SKY_COUNTRY_FIELD_VALIDATOR], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <span\n class=\"sky-country-field-container\"\n [ngClass]=\"{\n 'sky-country-field-disabled': disabled\n }\"\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"inputId\"\n [data]=\"countries\"\n [propertiesToSearch]=\"['name', 'iso2']\"\n [searchResultTemplate]=\"countrySearchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n (selectionChange)=\"onCountrySelected($event)\"\n >\n <div\n class=\"sky-country-field-input\"\n [ngClass]=\"{\n 'sky-country-field-input-with-flag':\n selectedCountry && selectedCountry.iso2 && !hideSelectedCountryFlag\n }\"\n >\n <div\n *ngIf=\"\n selectedCountry && selectedCountry.iso2 && !hideSelectedCountryFlag\n \"\n class=\"sky-country-field-flag\"\n >\n <div\n class=\"iti__flag\"\n [ngClass]=\"'iti__' + selectedCountry.iso2.toLowerCase()\"\n ></div>\n </div>\n <textarea\n class=\"sky-form-control\"\n name=\"selectedCountry\"\n rows=\"1\"\n skyAutocomplete\n [attr.aria-label]=\"\n 'skyux_country_field_search_placeholder' | skyLibResources\n \"\n [attr.disabled]=\"disabled ? true : undefined\"\n [attr.id]=\"inputId\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [formControl]=\"countrySearchFormControl\"\n [placeholder]=\"\n currentTheme === 'default'\n ? ('skyux_country_field_search_placeholder' | skyLibResources)\n : ''\n \"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </sky-autocomplete>\n </span>\n</ng-template>\n\n<ng-template let-item=\"item\" #countrySearchResultTemplate>\n <div\n class=\"sky-country-field-search-result-flag\"\n [ngClass]=\"'iti__flag iti__' + item.iso2.toLowerCase()\"\n ></div>\n {{ item.name }}\n <span *ngIf=\"includePhoneInfo\" class=\"sky-deemphasized\">\n {{ item.dialCode }}\n </span>\n</ng-template>\n\n<!-- This template should only be used in modern theme input boxes. -->\n<ng-template #searchIconTemplateRef>\n <div class=\"sky-input-group-icon sky-input-box-icon-inset\">\n <sky-icon iconType=\"skyux\" icon=\"search\"></sky-icon>\n </div>\n</ng-template>\n", styles: [".iti{position:relative;display:inline-block}.iti *{box-sizing:border-box;-moz-box-sizing:border-box}.iti__hide{display:none}.iti__v-hide{visibility:hidden}.iti input,.iti input[type=text],.iti input[type=tel]{position:relative;z-index:0;margin-top:0!important;margin-bottom:0!important;padding-right:36px;margin-right:0}.iti__flag-container{position:absolute;top:0;bottom:0;right:0;padding:1px}.iti__selected-flag{z-index:1;position:relative;display:flex;align-items:center;height:100%;padding:0 6px 0 8px}.iti__arrow{margin-left:6px;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid #555}.iti__arrow--up{border-top:none;border-bottom:4px solid #555}.iti__country-list{position:absolute;z-index:2;list-style:none;text-align:left;padding:0;margin:0 0 0 -1px;box-shadow:1px 1px 4px #0003;background-color:#fff;border:1px solid #CCC;white-space:nowrap;max-height:200px;overflow-y:scroll;-webkit-overflow-scrolling:touch}.iti__country-list--dropup{bottom:100%;margin-bottom:-1px}@media (max-width: 500px){.iti__country-list{white-space:normal}}.iti__flag-box{display:inline-block;width:20px}.iti__divider{padding-bottom:5px;margin-bottom:5px;border-bottom:1px solid #CCC}.iti__country{padding:5px 10px;outline:none}.iti__dial-code{color:#999}.iti__country.iti__highlight{background-color:#0000000d}.iti__flag-box,.iti__country-name,.iti__dial-code{vertical-align:middle}.iti__flag-box,.iti__country-name{margin-right:6px}.iti--allow-dropdown input,.iti--allow-dropdown input[type=text],.iti--allow-dropdown input[type=tel],.iti--separate-dial-code input,.iti--separate-dial-code input[type=text],.iti--separate-dial-code input[type=tel]{padding-right:6px;padding-left:52px;margin-left:0}.iti--allow-dropdown .iti__flag-container,.iti--separate-dial-code .iti__flag-container{right:auto;left:0}.iti--allow-dropdown .iti__flag-container:hover{cursor:pointer}.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag{background-color:#0000000d}.iti--allow-dropdown input[disabled]+.iti__flag-container:hover,.iti--allow-dropdown input[readonly]+.iti__flag-container:hover{cursor:default}.iti--allow-dropdown input[disabled]+.iti__flag-container:hover .iti__selected-flag,.iti--allow-dropdown input[readonly]+.iti__flag-container:hover .iti__selected-flag{background-color:transparent}.iti--separate-dial-code .iti__selected-flag{background-color:#0000000d}.iti--separate-dial-code .iti__selected-dial-code{margin-left:6px}.iti--container{position:absolute;top:-1000px;left:-1000px;z-index:1060;padding:1px}.iti--container:hover{cursor:pointer}.iti-mobile .iti--container{top:30px;bottom:30px;left:30px;right:30px;position:fixed}.iti-mobile .iti__country-list{max-height:100%;width:100%}.iti-mobile .iti__country{padding:10px;line-height:1.5em}.iti__flag{width:20px}.iti__flag.iti__be{width:18px}.iti__flag.iti__ch{width:15px}.iti__flag.iti__mc{width:19px}.iti__flag.iti__ne{width:18px}.iti__flag.iti__np{width:13px}.iti__flag.iti__va{width:15px}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag{background-size:5652px 15px}}.iti__flag.iti__ac{height:10px;background-position:0px 0px}.iti__flag.iti__ad{height:14px;background-position:-22px 0px}.iti__flag.iti__ae{height:10px;background-position:-44px 0px}.iti__flag.iti__af{height:14px;background-position:-66px 0px}.iti__flag.iti__ag{height:14px;background-position:-88px 0px}.iti__flag.iti__ai{height:10px;background-position:-110px 0px}.iti__flag.iti__al{height:15px;background-position:-132px 0px}.iti__flag.iti__am{height:10px;background-position:-154px 0px}.iti__flag.iti__ao{height:14px;background-position:-176px 0px}.iti__flag.iti__aq{height:14px;background-position:-198px 0px}.iti__flag.iti__ar{height:13px;background-position:-220px 0px}.iti__flag.iti__as{height:10px;background-position:-242px 0px}.iti__flag.iti__at{height:14px;background-position:-264px 0px}.iti__flag.iti__au{height:10px;background-position:-286px 0px}.iti__flag.iti__aw{height:14px;background-position:-308px 0px}.iti__flag.iti__ax{height:13px;background-position:-330px 0px}.iti__flag.iti__az{height:10px;background-position:-352px 0px}.iti__flag.iti__ba{height:10px;background-position:-374px 0px}.iti__flag.iti__bb{height:14px;background-position:-396px 0px}.iti__flag.iti__bd{height:12px;background-position:-418px 0px}.iti__flag.iti__be{height:15px;background-position:-440px 0px}.iti__flag.iti__bf{height:14px;background-position:-460px 0px}.iti__flag.iti__bg{height:12px;background-position:-482px 0px}.iti__flag.iti__bh{height:12px;background-position:-504px 0px}.iti__flag.iti__bi{height:12px;background-position:-526px 0px}.iti__flag.iti__bj{height:14px;background-position:-548px 0px}.iti__flag.iti__bl{height:14px;background-position:-570px 0px}.iti__flag.iti__bm{height:10px;background-position:-592px 0px}.iti__flag.iti__bn{height:10px;background-position:-614px 0px}.iti__flag.iti__bo{height:14px;background-position:-636px 0px}.iti__flag.iti__bq{height:14px;background-position:-658px 0px}.iti__flag.iti__br{height:14px;background-position:-680px 0px}.iti__flag.iti__bs{height:10px;background-position:-702px 0px}.iti__flag.iti__bt{height:14px;background-position:-724px 0px}.iti__flag.iti__bv{height:15px;background-position:-746px 0px}.iti__flag.iti__bw{height:14px;background-position:-768px 0px}.iti__flag.iti__by{height:10px;background-position:-790px 0px}.iti__flag.iti__bz{height:14px;background-position:-812px 0px}.iti__flag.iti__ca{height:10px;background-position:-834px 0px}.iti__flag.iti__cc{height:10px;background-position:-856px 0px}.iti__flag.iti__cd{height:15px;background-position:-878px 0px}.iti__flag.iti__cf{height:14px;background-position:-900px 0px}.iti__flag.iti__cg{height:14px;background-position:-922px 0px}.iti__flag.iti__ch{height:15px;background-position:-944px 0px}.iti__flag.iti__ci{height:14px;background-position:-961px 0px}.iti__flag.iti__ck{height:10px;background-position:-983px 0px}.iti__flag.iti__cl{height:14px;background-position:-1005px 0px}.iti__flag.iti__cm{height:14px;background-position:-1027px 0px}.iti__flag.iti__cn{height:14px;background-position:-1049px 0px}.iti__flag.iti__co{height:14px;background-position:-1071px 0px}.iti__flag.iti__cp{height:14px;background-position:-1093px 0px}.iti__flag.iti__cr{height:12px;background-position:-1115px 0px}.iti__flag.iti__cu{height:10px;background-position:-1137px 0px}.iti__flag.iti__cv{height:12px;background-position:-1159px 0px}.iti__flag.iti__cw{height:14px;background-position:-1181px 0px}.iti__flag.iti__cx{height:10px;background-position:-1203px 0px}.iti__flag.iti__cy{height:14px;background-position:-1225px 0px}.iti__flag.iti__cz{height:14px;background-position:-1247px 0px}.iti__flag.iti__de{height:12px;background-position:-1269px 0px}.iti__flag.iti__dg{height:10px;background-position:-1291px 0px}.iti__flag.iti__dj{height:14px;background-position:-1313px 0px}.iti__flag.iti__dk{height:15px;background-position:-1335px 0px}.iti__flag.iti__dm{height:10px;background-position:-1357px 0px}.iti__flag.iti__do{height:14px;background-position:-1379px 0px}.iti__flag.iti__dz{height:14px;background-position:-1401px 0px}.iti__flag.iti__ea{height:14px;background-position:-1423px 0px}.iti__flag.iti__ec{height:14px;background-position:-1445px 0px}.iti__flag.iti__ee{height:13px;background-position:-1467px 0px}.iti__flag.iti__eg{height:14px;background-position:-1489px 0px}.iti__flag.iti__eh{height:10px;background-position:-1511px 0px}.iti__flag.iti__er{height:10px;background-position:-1533px 0px}.iti__flag.iti__es{height:14px;background-position:-1555px 0px}.iti__flag.iti__et{height:10px;background-position:-1577px 0px}.iti__flag.iti__eu{height:14px;background-position:-1599px 0px}.iti__flag.iti__fi{height:12px;background-position:-1621px 0px}.iti__flag.iti__fj{height:10px;background-position:-1643px 0px}.iti__flag.iti__fk{height:10px;background-position:-1665px 0px}.iti__flag.iti__fm{height:11px;background-position:-1687px 0px}.iti__flag.iti__fo{height:15px;background-position:-1709px 0px}.iti__flag.iti__fr{height:14px;background-position:-1731px 0px}.iti__flag.iti__ga{height:15px;background-position:-1753px 0px}.iti__flag.iti__gb{height:10px;background-position:-1775px 0px}.iti__flag.iti__gd{height:12px;background-position:-1797px 0px}.iti__flag.iti__ge{height:14px;background-position:-1819px 0px}.iti__flag.iti__gf{height:14px;background-position:-1841px 0px}.iti__flag.iti__gg{height:14px;background-position:-1863px 0px}.iti__flag.iti__gh{height:14px;background-position:-1885px 0px}.iti__flag.iti__gi{height:10px;background-position:-1907px 0px}.iti__flag.iti__gl{height:14px;background-position:-1929px 0px}.iti__flag.iti__gm{height:14px;background-position:-1951px 0px}.iti__flag.iti__gn{height:14px;background-position:-1973px 0px}.iti__flag.iti__gp{height:14px;background-position:-1995px 0px}.iti__flag.iti__gq{height:14px;background-position:-2017px 0px}.iti__flag.iti__gr{height:14px;background-position:-2039px 0px}.iti__flag.iti__gs{height:10px;background-position:-2061px 0px}.iti__flag.iti__gt{height:13px;background-position:-2083px 0px}.iti__flag.iti__gu{height:11px;background-position:-2105px 0px}.iti__flag.iti__gw{height:10px;background-position:-2127px 0px}.iti__flag.iti__gy{height:12px;background-position:-2149px 0px}.iti__flag.iti__hk{height:14px;background-position:-2171px 0px}.iti__flag.iti__hm{height:10px;background-position:-2193px 0px}.iti__flag.iti__hn{height:10px;background-position:-2215px 0px}.iti__flag.iti__hr{height:10px;background-position:-2237px 0px}.iti__flag.iti__ht{height:12px;background-position:-2259px 0px}.iti__flag.iti__hu{height:10px;background-position:-2281px 0px}.iti__flag.iti__ic{height:14px;background-position:-2303px 0px}.iti__flag.iti__id{height:14px;background-position:-2325px 0px}.iti__flag.iti__ie{height:10px;background-position:-2347px 0px}.iti__flag.iti__il{height:15px;background-position:-2369px 0px}.iti__flag.iti__im{height:10px;background-position:-2391px 0px}.iti__flag.iti__in{height:14px;background-position:-2413px 0px}.iti__flag.iti__io{height:10px;background-position:-2435px 0px}.iti__flag.iti__iq{height:14px;background-position:-2457px 0px}.iti__flag.iti__ir{height:12px;background-position:-2479px 0px}.iti__flag.iti__is{height:15px;background-position:-2501px 0px}.iti__flag.iti__it{height:14px;background-position:-2523px 0px}.iti__flag.iti__je{height:12px;background-position:-2545px 0px}.iti__flag.iti__jm{height:10px;background-position:-2567px 0px}.iti__flag.iti__jo{height:10px;background-position:-2589px 0px}.iti__flag.iti__jp{height:14px;background-position:-2611px 0px}.iti__flag.iti__ke{height:14px;background-position:-2633px 0px}.iti__flag.iti__kg{height:12px;background-position:-2655px 0px}.iti__flag.iti__kh{height:13px;background-position:-2677px 0px}.iti__flag.iti__ki{height:10px;background-position:-2699px 0px}.iti__flag.iti__km{height:12px;background-position:-2721px 0px}.iti__flag.iti__kn{height:14px;background-position:-2743px 0px}.iti__flag.iti__kp{height:10px;background-position:-2765px 0px}.iti__flag.iti__kr{height:14px;background-position:-2787px 0px}.iti__flag.iti__kw{height:10px;background-position:-2809px 0px}.iti__flag.iti__ky{height:10px;background-position:-2831px 0px}.iti__flag.iti__kz{height:10px;background-position:-2853px 0px}.iti__flag.iti__la{height:14px;background-position:-2875px 0px}.iti__flag.iti__lb{height:14px;background-position:-2897px 0px}.iti__flag.iti__lc{height:10px;background-position:-2919px 0px}.iti__flag.iti__li{height:12px;background-position:-2941px 0px}.iti__flag.iti__lk{height:10px;background-position:-2963px 0px}.iti__flag.iti__lr{height:11px;background-position:-2985px 0px}.iti__flag.iti__ls{height:14px;background-position:-3007px 0px}.iti__flag.iti__lt{height:12px;background-position:-3029px 0px}.iti__flag.iti__lu{height:12px;background-position:-3051px 0px}.iti__flag.iti__lv{height:10px;background-position:-3073px 0px}.iti__flag.iti__ly{height:10px;background-position:-3095px 0px}.iti__flag.iti__ma{height:14px;background-position:-3117px 0px}.iti__flag.iti__mc{height:15px;background-position:-3139px 0px}.iti__flag.iti__md{height:10px;background-position:-3160px 0px}.iti__flag.iti__me{height:10px;background-position:-3182px 0px}.iti__flag.iti__mf{height:14px;background-position:-3204px 0px}.iti__flag.iti__mg{height:14px;background-position:-3226px 0px}.iti__flag.iti__mh{height:11px;background-position:-3248px 0px}.iti__flag.iti__mk{height:10px;background-position:-3270px 0px}.iti__flag.iti__ml{height:14px;background-position:-3292px 0px}.iti__flag.iti__mm{height:14px;background-position:-3314px 0px}.iti__flag.iti__mn{height:10px;background-position:-3336px 0px}.iti__flag.iti__mo{height:14px;background-position:-3358px 0px}.iti__flag.iti__mp{height:10px;background-position:-3380px 0px}.iti__flag.iti__mq{height:14px;background-position:-3402px 0px}.iti__flag.iti__mr{height:14px;background-position:-3424px 0px}.iti__flag.iti__ms{height:10px;background-position:-3446px 0px}.iti__flag.iti__mt{height:14px;background-position:-3468px 0px}.iti__flag.iti__mu{height:14px;background-position:-3490px 0px}.iti__flag.iti__mv{height:14px;background-position:-3512px 0px}.iti__flag.iti__mw{height:14px;background-position:-3534px 0px}.iti__flag.iti__mx{height:12px;background-position:-3556px 0px}.iti__flag.iti__my{height:10px;background-position:-3578px 0px}.iti__flag.iti__mz{height:14px;background-position:-3600px 0px}.iti__flag.iti__na{height:14px;background-position:-3622px 0px}.iti__flag.iti__nc{height:10px;background-position:-3644px 0px}.iti__flag.iti__ne{height:15px;background-position:-3666px 0px}.iti__flag.iti__nf{height:10px;background-position:-3686px 0px}.iti__flag.iti__ng{height:10px;background-position:-3708px 0px}.iti__flag.iti__ni{height:12px;background-position:-3730px 0px}.iti__flag.iti__nl{height:14px;background-position:-3752px 0px}.iti__flag.iti__no{height:15px;background-position:-3774px 0px}.iti__flag.iti__np{height:15px;background-position:-3796px 0px}.iti__flag.iti__nr{height:10px;background-position:-3811px 0px}.iti__flag.iti__nu{height:10px;background-position:-3833px 0px}.iti__flag.iti__nz{height:10px;background-position:-3855px 0px}.iti__flag.iti__om{height:10px;background-position:-3877px 0px}.iti__flag.iti__pa{height:14px;background-position:-3899px 0px}.iti__flag.iti__pe{height:14px;background-position:-3921px 0px}.iti__flag.iti__pf{height:14px;background-position:-3943px 0px}.iti__flag.iti__pg{height:15px;background-position:-3965px 0px}.iti__flag.iti__ph{height:10px;background-position:-3987px 0px}.iti__flag.iti__pk{height:14px;background-position:-4009px 0px}.iti__flag.iti__pl{height:13px;background-position:-4031px 0px}.iti__flag.iti__pm{height:14px;background-position:-4053px 0px}.iti__flag.iti__pn{height:10px;background-position:-4075px 0px}.iti__flag.iti__pr{height:14px;background-position:-4097px 0px}.iti__flag.iti__ps{height:10px;background-position:-4119px 0px}.iti__flag.iti__pt{height:14px;background-position:-4141px 0px}.iti__flag.iti__pw{height:13px;background-position:-4163px 0px}.iti__flag.iti__py{height:11px;background-position:-4185px 0px}.iti__flag.iti__qa{height:8px;background-position:-4207px 0px}.iti__flag.iti__re{height:14px;background-position:-4229px 0px}.iti__flag.iti__ro{height:14px;background-position:-4251px 0px}.iti__flag.iti__rs{height:14px;background-position:-4273px 0px}.iti__flag.iti__ru{height:14px;background-position:-4295px 0px}.iti__flag.iti__rw{height:14px;background-position:-4317px 0px}.iti__flag.iti__sa{height:14px;background-position:-4339px 0px}.iti__flag.iti__sb{height:10px;background-position:-4361px 0px}.iti__flag.iti__sc{height:10px;background-position:-4383px 0px}.iti__flag.iti__sd{height:10px;background-position:-4405px 0px}.iti__flag.iti__se{height:13px;background-position:-4427px 0px}.iti__flag.iti__sg{height:14px;background-position:-4449px 0px}.iti__flag.iti__sh{height:10px;background-position:-4471px 0px}.iti__flag.iti__si{height:10px;background-position:-4493px 0px}.iti__flag.iti__sj{height:15px;background-position:-4515px 0px}.iti__flag.iti__sk{height:14px;background-position:-4537px 0px}.iti__flag.iti__sl{height:14px;background-position:-4559px 0px}.iti__flag.iti__sm{height:15px;background-position:-4581px 0px}.iti__flag.iti__sn{height:14px;background-position:-4603px 0px}.iti__flag.iti__so{height:14px;background-position:-4625px 0px}.iti__flag.iti__sr{height:14px;background-position:-4647px 0px}.iti__flag.iti__ss{height:10px;background-position:-4669px 0px}.iti__flag.iti__st{height:10px;background-position:-4691px 0px}.iti__flag.iti__sv{height:12px;background-position:-4713px 0px}.iti__flag.iti__sx{height:14px;background-position:-4735px 0px}.iti__flag.iti__sy{height:14px;background-position:-4757px 0px}.iti__flag.iti__sz{height:14px;background-position:-4779px 0px}.iti__flag.iti__ta{height:10px;background-position:-4801px 0px}.iti__flag.iti__tc{height:10px;background-position:-4823px 0px}.iti__flag.iti__td{height:14px;background-position:-4845px 0px}.iti__flag.iti__tf{height:14px;background-position:-4867px 0px}.iti__flag.iti__tg{height:13px;background-position:-4889px 0px}.iti__flag.iti__th{height:14px;background-position:-4911px 0px}.iti__flag.iti__tj{height:10px;background-position:-4933px 0px}.iti__flag.iti__tk{height:10px;background-position:-4955px 0px}.iti__flag.iti__tl{height:10px;background-position:-4977px 0px}.iti__flag.iti__tm{height:14px;background-position:-4999px 0px}.iti__flag.iti__tn{height:14px;background-position:-5021px 0px}.iti__flag.iti__to{height:10px;background-position:-5043px 0px}.iti__flag.iti__tr{height:14px;background-position:-5065px 0px}.iti__flag.iti__tt{height:12px;background-position:-5087px 0px}.iti__flag.iti__tv{height:10px;background-position:-5109px 0px}.iti__flag.iti__tw{height:14px;background-position:-5131px 0px}.iti__flag.iti__tz{height:14px;background-position:-5153px 0px}.iti__flag.iti__ua{height:14px;background-position:-5175px 0px}.iti__flag.iti__ug{height:14px;background-position:-5197px 0px}.iti__flag.iti__um{height:11px;background-position:-5219px 0px}.iti__flag.iti__un{height:14px;background-position:-5241px 0px}.iti__flag.iti__us{height:11px;background-position:-5263px 0px}.iti__flag.iti__uy{height:14px;background-position:-5285px 0px}.iti__flag.iti__uz{height:10px;background-position:-5307px 0px}.iti__flag.iti__va{height:15px;background-position:-5329px 0px}.iti__flag.iti__vc{height:14px;background-position:-5346px 0px}.iti__flag.iti__ve{height:14px;background-position:-5368px 0px}.iti__flag.iti__vg{height:10px;background-position:-5390px 0px}.iti__flag.iti__vi{height:14px;background-position:-5412px 0px}.iti__flag.iti__vn{height:14px;background-position:-5434px 0px}.iti__flag.iti__vu{height:12px;background-position:-5456px 0px}.iti__flag.iti__wf{height:14px;background-position:-5478px 0px}.iti__flag.iti__ws{height:10px;background-position:-5500px 0px}.iti__flag.iti__xk{height:15px;background-position:-5522px 0px}.iti__flag.iti__ye{height:14px;background-position:-5544px 0px}.iti__flag.iti__yt{height:14px;background-position:-5566px 0px}.iti__flag.iti__za{height:14px;background-position:-5588px 0px}.iti__flag.iti__zm{height:14px;background-position:-5610px 0px}.iti__flag.iti__zw{height:10px;background-position:-5632px 0px}.iti__flag{height:15px;box-shadow:0 0 1px #888;background-image:url(../img/flags.png);background-repeat:no-repeat;background-color:#dbdbdb;background-position:20px 0}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag{background-image:url(../img/flags@2x.png)}}.iti__flag.iti__np{background-color:transparent}.sky-country-field-country-btn+::ng-deep .sky-form-control{border-left:none}.sky-country-field-container{width:100%}.sky-country-field-search-result-flag{display:inline-block;margin-right:5px}.sky-country-field-flag{display:none}.sky-country-field-disabled .sky-country-field-input{cursor:default;background-color:#cdcfd2}.sky-country-field-disabled .sky-country-field-flag{opacity:.65}.sky-country-field-input{cursor:text;display:flex;position:relative}.sky-country-field-input .sky-country-field-flag{align-items:center;margin-bottom:auto;margin-top:auto;position:absolute;left:13px;height:35px;bottom:0}.sky-country-field-input textarea{overflow:hidden;resize:none;white-space:nowrap}.sky-country-field-input-with-flag .sky-country-field-flag{display:flex}.sky-country-field-input-with-flag .sky-form-control{padding-left:40px}.sky-country-field-country-selected,.sky-country-field-country-default{border-bottom:1px solid #e2e3e4}:host(.ng-invalid.ng-touched) .sky-country-field-input textarea{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}::ng-deep .sky-theme-modern .sky-country-field-disabled .sky-country-field-flag{filter:grayscale(100%)}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input{background-color:transparent;border-radius:6px}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input textarea.sky-form-control{overflow:hidden;resize:none;white-space:nowrap}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input-with-flag .sky-country-field-flag{height:40px;left:15px;opacity:1}::ng-deep .sky-theme-modern .sky-input-box .sky-form-group .sky-country-field-input-with-flag .sky-form-control{padding-left:45px}.iti__flag{max-width:25px;max-height:13px;background-image:url(https://sky.blackbaudcdn.net/static/skyux-public-assets/1.0.0-beta.2/assets/images/intl-tel-input/flags.webp)!important}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.iti__flag .iti__flag{background-image:url(https://sky.blackbaudcdn.net/static/skyux-public-assets/1.0.0-beta.2/assets/images/intl-tel-input/flags@2x.webp)!important}}\n"] }]
@@ -1616,49 +1644,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1616
1644
  }]
1617
1645
  }] });
1618
1646
 
1647
+ var _SkySearchAdapterService_instances, _SkySearchAdapterService_renderer, _SkySearchAdapterService_getInputContainerEl, _SkySearchAdapterService_getSearchOpenButtonEl, _SkySearchAdapterService_getSearchContainerEl, _SkySearchAdapterService_getInputEl;
1619
1648
  /**
1620
1649
  * @internal
1621
1650
  */
1622
1651
  class SkySearchAdapterService {
1623
1652
  constructor(renderer) {
1624
- this.renderer = renderer;
1653
+ _SkySearchAdapterService_instances.add(this);
1654
+ _SkySearchAdapterService_renderer.set(this, void 0);
1655
+ __classPrivateFieldSet(this, _SkySearchAdapterService_renderer, renderer, "f");
1625
1656
  }
1626
1657
  selectInput(searchEl) {
1627
- this.getInputEl(searchEl).select();
1658
+ __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputEl).call(this, searchEl).select();
1628
1659
  }
1629
1660
  focusInput(searchEl) {
1630
- this.getInputEl(searchEl).focus();
1661
+ __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputEl).call(this, searchEl).focus();
1631
1662
  }
1632
1663
  startInputAnimation(searchEl) {
1633
- const buttonWidth = this.getSearchOpenButtonEl(searchEl).clientWidth;
1634
- const offsetWidth = this.getSearchContainerEl(searchEl).offsetLeft;
1664
+ const buttonWidth = __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getSearchOpenButtonEl).call(this, searchEl).clientWidth;
1665
+ const offsetWidth = __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getSearchContainerEl).call(this, searchEl).offsetLeft;
1635
1666
  const minWidth = buttonWidth + offsetWidth;
1636
- this.getInputContainerEl(searchEl).style.minWidth =
1667
+ __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputContainerEl).call(this, searchEl).style.minWidth =
1637
1668
  minWidth.toString() + 'px';
1638
- this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', minWidth.toString() + 'px');
1669
+ __classPrivateFieldGet(this, _SkySearchAdapterService_renderer, "f").setStyle(__classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputContainerEl).call(this, searchEl), 'min-width', minWidth.toString() + 'px');
1639
1670
  }
1640
1671
  endInputAnimation(searchEl) {
1641
- this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', '');
1642
- }
1643
- getInputContainerEl(searchEl) {
1644
- return searchEl.nativeElement.querySelector('.sky-search-input-container');
1645
- }
1646
- getSearchOpenButtonEl(searchEl) {
1647
- return searchEl.nativeElement.querySelector('.sky-search-btn-open');
1648
- }
1649
- getSearchContainerEl(searchEl) {
1650
- return searchEl.nativeElement.querySelector('.sky-search-container');
1651
- }
1652
- getInputEl(searchEl) {
1653
- return searchEl.nativeElement.querySelector('input');
1672
+ __classPrivateFieldGet(this, _SkySearchAdapterService_renderer, "f").setStyle(__classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputContainerEl).call(this, searchEl), 'min-width', '');
1654
1673
  }
1655
1674
  }
1675
+ _SkySearchAdapterService_renderer = new WeakMap(), _SkySearchAdapterService_instances = new WeakSet(), _SkySearchAdapterService_getInputContainerEl = function _SkySearchAdapterService_getInputContainerEl(searchEl) {
1676
+ return searchEl.nativeElement.querySelector('.sky-search-input-container');
1677
+ }, _SkySearchAdapterService_getSearchOpenButtonEl = function _SkySearchAdapterService_getSearchOpenButtonEl(searchEl) {
1678
+ return searchEl.nativeElement.querySelector('.sky-search-btn-open');
1679
+ }, _SkySearchAdapterService_getSearchContainerEl = function _SkySearchAdapterService_getSearchContainerEl(searchEl) {
1680
+ return searchEl.nativeElement.querySelector('.sky-search-container');
1681
+ }, _SkySearchAdapterService_getInputEl = function _SkySearchAdapterService_getInputEl(searchEl) {
1682
+ return searchEl.nativeElement.querySelector('input');
1683
+ };
1656
1684
  SkySearchAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchAdapterService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
1657
1685
  SkySearchAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchAdapterService });
1658
1686
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchAdapterService, decorators: [{
1659
1687
  type: Injectable
1660
1688
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
1661
1689
 
1690
+ var _SkySearchComponent_instances, _SkySearchComponent_changeRef, _SkySearchComponent_elRef, _SkySearchComponent_mediaQueryService, _SkySearchComponent_searchAdapter, _SkySearchComponent_searchUpdated, _SkySearchComponent_searchBindingChanged, _SkySearchComponent_expandModeBindingChanged, _SkySearchComponent_shouldOpenInput, _SkySearchComponent_mediaQueryCallback, _SkySearchComponent_searchShouldCollapse;
1662
1691
  const INPUT_SHOWN_STATE = 'inputShown';
1663
1692
  const INPUT_HIDDEN_STATE = 'inputHidden';
1664
1693
  const EXPAND_MODE_RESPONSIVE = 'responsive';
@@ -1666,10 +1695,7 @@ const EXPAND_MODE_FIT = 'fit';
1666
1695
  const EXPAND_MODE_NONE = 'none';
1667
1696
  class SkySearchComponent {
1668
1697
  constructor(mediaQueryService, elRef, searchAdapter, changeRef) {
1669
- this.mediaQueryService = mediaQueryService;
1670
- this.elRef = elRef;
1671
- this.searchAdapter = searchAdapter;
1672
- this.changeRef = changeRef;
1698
+ _SkySearchComponent_instances.add(this);
1673
1699
  /**
1674
1700
  * Fires when the search text is applied.
1675
1701
  */
@@ -1692,31 +1718,37 @@ class SkySearchComponent {
1692
1718
  this.expandMode = EXPAND_MODE_RESPONSIVE;
1693
1719
  /**
1694
1720
  * Specifies how many milliseconds to wait before searching after users enter text in the search input.
1695
- * @default 0
1696
1721
  */
1697
1722
  this.debounceTime = 0;
1698
1723
  /**
1699
1724
  * Indicates whether to disable the filter button.
1700
- * @default false
1701
1725
  */
1702
1726
  this.disabled = false;
1703
- this.isFullWidth = false;
1704
- this.isCollapsible = true;
1727
+ this.clearButtonShown = false;
1728
+ this.dismissButtonShown = false;
1705
1729
  this.inputAnimate = INPUT_SHOWN_STATE;
1706
- this.searchButtonShown = false;
1730
+ this.isCollapsible = true;
1731
+ this.isFullWidth = false;
1707
1732
  this.mobileSearchShown = false;
1708
- this.dismissButtonShown = false;
1709
- this.clearButtonShown = false;
1710
- this.searchUpdated = new Subject();
1733
+ this.searchButtonShown = false;
1734
+ _SkySearchComponent_changeRef.set(this, void 0);
1735
+ _SkySearchComponent_elRef.set(this, void 0);
1736
+ _SkySearchComponent_mediaQueryService.set(this, void 0);
1737
+ _SkySearchComponent_searchAdapter.set(this, void 0);
1738
+ _SkySearchComponent_searchUpdated.set(this, new Subject());
1739
+ __classPrivateFieldSet(this, _SkySearchComponent_mediaQueryService, mediaQueryService, "f");
1740
+ __classPrivateFieldSet(this, _SkySearchComponent_elRef, elRef, "f");
1741
+ __classPrivateFieldSet(this, _SkySearchComponent_searchAdapter, searchAdapter, "f");
1742
+ __classPrivateFieldSet(this, _SkySearchComponent_changeRef, changeRef, "f");
1711
1743
  }
1712
1744
  ngOnInit() {
1713
- if (this.searchShouldCollapse()) {
1714
- this.breakpointSubscription = this.mediaQueryService.subscribe((args) => {
1715
- this.mediaQueryCallback(args);
1716
- this.changeRef.detectChanges();
1745
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1746
+ this.breakpointSubscription = __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").subscribe((args) => {
1747
+ __classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_mediaQueryCallback).call(this, args);
1748
+ __classPrivateFieldGet(this, _SkySearchComponent_changeRef, "f").detectChanges();
1717
1749
  });
1718
1750
  }
1719
- this.searchUpdated
1751
+ __classPrivateFieldGet(this, _SkySearchComponent_searchUpdated, "f")
1720
1752
  .asObservable()
1721
1753
  .pipe(debounceTime(this.debounceTime), distinctUntilChanged())
1722
1754
  .subscribe((value) => {
@@ -1724,7 +1756,7 @@ class SkySearchComponent {
1724
1756
  });
1725
1757
  }
1726
1758
  ngOnChanges(changes) {
1727
- if (this.expandModeBindingChanged(changes)) {
1759
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_expandModeBindingChanged).call(this, changes)) {
1728
1760
  switch (this.expandMode) {
1729
1761
  case EXPAND_MODE_NONE:
1730
1762
  this.isCollapsible = false;
@@ -1740,18 +1772,18 @@ class SkySearchComponent {
1740
1772
  break;
1741
1773
  }
1742
1774
  }
1743
- if (this.searchBindingChanged(changes)) {
1744
- this.clearButtonShown = this.searchText && this.searchText !== '';
1745
- if (this.shouldOpenInput()) {
1775
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchBindingChanged).call(this, changes)) {
1776
+ this.clearButtonShown = !!(this.searchText && this.searchText !== '');
1777
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_shouldOpenInput).call(this)) {
1746
1778
  this.inputAnimate = INPUT_SHOWN_STATE;
1747
1779
  }
1748
1780
  }
1749
- this.changeRef.detectChanges();
1781
+ __classPrivateFieldGet(this, _SkySearchComponent_changeRef, "f").detectChanges();
1750
1782
  }
1751
1783
  clearSearchText() {
1752
1784
  this.searchText = '';
1753
1785
  this.clearButtonShown = false;
1754
- this.searchAdapter.focusInput(this.elRef);
1786
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").focusInput(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1755
1787
  this.searchChange.emit(this.searchText);
1756
1788
  this.searchApply.emit(this.searchText);
1757
1789
  this.searchClear.emit();
@@ -1769,18 +1801,18 @@ class SkySearchComponent {
1769
1801
  if (searchText !== this.searchText) {
1770
1802
  this.searchText = searchText;
1771
1803
  }
1772
- this.clearButtonShown = searchText && searchText !== '';
1804
+ this.clearButtonShown = !!(searchText && searchText !== '');
1773
1805
  if (searchText && searchText !== '') {
1774
- this.searchAdapter.selectInput(this.elRef);
1806
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").selectInput(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1775
1807
  }
1776
1808
  this.searchApply.emit(searchText);
1777
1809
  }
1778
1810
  searchTextChanged(searchText) {
1779
1811
  this.searchText = searchText;
1780
- this.searchUpdated.next(searchText);
1812
+ __classPrivateFieldGet(this, _SkySearchComponent_searchUpdated, "f").next(searchText);
1781
1813
  }
1782
1814
  toggleSearchInput(showInput) {
1783
- if (this.searchShouldCollapse()) {
1815
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1784
1816
  if (showInput) {
1785
1817
  this.inputAnimate = INPUT_SHOWN_STATE;
1786
1818
  }
@@ -1790,24 +1822,24 @@ class SkySearchComponent {
1790
1822
  }
1791
1823
  }
1792
1824
  inputAnimationStart(event) {
1793
- if (this.searchShouldCollapse()) {
1794
- this.searchAdapter.startInputAnimation(this.elRef);
1825
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1826
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").startInputAnimation(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1795
1827
  if (event.toState === INPUT_SHOWN_STATE &&
1796
- this.mediaQueryService.current === SkyMediaBreakpoints.xs) {
1828
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs) {
1797
1829
  this.mobileSearchShown = true;
1798
1830
  this.searchButtonShown = false;
1799
1831
  }
1800
1832
  }
1801
1833
  }
1802
1834
  inputAnimationEnd(event) {
1803
- if (this.searchShouldCollapse()) {
1804
- this.searchAdapter.endInputAnimation(this.elRef);
1835
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1836
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").endInputAnimation(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1805
1837
  this.searchButtonShown =
1806
1838
  event.toState === INPUT_HIDDEN_STATE &&
1807
- this.mediaQueryService.current === SkyMediaBreakpoints.xs;
1839
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs;
1808
1840
  if ((event.toState === INPUT_HIDDEN_STATE &&
1809
- this.mediaQueryService.current === SkyMediaBreakpoints.xs) ||
1810
- this.mediaQueryService.current !== SkyMediaBreakpoints.xs) {
1841
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs) ||
1842
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current !== SkyMediaBreakpoints.xs) {
1811
1843
  this.mobileSearchShown = false;
1812
1844
  }
1813
1845
  }
@@ -1816,42 +1848,38 @@ class SkySearchComponent {
1816
1848
  if (this.breakpointSubscription) {
1817
1849
  this.breakpointSubscription.unsubscribe();
1818
1850
  }
1819
- this.searchUpdated.complete();
1820
- }
1821
- searchBindingChanged(changes) {
1822
- return (changes['searchText'] &&
1823
- changes['searchText'].previousValue !== changes['searchText'].currentValue);
1824
- }
1825
- expandModeBindingChanged(changes) {
1826
- return (changes['expandMode'] &&
1827
- changes['expandMode'].previousValue !== changes['expandMode'].currentValue);
1828
- }
1829
- shouldOpenInput() {
1830
- return (this.searchText !== '' &&
1831
- this.mediaQueryService.current === SkyMediaBreakpoints.xs &&
1832
- this.searchShouldCollapse());
1851
+ __classPrivateFieldGet(this, _SkySearchComponent_searchUpdated, "f").complete();
1833
1852
  }
1834
- mediaQueryCallback(args) {
1835
- if (this.searchShouldCollapse()) {
1836
- if (args === SkyMediaBreakpoints.xs) {
1837
- this.inputAnimate = INPUT_HIDDEN_STATE;
1838
- }
1839
- else if (this.inputAnimate !== INPUT_SHOWN_STATE) {
1840
- this.inputAnimate = INPUT_SHOWN_STATE;
1841
- }
1842
- else {
1843
- this.mobileSearchShown = false;
1844
- }
1853
+ }
1854
+ _SkySearchComponent_changeRef = new WeakMap(), _SkySearchComponent_elRef = new WeakMap(), _SkySearchComponent_mediaQueryService = new WeakMap(), _SkySearchComponent_searchAdapter = new WeakMap(), _SkySearchComponent_searchUpdated = new WeakMap(), _SkySearchComponent_instances = new WeakSet(), _SkySearchComponent_searchBindingChanged = function _SkySearchComponent_searchBindingChanged(changes) {
1855
+ return (changes['searchText'] &&
1856
+ changes['searchText'].previousValue !== changes['searchText'].currentValue);
1857
+ }, _SkySearchComponent_expandModeBindingChanged = function _SkySearchComponent_expandModeBindingChanged(changes) {
1858
+ return (changes['expandMode'] &&
1859
+ changes['expandMode'].previousValue !== changes['expandMode'].currentValue);
1860
+ }, _SkySearchComponent_shouldOpenInput = function _SkySearchComponent_shouldOpenInput() {
1861
+ return (this.searchText !== '' &&
1862
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs &&
1863
+ __classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this));
1864
+ }, _SkySearchComponent_mediaQueryCallback = function _SkySearchComponent_mediaQueryCallback(args) {
1865
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1866
+ if (args === SkyMediaBreakpoints.xs) {
1867
+ this.inputAnimate = INPUT_HIDDEN_STATE;
1868
+ }
1869
+ else if (this.inputAnimate !== INPUT_SHOWN_STATE) {
1870
+ this.inputAnimate = INPUT_SHOWN_STATE;
1871
+ }
1872
+ else {
1873
+ this.mobileSearchShown = false;
1845
1874
  }
1846
- this.changeRef.markForCheck();
1847
- }
1848
- searchShouldCollapse() {
1849
- return ((this.isCollapsible || this.isCollapsible === undefined) &&
1850
- this.isFullWidth !== true);
1851
1875
  }
1852
- }
1876
+ __classPrivateFieldGet(this, _SkySearchComponent_changeRef, "f").markForCheck();
1877
+ }, _SkySearchComponent_searchShouldCollapse = function _SkySearchComponent_searchShouldCollapse() {
1878
+ return ((this.isCollapsible || this.isCollapsible === undefined) &&
1879
+ this.isFullWidth !== true);
1880
+ };
1853
1881
  SkySearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchComponent, deps: [{ token: i1.SkyMediaQueryService }, { token: i0.ElementRef }, { token: SkySearchAdapterService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1854
- SkySearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkySearchComponent, selector: "sky-search", inputs: { searchText: "searchText", expandMode: "expandMode", debounceTime: "debounceTime", disabled: "disabled", placeholderText: "placeholderText" }, outputs: { searchApply: "searchApply", searchChange: "searchChange", searchClear: "searchClear" }, providers: [SkySearchAdapterService], usesOnChanges: true, ngImport: i0, template: "<div class=\"sky-search-container\">\n <div class=\"sky-search-button-container\">\n <button\n class=\"sky-btn sky-btn-default sky-btn-icon sky-search-btn-open\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_search_open' | skyLibResources\"\n [hidden]=\"!searchButtonShown\"\n [ngClass]=\"{ 'sky-search-btn-open-applied': clearButtonShown }\"\n (click)=\"toggleSearchInput(true)\"\n >\n <ng-container *ngTemplateOutlet=\"searchIconTemplate\"></ng-container>\n </button>\n </div>\n <div\n class=\"sky-search-dismiss-container\"\n [hidden]=\"searchButtonShown\"\n [ngClass]=\"{\n 'sky-search-dismiss-absolute': mobileSearchShown || isFullWidth\n }\"\n >\n <div class=\"sky-search-item-input\">\n <div\n class=\"sky-search-input-container\"\n [@inputState]=\"inputAnimate\"\n (@inputState.start)=\"inputAnimationStart($event)\"\n (@inputState.done)=\"inputAnimationEnd($event)\"\n [ngClass]=\"{\n 'sky-search-input-container-has-value': searchText?.trim()\n }\"\n >\n <sky-input-box>\n <input\n class=\"sky-form-control sky-search-input sky-rounded-corners\"\n type=\"text\"\n [attr.aria-label]=\"'skyux_search_label' | skyLibResources\"\n [attr.placeholder]=\"\n placeholderText || ('skyux_search_placeholder' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngModel]=\"searchText\"\n (keyup)=\"enterPress($event, searchText)\"\n (ngModelChange)=\"searchTextChanged($event)\"\n skyId\n #searchInput=\"skyId\"\n />\n <span\n class=\"sky-input-group-btn sky-input-group-clear sky-input-box-btn-inset\"\n [hidden]=\"!clearButtonShown\"\n >\n <button\n aria-hidden=\"true\"\n class=\"sky-btn sky-btn-default sky-search-btn sky-search-btn-clear\"\n tabindex=\"-1\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"clearSearchText()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"times\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"close\"\n iconType=\"skyux\"\n size=\"sm\"\n ></sky-icon>\n </button>\n </span>\n <span\n *skyThemeIf=\"'default'\"\n class=\"sky-input-group-btn sky-input-box-btn-inset\"\n >\n <button\n class=\"sky-btn sky-btn-default sky-search-btn sky-search-btn-apply\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_search_label' | skyLibResources\"\n [disabled]=\"disabled\"\n (click)=\"applySearchText(searchText)\"\n >\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplate\"\n ></ng-container>\n </button>\n </span>\n <div\n *skyThemeIf=\"'modern'\"\n aria-hidden=\"true\"\n class=\"sky-input-group-icon sky-input-box-icon-inset-left\"\n >\n <ng-container *ngTemplateOutlet=\"searchIconTemplate\"></ng-container>\n </div>\n </sky-input-box>\n </div>\n </div>\n <div class=\"sky-search-item-dismiss\">\n <button\n *ngIf=\"mobileSearchShown\"\n class=\"sky-btn sky-btn-secondary sky-search-btn-dismiss\"\n type=\"button\"\n [attr.title]=\"'skyux_search_dismiss' | skyLibResources\"\n (click)=\"toggleSearchInput(false)\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-circle-left\" size=\"lg\">\n </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"double-chevron-left\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </div>\n</div>\n\n<ng-template #searchIconTemplate>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\" size=\"lg\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"search\"\n iconType=\"skyux\"\n size=\"lg\"\n ></sky-icon>\n</ng-template>\n", styles: ["sky-search .sky-search-container .sky-form-group{margin-bottom:0}sky-search .sky-search-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:0 none}sky-search .sky-search-input:focus{border:0 none;box-shadow:none;outline:none}sky-search .sky-search-input::-ms-clear{display:none}sky-search .sky-search-btn{border-left:0 none}sky-search .sky-search-btn:hover,sky-search .sky-search-btn:focus{background-color:#fff}sky-search .sky-search-btn-apply{padding-left:6px;border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-right:1px solid #cdcfd2}sky-search .sky-search-btn-clear{border-right:0 none;padding-right:6px;border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2}sky-search .sky-search-input-focused .sky-search-btn{border-color:transparent;border-top:0 none;border-bottom:0 none}sky-search .sky-search-input-focused .sky-search-btn-apply{border-right:0 none}sky-search .sky-search-input-container .sky-input-group-btn>button:focus{z-index:3}sky-search .sky-search-input-container{min-width:auto}sky-search .sky-responsive-container-xs .sky-search-input-container,sky-search .sky-responsive-container-sm .sky-search-input-container,sky-search .sky-responsive-container-md .sky-search-input-container,sky-search .sky-responsive-container-lg .sky-search-input-container{min-width:auto}@media (min-width: 768px){sky-search .sky-search-input-container{min-width:300px}}sky-search .sky-responsive-container-sm .sky-search-input-container,sky-search .sky-responsive-container-md .sky-search-input-container,sky-search .sky-responsive-container-lg .sky-search-input-container{min-width:300px}@media (max-width: 767px){sky-search .sky-search-input,sky-search .sky-search-btn-apply,sky-search .sky-search-btn-clear{font-size:15px}}sky-search .sky-search-btn-open-applied.sky-search-btn-open,sky-search .sky-search-btn-open-applied.sky-search-btn-open:hover{color:#72bf44;border:2px solid #72bf44;padding:5px 11px}sky-search .sky-search-dismiss-container{display:flex}sky-search .sky-search-item-dismiss{flex-shrink:0;display:flex}sky-search .sky-search-item-dismiss>.sky-btn{border-color:transparent}sky-search .sky-search-item-input{flex-grow:1;display:flex}sky-search .sky-search-dismiss-absolute{align-items:center;position:absolute;background-color:#fff;top:0;left:0;bottom:0;right:0;padding:5px}.sky-theme-modern sky-search .sky-input-box .sky-input-group-btn .sky-btn.sky-search-btn{width:40px}.sky-theme-modern sky-search .sky-input-box .sky-input-group-btn .sky-btn.sky-search-btn .sky-icon.sky-i-close{color:#1c1d1f;font-size:inherit}.sky-theme-modern sky-search .sky-search-btn-open-applied.sky-search-btn-open,.sky-theme-modern sky-search .sky-search-btn-open-applied.sky-search-btn-open:hover{border:none;box-shadow:inset 0 0 0 2px #72bf44;padding:8px 14px}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container.sky-search-input-container-has-value .sky-input-box-group-form-control:not(.sky-input-box-group-form-control-focus,:hover) .sky-form-group{border:none;border-radius:unset;box-shadow:inset 0 -1px #1870b8}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-icon-inset-left-wrapper .sky-input-box-icon-inset-left{padding:0 10px}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-group-icon .sky-icon{font-size:17.3333px;color:#1c1d1f}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group{box-shadow:none}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group .sky-input-box-form-group-inner input{flex-basis:auto;width:auto;padding:10px 10px 10px 0;margin:0}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group .sky-input-box-form-group-inner input::placeholder{font-style:normal;color:inherit;font-weight:400}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group .sky-input-box-form-group-inner input:focus::placeholder{color:transparent}.sky-theme-modern.sky-theme-mode-dark .sky-search-dismiss-absolute{background-color:#121212}.sky-theme-modern.sky-theme-mode-dark .sky-search-btn-open-applied.sky-search-btn-open,.sky-theme-modern.sky-theme-mode-dark .sky-search-btn-open-applied.sky-search-btn-open:hover{color:#72bf44}.sky-theme-modern.sky-theme-mode-dark sky-search .sky-input-box .sky-input-group-btn .sky-btn.sky-search-btn .sky-icon.sky-i-close{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark sky-search .sky-input-group-icon .sky-icon{font-size:17.333px;color:#fbfcfe}\n"], components: [{ type: i6.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe }, animations: [
1882
+ SkySearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkySearchComponent, selector: "sky-search", inputs: { searchText: "searchText", expandMode: "expandMode", debounceTime: "debounceTime", disabled: "disabled", placeholderText: "placeholderText" }, outputs: { searchApply: "searchApply", searchChange: "searchChange", searchClear: "searchClear" }, providers: [SkySearchAdapterService], usesOnChanges: true, ngImport: i0, template: "<div class=\"sky-search-container\">\n <div class=\"sky-search-button-container\">\n <button\n class=\"sky-btn sky-btn-default sky-btn-icon sky-search-btn-open\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_search_open' | skyLibResources\"\n [hidden]=\"!searchButtonShown\"\n [ngClass]=\"{ 'sky-search-btn-open-applied': clearButtonShown }\"\n (click)=\"toggleSearchInput(true)\"\n >\n <ng-container *ngTemplateOutlet=\"searchIconTemplate\"></ng-container>\n </button>\n </div>\n <div\n class=\"sky-search-dismiss-container\"\n [hidden]=\"searchButtonShown\"\n [ngClass]=\"{\n 'sky-search-dismiss-absolute': mobileSearchShown || isFullWidth\n }\"\n >\n <div class=\"sky-search-item-input\">\n <div\n class=\"sky-search-input-container\"\n [@inputState]=\"inputAnimate\"\n (@inputState.start)=\"inputAnimationStart($event)\"\n (@inputState.done)=\"inputAnimationEnd($event)\"\n [ngClass]=\"{\n 'sky-search-input-container-has-value': searchText?.trim()\n }\"\n >\n <sky-input-box>\n <input\n class=\"sky-form-control sky-search-input sky-rounded-corners\"\n type=\"text\"\n [attr.aria-label]=\"'skyux_search_label' | skyLibResources\"\n [attr.placeholder]=\"\n placeholderText || ('skyux_search_placeholder' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngModel]=\"searchText\"\n (keyup)=\"enterPress($event, searchText)\"\n (ngModelChange)=\"searchTextChanged($event)\"\n skyId\n #searchInput=\"skyId\"\n />\n <span\n class=\"sky-input-group-btn sky-input-group-clear sky-input-box-btn-inset\"\n [hidden]=\"!clearButtonShown\"\n >\n <button\n aria-hidden=\"true\"\n class=\"sky-btn sky-btn-default sky-search-btn sky-search-btn-clear\"\n tabindex=\"-1\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"clearSearchText()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"times\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"close\"\n iconType=\"skyux\"\n size=\"sm\"\n ></sky-icon>\n </button>\n </span>\n <span\n *skyThemeIf=\"'default'\"\n class=\"sky-input-group-btn sky-input-box-btn-inset\"\n >\n <button\n class=\"sky-btn sky-btn-default sky-search-btn sky-search-btn-apply\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_search_label' | skyLibResources\"\n [disabled]=\"disabled\"\n (click)=\"applySearchText(searchText)\"\n >\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplate\"\n ></ng-container>\n </button>\n </span>\n <div\n *skyThemeIf=\"'modern'\"\n aria-hidden=\"true\"\n class=\"sky-input-group-icon sky-input-box-icon-inset-left\"\n >\n <ng-container *ngTemplateOutlet=\"searchIconTemplate\"></ng-container>\n </div>\n </sky-input-box>\n </div>\n </div>\n <div class=\"sky-search-item-dismiss\">\n <button\n *ngIf=\"mobileSearchShown\"\n class=\"sky-btn sky-btn-secondary sky-search-btn-dismiss\"\n type=\"button\"\n [attr.title]=\"'skyux_search_dismiss' | skyLibResources\"\n (click)=\"toggleSearchInput(false)\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-circle-left\" size=\"lg\">\n </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"double-chevron-left\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </div>\n</div>\n\n<ng-template #searchIconTemplate>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\" size=\"lg\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"search\"\n iconType=\"skyux\"\n size=\"lg\"\n ></sky-icon>\n</ng-template>\n", styles: ["sky-search .sky-search-container .sky-form-group{margin-bottom:0}sky-search .sky-search-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:0 none}sky-search .sky-search-input:focus{border:0 none;box-shadow:none;outline:none}sky-search .sky-search-input::-ms-clear{display:none}sky-search .sky-search-btn{border-left:0 none}sky-search .sky-search-btn:hover,sky-search .sky-search-btn:focus{background-color:#fff}sky-search .sky-search-btn-apply{padding-left:6px;border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-right:1px solid #cdcfd2}sky-search .sky-search-btn-clear{border-right:0 none;padding-right:6px;border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2}sky-search .sky-search-input-focused .sky-search-btn{border-color:transparent;border-top:0 none;border-bottom:0 none}sky-search .sky-search-input-focused .sky-search-btn-apply{border-right:0 none}sky-search .sky-search-input-container .sky-input-group-btn>button:focus{z-index:3}sky-search .sky-search-input-container{min-width:auto}sky-search .sky-responsive-container-xs .sky-search-input-container,sky-search .sky-responsive-container-sm .sky-search-input-container,sky-search .sky-responsive-container-md .sky-search-input-container,sky-search .sky-responsive-container-lg .sky-search-input-container{min-width:auto}@media (min-width: 768px){sky-search .sky-search-input-container{min-width:300px}}sky-search .sky-responsive-container-sm .sky-search-input-container,sky-search .sky-responsive-container-md .sky-search-input-container,sky-search .sky-responsive-container-lg .sky-search-input-container{min-width:300px}@media (max-width: 767px){sky-search .sky-search-input,sky-search .sky-search-btn-apply,sky-search .sky-search-btn-clear{font-size:15px}}sky-search .sky-search-btn-open-applied.sky-search-btn-open,sky-search .sky-search-btn-open-applied.sky-search-btn-open:hover{color:#72bf44;border:2px solid #72bf44;padding:5px 11px}sky-search .sky-search-dismiss-container{display:flex}sky-search .sky-search-item-dismiss{flex-shrink:0;display:flex}sky-search .sky-search-item-dismiss>.sky-btn{border-color:transparent}sky-search .sky-search-item-input{flex-grow:1;display:flex}sky-search .sky-search-dismiss-absolute{align-items:center;position:absolute;background-color:#fff;top:0;left:0;bottom:0;right:0;padding:5px}.sky-theme-modern sky-search .sky-input-box .sky-input-group-btn .sky-btn.sky-search-btn{width:40px}.sky-theme-modern sky-search .sky-input-box .sky-input-group-btn .sky-btn.sky-search-btn .sky-icon.sky-i-close{color:#1c1d1f;font-size:inherit}.sky-theme-modern sky-search .sky-search-btn-open-applied.sky-search-btn-open,.sky-theme-modern sky-search .sky-search-btn-open-applied.sky-search-btn-open:hover{border:none;box-shadow:inset 0 0 0 2px #72bf44;padding:8px 14px}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container.sky-search-input-container-has-value .sky-input-box-group-form-control:not(.sky-input-box-group-form-control-focus,:hover) .sky-form-group{border:none;border-radius:unset;box-shadow:inset 0 -1px #1870b8}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-icon-inset-left-wrapper .sky-input-box-icon-inset-left{padding:0 10px}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-group-icon .sky-icon{font-size:17.3333px;color:#1c1d1f}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group{box-shadow:none}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group .sky-input-box-form-group-inner input{flex-basis:auto;width:auto;padding:10px 10px 10px 0;margin:0}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group .sky-input-box-form-group-inner input::placeholder{font-style:normal;color:inherit;font-weight:400}.sky-theme-modern sky-search .sky-search-container .sky-search-input-container .sky-input-box-group .sky-form-group .sky-input-box-form-group-inner input:focus::placeholder{color:transparent}.sky-theme-modern.sky-theme-mode-dark .sky-search-dismiss-absolute{background-color:#121212}.sky-theme-modern.sky-theme-mode-dark .sky-search-btn-open-applied.sky-search-btn-open,.sky-theme-modern.sky-theme-mode-dark .sky-search-btn-open-applied.sky-search-btn-open:hover{color:#72bf44}.sky-theme-modern.sky-theme-mode-dark sky-search .sky-input-box .sky-input-group-btn .sky-btn.sky-search-btn .sky-icon.sky-i-close{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark sky-search .sky-input-group-icon .sky-icon{font-size:17.333px;color:#fbfcfe}\n"], components: [{ type: i6.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "skyLibResources": i4$1.SkyLibResourcesPipe }, animations: [
1855
1883
  trigger('inputState', [
1856
1884
  state(INPUT_HIDDEN_STATE, style({
1857
1885
  opacity: 0,
@@ -1954,6 +1982,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1954
1982
  class SkyLookupShowMoreNativePickerAsyncContext {
1955
1983
  }
1956
1984
 
1985
+ var _SkyLookupShowMoreAsyncModalComponent_instances, _SkyLookupShowMoreAsyncModalComponent_changeDetector, _SkyLookupShowMoreAsyncModalComponent_continuationData, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe, _SkyLookupShowMoreAsyncModalComponent_offset, _SkyLookupShowMoreAsyncModalComponent_loadSearchResults, _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap, _SkyLookupShowMoreAsyncModalComponent_performSearch, _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch;
1957
1986
  /**
1958
1987
  * @internal
1959
1988
  * Internal component to implement the native picker.
@@ -1962,29 +1991,37 @@ class SkyLookupShowMoreAsyncModalComponent {
1962
1991
  constructor(modalInstance, context, changeDetector) {
1963
1992
  this.modalInstance = modalInstance;
1964
1993
  this.context = context;
1965
- this.changeDetector = changeDetector;
1994
+ _SkyLookupShowMoreAsyncModalComponent_instances.add(this);
1966
1995
  /**
1967
1996
  * @internal
1968
1997
  * Fires when users select the button to add new options to the list.
1969
1998
  */
1970
1999
  this.addClick = new Subject();
1971
2000
  this.displayedItems = [];
1972
- this.onlyShowSelected = false;
1973
- this.isSearching = false;
1974
2001
  this.hasMoreItems = false;
1975
2002
  this.isLoadingMore = false;
1976
- this.offset = 0;
1977
- this.ngUnsubscribe = new Subject();
2003
+ this.isSearching = false;
2004
+ this.items = [];
2005
+ this.onlyShowSelected = false;
2006
+ this.repeaterItemTemplate = null;
2007
+ this.selectedIdMap = new Map();
2008
+ _SkyLookupShowMoreAsyncModalComponent_changeDetector.set(this, void 0);
2009
+ _SkyLookupShowMoreAsyncModalComponent_continuationData.set(this, void 0);
2010
+ _SkyLookupShowMoreAsyncModalComponent_currentSearchSub.set(this, void 0);
2011
+ _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe.set(this, new Subject());
2012
+ _SkyLookupShowMoreAsyncModalComponent_offset.set(this, 0);
2013
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_changeDetector, changeDetector, "f");
1978
2014
  }
1979
2015
  ngOnInit() {
2016
+ this.repeaterItemTemplate = this.context.userConfig.itemTemplate || null;
1980
2017
  this.searchText = this.context.initialSearch;
1981
- this.createInitialSelectedItemsMap();
1982
- this.loadSearchResults();
2018
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap).call(this);
2019
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_loadSearchResults).call(this);
1983
2020
  }
1984
2021
  ngOnDestroy() {
1985
- this.cancelCurrentSearch();
1986
- this.ngUnsubscribe.next();
1987
- this.ngUnsubscribe.complete();
2022
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch).call(this);
2023
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe, "f").next();
2024
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe, "f").complete();
1988
2025
  }
1989
2026
  addButtonClicked() {
1990
2027
  this.addClick.next();
@@ -1997,7 +2034,7 @@ class SkyLookupShowMoreAsyncModalComponent {
1997
2034
  this.selectedIdMap.delete(item[this.context.idProperty]);
1998
2035
  }
1999
2036
  this.updateDisplayedItems();
2000
- this.changeDetector.markForCheck();
2037
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_changeDetector, "f").markForCheck();
2001
2038
  }
2002
2039
  itemClick(selectedItem) {
2003
2040
  if (this.context.selectMode === 'single') {
@@ -2026,9 +2063,9 @@ class SkyLookupShowMoreAsyncModalComponent {
2026
2063
  this.updateDisplayedItems();
2027
2064
  }
2028
2065
  searchApplied(searchText) {
2029
- this.offset = 0;
2066
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_offset, 0, "f");
2030
2067
  this.searchText = searchText;
2031
- this.loadSearchResults();
2068
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_loadSearchResults).call(this);
2032
2069
  }
2033
2070
  selectAll() {
2034
2071
  this.selectedIdMap = new Map();
@@ -2038,12 +2075,12 @@ class SkyLookupShowMoreAsyncModalComponent {
2038
2075
  this.updateDisplayedItems();
2039
2076
  }
2040
2077
  infiniteScrollEnd() {
2041
- this.cancelCurrentSearch();
2078
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch).call(this);
2042
2079
  /* Sanity check - else case would only happen if this was called directly */
2043
2080
  /* istanbul ignore else */
2044
2081
  if (this.hasMoreItems) {
2045
2082
  this.isLoadingMore = true;
2046
- this.performSearch((result) => {
2083
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_performSearch).call(this, (result) => {
2047
2084
  this.items = this.items.concat(result.items);
2048
2085
  this.updateDisplayedItems();
2049
2086
  this.isLoadingMore = false;
@@ -2061,38 +2098,6 @@ class SkyLookupShowMoreAsyncModalComponent {
2061
2098
  });
2062
2099
  this.modalInstance.save(selectedItems);
2063
2100
  }
2064
- loadSearchResults() {
2065
- this.cancelCurrentSearch();
2066
- this.isSearching = true;
2067
- this.performSearch((result) => {
2068
- this.isSearching = false;
2069
- this.items = result.items;
2070
- });
2071
- }
2072
- createInitialSelectedItemsMap() {
2073
- this.selectedIdMap = new Map(this.context.initialValue.map((item) => [
2074
- item[this.context.idProperty],
2075
- item,
2076
- ]));
2077
- }
2078
- performSearch(processResults) {
2079
- this.currentSearchSub = this.context
2080
- .searchAsync({
2081
- displayType: 'modal',
2082
- offset: this.offset,
2083
- searchText: this.searchText || '',
2084
- continuationData: this.continuationData,
2085
- })
2086
- .pipe(take(1))
2087
- .subscribe((result) => {
2088
- processResults(result);
2089
- this.continuationData = result.continuationData;
2090
- this.hasMoreItems = result.hasMore;
2091
- this.offset = this.items.length;
2092
- this.updateDisplayedItems();
2093
- this.changeDetector.markForCheck();
2094
- });
2095
- }
2096
2101
  updateDisplayedItems() {
2097
2102
  if (this.onlyShowSelected) {
2098
2103
  this.displayedItems = this.items.filter((item) => this.selectedIdMap.has(item[this.context.idProperty]));
@@ -2101,20 +2106,49 @@ class SkyLookupShowMoreAsyncModalComponent {
2101
2106
  this.displayedItems = this.items;
2102
2107
  }
2103
2108
  }
2104
- cancelCurrentSearch() {
2105
- if (this.currentSearchSub) {
2106
- this.currentSearchSub.unsubscribe();
2107
- this.currentSearchSub = undefined;
2108
- this.isLoadingMore = false;
2109
- this.isSearching = false;
2110
- }
2111
- }
2112
2109
  }
2110
+ _SkyLookupShowMoreAsyncModalComponent_changeDetector = new WeakMap(), _SkyLookupShowMoreAsyncModalComponent_continuationData = new WeakMap(), _SkyLookupShowMoreAsyncModalComponent_currentSearchSub = new WeakMap(), _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe = new WeakMap(), _SkyLookupShowMoreAsyncModalComponent_offset = new WeakMap(), _SkyLookupShowMoreAsyncModalComponent_instances = new WeakSet(), _SkyLookupShowMoreAsyncModalComponent_loadSearchResults = function _SkyLookupShowMoreAsyncModalComponent_loadSearchResults() {
2111
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch).call(this);
2112
+ this.isSearching = true;
2113
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_performSearch).call(this, (result) => {
2114
+ this.isSearching = false;
2115
+ this.items = result.items;
2116
+ });
2117
+ }, _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap = function _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap() {
2118
+ this.selectedIdMap = new Map(this.context.initialValue.map((item) => [
2119
+ item[this.context.idProperty],
2120
+ item,
2121
+ ]));
2122
+ }, _SkyLookupShowMoreAsyncModalComponent_performSearch = function _SkyLookupShowMoreAsyncModalComponent_performSearch(processResults) {
2123
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, this.context
2124
+ .searchAsync({
2125
+ displayType: 'modal',
2126
+ offset: __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_offset, "f"),
2127
+ searchText: this.searchText || '',
2128
+ continuationData: __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_continuationData, "f"),
2129
+ })
2130
+ .pipe(take(1))
2131
+ .subscribe((result) => {
2132
+ processResults(result);
2133
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_continuationData, result.continuationData, "f");
2134
+ this.hasMoreItems = result.hasMore || false;
2135
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_offset, this.items.length, "f");
2136
+ this.updateDisplayedItems();
2137
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_changeDetector, "f").markForCheck();
2138
+ }), "f");
2139
+ }, _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch = function _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch() {
2140
+ if (__classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, "f")) {
2141
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, "f").unsubscribe();
2142
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, undefined, "f");
2143
+ this.isLoadingMore = false;
2144
+ this.isSearching = false;
2145
+ }
2146
+ };
2113
2147
  SkyLookupShowMoreAsyncModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupShowMoreAsyncModalComponent, deps: [{ token: i1$1.SkyModalInstance }, { token: SkyLookupShowMoreNativePickerAsyncContext }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2114
- SkyLookupShowMoreAsyncModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupShowMoreAsyncModalComponent, selector: "sky-lookup-show-more-async-modal", ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <sky-wait [isWaiting]=\"isSearching\"></sky-wait>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDisplayedItems()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"!isSearching && displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [isSelected]=\"\n item[context.idProperty] | skyLookupItemSelected: selectedIdMap\n \"\n [selectable]=\"context.selectMode === 'multiple'\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n context.userConfig?.itemTemplate\n ? context.userConfig?.itemTemplate\n : defaultItemTemplate;\n context: { item: item }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll\n [enabled]=\"hasMoreItems\"\n [loading]=\"isLoadingMore\"\n (scrollEnd)=\"infiniteScrollEnd()\"\n >\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n [disabled]=\"isSearching\"\n (click)=\"save()\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"], components: [{ type: i1$1.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i1$1.λ4, selector: "sky-modal-header" }, { type: i1$1.λ2, selector: "sky-modal-content" }, { type: i4.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }, { type: i4$1.λ37, selector: "sky-toolbar" }, { type: i4$1.λ38, selector: "sky-toolbar-section" }, { type: i4$1.λ39, selector: "sky-toolbar-item" }, { type: SkySearchComponent, selector: "sky-search", inputs: ["searchText", "expandMode", "debounceTime", "disabled", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { type: i4$1.λ40, selector: "sky-toolbar-view-actions" }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i6.λ4, selector: "sky-checkbox-label" }, { type: i7$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { type: i7$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { type: i7$1.λ8, selector: "sky-repeater-item-content" }, { type: i7$1.λ6, selector: "sky-infinite-scroll", inputs: ["enabled", "loading"], outputs: ["scrollEnd"] }, { type: i1$1.λ3, selector: "sky-modal-footer" }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe, "skyLookupItemSelected": SkyLookupItemSelectedPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2148
+ SkyLookupShowMoreAsyncModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupShowMoreAsyncModalComponent, selector: "sky-lookup-show-more-async-modal", ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <sky-wait [isWaiting]=\"isSearching\"></sky-wait>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDisplayedItems()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"!isSearching && displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [isSelected]=\"\n item[context.idProperty] | skyLookupItemSelected: selectedIdMap\n \"\n [selectable]=\"context.selectMode === 'multiple'\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n repeaterItemTemplate ?? defaultItemTemplate;\n context: { item: item }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll\n [enabled]=\"hasMoreItems\"\n [loading]=\"isLoadingMore\"\n (scrollEnd)=\"infiniteScrollEnd()\"\n >\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n [disabled]=\"isSearching\"\n (click)=\"save()\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"], components: [{ type: i1$1.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i1$1.λ4, selector: "sky-modal-header" }, { type: i1$1.λ2, selector: "sky-modal-content" }, { type: i4.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }, { type: i4$2.λ37, selector: "sky-toolbar" }, { type: i4$2.λ38, selector: "sky-toolbar-section" }, { type: i4$2.λ39, selector: "sky-toolbar-item" }, { type: SkySearchComponent, selector: "sky-search", inputs: ["searchText", "expandMode", "debounceTime", "disabled", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { type: i4$2.λ40, selector: "sky-toolbar-view-actions" }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i6.λ4, selector: "sky-checkbox-label" }, { type: i7$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { type: i7$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { type: i7$1.λ8, selector: "sky-repeater-item-content" }, { type: i7$1.λ6, selector: "sky-infinite-scroll", inputs: ["enabled", "loading"], outputs: ["scrollEnd"] }, { type: i1$1.λ3, selector: "sky-modal-footer" }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i4$1.SkyLibResourcesPipe, "skyLookupItemSelected": SkyLookupItemSelectedPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2115
2149
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupShowMoreAsyncModalComponent, decorators: [{
2116
2150
  type: Component,
2117
- args: [{ selector: 'sky-lookup-show-more-async-modal', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <sky-wait [isWaiting]=\"isSearching\"></sky-wait>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDisplayedItems()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"!isSearching && displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [isSelected]=\"\n item[context.idProperty] | skyLookupItemSelected: selectedIdMap\n \"\n [selectable]=\"context.selectMode === 'multiple'\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n context.userConfig?.itemTemplate\n ? context.userConfig?.itemTemplate\n : defaultItemTemplate;\n context: { item: item }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll\n [enabled]=\"hasMoreItems\"\n [loading]=\"isLoadingMore\"\n (scrollEnd)=\"infiniteScrollEnd()\"\n >\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n [disabled]=\"isSearching\"\n (click)=\"save()\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"] }]
2151
+ args: [{ selector: 'sky-lookup-show-more-async-modal', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <sky-wait [isWaiting]=\"isSearching\"></sky-wait>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDisplayedItems()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"!isSearching && displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [isSelected]=\"\n item[context.idProperty] | skyLookupItemSelected: selectedIdMap\n \"\n [selectable]=\"context.selectMode === 'multiple'\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n repeaterItemTemplate ?? defaultItemTemplate;\n context: { item: item }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll\n [enabled]=\"hasMoreItems\"\n [loading]=\"isLoadingMore\"\n (scrollEnd)=\"infiniteScrollEnd()\"\n >\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n [disabled]=\"isSearching\"\n (click)=\"save()\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"] }]
2118
2152
  }], ctorParameters: function () { return [{ type: i1$1.SkyModalInstance }, { type: SkyLookupShowMoreNativePickerAsyncContext }, { type: i0.ChangeDetectorRef }]; } });
2119
2153
 
2120
2154
  /**
@@ -2124,6 +2158,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
2124
2158
  class SkyLookupShowMoreNativePickerContext {
2125
2159
  }
2126
2160
 
2161
+ var _SkyLookupShowMoreModalComponent_changeDetector, _SkyLookupShowMoreModalComponent_itemIndex, _SkyLookupShowMoreModalComponent_ngUnsubscribe;
2127
2162
  /**
2128
2163
  * @internal
2129
2164
  * Internal component to implement the native picker.
@@ -2132,12 +2167,12 @@ class SkyLookupShowMoreModalComponent {
2132
2167
  constructor(modalInstance, context, changeDetector) {
2133
2168
  this.modalInstance = modalInstance;
2134
2169
  this.context = context;
2135
- this.changeDetector = changeDetector;
2136
2170
  /**
2137
2171
  * @internal
2138
2172
  * Fires when users select the button to add new options to the list.
2139
2173
  */
2140
2174
  this.addClick = new Subject();
2175
+ this.items = [];
2141
2176
  this.dataManagerConfig = {
2142
2177
  sortOptions: [
2143
2178
  {
@@ -2157,17 +2192,22 @@ class SkyLookupShowMoreModalComponent {
2157
2192
  this.displayedItems = [];
2158
2193
  this.itemsHaveMore = false;
2159
2194
  this.onlyShowSelected = false;
2195
+ this.repeaterItemTemplate = null;
2196
+ this.searchText = '';
2160
2197
  this.selectedItems = [];
2161
- this.itemIndex = 0;
2162
- this.ngUnsubscribe = new Subject();
2198
+ _SkyLookupShowMoreModalComponent_changeDetector.set(this, void 0);
2199
+ _SkyLookupShowMoreModalComponent_itemIndex.set(this, 0);
2200
+ _SkyLookupShowMoreModalComponent_ngUnsubscribe.set(this, new Subject());
2201
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_changeDetector, changeDetector, "f");
2163
2202
  }
2164
2203
  ngAfterViewInit() {
2204
+ this.repeaterItemTemplate = this.context.userConfig.itemTemplate || null;
2165
2205
  this.searchText = this.context.initialSearch;
2166
2206
  this.addItems();
2167
2207
  }
2168
2208
  ngOnDestroy() {
2169
- this.ngUnsubscribe.next();
2170
- this.ngUnsubscribe.complete();
2209
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_ngUnsubscribe, "f").next();
2210
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_ngUnsubscribe, "f").complete();
2171
2211
  }
2172
2212
  addButtonClicked() {
2173
2213
  this.addClick.next();
@@ -2175,14 +2215,12 @@ class SkyLookupShowMoreModalComponent {
2175
2215
  addItems() {
2176
2216
  if (!this.items || this.items.length === 0) {
2177
2217
  const selectedItems = this.selectedItems.slice();
2178
- this.items = this.context.items
2179
- ? this.context.items.map((item) => {
2180
- return {
2181
- value: item,
2182
- selected: false,
2183
- };
2184
- })
2185
- : [];
2218
+ this.items = this.context.items.map((item) => {
2219
+ return {
2220
+ value: item,
2221
+ selected: false,
2222
+ };
2223
+ });
2186
2224
  this.items.forEach((item) => {
2187
2225
  const isInitialValue = this.context.initialValue === item.value;
2188
2226
  const initialIsArray = Array.isArray(this.context.initialValue);
@@ -2197,18 +2235,18 @@ class SkyLookupShowMoreModalComponent {
2197
2235
  });
2198
2236
  this.selectedItems = selectedItems;
2199
2237
  this.updateDataState();
2200
- this.changeDetector.markForCheck();
2238
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2201
2239
  }
2202
- this.itemIndex = this.itemIndex + 10;
2240
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_itemIndex, __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f") + 10, "f");
2203
2241
  this.searchItems(this.items).then((searchedItems) => {
2204
- this.displayedItems = searchedItems.slice(0, this.itemIndex);
2205
- if (this.itemIndex > searchedItems.length) {
2242
+ this.displayedItems = searchedItems.slice(0, __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f"));
2243
+ if (__classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f") > searchedItems.length) {
2206
2244
  this.itemsHaveMore = false;
2207
2245
  }
2208
2246
  else {
2209
2247
  this.itemsHaveMore = true;
2210
2248
  }
2211
- this.changeDetector.markForCheck();
2249
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2212
2250
  });
2213
2251
  }
2214
2252
  clearAll() {
@@ -2219,7 +2257,7 @@ class SkyLookupShowMoreModalComponent {
2219
2257
  });
2220
2258
  this.selectedItems = [];
2221
2259
  this.updateDataState();
2222
- this.changeDetector.markForCheck();
2260
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2223
2261
  }
2224
2262
  itemClick(selectedItem) {
2225
2263
  if (this.context.selectMode === 'single') {
@@ -2227,12 +2265,13 @@ class SkyLookupShowMoreModalComponent {
2227
2265
  }
2228
2266
  }
2229
2267
  onItemSelect(newSelectState, itemToSelect) {
2268
+ const items = this.items;
2230
2269
  if (this.context.selectMode === 'single') {
2231
2270
  /* Sanity check - single select mode should only alow for a `true` select state */
2232
2271
  /* istanbul ignore else */
2233
2272
  if (newSelectState) {
2234
2273
  itemToSelect.selected = true;
2235
- this.items.forEach((item) => {
2274
+ items.forEach((item) => {
2236
2275
  if (item.value !== itemToSelect.value) {
2237
2276
  item.selected = false;
2238
2277
  }
@@ -2242,20 +2281,20 @@ class SkyLookupShowMoreModalComponent {
2242
2281
  item.selected = false;
2243
2282
  }
2244
2283
  });
2245
- const itemIndex = this.items.findIndex((item) => item.value === itemToSelect.value);
2284
+ const itemIndex = items.findIndex((item) => item.value === itemToSelect.value);
2246
2285
  this.selectedItems = [
2247
- { index: itemIndex, itemData: this.items[itemIndex].value },
2286
+ { index: itemIndex, itemData: items[itemIndex].value },
2248
2287
  ];
2249
2288
  }
2250
2289
  }
2251
2290
  else {
2252
2291
  const selectedItems = this.selectedItems;
2253
- const allItemsIndex = this.items.findIndex((item) => item.value === itemToSelect.value);
2292
+ const allItemsIndex = items.findIndex((item) => item.value === itemToSelect.value);
2254
2293
  const selectedItemsIndex = selectedItems.findIndex((selectedItem) => selectedItem.index === allItemsIndex);
2255
2294
  if (newSelectState && selectedItemsIndex === -1) {
2256
2295
  selectedItems.push({
2257
2296
  index: allItemsIndex,
2258
- itemData: this.items[allItemsIndex].value,
2297
+ itemData: items[allItemsIndex].value,
2259
2298
  });
2260
2299
  }
2261
2300
  else if (!newSelectState && selectedItemsIndex !== -1) {
@@ -2264,12 +2303,12 @@ class SkyLookupShowMoreModalComponent {
2264
2303
  this.selectedItems = selectedItems;
2265
2304
  }
2266
2305
  this.updateDataState();
2267
- this.changeDetector.markForCheck();
2306
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2268
2307
  }
2269
2308
  searchApplied(searchText) {
2270
2309
  /* istanbul ignore else */
2271
2310
  if (this.searchText !== searchText) {
2272
- this.itemIndex = 10;
2311
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_itemIndex, 10, "f");
2273
2312
  }
2274
2313
  this.searchText = searchText;
2275
2314
  this.updateDataState();
@@ -2296,49 +2335,50 @@ class SkyLookupShowMoreModalComponent {
2296
2335
  }
2297
2336
  }
2298
2337
  selectAll() {
2338
+ const items = this.items;
2299
2339
  const selectedItems = this.selectedItems;
2300
2340
  this.displayedItems.forEach((item) => {
2301
2341
  if (!item.selected) {
2302
2342
  item.selected = true;
2303
- const index = this.items.indexOf(item);
2304
- /* Sanity check */
2343
+ const index = items.indexOf(item);
2305
2344
  /* istanbul ignore else */
2306
2345
  if (selectedItems.findIndex((selectedItem) => selectedItem.index === index) < 0) {
2307
2346
  selectedItems.push({
2308
2347
  index: index,
2309
- itemData: this.items[index].value,
2348
+ itemData: items[index].value,
2310
2349
  });
2311
2350
  }
2312
2351
  }
2313
2352
  });
2314
2353
  this.selectedItems = selectedItems;
2315
2354
  this.updateDataState();
2316
- this.changeDetector.markForCheck();
2355
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2317
2356
  }
2318
2357
  updateDataState() {
2358
+ const items = this.items;
2319
2359
  const selectedItems = this.selectedItems;
2320
- this.items.forEach((item, index) => {
2360
+ items.forEach((item, index) => {
2321
2361
  item.selected =
2322
2362
  selectedItems.findIndex((selectedItem) => selectedItem.index === index) !== -1;
2323
2363
  });
2324
- this.searchItems(this.items).then((searchedItems) => {
2364
+ this.searchItems(items).then((searchedItems) => {
2325
2365
  if (this.onlyShowSelected) {
2326
2366
  searchedItems = searchedItems.filter((item) => item.selected);
2327
2367
  }
2328
- this.displayedItems = searchedItems.slice(0, this.itemIndex);
2329
- if (this.itemIndex > searchedItems.length) {
2368
+ this.displayedItems = searchedItems.slice(0, __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f"));
2369
+ if (__classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f") > searchedItems.length) {
2330
2370
  this.itemsHaveMore = false;
2331
2371
  }
2332
2372
  else {
2333
2373
  this.itemsHaveMore = true;
2334
2374
  }
2335
- this.changeDetector.markForCheck();
2375
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2336
2376
  });
2337
2377
  }
2338
2378
  updateItemData(data) {
2339
2379
  this.context.items = data;
2340
- this.items = undefined;
2341
- this.itemIndex = 10;
2380
+ this.items = [];
2381
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_itemIndex, 10, "f");
2342
2382
  this.selectedItems.forEach((selectedItem) => {
2343
2383
  this.context.items.forEach((item, index) => {
2344
2384
  if (selectedItem.itemData === item) {
@@ -2347,14 +2387,15 @@ class SkyLookupShowMoreModalComponent {
2347
2387
  });
2348
2388
  });
2349
2389
  this.addItems();
2350
- this.changeDetector.markForCheck();
2390
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2351
2391
  }
2352
2392
  }
2393
+ _SkyLookupShowMoreModalComponent_changeDetector = new WeakMap(), _SkyLookupShowMoreModalComponent_itemIndex = new WeakMap(), _SkyLookupShowMoreModalComponent_ngUnsubscribe = new WeakMap();
2353
2394
  SkyLookupShowMoreModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupShowMoreModalComponent, deps: [{ token: i1$1.SkyModalInstance }, { token: SkyLookupShowMoreNativePickerContext }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2354
- SkyLookupShowMoreModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupShowMoreModalComponent, selector: "skyux-lookup-show-more-modal", ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDataState()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [selectable]=\"context.selectMode === 'multiple'\"\n [(isSelected)]=\"item.selected\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n context.userConfig?.itemTemplate\n ? context.userConfig?.itemTemplate\n : defaultItemTemplate;\n context: { item: item.value }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll [enabled]=\"itemsHaveMore\" (scrollEnd)=\"addItems()\">\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n (click)=\"modalInstance.save(selectedItems)\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"], components: [{ type: i1$1.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i1$1.λ4, selector: "sky-modal-header" }, { type: i1$1.λ2, selector: "sky-modal-content" }, { type: i4$1.λ37, selector: "sky-toolbar" }, { type: i4$1.λ38, selector: "sky-toolbar-section" }, { type: i4$1.λ39, selector: "sky-toolbar-item" }, { type: SkySearchComponent, selector: "sky-search", inputs: ["searchText", "expandMode", "debounceTime", "disabled", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { type: i4$1.λ40, selector: "sky-toolbar-view-actions" }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i6.λ4, selector: "sky-checkbox-label" }, { type: i7$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { type: i7$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { type: i7$1.λ8, selector: "sky-repeater-item-content" }, { type: i7$1.λ6, selector: "sky-infinite-scroll", inputs: ["enabled", "loading"], outputs: ["scrollEnd"] }, { type: i1$1.λ3, selector: "sky-modal-footer" }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2395
+ SkyLookupShowMoreModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupShowMoreModalComponent, selector: "skyux-lookup-show-more-modal", ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDataState()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [selectable]=\"context.selectMode === 'multiple'\"\n [(isSelected)]=\"item.selected\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n repeaterItemTemplate ?? defaultItemTemplate;\n context: { item: item.value }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll [enabled]=\"itemsHaveMore\" (scrollEnd)=\"addItems()\">\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n (click)=\"modalInstance.save(selectedItems)\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"], components: [{ type: i1$1.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i1$1.λ4, selector: "sky-modal-header" }, { type: i1$1.λ2, selector: "sky-modal-content" }, { type: i4$2.λ37, selector: "sky-toolbar" }, { type: i4$2.λ38, selector: "sky-toolbar-section" }, { type: i4$2.λ39, selector: "sky-toolbar-item" }, { type: SkySearchComponent, selector: "sky-search", inputs: ["searchText", "expandMode", "debounceTime", "disabled", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { type: i4$2.λ40, selector: "sky-toolbar-view-actions" }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i6.λ4, selector: "sky-checkbox-label" }, { type: i7$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { type: i7$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { type: i7$1.λ8, selector: "sky-repeater-item-content" }, { type: i7$1.λ6, selector: "sky-infinite-scroll", inputs: ["enabled", "loading"], outputs: ["scrollEnd"] }, { type: i1$1.λ3, selector: "sky-modal-footer" }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i6$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i4$1.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2355
2396
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupShowMoreModalComponent, decorators: [{
2356
2397
  type: Component,
2357
- args: [{ selector: 'skyux-lookup-show-more-modal', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDataState()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [selectable]=\"context.selectMode === 'multiple'\"\n [(isSelected)]=\"item.selected\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n context.userConfig?.itemTemplate\n ? context.userConfig?.itemTemplate\n : defaultItemTemplate;\n context: { item: item.value }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll [enabled]=\"itemsHaveMore\" (scrollEnd)=\"addItems()\">\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n (click)=\"modalInstance.save(selectedItems)\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"] }]
2398
+ args: [{ selector: 'skyux-lookup-show-more-modal', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n <ng-container *ngIf=\"context.userConfig?.title; else defaultTitle\">\n {{ context.userConfig.title }}\n </ng-container>\n </sky-modal-header>\n <sky-modal-content>\n <div\n [skyViewkeeper]=\"[\n '.sky-lookup-show-more-modal-toolbar',\n '.sky-lookup-show-more-modal-muiltiselect-toolbar'\n ]\"\n >\n <sky-toolbar class=\"sky-lookup-show-more-modal-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n *ngIf=\"context.showAddButton\"\n type=\"button\"\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-add\"\n (click)=\"addButtonClicked()\"\n >\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"add\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"plus-circle\"></sky-icon>\n {{ 'skyux_lookup_show_more_add' | skyLibResources }}\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n <sky-toolbar\n *ngIf=\"context.selectMode === 'multiple'\"\n class=\"sky-lookup-show-more-modal-muiltiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{\n 'skyux_lookup_show_more_select_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{\n 'skyux_lookup_show_more_clear_all_button_title'\n | skyLibResources\n }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [(checked)]=\"onlyShowSelected\"\n (change)=\"updateDataState()\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_lookup_show_more_show_selected_option_title'\n | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n </div>\n <div\n *ngIf=\"displayedItems.length === 0\"\n class=\"sky-font-deemphasized sky-lookup-show-more-no-results\"\n >\n {{ 'skyux_lookup_show_more_no_results' | skyLibResources }}\n </div>\n <sky-repeater class=\"sky-lookup-show-more-repeater\" expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let item of displayedItems\"\n [selectable]=\"context.selectMode === 'multiple'\"\n [(isSelected)]=\"item.selected\"\n (click)=\"itemClick(item)\"\n (keyup.enter)=\"itemClick(item)\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n repeaterItemTemplate ?? defaultItemTemplate;\n context: { item: item.value }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n <sky-infinite-scroll [enabled]=\"itemsHaveMore\" (scrollEnd)=\"addItems()\">\n </sky-infinite-scroll>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-compact sky-lookup-show-more-modal-save\"\n type=\"button\"\n (click)=\"modalInstance.save(selectedItems)\"\n >\n {{ 'skyux_lookup_show_more_select' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-link sky-lookup-show-more-modal-close\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n {{ 'skyux_lookup_show_more_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n\n<ng-template let-item=\"item\" #defaultItemTemplate>\n {{ item[context.descriptorProperty] }}\n</ng-template>\n\n<ng-template #defaultTitle>\n <ng-container *ngIf=\"context.selectMode === 'single'\">\n {{ 'skyux_lookup_show_more_modal_title_single' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"context.selectMode === 'multiple'\">\n {{ 'skyux_lookup_show_more_modal_title_multiple' | skyLibResources }}\n </ng-container>\n</ng-template>\n", styles: [".sky-lookup-show-more-no-results{padding:20px 0}:host-context(.sky-theme-modern) .sky-lookup-show-more-no-results{padding:30px 0}.sky-theme-modern .sky-lookup-show-more-no-results{padding:30px 0}\n"] }]
2358
2399
  }], ctorParameters: function () { return [{ type: i1$1.SkyModalInstance }, { type: SkyLookupShowMoreNativePickerContext }, { type: i0.ChangeDetectorRef }]; } });
2359
2400
 
2360
2401
  /**
@@ -2376,6 +2417,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
2376
2417
  type: Injectable
2377
2418
  }] });
2378
2419
 
2420
+ var _SkyLookupAutocompleteAdapter__descriptorProperty, _SkyLookupAutocompleteAdapter__propertiesToSearch, _SkyLookupAutocompleteAdapter__search;
2379
2421
  /**
2380
2422
  * @internal
2381
2423
  */
@@ -2386,6 +2428,9 @@ class SkyLookupAutocompleteAdapter {
2386
2428
  * returned via an observable.
2387
2429
  */
2388
2430
  this.searchAsync = new EventEmitter();
2431
+ _SkyLookupAutocompleteAdapter__descriptorProperty.set(this, void 0);
2432
+ _SkyLookupAutocompleteAdapter__propertiesToSearch.set(this, void 0);
2433
+ _SkyLookupAutocompleteAdapter__search.set(this, void 0);
2389
2434
  }
2390
2435
  /**
2391
2436
  * Specifies an object property to display in the text input after users
@@ -2393,20 +2438,20 @@ class SkyLookupAutocompleteAdapter {
2393
2438
  * @default "name"
2394
2439
  */
2395
2440
  set descriptorProperty(value) {
2396
- this._descriptorProperty = value;
2441
+ __classPrivateFieldSet(this, _SkyLookupAutocompleteAdapter__descriptorProperty, value, "f");
2397
2442
  }
2398
2443
  get descriptorProperty() {
2399
- return this._descriptorProperty || 'name';
2444
+ return __classPrivateFieldGet(this, _SkyLookupAutocompleteAdapter__descriptorProperty, "f") || 'name';
2400
2445
  }
2401
2446
  /**
2402
2447
  * Specifies an array of object properties to search.
2403
2448
  * @default ["name"]
2404
2449
  */
2405
2450
  set propertiesToSearch(value) {
2406
- this._propertiesToSearch = value;
2451
+ __classPrivateFieldSet(this, _SkyLookupAutocompleteAdapter__propertiesToSearch, value, "f");
2407
2452
  }
2408
2453
  get propertiesToSearch() {
2409
- return this._propertiesToSearch || ['name'];
2454
+ return __classPrivateFieldGet(this, _SkyLookupAutocompleteAdapter__propertiesToSearch, "f") || ['name'];
2410
2455
  }
2411
2456
  /**
2412
2457
  * Specifies a function to dynamically manage the data source when users
@@ -2417,16 +2462,17 @@ class SkyLookupAutocompleteAdapter {
2417
2462
  * `search`.
2418
2463
  */
2419
2464
  set search(value) {
2420
- this._search = value;
2465
+ __classPrivateFieldSet(this, _SkyLookupAutocompleteAdapter__search, value, "f");
2421
2466
  }
2422
2467
  get search() {
2423
- return (this._search ||
2468
+ return (__classPrivateFieldGet(this, _SkyLookupAutocompleteAdapter__search, "f") ||
2424
2469
  skyAutocompleteDefaultSearchFunction({
2425
2470
  propertiesToSearch: this.propertiesToSearch,
2426
2471
  searchFilters: this.searchFilters,
2427
2472
  }));
2428
2473
  }
2429
2474
  }
2475
+ _SkyLookupAutocompleteAdapter__descriptorProperty = new WeakMap(), _SkyLookupAutocompleteAdapter__propertiesToSearch = new WeakMap(), _SkyLookupAutocompleteAdapter__search = new WeakMap();
2430
2476
  SkyLookupAutocompleteAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupAutocompleteAdapter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2431
2477
  SkyLookupAutocompleteAdapter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupAutocompleteAdapter, inputs: { debounceTime: "debounceTime", descriptorProperty: "descriptorProperty", propertiesToSearch: "propertiesToSearch", search: "search", searchResultTemplate: "searchResultTemplate", searchTextMinimumCharacters: "searchTextMinimumCharacters", searchFilters: "searchFilters", searchResultsLimit: "searchResultsLimit" }, outputs: { searchAsync: "searchAsync" }, ngImport: i0 });
2432
2478
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupAutocompleteAdapter, decorators: [{
@@ -2451,17 +2497,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
2451
2497
  type: Output
2452
2498
  }] } });
2453
2499
 
2500
+ var _SkyLookupComponent_instances, _SkyLookupComponent_adapter, _SkyLookupComponent_elementRef, _SkyLookupComponent_changeDetector, _SkyLookupComponent_idle, _SkyLookupComponent_markForTokenFocusOnKeyUp, _SkyLookupComponent_modalService, _SkyLookupComponent_ngUnsubscribe, _SkyLookupComponent_openNativePicker, _SkyLookupComponent_resourcesService, _SkyLookupComponent_windowRef, _SkyLookupComponent__autocompleteInputDirective, _SkyLookupComponent__data, _SkyLookupComponent__selectMode, _SkyLookupComponent__tokens, _SkyLookupComponent__value, _SkyLookupComponent_createNativePickerInstance, _SkyLookupComponent_addToSelected, _SkyLookupComponent_addEventListeners, _SkyLookupComponent_removeEventListeners, _SkyLookupComponent_focusInputOnHostClick, _SkyLookupComponent_focusInput, _SkyLookupComponent_onAddButtonComplete, _SkyLookupComponent_parseTokens, _SkyLookupComponent_sendAutocompleteMessage, _SkyLookupComponent_sendTokensMessage, _SkyLookupComponent_updateForSelectMode;
2454
2501
  class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2455
- constructor(changeDetector, elementRef, windowRef, ngControl, adapter, modalService, resourcesService, inputBoxHostSvc, themeSvc) {
2502
+ constructor(changeDetector, elementRef, windowRef, adapter, modalService, resourcesService, ngControl, inputBoxHostSvc, themeSvc) {
2456
2503
  super();
2457
- this.changeDetector = changeDetector;
2458
- this.elementRef = elementRef;
2459
- this.windowRef = windowRef;
2460
- this.adapter = adapter;
2461
- this.modalService = modalService;
2462
- this.resourcesService = resourcesService;
2463
2504
  this.inputBoxHostSvc = inputBoxHostSvc;
2464
2505
  this.themeSvc = themeSvc;
2506
+ _SkyLookupComponent_instances.add(this);
2465
2507
  /**
2466
2508
  * Indicates whether to disable the lookup field.
2467
2509
  */
@@ -2481,15 +2523,35 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2481
2523
  this.autocompleteController = new Subject();
2482
2524
  this.isInputFocused = false;
2483
2525
  this.tokensController = new Subject();
2484
- this.ngUnsubscribe = new Subject();
2485
- this.idle = new Subject();
2486
- this.markForTokenFocusOnKeyUp = false;
2526
+ _SkyLookupComponent_adapter.set(this, void 0);
2527
+ _SkyLookupComponent_elementRef.set(this, void 0);
2528
+ _SkyLookupComponent_changeDetector.set(this, void 0);
2529
+ _SkyLookupComponent_idle.set(this, new Subject());
2530
+ _SkyLookupComponent_markForTokenFocusOnKeyUp.set(this, false);
2531
+ _SkyLookupComponent_modalService.set(this, void 0);
2532
+ _SkyLookupComponent_ngUnsubscribe.set(this, new Subject());
2533
+ _SkyLookupComponent_openNativePicker.set(this, void 0);
2534
+ _SkyLookupComponent_resourcesService.set(this, void 0);
2535
+ _SkyLookupComponent_windowRef.set(this, void 0);
2536
+ _SkyLookupComponent__autocompleteInputDirective.set(this, void 0);
2537
+ _SkyLookupComponent__data.set(this, void 0);
2538
+ _SkyLookupComponent__selectMode.set(this, void 0);
2539
+ _SkyLookupComponent__tokens.set(this, void 0);
2540
+ _SkyLookupComponent__value.set(this, void 0);
2487
2541
  // Angular automatically constructs these methods.
2488
2542
  // eslint-disable-next-line @typescript-eslint/no-empty-function
2489
2543
  this.onChange = (value) => { };
2490
2544
  // eslint-disable-next-line @typescript-eslint/no-empty-function
2491
2545
  this.onTouched = () => { };
2492
- ngControl.valueAccessor = this;
2546
+ __classPrivateFieldSet(this, _SkyLookupComponent_changeDetector, changeDetector, "f");
2547
+ __classPrivateFieldSet(this, _SkyLookupComponent_elementRef, elementRef, "f");
2548
+ __classPrivateFieldSet(this, _SkyLookupComponent_windowRef, windowRef, "f");
2549
+ __classPrivateFieldSet(this, _SkyLookupComponent_adapter, adapter, "f");
2550
+ __classPrivateFieldSet(this, _SkyLookupComponent_modalService, modalService, "f");
2551
+ __classPrivateFieldSet(this, _SkyLookupComponent_resourcesService, resourcesService, "f");
2552
+ if (ngControl) {
2553
+ ngControl.valueAccessor = this;
2554
+ }
2493
2555
  }
2494
2556
  /**
2495
2557
  * Specifies a data source for the lookup component to search when users
@@ -2498,13 +2560,13 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2498
2560
  * @default []
2499
2561
  */
2500
2562
  set data(value) {
2501
- this._data = value;
2502
- if (this.openNativePicker && this.searchAsync.observers.length === 0) {
2503
- this.openNativePicker.componentInstance.updateItemData(value);
2563
+ __classPrivateFieldSet(this, _SkyLookupComponent__data, value, "f");
2564
+ if (__classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f") && this.searchAsync.observers.length === 0) {
2565
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f").componentInstance.updateItemData(value);
2504
2566
  }
2505
2567
  }
2506
2568
  get data() {
2507
- return this._data;
2569
+ return __classPrivateFieldGet(this, _SkyLookupComponent__data, "f") || [];
2508
2570
  }
2509
2571
  /**
2510
2572
  * Specifies whether users can select one option or multiple options.
@@ -2512,61 +2574,61 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2512
2574
  */
2513
2575
  set selectMode(value) {
2514
2576
  const multipleToSingle = value === 'single' && this.selectMode === 'multiple';
2515
- this._selectMode = value;
2516
- this.updateForSelectMode();
2577
+ __classPrivateFieldSet(this, _SkyLookupComponent__selectMode, value, "f");
2578
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_updateForSelectMode).call(this);
2517
2579
  if (multipleToSingle) {
2518
2580
  if (this.value && this.value.length > 1) {
2519
2581
  // The `setTimeout` is needed to avoid a `ExpressionChangedAfterItHasBeenCheckedError` error in template forms.
2520
2582
  setTimeout(() => {
2521
2583
  this.writeValue([this.value[0]]);
2522
- this.changeDetector.detectChanges();
2584
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").detectChanges();
2523
2585
  });
2524
2586
  }
2525
2587
  }
2526
2588
  }
2527
2589
  get selectMode() {
2528
- return this._selectMode || 'multiple';
2590
+ return __classPrivateFieldGet(this, _SkyLookupComponent__selectMode, "f") || 'multiple';
2529
2591
  }
2530
2592
  get tokens() {
2531
- return this._tokens;
2593
+ return __classPrivateFieldGet(this, _SkyLookupComponent__tokens, "f");
2532
2594
  }
2533
2595
  set tokens(value) {
2534
2596
  // Collapse the tokens into a single token if the user has selected many options.
2535
2597
  if (this.enableShowMore && this.value.length > 5) {
2536
- this.resourcesService
2598
+ __classPrivateFieldGet(this, _SkyLookupComponent_resourcesService, "f")
2537
2599
  .getString('skyux_lookup_tokens_summary', this.value.length.toString())
2538
2600
  .pipe(take(1))
2539
2601
  .subscribe((label) => {
2540
- this._tokens = [
2602
+ __classPrivateFieldSet(this, _SkyLookupComponent__tokens, [
2541
2603
  {
2542
2604
  value: { [this.descriptorProperty]: label },
2543
2605
  },
2544
- ];
2545
- this.changeDetector.markForCheck();
2606
+ ], "f");
2607
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2546
2608
  });
2547
2609
  }
2548
2610
  else {
2549
- this._tokens = value;
2550
- this.changeDetector.markForCheck();
2611
+ __classPrivateFieldSet(this, _SkyLookupComponent__tokens, value, "f");
2612
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2551
2613
  }
2552
2614
  }
2553
2615
  get value() {
2554
- return this._value ? this._value : [];
2616
+ return __classPrivateFieldGet(this, _SkyLookupComponent__value, "f") ? __classPrivateFieldGet(this, _SkyLookupComponent__value, "f") : [];
2555
2617
  }
2556
2618
  set value(newValue) {
2557
- this._value = newValue;
2558
- if (!this.openNativePicker) {
2559
- this.tokens = this.parseTokens(newValue);
2619
+ __classPrivateFieldSet(this, _SkyLookupComponent__value, newValue, "f");
2620
+ if (!__classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f")) {
2621
+ this.tokens = __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_parseTokens).call(this, newValue);
2560
2622
  }
2561
- this.onChange(this._value);
2623
+ this.onChange(__classPrivateFieldGet(this, _SkyLookupComponent__value, "f"));
2562
2624
  this.onTouched();
2563
2625
  }
2564
2626
  set autocompleteInputDirective(value) {
2565
- this._autocompleteInputDirective = value;
2566
- this.updateForSelectMode();
2627
+ __classPrivateFieldSet(this, _SkyLookupComponent__autocompleteInputDirective, value, "f");
2628
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_updateForSelectMode).call(this);
2567
2629
  }
2568
2630
  get autocompleteInputDirective() {
2569
- return this._autocompleteInputDirective;
2631
+ return __classPrivateFieldGet(this, _SkyLookupComponent__autocompleteInputDirective, "f");
2570
2632
  }
2571
2633
  ngOnInit() {
2572
2634
  if (this.inputBoxHostSvc) {
@@ -2585,32 +2647,32 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2585
2647
  // This is required for the autocomplete directive to be set after elements
2586
2648
  // are rearranged when switching themes.
2587
2649
  this.themeSvc.settingsChange
2588
- .pipe(takeUntil(this.ngUnsubscribe))
2650
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_ngUnsubscribe, "f")))
2589
2651
  .subscribe(() => {
2590
- this.changeDetector.markForCheck();
2652
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2591
2653
  });
2592
2654
  }
2593
2655
  }
2594
2656
  ngAfterViewInit() {
2595
2657
  if (!this.disabled) {
2596
- this.addEventListeners();
2658
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_addEventListeners).call(this);
2597
2659
  }
2598
2660
  }
2599
2661
  ngOnDestroy() {
2600
- this.removeEventListeners();
2601
- this.ngUnsubscribe.next();
2602
- this.ngUnsubscribe.complete();
2662
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_removeEventListeners).call(this);
2663
+ __classPrivateFieldGet(this, _SkyLookupComponent_ngUnsubscribe, "f").next();
2664
+ __classPrivateFieldGet(this, _SkyLookupComponent_ngUnsubscribe, "f").complete();
2603
2665
  this.tokensController.complete();
2604
2666
  }
2605
2667
  addButtonClicked() {
2606
2668
  this.addClick.emit({
2607
- itemAdded: (args) => this.onAddButtonComplete(args),
2669
+ itemAdded: (args) => __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_onAddButtonComplete).call(this, args),
2608
2670
  });
2609
2671
  }
2610
2672
  onAutocompleteSelectionChange(change) {
2611
2673
  /* istanbul ignore else */
2612
2674
  if (change.selectedItem) {
2613
- this.addToSelected(change.selectedItem);
2675
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_addToSelected).call(this, change.selectedItem);
2614
2676
  }
2615
2677
  else if (this.selectMode === 'single') {
2616
2678
  this.writeValue([]);
@@ -2625,22 +2687,22 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2625
2687
  }
2626
2688
  if (this.tokens !== change) {
2627
2689
  if (change.length === 0) {
2628
- this.focusInput();
2690
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2629
2691
  }
2630
2692
  // NOTE: We do this here instead of just using the `value` setter because we need to use the
2631
2693
  // set of tokens returned here for the purposes of setting focus (see `onTokensKeyUp`).
2632
- this._value = change.map((token) => {
2694
+ __classPrivateFieldSet(this, _SkyLookupComponent__value, change.map((token) => {
2633
2695
  return token.value;
2634
- });
2696
+ }), "f");
2635
2697
  this.tokens = change;
2636
- this.sendAutocompleteMessage(SkyAutocompleteMessageType.RepositionDropdown);
2637
- this.onChange(this._value);
2698
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendAutocompleteMessage).call(this, SkyAutocompleteMessageType.RepositionDropdown);
2699
+ this.onChange(__classPrivateFieldGet(this, _SkyLookupComponent__value, "f"));
2638
2700
  this.onTouched();
2639
2701
  }
2640
2702
  }
2641
2703
  onTokensFocusIndexOverRange() {
2642
- this.windowRef.nativeWindow.setTimeout(() => {
2643
- this.focusInput();
2704
+ __classPrivateFieldGet(this, _SkyLookupComponent_windowRef, "f").nativeWindow.setTimeout(() => {
2705
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2644
2706
  });
2645
2707
  }
2646
2708
  onTokensKeyUp(event) {
@@ -2648,15 +2710,15 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2648
2710
  if (this.selectMode !== 'single') {
2649
2711
  switch (event.key) {
2650
2712
  case 'Backspace':
2651
- this.sendTokensMessage(SkyTokensMessageType.RemoveActiveToken);
2652
- this.sendTokensMessage(SkyTokensMessageType.FocusPreviousToken);
2713
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.RemoveActiveToken);
2714
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.FocusPreviousToken);
2653
2715
  event.preventDefault();
2654
2716
  break;
2655
2717
  case 'Del':
2656
2718
  case 'Delete':
2657
- this.sendTokensMessage(SkyTokensMessageType.RemoveActiveToken);
2658
- this.windowRef.nativeWindow.setTimeout(() => {
2659
- this.sendTokensMessage(SkyTokensMessageType.FocusActiveToken);
2719
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.RemoveActiveToken);
2720
+ __classPrivateFieldGet(this, _SkyLookupComponent_windowRef, "f").nativeWindow.setTimeout(() => {
2721
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.FocusActiveToken);
2660
2722
  });
2661
2723
  event.preventDefault();
2662
2724
  break;
@@ -2665,7 +2727,7 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2665
2727
  }
2666
2728
  writeValue(value) {
2667
2729
  this.value = value ? value : [];
2668
- this.updateForSelectMode();
2730
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_updateForSelectMode).call(this);
2669
2731
  }
2670
2732
  registerOnChange(fn) {
2671
2733
  this.onChange = fn;
@@ -2675,22 +2737,23 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2675
2737
  }
2676
2738
  // Allows Angular to disable the input.
2677
2739
  setDisabledState(disabled) {
2678
- this.removeEventListeners();
2740
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_removeEventListeners).call(this);
2679
2741
  if (!disabled) {
2680
- this.addEventListeners();
2742
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_addEventListeners).call(this);
2681
2743
  }
2682
2744
  this.disabled = disabled;
2683
- this.changeDetector.markForCheck();
2745
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2684
2746
  }
2685
2747
  clearSearchText() {
2686
2748
  this.autocompleteInputDirective.value = undefined;
2687
- this.autocompleteInputDirective.inputTextValue = undefined;
2749
+ this.autocompleteInputDirective.inputTextValue = '';
2688
2750
  }
2689
2751
  // Handles when to focus on the tokens.
2690
2752
  // Check for empty search text on keydown, before the escape key is fully pressed.
2691
2753
  // (Otherwise, a single character being escaped would register as empty on keyup.)
2692
2754
  // If empty on keydown, set a flag so that the appropriate action can be taken on keyup.
2693
- inputKeydown(event, value) {
2755
+ inputKeydown(event) {
2756
+ const value = event.target.value;
2694
2757
  /* Sanity check as this should only be called when in multiple select mode */
2695
2758
  /* istanbul ignore else */
2696
2759
  if (this.selectMode !== 'single') {
@@ -2702,10 +2765,10 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2702
2765
  case 'Backspace':
2703
2766
  case 'Left':
2704
2767
  if (value) {
2705
- this.markForTokenFocusOnKeyUp = false;
2768
+ __classPrivateFieldSet(this, _SkyLookupComponent_markForTokenFocusOnKeyUp, false, "f");
2706
2769
  }
2707
2770
  else {
2708
- this.markForTokenFocusOnKeyUp = true;
2771
+ __classPrivateFieldSet(this, _SkyLookupComponent_markForTokenFocusOnKeyUp, true, "f");
2709
2772
  }
2710
2773
  break;
2711
2774
  default:
@@ -2726,8 +2789,8 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2726
2789
  case 'Backspace':
2727
2790
  case 'Left':
2728
2791
  /* istanbul ignore else */
2729
- if (this.markForTokenFocusOnKeyUp) {
2730
- this.sendTokensMessage(SkyTokensMessageType.FocusLastToken);
2792
+ if (__classPrivateFieldGet(this, _SkyLookupComponent_markForTokenFocusOnKeyUp, "f")) {
2793
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.FocusLastToken);
2731
2794
  event.preventDefault();
2732
2795
  }
2733
2796
  break;
@@ -2741,7 +2804,7 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2741
2804
  if (this.disabled) {
2742
2805
  return;
2743
2806
  }
2744
- this.sendAutocompleteMessage(SkyAutocompleteMessageType.CloseDropdown);
2807
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendAutocompleteMessage).call(this, SkyAutocompleteMessageType.CloseDropdown);
2745
2808
  let isValueInTextBox = false;
2746
2809
  if (this.selectMode === 'single') {
2747
2810
  isValueInTextBox =
@@ -2759,65 +2822,22 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2759
2822
  this.openPicker(event.inputValue);
2760
2823
  }
2761
2824
  }
2762
- createNativePickerInstance(initialSearch) {
2763
- const initialValue = this.value;
2764
- const modalConfig = this.showMoreConfig?.nativePickerConfig || {};
2765
- if (!modalConfig.itemTemplate) {
2766
- modalConfig.itemTemplate = this.searchResultTemplate;
2767
- }
2768
- let contextProviderType;
2769
- let contextProviderValue;
2770
- let modalComponentType;
2771
- if (this.searchAsync.observers.length > 0) {
2772
- contextProviderType = SkyLookupShowMoreNativePickerAsyncContext;
2773
- modalComponentType = SkyLookupShowMoreAsyncModalComponent;
2774
- contextProviderValue = new SkyLookupShowMoreNativePickerAsyncContext();
2775
- contextProviderValue.idProperty = this.idProperty;
2776
- contextProviderValue.searchAsync = (args) => {
2777
- this.searchAsync.emit(args);
2778
- return args.result;
2779
- };
2780
- }
2781
- else {
2782
- contextProviderType = SkyLookupShowMoreNativePickerContext;
2783
- modalComponentType = SkyLookupShowMoreModalComponent;
2784
- contextProviderValue = new SkyLookupShowMoreNativePickerContext();
2785
- contextProviderValue.items = this.data;
2786
- contextProviderValue.search = this.search;
2787
- }
2788
- contextProviderValue.descriptorProperty = this.descriptorProperty;
2789
- contextProviderValue.initialSearch = initialSearch;
2790
- contextProviderValue.initialValue = initialValue;
2791
- contextProviderValue.selectMode = this.selectMode;
2792
- contextProviderValue.showAddButton = this.showAddButton;
2793
- contextProviderValue.userConfig = modalConfig;
2794
- return this.modalService.open(modalComponentType, {
2795
- providers: [
2796
- {
2797
- provide: contextProviderType,
2798
- useValue: contextProviderValue,
2799
- },
2800
- ],
2801
- size: 'large',
2802
- wrapperClass: this.wrapperClass,
2803
- });
2804
- }
2805
2825
  openPicker(initialSearch) {
2806
2826
  if (this.showMoreConfig?.customPicker) {
2807
2827
  this.showMoreConfig.customPicker.open({
2808
2828
  items: this.data,
2809
- initialSearch: initialSearch,
2829
+ initialSearch,
2810
2830
  initialValue: this.value,
2811
2831
  });
2812
2832
  }
2813
2833
  else {
2814
2834
  const initialValue = this.value;
2815
- this.openNativePicker = this.createNativePickerInstance(initialSearch);
2816
- this.openNativePicker.componentInstance.addClick.subscribe(() => {
2835
+ __classPrivateFieldSet(this, _SkyLookupComponent_openNativePicker, __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_createNativePickerInstance).call(this, initialSearch), "f");
2836
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f").componentInstance.addClick.subscribe(() => {
2817
2837
  this.addButtonClicked();
2818
2838
  });
2819
- this.openNativePicker.closed.subscribe((closeArgs) => {
2820
- this.openNativePicker = undefined;
2839
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f").closed.subscribe((closeArgs) => {
2840
+ __classPrivateFieldSet(this, _SkyLookupComponent_openNativePicker, undefined, "f");
2821
2841
  if (closeArgs.reason === 'save') {
2822
2842
  let selectedItems = [];
2823
2843
  if (this.searchAsync.observers.length > 0) {
@@ -2837,131 +2857,165 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2837
2857
  else {
2838
2858
  this.writeValue(initialValue);
2839
2859
  }
2840
- this.focusInput();
2841
- this.changeDetector.markForCheck();
2860
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2861
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2842
2862
  });
2843
2863
  }
2844
2864
  }
2845
2865
  onSearchAsync(args) {
2846
2866
  this.searchAsync.emit(args);
2847
2867
  }
2848
- addToSelected(item) {
2849
- let selectedItems;
2850
- if (this.selectMode === 'single') {
2851
- selectedItems = [item];
2852
- }
2853
- else {
2854
- selectedItems = this.value;
2855
- // If items have a unique identifier, don't allow the same item to be added twice.
2856
- if (!this.idProperty ||
2857
- !this.value.some((existingItem) => existingItem[this.idProperty] === item[this.idProperty])) {
2858
- selectedItems.push(item);
2859
- }
2860
- this.clearSearchText();
2861
- }
2862
- this.writeValue(selectedItems);
2863
- }
2864
- addEventListeners() {
2865
- this.idle = new Subject();
2866
- this.focusInputOnHostClick();
2867
- }
2868
- removeEventListeners() {
2869
- this.idle.next();
2870
- this.idle.complete();
2868
+ }
2869
+ _SkyLookupComponent_adapter = new WeakMap(), _SkyLookupComponent_elementRef = new WeakMap(), _SkyLookupComponent_changeDetector = new WeakMap(), _SkyLookupComponent_idle = new WeakMap(), _SkyLookupComponent_markForTokenFocusOnKeyUp = new WeakMap(), _SkyLookupComponent_modalService = new WeakMap(), _SkyLookupComponent_ngUnsubscribe = new WeakMap(), _SkyLookupComponent_openNativePicker = new WeakMap(), _SkyLookupComponent_resourcesService = new WeakMap(), _SkyLookupComponent_windowRef = new WeakMap(), _SkyLookupComponent__autocompleteInputDirective = new WeakMap(), _SkyLookupComponent__data = new WeakMap(), _SkyLookupComponent__selectMode = new WeakMap(), _SkyLookupComponent__tokens = new WeakMap(), _SkyLookupComponent__value = new WeakMap(), _SkyLookupComponent_instances = new WeakSet(), _SkyLookupComponent_createNativePickerInstance = function _SkyLookupComponent_createNativePickerInstance(initialSearch) {
2870
+ const initialValue = this.value;
2871
+ const modalConfig = this.showMoreConfig?.nativePickerConfig || {};
2872
+ if (!modalConfig.itemTemplate) {
2873
+ modalConfig.itemTemplate = this.searchResultTemplate;
2874
+ }
2875
+ let contextProviderType;
2876
+ let contextProviderValue;
2877
+ let modalComponentType;
2878
+ if (this.searchAsync.observers.length > 0) {
2879
+ contextProviderType = SkyLookupShowMoreNativePickerAsyncContext;
2880
+ modalComponentType = SkyLookupShowMoreAsyncModalComponent;
2881
+ contextProviderValue = new SkyLookupShowMoreNativePickerAsyncContext();
2882
+ contextProviderValue.idProperty = this.idProperty;
2883
+ contextProviderValue.searchAsync = (args) => {
2884
+ this.searchAsync.emit(args);
2885
+ return args.result;
2886
+ };
2871
2887
  }
2872
- focusInputOnHostClick() {
2873
- let hostElement = !this.inputBoxHostSvc
2874
- ? this.elementRef.nativeElement
2888
+ else {
2889
+ contextProviderType = SkyLookupShowMoreNativePickerContext;
2890
+ modalComponentType = SkyLookupShowMoreModalComponent;
2891
+ contextProviderValue = new SkyLookupShowMoreNativePickerContext();
2892
+ contextProviderValue.items = this.data;
2893
+ contextProviderValue.search = this.search;
2894
+ }
2895
+ contextProviderValue.descriptorProperty = this.descriptorProperty;
2896
+ contextProviderValue.initialSearch = initialSearch;
2897
+ contextProviderValue.initialValue = initialValue;
2898
+ contextProviderValue.selectMode = this.selectMode;
2899
+ contextProviderValue.showAddButton = this.showAddButton;
2900
+ contextProviderValue.userConfig = modalConfig;
2901
+ return __classPrivateFieldGet(this, _SkyLookupComponent_modalService, "f").open(modalComponentType, {
2902
+ providers: [
2903
+ {
2904
+ provide: contextProviderType,
2905
+ useValue: contextProviderValue,
2906
+ },
2907
+ ],
2908
+ size: 'large',
2909
+ wrapperClass: this.wrapperClass,
2910
+ });
2911
+ }, _SkyLookupComponent_addToSelected = function _SkyLookupComponent_addToSelected(item) {
2912
+ let selectedItems;
2913
+ if (this.selectMode === 'single') {
2914
+ selectedItems = [item];
2915
+ }
2916
+ else {
2917
+ selectedItems = this.value;
2918
+ const idProperty = this.idProperty || '';
2919
+ // If items have a unique identifier, don't allow the same item to be added twice.
2920
+ if (!this.idProperty ||
2921
+ !this.value.some((existingItem) => existingItem[idProperty] === item[idProperty])) {
2922
+ selectedItems.push(item);
2923
+ }
2924
+ this.clearSearchText();
2925
+ }
2926
+ this.writeValue(selectedItems);
2927
+ }, _SkyLookupComponent_addEventListeners = function _SkyLookupComponent_addEventListeners() {
2928
+ __classPrivateFieldSet(this, _SkyLookupComponent_idle, new Subject(), "f");
2929
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInputOnHostClick).call(this);
2930
+ }, _SkyLookupComponent_removeEventListeners = function _SkyLookupComponent_removeEventListeners() {
2931
+ __classPrivateFieldGet(this, _SkyLookupComponent_idle, "f").next();
2932
+ __classPrivateFieldGet(this, _SkyLookupComponent_idle, "f").complete();
2933
+ }, _SkyLookupComponent_focusInputOnHostClick = function _SkyLookupComponent_focusInputOnHostClick() {
2934
+ let hostElement = !this.inputBoxHostSvc
2935
+ ? __classPrivateFieldGet(this, _SkyLookupComponent_elementRef, "f").nativeElement
2936
+ : this.lookupWrapperRef.nativeElement;
2937
+ const documentObj = __classPrivateFieldGet(this, _SkyLookupComponent_windowRef, "f").nativeWindow.document;
2938
+ // Handles focusing the input when the host is clicked.
2939
+ // The input should NOT be focused if other elements (tokens, etc.)
2940
+ // are currently focused or being tabbed through.
2941
+ fromEvent(documentObj, 'mousedown')
2942
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_idle, "f")))
2943
+ .subscribe((event) => {
2944
+ hostElement = !this.inputBoxHostSvc
2945
+ ? __classPrivateFieldGet(this, _SkyLookupComponent_elementRef, "f").nativeElement
2875
2946
  : this.lookupWrapperRef.nativeElement;
2876
- const documentObj = this.windowRef.nativeWindow.document;
2877
- // Handles focusing the input when the host is clicked.
2878
- // The input should NOT be focused if other elements (tokens, etc.)
2879
- // are currently focused or being tabbed through.
2880
- fromEvent(documentObj, 'mousedown')
2881
- .pipe(takeUntil(this.idle))
2882
- .subscribe((event) => {
2883
- hostElement = !this.inputBoxHostSvc
2884
- ? this.elementRef.nativeElement
2885
- : this.lookupWrapperRef.nativeElement;
2886
- this.isInputFocused = hostElement.contains(event.target);
2887
- this.changeDetector.markForCheck();
2888
- });
2889
- fromEvent(documentObj, 'focusin')
2890
- .pipe(takeUntil(this.idle))
2891
- .subscribe((event) => {
2892
- hostElement = !this.inputBoxHostSvc
2893
- ? this.elementRef.nativeElement
2894
- : this.lookupWrapperRef.nativeElement;
2895
- this.isInputFocused = hostElement.contains(event.target);
2896
- this.changeDetector.markForCheck();
2897
- });
2898
- fromEvent(hostElement, 'mouseup')
2899
- .pipe(takeUntil(this.idle))
2900
- .subscribe(() => {
2901
- const classList = documentObj.activeElement.classList;
2902
- if (!classList || !classList.contains('sky-token')) {
2903
- this.focusInput();
2904
- }
2905
- });
2906
- }
2907
- focusInput() {
2908
- this.adapter.focusInput(this.lookupWrapperRef);
2909
- }
2910
- onAddButtonComplete(args) {
2911
- if (args.data) {
2912
- this.data = args.data;
2947
+ this.isInputFocused = hostElement.contains(event.target);
2948
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2949
+ });
2950
+ fromEvent(documentObj, 'focusin')
2951
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_idle, "f")))
2952
+ .subscribe((event) => {
2953
+ hostElement = !this.inputBoxHostSvc
2954
+ ? __classPrivateFieldGet(this, _SkyLookupComponent_elementRef, "f").nativeElement
2955
+ : this.lookupWrapperRef.nativeElement;
2956
+ this.isInputFocused = hostElement.contains(event.target);
2957
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2958
+ });
2959
+ fromEvent(hostElement, 'mouseup')
2960
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_idle, "f")))
2961
+ .subscribe(() => {
2962
+ const classList = documentObj.activeElement.classList;
2963
+ if (!classList || !classList.contains('sky-token')) {
2964
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2965
+ }
2966
+ });
2967
+ }, _SkyLookupComponent_focusInput = function _SkyLookupComponent_focusInput() {
2968
+ __classPrivateFieldGet(this, _SkyLookupComponent_adapter, "f").focusInput(this.lookupWrapperRef);
2969
+ }, _SkyLookupComponent_onAddButtonComplete = function _SkyLookupComponent_onAddButtonComplete(args) {
2970
+ if (args.data) {
2971
+ this.data = args.data;
2972
+ }
2973
+ if (this.data.indexOf(args.item) >= 0) {
2974
+ if (__classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f")) {
2975
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f")
2976
+ .componentInstance.onItemSelect(true, { value: args.item, selected: false });
2913
2977
  }
2914
- if (this.data.indexOf(args.item) >= 0) {
2915
- if (this.openNativePicker) {
2916
- this.openNativePicker
2917
- .componentInstance.onItemSelect(true, { value: args.item, selected: false });
2978
+ else {
2979
+ let newValue = this.value;
2980
+ if (this.selectMode === 'multiple') {
2981
+ newValue = this.value.concat(args.item);
2918
2982
  }
2919
2983
  else {
2920
- let newValue = this.value;
2921
- if (this.selectMode === 'multiple') {
2922
- newValue = this.value.concat(args.item);
2923
- }
2924
- else {
2925
- newValue = [args.item];
2926
- }
2927
- this.writeValue(newValue);
2984
+ newValue = [args.item];
2928
2985
  }
2986
+ this.writeValue(newValue);
2929
2987
  }
2930
2988
  }
2931
- parseTokens(data) {
2932
- return data.map((item) => {
2933
- return {
2934
- value: item,
2935
- };
2936
- });
2937
- }
2938
- sendAutocompleteMessage(type) {
2939
- this.autocompleteController.next({ type });
2940
- }
2941
- sendTokensMessage(type) {
2942
- this.tokensController.next({ type });
2943
- }
2944
- updateForSelectMode() {
2945
- if (this.autocompleteInputDirective) {
2946
- if (this.selectMode === 'single') {
2947
- this.autocompleteInputDirective.value = this.value && this.value[0];
2948
- }
2949
- else {
2950
- this.clearSearchText();
2951
- }
2989
+ }, _SkyLookupComponent_parseTokens = function _SkyLookupComponent_parseTokens(data) {
2990
+ return data.map((item) => {
2991
+ return {
2992
+ value: item,
2993
+ };
2994
+ });
2995
+ }, _SkyLookupComponent_sendAutocompleteMessage = function _SkyLookupComponent_sendAutocompleteMessage(type) {
2996
+ this.autocompleteController.next({ type });
2997
+ }, _SkyLookupComponent_sendTokensMessage = function _SkyLookupComponent_sendTokensMessage(type) {
2998
+ this.tokensController.next({ type });
2999
+ }, _SkyLookupComponent_updateForSelectMode = function _SkyLookupComponent_updateForSelectMode() {
3000
+ if (this.autocompleteInputDirective) {
3001
+ if (this.selectMode === 'single') {
3002
+ this.autocompleteInputDirective.value = this.value && this.value[0];
3003
+ }
3004
+ else {
3005
+ this.clearSearchText();
2952
3006
  }
2953
3007
  }
2954
- }
2955
- SkyLookupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.SkyAppWindowRef }, { token: i8.NgControl, optional: true, self: true }, { token: SkyLookupAdapterService }, { token: i1$1.SkyModalService }, { token: i5.SkyLibResourcesService }, { token: i6.SkyInputBoxHostService, optional: true }, { token: i7.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
2956
- SkyLookupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupComponent, selector: "sky-lookup", inputs: { ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", autocompleteAttribute: "autocompleteAttribute", data: "data", disabled: "disabled", enableShowMore: "enableShowMore", placeholderText: "placeholderText", idProperty: "idProperty", showAddButton: "showAddButton", showMoreConfig: "showMoreConfig", selectMode: "selectMode", wrapperClass: "wrapperClass" }, outputs: { addClick: "addClick" }, providers: [SkyLookupAdapterService], viewQueries: [{ propertyName: "autocompleteInputDirective", first: true, predicate: SkyAutocompleteInputDirective, descendants: true, read: SkyAutocompleteInputDirective }, { propertyName: "showMoreButtonTemplateRef", first: true, predicate: ["showMoreButtonTemplateRef"], descendants: true, read: TemplateRef, static: true }, { propertyName: "inputTemplateRef", first: true, predicate: ["inputTemplateRef"], descendants: true, read: TemplateRef, static: true }, { propertyName: "lookupWrapperRef", first: true, predicate: ["lookupWrapper"], descendants: true, read: ElementRef }, { propertyName: "searchIconTemplateRef", first: true, predicate: ["searchIconTemplateRef"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <div\n class=\"sky-lookup\"\n [ngClass]=\"{\n 'sky-lookup-focused': isInputFocused,\n 'sky-lookup-disabled': disabled,\n 'sky-lookup-single': selectMode === 'single'\n }\"\n #lookupWrapper\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [data]=\"data\"\n [debounceTime]=\"debounceTime\"\n [descriptorProperty]=\"descriptorProperty\"\n [enableShowMore]=\"enableShowMore\"\n [messageStream]=\"autocompleteController\"\n [propertiesToSearch]=\"propertiesToSearch\"\n [search]=\"search\"\n [searchAsyncDisabled]=\"searchAsync.observers.length === 0\"\n [searchFilters]=\"searchFilters\"\n [searchResultsLimit]=\"searchResultsLimit\"\n [searchResultTemplate]=\"searchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n [showAddButton]=\"showAddButton\"\n [wrapperClass]=\"wrapperClass\"\n (addClick)=\"addButtonClicked()\"\n (searchAsync)=\"onSearchAsync($event)\"\n (selectionChange)=\"onAutocompleteSelectionChange($event)\"\n (showMoreClick)=\"onShowMoreClick($event)\"\n >\n <div class=\"sky-lookup-search-flex-wrapper\">\n <div\n class=\"sky-lookup-search\"\n [ngClass]=\"{\n 'sky-field-status-active': isInputFocused && !disabled\n }\"\n >\n <sky-tokens\n *ngIf=\"selectMode === 'multiple'\"\n class=\"sky-lookup-tokens\"\n [disabled]=\"disabled\"\n [displayWith]=\"descriptorProperty\"\n [focusable]=\"false\"\n [messageStream]=\"tokensController\"\n [trackWith]=\"idProperty\"\n [tokens]=\"tokens\"\n (keyup)=\"onTokensKeyUp($event)\"\n (tokensChange)=\"onTokensChange($event)\"\n (tokenSelected)=\"enableShowMore ? openPicker(undefined) : undefined\"\n (focusIndexOverRange)=\"onTokensFocusIndexOverRange()\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n (keydown)=\"inputKeydown($event, $event.target.value)\"\n (keyup)=\"inputKeyup($event)\"\n ></textarea>\n </sky-tokens>\n <div\n *ngIf=\"selectMode === 'single'\"\n class=\"sky-lookup-single-control\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </div>\n <ng-container *ngIf=\"!inputBoxHostSvc && enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"showMoreButtonTemplateRef\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!inputBoxHostSvc && !enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplateRef\"\n ></ng-container>\n </ng-container>\n </div>\n </sky-autocomplete>\n </div>\n</ng-template>\n\n<ng-template #showMoreButtonTemplateRef>\n <div class=\"sky-input-group-btn\">\n <button\n class=\"sky-btn sky-btn-default\"\n [disabled]=\"disabled\"\n [ngClass]=\"{ 'sky-btn-disabled': disabled }\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_lookup_search_button_show_more' | skyLibResources\n \"\n (click)=\"onSearchButtonClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n ></sky-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #searchIconTemplateRef>\n <div\n class=\"sky-input-group-icon sky-input-box-icon-inset\"\n [ngClass]=\"{ 'sky-lookup-disabled': disabled }\"\n >\n <sky-icon\n *skyThemeIf=\"'default'\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n </div>\n</ng-template>\n", styles: [".sky-lookup .sky-lookup-input.sky-form-control{resize:none;border:0;box-sizing:content-box;height:1.428571429em;overflow:hidden;padding:0;background-color:transparent}.sky-lookup .sky-lookup-input.sky-form-control:focus{outline:none;box-shadow:none}.sky-lookup .sky-lookup-search-flex-wrapper{display:flex}.sky-lookup.sky-lookup-disabled .sky-lookup-search{background-color:#cdcfd2}.sky-lookup sky-tokens.sky-lookup-tokens:focus{outline:none}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-5px;margin-bottom:-5px}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-top:5px;padding-bottom:5px;padding-left:10px;flex-basis:100px}.sky-lookup .sky-lookup-single-control{display:inline-flex;padding-left:7px;width:100%}.sky-lookup-search{cursor:text;background-color:#fff;line-height:1.428571429em;padding:6px 12px 6px 3px;flex-grow:1}.sky-lookup-search:not(.sky-field-status-active){border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2}.sky-lookup-disabled .sky-lookup-search{cursor:default}.sky-lookup-focused .sky-tokens-content{flex-basis:100px}.sky-lookup-single sky-tokens.sky-lookup-tokens sky-token{display:none}sky-lookup.ng-invalid.ng-touched .sky-lookup-search{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}sky-input-box .sky-lookup{width:100%}sky-input-box .sky-lookup .sky-lookup-search{border:none;padding-bottom:5px;width:100%}:host-context(.sky-theme-modern) sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}.sky-theme-modern sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}.sky-theme-modern sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}\n"], components: [{ type: SkyAutocompleteComponent, selector: "sky-autocomplete", inputs: ["ariaLabelledBy", "data", "debounceTime", "descriptorProperty", "enableShowMore", "messageStream", "wrapperClass", "propertiesToSearch", "search", "searchResultTemplate", "searchTextMinimumCharacters", "searchFilters", "searchResultsLimit", "showAddButton", "noResultsFoundText", "searchAsyncDisabled"], outputs: ["addClick", "showMoreClick", "selectionChange", "searchAsync"] }, { type: i4.λ13, selector: "sky-tokens", inputs: ["disabled", "dismissible", "displayWith", "trackWith", "focusable", "tokens", "messageStream"], outputs: ["focusIndexOverRange", "focusIndexUnderRange", "tokenSelected", "tokensChange"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: SkyAutocompleteInputDirective, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3008
+ };
3009
+ SkyLookupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.SkyAppWindowRef }, { token: SkyLookupAdapterService }, { token: i1$1.SkyModalService }, { token: i4$1.SkyLibResourcesService }, { token: i8.NgControl, optional: true, self: true }, { token: i6.SkyInputBoxHostService, optional: true }, { token: i7.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
3010
+ SkyLookupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyLookupComponent, selector: "sky-lookup", inputs: { ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", autocompleteAttribute: "autocompleteAttribute", data: "data", disabled: "disabled", enableShowMore: "enableShowMore", placeholderText: "placeholderText", idProperty: "idProperty", showAddButton: "showAddButton", showMoreConfig: "showMoreConfig", selectMode: "selectMode", wrapperClass: "wrapperClass" }, outputs: { addClick: "addClick" }, providers: [SkyLookupAdapterService], viewQueries: [{ propertyName: "autocompleteInputDirective", first: true, predicate: SkyAutocompleteInputDirective, descendants: true, read: SkyAutocompleteInputDirective }, { propertyName: "showMoreButtonTemplateRef", first: true, predicate: ["showMoreButtonTemplateRef"], descendants: true, read: TemplateRef, static: true }, { propertyName: "inputTemplateRef", first: true, predicate: ["inputTemplateRef"], descendants: true, read: TemplateRef, static: true }, { propertyName: "lookupWrapperRef", first: true, predicate: ["lookupWrapper"], descendants: true, read: ElementRef }, { propertyName: "searchIconTemplateRef", first: true, predicate: ["searchIconTemplateRef"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <div\n class=\"sky-lookup\"\n [ngClass]=\"{\n 'sky-lookup-focused': isInputFocused,\n 'sky-lookup-disabled': disabled,\n 'sky-lookup-single': selectMode === 'single'\n }\"\n #lookupWrapper\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [data]=\"data\"\n [debounceTime]=\"debounceTime\"\n [descriptorProperty]=\"descriptorProperty\"\n [enableShowMore]=\"enableShowMore\"\n [messageStream]=\"autocompleteController\"\n [propertiesToSearch]=\"propertiesToSearch\"\n [search]=\"search\"\n [searchAsyncDisabled]=\"searchAsync.observers.length === 0\"\n [searchFilters]=\"searchFilters\"\n [searchResultsLimit]=\"searchResultsLimit\"\n [searchResultTemplate]=\"searchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n [showAddButton]=\"showAddButton\"\n [wrapperClass]=\"wrapperClass\"\n (addClick)=\"addButtonClicked()\"\n (searchAsync)=\"onSearchAsync($event)\"\n (selectionChange)=\"onAutocompleteSelectionChange($event)\"\n (showMoreClick)=\"onShowMoreClick($event)\"\n >\n <div class=\"sky-lookup-search-flex-wrapper\">\n <div\n class=\"sky-lookup-search\"\n [ngClass]=\"{\n 'sky-field-status-active': isInputFocused && !disabled\n }\"\n >\n <sky-tokens\n *ngIf=\"selectMode === 'multiple'\"\n class=\"sky-lookup-tokens\"\n [disabled]=\"disabled\"\n [displayWith]=\"descriptorProperty\"\n [focusable]=\"false\"\n [messageStream]=\"tokensController\"\n [trackWith]=\"idProperty\"\n [tokens]=\"tokens\"\n (keyup)=\"onTokensKeyUp($event)\"\n (tokensChange)=\"onTokensChange($event)\"\n (tokenSelected)=\"enableShowMore ? openPicker('') : undefined\"\n (focusIndexOverRange)=\"onTokensFocusIndexOverRange()\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n (keydown)=\"inputKeydown($event)\"\n (keyup)=\"inputKeyup($event)\"\n ></textarea>\n </sky-tokens>\n <div\n *ngIf=\"selectMode === 'single'\"\n class=\"sky-lookup-single-control\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </div>\n <ng-container *ngIf=\"!inputBoxHostSvc && enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"showMoreButtonTemplateRef\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!inputBoxHostSvc && !enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplateRef\"\n ></ng-container>\n </ng-container>\n </div>\n </sky-autocomplete>\n </div>\n</ng-template>\n\n<ng-template #showMoreButtonTemplateRef>\n <div class=\"sky-input-group-btn\">\n <button\n class=\"sky-btn sky-btn-default\"\n [disabled]=\"disabled\"\n [ngClass]=\"{ 'sky-btn-disabled': disabled }\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_lookup_search_button_show_more' | skyLibResources\n \"\n (click)=\"onSearchButtonClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n ></sky-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #searchIconTemplateRef>\n <div\n class=\"sky-input-group-icon sky-input-box-icon-inset\"\n [ngClass]=\"{ 'sky-lookup-disabled': disabled }\"\n >\n <sky-icon\n *skyThemeIf=\"'default'\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n </div>\n</ng-template>\n", styles: [".sky-lookup .sky-lookup-input.sky-form-control{resize:none;border:0;box-sizing:content-box;height:1.428571429em;overflow:hidden;padding:0;background-color:transparent}.sky-lookup .sky-lookup-input.sky-form-control:focus{outline:none;box-shadow:none}.sky-lookup .sky-lookup-search-flex-wrapper{display:flex}.sky-lookup.sky-lookup-disabled .sky-lookup-search{background-color:#cdcfd2}.sky-lookup sky-tokens.sky-lookup-tokens:focus{outline:none}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-5px;margin-bottom:-5px}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-top:5px;padding-bottom:5px;padding-left:10px;flex-basis:100px}.sky-lookup .sky-lookup-single-control{display:inline-flex;padding-left:7px;width:100%}.sky-lookup-search{cursor:text;background-color:#fff;line-height:1.428571429em;padding:6px 12px 6px 3px;flex-grow:1}.sky-lookup-search:not(.sky-field-status-active){border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2}.sky-lookup-disabled .sky-lookup-search{cursor:default}.sky-lookup-focused .sky-tokens-content{flex-basis:100px}.sky-lookup-single sky-tokens.sky-lookup-tokens sky-token{display:none}sky-lookup.ng-invalid.ng-touched .sky-lookup-search{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}sky-input-box .sky-lookup{width:100%}sky-input-box .sky-lookup .sky-lookup-search{border:none;padding-bottom:5px;width:100%}:host-context(.sky-theme-modern) sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}.sky-theme-modern sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}.sky-theme-modern sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}\n"], components: [{ type: SkyAutocompleteComponent, selector: "sky-autocomplete", inputs: ["ariaLabelledBy", "data", "debounceTime", "descriptorProperty", "enableShowMore", "messageStream", "wrapperClass", "propertiesToSearch", "search", "searchResultTemplate", "searchTextMinimumCharacters", "searchFilters", "searchResultsLimit", "showAddButton", "noResultsFoundText", "searchAsyncDisabled"], outputs: ["addClick", "showMoreClick", "selectionChange", "searchAsync"] }, { type: i4.λ13, selector: "sky-tokens", inputs: ["disabled", "dismissible", "displayWith", "trackWith", "focusable", "tokens", "messageStream"], outputs: ["focusIndexOverRange", "focusIndexUnderRange", "tokenSelected", "tokensChange"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: SkyAutocompleteInputDirective, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], pipes: { "skyLibResources": i4$1.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2957
3011
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupComponent, decorators: [{
2958
3012
  type: Component,
2959
- args: [{ selector: 'sky-lookup', providers: [SkyLookupAdapterService], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <div\n class=\"sky-lookup\"\n [ngClass]=\"{\n 'sky-lookup-focused': isInputFocused,\n 'sky-lookup-disabled': disabled,\n 'sky-lookup-single': selectMode === 'single'\n }\"\n #lookupWrapper\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [data]=\"data\"\n [debounceTime]=\"debounceTime\"\n [descriptorProperty]=\"descriptorProperty\"\n [enableShowMore]=\"enableShowMore\"\n [messageStream]=\"autocompleteController\"\n [propertiesToSearch]=\"propertiesToSearch\"\n [search]=\"search\"\n [searchAsyncDisabled]=\"searchAsync.observers.length === 0\"\n [searchFilters]=\"searchFilters\"\n [searchResultsLimit]=\"searchResultsLimit\"\n [searchResultTemplate]=\"searchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n [showAddButton]=\"showAddButton\"\n [wrapperClass]=\"wrapperClass\"\n (addClick)=\"addButtonClicked()\"\n (searchAsync)=\"onSearchAsync($event)\"\n (selectionChange)=\"onAutocompleteSelectionChange($event)\"\n (showMoreClick)=\"onShowMoreClick($event)\"\n >\n <div class=\"sky-lookup-search-flex-wrapper\">\n <div\n class=\"sky-lookup-search\"\n [ngClass]=\"{\n 'sky-field-status-active': isInputFocused && !disabled\n }\"\n >\n <sky-tokens\n *ngIf=\"selectMode === 'multiple'\"\n class=\"sky-lookup-tokens\"\n [disabled]=\"disabled\"\n [displayWith]=\"descriptorProperty\"\n [focusable]=\"false\"\n [messageStream]=\"tokensController\"\n [trackWith]=\"idProperty\"\n [tokens]=\"tokens\"\n (keyup)=\"onTokensKeyUp($event)\"\n (tokensChange)=\"onTokensChange($event)\"\n (tokenSelected)=\"enableShowMore ? openPicker(undefined) : undefined\"\n (focusIndexOverRange)=\"onTokensFocusIndexOverRange()\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n (keydown)=\"inputKeydown($event, $event.target.value)\"\n (keyup)=\"inputKeyup($event)\"\n ></textarea>\n </sky-tokens>\n <div\n *ngIf=\"selectMode === 'single'\"\n class=\"sky-lookup-single-control\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </div>\n <ng-container *ngIf=\"!inputBoxHostSvc && enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"showMoreButtonTemplateRef\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!inputBoxHostSvc && !enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplateRef\"\n ></ng-container>\n </ng-container>\n </div>\n </sky-autocomplete>\n </div>\n</ng-template>\n\n<ng-template #showMoreButtonTemplateRef>\n <div class=\"sky-input-group-btn\">\n <button\n class=\"sky-btn sky-btn-default\"\n [disabled]=\"disabled\"\n [ngClass]=\"{ 'sky-btn-disabled': disabled }\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_lookup_search_button_show_more' | skyLibResources\n \"\n (click)=\"onSearchButtonClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n ></sky-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #searchIconTemplateRef>\n <div\n class=\"sky-input-group-icon sky-input-box-icon-inset\"\n [ngClass]=\"{ 'sky-lookup-disabled': disabled }\"\n >\n <sky-icon\n *skyThemeIf=\"'default'\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n </div>\n</ng-template>\n", styles: [".sky-lookup .sky-lookup-input.sky-form-control{resize:none;border:0;box-sizing:content-box;height:1.428571429em;overflow:hidden;padding:0;background-color:transparent}.sky-lookup .sky-lookup-input.sky-form-control:focus{outline:none;box-shadow:none}.sky-lookup .sky-lookup-search-flex-wrapper{display:flex}.sky-lookup.sky-lookup-disabled .sky-lookup-search{background-color:#cdcfd2}.sky-lookup sky-tokens.sky-lookup-tokens:focus{outline:none}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-5px;margin-bottom:-5px}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-top:5px;padding-bottom:5px;padding-left:10px;flex-basis:100px}.sky-lookup .sky-lookup-single-control{display:inline-flex;padding-left:7px;width:100%}.sky-lookup-search{cursor:text;background-color:#fff;line-height:1.428571429em;padding:6px 12px 6px 3px;flex-grow:1}.sky-lookup-search:not(.sky-field-status-active){border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2}.sky-lookup-disabled .sky-lookup-search{cursor:default}.sky-lookup-focused .sky-tokens-content{flex-basis:100px}.sky-lookup-single sky-tokens.sky-lookup-tokens sky-token{display:none}sky-lookup.ng-invalid.ng-touched .sky-lookup-search{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}sky-input-box .sky-lookup{width:100%}sky-input-box .sky-lookup .sky-lookup-search{border:none;padding-bottom:5px;width:100%}:host-context(.sky-theme-modern) sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}.sky-theme-modern sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}.sky-theme-modern sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}\n"] }]
2960
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.SkyAppWindowRef }, { type: i8.NgControl, decorators: [{
3013
+ args: [{ selector: 'sky-lookup', providers: [SkyLookupAdapterService], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <div\n class=\"sky-lookup\"\n [ngClass]=\"{\n 'sky-lookup-focused': isInputFocused,\n 'sky-lookup-disabled': disabled,\n 'sky-lookup-single': selectMode === 'single'\n }\"\n #lookupWrapper\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [data]=\"data\"\n [debounceTime]=\"debounceTime\"\n [descriptorProperty]=\"descriptorProperty\"\n [enableShowMore]=\"enableShowMore\"\n [messageStream]=\"autocompleteController\"\n [propertiesToSearch]=\"propertiesToSearch\"\n [search]=\"search\"\n [searchAsyncDisabled]=\"searchAsync.observers.length === 0\"\n [searchFilters]=\"searchFilters\"\n [searchResultsLimit]=\"searchResultsLimit\"\n [searchResultTemplate]=\"searchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n [showAddButton]=\"showAddButton\"\n [wrapperClass]=\"wrapperClass\"\n (addClick)=\"addButtonClicked()\"\n (searchAsync)=\"onSearchAsync($event)\"\n (selectionChange)=\"onAutocompleteSelectionChange($event)\"\n (showMoreClick)=\"onShowMoreClick($event)\"\n >\n <div class=\"sky-lookup-search-flex-wrapper\">\n <div\n class=\"sky-lookup-search\"\n [ngClass]=\"{\n 'sky-field-status-active': isInputFocused && !disabled\n }\"\n >\n <sky-tokens\n *ngIf=\"selectMode === 'multiple'\"\n class=\"sky-lookup-tokens\"\n [disabled]=\"disabled\"\n [displayWith]=\"descriptorProperty\"\n [focusable]=\"false\"\n [messageStream]=\"tokensController\"\n [trackWith]=\"idProperty\"\n [tokens]=\"tokens\"\n (keyup)=\"onTokensKeyUp($event)\"\n (tokensChange)=\"onTokensChange($event)\"\n (tokenSelected)=\"enableShowMore ? openPicker('') : undefined\"\n (focusIndexOverRange)=\"onTokensFocusIndexOverRange()\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n (keydown)=\"inputKeydown($event)\"\n (keyup)=\"inputKeyup($event)\"\n ></textarea>\n </sky-tokens>\n <div\n *ngIf=\"selectMode === 'single'\"\n class=\"sky-lookup-single-control\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </div>\n <ng-container *ngIf=\"!inputBoxHostSvc && enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"showMoreButtonTemplateRef\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!inputBoxHostSvc && !enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplateRef\"\n ></ng-container>\n </ng-container>\n </div>\n </sky-autocomplete>\n </div>\n</ng-template>\n\n<ng-template #showMoreButtonTemplateRef>\n <div class=\"sky-input-group-btn\">\n <button\n class=\"sky-btn sky-btn-default\"\n [disabled]=\"disabled\"\n [ngClass]=\"{ 'sky-btn-disabled': disabled }\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_lookup_search_button_show_more' | skyLibResources\n \"\n (click)=\"onSearchButtonClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n ></sky-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #searchIconTemplateRef>\n <div\n class=\"sky-input-group-icon sky-input-box-icon-inset\"\n [ngClass]=\"{ 'sky-lookup-disabled': disabled }\"\n >\n <sky-icon\n *skyThemeIf=\"'default'\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n </div>\n</ng-template>\n", styles: [".sky-lookup .sky-lookup-input.sky-form-control{resize:none;border:0;box-sizing:content-box;height:1.428571429em;overflow:hidden;padding:0;background-color:transparent}.sky-lookup .sky-lookup-input.sky-form-control:focus{outline:none;box-shadow:none}.sky-lookup .sky-lookup-search-flex-wrapper{display:flex}.sky-lookup.sky-lookup-disabled .sky-lookup-search{background-color:#cdcfd2}.sky-lookup sky-tokens.sky-lookup-tokens:focus{outline:none}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-5px;margin-bottom:-5px}.sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-top:5px;padding-bottom:5px;padding-left:10px;flex-basis:100px}.sky-lookup .sky-lookup-single-control{display:inline-flex;padding-left:7px;width:100%}.sky-lookup-search{cursor:text;background-color:#fff;line-height:1.428571429em;padding:6px 12px 6px 3px;flex-grow:1}.sky-lookup-search:not(.sky-field-status-active){border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2}.sky-lookup-disabled .sky-lookup-search{cursor:default}.sky-lookup-focused .sky-tokens-content{flex-basis:100px}.sky-lookup-single sky-tokens.sky-lookup-tokens sky-token{display:none}sky-lookup.ng-invalid.ng-touched .sky-lookup-search{box-shadow:0 0 8px #ef404499;border:1px solid #ef4044;outline:none}sky-input-box .sky-lookup{width:100%}sky-input-box .sky-lookup .sky-lookup-search{border:none;padding-bottom:5px;width:100%}:host-context(.sky-theme-modern) sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}:host-context(.sky-theme-modern) sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}.sky-theme-modern sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:-6px}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens{margin-top:0;margin-bottom:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens sky-token{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content{padding-bottom:0;padding-top:0}.sky-theme-modern sky-input-box .sky-lookup sky-tokens.sky-lookup-tokens .sky-tokens .sky-tokens-content:first-child{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup.sky-lookup-single sky-tokens.sky-lookup-tokens .sky-tokens-content{padding-left:0}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search{background-color:transparent;padding:0 0 0 15px}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-search.sky-field-status-active{box-shadow:none}.sky-theme-modern sky-input-box .sky-lookup textarea.sky-lookup-input.sky-form-control{padding-left:0;resize:none}.sky-theme-modern sky-input-box .sky-lookup .sky-lookup-single-control{padding-left:0}\n"] }]
3014
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.SkyAppWindowRef }, { type: SkyLookupAdapterService }, { type: i1$1.SkyModalService }, { type: i4$1.SkyLibResourcesService }, { type: i8.NgControl, decorators: [{
2961
3015
  type: Self
2962
3016
  }, {
2963
3017
  type: Optional
2964
- }] }, { type: SkyLookupAdapterService }, { type: i1$1.SkyModalService }, { type: i5.SkyLibResourcesService }, { type: i6.SkyInputBoxHostService, decorators: [{
3018
+ }] }, { type: i6.SkyInputBoxHostService, decorators: [{
2965
3019
  type: Optional
2966
3020
  }] }, { type: i7.SkyThemeService, decorators: [{
2967
3021
  type: Optional