@malva-ui/core 0.1.12 → 0.1.14

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 (1619) hide show
  1. package/AGENTS.md +4 -1
  2. package/LICENSE +21 -0
  3. package/README.md +69 -3
  4. package/docs/ai/avatar.md +2 -0
  5. package/docs/ai/breadcrumb.md +67 -7
  6. package/docs/ai/button.md +74 -19
  7. package/docs/ai/card.md +8 -6
  8. package/docs/ai/chat.md +59 -45
  9. package/docs/ai/checkbox.md +12 -0
  10. package/docs/ai/combobox.md +18 -2
  11. package/docs/ai/copy-to-clipboard.md +1 -1
  12. package/docs/ai/core.md +15 -0
  13. package/docs/ai/data-table.md +89 -54
  14. package/docs/ai/dialog.md +76 -67
  15. package/docs/ai/drawer.md +15 -12
  16. package/docs/ai/dropdown.md +24 -19
  17. package/docs/ai/empty-state.md +3 -3
  18. package/docs/ai/filter.md +24 -5
  19. package/docs/ai/form-utils.md +160 -5
  20. package/docs/ai/icon-toggle.md +160 -0
  21. package/docs/ai/input.md +30 -0
  22. package/docs/ai/layout.md +23 -0
  23. package/docs/ai/list.md +10 -6
  24. package/docs/ai/menu.md +75 -1
  25. package/docs/ai/page.md +220 -60
  26. package/docs/ai/radio.md +9 -0
  27. package/docs/ai/scrollbar.md +30 -8
  28. package/docs/ai/segmented.md +35 -35
  29. package/docs/ai/select.md +30 -5
  30. package/docs/ai/sidebar.md +45 -27
  31. package/docs/ai/switch.md +114 -19
  32. package/docs/ai/table.md +69 -0
  33. package/docs/ai/tabs.md +2 -1
  34. package/docs/ai/tile.md +311 -85
  35. package/docs/ai/timeline.md +63 -39
  36. package/docs/ai/tokenizer.md +21 -5
  37. package/docs/ai/tooltip.md +5 -5
  38. package/docs/ai/view-variant.md +75 -0
  39. package/fesm2022/malva-ui-core-accordion.mjs +167 -0
  40. package/fesm2022/malva-ui-core-accordion.mjs.map +1 -0
  41. package/fesm2022/malva-ui-core-action-bar.mjs +111 -0
  42. package/fesm2022/malva-ui-core-action-bar.mjs.map +1 -0
  43. package/fesm2022/malva-ui-core-alert.mjs +173 -0
  44. package/fesm2022/malva-ui-core-alert.mjs.map +1 -0
  45. package/fesm2022/malva-ui-core-autocomplete.mjs +775 -0
  46. package/fesm2022/malva-ui-core-autocomplete.mjs.map +1 -0
  47. package/fesm2022/malva-ui-core-avatar-group.mjs +224 -0
  48. package/fesm2022/malva-ui-core-avatar-group.mjs.map +1 -0
  49. package/fesm2022/malva-ui-core-avatar.mjs +247 -0
  50. package/fesm2022/malva-ui-core-avatar.mjs.map +1 -0
  51. package/fesm2022/malva-ui-core-badge.mjs +122 -0
  52. package/fesm2022/malva-ui-core-badge.mjs.map +1 -0
  53. package/fesm2022/malva-ui-core-bottom-nav.mjs +161 -0
  54. package/fesm2022/malva-ui-core-bottom-nav.mjs.map +1 -0
  55. package/fesm2022/malva-ui-core-breadcrumb.mjs +494 -0
  56. package/fesm2022/malva-ui-core-breadcrumb.mjs.map +1 -0
  57. package/fesm2022/malva-ui-core-button.mjs +406 -0
  58. package/fesm2022/malva-ui-core-button.mjs.map +1 -0
  59. package/fesm2022/malva-ui-core-calendar.mjs +938 -0
  60. package/fesm2022/malva-ui-core-calendar.mjs.map +1 -0
  61. package/fesm2022/malva-ui-core-card.mjs +164 -0
  62. package/fesm2022/malva-ui-core-card.mjs.map +1 -0
  63. package/fesm2022/malva-ui-core-chat.mjs +825 -0
  64. package/fesm2022/malva-ui-core-chat.mjs.map +1 -0
  65. package/fesm2022/malva-ui-core-checkbox.mjs +272 -0
  66. package/fesm2022/malva-ui-core-checkbox.mjs.map +1 -0
  67. package/fesm2022/malva-ui-core-chip.mjs +176 -0
  68. package/fesm2022/malva-ui-core-chip.mjs.map +1 -0
  69. package/fesm2022/malva-ui-core-color-picker.mjs +1204 -0
  70. package/fesm2022/malva-ui-core-color-picker.mjs.map +1 -0
  71. package/fesm2022/malva-ui-core-combobox.mjs +945 -0
  72. package/fesm2022/malva-ui-core-combobox.mjs.map +1 -0
  73. package/fesm2022/malva-ui-core-copy-to-clipboard.mjs +255 -0
  74. package/fesm2022/malva-ui-core-copy-to-clipboard.mjs.map +1 -0
  75. package/fesm2022/malva-ui-core-data-table.mjs +2696 -0
  76. package/fesm2022/malva-ui-core-data-table.mjs.map +1 -0
  77. package/fesm2022/malva-ui-core-date-range-picker.mjs +276 -0
  78. package/fesm2022/malva-ui-core-date-range-picker.mjs.map +1 -0
  79. package/fesm2022/malva-ui-core-day-picker.mjs +131 -0
  80. package/fesm2022/malva-ui-core-day-picker.mjs.map +1 -0
  81. package/fesm2022/malva-ui-core-dialog-routable-dialog-CvjXMtlD.mjs +94 -0
  82. package/fesm2022/malva-ui-core-dialog-routable-dialog-CvjXMtlD.mjs.map +1 -0
  83. package/fesm2022/malva-ui-core-dialog.mjs +1223 -0
  84. package/fesm2022/malva-ui-core-dialog.mjs.map +1 -0
  85. package/fesm2022/malva-ui-core-divider.mjs +80 -0
  86. package/fesm2022/malva-ui-core-divider.mjs.map +1 -0
  87. package/fesm2022/malva-ui-core-drawer-routable-drawer-qUk6Etnx.mjs +94 -0
  88. package/fesm2022/malva-ui-core-drawer-routable-drawer-qUk6Etnx.mjs.map +1 -0
  89. package/fesm2022/malva-ui-core-drawer.mjs +814 -0
  90. package/fesm2022/malva-ui-core-drawer.mjs.map +1 -0
  91. package/fesm2022/malva-ui-core-dropdown.mjs +994 -0
  92. package/fesm2022/malva-ui-core-dropdown.mjs.map +1 -0
  93. package/fesm2022/malva-ui-core-empty-state.mjs +50 -0
  94. package/fesm2022/malva-ui-core-empty-state.mjs.map +1 -0
  95. package/fesm2022/malva-ui-core-expand.mjs +130 -0
  96. package/fesm2022/malva-ui-core-expand.mjs.map +1 -0
  97. package/fesm2022/malva-ui-core-file-upload.mjs +451 -0
  98. package/fesm2022/malva-ui-core-file-upload.mjs.map +1 -0
  99. package/fesm2022/malva-ui-core-filter.mjs +1627 -0
  100. package/fesm2022/malva-ui-core-filter.mjs.map +1 -0
  101. package/fesm2022/malva-ui-core-form-utils-testing.mjs +39 -0
  102. package/fesm2022/malva-ui-core-form-utils-testing.mjs.map +1 -0
  103. package/fesm2022/malva-ui-core-form-utils.mjs +977 -0
  104. package/fesm2022/malva-ui-core-form-utils.mjs.map +1 -0
  105. package/fesm2022/malva-ui-core-form.mjs +283 -0
  106. package/fesm2022/malva-ui-core-form.mjs.map +1 -0
  107. package/fesm2022/malva-ui-core-icon-toggle.mjs +120 -0
  108. package/fesm2022/malva-ui-core-icon-toggle.mjs.map +1 -0
  109. package/fesm2022/malva-ui-core-input.mjs +375 -0
  110. package/fesm2022/malva-ui-core-input.mjs.map +1 -0
  111. package/fesm2022/malva-ui-core-kbd.mjs +131 -0
  112. package/fesm2022/malva-ui-core-kbd.mjs.map +1 -0
  113. package/fesm2022/malva-ui-core-layout.mjs +212 -0
  114. package/fesm2022/malva-ui-core-layout.mjs.map +1 -0
  115. package/fesm2022/malva-ui-core-link.mjs +89 -0
  116. package/fesm2022/malva-ui-core-link.mjs.map +1 -0
  117. package/fesm2022/malva-ui-core-list.mjs +413 -0
  118. package/fesm2022/malva-ui-core-list.mjs.map +1 -0
  119. package/fesm2022/malva-ui-core-loader.mjs +141 -0
  120. package/fesm2022/malva-ui-core-loader.mjs.map +1 -0
  121. package/fesm2022/malva-ui-core-menu.mjs +2540 -0
  122. package/fesm2022/malva-ui-core-menu.mjs.map +1 -0
  123. package/fesm2022/malva-ui-core-notification.mjs +201 -0
  124. package/fesm2022/malva-ui-core-notification.mjs.map +1 -0
  125. package/fesm2022/malva-ui-core-number-input.mjs +404 -0
  126. package/fesm2022/malva-ui-core-number-input.mjs.map +1 -0
  127. package/fesm2022/malva-ui-core-page.mjs +1898 -0
  128. package/fesm2022/malva-ui-core-page.mjs.map +1 -0
  129. package/fesm2022/malva-ui-core-pagination.mjs +458 -0
  130. package/fesm2022/malva-ui-core-pagination.mjs.map +1 -0
  131. package/fesm2022/malva-ui-core-pin-input.mjs +405 -0
  132. package/fesm2022/malva-ui-core-pin-input.mjs.map +1 -0
  133. package/fesm2022/malva-ui-core-popup.mjs +1488 -0
  134. package/fesm2022/malva-ui-core-popup.mjs.map +1 -0
  135. package/fesm2022/malva-ui-core-progress.mjs +109 -0
  136. package/fesm2022/malva-ui-core-progress.mjs.map +1 -0
  137. package/fesm2022/malva-ui-core-radio.mjs +317 -0
  138. package/fesm2022/malva-ui-core-radio.mjs.map +1 -0
  139. package/fesm2022/malva-ui-core-rating.mjs +236 -0
  140. package/fesm2022/malva-ui-core-rating.mjs.map +1 -0
  141. package/fesm2022/malva-ui-core-scrollbar.mjs +430 -0
  142. package/fesm2022/malva-ui-core-scrollbar.mjs.map +1 -0
  143. package/fesm2022/malva-ui-core-search-field.mjs +578 -0
  144. package/fesm2022/malva-ui-core-search-field.mjs.map +1 -0
  145. package/fesm2022/malva-ui-core-segmented.mjs +458 -0
  146. package/fesm2022/malva-ui-core-segmented.mjs.map +1 -0
  147. package/fesm2022/malva-ui-core-select.mjs +855 -0
  148. package/fesm2022/malva-ui-core-select.mjs.map +1 -0
  149. package/fesm2022/malva-ui-core-sidebar.mjs +1504 -0
  150. package/fesm2022/malva-ui-core-sidebar.mjs.map +1 -0
  151. package/fesm2022/malva-ui-core-skeleton.mjs +85 -0
  152. package/fesm2022/malva-ui-core-skeleton.mjs.map +1 -0
  153. package/fesm2022/malva-ui-core-slider.mjs +514 -0
  154. package/fesm2022/malva-ui-core-slider.mjs.map +1 -0
  155. package/fesm2022/malva-ui-core-split-pane.mjs +359 -0
  156. package/fesm2022/malva-ui-core-split-pane.mjs.map +1 -0
  157. package/fesm2022/malva-ui-core-status-indicator.mjs +78 -0
  158. package/fesm2022/malva-ui-core-status-indicator.mjs.map +1 -0
  159. package/fesm2022/malva-ui-core-stepper.mjs +332 -0
  160. package/fesm2022/malva-ui-core-stepper.mjs.map +1 -0
  161. package/fesm2022/malva-ui-core-switch.mjs +272 -0
  162. package/fesm2022/malva-ui-core-switch.mjs.map +1 -0
  163. package/fesm2022/malva-ui-core-table.mjs +79 -0
  164. package/fesm2022/malva-ui-core-table.mjs.map +1 -0
  165. package/fesm2022/malva-ui-core-tabs.mjs +794 -0
  166. package/fesm2022/malva-ui-core-tabs.mjs.map +1 -0
  167. package/fesm2022/malva-ui-core-textarea.mjs +201 -0
  168. package/fesm2022/malva-ui-core-textarea.mjs.map +1 -0
  169. package/fesm2022/malva-ui-core-tile.mjs +1404 -0
  170. package/fesm2022/malva-ui-core-tile.mjs.map +1 -0
  171. package/fesm2022/malva-ui-core-time-picker.mjs +533 -0
  172. package/fesm2022/malva-ui-core-time-picker.mjs.map +1 -0
  173. package/fesm2022/malva-ui-core-timeline.mjs +216 -0
  174. package/fesm2022/malva-ui-core-timeline.mjs.map +1 -0
  175. package/fesm2022/malva-ui-core-title.mjs +178 -0
  176. package/fesm2022/malva-ui-core-title.mjs.map +1 -0
  177. package/fesm2022/malva-ui-core-toast.mjs +749 -0
  178. package/fesm2022/malva-ui-core-toast.mjs.map +1 -0
  179. package/fesm2022/malva-ui-core-tokenizer.mjs +502 -0
  180. package/fesm2022/malva-ui-core-tokenizer.mjs.map +1 -0
  181. package/fesm2022/malva-ui-core-toolbar.mjs +141 -0
  182. package/fesm2022/malva-ui-core-toolbar.mjs.map +1 -0
  183. package/fesm2022/malva-ui-core-tooltip.mjs +432 -0
  184. package/fesm2022/malva-ui-core-tooltip.mjs.map +1 -0
  185. package/fesm2022/malva-ui-core-tree.mjs +505 -0
  186. package/fesm2022/malva-ui-core-tree.mjs.map +1 -0
  187. package/fesm2022/malva-ui-core-view-variant.mjs +292 -0
  188. package/fesm2022/malva-ui-core-view-variant.mjs.map +1 -0
  189. package/fesm2022/malva-ui-core.mjs +77 -0
  190. package/fesm2022/malva-ui-core.mjs.map +1 -0
  191. package/package.json +195 -156
  192. package/styles/malva-ui.css +253 -220
  193. package/styles/tokens.md +174 -173
  194. package/table/README.md +46 -0
  195. package/types/malva-ui-core-accordion.d.ts +121 -0
  196. package/types/malva-ui-core-action-bar.d.ts +82 -0
  197. package/types/malva-ui-core-alert.d.ts +131 -0
  198. package/types/malva-ui-core-autocomplete.d.ts +301 -0
  199. package/types/malva-ui-core-avatar-group.d.ts +119 -0
  200. package/types/malva-ui-core-avatar.d.ts +156 -0
  201. package/types/malva-ui-core-badge.d.ts +97 -0
  202. package/types/malva-ui-core-bottom-nav.d.ts +104 -0
  203. package/types/malva-ui-core-breadcrumb.d.ts +308 -0
  204. package/types/malva-ui-core-button.d.ts +194 -0
  205. package/types/malva-ui-core-calendar.d.ts +339 -0
  206. package/types/malva-ui-core-card.d.ts +88 -0
  207. package/types/malva-ui-core-chat.d.ts +375 -0
  208. package/types/malva-ui-core-checkbox.d.ts +158 -0
  209. package/types/malva-ui-core-chip.d.ts +128 -0
  210. package/types/malva-ui-core-color-picker.d.ts +442 -0
  211. package/types/malva-ui-core-combobox.d.ts +419 -0
  212. package/types/malva-ui-core-copy-to-clipboard.d.ts +148 -0
  213. package/types/malva-ui-core-data-table.d.ts +1074 -0
  214. package/types/malva-ui-core-date-range-picker.d.ts +149 -0
  215. package/types/malva-ui-core-day-picker.d.ts +55 -0
  216. package/types/malva-ui-core-dialog.d.ts +597 -0
  217. package/types/malva-ui-core-divider.d.ts +68 -0
  218. package/types/malva-ui-core-drawer.d.ts +333 -0
  219. package/types/malva-ui-core-dropdown.d.ts +592 -0
  220. package/types/malva-ui-core-empty-state.d.ts +37 -0
  221. package/types/malva-ui-core-expand.d.ts +102 -0
  222. package/types/malva-ui-core-file-upload.d.ts +267 -0
  223. package/types/malva-ui-core-filter.d.ts +552 -0
  224. package/types/malva-ui-core-form-utils-testing.d.ts +50 -0
  225. package/types/malva-ui-core-form-utils.d.ts +579 -0
  226. package/types/malva-ui-core-form.d.ts +176 -0
  227. package/types/malva-ui-core-icon-toggle.d.ts +80 -0
  228. package/types/malva-ui-core-input.d.ts +262 -0
  229. package/types/malva-ui-core-kbd.d.ts +56 -0
  230. package/types/malva-ui-core-layout.d.ts +70 -0
  231. package/types/malva-ui-core-link.d.ts +28 -0
  232. package/types/malva-ui-core-list.d.ts +252 -0
  233. package/types/malva-ui-core-loader.d.ts +89 -0
  234. package/types/malva-ui-core-menu.d.ts +954 -0
  235. package/types/malva-ui-core-notification.d.ts +122 -0
  236. package/types/malva-ui-core-number-input.d.ts +167 -0
  237. package/types/malva-ui-core-page.d.ts +799 -0
  238. package/types/malva-ui-core-pagination.d.ts +261 -0
  239. package/types/malva-ui-core-pin-input.d.ts +203 -0
  240. package/types/malva-ui-core-popup.d.ts +834 -0
  241. package/types/malva-ui-core-progress.d.ts +73 -0
  242. package/types/malva-ui-core-radio.d.ts +130 -0
  243. package/types/malva-ui-core-rating.d.ts +115 -0
  244. package/types/malva-ui-core-scrollbar.d.ts +203 -0
  245. package/types/malva-ui-core-search-field.d.ts +408 -0
  246. package/types/malva-ui-core-segmented.d.ts +206 -0
  247. package/types/malva-ui-core-select.d.ts +456 -0
  248. package/types/malva-ui-core-sidebar.d.ts +698 -0
  249. package/types/malva-ui-core-skeleton.d.ts +64 -0
  250. package/types/malva-ui-core-slider.d.ts +219 -0
  251. package/types/malva-ui-core-split-pane.d.ts +149 -0
  252. package/types/malva-ui-core-status-indicator.d.ts +65 -0
  253. package/types/malva-ui-core-stepper.d.ts +168 -0
  254. package/types/malva-ui-core-switch.d.ts +146 -0
  255. package/types/malva-ui-core-table.d.ts +37 -0
  256. package/types/malva-ui-core-tabs.d.ts +339 -0
  257. package/types/malva-ui-core-textarea.d.ts +79 -0
  258. package/types/malva-ui-core-tile.d.ts +373 -0
  259. package/types/malva-ui-core-time-picker.d.ts +141 -0
  260. package/types/malva-ui-core-timeline.d.ts +188 -0
  261. package/types/malva-ui-core-title.d.ts +66 -0
  262. package/types/malva-ui-core-toast.d.ts +432 -0
  263. package/types/malva-ui-core-tokenizer.d.ts +217 -0
  264. package/types/malva-ui-core-toolbar.d.ts +91 -0
  265. package/types/malva-ui-core-tooltip.d.ts +200 -0
  266. package/types/malva-ui-core-tree.d.ts +289 -0
  267. package/types/malva-ui-core-view-variant.d.ts +207 -0
  268. package/types/malva-ui-core.d.ts +72 -0
  269. package/view-variant/README.md +3 -0
  270. package/accordion/index.d.ts +0 -3
  271. package/accordion/lib/accordion/accordion.d.ts +0 -47
  272. package/accordion/lib/accordion-item/accordion-header.d.ts +0 -22
  273. package/accordion/lib/accordion-item/accordion-item.d.ts +0 -49
  274. package/accordion/malva-ui-core-accordion.d.ts +0 -5
  275. package/action-bar/index.d.ts +0 -4
  276. package/action-bar/lib/action-bar/action-bar.d.ts +0 -59
  277. package/action-bar/lib/action-bar/components/action-bar-actions.d.ts +0 -9
  278. package/action-bar/lib/action-bar/components/action-bar-logo.d.ts +0 -5
  279. package/action-bar/lib/action-bar/components/action-bar-spacer.d.ts +0 -5
  280. package/action-bar/malva-ui-core-action-bar.d.ts +0 -5
  281. package/alert/index.d.ts +0 -2
  282. package/alert/lib/alert/alert.d.ts +0 -84
  283. package/alert/lib/alert/alert.directives.d.ts +0 -44
  284. package/alert/malva-ui-core-alert.d.ts +0 -5
  285. package/autocomplete/index.d.ts +0 -1
  286. package/autocomplete/lib/autocomplete/autocomplete.d.ts +0 -296
  287. package/autocomplete/malva-ui-core-autocomplete.d.ts +0 -5
  288. package/avatar/index.d.ts +0 -2
  289. package/avatar/lib/avatar/avatar.d.ts +0 -125
  290. package/avatar/lib/color-from-text.pipe.d.ts +0 -21
  291. package/avatar/malva-ui-core-avatar.d.ts +0 -5
  292. package/avatar-group/index.d.ts +0 -1
  293. package/avatar-group/lib/avatar-group/avatar-group.d.ts +0 -115
  294. package/avatar-group/malva-ui-core-avatar-group.d.ts +0 -5
  295. package/badge/index.d.ts +0 -2
  296. package/badge/lib/badge/badge.d.ts +0 -59
  297. package/badge/lib/badge-icon.d.ts +0 -35
  298. package/badge/malva-ui-core-badge.d.ts +0 -5
  299. package/bottom-nav/index.d.ts +0 -1
  300. package/bottom-nav/lib/bottom-nav/bottom-nav.d.ts +0 -99
  301. package/bottom-nav/malva-ui-core-bottom-nav.d.ts +0 -5
  302. package/breadcrumb/index.d.ts +0 -5
  303. package/breadcrumb/lib/breadcrumb/breadcrumb-item-host.d.ts +0 -32
  304. package/breadcrumb/lib/breadcrumb/breadcrumb-item.d.ts +0 -41
  305. package/breadcrumb/lib/breadcrumb/breadcrumb-separator.d.ts +0 -31
  306. package/breadcrumb/lib/breadcrumb/breadcrumb.d.ts +0 -151
  307. package/breadcrumb/lib/breadcrumb/breadcrumb.types.d.ts +0 -26
  308. package/breadcrumb/malva-ui-core-breadcrumb.d.ts +0 -5
  309. package/button/index.d.ts +0 -7
  310. package/button/lib/button/button.d.ts +0 -61
  311. package/button/lib/button-close/button-close.d.ts +0 -24
  312. package/button/lib/button-group/button-group.d.ts +0 -21
  313. package/button/lib/button-split/button-split.d.ts +0 -21
  314. package/button/lib/button-toggle/button-toggle.d.ts +0 -33
  315. package/button/lib/button-variant.token.d.ts +0 -13
  316. package/button/lib/button.directives.d.ts +0 -14
  317. package/button/lib/button.types.d.ts +0 -8
  318. package/button/malva-ui-core-button.d.ts +0 -5
  319. package/calendar/index.d.ts +0 -3
  320. package/calendar/lib/calendar/calendar.d.ts +0 -182
  321. package/calendar/lib/date-provider/date-adapter.d.ts +0 -92
  322. package/calendar/lib/date-provider/native-date-adapter.d.ts +0 -60
  323. package/calendar/malva-ui-core-calendar.d.ts +0 -5
  324. package/card/index.d.ts +0 -5
  325. package/card/lib/card/card.d.ts +0 -43
  326. package/card/lib/card-actions-def.d.ts +0 -10
  327. package/card/lib/card-footer-def.d.ts +0 -13
  328. package/card/lib/card-header-def.d.ts +0 -10
  329. package/card/lib/card-subheader-def.d.ts +0 -16
  330. package/card/malva-ui-core-card.d.ts +0 -5
  331. package/chat/index.d.ts +0 -9
  332. package/chat/lib/chat/chat.d.ts +0 -133
  333. package/chat/lib/chat-audio/chat-audio.d.ts +0 -51
  334. package/chat/lib/chat-audio/chat-audio.service.d.ts +0 -21
  335. package/chat/lib/chat-date/chat-date.d.ts +0 -16
  336. package/chat/lib/chat-format.d.ts +0 -5
  337. package/chat/lib/chat-media-grid/chat-media-grid.d.ts +0 -32
  338. package/chat/lib/chat-message/chat-message.d.ts +0 -45
  339. package/chat/lib/chat-render-list.d.ts +0 -16
  340. package/chat/lib/chat-tokens.d.ts +0 -25
  341. package/chat/lib/chat-typing/chat-typing.d.ts +0 -16
  342. package/chat/lib/chat.types.d.ts +0 -80
  343. package/chat/lib/defs/chat-author-def.d.ts +0 -30
  344. package/chat/lib/defs/chat-date-def.d.ts +0 -22
  345. package/chat/lib/defs/chat-message-def.d.ts +0 -23
  346. package/chat/malva-ui-core-chat.d.ts +0 -5
  347. package/checkbox/index.d.ts +0 -3
  348. package/checkbox/lib/checkbox/checkbox.d.ts +0 -129
  349. package/checkbox/lib/checkbox-group/checkbox-group.d.ts +0 -24
  350. package/checkbox/lib/checkbox-group-token.d.ts +0 -6
  351. package/checkbox/malva-ui-core-checkbox.d.ts +0 -5
  352. package/chip/index.d.ts +0 -2
  353. package/chip/lib/chip/chip.d.ts +0 -107
  354. package/chip/lib/chip/chip.directives.d.ts +0 -18
  355. package/chip/malva-ui-core-chip.d.ts +0 -5
  356. package/color-picker/index.d.ts +0 -3
  357. package/color-picker/lib/color-picker/color-picker.d.ts +0 -188
  358. package/color-picker/lib/color-picker-popup/color-picker-popup.d.ts +0 -151
  359. package/color-picker/lib/color-utils/color-utils.d.ts +0 -102
  360. package/color-picker/malva-ui-core-color-picker.d.ts +0 -5
  361. package/combobox/index.d.ts +0 -2
  362. package/combobox/lib/combobox/combobox.d.ts +0 -400
  363. package/combobox/lib/combobox-template.directives.d.ts +0 -10
  364. package/combobox/malva-ui-core-combobox.d.ts +0 -5
  365. package/copy-to-clipboard/index.d.ts +0 -1
  366. package/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.d.ts +0 -130
  367. package/copy-to-clipboard/malva-ui-core-copy-to-clipboard.d.ts +0 -5
  368. package/data-table/index.d.ts +0 -8
  369. package/data-table/lib/data-source.d.ts +0 -5
  370. package/data-table/lib/data-table/data-table-layout.d.ts +0 -31
  371. package/data-table/lib/data-table/data-table.d.ts +0 -699
  372. package/data-table/lib/data-table/services/data-table-column-visibility.service.d.ts +0 -19
  373. package/data-table/lib/data-table/services/data-table-editing.service.d.ts +0 -37
  374. package/data-table/lib/data-table/services/data-table-pinning.service.d.ts +0 -37
  375. package/data-table/lib/data-table-cell.d.ts +0 -44
  376. package/data-table/lib/data-table-edit-cell.d.ts +0 -44
  377. package/data-table/lib/data-table-error.d.ts +0 -37
  378. package/data-table/lib/data-table-footer.d.ts +0 -26
  379. package/data-table/lib/data-table-no-data.d.ts +0 -19
  380. package/data-table/lib/filter-dropdown/filter-dropdown.d.ts +0 -54
  381. package/data-table/lib/types.d.ts +0 -134
  382. package/data-table/malva-ui-core-data-table.d.ts +0 -5
  383. package/date-range-picker/index.d.ts +0 -1
  384. package/date-range-picker/lib/date-range-picker/date-range-picker.d.ts +0 -145
  385. package/date-range-picker/malva-ui-core-date-range-picker.d.ts +0 -5
  386. package/day-picker/index.d.ts +0 -1
  387. package/day-picker/lib/day-picker/day-picker.d.ts +0 -51
  388. package/day-picker/malva-ui-core-day-picker.d.ts +0 -5
  389. package/dialog/index.d.ts +0 -11
  390. package/dialog/lib/confirm-dialog-options.d.ts +0 -41
  391. package/dialog/lib/confirm-dialog.d.ts +0 -52
  392. package/dialog/lib/dialog/dialog.d.ts +0 -22
  393. package/dialog/lib/dialog-body.d.ts +0 -9
  394. package/dialog/lib/dialog-close.d.ts +0 -27
  395. package/dialog/lib/dialog-config.d.ts +0 -112
  396. package/dialog/lib/dialog-container.d.ts +0 -40
  397. package/dialog/lib/dialog-footer.d.ts +0 -13
  398. package/dialog/lib/dialog-header.d.ts +0 -74
  399. package/dialog/lib/dialog-ref.d.ts +0 -95
  400. package/dialog/lib/dialog-template.d.ts +0 -65
  401. package/dialog/lib/dialog-text-content.d.ts +0 -24
  402. package/dialog/lib/dialog.service.d.ts +0 -63
  403. package/dialog/lib/generate-routable-dialog-route.d.ts +0 -49
  404. package/dialog/lib/inject-dialog-ref.d.ts +0 -8
  405. package/dialog/lib/routable-dialog.d.ts +0 -30
  406. package/dialog/malva-ui-core-dialog.d.ts +0 -5
  407. package/divider/index.d.ts +0 -1
  408. package/divider/lib/divider/divider.d.ts +0 -64
  409. package/divider/malva-ui-core-divider.d.ts +0 -5
  410. package/drawer/index.d.ts +0 -11
  411. package/drawer/lib/drawer/drawer.d.ts +0 -106
  412. package/drawer/lib/drawer-body.d.ts +0 -8
  413. package/drawer/lib/drawer-content.d.ts +0 -6
  414. package/drawer/lib/drawer-footer.d.ts +0 -5
  415. package/drawer/lib/drawer-header.d.ts +0 -5
  416. package/drawer/lib/drawer-ref.d.ts +0 -29
  417. package/drawer/lib/drawer-resize.d.ts +0 -65
  418. package/drawer/lib/drawer-section/drawer-section.d.ts +0 -15
  419. package/drawer/lib/drawer-sections/drawer-sections.d.ts +0 -22
  420. package/drawer/lib/drawer-sections.service.d.ts +0 -42
  421. package/drawer/lib/drawer.service.d.ts +0 -66
  422. package/drawer/lib/generate-routable-drawer-route.d.ts +0 -42
  423. package/drawer/lib/routable-drawer.d.ts +0 -30
  424. package/drawer/malva-ui-core-drawer.d.ts +0 -5
  425. package/dropdown/index.d.ts +0 -9
  426. package/dropdown/lib/active-descendant.d.ts +0 -64
  427. package/dropdown/lib/dropdown-panel/dropdown-panel.d.ts +0 -178
  428. package/dropdown/lib/highlight-match.pipe.d.ts +0 -27
  429. package/dropdown/lib/option-matcher.d.ts +0 -87
  430. package/dropdown/lib/options-adapter.d.ts +0 -142
  431. package/dropdown/lib/options-result.d.ts +0 -6
  432. package/dropdown/lib/reconciliation.d.ts +0 -19
  433. package/dropdown/lib/select-data-source.d.ts +0 -18
  434. package/dropdown/lib/select-option.d.ts +0 -37
  435. package/dropdown/malva-ui-core-dropdown.d.ts +0 -5
  436. package/empty-state/index.d.ts +0 -1
  437. package/empty-state/lib/empty-state/empty-state.d.ts +0 -34
  438. package/empty-state/malva-ui-core-empty-state.d.ts +0 -5
  439. package/esm2022/accordion/index.js +0 -4
  440. package/esm2022/accordion/index.js.map +0 -1
  441. package/esm2022/accordion/lib/accordion/accordion.js +0 -65
  442. package/esm2022/accordion/lib/accordion/accordion.js.map +0 -1
  443. package/esm2022/accordion/lib/accordion-item/accordion-header.js +0 -30
  444. package/esm2022/accordion/lib/accordion-item/accordion-header.js.map +0 -1
  445. package/esm2022/accordion/lib/accordion-item/accordion-item.js +0 -70
  446. package/esm2022/accordion/lib/accordion-item/accordion-item.js.map +0 -1
  447. package/esm2022/accordion/malva-ui-core-accordion.js +0 -5
  448. package/esm2022/accordion/malva-ui-core-accordion.js.map +0 -1
  449. package/esm2022/action-bar/index.js +0 -5
  450. package/esm2022/action-bar/index.js.map +0 -1
  451. package/esm2022/action-bar/lib/action-bar/action-bar.js +0 -64
  452. package/esm2022/action-bar/lib/action-bar/action-bar.js.map +0 -1
  453. package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js +0 -20
  454. package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js.map +0 -1
  455. package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js +0 -13
  456. package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js.map +0 -1
  457. package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js +0 -13
  458. package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js.map +0 -1
  459. package/esm2022/action-bar/malva-ui-core-action-bar.js +0 -5
  460. package/esm2022/action-bar/malva-ui-core-action-bar.js.map +0 -1
  461. package/esm2022/alert/index.js +0 -3
  462. package/esm2022/alert/index.js.map +0 -1
  463. package/esm2022/alert/lib/alert/alert.directives.js +0 -53
  464. package/esm2022/alert/lib/alert/alert.directives.js.map +0 -1
  465. package/esm2022/alert/lib/alert/alert.js +0 -118
  466. package/esm2022/alert/lib/alert/alert.js.map +0 -1
  467. package/esm2022/alert/malva-ui-core-alert.js +0 -5
  468. package/esm2022/alert/malva-ui-core-alert.js.map +0 -1
  469. package/esm2022/autocomplete/index.js +0 -2
  470. package/esm2022/autocomplete/index.js.map +0 -1
  471. package/esm2022/autocomplete/lib/autocomplete/autocomplete.js +0 -765
  472. package/esm2022/autocomplete/lib/autocomplete/autocomplete.js.map +0 -1
  473. package/esm2022/autocomplete/malva-ui-core-autocomplete.js +0 -5
  474. package/esm2022/autocomplete/malva-ui-core-autocomplete.js.map +0 -1
  475. package/esm2022/avatar/index.js +0 -3
  476. package/esm2022/avatar/index.js.map +0 -1
  477. package/esm2022/avatar/lib/avatar/avatar.js +0 -192
  478. package/esm2022/avatar/lib/avatar/avatar.js.map +0 -1
  479. package/esm2022/avatar/lib/color-from-text.pipe.js +0 -39
  480. package/esm2022/avatar/lib/color-from-text.pipe.js.map +0 -1
  481. package/esm2022/avatar/malva-ui-core-avatar.js +0 -5
  482. package/esm2022/avatar/malva-ui-core-avatar.js.map +0 -1
  483. package/esm2022/avatar-group/index.js +0 -2
  484. package/esm2022/avatar-group/index.js.map +0 -1
  485. package/esm2022/avatar-group/lib/avatar-group/avatar-group.js +0 -217
  486. package/esm2022/avatar-group/lib/avatar-group/avatar-group.js.map +0 -1
  487. package/esm2022/avatar-group/malva-ui-core-avatar-group.js +0 -5
  488. package/esm2022/avatar-group/malva-ui-core-avatar-group.js.map +0 -1
  489. package/esm2022/badge/index.js +0 -3
  490. package/esm2022/badge/index.js.map +0 -1
  491. package/esm2022/badge/lib/badge/badge.js +0 -71
  492. package/esm2022/badge/lib/badge/badge.js.map +0 -1
  493. package/esm2022/badge/lib/badge-icon.js +0 -47
  494. package/esm2022/badge/lib/badge-icon.js.map +0 -1
  495. package/esm2022/badge/malva-ui-core-badge.js +0 -5
  496. package/esm2022/badge/malva-ui-core-badge.js.map +0 -1
  497. package/esm2022/bottom-nav/index.js +0 -2
  498. package/esm2022/bottom-nav/index.js.map +0 -1
  499. package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js +0 -155
  500. package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js.map +0 -1
  501. package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js +0 -5
  502. package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js.map +0 -1
  503. package/esm2022/breadcrumb/index.js +0 -6
  504. package/esm2022/breadcrumb/index.js.map +0 -1
  505. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js +0 -43
  506. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js.map +0 -1
  507. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js +0 -110
  508. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js.map +0 -1
  509. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js +0 -38
  510. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js.map +0 -1
  511. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js +0 -284
  512. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js.map +0 -1
  513. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js +0 -1
  514. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js.map +0 -1
  515. package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js +0 -5
  516. package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js.map +0 -1
  517. package/esm2022/button/index.js +0 -8
  518. package/esm2022/button/index.js.map +0 -1
  519. package/esm2022/button/lib/button/button.js +0 -137
  520. package/esm2022/button/lib/button/button.js.map +0 -1
  521. package/esm2022/button/lib/button-close/button-close.js +0 -52
  522. package/esm2022/button/lib/button-close/button-close.js.map +0 -1
  523. package/esm2022/button/lib/button-group/button-group.js +0 -44
  524. package/esm2022/button/lib/button-group/button-group.js.map +0 -1
  525. package/esm2022/button/lib/button-split/button-split.js +0 -44
  526. package/esm2022/button/lib/button-split/button-split.js.map +0 -1
  527. package/esm2022/button/lib/button-toggle/button-toggle.js +0 -94
  528. package/esm2022/button/lib/button-toggle/button-toggle.js.map +0 -1
  529. package/esm2022/button/lib/button-variant.token.js +0 -4
  530. package/esm2022/button/lib/button-variant.token.js.map +0 -1
  531. package/esm2022/button/lib/button.directives.js +0 -37
  532. package/esm2022/button/lib/button.directives.js.map +0 -1
  533. package/esm2022/button/lib/button.types.js +0 -1
  534. package/esm2022/button/lib/button.types.js.map +0 -1
  535. package/esm2022/button/malva-ui-core-button.js +0 -5
  536. package/esm2022/button/malva-ui-core-button.js.map +0 -1
  537. package/esm2022/calendar/index.js +0 -4
  538. package/esm2022/calendar/index.js.map +0 -1
  539. package/esm2022/calendar/lib/calendar/calendar.js +0 -672
  540. package/esm2022/calendar/lib/calendar/calendar.js.map +0 -1
  541. package/esm2022/calendar/lib/date-provider/date-adapter.js +0 -111
  542. package/esm2022/calendar/lib/date-provider/date-adapter.js.map +0 -1
  543. package/esm2022/calendar/lib/date-provider/native-date-adapter.js +0 -151
  544. package/esm2022/calendar/lib/date-provider/native-date-adapter.js.map +0 -1
  545. package/esm2022/calendar/malva-ui-core-calendar.js +0 -5
  546. package/esm2022/calendar/malva-ui-core-calendar.js.map +0 -1
  547. package/esm2022/card/index.js +0 -6
  548. package/esm2022/card/index.js.map +0 -1
  549. package/esm2022/card/lib/card/card.js +0 -54
  550. package/esm2022/card/lib/card/card.js.map +0 -1
  551. package/esm2022/card/lib/card-actions-def.js +0 -27
  552. package/esm2022/card/lib/card-actions-def.js.map +0 -1
  553. package/esm2022/card/lib/card-footer-def.js +0 -32
  554. package/esm2022/card/lib/card-footer-def.js.map +0 -1
  555. package/esm2022/card/lib/card-header-def.js +0 -27
  556. package/esm2022/card/lib/card-header-def.js.map +0 -1
  557. package/esm2022/card/lib/card-subheader-def.js +0 -33
  558. package/esm2022/card/lib/card-subheader-def.js.map +0 -1
  559. package/esm2022/card/malva-ui-core-card.js +0 -5
  560. package/esm2022/card/malva-ui-core-card.js.map +0 -1
  561. package/esm2022/chat/index.js +0 -10
  562. package/esm2022/chat/index.js.map +0 -1
  563. package/esm2022/chat/lib/chat/chat.js +0 -326
  564. package/esm2022/chat/lib/chat/chat.js.map +0 -1
  565. package/esm2022/chat/lib/chat-audio/chat-audio.js +0 -110
  566. package/esm2022/chat/lib/chat-audio/chat-audio.js.map +0 -1
  567. package/esm2022/chat/lib/chat-audio/chat-audio.service.js +0 -28
  568. package/esm2022/chat/lib/chat-audio/chat-audio.service.js.map +0 -1
  569. package/esm2022/chat/lib/chat-date/chat-date.js +0 -46
  570. package/esm2022/chat/lib/chat-date/chat-date.js.map +0 -1
  571. package/esm2022/chat/lib/chat-format.js +0 -11
  572. package/esm2022/chat/lib/chat-format.js.map +0 -1
  573. package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js +0 -53
  574. package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js.map +0 -1
  575. package/esm2022/chat/lib/chat-message/chat-message.js +0 -86
  576. package/esm2022/chat/lib/chat-message/chat-message.js.map +0 -1
  577. package/esm2022/chat/lib/chat-render-list.js +0 -55
  578. package/esm2022/chat/lib/chat-render-list.js.map +0 -1
  579. package/esm2022/chat/lib/chat-tokens.js +0 -9
  580. package/esm2022/chat/lib/chat-tokens.js.map +0 -1
  581. package/esm2022/chat/lib/chat-typing/chat-typing.js +0 -50
  582. package/esm2022/chat/lib/chat-typing/chat-typing.js.map +0 -1
  583. package/esm2022/chat/lib/chat.types.js +0 -1
  584. package/esm2022/chat/lib/chat.types.js.map +0 -1
  585. package/esm2022/chat/lib/defs/chat-author-def.js +0 -27
  586. package/esm2022/chat/lib/defs/chat-author-def.js.map +0 -1
  587. package/esm2022/chat/lib/defs/chat-date-def.js +0 -24
  588. package/esm2022/chat/lib/defs/chat-date-def.js.map +0 -1
  589. package/esm2022/chat/lib/defs/chat-message-def.js +0 -30
  590. package/esm2022/chat/lib/defs/chat-message-def.js.map +0 -1
  591. package/esm2022/chat/malva-ui-core-chat.js +0 -5
  592. package/esm2022/chat/malva-ui-core-chat.js.map +0 -1
  593. package/esm2022/checkbox/index.js +0 -4
  594. package/esm2022/checkbox/index.js.map +0 -1
  595. package/esm2022/checkbox/lib/checkbox/checkbox.js +0 -201
  596. package/esm2022/checkbox/lib/checkbox/checkbox.js.map +0 -1
  597. package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js +0 -68
  598. package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js.map +0 -1
  599. package/esm2022/checkbox/lib/checkbox-group-token.js +0 -3
  600. package/esm2022/checkbox/lib/checkbox-group-token.js.map +0 -1
  601. package/esm2022/checkbox/malva-ui-core-checkbox.js +0 -5
  602. package/esm2022/checkbox/malva-ui-core-checkbox.js.map +0 -1
  603. package/esm2022/chip/index.js +0 -3
  604. package/esm2022/chip/index.js.map +0 -1
  605. package/esm2022/chip/lib/chip/chip.directives.js +0 -32
  606. package/esm2022/chip/lib/chip/chip.directives.js.map +0 -1
  607. package/esm2022/chip/lib/chip/chip.js +0 -140
  608. package/esm2022/chip/lib/chip/chip.js.map +0 -1
  609. package/esm2022/chip/malva-ui-core-chip.js +0 -5
  610. package/esm2022/chip/malva-ui-core-chip.js.map +0 -1
  611. package/esm2022/color-picker/index.js +0 -4
  612. package/esm2022/color-picker/index.js.map +0 -1
  613. package/esm2022/color-picker/lib/color-picker/color-picker.js +0 -530
  614. package/esm2022/color-picker/lib/color-picker/color-picker.js.map +0 -1
  615. package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js +0 -419
  616. package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js.map +0 -1
  617. package/esm2022/color-picker/lib/color-utils/color-utils.js +0 -256
  618. package/esm2022/color-picker/lib/color-utils/color-utils.js.map +0 -1
  619. package/esm2022/color-picker/malva-ui-core-color-picker.js +0 -5
  620. package/esm2022/color-picker/malva-ui-core-color-picker.js.map +0 -1
  621. package/esm2022/combobox/index.js +0 -3
  622. package/esm2022/combobox/index.js.map +0 -1
  623. package/esm2022/combobox/lib/combobox/combobox.js +0 -911
  624. package/esm2022/combobox/lib/combobox/combobox.js.map +0 -1
  625. package/esm2022/combobox/lib/combobox-template.directives.js +0 -24
  626. package/esm2022/combobox/lib/combobox-template.directives.js.map +0 -1
  627. package/esm2022/combobox/malva-ui-core-combobox.js +0 -5
  628. package/esm2022/combobox/malva-ui-core-combobox.js.map +0 -1
  629. package/esm2022/copy-to-clipboard/index.js +0 -2
  630. package/esm2022/copy-to-clipboard/index.js.map +0 -1
  631. package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js +0 -201
  632. package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js.map +0 -1
  633. package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js +0 -5
  634. package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js.map +0 -1
  635. package/esm2022/data-table/index.js +0 -9
  636. package/esm2022/data-table/index.js.map +0 -1
  637. package/esm2022/data-table/lib/data-source.js +0 -6
  638. package/esm2022/data-table/lib/data-source.js.map +0 -1
  639. package/esm2022/data-table/lib/data-table/data-table-layout.js +0 -84
  640. package/esm2022/data-table/lib/data-table/data-table-layout.js.map +0 -1
  641. package/esm2022/data-table/lib/data-table/data-table.js +0 -1846
  642. package/esm2022/data-table/lib/data-table/data-table.js.map +0 -1
  643. package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js +0 -37
  644. package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js.map +0 -1
  645. package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js +0 -63
  646. package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js.map +0 -1
  647. package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js +0 -68
  648. package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js.map +0 -1
  649. package/esm2022/data-table/lib/data-table-cell.js +0 -46
  650. package/esm2022/data-table/lib/data-table-cell.js.map +0 -1
  651. package/esm2022/data-table/lib/data-table-edit-cell.js +0 -46
  652. package/esm2022/data-table/lib/data-table-edit-cell.js.map +0 -1
  653. package/esm2022/data-table/lib/data-table-error.js +0 -37
  654. package/esm2022/data-table/lib/data-table-error.js.map +0 -1
  655. package/esm2022/data-table/lib/data-table-footer.js +0 -33
  656. package/esm2022/data-table/lib/data-table-footer.js.map +0 -1
  657. package/esm2022/data-table/lib/data-table-no-data.js +0 -26
  658. package/esm2022/data-table/lib/data-table-no-data.js.map +0 -1
  659. package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js +0 -224
  660. package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js.map +0 -1
  661. package/esm2022/data-table/lib/types.js +0 -1
  662. package/esm2022/data-table/lib/types.js.map +0 -1
  663. package/esm2022/data-table/malva-ui-core-data-table.js +0 -5
  664. package/esm2022/data-table/malva-ui-core-data-table.js.map +0 -1
  665. package/esm2022/date-range-picker/index.js +0 -2
  666. package/esm2022/date-range-picker/index.js.map +0 -1
  667. package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js +0 -269
  668. package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js.map +0 -1
  669. package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js +0 -5
  670. package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js.map +0 -1
  671. package/esm2022/day-picker/index.js +0 -2
  672. package/esm2022/day-picker/index.js.map +0 -1
  673. package/esm2022/day-picker/lib/day-picker/day-picker.js +0 -124
  674. package/esm2022/day-picker/lib/day-picker/day-picker.js.map +0 -1
  675. package/esm2022/day-picker/malva-ui-core-day-picker.js +0 -5
  676. package/esm2022/day-picker/malva-ui-core-day-picker.js.map +0 -1
  677. package/esm2022/dialog/index.js +0 -12
  678. package/esm2022/dialog/index.js.map +0 -1
  679. package/esm2022/dialog/lib/confirm-dialog-options.js +0 -1
  680. package/esm2022/dialog/lib/confirm-dialog-options.js.map +0 -1
  681. package/esm2022/dialog/lib/confirm-dialog.js +0 -155
  682. package/esm2022/dialog/lib/confirm-dialog.js.map +0 -1
  683. package/esm2022/dialog/lib/dialog/dialog.js +0 -40
  684. package/esm2022/dialog/lib/dialog/dialog.js.map +0 -1
  685. package/esm2022/dialog/lib/dialog-body.js +0 -33
  686. package/esm2022/dialog/lib/dialog-body.js.map +0 -1
  687. package/esm2022/dialog/lib/dialog-close.js +0 -45
  688. package/esm2022/dialog/lib/dialog-close.js.map +0 -1
  689. package/esm2022/dialog/lib/dialog-config.js +0 -23
  690. package/esm2022/dialog/lib/dialog-config.js.map +0 -1
  691. package/esm2022/dialog/lib/dialog-container.js +0 -69
  692. package/esm2022/dialog/lib/dialog-container.js.map +0 -1
  693. package/esm2022/dialog/lib/dialog-footer.js +0 -29
  694. package/esm2022/dialog/lib/dialog-footer.js.map +0 -1
  695. package/esm2022/dialog/lib/dialog-header.js +0 -181
  696. package/esm2022/dialog/lib/dialog-header.js.map +0 -1
  697. package/esm2022/dialog/lib/dialog-ref.js +0 -167
  698. package/esm2022/dialog/lib/dialog-ref.js.map +0 -1
  699. package/esm2022/dialog/lib/dialog-template.js +0 -136
  700. package/esm2022/dialog/lib/dialog-template.js.map +0 -1
  701. package/esm2022/dialog/lib/dialog-text-content.js +0 -59
  702. package/esm2022/dialog/lib/dialog-text-content.js.map +0 -1
  703. package/esm2022/dialog/lib/dialog.service.js +0 -205
  704. package/esm2022/dialog/lib/dialog.service.js.map +0 -1
  705. package/esm2022/dialog/lib/generate-routable-dialog-route.js +0 -59
  706. package/esm2022/dialog/lib/generate-routable-dialog-route.js.map +0 -1
  707. package/esm2022/dialog/lib/inject-dialog-ref.js +0 -16
  708. package/esm2022/dialog/lib/inject-dialog-ref.js.map +0 -1
  709. package/esm2022/dialog/lib/routable-dialog.js +0 -91
  710. package/esm2022/dialog/lib/routable-dialog.js.map +0 -1
  711. package/esm2022/dialog/malva-ui-core-dialog.js +0 -5
  712. package/esm2022/dialog/malva-ui-core-dialog.js.map +0 -1
  713. package/esm2022/divider/index.js +0 -2
  714. package/esm2022/divider/index.js.map +0 -1
  715. package/esm2022/divider/lib/divider/divider.js +0 -73
  716. package/esm2022/divider/lib/divider/divider.js.map +0 -1
  717. package/esm2022/divider/malva-ui-core-divider.js +0 -5
  718. package/esm2022/divider/malva-ui-core-divider.js.map +0 -1
  719. package/esm2022/drawer/index.js +0 -12
  720. package/esm2022/drawer/index.js.map +0 -1
  721. package/esm2022/drawer/lib/drawer/drawer.js +0 -180
  722. package/esm2022/drawer/lib/drawer/drawer.js.map +0 -1
  723. package/esm2022/drawer/lib/drawer-body.js +0 -32
  724. package/esm2022/drawer/lib/drawer-body.js.map +0 -1
  725. package/esm2022/drawer/lib/drawer-content.js +0 -14
  726. package/esm2022/drawer/lib/drawer-content.js.map +0 -1
  727. package/esm2022/drawer/lib/drawer-footer.js +0 -14
  728. package/esm2022/drawer/lib/drawer-footer.js.map +0 -1
  729. package/esm2022/drawer/lib/drawer-header.js +0 -14
  730. package/esm2022/drawer/lib/drawer-header.js.map +0 -1
  731. package/esm2022/drawer/lib/drawer-ref.js +0 -31
  732. package/esm2022/drawer/lib/drawer-ref.js.map +0 -1
  733. package/esm2022/drawer/lib/drawer-resize.js +0 -243
  734. package/esm2022/drawer/lib/drawer-resize.js.map +0 -1
  735. package/esm2022/drawer/lib/drawer-section/drawer-section.js +0 -26
  736. package/esm2022/drawer/lib/drawer-section/drawer-section.js.map +0 -1
  737. package/esm2022/drawer/lib/drawer-sections/drawer-sections.js +0 -58
  738. package/esm2022/drawer/lib/drawer-sections/drawer-sections.js.map +0 -1
  739. package/esm2022/drawer/lib/drawer-sections.service.js +0 -83
  740. package/esm2022/drawer/lib/drawer-sections.service.js.map +0 -1
  741. package/esm2022/drawer/lib/drawer.service.js +0 -86
  742. package/esm2022/drawer/lib/drawer.service.js.map +0 -1
  743. package/esm2022/drawer/lib/generate-routable-drawer-route.js +0 -52
  744. package/esm2022/drawer/lib/generate-routable-drawer-route.js.map +0 -1
  745. package/esm2022/drawer/lib/routable-drawer.js +0 -91
  746. package/esm2022/drawer/lib/routable-drawer.js.map +0 -1
  747. package/esm2022/drawer/malva-ui-core-drawer.js +0 -5
  748. package/esm2022/drawer/malva-ui-core-drawer.js.map +0 -1
  749. package/esm2022/dropdown/index.js +0 -10
  750. package/esm2022/dropdown/index.js.map +0 -1
  751. package/esm2022/dropdown/lib/active-descendant.js +0 -92
  752. package/esm2022/dropdown/lib/active-descendant.js.map +0 -1
  753. package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js +0 -295
  754. package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js.map +0 -1
  755. package/esm2022/dropdown/lib/highlight-match.pipe.js +0 -36
  756. package/esm2022/dropdown/lib/highlight-match.pipe.js.map +0 -1
  757. package/esm2022/dropdown/lib/option-matcher.js +0 -124
  758. package/esm2022/dropdown/lib/option-matcher.js.map +0 -1
  759. package/esm2022/dropdown/lib/options-adapter.js +0 -356
  760. package/esm2022/dropdown/lib/options-adapter.js.map +0 -1
  761. package/esm2022/dropdown/lib/options-result.js +0 -11
  762. package/esm2022/dropdown/lib/options-result.js.map +0 -1
  763. package/esm2022/dropdown/lib/reconciliation.js +0 -32
  764. package/esm2022/dropdown/lib/reconciliation.js.map +0 -1
  765. package/esm2022/dropdown/lib/select-data-source.js +0 -21
  766. package/esm2022/dropdown/lib/select-data-source.js.map +0 -1
  767. package/esm2022/dropdown/lib/select-option.js +0 -25
  768. package/esm2022/dropdown/lib/select-option.js.map +0 -1
  769. package/esm2022/dropdown/malva-ui-core-dropdown.js +0 -5
  770. package/esm2022/dropdown/malva-ui-core-dropdown.js.map +0 -1
  771. package/esm2022/empty-state/index.js +0 -2
  772. package/esm2022/empty-state/index.js.map +0 -1
  773. package/esm2022/empty-state/lib/empty-state/empty-state.js +0 -43
  774. package/esm2022/empty-state/lib/empty-state/empty-state.js.map +0 -1
  775. package/esm2022/empty-state/malva-ui-core-empty-state.js +0 -5
  776. package/esm2022/empty-state/malva-ui-core-empty-state.js.map +0 -1
  777. package/esm2022/expand/index.js +0 -3
  778. package/esm2022/expand/index.js.map +0 -1
  779. package/esm2022/expand/lib/expand/expand-content.js +0 -33
  780. package/esm2022/expand/lib/expand/expand-content.js.map +0 -1
  781. package/esm2022/expand/lib/expand/expand.js +0 -93
  782. package/esm2022/expand/lib/expand/expand.js.map +0 -1
  783. package/esm2022/expand/malva-ui-core-expand.js +0 -5
  784. package/esm2022/expand/malva-ui-core-expand.js.map +0 -1
  785. package/esm2022/file-upload/index.js +0 -5
  786. package/esm2022/file-upload/index.js.map +0 -1
  787. package/esm2022/file-upload/lib/file-upload/file-upload.js +0 -324
  788. package/esm2022/file-upload/lib/file-upload/file-upload.js.map +0 -1
  789. package/esm2022/file-upload/lib/file-upload/file-upload.types.js +0 -1
  790. package/esm2022/file-upload/lib/file-upload/file-upload.types.js.map +0 -1
  791. package/esm2022/file-upload/lib/file-upload-action.js +0 -65
  792. package/esm2022/file-upload/lib/file-upload-action.js.map +0 -1
  793. package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js +0 -55
  794. package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js.map +0 -1
  795. package/esm2022/file-upload/malva-ui-core-file-upload.js +0 -5
  796. package/esm2022/file-upload/malva-ui-core-file-upload.js.map +0 -1
  797. package/esm2022/filter/index.js +0 -4
  798. package/esm2022/filter/index.js.map +0 -1
  799. package/esm2022/filter/lib/filter/filter.js +0 -552
  800. package/esm2022/filter/lib/filter/filter.js.map +0 -1
  801. package/esm2022/filter/lib/filter.types.js +0 -1
  802. package/esm2022/filter/lib/filter.types.js.map +0 -1
  803. package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js +0 -518
  804. package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js.map +0 -1
  805. package/esm2022/filter/malva-ui-core-filter.js +0 -5
  806. package/esm2022/filter/malva-ui-core-filter.js.map +0 -1
  807. package/esm2022/form/index.js +0 -7
  808. package/esm2022/form/index.js.map +0 -1
  809. package/esm2022/form/lib/fieldset/fieldset.js +0 -101
  810. package/esm2022/form/lib/fieldset/fieldset.js.map +0 -1
  811. package/esm2022/form/lib/fieldset-span.js +0 -49
  812. package/esm2022/form/lib/fieldset-span.js.map +0 -1
  813. package/esm2022/form/lib/form/form.js +0 -60
  814. package/esm2022/form/lib/form/form.js.map +0 -1
  815. package/esm2022/form/lib/form-actions.js +0 -34
  816. package/esm2022/form/lib/form-actions.js.map +0 -1
  817. package/esm2022/form/lib/form-gap.js +0 -15
  818. package/esm2022/form/lib/form-gap.js.map +0 -1
  819. package/esm2022/form/lib/form-header.js +0 -27
  820. package/esm2022/form/lib/form-header.js.map +0 -1
  821. package/esm2022/form/lib/form.types.js +0 -1
  822. package/esm2022/form/lib/form.types.js.map +0 -1
  823. package/esm2022/form/malva-ui-core-form.js +0 -5
  824. package/esm2022/form/malva-ui-core-form.js.map +0 -1
  825. package/esm2022/form-utils/index.js +0 -16
  826. package/esm2022/form-utils/index.js.map +0 -1
  827. package/esm2022/form-utils/lib/aria-value-bridge.js +0 -57
  828. package/esm2022/form-utils/lib/aria-value-bridge.js.map +0 -1
  829. package/esm2022/form-utils/lib/description/description.js +0 -24
  830. package/esm2022/form-utils/lib/description/description.js.map +0 -1
  831. package/esm2022/form-utils/lib/focusable-group-base.js +0 -87
  832. package/esm2022/form-utils/lib/focusable-group-base.js.map +0 -1
  833. package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js +0 -192
  834. package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js.map +0 -1
  835. package/esm2022/form-utils/lib/form-control-sides.js +0 -34
  836. package/esm2022/form-utils/lib/form-control-sides.js.map +0 -1
  837. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js +0 -14
  838. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js.map +0 -1
  839. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js +0 -47
  840. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js.map +0 -1
  841. package/esm2022/form-utils/lib/form-field/form-field.js +0 -245
  842. package/esm2022/form-utils/lib/form-field/form-field.js.map +0 -1
  843. package/esm2022/form-utils/lib/hint/hint.js +0 -11
  844. package/esm2022/form-utils/lib/hint/hint.js.map +0 -1
  845. package/esm2022/form-utils/lib/label/label.js +0 -55
  846. package/esm2022/form-utils/lib/label/label.js.map +0 -1
  847. package/esm2022/form-utils/lib/message/message.js +0 -20
  848. package/esm2022/form-utils/lib/message/message.js.map +0 -1
  849. package/esm2022/form-utils/lib/models/error-display-strategy.js +0 -1
  850. package/esm2022/form-utils/lib/models/error-display-strategy.js.map +0 -1
  851. package/esm2022/form-utils/lib/models/form-control-connector.js +0 -3
  852. package/esm2022/form-utils/lib/models/form-control-connector.js.map +0 -1
  853. package/esm2022/form-utils/lib/models/form-state.js +0 -1
  854. package/esm2022/form-utils/lib/models/form-state.js.map +0 -1
  855. package/esm2022/form-utils/lib/selection.service.js +0 -81
  856. package/esm2022/form-utils/lib/selection.service.js.map +0 -1
  857. package/esm2022/form-utils/malva-ui-core-form-utils.js +0 -5
  858. package/esm2022/form-utils/malva-ui-core-form-utils.js.map +0 -1
  859. package/esm2022/form-utils/testing/index.js +0 -2
  860. package/esm2022/form-utils/testing/index.js.map +0 -1
  861. package/esm2022/form-utils/testing/lib/forms-binding-matrix.js +0 -32
  862. package/esm2022/form-utils/testing/lib/forms-binding-matrix.js.map +0 -1
  863. package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js +0 -5
  864. package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js.map +0 -1
  865. package/esm2022/index.js +0 -70
  866. package/esm2022/index.js.map +0 -1
  867. package/esm2022/input/index.js +0 -4
  868. package/esm2022/input/index.js.map +0 -1
  869. package/esm2022/input/lib/input/input-native.js +0 -49
  870. package/esm2022/input/lib/input/input-native.js.map +0 -1
  871. package/esm2022/input/lib/input/input-value-accessor.js +0 -4
  872. package/esm2022/input/lib/input/input-value-accessor.js.map +0 -1
  873. package/esm2022/input/lib/input/input.js +0 -277
  874. package/esm2022/input/lib/input/input.js.map +0 -1
  875. package/esm2022/input/lib/input/password-strength.js +0 -46
  876. package/esm2022/input/lib/input/password-strength.js.map +0 -1
  877. package/esm2022/input/malva-ui-core-input.js +0 -5
  878. package/esm2022/input/malva-ui-core-input.js.map +0 -1
  879. package/esm2022/kbd/index.js +0 -2
  880. package/esm2022/kbd/index.js.map +0 -1
  881. package/esm2022/kbd/lib/kbd/kbd.js +0 -124
  882. package/esm2022/kbd/lib/kbd/kbd.js.map +0 -1
  883. package/esm2022/kbd/malva-ui-core-kbd.js +0 -5
  884. package/esm2022/kbd/malva-ui-core-kbd.js.map +0 -1
  885. package/esm2022/layout/index.js +0 -5
  886. package/esm2022/layout/index.js.map +0 -1
  887. package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js +0 -14
  888. package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js.map +0 -1
  889. package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js +0 -14
  890. package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js.map +0 -1
  891. package/esm2022/layout/lib/layout/layout.js +0 -43
  892. package/esm2022/layout/lib/layout/layout.js.map +0 -1
  893. package/esm2022/layout/lib/layout/services/theme.service.js +0 -121
  894. package/esm2022/layout/lib/layout/services/theme.service.js.map +0 -1
  895. package/esm2022/layout/malva-ui-core-layout.js +0 -5
  896. package/esm2022/layout/malva-ui-core-layout.js.map +0 -1
  897. package/esm2022/link/index.js +0 -3
  898. package/esm2022/link/index.js.map +0 -1
  899. package/esm2022/link/lib/link/link.directives.js +0 -24
  900. package/esm2022/link/lib/link/link.directives.js.map +0 -1
  901. package/esm2022/link/lib/link/link.js +0 -61
  902. package/esm2022/link/lib/link/link.js.map +0 -1
  903. package/esm2022/link/malva-ui-core-link.js +0 -5
  904. package/esm2022/link/malva-ui-core-link.js.map +0 -1
  905. package/esm2022/list/index.js +0 -14
  906. package/esm2022/list/index.js.map +0 -1
  907. package/esm2022/list/lib/list/list.js +0 -28
  908. package/esm2022/list/lib/list/list.js.map +0 -1
  909. package/esm2022/list/lib/list-item/list-item.js +0 -125
  910. package/esm2022/list/lib/list-item/list-item.js.map +0 -1
  911. package/esm2022/list/lib/list-item-actions.js +0 -23
  912. package/esm2022/list/lib/list-item-actions.js.map +0 -1
  913. package/esm2022/list/lib/list-item-byline.js +0 -13
  914. package/esm2022/list/lib/list-item-byline.js.map +0 -1
  915. package/esm2022/list/lib/list-item-group/list-item-group.js +0 -25
  916. package/esm2022/list/lib/list-item-group/list-item-group.js.map +0 -1
  917. package/esm2022/list/lib/list-item-link/list-item-link.js +0 -20
  918. package/esm2022/list/lib/list-item-link/list-item-link.js.map +0 -1
  919. package/esm2022/list/lib/list-item-media.js +0 -13
  920. package/esm2022/list/lib/list-item-media.js.map +0 -1
  921. package/esm2022/list/lib/list-item-meta.js +0 -13
  922. package/esm2022/list/lib/list-item-meta.js.map +0 -1
  923. package/esm2022/list/lib/list-item-prefix.js +0 -13
  924. package/esm2022/list/lib/list-item-prefix.js.map +0 -1
  925. package/esm2022/list/lib/list-item-suffix.js +0 -13
  926. package/esm2022/list/lib/list-item-suffix.js.map +0 -1
  927. package/esm2022/list/lib/list-item-template.js +0 -14
  928. package/esm2022/list/lib/list-item-template.js.map +0 -1
  929. package/esm2022/list/lib/list-item-title.js +0 -13
  930. package/esm2022/list/lib/list-item-title.js.map +0 -1
  931. package/esm2022/list/lib/list-selectable.js +0 -116
  932. package/esm2022/list/lib/list-selectable.js.map +0 -1
  933. package/esm2022/list/malva-ui-core-list.js +0 -5
  934. package/esm2022/list/malva-ui-core-list.js.map +0 -1
  935. package/esm2022/loader/index.js +0 -2
  936. package/esm2022/loader/index.js.map +0 -1
  937. package/esm2022/loader/lib/loader/loader.js +0 -134
  938. package/esm2022/loader/lib/loader/loader.js.map +0 -1
  939. package/esm2022/loader/malva-ui-core-loader.js +0 -5
  940. package/esm2022/loader/malva-ui-core-loader.js.map +0 -1
  941. package/esm2022/malva-ui-core.js +0 -5
  942. package/esm2022/malva-ui-core.js.map +0 -1
  943. package/esm2022/menu/index.js +0 -10
  944. package/esm2022/menu/index.js.map +0 -1
  945. package/esm2022/menu/lib/menu/menu-group-label.js +0 -35
  946. package/esm2022/menu/lib/menu/menu-group-label.js.map +0 -1
  947. package/esm2022/menu/lib/menu/menu-group.js +0 -44
  948. package/esm2022/menu/lib/menu/menu-group.js.map +0 -1
  949. package/esm2022/menu/lib/menu/menu-item.js +0 -117
  950. package/esm2022/menu/lib/menu/menu-item.js.map +0 -1
  951. package/esm2022/menu/lib/menu/menu-separator.js +0 -41
  952. package/esm2022/menu/lib/menu/menu-separator.js.map +0 -1
  953. package/esm2022/menu/lib/menu/menu-trigger.js +0 -653
  954. package/esm2022/menu/lib/menu/menu-trigger.js.map +0 -1
  955. package/esm2022/menu/lib/menu/menu.js +0 -308
  956. package/esm2022/menu/lib/menu/menu.js.map +0 -1
  957. package/esm2022/menu/lib/menu/menu.types.js +0 -4
  958. package/esm2022/menu/lib/menu/menu.types.js.map +0 -1
  959. package/esm2022/menu/lib/menu/menubar.js +0 -257
  960. package/esm2022/menu/lib/menu/menubar.js.map +0 -1
  961. package/esm2022/menu/lib/menu/menubar.types.js +0 -4
  962. package/esm2022/menu/lib/menu/menubar.types.js.map +0 -1
  963. package/esm2022/menu/lib/menu/submenu-aim.js +0 -30
  964. package/esm2022/menu/lib/menu/submenu-aim.js.map +0 -1
  965. package/esm2022/menu/malva-ui-core-menu.js +0 -5
  966. package/esm2022/menu/malva-ui-core-menu.js.map +0 -1
  967. package/esm2022/notification/index.js +0 -5
  968. package/esm2022/notification/index.js.map +0 -1
  969. package/esm2022/notification/lib/notification-item/notification-item.js +0 -65
  970. package/esm2022/notification/lib/notification-item/notification-item.js.map +0 -1
  971. package/esm2022/notification/lib/notification-ref.js +0 -13
  972. package/esm2022/notification/lib/notification-ref.js.map +0 -1
  973. package/esm2022/notification/lib/notification.service.js +0 -118
  974. package/esm2022/notification/lib/notification.service.js.map +0 -1
  975. package/esm2022/notification/lib/notification.types.js +0 -6
  976. package/esm2022/notification/lib/notification.types.js.map +0 -1
  977. package/esm2022/notification/malva-ui-core-notification.js +0 -5
  978. package/esm2022/notification/malva-ui-core-notification.js.map +0 -1
  979. package/esm2022/number-input/index.js +0 -2
  980. package/esm2022/number-input/index.js.map +0 -1
  981. package/esm2022/number-input/lib/number-input/number-input.js +0 -395
  982. package/esm2022/number-input/lib/number-input/number-input.js.map +0 -1
  983. package/esm2022/number-input/malva-ui-core-number-input.js +0 -5
  984. package/esm2022/number-input/malva-ui-core-number-input.js.map +0 -1
  985. package/esm2022/page/index.js +0 -15
  986. package/esm2022/page/index.js.map +0 -1
  987. package/esm2022/page/lib/page/page-scroll.token.js +0 -9
  988. package/esm2022/page/lib/page/page-scroll.token.js.map +0 -1
  989. package/esm2022/page/lib/page/page-snap-controller.js +0 -170
  990. package/esm2022/page/lib/page/page-snap-controller.js.map +0 -1
  991. package/esm2022/page/lib/page/page-snap.directive.js +0 -65
  992. package/esm2022/page/lib/page/page-snap.directive.js.map +0 -1
  993. package/esm2022/page/lib/page/page.js +0 -173
  994. package/esm2022/page/lib/page/page.js.map +0 -1
  995. package/esm2022/page/lib/page-content/page-aside.js +0 -13
  996. package/esm2022/page/lib/page-content/page-aside.js.map +0 -1
  997. package/esm2022/page/lib/page-content/page-content.js +0 -72
  998. package/esm2022/page/lib/page-content/page-content.js.map +0 -1
  999. package/esm2022/page/lib/page-dock/page-dock.js +0 -128
  1000. package/esm2022/page/lib/page-dock/page-dock.js.map +0 -1
  1001. package/esm2022/page/lib/page-dock/page-dock.slots.js +0 -39
  1002. package/esm2022/page/lib/page-dock/page-dock.slots.js.map +0 -1
  1003. package/esm2022/page/lib/page-header/page-header.directives.js +0 -88
  1004. package/esm2022/page/lib/page-header/page-header.directives.js.map +0 -1
  1005. package/esm2022/page/lib/page-header/page-header.js +0 -124
  1006. package/esm2022/page/lib/page-header/page-header.js.map +0 -1
  1007. package/esm2022/page/lib/page-shell/page-shell-color.js +0 -193
  1008. package/esm2022/page/lib/page-shell/page-shell-color.js.map +0 -1
  1009. package/esm2022/page/lib/page-shell/page-shell-css-color.js +0 -207
  1010. package/esm2022/page/lib/page-shell/page-shell-css-color.js.map +0 -1
  1011. package/esm2022/page/lib/page-shell/page-shell.js +0 -131
  1012. package/esm2022/page/lib/page-shell/page-shell.js.map +0 -1
  1013. package/esm2022/page/lib/page-shell/page-shell.slots.js +0 -41
  1014. package/esm2022/page/lib/page-shell/page-shell.slots.js.map +0 -1
  1015. package/esm2022/page/lib/page-summary/page-summary-item.js +0 -26
  1016. package/esm2022/page/lib/page-summary/page-summary-item.js.map +0 -1
  1017. package/esm2022/page/lib/page-summary/page-summary.js +0 -87
  1018. package/esm2022/page/lib/page-summary/page-summary.js.map +0 -1
  1019. package/esm2022/page/malva-ui-core-page.js +0 -5
  1020. package/esm2022/page/malva-ui-core-page.js.map +0 -1
  1021. package/esm2022/pagination/index.js +0 -5
  1022. package/esm2022/pagination/index.js.map +0 -1
  1023. package/esm2022/pagination/lib/pagination/pagination.directives.js +0 -58
  1024. package/esm2022/pagination/lib/pagination/pagination.directives.js.map +0 -1
  1025. package/esm2022/pagination/lib/pagination/pagination.js +0 -293
  1026. package/esm2022/pagination/lib/pagination/pagination.js.map +0 -1
  1027. package/esm2022/pagination/lib/pagination/pagination.model.js +0 -1
  1028. package/esm2022/pagination/lib/pagination/pagination.model.js.map +0 -1
  1029. package/esm2022/pagination/lib/pagination/pagination.service.js +0 -108
  1030. package/esm2022/pagination/lib/pagination/pagination.service.js.map +0 -1
  1031. package/esm2022/pagination/malva-ui-core-pagination.js +0 -5
  1032. package/esm2022/pagination/malva-ui-core-pagination.js.map +0 -1
  1033. package/esm2022/pin-input/index.js +0 -3
  1034. package/esm2022/pin-input/index.js.map +0 -1
  1035. package/esm2022/pin-input/lib/pin-input/pin-input-separator.js +0 -31
  1036. package/esm2022/pin-input/lib/pin-input/pin-input-separator.js.map +0 -1
  1037. package/esm2022/pin-input/lib/pin-input/pin-input.js +0 -365
  1038. package/esm2022/pin-input/lib/pin-input/pin-input.js.map +0 -1
  1039. package/esm2022/pin-input/malva-ui-core-pin-input.js +0 -5
  1040. package/esm2022/pin-input/malva-ui-core-pin-input.js.map +0 -1
  1041. package/esm2022/popup/index.js +0 -10
  1042. package/esm2022/popup/index.js.map +0 -1
  1043. package/esm2022/popup/lib/popup/popup.js +0 -500
  1044. package/esm2022/popup/lib/popup/popup.js.map +0 -1
  1045. package/esm2022/popup/lib/popup-container/popup-container.js +0 -169
  1046. package/esm2022/popup/lib/popup-container/popup-container.js.map +0 -1
  1047. package/esm2022/popup/lib/popup-container/popup-container.token.js +0 -9
  1048. package/esm2022/popup/lib/popup-container/popup-container.token.js.map +0 -1
  1049. package/esm2022/popup/lib/popup-content.js +0 -14
  1050. package/esm2022/popup/lib/popup-content.js.map +0 -1
  1051. package/esm2022/popup/lib/popup-header-content.js +0 -26
  1052. package/esm2022/popup/lib/popup-header-content.js.map +0 -1
  1053. package/esm2022/popup/lib/popup-pinned-content.js +0 -25
  1054. package/esm2022/popup/lib/popup-pinned-content.js.map +0 -1
  1055. package/esm2022/popup/lib/popup-positions.js +0 -252
  1056. package/esm2022/popup/lib/popup-positions.js.map +0 -1
  1057. package/esm2022/popup/lib/popup-trigger/popup-trigger.js +0 -308
  1058. package/esm2022/popup/lib/popup-trigger/popup-trigger.js.map +0 -1
  1059. package/esm2022/popup/lib/popup.service.js +0 -188
  1060. package/esm2022/popup/lib/popup.service.js.map +0 -1
  1061. package/esm2022/popup/malva-ui-core-popup.js +0 -5
  1062. package/esm2022/popup/malva-ui-core-popup.js.map +0 -1
  1063. package/esm2022/progress/index.js +0 -2
  1064. package/esm2022/progress/index.js.map +0 -1
  1065. package/esm2022/progress/lib/progress/progress.js +0 -102
  1066. package/esm2022/progress/lib/progress/progress.js.map +0 -1
  1067. package/esm2022/progress/malva-ui-core-progress.js +0 -5
  1068. package/esm2022/progress/malva-ui-core-progress.js.map +0 -1
  1069. package/esm2022/radio/index.js +0 -3
  1070. package/esm2022/radio/index.js.map +0 -1
  1071. package/esm2022/radio/lib/radio/radio.js +0 -134
  1072. package/esm2022/radio/lib/radio/radio.js.map +0 -1
  1073. package/esm2022/radio/lib/radio-group/radio-group.js +0 -176
  1074. package/esm2022/radio/lib/radio-group/radio-group.js.map +0 -1
  1075. package/esm2022/radio/lib/radio-group-token.js +0 -3
  1076. package/esm2022/radio/lib/radio-group-token.js.map +0 -1
  1077. package/esm2022/radio/malva-ui-core-radio.js +0 -5
  1078. package/esm2022/radio/malva-ui-core-radio.js.map +0 -1
  1079. package/esm2022/rating/index.js +0 -2
  1080. package/esm2022/rating/index.js.map +0 -1
  1081. package/esm2022/rating/lib/rating/rating.js +0 -208
  1082. package/esm2022/rating/lib/rating/rating.js.map +0 -1
  1083. package/esm2022/rating/malva-ui-core-rating.js +0 -5
  1084. package/esm2022/rating/malva-ui-core-rating.js.map +0 -1
  1085. package/esm2022/scrollbar/index.js +0 -2
  1086. package/esm2022/scrollbar/index.js.map +0 -1
  1087. package/esm2022/scrollbar/lib/scrollbar/scrollbar.js +0 -388
  1088. package/esm2022/scrollbar/lib/scrollbar/scrollbar.js.map +0 -1
  1089. package/esm2022/scrollbar/malva-ui-core-scrollbar.js +0 -5
  1090. package/esm2022/scrollbar/malva-ui-core-scrollbar.js.map +0 -1
  1091. package/esm2022/search-field/index.js +0 -3
  1092. package/esm2022/search-field/index.js.map +0 -1
  1093. package/esm2022/search-field/lib/search-field/search-field.js +0 -535
  1094. package/esm2022/search-field/lib/search-field/search-field.js.map +0 -1
  1095. package/esm2022/search-field/lib/search-field/search-overlay-content.js +0 -35
  1096. package/esm2022/search-field/lib/search-field/search-overlay-content.js.map +0 -1
  1097. package/esm2022/search-field/malva-ui-core-search-field.js +0 -5
  1098. package/esm2022/search-field/malva-ui-core-search-field.js.map +0 -1
  1099. package/esm2022/segmented/index.js +0 -5
  1100. package/esm2022/segmented/index.js.map +0 -1
  1101. package/esm2022/segmented/lib/segmented/segmented.js +0 -248
  1102. package/esm2022/segmented/lib/segmented/segmented.js.map +0 -1
  1103. package/esm2022/segmented/lib/segmented-item/segmented-item.js +0 -194
  1104. package/esm2022/segmented/lib/segmented-item/segmented-item.js.map +0 -1
  1105. package/esm2022/segmented/lib/segmented-token.js +0 -4
  1106. package/esm2022/segmented/lib/segmented-token.js.map +0 -1
  1107. package/esm2022/segmented/lib/segmented.types.js +0 -1
  1108. package/esm2022/segmented/lib/segmented.types.js.map +0 -1
  1109. package/esm2022/segmented/malva-ui-core-segmented.js +0 -5
  1110. package/esm2022/segmented/malva-ui-core-segmented.js.map +0 -1
  1111. package/esm2022/select/index.js +0 -4
  1112. package/esm2022/select/index.js.map +0 -1
  1113. package/esm2022/select/lib/select/select.js +0 -685
  1114. package/esm2022/select/lib/select/select.js.map +0 -1
  1115. package/esm2022/select/lib/select-option.js +0 -2
  1116. package/esm2022/select/lib/select-option.js.map +0 -1
  1117. package/esm2022/select/lib/select-template.directives.js +0 -34
  1118. package/esm2022/select/lib/select-template.directives.js.map +0 -1
  1119. package/esm2022/select/malva-ui-core-select.js +0 -5
  1120. package/esm2022/select/malva-ui-core-select.js.map +0 -1
  1121. package/esm2022/sidebar/index.js +0 -16
  1122. package/esm2022/sidebar/index.js.map +0 -1
  1123. package/esm2022/sidebar/lib/sidebar/sidebar.js +0 -251
  1124. package/esm2022/sidebar/lib/sidebar/sidebar.js.map +0 -1
  1125. package/esm2022/sidebar/lib/sidebar-content.js +0 -37
  1126. package/esm2022/sidebar/lib/sidebar-content.js.map +0 -1
  1127. package/esm2022/sidebar/lib/sidebar-context.js +0 -3
  1128. package/esm2022/sidebar/lib/sidebar-context.js.map +0 -1
  1129. package/esm2022/sidebar/lib/sidebar-footer.js +0 -20
  1130. package/esm2022/sidebar/lib/sidebar-footer.js.map +0 -1
  1131. package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js +0 -341
  1132. package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js.map +0 -1
  1133. package/esm2022/sidebar/lib/sidebar-header.js +0 -20
  1134. package/esm2022/sidebar/lib/sidebar-header.js.map +0 -1
  1135. package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js +0 -216
  1136. package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js.map +0 -1
  1137. package/esm2022/sidebar/lib/sidebar-item-host.js +0 -39
  1138. package/esm2022/sidebar/lib/sidebar-item-host.js.map +0 -1
  1139. package/esm2022/sidebar/lib/sidebar-item-icon.js +0 -14
  1140. package/esm2022/sidebar/lib/sidebar-item-icon.js.map +0 -1
  1141. package/esm2022/sidebar/lib/sidebar-mode.js +0 -1
  1142. package/esm2022/sidebar/lib/sidebar-mode.js.map +0 -1
  1143. package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js +0 -202
  1144. package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js.map +0 -1
  1145. package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js +0 -159
  1146. package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js.map +0 -1
  1147. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js +0 -35
  1148. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js.map +0 -1
  1149. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js +0 -107
  1150. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js.map +0 -1
  1151. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js +0 -1
  1152. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js.map +0 -1
  1153. package/esm2022/sidebar/malva-ui-core-sidebar.js +0 -5
  1154. package/esm2022/sidebar/malva-ui-core-sidebar.js.map +0 -1
  1155. package/esm2022/skeleton/index.js +0 -2
  1156. package/esm2022/skeleton/index.js.map +0 -1
  1157. package/esm2022/skeleton/lib/skeleton/skeleton.js +0 -78
  1158. package/esm2022/skeleton/lib/skeleton/skeleton.js.map +0 -1
  1159. package/esm2022/skeleton/malva-ui-core-skeleton.js +0 -5
  1160. package/esm2022/skeleton/malva-ui-core-skeleton.js.map +0 -1
  1161. package/esm2022/slider/index.js +0 -3
  1162. package/esm2022/slider/index.js.map +0 -1
  1163. package/esm2022/slider/lib/slider/slider-tooltip-def.js +0 -31
  1164. package/esm2022/slider/lib/slider/slider-tooltip-def.js.map +0 -1
  1165. package/esm2022/slider/lib/slider/slider.js +0 -468
  1166. package/esm2022/slider/lib/slider/slider.js.map +0 -1
  1167. package/esm2022/slider/malva-ui-core-slider.js +0 -5
  1168. package/esm2022/slider/malva-ui-core-slider.js.map +0 -1
  1169. package/esm2022/split-pane/index.js +0 -4
  1170. package/esm2022/split-pane/index.js.map +0 -1
  1171. package/esm2022/split-pane/lib/split-pane/split-pane-panel.js +0 -49
  1172. package/esm2022/split-pane/lib/split-pane/split-pane-panel.js.map +0 -1
  1173. package/esm2022/split-pane/lib/split-pane/split-pane.js +0 -290
  1174. package/esm2022/split-pane/lib/split-pane/split-pane.js.map +0 -1
  1175. package/esm2022/split-pane/lib/split-pane/split-pane.types.js +0 -1
  1176. package/esm2022/split-pane/lib/split-pane/split-pane.types.js.map +0 -1
  1177. package/esm2022/split-pane/malva-ui-core-split-pane.js +0 -5
  1178. package/esm2022/split-pane/malva-ui-core-split-pane.js.map +0 -1
  1179. package/esm2022/status-indicator/index.js +0 -2
  1180. package/esm2022/status-indicator/index.js.map +0 -1
  1181. package/esm2022/status-indicator/lib/status-indicator/status-indicator.js +0 -71
  1182. package/esm2022/status-indicator/lib/status-indicator/status-indicator.js.map +0 -1
  1183. package/esm2022/status-indicator/malva-ui-core-status-indicator.js +0 -5
  1184. package/esm2022/status-indicator/malva-ui-core-status-indicator.js.map +0 -1
  1185. package/esm2022/stepper/index.js +0 -5
  1186. package/esm2022/stepper/index.js.map +0 -1
  1187. package/esm2022/stepper/lib/stepper/step-header.js +0 -46
  1188. package/esm2022/stepper/lib/stepper/step-header.js.map +0 -1
  1189. package/esm2022/stepper/lib/stepper/step.js +0 -65
  1190. package/esm2022/stepper/lib/stepper/step.js.map +0 -1
  1191. package/esm2022/stepper/lib/stepper/stepper-token.js +0 -4
  1192. package/esm2022/stepper/lib/stepper/stepper-token.js.map +0 -1
  1193. package/esm2022/stepper/lib/stepper/stepper.js +0 -216
  1194. package/esm2022/stepper/lib/stepper/stepper.js.map +0 -1
  1195. package/esm2022/stepper/lib/stepper/stepper.types.js +0 -1
  1196. package/esm2022/stepper/lib/stepper/stepper.types.js.map +0 -1
  1197. package/esm2022/stepper/malva-ui-core-stepper.js +0 -5
  1198. package/esm2022/stepper/malva-ui-core-stepper.js.map +0 -1
  1199. package/esm2022/switch/index.js +0 -3
  1200. package/esm2022/switch/index.js.map +0 -1
  1201. package/esm2022/switch/lib/switch/switch.js +0 -190
  1202. package/esm2022/switch/lib/switch/switch.js.map +0 -1
  1203. package/esm2022/switch/lib/switch-group/switch-group.js +0 -68
  1204. package/esm2022/switch/lib/switch-group/switch-group.js.map +0 -1
  1205. package/esm2022/switch/lib/switch-group-token.js +0 -3
  1206. package/esm2022/switch/lib/switch-group-token.js.map +0 -1
  1207. package/esm2022/switch/malva-ui-core-switch.js +0 -5
  1208. package/esm2022/switch/malva-ui-core-switch.js.map +0 -1
  1209. package/esm2022/tabs/index.js +0 -9
  1210. package/esm2022/tabs/index.js.map +0 -1
  1211. package/esm2022/tabs/lib/tab/tab.js +0 -72
  1212. package/esm2022/tabs/lib/tab/tab.js.map +0 -1
  1213. package/esm2022/tabs/lib/tab-content/tab-content.js +0 -19
  1214. package/esm2022/tabs/lib/tab-content/tab-content.js.map +0 -1
  1215. package/esm2022/tabs/lib/tab-content-def.js +0 -14
  1216. package/esm2022/tabs/lib/tab-content-def.js.map +0 -1
  1217. package/esm2022/tabs/lib/tab-def.js +0 -17
  1218. package/esm2022/tabs/lib/tab-def.js.map +0 -1
  1219. package/esm2022/tabs/lib/tab-group-token.js +0 -3
  1220. package/esm2022/tabs/lib/tab-group-token.js.map +0 -1
  1221. package/esm2022/tabs/lib/tab-item/tab-item.js +0 -44
  1222. package/esm2022/tabs/lib/tab-item/tab-item.js.map +0 -1
  1223. package/esm2022/tabs/lib/tabs/tabs.js +0 -542
  1224. package/esm2022/tabs/lib/tabs/tabs.js.map +0 -1
  1225. package/esm2022/tabs/lib/tabs.service.js +0 -83
  1226. package/esm2022/tabs/lib/tabs.service.js.map +0 -1
  1227. package/esm2022/tabs/malva-ui-core-tabs.js +0 -5
  1228. package/esm2022/tabs/malva-ui-core-tabs.js.map +0 -1
  1229. package/esm2022/textarea/index.js +0 -2
  1230. package/esm2022/textarea/index.js.map +0 -1
  1231. package/esm2022/textarea/lib/textarea/textarea.js +0 -194
  1232. package/esm2022/textarea/lib/textarea/textarea.js.map +0 -1
  1233. package/esm2022/textarea/malva-ui-core-textarea.js +0 -5
  1234. package/esm2022/textarea/malva-ui-core-textarea.js.map +0 -1
  1235. package/esm2022/tile/index.js +0 -3
  1236. package/esm2022/tile/index.js.map +0 -1
  1237. package/esm2022/tile/lib/tile/tile.js +0 -39
  1238. package/esm2022/tile/lib/tile/tile.js.map +0 -1
  1239. package/esm2022/tile/lib/tile-header.js +0 -14
  1240. package/esm2022/tile/lib/tile-header.js.map +0 -1
  1241. package/esm2022/tile/malva-ui-core-tile.js +0 -5
  1242. package/esm2022/tile/malva-ui-core-tile.js.map +0 -1
  1243. package/esm2022/time-picker/index.js +0 -2
  1244. package/esm2022/time-picker/index.js.map +0 -1
  1245. package/esm2022/time-picker/lib/time-picker/time-picker.js +0 -310
  1246. package/esm2022/time-picker/lib/time-picker/time-picker.js.map +0 -1
  1247. package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js +0 -216
  1248. package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js.map +0 -1
  1249. package/esm2022/time-picker/malva-ui-core-time-picker.js +0 -5
  1250. package/esm2022/time-picker/malva-ui-core-time-picker.js.map +0 -1
  1251. package/esm2022/timeline/index.js +0 -6
  1252. package/esm2022/timeline/index.js.map +0 -1
  1253. package/esm2022/timeline/lib/timeline/timeline-item-icon.js +0 -31
  1254. package/esm2022/timeline/lib/timeline/timeline-item-icon.js.map +0 -1
  1255. package/esm2022/timeline/lib/timeline/timeline-item-meta.js +0 -31
  1256. package/esm2022/timeline/lib/timeline/timeline-item-meta.js.map +0 -1
  1257. package/esm2022/timeline/lib/timeline/timeline-item.js +0 -69
  1258. package/esm2022/timeline/lib/timeline/timeline-item.js.map +0 -1
  1259. package/esm2022/timeline/lib/timeline/timeline.js +0 -36
  1260. package/esm2022/timeline/lib/timeline/timeline.js.map +0 -1
  1261. package/esm2022/timeline/lib/timeline/timeline.types.js +0 -1
  1262. package/esm2022/timeline/lib/timeline/timeline.types.js.map +0 -1
  1263. package/esm2022/timeline/malva-ui-core-timeline.js +0 -5
  1264. package/esm2022/timeline/malva-ui-core-timeline.js.map +0 -1
  1265. package/esm2022/title/index.js +0 -2
  1266. package/esm2022/title/index.js.map +0 -1
  1267. package/esm2022/title/lib/title/title.js +0 -171
  1268. package/esm2022/title/lib/title/title.js.map +0 -1
  1269. package/esm2022/title/malva-ui-core-title.js +0 -5
  1270. package/esm2022/title/malva-ui-core-title.js.map +0 -1
  1271. package/esm2022/toast/index.js +0 -13
  1272. package/esm2022/toast/index.js.map +0 -1
  1273. package/esm2022/toast/lib/abstract-toast-container.js +0 -50
  1274. package/esm2022/toast/lib/abstract-toast-container.js.map +0 -1
  1275. package/esm2022/toast/lib/abstract-toast-item.js +0 -75
  1276. package/esm2022/toast/lib/abstract-toast-item.js.map +0 -1
  1277. package/esm2022/toast/lib/abstract-toast.service.js +0 -176
  1278. package/esm2022/toast/lib/abstract-toast.service.js.map +0 -1
  1279. package/esm2022/toast/lib/toast-container/toast-container.js +0 -61
  1280. package/esm2022/toast/lib/toast-container/toast-container.js.map +0 -1
  1281. package/esm2022/toast/lib/toast-item/toast-item.js +0 -62
  1282. package/esm2022/toast/lib/toast-item/toast-item.js.map +0 -1
  1283. package/esm2022/toast/lib/toast-ref.js +0 -54
  1284. package/esm2022/toast/lib/toast-ref.js.map +0 -1
  1285. package/esm2022/toast/lib/toast-timer.js +0 -37
  1286. package/esm2022/toast/lib/toast-timer.js.map +0 -1
  1287. package/esm2022/toast/lib/toast.directives.js +0 -76
  1288. package/esm2022/toast/lib/toast.directives.js.map +0 -1
  1289. package/esm2022/toast/lib/toast.service.js +0 -127
  1290. package/esm2022/toast/lib/toast.service.js.map +0 -1
  1291. package/esm2022/toast/lib/toast.types.js +0 -39
  1292. package/esm2022/toast/lib/toast.types.js.map +0 -1
  1293. package/esm2022/toast/malva-ui-core-toast.js +0 -5
  1294. package/esm2022/toast/malva-ui-core-toast.js.map +0 -1
  1295. package/esm2022/tokenizer/index.js +0 -4
  1296. package/esm2022/tokenizer/index.js.map +0 -1
  1297. package/esm2022/tokenizer/lib/token/token.js +0 -123
  1298. package/esm2022/tokenizer/lib/token/token.js.map +0 -1
  1299. package/esm2022/tokenizer/lib/token-template.js +0 -23
  1300. package/esm2022/tokenizer/lib/token-template.js.map +0 -1
  1301. package/esm2022/tokenizer/lib/tokenizer/tokenizer.js +0 -324
  1302. package/esm2022/tokenizer/lib/tokenizer/tokenizer.js.map +0 -1
  1303. package/esm2022/tokenizer/malva-ui-core-tokenizer.js +0 -5
  1304. package/esm2022/tokenizer/malva-ui-core-tokenizer.js.map +0 -1
  1305. package/esm2022/toolbar/index.js +0 -4
  1306. package/esm2022/toolbar/index.js.map +0 -1
  1307. package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js +0 -13
  1308. package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js.map +0 -1
  1309. package/esm2022/toolbar/lib/toolbar/toolbar-widget.js +0 -106
  1310. package/esm2022/toolbar/lib/toolbar/toolbar-widget.js.map +0 -1
  1311. package/esm2022/toolbar/lib/toolbar/toolbar.js +0 -19
  1312. package/esm2022/toolbar/lib/toolbar/toolbar.js.map +0 -1
  1313. package/esm2022/toolbar/malva-ui-core-toolbar.js +0 -5
  1314. package/esm2022/toolbar/malva-ui-core-toolbar.js.map +0 -1
  1315. package/esm2022/tooltip/index.js +0 -4
  1316. package/esm2022/tooltip/index.js.map +0 -1
  1317. package/esm2022/tooltip/lib/tooltip/tooltip-panel.js +0 -69
  1318. package/esm2022/tooltip/lib/tooltip/tooltip-panel.js.map +0 -1
  1319. package/esm2022/tooltip/lib/tooltip/tooltip.js +0 -352
  1320. package/esm2022/tooltip/lib/tooltip/tooltip.js.map +0 -1
  1321. package/esm2022/tooltip/lib/tooltip/tooltip.types.js +0 -1
  1322. package/esm2022/tooltip/lib/tooltip/tooltip.types.js.map +0 -1
  1323. package/esm2022/tooltip/malva-ui-core-tooltip.js +0 -5
  1324. package/esm2022/tooltip/malva-ui-core-tooltip.js.map +0 -1
  1325. package/esm2022/tree/index.js +0 -5
  1326. package/esm2022/tree/index.js.map +0 -1
  1327. package/esm2022/tree/lib/tree/tree-context.js +0 -7
  1328. package/esm2022/tree/lib/tree/tree-context.js.map +0 -1
  1329. package/esm2022/tree/lib/tree/tree-node-def.js +0 -34
  1330. package/esm2022/tree/lib/tree/tree-node-def.js.map +0 -1
  1331. package/esm2022/tree/lib/tree/tree-node.js +0 -1
  1332. package/esm2022/tree/lib/tree/tree-node.js.map +0 -1
  1333. package/esm2022/tree/lib/tree/tree-subtree.js +0 -107
  1334. package/esm2022/tree/lib/tree/tree-subtree.js.map +0 -1
  1335. package/esm2022/tree/lib/tree/tree.js +0 -362
  1336. package/esm2022/tree/lib/tree/tree.js.map +0 -1
  1337. package/esm2022/tree/malva-ui-core-tree.js +0 -5
  1338. package/esm2022/tree/malva-ui-core-tree.js.map +0 -1
  1339. package/expand/index.d.ts +0 -2
  1340. package/expand/lib/expand/expand-content.d.ts +0 -26
  1341. package/expand/lib/expand/expand.d.ts +0 -74
  1342. package/expand/malva-ui-core-expand.d.ts +0 -5
  1343. package/file-upload/index.d.ts +0 -4
  1344. package/file-upload/lib/file-upload/file-upload.d.ts +0 -138
  1345. package/file-upload/lib/file-upload/file-upload.types.d.ts +0 -42
  1346. package/file-upload/lib/file-upload-action.d.ts +0 -53
  1347. package/file-upload/lib/file-upload-item/file-upload-item.d.ts +0 -30
  1348. package/file-upload/malva-ui-core-file-upload.d.ts +0 -5
  1349. package/filter/index.d.ts +0 -3
  1350. package/filter/lib/filter/filter.d.ts +0 -156
  1351. package/filter/lib/filter.types.d.ts +0 -75
  1352. package/filter/lib/smart-filter-bar/smart-filter-bar.d.ts +0 -153
  1353. package/filter/malva-ui-core-filter.d.ts +0 -5
  1354. package/form/index.d.ts +0 -6
  1355. package/form/lib/fieldset/fieldset.d.ts +0 -58
  1356. package/form/lib/fieldset-span.d.ts +0 -28
  1357. package/form/lib/form/form.d.ts +0 -37
  1358. package/form/lib/form-actions.d.ts +0 -20
  1359. package/form/lib/form-gap.d.ts +0 -5
  1360. package/form/lib/form-header.d.ts +0 -18
  1361. package/form/lib/form.types.d.ts +0 -13
  1362. package/form/malva-ui-core-form.d.ts +0 -5
  1363. package/form-utils/index.d.ts +0 -15
  1364. package/form-utils/lib/aria-value-bridge.d.ts +0 -45
  1365. package/form-utils/lib/description/description.d.ts +0 -16
  1366. package/form-utils/lib/focusable-group-base.d.ts +0 -76
  1367. package/form-utils/lib/form-control-base/signal-form-control-base.d.ts +0 -159
  1368. package/form-utils/lib/form-control-sides.d.ts +0 -20
  1369. package/form-utils/lib/form-control-wrapper/form-control-wrapper-control.d.ts +0 -6
  1370. package/form-utils/lib/form-control-wrapper/form-control-wrapper.d.ts +0 -20
  1371. package/form-utils/lib/form-field/form-field.d.ts +0 -68
  1372. package/form-utils/lib/hint/hint.d.ts +0 -5
  1373. package/form-utils/lib/label/label.d.ts +0 -22
  1374. package/form-utils/lib/message/message.d.ts +0 -7
  1375. package/form-utils/lib/models/error-display-strategy.d.ts +0 -1
  1376. package/form-utils/lib/models/form-control-connector.d.ts +0 -41
  1377. package/form-utils/lib/models/form-state.d.ts +0 -1
  1378. package/form-utils/lib/selection.service.d.ts +0 -27
  1379. package/form-utils/malva-ui-core-form-utils.d.ts +0 -5
  1380. package/form-utils/testing/index.d.ts +0 -1
  1381. package/form-utils/testing/lib/forms-binding-matrix.d.ts +0 -47
  1382. package/form-utils/testing/malva-ui-core-form-utils-testing.d.ts +0 -5
  1383. package/index.d.ts +0 -69
  1384. package/input/index.d.ts +0 -3
  1385. package/input/lib/input/input-native.d.ts +0 -36
  1386. package/input/lib/input/input-value-accessor.d.ts +0 -11
  1387. package/input/lib/input/input.d.ts +0 -189
  1388. package/input/lib/input/password-strength.d.ts +0 -34
  1389. package/input/malva-ui-core-input.d.ts +0 -5
  1390. package/kbd/index.d.ts +0 -1
  1391. package/kbd/lib/kbd/kbd.d.ts +0 -52
  1392. package/kbd/malva-ui-core-kbd.d.ts +0 -5
  1393. package/layout/index.d.ts +0 -4
  1394. package/layout/lib/layout/directives/MlvLayoutSide.d.ts +0 -6
  1395. package/layout/lib/layout/directives/MlvLayoutTop.d.ts +0 -6
  1396. package/layout/lib/layout/layout.d.ts +0 -20
  1397. package/layout/lib/layout/services/theme.service.d.ts +0 -33
  1398. package/layout/malva-ui-core-layout.d.ts +0 -5
  1399. package/link/index.d.ts +0 -2
  1400. package/link/lib/link/link.d.ts +0 -15
  1401. package/link/lib/link/link.directives.d.ts +0 -10
  1402. package/link/malva-ui-core-link.d.ts +0 -5
  1403. package/list/index.d.ts +0 -13
  1404. package/list/lib/list/list.d.ts +0 -25
  1405. package/list/lib/list-item/list-item.d.ts +0 -67
  1406. package/list/lib/list-item-actions.d.ts +0 -12
  1407. package/list/lib/list-item-byline.d.ts +0 -5
  1408. package/list/lib/list-item-group/list-item-group.d.ts +0 -11
  1409. package/list/lib/list-item-link/list-item-link.d.ts +0 -8
  1410. package/list/lib/list-item-media.d.ts +0 -5
  1411. package/list/lib/list-item-meta.d.ts +0 -5
  1412. package/list/lib/list-item-prefix.d.ts +0 -5
  1413. package/list/lib/list-item-suffix.d.ts +0 -5
  1414. package/list/lib/list-item-template.d.ts +0 -10
  1415. package/list/lib/list-item-title.d.ts +0 -5
  1416. package/list/lib/list-selectable.d.ts +0 -73
  1417. package/list/malva-ui-core-list.d.ts +0 -5
  1418. package/loader/index.d.ts +0 -1
  1419. package/loader/lib/loader/loader.d.ts +0 -84
  1420. package/loader/malva-ui-core-loader.d.ts +0 -5
  1421. package/malva-ui-core.d.ts +0 -5
  1422. package/menu/index.d.ts +0 -9
  1423. package/menu/lib/menu/menu-group-label.d.ts +0 -22
  1424. package/menu/lib/menu/menu-group.d.ts +0 -27
  1425. package/menu/lib/menu/menu-item.d.ts +0 -76
  1426. package/menu/lib/menu/menu-separator.d.ts +0 -18
  1427. package/menu/lib/menu/menu-trigger.d.ts +0 -255
  1428. package/menu/lib/menu/menu.d.ts +0 -149
  1429. package/menu/lib/menu/menu.types.d.ts +0 -13
  1430. package/menu/lib/menu/menubar.d.ts +0 -131
  1431. package/menu/lib/menu/menubar.types.d.ts +0 -82
  1432. package/menu/lib/menu/submenu-aim.d.ts +0 -10
  1433. package/menu/malva-ui-core-menu.d.ts +0 -5
  1434. package/notification/index.d.ts +0 -4
  1435. package/notification/lib/notification-item/notification-item.d.ts +0 -20
  1436. package/notification/lib/notification-ref.d.ts +0 -12
  1437. package/notification/lib/notification.service.d.ts +0 -43
  1438. package/notification/lib/notification.types.d.ts +0 -52
  1439. package/notification/malva-ui-core-notification.d.ts +0 -5
  1440. package/number-input/index.d.ts +0 -1
  1441. package/number-input/lib/number-input/number-input.d.ts +0 -162
  1442. package/number-input/malva-ui-core-number-input.d.ts +0 -5
  1443. package/page/index.d.ts +0 -14
  1444. package/page/lib/page/page-scroll.token.d.ts +0 -19
  1445. package/page/lib/page/page-snap-controller.d.ts +0 -87
  1446. package/page/lib/page/page-snap.directive.d.ts +0 -40
  1447. package/page/lib/page/page.d.ts +0 -74
  1448. package/page/lib/page-content/page-aside.d.ts +0 -7
  1449. package/page/lib/page-content/page-content.d.ts +0 -37
  1450. package/page/lib/page-dock/page-dock.d.ts +0 -50
  1451. package/page/lib/page-dock/page-dock.slots.d.ts +0 -16
  1452. package/page/lib/page-header/page-header.d.ts +0 -77
  1453. package/page/lib/page-header/page-header.directives.d.ts +0 -50
  1454. package/page/lib/page-shell/page-shell-color.d.ts +0 -48
  1455. package/page/lib/page-shell/page-shell-css-color.d.ts +0 -20
  1456. package/page/lib/page-shell/page-shell.d.ts +0 -44
  1457. package/page/lib/page-shell/page-shell.slots.d.ts +0 -16
  1458. package/page/lib/page-summary/page-summary-item.d.ts +0 -11
  1459. package/page/lib/page-summary/page-summary.d.ts +0 -36
  1460. package/page/malva-ui-core-page.d.ts +0 -5
  1461. package/pagination/index.d.ts +0 -4
  1462. package/pagination/lib/pagination/pagination.d.ts +0 -182
  1463. package/pagination/lib/pagination/pagination.directives.d.ts +0 -44
  1464. package/pagination/lib/pagination/pagination.model.d.ts +0 -6
  1465. package/pagination/lib/pagination/pagination.service.d.ts +0 -26
  1466. package/pagination/malva-ui-core-pagination.d.ts +0 -5
  1467. package/pin-input/index.d.ts +0 -2
  1468. package/pin-input/lib/pin-input/pin-input-separator.d.ts +0 -24
  1469. package/pin-input/lib/pin-input/pin-input.d.ts +0 -176
  1470. package/pin-input/malva-ui-core-pin-input.d.ts +0 -5
  1471. package/popup/index.d.ts +0 -9
  1472. package/popup/lib/popup/popup.d.ts +0 -343
  1473. package/popup/lib/popup-container/popup-container.d.ts +0 -61
  1474. package/popup/lib/popup-container/popup-container.token.d.ts +0 -34
  1475. package/popup/lib/popup-content.d.ts +0 -6
  1476. package/popup/lib/popup-header-content.d.ts +0 -18
  1477. package/popup/lib/popup-pinned-content.d.ts +0 -17
  1478. package/popup/lib/popup-positions.d.ts +0 -105
  1479. package/popup/lib/popup-trigger/popup-trigger.d.ts +0 -102
  1480. package/popup/lib/popup.service.d.ts +0 -159
  1481. package/popup/malva-ui-core-popup.d.ts +0 -5
  1482. package/progress/index.d.ts +0 -1
  1483. package/progress/lib/progress/progress.d.ts +0 -69
  1484. package/progress/malva-ui-core-progress.d.ts +0 -5
  1485. package/radio/index.d.ts +0 -2
  1486. package/radio/lib/radio/radio.d.ts +0 -87
  1487. package/radio/lib/radio-group/radio-group.d.ts +0 -35
  1488. package/radio/lib/radio-group-token.d.ts +0 -7
  1489. package/radio/malva-ui-core-radio.d.ts +0 -5
  1490. package/rating/index.d.ts +0 -1
  1491. package/rating/lib/rating/rating.d.ts +0 -100
  1492. package/rating/malva-ui-core-rating.d.ts +0 -5
  1493. package/scrollbar/index.d.ts +0 -1
  1494. package/scrollbar/lib/scrollbar/scrollbar.d.ts +0 -166
  1495. package/scrollbar/malva-ui-core-scrollbar.d.ts +0 -5
  1496. package/search-field/index.d.ts +0 -2
  1497. package/search-field/lib/search-field/search-field.d.ts +0 -347
  1498. package/search-field/lib/search-field/search-overlay-content.d.ts +0 -59
  1499. package/search-field/malva-ui-core-search-field.d.ts +0 -5
  1500. package/segmented/index.d.ts +0 -4
  1501. package/segmented/lib/segmented/segmented.d.ts +0 -80
  1502. package/segmented/lib/segmented-item/segmented-item.d.ts +0 -89
  1503. package/segmented/lib/segmented-token.d.ts +0 -22
  1504. package/segmented/lib/segmented.types.d.ts +0 -9
  1505. package/segmented/malva-ui-core-segmented.d.ts +0 -5
  1506. package/select/index.d.ts +0 -3
  1507. package/select/lib/select/select.d.ts +0 -379
  1508. package/select/lib/select-option.d.ts +0 -1
  1509. package/select/lib/select-template.directives.d.ts +0 -14
  1510. package/select/malva-ui-core-select.d.ts +0 -5
  1511. package/sidebar/index.d.ts +0 -15
  1512. package/sidebar/lib/sidebar/sidebar.d.ts +0 -134
  1513. package/sidebar/lib/sidebar-content.d.ts +0 -11
  1514. package/sidebar/lib/sidebar-context.d.ts +0 -23
  1515. package/sidebar/lib/sidebar-footer.d.ts +0 -9
  1516. package/sidebar/lib/sidebar-group/sidebar-group.d.ts +0 -127
  1517. package/sidebar/lib/sidebar-header.d.ts +0 -9
  1518. package/sidebar/lib/sidebar-item/sidebar-item.d.ts +0 -104
  1519. package/sidebar/lib/sidebar-item-host.d.ts +0 -18
  1520. package/sidebar/lib/sidebar-item-icon.d.ts +0 -6
  1521. package/sidebar/lib/sidebar-mode.d.ts +0 -2
  1522. package/sidebar/lib/sidebar-rail/sidebar-rail.d.ts +0 -54
  1523. package/sidebar/lib/sidebar-trigger/sidebar-trigger.d.ts +0 -67
  1524. package/sidebar/lib/sidebar-workspace/sidebar-workspace.d.ts +0 -54
  1525. package/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.d.ts +0 -19
  1526. package/sidebar/lib/sidebar-workspace/sidebar-workspace.types.d.ts +0 -20
  1527. package/sidebar/malva-ui-core-sidebar.d.ts +0 -5
  1528. package/skeleton/index.d.ts +0 -1
  1529. package/skeleton/lib/skeleton/skeleton.d.ts +0 -60
  1530. package/skeleton/malva-ui-core-skeleton.d.ts +0 -5
  1531. package/slider/index.d.ts +0 -2
  1532. package/slider/lib/slider/slider-tooltip-def.d.ts +0 -39
  1533. package/slider/lib/slider/slider.d.ts +0 -171
  1534. package/slider/malva-ui-core-slider.d.ts +0 -5
  1535. package/split-pane/index.d.ts +0 -3
  1536. package/split-pane/lib/split-pane/split-pane-panel.d.ts +0 -34
  1537. package/split-pane/lib/split-pane/split-pane.d.ts +0 -98
  1538. package/split-pane/lib/split-pane/split-pane.types.d.ts +0 -7
  1539. package/split-pane/malva-ui-core-split-pane.d.ts +0 -5
  1540. package/status-indicator/index.d.ts +0 -1
  1541. package/status-indicator/lib/status-indicator/status-indicator.d.ts +0 -61
  1542. package/status-indicator/malva-ui-core-status-indicator.d.ts +0 -5
  1543. package/stepper/index.d.ts +0 -4
  1544. package/stepper/lib/stepper/step-header.d.ts +0 -34
  1545. package/stepper/lib/stepper/step.d.ts +0 -51
  1546. package/stepper/lib/stepper/stepper-token.d.ts +0 -13
  1547. package/stepper/lib/stepper/stepper.d.ts +0 -98
  1548. package/stepper/lib/stepper/stepper.types.d.ts +0 -4
  1549. package/stepper/malva-ui-core-stepper.d.ts +0 -5
  1550. package/switch/index.d.ts +0 -2
  1551. package/switch/lib/switch/switch.d.ts +0 -118
  1552. package/switch/lib/switch-group/switch-group.d.ts +0 -24
  1553. package/switch/lib/switch-group-token.d.ts +0 -6
  1554. package/switch/malva-ui-core-switch.d.ts +0 -5
  1555. package/tabs/index.d.ts +0 -8
  1556. package/tabs/lib/tab/tab.d.ts +0 -46
  1557. package/tabs/lib/tab-content/tab-content.d.ts +0 -11
  1558. package/tabs/lib/tab-content-def.d.ts +0 -6
  1559. package/tabs/lib/tab-def.d.ts +0 -11
  1560. package/tabs/lib/tab-group-token.d.ts +0 -10
  1561. package/tabs/lib/tab-item/tab-item.d.ts +0 -28
  1562. package/tabs/lib/tabs/tabs.d.ts +0 -202
  1563. package/tabs/lib/tabs.service.d.ts +0 -24
  1564. package/tabs/malva-ui-core-tabs.d.ts +0 -5
  1565. package/textarea/index.d.ts +0 -1
  1566. package/textarea/lib/textarea/textarea.d.ts +0 -77
  1567. package/textarea/malva-ui-core-textarea.d.ts +0 -5
  1568. package/tile/index.d.ts +0 -2
  1569. package/tile/lib/tile/tile.d.ts +0 -20
  1570. package/tile/lib/tile-header.d.ts +0 -6
  1571. package/tile/malva-ui-core-tile.d.ts +0 -5
  1572. package/time-picker/index.d.ts +0 -1
  1573. package/time-picker/lib/time-picker/time-picker.d.ts +0 -135
  1574. package/time-picker/lib/time-picker-column/time-picker-column.d.ts +0 -111
  1575. package/time-picker/malva-ui-core-time-picker.d.ts +0 -5
  1576. package/timeline/index.d.ts +0 -5
  1577. package/timeline/lib/timeline/timeline-item-icon.d.ts +0 -24
  1578. package/timeline/lib/timeline/timeline-item-meta.d.ts +0 -24
  1579. package/timeline/lib/timeline/timeline-item.d.ts +0 -52
  1580. package/timeline/lib/timeline/timeline.d.ts +0 -27
  1581. package/timeline/lib/timeline/timeline.types.d.ts +0 -18
  1582. package/timeline/malva-ui-core-timeline.d.ts +0 -5
  1583. package/title/index.d.ts +0 -1
  1584. package/title/lib/title/title.d.ts +0 -63
  1585. package/title/malva-ui-core-title.d.ts +0 -5
  1586. package/toast/index.d.ts +0 -10
  1587. package/toast/lib/abstract-toast-container.d.ts +0 -29
  1588. package/toast/lib/abstract-toast-item.d.ts +0 -44
  1589. package/toast/lib/abstract-toast.service.d.ts +0 -75
  1590. package/toast/lib/toast-container/toast-container.d.ts +0 -23
  1591. package/toast/lib/toast-item/toast-item.d.ts +0 -25
  1592. package/toast/lib/toast-ref.d.ts +0 -33
  1593. package/toast/lib/toast-timer.d.ts +0 -24
  1594. package/toast/lib/toast.directives.d.ts +0 -13
  1595. package/toast/lib/toast.service.d.ts +0 -41
  1596. package/toast/lib/toast.types.d.ts +0 -139
  1597. package/toast/malva-ui-core-toast.d.ts +0 -5
  1598. package/tokenizer/index.d.ts +0 -3
  1599. package/tokenizer/lib/token/token.d.ts +0 -60
  1600. package/tokenizer/lib/token-template.d.ts +0 -29
  1601. package/tokenizer/lib/tokenizer/tokenizer.d.ts +0 -109
  1602. package/tokenizer/malva-ui-core-tokenizer.d.ts +0 -5
  1603. package/toolbar/index.d.ts +0 -3
  1604. package/toolbar/lib/toolbar/toolbar-spacer.d.ts +0 -5
  1605. package/toolbar/lib/toolbar/toolbar-widget.d.ts +0 -75
  1606. package/toolbar/lib/toolbar/toolbar.d.ts +0 -8
  1607. package/toolbar/malva-ui-core-toolbar.d.ts +0 -5
  1608. package/tooltip/index.d.ts +0 -3
  1609. package/tooltip/lib/tooltip/tooltip-panel.d.ts +0 -26
  1610. package/tooltip/lib/tooltip/tooltip.d.ts +0 -148
  1611. package/tooltip/lib/tooltip/tooltip.types.d.ts +0 -17
  1612. package/tooltip/malva-ui-core-tooltip.d.ts +0 -5
  1613. package/tree/index.d.ts +0 -4
  1614. package/tree/lib/tree/tree-context.d.ts +0 -62
  1615. package/tree/lib/tree/tree-node-def.d.ts +0 -33
  1616. package/tree/lib/tree/tree-node.d.ts +0 -45
  1617. package/tree/lib/tree/tree-subtree.d.ts +0 -63
  1618. package/tree/lib/tree/tree.d.ts +0 -156
  1619. package/tree/malva-ui-core-tree.d.ts +0 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"malva-ui-core-autocomplete.mjs","sources":["../../../../libs/core/autocomplete/src/lib/autocomplete/autocomplete.ts","../../../../libs/core/autocomplete/src/malva-ui-core-autocomplete.ts"],"sourcesContent":["import {\n afterNextRender,\n computed,\n DestroyRef,\n Directive,\n effect,\n ElementRef,\n inject,\n Injector,\n input,\n model,\n output,\n Renderer2,\n signal,\n untracked,\n ViewContainerRef,\n} from '@angular/core';\nimport type { ComponentRef } from '@angular/core';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Overlay } from '@angular/cdk/overlay';\nimport { DOWN_ARROW, UP_ARROW } from '@angular/cdk/keycodes';\nimport type { ConnectedPosition, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject, timer } from 'rxjs';\nimport { debounce } from 'rxjs/operators';\nimport {\n MlvActiveDescendant,\n MlvDropdownPanel,\n MlvOptionsAdapter,\n defaultOptionMatcher,\n defaultOptionTransform,\n filterOptions,\n optionId,\n resolveOptions,\n} from '@malva-ui/core/dropdown';\nimport type {\n MlvOptionMatcher,\n MlvOptionsInput,\n MlvOptionsSearchFn,\n MlvSelectOption,\n MlvSelectOptionTransform,\n} from '@malva-ui/core/dropdown';\nimport { MlvSelectionService } from '@malva-ui/core/form-utils';\nimport { MlvRtlService, mlvNextId } from '@malva-ui/cdk/utils';\nimport { MLV_DENSITY_CONTEXT, MlvDensityService } from '@malva-ui/cdk/density';\nimport type { MlvDensity } from '@malva-ui/cdk/density';\n\n/** Alias of {@link MlvOptionsSearchFn} — kept for backwards compatibility. */\nexport type MlvAutocompleteSearchFn<T> = MlvOptionsSearchFn<T>;\n\n/** Connected-overlay positions: below the input first, above as the fallback. */\nconst AUTOCOMPLETE_POSITIONS: ConnectedPosition[] = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 8,\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -8,\n },\n];\n\n/**\n * `[mlvAutocomplete]` — a reusable autocomplete/typeahead behaviour applicable\n * to **any** text input: a native `<input>` or a `<mlv-input>`. It reuses the\n * same building blocks as `mlv-combobox` — the shared\n * {@link filterOptions matching utility} and the `mlv-dropdown-panel` list — to\n * render a suggestion popup, without forcing the field into a full form\n * control.\n *\n * Suggestions come from the {@link options} source — an array or\n * `Observable<T[]>` (filtered locally with {@link matcher}), or a\n * `MlvDataSource<T>` (which filters and pages itself) — or from an async\n * {@link search} function. Every shape is normalised by the shared\n * `MlvOptionsAdapter`. The directive owns\n * the popup (a CDK overlay hosting `mlv-dropdown-panel`, the same primitive\n * `mlv-popup` wraps — a headless attribute directive cannot host `mlv-popup`'s\n * declarative content template), the WAI-ARIA combobox wiring on the input\n * (`role=\"combobox\"`, `aria-autocomplete=\"list\"`, `aria-expanded`,\n * `aria-controls`, `aria-activedescendant`), and the activedescendant keyboard\n * model (DOM focus stays in the input; Arrow/Home/End move the highlighted\n * option, Enter selects it, Escape closes then clears).\n *\n * @example\n * ```html\n * <!-- Static options on a plain mlv-input -->\n * <mlv-input [mlvAutocomplete]=\"fruits\" (optionSelected)=\"pick($event)\" />\n *\n * <!-- Async search with loading + highlighting -->\n * <mlv-input [mlvAutocompleteSearch]=\"searchUsers\" [mlvAutocompleteMinLength]=\"2\" />\n *\n * <!-- Data source: it filters (setSearch) and pages itself -->\n * <mlv-input [mlvAutocomplete]=\"usersDataSource\" [mlvAutocompleteMinLength]=\"2\" />\n *\n * <!-- Custom matcher -->\n * <mlv-input [mlvAutocomplete]=\"cities\" [mlvAutocompleteMatcher]=\"startsWith\" />\n * ```\n */\n@Directive({\n selector: '[mlvAutocomplete],[mlvAutocompleteSearch]',\n exportAs: 'mlvAutocomplete',\n // Provided per-directive so the `mlv-dropdown-panel` component portal (created\n // with this directive's element injector) can resolve the MlvSelectionService it\n // injects — matching how `mlv-combobox` / `mlv-select` scope it.\n providers: [MlvSelectionService],\n})\nexport class MlvAutocomplete<T = unknown> {\n /**\n * Suggestion source: a static array or `Observable<T[]>` (filtered locally\n * against the query with {@link matcher}), or a `MlvDataSource<T>` (which owns\n * its own filtering — the directive forwards the query as\n * `setSearch({ query, keys: [] })` and pages lazily). Ignored when a\n * {@link search} function is provided. Bound through the directive's own\n * selector: `[mlvAutocomplete]=\"options\"`.\n */\n readonly options = input<MlvOptionsInput<T>>([], {\n alias: 'mlvAutocomplete',\n });\n\n /**\n * Async suggestion source: `(query) => T[] | Promise<T[]> | Observable<T[]>`.\n * When set, it supersedes {@link options}; results feed the panel and drive\n * the loading affordance. A newer query supersedes an in-flight one (its\n * result is discarded), while the previous results stay visible until the new\n * ones land.\n */\n readonly search = input<MlvAutocompleteSearchFn<T> | null>(null, {\n alias: 'mlvAutocompleteSearch',\n });\n\n /**\n * Maps a raw item to a `MlvSelectOption` (`{ label, value, group? }`). Same\n * convention as `mlv-select` / `mlv-combobox`; defaults to\n * {@link defaultOptionTransform} (uses `String(item)` as the label).\n */\n readonly toOption = input<MlvSelectOptionTransform<T>>(\n defaultOptionTransform as MlvSelectOptionTransform<T>,\n { alias: 'mlvAutocompleteToOption' },\n );\n\n /**\n * Predicate used to filter {@link options} against the query. Defaults to a\n * case- and diacritic-insensitive substring match on the label. Ignored when\n * {@link search} is provided (the async source owns its own matching).\n */\n readonly matcher = input<MlvOptionMatcher<T>>(defaultOptionMatcher, {\n alias: 'mlvAutocompleteMatcher',\n });\n\n /**\n * Debounce (ms) applied to keystrokes before filtering / searching — avoids\n * redundant work and API calls during rapid typing.\n * @default 200\n */\n readonly debounce = input<number>(200, {\n alias: 'mlvAutocompleteDebounce',\n });\n\n /**\n * Minimum query length before suggestions open. `0` (default) opens on focus\n * showing the full list — appropriate for cheap local filtering. Raise it\n * (2+ recommended) for async sources so a network call is not made on every\n * keystroke.\n * @default 0\n */\n readonly minLength = input<number>(0, {\n alias: 'mlvAutocompleteMinLength',\n });\n\n /**\n * When `true`, the matched substring of the query is emphasised inside each\n * suggestion label.\n * @default true\n */\n readonly highlight = input<boolean, BooleanInput>(true, {\n alias: 'mlvAutocompleteHighlight',\n transform: coerceBooleanProperty,\n });\n\n /**\n * When `true` (default), an **inline completion** is offered as the user types:\n * if the top visible suggestion's label starts with the typed text (a genuine\n * prefix, case-insensitively) and the caret is at the end of the field, the\n * remainder of that suggestion is inserted after the caret and left **selected**\n * — so continuing to type replaces it, `Enter`/click commits the full value, and\n * `Escape` reverts to just the typed text. The user's typed prefix keeps their\n * casing; only the appended remainder uses the suggestion's casing. Non-prefix\n * (fuzzy / substring-only) top matches are skipped silently (list-only). While\n * enabled the input advertises `aria-autocomplete=\"both\"`; set `false` for\n * list-only behaviour (`aria-autocomplete=\"list\"`).\n * @default true\n */\n readonly inline = input<boolean, BooleanInput>(true, {\n alias: 'mlvAutocompleteInline',\n transform: coerceBooleanProperty,\n });\n\n /**\n * When `true` (default), focusing the input opens the suggestion list\n * (subject to {@link minLength}). Set `false` to only open on typing / arrow.\n * @default true\n */\n readonly openOnFocus = input<boolean, BooleanInput>(true, {\n alias: 'mlvAutocompleteOpenOnFocus',\n transform: coerceBooleanProperty,\n });\n\n /** Disables the behaviour entirely (no popup, no aria wiring changes). */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'mlvAutocompleteDisabled',\n transform: coerceBooleanProperty,\n });\n\n /**\n * Text shown / announced inside the panel's loading affordances — the top row\n * while a remote source (an async {@link search} or a `MlvDataSource`)\n * resolves, and the bottom row while a further page loads. Localise by binding\n * a translated string.\n * @default 'Loading…'\n */\n readonly loadingText = input<string>('Loading…', {\n alias: 'mlvAutocompleteLoadingText',\n });\n\n /**\n * Distance (px) from the end of the suggestion list at which the next\n * data-source page is requested. Only meaningful for a `MlvDataSource`\n * {@link options} source, which is the only shape that pages.\n * @default 150\n */\n readonly infiniteScrollThreshold = input<number>(150, {\n alias: 'mlvAutocompleteInfiniteScrollThreshold',\n });\n\n /**\n * Density applied to the suggestion panel's option rows.\n *\n * The panel is hosted in a bare CDK overlay portaled to the overlay container,\n * outside the input's DOM tree, so ancestor density classes cannot cascade\n * into it. The resolved density is stamped as a `mlv--{density}` class on the\n * panel host (the same mechanism `mlv-popup` uses for its detached panel).\n * When omitted, the nearest ancestor `MLV_DENSITY_CONTEXT` (e.g. a\n * `form[mlvForm]`) applies, then the global `MlvDensityService` density.\n */\n readonly density = input<MlvDensity | undefined>(undefined, {\n alias: 'mlvAutocompleteDensity',\n });\n\n /**\n * The raw value of the last selected suggestion, or `null`. Two-way bindable\n * (`[(mlvAutocompleteValue)]`) so a parent can observe the committed pick.\n */\n readonly selectedValue = model<T | null>(null, {\n alias: 'mlvAutocompleteValue',\n });\n\n /** Emits the full `MlvSelectOption` each time the user selects a suggestion. */\n readonly optionSelected = output<MlvSelectOption<T>>();\n\n /** Emits `true` when the suggestion list opens and `false` when it closes. */\n readonly openedChange = output<boolean>();\n\n // ─── DI ────────────────────────────────────────────────────────────────────\n\n /** @private Host element the directive is applied to (native input or mlv-input). */\n private readonly _hostEl =\n inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\n /** @private Renderer for DOM attribute/listener wiring on the resolved input. */\n private readonly _renderer = inject(Renderer2);\n /** @private CDK overlay factory used to host the suggestion panel. */\n private readonly _overlay = inject(Overlay);\n /** @private View container + injector for the `mlv-dropdown-panel` component portal. */\n private readonly _vcr = inject(ViewContainerRef);\n private readonly _injector = inject(Injector);\n /** @private Directive lifetime, for imperative listener / subscription cleanup. */\n private readonly _destroyRef = inject(DestroyRef);\n /** @private Global density service — fallback when no explicit {@link density} is supplied. */\n private readonly _densityService = inject(MlvDensityService);\n private readonly _rtlService = inject(MlvRtlService);\n\n /** @private Ancestor-projected density (`MLV_DENSITY_CONTEXT`); consulted before the service. */\n private readonly _densityContext = inject(MLV_DENSITY_CONTEXT, {\n optional: true,\n });\n\n // ─── State ───────────────────────────────────────────────────────────────\n\n /** @private The resolved focusable `<input>` (host itself, or the inner input of a `mlv-input`). */\n private readonly _inputEl = signal<HTMLInputElement | null>(null);\n /** @private Current (post-input) query text. */\n private readonly _query = signal('');\n /** @private The current suggestion options rendered in the panel. */\n private readonly _results = signal<MlvSelectOption<T>[]>([]);\n /**\n * @private Shared source adapter: arrays / observables filter locally, a\n * `MlvDataSource` or `search` fn run remotely. Debounce is 0 here because the\n * directive already debounces keystrokes before `_runQuery`.\n */\n private readonly _adapter = new MlvOptionsAdapter<T>({\n source: this.options,\n searchFn: this.search,\n debounce: signal(0),\n eager: signal(false),\n });\n /** @private Panel loading flag — only remote sources report loading. */\n private readonly _panelLoading = computed(\n () => this._adapter.mode() === 'remote' && this._adapter.loading(),\n );\n /**\n * @private Shared activedescendant bookkeeping: tracks the highlighted option\n * index over the current results with wrap-around navigation. The same engine\n * backs `mlv-combobox`.\n */\n private readonly _activeDescendant = new MlvActiveDescendant(\n () => this._results().length,\n );\n /** @private Whether the suggestion popup is open. */\n private readonly _open = signal(false);\n /** @private The attached panel component ref (a signal so the sync effect re-runs on attach). */\n private readonly _panelRef = signal<ComponentRef<MlvDropdownPanel<T>> | null>(\n null,\n );\n\n /** Whether the suggestion popup is currently open (read-only view of internal state). */\n readonly isOpen = this._open.asReadonly();\n\n /** @private Stable listbox id shared between the input's `aria-controls` and the panel's option ids. */\n private readonly _listboxId = mlvNextId('mlv-autocomplete-listbox');\n\n /**\n * @private Debounced keystroke stream. Carries the query text plus whether the\n * triggering edit was an insertion (text grew) so the debounced `_runQuery`\n * knows whether an inline completion may be offered — only genuine insertions\n * complete, never deletions (Backspace/Delete/cut), focus, or arrow-open.\n */\n private readonly _input$ = new Subject<{\n query: string;\n insertion: boolean;\n }>();\n /** @private Skips the synthetic `input` event dispatched while committing / completing a value. */\n private _suppressNextInput = false;\n /** @private Live overlay reference while the panel is open. */\n private _overlayRef: OverlayRef | null = null;\n /**\n * @private `inputType` of the pending native edit, captured on `beforeinput`\n * and consumed on `input`. Non-null in real browsers (drives precise\n * insert-vs-delete detection); `null` in environments that don't fire\n * `beforeinput` (jsdom / programmatic edits), where a length comparison is the\n * fallback.\n */\n private _pendingInputType: string | null = null;\n /** @private Length of the input value at the previous `input` event — the length-comparison fallback for insertion detection. */\n private _previousValueLength = 0;\n /** @private Whether the current query is allowed to offer an inline completion (set per `_runQuery`; only true for inline-enabled insertions). */\n private _completionArmed = false;\n /** @private Whether an inline completion (typed prefix + selected remainder) is currently present in the input. */\n private _completionActive = false;\n /** @private The `mlv--{density}` class currently applied to the panel host, for removal on change. */\n private _appliedDensityClass: string | null = null;\n\n constructor() {\n // Keep the detached panel host stamped with the resolved density cascade\n // class. The overlay (and panel element) is recreated on every open, so the\n // applied-class memo resets when the ref clears; while open, the effect also\n // reacts to live density changes.\n effect(() => {\n const ref = this._panelRef();\n if (!ref) {\n this._appliedDensityClass = null;\n return;\n }\n const el = ref.location.nativeElement as HTMLElement;\n const next = `mlv--${this.density() ?? this._densityContext?.() ?? this._densityService.density()}`;\n if (this._appliedDensityClass === next) return;\n if (this._appliedDensityClass) {\n this._renderer.removeClass(el, this._appliedDensityClass);\n }\n this._renderer.addClass(el, next);\n this._appliedDensityClass = next;\n });\n // Debounce keystrokes before filtering / searching. The last event in the\n // window wins (rxjs `debounce`), so its `insertion` flag is what gates the\n // inline completion for the resolved query.\n this._input$\n .pipe(\n debounce(() => timer(Math.max(0, this.debounce()))),\n takeUntilDestroyed(),\n )\n .subscribe(({ query, insertion }) => this._runQuery(query, insertion));\n\n // Resolve the real <input> and wire native listeners. When the host itself\n // is an <input> it is available immediately; when the host is a `mlv-input`\n // (or any wrapper) the inner <input> only exists after the first render.\n if (this._hostEl.tagName === 'INPUT') {\n this._bindTo(this._hostEl as HTMLInputElement);\n } else {\n afterNextRender(() => {\n const el = this._hostEl.querySelector('input');\n if (el) this._bindTo(el);\n });\n }\n\n // Keep the input's WAI-ARIA combobox attributes in sync with popup state.\n effect(() => {\n const el = this._inputEl();\n if (!el) return;\n const open = this._open();\n this._renderer.setAttribute(el, 'role', 'combobox');\n // \"both\": inline text completion + a list of suggestions (WAI-ARIA\n // list-with-inline-autocomplete). \"list\": suggestions only, no inline\n // completion. Tracks the `inline` opt-out.\n this._renderer.setAttribute(\n el,\n 'aria-autocomplete',\n this.inline() ? 'both' : 'list',\n );\n this._renderer.setAttribute(el, 'aria-expanded', String(open));\n if (open) {\n this._renderer.setAttribute(el, 'aria-controls', this._listboxId);\n const activeId = this._activeOptionId();\n if (activeId) {\n this._renderer.setAttribute(el, 'aria-activedescendant', activeId);\n } else {\n this._renderer.removeAttribute(el, 'aria-activedescendant');\n }\n } else {\n this._renderer.removeAttribute(el, 'aria-controls');\n this._renderer.removeAttribute(el, 'aria-activedescendant');\n }\n });\n\n // Push current state into the attached panel component.\n effect(() => {\n const ref = this._panelRef();\n if (!ref) return;\n ref.setInput('options', this._results());\n ref.setInput('multiple', false);\n ref.setInput('selectedValues', []);\n ref.setInput('focusMode', 'activedescendant');\n ref.setInput('activeIndex', this._activeDescendant.index());\n ref.setInput('listboxId', this._listboxId);\n ref.setInput('loading', this._panelLoading());\n ref.setInput('loadingText', this.loadingText());\n ref.setInput('hasMore', this._adapter.hasMore());\n ref.setInput('loadingMore', this._adapter.loadingMore());\n ref.setInput('infiniteScrollThreshold', this.infiniteScrollThreshold());\n ref.setInput(\n 'highlightQuery',\n this.highlight() ? this._query().trim() : '',\n );\n });\n\n // Mirror the adapter's items into the rendered results whenever the source\n // produces a new set: a remote result landing, or a local observable\n // emitting after the panel is already open (nothing else would repaint it\n // until the next keystroke). Remote items render as-is — the source owns\n // filtering — while local ones are re-filtered against the current query.\n // Running only on an item-set change is what keeps stale remote results\n // visible while a newer query is in flight; the inline completion is offered\n // once per armed query.\n effect(() => {\n const mode = this._adapter.mode();\n const items = this._adapter.items();\n untracked(() => {\n if (mode === 'remote') {\n this._results.set(items.map((item) => this.toOption()(item)));\n if (this._completionArmed && !this._adapter.loading()) {\n this._applyCompletion();\n this._completionArmed = false;\n }\n return;\n }\n // Local: only an open panel needs repainting — a closed one is filled by\n // `_runQuery` when it opens.\n if (!this._open()) return;\n this._results.set(\n filterOptions(\n resolveOptions([...items], this.toOption()),\n this._query(),\n this.matcher(),\n ),\n );\n // The highlighted row may not exist in the new list.\n if (this._activeDescendant.index() >= this._results().length) {\n this._activeDescendant.reset();\n }\n });\n });\n\n this._destroyRef.onDestroy(() => this._disposeOverlay());\n }\n\n /**\n * @private Resolves the focusable `<input>` and attaches the native listeners\n * (input / focus / blur / keydown) that drive the behaviour. Cleaned up on\n * directive destroy.\n */\n private _bindTo(el: HTMLInputElement): void {\n this._inputEl.set(el);\n this._previousValueLength = el.value.length;\n // Capture the edit intent (insert vs delete) before the value changes, so\n // `_onInput` can gate the inline completion precisely in real browsers. Not\n // fired for programmatic value changes (jsdom / our own dispatches), where\n // `_onInput` falls back to a length comparison.\n this._destroyRef.onDestroy(\n this._renderer.listen(el, 'beforeinput', (event: Event) => {\n this._pendingInputType =\n 'inputType' in event ? (event as InputEvent).inputType : null;\n }),\n );\n this._destroyRef.onDestroy(\n this._renderer.listen(el, 'input', () => this._onInput()),\n );\n this._destroyRef.onDestroy(\n this._renderer.listen(el, 'focus', () => this._onFocus()),\n );\n this._destroyRef.onDestroy(\n this._renderer.listen(el, 'blur', () => this._onBlur()),\n );\n this._destroyRef.onDestroy(\n this._renderer.listen(el, 'keydown', (event: KeyboardEvent) =>\n this._onKeydown(event),\n ),\n );\n }\n\n /**\n * @private `aria-activedescendant` target: the DOM id of the highlighted\n * option row, or `null` when nothing is active. Matches the id the panel\n * renders (`<listboxId>-option-<index>`).\n */\n private readonly _activeOptionId = () => {\n const index = this._activeDescendant.index();\n if (index < 0 || index >= this._results().length) return null;\n return optionId(this._listboxId, index);\n };\n\n // ─── Input / focus events ──────────────────────────────────────────────────\n\n /** @private Handles a native `input` event: pushes the value (with insertion flag) into the debounced stream. */\n private _onInput(): void {\n if (this._suppressNextInput) {\n this._suppressNextInput = false;\n // Discard any beforeinput type that paired with our own synthetic dispatch.\n this._pendingInputType = null;\n return;\n }\n // A genuine user edit invalidates any inline completion currently in the\n // field (the edit has replaced or removed the selected remainder).\n this._completionActive = false;\n if (this._isInert()) return;\n const query = this._inputEl()?.value ?? '';\n this._input$.next({ query, insertion: this._consumeInsertion(query) });\n }\n\n /**\n * @private Whether the just-observed `input` event grew the field's text (a\n * genuine insertion) rather than deleting from it. Prefers the `beforeinput`\n * `inputType` when available (real browsers), else compares the value length\n * against the previous `input` event. Consumes the pending type and records\n * the new length either way.\n */\n private _consumeInsertion(value: string): boolean {\n const inputType = this._pendingInputType;\n this._pendingInputType = null;\n const insertion =\n inputType !== null\n ? inputType.startsWith('insert')\n : value.length > this._previousValueLength;\n this._previousValueLength = value.length;\n return insertion;\n }\n\n /** @private Opens suggestions on focus (immediate, bypassing debounce) when enabled. */\n private _onFocus(): void {\n if (this._isInert() || !this.openOnFocus()) return;\n this._runQuery(this._inputEl()?.value ?? '');\n }\n\n /** @private Closes the popup when focus genuinely leaves the field. */\n private _onBlur(): void {\n this._closePopup();\n }\n\n // ─── Keyboard ──────────────────────────────────────────────────────────────\n\n /** @private Activedescendant keyboard model — DOM focus stays in the input. */\n private _onKeydown(event: KeyboardEvent): void {\n if (this._isInert()) return;\n switch (this._rtlService.normalizeArrowKey(event) ?? event.key) {\n case DOWN_ARROW:\n event.preventDefault();\n if (this._open()) this._activeDescendant.move(1);\n else this._runQuery(this._inputEl()?.value ?? '');\n break;\n case UP_ARROW:\n event.preventDefault();\n if (this._open()) this._activeDescendant.move(-1);\n else this._runQuery(this._inputEl()?.value ?? '');\n break;\n case 'Home':\n if (this._open() && this._results().length) {\n event.preventDefault();\n this._activeDescendant.first();\n }\n break;\n case 'End':\n if (this._open() && this._results().length) {\n event.preventDefault();\n this._activeDescendant.last();\n }\n break;\n case 'Enter': {\n const index = this._activeDescendant.index();\n const results = this._results();\n if (this._open() && index >= 0 && index < results.length) {\n event.preventDefault();\n this._commit(results[index]);\n }\n break;\n }\n case 'Escape': {\n // Revert any inline completion to just the typed text first, then apply\n // the existing close-then-clear semantics.\n const stripped = this._stripCompletion();\n if (this._open()) {\n event.preventDefault();\n this._closePopup();\n } else if (stripped) {\n // The strip already reverted the completed text on this keypress; do\n // not also clear the field.\n event.preventDefault();\n } else if (this._inputEl()?.value) {\n event.preventDefault();\n this._clearInput();\n }\n break;\n }\n default:\n break;\n }\n }\n\n // ─── Query resolution ───────────────────────────────────────────────────────\n\n /**\n * @private Resolves suggestions for `query` and opens / closes the popup.\n * Local sources (arrays / observables) filter synchronously; a remote source\n * (a `MlvDataSource` or an async {@link search}) shows the loading affordance\n * while keeping the previous results visible, and a newer query supersedes it.\n */\n private _runQuery(query: string, insertion = false): void {\n this._query.set(query);\n this._activeDescendant.reset();\n // Arm the inline completion only for inline-enabled insertions. Focus /\n // arrow-open (`insertion` false) and deletions never complete.\n this._completionArmed = insertion && this.inline();\n if (this._isInert()) return;\n\n if (query.length < this.minLength()) {\n this._results.set([]);\n this._closePopup();\n return;\n }\n\n if (this._adapter.mode() === 'local') {\n const options = resolveOptions(\n [...this._adapter.items()],\n this.toOption(),\n );\n this._results.set(filterOptions(options, query, this.matcher()));\n this._openPopup();\n if (this._completionArmed) {\n this._applyCompletion();\n this._completionArmed = false;\n }\n return;\n }\n\n // Remote: seed the panel from what the source already holds, open (the\n // spinner row sits over those stale results), then search. Seeding is what\n // makes a re-entry into an already-answered query repaint: the mirroring\n // effect only fires on an item-set *change*, so a `search` fn that memoises\n // and returns the identical array for a repeated query — or a data source\n // whose slice reference is unchanged — would otherwise leave the panel\n // empty after the min-length gate cleared `_results`. The adapter discards\n // superseded results; the effect renders new ones.\n this._results.set(\n this._adapter.items().map((item) => this.toOption()(item)),\n );\n this._openPopup();\n this._adapter.search(query);\n }\n\n // ─── Inline completion ─────────────────────────────────────────────────────\n\n /**\n * @private Offers an inline completion for the current results: if the top\n * suggestion's label is a genuine case-insensitive **prefix** of the typed\n * text and the caret sits at the end of the field, append the suggestion's\n * remainder (in its own casing) after the typed prefix (kept in the user's\n * casing) and leave that remainder **selected**. The completed value is pushed\n * through the same synthetic-`input` path a commit uses so `mlv-input` /\n * `ngModel` / a form control observe it, and the top item (index 0) becomes the\n * activedescendant-active row. No-op unless armed for an inline insertion with\n * an open panel; non-prefix (fuzzy) top matches are skipped silently.\n */\n private _applyCompletion(): void {\n if (!this.inline() || !this._open()) return;\n const el = this._inputEl();\n if (!el) return;\n const typed = el.value;\n const typedLength = typed.length;\n if (typedLength === 0) return;\n // Only complete when the caret is a plain cursor at the very end.\n if (el.selectionStart !== typedLength || el.selectionEnd !== typedLength) {\n return;\n }\n const top = this._results()[0];\n if (!top) return;\n const label = top.label;\n if (\n label.length <= typedLength ||\n !label.toLowerCase().startsWith(typed.toLowerCase())\n ) {\n return;\n }\n // Keep the user's typed casing; take the remainder from the suggestion.\n const completed = typed + label.slice(typedLength);\n el.value = completed;\n el.setSelectionRange(typedLength, completed.length);\n this._completionActive = true;\n // Highlight the completed top item so keyboard nav / Enter stay coherent.\n this._activeDescendant.first();\n // Propagate the completed value the same way a commit does (suppressing our\n // own re-filter of this synthetic event).\n this._suppressNextInput = true;\n el.dispatchEvent(new Event('input', { bubbles: true }));\n }\n\n /**\n * @private Strips an active inline completion back to the typed prefix (the\n * text before the selected remainder), restoring the caret to the end and\n * notifying value listeners. Returns whether a completion was stripped.\n */\n private _stripCompletion(): boolean {\n if (!this._completionActive) return false;\n const el = this._inputEl();\n if (!el) return false;\n const start = el.selectionStart ?? 0;\n const end = el.selectionEnd ?? 0;\n // The completion is the trailing selection [start, value.length].\n if (end !== el.value.length || start >= end) {\n this._completionActive = false;\n return false;\n }\n const typed = el.value.slice(0, start);\n el.value = typed;\n el.setSelectionRange(typed.length, typed.length);\n this._completionActive = false;\n this._query.set(typed);\n this._suppressNextInput = true;\n el.dispatchEvent(new Event('input', { bubbles: true }));\n return true;\n }\n\n // ─── Selection ───────────────────────────────────────────────────────────────\n\n /**\n * Panel (pointer) selection handler — subscribed to the `mlv-dropdown-panel`\n * `valueChange`. The panel is never seeded with a committed selection\n * (`selectedValues` is always `[]`), so any non-empty emit is a genuine pick —\n * no aria reconciliation guard is needed. Public so the overlay subscription\n * (and unit tests) can invoke it.\n */\n selectFromPanel(values: readonly T[]): void {\n if (!values.length) return;\n const picked = values[values.length - 1];\n const option = this._results().find((o) => o.value === picked);\n if (option) this._commit(option);\n }\n\n /** @private Commits a suggestion: writes its full label into the input (caret to end), emits, and closes. */\n private _commit(option: MlvSelectOption<T>): void {\n this._completionActive = false;\n const el = this._inputEl();\n if (el) {\n el.value = option.label;\n // Full value, caret at the end (clears any completion selection).\n el.setSelectionRange(option.label.length, option.label.length);\n // Notify mlv-input / ngModel listeners without re-triggering our own filter.\n this._suppressNextInput = true;\n el.dispatchEvent(new Event('input', { bubbles: true }));\n }\n this._query.set(option.label);\n this.selectedValue.set(option.value);\n this.optionSelected.emit(option);\n this._closePopup();\n }\n\n /** @private Clears the input text (second Escape) and notifies listeners. */\n private _clearInput(): void {\n const el = this._inputEl();\n if (!el) return;\n el.value = '';\n this._query.set('');\n el.dispatchEvent(new Event('input', { bubbles: true }));\n }\n\n // ─── Overlay ─────────────────────────────────────────────────────────────────\n\n /** @private Creates (if needed) and shows the suggestion overlay. */\n private _openPopup(): void {\n if (this._isInert()) return;\n const el = this._inputEl();\n if (!el) return;\n\n if (!this._overlayRef) {\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(el)\n .withFlexibleDimensions(true)\n .withPush(false)\n .withPositions(AUTOCOMPLETE_POSITIONS);\n\n this._overlayRef = this._overlay.create({\n positionStrategy,\n direction: this._rtlService.resolveDirection(el),\n scrollStrategy: this._overlay.scrollStrategies.reposition(),\n width: el.getBoundingClientRect().width,\n hasBackdrop: false,\n });\n\n const ref = this._overlayRef.attach(\n new ComponentPortal(MlvDropdownPanel, this._vcr, this._injector),\n ) as ComponentRef<MlvDropdownPanel<T>>;\n\n // Paint a floating surface on the bare panel. `mlv-combobox` / `mlv-select`\n // nest the panel in a styled `mlv-popup`; the directive's overlay hosts it\n // directly, so it would otherwise be transparent over the page. Applied on\n // the panel's own host element (which already carries `mlv-dropdown-panel`)\n // as the BEM modifier — dropdown-panel.scss owns the `--surface` styles.\n this._renderer.addClass(\n ref.location.nativeElement,\n 'mlv-dropdown-panel--surface',\n );\n\n // `valueChange` is an `output()` (OutputRef) — subscribe directly; the\n // subscription is torn down when the overlay (and panel) is disposed.\n ref.instance.valueChange.subscribe((values) =>\n this.selectFromPanel(values),\n );\n\n // Lazy paging: the panel's scroll sentinel asks for the next data-source\n // page. The adapter is a no-op unless another page exists and the previous\n // one has landed.\n ref.instance.loadMore.subscribe(() => this._adapter.loadMore());\n\n // Keep DOM focus in the input while pointing at options: a mousedown on the\n // panel must not blur the field (which would close before the click lands).\n this._renderer.listen(\n this._overlayRef.overlayElement,\n 'mousedown',\n (event: MouseEvent) => event.preventDefault(),\n );\n\n // Backdrop-less dismissal: close on a genuine outside click (the input /\n // host is treated as \"inside\" so caret repositioning does not dismiss).\n this._overlayRef\n .outsidePointerEvents()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe((event) => {\n if (!this._hostEl.contains(event.target as Node)) this._closePopup();\n });\n\n this._panelRef.set(ref);\n }\n\n if (!this._open()) {\n this._open.set(true);\n this.openedChange.emit(true);\n }\n }\n\n /** @private Hides and disposes the overlay, resetting popup state. */\n private _closePopup(): void {\n const wasOpen = this._open();\n this._activeDescendant.reset();\n this._disposeOverlay();\n this._open.set(false);\n if (wasOpen) this.openedChange.emit(false);\n }\n\n /** @private Tears down the overlay + panel ref. */\n private _disposeOverlay(): void {\n this._panelRef.set(null);\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n }\n\n /** @private Whether all interaction paths are suppressed. */\n private _isInert(): boolean {\n return this.disabled();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,224 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, output, inject, ElementRef, signal, computed, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
3
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
+ import { MlvAvatar, MlvColorFromTextPipe } from '@malva-ui/core/avatar';
6
+ import { MlvResizeObserverService } from '@malva-ui/cdk/utils';
7
+ import { MLV_AVATAR_GROUP_I18N, MlvI18nResolverService } from '@malva-ui/i18n';
8
+ import { MlvPopup, MlvPopupTrigger, MlvPopupContent } from '@malva-ui/core/popup';
9
+
10
+ /** Avatar size to pixel mapping (matches mlv-avatar SCSS size tokens). */
11
+ const AVATAR_SIZE_PX = {
12
+ xs: 24,
13
+ s: 32,
14
+ m: 40,
15
+ l: 56,
16
+ xl: 80,
17
+ xxl: 96,
18
+ };
19
+ /**
20
+ * Overlap in pixels per size — the absolute value of the negative
21
+ * `margin-left` applied to stacked avatars in avatar-group.scss.
22
+ */
23
+ const AVATAR_OVERLAP_PX = {
24
+ xs: 4,
25
+ s: 6,
26
+ m: 8,
27
+ l: 10,
28
+ xl: 12,
29
+ xxl: 14,
30
+ };
31
+ /**
32
+ * Avatar group component rendering a horizontal stack of overlapping `mlv-avatar` instances.
33
+ *
34
+ * The visible count is calculated automatically based on the component's container width —
35
+ * no manual `max` input is needed. When members overflow, an avatar-styled `+N` counter
36
+ * is appended. Hovering or focusing the counter opens a popup listing every member.
37
+ * Clicking anywhere on the host emits `groupClick`; clicking the `+N` counter also
38
+ * emits `overflowClick`.
39
+ *
40
+ * The component fills its parent (uses `width: 100%` flex layout). Set a width or
41
+ * `max-width` on the host to constrain the visible count.
42
+ *
43
+ * @example
44
+ * ```html
45
+ * <mlv-avatar-group
46
+ * [members]="team"
47
+ * size="m"
48
+ * (groupClick)="openMembersPanel($event)"
49
+ * style="max-width: 200px"
50
+ * />
51
+ * ```
52
+ */
53
+ class MlvAvatarGroup {
54
+ /**
55
+ * The full list of members to represent.
56
+ * How many are visible is determined automatically by the container width.
57
+ */
58
+ members = input([], /* @ts-ignore */
59
+ ...(ngDevMode ? [{ debugName: "members" }] : /* istanbul ignore next */ []));
60
+ /**
61
+ * Size variant applied to all avatars (including the overflow counter avatar).
62
+ * Matches `MlvAvatarSize`: `'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl'`.
63
+ * Defaults to `'m'`.
64
+ */
65
+ size = input('m', /* @ts-ignore */
66
+ ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
67
+ /**
68
+ * Shape applied to all avatars in the group.
69
+ * Defaults to `'circle'`.
70
+ */
71
+ shape = input('circle', /* @ts-ignore */
72
+ ...(ngDevMode ? [{ debugName: "shape" }] : /* istanbul ignore next */ []));
73
+ /**
74
+ * When `true`, the group is exposed as a keyboard-operable button.
75
+ */
76
+ interactive = input(false, { ...(ngDevMode ? { debugName: "interactive" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
77
+ /**
78
+ * Emits the full member array when the user clicks anywhere on the group host.
79
+ */
80
+ groupClick = output();
81
+ /**
82
+ * Emits the hidden (overflow) members when the user clicks the `+N` counter avatar.
83
+ * Event propagation is stopped before the host `groupClick` fires separately.
84
+ */
85
+ overflowClick = output();
86
+ // ── Private state ──────────────────────────────────────────────────────────
87
+ /** @private Host element ref, observed for width to auto-calculate the visible count. */
88
+ _el = inject((ElementRef));
89
+ /** @private Shared resize-observer service used to track the host width. */
90
+ _resizeService = inject(MlvResizeObserverService);
91
+ /** @private Localised avatar-group messages. */
92
+ _i18n = inject(MLV_AVATAR_GROUP_I18N);
93
+ /** @private ICU resolver for count-aware accessible labels. */
94
+ _resolver = inject(MlvI18nResolverService);
95
+ /** Measured width of the host element in pixels. 0 = not yet measured. */
96
+ _containerWidth = signal(0, /* @ts-ignore */
97
+ ...(ngDevMode ? [{ debugName: "_containerWidth" }] : /* istanbul ignore next */ []));
98
+ /** Avatar size in pixels for the current `size()` input. */
99
+ _avatarSizePx = computed(() => AVATAR_SIZE_PX[this.size()], /* @ts-ignore */
100
+ ...(ngDevMode ? [{ debugName: "_avatarSizePx" }] : /* istanbul ignore next */ []));
101
+ /**
102
+ * Maximum total avatars (visible + overflow) that fit in the current container.
103
+ * Returns `Infinity` before the first ResizeObserver measurement so that
104
+ * all members are shown during the initial render pass.
105
+ */
106
+ _maxFit = computed(() => {
107
+ const w = this._containerWidth();
108
+ if (w <= 0)
109
+ return Infinity;
110
+ const avatarPx = this._avatarSizePx();
111
+ const overlapPx = AVATAR_OVERLAP_PX[this.size()];
112
+ const effectivePx = avatarPx - overlapPx; // width each additional avatar adds
113
+ if (effectivePx <= 0)
114
+ return 1;
115
+ return Math.max(1, Math.floor((w - avatarPx) / effectivePx) + 1);
116
+ }, /* @ts-ignore */
117
+ ...(ngDevMode ? [{ debugName: "_maxFit" }] : /* istanbul ignore next */ []));
118
+ // ── Protected computed ─────────────────────────────────────────────────────
119
+ /** Members within the auto-calculated visible limit — rendered as individual avatars. */
120
+ _visibleMembers = computed(() => {
121
+ const all = this.members();
122
+ const maxFit = this._maxFit();
123
+ if (all.length <= maxFit)
124
+ return all;
125
+ // Reserve 1 slot for the overflow counter avatar; always show at least 1.
126
+ return all.slice(0, Math.max(1, maxFit - 1));
127
+ }, /* @ts-ignore */
128
+ ...(ngDevMode ? [{ debugName: "_visibleMembers" }] : /* istanbul ignore next */ []));
129
+ /** Members beyond the visible limit — shown in the overflow popup. */
130
+ _hiddenMembers = computed(() => this.members().slice(this._visibleMembers().length), /* @ts-ignore */
131
+ ...(ngDevMode ? [{ debugName: "_hiddenMembers" }] : /* istanbul ignore next */ []));
132
+ /** Number of hidden members. */
133
+ _overflowCount = computed(() => this._hiddenMembers().length, /* @ts-ignore */
134
+ ...(ngDevMode ? [{ debugName: "_overflowCount" }] : /* istanbul ignore next */ []));
135
+ /** Whether the overflow counter avatar should render. */
136
+ _hasOverflow = computed(() => this._overflowCount() > 0, /* @ts-ignore */
137
+ ...(ngDevMode ? [{ debugName: "_hasOverflow" }] : /* istanbul ignore next */ []));
138
+ /** Label shown inside the overflow counter avatar, e.g. `"+5"`. */
139
+ _overflowLabel = computed(() => `+${this._overflowCount()}`, /* @ts-ignore */
140
+ ...(ngDevMode ? [{ debugName: "_overflowLabel" }] : /* istanbul ignore next */ []));
141
+ /** Accessible label for the group host element. */
142
+ _hostAriaLabel = computed(() => {
143
+ const total = this.members().length;
144
+ const visible = this._visibleMembers().length;
145
+ if (total === 0)
146
+ return this._i18n().noMembers;
147
+ const key = this._hasOverflow() ? 'visibleMembers' : 'memberCount';
148
+ return this._resolver.resolve(this._i18n(), key, { total, visible });
149
+ }, /* @ts-ignore */
150
+ ...(ngDevMode ? [{ debugName: "_hostAriaLabel" }] : /* istanbul ignore next */ []));
151
+ /** Localised label for the overflow trigger. */
152
+ _overflowAriaLabel = computed(() => this._resolver.resolve(this._i18n(), 'moreMembers', { count: this._overflowCount() }), /* @ts-ignore */
153
+ ...(ngDevMode ? [{ debugName: "_overflowAriaLabel" }] : /* istanbul ignore next */ []));
154
+ /** Localised label for the complete member list. */
155
+ _allMembersLabel = computed(() => this._i18n().allMembers, /* @ts-ignore */
156
+ ...(ngDevMode ? [{ debugName: "_allMembersLabel" }] : /* istanbul ignore next */ []));
157
+ constructor() {
158
+ this._resizeService
159
+ .observe(this._el)
160
+ .pipe(takeUntilDestroyed())
161
+ .subscribe((entries) => {
162
+ const width = entries[0]?.contentRect.width ?? 0;
163
+ this._containerWidth.set(width);
164
+ });
165
+ }
166
+ // ── Event handlers ─────────────────────────────────────────────────────────
167
+ /** Handles click on the overflow counter avatar. */
168
+ _onOverflowClick(event) {
169
+ event.stopPropagation();
170
+ this.overflowClick.emit(this._hiddenMembers());
171
+ }
172
+ /** Handles keydown on the overflow counter avatar. */
173
+ _onOverflowKeydown(event) {
174
+ if (event.key !== 'Enter' && event.key !== ' ')
175
+ return;
176
+ event.preventDefault();
177
+ event.stopPropagation();
178
+ this.overflowClick.emit(this._hiddenMembers());
179
+ }
180
+ /** Handles click on the group host. */
181
+ _onHostClick() {
182
+ if (this.members().length > 0) {
183
+ this.groupClick.emit(this.members());
184
+ }
185
+ }
186
+ /** Activates an interactive group with the standard button keys. */
187
+ _onHostKeydown(event) {
188
+ if (!this.interactive() ||
189
+ this.members().length === 0 ||
190
+ (event.key !== 'Enter' && event.key !== ' ')) {
191
+ return;
192
+ }
193
+ event.preventDefault();
194
+ this.groupClick.emit(this.members());
195
+ }
196
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvAvatarGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
197
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: MlvAvatarGroup, isStandalone: true, selector: "mlv-avatar-group", inputs: { members: { classPropertyName: "members", publicName: "members", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { groupClick: "groupClick", overflowClick: "overflowClick" }, host: { listeners: { "click": "_onHostClick()", "keydown": "_onHostKeydown($event)" }, properties: { "class": "\"mlv-avatar-group--size-\" + size()", "class.mlv-avatar-group--interactive": "interactive()", "attr.role": "interactive() ? \"button\" : \"group\"", "attr.tabindex": "interactive() && members().length > 0 ? 0 : null", "attr.aria-label": "_hostAriaLabel()" }, classAttribute: "mlv-avatar-group" }, ngImport: i0, template: "<div class=\"mlv-avatar-group__list\">\n @for (member of _visibleMembers(); track member.name; let i = $index) {\n <div class=\"mlv-avatar-group__item\">\n <mlv-avatar\n [size]=\"size()\"\n [shape]=\"shape()\"\n [name]=\"member.name\"\n [src]=\"member.src ?? null\"\n [initials]=\"member.initials ?? ''\"\n [color]=\"member.color ?? (member.name | mlvColorFromText)\"\n />\n </div>\n } @if (_hasOverflow()) {\n <div\n class=\"mlv-avatar-group__overflow\"\n [mlvPopupTrigger]=\"memberPopup\"\n [triggerOn]=\"['hover', 'focus']\"\n [ariaHasPopup]=\"null\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-label]=\"_overflowAriaLabel()\"\n (click)=\"_onOverflowClick($event)\"\n (keydown)=\"_onOverflowKeydown($any($event))\"\n >\n <mlv-avatar\n class=\"mlv-avatar-group__overflow-avatar\"\n [size]=\"size()\"\n [shape]=\"shape()\"\n [initials]=\"_overflowLabel()\"\n color=\"var(--mlv-background-neutral-2)\"\n />\n </div>\n\n <mlv-popup\n #memberPopup\n position=\"bottom-start\"\n [hasArrow]=\"false\"\n [hasShadow]=\"true\"\n >\n <ng-template mlvPopupContent>\n <div\n class=\"mlv-avatar-group__popup-list\"\n role=\"list\"\n [attr.aria-label]=\"_allMembersLabel()\"\n >\n @for (member of members(); track member.name) {\n <div class=\"mlv-avatar-group__popup-row\" role=\"listitem\">\n <mlv-avatar\n size=\"s\"\n [shape]=\"shape()\"\n [name]=\"member.name\"\n [src]=\"member.src ?? null\"\n [initials]=\"member.initials ?? ''\"\n [color]=\"member.color ?? (member.name | mlvColorFromText)\"\n />\n <span class=\"mlv-avatar-group__popup-name\">{{ member.name }}</span>\n </div>\n }\n </div>\n </ng-template>\n </mlv-popup>\n }\n</div>\n", styles: ["@layer mlv.components{.mlv-avatar-group{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-avatar-group *{box-sizing:border-box}.mlv-avatar-group,.mlv-avatar-group__list{display:flex;align-items:center;min-width:0}.mlv-avatar-group__item{display:inline-flex;align-items:center;margin-inline-start:var(--mlv-ag-overlap, -.5rem);position:relative}.mlv-avatar-group__item:first-child{margin-inline-start:0}.mlv-avatar-group__item:nth-child(1){z-index:20}.mlv-avatar-group__item:nth-child(2){z-index:19}.mlv-avatar-group__item:nth-child(3){z-index:18}.mlv-avatar-group__item:nth-child(4){z-index:17}.mlv-avatar-group__item:nth-child(5){z-index:16}.mlv-avatar-group__item:nth-child(6){z-index:15}.mlv-avatar-group__item:nth-child(7){z-index:14}.mlv-avatar-group__item:nth-child(8){z-index:13}.mlv-avatar-group__item:nth-child(9){z-index:12}.mlv-avatar-group__item:nth-child(10){z-index:11}.mlv-avatar-group__item:nth-child(11){z-index:10}.mlv-avatar-group__item:nth-child(12){z-index:9}.mlv-avatar-group__item:nth-child(13){z-index:8}.mlv-avatar-group__item:nth-child(14){z-index:7}.mlv-avatar-group__item:nth-child(15){z-index:6}.mlv-avatar-group__item:nth-child(16){z-index:5}.mlv-avatar-group__item:nth-child(17){z-index:4}.mlv-avatar-group__item:nth-child(18){z-index:3}.mlv-avatar-group__item:nth-child(19){z-index:2}.mlv-avatar-group__item:nth-child(20){z-index:1}.mlv-avatar-group__item mlv-avatar{outline:var(--mlv-ag-ring-width, .125rem) solid var(--mlv-ag-ring-color, var(--mlv-background-base));border-radius:var(--mlv-radius-full)}.mlv-avatar-group__overflow{display:inline-flex;align-items:center;margin-inline-start:var(--mlv-ag-overlap, -.5rem);position:relative;z-index:21;cursor:pointer;outline:none}.mlv-avatar-group__overflow mlv-avatar{outline:var(--mlv-ag-ring-width, .125rem) solid var(--mlv-ag-ring-color, var(--mlv-background-base));border-radius:var(--mlv-radius-full);pointer-events:none}.mlv-avatar-group__overflow .mlv-avatar__initials{font-size:calc(var(--mlv-avatar-font, .875rem) * .75);letter-spacing:-.01em;opacity:1;color:var(--mlv-text-secondary)}.mlv-avatar-group__overflow:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:var(--mlv-focus-ring-offset);border-radius:var(--mlv-radius-full)}.mlv-avatar-group__popup-list{display:flex;flex-direction:column;min-width:10rem;max-height:20rem;overflow-y:auto}.mlv-avatar-group__popup-row{display:flex;align-items:center;gap:.5rem;padding:var(--mlv-padding-s);min-height:var(--mlv-height-s);transition:background-color var(--mlv-duration-fast) var(--mlv-ease-out)}.mlv-avatar-group__popup-row:hover{background-color:var(--mlv-background-neutral-1)}.mlv-avatar-group__popup-name{font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-s);color:var(--mlv-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mlv-avatar-group--size-xs{--mlv-ag-overlap: -.25rem}.mlv-avatar-group--size-s{--mlv-ag-overlap: -.375rem}.mlv-avatar-group--size-m{--mlv-ag-overlap: -.5rem}.mlv-avatar-group--size-l{--mlv-ag-overlap: -.625rem}.mlv-avatar-group--size-xl{--mlv-ag-overlap: -.75rem}.mlv-avatar-group--size-xxl{--mlv-ag-overlap: -.875rem}.mlv-avatar-group__item mlv-avatar.mlv-avatar--square,.mlv-avatar-group__overflow mlv-avatar.mlv-avatar--square{border-radius:var(--mlv-radius-m)}.mlv-avatar-group__overflow:has(mlv-avatar.mlv-avatar--square):focus-visible{border-radius:var(--mlv-radius-m)}.mlv-avatar-group--interactive{cursor:pointer}.mlv-avatar-group--interactive:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:var(--mlv-focus-ring-offset);border-radius:var(--mlv-radius-m)}@media(prefers-reduced-motion:reduce){.mlv-avatar-group,.mlv-avatar-group *,.mlv-avatar-group:before,.mlv-avatar-group:after,[class^=mlv-avatar-group__],[class*=\" mlv-avatar-group__\"],[class^=mlv-avatar-group--],[class*=\" mlv-avatar-group--\"]{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:var(--mlv-duration-instant)!important}}}\n"], dependencies: [{ kind: "component", type: MlvAvatar, selector: "mlv-avatar", inputs: ["size", "shape", "src", "name", "initials", "color", "label"] }, { kind: "component", type: MlvPopup, selector: "mlv-popup", inputs: ["position", "positions", "width", "height", "minWidth", "minHeight", "maxWidth", "maxHeight", "hasArrow", "hasShadow", "class", "mlvDensity", "flexibleDimensions", "scrollStrategy", "hasBackdrop", "restrictPosition", "panelRole", "modal", "ariaLabel", "dismissExcludeElements", "mobileMode", "mobileBreakpoint", "mobileTitle", "mobileCloseLabel", "opened"], outputs: ["openedChange", "afterOpened", "afterClosed"] }, { kind: "directive", type: MlvPopupTrigger, selector: "[mlvPopupTrigger]", inputs: ["mlvPopupTrigger", "triggerOn", "ariaHasPopup"], exportAs: ["mlvPopupTrigger"] }, { kind: "directive", type: MlvPopupContent, selector: "[mlvPopupContent]" }, { kind: "pipe", type: MlvColorFromTextPipe, name: "mlvColorFromText" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
198
+ }
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvAvatarGroup, decorators: [{
200
+ type: Component,
201
+ args: [{ selector: 'mlv-avatar-group', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
202
+ MlvAvatar,
203
+ MlvColorFromTextPipe,
204
+ MlvPopup,
205
+ MlvPopupTrigger,
206
+ MlvPopupContent,
207
+ ], host: {
208
+ class: 'mlv-avatar-group',
209
+ '[class]': '"mlv-avatar-group--size-" + size()',
210
+ '[class.mlv-avatar-group--interactive]': 'interactive()',
211
+ '[attr.role]': 'interactive() ? "button" : "group"',
212
+ '[attr.tabindex]': 'interactive() && members().length > 0 ? 0 : null',
213
+ '[attr.aria-label]': '_hostAriaLabel()',
214
+ '(click)': '_onHostClick()',
215
+ '(keydown)': '_onHostKeydown($event)',
216
+ }, template: "<div class=\"mlv-avatar-group__list\">\n @for (member of _visibleMembers(); track member.name; let i = $index) {\n <div class=\"mlv-avatar-group__item\">\n <mlv-avatar\n [size]=\"size()\"\n [shape]=\"shape()\"\n [name]=\"member.name\"\n [src]=\"member.src ?? null\"\n [initials]=\"member.initials ?? ''\"\n [color]=\"member.color ?? (member.name | mlvColorFromText)\"\n />\n </div>\n } @if (_hasOverflow()) {\n <div\n class=\"mlv-avatar-group__overflow\"\n [mlvPopupTrigger]=\"memberPopup\"\n [triggerOn]=\"['hover', 'focus']\"\n [ariaHasPopup]=\"null\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-label]=\"_overflowAriaLabel()\"\n (click)=\"_onOverflowClick($event)\"\n (keydown)=\"_onOverflowKeydown($any($event))\"\n >\n <mlv-avatar\n class=\"mlv-avatar-group__overflow-avatar\"\n [size]=\"size()\"\n [shape]=\"shape()\"\n [initials]=\"_overflowLabel()\"\n color=\"var(--mlv-background-neutral-2)\"\n />\n </div>\n\n <mlv-popup\n #memberPopup\n position=\"bottom-start\"\n [hasArrow]=\"false\"\n [hasShadow]=\"true\"\n >\n <ng-template mlvPopupContent>\n <div\n class=\"mlv-avatar-group__popup-list\"\n role=\"list\"\n [attr.aria-label]=\"_allMembersLabel()\"\n >\n @for (member of members(); track member.name) {\n <div class=\"mlv-avatar-group__popup-row\" role=\"listitem\">\n <mlv-avatar\n size=\"s\"\n [shape]=\"shape()\"\n [name]=\"member.name\"\n [src]=\"member.src ?? null\"\n [initials]=\"member.initials ?? ''\"\n [color]=\"member.color ?? (member.name | mlvColorFromText)\"\n />\n <span class=\"mlv-avatar-group__popup-name\">{{ member.name }}</span>\n </div>\n }\n </div>\n </ng-template>\n </mlv-popup>\n }\n</div>\n", styles: ["@layer mlv.components{.mlv-avatar-group{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-avatar-group *{box-sizing:border-box}.mlv-avatar-group,.mlv-avatar-group__list{display:flex;align-items:center;min-width:0}.mlv-avatar-group__item{display:inline-flex;align-items:center;margin-inline-start:var(--mlv-ag-overlap, -.5rem);position:relative}.mlv-avatar-group__item:first-child{margin-inline-start:0}.mlv-avatar-group__item:nth-child(1){z-index:20}.mlv-avatar-group__item:nth-child(2){z-index:19}.mlv-avatar-group__item:nth-child(3){z-index:18}.mlv-avatar-group__item:nth-child(4){z-index:17}.mlv-avatar-group__item:nth-child(5){z-index:16}.mlv-avatar-group__item:nth-child(6){z-index:15}.mlv-avatar-group__item:nth-child(7){z-index:14}.mlv-avatar-group__item:nth-child(8){z-index:13}.mlv-avatar-group__item:nth-child(9){z-index:12}.mlv-avatar-group__item:nth-child(10){z-index:11}.mlv-avatar-group__item:nth-child(11){z-index:10}.mlv-avatar-group__item:nth-child(12){z-index:9}.mlv-avatar-group__item:nth-child(13){z-index:8}.mlv-avatar-group__item:nth-child(14){z-index:7}.mlv-avatar-group__item:nth-child(15){z-index:6}.mlv-avatar-group__item:nth-child(16){z-index:5}.mlv-avatar-group__item:nth-child(17){z-index:4}.mlv-avatar-group__item:nth-child(18){z-index:3}.mlv-avatar-group__item:nth-child(19){z-index:2}.mlv-avatar-group__item:nth-child(20){z-index:1}.mlv-avatar-group__item mlv-avatar{outline:var(--mlv-ag-ring-width, .125rem) solid var(--mlv-ag-ring-color, var(--mlv-background-base));border-radius:var(--mlv-radius-full)}.mlv-avatar-group__overflow{display:inline-flex;align-items:center;margin-inline-start:var(--mlv-ag-overlap, -.5rem);position:relative;z-index:21;cursor:pointer;outline:none}.mlv-avatar-group__overflow mlv-avatar{outline:var(--mlv-ag-ring-width, .125rem) solid var(--mlv-ag-ring-color, var(--mlv-background-base));border-radius:var(--mlv-radius-full);pointer-events:none}.mlv-avatar-group__overflow .mlv-avatar__initials{font-size:calc(var(--mlv-avatar-font, .875rem) * .75);letter-spacing:-.01em;opacity:1;color:var(--mlv-text-secondary)}.mlv-avatar-group__overflow:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:var(--mlv-focus-ring-offset);border-radius:var(--mlv-radius-full)}.mlv-avatar-group__popup-list{display:flex;flex-direction:column;min-width:10rem;max-height:20rem;overflow-y:auto}.mlv-avatar-group__popup-row{display:flex;align-items:center;gap:.5rem;padding:var(--mlv-padding-s);min-height:var(--mlv-height-s);transition:background-color var(--mlv-duration-fast) var(--mlv-ease-out)}.mlv-avatar-group__popup-row:hover{background-color:var(--mlv-background-neutral-1)}.mlv-avatar-group__popup-name{font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-s);color:var(--mlv-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mlv-avatar-group--size-xs{--mlv-ag-overlap: -.25rem}.mlv-avatar-group--size-s{--mlv-ag-overlap: -.375rem}.mlv-avatar-group--size-m{--mlv-ag-overlap: -.5rem}.mlv-avatar-group--size-l{--mlv-ag-overlap: -.625rem}.mlv-avatar-group--size-xl{--mlv-ag-overlap: -.75rem}.mlv-avatar-group--size-xxl{--mlv-ag-overlap: -.875rem}.mlv-avatar-group__item mlv-avatar.mlv-avatar--square,.mlv-avatar-group__overflow mlv-avatar.mlv-avatar--square{border-radius:var(--mlv-radius-m)}.mlv-avatar-group__overflow:has(mlv-avatar.mlv-avatar--square):focus-visible{border-radius:var(--mlv-radius-m)}.mlv-avatar-group--interactive{cursor:pointer}.mlv-avatar-group--interactive:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:var(--mlv-focus-ring-offset);border-radius:var(--mlv-radius-m)}@media(prefers-reduced-motion:reduce){.mlv-avatar-group,.mlv-avatar-group *,.mlv-avatar-group:before,.mlv-avatar-group:after,[class^=mlv-avatar-group__],[class*=\" mlv-avatar-group__\"],[class^=mlv-avatar-group--],[class*=\" mlv-avatar-group--\"]{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:var(--mlv-duration-instant)!important}}}\n"] }]
217
+ }], ctorParameters: () => [], propDecorators: { members: [{ type: i0.Input, args: [{ isSignal: true, alias: "members", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], shape: [{ type: i0.Input, args: [{ isSignal: true, alias: "shape", required: false }] }], interactive: [{ type: i0.Input, args: [{ isSignal: true, alias: "interactive", required: false }] }], groupClick: [{ type: i0.Output, args: ["groupClick"] }], overflowClick: [{ type: i0.Output, args: ["overflowClick"] }] } });
218
+
219
+ /**
220
+ * Generated bundle index. Do not edit.
221
+ */
222
+
223
+ export { MlvAvatarGroup };
224
+ //# sourceMappingURL=malva-ui-core-avatar-group.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"malva-ui-core-avatar-group.mjs","sources":["../../../../libs/core/avatar-group/src/lib/avatar-group/avatar-group.ts","../../../../libs/core/avatar-group/src/lib/avatar-group/avatar-group.html","../../../../libs/core/avatar-group/src/malva-ui-core-avatar-group.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n ElementRef,\n inject,\n input,\n output,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MlvAvatar, MlvColorFromTextPipe } from '@malva-ui/core/avatar';\nimport type { MlvAvatarSize, MlvAvatarShape } from '@malva-ui/core/avatar';\nimport { MlvResizeObserverService } from '@malva-ui/cdk/utils';\nimport { MLV_AVATAR_GROUP_I18N, MlvI18nResolverService } from '@malva-ui/i18n';\nimport {\n MlvPopup,\n MlvPopupTrigger,\n MlvPopupContent,\n} from '@malva-ui/core/popup';\n\n/**\n * Represents a single member in the avatar group.\n * Provides enough data to render a `mlv-avatar` for each member.\n */\nexport interface MlvAvatarGroupMember {\n /** Full display name — used for initials derivation, popup label, and aria-label. */\n name: string;\n /** Optional image URL. Falls back to initials or color on error. */\n src?: string | null;\n /** Explicit initials string; overrides name-derived initials. */\n initials?: string;\n /** CSS color for the avatar background. Defaults to a deterministic color from name. */\n color?: string;\n}\n\n/** Avatar size to pixel mapping (matches mlv-avatar SCSS size tokens). */\nconst AVATAR_SIZE_PX: Record<MlvAvatarSize, number> = {\n xs: 24,\n s: 32,\n m: 40,\n l: 56,\n xl: 80,\n xxl: 96,\n};\n\n/**\n * Overlap in pixels per size — the absolute value of the negative\n * `margin-left` applied to stacked avatars in avatar-group.scss.\n */\nconst AVATAR_OVERLAP_PX: Record<MlvAvatarSize, number> = {\n xs: 4,\n s: 6,\n m: 8,\n l: 10,\n xl: 12,\n xxl: 14,\n};\n\n/**\n * Avatar group component rendering a horizontal stack of overlapping `mlv-avatar` instances.\n *\n * The visible count is calculated automatically based on the component's container width —\n * no manual `max` input is needed. When members overflow, an avatar-styled `+N` counter\n * is appended. Hovering or focusing the counter opens a popup listing every member.\n * Clicking anywhere on the host emits `groupClick`; clicking the `+N` counter also\n * emits `overflowClick`.\n *\n * The component fills its parent (uses `width: 100%` flex layout). Set a width or\n * `max-width` on the host to constrain the visible count.\n *\n * @example\n * ```html\n * <mlv-avatar-group\n * [members]=\"team\"\n * size=\"m\"\n * (groupClick)=\"openMembersPanel($event)\"\n * style=\"max-width: 200px\"\n * />\n * ```\n */\n@Component({\n selector: 'mlv-avatar-group',\n templateUrl: './avatar-group.html',\n styleUrl: './avatar-group.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MlvAvatar,\n MlvColorFromTextPipe,\n MlvPopup,\n MlvPopupTrigger,\n MlvPopupContent,\n ],\n host: {\n class: 'mlv-avatar-group',\n '[class]': '\"mlv-avatar-group--size-\" + size()',\n '[class.mlv-avatar-group--interactive]': 'interactive()',\n '[attr.role]': 'interactive() ? \"button\" : \"group\"',\n '[attr.tabindex]': 'interactive() && members().length > 0 ? 0 : null',\n '[attr.aria-label]': '_hostAriaLabel()',\n '(click)': '_onHostClick()',\n '(keydown)': '_onHostKeydown($event)',\n },\n})\nexport class MlvAvatarGroup {\n /**\n * The full list of members to represent.\n * How many are visible is determined automatically by the container width.\n */\n readonly members = input<MlvAvatarGroupMember[]>([]);\n\n /**\n * Size variant applied to all avatars (including the overflow counter avatar).\n * Matches `MlvAvatarSize`: `'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl'`.\n * Defaults to `'m'`.\n */\n readonly size = input<MlvAvatarSize>('m');\n\n /**\n * Shape applied to all avatars in the group.\n * Defaults to `'circle'`.\n */\n readonly shape = input<MlvAvatarShape>('circle');\n\n /**\n * When `true`, the group is exposed as a keyboard-operable button.\n */\n readonly interactive = input<boolean, BooleanInput>(false, {\n transform: coerceBooleanProperty,\n });\n\n /**\n * Emits the full member array when the user clicks anywhere on the group host.\n */\n readonly groupClick = output<MlvAvatarGroupMember[]>();\n\n /**\n * Emits the hidden (overflow) members when the user clicks the `+N` counter avatar.\n * Event propagation is stopped before the host `groupClick` fires separately.\n */\n readonly overflowClick = output<MlvAvatarGroupMember[]>();\n\n // ── Private state ──────────────────────────────────────────────────────────\n\n /** @private Host element ref, observed for width to auto-calculate the visible count. */\n private readonly _el = inject(ElementRef<HTMLElement>);\n /** @private Shared resize-observer service used to track the host width. */\n private readonly _resizeService = inject(MlvResizeObserverService);\n /** @private Localised avatar-group messages. */\n private readonly _i18n = inject(MLV_AVATAR_GROUP_I18N);\n /** @private ICU resolver for count-aware accessible labels. */\n private readonly _resolver = inject(MlvI18nResolverService);\n\n /** Measured width of the host element in pixels. 0 = not yet measured. */\n private readonly _containerWidth = signal(0);\n\n /** Avatar size in pixels for the current `size()` input. */\n private readonly _avatarSizePx = computed(() => AVATAR_SIZE_PX[this.size()]);\n\n /**\n * Maximum total avatars (visible + overflow) that fit in the current container.\n * Returns `Infinity` before the first ResizeObserver measurement so that\n * all members are shown during the initial render pass.\n */\n private readonly _maxFit = computed(() => {\n const w = this._containerWidth();\n if (w <= 0) return Infinity;\n\n const avatarPx = this._avatarSizePx();\n const overlapPx = AVATAR_OVERLAP_PX[this.size()];\n const effectivePx = avatarPx - overlapPx; // width each additional avatar adds\n\n if (effectivePx <= 0) return 1;\n return Math.max(1, Math.floor((w - avatarPx) / effectivePx) + 1);\n });\n\n // ── Protected computed ─────────────────────────────────────────────────────\n\n /** Members within the auto-calculated visible limit — rendered as individual avatars. */\n protected readonly _visibleMembers = computed(() => {\n const all = this.members();\n const maxFit = this._maxFit();\n if (all.length <= maxFit) return all;\n // Reserve 1 slot for the overflow counter avatar; always show at least 1.\n return all.slice(0, Math.max(1, maxFit - 1));\n });\n\n /** Members beyond the visible limit — shown in the overflow popup. */\n protected readonly _hiddenMembers = computed(() =>\n this.members().slice(this._visibleMembers().length),\n );\n\n /** Number of hidden members. */\n protected readonly _overflowCount = computed(\n () => this._hiddenMembers().length,\n );\n\n /** Whether the overflow counter avatar should render. */\n protected readonly _hasOverflow = computed(() => this._overflowCount() > 0);\n\n /** Label shown inside the overflow counter avatar, e.g. `\"+5\"`. */\n protected readonly _overflowLabel = computed(\n () => `+${this._overflowCount()}`,\n );\n\n /** Accessible label for the group host element. */\n protected readonly _hostAriaLabel = computed(() => {\n const total = this.members().length;\n const visible = this._visibleMembers().length;\n if (total === 0) return this._i18n().noMembers;\n const key = this._hasOverflow() ? 'visibleMembers' : 'memberCount';\n return this._resolver.resolve(\n this._i18n() as unknown as Record<string, string>,\n key,\n { total, visible },\n );\n });\n\n /** Localised label for the overflow trigger. */\n protected readonly _overflowAriaLabel = computed(() =>\n this._resolver.resolve(\n this._i18n() as unknown as Record<string, string>,\n 'moreMembers',\n { count: this._overflowCount() },\n ),\n );\n\n /** Localised label for the complete member list. */\n protected readonly _allMembersLabel = computed(() => this._i18n().allMembers);\n\n constructor() {\n this._resizeService\n .observe(this._el)\n .pipe(takeUntilDestroyed())\n .subscribe((entries) => {\n const width = entries[0]?.contentRect.width ?? 0;\n this._containerWidth.set(width);\n });\n }\n\n // ── Event handlers ─────────────────────────────────────────────────────────\n\n /** Handles click on the overflow counter avatar. */\n protected _onOverflowClick(event: MouseEvent): void {\n event.stopPropagation();\n this.overflowClick.emit(this._hiddenMembers());\n }\n\n /** Handles keydown on the overflow counter avatar. */\n protected _onOverflowKeydown(event: KeyboardEvent): void {\n if (event.key !== 'Enter' && event.key !== ' ') return;\n event.preventDefault();\n event.stopPropagation();\n this.overflowClick.emit(this._hiddenMembers());\n }\n\n /** Handles click on the group host. */\n protected _onHostClick(): void {\n if (this.members().length > 0) {\n this.groupClick.emit(this.members());\n }\n }\n\n /** Activates an interactive group with the standard button keys. */\n protected _onHostKeydown(event: KeyboardEvent): void {\n if (\n !this.interactive() ||\n this.members().length === 0 ||\n (event.key !== 'Enter' && event.key !== ' ')\n ) {\n return;\n }\n\n event.preventDefault();\n this.groupClick.emit(this.members());\n }\n}\n","<div class=\"mlv-avatar-group__list\">\n @for (member of _visibleMembers(); track member.name; let i = $index) {\n <div class=\"mlv-avatar-group__item\">\n <mlv-avatar\n [size]=\"size()\"\n [shape]=\"shape()\"\n [name]=\"member.name\"\n [src]=\"member.src ?? null\"\n [initials]=\"member.initials ?? ''\"\n [color]=\"member.color ?? (member.name | mlvColorFromText)\"\n />\n </div>\n } @if (_hasOverflow()) {\n <div\n class=\"mlv-avatar-group__overflow\"\n [mlvPopupTrigger]=\"memberPopup\"\n [triggerOn]=\"['hover', 'focus']\"\n [ariaHasPopup]=\"null\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-label]=\"_overflowAriaLabel()\"\n (click)=\"_onOverflowClick($event)\"\n (keydown)=\"_onOverflowKeydown($any($event))\"\n >\n <mlv-avatar\n class=\"mlv-avatar-group__overflow-avatar\"\n [size]=\"size()\"\n [shape]=\"shape()\"\n [initials]=\"_overflowLabel()\"\n color=\"var(--mlv-background-neutral-2)\"\n />\n </div>\n\n <mlv-popup\n #memberPopup\n position=\"bottom-start\"\n [hasArrow]=\"false\"\n [hasShadow]=\"true\"\n >\n <ng-template mlvPopupContent>\n <div\n class=\"mlv-avatar-group__popup-list\"\n role=\"list\"\n [attr.aria-label]=\"_allMembersLabel()\"\n >\n @for (member of members(); track member.name) {\n <div class=\"mlv-avatar-group__popup-row\" role=\"listitem\">\n <mlv-avatar\n size=\"s\"\n [shape]=\"shape()\"\n [name]=\"member.name\"\n [src]=\"member.src ?? null\"\n [initials]=\"member.initials ?? ''\"\n [color]=\"member.color ?? (member.name | mlvColorFromText)\"\n />\n <span class=\"mlv-avatar-group__popup-name\">{{ member.name }}</span>\n </div>\n }\n </div>\n </ng-template>\n </mlv-popup>\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}