@salt-ds/core 1.19.0 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (465) hide show
  1. package/css/salt-core.css +650 -19
  2. package/dist-cjs/accordion/Accordion.js +75 -0
  3. package/dist-cjs/accordion/Accordion.js.map +1 -1
  4. package/dist-cjs/accordion/AccordionContext.js +79 -0
  5. package/dist-cjs/accordion/AccordionContext.js.map +1 -1
  6. package/dist-cjs/accordion/AccordionGroup.js +76 -1
  7. package/dist-cjs/accordion/AccordionGroup.js.map +1 -1
  8. package/dist-cjs/accordion/AccordionHeader.js +73 -0
  9. package/dist-cjs/accordion/AccordionHeader.js.map +1 -1
  10. package/dist-cjs/accordion/AccordionPanel.js +75 -0
  11. package/dist-cjs/accordion/AccordionPanel.js.map +1 -1
  12. package/dist-cjs/aria-announcer/useAriaAnnouncer.js +78 -0
  13. package/dist-cjs/aria-announcer/useAriaAnnouncer.js.map +1 -1
  14. package/dist-cjs/avatar/Avatar.js +74 -0
  15. package/dist-cjs/avatar/Avatar.js.map +1 -1
  16. package/dist-cjs/avatar/useAvatarImage.js +79 -0
  17. package/dist-cjs/avatar/useAvatarImage.js.map +1 -1
  18. package/dist-cjs/badge/Badge.js +75 -0
  19. package/dist-cjs/badge/Badge.js.map +1 -1
  20. package/dist-cjs/banner/Banner.js +76 -2
  21. package/dist-cjs/banner/Banner.js.map +1 -1
  22. package/dist-cjs/banner/BannerActions.js +76 -1
  23. package/dist-cjs/banner/BannerActions.js.map +1 -1
  24. package/dist-cjs/banner/BannerContent.js +76 -1
  25. package/dist-cjs/banner/BannerContent.js.map +1 -1
  26. package/dist-cjs/border-item/BorderItem.js +75 -1
  27. package/dist-cjs/border-item/BorderItem.js.map +1 -1
  28. package/dist-cjs/border-layout/BorderLayout.js +76 -0
  29. package/dist-cjs/border-layout/BorderLayout.js.map +1 -1
  30. package/dist-cjs/button/Button.js +76 -1
  31. package/dist-cjs/button/Button.js.map +1 -1
  32. package/dist-cjs/card/Card.js +75 -0
  33. package/dist-cjs/card/Card.js.map +1 -1
  34. package/dist-cjs/card/InteractableCard.js +75 -0
  35. package/dist-cjs/card/InteractableCard.js.map +1 -1
  36. package/dist-cjs/checkbox/Checkbox.js +73 -0
  37. package/dist-cjs/checkbox/Checkbox.js.map +1 -1
  38. package/dist-cjs/checkbox/CheckboxGroup.js +74 -0
  39. package/dist-cjs/checkbox/CheckboxGroup.js.map +1 -1
  40. package/dist-cjs/checkbox/CheckboxIcon.js +75 -0
  41. package/dist-cjs/checkbox/CheckboxIcon.js.map +1 -1
  42. package/dist-cjs/checkbox/internal/CheckboxGroupContext.js +79 -0
  43. package/dist-cjs/checkbox/internal/CheckboxGroupContext.js.map +1 -1
  44. package/dist-cjs/combo-box/ComboBox.css.js +6 -0
  45. package/dist-cjs/combo-box/ComboBox.css.js.map +1 -0
  46. package/dist-cjs/combo-box/ComboBox.js +443 -0
  47. package/dist-cjs/combo-box/ComboBox.js.map +1 -0
  48. package/dist-cjs/combo-box/useComboBox.js +153 -0
  49. package/dist-cjs/combo-box/useComboBox.js.map +1 -0
  50. package/dist-cjs/dialog/Dialog.css.js +6 -0
  51. package/dist-cjs/dialog/Dialog.css.js.map +1 -0
  52. package/dist-cjs/dialog/Dialog.js +194 -0
  53. package/dist-cjs/dialog/Dialog.js.map +1 -0
  54. package/dist-cjs/dialog/DialogActions.css.js +6 -0
  55. package/dist-cjs/dialog/DialogActions.css.js.map +1 -0
  56. package/dist-cjs/dialog/DialogActions.js +112 -0
  57. package/dist-cjs/dialog/DialogActions.js.map +1 -0
  58. package/dist-cjs/dialog/DialogCloseButton.css.js +6 -0
  59. package/dist-cjs/dialog/DialogCloseButton.css.js.map +1 -0
  60. package/dist-cjs/dialog/DialogCloseButton.js +117 -0
  61. package/dist-cjs/dialog/DialogCloseButton.js.map +1 -0
  62. package/dist-cjs/dialog/DialogContent.css.js +6 -0
  63. package/dist-cjs/dialog/DialogContent.css.js.map +1 -0
  64. package/dist-cjs/dialog/DialogContent.js +124 -0
  65. package/dist-cjs/dialog/DialogContent.js.map +1 -0
  66. package/dist-cjs/dialog/DialogContext.js +17 -0
  67. package/dist-cjs/dialog/DialogContext.js.map +1 -0
  68. package/dist-cjs/dialog/DialogHeader.css.js +6 -0
  69. package/dist-cjs/dialog/DialogHeader.css.js.map +1 -0
  70. package/dist-cjs/dialog/DialogHeader.js +147 -0
  71. package/dist-cjs/dialog/DialogHeader.js.map +1 -0
  72. package/dist-cjs/drawer/Drawer.js +75 -2
  73. package/dist-cjs/drawer/Drawer.js.map +1 -1
  74. package/dist-cjs/drawer/DrawerCloseButton.js +74 -1
  75. package/dist-cjs/drawer/DrawerCloseButton.js.map +1 -1
  76. package/dist-cjs/dropdown/Dropdown.css.js +6 -0
  77. package/dist-cjs/dropdown/Dropdown.css.js.map +1 -0
  78. package/dist-cjs/dropdown/Dropdown.js +412 -0
  79. package/dist-cjs/dropdown/Dropdown.js.map +1 -0
  80. package/dist-cjs/file-drop-zone/FileDropZone.js +75 -0
  81. package/dist-cjs/file-drop-zone/FileDropZone.js.map +1 -1
  82. package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js +76 -0
  83. package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
  84. package/dist-cjs/flex-item/FlexItem.js +79 -2
  85. package/dist-cjs/flex-item/FlexItem.js.map +1 -1
  86. package/dist-cjs/flex-layout/FlexLayout.js +79 -2
  87. package/dist-cjs/flex-layout/FlexLayout.js.map +1 -1
  88. package/dist-cjs/form-field/FormField.js +74 -0
  89. package/dist-cjs/form-field/FormField.js.map +1 -1
  90. package/dist-cjs/form-field/FormFieldHelperText.js +70 -2
  91. package/dist-cjs/form-field/FormFieldHelperText.js.map +1 -1
  92. package/dist-cjs/form-field/FormFieldLabel.js +69 -0
  93. package/dist-cjs/form-field/FormFieldLabel.js.map +1 -1
  94. package/dist-cjs/form-field-context/FormFieldContext.js +78 -0
  95. package/dist-cjs/form-field-context/FormFieldContext.js.map +1 -1
  96. package/dist-cjs/grid-item/GridItem.js +79 -2
  97. package/dist-cjs/grid-item/GridItem.js.map +1 -1
  98. package/dist-cjs/grid-layout/GridLayout.js +79 -2
  99. package/dist-cjs/grid-layout/GridLayout.js.map +1 -1
  100. package/dist-cjs/index.js +30 -0
  101. package/dist-cjs/index.js.map +1 -1
  102. package/dist-cjs/input/Input.js +73 -0
  103. package/dist-cjs/input/Input.js.map +1 -1
  104. package/dist-cjs/link/Link.js +70 -2
  105. package/dist-cjs/link/Link.js.map +1 -1
  106. package/dist-cjs/link-card/LinkCard.js +75 -0
  107. package/dist-cjs/link-card/LinkCard.js.map +1 -1
  108. package/dist-cjs/list-control/ListControlContext.js +121 -0
  109. package/dist-cjs/list-control/ListControlContext.js.map +1 -0
  110. package/dist-cjs/list-control/ListControlState.js +276 -0
  111. package/dist-cjs/list-control/ListControlState.js.map +1 -0
  112. package/dist-cjs/multiline-input/MultilineInput.css.js +1 -1
  113. package/dist-cjs/multiline-input/MultilineInput.js +73 -0
  114. package/dist-cjs/multiline-input/MultilineInput.js.map +1 -1
  115. package/dist-cjs/navigation-item/NavigationItem.css.js +1 -1
  116. package/dist-cjs/navigation-item/NavigationItem.js +77 -2
  117. package/dist-cjs/navigation-item/NavigationItem.js.map +1 -1
  118. package/dist-cjs/option/Option.css.js +6 -0
  119. package/dist-cjs/option/Option.css.js.map +1 -0
  120. package/dist-cjs/option/Option.js +178 -0
  121. package/dist-cjs/option/Option.js.map +1 -0
  122. package/dist-cjs/option/OptionGroup.css.js +6 -0
  123. package/dist-cjs/option/OptionGroup.css.js.map +1 -0
  124. package/dist-cjs/option/OptionGroup.js +123 -0
  125. package/dist-cjs/option/OptionGroup.js.map +1 -0
  126. package/dist-cjs/option/OptionList.css.js +6 -0
  127. package/dist-cjs/option/OptionList.css.js.map +1 -0
  128. package/dist-cjs/option/OptionList.js +118 -0
  129. package/dist-cjs/option/OptionList.js.map +1 -0
  130. package/dist-cjs/option/OptionListBase.js +113 -0
  131. package/dist-cjs/option/OptionListBase.js.map +1 -0
  132. package/dist-cjs/pagination/CompactInput.js +76 -2
  133. package/dist-cjs/pagination/CompactInput.js.map +1 -1
  134. package/dist-cjs/pagination/CompactPaginator.js +69 -2
  135. package/dist-cjs/pagination/CompactPaginator.js.map +1 -1
  136. package/dist-cjs/pagination/GoToInput.js +68 -3
  137. package/dist-cjs/pagination/GoToInput.js.map +1 -1
  138. package/dist-cjs/pagination/PageButton.js +77 -2
  139. package/dist-cjs/pagination/PageButton.js.map +1 -1
  140. package/dist-cjs/pagination/PageRanges.js +78 -2
  141. package/dist-cjs/pagination/PageRanges.js.map +1 -1
  142. package/dist-cjs/pagination/Pagination.js +76 -2
  143. package/dist-cjs/pagination/Pagination.js.map +1 -1
  144. package/dist-cjs/pagination/Paginator.js +75 -2
  145. package/dist-cjs/pagination/Paginator.js.map +1 -1
  146. package/dist-cjs/panel/Panel.css.js +1 -1
  147. package/dist-cjs/panel/Panel.js +77 -2
  148. package/dist-cjs/panel/Panel.js.map +1 -1
  149. package/dist-cjs/pill/Pill.js +74 -0
  150. package/dist-cjs/pill/Pill.js.map +1 -1
  151. package/dist-cjs/pill-input/PillInput.css.js +6 -0
  152. package/dist-cjs/pill-input/PillInput.css.js.map +1 -0
  153. package/dist-cjs/pill-input/PillInput.js +338 -0
  154. package/dist-cjs/pill-input/PillInput.js.map +1 -0
  155. package/dist-cjs/pill-input/useTruncatePills.js +83 -0
  156. package/dist-cjs/pill-input/useTruncatePills.js.map +1 -0
  157. package/dist-cjs/progress/CircularProgress/CircularProgress.css.js +1 -1
  158. package/dist-cjs/progress/CircularProgress/CircularProgress.js +138 -14
  159. package/dist-cjs/progress/CircularProgress/CircularProgress.js.map +1 -1
  160. package/dist-cjs/progress/LinearProgress/LinearProgress.css.js +1 -1
  161. package/dist-cjs/progress/LinearProgress/LinearProgress.js +89 -8
  162. package/dist-cjs/progress/LinearProgress/LinearProgress.js.map +1 -1
  163. package/dist-cjs/radio-button/RadioButton.js +78 -4
  164. package/dist-cjs/radio-button/RadioButton.js.map +1 -1
  165. package/dist-cjs/radio-button/RadioButtonGroup.js +77 -3
  166. package/dist-cjs/radio-button/RadioButtonGroup.js.map +1 -1
  167. package/dist-cjs/radio-button/RadioButtonIcon.js +76 -0
  168. package/dist-cjs/radio-button/RadioButtonIcon.js.map +1 -1
  169. package/dist-cjs/radio-button/internal/RadioGroupContext.js +79 -0
  170. package/dist-cjs/radio-button/internal/RadioGroupContext.js.map +1 -1
  171. package/dist-cjs/salt-provider/SaltProvider.js +78 -3
  172. package/dist-cjs/salt-provider/SaltProvider.js.map +1 -1
  173. package/dist-cjs/scrim/Scrim.js +76 -1
  174. package/dist-cjs/scrim/Scrim.js.map +1 -1
  175. package/dist-cjs/spinner/Spinner.js +76 -2
  176. package/dist-cjs/spinner/Spinner.js.map +1 -1
  177. package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js +78 -0
  178. package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js.map +1 -1
  179. package/dist-cjs/split-layout/SplitLayout.js +76 -2
  180. package/dist-cjs/split-layout/SplitLayout.js.map +1 -1
  181. package/dist-cjs/stack-layout/StackLayout.js +78 -2
  182. package/dist-cjs/stack-layout/StackLayout.js.map +1 -1
  183. package/dist-cjs/status-adornment/StatusAdornment.js +75 -0
  184. package/dist-cjs/status-adornment/StatusAdornment.js.map +1 -1
  185. package/dist-cjs/status-indicator/StatusIndicator.js +76 -2
  186. package/dist-cjs/status-indicator/StatusIndicator.js.map +1 -1
  187. package/dist-cjs/switch/Switch.js +75 -2
  188. package/dist-cjs/switch/Switch.js.map +1 -1
  189. package/dist-cjs/text/Text.js +77 -2
  190. package/dist-cjs/text/Text.js.map +1 -1
  191. package/dist-cjs/toast/Toast.js +74 -0
  192. package/dist-cjs/toast/Toast.js.map +1 -1
  193. package/dist-cjs/toast/ToastContent.js +75 -0
  194. package/dist-cjs/toast/ToastContent.js.map +1 -1
  195. package/dist-cjs/toggle-button/ToggleButton.js +73 -0
  196. package/dist-cjs/toggle-button/ToggleButton.js.map +1 -1
  197. package/dist-cjs/toggle-button-group/ToggleButtonGroup.js +74 -0
  198. package/dist-cjs/toggle-button-group/ToggleButtonGroup.js.map +1 -1
  199. package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js +78 -0
  200. package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js.map +1 -1
  201. package/dist-cjs/tooltip/Tooltip.js +75 -1
  202. package/dist-cjs/tooltip/Tooltip.js.map +1 -1
  203. package/dist-cjs/tooltip/TooltipBase.js +75 -2
  204. package/dist-cjs/tooltip/TooltipBase.js.map +1 -1
  205. package/dist-cjs/tooltip/useAriaAnnounce.js +77 -0
  206. package/dist-cjs/tooltip/useAriaAnnounce.js.map +1 -1
  207. package/dist-cjs/tooltip/useTooltip.js +83 -2
  208. package/dist-cjs/tooltip/useTooltip.js.map +1 -1
  209. package/dist-cjs/utils/ownerWindow.js.map +1 -1
  210. package/dist-cjs/utils/useEventCallback.js +20 -0
  211. package/dist-cjs/utils/useEventCallback.js.map +1 -0
  212. package/dist-cjs/utils/useResizeObserver.js +29 -0
  213. package/dist-cjs/utils/useResizeObserver.js.map +1 -0
  214. package/dist-cjs/utils/useValueEffect.js +124 -0
  215. package/dist-cjs/utils/useValueEffect.js.map +1 -0
  216. package/dist-cjs/viewport/ViewportProvider.js +78 -0
  217. package/dist-cjs/viewport/ViewportProvider.js.map +1 -1
  218. package/dist-es/accordion/Accordion.js +75 -0
  219. package/dist-es/accordion/Accordion.js.map +1 -1
  220. package/dist-es/accordion/AccordionContext.js +79 -0
  221. package/dist-es/accordion/AccordionContext.js.map +1 -1
  222. package/dist-es/accordion/AccordionGroup.js +76 -1
  223. package/dist-es/accordion/AccordionGroup.js.map +1 -1
  224. package/dist-es/accordion/AccordionHeader.js +73 -0
  225. package/dist-es/accordion/AccordionHeader.js.map +1 -1
  226. package/dist-es/accordion/AccordionPanel.js +75 -0
  227. package/dist-es/accordion/AccordionPanel.js.map +1 -1
  228. package/dist-es/aria-announcer/useAriaAnnouncer.js +78 -0
  229. package/dist-es/aria-announcer/useAriaAnnouncer.js.map +1 -1
  230. package/dist-es/avatar/Avatar.js +74 -0
  231. package/dist-es/avatar/Avatar.js.map +1 -1
  232. package/dist-es/avatar/useAvatarImage.js +79 -0
  233. package/dist-es/avatar/useAvatarImage.js.map +1 -1
  234. package/dist-es/badge/Badge.js +75 -0
  235. package/dist-es/badge/Badge.js.map +1 -1
  236. package/dist-es/banner/Banner.js +76 -2
  237. package/dist-es/banner/Banner.js.map +1 -1
  238. package/dist-es/banner/BannerActions.js +76 -1
  239. package/dist-es/banner/BannerActions.js.map +1 -1
  240. package/dist-es/banner/BannerContent.js +76 -1
  241. package/dist-es/banner/BannerContent.js.map +1 -1
  242. package/dist-es/border-item/BorderItem.js +75 -1
  243. package/dist-es/border-item/BorderItem.js.map +1 -1
  244. package/dist-es/border-layout/BorderLayout.js +76 -0
  245. package/dist-es/border-layout/BorderLayout.js.map +1 -1
  246. package/dist-es/button/Button.js +76 -1
  247. package/dist-es/button/Button.js.map +1 -1
  248. package/dist-es/card/Card.js +75 -0
  249. package/dist-es/card/Card.js.map +1 -1
  250. package/dist-es/card/InteractableCard.js +75 -0
  251. package/dist-es/card/InteractableCard.js.map +1 -1
  252. package/dist-es/checkbox/Checkbox.js +73 -0
  253. package/dist-es/checkbox/Checkbox.js.map +1 -1
  254. package/dist-es/checkbox/CheckboxGroup.js +74 -0
  255. package/dist-es/checkbox/CheckboxGroup.js.map +1 -1
  256. package/dist-es/checkbox/CheckboxIcon.js +75 -0
  257. package/dist-es/checkbox/CheckboxIcon.js.map +1 -1
  258. package/dist-es/checkbox/internal/CheckboxGroupContext.js +79 -0
  259. package/dist-es/checkbox/internal/CheckboxGroupContext.js.map +1 -1
  260. package/dist-es/combo-box/ComboBox.css.js +4 -0
  261. package/dist-es/combo-box/ComboBox.css.js.map +1 -0
  262. package/dist-es/combo-box/ComboBox.js +439 -0
  263. package/dist-es/combo-box/ComboBox.js.map +1 -0
  264. package/dist-es/combo-box/useComboBox.js +149 -0
  265. package/dist-es/combo-box/useComboBox.js.map +1 -0
  266. package/dist-es/dialog/Dialog.css.js +4 -0
  267. package/dist-es/dialog/Dialog.css.js.map +1 -0
  268. package/dist-es/dialog/Dialog.js +189 -0
  269. package/dist-es/dialog/Dialog.js.map +1 -0
  270. package/dist-es/dialog/DialogActions.css.js +4 -0
  271. package/dist-es/dialog/DialogActions.css.js.map +1 -0
  272. package/dist-es/dialog/DialogActions.js +108 -0
  273. package/dist-es/dialog/DialogActions.js.map +1 -0
  274. package/dist-es/dialog/DialogCloseButton.css.js +4 -0
  275. package/dist-es/dialog/DialogCloseButton.css.js.map +1 -0
  276. package/dist-es/dialog/DialogCloseButton.js +109 -0
  277. package/dist-es/dialog/DialogCloseButton.js.map +1 -0
  278. package/dist-es/dialog/DialogContent.css.js +4 -0
  279. package/dist-es/dialog/DialogContent.css.js.map +1 -0
  280. package/dist-es/dialog/DialogContent.js +120 -0
  281. package/dist-es/dialog/DialogContent.js.map +1 -0
  282. package/dist-es/dialog/DialogContext.js +12 -0
  283. package/dist-es/dialog/DialogContext.js.map +1 -0
  284. package/dist-es/dialog/DialogHeader.css.js +4 -0
  285. package/dist-es/dialog/DialogHeader.css.js.map +1 -0
  286. package/dist-es/dialog/DialogHeader.js +139 -0
  287. package/dist-es/dialog/DialogHeader.js.map +1 -0
  288. package/dist-es/drawer/Drawer.js +75 -2
  289. package/dist-es/drawer/Drawer.js.map +1 -1
  290. package/dist-es/drawer/DrawerCloseButton.js +74 -1
  291. package/dist-es/drawer/DrawerCloseButton.js.map +1 -1
  292. package/dist-es/dropdown/Dropdown.css.js +4 -0
  293. package/dist-es/dropdown/Dropdown.css.js.map +1 -0
  294. package/dist-es/dropdown/Dropdown.js +408 -0
  295. package/dist-es/dropdown/Dropdown.js.map +1 -0
  296. package/dist-es/file-drop-zone/FileDropZone.js +75 -0
  297. package/dist-es/file-drop-zone/FileDropZone.js.map +1 -1
  298. package/dist-es/file-drop-zone/FileDropZoneTrigger.js +76 -0
  299. package/dist-es/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
  300. package/dist-es/flex-item/FlexItem.js +79 -2
  301. package/dist-es/flex-item/FlexItem.js.map +1 -1
  302. package/dist-es/flex-layout/FlexLayout.js +79 -2
  303. package/dist-es/flex-layout/FlexLayout.js.map +1 -1
  304. package/dist-es/form-field/FormField.js +74 -0
  305. package/dist-es/form-field/FormField.js.map +1 -1
  306. package/dist-es/form-field/FormFieldHelperText.js +70 -2
  307. package/dist-es/form-field/FormFieldHelperText.js.map +1 -1
  308. package/dist-es/form-field/FormFieldLabel.js +69 -0
  309. package/dist-es/form-field/FormFieldLabel.js.map +1 -1
  310. package/dist-es/form-field-context/FormFieldContext.js +78 -0
  311. package/dist-es/form-field-context/FormFieldContext.js.map +1 -1
  312. package/dist-es/grid-item/GridItem.js +79 -2
  313. package/dist-es/grid-item/GridItem.js.map +1 -1
  314. package/dist-es/grid-layout/GridLayout.js +79 -2
  315. package/dist-es/grid-layout/GridLayout.js.map +1 -1
  316. package/dist-es/index.js +14 -0
  317. package/dist-es/index.js.map +1 -1
  318. package/dist-es/input/Input.js +73 -0
  319. package/dist-es/input/Input.js.map +1 -1
  320. package/dist-es/link/Link.js +70 -2
  321. package/dist-es/link/Link.js.map +1 -1
  322. package/dist-es/link-card/LinkCard.js +75 -0
  323. package/dist-es/link-card/LinkCard.js.map +1 -1
  324. package/dist-es/list-control/ListControlContext.js +116 -0
  325. package/dist-es/list-control/ListControlContext.js.map +1 -0
  326. package/dist-es/list-control/ListControlState.js +271 -0
  327. package/dist-es/list-control/ListControlState.js.map +1 -0
  328. package/dist-es/multiline-input/MultilineInput.css.js +1 -1
  329. package/dist-es/multiline-input/MultilineInput.js +73 -0
  330. package/dist-es/multiline-input/MultilineInput.js.map +1 -1
  331. package/dist-es/navigation-item/NavigationItem.css.js +1 -1
  332. package/dist-es/navigation-item/NavigationItem.js +77 -2
  333. package/dist-es/navigation-item/NavigationItem.js.map +1 -1
  334. package/dist-es/option/Option.css.js +4 -0
  335. package/dist-es/option/Option.css.js.map +1 -0
  336. package/dist-es/option/Option.js +174 -0
  337. package/dist-es/option/Option.js.map +1 -0
  338. package/dist-es/option/OptionGroup.css.js +4 -0
  339. package/dist-es/option/OptionGroup.css.js.map +1 -0
  340. package/dist-es/option/OptionGroup.js +119 -0
  341. package/dist-es/option/OptionGroup.js.map +1 -0
  342. package/dist-es/option/OptionList.css.js +4 -0
  343. package/dist-es/option/OptionList.css.js.map +1 -0
  344. package/dist-es/option/OptionList.js +114 -0
  345. package/dist-es/option/OptionList.js.map +1 -0
  346. package/dist-es/option/OptionListBase.js +109 -0
  347. package/dist-es/option/OptionListBase.js.map +1 -0
  348. package/dist-es/pagination/CompactInput.js +76 -2
  349. package/dist-es/pagination/CompactInput.js.map +1 -1
  350. package/dist-es/pagination/CompactPaginator.js +69 -2
  351. package/dist-es/pagination/CompactPaginator.js.map +1 -1
  352. package/dist-es/pagination/GoToInput.js +68 -3
  353. package/dist-es/pagination/GoToInput.js.map +1 -1
  354. package/dist-es/pagination/PageButton.js +77 -2
  355. package/dist-es/pagination/PageButton.js.map +1 -1
  356. package/dist-es/pagination/PageRanges.js +78 -2
  357. package/dist-es/pagination/PageRanges.js.map +1 -1
  358. package/dist-es/pagination/Pagination.js +76 -2
  359. package/dist-es/pagination/Pagination.js.map +1 -1
  360. package/dist-es/pagination/Paginator.js +75 -2
  361. package/dist-es/pagination/Paginator.js.map +1 -1
  362. package/dist-es/panel/Panel.css.js +1 -1
  363. package/dist-es/panel/Panel.js +77 -2
  364. package/dist-es/panel/Panel.js.map +1 -1
  365. package/dist-es/pill/Pill.js +74 -0
  366. package/dist-es/pill/Pill.js.map +1 -1
  367. package/dist-es/pill-input/PillInput.css.js +4 -0
  368. package/dist-es/pill-input/PillInput.css.js.map +1 -0
  369. package/dist-es/pill-input/PillInput.js +334 -0
  370. package/dist-es/pill-input/PillInput.js.map +1 -0
  371. package/dist-es/pill-input/useTruncatePills.js +79 -0
  372. package/dist-es/pill-input/useTruncatePills.js.map +1 -0
  373. package/dist-es/progress/CircularProgress/CircularProgress.css.js +1 -1
  374. package/dist-es/progress/CircularProgress/CircularProgress.js +138 -14
  375. package/dist-es/progress/CircularProgress/CircularProgress.js.map +1 -1
  376. package/dist-es/progress/LinearProgress/LinearProgress.css.js +1 -1
  377. package/dist-es/progress/LinearProgress/LinearProgress.js +89 -8
  378. package/dist-es/progress/LinearProgress/LinearProgress.js.map +1 -1
  379. package/dist-es/radio-button/RadioButton.js +78 -4
  380. package/dist-es/radio-button/RadioButton.js.map +1 -1
  381. package/dist-es/radio-button/RadioButtonGroup.js +77 -3
  382. package/dist-es/radio-button/RadioButtonGroup.js.map +1 -1
  383. package/dist-es/radio-button/RadioButtonIcon.js +76 -0
  384. package/dist-es/radio-button/RadioButtonIcon.js.map +1 -1
  385. package/dist-es/radio-button/internal/RadioGroupContext.js +79 -0
  386. package/dist-es/radio-button/internal/RadioGroupContext.js.map +1 -1
  387. package/dist-es/salt-provider/SaltProvider.js +78 -3
  388. package/dist-es/salt-provider/SaltProvider.js.map +1 -1
  389. package/dist-es/scrim/Scrim.js +76 -1
  390. package/dist-es/scrim/Scrim.js.map +1 -1
  391. package/dist-es/spinner/Spinner.js +76 -2
  392. package/dist-es/spinner/Spinner.js.map +1 -1
  393. package/dist-es/spinner/svgSpinners/SpinnerSVG.js +78 -0
  394. package/dist-es/spinner/svgSpinners/SpinnerSVG.js.map +1 -1
  395. package/dist-es/split-layout/SplitLayout.js +76 -2
  396. package/dist-es/split-layout/SplitLayout.js.map +1 -1
  397. package/dist-es/stack-layout/StackLayout.js +78 -2
  398. package/dist-es/stack-layout/StackLayout.js.map +1 -1
  399. package/dist-es/status-adornment/StatusAdornment.js +75 -0
  400. package/dist-es/status-adornment/StatusAdornment.js.map +1 -1
  401. package/dist-es/status-indicator/StatusIndicator.js +76 -2
  402. package/dist-es/status-indicator/StatusIndicator.js.map +1 -1
  403. package/dist-es/switch/Switch.js +75 -2
  404. package/dist-es/switch/Switch.js.map +1 -1
  405. package/dist-es/text/Text.js +77 -2
  406. package/dist-es/text/Text.js.map +1 -1
  407. package/dist-es/toast/Toast.js +74 -0
  408. package/dist-es/toast/Toast.js.map +1 -1
  409. package/dist-es/toast/ToastContent.js +75 -0
  410. package/dist-es/toast/ToastContent.js.map +1 -1
  411. package/dist-es/toggle-button/ToggleButton.js +73 -0
  412. package/dist-es/toggle-button/ToggleButton.js.map +1 -1
  413. package/dist-es/toggle-button-group/ToggleButtonGroup.js +74 -0
  414. package/dist-es/toggle-button-group/ToggleButtonGroup.js.map +1 -1
  415. package/dist-es/toggle-button-group/ToggleButtonGroupContext.js +78 -0
  416. package/dist-es/toggle-button-group/ToggleButtonGroupContext.js.map +1 -1
  417. package/dist-es/tooltip/Tooltip.js +75 -1
  418. package/dist-es/tooltip/Tooltip.js.map +1 -1
  419. package/dist-es/tooltip/TooltipBase.js +75 -2
  420. package/dist-es/tooltip/TooltipBase.js.map +1 -1
  421. package/dist-es/tooltip/useAriaAnnounce.js +77 -0
  422. package/dist-es/tooltip/useAriaAnnounce.js.map +1 -1
  423. package/dist-es/tooltip/useTooltip.js +84 -3
  424. package/dist-es/tooltip/useTooltip.js.map +1 -1
  425. package/dist-es/utils/ownerWindow.js.map +1 -1
  426. package/dist-es/utils/useEventCallback.js +16 -0
  427. package/dist-es/utils/useEventCallback.js.map +1 -0
  428. package/dist-es/utils/useResizeObserver.js +25 -0
  429. package/dist-es/utils/useResizeObserver.js.map +1 -0
  430. package/dist-es/utils/useValueEffect.js +120 -0
  431. package/dist-es/utils/useValueEffect.js.map +1 -0
  432. package/dist-es/viewport/ViewportProvider.js +78 -0
  433. package/dist-es/viewport/ViewportProvider.js.map +1 -1
  434. package/dist-types/combo-box/ComboBox.d.ts +17 -0
  435. package/dist-types/combo-box/index.d.ts +1 -0
  436. package/dist-types/combo-box/useComboBox.d.ts +30 -0
  437. package/dist-types/dialog/Dialog.d.ts +46 -0
  438. package/dist-types/dialog/DialogActions.d.ts +8 -0
  439. package/dist-types/dialog/DialogCloseButton.d.ts +2 -0
  440. package/dist-types/dialog/DialogContent.d.ts +8 -0
  441. package/dist-types/dialog/DialogContext.d.ts +8 -0
  442. package/dist-types/dialog/DialogHeader.d.ts +20 -0
  443. package/dist-types/dialog/index.d.ts +6 -0
  444. package/dist-types/dropdown/Dropdown.d.ts +99 -0
  445. package/dist-types/dropdown/index.d.ts +1 -0
  446. package/dist-types/index.d.ts +5 -0
  447. package/dist-types/list-control/ListControlContext.d.ts +21 -0
  448. package/dist-types/list-control/ListControlState.d.ts +70 -0
  449. package/dist-types/list-control/index.d.ts +1 -0
  450. package/dist-types/option/Option.d.ts +16 -0
  451. package/dist-types/option/OptionGroup.d.ts +12 -0
  452. package/dist-types/option/OptionList.d.ts +5 -0
  453. package/dist-types/option/OptionListBase.d.ts +4 -0
  454. package/dist-types/option/index.d.ts +2 -0
  455. package/dist-types/pill-input/PillInput.d.ts +48 -0
  456. package/dist-types/pill-input/index.d.ts +1 -0
  457. package/dist-types/pill-input/useTruncatePills.d.ts +8 -0
  458. package/dist-types/progress/CircularProgress/CircularProgress.d.ts +5 -0
  459. package/dist-types/progress/LinearProgress/LinearProgress.d.ts +5 -0
  460. package/dist-types/utils/index.d.ts +3 -0
  461. package/dist-types/utils/ownerWindow.d.ts +1 -1
  462. package/dist-types/utils/useEventCallback.d.ts +4 -0
  463. package/dist-types/utils/useResizeObserver.d.ts +6 -0
  464. package/dist-types/utils/useValueEffect.d.ts +4 -0
  465. package/package.json +1 -1
package/css/salt-core.css CHANGED
@@ -668,6 +668,188 @@ a:link .saltInteractableCard * {
668
668
  color: var(--salt-content-primary-foreground);
669
669
  }
670
670
 
671
+ /* src/combo-box/ComboBox.css */
672
+ .saltComboBox-focused {
673
+ outline: var(--salt-focused-outline);
674
+ }
675
+
676
+ /* src/dialog/Dialog.css */
677
+ .saltDialog {
678
+ position: fixed;
679
+ left: 0;
680
+ right: 0;
681
+ top: 0;
682
+ bottom: 0;
683
+ margin: auto;
684
+ display: flex;
685
+ flex-direction: column;
686
+ padding-top: var(--salt-spacing-300);
687
+ padding-bottom: var(--salt-spacing-300);
688
+ background: var(--salt-container-primary-background);
689
+ box-shadow: var(--salt-overlayable-shadow-modal);
690
+ overflow-y: auto;
691
+ z-index: var(--salt-zIndex-drawer);
692
+ height: min-content;
693
+ border: var(--salt-container-borderStyle) var(--salt-separable-tertiary-borderColor) var(--salt-size-border);
694
+ box-sizing: border-box;
695
+ border-radius: var(--salt-palette-corner, 0);
696
+ }
697
+ .saltDialog-info {
698
+ border-color: var(--salt-status-info-borderColor);
699
+ }
700
+ .saltDialog-error {
701
+ border-color: var(--salt-status-error-borderColor);
702
+ }
703
+ .saltDialog-warning {
704
+ border-color: var(--salt-status-warning-borderColor);
705
+ }
706
+ .saltDialog-success {
707
+ border-color: var(--salt-status-success-borderColor);
708
+ }
709
+ .saltDialog.saltDialog-enterAnimation {
710
+ animation: var(--salt-animation-fade-in-center);
711
+ }
712
+ .saltDialog.saltDialog-exitAnimation {
713
+ animation: var(--salt-animation-fade-out-back);
714
+ }
715
+ .saltDialog-small-xs {
716
+ width: 100%;
717
+ max-height: 48%;
718
+ }
719
+ .saltDialog-small-sm {
720
+ width: 56%;
721
+ max-height: 48%;
722
+ }
723
+ .saltDialog-small-md {
724
+ width: 36%;
725
+ max-height: 48%;
726
+ }
727
+ .saltDialog-small-lg {
728
+ width: 24%;
729
+ max-height: 48%;
730
+ }
731
+ .saltDialog-small-xl {
732
+ width: 24%;
733
+ max-height: 48%;
734
+ }
735
+ .saltDialog-medium-xs {
736
+ width: 100%;
737
+ max-height: 72%;
738
+ }
739
+ .saltDialog-medium-sm {
740
+ width: 84%;
741
+ max-height: 72%;
742
+ }
743
+ .saltDialog-medium-md {
744
+ width: 68%;
745
+ max-height: 72%;
746
+ }
747
+ .saltDialog-medium-lg {
748
+ width: 48%;
749
+ max-height: 72%;
750
+ }
751
+ .saltDialog-medium-xl {
752
+ width: 48%;
753
+ max-height: 72%;
754
+ }
755
+ .saltDialog-large-xs {
756
+ width: 100%;
757
+ max-height: 84%;
758
+ }
759
+ .saltDialog-large-sm {
760
+ width: 96%;
761
+ max-height: 84%;
762
+ }
763
+ .saltDialog-large-md {
764
+ width: 84%;
765
+ max-height: 84%;
766
+ }
767
+ .saltDialog-large-lg {
768
+ width: 72%;
769
+ max-height: 84%;
770
+ }
771
+ .saltDialog-large-xl {
772
+ width: 72%;
773
+ max-height: 84%;
774
+ }
775
+
776
+ /* src/dialog/DialogActions.css */
777
+ .saltDialogActions {
778
+ padding: var(--salt-spacing-300);
779
+ padding-bottom: 0;
780
+ display: flex;
781
+ justify-content: flex-end;
782
+ gap: var(--salt-spacing-100);
783
+ }
784
+
785
+ /* src/dialog/DialogCloseButton.css */
786
+ .saltButton.saltDialogCloseButton {
787
+ position: absolute;
788
+ top: 0;
789
+ right: 0;
790
+ }
791
+
792
+ /* src/dialog/DialogContent.css */
793
+ .saltDialogContent {
794
+ color: var(--salt-content-primary-foreground);
795
+ min-height: var(--salt-text-lineHeight);
796
+ overflow-y: auto;
797
+ background: var(--salt-container-primary-background);
798
+ padding-bottom: var(--salt-spacing-50);
799
+ margin-left: var(--salt-spacing-200);
800
+ margin-right: var(--salt-spacing-300);
801
+ padding-right: var(--salt-spacing-300);
802
+ padding-left: var(--salt-spacing-100);
803
+ border-bottom: var(--salt-size-border) var(--salt-separable-borderStyle) transparent;
804
+ box-shadow: none;
805
+ }
806
+ .saltDialogContent-scroll {
807
+ border-bottom: var(--salt-size-border) var(--salt-separable-borderStyle) var(--salt-separable-tertiary-borderColor);
808
+ box-shadow: var(--salt-overlayable-shadow-scroll);
809
+ }
810
+
811
+ /* src/dialog/DialogHeader.css */
812
+ .saltDialogHeader {
813
+ padding-bottom: var(--salt-spacing-100);
814
+ padding-left: var(--salt-spacing-300);
815
+ padding-right: var(--salt-spacing-300);
816
+ align-items: center;
817
+ display: flex;
818
+ flex-direction: row;
819
+ gap: var(--salt-spacing-100);
820
+ box-sizing: border-box;
821
+ }
822
+ .saltDialogHeader-header {
823
+ margin: 0;
824
+ }
825
+ .saltDialogHeader .saltStatusIndicator.saltIcon {
826
+ --icon-size: var(--salt-text-h2-lineHeight);
827
+ }
828
+ .saltDialogHeader-withAccent {
829
+ position: relative;
830
+ }
831
+ .saltDialogHeader-withAccent::before {
832
+ content: "";
833
+ position: absolute;
834
+ top: 0;
835
+ left: 0;
836
+ bottom: var(--salt-spacing-100);
837
+ width: var(--salt-size-accent);
838
+ background: var(--salt-accent-background);
839
+ }
840
+ .saltDialogHeader-error::before {
841
+ background: var(--salt-status-error-borderColor);
842
+ }
843
+ .saltDialogHeader-info::before {
844
+ background: var(--salt-status-info-borderColor);
845
+ }
846
+ .saltDialogHeader-success::before {
847
+ background: var(--salt-status-success-borderColor);
848
+ }
849
+ .saltDialogHeader-warning::before {
850
+ background: var(--salt-status-warning-borderColor);
851
+ }
852
+
671
853
  /* src/drawer/Drawer.css */
672
854
  .saltDrawer {
673
855
  background: var(--drawer-background);
@@ -747,6 +929,91 @@ a:link .saltInteractableCard * {
747
929
  margin-right: calc(var(--salt-spacing-300) * -1);
748
930
  }
749
931
 
932
+ /* src/dropdown/Dropdown.css */
933
+ .saltDropdown {
934
+ --dropdown-borderColor: var(--salt-editable-borderColor);
935
+ --dropdown-color: var(--salt-content-primary-foreground);
936
+ --dropdown-cursor: var(--salt-selectable-cursor-hover);
937
+ }
938
+ .saltDropdown {
939
+ all: unset;
940
+ box-sizing: border-box;
941
+ min-width: 4em;
942
+ width: 100%;
943
+ background: var(--dropdown-background);
944
+ cursor: var(--dropdown-cursor);
945
+ min-height: var(--salt-size-base);
946
+ border-bottom: var(--salt-size-border) var(--salt-editable-borderStyle) var(--dropdown-borderColor);
947
+ display: flex;
948
+ align-items: center;
949
+ padding: 0 var(--salt-spacing-100);
950
+ gap: var(--salt-spacing-100);
951
+ color: var(--dropdown-color);
952
+ font-family: var(--salt-text-fontFamily);
953
+ font-size: var(--salt-text-fontSize);
954
+ font-weight: var(--salt-text-fontWeight);
955
+ }
956
+ .saltDropdown:hover {
957
+ --dropdown-borderColor: var(--salt-editable-borderColor-hover);
958
+ }
959
+ .saltDropdown:focus-visible {
960
+ outline: var(--salt-focused-outline);
961
+ --dropdown-borderColor: var(--salt-editable-borderColor-hover);
962
+ }
963
+ .saltDropdown-content {
964
+ flex: 1;
965
+ max-width: 100%;
966
+ overflow: hidden;
967
+ text-overflow: ellipsis;
968
+ text-wrap: nowrap;
969
+ }
970
+ .saltDropdown-placeholder {
971
+ color: var(--salt-content-secondary-foreground);
972
+ font-weight: var(--salt-text-fontWeight-small);
973
+ }
974
+ .saltDropdown-primary {
975
+ --dropdown-background: var(--salt-editable-primary-background);
976
+ }
977
+ .saltDropdown-secondary {
978
+ --dropdown-background: var(--salt-editable-secondary-background);
979
+ }
980
+ .saltDropdown:disabled {
981
+ --dropdown-background: var(--salt-editable-primary-background-disabled);
982
+ --dropdown-borderColor: var(--salt-editable-borderColor-disabled);
983
+ --dropdown-color: var(--salt-content-primary-foreground-disabled);
984
+ --dropdown-cursor: var(--salt-selectable-cursor-disabled);
985
+ }
986
+ .saltDropdown[aria-readonly=true] {
987
+ --dropdown-background: var(--salt-editable-primary-background-readonly);
988
+ --dropdown-borderColor: var(--salt-editable-borderColor-readonly);
989
+ --dropdown-color: var(--salt-content-primary-foreground);
990
+ --dropdown-cursor: var(--salt-selectable-cursor-readonly);
991
+ }
992
+ .saltDropdown-error {
993
+ --dropdown-background: var(--salt-status-error-background);
994
+ --dropdown-borderColor: var(--salt-status-error-borderColor);
995
+ }
996
+ .saltDropdown-error .saltDropdown:focus-visible {
997
+ outline-color: var(--salt-status-error-borderColor);
998
+ --dropdown-borderColor: var(--salt-status-error-borderColor);
999
+ }
1000
+ .saltDropdown-warning {
1001
+ --dropdown-background: var(--salt-status-warning-background);
1002
+ --dropdown-borderColor: var(--salt-status-warning-borderColor);
1003
+ }
1004
+ .saltDropdown-warning .saltDropdown:focus-visible {
1005
+ outline-color: var(--salt-status-warning-borderColor);
1006
+ --dropdown-borderColor: var(--salt-status-warning-borderColor);
1007
+ }
1008
+ .saltDropdown-success {
1009
+ --dropdown-background: var(--salt-status-success-background);
1010
+ --dropdown-borderColor: var(--salt-status-success-borderColor);
1011
+ }
1012
+ .saltDropdown-success .saltDropdown:focus-visible {
1013
+ outline-color: var(--salt-status-success-borderColor);
1014
+ --dropdown-borderColor: var(--salt-status-success-borderColor);
1015
+ }
1016
+
750
1017
  /* src/file-drop-zone/FileDropZone.css */
751
1018
  .saltFileDropZone {
752
1019
  color: var(--saltFileDropZone-text-color, var(--salt-text-primary-foreground));
@@ -1319,6 +1586,7 @@ a:link .saltInteractableCard * {
1319
1586
  padding-right: var(--salt-spacing-100);
1320
1587
  position: relative;
1321
1588
  width: 100%;
1589
+ box-sizing: border-box;
1322
1590
  }
1323
1591
  .saltMultilineInput:hover {
1324
1592
  --multilineInput-borderStyle: var(--salt-editable-borderStyle-hover);
@@ -1500,6 +1768,7 @@ a:link .saltInteractableCard * {
1500
1768
  text-decoration: none;
1501
1769
  cursor: var(--salt-selectable-cursor-hover);
1502
1770
  transition: all var(--salt-duration-instant) ease-in-out;
1771
+ box-sizing: border-box;
1503
1772
  }
1504
1773
  .saltNavigationItem-rootItem {
1505
1774
  font-weight: var(--salt-text-fontWeight-strong);
@@ -1591,6 +1860,99 @@ a:link .saltInteractableCard * {
1591
1860
  transition: all var(--salt-duration-perceptible) ease-in-out;
1592
1861
  }
1593
1862
 
1863
+ /* src/option/Option.css */
1864
+ .saltOption {
1865
+ color: var(--salt-content-primary-foreground);
1866
+ background: var(--salt-selectable-background);
1867
+ font-size: var(--salt-text-fontSize);
1868
+ font-weight: var(--salt-text-fontWeight);
1869
+ min-height: calc(var(--salt-size-base) + var(--salt-spacing-100));
1870
+ padding-left: var(--salt-spacing-100);
1871
+ padding-right: var(--salt-spacing-100);
1872
+ display: flex;
1873
+ gap: var(--salt-spacing-100);
1874
+ position: relative;
1875
+ align-items: center;
1876
+ cursor: var(--salt-selectable-cursor-hover);
1877
+ box-sizing: border-box;
1878
+ }
1879
+ .saltOption-active {
1880
+ background: var(--salt-selectable-background-hover);
1881
+ }
1882
+ .saltOption-focusVisible {
1883
+ outline: var(--salt-focused-outline);
1884
+ outline-offset: calc(var(--salt-size-border) * -2);
1885
+ }
1886
+ .saltOption:hover {
1887
+ background: var(--salt-selectable-background-hover);
1888
+ }
1889
+ .saltOption[aria-selected=true] {
1890
+ background: var(--salt-selectable-background-selected);
1891
+ }
1892
+ .saltOption[aria-selected=true]::before {
1893
+ content: "";
1894
+ display: block;
1895
+ position: absolute;
1896
+ top: -1px;
1897
+ bottom: -1px;
1898
+ left: 0;
1899
+ width: 100%;
1900
+ }
1901
+ .saltOption[aria-selected=true]::before {
1902
+ border-top: var(--salt-size-border) var(--salt-selectable-borderStyle-selected) var(--salt-selectable-borderColor-selected);
1903
+ border-bottom: var(--salt-size-border) var(--salt-selectable-borderStyle-selected) var(--salt-selectable-borderColor-selected);
1904
+ }
1905
+ .saltOption[aria-selected=true]:first-of-type::before {
1906
+ border-top: unset;
1907
+ top: 0;
1908
+ }
1909
+ .saltOption[aria-selected=true]:last-of-type::before {
1910
+ border-bottom: unset;
1911
+ bottom: 0;
1912
+ }
1913
+ .saltOption[aria-disabled=true] {
1914
+ color: var(--salt-content-primary-foreground-disabled);
1915
+ cursor: var(--salt-selectable-cursor-disabled);
1916
+ }
1917
+
1918
+ /* src/option/OptionGroup.css */
1919
+ .saltOptionGroup-label {
1920
+ background: var(--salt-container-primary-background);
1921
+ color: var(--salt-text-secondary-foreground);
1922
+ font-size: var(--salt-text-label-fontSize);
1923
+ font-weight: var(--salt-text-label-fontWeight-strong);
1924
+ height: calc(var(--salt-size-base) + var(--salt-spacing-100));
1925
+ padding-left: var(--salt-spacing-100);
1926
+ padding-right: var(--salt-spacing-100);
1927
+ display: flex;
1928
+ align-items: center;
1929
+ position: sticky;
1930
+ top: 0;
1931
+ z-index: 2;
1932
+ }
1933
+
1934
+ /* src/option/OptionList.css */
1935
+ .saltOptionList {
1936
+ background: var(--salt-container-primary-background);
1937
+ border: var(--salt-size-border) var(--salt-selectable-borderStyle-selected) var(--salt-selectable-borderColor-selected);
1938
+ overflow: hidden;
1939
+ overflow-y: auto;
1940
+ position: relative;
1941
+ z-index: var(--salt-zIndex-flyover);
1942
+ box-shadow: var(--salt-overlayable-shadow-popout);
1943
+ box-sizing: border-box;
1944
+ }
1945
+ .saltOptionList-container {
1946
+ display: flex;
1947
+ flex-direction: column;
1948
+ gap: var(--salt-size-border);
1949
+ max-height: inherit;
1950
+ min-height: inherit;
1951
+ }
1952
+ .saltOptionList-collapsed {
1953
+ display: none;
1954
+ }
1955
+
1594
1956
  /* src/pagination/CompactInput.css */
1595
1957
  .saltCompactInput {
1596
1958
  --saltInput-paddingLeft: 0;
@@ -1702,6 +2064,7 @@ a:link .saltInteractableCard * {
1702
2064
  padding: var(--saltPanel-padding, var(--salt-size-container-spacing));
1703
2065
  width: var(--saltPanel-width, 100%);
1704
2066
  border-radius: var(--saltPanel-borderRadius, var(--salt-palette-corner, 0));
2067
+ box-sizing: border-box;
1705
2068
  }
1706
2069
 
1707
2070
  /* src/pill/Pill.css */
@@ -1750,6 +2113,223 @@ a:link .saltInteractableCard * {
1750
2113
  cursor: var(--salt-selectable-cursor-disabled);
1751
2114
  }
1752
2115
 
2116
+ /* src/pill-input/PillInput.css */
2117
+ .saltPillInput {
2118
+ --input-borderColor: var(--salt-editable-borderColor);
2119
+ --input-borderStyle: var(--salt-editable-borderStyle);
2120
+ --input-outlineColor: var(--salt-focused-outlineColor);
2121
+ --input-borderWidth: var(--salt-size-border);
2122
+ align-items: center;
2123
+ background: var(--saltInput-background, var(--input-background));
2124
+ color: var(--saltInput-color, var(--salt-content-primary-foreground));
2125
+ display: inline-flex;
2126
+ font-family: var(--salt-text-fontFamily);
2127
+ font-size: var(--saltInput-fontSize, var(--salt-text-fontSize));
2128
+ line-height: var(--saltInput-lineHeight, var(--salt-text-lineHeight));
2129
+ min-height: var(--saltInput-minHeight, var(--salt-size-base));
2130
+ min-width: var(--saltInput-minWidth, 4em);
2131
+ padding-left: var(--saltInput-paddingLeft, var(--salt-spacing-100));
2132
+ padding-right: var(--saltInput-paddingRight, var(--salt-spacing-100));
2133
+ position: relative;
2134
+ width: 100%;
2135
+ box-sizing: border-box;
2136
+ }
2137
+ .saltPillInput-truncate {
2138
+ height: var(--salt-size-base);
2139
+ }
2140
+ .saltPillInput-truncate .saltPillInput-inputWrapper {
2141
+ flex-wrap: nowrap;
2142
+ }
2143
+ .saltPillInput:hover {
2144
+ --input-borderStyle: var(--salt-editable-borderStyle-hover);
2145
+ --input-borderColor: var(--salt-editable-borderColor-hover);
2146
+ background: var(--saltInput-background-hover, var(--input-background-hover));
2147
+ cursor: var(--salt-editable-cursor-hover);
2148
+ }
2149
+ .saltPillInput:active {
2150
+ --input-borderColor: var(--salt-editable-borderColor-active);
2151
+ --input-borderStyle: var(--salt-editable-borderStyle-active);
2152
+ --input-borderWidth: var(--salt-editable-borderWidth-active);
2153
+ background: var(--saltInput-background-active, var(--input-background-active));
2154
+ cursor: var(--salt-editable-cursor-active);
2155
+ }
2156
+ .saltPillInput-primary {
2157
+ --input-background: var(--salt-editable-primary-background);
2158
+ --input-background-active: var(--salt-editable-primary-background-active);
2159
+ --input-background-hover: var(--salt-editable-primary-background-hover);
2160
+ --input-background-disabled: var(--salt-editable-primary-background-disabled);
2161
+ --input-background-readonly: var(--salt-editable-primary-background-readonly);
2162
+ }
2163
+ .saltPillInput-secondary {
2164
+ --input-background: var(--salt-editable-secondary-background);
2165
+ --input-background-active: var(--salt-editable-secondary-background-active);
2166
+ --input-background-hover: var(--salt-editable-secondary-background-active);
2167
+ --input-background-disabled: var(--salt-editable-secondary-background-disabled);
2168
+ --input-background-readonly: var(--salt-editable-secondary-background-readonly);
2169
+ }
2170
+ .saltPillInput-error,
2171
+ .saltPillInput-error:hover {
2172
+ --input-background: var(--salt-status-error-background);
2173
+ --input-background-active: var(--salt-status-error-background);
2174
+ --input-background-hover: var(--salt-status-error-background);
2175
+ --input-borderColor: var(--salt-status-error-borderColor);
2176
+ --input-outlineColor: var(--salt-status-error-borderColor);
2177
+ }
2178
+ .saltPillInput-warning,
2179
+ .saltPillInput-warning:hover {
2180
+ --input-background: var(--salt-status-warning-background);
2181
+ --input-background-active: var(--salt-status-warning-background);
2182
+ --input-background-hover: var(--salt-status-warning-background);
2183
+ --input-borderColor: var(--salt-status-warning-borderColor);
2184
+ --input-outlineColor: var(--salt-status-warning-borderColor);
2185
+ }
2186
+ .saltPillInput-success,
2187
+ .saltPillInput-success:hover {
2188
+ --input-background: var(--salt-status-success-background);
2189
+ --input-background-active: var(--salt-status-success-background);
2190
+ --input-background-hover: var(--salt-status-success-background);
2191
+ --input-borderColor: var(--salt-status-success-borderColor);
2192
+ --input-outlineColor: var(--salt-status-success-borderColor);
2193
+ }
2194
+ .saltPillInput-input {
2195
+ background: none;
2196
+ border: none;
2197
+ box-sizing: content-box;
2198
+ color: inherit;
2199
+ cursor: inherit;
2200
+ display: block;
2201
+ flex: 1;
2202
+ font: inherit;
2203
+ height: 100%;
2204
+ letter-spacing: var(--saltInput-letterSpacing, 0);
2205
+ margin: 0;
2206
+ min-width: 0;
2207
+ overflow: hidden;
2208
+ padding: 0;
2209
+ text-align: var(--input-textAlign);
2210
+ width: 100%;
2211
+ }
2212
+ .saltPillInput-input:focus {
2213
+ outline: none;
2214
+ }
2215
+ .saltPillInput-input::selection {
2216
+ background: var(--salt-content-foreground-highlight);
2217
+ }
2218
+ .saltPillInput-input::placeholder {
2219
+ color: var(--salt-content-secondary-foreground);
2220
+ font-weight: var(--salt-text-fontWeight-small);
2221
+ }
2222
+ .saltPillInput-focused {
2223
+ --input-borderColor: var(--input-outlineColor);
2224
+ --input-borderWidth: var(--salt-editable-borderWidth-active);
2225
+ outline: var(--saltInput-outline, var(--salt-focused-outlineWidth) var(--salt-focused-outlineStyle) var(--input-outlineColor));
2226
+ }
2227
+ .saltPillInput.saltPillInput-readOnly {
2228
+ --input-borderColor: var(--salt-editable-borderColor-readonly);
2229
+ --input-borderStyle: var(--salt-editable-borderStyle-readonly);
2230
+ --input-borderWidth: var(--salt-size-border);
2231
+ background: var(--input-background-readonly);
2232
+ cursor: var(--salt-editable-cursor-readonly);
2233
+ }
2234
+ .saltPillInput-focused.saltPillInput-disabled {
2235
+ --input-borderWidth: var(--salt-size-border);
2236
+ outline: none;
2237
+ }
2238
+ .saltPillInput-focused.saltPillInput-readOnly {
2239
+ --input-borderWidth: var(--salt-size-border);
2240
+ }
2241
+ .saltPillInput-disabled .saltPillInput-input::selection {
2242
+ background: none;
2243
+ }
2244
+ .saltPillInput.saltPillInput-disabled,
2245
+ .saltPillInput.saltPillInput-disabled:hover,
2246
+ .saltPillInput.saltPillInput-disabled:active {
2247
+ --input-borderColor: var(--salt-editable-borderColor-disabled);
2248
+ --input-borderStyle: var(--salt-editable-borderStyle-disabled);
2249
+ --input-borderWidth: var(--salt-size-border);
2250
+ background: var(--input-background-disabled);
2251
+ cursor: var(--salt-editable-cursor-disabled);
2252
+ color: var(--saltInput-color-disabled, var(--salt-content-primary-foreground-disabled));
2253
+ }
2254
+ .saltPillInput-activationIndicator {
2255
+ left: 0;
2256
+ bottom: 0;
2257
+ width: 100%;
2258
+ position: absolute;
2259
+ border-bottom: var(--input-borderWidth) var(--input-borderStyle) var(--input-borderColor);
2260
+ }
2261
+ .saltPillInput-startAdornmentContainer {
2262
+ align-items: center;
2263
+ display: inline-flex;
2264
+ padding-right: var(--salt-spacing-100);
2265
+ column-gap: var(--salt-spacing-100);
2266
+ }
2267
+ .saltPillInput-endAdornmentContainer {
2268
+ align-items: center;
2269
+ display: inline-flex;
2270
+ padding-left: var(--salt-spacing-100);
2271
+ padding-top: var(--salt-spacing-50);
2272
+ column-gap: var(--salt-spacing-100);
2273
+ align-self: flex-start;
2274
+ }
2275
+ .saltPillInput-readOnly .saltPillInput-startAdornmentContainer {
2276
+ margin-left: var(--salt-spacing-50);
2277
+ }
2278
+ .saltPillInput-startAdornmentContainer .saltButton ~ .saltButton {
2279
+ margin-left: calc(-1 * var(--salt-spacing-50));
2280
+ }
2281
+ .saltPillInput-endAdornmentContainer .saltButton ~ .saltButton {
2282
+ margin-left: calc(-1 * var(--salt-spacing-50));
2283
+ }
2284
+ .saltPillInput-startAdornmentContainer .saltButton:first-child {
2285
+ margin-left: calc(var(--salt-spacing-50) * -1);
2286
+ }
2287
+ .saltPillInput-endAdornmentContainer .saltButton:last-child {
2288
+ margin-right: calc(var(--salt-spacing-50) * -1);
2289
+ }
2290
+ .saltPillInput-startAdornmentContainer > .saltButton,
2291
+ .saltPillInput-endAdornmentContainer > .saltButton {
2292
+ --saltButton-padding: var(--salt-spacing-50);
2293
+ --saltButton-height: calc(var(--salt-size-base) - var(--salt-spacing-100));
2294
+ }
2295
+ .saltPillInput-inputWrapper {
2296
+ display: flex;
2297
+ gap: var(--salt-spacing-50);
2298
+ align-items: center;
2299
+ flex: 1;
2300
+ padding: var(--salt-spacing-50) 0;
2301
+ flex-wrap: wrap;
2302
+ max-height: inherit;
2303
+ height: inherit;
2304
+ overflow-y: auto;
2305
+ box-sizing: border-box;
2306
+ }
2307
+ .saltPillInput-pillList {
2308
+ display: contents;
2309
+ }
2310
+ .saltPillInput .saltPill:focus-visible {
2311
+ background: var(--salt-selectable-background-hover);
2312
+ outline: none;
2313
+ }
2314
+ .saltPillInput .saltPill:hover {
2315
+ background: var(--salt-selectable-background-hover);
2316
+ }
2317
+ .saltPillInput .saltPill:active {
2318
+ background: var(--salt-actionable-primary-background-active);
2319
+ --saltPill-color: var(--salt-actionable-primary-foreground-active);
2320
+ --saltIcon-color: var(--salt-actionable-primary-foreground-active);
2321
+ }
2322
+ div[role=listitem] {
2323
+ display: inline;
2324
+ }
2325
+ .saltPillInput-overflowIndicator {
2326
+ width: calc(var(--salt-size-base) - var(--salt-spacing-100));
2327
+ height: calc(var(--salt-size-base) - var(--salt-spacing-100));
2328
+ display: flex;
2329
+ align-items: center;
2330
+ justify-content: center;
2331
+ }
2332
+
1753
2333
  /* src/radio-button/RadioButton.css */
1754
2334
  .saltRadioButton {
1755
2335
  display: flex;
@@ -2489,21 +3069,37 @@ label.saltText small,
2489
3069
  .saltCircularProgress-track {
2490
3070
  inline-size: calc(var(--salt-size-base) * 3);
2491
3071
  block-size: calc(var(--salt-size-base) * 3);
2492
- border-style: var(--salt-track-borderStyle);
2493
- border-width: var(--salt-size-bar-small);
3072
+ outline-style: var(--salt-track-borderStyle);
3073
+ outline-width: var(--salt-size-bar);
3074
+ outline-offset: calc(var(--salt-size-bar) * -1.5);
2494
3075
  border-radius: calc(var(--salt-size-base) * 3);
2495
- border-color: var(--salt-track-borderColor);
3076
+ outline-color: var(--salt-track-borderColor);
2496
3077
  box-sizing: border-box;
2497
3078
  }
2498
- .saltCircularProgress-bar {
3079
+ .saltCircularProgress-bar,
3080
+ .saltCircularProgress-bufferBorder,
3081
+ .saltCircularProgress-bufferBackground {
2499
3082
  inline-size: calc(var(--salt-size-base) * 3);
2500
3083
  block-size: calc(var(--salt-size-base) * 3);
2501
- border-style: var(--salt-track-borderStyle);
2502
- border-width: var(--salt-size-bar-strong);
2503
3084
  border-radius: calc(var(--salt-size-base) * 3);
2504
- border-color: var(--salt-accent-background);
2505
3085
  box-sizing: border-box;
2506
3086
  }
3087
+ .saltCircularProgress-bar {
3088
+ border-color: var(--salt-accent-background);
3089
+ border-style: var(--salt-track-borderStyle);
3090
+ border-width: var(--salt-size-bar-strong);
3091
+ }
3092
+ .saltCircularProgress-bufferBorder {
3093
+ border: solid var(--salt-size-border) var(--salt-accent-background);
3094
+ outline: solid var(--salt-size-border) var(--salt-accent-background);
3095
+ outline-offset: calc(var(--salt-size-bar-strong) * -1);
3096
+ }
3097
+ .saltCircularProgress-bufferBackground {
3098
+ border: solid var(--salt-size-bar-strong) var(--salt-container-primary-background);
3099
+ position: absolute;
3100
+ bottom: 0;
3101
+ z-index: calc(var(--salt-zIndex-default) * -1);
3102
+ }
2507
3103
  .saltCircularProgress-bars {
2508
3104
  position: absolute;
2509
3105
  inset-block-start: 0;
@@ -2511,26 +3107,50 @@ label.saltText small,
2511
3107
  inline-size: 100%;
2512
3108
  block-size: 100%;
2513
3109
  }
3110
+ .saltCircularProgress-bufferOverlayRight,
3111
+ .saltCircularProgress-bufferOverlayLeft,
2514
3112
  .saltCircularProgress-barOverlayRight,
2515
- .saltCircularProgress-barOverlayLeft {
2516
- inline-size: 50%;
3113
+ .saltCircularProgress-barOverlayLeft,
3114
+ .saltCircularProgress-bufferSubOverlayRight,
3115
+ .saltCircularProgress-bufferSubOverlayLeft,
3116
+ .saltCircularProgress-barSubOverlayRight,
3117
+ .saltCircularProgress-barSubOverlayLeft {
2517
3118
  block-size: 100%;
2518
3119
  transform-origin: 100% center;
2519
- transform: rotate(180deg);
2520
3120
  overflow: hidden;
3121
+ }
3122
+ .saltCircularProgress-bufferOverlayRight,
3123
+ .saltCircularProgress-bufferOverlayLeft,
3124
+ .saltCircularProgress-barOverlayRight,
3125
+ .saltCircularProgress-barOverlayLeft {
3126
+ inline-size: 50%;
3127
+ transform: rotate(180deg);
2521
3128
  position: absolute;
2522
3129
  }
3130
+ .saltCircularProgress-bufferSubOverlayRight,
3131
+ .saltCircularProgress-bufferSubOverlayLeft,
2523
3132
  .saltCircularProgress-barSubOverlayRight,
2524
3133
  .saltCircularProgress-barSubOverlayLeft {
2525
3134
  inline-size: 100%;
2526
- block-size: 100%;
2527
- transform-origin: 100% center;
2528
- overflow: hidden;
2529
3135
  transform: rotate(-180deg);
2530
3136
  }
3137
+ .saltCircularProgress-bufferOverlayLeft,
2531
3138
  .saltCircularProgress-barOverlayLeft {
2532
3139
  transform: rotate(0deg);
2533
3140
  }
3141
+ .saltCircularProgress-bufferOverlayRight:before,
3142
+ .saltCircularProgress-bufferSubOverlay:before {
3143
+ content: "";
3144
+ background: var(--salt-accent-background);
3145
+ position: absolute;
3146
+ right: 0;
3147
+ width: var(--salt-size-border);
3148
+ height: var(--salt-size-bar-strong);
3149
+ }
3150
+ .saltCircularProgress-bufferOverlayRight:before {
3151
+ bottom: 0;
3152
+ z-index: var(--salt-zIndex-default);
3153
+ }
2534
3154
 
2535
3155
  /* src/progress/LinearProgress/LinearProgress.css */
2536
3156
  .saltLinearProgress {
@@ -2548,23 +3168,34 @@ label.saltText small,
2548
3168
  overflow: hidden;
2549
3169
  height: var(--salt-size-bar-strong);
2550
3170
  }
2551
- .saltLinearProgress-bar {
2552
- width: 100%;
3171
+ .saltLinearProgress-bar,
3172
+ .saltLinearProgress-buffer {
2553
3173
  position: absolute;
2554
3174
  left: 0;
2555
3175
  bottom: 0;
2556
3176
  top: 0;
2557
3177
  transition: transform 0.2s linear;
2558
3178
  transform-origin: left;
3179
+ }
3180
+ .saltLinearProgress-buffer {
3181
+ width: 0;
3182
+ background: var(--salt-container-primary-background);
3183
+ outline: solid var(--salt-size-border) var(--salt-accent-background);
3184
+ z-index: var(--salt-zIndex-default);
3185
+ outline-offset: calc(var(--salt-size-border) * -1);
3186
+ }
3187
+ .saltLinearProgress-bar {
3188
+ width: 100%;
2559
3189
  background: var(--salt-accent-background);
2560
- z-index: 2;
3190
+ z-index: calc(var(--salt-zIndex-default) * 2);
2561
3191
  }
2562
3192
  .saltLinearProgress-track {
2563
3193
  background: var(--salt-track-borderColor);
2564
3194
  width: 100%;
2565
- height: var(--salt-size-bar-small);
3195
+ height: var(--salt-size-bar);
2566
3196
  position: absolute;
2567
- top: calc((var(--salt-size-bar-strong) - var(--salt-size-bar-small)) / 2);
3197
+ top: calc((var(--salt-size-bar-strong) - var(--salt-size-bar)) / 2);
3198
+ right: 0;
2568
3199
  transition: transform 0.2s linear;
2569
3200
  transform-origin: left;
2570
3201
  }
@@ -2575,4 +3206,4 @@ label.saltText small,
2575
3206
  padding-left: var(--salt-spacing-100);
2576
3207
  }
2577
3208
 
2578
- /* src/74bb8614-e2fd-43f5-8567-6cfe0430ac06.css */
3209
+ /* src/27680800-7be6-4fe8-984e-51d71cc3f624.css */