@coreui/angular-pro 4.2.33 → 4.2.36

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 (259) hide show
  1. package/esm2020/lib/accordion/accordion/accordion.component.mjs +4 -4
  2. package/esm2020/lib/accordion/accordion-button/accordion-button.directive.mjs +4 -4
  3. package/esm2020/lib/accordion/accordion-item/accordion-item.component.mjs +4 -4
  4. package/esm2020/lib/accordion/accordion.module.mjs +5 -5
  5. package/esm2020/lib/accordion/accordion.service.mjs +4 -4
  6. package/esm2020/lib/alert/alert-heading.directive.mjs +4 -4
  7. package/esm2020/lib/alert/alert-link.directive.mjs +4 -4
  8. package/esm2020/lib/alert/alert.component.mjs +4 -4
  9. package/esm2020/lib/alert/alert.module.mjs +5 -5
  10. package/esm2020/lib/avatar/avatar.component.mjs +4 -4
  11. package/esm2020/lib/avatar/avatar.module.mjs +5 -5
  12. package/esm2020/lib/backdrop/backdrop.service.mjs +4 -4
  13. package/esm2020/lib/badge/badge.component.mjs +4 -4
  14. package/esm2020/lib/badge/badge.module.mjs +5 -5
  15. package/esm2020/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +4 -4
  16. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +4 -4
  17. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +4 -4
  18. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +4 -4
  19. package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +5 -5
  20. package/esm2020/lib/button/button-close.directive.mjs +4 -4
  21. package/esm2020/lib/button/button.directive.mjs +4 -4
  22. package/esm2020/lib/button/button.module.mjs +5 -5
  23. package/esm2020/lib/button-group/button-group/button-group.component.mjs +4 -4
  24. package/esm2020/lib/button-group/button-group.module.mjs +5 -5
  25. package/esm2020/lib/button-group/button-toolbar/button-toolbar.component.mjs +4 -4
  26. package/esm2020/lib/calendar/calendar/calendar-class-view.pipe.mjs +4 -4
  27. package/esm2020/lib/calendar/calendar/calendar.component.mjs +4 -4
  28. package/esm2020/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +4 -4
  29. package/esm2020/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +4 -4
  30. package/esm2020/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +4 -4
  31. package/esm2020/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +4 -4
  32. package/esm2020/lib/calendar/calendar-month/calendar-day.directive.mjs +4 -4
  33. package/esm2020/lib/calendar/calendar-month/calendar-day.pipe.mjs +4 -4
  34. package/esm2020/lib/calendar/calendar-month/calendar-month.component.mjs +4 -4
  35. package/esm2020/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +4 -4
  36. package/esm2020/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +4 -4
  37. package/esm2020/lib/calendar/calendar.module.mjs +5 -5
  38. package/esm2020/lib/calendar/calendar.service.mjs +4 -4
  39. package/esm2020/lib/callout/callout.component.mjs +4 -4
  40. package/esm2020/lib/callout/callout.module.mjs +5 -5
  41. package/esm2020/lib/card/card-body.component.mjs +4 -4
  42. package/esm2020/lib/card/card-footer.component.mjs +4 -4
  43. package/esm2020/lib/card/card-group.component.mjs +4 -4
  44. package/esm2020/lib/card/card-header-actions.component.mjs +4 -4
  45. package/esm2020/lib/card/card-header.component.mjs +4 -4
  46. package/esm2020/lib/card/card-img-overlay/card-img-overlay.component.mjs +4 -4
  47. package/esm2020/lib/card/card-img.directive.mjs +4 -4
  48. package/esm2020/lib/card/card-link.directive.mjs +4 -4
  49. package/esm2020/lib/card/card-subtitle.directive.mjs +4 -4
  50. package/esm2020/lib/card/card-text.directive.mjs +4 -4
  51. package/esm2020/lib/card/card-title.directive.mjs +4 -4
  52. package/esm2020/lib/card/card.component.mjs +4 -4
  53. package/esm2020/lib/card/card.module.mjs +5 -5
  54. package/esm2020/lib/carousel/carousel/carousel.component.mjs +4 -4
  55. package/esm2020/lib/carousel/carousel-caption/carousel-caption.component.mjs +4 -4
  56. package/esm2020/lib/carousel/carousel-control/carousel-control.component.mjs +4 -4
  57. package/esm2020/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +4 -4
  58. package/esm2020/lib/carousel/carousel-inner/carousel-inner.component.mjs +4 -4
  59. package/esm2020/lib/carousel/carousel-item/carousel-item.component.mjs +4 -4
  60. package/esm2020/lib/carousel/carousel-state.mjs +4 -4
  61. package/esm2020/lib/carousel/carousel.config.mjs +4 -4
  62. package/esm2020/lib/carousel/carousel.module.mjs +5 -5
  63. package/esm2020/lib/carousel/carousel.service.mjs +4 -4
  64. package/esm2020/lib/collapse/collapse.directive.mjs +4 -4
  65. package/esm2020/lib/collapse/collapse.module.mjs +5 -5
  66. package/esm2020/lib/date-picker/date-picker.component.mjs +4 -4
  67. package/esm2020/lib/date-picker/date-picker.module.mjs +5 -5
  68. package/esm2020/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +4 -4
  69. package/esm2020/lib/date-range-picker/date-range-picker.module.mjs +5 -5
  70. package/esm2020/lib/dropdown/dropdown/dropdown.component.mjs +7 -7
  71. package/esm2020/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +4 -4
  72. package/esm2020/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +4 -4
  73. package/esm2020/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +4 -4
  74. package/esm2020/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +4 -4
  75. package/esm2020/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +4 -4
  76. package/esm2020/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +4 -4
  77. package/esm2020/lib/dropdown/dropdown.module.mjs +5 -5
  78. package/esm2020/lib/dropdown/dropdown.service.mjs +4 -4
  79. package/esm2020/lib/element-cover/element-cover.component.mjs +4 -4
  80. package/esm2020/lib/element-cover/element-cover.module.mjs +5 -5
  81. package/esm2020/lib/footer/footer.component.mjs +4 -4
  82. package/esm2020/lib/footer/footer.module.mjs +5 -5
  83. package/esm2020/lib/form/form/form.directive.mjs +4 -4
  84. package/esm2020/lib/form/form-check/form-check-input.directive.mjs +4 -4
  85. package/esm2020/lib/form/form-check/form-check-label.directive.mjs +4 -4
  86. package/esm2020/lib/form/form-check/form-check.component.mjs +4 -4
  87. package/esm2020/lib/form/form-control/form-control.directive.mjs +4 -4
  88. package/esm2020/lib/form/form-feedback/form-feedback.component.mjs +4 -4
  89. package/esm2020/lib/form/form-floating/form-floating.directive.mjs +4 -4
  90. package/esm2020/lib/form/form-label/form-label.directive.mjs +4 -4
  91. package/esm2020/lib/form/form-select/form-select.directive.mjs +4 -4
  92. package/esm2020/lib/form/form-text/form-text.directive.mjs +4 -4
  93. package/esm2020/lib/form/form.module.mjs +5 -5
  94. package/esm2020/lib/form/input-group/input-group.component.mjs +4 -4
  95. package/esm2020/lib/form/input-group-text/input-group-text.directive.mjs +4 -4
  96. package/esm2020/lib/grid/col.component.mjs +4 -4
  97. package/esm2020/lib/grid/col.directive.mjs +4 -4
  98. package/esm2020/lib/grid/container.component.mjs +4 -4
  99. package/esm2020/lib/grid/grid.module.mjs +5 -5
  100. package/esm2020/lib/grid/gutter.directive.mjs +4 -4
  101. package/esm2020/lib/grid/row.component.mjs +4 -4
  102. package/esm2020/lib/grid/row.directive.mjs +4 -4
  103. package/esm2020/lib/header/header/header.component.mjs +4 -4
  104. package/esm2020/lib/header/header-brand/header-brand.component.mjs +4 -4
  105. package/esm2020/lib/header/header-divider/header-divider.component.mjs +4 -4
  106. package/esm2020/lib/header/header-nav/header-nav.component.mjs +4 -4
  107. package/esm2020/lib/header/header-text/header-text.component.mjs +4 -4
  108. package/esm2020/lib/header/header-toggler/header-toggler.directive.mjs +4 -4
  109. package/esm2020/lib/header/header.module.mjs +5 -5
  110. package/esm2020/lib/image/img.directive.mjs +4 -4
  111. package/esm2020/lib/image/img.module.mjs +5 -5
  112. package/esm2020/lib/list-group/list-group-item.directive.mjs +4 -4
  113. package/esm2020/lib/list-group/list-group.directive.mjs +4 -4
  114. package/esm2020/lib/list-group/list-group.module.mjs +5 -5
  115. package/esm2020/lib/loading-button/loading-button.component.mjs +4 -4
  116. package/esm2020/lib/loading-button/loading-button.module.mjs +5 -5
  117. package/esm2020/lib/modal/modal/modal.component.mjs +4 -4
  118. package/esm2020/lib/modal/modal-body/modal-body.component.mjs +4 -4
  119. package/esm2020/lib/modal/modal-content/modal-content.component.mjs +4 -4
  120. package/esm2020/lib/modal/modal-dialog/modal-dialog.component.mjs +4 -4
  121. package/esm2020/lib/modal/modal-dismiss/modal-toggle.directive.mjs +4 -4
  122. package/esm2020/lib/modal/modal-footer/modal-footer.component.mjs +4 -4
  123. package/esm2020/lib/modal/modal-header/modal-header.component.mjs +4 -4
  124. package/esm2020/lib/modal/modal-title/modal-title.directive.mjs +4 -4
  125. package/esm2020/lib/modal/modal.module.mjs +5 -5
  126. package/esm2020/lib/modal/modal.service.mjs +4 -4
  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 +4 -4
  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 +4 -4
  139. package/esm2020/lib/nav/nav-link.directive.mjs +4 -4
  140. package/esm2020/lib/nav/nav.component.mjs +4 -4
  141. package/esm2020/lib/nav/nav.module.mjs +5 -5
  142. package/esm2020/lib/navbar/navbar-brand/navbar-brand.directive.mjs +4 -4
  143. package/esm2020/lib/navbar/navbar-nav/navbar-nav.component.mjs +4 -4
  144. package/esm2020/lib/navbar/navbar-text/navbar-text.component.mjs +4 -4
  145. package/esm2020/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +4 -4
  146. package/esm2020/lib/navbar/navbar.component.mjs +4 -4
  147. package/esm2020/lib/navbar/navbar.module.mjs +5 -5
  148. package/esm2020/lib/offcanvas/offcanvas/offcanvas.component.mjs +4 -4
  149. package/esm2020/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +4 -4
  150. package/esm2020/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +4 -4
  151. package/esm2020/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +4 -4
  152. package/esm2020/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +4 -4
  153. package/esm2020/lib/offcanvas/offcanvas.module.mjs +5 -5
  154. package/esm2020/lib/offcanvas/offcanvas.service.mjs +4 -4
  155. package/esm2020/lib/pagination/page-item/page-item.component.mjs +4 -4
  156. package/esm2020/lib/pagination/page-item/page-item.directive.mjs +4 -4
  157. package/esm2020/lib/pagination/page-link/page-link.directive.mjs +4 -4
  158. package/esm2020/lib/pagination/pagination/pagination.component.mjs +4 -4
  159. package/esm2020/lib/pagination/pagination.module.mjs +5 -5
  160. package/esm2020/lib/placeholder/placeholder-animation.directive.mjs +4 -4
  161. package/esm2020/lib/placeholder/placeholder.directive.mjs +4 -4
  162. package/esm2020/lib/placeholder/placeholder.module.mjs +5 -5
  163. package/esm2020/lib/popover/popover/popover.component.mjs +4 -4
  164. package/esm2020/lib/popover/popover.directive.mjs +4 -4
  165. package/esm2020/lib/popover/popover.module.mjs +5 -5
  166. package/esm2020/lib/progress/progress-bar.component.mjs +4 -4
  167. package/esm2020/lib/progress/progress.component.mjs +4 -4
  168. package/esm2020/lib/progress/progress.module.mjs +5 -5
  169. package/esm2020/lib/services/class-toggle.service.mjs +4 -4
  170. package/esm2020/lib/services/intersection.service.mjs +4 -4
  171. package/esm2020/lib/services/listeners.service.mjs +4 -4
  172. package/esm2020/lib/shared/html-attr.directive.mjs +4 -4
  173. package/esm2020/lib/shared/shared.module.mjs +5 -5
  174. package/esm2020/lib/shared/template-id.directive.mjs +4 -4
  175. package/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +4 -4
  176. package/esm2020/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +4 -4
  177. package/esm2020/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +4 -4
  178. package/esm2020/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +4 -4
  179. package/esm2020/lib/sidebar/sidebar-header/sidebar-header.component.mjs +4 -4
  180. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +4 -4
  181. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +4 -4
  182. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +4 -4
  183. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +4 -4
  184. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +4 -4
  185. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +4 -4
  186. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +7 -7
  187. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +4 -4
  188. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +4 -4
  189. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +7 -7
  190. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +7 -7
  191. package/esm2020/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +4 -4
  192. package/esm2020/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +4 -4
  193. package/esm2020/lib/sidebar/sidebar.module.mjs +5 -5
  194. package/esm2020/lib/sidebar/sidebar.service.mjs +4 -4
  195. package/esm2020/lib/smart-pagination/smart-pagination.component.mjs +4 -4
  196. package/esm2020/lib/smart-pagination/smart-pagination.module.mjs +5 -5
  197. package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +32 -24
  198. package/esm2020/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +4 -4
  199. package/esm2020/lib/smart-table/smart-table-filter/filter-input.directive.mjs +4 -4
  200. package/esm2020/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +4 -4
  201. package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +6 -6
  202. package/esm2020/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +4 -4
  203. package/esm2020/lib/smart-table/smart-table.module.mjs +5 -5
  204. package/esm2020/lib/smart-table/smart-table.type.mjs +1 -1
  205. package/esm2020/lib/spinner/spinner.component.mjs +4 -4
  206. package/esm2020/lib/spinner/spinner.module.mjs +5 -5
  207. package/esm2020/lib/table/table-active.directive.mjs +4 -4
  208. package/esm2020/lib/table/table-color.directive.mjs +4 -4
  209. package/esm2020/lib/table/table.directive.mjs +4 -4
  210. package/esm2020/lib/table/table.module.mjs +5 -5
  211. package/esm2020/lib/tabs/tab-content/tab-content.component.mjs +4 -4
  212. package/esm2020/lib/tabs/tab-content-ref.directive.mjs +4 -4
  213. package/esm2020/lib/tabs/tab-pane/tab-pane.component.mjs +4 -4
  214. package/esm2020/lib/tabs/tab.service.mjs +4 -4
  215. package/esm2020/lib/tabs/tabs.module.mjs +5 -5
  216. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +7 -7
  217. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +7 -7
  218. package/esm2020/lib/time-picker/time-picker.component.mjs +4 -4
  219. package/esm2020/lib/time-picker/time-picker.module.mjs +5 -5
  220. package/esm2020/lib/toast/toast/toast.component.mjs +4 -4
  221. package/esm2020/lib/toast/toast-body/toast-body.component.mjs +4 -4
  222. package/esm2020/lib/toast/toast-close.directive.mjs +4 -4
  223. package/esm2020/lib/toast/toast-header/toast-header.component.mjs +4 -4
  224. package/esm2020/lib/toast/toast.module.mjs +5 -5
  225. package/esm2020/lib/toast/toaster/toaster-host.directive.mjs +4 -4
  226. package/esm2020/lib/toast/toaster/toaster.component.mjs +4 -4
  227. package/esm2020/lib/toast/toaster/toaster.service.mjs +4 -4
  228. package/esm2020/lib/tooltip/tooltip/tooltip.component.mjs +4 -4
  229. package/esm2020/lib/tooltip/tooltip.directive.mjs +4 -4
  230. package/esm2020/lib/tooltip/tooltip.module.mjs +5 -5
  231. package/esm2020/lib/utilities/align.directive.mjs +4 -4
  232. package/esm2020/lib/utilities/bg-color.directive.mjs +4 -4
  233. package/esm2020/lib/utilities/border.directive.mjs +4 -4
  234. package/esm2020/lib/utilities/rounded.directive.mjs +4 -4
  235. package/esm2020/lib/utilities/text-color.directive.mjs +4 -4
  236. package/esm2020/lib/utilities/utilities.module.mjs +5 -5
  237. package/esm2020/lib/widget/widget-stat-a/widget-stat-a.component.mjs +4 -4
  238. package/esm2020/lib/widget/widget-stat-b/widget-stat-b.component.mjs +4 -4
  239. package/esm2020/lib/widget/widget-stat-c/widget-stat-c.component.mjs +4 -4
  240. package/esm2020/lib/widget/widget-stat-d/widget-stat-d.component.mjs +4 -4
  241. package/esm2020/lib/widget/widget-stat-e/widget-stat-e.component.mjs +4 -4
  242. package/esm2020/lib/widget/widget-stat-f/widget-stat-f.component.mjs +4 -4
  243. package/esm2020/lib/widget/widget.module.mjs +5 -5
  244. package/fesm2015/coreui-angular-pro.mjs +1726 -1052
  245. package/fesm2015/coreui-angular-pro.mjs.map +1 -1
  246. package/fesm2020/coreui-angular-pro.mjs +1707 -1041
  247. package/fesm2020/coreui-angular-pro.mjs.map +1 -1
  248. package/lib/multi-select/multi-select/multi-select-search.directive.d.ts +15 -0
  249. package/lib/multi-select/multi-select/multi-select.component.d.ts +160 -27
  250. package/lib/multi-select/multi-select-option/multi-select-option.component.d.ts +58 -16
  251. package/lib/multi-select/multi-select-tag/multi-select-tag.component.d.ts +5 -2
  252. package/lib/multi-select/multi-select.module.d.ts +8 -6
  253. package/lib/multi-select/multi-select.service.d.ts +14 -7
  254. package/lib/multi-select/multi-select.type.d.ts +4 -2
  255. package/lib/multi-select/public_api.d.ts +1 -0
  256. package/lib/smart-table/smart-table/smart-table.component.d.ts +8 -6
  257. package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +2 -2
  258. package/lib/smart-table/smart-table.type.d.ts +7 -7
  259. 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>;
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>;
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>;
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>;
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>;
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>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectTagComponent, "c-multi-select-tag", never, { "option": "option"; "disabled": "disabled"; "label": "label"; "value": "value"; }, { "remove": "remove"; }, never, never, false>;
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 declare 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';
@@ -1,7 +1,7 @@
1
1
  import { AfterContentInit, EventEmitter, IterableDiffers, KeyValueDiffers, OnChanges, QueryList, SimpleChanges, TemplateRef } from '@angular/core';
2
2
  import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
3
3
  import { ITable } from '../../table/table.type';
4
- import { IColumnFilter, IColumnFilterValue, IItem, IItemInternal, ISmartTable, ISorter, ISorterValue, ITableFilter, ITableGroupProps, ItemsPerPageSelect } from '../smart-table.type';
4
+ import { IColumn, IColumnFilter, IColumnFilterValue, IItem, IItemInternal, ISmartTable, ISorter, ISorterValue, ITableFilter, ITableGroupProps, ItemsPerPageSelect } from '../smart-table.type';
5
5
  import { TemplateIdDirective } from '../../shared';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class SmartTableComponent implements ISmartTable, AfterContentInit, OnChanges {
@@ -29,8 +29,8 @@ export declare class SmartTableComponent implements ISmartTable, AfterContentIni
29
29
  set clickableRows(value: boolean);
30
30
  get clickableRows(): boolean;
31
31
  private _clickableRows;
32
- set columns(value: any[]);
33
- get columns(): any[];
32
+ set columns(value: (string | IColumn)[]);
33
+ get columns(): (string | IColumn)[];
34
34
  private _columns?;
35
35
  columnFilter?: boolean | IColumnFilter;
36
36
  set columnFilterValue(value: IColumnFilterValue);
@@ -102,8 +102,8 @@ export declare class SmartTableComponent implements ISmartTable, AfterContentIni
102
102
  get itemsOnActivePage(): IItemInternal[];
103
103
  get currentItems(): IItemInternal[];
104
104
  get genCols(): string[];
105
- get rawColumnNames(): any[];
106
- get itemsDataColumns(): any[];
105
+ get rawColumnNames(): string[];
106
+ get itemsDataColumns(): string[];
107
107
  get sortedItems(): IItemInternal[];
108
108
  get tableFilterEvent(): 'change' | 'input';
109
109
  private _columnFiltered;
@@ -132,7 +132,9 @@ export declare class SmartTableComponent implements ISmartTable, AfterContentIni
132
132
  align?: "top" | "bottom" | "middle" | undefined;
133
133
  color?: string | undefined;
134
134
  } | undefined;
135
- tableDataCellClasses(item: IItem, colName: string): any;
135
+ tableDataCellClasses(item: IItem, colName: string): string | {
136
+ [klass: string]: any;
137
+ } | undefined;
136
138
  getColumnName($event: MouseEvent): string;
137
139
  handleRowClick(param: {
138
140
  $event: MouseEvent;
@@ -30,8 +30,8 @@ export declare class SmartTableHeadComponent implements OnInit {
30
30
  getColumnSorterState(column: IColumn | string): string | number;
31
31
  prettifyName(name: string): string;
32
32
  handleSortClick(column: IColumn | string, i: number): void;
33
- columnFilterEnabled(column: IColumn | string): boolean;
34
- columnSorterEnabled(column: IColumn | string): boolean;
33
+ columnFilterEnabled(column: IColumn | string): boolean | ((column: import("../smart-table.type").IItem, value: string) => boolean);
34
+ columnSorterEnabled(column: IColumn | string): boolean | ((a: import("../smart-table.type").IItem, b: import("../smart-table.type").IItem) => number);
35
35
  handleColumnFilterValueChange($event: {
36
36
  value: string;
37
37
  type?: string;
@@ -125,7 +125,7 @@ export interface ISmartTable {
125
125
  pagination?: boolean;
126
126
  /**
127
127
  * Properties to `CSmartPagination` component.
128
- * @link https://coreui.io/react/docs/4.0/components/smart-pagination#csmartpagination
128
+ * @link https://coreui.io/angular/docs/components/smart-pagination#csmartpagination
129
129
  * todo or remove?
130
130
  */
131
131
  /**
@@ -160,12 +160,12 @@ export interface ISmartTable {
160
160
  sortingIconDescending?: TemplateRef<any>;
161
161
  /**
162
162
  * Properties to `CTableBody` component.
163
- * @link https://coreui.io/react/docs/4.0/components/table/#ctablebody
163
+ * @link https://coreui.io/angular/docs/components/table/#ctablebody
164
164
  * todo or remove?
165
165
  */
166
166
  /**
167
167
  * Properties to `CTableFoot` component.
168
- * @link https://coreui.io/react/docs/4.0/components/table/#ctablefoot
168
+ * @link https://coreui.io/angular/docs/components/table/#ctablefoot
169
169
  * todo or remove?
170
170
  */
171
171
  /**
@@ -197,12 +197,12 @@ export interface ISmartTable {
197
197
  tableFilterValue?: string;
198
198
  /**
199
199
  * Properties to `CTableHead` component.
200
- * @link https://coreui.io/react/docs/4.0/components/table/#ctablehead
200
+ * @link https://coreui.io/angular/docs/components/table/#ctablehead
201
201
  * todo or remove?
202
202
  */
203
203
  /**
204
204
  * Properties to `CTable` component.
205
- * @link https://coreui.io/react/docs/4.0/components/table/#ctable
205
+ * @link https://coreui.io/angular/docs/components/table/#ctable
206
206
  */
207
207
  tableProps?: ITable;
208
208
  }
@@ -214,10 +214,10 @@ export interface IColumnFilterValue {
214
214
  [key: string]: any;
215
215
  }
216
216
  export interface IColumn {
217
- filter?: boolean;
217
+ filter?: boolean | ((column: IItem, value: string) => boolean);
218
218
  label?: string;
219
219
  key: string;
220
- sorter?: boolean;
220
+ sorter?: boolean | ((a: IItem, b: IItem) => number);
221
221
  _style?: any;
222
222
  _props?: ITableHeaderCellProps;
223
223
  _classes?: string | string[] | Set<string> | {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coreui/angular-pro",
3
- "version": "4.2.33",
3
+ "version": "4.2.36",
4
4
  "description": "CoreUI Pro Components Library for Angular",
5
5
  "homepage": "https://coreui.io/angular",
6
6
  "author": {