@malva-ui/core 0.1.13 → 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 (1618) hide show
  1. package/AGENTS.md +4 -1
  2. package/README.md +15 -0
  3. package/docs/ai/avatar.md +2 -0
  4. package/docs/ai/breadcrumb.md +67 -7
  5. package/docs/ai/button.md +74 -19
  6. package/docs/ai/card.md +8 -6
  7. package/docs/ai/chat.md +59 -45
  8. package/docs/ai/checkbox.md +12 -0
  9. package/docs/ai/combobox.md +18 -2
  10. package/docs/ai/copy-to-clipboard.md +1 -1
  11. package/docs/ai/core.md +15 -0
  12. package/docs/ai/data-table.md +89 -54
  13. package/docs/ai/dialog.md +76 -67
  14. package/docs/ai/drawer.md +15 -12
  15. package/docs/ai/dropdown.md +24 -19
  16. package/docs/ai/empty-state.md +3 -3
  17. package/docs/ai/filter.md +24 -5
  18. package/docs/ai/form-utils.md +160 -5
  19. package/docs/ai/icon-toggle.md +160 -0
  20. package/docs/ai/input.md +30 -0
  21. package/docs/ai/layout.md +23 -0
  22. package/docs/ai/list.md +10 -6
  23. package/docs/ai/menu.md +75 -1
  24. package/docs/ai/page.md +220 -60
  25. package/docs/ai/radio.md +9 -0
  26. package/docs/ai/scrollbar.md +30 -8
  27. package/docs/ai/segmented.md +35 -35
  28. package/docs/ai/select.md +30 -5
  29. package/docs/ai/sidebar.md +45 -27
  30. package/docs/ai/switch.md +114 -19
  31. package/docs/ai/table.md +69 -0
  32. package/docs/ai/tabs.md +2 -1
  33. package/docs/ai/tile.md +311 -85
  34. package/docs/ai/timeline.md +63 -39
  35. package/docs/ai/tokenizer.md +21 -5
  36. package/docs/ai/tooltip.md +5 -5
  37. package/docs/ai/view-variant.md +75 -0
  38. package/fesm2022/malva-ui-core-accordion.mjs +167 -0
  39. package/fesm2022/malva-ui-core-accordion.mjs.map +1 -0
  40. package/fesm2022/malva-ui-core-action-bar.mjs +111 -0
  41. package/fesm2022/malva-ui-core-action-bar.mjs.map +1 -0
  42. package/fesm2022/malva-ui-core-alert.mjs +173 -0
  43. package/fesm2022/malva-ui-core-alert.mjs.map +1 -0
  44. package/fesm2022/malva-ui-core-autocomplete.mjs +775 -0
  45. package/fesm2022/malva-ui-core-autocomplete.mjs.map +1 -0
  46. package/fesm2022/malva-ui-core-avatar-group.mjs +224 -0
  47. package/fesm2022/malva-ui-core-avatar-group.mjs.map +1 -0
  48. package/fesm2022/malva-ui-core-avatar.mjs +247 -0
  49. package/fesm2022/malva-ui-core-avatar.mjs.map +1 -0
  50. package/fesm2022/malva-ui-core-badge.mjs +122 -0
  51. package/fesm2022/malva-ui-core-badge.mjs.map +1 -0
  52. package/fesm2022/malva-ui-core-bottom-nav.mjs +161 -0
  53. package/fesm2022/malva-ui-core-bottom-nav.mjs.map +1 -0
  54. package/fesm2022/malva-ui-core-breadcrumb.mjs +494 -0
  55. package/fesm2022/malva-ui-core-breadcrumb.mjs.map +1 -0
  56. package/fesm2022/malva-ui-core-button.mjs +406 -0
  57. package/fesm2022/malva-ui-core-button.mjs.map +1 -0
  58. package/fesm2022/malva-ui-core-calendar.mjs +938 -0
  59. package/fesm2022/malva-ui-core-calendar.mjs.map +1 -0
  60. package/fesm2022/malva-ui-core-card.mjs +164 -0
  61. package/fesm2022/malva-ui-core-card.mjs.map +1 -0
  62. package/fesm2022/malva-ui-core-chat.mjs +825 -0
  63. package/fesm2022/malva-ui-core-chat.mjs.map +1 -0
  64. package/fesm2022/malva-ui-core-checkbox.mjs +272 -0
  65. package/fesm2022/malva-ui-core-checkbox.mjs.map +1 -0
  66. package/fesm2022/malva-ui-core-chip.mjs +176 -0
  67. package/fesm2022/malva-ui-core-chip.mjs.map +1 -0
  68. package/fesm2022/malva-ui-core-color-picker.mjs +1204 -0
  69. package/fesm2022/malva-ui-core-color-picker.mjs.map +1 -0
  70. package/fesm2022/malva-ui-core-combobox.mjs +945 -0
  71. package/fesm2022/malva-ui-core-combobox.mjs.map +1 -0
  72. package/fesm2022/malva-ui-core-copy-to-clipboard.mjs +255 -0
  73. package/fesm2022/malva-ui-core-copy-to-clipboard.mjs.map +1 -0
  74. package/fesm2022/malva-ui-core-data-table.mjs +2696 -0
  75. package/fesm2022/malva-ui-core-data-table.mjs.map +1 -0
  76. package/fesm2022/malva-ui-core-date-range-picker.mjs +276 -0
  77. package/fesm2022/malva-ui-core-date-range-picker.mjs.map +1 -0
  78. package/fesm2022/malva-ui-core-day-picker.mjs +131 -0
  79. package/fesm2022/malva-ui-core-day-picker.mjs.map +1 -0
  80. package/fesm2022/malva-ui-core-dialog-routable-dialog-CvjXMtlD.mjs +94 -0
  81. package/fesm2022/malva-ui-core-dialog-routable-dialog-CvjXMtlD.mjs.map +1 -0
  82. package/fesm2022/malva-ui-core-dialog.mjs +1223 -0
  83. package/fesm2022/malva-ui-core-dialog.mjs.map +1 -0
  84. package/fesm2022/malva-ui-core-divider.mjs +80 -0
  85. package/fesm2022/malva-ui-core-divider.mjs.map +1 -0
  86. package/fesm2022/malva-ui-core-drawer-routable-drawer-qUk6Etnx.mjs +94 -0
  87. package/fesm2022/malva-ui-core-drawer-routable-drawer-qUk6Etnx.mjs.map +1 -0
  88. package/fesm2022/malva-ui-core-drawer.mjs +814 -0
  89. package/fesm2022/malva-ui-core-drawer.mjs.map +1 -0
  90. package/fesm2022/malva-ui-core-dropdown.mjs +994 -0
  91. package/fesm2022/malva-ui-core-dropdown.mjs.map +1 -0
  92. package/fesm2022/malva-ui-core-empty-state.mjs +50 -0
  93. package/fesm2022/malva-ui-core-empty-state.mjs.map +1 -0
  94. package/fesm2022/malva-ui-core-expand.mjs +130 -0
  95. package/fesm2022/malva-ui-core-expand.mjs.map +1 -0
  96. package/fesm2022/malva-ui-core-file-upload.mjs +451 -0
  97. package/fesm2022/malva-ui-core-file-upload.mjs.map +1 -0
  98. package/fesm2022/malva-ui-core-filter.mjs +1627 -0
  99. package/fesm2022/malva-ui-core-filter.mjs.map +1 -0
  100. package/fesm2022/malva-ui-core-form-utils-testing.mjs +39 -0
  101. package/fesm2022/malva-ui-core-form-utils-testing.mjs.map +1 -0
  102. package/fesm2022/malva-ui-core-form-utils.mjs +977 -0
  103. package/fesm2022/malva-ui-core-form-utils.mjs.map +1 -0
  104. package/fesm2022/malva-ui-core-form.mjs +283 -0
  105. package/fesm2022/malva-ui-core-form.mjs.map +1 -0
  106. package/fesm2022/malva-ui-core-icon-toggle.mjs +120 -0
  107. package/fesm2022/malva-ui-core-icon-toggle.mjs.map +1 -0
  108. package/fesm2022/malva-ui-core-input.mjs +375 -0
  109. package/fesm2022/malva-ui-core-input.mjs.map +1 -0
  110. package/fesm2022/malva-ui-core-kbd.mjs +131 -0
  111. package/fesm2022/malva-ui-core-kbd.mjs.map +1 -0
  112. package/fesm2022/malva-ui-core-layout.mjs +212 -0
  113. package/fesm2022/malva-ui-core-layout.mjs.map +1 -0
  114. package/fesm2022/malva-ui-core-link.mjs +89 -0
  115. package/fesm2022/malva-ui-core-link.mjs.map +1 -0
  116. package/fesm2022/malva-ui-core-list.mjs +413 -0
  117. package/fesm2022/malva-ui-core-list.mjs.map +1 -0
  118. package/fesm2022/malva-ui-core-loader.mjs +141 -0
  119. package/fesm2022/malva-ui-core-loader.mjs.map +1 -0
  120. package/fesm2022/malva-ui-core-menu.mjs +2540 -0
  121. package/fesm2022/malva-ui-core-menu.mjs.map +1 -0
  122. package/fesm2022/malva-ui-core-notification.mjs +201 -0
  123. package/fesm2022/malva-ui-core-notification.mjs.map +1 -0
  124. package/fesm2022/malva-ui-core-number-input.mjs +404 -0
  125. package/fesm2022/malva-ui-core-number-input.mjs.map +1 -0
  126. package/fesm2022/malva-ui-core-page.mjs +1898 -0
  127. package/fesm2022/malva-ui-core-page.mjs.map +1 -0
  128. package/fesm2022/malva-ui-core-pagination.mjs +458 -0
  129. package/fesm2022/malva-ui-core-pagination.mjs.map +1 -0
  130. package/fesm2022/malva-ui-core-pin-input.mjs +405 -0
  131. package/fesm2022/malva-ui-core-pin-input.mjs.map +1 -0
  132. package/fesm2022/malva-ui-core-popup.mjs +1488 -0
  133. package/fesm2022/malva-ui-core-popup.mjs.map +1 -0
  134. package/fesm2022/malva-ui-core-progress.mjs +109 -0
  135. package/fesm2022/malva-ui-core-progress.mjs.map +1 -0
  136. package/fesm2022/malva-ui-core-radio.mjs +317 -0
  137. package/fesm2022/malva-ui-core-radio.mjs.map +1 -0
  138. package/fesm2022/malva-ui-core-rating.mjs +236 -0
  139. package/fesm2022/malva-ui-core-rating.mjs.map +1 -0
  140. package/fesm2022/malva-ui-core-scrollbar.mjs +430 -0
  141. package/fesm2022/malva-ui-core-scrollbar.mjs.map +1 -0
  142. package/fesm2022/malva-ui-core-search-field.mjs +578 -0
  143. package/fesm2022/malva-ui-core-search-field.mjs.map +1 -0
  144. package/fesm2022/malva-ui-core-segmented.mjs +458 -0
  145. package/fesm2022/malva-ui-core-segmented.mjs.map +1 -0
  146. package/fesm2022/malva-ui-core-select.mjs +855 -0
  147. package/fesm2022/malva-ui-core-select.mjs.map +1 -0
  148. package/fesm2022/malva-ui-core-sidebar.mjs +1504 -0
  149. package/fesm2022/malva-ui-core-sidebar.mjs.map +1 -0
  150. package/fesm2022/malva-ui-core-skeleton.mjs +85 -0
  151. package/fesm2022/malva-ui-core-skeleton.mjs.map +1 -0
  152. package/fesm2022/malva-ui-core-slider.mjs +514 -0
  153. package/fesm2022/malva-ui-core-slider.mjs.map +1 -0
  154. package/fesm2022/malva-ui-core-split-pane.mjs +359 -0
  155. package/fesm2022/malva-ui-core-split-pane.mjs.map +1 -0
  156. package/fesm2022/malva-ui-core-status-indicator.mjs +78 -0
  157. package/fesm2022/malva-ui-core-status-indicator.mjs.map +1 -0
  158. package/fesm2022/malva-ui-core-stepper.mjs +332 -0
  159. package/fesm2022/malva-ui-core-stepper.mjs.map +1 -0
  160. package/fesm2022/malva-ui-core-switch.mjs +272 -0
  161. package/fesm2022/malva-ui-core-switch.mjs.map +1 -0
  162. package/fesm2022/malva-ui-core-table.mjs +79 -0
  163. package/fesm2022/malva-ui-core-table.mjs.map +1 -0
  164. package/fesm2022/malva-ui-core-tabs.mjs +794 -0
  165. package/fesm2022/malva-ui-core-tabs.mjs.map +1 -0
  166. package/fesm2022/malva-ui-core-textarea.mjs +201 -0
  167. package/fesm2022/malva-ui-core-textarea.mjs.map +1 -0
  168. package/fesm2022/malva-ui-core-tile.mjs +1404 -0
  169. package/fesm2022/malva-ui-core-tile.mjs.map +1 -0
  170. package/fesm2022/malva-ui-core-time-picker.mjs +533 -0
  171. package/fesm2022/malva-ui-core-time-picker.mjs.map +1 -0
  172. package/fesm2022/malva-ui-core-timeline.mjs +216 -0
  173. package/fesm2022/malva-ui-core-timeline.mjs.map +1 -0
  174. package/fesm2022/malva-ui-core-title.mjs +178 -0
  175. package/fesm2022/malva-ui-core-title.mjs.map +1 -0
  176. package/fesm2022/malva-ui-core-toast.mjs +749 -0
  177. package/fesm2022/malva-ui-core-toast.mjs.map +1 -0
  178. package/fesm2022/malva-ui-core-tokenizer.mjs +502 -0
  179. package/fesm2022/malva-ui-core-tokenizer.mjs.map +1 -0
  180. package/fesm2022/malva-ui-core-toolbar.mjs +141 -0
  181. package/fesm2022/malva-ui-core-toolbar.mjs.map +1 -0
  182. package/fesm2022/malva-ui-core-tooltip.mjs +432 -0
  183. package/fesm2022/malva-ui-core-tooltip.mjs.map +1 -0
  184. package/fesm2022/malva-ui-core-tree.mjs +505 -0
  185. package/fesm2022/malva-ui-core-tree.mjs.map +1 -0
  186. package/fesm2022/malva-ui-core-view-variant.mjs +292 -0
  187. package/fesm2022/malva-ui-core-view-variant.mjs.map +1 -0
  188. package/fesm2022/malva-ui-core.mjs +77 -0
  189. package/fesm2022/malva-ui-core.mjs.map +1 -0
  190. package/package.json +179 -156
  191. package/styles/malva-ui.css +253 -220
  192. package/styles/tokens.md +174 -173
  193. package/table/README.md +46 -0
  194. package/types/malva-ui-core-accordion.d.ts +121 -0
  195. package/types/malva-ui-core-action-bar.d.ts +82 -0
  196. package/types/malva-ui-core-alert.d.ts +131 -0
  197. package/types/malva-ui-core-autocomplete.d.ts +301 -0
  198. package/types/malva-ui-core-avatar-group.d.ts +119 -0
  199. package/types/malva-ui-core-avatar.d.ts +156 -0
  200. package/types/malva-ui-core-badge.d.ts +97 -0
  201. package/types/malva-ui-core-bottom-nav.d.ts +104 -0
  202. package/types/malva-ui-core-breadcrumb.d.ts +308 -0
  203. package/types/malva-ui-core-button.d.ts +194 -0
  204. package/types/malva-ui-core-calendar.d.ts +339 -0
  205. package/types/malva-ui-core-card.d.ts +88 -0
  206. package/types/malva-ui-core-chat.d.ts +375 -0
  207. package/types/malva-ui-core-checkbox.d.ts +158 -0
  208. package/types/malva-ui-core-chip.d.ts +128 -0
  209. package/types/malva-ui-core-color-picker.d.ts +442 -0
  210. package/types/malva-ui-core-combobox.d.ts +419 -0
  211. package/types/malva-ui-core-copy-to-clipboard.d.ts +148 -0
  212. package/types/malva-ui-core-data-table.d.ts +1074 -0
  213. package/types/malva-ui-core-date-range-picker.d.ts +149 -0
  214. package/types/malva-ui-core-day-picker.d.ts +55 -0
  215. package/types/malva-ui-core-dialog.d.ts +597 -0
  216. package/types/malva-ui-core-divider.d.ts +68 -0
  217. package/types/malva-ui-core-drawer.d.ts +333 -0
  218. package/types/malva-ui-core-dropdown.d.ts +592 -0
  219. package/types/malva-ui-core-empty-state.d.ts +37 -0
  220. package/types/malva-ui-core-expand.d.ts +102 -0
  221. package/types/malva-ui-core-file-upload.d.ts +267 -0
  222. package/types/malva-ui-core-filter.d.ts +552 -0
  223. package/types/malva-ui-core-form-utils-testing.d.ts +50 -0
  224. package/types/malva-ui-core-form-utils.d.ts +579 -0
  225. package/types/malva-ui-core-form.d.ts +176 -0
  226. package/types/malva-ui-core-icon-toggle.d.ts +80 -0
  227. package/types/malva-ui-core-input.d.ts +262 -0
  228. package/types/malva-ui-core-kbd.d.ts +56 -0
  229. package/types/malva-ui-core-layout.d.ts +70 -0
  230. package/types/malva-ui-core-link.d.ts +28 -0
  231. package/types/malva-ui-core-list.d.ts +252 -0
  232. package/types/malva-ui-core-loader.d.ts +89 -0
  233. package/types/malva-ui-core-menu.d.ts +954 -0
  234. package/types/malva-ui-core-notification.d.ts +122 -0
  235. package/types/malva-ui-core-number-input.d.ts +167 -0
  236. package/types/malva-ui-core-page.d.ts +799 -0
  237. package/types/malva-ui-core-pagination.d.ts +261 -0
  238. package/types/malva-ui-core-pin-input.d.ts +203 -0
  239. package/types/malva-ui-core-popup.d.ts +834 -0
  240. package/types/malva-ui-core-progress.d.ts +73 -0
  241. package/types/malva-ui-core-radio.d.ts +130 -0
  242. package/types/malva-ui-core-rating.d.ts +115 -0
  243. package/types/malva-ui-core-scrollbar.d.ts +203 -0
  244. package/types/malva-ui-core-search-field.d.ts +408 -0
  245. package/types/malva-ui-core-segmented.d.ts +206 -0
  246. package/types/malva-ui-core-select.d.ts +456 -0
  247. package/types/malva-ui-core-sidebar.d.ts +698 -0
  248. package/types/malva-ui-core-skeleton.d.ts +64 -0
  249. package/types/malva-ui-core-slider.d.ts +219 -0
  250. package/types/malva-ui-core-split-pane.d.ts +149 -0
  251. package/types/malva-ui-core-status-indicator.d.ts +65 -0
  252. package/types/malva-ui-core-stepper.d.ts +168 -0
  253. package/types/malva-ui-core-switch.d.ts +146 -0
  254. package/types/malva-ui-core-table.d.ts +37 -0
  255. package/types/malva-ui-core-tabs.d.ts +339 -0
  256. package/types/malva-ui-core-textarea.d.ts +79 -0
  257. package/types/malva-ui-core-tile.d.ts +373 -0
  258. package/types/malva-ui-core-time-picker.d.ts +141 -0
  259. package/types/malva-ui-core-timeline.d.ts +188 -0
  260. package/types/malva-ui-core-title.d.ts +66 -0
  261. package/types/malva-ui-core-toast.d.ts +432 -0
  262. package/types/malva-ui-core-tokenizer.d.ts +217 -0
  263. package/types/malva-ui-core-toolbar.d.ts +91 -0
  264. package/types/malva-ui-core-tooltip.d.ts +200 -0
  265. package/types/malva-ui-core-tree.d.ts +289 -0
  266. package/types/malva-ui-core-view-variant.d.ts +207 -0
  267. package/types/malva-ui-core.d.ts +72 -0
  268. package/view-variant/README.md +3 -0
  269. package/accordion/index.d.ts +0 -3
  270. package/accordion/lib/accordion/accordion.d.ts +0 -47
  271. package/accordion/lib/accordion-item/accordion-header.d.ts +0 -22
  272. package/accordion/lib/accordion-item/accordion-item.d.ts +0 -49
  273. package/accordion/malva-ui-core-accordion.d.ts +0 -5
  274. package/action-bar/index.d.ts +0 -4
  275. package/action-bar/lib/action-bar/action-bar.d.ts +0 -59
  276. package/action-bar/lib/action-bar/components/action-bar-actions.d.ts +0 -9
  277. package/action-bar/lib/action-bar/components/action-bar-logo.d.ts +0 -5
  278. package/action-bar/lib/action-bar/components/action-bar-spacer.d.ts +0 -5
  279. package/action-bar/malva-ui-core-action-bar.d.ts +0 -5
  280. package/alert/index.d.ts +0 -2
  281. package/alert/lib/alert/alert.d.ts +0 -84
  282. package/alert/lib/alert/alert.directives.d.ts +0 -44
  283. package/alert/malva-ui-core-alert.d.ts +0 -5
  284. package/autocomplete/index.d.ts +0 -1
  285. package/autocomplete/lib/autocomplete/autocomplete.d.ts +0 -296
  286. package/autocomplete/malva-ui-core-autocomplete.d.ts +0 -5
  287. package/avatar/index.d.ts +0 -2
  288. package/avatar/lib/avatar/avatar.d.ts +0 -125
  289. package/avatar/lib/color-from-text.pipe.d.ts +0 -21
  290. package/avatar/malva-ui-core-avatar.d.ts +0 -5
  291. package/avatar-group/index.d.ts +0 -1
  292. package/avatar-group/lib/avatar-group/avatar-group.d.ts +0 -115
  293. package/avatar-group/malva-ui-core-avatar-group.d.ts +0 -5
  294. package/badge/index.d.ts +0 -2
  295. package/badge/lib/badge/badge.d.ts +0 -59
  296. package/badge/lib/badge-icon.d.ts +0 -35
  297. package/badge/malva-ui-core-badge.d.ts +0 -5
  298. package/bottom-nav/index.d.ts +0 -1
  299. package/bottom-nav/lib/bottom-nav/bottom-nav.d.ts +0 -99
  300. package/bottom-nav/malva-ui-core-bottom-nav.d.ts +0 -5
  301. package/breadcrumb/index.d.ts +0 -5
  302. package/breadcrumb/lib/breadcrumb/breadcrumb-item-host.d.ts +0 -32
  303. package/breadcrumb/lib/breadcrumb/breadcrumb-item.d.ts +0 -41
  304. package/breadcrumb/lib/breadcrumb/breadcrumb-separator.d.ts +0 -31
  305. package/breadcrumb/lib/breadcrumb/breadcrumb.d.ts +0 -151
  306. package/breadcrumb/lib/breadcrumb/breadcrumb.types.d.ts +0 -26
  307. package/breadcrumb/malva-ui-core-breadcrumb.d.ts +0 -5
  308. package/button/index.d.ts +0 -7
  309. package/button/lib/button/button.d.ts +0 -61
  310. package/button/lib/button-close/button-close.d.ts +0 -24
  311. package/button/lib/button-group/button-group.d.ts +0 -21
  312. package/button/lib/button-split/button-split.d.ts +0 -21
  313. package/button/lib/button-toggle/button-toggle.d.ts +0 -33
  314. package/button/lib/button-variant.token.d.ts +0 -13
  315. package/button/lib/button.directives.d.ts +0 -14
  316. package/button/lib/button.types.d.ts +0 -8
  317. package/button/malva-ui-core-button.d.ts +0 -5
  318. package/calendar/index.d.ts +0 -3
  319. package/calendar/lib/calendar/calendar.d.ts +0 -182
  320. package/calendar/lib/date-provider/date-adapter.d.ts +0 -92
  321. package/calendar/lib/date-provider/native-date-adapter.d.ts +0 -60
  322. package/calendar/malva-ui-core-calendar.d.ts +0 -5
  323. package/card/index.d.ts +0 -5
  324. package/card/lib/card/card.d.ts +0 -43
  325. package/card/lib/card-actions-def.d.ts +0 -10
  326. package/card/lib/card-footer-def.d.ts +0 -13
  327. package/card/lib/card-header-def.d.ts +0 -10
  328. package/card/lib/card-subheader-def.d.ts +0 -16
  329. package/card/malva-ui-core-card.d.ts +0 -5
  330. package/chat/index.d.ts +0 -9
  331. package/chat/lib/chat/chat.d.ts +0 -133
  332. package/chat/lib/chat-audio/chat-audio.d.ts +0 -51
  333. package/chat/lib/chat-audio/chat-audio.service.d.ts +0 -21
  334. package/chat/lib/chat-date/chat-date.d.ts +0 -16
  335. package/chat/lib/chat-format.d.ts +0 -5
  336. package/chat/lib/chat-media-grid/chat-media-grid.d.ts +0 -32
  337. package/chat/lib/chat-message/chat-message.d.ts +0 -45
  338. package/chat/lib/chat-render-list.d.ts +0 -16
  339. package/chat/lib/chat-tokens.d.ts +0 -25
  340. package/chat/lib/chat-typing/chat-typing.d.ts +0 -16
  341. package/chat/lib/chat.types.d.ts +0 -80
  342. package/chat/lib/defs/chat-author-def.d.ts +0 -30
  343. package/chat/lib/defs/chat-date-def.d.ts +0 -22
  344. package/chat/lib/defs/chat-message-def.d.ts +0 -23
  345. package/chat/malva-ui-core-chat.d.ts +0 -5
  346. package/checkbox/index.d.ts +0 -3
  347. package/checkbox/lib/checkbox/checkbox.d.ts +0 -129
  348. package/checkbox/lib/checkbox-group/checkbox-group.d.ts +0 -24
  349. package/checkbox/lib/checkbox-group-token.d.ts +0 -6
  350. package/checkbox/malva-ui-core-checkbox.d.ts +0 -5
  351. package/chip/index.d.ts +0 -2
  352. package/chip/lib/chip/chip.d.ts +0 -107
  353. package/chip/lib/chip/chip.directives.d.ts +0 -18
  354. package/chip/malva-ui-core-chip.d.ts +0 -5
  355. package/color-picker/index.d.ts +0 -3
  356. package/color-picker/lib/color-picker/color-picker.d.ts +0 -188
  357. package/color-picker/lib/color-picker-popup/color-picker-popup.d.ts +0 -151
  358. package/color-picker/lib/color-utils/color-utils.d.ts +0 -102
  359. package/color-picker/malva-ui-core-color-picker.d.ts +0 -5
  360. package/combobox/index.d.ts +0 -2
  361. package/combobox/lib/combobox/combobox.d.ts +0 -400
  362. package/combobox/lib/combobox-template.directives.d.ts +0 -10
  363. package/combobox/malva-ui-core-combobox.d.ts +0 -5
  364. package/copy-to-clipboard/index.d.ts +0 -1
  365. package/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.d.ts +0 -130
  366. package/copy-to-clipboard/malva-ui-core-copy-to-clipboard.d.ts +0 -5
  367. package/data-table/index.d.ts +0 -8
  368. package/data-table/lib/data-source.d.ts +0 -5
  369. package/data-table/lib/data-table/data-table-layout.d.ts +0 -31
  370. package/data-table/lib/data-table/data-table.d.ts +0 -699
  371. package/data-table/lib/data-table/services/data-table-column-visibility.service.d.ts +0 -19
  372. package/data-table/lib/data-table/services/data-table-editing.service.d.ts +0 -37
  373. package/data-table/lib/data-table/services/data-table-pinning.service.d.ts +0 -37
  374. package/data-table/lib/data-table-cell.d.ts +0 -44
  375. package/data-table/lib/data-table-edit-cell.d.ts +0 -44
  376. package/data-table/lib/data-table-error.d.ts +0 -37
  377. package/data-table/lib/data-table-footer.d.ts +0 -26
  378. package/data-table/lib/data-table-no-data.d.ts +0 -19
  379. package/data-table/lib/filter-dropdown/filter-dropdown.d.ts +0 -54
  380. package/data-table/lib/types.d.ts +0 -134
  381. package/data-table/malva-ui-core-data-table.d.ts +0 -5
  382. package/date-range-picker/index.d.ts +0 -1
  383. package/date-range-picker/lib/date-range-picker/date-range-picker.d.ts +0 -145
  384. package/date-range-picker/malva-ui-core-date-range-picker.d.ts +0 -5
  385. package/day-picker/index.d.ts +0 -1
  386. package/day-picker/lib/day-picker/day-picker.d.ts +0 -51
  387. package/day-picker/malva-ui-core-day-picker.d.ts +0 -5
  388. package/dialog/index.d.ts +0 -11
  389. package/dialog/lib/confirm-dialog-options.d.ts +0 -41
  390. package/dialog/lib/confirm-dialog.d.ts +0 -52
  391. package/dialog/lib/dialog/dialog.d.ts +0 -22
  392. package/dialog/lib/dialog-body.d.ts +0 -9
  393. package/dialog/lib/dialog-close.d.ts +0 -27
  394. package/dialog/lib/dialog-config.d.ts +0 -112
  395. package/dialog/lib/dialog-container.d.ts +0 -40
  396. package/dialog/lib/dialog-footer.d.ts +0 -13
  397. package/dialog/lib/dialog-header.d.ts +0 -74
  398. package/dialog/lib/dialog-ref.d.ts +0 -95
  399. package/dialog/lib/dialog-template.d.ts +0 -65
  400. package/dialog/lib/dialog-text-content.d.ts +0 -24
  401. package/dialog/lib/dialog.service.d.ts +0 -63
  402. package/dialog/lib/generate-routable-dialog-route.d.ts +0 -49
  403. package/dialog/lib/inject-dialog-ref.d.ts +0 -8
  404. package/dialog/lib/routable-dialog.d.ts +0 -30
  405. package/dialog/malva-ui-core-dialog.d.ts +0 -5
  406. package/divider/index.d.ts +0 -1
  407. package/divider/lib/divider/divider.d.ts +0 -64
  408. package/divider/malva-ui-core-divider.d.ts +0 -5
  409. package/drawer/index.d.ts +0 -11
  410. package/drawer/lib/drawer/drawer.d.ts +0 -106
  411. package/drawer/lib/drawer-body.d.ts +0 -8
  412. package/drawer/lib/drawer-content.d.ts +0 -6
  413. package/drawer/lib/drawer-footer.d.ts +0 -5
  414. package/drawer/lib/drawer-header.d.ts +0 -5
  415. package/drawer/lib/drawer-ref.d.ts +0 -29
  416. package/drawer/lib/drawer-resize.d.ts +0 -65
  417. package/drawer/lib/drawer-section/drawer-section.d.ts +0 -15
  418. package/drawer/lib/drawer-sections/drawer-sections.d.ts +0 -22
  419. package/drawer/lib/drawer-sections.service.d.ts +0 -42
  420. package/drawer/lib/drawer.service.d.ts +0 -66
  421. package/drawer/lib/generate-routable-drawer-route.d.ts +0 -42
  422. package/drawer/lib/routable-drawer.d.ts +0 -30
  423. package/drawer/malva-ui-core-drawer.d.ts +0 -5
  424. package/dropdown/index.d.ts +0 -9
  425. package/dropdown/lib/active-descendant.d.ts +0 -64
  426. package/dropdown/lib/dropdown-panel/dropdown-panel.d.ts +0 -178
  427. package/dropdown/lib/highlight-match.pipe.d.ts +0 -27
  428. package/dropdown/lib/option-matcher.d.ts +0 -87
  429. package/dropdown/lib/options-adapter.d.ts +0 -142
  430. package/dropdown/lib/options-result.d.ts +0 -6
  431. package/dropdown/lib/reconciliation.d.ts +0 -19
  432. package/dropdown/lib/select-data-source.d.ts +0 -18
  433. package/dropdown/lib/select-option.d.ts +0 -37
  434. package/dropdown/malva-ui-core-dropdown.d.ts +0 -5
  435. package/empty-state/index.d.ts +0 -1
  436. package/empty-state/lib/empty-state/empty-state.d.ts +0 -34
  437. package/empty-state/malva-ui-core-empty-state.d.ts +0 -5
  438. package/esm2022/accordion/index.js +0 -4
  439. package/esm2022/accordion/index.js.map +0 -1
  440. package/esm2022/accordion/lib/accordion/accordion.js +0 -65
  441. package/esm2022/accordion/lib/accordion/accordion.js.map +0 -1
  442. package/esm2022/accordion/lib/accordion-item/accordion-header.js +0 -30
  443. package/esm2022/accordion/lib/accordion-item/accordion-header.js.map +0 -1
  444. package/esm2022/accordion/lib/accordion-item/accordion-item.js +0 -70
  445. package/esm2022/accordion/lib/accordion-item/accordion-item.js.map +0 -1
  446. package/esm2022/accordion/malva-ui-core-accordion.js +0 -5
  447. package/esm2022/accordion/malva-ui-core-accordion.js.map +0 -1
  448. package/esm2022/action-bar/index.js +0 -5
  449. package/esm2022/action-bar/index.js.map +0 -1
  450. package/esm2022/action-bar/lib/action-bar/action-bar.js +0 -64
  451. package/esm2022/action-bar/lib/action-bar/action-bar.js.map +0 -1
  452. package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js +0 -20
  453. package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js.map +0 -1
  454. package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js +0 -13
  455. package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js.map +0 -1
  456. package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js +0 -13
  457. package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js.map +0 -1
  458. package/esm2022/action-bar/malva-ui-core-action-bar.js +0 -5
  459. package/esm2022/action-bar/malva-ui-core-action-bar.js.map +0 -1
  460. package/esm2022/alert/index.js +0 -3
  461. package/esm2022/alert/index.js.map +0 -1
  462. package/esm2022/alert/lib/alert/alert.directives.js +0 -53
  463. package/esm2022/alert/lib/alert/alert.directives.js.map +0 -1
  464. package/esm2022/alert/lib/alert/alert.js +0 -118
  465. package/esm2022/alert/lib/alert/alert.js.map +0 -1
  466. package/esm2022/alert/malva-ui-core-alert.js +0 -5
  467. package/esm2022/alert/malva-ui-core-alert.js.map +0 -1
  468. package/esm2022/autocomplete/index.js +0 -2
  469. package/esm2022/autocomplete/index.js.map +0 -1
  470. package/esm2022/autocomplete/lib/autocomplete/autocomplete.js +0 -765
  471. package/esm2022/autocomplete/lib/autocomplete/autocomplete.js.map +0 -1
  472. package/esm2022/autocomplete/malva-ui-core-autocomplete.js +0 -5
  473. package/esm2022/autocomplete/malva-ui-core-autocomplete.js.map +0 -1
  474. package/esm2022/avatar/index.js +0 -3
  475. package/esm2022/avatar/index.js.map +0 -1
  476. package/esm2022/avatar/lib/avatar/avatar.js +0 -192
  477. package/esm2022/avatar/lib/avatar/avatar.js.map +0 -1
  478. package/esm2022/avatar/lib/color-from-text.pipe.js +0 -39
  479. package/esm2022/avatar/lib/color-from-text.pipe.js.map +0 -1
  480. package/esm2022/avatar/malva-ui-core-avatar.js +0 -5
  481. package/esm2022/avatar/malva-ui-core-avatar.js.map +0 -1
  482. package/esm2022/avatar-group/index.js +0 -2
  483. package/esm2022/avatar-group/index.js.map +0 -1
  484. package/esm2022/avatar-group/lib/avatar-group/avatar-group.js +0 -217
  485. package/esm2022/avatar-group/lib/avatar-group/avatar-group.js.map +0 -1
  486. package/esm2022/avatar-group/malva-ui-core-avatar-group.js +0 -5
  487. package/esm2022/avatar-group/malva-ui-core-avatar-group.js.map +0 -1
  488. package/esm2022/badge/index.js +0 -3
  489. package/esm2022/badge/index.js.map +0 -1
  490. package/esm2022/badge/lib/badge/badge.js +0 -71
  491. package/esm2022/badge/lib/badge/badge.js.map +0 -1
  492. package/esm2022/badge/lib/badge-icon.js +0 -47
  493. package/esm2022/badge/lib/badge-icon.js.map +0 -1
  494. package/esm2022/badge/malva-ui-core-badge.js +0 -5
  495. package/esm2022/badge/malva-ui-core-badge.js.map +0 -1
  496. package/esm2022/bottom-nav/index.js +0 -2
  497. package/esm2022/bottom-nav/index.js.map +0 -1
  498. package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js +0 -155
  499. package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js.map +0 -1
  500. package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js +0 -5
  501. package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js.map +0 -1
  502. package/esm2022/breadcrumb/index.js +0 -6
  503. package/esm2022/breadcrumb/index.js.map +0 -1
  504. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js +0 -43
  505. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js.map +0 -1
  506. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js +0 -110
  507. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js.map +0 -1
  508. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js +0 -38
  509. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js.map +0 -1
  510. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js +0 -284
  511. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js.map +0 -1
  512. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js +0 -1
  513. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js.map +0 -1
  514. package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js +0 -5
  515. package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js.map +0 -1
  516. package/esm2022/button/index.js +0 -8
  517. package/esm2022/button/index.js.map +0 -1
  518. package/esm2022/button/lib/button/button.js +0 -137
  519. package/esm2022/button/lib/button/button.js.map +0 -1
  520. package/esm2022/button/lib/button-close/button-close.js +0 -52
  521. package/esm2022/button/lib/button-close/button-close.js.map +0 -1
  522. package/esm2022/button/lib/button-group/button-group.js +0 -44
  523. package/esm2022/button/lib/button-group/button-group.js.map +0 -1
  524. package/esm2022/button/lib/button-split/button-split.js +0 -44
  525. package/esm2022/button/lib/button-split/button-split.js.map +0 -1
  526. package/esm2022/button/lib/button-toggle/button-toggle.js +0 -94
  527. package/esm2022/button/lib/button-toggle/button-toggle.js.map +0 -1
  528. package/esm2022/button/lib/button-variant.token.js +0 -4
  529. package/esm2022/button/lib/button-variant.token.js.map +0 -1
  530. package/esm2022/button/lib/button.directives.js +0 -37
  531. package/esm2022/button/lib/button.directives.js.map +0 -1
  532. package/esm2022/button/lib/button.types.js +0 -1
  533. package/esm2022/button/lib/button.types.js.map +0 -1
  534. package/esm2022/button/malva-ui-core-button.js +0 -5
  535. package/esm2022/button/malva-ui-core-button.js.map +0 -1
  536. package/esm2022/calendar/index.js +0 -4
  537. package/esm2022/calendar/index.js.map +0 -1
  538. package/esm2022/calendar/lib/calendar/calendar.js +0 -672
  539. package/esm2022/calendar/lib/calendar/calendar.js.map +0 -1
  540. package/esm2022/calendar/lib/date-provider/date-adapter.js +0 -111
  541. package/esm2022/calendar/lib/date-provider/date-adapter.js.map +0 -1
  542. package/esm2022/calendar/lib/date-provider/native-date-adapter.js +0 -151
  543. package/esm2022/calendar/lib/date-provider/native-date-adapter.js.map +0 -1
  544. package/esm2022/calendar/malva-ui-core-calendar.js +0 -5
  545. package/esm2022/calendar/malva-ui-core-calendar.js.map +0 -1
  546. package/esm2022/card/index.js +0 -6
  547. package/esm2022/card/index.js.map +0 -1
  548. package/esm2022/card/lib/card/card.js +0 -54
  549. package/esm2022/card/lib/card/card.js.map +0 -1
  550. package/esm2022/card/lib/card-actions-def.js +0 -27
  551. package/esm2022/card/lib/card-actions-def.js.map +0 -1
  552. package/esm2022/card/lib/card-footer-def.js +0 -32
  553. package/esm2022/card/lib/card-footer-def.js.map +0 -1
  554. package/esm2022/card/lib/card-header-def.js +0 -27
  555. package/esm2022/card/lib/card-header-def.js.map +0 -1
  556. package/esm2022/card/lib/card-subheader-def.js +0 -33
  557. package/esm2022/card/lib/card-subheader-def.js.map +0 -1
  558. package/esm2022/card/malva-ui-core-card.js +0 -5
  559. package/esm2022/card/malva-ui-core-card.js.map +0 -1
  560. package/esm2022/chat/index.js +0 -10
  561. package/esm2022/chat/index.js.map +0 -1
  562. package/esm2022/chat/lib/chat/chat.js +0 -326
  563. package/esm2022/chat/lib/chat/chat.js.map +0 -1
  564. package/esm2022/chat/lib/chat-audio/chat-audio.js +0 -110
  565. package/esm2022/chat/lib/chat-audio/chat-audio.js.map +0 -1
  566. package/esm2022/chat/lib/chat-audio/chat-audio.service.js +0 -28
  567. package/esm2022/chat/lib/chat-audio/chat-audio.service.js.map +0 -1
  568. package/esm2022/chat/lib/chat-date/chat-date.js +0 -46
  569. package/esm2022/chat/lib/chat-date/chat-date.js.map +0 -1
  570. package/esm2022/chat/lib/chat-format.js +0 -11
  571. package/esm2022/chat/lib/chat-format.js.map +0 -1
  572. package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js +0 -53
  573. package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js.map +0 -1
  574. package/esm2022/chat/lib/chat-message/chat-message.js +0 -86
  575. package/esm2022/chat/lib/chat-message/chat-message.js.map +0 -1
  576. package/esm2022/chat/lib/chat-render-list.js +0 -55
  577. package/esm2022/chat/lib/chat-render-list.js.map +0 -1
  578. package/esm2022/chat/lib/chat-tokens.js +0 -9
  579. package/esm2022/chat/lib/chat-tokens.js.map +0 -1
  580. package/esm2022/chat/lib/chat-typing/chat-typing.js +0 -50
  581. package/esm2022/chat/lib/chat-typing/chat-typing.js.map +0 -1
  582. package/esm2022/chat/lib/chat.types.js +0 -1
  583. package/esm2022/chat/lib/chat.types.js.map +0 -1
  584. package/esm2022/chat/lib/defs/chat-author-def.js +0 -27
  585. package/esm2022/chat/lib/defs/chat-author-def.js.map +0 -1
  586. package/esm2022/chat/lib/defs/chat-date-def.js +0 -24
  587. package/esm2022/chat/lib/defs/chat-date-def.js.map +0 -1
  588. package/esm2022/chat/lib/defs/chat-message-def.js +0 -30
  589. package/esm2022/chat/lib/defs/chat-message-def.js.map +0 -1
  590. package/esm2022/chat/malva-ui-core-chat.js +0 -5
  591. package/esm2022/chat/malva-ui-core-chat.js.map +0 -1
  592. package/esm2022/checkbox/index.js +0 -4
  593. package/esm2022/checkbox/index.js.map +0 -1
  594. package/esm2022/checkbox/lib/checkbox/checkbox.js +0 -201
  595. package/esm2022/checkbox/lib/checkbox/checkbox.js.map +0 -1
  596. package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js +0 -68
  597. package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js.map +0 -1
  598. package/esm2022/checkbox/lib/checkbox-group-token.js +0 -3
  599. package/esm2022/checkbox/lib/checkbox-group-token.js.map +0 -1
  600. package/esm2022/checkbox/malva-ui-core-checkbox.js +0 -5
  601. package/esm2022/checkbox/malva-ui-core-checkbox.js.map +0 -1
  602. package/esm2022/chip/index.js +0 -3
  603. package/esm2022/chip/index.js.map +0 -1
  604. package/esm2022/chip/lib/chip/chip.directives.js +0 -32
  605. package/esm2022/chip/lib/chip/chip.directives.js.map +0 -1
  606. package/esm2022/chip/lib/chip/chip.js +0 -140
  607. package/esm2022/chip/lib/chip/chip.js.map +0 -1
  608. package/esm2022/chip/malva-ui-core-chip.js +0 -5
  609. package/esm2022/chip/malva-ui-core-chip.js.map +0 -1
  610. package/esm2022/color-picker/index.js +0 -4
  611. package/esm2022/color-picker/index.js.map +0 -1
  612. package/esm2022/color-picker/lib/color-picker/color-picker.js +0 -530
  613. package/esm2022/color-picker/lib/color-picker/color-picker.js.map +0 -1
  614. package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js +0 -419
  615. package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js.map +0 -1
  616. package/esm2022/color-picker/lib/color-utils/color-utils.js +0 -256
  617. package/esm2022/color-picker/lib/color-utils/color-utils.js.map +0 -1
  618. package/esm2022/color-picker/malva-ui-core-color-picker.js +0 -5
  619. package/esm2022/color-picker/malva-ui-core-color-picker.js.map +0 -1
  620. package/esm2022/combobox/index.js +0 -3
  621. package/esm2022/combobox/index.js.map +0 -1
  622. package/esm2022/combobox/lib/combobox/combobox.js +0 -911
  623. package/esm2022/combobox/lib/combobox/combobox.js.map +0 -1
  624. package/esm2022/combobox/lib/combobox-template.directives.js +0 -24
  625. package/esm2022/combobox/lib/combobox-template.directives.js.map +0 -1
  626. package/esm2022/combobox/malva-ui-core-combobox.js +0 -5
  627. package/esm2022/combobox/malva-ui-core-combobox.js.map +0 -1
  628. package/esm2022/copy-to-clipboard/index.js +0 -2
  629. package/esm2022/copy-to-clipboard/index.js.map +0 -1
  630. package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js +0 -201
  631. package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js.map +0 -1
  632. package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js +0 -5
  633. package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js.map +0 -1
  634. package/esm2022/data-table/index.js +0 -9
  635. package/esm2022/data-table/index.js.map +0 -1
  636. package/esm2022/data-table/lib/data-source.js +0 -6
  637. package/esm2022/data-table/lib/data-source.js.map +0 -1
  638. package/esm2022/data-table/lib/data-table/data-table-layout.js +0 -84
  639. package/esm2022/data-table/lib/data-table/data-table-layout.js.map +0 -1
  640. package/esm2022/data-table/lib/data-table/data-table.js +0 -1846
  641. package/esm2022/data-table/lib/data-table/data-table.js.map +0 -1
  642. package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js +0 -37
  643. package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js.map +0 -1
  644. package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js +0 -63
  645. package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js.map +0 -1
  646. package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js +0 -68
  647. package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js.map +0 -1
  648. package/esm2022/data-table/lib/data-table-cell.js +0 -46
  649. package/esm2022/data-table/lib/data-table-cell.js.map +0 -1
  650. package/esm2022/data-table/lib/data-table-edit-cell.js +0 -46
  651. package/esm2022/data-table/lib/data-table-edit-cell.js.map +0 -1
  652. package/esm2022/data-table/lib/data-table-error.js +0 -37
  653. package/esm2022/data-table/lib/data-table-error.js.map +0 -1
  654. package/esm2022/data-table/lib/data-table-footer.js +0 -33
  655. package/esm2022/data-table/lib/data-table-footer.js.map +0 -1
  656. package/esm2022/data-table/lib/data-table-no-data.js +0 -26
  657. package/esm2022/data-table/lib/data-table-no-data.js.map +0 -1
  658. package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js +0 -224
  659. package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js.map +0 -1
  660. package/esm2022/data-table/lib/types.js +0 -1
  661. package/esm2022/data-table/lib/types.js.map +0 -1
  662. package/esm2022/data-table/malva-ui-core-data-table.js +0 -5
  663. package/esm2022/data-table/malva-ui-core-data-table.js.map +0 -1
  664. package/esm2022/date-range-picker/index.js +0 -2
  665. package/esm2022/date-range-picker/index.js.map +0 -1
  666. package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js +0 -269
  667. package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js.map +0 -1
  668. package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js +0 -5
  669. package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js.map +0 -1
  670. package/esm2022/day-picker/index.js +0 -2
  671. package/esm2022/day-picker/index.js.map +0 -1
  672. package/esm2022/day-picker/lib/day-picker/day-picker.js +0 -124
  673. package/esm2022/day-picker/lib/day-picker/day-picker.js.map +0 -1
  674. package/esm2022/day-picker/malva-ui-core-day-picker.js +0 -5
  675. package/esm2022/day-picker/malva-ui-core-day-picker.js.map +0 -1
  676. package/esm2022/dialog/index.js +0 -12
  677. package/esm2022/dialog/index.js.map +0 -1
  678. package/esm2022/dialog/lib/confirm-dialog-options.js +0 -1
  679. package/esm2022/dialog/lib/confirm-dialog-options.js.map +0 -1
  680. package/esm2022/dialog/lib/confirm-dialog.js +0 -155
  681. package/esm2022/dialog/lib/confirm-dialog.js.map +0 -1
  682. package/esm2022/dialog/lib/dialog/dialog.js +0 -40
  683. package/esm2022/dialog/lib/dialog/dialog.js.map +0 -1
  684. package/esm2022/dialog/lib/dialog-body.js +0 -33
  685. package/esm2022/dialog/lib/dialog-body.js.map +0 -1
  686. package/esm2022/dialog/lib/dialog-close.js +0 -45
  687. package/esm2022/dialog/lib/dialog-close.js.map +0 -1
  688. package/esm2022/dialog/lib/dialog-config.js +0 -23
  689. package/esm2022/dialog/lib/dialog-config.js.map +0 -1
  690. package/esm2022/dialog/lib/dialog-container.js +0 -69
  691. package/esm2022/dialog/lib/dialog-container.js.map +0 -1
  692. package/esm2022/dialog/lib/dialog-footer.js +0 -29
  693. package/esm2022/dialog/lib/dialog-footer.js.map +0 -1
  694. package/esm2022/dialog/lib/dialog-header.js +0 -181
  695. package/esm2022/dialog/lib/dialog-header.js.map +0 -1
  696. package/esm2022/dialog/lib/dialog-ref.js +0 -167
  697. package/esm2022/dialog/lib/dialog-ref.js.map +0 -1
  698. package/esm2022/dialog/lib/dialog-template.js +0 -136
  699. package/esm2022/dialog/lib/dialog-template.js.map +0 -1
  700. package/esm2022/dialog/lib/dialog-text-content.js +0 -59
  701. package/esm2022/dialog/lib/dialog-text-content.js.map +0 -1
  702. package/esm2022/dialog/lib/dialog.service.js +0 -205
  703. package/esm2022/dialog/lib/dialog.service.js.map +0 -1
  704. package/esm2022/dialog/lib/generate-routable-dialog-route.js +0 -59
  705. package/esm2022/dialog/lib/generate-routable-dialog-route.js.map +0 -1
  706. package/esm2022/dialog/lib/inject-dialog-ref.js +0 -16
  707. package/esm2022/dialog/lib/inject-dialog-ref.js.map +0 -1
  708. package/esm2022/dialog/lib/routable-dialog.js +0 -91
  709. package/esm2022/dialog/lib/routable-dialog.js.map +0 -1
  710. package/esm2022/dialog/malva-ui-core-dialog.js +0 -5
  711. package/esm2022/dialog/malva-ui-core-dialog.js.map +0 -1
  712. package/esm2022/divider/index.js +0 -2
  713. package/esm2022/divider/index.js.map +0 -1
  714. package/esm2022/divider/lib/divider/divider.js +0 -73
  715. package/esm2022/divider/lib/divider/divider.js.map +0 -1
  716. package/esm2022/divider/malva-ui-core-divider.js +0 -5
  717. package/esm2022/divider/malva-ui-core-divider.js.map +0 -1
  718. package/esm2022/drawer/index.js +0 -12
  719. package/esm2022/drawer/index.js.map +0 -1
  720. package/esm2022/drawer/lib/drawer/drawer.js +0 -180
  721. package/esm2022/drawer/lib/drawer/drawer.js.map +0 -1
  722. package/esm2022/drawer/lib/drawer-body.js +0 -32
  723. package/esm2022/drawer/lib/drawer-body.js.map +0 -1
  724. package/esm2022/drawer/lib/drawer-content.js +0 -14
  725. package/esm2022/drawer/lib/drawer-content.js.map +0 -1
  726. package/esm2022/drawer/lib/drawer-footer.js +0 -14
  727. package/esm2022/drawer/lib/drawer-footer.js.map +0 -1
  728. package/esm2022/drawer/lib/drawer-header.js +0 -14
  729. package/esm2022/drawer/lib/drawer-header.js.map +0 -1
  730. package/esm2022/drawer/lib/drawer-ref.js +0 -31
  731. package/esm2022/drawer/lib/drawer-ref.js.map +0 -1
  732. package/esm2022/drawer/lib/drawer-resize.js +0 -243
  733. package/esm2022/drawer/lib/drawer-resize.js.map +0 -1
  734. package/esm2022/drawer/lib/drawer-section/drawer-section.js +0 -26
  735. package/esm2022/drawer/lib/drawer-section/drawer-section.js.map +0 -1
  736. package/esm2022/drawer/lib/drawer-sections/drawer-sections.js +0 -58
  737. package/esm2022/drawer/lib/drawer-sections/drawer-sections.js.map +0 -1
  738. package/esm2022/drawer/lib/drawer-sections.service.js +0 -83
  739. package/esm2022/drawer/lib/drawer-sections.service.js.map +0 -1
  740. package/esm2022/drawer/lib/drawer.service.js +0 -86
  741. package/esm2022/drawer/lib/drawer.service.js.map +0 -1
  742. package/esm2022/drawer/lib/generate-routable-drawer-route.js +0 -52
  743. package/esm2022/drawer/lib/generate-routable-drawer-route.js.map +0 -1
  744. package/esm2022/drawer/lib/routable-drawer.js +0 -91
  745. package/esm2022/drawer/lib/routable-drawer.js.map +0 -1
  746. package/esm2022/drawer/malva-ui-core-drawer.js +0 -5
  747. package/esm2022/drawer/malva-ui-core-drawer.js.map +0 -1
  748. package/esm2022/dropdown/index.js +0 -10
  749. package/esm2022/dropdown/index.js.map +0 -1
  750. package/esm2022/dropdown/lib/active-descendant.js +0 -92
  751. package/esm2022/dropdown/lib/active-descendant.js.map +0 -1
  752. package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js +0 -295
  753. package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js.map +0 -1
  754. package/esm2022/dropdown/lib/highlight-match.pipe.js +0 -36
  755. package/esm2022/dropdown/lib/highlight-match.pipe.js.map +0 -1
  756. package/esm2022/dropdown/lib/option-matcher.js +0 -124
  757. package/esm2022/dropdown/lib/option-matcher.js.map +0 -1
  758. package/esm2022/dropdown/lib/options-adapter.js +0 -356
  759. package/esm2022/dropdown/lib/options-adapter.js.map +0 -1
  760. package/esm2022/dropdown/lib/options-result.js +0 -11
  761. package/esm2022/dropdown/lib/options-result.js.map +0 -1
  762. package/esm2022/dropdown/lib/reconciliation.js +0 -32
  763. package/esm2022/dropdown/lib/reconciliation.js.map +0 -1
  764. package/esm2022/dropdown/lib/select-data-source.js +0 -21
  765. package/esm2022/dropdown/lib/select-data-source.js.map +0 -1
  766. package/esm2022/dropdown/lib/select-option.js +0 -25
  767. package/esm2022/dropdown/lib/select-option.js.map +0 -1
  768. package/esm2022/dropdown/malva-ui-core-dropdown.js +0 -5
  769. package/esm2022/dropdown/malva-ui-core-dropdown.js.map +0 -1
  770. package/esm2022/empty-state/index.js +0 -2
  771. package/esm2022/empty-state/index.js.map +0 -1
  772. package/esm2022/empty-state/lib/empty-state/empty-state.js +0 -43
  773. package/esm2022/empty-state/lib/empty-state/empty-state.js.map +0 -1
  774. package/esm2022/empty-state/malva-ui-core-empty-state.js +0 -5
  775. package/esm2022/empty-state/malva-ui-core-empty-state.js.map +0 -1
  776. package/esm2022/expand/index.js +0 -3
  777. package/esm2022/expand/index.js.map +0 -1
  778. package/esm2022/expand/lib/expand/expand-content.js +0 -33
  779. package/esm2022/expand/lib/expand/expand-content.js.map +0 -1
  780. package/esm2022/expand/lib/expand/expand.js +0 -93
  781. package/esm2022/expand/lib/expand/expand.js.map +0 -1
  782. package/esm2022/expand/malva-ui-core-expand.js +0 -5
  783. package/esm2022/expand/malva-ui-core-expand.js.map +0 -1
  784. package/esm2022/file-upload/index.js +0 -5
  785. package/esm2022/file-upload/index.js.map +0 -1
  786. package/esm2022/file-upload/lib/file-upload/file-upload.js +0 -324
  787. package/esm2022/file-upload/lib/file-upload/file-upload.js.map +0 -1
  788. package/esm2022/file-upload/lib/file-upload/file-upload.types.js +0 -1
  789. package/esm2022/file-upload/lib/file-upload/file-upload.types.js.map +0 -1
  790. package/esm2022/file-upload/lib/file-upload-action.js +0 -65
  791. package/esm2022/file-upload/lib/file-upload-action.js.map +0 -1
  792. package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js +0 -55
  793. package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js.map +0 -1
  794. package/esm2022/file-upload/malva-ui-core-file-upload.js +0 -5
  795. package/esm2022/file-upload/malva-ui-core-file-upload.js.map +0 -1
  796. package/esm2022/filter/index.js +0 -4
  797. package/esm2022/filter/index.js.map +0 -1
  798. package/esm2022/filter/lib/filter/filter.js +0 -552
  799. package/esm2022/filter/lib/filter/filter.js.map +0 -1
  800. package/esm2022/filter/lib/filter.types.js +0 -1
  801. package/esm2022/filter/lib/filter.types.js.map +0 -1
  802. package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js +0 -518
  803. package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js.map +0 -1
  804. package/esm2022/filter/malva-ui-core-filter.js +0 -5
  805. package/esm2022/filter/malva-ui-core-filter.js.map +0 -1
  806. package/esm2022/form/index.js +0 -7
  807. package/esm2022/form/index.js.map +0 -1
  808. package/esm2022/form/lib/fieldset/fieldset.js +0 -101
  809. package/esm2022/form/lib/fieldset/fieldset.js.map +0 -1
  810. package/esm2022/form/lib/fieldset-span.js +0 -49
  811. package/esm2022/form/lib/fieldset-span.js.map +0 -1
  812. package/esm2022/form/lib/form/form.js +0 -60
  813. package/esm2022/form/lib/form/form.js.map +0 -1
  814. package/esm2022/form/lib/form-actions.js +0 -34
  815. package/esm2022/form/lib/form-actions.js.map +0 -1
  816. package/esm2022/form/lib/form-gap.js +0 -15
  817. package/esm2022/form/lib/form-gap.js.map +0 -1
  818. package/esm2022/form/lib/form-header.js +0 -27
  819. package/esm2022/form/lib/form-header.js.map +0 -1
  820. package/esm2022/form/lib/form.types.js +0 -1
  821. package/esm2022/form/lib/form.types.js.map +0 -1
  822. package/esm2022/form/malva-ui-core-form.js +0 -5
  823. package/esm2022/form/malva-ui-core-form.js.map +0 -1
  824. package/esm2022/form-utils/index.js +0 -16
  825. package/esm2022/form-utils/index.js.map +0 -1
  826. package/esm2022/form-utils/lib/aria-value-bridge.js +0 -57
  827. package/esm2022/form-utils/lib/aria-value-bridge.js.map +0 -1
  828. package/esm2022/form-utils/lib/description/description.js +0 -24
  829. package/esm2022/form-utils/lib/description/description.js.map +0 -1
  830. package/esm2022/form-utils/lib/focusable-group-base.js +0 -87
  831. package/esm2022/form-utils/lib/focusable-group-base.js.map +0 -1
  832. package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js +0 -192
  833. package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js.map +0 -1
  834. package/esm2022/form-utils/lib/form-control-sides.js +0 -34
  835. package/esm2022/form-utils/lib/form-control-sides.js.map +0 -1
  836. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js +0 -14
  837. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js.map +0 -1
  838. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js +0 -47
  839. package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js.map +0 -1
  840. package/esm2022/form-utils/lib/form-field/form-field.js +0 -245
  841. package/esm2022/form-utils/lib/form-field/form-field.js.map +0 -1
  842. package/esm2022/form-utils/lib/hint/hint.js +0 -11
  843. package/esm2022/form-utils/lib/hint/hint.js.map +0 -1
  844. package/esm2022/form-utils/lib/label/label.js +0 -55
  845. package/esm2022/form-utils/lib/label/label.js.map +0 -1
  846. package/esm2022/form-utils/lib/message/message.js +0 -20
  847. package/esm2022/form-utils/lib/message/message.js.map +0 -1
  848. package/esm2022/form-utils/lib/models/error-display-strategy.js +0 -1
  849. package/esm2022/form-utils/lib/models/error-display-strategy.js.map +0 -1
  850. package/esm2022/form-utils/lib/models/form-control-connector.js +0 -3
  851. package/esm2022/form-utils/lib/models/form-control-connector.js.map +0 -1
  852. package/esm2022/form-utils/lib/models/form-state.js +0 -1
  853. package/esm2022/form-utils/lib/models/form-state.js.map +0 -1
  854. package/esm2022/form-utils/lib/selection.service.js +0 -81
  855. package/esm2022/form-utils/lib/selection.service.js.map +0 -1
  856. package/esm2022/form-utils/malva-ui-core-form-utils.js +0 -5
  857. package/esm2022/form-utils/malva-ui-core-form-utils.js.map +0 -1
  858. package/esm2022/form-utils/testing/index.js +0 -2
  859. package/esm2022/form-utils/testing/index.js.map +0 -1
  860. package/esm2022/form-utils/testing/lib/forms-binding-matrix.js +0 -32
  861. package/esm2022/form-utils/testing/lib/forms-binding-matrix.js.map +0 -1
  862. package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js +0 -5
  863. package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js.map +0 -1
  864. package/esm2022/index.js +0 -70
  865. package/esm2022/index.js.map +0 -1
  866. package/esm2022/input/index.js +0 -4
  867. package/esm2022/input/index.js.map +0 -1
  868. package/esm2022/input/lib/input/input-native.js +0 -49
  869. package/esm2022/input/lib/input/input-native.js.map +0 -1
  870. package/esm2022/input/lib/input/input-value-accessor.js +0 -4
  871. package/esm2022/input/lib/input/input-value-accessor.js.map +0 -1
  872. package/esm2022/input/lib/input/input.js +0 -277
  873. package/esm2022/input/lib/input/input.js.map +0 -1
  874. package/esm2022/input/lib/input/password-strength.js +0 -46
  875. package/esm2022/input/lib/input/password-strength.js.map +0 -1
  876. package/esm2022/input/malva-ui-core-input.js +0 -5
  877. package/esm2022/input/malva-ui-core-input.js.map +0 -1
  878. package/esm2022/kbd/index.js +0 -2
  879. package/esm2022/kbd/index.js.map +0 -1
  880. package/esm2022/kbd/lib/kbd/kbd.js +0 -124
  881. package/esm2022/kbd/lib/kbd/kbd.js.map +0 -1
  882. package/esm2022/kbd/malva-ui-core-kbd.js +0 -5
  883. package/esm2022/kbd/malva-ui-core-kbd.js.map +0 -1
  884. package/esm2022/layout/index.js +0 -5
  885. package/esm2022/layout/index.js.map +0 -1
  886. package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js +0 -14
  887. package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js.map +0 -1
  888. package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js +0 -14
  889. package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js.map +0 -1
  890. package/esm2022/layout/lib/layout/layout.js +0 -43
  891. package/esm2022/layout/lib/layout/layout.js.map +0 -1
  892. package/esm2022/layout/lib/layout/services/theme.service.js +0 -121
  893. package/esm2022/layout/lib/layout/services/theme.service.js.map +0 -1
  894. package/esm2022/layout/malva-ui-core-layout.js +0 -5
  895. package/esm2022/layout/malva-ui-core-layout.js.map +0 -1
  896. package/esm2022/link/index.js +0 -3
  897. package/esm2022/link/index.js.map +0 -1
  898. package/esm2022/link/lib/link/link.directives.js +0 -24
  899. package/esm2022/link/lib/link/link.directives.js.map +0 -1
  900. package/esm2022/link/lib/link/link.js +0 -61
  901. package/esm2022/link/lib/link/link.js.map +0 -1
  902. package/esm2022/link/malva-ui-core-link.js +0 -5
  903. package/esm2022/link/malva-ui-core-link.js.map +0 -1
  904. package/esm2022/list/index.js +0 -14
  905. package/esm2022/list/index.js.map +0 -1
  906. package/esm2022/list/lib/list/list.js +0 -28
  907. package/esm2022/list/lib/list/list.js.map +0 -1
  908. package/esm2022/list/lib/list-item/list-item.js +0 -125
  909. package/esm2022/list/lib/list-item/list-item.js.map +0 -1
  910. package/esm2022/list/lib/list-item-actions.js +0 -23
  911. package/esm2022/list/lib/list-item-actions.js.map +0 -1
  912. package/esm2022/list/lib/list-item-byline.js +0 -13
  913. package/esm2022/list/lib/list-item-byline.js.map +0 -1
  914. package/esm2022/list/lib/list-item-group/list-item-group.js +0 -25
  915. package/esm2022/list/lib/list-item-group/list-item-group.js.map +0 -1
  916. package/esm2022/list/lib/list-item-link/list-item-link.js +0 -20
  917. package/esm2022/list/lib/list-item-link/list-item-link.js.map +0 -1
  918. package/esm2022/list/lib/list-item-media.js +0 -13
  919. package/esm2022/list/lib/list-item-media.js.map +0 -1
  920. package/esm2022/list/lib/list-item-meta.js +0 -13
  921. package/esm2022/list/lib/list-item-meta.js.map +0 -1
  922. package/esm2022/list/lib/list-item-prefix.js +0 -13
  923. package/esm2022/list/lib/list-item-prefix.js.map +0 -1
  924. package/esm2022/list/lib/list-item-suffix.js +0 -13
  925. package/esm2022/list/lib/list-item-suffix.js.map +0 -1
  926. package/esm2022/list/lib/list-item-template.js +0 -14
  927. package/esm2022/list/lib/list-item-template.js.map +0 -1
  928. package/esm2022/list/lib/list-item-title.js +0 -13
  929. package/esm2022/list/lib/list-item-title.js.map +0 -1
  930. package/esm2022/list/lib/list-selectable.js +0 -116
  931. package/esm2022/list/lib/list-selectable.js.map +0 -1
  932. package/esm2022/list/malva-ui-core-list.js +0 -5
  933. package/esm2022/list/malva-ui-core-list.js.map +0 -1
  934. package/esm2022/loader/index.js +0 -2
  935. package/esm2022/loader/index.js.map +0 -1
  936. package/esm2022/loader/lib/loader/loader.js +0 -134
  937. package/esm2022/loader/lib/loader/loader.js.map +0 -1
  938. package/esm2022/loader/malva-ui-core-loader.js +0 -5
  939. package/esm2022/loader/malva-ui-core-loader.js.map +0 -1
  940. package/esm2022/malva-ui-core.js +0 -5
  941. package/esm2022/malva-ui-core.js.map +0 -1
  942. package/esm2022/menu/index.js +0 -10
  943. package/esm2022/menu/index.js.map +0 -1
  944. package/esm2022/menu/lib/menu/menu-group-label.js +0 -35
  945. package/esm2022/menu/lib/menu/menu-group-label.js.map +0 -1
  946. package/esm2022/menu/lib/menu/menu-group.js +0 -44
  947. package/esm2022/menu/lib/menu/menu-group.js.map +0 -1
  948. package/esm2022/menu/lib/menu/menu-item.js +0 -117
  949. package/esm2022/menu/lib/menu/menu-item.js.map +0 -1
  950. package/esm2022/menu/lib/menu/menu-separator.js +0 -41
  951. package/esm2022/menu/lib/menu/menu-separator.js.map +0 -1
  952. package/esm2022/menu/lib/menu/menu-trigger.js +0 -653
  953. package/esm2022/menu/lib/menu/menu-trigger.js.map +0 -1
  954. package/esm2022/menu/lib/menu/menu.js +0 -308
  955. package/esm2022/menu/lib/menu/menu.js.map +0 -1
  956. package/esm2022/menu/lib/menu/menu.types.js +0 -4
  957. package/esm2022/menu/lib/menu/menu.types.js.map +0 -1
  958. package/esm2022/menu/lib/menu/menubar.js +0 -257
  959. package/esm2022/menu/lib/menu/menubar.js.map +0 -1
  960. package/esm2022/menu/lib/menu/menubar.types.js +0 -4
  961. package/esm2022/menu/lib/menu/menubar.types.js.map +0 -1
  962. package/esm2022/menu/lib/menu/submenu-aim.js +0 -30
  963. package/esm2022/menu/lib/menu/submenu-aim.js.map +0 -1
  964. package/esm2022/menu/malva-ui-core-menu.js +0 -5
  965. package/esm2022/menu/malva-ui-core-menu.js.map +0 -1
  966. package/esm2022/notification/index.js +0 -5
  967. package/esm2022/notification/index.js.map +0 -1
  968. package/esm2022/notification/lib/notification-item/notification-item.js +0 -65
  969. package/esm2022/notification/lib/notification-item/notification-item.js.map +0 -1
  970. package/esm2022/notification/lib/notification-ref.js +0 -13
  971. package/esm2022/notification/lib/notification-ref.js.map +0 -1
  972. package/esm2022/notification/lib/notification.service.js +0 -118
  973. package/esm2022/notification/lib/notification.service.js.map +0 -1
  974. package/esm2022/notification/lib/notification.types.js +0 -6
  975. package/esm2022/notification/lib/notification.types.js.map +0 -1
  976. package/esm2022/notification/malva-ui-core-notification.js +0 -5
  977. package/esm2022/notification/malva-ui-core-notification.js.map +0 -1
  978. package/esm2022/number-input/index.js +0 -2
  979. package/esm2022/number-input/index.js.map +0 -1
  980. package/esm2022/number-input/lib/number-input/number-input.js +0 -395
  981. package/esm2022/number-input/lib/number-input/number-input.js.map +0 -1
  982. package/esm2022/number-input/malva-ui-core-number-input.js +0 -5
  983. package/esm2022/number-input/malva-ui-core-number-input.js.map +0 -1
  984. package/esm2022/page/index.js +0 -15
  985. package/esm2022/page/index.js.map +0 -1
  986. package/esm2022/page/lib/page/page-scroll.token.js +0 -9
  987. package/esm2022/page/lib/page/page-scroll.token.js.map +0 -1
  988. package/esm2022/page/lib/page/page-snap-controller.js +0 -170
  989. package/esm2022/page/lib/page/page-snap-controller.js.map +0 -1
  990. package/esm2022/page/lib/page/page-snap.directive.js +0 -65
  991. package/esm2022/page/lib/page/page-snap.directive.js.map +0 -1
  992. package/esm2022/page/lib/page/page.js +0 -173
  993. package/esm2022/page/lib/page/page.js.map +0 -1
  994. package/esm2022/page/lib/page-content/page-aside.js +0 -13
  995. package/esm2022/page/lib/page-content/page-aside.js.map +0 -1
  996. package/esm2022/page/lib/page-content/page-content.js +0 -72
  997. package/esm2022/page/lib/page-content/page-content.js.map +0 -1
  998. package/esm2022/page/lib/page-dock/page-dock.js +0 -128
  999. package/esm2022/page/lib/page-dock/page-dock.js.map +0 -1
  1000. package/esm2022/page/lib/page-dock/page-dock.slots.js +0 -39
  1001. package/esm2022/page/lib/page-dock/page-dock.slots.js.map +0 -1
  1002. package/esm2022/page/lib/page-header/page-header.directives.js +0 -88
  1003. package/esm2022/page/lib/page-header/page-header.directives.js.map +0 -1
  1004. package/esm2022/page/lib/page-header/page-header.js +0 -124
  1005. package/esm2022/page/lib/page-header/page-header.js.map +0 -1
  1006. package/esm2022/page/lib/page-shell/page-shell-color.js +0 -193
  1007. package/esm2022/page/lib/page-shell/page-shell-color.js.map +0 -1
  1008. package/esm2022/page/lib/page-shell/page-shell-css-color.js +0 -207
  1009. package/esm2022/page/lib/page-shell/page-shell-css-color.js.map +0 -1
  1010. package/esm2022/page/lib/page-shell/page-shell.js +0 -131
  1011. package/esm2022/page/lib/page-shell/page-shell.js.map +0 -1
  1012. package/esm2022/page/lib/page-shell/page-shell.slots.js +0 -41
  1013. package/esm2022/page/lib/page-shell/page-shell.slots.js.map +0 -1
  1014. package/esm2022/page/lib/page-summary/page-summary-item.js +0 -26
  1015. package/esm2022/page/lib/page-summary/page-summary-item.js.map +0 -1
  1016. package/esm2022/page/lib/page-summary/page-summary.js +0 -87
  1017. package/esm2022/page/lib/page-summary/page-summary.js.map +0 -1
  1018. package/esm2022/page/malva-ui-core-page.js +0 -5
  1019. package/esm2022/page/malva-ui-core-page.js.map +0 -1
  1020. package/esm2022/pagination/index.js +0 -5
  1021. package/esm2022/pagination/index.js.map +0 -1
  1022. package/esm2022/pagination/lib/pagination/pagination.directives.js +0 -58
  1023. package/esm2022/pagination/lib/pagination/pagination.directives.js.map +0 -1
  1024. package/esm2022/pagination/lib/pagination/pagination.js +0 -293
  1025. package/esm2022/pagination/lib/pagination/pagination.js.map +0 -1
  1026. package/esm2022/pagination/lib/pagination/pagination.model.js +0 -1
  1027. package/esm2022/pagination/lib/pagination/pagination.model.js.map +0 -1
  1028. package/esm2022/pagination/lib/pagination/pagination.service.js +0 -108
  1029. package/esm2022/pagination/lib/pagination/pagination.service.js.map +0 -1
  1030. package/esm2022/pagination/malva-ui-core-pagination.js +0 -5
  1031. package/esm2022/pagination/malva-ui-core-pagination.js.map +0 -1
  1032. package/esm2022/pin-input/index.js +0 -3
  1033. package/esm2022/pin-input/index.js.map +0 -1
  1034. package/esm2022/pin-input/lib/pin-input/pin-input-separator.js +0 -31
  1035. package/esm2022/pin-input/lib/pin-input/pin-input-separator.js.map +0 -1
  1036. package/esm2022/pin-input/lib/pin-input/pin-input.js +0 -365
  1037. package/esm2022/pin-input/lib/pin-input/pin-input.js.map +0 -1
  1038. package/esm2022/pin-input/malva-ui-core-pin-input.js +0 -5
  1039. package/esm2022/pin-input/malva-ui-core-pin-input.js.map +0 -1
  1040. package/esm2022/popup/index.js +0 -10
  1041. package/esm2022/popup/index.js.map +0 -1
  1042. package/esm2022/popup/lib/popup/popup.js +0 -500
  1043. package/esm2022/popup/lib/popup/popup.js.map +0 -1
  1044. package/esm2022/popup/lib/popup-container/popup-container.js +0 -169
  1045. package/esm2022/popup/lib/popup-container/popup-container.js.map +0 -1
  1046. package/esm2022/popup/lib/popup-container/popup-container.token.js +0 -9
  1047. package/esm2022/popup/lib/popup-container/popup-container.token.js.map +0 -1
  1048. package/esm2022/popup/lib/popup-content.js +0 -14
  1049. package/esm2022/popup/lib/popup-content.js.map +0 -1
  1050. package/esm2022/popup/lib/popup-header-content.js +0 -26
  1051. package/esm2022/popup/lib/popup-header-content.js.map +0 -1
  1052. package/esm2022/popup/lib/popup-pinned-content.js +0 -25
  1053. package/esm2022/popup/lib/popup-pinned-content.js.map +0 -1
  1054. package/esm2022/popup/lib/popup-positions.js +0 -252
  1055. package/esm2022/popup/lib/popup-positions.js.map +0 -1
  1056. package/esm2022/popup/lib/popup-trigger/popup-trigger.js +0 -308
  1057. package/esm2022/popup/lib/popup-trigger/popup-trigger.js.map +0 -1
  1058. package/esm2022/popup/lib/popup.service.js +0 -188
  1059. package/esm2022/popup/lib/popup.service.js.map +0 -1
  1060. package/esm2022/popup/malva-ui-core-popup.js +0 -5
  1061. package/esm2022/popup/malva-ui-core-popup.js.map +0 -1
  1062. package/esm2022/progress/index.js +0 -2
  1063. package/esm2022/progress/index.js.map +0 -1
  1064. package/esm2022/progress/lib/progress/progress.js +0 -102
  1065. package/esm2022/progress/lib/progress/progress.js.map +0 -1
  1066. package/esm2022/progress/malva-ui-core-progress.js +0 -5
  1067. package/esm2022/progress/malva-ui-core-progress.js.map +0 -1
  1068. package/esm2022/radio/index.js +0 -3
  1069. package/esm2022/radio/index.js.map +0 -1
  1070. package/esm2022/radio/lib/radio/radio.js +0 -134
  1071. package/esm2022/radio/lib/radio/radio.js.map +0 -1
  1072. package/esm2022/radio/lib/radio-group/radio-group.js +0 -176
  1073. package/esm2022/radio/lib/radio-group/radio-group.js.map +0 -1
  1074. package/esm2022/radio/lib/radio-group-token.js +0 -3
  1075. package/esm2022/radio/lib/radio-group-token.js.map +0 -1
  1076. package/esm2022/radio/malva-ui-core-radio.js +0 -5
  1077. package/esm2022/radio/malva-ui-core-radio.js.map +0 -1
  1078. package/esm2022/rating/index.js +0 -2
  1079. package/esm2022/rating/index.js.map +0 -1
  1080. package/esm2022/rating/lib/rating/rating.js +0 -208
  1081. package/esm2022/rating/lib/rating/rating.js.map +0 -1
  1082. package/esm2022/rating/malva-ui-core-rating.js +0 -5
  1083. package/esm2022/rating/malva-ui-core-rating.js.map +0 -1
  1084. package/esm2022/scrollbar/index.js +0 -2
  1085. package/esm2022/scrollbar/index.js.map +0 -1
  1086. package/esm2022/scrollbar/lib/scrollbar/scrollbar.js +0 -388
  1087. package/esm2022/scrollbar/lib/scrollbar/scrollbar.js.map +0 -1
  1088. package/esm2022/scrollbar/malva-ui-core-scrollbar.js +0 -5
  1089. package/esm2022/scrollbar/malva-ui-core-scrollbar.js.map +0 -1
  1090. package/esm2022/search-field/index.js +0 -3
  1091. package/esm2022/search-field/index.js.map +0 -1
  1092. package/esm2022/search-field/lib/search-field/search-field.js +0 -535
  1093. package/esm2022/search-field/lib/search-field/search-field.js.map +0 -1
  1094. package/esm2022/search-field/lib/search-field/search-overlay-content.js +0 -35
  1095. package/esm2022/search-field/lib/search-field/search-overlay-content.js.map +0 -1
  1096. package/esm2022/search-field/malva-ui-core-search-field.js +0 -5
  1097. package/esm2022/search-field/malva-ui-core-search-field.js.map +0 -1
  1098. package/esm2022/segmented/index.js +0 -5
  1099. package/esm2022/segmented/index.js.map +0 -1
  1100. package/esm2022/segmented/lib/segmented/segmented.js +0 -248
  1101. package/esm2022/segmented/lib/segmented/segmented.js.map +0 -1
  1102. package/esm2022/segmented/lib/segmented-item/segmented-item.js +0 -194
  1103. package/esm2022/segmented/lib/segmented-item/segmented-item.js.map +0 -1
  1104. package/esm2022/segmented/lib/segmented-token.js +0 -4
  1105. package/esm2022/segmented/lib/segmented-token.js.map +0 -1
  1106. package/esm2022/segmented/lib/segmented.types.js +0 -1
  1107. package/esm2022/segmented/lib/segmented.types.js.map +0 -1
  1108. package/esm2022/segmented/malva-ui-core-segmented.js +0 -5
  1109. package/esm2022/segmented/malva-ui-core-segmented.js.map +0 -1
  1110. package/esm2022/select/index.js +0 -4
  1111. package/esm2022/select/index.js.map +0 -1
  1112. package/esm2022/select/lib/select/select.js +0 -685
  1113. package/esm2022/select/lib/select/select.js.map +0 -1
  1114. package/esm2022/select/lib/select-option.js +0 -2
  1115. package/esm2022/select/lib/select-option.js.map +0 -1
  1116. package/esm2022/select/lib/select-template.directives.js +0 -34
  1117. package/esm2022/select/lib/select-template.directives.js.map +0 -1
  1118. package/esm2022/select/malva-ui-core-select.js +0 -5
  1119. package/esm2022/select/malva-ui-core-select.js.map +0 -1
  1120. package/esm2022/sidebar/index.js +0 -16
  1121. package/esm2022/sidebar/index.js.map +0 -1
  1122. package/esm2022/sidebar/lib/sidebar/sidebar.js +0 -251
  1123. package/esm2022/sidebar/lib/sidebar/sidebar.js.map +0 -1
  1124. package/esm2022/sidebar/lib/sidebar-content.js +0 -37
  1125. package/esm2022/sidebar/lib/sidebar-content.js.map +0 -1
  1126. package/esm2022/sidebar/lib/sidebar-context.js +0 -3
  1127. package/esm2022/sidebar/lib/sidebar-context.js.map +0 -1
  1128. package/esm2022/sidebar/lib/sidebar-footer.js +0 -20
  1129. package/esm2022/sidebar/lib/sidebar-footer.js.map +0 -1
  1130. package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js +0 -341
  1131. package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js.map +0 -1
  1132. package/esm2022/sidebar/lib/sidebar-header.js +0 -20
  1133. package/esm2022/sidebar/lib/sidebar-header.js.map +0 -1
  1134. package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js +0 -216
  1135. package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js.map +0 -1
  1136. package/esm2022/sidebar/lib/sidebar-item-host.js +0 -39
  1137. package/esm2022/sidebar/lib/sidebar-item-host.js.map +0 -1
  1138. package/esm2022/sidebar/lib/sidebar-item-icon.js +0 -14
  1139. package/esm2022/sidebar/lib/sidebar-item-icon.js.map +0 -1
  1140. package/esm2022/sidebar/lib/sidebar-mode.js +0 -1
  1141. package/esm2022/sidebar/lib/sidebar-mode.js.map +0 -1
  1142. package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js +0 -202
  1143. package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js.map +0 -1
  1144. package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js +0 -159
  1145. package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js.map +0 -1
  1146. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js +0 -35
  1147. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js.map +0 -1
  1148. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js +0 -107
  1149. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js.map +0 -1
  1150. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js +0 -1
  1151. package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js.map +0 -1
  1152. package/esm2022/sidebar/malva-ui-core-sidebar.js +0 -5
  1153. package/esm2022/sidebar/malva-ui-core-sidebar.js.map +0 -1
  1154. package/esm2022/skeleton/index.js +0 -2
  1155. package/esm2022/skeleton/index.js.map +0 -1
  1156. package/esm2022/skeleton/lib/skeleton/skeleton.js +0 -78
  1157. package/esm2022/skeleton/lib/skeleton/skeleton.js.map +0 -1
  1158. package/esm2022/skeleton/malva-ui-core-skeleton.js +0 -5
  1159. package/esm2022/skeleton/malva-ui-core-skeleton.js.map +0 -1
  1160. package/esm2022/slider/index.js +0 -3
  1161. package/esm2022/slider/index.js.map +0 -1
  1162. package/esm2022/slider/lib/slider/slider-tooltip-def.js +0 -31
  1163. package/esm2022/slider/lib/slider/slider-tooltip-def.js.map +0 -1
  1164. package/esm2022/slider/lib/slider/slider.js +0 -468
  1165. package/esm2022/slider/lib/slider/slider.js.map +0 -1
  1166. package/esm2022/slider/malva-ui-core-slider.js +0 -5
  1167. package/esm2022/slider/malva-ui-core-slider.js.map +0 -1
  1168. package/esm2022/split-pane/index.js +0 -4
  1169. package/esm2022/split-pane/index.js.map +0 -1
  1170. package/esm2022/split-pane/lib/split-pane/split-pane-panel.js +0 -49
  1171. package/esm2022/split-pane/lib/split-pane/split-pane-panel.js.map +0 -1
  1172. package/esm2022/split-pane/lib/split-pane/split-pane.js +0 -290
  1173. package/esm2022/split-pane/lib/split-pane/split-pane.js.map +0 -1
  1174. package/esm2022/split-pane/lib/split-pane/split-pane.types.js +0 -1
  1175. package/esm2022/split-pane/lib/split-pane/split-pane.types.js.map +0 -1
  1176. package/esm2022/split-pane/malva-ui-core-split-pane.js +0 -5
  1177. package/esm2022/split-pane/malva-ui-core-split-pane.js.map +0 -1
  1178. package/esm2022/status-indicator/index.js +0 -2
  1179. package/esm2022/status-indicator/index.js.map +0 -1
  1180. package/esm2022/status-indicator/lib/status-indicator/status-indicator.js +0 -71
  1181. package/esm2022/status-indicator/lib/status-indicator/status-indicator.js.map +0 -1
  1182. package/esm2022/status-indicator/malva-ui-core-status-indicator.js +0 -5
  1183. package/esm2022/status-indicator/malva-ui-core-status-indicator.js.map +0 -1
  1184. package/esm2022/stepper/index.js +0 -5
  1185. package/esm2022/stepper/index.js.map +0 -1
  1186. package/esm2022/stepper/lib/stepper/step-header.js +0 -46
  1187. package/esm2022/stepper/lib/stepper/step-header.js.map +0 -1
  1188. package/esm2022/stepper/lib/stepper/step.js +0 -65
  1189. package/esm2022/stepper/lib/stepper/step.js.map +0 -1
  1190. package/esm2022/stepper/lib/stepper/stepper-token.js +0 -4
  1191. package/esm2022/stepper/lib/stepper/stepper-token.js.map +0 -1
  1192. package/esm2022/stepper/lib/stepper/stepper.js +0 -216
  1193. package/esm2022/stepper/lib/stepper/stepper.js.map +0 -1
  1194. package/esm2022/stepper/lib/stepper/stepper.types.js +0 -1
  1195. package/esm2022/stepper/lib/stepper/stepper.types.js.map +0 -1
  1196. package/esm2022/stepper/malva-ui-core-stepper.js +0 -5
  1197. package/esm2022/stepper/malva-ui-core-stepper.js.map +0 -1
  1198. package/esm2022/switch/index.js +0 -3
  1199. package/esm2022/switch/index.js.map +0 -1
  1200. package/esm2022/switch/lib/switch/switch.js +0 -190
  1201. package/esm2022/switch/lib/switch/switch.js.map +0 -1
  1202. package/esm2022/switch/lib/switch-group/switch-group.js +0 -68
  1203. package/esm2022/switch/lib/switch-group/switch-group.js.map +0 -1
  1204. package/esm2022/switch/lib/switch-group-token.js +0 -3
  1205. package/esm2022/switch/lib/switch-group-token.js.map +0 -1
  1206. package/esm2022/switch/malva-ui-core-switch.js +0 -5
  1207. package/esm2022/switch/malva-ui-core-switch.js.map +0 -1
  1208. package/esm2022/tabs/index.js +0 -9
  1209. package/esm2022/tabs/index.js.map +0 -1
  1210. package/esm2022/tabs/lib/tab/tab.js +0 -72
  1211. package/esm2022/tabs/lib/tab/tab.js.map +0 -1
  1212. package/esm2022/tabs/lib/tab-content/tab-content.js +0 -19
  1213. package/esm2022/tabs/lib/tab-content/tab-content.js.map +0 -1
  1214. package/esm2022/tabs/lib/tab-content-def.js +0 -14
  1215. package/esm2022/tabs/lib/tab-content-def.js.map +0 -1
  1216. package/esm2022/tabs/lib/tab-def.js +0 -17
  1217. package/esm2022/tabs/lib/tab-def.js.map +0 -1
  1218. package/esm2022/tabs/lib/tab-group-token.js +0 -3
  1219. package/esm2022/tabs/lib/tab-group-token.js.map +0 -1
  1220. package/esm2022/tabs/lib/tab-item/tab-item.js +0 -44
  1221. package/esm2022/tabs/lib/tab-item/tab-item.js.map +0 -1
  1222. package/esm2022/tabs/lib/tabs/tabs.js +0 -542
  1223. package/esm2022/tabs/lib/tabs/tabs.js.map +0 -1
  1224. package/esm2022/tabs/lib/tabs.service.js +0 -83
  1225. package/esm2022/tabs/lib/tabs.service.js.map +0 -1
  1226. package/esm2022/tabs/malva-ui-core-tabs.js +0 -5
  1227. package/esm2022/tabs/malva-ui-core-tabs.js.map +0 -1
  1228. package/esm2022/textarea/index.js +0 -2
  1229. package/esm2022/textarea/index.js.map +0 -1
  1230. package/esm2022/textarea/lib/textarea/textarea.js +0 -194
  1231. package/esm2022/textarea/lib/textarea/textarea.js.map +0 -1
  1232. package/esm2022/textarea/malva-ui-core-textarea.js +0 -5
  1233. package/esm2022/textarea/malva-ui-core-textarea.js.map +0 -1
  1234. package/esm2022/tile/index.js +0 -3
  1235. package/esm2022/tile/index.js.map +0 -1
  1236. package/esm2022/tile/lib/tile/tile.js +0 -39
  1237. package/esm2022/tile/lib/tile/tile.js.map +0 -1
  1238. package/esm2022/tile/lib/tile-header.js +0 -14
  1239. package/esm2022/tile/lib/tile-header.js.map +0 -1
  1240. package/esm2022/tile/malva-ui-core-tile.js +0 -5
  1241. package/esm2022/tile/malva-ui-core-tile.js.map +0 -1
  1242. package/esm2022/time-picker/index.js +0 -2
  1243. package/esm2022/time-picker/index.js.map +0 -1
  1244. package/esm2022/time-picker/lib/time-picker/time-picker.js +0 -310
  1245. package/esm2022/time-picker/lib/time-picker/time-picker.js.map +0 -1
  1246. package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js +0 -216
  1247. package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js.map +0 -1
  1248. package/esm2022/time-picker/malva-ui-core-time-picker.js +0 -5
  1249. package/esm2022/time-picker/malva-ui-core-time-picker.js.map +0 -1
  1250. package/esm2022/timeline/index.js +0 -6
  1251. package/esm2022/timeline/index.js.map +0 -1
  1252. package/esm2022/timeline/lib/timeline/timeline-item-icon.js +0 -31
  1253. package/esm2022/timeline/lib/timeline/timeline-item-icon.js.map +0 -1
  1254. package/esm2022/timeline/lib/timeline/timeline-item-meta.js +0 -31
  1255. package/esm2022/timeline/lib/timeline/timeline-item-meta.js.map +0 -1
  1256. package/esm2022/timeline/lib/timeline/timeline-item.js +0 -69
  1257. package/esm2022/timeline/lib/timeline/timeline-item.js.map +0 -1
  1258. package/esm2022/timeline/lib/timeline/timeline.js +0 -36
  1259. package/esm2022/timeline/lib/timeline/timeline.js.map +0 -1
  1260. package/esm2022/timeline/lib/timeline/timeline.types.js +0 -1
  1261. package/esm2022/timeline/lib/timeline/timeline.types.js.map +0 -1
  1262. package/esm2022/timeline/malva-ui-core-timeline.js +0 -5
  1263. package/esm2022/timeline/malva-ui-core-timeline.js.map +0 -1
  1264. package/esm2022/title/index.js +0 -2
  1265. package/esm2022/title/index.js.map +0 -1
  1266. package/esm2022/title/lib/title/title.js +0 -171
  1267. package/esm2022/title/lib/title/title.js.map +0 -1
  1268. package/esm2022/title/malva-ui-core-title.js +0 -5
  1269. package/esm2022/title/malva-ui-core-title.js.map +0 -1
  1270. package/esm2022/toast/index.js +0 -13
  1271. package/esm2022/toast/index.js.map +0 -1
  1272. package/esm2022/toast/lib/abstract-toast-container.js +0 -50
  1273. package/esm2022/toast/lib/abstract-toast-container.js.map +0 -1
  1274. package/esm2022/toast/lib/abstract-toast-item.js +0 -75
  1275. package/esm2022/toast/lib/abstract-toast-item.js.map +0 -1
  1276. package/esm2022/toast/lib/abstract-toast.service.js +0 -176
  1277. package/esm2022/toast/lib/abstract-toast.service.js.map +0 -1
  1278. package/esm2022/toast/lib/toast-container/toast-container.js +0 -61
  1279. package/esm2022/toast/lib/toast-container/toast-container.js.map +0 -1
  1280. package/esm2022/toast/lib/toast-item/toast-item.js +0 -62
  1281. package/esm2022/toast/lib/toast-item/toast-item.js.map +0 -1
  1282. package/esm2022/toast/lib/toast-ref.js +0 -54
  1283. package/esm2022/toast/lib/toast-ref.js.map +0 -1
  1284. package/esm2022/toast/lib/toast-timer.js +0 -37
  1285. package/esm2022/toast/lib/toast-timer.js.map +0 -1
  1286. package/esm2022/toast/lib/toast.directives.js +0 -76
  1287. package/esm2022/toast/lib/toast.directives.js.map +0 -1
  1288. package/esm2022/toast/lib/toast.service.js +0 -127
  1289. package/esm2022/toast/lib/toast.service.js.map +0 -1
  1290. package/esm2022/toast/lib/toast.types.js +0 -39
  1291. package/esm2022/toast/lib/toast.types.js.map +0 -1
  1292. package/esm2022/toast/malva-ui-core-toast.js +0 -5
  1293. package/esm2022/toast/malva-ui-core-toast.js.map +0 -1
  1294. package/esm2022/tokenizer/index.js +0 -4
  1295. package/esm2022/tokenizer/index.js.map +0 -1
  1296. package/esm2022/tokenizer/lib/token/token.js +0 -123
  1297. package/esm2022/tokenizer/lib/token/token.js.map +0 -1
  1298. package/esm2022/tokenizer/lib/token-template.js +0 -23
  1299. package/esm2022/tokenizer/lib/token-template.js.map +0 -1
  1300. package/esm2022/tokenizer/lib/tokenizer/tokenizer.js +0 -324
  1301. package/esm2022/tokenizer/lib/tokenizer/tokenizer.js.map +0 -1
  1302. package/esm2022/tokenizer/malva-ui-core-tokenizer.js +0 -5
  1303. package/esm2022/tokenizer/malva-ui-core-tokenizer.js.map +0 -1
  1304. package/esm2022/toolbar/index.js +0 -4
  1305. package/esm2022/toolbar/index.js.map +0 -1
  1306. package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js +0 -13
  1307. package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js.map +0 -1
  1308. package/esm2022/toolbar/lib/toolbar/toolbar-widget.js +0 -106
  1309. package/esm2022/toolbar/lib/toolbar/toolbar-widget.js.map +0 -1
  1310. package/esm2022/toolbar/lib/toolbar/toolbar.js +0 -19
  1311. package/esm2022/toolbar/lib/toolbar/toolbar.js.map +0 -1
  1312. package/esm2022/toolbar/malva-ui-core-toolbar.js +0 -5
  1313. package/esm2022/toolbar/malva-ui-core-toolbar.js.map +0 -1
  1314. package/esm2022/tooltip/index.js +0 -4
  1315. package/esm2022/tooltip/index.js.map +0 -1
  1316. package/esm2022/tooltip/lib/tooltip/tooltip-panel.js +0 -69
  1317. package/esm2022/tooltip/lib/tooltip/tooltip-panel.js.map +0 -1
  1318. package/esm2022/tooltip/lib/tooltip/tooltip.js +0 -352
  1319. package/esm2022/tooltip/lib/tooltip/tooltip.js.map +0 -1
  1320. package/esm2022/tooltip/lib/tooltip/tooltip.types.js +0 -1
  1321. package/esm2022/tooltip/lib/tooltip/tooltip.types.js.map +0 -1
  1322. package/esm2022/tooltip/malva-ui-core-tooltip.js +0 -5
  1323. package/esm2022/tooltip/malva-ui-core-tooltip.js.map +0 -1
  1324. package/esm2022/tree/index.js +0 -5
  1325. package/esm2022/tree/index.js.map +0 -1
  1326. package/esm2022/tree/lib/tree/tree-context.js +0 -7
  1327. package/esm2022/tree/lib/tree/tree-context.js.map +0 -1
  1328. package/esm2022/tree/lib/tree/tree-node-def.js +0 -34
  1329. package/esm2022/tree/lib/tree/tree-node-def.js.map +0 -1
  1330. package/esm2022/tree/lib/tree/tree-node.js +0 -1
  1331. package/esm2022/tree/lib/tree/tree-node.js.map +0 -1
  1332. package/esm2022/tree/lib/tree/tree-subtree.js +0 -107
  1333. package/esm2022/tree/lib/tree/tree-subtree.js.map +0 -1
  1334. package/esm2022/tree/lib/tree/tree.js +0 -362
  1335. package/esm2022/tree/lib/tree/tree.js.map +0 -1
  1336. package/esm2022/tree/malva-ui-core-tree.js +0 -5
  1337. package/esm2022/tree/malva-ui-core-tree.js.map +0 -1
  1338. package/expand/index.d.ts +0 -2
  1339. package/expand/lib/expand/expand-content.d.ts +0 -26
  1340. package/expand/lib/expand/expand.d.ts +0 -74
  1341. package/expand/malva-ui-core-expand.d.ts +0 -5
  1342. package/file-upload/index.d.ts +0 -4
  1343. package/file-upload/lib/file-upload/file-upload.d.ts +0 -138
  1344. package/file-upload/lib/file-upload/file-upload.types.d.ts +0 -42
  1345. package/file-upload/lib/file-upload-action.d.ts +0 -53
  1346. package/file-upload/lib/file-upload-item/file-upload-item.d.ts +0 -30
  1347. package/file-upload/malva-ui-core-file-upload.d.ts +0 -5
  1348. package/filter/index.d.ts +0 -3
  1349. package/filter/lib/filter/filter.d.ts +0 -156
  1350. package/filter/lib/filter.types.d.ts +0 -75
  1351. package/filter/lib/smart-filter-bar/smart-filter-bar.d.ts +0 -153
  1352. package/filter/malva-ui-core-filter.d.ts +0 -5
  1353. package/form/index.d.ts +0 -6
  1354. package/form/lib/fieldset/fieldset.d.ts +0 -58
  1355. package/form/lib/fieldset-span.d.ts +0 -28
  1356. package/form/lib/form/form.d.ts +0 -37
  1357. package/form/lib/form-actions.d.ts +0 -20
  1358. package/form/lib/form-gap.d.ts +0 -5
  1359. package/form/lib/form-header.d.ts +0 -18
  1360. package/form/lib/form.types.d.ts +0 -13
  1361. package/form/malva-ui-core-form.d.ts +0 -5
  1362. package/form-utils/index.d.ts +0 -15
  1363. package/form-utils/lib/aria-value-bridge.d.ts +0 -45
  1364. package/form-utils/lib/description/description.d.ts +0 -16
  1365. package/form-utils/lib/focusable-group-base.d.ts +0 -76
  1366. package/form-utils/lib/form-control-base/signal-form-control-base.d.ts +0 -159
  1367. package/form-utils/lib/form-control-sides.d.ts +0 -20
  1368. package/form-utils/lib/form-control-wrapper/form-control-wrapper-control.d.ts +0 -6
  1369. package/form-utils/lib/form-control-wrapper/form-control-wrapper.d.ts +0 -20
  1370. package/form-utils/lib/form-field/form-field.d.ts +0 -68
  1371. package/form-utils/lib/hint/hint.d.ts +0 -5
  1372. package/form-utils/lib/label/label.d.ts +0 -22
  1373. package/form-utils/lib/message/message.d.ts +0 -7
  1374. package/form-utils/lib/models/error-display-strategy.d.ts +0 -1
  1375. package/form-utils/lib/models/form-control-connector.d.ts +0 -41
  1376. package/form-utils/lib/models/form-state.d.ts +0 -1
  1377. package/form-utils/lib/selection.service.d.ts +0 -27
  1378. package/form-utils/malva-ui-core-form-utils.d.ts +0 -5
  1379. package/form-utils/testing/index.d.ts +0 -1
  1380. package/form-utils/testing/lib/forms-binding-matrix.d.ts +0 -47
  1381. package/form-utils/testing/malva-ui-core-form-utils-testing.d.ts +0 -5
  1382. package/index.d.ts +0 -69
  1383. package/input/index.d.ts +0 -3
  1384. package/input/lib/input/input-native.d.ts +0 -36
  1385. package/input/lib/input/input-value-accessor.d.ts +0 -11
  1386. package/input/lib/input/input.d.ts +0 -189
  1387. package/input/lib/input/password-strength.d.ts +0 -34
  1388. package/input/malva-ui-core-input.d.ts +0 -5
  1389. package/kbd/index.d.ts +0 -1
  1390. package/kbd/lib/kbd/kbd.d.ts +0 -52
  1391. package/kbd/malva-ui-core-kbd.d.ts +0 -5
  1392. package/layout/index.d.ts +0 -4
  1393. package/layout/lib/layout/directives/MlvLayoutSide.d.ts +0 -6
  1394. package/layout/lib/layout/directives/MlvLayoutTop.d.ts +0 -6
  1395. package/layout/lib/layout/layout.d.ts +0 -20
  1396. package/layout/lib/layout/services/theme.service.d.ts +0 -33
  1397. package/layout/malva-ui-core-layout.d.ts +0 -5
  1398. package/link/index.d.ts +0 -2
  1399. package/link/lib/link/link.d.ts +0 -15
  1400. package/link/lib/link/link.directives.d.ts +0 -10
  1401. package/link/malva-ui-core-link.d.ts +0 -5
  1402. package/list/index.d.ts +0 -13
  1403. package/list/lib/list/list.d.ts +0 -25
  1404. package/list/lib/list-item/list-item.d.ts +0 -67
  1405. package/list/lib/list-item-actions.d.ts +0 -12
  1406. package/list/lib/list-item-byline.d.ts +0 -5
  1407. package/list/lib/list-item-group/list-item-group.d.ts +0 -11
  1408. package/list/lib/list-item-link/list-item-link.d.ts +0 -8
  1409. package/list/lib/list-item-media.d.ts +0 -5
  1410. package/list/lib/list-item-meta.d.ts +0 -5
  1411. package/list/lib/list-item-prefix.d.ts +0 -5
  1412. package/list/lib/list-item-suffix.d.ts +0 -5
  1413. package/list/lib/list-item-template.d.ts +0 -10
  1414. package/list/lib/list-item-title.d.ts +0 -5
  1415. package/list/lib/list-selectable.d.ts +0 -73
  1416. package/list/malva-ui-core-list.d.ts +0 -5
  1417. package/loader/index.d.ts +0 -1
  1418. package/loader/lib/loader/loader.d.ts +0 -84
  1419. package/loader/malva-ui-core-loader.d.ts +0 -5
  1420. package/malva-ui-core.d.ts +0 -5
  1421. package/menu/index.d.ts +0 -9
  1422. package/menu/lib/menu/menu-group-label.d.ts +0 -22
  1423. package/menu/lib/menu/menu-group.d.ts +0 -27
  1424. package/menu/lib/menu/menu-item.d.ts +0 -76
  1425. package/menu/lib/menu/menu-separator.d.ts +0 -18
  1426. package/menu/lib/menu/menu-trigger.d.ts +0 -255
  1427. package/menu/lib/menu/menu.d.ts +0 -149
  1428. package/menu/lib/menu/menu.types.d.ts +0 -13
  1429. package/menu/lib/menu/menubar.d.ts +0 -131
  1430. package/menu/lib/menu/menubar.types.d.ts +0 -82
  1431. package/menu/lib/menu/submenu-aim.d.ts +0 -10
  1432. package/menu/malva-ui-core-menu.d.ts +0 -5
  1433. package/notification/index.d.ts +0 -4
  1434. package/notification/lib/notification-item/notification-item.d.ts +0 -20
  1435. package/notification/lib/notification-ref.d.ts +0 -12
  1436. package/notification/lib/notification.service.d.ts +0 -43
  1437. package/notification/lib/notification.types.d.ts +0 -52
  1438. package/notification/malva-ui-core-notification.d.ts +0 -5
  1439. package/number-input/index.d.ts +0 -1
  1440. package/number-input/lib/number-input/number-input.d.ts +0 -162
  1441. package/number-input/malva-ui-core-number-input.d.ts +0 -5
  1442. package/page/index.d.ts +0 -14
  1443. package/page/lib/page/page-scroll.token.d.ts +0 -19
  1444. package/page/lib/page/page-snap-controller.d.ts +0 -87
  1445. package/page/lib/page/page-snap.directive.d.ts +0 -40
  1446. package/page/lib/page/page.d.ts +0 -74
  1447. package/page/lib/page-content/page-aside.d.ts +0 -7
  1448. package/page/lib/page-content/page-content.d.ts +0 -37
  1449. package/page/lib/page-dock/page-dock.d.ts +0 -50
  1450. package/page/lib/page-dock/page-dock.slots.d.ts +0 -16
  1451. package/page/lib/page-header/page-header.d.ts +0 -77
  1452. package/page/lib/page-header/page-header.directives.d.ts +0 -50
  1453. package/page/lib/page-shell/page-shell-color.d.ts +0 -48
  1454. package/page/lib/page-shell/page-shell-css-color.d.ts +0 -20
  1455. package/page/lib/page-shell/page-shell.d.ts +0 -44
  1456. package/page/lib/page-shell/page-shell.slots.d.ts +0 -16
  1457. package/page/lib/page-summary/page-summary-item.d.ts +0 -11
  1458. package/page/lib/page-summary/page-summary.d.ts +0 -36
  1459. package/page/malva-ui-core-page.d.ts +0 -5
  1460. package/pagination/index.d.ts +0 -4
  1461. package/pagination/lib/pagination/pagination.d.ts +0 -182
  1462. package/pagination/lib/pagination/pagination.directives.d.ts +0 -44
  1463. package/pagination/lib/pagination/pagination.model.d.ts +0 -6
  1464. package/pagination/lib/pagination/pagination.service.d.ts +0 -26
  1465. package/pagination/malva-ui-core-pagination.d.ts +0 -5
  1466. package/pin-input/index.d.ts +0 -2
  1467. package/pin-input/lib/pin-input/pin-input-separator.d.ts +0 -24
  1468. package/pin-input/lib/pin-input/pin-input.d.ts +0 -176
  1469. package/pin-input/malva-ui-core-pin-input.d.ts +0 -5
  1470. package/popup/index.d.ts +0 -9
  1471. package/popup/lib/popup/popup.d.ts +0 -343
  1472. package/popup/lib/popup-container/popup-container.d.ts +0 -61
  1473. package/popup/lib/popup-container/popup-container.token.d.ts +0 -34
  1474. package/popup/lib/popup-content.d.ts +0 -6
  1475. package/popup/lib/popup-header-content.d.ts +0 -18
  1476. package/popup/lib/popup-pinned-content.d.ts +0 -17
  1477. package/popup/lib/popup-positions.d.ts +0 -105
  1478. package/popup/lib/popup-trigger/popup-trigger.d.ts +0 -102
  1479. package/popup/lib/popup.service.d.ts +0 -159
  1480. package/popup/malva-ui-core-popup.d.ts +0 -5
  1481. package/progress/index.d.ts +0 -1
  1482. package/progress/lib/progress/progress.d.ts +0 -69
  1483. package/progress/malva-ui-core-progress.d.ts +0 -5
  1484. package/radio/index.d.ts +0 -2
  1485. package/radio/lib/radio/radio.d.ts +0 -87
  1486. package/radio/lib/radio-group/radio-group.d.ts +0 -35
  1487. package/radio/lib/radio-group-token.d.ts +0 -7
  1488. package/radio/malva-ui-core-radio.d.ts +0 -5
  1489. package/rating/index.d.ts +0 -1
  1490. package/rating/lib/rating/rating.d.ts +0 -100
  1491. package/rating/malva-ui-core-rating.d.ts +0 -5
  1492. package/scrollbar/index.d.ts +0 -1
  1493. package/scrollbar/lib/scrollbar/scrollbar.d.ts +0 -166
  1494. package/scrollbar/malva-ui-core-scrollbar.d.ts +0 -5
  1495. package/search-field/index.d.ts +0 -2
  1496. package/search-field/lib/search-field/search-field.d.ts +0 -347
  1497. package/search-field/lib/search-field/search-overlay-content.d.ts +0 -59
  1498. package/search-field/malva-ui-core-search-field.d.ts +0 -5
  1499. package/segmented/index.d.ts +0 -4
  1500. package/segmented/lib/segmented/segmented.d.ts +0 -80
  1501. package/segmented/lib/segmented-item/segmented-item.d.ts +0 -89
  1502. package/segmented/lib/segmented-token.d.ts +0 -22
  1503. package/segmented/lib/segmented.types.d.ts +0 -9
  1504. package/segmented/malva-ui-core-segmented.d.ts +0 -5
  1505. package/select/index.d.ts +0 -3
  1506. package/select/lib/select/select.d.ts +0 -379
  1507. package/select/lib/select-option.d.ts +0 -1
  1508. package/select/lib/select-template.directives.d.ts +0 -14
  1509. package/select/malva-ui-core-select.d.ts +0 -5
  1510. package/sidebar/index.d.ts +0 -15
  1511. package/sidebar/lib/sidebar/sidebar.d.ts +0 -134
  1512. package/sidebar/lib/sidebar-content.d.ts +0 -11
  1513. package/sidebar/lib/sidebar-context.d.ts +0 -23
  1514. package/sidebar/lib/sidebar-footer.d.ts +0 -9
  1515. package/sidebar/lib/sidebar-group/sidebar-group.d.ts +0 -127
  1516. package/sidebar/lib/sidebar-header.d.ts +0 -9
  1517. package/sidebar/lib/sidebar-item/sidebar-item.d.ts +0 -104
  1518. package/sidebar/lib/sidebar-item-host.d.ts +0 -18
  1519. package/sidebar/lib/sidebar-item-icon.d.ts +0 -6
  1520. package/sidebar/lib/sidebar-mode.d.ts +0 -2
  1521. package/sidebar/lib/sidebar-rail/sidebar-rail.d.ts +0 -54
  1522. package/sidebar/lib/sidebar-trigger/sidebar-trigger.d.ts +0 -67
  1523. package/sidebar/lib/sidebar-workspace/sidebar-workspace.d.ts +0 -54
  1524. package/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.d.ts +0 -19
  1525. package/sidebar/lib/sidebar-workspace/sidebar-workspace.types.d.ts +0 -20
  1526. package/sidebar/malva-ui-core-sidebar.d.ts +0 -5
  1527. package/skeleton/index.d.ts +0 -1
  1528. package/skeleton/lib/skeleton/skeleton.d.ts +0 -60
  1529. package/skeleton/malva-ui-core-skeleton.d.ts +0 -5
  1530. package/slider/index.d.ts +0 -2
  1531. package/slider/lib/slider/slider-tooltip-def.d.ts +0 -39
  1532. package/slider/lib/slider/slider.d.ts +0 -171
  1533. package/slider/malva-ui-core-slider.d.ts +0 -5
  1534. package/split-pane/index.d.ts +0 -3
  1535. package/split-pane/lib/split-pane/split-pane-panel.d.ts +0 -34
  1536. package/split-pane/lib/split-pane/split-pane.d.ts +0 -98
  1537. package/split-pane/lib/split-pane/split-pane.types.d.ts +0 -7
  1538. package/split-pane/malva-ui-core-split-pane.d.ts +0 -5
  1539. package/status-indicator/index.d.ts +0 -1
  1540. package/status-indicator/lib/status-indicator/status-indicator.d.ts +0 -61
  1541. package/status-indicator/malva-ui-core-status-indicator.d.ts +0 -5
  1542. package/stepper/index.d.ts +0 -4
  1543. package/stepper/lib/stepper/step-header.d.ts +0 -34
  1544. package/stepper/lib/stepper/step.d.ts +0 -51
  1545. package/stepper/lib/stepper/stepper-token.d.ts +0 -13
  1546. package/stepper/lib/stepper/stepper.d.ts +0 -98
  1547. package/stepper/lib/stepper/stepper.types.d.ts +0 -4
  1548. package/stepper/malva-ui-core-stepper.d.ts +0 -5
  1549. package/switch/index.d.ts +0 -2
  1550. package/switch/lib/switch/switch.d.ts +0 -118
  1551. package/switch/lib/switch-group/switch-group.d.ts +0 -24
  1552. package/switch/lib/switch-group-token.d.ts +0 -6
  1553. package/switch/malva-ui-core-switch.d.ts +0 -5
  1554. package/tabs/index.d.ts +0 -8
  1555. package/tabs/lib/tab/tab.d.ts +0 -46
  1556. package/tabs/lib/tab-content/tab-content.d.ts +0 -11
  1557. package/tabs/lib/tab-content-def.d.ts +0 -6
  1558. package/tabs/lib/tab-def.d.ts +0 -11
  1559. package/tabs/lib/tab-group-token.d.ts +0 -10
  1560. package/tabs/lib/tab-item/tab-item.d.ts +0 -28
  1561. package/tabs/lib/tabs/tabs.d.ts +0 -202
  1562. package/tabs/lib/tabs.service.d.ts +0 -24
  1563. package/tabs/malva-ui-core-tabs.d.ts +0 -5
  1564. package/textarea/index.d.ts +0 -1
  1565. package/textarea/lib/textarea/textarea.d.ts +0 -77
  1566. package/textarea/malva-ui-core-textarea.d.ts +0 -5
  1567. package/tile/index.d.ts +0 -2
  1568. package/tile/lib/tile/tile.d.ts +0 -20
  1569. package/tile/lib/tile-header.d.ts +0 -6
  1570. package/tile/malva-ui-core-tile.d.ts +0 -5
  1571. package/time-picker/index.d.ts +0 -1
  1572. package/time-picker/lib/time-picker/time-picker.d.ts +0 -135
  1573. package/time-picker/lib/time-picker-column/time-picker-column.d.ts +0 -111
  1574. package/time-picker/malva-ui-core-time-picker.d.ts +0 -5
  1575. package/timeline/index.d.ts +0 -5
  1576. package/timeline/lib/timeline/timeline-item-icon.d.ts +0 -24
  1577. package/timeline/lib/timeline/timeline-item-meta.d.ts +0 -24
  1578. package/timeline/lib/timeline/timeline-item.d.ts +0 -52
  1579. package/timeline/lib/timeline/timeline.d.ts +0 -27
  1580. package/timeline/lib/timeline/timeline.types.d.ts +0 -18
  1581. package/timeline/malva-ui-core-timeline.d.ts +0 -5
  1582. package/title/index.d.ts +0 -1
  1583. package/title/lib/title/title.d.ts +0 -63
  1584. package/title/malva-ui-core-title.d.ts +0 -5
  1585. package/toast/index.d.ts +0 -10
  1586. package/toast/lib/abstract-toast-container.d.ts +0 -29
  1587. package/toast/lib/abstract-toast-item.d.ts +0 -44
  1588. package/toast/lib/abstract-toast.service.d.ts +0 -75
  1589. package/toast/lib/toast-container/toast-container.d.ts +0 -23
  1590. package/toast/lib/toast-item/toast-item.d.ts +0 -25
  1591. package/toast/lib/toast-ref.d.ts +0 -33
  1592. package/toast/lib/toast-timer.d.ts +0 -24
  1593. package/toast/lib/toast.directives.d.ts +0 -13
  1594. package/toast/lib/toast.service.d.ts +0 -41
  1595. package/toast/lib/toast.types.d.ts +0 -139
  1596. package/toast/malva-ui-core-toast.d.ts +0 -5
  1597. package/tokenizer/index.d.ts +0 -3
  1598. package/tokenizer/lib/token/token.d.ts +0 -60
  1599. package/tokenizer/lib/token-template.d.ts +0 -29
  1600. package/tokenizer/lib/tokenizer/tokenizer.d.ts +0 -109
  1601. package/tokenizer/malva-ui-core-tokenizer.d.ts +0 -5
  1602. package/toolbar/index.d.ts +0 -3
  1603. package/toolbar/lib/toolbar/toolbar-spacer.d.ts +0 -5
  1604. package/toolbar/lib/toolbar/toolbar-widget.d.ts +0 -75
  1605. package/toolbar/lib/toolbar/toolbar.d.ts +0 -8
  1606. package/toolbar/malva-ui-core-toolbar.d.ts +0 -5
  1607. package/tooltip/index.d.ts +0 -3
  1608. package/tooltip/lib/tooltip/tooltip-panel.d.ts +0 -26
  1609. package/tooltip/lib/tooltip/tooltip.d.ts +0 -148
  1610. package/tooltip/lib/tooltip/tooltip.types.d.ts +0 -17
  1611. package/tooltip/malva-ui-core-tooltip.d.ts +0 -5
  1612. package/tree/index.d.ts +0 -4
  1613. package/tree/lib/tree/tree-context.d.ts +0 -62
  1614. package/tree/lib/tree/tree-node-def.d.ts +0 -33
  1615. package/tree/lib/tree/tree-node.d.ts +0 -45
  1616. package/tree/lib/tree/tree-subtree.d.ts +0 -63
  1617. package/tree/lib/tree/tree.d.ts +0 -156
  1618. package/tree/malva-ui-core-tree.d.ts +0 -5
@@ -0,0 +1,1404 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Directive, InjectionToken, model, input, output, signal, contentChild, inject, computed, DestroyRef, ElementRef, NgZone, PLATFORM_ID, forwardRef, ChangeDetectionStrategy, ViewEncapsulation, Component, Renderer2, effect } from '@angular/core';
3
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
+ import { isPlatformBrowser, NgTemplateOutlet } from '@angular/common';
5
+ import { LucideGripVertical } from '@lucide/angular';
6
+ import { MlvButtonClose, MlvButtonIcon } from '@malva-ui/core/button';
7
+ import * as i1 from '@malva-ui/cdk/density';
8
+ import { MLV_DENSITY_ELEMENT, provideMlvDensityContext, MlvDensityDirective } from '@malva-ui/cdk/density';
9
+ import { MlvStructural, MlvRtlService } from '@malva-ui/cdk/utils';
10
+ import { MLV_TILE_I18N, MlvI18nResolverService } from '@malva-ui/i18n';
11
+ import { RIGHT_ARROW, LEFT_ARROW, DOWN_ARROW, UP_ARROW } from '@angular/cdk/keycodes';
12
+ import Sortable from 'sortablejs';
13
+
14
+ /** Marks a template as the action area rendered in a tile header. */
15
+ class MlvTileActions extends MlvStructural {
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTileActions, deps: null, target: i0.ɵɵFactoryTarget.Directive });
17
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: MlvTileActions, isStandalone: true, selector: "[mlvTileActions]", usesInheritance: true, ngImport: i0 });
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTileActions, decorators: [{
20
+ type: Directive,
21
+ args: [{ selector: '[mlvTileActions]' }]
22
+ }] });
23
+
24
+ class MlvTileHeader extends MlvStructural {
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTileHeader, deps: null, target: i0.ɵɵFactoryTarget.Directive });
26
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: MlvTileHeader, isStandalone: true, selector: "[mlvTileHeader]", usesInheritance: true, ngImport: i0 });
27
+ }
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTileHeader, decorators: [{
29
+ type: Directive,
30
+ args: [{
31
+ selector: '[mlvTileHeader]',
32
+ }]
33
+ }] });
34
+
35
+ /** Marks a template as the trailing action area rendered in a tile header. */
36
+ class MlvTileTrailingActions extends MlvStructural {
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTileTrailingActions, deps: null, target: i0.ɵɵFactoryTarget.Directive });
38
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: MlvTileTrailingActions, isStandalone: true, selector: "[mlvTileTrailingActions]", usesInheritance: true, ngImport: i0 });
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTileTrailingActions, decorators: [{
41
+ type: Directive,
42
+ args: [{ selector: '[mlvTileTrailingActions]' }]
43
+ }] });
44
+
45
+ /** @internal Task 4 makes `MlvTile` provide this item context. */
46
+ const MLV_TILE_ITEM_CONTEXT = new InjectionToken('MLV_TILE_ITEM_CONTEXT');
47
+
48
+ /**
49
+ * @internal Cascading structural lock published by `MlvTiles` and `MlvTile`.
50
+ *
51
+ * Every compound level provides its own resolved signal, so a descendant reads
52
+ * the closest enclosing state with `skipSelf` and combines it with its own
53
+ * `locked` input. Deliberately absent from the public barrel, mirroring
54
+ * `MLV_TILE_ITEM_CONTEXT`.
55
+ */
56
+ const MLV_TILE_LOCKED = new InjectionToken('MLV_TILE_LOCKED');
57
+
58
+ const NO_LOCKED_TARGET_IDS = new Set();
59
+ function createMlvTileDragSession(root, draggedTileId, accepts, lockedTargetIds = NO_LOCKED_TARGET_IDS) {
60
+ const nodeById = new Map();
61
+ const parentById = new Map();
62
+ const containers = [];
63
+ const excludedTargetIds = new Set();
64
+ const indexNode = (node, parentId, isDraggedOrDescendant) => {
65
+ if (nodeById.has(node.id))
66
+ return false;
67
+ const isExcluded = isDraggedOrDescendant || node.id === draggedTileId;
68
+ nodeById.set(node.id, node);
69
+ if (parentId !== undefined)
70
+ parentById.set(node.id, parentId);
71
+ if (isExcluded)
72
+ excludedTargetIds.add(node.id);
73
+ if (!node.acceptsChildren)
74
+ return true;
75
+ containers.push(node);
76
+ return node.children.every((child) => indexNode(child, node.id, isExcluded));
77
+ };
78
+ if (!indexNode(root, undefined, false))
79
+ return null;
80
+ const draggedTile = nodeById.get(draggedTileId);
81
+ if (!draggedTile || draggedTile === root)
82
+ return null;
83
+ // Locked targets are excluded structurally, before any policy runs, so an
84
+ // `accepts` callback returning `true` can never re-open a frozen subtree.
85
+ for (const lockedTargetId of lockedTargetIds) {
86
+ excludedTargetIds.add(lockedTargetId);
87
+ }
88
+ const allowedTargetIds = new Set();
89
+ for (const target of containers) {
90
+ if (!excludedTargetIds.has(target.id) &&
91
+ accepts(draggedTile, target, target.children)) {
92
+ allowedTargetIds.add(target.id);
93
+ }
94
+ }
95
+ return {
96
+ root,
97
+ draggedTile,
98
+ allowedTargetIds,
99
+ nodeById,
100
+ parentById,
101
+ };
102
+ }
103
+ function canEnterMlvTileTarget(session, targetTileId) {
104
+ return session?.allowedTargetIds.has(targetTileId) ?? false;
105
+ }
106
+
107
+ function moveMlvTileNode(root, request) {
108
+ if (request.sourceContainerId === request.targetContainerId &&
109
+ request.previousIndex === request.currentIndex) {
110
+ return root;
111
+ }
112
+ const index = createMlvTileTreeIndex(root);
113
+ if (!index || request.tileId === root.id)
114
+ return root;
115
+ const tile = index.nodeById.get(request.tileId);
116
+ const source = index.containerById.get(request.sourceContainerId);
117
+ const target = index.containerById.get(request.targetContainerId);
118
+ if (!tile ||
119
+ !source ||
120
+ !target ||
121
+ source.children[request.previousIndex] !== tile ||
122
+ isSameOrDescendant(index.parentById, tile.id, target.id) ||
123
+ !hasValidTargetIndex(source, target, request.currentIndex)) {
124
+ return root;
125
+ }
126
+ const changedChildrenById = new Map();
127
+ if (source.id === target.id) {
128
+ changedChildrenById.set(source.id, moveInContainer(source.children, request.previousIndex, request.currentIndex));
129
+ }
130
+ else {
131
+ changedChildrenById.set(source.id, removeFromContainer(source.children, request.previousIndex));
132
+ changedChildrenById.set(target.id, insertIntoContainer(target.children, request.currentIndex, tile));
133
+ }
134
+ return rebuildAffectedTree(root, changedChildrenById, collectAffectedContainerIds(index.parentById, source.id, target.id));
135
+ }
136
+ function insertMlvTileNode(root, request) {
137
+ const index = createMlvTileTreeIndex(root);
138
+ if (!index)
139
+ return root;
140
+ const target = index.containerById.get(request.targetContainerId);
141
+ if (!target)
142
+ return root;
143
+ const targetIndex = request.index ?? target.children.length;
144
+ if (!Number.isInteger(targetIndex) ||
145
+ targetIndex < 0 ||
146
+ targetIndex > target.children.length ||
147
+ !hasUnusedSubtreeIds(request.tile, index.nodeById)) {
148
+ return root;
149
+ }
150
+ return rebuildAffectedTree(root, new Map([
151
+ [
152
+ target.id,
153
+ insertIntoContainer(target.children, targetIndex, request.tile),
154
+ ],
155
+ ]), collectAffectedContainerIds(index.parentById, target.id));
156
+ }
157
+ function removeMlvTileNode(root, tileId) {
158
+ if (tileId === root.id)
159
+ return root;
160
+ const index = createMlvTileTreeIndex(root);
161
+ const tile = index?.nodeById.get(tileId);
162
+ if (!index || !tile)
163
+ return root;
164
+ const parentId = index.parentById.get(tile.id);
165
+ const parent = parentId !== undefined ? index.containerById.get(parentId) : undefined;
166
+ if (!parent)
167
+ return root;
168
+ const tileIndex = parent.children.indexOf(tile);
169
+ if (tileIndex < 0)
170
+ return root;
171
+ return rebuildAffectedTree(root, new Map([[parent.id, removeFromContainer(parent.children, tileIndex)]]), collectAffectedContainerIds(index.parentById, parent.id));
172
+ }
173
+ function updateMlvTileNodeProps(root, tileId, update) {
174
+ if (tileId === root.id)
175
+ return root;
176
+ const index = createMlvTileTreeIndex(root);
177
+ const tile = index?.nodeById.get(tileId);
178
+ if (!index || !tile)
179
+ return root;
180
+ const nextProps = update(tile.props);
181
+ if (nextProps === tile.props)
182
+ return root;
183
+ const parentId = index.parentById.get(tile.id);
184
+ const parent = parentId !== undefined ? index.containerById.get(parentId) : undefined;
185
+ if (!parent)
186
+ return root;
187
+ const tileIndex = parent.children.indexOf(tile);
188
+ if (tileIndex < 0)
189
+ return root;
190
+ const children = [...parent.children];
191
+ children[tileIndex] = {
192
+ ...tile,
193
+ props: nextProps,
194
+ };
195
+ return rebuildAffectedTree(root, new Map([[parent.id, children]]), collectAffectedContainerIds(index.parentById, parent.id));
196
+ }
197
+ function createMlvTileTreeIndex(root) {
198
+ const nodeById = new Map();
199
+ const containerById = new Map();
200
+ const parentById = new Map();
201
+ const indexNode = (node, parentId) => {
202
+ if (nodeById.has(node.id))
203
+ return false;
204
+ nodeById.set(node.id, node);
205
+ if (parentId !== undefined)
206
+ parentById.set(node.id, parentId);
207
+ if (!node.acceptsChildren)
208
+ return true;
209
+ containerById.set(node.id, node);
210
+ return node.children.every((child) => indexNode(child, node.id));
211
+ };
212
+ return indexNode(root, undefined)
213
+ ? { nodeById, containerById, parentById }
214
+ : null;
215
+ }
216
+ function hasUnusedSubtreeIds(node, existingNodeById) {
217
+ const insertedIds = new Set();
218
+ const visit = (current) => {
219
+ if (existingNodeById.has(current.id) || insertedIds.has(current.id)) {
220
+ return false;
221
+ }
222
+ insertedIds.add(current.id);
223
+ return current.acceptsChildren ? current.children.every(visit) : true;
224
+ };
225
+ return visit(node);
226
+ }
227
+ function hasValidTargetIndex(source, target, currentIndex) {
228
+ const maximumIndex = source.id === target.id
229
+ ? target.children.length - 1
230
+ : target.children.length;
231
+ return (Number.isInteger(currentIndex) &&
232
+ currentIndex >= 0 &&
233
+ currentIndex <= maximumIndex);
234
+ }
235
+ function isSameOrDescendant(parentById, tileId, targetId) {
236
+ let currentId = targetId;
237
+ while (currentId !== undefined) {
238
+ if (currentId === tileId)
239
+ return true;
240
+ currentId = parentById.get(currentId);
241
+ }
242
+ return false;
243
+ }
244
+ function moveInContainer(items, previousIndex, currentIndex) {
245
+ const result = [...items];
246
+ const [item] = result.splice(previousIndex, 1);
247
+ result.splice(currentIndex, 0, item);
248
+ return result;
249
+ }
250
+ function removeFromContainer(items, index) {
251
+ return [...items.slice(0, index), ...items.slice(index + 1)];
252
+ }
253
+ function insertIntoContainer(items, index, item) {
254
+ return [...items.slice(0, index), item, ...items.slice(index)];
255
+ }
256
+ function collectAffectedContainerIds(parentById, ...containerIds) {
257
+ const affectedIds = new Set();
258
+ for (const containerId of containerIds) {
259
+ let currentId = containerId;
260
+ while (currentId !== undefined) {
261
+ affectedIds.add(currentId);
262
+ currentId = parentById.get(currentId);
263
+ }
264
+ }
265
+ return affectedIds;
266
+ }
267
+ function rebuildAffectedTree(node, changedChildrenById, affectedContainerIds) {
268
+ if (!affectedContainerIds.has(node.id))
269
+ return node;
270
+ const originalChildren = changedChildrenById.get(node.id) ?? node.children;
271
+ let children = originalChildren;
272
+ for (let childIndex = 0; childIndex < originalChildren.length; childIndex += 1) {
273
+ const child = originalChildren[childIndex];
274
+ if (!child.acceptsChildren || !affectedContainerIds.has(child.id))
275
+ continue;
276
+ const rebuiltChild = rebuildAffectedTree(child, changedChildrenById, affectedContainerIds);
277
+ if (rebuiltChild === child)
278
+ continue;
279
+ if (children === originalChildren)
280
+ children = [...originalChildren];
281
+ children[childIndex] = rebuiltChild;
282
+ }
283
+ return children === node.children ? node : { ...node, children };
284
+ }
285
+
286
+ const acceptEveryTile = () => true;
287
+ function createKeyboardMoveRequest(session, direction) {
288
+ if (!session)
289
+ return null;
290
+ const tileId = session.draggedTile.id;
291
+ const sourceContainerId = session.parentById.get(tileId);
292
+ if (sourceContainerId === undefined)
293
+ return null;
294
+ const source = session.nodeById.get(sourceContainerId);
295
+ if (!source?.acceptsChildren)
296
+ return null;
297
+ const previousIndex = source.children.findIndex(({ id }) => id === tileId);
298
+ if (previousIndex < 0)
299
+ return null;
300
+ if (direction === 'up' || direction === 'down') {
301
+ const currentIndex = previousIndex + (direction === 'up' ? -1 : 1);
302
+ if (currentIndex < 0 ||
303
+ currentIndex >= source.children.length ||
304
+ !session.allowedTargetIds.has(sourceContainerId)) {
305
+ return null;
306
+ }
307
+ return {
308
+ tileId,
309
+ sourceContainerId,
310
+ targetContainerId: sourceContainerId,
311
+ previousIndex,
312
+ currentIndex,
313
+ };
314
+ }
315
+ if (direction === 'left') {
316
+ const targetContainerId = session.parentById.get(sourceContainerId);
317
+ if (targetContainerId === undefined)
318
+ return null;
319
+ const target = session.nodeById.get(targetContainerId);
320
+ if (!target?.acceptsChildren ||
321
+ !session.allowedTargetIds.has(targetContainerId)) {
322
+ return null;
323
+ }
324
+ const sourceIndex = target.children.findIndex(({ id }) => id === sourceContainerId);
325
+ if (sourceIndex < 0)
326
+ return null;
327
+ return {
328
+ tileId,
329
+ sourceContainerId,
330
+ targetContainerId,
331
+ previousIndex,
332
+ currentIndex: sourceIndex + 1,
333
+ };
334
+ }
335
+ // Prefer the nearest preceding eligible sibling container, then fall back to
336
+ // the nearest following one so the first tile in a list can still indent.
337
+ for (let index = previousIndex - 1; index >= 0; index -= 1) {
338
+ const request = createIndentRequest(session, source.children[index], tileId, sourceContainerId, previousIndex);
339
+ if (request)
340
+ return request;
341
+ }
342
+ for (let index = previousIndex + 1; index < source.children.length; index += 1) {
343
+ const request = createIndentRequest(session, source.children[index], tileId, sourceContainerId, previousIndex);
344
+ if (request)
345
+ return request;
346
+ }
347
+ return null;
348
+ }
349
+ function createIndentRequest(session, target, tileId, sourceContainerId, previousIndex) {
350
+ if (!target.acceptsChildren || !session.allowedTargetIds.has(target.id)) {
351
+ return null;
352
+ }
353
+ return {
354
+ tileId,
355
+ sourceContainerId,
356
+ targetContainerId: target.id,
357
+ previousIndex,
358
+ currentIndex: target.children.length,
359
+ };
360
+ }
361
+ function findParentContainerId(root, tileId) {
362
+ const visit = (container) => {
363
+ for (const child of container.children) {
364
+ if (child.id === tileId)
365
+ return container.id;
366
+ if (!child.acceptsChildren)
367
+ continue;
368
+ const match = visit(child);
369
+ if (match !== undefined)
370
+ return match;
371
+ }
372
+ return undefined;
373
+ };
374
+ return visit(root);
375
+ }
376
+ class MlvTileTreeCoordinator {
377
+ _options;
378
+ _containers = new Map();
379
+ _items = new Map();
380
+ _activeSession = null;
381
+ _registrationOrder = 0;
382
+ constructor(_options) {
383
+ this._options = _options;
384
+ }
385
+ bindTree(root) {
386
+ if (!this._options.isRoot) {
387
+ throw new Error('Nested mlv-tiles must inherit the root tree.');
388
+ }
389
+ this._options.setRoot(root);
390
+ }
391
+ start() {
392
+ const root = this._options.readRoot();
393
+ if (!root && this._options.isRoot) {
394
+ throw new Error('Root mlv-tiles requires [(tree)].');
395
+ }
396
+ if (!root) {
397
+ throw new Error('Nested mlv-tiles must inherit the root tree.');
398
+ }
399
+ return root;
400
+ }
401
+ registerContainer(registration) {
402
+ const isNewRegistration = !this._containers.has(registration);
403
+ this._retain(this._containers, registration);
404
+ if (isNewRegistration && this._activeSession) {
405
+ registration.canEnter(canEnterMlvTileTarget(this._activeSession, registration.id));
406
+ }
407
+ let registered = true;
408
+ return () => {
409
+ if (!registered)
410
+ return;
411
+ registered = false;
412
+ this._release(this._containers, registration);
413
+ };
414
+ }
415
+ registerItem(registration) {
416
+ this._retain(this._items, registration);
417
+ let registered = true;
418
+ return () => {
419
+ if (!registered)
420
+ return;
421
+ registered = false;
422
+ this._release(this._items, registration);
423
+ };
424
+ }
425
+ targets() {
426
+ return [...this._containers.entries()]
427
+ .sort(([firstRegistration, firstEntry], [secondRegistration, secondEntry]) => secondRegistration.depth - firstRegistration.depth ||
428
+ firstEntry.order - secondEntry.order)
429
+ .map(([registration]) => registration);
430
+ }
431
+ item(id) {
432
+ return [...this._items.keys()].find((registration) => registration.id === id);
433
+ }
434
+ activeSession() {
435
+ return this._activeSession;
436
+ }
437
+ startDrag(tileId) {
438
+ const root = this.start();
439
+ const { policyByContainerId, lockedContainerIds } = this._createPolicyIndex(root);
440
+ const session = createMlvTileDragSession(root, tileId, (_draggedTile, targetTile, innerTiles) => (policyByContainerId.get(targetTile.id) ?? acceptEveryTile)(_draggedTile, targetTile, innerTiles), lockedContainerIds);
441
+ this._activeSession = session;
442
+ for (const target of this._containers.keys()) {
443
+ target.canEnter(canEnterMlvTileTarget(session, target.id));
444
+ }
445
+ return session;
446
+ }
447
+ endDrag() {
448
+ this._activeSession = null;
449
+ for (const target of this._containers.keys())
450
+ target.canEnter(false);
451
+ }
452
+ moveByKeyboard(tileId, direction) {
453
+ const session = this.startDrag(tileId);
454
+ try {
455
+ const request = createKeyboardMoveRequest(session, direction);
456
+ return request && this.move(request) ? request : null;
457
+ }
458
+ finally {
459
+ this.endDrag();
460
+ }
461
+ }
462
+ move(request) {
463
+ const root = this.start();
464
+ if (this._activeSession &&
465
+ (this._activeSession.draggedTile.id !== request.tileId ||
466
+ !canEnterMlvTileTarget(this._activeSession, request.targetContainerId))) {
467
+ return false;
468
+ }
469
+ const nextRoot = moveMlvTileNode(root, request);
470
+ if (nextRoot === root)
471
+ return false;
472
+ this._options.setRoot(nextRoot);
473
+ this._options.moved(request);
474
+ return true;
475
+ }
476
+ insert(request) {
477
+ const root = this.start();
478
+ if (this._createPolicyIndex(root).lockedContainerIds.has(request.targetContainerId)) {
479
+ return false;
480
+ }
481
+ const nextRoot = insertMlvTileNode(root, request);
482
+ if (nextRoot === root)
483
+ return false;
484
+ this._options.setRoot(nextRoot);
485
+ return true;
486
+ }
487
+ remove(tileId) {
488
+ const root = this.start();
489
+ if (this._isLockedNode(root, tileId))
490
+ return false;
491
+ const nextRoot = removeMlvTileNode(root, tileId);
492
+ if (nextRoot === root)
493
+ return false;
494
+ this._options.setRoot(nextRoot);
495
+ return true;
496
+ }
497
+ /**
498
+ * @internal Whether a node is structurally frozen: it is itself a locked
499
+ * container, or it sits directly inside one. Reads the same locked set the
500
+ * drag session uses, so an unlocked container cannot reach into a locked
501
+ * subtree by ID.
502
+ */
503
+ isLocked(tileId) {
504
+ let root;
505
+ try {
506
+ root = this.start();
507
+ }
508
+ catch {
509
+ return false;
510
+ }
511
+ return this._isLockedNode(root, tileId);
512
+ }
513
+ updateProps(tileId, update) {
514
+ const root = this.start();
515
+ const nextRoot = updateMlvTileNodeProps(root, tileId, update);
516
+ if (nextRoot === root)
517
+ return false;
518
+ this._options.setRoot(nextRoot);
519
+ return true;
520
+ }
521
+ /** @private Resolves the structural lock for one node against the cached set. */
522
+ _isLockedNode(root, tileId) {
523
+ const { lockedContainerIds } = this._createPolicyIndex(root);
524
+ if (lockedContainerIds.has(tileId))
525
+ return true;
526
+ const parentContainerId = findParentContainerId(root, tileId);
527
+ return (parentContainerId !== undefined &&
528
+ lockedContainerIds.has(parentContainerId));
529
+ }
530
+ _createPolicyIndex(root) {
531
+ const registrationById = new Map();
532
+ for (const registration of this._containers.keys()) {
533
+ if (!registrationById.has(registration.id)) {
534
+ registrationById.set(registration.id, registration);
535
+ }
536
+ }
537
+ const policyByContainerId = new Map();
538
+ const lockedContainerIds = new Set();
539
+ const index = (node, inherited, inheritedLocked) => {
540
+ if (!node.acceptsChildren)
541
+ return;
542
+ const registration = registrationById.get(node.id);
543
+ const policy = registration?.accepts ?? inherited;
544
+ const locked = inheritedLocked || registration?.locked() === true;
545
+ policyByContainerId.set(node.id, policy);
546
+ if (locked)
547
+ lockedContainerIds.add(node.id);
548
+ for (const child of node.children)
549
+ index(child, policy, locked);
550
+ };
551
+ index(root, acceptEveryTile, false);
552
+ return { policyByContainerId, lockedContainerIds };
553
+ }
554
+ _retain(registrations, registration) {
555
+ const current = registrations.get(registration);
556
+ if (current) {
557
+ current.references += 1;
558
+ return;
559
+ }
560
+ registrations.set(registration, {
561
+ order: this._registrationOrder,
562
+ references: 1,
563
+ });
564
+ this._registrationOrder += 1;
565
+ }
566
+ _release(registrations, registration) {
567
+ const current = registrations.get(registration);
568
+ if (!current)
569
+ return;
570
+ current.references -= 1;
571
+ if (current.references === 0)
572
+ registrations.delete(registration);
573
+ }
574
+ }
575
+
576
+ /** Marks a template as the empty-target prompt rendered by `mlv-tiles`. */
577
+ class MlvTilesEmpty extends MlvStructural {
578
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTilesEmpty, deps: null, target: i0.ɵɵFactoryTarget.Directive });
579
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: MlvTilesEmpty, isStandalone: true, selector: "[mlvTilesEmpty]", usesInheritance: true, ngImport: i0 });
580
+ }
581
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTilesEmpty, decorators: [{
582
+ type: Directive,
583
+ args: [{ selector: '[mlvTilesEmpty]' }]
584
+ }] });
585
+
586
+ const ITEM_ROOT_CLASS = 'mlv-tiles__item-root';
587
+ const ITEM_ID_ATTRIBUTE = 'data-mlv-tile-id';
588
+ const ITEM_DISABLED_ATTRIBUTE = 'data-mlv-tile-drag-disabled';
589
+ const SORTABLE_CHOSEN_CLASS = 'mlv-tiles__sortable-chosen';
590
+ const SORTABLE_DRAG_CLASS = 'mlv-tiles__sortable-drag';
591
+ const SORTABLE_FALLBACK_CLASS = 'mlv-tiles__sortable-fallback';
592
+ const SORTABLE_GHOST_CLASS = 'mlv-tiles__sortable-ghost';
593
+ const SORTABLE_ANIMATION_MS = 200;
594
+ let nextGroupId = 0;
595
+ const tilesByHost = new WeakMap();
596
+ class MlvTiles {
597
+ /** Root-owned immutable tree. Nested containers inherit this binding. */
598
+ tree = model(/* @ts-ignore */
599
+ ...(ngDevMode ? [undefined, { debugName: "tree" }] : /* istanbul ignore next */ []));
600
+ /** Controls the projected tile layout. */
601
+ layout = input('list', /* @ts-ignore */
602
+ ...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
603
+ /** Optionally overrides the inherited acceptance policy for this subtree. */
604
+ accepts = input(/* @ts-ignore */
605
+ ...(ngDevMode ? [undefined, { debugName: "accepts" }] : /* istanbul ignore next */ []));
606
+ /**
607
+ * Freezes this container and its entire subtree: no tile can be dropped in,
608
+ * no descendant tile can be picked up, and built-in structural affordances
609
+ * are withdrawn. Cascades to nested `mlv-tiles` and `mlv-tile`. Evaluated
610
+ * before `accepts`, so an acceptance policy cannot re-open a locked target.
611
+ */
612
+ locked = input(false, { ...(ngDevMode ? { debugName: "locked" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
613
+ /**
614
+ * Overrides the localized empty-target prompt with a plain string. A
615
+ * projected `[mlvTilesEmpty]` template takes precedence over this input.
616
+ */
617
+ emptyLabel = input(undefined, /* @ts-ignore */
618
+ ...(ngDevMode ? [{ debugName: "emptyLabel" }] : /* istanbul ignore next */ []));
619
+ /** Emits after the root tree has been replaced by a successful move. */
620
+ moved = output();
621
+ /** Current cached acceptance state for this rendered target. */
622
+ dropState = signal('idle', /* @ts-ignore */
623
+ ...(ngDevMode ? [{ debugName: "dropState" }] : /* istanbul ignore next */ []));
624
+ /** @protected Consumer-owned empty state projected via `[mlvTilesEmpty]`. */
625
+ emptyRef = contentChild(MlvTilesEmpty, /* @ts-ignore */
626
+ ...(ngDevMode ? [{ debugName: "emptyRef" }] : /* istanbul ignore next */ []));
627
+ _parentTiles = inject(MlvTiles, {
628
+ optional: true,
629
+ skipSelf: true,
630
+ });
631
+ /** @private Closest enclosing lock, published by a tile or outer container. */
632
+ _inheritedLocked = inject(MLV_TILE_LOCKED, {
633
+ optional: true,
634
+ skipSelf: true,
635
+ });
636
+ /**
637
+ * @internal Resolved lock for this level, inherited state included. Published
638
+ * through `MLV_TILE_LOCKED` so every descendant container and tile sees it.
639
+ */
640
+ lockedState = computed(() => this._inheritedLocked?.() === true || this.locked(), /* @ts-ignore */
641
+ ...(ngDevMode ? [{ debugName: "lockedState" }] : /* istanbul ignore next */ []));
642
+ _itemContext = inject(MLV_TILE_ITEM_CONTEXT, {
643
+ optional: true,
644
+ });
645
+ _destroyRef = inject(DestroyRef);
646
+ _elementRef = inject((ElementRef));
647
+ _ngZone = inject(NgZone);
648
+ _platformId = inject(PLATFORM_ID);
649
+ /** @protected Localized keyboard instructions rendered by the root list. */
650
+ _i18n = inject(MLV_TILE_I18N);
651
+ _i18nResolver = inject(MlvI18nResolverService);
652
+ _rootTiles = this._parentTiles?._rootTiles ?? this;
653
+ _groupName = this._parentTiles?._groupName ?? `mlv-tiles-${nextGroupId++}`;
654
+ /** @protected Root-only assistive text is projected once per compound tree. */
655
+ _isRoot = this._parentTiles === null;
656
+ /** @protected Polite keyboard movement feedback shared by nested lists. */
657
+ _keyboardAnnouncement = this._parentTiles?._keyboardAnnouncement ?? signal('');
658
+ _announcementSequence = 0;
659
+ _sortable = null;
660
+ _activeDrag = null;
661
+ /** @private Current container node represented by this rendered list. */
662
+ _target = computed(() => {
663
+ const target = this._parentTiles ? this._itemContext?.tile() : this.tree();
664
+ return target?.acceptsChildren ? target : undefined;
665
+ }, /* @ts-ignore */
666
+ ...(ngDevMode ? [{ debugName: "_target" }] : /* istanbul ignore next */ []));
667
+ /** @internal Shared root coordinator used by all nested containers. */
668
+ coordinator = this._parentTiles?.coordinator ??
669
+ new MlvTileTreeCoordinator({
670
+ isRoot: true,
671
+ readRoot: () => this.tree(),
672
+ setRoot: (root) => this.tree.set(root),
673
+ moved: (event) => this.moved.emit(event),
674
+ });
675
+ /** @internal Compound nesting depth used for target registration order. */
676
+ depth = (this._parentTiles?.depth ?? -1) + 1;
677
+ /** Stable target ID derived from the root or the enclosing item context. */
678
+ targetId = computed(() => this._target()?.id, /* @ts-ignore */
679
+ ...(ngDevMode ? [{ debugName: "targetId" }] : /* istanbul ignore next */ []));
680
+ /** Whether this target currently has no direct child tiles. */
681
+ isEmpty = computed(() => {
682
+ const target = this._target();
683
+ return target ? target.children.length === 0 : false;
684
+ }, /* @ts-ignore */
685
+ ...(ngDevMode ? [{ debugName: "isEmpty" }] : /* istanbul ignore next */ []));
686
+ ngOnChanges(changes) {
687
+ if (this._parentTiles && changes['tree']) {
688
+ throw new Error('Nested mlv-tiles must inherit the root tree.');
689
+ }
690
+ }
691
+ ngOnInit() {
692
+ if (!this._parentTiles)
693
+ this.coordinator.start();
694
+ const id = this.targetId();
695
+ if (id === undefined) {
696
+ throw new Error(this._parentTiles
697
+ ? 'Nested mlv-tiles requires an enclosing tile item.'
698
+ : 'Root mlv-tiles requires [(tree)].');
699
+ }
700
+ const readAccepts = () => this.accepts();
701
+ const registration = {
702
+ id,
703
+ depth: this.depth,
704
+ get accepts() {
705
+ return readAccepts();
706
+ },
707
+ locked: () => this.lockedState(),
708
+ canEnter: (allowed) => {
709
+ this.dropState.set(this.coordinator.activeSession()
710
+ ? allowed
711
+ ? 'valid'
712
+ : 'invalid'
713
+ : 'idle');
714
+ },
715
+ };
716
+ const unregister = this.coordinator.registerContainer(registration);
717
+ this._destroyRef.onDestroy(unregister);
718
+ }
719
+ ngAfterViewInit() {
720
+ if (!isPlatformBrowser(this._platformId))
721
+ return;
722
+ const host = this._elementRef.nativeElement;
723
+ tilesByHost.set(host, this);
724
+ this._ngZone.runOutsideAngular(() => {
725
+ this._sortable = Sortable.create(host, this._sortableOptions());
726
+ });
727
+ this._destroyRef.onDestroy(() => {
728
+ this._rootTiles._cancelActiveDrag();
729
+ this._sortable?.destroy();
730
+ this._sortable = null;
731
+ tilesByHost.delete(host);
732
+ });
733
+ }
734
+ /** @internal Resolves the direct consumer wrapper Sortable may animate. */
735
+ resolveItemRoot(tileHost) {
736
+ const listHost = this._elementRef.nativeElement;
737
+ let itemRoot = tileHost;
738
+ while (itemRoot.parentElement && itemRoot.parentElement !== listHost) {
739
+ itemRoot = itemRoot.parentElement;
740
+ }
741
+ return itemRoot.parentElement === listHost ? itemRoot : tileHost;
742
+ }
743
+ /**
744
+ * Inserts a node into this container through the root-owned immutable tree.
745
+ *
746
+ * @param tile - Node to insert. Neither it nor any node in its subtree may
747
+ * reuse an ID that already exists in the tree.
748
+ * @param index - Position among this container's direct children. Omitted
749
+ * appends; a non-integer, negative, or out-of-range index is rejected
750
+ * rather than clamped.
751
+ * @returns `true` when the root tree was replaced, `false` on any rejection.
752
+ * Always `false` while this container is locked.
753
+ */
754
+ insert(tile, index) {
755
+ const targetContainerId = this.targetId();
756
+ if (targetContainerId === undefined)
757
+ return false;
758
+ if (this.lockedState()) {
759
+ this._warnDev('MlvTiles.insert() is disabled while the container is locked.');
760
+ return false;
761
+ }
762
+ return this.coordinator.insert({ targetContainerId, tile, index });
763
+ }
764
+ /**
765
+ * Removes a registered item from this compound tree through the root-owned
766
+ * immutable tree.
767
+ *
768
+ * @param tileId - Stable ID of the node to remove.
769
+ * @returns `true` when the root tree was replaced, `false` on any rejection.
770
+ * Always `false` when the node — or the container holding it — is locked,
771
+ * so an unlocked container cannot reach into a locked subtree by ID.
772
+ */
773
+ remove(tileId) {
774
+ if (this.coordinator.isLocked(tileId)) {
775
+ this._warnDev('MlvTiles.remove() is disabled while the target subtree is locked.');
776
+ return false;
777
+ }
778
+ return this.coordinator.remove(tileId);
779
+ }
780
+ /** @internal Updates a registered item's props through the root immutable tree. */
781
+ updateProps(tileId, update) {
782
+ this.coordinator.updateProps(tileId, update);
783
+ }
784
+ /** @internal Associates every tree handle with one discoverable instruction. */
785
+ keyboardInstructionsId() {
786
+ return `${this._groupName}-keyboard-instructions`;
787
+ }
788
+ /** @internal Executes and announces a stable-ID keyboard tree operation. */
789
+ moveByKeyboard(tileId, direction, label) {
790
+ const request = this.coordinator.moveByKeyboard(tileId, direction);
791
+ const announcementKey = request
792
+ ? direction === 'up'
793
+ ? 'movedUp'
794
+ : direction === 'down'
795
+ ? 'movedDown'
796
+ : direction === 'left'
797
+ ? 'movedOut'
798
+ : 'movedInto'
799
+ : 'moveRejected';
800
+ const announcement = this._i18nResolver.resolve(this._i18n(), announcementKey, { label });
801
+ this._rootTiles._announceKeyboardMove(announcement);
802
+ this._rootTiles._restoreKeyboardFocus(tileId);
803
+ }
804
+ _sortableOptions() {
805
+ return {
806
+ animation: this._prefersReducedMotion() ? 0 : SORTABLE_ANIMATION_MS,
807
+ chosenClass: SORTABLE_CHOSEN_CLASS,
808
+ dragClass: SORTABLE_DRAG_CLASS,
809
+ draggable: `.${ITEM_ROOT_CLASS}`,
810
+ dragoverBubble: false,
811
+ easing: 'var(--mlv-ease-in-out-strong)',
812
+ fallbackClass: SORTABLE_FALLBACK_CLASS,
813
+ fallbackOnBody: true,
814
+ // Dragging is already gated to the dedicated `.mlv-tile__drag-handle`
815
+ // grip (see `handle` below), which has no competing click action of its
816
+ // own (grab-only; keyboard users move tiles with Alt+Arrow instead), so
817
+ // there is no click-vs-drag ambiguity left for a movement tolerance to
818
+ // resolve. `touch-action: none` on the handle (tile.scss) already stops
819
+ // the browser treating a handle touch as a page scroll. A non-zero
820
+ // tolerance here only added a dead-feeling few-pixel delay before every
821
+ // drag start, so it drops to 0 — SortableJS's own library default.
822
+ fallbackTolerance: 0,
823
+ filter: `[${ITEM_DISABLED_ATTRIBUTE}="true"]`,
824
+ preventOnFilter: false,
825
+ forceFallback: true,
826
+ ghostClass: SORTABLE_GHOST_CLASS,
827
+ group: {
828
+ name: this._groupName,
829
+ pull: true,
830
+ put: (_to, _from, item) => this._canReceive(item),
831
+ },
832
+ handle: '.mlv-tile__drag-handle',
833
+ scroll: true,
834
+ onClone: (event) => this._sanitizeClone(event.clone),
835
+ onStart: (event) => this._startSortableDrag(event),
836
+ onMove: (event, originalEvent) => this._canMove(event, originalEvent),
837
+ onEnd: (event) => this._rootTiles._endSortableDrag(event),
838
+ };
839
+ }
840
+ _sanitizeClone(clone) {
841
+ clone.setAttribute('aria-hidden', 'true');
842
+ clone.setAttribute('inert', '');
843
+ clone.removeAttribute('id');
844
+ clone.querySelectorAll('[id]').forEach((element) => {
845
+ element.removeAttribute('id');
846
+ });
847
+ // A CSS animation outranks an inline declaration, so any consumer entrance
848
+ // animation on the item root would own `transform` on this clone and defeat
849
+ // the inline transform the engine writes on every pointer move — the clone
850
+ // would read its own offset back as identity and never follow the pointer.
851
+ // The clone is a transient engine artifact; it never replays consumer
852
+ // motion. Set inline so it also wins over a stylesheet `animation`.
853
+ clone.style.animation = 'none';
854
+ }
855
+ _startSortableDrag(event) {
856
+ const item = event.item;
857
+ const tileId = item.getAttribute(ITEM_ID_ATTRIBUTE);
858
+ if (tileId === null ||
859
+ item.getAttribute(ITEM_DISABLED_ATTRIBUTE) === 'true') {
860
+ return;
861
+ }
862
+ const fallbackClone = Sortable.ghost;
863
+ if (fallbackClone && fallbackClone !== item) {
864
+ this._sanitizeClone(fallbackClone);
865
+ }
866
+ this._rootTiles._cancelActiveDrag();
867
+ const session = this._ngZone.run(() => this.coordinator.startDrag(tileId));
868
+ const registration = this.coordinator.item(tileId);
869
+ const sourceContainerId = session?.parentById.get(tileId);
870
+ const previousIndex = event.oldDraggableIndex ?? this._draggableIndex(item, event.from);
871
+ if (!session ||
872
+ !registration ||
873
+ sourceContainerId !== this.targetId() ||
874
+ previousIndex < 0) {
875
+ this._ngZone.run(() => this.coordinator.endDrag());
876
+ return;
877
+ }
878
+ this._rootTiles._activeDrag = {
879
+ tileId,
880
+ source: this,
881
+ sourceElement: event.from,
882
+ item,
883
+ nextSibling: item.nextSibling,
884
+ previousIndex,
885
+ originalStyle: item.getAttribute('style'),
886
+ originalDraggable: item.getAttribute('draggable'),
887
+ registration,
888
+ sessionRoot: session.root,
889
+ };
890
+ }
891
+ _endSortableDrag(event) {
892
+ const active = this._activeDrag;
893
+ if (!active)
894
+ return;
895
+ if (active.item !== event.item) {
896
+ this._cancelActiveDrag();
897
+ return;
898
+ }
899
+ this._activeDrag = null;
900
+ const canRestoreItem = this._canRestoreSortableItem(active);
901
+ const isFresh = canRestoreItem && this._isActiveDragFresh(active);
902
+ const target = tilesByHost.get(event.to);
903
+ const targetContainerId = target?.targetId();
904
+ const currentIndex = event.newDraggableIndex ?? this._draggableIndex(event.item, event.to);
905
+ const session = this.coordinator.activeSession();
906
+ const sourceContainerId = active.source.targetId();
907
+ const request = isFresh &&
908
+ target &&
909
+ target.coordinator === this.coordinator &&
910
+ sourceContainerId !== undefined &&
911
+ targetContainerId !== undefined &&
912
+ currentIndex >= 0 &&
913
+ session?.draggedTile.id === active.tileId &&
914
+ session.allowedTargetIds.has(targetContainerId)
915
+ ? {
916
+ tileId: active.tileId,
917
+ sourceContainerId,
918
+ targetContainerId,
919
+ previousIndex: active.previousIndex,
920
+ currentIndex,
921
+ }
922
+ : null;
923
+ if (canRestoreItem) {
924
+ this._restoreSortableItem(active);
925
+ }
926
+ else {
927
+ this._cleanupSortableItem(active);
928
+ }
929
+ this._ngZone.run(() => {
930
+ try {
931
+ if (request)
932
+ this.coordinator.move(request);
933
+ }
934
+ finally {
935
+ this.coordinator.endDrag();
936
+ }
937
+ });
938
+ }
939
+ _cancelActiveDrag() {
940
+ const active = this._activeDrag;
941
+ if (!active)
942
+ return;
943
+ this._activeDrag = null;
944
+ if (this._canRestoreSortableItem(active)) {
945
+ this._restoreSortableItem(active);
946
+ }
947
+ else {
948
+ this._cleanupSortableItem(active);
949
+ }
950
+ active.source._ngZone.run(() => this.coordinator.endDrag());
951
+ }
952
+ _restoreSortableItem(active) {
953
+ const { item, sourceElement, nextSibling } = active;
954
+ if (nextSibling?.parentNode === sourceElement) {
955
+ sourceElement.insertBefore(item, nextSibling);
956
+ }
957
+ else {
958
+ sourceElement.appendChild(item);
959
+ }
960
+ this._cleanupSortableItem(active);
961
+ }
962
+ _cleanupSortableItem(active) {
963
+ const { item } = active;
964
+ item.classList.remove(SORTABLE_CHOSEN_CLASS, SORTABLE_DRAG_CLASS, SORTABLE_FALLBACK_CLASS, SORTABLE_GHOST_CLASS);
965
+ this._restoreAttribute(item, 'style', active.originalStyle);
966
+ this._restoreAttribute(item, 'draggable', active.originalDraggable);
967
+ }
968
+ _canRestoreSortableItem(active) {
969
+ return (active.item.isConnected &&
970
+ active.sourceElement.isConnected &&
971
+ this.coordinator.item(active.tileId) === active.registration);
972
+ }
973
+ _isActiveDragFresh(active) {
974
+ const session = this.coordinator.activeSession();
975
+ let currentRoot;
976
+ try {
977
+ currentRoot = this.coordinator.start();
978
+ }
979
+ catch {
980
+ return false;
981
+ }
982
+ return (session?.root === active.sessionRoot &&
983
+ currentRoot === active.sessionRoot &&
984
+ session.draggedTile.id === active.tileId);
985
+ }
986
+ _announceKeyboardMove(message) {
987
+ const sequence = ++this._announcementSequence;
988
+ this._keyboardAnnouncement.set('');
989
+ queueMicrotask(() => {
990
+ if (this._destroyRef.destroyed ||
991
+ sequence !== this._announcementSequence) {
992
+ return;
993
+ }
994
+ this._keyboardAnnouncement.set(message);
995
+ });
996
+ }
997
+ _restoreKeyboardFocus(tileId) {
998
+ queueMicrotask(() => {
999
+ if (this._destroyRef.destroyed)
1000
+ return;
1001
+ const rootElement = this._elementRef.nativeElement;
1002
+ const item = Array.from(rootElement.querySelectorAll(`.${ITEM_ROOT_CLASS}[${ITEM_ID_ATTRIBUTE}]`)).find((candidate) => candidate.getAttribute(ITEM_ID_ATTRIBUTE) === tileId);
1003
+ item?.querySelector('.mlv-tile__drag-handle')?.focus();
1004
+ });
1005
+ }
1006
+ _restoreAttribute(element, name, value) {
1007
+ if (value === null)
1008
+ element.removeAttribute(name);
1009
+ else
1010
+ element.setAttribute(name, value);
1011
+ }
1012
+ _canReceive(item) {
1013
+ const session = this.coordinator.activeSession();
1014
+ const targetId = this.targetId();
1015
+ return (session !== null &&
1016
+ session.draggedTile.id === item.getAttribute(ITEM_ID_ATTRIBUTE) &&
1017
+ targetId !== undefined &&
1018
+ session.allowedTargetIds.has(targetId));
1019
+ }
1020
+ _canMove(event, originalEvent) {
1021
+ const target = tilesByHost.get(event.to);
1022
+ if (!target || target.coordinator !== this.coordinator)
1023
+ return false;
1024
+ const deepestTarget = this._eventTargetTiles(originalEvent);
1025
+ if (deepestTarget && deepestTarget !== target)
1026
+ return false;
1027
+ return target._canReceive(event.dragged);
1028
+ }
1029
+ _eventTargetTiles(event) {
1030
+ const path = event.composedPath?.() ?? [];
1031
+ const firstElement = path.find((entry) => entry instanceof HTMLElement);
1032
+ let element = firstElement ??
1033
+ (event.target instanceof HTMLElement ? event.target : null);
1034
+ while (element) {
1035
+ const tiles = tilesByHost.get(element);
1036
+ if (tiles?.coordinator === this.coordinator)
1037
+ return tiles;
1038
+ element = element.parentElement;
1039
+ }
1040
+ return null;
1041
+ }
1042
+ _draggableIndex(item, container) {
1043
+ return Array.from(container.children)
1044
+ .filter((candidate) => candidate instanceof HTMLElement &&
1045
+ candidate.classList.contains(ITEM_ROOT_CLASS))
1046
+ .indexOf(item);
1047
+ }
1048
+ /** @private Single development-only channel for rejected tree operations. */
1049
+ _warnDev(message) {
1050
+ if (typeof ngDevMode === 'undefined' || ngDevMode)
1051
+ console.warn(message);
1052
+ }
1053
+ _prefersReducedMotion() {
1054
+ return (typeof matchMedia === 'function' &&
1055
+ matchMedia('(prefers-reduced-motion: reduce)').matches);
1056
+ }
1057
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTiles, deps: [], target: i0.ɵɵFactoryTarget.Component });
1058
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: MlvTiles, isStandalone: true, selector: "mlv-tiles", inputs: { tree: { classPropertyName: "tree", publicName: "tree", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, accepts: { classPropertyName: "accepts", publicName: "accepts", isSignal: true, isRequired: false, transformFunction: null }, locked: { classPropertyName: "locked", publicName: "locked", isSignal: true, isRequired: false, transformFunction: null }, emptyLabel: { classPropertyName: "emptyLabel", publicName: "emptyLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tree: "treeChange", moved: "moved" }, host: { properties: { "class.mlv-tiles--layout-list": "layout() === \"list\"", "class.mlv-tiles--grid": "layout() === \"grid\"", "class.mlv-tiles--valid": "dropState() === \"valid\"", "class.mlv-tiles--invalid": "dropState() === \"invalid\"", "class.mlv-tiles--sorting": "dropState() !== \"idle\"", "class.mlv-tiles--locked": "lockedState()", "class.mlv-tiles--nested": "depth > 0", "style.--mlv-tiles-depth": "depth", "attr.data-mlv-tiles-id": "targetId()" }, classAttribute: "mlv-tiles" }, providers: [
1059
+ {
1060
+ provide: MLV_TILE_LOCKED,
1061
+ useFactory: (tiles) => tiles.lockedState,
1062
+ deps: [forwardRef(() => MlvTiles)],
1063
+ },
1064
+ ], queries: [{ propertyName: "emptyRef", first: true, predicate: MlvTilesEmpty, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<ng-content />\n@if (_isRoot) {\n<span class=\"cdk-visually-hidden\" [id]=\"keyboardInstructionsId()\"\n >{{ _i18n().keyboardInstructions }}</span\n>\n<span\n class=\"cdk-visually-hidden mlv-tiles__keyboard-status\"\n role=\"status\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >{{ _keyboardAnnouncement() }}</span\n>\n}\n<span\n class=\"mlv-tiles__restriction\"\n [class.mlv-tiles__restriction--visible]=\"dropState() === 'invalid'\"\n [attr.aria-hidden]=\"dropState() === 'invalid' ? null : 'true'\"\n >{{ _i18n().restrictedTarget }}</span\n>\n@if (isEmpty() && !lockedState()) {\n<div\n class=\"mlv-tiles__empty\"\n [class.mlv-tiles__empty--projected]=\"emptyRef() !== undefined\"\n>\n @if (emptyRef(); as emptyTpl) {\n <ng-container [ngTemplateOutlet]=\"emptyTpl.templateRef\" />\n } @else { {{ emptyLabel() ?? _i18n().emptyTarget }} }\n</div>\n}\n", styles: ["@layer mlv.components{@media(prefers-reduced-motion:reduce){.mlv-tiles,.mlv-tiles *,.mlv-tiles:before,.mlv-tiles:after,[class^=mlv-tiles__],[class*=\" mlv-tiles__\"],[class^=mlv-tiles--],[class*=\" mlv-tiles--\"]{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:var(--mlv-duration-instant)!important}}.mlv-tiles{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-tiles *{box-sizing:border-box}.mlv-tiles{container-type:inline-size;position:relative;min-inline-size:0;inline-size:100%;border:var(--mlv-stroke-width) dashed transparent;border-radius:var(--mlv-radius-l)}.mlv-tiles--layout-list{display:flex;flex-direction:column;gap:max(var(--mlv-spacing-1),var(--mlv-spacing-3) - var(--mlv-tiles-depth, 0) * var(--mlv-spacing-0-5))}.mlv-tiles--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--mlv-tiles-min-column, 20rem)),1fr));align-items:start;gap:var(--mlv-spacing-3)}.mlv-tiles--valid{border-color:var(--mlv-border-focus)}.mlv-tiles--invalid{border-color:var(--mlv-border-error)}.mlv-tiles--locked.mlv-tiles--valid,.mlv-tiles--locked.mlv-tiles--invalid{border-color:transparent}.mlv-tiles__restriction{position:absolute;inset-block-start:0;inset-inline-start:0;visibility:hidden;pointer-events:none;color:var(--mlv-text-error);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-tiles__restriction--visible{visibility:visible}.mlv-tiles__empty{display:grid;grid-column:1/-1;place-items:center;min-block-size:max(var(--mlv-height-l),var(--mlv-spacing-16) - var(--mlv-tiles-depth, 0) * var(--mlv-spacing-4));padding:var(--mlv-padding-m);color:var(--mlv-text-secondary);font-size:var(--mlv-typography-body-s-size);text-align:center}.mlv-tiles__empty--projected{padding:0;color:inherit;font-size:inherit;text-align:inherit}.mlv-tiles__item-root{min-inline-size:0}.mlv-tiles__sortable-ghost{opacity:.5;transition:opacity var(--mlv-duration-fast) var(--mlv-ease-default)}.mlv-tiles__sortable-fallback{z-index:var(--mlv-z-overlay);pointer-events:none;opacity:.9;box-shadow:var(--mlv-shadow-overlay);transition:opacity var(--mlv-duration-fast) var(--mlv-ease-default),box-shadow var(--mlv-duration-normal) var(--mlv-ease-in-out-strong)}.mlv-tiles__sortable-fallback.mlv-tiles__item-root>.mlv-tile,.mlv-tiles__sortable-fallback.mlv-tiles__item-root.mlv-tile{background-color:var(--mlv-elevation-bg-2);border-color:var(--mlv-border-strong);box-shadow:var(--mlv-shadow-overlay);cursor:grabbing}.mlv-tiles--nested{padding-inline-start:var(--mlv-spacing-4);border-inline-start:var(--mlv-stroke-width) solid var(--mlv-border-subtle)}.mlv-tiles--nested>.mlv-tiles__item-root>.mlv-tile,.mlv-tiles--nested>.mlv-tiles__item-root.mlv-tile{background-color:transparent;border-color:transparent;border-radius:0;box-shadow:none}.mlv-tiles--nested>.mlv-tiles__item-root.mlv-tiles__sortable-chosen>.mlv-tile,.mlv-tiles--nested>.mlv-tiles__item-root.mlv-tile.mlv-tiles__sortable-chosen{box-shadow:var(--mlv-shadow-overlay)}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1065
+ }
1066
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTiles, decorators: [{
1067
+ type: Component,
1068
+ args: [{ selector: 'mlv-tiles', imports: [NgTemplateOutlet], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
1069
+ {
1070
+ provide: MLV_TILE_LOCKED,
1071
+ useFactory: (tiles) => tiles.lockedState,
1072
+ deps: [forwardRef(() => MlvTiles)],
1073
+ },
1074
+ ], host: {
1075
+ class: 'mlv-tiles',
1076
+ '[class.mlv-tiles--layout-list]': 'layout() === "list"',
1077
+ '[class.mlv-tiles--grid]': 'layout() === "grid"',
1078
+ '[class.mlv-tiles--valid]': 'dropState() === "valid"',
1079
+ '[class.mlv-tiles--invalid]': 'dropState() === "invalid"',
1080
+ '[class.mlv-tiles--sorting]': 'dropState() !== "idle"',
1081
+ '[class.mlv-tiles--locked]': 'lockedState()',
1082
+ '[class.mlv-tiles--nested]': 'depth > 0',
1083
+ '[style.--mlv-tiles-depth]': 'depth',
1084
+ '[attr.data-mlv-tiles-id]': 'targetId()',
1085
+ }, template: "<ng-content />\n@if (_isRoot) {\n<span class=\"cdk-visually-hidden\" [id]=\"keyboardInstructionsId()\"\n >{{ _i18n().keyboardInstructions }}</span\n>\n<span\n class=\"cdk-visually-hidden mlv-tiles__keyboard-status\"\n role=\"status\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >{{ _keyboardAnnouncement() }}</span\n>\n}\n<span\n class=\"mlv-tiles__restriction\"\n [class.mlv-tiles__restriction--visible]=\"dropState() === 'invalid'\"\n [attr.aria-hidden]=\"dropState() === 'invalid' ? null : 'true'\"\n >{{ _i18n().restrictedTarget }}</span\n>\n@if (isEmpty() && !lockedState()) {\n<div\n class=\"mlv-tiles__empty\"\n [class.mlv-tiles__empty--projected]=\"emptyRef() !== undefined\"\n>\n @if (emptyRef(); as emptyTpl) {\n <ng-container [ngTemplateOutlet]=\"emptyTpl.templateRef\" />\n } @else { {{ emptyLabel() ?? _i18n().emptyTarget }} }\n</div>\n}\n", styles: ["@layer mlv.components{@media(prefers-reduced-motion:reduce){.mlv-tiles,.mlv-tiles *,.mlv-tiles:before,.mlv-tiles:after,[class^=mlv-tiles__],[class*=\" mlv-tiles__\"],[class^=mlv-tiles--],[class*=\" mlv-tiles--\"]{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:var(--mlv-duration-instant)!important}}.mlv-tiles{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-tiles *{box-sizing:border-box}.mlv-tiles{container-type:inline-size;position:relative;min-inline-size:0;inline-size:100%;border:var(--mlv-stroke-width) dashed transparent;border-radius:var(--mlv-radius-l)}.mlv-tiles--layout-list{display:flex;flex-direction:column;gap:max(var(--mlv-spacing-1),var(--mlv-spacing-3) - var(--mlv-tiles-depth, 0) * var(--mlv-spacing-0-5))}.mlv-tiles--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--mlv-tiles-min-column, 20rem)),1fr));align-items:start;gap:var(--mlv-spacing-3)}.mlv-tiles--valid{border-color:var(--mlv-border-focus)}.mlv-tiles--invalid{border-color:var(--mlv-border-error)}.mlv-tiles--locked.mlv-tiles--valid,.mlv-tiles--locked.mlv-tiles--invalid{border-color:transparent}.mlv-tiles__restriction{position:absolute;inset-block-start:0;inset-inline-start:0;visibility:hidden;pointer-events:none;color:var(--mlv-text-error);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-tiles__restriction--visible{visibility:visible}.mlv-tiles__empty{display:grid;grid-column:1/-1;place-items:center;min-block-size:max(var(--mlv-height-l),var(--mlv-spacing-16) - var(--mlv-tiles-depth, 0) * var(--mlv-spacing-4));padding:var(--mlv-padding-m);color:var(--mlv-text-secondary);font-size:var(--mlv-typography-body-s-size);text-align:center}.mlv-tiles__empty--projected{padding:0;color:inherit;font-size:inherit;text-align:inherit}.mlv-tiles__item-root{min-inline-size:0}.mlv-tiles__sortable-ghost{opacity:.5;transition:opacity var(--mlv-duration-fast) var(--mlv-ease-default)}.mlv-tiles__sortable-fallback{z-index:var(--mlv-z-overlay);pointer-events:none;opacity:.9;box-shadow:var(--mlv-shadow-overlay);transition:opacity var(--mlv-duration-fast) var(--mlv-ease-default),box-shadow var(--mlv-duration-normal) var(--mlv-ease-in-out-strong)}.mlv-tiles__sortable-fallback.mlv-tiles__item-root>.mlv-tile,.mlv-tiles__sortable-fallback.mlv-tiles__item-root.mlv-tile{background-color:var(--mlv-elevation-bg-2);border-color:var(--mlv-border-strong);box-shadow:var(--mlv-shadow-overlay);cursor:grabbing}.mlv-tiles--nested{padding-inline-start:var(--mlv-spacing-4);border-inline-start:var(--mlv-stroke-width) solid var(--mlv-border-subtle)}.mlv-tiles--nested>.mlv-tiles__item-root>.mlv-tile,.mlv-tiles--nested>.mlv-tiles__item-root.mlv-tile{background-color:transparent;border-color:transparent;border-radius:0;box-shadow:none}.mlv-tiles--nested>.mlv-tiles__item-root.mlv-tiles__sortable-chosen>.mlv-tile,.mlv-tiles--nested>.mlv-tiles__item-root.mlv-tile.mlv-tiles__sortable-chosen{box-shadow:var(--mlv-shadow-overlay)}}\n"] }]
1086
+ }], propDecorators: { tree: [{ type: i0.Input, args: [{ isSignal: true, alias: "tree", required: false }] }, { type: i0.Output, args: ["treeChange"] }], layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], accepts: [{ type: i0.Input, args: [{ isSignal: true, alias: "accepts", required: false }] }], locked: [{ type: i0.Input, args: [{ isSignal: true, alias: "locked", required: false }] }], emptyLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptyLabel", required: false }] }], moved: [{ type: i0.Output, args: ["moved"] }], emptyRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => MlvTilesEmpty), { isSignal: true }] }] } });
1087
+
1088
+ const MLV_TILE_ITEM_ROOT_CLASS = 'mlv-tiles__item-root';
1089
+ class MlvTile {
1090
+ /** @protected The component's i18n strings signal. */
1091
+ _i18n = inject(MLV_TILE_I18N);
1092
+ /** @private Resolves parameterized accessible names. */
1093
+ _i18nResolver = inject(MlvI18nResolverService);
1094
+ _rtlService = inject(MlvRtlService);
1095
+ /** Human-readable tile name used by the drag handle and move announcements. */
1096
+ ariaLabel = input(undefined, /* @ts-ignore */
1097
+ ...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
1098
+ /** Colors the tile outline with an optional semantic tone. */
1099
+ tone = input('default', /* @ts-ignore */
1100
+ ...(ngDevMode ? [{ debugName: "tone" }] : /* istanbul ignore next */ []));
1101
+ /** Typed immutable tree item represented by this tile when nested in `mlv-tiles`. */
1102
+ tile = input(/* @ts-ignore */
1103
+ ...(ngDevMode ? [undefined, { debugName: "tile" }] : /* istanbul ignore next */ []));
1104
+ /** Adds the standard close action to the tile header. */
1105
+ closable = input(false, { ...(ngDevMode ? { debugName: "closable" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
1106
+ /** Adds the built-in drag handle to the tile header. */
1107
+ draggable = input(false, { ...(ngDevMode ? { debugName: "draggable" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
1108
+ /** Disables the built-in drag handle without dimming the tile content. */
1109
+ dragDisabled = input(false, { ...(ngDevMode ? { debugName: "dragDisabled" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
1110
+ /**
1111
+ * Freezes this tile: withdraws the drag handle and the standard close action,
1112
+ * makes `remove()` a no-op, and locks any nested `mlv-tiles`. Inherited from
1113
+ * an enclosing locked container; an explicit `false` does not unlock a locked
1114
+ * ancestor. `setProps` and `updateProps` keep working — `locked` is
1115
+ * structural, not data-read-only.
1116
+ */
1117
+ locked = input(false, { ...(ngDevMode ? { debugName: "locked" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
1118
+ /**
1119
+ * De-emphasises the projected body while leaving the header controls at full
1120
+ * contrast. Presentational only: it does not cascade to nested tiles and adds
1121
+ * no ARIA state, because the tile region stays fully interactive.
1122
+ */
1123
+ inactive = input(false, { ...(ngDevMode ? { debugName: "inactive" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
1124
+ /** Emits when the user activates the tile's close action. */
1125
+ closed = output();
1126
+ /** @protected Header slot template projected via `[mlvTileHeader]`. */
1127
+ headerRef = contentChild(MlvTileHeader, /* @ts-ignore */
1128
+ ...(ngDevMode ? [{ debugName: "headerRef" }] : /* istanbul ignore next */ []));
1129
+ /** @protected Consumer-owned actions projected via `[mlvTileActions]`. */
1130
+ actionsRef = contentChild(MlvTileActions, /* @ts-ignore */
1131
+ ...(ngDevMode ? [{ debugName: "actionsRef" }] : /* istanbul ignore next */ []));
1132
+ /** @protected Consumer-owned trailing actions projected via `[mlvTileTrailingActions]`. */
1133
+ trailingActionsRef = contentChild(MlvTileTrailingActions, /* @ts-ignore */
1134
+ ...(ngDevMode ? [{ debugName: "trailingActionsRef" }] : /* istanbul ignore next */ []));
1135
+ /** @private Closest enclosing lock, published by a container or outer tile. */
1136
+ _inheritedLocked = inject(MLV_TILE_LOCKED, {
1137
+ optional: true,
1138
+ skipSelf: true,
1139
+ });
1140
+ /**
1141
+ * @internal Resolved lock for this tile, inherited state included. Published
1142
+ * through `MLV_TILE_LOCKED` so nested containers and tiles inherit it.
1143
+ */
1144
+ lockedState = computed(() => this._inheritedLocked?.() === true || this.locked(), /* @ts-ignore */
1145
+ ...(ngDevMode ? [{ debugName: "lockedState" }] : /* istanbul ignore next */ []));
1146
+ /** @protected Whether this tile renders the standard close action. */
1147
+ _hasCloseAction = computed(() => this.closable() && !this.lockedState(), /* @ts-ignore */
1148
+ ...(ngDevMode ? [{ debugName: "_hasCloseAction" }] : /* istanbul ignore next */ []));
1149
+ /** @protected Whether this tile renders its built-in drag handle. */
1150
+ _hasDragHandle = computed(() => !this.lockedState() && (this.draggable() || this.tile() !== undefined), /* @ts-ignore */
1151
+ ...(ngDevMode ? [{ debugName: "_hasDragHandle" }] : /* istanbul ignore next */ []));
1152
+ /** @protected Only registered compound handles expose keyboard operations. */
1153
+ _hasInteractiveDragHandle = computed(() => this.tile() !== undefined && this._container !== null, /* @ts-ignore */
1154
+ ...(ngDevMode ? [{ debugName: "_hasInteractiveDragHandle" }] : /* istanbul ignore next */ []));
1155
+ /** @private Consumer name or localized generic fallback for assistive text. */
1156
+ _accessibleLabel = computed(() => this.ariaLabel()?.trim() || this._i18n().tileLabel, /* @ts-ignore */
1157
+ ...(ngDevMode ? [{ debugName: "_accessibleLabel" }] : /* istanbul ignore next */ []));
1158
+ /** @protected Localized accessible drag handle label. */
1159
+ _dragHandleLabel = computed(() => this._i18nResolver.resolve(this._i18n(), 'moveTile', { label: this._accessibleLabel() }), /* @ts-ignore */
1160
+ ...(ngDevMode ? [{ debugName: "_dragHandleLabel" }] : /* istanbul ignore next */ []));
1161
+ /** @protected Root-owned keyboard instructions associated with tree handles. */
1162
+ _keyboardInstructionsId = computed(() => this._tileId() === undefined
1163
+ ? null
1164
+ : (this._container?.keyboardInstructionsId() ?? null), /* @ts-ignore */
1165
+ ...(ngDevMode ? [{ debugName: "_keyboardInstructionsId" }] : /* istanbul ignore next */ []));
1166
+ /** @private Closest compound container, absent for standalone tiles. */
1167
+ _container = inject(MlvTiles, {
1168
+ optional: true,
1169
+ });
1170
+ /** @private Component-scoped cleanup for the marked Sortable wrapper. */
1171
+ _destroyRef = inject(DestroyRef);
1172
+ /** @private Rendered tile host used to resolve the direct list child. */
1173
+ _elementRef = inject((ElementRef));
1174
+ /** @private Renderer used to mark and clean a consumer-owned wrapper root. */
1175
+ _renderer = inject(Renderer2);
1176
+ /** @private Stable item ID so immutable prop replacement does not re-register it. */
1177
+ _tileId = computed(() => this.tile()?.id, /* @ts-ignore */
1178
+ ...(ngDevMode ? [{ debugName: "_tileId" }] : /* istanbul ignore next */ []));
1179
+ /** @private Direct list child exposed to Sortable without public markup. */
1180
+ _itemRoot = null;
1181
+ constructor() {
1182
+ effect(() => {
1183
+ const tile = this.tile();
1184
+ const disabled = this.dragDisabled() || this.lockedState();
1185
+ if (!this._container || tile === undefined) {
1186
+ this._releaseItemRoot();
1187
+ }
1188
+ else {
1189
+ this._configureItemRoot(tile.id, disabled);
1190
+ }
1191
+ });
1192
+ effect((onCleanup) => {
1193
+ const tileId = this._tileId();
1194
+ if (!this._container || tileId === undefined)
1195
+ return;
1196
+ const registration = {
1197
+ id: tileId,
1198
+ tile: () => {
1199
+ const tile = this.tile();
1200
+ if (!tile) {
1201
+ throw new Error('Registered mlv-tile requires [tile].');
1202
+ }
1203
+ return tile;
1204
+ },
1205
+ };
1206
+ onCleanup(this._container.coordinator.registerItem(registration));
1207
+ });
1208
+ this._destroyRef.onDestroy(() => this._releaseItemRoot());
1209
+ }
1210
+ /**
1211
+ * Removes this item through the root-owned immutable tree. A locked tile is
1212
+ * structurally frozen, so the call is a no-op that warns in development.
1213
+ */
1214
+ remove() {
1215
+ if (this.lockedState()) {
1216
+ this._warnDev('MlvTile.remove() is disabled while the tile is locked.');
1217
+ return;
1218
+ }
1219
+ const tileId = this._registeredTileId('remove');
1220
+ if (tileId !== undefined)
1221
+ this._container?.remove(tileId);
1222
+ }
1223
+ /**
1224
+ * Inserts a node into this tile's container node through the root-owned
1225
+ * immutable tree. Valid only on a tree-bound tile whose node accepts
1226
+ * children.
1227
+ *
1228
+ * @param tile - Node to insert. Neither it nor any node in its subtree may
1229
+ * reuse an ID that already exists in the tree.
1230
+ * @param index - Position among this node's direct children. Omitted appends;
1231
+ * a non-integer, negative, or out-of-range index is rejected rather than
1232
+ * clamped.
1233
+ * @returns `true` when the root tree was replaced, `false` on any rejection.
1234
+ * Always `false` while the tile is locked.
1235
+ */
1236
+ insertChild(tile, index) {
1237
+ if (this.lockedState()) {
1238
+ this._warnDev('MlvTile.insertChild() is disabled while the tile is locked.');
1239
+ return false;
1240
+ }
1241
+ const targetContainerId = this._registeredTileId('insertChild');
1242
+ if (targetContainerId === undefined)
1243
+ return false;
1244
+ if (this.tile()?.acceptsChildren !== true) {
1245
+ this._warnDev('MlvTile.insertChild() requires a container [tile] node.');
1246
+ return false;
1247
+ }
1248
+ return (this._container?.coordinator.insert({
1249
+ targetContainerId,
1250
+ tile,
1251
+ index,
1252
+ }) ?? false);
1253
+ }
1254
+ /** Replaces this item's props through the root-owned immutable tree. */
1255
+ setProps(props) {
1256
+ const tileId = this._registeredTileId('setProps');
1257
+ if (tileId !== undefined) {
1258
+ this._container?.updateProps(tileId, () => props);
1259
+ }
1260
+ }
1261
+ /** Updates this item's props through the root-owned immutable tree. */
1262
+ updateProps(update) {
1263
+ const tileId = this._registeredTileId('updateProps');
1264
+ if (tileId !== undefined)
1265
+ this._container?.updateProps(tileId, update);
1266
+ }
1267
+ /** @protected Delegates the documented Alt+Arrow commands to the root tree. */
1268
+ _onDragHandleKeydown(event) {
1269
+ if (!event.altKey ||
1270
+ event.ctrlKey ||
1271
+ event.metaKey ||
1272
+ event.shiftKey ||
1273
+ this.dragDisabled()) {
1274
+ return;
1275
+ }
1276
+ let direction;
1277
+ switch (this._rtlService.normalizeArrowKey(event)) {
1278
+ case UP_ARROW:
1279
+ direction = 'up';
1280
+ break;
1281
+ case DOWN_ARROW:
1282
+ direction = 'down';
1283
+ break;
1284
+ case LEFT_ARROW:
1285
+ direction = 'left';
1286
+ break;
1287
+ case RIGHT_ARROW:
1288
+ direction = 'right';
1289
+ break;
1290
+ }
1291
+ const tileId = this._tileId();
1292
+ if (!direction || tileId === undefined || !this._container)
1293
+ return;
1294
+ event.preventDefault();
1295
+ this._container.moveByKeyboard(tileId, direction, this._accessibleLabel());
1296
+ }
1297
+ /** @private Marks the direct list child Sortable owns during interaction. */
1298
+ _configureItemRoot(tileId, disabled) {
1299
+ const tileHost = this._elementRef.nativeElement;
1300
+ const root = this._container?.resolveItemRoot(tileHost) ?? tileHost;
1301
+ if (this._itemRoot !== root) {
1302
+ this._releaseItemRoot();
1303
+ this._renderer.addClass(root, MLV_TILE_ITEM_ROOT_CLASS);
1304
+ this._itemRoot = root;
1305
+ }
1306
+ this._renderer.setAttribute(root, 'data-mlv-tile-id', tileId);
1307
+ if (disabled) {
1308
+ this._renderer.setAttribute(root, 'data-mlv-tile-drag-disabled', 'true');
1309
+ }
1310
+ else {
1311
+ this._renderer.removeAttribute(root, 'data-mlv-tile-drag-disabled');
1312
+ }
1313
+ return root;
1314
+ }
1315
+ /** @private Removes the internal class from a prior direct-child wrapper. */
1316
+ _releaseItemRoot() {
1317
+ const root = this._itemRoot;
1318
+ if (!root)
1319
+ return;
1320
+ this._renderer.removeClass(root, MLV_TILE_ITEM_ROOT_CLASS);
1321
+ this._renderer.removeAttribute(root, 'data-mlv-tile-id');
1322
+ this._renderer.removeAttribute(root, 'data-mlv-tile-drag-disabled');
1323
+ this._itemRoot = null;
1324
+ }
1325
+ /** @private Returns a live registered ID or warns only for requested tree work. */
1326
+ _registeredTileId(operation) {
1327
+ const tileId = this._tileId();
1328
+ if (tileId !== undefined &&
1329
+ this._container?.coordinator.item(tileId) !== undefined) {
1330
+ return tileId;
1331
+ }
1332
+ this._warnDev(`MlvTile.${operation}() requires [tile] inside mlv-tiles.`);
1333
+ return undefined;
1334
+ }
1335
+ /** @private Single development-only channel for rejected tree operations. */
1336
+ _warnDev(message) {
1337
+ if (typeof ngDevMode === 'undefined' || ngDevMode)
1338
+ console.warn(message);
1339
+ }
1340
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTile, deps: [], target: i0.ɵɵFactoryTarget.Component });
1341
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: MlvTile, isStandalone: true, selector: "mlv-tile", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, tone: { classPropertyName: "tone", publicName: "tone", isSignal: true, isRequired: false, transformFunction: null }, tile: { classPropertyName: "tile", publicName: "tile", isSignal: true, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: true, isRequired: false, transformFunction: null }, draggable: { classPropertyName: "draggable", publicName: "draggable", isSignal: true, isRequired: false, transformFunction: null }, dragDisabled: { classPropertyName: "dragDisabled", publicName: "dragDisabled", isSignal: true, isRequired: false, transformFunction: null }, locked: { classPropertyName: "locked", publicName: "locked", isSignal: true, isRequired: false, transformFunction: null }, inactive: { classPropertyName: "inactive", publicName: "inactive", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed" }, host: { properties: { "class.mlv-tile--tone-info": "tone() === \"info\"", "class.mlv-tile--tone-success": "tone() === \"success\"", "class.mlv-tile--tone-warning": "tone() === \"warning\"", "class.mlv-tile--tone-danger": "tone() === \"danger\"", "class.mlv-tile--draggable": "_hasDragHandle()", "class.mlv-tile--drag-disabled": "dragDisabled()", "class.mlv-tile--locked": "lockedState()", "class.mlv-tile--inactive": "inactive()" }, classAttribute: "mlv-tile" }, providers: [
1342
+ { provide: MLV_DENSITY_ELEMENT, useValue: 'tile' },
1343
+ provideMlvDensityContext(MlvDensityDirective),
1344
+ {
1345
+ provide: MLV_TILE_ITEM_CONTEXT,
1346
+ useExisting: forwardRef(() => MlvTile),
1347
+ },
1348
+ {
1349
+ provide: MLV_TILE_LOCKED,
1350
+ useFactory: (tile) => tile.lockedState,
1351
+ deps: [forwardRef(() => MlvTile)],
1352
+ },
1353
+ ], queries: [{ propertyName: "headerRef", first: true, predicate: MlvTileHeader, descendants: true, isSignal: true }, { propertyName: "actionsRef", first: true, predicate: MlvTileActions, descendants: true, isSignal: true }, { propertyName: "trailingActionsRef", first: true, predicate: MlvTileTrailingActions, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.MlvDensityDirective, inputs: ["mlvDensity", "mlvDensity"] }], ngImport: i0, template: "@if (headerRef() || actionsRef() || trailingActionsRef() || _hasCloseAction() ||\n_hasDragHandle()) {\n<div class=\"mlv-tile__header\">\n @if (_hasDragHandle()) { @if (_hasInteractiveDragHandle()) {\n <button\n class=\"mlv-tile__drag-handle\"\n type=\"button\"\n mlvDensity=\"compact\"\n [disabled]=\"dragDisabled()\"\n [attr.aria-disabled]=\"dragDisabled() ? 'true' : null\"\n [attr.aria-label]=\"_dragHandleLabel()\"\n [attr.aria-describedby]=\"_keyboardInstructionsId()\"\n aria-keyshortcuts=\"Alt+ArrowUp Alt+ArrowDown Alt+ArrowLeft Alt+ArrowRight\"\n (keydown)=\"_onDragHandleKeydown($event)\"\n >\n <svg lucideGripVertical size=\"20\" />\n </button>\n } @else {\n <span class=\"mlv-tile__drag-handle\" aria-hidden=\"true\">\n <svg lucideGripVertical size=\"16\" />\n </span>\n } } @if (headerRef(); as headerTpl) {\n <div class=\"mlv-tile__title\">\n <ng-container [ngTemplateOutlet]=\"headerTpl.templateRef\" />\n </div>\n } @if (actionsRef() || trailingActionsRef() || _hasCloseAction()) {\n <div\n class=\"mlv-tile__controls\"\n [class.mlv-tile__controls--crowded]=\"actionsRef() || trailingActionsRef()\"\n >\n @if (actionsRef(); as actionsTpl) {\n <div class=\"mlv-tile__actions\">\n <ng-container [ngTemplateOutlet]=\"actionsTpl.templateRef\" />\n </div>\n } @if (trailingActionsRef(); as trailingActionsTpl) {\n <div class=\"mlv-tile__trailing-actions\">\n <ng-container [ngTemplateOutlet]=\"trailingActionsTpl.templateRef\" />\n </div>\n } @if (_hasCloseAction()) {\n <mlv-button-close\n class=\"mlv-tile__close\"\n mlvDensity=\"compact\"\n [ariaLabel]=\"_i18n().close\"\n (click)=\"closed.emit()\"\n />\n }\n </div>\n }\n</div>\n}\n\n<div class=\"mlv-tile__body\">\n <ng-content />\n</div>\n", styles: ["@layer mlv.components{@media(prefers-reduced-motion:reduce){.mlv-tile,.mlv-tile *,.mlv-tile:before,.mlv-tile:after,[class^=mlv-tile__],[class*=\" mlv-tile__\"],[class^=mlv-tile--],[class*=\" mlv-tile--\"]{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:var(--mlv-duration-instant)!important}}@keyframes tile-leave-fade{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px) scale(.98)}}.mlv-tile{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-tile *{box-sizing:border-box}.mlv-tile{--mlv-tile-padding: var(--mlv-padding-m);--mlv-tile-radius: var(--mlv-radius-card);--mlv-tile-gap: var(--mlv-spacing-2);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-m);--mlv-tile-handle-icon-size: calc( max(var(--mlv-tile-control-size), var(--mlv-height-m)) * var(--mlv-icon-in-container-ratio) );--mlv-tile-title-size: var(--mlv-typography-ui-m-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-m-line-height);--mlv-tile-body-size: var(--mlv-typography-body-m-size);--mlv-tile-body-line-height: var(--mlv-typography-body-m-line-height);container-name:mlv-tile;container-type:inline-size;position:relative;display:flex;flex-direction:column;background-color:var(--mlv-elevation-bg-2);color:var(--mlv-text-primary);box-shadow:var(--mlv-shadow-flat);border:var(--mlv-stroke-width) solid var(--mlv-border-normal);padding:var(--mlv-tile-padding);border-radius:var(--mlv-tile-radius);gap:var(--mlv-tile-gap);overflow:hidden;transition-property:background-color,border-color,box-shadow;transition-duration:var(--mlv-duration-fast);transition-timing-function:var(--mlv-ease-default)}[class*=--tight] .mlv-tile:not([class*=--compact],[class*=--comfortable],[class*=--spacious],[class*=--airy]),.mlv-tile[class*=--tight]{--mlv-tile-padding: var(--mlv-padding-xs);--mlv-tile-gap: var(--mlv-spacing-1);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-xs);--mlv-tile-title-size: var(--mlv-font-size-xs);--mlv-tile-title-line-height: var(--mlv-line-height-tight);--mlv-tile-body-size: var(--mlv-font-size-xs);--mlv-tile-body-line-height: var(--mlv-line-height-tight)}[class*=--compact] .mlv-tile:not([class*=--tight],[class*=--comfortable],[class*=--spacious],[class*=--airy]),.mlv-tile[class*=--compact]{--mlv-tile-padding: var(--mlv-padding-s);--mlv-tile-gap: var(--mlv-spacing-1-5);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-s);--mlv-tile-title-size: var(--mlv-typography-ui-s-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-s-line-height);--mlv-tile-body-size: var(--mlv-typography-body-s-size);--mlv-tile-body-line-height: var(--mlv-typography-body-s-line-height)}[class*=--comfortable] .mlv-tile:not([class*=--tight],[class*=--compact],[class*=--spacious],[class*=--airy]),.mlv-tile[class*=--comfortable]{--mlv-tile-padding: var(--mlv-padding-m);--mlv-tile-gap: var(--mlv-spacing-2);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-m);--mlv-tile-title-size: var(--mlv-typography-ui-m-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-m-line-height);--mlv-tile-body-size: var(--mlv-typography-body-m-size);--mlv-tile-body-line-height: var(--mlv-typography-body-m-line-height)}[class*=--spacious] .mlv-tile:not([class*=--tight],[class*=--compact],[class*=--comfortable],[class*=--airy]),.mlv-tile[class*=--spacious]{--mlv-tile-padding: var(--mlv-padding-l);--mlv-tile-gap: var(--mlv-spacing-2-5);--mlv-tile-controls-gap: var(--mlv-spacing-1-5);--mlv-tile-control-size: var(--mlv-height-l);--mlv-tile-title-size: var(--mlv-typography-ui-l-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-l-line-height);--mlv-tile-body-size: var(--mlv-typography-body-l-size);--mlv-tile-body-line-height: var(--mlv-typography-body-l-line-height)}[class*=--airy] .mlv-tile:not([class*=--tight],[class*=--compact],[class*=--comfortable],[class*=--spacious]),.mlv-tile[class*=--airy]{--mlv-tile-padding: var(--mlv-spacing-4) var(--mlv-spacing-8);--mlv-tile-gap: var(--mlv-spacing-3);--mlv-tile-controls-gap: var(--mlv-spacing-2);--mlv-tile-control-size: var(--mlv-height-xl);--mlv-tile-title-size: var(--mlv-font-size-xl);--mlv-tile-title-line-height: var(--mlv-line-height-normal);--mlv-tile-body-size: var(--mlv-font-size-l);--mlv-tile-body-line-height: var(--mlv-line-height-relaxed)}.mlv-tile--tone-info{border-color:var(--mlv-border-info)}.mlv-tile--tone-success{border-color:var(--mlv-border-success)}.mlv-tile--tone-warning{border-color:var(--mlv-border-warning)}.mlv-tile--tone-danger{border-color:var(--mlv-border-error)}.mlv-tile--locked{border-color:var(--mlv-border-subtle)}.mlv-tile--locked .mlv-tile__title{color:var(--mlv-text-secondary)}.mlv-tile--inactive>.mlv-tile__body{opacity:var(--mlv-disabled-opacity)}.mlv-tile--inactive>.mlv-tile__header>.mlv-tile__title{color:var(--mlv-text-secondary)}.mlv-tile--leaving{overflow:hidden;pointer-events:none;animation:tile-leave-fade var(--mlv-duration-normal) var(--mlv-ease-out) forwards}.mlv-tile--drag-disabled .mlv-tile__drag-handle{color:var(--mlv-text-disabled);cursor:not-allowed}.mlv-tiles__sortable-chosen>.mlv-tile,.mlv-tile.mlv-tiles__sortable-chosen{box-shadow:var(--mlv-shadow-overlay)}.mlv-tile__drag-handle{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;--mlv-tile-handle-visible-size: calc( var(--mlv-tile-handle-icon-size) + var(--mlv-spacing-1) * 2 );width:var(--mlv-tile-handle-visible-size);height:var(--mlv-tile-handle-visible-size);appearance:none;padding:0;border:0;background-color:transparent;font:inherit;opacity:1;cursor:grab;color:var(--mlv-text-secondary);touch-action:none;border-radius:var(--mlv-radius-s);transition-property:opacity,color;transition-duration:var(--mlv-duration-normal);transition-timing-function:var(--mlv-ease-out)}.mlv-tile__drag-handle:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:calc(var(--mlv-focus-ring-offset) * -1)}.mlv-tile__drag-handle:before{content:\"\";position:absolute;--mlv-tile-handle-hit-size: var(--mlv-height-m);--mlv-tile-handle-hit-expand: calc( ( var(--mlv-tile-handle-hit-size) - var( --mlv-tile-handle-visible-size ) ) / 2 );--mlv-tile-handle-hit-expand-end: min( var(--mlv-tile-handle-hit-expand), var(--mlv-tile-gap) / 2 );inset-block:calc(-1 * var(--mlv-tile-handle-hit-expand));inset-inline-end:calc(-1 * var(--mlv-tile-handle-hit-expand-end));inset-inline-start:calc(-1 * (var(--mlv-tile-handle-hit-expand) * 2 - var(--mlv-tile-handle-hit-expand-end)))}.mlv-tile__drag-handle svg{width:var(--mlv-tile-handle-icon-size);height:var(--mlv-tile-handle-icon-size)}.mlv-tiles__sortable-chosen>.mlv-tile .mlv-tile__drag-handle,.mlv-tiles__sortable-fallback>.mlv-tile .mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-chosen .mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-fallback .mlv-tile__drag-handle{opacity:1;color:var(--mlv-text-primary);cursor:grabbing}@media(hover:hover)and (pointer:fine){.mlv-tile--draggable>.mlv-tile__header>.mlv-tile__drag-handle{opacity:.5}.mlv-tile--draggable:hover:not(:has(.mlv-tile:hover))>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tile--draggable:focus-within:not(:has(.mlv-tile:focus-within))>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tiles__sortable-chosen>.mlv-tile>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tiles__sortable-fallback>.mlv-tile>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-chosen>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-fallback>.mlv-tile__header>.mlv-tile__drag-handle{opacity:1}.mlv-tile:not(.mlv-tile--drag-disabled):hover:not(:has(.mlv-tile:hover))>.mlv-tile__header>.mlv-tile__drag-handle{color:var(--mlv-text-primary)}}.mlv-tile__header{display:flex;align-items:center;justify-content:flex-start;gap:var(--mlv-tile-gap);min-height:0}.mlv-tile__title{flex:1 1 auto;min-width:0;font-size:var(--mlv-tile-title-size);line-height:var(--mlv-tile-title-line-height)}.mlv-tile__controls{display:flex;align-items:center;flex:0 0 auto;gap:var(--mlv-tile-controls-gap);margin-inline-start:auto}.mlv-tile__actions,.mlv-tile__trailing-actions{display:flex;align-items:center;gap:var(--mlv-tile-controls-gap);flex-shrink:0}.mlv-tile__close{flex-shrink:0}.mlv-tile__close .mlv-button--close{margin-inline-end:calc(var(--mlv-btn-height) * -.25)}.mlv-tile__body{flex:1 1 auto;min-height:0;font-size:var(--mlv-tile-body-size);line-height:var(--mlv-tile-body-line-height)}@container mlv-tile (max-width: 18rem){.mlv-tile__header:has(>.mlv-tile__controls--crowded){flex-wrap:wrap}.mlv-tile__controls--crowded{flex-basis:100%;width:100%;justify-content:flex-end}}.mlv-tiles.mlv-tiles--nested .mlv-tile{--mlv-tile-control-size: var(--mlv-height-xs)}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LucideGripVertical, selector: "svg[lucideGripVertical]" }, { kind: "component", type: MlvButtonClose, selector: "mlv-button-close", inputs: ["variant", "shape", "ariaLabel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1354
+ }
1355
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvTile, decorators: [{
1356
+ type: Component,
1357
+ args: [{ selector: 'mlv-tile', imports: [
1358
+ NgTemplateOutlet,
1359
+ LucideGripVertical,
1360
+ MlvButtonClose,
1361
+ MlvTileActions,
1362
+ MlvTileTrailingActions,
1363
+ MlvButtonIcon,
1364
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
1365
+ { provide: MLV_DENSITY_ELEMENT, useValue: 'tile' },
1366
+ provideMlvDensityContext(MlvDensityDirective),
1367
+ {
1368
+ provide: MLV_TILE_ITEM_CONTEXT,
1369
+ useExisting: forwardRef(() => MlvTile),
1370
+ },
1371
+ {
1372
+ provide: MLV_TILE_LOCKED,
1373
+ useFactory: (tile) => tile.lockedState,
1374
+ deps: [forwardRef(() => MlvTile)],
1375
+ },
1376
+ ], hostDirectives: [{ directive: MlvDensityDirective, inputs: ['mlvDensity'] }], host: {
1377
+ class: 'mlv-tile',
1378
+ '[class.mlv-tile--tone-info]': 'tone() === "info"',
1379
+ '[class.mlv-tile--tone-success]': 'tone() === "success"',
1380
+ '[class.mlv-tile--tone-warning]': 'tone() === "warning"',
1381
+ '[class.mlv-tile--tone-danger]': 'tone() === "danger"',
1382
+ '[class.mlv-tile--draggable]': '_hasDragHandle()',
1383
+ '[class.mlv-tile--drag-disabled]': 'dragDisabled()',
1384
+ '[class.mlv-tile--locked]': 'lockedState()',
1385
+ '[class.mlv-tile--inactive]': 'inactive()',
1386
+ }, template: "@if (headerRef() || actionsRef() || trailingActionsRef() || _hasCloseAction() ||\n_hasDragHandle()) {\n<div class=\"mlv-tile__header\">\n @if (_hasDragHandle()) { @if (_hasInteractiveDragHandle()) {\n <button\n class=\"mlv-tile__drag-handle\"\n type=\"button\"\n mlvDensity=\"compact\"\n [disabled]=\"dragDisabled()\"\n [attr.aria-disabled]=\"dragDisabled() ? 'true' : null\"\n [attr.aria-label]=\"_dragHandleLabel()\"\n [attr.aria-describedby]=\"_keyboardInstructionsId()\"\n aria-keyshortcuts=\"Alt+ArrowUp Alt+ArrowDown Alt+ArrowLeft Alt+ArrowRight\"\n (keydown)=\"_onDragHandleKeydown($event)\"\n >\n <svg lucideGripVertical size=\"20\" />\n </button>\n } @else {\n <span class=\"mlv-tile__drag-handle\" aria-hidden=\"true\">\n <svg lucideGripVertical size=\"16\" />\n </span>\n } } @if (headerRef(); as headerTpl) {\n <div class=\"mlv-tile__title\">\n <ng-container [ngTemplateOutlet]=\"headerTpl.templateRef\" />\n </div>\n } @if (actionsRef() || trailingActionsRef() || _hasCloseAction()) {\n <div\n class=\"mlv-tile__controls\"\n [class.mlv-tile__controls--crowded]=\"actionsRef() || trailingActionsRef()\"\n >\n @if (actionsRef(); as actionsTpl) {\n <div class=\"mlv-tile__actions\">\n <ng-container [ngTemplateOutlet]=\"actionsTpl.templateRef\" />\n </div>\n } @if (trailingActionsRef(); as trailingActionsTpl) {\n <div class=\"mlv-tile__trailing-actions\">\n <ng-container [ngTemplateOutlet]=\"trailingActionsTpl.templateRef\" />\n </div>\n } @if (_hasCloseAction()) {\n <mlv-button-close\n class=\"mlv-tile__close\"\n mlvDensity=\"compact\"\n [ariaLabel]=\"_i18n().close\"\n (click)=\"closed.emit()\"\n />\n }\n </div>\n }\n</div>\n}\n\n<div class=\"mlv-tile__body\">\n <ng-content />\n</div>\n", styles: ["@layer mlv.components{@media(prefers-reduced-motion:reduce){.mlv-tile,.mlv-tile *,.mlv-tile:before,.mlv-tile:after,[class^=mlv-tile__],[class*=\" mlv-tile__\"],[class^=mlv-tile--],[class*=\" mlv-tile--\"]{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:var(--mlv-duration-instant)!important}}@keyframes tile-leave-fade{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px) scale(.98)}}.mlv-tile{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-tile *{box-sizing:border-box}.mlv-tile{--mlv-tile-padding: var(--mlv-padding-m);--mlv-tile-radius: var(--mlv-radius-card);--mlv-tile-gap: var(--mlv-spacing-2);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-m);--mlv-tile-handle-icon-size: calc( max(var(--mlv-tile-control-size), var(--mlv-height-m)) * var(--mlv-icon-in-container-ratio) );--mlv-tile-title-size: var(--mlv-typography-ui-m-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-m-line-height);--mlv-tile-body-size: var(--mlv-typography-body-m-size);--mlv-tile-body-line-height: var(--mlv-typography-body-m-line-height);container-name:mlv-tile;container-type:inline-size;position:relative;display:flex;flex-direction:column;background-color:var(--mlv-elevation-bg-2);color:var(--mlv-text-primary);box-shadow:var(--mlv-shadow-flat);border:var(--mlv-stroke-width) solid var(--mlv-border-normal);padding:var(--mlv-tile-padding);border-radius:var(--mlv-tile-radius);gap:var(--mlv-tile-gap);overflow:hidden;transition-property:background-color,border-color,box-shadow;transition-duration:var(--mlv-duration-fast);transition-timing-function:var(--mlv-ease-default)}[class*=--tight] .mlv-tile:not([class*=--compact],[class*=--comfortable],[class*=--spacious],[class*=--airy]),.mlv-tile[class*=--tight]{--mlv-tile-padding: var(--mlv-padding-xs);--mlv-tile-gap: var(--mlv-spacing-1);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-xs);--mlv-tile-title-size: var(--mlv-font-size-xs);--mlv-tile-title-line-height: var(--mlv-line-height-tight);--mlv-tile-body-size: var(--mlv-font-size-xs);--mlv-tile-body-line-height: var(--mlv-line-height-tight)}[class*=--compact] .mlv-tile:not([class*=--tight],[class*=--comfortable],[class*=--spacious],[class*=--airy]),.mlv-tile[class*=--compact]{--mlv-tile-padding: var(--mlv-padding-s);--mlv-tile-gap: var(--mlv-spacing-1-5);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-s);--mlv-tile-title-size: var(--mlv-typography-ui-s-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-s-line-height);--mlv-tile-body-size: var(--mlv-typography-body-s-size);--mlv-tile-body-line-height: var(--mlv-typography-body-s-line-height)}[class*=--comfortable] .mlv-tile:not([class*=--tight],[class*=--compact],[class*=--spacious],[class*=--airy]),.mlv-tile[class*=--comfortable]{--mlv-tile-padding: var(--mlv-padding-m);--mlv-tile-gap: var(--mlv-spacing-2);--mlv-tile-controls-gap: var(--mlv-spacing-1);--mlv-tile-control-size: var(--mlv-height-m);--mlv-tile-title-size: var(--mlv-typography-ui-m-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-m-line-height);--mlv-tile-body-size: var(--mlv-typography-body-m-size);--mlv-tile-body-line-height: var(--mlv-typography-body-m-line-height)}[class*=--spacious] .mlv-tile:not([class*=--tight],[class*=--compact],[class*=--comfortable],[class*=--airy]),.mlv-tile[class*=--spacious]{--mlv-tile-padding: var(--mlv-padding-l);--mlv-tile-gap: var(--mlv-spacing-2-5);--mlv-tile-controls-gap: var(--mlv-spacing-1-5);--mlv-tile-control-size: var(--mlv-height-l);--mlv-tile-title-size: var(--mlv-typography-ui-l-size);--mlv-tile-title-line-height: var(--mlv-typography-ui-l-line-height);--mlv-tile-body-size: var(--mlv-typography-body-l-size);--mlv-tile-body-line-height: var(--mlv-typography-body-l-line-height)}[class*=--airy] .mlv-tile:not([class*=--tight],[class*=--compact],[class*=--comfortable],[class*=--spacious]),.mlv-tile[class*=--airy]{--mlv-tile-padding: var(--mlv-spacing-4) var(--mlv-spacing-8);--mlv-tile-gap: var(--mlv-spacing-3);--mlv-tile-controls-gap: var(--mlv-spacing-2);--mlv-tile-control-size: var(--mlv-height-xl);--mlv-tile-title-size: var(--mlv-font-size-xl);--mlv-tile-title-line-height: var(--mlv-line-height-normal);--mlv-tile-body-size: var(--mlv-font-size-l);--mlv-tile-body-line-height: var(--mlv-line-height-relaxed)}.mlv-tile--tone-info{border-color:var(--mlv-border-info)}.mlv-tile--tone-success{border-color:var(--mlv-border-success)}.mlv-tile--tone-warning{border-color:var(--mlv-border-warning)}.mlv-tile--tone-danger{border-color:var(--mlv-border-error)}.mlv-tile--locked{border-color:var(--mlv-border-subtle)}.mlv-tile--locked .mlv-tile__title{color:var(--mlv-text-secondary)}.mlv-tile--inactive>.mlv-tile__body{opacity:var(--mlv-disabled-opacity)}.mlv-tile--inactive>.mlv-tile__header>.mlv-tile__title{color:var(--mlv-text-secondary)}.mlv-tile--leaving{overflow:hidden;pointer-events:none;animation:tile-leave-fade var(--mlv-duration-normal) var(--mlv-ease-out) forwards}.mlv-tile--drag-disabled .mlv-tile__drag-handle{color:var(--mlv-text-disabled);cursor:not-allowed}.mlv-tiles__sortable-chosen>.mlv-tile,.mlv-tile.mlv-tiles__sortable-chosen{box-shadow:var(--mlv-shadow-overlay)}.mlv-tile__drag-handle{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;--mlv-tile-handle-visible-size: calc( var(--mlv-tile-handle-icon-size) + var(--mlv-spacing-1) * 2 );width:var(--mlv-tile-handle-visible-size);height:var(--mlv-tile-handle-visible-size);appearance:none;padding:0;border:0;background-color:transparent;font:inherit;opacity:1;cursor:grab;color:var(--mlv-text-secondary);touch-action:none;border-radius:var(--mlv-radius-s);transition-property:opacity,color;transition-duration:var(--mlv-duration-normal);transition-timing-function:var(--mlv-ease-out)}.mlv-tile__drag-handle:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:calc(var(--mlv-focus-ring-offset) * -1)}.mlv-tile__drag-handle:before{content:\"\";position:absolute;--mlv-tile-handle-hit-size: var(--mlv-height-m);--mlv-tile-handle-hit-expand: calc( ( var(--mlv-tile-handle-hit-size) - var( --mlv-tile-handle-visible-size ) ) / 2 );--mlv-tile-handle-hit-expand-end: min( var(--mlv-tile-handle-hit-expand), var(--mlv-tile-gap) / 2 );inset-block:calc(-1 * var(--mlv-tile-handle-hit-expand));inset-inline-end:calc(-1 * var(--mlv-tile-handle-hit-expand-end));inset-inline-start:calc(-1 * (var(--mlv-tile-handle-hit-expand) * 2 - var(--mlv-tile-handle-hit-expand-end)))}.mlv-tile__drag-handle svg{width:var(--mlv-tile-handle-icon-size);height:var(--mlv-tile-handle-icon-size)}.mlv-tiles__sortable-chosen>.mlv-tile .mlv-tile__drag-handle,.mlv-tiles__sortable-fallback>.mlv-tile .mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-chosen .mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-fallback .mlv-tile__drag-handle{opacity:1;color:var(--mlv-text-primary);cursor:grabbing}@media(hover:hover)and (pointer:fine){.mlv-tile--draggable>.mlv-tile__header>.mlv-tile__drag-handle{opacity:.5}.mlv-tile--draggable:hover:not(:has(.mlv-tile:hover))>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tile--draggable:focus-within:not(:has(.mlv-tile:focus-within))>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tiles__sortable-chosen>.mlv-tile>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tiles__sortable-fallback>.mlv-tile>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-chosen>.mlv-tile__header>.mlv-tile__drag-handle,.mlv-tile.mlv-tiles__sortable-fallback>.mlv-tile__header>.mlv-tile__drag-handle{opacity:1}.mlv-tile:not(.mlv-tile--drag-disabled):hover:not(:has(.mlv-tile:hover))>.mlv-tile__header>.mlv-tile__drag-handle{color:var(--mlv-text-primary)}}.mlv-tile__header{display:flex;align-items:center;justify-content:flex-start;gap:var(--mlv-tile-gap);min-height:0}.mlv-tile__title{flex:1 1 auto;min-width:0;font-size:var(--mlv-tile-title-size);line-height:var(--mlv-tile-title-line-height)}.mlv-tile__controls{display:flex;align-items:center;flex:0 0 auto;gap:var(--mlv-tile-controls-gap);margin-inline-start:auto}.mlv-tile__actions,.mlv-tile__trailing-actions{display:flex;align-items:center;gap:var(--mlv-tile-controls-gap);flex-shrink:0}.mlv-tile__close{flex-shrink:0}.mlv-tile__close .mlv-button--close{margin-inline-end:calc(var(--mlv-btn-height) * -.25)}.mlv-tile__body{flex:1 1 auto;min-height:0;font-size:var(--mlv-tile-body-size);line-height:var(--mlv-tile-body-line-height)}@container mlv-tile (max-width: 18rem){.mlv-tile__header:has(>.mlv-tile__controls--crowded){flex-wrap:wrap}.mlv-tile__controls--crowded{flex-basis:100%;width:100%;justify-content:flex-end}}.mlv-tiles.mlv-tiles--nested .mlv-tile{--mlv-tile-control-size: var(--mlv-height-xs)}}\n"] }]
1387
+ }], ctorParameters: () => [], propDecorators: { ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], tone: [{ type: i0.Input, args: [{ isSignal: true, alias: "tone", required: false }] }], tile: [{ type: i0.Input, args: [{ isSignal: true, alias: "tile", required: false }] }], closable: [{ type: i0.Input, args: [{ isSignal: true, alias: "closable", required: false }] }], draggable: [{ type: i0.Input, args: [{ isSignal: true, alias: "draggable", required: false }] }], dragDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "dragDisabled", required: false }] }], locked: [{ type: i0.Input, args: [{ isSignal: true, alias: "locked", required: false }] }], inactive: [{ type: i0.Input, args: [{ isSignal: true, alias: "inactive", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }], headerRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => MlvTileHeader), { isSignal: true }] }], actionsRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => MlvTileActions), { isSignal: true }] }], trailingActionsRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => MlvTileTrailingActions), { isSignal: true }] }] } });
1388
+
1389
+ /**
1390
+ * Narrows a tree node to its container form.
1391
+ *
1392
+ * @param node - Any node of a Tile tree.
1393
+ * @returns `true` when the node accepts children, narrowing it to `MlvTileNodeWithChildren`.
1394
+ */
1395
+ function isMlvTileContainer(node) {
1396
+ return node.acceptsChildren;
1397
+ }
1398
+
1399
+ /**
1400
+ * Generated bundle index. Do not edit.
1401
+ */
1402
+
1403
+ export { MlvTile, MlvTileActions, MlvTileHeader, MlvTileTrailingActions, MlvTiles, MlvTilesEmpty, canEnterMlvTileTarget, createMlvTileDragSession, insertMlvTileNode, isMlvTileContainer, moveMlvTileNode, removeMlvTileNode, updateMlvTileNodeProps };
1404
+ //# sourceMappingURL=malva-ui-core-tile.mjs.map