@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,1211 @@
1
+ import { writeToClipboard } from '@slotted/core/clipboard';
2
+ import { createFilter } from '@slotted/core/collection';
3
+ import { createArrowNavigation, createRemovalFocus } from '@slotted/core/focus';
4
+ import { tagsInputMessages } from '@slotted/core/i18n';
5
+ import { getLiveAnnouncer } from '@slotted/core/live-announcer';
6
+ import { createWidthGate } from '@slotted/core/measure';
7
+ import { createCollapse } from '@slotted/core/overflow';
8
+ import { createControllable } from '@slotted/core/state';
9
+ import { constraintVerdict, admitValues, joinValues, splitValues } from '@slotted/core/tags';
10
+ import * as i0 from '@angular/core';
11
+ import { InjectionToken, inject, booleanAttribute, numberAttribute, model, output, input, ElementRef, viewChild, signal, HostAttributeToken, computed, DestroyRef, afterNextRender, afterRenderEffect, untracked, effect, forwardRef, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
12
+ import { NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';
13
+ import { injectMessages, injectLocale } from '@slotted/angular/i18n';
14
+ import { SlGlyph, SlIcon } from '@slotted/angular/icon';
15
+ import { SlField } from '@slotted/angular/field';
16
+
17
+ /**
18
+ * The numbers, and why they are these numbers. The React binding's
19
+ * `TAGS_INPUT_FALLBACK` states the reasoning; the values are the same, and
20
+ * they have to be — an application that renders both bindings would otherwise
21
+ * ship two controls that behave differently under the same name.
22
+ */
23
+ const TAGS_INPUT_FALLBACK = {
24
+ addOnPaste: true,
25
+ allowDuplicates: false,
26
+ clearable: true,
27
+ delimiters: [','],
28
+ disabled: false,
29
+ editable: false,
30
+ fullWidth: true,
31
+ invalid: false,
32
+ invalidValues: 'keep',
33
+ max: null,
34
+ overflow: 'wrap',
35
+ pendingOnBlur: 'commit',
36
+ readOnly: false,
37
+ reorderable: false,
38
+ required: false,
39
+ size: 'md',
40
+ variant: 'outline',
41
+ };
42
+ const TAGS_INPUT_DEFAULTS = new InjectionToken('TAGS_INPUT_DEFAULTS', {
43
+ providedIn: 'root',
44
+ factory: () => TAGS_INPUT_FALLBACK,
45
+ });
46
+ /**
47
+ * The decisions an application takes once. Its words come from the language in
48
+ * force (`provideSlotted`).
49
+ */
50
+ function provideTagsInputDefaults(defaults) {
51
+ return { provide: TAGS_INPUT_DEFAULTS, useValue: { ...TAGS_INPUT_FALLBACK, ...defaults } };
52
+ }
53
+ function injectTagsInputDefaults() {
54
+ return inject(TAGS_INPUT_DEFAULTS);
55
+ }
56
+
57
+ /** The chips in the row, in the order the row holds them. */
58
+ const CHIP_SELECTOR = "[data-part='chips'] > [role='gridcell']:not([data-part='field'])";
59
+ /** The width, in CSS pixels, under which a chip has no room for a word. */
60
+ const NARROW_WIDTH = 120;
61
+ function same(a, b) {
62
+ return a.length === b.length && a.every((value, index) => value === b[index]);
63
+ }
64
+ /** How long the chip that answered a duplicate stays marked: the theme's long step. */
65
+ function longDuration(element) {
66
+ const raw = element.ownerDocument.defaultView
67
+ ?.getComputedStyle(element)
68
+ .getPropertyValue('--slotted-duration-long')
69
+ .trim();
70
+ if (raw === undefined || raw === '')
71
+ return 320;
72
+ const number = Number.parseFloat(raw);
73
+ if (!Number.isFinite(number))
74
+ return 320;
75
+ return raw.endsWith('ms') ? number : number * 1000;
76
+ }
77
+ /**
78
+ * A frame of typed values, with a field that adds more.
79
+ *
80
+ * **The host element is the frame**, as `sl-multi-select`'s is: it carries
81
+ * `data-ui`, and the grid, the chips, the field, the counter and the clear
82
+ * button are its template.
83
+ *
84
+ * **The value is a list of texts, and the text is the label.** There is no
85
+ * collection behind it, which is what separates this family from
86
+ * `multi-select`.
87
+ *
88
+ * **A value that fails is held and shown.** Every value is judged at render —
89
+ * by `validate`, or by the input's own constraints through the browser — and a
90
+ * value that fails wears the danger tone, the alert mark and a description,
91
+ * marks the host, puts `invalidValues` on the form control through the
92
+ * `Validator`, and blocks the native submit through `setCustomValidity`.
93
+ *
94
+ * **What is refused is reported, not dropped.** `valueRefuse` carries the
95
+ * values that did not get in and the cause.
96
+ */
97
+ class SlTagsInput {
98
+ static flag = (given) => given === undefined ? undefined : booleanAttribute(given);
99
+ static count = (given) => given === undefined ? undefined : numberAttribute(given);
100
+ /** The values, in the order the reader gave them. */
101
+ value = model([], /* @ts-ignore */
102
+ ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
103
+ valueChangeRequest = output();
104
+ /** What an unbound `value` starts from, read once. */
105
+ defaultValue = input(undefined, /* @ts-ignore */
106
+ ...(ngDevMode ? [{ debugName: "defaultValue" }] : /* istanbul ignore next */ []));
107
+ /** The characters in the field, which are not yet a value. */
108
+ inputValue = model('', /* @ts-ignore */
109
+ ...(ngDevMode ? [{ debugName: "inputValue" }] : /* istanbul ignore next */ []));
110
+ inputValueChangeRequest = output();
111
+ /** What the family refused, and why. It holds no state and cancels nothing. */
112
+ valueRefuse = output();
113
+ /** What was put on the clipboard, and whether it got there. */
114
+ valueCopy = output();
115
+ ariaLabel = input(undefined, { ...(ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {}), alias: 'aria-label' });
116
+ placeholder = input('', /* @ts-ignore */
117
+ ...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
118
+ name = input(undefined, /* @ts-ignore */
119
+ ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
120
+ form = input(undefined, /* @ts-ignore */
121
+ ...(ngDevMode ? [{ debugName: "form" }] : /* istanbul ignore next */ []));
122
+ type = input('text', /* @ts-ignore */
123
+ ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
124
+ list = input(undefined, /* @ts-ignore */
125
+ ...(ngDevMode ? [{ debugName: "list" }] : /* istanbul ignore next */ []));
126
+ pattern = input(undefined, /* @ts-ignore */
127
+ ...(ngDevMode ? [{ debugName: "pattern" }] : /* istanbul ignore next */ []));
128
+ minLength = input(undefined, { ...(ngDevMode ? { debugName: "minLength" } : /* istanbul ignore next */ {}), transform: SlTagsInput.count });
129
+ maxLength = input(undefined, { ...(ngDevMode ? { debugName: "maxLength" } : /* istanbul ignore next */ {}), transform: SlTagsInput.count });
130
+ inputMode = input(undefined, /* @ts-ignore */
131
+ ...(ngDevMode ? [{ debugName: "inputMode" }] : /* istanbul ignore next */ []));
132
+ autocomplete = input(undefined, /* @ts-ignore */
133
+ ...(ngDevMode ? [{ debugName: "autocomplete" }] : /* istanbul ignore next */ []));
134
+ /** BCP 47, for the comparison the duplicate rule makes. The language in force when absent. */
135
+ locale = input(undefined, /* @ts-ignore */
136
+ ...(ngDevMode ? [{ debugName: "locale" }] : /* istanbul ignore next */ []));
137
+ /** `validateValue` rather than `validate`, which is the Validator's own method. */
138
+ validateValue = input(undefined, /* @ts-ignore */
139
+ ...(ngDevMode ? [{ debugName: "validateValue" }] : /* istanbul ignore next */ []));
140
+ /** Runs before a value is judged. Trim by default. */
141
+ normalize = input(undefined, /* @ts-ignore */
142
+ ...(ngDevMode ? [{ debugName: "normalize" }] : /* istanbul ignore next */ []));
143
+ /** How a paste is split. The default splits on the delimiters and on line breaks. */
144
+ split = input(undefined, /* @ts-ignore */
145
+ ...(ngDevMode ? [{ debugName: "split" }] : /* istanbul ignore next */ []));
146
+ /** The chip's text for a value. */
147
+ formatLabel = input(undefined, /* @ts-ignore */
148
+ ...(ngDevMode ? [{ debugName: "formatLabel" }] : /* istanbul ignore next */ []));
149
+ /** The values the reader may not remove. */
150
+ lockedValues = input([], /* @ts-ignore */
151
+ ...(ngDevMode ? [{ debugName: "lockedValues" }] : /* istanbul ignore next */ []));
152
+ delimiters = input(undefined, /* @ts-ignore */
153
+ ...(ngDevMode ? [{ debugName: "delimiters" }] : /* istanbul ignore next */ []));
154
+ max = input(undefined, { ...(ngDevMode ? { debugName: "max" } : /* istanbul ignore next */ {}), transform: SlTagsInput.count });
155
+ size = input(undefined, /* @ts-ignore */
156
+ ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
157
+ variant = input(undefined, /* @ts-ignore */
158
+ ...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
159
+ overflow = input(undefined, /* @ts-ignore */
160
+ ...(ngDevMode ? [{ debugName: "overflow" }] : /* istanbul ignore next */ []));
161
+ invalidValues = input(undefined, /* @ts-ignore */
162
+ ...(ngDevMode ? [{ debugName: "invalidValues" }] : /* istanbul ignore next */ []));
163
+ pendingOnBlur = input(undefined, /* @ts-ignore */
164
+ ...(ngDevMode ? [{ debugName: "pendingOnBlur" }] : /* istanbul ignore next */ []));
165
+ /**
166
+ * Words laid over the catalog of the language in force, key by key: the
167
+ * clear button, the chips, the counter, the hint, and the sentences the
168
+ * announcer says.
169
+ */
170
+ messages = input(undefined, /* @ts-ignore */
171
+ ...(ngDevMode ? [{ debugName: "messages" }] : /* istanbul ignore next */ []));
172
+ addOnPaste = input(undefined, { ...(ngDevMode ? { debugName: "addOnPaste" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
173
+ allowDuplicates = input(undefined, { ...(ngDevMode ? { debugName: "allowDuplicates" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
174
+ editable = input(undefined, { ...(ngDevMode ? { debugName: "editable" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
175
+ reorderable = input(undefined, { ...(ngDevMode ? { debugName: "reorderable" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
176
+ clearable = input(undefined, { ...(ngDevMode ? { debugName: "clearable" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
177
+ fullWidth = input(undefined, { ...(ngDevMode ? { debugName: "fullWidth" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
178
+ disabled = input(undefined, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
179
+ readOnly = input(undefined, { ...(ngDevMode ? { debugName: "readOnly" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
180
+ required = input(undefined, { ...(ngDevMode ? { debugName: "required" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
181
+ invalid = input(undefined, { ...(ngDevMode ? { debugName: "invalid" } : /* istanbul ignore next */ {}), transform: SlTagsInput.flag });
182
+ defaults = injectTagsInputDefaults();
183
+ /** The family's words in the language in force, with this control's `messages` laid over them. */
184
+ t = injectMessages(tagsInputMessages, this.messages);
185
+ inForceLocale = injectLocale();
186
+ host = inject(ElementRef);
187
+ controlRef = viewChild.required('control', /* @ts-ignore */
188
+ ...(ngDevMode ? [{ debugName: "controlRef" }] : /* istanbul ignore next */ []));
189
+ rowRef = viewChild.required('row', /* @ts-ignore */
190
+ ...(ngDevMode ? [{ debugName: "rowRef" }] : /* istanbul ignore next */ []));
191
+ countRef = viewChild('count', /* @ts-ignore */
192
+ ...(ngDevMode ? [{ debugName: "countRef" }] : /* istanbul ignore next */ []));
193
+ field = inject(SlField, { optional: true });
194
+ identifier = Math.random().toString(36).slice(2, 8);
195
+ ownId = `sl-tags-input-${this.identifier}`;
196
+ hintId = `${this.ownId}-hint`;
197
+ hiddenCount = signal(1, /* @ts-ignore */
198
+ ...(ngDevMode ? [{ debugName: "hiddenCount" }] : /* istanbul ignore next */ []));
199
+ narrow = signal(false, /* @ts-ignore */
200
+ ...(ngDevMode ? [{ debugName: "narrow" }] : /* istanbul ignore next */ []));
201
+ expanded = signal(false, /* @ts-ignore */
202
+ ...(ngDevMode ? [{ debugName: "expanded" }] : /* istanbul ignore next */ []));
203
+ /** The value a refused duplicate is already held under, marked for one long step. */
204
+ current = signal(null, /* @ts-ignore */
205
+ ...(ngDevMode ? [{ debugName: "current" }] : /* istanbul ignore next */ []));
206
+ editingIndex = signal(null, /* @ts-ignore */
207
+ ...(ngDevMode ? [{ debugName: "editingIndex" }] : /* istanbul ignore next */ []));
208
+ editingText = signal('', /* @ts-ignore */
209
+ ...(ngDevMode ? [{ debugName: "editingText" }] : /* istanbul ignore next */ []));
210
+ ring = null;
211
+ removal = null;
212
+ collapse = null;
213
+ gate = null;
214
+ currentTimer = null;
215
+ reverting = false;
216
+ disabledByForm = signal(undefined, /* @ts-ignore */
217
+ ...(ngDevMode ? [{ debugName: "disabledByForm" }] : /* istanbul ignore next */ []));
218
+ hostId = inject(new HostAttributeToken('id'), { optional: true });
219
+ onChange = () => undefined;
220
+ onTouched = () => undefined;
221
+ validatorChange = () => undefined;
222
+ resolvedSize = computed(() => this.size() ?? this.field?.size() ?? this.defaults.size, /* @ts-ignore */
223
+ ...(ngDevMode ? [{ debugName: "resolvedSize" }] : /* istanbul ignore next */ []));
224
+ resolvedVariant = computed(() => this.variant() ?? this.defaults.variant, /* @ts-ignore */
225
+ ...(ngDevMode ? [{ debugName: "resolvedVariant" }] : /* istanbul ignore next */ []));
226
+ resolvedOverflow = computed(() => this.overflow() ?? this.defaults.overflow, /* @ts-ignore */
227
+ ...(ngDevMode ? [{ debugName: "resolvedOverflow" }] : /* istanbul ignore next */ []));
228
+ resolvedInvalidValues = computed(() => this.invalidValues() ?? this.defaults.invalidValues, /* @ts-ignore */
229
+ ...(ngDevMode ? [{ debugName: "resolvedInvalidValues" }] : /* istanbul ignore next */ []));
230
+ resolvedPendingOnBlur = computed(() => this.pendingOnBlur() ?? this.defaults.pendingOnBlur, /* @ts-ignore */
231
+ ...(ngDevMode ? [{ debugName: "resolvedPendingOnBlur" }] : /* istanbul ignore next */ []));
232
+ resolvedClearable = computed(() => this.clearable() ?? this.defaults.clearable, /* @ts-ignore */
233
+ ...(ngDevMode ? [{ debugName: "resolvedClearable" }] : /* istanbul ignore next */ []));
234
+ resolvedFullWidth = computed(() => this.fullWidth() ?? this.defaults.fullWidth, /* @ts-ignore */
235
+ ...(ngDevMode ? [{ debugName: "resolvedFullWidth" }] : /* istanbul ignore next */ []));
236
+ resolvedEditable = computed(() => this.editable() ?? this.defaults.editable, /* @ts-ignore */
237
+ ...(ngDevMode ? [{ debugName: "resolvedEditable" }] : /* istanbul ignore next */ []));
238
+ resolvedReorderable = computed(() => this.reorderable() ?? this.defaults.reorderable, /* @ts-ignore */
239
+ ...(ngDevMode ? [{ debugName: "resolvedReorderable" }] : /* istanbul ignore next */ []));
240
+ resolvedAddOnPaste = computed(() => this.addOnPaste() ?? this.defaults.addOnPaste, /* @ts-ignore */
241
+ ...(ngDevMode ? [{ debugName: "resolvedAddOnPaste" }] : /* istanbul ignore next */ []));
242
+ resolvedAllowDuplicates = computed(() => this.allowDuplicates() ?? this.defaults.allowDuplicates, /* @ts-ignore */
243
+ ...(ngDevMode ? [{ debugName: "resolvedAllowDuplicates" }] : /* istanbul ignore next */ []));
244
+ resolvedDelimiters = computed(() => this.delimiters() ?? this.defaults.delimiters, /* @ts-ignore */
245
+ ...(ngDevMode ? [{ debugName: "resolvedDelimiters" }] : /* istanbul ignore next */ []));
246
+ resolvedMax = computed(() => this.max() ?? this.defaults.max, /* @ts-ignore */
247
+ ...(ngDevMode ? [{ debugName: "resolvedMax" }] : /* istanbul ignore next */ []));
248
+ resolvedDisabled = computed(() => this.disabled() ?? this.disabledByForm() ?? this.field?.disabled() ?? this.defaults.disabled, /* @ts-ignore */
249
+ ...(ngDevMode ? [{ debugName: "resolvedDisabled" }] : /* istanbul ignore next */ []));
250
+ resolvedReadOnly = computed(() => this.readOnly() ?? this.field?.readOnly() ?? this.defaults.readOnly, /* @ts-ignore */
251
+ ...(ngDevMode ? [{ debugName: "resolvedReadOnly" }] : /* istanbul ignore next */ []));
252
+ resolvedRequired = computed(() => this.required() ?? this.field?.required() ?? this.defaults.required, /* @ts-ignore */
253
+ ...(ngDevMode ? [{ debugName: "resolvedRequired" }] : /* istanbul ignore next */ []));
254
+ resolvedInvalid = computed(() => this.invalid() ?? this.field?.invalid() ?? this.defaults.invalid, /* @ts-ignore */
255
+ ...(ngDevMode ? [{ debugName: "resolvedInvalid" }] : /* istanbul ignore next */ []));
256
+ controlId = computed(() => this.hostId ?? this.field?.ids().control ?? this.ownId, /* @ts-ignore */
257
+ ...(ngDevMode ? [{ debugName: "controlId" }] : /* istanbul ignore next */ []));
258
+ describedBy = computed(() => this.field?.describedBy() ?? null, /* @ts-ignore */
259
+ ...(ngDevMode ? [{ debugName: "describedBy" }] : /* istanbul ignore next */ []));
260
+ frozen = computed(() => this.resolvedReadOnly() || this.resolvedDisabled(), /* @ts-ignore */
261
+ ...(ngDevMode ? [{ debugName: "frozen" }] : /* istanbul ignore next */ []));
262
+ collapsing = computed(() => this.resolvedOverflow() === 'collapse' && !this.expanded(), /* @ts-ignore */
263
+ ...(ngDevMode ? [{ debugName: "collapsing" }] : /* istanbul ignore next */ []));
264
+ /** The list has reached `max` and takes nothing more. */
265
+ full = computed(() => {
266
+ const limit = this.resolvedMax();
267
+ return limit !== null && this.value().length >= limit;
268
+ }, /* @ts-ignore */
269
+ ...(ngDevMode ? [{ debugName: "full" }] : /* istanbul ignore next */ []));
270
+ collator = computed(() => createFilter({ locale: this.locale() ?? this.inForceLocale() }), /* @ts-ignore */
271
+ ...(ngDevMode ? [{ debugName: "collator" }] : /* istanbul ignore next */ []));
272
+ /**
273
+ * A detached input carrying the visible one's constraints, rebuilt when they
274
+ * change, so the platform's judgement reads the attributes the template is
275
+ * about to write rather than the ones it wrote last time.
276
+ */
277
+ probe = computed(() => {
278
+ const element = this.host.nativeElement.ownerDocument.createElement('input');
279
+ element.type = this.type();
280
+ const pattern = this.pattern();
281
+ if (pattern !== undefined)
282
+ element.setAttribute('pattern', pattern);
283
+ const minLength = this.minLength();
284
+ if (minLength !== undefined)
285
+ element.minLength = minLength;
286
+ const maxLength = this.maxLength();
287
+ if (maxLength !== undefined)
288
+ element.maxLength = maxLength;
289
+ return element;
290
+ }, /* @ts-ignore */
291
+ ...(ngDevMode ? [{ debugName: "probe" }] : /* istanbul ignore next */ []));
292
+ /**
293
+ * Validity is a function of the value alone, judged at render, so a value a
294
+ * form wrote in with an invalid entry is marked like one the reader typed.
295
+ */
296
+ verdicts = computed(() => this.value().map((entry) => this.judge(entry)), /* @ts-ignore */
297
+ ...(ngDevMode ? [{ debugName: "verdicts" }] : /* istanbul ignore next */ []));
298
+ firstFailure = computed(() => this.verdicts().find((verdict) => !verdict.valid), /* @ts-ignore */
299
+ ...(ngDevMode ? [{ debugName: "firstFailure" }] : /* istanbul ignore next */ []));
300
+ isInvalid = computed(() => {
301
+ const limit = this.resolvedMax();
302
+ return (this.resolvedInvalid() ||
303
+ this.firstFailure() !== undefined ||
304
+ (limit !== null && this.value().length > limit));
305
+ }, /* @ts-ignore */
306
+ ...(ngDevMode ? [{ debugName: "isInvalid" }] : /* istanbul ignore next */ []));
307
+ countText = computed(() => this.t('count', { count: this.value().length }), /* @ts-ignore */
308
+ ...(ngDevMode ? [{ debugName: "countText" }] : /* istanbul ignore next */ []));
309
+ gridLabel = computed(() => {
310
+ const label = this.ariaLabel();
311
+ return label === undefined ? null : this.t('countNamed', { label, count: this.value().length });
312
+ }, /* @ts-ignore */
313
+ ...(ngDevMode ? [{ debugName: "gridLabel" }] : /* istanbul ignore next */ []));
314
+ gridLabelledBy = computed(() => this.ariaLabel() === undefined && this.field ? this.field.ids().label : null, /* @ts-ignore */
315
+ ...(ngDevMode ? [{ debugName: "gridLabelledBy" }] : /* istanbul ignore next */ []));
316
+ hintText = computed(() => this.resolvedEditable() ? this.t('editHint') : this.t('hint'), /* @ts-ignore */
317
+ ...(ngDevMode ? [{ debugName: "hintText" }] : /* istanbul ignore next */ []));
318
+ showClear = computed(() => this.resolvedClearable() &&
319
+ (this.value().some((entry) => !this.isLocked(entry)) || this.inputValue() !== '') &&
320
+ !this.frozen(), /* @ts-ignore */
321
+ ...(ngDevMode ? [{ debugName: "showClear" }] : /* istanbul ignore next */ []));
322
+ counterText = computed(() => {
323
+ const limit = this.resolvedMax();
324
+ if (limit !== null) {
325
+ return this.t('counter', { count: this.value().length, max: limit });
326
+ }
327
+ if (this.narrow() && this.value().length > 0)
328
+ return this.countText();
329
+ return null;
330
+ }, /* @ts-ignore */
331
+ ...(ngDevMode ? [{ debugName: "counterText" }] : /* istanbul ignore next */ []));
332
+ constructor() {
333
+ const destroyRef = inject(DestroyRef);
334
+ afterNextRender(() => this.bindRow());
335
+ /* A value arriving or leaving changes what there is to fit, and which cells
336
+ the ring walks. */
337
+ afterRenderEffect(() => {
338
+ this.value();
339
+ this.collapsing();
340
+ untracked(() => {
341
+ this.ring?.refresh();
342
+ this.collapse?.refresh();
343
+ });
344
+ });
345
+ /**
346
+ * The platform's own gate: while the list holds an invalid value, or more
347
+ * than `max`, the visible input carries the verdict as its custom validity,
348
+ * so a plain form refuses to submit and shows the browser's bubble on the
349
+ * control the reader is looking at.
350
+ */
351
+ afterRenderEffect(() => {
352
+ const failure = this.firstFailure();
353
+ const limit = this.resolvedMax();
354
+ const count = this.value().length;
355
+ const message = failure === undefined
356
+ ? limit !== null && count > limit
357
+ ? this.t('counter', { count, max: limit })
358
+ : ''
359
+ : failure.message || this.t('invalid');
360
+ untracked(() => this.controlRef().nativeElement.setCustomValidity(message));
361
+ });
362
+ /* A Reactive Form is told when what the family judges has changed. */
363
+ effect(() => {
364
+ this.verdicts();
365
+ this.resolvedMax();
366
+ this.resolvedRequired();
367
+ untracked(() => this.validatorChange());
368
+ });
369
+ destroyRef.onDestroy(() => {
370
+ this.ring?.destroy();
371
+ this.removal?.destroy();
372
+ this.collapse?.destroy();
373
+ this.gate?.destroy();
374
+ if (this.currentTimer !== null)
375
+ clearTimeout(this.currentTimer);
376
+ });
377
+ }
378
+ ngOnInit() {
379
+ const seed = this.defaultValue();
380
+ if (seed === undefined || this.value().length > 0)
381
+ return;
382
+ this.value.set([...seed]);
383
+ }
384
+ trackChip(index, value) {
385
+ /* The value, and its ordinal among equal values when duplicates are
386
+ allowed, so a reorder keeps the chip — and the focus on it. */
387
+ let times = 0;
388
+ const held = this.value();
389
+ for (let at = 0; at < index; at += 1)
390
+ if (held[at] === value)
391
+ times += 1;
392
+ return times === 0 ? value : `${value}${times}`;
393
+ }
394
+ labelFor(value) {
395
+ const format = this.formatLabel();
396
+ return format === undefined ? value : format(value);
397
+ }
398
+ isLocked(value) {
399
+ return this.lockedValues().includes(value);
400
+ }
401
+ chipFrozen(value) {
402
+ return this.frozen() || this.isLocked(value);
403
+ }
404
+ messageId(index) {
405
+ return `${this.ownId}-message-${index}`;
406
+ }
407
+ messageFor(index) {
408
+ const verdict = this.verdicts()[index];
409
+ if (verdict === undefined || verdict.valid)
410
+ return null;
411
+ return verdict.message || this.t('invalid');
412
+ }
413
+ removeLabelFor(value) {
414
+ return this.t('remove', { label: this.labelFor(value) });
415
+ }
416
+ chipLabel(value, index) {
417
+ if (!this.resolvedReorderable())
418
+ return null;
419
+ return this.t('reorder', {
420
+ label: this.labelFor(value),
421
+ position: index + 1,
422
+ count: this.value().length,
423
+ });
424
+ }
425
+ judge(text) {
426
+ const validate = this.validateValue();
427
+ if (validate === undefined)
428
+ return constraintVerdict(this.probe(), text);
429
+ const answer = validate(text);
430
+ if (answer === true)
431
+ return { valid: true };
432
+ return { valid: false, message: answer === false ? '' : answer };
433
+ }
434
+ focus() {
435
+ this.controlRef().nativeElement.focus({ preventScroll: true });
436
+ }
437
+ announce(message) {
438
+ if (message === '')
439
+ return;
440
+ getLiveAnnouncer(this.host.nativeElement.ownerDocument).announce(message, { repeat: true });
441
+ }
442
+ setInputValue(next, reason, source) {
443
+ if (next === this.inputValue())
444
+ return;
445
+ const state = createControllable({
446
+ initial: this.inputValue(),
447
+ onRequest: (request) => this.inputValueChangeRequest.emit(request),
448
+ });
449
+ if (state.request(next, reason, source))
450
+ this.inputValue.set(next);
451
+ }
452
+ /** One request for one transition, whatever moved the list. */
453
+ commit(next, reason, source) {
454
+ if (same(next, this.value()))
455
+ return false;
456
+ const state = createControllable({
457
+ initial: this.value(),
458
+ onRequest: (request) => this.valueChangeRequest.emit(request),
459
+ });
460
+ if (!state.request(next, reason, source))
461
+ return false;
462
+ this.value.set(next);
463
+ this.onChange(next);
464
+ this.onTouched();
465
+ return true;
466
+ }
467
+ /**
468
+ * The one door into the list. Every candidate runs the sequence
469
+ * `@slotted/core/tags` states — normalise, judge, deduplicate, cap — and each
470
+ * refusal is reported under its cause rather than dropped.
471
+ */
472
+ admit(candidates, source, replacing) {
473
+ const normalize = this.normalize() ?? ((text) => text.trim());
474
+ const result = admitValues({
475
+ values: this.value(),
476
+ candidates,
477
+ max: this.resolvedMax(),
478
+ allowDuplicates: this.resolvedAllowDuplicates(),
479
+ invalidValues: this.resolvedInvalidValues(),
480
+ normalize,
481
+ judge: (text) => this.judge(text),
482
+ equals: this.collator().equals,
483
+ ...(replacing === undefined ? {} : { replacing }),
484
+ });
485
+ if (result.added.length > 0 && this.commit(result.next, 'submit', source)) {
486
+ const last = result.added[result.added.length - 1];
487
+ const verdict = this.judge(last);
488
+ const label = this.labelFor(last);
489
+ const count = result.next.length;
490
+ this.announce(verdict.valid
491
+ ? this.t('added', { label, count })
492
+ : this.t('addedInvalid', { label, count, reason: verdict.message || this.t('invalid') }));
493
+ }
494
+ for (const cause of ['duplicate', 'limit', 'invalid']) {
495
+ if (result.refused[cause].length === 0)
496
+ continue;
497
+ this.valueRefuse.emit({ values: result.refused[cause], cause });
498
+ }
499
+ if (result.existing.length > 0) {
500
+ const existing = result.existing[0];
501
+ this.markCurrent(existing);
502
+ this.announce(this.t('duplicate', { label: this.labelFor(existing) }));
503
+ queueMicrotask(() => this.focusChip(existing));
504
+ }
505
+ const limit = this.resolvedMax();
506
+ if (result.refused.limit.length > 0 && limit !== null) {
507
+ this.announce(this.t('counter', { count: limit, max: limit }));
508
+ }
509
+ if (result.refused.invalid.length > 0)
510
+ this.announce(this.t('invalid'));
511
+ return result;
512
+ }
513
+ /** The chip that answered a duplicate stays marked for one long step. */
514
+ markCurrent(value) {
515
+ this.current.set(value);
516
+ if (this.currentTimer !== null)
517
+ clearTimeout(this.currentTimer);
518
+ this.currentTimer = setTimeout(() => {
519
+ this.current.set(null);
520
+ this.currentTimer = null;
521
+ }, longDuration(this.host.nativeElement));
522
+ }
523
+ remove(index, source) {
524
+ const held = this.value();
525
+ const target = held[index];
526
+ if (target === undefined || this.isLocked(target))
527
+ return;
528
+ const next = held.filter((_, at) => at !== index);
529
+ if (this.commit(next, 'remove', source)) {
530
+ this.announce(this.t('removed', { label: this.labelFor(target), count: next.length }));
531
+ }
532
+ }
533
+ clear(source) {
534
+ const kept = this.value().filter((entry) => this.isLocked(entry));
535
+ this.commit(kept, 'clear', source);
536
+ this.setInputValue('', 'clear', source);
537
+ }
538
+ /** Reorder, and the only shape it has: one value moving to one index. */
539
+ move(from, to, source) {
540
+ const held = this.value();
541
+ if (from < 0 || from >= held.length)
542
+ return;
543
+ const target = Math.min(Math.max(to, 0), held.length - 1);
544
+ if (target === from)
545
+ return;
546
+ const next = [...held];
547
+ const [moved] = next.splice(from, 1);
548
+ next.splice(target, 0, moved);
549
+ if (!this.commit(next, 'keyboard', source))
550
+ return;
551
+ this.announce(this.t('reorder', {
552
+ label: this.labelFor(moved),
553
+ position: target + 1,
554
+ count: next.length,
555
+ }));
556
+ /* The chip travelled with the reader's focus; the ring has to be told the
557
+ cells moved under it. */
558
+ queueMicrotask(() => {
559
+ this.ring?.refresh();
560
+ this.chips()[target]?.focus({ preventScroll: true });
561
+ });
562
+ }
563
+ async copy(values) {
564
+ if (values.length === 0)
565
+ return;
566
+ const outcome = await writeToClipboard(joinValues(values, this.resolvedDelimiters()), this.host.nativeElement.ownerDocument);
567
+ this.valueCopy.emit({ values, outcome });
568
+ if (outcome !== 'refused') {
569
+ this.announce(this.t('copied', { count: values.length }));
570
+ }
571
+ }
572
+ setValue(values, reason = 'programmatic') {
573
+ this.commit([...values], reason);
574
+ }
575
+ chips() {
576
+ return [...this.host.nativeElement.querySelectorAll(CHIP_SELECTOR)];
577
+ }
578
+ focusChip(value) {
579
+ const chip = this.chips().find((candidate) => candidate.dataset['value'] === value);
580
+ chip?.focus({ preventScroll: true });
581
+ }
582
+ splitText(text) {
583
+ const split = this.split();
584
+ return split === undefined ? splitValues(text, this.resolvedDelimiters()) : split(text);
585
+ }
586
+ /** The typed text, committed as one or several values. */
587
+ commitText(source) {
588
+ const text = this.inputValue();
589
+ if (text.trim() === '')
590
+ return false;
591
+ this.admit(this.splitText(text), source);
592
+ this.setInputValue('', 'submit', source);
593
+ return true;
594
+ }
595
+ onInput(event) {
596
+ this.setInputValue(event.target.value, 'keyboard', event);
597
+ }
598
+ onEditInput(event) {
599
+ this.editingText.set(event.target.value);
600
+ }
601
+ onEditKeyDown(index, event) {
602
+ if (event.key === 'Enter') {
603
+ event.preventDefault();
604
+ this.commitEdit(index, event);
605
+ return;
606
+ }
607
+ if (event.key === 'Escape') {
608
+ event.preventDefault();
609
+ /* The field blurs on the way out, and the blur must not commit what the
610
+ key just reverted. */
611
+ this.reverting = true;
612
+ this.editingIndex.set(null);
613
+ queueMicrotask(() => this.chips()[index]?.focus({ preventScroll: true }));
614
+ }
615
+ }
616
+ commitEdit(index, event) {
617
+ if (this.reverting) {
618
+ this.reverting = false;
619
+ return;
620
+ }
621
+ if (this.editingIndex() !== index)
622
+ return;
623
+ const text = this.editingText();
624
+ const held = this.value()[index];
625
+ this.editingIndex.set(null);
626
+ if (text.trim() !== '' && text !== held)
627
+ this.admit([text], event, index);
628
+ queueMicrotask(() => this.chips()[index]?.focus({ preventScroll: true }));
629
+ }
630
+ beginEdit(value, index) {
631
+ this.reverting = false;
632
+ this.editingText.set(value);
633
+ this.editingIndex.set(index);
634
+ queueMicrotask(() => {
635
+ this.chips()[index]?.querySelector('input')?.focus({ preventScroll: true });
636
+ });
637
+ }
638
+ onChipDoubleClick(value, index) {
639
+ if (this.chipFrozen(value) || !this.resolvedEditable())
640
+ return;
641
+ this.beginEdit(value, index);
642
+ }
643
+ onChipKeyDown(value, index, event) {
644
+ if (event.defaultPrevented)
645
+ return;
646
+ const meta = event.ctrlKey || event.metaKey;
647
+ const frozen = this.chipFrozen(value);
648
+ if (meta && (event.key === 'c' || event.key === 'C')) {
649
+ event.preventDefault();
650
+ void this.copy([value]);
651
+ return;
652
+ }
653
+ if (meta && (event.key === 'x' || event.key === 'X')) {
654
+ if (frozen)
655
+ return;
656
+ event.preventDefault();
657
+ void this.copy([value]);
658
+ this.remove(index, event);
659
+ return;
660
+ }
661
+ switch (event.key) {
662
+ case 'Delete':
663
+ case 'Backspace':
664
+ if (frozen)
665
+ return;
666
+ event.preventDefault();
667
+ this.remove(index, event);
668
+ return;
669
+ case 'Enter':
670
+ if (frozen || !this.resolvedEditable())
671
+ return;
672
+ event.preventDefault();
673
+ this.beginEdit(value, index);
674
+ return;
675
+ case 'Escape':
676
+ event.preventDefault();
677
+ this.focus();
678
+ return;
679
+ default:
680
+ break;
681
+ }
682
+ /* Reorder: `Alt` and an arrow, following the writing direction. */
683
+ if (this.resolvedReorderable() && event.altKey && !frozen) {
684
+ const target = event.currentTarget;
685
+ const rtl = target.ownerDocument.defaultView?.getComputedStyle(target).direction === 'rtl';
686
+ const forward = rtl ? 'ArrowLeft' : 'ArrowRight';
687
+ const back = rtl ? 'ArrowRight' : 'ArrowLeft';
688
+ const count = this.value().length;
689
+ const to = event.key === forward
690
+ ? index + 1
691
+ : event.key === back
692
+ ? index - 1
693
+ : event.key === 'Home'
694
+ ? 0
695
+ : event.key === 'End'
696
+ ? count - 1
697
+ : null;
698
+ if (to !== null) {
699
+ event.preventDefault();
700
+ this.move(index, to, event);
701
+ return;
702
+ }
703
+ }
704
+ /* A printable character returns to the field and types itself there. */
705
+ if (event.key.length === 1 && !meta && !event.altKey)
706
+ this.focus();
707
+ }
708
+ onKeyDown(event) {
709
+ if (this.resolvedDisabled())
710
+ return;
711
+ const meta = event.ctrlKey || event.metaKey;
712
+ if (!this.frozen() && this.resolvedDelimiters().includes(event.key) && !event.altKey && !meta) {
713
+ event.preventDefault();
714
+ this.commitText(event);
715
+ return;
716
+ }
717
+ switch (event.key) {
718
+ case 'Enter':
719
+ /* With text, commits and never submits; with none, the platform's
720
+ implicit submission is left alone. */
721
+ if (this.frozen())
722
+ return;
723
+ if (this.commitText(event))
724
+ event.preventDefault();
725
+ return;
726
+ case 'Escape':
727
+ if (this.inputValue() === '')
728
+ return;
729
+ event.preventDefault();
730
+ this.setInputValue('', 'clear', event);
731
+ return;
732
+ case 'Backspace': {
733
+ /* §6's rule: from an empty field the first press moves focus to the
734
+ last chip the reader may remove and removes nothing; the second
735
+ press — on the chip — removes it. */
736
+ if (this.inputValue() !== '' || this.frozen())
737
+ return;
738
+ const control = event.currentTarget;
739
+ if (control.selectionStart !== 0)
740
+ return;
741
+ const last = this.chips()
742
+ .reverse()
743
+ .find((chip) => !chip.hasAttribute('data-disabled') && !chip.hasAttribute('data-count'));
744
+ if (last === undefined)
745
+ return;
746
+ event.preventDefault();
747
+ last.focus({ preventScroll: true });
748
+ return;
749
+ }
750
+ case 'c':
751
+ case 'C':
752
+ if (!meta || this.inputValue() !== '' || this.value().length === 0)
753
+ return;
754
+ event.preventDefault();
755
+ void this.copy(this.value());
756
+ return;
757
+ default:
758
+ break;
759
+ }
760
+ }
761
+ /** A paste that carries several values, split by the same rule the key reads. */
762
+ onPaste(event) {
763
+ if (!this.resolvedAddOnPaste() || this.frozen())
764
+ return;
765
+ const text = event.clipboardData?.getData('text') ?? '';
766
+ const parts = this.splitText(text);
767
+ if (parts.length < 2)
768
+ return;
769
+ event.preventDefault();
770
+ this.admit(parts, event);
771
+ this.setInputValue('', 'submit', event);
772
+ }
773
+ onBlur(event) {
774
+ this.onTouched();
775
+ const next = event.relatedTarget;
776
+ if (next instanceof Node && this.host.nativeElement.contains(next))
777
+ return;
778
+ if (this.frozen())
779
+ return;
780
+ const policy = this.resolvedPendingOnBlur();
781
+ if (policy === 'commit')
782
+ this.commitText(event);
783
+ else if (policy === 'discard')
784
+ this.setInputValue('', 'blur', event);
785
+ }
786
+ /* The collapsed row opens while focus is anywhere inside the frame. */
787
+ onFocusIn() {
788
+ this.expanded.set(true);
789
+ }
790
+ onFocusOut(event) {
791
+ const next = event.relatedTarget;
792
+ if (next instanceof Node && this.host.nativeElement.contains(next))
793
+ return;
794
+ this.expanded.set(false);
795
+ }
796
+ onClear(event) {
797
+ this.clear(event);
798
+ this.focus();
799
+ }
800
+ onRemoveClick(index, event) {
801
+ event.stopPropagation();
802
+ this.remove(index, event);
803
+ }
804
+ bindRow() {
805
+ const row = this.rowRef().nativeElement;
806
+ this.ring = createArrowNavigation(row, {
807
+ itemSelector: `${CHIP_SELECTOR}, [data-part='field'] > [data-part='input']`,
808
+ loop: false,
809
+ /* The field keeps the caret keys while there is anything to move the
810
+ caret through, and gives them up when the text is empty. */
811
+ ownedKeys: (item) => item instanceof HTMLInputElement && item.value !== ''
812
+ ? ['ArrowLeft', 'ArrowRight', 'Home', 'End']
813
+ : [],
814
+ });
815
+ this.removal = createRemovalFocus(row, {
816
+ fallback: () => this.controlRef().nativeElement,
817
+ itemSelector: CHIP_SELECTOR,
818
+ });
819
+ this.gate = createWidthGate(this.host.nativeElement, {
820
+ at: NARROW_WIDTH,
821
+ onChange: (narrow) => this.narrow.set(narrow),
822
+ });
823
+ this.collapse = createCollapse(row, {
824
+ collapsible: () => this.collapsing(),
825
+ onChange: (units) => this.hiddenCount.set(Math.max(units.length, 1)),
826
+ trigger: () => this.countRef()?.nativeElement ?? null,
827
+ /* The count is the trigger, not a unit. */
828
+ units: () => [...row.querySelectorAll(CHIP_SELECTOR)].filter((unit) => !unit.hasAttribute('data-count')),
829
+ });
830
+ }
831
+ writeValue(value) {
832
+ this.value.set(value === null ? [] : [...value]);
833
+ }
834
+ registerOnChange(fn) {
835
+ this.onChange = fn;
836
+ }
837
+ registerOnTouched(fn) {
838
+ this.onTouched = fn;
839
+ }
840
+ registerOnValidatorChange(fn) {
841
+ this.validatorChange = fn;
842
+ }
843
+ setDisabledState(isDisabled) {
844
+ this.disabledByForm.set(isDisabled);
845
+ }
846
+ /**
847
+ * Four validities the family owns: a required control holding nothing, a
848
+ * list over its limit, a list holding a value twice where duplicates are
849
+ * refused, and — the one no other family reports — the values in the list
850
+ * that failed the judgement, by name, so a form can say which.
851
+ */
852
+ validate() {
853
+ const held = this.value();
854
+ if (this.resolvedRequired() && held.length === 0)
855
+ return { required: true };
856
+ const limit = this.resolvedMax();
857
+ if (limit !== null && held.length > limit) {
858
+ return { tooMany: { max: limit, actual: held.length } };
859
+ }
860
+ const failed = held.filter((_, index) => this.verdicts()[index]?.valid === false);
861
+ if (failed.length > 0)
862
+ return { invalidValues: failed };
863
+ if (!this.resolvedAllowDuplicates() && new Set(held).size !== held.length) {
864
+ return { duplicate: true };
865
+ }
866
+ return null;
867
+ }
868
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlTagsInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
869
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlTagsInput, isStandalone: true, selector: "sl-tags-input", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, defaultValue: { classPropertyName: "defaultValue", publicName: "defaultValue", isSignal: true, isRequired: false, transformFunction: null }, inputValue: { classPropertyName: "inputValue", publicName: "inputValue", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, list: { classPropertyName: "list", publicName: "list", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, inputMode: { classPropertyName: "inputMode", publicName: "inputMode", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, locale: { classPropertyName: "locale", publicName: "locale", isSignal: true, isRequired: false, transformFunction: null }, validateValue: { classPropertyName: "validateValue", publicName: "validateValue", isSignal: true, isRequired: false, transformFunction: null }, normalize: { classPropertyName: "normalize", publicName: "normalize", isSignal: true, isRequired: false, transformFunction: null }, split: { classPropertyName: "split", publicName: "split", isSignal: true, isRequired: false, transformFunction: null }, formatLabel: { classPropertyName: "formatLabel", publicName: "formatLabel", isSignal: true, isRequired: false, transformFunction: null }, lockedValues: { classPropertyName: "lockedValues", publicName: "lockedValues", isSignal: true, isRequired: false, transformFunction: null }, delimiters: { classPropertyName: "delimiters", publicName: "delimiters", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, overflow: { classPropertyName: "overflow", publicName: "overflow", isSignal: true, isRequired: false, transformFunction: null }, invalidValues: { classPropertyName: "invalidValues", publicName: "invalidValues", isSignal: true, isRequired: false, transformFunction: null }, pendingOnBlur: { classPropertyName: "pendingOnBlur", publicName: "pendingOnBlur", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null }, addOnPaste: { classPropertyName: "addOnPaste", publicName: "addOnPaste", isSignal: true, isRequired: false, transformFunction: null }, allowDuplicates: { classPropertyName: "allowDuplicates", publicName: "allowDuplicates", isSignal: true, isRequired: false, transformFunction: null }, editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, reorderable: { classPropertyName: "reorderable", publicName: "reorderable", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, fullWidth: { classPropertyName: "fullWidth", publicName: "fullWidth", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", valueChangeRequest: "valueChangeRequest", inputValue: "inputValueChange", inputValueChangeRequest: "inputValueChangeRequest", valueRefuse: "valueRefuse", valueCopy: "valueCopy" }, host: { attributes: { "data-ui": "tags-input", "data-part": "root" }, listeners: { "focusin": "onFocusIn()", "focusout": "onFocusOut($event)" }, properties: { "attr.data-size": "resolvedSize()", "attr.data-variant": "resolvedVariant()", "attr.data-overflow": "resolvedOverflow()", "attr.data-full-width": "resolvedFullWidth() ? '' : null", "attr.data-disabled": "resolvedDisabled() ? '' : null", "attr.data-readonly": "resolvedReadOnly() ? '' : null", "attr.data-invalid": "isInvalid() ? '' : null", "attr.data-required": "resolvedRequired() ? '' : null", "attr.data-complete": "full() ? '' : null", "attr.data-narrow": "narrow() ? '' : null", "attr.data-expanded": "resolvedOverflow() === 'collapse' && expanded() ? '' : null" } }, providers: [
870
+ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SlTagsInput), multi: true },
871
+ { provide: NG_VALIDATORS, useExisting: forwardRef(() => SlTagsInput), multi: true },
872
+ ], viewQueries: [{ propertyName: "controlRef", first: true, predicate: ["control"], descendants: true, isSignal: true }, { propertyName: "rowRef", first: true, predicate: ["row"], descendants: true, isSignal: true }, { propertyName: "countRef", first: true, predicate: ["count"], descendants: true, isSignal: true }], exportAs: ["slTagsInput"], ngImport: i0, template: `
873
+ <div
874
+ data-part="control"
875
+ role="grid"
876
+ [attr.aria-label]="gridLabel()"
877
+ [attr.aria-labelledby]="gridLabelledBy()"
878
+ >
879
+ <div
880
+ data-part="chips"
881
+ role="row"
882
+ #row
883
+ [attr.aria-label]="countText()"
884
+ [attr.aria-describedby]="hintId"
885
+ >
886
+ @for (chip of value(); track trackChip(index, chip); let index = $index) {
887
+ @if (editingIndex() === index) {
888
+ <span
889
+ role="gridcell"
890
+ tabindex="-1"
891
+ data-ui="tag"
892
+ data-part="root"
893
+ data-size="sm"
894
+ data-variant="soft"
895
+ [attr.data-value]="chip"
896
+ >
897
+ <span data-part="body">
898
+ <input
899
+ type="text"
900
+ [attr.aria-label]="labelFor(chip)"
901
+ [value]="editingText()"
902
+ [size]="chip.length || 1"
903
+ (input)="onEditInput($event)"
904
+ (blur)="commitEdit(index, $event)"
905
+ (keydown)="onEditKeyDown(index, $event)"
906
+ />
907
+ </span>
908
+ </span>
909
+ } @else {
910
+ <span
911
+ role="gridcell"
912
+ tabindex="-1"
913
+ data-ui="tag"
914
+ data-part="root"
915
+ data-size="sm"
916
+ data-variant="soft"
917
+ [attr.data-value]="chip"
918
+ [attr.data-disabled]="isLocked(chip) || resolvedDisabled() ? '' : null"
919
+ [attr.data-invalid]="messageFor(index) === null ? null : ''"
920
+ [attr.data-tone]="messageFor(index) === null ? null : 'danger'"
921
+ [attr.data-current]="current() === chip ? '' : null"
922
+ [attr.aria-invalid]="messageFor(index) === null ? null : true"
923
+ [attr.aria-describedby]="messageFor(index) === null ? null : messageId(index)"
924
+ [attr.aria-label]="chipLabel(chip, index)"
925
+ [attr.title]="messageFor(index)"
926
+ (keydown)="onChipKeyDown(chip, index, $event)"
927
+ (dblclick)="onChipDoubleClick(chip, index)"
928
+ >
929
+ <span data-part="body">
930
+ @if (messageFor(index); as message) {
931
+ <span data-part="start"
932
+ ><span slIcon><svg slGlyph name="circle-alert"></svg></span
933
+ ></span>
934
+ }
935
+ <span data-part="label">{{ labelFor(chip) }}</span>
936
+ </span>
937
+ @if (messageFor(index); as message) {
938
+ <span data-part="message" [id]="messageId(index)">{{ message }}</span>
939
+ }
940
+ @if (!chipFrozen(chip)) {
941
+ <button
942
+ type="button"
943
+ tabindex="-1"
944
+ data-part="remove"
945
+ [attr.aria-label]="removeLabelFor(chip)"
946
+ (click)="onRemoveClick(index, $event)"
947
+ >
948
+ <span slIcon><svg slGlyph name="x"></svg></span>
949
+ </button>
950
+ }
951
+ </span>
952
+ }
953
+ }
954
+ @if (collapsing()) {
955
+ <span
956
+ #count
957
+ hidden
958
+ role="gridcell"
959
+ tabindex="-1"
960
+ data-count
961
+ data-ui="tag"
962
+ data-part="root"
963
+ data-size="sm"
964
+ data-variant="outline"
965
+ (click)="focus()"
966
+ >
967
+ <span data-part="body">
968
+ <span data-part="label">+{{ hiddenCount() }}</span>
969
+ </span>
970
+ </span>
971
+ }
972
+ <span data-part="field" role="gridcell">
973
+ <input
974
+ #control
975
+ data-part="input"
976
+ [type]="type()"
977
+ [id]="controlId()"
978
+ [value]="inputValue()"
979
+ [disabled]="resolvedDisabled()"
980
+ [readOnly]="resolvedReadOnly()"
981
+ [required]="resolvedRequired() && value().length === 0"
982
+ [placeholder]="placeholder()"
983
+ [attr.name]="null"
984
+ [attr.list]="list() ?? null"
985
+ [attr.pattern]="pattern() ?? null"
986
+ [attr.minlength]="minLength() ?? null"
987
+ [attr.maxlength]="maxLength() ?? null"
988
+ [attr.inputmode]="inputMode() ?? null"
989
+ [attr.autocomplete]="autocomplete() ?? null"
990
+ [attr.aria-label]="ariaLabel() ?? null"
991
+ [attr.aria-describedby]="describedBy()"
992
+ [attr.aria-invalid]="isInvalid() ? true : null"
993
+ (input)="onInput($event)"
994
+ (keydown)="onKeyDown($event)"
995
+ (paste)="onPaste($event)"
996
+ (blur)="onBlur($event)"
997
+ />
998
+ </span>
999
+ </div>
1000
+ </div>
1001
+
1002
+ @if (counterText(); as counter) {
1003
+ <span data-part="counter" aria-hidden="true">{{ counter }}</span>
1004
+ }
1005
+ @if (showClear()) {
1006
+ <button
1007
+ type="button"
1008
+ data-part="clear"
1009
+ [attr.aria-label]="t('clear')"
1010
+ (click)="onClear($event)"
1011
+ >
1012
+ <span slIcon><svg slGlyph name="x"></svg></span>
1013
+ </button>
1014
+ }
1015
+ <span data-part="hint" [id]="hintId">{{ hintText() }}</span>
1016
+
1017
+ <!--
1018
+ One hidden input per value, all under the same name: that is how a plain
1019
+ FormData receives several values under one key.
1020
+ -->
1021
+ @if (name(); as submissionName) {
1022
+ @for (held of value(); track trackChip(index, held); let index = $index) {
1023
+ <input type="hidden" [name]="submissionName" [attr.form]="form() ?? null" [value]="held" />
1024
+ }
1025
+ }
1026
+ `, isInline: true, styles: ["@layer slotted.components{[data-ui=tags-input][data-part=root]{--_font-size: var(--slotted-control-font-size-md, 13px);--_height: var(--slotted-control-height-md, 34px);--_padding-inline: var(--slotted-control-padding-inline-md, 13px);--_gap: var(--slotted-control-gap-md, 8px);--_icon-floor: var(--slotted-tags-input-icon-size-min, 14px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_action-size: var( --slotted-tags-input-action-size, min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) );--_row-air: var(--slotted-space-1, .125rem);--_inner-size: var(--slotted-control-inner-size-md, 24px);--_row-size: var(--_inner-size);--_row-gap: var(--slotted-space-2, .25rem);align-items:center;background-color:var(--slotted-tags-input-background, var(--slotted-control-surface, Field));border:var(--slotted-control-border-width, 1px) solid var(--slotted-tags-input-border-color, var(--slotted-control-border-color, ButtonBorder));border-radius:var(--slotted-tags-input-radius, var(--slotted-control-radius, 4px));box-shadow:var(--slotted-tags-input-shadow, var(--slotted-control-shadow, none));box-sizing:border-box;color:var(--slotted-tags-input-color, var(--slotted-text, CanvasText));display:flex;font-family:var(--slotted-control-font-family, system-ui, sans-serif);font-size:var(--_font-size);gap:var(--slotted-space-1, .125rem);inline-size:100%;min-block-size:var(--_height);min-inline-size:0;padding-inline-start:var(--_padding-inline);padding-inline-end:max(0px,calc(var(--_padding-inline) - (var(--_action-size) - var(--_icon-size)) / 2));position:relative;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),border-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),box-shadow var(--slotted-control-transition-duration) var(--slotted-control-transition-easing)}[data-ui=tags-input][data-part=root]:not([data-full-width]){inline-size:auto}[data-ui=tags-input]>[data-part=control]{display:flex;flex:1 1 auto;min-inline-size:0;align-self:stretch}[data-ui=tags-input]>[data-part=control]+*{margin-inline-start:var(--_row-gap)}[data-ui=tags-input] [data-part=chips]{align-content:safe center;align-items:center;box-sizing:border-box;column-gap:var(--_row-gap);display:flex;flex:1 1 auto;flex-wrap:wrap;min-inline-size:0;padding-block:var(--_row-air);padding-inline:var(--_row-air);margin-inline:calc(-1 * var(--_row-air));row-gap:var(--_row-gap);max-block-size:calc(3 * var(--_row-size) + 2 * var(--_row-gap) + 2 * var(--_row-air));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}[data-ui=tags-input] [data-part=chips]::-webkit-scrollbar{display:none}[data-ui=tags-input][data-overflow=collapse]:not([data-expanded]) [data-part=chips]{flex-wrap:nowrap;max-block-size:none;overflow:hidden}[data-ui=tags-input][data-overflow=collapse][data-expanded] [data-part=chips]>[data-count]{display:none}[data-ui=tags-input] [data-part=chips] input:not([data-part=input]){background-color:transparent;border:0;color:inherit;font:inherit;min-inline-size:0;outline:none;padding:0}[data-ui=tags-input] [data-part=chips]>:not([data-part=field]){flex:0 0 auto;max-inline-size:100%;min-block-size:var(--_row-size);min-inline-size:0}[data-ui=tags-input] [data-part=chips]{--slotted-control-inner-size: var(--_inner-size)}[data-ui=tags-input] [data-part=field]{align-items:center;display:flex;flex:1 1 var(--slotted-tags-input-field-basis, 4rem);min-block-size:var(--_row-size);min-inline-size:var(--slotted-tags-input-field-min, 2.5rem)}[data-ui=tags-input] [data-part=input]{background-color:transparent;border:0;color:inherit;flex:1 1 auto;font:inherit;outline:none;padding:0;min-inline-size:0;text-overflow:ellipsis}[data-ui=tags-input] [data-part=input]::placeholder{color:var(--slotted-tags-input-placeholder-color, var(--slotted-text-muted, GrayText));text-overflow:ellipsis}[data-ui=tags-input] [data-part=input]:autofill{box-shadow:inset 0 0 0 100px var(--slotted-tags-input-autofill-background, var(--slotted-tone-accent-surface));-webkit-text-fill-color:var(--slotted-tags-input-color, var(--slotted-text, CanvasText))}[data-ui=tags-input] [data-part=chips]>:not([data-part=field]):focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-1 * var(--slotted-focus-ring-width, 2px))}[data-ui=tags-input] [data-part=chips]>[data-current]{--slotted-tag-border-color: var( --slotted-tags-input-current-border-color, var(--slotted-tone-accent-border) )}[data-ui=tags-input] [data-part=chips]>[data-count]{cursor:pointer;flex:none}[data-ui=tags-input]>[data-part=counter]{align-self:center;color:var(--slotted-tags-input-counter-color, var(--slotted-text-muted, GrayText));flex:none;font-size:var(--slotted-font-size-xs, .75rem);font-variant-numeric:tabular-nums;line-height:var(--slotted-line-height-sm, 1.45);padding-inline:var(--slotted-space-1, .125rem);unicode-bidi:plaintext;white-space:nowrap}[data-ui=tags-input][data-complete]>[data-part=counter]{color:var(--slotted-tags-input-counter-complete-color, var(--slotted-tone-accent-text));font-weight:var(--slotted-font-weight-medium, 500)}[data-ui=tags-input][data-narrow] [data-part=chips]>:not([data-part=field]){display:none}[data-ui=tags-input] :is([data-part=message],[data-part=hint]){block-size:1px;border:0;clip-path:inset(50%);inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap}[data-ui=tags-input]>[data-part=clear]{align-items:center;align-self:center;appearance:none;background-color:transparent;block-size:var(--_action-size);border:0;border-radius:var(--slotted-tags-input-radius, var(--slotted-control-radius, 4px));color:var(--slotted-tags-input-action-color, var(--slotted-text-muted, GrayText));cursor:pointer;display:inline-flex;flex:0 0 auto;inline-size:var(--_action-size);justify-content:center;padding:0;position:relative;touch-action:manipulation;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing);-webkit-tap-highlight-color:transparent}[data-ui=tags-input]>[data-part=clear]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui=tags-input]>[data-part=clear]:after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2));inset-inline-start:0}}[data-ui=tags-input]>[data-part=clear]{--slotted-icon-size: var(--_icon-size)}[data-ui=tags-input][data-part=root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_height: var(--slotted-control-height-sm, 30px);--_inner-size: var(--slotted-control-inner-size-sm, 22px);--_padding-inline: var(--slotted-control-padding-inline-sm, 10px);--_gap: var(--slotted-control-gap-sm, 6px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-sm, 14px))}[data-ui=tags-input][data-part=root][data-size=md]{--_font-size: var(--slotted-control-font-size-md, 13px);--_height: var(--slotted-control-height-md, 34px);--_padding-inline: var(--slotted-control-padding-inline-md, 13px);--_gap: var(--slotted-control-gap-md, 8px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_inner-size: var(--slotted-control-inner-size-md, 24px)}[data-ui=tags-input][data-part=root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_height: var(--slotted-control-height-lg, 38px);--_inner-size: var(--slotted-control-inner-size-lg, 28px);--_padding-inline: var(--slotted-control-padding-inline-lg, 16px);--_gap: var(--slotted-control-gap-lg, 8px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-lg, 18px))}[data-ui=tags-input][data-part=root][data-variant=subtle]{background-color:var( --slotted-tags-input-subtle-background, var(--slotted-surface-sunken, Canvas) );border-color:var( --slotted-tags-input-subtle-border-color, var(--slotted-border-subtle, ButtonBorder) )}[data-ui=tags-input][data-part=root][data-variant=plain]{background-color:transparent;border-color:transparent;border-radius:var(--slotted-radius-none, 0px);box-shadow:none}@media(forced-colors:active){[data-ui=tags-input][data-part=root][data-variant=plain]{border-color:ButtonBorder}}[data-ui=tags-input][data-part=root]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){border-color:var(--slotted-tags-input-hover-border-color, var(--slotted-tone-accent-border))}[data-ui=tags-input][data-part=root][data-variant=subtle]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-tags-input-subtle-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=tags-input][data-part=root][data-variant=plain]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-tags-input-plain-hover-background, var(--slotted-tone-secondary-subtle-hover) );border-color:transparent}[data-ui=tags-input][data-part=root]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:var(--slotted-control-shadow-focus-geometry, 0 1px 4px -1px) var(--slotted-focus-ring-color, Highlight);outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=tags-input][data-part=root][data-variant=plain]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root][data-variant=plain]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:none;outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}[data-ui=tags-input][data-part=root]:has([data-part=chips]>:not([data-part=field]):focus-visible){outline:none}[data-ui=tags-input][data-part=root][data-invalid]{--slotted-focus-ring-color: var( --slotted-tags-input-invalid-focus-ring-color, var(--slotted-focus-ring-color-invalid, Highlight) );--_invalid-edge-width: var( --slotted-tags-input-invalid-edge-width, var(--slotted-control-invalid-edge-width, 1px) );--_invalid-edge-color: var( --slotted-tags-input-invalid-border-color, var(--slotted-tone-danger-border) );--_invalid-edge: inset 0 0 0 var(--_invalid-edge-width) var(--_invalid-edge-color);border-color:var(--slotted-tags-input-invalid-border-color, var(--slotted-tone-danger-border));box-shadow:var(--_invalid-edge)}[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:var(--_invalid-edge),var(--slotted-control-shadow-focus-geometry, 0 1px 4px -1px) var(--slotted-focus-ring-color, Highlight)}[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:inset 0 0 0 calc(var(--slotted-focus-ring-offset, 2px) - var(--slotted-control-border-width, 1px) + var(--_invalid-edge-width)) var(--_invalid-edge-color)}@media(forced-colors:active){[data-ui=tags-input][data-part=root][data-invalid]{outline:var(--_invalid-edge-width) solid CanvasText;outline-offset:calc(-1 * (var(--slotted-control-border-width, 1px) + var(--_invalid-edge-width)))}[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=input]:focus-visible){outline:calc(var(--slotted-focus-ring-width, 2px) + var(--_invalid-edge-width)) double var(--slotted-focus-ring-color, Highlight);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=input]:focus-visible){outline:calc(var(--slotted-focus-ring-width, 2px) + var(--_invalid-edge-width)) double var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-1 * (var(--slotted-focus-ring-width, 2px) + var(--_invalid-edge-width)))}[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible),[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible){outline:var(--_invalid-edge-width) solid CanvasText;outline-offset:calc(-1 * (var(--slotted-control-border-width, 1px) + var(--_invalid-edge-width)))}}[data-ui=tags-input][data-part=root][data-readonly]{background-color:var( --slotted-tags-input-readonly-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=tags-input][data-part=root][data-disabled],[data-ui=tags-input][data-part=root]:has([data-part=input]:disabled){background-color:var( --slotted-tags-input-disabled-background, var(--slotted-disabled-background) );border-color:var(--slotted-tags-input-disabled-border-color, var(--slotted-disabled-border));box-shadow:none;color:var(--slotted-tags-input-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui=tags-input]>[data-part=clear]:hover:not(:disabled):not([data-disabled]){background-color:var( --slotted-tags-input-action-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=tags-input]>[data-part=clear]:active:not(:disabled):not([data-disabled]){background-color:var( --slotted-tags-input-action-active-background, var(--slotted-tone-secondary-subtle-active) )}[data-ui=tags-input]>[data-part=clear]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}}\n", "@layer slotted.components{[data-ui=tag][data-part=root]{--_solid: var(--slotted-tone-secondary-solid-hover);--_solid-hover: var(--slotted-tone-secondary-solid-active);--_solid-active: var(--slotted-tone-secondary-solid-active);--_on-solid: var(--slotted-tone-secondary-on-solid);--_surface: var(--slotted-tone-secondary-surface);--_subtle-hover: var(--slotted-tone-secondary-subtle-hover);--_subtle-active: var(--slotted-tone-secondary-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-secondary-border));--_text: var(--slotted-tone-secondary-text);--_edge: var(--_solid);--_font-size: var(--slotted-control-font-size-md, 13px);--_icon-size: var(--slotted-control-icon-size-sm, 14px);--_inner-size: var(--slotted-control-inner-size-sm, 22px);--_inset-block: var(--slotted-tag-inset-block, var(--slotted-space-2, .25rem));--_inset-inline: var(--slotted-space-4, .5rem);--_gap: var(--slotted-space-2, .25rem);--_line-height: var(--slotted-line-height-xs, 1.4);--_edge-width: var(--slotted-tag-border-width, var(--slotted-border-width-thin, 1px));--_radius: var(--slotted-radius-full, 9999px);--_inner-radius: max(0px, calc(var(--_radius) - var(--_edge-width)));--_own-size: calc( var(--_font-size) * var(--_line-height) + 2 * var(--_inset-block) + 2 * var(--_edge-width) );--_block-size: var(--slotted-control-inner-size, var(--_own-size));--_line: min( calc(var(--_font-size) * var(--_line-height)), calc(var(--_block-size) - 2 * var(--_edge-width)) );--_inset: max(0px, calc((var(--_block-size) - var(--_line) - 2 * var(--_edge-width)) / 2));align-items:stretch;border:var(--_edge-width) solid transparent;border-radius:var(--_radius);box-sizing:border-box;display:inline-flex;font-family:var(--slotted-tag-font-family, var(--slotted-control-font-family, sans-serif));font-size:var(--_font-size);font-weight:var(--slotted-tag-font-weight, var(--slotted-font-weight-medium, 500));line-height:var(--_line);max-inline-size:100%;min-block-size:var(--_block-size);vertical-align:middle;white-space:nowrap}[data-ui=tag][data-part=root][hidden]{display:none}[data-ui=tag][data-part=root][data-tone=secondary]{--_edge: var(--_border)}[data-ui=tag][data-part=root][data-tone=accent]{--_solid: var(--slotted-tone-accent-solid);--_solid-hover: var(--slotted-tone-accent-solid-hover);--_solid-active: var(--slotted-tone-accent-solid-active);--_on-solid: var(--slotted-tone-accent-on-solid);--_surface: var(--slotted-tone-accent-surface);--_subtle-hover: var(--slotted-tone-accent-subtle-hover);--_subtle-active: var(--slotted-tone-accent-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-accent-border));--_text: var(--slotted-tone-accent-text)}[data-ui=tag][data-part=root][data-tone=success]{--_solid: var(--slotted-tone-success-solid);--_solid-hover: var(--slotted-tone-success-solid-hover);--_solid-active: var(--slotted-tone-success-solid-active);--_on-solid: var(--slotted-tone-success-on-solid);--_surface: var(--slotted-tone-success-surface);--_subtle-hover: var(--slotted-tone-success-subtle-hover);--_subtle-active: var(--slotted-tone-success-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-success-border));--_text: var(--slotted-tone-success-text)}[data-ui=tag][data-part=root][data-tone=warning]{--_solid: var(--slotted-tone-warning-solid);--_solid-hover: var(--slotted-tone-warning-solid-hover);--_solid-active: var(--slotted-tone-warning-solid-active);--_on-solid: var(--slotted-tone-warning-on-solid);--_surface: var(--slotted-tone-warning-surface);--_subtle-hover: var(--slotted-tone-warning-subtle-hover);--_subtle-active: var(--slotted-tone-warning-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-warning-border));--_text: var(--slotted-tone-warning-text)}[data-ui=tag][data-part=root][data-tone=danger]{--_solid: var(--slotted-tone-danger-solid);--_solid-hover: var(--slotted-tone-danger-solid-hover);--_solid-active: var(--slotted-tone-danger-solid-active);--_on-solid: var(--slotted-tone-danger-on-solid);--_surface: var(--slotted-tone-danger-surface);--_subtle-hover: var(--slotted-tone-danger-subtle-hover);--_subtle-active: var(--slotted-tone-danger-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-danger-border));--_text: var(--slotted-tone-danger-text)}[data-ui=tag][data-part=root][data-variant=solid]{background-color:var(--_solid, ButtonFace);border-color:var(--_edge, ButtonFace);color:var(--_on-solid, ButtonText)}[data-ui=tag][data-part=root][data-variant=soft]{background-color:var(--_surface, ButtonFace);border-color:var(--_border, ButtonBorder);color:var(--_text, ButtonText)}[data-ui=tag][data-part=root][data-variant=outline]{background-color:transparent;border-color:var(--_border, ButtonBorder);color:var(--_text, ButtonText)}[data-ui=tag][data-part=root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_inset-block: var(--slotted-tag-inset-block, var(--slotted-space-1, .125rem));--_inset-inline: var(--slotted-space-3, .375rem)}[data-ui=tag][data-part=root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_icon-size: var(--slotted-control-icon-size-md, 16px);--_inner-size: var(--slotted-control-inner-size-md, 24px);--_inset-block: var(--slotted-tag-inset-block, var(--slotted-space-3, .375rem));--_inset-inline: var(--slotted-space-5, .75rem);--_gap: var(--slotted-space-3, .375rem)}[data-ui=tag][data-part=root][data-shape=square]{--_radius: var(--slotted-radius-sm, 4px)}[data-ui=tag] [data-part=body]{align-items:center;background-color:transparent;border:0;border-end-start-radius:var(--_inner-radius);border-start-start-radius:var(--_inner-radius);box-sizing:border-box;color:inherit;display:inline-flex;font:inherit;gap:var(--_gap);letter-spacing:inherit;min-inline-size:0;padding-block:var(--_inset);padding-inline:var(--_inset-inline);text-align:start;text-decoration:none;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing)}[data-ui=tag] [data-part=body]:last-child{border-end-end-radius:var(--_inner-radius);border-start-end-radius:var(--_inner-radius)}[data-ui=tag] [data-part=body]:has(+[data-part=remove]){padding-inline-end:var(--_gap)}[data-ui=tag] [data-part=body]:is(a,button){cursor:pointer}[data-ui=tag] [data-part=label]{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext}@supports (text-box: trim-both cap alphabetic){[data-ui=tag] [data-part=label]{margin-block:-.3em;padding-block:.3em;text-box:trim-both cap alphabetic}}[data-ui=tag] [data-part=start],[data-ui=tag] [data-part=end]{--slotted-icon-size: var(--_icon-size);align-items:center;block-size:var(--_icon-size);box-sizing:border-box;display:inline-flex;flex:none;font-size:var(--_icon-size);inline-size:var(--_icon-size);justify-content:center;line-height:1}[data-ui=tag] [data-part=start]>*,[data-ui=tag] [data-part=end]>*{block-size:100%;display:block;inline-size:100%}[data-ui=tag] [data-part=indicator]{--slotted-icon-size: var(--_icon-size);align-items:center;block-size:var(--_icon-size);display:inline-flex;flex:none;inline-size:0;justify-content:center;margin-inline-end:calc(-1 * var(--_gap));opacity:0;overflow:hidden;transition:inline-size var(--slotted-duration-short) var(--slotted-easing-standard),margin-inline-end var(--slotted-duration-short) var(--slotted-easing-standard),opacity var(--slotted-duration-short) var(--slotted-easing-standard)}[data-ui=tag][data-part=root][data-selected] [data-part=indicator]{inline-size:var(--_icon-size);margin-inline-end:0;opacity:1}[data-ui=tag] [data-part=remove]{--slotted-icon-size: var(--_icon-size);align-items:center;appearance:none;background-color:transparent;border:0;border-end-end-radius:var(--_inner-radius);border-start-end-radius:var(--_inner-radius);box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;flex:none;inline-size:max(var(--slotted-target-min, 24px),min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)),var(--_inner-size)));justify-content:center;padding:0;position:relative;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing)}[data-ui=tag] [data-part=remove]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui=tag] [data-part=remove]{inline-size:max(var(--slotted-target-min, 24px),min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)),var(--_inner-size)),calc(var(--_block-size) - 2 * var(--_edge-width)))}[data-ui=tag] [data-part=remove]:after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}}[data-ui=tag] [data-part=remove]:first-child{border-end-start-radius:var(--_inner-radius);border-start-start-radius:var(--_inner-radius)}[data-ui=tag][data-part=root][data-selected]:not([data-disabled]){background-color:var(--_solid, ButtonFace);border-color:var(--_edge, ButtonBorder);color:var(--_on-solid, ButtonText)}[data-ui=tag][data-part=root]{--_state-hover: color-mix( in oklab, currentColor var(--slotted-tag-state-layer-hover, 8%), transparent );--_state-active: color-mix( in oklab, currentColor var(--slotted-tag-state-layer-active, 14%), transparent )}[data-ui=tag][data-part=root][data-variant=soft]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled){background-color:var(--_state-hover)}[data-ui=tag][data-part=root][data-variant=soft]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled){background-color:var(--_state-active)}[data-ui=tag][data-part=root][data-variant=outline]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled){background-color:var(--_subtle-hover, ButtonFace)}[data-ui=tag][data-part=root][data-variant=outline]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled){background-color:var(--_subtle-active, ButtonFace)}[data-ui=tag][data-part=root][data-variant=solid]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled),[data-ui=tag][data-part=root][data-selected]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled){background-color:var(--_solid-hover, Highlight)}[data-ui=tag][data-part=root][data-variant=solid]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled),[data-ui=tag][data-part=root][data-selected]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled){background-color:var(--_solid-active, Highlight)}[data-ui=tag] [data-part=body]:focus-visible,[data-ui=tag] [data-part=remove]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-2 * var(--slotted-focus-ring-width, 2px))}[data-ui=tag][data-part=group]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=tag][data-part=root][data-disabled]{color:var(--slotted-disabled-foreground, GrayText)}[data-ui=tag][data-part=root][data-variant=solid][data-disabled],[data-ui=tag][data-part=root][data-variant=soft][data-disabled],[data-ui=tag][data-part=root][data-selected][data-disabled]{background-color:var(--slotted-disabled-background, Canvas);border-color:var(--slotted-disabled-border, GrayText)}[data-ui=tag][data-part=root][data-variant=outline][data-disabled]{background-color:transparent;border-color:var(--slotted-disabled-border, GrayText)}[data-ui=tag][data-part=root][data-disabled] :is([data-part=body],[data-part=remove]),[data-ui=tag] [data-part=body]:disabled,[data-ui=tag] [data-part=remove]:disabled{background-color:transparent;cursor:not-allowed}[data-ui=tag] [data-part=remove]:disabled{color:var(--slotted-disabled-foreground, GrayText)}[data-ui=tag][data-part=group]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--slotted-tag-group-gap, var(--slotted-space-2, .25rem))}[data-ui=tag][data-part=group][data-orientation=vertical]{align-items:start;flex-direction:column;flex-wrap:nowrap;inline-size:fit-content}[data-ui=tag][data-part=group]:empty{display:none}@media(forced-colors:active){[data-ui=tag][data-part=root]{border-color:currentColor}[data-ui=tag][data-part=root][data-selected]:not([data-disabled]){background-color:Highlight;color:HighlightText;forced-color-adjust:none}[data-ui=tag][data-part=root][data-disabled]{border-color:GrayText;color:GrayText}}}\n"], dependencies: [{ kind: "component", type: SlGlyph, selector: "svg[slGlyph]", inputs: ["name", "solid"] }, { kind: "component", type: SlIcon, selector: "[slIcon]", inputs: ["directional", "label", "size", "tone"], exportAs: ["slIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1027
+ }
1028
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlTagsInput, decorators: [{
1029
+ type: Component,
1030
+ args: [{ selector: 'sl-tags-input', standalone: true, exportAs: 'slTagsInput', imports: [SlGlyph, SlIcon], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
1031
+ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SlTagsInput), multi: true },
1032
+ { provide: NG_VALIDATORS, useExisting: forwardRef(() => SlTagsInput), multi: true },
1033
+ ], host: {
1034
+ 'data-ui': 'tags-input',
1035
+ 'data-part': 'root',
1036
+ '[attr.data-size]': 'resolvedSize()',
1037
+ '[attr.data-variant]': 'resolvedVariant()',
1038
+ '[attr.data-overflow]': 'resolvedOverflow()',
1039
+ '[attr.data-full-width]': "resolvedFullWidth() ? '' : null",
1040
+ '[attr.data-disabled]': "resolvedDisabled() ? '' : null",
1041
+ '[attr.data-readonly]': "resolvedReadOnly() ? '' : null",
1042
+ '[attr.data-invalid]': "isInvalid() ? '' : null",
1043
+ '[attr.data-required]': "resolvedRequired() ? '' : null",
1044
+ '[attr.data-complete]': "full() ? '' : null",
1045
+ '[attr.data-narrow]': "narrow() ? '' : null",
1046
+ '[attr.data-expanded]': "resolvedOverflow() === 'collapse' && expanded() ? '' : null",
1047
+ '(focusin)': 'onFocusIn()',
1048
+ '(focusout)': 'onFocusOut($event)',
1049
+ }, template: `
1050
+ <div
1051
+ data-part="control"
1052
+ role="grid"
1053
+ [attr.aria-label]="gridLabel()"
1054
+ [attr.aria-labelledby]="gridLabelledBy()"
1055
+ >
1056
+ <div
1057
+ data-part="chips"
1058
+ role="row"
1059
+ #row
1060
+ [attr.aria-label]="countText()"
1061
+ [attr.aria-describedby]="hintId"
1062
+ >
1063
+ @for (chip of value(); track trackChip(index, chip); let index = $index) {
1064
+ @if (editingIndex() === index) {
1065
+ <span
1066
+ role="gridcell"
1067
+ tabindex="-1"
1068
+ data-ui="tag"
1069
+ data-part="root"
1070
+ data-size="sm"
1071
+ data-variant="soft"
1072
+ [attr.data-value]="chip"
1073
+ >
1074
+ <span data-part="body">
1075
+ <input
1076
+ type="text"
1077
+ [attr.aria-label]="labelFor(chip)"
1078
+ [value]="editingText()"
1079
+ [size]="chip.length || 1"
1080
+ (input)="onEditInput($event)"
1081
+ (blur)="commitEdit(index, $event)"
1082
+ (keydown)="onEditKeyDown(index, $event)"
1083
+ />
1084
+ </span>
1085
+ </span>
1086
+ } @else {
1087
+ <span
1088
+ role="gridcell"
1089
+ tabindex="-1"
1090
+ data-ui="tag"
1091
+ data-part="root"
1092
+ data-size="sm"
1093
+ data-variant="soft"
1094
+ [attr.data-value]="chip"
1095
+ [attr.data-disabled]="isLocked(chip) || resolvedDisabled() ? '' : null"
1096
+ [attr.data-invalid]="messageFor(index) === null ? null : ''"
1097
+ [attr.data-tone]="messageFor(index) === null ? null : 'danger'"
1098
+ [attr.data-current]="current() === chip ? '' : null"
1099
+ [attr.aria-invalid]="messageFor(index) === null ? null : true"
1100
+ [attr.aria-describedby]="messageFor(index) === null ? null : messageId(index)"
1101
+ [attr.aria-label]="chipLabel(chip, index)"
1102
+ [attr.title]="messageFor(index)"
1103
+ (keydown)="onChipKeyDown(chip, index, $event)"
1104
+ (dblclick)="onChipDoubleClick(chip, index)"
1105
+ >
1106
+ <span data-part="body">
1107
+ @if (messageFor(index); as message) {
1108
+ <span data-part="start"
1109
+ ><span slIcon><svg slGlyph name="circle-alert"></svg></span
1110
+ ></span>
1111
+ }
1112
+ <span data-part="label">{{ labelFor(chip) }}</span>
1113
+ </span>
1114
+ @if (messageFor(index); as message) {
1115
+ <span data-part="message" [id]="messageId(index)">{{ message }}</span>
1116
+ }
1117
+ @if (!chipFrozen(chip)) {
1118
+ <button
1119
+ type="button"
1120
+ tabindex="-1"
1121
+ data-part="remove"
1122
+ [attr.aria-label]="removeLabelFor(chip)"
1123
+ (click)="onRemoveClick(index, $event)"
1124
+ >
1125
+ <span slIcon><svg slGlyph name="x"></svg></span>
1126
+ </button>
1127
+ }
1128
+ </span>
1129
+ }
1130
+ }
1131
+ @if (collapsing()) {
1132
+ <span
1133
+ #count
1134
+ hidden
1135
+ role="gridcell"
1136
+ tabindex="-1"
1137
+ data-count
1138
+ data-ui="tag"
1139
+ data-part="root"
1140
+ data-size="sm"
1141
+ data-variant="outline"
1142
+ (click)="focus()"
1143
+ >
1144
+ <span data-part="body">
1145
+ <span data-part="label">+{{ hiddenCount() }}</span>
1146
+ </span>
1147
+ </span>
1148
+ }
1149
+ <span data-part="field" role="gridcell">
1150
+ <input
1151
+ #control
1152
+ data-part="input"
1153
+ [type]="type()"
1154
+ [id]="controlId()"
1155
+ [value]="inputValue()"
1156
+ [disabled]="resolvedDisabled()"
1157
+ [readOnly]="resolvedReadOnly()"
1158
+ [required]="resolvedRequired() && value().length === 0"
1159
+ [placeholder]="placeholder()"
1160
+ [attr.name]="null"
1161
+ [attr.list]="list() ?? null"
1162
+ [attr.pattern]="pattern() ?? null"
1163
+ [attr.minlength]="minLength() ?? null"
1164
+ [attr.maxlength]="maxLength() ?? null"
1165
+ [attr.inputmode]="inputMode() ?? null"
1166
+ [attr.autocomplete]="autocomplete() ?? null"
1167
+ [attr.aria-label]="ariaLabel() ?? null"
1168
+ [attr.aria-describedby]="describedBy()"
1169
+ [attr.aria-invalid]="isInvalid() ? true : null"
1170
+ (input)="onInput($event)"
1171
+ (keydown)="onKeyDown($event)"
1172
+ (paste)="onPaste($event)"
1173
+ (blur)="onBlur($event)"
1174
+ />
1175
+ </span>
1176
+ </div>
1177
+ </div>
1178
+
1179
+ @if (counterText(); as counter) {
1180
+ <span data-part="counter" aria-hidden="true">{{ counter }}</span>
1181
+ }
1182
+ @if (showClear()) {
1183
+ <button
1184
+ type="button"
1185
+ data-part="clear"
1186
+ [attr.aria-label]="t('clear')"
1187
+ (click)="onClear($event)"
1188
+ >
1189
+ <span slIcon><svg slGlyph name="x"></svg></span>
1190
+ </button>
1191
+ }
1192
+ <span data-part="hint" [id]="hintId">{{ hintText() }}</span>
1193
+
1194
+ <!--
1195
+ One hidden input per value, all under the same name: that is how a plain
1196
+ FormData receives several values under one key.
1197
+ -->
1198
+ @if (name(); as submissionName) {
1199
+ @for (held of value(); track trackChip(index, held); let index = $index) {
1200
+ <input type="hidden" [name]="submissionName" [attr.form]="form() ?? null" [value]="held" />
1201
+ }
1202
+ }
1203
+ `, styles: ["@layer slotted.components{[data-ui=tags-input][data-part=root]{--_font-size: var(--slotted-control-font-size-md, 13px);--_height: var(--slotted-control-height-md, 34px);--_padding-inline: var(--slotted-control-padding-inline-md, 13px);--_gap: var(--slotted-control-gap-md, 8px);--_icon-floor: var(--slotted-tags-input-icon-size-min, 14px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_action-size: var( --slotted-tags-input-action-size, min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) );--_row-air: var(--slotted-space-1, .125rem);--_inner-size: var(--slotted-control-inner-size-md, 24px);--_row-size: var(--_inner-size);--_row-gap: var(--slotted-space-2, .25rem);align-items:center;background-color:var(--slotted-tags-input-background, var(--slotted-control-surface, Field));border:var(--slotted-control-border-width, 1px) solid var(--slotted-tags-input-border-color, var(--slotted-control-border-color, ButtonBorder));border-radius:var(--slotted-tags-input-radius, var(--slotted-control-radius, 4px));box-shadow:var(--slotted-tags-input-shadow, var(--slotted-control-shadow, none));box-sizing:border-box;color:var(--slotted-tags-input-color, var(--slotted-text, CanvasText));display:flex;font-family:var(--slotted-control-font-family, system-ui, sans-serif);font-size:var(--_font-size);gap:var(--slotted-space-1, .125rem);inline-size:100%;min-block-size:var(--_height);min-inline-size:0;padding-inline-start:var(--_padding-inline);padding-inline-end:max(0px,calc(var(--_padding-inline) - (var(--_action-size) - var(--_icon-size)) / 2));position:relative;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),border-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),box-shadow var(--slotted-control-transition-duration) var(--slotted-control-transition-easing)}[data-ui=tags-input][data-part=root]:not([data-full-width]){inline-size:auto}[data-ui=tags-input]>[data-part=control]{display:flex;flex:1 1 auto;min-inline-size:0;align-self:stretch}[data-ui=tags-input]>[data-part=control]+*{margin-inline-start:var(--_row-gap)}[data-ui=tags-input] [data-part=chips]{align-content:safe center;align-items:center;box-sizing:border-box;column-gap:var(--_row-gap);display:flex;flex:1 1 auto;flex-wrap:wrap;min-inline-size:0;padding-block:var(--_row-air);padding-inline:var(--_row-air);margin-inline:calc(-1 * var(--_row-air));row-gap:var(--_row-gap);max-block-size:calc(3 * var(--_row-size) + 2 * var(--_row-gap) + 2 * var(--_row-air));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}[data-ui=tags-input] [data-part=chips]::-webkit-scrollbar{display:none}[data-ui=tags-input][data-overflow=collapse]:not([data-expanded]) [data-part=chips]{flex-wrap:nowrap;max-block-size:none;overflow:hidden}[data-ui=tags-input][data-overflow=collapse][data-expanded] [data-part=chips]>[data-count]{display:none}[data-ui=tags-input] [data-part=chips] input:not([data-part=input]){background-color:transparent;border:0;color:inherit;font:inherit;min-inline-size:0;outline:none;padding:0}[data-ui=tags-input] [data-part=chips]>:not([data-part=field]){flex:0 0 auto;max-inline-size:100%;min-block-size:var(--_row-size);min-inline-size:0}[data-ui=tags-input] [data-part=chips]{--slotted-control-inner-size: var(--_inner-size)}[data-ui=tags-input] [data-part=field]{align-items:center;display:flex;flex:1 1 var(--slotted-tags-input-field-basis, 4rem);min-block-size:var(--_row-size);min-inline-size:var(--slotted-tags-input-field-min, 2.5rem)}[data-ui=tags-input] [data-part=input]{background-color:transparent;border:0;color:inherit;flex:1 1 auto;font:inherit;outline:none;padding:0;min-inline-size:0;text-overflow:ellipsis}[data-ui=tags-input] [data-part=input]::placeholder{color:var(--slotted-tags-input-placeholder-color, var(--slotted-text-muted, GrayText));text-overflow:ellipsis}[data-ui=tags-input] [data-part=input]:autofill{box-shadow:inset 0 0 0 100px var(--slotted-tags-input-autofill-background, var(--slotted-tone-accent-surface));-webkit-text-fill-color:var(--slotted-tags-input-color, var(--slotted-text, CanvasText))}[data-ui=tags-input] [data-part=chips]>:not([data-part=field]):focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-1 * var(--slotted-focus-ring-width, 2px))}[data-ui=tags-input] [data-part=chips]>[data-current]{--slotted-tag-border-color: var( --slotted-tags-input-current-border-color, var(--slotted-tone-accent-border) )}[data-ui=tags-input] [data-part=chips]>[data-count]{cursor:pointer;flex:none}[data-ui=tags-input]>[data-part=counter]{align-self:center;color:var(--slotted-tags-input-counter-color, var(--slotted-text-muted, GrayText));flex:none;font-size:var(--slotted-font-size-xs, .75rem);font-variant-numeric:tabular-nums;line-height:var(--slotted-line-height-sm, 1.45);padding-inline:var(--slotted-space-1, .125rem);unicode-bidi:plaintext;white-space:nowrap}[data-ui=tags-input][data-complete]>[data-part=counter]{color:var(--slotted-tags-input-counter-complete-color, var(--slotted-tone-accent-text));font-weight:var(--slotted-font-weight-medium, 500)}[data-ui=tags-input][data-narrow] [data-part=chips]>:not([data-part=field]){display:none}[data-ui=tags-input] :is([data-part=message],[data-part=hint]){block-size:1px;border:0;clip-path:inset(50%);inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap}[data-ui=tags-input]>[data-part=clear]{align-items:center;align-self:center;appearance:none;background-color:transparent;block-size:var(--_action-size);border:0;border-radius:var(--slotted-tags-input-radius, var(--slotted-control-radius, 4px));color:var(--slotted-tags-input-action-color, var(--slotted-text-muted, GrayText));cursor:pointer;display:inline-flex;flex:0 0 auto;inline-size:var(--_action-size);justify-content:center;padding:0;position:relative;touch-action:manipulation;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing);-webkit-tap-highlight-color:transparent}[data-ui=tags-input]>[data-part=clear]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui=tags-input]>[data-part=clear]:after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2));inset-inline-start:0}}[data-ui=tags-input]>[data-part=clear]{--slotted-icon-size: var(--_icon-size)}[data-ui=tags-input][data-part=root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_height: var(--slotted-control-height-sm, 30px);--_inner-size: var(--slotted-control-inner-size-sm, 22px);--_padding-inline: var(--slotted-control-padding-inline-sm, 10px);--_gap: var(--slotted-control-gap-sm, 6px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-sm, 14px))}[data-ui=tags-input][data-part=root][data-size=md]{--_font-size: var(--slotted-control-font-size-md, 13px);--_height: var(--slotted-control-height-md, 34px);--_padding-inline: var(--slotted-control-padding-inline-md, 13px);--_gap: var(--slotted-control-gap-md, 8px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_inner-size: var(--slotted-control-inner-size-md, 24px)}[data-ui=tags-input][data-part=root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_height: var(--slotted-control-height-lg, 38px);--_inner-size: var(--slotted-control-inner-size-lg, 28px);--_padding-inline: var(--slotted-control-padding-inline-lg, 16px);--_gap: var(--slotted-control-gap-lg, 8px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-lg, 18px))}[data-ui=tags-input][data-part=root][data-variant=subtle]{background-color:var( --slotted-tags-input-subtle-background, var(--slotted-surface-sunken, Canvas) );border-color:var( --slotted-tags-input-subtle-border-color, var(--slotted-border-subtle, ButtonBorder) )}[data-ui=tags-input][data-part=root][data-variant=plain]{background-color:transparent;border-color:transparent;border-radius:var(--slotted-radius-none, 0px);box-shadow:none}@media(forced-colors:active){[data-ui=tags-input][data-part=root][data-variant=plain]{border-color:ButtonBorder}}[data-ui=tags-input][data-part=root]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){border-color:var(--slotted-tags-input-hover-border-color, var(--slotted-tone-accent-border))}[data-ui=tags-input][data-part=root][data-variant=subtle]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-tags-input-subtle-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=tags-input][data-part=root][data-variant=plain]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-tags-input-plain-hover-background, var(--slotted-tone-secondary-subtle-hover) );border-color:transparent}[data-ui=tags-input][data-part=root]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:var(--slotted-control-shadow-focus-geometry, 0 1px 4px -1px) var(--slotted-focus-ring-color, Highlight);outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=tags-input][data-part=root][data-variant=plain]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root][data-variant=plain]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:none;outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}[data-ui=tags-input][data-part=root]:has([data-part=chips]>:not([data-part=field]):focus-visible){outline:none}[data-ui=tags-input][data-part=root][data-invalid]{--slotted-focus-ring-color: var( --slotted-tags-input-invalid-focus-ring-color, var(--slotted-focus-ring-color-invalid, Highlight) );--_invalid-edge-width: var( --slotted-tags-input-invalid-edge-width, var(--slotted-control-invalid-edge-width, 1px) );--_invalid-edge-color: var( --slotted-tags-input-invalid-border-color, var(--slotted-tone-danger-border) );--_invalid-edge: inset 0 0 0 var(--_invalid-edge-width) var(--_invalid-edge-color);border-color:var(--slotted-tags-input-invalid-border-color, var(--slotted-tone-danger-border));box-shadow:var(--_invalid-edge)}[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:var(--_invalid-edge),var(--slotted-control-shadow-focus-geometry, 0 1px 4px -1px) var(--slotted-focus-ring-color, Highlight)}[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=input]:focus-visible),[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible){box-shadow:inset 0 0 0 calc(var(--slotted-focus-ring-offset, 2px) - var(--slotted-control-border-width, 1px) + var(--_invalid-edge-width)) var(--_invalid-edge-color)}@media(forced-colors:active){[data-ui=tags-input][data-part=root][data-invalid]{outline:var(--_invalid-edge-width) solid CanvasText;outline-offset:calc(-1 * (var(--slotted-control-border-width, 1px) + var(--_invalid-edge-width)))}[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=input]:focus-visible){outline:calc(var(--slotted-focus-ring-width, 2px) + var(--_invalid-edge-width)) double var(--slotted-focus-ring-color, Highlight);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=input]:focus-visible){outline:calc(var(--slotted-focus-ring-width, 2px) + var(--_invalid-edge-width)) double var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-1 * (var(--slotted-focus-ring-width, 2px) + var(--_invalid-edge-width)))}[data-ui=tags-input][data-part=root][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible),[data-ui=tags-input][data-part=root][data-variant=plain][data-invalid]:has([data-part=chips]>:not([data-part=field]):focus-visible){outline:var(--_invalid-edge-width) solid CanvasText;outline-offset:calc(-1 * (var(--slotted-control-border-width, 1px) + var(--_invalid-edge-width)))}}[data-ui=tags-input][data-part=root][data-readonly]{background-color:var( --slotted-tags-input-readonly-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=tags-input][data-part=root][data-disabled],[data-ui=tags-input][data-part=root]:has([data-part=input]:disabled){background-color:var( --slotted-tags-input-disabled-background, var(--slotted-disabled-background) );border-color:var(--slotted-tags-input-disabled-border-color, var(--slotted-disabled-border));box-shadow:none;color:var(--slotted-tags-input-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui=tags-input]>[data-part=clear]:hover:not(:disabled):not([data-disabled]){background-color:var( --slotted-tags-input-action-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=tags-input]>[data-part=clear]:active:not(:disabled):not([data-disabled]){background-color:var( --slotted-tags-input-action-active-background, var(--slotted-tone-secondary-subtle-active) )}[data-ui=tags-input]>[data-part=clear]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}}\n", "@layer slotted.components{[data-ui=tag][data-part=root]{--_solid: var(--slotted-tone-secondary-solid-hover);--_solid-hover: var(--slotted-tone-secondary-solid-active);--_solid-active: var(--slotted-tone-secondary-solid-active);--_on-solid: var(--slotted-tone-secondary-on-solid);--_surface: var(--slotted-tone-secondary-surface);--_subtle-hover: var(--slotted-tone-secondary-subtle-hover);--_subtle-active: var(--slotted-tone-secondary-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-secondary-border));--_text: var(--slotted-tone-secondary-text);--_edge: var(--_solid);--_font-size: var(--slotted-control-font-size-md, 13px);--_icon-size: var(--slotted-control-icon-size-sm, 14px);--_inner-size: var(--slotted-control-inner-size-sm, 22px);--_inset-block: var(--slotted-tag-inset-block, var(--slotted-space-2, .25rem));--_inset-inline: var(--slotted-space-4, .5rem);--_gap: var(--slotted-space-2, .25rem);--_line-height: var(--slotted-line-height-xs, 1.4);--_edge-width: var(--slotted-tag-border-width, var(--slotted-border-width-thin, 1px));--_radius: var(--slotted-radius-full, 9999px);--_inner-radius: max(0px, calc(var(--_radius) - var(--_edge-width)));--_own-size: calc( var(--_font-size) * var(--_line-height) + 2 * var(--_inset-block) + 2 * var(--_edge-width) );--_block-size: var(--slotted-control-inner-size, var(--_own-size));--_line: min( calc(var(--_font-size) * var(--_line-height)), calc(var(--_block-size) - 2 * var(--_edge-width)) );--_inset: max(0px, calc((var(--_block-size) - var(--_line) - 2 * var(--_edge-width)) / 2));align-items:stretch;border:var(--_edge-width) solid transparent;border-radius:var(--_radius);box-sizing:border-box;display:inline-flex;font-family:var(--slotted-tag-font-family, var(--slotted-control-font-family, sans-serif));font-size:var(--_font-size);font-weight:var(--slotted-tag-font-weight, var(--slotted-font-weight-medium, 500));line-height:var(--_line);max-inline-size:100%;min-block-size:var(--_block-size);vertical-align:middle;white-space:nowrap}[data-ui=tag][data-part=root][hidden]{display:none}[data-ui=tag][data-part=root][data-tone=secondary]{--_edge: var(--_border)}[data-ui=tag][data-part=root][data-tone=accent]{--_solid: var(--slotted-tone-accent-solid);--_solid-hover: var(--slotted-tone-accent-solid-hover);--_solid-active: var(--slotted-tone-accent-solid-active);--_on-solid: var(--slotted-tone-accent-on-solid);--_surface: var(--slotted-tone-accent-surface);--_subtle-hover: var(--slotted-tone-accent-subtle-hover);--_subtle-active: var(--slotted-tone-accent-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-accent-border));--_text: var(--slotted-tone-accent-text)}[data-ui=tag][data-part=root][data-tone=success]{--_solid: var(--slotted-tone-success-solid);--_solid-hover: var(--slotted-tone-success-solid-hover);--_solid-active: var(--slotted-tone-success-solid-active);--_on-solid: var(--slotted-tone-success-on-solid);--_surface: var(--slotted-tone-success-surface);--_subtle-hover: var(--slotted-tone-success-subtle-hover);--_subtle-active: var(--slotted-tone-success-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-success-border));--_text: var(--slotted-tone-success-text)}[data-ui=tag][data-part=root][data-tone=warning]{--_solid: var(--slotted-tone-warning-solid);--_solid-hover: var(--slotted-tone-warning-solid-hover);--_solid-active: var(--slotted-tone-warning-solid-active);--_on-solid: var(--slotted-tone-warning-on-solid);--_surface: var(--slotted-tone-warning-surface);--_subtle-hover: var(--slotted-tone-warning-subtle-hover);--_subtle-active: var(--slotted-tone-warning-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-warning-border));--_text: var(--slotted-tone-warning-text)}[data-ui=tag][data-part=root][data-tone=danger]{--_solid: var(--slotted-tone-danger-solid);--_solid-hover: var(--slotted-tone-danger-solid-hover);--_solid-active: var(--slotted-tone-danger-solid-active);--_on-solid: var(--slotted-tone-danger-on-solid);--_surface: var(--slotted-tone-danger-surface);--_subtle-hover: var(--slotted-tone-danger-subtle-hover);--_subtle-active: var(--slotted-tone-danger-subtle-active);--_border: var(--slotted-tag-border-color, var(--slotted-tone-danger-border));--_text: var(--slotted-tone-danger-text)}[data-ui=tag][data-part=root][data-variant=solid]{background-color:var(--_solid, ButtonFace);border-color:var(--_edge, ButtonFace);color:var(--_on-solid, ButtonText)}[data-ui=tag][data-part=root][data-variant=soft]{background-color:var(--_surface, ButtonFace);border-color:var(--_border, ButtonBorder);color:var(--_text, ButtonText)}[data-ui=tag][data-part=root][data-variant=outline]{background-color:transparent;border-color:var(--_border, ButtonBorder);color:var(--_text, ButtonText)}[data-ui=tag][data-part=root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_inset-block: var(--slotted-tag-inset-block, var(--slotted-space-1, .125rem));--_inset-inline: var(--slotted-space-3, .375rem)}[data-ui=tag][data-part=root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_icon-size: var(--slotted-control-icon-size-md, 16px);--_inner-size: var(--slotted-control-inner-size-md, 24px);--_inset-block: var(--slotted-tag-inset-block, var(--slotted-space-3, .375rem));--_inset-inline: var(--slotted-space-5, .75rem);--_gap: var(--slotted-space-3, .375rem)}[data-ui=tag][data-part=root][data-shape=square]{--_radius: var(--slotted-radius-sm, 4px)}[data-ui=tag] [data-part=body]{align-items:center;background-color:transparent;border:0;border-end-start-radius:var(--_inner-radius);border-start-start-radius:var(--_inner-radius);box-sizing:border-box;color:inherit;display:inline-flex;font:inherit;gap:var(--_gap);letter-spacing:inherit;min-inline-size:0;padding-block:var(--_inset);padding-inline:var(--_inset-inline);text-align:start;text-decoration:none;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing),color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing)}[data-ui=tag] [data-part=body]:last-child{border-end-end-radius:var(--_inner-radius);border-start-end-radius:var(--_inner-radius)}[data-ui=tag] [data-part=body]:has(+[data-part=remove]){padding-inline-end:var(--_gap)}[data-ui=tag] [data-part=body]:is(a,button){cursor:pointer}[data-ui=tag] [data-part=label]{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext}@supports (text-box: trim-both cap alphabetic){[data-ui=tag] [data-part=label]{margin-block:-.3em;padding-block:.3em;text-box:trim-both cap alphabetic}}[data-ui=tag] [data-part=start],[data-ui=tag] [data-part=end]{--slotted-icon-size: var(--_icon-size);align-items:center;block-size:var(--_icon-size);box-sizing:border-box;display:inline-flex;flex:none;font-size:var(--_icon-size);inline-size:var(--_icon-size);justify-content:center;line-height:1}[data-ui=tag] [data-part=start]>*,[data-ui=tag] [data-part=end]>*{block-size:100%;display:block;inline-size:100%}[data-ui=tag] [data-part=indicator]{--slotted-icon-size: var(--_icon-size);align-items:center;block-size:var(--_icon-size);display:inline-flex;flex:none;inline-size:0;justify-content:center;margin-inline-end:calc(-1 * var(--_gap));opacity:0;overflow:hidden;transition:inline-size var(--slotted-duration-short) var(--slotted-easing-standard),margin-inline-end var(--slotted-duration-short) var(--slotted-easing-standard),opacity var(--slotted-duration-short) var(--slotted-easing-standard)}[data-ui=tag][data-part=root][data-selected] [data-part=indicator]{inline-size:var(--_icon-size);margin-inline-end:0;opacity:1}[data-ui=tag] [data-part=remove]{--slotted-icon-size: var(--_icon-size);align-items:center;appearance:none;background-color:transparent;border:0;border-end-end-radius:var(--_inner-radius);border-start-end-radius:var(--_inner-radius);box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;flex:none;inline-size:max(var(--slotted-target-min, 24px),min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)),var(--_inner-size)));justify-content:center;padding:0;position:relative;transition:background-color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing)}[data-ui=tag] [data-part=remove]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui=tag] [data-part=remove]{inline-size:max(var(--slotted-target-min, 24px),min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)),var(--_inner-size)),calc(var(--_block-size) - 2 * var(--_edge-width)))}[data-ui=tag] [data-part=remove]:after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}}[data-ui=tag] [data-part=remove]:first-child{border-end-start-radius:var(--_inner-radius);border-start-start-radius:var(--_inner-radius)}[data-ui=tag][data-part=root][data-selected]:not([data-disabled]){background-color:var(--_solid, ButtonFace);border-color:var(--_edge, ButtonBorder);color:var(--_on-solid, ButtonText)}[data-ui=tag][data-part=root]{--_state-hover: color-mix( in oklab, currentColor var(--slotted-tag-state-layer-hover, 8%), transparent );--_state-active: color-mix( in oklab, currentColor var(--slotted-tag-state-layer-active, 14%), transparent )}[data-ui=tag][data-part=root][data-variant=soft]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled){background-color:var(--_state-hover)}[data-ui=tag][data-part=root][data-variant=soft]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled){background-color:var(--_state-active)}[data-ui=tag][data-part=root][data-variant=outline]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled){background-color:var(--_subtle-hover, ButtonFace)}[data-ui=tag][data-part=root][data-variant=outline]:not([data-disabled]):not([data-selected]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled){background-color:var(--_subtle-active, ButtonFace)}[data-ui=tag][data-part=root][data-variant=solid]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled),[data-ui=tag][data-part=root][data-selected]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):hover:not(:disabled){background-color:var(--_solid-hover, Highlight)}[data-ui=tag][data-part=root][data-variant=solid]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled),[data-ui=tag][data-part=root][data-selected]:not([data-disabled]) :is([data-part=body]:is(a,button),[data-part=remove]):active:not(:disabled){background-color:var(--_solid-active, Highlight)}[data-ui=tag] [data-part=body]:focus-visible,[data-ui=tag] [data-part=remove]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:calc(-2 * var(--slotted-focus-ring-width, 2px))}[data-ui=tag][data-part=group]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=tag][data-part=root][data-disabled]{color:var(--slotted-disabled-foreground, GrayText)}[data-ui=tag][data-part=root][data-variant=solid][data-disabled],[data-ui=tag][data-part=root][data-variant=soft][data-disabled],[data-ui=tag][data-part=root][data-selected][data-disabled]{background-color:var(--slotted-disabled-background, Canvas);border-color:var(--slotted-disabled-border, GrayText)}[data-ui=tag][data-part=root][data-variant=outline][data-disabled]{background-color:transparent;border-color:var(--slotted-disabled-border, GrayText)}[data-ui=tag][data-part=root][data-disabled] :is([data-part=body],[data-part=remove]),[data-ui=tag] [data-part=body]:disabled,[data-ui=tag] [data-part=remove]:disabled{background-color:transparent;cursor:not-allowed}[data-ui=tag] [data-part=remove]:disabled{color:var(--slotted-disabled-foreground, GrayText)}[data-ui=tag][data-part=group]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--slotted-tag-group-gap, var(--slotted-space-2, .25rem))}[data-ui=tag][data-part=group][data-orientation=vertical]{align-items:start;flex-direction:column;flex-wrap:nowrap;inline-size:fit-content}[data-ui=tag][data-part=group]:empty{display:none}@media(forced-colors:active){[data-ui=tag][data-part=root]{border-color:currentColor}[data-ui=tag][data-part=root][data-selected]:not([data-disabled]){background-color:Highlight;color:HighlightText;forced-color-adjust:none}[data-ui=tag][data-part=root][data-disabled]{border-color:GrayText;color:GrayText}}}\n"] }]
1204
+ }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], valueChangeRequest: [{ type: i0.Output, args: ["valueChangeRequest"] }], defaultValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultValue", required: false }] }], inputValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputValue", required: false }] }, { type: i0.Output, args: ["inputValueChange"] }], inputValueChangeRequest: [{ type: i0.Output, args: ["inputValueChangeRequest"] }], valueRefuse: [{ type: i0.Output, args: ["valueRefuse"] }], valueCopy: [{ type: i0.Output, args: ["valueCopy"] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-label", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], form: [{ type: i0.Input, args: [{ isSignal: true, alias: "form", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], list: [{ type: i0.Input, args: [{ isSignal: true, alias: "list", required: false }] }], pattern: [{ type: i0.Input, args: [{ isSignal: true, alias: "pattern", required: false }] }], minLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "minLength", required: false }] }], maxLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxLength", required: false }] }], inputMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputMode", required: false }] }], autocomplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocomplete", required: false }] }], locale: [{ type: i0.Input, args: [{ isSignal: true, alias: "locale", required: false }] }], validateValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "validateValue", required: false }] }], normalize: [{ type: i0.Input, args: [{ isSignal: true, alias: "normalize", required: false }] }], split: [{ type: i0.Input, args: [{ isSignal: true, alias: "split", required: false }] }], formatLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "formatLabel", required: false }] }], lockedValues: [{ type: i0.Input, args: [{ isSignal: true, alias: "lockedValues", required: false }] }], delimiters: [{ type: i0.Input, args: [{ isSignal: true, alias: "delimiters", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], overflow: [{ type: i0.Input, args: [{ isSignal: true, alias: "overflow", required: false }] }], invalidValues: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidValues", required: false }] }], pendingOnBlur: [{ type: i0.Input, args: [{ isSignal: true, alias: "pendingOnBlur", required: false }] }], messages: [{ type: i0.Input, args: [{ isSignal: true, alias: "messages", required: false }] }], addOnPaste: [{ type: i0.Input, args: [{ isSignal: true, alias: "addOnPaste", required: false }] }], allowDuplicates: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowDuplicates", required: false }] }], editable: [{ type: i0.Input, args: [{ isSignal: true, alias: "editable", required: false }] }], reorderable: [{ type: i0.Input, args: [{ isSignal: true, alias: "reorderable", required: false }] }], clearable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearable", required: false }] }], fullWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "fullWidth", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], controlRef: [{ type: i0.ViewChild, args: ['control', { isSignal: true }] }], rowRef: [{ type: i0.ViewChild, args: ['row', { isSignal: true }] }], countRef: [{ type: i0.ViewChild, args: ['count', { isSignal: true }] }] } });
1205
+
1206
+ /**
1207
+ * Generated bundle index. Do not edit.
1208
+ */
1209
+
1210
+ export { CHIP_SELECTOR, NARROW_WIDTH, SlTagsInput, TAGS_INPUT_DEFAULTS, TAGS_INPUT_FALLBACK, injectTagsInputDefaults, provideTagsInputDefaults };
1211
+ //# sourceMappingURL=slotted-angular-tags-input.mjs.map