@coreui/angular-pro 4.2.25 → 4.2.27

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 (711) hide show
  1. package/LICENSE +4 -4
  2. package/README.md +175 -175
  3. package/esm2020/coreui-angular-pro.mjs +4 -4
  4. package/esm2020/lib/accordion/accordion/accordion.component.mjs +40 -40
  5. package/esm2020/lib/accordion/accordion-button/accordion-button.directive.mjs +43 -43
  6. package/esm2020/lib/accordion/accordion-item/accordion-item.component.mjs +72 -72
  7. package/esm2020/lib/accordion/accordion.module.mjs +48 -48
  8. package/esm2020/lib/accordion/accordion.service.mjs +36 -36
  9. package/esm2020/lib/accordion/index.mjs +2 -2
  10. package/esm2020/lib/accordion/public_api.mjs +5 -5
  11. package/esm2020/lib/alert/alert-heading.directive.mjs +22 -22
  12. package/esm2020/lib/alert/alert-link.directive.mjs +22 -22
  13. package/esm2020/lib/alert/alert.component.mjs +181 -181
  14. package/esm2020/lib/alert/alert.module.mjs +38 -38
  15. package/esm2020/lib/alert/index.mjs +2 -2
  16. package/esm2020/lib/alert/public_api.mjs +5 -5
  17. package/esm2020/lib/avatar/avatar.component.mjs +49 -49
  18. package/esm2020/lib/avatar/avatar.module.mjs +24 -24
  19. package/esm2020/lib/avatar/index.mjs +2 -2
  20. package/esm2020/lib/avatar/public_api.mjs +3 -3
  21. package/esm2020/lib/backdrop/backdrop.service.mjs +52 -52
  22. package/esm2020/lib/badge/badge.component.mjs +42 -42
  23. package/esm2020/lib/badge/badge.module.mjs +24 -24
  24. package/esm2020/lib/badge/index.mjs +2 -2
  25. package/esm2020/lib/badge/public_api.mjs +3 -3
  26. package/esm2020/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +43 -43
  27. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +37 -37
  28. package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.mjs +2 -2
  29. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +41 -41
  30. package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +52 -52
  31. package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +37 -37
  32. package/esm2020/lib/breadcrumb/index.mjs +2 -2
  33. package/esm2020/lib/breadcrumb/public_api.mjs +6 -6
  34. package/esm2020/lib/button/button-close.directive.mjs +44 -44
  35. package/esm2020/lib/button/button.directive.mjs +112 -112
  36. package/esm2020/lib/button/button.module.mjs +29 -29
  37. package/esm2020/lib/button/index.mjs +2 -2
  38. package/esm2020/lib/button/public_api.mjs +4 -4
  39. package/esm2020/lib/button-group/button-group/button-group.component.mjs +41 -41
  40. package/esm2020/lib/button-group/button-group.module.mjs +29 -29
  41. package/esm2020/lib/button-group/button-toolbar/button-toolbar.component.mjs +35 -35
  42. package/esm2020/lib/button-group/index.mjs +2 -2
  43. package/esm2020/lib/button-group/public_api.mjs +4 -4
  44. package/esm2020/lib/calendar/calendar/calendar-class-view.pipe.mjs +19 -19
  45. package/esm2020/lib/calendar/calendar/calendar.component.mjs +376 -376
  46. package/esm2020/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +28 -28
  47. package/esm2020/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +21 -21
  48. package/esm2020/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +21 -21
  49. package/esm2020/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +16 -16
  50. package/esm2020/lib/calendar/calendar-month/calendar-day.directive.mjs +81 -81
  51. package/esm2020/lib/calendar/calendar-month/calendar-day.pipe.mjs +18 -18
  52. package/esm2020/lib/calendar/calendar-month/calendar-month.component.mjs +324 -324
  53. package/esm2020/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +20 -20
  54. package/esm2020/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +79 -79
  55. package/esm2020/lib/calendar/calendar.module.mjs +62 -62
  56. package/esm2020/lib/calendar/calendar.service.mjs +60 -60
  57. package/esm2020/lib/calendar/calendar.utils.mjs +275 -275
  58. package/esm2020/lib/calendar/index.mjs +2 -2
  59. package/esm2020/lib/calendar/public_api.mjs +5 -5
  60. package/esm2020/lib/callout/callout.component.mjs +23 -23
  61. package/esm2020/lib/callout/callout.module.mjs +20 -20
  62. package/esm2020/lib/callout/index.mjs +2 -2
  63. package/esm2020/lib/callout/public_api.mjs +3 -3
  64. package/esm2020/lib/card/card-body.component.mjs +22 -22
  65. package/esm2020/lib/card/card-footer.component.mjs +22 -22
  66. package/esm2020/lib/card/card-group.component.mjs +22 -22
  67. package/esm2020/lib/card/card-header-actions.component.mjs +20 -20
  68. package/esm2020/lib/card/card-header.component.mjs +22 -22
  69. package/esm2020/lib/card/card-img-overlay/card-img-overlay.component.mjs +19 -19
  70. package/esm2020/lib/card/card-img.directive.mjs +25 -25
  71. package/esm2020/lib/card/card-link.directive.mjs +21 -21
  72. package/esm2020/lib/card/card-subtitle.directive.mjs +21 -21
  73. package/esm2020/lib/card/card-text.directive.mjs +21 -21
  74. package/esm2020/lib/card/card-title.directive.mjs +21 -21
  75. package/esm2020/lib/card/card.component.mjs +29 -29
  76. package/esm2020/lib/card/card.module.mjs +79 -79
  77. package/esm2020/lib/card/index.mjs +2 -2
  78. package/esm2020/lib/card/public_api.mjs +14 -14
  79. package/esm2020/lib/carousel/carousel/carousel.component.mjs +214 -214
  80. package/esm2020/lib/carousel/carousel-caption/carousel-caption.component.mjs +17 -17
  81. package/esm2020/lib/carousel/carousel-control/carousel-control.component.mjs +83 -83
  82. package/esm2020/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +45 -45
  83. package/esm2020/lib/carousel/carousel-inner/carousel-inner.component.mjs +47 -47
  84. package/esm2020/lib/carousel/carousel-item/carousel-item.component.mjs +68 -68
  85. package/esm2020/lib/carousel/carousel-state.mjs +77 -77
  86. package/esm2020/lib/carousel/carousel-state.type.mjs +2 -2
  87. package/esm2020/lib/carousel/carousel.animation.mjs +70 -70
  88. package/esm2020/lib/carousel/carousel.config.mjs +22 -22
  89. package/esm2020/lib/carousel/carousel.module.mjs +54 -54
  90. package/esm2020/lib/carousel/carousel.service.mjs +18 -18
  91. package/esm2020/lib/carousel/index.mjs +2 -2
  92. package/esm2020/lib/carousel/public_api.mjs +9 -9
  93. package/esm2020/lib/collapse/collapse.animations.mjs +18 -18
  94. package/esm2020/lib/collapse/collapse.directive.mjs +190 -190
  95. package/esm2020/lib/collapse/collapse.module.mjs +23 -23
  96. package/esm2020/lib/collapse/index.mjs +2 -2
  97. package/esm2020/lib/collapse/public_api.mjs +3 -3
  98. package/esm2020/lib/coreui.types.mjs +10 -10
  99. package/esm2020/lib/date-picker/date-picker.component.mjs +81 -81
  100. package/esm2020/lib/date-picker/date-picker.module.mjs +59 -59
  101. package/esm2020/lib/date-picker/index.mjs +2 -2
  102. package/esm2020/lib/date-picker/public_api.mjs +3 -3
  103. package/esm2020/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +629 -608
  104. package/esm2020/lib/date-range-picker/date-range-picker.module.mjs +55 -55
  105. package/esm2020/lib/date-range-picker/index.mjs +2 -2
  106. package/esm2020/lib/date-range-picker/public_api.mjs +3 -3
  107. package/esm2020/lib/dropdown/dropdown/dropdown.component.mjs +374 -366
  108. package/esm2020/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +72 -72
  109. package/esm2020/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +23 -23
  110. package/esm2020/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +23 -23
  111. package/esm2020/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +23 -23
  112. package/esm2020/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +86 -86
  113. package/esm2020/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +81 -81
  114. package/esm2020/lib/dropdown/dropdown.module.mjs +64 -64
  115. package/esm2020/lib/dropdown/dropdown.service.mjs +18 -18
  116. package/esm2020/lib/dropdown/index.mjs +2 -2
  117. package/esm2020/lib/dropdown/public_api.mjs +10 -10
  118. package/esm2020/lib/element-cover/element-cover.component.mjs +71 -71
  119. package/esm2020/lib/element-cover/element-cover.module.mjs +28 -28
  120. package/esm2020/lib/element-cover/index.mjs +2 -2
  121. package/esm2020/lib/element-cover/public_api.mjs +3 -3
  122. package/esm2020/lib/footer/footer.component.mjs +38 -38
  123. package/esm2020/lib/footer/footer.module.mjs +24 -24
  124. package/esm2020/lib/footer/index.mjs +2 -2
  125. package/esm2020/lib/footer/public_api.mjs +3 -3
  126. package/esm2020/lib/form/form/form.directive.mjs +38 -38
  127. package/esm2020/lib/form/form-check/form-check-input.directive.mjs +62 -62
  128. package/esm2020/lib/form/form-check/form-check-label.directive.mjs +21 -21
  129. package/esm2020/lib/form/form-check/form-check.component.mjs +75 -75
  130. package/esm2020/lib/form/form-control/form-control.directive.mjs +71 -71
  131. package/esm2020/lib/form/form-feedback/form-feedback.component.mjs +42 -42
  132. package/esm2020/lib/form/form-floating/form-floating.directive.mjs +38 -38
  133. package/esm2020/lib/form/form-label/form-label.directive.mjs +39 -39
  134. package/esm2020/lib/form/form-select/form-select.directive.mjs +34 -34
  135. package/esm2020/lib/form/form-text/form-text.directive.mjs +22 -22
  136. package/esm2020/lib/form/form.module.mjs +77 -77
  137. package/esm2020/lib/form/index.mjs +2 -2
  138. package/esm2020/lib/form/input-group/input-group.component.mjs +31 -31
  139. package/esm2020/lib/form/input-group-text/input-group-text.directive.mjs +22 -22
  140. package/esm2020/lib/form/public_api.mjs +14 -14
  141. package/esm2020/lib/grid/col.component.mjs +12 -12
  142. package/esm2020/lib/grid/col.directive.mjs +156 -156
  143. package/esm2020/lib/grid/col.type.mjs +2 -2
  144. package/esm2020/lib/grid/container.component.mjs +43 -43
  145. package/esm2020/lib/grid/container.type.mjs +2 -2
  146. package/esm2020/lib/grid/grid.module.mjs +48 -48
  147. package/esm2020/lib/grid/gutter.directive.mjs +56 -56
  148. package/esm2020/lib/grid/gutter.type.mjs +2 -2
  149. package/esm2020/lib/grid/index.mjs +2 -2
  150. package/esm2020/lib/grid/public_api.mjs +8 -8
  151. package/esm2020/lib/grid/row.component.mjs +12 -12
  152. package/esm2020/lib/grid/row.directive.mjs +45 -45
  153. package/esm2020/lib/grid/row.type.mjs +2 -2
  154. package/esm2020/lib/header/header/header.component.mjs +47 -47
  155. package/esm2020/lib/header/header-brand/header-brand.component.mjs +31 -31
  156. package/esm2020/lib/header/header-divider/header-divider.component.mjs +20 -20
  157. package/esm2020/lib/header/header-nav/header-nav.component.mjs +28 -28
  158. package/esm2020/lib/header/header-text/header-text.component.mjs +20 -20
  159. package/esm2020/lib/header/header-toggler/header-toggler.directive.mjs +54 -54
  160. package/esm2020/lib/header/header.module.mjs +49 -49
  161. package/esm2020/lib/header/index.mjs +2 -2
  162. package/esm2020/lib/header/public_api.mjs +8 -8
  163. package/esm2020/lib/image/img.directive.mjs +91 -91
  164. package/esm2020/lib/image/img.module.mjs +24 -24
  165. package/esm2020/lib/image/index.mjs +2 -2
  166. package/esm2020/lib/image/public_api.mjs +3 -3
  167. package/esm2020/lib/list-group/index.mjs +2 -2
  168. package/esm2020/lib/list-group/list-group-item.directive.mjs +73 -73
  169. package/esm2020/lib/list-group/list-group.directive.mjs +44 -44
  170. package/esm2020/lib/list-group/list-group.module.mjs +25 -25
  171. package/esm2020/lib/list-group/public_api.mjs +4 -4
  172. package/esm2020/lib/loading-button/index.mjs +2 -2
  173. package/esm2020/lib/loading-button/loading-button.component.mjs +84 -84
  174. package/esm2020/lib/loading-button/loading-button.module.mjs +28 -28
  175. package/esm2020/lib/loading-button/public_api.mjs +3 -3
  176. package/esm2020/lib/modal/index.mjs +2 -2
  177. package/esm2020/lib/modal/modal/modal.component.mjs +311 -311
  178. package/esm2020/lib/modal/modal-body/modal-body.component.mjs +19 -19
  179. package/esm2020/lib/modal/modal-content/modal-content.component.mjs +23 -23
  180. package/esm2020/lib/modal/modal-dialog/modal-dialog.component.mjs +32 -32
  181. package/esm2020/lib/modal/modal-dismiss/modal-toggle.directive.mjs +27 -27
  182. package/esm2020/lib/modal/modal-footer/modal-footer.component.mjs +22 -22
  183. package/esm2020/lib/modal/modal-header/modal-header.component.mjs +24 -24
  184. package/esm2020/lib/modal/modal-title/modal-title.directive.mjs +21 -21
  185. package/esm2020/lib/modal/modal.module.mjs +69 -69
  186. package/esm2020/lib/modal/modal.service.mjs +21 -21
  187. package/esm2020/lib/modal/public_api.mjs +11 -11
  188. package/esm2020/lib/multi-select/index.mjs +2 -2
  189. package/esm2020/lib/multi-select/multi-select/multi-select.component.mjs +536 -536
  190. package/esm2020/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +30 -30
  191. package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +20 -20
  192. package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +52 -52
  193. package/esm2020/lib/multi-select/multi-select-option/multi-select-option.component.mjs +144 -144
  194. package/esm2020/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +36 -55
  195. package/esm2020/lib/multi-select/multi-select.module.mjs +51 -51
  196. package/esm2020/lib/multi-select/multi-select.service.mjs +23 -23
  197. package/esm2020/lib/multi-select/multi-select.type.mjs +2 -2
  198. package/esm2020/lib/multi-select/public_api.mjs +7 -7
  199. package/esm2020/lib/nav/index.mjs +2 -2
  200. package/esm2020/lib/nav/nav-item.component.mjs +19 -19
  201. package/esm2020/lib/nav/nav-link.directive.mjs +86 -86
  202. package/esm2020/lib/nav/nav.component.mjs +24 -24
  203. package/esm2020/lib/nav/nav.module.mjs +22 -22
  204. package/esm2020/lib/nav/public_api.mjs +5 -5
  205. package/esm2020/lib/navbar/index.mjs +2 -2
  206. package/esm2020/lib/navbar/navbar-brand/navbar-brand.directive.mjs +23 -23
  207. package/esm2020/lib/navbar/navbar-nav/navbar-nav.component.mjs +40 -40
  208. package/esm2020/lib/navbar/navbar-text/navbar-text.component.mjs +20 -20
  209. package/esm2020/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +63 -63
  210. package/esm2020/lib/navbar/navbar.component.mjs +84 -84
  211. package/esm2020/lib/navbar/navbar.module.mjs +48 -48
  212. package/esm2020/lib/navbar/public_api.mjs +7 -7
  213. package/esm2020/lib/offcanvas/index.mjs +2 -2
  214. package/esm2020/lib/offcanvas/offcanvas/offcanvas.component.mjs +244 -244
  215. package/esm2020/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +19 -19
  216. package/esm2020/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +19 -19
  217. package/esm2020/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +21 -21
  218. package/esm2020/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +27 -27
  219. package/esm2020/lib/offcanvas/offcanvas.module.mjs +57 -57
  220. package/esm2020/lib/offcanvas/offcanvas.service.mjs +21 -21
  221. package/esm2020/lib/offcanvas/public_api.mjs +8 -8
  222. package/esm2020/lib/pagination/index.mjs +2 -2
  223. package/esm2020/lib/pagination/page-item/page-item.component.mjs +12 -12
  224. package/esm2020/lib/pagination/page-item/page-item.directive.mjs +62 -62
  225. package/esm2020/lib/pagination/page-link/page-link.directive.mjs +21 -21
  226. package/esm2020/lib/pagination/pagination/pagination.component.mjs +41 -41
  227. package/esm2020/lib/pagination/pagination.module.mjs +38 -38
  228. package/esm2020/lib/pagination/public_api.mjs +5 -5
  229. package/esm2020/lib/placeholder/index.mjs +2 -2
  230. package/esm2020/lib/placeholder/placeholder-animation.directive.mjs +34 -34
  231. package/esm2020/lib/placeholder/placeholder.directive.mjs +51 -51
  232. package/esm2020/lib/placeholder/placeholder.module.mjs +29 -29
  233. package/esm2020/lib/placeholder/public_api.mjs +4 -4
  234. package/esm2020/lib/popover/index.mjs +2 -2
  235. package/esm2020/lib/popover/popover/popover.component.mjs +92 -92
  236. package/esm2020/lib/popover/popover.directive.mjs +196 -196
  237. package/esm2020/lib/popover/popover.module.mjs +29 -29
  238. package/esm2020/lib/popover/public_api.mjs +4 -4
  239. package/esm2020/lib/progress/index.mjs +2 -2
  240. package/esm2020/lib/progress/progress-bar.component.mjs +112 -112
  241. package/esm2020/lib/progress/progress-bar.mjs +2 -2
  242. package/esm2020/lib/progress/progress.component.mjs +72 -72
  243. package/esm2020/lib/progress/progress.module.mjs +25 -25
  244. package/esm2020/lib/progress/public_api.mjs +4 -4
  245. package/esm2020/lib/services/class-toggle.service.mjs +30 -30
  246. package/esm2020/lib/services/index.mjs +2 -2
  247. package/esm2020/lib/services/intersection.service.mjs +34 -34
  248. package/esm2020/lib/services/listeners.service.mjs +43 -43
  249. package/esm2020/lib/services/public_api.mjs +3 -3
  250. package/esm2020/lib/shared/html-attr.directive.mjs +52 -52
  251. package/esm2020/lib/shared/index.mjs +2 -2
  252. package/esm2020/lib/shared/public_api.mjs +4 -4
  253. package/esm2020/lib/shared/shared.module.mjs +46 -46
  254. package/esm2020/lib/shared/template-id.directive.mjs +19 -19
  255. package/esm2020/lib/sidebar/index.mjs +2 -2
  256. package/esm2020/lib/sidebar/public_api.mjs +10 -10
  257. package/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +246 -246
  258. package/esm2020/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +60 -60
  259. package/esm2020/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +30 -30
  260. package/esm2020/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +20 -20
  261. package/esm2020/lib/sidebar/sidebar-header/sidebar-header.component.mjs +20 -20
  262. package/esm2020/lib/sidebar/sidebar-nav/index.mjs +2 -2
  263. package/esm2020/lib/sidebar/sidebar-nav/public_api.mjs +14 -14
  264. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +24 -24
  265. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +18 -18
  266. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +18 -18
  267. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +21 -21
  268. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +33 -33
  269. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +43 -43
  270. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +94 -94
  271. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +23 -23
  272. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +68 -68
  273. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +204 -204
  274. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.mjs +2 -2
  275. package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +54 -54
  276. package/esm2020/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +40 -40
  277. package/esm2020/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +26 -26
  278. package/esm2020/lib/sidebar/sidebar.module.mjs +99 -99
  279. package/esm2020/lib/sidebar/sidebar.service.mjs +21 -21
  280. package/esm2020/lib/smart-pagination/index.mjs +2 -2
  281. package/esm2020/lib/smart-pagination/public_api.mjs +3 -3
  282. package/esm2020/lib/smart-pagination/smart-pagination.component.mjs +196 -196
  283. package/esm2020/lib/smart-pagination/smart-pagination.module.mjs +28 -28
  284. package/esm2020/lib/smart-pagination/smart-pagination.type.mjs +2 -2
  285. package/esm2020/lib/smart-table/index.mjs +2 -2
  286. package/esm2020/lib/smart-table/public_api.mjs +5 -4
  287. package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +515 -517
  288. package/esm2020/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +30 -30
  289. package/esm2020/lib/smart-table/smart-table-filter/filter-input.directive.mjs +78 -78
  290. package/esm2020/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +46 -46
  291. package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +165 -165
  292. package/esm2020/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +49 -49
  293. package/esm2020/lib/smart-table/smart-table.module.mjs +76 -76
  294. package/esm2020/lib/smart-table/smart-table.type.mjs +1 -1
  295. package/esm2020/lib/spinner/index.mjs +2 -2
  296. package/esm2020/lib/spinner/public_api.mjs +3 -3
  297. package/esm2020/lib/spinner/spinner.component.mjs +49 -49
  298. package/esm2020/lib/spinner/spinner.module.mjs +28 -28
  299. package/esm2020/lib/table/index.mjs +2 -2
  300. package/esm2020/lib/table/public_api.mjs +5 -5
  301. package/esm2020/lib/table/table-active.directive.mjs +40 -40
  302. package/esm2020/lib/table/table-color.directive.mjs +24 -24
  303. package/esm2020/lib/table/table.directive.mjs +147 -147
  304. package/esm2020/lib/table/table.module.mjs +34 -34
  305. package/esm2020/lib/table/table.type.mjs +2 -2
  306. package/esm2020/lib/tabs/index.mjs +2 -2
  307. package/esm2020/lib/tabs/public_api.mjs +6 -6
  308. package/esm2020/lib/tabs/tab-content/tab-content.component.mjs +92 -92
  309. package/esm2020/lib/tabs/tab-content-ref.directive.mjs +128 -128
  310. package/esm2020/lib/tabs/tab-pane/tab-pane.component.mjs +57 -57
  311. package/esm2020/lib/tabs/tab.service.mjs +21 -21
  312. package/esm2020/lib/tabs/tabs.module.mjs +40 -40
  313. package/esm2020/lib/time-picker/index.mjs +2 -2
  314. package/esm2020/lib/time-picker/public_api.mjs +3 -3
  315. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +103 -103
  316. package/esm2020/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +104 -104
  317. package/esm2020/lib/time-picker/time-picker.component.mjs +489 -489
  318. package/esm2020/lib/time-picker/time-picker.module.mjs +50 -50
  319. package/esm2020/lib/time-picker/time.utils.mjs +645 -645
  320. package/esm2020/lib/toast/index.mjs +2 -2
  321. package/esm2020/lib/toast/public_api.mjs +9 -9
  322. package/esm2020/lib/toast/toast/toast.component.mjs +238 -238
  323. package/esm2020/lib/toast/toast-body/toast-body.component.mjs +21 -21
  324. package/esm2020/lib/toast/toast-close.directive.mjs +28 -28
  325. package/esm2020/lib/toast/toast-header/toast-header.component.mjs +31 -31
  326. package/esm2020/lib/toast/toast.module.mjs +50 -50
  327. package/esm2020/lib/toast/toaster/toaster-host.directive.mjs +17 -17
  328. package/esm2020/lib/toast/toaster/toaster.component.mjs +140 -140
  329. package/esm2020/lib/toast/toaster/toaster.service.mjs +21 -21
  330. package/esm2020/lib/tooltip/index.mjs +2 -2
  331. package/esm2020/lib/tooltip/public_api.mjs +4 -4
  332. package/esm2020/lib/tooltip/tooltip/tooltip.component.mjs +88 -88
  333. package/esm2020/lib/tooltip/tooltip.directive.mjs +191 -191
  334. package/esm2020/lib/tooltip/tooltip.module.mjs +29 -29
  335. package/esm2020/lib/utilities/align.directive.mjs +24 -24
  336. package/esm2020/lib/utilities/bg-color.directive.mjs +33 -33
  337. package/esm2020/lib/utilities/border.directive.mjs +66 -66
  338. package/esm2020/lib/utilities/border.type.mjs +2 -2
  339. package/esm2020/lib/utilities/index.mjs +2 -2
  340. package/esm2020/lib/utilities/public_api.mjs +7 -7
  341. package/esm2020/lib/utilities/rounded.directive.mjs +65 -65
  342. package/esm2020/lib/utilities/rounded.type.mjs +2 -2
  343. package/esm2020/lib/utilities/text-color.directive.mjs +32 -32
  344. package/esm2020/lib/utilities/utilities.module.mjs +44 -44
  345. package/esm2020/lib/widget/index.mjs +2 -2
  346. package/esm2020/lib/widget/public_api.mjs +8 -8
  347. package/esm2020/lib/widget/widget-stat-a/widget-stat-a.component.mjs +49 -49
  348. package/esm2020/lib/widget/widget-stat-b/widget-stat-b.component.mjs +52 -52
  349. package/esm2020/lib/widget/widget-stat-c/widget-stat-c.component.mjs +80 -80
  350. package/esm2020/lib/widget/widget-stat-d/widget-stat-d.component.mjs +39 -39
  351. package/esm2020/lib/widget/widget-stat-e/widget-stat-e.component.mjs +30 -30
  352. package/esm2020/lib/widget/widget-stat-f/widget-stat-f.component.mjs +92 -92
  353. package/esm2020/lib/widget/widget.module.mjs +57 -57
  354. package/esm2020/public-api.mjs +50 -50
  355. package/fesm2015/coreui-angular-pro.mjs +15310 -15304
  356. package/fesm2015/coreui-angular-pro.mjs.map +1 -1
  357. package/fesm2020/coreui-angular-pro.mjs +15187 -15181
  358. package/fesm2020/coreui-angular-pro.mjs.map +1 -1
  359. package/index.d.ts +5 -5
  360. package/lib/accordion/accordion/accordion.component.d.ts +22 -22
  361. package/lib/accordion/accordion-button/accordion-button.directive.d.ts +18 -18
  362. package/lib/accordion/accordion-item/accordion-item.component.d.ts +33 -33
  363. package/lib/accordion/accordion.module.d.ts +12 -12
  364. package/lib/accordion/accordion.service.d.ts +13 -13
  365. package/lib/accordion/index.d.ts +1 -1
  366. package/lib/accordion/public_api.d.ts +4 -4
  367. package/lib/alert/alert-heading.directive.d.ts +7 -7
  368. package/lib/alert/alert-link.directive.d.ts +7 -7
  369. package/lib/alert/alert.component.d.ts +68 -68
  370. package/lib/alert/alert.module.d.ts +11 -11
  371. package/lib/alert/index.d.ts +1 -1
  372. package/lib/alert/public_api.d.ts +4 -4
  373. package/lib/avatar/avatar.component.d.ts +40 -40
  374. package/lib/avatar/avatar.module.d.ts +8 -8
  375. package/lib/avatar/index.d.ts +1 -1
  376. package/lib/avatar/public_api.d.ts +2 -2
  377. package/lib/backdrop/backdrop.service.d.ts +16 -16
  378. package/lib/badge/badge.component.d.ts +32 -32
  379. package/lib/badge/badge.module.d.ts +8 -8
  380. package/lib/badge/index.d.ts +1 -1
  381. package/lib/badge/public_api.d.ts +2 -2
  382. package/lib/breadcrumb/breadcrumb/breadcrumb.component.d.ts +21 -21
  383. package/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.d.ts +28 -28
  384. package/lib/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +9 -9
  385. package/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.d.ts +21 -21
  386. package/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.d.ts +14 -14
  387. package/lib/breadcrumb/breadcrumb.module.d.ts +12 -12
  388. package/lib/breadcrumb/index.d.ts +1 -1
  389. package/lib/breadcrumb/public_api.d.ts +6 -6
  390. package/lib/button/button-close.directive.d.ts +16 -16
  391. package/lib/button/button.directive.d.ts +54 -54
  392. package/lib/button/button.module.d.ts +9 -9
  393. package/lib/button/index.d.ts +1 -1
  394. package/lib/button/public_api.d.ts +3 -3
  395. package/lib/button-group/button-group/button-group.component.d.ts +23 -23
  396. package/lib/button-group/button-group.module.d.ts +9 -9
  397. package/lib/button-group/button-toolbar/button-toolbar.component.d.ts +13 -13
  398. package/lib/button-group/index.d.ts +1 -1
  399. package/lib/button-group/public_api.d.ts +3 -3
  400. package/lib/calendar/calendar/calendar-class-view.pipe.d.ts +7 -7
  401. package/lib/calendar/calendar/calendar.component.d.ts +155 -155
  402. package/lib/calendar/calendar-month/calendar-class-day.pipe.d.ts +15 -15
  403. package/lib/calendar/calendar-month/calendar-class-month.pipe.d.ts +7 -7
  404. package/lib/calendar/calendar-month/calendar-class-year.pipe.d.ts +7 -7
  405. package/lib/calendar/calendar-month/calendar-day-title.pipe.d.ts +7 -7
  406. package/lib/calendar/calendar-month/calendar-day.directive.d.ts +29 -29
  407. package/lib/calendar/calendar-month/calendar-day.pipe.d.ts +8 -8
  408. package/lib/calendar/calendar-month/calendar-month.component.d.ts +121 -121
  409. package/lib/calendar/calendar-month/calendar-weekday.pipe.d.ts +8 -8
  410. package/lib/calendar/calendar-navigation/calendar-navigation.component.d.ts +30 -30
  411. package/lib/calendar/calendar.module.d.ts +19 -19
  412. package/lib/calendar/calendar.service.d.ts +33 -33
  413. package/lib/calendar/calendar.utils.d.ts +26 -26
  414. package/lib/calendar/index.d.ts +1 -1
  415. package/lib/calendar/public_api.d.ts +4 -4
  416. package/lib/callout/callout.component.d.ts +13 -13
  417. package/lib/callout/callout.module.d.ts +8 -8
  418. package/lib/callout/index.d.ts +1 -1
  419. package/lib/callout/public_api.d.ts +2 -2
  420. package/lib/card/card-body.component.d.ts +6 -6
  421. package/lib/card/card-footer.component.d.ts +6 -6
  422. package/lib/card/card-group.component.d.ts +6 -6
  423. package/lib/card/card-header-actions.component.d.ts +6 -6
  424. package/lib/card/card-header.component.d.ts +6 -6
  425. package/lib/card/card-img-overlay/card-img-overlay.component.d.ts +6 -6
  426. package/lib/card/card-img.directive.d.ts +11 -11
  427. package/lib/card/card-link.directive.d.ts +6 -6
  428. package/lib/card/card-subtitle.directive.d.ts +6 -6
  429. package/lib/card/card-text.directive.d.ts +6 -6
  430. package/lib/card/card-title.directive.d.ts +6 -6
  431. package/lib/card/card.component.d.ts +18 -18
  432. package/lib/card/card.module.d.ts +19 -19
  433. package/lib/card/index.d.ts +1 -1
  434. package/lib/card/public_api.d.ts +13 -13
  435. package/lib/carousel/carousel/carousel.component.d.ts +92 -92
  436. package/lib/carousel/carousel-caption/carousel-caption.component.d.ts +7 -7
  437. package/lib/carousel/carousel-control/carousel-control.component.d.ts +31 -31
  438. package/lib/carousel/carousel-indicators/carousel-indicators.component.d.ts +18 -18
  439. package/lib/carousel/carousel-inner/carousel-inner.component.d.ts +21 -21
  440. package/lib/carousel/carousel-item/carousel-item.component.d.ts +30 -30
  441. package/lib/carousel/carousel-state.d.ts +16 -16
  442. package/lib/carousel/carousel-state.type.d.ts +15 -15
  443. package/lib/carousel/carousel.animation.d.ts +4 -4
  444. package/lib/carousel/carousel.config.d.ts +10 -10
  445. package/lib/carousel/carousel.module.d.ts +15 -15
  446. package/lib/carousel/carousel.service.d.ts +14 -14
  447. package/lib/carousel/index.d.ts +1 -1
  448. package/lib/carousel/public_api.d.ts +8 -8
  449. package/lib/collapse/collapse.animations.d.ts +4 -4
  450. package/lib/collapse/collapse.directive.d.ts +65 -65
  451. package/lib/collapse/collapse.module.d.ts +10 -10
  452. package/lib/collapse/index.d.ts +1 -1
  453. package/lib/collapse/public_api.d.ts +2 -2
  454. package/lib/coreui.types.d.ts +45 -45
  455. package/lib/date-picker/date-picker.component.d.ts +18 -18
  456. package/lib/date-picker/date-picker.module.d.ts +16 -16
  457. package/lib/date-picker/index.d.ts +1 -1
  458. package/lib/date-picker/public_api.d.ts +3 -3
  459. package/lib/date-range-picker/date-range-picker/date-range-picker.component.d.ts +249 -240
  460. package/lib/date-range-picker/date-range-picker.module.d.ts +15 -15
  461. package/lib/date-range-picker/index.d.ts +1 -1
  462. package/lib/date-range-picker/public_api.d.ts +2 -2
  463. package/lib/dropdown/dropdown/dropdown.component.d.ts +136 -135
  464. package/lib/dropdown/dropdown-close/dropdown-close.directive.d.ts +26 -26
  465. package/lib/dropdown/dropdown-divider/dropdown-divider.directive.d.ts +7 -7
  466. package/lib/dropdown/dropdown-header/dropdown-header.directive.d.ts +7 -7
  467. package/lib/dropdown/dropdown-item/dropdown-item-plain.directive.d.ts +7 -7
  468. package/lib/dropdown/dropdown-item/dropdown-item.directive.d.ts +36 -36
  469. package/lib/dropdown/dropdown-menu/dropdown-menu.directive.d.ts +36 -36
  470. package/lib/dropdown/dropdown.module.d.ts +14 -14
  471. package/lib/dropdown/dropdown.service.d.ts +13 -13
  472. package/lib/dropdown/index.d.ts +1 -1
  473. package/lib/dropdown/public_api.d.ts +9 -9
  474. package/lib/element-cover/element-cover.component.d.ts +27 -27
  475. package/lib/element-cover/element-cover.module.d.ts +9 -9
  476. package/lib/element-cover/index.d.ts +1 -1
  477. package/lib/element-cover/public_api.d.ts +2 -2
  478. package/lib/footer/footer.component.d.ts +18 -18
  479. package/lib/footer/footer.module.d.ts +8 -8
  480. package/lib/footer/index.d.ts +1 -1
  481. package/lib/footer/public_api.d.ts +2 -2
  482. package/lib/form/form/form.directive.d.ts +17 -17
  483. package/lib/form/form-check/form-check-input.directive.d.ts +31 -31
  484. package/lib/form/form-check/form-check-label.directive.d.ts +6 -6
  485. package/lib/form/form-check/form-check.component.d.ts +36 -36
  486. package/lib/form/form-control/form-control.directive.d.ts +34 -34
  487. package/lib/form/form-feedback/form-feedback.component.d.ts +18 -18
  488. package/lib/form/form-floating/form-floating.directive.d.ts +16 -16
  489. package/lib/form/form-label/form-label.directive.d.ts +16 -16
  490. package/lib/form/form-select/form-select.directive.d.ts +16 -16
  491. package/lib/form/form-text/form-text.directive.d.ts +7 -7
  492. package/lib/form/form.module.d.ts +19 -19
  493. package/lib/form/index.d.ts +1 -1
  494. package/lib/form/input-group/input-group.component.d.ts +11 -11
  495. package/lib/form/input-group-text/input-group-text.directive.d.ts +7 -7
  496. package/lib/form/public_api.d.ts +13 -13
  497. package/lib/grid/col.component.d.ts +6 -6
  498. package/lib/grid/col.directive.d.ts +75 -75
  499. package/lib/grid/col.type.d.ts +11 -11
  500. package/lib/grid/container.component.d.ts +20 -20
  501. package/lib/grid/container.type.d.ts +5 -5
  502. package/lib/grid/grid.module.d.ts +13 -13
  503. package/lib/grid/gutter.directive.d.ts +13 -13
  504. package/lib/grid/gutter.type.d.ts +13 -13
  505. package/lib/grid/index.d.ts +1 -1
  506. package/lib/grid/public_api.d.ts +7 -7
  507. package/lib/grid/row.component.d.ts +6 -6
  508. package/lib/grid/row.directive.d.ts +37 -37
  509. package/lib/grid/row.type.d.ts +9 -9
  510. package/lib/header/header/header.component.d.ts +25 -25
  511. package/lib/header/header-brand/header-brand.component.d.ts +12 -12
  512. package/lib/header/header-divider/header-divider.component.d.ts +6 -6
  513. package/lib/header/header-nav/header-nav.component.d.ts +12 -12
  514. package/lib/header/header-text/header-text.component.d.ts +6 -6
  515. package/lib/header/header-toggler/header-toggler.directive.d.ts +25 -25
  516. package/lib/header/header.module.d.ts +13 -13
  517. package/lib/header/index.d.ts +1 -1
  518. package/lib/header/public_api.d.ts +7 -7
  519. package/lib/image/img.directive.d.ts +42 -42
  520. package/lib/image/img.module.d.ts +8 -8
  521. package/lib/image/index.d.ts +1 -1
  522. package/lib/image/public_api.d.ts +2 -2
  523. package/lib/list-group/index.d.ts +1 -1
  524. package/lib/list-group/list-group-item.directive.d.ts +33 -33
  525. package/lib/list-group/list-group.directive.d.ts +21 -21
  526. package/lib/list-group/list-group.module.d.ts +9 -9
  527. package/lib/list-group/public_api.d.ts +3 -3
  528. package/lib/loading-button/index.d.ts +1 -1
  529. package/lib/loading-button/loading-button.component.d.ts +43 -43
  530. package/lib/loading-button/loading-button.module.d.ts +9 -9
  531. package/lib/loading-button/public_api.d.ts +2 -2
  532. package/lib/modal/index.d.ts +1 -1
  533. package/lib/modal/modal/modal.component.d.ts +104 -104
  534. package/lib/modal/modal-body/modal-body.component.d.ts +6 -6
  535. package/lib/modal/modal-content/modal-content.component.d.ts +7 -7
  536. package/lib/modal/modal-dialog/modal-dialog.component.d.ts +25 -25
  537. package/lib/modal/modal-dismiss/modal-toggle.directive.d.ts +13 -13
  538. package/lib/modal/modal-footer/modal-footer.component.d.ts +6 -6
  539. package/lib/modal/modal-header/modal-header.component.d.ts +6 -6
  540. package/lib/modal/modal-title/modal-title.directive.d.ts +6 -6
  541. package/lib/modal/modal.module.d.ts +16 -16
  542. package/lib/modal/modal.service.d.ts +15 -15
  543. package/lib/modal/public_api.d.ts +10 -10
  544. package/lib/multi-select/index.d.ts +1 -1
  545. package/lib/multi-select/multi-select/multi-select.component.d.ts +150 -150
  546. package/lib/multi-select/multi-select-native-select/multi-select-native-select.component.d.ts +14 -14
  547. package/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.d.ts +9 -9
  548. package/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.d.ts +20 -20
  549. package/lib/multi-select/multi-select-option/multi-select-option.component.d.ts +49 -49
  550. package/lib/multi-select/multi-select-tag/multi-select-tag.component.d.ts +17 -21
  551. package/lib/multi-select/multi-select.module.d.ts +17 -17
  552. package/lib/multi-select/multi-select.service.d.ts +12 -12
  553. package/lib/multi-select/multi-select.type.d.ts +34 -34
  554. package/lib/multi-select/public_api.d.ts +6 -6
  555. package/lib/nav/index.d.ts +1 -1
  556. package/lib/nav/nav-item.component.d.ts +6 -6
  557. package/lib/nav/nav-link.directive.d.ts +34 -34
  558. package/lib/nav/nav.component.d.ts +16 -16
  559. package/lib/nav/nav.module.d.ts +10 -10
  560. package/lib/nav/public_api.d.ts +4 -4
  561. package/lib/navbar/index.d.ts +1 -1
  562. package/lib/navbar/navbar-brand/navbar-brand.directive.d.ts +7 -7
  563. package/lib/navbar/navbar-nav/navbar-nav.component.d.ts +15 -15
  564. package/lib/navbar/navbar-text/navbar-text.component.d.ts +6 -6
  565. package/lib/navbar/navbar-toggler/navbar-toggler.directive.d.ts +33 -33
  566. package/lib/navbar/navbar.component.d.ts +39 -39
  567. package/lib/navbar/navbar.module.d.ts +13 -13
  568. package/lib/navbar/public_api.d.ts +6 -6
  569. package/lib/offcanvas/index.d.ts +1 -1
  570. package/lib/offcanvas/offcanvas/offcanvas.component.d.ts +82 -82
  571. package/lib/offcanvas/offcanvas-body/offcanvas-body.component.d.ts +6 -6
  572. package/lib/offcanvas/offcanvas-header/offcanvas-header.component.d.ts +6 -6
  573. package/lib/offcanvas/offcanvas-title/offcanvas-title.directive.d.ts +6 -6
  574. package/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.d.ts +14 -14
  575. package/lib/offcanvas/offcanvas.module.d.ts +13 -13
  576. package/lib/offcanvas/offcanvas.service.d.ts +15 -15
  577. package/lib/offcanvas/public_api.d.ts +7 -7
  578. package/lib/pagination/index.d.ts +1 -1
  579. package/lib/pagination/page-item/page-item.component.d.ts +6 -6
  580. package/lib/pagination/page-item/page-item.directive.d.ts +24 -24
  581. package/lib/pagination/page-link/page-link.directive.d.ts +6 -6
  582. package/lib/pagination/pagination/pagination.component.d.ts +22 -22
  583. package/lib/pagination/pagination.module.d.ts +11 -11
  584. package/lib/pagination/public_api.d.ts +5 -5
  585. package/lib/placeholder/index.d.ts +1 -1
  586. package/lib/placeholder/placeholder-animation.directive.d.ts +18 -18
  587. package/lib/placeholder/placeholder.directive.d.ts +22 -22
  588. package/lib/placeholder/placeholder.module.d.ts +9 -9
  589. package/lib/placeholder/public_api.d.ts +3 -3
  590. package/lib/popover/index.d.ts +1 -1
  591. package/lib/popover/popover/popover.component.d.ts +30 -30
  592. package/lib/popover/popover.directive.d.ts +58 -58
  593. package/lib/popover/popover.module.d.ts +9 -9
  594. package/lib/popover/public_api.d.ts +3 -3
  595. package/lib/progress/index.d.ts +1 -1
  596. package/lib/progress/progress-bar.component.d.ts +52 -52
  597. package/lib/progress/progress-bar.d.ts +10 -10
  598. package/lib/progress/progress.component.d.ts +32 -32
  599. package/lib/progress/progress.module.d.ts +9 -9
  600. package/lib/progress/public_api.d.ts +4 -4
  601. package/lib/services/class-toggle.service.d.ts +11 -11
  602. package/lib/services/index.d.ts +1 -1
  603. package/lib/services/intersection.service.d.ts +22 -22
  604. package/lib/services/listeners.service.d.ts +19 -19
  605. package/lib/services/public_api.d.ts +2 -2
  606. package/lib/shared/html-attr.directive.d.ts +16 -16
  607. package/lib/shared/index.d.ts +1 -1
  608. package/lib/shared/public_api.d.ts +3 -3
  609. package/lib/shared/shared.module.d.ts +11 -11
  610. package/lib/shared/template-id.directive.d.ts +9 -9
  611. package/lib/sidebar/index.d.ts +1 -1
  612. package/lib/sidebar/public_api.d.ts +9 -9
  613. package/lib/sidebar/sidebar/sidebar.component.d.ts +85 -85
  614. package/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.d.ts +16 -16
  615. package/lib/sidebar/sidebar-brand/sidebar-brand.component.d.ts +12 -12
  616. package/lib/sidebar/sidebar-footer/sidebar-footer.component.d.ts +7 -7
  617. package/lib/sidebar/sidebar-header/sidebar-header.component.d.ts +7 -7
  618. package/lib/sidebar/sidebar-nav/index.d.ts +1 -1
  619. package/lib/sidebar/sidebar-nav/public_api.d.ts +12 -12
  620. package/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.d.ts +7 -7
  621. package/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.d.ts +7 -7
  622. package/lib/sidebar/sidebar-nav/sidebar-nav-group.service.d.ts +14 -14
  623. package/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.d.ts +7 -7
  624. package/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.d.ts +10 -10
  625. package/lib/sidebar/sidebar-nav/sidebar-nav-label.component.d.ts +18 -18
  626. package/lib/sidebar/sidebar-nav/sidebar-nav-link.component.d.ts +34 -34
  627. package/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.d.ts +7 -7
  628. package/lib/sidebar/sidebar-nav/sidebar-nav-title.component.d.ts +15 -15
  629. package/lib/sidebar/sidebar-nav/sidebar-nav.component.d.ts +59 -59
  630. package/lib/sidebar/sidebar-nav/sidebar-nav.d.ts +53 -53
  631. package/lib/sidebar/sidebar-nav/sidebar-nav.service.d.ts +20 -20
  632. package/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.d.ts +25 -25
  633. package/lib/sidebar/sidebar-toggler/sidebar-toggler.component.d.ts +7 -7
  634. package/lib/sidebar/sidebar.module.d.ts +25 -25
  635. package/lib/sidebar/sidebar.service.d.ts +19 -19
  636. package/lib/smart-pagination/index.d.ts +1 -1
  637. package/lib/smart-pagination/public_api.d.ts +2 -2
  638. package/lib/smart-pagination/smart-pagination.component.d.ts +109 -109
  639. package/lib/smart-pagination/smart-pagination.module.d.ts +9 -9
  640. package/lib/smart-pagination/smart-pagination.type.d.ts +79 -79
  641. package/lib/smart-table/index.d.ts +1 -1
  642. package/lib/smart-table/public_api.d.ts +4 -3
  643. package/lib/smart-table/smart-table/smart-table.component.d.ts +145 -144
  644. package/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.d.ts +11 -11
  645. package/lib/smart-table/smart-table-filter/filter-input.directive.d.ts +24 -24
  646. package/lib/smart-table/smart-table-filter/smart-table-filter.component.d.ts +16 -16
  647. package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +45 -45
  648. package/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.d.ts +14 -14
  649. package/lib/smart-table/smart-table.module.d.ts +22 -22
  650. package/lib/smart-table/smart-table.type.d.ts +275 -275
  651. package/lib/spinner/index.d.ts +1 -1
  652. package/lib/spinner/public_api.d.ts +2 -2
  653. package/lib/spinner/spinner.component.d.ts +31 -31
  654. package/lib/spinner/spinner.module.d.ts +9 -9
  655. package/lib/table/index.d.ts +1 -1
  656. package/lib/table/public_api.d.ts +4 -4
  657. package/lib/table/table-active.directive.d.ts +16 -16
  658. package/lib/table/table-color.directive.d.ts +12 -12
  659. package/lib/table/table.directive.d.ts +90 -90
  660. package/lib/table/table.module.d.ts +10 -10
  661. package/lib/table/table.type.d.ts +76 -76
  662. package/lib/tabs/index.d.ts +1 -1
  663. package/lib/tabs/public_api.d.ts +5 -5
  664. package/lib/tabs/tab-content/tab-content.component.d.ts +33 -33
  665. package/lib/tabs/tab-content-ref.directive.d.ts +50 -50
  666. package/lib/tabs/tab-pane/tab-pane.component.d.ts +26 -26
  667. package/lib/tabs/tab.service.d.ts +14 -14
  668. package/lib/tabs/tabs.module.d.ts +10 -10
  669. package/lib/time-picker/index.d.ts +1 -1
  670. package/lib/time-picker/public_api.d.ts +2 -2
  671. package/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.d.ts +39 -39
  672. package/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.d.ts +38 -38
  673. package/lib/time-picker/time-picker.component.d.ts +196 -196
  674. package/lib/time-picker/time-picker.module.d.ts +14 -14
  675. package/lib/time-picker/time.utils.d.ts +57 -57
  676. package/lib/toast/index.d.ts +1 -1
  677. package/lib/toast/public_api.d.ts +8 -8
  678. package/lib/toast/toast/toast.component.d.ts +84 -84
  679. package/lib/toast/toast-body/toast-body.component.d.ts +9 -9
  680. package/lib/toast/toast-close.directive.d.ts +10 -10
  681. package/lib/toast/toast-header/toast-header.component.d.ts +14 -14
  682. package/lib/toast/toast.module.d.ts +14 -14
  683. package/lib/toast/toaster/toaster-host.directive.d.ts +8 -8
  684. package/lib/toast/toaster/toaster.component.d.ts +55 -55
  685. package/lib/toast/toaster/toaster.service.d.ts +16 -16
  686. package/lib/tooltip/index.d.ts +1 -1
  687. package/lib/tooltip/public_api.d.ts +3 -3
  688. package/lib/tooltip/tooltip/tooltip.component.d.ts +30 -30
  689. package/lib/tooltip/tooltip.directive.d.ts +58 -58
  690. package/lib/tooltip/tooltip.module.d.ts +9 -9
  691. package/lib/utilities/align.directive.d.ts +12 -12
  692. package/lib/utilities/bg-color.directive.d.ts +17 -17
  693. package/lib/utilities/border.directive.d.ts +12 -12
  694. package/lib/utilities/border.type.d.ts +15 -15
  695. package/lib/utilities/index.d.ts +1 -1
  696. package/lib/utilities/public_api.d.ts +6 -6
  697. package/lib/utilities/rounded.directive.d.ts +12 -12
  698. package/lib/utilities/rounded.type.d.ts +12 -12
  699. package/lib/utilities/text-color.directive.d.ts +13 -13
  700. package/lib/utilities/utilities.module.d.ts +12 -12
  701. package/lib/widget/index.d.ts +1 -1
  702. package/lib/widget/public_api.d.ts +7 -7
  703. package/lib/widget/widget-stat-a/widget-stat-a.component.d.ts +37 -37
  704. package/lib/widget/widget-stat-b/widget-stat-b.component.d.ts +47 -47
  705. package/lib/widget/widget-stat-c/widget-stat-c.component.d.ts +58 -58
  706. package/lib/widget/widget-stat-d/widget-stat-d.component.d.ts +31 -31
  707. package/lib/widget/widget-stat-e/widget-stat-e.component.d.ts +24 -24
  708. package/lib/widget/widget-stat-f/widget-stat-f.component.d.ts +77 -77
  709. package/lib/widget/widget.module.d.ts +15 -15
  710. package/package.json +1 -1
  711. package/public-api.d.ts +46 -46
@@ -1,165 +1,165 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "../../table/table-color.directive";
5
- import * as i3 from "../../form/form-check/form-check-input.directive";
6
- import * as i4 from "../../shared/html-attr.directive";
7
- import * as i5 from "../smart-table-filter/filter-input.directive";
8
- import * as i6 from "../smart-table-column-filter/smart-table-column-filter.component";
9
- export class SmartTableHeadComponent {
10
- constructor() {
11
- this.columnFilterState = {};
12
- this.columnSorter = true;
13
- this.component = 'thead';
14
- this._columnFilterTemplates = {};
15
- // todo
16
- // @Input() sortingIcon?: string | TemplateRef<any>;
17
- // @Input() sortingIconAscending?: string | TemplateRef<any>;
18
- // @Input() sortingIconDescending?: string | TemplateRef<any>;
19
- this.columnFilterStateChange = new EventEmitter();
20
- this.sorterStateChange = new EventEmitter();
21
- this.selectAllChange = new EventEmitter();
22
- }
23
- set columnFilterTemplates(value) {
24
- this._columnFilterTemplates = { ...value };
25
- }
26
- ;
27
- get columnFilterTemplates() {
28
- return this._columnFilterTemplates;
29
- }
30
- ;
31
- get hostClasses() {
32
- return {
33
- thead: this.component === 'thead',
34
- tfoot: this.component === 'tfoot'
35
- };
36
- }
37
- ngOnInit() {
38
- this.columns?.forEach((column, index) => {
39
- const columnKey = this.columnKey(column);
40
- this.columnFilterState[columnKey] = this.columnFilterState[columnKey] ?? '';
41
- });
42
- }
43
- tableHeaderCellProps(column) {
44
- if (typeof column === 'object' && column._props) {
45
- const { color, ...props } = { ...column._props };
46
- return props;
47
- }
48
- return {};
49
- }
50
- tableHeaderCellColor(column) {
51
- if (typeof column === 'object' && column._props) {
52
- const { color } = { ...column._props };
53
- return color;
54
- }
55
- return '';
56
- }
57
- tableHeaderCellStyles(column) {
58
- const style = { verticalAlign: 'middle', overflow: 'hidden', cursor: '' };
59
- if (this.columnSorter &&
60
- (typeof column !== 'object' ||
61
- (typeof column === 'object' && (typeof column.sorter === 'undefined' || column.sorter)))) {
62
- style.cursor = 'pointer';
63
- }
64
- if (typeof column === 'object' && column._style) {
65
- return { ...style, ...column._style };
66
- }
67
- return style;
68
- }
69
- columnLabel(column) {
70
- return typeof column === 'object' ? column.label !== undefined ? column.label : this.prettifyName(column.key) : this.prettifyName(column);
71
- }
72
- columnKey(column) {
73
- return typeof column === 'object' ? column.key : column;
74
- }
75
- getColumnSorterState(column) {
76
- const columnKey = this.columnKey(column);
77
- if (this.sorterValue?.column === columnKey) {
78
- if (this.sorterValue.state) {
79
- return this.sorterValue.state;
80
- }
81
- return 0;
82
- }
83
- return 0;
84
- }
85
- prettifyName(name) {
86
- return name
87
- .replace(/[-_.]/g, ' ')
88
- .replace(/ +/g, ' ')
89
- .replace(/([a-z0-9])([A-Z])/g, '$1 $2')
90
- .split(' ')
91
- .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
92
- .join(' ');
93
- }
94
- handleSortClick(column, i) {
95
- if (this.columnSorterEnabled(column)) {
96
- const columnKey = this.columnKey(column);
97
- this.sorterStateChange.emit({ columnKey, index: i });
98
- }
99
- }
100
- columnFilterEnabled(column) {
101
- return typeof column !== 'object' ? true : typeof column.filter === 'undefined' ? true : column.filter;
102
- }
103
- columnSorterEnabled(column) {
104
- if (!this.columnSorter) {
105
- return false;
106
- }
107
- return (typeof column !== 'object') ? true : typeof column.sorter === 'undefined' ? true : column.sorter;
108
- }
109
- handleColumnFilterValueChange($event) {
110
- const { value, type: eventType, column } = { ...$event };
111
- const columnKey = this.columnKey(column);
112
- const columnFilterValue = value;
113
- const isLazy = typeof this.columnFilter === 'object' && this.columnFilter.lazy === true;
114
- if (((isLazy && eventType === 'input') || (!isLazy && eventType === 'change')) && columnFilterValue.length !== 0) {
115
- return;
116
- }
117
- this.columnFilterState[this.columnKey(column)] = columnFilterValue;
118
- this.columnFilterStateChange.emit({ column: columnKey, value: columnFilterValue, type: eventType });
119
- }
120
- handleSelectAllChecked($event) {
121
- const selectAll = $event.target.checked;
122
- this.selectAllChange.emit(selectAll);
123
- }
124
- getColumnFilter(column) {
125
- return `columnFilter_${this.columnKey(column) ?? '_undefined'}`;
126
- }
127
- get columnFilterEvent() {
128
- return (typeof this.columnFilter === 'object' && this.columnFilter.lazy) ? 'change' : 'input';
129
- }
130
- ;
131
- }
132
- SmartTableHeadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
133
- SmartTableHeadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: SmartTableHeadComponent, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", selectable: "selectable", selectAll: "selectAll", sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<tr>\r\n <th *ngIf=\"selectable\">\r\n <input (change)=\"handleSelectAllChecked($event)\"\r\n [checked]=\"selectAll === true\"\r\n [indeterminate]=\"selectAll === 'indeterminate'\"\r\n cFormCheckInput>\r\n </th>\r\n <th\r\n (click)=\"handleSortClick(column, i)\"\r\n *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\r\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\r\n ></ng-container>\r\n </ng-template>\r\n </th>\r\n</tr>\r\n<tr *ngIf=\"columnFilter\">\r\n <th *ngIf=\"selectable\"></th>\r\n <th *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\r\n <ng-template #defaultColumnFilter let-column>\r\n <c-smart-table-column-filter\r\n (valueChange)=\"handleColumnFilterValueChange($event)\"\r\n *ngIf=\"columnFilterEnabled(column)\"\r\n [column]=\"column\"\r\n [delay]=\"300\"\r\n [onEvent]=\"columnFilterEvent\"\r\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\r\n cFilterInput\r\n sizing=\"sm\"\r\n ></c-smart-table-column-filter>\r\n </ng-template>\r\n </th>\r\n</tr>\r\n\r\n<ng-template #columnSorterIconTemplate let-columnSorterState>\r\n <ng-container [ngSwitch]=\"columnSorterState\">\r\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\r\n </span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<!--todo: sortingIconCustom Templates-->\r\n<ng-template #sortingIconTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\r\n ></polygon>\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconAscendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconDescendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.TableColorDirective, selector: "[cTableColor]", inputs: ["cTableColor"] }, { kind: "directive", type: i3.FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: ["type", "indeterminate", "valid"] }, { kind: "directive", type: i4.HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: i5.FilterInputDirective, selector: "[cFilterInput]", inputs: ["delay", "onEvent", "value"], outputs: ["valueChange"], exportAs: ["cFilterInput"] }, { kind: "component", type: i6.SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: ["column", "sizing"] }] });
134
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableHeadComponent, decorators: [{
135
- type: Component,
136
- args: [{ selector: 'c-smart-table-head', template: "<tr>\r\n <th *ngIf=\"selectable\">\r\n <input (change)=\"handleSelectAllChecked($event)\"\r\n [checked]=\"selectAll === true\"\r\n [indeterminate]=\"selectAll === 'indeterminate'\"\r\n cFormCheckInput>\r\n </th>\r\n <th\r\n (click)=\"handleSortClick(column, i)\"\r\n *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\r\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\r\n ></ng-container>\r\n </ng-template>\r\n </th>\r\n</tr>\r\n<tr *ngIf=\"columnFilter\">\r\n <th *ngIf=\"selectable\"></th>\r\n <th *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\r\n <ng-template #defaultColumnFilter let-column>\r\n <c-smart-table-column-filter\r\n (valueChange)=\"handleColumnFilterValueChange($event)\"\r\n *ngIf=\"columnFilterEnabled(column)\"\r\n [column]=\"column\"\r\n [delay]=\"300\"\r\n [onEvent]=\"columnFilterEvent\"\r\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\r\n cFilterInput\r\n sizing=\"sm\"\r\n ></c-smart-table-column-filter>\r\n </ng-template>\r\n </th>\r\n</tr>\r\n\r\n<ng-template #columnSorterIconTemplate let-columnSorterState>\r\n <ng-container [ngSwitch]=\"columnSorterState\">\r\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\r\n </span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<!--todo: sortingIconCustom Templates-->\r\n<ng-template #sortingIconTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\r\n ></polygon>\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconAscendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconDescendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"] }]
137
- }], ctorParameters: function () { return []; }, propDecorators: { columnFilter: [{
138
- type: Input
139
- }], columnFilterState: [{
140
- type: Input
141
- }], columnSorter: [{
142
- type: Input
143
- }], component: [{
144
- type: Input
145
- }], columns: [{
146
- type: Input
147
- }], selectable: [{
148
- type: Input
149
- }], selectAll: [{
150
- type: Input
151
- }], sorterValue: [{
152
- type: Input
153
- }], columnFilterTemplates: [{
154
- type: Input
155
- }], columnFilterStateChange: [{
156
- type: Output
157
- }], sorterStateChange: [{
158
- type: Output
159
- }], selectAllChange: [{
160
- type: Output
161
- }], hostClasses: [{
162
- type: HostBinding,
163
- args: ['class']
164
- }] } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFRNUYsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQztRQUdTLHNCQUFpQixHQUF1QixFQUFFLENBQUM7UUFDM0MsaUJBQVksR0FBdUIsSUFBSSxDQUFDO1FBQ3hDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFldEMsMkJBQXNCLEdBQVMsRUFBRSxDQUFDO1FBRWxDLE9BQU87UUFDUCxvREFBb0Q7UUFDcEQsNkRBQTZEO1FBQzdELDhEQUE4RDtRQUVwRCw0QkFBdUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyRSxzQkFBaUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMvRCxvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBN0J2RCxDQUFDO0lBV2pCLElBQ0kscUJBQXFCLENBQUMsS0FBSztRQUM3QixJQUFJLENBQUMsc0JBQXNCLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFBQSxDQUFDO0lBRUYsSUFBSSxxQkFBcUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7SUFDckMsQ0FBQztJQUFBLENB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QUFNLFNBQVMsR0FBSSxNQUFNLENBQUMsTUFBMkIsQ0FBQyxPQUFPLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUF3QjtRQUN0QyxPQUFPLGdCQUFnQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNoRyxDQUFDO0lBQUEsQ0FBQzs7cUhBdEpTLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLHdoQkNScEMsOHpJQWdIQTs0RkR4R2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLG9CQUFvQjswRUFRckIsWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFHRixxQkFBcUI7c0JBRHhCLEtBQUs7Z0JBZ0JJLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElDb2x1bW4sIElDb2x1bW5GaWx0ZXIsIElDb2x1bW5GaWx0ZXJWYWx1ZSwgSVNvcnRlciwgSVNvcnRlclZhbHVlIH0gZnJvbSAnLi4vc21hcnQtdGFibGUudHlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Mtc21hcnQtdGFibGUtaGVhZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRUYWJsZUhlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcclxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXJTdGF0ZTogSUNvbHVtbkZpbHRlclZhbHVlID0ge307XHJcbiAgQElucHV0KCkgY29sdW1uU29ydGVyPzogYm9vbGVhbiB8IElTb3J0ZXIgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGNvbXBvbmVudD86IHN0cmluZyA9ICd0aGVhZCc7XHJcbiAgQElucHV0KCkgY29sdW1ucz86IChJQ29sdW1uIHwgc3RyaW5nKVtdO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGFibGU/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNlbGVjdEFsbD86IGJvb2xlYW4gfCBzdHJpbmc7XHJcbiAgQElucHV0KCkgc29ydGVyVmFsdWU/OiBJU29ydGVyVmFsdWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGNvbHVtbkZpbHRlclRlbXBsYXRlcyh2YWx1ZSkge1xyXG4gICAgdGhpcy5fY29sdW1uRmlsdGVyVGVtcGxhdGVzID0geyAuLi52YWx1ZSB9O1xyXG4gIH07XHJcblxyXG4gIGdldCBjb2x1bW5GaWx0ZXJUZW1wbGF0ZXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fY29sdW1uRmlsdGVyVGVtcGxhdGVzO1xyXG4gIH07XHJcblxyXG4gIF9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXM/OiBhbnkgPSB7fTtcclxuXHJcbiAgLy8gdG9kb1xyXG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcclxuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkFzY2VuZGluZz86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb25EZXNjZW5kaW5nPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQE91dHB1dCgpIGNvbHVtbkZpbHRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBzb3J0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0QWxsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICBnZXQgaG9zdENsYXNzZXMoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB0aGVhZDogdGhpcy5jb21wb25lbnQgPT09ICd0aGVhZCcsXHJcbiAgICAgIHRmb290OiB0aGlzLmNvbXBvbmVudCA9PT0gJ3Rmb290J1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb2x1bW5zPy5mb3JFYWNoKChjb2x1bW4sIGluZGV4KSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XHJcbiAgICAgIHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA9IHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA/PyAnJztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdGFibGVIZWFkZXJDZWxsUHJvcHMoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XHJcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xyXG4gICAgICBjb25zdCB7IGNvbG9yLCAuLi5wcm9wcyB9ID0geyAuLi5jb2x1bW4uX3Byb3BzIH07XHJcbiAgICAgIHJldHVybiBwcm9wcztcclxuICAgIH1cclxuICAgIHJldHVybiB7fTtcclxuICB9XHJcblxyXG4gIHRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgaWYgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmIGNvbHVtbi5fcHJvcHMpIHtcclxuICAgICAgY29uc3QgeyBjb2xvciB9ID0geyAuLi5jb2x1bW4uX3Byb3BzIH07XHJcbiAgICAgIHJldHVybiBjb2xvcjtcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIHRhYmxlSGVhZGVyQ2VsbFN0eWxlcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHN0eWxlID0geyB2ZXJ0aWNhbEFsaWduOiAnbWlkZGxlJywgb3ZlcmZsb3c6ICdoaWRkZW4nLCBjdXJzb3I6ICcnIH07XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuY29sdW1uU29ydGVyICYmXHJcbiAgICAgICh0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JyB8fFxyXG4gICAgICAgICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiAodHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnIHx8IGNvbHVtbi5zb3J0ZXIpKSlcclxuICAgICkge1xyXG4gICAgICBzdHlsZS5jdXJzb3IgPSAncG9pbnRlcic7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmIGNvbHVtbi5fc3R5bGUpIHtcclxuICAgICAgcmV0dXJuIHsgLi4uc3R5bGUsIC4uLmNvbHVtbi5fc3R5bGUgfTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHlsZTtcclxuICB9XHJcblxyXG4gIGNvbHVtbkxhYmVsKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnID8gY29sdW1uLmxhYmVsICE9PSB1bmRlZmluZWQgPyBjb2x1bW4ubGFiZWwgOiB0aGlzLnByZXR0aWZ5TmFtZShjb2x1bW4ua2V5KSA6IHRoaXMucHJldHRpZnlOYW1lKGNvbHVtbik7XHJcbiAgfVxyXG5cclxuICBjb2x1bW5LZXkoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ua2V5IDogY29sdW1uO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XHJcbiAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xyXG4gICAgaWYgKHRoaXMuc29ydGVyVmFsdWU/LmNvbHVtbiA9PT0gY29sdW1uS2V5KSB7XHJcbiAgICAgIGlmICh0aGlzLnNvcnRlclZhbHVlLnN0YXRlKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc29ydGVyVmFsdWUuc3RhdGU7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gMDtcclxuICB9XHJcblxyXG4gIHByZXR0aWZ5TmFtZShuYW1lOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBuYW1lXHJcbiAgICAgIC5yZXBsYWNlKC9bLV8uXS9nLCAnICcpXHJcbiAgICAgIC5yZXBsYWNlKC8gKy9nLCAnICcpXHJcbiAgICAgIC5yZXBsYWNlKC8oW2EtejAtOV0pKFtBLVpdKS9nLCAnJDEgJDInKVxyXG4gICAgICAuc3BsaXQoJyAnKVxyXG4gICAgICAubWFwKCh3b3JkKSA9PiB3b3JkLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgd29yZC5zbGljZSgxKSlcclxuICAgICAgLmpvaW4oJyAnKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZVNvcnRDbGljayhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcsIGk6IG51bWJlcikge1xyXG4gICAgaWYgKHRoaXMuY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pKSB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XHJcbiAgICAgIHRoaXMuc29ydGVyU3RhdGVDaGFuZ2UuZW1pdCh7IGNvbHVtbktleSwgaW5kZXg6IGkgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHR5cGVvZiBjb2x1bW4gIT09ICdvYmplY3QnID8gdHJ1ZSA6IHR5cGVvZiBjb2x1bW4uZmlsdGVyID09PSAndW5kZWZpbmVkJyA/IHRydWUgOiBjb2x1bW4uZmlsdGVyO1xyXG4gIH1cclxuXHJcbiAgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcclxuICAgIGlmICghdGhpcy5jb2x1bW5Tb3J0ZXIpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICh0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JykgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5zb3J0ZXI7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQ6IHsgdmFsdWU6IHN0cmluZywgdHlwZT86IHN0cmluZywgY29sdW1uOiAoSUNvbHVtbiB8IHN0cmluZykgfSkge1xyXG4gICAgY29uc3QgeyB2YWx1ZSwgdHlwZTogZXZlbnRUeXBlLCBjb2x1bW4gfSA9IHsgLi4uJGV2ZW50IH07XHJcbiAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xyXG4gICAgY29uc3QgY29sdW1uRmlsdGVyVmFsdWUgPSB2YWx1ZTtcclxuICAgIGNvbnN0IGlzTGF6eSA9IHR5cGVvZiB0aGlzLmNvbHVtbkZpbHRlciA9PT0gJ29iamVjdCcgJiYgdGhpcy5jb2x1bW5GaWx0ZXIubGF6eSA9PT0gdHJ1ZTtcclxuICAgIGlmICgoKGlzTGF6eSAmJiBldmVudFR5cGUgPT09ICdpbnB1dCcpIHx8ICghaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2NoYW5nZScpKSAmJiBjb2x1bW5GaWx0ZXJWYWx1ZS5sZW5ndGggIT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZVt0aGlzLmNvbHVtbktleShjb2x1bW4pXSA9IGNvbHVtbkZpbHRlclZhbHVlO1xyXG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uOiBjb2x1bW5LZXksIHZhbHVlOiBjb2x1bW5GaWx0ZXJWYWx1ZSwgdHlwZTogZXZlbnRUeXBlIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBjb25zdCBzZWxlY3RBbGwgPSAoJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5jaGVja2VkO1xyXG4gICAgdGhpcy5zZWxlY3RBbGxDaGFuZ2UuZW1pdChzZWxlY3RBbGwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGBjb2x1bW5GaWx0ZXJfJHt0aGlzLmNvbHVtbktleShjb2x1bW4pID8/ICdfdW5kZWZpbmVkJ31gO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNvbHVtbkZpbHRlckV2ZW50KCk6ICdjaGFuZ2UnIHwgJ2lucHV0JyB7XHJcbiAgICByZXR1cm4gKHR5cGVvZiB0aGlzLmNvbHVtbkZpbHRlciA9PT0gJ29iamVjdCcgJiYgdGhpcy5jb2x1bW5GaWx0ZXIubGF6eSkgPyAnY2hhbmdlJyA6ICdpbnB1dCc7XHJcbiAgfTtcclxuXHJcblxyXG59XHJcbiIsIjx0cj5cclxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+XHJcbiAgICA8aW5wdXQgKGNoYW5nZSk9XCJoYW5kbGVTZWxlY3RBbGxDaGVja2VkKCRldmVudClcIlxyXG4gICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdEFsbCA9PT0gdHJ1ZVwiXHJcbiAgICAgICAgICAgW2luZGV0ZXJtaW5hdGVdPVwic2VsZWN0QWxsID09PSAnaW5kZXRlcm1pbmF0ZSdcIlxyXG4gICAgICAgICAgIGNGb3JtQ2hlY2tJbnB1dD5cclxuICA8L3RoPlxyXG4gIDx0aFxyXG4gICAgKGNsaWNrKT1cImhhbmRsZVNvcnRDbGljayhjb2x1bW4sIGkpXCJcclxuICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxyXG4gICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxyXG4gICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWlubGluZVwiPnt7IGNvbHVtbkxhYmVsKGNvbHVtbikgfX08L2Rpdj5cclxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtblNvcnRlckljb25UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGdldENvbHVtblNvcnRlclN0YXRlKGNvbHVtbikgfVwiXHJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC90aD5cclxuPC90cj5cclxuPHRyICpuZ0lmPVwiY29sdW1uRmlsdGVyXCI+XHJcbiAgPHRoICpuZ0lmPVwic2VsZWN0YWJsZVwiPjwvdGg+XHJcbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgIFtjSHRtbEF0dHJdPVwidGFibGVIZWFkZXJDZWxsUHJvcHMoY29sdW1uKVwiXHJcbiAgICAgIFtjVGFibGVDb2xvcl09XCJ0YWJsZUhlYWRlckNlbGxDb2xvcihjb2x1bW4pXCJcclxuICAgICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxyXG4gID5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW5GaWx0ZXJUZW1wbGF0ZXNbZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbildID8/IGRlZmF1bHRDb2x1bW5GaWx0ZXI7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGNvbHVtbiwgaGVhZGVyOiB0aGlzfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29sdW1uRmlsdGVyIGxldC1jb2x1bW4+XHJcbiAgICAgIDxjLXNtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXJcclxuICAgICAgICAodmFsdWVDaGFuZ2UpPVwiaGFuZGxlQ29sdW1uRmlsdGVyVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgKm5nSWY9XCJjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbilcIlxyXG4gICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICAgICAgICBbZGVsYXldPVwiMzAwXCJcclxuICAgICAgICBbb25FdmVudF09XCJjb2x1bW5GaWx0ZXJFdmVudFwiXHJcbiAgICAgICAgW3ZhbHVlXT1cImNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleShjb2x1bW4pXSA/PyAnJ1wiXHJcbiAgICAgICAgY0ZpbHRlcklucHV0XHJcbiAgICAgICAgc2l6aW5nPVwic21cIlxyXG4gICAgICA+PC9jLXNtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvdGg+XHJcbjwvdHI+XHJcblxyXG48bmctdGVtcGxhdGUgI2NvbHVtblNvcnRlckljb25UZW1wbGF0ZSBsZXQtY29sdW1uU29ydGVyU3RhdGU+XHJcbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sdW1uU29ydGVyU3RhdGVcIj5cclxuICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInYXNjJ1wiIGNsYXNzPVwiZmxvYXQtZW5kIG1lLTFcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uQXNjZW5kaW5nVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvc3Bhbj5cclxuICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInZGVzYydcIiBjbGFzcz1cImZsb2F0LWVuZCBtZS0xXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9zcGFuPlxyXG4gICAgPHNwYW4gKm5nU3dpdGNoRGVmYXVsdCBjbGFzcz1cIm9wYWNpdHktMjUgZmxvYXQtZW5kIG1lLTFcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvc3Bhbj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjwhLS10b2RvOiBzb3J0aW5nSWNvbkN1c3RvbSBUZW1wbGF0ZXMtLT5cclxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvblRlbXBsYXRlPlxyXG4gIDxzdmdcclxuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcclxuICAgIHJvbGU9XCJpbWdcIlxyXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcclxuICAgIHdpZHRoPVwiMThcIlxyXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgPlxyXG4gICAgPHBvbHlnb25cclxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcclxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxyXG4gICAgICBwb2ludHM9XCIzODQgNDMzLjM3MyAzODQgMTYwIDM1MiAxNjAgMzUyIDQzNC41MSAyODIuMTc3IDM2NC42ODcgMjU5LjU1IDM4Ny4zMTMgMzY3LjQzMiA0OTUuMTk2IDQ3NS4zMTMgMzg3LjMxMyA0NTIuNjg3IDM2NC42ODcgMzg0IDQzMy4zNzNcIlxyXG4gICAgPjwvcG9seWdvbj5cclxuICAgIDxwb2x5Z29uXHJcbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXHJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcclxuICAgICAgcG9pbnRzPVwiMTU5LjQzMiAxNy4zNzIgNTEuNTUgMTI1LjI1NSA3NC4xNzcgMTQ3Ljg4MiAxNDQgNzguMDU5IDE0NCAzNTIgMTc2IDM1MiAxNzYgNzkuMTk1IDI0NC42ODcgMTQ3Ljg4MiAyNjcuMzEzIDEyNS4yNTUgMTU5LjQzMiAxNy4zNzJcIlxyXG4gICAgPjwvcG9seWdvbj5cclxuICA8L3N2Zz5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZT5cclxuICA8c3ZnXHJcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXHJcbiAgICByb2xlPVwiaW1nXCJcclxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXHJcbiAgICB3aWR0aD1cIjE4XCJcclxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gID5cclxuICAgIDxwb2x5Z29uXHJcbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXHJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcclxuICAgICAgcG9pbnRzPVwiMzkwLjYyNCAxNTAuNjI1IDI1NiAxNiAxMjEuMzc2IDE1MC42MjUgMTQ0LjAwNCAxNzMuMjUyIDI0MC4wMDEgNzcuMjU0IDI0MC4wMDEgNDk1LjIzNiAyNzIuMDAxIDQ5NS4yMzYgMjcyLjAwMSA3Ny4yNTcgMzY3Ljk5NiAxNzMuMjUyIDM5MC42MjQgMTUwLjYyNVwiXHJcbiAgICA+PC9wb2x5Z29uPlxyXG4gIDwvc3ZnPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZT5cclxuICA8c3ZnXHJcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXHJcbiAgICByb2xlPVwiaW1nXCJcclxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXHJcbiAgICB3aWR0aD1cIjE4XCJcclxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gID5cclxuICAgIDxwb2x5Z29uXHJcbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXHJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcclxuICAgICAgcG9pbnRzPVwiMzY3Ljk5NyAzMzguNzUgMjcxLjk5OSA0MzQuNzQ3IDI3MS45OTkgMTcuNTAzIDIzOS45OTkgMTcuNTAzIDIzOS45OTkgNDM0Ljc0NSAxNDQuMDAzIDMzOC43NSAxMjEuMzc2IDM2MS4zNzcgMjU2IDQ5NiAzOTAuNjI0IDM2MS4zNzcgMzY3Ljk5NyAzMzguNzVcIlxyXG4gICAgPjwvcG9seWdvbj5cclxuICA8L3N2Zz5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
1
+ import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../../table/table-color.directive";
5
+ import * as i3 from "../../form/form-check/form-check-input.directive";
6
+ import * as i4 from "../../shared/html-attr.directive";
7
+ import * as i5 from "../smart-table-filter/filter-input.directive";
8
+ import * as i6 from "../smart-table-column-filter/smart-table-column-filter.component";
9
+ export class SmartTableHeadComponent {
10
+ constructor() {
11
+ this.columnFilterState = {};
12
+ this.columnSorter = true;
13
+ this.component = 'thead';
14
+ this._columnFilterTemplates = {};
15
+ // todo
16
+ // @Input() sortingIcon?: string | TemplateRef<any>;
17
+ // @Input() sortingIconAscending?: string | TemplateRef<any>;
18
+ // @Input() sortingIconDescending?: string | TemplateRef<any>;
19
+ this.columnFilterStateChange = new EventEmitter();
20
+ this.sorterStateChange = new EventEmitter();
21
+ this.selectAllChange = new EventEmitter();
22
+ }
23
+ set columnFilterTemplates(value) {
24
+ this._columnFilterTemplates = { ...value };
25
+ }
26
+ ;
27
+ get columnFilterTemplates() {
28
+ return this._columnFilterTemplates;
29
+ }
30
+ ;
31
+ get hostClasses() {
32
+ return {
33
+ thead: this.component === 'thead',
34
+ tfoot: this.component === 'tfoot'
35
+ };
36
+ }
37
+ ngOnInit() {
38
+ this.columns?.forEach((column, index) => {
39
+ const columnKey = this.columnKey(column);
40
+ this.columnFilterState[columnKey] = this.columnFilterState[columnKey] ?? '';
41
+ });
42
+ }
43
+ tableHeaderCellProps(column) {
44
+ if (typeof column === 'object' && column._props) {
45
+ const { color, ...props } = { ...column._props };
46
+ return props;
47
+ }
48
+ return {};
49
+ }
50
+ tableHeaderCellColor(column) {
51
+ if (typeof column === 'object' && column._props) {
52
+ const { color } = { ...column._props };
53
+ return color;
54
+ }
55
+ return '';
56
+ }
57
+ tableHeaderCellStyles(column) {
58
+ const style = { verticalAlign: 'middle', overflow: 'hidden', cursor: '' };
59
+ if (this.columnSorter &&
60
+ (typeof column !== 'object' ||
61
+ (typeof column === 'object' && (typeof column.sorter === 'undefined' || column.sorter)))) {
62
+ style.cursor = 'pointer';
63
+ }
64
+ if (typeof column === 'object' && column._style) {
65
+ return { ...style, ...column._style };
66
+ }
67
+ return style;
68
+ }
69
+ columnLabel(column) {
70
+ return typeof column === 'object' ? column.label !== undefined ? column.label : this.prettifyName(column.key) : this.prettifyName(column);
71
+ }
72
+ columnKey(column) {
73
+ return typeof column === 'object' ? column.key : column;
74
+ }
75
+ getColumnSorterState(column) {
76
+ const columnKey = this.columnKey(column);
77
+ if (this.sorterValue?.column === columnKey) {
78
+ if (this.sorterValue.state) {
79
+ return this.sorterValue.state;
80
+ }
81
+ return 0;
82
+ }
83
+ return 0;
84
+ }
85
+ prettifyName(name) {
86
+ return name
87
+ .replace(/[-_.]/g, ' ')
88
+ .replace(/ +/g, ' ')
89
+ .replace(/([a-z0-9])([A-Z])/g, '$1 $2')
90
+ .split(' ')
91
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
92
+ .join(' ');
93
+ }
94
+ handleSortClick(column, i) {
95
+ if (this.columnSorterEnabled(column)) {
96
+ const columnKey = this.columnKey(column);
97
+ this.sorterStateChange.emit({ columnKey, index: i });
98
+ }
99
+ }
100
+ columnFilterEnabled(column) {
101
+ return typeof column !== 'object' ? true : typeof column.filter === 'undefined' ? true : column.filter;
102
+ }
103
+ columnSorterEnabled(column) {
104
+ if (!this.columnSorter) {
105
+ return false;
106
+ }
107
+ return (typeof column !== 'object') ? true : typeof column.sorter === 'undefined' ? true : column.sorter;
108
+ }
109
+ handleColumnFilterValueChange($event) {
110
+ const { value, type: eventType, column } = { ...$event };
111
+ const columnKey = this.columnKey(column);
112
+ const columnFilterValue = value;
113
+ const isLazy = typeof this.columnFilter === 'object' && this.columnFilter.lazy === true;
114
+ if (((isLazy && eventType === 'input') || (!isLazy && eventType === 'change')) && columnFilterValue.length !== 0) {
115
+ return;
116
+ }
117
+ this.columnFilterState[this.columnKey(column)] = columnFilterValue;
118
+ this.columnFilterStateChange.emit({ column: columnKey, value: columnFilterValue, type: eventType });
119
+ }
120
+ handleSelectAllChecked($event) {
121
+ const selectAll = $event.target.checked;
122
+ this.selectAllChange.emit(selectAll);
123
+ }
124
+ getColumnFilter(column) {
125
+ return `columnFilter_${this.columnKey(column) ?? '_undefined'}`;
126
+ }
127
+ get columnFilterEvent() {
128
+ return (typeof this.columnFilter === 'object' && this.columnFilter.lazy) ? 'change' : 'input';
129
+ }
130
+ ;
131
+ }
132
+ SmartTableHeadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
133
+ SmartTableHeadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: SmartTableHeadComponent, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", selectable: "selectable", selectAll: "selectAll", sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<tr>\n <th *ngIf=\"selectable\">\n <input (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectAll === true\"\n [indeterminate]=\"selectAll === 'indeterminate'\"\n cFormCheckInput>\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n ></ng-container>\n </ng-template>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\n <ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n ></c-smart-table-column-filter>\n </ng-template>\n </th>\n</tr>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.TableColorDirective, selector: "[cTableColor]", inputs: ["cTableColor"] }, { kind: "directive", type: i3.FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: ["type", "indeterminate", "valid"] }, { kind: "directive", type: i4.HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: i5.FilterInputDirective, selector: "[cFilterInput]", inputs: ["delay", "onEvent", "value"], outputs: ["valueChange"], exportAs: ["cFilterInput"] }, { kind: "component", type: i6.SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: ["column", "sizing"] }] });
134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableHeadComponent, decorators: [{
135
+ type: Component,
136
+ args: [{ selector: 'c-smart-table-head', template: "<tr>\n <th *ngIf=\"selectable\">\n <input (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectAll === true\"\n [indeterminate]=\"selectAll === 'indeterminate'\"\n cFormCheckInput>\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n ></ng-container>\n </ng-template>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\n <ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n ></c-smart-table-column-filter>\n </ng-template>\n </th>\n</tr>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"] }]
137
+ }], ctorParameters: function () { return []; }, propDecorators: { columnFilter: [{
138
+ type: Input
139
+ }], columnFilterState: [{
140
+ type: Input
141
+ }], columnSorter: [{
142
+ type: Input
143
+ }], component: [{
144
+ type: Input
145
+ }], columns: [{
146
+ type: Input
147
+ }], selectable: [{
148
+ type: Input
149
+ }], selectAll: [{
150
+ type: Input
151
+ }], sorterValue: [{
152
+ type: Input
153
+ }], columnFilterTemplates: [{
154
+ type: Input
155
+ }], columnFilterStateChange: [{
156
+ type: Output
157
+ }], sorterStateChange: [{
158
+ type: Output
159
+ }], selectAllChange: [{
160
+ type: Output
161
+ }], hostClasses: [{
162
+ type: HostBinding,
163
+ args: ['class']
164
+ }] } });
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFRNUYsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQztRQUdTLHNCQUFpQixHQUF1QixFQUFFLENBQUM7UUFDM0MsaUJBQVksR0FBdUIsSUFBSSxDQUFDO1FBQ3hDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFldEMsMkJBQXNCLEdBQVMsRUFBRSxDQUFDO1FBRWxDLE9BQU87UUFDUCxvREFBb0Q7UUFDcEQsNkRBQTZEO1FBQzdELDhEQUE4RDtRQUVwRCw0QkFBdUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyRSxzQkFBaUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMvRCxvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBN0J2RCxDQUFDO0lBV2pCLElBQ0kscUJBQXFCLENBQUMsS0FBSztRQUM3QixJQUFJLENBQUMsc0JBQXNCLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFBQSxDQUFDO0lBRUYsSUFBSSxxQkFBcUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7SUFDckMsQ0FBQztJQUFBLENB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QUFNLFNBQVMsR0FBSSxNQUFNLENBQUMsTUFBMkIsQ0FBQyxPQUFPLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUF3QjtRQUN0QyxPQUFPLGdCQUFnQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNoRyxDQUFDO0lBQUEsQ0FBQzs7cUhBdEpTLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLHdoQkNScEMsOGxJQWdIQTs0RkR4R2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLG9CQUFvQjswRUFRckIsWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFHRixxQkFBcUI7c0JBRHhCLEtBQUs7Z0JBZ0JJLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQ29sdW1uLCBJQ29sdW1uRmlsdGVyLCBJQ29sdW1uRmlsdGVyVmFsdWUsIElTb3J0ZXIsIElTb3J0ZXJWYWx1ZSB9IGZyb20gJy4uL3NtYXJ0LXRhYmxlLnR5cGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXNtYXJ0LXRhYmxlLWhlYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFRhYmxlSGVhZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcbiAgQElucHV0KCkgY29sdW1uRmlsdGVyU3RhdGU6IElDb2x1bW5GaWx0ZXJWYWx1ZSA9IHt9O1xuICBASW5wdXQoKSBjb2x1bW5Tb3J0ZXI/OiBib29sZWFuIHwgSVNvcnRlciA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbXBvbmVudD86IHN0cmluZyA9ICd0aGVhZCc7XG4gIEBJbnB1dCgpIGNvbHVtbnM/OiAoSUNvbHVtbiB8IHN0cmluZylbXTtcbiAgQElucHV0KCkgc2VsZWN0YWJsZT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNlbGVjdEFsbD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIEBJbnB1dCgpIHNvcnRlclZhbHVlPzogSVNvcnRlclZhbHVlO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBjb2x1bW5GaWx0ZXJUZW1wbGF0ZXModmFsdWUpIHtcbiAgICB0aGlzLl9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXMgPSB7IC4uLnZhbHVlIH07XG4gIH07XG5cbiAgZ2V0IGNvbHVtbkZpbHRlclRlbXBsYXRlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1uRmlsdGVyVGVtcGxhdGVzO1xuICB9O1xuXG4gIF9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXM/OiBhbnkgPSB7fTtcblxuICAvLyB0b2RvXG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb25Bc2NlbmRpbmc/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkRlc2NlbmRpbmc/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBPdXRwdXQoKSBjb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIHNvcnRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgc2VsZWN0QWxsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRoZWFkOiB0aGlzLmNvbXBvbmVudCA9PT0gJ3RoZWFkJyxcbiAgICAgIHRmb290OiB0aGlzLmNvbXBvbmVudCA9PT0gJ3Rmb290J1xuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbHVtbnM/LmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleV0gPSB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleV0gPz8gJyc7XG4gICAgfSk7XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxQcm9wcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xuICAgICAgY29uc3QgeyBjb2xvciwgLi4ucHJvcHMgfSA9IHsgLi4uY29sdW1uLl9wcm9wcyB9O1xuICAgICAgcmV0dXJuIHByb3BzO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxDb2xvcihjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xuICAgICAgY29uc3QgeyBjb2xvciB9ID0geyAuLi5jb2x1bW4uX3Byb3BzIH07XG4gICAgICByZXR1cm4gY29sb3I7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHRhYmxlSGVhZGVyQ2VsbFN0eWxlcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBzdHlsZSA9IHsgdmVydGljYWxBbGlnbjogJ21pZGRsZScsIG92ZXJmbG93OiAnaGlkZGVuJywgY3Vyc29yOiAnJyB9O1xuICAgIGlmIChcbiAgICAgIHRoaXMuY29sdW1uU29ydGVyICYmXG4gICAgICAodHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgfHxcbiAgICAgICAgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmICh0eXBlb2YgY29sdW1uLnNvcnRlciA9PT0gJ3VuZGVmaW5lZCcgfHwgY29sdW1uLnNvcnRlcikpKVxuICAgICkge1xuICAgICAgc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiBjb2x1bW4uX3N0eWxlKSB7XG4gICAgICByZXR1cm4geyAuLi5zdHlsZSwgLi4uY29sdW1uLl9zdHlsZSB9O1xuICAgIH1cbiAgICByZXR1cm4gc3R5bGU7XG4gIH1cblxuICBjb2x1bW5MYWJlbChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ubGFiZWwgIT09IHVuZGVmaW5lZCA/IGNvbHVtbi5sYWJlbCA6IHRoaXMucHJldHRpZnlOYW1lKGNvbHVtbi5rZXkpIDogdGhpcy5wcmV0dGlmeU5hbWUoY29sdW1uKTtcbiAgfVxuXG4gIGNvbHVtbktleShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ua2V5IDogY29sdW1uO1xuICB9XG5cbiAgZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICBpZiAodGhpcy5zb3J0ZXJWYWx1ZT8uY29sdW1uID09PSBjb2x1bW5LZXkpIHtcbiAgICAgIGlmICh0aGlzLnNvcnRlclZhbHVlLnN0YXRlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNvcnRlclZhbHVlLnN0YXRlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcHJldHRpZnlOYW1lKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBuYW1lXG4gICAgICAucmVwbGFjZSgvWy1fLl0vZywgJyAnKVxuICAgICAgLnJlcGxhY2UoLyArL2csICcgJylcbiAgICAgIC5yZXBsYWNlKC8oW2EtejAtOV0pKFtBLVpdKS9nLCAnJDEgJDInKVxuICAgICAgLnNwbGl0KCcgJylcbiAgICAgIC5tYXAoKHdvcmQpID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGhhbmRsZVNvcnRDbGljayhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcsIGk6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmNvbHVtblNvcnRlckVuYWJsZWQoY29sdW1uKSkge1xuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICAgIHRoaXMuc29ydGVyU3RhdGVDaGFuZ2UuZW1pdCh7IGNvbHVtbktleSwgaW5kZXg6IGkgfSk7XG4gICAgfVxuICB9XG5cbiAgY29sdW1uRmlsdGVyRW5hYmxlZChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5maWx0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5maWx0ZXI7XG4gIH1cblxuICBjb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jb2x1bW5Tb3J0ZXIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICh0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JykgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5zb3J0ZXI7XG4gIH1cblxuICBoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQ6IHsgdmFsdWU6IHN0cmluZywgdHlwZT86IHN0cmluZywgY29sdW1uOiAoSUNvbHVtbiB8IHN0cmluZykgfSkge1xuICAgIGNvbnN0IHsgdmFsdWUsIHR5cGU6IGV2ZW50VHlwZSwgY29sdW1uIH0gPSB7IC4uLiRldmVudCB9O1xuICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgY29uc3QgY29sdW1uRmlsdGVyVmFsdWUgPSB2YWx1ZTtcbiAgICBjb25zdCBpc0xhenkgPSB0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkgPT09IHRydWU7XG4gICAgaWYgKCgoaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2lucHV0JykgfHwgKCFpc0xhenkgJiYgZXZlbnRUeXBlID09PSAnY2hhbmdlJykpICYmIGNvbHVtbkZpbHRlclZhbHVlLmxlbmd0aCAhPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW3RoaXMuY29sdW1uS2V5KGNvbHVtbildID0gY29sdW1uRmlsdGVyVmFsdWU7XG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uOiBjb2x1bW5LZXksIHZhbHVlOiBjb2x1bW5GaWx0ZXJWYWx1ZSwgdHlwZTogZXZlbnRUeXBlIH0pO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3Qgc2VsZWN0QWxsID0gKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZDtcbiAgICB0aGlzLnNlbGVjdEFsbENoYW5nZS5lbWl0KHNlbGVjdEFsbCk7XG4gIH1cblxuICBnZXRDb2x1bW5GaWx0ZXIoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIGBjb2x1bW5GaWx0ZXJfJHt0aGlzLmNvbHVtbktleShjb2x1bW4pID8/ICdfdW5kZWZpbmVkJ31gO1xuICB9XG5cbiAgZ2V0IGNvbHVtbkZpbHRlckV2ZW50KCk6ICdjaGFuZ2UnIHwgJ2lucHV0JyB7XG4gICAgcmV0dXJuICh0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkpID8gJ2NoYW5nZScgOiAnaW5wdXQnO1xuICB9O1xuXG5cbn1cbiIsIjx0cj5cbiAgPHRoICpuZ0lmPVwic2VsZWN0YWJsZVwiPlxuICAgIDxpbnB1dCAoY2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50KVwiXG4gICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdEFsbCA9PT0gdHJ1ZVwiXG4gICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cInNlbGVjdEFsbCA9PT0gJ2luZGV0ZXJtaW5hdGUnXCJcbiAgICAgICAgICAgY0Zvcm1DaGVja0lucHV0PlxuICA8L3RoPlxuICA8dGhcbiAgICAoY2xpY2spPVwiaGFuZGxlU29ydENsaWNrKGNvbHVtbiwgaSlcIlxuICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgW2NIdG1sQXR0cl09XCJ0YWJsZUhlYWRlckNlbGxQcm9wcyhjb2x1bW4pXCJcbiAgICBbY1RhYmxlQ29sb3JdPVwidGFibGVIZWFkZXJDZWxsQ29sb3IoY29sdW1uKVwiXG4gICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImQtaW5saW5lXCI+e3sgY29sdW1uTGFiZWwoY29sdW1uKSB9fTwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uU29ydGVySWNvblRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uKSB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L3RoPlxuPC90cj5cbjx0ciAqbmdJZj1cImNvbHVtbkZpbHRlclwiPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkZpbHRlclRlbXBsYXRlc1tnZXRDb2x1bW5GaWx0ZXIoY29sdW1uKV0gPz8gZGVmYXVsdENvbHVtbkZpbHRlcjsgY29udGV4dDogeyRpbXBsaWNpdDogY29sdW1uLCBoZWFkZXI6IHRoaXN9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29sdW1uRmlsdGVyIGxldC1jb2x1bW4+XG4gICAgICA8Yy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyXG4gICAgICAgICh2YWx1ZUNoYW5nZSk9XCJoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKm5nSWY9XCJjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbilcIlxuICAgICAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgICAgIFtkZWxheV09XCIzMDBcIlxuICAgICAgICBbb25FdmVudF09XCJjb2x1bW5GaWx0ZXJFdmVudFwiXG4gICAgICAgIFt2YWx1ZV09XCJjb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXkoY29sdW1uKV0gPz8gJydcIlxuICAgICAgICBjRmlsdGVySW5wdXRcbiAgICAgICAgc2l6aW5nPVwic21cIlxuICAgICAgPjwvYy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvdGg+XG48L3RyPlxuXG48bmctdGVtcGxhdGUgI2NvbHVtblNvcnRlckljb25UZW1wbGF0ZSBsZXQtY29sdW1uU29ydGVyU3RhdGU+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtblNvcnRlclN0YXRlXCI+XG4gICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidhc2MnXCIgY2xhc3M9XCJmbG9hdC1lbmQgbWUtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uQXNjZW5kaW5nVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidkZXNjJ1wiIGNsYXNzPVwiZmxvYXQtZW5kIG1lLTFcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwib3BhY2l0eS0yNSBmbG9hdC1lbmQgbWUtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLXRvZG86IHNvcnRpbmdJY29uQ3VzdG9tIFRlbXBsYXRlcy0tPlxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvblRlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM4NCA0MzMuMzczIDM4NCAxNjAgMzUyIDE2MCAzNTIgNDM0LjUxIDI4Mi4xNzcgMzY0LjY4NyAyNTkuNTUgMzg3LjMxMyAzNjcuNDMyIDQ5NS4xOTYgNDc1LjMxMyAzODcuMzEzIDQ1Mi42ODcgMzY0LjY4NyAzODQgNDMzLjM3M1wiXG4gICAgPjwvcG9seWdvbj5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjE1OS40MzIgMTcuMzcyIDUxLjU1IDEyNS4yNTUgNzQuMTc3IDE0Ny44ODIgMTQ0IDc4LjA1OSAxNDQgMzUyIDE3NiAzNTIgMTc2IDc5LjE5NSAyNDQuNjg3IDE0Ny44ODIgMjY3LjMxMyAxMjUuMjU1IDE1OS40MzIgMTcuMzcyXCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzOTAuNjI0IDE1MC42MjUgMjU2IDE2IDEyMS4zNzYgMTUwLjYyNSAxNDQuMDA0IDE3My4yNTIgMjQwLjAwMSA3Ny4yNTQgMjQwLjAwMSA0OTUuMjM2IDI3Mi4wMDEgNDk1LjIzNiAyNzIuMDAxIDc3LjI1NyAzNjcuOTk2IDE3My4yNTIgMzkwLjYyNCAxNTAuNjI1XCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25EZXNjZW5kaW5nVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzY3Ljk5NyAzMzguNzUgMjcxLjk5OSA0MzQuNzQ3IDI3MS45OTkgMTcuNTAzIDIzOS45OTkgMTcuNTAzIDIzOS45OTkgNDM0Ljc0NSAxNDQuMDAzIDMzOC43NSAxMjEuMzc2IDM2MS4zNzcgMjU2IDQ5NiAzOTAuNjI0IDM2MS4zNzcgMzY3Ljk5NyAzMzguNzVcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,49 +1,49 @@
1
- var _SmartTableItemsPerPageSelectorComponent_itemsPerPage;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "../../form/form-label/form-label.directive";
7
- import * as i3 from "../../form/form-select/form-select.directive";
8
- import * as i4 from "@angular/forms";
9
- export class SmartTableItemsPerPageSelectorComponent {
10
- constructor() {
11
- _SmartTableItemsPerPageSelectorComponent_itemsPerPage.set(this, 5);
12
- this.itemsPerPageLabel = 'Items per page:';
13
- this.itemsPerPageOptions = [5, 10, 20, 50];
14
- this.itemsPerPageChange = new EventEmitter();
15
- }
16
- set itemsPerPage(value) {
17
- if (__classPrivateFieldGet(this, _SmartTableItemsPerPageSelectorComponent_itemsPerPage, "f") != value) {
18
- __classPrivateFieldSet(this, _SmartTableItemsPerPageSelectorComponent_itemsPerPage, value, "f");
19
- this.itemsPerPageChange.emit(value);
20
- }
21
- }
22
- get itemsPerPage() {
23
- return __classPrivateFieldGet(this, _SmartTableItemsPerPageSelectorComponent_itemsPerPage, "f");
24
- }
25
- get hostClasses() {
26
- return {
27
- row: true
28
- };
29
- }
30
- }
31
- _SmartTableItemsPerPageSelectorComponent_itemsPerPage = new WeakMap();
32
- SmartTableItemsPerPageSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
- SmartTableItemsPerPageSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: SmartTableItemsPerPageSelectorComponent, selector: "c-smart-table-items-per-page-selector", inputs: { itemsPerPage: "itemsPerPage", itemsPerPageLabel: "itemsPerPageLabel", itemsPerPageOptions: "itemsPerPageOptions" }, outputs: { itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\r\n<div class=\"col-auto\">\r\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\r\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\r\n </select>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "directive", type: i3.FormSelectDirective, selector: "select[cSelect]", inputs: ["sizing", "valid"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, decorators: [{
35
- type: Component,
36
- args: [{ selector: 'c-smart-table-items-per-page-selector', template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\r\n<div class=\"col-auto\">\r\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\r\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\r\n </select>\r\n</div>\r\n" }]
37
- }], ctorParameters: function () { return []; }, propDecorators: { itemsPerPage: [{
38
- type: Input
39
- }], itemsPerPageLabel: [{
40
- type: Input
41
- }], itemsPerPageOptions: [{
42
- type: Input
43
- }], itemsPerPageChange: [{
44
- type: Output
45
- }], hostClasses: [{
46
- type: HostBinding,
47
- args: ['class']
48
- }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zbWFydC10YWJsZS9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQU9wRixNQUFNLE9BQU8sdUNBQXVDO0lBRWxEO1FBWUEsZ0VBQWdCLENBQUMsRUFBQztRQUVULHNCQUFpQixHQUFXLGlCQUFpQixDQUFDO1FBQzlDLHdCQUFtQixHQUFhLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdEMsdUJBQWtCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7SUFoQnpFLENBQUM7SUFFakIsSUFDSSxZQUFZLENBQUMsS0FBYTtRQUM1QixJQUFJLHVCQUFBLElBQUksNkRBQWMsSUFBSSxLQUFLLEVBQUU7WUFDL0IsdUJBQUEsSUFBSSx5REFBaUIsS0FBSyxNQUFBLENBQUM7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFDRCxJQUFJLFlBQVk7UUFDZCxPQUFPLHVCQUFBLElBQUksNkRBQWMsQ0FBQztJQUM1QixDQUFDO0lBT0QsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJO1NBQ1YsQ0FBQztJQUNKLENBQUM7OztxSUF6QlUsdUNBQXVDO3lIQUF2Qyx1Q0FBdUMseVRDUHBELHlVQU1BOzRGRENhLHVDQUF1QztrQkFMbkQsU0FBUzsrQkFDRSx1Q0FBdUM7MEVBUzdDLFlBQVk7c0JBRGYsS0FBSztnQkFZRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNhLGtCQUFrQjtzQkFBcEMsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjLXNtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0VGFibGVJdGVtc1BlclBhZ2VTZWxlY3RvckNvbXBvbmVudCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGl0ZW1zUGVyUGFnZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy4jaXRlbXNQZXJQYWdlICE9IHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuI2l0ZW1zUGVyUGFnZSA9IHZhbHVlO1xyXG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZUNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0IGl0ZW1zUGVyUGFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLiNpdGVtc1BlclBhZ2U7XHJcbiAgfVxyXG4gICNpdGVtc1BlclBhZ2UgPSA1O1xyXG5cclxuICBASW5wdXQoKSBpdGVtc1BlclBhZ2VMYWJlbDogc3RyaW5nID0gJ0l0ZW1zIHBlciBwYWdlOic7XHJcbiAgQElucHV0KCkgaXRlbXNQZXJQYWdlT3B0aW9uczogbnVtYmVyW10gPSBbNSwgMTAsIDIwLCA1MF07XHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGl0ZW1zUGVyUGFnZUNoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXHJcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IGFueSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICByb3c6IHRydWVcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiIsIjxsYWJlbCBjTGFiZWw9XCJjb2xcIiBjbGFzcz1cImNvbC1zbS1hdXRvXCI+e3tpdGVtc1BlclBhZ2VMYWJlbH19PC9sYWJlbD5cclxuPGRpdiBjbGFzcz1cImNvbC1hdXRvXCI+XHJcbiAgPHNlbGVjdCBbKG5nTW9kZWwpXT1cIml0ZW1zUGVyUGFnZVwiIGNTZWxlY3QgbmFtZT1cIml0ZW1zUGVyUGFnZVNlbGVjdG9yXCI+XHJcbiAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgaXRlbXNQZXJQYWdlT3B0aW9uczsgbGV0IGkgPSBpbmRleFwiIFtuZ1ZhbHVlXT1cIm9wdGlvblwiPnt7b3B0aW9ufX08L29wdGlvbj5cclxuICA8L3NlbGVjdD5cclxuPC9kaXY+XHJcbiJdfQ==
1
+ var _SmartTableItemsPerPageSelectorComponent_itemsPerPage;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../../form/form-label/form-label.directive";
7
+ import * as i3 from "../../form/form-select/form-select.directive";
8
+ import * as i4 from "@angular/forms";
9
+ export class SmartTableItemsPerPageSelectorComponent {
10
+ constructor() {
11
+ _SmartTableItemsPerPageSelectorComponent_itemsPerPage.set(this, 5);
12
+ this.itemsPerPageLabel = 'Items per page:';
13
+ this.itemsPerPageOptions = [5, 10, 20, 50];
14
+ this.itemsPerPageChange = new EventEmitter();
15
+ }
16
+ set itemsPerPage(value) {
17
+ if (__classPrivateFieldGet(this, _SmartTableItemsPerPageSelectorComponent_itemsPerPage, "f") != value) {
18
+ __classPrivateFieldSet(this, _SmartTableItemsPerPageSelectorComponent_itemsPerPage, value, "f");
19
+ this.itemsPerPageChange.emit(value);
20
+ }
21
+ }
22
+ get itemsPerPage() {
23
+ return __classPrivateFieldGet(this, _SmartTableItemsPerPageSelectorComponent_itemsPerPage, "f");
24
+ }
25
+ get hostClasses() {
26
+ return {
27
+ row: true
28
+ };
29
+ }
30
+ }
31
+ _SmartTableItemsPerPageSelectorComponent_itemsPerPage = new WeakMap();
32
+ SmartTableItemsPerPageSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
+ SmartTableItemsPerPageSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: SmartTableItemsPerPageSelectorComponent, selector: "c-smart-table-items-per-page-selector", inputs: { itemsPerPage: "itemsPerPage", itemsPerPageLabel: "itemsPerPageLabel", itemsPerPageOptions: "itemsPerPageOptions" }, outputs: { itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\n </select>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "directive", type: i3.FormSelectDirective, selector: "select[cSelect]", inputs: ["sizing", "valid"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, decorators: [{
35
+ type: Component,
36
+ args: [{ selector: 'c-smart-table-items-per-page-selector', template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\n </select>\n</div>\n" }]
37
+ }], ctorParameters: function () { return []; }, propDecorators: { itemsPerPage: [{
38
+ type: Input
39
+ }], itemsPerPageLabel: [{
40
+ type: Input
41
+ }], itemsPerPageOptions: [{
42
+ type: Input
43
+ }], itemsPerPageChange: [{
44
+ type: Output
45
+ }], hostClasses: [{
46
+ type: HostBinding,
47
+ args: ['class']
48
+ }] } });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zbWFydC10YWJsZS9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQU9wRixNQUFNLE9BQU8sdUNBQXVDO0lBRWxEO1FBWUEsZ0VBQWdCLENBQUMsRUFBQztRQUVULHNCQUFpQixHQUFXLGlCQUFpQixDQUFDO1FBQzlDLHdCQUFtQixHQUFhLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdEMsdUJBQWtCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7SUFoQnpFLENBQUM7SUFFakIsSUFDSSxZQUFZLENBQUMsS0FBYTtRQUM1QixJQUFJLHVCQUFBLElBQUksNkRBQWMsSUFBSSxLQUFLLEVBQUU7WUFDL0IsdUJBQUEsSUFBSSx5REFBaUIsS0FBSyxNQUFBLENBQUM7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFDRCxJQUFJLFlBQVk7UUFDZCxPQUFPLHVCQUFBLElBQUksNkRBQWMsQ0FBQztJQUM1QixDQUFDO0lBT0QsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJO1NBQ1YsQ0FBQztJQUNKLENBQUM7OztxSUF6QlUsdUNBQXVDO3lIQUF2Qyx1Q0FBdUMseVRDUHBELDZUQU1BOzRGRENhLHVDQUF1QztrQkFMbkQsU0FBUzsrQkFDRSx1Q0FBdUM7MEVBUzdDLFlBQVk7c0JBRGYsS0FBSztnQkFZRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNhLGtCQUFrQjtzQkFBcEMsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXNtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFRhYmxlSXRlbXNQZXJQYWdlU2VsZWN0b3JDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgQElucHV0KClcbiAgc2V0IGl0ZW1zUGVyUGFnZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuI2l0ZW1zUGVyUGFnZSAhPSB2YWx1ZSkge1xuICAgICAgdGhpcy4jaXRlbXNQZXJQYWdlID0gdmFsdWU7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgZ2V0IGl0ZW1zUGVyUGFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy4jaXRlbXNQZXJQYWdlO1xuICB9XG4gICNpdGVtc1BlclBhZ2UgPSA1O1xuXG4gIEBJbnB1dCgpIGl0ZW1zUGVyUGFnZUxhYmVsOiBzdHJpbmcgPSAnSXRlbXMgcGVyIHBhZ2U6JztcbiAgQElucHV0KCkgaXRlbXNQZXJQYWdlT3B0aW9uczogbnVtYmVyW10gPSBbNSwgMTAsIDIwLCA1MF07XG4gIEBPdXRwdXQoKSByZWFkb25seSBpdGVtc1BlclBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICByb3c6IHRydWVcbiAgICB9O1xuICB9XG59XG4iLCI8bGFiZWwgY0xhYmVsPVwiY29sXCIgY2xhc3M9XCJjb2wtc20tYXV0b1wiPnt7aXRlbXNQZXJQYWdlTGFiZWx9fTwvbGFiZWw+XG48ZGl2IGNsYXNzPVwiY29sLWF1dG9cIj5cbiAgPHNlbGVjdCBbKG5nTW9kZWwpXT1cIml0ZW1zUGVyUGFnZVwiIGNTZWxlY3QgbmFtZT1cIml0ZW1zUGVyUGFnZVNlbGVjdG9yXCI+XG4gICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGl0ZW1zUGVyUGFnZU9wdGlvbnM7IGxldCBpID0gaW5kZXhcIiBbbmdWYWx1ZV09XCJvcHRpb25cIj57e29wdGlvbn19PC9vcHRpb24+XG4gIDwvc2VsZWN0PlxuPC9kaXY+XG4iXX0=