@skyux/lookup 6.3.2 → 6.5.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 === null || overlay === void 0 ? void 0 : 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 !== null && value !== void 0 ? 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 === null || activeElement === void 0 ? void 0 : 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"] }]
@@ -1131,7 +1142,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1131
1142
  type: ViewChild,
1132
1143
  args: ['defaultSearchResultTemplate', {
1133
1144
  read: TemplateRef,
1134
- static: false,
1145
+ static: true,
1135
1146
  }]
1136
1147
  }], inputDirective: [{
1137
1148
  type: ContentChild,
@@ -1202,6 +1213,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1202
1213
  }]
1203
1214
  }] });
1204
1215
 
1216
+ 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;
1217
+ const DEFAULT_COUNTRY_CODE = 'us';
1205
1218
  const SKY_COUNTRY_FIELD_VALIDATOR = {
1206
1219
  provide: NG_VALIDATORS,
1207
1220
  useExisting: forwardRef(() => SkyCountryFieldComponent),
@@ -1210,31 +1223,48 @@ const SKY_COUNTRY_FIELD_VALIDATOR = {
1210
1223
  let uniqueId = 0;
1211
1224
  class SkyCountryFieldComponent {
1212
1225
  constructor(changeDetector, elRef, windowRef, injector, inputBoxHostSvc, themeSvc) {
1213
- this.changeDetector = changeDetector;
1214
- this.elRef = elRef;
1215
- this.windowRef = windowRef;
1216
- this.injector = injector;
1217
1226
  this.inputBoxHostSvc = inputBoxHostSvc;
1218
- this.themeSvc = themeSvc;
1227
+ _SkyCountryFieldComponent_instances.add(this);
1228
+ /**
1229
+ * Indicates whether to hide the flag in the input element.
1230
+ */
1231
+ this.hideSelectedCountryFlag = false;
1219
1232
  /**
1220
1233
  * Fires when the selected country changes.
1221
1234
  */
1222
1235
  this.selectedCountryChange = new EventEmitter();
1236
+ this.countries = [];
1223
1237
  this.isInputFocused = false;
1224
1238
  this.searchTextMinimumCharacters = 2;
1225
1239
  this.currentTheme = 'default';
1226
- this.idle = new Subject();
1227
- this.internalFormChange = false;
1228
- this.isInitialChange = true;
1229
- this.ngUnsubscribe = new Subject();
1230
- this._disabled = false;
1231
- this._includePhoneInfo = false;
1240
+ _SkyCountryFieldComponent_changeDetector.set(this, void 0);
1241
+ _SkyCountryFieldComponent_defaultCountryData.set(this, void 0);
1242
+ _SkyCountryFieldComponent_elRef.set(this, void 0);
1243
+ _SkyCountryFieldComponent_idle.set(this, new Subject());
1244
+ _SkyCountryFieldComponent_injector.set(this, void 0);
1245
+ _SkyCountryFieldComponent_internalFormChange.set(this, false);
1246
+ _SkyCountryFieldComponent_isInitialChange.set(this, true);
1247
+ _SkyCountryFieldComponent_ngControl.set(this, null);
1248
+ _SkyCountryFieldComponent_ngUnsubscribe.set(this, new Subject());
1249
+ _SkyCountryFieldComponent_themeSvc.set(this, void 0);
1250
+ _SkyCountryFieldComponent_windowRef.set(this, void 0);
1251
+ _SkyCountryFieldComponent__defaultCountry.set(this, void 0);
1252
+ _SkyCountryFieldComponent__disabled.set(this, false);
1253
+ _SkyCountryFieldComponent__includePhoneInfo.set(this, false);
1254
+ _SkyCountryFieldComponent__selectedCountry.set(this, void 0);
1255
+ _SkyCountryFieldComponent__supportedCountryISOs.set(this, void 0);
1232
1256
  // Angular automatically constructs these methods.
1233
1257
  // eslint-disable-next-line @typescript-eslint/no-empty-function
1234
1258
  this.onChange = (value) => { };
1235
1259
  // eslint-disable-next-line @typescript-eslint/no-empty-function
1236
1260
  this.onTouched = () => { };
1237
- this.setupCountries();
1261
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_changeDetector, changeDetector, "f");
1262
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_elRef, elRef, "f");
1263
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_windowRef, windowRef, "f");
1264
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_injector, injector, "f");
1265
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_themeSvc, themeSvc, "f");
1266
+ this.inputId = `sky-country-field-input-${uniqueId++}`;
1267
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_setupCountries).call(this);
1238
1268
  this.countrySearchFormControl = new FormControl();
1239
1269
  }
1240
1270
  /**
@@ -1244,40 +1274,43 @@ class SkyCountryFieldComponent {
1244
1274
  * @default "us"
1245
1275
  */
1246
1276
  set defaultCountry(value) {
1247
- if (value !== this._defaultCountry) {
1248
- this._defaultCountry = value.toLowerCase();
1249
- this.defaultCountryData = this.countries.find((country) => country.iso2 === this._defaultCountry);
1250
- this.sortCountriesWithSelectedAndDefault(this.selectedCountry);
1277
+ if (!value) {
1278
+ value = DEFAULT_COUNTRY_CODE;
1279
+ }
1280
+ if (value !== __classPrivateFieldGet(this, _SkyCountryFieldComponent__defaultCountry, "f")) {
1281
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__defaultCountry, value.toLowerCase(), "f");
1282
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_defaultCountryData, this.countries.find((country) => country.iso2 === __classPrivateFieldGet(this, _SkyCountryFieldComponent__defaultCountry, "f")), "f");
1283
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault).call(this, this.selectedCountry);
1251
1284
  }
1252
1285
  }
1253
1286
  get defaultCountry() {
1254
- return this._defaultCountry;
1287
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__defaultCountry, "f");
1255
1288
  }
1256
1289
  /**
1257
1290
  * Indicates whether to disable the country field.
1258
1291
  * @default false
1259
1292
  */
1260
1293
  set disabled(isDisabled) {
1261
- this.removeEventListeners();
1294
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_removeEventListeners).call(this);
1262
1295
  if (!isDisabled) {
1263
1296
  this.addEventListeners();
1264
1297
  }
1265
- this._disabled = isDisabled;
1266
- this.changeDetector.markForCheck();
1298
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__disabled, isDisabled, "f");
1299
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1267
1300
  }
1268
1301
  get disabled() {
1269
- return this._disabled;
1302
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__disabled, "f");
1270
1303
  }
1271
1304
  /**
1272
1305
  * Indicates whether to include phone information in the selected country and country dropdown.
1273
1306
  * @default false
1274
1307
  */
1275
- set includePhoneInfo(includePhoneInfo) {
1276
- this._includePhoneInfo = includePhoneInfo;
1277
- this.setupCountries();
1308
+ set includePhoneInfo(value) {
1309
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__includePhoneInfo, value, "f");
1310
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_setupCountries).call(this);
1278
1311
  }
1279
1312
  get includePhoneInfo() {
1280
- return this._includePhoneInfo;
1313
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__includePhoneInfo, "f") || false;
1281
1314
  }
1282
1315
  /**
1283
1316
  * Specifies the [International Organization for Standardization Alpha 2](https://www.nationsonline.org/oneworld/country_code_list.htm)
@@ -1288,35 +1321,36 @@ class SkyCountryFieldComponent {
1288
1321
  if (Array.isArray(value)) {
1289
1322
  value = value.map((v) => v.toLowerCase());
1290
1323
  }
1291
- this._supportedCountryISOs = value;
1292
- this.setupCountries();
1324
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__supportedCountryISOs, value, "f");
1325
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_setupCountries).call(this);
1293
1326
  }
1294
1327
  get supportedCountryISOs() {
1295
- return this._supportedCountryISOs;
1328
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__supportedCountryISOs, "f") || [];
1296
1329
  }
1297
1330
  set selectedCountry(newCountry) {
1298
- if (!this.countriesAreEqual(this.selectedCountry, newCountry)) {
1299
- if (newCountry && newCountry.iso2) {
1300
- const isoCountry = this.countries.find((country) => country.iso2 === newCountry.iso2);
1331
+ if (!__classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_countriesAreEqual).call(this, this.selectedCountry, newCountry)) {
1332
+ const newCountryIso = newCountry && newCountry.iso2;
1333
+ if (newCountryIso) {
1334
+ const isoCountry = this.countries.find((country) => country.iso2 === newCountryIso);
1301
1335
  if (isoCountry) {
1302
1336
  newCountry = isoCountry;
1303
1337
  }
1304
1338
  }
1305
- this._selectedCountry = newCountry;
1306
- this.sortCountriesWithSelectedAndDefault(newCountry);
1307
- this.internalFormChange = true;
1339
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent__selectedCountry, newCountry, "f");
1340
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault).call(this, newCountry);
1341
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_internalFormChange, true, "f");
1308
1342
  this.countrySearchFormControl.setValue(this.selectedCountry);
1309
- if (!this.isInitialChange) {
1343
+ if (!__classPrivateFieldGet(this, _SkyCountryFieldComponent_isInitialChange, "f")) {
1310
1344
  this.onChange(newCountry);
1311
1345
  this.onTouched();
1312
1346
  this.selectedCountryChange.emit(newCountry);
1313
1347
  }
1314
1348
  // Do not mark the field as "dirty"
1315
1349
  // if the field has been initialized with a value.
1316
- if (this.isInitialChange && this.ngControl && this.ngControl.control) {
1317
- this.ngControl.control.markAsPristine();
1350
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_isInitialChange, "f") && __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f") && __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f").control) {
1351
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f").control.markAsPristine();
1318
1352
  }
1319
- this.isInitialChange = false;
1353
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_isInitialChange, false, "f");
1320
1354
  /**
1321
1355
  * The second portion of this if statement is complex. The control type check ensures that
1322
1356
  * we only watch for the initial time through this function on reactive forms. However,
@@ -1324,39 +1358,38 @@ class SkyCountryFieldComponent {
1324
1358
  * so we have to check for when the non-null pass through happens.
1325
1359
  */
1326
1360
  }
1327
- else if (this.isInitialChange &&
1328
- (!(this.ngControl instanceof NgModel) || newCountry !== null)) {
1329
- this.isInitialChange = false;
1361
+ else if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_isInitialChange, "f") &&
1362
+ (!(__classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f") instanceof NgModel) || newCountry !== null)) {
1363
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_isInitialChange, false, "f");
1330
1364
  }
1331
1365
  }
1332
1366
  get selectedCountry() {
1333
- return this._selectedCountry;
1367
+ return __classPrivateFieldGet(this, _SkyCountryFieldComponent__selectedCountry, "f");
1334
1368
  }
1335
1369
  /**
1336
1370
  * Angular lifecycle hook for when the component is initialized
1337
1371
  * @internal
1338
1372
  */
1339
1373
  ngOnInit() {
1340
- this.updateInputBox();
1341
- this.ngControl = this.injector.get(NgControl, null);
1342
- this.inputId = `sky-country-field-input-${uniqueId++}`;
1343
- if (this.ngControl) {
1344
- this.ngControl.valueAccessor = this;
1374
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_updateInputBox).call(this);
1375
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_ngControl, __classPrivateFieldGet(this, _SkyCountryFieldComponent_injector, "f").get(NgControl, null), "f");
1376
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f")) {
1377
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngControl, "f").valueAccessor = this;
1345
1378
  }
1346
1379
  else {
1347
1380
  /**
1348
1381
  * The initial change boolean is to determine if the form is setting the value. When no form
1349
1382
  * is present we don't want to ignore the first change.
1350
1383
  */
1351
- this.isInitialChange = false;
1384
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_isInitialChange, false, "f");
1352
1385
  }
1353
1386
  if (!this.defaultCountry) {
1354
- this.defaultCountry = 'us';
1387
+ this.defaultCountry = DEFAULT_COUNTRY_CODE;
1355
1388
  }
1356
1389
  this.countrySearchFormControl.valueChanges
1357
- .pipe(takeUntil(this.ngUnsubscribe))
1390
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyCountryFieldComponent_ngUnsubscribe, "f")))
1358
1391
  .subscribe((newValue) => {
1359
- if (newValue && !this.internalFormChange) {
1392
+ if (newValue && !__classPrivateFieldGet(this, _SkyCountryFieldComponent_internalFormChange, "f")) {
1360
1393
  this.selectedCountry = newValue;
1361
1394
  }
1362
1395
  });
@@ -1366,11 +1399,11 @@ class SkyCountryFieldComponent {
1366
1399
  }
1367
1400
  ngAfterViewInit() {
1368
1401
  /* istanbul ignore else */
1369
- if (this.themeSvc) {
1370
- this.themeSvc.settingsChange.subscribe((change) => {
1402
+ if (__classPrivateFieldGet(this, _SkyCountryFieldComponent_themeSvc, "f")) {
1403
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_themeSvc, "f").settingsChange.subscribe((change) => {
1371
1404
  this.currentTheme = change.currentSettings.theme.name;
1372
- this.updateInputBox();
1373
- this.changeDetector.markForCheck();
1405
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_updateInputBox).call(this);
1406
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1374
1407
  });
1375
1408
  }
1376
1409
  }
@@ -1380,9 +1413,9 @@ class SkyCountryFieldComponent {
1380
1413
  */
1381
1414
  ngOnDestroy() {
1382
1415
  this.selectedCountryChange.complete();
1383
- this.removeEventListeners();
1384
- this.ngUnsubscribe.next();
1385
- this.ngUnsubscribe.complete();
1416
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_removeEventListeners).call(this);
1417
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngUnsubscribe, "f").next();
1418
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_ngUnsubscribe, "f").complete();
1386
1419
  }
1387
1420
  /**
1388
1421
  * Sets the component's touched value when the autocomplete is blurred
@@ -1424,124 +1457,119 @@ class SkyCountryFieldComponent {
1424
1457
  return { unsupportedCountry: true };
1425
1458
  }
1426
1459
  }
1427
- return;
1460
+ return null;
1428
1461
  }
1429
1462
  writeValue(value) {
1430
1463
  this.selectedCountry = value;
1431
- this.changeDetector.markForCheck();
1464
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1432
1465
  }
1433
1466
  addEventListeners() {
1434
- this.removeEventListeners();
1435
- this.idle = new Subject();
1436
- const documentObj = this.windowRef.nativeWindow.document;
1467
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_removeEventListeners).call(this);
1468
+ __classPrivateFieldSet(this, _SkyCountryFieldComponent_idle, new Subject(), "f");
1469
+ const documentObj = __classPrivateFieldGet(this, _SkyCountryFieldComponent_windowRef, "f").nativeWindow.document;
1437
1470
  fromEvent(documentObj, 'mousedown')
1438
- .pipe(takeUntil(this.idle))
1471
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f")))
1439
1472
  .subscribe((event) => {
1440
- this.isInputFocused = this.elRef.nativeElement.contains(event.target);
1441
- this.changeDetector.markForCheck();
1473
+ this.isInputFocused = __classPrivateFieldGet(this, _SkyCountryFieldComponent_elRef, "f").nativeElement.contains(event.target);
1474
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1442
1475
  });
1443
1476
  fromEvent(documentObj, 'focusin')
1444
- .pipe(takeUntil(this.idle))
1477
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f")))
1445
1478
  .subscribe((event) => {
1446
- this.isInputFocused = this.elRef.nativeElement.contains(event.target);
1447
- this.changeDetector.markForCheck();
1479
+ this.isInputFocused = __classPrivateFieldGet(this, _SkyCountryFieldComponent_elRef, "f").nativeElement.contains(event.target);
1480
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_changeDetector, "f").markForCheck();
1448
1481
  });
1449
1482
  }
1450
- countriesAreEqual(country1, country2) {
1451
- if (country1 && country2) {
1452
- return country1.iso2 === country2.iso2;
1453
- }
1454
- // NOTE: We are doing this in this way because template forms will send through `null`
1455
- // and then `undefined` on empty initialization. These are functionally equivalent but will
1456
- // not pass a standard triple equals check.
1457
- return !country1 && !country2;
1458
- }
1459
- countriesEqual(a, b) {
1460
- return a.iso2 === b.iso2 && a.name === b.name;
1461
- }
1462
- removeEventListeners() {
1463
- this.idle.next();
1464
- this.idle.complete();
1465
- }
1466
- setupCountries() {
1467
- var _a, _b;
1483
+ }
1484
+ _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) {
1485
+ if (country1 && country2) {
1486
+ return country1.iso2 === country2.iso2;
1487
+ }
1488
+ // NOTE: We are doing this in this way because template forms will send through `null`
1489
+ // and then `undefined` on empty initialization. These are functionally equivalent but will
1490
+ // not pass a standard triple equals check.
1491
+ return !country1 && !country2;
1492
+ }, _SkyCountryFieldComponent_countriesEqual = function _SkyCountryFieldComponent_countriesEqual(a, b) {
1493
+ return a.iso2 === b.iso2 && a.name === b.name;
1494
+ }, _SkyCountryFieldComponent_removeEventListeners = function _SkyCountryFieldComponent_removeEventListeners() {
1495
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f").next();
1496
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_idle, "f").complete();
1497
+ }, _SkyCountryFieldComponent_setupCountries = function _SkyCountryFieldComponent_setupCountries() {
1498
+ var _a, _b;
1499
+ /**
1500
+ * The json functions here ensures that we get a copy of the array and not the global original.
1501
+ * This ensures that multiple instances of the component don't overwrite the original data.
1502
+ *
1503
+ * We must type the window object as any here as the intl-tel-input library adds its object
1504
+ * to the main window object.
1505
+ */
1506
+ this.countries = JSON.parse(
1507
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1508
+ JSON.stringify(window.intlTelInputGlobals.getCountryData()));
1509
+ // Ignoring coverage here as this will be removed in the next release.
1510
+ // istanbul ignore next
1511
+ if (!this.includePhoneInfo && !this.hideSelectedCountryFlag) {
1512
+ if ((_b = (_a = __classPrivateFieldGet(this, _SkyCountryFieldComponent_elRef, "f").nativeElement.parentElement) === null || _a === void 0 ? void 0 : _a.classList) === null || _b === void 0 ? void 0 : _b.contains('sky-phone-field-country-search')) {
1513
+ this.includePhoneInfo = true;
1514
+ this.hideSelectedCountryFlag = true;
1515
+ }
1516
+ }
1517
+ /* istanbul ignore else */
1518
+ if (!this.includePhoneInfo) {
1468
1519
  /**
1469
- * The json functions here ensures that we get a copy of the array and not the global original.
1470
- * This ensures that multiple instances of the component don't overwrite the original data.
1471
- *
1472
- * We must type the window object as any here as the intl-tel-input library adds its object
1473
- * to the main window object.
1520
+ * The library we get the country data from includes extra phone properties.
1521
+ * We want to remove these unless we are in a phone field
1474
1522
  */
1475
- this.countries = JSON.parse(
1476
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1477
- JSON.stringify(window.intlTelInputGlobals.getCountryData()));
1478
- // Ignoring coverage here as this will be removed in the next release.
1479
- // istanbul ignore next
1480
- if (!this.includePhoneInfo && !this.hideSelectedCountryFlag) {
1481
- if ((_b = (_a = this.elRef.nativeElement.parentElement) === null || _a === void 0 ? void 0 : _a.classList) === null || _b === void 0 ? void 0 : _b.contains('sky-phone-field-country-search')) {
1482
- this.includePhoneInfo = true;
1483
- this.hideSelectedCountryFlag = true;
1484
- }
1485
- }
1486
- /* istanbul ignore else */
1487
- if (!this.includePhoneInfo) {
1488
- /**
1489
- * The library we get the country data from includes extra phone properties.
1490
- * We want to remove these unless we are in a phone field
1491
- */
1492
- this.countries.forEach((country) => {
1493
- delete country.dialCode;
1494
- delete country.areaCodes;
1495
- delete country.priority;
1496
- });
1497
- }
1498
- this.sortCountriesWithSelectedAndDefault(this.selectedCountry);
1499
- if (this.supportedCountryISOs && this.supportedCountryISOs.length > 0) {
1500
- this.countries = this.countries.filter((country) => {
1501
- return this.supportedCountryISOs.indexOf(country.iso2) >= 0;
1502
- });
1503
- }
1523
+ this.countries.forEach((country) => {
1524
+ delete country.dialCode;
1525
+ delete country.areaCodes;
1526
+ delete country.priority;
1527
+ });
1504
1528
  }
1505
- sortCountriesWithSelectedAndDefault(selectedCountry) {
1506
- let selectedCountryIndex;
1507
- let selectedCountryData;
1508
- const sortedNewCountries = this.countries.sort((a, b) => {
1509
- if (((this.defaultCountryData &&
1510
- this.countriesEqual(a, this.defaultCountryData)) ||
1511
- a.name < b.name) &&
1512
- (!this.defaultCountryData ||
1513
- !this.countriesEqual(this.defaultCountryData, b))) {
1514
- return -1;
1515
- }
1516
- else {
1517
- return 1;
1518
- }
1529
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault).call(this, this.selectedCountry);
1530
+ if (this.supportedCountryISOs && this.supportedCountryISOs.length > 0) {
1531
+ this.countries = this.countries.filter((country) => {
1532
+ return this.supportedCountryISOs.indexOf(country.iso2) >= 0;
1519
1533
  });
1520
- if (selectedCountry) {
1521
- // Note: We are looking up this data here to ensure we are using the offical data from the
1522
- // library and not the data provided by the user on initialization of the component
1523
- selectedCountryData = this.countries.find((country) => country.iso2 === selectedCountry.iso2.toLocaleLowerCase());
1524
- selectedCountryIndex = this.countries.indexOf(selectedCountryData);
1525
- if (selectedCountryIndex >= 0) {
1526
- this.countries.splice(selectedCountryIndex, 1);
1527
- sortedNewCountries.splice(0, 0, selectedCountryData);
1528
- }
1529
- }
1530
- this.countries = sortedNewCountries;
1531
1534
  }
1532
- updateInputBox() {
1533
- if (this.inputBoxHostSvc) {
1534
- this.inputBoxHostSvc.populate({
1535
- inputTemplate: this.inputTemplateRef,
1536
- iconsInsetTemplate: this.currentTheme === 'modern'
1537
- ? this.searchIconTemplateRef
1538
- : undefined,
1539
- });
1535
+ }, _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault = function _SkyCountryFieldComponent_sortCountriesWithSelectedAndDefault(selectedCountry) {
1536
+ let selectedCountryIndex;
1537
+ let selectedCountryData;
1538
+ const sortedNewCountries = this.countries.sort((a, b) => {
1539
+ if (((__classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f") &&
1540
+ __classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_countriesEqual).call(this, a, __classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f"))) ||
1541
+ a.name < b.name) &&
1542
+ (!__classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f") ||
1543
+ !__classPrivateFieldGet(this, _SkyCountryFieldComponent_instances, "m", _SkyCountryFieldComponent_countriesEqual).call(this, __classPrivateFieldGet(this, _SkyCountryFieldComponent_defaultCountryData, "f"), b))) {
1544
+ return -1;
1540
1545
  }
1546
+ else {
1547
+ return 1;
1548
+ }
1549
+ });
1550
+ if (selectedCountry) {
1551
+ // Note: We are looking up this data here to ensure we are using the offical data from the
1552
+ // library and not the data provided by the user on initialization of the component
1553
+ selectedCountryData = this.countries.find((country) => country.iso2 === selectedCountry.iso2.toLocaleLowerCase());
1554
+ selectedCountryIndex = this.countries.indexOf(selectedCountryData);
1555
+ if (selectedCountryIndex >= 0) {
1556
+ this.countries.splice(selectedCountryIndex, 1);
1557
+ sortedNewCountries.splice(0, 0, selectedCountryData);
1558
+ }
1559
+ }
1560
+ this.countries = sortedNewCountries;
1561
+ }, _SkyCountryFieldComponent_updateInputBox = function _SkyCountryFieldComponent_updateInputBox() {
1562
+ if (this.inputBoxHostSvc) {
1563
+ this.inputBoxHostSvc.populate({
1564
+ inputTemplate: this.inputTemplateRef,
1565
+ iconsInsetTemplate: this.currentTheme === 'modern'
1566
+ ? this.searchIconTemplateRef
1567
+ : undefined,
1568
+ });
1541
1569
  }
1542
- }
1570
+ };
1543
1571
  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 });
1544
- 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 });
1572
+ 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 });
1545
1573
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyCountryFieldComponent, decorators: [{
1546
1574
  type: Component,
1547
1575
  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"] }]
@@ -1621,49 +1649,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1621
1649
  }]
1622
1650
  }] });
1623
1651
 
1652
+ var _SkySearchAdapterService_instances, _SkySearchAdapterService_renderer, _SkySearchAdapterService_getInputContainerEl, _SkySearchAdapterService_getSearchOpenButtonEl, _SkySearchAdapterService_getSearchContainerEl, _SkySearchAdapterService_getInputEl;
1624
1653
  /**
1625
1654
  * @internal
1626
1655
  */
1627
1656
  class SkySearchAdapterService {
1628
1657
  constructor(renderer) {
1629
- this.renderer = renderer;
1658
+ _SkySearchAdapterService_instances.add(this);
1659
+ _SkySearchAdapterService_renderer.set(this, void 0);
1660
+ __classPrivateFieldSet(this, _SkySearchAdapterService_renderer, renderer, "f");
1630
1661
  }
1631
1662
  selectInput(searchEl) {
1632
- this.getInputEl(searchEl).select();
1663
+ __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputEl).call(this, searchEl).select();
1633
1664
  }
1634
1665
  focusInput(searchEl) {
1635
- this.getInputEl(searchEl).focus();
1666
+ __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputEl).call(this, searchEl).focus();
1636
1667
  }
1637
1668
  startInputAnimation(searchEl) {
1638
- const buttonWidth = this.getSearchOpenButtonEl(searchEl).clientWidth;
1639
- const offsetWidth = this.getSearchContainerEl(searchEl).offsetLeft;
1669
+ const buttonWidth = __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getSearchOpenButtonEl).call(this, searchEl).clientWidth;
1670
+ const offsetWidth = __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getSearchContainerEl).call(this, searchEl).offsetLeft;
1640
1671
  const minWidth = buttonWidth + offsetWidth;
1641
- this.getInputContainerEl(searchEl).style.minWidth =
1672
+ __classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputContainerEl).call(this, searchEl).style.minWidth =
1642
1673
  minWidth.toString() + 'px';
1643
- this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', minWidth.toString() + 'px');
1674
+ __classPrivateFieldGet(this, _SkySearchAdapterService_renderer, "f").setStyle(__classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputContainerEl).call(this, searchEl), 'min-width', minWidth.toString() + 'px');
1644
1675
  }
1645
1676
  endInputAnimation(searchEl) {
1646
- this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', '');
1647
- }
1648
- getInputContainerEl(searchEl) {
1649
- return searchEl.nativeElement.querySelector('.sky-search-input-container');
1650
- }
1651
- getSearchOpenButtonEl(searchEl) {
1652
- return searchEl.nativeElement.querySelector('.sky-search-btn-open');
1653
- }
1654
- getSearchContainerEl(searchEl) {
1655
- return searchEl.nativeElement.querySelector('.sky-search-container');
1656
- }
1657
- getInputEl(searchEl) {
1658
- return searchEl.nativeElement.querySelector('input');
1677
+ __classPrivateFieldGet(this, _SkySearchAdapterService_renderer, "f").setStyle(__classPrivateFieldGet(this, _SkySearchAdapterService_instances, "m", _SkySearchAdapterService_getInputContainerEl).call(this, searchEl), 'min-width', '');
1659
1678
  }
1660
1679
  }
1680
+ _SkySearchAdapterService_renderer = new WeakMap(), _SkySearchAdapterService_instances = new WeakSet(), _SkySearchAdapterService_getInputContainerEl = function _SkySearchAdapterService_getInputContainerEl(searchEl) {
1681
+ return searchEl.nativeElement.querySelector('.sky-search-input-container');
1682
+ }, _SkySearchAdapterService_getSearchOpenButtonEl = function _SkySearchAdapterService_getSearchOpenButtonEl(searchEl) {
1683
+ return searchEl.nativeElement.querySelector('.sky-search-btn-open');
1684
+ }, _SkySearchAdapterService_getSearchContainerEl = function _SkySearchAdapterService_getSearchContainerEl(searchEl) {
1685
+ return searchEl.nativeElement.querySelector('.sky-search-container');
1686
+ }, _SkySearchAdapterService_getInputEl = function _SkySearchAdapterService_getInputEl(searchEl) {
1687
+ return searchEl.nativeElement.querySelector('input');
1688
+ };
1661
1689
  SkySearchAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchAdapterService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
1662
1690
  SkySearchAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchAdapterService });
1663
1691
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySearchAdapterService, decorators: [{
1664
1692
  type: Injectable
1665
1693
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
1666
1694
 
1695
+ var _SkySearchComponent_instances, _SkySearchComponent_changeRef, _SkySearchComponent_elRef, _SkySearchComponent_mediaQueryService, _SkySearchComponent_searchAdapter, _SkySearchComponent_searchUpdated, _SkySearchComponent_searchBindingChanged, _SkySearchComponent_expandModeBindingChanged, _SkySearchComponent_shouldOpenInput, _SkySearchComponent_mediaQueryCallback, _SkySearchComponent_searchShouldCollapse;
1667
1696
  const INPUT_SHOWN_STATE = 'inputShown';
1668
1697
  const INPUT_HIDDEN_STATE = 'inputHidden';
1669
1698
  const EXPAND_MODE_RESPONSIVE = 'responsive';
@@ -1671,10 +1700,7 @@ const EXPAND_MODE_FIT = 'fit';
1671
1700
  const EXPAND_MODE_NONE = 'none';
1672
1701
  class SkySearchComponent {
1673
1702
  constructor(mediaQueryService, elRef, searchAdapter, changeRef) {
1674
- this.mediaQueryService = mediaQueryService;
1675
- this.elRef = elRef;
1676
- this.searchAdapter = searchAdapter;
1677
- this.changeRef = changeRef;
1703
+ _SkySearchComponent_instances.add(this);
1678
1704
  /**
1679
1705
  * Fires when the search text is applied.
1680
1706
  */
@@ -1697,31 +1723,37 @@ class SkySearchComponent {
1697
1723
  this.expandMode = EXPAND_MODE_RESPONSIVE;
1698
1724
  /**
1699
1725
  * Specifies how many milliseconds to wait before searching after users enter text in the search input.
1700
- * @default 0
1701
1726
  */
1702
1727
  this.debounceTime = 0;
1703
1728
  /**
1704
1729
  * Indicates whether to disable the filter button.
1705
- * @default false
1706
1730
  */
1707
1731
  this.disabled = false;
1708
- this.isFullWidth = false;
1709
- this.isCollapsible = true;
1732
+ this.clearButtonShown = false;
1733
+ this.dismissButtonShown = false;
1710
1734
  this.inputAnimate = INPUT_SHOWN_STATE;
1711
- this.searchButtonShown = false;
1735
+ this.isCollapsible = true;
1736
+ this.isFullWidth = false;
1712
1737
  this.mobileSearchShown = false;
1713
- this.dismissButtonShown = false;
1714
- this.clearButtonShown = false;
1715
- this.searchUpdated = new Subject();
1738
+ this.searchButtonShown = false;
1739
+ _SkySearchComponent_changeRef.set(this, void 0);
1740
+ _SkySearchComponent_elRef.set(this, void 0);
1741
+ _SkySearchComponent_mediaQueryService.set(this, void 0);
1742
+ _SkySearchComponent_searchAdapter.set(this, void 0);
1743
+ _SkySearchComponent_searchUpdated.set(this, new Subject());
1744
+ __classPrivateFieldSet(this, _SkySearchComponent_mediaQueryService, mediaQueryService, "f");
1745
+ __classPrivateFieldSet(this, _SkySearchComponent_elRef, elRef, "f");
1746
+ __classPrivateFieldSet(this, _SkySearchComponent_searchAdapter, searchAdapter, "f");
1747
+ __classPrivateFieldSet(this, _SkySearchComponent_changeRef, changeRef, "f");
1716
1748
  }
1717
1749
  ngOnInit() {
1718
- if (this.searchShouldCollapse()) {
1719
- this.breakpointSubscription = this.mediaQueryService.subscribe((args) => {
1720
- this.mediaQueryCallback(args);
1721
- this.changeRef.detectChanges();
1750
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1751
+ this.breakpointSubscription = __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").subscribe((args) => {
1752
+ __classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_mediaQueryCallback).call(this, args);
1753
+ __classPrivateFieldGet(this, _SkySearchComponent_changeRef, "f").detectChanges();
1722
1754
  });
1723
1755
  }
1724
- this.searchUpdated
1756
+ __classPrivateFieldGet(this, _SkySearchComponent_searchUpdated, "f")
1725
1757
  .asObservable()
1726
1758
  .pipe(debounceTime(this.debounceTime), distinctUntilChanged())
1727
1759
  .subscribe((value) => {
@@ -1729,7 +1761,7 @@ class SkySearchComponent {
1729
1761
  });
1730
1762
  }
1731
1763
  ngOnChanges(changes) {
1732
- if (this.expandModeBindingChanged(changes)) {
1764
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_expandModeBindingChanged).call(this, changes)) {
1733
1765
  switch (this.expandMode) {
1734
1766
  case EXPAND_MODE_NONE:
1735
1767
  this.isCollapsible = false;
@@ -1745,18 +1777,18 @@ class SkySearchComponent {
1745
1777
  break;
1746
1778
  }
1747
1779
  }
1748
- if (this.searchBindingChanged(changes)) {
1749
- this.clearButtonShown = this.searchText && this.searchText !== '';
1750
- if (this.shouldOpenInput()) {
1780
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchBindingChanged).call(this, changes)) {
1781
+ this.clearButtonShown = !!(this.searchText && this.searchText !== '');
1782
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_shouldOpenInput).call(this)) {
1751
1783
  this.inputAnimate = INPUT_SHOWN_STATE;
1752
1784
  }
1753
1785
  }
1754
- this.changeRef.detectChanges();
1786
+ __classPrivateFieldGet(this, _SkySearchComponent_changeRef, "f").detectChanges();
1755
1787
  }
1756
1788
  clearSearchText() {
1757
1789
  this.searchText = '';
1758
1790
  this.clearButtonShown = false;
1759
- this.searchAdapter.focusInput(this.elRef);
1791
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").focusInput(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1760
1792
  this.searchChange.emit(this.searchText);
1761
1793
  this.searchApply.emit(this.searchText);
1762
1794
  this.searchClear.emit();
@@ -1774,18 +1806,18 @@ class SkySearchComponent {
1774
1806
  if (searchText !== this.searchText) {
1775
1807
  this.searchText = searchText;
1776
1808
  }
1777
- this.clearButtonShown = searchText && searchText !== '';
1809
+ this.clearButtonShown = !!(searchText && searchText !== '');
1778
1810
  if (searchText && searchText !== '') {
1779
- this.searchAdapter.selectInput(this.elRef);
1811
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").selectInput(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1780
1812
  }
1781
1813
  this.searchApply.emit(searchText);
1782
1814
  }
1783
1815
  searchTextChanged(searchText) {
1784
1816
  this.searchText = searchText;
1785
- this.searchUpdated.next(searchText);
1817
+ __classPrivateFieldGet(this, _SkySearchComponent_searchUpdated, "f").next(searchText);
1786
1818
  }
1787
1819
  toggleSearchInput(showInput) {
1788
- if (this.searchShouldCollapse()) {
1820
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1789
1821
  if (showInput) {
1790
1822
  this.inputAnimate = INPUT_SHOWN_STATE;
1791
1823
  }
@@ -1795,24 +1827,24 @@ class SkySearchComponent {
1795
1827
  }
1796
1828
  }
1797
1829
  inputAnimationStart(event) {
1798
- if (this.searchShouldCollapse()) {
1799
- this.searchAdapter.startInputAnimation(this.elRef);
1830
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1831
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").startInputAnimation(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1800
1832
  if (event.toState === INPUT_SHOWN_STATE &&
1801
- this.mediaQueryService.current === SkyMediaBreakpoints.xs) {
1833
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs) {
1802
1834
  this.mobileSearchShown = true;
1803
1835
  this.searchButtonShown = false;
1804
1836
  }
1805
1837
  }
1806
1838
  }
1807
1839
  inputAnimationEnd(event) {
1808
- if (this.searchShouldCollapse()) {
1809
- this.searchAdapter.endInputAnimation(this.elRef);
1840
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1841
+ __classPrivateFieldGet(this, _SkySearchComponent_searchAdapter, "f").endInputAnimation(__classPrivateFieldGet(this, _SkySearchComponent_elRef, "f"));
1810
1842
  this.searchButtonShown =
1811
1843
  event.toState === INPUT_HIDDEN_STATE &&
1812
- this.mediaQueryService.current === SkyMediaBreakpoints.xs;
1844
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs;
1813
1845
  if ((event.toState === INPUT_HIDDEN_STATE &&
1814
- this.mediaQueryService.current === SkyMediaBreakpoints.xs) ||
1815
- this.mediaQueryService.current !== SkyMediaBreakpoints.xs) {
1846
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs) ||
1847
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current !== SkyMediaBreakpoints.xs) {
1816
1848
  this.mobileSearchShown = false;
1817
1849
  }
1818
1850
  }
@@ -1821,42 +1853,38 @@ class SkySearchComponent {
1821
1853
  if (this.breakpointSubscription) {
1822
1854
  this.breakpointSubscription.unsubscribe();
1823
1855
  }
1824
- this.searchUpdated.complete();
1856
+ __classPrivateFieldGet(this, _SkySearchComponent_searchUpdated, "f").complete();
1825
1857
  }
1826
- searchBindingChanged(changes) {
1827
- return (changes['searchText'] &&
1828
- changes['searchText'].previousValue !== changes['searchText'].currentValue);
1829
- }
1830
- expandModeBindingChanged(changes) {
1831
- return (changes['expandMode'] &&
1832
- changes['expandMode'].previousValue !== changes['expandMode'].currentValue);
1833
- }
1834
- shouldOpenInput() {
1835
- return (this.searchText !== '' &&
1836
- this.mediaQueryService.current === SkyMediaBreakpoints.xs &&
1837
- this.searchShouldCollapse());
1838
- }
1839
- mediaQueryCallback(args) {
1840
- if (this.searchShouldCollapse()) {
1841
- if (args === SkyMediaBreakpoints.xs) {
1842
- this.inputAnimate = INPUT_HIDDEN_STATE;
1843
- }
1844
- else if (this.inputAnimate !== INPUT_SHOWN_STATE) {
1845
- this.inputAnimate = INPUT_SHOWN_STATE;
1846
- }
1847
- else {
1848
- this.mobileSearchShown = false;
1849
- }
1858
+ }
1859
+ _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) {
1860
+ return (changes['searchText'] &&
1861
+ changes['searchText'].previousValue !== changes['searchText'].currentValue);
1862
+ }, _SkySearchComponent_expandModeBindingChanged = function _SkySearchComponent_expandModeBindingChanged(changes) {
1863
+ return (changes['expandMode'] &&
1864
+ changes['expandMode'].previousValue !== changes['expandMode'].currentValue);
1865
+ }, _SkySearchComponent_shouldOpenInput = function _SkySearchComponent_shouldOpenInput() {
1866
+ return (this.searchText !== '' &&
1867
+ __classPrivateFieldGet(this, _SkySearchComponent_mediaQueryService, "f").current === SkyMediaBreakpoints.xs &&
1868
+ __classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this));
1869
+ }, _SkySearchComponent_mediaQueryCallback = function _SkySearchComponent_mediaQueryCallback(args) {
1870
+ if (__classPrivateFieldGet(this, _SkySearchComponent_instances, "m", _SkySearchComponent_searchShouldCollapse).call(this)) {
1871
+ if (args === SkyMediaBreakpoints.xs) {
1872
+ this.inputAnimate = INPUT_HIDDEN_STATE;
1873
+ }
1874
+ else if (this.inputAnimate !== INPUT_SHOWN_STATE) {
1875
+ this.inputAnimate = INPUT_SHOWN_STATE;
1876
+ }
1877
+ else {
1878
+ this.mobileSearchShown = false;
1850
1879
  }
1851
- this.changeRef.markForCheck();
1852
- }
1853
- searchShouldCollapse() {
1854
- return ((this.isCollapsible || this.isCollapsible === undefined) &&
1855
- this.isFullWidth !== true);
1856
1880
  }
1857
- }
1881
+ __classPrivateFieldGet(this, _SkySearchComponent_changeRef, "f").markForCheck();
1882
+ }, _SkySearchComponent_searchShouldCollapse = function _SkySearchComponent_searchShouldCollapse() {
1883
+ return ((this.isCollapsible || this.isCollapsible === undefined) &&
1884
+ this.isFullWidth !== true);
1885
+ };
1858
1886
  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 });
1859
- 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: [
1887
+ 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: [
1860
1888
  trigger('inputState', [
1861
1889
  state(INPUT_HIDDEN_STATE, style({
1862
1890
  opacity: 0,
@@ -1959,6 +1987,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1959
1987
  class SkyLookupShowMoreNativePickerAsyncContext {
1960
1988
  }
1961
1989
 
1990
+ var _SkyLookupShowMoreAsyncModalComponent_instances, _SkyLookupShowMoreAsyncModalComponent_changeDetector, _SkyLookupShowMoreAsyncModalComponent_continuationData, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe, _SkyLookupShowMoreAsyncModalComponent_offset, _SkyLookupShowMoreAsyncModalComponent_loadSearchResults, _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap, _SkyLookupShowMoreAsyncModalComponent_performSearch, _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch;
1962
1991
  /**
1963
1992
  * @internal
1964
1993
  * Internal component to implement the native picker.
@@ -1967,29 +1996,37 @@ class SkyLookupShowMoreAsyncModalComponent {
1967
1996
  constructor(modalInstance, context, changeDetector) {
1968
1997
  this.modalInstance = modalInstance;
1969
1998
  this.context = context;
1970
- this.changeDetector = changeDetector;
1999
+ _SkyLookupShowMoreAsyncModalComponent_instances.add(this);
1971
2000
  /**
1972
2001
  * @internal
1973
2002
  * Fires when users select the button to add new options to the list.
1974
2003
  */
1975
2004
  this.addClick = new Subject();
1976
2005
  this.displayedItems = [];
1977
- this.onlyShowSelected = false;
1978
- this.isSearching = false;
1979
2006
  this.hasMoreItems = false;
1980
2007
  this.isLoadingMore = false;
1981
- this.offset = 0;
1982
- this.ngUnsubscribe = new Subject();
2008
+ this.isSearching = false;
2009
+ this.items = [];
2010
+ this.onlyShowSelected = false;
2011
+ this.repeaterItemTemplate = null;
2012
+ this.selectedIdMap = new Map();
2013
+ _SkyLookupShowMoreAsyncModalComponent_changeDetector.set(this, void 0);
2014
+ _SkyLookupShowMoreAsyncModalComponent_continuationData.set(this, void 0);
2015
+ _SkyLookupShowMoreAsyncModalComponent_currentSearchSub.set(this, void 0);
2016
+ _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe.set(this, new Subject());
2017
+ _SkyLookupShowMoreAsyncModalComponent_offset.set(this, 0);
2018
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_changeDetector, changeDetector, "f");
1983
2019
  }
1984
2020
  ngOnInit() {
2021
+ this.repeaterItemTemplate = this.context.userConfig.itemTemplate || null;
1985
2022
  this.searchText = this.context.initialSearch;
1986
- this.createInitialSelectedItemsMap();
1987
- this.loadSearchResults();
2023
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap).call(this);
2024
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_loadSearchResults).call(this);
1988
2025
  }
1989
2026
  ngOnDestroy() {
1990
- this.cancelCurrentSearch();
1991
- this.ngUnsubscribe.next();
1992
- this.ngUnsubscribe.complete();
2027
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch).call(this);
2028
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe, "f").next();
2029
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_ngUnsubscribe, "f").complete();
1993
2030
  }
1994
2031
  addButtonClicked() {
1995
2032
  this.addClick.next();
@@ -2002,7 +2039,7 @@ class SkyLookupShowMoreAsyncModalComponent {
2002
2039
  this.selectedIdMap.delete(item[this.context.idProperty]);
2003
2040
  }
2004
2041
  this.updateDisplayedItems();
2005
- this.changeDetector.markForCheck();
2042
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_changeDetector, "f").markForCheck();
2006
2043
  }
2007
2044
  itemClick(selectedItem) {
2008
2045
  if (this.context.selectMode === 'single') {
@@ -2031,9 +2068,9 @@ class SkyLookupShowMoreAsyncModalComponent {
2031
2068
  this.updateDisplayedItems();
2032
2069
  }
2033
2070
  searchApplied(searchText) {
2034
- this.offset = 0;
2071
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_offset, 0, "f");
2035
2072
  this.searchText = searchText;
2036
- this.loadSearchResults();
2073
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_loadSearchResults).call(this);
2037
2074
  }
2038
2075
  selectAll() {
2039
2076
  this.selectedIdMap = new Map();
@@ -2043,12 +2080,12 @@ class SkyLookupShowMoreAsyncModalComponent {
2043
2080
  this.updateDisplayedItems();
2044
2081
  }
2045
2082
  infiniteScrollEnd() {
2046
- this.cancelCurrentSearch();
2083
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch).call(this);
2047
2084
  /* Sanity check - else case would only happen if this was called directly */
2048
2085
  /* istanbul ignore else */
2049
2086
  if (this.hasMoreItems) {
2050
2087
  this.isLoadingMore = true;
2051
- this.performSearch((result) => {
2088
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_performSearch).call(this, (result) => {
2052
2089
  this.items = this.items.concat(result.items);
2053
2090
  this.updateDisplayedItems();
2054
2091
  this.isLoadingMore = false;
@@ -2066,38 +2103,6 @@ class SkyLookupShowMoreAsyncModalComponent {
2066
2103
  });
2067
2104
  this.modalInstance.save(selectedItems);
2068
2105
  }
2069
- loadSearchResults() {
2070
- this.cancelCurrentSearch();
2071
- this.isSearching = true;
2072
- this.performSearch((result) => {
2073
- this.isSearching = false;
2074
- this.items = result.items;
2075
- });
2076
- }
2077
- createInitialSelectedItemsMap() {
2078
- this.selectedIdMap = new Map(this.context.initialValue.map((item) => [
2079
- item[this.context.idProperty],
2080
- item,
2081
- ]));
2082
- }
2083
- performSearch(processResults) {
2084
- this.currentSearchSub = this.context
2085
- .searchAsync({
2086
- displayType: 'modal',
2087
- offset: this.offset,
2088
- searchText: this.searchText || '',
2089
- continuationData: this.continuationData,
2090
- })
2091
- .pipe(take(1))
2092
- .subscribe((result) => {
2093
- processResults(result);
2094
- this.continuationData = result.continuationData;
2095
- this.hasMoreItems = result.hasMore;
2096
- this.offset = this.items.length;
2097
- this.updateDisplayedItems();
2098
- this.changeDetector.markForCheck();
2099
- });
2100
- }
2101
2106
  updateDisplayedItems() {
2102
2107
  if (this.onlyShowSelected) {
2103
2108
  this.displayedItems = this.items.filter((item) => this.selectedIdMap.has(item[this.context.idProperty]));
@@ -2106,20 +2111,49 @@ class SkyLookupShowMoreAsyncModalComponent {
2106
2111
  this.displayedItems = this.items;
2107
2112
  }
2108
2113
  }
2109
- cancelCurrentSearch() {
2110
- if (this.currentSearchSub) {
2111
- this.currentSearchSub.unsubscribe();
2112
- this.currentSearchSub = undefined;
2113
- this.isLoadingMore = false;
2114
- this.isSearching = false;
2115
- }
2116
- }
2117
2114
  }
2115
+ _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() {
2116
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch).call(this);
2117
+ this.isSearching = true;
2118
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_instances, "m", _SkyLookupShowMoreAsyncModalComponent_performSearch).call(this, (result) => {
2119
+ this.isSearching = false;
2120
+ this.items = result.items;
2121
+ });
2122
+ }, _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap = function _SkyLookupShowMoreAsyncModalComponent_createInitialSelectedItemsMap() {
2123
+ this.selectedIdMap = new Map(this.context.initialValue.map((item) => [
2124
+ item[this.context.idProperty],
2125
+ item,
2126
+ ]));
2127
+ }, _SkyLookupShowMoreAsyncModalComponent_performSearch = function _SkyLookupShowMoreAsyncModalComponent_performSearch(processResults) {
2128
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, this.context
2129
+ .searchAsync({
2130
+ displayType: 'modal',
2131
+ offset: __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_offset, "f"),
2132
+ searchText: this.searchText || '',
2133
+ continuationData: __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_continuationData, "f"),
2134
+ })
2135
+ .pipe(take(1))
2136
+ .subscribe((result) => {
2137
+ processResults(result);
2138
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_continuationData, result.continuationData, "f");
2139
+ this.hasMoreItems = result.hasMore || false;
2140
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_offset, this.items.length, "f");
2141
+ this.updateDisplayedItems();
2142
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_changeDetector, "f").markForCheck();
2143
+ }), "f");
2144
+ }, _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch = function _SkyLookupShowMoreAsyncModalComponent_cancelCurrentSearch() {
2145
+ if (__classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, "f")) {
2146
+ __classPrivateFieldGet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, "f").unsubscribe();
2147
+ __classPrivateFieldSet(this, _SkyLookupShowMoreAsyncModalComponent_currentSearchSub, undefined, "f");
2148
+ this.isLoadingMore = false;
2149
+ this.isSearching = false;
2150
+ }
2151
+ };
2118
2152
  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 });
2119
- 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 });
2153
+ 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 });
2120
2154
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupShowMoreAsyncModalComponent, decorators: [{
2121
2155
  type: Component,
2122
- 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"] }]
2156
+ 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"] }]
2123
2157
  }], ctorParameters: function () { return [{ type: i1$1.SkyModalInstance }, { type: SkyLookupShowMoreNativePickerAsyncContext }, { type: i0.ChangeDetectorRef }]; } });
2124
2158
 
2125
2159
  /**
@@ -2129,6 +2163,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
2129
2163
  class SkyLookupShowMoreNativePickerContext {
2130
2164
  }
2131
2165
 
2166
+ var _SkyLookupShowMoreModalComponent_changeDetector, _SkyLookupShowMoreModalComponent_itemIndex, _SkyLookupShowMoreModalComponent_ngUnsubscribe;
2132
2167
  /**
2133
2168
  * @internal
2134
2169
  * Internal component to implement the native picker.
@@ -2137,12 +2172,12 @@ class SkyLookupShowMoreModalComponent {
2137
2172
  constructor(modalInstance, context, changeDetector) {
2138
2173
  this.modalInstance = modalInstance;
2139
2174
  this.context = context;
2140
- this.changeDetector = changeDetector;
2141
2175
  /**
2142
2176
  * @internal
2143
2177
  * Fires when users select the button to add new options to the list.
2144
2178
  */
2145
2179
  this.addClick = new Subject();
2180
+ this.items = [];
2146
2181
  this.dataManagerConfig = {
2147
2182
  sortOptions: [
2148
2183
  {
@@ -2162,17 +2197,22 @@ class SkyLookupShowMoreModalComponent {
2162
2197
  this.displayedItems = [];
2163
2198
  this.itemsHaveMore = false;
2164
2199
  this.onlyShowSelected = false;
2200
+ this.repeaterItemTemplate = null;
2201
+ this.searchText = '';
2165
2202
  this.selectedItems = [];
2166
- this.itemIndex = 0;
2167
- this.ngUnsubscribe = new Subject();
2203
+ _SkyLookupShowMoreModalComponent_changeDetector.set(this, void 0);
2204
+ _SkyLookupShowMoreModalComponent_itemIndex.set(this, 0);
2205
+ _SkyLookupShowMoreModalComponent_ngUnsubscribe.set(this, new Subject());
2206
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_changeDetector, changeDetector, "f");
2168
2207
  }
2169
2208
  ngAfterViewInit() {
2209
+ this.repeaterItemTemplate = this.context.userConfig.itemTemplate || null;
2170
2210
  this.searchText = this.context.initialSearch;
2171
2211
  this.addItems();
2172
2212
  }
2173
2213
  ngOnDestroy() {
2174
- this.ngUnsubscribe.next();
2175
- this.ngUnsubscribe.complete();
2214
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_ngUnsubscribe, "f").next();
2215
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_ngUnsubscribe, "f").complete();
2176
2216
  }
2177
2217
  addButtonClicked() {
2178
2218
  this.addClick.next();
@@ -2180,14 +2220,12 @@ class SkyLookupShowMoreModalComponent {
2180
2220
  addItems() {
2181
2221
  if (!this.items || this.items.length === 0) {
2182
2222
  const selectedItems = this.selectedItems.slice();
2183
- this.items = this.context.items
2184
- ? this.context.items.map((item) => {
2185
- return {
2186
- value: item,
2187
- selected: false,
2188
- };
2189
- })
2190
- : [];
2223
+ this.items = this.context.items.map((item) => {
2224
+ return {
2225
+ value: item,
2226
+ selected: false,
2227
+ };
2228
+ });
2191
2229
  this.items.forEach((item) => {
2192
2230
  const isInitialValue = this.context.initialValue === item.value;
2193
2231
  const initialIsArray = Array.isArray(this.context.initialValue);
@@ -2202,18 +2240,18 @@ class SkyLookupShowMoreModalComponent {
2202
2240
  });
2203
2241
  this.selectedItems = selectedItems;
2204
2242
  this.updateDataState();
2205
- this.changeDetector.markForCheck();
2243
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2206
2244
  }
2207
- this.itemIndex = this.itemIndex + 10;
2245
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_itemIndex, __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f") + 10, "f");
2208
2246
  this.searchItems(this.items).then((searchedItems) => {
2209
- this.displayedItems = searchedItems.slice(0, this.itemIndex);
2210
- if (this.itemIndex > searchedItems.length) {
2247
+ this.displayedItems = searchedItems.slice(0, __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f"));
2248
+ if (__classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f") > searchedItems.length) {
2211
2249
  this.itemsHaveMore = false;
2212
2250
  }
2213
2251
  else {
2214
2252
  this.itemsHaveMore = true;
2215
2253
  }
2216
- this.changeDetector.markForCheck();
2254
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2217
2255
  });
2218
2256
  }
2219
2257
  clearAll() {
@@ -2224,7 +2262,7 @@ class SkyLookupShowMoreModalComponent {
2224
2262
  });
2225
2263
  this.selectedItems = [];
2226
2264
  this.updateDataState();
2227
- this.changeDetector.markForCheck();
2265
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2228
2266
  }
2229
2267
  itemClick(selectedItem) {
2230
2268
  if (this.context.selectMode === 'single') {
@@ -2232,12 +2270,13 @@ class SkyLookupShowMoreModalComponent {
2232
2270
  }
2233
2271
  }
2234
2272
  onItemSelect(newSelectState, itemToSelect) {
2273
+ const items = this.items;
2235
2274
  if (this.context.selectMode === 'single') {
2236
2275
  /* Sanity check - single select mode should only alow for a `true` select state */
2237
2276
  /* istanbul ignore else */
2238
2277
  if (newSelectState) {
2239
2278
  itemToSelect.selected = true;
2240
- this.items.forEach((item) => {
2279
+ items.forEach((item) => {
2241
2280
  if (item.value !== itemToSelect.value) {
2242
2281
  item.selected = false;
2243
2282
  }
@@ -2247,20 +2286,20 @@ class SkyLookupShowMoreModalComponent {
2247
2286
  item.selected = false;
2248
2287
  }
2249
2288
  });
2250
- const itemIndex = this.items.findIndex((item) => item.value === itemToSelect.value);
2289
+ const itemIndex = items.findIndex((item) => item.value === itemToSelect.value);
2251
2290
  this.selectedItems = [
2252
- { index: itemIndex, itemData: this.items[itemIndex].value },
2291
+ { index: itemIndex, itemData: items[itemIndex].value },
2253
2292
  ];
2254
2293
  }
2255
2294
  }
2256
2295
  else {
2257
2296
  const selectedItems = this.selectedItems;
2258
- const allItemsIndex = this.items.findIndex((item) => item.value === itemToSelect.value);
2297
+ const allItemsIndex = items.findIndex((item) => item.value === itemToSelect.value);
2259
2298
  const selectedItemsIndex = selectedItems.findIndex((selectedItem) => selectedItem.index === allItemsIndex);
2260
2299
  if (newSelectState && selectedItemsIndex === -1) {
2261
2300
  selectedItems.push({
2262
2301
  index: allItemsIndex,
2263
- itemData: this.items[allItemsIndex].value,
2302
+ itemData: items[allItemsIndex].value,
2264
2303
  });
2265
2304
  }
2266
2305
  else if (!newSelectState && selectedItemsIndex !== -1) {
@@ -2269,12 +2308,12 @@ class SkyLookupShowMoreModalComponent {
2269
2308
  this.selectedItems = selectedItems;
2270
2309
  }
2271
2310
  this.updateDataState();
2272
- this.changeDetector.markForCheck();
2311
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2273
2312
  }
2274
2313
  searchApplied(searchText) {
2275
2314
  /* istanbul ignore else */
2276
2315
  if (this.searchText !== searchText) {
2277
- this.itemIndex = 10;
2316
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_itemIndex, 10, "f");
2278
2317
  }
2279
2318
  this.searchText = searchText;
2280
2319
  this.updateDataState();
@@ -2301,49 +2340,50 @@ class SkyLookupShowMoreModalComponent {
2301
2340
  }
2302
2341
  }
2303
2342
  selectAll() {
2343
+ const items = this.items;
2304
2344
  const selectedItems = this.selectedItems;
2305
2345
  this.displayedItems.forEach((item) => {
2306
2346
  if (!item.selected) {
2307
2347
  item.selected = true;
2308
- const index = this.items.indexOf(item);
2309
- /* Sanity check */
2348
+ const index = items.indexOf(item);
2310
2349
  /* istanbul ignore else */
2311
2350
  if (selectedItems.findIndex((selectedItem) => selectedItem.index === index) < 0) {
2312
2351
  selectedItems.push({
2313
2352
  index: index,
2314
- itemData: this.items[index].value,
2353
+ itemData: items[index].value,
2315
2354
  });
2316
2355
  }
2317
2356
  }
2318
2357
  });
2319
2358
  this.selectedItems = selectedItems;
2320
2359
  this.updateDataState();
2321
- this.changeDetector.markForCheck();
2360
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2322
2361
  }
2323
2362
  updateDataState() {
2363
+ const items = this.items;
2324
2364
  const selectedItems = this.selectedItems;
2325
- this.items.forEach((item, index) => {
2365
+ items.forEach((item, index) => {
2326
2366
  item.selected =
2327
2367
  selectedItems.findIndex((selectedItem) => selectedItem.index === index) !== -1;
2328
2368
  });
2329
- this.searchItems(this.items).then((searchedItems) => {
2369
+ this.searchItems(items).then((searchedItems) => {
2330
2370
  if (this.onlyShowSelected) {
2331
2371
  searchedItems = searchedItems.filter((item) => item.selected);
2332
2372
  }
2333
- this.displayedItems = searchedItems.slice(0, this.itemIndex);
2334
- if (this.itemIndex > searchedItems.length) {
2373
+ this.displayedItems = searchedItems.slice(0, __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f"));
2374
+ if (__classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_itemIndex, "f") > searchedItems.length) {
2335
2375
  this.itemsHaveMore = false;
2336
2376
  }
2337
2377
  else {
2338
2378
  this.itemsHaveMore = true;
2339
2379
  }
2340
- this.changeDetector.markForCheck();
2380
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2341
2381
  });
2342
2382
  }
2343
2383
  updateItemData(data) {
2344
2384
  this.context.items = data;
2345
- this.items = undefined;
2346
- this.itemIndex = 10;
2385
+ this.items = [];
2386
+ __classPrivateFieldSet(this, _SkyLookupShowMoreModalComponent_itemIndex, 10, "f");
2347
2387
  this.selectedItems.forEach((selectedItem) => {
2348
2388
  this.context.items.forEach((item, index) => {
2349
2389
  if (selectedItem.itemData === item) {
@@ -2352,14 +2392,15 @@ class SkyLookupShowMoreModalComponent {
2352
2392
  });
2353
2393
  });
2354
2394
  this.addItems();
2355
- this.changeDetector.markForCheck();
2395
+ __classPrivateFieldGet(this, _SkyLookupShowMoreModalComponent_changeDetector, "f").markForCheck();
2356
2396
  }
2357
2397
  }
2398
+ _SkyLookupShowMoreModalComponent_changeDetector = new WeakMap(), _SkyLookupShowMoreModalComponent_itemIndex = new WeakMap(), _SkyLookupShowMoreModalComponent_ngUnsubscribe = new WeakMap();
2358
2399
  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 });
2359
- 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 });
2400
+ 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 });
2360
2401
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupShowMoreModalComponent, decorators: [{
2361
2402
  type: Component,
2362
- 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"] }]
2403
+ 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"] }]
2363
2404
  }], ctorParameters: function () { return [{ type: i1$1.SkyModalInstance }, { type: SkyLookupShowMoreNativePickerContext }, { type: i0.ChangeDetectorRef }]; } });
2364
2405
 
2365
2406
  /**
@@ -2381,6 +2422,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
2381
2422
  type: Injectable
2382
2423
  }] });
2383
2424
 
2425
+ var _SkyLookupAutocompleteAdapter__descriptorProperty, _SkyLookupAutocompleteAdapter__propertiesToSearch, _SkyLookupAutocompleteAdapter__search;
2384
2426
  /**
2385
2427
  * @internal
2386
2428
  */
@@ -2391,6 +2433,9 @@ class SkyLookupAutocompleteAdapter {
2391
2433
  * returned via an observable.
2392
2434
  */
2393
2435
  this.searchAsync = new EventEmitter();
2436
+ _SkyLookupAutocompleteAdapter__descriptorProperty.set(this, void 0);
2437
+ _SkyLookupAutocompleteAdapter__propertiesToSearch.set(this, void 0);
2438
+ _SkyLookupAutocompleteAdapter__search.set(this, void 0);
2394
2439
  }
2395
2440
  /**
2396
2441
  * Specifies an object property to display in the text input after users
@@ -2398,20 +2443,20 @@ class SkyLookupAutocompleteAdapter {
2398
2443
  * @default "name"
2399
2444
  */
2400
2445
  set descriptorProperty(value) {
2401
- this._descriptorProperty = value;
2446
+ __classPrivateFieldSet(this, _SkyLookupAutocompleteAdapter__descriptorProperty, value, "f");
2402
2447
  }
2403
2448
  get descriptorProperty() {
2404
- return this._descriptorProperty || 'name';
2449
+ return __classPrivateFieldGet(this, _SkyLookupAutocompleteAdapter__descriptorProperty, "f") || 'name';
2405
2450
  }
2406
2451
  /**
2407
2452
  * Specifies an array of object properties to search.
2408
2453
  * @default ["name"]
2409
2454
  */
2410
2455
  set propertiesToSearch(value) {
2411
- this._propertiesToSearch = value;
2456
+ __classPrivateFieldSet(this, _SkyLookupAutocompleteAdapter__propertiesToSearch, value, "f");
2412
2457
  }
2413
2458
  get propertiesToSearch() {
2414
- return this._propertiesToSearch || ['name'];
2459
+ return __classPrivateFieldGet(this, _SkyLookupAutocompleteAdapter__propertiesToSearch, "f") || ['name'];
2415
2460
  }
2416
2461
  /**
2417
2462
  * Specifies a function to dynamically manage the data source when users
@@ -2422,16 +2467,17 @@ class SkyLookupAutocompleteAdapter {
2422
2467
  * `search`.
2423
2468
  */
2424
2469
  set search(value) {
2425
- this._search = value;
2470
+ __classPrivateFieldSet(this, _SkyLookupAutocompleteAdapter__search, value, "f");
2426
2471
  }
2427
2472
  get search() {
2428
- return (this._search ||
2473
+ return (__classPrivateFieldGet(this, _SkyLookupAutocompleteAdapter__search, "f") ||
2429
2474
  skyAutocompleteDefaultSearchFunction({
2430
2475
  propertiesToSearch: this.propertiesToSearch,
2431
2476
  searchFilters: this.searchFilters,
2432
2477
  }));
2433
2478
  }
2434
2479
  }
2480
+ _SkyLookupAutocompleteAdapter__descriptorProperty = new WeakMap(), _SkyLookupAutocompleteAdapter__propertiesToSearch = new WeakMap(), _SkyLookupAutocompleteAdapter__search = new WeakMap();
2435
2481
  SkyLookupAutocompleteAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupAutocompleteAdapter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2436
2482
  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 });
2437
2483
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupAutocompleteAdapter, decorators: [{
@@ -2456,17 +2502,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
2456
2502
  type: Output
2457
2503
  }] } });
2458
2504
 
2505
+ 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;
2459
2506
  class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2460
- constructor(changeDetector, elementRef, windowRef, ngControl, adapter, modalService, resourcesService, inputBoxHostSvc, themeSvc) {
2507
+ constructor(changeDetector, elementRef, windowRef, adapter, modalService, resourcesService, ngControl, inputBoxHostSvc, themeSvc) {
2461
2508
  super();
2462
- this.changeDetector = changeDetector;
2463
- this.elementRef = elementRef;
2464
- this.windowRef = windowRef;
2465
- this.adapter = adapter;
2466
- this.modalService = modalService;
2467
- this.resourcesService = resourcesService;
2468
2509
  this.inputBoxHostSvc = inputBoxHostSvc;
2469
2510
  this.themeSvc = themeSvc;
2511
+ _SkyLookupComponent_instances.add(this);
2470
2512
  /**
2471
2513
  * Indicates whether to disable the lookup field.
2472
2514
  */
@@ -2486,15 +2528,35 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2486
2528
  this.autocompleteController = new Subject();
2487
2529
  this.isInputFocused = false;
2488
2530
  this.tokensController = new Subject();
2489
- this.ngUnsubscribe = new Subject();
2490
- this.idle = new Subject();
2491
- this.markForTokenFocusOnKeyUp = false;
2531
+ _SkyLookupComponent_adapter.set(this, void 0);
2532
+ _SkyLookupComponent_elementRef.set(this, void 0);
2533
+ _SkyLookupComponent_changeDetector.set(this, void 0);
2534
+ _SkyLookupComponent_idle.set(this, new Subject());
2535
+ _SkyLookupComponent_markForTokenFocusOnKeyUp.set(this, false);
2536
+ _SkyLookupComponent_modalService.set(this, void 0);
2537
+ _SkyLookupComponent_ngUnsubscribe.set(this, new Subject());
2538
+ _SkyLookupComponent_openNativePicker.set(this, void 0);
2539
+ _SkyLookupComponent_resourcesService.set(this, void 0);
2540
+ _SkyLookupComponent_windowRef.set(this, void 0);
2541
+ _SkyLookupComponent__autocompleteInputDirective.set(this, void 0);
2542
+ _SkyLookupComponent__data.set(this, void 0);
2543
+ _SkyLookupComponent__selectMode.set(this, void 0);
2544
+ _SkyLookupComponent__tokens.set(this, void 0);
2545
+ _SkyLookupComponent__value.set(this, void 0);
2492
2546
  // Angular automatically constructs these methods.
2493
2547
  // eslint-disable-next-line @typescript-eslint/no-empty-function
2494
2548
  this.onChange = (value) => { };
2495
2549
  // eslint-disable-next-line @typescript-eslint/no-empty-function
2496
2550
  this.onTouched = () => { };
2497
- ngControl.valueAccessor = this;
2551
+ __classPrivateFieldSet(this, _SkyLookupComponent_changeDetector, changeDetector, "f");
2552
+ __classPrivateFieldSet(this, _SkyLookupComponent_elementRef, elementRef, "f");
2553
+ __classPrivateFieldSet(this, _SkyLookupComponent_windowRef, windowRef, "f");
2554
+ __classPrivateFieldSet(this, _SkyLookupComponent_adapter, adapter, "f");
2555
+ __classPrivateFieldSet(this, _SkyLookupComponent_modalService, modalService, "f");
2556
+ __classPrivateFieldSet(this, _SkyLookupComponent_resourcesService, resourcesService, "f");
2557
+ if (ngControl) {
2558
+ ngControl.valueAccessor = this;
2559
+ }
2498
2560
  }
2499
2561
  /**
2500
2562
  * Specifies a data source for the lookup component to search when users
@@ -2503,13 +2565,13 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2503
2565
  * @default []
2504
2566
  */
2505
2567
  set data(value) {
2506
- this._data = value;
2507
- if (this.openNativePicker && this.searchAsync.observers.length === 0) {
2508
- this.openNativePicker.componentInstance.updateItemData(value);
2568
+ __classPrivateFieldSet(this, _SkyLookupComponent__data, value, "f");
2569
+ if (__classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f") && this.searchAsync.observers.length === 0) {
2570
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f").componentInstance.updateItemData(value);
2509
2571
  }
2510
2572
  }
2511
2573
  get data() {
2512
- return this._data;
2574
+ return __classPrivateFieldGet(this, _SkyLookupComponent__data, "f") || [];
2513
2575
  }
2514
2576
  /**
2515
2577
  * Specifies whether users can select one option or multiple options.
@@ -2517,61 +2579,61 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2517
2579
  */
2518
2580
  set selectMode(value) {
2519
2581
  const multipleToSingle = value === 'single' && this.selectMode === 'multiple';
2520
- this._selectMode = value;
2521
- this.updateForSelectMode();
2582
+ __classPrivateFieldSet(this, _SkyLookupComponent__selectMode, value, "f");
2583
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_updateForSelectMode).call(this);
2522
2584
  if (multipleToSingle) {
2523
2585
  if (this.value && this.value.length > 1) {
2524
2586
  // The `setTimeout` is needed to avoid a `ExpressionChangedAfterItHasBeenCheckedError` error in template forms.
2525
2587
  setTimeout(() => {
2526
2588
  this.writeValue([this.value[0]]);
2527
- this.changeDetector.detectChanges();
2589
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").detectChanges();
2528
2590
  });
2529
2591
  }
2530
2592
  }
2531
2593
  }
2532
2594
  get selectMode() {
2533
- return this._selectMode || 'multiple';
2595
+ return __classPrivateFieldGet(this, _SkyLookupComponent__selectMode, "f") || 'multiple';
2534
2596
  }
2535
2597
  get tokens() {
2536
- return this._tokens;
2598
+ return __classPrivateFieldGet(this, _SkyLookupComponent__tokens, "f");
2537
2599
  }
2538
2600
  set tokens(value) {
2539
2601
  // Collapse the tokens into a single token if the user has selected many options.
2540
2602
  if (this.enableShowMore && this.value.length > 5) {
2541
- this.resourcesService
2603
+ __classPrivateFieldGet(this, _SkyLookupComponent_resourcesService, "f")
2542
2604
  .getString('skyux_lookup_tokens_summary', this.value.length.toString())
2543
2605
  .pipe(take(1))
2544
2606
  .subscribe((label) => {
2545
- this._tokens = [
2607
+ __classPrivateFieldSet(this, _SkyLookupComponent__tokens, [
2546
2608
  {
2547
2609
  value: { [this.descriptorProperty]: label },
2548
2610
  },
2549
- ];
2550
- this.changeDetector.markForCheck();
2611
+ ], "f");
2612
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2551
2613
  });
2552
2614
  }
2553
2615
  else {
2554
- this._tokens = value;
2555
- this.changeDetector.markForCheck();
2616
+ __classPrivateFieldSet(this, _SkyLookupComponent__tokens, value, "f");
2617
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2556
2618
  }
2557
2619
  }
2558
2620
  get value() {
2559
- return this._value ? this._value : [];
2621
+ return __classPrivateFieldGet(this, _SkyLookupComponent__value, "f") ? __classPrivateFieldGet(this, _SkyLookupComponent__value, "f") : [];
2560
2622
  }
2561
2623
  set value(newValue) {
2562
- this._value = newValue;
2563
- if (!this.openNativePicker) {
2564
- this.tokens = this.parseTokens(newValue);
2624
+ __classPrivateFieldSet(this, _SkyLookupComponent__value, newValue, "f");
2625
+ if (!__classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f")) {
2626
+ this.tokens = __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_parseTokens).call(this, newValue);
2565
2627
  }
2566
- this.onChange(this._value);
2628
+ this.onChange(__classPrivateFieldGet(this, _SkyLookupComponent__value, "f"));
2567
2629
  this.onTouched();
2568
2630
  }
2569
2631
  set autocompleteInputDirective(value) {
2570
- this._autocompleteInputDirective = value;
2571
- this.updateForSelectMode();
2632
+ __classPrivateFieldSet(this, _SkyLookupComponent__autocompleteInputDirective, value, "f");
2633
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_updateForSelectMode).call(this);
2572
2634
  }
2573
2635
  get autocompleteInputDirective() {
2574
- return this._autocompleteInputDirective;
2636
+ return __classPrivateFieldGet(this, _SkyLookupComponent__autocompleteInputDirective, "f");
2575
2637
  }
2576
2638
  ngOnInit() {
2577
2639
  if (this.inputBoxHostSvc) {
@@ -2590,32 +2652,32 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2590
2652
  // This is required for the autocomplete directive to be set after elements
2591
2653
  // are rearranged when switching themes.
2592
2654
  this.themeSvc.settingsChange
2593
- .pipe(takeUntil(this.ngUnsubscribe))
2655
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_ngUnsubscribe, "f")))
2594
2656
  .subscribe(() => {
2595
- this.changeDetector.markForCheck();
2657
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2596
2658
  });
2597
2659
  }
2598
2660
  }
2599
2661
  ngAfterViewInit() {
2600
2662
  if (!this.disabled) {
2601
- this.addEventListeners();
2663
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_addEventListeners).call(this);
2602
2664
  }
2603
2665
  }
2604
2666
  ngOnDestroy() {
2605
- this.removeEventListeners();
2606
- this.ngUnsubscribe.next();
2607
- this.ngUnsubscribe.complete();
2667
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_removeEventListeners).call(this);
2668
+ __classPrivateFieldGet(this, _SkyLookupComponent_ngUnsubscribe, "f").next();
2669
+ __classPrivateFieldGet(this, _SkyLookupComponent_ngUnsubscribe, "f").complete();
2608
2670
  this.tokensController.complete();
2609
2671
  }
2610
2672
  addButtonClicked() {
2611
2673
  this.addClick.emit({
2612
- itemAdded: (args) => this.onAddButtonComplete(args),
2674
+ itemAdded: (args) => __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_onAddButtonComplete).call(this, args),
2613
2675
  });
2614
2676
  }
2615
2677
  onAutocompleteSelectionChange(change) {
2616
2678
  /* istanbul ignore else */
2617
2679
  if (change.selectedItem) {
2618
- this.addToSelected(change.selectedItem);
2680
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_addToSelected).call(this, change.selectedItem);
2619
2681
  }
2620
2682
  else if (this.selectMode === 'single') {
2621
2683
  this.writeValue([]);
@@ -2630,22 +2692,22 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2630
2692
  }
2631
2693
  if (this.tokens !== change) {
2632
2694
  if (change.length === 0) {
2633
- this.focusInput();
2695
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2634
2696
  }
2635
2697
  // NOTE: We do this here instead of just using the `value` setter because we need to use the
2636
2698
  // set of tokens returned here for the purposes of setting focus (see `onTokensKeyUp`).
2637
- this._value = change.map((token) => {
2699
+ __classPrivateFieldSet(this, _SkyLookupComponent__value, change.map((token) => {
2638
2700
  return token.value;
2639
- });
2701
+ }), "f");
2640
2702
  this.tokens = change;
2641
- this.sendAutocompleteMessage(SkyAutocompleteMessageType.RepositionDropdown);
2642
- this.onChange(this._value);
2703
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendAutocompleteMessage).call(this, SkyAutocompleteMessageType.RepositionDropdown);
2704
+ this.onChange(__classPrivateFieldGet(this, _SkyLookupComponent__value, "f"));
2643
2705
  this.onTouched();
2644
2706
  }
2645
2707
  }
2646
2708
  onTokensFocusIndexOverRange() {
2647
- this.windowRef.nativeWindow.setTimeout(() => {
2648
- this.focusInput();
2709
+ __classPrivateFieldGet(this, _SkyLookupComponent_windowRef, "f").nativeWindow.setTimeout(() => {
2710
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2649
2711
  });
2650
2712
  }
2651
2713
  onTokensKeyUp(event) {
@@ -2653,15 +2715,15 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2653
2715
  if (this.selectMode !== 'single') {
2654
2716
  switch (event.key) {
2655
2717
  case 'Backspace':
2656
- this.sendTokensMessage(SkyTokensMessageType.RemoveActiveToken);
2657
- this.sendTokensMessage(SkyTokensMessageType.FocusPreviousToken);
2718
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.RemoveActiveToken);
2719
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.FocusPreviousToken);
2658
2720
  event.preventDefault();
2659
2721
  break;
2660
2722
  case 'Del':
2661
2723
  case 'Delete':
2662
- this.sendTokensMessage(SkyTokensMessageType.RemoveActiveToken);
2663
- this.windowRef.nativeWindow.setTimeout(() => {
2664
- this.sendTokensMessage(SkyTokensMessageType.FocusActiveToken);
2724
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.RemoveActiveToken);
2725
+ __classPrivateFieldGet(this, _SkyLookupComponent_windowRef, "f").nativeWindow.setTimeout(() => {
2726
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.FocusActiveToken);
2665
2727
  });
2666
2728
  event.preventDefault();
2667
2729
  break;
@@ -2670,7 +2732,7 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2670
2732
  }
2671
2733
  writeValue(value) {
2672
2734
  this.value = value ? value : [];
2673
- this.updateForSelectMode();
2735
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_updateForSelectMode).call(this);
2674
2736
  }
2675
2737
  registerOnChange(fn) {
2676
2738
  this.onChange = fn;
@@ -2680,22 +2742,23 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2680
2742
  }
2681
2743
  // Allows Angular to disable the input.
2682
2744
  setDisabledState(disabled) {
2683
- this.removeEventListeners();
2745
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_removeEventListeners).call(this);
2684
2746
  if (!disabled) {
2685
- this.addEventListeners();
2747
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_addEventListeners).call(this);
2686
2748
  }
2687
2749
  this.disabled = disabled;
2688
- this.changeDetector.markForCheck();
2750
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2689
2751
  }
2690
2752
  clearSearchText() {
2691
2753
  this.autocompleteInputDirective.value = undefined;
2692
- this.autocompleteInputDirective.inputTextValue = undefined;
2754
+ this.autocompleteInputDirective.inputTextValue = '';
2693
2755
  }
2694
2756
  // Handles when to focus on the tokens.
2695
2757
  // Check for empty search text on keydown, before the escape key is fully pressed.
2696
2758
  // (Otherwise, a single character being escaped would register as empty on keyup.)
2697
2759
  // If empty on keydown, set a flag so that the appropriate action can be taken on keyup.
2698
- inputKeydown(event, value) {
2760
+ inputKeydown(event) {
2761
+ const value = event.target.value;
2699
2762
  /* Sanity check as this should only be called when in multiple select mode */
2700
2763
  /* istanbul ignore else */
2701
2764
  if (this.selectMode !== 'single') {
@@ -2707,10 +2770,10 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2707
2770
  case 'Backspace':
2708
2771
  case 'Left':
2709
2772
  if (value) {
2710
- this.markForTokenFocusOnKeyUp = false;
2773
+ __classPrivateFieldSet(this, _SkyLookupComponent_markForTokenFocusOnKeyUp, false, "f");
2711
2774
  }
2712
2775
  else {
2713
- this.markForTokenFocusOnKeyUp = true;
2776
+ __classPrivateFieldSet(this, _SkyLookupComponent_markForTokenFocusOnKeyUp, true, "f");
2714
2777
  }
2715
2778
  break;
2716
2779
  default:
@@ -2731,8 +2794,8 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2731
2794
  case 'Backspace':
2732
2795
  case 'Left':
2733
2796
  /* istanbul ignore else */
2734
- if (this.markForTokenFocusOnKeyUp) {
2735
- this.sendTokensMessage(SkyTokensMessageType.FocusLastToken);
2797
+ if (__classPrivateFieldGet(this, _SkyLookupComponent_markForTokenFocusOnKeyUp, "f")) {
2798
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendTokensMessage).call(this, SkyTokensMessageType.FocusLastToken);
2736
2799
  event.preventDefault();
2737
2800
  }
2738
2801
  break;
@@ -2746,7 +2809,7 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2746
2809
  if (this.disabled) {
2747
2810
  return;
2748
2811
  }
2749
- this.sendAutocompleteMessage(SkyAutocompleteMessageType.CloseDropdown);
2812
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_sendAutocompleteMessage).call(this, SkyAutocompleteMessageType.CloseDropdown);
2750
2813
  let isValueInTextBox = false;
2751
2814
  if (this.selectMode === 'single') {
2752
2815
  isValueInTextBox =
@@ -2764,67 +2827,23 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2764
2827
  this.openPicker(event.inputValue);
2765
2828
  }
2766
2829
  }
2767
- createNativePickerInstance(initialSearch) {
2768
- var _a;
2769
- const initialValue = this.value;
2770
- const modalConfig = ((_a = this.showMoreConfig) === null || _a === void 0 ? void 0 : _a.nativePickerConfig) || {};
2771
- if (!modalConfig.itemTemplate) {
2772
- modalConfig.itemTemplate = this.searchResultTemplate;
2773
- }
2774
- let contextProviderType;
2775
- let contextProviderValue;
2776
- let modalComponentType;
2777
- if (this.searchAsync.observers.length > 0) {
2778
- contextProviderType = SkyLookupShowMoreNativePickerAsyncContext;
2779
- modalComponentType = SkyLookupShowMoreAsyncModalComponent;
2780
- contextProviderValue = new SkyLookupShowMoreNativePickerAsyncContext();
2781
- contextProviderValue.idProperty = this.idProperty;
2782
- contextProviderValue.searchAsync = (args) => {
2783
- this.searchAsync.emit(args);
2784
- return args.result;
2785
- };
2786
- }
2787
- else {
2788
- contextProviderType = SkyLookupShowMoreNativePickerContext;
2789
- modalComponentType = SkyLookupShowMoreModalComponent;
2790
- contextProviderValue = new SkyLookupShowMoreNativePickerContext();
2791
- contextProviderValue.items = this.data;
2792
- contextProviderValue.search = this.search;
2793
- }
2794
- contextProviderValue.descriptorProperty = this.descriptorProperty;
2795
- contextProviderValue.initialSearch = initialSearch;
2796
- contextProviderValue.initialValue = initialValue;
2797
- contextProviderValue.selectMode = this.selectMode;
2798
- contextProviderValue.showAddButton = this.showAddButton;
2799
- contextProviderValue.userConfig = modalConfig;
2800
- return this.modalService.open(modalComponentType, {
2801
- providers: [
2802
- {
2803
- provide: contextProviderType,
2804
- useValue: contextProviderValue,
2805
- },
2806
- ],
2807
- size: 'large',
2808
- wrapperClass: this.wrapperClass,
2809
- });
2810
- }
2811
2830
  openPicker(initialSearch) {
2812
2831
  var _a;
2813
2832
  if ((_a = this.showMoreConfig) === null || _a === void 0 ? void 0 : _a.customPicker) {
2814
2833
  this.showMoreConfig.customPicker.open({
2815
2834
  items: this.data,
2816
- initialSearch: initialSearch,
2835
+ initialSearch,
2817
2836
  initialValue: this.value,
2818
2837
  });
2819
2838
  }
2820
2839
  else {
2821
2840
  const initialValue = this.value;
2822
- this.openNativePicker = this.createNativePickerInstance(initialSearch);
2823
- this.openNativePicker.componentInstance.addClick.subscribe(() => {
2841
+ __classPrivateFieldSet(this, _SkyLookupComponent_openNativePicker, __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_createNativePickerInstance).call(this, initialSearch), "f");
2842
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f").componentInstance.addClick.subscribe(() => {
2824
2843
  this.addButtonClicked();
2825
2844
  });
2826
- this.openNativePicker.closed.subscribe((closeArgs) => {
2827
- this.openNativePicker = undefined;
2845
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f").closed.subscribe((closeArgs) => {
2846
+ __classPrivateFieldSet(this, _SkyLookupComponent_openNativePicker, undefined, "f");
2828
2847
  if (closeArgs.reason === 'save') {
2829
2848
  let selectedItems = [];
2830
2849
  if (this.searchAsync.observers.length > 0) {
@@ -2844,132 +2863,167 @@ class SkyLookupComponent extends SkyLookupAutocompleteAdapter {
2844
2863
  else {
2845
2864
  this.writeValue(initialValue);
2846
2865
  }
2847
- this.focusInput();
2848
- this.changeDetector.markForCheck();
2866
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2867
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2849
2868
  });
2850
2869
  }
2851
2870
  }
2852
2871
  onSearchAsync(args) {
2853
2872
  this.searchAsync.emit(args);
2854
2873
  }
2855
- addToSelected(item) {
2856
- let selectedItems;
2857
- if (this.selectMode === 'single') {
2858
- selectedItems = [item];
2859
- }
2860
- else {
2861
- selectedItems = this.value;
2862
- // If items have a unique identifier, don't allow the same item to be added twice.
2863
- if (!this.idProperty ||
2864
- !this.value.some((existingItem) => existingItem[this.idProperty] === item[this.idProperty])) {
2865
- selectedItems.push(item);
2866
- }
2867
- this.clearSearchText();
2868
- }
2869
- this.writeValue(selectedItems);
2870
- }
2871
- addEventListeners() {
2872
- this.idle = new Subject();
2873
- this.focusInputOnHostClick();
2874
- }
2875
- removeEventListeners() {
2876
- this.idle.next();
2877
- this.idle.complete();
2874
+ }
2875
+ _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) {
2876
+ var _a;
2877
+ const initialValue = this.value;
2878
+ const modalConfig = ((_a = this.showMoreConfig) === null || _a === void 0 ? void 0 : _a.nativePickerConfig) || {};
2879
+ if (!modalConfig.itemTemplate) {
2880
+ modalConfig.itemTemplate = this.searchResultTemplate;
2881
+ }
2882
+ let contextProviderType;
2883
+ let contextProviderValue;
2884
+ let modalComponentType;
2885
+ if (this.searchAsync.observers.length > 0) {
2886
+ contextProviderType = SkyLookupShowMoreNativePickerAsyncContext;
2887
+ modalComponentType = SkyLookupShowMoreAsyncModalComponent;
2888
+ contextProviderValue = new SkyLookupShowMoreNativePickerAsyncContext();
2889
+ contextProviderValue.idProperty = this.idProperty;
2890
+ contextProviderValue.searchAsync = (args) => {
2891
+ this.searchAsync.emit(args);
2892
+ return args.result;
2893
+ };
2878
2894
  }
2879
- focusInputOnHostClick() {
2880
- let hostElement = !this.inputBoxHostSvc
2881
- ? this.elementRef.nativeElement
2895
+ else {
2896
+ contextProviderType = SkyLookupShowMoreNativePickerContext;
2897
+ modalComponentType = SkyLookupShowMoreModalComponent;
2898
+ contextProviderValue = new SkyLookupShowMoreNativePickerContext();
2899
+ contextProviderValue.items = this.data;
2900
+ contextProviderValue.search = this.search;
2901
+ }
2902
+ contextProviderValue.descriptorProperty = this.descriptorProperty;
2903
+ contextProviderValue.initialSearch = initialSearch;
2904
+ contextProviderValue.initialValue = initialValue;
2905
+ contextProviderValue.selectMode = this.selectMode;
2906
+ contextProviderValue.showAddButton = this.showAddButton;
2907
+ contextProviderValue.userConfig = modalConfig;
2908
+ return __classPrivateFieldGet(this, _SkyLookupComponent_modalService, "f").open(modalComponentType, {
2909
+ providers: [
2910
+ {
2911
+ provide: contextProviderType,
2912
+ useValue: contextProviderValue,
2913
+ },
2914
+ ],
2915
+ size: 'large',
2916
+ wrapperClass: this.wrapperClass,
2917
+ });
2918
+ }, _SkyLookupComponent_addToSelected = function _SkyLookupComponent_addToSelected(item) {
2919
+ let selectedItems;
2920
+ if (this.selectMode === 'single') {
2921
+ selectedItems = [item];
2922
+ }
2923
+ else {
2924
+ selectedItems = this.value;
2925
+ const idProperty = this.idProperty || '';
2926
+ // If items have a unique identifier, don't allow the same item to be added twice.
2927
+ if (!this.idProperty ||
2928
+ !this.value.some((existingItem) => existingItem[idProperty] === item[idProperty])) {
2929
+ selectedItems.push(item);
2930
+ }
2931
+ this.clearSearchText();
2932
+ }
2933
+ this.writeValue(selectedItems);
2934
+ }, _SkyLookupComponent_addEventListeners = function _SkyLookupComponent_addEventListeners() {
2935
+ __classPrivateFieldSet(this, _SkyLookupComponent_idle, new Subject(), "f");
2936
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInputOnHostClick).call(this);
2937
+ }, _SkyLookupComponent_removeEventListeners = function _SkyLookupComponent_removeEventListeners() {
2938
+ __classPrivateFieldGet(this, _SkyLookupComponent_idle, "f").next();
2939
+ __classPrivateFieldGet(this, _SkyLookupComponent_idle, "f").complete();
2940
+ }, _SkyLookupComponent_focusInputOnHostClick = function _SkyLookupComponent_focusInputOnHostClick() {
2941
+ let hostElement = !this.inputBoxHostSvc
2942
+ ? __classPrivateFieldGet(this, _SkyLookupComponent_elementRef, "f").nativeElement
2943
+ : this.lookupWrapperRef.nativeElement;
2944
+ const documentObj = __classPrivateFieldGet(this, _SkyLookupComponent_windowRef, "f").nativeWindow.document;
2945
+ // Handles focusing the input when the host is clicked.
2946
+ // The input should NOT be focused if other elements (tokens, etc.)
2947
+ // are currently focused or being tabbed through.
2948
+ fromEvent(documentObj, 'mousedown')
2949
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_idle, "f")))
2950
+ .subscribe((event) => {
2951
+ hostElement = !this.inputBoxHostSvc
2952
+ ? __classPrivateFieldGet(this, _SkyLookupComponent_elementRef, "f").nativeElement
2882
2953
  : this.lookupWrapperRef.nativeElement;
2883
- const documentObj = this.windowRef.nativeWindow.document;
2884
- // Handles focusing the input when the host is clicked.
2885
- // The input should NOT be focused if other elements (tokens, etc.)
2886
- // are currently focused or being tabbed through.
2887
- fromEvent(documentObj, 'mousedown')
2888
- .pipe(takeUntil(this.idle))
2889
- .subscribe((event) => {
2890
- hostElement = !this.inputBoxHostSvc
2891
- ? this.elementRef.nativeElement
2892
- : this.lookupWrapperRef.nativeElement;
2893
- this.isInputFocused = hostElement.contains(event.target);
2894
- this.changeDetector.markForCheck();
2895
- });
2896
- fromEvent(documentObj, 'focusin')
2897
- .pipe(takeUntil(this.idle))
2898
- .subscribe((event) => {
2899
- hostElement = !this.inputBoxHostSvc
2900
- ? this.elementRef.nativeElement
2901
- : this.lookupWrapperRef.nativeElement;
2902
- this.isInputFocused = hostElement.contains(event.target);
2903
- this.changeDetector.markForCheck();
2904
- });
2905
- fromEvent(hostElement, 'mouseup')
2906
- .pipe(takeUntil(this.idle))
2907
- .subscribe(() => {
2908
- const classList = documentObj.activeElement.classList;
2909
- if (!classList || !classList.contains('sky-token')) {
2910
- this.focusInput();
2911
- }
2912
- });
2913
- }
2914
- focusInput() {
2915
- this.adapter.focusInput(this.lookupWrapperRef);
2916
- }
2917
- onAddButtonComplete(args) {
2918
- if (args.data) {
2919
- this.data = args.data;
2954
+ this.isInputFocused = hostElement.contains(event.target);
2955
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2956
+ });
2957
+ fromEvent(documentObj, 'focusin')
2958
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_idle, "f")))
2959
+ .subscribe((event) => {
2960
+ hostElement = !this.inputBoxHostSvc
2961
+ ? __classPrivateFieldGet(this, _SkyLookupComponent_elementRef, "f").nativeElement
2962
+ : this.lookupWrapperRef.nativeElement;
2963
+ this.isInputFocused = hostElement.contains(event.target);
2964
+ __classPrivateFieldGet(this, _SkyLookupComponent_changeDetector, "f").markForCheck();
2965
+ });
2966
+ fromEvent(hostElement, 'mouseup')
2967
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyLookupComponent_idle, "f")))
2968
+ .subscribe(() => {
2969
+ const classList = documentObj.activeElement.classList;
2970
+ if (!classList || !classList.contains('sky-token')) {
2971
+ __classPrivateFieldGet(this, _SkyLookupComponent_instances, "m", _SkyLookupComponent_focusInput).call(this);
2972
+ }
2973
+ });
2974
+ }, _SkyLookupComponent_focusInput = function _SkyLookupComponent_focusInput() {
2975
+ __classPrivateFieldGet(this, _SkyLookupComponent_adapter, "f").focusInput(this.lookupWrapperRef);
2976
+ }, _SkyLookupComponent_onAddButtonComplete = function _SkyLookupComponent_onAddButtonComplete(args) {
2977
+ if (args.data) {
2978
+ this.data = args.data;
2979
+ }
2980
+ if (this.data.indexOf(args.item) >= 0) {
2981
+ if (__classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f")) {
2982
+ __classPrivateFieldGet(this, _SkyLookupComponent_openNativePicker, "f")
2983
+ .componentInstance.onItemSelect(true, { value: args.item, selected: false });
2920
2984
  }
2921
- if (this.data.indexOf(args.item) >= 0) {
2922
- if (this.openNativePicker) {
2923
- this.openNativePicker
2924
- .componentInstance.onItemSelect(true, { value: args.item, selected: false });
2985
+ else {
2986
+ let newValue = this.value;
2987
+ if (this.selectMode === 'multiple') {
2988
+ newValue = this.value.concat(args.item);
2925
2989
  }
2926
2990
  else {
2927
- let newValue = this.value;
2928
- if (this.selectMode === 'multiple') {
2929
- newValue = this.value.concat(args.item);
2930
- }
2931
- else {
2932
- newValue = [args.item];
2933
- }
2934
- this.writeValue(newValue);
2991
+ newValue = [args.item];
2935
2992
  }
2993
+ this.writeValue(newValue);
2936
2994
  }
2937
2995
  }
2938
- parseTokens(data) {
2939
- return data.map((item) => {
2940
- return {
2941
- value: item,
2942
- };
2943
- });
2944
- }
2945
- sendAutocompleteMessage(type) {
2946
- this.autocompleteController.next({ type });
2947
- }
2948
- sendTokensMessage(type) {
2949
- this.tokensController.next({ type });
2950
- }
2951
- updateForSelectMode() {
2952
- if (this.autocompleteInputDirective) {
2953
- if (this.selectMode === 'single') {
2954
- this.autocompleteInputDirective.value = this.value && this.value[0];
2955
- }
2956
- else {
2957
- this.clearSearchText();
2958
- }
2996
+ }, _SkyLookupComponent_parseTokens = function _SkyLookupComponent_parseTokens(data) {
2997
+ return data.map((item) => {
2998
+ return {
2999
+ value: item,
3000
+ };
3001
+ });
3002
+ }, _SkyLookupComponent_sendAutocompleteMessage = function _SkyLookupComponent_sendAutocompleteMessage(type) {
3003
+ this.autocompleteController.next({ type });
3004
+ }, _SkyLookupComponent_sendTokensMessage = function _SkyLookupComponent_sendTokensMessage(type) {
3005
+ this.tokensController.next({ type });
3006
+ }, _SkyLookupComponent_updateForSelectMode = function _SkyLookupComponent_updateForSelectMode() {
3007
+ if (this.autocompleteInputDirective) {
3008
+ if (this.selectMode === 'single') {
3009
+ this.autocompleteInputDirective.value = this.value && this.value[0];
3010
+ }
3011
+ else {
3012
+ this.clearSearchText();
2959
3013
  }
2960
3014
  }
2961
- }
2962
- 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 });
2963
- 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 });
3015
+ };
3016
+ 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 });
3017
+ 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 });
2964
3018
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyLookupComponent, decorators: [{
2965
3019
  type: Component,
2966
- 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"] }]
3020
+ 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"] }]
2967
3021
  }], ctorParameters: function () {
2968
- return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.SkyAppWindowRef }, { type: i8.NgControl, decorators: [{
3022
+ return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.SkyAppWindowRef }, { type: SkyLookupAdapterService }, { type: i1$1.SkyModalService }, { type: i4$1.SkyLibResourcesService }, { type: i8.NgControl, decorators: [{
2969
3023
  type: Self
2970
3024
  }, {
2971
3025
  type: Optional
2972
- }] }, { type: SkyLookupAdapterService }, { type: i1$1.SkyModalService }, { type: i5.SkyLibResourcesService }, { type: i6.SkyInputBoxHostService, decorators: [{
3026
+ }] }, { type: i6.SkyInputBoxHostService, decorators: [{
2973
3027
  type: Optional
2974
3028
  }] }, { type: i7.SkyThemeService, decorators: [{
2975
3029
  type: Optional