@skyux/lookup 5.2.1 → 5.5.0-beta.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 (207) hide show
  1. package/README.md +6 -4
  2. package/bundles/skyux-lookup.umd.js +10 -9
  3. package/documentation.json +468 -56
  4. package/esm2015/index.js +32 -0
  5. package/esm2015/index.js.map +1 -0
  6. package/esm2015/lib/modules/autocomplete/autocomplete-adapter.service.js +62 -0
  7. package/esm2015/lib/modules/autocomplete/autocomplete-adapter.service.js.map +1 -0
  8. package/esm2015/lib/modules/autocomplete/autocomplete-default-search-function.js +39 -0
  9. package/esm2015/lib/modules/autocomplete/autocomplete-default-search-function.js.map +1 -0
  10. package/esm2015/lib/modules/autocomplete/autocomplete-input.directive.js +220 -0
  11. package/esm2015/lib/modules/autocomplete/autocomplete-input.directive.js.map +1 -0
  12. package/esm2015/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.js +19 -0
  13. package/esm2015/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.js.map +1 -0
  14. package/esm2015/lib/modules/autocomplete/autocomplete.component.js +732 -0
  15. package/esm2015/lib/modules/autocomplete/autocomplete.component.js.map +1 -0
  16. package/esm2015/lib/modules/autocomplete/autocomplete.module.js +65 -0
  17. package/esm2015/lib/modules/autocomplete/autocomplete.module.js.map +1 -0
  18. package/esm2015/lib/modules/autocomplete/types/autocomplete-default-search-function-options.js +2 -0
  19. package/esm2015/lib/modules/autocomplete/types/autocomplete-default-search-function-options.js.map +1 -0
  20. package/esm2015/lib/modules/autocomplete/types/autocomplete-input-text-change.js +2 -0
  21. package/esm2015/lib/modules/autocomplete/types/autocomplete-input-text-change.js.map +1 -0
  22. package/esm2015/lib/modules/autocomplete/types/autocomplete-message-type.js +15 -0
  23. package/esm2015/lib/modules/autocomplete/types/autocomplete-message-type.js.map +1 -0
  24. package/esm2015/lib/modules/autocomplete/types/autocomplete-message.js +2 -0
  25. package/esm2015/lib/modules/autocomplete/types/autocomplete-message.js.map +1 -0
  26. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-args.js +2 -0
  27. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-args.js.map +1 -0
  28. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-function.js +2 -0
  29. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-function.js.map +1 -0
  30. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.js +2 -0
  31. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.js.map +1 -0
  32. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result.js +2 -0
  33. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result.js.map +1 -0
  34. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-filter.js +2 -0
  35. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-filter.js.map +1 -0
  36. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-response.js +2 -0
  37. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-response.js.map +1 -0
  38. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function.js +2 -0
  39. package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function.js.map +1 -0
  40. package/esm2015/lib/modules/autocomplete/types/autocomplete-selection-change.js +2 -0
  41. package/esm2015/lib/modules/autocomplete/types/autocomplete-selection-change.js.map +1 -0
  42. package/esm2015/lib/modules/autocomplete/types/autocomplete-show-more-args.js +2 -0
  43. package/esm2015/lib/modules/autocomplete/types/autocomplete-show-more-args.js.map +1 -0
  44. package/esm2015/{modules → lib/modules}/country-field/country-field.component.js +7 -3
  45. package/esm2015/lib/modules/country-field/country-field.component.js.map +1 -0
  46. package/esm2015/lib/modules/country-field/country-field.module.js +49 -0
  47. package/esm2015/lib/modules/country-field/country-field.module.js.map +1 -0
  48. package/esm2015/lib/modules/country-field/types/country.js +2 -0
  49. package/esm2015/lib/modules/country-field/types/country.js.map +1 -0
  50. package/esm2015/lib/modules/lookup/lookup-adapter.service.js +21 -0
  51. package/esm2015/lib/modules/lookup/lookup-adapter.service.js.map +1 -0
  52. package/esm2015/lib/modules/lookup/lookup-autocomplete-adapter.js +72 -0
  53. package/esm2015/lib/modules/lookup/lookup-autocomplete-adapter.js.map +1 -0
  54. package/esm2015/lib/modules/lookup/lookup-item-selected.pipe.js +16 -0
  55. package/esm2015/lib/modules/lookup/lookup-item-selected.pipe.js.map +1 -0
  56. package/esm2015/lib/modules/lookup/lookup-show-more-async-modal.component.js +186 -0
  57. package/esm2015/lib/modules/lookup/lookup-show-more-async-modal.component.js.map +1 -0
  58. package/esm2015/lib/modules/lookup/lookup-show-more-modal.component.js +258 -0
  59. package/esm2015/lib/modules/lookup/lookup-show-more-modal.component.js.map +1 -0
  60. package/esm2015/lib/modules/lookup/lookup.component.js +608 -0
  61. package/esm2015/lib/modules/lookup/lookup.component.js.map +1 -0
  62. package/esm2015/lib/modules/lookup/lookup.module.js +94 -0
  63. package/esm2015/lib/modules/lookup/lookup.module.js.map +1 -0
  64. package/esm2015/lib/modules/lookup/types/lookup-add-click-callback-args.js +2 -0
  65. package/esm2015/lib/modules/lookup/types/lookup-add-click-callback-args.js.map +1 -0
  66. package/esm2015/lib/modules/lookup/types/lookup-add-click-event-args.js +2 -0
  67. package/esm2015/lib/modules/lookup/types/lookup-add-click-event-args.js.map +1 -0
  68. package/esm2015/lib/modules/lookup/types/lookup-select-mode-type.js +2 -0
  69. package/esm2015/lib/modules/lookup/types/lookup-select-mode-type.js.map +1 -0
  70. package/esm2015/lib/modules/lookup/types/lookup-select-mode.js +16 -0
  71. package/esm2015/lib/modules/lookup/types/lookup-select-mode.js.map +1 -0
  72. package/esm2015/lib/modules/lookup/types/lookup-show-more-config.js +2 -0
  73. package/esm2015/lib/modules/lookup/types/lookup-show-more-config.js.map +1 -0
  74. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker-context.js +7 -0
  75. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker-context.js.map +1 -0
  76. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker.js +2 -0
  77. package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker.js.map +1 -0
  78. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.js +7 -0
  79. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.js.map +1 -0
  80. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-config.js +2 -0
  81. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-config.js.map +1 -0
  82. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-context.js +7 -0
  83. package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-context.js.map +1 -0
  84. package/esm2015/lib/modules/search/search-adapter.service.js +45 -0
  85. package/esm2015/lib/modules/search/search-adapter.service.js.map +1 -0
  86. package/esm2015/lib/modules/search/search.component.js +260 -0
  87. package/esm2015/lib/modules/search/search.component.js.map +1 -0
  88. package/esm2015/lib/modules/search/search.module.js +46 -0
  89. package/esm2015/lib/modules/search/search.module.js.map +1 -0
  90. package/esm2015/lib/modules/shared/sky-lookup-resources.module.js +72 -0
  91. package/esm2015/lib/modules/shared/sky-lookup-resources.module.js.map +1 -0
  92. package/esm2015/lib/modules/shared/sky-lookup-string-utils.js +8 -0
  93. package/esm2015/lib/modules/shared/sky-lookup-string-utils.js.map +1 -0
  94. package/esm2015/lib/polyfills.js +30 -0
  95. package/esm2015/lib/polyfills.js.map +1 -0
  96. package/esm2015/skyux-lookup.js +2 -2
  97. package/esm2015/skyux-lookup.js.map +1 -0
  98. package/esm2015/testing/country-field/country-field-fixture.js +1 -1
  99. package/esm2015/testing/country-field/country-field-fixture.js.map +1 -0
  100. package/esm2015/testing/country-field/country-field-testing.module.js +1 -1
  101. package/esm2015/testing/country-field/country-field-testing.module.js.map +1 -0
  102. package/esm2015/testing/public-api.js +1 -1
  103. package/esm2015/testing/public-api.js.map +1 -0
  104. package/esm2015/testing/search/search-fixture.js +1 -1
  105. package/esm2015/testing/search/search-fixture.js.map +1 -0
  106. package/esm2015/testing/search/search-testing.module.js +1 -1
  107. package/esm2015/testing/search/search-testing.module.js.map +1 -0
  108. package/esm2015/testing/skyux-lookup-testing.js +1 -1
  109. package/esm2015/testing/skyux-lookup-testing.js.map +1 -0
  110. package/fesm2015/skyux-lookup-testing.js.map +1 -1
  111. package/fesm2015/skyux-lookup.js +12 -11
  112. package/fesm2015/skyux-lookup.js.map +1 -1
  113. package/index.d.ts +27 -0
  114. package/{modules → lib/modules}/autocomplete/autocomplete-adapter.service.d.ts +0 -0
  115. package/{modules → lib/modules}/autocomplete/autocomplete-default-search-function.d.ts +0 -0
  116. package/{modules → lib/modules}/autocomplete/autocomplete-input.directive.d.ts +0 -0
  117. package/{modules → lib/modules}/autocomplete/autocomplete-search-async-disabled.pipe.d.ts +0 -0
  118. package/{modules → lib/modules}/autocomplete/autocomplete.component.d.ts +3 -3
  119. package/{modules → lib/modules}/autocomplete/autocomplete.module.d.ts +0 -0
  120. package/{modules → lib/modules}/autocomplete/types/autocomplete-default-search-function-options.d.ts +0 -0
  121. package/{modules → lib/modules}/autocomplete/types/autocomplete-input-text-change.d.ts +0 -0
  122. package/{modules → lib/modules}/autocomplete/types/autocomplete-message-type.d.ts +0 -0
  123. package/{modules → lib/modules}/autocomplete/types/autocomplete-message.d.ts +0 -0
  124. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-args.d.ts +0 -0
  125. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-function.d.ts +0 -0
  126. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-result-display-type.d.ts +0 -0
  127. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-result.d.ts +0 -0
  128. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function-filter.d.ts +0 -0
  129. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function-response.d.ts +0 -0
  130. package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function.d.ts +0 -0
  131. package/{modules → lib/modules}/autocomplete/types/autocomplete-selection-change.d.ts +0 -0
  132. package/{modules → lib/modules}/autocomplete/types/autocomplete-show-more-args.d.ts +0 -0
  133. package/{modules → lib/modules}/country-field/country-field.component.d.ts +3 -2
  134. package/{modules → lib/modules}/country-field/country-field.module.d.ts +0 -0
  135. package/{modules → lib/modules}/country-field/types/country.d.ts +0 -0
  136. package/{modules → lib/modules}/lookup/lookup-adapter.service.d.ts +0 -0
  137. package/{modules → lib/modules}/lookup/lookup-autocomplete-adapter.d.ts +2 -2
  138. package/{modules → lib/modules}/lookup/lookup-item-selected.pipe.d.ts +0 -0
  139. package/{modules → lib/modules}/lookup/lookup-show-more-async-modal.component.d.ts +0 -0
  140. package/{modules → lib/modules}/lookup/lookup-show-more-modal.component.d.ts +0 -0
  141. package/{modules → lib/modules}/lookup/lookup.component.d.ts +0 -0
  142. package/{modules → lib/modules}/lookup/lookup.module.d.ts +0 -0
  143. package/{modules → lib/modules}/lookup/types/lookup-add-click-callback-args.d.ts +0 -0
  144. package/{modules → lib/modules}/lookup/types/lookup-add-click-event-args.d.ts +0 -0
  145. package/{modules → lib/modules}/lookup/types/lookup-select-mode-type.d.ts +0 -0
  146. package/{modules → lib/modules}/lookup/types/lookup-select-mode.d.ts +0 -0
  147. package/{modules → lib/modules}/lookup/types/lookup-show-more-config.d.ts +0 -0
  148. package/{modules → lib/modules}/lookup/types/lookup-show-more-custom-picker-context.d.ts +0 -0
  149. package/{modules → lib/modules}/lookup/types/lookup-show-more-custom-picker.d.ts +0 -0
  150. package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-async-context.d.ts +0 -0
  151. package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-config.d.ts +1 -1
  152. package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-context.d.ts +0 -0
  153. package/{modules → lib/modules}/search/search-adapter.service.d.ts +0 -0
  154. package/{modules → lib/modules}/search/search.component.d.ts +5 -5
  155. package/{modules → lib/modules}/search/search.module.d.ts +0 -0
  156. package/{modules → lib/modules}/shared/sky-lookup-resources.module.d.ts +0 -0
  157. package/{modules → lib/modules}/shared/sky-lookup-string-utils.d.ts +0 -0
  158. package/{polyfills.d.ts → lib/polyfills.d.ts} +0 -0
  159. package/package.json +23 -9
  160. package/skyux-lookup.d.ts +1 -1
  161. package/LICENSE +0 -21
  162. package/esm2015/modules/autocomplete/autocomplete-adapter.service.js +0 -61
  163. package/esm2015/modules/autocomplete/autocomplete-default-search-function.js +0 -39
  164. package/esm2015/modules/autocomplete/autocomplete-input.directive.js +0 -220
  165. package/esm2015/modules/autocomplete/autocomplete-search-async-disabled.pipe.js +0 -19
  166. package/esm2015/modules/autocomplete/autocomplete.component.js +0 -731
  167. package/esm2015/modules/autocomplete/autocomplete.module.js +0 -65
  168. package/esm2015/modules/autocomplete/types/autocomplete-default-search-function-options.js +0 -2
  169. package/esm2015/modules/autocomplete/types/autocomplete-input-text-change.js +0 -2
  170. package/esm2015/modules/autocomplete/types/autocomplete-message-type.js +0 -15
  171. package/esm2015/modules/autocomplete/types/autocomplete-message.js +0 -2
  172. package/esm2015/modules/autocomplete/types/autocomplete-search-async-args.js +0 -2
  173. package/esm2015/modules/autocomplete/types/autocomplete-search-async-function.js +0 -2
  174. package/esm2015/modules/autocomplete/types/autocomplete-search-async-result-display-type.js +0 -2
  175. package/esm2015/modules/autocomplete/types/autocomplete-search-async-result.js +0 -2
  176. package/esm2015/modules/autocomplete/types/autocomplete-search-function-filter.js +0 -2
  177. package/esm2015/modules/autocomplete/types/autocomplete-search-function-response.js +0 -2
  178. package/esm2015/modules/autocomplete/types/autocomplete-search-function.js +0 -2
  179. package/esm2015/modules/autocomplete/types/autocomplete-selection-change.js +0 -2
  180. package/esm2015/modules/autocomplete/types/autocomplete-show-more-args.js +0 -2
  181. package/esm2015/modules/country-field/country-field.module.js +0 -49
  182. package/esm2015/modules/country-field/types/country.js +0 -2
  183. package/esm2015/modules/lookup/lookup-adapter.service.js +0 -21
  184. package/esm2015/modules/lookup/lookup-autocomplete-adapter.js +0 -72
  185. package/esm2015/modules/lookup/lookup-item-selected.pipe.js +0 -16
  186. package/esm2015/modules/lookup/lookup-show-more-async-modal.component.js +0 -184
  187. package/esm2015/modules/lookup/lookup-show-more-modal.component.js +0 -256
  188. package/esm2015/modules/lookup/lookup.component.js +0 -602
  189. package/esm2015/modules/lookup/lookup.module.js +0 -94
  190. package/esm2015/modules/lookup/types/lookup-add-click-callback-args.js +0 -2
  191. package/esm2015/modules/lookup/types/lookup-add-click-event-args.js +0 -2
  192. package/esm2015/modules/lookup/types/lookup-select-mode-type.js +0 -2
  193. package/esm2015/modules/lookup/types/lookup-select-mode.js +0 -16
  194. package/esm2015/modules/lookup/types/lookup-show-more-config.js +0 -2
  195. package/esm2015/modules/lookup/types/lookup-show-more-custom-picker-context.js +0 -7
  196. package/esm2015/modules/lookup/types/lookup-show-more-custom-picker.js +0 -2
  197. package/esm2015/modules/lookup/types/lookup-show-more-native-picker-async-context.js +0 -7
  198. package/esm2015/modules/lookup/types/lookup-show-more-native-picker-config.js +0 -2
  199. package/esm2015/modules/lookup/types/lookup-show-more-native-picker-context.js +0 -7
  200. package/esm2015/modules/search/search-adapter.service.js +0 -45
  201. package/esm2015/modules/search/search.component.js +0 -260
  202. package/esm2015/modules/search/search.module.js +0 -46
  203. package/esm2015/modules/shared/sky-lookup-resources.module.js +0 -72
  204. package/esm2015/modules/shared/sky-lookup-string-utils.js +0 -8
  205. package/esm2015/polyfills.js +0 -30
  206. package/esm2015/public-api.js +0 -32
  207. package/public-api.d.ts +0 -27
package/index.d.ts ADDED
@@ -0,0 +1,27 @@
1
+ export * from './lib/modules/autocomplete/types/autocomplete-default-search-function-options';
2
+ export * from './lib/modules/autocomplete/types/autocomplete-input-text-change';
3
+ export * from './lib/modules/autocomplete/types/autocomplete-search-async-args';
4
+ export * from './lib/modules/autocomplete/types/autocomplete-search-async-result';
5
+ export * from './lib/modules/autocomplete/types/autocomplete-search-async-result-display-type';
6
+ export * from './lib/modules/autocomplete/types/autocomplete-search-function';
7
+ export * from './lib/modules/autocomplete/types/autocomplete-search-function-filter';
8
+ export * from './lib/modules/autocomplete/types/autocomplete-search-function-response';
9
+ export * from './lib/modules/autocomplete/types/autocomplete-selection-change';
10
+ export * from './lib/modules/autocomplete/autocomplete.module';
11
+ export * from './lib/modules/country-field/country-field.module';
12
+ export * from './lib/modules/country-field/types/country';
13
+ export * from './lib/modules/lookup/lookup.module';
14
+ export * from './lib/modules/lookup/types/lookup-add-click-callback-args';
15
+ export * from './lib/modules/lookup/types/lookup-add-click-event-args';
16
+ export * from './lib/modules/lookup/types/lookup-select-mode';
17
+ export * from './lib/modules/lookup/types/lookup-select-mode-type';
18
+ export * from './lib/modules/lookup/types/lookup-show-more-config';
19
+ export * from './lib/modules/lookup/types/lookup-show-more-custom-picker';
20
+ export * from './lib/modules/lookup/types/lookup-show-more-custom-picker-context';
21
+ export * from './lib/modules/lookup/types/lookup-show-more-native-picker-config';
22
+ export * from './lib/modules/search/search.module';
23
+ export * from './lib/modules/search/search.component';
24
+ export { SkyAutocompleteInputDirective as λ1 } from './lib/modules/autocomplete/autocomplete-input.directive';
25
+ export { SkyAutocompleteComponent as λ2 } from './lib/modules/autocomplete/autocomplete.component';
26
+ export { SkyCountryFieldComponent as λ3 } from './lib/modules/country-field/country-field.component';
27
+ export { SkyLookupComponent as λ4 } from './lib/modules/lookup/lookup.component';
@@ -47,7 +47,7 @@ export declare class SkyAutocompleteComponent implements OnDestroy, AfterContent
47
47
  /**
48
48
  * Specifies an object property to display in the text input after users
49
49
  * select an item in the dropdown list.
50
- * @default name
50
+ * @default "name"
51
51
  */
52
52
  set descriptorProperty(value: string);
53
53
  get descriptorProperty(): string;
@@ -68,7 +68,7 @@ export declare class SkyAutocompleteComponent implements OnDestroy, AfterContent
68
68
  wrapperClass?: string;
69
69
  /**
70
70
  * Specifies the object properties to search.
71
- * @default ['name']
71
+ * @default ["name"]
72
72
  */
73
73
  set propertiesToSearch(value: string[]);
74
74
  get propertiesToSearch(): string[];
@@ -116,7 +116,7 @@ export declare class SkyAutocompleteComponent implements OnDestroy, AfterContent
116
116
  showAddButton: boolean;
117
117
  /**
118
118
  * Specifies the text to display when no search results are found.
119
- * @default No matches found
119
+ * @default "No matches found"
120
120
  */
121
121
  noResultsFoundText: string;
122
122
  /**
@@ -17,19 +17,20 @@ export declare class SkyCountryFieldComponent implements AfterViewInit, ControlV
17
17
  private themeSvc?;
18
18
  /**
19
19
  * Specifies the value for the `autocomplete` attribute on the form input.
20
- * @default 'off'
20
+ * @default "off"
21
21
  */
22
22
  autocompleteAttribute: string;
23
23
  /**
24
24
  * Specifies the [International Organization for Standardization Alpha 2](https://www.nationsonline.org/oneworld/country_code_list.htm)
25
25
  * country code for the default country.
26
26
  * When search results include the default country, it appears at the top of the list.
27
- * @default us
27
+ * @default "us"
28
28
  */
29
29
  set defaultCountry(value: string);
30
30
  get defaultCountry(): string;
31
31
  /**
32
32
  * Indicates whether to disable the country field.
33
+ * @default false
33
34
  */
34
35
  set disabled(isDisabled: boolean);
35
36
  get disabled(): boolean;
@@ -16,13 +16,13 @@ export declare class SkyLookupAutocompleteAdapter {
16
16
  /**
17
17
  * Specifies an object property to display in the text input after users
18
18
  * select an item in the dropdown list.
19
- * @default name
19
+ * @default "name"
20
20
  */
21
21
  set descriptorProperty(value: string);
22
22
  get descriptorProperty(): string;
23
23
  /**
24
24
  * Specifies an array of object properties to search.
25
- * @default ['name']
25
+ * @default ["name"]
26
26
  */
27
27
  set propertiesToSearch(value: string[]);
28
28
  get propertiesToSearch(): string[];
@@ -13,7 +13,7 @@ export interface SkyLookupShowMoreNativePickerConfig {
13
13
  itemTemplate?: TemplateRef<any>;
14
14
  /**
15
15
  * Specifies a title for the picker.
16
- * @default 'Select an option/Select options'
16
+ * @default "Select an option/Select options"
17
17
  */
18
18
  title?: string;
19
19
  }
@@ -27,10 +27,10 @@ export declare class SkySearchComponent implements OnDestroy, OnInit, OnChanges
27
27
  searchText: string;
28
28
  /**
29
29
  * Specifies the expand mode for the search input. The valid options
30
- * include `responsive` to collapse the search input into a button on
31
- * mobile devices, `none` to *not* collapse the search input on mobile
32
- * devices, and `fit` to extend the search input to fit the width of its container.
33
- * @default responsive
30
+ * include `"responsive"` to collapse the search input into a button on
31
+ * mobile devices, `"none"` to *not* collapse the search input on mobile
32
+ * devices, and `"fit"` to extend the search input to fit the width of its container.
33
+ * @default "responsive"
34
34
  */
35
35
  expandMode: string;
36
36
  /**
@@ -48,7 +48,7 @@ export declare class SkySearchComponent implements OnDestroy, OnInit, OnChanges
48
48
  /**
49
49
  * Specifies placeholder text to display in the search input until users
50
50
  * enter search criteria.
51
- * @default Find in this list
51
+ * @default "Find in this list"
52
52
  */
53
53
  placeholderText: string;
54
54
  inputAnimate: string;
File without changes
package/package.json CHANGED
@@ -1,23 +1,37 @@
1
1
  {
2
2
  "name": "@skyux/lookup",
3
- "version": "5.2.1",
3
+ "version": "5.5.0-beta.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^12.2.16",
6
6
  "@angular/core": "^12.2.16",
7
7
  "@angular/router": "^12.2.16",
8
- "@skyux/core": "^5.2.3",
9
- "@skyux/modals": "^5.0.3",
10
- "@skyux/forms": "^5.0.2",
11
- "@skyux/i18n": "^5.0.1",
12
- "@skyux/indicators": "^5.2.0",
13
- "@skyux/layout": "^5.2.2",
14
- "@skyux/lists": "^5.1.0",
15
- "@skyux/theme": "^5.0.5"
8
+ "@skyux/core": "5.5.0-beta.0",
9
+ "@skyux/modals": "5.5.0-beta.0",
10
+ "@skyux/forms": "5.5.0-beta.0",
11
+ "@skyux/i18n": "5.5.0-beta.0",
12
+ "@skyux/indicators": "5.5.0-beta.0",
13
+ "@skyux/layout": "5.5.0-beta.0",
14
+ "@skyux/lists": "5.5.0-beta.0",
15
+ "@skyux/theme": "5.5.0-beta.0"
16
16
  },
17
17
  "dependencies": {
18
18
  "intl-tel-input": "14.1.0",
19
19
  "tslib": "^2.3.1"
20
20
  },
21
+ "author": "Blackbaud, Inc.",
22
+ "keywords": [
23
+ "blackbaud",
24
+ "skyux"
25
+ ],
26
+ "license": "MIT",
27
+ "repository": {
28
+ "type": "git",
29
+ "url": "git+https://github.com/blackbaud/skyux.git"
30
+ },
31
+ "bugs": {
32
+ "url": "https://github.com/blackbaud/skyux/issues"
33
+ },
34
+ "homepage": "https://github.com/blackbaud/skyux#readme",
21
35
  "main": "bundles/skyux-lookup.umd.js",
22
36
  "module": "fesm2015/skyux-lookup.js",
23
37
  "es2015": "fesm2015/skyux-lookup.js",
package/skyux-lookup.d.ts CHANGED
@@ -2,4 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  /// <amd-module name="@skyux/lookup" />
5
- export * from './public-api';
5
+ export * from './index';
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2020 Blackbaud
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
@@ -1,61 +0,0 @@
1
- import { Injectable, } from '@angular/core';
2
- import '../../polyfills';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@skyux/core";
5
- /**
6
- * @internal
7
- */
8
- export class SkyAutocompleteAdapterService {
9
- constructor(coreAdapterService, rendererFactory) {
10
- this.coreAdapterService = coreAdapterService;
11
- this.rendererFactory = rendererFactory;
12
- this.renderer = this.rendererFactory.createRenderer(undefined, undefined);
13
- }
14
- /**
15
- * Adds the className for the provided element.
16
- */
17
- addCSSClass(element, className) {
18
- /* Sanity check */
19
- /* istanbul ignore else */
20
- if (element) {
21
- this.renderer.addClass(element, className);
22
- }
23
- }
24
- getOverlayFocusableElements(overlay) {
25
- return this.coreAdapterService.getFocusableChildren(
26
- /* Sanity check - calling function also has null check */
27
- /* istanbul ignore next */
28
- overlay === null || overlay === void 0 ? void 0 : overlay.componentRef.location.nativeElement, { ignoreTabIndex: true });
29
- }
30
- /**
31
- * Removes the className for the provided element.
32
- */
33
- removeCSSClass(element, className) {
34
- /* Sanity check */
35
- /* istanbul ignore else */
36
- if (element) {
37
- this.renderer.removeClass(element, className);
38
- }
39
- }
40
- setDropdownWidth(elementRef, dropdownRef, isInputBox) {
41
- const parentElement = isInputBox
42
- ? elementRef.nativeElement.closest('.sky-input-box')
43
- : elementRef.nativeElement;
44
- if (parentElement) {
45
- const width = parentElement.getBoundingClientRect().width;
46
- this.renderer.setStyle(dropdownRef.nativeElement, 'width', `${width}px`);
47
- }
48
- }
49
- /**
50
- * Sets the `tabIndex` of the `element` to the provided `tabIndex`.
51
- */
52
- setTabIndex(element, tabIndex) {
53
- element.tabIndex = tabIndex;
54
- }
55
- }
56
- SkyAutocompleteAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAutocompleteAdapterService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
57
- SkyAutocompleteAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAutocompleteAdapterService });
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAutocompleteAdapterService, decorators: [{
59
- type: Injectable
60
- }], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i0.RendererFactory2 }]; } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWFkYXB0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xvb2t1cC9zcmMvbW9kdWxlcy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsVUFBVSxHQUdYLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8saUJBQWlCLENBQUM7OztBQUV6Qjs7R0FFRztBQUVILE1BQU0sT0FBTyw2QkFBNkI7SUFHeEMsWUFDVSxrQkFBeUMsRUFDekMsZUFBaUM7UUFEakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtRQUN6QyxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFFekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVyxDQUFDLE9BQW9CLEVBQUUsU0FBaUI7UUFDeEQsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQixJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFFTSwyQkFBMkIsQ0FDaEMsT0FBMkI7UUFFM0IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CO1FBQ2pELHlEQUF5RDtRQUN6RCwwQkFBMEI7UUFDMUIsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUM1QyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FDekIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWMsQ0FBQyxPQUFvQixFQUFFLFNBQWlCO1FBQzNELGtCQUFrQjtRQUNsQiwwQkFBMEI7UUFDMUIsSUFBSSxPQUFPLEVBQUU7WUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDO0lBRU0sZ0JBQWdCLENBQ3JCLFVBQXNCLEVBQ3RCLFdBQXVCLEVBQ3ZCLFVBQW1CO1FBRW5CLE1BQU0sYUFBYSxHQUFHLFVBQVU7WUFDOUIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1lBQ3BELENBQUMsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQzdCLElBQUksYUFBYSxFQUFFO1lBQ2pCLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUM7U0FDMUU7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsT0FBb0IsRUFBRSxRQUFnQjtRQUN2RCxPQUFPLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUM5QixDQUFDOzsySEE5RFUsNkJBQTZCOytIQUE3Qiw2QkFBNkI7NEZBQTdCLDZCQUE2QjtrQkFEekMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUNvcmVBZGFwdGVyU2VydmljZSwgU2t5T3ZlcmxheUluc3RhbmNlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgJy4uLy4uL3BvbHlmaWxscyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lBdXRvY29tcGxldGVBZGFwdGVyU2VydmljZSB7XG4gIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvcmVBZGFwdGVyU2VydmljZTogU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyXG4gICkge1xuICAgIHRoaXMucmVuZGVyZXIgPSB0aGlzLnJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyB0aGUgY2xhc3NOYW1lIGZvciB0aGUgcHJvdmlkZWQgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRDU1NDbGFzcyhlbGVtZW50OiBIVE1MRWxlbWVudCwgY2xhc3NOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvKiBTYW5pdHkgY2hlY2sgKi9cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChlbGVtZW50KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGVsZW1lbnQsIGNsYXNzTmFtZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldE92ZXJsYXlGb2N1c2FibGVFbGVtZW50cyhcbiAgICBvdmVybGF5OiBTa3lPdmVybGF5SW5zdGFuY2VcbiAgKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuY29yZUFkYXB0ZXJTZXJ2aWNlLmdldEZvY3VzYWJsZUNoaWxkcmVuKFxuICAgICAgLyogU2FuaXR5IGNoZWNrIC0gY2FsbGluZyBmdW5jdGlvbiBhbHNvIGhhcyBudWxsIGNoZWNrICovXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgb3ZlcmxheT8uY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB7IGlnbm9yZVRhYkluZGV4OiB0cnVlIH1cbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgdGhlIGNsYXNzTmFtZSBmb3IgdGhlIHByb3ZpZGVkIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlQ1NTQ2xhc3MoZWxlbWVudDogSFRNTEVsZW1lbnQsIGNsYXNzTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgLyogU2FuaXR5IGNoZWNrICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhlbGVtZW50LCBjbGFzc05hbWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXREcm9wZG93bldpZHRoKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgZHJvcGRvd25SZWY6IEVsZW1lbnRSZWYsXG4gICAgaXNJbnB1dEJveDogYm9vbGVhblxuICApOiB2b2lkIHtcbiAgICBjb25zdCBwYXJlbnRFbGVtZW50ID0gaXNJbnB1dEJveFxuICAgICAgPyBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xvc2VzdCgnLnNreS1pbnB1dC1ib3gnKVxuICAgICAgOiBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKHBhcmVudEVsZW1lbnQpIHtcbiAgICAgIGNvbnN0IHdpZHRoID0gcGFyZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZHJvcGRvd25SZWYubmF0aXZlRWxlbWVudCwgJ3dpZHRoJywgYCR7d2lkdGh9cHhgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgYHRhYkluZGV4YCBvZiB0aGUgYGVsZW1lbnRgIHRvIHRoZSBwcm92aWRlZCBgdGFiSW5kZXhgLlxuICAgKi9cbiAgcHVibGljIHNldFRhYkluZGV4KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCB0YWJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgZWxlbWVudC50YWJJbmRleCA9IHRhYkluZGV4O1xuICB9XG59XG4iXX0=
@@ -1,39 +0,0 @@
1
- import { normalizeDiacritics } from '../shared/sky-lookup-string-utils';
2
- export function skyAutocompleteDefaultSearchFunction(options) {
3
- const filterData = function (searchText, data) {
4
- return data.filter((item) => {
5
- if (!options.searchFilters || !options.searchFilters.length) {
6
- return true;
7
- }
8
- // Find the first failing filter (we can skip the others if one fails).
9
- const failedFilter = options.searchFilters.find((filter) => {
10
- return !filter.call({}, searchText, item);
11
- });
12
- return failedFilter === undefined;
13
- });
14
- };
15
- const search = function (searchText, data) {
16
- const results = [];
17
- /* Sanity check - autocomplete will not call search with empty search text */
18
- /* istanbul ignore if */
19
- if (!searchText) {
20
- return results;
21
- }
22
- const searchTextNormalized = normalizeDiacritics(searchText).toUpperCase();
23
- const filteredData = filterData(searchText, data);
24
- for (let i = 0, n = filteredData.length; i < n; i++) {
25
- const result = filteredData[i];
26
- const isMatch = options.propertiesToSearch.find((property) => {
27
- let value = (result[property] || '').toString();
28
- value = normalizeDiacritics(value).toUpperCase();
29
- return value.indexOf(searchTextNormalized) > -1;
30
- });
31
- if (isMatch) {
32
- results.push(result);
33
- }
34
- }
35
- return results;
36
- };
37
- return search;
38
- }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWRlZmF1bHQtc2VhcmNoLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbG9va3VwL3NyYy9tb2R1bGVzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtZGVmYXVsdC1zZWFyY2gtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFeEUsTUFBTSxVQUFVLG9DQUFvQyxDQUNsRCxPQUFvRDtJQUVwRCxNQUFNLFVBQVUsR0FBRyxVQUFVLFVBQWtCLEVBQUUsSUFBVztRQUMxRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUMvQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFO2dCQUMzRCxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsdUVBQXVFO1lBQ3ZFLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUM3QyxDQUFDLE1BQTJDLEVBQUUsRUFBRTtnQkFDOUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM1QyxDQUFDLENBQ0YsQ0FBQztZQUVGLE9BQU8sWUFBWSxLQUFLLFNBQVMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLFVBQ2IsVUFBa0IsRUFDbEIsSUFBVztRQUVYLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUVuQiw2RUFBNkU7UUFDN0Usd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUVELE1BQU0sb0JBQW9CLEdBQUcsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFM0UsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVsRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25ELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBZ0IsRUFBRSxFQUFFO2dCQUNuRSxJQUFJLEtBQUssR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEQsS0FBSyxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNqRCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNsRCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksT0FBTyxFQUFFO2dCQUNYLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdEI7U0FDRjtRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUMsQ0FBQztJQUVGLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lBdXRvY29tcGxldGVTZWFyY2hGdW5jdGlvbiB9IGZyb20gJy4vdHlwZXMvYXV0b2NvbXBsZXRlLXNlYXJjaC1mdW5jdGlvbic7XG5cbmltcG9ydCB7IFNreUF1dG9jb21wbGV0ZVNlYXJjaEZ1bmN0aW9uRmlsdGVyIH0gZnJvbSAnLi90eXBlcy9hdXRvY29tcGxldGUtc2VhcmNoLWZ1bmN0aW9uLWZpbHRlcic7XG5cbmltcG9ydCB7IFNreUF1dG9jb21wbGV0ZVNlYXJjaEZ1bmN0aW9uUmVzcG9uc2UgfSBmcm9tICcuL3R5cGVzL2F1dG9jb21wbGV0ZS1zZWFyY2gtZnVuY3Rpb24tcmVzcG9uc2UnO1xuXG5pbXBvcnQgeyBTa3lBdXRvY29tcGxldGVEZWZhdWx0U2VhcmNoRnVuY3Rpb25PcHRpb25zIH0gZnJvbSAnLi90eXBlcy9hdXRvY29tcGxldGUtZGVmYXVsdC1zZWFyY2gtZnVuY3Rpb24tb3B0aW9ucyc7XG5pbXBvcnQgeyBub3JtYWxpemVEaWFjcml0aWNzIH0gZnJvbSAnLi4vc2hhcmVkL3NreS1sb29rdXAtc3RyaW5nLXV0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNreUF1dG9jb21wbGV0ZURlZmF1bHRTZWFyY2hGdW5jdGlvbihcbiAgb3B0aW9uczogU2t5QXV0b2NvbXBsZXRlRGVmYXVsdFNlYXJjaEZ1bmN0aW9uT3B0aW9uc1xuKTogU2t5QXV0b2NvbXBsZXRlU2VhcmNoRnVuY3Rpb24ge1xuICBjb25zdCBmaWx0ZXJEYXRhID0gZnVuY3Rpb24gKHNlYXJjaFRleHQ6IHN0cmluZywgZGF0YTogYW55W10pOiBhbnlbXSB7XG4gICAgcmV0dXJuIGRhdGEuZmlsdGVyKChpdGVtOiBhbnkpID0+IHtcbiAgICAgIGlmICghb3B0aW9ucy5zZWFyY2hGaWx0ZXJzIHx8ICFvcHRpb25zLnNlYXJjaEZpbHRlcnMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5kIHRoZSBmaXJzdCBmYWlsaW5nIGZpbHRlciAod2UgY2FuIHNraXAgdGhlIG90aGVycyBpZiBvbmUgZmFpbHMpLlxuICAgICAgY29uc3QgZmFpbGVkRmlsdGVyID0gb3B0aW9ucy5zZWFyY2hGaWx0ZXJzLmZpbmQoXG4gICAgICAgIChmaWx0ZXI6IFNreUF1dG9jb21wbGV0ZVNlYXJjaEZ1bmN0aW9uRmlsdGVyKSA9PiB7XG4gICAgICAgICAgcmV0dXJuICFmaWx0ZXIuY2FsbCh7fSwgc2VhcmNoVGV4dCwgaXRlbSk7XG4gICAgICAgIH1cbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBmYWlsZWRGaWx0ZXIgPT09IHVuZGVmaW5lZDtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBzZWFyY2ggPSBmdW5jdGlvbiAoXG4gICAgc2VhcmNoVGV4dDogc3RyaW5nLFxuICAgIGRhdGE6IGFueVtdXG4gICk6IFNreUF1dG9jb21wbGV0ZVNlYXJjaEZ1bmN0aW9uUmVzcG9uc2Uge1xuICAgIGNvbnN0IHJlc3VsdHMgPSBbXTtcblxuICAgIC8qIFNhbml0eSBjaGVjayAtIGF1dG9jb21wbGV0ZSB3aWxsIG5vdCBjYWxsIHNlYXJjaCB3aXRoIGVtcHR5IHNlYXJjaCB0ZXh0ICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCFzZWFyY2hUZXh0KSB7XG4gICAgICByZXR1cm4gcmVzdWx0cztcbiAgICB9XG5cbiAgICBjb25zdCBzZWFyY2hUZXh0Tm9ybWFsaXplZCA9IG5vcm1hbGl6ZURpYWNyaXRpY3Moc2VhcmNoVGV4dCkudG9VcHBlckNhc2UoKTtcblxuICAgIGNvbnN0IGZpbHRlcmVkRGF0YSA9IGZpbHRlckRhdGEoc2VhcmNoVGV4dCwgZGF0YSk7XG5cbiAgICBmb3IgKGxldCBpID0gMCwgbiA9IGZpbHRlcmVkRGF0YS5sZW5ndGg7IGkgPCBuOyBpKyspIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGZpbHRlcmVkRGF0YVtpXTtcbiAgICAgIGNvbnN0IGlzTWF0Y2ggPSBvcHRpb25zLnByb3BlcnRpZXNUb1NlYXJjaC5maW5kKChwcm9wZXJ0eTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGxldCB2YWx1ZSA9IChyZXN1bHRbcHJvcGVydHldIHx8ICcnKS50b1N0cmluZygpO1xuICAgICAgICB2YWx1ZSA9IG5vcm1hbGl6ZURpYWNyaXRpY3ModmFsdWUpLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIHJldHVybiB2YWx1ZS5pbmRleE9mKHNlYXJjaFRleHROb3JtYWxpemVkKSA+IC0xO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc01hdGNoKSB7XG4gICAgICAgIHJlc3VsdHMucHVzaChyZXN1bHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHRzO1xuICB9O1xuXG4gIHJldHVybiBzZWFyY2g7XG59XG4iXX0=