@coreui/angular-pro 4.3.16 → 4.3.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. package/esm2020/lib/accordion/accordion/accordion.component.mjs +3 -3
  2. package/esm2020/lib/accordion/accordion-button/accordion-button.directive.mjs +3 -3
  3. package/esm2020/lib/accordion/accordion-item/accordion-item.component.mjs +3 -3
  4. package/esm2020/lib/accordion/accordion.module.mjs +4 -4
  5. package/esm2020/lib/accordion/accordion.service.mjs +3 -3
  6. package/esm2020/lib/alert/alert-heading.directive.mjs +3 -3
  7. package/esm2020/lib/alert/alert-link.directive.mjs +3 -3
  8. package/esm2020/lib/alert/alert.component.mjs +3 -3
  9. package/esm2020/lib/alert/alert.module.mjs +4 -4
  10. package/esm2020/lib/avatar/avatar.component.mjs +3 -3
  11. package/esm2020/lib/avatar/avatar.module.mjs +4 -4
  12. package/esm2020/lib/backdrop/backdrop.service.mjs +3 -3
  13. package/esm2020/lib/badge/badge.component.mjs +3 -3
  14. package/esm2020/lib/badge/badge.module.mjs +4 -4
  15. package/esm2020/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +3 -3
  16. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
  17. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +3 -3
  18. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +3 -3
  19. package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +4 -4
  20. package/esm2020/lib/button/button-close.directive.mjs +3 -3
  21. package/esm2020/lib/button/button.directive.mjs +3 -3
  22. package/esm2020/lib/button/button.module.mjs +4 -4
  23. package/esm2020/lib/button-group/button-group/button-group.component.mjs +3 -3
  24. package/esm2020/lib/button-group/button-group.module.mjs +4 -4
  25. package/esm2020/lib/button-group/button-toolbar/button-toolbar.component.mjs +3 -3
  26. package/esm2020/lib/calendar/calendar/calendar-class-view.pipe.mjs +3 -3
  27. package/esm2020/lib/calendar/calendar/calendar.component.mjs +3 -3
  28. package/esm2020/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +3 -3
  29. package/esm2020/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +3 -3
  30. package/esm2020/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +3 -3
  31. package/esm2020/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +3 -3
  32. package/esm2020/lib/calendar/calendar-month/calendar-day.directive.mjs +3 -3
  33. package/esm2020/lib/calendar/calendar-month/calendar-day.pipe.mjs +3 -3
  34. package/esm2020/lib/calendar/calendar-month/calendar-month.component.mjs +3 -3
  35. package/esm2020/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +3 -3
  36. package/esm2020/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +3 -3
  37. package/esm2020/lib/calendar/calendar.module.mjs +4 -4
  38. package/esm2020/lib/calendar/calendar.service.mjs +3 -3
  39. package/esm2020/lib/callout/callout.component.mjs +3 -3
  40. package/esm2020/lib/callout/callout.module.mjs +4 -4
  41. package/esm2020/lib/card/card-body.component.mjs +3 -3
  42. package/esm2020/lib/card/card-footer.component.mjs +3 -3
  43. package/esm2020/lib/card/card-group.component.mjs +3 -3
  44. package/esm2020/lib/card/card-header-actions.component.mjs +3 -3
  45. package/esm2020/lib/card/card-header.component.mjs +3 -3
  46. package/esm2020/lib/card/card-img-overlay/card-img-overlay.component.mjs +3 -3
  47. package/esm2020/lib/card/card-img.directive.mjs +3 -3
  48. package/esm2020/lib/card/card-link.directive.mjs +3 -3
  49. package/esm2020/lib/card/card-subtitle.directive.mjs +3 -3
  50. package/esm2020/lib/card/card-text.directive.mjs +3 -3
  51. package/esm2020/lib/card/card-title.directive.mjs +3 -3
  52. package/esm2020/lib/card/card.component.mjs +3 -3
  53. package/esm2020/lib/card/card.module.mjs +4 -4
  54. package/esm2020/lib/carousel/carousel/carousel.component.mjs +3 -3
  55. package/esm2020/lib/carousel/carousel-caption/carousel-caption.component.mjs +3 -3
  56. package/esm2020/lib/carousel/carousel-control/carousel-control.component.mjs +3 -3
  57. package/esm2020/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +3 -3
  58. package/esm2020/lib/carousel/carousel-inner/carousel-inner.component.mjs +3 -3
  59. package/esm2020/lib/carousel/carousel-item/carousel-item.component.mjs +3 -3
  60. package/esm2020/lib/carousel/carousel-state.mjs +3 -3
  61. package/esm2020/lib/carousel/carousel.config.mjs +3 -3
  62. package/esm2020/lib/carousel/carousel.module.mjs +4 -4
  63. package/esm2020/lib/carousel/carousel.service.mjs +3 -3
  64. package/esm2020/lib/collapse/collapse.directive.mjs +3 -3
  65. package/esm2020/lib/collapse/collapse.module.mjs +4 -4
  66. package/esm2020/lib/date-picker/date-picker.component.mjs +3 -3
  67. package/esm2020/lib/date-picker/date-picker.module.mjs +4 -4
  68. package/esm2020/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +3 -3
  69. package/esm2020/lib/date-range-picker/date-range-picker.module.mjs +4 -4
  70. package/esm2020/lib/dropdown/dropdown/dropdown.component.mjs +6 -6
  71. package/esm2020/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +3 -3
  72. package/esm2020/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +3 -3
  73. package/esm2020/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +3 -3
  74. package/esm2020/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +3 -3
  75. package/esm2020/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +3 -3
  76. package/esm2020/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +3 -3
  77. package/esm2020/lib/dropdown/dropdown.module.mjs +4 -4
  78. package/esm2020/lib/dropdown/dropdown.service.mjs +3 -3
  79. package/esm2020/lib/element-cover/element-cover.component.mjs +3 -3
  80. package/esm2020/lib/element-cover/element-cover.module.mjs +4 -4
  81. package/esm2020/lib/footer/footer.component.mjs +3 -3
  82. package/esm2020/lib/footer/footer.module.mjs +4 -4
  83. package/esm2020/lib/form/form/form.directive.mjs +3 -3
  84. package/esm2020/lib/form/form-check/form-check-input.directive.mjs +3 -3
  85. package/esm2020/lib/form/form-check/form-check-label.directive.mjs +3 -3
  86. package/esm2020/lib/form/form-check/form-check.component.mjs +3 -3
  87. package/esm2020/lib/form/form-control/form-control.directive.mjs +3 -3
  88. package/esm2020/lib/form/form-feedback/form-feedback.component.mjs +3 -3
  89. package/esm2020/lib/form/form-floating/form-floating.directive.mjs +3 -3
  90. package/esm2020/lib/form/form-label/form-label.directive.mjs +3 -3
  91. package/esm2020/lib/form/form-select/form-select.directive.mjs +3 -3
  92. package/esm2020/lib/form/form-text/form-text.directive.mjs +3 -3
  93. package/esm2020/lib/form/form.module.mjs +4 -4
  94. package/esm2020/lib/form/input-group/input-group.component.mjs +3 -3
  95. package/esm2020/lib/form/input-group-text/input-group-text.directive.mjs +3 -3
  96. package/esm2020/lib/grid/col.component.mjs +3 -3
  97. package/esm2020/lib/grid/col.directive.mjs +3 -3
  98. package/esm2020/lib/grid/container.component.mjs +3 -3
  99. package/esm2020/lib/grid/grid.module.mjs +4 -4
  100. package/esm2020/lib/grid/gutter.directive.mjs +3 -3
  101. package/esm2020/lib/grid/row.component.mjs +3 -3
  102. package/esm2020/lib/grid/row.directive.mjs +3 -3
  103. package/esm2020/lib/header/header/header.component.mjs +3 -3
  104. package/esm2020/lib/header/header-brand/header-brand.component.mjs +3 -3
  105. package/esm2020/lib/header/header-divider/header-divider.component.mjs +3 -3
  106. package/esm2020/lib/header/header-nav/header-nav.component.mjs +3 -3
  107. package/esm2020/lib/header/header-text/header-text.component.mjs +3 -3
  108. package/esm2020/lib/header/header-toggler/header-toggler.directive.mjs +3 -3
  109. package/esm2020/lib/header/header.module.mjs +4 -4
  110. package/esm2020/lib/image/img.directive.mjs +3 -3
  111. package/esm2020/lib/image/img.module.mjs +4 -4
  112. package/esm2020/lib/list-group/list-group-item.directive.mjs +3 -3
  113. package/esm2020/lib/list-group/list-group.directive.mjs +3 -3
  114. package/esm2020/lib/list-group/list-group.module.mjs +4 -4
  115. package/esm2020/lib/loading-button/loading-button.component.mjs +3 -3
  116. package/esm2020/lib/loading-button/loading-button.module.mjs +4 -4
  117. package/esm2020/lib/modal/modal/modal.component.mjs +3 -3
  118. package/esm2020/lib/modal/modal-body/modal-body.component.mjs +3 -3
  119. package/esm2020/lib/modal/modal-content/modal-content.component.mjs +3 -3
  120. package/esm2020/lib/modal/modal-dialog/modal-dialog.component.mjs +3 -3
  121. package/esm2020/lib/modal/modal-dismiss/modal-toggle.directive.mjs +3 -3
  122. package/esm2020/lib/modal/modal-footer/modal-footer.component.mjs +3 -3
  123. package/esm2020/lib/modal/modal-header/modal-header.component.mjs +3 -3
  124. package/esm2020/lib/modal/modal-title/modal-title.directive.mjs +3 -3
  125. package/esm2020/lib/modal/modal.module.mjs +4 -4
  126. package/esm2020/lib/modal/modal.service.mjs +3 -3
  127. package/esm2020/lib/multi-select/multi-select/multi-select-search.directive.mjs +68 -0
  128. package/esm2020/lib/multi-select/multi-select/multi-select.component.mjs +612 -175
  129. package/esm2020/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +5 -5
  130. package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +3 -3
  131. package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +7 -7
  132. package/esm2020/lib/multi-select/multi-select-option/multi-select-option.component.mjs +194 -59
  133. package/esm2020/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +15 -8
  134. package/esm2020/lib/multi-select/multi-select.module.mjs +13 -9
  135. package/esm2020/lib/multi-select/multi-select.service.mjs +27 -10
  136. package/esm2020/lib/multi-select/multi-select.type.mjs +1 -1
  137. package/esm2020/lib/multi-select/public_api.mjs +1 -1
  138. package/esm2020/lib/nav/nav-item.component.mjs +3 -3
  139. package/esm2020/lib/nav/nav-link.directive.mjs +3 -3
  140. package/esm2020/lib/nav/nav.component.mjs +3 -3
  141. package/esm2020/lib/nav/nav.module.mjs +4 -4
  142. package/esm2020/lib/navbar/navbar-brand/navbar-brand.directive.mjs +3 -3
  143. package/esm2020/lib/navbar/navbar-nav/navbar-nav.component.mjs +3 -3
  144. package/esm2020/lib/navbar/navbar-text/navbar-text.component.mjs +3 -3
  145. package/esm2020/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +3 -3
  146. package/esm2020/lib/navbar/navbar.component.mjs +3 -3
  147. package/esm2020/lib/navbar/navbar.module.mjs +4 -4
  148. package/esm2020/lib/offcanvas/offcanvas/offcanvas.component.mjs +3 -3
  149. package/esm2020/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +3 -3
  150. package/esm2020/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +3 -3
  151. package/esm2020/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +3 -3
  152. package/esm2020/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +3 -3
  153. package/esm2020/lib/offcanvas/offcanvas.module.mjs +4 -4
  154. package/esm2020/lib/offcanvas/offcanvas.service.mjs +3 -3
  155. package/esm2020/lib/pagination/page-item/page-item.component.mjs +3 -3
  156. package/esm2020/lib/pagination/page-item/page-item.directive.mjs +3 -3
  157. package/esm2020/lib/pagination/page-link/page-link.directive.mjs +3 -3
  158. package/esm2020/lib/pagination/pagination/pagination.component.mjs +3 -3
  159. package/esm2020/lib/pagination/pagination.module.mjs +4 -4
  160. package/esm2020/lib/placeholder/placeholder-animation.directive.mjs +3 -3
  161. package/esm2020/lib/placeholder/placeholder.directive.mjs +3 -3
  162. package/esm2020/lib/placeholder/placeholder.module.mjs +4 -4
  163. package/esm2020/lib/popover/popover/popover.component.mjs +3 -3
  164. package/esm2020/lib/popover/popover.directive.mjs +3 -3
  165. package/esm2020/lib/popover/popover.module.mjs +4 -4
  166. package/esm2020/lib/progress/progress-bar.component.mjs +3 -3
  167. package/esm2020/lib/progress/progress.component.mjs +3 -3
  168. package/esm2020/lib/progress/progress.module.mjs +4 -4
  169. package/esm2020/lib/services/class-toggle.service.mjs +3 -3
  170. package/esm2020/lib/services/intersection.service.mjs +3 -3
  171. package/esm2020/lib/services/listeners.service.mjs +3 -3
  172. package/esm2020/lib/shared/html-attr.directive.mjs +3 -3
  173. package/esm2020/lib/shared/shared.module.mjs +4 -4
  174. package/esm2020/lib/shared/template-id.directive.mjs +3 -3
  175. package/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +3 -3
  176. package/esm2020/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +3 -3
  177. package/esm2020/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +3 -3
  178. package/esm2020/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  179. package/esm2020/lib/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  180. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +3 -3
  181. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +3 -3
  182. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +3 -3
  183. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +3 -3
  184. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +3 -3
  185. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +3 -3
  186. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +6 -6
  187. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +3 -3
  188. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +3 -3
  189. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +6 -6
  190. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +6 -6
  191. package/esm2020/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +3 -3
  192. package/esm2020/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +3 -3
  193. package/esm2020/lib/sidebar/sidebar.module.mjs +4 -4
  194. package/esm2020/lib/sidebar/sidebar.service.mjs +3 -3
  195. package/esm2020/lib/smart-pagination/smart-pagination.component.mjs +3 -3
  196. package/esm2020/lib/smart-pagination/smart-pagination.module.mjs +4 -4
  197. package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +3 -3
  198. package/esm2020/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +3 -3
  199. package/esm2020/lib/smart-table/smart-table-filter/filter-input.directive.mjs +3 -3
  200. package/esm2020/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +3 -3
  201. package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +3 -3
  202. package/esm2020/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +3 -3
  203. package/esm2020/lib/smart-table/smart-table.module.mjs +4 -4
  204. package/esm2020/lib/spinner/spinner.component.mjs +3 -3
  205. package/esm2020/lib/spinner/spinner.module.mjs +4 -4
  206. package/esm2020/lib/table/table-active.directive.mjs +3 -3
  207. package/esm2020/lib/table/table-color.directive.mjs +3 -3
  208. package/esm2020/lib/table/table.directive.mjs +3 -3
  209. package/esm2020/lib/table/table.module.mjs +4 -4
  210. package/esm2020/lib/tabs/tab-content/tab-content.component.mjs +3 -3
  211. package/esm2020/lib/tabs/tab-content-ref.directive.mjs +3 -3
  212. package/esm2020/lib/tabs/tab-pane/tab-pane.component.mjs +3 -3
  213. package/esm2020/lib/tabs/tab.service.mjs +3 -3
  214. package/esm2020/lib/tabs/tabs.module.mjs +4 -4
  215. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +6 -6
  216. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +6 -6
  217. package/esm2020/lib/time-picker/time-picker.component.mjs +3 -3
  218. package/esm2020/lib/time-picker/time-picker.module.mjs +4 -4
  219. package/esm2020/lib/toast/toast/toast.component.mjs +3 -3
  220. package/esm2020/lib/toast/toast-body/toast-body.component.mjs +3 -3
  221. package/esm2020/lib/toast/toast-close.directive.mjs +3 -3
  222. package/esm2020/lib/toast/toast-header/toast-header.component.mjs +3 -3
  223. package/esm2020/lib/toast/toast.module.mjs +4 -4
  224. package/esm2020/lib/toast/toaster/toaster-host.directive.mjs +3 -3
  225. package/esm2020/lib/toast/toaster/toaster.component.mjs +3 -3
  226. package/esm2020/lib/toast/toaster/toaster.service.mjs +3 -3
  227. package/esm2020/lib/tooltip/tooltip/tooltip.component.mjs +3 -3
  228. package/esm2020/lib/tooltip/tooltip.directive.mjs +3 -3
  229. package/esm2020/lib/tooltip/tooltip.module.mjs +4 -4
  230. package/esm2020/lib/utilities/align.directive.mjs +3 -3
  231. package/esm2020/lib/utilities/bg-color.directive.mjs +3 -3
  232. package/esm2020/lib/utilities/border.directive.mjs +3 -3
  233. package/esm2020/lib/utilities/rounded.directive.mjs +3 -3
  234. package/esm2020/lib/utilities/text-color.directive.mjs +3 -3
  235. package/esm2020/lib/utilities/utilities.module.mjs +4 -4
  236. package/esm2020/lib/widget/widget-stat-a/widget-stat-a.component.mjs +3 -3
  237. package/esm2020/lib/widget/widget-stat-b/widget-stat-b.component.mjs +3 -3
  238. package/esm2020/lib/widget/widget-stat-c/widget-stat-c.component.mjs +3 -3
  239. package/esm2020/lib/widget/widget-stat-d/widget-stat-d.component.mjs +3 -3
  240. package/esm2020/lib/widget/widget-stat-e/widget-stat-e.component.mjs +3 -3
  241. package/esm2020/lib/widget/widget-stat-f/widget-stat-f.component.mjs +3 -3
  242. package/esm2020/lib/widget/widget.module.mjs +4 -4
  243. package/fesm2015/coreui-angular-pro.mjs +1697 -1030
  244. package/fesm2015/coreui-angular-pro.mjs.map +1 -1
  245. package/fesm2020/coreui-angular-pro.mjs +1678 -1020
  246. package/fesm2020/coreui-angular-pro.mjs.map +1 -1
  247. package/lib/multi-select/multi-select/multi-select-search.directive.d.ts +15 -0
  248. package/lib/multi-select/multi-select/multi-select.component.d.ts +160 -27
  249. package/lib/multi-select/multi-select-option/multi-select-option.component.d.ts +58 -16
  250. package/lib/multi-select/multi-select-tag/multi-select-tag.component.d.ts +5 -2
  251. package/lib/multi-select/multi-select.module.d.ts +8 -6
  252. package/lib/multi-select/multi-select.service.d.ts +14 -7
  253. package/lib/multi-select/multi-select.type.d.ts +4 -2
  254. package/lib/multi-select/public_api.d.ts +1 -0
  255. package/package.json +1 -1
@@ -0,0 +1,15 @@
1
+ import { AfterViewInit, ElementRef, EventEmitter, OnDestroy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class MultiSelectSearchDirective implements AfterViewInit, OnDestroy {
4
+ #private;
5
+ private readonly elementRef;
6
+ constructor(elementRef: ElementRef);
7
+ delay: number;
8
+ set value(value: string);
9
+ readonly valueChange: EventEmitter<string>;
10
+ ngAfterViewInit(): void;
11
+ ngOnDestroy(): void;
12
+ private setSubscription;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectSearchDirective, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MultiSelectSearchDirective, "[cMultiSelectSearch]", ["cMultiSelectSearch"], { "delay": "delay"; "value": "value"; }, { "valueChange": "valueChange"; }, never, never, false, never>;
15
+ }
@@ -1,17 +1,20 @@
1
- import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, IterableDiffers, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, ViewContainerRef } from '@angular/core';
2
- import { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';
3
- import { BooleanInput } from '@angular/cdk/coercion';
1
+ import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, IterableDiffers, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core';
4
2
  import { ControlValueAccessor } from '@angular/forms';
3
+ import { FocusableOption, FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';
4
+ import { BooleanInput } from '@angular/cdk/coercion';
5
+ import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
6
+ import { BehaviorSubject } from 'rxjs';
5
7
  import { Modifier, Options } from '@popperjs/core';
6
- import { IMultiSelect, IOption } from '../multi-select.type';
8
+ import { IMultiSelect, IOption, SearchFn } from '../multi-select.type';
7
9
  import { MultiSelectService } from '../multi-select.service';
8
10
  import { MultiSelectOptionComponent } from '../multi-select-option/multi-select-option.component';
11
+ import { TemplateIdDirective } from '../../shared';
9
12
  import * as i0 from "@angular/core";
10
13
  interface IPluralMap {
11
14
  [k: string]: string;
12
15
  }
13
16
  export declare const observeReferenceModifier: Modifier<string, any>;
14
- export declare class MultiSelectComponent implements IMultiSelect, ControlValueAccessor, AfterContentInit, AfterViewInit, OnChanges, OnDestroy, OnInit {
17
+ export declare class MultiSelectComponent implements IMultiSelect, ControlValueAccessor, AfterViewInit, OnChanges, OnDestroy, OnInit {
15
18
  #private;
16
19
  private elementRef;
17
20
  private renderer;
@@ -26,35 +29,135 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
26
29
  static ngAcceptInputType_multiple: BooleanInput;
27
30
  static ngAcceptInputType_disabled: BooleanInput;
28
31
  static ngAcceptInputType_virtualScroller: BooleanInput;
32
+ readonly optionsArray$: BehaviorSubject<IOption[]>;
33
+ readonly optionsSelected$: BehaviorSubject<IOption[]>;
34
+ readonly optionsSelected: Map<any, IOption>;
35
+ readonly value$: BehaviorSubject<string[]>;
29
36
  onChange: (value: any) => void;
30
37
  onTouched: () => void;
31
38
  writeValue(value: (string | string[])): void;
32
39
  registerOnChange(fn: any): void;
33
40
  registerOnTouched(fn: any): void;
34
41
  setDisabledState(isDisabled: boolean): void;
42
+ /**
43
+ * Enables selection cleaner element
44
+ * @type boolean
45
+ * @default true
46
+ */
35
47
  cleaner: boolean;
48
+ /**
49
+ * Disables multi-select component
50
+ * @type boolean
51
+ * @default false
52
+ */
36
53
  set disabled(value: boolean);
37
54
  get disabled(): boolean;
38
55
  private _disabled;
56
+ /**
57
+ * Specifies that multiple options can be selected at once
58
+ * @type boolean
59
+ * @default false
60
+ */
39
61
  set multiple(value: boolean);
40
62
  get multiple(): boolean;
41
63
  private _multiple;
42
- nativeName: string;
64
+ /**
65
+ * Hidden native select form
66
+ * @type string
67
+ * @default ''
68
+ */
69
+ nativeFormId: string;
70
+ /**
71
+ * Hidden native select id
72
+ * @type string
73
+ * @default ''
74
+ */
43
75
  nativeId: string;
44
- options: IOption[];
76
+ /**
77
+ * Hidden native select name
78
+ * @type string
79
+ * @default ''
80
+ */
81
+ nativeName: string;
82
+ /**
83
+ * List of option elements
84
+ * @type IOption[]
85
+ * @default []
86
+ */
87
+ set options(options: IOption[]);
88
+ get options(): IOption[];
89
+ /**
90
+ * Sets maxHeight of options list in px
91
+ * @type (string | number)
92
+ * @default 'auto'
93
+ */
45
94
  optionsMaxHeight: string;
46
- optionsStyle: 'checkbox' | 'text';
95
+ /**
96
+ * Sets option style
97
+ * @type 'checkbox' | 'text'
98
+ * @default 'checkbox'
99
+ */
100
+ set optionsStyle(value: 'checkbox' | 'text');
101
+ /**
102
+ * Specifies a short hint that is visible in the search input
103
+ * @type string
104
+ * @default 'Select...'
105
+ */
47
106
  placeholder: string;
48
- search: boolean | 'external';
107
+ /**
108
+ * Enables search input element
109
+ * @type boolean | SearchFn | 'external'
110
+ * @default true
111
+ */
112
+ search: (boolean | 'external' | SearchFn);
113
+ /**
114
+ * Sets the label for no results when filtering
115
+ * @type string
116
+ * @default 'no items'
117
+ */
49
118
  searchNoResultsLabel: string;
119
+ /**
120
+ * Sets initial search string
121
+ * @type string
122
+ * @default ''
123
+ */
50
124
  set searchValue(value: string);
51
125
  get searchValue(): string;
52
126
  private _searchValue;
127
+ /**
128
+ * Emits searchValue string for external filtering
129
+ * @type string
130
+ */
53
131
  readonly searchValueChange: EventEmitter<string>;
132
+ /**
133
+ * Enables select all button
134
+ * @type boolean
135
+ * @default true
136
+ */
54
137
  selectAll: boolean;
138
+ /**
139
+ * Sets the select all button label
140
+ * @type string
141
+ * @default 'Select all options'
142
+ */
55
143
  selectAllLabel: string;
144
+ /**
145
+ * Selection type
146
+ * @type 'counter' | 'tags' | 'text'
147
+ * @default 'tags'
148
+ */
56
149
  selectionType: 'counter' | 'tags' | 'text';
150
+ /**
151
+ * Counter selection label value
152
+ * @type string
153
+ * @default 'item(s) selected'
154
+ */
57
155
  selectionTypeCounterText: string;
156
+ /**
157
+ * Counter selection label plural map for I18nPluralPipe
158
+ * @type IPluralMap
159
+ * @default { '=1': 'item selected', 'other': 'items selected' }
160
+ */
58
161
  selectionTypeCounterTextPluralMap?: IPluralMap;
59
162
  /**
60
163
  * Size the component small or large.
@@ -67,7 +170,10 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
67
170
  */
68
171
  set value(value: string | string[]);
69
172
  get value(): string | string[];
70
- private _value;
173
+ /**
174
+ * Emits valueChange
175
+ * @type string | string[]
176
+ */
71
177
  readonly valueChange: EventEmitter<string | string[]>;
72
178
  /**
73
179
  * Toggle visual validation feedback.
@@ -76,10 +182,9 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
76
182
  */
77
183
  valid?: boolean;
78
184
  /**
79
- * Enable virtual scroller for the options list.
185
+ * Enable virtual scroller for options list.
80
186
  * @type boolean
81
187
  * @default false
82
- * todo: virtual scroller implementation
83
188
  */
84
189
  set virtualScroller(value: boolean);
85
190
  get virtualScroller(): boolean;
@@ -87,11 +192,23 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
87
192
  /**
88
193
  * Amount of visible options, if set - overwrites optionsMaxHeight
89
194
  * @type number
90
- * @default 10
195
+ * @default 8
91
196
  */
92
197
  set visibleItems(value: number);
93
198
  get visibleItems(): number;
94
199
  private _visibleItems;
200
+ /**
201
+ * The size of the option item in the list (in pixels).
202
+ * @type number
203
+ * @default 40
204
+ */
205
+ itemSize: number;
206
+ /**
207
+ * Min width of the options list (in pixels).
208
+ * @type number
209
+ * @default 196
210
+ */
211
+ itemMinWidth: number;
95
212
  /**
96
213
  * Toggle the visibility of the dropdown select component.
97
214
  * @type boolean
@@ -100,6 +217,10 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
100
217
  set visible(value: boolean);
101
218
  get visible(): boolean;
102
219
  private _visible;
220
+ /**
221
+ * Emits visibleChange
222
+ * @type boolean
223
+ */
103
224
  readonly visibleChange: EventEmitter<boolean>;
104
225
  /**
105
226
  * Optional popper Options object
@@ -107,21 +228,25 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
107
228
  */
108
229
  popperjsOptions: Partial<Options>;
109
230
  isDropdownVisible: boolean;
110
- set selectedOptions(value: any[]);
111
- get selectedOptions(): any[];
112
- private _selectedOptions;
231
+ get selectedOptions(): IOption[];
113
232
  get selectedOptionsText(): string;
114
233
  get counterText(): string;
115
234
  get counterTextType(): string;
116
- private multiselectStateSubscription;
117
- private multiselectVisibleSubscription;
118
235
  private focusMonitorSubscription;
119
- multiSelectOptions: QueryList<MultiSelectOptionComponent>;
236
+ multiSelectOptionsContent: QueryList<MultiSelectOptionComponent>;
237
+ multiSelectOptionsView: QueryList<MultiSelectOptionComponent>;
238
+ scrollViewportView: QueryList<CdkVirtualScrollViewport>;
239
+ optionsElementRef: ElementRef;
240
+ protected scrollViewport: CdkVirtualScrollViewport;
241
+ protected templates: {
242
+ [id: string]: TemplateRef<any>;
243
+ };
244
+ contentTemplates: QueryList<TemplateIdDirective>;
120
245
  private listKeyManager;
121
246
  inputElement: ElementRef;
122
247
  dropdownMenu: ElementRef;
123
- dropdownToggle: ElementRef;
124
248
  dropdown: ElementRef;
249
+ dropdownToggle: ElementRef;
125
250
  get hostClasses(): {
126
251
  disabled: boolean;
127
252
  };
@@ -144,30 +269,38 @@ export declare class MultiSelectComponent implements IMultiSelect, ControlValueA
144
269
  onClick($event: MouseEvent): void;
145
270
  visibleOptions: number;
146
271
  get subtreeFocused(): boolean;
147
- set subtreeFocused(value: boolean);
272
+ set subtreeFocused(focused: boolean);
148
273
  private _subtreeFocused;
149
274
  private nativeSelectRef;
150
275
  focusOrigin(origin: FocusOrigin): boolean;
151
276
  ngOnInit(): void;
152
277
  ngOnDestroy(): void;
153
278
  ngOnChanges(changes: SimpleChanges): void;
154
- ngAfterContentInit(): void;
279
+ makeOptions(options: IOption[]): void;
155
280
  ngAfterViewInit(): void;
281
+ private tabTarget;
156
282
  private multiselectSubscribe;
157
- selectOptions(): void;
158
283
  clearAllOptions($event?: MouseEvent): void;
159
284
  selectAllOptions(): void;
160
- handleTagRemove($event: IOption): void;
285
+ handleTagRemove(value: any): void;
161
286
  setFocus(origin?: FocusOrigin, methodName?: string): void;
162
287
  filterOptions(value: string): void;
163
288
  createNativeSelect(): void;
164
289
  updateNativeSelect(): void;
165
290
  inputElementSize(): void;
166
291
  handleSearchKeyDown($event: KeyboardEvent): void;
167
- private selectOption;
168
- private selectedOptionsUpdate;
169
292
  private setFocusMonitor;
293
+ activeOption: (FocusableOption & MultiSelectOptionComponent) | null;
294
+ handleScrolledIndexChange(scrolledIndex: number, scrollViewport: CdkVirtualScrollViewport): void;
295
+ trackByFn(index: number, option: IOption): string;
296
+ handleSearchValueChange(searchValue: string): void;
297
+ private setVirtualScroller;
298
+ private setListKeyManager;
299
+ get firstFocusableItem(): MultiSelectOptionComponent | undefined;
300
+ private setFirstItemActive;
301
+ updateActiveItem(index: number): void;
302
+ updateActiveItem<T extends (MultiSelectOptionComponent & FocusableOption)>(item: T): void;
170
303
  static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectComponent, never>;
171
- static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectComponent, "c-multi-select", ["cMultiSelect"], { "cleaner": "cleaner"; "disabled": "disabled"; "multiple": "multiple"; "nativeName": "nativeName"; "nativeId": "nativeId"; "options": "options"; "optionsMaxHeight": "optionsMaxHeight"; "optionsStyle": "optionsStyle"; "placeholder": "placeholder"; "search": "search"; "searchNoResultsLabel": "searchNoResultsLabel"; "searchValue": "searchValue"; "selectAll": "selectAll"; "selectAllLabel": "selectAllLabel"; "selectionType": "selectionType"; "selectionTypeCounterText": "selectionTypeCounterText"; "selectionTypeCounterTextPluralMap": "selectionTypeCounterTextPluralMap"; "size": "size"; "value": "value"; "valid": "valid"; "virtualScroller": "virtualScroller"; "visibleItems": "visibleItems"; "visible": "visible"; "popperjsOptions": "popperOptions"; }, { "searchValueChange": "searchValueChange"; "valueChange": "valueChange"; "visibleChange": "visibleChange"; }, ["multiSelectOptions"], ["*"], false, never>;
304
+ static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectComponent, "c-multi-select", ["cMultiSelect"], { "cleaner": "cleaner"; "disabled": "disabled"; "multiple": "multiple"; "nativeFormId": "nativeFormId"; "nativeId": "nativeId"; "nativeName": "nativeName"; "options": "options"; "optionsMaxHeight": "optionsMaxHeight"; "optionsStyle": "optionsStyle"; "placeholder": "placeholder"; "search": "search"; "searchNoResultsLabel": "searchNoResultsLabel"; "searchValue": "searchValue"; "selectAll": "selectAll"; "selectAllLabel": "selectAllLabel"; "selectionType": "selectionType"; "selectionTypeCounterText": "selectionTypeCounterText"; "selectionTypeCounterTextPluralMap": "selectionTypeCounterTextPluralMap"; "size": "size"; "value": "value"; "valid": "valid"; "virtualScroller": "virtualScroller"; "visibleItems": "visibleItems"; "itemSize": "itemSize"; "itemMinWidth": "itemMinWidth"; "visible": "visible"; "popperjsOptions": "popperOptions"; }, { "searchValueChange": "searchValueChange"; "valueChange": "valueChange"; "visibleChange": "visibleChange"; }, ["multiSelectOptionsContent", "contentTemplates"], ["*"], false, never>;
172
305
  }
173
306
  export {};
@@ -5,45 +5,87 @@ import { MultiSelectService } from '../multi-select.service';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class MultiSelectOptionComponent implements AfterViewInit, FocusableOption, OnDestroy {
7
7
  #private;
8
- private readonly elementRef;
8
+ readonly elementRef: ElementRef;
9
9
  private readonly changeDetectorRef;
10
10
  private readonly focusMonitor;
11
11
  private readonly multiSelectService;
12
12
  constructor(elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef, focusMonitor: FocusMonitor, multiSelectService: MultiSelectService);
13
13
  static ngAcceptInputType_disabled: BooleanInput;
14
14
  static ngAcceptInputType_selected: BooleanInput;
15
+ /**
16
+ * Option style
17
+ * @type ('checkbox' | 'text')
18
+ * @default 'checkbox'
19
+ */
15
20
  optionsStyle: ('checkbox' | 'text');
21
+ /**
22
+ * Option label
23
+ * @type string
24
+ * @default undefined
25
+ */
16
26
  label?: string;
17
- value?: string;
27
+ /**
28
+ * Option inner text
29
+ * @type string
30
+ * @default undefined
31
+ */
32
+ text?: string;
33
+ /**
34
+ * Option visible.
35
+ * @type boolean
36
+ * @default true
37
+ */
18
38
  visible: boolean;
19
- selectedChange: EventEmitter<boolean>;
20
- contentDiv?: ElementRef;
21
- hasContent: boolean;
22
- private dropdownVisible;
23
- private _generatedId;
24
- /** The id of the option element. */
25
- get id(): string;
26
- set id(value: string);
27
- private _id;
39
+ /**
40
+ * Option disabled.
41
+ * @type boolean
42
+ * @default false
43
+ */
28
44
  set disabled(value: boolean);
29
45
  get disabled(): boolean;
30
- private _disabled;
46
+ /**
47
+ * Option selected.
48
+ * @type boolean
49
+ * @default false
50
+ */
31
51
  set selected(value: (boolean | undefined));
32
52
  get selected(): (boolean | undefined);
33
- private _selected;
53
+ /**
54
+ * Emits option selected change
55
+ * @type boolean
56
+ */
57
+ readonly selectedChange: EventEmitter<boolean>;
58
+ /**
59
+ * Option value.
60
+ * @type string
61
+ * @default undefined
62
+ */
63
+ set value(value: string);
64
+ get value(): string;
65
+ private contentDiv?;
66
+ hasContent: boolean;
67
+ set active(value: (boolean | undefined));
68
+ get active(): (boolean | undefined);
69
+ readonly focusChange: EventEmitter<MultiSelectOptionComponent>;
70
+ private get role();
34
71
  get hostClasses(): {
35
72
  [x: string]: boolean | undefined;
36
73
  'form-multi-select-option': boolean;
37
74
  'form-multi-selected': boolean | undefined;
38
75
  disabled: boolean;
39
76
  'd-none': boolean;
77
+ active: boolean | undefined;
78
+ focused: boolean;
40
79
  };
41
- private get role();
42
80
  private get tabIndex();
81
+ private set tabIndex(value);
43
82
  private get ariaDisabled();
44
83
  private get ariaSelected();
84
+ private set ariaSelected(value);
45
85
  onKeyDown($event: KeyboardEvent): void;
46
- onKeyUp($event: KeyboardEvent): void;
86
+ private onBlur;
87
+ private onFocus;
88
+ private onKeyUp;
47
89
  private onClick;
48
90
  ngAfterViewInit(): void;
49
91
  /** Get the label for this element which is required by the FocusableOption interface. */
@@ -52,5 +94,5 @@ export declare class MultiSelectOptionComponent implements AfterViewInit, Focusa
52
94
  ngOnDestroy(): void;
53
95
  private setSubscriptions;
54
96
  static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectOptionComponent, never>;
55
- static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectOptionComponent, "c-multi-select-option", ["cMultiSelectOption"], { "optionsStyle": "optionsStyle"; "label": "label"; "value": "value"; "visible": "visible"; "id": "id"; "disabled": "disabled"; "selected": "selected"; "role": "role"; }, { "selectedChange": "selectedChange"; }, never, ["*"], false, never>;
97
+ static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectOptionComponent, "c-multi-select-option", ["cMultiSelectOption"], { "optionsStyle": "optionsStyle"; "label": "label"; "text": "text"; "visible": "visible"; "disabled": "disabled"; "selected": "selected"; "value": "value"; "active": "active"; "role": "role"; }, { "selectedChange": "selectedChange"; "focusChange": "focusChange"; }, never, ["*"], false, never>;
56
98
  }
@@ -7,11 +7,14 @@ export declare class MultiSelectTagComponent {
7
7
  constructor(multiSelectService: MultiSelectService);
8
8
  multiselectVisible$: import("rxjs").Observable<boolean>;
9
9
  option?: IOption;
10
+ disabled: boolean;
11
+ label?: string;
12
+ value?: any;
10
13
  remove: EventEmitter<IOption>;
11
14
  get hostClasses(): {
12
15
  'form-multi-select-tag': boolean;
13
16
  };
14
- handleRemove($event: any): void;
17
+ handleRemove($event: MouseEvent): void;
15
18
  static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectTagComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectTagComponent, "c-multi-select-tag", never, { "option": "option"; }, { "remove": "remove"; }, never, ["*"], false, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectTagComponent, "c-multi-select-tag", never, { "option": "option"; "disabled": "disabled"; "label": "label"; "value": "value"; }, { "remove": "remove"; }, never, never, false, never>;
17
20
  }
@@ -5,13 +5,15 @@ import * as i3 from "./multi-select-optgroup/multi-select-optgroup.component";
5
5
  import * as i4 from "./multi-select-optgroup/multi-select-optgroup-label.component";
6
6
  import * as i5 from "./multi-select-tag/multi-select-tag.component";
7
7
  import * as i6 from "./multi-select-native-select/multi-select-native-select.component";
8
- import * as i7 from "@angular/common";
9
- import * as i8 from "@angular/cdk/a11y";
10
- import * as i9 from "../button/button.module";
11
- import * as i10 from "@angular/forms";
12
- import * as i11 from "../dropdown/dropdown.module";
8
+ import * as i7 from "./multi-select/multi-select-search.directive";
9
+ import * as i8 from "@angular/common";
10
+ import * as i9 from "@angular/cdk/a11y";
11
+ import * as i10 from "../button/button.module";
12
+ import * as i11 from "@angular/forms";
13
+ import * as i12 from "../dropdown/dropdown.module";
14
+ import * as i13 from "@angular/cdk/scrolling";
13
15
  export declare class MultiSelectModule {
14
16
  static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectModule, never>;
15
- static ɵmod: i0.ɵɵNgModuleDeclaration<MultiSelectModule, [typeof i1.MultiSelectComponent, typeof i2.MultiSelectOptionComponent, typeof i3.MultiSelectOptgroupComponent, typeof i4.MultiSelectOptgroupLabelComponent, typeof i5.MultiSelectTagComponent, typeof i6.MultiSelectNativeSelectComponent], [typeof i7.CommonModule, typeof i8.A11yModule, typeof i9.ButtonModule, typeof i10.FormsModule, typeof i11.DropdownModule], [typeof i1.MultiSelectComponent, typeof i2.MultiSelectOptionComponent, typeof i3.MultiSelectOptgroupComponent, typeof i4.MultiSelectOptgroupLabelComponent, typeof i5.MultiSelectTagComponent]>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MultiSelectModule, [typeof i1.MultiSelectComponent, typeof i2.MultiSelectOptionComponent, typeof i3.MultiSelectOptgroupComponent, typeof i4.MultiSelectOptgroupLabelComponent, typeof i5.MultiSelectTagComponent, typeof i6.MultiSelectNativeSelectComponent, typeof i7.MultiSelectSearchDirective], [typeof i8.CommonModule, typeof i9.A11yModule, typeof i10.ButtonModule, typeof i11.FormsModule, typeof i12.DropdownModule, typeof i13.ScrollingModule], [typeof i1.MultiSelectComponent, typeof i2.MultiSelectOptionComponent, typeof i3.MultiSelectOptgroupComponent, typeof i4.MultiSelectOptgroupLabelComponent, typeof i5.MultiSelectTagComponent]>;
16
18
  static ɵinj: i0.ɵɵInjectorDeclaration<MultiSelectModule>;
17
19
  }
@@ -1,12 +1,19 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { SelectionModel } from '@angular/cdk/collections';
3
+ import { MultiSelectOptionComponent } from './multi-select-option/multi-select-option.component';
1
4
  import * as i0 from "@angular/core";
2
- export declare class MultiSelectService {
3
- constructor();
4
- private multiSelectState;
5
- multiSelectState$: import("rxjs").Observable<any>;
6
- private multiSelectVisible;
7
- multiSelectVisible$: import("rxjs").Observable<boolean>;
8
- toggleOption(option: any): void;
5
+ export declare class MultiSelectService implements OnDestroy {
6
+ #private;
7
+ ngOnDestroy(): void;
8
+ optionsStyle: 'checkbox' | 'text';
9
+ selectionModel: SelectionModel<any>;
10
+ setSelectionModel(multiple?: boolean, initiallySelectedValues?: string[]): void;
11
+ private readonly multiSelectVisible;
12
+ readonly multiSelectVisible$: import("rxjs").Observable<boolean>;
9
13
  toggleVisible(visible: boolean): void;
14
+ private readonly multiSelectFocus;
15
+ readonly multiSelectFocus$: import("rxjs").Observable<MultiSelectOptionComponent>;
16
+ focusChange(option: MultiSelectOptionComponent): void;
10
17
  static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectService, never>;
11
18
  static ɵprov: i0.ɵɵInjectableDeclaration<MultiSelectService>;
12
19
  }
@@ -1,4 +1,5 @@
1
1
  import { EventEmitter } from '@angular/core';
2
+ export type SearchFn = ((option: IOption, searchValue: string) => boolean);
2
3
  export interface IMultiSelect {
3
4
  cleaner?: boolean;
4
5
  multiple?: boolean;
@@ -6,7 +7,7 @@ export interface IMultiSelect {
6
7
  optionsMaxHeight?: (number | string | 'auto');
7
8
  optionsStyle?: (string | 'checkbox' | 'text');
8
9
  placeholder?: string;
9
- search?: boolean | 'external';
10
+ search?: boolean | 'external' | SearchFn;
10
11
  searchValue?: string;
11
12
  searchValueChange?: EventEmitter<string>;
12
13
  searchNoResultsLabel?: string;
@@ -30,7 +31,8 @@ export interface IOption {
30
31
  order?: number;
31
32
  selected?: boolean;
32
33
  text?: string;
33
- value?: number | string;
34
+ value: string;
35
+ visible?: boolean;
34
36
  }
35
37
  export interface IMultiSelectOptions {
36
38
  handleOptionClick?: (option: IOption) => void;
@@ -4,3 +4,4 @@ export { MultiSelectOptionComponent } from './multi-select-option/multi-select-o
4
4
  export { MultiSelectTagComponent } from './multi-select-tag/multi-select-tag.component';
5
5
  export { MultiSelectComponent } from './multi-select/multi-select.component';
6
6
  export { MultiSelectModule } from './multi-select.module';
7
+ export { IOption, SearchFn } from './multi-select.type';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coreui/angular-pro",
3
- "version": "4.3.16",
3
+ "version": "4.3.18",
4
4
  "description": "CoreUI Pro Components Library for Angular",
5
5
  "copyright": "Copyright 2022 creativeLabs Łukasz Holeczek",
6
6
  "homepage": "https://coreui.io/angular",