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

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 @@
1
+ {"version":3,"file":"slotted-angular-slider.mjs","sources":["../../slider/src/slider-defaults.ts","../../slider/src/slider.ts","../../slider/src/slotted-angular-slider.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\n\n/** The type step the control sits at, matching the field around it. */\nexport type SliderSize = 'sm' | 'md' | 'lg';\n\n/**\n * Which axis the scale runs along. A vertical slider's minimum is at the\n * bottom, which is where the browser's own vertical range input and every\n * surveyed implementation put it.\n */\nexport type SliderOrientation = 'horizontal' | 'vertical';\n\n/**\n * When the value stands on the thumb. `auto` shows it while the thumb is being\n * dragged or has the caret, `always` shows it at rest as well, and `none`\n * withdraws it — which is what a scale whose values are words needs.\n */\nexport type SliderValueLabel = 'auto' | 'always' | 'none';\n\n/** Where the filled portion starts: an end of the scale, or a point on it. */\nexport type SliderOrigin = 'min' | 'max' | number;\n\n/** A tick on the scale, with the label that may become the announced value. */\nexport interface SliderMark {\n value: number;\n label?: string | undefined;\n}\n\nexport interface SliderDefaults {\n orientation: SliderOrientation;\n size: SliderSize;\n valueLabel: SliderValueLabel;\n}\n\nconst FALLBACK: SliderDefaults = {\n orientation: 'horizontal',\n size: 'md',\n valueLabel: 'auto',\n};\n\nexport const SLIDER_DEFAULTS = new InjectionToken<SliderDefaults>('slotted slider defaults', {\n providedIn: 'root',\n factory: () => FALLBACK,\n});\n\n/**\n * An application decides once what its sliders look like, rather than\n * repeating the same inputs on every scale. A slider that states any of them\n * itself still wins, and a slider inside a field takes the field's step before\n * this token's. The locale its values are written in comes from the language\n * in force (`provideSlotted`).\n */\nexport function provideSliderDefaults(defaults: Partial<SliderDefaults>) {\n return {\n provide: SLIDER_DEFAULTS,\n useFactory: (): SliderDefaults => ({ ...FALLBACK, ...defaults }),\n };\n}\n\n/** What a slider renders as here, before it states anything of its own. */\nexport function injectSliderDefaults(): SliderDefaults {\n return inject(SLIDER_DEFAULTS);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n ElementRef,\n forwardRef,\n HostAttributeToken,\n inject,\n input,\n numberAttribute,\n output,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { createNumberFormat } from '@slotted/core/number';\nimport {\n fractionAtPoint,\n fractionOfValue,\n moveThumb,\n nearestThumb,\n normaliseValues,\n sameValues,\n thumbBounds,\n valueAtFraction,\n} from '@slotted/core/slider';\nimport { createControllable } from '@slotted/core/state';\nimport type { ChangeReason, ChangeRequest } from '@slotted/core/state';\nimport { SlField } from '@slotted/angular/field';\nimport { injectLocale } from '@slotted/angular/i18n';\n\nimport { injectSliderDefaults } from './slider-defaults';\nimport type {\n SliderMark,\n SliderOrientation,\n SliderOrigin,\n SliderSize,\n SliderValueLabel,\n} from './slider-defaults';\n\nexport type {\n SliderMark,\n SliderOrientation,\n SliderOrigin,\n SliderSize,\n SliderValueLabel,\n} from './slider-defaults';\n\n/** `undefined` stays absent; anything else becomes a number. */\nconst optionalNumber = (value: unknown) =>\n value === undefined || value === null || value === '' ? undefined : numberAttribute(value);\n\nconst toArray = (value: number | readonly number[]): number[] =>\n Array.isArray(value) ? [...value] : [value as number];\n\n/**\n * A scale, a rail and one thumb per value.\n *\n * **Every thumb is a real `input[type=\"range\"]`.** Angular Material's own\n * thumbs are `input[matSliderThumb]` elements, and the element is taken for the\n * same reasons: it carries the `slider` role, `aria-valuenow`, `aria-valuemin`,\n * `aria-valuemax`, form submission, form reset and `disabled` without the\n * family writing any of them. It is invisible and unhittable, filling the thumb\n * it lives in, so the thumb a reader sees is this family's own element.\n *\n * **The family owns the keyboard and the pointer.** Browsers disagree about a\n * range input's larger step — Chrome moves Page Up by a tenth of the range and\n * Firefox by one step — and `largeStep` has to mean one thing in both bindings.\n *\n * **Two thumbs cannot cross, and the accessibility tree says so.** Each input's\n * own `min` and `max` follow its neighbour, which is what the APG's multi-thumb\n * pattern requires of the dependent sliders' announced range.\n *\n * **Unset means ask the field.** `disabled`, `readOnly` and `invalid` default to\n * `undefined` rather than `false`.\n */\n@Component({\n selector: '[slSlider]',\n standalone: true,\n exportAs: 'slSlider',\n template: `@if (resolvedValueLabel() !== 'none') {\n <output data-part=\"output\" [attr.for]=\"controlId()\">{{ outputText() }}</output>\n }\n <div\n data-part=\"control\"\n (pointerdown)=\"onPointerDown($event)\"\n (pointermove)=\"onPointerMove($event)\"\n (pointerup)=\"onPointerUp($event)\"\n (pointercancel)=\"onPointerUp($event)\"\n >\n <div data-part=\"track\" #track>\n <div\n data-part=\"indicator\"\n [style.--_start]=\"span().start\"\n [style.--_end]=\"span().end\"\n ></div>\n @for (mark of markList(); track mark.value) {\n <span\n data-part=\"mark\"\n [attr.data-edge]=\"edgeOf(mark.value)\"\n [style.--_position]=\"percentOf(mark.value)\"\n >\n @if (mark.label !== undefined) {\n <span data-part=\"mark-label\">{{ mark.label }}</span>\n }\n </span>\n }\n @for (thumbValue of values(); track $index) {\n <div\n data-part=\"thumb\"\n [attr.data-index]=\"$index\"\n [attr.data-active]=\"dragging() === $index ? '' : null\"\n [style.--_position]=\"percentOf(thumbValue)\"\n >\n <input\n data-part=\"input\"\n type=\"range\"\n [attr.id]=\"$index === 0 ? controlId() : controlId() + '-' + $index\"\n [attr.name]=\"submissionName()\"\n [attr.form]=\"submissionForm()\"\n [attr.aria-label]=\"thumbLabelAt($index)\"\n [attr.aria-describedby]=\"describedBy()\"\n [attr.aria-invalid]=\"ariaInvalid()\"\n [attr.aria-required]=\"ariaRequired()\"\n [attr.aria-readonly]=\"resolvedReadOnly() === true ? 'true' : null\"\n [attr.aria-orientation]=\"resolvedOrientation()\"\n [attr.aria-valuetext]=\"valueTextOf(thumbValue)\"\n [attr.disabled]=\"resolvedDisabled() === true ? '' : null\"\n [min]=\"boundsAt($index).min\"\n [max]=\"boundsAt($index).max\"\n [step]=\"step()\"\n [value]=\"thumbValue\"\n (keydown)=\"onKeyDown($index, $event)\"\n (blur)=\"onTouched()\"\n />\n <span data-part=\"bubble\" aria-hidden=\"true\">{{ valueTextOf(thumbValue) }}</span>\n </div>\n }\n </div>\n </div>`,\n styleUrl: '../../../styles/src/slider/slider.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SlSlider), multi: true }],\n host: {\n 'data-ui': 'slider',\n 'data-part': 'root',\n '[attr.data-size]': 'resolvedSize()',\n '[attr.data-orientation]': 'resolvedOrientation()',\n '[attr.data-value-label]': 'resolvedValueLabel()',\n '[attr.data-marks]': 'marksMode()',\n '[attr.data-dragging]': \"dragging() === null ? null : ''\",\n '[attr.data-disabled]': \"resolvedDisabled() === true ? '' : null\",\n '[attr.data-invalid]': \"resolvedInvalid() === true ? '' : null\",\n '[attr.data-readonly]': \"resolvedReadOnly() === true ? '' : null\",\n },\n})\nexport class SlSlider implements ControlValueAccessor {\n /**\n * Present means the consumer owns the value, for the life of the component.\n * An array makes a range; a number makes one thumb, and the shape handed in\n * is the shape every request carries back.\n */\n readonly value = input<number | readonly number[] | undefined>(undefined);\n /** The value an uncontrolled slider starts from, read once. */\n readonly defaultValue = input<number | readonly number[]>(0);\n\n readonly min = input<number, unknown>(0, { transform: (raw) => optionalNumber(raw) ?? 0 });\n readonly max = input<number, unknown>(100, { transform: (raw) => optionalNumber(raw) ?? 100 });\n readonly step = input<number, unknown>(1, { transform: (raw) => optionalNumber(raw) ?? 1 });\n /** The amount `Shift` and the page keys move by. Defaults to `step * 10`. */\n readonly largeStep = input<number | undefined, unknown>(undefined, { transform: optionalNumber });\n /** How many steps must stay between two neighbouring thumbs. */\n readonly minStepsBetween = input<number, unknown>(0, {\n transform: (raw) => optionalNumber(raw) ?? 0,\n });\n /** Where the filled portion starts. Defaults to `min`. */\n readonly origin = input<SliderOrigin>('min');\n /** The ticks drawn beside the rail. A mark's label becomes its announced value. */\n readonly marks = input<readonly (number | SliderMark)[] | undefined>(undefined);\n /** How the value is written, through `Intl.NumberFormat`. */\n readonly format = input<Intl.NumberFormatOptions | undefined>(undefined);\n /** BCP 47. Unset, the language in force decides. */\n readonly locale = input<string | undefined>(undefined);\n /** The accessible name of each thumb, in order. */\n readonly thumbLabels = input<readonly string[] | undefined>(undefined);\n\n readonly size = input<SliderSize | undefined>(undefined);\n readonly orientation = input<SliderOrientation | undefined>(undefined);\n readonly valueLabel = input<SliderValueLabel | undefined>(undefined);\n\n /** Unstated rather than `false`, so the control defers to the field. */\n readonly disabled = input<boolean | undefined, boolean | string | undefined>(undefined, {\n transform: (raw) => (raw === undefined ? undefined : booleanAttribute(raw)),\n });\n readonly readOnly = input<boolean | undefined, boolean | string | undefined>(undefined, {\n transform: (raw) => (raw === undefined ? undefined : booleanAttribute(raw)),\n });\n readonly invalid = input<boolean | undefined, boolean | string | undefined>(undefined, {\n transform: (raw) => (raw === undefined ? undefined : booleanAttribute(raw)),\n });\n\n /**\n * One output for one transition, carrying the value, the value it replaces,\n * the reason, the originating event and `cancel()`. There is no `[(value)]`,\n * because a two-way binding has one slot and can carry none of those; a form\n * gets the same movement through `ControlValueAccessor`.\n */\n readonly valueChange = output<ChangeRequest<number | number[]>>();\n /**\n * The end of a drag, or a key that settled the value. A drag emits a hundred\n * changes and one commit; this is the commit.\n */\n readonly valueCommit = output<number | number[]>();\n\n private readonly element = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\n private readonly track = viewChild<ElementRef<HTMLElement>>('track');\n private readonly field = inject(SlField, { optional: true });\n private readonly defaults = injectSliderDefaults();\n private readonly appLocale = injectLocale();\n\n private readonly writtenId = inject(new HostAttributeToken('id'), { optional: true });\n private readonly writtenName = inject(new HostAttributeToken('name'), { optional: true });\n private readonly writtenForm = inject(new HostAttributeToken('form'), { optional: true });\n private readonly writtenLabel = inject(new HostAttributeToken('aria-label'), { optional: true });\n private readonly writtenDescribedBy = inject(new HostAttributeToken('aria-describedby'), {\n optional: true,\n });\n private readonly writtenInvalid = inject(new HostAttributeToken('aria-invalid'), {\n optional: true,\n });\n private readonly writtenRequired = inject(new HostAttributeToken('aria-required'), {\n optional: true,\n });\n\n /** What the family holds when nobody else owns it. */\n private readonly own = signal<number[] | null>(null);\n private readonly formValue = signal<number[] | null>(null);\n private readonly formDisabled = signal<boolean | undefined>(undefined);\n protected readonly dragging = signal<number | null>(null);\n private onChangeFn: (value: number | number[]) => void = () => undefined;\n private onTouchedFn: () => void = () => undefined;\n\n protected readonly scale = computed(() => ({\n min: this.min(),\n max: this.max(),\n step: this.step(),\n }));\n\n /** The shape the consumer handed in is the shape every request carries back. */\n private readonly isRange = computed(() => {\n const bound = this.value();\n return Array.isArray(bound ?? this.defaultValue());\n });\n\n readonly values = computed<number[]>(() => {\n const bound = this.value();\n const held = bound ?? this.formValue() ?? this.own() ?? this.defaultValue();\n return normaliseValues(toArray(held), this.scale());\n });\n\n private readonly formatter = computed(() => {\n const options = this.format();\n return createNumberFormat({\n locale: this.locale() ?? this.appLocale(),\n ...(options === undefined ? {} : { options }),\n });\n });\n\n readonly resolvedSize = computed(\n () => this.size() ?? this.field?.resolvedSize() ?? this.defaults.size,\n );\n readonly resolvedOrientation = computed(() => this.orientation() ?? this.defaults.orientation);\n readonly resolvedValueLabel = computed(() => this.valueLabel() ?? this.defaults.valueLabel);\n readonly resolvedDisabled = computed(\n () => this.disabled() ?? this.formDisabled() ?? this.field?.resolvedDisabled(),\n );\n readonly resolvedReadOnly = computed(() => this.readOnly() ?? this.field?.resolvedReadOnly());\n readonly resolvedInvalid = computed(() => this.invalid() ?? this.field?.invalid());\n private readonly inert = computed(\n () => this.resolvedDisabled() === true || this.resolvedReadOnly() === true,\n );\n\n readonly controlId = computed(() => this.writtenId ?? this.field?.ids().control ?? null);\n protected readonly submissionName = computed(() => this.writtenName);\n protected readonly submissionForm = computed(() => this.writtenForm);\n\n protected readonly markList = computed<SliderMark[]>(() => {\n const marks = this.marks();\n if (marks === undefined) return [];\n return marks.map((mark) => (typeof mark === 'number' ? { value: mark } : mark));\n });\n\n protected readonly marksMode = computed(() => {\n const marks = this.markList();\n if (marks.length === 0) return null;\n return marks.some((mark) => mark.label !== undefined) ? 'labelled' : 'ticks';\n });\n\n protected readonly describedBy = computed(() => {\n const merged = [this.writtenDescribedBy, this.field?.describedBy()].filter(Boolean);\n return merged.length === 0 ? null : merged.join(' ');\n });\n protected readonly ariaInvalid = computed(\n () => this.writtenInvalid ?? (this.resolvedInvalid() === true ? 'true' : null),\n );\n protected readonly ariaRequired = computed(\n () => this.writtenRequired ?? (this.field?.required() === true ? 'true' : null),\n );\n\n /** Where the fill starts, which is an end of the scale or a point on it. */\n protected readonly span = computed(() => {\n const values = this.values();\n const scale = this.scale();\n const origin = this.origin();\n const originValue = origin === 'min' ? scale.min : origin === 'max' ? scale.max : origin;\n const first = values[0] ?? scale.min;\n const last = values[values.length - 1] ?? scale.min;\n const start = values.length > 1 ? first : Math.min(originValue, first);\n const end = values.length > 1 ? last : Math.max(originValue, first);\n return {\n start: fractionOfValue(start, scale) * 100,\n end: fractionOfValue(end, scale) * 100,\n };\n });\n\n protected readonly outputText = computed(() =>\n this.values()\n .map((value) => this.valueTextOf(value))\n .join(' – '),\n );\n\n /** The native element, for `focus()` on the root and for a consumer's own query. */\n get sliderElement(): HTMLElement {\n return this.element;\n }\n\n /** The one action a value cannot express: putting focus on a named thumb. */\n focusThumb(index = 0) {\n this.thumbInputs()[index]?.focus();\n }\n\n protected percentOf(value: number) {\n return fractionOfValue(value, this.scale()) * 100;\n }\n\n protected edgeOf(value: number) {\n if (value === this.min()) return 'start';\n if (value === this.max()) return 'end';\n return null;\n }\n\n protected boundsAt(index: number) {\n return thumbBounds({\n ...this.scale(),\n values: this.values(),\n index,\n minStepsBetween: this.minStepsBetween(),\n });\n }\n\n protected thumbLabelAt(index: number) {\n const labels = this.thumbLabels();\n if (labels?.[index] !== undefined) return labels[index];\n return this.values().length > 1 ? null : this.writtenLabel;\n }\n\n /**\n * The APG names `aria-valuetext` for a value that is not user-friendly, and\n * gives \"Monday\" as its example. A mark that already carries a label is that\n * string, so a five-step quality scale announces \"Medium\" rather than \"50\".\n */\n protected valueTextOf(value: number) {\n const labelled = this.markList().find(\n (mark) => mark.value === value && mark.label !== undefined,\n );\n return labelled?.label ?? this.formatter().format(value);\n }\n\n protected onTouched() {\n this.onTouchedFn();\n }\n\n writeValue(value: number | readonly number[] | null) {\n this.formValue.set(\n value === null || value === undefined ? null : normaliseValues(toArray(value), this.scale()),\n );\n }\n\n registerOnChange(fn: (value: number | number[]) => void) {\n this.onChangeFn = fn;\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouchedFn = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.formDisabled.set(isDisabled);\n }\n\n protected onPointerDown(event: PointerEvent) {\n if (this.inert() || event.button !== 0) return;\n const target = this.valueAtPointer(event);\n if (target === null) return;\n\n const index = nearestThumb(this.values(), target);\n if (index === -1) return;\n\n event.preventDefault();\n this.thumbInputs()[index]?.focus();\n (event.currentTarget as HTMLElement).setPointerCapture(event.pointerId);\n this.dragging.set(index);\n this.move(index, target, 'pointer', event);\n }\n\n protected onPointerMove(event: PointerEvent) {\n const index = this.dragging();\n if (index === null) return;\n const target = this.valueAtPointer(event);\n if (target === null) return;\n this.move(index, target, 'pointer', event);\n }\n\n protected onPointerUp(event: PointerEvent) {\n if (this.dragging() === null) return;\n const host = event.currentTarget as HTMLElement;\n if (host.hasPointerCapture(event.pointerId)) host.releasePointerCapture(event.pointerId);\n this.dragging.set(null);\n this.valueCommit.emit(this.shape(this.values()));\n }\n\n /**\n * The whole keyboard table, and `preventDefault()` on every key in it. The\n * inline arrows follow the reading direction — in a mirrored document\n * `ArrowRight` moves the thumb toward the end of the track the reader sees —\n * and the block arrows do not, because a scale has a direction and bidi is\n * not it.\n */\n protected onKeyDown(index: number, event: KeyboardEvent) {\n if (event.defaultPrevented || this.inert()) return;\n\n const step = this.step();\n const large = this.largeStep() ?? step * 10;\n const amount = event.shiftKey ? large : step;\n const inlineSign = this.isRtl() ? -1 : 1;\n const current = this.values()[index] ?? this.min();\n const bounds = this.boundsAt(index);\n\n const stepBy = (direction: number, by: number) => {\n event.preventDefault();\n this.move(index, current + direction * by, 'keyboard', event);\n this.valueCommit.emit(this.shape(this.values()));\n };\n\n switch (event.key) {\n case 'ArrowRight':\n stepBy(inlineSign, amount);\n return;\n case 'ArrowLeft':\n stepBy(-inlineSign, amount);\n return;\n case 'ArrowUp':\n stepBy(1, amount);\n return;\n case 'ArrowDown':\n stepBy(-1, amount);\n return;\n case 'PageUp':\n stepBy(1, large);\n return;\n case 'PageDown':\n stepBy(-1, large);\n return;\n case 'Home':\n event.preventDefault();\n this.move(index, bounds.min, 'keyboard', event);\n this.valueCommit.emit(this.shape(this.values()));\n return;\n case 'End':\n event.preventDefault();\n this.move(index, bounds.max, 'keyboard', event);\n this.valueCommit.emit(this.shape(this.values()));\n return;\n default:\n }\n }\n\n private thumbInputs(): HTMLInputElement[] {\n return Array.from(this.element.querySelectorAll<HTMLInputElement>('[data-part=\"input\"]'));\n }\n\n /**\n * Which way the inline arrows move, read from the element rather than from an\n * input: a right-to-left document is a property of the page.\n */\n private isRtl() {\n const track = this.track()?.nativeElement;\n return track !== undefined && getComputedStyle(track).direction === 'rtl';\n }\n\n private valueAtPointer(event: PointerEvent) {\n const track = this.track()?.nativeElement;\n if (track === undefined) return null;\n const rect = track.getBoundingClientRect();\n const fraction = fractionAtPoint(\n { x: event.clientX, y: event.clientY },\n { rect, orientation: this.resolvedOrientation(), rtl: this.isRtl() },\n );\n return valueAtFraction(fraction, this.scale());\n }\n\n private shape(values: number[]): number | number[] {\n return this.isRange() ? values : (values[0] ?? this.min());\n }\n\n private move(index: number, next: number, reason: ChangeReason, source: Event | undefined) {\n const values = this.values();\n const moved = moveThumb({\n ...this.scale(),\n values,\n index,\n next,\n minStepsBetween: this.minStepsBetween(),\n });\n if (moved === values) return;\n this.request(moved, reason, source);\n }\n\n /**\n * Asks to move, and moves nothing the consumer owns. A refused request stops\n * here: a control that wrote the value regardless would show one the consumer\n * never accepted.\n */\n private request(next: number[], reason: ChangeReason, source: Event | undefined) {\n const current = this.values();\n if (sameValues(next, current)) return;\n\n let cancelled = false;\n /* The request is built over the shape the consumer handed in, so the value\n it carries and the value they passed are the same kind of thing — and so\n `cancel()` still belongs to the object that owns it. */\n const state = createControllable<number | number[]>({\n controlled: undefined,\n initial: this.shape(current),\n equals: (a, b) => (Array.isArray(a) && Array.isArray(b) ? sameValues(a, b) : Object.is(a, b)),\n onRequest: (pending) => {\n this.valueChange.emit(pending);\n cancelled = pending.cancelled;\n },\n });\n state.request(this.shape(next), reason, source);\n if (cancelled) return;\n\n this.onChangeFn(this.shape(next));\n /* A controlled slider never moves its own value: it asks, and waits. */\n if (this.value() !== undefined) return;\n this.formValue.set(next);\n this.own.set(next);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,235 @@
1
+ import * as i0 from '@angular/core';
2
+ import { InjectionToken, inject, input, ElementRef, HostAttributeToken, signal, computed, DestroyRef, afterNextRender, ViewEncapsulation, ChangeDetectionStrategy, Component, booleanAttribute, numberAttribute } from '@angular/core';
3
+ import { injectMessages, injectLocale } from '@slotted/angular/i18n';
4
+ import { sparklineMessages } from '@slotted/core/i18n';
5
+ import { SPARKLINE_STEPS, layoutSparkline, sparklineInset, describeSparkline, observeSparklineBox } from '@slotted/core/sparkline';
6
+
7
+ const SPARKLINE_DEFAULTS_TOKEN = new InjectionToken('slotted sparkline defaults', { providedIn: 'root', factory: () => ({}) });
8
+ /**
9
+ * An application decides once how its sparklines are drawn and read out, and
10
+ * every sparkline inherits it. A sparkline that states any of those still
11
+ * wins: an explicit input is never overridden by the token.
12
+ */
13
+ function provideSparklineDefaults(defaults) {
14
+ return { provide: SPARKLINE_DEFAULTS_TOKEN, useValue: defaults };
15
+ }
16
+ function injectSparklineDefaults() {
17
+ return inject(SPARKLINE_DEFAULTS_TOKEN);
18
+ }
19
+
20
+ /** The bar's corner and the space between two bars, in pixels; the stylesheet's geometry. */
21
+ const SPARKLINE_BAR_GAP = 2;
22
+ const SPARKLINE_BAR_RADIUS = 2;
23
+
24
+ /**
25
+ * A series of numbers drawn in a box: a line through them or a bar per
26
+ * period, a disc on the last point, a dashed line at a reference. The
27
+ * geometry is `@slotted/core/sparkline`'s and the paint is the stylesheet's;
28
+ * what this binding decides is when to measure and what to say.
29
+ *
30
+ * The box is measured after the first render, so the first browser paint is
31
+ * on the real grid; on the server the drawing is laid out on the nominal
32
+ * grid of its size step and stretched to the box, where
33
+ * `vector-effect: non-scaling-stroke` keeps every stroke and both discs at
34
+ * their screen size. The host is `role="img"` with the generated description
35
+ * as its name — an `aria-label` the consumer wrote on the element wins — and
36
+ * the `svg` is hidden: a drawing with no interaction is an image.
37
+ */
38
+ class SlSparkline {
39
+ /** The series, oldest first. `null` is a gap: the line breaks, the bar is not drawn. */
40
+ data = input([], /* @ts-ignore */
41
+ ...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
42
+ type = input('line', /* @ts-ignore */
43
+ ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
44
+ size = input('md', /* @ts-ignore */
45
+ ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
46
+ /** Straight segments, or a monotone curve that never overshoots a point. */
47
+ curve = input(undefined, /* @ts-ignore */
48
+ ...(ngDevMode ? [{ debugName: "curve" }] : /* istanbul ignore next */ []));
49
+ /** The wash under a line. */
50
+ area = input(undefined, { ...(ngDevMode ? { debugName: "area" } : /* istanbul ignore next */ {}), transform: optionalBoolean });
51
+ /** A disc on the last real point. */
52
+ marker = input(undefined, { ...(ngDevMode ? { debugName: "marker" } : /* istanbul ignore next */ {}), transform: optionalBoolean });
53
+ /** A dashed line at this value, which widens the extent to hold it. */
54
+ reference = input(undefined, { ...(ngDevMode ? { debugName: "reference" } : /* istanbul ignore next */ {}), transform: optionalNumber });
55
+ /** The extent, when the data's own is not the one to draw. The data widens it, never narrows it. */
56
+ min = input(undefined, { ...(ngDevMode ? { debugName: "min" } : /* istanbul ignore next */ {}), transform: optionalNumber });
57
+ max = input(undefined, { ...(ngDevMode ? { debugName: "max" } : /* istanbul ignore next */ {}), transform: optionalNumber });
58
+ /** How the series is doing. Wins over `series`. */
59
+ tone = input(undefined, /* @ts-ignore */
60
+ ...(ngDevMode ? [{ debugName: "tone" }] : /* istanbul ignore next */ []));
61
+ /** Which series this is, as a slot of the data scale. */
62
+ series = input(undefined, /* @ts-ignore */
63
+ ...(ngDevMode ? [{ debugName: "series" }] : /* istanbul ignore next */ []));
64
+ /** What the series is, said first in the description. */
65
+ label = input(undefined, /* @ts-ignore */
66
+ ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
67
+ /** The whole accessible name, replacing the generated description. */
68
+ description = input(undefined, /* @ts-ignore */
69
+ ...(ngDevMode ? [{ debugName: "description" }] : /* istanbul ignore next */ []));
70
+ formatOptions = input(undefined, /* @ts-ignore */
71
+ ...(ngDevMode ? [{ debugName: "formatOptions" }] : /* istanbul ignore next */ []));
72
+ valueFormatter = input(undefined, /* @ts-ignore */
73
+ ...(ngDevMode ? [{ debugName: "valueFormatter" }] : /* istanbul ignore next */ []));
74
+ /** The locale numbers are written in; the language in force when absent. */
75
+ locale = input(undefined, /* @ts-ignore */
76
+ ...(ngDevMode ? [{ debugName: "locale" }] : /* istanbul ignore next */ []));
77
+ /** Words laid over the catalog of the language in force, key by key: the description's sentences. */
78
+ messages = input(undefined, /* @ts-ignore */
79
+ ...(ngDevMode ? [{ debugName: "messages" }] : /* istanbul ignore next */ []));
80
+ defaults = injectSparklineDefaults();
81
+ host = inject(ElementRef).nativeElement;
82
+ /** An `aria-label` the consumer wrote on their own element, which wins. */
83
+ ownLabel = inject(new HostAttributeToken('aria-label'), { optional: true });
84
+ box = signal(null, /* @ts-ignore */
85
+ ...(ngDevMode ? [{ debugName: "box" }] : /* istanbul ignore next */ []));
86
+ resolvedCurve = computed(() => this.curve() ?? this.defaults.curve ?? 'linear', /* @ts-ignore */
87
+ ...(ngDevMode ? [{ debugName: "resolvedCurve" }] : /* istanbul ignore next */ []));
88
+ resolvedArea = computed(() => this.area() ?? this.defaults.area ?? false, /* @ts-ignore */
89
+ ...(ngDevMode ? [{ debugName: "resolvedArea" }] : /* istanbul ignore next */ []));
90
+ resolvedMarker = computed(() => this.marker() ?? this.defaults.marker ?? true, /* @ts-ignore */
91
+ ...(ngDevMode ? [{ debugName: "resolvedMarker" }] : /* istanbul ignore next */ []));
92
+ /** The family's words in the language in force, with this sparkline's `messages` laid over them. */
93
+ t = injectMessages(sparklineMessages, this.messages);
94
+ appLocale = injectLocale();
95
+ width = computed(() => this.box()?.width || SPARKLINE_STEPS[this.size()].width, /* @ts-ignore */
96
+ ...(ngDevMode ? [{ debugName: "width" }] : /* istanbul ignore next */ []));
97
+ height = computed(() => this.box()?.height || SPARKLINE_STEPS[this.size()].height, /* @ts-ignore */
98
+ ...(ngDevMode ? [{ debugName: "height" }] : /* istanbul ignore next */ []));
99
+ viewBox = computed(() => `0 0 ${this.width()} ${this.height()}`, /* @ts-ignore */
100
+ ...(ngDevMode ? [{ debugName: "viewBox" }] : /* istanbul ignore next */ []));
101
+ layout = computed(() => layoutSparkline({
102
+ data: this.data(),
103
+ width: this.width(),
104
+ height: this.height(),
105
+ inset: sparklineInset(this.size(), this.type(), this.resolvedMarker()),
106
+ type: this.type(),
107
+ curve: this.resolvedCurve(),
108
+ area: this.resolvedArea(),
109
+ min: this.min(),
110
+ max: this.max(),
111
+ reference: this.reference(),
112
+ gap: SPARKLINE_BAR_GAP,
113
+ radius: SPARKLINE_BAR_RADIUS,
114
+ }), /* @ts-ignore */
115
+ ...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
116
+ markerPath = computed(() => {
117
+ const marker = this.layout().marker;
118
+ if (!this.resolvedMarker() || this.type() !== 'line' || marker === null)
119
+ return null;
120
+ return `M${marker.x} ${marker.y}h0.001`;
121
+ }, /* @ts-ignore */
122
+ ...(ngDevMode ? [{ debugName: "markerPath" }] : /* istanbul ignore next */ []));
123
+ name = computed(() => {
124
+ if (this.ownLabel)
125
+ return this.ownLabel;
126
+ const description = this.description();
127
+ if (description !== undefined)
128
+ return description;
129
+ const own = this.valueFormatter();
130
+ const formatter = new Intl.NumberFormat(this.locale() ?? this.appLocale(), this.formatOptions() ?? this.defaults.formatOptions);
131
+ return describeSparkline(this.data(), {
132
+ t: this.t,
133
+ format: own ?? ((value) => formatter.format(value)),
134
+ label: this.label(),
135
+ });
136
+ }, /* @ts-ignore */
137
+ ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
138
+ constructor() {
139
+ const destroyRef = inject(DestroyRef);
140
+ afterNextRender(() => {
141
+ const handle = observeSparklineBox(this.host, (box) => this.box.set(box));
142
+ destroyRef.onDestroy(() => handle.destroy());
143
+ });
144
+ }
145
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSparkline, deps: [], target: i0.ɵɵFactoryTarget.Component });
146
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlSparkline, isStandalone: true, selector: "[slSparkline]", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, curve: { classPropertyName: "curve", publicName: "curve", isSignal: true, isRequired: false, transformFunction: null }, area: { classPropertyName: "area", publicName: "area", isSignal: true, isRequired: false, transformFunction: null }, marker: { classPropertyName: "marker", publicName: "marker", isSignal: true, isRequired: false, transformFunction: null }, reference: { classPropertyName: "reference", publicName: "reference", 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 }, tone: { classPropertyName: "tone", publicName: "tone", isSignal: true, isRequired: false, transformFunction: null }, series: { classPropertyName: "series", publicName: "series", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, formatOptions: { classPropertyName: "formatOptions", publicName: "formatOptions", isSignal: true, isRequired: false, transformFunction: null }, valueFormatter: { classPropertyName: "valueFormatter", publicName: "valueFormatter", isSignal: true, isRequired: false, transformFunction: null }, locale: { classPropertyName: "locale", publicName: "locale", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "sparkline", "data-part": "root", "role": "img" }, properties: { "attr.aria-label": "name()", "attr.data-type": "type()", "attr.data-size": "size()", "attr.data-curve": "resolvedCurve()", "attr.data-tone": "tone() ?? null", "attr.data-series": "series() ?? null" } }, exportAs: ["slSparkline"], ngImport: i0, template: `<svg
147
+ data-part="plot"
148
+ aria-hidden="true"
149
+ focusable="false"
150
+ preserveAspectRatio="none"
151
+ [attr.viewBox]="viewBox()"
152
+ >
153
+ @if (layout().area) {
154
+ <path data-part="area" [attr.d]="layout().area" />
155
+ }
156
+ @if (layout().line) {
157
+ <path data-part="line" [attr.d]="layout().line" />
158
+ }
159
+ @for (bar of layout().bars; track bar.index; let last = $last) {
160
+ <path data-part="bar" [attr.data-current]="last ? '' : null" [attr.d]="bar.path" />
161
+ }
162
+ @if (layout().reference !== null) {
163
+ <line
164
+ data-part="reference"
165
+ x1="0"
166
+ [attr.x2]="width()"
167
+ [attr.y1]="layout().reference"
168
+ [attr.y2]="layout().reference"
169
+ />
170
+ }
171
+ @if (markerPath()) {
172
+ <path data-part="ring" [attr.d]="markerPath()" />
173
+ <path data-part="marker" [attr.d]="markerPath()" />
174
+ }
175
+ </svg>`, isInline: true, styles: ["@layer slotted.components{[data-ui=sparkline]{--_size: var(--slotted-sparkline-block-size, var(--slotted-space-9, 2rem));--_stroke: var(--slotted-sparkline-line-width, var(--slotted-border-width-thick, 2px));--_marker: var(--slotted-sparkline-marker-size, var(--slotted-space-3, .375rem));--_ring: var(--slotted-sparkline-ring-width, var(--slotted-border-width-thick, 2px));--_ring-color: var(--slotted-sparkline-ring-color, var(--slotted-surface-raised, Canvas));--_area-opacity: var(--slotted-sparkline-area-opacity, .18);--_bar-share: var(--slotted-sparkline-bar-share, 62%);--_bar-dim: color-mix( in oklab, var(--_color) var(--_bar-share), var(--slotted-border-strong, ButtonBorder) );--_reference-color: var( --slotted-sparkline-reference-color, var(--slotted-border-strong, ButtonBorder) );--_color: var(--slotted-sparkline-color, var(--slotted-data-1));block-size:var(--_size);box-sizing:border-box;display:inline-block;inline-size:100%;line-height:0;min-inline-size:0;vertical-align:middle}[data-ui=sparkline][data-size=sm]{--_size: var(--slotted-sparkline-block-size-sm, var(--slotted-space-7, 1.25rem));--_stroke: var(--slotted-sparkline-line-width-sm, var(--slotted-border-width-medium, 1.5px));--_marker: var(--slotted-sparkline-marker-size-sm, var(--slotted-space-2, .25rem));--_ring: var(--slotted-sparkline-ring-width-sm, var(--slotted-border-width-medium, 1.5px))}[data-ui=sparkline][data-size=lg]{--_size: var(--slotted-sparkline-block-size-lg, var(--slotted-space-11, 3rem));--_marker: var(--slotted-sparkline-marker-size-lg, var(--slotted-space-4, .5rem))}[data-ui=sparkline][data-series=\"1\"]{--_color: var(--slotted-data-1)}[data-ui=sparkline][data-series=\"2\"]{--_color: var(--slotted-data-2)}[data-ui=sparkline][data-series=\"3\"]{--_color: var(--slotted-data-3)}[data-ui=sparkline][data-series=\"4\"]{--_color: var(--slotted-data-4)}[data-ui=sparkline][data-series=\"5\"]{--_color: var(--slotted-data-5)}[data-ui=sparkline][data-series=\"6\"]{--_color: var(--slotted-data-6)}[data-ui=sparkline][data-series=\"7\"]{--_color: var(--slotted-data-7)}[data-ui=sparkline][data-series=\"8\"]{--_color: var(--slotted-data-8)}[data-ui=sparkline][data-tone=neutral]{--_color: var(--slotted-text-muted, GrayText)}[data-ui=sparkline][data-tone=accent]{--_color: var(--slotted-tone-accent-text)}[data-ui=sparkline][data-tone=secondary]{--_color: var(--slotted-tone-secondary-text)}[data-ui=sparkline][data-tone=success]{--_color: var(--slotted-tone-success-text)}[data-ui=sparkline][data-tone=warning]{--_color: var(--slotted-tone-warning-text)}[data-ui=sparkline][data-tone=danger]{--_color: var(--slotted-tone-danger-text)}[data-ui=sparkline] [data-part=plot]{block-size:100%;display:block;inline-size:100%;overflow:visible}[data-ui=sparkline] [data-part=area]{fill:var(--_color);fill-opacity:var(--_area-opacity);-webkit-mask-image:linear-gradient(to bottom,black,transparent);mask-image:linear-gradient(to bottom,black,transparent);stroke:none;transition:d var(--slotted-duration-medium) var(--slotted-easing-standard)}[data-ui=sparkline] [data-part=line]{fill:none;stroke:var(--_color);stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--_stroke);transition:d var(--slotted-duration-medium) var(--slotted-easing-standard);vector-effect:non-scaling-stroke}[data-ui=sparkline] [data-part=bar]{fill:var(--_bar-dim);stroke:none;transition:d var(--slotted-duration-medium) var(--slotted-easing-standard),fill var(--slotted-duration-short) var(--slotted-easing-standard)}[data-ui=sparkline] [data-part=bar][data-current]{fill:var(--_color)}[data-ui=sparkline] [data-part=reference]{fill:none;stroke:var(--_reference-color);stroke-dasharray:2 3;stroke-linecap:round;stroke-width:var(--slotted-border-width-thin, 1px);vector-effect:non-scaling-stroke}[data-ui=sparkline] [data-part=ring],[data-ui=sparkline] [data-part=marker]{fill:none;stroke-linecap:round;transition:d var(--slotted-duration-medium) var(--slotted-easing-standard);vector-effect:non-scaling-stroke}[data-ui=sparkline] [data-part=ring]{stroke:var(--_ring-color);stroke-width:calc(var(--_marker) + 2 * var(--_ring))}[data-ui=sparkline] [data-part=marker]{stroke:var(--_color);stroke-width:var(--_marker)}[data-ui=sparkline]:dir(rtl) [data-part=plot]{transform:scaleX(-1)}@media(forced-colors:active){[data-ui=sparkline] [data-part=area]{display:none}[data-ui=sparkline] [data-part=bar]{fill:GrayText}[data-ui=sparkline] [data-part=bar][data-current]{fill:CanvasText}[data-ui=sparkline] [data-part=ring]{stroke:Canvas}}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
176
+ }
177
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlSparkline, decorators: [{
178
+ type: Component,
179
+ args: [{ selector: '[slSparkline]', standalone: true, template: `<svg
180
+ data-part="plot"
181
+ aria-hidden="true"
182
+ focusable="false"
183
+ preserveAspectRatio="none"
184
+ [attr.viewBox]="viewBox()"
185
+ >
186
+ @if (layout().area) {
187
+ <path data-part="area" [attr.d]="layout().area" />
188
+ }
189
+ @if (layout().line) {
190
+ <path data-part="line" [attr.d]="layout().line" />
191
+ }
192
+ @for (bar of layout().bars; track bar.index; let last = $last) {
193
+ <path data-part="bar" [attr.data-current]="last ? '' : null" [attr.d]="bar.path" />
194
+ }
195
+ @if (layout().reference !== null) {
196
+ <line
197
+ data-part="reference"
198
+ x1="0"
199
+ [attr.x2]="width()"
200
+ [attr.y1]="layout().reference"
201
+ [attr.y2]="layout().reference"
202
+ />
203
+ }
204
+ @if (markerPath()) {
205
+ <path data-part="ring" [attr.d]="markerPath()" />
206
+ <path data-part="marker" [attr.d]="markerPath()" />
207
+ }
208
+ </svg>`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, exportAs: 'slSparkline', host: {
209
+ 'data-ui': 'sparkline',
210
+ 'data-part': 'root',
211
+ role: 'img',
212
+ '[attr.aria-label]': 'name()',
213
+ '[attr.data-type]': 'type()',
214
+ '[attr.data-size]': 'size()',
215
+ '[attr.data-curve]': 'resolvedCurve()',
216
+ '[attr.data-tone]': 'tone() ?? null',
217
+ '[attr.data-series]': 'series() ?? null',
218
+ }, styles: ["@layer slotted.components{[data-ui=sparkline]{--_size: var(--slotted-sparkline-block-size, var(--slotted-space-9, 2rem));--_stroke: var(--slotted-sparkline-line-width, var(--slotted-border-width-thick, 2px));--_marker: var(--slotted-sparkline-marker-size, var(--slotted-space-3, .375rem));--_ring: var(--slotted-sparkline-ring-width, var(--slotted-border-width-thick, 2px));--_ring-color: var(--slotted-sparkline-ring-color, var(--slotted-surface-raised, Canvas));--_area-opacity: var(--slotted-sparkline-area-opacity, .18);--_bar-share: var(--slotted-sparkline-bar-share, 62%);--_bar-dim: color-mix( in oklab, var(--_color) var(--_bar-share), var(--slotted-border-strong, ButtonBorder) );--_reference-color: var( --slotted-sparkline-reference-color, var(--slotted-border-strong, ButtonBorder) );--_color: var(--slotted-sparkline-color, var(--slotted-data-1));block-size:var(--_size);box-sizing:border-box;display:inline-block;inline-size:100%;line-height:0;min-inline-size:0;vertical-align:middle}[data-ui=sparkline][data-size=sm]{--_size: var(--slotted-sparkline-block-size-sm, var(--slotted-space-7, 1.25rem));--_stroke: var(--slotted-sparkline-line-width-sm, var(--slotted-border-width-medium, 1.5px));--_marker: var(--slotted-sparkline-marker-size-sm, var(--slotted-space-2, .25rem));--_ring: var(--slotted-sparkline-ring-width-sm, var(--slotted-border-width-medium, 1.5px))}[data-ui=sparkline][data-size=lg]{--_size: var(--slotted-sparkline-block-size-lg, var(--slotted-space-11, 3rem));--_marker: var(--slotted-sparkline-marker-size-lg, var(--slotted-space-4, .5rem))}[data-ui=sparkline][data-series=\"1\"]{--_color: var(--slotted-data-1)}[data-ui=sparkline][data-series=\"2\"]{--_color: var(--slotted-data-2)}[data-ui=sparkline][data-series=\"3\"]{--_color: var(--slotted-data-3)}[data-ui=sparkline][data-series=\"4\"]{--_color: var(--slotted-data-4)}[data-ui=sparkline][data-series=\"5\"]{--_color: var(--slotted-data-5)}[data-ui=sparkline][data-series=\"6\"]{--_color: var(--slotted-data-6)}[data-ui=sparkline][data-series=\"7\"]{--_color: var(--slotted-data-7)}[data-ui=sparkline][data-series=\"8\"]{--_color: var(--slotted-data-8)}[data-ui=sparkline][data-tone=neutral]{--_color: var(--slotted-text-muted, GrayText)}[data-ui=sparkline][data-tone=accent]{--_color: var(--slotted-tone-accent-text)}[data-ui=sparkline][data-tone=secondary]{--_color: var(--slotted-tone-secondary-text)}[data-ui=sparkline][data-tone=success]{--_color: var(--slotted-tone-success-text)}[data-ui=sparkline][data-tone=warning]{--_color: var(--slotted-tone-warning-text)}[data-ui=sparkline][data-tone=danger]{--_color: var(--slotted-tone-danger-text)}[data-ui=sparkline] [data-part=plot]{block-size:100%;display:block;inline-size:100%;overflow:visible}[data-ui=sparkline] [data-part=area]{fill:var(--_color);fill-opacity:var(--_area-opacity);-webkit-mask-image:linear-gradient(to bottom,black,transparent);mask-image:linear-gradient(to bottom,black,transparent);stroke:none;transition:d var(--slotted-duration-medium) var(--slotted-easing-standard)}[data-ui=sparkline] [data-part=line]{fill:none;stroke:var(--_color);stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--_stroke);transition:d var(--slotted-duration-medium) var(--slotted-easing-standard);vector-effect:non-scaling-stroke}[data-ui=sparkline] [data-part=bar]{fill:var(--_bar-dim);stroke:none;transition:d var(--slotted-duration-medium) var(--slotted-easing-standard),fill var(--slotted-duration-short) var(--slotted-easing-standard)}[data-ui=sparkline] [data-part=bar][data-current]{fill:var(--_color)}[data-ui=sparkline] [data-part=reference]{fill:none;stroke:var(--_reference-color);stroke-dasharray:2 3;stroke-linecap:round;stroke-width:var(--slotted-border-width-thin, 1px);vector-effect:non-scaling-stroke}[data-ui=sparkline] [data-part=ring],[data-ui=sparkline] [data-part=marker]{fill:none;stroke-linecap:round;transition:d var(--slotted-duration-medium) var(--slotted-easing-standard);vector-effect:non-scaling-stroke}[data-ui=sparkline] [data-part=ring]{stroke:var(--_ring-color);stroke-width:calc(var(--_marker) + 2 * var(--_ring))}[data-ui=sparkline] [data-part=marker]{stroke:var(--_color);stroke-width:var(--_marker)}[data-ui=sparkline]:dir(rtl) [data-part=plot]{transform:scaleX(-1)}@media(forced-colors:active){[data-ui=sparkline] [data-part=area]{display:none}[data-ui=sparkline] [data-part=bar]{fill:GrayText}[data-ui=sparkline] [data-part=bar][data-current]{fill:CanvasText}[data-ui=sparkline] [data-part=ring]{stroke:Canvas}}}\n"] }]
219
+ }], ctorParameters: () => [], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], curve: [{ type: i0.Input, args: [{ isSignal: true, alias: "curve", required: false }] }], area: [{ type: i0.Input, args: [{ isSignal: true, alias: "area", required: false }] }], marker: [{ type: i0.Input, args: [{ isSignal: true, alias: "marker", required: false }] }], reference: [{ type: i0.Input, args: [{ isSignal: true, alias: "reference", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], tone: [{ type: i0.Input, args: [{ isSignal: true, alias: "tone", required: false }] }], series: [{ type: i0.Input, args: [{ isSignal: true, alias: "series", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], formatOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "formatOptions", required: false }] }], valueFormatter: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueFormatter", required: false }] }], locale: [{ type: i0.Input, args: [{ isSignal: true, alias: "locale", required: false }] }], messages: [{ type: i0.Input, args: [{ isSignal: true, alias: "messages", required: false }] }] } });
220
+ /** Absence has to survive the transform: an unset input defers to the defaults. */
221
+ function optionalBoolean(value) {
222
+ return value === undefined ? undefined : booleanAttribute(value);
223
+ }
224
+ function optionalNumber(value) {
225
+ if (value === undefined || value === null || value === '')
226
+ return undefined;
227
+ return numberAttribute(value);
228
+ }
229
+
230
+ /**
231
+ * Generated bundle index. Do not edit.
232
+ */
233
+
234
+ export { SPARKLINE_DEFAULTS_TOKEN, SlSparkline, injectSparklineDefaults, provideSparklineDefaults };
235
+ //# sourceMappingURL=slotted-angular-sparkline.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slotted-angular-sparkline.mjs","sources":["../../sparkline/src/sparkline-defaults.ts","../../sparkline/src/sparkline.constants.ts","../../sparkline/src/sparkline.ts","../../sparkline/src/slotted-angular-sparkline.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\n\nimport type { SparklineCurve } from './sparkline.constants';\n\n/**\n * What every sparkline in an application does before any of them states\n * anything of its own: how a number is read out, whether a line is smoothed,\n * washed and marked. Its words and locale come from the language in force\n * (`provideSlotted`).\n */\nexport interface SparklineDefaults {\n area?: boolean;\n curve?: SparklineCurve;\n formatOptions?: Intl.NumberFormatOptions;\n marker?: boolean;\n}\n\nexport const SPARKLINE_DEFAULTS_TOKEN = new InjectionToken<SparklineDefaults>(\n 'slotted sparkline defaults',\n { providedIn: 'root', factory: (): SparklineDefaults => ({}) },\n);\n\n/**\n * An application decides once how its sparklines are drawn and read out, and\n * every sparkline inherits it. A sparkline that states any of those still\n * wins: an explicit input is never overridden by the token.\n */\nexport function provideSparklineDefaults(defaults: SparklineDefaults) {\n return { provide: SPARKLINE_DEFAULTS_TOKEN, useValue: defaults };\n}\n\nexport function injectSparklineDefaults(): SparklineDefaults {\n return inject(SPARKLINE_DEFAULTS_TOKEN);\n}\n","export type SparklineType = 'line' | 'bar';\nexport type SparklineSize = 'sm' | 'md' | 'lg';\nexport type SparklineCurve = 'linear' | 'monotone';\nexport type SparklineTone = 'neutral' | 'accent' | 'secondary' | 'success' | 'warning' | 'danger';\nexport type SparklineSeries = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;\n\n/** The bar's corner and the space between two bars, in pixels; the stylesheet's geometry. */\nexport const SPARKLINE_BAR_GAP = 2;\nexport const SPARKLINE_BAR_RADIUS = 2;\n","import {\n afterNextRender,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n ElementRef,\n HostAttributeToken,\n inject,\n input,\n numberAttribute,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport { injectLocale, injectMessages } from '@slotted/angular/i18n';\nimport {\n type PartialMessages,\n sparklineMessages,\n type SparklineMessages,\n} from '@slotted/core/i18n';\nimport {\n describeSparkline,\n layoutSparkline,\n observeSparklineBox,\n SPARKLINE_STEPS,\n sparklineInset,\n} from '@slotted/core/sparkline';\nimport type { SparklineBox, SparklineDatum } from '@slotted/core/sparkline';\n\nimport { injectSparklineDefaults } from './sparkline-defaults';\nimport {\n SPARKLINE_BAR_GAP,\n SPARKLINE_BAR_RADIUS,\n type SparklineCurve,\n type SparklineSeries,\n type SparklineSize,\n type SparklineTone,\n type SparklineType,\n} from './sparkline.constants';\n\n/**\n * A series of numbers drawn in a box: a line through them or a bar per\n * period, a disc on the last point, a dashed line at a reference. The\n * geometry is `@slotted/core/sparkline`'s and the paint is the stylesheet's;\n * what this binding decides is when to measure and what to say.\n *\n * The box is measured after the first render, so the first browser paint is\n * on the real grid; on the server the drawing is laid out on the nominal\n * grid of its size step and stretched to the box, where\n * `vector-effect: non-scaling-stroke` keeps every stroke and both discs at\n * their screen size. The host is `role=\"img\"` with the generated description\n * as its name — an `aria-label` the consumer wrote on the element wins — and\n * the `svg` is hidden: a drawing with no interaction is an image.\n */\n@Component({\n selector: '[slSparkline]',\n standalone: true,\n template: `<svg\n data-part=\"plot\"\n aria-hidden=\"true\"\n focusable=\"false\"\n preserveAspectRatio=\"none\"\n [attr.viewBox]=\"viewBox()\"\n >\n @if (layout().area) {\n <path data-part=\"area\" [attr.d]=\"layout().area\" />\n }\n @if (layout().line) {\n <path data-part=\"line\" [attr.d]=\"layout().line\" />\n }\n @for (bar of layout().bars; track bar.index; let last = $last) {\n <path data-part=\"bar\" [attr.data-current]=\"last ? '' : null\" [attr.d]=\"bar.path\" />\n }\n @if (layout().reference !== null) {\n <line\n data-part=\"reference\"\n x1=\"0\"\n [attr.x2]=\"width()\"\n [attr.y1]=\"layout().reference\"\n [attr.y2]=\"layout().reference\"\n />\n }\n @if (markerPath()) {\n <path data-part=\"ring\" [attr.d]=\"markerPath()\" />\n <path data-part=\"marker\" [attr.d]=\"markerPath()\" />\n }\n </svg>`,\n styleUrl: '../../../styles/src/sparkline/sparkline.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slSparkline',\n host: {\n 'data-ui': 'sparkline',\n 'data-part': 'root',\n role: 'img',\n '[attr.aria-label]': 'name()',\n '[attr.data-type]': 'type()',\n '[attr.data-size]': 'size()',\n '[attr.data-curve]': 'resolvedCurve()',\n '[attr.data-tone]': 'tone() ?? null',\n '[attr.data-series]': 'series() ?? null',\n },\n})\nexport class SlSparkline {\n /** The series, oldest first. `null` is a gap: the line breaks, the bar is not drawn. */\n readonly data = input<readonly SparklineDatum[]>([]);\n readonly type = input<SparklineType>('line');\n readonly size = input<SparklineSize>('md');\n /** Straight segments, or a monotone curve that never overshoots a point. */\n readonly curve = input<SparklineCurve | undefined>(undefined);\n /** The wash under a line. */\n readonly area = input<boolean | undefined, unknown>(undefined, { transform: optionalBoolean });\n /** A disc on the last real point. */\n readonly marker = input<boolean | undefined, unknown>(undefined, { transform: optionalBoolean });\n /** A dashed line at this value, which widens the extent to hold it. */\n readonly reference = input<number | undefined, unknown>(undefined, { transform: optionalNumber });\n /** The extent, when the data's own is not the one to draw. The data widens it, never narrows it. */\n readonly min = input<number | undefined, unknown>(undefined, { transform: optionalNumber });\n readonly max = input<number | undefined, unknown>(undefined, { transform: optionalNumber });\n /** How the series is doing. Wins over `series`. */\n readonly tone = input<SparklineTone | undefined>(undefined);\n /** Which series this is, as a slot of the data scale. */\n readonly series = input<SparklineSeries | undefined>(undefined);\n /** What the series is, said first in the description. */\n readonly label = input<string | undefined>(undefined);\n /** The whole accessible name, replacing the generated description. */\n readonly description = input<string | undefined>(undefined);\n readonly formatOptions = input<Intl.NumberFormatOptions | undefined>(undefined);\n readonly valueFormatter = input<((value: number) => string) | undefined>(undefined);\n /** The locale numbers are written in; the language in force when absent. */\n readonly locale = input<string | undefined>(undefined);\n /** Words laid over the catalog of the language in force, key by key: the description's sentences. */\n readonly messages = input<PartialMessages<SparklineMessages> | undefined>(undefined);\n\n private readonly defaults = injectSparklineDefaults();\n private readonly host: HTMLElement = inject(ElementRef).nativeElement;\n /** An `aria-label` the consumer wrote on their own element, which wins. */\n private readonly ownLabel = inject(new HostAttributeToken('aria-label'), { optional: true });\n private readonly box = signal<SparklineBox | null>(null);\n\n readonly resolvedCurve = computed(() => this.curve() ?? this.defaults.curve ?? 'linear');\n readonly resolvedArea = computed(() => this.area() ?? this.defaults.area ?? false);\n readonly resolvedMarker = computed(() => this.marker() ?? this.defaults.marker ?? true);\n /** The family's words in the language in force, with this sparkline's `messages` laid over them. */\n readonly t = injectMessages(sparklineMessages, this.messages);\n private readonly appLocale = injectLocale();\n\n readonly width = computed(() => this.box()?.width || SPARKLINE_STEPS[this.size()].width);\n readonly height = computed(() => this.box()?.height || SPARKLINE_STEPS[this.size()].height);\n readonly viewBox = computed(() => `0 0 ${this.width()} ${this.height()}`);\n\n readonly layout = computed(() =>\n layoutSparkline({\n data: this.data(),\n width: this.width(),\n height: this.height(),\n inset: sparklineInset(this.size(), this.type(), this.resolvedMarker()),\n type: this.type(),\n curve: this.resolvedCurve(),\n area: this.resolvedArea(),\n min: this.min(),\n max: this.max(),\n reference: this.reference(),\n gap: SPARKLINE_BAR_GAP,\n radius: SPARKLINE_BAR_RADIUS,\n }),\n );\n\n readonly markerPath = computed(() => {\n const marker = this.layout().marker;\n if (!this.resolvedMarker() || this.type() !== 'line' || marker === null) return null;\n return `M${marker.x} ${marker.y}h0.001`;\n });\n\n readonly name = computed(() => {\n if (this.ownLabel) return this.ownLabel;\n const description = this.description();\n if (description !== undefined) return description;\n const own = this.valueFormatter();\n const formatter = new Intl.NumberFormat(\n this.locale() ?? this.appLocale(),\n this.formatOptions() ?? this.defaults.formatOptions,\n );\n return describeSparkline(this.data(), {\n t: this.t,\n format: own ?? ((value) => formatter.format(value)),\n label: this.label(),\n });\n });\n\n constructor() {\n const destroyRef = inject(DestroyRef);\n afterNextRender(() => {\n const handle = observeSparklineBox(this.host, (box) => this.box.set(box));\n destroyRef.onDestroy(() => handle.destroy());\n });\n }\n}\n\n/** Absence has to survive the transform: an unset input defers to the defaults. */\nexport function optionalBoolean(value: unknown): boolean | undefined {\n return value === undefined ? undefined : booleanAttribute(value);\n}\n\nexport function optionalNumber(value: unknown): number | undefined {\n if (value === undefined || value === null || value === '') return undefined;\n return numberAttribute(value);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}