@slotted/angular 0.1.0-beta.0 → 0.1.0-beta.10

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 (588) hide show
  1. package/README.md +4 -0
  2. package/docs/AGENTS.snippet.md +12 -0
  3. package/docs/alert.json +7 -1
  4. package/docs/alert.md +3 -3
  5. package/docs/app-shell.examples.md +1 -1
  6. package/docs/app-shell.json +5 -5
  7. package/docs/app-shell.md +2 -2
  8. package/docs/avatar.json +22 -1
  9. package/docs/avatar.md +5 -3
  10. package/docs/badge.json +7 -1
  11. package/docs/badge.md +3 -3
  12. package/docs/button-group.json +2 -0
  13. package/docs/button-group.md +1 -1
  14. package/docs/button.json +51 -11
  15. package/docs/button.md +10 -6
  16. package/docs/calendar.json +8 -1
  17. package/docs/calendar.md +1 -0
  18. package/docs/cascader.json +1 -0
  19. package/docs/cascader.md +1 -1
  20. package/docs/chart.examples.md +1 -1
  21. package/docs/chart.json +10 -1
  22. package/docs/chart.md +3 -2
  23. package/docs/checkbox.json +7 -0
  24. package/docs/checkbox.md +1 -0
  25. package/docs/code-block.json +92 -92
  26. package/docs/code-block.md +69 -69
  27. package/docs/combobox.json +1 -0
  28. package/docs/combobox.md +1 -1
  29. package/docs/currency-field.json +40 -1
  30. package/docs/currency-field.md +5 -1
  31. package/docs/data-grid.examples.md +2 -2
  32. package/docs/data-grid.json +24 -7
  33. package/docs/data-grid.md +1 -1
  34. package/docs/data-grid.props.md +6 -4
  35. package/docs/data-list.json +2 -1
  36. package/docs/data-list.md +1 -1
  37. package/docs/date-field.json +9 -1
  38. package/docs/date-field.md +3 -2
  39. package/docs/date-picker.examples.md +36 -0
  40. package/docs/date-picker.json +20 -5
  41. package/docs/date-picker.md +5 -4
  42. package/docs/datetime-field.json +1 -0
  43. package/docs/datetime-field.md +1 -1
  44. package/docs/dialog.examples.md +158 -136
  45. package/docs/dialog.json +35 -11
  46. package/docs/dialog.md +4 -2
  47. package/docs/dialog.props.md +1 -1
  48. package/docs/drawer.json +5 -0
  49. package/docs/drawer.md +1 -0
  50. package/docs/entity-picker.json +19 -4
  51. package/docs/entity-picker.md +8 -6
  52. package/docs/event-calendar.json +7 -0
  53. package/docs/event-calendar.md +1 -0
  54. package/docs/filter-bar.json +118 -118
  55. package/docs/filter-bar.md +79 -79
  56. package/docs/form.json +2 -1
  57. package/docs/form.md +1 -1
  58. package/docs/guidelines/README.md +27 -0
  59. package/docs/guidelines/async-feedback.md +129 -0
  60. package/docs/guidelines/browsing.md +74 -0
  61. package/docs/guidelines/builders.md +97 -0
  62. package/docs/guidelines/composition.md +143 -0
  63. package/docs/guidelines/conversations.md +59 -0
  64. package/docs/guidelines/errors-and-conflicts.md +71 -0
  65. package/docs/guidelines/forms.md +202 -0
  66. package/docs/guidelines/index.md +129 -0
  67. package/docs/guidelines/layout-alignment.md +95 -0
  68. package/docs/guidelines/ledgers.md +45 -0
  69. package/docs/guidelines/list-pages.md +206 -0
  70. package/docs/guidelines/overviews.md +76 -0
  71. package/docs/guidelines/own-elements.md +115 -0
  72. package/docs/guidelines/reading-permissions.md +55 -0
  73. package/docs/guidelines/record-pages.md +178 -0
  74. package/docs/guidelines/reports.md +123 -0
  75. package/docs/guidelines/shell-composition.md +94 -0
  76. package/docs/guidelines/workspaces.md +46 -0
  77. package/docs/icon.json +3 -1
  78. package/docs/icon.md +3 -3
  79. package/docs/index.md +12 -0
  80. package/docs/inline-message.json +14 -2
  81. package/docs/inline-message.md +4 -3
  82. package/docs/list-item.json +9 -1
  83. package/docs/list-item.md +3 -3
  84. package/docs/list.json +19 -1
  85. package/docs/list.md +3 -1
  86. package/docs/markdown.json +79 -79
  87. package/docs/markdown.md +65 -65
  88. package/docs/menu.json +12 -0
  89. package/docs/menu.md +2 -0
  90. package/docs/message.json +7 -1
  91. package/docs/message.md +3 -3
  92. package/docs/multi-select.json +1 -0
  93. package/docs/multi-select.md +1 -1
  94. package/docs/notification-center.json +4 -0
  95. package/docs/notification-center.md +2 -2
  96. package/docs/number-field.json +1 -0
  97. package/docs/number-field.md +1 -1
  98. package/docs/otp-input.json +1 -0
  99. package/docs/otp-input.md +1 -1
  100. package/docs/page-header.json +4 -3
  101. package/docs/page-header.md +2 -2
  102. package/docs/page.json +1 -0
  103. package/docs/page.md +1 -0
  104. package/docs/popover.json +1 -1
  105. package/docs/progress-indicator.json +4 -3
  106. package/docs/progress-indicator.md +4 -4
  107. package/docs/prompt-composer.json +41 -1
  108. package/docs/prompt-composer.md +5 -1
  109. package/docs/rating.json +5 -3
  110. package/docs/rating.md +5 -5
  111. package/docs/section.json +27 -15
  112. package/docs/section.md +11 -9
  113. package/docs/segmented-control.json +36 -12
  114. package/docs/segmented-control.md +17 -1
  115. package/docs/select.json +1 -0
  116. package/docs/select.md +1 -1
  117. package/docs/side-navigation.json +1 -0
  118. package/docs/side-navigation.md +1 -1
  119. package/docs/skills/build-own-element/SKILL.md +90 -0
  120. package/docs/skills/compose-screen/SKILL.md +95 -0
  121. package/docs/skills/index.md +9 -0
  122. package/docs/skills/review-screen/SKILL.md +77 -0
  123. package/docs/skills/theme-app/SKILL.md +87 -0
  124. package/docs/skills/waiting-states/SKILL.md +143 -0
  125. package/docs/sparkline.json +5 -2
  126. package/docs/sparkline.md +4 -4
  127. package/docs/split-button.json +4 -1
  128. package/docs/split-button.md +3 -3
  129. package/docs/stat-card.json +5 -1
  130. package/docs/stat-card.md +3 -3
  131. package/docs/table.examples.md +3 -3
  132. package/docs/table.json +85 -3
  133. package/docs/table.md +12 -1
  134. package/docs/tabs.json +17 -7
  135. package/docs/tabs.md +3 -2
  136. package/docs/tag.json +14 -4
  137. package/docs/tag.md +6 -6
  138. package/docs/tags-input.json +29 -2
  139. package/docs/tags-input.md +4 -1
  140. package/docs/text-field.json +2 -1
  141. package/docs/text-field.md +2 -2
  142. package/docs/textarea.json +1 -0
  143. package/docs/textarea.md +1 -1
  144. package/docs/time-field.json +1 -0
  145. package/docs/time-field.md +1 -1
  146. package/docs/timeline.json +138 -132
  147. package/docs/timeline.md +125 -125
  148. package/docs/toast.json +7 -1
  149. package/docs/toast.md +3 -3
  150. package/docs/toggle-group.json +14 -3
  151. package/docs/toggle-group.md +3 -3
  152. package/docs/toggle.json +12 -3
  153. package/docs/toggle.md +3 -3
  154. package/docs/tokens.md +467 -0
  155. package/docs/tour.json +1 -1
  156. package/docs/typography.json +4 -2
  157. package/docs/typography.md +4 -4
  158. package/fesm2022/slotted-angular-accordion.mjs +4 -2
  159. package/fesm2022/slotted-angular-accordion.mjs.map +1 -1
  160. package/fesm2022/slotted-angular-action-bar.mjs +22 -11
  161. package/fesm2022/slotted-angular-action-bar.mjs.map +1 -1
  162. package/fesm2022/slotted-angular-action-sheet.mjs +42 -29
  163. package/fesm2022/slotted-angular-action-sheet.mjs.map +1 -1
  164. package/fesm2022/slotted-angular-alert.mjs +18 -11
  165. package/fesm2022/slotted-angular-alert.mjs.map +1 -1
  166. package/fesm2022/slotted-angular-app-shell.mjs +111 -61
  167. package/fesm2022/slotted-angular-app-shell.mjs.map +1 -1
  168. package/fesm2022/slotted-angular-aspect-ratio.mjs +4 -2
  169. package/fesm2022/slotted-angular-aspect-ratio.mjs.map +1 -1
  170. package/fesm2022/slotted-angular-attachment.mjs +31 -20
  171. package/fesm2022/slotted-angular-attachment.mjs.map +1 -1
  172. package/fesm2022/slotted-angular-avatar-group.mjs +9 -6
  173. package/fesm2022/slotted-angular-avatar-group.mjs.map +1 -1
  174. package/fesm2022/slotted-angular-avatar.mjs +14 -7
  175. package/fesm2022/slotted-angular-avatar.mjs.map +1 -1
  176. package/fesm2022/slotted-angular-badge.mjs +14 -10
  177. package/fesm2022/slotted-angular-badge.mjs.map +1 -1
  178. package/fesm2022/slotted-angular-breadcrumb.mjs +26 -18
  179. package/fesm2022/slotted-angular-breadcrumb.mjs.map +1 -1
  180. package/fesm2022/slotted-angular-button-group.mjs +7 -4
  181. package/fesm2022/slotted-angular-button-group.mjs.map +1 -1
  182. package/fesm2022/slotted-angular-button.mjs +90 -29
  183. package/fesm2022/slotted-angular-button.mjs.map +1 -1
  184. package/fesm2022/slotted-angular-calendar.mjs +235 -58
  185. package/fesm2022/slotted-angular-calendar.mjs.map +1 -1
  186. package/fesm2022/slotted-angular-card.mjs +18 -16
  187. package/fesm2022/slotted-angular-card.mjs.map +1 -1
  188. package/fesm2022/slotted-angular-carousel.mjs +22 -11
  189. package/fesm2022/slotted-angular-carousel.mjs.map +1 -1
  190. package/fesm2022/slotted-angular-cascader.mjs +166 -66
  191. package/fesm2022/slotted-angular-cascader.mjs.map +1 -1
  192. package/fesm2022/slotted-angular-chart.mjs +53 -20
  193. package/fesm2022/slotted-angular-chart.mjs.map +1 -1
  194. package/fesm2022/slotted-angular-checkbox-group.mjs +5 -3
  195. package/fesm2022/slotted-angular-checkbox-group.mjs.map +1 -1
  196. package/fesm2022/slotted-angular-checkbox.mjs +23 -9
  197. package/fesm2022/slotted-angular-checkbox.mjs.map +1 -1
  198. package/fesm2022/slotted-angular-code-block.mjs +29 -15
  199. package/fesm2022/slotted-angular-code-block.mjs.map +1 -1
  200. package/fesm2022/slotted-angular-collapsible.mjs +20 -15
  201. package/fesm2022/slotted-angular-collapsible.mjs.map +1 -1
  202. package/fesm2022/slotted-angular-color-picker.mjs +77 -22
  203. package/fesm2022/slotted-angular-color-picker.mjs.map +1 -1
  204. package/fesm2022/slotted-angular-column-manager.mjs +68 -31
  205. package/fesm2022/slotted-angular-column-manager.mjs.map +1 -1
  206. package/fesm2022/slotted-angular-combobox.mjs +112 -39
  207. package/fesm2022/slotted-angular-combobox.mjs.map +1 -1
  208. package/fesm2022/slotted-angular-command-palette.mjs +150 -54
  209. package/fesm2022/slotted-angular-command-palette.mjs.map +1 -1
  210. package/fesm2022/slotted-angular-container.mjs +6 -4
  211. package/fesm2022/slotted-angular-container.mjs.map +1 -1
  212. package/fesm2022/slotted-angular-context-menu.mjs +5 -4
  213. package/fesm2022/slotted-angular-context-menu.mjs.map +1 -1
  214. package/fesm2022/slotted-angular-currency-field.mjs +149 -32
  215. package/fesm2022/slotted-angular-currency-field.mjs.map +1 -1
  216. package/fesm2022/slotted-angular-dashboard-grid.mjs +142 -63
  217. package/fesm2022/slotted-angular-dashboard-grid.mjs.map +1 -1
  218. package/fesm2022/slotted-angular-data-grid.mjs +354 -113
  219. package/fesm2022/slotted-angular-data-grid.mjs.map +1 -1
  220. package/fesm2022/slotted-angular-data-list.mjs +83 -50
  221. package/fesm2022/slotted-angular-data-list.mjs.map +1 -1
  222. package/fesm2022/slotted-angular-date-field.mjs +74 -25
  223. package/fesm2022/slotted-angular-date-field.mjs.map +1 -1
  224. package/fesm2022/slotted-angular-date-picker.mjs +112 -40
  225. package/fesm2022/slotted-angular-date-picker.mjs.map +1 -1
  226. package/fesm2022/slotted-angular-date-range-picker.mjs +45 -22
  227. package/fesm2022/slotted-angular-date-range-picker.mjs.map +1 -1
  228. package/fesm2022/slotted-angular-datetime-field.mjs +48 -16
  229. package/fesm2022/slotted-angular-datetime-field.mjs.map +1 -1
  230. package/fesm2022/slotted-angular-datetime-picker.mjs +41 -29
  231. package/fesm2022/slotted-angular-datetime-picker.mjs.map +1 -1
  232. package/fesm2022/slotted-angular-datetime-range-picker.mjs +115 -48
  233. package/fesm2022/slotted-angular-datetime-range-picker.mjs.map +1 -1
  234. package/fesm2022/slotted-angular-description-list.mjs +33 -19
  235. package/fesm2022/slotted-angular-description-list.mjs.map +1 -1
  236. package/fesm2022/slotted-angular-detail-panel.mjs +29 -18
  237. package/fesm2022/slotted-angular-detail-panel.mjs.map +1 -1
  238. package/fesm2022/slotted-angular-dialog.mjs +72 -30
  239. package/fesm2022/slotted-angular-dialog.mjs.map +1 -1
  240. package/fesm2022/slotted-angular-divider.mjs +7 -5
  241. package/fesm2022/slotted-angular-divider.mjs.map +1 -1
  242. package/fesm2022/slotted-angular-drawer.mjs +53 -29
  243. package/fesm2022/slotted-angular-drawer.mjs.map +1 -1
  244. package/fesm2022/slotted-angular-entity-picker.mjs +468 -75
  245. package/fesm2022/slotted-angular-entity-picker.mjs.map +1 -1
  246. package/fesm2022/slotted-angular-event-calendar.mjs +275 -108
  247. package/fesm2022/slotted-angular-event-calendar.mjs.map +1 -1
  248. package/fesm2022/slotted-angular-field-group.mjs +14 -7
  249. package/fesm2022/slotted-angular-field-group.mjs.map +1 -1
  250. package/fesm2022/slotted-angular-field.mjs +35 -15
  251. package/fesm2022/slotted-angular-field.mjs.map +1 -1
  252. package/fesm2022/slotted-angular-filter-bar.mjs +112 -51
  253. package/fesm2022/slotted-angular-filter-bar.mjs.map +1 -1
  254. package/fesm2022/slotted-angular-form.mjs +18 -10
  255. package/fesm2022/slotted-angular-form.mjs.map +1 -1
  256. package/fesm2022/slotted-angular-fullscreen.mjs +14 -8
  257. package/fesm2022/slotted-angular-fullscreen.mjs.map +1 -1
  258. package/fesm2022/slotted-angular-grid.mjs +4 -2
  259. package/fesm2022/slotted-angular-grid.mjs.map +1 -1
  260. package/fesm2022/slotted-angular-highlight.mjs +5 -3
  261. package/fesm2022/slotted-angular-highlight.mjs.map +1 -1
  262. package/fesm2022/slotted-angular-hover-card.mjs +5 -4
  263. package/fesm2022/slotted-angular-hover-card.mjs.map +1 -1
  264. package/fesm2022/slotted-angular-icon.mjs +6 -3
  265. package/fesm2022/slotted-angular-icon.mjs.map +1 -1
  266. package/fesm2022/slotted-angular-image.mjs +13 -10
  267. package/fesm2022/slotted-angular-image.mjs.map +1 -1
  268. package/fesm2022/slotted-angular-import-export-center.mjs +167 -99
  269. package/fesm2022/slotted-angular-import-export-center.mjs.map +1 -1
  270. package/fesm2022/slotted-angular-inline-message.mjs +88 -13
  271. package/fesm2022/slotted-angular-inline-message.mjs.map +1 -1
  272. package/fesm2022/slotted-angular-inline.mjs +4 -2
  273. package/fesm2022/slotted-angular-inline.mjs.map +1 -1
  274. package/fesm2022/slotted-angular-kbd.mjs +11 -7
  275. package/fesm2022/slotted-angular-kbd.mjs.map +1 -1
  276. package/fesm2022/slotted-angular-link.mjs +5 -3
  277. package/fesm2022/slotted-angular-link.mjs.map +1 -1
  278. package/fesm2022/slotted-angular-list-item.mjs +21 -18
  279. package/fesm2022/slotted-angular-list-item.mjs.map +1 -1
  280. package/fesm2022/slotted-angular-list.mjs +37 -22
  281. package/fesm2022/slotted-angular-list.mjs.map +1 -1
  282. package/fesm2022/slotted-angular-listbox.mjs +39 -21
  283. package/fesm2022/slotted-angular-listbox.mjs.map +1 -1
  284. package/fesm2022/slotted-angular-loading-overlay.mjs +59 -22
  285. package/fesm2022/slotted-angular-loading-overlay.mjs.map +1 -1
  286. package/fesm2022/slotted-angular-markdown.mjs +31 -19
  287. package/fesm2022/slotted-angular-markdown.mjs.map +1 -1
  288. package/fesm2022/slotted-angular-menu.mjs +51 -29
  289. package/fesm2022/slotted-angular-menu.mjs.map +1 -1
  290. package/fesm2022/slotted-angular-menubar.mjs +4 -2
  291. package/fesm2022/slotted-angular-menubar.mjs.map +1 -1
  292. package/fesm2022/slotted-angular-message-scroller.mjs +28 -15
  293. package/fesm2022/slotted-angular-message-scroller.mjs.map +1 -1
  294. package/fesm2022/slotted-angular-message.mjs +113 -51
  295. package/fesm2022/slotted-angular-message.mjs.map +1 -1
  296. package/fesm2022/slotted-angular-multi-select.mjs +189 -87
  297. package/fesm2022/slotted-angular-multi-select.mjs.map +1 -1
  298. package/fesm2022/slotted-angular-navigation-menu.mjs +34 -26
  299. package/fesm2022/slotted-angular-navigation-menu.mjs.map +1 -1
  300. package/fesm2022/slotted-angular-notification-center.mjs +108 -65
  301. package/fesm2022/slotted-angular-notification-center.mjs.map +1 -1
  302. package/fesm2022/slotted-angular-number-field.mjs +23 -11
  303. package/fesm2022/slotted-angular-number-field.mjs.map +1 -1
  304. package/fesm2022/slotted-angular-otp-input.mjs +13 -8
  305. package/fesm2022/slotted-angular-otp-input.mjs.map +1 -1
  306. package/fesm2022/slotted-angular-page-header.mjs +75 -45
  307. package/fesm2022/slotted-angular-page-header.mjs.map +1 -1
  308. package/fesm2022/slotted-angular-page.mjs +38 -10
  309. package/fesm2022/slotted-angular-page.mjs.map +1 -1
  310. package/fesm2022/slotted-angular-pagination.mjs +35 -22
  311. package/fesm2022/slotted-angular-pagination.mjs.map +1 -1
  312. package/fesm2022/slotted-angular-popover.mjs +32 -19
  313. package/fesm2022/slotted-angular-popover.mjs.map +1 -1
  314. package/fesm2022/slotted-angular-progress-indicator.mjs +236 -52
  315. package/fesm2022/slotted-angular-progress-indicator.mjs.map +1 -1
  316. package/fesm2022/slotted-angular-prompt-composer.mjs +41 -20
  317. package/fesm2022/slotted-angular-prompt-composer.mjs.map +1 -1
  318. package/fesm2022/slotted-angular-prose.mjs +14 -11
  319. package/fesm2022/slotted-angular-prose.mjs.map +1 -1
  320. package/fesm2022/slotted-angular-radio-group.mjs +15 -9
  321. package/fesm2022/slotted-angular-radio-group.mjs.map +1 -1
  322. package/fesm2022/slotted-angular-rating.mjs +138 -82
  323. package/fesm2022/slotted-angular-rating.mjs.map +1 -1
  324. package/fesm2022/slotted-angular-result-state.mjs +16 -12
  325. package/fesm2022/slotted-angular-result-state.mjs.map +1 -1
  326. package/fesm2022/slotted-angular-saved-views.mjs +43 -16
  327. package/fesm2022/slotted-angular-saved-views.mjs.map +1 -1
  328. package/fesm2022/slotted-angular-scroll-area.mjs +13 -5
  329. package/fesm2022/slotted-angular-scroll-area.mjs.map +1 -1
  330. package/fesm2022/slotted-angular-section.mjs +53 -18
  331. package/fesm2022/slotted-angular-section.mjs.map +1 -1
  332. package/fesm2022/slotted-angular-segmented-control.mjs +37 -11
  333. package/fesm2022/slotted-angular-segmented-control.mjs.map +1 -1
  334. package/fesm2022/slotted-angular-select.mjs +184 -94
  335. package/fesm2022/slotted-angular-select.mjs.map +1 -1
  336. package/fesm2022/slotted-angular-side-navigation.mjs +46 -35
  337. package/fesm2022/slotted-angular-side-navigation.mjs.map +1 -1
  338. package/fesm2022/slotted-angular-skeleton.mjs +32 -16
  339. package/fesm2022/slotted-angular-skeleton.mjs.map +1 -1
  340. package/fesm2022/slotted-angular-slider.mjs +31 -11
  341. package/fesm2022/slotted-angular-slider.mjs.map +1 -1
  342. package/fesm2022/slotted-angular-sparkline.mjs +41 -14
  343. package/fesm2022/slotted-angular-sparkline.mjs.map +1 -1
  344. package/fesm2022/slotted-angular-split-button.mjs +25 -11
  345. package/fesm2022/slotted-angular-split-button.mjs.map +1 -1
  346. package/fesm2022/slotted-angular-splitter.mjs +11 -9
  347. package/fesm2022/slotted-angular-splitter.mjs.map +1 -1
  348. package/fesm2022/slotted-angular-stack.mjs +4 -2
  349. package/fesm2022/slotted-angular-stack.mjs.map +1 -1
  350. package/fesm2022/slotted-angular-stat-card.mjs +35 -28
  351. package/fesm2022/slotted-angular-stat-card.mjs.map +1 -1
  352. package/fesm2022/slotted-angular-status-indicator.mjs +22 -8
  353. package/fesm2022/slotted-angular-status-indicator.mjs.map +1 -1
  354. package/fesm2022/slotted-angular-stepper.mjs +40 -15
  355. package/fesm2022/slotted-angular-stepper.mjs.map +1 -1
  356. package/fesm2022/slotted-angular-switch.mjs +15 -10
  357. package/fesm2022/slotted-angular-switch.mjs.map +1 -1
  358. package/fesm2022/slotted-angular-table-of-contents.mjs +29 -21
  359. package/fesm2022/slotted-angular-table-of-contents.mjs.map +1 -1
  360. package/fesm2022/slotted-angular-table.mjs +243 -73
  361. package/fesm2022/slotted-angular-table.mjs.map +1 -1
  362. package/fesm2022/slotted-angular-tabs.mjs +42 -18
  363. package/fesm2022/slotted-angular-tabs.mjs.map +1 -1
  364. package/fesm2022/slotted-angular-tag.mjs +19 -12
  365. package/fesm2022/slotted-angular-tag.mjs.map +1 -1
  366. package/fesm2022/slotted-angular-tags-input.mjs +253 -28
  367. package/fesm2022/slotted-angular-tags-input.mjs.map +1 -1
  368. package/fesm2022/slotted-angular-text-field.mjs +49 -15
  369. package/fesm2022/slotted-angular-text-field.mjs.map +1 -1
  370. package/fesm2022/slotted-angular-textarea.mjs +5 -3
  371. package/fesm2022/slotted-angular-textarea.mjs.map +1 -1
  372. package/fesm2022/slotted-angular-time-field.mjs +48 -14
  373. package/fesm2022/slotted-angular-time-field.mjs.map +1 -1
  374. package/fesm2022/slotted-angular-time-picker.mjs +32 -20
  375. package/fesm2022/slotted-angular-time-picker.mjs.map +1 -1
  376. package/fesm2022/slotted-angular-time-range-picker.mjs +113 -46
  377. package/fesm2022/slotted-angular-time-range-picker.mjs.map +1 -1
  378. package/fesm2022/slotted-angular-timeline.mjs +135 -64
  379. package/fesm2022/slotted-angular-timeline.mjs.map +1 -1
  380. package/fesm2022/slotted-angular-toast.mjs +43 -31
  381. package/fesm2022/slotted-angular-toast.mjs.map +1 -1
  382. package/fesm2022/slotted-angular-toggle-group.mjs +25 -8
  383. package/fesm2022/slotted-angular-toggle-group.mjs.map +1 -1
  384. package/fesm2022/slotted-angular-toggle.mjs +9 -4
  385. package/fesm2022/slotted-angular-toggle.mjs.map +1 -1
  386. package/fesm2022/slotted-angular-toolbar.mjs +22 -11
  387. package/fesm2022/slotted-angular-toolbar.mjs.map +1 -1
  388. package/fesm2022/slotted-angular-tooltip.mjs +15 -6
  389. package/fesm2022/slotted-angular-tooltip.mjs.map +1 -1
  390. package/fesm2022/slotted-angular-top-navigation.mjs +64 -44
  391. package/fesm2022/slotted-angular-top-navigation.mjs.map +1 -1
  392. package/fesm2022/slotted-angular-tour.mjs +47 -22
  393. package/fesm2022/slotted-angular-tour.mjs.map +1 -1
  394. package/fesm2022/slotted-angular-transfer.mjs +69 -30
  395. package/fesm2022/slotted-angular-transfer.mjs.map +1 -1
  396. package/fesm2022/slotted-angular-tree.mjs +74 -26
  397. package/fesm2022/slotted-angular-tree.mjs.map +1 -1
  398. package/fesm2022/slotted-angular-typography.mjs +8 -4
  399. package/fesm2022/slotted-angular-typography.mjs.map +1 -1
  400. package/fesm2022/slotted-angular-upload.mjs +125 -57
  401. package/fesm2022/slotted-angular-upload.mjs.map +1 -1
  402. package/fesm2022/slotted-angular-visually-hidden.mjs +4 -2
  403. package/fesm2022/slotted-angular-visually-hidden.mjs.map +1 -1
  404. package/fesm2022/slotted-angular-wizard.mjs +163 -65
  405. package/fesm2022/slotted-angular-wizard.mjs.map +1 -1
  406. package/package.json +3 -3
  407. package/types/slotted-angular-accordion.d.ts.map +1 -1
  408. package/types/slotted-angular-action-bar.d.ts.map +1 -1
  409. package/types/slotted-angular-action-sheet.d.ts.map +1 -1
  410. package/types/slotted-angular-alert.d.ts +2 -2
  411. package/types/slotted-angular-alert.d.ts.map +1 -1
  412. package/types/slotted-angular-app-shell.d.ts +11 -3
  413. package/types/slotted-angular-app-shell.d.ts.map +1 -1
  414. package/types/slotted-angular-aspect-ratio.d.ts.map +1 -1
  415. package/types/slotted-angular-attachment.d.ts +1 -1
  416. package/types/slotted-angular-attachment.d.ts.map +1 -1
  417. package/types/slotted-angular-avatar-group.d.ts.map +1 -1
  418. package/types/slotted-angular-avatar.d.ts +11 -3
  419. package/types/slotted-angular-avatar.d.ts.map +1 -1
  420. package/types/slotted-angular-badge.d.ts +1 -1
  421. package/types/slotted-angular-badge.d.ts.map +1 -1
  422. package/types/slotted-angular-breadcrumb.d.ts.map +1 -1
  423. package/types/slotted-angular-button-group.d.ts +1 -1
  424. package/types/slotted-angular-button-group.d.ts.map +1 -1
  425. package/types/slotted-angular-button.d.ts +33 -13
  426. package/types/slotted-angular-button.d.ts.map +1 -1
  427. package/types/slotted-angular-calendar.d.ts +30 -2
  428. package/types/slotted-angular-calendar.d.ts.map +1 -1
  429. package/types/slotted-angular-card.d.ts.map +1 -1
  430. package/types/slotted-angular-carousel.d.ts.map +1 -1
  431. package/types/slotted-angular-cascader.d.ts.map +1 -1
  432. package/types/slotted-angular-chart.d.ts +10 -0
  433. package/types/slotted-angular-chart.d.ts.map +1 -1
  434. package/types/slotted-angular-checkbox-group.d.ts.map +1 -1
  435. package/types/slotted-angular-checkbox.d.ts +7 -1
  436. package/types/slotted-angular-checkbox.d.ts.map +1 -1
  437. package/types/slotted-angular-code-block.d.ts +1 -1
  438. package/types/slotted-angular-code-block.d.ts.map +1 -1
  439. package/types/slotted-angular-collapsible.d.ts +1 -1
  440. package/types/slotted-angular-collapsible.d.ts.map +1 -1
  441. package/types/slotted-angular-color-picker.d.ts.map +1 -1
  442. package/types/slotted-angular-column-manager.d.ts.map +1 -1
  443. package/types/slotted-angular-combobox.d.ts +5 -1
  444. package/types/slotted-angular-combobox.d.ts.map +1 -1
  445. package/types/slotted-angular-command-palette.d.ts +10 -1
  446. package/types/slotted-angular-command-palette.d.ts.map +1 -1
  447. package/types/slotted-angular-container.d.ts.map +1 -1
  448. package/types/slotted-angular-context-menu.d.ts.map +1 -1
  449. package/types/slotted-angular-currency-field.d.ts +63 -15
  450. package/types/slotted-angular-currency-field.d.ts.map +1 -1
  451. package/types/slotted-angular-dashboard-grid.d.ts.map +1 -1
  452. package/types/slotted-angular-data-grid.d.ts +49 -4
  453. package/types/slotted-angular-data-grid.d.ts.map +1 -1
  454. package/types/slotted-angular-data-list.d.ts.map +1 -1
  455. package/types/slotted-angular-date-field.d.ts +11 -1
  456. package/types/slotted-angular-date-field.d.ts.map +1 -1
  457. package/types/slotted-angular-date-picker.d.ts +38 -12
  458. package/types/slotted-angular-date-picker.d.ts.map +1 -1
  459. package/types/slotted-angular-date-range-picker.d.ts +0 -1
  460. package/types/slotted-angular-date-range-picker.d.ts.map +1 -1
  461. package/types/slotted-angular-datetime-field.d.ts.map +1 -1
  462. package/types/slotted-angular-datetime-picker.d.ts +0 -1
  463. package/types/slotted-angular-datetime-picker.d.ts.map +1 -1
  464. package/types/slotted-angular-datetime-range-picker.d.ts +0 -1
  465. package/types/slotted-angular-datetime-range-picker.d.ts.map +1 -1
  466. package/types/slotted-angular-description-list.d.ts.map +1 -1
  467. package/types/slotted-angular-detail-panel.d.ts.map +1 -1
  468. package/types/slotted-angular-dialog.d.ts +10 -3
  469. package/types/slotted-angular-dialog.d.ts.map +1 -1
  470. package/types/slotted-angular-divider.d.ts.map +1 -1
  471. package/types/slotted-angular-drawer.d.ts +7 -1
  472. package/types/slotted-angular-drawer.d.ts.map +1 -1
  473. package/types/slotted-angular-entity-picker.d.ts +63 -15
  474. package/types/slotted-angular-entity-picker.d.ts.map +1 -1
  475. package/types/slotted-angular-event-calendar.d.ts +9 -2
  476. package/types/slotted-angular-event-calendar.d.ts.map +1 -1
  477. package/types/slotted-angular-field-group.d.ts.map +1 -1
  478. package/types/slotted-angular-field.d.ts.map +1 -1
  479. package/types/slotted-angular-filter-bar.d.ts.map +1 -1
  480. package/types/slotted-angular-form.d.ts.map +1 -1
  481. package/types/slotted-angular-fullscreen.d.ts.map +1 -1
  482. package/types/slotted-angular-grid.d.ts.map +1 -1
  483. package/types/slotted-angular-highlight.d.ts.map +1 -1
  484. package/types/slotted-angular-hover-card.d.ts.map +1 -1
  485. package/types/slotted-angular-icon.d.ts +2 -2
  486. package/types/slotted-angular-icon.d.ts.map +1 -1
  487. package/types/slotted-angular-image.d.ts.map +1 -1
  488. package/types/slotted-angular-import-export-center.d.ts.map +1 -1
  489. package/types/slotted-angular-inline-message.d.ts +25 -25
  490. package/types/slotted-angular-inline-message.d.ts.map +1 -1
  491. package/types/slotted-angular-inline.d.ts.map +1 -1
  492. package/types/slotted-angular-kbd.d.ts.map +1 -1
  493. package/types/slotted-angular-link.d.ts.map +1 -1
  494. package/types/slotted-angular-list-item.d.ts +1 -1
  495. package/types/slotted-angular-list-item.d.ts.map +1 -1
  496. package/types/slotted-angular-list.d.ts +42 -27
  497. package/types/slotted-angular-list.d.ts.map +1 -1
  498. package/types/slotted-angular-listbox.d.ts.map +1 -1
  499. package/types/slotted-angular-loading-overlay.d.ts.map +1 -1
  500. package/types/slotted-angular-markdown.d.ts.map +1 -1
  501. package/types/slotted-angular-menu.d.ts +11 -2
  502. package/types/slotted-angular-menu.d.ts.map +1 -1
  503. package/types/slotted-angular-menubar.d.ts.map +1 -1
  504. package/types/slotted-angular-message-scroller.d.ts.map +1 -1
  505. package/types/slotted-angular-message.d.ts +1 -1
  506. package/types/slotted-angular-message.d.ts.map +1 -1
  507. package/types/slotted-angular-multi-select.d.ts +15 -1
  508. package/types/slotted-angular-multi-select.d.ts.map +1 -1
  509. package/types/slotted-angular-navigation-menu.d.ts.map +1 -1
  510. package/types/slotted-angular-notification-center.d.ts +1 -1
  511. package/types/slotted-angular-notification-center.d.ts.map +1 -1
  512. package/types/slotted-angular-number-field.d.ts.map +1 -1
  513. package/types/slotted-angular-otp-input.d.ts.map +1 -1
  514. package/types/slotted-angular-page-header.d.ts +4 -4
  515. package/types/slotted-angular-page-header.d.ts.map +1 -1
  516. package/types/slotted-angular-page.d.ts.map +1 -1
  517. package/types/slotted-angular-pagination.d.ts.map +1 -1
  518. package/types/slotted-angular-popover.d.ts.map +1 -1
  519. package/types/slotted-angular-progress-indicator.d.ts +8 -1
  520. package/types/slotted-angular-progress-indicator.d.ts.map +1 -1
  521. package/types/slotted-angular-prompt-composer.d.ts +11 -2
  522. package/types/slotted-angular-prompt-composer.d.ts.map +1 -1
  523. package/types/slotted-angular-prose.d.ts.map +1 -1
  524. package/types/slotted-angular-radio-group.d.ts.map +1 -1
  525. package/types/slotted-angular-rating.d.ts +1 -1
  526. package/types/slotted-angular-rating.d.ts.map +1 -1
  527. package/types/slotted-angular-result-state.d.ts.map +1 -1
  528. package/types/slotted-angular-saved-views.d.ts.map +1 -1
  529. package/types/slotted-angular-scroll-area.d.ts.map +1 -1
  530. package/types/slotted-angular-section.d.ts +11 -3
  531. package/types/slotted-angular-section.d.ts.map +1 -1
  532. package/types/slotted-angular-segmented-control.d.ts +15 -2
  533. package/types/slotted-angular-segmented-control.d.ts.map +1 -1
  534. package/types/slotted-angular-select.d.ts +12 -2
  535. package/types/slotted-angular-select.d.ts.map +1 -1
  536. package/types/slotted-angular-side-navigation.d.ts.map +1 -1
  537. package/types/slotted-angular-skeleton.d.ts.map +1 -1
  538. package/types/slotted-angular-slider.d.ts.map +1 -1
  539. package/types/slotted-angular-sparkline.d.ts +7 -1
  540. package/types/slotted-angular-sparkline.d.ts.map +1 -1
  541. package/types/slotted-angular-split-button.d.ts +2 -2
  542. package/types/slotted-angular-split-button.d.ts.map +1 -1
  543. package/types/slotted-angular-splitter.d.ts.map +1 -1
  544. package/types/slotted-angular-stack.d.ts.map +1 -1
  545. package/types/slotted-angular-stat-card.d.ts +1 -1
  546. package/types/slotted-angular-stat-card.d.ts.map +1 -1
  547. package/types/slotted-angular-status-indicator.d.ts +1 -1
  548. package/types/slotted-angular-status-indicator.d.ts.map +1 -1
  549. package/types/slotted-angular-stepper.d.ts +1 -1
  550. package/types/slotted-angular-stepper.d.ts.map +1 -1
  551. package/types/slotted-angular-switch.d.ts.map +1 -1
  552. package/types/slotted-angular-table-of-contents.d.ts.map +1 -1
  553. package/types/slotted-angular-table.d.ts +63 -6
  554. package/types/slotted-angular-table.d.ts.map +1 -1
  555. package/types/slotted-angular-tabs.d.ts +3 -4
  556. package/types/slotted-angular-tabs.d.ts.map +1 -1
  557. package/types/slotted-angular-tag.d.ts +1 -1
  558. package/types/slotted-angular-tag.d.ts.map +1 -1
  559. package/types/slotted-angular-tags-input.d.ts +33 -1
  560. package/types/slotted-angular-tags-input.d.ts.map +1 -1
  561. package/types/slotted-angular-text-field.d.ts.map +1 -1
  562. package/types/slotted-angular-textarea.d.ts.map +1 -1
  563. package/types/slotted-angular-theme.d.ts +1 -1
  564. package/types/slotted-angular-time-field.d.ts.map +1 -1
  565. package/types/slotted-angular-time-picker.d.ts +0 -1
  566. package/types/slotted-angular-time-picker.d.ts.map +1 -1
  567. package/types/slotted-angular-time-range-picker.d.ts +0 -1
  568. package/types/slotted-angular-time-range-picker.d.ts.map +1 -1
  569. package/types/slotted-angular-timeline.d.ts +1 -1
  570. package/types/slotted-angular-timeline.d.ts.map +1 -1
  571. package/types/slotted-angular-toast.d.ts +3 -3
  572. package/types/slotted-angular-toast.d.ts.map +1 -1
  573. package/types/slotted-angular-toggle-group.d.ts +8 -2
  574. package/types/slotted-angular-toggle-group.d.ts.map +1 -1
  575. package/types/slotted-angular-toggle.d.ts +1 -1
  576. package/types/slotted-angular-toggle.d.ts.map +1 -1
  577. package/types/slotted-angular-toolbar.d.ts.map +1 -1
  578. package/types/slotted-angular-tooltip.d.ts.map +1 -1
  579. package/types/slotted-angular-top-navigation.d.ts.map +1 -1
  580. package/types/slotted-angular-tour.d.ts.map +1 -1
  581. package/types/slotted-angular-transfer.d.ts.map +1 -1
  582. package/types/slotted-angular-tree.d.ts.map +1 -1
  583. package/types/slotted-angular-typography.d.ts +1 -1
  584. package/types/slotted-angular-typography.d.ts.map +1 -1
  585. package/types/slotted-angular-upload.d.ts +2 -2
  586. package/types/slotted-angular-upload.d.ts.map +1 -1
  587. package/types/slotted-angular-visually-hidden.d.ts.map +1 -1
  588. package/types/slotted-angular-wizard.d.ts.map +1 -1
@@ -1,12 +1,12 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, input, contentChild, computed, signal, DestroyRef, ViewEncapsulation, ChangeDetectionStrategy, Component, numberAttribute, booleanAttribute, output, ElementRef, HostAttributeToken, effect, forwardRef, Directive } from '@angular/core';
2
+ import { InjectionToken, inject, input, computed, contentChild, signal, DestroyRef, ViewEncapsulation, ChangeDetectionStrategy, Component, numberAttribute, booleanAttribute, output, ElementRef, HostAttributeToken, effect, forwardRef, Directive } from '@angular/core';
3
3
  import { injectMessages, injectLocale } from '@slotted/angular/i18n';
4
4
  import { SlGlyph, SlIcon } from '@slotted/angular/icon';
5
5
  import { currencyFieldMessages } from '@slotted/core/i18n';
6
6
  import { STEP_REPEAT_DELAY_COARSE, STEP_REPEAT_DELAY, STEP_REPEAT_INTERVAL, stepNumber, SCRUB_SENSITIVITY, createScrub } from '@slotted/core/number';
7
7
  import { SlField } from '@slotted/angular/field';
8
8
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
9
- import { createCurrencyFormat, MAX_AMOUNT_DIGITS, withAmount } from '@slotted/core/currency';
9
+ import { currencyAffix, createCurrencyFormat, amountFromUnit, MAX_AMOUNT_DIGITS, requestInUnit, withAmount } from '@slotted/core/currency';
10
10
  import { clamp } from '@slotted/core/measure';
11
11
  import { createControllable } from '@slotted/core/state';
12
12
 
@@ -19,6 +19,7 @@ const FALLBACK = {
19
19
  formatOn: 'change',
20
20
  size: 'md',
21
21
  stepper: 'none',
22
+ unit: 'major',
22
23
  variant: 'outline',
23
24
  };
24
25
  const CURRENCY_FIELD_DEFAULTS = new InjectionToken('slotted currency field defaults', { providedIn: 'root', factory: () => FALLBACK });
@@ -80,6 +81,15 @@ class SlCurrencyField {
80
81
  /** Defaults to the token, then to `outline`. */
81
82
  variant = input(undefined, /* @ts-ignore */
82
83
  ...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
84
+ /**
85
+ * A field among fields, or the headline amount of an entry sheet. Defaults
86
+ * to `control`. `display` sets its own type step and draws a rule rather
87
+ * than a box, so `size` and `variant` do not apply to it.
88
+ */
89
+ appearance = input(undefined, /* @ts-ignore */
90
+ ...(ngDevMode ? [{ debugName: "appearance" }] : /* istanbul ignore next */ []));
91
+ resolvedAppearance = computed(() => this.appearance() ?? 'control', /* @ts-ignore */
92
+ ...(ngDevMode ? [{ debugName: "resolvedAppearance" }] : /* istanbul ignore next */ []));
83
93
  /** Which edge the amount is set against. Defaults to the token, then `end`. */
84
94
  align = input(undefined, /* @ts-ignore */
85
95
  ...(ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []));
@@ -132,7 +142,7 @@ class SlCurrencyField {
132
142
  decrementDisabled = computed(() => this.inert() || this.control()?.atMin() === true, /* @ts-ignore */
133
143
  ...(ngDevMode ? [{ debugName: "decrementDisabled" }] : /* istanbul ignore next */ []));
134
144
  hiddenValue = computed(() => {
135
- const value = this.control()?.numberValue() ?? null;
145
+ const value = this.control()?.submittedValue() ?? null;
136
146
  return value === null ? '' : String(value);
137
147
  }, /* @ts-ignore */
138
148
  ...(ngDevMode ? [{ debugName: "hiddenValue" }] : /* istanbul ignore next */ []));
@@ -170,9 +180,10 @@ class SlCurrencyField {
170
180
  this.interval = undefined;
171
181
  }
172
182
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyField, deps: [], target: i0.ɵɵFactoryTarget.Component });
173
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlCurrencyField, isStandalone: true, selector: "[slCurrencyField]", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, stepper: { classPropertyName: "stepper", publicName: "stepper", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "currency-field", "data-part": "root" }, properties: { "attr.data-size": "resolvedSize()", "attr.data-variant": "resolvedVariant()", "attr.data-align": "resolvedAlign()", "attr.data-entry": "resolvedEntry()", "attr.data-stepper": "resolvedStepper()", "attr.data-disabled": "control()?.resolvedDisabled() === true ? '' : null", "attr.data-invalid": "control()?.resolvedInvalid() === true ? '' : null", "attr.data-readonly": "control()?.resolvedReadOnly() === true ? '' : null", "attr.data-scrubbing": "scrubbing() ? '' : null" } }, queries: [{ propertyName: "control", first: true, predicate: SlCurrencyFieldControl, descendants: true, isSignal: true }], exportAs: ["slCurrencyField"], ngImport: i0, template: `@if (resolvedStepper() === 'split') {
183
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: SlCurrencyField, isStandalone: true, selector: "[slCurrencyField]", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, stepper: { classPropertyName: "stepper", publicName: "stepper", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-ui": "currency-field", "data-ui-currency-field": "", "data-part": "root", "data-part-root": "" }, properties: { "attr.data-size": "resolvedSize()", "attr.data-variant": "resolvedVariant()", "attr.data-align": "resolvedAlign()", "attr.data-appearance": "resolvedAppearance()", "attr.data-entry": "resolvedEntry()", "attr.data-stepper": "resolvedStepper()", "attr.data-disabled": "control()?.resolvedDisabled() === true ? '' : null", "attr.data-invalid": "control()?.resolvedInvalid() === true ? '' : null", "attr.data-readonly": "control()?.resolvedReadOnly() === true ? '' : null", "attr.data-scrubbing": "scrubbing() ? '' : null" } }, queries: [{ propertyName: "control", first: true, predicate: SlCurrencyFieldControl, descendants: true, isSignal: true }], exportAs: ["slCurrencyField"], ngImport: i0, template: `@if (resolvedStepper() === 'split') {
174
184
  <button
175
185
  data-part="decrement"
186
+ data-part-decrement=""
176
187
  type="button"
177
188
  tabindex="-1"
178
189
  [attr.aria-controls]="control()?.controlId()"
@@ -187,11 +198,22 @@ class SlCurrencyField {
187
198
  </button>
188
199
  }
189
200
  <ng-content select="[slCurrencyFieldStart]" />
201
+ @if (control()?.affix(); as affix) {
202
+ @if (affix.position === 'start') {
203
+ <span data-part="symbol" data-part-symbol="">{{ affix.text }}</span>
204
+ }
205
+ }
190
206
  <ng-content />
207
+ @if (control()?.affix(); as affix) {
208
+ @if (affix.position === 'end') {
209
+ <span data-part="symbol" data-part-symbol="">{{ affix.text }}</span>
210
+ }
211
+ }
191
212
  <ng-content select="[slCurrencyFieldEnd]" />
192
213
  @if (resolvedStepper() === 'split') {
193
214
  <button
194
215
  data-part="increment"
216
+ data-part-increment=""
195
217
  type="button"
196
218
  tabindex="-1"
197
219
  [attr.aria-controls]="control()?.controlId()"
@@ -205,9 +227,10 @@ class SlCurrencyField {
205
227
  <span slIcon><svg slGlyph name="plus"></svg></span>
206
228
  </button>
207
229
  } @else if (resolvedStepper() === 'stacked') {
208
- <span data-part="stepper">
230
+ <span data-part="stepper" data-part-stepper="">
209
231
  <button
210
232
  data-part="increment"
233
+ data-part-increment=""
211
234
  type="button"
212
235
  tabindex="-1"
213
236
  [attr.aria-controls]="control()?.controlId()"
@@ -224,6 +247,7 @@ class SlCurrencyField {
224
247
  </button>
225
248
  <button
226
249
  data-part="decrement"
250
+ data-part-decrement=""
227
251
  type="button"
228
252
  tabindex="-1"
229
253
  [attr.aria-controls]="control()?.controlId()"
@@ -245,13 +269,14 @@ class SlCurrencyField {
245
269
  [attr.form]="control()?.submissionForm()"
246
270
  [value]="hiddenValue()"
247
271
  />
248
- }`, isInline: true, styles: ["@layer slotted.components{[data-ui=currency-field][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-currency-field-icon-size-min, 14px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_inner-size: var(--slotted-control-inner-size-md, 24px);--_stepper-size: var( --slotted-currency-field-stepper-size, max( var(--slotted-target-min, 24px), min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) ) );--_action-size: var( --slotted-currency-field-action-size, min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) );--_inset: max( 0px, calc( (var(--_height) - 2 * var(--slotted-control-border-width, 1px) - var(--_action-size)) / 2 ) );--_action-radius: max( var(--slotted-radius-xs, 2px), calc(var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_inset)) );--_column-inset: var(--slotted-space-1, 2px);--_column-radius: max( var(--slotted-radius-xs, 2px), calc( var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_column-inset) ) );align-items:center;background-color:var( --slotted-currency-field-background, var(--slotted-control-surface, Field) );border:var(--slotted-control-border-width, 1px) solid var(--slotted-currency-field-border-color, var(--slotted-control-border-color, ButtonBorder));border-radius:var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px));box-shadow:var(--slotted-currency-field-shadow, var(--slotted-control-shadow, none));box-sizing:border-box;color:var(--slotted-currency-field-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(--_gap);inline-size:100%;min-inline-size:0;min-block-size:var(--_height);padding-inline:var(--_padding-inline);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=currency-field]>[data-part=input]{background-color:transparent;align-self:stretch;margin-block:calc(var(--slotted-control-border-width, 1px) * -1);border:0;color:inherit;flex:1 1 auto;font:inherit;font-variant-numeric:tabular-nums;outline:none;padding:0;min-inline-size:0;text-overflow:ellipsis;unicode-bidi:plaintext}[data-ui=currency-field]>[data-part=input]::placeholder{color:var(--slotted-currency-field-placeholder-color, var(--slotted-text-muted, GrayText));text-overflow:ellipsis}[data-ui=currency-field][data-align=end]>[data-part=input]{text-align:right}[data-ui=currency-field][data-align=end]:dir(rtl)>[data-part=input]{text-align:left}[data-ui=currency-field][data-align=start]>[data-part=input]{text-align:left}[data-ui=currency-field][data-align=start]:dir(rtl)>[data-part=input]{text-align:right}[data-ui=currency-field][data-part=root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_height: var(--slotted-control-height-sm, 30px);--_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));--_inner-size: var(--slotted-control-inner-size-sm, 22px)}[data-ui=currency-field][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=currency-field][data-part=root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_height: var(--slotted-control-height-lg, 38px);--_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));--_inner-size: var(--slotted-control-inner-size-lg, 28px)}[data-ui=currency-field][data-part=root][data-variant=subtle]{background-color:var( --slotted-currency-field-subtle-background, var(--slotted-surface-sunken, Canvas) );border-color:var( --slotted-currency-field-subtle-border-color, var(--slotted-border-subtle, ButtonBorder) )}[data-ui=currency-field][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=currency-field][data-part=root][data-variant=plain]{border-color:ButtonBorder}}[data-ui=currency-field]>[data-part=start],[data-ui=currency-field]>[data-part=end]{align-items:center;color:var(--slotted-currency-field-adornment-color, var(--slotted-text-muted, GrayText));display:inline-flex;flex:0 0 auto;gap:var(--slotted-space-2, .25rem);line-height:1;unicode-bidi:plaintext;--slotted-icon-size: var(--_icon-size)}[data-ui=currency-field]>[data-part=start]>svg,[data-ui=currency-field]>[data-part=end]>svg{block-size:var(--_icon-size);inline-size:var(--_icon-size)}[data-ui=currency-field]>[data-part=start]:not(:has(svg,img,[data-ui=icon])),[data-ui=currency-field]>[data-part=end]:not(:has(svg,img,[data-ui=icon])){padding-inline:calc(var(--_icon-size) / 8)}[data-ui=currency-field]>:is([data-part=start],[data-part=end]):has(>[data-part=scrub]){align-self:stretch}[data-ui=currency-field] [data-part=scrub]{align-items:center;align-self:stretch;cursor:ew-resize;display:inline-flex;gap:var(--slotted-space-2, .25rem);touch-action:none;transition:color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing);unicode-bidi:plaintext;user-select:none;-webkit-user-select:none}[data-ui=currency-field]:not([data-disabled]):not([data-readonly]) [data-part=scrub]:is(:hover,[data-scrubbing]){color:var(--slotted-currency-field-scrub-active-color, var(--slotted-text, CanvasText))}[data-ui=currency-field]:is([data-disabled],[data-readonly]) [data-part=scrub]{cursor:default;touch-action:auto}[data-ui=currency-field]>[data-part=stepper]>button,[data-ui=currency-field]>[data-part=decrement],[data-ui=currency-field]>[data-part=increment]{align-items:center;appearance:none;background-color:transparent;border:0;color:var(--slotted-currency-field-stepper-color, var(--slotted-text-muted, GrayText));cursor:pointer;display:inline-flex;flex:0 0 auto;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=currency-field] [data-part=decrement],[data-ui=currency-field] [data-part=increment]{--slotted-icon-size: var(--_icon-size)}[data-ui=currency-field][data-stepper=stacked] [data-part=increment]>[data-ui=icon]{rotate:.5turn}[data-ui=currency-field][data-part=root][data-stepper=stacked]{padding-inline-end:0}[data-ui=currency-field]>[data-part=stepper]{align-self:stretch;box-sizing:content-box;display:flex;flex:0 0 auto;flex-direction:column;inline-size:var(--_stepper-size);padding-block:var(--_column-inset);padding-inline-end:var(--_column-inset)}[data-ui=currency-field]>[data-part=stepper]>button{block-size:50%;border-radius:var(--_column-radius);inline-size:100%}[data-ui=currency-field]>[data-part=stepper]>:is([data-part=increment],[data-part=decrement]):after{content:\"\";inset-inline:0 calc(var(--_column-inset) * -1);position:absolute}[data-ui=currency-field]>[data-part=stepper]>[data-part=increment]:after{inset-block:calc(var(--_column-inset) * -1) 0}[data-ui=currency-field]>[data-part=stepper]>[data-part=decrement]:after{inset-block:0 calc(var(--_column-inset) * -1)}[data-ui=currency-field]>[data-part=stepper]>button>[data-ui=icon]{block-size:min(var(--_icon-size),100%);contain:size}[data-ui=currency-field][data-part=root][data-stepper=split]{gap:0;padding-inline:var(--_inset)}[data-ui=currency-field][data-stepper=split]>[data-part=decrement],[data-ui=currency-field][data-stepper=split]>[data-part=increment]{block-size:var(--_action-size);border-radius:var(--_action-radius);inline-size:var(--_action-size)}[data-ui=currency-field][data-stepper=split]>[data-part=start]{padding-inline-start:var(--_gap)}[data-ui=currency-field][data-stepper=split]>[data-part=end]{padding-inline-end:var(--_gap)}[data-ui=currency-field][data-stepper=split]>[data-part=input]{padding-inline:var(--_padding-inline)}[data-ui=currency-field][data-stepper=split]>[data-part=decrement]:after,[data-ui=currency-field][data-stepper=split]>[data-part=increment]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui=currency-field][data-stepper=split]>:is([data-part=decrement],[data-part=increment]):after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}[data-ui=currency-field]>[data-part=stepper]>:is([data-part=increment],[data-part=decrement]):after{inset-inline:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}}[data-ui=currency-field] [data-part=decrement]:hover:not(:disabled),[data-ui=currency-field] [data-part=increment]:hover:not(:disabled){background-color:var( --slotted-currency-field-stepper-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=currency-field] [data-part=decrement]:active:not(:disabled),[data-ui=currency-field] [data-part=increment]:active:not(:disabled){background-color:var( --slotted-currency-field-stepper-active-background, var(--slotted-tone-secondary-subtle-active) )}[data-ui=currency-field] [data-part=decrement]:disabled,[data-ui=currency-field] [data-part=increment]:disabled{background-color:var( --slotted-currency-field-stepper-disabled-background, var(--slotted-disabled-background) );color:var(--slotted-currency-field-stepper-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui=currency-field] [data-part=decrement]:focus-visible,[data-ui=currency-field] [data-part=increment]: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)}[data-ui=currency-field][data-part=root]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){border-color:var( --slotted-currency-field-hover-border-color, var(--slotted-tone-accent-border) )}[data-ui=currency-field][data-part=root][data-variant=subtle]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-subtle-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=currency-field][data-part=root][data-variant=plain]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-plain-hover-background, var(--slotted-tone-secondary-subtle-hover) );border-color:transparent}[data-ui=currency-field][data-part=root]:has(>[data-part=input]: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=currency-field][data-part=root][data-variant=plain]:has(>[data-part=input]:focus-visible){box-shadow:none;outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}[data-ui=currency-field][data-part=root][data-invalid]{--slotted-focus-ring-color: var( --slotted-currency-field-invalid-focus-ring-color, var(--slotted-focus-ring-color-invalid, Highlight) );--_invalid-edge-width: var( --slotted-currency-field-invalid-edge-width, var(--slotted-control-invalid-edge-width, 1px) );--_invalid-edge-color: var( --slotted-currency-field-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-currency-field-invalid-border-color, var(--slotted-tone-danger-border) );box-shadow:var(--_invalid-edge)}[data-ui=currency-field][data-part=root][data-invalid]:has(>[data-part=input]: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=currency-field][data-part=root][data-variant=plain][data-invalid]:has(>[data-part=input]: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=currency-field][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=currency-field][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=currency-field][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=currency-field][data-part=root][data-readonly]{background-color:var( --slotted-currency-field-readonly-background, var(--slotted-tone-secondary-subtle-hover) );border-color:var( --slotted-currency-field-readonly-border-color, var(--slotted-border-subtle, ButtonBorder) );cursor:default}[data-ui=currency-field][data-part=root][data-disabled],[data-ui=currency-field][data-part=root]:has(>[data-part=input]:disabled){background-color:var( --slotted-currency-field-disabled-background, var(--slotted-disabled-background) );border-color:var( --slotted-currency-field-disabled-border-color, var(--slotted-disabled-border) );box-shadow:none;color:var(--slotted-currency-field-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui=currency-field][data-part=root][data-disabled]>[data-part=start],[data-ui=currency-field][data-part=root][data-disabled]>[data-part=end]{color:var(--slotted-disabled-foreground)}}\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 });
272
+ }`, isInline: true, styles: ["@layer slotted.components{[data-ui-currency-field][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-currency-field-icon-size-min, 14px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_inner-size: var(--slotted-control-inner-size-md, 24px);--_stepper-size: var( --slotted-currency-field-stepper-size, max( var(--slotted-target-min, 24px), min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) ) );--_action-size: var( --slotted-currency-field-action-size, min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) );--_inset: max( 0px, calc( (var(--_height) - 2 * var(--slotted-control-border-width, 1px) - var(--_action-size)) / 2 ) );--_action-radius: max( var(--slotted-radius-xs, 2px), calc(var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_inset)) );--_column-inset: var(--slotted-space-1, 2px);--_column-radius: max( var(--slotted-radius-xs, 2px), calc( var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_column-inset) ) );align-items:center;background-color:var( --slotted-currency-field-background, var(--slotted-control-surface, Field) );border:var(--slotted-control-border-width, 1px) solid var(--slotted-currency-field-border-color, var(--slotted-control-border-color, ButtonBorder));border-radius:var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px));box-shadow:var(--slotted-currency-field-shadow, var(--slotted-control-shadow, none));box-sizing:border-box;color:var(--slotted-currency-field-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(--_gap);inline-size:100%;min-inline-size:0;min-block-size:var(--_height);padding-inline:var(--_padding-inline);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-currency-field]>[data-part-input]{background-color:transparent;align-self:stretch;margin-block:calc(var(--slotted-control-border-width, 1px) * -1);border:0;color:inherit;flex:1 1 auto;font:inherit;font-variant-numeric:tabular-nums;outline:none;padding:0;min-inline-size:0;text-overflow:ellipsis;unicode-bidi:plaintext}[data-ui-currency-field]>[data-part-input]::placeholder{color:var(--slotted-currency-field-placeholder-color, var(--slotted-text-muted, GrayText));text-overflow:ellipsis}[data-ui-currency-field][data-align=end]>[data-part-input]{text-align:right}[data-ui-currency-field][data-align=end]:dir(rtl)>[data-part-input]{text-align:left}[data-ui-currency-field][data-align=start]>[data-part-input]{text-align:left}[data-ui-currency-field][data-align=start]:dir(rtl)>[data-part-input]{text-align:right}[data-ui-currency-field][data-part-root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_height: var(--slotted-control-height-sm, 30px);--_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));--_inner-size: var(--slotted-control-inner-size-sm, 22px)}[data-ui-currency-field][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-currency-field][data-part-root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_height: var(--slotted-control-height-lg, 38px);--_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));--_inner-size: var(--slotted-control-inner-size-lg, 28px)}[data-ui-currency-field][data-part-root][data-variant=subtle]{background-color:var( --slotted-currency-field-subtle-background, var(--slotted-surface-sunken, Canvas) );border-color:var( --slotted-currency-field-subtle-border-color, var(--slotted-border-subtle, ButtonBorder) )}[data-ui-currency-field][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-currency-field][data-part-root][data-variant=plain]{border-color:ButtonBorder}}[data-ui-currency-field]>[data-part-start],[data-ui-currency-field]>[data-part-end]{align-items:center;color:var(--slotted-currency-field-adornment-color, var(--slotted-text-muted, GrayText));display:inline-flex;flex:0 0 auto;gap:var(--slotted-space-2, .25rem);line-height:1;unicode-bidi:plaintext;--slotted-icon-size: var(--_icon-size)}[data-ui-currency-field]>[data-part-start]>svg,[data-ui-currency-field]>[data-part-end]>svg{block-size:var(--_icon-size);inline-size:var(--_icon-size)}[data-ui-currency-field]>[data-part-start]:not(:has(svg,img,[data-ui-icon])),[data-ui-currency-field]>[data-part-end]:not(:has(svg,img,[data-ui-icon])){padding-inline:calc(var(--_icon-size) / 8)}[data-ui-currency-field]>:is([data-part-start],[data-part-end]):has(>[data-part-scrub]){align-self:stretch}[data-ui-currency-field] [data-part-scrub]{align-items:center;align-self:stretch;cursor:ew-resize;display:inline-flex;gap:var(--slotted-space-2, .25rem);touch-action:none;transition:color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing);unicode-bidi:plaintext;user-select:none;-webkit-user-select:none}[data-ui-currency-field]:not([data-disabled]):not([data-readonly]) [data-part-scrub]:is(:hover,[data-scrubbing]){color:var(--slotted-currency-field-scrub-active-color, var(--slotted-text, CanvasText))}[data-ui-currency-field]:is([data-disabled],[data-readonly]) [data-part-scrub]{cursor:default;touch-action:auto}[data-ui-currency-field]>[data-part-stepper]>button,[data-ui-currency-field]>[data-part-decrement],[data-ui-currency-field]>[data-part-increment]{align-items:center;appearance:none;background-color:transparent;border:0;color:var(--slotted-currency-field-stepper-color, var(--slotted-text-muted, GrayText));cursor:pointer;display:inline-flex;flex:0 0 auto;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-currency-field] [data-part-decrement],[data-ui-currency-field] [data-part-increment]{--slotted-icon-size: var(--_icon-size)}[data-ui-currency-field][data-stepper=stacked] [data-part-increment]>[data-ui-icon]{rotate:.5turn}[data-ui-currency-field][data-part-root][data-stepper=stacked]{padding-inline-end:0}[data-ui-currency-field]>[data-part-stepper]{align-self:stretch;box-sizing:content-box;display:flex;flex:0 0 auto;flex-direction:column;inline-size:var(--_stepper-size);padding-block:var(--_column-inset);padding-inline-end:var(--_column-inset)}[data-ui-currency-field]>[data-part-stepper]>button{block-size:50%;border-radius:var(--_column-radius);inline-size:100%}[data-ui-currency-field]>[data-part-stepper]>:is([data-part-increment],[data-part-decrement]):after{content:\"\";inset-inline:0 calc(var(--_column-inset) * -1);position:absolute}[data-ui-currency-field]>[data-part-stepper]>[data-part-increment]:after{inset-block:calc(var(--_column-inset) * -1) 0}[data-ui-currency-field]>[data-part-stepper]>[data-part-decrement]:after{inset-block:0 calc(var(--_column-inset) * -1)}[data-ui-currency-field]>[data-part-stepper]>button>[data-ui-icon]{block-size:min(var(--_icon-size),100%);contain:size}[data-ui-currency-field][data-part-root][data-stepper=split]{gap:0;padding-inline:var(--_inset)}[data-ui-currency-field][data-stepper=split]>[data-part-decrement],[data-ui-currency-field][data-stepper=split]>[data-part-increment]{block-size:var(--_action-size);border-radius:var(--_action-radius);inline-size:var(--_action-size)}[data-ui-currency-field][data-stepper=split]>[data-part-start]{padding-inline-start:var(--_gap)}[data-ui-currency-field][data-stepper=split]>[data-part-end]{padding-inline-end:var(--_gap)}[data-ui-currency-field][data-stepper=split]>[data-part-input]{padding-inline:var(--_padding-inline)}[data-ui-currency-field][data-stepper=split]>[data-part-decrement]:after,[data-ui-currency-field][data-stepper=split]>[data-part-increment]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui-currency-field][data-stepper=split]>:is([data-part-decrement],[data-part-increment]):after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}[data-ui-currency-field]>[data-part-stepper]>:is([data-part-increment],[data-part-decrement]):after{inset-inline:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}}[data-ui-currency-field] [data-part-decrement]:hover:not(:disabled),[data-ui-currency-field] [data-part-increment]:hover:not(:disabled){background-color:var( --slotted-currency-field-stepper-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui-currency-field] [data-part-decrement]:active:not(:disabled),[data-ui-currency-field] [data-part-increment]:active:not(:disabled){background-color:var( --slotted-currency-field-stepper-active-background, var(--slotted-tone-secondary-subtle-active) )}[data-ui-currency-field] [data-part-decrement]:disabled,[data-ui-currency-field] [data-part-increment]:disabled{background-color:var( --slotted-currency-field-stepper-disabled-background, var(--slotted-disabled-background) );color:var(--slotted-currency-field-stepper-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui-currency-field] [data-part-decrement]:focus-visible,[data-ui-currency-field] [data-part-increment]: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)}[data-ui-currency-field][data-part-root]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){border-color:var( --slotted-currency-field-hover-border-color, var(--slotted-tone-accent-border) )}[data-ui-currency-field][data-part-root][data-variant=subtle]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-subtle-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui-currency-field][data-part-root][data-variant=plain]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-plain-hover-background, var(--slotted-tone-secondary-subtle-hover) );border-color:transparent}[data-ui-currency-field][data-part-root]:has(>[data-part-input]: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-control-focus-ring-offset, var(--slotted-focus-ring-offset, 2px))}[data-ui-currency-field][data-part-root][data-variant=plain]:has(>[data-part-input]:focus-visible){box-shadow:none;outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}[data-ui-currency-field][data-part-root][data-invalid]{--slotted-focus-ring-color: var( --slotted-currency-field-invalid-focus-ring-color, var(--slotted-focus-ring-color-invalid, Highlight) );--_invalid-edge-width: var( --slotted-currency-field-invalid-edge-width, var(--slotted-control-invalid-edge-width, 1px) );--_invalid-edge-color: var( --slotted-currency-field-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-currency-field-invalid-border-color, var(--slotted-tone-danger-border) );box-shadow:var(--_invalid-edge)}[data-ui-currency-field][data-part-root][data-invalid]:has(>[data-part-input]: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-currency-field][data-part-root][data-variant=plain][data-invalid]:has(>[data-part-input]: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-currency-field][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-currency-field][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-control-focus-ring-offset, var(--slotted-focus-ring-offset, 2px) )}[data-ui-currency-field][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-currency-field][data-part-root][data-readonly]{background-color:var( --slotted-currency-field-readonly-background, var(--slotted-tone-secondary-subtle-hover) );border-color:var( --slotted-currency-field-readonly-border-color, var(--slotted-border-subtle, ButtonBorder) );cursor:default}[data-ui-currency-field][data-part-root][data-disabled],[data-ui-currency-field][data-part-root]:has(>[data-part-input]:disabled){background-color:var( --slotted-currency-field-disabled-background, var(--slotted-disabled-background) );border-color:var( --slotted-currency-field-disabled-border-color, var(--slotted-disabled-border) );box-shadow:none;color:var(--slotted-currency-field-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui-currency-field][data-part-root][data-disabled]>[data-part-start],[data-ui-currency-field][data-part-root][data-disabled]>[data-part-end]{color:var(--slotted-disabled-foreground)}[data-ui-currency-field][data-part-root][data-appearance=display]{--_font-size: var( --slotted-currency-field-display-font-size, var(--slotted-font-size-4xl, 2rem) );--_height: calc( var(--_font-size) * var(--slotted-line-height-4xl, 1.2) + 2 * var(--slotted-space-2, .25rem) );--_padding-inline: var(--slotted-control-padding-inline-lg, 16px);--_gap: var(--slotted-space-3, .375rem);align-items:baseline;font-weight:var(--slotted-font-weight-medium, 500);letter-spacing:var(--slotted-letter-spacing-tighter, -.03em);line-height:var(--slotted-line-height-4xl, 1.2)}[data-ui-currency-field][data-part-root][data-appearance=display]>[data-part-symbol]{color:var(--slotted-currency-field-symbol-color, var(--slotted-text-muted, GrayText));flex:none;font-size:var( --slotted-currency-field-symbol-font-size, var(--slotted-font-size-xl, 1.125rem) );font-weight:var(--slotted-font-weight-regular, 400);letter-spacing:0}[data-ui-currency-field][data-part-root][data-appearance=display]>[data-part-input]{align-self:auto;margin-block:0}@supports (field-sizing: content){[data-ui-currency-field][data-part-root][data-appearance=display]{inline-size:fit-content;max-inline-size:100%}[data-ui-currency-field][data-part-root][data-appearance=display]>[data-part-input]{field-sizing:content;flex:0 1 auto;min-inline-size:1ch}}[data-ui-currency-field][data-part-root][data-appearance=display]{background-color:transparent;border-color:transparent;border-block-end-color:var( --slotted-currency-field-underline-color, var(--slotted-control-border-color, ButtonBorder) );border-radius:var(--slotted-radius-none, 0px);box-shadow:none;padding-inline:0}[data-ui-currency-field][data-part-root][data-appearance=display]:has(>[data-part-input]:focus-visible){border-block-end-color:var(--slotted-text, CanvasText);box-shadow:inset 0 calc(-1 * var(--slotted-border-width-thin, 1px)) 0 var(--slotted-text, CanvasText);outline:none}[data-ui-currency-field][data-part-root][data-appearance=display][data-invalid]{border-block-end-color:var(--slotted-tone-danger-border, CanvasText);box-shadow:none}[data-ui-currency-field][data-part-root][data-appearance=display][data-invalid]:has(>[data-part-input]:focus-visible){box-shadow:inset 0 calc(-1 * var(--_invalid-edge-width)) 0 var(--_invalid-edge-color)}[data-ui-currency-field][data-part-root][data-appearance=display]:has(>[data-part-input]:disabled){border-block-end-color:var(--slotted-disabled-border, GrayText)}@media(forced-colors:active){[data-ui-currency-field][data-part-root][data-appearance=display]{border-block-end-color:ButtonBorder}[data-ui-currency-field][data-part-root][data-appearance=display]:has(>[data-part-input]:focus-visible){border-block-end-color:Highlight;border-block-end-width:calc(2 * var(--slotted-border-width-thin, 1px))}[data-ui-currency-field][data-part-root][data-appearance=display][data-invalid]:has(>[data-part-input]:focus-visible){border-block-end-color:Highlight;border-block-end-width:calc(var(--slotted-border-width-thin, 1px) + var(--_invalid-edge-width))}}}\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 });
249
273
  }
250
274
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyField, decorators: [{
251
275
  type: Component,
252
276
  args: [{ selector: '[slCurrencyField]', standalone: true, exportAs: 'slCurrencyField', imports: [SlGlyph, SlIcon], template: `@if (resolvedStepper() === 'split') {
253
277
  <button
254
278
  data-part="decrement"
279
+ data-part-decrement=""
255
280
  type="button"
256
281
  tabindex="-1"
257
282
  [attr.aria-controls]="control()?.controlId()"
@@ -266,11 +291,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
266
291
  </button>
267
292
  }
268
293
  <ng-content select="[slCurrencyFieldStart]" />
294
+ @if (control()?.affix(); as affix) {
295
+ @if (affix.position === 'start') {
296
+ <span data-part="symbol" data-part-symbol="">{{ affix.text }}</span>
297
+ }
298
+ }
269
299
  <ng-content />
300
+ @if (control()?.affix(); as affix) {
301
+ @if (affix.position === 'end') {
302
+ <span data-part="symbol" data-part-symbol="">{{ affix.text }}</span>
303
+ }
304
+ }
270
305
  <ng-content select="[slCurrencyFieldEnd]" />
271
306
  @if (resolvedStepper() === 'split') {
272
307
  <button
273
308
  data-part="increment"
309
+ data-part-increment=""
274
310
  type="button"
275
311
  tabindex="-1"
276
312
  [attr.aria-controls]="control()?.controlId()"
@@ -284,9 +320,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
284
320
  <span slIcon><svg slGlyph name="plus"></svg></span>
285
321
  </button>
286
322
  } @else if (resolvedStepper() === 'stacked') {
287
- <span data-part="stepper">
323
+ <span data-part="stepper" data-part-stepper="">
288
324
  <button
289
325
  data-part="increment"
326
+ data-part-increment=""
290
327
  type="button"
291
328
  tabindex="-1"
292
329
  [attr.aria-controls]="control()?.controlId()"
@@ -303,6 +340,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
303
340
  </button>
304
341
  <button
305
342
  data-part="decrement"
343
+ data-part-decrement=""
306
344
  type="button"
307
345
  tabindex="-1"
308
346
  [attr.aria-controls]="control()?.controlId()"
@@ -326,18 +364,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
326
364
  />
327
365
  }`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
328
366
  'data-ui': 'currency-field',
367
+ 'data-ui-currency-field': '',
329
368
  'data-part': 'root',
369
+ 'data-part-root': '',
330
370
  '[attr.data-size]': 'resolvedSize()',
331
371
  '[attr.data-variant]': 'resolvedVariant()',
332
372
  '[attr.data-align]': 'resolvedAlign()',
373
+ '[attr.data-appearance]': 'resolvedAppearance()',
333
374
  '[attr.data-entry]': 'resolvedEntry()',
334
375
  '[attr.data-stepper]': 'resolvedStepper()',
335
376
  '[attr.data-disabled]': "control()?.resolvedDisabled() === true ? '' : null",
336
377
  '[attr.data-invalid]': "control()?.resolvedInvalid() === true ? '' : null",
337
378
  '[attr.data-readonly]': "control()?.resolvedReadOnly() === true ? '' : null",
338
379
  '[attr.data-scrubbing]': "scrubbing() ? '' : null",
339
- }, styles: ["@layer slotted.components{[data-ui=currency-field][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-currency-field-icon-size-min, 14px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_inner-size: var(--slotted-control-inner-size-md, 24px);--_stepper-size: var( --slotted-currency-field-stepper-size, max( var(--slotted-target-min, 24px), min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) ) );--_action-size: var( --slotted-currency-field-action-size, min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) );--_inset: max( 0px, calc( (var(--_height) - 2 * var(--slotted-control-border-width, 1px) - var(--_action-size)) / 2 ) );--_action-radius: max( var(--slotted-radius-xs, 2px), calc(var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_inset)) );--_column-inset: var(--slotted-space-1, 2px);--_column-radius: max( var(--slotted-radius-xs, 2px), calc( var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_column-inset) ) );align-items:center;background-color:var( --slotted-currency-field-background, var(--slotted-control-surface, Field) );border:var(--slotted-control-border-width, 1px) solid var(--slotted-currency-field-border-color, var(--slotted-control-border-color, ButtonBorder));border-radius:var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px));box-shadow:var(--slotted-currency-field-shadow, var(--slotted-control-shadow, none));box-sizing:border-box;color:var(--slotted-currency-field-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(--_gap);inline-size:100%;min-inline-size:0;min-block-size:var(--_height);padding-inline:var(--_padding-inline);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=currency-field]>[data-part=input]{background-color:transparent;align-self:stretch;margin-block:calc(var(--slotted-control-border-width, 1px) * -1);border:0;color:inherit;flex:1 1 auto;font:inherit;font-variant-numeric:tabular-nums;outline:none;padding:0;min-inline-size:0;text-overflow:ellipsis;unicode-bidi:plaintext}[data-ui=currency-field]>[data-part=input]::placeholder{color:var(--slotted-currency-field-placeholder-color, var(--slotted-text-muted, GrayText));text-overflow:ellipsis}[data-ui=currency-field][data-align=end]>[data-part=input]{text-align:right}[data-ui=currency-field][data-align=end]:dir(rtl)>[data-part=input]{text-align:left}[data-ui=currency-field][data-align=start]>[data-part=input]{text-align:left}[data-ui=currency-field][data-align=start]:dir(rtl)>[data-part=input]{text-align:right}[data-ui=currency-field][data-part=root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_height: var(--slotted-control-height-sm, 30px);--_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));--_inner-size: var(--slotted-control-inner-size-sm, 22px)}[data-ui=currency-field][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=currency-field][data-part=root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_height: var(--slotted-control-height-lg, 38px);--_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));--_inner-size: var(--slotted-control-inner-size-lg, 28px)}[data-ui=currency-field][data-part=root][data-variant=subtle]{background-color:var( --slotted-currency-field-subtle-background, var(--slotted-surface-sunken, Canvas) );border-color:var( --slotted-currency-field-subtle-border-color, var(--slotted-border-subtle, ButtonBorder) )}[data-ui=currency-field][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=currency-field][data-part=root][data-variant=plain]{border-color:ButtonBorder}}[data-ui=currency-field]>[data-part=start],[data-ui=currency-field]>[data-part=end]{align-items:center;color:var(--slotted-currency-field-adornment-color, var(--slotted-text-muted, GrayText));display:inline-flex;flex:0 0 auto;gap:var(--slotted-space-2, .25rem);line-height:1;unicode-bidi:plaintext;--slotted-icon-size: var(--_icon-size)}[data-ui=currency-field]>[data-part=start]>svg,[data-ui=currency-field]>[data-part=end]>svg{block-size:var(--_icon-size);inline-size:var(--_icon-size)}[data-ui=currency-field]>[data-part=start]:not(:has(svg,img,[data-ui=icon])),[data-ui=currency-field]>[data-part=end]:not(:has(svg,img,[data-ui=icon])){padding-inline:calc(var(--_icon-size) / 8)}[data-ui=currency-field]>:is([data-part=start],[data-part=end]):has(>[data-part=scrub]){align-self:stretch}[data-ui=currency-field] [data-part=scrub]{align-items:center;align-self:stretch;cursor:ew-resize;display:inline-flex;gap:var(--slotted-space-2, .25rem);touch-action:none;transition:color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing);unicode-bidi:plaintext;user-select:none;-webkit-user-select:none}[data-ui=currency-field]:not([data-disabled]):not([data-readonly]) [data-part=scrub]:is(:hover,[data-scrubbing]){color:var(--slotted-currency-field-scrub-active-color, var(--slotted-text, CanvasText))}[data-ui=currency-field]:is([data-disabled],[data-readonly]) [data-part=scrub]{cursor:default;touch-action:auto}[data-ui=currency-field]>[data-part=stepper]>button,[data-ui=currency-field]>[data-part=decrement],[data-ui=currency-field]>[data-part=increment]{align-items:center;appearance:none;background-color:transparent;border:0;color:var(--slotted-currency-field-stepper-color, var(--slotted-text-muted, GrayText));cursor:pointer;display:inline-flex;flex:0 0 auto;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=currency-field] [data-part=decrement],[data-ui=currency-field] [data-part=increment]{--slotted-icon-size: var(--_icon-size)}[data-ui=currency-field][data-stepper=stacked] [data-part=increment]>[data-ui=icon]{rotate:.5turn}[data-ui=currency-field][data-part=root][data-stepper=stacked]{padding-inline-end:0}[data-ui=currency-field]>[data-part=stepper]{align-self:stretch;box-sizing:content-box;display:flex;flex:0 0 auto;flex-direction:column;inline-size:var(--_stepper-size);padding-block:var(--_column-inset);padding-inline-end:var(--_column-inset)}[data-ui=currency-field]>[data-part=stepper]>button{block-size:50%;border-radius:var(--_column-radius);inline-size:100%}[data-ui=currency-field]>[data-part=stepper]>:is([data-part=increment],[data-part=decrement]):after{content:\"\";inset-inline:0 calc(var(--_column-inset) * -1);position:absolute}[data-ui=currency-field]>[data-part=stepper]>[data-part=increment]:after{inset-block:calc(var(--_column-inset) * -1) 0}[data-ui=currency-field]>[data-part=stepper]>[data-part=decrement]:after{inset-block:0 calc(var(--_column-inset) * -1)}[data-ui=currency-field]>[data-part=stepper]>button>[data-ui=icon]{block-size:min(var(--_icon-size),100%);contain:size}[data-ui=currency-field][data-part=root][data-stepper=split]{gap:0;padding-inline:var(--_inset)}[data-ui=currency-field][data-stepper=split]>[data-part=decrement],[data-ui=currency-field][data-stepper=split]>[data-part=increment]{block-size:var(--_action-size);border-radius:var(--_action-radius);inline-size:var(--_action-size)}[data-ui=currency-field][data-stepper=split]>[data-part=start]{padding-inline-start:var(--_gap)}[data-ui=currency-field][data-stepper=split]>[data-part=end]{padding-inline-end:var(--_gap)}[data-ui=currency-field][data-stepper=split]>[data-part=input]{padding-inline:var(--_padding-inline)}[data-ui=currency-field][data-stepper=split]>[data-part=decrement]:after,[data-ui=currency-field][data-stepper=split]>[data-part=increment]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui=currency-field][data-stepper=split]>:is([data-part=decrement],[data-part=increment]):after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}[data-ui=currency-field]>[data-part=stepper]>:is([data-part=increment],[data-part=decrement]):after{inset-inline:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}}[data-ui=currency-field] [data-part=decrement]:hover:not(:disabled),[data-ui=currency-field] [data-part=increment]:hover:not(:disabled){background-color:var( --slotted-currency-field-stepper-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=currency-field] [data-part=decrement]:active:not(:disabled),[data-ui=currency-field] [data-part=increment]:active:not(:disabled){background-color:var( --slotted-currency-field-stepper-active-background, var(--slotted-tone-secondary-subtle-active) )}[data-ui=currency-field] [data-part=decrement]:disabled,[data-ui=currency-field] [data-part=increment]:disabled{background-color:var( --slotted-currency-field-stepper-disabled-background, var(--slotted-disabled-background) );color:var(--slotted-currency-field-stepper-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui=currency-field] [data-part=decrement]:focus-visible,[data-ui=currency-field] [data-part=increment]: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)}[data-ui=currency-field][data-part=root]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){border-color:var( --slotted-currency-field-hover-border-color, var(--slotted-tone-accent-border) )}[data-ui=currency-field][data-part=root][data-variant=subtle]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-subtle-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui=currency-field][data-part=root][data-variant=plain]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-plain-hover-background, var(--slotted-tone-secondary-subtle-hover) );border-color:transparent}[data-ui=currency-field][data-part=root]:has(>[data-part=input]: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=currency-field][data-part=root][data-variant=plain]:has(>[data-part=input]:focus-visible){box-shadow:none;outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}[data-ui=currency-field][data-part=root][data-invalid]{--slotted-focus-ring-color: var( --slotted-currency-field-invalid-focus-ring-color, var(--slotted-focus-ring-color-invalid, Highlight) );--_invalid-edge-width: var( --slotted-currency-field-invalid-edge-width, var(--slotted-control-invalid-edge-width, 1px) );--_invalid-edge-color: var( --slotted-currency-field-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-currency-field-invalid-border-color, var(--slotted-tone-danger-border) );box-shadow:var(--_invalid-edge)}[data-ui=currency-field][data-part=root][data-invalid]:has(>[data-part=input]: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=currency-field][data-part=root][data-variant=plain][data-invalid]:has(>[data-part=input]: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=currency-field][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=currency-field][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=currency-field][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=currency-field][data-part=root][data-readonly]{background-color:var( --slotted-currency-field-readonly-background, var(--slotted-tone-secondary-subtle-hover) );border-color:var( --slotted-currency-field-readonly-border-color, var(--slotted-border-subtle, ButtonBorder) );cursor:default}[data-ui=currency-field][data-part=root][data-disabled],[data-ui=currency-field][data-part=root]:has(>[data-part=input]:disabled){background-color:var( --slotted-currency-field-disabled-background, var(--slotted-disabled-background) );border-color:var( --slotted-currency-field-disabled-border-color, var(--slotted-disabled-border) );box-shadow:none;color:var(--slotted-currency-field-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui=currency-field][data-part=root][data-disabled]>[data-part=start],[data-ui=currency-field][data-part=root][data-disabled]>[data-part=end]{color:var(--slotted-disabled-foreground)}}\n"] }]
340
- }], ctorParameters: () => [], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], stepper: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepper", required: false }] }], messages: [{ type: i0.Input, args: [{ isSignal: true, alias: "messages", required: false }] }], control: [{ type: i0.ContentChild, args: [i0.forwardRef(() => SlCurrencyFieldControl), { ...{ descendants: true }, isSignal: true }] }] } });
380
+ }, styles: ["@layer slotted.components{[data-ui-currency-field][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-currency-field-icon-size-min, 14px);--_icon-size: max(var(--_icon-floor), var(--slotted-control-icon-size-md, 16px));--_inner-size: var(--slotted-control-inner-size-md, 24px);--_stepper-size: var( --slotted-currency-field-stepper-size, max( var(--slotted-target-min, 24px), min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) ) );--_action-size: var( --slotted-currency-field-action-size, min(calc(var(--_icon-size) + 2 * var(--slotted-space-2, .25rem)), var(--_inner-size)) );--_inset: max( 0px, calc( (var(--_height) - 2 * var(--slotted-control-border-width, 1px) - var(--_action-size)) / 2 ) );--_action-radius: max( var(--slotted-radius-xs, 2px), calc(var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_inset)) );--_column-inset: var(--slotted-space-1, 2px);--_column-radius: max( var(--slotted-radius-xs, 2px), calc( var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px)) - var(--_column-inset) ) );align-items:center;background-color:var( --slotted-currency-field-background, var(--slotted-control-surface, Field) );border:var(--slotted-control-border-width, 1px) solid var(--slotted-currency-field-border-color, var(--slotted-control-border-color, ButtonBorder));border-radius:var(--slotted-currency-field-radius, var(--slotted-control-radius, 4px));box-shadow:var(--slotted-currency-field-shadow, var(--slotted-control-shadow, none));box-sizing:border-box;color:var(--slotted-currency-field-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(--_gap);inline-size:100%;min-inline-size:0;min-block-size:var(--_height);padding-inline:var(--_padding-inline);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-currency-field]>[data-part-input]{background-color:transparent;align-self:stretch;margin-block:calc(var(--slotted-control-border-width, 1px) * -1);border:0;color:inherit;flex:1 1 auto;font:inherit;font-variant-numeric:tabular-nums;outline:none;padding:0;min-inline-size:0;text-overflow:ellipsis;unicode-bidi:plaintext}[data-ui-currency-field]>[data-part-input]::placeholder{color:var(--slotted-currency-field-placeholder-color, var(--slotted-text-muted, GrayText));text-overflow:ellipsis}[data-ui-currency-field][data-align=end]>[data-part-input]{text-align:right}[data-ui-currency-field][data-align=end]:dir(rtl)>[data-part-input]{text-align:left}[data-ui-currency-field][data-align=start]>[data-part-input]{text-align:left}[data-ui-currency-field][data-align=start]:dir(rtl)>[data-part-input]{text-align:right}[data-ui-currency-field][data-part-root][data-size=sm]{--_font-size: var(--slotted-control-font-size-sm, 12px);--_height: var(--slotted-control-height-sm, 30px);--_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));--_inner-size: var(--slotted-control-inner-size-sm, 22px)}[data-ui-currency-field][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-currency-field][data-part-root][data-size=lg]{--_font-size: var(--slotted-control-font-size-lg, 14px);--_height: var(--slotted-control-height-lg, 38px);--_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));--_inner-size: var(--slotted-control-inner-size-lg, 28px)}[data-ui-currency-field][data-part-root][data-variant=subtle]{background-color:var( --slotted-currency-field-subtle-background, var(--slotted-surface-sunken, Canvas) );border-color:var( --slotted-currency-field-subtle-border-color, var(--slotted-border-subtle, ButtonBorder) )}[data-ui-currency-field][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-currency-field][data-part-root][data-variant=plain]{border-color:ButtonBorder}}[data-ui-currency-field]>[data-part-start],[data-ui-currency-field]>[data-part-end]{align-items:center;color:var(--slotted-currency-field-adornment-color, var(--slotted-text-muted, GrayText));display:inline-flex;flex:0 0 auto;gap:var(--slotted-space-2, .25rem);line-height:1;unicode-bidi:plaintext;--slotted-icon-size: var(--_icon-size)}[data-ui-currency-field]>[data-part-start]>svg,[data-ui-currency-field]>[data-part-end]>svg{block-size:var(--_icon-size);inline-size:var(--_icon-size)}[data-ui-currency-field]>[data-part-start]:not(:has(svg,img,[data-ui-icon])),[data-ui-currency-field]>[data-part-end]:not(:has(svg,img,[data-ui-icon])){padding-inline:calc(var(--_icon-size) / 8)}[data-ui-currency-field]>:is([data-part-start],[data-part-end]):has(>[data-part-scrub]){align-self:stretch}[data-ui-currency-field] [data-part-scrub]{align-items:center;align-self:stretch;cursor:ew-resize;display:inline-flex;gap:var(--slotted-space-2, .25rem);touch-action:none;transition:color var(--slotted-control-transition-duration) var(--slotted-control-transition-easing);unicode-bidi:plaintext;user-select:none;-webkit-user-select:none}[data-ui-currency-field]:not([data-disabled]):not([data-readonly]) [data-part-scrub]:is(:hover,[data-scrubbing]){color:var(--slotted-currency-field-scrub-active-color, var(--slotted-text, CanvasText))}[data-ui-currency-field]:is([data-disabled],[data-readonly]) [data-part-scrub]{cursor:default;touch-action:auto}[data-ui-currency-field]>[data-part-stepper]>button,[data-ui-currency-field]>[data-part-decrement],[data-ui-currency-field]>[data-part-increment]{align-items:center;appearance:none;background-color:transparent;border:0;color:var(--slotted-currency-field-stepper-color, var(--slotted-text-muted, GrayText));cursor:pointer;display:inline-flex;flex:0 0 auto;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-currency-field] [data-part-decrement],[data-ui-currency-field] [data-part-increment]{--slotted-icon-size: var(--_icon-size)}[data-ui-currency-field][data-stepper=stacked] [data-part-increment]>[data-ui-icon]{rotate:.5turn}[data-ui-currency-field][data-part-root][data-stepper=stacked]{padding-inline-end:0}[data-ui-currency-field]>[data-part-stepper]{align-self:stretch;box-sizing:content-box;display:flex;flex:0 0 auto;flex-direction:column;inline-size:var(--_stepper-size);padding-block:var(--_column-inset);padding-inline-end:var(--_column-inset)}[data-ui-currency-field]>[data-part-stepper]>button{block-size:50%;border-radius:var(--_column-radius);inline-size:100%}[data-ui-currency-field]>[data-part-stepper]>:is([data-part-increment],[data-part-decrement]):after{content:\"\";inset-inline:0 calc(var(--_column-inset) * -1);position:absolute}[data-ui-currency-field]>[data-part-stepper]>[data-part-increment]:after{inset-block:calc(var(--_column-inset) * -1) 0}[data-ui-currency-field]>[data-part-stepper]>[data-part-decrement]:after{inset-block:0 calc(var(--_column-inset) * -1)}[data-ui-currency-field]>[data-part-stepper]>button>[data-ui-icon]{block-size:min(var(--_icon-size),100%);contain:size}[data-ui-currency-field][data-part-root][data-stepper=split]{gap:0;padding-inline:var(--_inset)}[data-ui-currency-field][data-stepper=split]>[data-part-decrement],[data-ui-currency-field][data-stepper=split]>[data-part-increment]{block-size:var(--_action-size);border-radius:var(--_action-radius);inline-size:var(--_action-size)}[data-ui-currency-field][data-stepper=split]>[data-part-start]{padding-inline-start:var(--_gap)}[data-ui-currency-field][data-stepper=split]>[data-part-end]{padding-inline-end:var(--_gap)}[data-ui-currency-field][data-stepper=split]>[data-part-input]{padding-inline:var(--_padding-inline)}[data-ui-currency-field][data-stepper=split]>[data-part-decrement]:after,[data-ui-currency-field][data-stepper=split]>[data-part-increment]:after{content:\"\";inset:min(0px,calc((100% - var(--slotted-target-min, 24px)) / 2));position:absolute}@media(pointer:coarse){[data-ui-currency-field][data-stepper=split]>:is([data-part-decrement],[data-part-increment]):after{inset:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}[data-ui-currency-field]>[data-part-stepper]>:is([data-part-increment],[data-part-decrement]):after{inset-inline:min(0px,calc((100% - var(--slotted-target-comfortable, 44px)) / 2))}}[data-ui-currency-field] [data-part-decrement]:hover:not(:disabled),[data-ui-currency-field] [data-part-increment]:hover:not(:disabled){background-color:var( --slotted-currency-field-stepper-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui-currency-field] [data-part-decrement]:active:not(:disabled),[data-ui-currency-field] [data-part-increment]:active:not(:disabled){background-color:var( --slotted-currency-field-stepper-active-background, var(--slotted-tone-secondary-subtle-active) )}[data-ui-currency-field] [data-part-decrement]:disabled,[data-ui-currency-field] [data-part-increment]:disabled{background-color:var( --slotted-currency-field-stepper-disabled-background, var(--slotted-disabled-background) );color:var(--slotted-currency-field-stepper-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui-currency-field] [data-part-decrement]:focus-visible,[data-ui-currency-field] [data-part-increment]: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)}[data-ui-currency-field][data-part-root]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){border-color:var( --slotted-currency-field-hover-border-color, var(--slotted-tone-accent-border) )}[data-ui-currency-field][data-part-root][data-variant=subtle]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-subtle-hover-background, var(--slotted-tone-secondary-subtle-hover) )}[data-ui-currency-field][data-part-root][data-variant=plain]:hover:not([data-disabled]):not([data-readonly]):not([data-invalid]){background-color:var( --slotted-currency-field-plain-hover-background, var(--slotted-tone-secondary-subtle-hover) );border-color:transparent}[data-ui-currency-field][data-part-root]:has(>[data-part-input]: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-control-focus-ring-offset, var(--slotted-focus-ring-offset, 2px))}[data-ui-currency-field][data-part-root][data-variant=plain]:has(>[data-part-input]:focus-visible){box-shadow:none;outline-offset:calc(var(--slotted-focus-ring-offset, 2px) * -1)}[data-ui-currency-field][data-part-root][data-invalid]{--slotted-focus-ring-color: var( --slotted-currency-field-invalid-focus-ring-color, var(--slotted-focus-ring-color-invalid, Highlight) );--_invalid-edge-width: var( --slotted-currency-field-invalid-edge-width, var(--slotted-control-invalid-edge-width, 1px) );--_invalid-edge-color: var( --slotted-currency-field-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-currency-field-invalid-border-color, var(--slotted-tone-danger-border) );box-shadow:var(--_invalid-edge)}[data-ui-currency-field][data-part-root][data-invalid]:has(>[data-part-input]: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-currency-field][data-part-root][data-variant=plain][data-invalid]:has(>[data-part-input]: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-currency-field][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-currency-field][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-control-focus-ring-offset, var(--slotted-focus-ring-offset, 2px) )}[data-ui-currency-field][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-currency-field][data-part-root][data-readonly]{background-color:var( --slotted-currency-field-readonly-background, var(--slotted-tone-secondary-subtle-hover) );border-color:var( --slotted-currency-field-readonly-border-color, var(--slotted-border-subtle, ButtonBorder) );cursor:default}[data-ui-currency-field][data-part-root][data-disabled],[data-ui-currency-field][data-part-root]:has(>[data-part-input]:disabled){background-color:var( --slotted-currency-field-disabled-background, var(--slotted-disabled-background) );border-color:var( --slotted-currency-field-disabled-border-color, var(--slotted-disabled-border) );box-shadow:none;color:var(--slotted-currency-field-disabled-color, var(--slotted-disabled-foreground));cursor:not-allowed}[data-ui-currency-field][data-part-root][data-disabled]>[data-part-start],[data-ui-currency-field][data-part-root][data-disabled]>[data-part-end]{color:var(--slotted-disabled-foreground)}[data-ui-currency-field][data-part-root][data-appearance=display]{--_font-size: var( --slotted-currency-field-display-font-size, var(--slotted-font-size-4xl, 2rem) );--_height: calc( var(--_font-size) * var(--slotted-line-height-4xl, 1.2) + 2 * var(--slotted-space-2, .25rem) );--_padding-inline: var(--slotted-control-padding-inline-lg, 16px);--_gap: var(--slotted-space-3, .375rem);align-items:baseline;font-weight:var(--slotted-font-weight-medium, 500);letter-spacing:var(--slotted-letter-spacing-tighter, -.03em);line-height:var(--slotted-line-height-4xl, 1.2)}[data-ui-currency-field][data-part-root][data-appearance=display]>[data-part-symbol]{color:var(--slotted-currency-field-symbol-color, var(--slotted-text-muted, GrayText));flex:none;font-size:var( --slotted-currency-field-symbol-font-size, var(--slotted-font-size-xl, 1.125rem) );font-weight:var(--slotted-font-weight-regular, 400);letter-spacing:0}[data-ui-currency-field][data-part-root][data-appearance=display]>[data-part-input]{align-self:auto;margin-block:0}@supports (field-sizing: content){[data-ui-currency-field][data-part-root][data-appearance=display]{inline-size:fit-content;max-inline-size:100%}[data-ui-currency-field][data-part-root][data-appearance=display]>[data-part-input]{field-sizing:content;flex:0 1 auto;min-inline-size:1ch}}[data-ui-currency-field][data-part-root][data-appearance=display]{background-color:transparent;border-color:transparent;border-block-end-color:var( --slotted-currency-field-underline-color, var(--slotted-control-border-color, ButtonBorder) );border-radius:var(--slotted-radius-none, 0px);box-shadow:none;padding-inline:0}[data-ui-currency-field][data-part-root][data-appearance=display]:has(>[data-part-input]:focus-visible){border-block-end-color:var(--slotted-text, CanvasText);box-shadow:inset 0 calc(-1 * var(--slotted-border-width-thin, 1px)) 0 var(--slotted-text, CanvasText);outline:none}[data-ui-currency-field][data-part-root][data-appearance=display][data-invalid]{border-block-end-color:var(--slotted-tone-danger-border, CanvasText);box-shadow:none}[data-ui-currency-field][data-part-root][data-appearance=display][data-invalid]:has(>[data-part-input]:focus-visible){box-shadow:inset 0 calc(-1 * var(--_invalid-edge-width)) 0 var(--_invalid-edge-color)}[data-ui-currency-field][data-part-root][data-appearance=display]:has(>[data-part-input]:disabled){border-block-end-color:var(--slotted-disabled-border, GrayText)}@media(forced-colors:active){[data-ui-currency-field][data-part-root][data-appearance=display]{border-block-end-color:ButtonBorder}[data-ui-currency-field][data-part-root][data-appearance=display]:has(>[data-part-input]:focus-visible){border-block-end-color:Highlight;border-block-end-width:calc(2 * var(--slotted-border-width-thin, 1px))}[data-ui-currency-field][data-part-root][data-appearance=display][data-invalid]:has(>[data-part-input]:focus-visible){border-block-end-color:Highlight;border-block-end-width:calc(var(--slotted-border-width-thin, 1px) + var(--_invalid-edge-width))}}}\n"] }]
381
+ }], ctorParameters: () => [], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], appearance: [{ type: i0.Input, args: [{ isSignal: true, alias: "appearance", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], stepper: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepper", required: false }] }], messages: [{ type: i0.Input, args: [{ isSignal: true, alias: "messages", required: false }] }], control: [{ type: i0.ContentChild, args: [i0.forwardRef(() => SlCurrencyFieldControl), { ...{ descendants: true }, isSignal: true }] }] } });
341
382
 
342
383
  /** `undefined` stays absent; anything else becomes a number. */
343
384
  const optionalNumber = (value) => value === undefined || value === null || value === '' ? undefined : numberAttribute(value);
@@ -381,9 +422,20 @@ class SlCurrencyFieldInput {
381
422
  * `null` is empty, and `undefined` is the absence that makes the control
382
423
  * uncontrolled — the two are different answers.
383
424
  */
384
- value = input(undefined, { ...(ngDevMode ? { debugName: "value" } : /* istanbul ignore next */ {}), transform: (raw) => (raw === undefined ? undefined : (optionalNumber(raw) ?? null)) });
385
- /** The amount the control starts from when nobody else writes one. */
386
- defaultValue = input(null, { ...(ngDevMode ? { debugName: "defaultValue" } : /* istanbul ignore next */ {}), transform: (raw) => (raw === undefined ? null : (optionalNumber(raw) ?? null)) });
425
+ valueInUnit = input(undefined, { ...(ngDevMode ? { debugName: "valueInUnit" } : /* istanbul ignore next */ {}), alias: 'value',
426
+ transform: (raw) => (raw === undefined ? undefined : (optionalNumber(raw) ?? null)) });
427
+ /** The amount the control starts from when nobody else writes one, in `unit`. */
428
+ defaultValueInUnit = input(null, { ...(ngDevMode ? { debugName: "defaultValueInUnit" } : /* istanbul ignore next */ {}), alias: 'defaultValue',
429
+ transform: (raw) => (raw === undefined ? null : (optionalNumber(raw) ?? null)) });
430
+ /**
431
+ * The unit `value`, `defaultValue`, `min`, `max`, the steps, `stepFrom`,
432
+ * `valueChange`, the form model and the submitted amount are in. `major` is
433
+ * `12.34`; `minor` is the integer `1234` of the currency's minor unit, which
434
+ * `fractionDigits` decides when set. Entry, format and appearance do not
435
+ * change. Defaults to the token, then `major`.
436
+ */
437
+ unit = input(undefined, /* @ts-ignore */
438
+ ...(ngDevMode ? [{ debugName: "unit" }] : /* istanbul ignore next */ []));
387
439
  /** How the reader types. Defaults to the token, then `cents`. */
388
440
  entry = input(undefined, /* @ts-ignore */
389
441
  ...(ngDevMode ? [{ debugName: "entry" }] : /* istanbul ignore next */ []));
@@ -394,16 +446,24 @@ class SlCurrencyFieldInput {
394
446
  */
395
447
  formatOn = input(undefined, /* @ts-ignore */
396
448
  ...(ngDevMode ? [{ debugName: "formatOn" }] : /* istanbul ignore next */ []));
397
- min = input(undefined, { ...(ngDevMode ? { debugName: "min" } : /* istanbul ignore next */ {}), transform: optionalNumber });
398
- max = input(undefined, { ...(ngDevMode ? { debugName: "max" } : /* istanbul ignore next */ {}), transform: optionalNumber });
399
- /** What the arrows and the two buttons move by, in major units. */
400
- step = input(1, { ...(ngDevMode ? { debugName: "step" } : /* istanbul ignore next */ {}), transform: (raw) => optionalNumber(raw) ?? 1 });
449
+ /** The smallest amount, in `unit`. */
450
+ minInUnit = input(undefined, { ...(ngDevMode ? { debugName: "minInUnit" } : /* istanbul ignore next */ {}), alias: 'min',
451
+ transform: optionalNumber });
452
+ /** The largest amount, in `unit`. */
453
+ maxInUnit = input(undefined, { ...(ngDevMode ? { debugName: "maxInUnit" } : /* istanbul ignore next */ {}), alias: 'max',
454
+ transform: optionalNumber });
455
+ /** What the arrows and the two buttons move by, in `unit`. One major unit by default. */
456
+ stepInUnit = input(undefined, { ...(ngDevMode ? { debugName: "stepInUnit" } : /* istanbul ignore next */ {}), alias: 'step',
457
+ transform: optionalNumber });
401
458
  /** The amount `Shift` and the page keys move by. Defaults to `step * 10`. */
402
- largeStep = input(undefined, { ...(ngDevMode ? { debugName: "largeStep" } : /* istanbul ignore next */ {}), transform: optionalNumber });
459
+ largeStepInUnit = input(undefined, { ...(ngDevMode ? { debugName: "largeStepInUnit" } : /* istanbul ignore next */ {}), alias: 'largeStep',
460
+ transform: optionalNumber });
403
461
  /** The amount `Alt` moves by. Defaults to `step / 10`. */
404
- smallStep = input(undefined, { ...(ngDevMode ? { debugName: "smallStep" } : /* istanbul ignore next */ {}), transform: optionalNumber });
462
+ smallStepInUnit = input(undefined, { ...(ngDevMode ? { debugName: "smallStepInUnit" } : /* istanbul ignore next */ {}), alias: 'smallStep',
463
+ transform: optionalNumber });
405
464
  /** Where an empty control starts stepping from. Defaults to `min`, then nought. */
406
- stepFrom = input(undefined, { ...(ngDevMode ? { debugName: "stepFrom" } : /* istanbul ignore next */ {}), transform: optionalNumber });
465
+ stepFromInUnit = input(undefined, { ...(ngDevMode ? { debugName: "stepFromInUnit" } : /* istanbul ignore next */ {}), alias: 'stepFrom',
466
+ transform: optionalNumber });
407
467
  /** Where an amount outside the range goes, and when. Defaults to the token, then `blur`. */
408
468
  clamp = input(undefined, /* @ts-ignore */
409
469
  ...(ngDevMode ? [{ debugName: "clamp" }] : /* istanbul ignore next */ []));
@@ -490,6 +550,22 @@ class SlCurrencyFieldInput {
490
550
  * options object is read through a signal, so an inline object handed on
491
551
  * every change detection does not rebuild the parser.
492
552
  */
553
+ /**
554
+ * At the display appearance the mark is drawn apart from the digits, so the
555
+ * frame can mute it at a smaller step: the text carries the amount alone,
556
+ * and the mark stands on the side the locale writes it on.
557
+ */
558
+ affix = computed(() => {
559
+ const currency = this.currency() ?? this.defaults.currency;
560
+ if (currency === undefined || this.currencyField.resolvedAppearance() !== 'display')
561
+ return null;
562
+ return currencyAffix({
563
+ currency,
564
+ currencyDisplay: this.currencyDisplay() ?? this.defaults.currencyDisplay,
565
+ locale: this.locale() ?? this.appLocale(),
566
+ });
567
+ }, /* @ts-ignore */
568
+ ...(ngDevMode ? [{ debugName: "affix" }] : /* istanbul ignore next */ []));
493
569
  formatter = computed(() => {
494
570
  const currency = this.currency() ?? this.defaults.currency;
495
571
  if (currency === undefined) {
@@ -501,13 +577,44 @@ class SlCurrencyFieldInput {
501
577
  const options = this.format();
502
578
  return createCurrencyFormat({
503
579
  currency,
504
- currencyDisplay: this.currencyDisplay() ?? this.defaults.currencyDisplay,
580
+ currencyDisplay: this.affix() === null ? (this.currencyDisplay() ?? this.defaults.currencyDisplay) : 'none',
505
581
  locale: this.locale() ?? this.appLocale(),
506
582
  ...(fractionDigits === undefined ? {} : { fractionDigits }),
507
583
  ...(options === undefined ? {} : { options }),
508
584
  });
509
585
  }, /* @ts-ignore */
510
586
  ...(ngDevMode ? [{ debugName: "formatter" }] : /* istanbul ignore next */ []));
587
+ resolvedUnit = computed(() => this.unit() ?? this.defaults.unit, /* @ts-ignore */
588
+ ...(ngDevMode ? [{ debugName: "resolvedUnit" }] : /* istanbul ignore next */ []));
589
+ /* Everything below computes in major units; `unit` is converted here, on the way in. */
590
+ inMajor(amount) {
591
+ return this.resolvedUnit() === 'minor'
592
+ ? amountFromUnit(amount, 'minor', this.formatter())
593
+ : amount;
594
+ }
595
+ /** On the way out. */
596
+ inUnit(amount) {
597
+ return this.resolvedUnit() === 'minor' ? this.formatter().toMinorUnits(amount) : amount;
598
+ }
599
+ value = computed(() => this.inMajor(this.valueInUnit()), /* @ts-ignore */
600
+ ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
601
+ defaultValue = computed(() => this.inMajor(this.defaultValueInUnit()), /* @ts-ignore */
602
+ ...(ngDevMode ? [{ debugName: "defaultValue" }] : /* istanbul ignore next */ []));
603
+ min = computed(() => this.inMajor(this.minInUnit()), /* @ts-ignore */
604
+ ...(ngDevMode ? [{ debugName: "min" }] : /* istanbul ignore next */ []));
605
+ max = computed(() => this.inMajor(this.maxInUnit()), /* @ts-ignore */
606
+ ...(ngDevMode ? [{ debugName: "max" }] : /* istanbul ignore next */ []));
607
+ step = computed(() => {
608
+ const step = this.stepInUnit();
609
+ return step === undefined ? 1 : this.inMajor(step);
610
+ }, /* @ts-ignore */
611
+ ...(ngDevMode ? [{ debugName: "step" }] : /* istanbul ignore next */ []));
612
+ largeStep = computed(() => this.inMajor(this.largeStepInUnit()), /* @ts-ignore */
613
+ ...(ngDevMode ? [{ debugName: "largeStep" }] : /* istanbul ignore next */ []));
614
+ smallStep = computed(() => this.inMajor(this.smallStepInUnit()), /* @ts-ignore */
615
+ ...(ngDevMode ? [{ debugName: "smallStep" }] : /* istanbul ignore next */ []));
616
+ stepFrom = computed(() => this.inMajor(this.stepFromInUnit()), /* @ts-ignore */
617
+ ...(ngDevMode ? [{ debugName: "stepFrom" }] : /* istanbul ignore next */ []));
511
618
  /** Present means the consumer owns it; absent means the directive does. */
512
619
  controlled = computed(() => this.value() !== undefined, /* @ts-ignore */
513
620
  ...(ngDevMode ? [{ debugName: "controlled" }] : /* istanbul ignore next */ []));
@@ -520,9 +627,16 @@ class SlCurrencyFieldInput {
520
627
  return this.allowEmpty() ? held : (held ?? 0);
521
628
  }, /* @ts-ignore */
522
629
  ...(ngDevMode ? [{ debugName: "numberValue" }] : /* istanbul ignore next */ []));
630
+ submittedValue = computed(() => this.inUnit(this.numberValue()), /* @ts-ignore */
631
+ ...(ngDevMode ? [{ debugName: "submittedValue" }] : /* istanbul ignore next */ []));
523
632
  valueText = computed(() => {
524
633
  const shown = this.text();
525
- return shown === '' ? null : shown;
634
+ if (shown === '')
635
+ return null;
636
+ const affix = this.affix();
637
+ if (affix === null)
638
+ return shown;
639
+ return affix.position === 'start' ? `${affix.text} ${shown}` : `${shown} ${affix.text}`;
526
640
  }, /* @ts-ignore */
527
641
  ...(ngDevMode ? [{ debugName: "valueText" }] : /* istanbul ignore next */ []));
528
642
  resolvedEntry = computed(() => this.entry() ?? this.defaults.entry, /* @ts-ignore */
@@ -655,8 +769,9 @@ class SlCurrencyFieldInput {
655
769
  this.move(direction, this.step(), 'pointer', source);
656
770
  }
657
771
  writeValue(value) {
658
- this.own.set(value ?? null);
659
- this.write(this.formatter().format(this.settledAmount(value ?? null)));
772
+ const amount = this.inMajor(value ?? null);
773
+ this.own.set(amount);
774
+ this.write(this.formatter().format(this.settledAmount(amount)));
660
775
  }
661
776
  registerOnChange(fn) {
662
777
  this.onChangeFn = fn;
@@ -912,14 +1027,14 @@ class SlCurrencyFieldInput {
912
1027
  controlled: undefined,
913
1028
  initial: current,
914
1029
  onRequest: (pending) => {
915
- this.valueChange.emit(withAmount(pending, formatter.currency, minorUnits ?? formatter.toMinorUnits(next)));
1030
+ this.valueChange.emit(requestInUnit(withAmount(pending, formatter.currency, minorUnits ?? formatter.toMinorUnits(next)), this.resolvedUnit(), formatter));
916
1031
  cancelled = pending.cancelled;
917
1032
  },
918
1033
  });
919
1034
  state.request(next, reason, source);
920
1035
  if (cancelled)
921
1036
  return false;
922
- this.onChangeFn(next);
1037
+ this.onChangeFn(this.inUnit(next));
923
1038
  /* A controlled control never moves its own amount: it asks, and waits for
924
1039
  the consumer's next value. */
925
1040
  if (this.controlled())
@@ -960,7 +1075,7 @@ class SlCurrencyFieldInput {
960
1075
  this.element.setSelectionRange(position, position);
961
1076
  }
962
1077
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldInput, deps: [], target: i0.ɵɵFactoryTarget.Directive });
963
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.7", type: SlCurrencyFieldInput, isStandalone: true, selector: "input[slCurrencyFieldInput]", inputs: { currency: { classPropertyName: "currency", publicName: "currency", isSignal: true, isRequired: false, transformFunction: null }, currencyDisplay: { classPropertyName: "currencyDisplay", publicName: "currencyDisplay", isSignal: true, isRequired: false, transformFunction: null }, fractionDigits: { classPropertyName: "fractionDigits", publicName: "fractionDigits", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, defaultValue: { classPropertyName: "defaultValue", publicName: "defaultValue", isSignal: true, isRequired: false, transformFunction: null }, entry: { classPropertyName: "entry", publicName: "entry", isSignal: true, isRequired: false, transformFunction: null }, formatOn: { classPropertyName: "formatOn", publicName: "formatOn", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, largeStep: { classPropertyName: "largeStep", publicName: "largeStep", isSignal: true, isRequired: false, transformFunction: null }, smallStep: { classPropertyName: "smallStep", publicName: "smallStep", isSignal: true, isRequired: false, transformFunction: null }, stepFrom: { classPropertyName: "stepFrom", publicName: "stepFrom", isSignal: true, isRequired: false, transformFunction: null }, clamp: { classPropertyName: "clamp", publicName: "clamp", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, locale: { classPropertyName: "locale", publicName: "locale", isSignal: true, isRequired: false, transformFunction: null }, wheel: { classPropertyName: "wheel", publicName: "wheel", isSignal: true, isRequired: false, transformFunction: null }, allowEmpty: { classPropertyName: "allowEmpty", publicName: "allowEmpty", 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 }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { attributes: { "data-part": "input", "autocorrect": "off", "spellcheck": "false" }, listeners: { "input": "onInput($event)", "beforeinput": "onBeforeInput($event)", "keydown": "onKeyDown($event)", "blur": "onBlur($event)" }, properties: { "attr.type": "'text'", "attr.role": "'spinbutton'", "attr.id": "controlId()", "attr.inputmode": "resolvedInputMode()", "attr.autocomplete": "resolvedAutocomplete()", "attr.aria-describedby": "describedBy()", "attr.aria-invalid": "ariaInvalid()", "attr.aria-required": "ariaRequired()", "attr.aria-valuenow": "numberValue()", "attr.aria-valuemin": "min() ?? null", "attr.aria-valuemax": "max() ?? null", "attr.aria-valuetext": "valueText()", "attr.name": "null", "attr.disabled": "disabledAttribute()", "attr.readonly": "readonlyAttribute()" } }, providers: [
1078
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.7", type: SlCurrencyFieldInput, isStandalone: true, selector: "input[slCurrencyFieldInput]", inputs: { currency: { classPropertyName: "currency", publicName: "currency", isSignal: true, isRequired: false, transformFunction: null }, currencyDisplay: { classPropertyName: "currencyDisplay", publicName: "currencyDisplay", isSignal: true, isRequired: false, transformFunction: null }, fractionDigits: { classPropertyName: "fractionDigits", publicName: "fractionDigits", isSignal: true, isRequired: false, transformFunction: null }, valueInUnit: { classPropertyName: "valueInUnit", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, defaultValueInUnit: { classPropertyName: "defaultValueInUnit", publicName: "defaultValue", isSignal: true, isRequired: false, transformFunction: null }, unit: { classPropertyName: "unit", publicName: "unit", isSignal: true, isRequired: false, transformFunction: null }, entry: { classPropertyName: "entry", publicName: "entry", isSignal: true, isRequired: false, transformFunction: null }, formatOn: { classPropertyName: "formatOn", publicName: "formatOn", isSignal: true, isRequired: false, transformFunction: null }, minInUnit: { classPropertyName: "minInUnit", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, maxInUnit: { classPropertyName: "maxInUnit", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, stepInUnit: { classPropertyName: "stepInUnit", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, largeStepInUnit: { classPropertyName: "largeStepInUnit", publicName: "largeStep", isSignal: true, isRequired: false, transformFunction: null }, smallStepInUnit: { classPropertyName: "smallStepInUnit", publicName: "smallStep", isSignal: true, isRequired: false, transformFunction: null }, stepFromInUnit: { classPropertyName: "stepFromInUnit", publicName: "stepFrom", isSignal: true, isRequired: false, transformFunction: null }, clamp: { classPropertyName: "clamp", publicName: "clamp", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, locale: { classPropertyName: "locale", publicName: "locale", isSignal: true, isRequired: false, transformFunction: null }, wheel: { classPropertyName: "wheel", publicName: "wheel", isSignal: true, isRequired: false, transformFunction: null }, allowEmpty: { classPropertyName: "allowEmpty", publicName: "allowEmpty", 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 }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { attributes: { "data-part": "input", "data-part-input": "", "autocorrect": "off", "spellcheck": "false" }, listeners: { "input": "onInput($event)", "beforeinput": "onBeforeInput($event)", "keydown": "onKeyDown($event)", "blur": "onBlur($event)" }, properties: { "attr.type": "'text'", "attr.role": "'spinbutton'", "attr.id": "controlId()", "attr.inputmode": "resolvedInputMode()", "attr.autocomplete": "resolvedAutocomplete()", "attr.aria-describedby": "describedBy()", "attr.aria-invalid": "ariaInvalid()", "attr.aria-required": "ariaRequired()", "attr.aria-valuenow": "numberValue()", "attr.aria-valuemin": "min() ?? null", "attr.aria-valuemax": "max() ?? null", "attr.aria-valuetext": "valueText()", "attr.name": "null", "attr.disabled": "disabledAttribute()", "attr.readonly": "readonlyAttribute()" } }, providers: [
964
1079
  { provide: SlCurrencyFieldControl, useExisting: forwardRef(() => SlCurrencyFieldInput) },
965
1080
  {
966
1081
  provide: NG_VALUE_ACCESSOR,
@@ -985,6 +1100,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
985
1100
  ],
986
1101
  host: {
987
1102
  'data-part': 'input',
1103
+ 'data-part-input': '',
988
1104
  autocorrect: 'off',
989
1105
  spellcheck: 'false',
990
1106
  /* Bound rather than static, so a consumer who wrote `type="number"` on a
@@ -1010,7 +1126,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
1010
1126
  '(blur)': 'onBlur($event)',
1011
1127
  },
1012
1128
  }]
1013
- }], ctorParameters: () => [], propDecorators: { currency: [{ type: i0.Input, args: [{ isSignal: true, alias: "currency", required: false }] }], currencyDisplay: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencyDisplay", required: false }] }], fractionDigits: [{ type: i0.Input, args: [{ isSignal: true, alias: "fractionDigits", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], defaultValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultValue", required: false }] }], entry: [{ type: i0.Input, args: [{ isSignal: true, alias: "entry", required: false }] }], formatOn: [{ type: i0.Input, args: [{ isSignal: true, alias: "formatOn", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], largeStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "largeStep", required: false }] }], smallStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "smallStep", required: false }] }], stepFrom: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepFrom", required: false }] }], clamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "clamp", required: false }] }], format: [{ type: i0.Input, args: [{ isSignal: true, alias: "format", required: false }] }], locale: [{ type: i0.Input, args: [{ isSignal: true, alias: "locale", required: false }] }], wheel: [{ type: i0.Input, args: [{ isSignal: true, alias: "wheel", required: false }] }], allowEmpty: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowEmpty", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
1129
+ }], ctorParameters: () => [], propDecorators: { currency: [{ type: i0.Input, args: [{ isSignal: true, alias: "currency", required: false }] }], currencyDisplay: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencyDisplay", required: false }] }], fractionDigits: [{ type: i0.Input, args: [{ isSignal: true, alias: "fractionDigits", required: false }] }], valueInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], defaultValueInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultValue", required: false }] }], unit: [{ type: i0.Input, args: [{ isSignal: true, alias: "unit", required: false }] }], entry: [{ type: i0.Input, args: [{ isSignal: true, alias: "entry", required: false }] }], formatOn: [{ type: i0.Input, args: [{ isSignal: true, alias: "formatOn", required: false }] }], minInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], maxInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], stepInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], largeStepInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "largeStep", required: false }] }], smallStepInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "smallStep", required: false }] }], stepFromInUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepFrom", required: false }] }], clamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "clamp", required: false }] }], format: [{ type: i0.Input, args: [{ isSignal: true, alias: "format", required: false }] }], locale: [{ type: i0.Input, args: [{ isSignal: true, alias: "locale", required: false }] }], wheel: [{ type: i0.Input, args: [{ isSignal: true, alias: "wheel", required: false }] }], allowEmpty: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowEmpty", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
1014
1130
 
1015
1131
  /**
1016
1132
  * An adornment before the amount in the reading direction: a currency mark, a
@@ -1024,7 +1140,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
1024
1140
  */
1025
1141
  class SlCurrencyFieldStart {
1026
1142
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldStart, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1027
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlCurrencyFieldStart, isStandalone: true, selector: "[slCurrencyFieldStart]", host: { attributes: { "data-part": "start" } }, exportAs: ["slCurrencyFieldStart"], ngImport: i0 });
1143
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlCurrencyFieldStart, isStandalone: true, selector: "[slCurrencyFieldStart]", host: { attributes: { "data-part": "start", "data-part-start": "" } }, exportAs: ["slCurrencyFieldStart"], ngImport: i0 });
1028
1144
  }
1029
1145
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldStart, decorators: [{
1030
1146
  type: Directive,
@@ -1032,13 +1148,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
1032
1148
  selector: '[slCurrencyFieldStart]',
1033
1149
  standalone: true,
1034
1150
  exportAs: 'slCurrencyFieldStart',
1035
- host: { 'data-part': 'start' },
1151
+ host: { 'data-part': 'start', 'data-part-start': '' },
1036
1152
  }]
1037
1153
  }] });
1038
1154
  /** An adornment after the amount in the reading direction. */
1039
1155
  class SlCurrencyFieldEnd {
1040
1156
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldEnd, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1041
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlCurrencyFieldEnd, isStandalone: true, selector: "[slCurrencyFieldEnd]", host: { attributes: { "data-part": "end" } }, exportAs: ["slCurrencyFieldEnd"], ngImport: i0 });
1157
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlCurrencyFieldEnd, isStandalone: true, selector: "[slCurrencyFieldEnd]", host: { attributes: { "data-part": "end", "data-part-end": "" } }, exportAs: ["slCurrencyFieldEnd"], ngImport: i0 });
1042
1158
  }
1043
1159
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldEnd, decorators: [{
1044
1160
  type: Directive,
@@ -1046,7 +1162,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
1046
1162
  selector: '[slCurrencyFieldEnd]',
1047
1163
  standalone: true,
1048
1164
  exportAs: 'slCurrencyFieldEnd',
1049
- host: { 'data-part': 'end' },
1165
+ host: { 'data-part': 'end', 'data-part-end': '' },
1050
1166
  }]
1051
1167
  }] });
1052
1168
  /**
@@ -1102,7 +1218,7 @@ class SlCurrencyFieldScrub {
1102
1218
  this.frame.scrubbing.set(false);
1103
1219
  }
1104
1220
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldScrub, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1105
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.7", type: SlCurrencyFieldScrub, isStandalone: true, selector: "[slCurrencyFieldScrub]", inputs: { sensitivity: { classPropertyName: "sensitivity", publicName: "sensitivity", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-part": "scrub", "aria-hidden": "true" }, listeners: { "pointerdown": "begin($event)", "pointermove": "drag($event)", "pointerup": "end()", "pointercancel": "end()", "lostpointercapture": "end()" }, properties: { "attr.data-scrubbing": "active() ? '' : null" } }, exportAs: ["slCurrencyFieldScrub"], ngImport: i0 });
1221
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.7", type: SlCurrencyFieldScrub, isStandalone: true, selector: "[slCurrencyFieldScrub]", inputs: { sensitivity: { classPropertyName: "sensitivity", publicName: "sensitivity", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-part": "scrub", "data-part-scrub": "", "aria-hidden": "true" }, listeners: { "pointerdown": "begin($event)", "pointermove": "drag($event)", "pointerup": "end()", "pointercancel": "end()", "lostpointercapture": "end()" }, properties: { "attr.data-scrubbing": "active() ? '' : null" } }, exportAs: ["slCurrencyFieldScrub"], ngImport: i0 });
1106
1222
  }
1107
1223
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlCurrencyFieldScrub, decorators: [{
1108
1224
  type: Directive,
@@ -1112,6 +1228,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
1112
1228
  exportAs: 'slCurrencyFieldScrub',
1113
1229
  host: {
1114
1230
  'data-part': 'scrub',
1231
+ 'data-part-scrub': '',
1115
1232
  'aria-hidden': 'true',
1116
1233
  '[attr.data-scrubbing]': "active() ? '' : null",
1117
1234
  '(pointerdown)': 'begin($event)',