@slotted/angular 0.0.0-stage → 0.1.0-beta.1

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 (793) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +51 -2
  3. package/docs/AGENTS.snippet.md +10 -0
  4. package/docs/accordion.json +345 -0
  5. package/docs/accordion.md +207 -0
  6. package/docs/action-bar.json +421 -0
  7. package/docs/action-bar.md +364 -0
  8. package/docs/action-sheet.json +210 -0
  9. package/docs/action-sheet.md +19 -0
  10. package/docs/alert.json +407 -0
  11. package/docs/alert.md +239 -0
  12. package/docs/app-shell.examples.md +349 -0
  13. package/docs/app-shell.json +835 -0
  14. package/docs/app-shell.md +214 -0
  15. package/docs/aspect-ratio.json +159 -0
  16. package/docs/aspect-ratio.md +134 -0
  17. package/docs/attachment.json +486 -0
  18. package/docs/attachment.md +253 -0
  19. package/docs/avatar-group.json +208 -0
  20. package/docs/avatar-group.md +130 -0
  21. package/docs/avatar.json +342 -0
  22. package/docs/avatar.md +142 -0
  23. package/docs/badge.json +334 -0
  24. package/docs/badge.md +138 -0
  25. package/docs/breadcrumb.json +368 -0
  26. package/docs/breadcrumb.md +237 -0
  27. package/docs/button-group.json +158 -0
  28. package/docs/button-group.md +72 -0
  29. package/docs/button.examples.md +621 -0
  30. package/docs/button.json +977 -0
  31. package/docs/button.md +200 -0
  32. package/docs/calendar.json +592 -0
  33. package/docs/calendar.md +242 -0
  34. package/docs/card.json +283 -0
  35. package/docs/card.md +130 -0
  36. package/docs/carousel.json +560 -0
  37. package/docs/carousel.md +357 -0
  38. package/docs/cascader.json +933 -0
  39. package/docs/cascader.md +379 -0
  40. package/docs/chart.examples.md +582 -0
  41. package/docs/chart.json +1359 -0
  42. package/docs/chart.md +187 -0
  43. package/docs/checkbox-group.examples.md +612 -0
  44. package/docs/checkbox-group.json +395 -0
  45. package/docs/checkbox-group.md +106 -0
  46. package/docs/checkbox.examples.md +546 -0
  47. package/docs/checkbox.json +506 -0
  48. package/docs/checkbox.md +104 -0
  49. package/docs/code-block.json +616 -0
  50. package/docs/code-block.md +303 -0
  51. package/docs/collapsible.json +456 -0
  52. package/docs/collapsible.md +261 -0
  53. package/docs/color-picker.json +523 -0
  54. package/docs/color-picker.md +201 -0
  55. package/docs/column-manager.json +486 -0
  56. package/docs/column-manager.md +277 -0
  57. package/docs/combobox.examples.md +1732 -0
  58. package/docs/combobox.json +1250 -0
  59. package/docs/combobox.md +209 -0
  60. package/docs/command-palette.json +800 -0
  61. package/docs/command-palette.md +419 -0
  62. package/docs/container.json +156 -0
  63. package/docs/container.md +92 -0
  64. package/docs/context-menu.json +231 -0
  65. package/docs/context-menu.md +176 -0
  66. package/docs/currency-field.examples.md +321 -0
  67. package/docs/currency-field.json +649 -0
  68. package/docs/currency-field.md +128 -0
  69. package/docs/dashboard-grid.json +680 -0
  70. package/docs/dashboard-grid.md +265 -0
  71. package/docs/data-grid.examples.md +3064 -0
  72. package/docs/data-grid.json +1577 -0
  73. package/docs/data-grid.md +237 -0
  74. package/docs/data-grid.props.md +81 -0
  75. package/docs/data-list.json +685 -0
  76. package/docs/data-list.md +327 -0
  77. package/docs/date-field.json +490 -0
  78. package/docs/date-field.md +235 -0
  79. package/docs/date-picker.examples.md +1226 -0
  80. package/docs/date-picker.json +696 -0
  81. package/docs/date-picker.md +121 -0
  82. package/docs/date-range-picker.examples.md +1300 -0
  83. package/docs/date-range-picker.json +903 -0
  84. package/docs/date-range-picker.md +142 -0
  85. package/docs/datetime-field.json +665 -0
  86. package/docs/datetime-field.md +337 -0
  87. package/docs/datetime-picker.examples.md +1269 -0
  88. package/docs/datetime-picker.json +928 -0
  89. package/docs/datetime-picker.md +150 -0
  90. package/docs/datetime-range-picker.examples.md +225 -0
  91. package/docs/datetime-range-picker.json +1015 -0
  92. package/docs/datetime-range-picker.md +162 -0
  93. package/docs/description-list.json +471 -0
  94. package/docs/description-list.md +268 -0
  95. package/docs/detail-panel.json +530 -0
  96. package/docs/detail-panel.md +361 -0
  97. package/docs/dialog.examples.md +2467 -0
  98. package/docs/dialog.json +1141 -0
  99. package/docs/dialog.md +217 -0
  100. package/docs/dialog.props.md +63 -0
  101. package/docs/divider.json +148 -0
  102. package/docs/divider.md +83 -0
  103. package/docs/drawer.examples.md +1929 -0
  104. package/docs/drawer.json +753 -0
  105. package/docs/drawer.md +199 -0
  106. package/docs/entity-picker.json +946 -0
  107. package/docs/entity-picker.md +365 -0
  108. package/docs/event-calendar.examples.md +308 -0
  109. package/docs/event-calendar.json +1202 -0
  110. package/docs/event-calendar.md +201 -0
  111. package/docs/field-group.json +333 -0
  112. package/docs/field-group.md +181 -0
  113. package/docs/field.examples.md +676 -0
  114. package/docs/field.json +528 -0
  115. package/docs/field.md +127 -0
  116. package/docs/filter-bar.json +817 -0
  117. package/docs/filter-bar.md +380 -0
  118. package/docs/form.json +378 -0
  119. package/docs/form.md +235 -0
  120. package/docs/fullscreen.json +395 -0
  121. package/docs/fullscreen.md +225 -0
  122. package/docs/grid.json +176 -0
  123. package/docs/grid.md +74 -0
  124. package/docs/highlight.json +279 -0
  125. package/docs/highlight.md +210 -0
  126. package/docs/hover-card.json +254 -0
  127. package/docs/hover-card.md +213 -0
  128. package/docs/icon.json +173 -0
  129. package/docs/icon.md +101 -0
  130. package/docs/image.json +476 -0
  131. package/docs/image.md +254 -0
  132. package/docs/import-export-center.json +836 -0
  133. package/docs/import-export-center.md +345 -0
  134. package/docs/index.md +141 -0
  135. package/docs/inline-message.json +312 -0
  136. package/docs/inline-message.md +191 -0
  137. package/docs/inline.json +149 -0
  138. package/docs/inline.md +72 -0
  139. package/docs/kbd.json +350 -0
  140. package/docs/kbd.md +210 -0
  141. package/docs/link.json +264 -0
  142. package/docs/link.md +167 -0
  143. package/docs/list-item.json +463 -0
  144. package/docs/list-item.md +236 -0
  145. package/docs/list.json +321 -0
  146. package/docs/list.md +185 -0
  147. package/docs/listbox.json +807 -0
  148. package/docs/listbox.md +413 -0
  149. package/docs/loading-overlay.json +440 -0
  150. package/docs/loading-overlay.md +248 -0
  151. package/docs/markdown.json +461 -0
  152. package/docs/markdown.md +266 -0
  153. package/docs/menu.examples.md +1651 -0
  154. package/docs/menu.json +922 -0
  155. package/docs/menu.md +155 -0
  156. package/docs/menubar.json +292 -0
  157. package/docs/menubar.md +173 -0
  158. package/docs/message-scroller.json +401 -0
  159. package/docs/message-scroller.md +212 -0
  160. package/docs/message.json +862 -0
  161. package/docs/message.md +473 -0
  162. package/docs/multi-select.examples.md +1922 -0
  163. package/docs/multi-select.json +1314 -0
  164. package/docs/multi-select.md +213 -0
  165. package/docs/navigation-menu.json +529 -0
  166. package/docs/navigation-menu.md +329 -0
  167. package/docs/notification-center.json +664 -0
  168. package/docs/notification-center.md +372 -0
  169. package/docs/number-field.examples.md +1078 -0
  170. package/docs/number-field.json +668 -0
  171. package/docs/number-field.md +137 -0
  172. package/docs/otp-input.json +479 -0
  173. package/docs/otp-input.md +291 -0
  174. package/docs/page-header.json +574 -0
  175. package/docs/page-header.md +338 -0
  176. package/docs/page.json +332 -0
  177. package/docs/page.md +184 -0
  178. package/docs/pagination.json +434 -0
  179. package/docs/pagination.md +238 -0
  180. package/docs/popover.examples.md +1235 -0
  181. package/docs/popover.json +656 -0
  182. package/docs/popover.md +199 -0
  183. package/docs/progress-indicator.json +501 -0
  184. package/docs/progress-indicator.md +329 -0
  185. package/docs/prompt-composer.json +498 -0
  186. package/docs/prompt-composer.md +278 -0
  187. package/docs/prose.json +357 -0
  188. package/docs/prose.md +226 -0
  189. package/docs/radio-group.examples.md +626 -0
  190. package/docs/radio-group.json +541 -0
  191. package/docs/radio-group.md +112 -0
  192. package/docs/rating.json +1053 -0
  193. package/docs/rating.md +435 -0
  194. package/docs/result-state.json +376 -0
  195. package/docs/result-state.md +286 -0
  196. package/docs/saved-views.json +384 -0
  197. package/docs/saved-views.md +242 -0
  198. package/docs/scroll-area.json +120 -0
  199. package/docs/scroll-area.md +8 -0
  200. package/docs/section.json +344 -0
  201. package/docs/section.md +208 -0
  202. package/docs/segmented-control.json +429 -0
  203. package/docs/segmented-control.md +240 -0
  204. package/docs/select.examples.md +1214 -0
  205. package/docs/select.json +1147 -0
  206. package/docs/select.md +199 -0
  207. package/docs/side-navigation.json +632 -0
  208. package/docs/side-navigation.md +430 -0
  209. package/docs/skeleton.json +358 -0
  210. package/docs/skeleton.md +223 -0
  211. package/docs/slider.json +522 -0
  212. package/docs/slider.md +261 -0
  213. package/docs/sparkline.json +426 -0
  214. package/docs/sparkline.md +206 -0
  215. package/docs/split-button.json +361 -0
  216. package/docs/split-button.md +275 -0
  217. package/docs/splitter.json +142 -0
  218. package/docs/splitter.md +14 -0
  219. package/docs/stack.json +135 -0
  220. package/docs/stack.md +74 -0
  221. package/docs/stat-card.json +529 -0
  222. package/docs/stat-card.md +270 -0
  223. package/docs/status-indicator.json +314 -0
  224. package/docs/status-indicator.md +197 -0
  225. package/docs/stepper.json +451 -0
  226. package/docs/stepper.md +250 -0
  227. package/docs/switch.json +451 -0
  228. package/docs/switch.md +508 -0
  229. package/docs/table-of-contents.json +553 -0
  230. package/docs/table-of-contents.md +289 -0
  231. package/docs/table.examples.md +1981 -0
  232. package/docs/table.json +1059 -0
  233. package/docs/table.md +290 -0
  234. package/docs/tabs.examples.md +1370 -0
  235. package/docs/tabs.json +661 -0
  236. package/docs/tabs.md +211 -0
  237. package/docs/tag.json +813 -0
  238. package/docs/tag.md +241 -0
  239. package/docs/tags-input.json +771 -0
  240. package/docs/tags-input.md +361 -0
  241. package/docs/text-field.examples.md +821 -0
  242. package/docs/text-field.json +604 -0
  243. package/docs/text-field.md +125 -0
  244. package/docs/textarea.examples.md +612 -0
  245. package/docs/textarea.json +440 -0
  246. package/docs/textarea.md +98 -0
  247. package/docs/time-field.json +584 -0
  248. package/docs/time-field.md +291 -0
  249. package/docs/time-picker.json +679 -0
  250. package/docs/time-picker.md +315 -0
  251. package/docs/time-range-picker.examples.md +191 -0
  252. package/docs/time-range-picker.json +924 -0
  253. package/docs/time-range-picker.md +152 -0
  254. package/docs/timeline.json +839 -0
  255. package/docs/timeline.md +401 -0
  256. package/docs/toast.json +642 -0
  257. package/docs/toast.md +311 -0
  258. package/docs/toggle-group.json +417 -0
  259. package/docs/toggle-group.md +255 -0
  260. package/docs/toggle.json +326 -0
  261. package/docs/toggle.md +222 -0
  262. package/docs/toolbar.json +380 -0
  263. package/docs/toolbar.md +240 -0
  264. package/docs/tooltip.examples.md +664 -0
  265. package/docs/tooltip.json +604 -0
  266. package/docs/tooltip.md +146 -0
  267. package/docs/top-navigation.examples.md +287 -0
  268. package/docs/top-navigation.json +648 -0
  269. package/docs/top-navigation.md +138 -0
  270. package/docs/tour.json +759 -0
  271. package/docs/tour.md +337 -0
  272. package/docs/transfer.json +746 -0
  273. package/docs/transfer.md +273 -0
  274. package/docs/tree.json +918 -0
  275. package/docs/tree.md +397 -0
  276. package/docs/typography.json +317 -0
  277. package/docs/typography.md +107 -0
  278. package/docs/upload.examples.md +358 -0
  279. package/docs/upload.json +1103 -0
  280. package/docs/upload.md +166 -0
  281. package/docs/visually-hidden.json +71 -0
  282. package/docs/visually-hidden.md +42 -0
  283. package/docs/wizard.json +724 -0
  284. package/docs/wizard.md +295 -0
  285. package/fesm2022/slotted-angular-accordion.mjs +247 -0
  286. package/fesm2022/slotted-angular-accordion.mjs.map +1 -0
  287. package/fesm2022/slotted-angular-action-bar.mjs +639 -0
  288. package/fesm2022/slotted-angular-action-bar.mjs.map +1 -0
  289. package/fesm2022/slotted-angular-action-sheet.mjs +749 -0
  290. package/fesm2022/slotted-angular-action-sheet.mjs.map +1 -0
  291. package/fesm2022/slotted-angular-alert.mjs +427 -0
  292. package/fesm2022/slotted-angular-alert.mjs.map +1 -0
  293. package/fesm2022/slotted-angular-app-shell.mjs +1334 -0
  294. package/fesm2022/slotted-angular-app-shell.mjs.map +1 -0
  295. package/fesm2022/slotted-angular-aspect-ratio.mjs +63 -0
  296. package/fesm2022/slotted-angular-aspect-ratio.mjs.map +1 -0
  297. package/fesm2022/slotted-angular-attachment.mjs +595 -0
  298. package/fesm2022/slotted-angular-attachment.mjs.map +1 -0
  299. package/fesm2022/slotted-angular-avatar-group.mjs +230 -0
  300. package/fesm2022/slotted-angular-avatar-group.mjs.map +1 -0
  301. package/fesm2022/slotted-angular-avatar.mjs +330 -0
  302. package/fesm2022/slotted-angular-avatar.mjs.map +1 -0
  303. package/fesm2022/slotted-angular-badge.mjs +255 -0
  304. package/fesm2022/slotted-angular-badge.mjs.map +1 -0
  305. package/fesm2022/slotted-angular-breadcrumb.mjs +544 -0
  306. package/fesm2022/slotted-angular-breadcrumb.mjs.map +1 -0
  307. package/fesm2022/slotted-angular-button-group.mjs +146 -0
  308. package/fesm2022/slotted-angular-button-group.mjs.map +1 -0
  309. package/fesm2022/slotted-angular-button.mjs +692 -0
  310. package/fesm2022/slotted-angular-button.mjs.map +1 -0
  311. package/fesm2022/slotted-angular-calendar.mjs +916 -0
  312. package/fesm2022/slotted-angular-calendar.mjs.map +1 -0
  313. package/fesm2022/slotted-angular-card.mjs +225 -0
  314. package/fesm2022/slotted-angular-card.mjs.map +1 -0
  315. package/fesm2022/slotted-angular-carousel.mjs +840 -0
  316. package/fesm2022/slotted-angular-carousel.mjs.map +1 -0
  317. package/fesm2022/slotted-angular-cascader.mjs +1839 -0
  318. package/fesm2022/slotted-angular-cascader.mjs.map +1 -0
  319. package/fesm2022/slotted-angular-chart.mjs +974 -0
  320. package/fesm2022/slotted-angular-chart.mjs.map +1 -0
  321. package/fesm2022/slotted-angular-checkbox-group.mjs +283 -0
  322. package/fesm2022/slotted-angular-checkbox-group.mjs.map +1 -0
  323. package/fesm2022/slotted-angular-checkbox.mjs +468 -0
  324. package/fesm2022/slotted-angular-checkbox.mjs.map +1 -0
  325. package/fesm2022/slotted-angular-code-block.mjs +476 -0
  326. package/fesm2022/slotted-angular-code-block.mjs.map +1 -0
  327. package/fesm2022/slotted-angular-collapsible.mjs +479 -0
  328. package/fesm2022/slotted-angular-collapsible.mjs.map +1 -0
  329. package/fesm2022/slotted-angular-color-picker.mjs +910 -0
  330. package/fesm2022/slotted-angular-color-picker.mjs.map +1 -0
  331. package/fesm2022/slotted-angular-column-manager.mjs +1037 -0
  332. package/fesm2022/slotted-angular-column-manager.mjs.map +1 -0
  333. package/fesm2022/slotted-angular-combobox.mjs +1480 -0
  334. package/fesm2022/slotted-angular-combobox.mjs.map +1 -0
  335. package/fesm2022/slotted-angular-command-palette.mjs +1283 -0
  336. package/fesm2022/slotted-angular-command-palette.mjs.map +1 -0
  337. package/fesm2022/slotted-angular-container.mjs +105 -0
  338. package/fesm2022/slotted-angular-container.mjs.map +1 -0
  339. package/fesm2022/slotted-angular-context-menu.mjs +221 -0
  340. package/fesm2022/slotted-angular-context-menu.mjs.map +1 -0
  341. package/fesm2022/slotted-angular-currency-field.mjs +1131 -0
  342. package/fesm2022/slotted-angular-currency-field.mjs.map +1 -0
  343. package/fesm2022/slotted-angular-dashboard-grid.mjs +1928 -0
  344. package/fesm2022/slotted-angular-dashboard-grid.mjs.map +1 -0
  345. package/fesm2022/slotted-angular-data-grid.mjs +6697 -0
  346. package/fesm2022/slotted-angular-data-grid.mjs.map +1 -0
  347. package/fesm2022/slotted-angular-data-list.mjs +1418 -0
  348. package/fesm2022/slotted-angular-data-list.mjs.map +1 -0
  349. package/fesm2022/slotted-angular-date-field.mjs +772 -0
  350. package/fesm2022/slotted-angular-date-field.mjs.map +1 -0
  351. package/fesm2022/slotted-angular-date-picker.mjs +690 -0
  352. package/fesm2022/slotted-angular-date-picker.mjs.map +1 -0
  353. package/fesm2022/slotted-angular-date-range-picker.mjs +1150 -0
  354. package/fesm2022/slotted-angular-date-range-picker.mjs.map +1 -0
  355. package/fesm2022/slotted-angular-datetime-field.mjs +1058 -0
  356. package/fesm2022/slotted-angular-datetime-field.mjs.map +1 -0
  357. package/fesm2022/slotted-angular-datetime-picker.mjs +1362 -0
  358. package/fesm2022/slotted-angular-datetime-picker.mjs.map +1 -0
  359. package/fesm2022/slotted-angular-datetime-range-picker.mjs +1872 -0
  360. package/fesm2022/slotted-angular-datetime-range-picker.mjs.map +1 -0
  361. package/fesm2022/slotted-angular-description-list.mjs +545 -0
  362. package/fesm2022/slotted-angular-description-list.mjs.map +1 -0
  363. package/fesm2022/slotted-angular-detail-panel.mjs +754 -0
  364. package/fesm2022/slotted-angular-detail-panel.mjs.map +1 -0
  365. package/fesm2022/slotted-angular-dialog.mjs +980 -0
  366. package/fesm2022/slotted-angular-dialog.mjs.map +1 -0
  367. package/fesm2022/slotted-angular-divider.mjs +76 -0
  368. package/fesm2022/slotted-angular-divider.mjs.map +1 -0
  369. package/fesm2022/slotted-angular-drawer.mjs +1397 -0
  370. package/fesm2022/slotted-angular-drawer.mjs.map +1 -0
  371. package/fesm2022/slotted-angular-entity-picker.mjs +1987 -0
  372. package/fesm2022/slotted-angular-entity-picker.mjs.map +1 -0
  373. package/fesm2022/slotted-angular-event-calendar.mjs +2934 -0
  374. package/fesm2022/slotted-angular-event-calendar.mjs.map +1 -0
  375. package/fesm2022/slotted-angular-field-group.mjs +301 -0
  376. package/fesm2022/slotted-angular-field-group.mjs.map +1 -0
  377. package/fesm2022/slotted-angular-field.mjs +928 -0
  378. package/fesm2022/slotted-angular-field.mjs.map +1 -0
  379. package/fesm2022/slotted-angular-filter-bar.mjs +3107 -0
  380. package/fesm2022/slotted-angular-filter-bar.mjs.map +1 -0
  381. package/fesm2022/slotted-angular-form.mjs +592 -0
  382. package/fesm2022/slotted-angular-form.mjs.map +1 -0
  383. package/fesm2022/slotted-angular-fullscreen.mjs +314 -0
  384. package/fesm2022/slotted-angular-fullscreen.mjs.map +1 -0
  385. package/fesm2022/slotted-angular-grid.mjs +58 -0
  386. package/fesm2022/slotted-angular-grid.mjs.map +1 -0
  387. package/fesm2022/slotted-angular-highlight.mjs +123 -0
  388. package/fesm2022/slotted-angular-highlight.mjs.map +1 -0
  389. package/fesm2022/slotted-angular-hover-card.mjs +326 -0
  390. package/fesm2022/slotted-angular-hover-card.mjs.map +1 -0
  391. package/fesm2022/slotted-angular-i18n.mjs +75 -0
  392. package/fesm2022/slotted-angular-i18n.mjs.map +1 -0
  393. package/fesm2022/slotted-angular-icon.mjs +232 -0
  394. package/fesm2022/slotted-angular-icon.mjs.map +1 -0
  395. package/fesm2022/slotted-angular-image.mjs +442 -0
  396. package/fesm2022/slotted-angular-image.mjs.map +1 -0
  397. package/fesm2022/slotted-angular-import-export-center.mjs +1792 -0
  398. package/fesm2022/slotted-angular-import-export-center.mjs.map +1 -0
  399. package/fesm2022/slotted-angular-inline-message.mjs +280 -0
  400. package/fesm2022/slotted-angular-inline-message.mjs.map +1 -0
  401. package/fesm2022/slotted-angular-inline.mjs +52 -0
  402. package/fesm2022/slotted-angular-inline.mjs.map +1 -0
  403. package/fesm2022/slotted-angular-kbd.mjs +284 -0
  404. package/fesm2022/slotted-angular-kbd.mjs.map +1 -0
  405. package/fesm2022/slotted-angular-link.mjs +182 -0
  406. package/fesm2022/slotted-angular-link.mjs.map +1 -0
  407. package/fesm2022/slotted-angular-list-item.mjs +367 -0
  408. package/fesm2022/slotted-angular-list-item.mjs.map +1 -0
  409. package/fesm2022/slotted-angular-list.mjs +256 -0
  410. package/fesm2022/slotted-angular-list.mjs.map +1 -0
  411. package/fesm2022/slotted-angular-listbox.mjs +1274 -0
  412. package/fesm2022/slotted-angular-listbox.mjs.map +1 -0
  413. package/fesm2022/slotted-angular-loading-overlay.mjs +451 -0
  414. package/fesm2022/slotted-angular-loading-overlay.mjs.map +1 -0
  415. package/fesm2022/slotted-angular-markdown.mjs +914 -0
  416. package/fesm2022/slotted-angular-markdown.mjs.map +1 -0
  417. package/fesm2022/slotted-angular-menu.mjs +1211 -0
  418. package/fesm2022/slotted-angular-menu.mjs.map +1 -0
  419. package/fesm2022/slotted-angular-menubar.mjs +230 -0
  420. package/fesm2022/slotted-angular-menubar.mjs.map +1 -0
  421. package/fesm2022/slotted-angular-message-scroller.mjs +378 -0
  422. package/fesm2022/slotted-angular-message-scroller.mjs.map +1 -0
  423. package/fesm2022/slotted-angular-message.mjs +866 -0
  424. package/fesm2022/slotted-angular-message.mjs.map +1 -0
  425. package/fesm2022/slotted-angular-multi-select.mjs +1939 -0
  426. package/fesm2022/slotted-angular-multi-select.mjs.map +1 -0
  427. package/fesm2022/slotted-angular-navigation-menu.mjs +770 -0
  428. package/fesm2022/slotted-angular-navigation-menu.mjs.map +1 -0
  429. package/fesm2022/slotted-angular-notification-center.mjs +1172 -0
  430. package/fesm2022/slotted-angular-notification-center.mjs.map +1 -0
  431. package/fesm2022/slotted-angular-number-field.mjs +966 -0
  432. package/fesm2022/slotted-angular-number-field.mjs.map +1 -0
  433. package/fesm2022/slotted-angular-otp-input.mjs +629 -0
  434. package/fesm2022/slotted-angular-otp-input.mjs.map +1 -0
  435. package/fesm2022/slotted-angular-page-header.mjs +788 -0
  436. package/fesm2022/slotted-angular-page-header.mjs.map +1 -0
  437. package/fesm2022/slotted-angular-page.mjs +255 -0
  438. package/fesm2022/slotted-angular-page.mjs.map +1 -0
  439. package/fesm2022/slotted-angular-pagination.mjs +562 -0
  440. package/fesm2022/slotted-angular-pagination.mjs.map +1 -0
  441. package/fesm2022/slotted-angular-popover.mjs +799 -0
  442. package/fesm2022/slotted-angular-popover.mjs.map +1 -0
  443. package/fesm2022/slotted-angular-progress-indicator.mjs +572 -0
  444. package/fesm2022/slotted-angular-progress-indicator.mjs.map +1 -0
  445. package/fesm2022/slotted-angular-prompt-composer.mjs +596 -0
  446. package/fesm2022/slotted-angular-prompt-composer.mjs.map +1 -0
  447. package/fesm2022/slotted-angular-prose.mjs +314 -0
  448. package/fesm2022/slotted-angular-prose.mjs.map +1 -0
  449. package/fesm2022/slotted-angular-radio-group.mjs +469 -0
  450. package/fesm2022/slotted-angular-radio-group.mjs.map +1 -0
  451. package/fesm2022/slotted-angular-rating.mjs +1174 -0
  452. package/fesm2022/slotted-angular-rating.mjs.map +1 -0
  453. package/fesm2022/slotted-angular-result-state.mjs +330 -0
  454. package/fesm2022/slotted-angular-result-state.mjs.map +1 -0
  455. package/fesm2022/slotted-angular-saved-views.mjs +877 -0
  456. package/fesm2022/slotted-angular-saved-views.mjs.map +1 -0
  457. package/fesm2022/slotted-angular-scroll-area.mjs +294 -0
  458. package/fesm2022/slotted-angular-scroll-area.mjs.map +1 -0
  459. package/fesm2022/slotted-angular-section.mjs +266 -0
  460. package/fesm2022/slotted-angular-section.mjs.map +1 -0
  461. package/fesm2022/slotted-angular-segmented-control.mjs +454 -0
  462. package/fesm2022/slotted-angular-segmented-control.mjs.map +1 -0
  463. package/fesm2022/slotted-angular-select.mjs +1899 -0
  464. package/fesm2022/slotted-angular-select.mjs.map +1 -0
  465. package/fesm2022/slotted-angular-side-navigation.mjs +1042 -0
  466. package/fesm2022/slotted-angular-side-navigation.mjs.map +1 -0
  467. package/fesm2022/slotted-angular-skeleton.mjs +316 -0
  468. package/fesm2022/slotted-angular-skeleton.mjs.map +1 -0
  469. package/fesm2022/slotted-angular-slider.mjs +586 -0
  470. package/fesm2022/slotted-angular-slider.mjs.map +1 -0
  471. package/fesm2022/slotted-angular-sparkline.mjs +235 -0
  472. package/fesm2022/slotted-angular-sparkline.mjs.map +1 -0
  473. package/fesm2022/slotted-angular-split-button.mjs +331 -0
  474. package/fesm2022/slotted-angular-split-button.mjs.map +1 -0
  475. package/fesm2022/slotted-angular-splitter.mjs +516 -0
  476. package/fesm2022/slotted-angular-splitter.mjs.map +1 -0
  477. package/fesm2022/slotted-angular-stack.mjs +48 -0
  478. package/fesm2022/slotted-angular-stack.mjs.map +1 -0
  479. package/fesm2022/slotted-angular-stat-card.mjs +478 -0
  480. package/fesm2022/slotted-angular-stat-card.mjs.map +1 -0
  481. package/fesm2022/slotted-angular-status-indicator.mjs +155 -0
  482. package/fesm2022/slotted-angular-status-indicator.mjs.map +1 -0
  483. package/fesm2022/slotted-angular-stepper.mjs +536 -0
  484. package/fesm2022/slotted-angular-stepper.mjs.map +1 -0
  485. package/fesm2022/slotted-angular-switch.mjs +447 -0
  486. package/fesm2022/slotted-angular-switch.mjs.map +1 -0
  487. package/fesm2022/slotted-angular-table-of-contents.mjs +750 -0
  488. package/fesm2022/slotted-angular-table-of-contents.mjs.map +1 -0
  489. package/fesm2022/slotted-angular-table.mjs +2518 -0
  490. package/fesm2022/slotted-angular-table.mjs.map +1 -0
  491. package/fesm2022/slotted-angular-tabs.mjs +829 -0
  492. package/fesm2022/slotted-angular-tabs.mjs.map +1 -0
  493. package/fesm2022/slotted-angular-tag.mjs +595 -0
  494. package/fesm2022/slotted-angular-tag.mjs.map +1 -0
  495. package/fesm2022/slotted-angular-tags-input.mjs +1211 -0
  496. package/fesm2022/slotted-angular-tags-input.mjs.map +1 -0
  497. package/fesm2022/slotted-angular-text-field.mjs +674 -0
  498. package/fesm2022/slotted-angular-text-field.mjs.map +1 -0
  499. package/fesm2022/slotted-angular-textarea.mjs +275 -0
  500. package/fesm2022/slotted-angular-textarea.mjs.map +1 -0
  501. package/fesm2022/slotted-angular-theme.mjs +45 -0
  502. package/fesm2022/slotted-angular-theme.mjs.map +1 -0
  503. package/fesm2022/slotted-angular-time-field.mjs +895 -0
  504. package/fesm2022/slotted-angular-time-field.mjs.map +1 -0
  505. package/fesm2022/slotted-angular-time-picker.mjs +856 -0
  506. package/fesm2022/slotted-angular-time-picker.mjs.map +1 -0
  507. package/fesm2022/slotted-angular-time-range-picker.mjs +1534 -0
  508. package/fesm2022/slotted-angular-time-range-picker.mjs.map +1 -0
  509. package/fesm2022/slotted-angular-timeline.mjs +928 -0
  510. package/fesm2022/slotted-angular-timeline.mjs.map +1 -0
  511. package/fesm2022/slotted-angular-toast.mjs +917 -0
  512. package/fesm2022/slotted-angular-toast.mjs.map +1 -0
  513. package/fesm2022/slotted-angular-toggle-group.mjs +311 -0
  514. package/fesm2022/slotted-angular-toggle-group.mjs.map +1 -0
  515. package/fesm2022/slotted-angular-toggle.mjs +162 -0
  516. package/fesm2022/slotted-angular-toggle.mjs.map +1 -0
  517. package/fesm2022/slotted-angular-toolbar.mjs +536 -0
  518. package/fesm2022/slotted-angular-toolbar.mjs.map +1 -0
  519. package/fesm2022/slotted-angular-tooltip.mjs +798 -0
  520. package/fesm2022/slotted-angular-tooltip.mjs.map +1 -0
  521. package/fesm2022/slotted-angular-top-navigation.mjs +1308 -0
  522. package/fesm2022/slotted-angular-top-navigation.mjs.map +1 -0
  523. package/fesm2022/slotted-angular-tour.mjs +1330 -0
  524. package/fesm2022/slotted-angular-tour.mjs.map +1 -0
  525. package/fesm2022/slotted-angular-transfer.mjs +1406 -0
  526. package/fesm2022/slotted-angular-transfer.mjs.map +1 -0
  527. package/fesm2022/slotted-angular-tree.mjs +1448 -0
  528. package/fesm2022/slotted-angular-tree.mjs.map +1 -0
  529. package/fesm2022/slotted-angular-typography.mjs +184 -0
  530. package/fesm2022/slotted-angular-typography.mjs.map +1 -0
  531. package/fesm2022/slotted-angular-upload.mjs +1523 -0
  532. package/fesm2022/slotted-angular-upload.mjs.map +1 -0
  533. package/fesm2022/slotted-angular-visually-hidden.mjs +32 -0
  534. package/fesm2022/slotted-angular-visually-hidden.mjs.map +1 -0
  535. package/fesm2022/slotted-angular-wizard.mjs +1715 -0
  536. package/fesm2022/slotted-angular-wizard.mjs.map +1 -0
  537. package/fesm2022/slotted-angular.mjs +4 -0
  538. package/fesm2022/slotted-angular.mjs.map +1 -0
  539. package/package.json +537 -3
  540. package/types/slotted-angular-accordion.d.ts +156 -0
  541. package/types/slotted-angular-accordion.d.ts.map +1 -0
  542. package/types/slotted-angular-action-bar.d.ts +291 -0
  543. package/types/slotted-angular-action-bar.d.ts.map +1 -0
  544. package/types/slotted-angular-action-sheet.d.ts +294 -0
  545. package/types/slotted-angular-action-sheet.d.ts.map +1 -0
  546. package/types/slotted-angular-alert.d.ts +214 -0
  547. package/types/slotted-angular-alert.d.ts.map +1 -0
  548. package/types/slotted-angular-app-shell.d.ts +549 -0
  549. package/types/slotted-angular-app-shell.d.ts.map +1 -0
  550. package/types/slotted-angular-aspect-ratio.d.ts +57 -0
  551. package/types/slotted-angular-aspect-ratio.d.ts.map +1 -0
  552. package/types/slotted-angular-attachment.d.ts +294 -0
  553. package/types/slotted-angular-attachment.d.ts.map +1 -0
  554. package/types/slotted-angular-avatar-group.d.ts +119 -0
  555. package/types/slotted-angular-avatar-group.d.ts.map +1 -0
  556. package/types/slotted-angular-avatar.d.ts +202 -0
  557. package/types/slotted-angular-avatar.d.ts.map +1 -0
  558. package/types/slotted-angular-badge.d.ts +166 -0
  559. package/types/slotted-angular-badge.d.ts.map +1 -0
  560. package/types/slotted-angular-breadcrumb.d.ts +251 -0
  561. package/types/slotted-angular-breadcrumb.d.ts.map +1 -0
  562. package/types/slotted-angular-button-group.d.ts +89 -0
  563. package/types/slotted-angular-button-group.d.ts.map +1 -0
  564. package/types/slotted-angular-button.d.ts +390 -0
  565. package/types/slotted-angular-button.d.ts.map +1 -0
  566. package/types/slotted-angular-calendar.d.ts +280 -0
  567. package/types/slotted-angular-calendar.d.ts.map +1 -0
  568. package/types/slotted-angular-card.d.ts +140 -0
  569. package/types/slotted-angular-card.d.ts.map +1 -0
  570. package/types/slotted-angular-carousel.d.ts +288 -0
  571. package/types/slotted-angular-carousel.d.ts.map +1 -0
  572. package/types/slotted-angular-cascader.d.ts +351 -0
  573. package/types/slotted-angular-cascader.d.ts.map +1 -0
  574. package/types/slotted-angular-chart.d.ts +319 -0
  575. package/types/slotted-angular-chart.d.ts.map +1 -0
  576. package/types/slotted-angular-checkbox-group.d.ts +156 -0
  577. package/types/slotted-angular-checkbox-group.d.ts.map +1 -0
  578. package/types/slotted-angular-checkbox.d.ts +197 -0
  579. package/types/slotted-angular-checkbox.d.ts.map +1 -0
  580. package/types/slotted-angular-code-block.d.ts +158 -0
  581. package/types/slotted-angular-code-block.d.ts.map +1 -0
  582. package/types/slotted-angular-collapsible.d.ts +272 -0
  583. package/types/slotted-angular-collapsible.d.ts.map +1 -0
  584. package/types/slotted-angular-color-picker.d.ts +181 -0
  585. package/types/slotted-angular-color-picker.d.ts.map +1 -0
  586. package/types/slotted-angular-column-manager.d.ts +200 -0
  587. package/types/slotted-angular-column-manager.d.ts.map +1 -0
  588. package/types/slotted-angular-combobox.d.ts +449 -0
  589. package/types/slotted-angular-combobox.d.ts.map +1 -0
  590. package/types/slotted-angular-command-palette.d.ts +256 -0
  591. package/types/slotted-angular-command-palette.d.ts.map +1 -0
  592. package/types/slotted-angular-container.d.ts +84 -0
  593. package/types/slotted-angular-container.d.ts.map +1 -0
  594. package/types/slotted-angular-context-menu.d.ts +84 -0
  595. package/types/slotted-angular-context-menu.d.ts.map +1 -0
  596. package/types/slotted-angular-currency-field.d.ts +480 -0
  597. package/types/slotted-angular-currency-field.d.ts.map +1 -0
  598. package/types/slotted-angular-dashboard-grid.d.ts +341 -0
  599. package/types/slotted-angular-dashboard-grid.d.ts.map +1 -0
  600. package/types/slotted-angular-data-grid.d.ts +1077 -0
  601. package/types/slotted-angular-data-grid.d.ts.map +1 -0
  602. package/types/slotted-angular-data-list.d.ts +272 -0
  603. package/types/slotted-angular-data-list.d.ts.map +1 -0
  604. package/types/slotted-angular-date-field.d.ts +320 -0
  605. package/types/slotted-angular-date-field.d.ts.map +1 -0
  606. package/types/slotted-angular-date-picker.d.ts +224 -0
  607. package/types/slotted-angular-date-picker.d.ts.map +1 -0
  608. package/types/slotted-angular-date-range-picker.d.ts +310 -0
  609. package/types/slotted-angular-date-range-picker.d.ts.map +1 -0
  610. package/types/slotted-angular-datetime-field.d.ts +362 -0
  611. package/types/slotted-angular-datetime-field.d.ts.map +1 -0
  612. package/types/slotted-angular-datetime-picker.d.ts +370 -0
  613. package/types/slotted-angular-datetime-picker.d.ts.map +1 -0
  614. package/types/slotted-angular-datetime-range-picker.d.ts +459 -0
  615. package/types/slotted-angular-datetime-range-picker.d.ts.map +1 -0
  616. package/types/slotted-angular-description-list.d.ts +281 -0
  617. package/types/slotted-angular-description-list.d.ts.map +1 -0
  618. package/types/slotted-angular-detail-panel.d.ts +240 -0
  619. package/types/slotted-angular-detail-panel.d.ts.map +1 -0
  620. package/types/slotted-angular-dialog.d.ts +497 -0
  621. package/types/slotted-angular-dialog.d.ts.map +1 -0
  622. package/types/slotted-angular-divider.d.ts +40 -0
  623. package/types/slotted-angular-divider.d.ts.map +1 -0
  624. package/types/slotted-angular-drawer.d.ts +532 -0
  625. package/types/slotted-angular-drawer.d.ts.map +1 -0
  626. package/types/slotted-angular-entity-picker.d.ts +338 -0
  627. package/types/slotted-angular-entity-picker.d.ts.map +1 -0
  628. package/types/slotted-angular-event-calendar.d.ts +574 -0
  629. package/types/slotted-angular-event-calendar.d.ts.map +1 -0
  630. package/types/slotted-angular-field-group.d.ts +152 -0
  631. package/types/slotted-angular-field-group.d.ts.map +1 -0
  632. package/types/slotted-angular-field.d.ts +535 -0
  633. package/types/slotted-angular-field.d.ts.map +1 -0
  634. package/types/slotted-angular-filter-bar.d.ts +573 -0
  635. package/types/slotted-angular-filter-bar.d.ts.map +1 -0
  636. package/types/slotted-angular-form.d.ts +298 -0
  637. package/types/slotted-angular-form.d.ts.map +1 -0
  638. package/types/slotted-angular-fullscreen.d.ts +145 -0
  639. package/types/slotted-angular-fullscreen.d.ts.map +1 -0
  640. package/types/slotted-angular-grid.d.ts +50 -0
  641. package/types/slotted-angular-grid.d.ts.map +1 -0
  642. package/types/slotted-angular-highlight.d.ts +93 -0
  643. package/types/slotted-angular-highlight.d.ts.map +1 -0
  644. package/types/slotted-angular-hover-card.d.ts +140 -0
  645. package/types/slotted-angular-hover-card.d.ts.map +1 -0
  646. package/types/slotted-angular-i18n.d.ts +46 -0
  647. package/types/slotted-angular-i18n.d.ts.map +1 -0
  648. package/types/slotted-angular-icon.d.ts +94 -0
  649. package/types/slotted-angular-icon.d.ts.map +1 -0
  650. package/types/slotted-angular-image.d.ts +251 -0
  651. package/types/slotted-angular-image.d.ts.map +1 -0
  652. package/types/slotted-angular-import-export-center.d.ts +351 -0
  653. package/types/slotted-angular-import-export-center.d.ts.map +1 -0
  654. package/types/slotted-angular-inline-message.d.ts +195 -0
  655. package/types/slotted-angular-inline-message.d.ts.map +1 -0
  656. package/types/slotted-angular-inline.d.ts +41 -0
  657. package/types/slotted-angular-inline.d.ts.map +1 -0
  658. package/types/slotted-angular-kbd.d.ts +174 -0
  659. package/types/slotted-angular-kbd.d.ts.map +1 -0
  660. package/types/slotted-angular-link.d.ts +94 -0
  661. package/types/slotted-angular-link.d.ts.map +1 -0
  662. package/types/slotted-angular-list-item.d.ts +210 -0
  663. package/types/slotted-angular-list-item.d.ts.map +1 -0
  664. package/types/slotted-angular-list.d.ts +176 -0
  665. package/types/slotted-angular-list.d.ts.map +1 -0
  666. package/types/slotted-angular-listbox.d.ts +470 -0
  667. package/types/slotted-angular-listbox.d.ts.map +1 -0
  668. package/types/slotted-angular-loading-overlay.d.ts +219 -0
  669. package/types/slotted-angular-loading-overlay.d.ts.map +1 -0
  670. package/types/slotted-angular-markdown.d.ts +172 -0
  671. package/types/slotted-angular-markdown.d.ts.map +1 -0
  672. package/types/slotted-angular-menu.d.ts +448 -0
  673. package/types/slotted-angular-menu.d.ts.map +1 -0
  674. package/types/slotted-angular-menubar.d.ts +90 -0
  675. package/types/slotted-angular-menubar.d.ts.map +1 -0
  676. package/types/slotted-angular-message-scroller.d.ts +151 -0
  677. package/types/slotted-angular-message-scroller.d.ts.map +1 -0
  678. package/types/slotted-angular-message.d.ts +348 -0
  679. package/types/slotted-angular-message.d.ts.map +1 -0
  680. package/types/slotted-angular-multi-select.d.ts +462 -0
  681. package/types/slotted-angular-multi-select.d.ts.map +1 -0
  682. package/types/slotted-angular-navigation-menu.d.ts +309 -0
  683. package/types/slotted-angular-navigation-menu.d.ts.map +1 -0
  684. package/types/slotted-angular-notification-center.d.ts +318 -0
  685. package/types/slotted-angular-notification-center.d.ts.map +1 -0
  686. package/types/slotted-angular-number-field.d.ts +402 -0
  687. package/types/slotted-angular-number-field.d.ts.map +1 -0
  688. package/types/slotted-angular-otp-input.d.ts +286 -0
  689. package/types/slotted-angular-otp-input.d.ts.map +1 -0
  690. package/types/slotted-angular-page-header.d.ts +334 -0
  691. package/types/slotted-angular-page-header.d.ts.map +1 -0
  692. package/types/slotted-angular-page.d.ts +141 -0
  693. package/types/slotted-angular-page.d.ts.map +1 -0
  694. package/types/slotted-angular-pagination.d.ts +213 -0
  695. package/types/slotted-angular-pagination.d.ts.map +1 -0
  696. package/types/slotted-angular-popover.d.ts +366 -0
  697. package/types/slotted-angular-popover.d.ts.map +1 -0
  698. package/types/slotted-angular-progress-indicator.d.ts +312 -0
  699. package/types/slotted-angular-progress-indicator.d.ts.map +1 -0
  700. package/types/slotted-angular-prompt-composer.d.ts +242 -0
  701. package/types/slotted-angular-prompt-composer.d.ts.map +1 -0
  702. package/types/slotted-angular-prose.d.ts +171 -0
  703. package/types/slotted-angular-prose.d.ts.map +1 -0
  704. package/types/slotted-angular-radio-group.d.ts +268 -0
  705. package/types/slotted-angular-radio-group.d.ts.map +1 -0
  706. package/types/slotted-angular-rating.d.ts +374 -0
  707. package/types/slotted-angular-rating.d.ts.map +1 -0
  708. package/types/slotted-angular-result-state.d.ts +217 -0
  709. package/types/slotted-angular-result-state.d.ts.map +1 -0
  710. package/types/slotted-angular-saved-views.d.ts +198 -0
  711. package/types/slotted-angular-saved-views.d.ts.map +1 -0
  712. package/types/slotted-angular-scroll-area.d.ts +186 -0
  713. package/types/slotted-angular-scroll-area.d.ts.map +1 -0
  714. package/types/slotted-angular-section.d.ts +143 -0
  715. package/types/slotted-angular-section.d.ts.map +1 -0
  716. package/types/slotted-angular-segmented-control.d.ts +251 -0
  717. package/types/slotted-angular-segmented-control.d.ts.map +1 -0
  718. package/types/slotted-angular-select.d.ts +507 -0
  719. package/types/slotted-angular-select.d.ts.map +1 -0
  720. package/types/slotted-angular-side-navigation.d.ts +373 -0
  721. package/types/slotted-angular-side-navigation.d.ts.map +1 -0
  722. package/types/slotted-angular-skeleton.d.ts +198 -0
  723. package/types/slotted-angular-skeleton.d.ts.map +1 -0
  724. package/types/slotted-angular-slider.d.ts +216 -0
  725. package/types/slotted-angular-slider.d.ts.map +1 -0
  726. package/types/slotted-angular-sparkline.d.ts +106 -0
  727. package/types/slotted-angular-sparkline.d.ts.map +1 -0
  728. package/types/slotted-angular-split-button.d.ts +180 -0
  729. package/types/slotted-angular-split-button.d.ts.map +1 -0
  730. package/types/slotted-angular-splitter.d.ts +206 -0
  731. package/types/slotted-angular-splitter.d.ts.map +1 -0
  732. package/types/slotted-angular-stack.d.ts +38 -0
  733. package/types/slotted-angular-stack.d.ts.map +1 -0
  734. package/types/slotted-angular-stat-card.d.ts +232 -0
  735. package/types/slotted-angular-stat-card.d.ts.map +1 -0
  736. package/types/slotted-angular-status-indicator.d.ts +106 -0
  737. package/types/slotted-angular-status-indicator.d.ts.map +1 -0
  738. package/types/slotted-angular-stepper.d.ts +198 -0
  739. package/types/slotted-angular-stepper.d.ts.map +1 -0
  740. package/types/slotted-angular-switch.d.ts +243 -0
  741. package/types/slotted-angular-switch.d.ts.map +1 -0
  742. package/types/slotted-angular-table-of-contents.d.ts +210 -0
  743. package/types/slotted-angular-table-of-contents.d.ts.map +1 -0
  744. package/types/slotted-angular-table.d.ts +888 -0
  745. package/types/slotted-angular-table.d.ts.map +1 -0
  746. package/types/slotted-angular-tabs.d.ts +340 -0
  747. package/types/slotted-angular-tabs.d.ts.map +1 -0
  748. package/types/slotted-angular-tag.d.ts +279 -0
  749. package/types/slotted-angular-tag.d.ts.map +1 -0
  750. package/types/slotted-angular-tags-input.d.ts +302 -0
  751. package/types/slotted-angular-tags-input.d.ts.map +1 -0
  752. package/types/slotted-angular-text-field.d.ts +334 -0
  753. package/types/slotted-angular-text-field.d.ts.map +1 -0
  754. package/types/slotted-angular-textarea.d.ts +150 -0
  755. package/types/slotted-angular-textarea.d.ts.map +1 -0
  756. package/types/slotted-angular-theme.d.ts +26 -0
  757. package/types/slotted-angular-theme.d.ts.map +1 -0
  758. package/types/slotted-angular-time-field.d.ts +300 -0
  759. package/types/slotted-angular-time-field.d.ts.map +1 -0
  760. package/types/slotted-angular-time-picker.d.ts +260 -0
  761. package/types/slotted-angular-time-picker.d.ts.map +1 -0
  762. package/types/slotted-angular-time-range-picker.d.ts +401 -0
  763. package/types/slotted-angular-time-range-picker.d.ts.map +1 -0
  764. package/types/slotted-angular-timeline.d.ts +329 -0
  765. package/types/slotted-angular-timeline.d.ts.map +1 -0
  766. package/types/slotted-angular-toast.d.ts +340 -0
  767. package/types/slotted-angular-toast.d.ts.map +1 -0
  768. package/types/slotted-angular-toggle-group.d.ts +167 -0
  769. package/types/slotted-angular-toggle-group.d.ts.map +1 -0
  770. package/types/slotted-angular-toggle.d.ts +106 -0
  771. package/types/slotted-angular-toggle.d.ts.map +1 -0
  772. package/types/slotted-angular-toolbar.d.ts +252 -0
  773. package/types/slotted-angular-toolbar.d.ts.map +1 -0
  774. package/types/slotted-angular-tooltip.d.ts +388 -0
  775. package/types/slotted-angular-tooltip.d.ts.map +1 -0
  776. package/types/slotted-angular-top-navigation.d.ts +442 -0
  777. package/types/slotted-angular-top-navigation.d.ts.map +1 -0
  778. package/types/slotted-angular-tour.d.ts +440 -0
  779. package/types/slotted-angular-tour.d.ts.map +1 -0
  780. package/types/slotted-angular-transfer.d.ts +296 -0
  781. package/types/slotted-angular-transfer.d.ts.map +1 -0
  782. package/types/slotted-angular-tree.d.ts +499 -0
  783. package/types/slotted-angular-tree.d.ts.map +1 -0
  784. package/types/slotted-angular-typography.d.ts +89 -0
  785. package/types/slotted-angular-typography.d.ts.map +1 -0
  786. package/types/slotted-angular-upload.d.ts +365 -0
  787. package/types/slotted-angular-upload.d.ts.map +1 -0
  788. package/types/slotted-angular-visually-hidden.d.ts +19 -0
  789. package/types/slotted-angular-visually-hidden.d.ts.map +1 -0
  790. package/types/slotted-angular-wizard.d.ts +441 -0
  791. package/types/slotted-angular-wizard.d.ts.map +1 -0
  792. package/types/slotted-angular.d.ts +3 -0
  793. package/types/slotted-angular.d.ts.map +1 -0
@@ -0,0 +1,516 @@
1
+ import { extentFromLength, measureLength, extentBounds, holdResizeGesture, extentAtPoint, nearestSnap, anchorsAtStart, stepExtent, stepAmountFromPixels, EXTENT_LARGE_STEP_PX, EXTENT_STEP_PX } from '@slotted/core/extent';
2
+ import { createControllable } from '@slotted/core/state';
3
+ import * as i0 from '@angular/core';
4
+ import { InjectionToken, inject, Injectable, model, input, booleanAttribute, output, ElementRef, DestroyRef, HostAttributeToken, signal, computed, afterNextRender, effect, untracked, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
5
+
6
+ const FALLBACK = {
7
+ collapsedValue: 0,
8
+ max: 1,
9
+ min: 0,
10
+ orientation: 'vertical',
11
+ };
12
+ const SPLITTER_DEFAULTS = new InjectionToken('slotted splitter defaults', {
13
+ providedIn: 'root',
14
+ factory: () => FALLBACK,
15
+ });
16
+ /**
17
+ * An application decides once how far its bars may travel, rather than
18
+ * repeating the same floor on every one in a product. A workspace whose
19
+ * navigation never goes below two hundred pixels says so here and nowhere else.
20
+ *
21
+ * None of the seven surveyed implementations has an equivalent: each takes its
22
+ * limits per instance, so a product changing its floor changes every call site.
23
+ */
24
+ function provideSplitterDefaults(defaults) {
25
+ return {
26
+ provide: SPLITTER_DEFAULTS,
27
+ useFactory: () => ({ ...FALLBACK, ...defaults }),
28
+ };
29
+ }
30
+ /** What a splitter is here, before it states anything of its own. */
31
+ function injectSplitterDefaults() {
32
+ return inject(SPLITTER_DEFAULTS);
33
+ }
34
+ /**
35
+ * Application-scoped rather than module-scoped, for the reason `field` records:
36
+ * a module-level counter produces colliding sequences when two applications
37
+ * render in one server process, and the server and the client sequences must
38
+ * match for hydration.
39
+ */
40
+ class SlSplitterIdFactory {
41
+ count = 0;
42
+ next() {
43
+ this.count += 1;
44
+ return `slotted-splitter-${this.count}`;
45
+ }
46
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSplitterIdFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
47
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSplitterIdFactory, providedIn: 'root' });
48
+ }
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSplitterIdFactory, decorators: [{
50
+ type: Injectable,
51
+ args: [{ providedIn: 'root' }]
52
+ }] });
53
+
54
+ const NO_SNAP_POINTS = [];
55
+ /**
56
+ * A focusable separator between two regions the consumer owns.
57
+ *
58
+ * It holds the position, the limits, the stops, the keyboard and the whole ARIA
59
+ * contract of the WAI-ARIA Window Splitter pattern. It holds no layout: the
60
+ * fraction is written as `--slotted-splitter-value` on the element `for` names,
61
+ * and a rule in the consumer's own stylesheet turns it into a measure. A
62
+ * separator that sized the boxes beside it would be deciding a layout it was
63
+ * only handed a position in.
64
+ *
65
+ * A directive on the consumer's own element rather than a component with a tag
66
+ * of its own, because the bar sits inside a layout the consumer wrote and the
67
+ * element it should be is theirs to choose.
68
+ */
69
+ class SlSplitter {
70
+ /** The fraction of the container taken by the region before the bar. */
71
+ value = model(0.5, /* @ts-ignore */
72
+ ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
73
+ /** Whether the region before the bar is collapsed. */
74
+ collapsed = model(false, /* @ts-ignore */
75
+ ...(ngDevMode ? [{ debugName: "collapsed" }] : /* istanbul ignore next */ []));
76
+ /**
77
+ * Where a double click and `reset()` return the bar, inside the limits. Not
78
+ * the value the bar was opened at: a layout restored from storage is where
79
+ * the reader left it, never where a reset should go.
80
+ */
81
+ defaultValue = input(0.5, /* @ts-ignore */
82
+ ...(ngDevMode ? [{ debugName: "defaultValue" }] : /* istanbul ignore next */ []));
83
+ orientation = input(undefined, /* @ts-ignore */
84
+ ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
85
+ min = input(undefined, /* @ts-ignore */
86
+ ...(ngDevMode ? [{ debugName: "min" }] : /* istanbul ignore next */ []));
87
+ max = input(undefined, /* @ts-ignore */
88
+ ...(ngDevMode ? [{ debugName: "max" }] : /* istanbul ignore next */ []));
89
+ collapsedValue = input(undefined, /* @ts-ignore */
90
+ ...(ngDevMode ? [{ debugName: "collapsedValue" }] : /* istanbul ignore next */ []));
91
+ collapsible = input(false, { ...(ngDevMode ? { debugName: "collapsible" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
92
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
93
+ snapPoints = input(NO_SNAP_POINTS, /* @ts-ignore */
94
+ ...(ngDevMode ? [{ debugName: "snapPoints" }] : /* istanbul ignore next */ []));
95
+ /**
96
+ * The element the bar sizes. A template reference rather than a ref:
97
+ * `[for]="aside"` with `#aside` on the element.
98
+ *
99
+ * Omitted, the bar takes its own previous element sibling, which is what the
100
+ * DOM already says and what the React binding does too.
101
+ */
102
+ for = input(undefined, /* @ts-ignore */
103
+ ...(ngDevMode ? [{ debugName: "for" }] : /* istanbul ignore next */ []));
104
+ /** The cancellable requests, before anything commits. */
105
+ valueChangeRequest = output();
106
+ collapsedChangeRequest = output();
107
+ /**
108
+ * Fires once, when a drag settles. `value` moves throughout one, so a
109
+ * consumer saving a layout saves once here rather than sixty times there.
110
+ */
111
+ resizeEnd = output();
112
+ defaults = injectSplitterDefaults();
113
+ element = inject((ElementRef)).nativeElement;
114
+ ids = inject(SlSplitterIdFactory);
115
+ destroyRef = inject(DestroyRef);
116
+ /**
117
+ * What the consumer wrote on the element themselves. Read once, before the
118
+ * host bindings run, because a binding that resolves to `null` removes the
119
+ * attribute rather than leaving the consumer's value in place — the rule
120
+ * `menu` records and `toolbar` learned the hard way.
121
+ */
122
+ ownRole = inject(new HostAttributeToken('role'), { optional: true });
123
+ ownTabIndex = inject(new HostAttributeToken('tabindex'), { optional: true });
124
+ ownControls = inject(new HostAttributeToken('aria-controls'), {
125
+ optional: true,
126
+ });
127
+ dragging = signal(false, /* @ts-ignore */
128
+ ...(ngDevMode ? [{ debugName: "dragging" }] : /* istanbul ignore next */ []));
129
+ regionId = signal(undefined, /* @ts-ignore */
130
+ ...(ngDevMode ? [{ debugName: "regionId" }] : /* istanbul ignore next */ []));
131
+ /** The fraction to come back to after a collapse; the value at the moment of the collapse. */
132
+ restore = 0.5;
133
+ release = null;
134
+ resolvedOrientation = computed(() => this.orientation() ?? this.defaults.orientation, /* @ts-ignore */
135
+ ...(ngDevMode ? [{ debugName: "resolvedOrientation" }] : /* istanbul ignore next */ []));
136
+ role = computed(() => this.ownRole ?? 'separator', /* @ts-ignore */
137
+ ...(ngDevMode ? [{ debugName: "role" }] : /* istanbul ignore next */ []));
138
+ tabIndex = computed(() => this.ownTabIndex ?? '0', /* @ts-ignore */
139
+ ...(ngDevMode ? [{ debugName: "tabIndex" }] : /* istanbul ignore next */ []));
140
+ ariaOrientation = computed(() => this.resolvedOrientation() === 'vertical' ? 'vertical' : null, /* @ts-ignore */
141
+ ...(ngDevMode ? [{ debugName: "ariaOrientation" }] : /* istanbul ignore next */ []));
142
+ ariaControls = computed(() => this.ownControls ?? this.regionId() ?? null, /* @ts-ignore */
143
+ ...(ngDevMode ? [{ debugName: "ariaControls" }] : /* istanbul ignore next */ []));
144
+ ariaValueNow = computed(() => Math.round(this.value() * 100), /* @ts-ignore */
145
+ ...(ngDevMode ? [{ debugName: "ariaValueNow" }] : /* istanbul ignore next */ []));
146
+ ariaValueMin = computed(() => Math.round(this.bounds().min * 100), /* @ts-ignore */
147
+ ...(ngDevMode ? [{ debugName: "ariaValueMin" }] : /* istanbul ignore next */ []));
148
+ ariaValueMax = computed(() => Math.round(this.bounds().max * 100), /* @ts-ignore */
149
+ ...(ngDevMode ? [{ debugName: "ariaValueMax" }] : /* istanbul ignore next */ []));
150
+ /**
151
+ * A signal the geometry can invalidate. The limits depend on the container's
152
+ * measure, which no signal can see change, so the observer below bumps this
153
+ * and every computed that reads it recomputes.
154
+ */
155
+ measured = signal(0, /* @ts-ignore */
156
+ ...(ngDevMode ? [{ debugName: "measured" }] : /* istanbul ignore next */ []));
157
+ constructor() {
158
+ /**
159
+ * Guarded, because `ResizeObserver` is absent from a server render and from
160
+ * jsdom. Unguarded, every page carrying a splitter threw before it rendered a
161
+ * character — which is what the first run of `splitter.spec.ts` reported,
162
+ * eighteen failures deep, all from this one line.
163
+ *
164
+ * The container is read after the first render, not here: a bar that is the
165
+ * first node of an `@if` or `@for` block is built before the block is placed
166
+ * in the document, so its parent is still null in the constructor, and its
167
+ * limits kept the measure of whatever box they were first computed against.
168
+ * A render the server does never runs this, and has no pointer to move the
169
+ * bar with.
170
+ */
171
+ let observer = null;
172
+ afterNextRender(() => {
173
+ const container = this.container();
174
+ if (typeof ResizeObserver === 'undefined' || container === null)
175
+ return;
176
+ observer = new ResizeObserver(() => this.measured.update((count) => count + 1));
177
+ observer.observe(container);
178
+ });
179
+ this.destroyRef.onDestroy(() => {
180
+ observer?.disconnect();
181
+ this.release?.();
182
+ });
183
+ /**
184
+ * The fraction, published where CSS can read it. This is what replaces the
185
+ * layout the family does not hold: a consumer writes
186
+ * `inline-size: calc(var(--slotted-splitter-value) * 100%)` once and never
187
+ * holds the number in a component at all.
188
+ */
189
+ effect(() => {
190
+ const target = this.sized();
191
+ if (target === null)
192
+ return;
193
+ target.style.setProperty('--slotted-splitter-value', String(this.value()));
194
+ if (target.id === '')
195
+ target.id = this.ids.next();
196
+ this.regionId.set(target.id);
197
+ });
198
+ /**
199
+ * The contract's `extent.clamped`: the reported value is always the
200
+ * clamped one. Limits move under a value — a length limit when the
201
+ * container is resized, a fraction when the consumer binds another — and a
202
+ * value restored from another window's layout can lie outside them, so the
203
+ * bar brings it back inside, as a programmatic request. A collapsed region
204
+ * stands below its floor on purpose and is left there.
205
+ */
206
+ effect(() => {
207
+ const { min, max } = this.bounds();
208
+ const value = this.value();
209
+ if (this.collapsed() || this.dragging())
210
+ return;
211
+ const held = Math.min(Math.max(value, min), max);
212
+ if (held !== value)
213
+ untracked(() => this.requestValue(held, 'programmatic', undefined));
214
+ });
215
+ }
216
+ /** A fraction brought inside the limits as they resolve now. */
217
+ clamp(value) {
218
+ const { min, max } = this.bounds();
219
+ return Math.min(Math.max(value, min), max);
220
+ }
221
+ /** The box the fraction is a fraction *of*: whatever holds the bar. */
222
+ container() {
223
+ return this.element.parentElement;
224
+ }
225
+ /** The element the bar sizes, announces, and writes the fraction on. */
226
+ sized() {
227
+ const named = this.for();
228
+ if (named !== undefined)
229
+ return named;
230
+ const previous = this.element.previousElementSibling;
231
+ return previous instanceof HTMLElement ? previous : null;
232
+ }
233
+ geometry() {
234
+ const box = this.container();
235
+ const rect = box?.getBoundingClientRect();
236
+ const span = rect === undefined ? 0 : this.resolvedOrientation() === 'vertical' ? rect.width : rect.height;
237
+ const rtl = box !== null && getComputedStyle(box).direction === 'rtl';
238
+ return { box, rect, rtl, span };
239
+ }
240
+ /**
241
+ * The bar's own axis, in the vocabulary `@slotted/core/extent` speaks. The
242
+ * region the bar sizes is the one before it, so it is anchored at the
243
+ * container's first edge on that axis.
244
+ */
245
+ side() {
246
+ return this.resolvedOrientation() === 'vertical' ? 'start' : 'top';
247
+ }
248
+ /**
249
+ * A limit as a fraction. A number is already one; a string is a CSS length,
250
+ * and only the browser knows what `18rem` or `25%` come to — so it is
251
+ * measured where it will be used rather than parsed here.
252
+ */
253
+ resolve(limit, box, span, fallback) {
254
+ if (typeof limit === 'number')
255
+ return Math.min(Math.max(limit, 0), 1);
256
+ if (box === null || span <= 0)
257
+ return fallback;
258
+ return extentFromLength({ pixels: measureLength(limit, box, span), span });
259
+ }
260
+ bounds = computed(() => {
261
+ this.measured();
262
+ const { box, span } = this.geometry();
263
+ const low = this.resolve(this.min() ?? this.defaults.min, box, span, 0);
264
+ const high = this.resolve(this.max() ?? this.defaults.max, box, span, 1);
265
+ /* A max below the min is the consumer's arithmetic, not a crash: the pair
266
+ is ordered rather than trusted, so the range always exists. */
267
+ return extentBounds(this.snapPoints(), Math.min(low, high), Math.max(low, high));
268
+ }, /* @ts-ignore */
269
+ ...(ngDevMode ? [{ debugName: "bounds" }] : /* istanbul ignore next */ []));
270
+ requestValue(next, reason, source) {
271
+ if (next === this.value())
272
+ return;
273
+ const state = createControllable({
274
+ initial: this.value(),
275
+ onRequest: (raw) => {
276
+ this.valueChangeRequest.emit({
277
+ get cancelled() {
278
+ return raw.cancelled;
279
+ },
280
+ cancel: () => raw.cancel(),
281
+ previous: raw.previous,
282
+ reason,
283
+ source: raw.source,
284
+ value: raw.value,
285
+ });
286
+ },
287
+ });
288
+ /**
289
+ * The return value, and not a flag read inside `onRequest`. A flag
290
+ * assigned there is assigned *before* the consumer has been handed the
291
+ * request and had the chance to refuse it, so it always reads `false` and
292
+ * the refusal never lands — which is exactly what `splitter.spec.ts`
293
+ * reported: a cancelled move that moved anyway.
294
+ */
295
+ if (!state.request(next, reason, source))
296
+ return;
297
+ this.value.set(next);
298
+ }
299
+ requestCollapsed(next, reason, source) {
300
+ if (next === this.collapsed())
301
+ return false;
302
+ const state = createControllable({
303
+ initial: this.collapsed(),
304
+ onRequest: (raw) => {
305
+ this.collapsedChangeRequest.emit({
306
+ get cancelled() {
307
+ return raw.cancelled;
308
+ },
309
+ cancel: () => raw.cancel(),
310
+ previous: raw.previous,
311
+ reason,
312
+ source: raw.source,
313
+ value: raw.value,
314
+ });
315
+ },
316
+ });
317
+ if (!state.request(next, reason, source))
318
+ return false;
319
+ this.collapsed.set(next);
320
+ return true;
321
+ }
322
+ /**
323
+ * `Enter`, from the pattern: "If the primary pane is not collapsed, collapses
324
+ * the pane. If the pane is collapsed, restores the splitter to its previous
325
+ * position."
326
+ *
327
+ * Both halves move together: a collapse that changed the state and not the
328
+ * measure would leave the bar where it was, and a restore that changed the
329
+ * measure and not the state would leave a region that is open and says it is
330
+ * not.
331
+ */
332
+ toggle(reason, source) {
333
+ if (!this.collapsible())
334
+ return;
335
+ if (this.collapsed()) {
336
+ if (this.requestCollapsed(false, reason, source))
337
+ this.requestValue(this.restore, reason, source);
338
+ return;
339
+ }
340
+ this.restore = this.value();
341
+ if (this.requestCollapsed(true, reason, source)) {
342
+ this.requestValue(this.collapsedValue() ?? this.defaults.collapsedValue, reason, source);
343
+ }
344
+ }
345
+ /** Collapses to `collapsedValue`, carrying `programmatic`. */
346
+ collapse() {
347
+ if (!this.collapsible() || this.collapsed())
348
+ return;
349
+ this.toggle('programmatic', undefined);
350
+ }
351
+ /** Restores the fraction held before the collapse. */
352
+ expand() {
353
+ if (!this.collapsed())
354
+ return;
355
+ this.toggle('programmatic', undefined);
356
+ }
357
+ /** Returns the bar to `defaultValue`, inside the limits, which is what a double click does. */
358
+ reset() {
359
+ this.requestValue(this.clamp(this.defaultValue()), 'programmatic', undefined);
360
+ }
361
+ /** Moves focus to the bar. */
362
+ focus() {
363
+ this.element.focus();
364
+ }
365
+ onPointerDown(event) {
366
+ if (event.defaultPrevented || this.disabled() || event.button !== 0)
367
+ return;
368
+ const { rtl, span } = this.geometry();
369
+ if (span <= 0)
370
+ return;
371
+ this.element.setPointerCapture(event.pointerId);
372
+ this.dragging.set(true);
373
+ this.release = holdResizeGesture(this.element.ownerDocument, this.resolvedOrientation() === 'vertical' ? 'col-resize' : 'row-resize');
374
+ const side = this.side();
375
+ const at = (point) => {
376
+ const live = this.container()?.getBoundingClientRect();
377
+ if (live === undefined)
378
+ return undefined;
379
+ return extentAtPoint({
380
+ point: { x: point.clientX, y: point.clientY },
381
+ rect: live,
382
+ rtl,
383
+ side,
384
+ });
385
+ };
386
+ /*
387
+ * Where on the bar the hand took it, as a fraction: the bar keeps that point
388
+ * under the pointer for the whole drag. Read as an absolute position, a bar
389
+ * taken a few pixels from the edge it marks leapt those pixels on the first
390
+ * move — and a bar whose region is followed by a gap leapt the gap.
391
+ */
392
+ const grab = (at(event) ?? this.value()) - this.value();
393
+ const move = (moved) => {
394
+ const raw = at(moved);
395
+ if (raw === undefined)
396
+ return;
397
+ this.requestValue(this.clamp(raw - grab), 'pointer', moved);
398
+ };
399
+ const up = (ended) => {
400
+ this.element.removeEventListener('pointermove', move);
401
+ this.element.removeEventListener('pointerup', up);
402
+ this.element.removeEventListener('pointercancel', up);
403
+ this.release?.();
404
+ this.release = null;
405
+ this.dragging.set(false);
406
+ /* The stop nearest where the hand left it, and only then: a drag that
407
+ snapped on every move would fight the hand rather than help it. */
408
+ const stops = this.snapPoints();
409
+ const raw = at(ended);
410
+ if (stops.length > 0 && raw !== undefined) {
411
+ const snapped = this.clamp(nearestSnap(raw - grab, stops));
412
+ this.requestValue(snapped, 'pointer', ended);
413
+ this.resizeEnd.emit(snapped);
414
+ return;
415
+ }
416
+ this.resizeEnd.emit(this.value());
417
+ };
418
+ this.element.addEventListener('pointermove', move);
419
+ this.element.addEventListener('pointerup', up);
420
+ this.element.addEventListener('pointercancel', up);
421
+ }
422
+ onKeyDown(event) {
423
+ if (event.defaultPrevented || this.disabled())
424
+ return;
425
+ if (event.key === 'Enter') {
426
+ if (!this.collapsible())
427
+ return;
428
+ event.preventDefault();
429
+ this.toggle('keyboard', event);
430
+ return;
431
+ }
432
+ const { rect, rtl } = this.geometry();
433
+ if (rect === undefined)
434
+ return;
435
+ const side = this.side();
436
+ const grows = anchorsAtStart(side, rtl) ? 1 : -1;
437
+ const vertical = this.resolvedOrientation() === 'vertical';
438
+ const limits = this.bounds();
439
+ /* The cross axis is left to the page, so a document that scrolls still
440
+ scrolls while the separator holds focus. */
441
+ const direction = event.key === (vertical ? 'ArrowRight' : 'ArrowDown')
442
+ ? grows
443
+ : event.key === (vertical ? 'ArrowLeft' : 'ArrowUp')
444
+ ? -grows
445
+ : undefined;
446
+ if (direction !== undefined) {
447
+ event.preventDefault();
448
+ this.requestValue(stepExtent({
449
+ amount: stepAmountFromPixels({
450
+ pixels: event.shiftKey ? EXTENT_LARGE_STEP_PX : EXTENT_STEP_PX,
451
+ rect,
452
+ side,
453
+ }),
454
+ direction,
455
+ fraction: this.value(),
456
+ max: limits.max,
457
+ min: limits.min,
458
+ snapPoints: this.snapPoints(),
459
+ }), 'keyboard', event);
460
+ return;
461
+ }
462
+ if (event.key === 'Home') {
463
+ event.preventDefault();
464
+ this.requestValue(limits.min, 'keyboard', event);
465
+ return;
466
+ }
467
+ if (event.key === 'End') {
468
+ event.preventDefault();
469
+ this.requestValue(limits.max, 'keyboard', event);
470
+ }
471
+ }
472
+ onDoubleClick(event) {
473
+ if (event.defaultPrevented || this.disabled())
474
+ return;
475
+ this.requestValue(this.clamp(this.defaultValue()), 'pointer', event);
476
+ }
477
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSplitter, deps: [], target: i0.ɵɵFactoryTarget.Component });
478
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.7", type: SlSplitter, isStandalone: true, selector: "[slSplitter]", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, defaultValue: { classPropertyName: "defaultValue", publicName: "defaultValue", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, collapsedValue: { classPropertyName: "collapsedValue", publicName: "collapsedValue", isSignal: true, isRequired: false, transformFunction: null }, collapsible: { classPropertyName: "collapsible", publicName: "collapsible", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, snapPoints: { classPropertyName: "snapPoints", publicName: "snapPoints", isSignal: true, isRequired: false, transformFunction: null }, for: { classPropertyName: "for", publicName: "for", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", collapsed: "collapsedChange", valueChangeRequest: "valueChangeRequest", collapsedChangeRequest: "collapsedChangeRequest", resizeEnd: "resizeEnd" }, host: { attributes: { "data-ui": "splitter", "data-part": "root" }, listeners: { "pointerdown": "onPointerDown($event)", "keydown": "onKeyDown($event)", "dblclick": "onDoubleClick($event)" }, properties: { "attr.role": "role()", "attr.tabindex": "tabIndex()", "attr.data-orientation": "resolvedOrientation()", "attr.data-dragging": "dragging() ? '' : null", "attr.data-disabled": "disabled() ? '' : null", "attr.data-expanded": "collapsible() && !collapsed() ? '' : null", "attr.aria-orientation": "ariaOrientation()", "attr.aria-valuenow": "ariaValueNow()", "attr.aria-valuemin": "ariaValueMin()", "attr.aria-valuemax": "ariaValueMax()", "attr.aria-controls": "ariaControls()", "attr.aria-disabled": "disabled() ? 'true' : null" } }, exportAs: ["slSplitter"], ngImport: i0, template: `
479
+ <span data-part="line" aria-hidden="true"></span>
480
+ <span data-part="grip" aria-hidden="true"></span>
481
+ <span data-part="line" aria-hidden="true"></span>
482
+ `, isInline: true, styles: ["@layer slotted.components{[data-ui=splitter]{--_track: var(--slotted-space-6, 1rem);--_reach: var(--slotted-target-min, 24px);--_line: var(--slotted-border-width-thin, 1px);--_line-length: var(--slotted-space-12, 4rem);--_gap: min(var(--slotted-space-9, 2rem), 12%);--_dot: var(--slotted-space-2, .25rem);--_rest: var(--slotted-splitter-line-color, var(--slotted-border-strong, ButtonBorder));--_active: var(--slotted-splitter-line-active-color, var(--slotted-text-muted, ButtonText));box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;gap:var(--_gap);flex-shrink:0;background:transparent;touch-action:none;transition:gap var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=splitter]:not([data-disabled]):hover,[data-ui=splitter]:not([data-disabled]):focus-visible,[data-ui=splitter][data-dragging]{--_gap: var(--slotted-space-4, .5rem)}[data-ui=splitter][data-orientation=vertical]{flex-direction:column;inline-size:var(--_track);align-self:stretch;cursor:col-resize}[data-ui=splitter][data-orientation=horizontal]{flex-direction:row;block-size:var(--_track);justify-self:stretch;cursor:row-resize}[data-ui=splitter]:before{content:\"\";position:absolute;--_overhang: calc((var(--_reach) - var(--_track)) / -2)}[data-ui=splitter][data-orientation=vertical]:before{inset-block:0;inset-inline:var(--_overhang)}[data-ui=splitter][data-orientation=horizontal]:before{inset-inline:0;inset-block:var(--_overhang)}[data-ui=splitter]>[data-part=line]{flex:0 1 min(var(--_line-length),20%);min-block-size:0;min-inline-size:0;border-radius:var(--slotted-radius-sm, 2px);transition:flex-basis var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard)),background-color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=splitter][data-orientation=vertical]>[data-part=line]{inline-size:var(--_line)}[data-ui=splitter][data-orientation=horizontal]>[data-part=line]{block-size:var(--_line)}[data-ui=splitter][data-orientation=vertical]>[data-part=line]:first-child{background:linear-gradient(to bottom,transparent,var(--_rest))}[data-ui=splitter][data-orientation=vertical]>[data-part=line]:last-child{background:linear-gradient(to top,transparent,var(--_rest))}[data-ui=splitter][data-orientation=horizontal]>[data-part=line]:first-child{background:linear-gradient(to right,transparent,var(--_rest))}[data-ui=splitter][data-orientation=horizontal]>[data-part=line]:last-child{background:linear-gradient(to left,transparent,var(--_rest))}[data-ui=splitter]:not([data-disabled]):hover>[data-part=line],[data-ui=splitter]:not([data-disabled]):focus-visible>[data-part=line],[data-ui=splitter][data-dragging]>[data-part=line]{flex-basis:100%;background:var(--_active)}[data-ui=splitter]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-1 * var(--slotted-focus-ring-offset, 2px))}[data-ui=splitter]>[data-part=grip]{flex:none;color:var(--_rest);background-image:radial-gradient(circle at center,currentColor 40%,transparent 42%);background-size:var(--_dot) var(--_dot);background-repeat:repeat;transition:color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=splitter][data-orientation=vertical]>[data-part=grip]{inline-size:calc(2 * var(--_dot));block-size:calc(3 * var(--_dot))}[data-ui=splitter][data-orientation=horizontal]>[data-part=grip]{inline-size:calc(3 * var(--_dot));block-size:calc(2 * var(--_dot))}[data-ui=splitter]:not([data-disabled]):hover>[data-part=grip],[data-ui=splitter]:not([data-disabled]):focus-visible>[data-part=grip],[data-ui=splitter][data-dragging]>[data-part=grip]{color:var(--_active)}[data-ui=splitter][data-disabled]{cursor:default;--_rest: var(--slotted-splitter-disabled-line-color, var(--slotted-disabled-border, GrayText))}@media(forced-colors:active){[data-ui=splitter]>[data-part=line]{background:ButtonBorder;forced-color-adjust:none}[data-ui=splitter]:not([data-disabled]):hover>[data-part=line],[data-ui=splitter][data-dragging]>[data-part=line]{background:ButtonText}[data-ui=splitter]>[data-part=grip]{background-image:none;background-color:ButtonBorder}[data-ui=splitter][data-disabled]>[data-part=line],[data-ui=splitter][data-disabled]>[data-part=grip]{background:GrayText}}@media(prefers-reduced-motion:reduce){[data-ui=splitter]>[data-part=line],[data-ui=splitter]>[data-part=grip]{transition-duration:var(--slotted-duration-instant)}}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
483
+ }
484
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSplitter, decorators: [{
485
+ type: Component,
486
+ args: [{ selector: '[slSplitter]', standalone: true, exportAs: 'slSplitter', template: `
487
+ <span data-part="line" aria-hidden="true"></span>
488
+ <span data-part="grip" aria-hidden="true"></span>
489
+ <span data-part="line" aria-hidden="true"></span>
490
+ `, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
491
+ 'data-ui': 'splitter',
492
+ 'data-part': 'root',
493
+ '[attr.role]': 'role()',
494
+ '[attr.tabindex]': 'tabIndex()',
495
+ '[attr.data-orientation]': 'resolvedOrientation()',
496
+ '[attr.data-dragging]': "dragging() ? '' : null",
497
+ '[attr.data-disabled]': "disabled() ? '' : null",
498
+ '[attr.data-expanded]': "collapsible() && !collapsed() ? '' : null",
499
+ '[attr.aria-orientation]': 'ariaOrientation()',
500
+ '[attr.aria-valuenow]': 'ariaValueNow()',
501
+ '[attr.aria-valuemin]': 'ariaValueMin()',
502
+ '[attr.aria-valuemax]': 'ariaValueMax()',
503
+ '[attr.aria-controls]': 'ariaControls()',
504
+ '[attr.aria-disabled]': "disabled() ? 'true' : null",
505
+ '(pointerdown)': 'onPointerDown($event)',
506
+ '(keydown)': 'onKeyDown($event)',
507
+ '(dblclick)': 'onDoubleClick($event)',
508
+ }, styles: ["@layer slotted.components{[data-ui=splitter]{--_track: var(--slotted-space-6, 1rem);--_reach: var(--slotted-target-min, 24px);--_line: var(--slotted-border-width-thin, 1px);--_line-length: var(--slotted-space-12, 4rem);--_gap: min(var(--slotted-space-9, 2rem), 12%);--_dot: var(--slotted-space-2, .25rem);--_rest: var(--slotted-splitter-line-color, var(--slotted-border-strong, ButtonBorder));--_active: var(--slotted-splitter-line-active-color, var(--slotted-text-muted, ButtonText));box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;gap:var(--_gap);flex-shrink:0;background:transparent;touch-action:none;transition:gap var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=splitter]:not([data-disabled]):hover,[data-ui=splitter]:not([data-disabled]):focus-visible,[data-ui=splitter][data-dragging]{--_gap: var(--slotted-space-4, .5rem)}[data-ui=splitter][data-orientation=vertical]{flex-direction:column;inline-size:var(--_track);align-self:stretch;cursor:col-resize}[data-ui=splitter][data-orientation=horizontal]{flex-direction:row;block-size:var(--_track);justify-self:stretch;cursor:row-resize}[data-ui=splitter]:before{content:\"\";position:absolute;--_overhang: calc((var(--_reach) - var(--_track)) / -2)}[data-ui=splitter][data-orientation=vertical]:before{inset-block:0;inset-inline:var(--_overhang)}[data-ui=splitter][data-orientation=horizontal]:before{inset-inline:0;inset-block:var(--_overhang)}[data-ui=splitter]>[data-part=line]{flex:0 1 min(var(--_line-length),20%);min-block-size:0;min-inline-size:0;border-radius:var(--slotted-radius-sm, 2px);transition:flex-basis var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard)),background-color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=splitter][data-orientation=vertical]>[data-part=line]{inline-size:var(--_line)}[data-ui=splitter][data-orientation=horizontal]>[data-part=line]{block-size:var(--_line)}[data-ui=splitter][data-orientation=vertical]>[data-part=line]:first-child{background:linear-gradient(to bottom,transparent,var(--_rest))}[data-ui=splitter][data-orientation=vertical]>[data-part=line]:last-child{background:linear-gradient(to top,transparent,var(--_rest))}[data-ui=splitter][data-orientation=horizontal]>[data-part=line]:first-child{background:linear-gradient(to right,transparent,var(--_rest))}[data-ui=splitter][data-orientation=horizontal]>[data-part=line]:last-child{background:linear-gradient(to left,transparent,var(--_rest))}[data-ui=splitter]:not([data-disabled]):hover>[data-part=line],[data-ui=splitter]:not([data-disabled]):focus-visible>[data-part=line],[data-ui=splitter][data-dragging]>[data-part=line]{flex-basis:100%;background:var(--_active)}[data-ui=splitter]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-1 * var(--slotted-focus-ring-offset, 2px))}[data-ui=splitter]>[data-part=grip]{flex:none;color:var(--_rest);background-image:radial-gradient(circle at center,currentColor 40%,transparent 42%);background-size:var(--_dot) var(--_dot);background-repeat:repeat;transition:color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=splitter][data-orientation=vertical]>[data-part=grip]{inline-size:calc(2 * var(--_dot));block-size:calc(3 * var(--_dot))}[data-ui=splitter][data-orientation=horizontal]>[data-part=grip]{inline-size:calc(3 * var(--_dot));block-size:calc(2 * var(--_dot))}[data-ui=splitter]:not([data-disabled]):hover>[data-part=grip],[data-ui=splitter]:not([data-disabled]):focus-visible>[data-part=grip],[data-ui=splitter][data-dragging]>[data-part=grip]{color:var(--_active)}[data-ui=splitter][data-disabled]{cursor:default;--_rest: var(--slotted-splitter-disabled-line-color, var(--slotted-disabled-border, GrayText))}@media(forced-colors:active){[data-ui=splitter]>[data-part=line]{background:ButtonBorder;forced-color-adjust:none}[data-ui=splitter]:not([data-disabled]):hover>[data-part=line],[data-ui=splitter][data-dragging]>[data-part=line]{background:ButtonText}[data-ui=splitter]>[data-part=grip]{background-image:none;background-color:ButtonBorder}[data-ui=splitter][data-disabled]>[data-part=line],[data-ui=splitter][data-disabled]>[data-part=grip]{background:GrayText}}@media(prefers-reduced-motion:reduce){[data-ui=splitter]>[data-part=line],[data-ui=splitter]>[data-part=grip]{transition-duration:var(--slotted-duration-instant)}}}\n"] }]
509
+ }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }, { type: i0.Output, args: ["collapsedChange"] }], defaultValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultValue", required: false }] }], orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], collapsedValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsedValue", required: false }] }], collapsible: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsible", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], snapPoints: [{ type: i0.Input, args: [{ isSignal: true, alias: "snapPoints", required: false }] }], for: [{ type: i0.Input, args: [{ isSignal: true, alias: "for", required: false }] }], valueChangeRequest: [{ type: i0.Output, args: ["valueChangeRequest"] }], collapsedChangeRequest: [{ type: i0.Output, args: ["collapsedChangeRequest"] }], resizeEnd: [{ type: i0.Output, args: ["resizeEnd"] }] } });
510
+
511
+ /**
512
+ * Generated bundle index. Do not edit.
513
+ */
514
+
515
+ export { SPLITTER_DEFAULTS, SlSplitter, SlSplitterIdFactory, injectSplitterDefaults, provideSplitterDefaults };
516
+ //# sourceMappingURL=slotted-angular-splitter.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slotted-angular-splitter.mjs","sources":["../../splitter/src/splitter-defaults.ts","../../splitter/src/splitter.ts","../../splitter/src/slotted-angular-splitter.ts"],"sourcesContent":["import { inject, Injectable, InjectionToken } from '@angular/core';\n\n/**\n * Which way the bar's own line runs.\n *\n * The family holds no panels, so there is nothing else for `orientation` to\n * describe and `aria-orientation` takes the same value. A family that held\n * panels would have to say which of the two the word means — the panes are side\n * by side while the separator between them is vertical — and the two readings\n * are perpendicular. Here they cannot disagree.\n */\nexport type SplitterOrientation = 'vertical' | 'horizontal';\n\n/**\n * A limit on how far the bar goes: a fraction of the container in `[0, 1]`, or\n * any CSS length resolved against the container at the moment of the clamp.\n *\n * Both, because both are real. Zag, Ark, PrimeNG and allotment are\n * percentage-only — Zag states the limitation outright — and none of them can\n * express \"this navigation panel never goes below two hundred pixels\", which is\n * the commonest constraint the family has.\n */\nexport type SplitterLimit = number | string;\n\n/** Why the bar moved. */\nexport type SplitterValueReason = 'pointer' | 'keyboard' | 'programmatic';\n\ninterface Request<Value> {\n readonly value: Value;\n readonly previous: Value;\n readonly reason: SplitterValueReason;\n readonly source?: unknown;\n readonly cancelled: boolean;\n cancel(): void;\n}\n\n/** The request the bar emits before its position moves. */\nexport type SplitterValueRequest = Request<number>;\n\n/** The request the bar emits before it collapses or comes back. */\nexport type SplitterCollapsedRequest = Request<boolean>;\n\nexport interface SplitterDefaults {\n orientation: SplitterOrientation;\n min: SplitterLimit;\n max: SplitterLimit;\n collapsedValue: number;\n}\n\nconst FALLBACK: SplitterDefaults = {\n collapsedValue: 0,\n max: 1,\n min: 0,\n orientation: 'vertical',\n};\n\nexport const SPLITTER_DEFAULTS = new InjectionToken<SplitterDefaults>('slotted splitter defaults', {\n providedIn: 'root',\n factory: () => FALLBACK,\n});\n\n/**\n * An application decides once how far its bars may travel, rather than\n * repeating the same floor on every one in a product. A workspace whose\n * navigation never goes below two hundred pixels says so here and nowhere else.\n *\n * None of the seven surveyed implementations has an equivalent: each takes its\n * limits per instance, so a product changing its floor changes every call site.\n */\nexport function provideSplitterDefaults(defaults: Partial<SplitterDefaults>) {\n return {\n provide: SPLITTER_DEFAULTS,\n useFactory: (): SplitterDefaults => ({ ...FALLBACK, ...defaults }),\n };\n}\n\n/** What a splitter is here, before it states anything of its own. */\nexport function injectSplitterDefaults(): SplitterDefaults {\n return inject(SPLITTER_DEFAULTS);\n}\n\n/**\n * Application-scoped rather than module-scoped, for the reason `field` records:\n * a module-level counter produces colliding sequences when two applications\n * render in one server process, and the server and the client sequences must\n * match for hydration.\n */\n@Injectable({ providedIn: 'root' })\nexport class SlSplitterIdFactory {\n private count = 0;\n\n next() {\n this.count += 1;\n return `slotted-splitter-${this.count}`;\n }\n}\n","import {\n anchorsAtStart,\n EXTENT_LARGE_STEP_PX,\n EXTENT_STEP_PX,\n extentAtPoint,\n extentBounds,\n extentFromLength,\n holdResizeGesture,\n measureLength,\n nearestSnap,\n stepAmountFromPixels,\n stepExtent,\n} from '@slotted/core/extent';\nimport { createControllable } from '@slotted/core/state';\nimport {\n afterNextRender,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n effect,\n ElementRef,\n HostAttributeToken,\n inject,\n input,\n model,\n output,\n signal,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { injectSplitterDefaults, SlSplitterIdFactory } from './splitter-defaults';\nimport type {\n SplitterCollapsedRequest,\n SplitterLimit,\n SplitterOrientation,\n SplitterValueReason,\n SplitterValueRequest,\n} from './splitter-defaults';\n\nconst NO_SNAP_POINTS: readonly number[] = [];\n\n/**\n * A focusable separator between two regions the consumer owns.\n *\n * It holds the position, the limits, the stops, the keyboard and the whole ARIA\n * contract of the WAI-ARIA Window Splitter pattern. It holds no layout: the\n * fraction is written as `--slotted-splitter-value` on the element `for` names,\n * and a rule in the consumer's own stylesheet turns it into a measure. A\n * separator that sized the boxes beside it would be deciding a layout it was\n * only handed a position in.\n *\n * A directive on the consumer's own element rather than a component with a tag\n * of its own, because the bar sits inside a layout the consumer wrote and the\n * element it should be is theirs to choose.\n */\n@Component({\n selector: '[slSplitter]',\n standalone: true,\n exportAs: 'slSplitter',\n template: `\n <span data-part=\"line\" aria-hidden=\"true\"></span>\n <span data-part=\"grip\" aria-hidden=\"true\"></span>\n <span data-part=\"line\" aria-hidden=\"true\"></span>\n `,\n styleUrl: '../../../styles/src/splitter/splitter.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'data-ui': 'splitter',\n 'data-part': 'root',\n '[attr.role]': 'role()',\n '[attr.tabindex]': 'tabIndex()',\n '[attr.data-orientation]': 'resolvedOrientation()',\n '[attr.data-dragging]': \"dragging() ? '' : null\",\n '[attr.data-disabled]': \"disabled() ? '' : null\",\n '[attr.data-expanded]': \"collapsible() && !collapsed() ? '' : null\",\n '[attr.aria-orientation]': 'ariaOrientation()',\n '[attr.aria-valuenow]': 'ariaValueNow()',\n '[attr.aria-valuemin]': 'ariaValueMin()',\n '[attr.aria-valuemax]': 'ariaValueMax()',\n '[attr.aria-controls]': 'ariaControls()',\n '[attr.aria-disabled]': \"disabled() ? 'true' : null\",\n '(pointerdown)': 'onPointerDown($event)',\n '(keydown)': 'onKeyDown($event)',\n '(dblclick)': 'onDoubleClick($event)',\n },\n})\nexport class SlSplitter {\n /** The fraction of the container taken by the region before the bar. */\n readonly value = model<number>(0.5);\n /** Whether the region before the bar is collapsed. */\n readonly collapsed = model<boolean>(false);\n /**\n * Where a double click and `reset()` return the bar, inside the limits. Not\n * the value the bar was opened at: a layout restored from storage is where\n * the reader left it, never where a reset should go.\n */\n readonly defaultValue = input<number>(0.5);\n\n readonly orientation = input<SplitterOrientation | undefined>(undefined);\n readonly min = input<SplitterLimit | undefined>(undefined);\n readonly max = input<SplitterLimit | undefined>(undefined);\n readonly collapsedValue = input<number | undefined>(undefined);\n readonly collapsible = input(false, { transform: booleanAttribute });\n readonly disabled = input(false, { transform: booleanAttribute });\n readonly snapPoints = input<readonly number[]>(NO_SNAP_POINTS);\n\n /**\n * The element the bar sizes. A template reference rather than a ref:\n * `[for]=\"aside\"` with `#aside` on the element.\n *\n * Omitted, the bar takes its own previous element sibling, which is what the\n * DOM already says and what the React binding does too.\n */\n readonly for = input<HTMLElement | undefined>(undefined);\n\n /** The cancellable requests, before anything commits. */\n readonly valueChangeRequest = output<SplitterValueRequest>();\n readonly collapsedChangeRequest = output<SplitterCollapsedRequest>();\n\n /**\n * Fires once, when a drag settles. `value` moves throughout one, so a\n * consumer saving a layout saves once here rather than sixty times there.\n */\n readonly resizeEnd = output<number>();\n\n private readonly defaults = injectSplitterDefaults();\n private readonly element = inject(ElementRef<HTMLElement>).nativeElement as HTMLElement;\n private readonly ids = inject(SlSplitterIdFactory);\n private readonly destroyRef = inject(DestroyRef);\n\n /**\n * What the consumer wrote on the element themselves. Read once, before the\n * host bindings run, because a binding that resolves to `null` removes the\n * attribute rather than leaving the consumer's value in place — the rule\n * `menu` records and `toolbar` learned the hard way.\n */\n private readonly ownRole = inject(new HostAttributeToken('role'), { optional: true });\n private readonly ownTabIndex = inject(new HostAttributeToken('tabindex'), { optional: true });\n private readonly ownControls = inject(new HostAttributeToken('aria-controls'), {\n optional: true,\n });\n\n protected readonly dragging = signal(false);\n private readonly regionId = signal<string | undefined>(undefined);\n /** The fraction to come back to after a collapse; the value at the moment of the collapse. */\n private restore = 0.5;\n private release: (() => void) | null = null;\n\n protected readonly resolvedOrientation = computed(\n () => this.orientation() ?? this.defaults.orientation,\n );\n protected readonly role = computed(() => this.ownRole ?? 'separator');\n protected readonly tabIndex = computed(() => this.ownTabIndex ?? '0');\n protected readonly ariaOrientation = computed(() =>\n this.resolvedOrientation() === 'vertical' ? 'vertical' : null,\n );\n protected readonly ariaControls = computed(() => this.ownControls ?? this.regionId() ?? null);\n protected readonly ariaValueNow = computed(() => Math.round(this.value() * 100));\n protected readonly ariaValueMin = computed(() => Math.round(this.bounds().min * 100));\n protected readonly ariaValueMax = computed(() => Math.round(this.bounds().max * 100));\n\n /**\n * A signal the geometry can invalidate. The limits depend on the container's\n * measure, which no signal can see change, so the observer below bumps this\n * and every computed that reads it recomputes.\n */\n private readonly measured = signal(0);\n\n constructor() {\n /**\n * Guarded, because `ResizeObserver` is absent from a server render and from\n * jsdom. Unguarded, every page carrying a splitter threw before it rendered a\n * character — which is what the first run of `splitter.spec.ts` reported,\n * eighteen failures deep, all from this one line.\n *\n * The container is read after the first render, not here: a bar that is the\n * first node of an `@if` or `@for` block is built before the block is placed\n * in the document, so its parent is still null in the constructor, and its\n * limits kept the measure of whatever box they were first computed against.\n * A render the server does never runs this, and has no pointer to move the\n * bar with.\n */\n let observer: ResizeObserver | null = null;\n afterNextRender(() => {\n const container = this.container();\n if (typeof ResizeObserver === 'undefined' || container === null) return;\n observer = new ResizeObserver(() => this.measured.update((count) => count + 1));\n observer.observe(container);\n });\n\n this.destroyRef.onDestroy(() => {\n observer?.disconnect();\n this.release?.();\n });\n\n /**\n * The fraction, published where CSS can read it. This is what replaces the\n * layout the family does not hold: a consumer writes\n * `inline-size: calc(var(--slotted-splitter-value) * 100%)` once and never\n * holds the number in a component at all.\n */\n effect(() => {\n const target = this.sized();\n if (target === null) return;\n\n target.style.setProperty('--slotted-splitter-value', String(this.value()));\n if (target.id === '') target.id = this.ids.next();\n this.regionId.set(target.id);\n });\n\n /**\n * The contract's `extent.clamped`: the reported value is always the\n * clamped one. Limits move under a value — a length limit when the\n * container is resized, a fraction when the consumer binds another — and a\n * value restored from another window's layout can lie outside them, so the\n * bar brings it back inside, as a programmatic request. A collapsed region\n * stands below its floor on purpose and is left there.\n */\n effect(() => {\n const { min, max } = this.bounds();\n const value = this.value();\n if (this.collapsed() || this.dragging()) return;\n const held = Math.min(Math.max(value, min), max);\n if (held !== value) untracked(() => this.requestValue(held, 'programmatic', undefined));\n });\n }\n\n /** A fraction brought inside the limits as they resolve now. */\n private clamp(value: number) {\n const { min, max } = this.bounds();\n return Math.min(Math.max(value, min), max);\n }\n\n /** The box the fraction is a fraction *of*: whatever holds the bar. */\n private container(): HTMLElement | null {\n return this.element.parentElement;\n }\n\n /** The element the bar sizes, announces, and writes the fraction on. */\n private sized(): HTMLElement | null {\n const named = this.for();\n if (named !== undefined) return named;\n const previous = this.element.previousElementSibling;\n return previous instanceof HTMLElement ? previous : null;\n }\n\n private geometry() {\n const box = this.container();\n const rect = box?.getBoundingClientRect();\n const span =\n rect === undefined ? 0 : this.resolvedOrientation() === 'vertical' ? rect.width : rect.height;\n const rtl = box !== null && getComputedStyle(box).direction === 'rtl';\n return { box, rect, rtl, span };\n }\n\n /**\n * The bar's own axis, in the vocabulary `@slotted/core/extent` speaks. The\n * region the bar sizes is the one before it, so it is anchored at the\n * container's first edge on that axis.\n */\n private side() {\n return this.resolvedOrientation() === 'vertical' ? ('start' as const) : ('top' as const);\n }\n\n /**\n * A limit as a fraction. A number is already one; a string is a CSS length,\n * and only the browser knows what `18rem` or `25%` come to — so it is\n * measured where it will be used rather than parsed here.\n */\n private resolve(limit: SplitterLimit, box: HTMLElement | null, span: number, fallback: number) {\n if (typeof limit === 'number') return Math.min(Math.max(limit, 0), 1);\n if (box === null || span <= 0) return fallback;\n return extentFromLength({ pixels: measureLength(limit, box, span), span });\n }\n\n protected readonly bounds = computed(() => {\n this.measured();\n const { box, span } = this.geometry();\n const low = this.resolve(this.min() ?? this.defaults.min, box, span, 0);\n const high = this.resolve(this.max() ?? this.defaults.max, box, span, 1);\n /* A max below the min is the consumer's arithmetic, not a crash: the pair\n is ordered rather than trusted, so the range always exists. */\n return extentBounds(this.snapPoints(), Math.min(low, high), Math.max(low, high));\n });\n\n private requestValue(next: number, reason: SplitterValueReason, source: unknown) {\n if (next === this.value()) return;\n\n const state = createControllable<number>({\n initial: this.value(),\n onRequest: (raw) => {\n this.valueChangeRequest.emit({\n get cancelled() {\n return raw.cancelled;\n },\n cancel: () => raw.cancel(),\n previous: raw.previous,\n reason,\n source: raw.source,\n value: raw.value,\n });\n },\n });\n\n /**\n * The return value, and not a flag read inside `onRequest`. A flag\n * assigned there is assigned *before* the consumer has been handed the\n * request and had the chance to refuse it, so it always reads `false` and\n * the refusal never lands — which is exactly what `splitter.spec.ts`\n * reported: a cancelled move that moved anyway.\n */\n if (!state.request(next, reason, source)) return;\n this.value.set(next);\n }\n\n private requestCollapsed(next: boolean, reason: SplitterValueReason, source: unknown) {\n if (next === this.collapsed()) return false;\n\n const state = createControllable<boolean>({\n initial: this.collapsed(),\n onRequest: (raw) => {\n this.collapsedChangeRequest.emit({\n get cancelled() {\n return raw.cancelled;\n },\n cancel: () => raw.cancel(),\n previous: raw.previous,\n reason,\n source: raw.source,\n value: raw.value,\n });\n },\n });\n\n if (!state.request(next, reason, source)) return false;\n this.collapsed.set(next);\n return true;\n }\n\n /**\n * `Enter`, from the pattern: \"If the primary pane is not collapsed, collapses\n * the pane. If the pane is collapsed, restores the splitter to its previous\n * position.\"\n *\n * Both halves move together: a collapse that changed the state and not the\n * measure would leave the bar where it was, and a restore that changed the\n * measure and not the state would leave a region that is open and says it is\n * not.\n */\n private toggle(reason: SplitterValueReason, source: unknown) {\n if (!this.collapsible()) return;\n\n if (this.collapsed()) {\n if (this.requestCollapsed(false, reason, source))\n this.requestValue(this.restore, reason, source);\n return;\n }\n\n this.restore = this.value();\n if (this.requestCollapsed(true, reason, source)) {\n this.requestValue(this.collapsedValue() ?? this.defaults.collapsedValue, reason, source);\n }\n }\n\n /** Collapses to `collapsedValue`, carrying `programmatic`. */\n collapse() {\n if (!this.collapsible() || this.collapsed()) return;\n this.toggle('programmatic', undefined);\n }\n\n /** Restores the fraction held before the collapse. */\n expand() {\n if (!this.collapsed()) return;\n this.toggle('programmatic', undefined);\n }\n\n /** Returns the bar to `defaultValue`, inside the limits, which is what a double click does. */\n reset() {\n this.requestValue(this.clamp(this.defaultValue()), 'programmatic', undefined);\n }\n\n /** Moves focus to the bar. */\n focus() {\n this.element.focus();\n }\n\n protected onPointerDown(event: PointerEvent) {\n if (event.defaultPrevented || this.disabled() || event.button !== 0) return;\n\n const { rtl, span } = this.geometry();\n if (span <= 0) return;\n\n this.element.setPointerCapture(event.pointerId);\n this.dragging.set(true);\n this.release = holdResizeGesture(\n this.element.ownerDocument,\n this.resolvedOrientation() === 'vertical' ? 'col-resize' : 'row-resize',\n );\n\n const side = this.side();\n\n const at = (point: PointerEvent) => {\n const live = this.container()?.getBoundingClientRect();\n if (live === undefined) return undefined;\n return extentAtPoint({\n point: { x: point.clientX, y: point.clientY },\n rect: live,\n rtl,\n side,\n });\n };\n\n /*\n * Where on the bar the hand took it, as a fraction: the bar keeps that point\n * under the pointer for the whole drag. Read as an absolute position, a bar\n * taken a few pixels from the edge it marks leapt those pixels on the first\n * move — and a bar whose region is followed by a gap leapt the gap.\n */\n const grab = (at(event) ?? this.value()) - this.value();\n\n const move = (moved: PointerEvent) => {\n const raw = at(moved);\n if (raw === undefined) return;\n this.requestValue(this.clamp(raw - grab), 'pointer', moved);\n };\n\n const up = (ended: PointerEvent) => {\n this.element.removeEventListener('pointermove', move);\n this.element.removeEventListener('pointerup', up);\n this.element.removeEventListener('pointercancel', up);\n this.release?.();\n this.release = null;\n this.dragging.set(false);\n\n /* The stop nearest where the hand left it, and only then: a drag that\n snapped on every move would fight the hand rather than help it. */\n const stops = this.snapPoints();\n const raw = at(ended);\n if (stops.length > 0 && raw !== undefined) {\n const snapped = this.clamp(nearestSnap(raw - grab, stops));\n this.requestValue(snapped, 'pointer', ended);\n this.resizeEnd.emit(snapped);\n return;\n }\n\n this.resizeEnd.emit(this.value());\n };\n\n this.element.addEventListener('pointermove', move);\n this.element.addEventListener('pointerup', up);\n this.element.addEventListener('pointercancel', up);\n }\n\n protected onKeyDown(event: KeyboardEvent) {\n if (event.defaultPrevented || this.disabled()) return;\n\n if (event.key === 'Enter') {\n if (!this.collapsible()) return;\n event.preventDefault();\n this.toggle('keyboard', event);\n return;\n }\n\n const { rect, rtl } = this.geometry();\n if (rect === undefined) return;\n\n const side = this.side();\n const grows = anchorsAtStart(side, rtl) ? 1 : -1;\n const vertical = this.resolvedOrientation() === 'vertical';\n const limits = this.bounds();\n\n /* The cross axis is left to the page, so a document that scrolls still\n scrolls while the separator holds focus. */\n const direction =\n event.key === (vertical ? 'ArrowRight' : 'ArrowDown')\n ? (grows as 1 | -1)\n : event.key === (vertical ? 'ArrowLeft' : 'ArrowUp')\n ? (-grows as 1 | -1)\n : undefined;\n\n if (direction !== undefined) {\n event.preventDefault();\n this.requestValue(\n stepExtent({\n amount: stepAmountFromPixels({\n pixels: event.shiftKey ? EXTENT_LARGE_STEP_PX : EXTENT_STEP_PX,\n rect,\n side,\n }),\n direction,\n fraction: this.value(),\n max: limits.max,\n min: limits.min,\n snapPoints: this.snapPoints(),\n }),\n 'keyboard',\n event,\n );\n return;\n }\n\n if (event.key === 'Home') {\n event.preventDefault();\n this.requestValue(limits.min, 'keyboard', event);\n return;\n }\n\n if (event.key === 'End') {\n event.preventDefault();\n this.requestValue(limits.max, 'keyboard', event);\n }\n }\n\n protected onDoubleClick(event: MouseEvent) {\n if (event.defaultPrevented || this.disabled()) return;\n this.requestValue(this.clamp(this.defaultValue()), 'pointer', event);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}