@skyux/lookup 5.2.2 → 5.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 (206) hide show
  1. package/README.md +6 -4
  2. package/documentation.json +409 -23
  3. package/esm2015/index.js +32 -0
  4. package/esm2015/index.js.map +1 -0
  5. package/esm2015/lib/modules/autocomplete/autocomplete-adapter.service.js +62 -0
  6. package/esm2015/lib/modules/autocomplete/autocomplete-adapter.service.js.map +1 -0
  7. package/esm2015/lib/modules/autocomplete/autocomplete-default-search-function.js +39 -0
  8. package/esm2015/lib/modules/autocomplete/autocomplete-default-search-function.js.map +1 -0
  9. package/esm2015/lib/modules/autocomplete/autocomplete-input.directive.js +220 -0
  10. package/esm2015/lib/modules/autocomplete/autocomplete-input.directive.js.map +1 -0
  11. package/esm2015/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.js +19 -0
  12. package/esm2015/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.js.map +1 -0
  13. package/esm2015/lib/modules/autocomplete/autocomplete.component.js +732 -0
  14. package/esm2015/lib/modules/autocomplete/autocomplete.component.js.map +1 -0
  15. package/esm2015/lib/modules/autocomplete/autocomplete.module.js +65 -0
  16. package/esm2015/lib/modules/autocomplete/autocomplete.module.js.map +1 -0
  17. package/esm2015/lib/modules/autocomplete/types/autocomplete-default-search-function-options.js +2 -0
  18. package/esm2015/lib/modules/autocomplete/types/autocomplete-default-search-function-options.js.map +1 -0
  19. package/esm2015/lib/modules/autocomplete/types/autocomplete-input-text-change.js +2 -0
  20. package/esm2015/lib/modules/autocomplete/types/autocomplete-input-text-change.js.map +1 -0
  21. package/esm2015/lib/modules/autocomplete/types/autocomplete-message-type.js +15 -0
  22. package/esm2015/lib/modules/autocomplete/types/autocomplete-message-type.js.map +1 -0
  23. package/esm2015/lib/modules/autocomplete/types/autocomplete-message.js +2 -0
  24. package/esm2015/lib/modules/autocomplete/types/autocomplete-message.js.map +1 -0
  25. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-args.js +2 -0
  26. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-args.js.map +1 -0
  27. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-function.js +2 -0
  28. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-function.js.map +1 -0
  29. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.js +2 -0
  30. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.js.map +1 -0
  31. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result.js +2 -0
  32. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result.js.map +1 -0
  33. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-filter.js +2 -0
  34. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-filter.js.map +1 -0
  35. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-response.js +2 -0
  36. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-response.js.map +1 -0
  37. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function.js +2 -0
  38. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function.js.map +1 -0
  39. package/esm2015/lib/modules/autocomplete/types/autocomplete-selection-change.js +2 -0
  40. package/esm2015/lib/modules/autocomplete/types/autocomplete-selection-change.js.map +1 -0
  41. package/esm2015/lib/modules/autocomplete/types/autocomplete-show-more-args.js +2 -0
  42. package/esm2015/lib/modules/autocomplete/types/autocomplete-show-more-args.js.map +1 -0
  43. package/esm2015/{modules → lib/modules}/country-field/country-field.component.js +5 -2
  44. package/esm2015/lib/modules/country-field/country-field.component.js.map +1 -0
  45. package/esm2015/lib/modules/country-field/country-field.module.js +49 -0
  46. package/esm2015/lib/modules/country-field/country-field.module.js.map +1 -0
  47. package/esm2015/lib/modules/country-field/types/country.js +2 -0
  48. package/esm2015/lib/modules/country-field/types/country.js.map +1 -0
  49. package/esm2015/lib/modules/lookup/lookup-adapter.service.js +21 -0
  50. package/esm2015/lib/modules/lookup/lookup-adapter.service.js.map +1 -0
  51. package/esm2015/lib/modules/lookup/lookup-autocomplete-adapter.js +72 -0
  52. package/esm2015/lib/modules/lookup/lookup-autocomplete-adapter.js.map +1 -0
  53. package/esm2015/lib/modules/lookup/lookup-item-selected.pipe.js +16 -0
  54. package/esm2015/lib/modules/lookup/lookup-item-selected.pipe.js.map +1 -0
  55. package/esm2015/lib/modules/lookup/lookup-show-more-async-modal.component.js +186 -0
  56. package/esm2015/lib/modules/lookup/lookup-show-more-async-modal.component.js.map +1 -0
  57. package/esm2015/lib/modules/lookup/lookup-show-more-modal.component.js +258 -0
  58. package/esm2015/lib/modules/lookup/lookup-show-more-modal.component.js.map +1 -0
  59. package/esm2015/lib/modules/lookup/lookup.component.js +608 -0
  60. package/esm2015/lib/modules/lookup/lookup.component.js.map +1 -0
  61. package/esm2015/lib/modules/lookup/lookup.module.js +94 -0
  62. package/esm2015/lib/modules/lookup/lookup.module.js.map +1 -0
  63. package/esm2015/lib/modules/lookup/types/lookup-add-click-callback-args.js +2 -0
  64. package/esm2015/lib/modules/lookup/types/lookup-add-click-callback-args.js.map +1 -0
  65. package/esm2015/lib/modules/lookup/types/lookup-add-click-event-args.js +2 -0
  66. package/esm2015/lib/modules/lookup/types/lookup-add-click-event-args.js.map +1 -0
  67. package/esm2015/lib/modules/lookup/types/lookup-select-mode-type.js +2 -0
  68. package/esm2015/lib/modules/lookup/types/lookup-select-mode-type.js.map +1 -0
  69. package/esm2015/lib/modules/lookup/types/lookup-select-mode.js +16 -0
  70. package/esm2015/lib/modules/lookup/types/lookup-select-mode.js.map +1 -0
  71. package/esm2015/lib/modules/lookup/types/lookup-show-more-config.js +2 -0
  72. package/esm2015/lib/modules/lookup/types/lookup-show-more-config.js.map +1 -0
  73. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker-context.js +7 -0
  74. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker-context.js.map +1 -0
  75. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker.js +2 -0
  76. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker.js.map +1 -0
  77. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.js +7 -0
  78. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.js.map +1 -0
  79. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-config.js +2 -0
  80. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-config.js.map +1 -0
  81. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-context.js +7 -0
  82. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-context.js.map +1 -0
  83. package/esm2015/lib/modules/search/search-adapter.service.js +45 -0
  84. package/esm2015/lib/modules/search/search-adapter.service.js.map +1 -0
  85. package/esm2015/lib/modules/search/search.component.js +260 -0
  86. package/esm2015/lib/modules/search/search.component.js.map +1 -0
  87. package/esm2015/lib/modules/search/search.module.js +46 -0
  88. package/esm2015/lib/modules/search/search.module.js.map +1 -0
  89. package/esm2015/lib/modules/shared/sky-lookup-resources.module.js +72 -0
  90. package/esm2015/lib/modules/shared/sky-lookup-resources.module.js.map +1 -0
  91. package/esm2015/lib/modules/shared/sky-lookup-string-utils.js +8 -0
  92. package/esm2015/lib/modules/shared/sky-lookup-string-utils.js.map +1 -0
  93. package/esm2015/lib/polyfills.js +30 -0
  94. package/esm2015/lib/polyfills.js.map +1 -0
  95. package/esm2015/skyux-lookup.js +2 -2
  96. package/esm2015/skyux-lookup.js.map +1 -0
  97. package/esm2015/testing/country-field/country-field-fixture.js +1 -1
  98. package/esm2015/testing/country-field/country-field-fixture.js.map +1 -0
  99. package/esm2015/testing/country-field/country-field-testing.module.js +1 -1
  100. package/esm2015/testing/country-field/country-field-testing.module.js.map +1 -0
  101. package/esm2015/testing/public-api.js +1 -1
  102. package/esm2015/testing/public-api.js.map +1 -0
  103. package/esm2015/testing/search/search-fixture.js +1 -1
  104. package/esm2015/testing/search/search-fixture.js.map +1 -0
  105. package/esm2015/testing/search/search-testing.module.js +1 -1
  106. package/esm2015/testing/search/search-testing.module.js.map +1 -0
  107. package/esm2015/testing/skyux-lookup-testing.js +1 -1
  108. package/esm2015/testing/skyux-lookup-testing.js.map +1 -0
  109. package/fesm2015/skyux-lookup-testing.js.map +1 -1
  110. package/fesm2015/skyux-lookup.js +2 -2
  111. package/fesm2015/skyux-lookup.js.map +1 -1
  112. package/index.d.ts +27 -0
  113. package/{modules → lib/modules}/autocomplete/autocomplete-adapter.service.d.ts +0 -0
  114. package/{modules → lib/modules}/autocomplete/autocomplete-default-search-function.d.ts +0 -0
  115. package/{modules → lib/modules}/autocomplete/autocomplete-input.directive.d.ts +0 -0
  116. package/{modules → lib/modules}/autocomplete/autocomplete-search-async-disabled.pipe.d.ts +0 -0
  117. package/{modules → lib/modules}/autocomplete/autocomplete.component.d.ts +0 -0
  118. package/{modules → lib/modules}/autocomplete/autocomplete.module.d.ts +0 -0
  119. package/{modules → lib/modules}/autocomplete/types/autocomplete-default-search-function-options.d.ts +0 -0
  120. package/{modules → lib/modules}/autocomplete/types/autocomplete-input-text-change.d.ts +0 -0
  121. package/{modules → lib/modules}/autocomplete/types/autocomplete-message-type.d.ts +0 -0
  122. package/{modules → lib/modules}/autocomplete/types/autocomplete-message.d.ts +0 -0
  123. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-args.d.ts +0 -0
  124. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-function.d.ts +0 -0
  125. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-result-display-type.d.ts +0 -0
  126. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-result.d.ts +0 -0
  127. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function-filter.d.ts +0 -0
  128. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function-response.d.ts +0 -0
  129. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function.d.ts +0 -0
  130. package/{modules → lib/modules}/autocomplete/types/autocomplete-selection-change.d.ts +0 -0
  131. package/{modules → lib/modules}/autocomplete/types/autocomplete-show-more-args.d.ts +0 -0
  132. package/{modules → lib/modules}/country-field/country-field.component.d.ts +0 -0
  133. package/{modules → lib/modules}/country-field/country-field.module.d.ts +0 -0
  134. package/{modules → lib/modules}/country-field/types/country.d.ts +0 -0
  135. package/{modules → lib/modules}/lookup/lookup-adapter.service.d.ts +0 -0
  136. package/{modules → lib/modules}/lookup/lookup-autocomplete-adapter.d.ts +0 -0
  137. package/{modules → lib/modules}/lookup/lookup-item-selected.pipe.d.ts +0 -0
  138. package/{modules → lib/modules}/lookup/lookup-show-more-async-modal.component.d.ts +0 -0
  139. package/{modules → lib/modules}/lookup/lookup-show-more-modal.component.d.ts +0 -0
  140. package/{modules → lib/modules}/lookup/lookup.component.d.ts +0 -0
  141. package/{modules → lib/modules}/lookup/lookup.module.d.ts +0 -0
  142. package/{modules → lib/modules}/lookup/types/lookup-add-click-callback-args.d.ts +0 -0
  143. package/{modules → lib/modules}/lookup/types/lookup-add-click-event-args.d.ts +0 -0
  144. package/{modules → lib/modules}/lookup/types/lookup-select-mode-type.d.ts +0 -0
  145. package/{modules → lib/modules}/lookup/types/lookup-select-mode.d.ts +0 -0
  146. package/{modules → lib/modules}/lookup/types/lookup-show-more-config.d.ts +0 -0
  147. package/{modules → lib/modules}/lookup/types/lookup-show-more-custom-picker-context.d.ts +0 -0
  148. package/{modules → lib/modules}/lookup/types/lookup-show-more-custom-picker.d.ts +0 -0
  149. package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-async-context.d.ts +0 -0
  150. package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-config.d.ts +0 -0
  151. package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-context.d.ts +0 -0
  152. package/{modules → lib/modules}/search/search-adapter.service.d.ts +0 -0
  153. package/{modules → lib/modules}/search/search.component.d.ts +0 -0
  154. package/{modules → lib/modules}/search/search.module.d.ts +0 -0
  155. package/{modules → lib/modules}/shared/sky-lookup-resources.module.d.ts +0 -0
  156. package/{modules → lib/modules}/shared/sky-lookup-string-utils.d.ts +0 -0
  157. package/{polyfills.d.ts → lib/polyfills.d.ts} +0 -0
  158. package/package.json +23 -9
  159. package/skyux-lookup.d.ts +1 -1
  160. package/LICENSE +0 -21
  161. package/esm2015/modules/autocomplete/autocomplete-adapter.service.js +0 -61
  162. package/esm2015/modules/autocomplete/autocomplete-default-search-function.js +0 -39
  163. package/esm2015/modules/autocomplete/autocomplete-input.directive.js +0 -220
  164. package/esm2015/modules/autocomplete/autocomplete-search-async-disabled.pipe.js +0 -19
  165. package/esm2015/modules/autocomplete/autocomplete.component.js +0 -731
  166. package/esm2015/modules/autocomplete/autocomplete.module.js +0 -65
  167. package/esm2015/modules/autocomplete/types/autocomplete-default-search-function-options.js +0 -2
  168. package/esm2015/modules/autocomplete/types/autocomplete-input-text-change.js +0 -2
  169. package/esm2015/modules/autocomplete/types/autocomplete-message-type.js +0 -15
  170. package/esm2015/modules/autocomplete/types/autocomplete-message.js +0 -2
  171. package/esm2015/modules/autocomplete/types/autocomplete-search-async-args.js +0 -2
  172. package/esm2015/modules/autocomplete/types/autocomplete-search-async-function.js +0 -2
  173. package/esm2015/modules/autocomplete/types/autocomplete-search-async-result-display-type.js +0 -2
  174. package/esm2015/modules/autocomplete/types/autocomplete-search-async-result.js +0 -2
  175. package/esm2015/modules/autocomplete/types/autocomplete-search-function-filter.js +0 -2
  176. package/esm2015/modules/autocomplete/types/autocomplete-search-function-response.js +0 -2
  177. package/esm2015/modules/autocomplete/types/autocomplete-search-function.js +0 -2
  178. package/esm2015/modules/autocomplete/types/autocomplete-selection-change.js +0 -2
  179. package/esm2015/modules/autocomplete/types/autocomplete-show-more-args.js +0 -2
  180. package/esm2015/modules/country-field/country-field.module.js +0 -49
  181. package/esm2015/modules/country-field/types/country.js +0 -2
  182. package/esm2015/modules/lookup/lookup-adapter.service.js +0 -21
  183. package/esm2015/modules/lookup/lookup-autocomplete-adapter.js +0 -72
  184. package/esm2015/modules/lookup/lookup-item-selected.pipe.js +0 -16
  185. package/esm2015/modules/lookup/lookup-show-more-async-modal.component.js +0 -184
  186. package/esm2015/modules/lookup/lookup-show-more-modal.component.js +0 -256
  187. package/esm2015/modules/lookup/lookup.component.js +0 -602
  188. package/esm2015/modules/lookup/lookup.module.js +0 -94
  189. package/esm2015/modules/lookup/types/lookup-add-click-callback-args.js +0 -2
  190. package/esm2015/modules/lookup/types/lookup-add-click-event-args.js +0 -2
  191. package/esm2015/modules/lookup/types/lookup-select-mode-type.js +0 -2
  192. package/esm2015/modules/lookup/types/lookup-select-mode.js +0 -16
  193. package/esm2015/modules/lookup/types/lookup-show-more-config.js +0 -2
  194. package/esm2015/modules/lookup/types/lookup-show-more-custom-picker-context.js +0 -7
  195. package/esm2015/modules/lookup/types/lookup-show-more-custom-picker.js +0 -2
  196. package/esm2015/modules/lookup/types/lookup-show-more-native-picker-async-context.js +0 -7
  197. package/esm2015/modules/lookup/types/lookup-show-more-native-picker-config.js +0 -2
  198. package/esm2015/modules/lookup/types/lookup-show-more-native-picker-context.js +0 -7
  199. package/esm2015/modules/search/search-adapter.service.js +0 -45
  200. package/esm2015/modules/search/search.component.js +0 -260
  201. package/esm2015/modules/search/search.module.js +0 -46
  202. package/esm2015/modules/shared/sky-lookup-resources.module.js +0 -72
  203. package/esm2015/modules/shared/sky-lookup-string-utils.js +0 -8
  204. package/esm2015/polyfills.js +0 -30
  205. package/esm2015/public-api.js +0 -32
  206. package/public-api.d.ts +0 -27
@@ -0,0 +1,260 @@
1
+ import { style, state, trigger, transition, animate, } from '@angular/animations';
2
+ import { Component, ElementRef, Output, Input, EventEmitter, ChangeDetectorRef, ViewEncapsulation, } from '@angular/core';
3
+ import { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';
4
+ import { Subject } from 'rxjs';
5
+ import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
6
+ import { SkySearchAdapterService } from './search-adapter.service';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@skyux/core";
9
+ import * as i2 from "./search-adapter.service";
10
+ import * as i3 from "@skyux/forms";
11
+ import * as i4 from "@skyux/indicators";
12
+ import * as i5 from "@angular/common";
13
+ import * as i6 from "@angular/forms";
14
+ import * as i7 from "@skyux/theme";
15
+ import * as i8 from "@skyux/i18n";
16
+ const INPUT_SHOWN_STATE = 'inputShown';
17
+ const INPUT_HIDDEN_STATE = 'inputHidden';
18
+ const EXPAND_MODE_RESPONSIVE = 'responsive';
19
+ const EXPAND_MODE_FIT = 'fit';
20
+ const EXPAND_MODE_NONE = 'none';
21
+ export class SkySearchComponent {
22
+ constructor(mediaQueryService, elRef, searchAdapter, changeRef) {
23
+ this.mediaQueryService = mediaQueryService;
24
+ this.elRef = elRef;
25
+ this.searchAdapter = searchAdapter;
26
+ this.changeRef = changeRef;
27
+ /**
28
+ * Fires when the search text is applied.
29
+ */
30
+ this.searchApply = new EventEmitter();
31
+ /**
32
+ * Fires when the search text is changed.
33
+ */
34
+ this.searchChange = new EventEmitter();
35
+ /**
36
+ * Fires when the search text is cleared.
37
+ */
38
+ this.searchClear = new EventEmitter();
39
+ /**
40
+ * Specifies the expand mode for the search input. The valid options
41
+ * include `"responsive"` to collapse the search input into a button on
42
+ * mobile devices, `"none"` to *not* collapse the search input on mobile
43
+ * devices, and `"fit"` to extend the search input to fit the width of its container.
44
+ * @default "responsive"
45
+ */
46
+ this.expandMode = EXPAND_MODE_RESPONSIVE;
47
+ /**
48
+ * Specifies how many milliseconds to wait before searching after users enter text in the search input.
49
+ * @default 0
50
+ */
51
+ this.debounceTime = 0;
52
+ /**
53
+ * Indicates whether to disable the filter button.
54
+ * @default false
55
+ */
56
+ this.disabled = false;
57
+ this.isFullWidth = false;
58
+ this.isCollapsible = true;
59
+ this.inputAnimate = INPUT_SHOWN_STATE;
60
+ this.searchButtonShown = false;
61
+ this.mobileSearchShown = false;
62
+ this.dismissButtonShown = false;
63
+ this.clearButtonShown = false;
64
+ this.searchUpdated = new Subject();
65
+ }
66
+ ngOnInit() {
67
+ if (this.searchShouldCollapse()) {
68
+ this.breakpointSubscription = this.mediaQueryService.subscribe((args) => {
69
+ this.mediaQueryCallback(args);
70
+ this.changeRef.detectChanges();
71
+ });
72
+ }
73
+ this.searchUpdated
74
+ .asObservable()
75
+ .pipe(debounceTime(this.debounceTime), distinctUntilChanged())
76
+ .subscribe((value) => {
77
+ this.searchChange.emit(value);
78
+ });
79
+ }
80
+ ngOnChanges(changes) {
81
+ if (this.expandModeBindingChanged(changes)) {
82
+ switch (this.expandMode) {
83
+ case EXPAND_MODE_NONE:
84
+ this.isCollapsible = false;
85
+ this.isFullWidth = false;
86
+ break;
87
+ case EXPAND_MODE_FIT:
88
+ this.isCollapsible = false;
89
+ this.isFullWidth = true;
90
+ break;
91
+ default:
92
+ this.isCollapsible = true;
93
+ this.isFullWidth = false;
94
+ break;
95
+ }
96
+ }
97
+ if (this.searchBindingChanged(changes)) {
98
+ this.clearButtonShown = this.searchText && this.searchText !== '';
99
+ if (this.shouldOpenInput()) {
100
+ this.inputAnimate = INPUT_SHOWN_STATE;
101
+ }
102
+ }
103
+ this.changeRef.detectChanges();
104
+ }
105
+ clearSearchText() {
106
+ this.searchText = '';
107
+ this.clearButtonShown = false;
108
+ this.searchAdapter.focusInput(this.elRef);
109
+ this.searchChange.emit(this.searchText);
110
+ this.searchApply.emit(this.searchText);
111
+ this.searchClear.emit();
112
+ }
113
+ enterPress(event, searchText) {
114
+ if (event.code === 'Enter' || event.code === 'NumpadEnter') {
115
+ this.applySearchText(searchText);
116
+ }
117
+ }
118
+ applySearchText(searchText) {
119
+ // Double check that search text is defined before attempting to trim off whitespace
120
+ if (searchText) {
121
+ searchText = searchText.trim();
122
+ }
123
+ if (searchText !== this.searchText) {
124
+ this.searchText = searchText;
125
+ }
126
+ this.clearButtonShown = searchText && searchText !== '';
127
+ if (searchText && searchText !== '') {
128
+ this.searchAdapter.selectInput(this.elRef);
129
+ }
130
+ this.searchApply.emit(searchText);
131
+ }
132
+ searchTextChanged(searchText) {
133
+ this.searchText = searchText;
134
+ this.searchUpdated.next(searchText);
135
+ }
136
+ toggleSearchInput(showInput) {
137
+ if (this.searchShouldCollapse()) {
138
+ if (showInput) {
139
+ this.inputAnimate = INPUT_SHOWN_STATE;
140
+ }
141
+ else {
142
+ this.inputAnimate = INPUT_HIDDEN_STATE;
143
+ }
144
+ }
145
+ }
146
+ inputAnimationStart(event) {
147
+ if (this.searchShouldCollapse()) {
148
+ this.searchAdapter.startInputAnimation(this.elRef);
149
+ if (event.toState === INPUT_SHOWN_STATE &&
150
+ this.mediaQueryService.current === SkyMediaBreakpoints.xs) {
151
+ this.mobileSearchShown = true;
152
+ this.searchButtonShown = false;
153
+ }
154
+ }
155
+ }
156
+ inputAnimationEnd(event) {
157
+ if (this.searchShouldCollapse()) {
158
+ this.searchAdapter.endInputAnimation(this.elRef);
159
+ this.searchButtonShown =
160
+ event.toState === INPUT_HIDDEN_STATE &&
161
+ this.mediaQueryService.current === SkyMediaBreakpoints.xs;
162
+ if ((event.toState === INPUT_HIDDEN_STATE &&
163
+ this.mediaQueryService.current === SkyMediaBreakpoints.xs) ||
164
+ this.mediaQueryService.current !== SkyMediaBreakpoints.xs) {
165
+ this.mobileSearchShown = false;
166
+ }
167
+ }
168
+ }
169
+ ngOnDestroy() {
170
+ if (this.breakpointSubscription) {
171
+ this.breakpointSubscription.unsubscribe();
172
+ }
173
+ this.searchUpdated.complete();
174
+ }
175
+ searchBindingChanged(changes) {
176
+ return (changes['searchText'] &&
177
+ changes['searchText'].previousValue !== changes['searchText'].currentValue);
178
+ }
179
+ expandModeBindingChanged(changes) {
180
+ return (changes['expandMode'] &&
181
+ changes['expandMode'].previousValue !== changes['expandMode'].currentValue);
182
+ }
183
+ shouldOpenInput() {
184
+ return (this.searchText !== '' &&
185
+ this.mediaQueryService.current === SkyMediaBreakpoints.xs &&
186
+ this.searchShouldCollapse());
187
+ }
188
+ mediaQueryCallback(args) {
189
+ if (this.searchShouldCollapse()) {
190
+ if (args === SkyMediaBreakpoints.xs) {
191
+ this.inputAnimate = INPUT_HIDDEN_STATE;
192
+ }
193
+ else if (this.inputAnimate !== INPUT_SHOWN_STATE) {
194
+ this.inputAnimate = INPUT_SHOWN_STATE;
195
+ }
196
+ else {
197
+ this.mobileSearchShown = false;
198
+ }
199
+ }
200
+ this.changeRef.markForCheck();
201
+ }
202
+ searchShouldCollapse() {
203
+ return ((this.isCollapsible || this.isCollapsible === undefined) &&
204
+ this.isFullWidth !== true);
205
+ }
206
+ }
207
+ SkySearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchComponent, deps: [{ token: i1.SkyMediaQueryService }, { token: i0.ElementRef }, { token: i2.SkySearchAdapterService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
208
+ SkySearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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=\"\n sky-input-group-btn sky-input-group-clear sky-input-box-btn-inset\n \"\n [hidden]=\"!clearButtonShown\"\n >\n <button\n aria-hidden=\"true\"\n class=\"\n sky-btn sky-btn-default sky-search-btn sky-search-btn-clear\n \"\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=\"\n sky-btn sky-btn-default sky-search-btn sky-search-btn-apply\n \"\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: i3.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "skyLibResources": i8.SkyLibResourcesPipe }, animations: [
209
+ trigger('inputState', [
210
+ state(INPUT_HIDDEN_STATE, style({
211
+ opacity: 0,
212
+ width: 0,
213
+ })),
214
+ state(INPUT_SHOWN_STATE, style({
215
+ opacity: 1,
216
+ width: '100%',
217
+ })),
218
+ transition('* <=> *', animate('150ms')),
219
+ ]),
220
+ ], encapsulation: i0.ViewEncapsulation.None });
221
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchComponent, decorators: [{
222
+ type: Component,
223
+ args: [{
224
+ selector: 'sky-search',
225
+ templateUrl: './search.component.html',
226
+ styleUrls: ['./search.component.scss'],
227
+ encapsulation: ViewEncapsulation.None,
228
+ animations: [
229
+ trigger('inputState', [
230
+ state(INPUT_HIDDEN_STATE, style({
231
+ opacity: 0,
232
+ width: 0,
233
+ })),
234
+ state(INPUT_SHOWN_STATE, style({
235
+ opacity: 1,
236
+ width: '100%',
237
+ })),
238
+ transition('* <=> *', animate('150ms')),
239
+ ]),
240
+ ],
241
+ providers: [SkySearchAdapterService],
242
+ }]
243
+ }], ctorParameters: function () { return [{ type: i1.SkyMediaQueryService }, { type: i0.ElementRef }, { type: i2.SkySearchAdapterService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { searchApply: [{
244
+ type: Output
245
+ }], searchChange: [{
246
+ type: Output
247
+ }], searchClear: [{
248
+ type: Output
249
+ }], searchText: [{
250
+ type: Input
251
+ }], expandMode: [{
252
+ type: Input
253
+ }], debounceTime: [{
254
+ type: Input
255
+ }], disabled: [{
256
+ type: Input
257
+ }], placeholderText: [{
258
+ type: Input
259
+ }] } });
260
+ //# sourceMappingURL=search.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/search/search.component.ts","../../../../../../../../libs/components/lookup/src/lib/modules/search/search.component.html"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,KAAK,EACL,OAAO,EACP,UAAU,EACV,OAAO,GAER,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,SAAS,EAGT,UAAU,EACV,MAAM,EACN,KAAK,EACL,YAAY,EAGZ,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExE,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;;;;;;;;;;AAEnE,MAAM,iBAAiB,GAAW,YAAY,CAAC;AAC/C,MAAM,kBAAkB,GAAW,aAAa,CAAC;AACjD,MAAM,sBAAsB,GAAW,YAAY,CAAC;AACpD,MAAM,eAAe,GAAW,KAAK,CAAC;AACtC,MAAM,gBAAgB,GAAW,MAAM,CAAC;AA4BxC,MAAM,OAAO,kBAAkB;IAsE7B,YACU,iBAAuC,EACvC,KAAiB,EACjB,aAAsC,EACtC,SAA4B;QAH5B,sBAAiB,GAAjB,iBAAiB,CAAsB;QACvC,UAAK,GAAL,KAAK,CAAY;QACjB,kBAAa,GAAb,aAAa,CAAyB;QACtC,cAAS,GAAT,SAAS,CAAmB;QAzEtC;;WAEG;QAEI,gBAAW,GAAG,IAAI,YAAY,EAAU,CAAC;QAEhD;;WAEG;QAEI,iBAAY,GAAG,IAAI,YAAY,EAAU,CAAC;QAEjD;;WAEG;QAEI,gBAAW,GAAG,IAAI,YAAY,EAAQ,CAAC;QAQ9C;;;;;;WAMG;QAEI,eAAU,GAAW,sBAAsB,CAAC;QAEnD;;;WAGG;QAEI,iBAAY,GAAW,CAAC,CAAC;QAEhC;;;WAGG;QAEI,aAAQ,GAAY,KAAK,CAAC;QAE1B,gBAAW,GAAY,KAAK,CAAC;QAE7B,kBAAa,GAAY,IAAI,CAAC;QAU9B,iBAAY,GAAW,iBAAiB,CAAC;QAEzC,sBAAiB,GAAY,KAAK,CAAC;QACnC,sBAAiB,GAAY,KAAK,CAAC;QACnC,uBAAkB,GAAY,KAAK,CAAC;QACpC,qBAAgB,GAAY,KAAK,CAAC;QAEjC,kBAAa,GAAoB,IAAI,OAAO,EAAU,CAAC;IAO5D,CAAC;IAEG,QAAQ;QACb,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YAC/B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAC5D,CAAC,IAAyB,EAAE,EAAE;gBAC5B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC9B,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;YACjC,CAAC,CACF,CAAC;SACH;QAED,IAAI,CAAC,aAAa;aACf,YAAY,EAAE;aACd,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAC;aAC7D,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,WAAW,CAAC,OAAsB;QACvC,IAAI,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE;YAC1C,QAAQ,IAAI,CAAC,UAAU,EAAE;gBACvB,KAAK,gBAAgB;oBACnB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;oBAC3B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,MAAM;gBACR,KAAK,eAAe;oBAClB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;oBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,MAAM;gBACR;oBACE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;oBAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,MAAM;aACT;SACF;QAED,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE;YACtC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC;YAClE,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;gBAC1B,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC;aACvC;SACF;QACD,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC;IAEM,eAAe;QACpB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAE9B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAExC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEvC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,KAAoB,EAAE,UAAkB;QACxD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE;YAC1D,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;SAClC;IACH,CAAC;IAEM,eAAe,CAAC,UAAkB;QACvC,oFAAoF;QACpF,IAAI,UAAU,EAAE;YACd,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;SAChC;QAED,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC9B;QACD,IAAI,CAAC,gBAAgB,GAAG,UAAU,IAAI,UAAU,KAAK,EAAE,CAAC;QACxD,IAAI,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE;YACnC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAEM,iBAAiB,CAAC,UAAkB;QACzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAEM,iBAAiB,CAAC,SAAkB;QACzC,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YAC/B,IAAI,SAAS,EAAE;gBACb,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC;aACvC;iBAAM;gBACL,IAAI,CAAC,YAAY,GAAG,kBAAkB,CAAC;aACxC;SACF;IACH,CAAC;IAEM,mBAAmB,CAAC,KAAqB;QAC9C,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YAC/B,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEnD,IACE,KAAK,CAAC,OAAO,KAAK,iBAAiB;gBACnC,IAAI,CAAC,iBAAiB,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,EACzD;gBACA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;aAChC;SACF;IACH,CAAC;IAEM,iBAAiB,CAAC,KAAqB;QAC5C,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YAC/B,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEjD,IAAI,CAAC,iBAAiB;gBACpB,KAAK,CAAC,OAAO,KAAK,kBAAkB;oBACpC,IAAI,CAAC,iBAAiB,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,CAAC;YAE5D,IACE,CAAC,KAAK,CAAC,OAAO,KAAK,kBAAkB;gBACnC,IAAI,CAAC,iBAAiB,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,CAAC;gBAC5D,IAAI,CAAC,iBAAiB,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,EACzD;gBACA,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;aAChC;SACF;IACH,CAAC;IAEM,WAAW;QAChB,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;SAC3C;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IACO,oBAAoB,CAAC,OAAsB;QACjD,OAAO,CACL,OAAO,CAAC,YAAY,CAAC;YACrB,OAAO,CAAC,YAAY,CAAC,CAAC,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,CAC3E,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAAC,OAAsB;QACrD,OAAO,CACL,OAAO,CAAC,YAAY,CAAC;YACrB,OAAO,CAAC,YAAY,CAAC,CAAC,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,CAC3E,CAAC;IACJ,CAAC;IAEO,eAAe;QACrB,OAAO,CACL,IAAI,CAAC,UAAU,KAAK,EAAE;YACtB,IAAI,CAAC,iBAAiB,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE;YACzD,IAAI,CAAC,oBAAoB,EAAE,CAC5B,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAAC,IAAyB;QAClD,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,mBAAmB,CAAC,EAAE,EAAE;gBACnC,IAAI,CAAC,YAAY,GAAG,kBAAkB,CAAC;aACxC;iBAAM,IAAI,IAAI,CAAC,YAAY,KAAK,iBAAiB,EAAE;gBAClD,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC;aACvC;iBAAM;gBACL,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;aAChC;SACF;QACD,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;IAChC,CAAC;IAEO,oBAAoB;QAC1B,OAAO,CACL,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC;YACxD,IAAI,CAAC,WAAW,KAAK,IAAI,CAC1B,CAAC;IACJ,CAAC;;gHA3PU,kBAAkB;oGAAlB,kBAAkB,gSAFlB,CAAC,uBAAuB,CAAC,+CC7DtC,yzIAgIA,qyLDtFc;QACV,OAAO,CAAC,YAAY,EAAE;YACpB,KAAK,CACH,kBAAkB,EAClB,KAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;gBACV,KAAK,EAAE,CAAC;aACT,CAAC,CACH;YACD,KAAK,CACH,iBAAiB,EACjB,KAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;gBACV,KAAK,EAAE,MAAM;aACd,CAAC,CACH;YACD,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;SACxC,CAAC;KACH;4FAGU,kBAAkB;kBA1B9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,WAAW,EAAE,yBAAyB;oBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;oBACtC,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,UAAU,EAAE;wBACV,OAAO,CAAC,YAAY,EAAE;4BACpB,KAAK,CACH,kBAAkB,EAClB,KAAK,CAAC;gCACJ,OAAO,EAAE,CAAC;gCACV,KAAK,EAAE,CAAC;6BACT,CAAC,CACH;4BACD,KAAK,CACH,iBAAiB,EACjB,KAAK,CAAC;gCACJ,OAAO,EAAE,CAAC;gCACV,KAAK,EAAE,MAAM;6BACd,CAAC,CACH;4BACD,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;yBACxC,CAAC;qBACH;oBACD,SAAS,EAAE,CAAC,uBAAuB,CAAC;iBACrC;0MAMQ,WAAW;sBADjB,MAAM;gBAOA,YAAY;sBADlB,MAAM;gBAOA,WAAW;sBADjB,MAAM;gBAOA,UAAU;sBADhB,KAAK;gBAWC,UAAU;sBADhB,KAAK;gBAQC,YAAY;sBADlB,KAAK;gBAQC,QAAQ;sBADd,KAAK;gBAaC,eAAe;sBADrB,KAAK","sourcesContent":["import {\n style,\n state,\n trigger,\n transition,\n animate,\n AnimationEvent,\n} from '@angular/animations';\n\nimport {\n Component,\n OnInit,\n OnDestroy,\n ElementRef,\n Output,\n Input,\n EventEmitter,\n OnChanges,\n SimpleChanges,\n ChangeDetectorRef,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\n\nimport { Subject, Subscription } from 'rxjs';\n\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\n\nimport { SkySearchAdapterService } from './search-adapter.service';\n\nconst INPUT_SHOWN_STATE: string = 'inputShown';\nconst INPUT_HIDDEN_STATE: string = 'inputHidden';\nconst EXPAND_MODE_RESPONSIVE: string = 'responsive';\nconst EXPAND_MODE_FIT: string = 'fit';\nconst EXPAND_MODE_NONE: string = 'none';\n\n@Component({\n selector: 'sky-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.scss'],\n encapsulation: ViewEncapsulation.None,\n animations: [\n trigger('inputState', [\n state(\n INPUT_HIDDEN_STATE,\n style({\n opacity: 0,\n width: 0,\n })\n ),\n state(\n INPUT_SHOWN_STATE,\n style({\n opacity: 1,\n width: '100%',\n })\n ),\n transition('* <=> *', animate('150ms')),\n ]),\n ],\n providers: [SkySearchAdapterService],\n})\nexport class SkySearchComponent implements OnDestroy, OnInit, OnChanges {\n /**\n * Fires when the search text is applied.\n */\n @Output()\n public searchApply = new EventEmitter<string>();\n\n /**\n * Fires when the search text is changed.\n */\n @Output()\n public searchChange = new EventEmitter<string>();\n\n /**\n * Fires when the search text is cleared.\n */\n @Output()\n public searchClear = new EventEmitter<void>();\n\n /**\n * Specifies default search criteria for the input.\n */\n @Input()\n public searchText: string;\n\n /**\n * Specifies the expand mode for the search input. The valid options\n * include `\"responsive\"` to collapse the search input into a button on\n * mobile devices, `\"none\"` to *not* collapse the search input on mobile\n * devices, and `\"fit\"` to extend the search input to fit the width of its container.\n * @default \"responsive\"\n */\n @Input()\n public expandMode: string = EXPAND_MODE_RESPONSIVE;\n\n /**\n * Specifies how many milliseconds to wait before searching after users enter text in the search input.\n * @default 0\n */\n @Input()\n public debounceTime: number = 0;\n\n /**\n * Indicates whether to disable the filter button.\n * @default false\n */\n @Input()\n public disabled: boolean = false;\n\n public isFullWidth: boolean = false;\n\n public isCollapsible: boolean = true;\n\n /**\n * Specifies placeholder text to display in the search input until users\n * enter search criteria.\n * @default \"Find in this list\"\n */\n @Input()\n public placeholderText: string;\n\n public inputAnimate: string = INPUT_SHOWN_STATE;\n public breakpointSubscription: Subscription;\n public searchButtonShown: boolean = false;\n public mobileSearchShown: boolean = false;\n public dismissButtonShown: boolean = false;\n public clearButtonShown: boolean = false;\n\n private searchUpdated: Subject<string> = new Subject<string>();\n\n constructor(\n private mediaQueryService: SkyMediaQueryService,\n private elRef: ElementRef,\n private searchAdapter: SkySearchAdapterService,\n private changeRef: ChangeDetectorRef\n ) {}\n\n public ngOnInit() {\n if (this.searchShouldCollapse()) {\n this.breakpointSubscription = this.mediaQueryService.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.mediaQueryCallback(args);\n this.changeRef.detectChanges();\n }\n );\n }\n\n this.searchUpdated\n .asObservable()\n .pipe(debounceTime(this.debounceTime), distinctUntilChanged())\n .subscribe((value) => {\n this.searchChange.emit(value);\n });\n }\n\n public ngOnChanges(changes: SimpleChanges) {\n if (this.expandModeBindingChanged(changes)) {\n switch (this.expandMode) {\n case EXPAND_MODE_NONE:\n this.isCollapsible = false;\n this.isFullWidth = false;\n break;\n case EXPAND_MODE_FIT:\n this.isCollapsible = false;\n this.isFullWidth = true;\n break;\n default:\n this.isCollapsible = true;\n this.isFullWidth = false;\n break;\n }\n }\n\n if (this.searchBindingChanged(changes)) {\n this.clearButtonShown = this.searchText && this.searchText !== '';\n if (this.shouldOpenInput()) {\n this.inputAnimate = INPUT_SHOWN_STATE;\n }\n }\n this.changeRef.detectChanges();\n }\n\n public clearSearchText() {\n this.searchText = '';\n this.clearButtonShown = false;\n\n this.searchAdapter.focusInput(this.elRef);\n this.searchChange.emit(this.searchText);\n\n this.searchApply.emit(this.searchText);\n\n this.searchClear.emit();\n }\n\n public enterPress(event: KeyboardEvent, searchText: string) {\n if (event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.applySearchText(searchText);\n }\n }\n\n public applySearchText(searchText: string) {\n // Double check that search text is defined before attempting to trim off whitespace\n if (searchText) {\n searchText = searchText.trim();\n }\n\n if (searchText !== this.searchText) {\n this.searchText = searchText;\n }\n this.clearButtonShown = searchText && searchText !== '';\n if (searchText && searchText !== '') {\n this.searchAdapter.selectInput(this.elRef);\n }\n\n this.searchApply.emit(searchText);\n }\n\n public searchTextChanged(searchText: string) {\n this.searchText = searchText;\n this.searchUpdated.next(searchText);\n }\n\n public toggleSearchInput(showInput: boolean) {\n if (this.searchShouldCollapse()) {\n if (showInput) {\n this.inputAnimate = INPUT_SHOWN_STATE;\n } else {\n this.inputAnimate = INPUT_HIDDEN_STATE;\n }\n }\n }\n\n public inputAnimationStart(event: AnimationEvent) {\n if (this.searchShouldCollapse()) {\n this.searchAdapter.startInputAnimation(this.elRef);\n\n if (\n event.toState === INPUT_SHOWN_STATE &&\n this.mediaQueryService.current === SkyMediaBreakpoints.xs\n ) {\n this.mobileSearchShown = true;\n this.searchButtonShown = false;\n }\n }\n }\n\n public inputAnimationEnd(event: AnimationEvent) {\n if (this.searchShouldCollapse()) {\n this.searchAdapter.endInputAnimation(this.elRef);\n\n this.searchButtonShown =\n event.toState === INPUT_HIDDEN_STATE &&\n this.mediaQueryService.current === SkyMediaBreakpoints.xs;\n\n if (\n (event.toState === INPUT_HIDDEN_STATE &&\n this.mediaQueryService.current === SkyMediaBreakpoints.xs) ||\n this.mediaQueryService.current !== SkyMediaBreakpoints.xs\n ) {\n this.mobileSearchShown = false;\n }\n }\n }\n\n public ngOnDestroy() {\n if (this.breakpointSubscription) {\n this.breakpointSubscription.unsubscribe();\n }\n\n this.searchUpdated.complete();\n }\n private searchBindingChanged(changes: SimpleChanges) {\n return (\n changes['searchText'] &&\n changes['searchText'].previousValue !== changes['searchText'].currentValue\n );\n }\n\n private expandModeBindingChanged(changes: SimpleChanges) {\n return (\n changes['expandMode'] &&\n changes['expandMode'].previousValue !== changes['expandMode'].currentValue\n );\n }\n\n private shouldOpenInput() {\n return (\n this.searchText !== '' &&\n this.mediaQueryService.current === SkyMediaBreakpoints.xs &&\n this.searchShouldCollapse()\n );\n }\n\n private mediaQueryCallback(args: SkyMediaBreakpoints) {\n if (this.searchShouldCollapse()) {\n if (args === SkyMediaBreakpoints.xs) {\n this.inputAnimate = INPUT_HIDDEN_STATE;\n } else if (this.inputAnimate !== INPUT_SHOWN_STATE) {\n this.inputAnimate = INPUT_SHOWN_STATE;\n } else {\n this.mobileSearchShown = false;\n }\n }\n this.changeRef.markForCheck();\n }\n\n private searchShouldCollapse() {\n return (\n (this.isCollapsible || this.isCollapsible === undefined) &&\n this.isFullWidth !== true\n );\n }\n}\n","<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=\"\n sky-input-group-btn sky-input-group-clear sky-input-box-btn-inset\n \"\n [hidden]=\"!clearButtonShown\"\n >\n <button\n aria-hidden=\"true\"\n class=\"\n sky-btn sky-btn-default sky-search-btn sky-search-btn-clear\n \"\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=\"\n sky-btn sky-btn-default sky-search-btn sky-search-btn-apply\n \"\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"]}
@@ -0,0 +1,46 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { SkyIdModule } from '@skyux/core';
5
+ import { SkyInputBoxModule } from '@skyux/forms';
6
+ import { SkyIconModule } from '@skyux/indicators';
7
+ import { SkyThemeModule } from '@skyux/theme';
8
+ import { SkyLookupResourcesModule } from '../shared/sky-lookup-resources.module';
9
+ import { SkySearchComponent } from './search.component';
10
+ import * as i0 from "@angular/core";
11
+ export class SkySearchModule {
12
+ }
13
+ SkySearchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ SkySearchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchModule, declarations: [SkySearchComponent], imports: [CommonModule,
15
+ SkyInputBoxModule,
16
+ SkyLookupResourcesModule,
17
+ FormsModule,
18
+ SkyIconModule,
19
+ SkyThemeModule,
20
+ SkyIdModule], exports: [SkySearchComponent] });
21
+ SkySearchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchModule, imports: [[
22
+ CommonModule,
23
+ SkyInputBoxModule,
24
+ SkyLookupResourcesModule,
25
+ FormsModule,
26
+ SkyIconModule,
27
+ SkyThemeModule,
28
+ SkyIdModule,
29
+ ]] });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchModule, decorators: [{
31
+ type: NgModule,
32
+ args: [{
33
+ declarations: [SkySearchComponent],
34
+ imports: [
35
+ CommonModule,
36
+ SkyInputBoxModule,
37
+ SkyLookupResourcesModule,
38
+ FormsModule,
39
+ SkyIconModule,
40
+ SkyThemeModule,
41
+ SkyIdModule,
42
+ ],
43
+ exports: [SkySearchComponent],
44
+ }]
45
+ }] });
46
+ //# sourceMappingURL=search.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/search/search.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;;AAexD,MAAM,OAAO,eAAe;;6GAAf,eAAe;8GAAf,eAAe,iBAZX,kBAAkB,aAE/B,YAAY;QACZ,iBAAiB;QACjB,wBAAwB;QACxB,WAAW;QACX,aAAa;QACb,cAAc;QACd,WAAW,aAEH,kBAAkB;8GAEjB,eAAe,YAXjB;YACP,YAAY;YACZ,iBAAiB;YACjB,wBAAwB;YACxB,WAAW;YACX,aAAa;YACb,cAAc;YACd,WAAW;SACZ;4FAGU,eAAe;kBAb3B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;oBAClC,OAAO,EAAE;wBACP,YAAY;wBACZ,iBAAiB;wBACjB,wBAAwB;wBACxB,WAAW;wBACX,aAAa;wBACb,cAAc;wBACd,WAAW;qBACZ;oBACD,OAAO,EAAE,CAAC,kBAAkB,CAAC;iBAC9B","sourcesContent":["import { NgModule } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\n\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyIdModule } from '@skyux/core';\n\nimport { SkyInputBoxModule } from '@skyux/forms';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyLookupResourcesModule } from '../shared/sky-lookup-resources.module';\n\nimport { SkySearchComponent } from './search.component';\n\n@NgModule({\n declarations: [SkySearchComponent],\n imports: [\n CommonModule,\n SkyInputBoxModule,\n SkyLookupResourcesModule,\n FormsModule,\n SkyIconModule,\n SkyThemeModule,\n SkyIdModule,\n ],\n exports: [SkySearchComponent],\n})\nexport class SkySearchModule {}\n"]}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * NOTICE: DO NOT MODIFY THIS FILE!
3
+ * The contents of this file were automatically generated by
4
+ * the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-lookup' schematic.
5
+ * To update this file, simply rerun the command.
6
+ */
7
+ import { NgModule } from '@angular/core';
8
+ import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS, } from '@skyux/i18n';
9
+ import * as i0 from "@angular/core";
10
+ const RESOURCES = {
11
+ 'EN-US': {
12
+ skyux_autocomplete_add: { message: 'New' },
13
+ skyux_autocomplete_no_results: { message: 'No matches found' },
14
+ skyux_autocomplete_show_all: { message: 'Show all' },
15
+ skyux_autocomplete_show_all_count: { message: 'Show all {0}' },
16
+ skyux_autocomplete_show_matches_count: { message: 'Show matches ({0})' },
17
+ skyux_country_field_search_placeholder: { message: 'Search for a country' },
18
+ skyux_lookup_search_icon: { message: 'Search' },
19
+ skyux_lookup_search_button_show_more: {
20
+ message: 'Show all search results',
21
+ },
22
+ skyux_lookup_show_more_add: { message: 'New' },
23
+ skyux_lookup_show_more_select_all_button_title: { message: 'Select all' },
24
+ skyux_lookup_show_more_clear_all_button_title: { message: 'Clear all' },
25
+ skyux_lookup_show_more_show_selected_option_title: {
26
+ message: 'Show only selected items',
27
+ },
28
+ skyux_lookup_show_more_cancel: { message: 'Cancel' },
29
+ skyux_lookup_show_more_modal_title_single: { message: 'Select an option' },
30
+ skyux_lookup_show_more_modal_title_multiple: { message: 'Select options' },
31
+ skyux_lookup_show_more_no_results: { message: 'No matches found' },
32
+ skyux_lookup_show_more_select: { message: 'Select' },
33
+ skyux_lookup_tokens_summary: { message: '{0} items selected' },
34
+ skyux_search_dismiss: { message: 'Dismiss search' },
35
+ skyux_search_label: { message: 'Search items' },
36
+ skyux_search_open: { message: 'Open search' },
37
+ skyux_search_placeholder: { message: 'Find in this list' },
38
+ },
39
+ };
40
+ export class SkyLookupResourcesProvider {
41
+ getString(localeInfo, name) {
42
+ return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
43
+ }
44
+ }
45
+ /**
46
+ * Import into any component library module that needs to use resource strings.
47
+ */
48
+ export class SkyLookupResourcesModule {
49
+ }
50
+ SkyLookupResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
51
+ SkyLookupResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupResourcesModule, exports: [SkyI18nModule] });
52
+ SkyLookupResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupResourcesModule, providers: [
53
+ {
54
+ provide: SKY_LIB_RESOURCES_PROVIDERS,
55
+ useClass: SkyLookupResourcesProvider,
56
+ multi: true,
57
+ },
58
+ ], imports: [SkyI18nModule] });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupResourcesModule, decorators: [{
60
+ type: NgModule,
61
+ args: [{
62
+ exports: [SkyI18nModule],
63
+ providers: [
64
+ {
65
+ provide: SKY_LIB_RESOURCES_PROVIDERS,
66
+ useClass: SkyLookupResourcesProvider,
67
+ multi: true,
68
+ },
69
+ ],
70
+ }]
71
+ }] });
72
+ //# sourceMappingURL=sky-lookup-resources.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sky-lookup-resources.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/shared/sky-lookup-resources.module.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,qBAAqB,EAErB,aAAa,EAGb,2BAA2B,GAC5B,MAAM,aAAa,CAAC;;AAErB,MAAM,SAAS,GAA0C;IACvD,OAAO,EAAE;QACP,sBAAsB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;QAC1C,6BAA6B,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;QAC9D,2BAA2B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;QACpD,iCAAiC,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;QAC9D,qCAAqC,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;QACxE,sCAAsC,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE;QAC3E,wBAAwB,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;QAC/C,oCAAoC,EAAE;YACpC,OAAO,EAAE,yBAAyB;SACnC;QACD,0BAA0B,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;QAC9C,8CAA8C,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;QACzE,6CAA6C,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;QACvE,iDAAiD,EAAE;YACjD,OAAO,EAAE,0BAA0B;SACpC;QACD,6BAA6B,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;QACpD,yCAAyC,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;QAC1E,2CAA2C,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;QAC1E,iCAAiC,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;QAClE,6BAA6B,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;QACpD,2BAA2B,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;QAC9D,oBAAoB,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;QACnD,kBAAkB,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;QAC/C,iBAAiB,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE;QAC7C,wBAAwB,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;KAC3D;CACF,CAAC;AAEF,MAAM,OAAO,0BAA0B;IAC9B,SAAS,CAAC,UAA4B,EAAE,IAAY;QACzD,OAAO,qBAAqB,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;CACF;AAED;;GAEG;AAWH,MAAM,OAAO,wBAAwB;;sHAAxB,wBAAwB;uHAAxB,wBAAwB,YATzB,aAAa;uHASZ,wBAAwB,aARxB;QACT;YACE,OAAO,EAAE,2BAA2B;YACpC,QAAQ,EAAE,0BAA0B;YACpC,KAAK,EAAE,IAAI;SACZ;KACF,YAPS,aAAa;4FASZ,wBAAwB;kBAVpC,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;oBACxB,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,2BAA2B;4BACpC,QAAQ,EAAE,0BAA0B;4BACpC,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF","sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-lookup' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_autocomplete_add: { message: 'New' },\n skyux_autocomplete_no_results: { message: 'No matches found' },\n skyux_autocomplete_show_all: { message: 'Show all' },\n skyux_autocomplete_show_all_count: { message: 'Show all {0}' },\n skyux_autocomplete_show_matches_count: { message: 'Show matches ({0})' },\n skyux_country_field_search_placeholder: { message: 'Search for a country' },\n skyux_lookup_search_icon: { message: 'Search' },\n skyux_lookup_search_button_show_more: {\n message: 'Show all search results',\n },\n skyux_lookup_show_more_add: { message: 'New' },\n skyux_lookup_show_more_select_all_button_title: { message: 'Select all' },\n skyux_lookup_show_more_clear_all_button_title: { message: 'Clear all' },\n skyux_lookup_show_more_show_selected_option_title: {\n message: 'Show only selected items',\n },\n skyux_lookup_show_more_cancel: { message: 'Cancel' },\n skyux_lookup_show_more_modal_title_single: { message: 'Select an option' },\n skyux_lookup_show_more_modal_title_multiple: { message: 'Select options' },\n skyux_lookup_show_more_no_results: { message: 'No matches found' },\n skyux_lookup_show_more_select: { message: 'Select' },\n skyux_lookup_tokens_summary: { message: '{0} items selected' },\n skyux_search_dismiss: { message: 'Dismiss search' },\n skyux_search_label: { message: 'Search items' },\n skyux_search_open: { message: 'Open search' },\n skyux_search_placeholder: { message: 'Find in this list' },\n },\n};\n\nexport class SkyLookupResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyLookupResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyLookupResourcesModule {}\n"]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Removes diacritical characters from strings and replaces them with their normalized equivalent.
3
+ * For example: è becomes e, Å becomes A.
4
+ */
5
+ export function normalizeDiacritics(value) {
6
+ return value.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
7
+ }
8
+ //# sourceMappingURL=sky-lookup-string-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sky-lookup-string-utils.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/shared/sky-lookup-string-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;AAChE,CAAC","sourcesContent":["/**\n * Removes diacritical characters from strings and replaces them with their normalized equivalent.\n * For example: è becomes e, Å becomes A.\n */\nexport function normalizeDiacritics(value: string): string {\n return value.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n}\n"]}
@@ -0,0 +1,30 @@
1
+ // tslint:disable:no-null-keyword
2
+ /* istanbul ignore file */
3
+ // Polyfill for Element.closest().
4
+ // https://developer.mozilla.org/en-US/docs/Web/API/Element/closest#Polyfill
5
+ // Returns the closest ancestor of the current element (or the current element itself) which
6
+ // matches the selectors given in parameter. If there isn't such an ancestor, it returns null.
7
+ if (!Element.prototype.closest) {
8
+ Element.prototype.closest = function (s) {
9
+ let el = this;
10
+ if (!document.documentElement.contains(el)) {
11
+ return null;
12
+ }
13
+ do {
14
+ if (el.matches(s)) {
15
+ return el;
16
+ }
17
+ el = el.parentElement || el.parentNode;
18
+ } while (el !== null && el.nodeType === 1);
19
+ return null;
20
+ };
21
+ }
22
+ // Polyfill for Element.matches().
23
+ // https://developer.mozilla.org/en-US/docs/Web/API/Element/matches
24
+ // Returns true if the element would be selected by the specified selector string.
25
+ if (!Element.prototype.matches) {
26
+ Element.prototype.matches =
27
+ Element.prototype.msMatchesSelector ||
28
+ /* istanbul ignore next */ Element.prototype.webkitMatchesSelector;
29
+ }
30
+ //# sourceMappingURL=polyfills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polyfills.js","sourceRoot":"","sources":["../../../../../../libs/components/lookup/src/lib/polyfills.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,0BAA0B;AAE1B,kCAAkC;AAClC,4EAA4E;AAC5E,4FAA4F;AAC5F,8FAA8F;AAC9F,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE;IAC9B,OAAO,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,CAAM;QAC1C,IAAI,EAAE,GAAG,IAAI,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YAC1C,OAAO,IAAI,CAAC;SACb;QACD,GAAG;YACD,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACjB,OAAO,EAAE,CAAC;aACX;YACD,EAAE,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,UAAU,CAAC;SACxC,QAAQ,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,QAAQ,KAAK,CAAC,EAAE;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;CACH;AAED,kCAAkC;AAClC,mEAAmE;AACnE,kFAAkF;AAClF,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE;IAC9B,OAAO,CAAC,SAAS,CAAC,OAAO;QACtB,OAAO,CAAC,SAAiB,CAAC,iBAAiB;YAC5C,0BAA0B,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;CACtE","sourcesContent":["// tslint:disable:no-null-keyword\n/* istanbul ignore file */\n\n// Polyfill for Element.closest().\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/closest#Polyfill\n// Returns the closest ancestor of the current element (or the current element itself) which\n// matches the selectors given in parameter. If there isn't such an ancestor, it returns null.\nif (!Element.prototype.closest) {\n Element.prototype.closest = function (s: any) {\n let el = this;\n if (!document.documentElement.contains(el)) {\n return null;\n }\n do {\n if (el.matches(s)) {\n return el;\n }\n el = el.parentElement || el.parentNode;\n } while (el !== null && el.nodeType === 1);\n return null;\n };\n}\n\n// Polyfill for Element.matches().\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/matches\n// Returns true if the element would be selected by the specified selector string.\nif (!Element.prototype.matches) {\n Element.prototype.matches =\n (Element.prototype as any).msMatchesSelector ||\n /* istanbul ignore next */ Element.prototype.webkitMatchesSelector;\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtbG9va3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbG9va3VwL3NyYy9za3l1eC1sb29rdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
4
+ export * from './index';
5
+ //# sourceMappingURL=skyux-lookup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skyux-lookup.js","sourceRoot":"","sources":["../../../../../libs/components/lookup/src/skyux-lookup.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
@@ -120,4 +120,4 @@ export class SkyCountryFieldFixture {
120
120
  });
121
121
  }
122
122
  }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyeS1maWVsZC1maXh0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbG9va3VwL3Rlc3Rpbmcvc3JjL2NvdW50cnktZmllbGQvY291bnRyeS1maWVsZC1maXh0dXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFJQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdkQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0lBa0NqQyxZQUFvQixPQUE4QixFQUFFLFNBQWlCO1FBQWpELFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBQ2hELElBQUksQ0FBQyxPQUFPLEdBQUcsaUJBQWlCLENBQUMsdUJBQXVCLENBQ3RELE9BQU8sRUFDUCxTQUFTLEVBQ1QsbUJBQW1CLENBQ3BCLENBQUM7SUFDSixDQUFDO0lBckNEOztPQUVHO0lBQ0gsSUFBVyxxQkFBcUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsSUFBVyxvQkFBb0I7UUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sSUFBSSxLQUFLLElBQUksQ0FBQztJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxLQUFLLENBQUM7SUFDdEMsQ0FBQztJQVVEOzs7O09BSUc7SUFDVSxNQUFNLENBQUMsVUFBa0I7O1lBQ3BDLE1BQU0sV0FBVyxHQUFH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QztZQUN4QixNQUFNLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMzQixPQUFPLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLGdCQUFnQixDQUNuRCwwQkFBMEIsQ0FDM0IsQ0FBQztRQUNKLENBQUM7S0FBQTtJQUVhLGVBQWUsQ0FDM0IsUUFBZ0IsRUFDaEIsS0FBYSxFQUNiLE9BQThCOztZQUU5QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDNUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRXhFLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7YUFDbkQ7WUFFRCxtREFBbUQ7WUFDbkQsaUJBQWlCLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztZQUN2RCxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUIsQ0FBQztLQUFBO0NBR0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWJ1Z0VsZW1lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29tcG9uZW50Rml4dHVyZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IEJ5IH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IFNreUFwcFRlc3RVdGlsaXR5IH0gZnJvbSAnQHNreXV4LXNkay90ZXN0aW5nJztcblxuLyoqXG4gKiBBbGxvd3MgaW50ZXJhY3Rpb24gd2l0aCBhIFNLWSBVWCBjb3VudHJ5IGZpZWxkIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreUNvdW50cnlGaWVsZEZpeHR1cmUge1xuICBwcml2YXRlIGRlYnVnRWw6IERlYnVnRWxlbWVudDtcblxuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBpbnB1dCBmaWVsZCdzIGF1dG9jb21wbGV0ZSBhdHRyaWJ1dGUuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGF1dG9jb21wbGV0ZUF0dHJpYnV0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldElucHV0RWxlbWVudCgpLmdldEF0dHJpYnV0ZSgnYXV0b2NvbXBsZXRlJyk7XG4gIH1cblxuICAvKipcbiAgICogQSBmbGFnIGluZGljYXRpbmcgaWYgdGhlIGNvdW50cnkgZmxhZyBpcyBjdXJyZW50bHkgdmlzaWJsZS5cbiAgICogVGhlIGZsYWcgd2lsbCBiZSB2aXNpYmxlIG9ubHkgaWYgYSBzZWxlY3Rpb24gaGFzIGJlZW4gbWFkZVxuICAgKiBhbmQgaWYgdGhlIGhpZGVTZWxlY3RlZENvdW50cnlGbGFnIG9wdGlvbiBpcyBmYWxzZS5cbiAgICovXG4gIHB1YmxpYyBnZXQgY291bnRyeUZsYWdJc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZmxhZyA9IHRoaXMuZ2V0Q291bnRyeUZsYWcoKTtcbiAgICByZXR1cm4gZmxhZyAhPT0gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCB0aGUgaW5wdXQgaGFzIGJlZW4gZGlzYWJsZWQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldElucHV0RWxlbWVudCgpLmRpc2FibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHNlYXJjaFRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJbnB1dEVsZW1lbnQoKS52YWx1ZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZml4dHVyZTogQ29tcG9uZW50Rml4dHVyZTxhbnk+LCBza3lUZXN0SWQ6IHN0cmluZykge1xuICAgIHRoaXMuZGVidWdFbCA9IFNreUFwcFRlc3RVdGlsaXR5LmdldERlYnVnRWxlbWVudEJ5VGVzdElkKFxuICAgICAgZml4dHVyZSxcbiAgICAgIHNreVRlc3RJZCxcbiAgICAgICdza3ktY291bnRyeS1maWVsZCdcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEVudGVycyB0aGUgc2VhcmNoIHRleHQgaW50byB0aGUgaW5wdXQgZmllbGQgZGlzcGxheWluZyBzZWFyY2ggcmVzdWx0cywgYnV0IG1ha2luZyBubyBzZWxlY3Rpb24uXG4gICAqIEBwYXJhbSBzZWFyY2hUZXh0IFRoZSBuYW1lIG9mIHRoZSBjb3VudHJ5IHRvIHNlbGVjdC5cbiAgICogQHJldHVybnMgVGhlIGxpc3Qgb2YgY291bnRyeSBuYW1lcyBtYXRjaGluZyB0aGUgc2VhcmNoIHRleHQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VhcmNoKHNlYXJjaFRleHQ6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBjb25zdCByZXN1bHROb2RlcyA9IGF3YWl0IHRoaXMuc2VhcmNoQW5kR2V0UmVzdWx0cyhcbiAgICAgIHNlYXJjaFRleHQsXG4gICAgICB0aGlzLmZpeHR1cmVcbiAgICApO1xuICAgIGNvbnN0IHJlc3VsdEFycmF5ID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwocmVzdWx0Tm9kZXMpO1xuICAgIGNvbnN0IHJlc3VsdHMgPSByZXN1bHRBcnJheS5tYXAoKHJlc3VsdDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgIGNvbnN0IGNvdW50cnlOYW1lRWwgPSByZXN1bHQucXVlcnlTZWxlY3RvcignLnNreS1oaWdobGlnaHQtbWFyaycpO1xuICAgICAgY29uc3QgY291bnRyeU5hbWUgPSBTa3lBcHBUZXN0VXRpbGl0eS5nZXRUZXh0KGNvdW50cnlOYW1lRWwpO1xuICAgICAgcmV0dXJuIGNvdW50cnlOYW1lO1xuICAgIH0pO1xuXG4gICAgdGhpcy5maXh0dXJlLmRldGVjdENoYW5nZXMoKTtcbiAgICBhd2FpdCB0aGlzLmZpeHR1cmUud2hlblN0YWJsZSgpO1xuXG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH1cblxuICAvKipcbiAgICogRW50ZXJzIHRoZSBzZWFyY2ggdGV4dCBpbnRvIHRoZSBpbnB1dCBmaWVsZCBhbmQgc2VsZWN0cyB0aGUgZmlyc3QgcmVzdWx0IChpZiBhbnkpLlxuICAgKiBAcGFyYW0gc2VhcmNoVGV4dCBUaGUgbmFtZSBvZiB0aGUgY291bnRyeSB0byBzZWxlY3QuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VhcmNoQW5kU2VsZWN0Rmlyc3RSZXN1bHQoc2VhcmNoVGV4dDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zZWFyY2hBbmRTZWxlY3Qoc2VhcmNoVGV4dCwgMCwgdGhpcy5maXh0dXJlKTtcblxuICAgIHRoaXMuZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIHRoaXMuZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBjb3VudHJ5IHNlbGVjdGlvbiBhbmQgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwdWJsaWMgY2xlYXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5lbnRlclNlYXJjaCgnJywgdGhpcy5maXh0dXJlKTtcblxuICAgIHRoaXMuZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIHRoaXMuZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICAvLyNyZWdpb24gaGVscGVyc1xuXG4gIHByaXZhdGUgZ2V0Q291bnRyeUZsYWcoKTogRGVidWdFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5kZWJ1Z0VsLnF1ZXJ5KEJ5LmNzcygnLnNreS1jb3VudHJ5LWZpZWxkLWZsYWcnKSk7XG4gIH1cblxuICBwcml2YXRlIGdldEF1dG9jb21wbGV0ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2t5LWF1dG9jb21wbGV0ZS1yZXN1bHRzJykgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldElucHV0RWxlbWVudCgpOiBIVE1MVGV4dEFyZWFFbGVtZW50IHtcbiAgICBjb25zdCBkZWJ1Z0VsID0gdGhpcy5kZWJ1Z0VsLnF1ZXJ5KEJ5LmNzcygndGV4dGFyZWEnKSk7XG4gICAgcmV0dXJuIGRlYnVnRWwubmF0aXZlRWxlbWVudCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBibHVySW5wdXQoZml4dHVyZTogQ29tcG9uZW50Rml4dHVyZTxhbnk+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgU2t5QXBwVGVzdFV0aWxpdHkuZmlyZURvbUV2ZW50KHRoaXMuZ2V0SW5wdXRFbGVtZW50KCksICdibHVyJyk7XG4gICAgZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIGZpeHR1cmUud2hlblN0YWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbnRlclNlYXJjaChcbiAgICBuZXdWYWx1ZTogc3RyaW5nLFxuICAgIGZpeHR1cmU6IENvbXBvbmVudEZpeHR1cmU8YW55PlxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSB0aGlzLmdldElucHV0RWxlbWVudCgpO1xuICAgIGlucHV0RWxlbWVudC52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgIFNreUFwcFRlc3RVdGlsaXR5LmZpcmVEb21FdmVudChpbnB1dEVsZW1lbnQsICdrZXl1cCcpO1xuICAgIFNreUFwcFRlc3RVdGlsaXR5LmZpcmVEb21FdmVudChpbnB1dEVsZW1lbnQsICdpbnB1dCcpO1xuICAgIGZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHJldHVybiBmaXh0dXJlLndoZW5TdGFibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2VhcmNoQW5kR2V0UmVzdWx0cyhcbiAgICBuZXdWYWx1ZTogc3RyaW5nLFxuICAgIGZpeHR1cmU6IENvbXBvbmVudEZpeHR1cmU8YW55PlxuICApOiBQcm9taXNlPE5vZGVMaXN0T2Y8SFRNTEVsZW1lbnQ+PiB7XG4gICAgYXdhaXQgdGhpcy5lbnRlclNlYXJjaChuZXdWYWx1ZSwgZml4dHVyZSk7XG4gICAgZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgYXdhaXQgZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QXV0b2NvbXBsZXRlRWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3JBbGwoXG4gICAgICAnLnNreS1hdXRvY29tcGxldGUtcmVzdWx0J1xuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlYXJjaEFuZFNlbGVjdChcbiAgICBuZXdWYWx1ZTogc3RyaW5nLFxuICAgIGluZGV4OiBudW1iZXIsXG4gICAgZml4dHVyZTogQ29tcG9uZW50Rml4dHVyZTxhbnk+XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IHRoaXMuZ2V0SW5wdXRFbGVtZW50KCk7XG4gICAgY29uc3Qgc2VhcmNoUmVzdWx0cyA9IGF3YWl0IHRoaXMuc2VhcmNoQW5kR2V0UmVzdWx0cyhuZXdWYWx1ZSwgZml4dHVyZSk7XG5cbiAgICBpZiAoc2VhcmNoUmVzdWx0cy5sZW5ndGggPCBpbmRleCArIDEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW5kZXggb3V0IG9mIHJhbmdlIGZvciByZXN1bHRzJyk7XG4gICAgfVxuXG4gICAgLy8gTm90ZTogdGhlIG9yZGVyaW5nIG9mIHRoZXNlIGV2ZW50cyBpcyBpbXBvcnRhbnQhXG4gICAgU2t5QXBwVGVzdFV0aWxpdHkuZmlyZURvbUV2ZW50KGlucHV0RWxlbWVudCwgJ2NoYW5nZScpO1xuICAgIFNreUFwcFRlc3RVdGlsaXR5LmZpcmVEb21FdmVudChzZWFyY2hSZXN1bHRzW2luZGV4XSwgJ21vdXNlZG93bicpO1xuICAgIHRoaXMuYmx1cklucHV0KGZpeHR1cmUpO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uIGhlbHBlcnNcbn1cbiJdfQ==
123
+ //# sourceMappingURL=country-field-fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"country-field-fixture.js","sourceRoot":"","sources":["../../../../../../../libs/components/lookup/testing/src/country-field/country-field-fixture.ts"],"names":[],"mappings":"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","sourcesContent":["import { DebugElement } from '@angular/core';\n\nimport { ComponentFixture } from '@angular/core/testing';\n\nimport { By } from '@angular/platform-browser';\n\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Allows interaction with a SKY UX country field component.\n */\nexport class SkyCountryFieldFixture {\n private debugEl: DebugElement;\n\n /**\n * The value of the input field's autocomplete attribute.\n */\n public get autocompleteAttribute(): string {\n return this.getInputElement().getAttribute('autocomplete');\n }\n\n /**\n * A flag indicating if the country flag is currently visible.\n * The flag will be visible only if a selection has been made\n * and if the hideSelectedCountryFlag option is false.\n */\n public get countryFlagIsVisible(): boolean {\n const flag = this.getCountryFlag();\n return flag !== null;\n }\n\n /**\n * A flag indicating whether or not the input has been disabled.\n */\n public get disabled(): boolean {\n return this.getInputElement().disabled;\n }\n\n /**\n * The value of the input field.\n */\n public get searchText(): string {\n return this.getInputElement().value;\n }\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-country-field'\n );\n }\n\n /**\n * Enters the search text into the input field displaying search results, but making no selection.\n * @param searchText The name of the country to select.\n * @returns The list of country names matching the search text.\n */\n public async search(searchText: string): Promise<string[]> {\n const resultNodes = await this.searchAndGetResults(\n searchText,\n this.fixture\n );\n const resultArray = Array.prototype.slice.call(resultNodes);\n const results = resultArray.map((result: HTMLElement) => {\n const countryNameEl = result.querySelector('.sky-highlight-mark');\n const countryName = SkyAppTestUtility.getText(countryNameEl);\n return countryName;\n });\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n return results;\n }\n\n /**\n * Enters the search text into the input field and selects the first result (if any).\n * @param searchText The name of the country to select.\n */\n public async searchAndSelectFirstResult(searchText: string): Promise<void> {\n await this.searchAndSelect(searchText, 0, this.fixture);\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n /**\n * Clears the country selection and input field.\n */\n public clear(): Promise<void> {\n this.enterSearch('', this.fixture);\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n //#region helpers\n\n private getCountryFlag(): DebugElement {\n return this.debugEl.query(By.css('.sky-country-field-flag'));\n }\n\n private getAutocompleteElement(): HTMLElement {\n return document.querySelector('.sky-autocomplete-results') as HTMLElement;\n }\n\n private getInputElement(): HTMLTextAreaElement {\n const debugEl = this.debugEl.query(By.css('textarea'));\n return debugEl.nativeElement as HTMLTextAreaElement;\n }\n\n private blurInput(fixture: ComponentFixture<any>): Promise<void> {\n SkyAppTestUtility.fireDomEvent(this.getInputElement(), 'blur');\n fixture.detectChanges();\n return fixture.whenStable();\n }\n\n private enterSearch(\n newValue: string,\n fixture: ComponentFixture<any>\n ): Promise<void> {\n const inputElement = this.getInputElement();\n inputElement.value = newValue;\n SkyAppTestUtility.fireDomEvent(inputElement, 'keyup');\n SkyAppTestUtility.fireDomEvent(inputElement, 'input');\n fixture.detectChanges();\n return fixture.whenStable();\n }\n\n private async searchAndGetResults(\n newValue: string,\n fixture: ComponentFixture<any>\n ): Promise<NodeListOf<HTMLElement>> {\n await this.enterSearch(newValue, fixture);\n fixture.detectChanges();\n await fixture.whenStable();\n return this.getAutocompleteElement().querySelectorAll(\n '.sky-autocomplete-result'\n );\n }\n\n private async searchAndSelect(\n newValue: string,\n index: number,\n fixture: ComponentFixture<any>\n ): Promise<void> {\n const inputElement = this.getInputElement();\n const searchResults = await this.searchAndGetResults(newValue, fixture);\n\n if (searchResults.length < index + 1) {\n throw new Error('Index out of range for results');\n }\n\n // Note: the ordering of these events is important!\n SkyAppTestUtility.fireDomEvent(inputElement, 'change');\n SkyAppTestUtility.fireDomEvent(searchResults[index], 'mousedown');\n this.blurInput(fixture);\n }\n\n //#endregion helpers\n}\n"]}
@@ -12,4 +12,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
12
12
  exports: [SkyCountryFieldModule],
13
13
  }]
14
14
  }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyeS1maWVsZC10ZXN0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xvb2t1cC90ZXN0aW5nL3NyYy9jb3VudHJ5LWZpZWxkL2NvdW50cnktZmllbGQtdGVzdGluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3RELE1BQU0sT0FBTyw0QkFBNEI7OzBIQUE1Qiw0QkFBNEI7MkhBQTVCLDRCQUE0QixZQUY3QixxQkFBcUI7MkhBRXBCLDRCQUE0QixZQUY3QixxQkFBcUI7NEZBRXBCLDRCQUE0QjtrQkFIeEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lDb3VudHJ5RmllbGRNb2R1bGUgfSBmcm9tICdAc2t5dXgvbG9va3VwJztcblxuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW1NreUNvdW50cnlGaWVsZE1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUNvdW50cnlGaWVsZFRlc3RpbmdNb2R1bGUge31cbiJdfQ==
15
+ //# sourceMappingURL=country-field-testing.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"country-field-testing.module.js","sourceRoot":"","sources":["../../../../../../../libs/components/lookup/testing/src/country-field/country-field-testing.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;;AAKtD,MAAM,OAAO,4BAA4B;;0HAA5B,4BAA4B;2HAA5B,4BAA4B,YAF7B,qBAAqB;2HAEpB,4BAA4B,YAF7B,qBAAqB;4FAEpB,4BAA4B;kBAHxC,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,qBAAqB,CAAC;iBACjC","sourcesContent":["import { NgModule } from '@angular/core';\n\nimport { SkyCountryFieldModule } from '@skyux/lookup';\n\n@NgModule({\n exports: [SkyCountryFieldModule],\n})\nexport class SkyCountryFieldTestingModule {}\n"]}
@@ -2,4 +2,4 @@ export * from './country-field/country-field-fixture';
2
2
  export * from './country-field/country-field-testing.module';
3
3
  export * from './search/search-fixture';
4
4
  export * from './search/search-testing.module';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xvb2t1cC90ZXN0aW5nL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvdW50cnktZmllbGQvY291bnRyeS1maWVsZC1maXh0dXJlJztcbmV4cG9ydCAqIGZyb20gJy4vY291bnRyeS1maWVsZC9jb3VudHJ5LWZpZWxkLXRlc3RpbmcubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gvc2VhcmNoLWZpeHR1cmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gvc2VhcmNoLXRlc3RpbmcubW9kdWxlJztcbiJdfQ==
5
+ //# sourceMappingURL=public-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../../../../../../libs/components/lookup/testing/src/public-api.ts"],"names":[],"mappings":"AAAA,cAAc,uCAAuC,CAAC;AACtD,cAAc,8CAA8C,CAAC;AAE7D,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC","sourcesContent":["export * from './country-field/country-field-fixture';\nexport * from './country-field/country-field-testing.module';\n\nexport * from './search/search-fixture';\nexport * from './search/search-testing.module';\n"]}