@salt-ds/core 1.20.0 → 1.22.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 (440) hide show
  1. package/css/salt-core.css +474 -19
  2. package/dist-cjs/accordion/Accordion.js +77 -0
  3. package/dist-cjs/accordion/Accordion.js.map +1 -1
  4. package/dist-cjs/accordion/AccordionContext.js +81 -0
  5. package/dist-cjs/accordion/AccordionContext.js.map +1 -1
  6. package/dist-cjs/accordion/AccordionGroup.js +78 -1
  7. package/dist-cjs/accordion/AccordionGroup.js.map +1 -1
  8. package/dist-cjs/accordion/AccordionHeader.js +75 -0
  9. package/dist-cjs/accordion/AccordionHeader.js.map +1 -1
  10. package/dist-cjs/accordion/AccordionPanel.js +77 -0
  11. package/dist-cjs/accordion/AccordionPanel.js.map +1 -1
  12. package/dist-cjs/aria-announcer/useAriaAnnouncer.js +80 -0
  13. package/dist-cjs/aria-announcer/useAriaAnnouncer.js.map +1 -1
  14. package/dist-cjs/avatar/Avatar.js +76 -0
  15. package/dist-cjs/avatar/Avatar.js.map +1 -1
  16. package/dist-cjs/avatar/useAvatarImage.js +81 -0
  17. package/dist-cjs/avatar/useAvatarImage.js.map +1 -1
  18. package/dist-cjs/badge/Badge.js +77 -0
  19. package/dist-cjs/badge/Badge.js.map +1 -1
  20. package/dist-cjs/banner/Banner.js +78 -2
  21. package/dist-cjs/banner/Banner.js.map +1 -1
  22. package/dist-cjs/banner/BannerActions.js +78 -1
  23. package/dist-cjs/banner/BannerActions.js.map +1 -1
  24. package/dist-cjs/banner/BannerContent.js +78 -1
  25. package/dist-cjs/banner/BannerContent.js.map +1 -1
  26. package/dist-cjs/border-item/BorderItem.js +77 -1
  27. package/dist-cjs/border-item/BorderItem.js.map +1 -1
  28. package/dist-cjs/border-layout/BorderLayout.js +78 -0
  29. package/dist-cjs/border-layout/BorderLayout.js.map +1 -1
  30. package/dist-cjs/button/Button.js +78 -1
  31. package/dist-cjs/button/Button.js.map +1 -1
  32. package/dist-cjs/card/Card.js +77 -0
  33. package/dist-cjs/card/Card.js.map +1 -1
  34. package/dist-cjs/card/InteractableCard.js +77 -0
  35. package/dist-cjs/card/InteractableCard.js.map +1 -1
  36. package/dist-cjs/checkbox/Checkbox.js +75 -0
  37. package/dist-cjs/checkbox/Checkbox.js.map +1 -1
  38. package/dist-cjs/checkbox/CheckboxGroup.js +76 -0
  39. package/dist-cjs/checkbox/CheckboxGroup.js.map +1 -1
  40. package/dist-cjs/checkbox/CheckboxIcon.js +77 -0
  41. package/dist-cjs/checkbox/CheckboxIcon.js.map +1 -1
  42. package/dist-cjs/checkbox/internal/CheckboxGroupContext.js +81 -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 +445 -0
  47. package/dist-cjs/combo-box/ComboBox.js.map +1 -0
  48. package/dist-cjs/combo-box/useComboBox.js +155 -0
  49. package/dist-cjs/combo-box/useComboBox.js.map +1 -0
  50. package/dist-cjs/dialog/Dialog.js +79 -3
  51. package/dist-cjs/dialog/Dialog.js.map +1 -1
  52. package/dist-cjs/dialog/DialogActions.js +78 -1
  53. package/dist-cjs/dialog/DialogActions.js.map +1 -1
  54. package/dist-cjs/dialog/DialogCloseButton.js +76 -1
  55. package/dist-cjs/dialog/DialogCloseButton.js.map +1 -1
  56. package/dist-cjs/dialog/DialogContent.js +78 -1
  57. package/dist-cjs/dialog/DialogContent.js.map +1 -1
  58. package/dist-cjs/dialog/DialogHeader.css.js +1 -1
  59. package/dist-cjs/dialog/DialogHeader.js +124 -51
  60. package/dist-cjs/dialog/DialogHeader.js.map +1 -1
  61. package/dist-cjs/drawer/Drawer.js +79 -4
  62. package/dist-cjs/drawer/Drawer.js.map +1 -1
  63. package/dist-cjs/drawer/DrawerCloseButton.js +76 -1
  64. package/dist-cjs/drawer/DrawerCloseButton.js.map +1 -1
  65. package/dist-cjs/dropdown/Dropdown.css.js +6 -0
  66. package/dist-cjs/dropdown/Dropdown.css.js.map +1 -0
  67. package/dist-cjs/dropdown/Dropdown.js +414 -0
  68. package/dist-cjs/dropdown/Dropdown.js.map +1 -0
  69. package/dist-cjs/file-drop-zone/FileDropZone.js +77 -0
  70. package/dist-cjs/file-drop-zone/FileDropZone.js.map +1 -1
  71. package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js +78 -0
  72. package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
  73. package/dist-cjs/flex-item/FlexItem.js +81 -2
  74. package/dist-cjs/flex-item/FlexItem.js.map +1 -1
  75. package/dist-cjs/flex-layout/FlexLayout.js +81 -2
  76. package/dist-cjs/flex-layout/FlexLayout.js.map +1 -1
  77. package/dist-cjs/form-field/FormField.js +76 -0
  78. package/dist-cjs/form-field/FormField.js.map +1 -1
  79. package/dist-cjs/form-field/FormFieldHelperText.js +73 -3
  80. package/dist-cjs/form-field/FormFieldHelperText.js.map +1 -1
  81. package/dist-cjs/form-field/FormFieldLabel.js +72 -1
  82. package/dist-cjs/form-field/FormFieldLabel.js.map +1 -1
  83. package/dist-cjs/form-field-context/FormFieldContext.js +80 -0
  84. package/dist-cjs/form-field-context/FormFieldContext.js.map +1 -1
  85. package/dist-cjs/grid-item/GridItem.js +81 -2
  86. package/dist-cjs/grid-item/GridItem.js.map +1 -1
  87. package/dist-cjs/grid-layout/GridLayout.js +81 -2
  88. package/dist-cjs/grid-layout/GridLayout.js.map +1 -1
  89. package/dist-cjs/index.js +20 -2
  90. package/dist-cjs/index.js.map +1 -1
  91. package/dist-cjs/input/Input.js +75 -0
  92. package/dist-cjs/input/Input.js.map +1 -1
  93. package/dist-cjs/link/Link.js +73 -3
  94. package/dist-cjs/link/Link.js.map +1 -1
  95. package/dist-cjs/link-card/LinkCard.js +77 -0
  96. package/dist-cjs/link-card/LinkCard.js.map +1 -1
  97. package/dist-cjs/list-control/ListControlContext.js +123 -0
  98. package/dist-cjs/list-control/ListControlContext.js.map +1 -0
  99. package/dist-cjs/list-control/ListControlState.js +278 -0
  100. package/dist-cjs/list-control/ListControlState.js.map +1 -0
  101. package/dist-cjs/multiline-input/MultilineInput.js +75 -0
  102. package/dist-cjs/multiline-input/MultilineInput.js.map +1 -1
  103. package/dist-cjs/navigation-item/NavigationItem.js +79 -2
  104. package/dist-cjs/navigation-item/NavigationItem.js.map +1 -1
  105. package/dist-cjs/option/Option.css.js +6 -0
  106. package/dist-cjs/option/Option.css.js.map +1 -0
  107. package/dist-cjs/option/Option.js +180 -0
  108. package/dist-cjs/option/Option.js.map +1 -0
  109. package/dist-cjs/option/OptionGroup.css.js +6 -0
  110. package/dist-cjs/option/OptionGroup.css.js.map +1 -0
  111. package/dist-cjs/option/OptionGroup.js +125 -0
  112. package/dist-cjs/option/OptionGroup.js.map +1 -0
  113. package/dist-cjs/option/OptionList.css.js +6 -0
  114. package/dist-cjs/option/OptionList.css.js.map +1 -0
  115. package/dist-cjs/option/OptionList.js +120 -0
  116. package/dist-cjs/option/OptionList.js.map +1 -0
  117. package/dist-cjs/option/OptionListBase.js +115 -0
  118. package/dist-cjs/option/OptionListBase.js.map +1 -0
  119. package/dist-cjs/pagination/CompactInput.js +78 -2
  120. package/dist-cjs/pagination/CompactInput.js.map +1 -1
  121. package/dist-cjs/pagination/CompactPaginator.js +72 -3
  122. package/dist-cjs/pagination/CompactPaginator.js.map +1 -1
  123. package/dist-cjs/pagination/GoToInput.js +71 -4
  124. package/dist-cjs/pagination/GoToInput.js.map +1 -1
  125. package/dist-cjs/pagination/PageButton.js +79 -2
  126. package/dist-cjs/pagination/PageButton.js.map +1 -1
  127. package/dist-cjs/pagination/PageRanges.js +80 -2
  128. package/dist-cjs/pagination/PageRanges.js.map +1 -1
  129. package/dist-cjs/pagination/Pagination.js +78 -2
  130. package/dist-cjs/pagination/Pagination.js.map +1 -1
  131. package/dist-cjs/pagination/Paginator.js +77 -2
  132. package/dist-cjs/pagination/Paginator.js.map +1 -1
  133. package/dist-cjs/panel/Panel.js +79 -2
  134. package/dist-cjs/panel/Panel.js.map +1 -1
  135. package/dist-cjs/pill/Pill.js +76 -0
  136. package/dist-cjs/pill/Pill.js.map +1 -1
  137. package/dist-cjs/pill-input/PillInput.css.js +6 -0
  138. package/dist-cjs/pill-input/PillInput.css.js.map +1 -0
  139. package/dist-cjs/pill-input/PillInput.js +340 -0
  140. package/dist-cjs/pill-input/PillInput.js.map +1 -0
  141. package/dist-cjs/pill-input/useTruncatePills.js +83 -0
  142. package/dist-cjs/pill-input/useTruncatePills.js.map +1 -0
  143. package/dist-cjs/progress/CircularProgress/CircularProgress.css.js +1 -1
  144. package/dist-cjs/progress/CircularProgress/CircularProgress.js +141 -15
  145. package/dist-cjs/progress/CircularProgress/CircularProgress.js.map +1 -1
  146. package/dist-cjs/progress/LinearProgress/LinearProgress.css.js +1 -1
  147. package/dist-cjs/progress/LinearProgress/LinearProgress.js +92 -9
  148. package/dist-cjs/progress/LinearProgress/LinearProgress.js.map +1 -1
  149. package/dist-cjs/radio-button/RadioButton.js +80 -4
  150. package/dist-cjs/radio-button/RadioButton.js.map +1 -1
  151. package/dist-cjs/radio-button/RadioButtonGroup.js +79 -3
  152. package/dist-cjs/radio-button/RadioButtonGroup.js.map +1 -1
  153. package/dist-cjs/radio-button/RadioButtonIcon.js +78 -0
  154. package/dist-cjs/radio-button/RadioButtonIcon.js.map +1 -1
  155. package/dist-cjs/radio-button/internal/RadioGroupContext.js +81 -0
  156. package/dist-cjs/radio-button/internal/RadioGroupContext.js.map +1 -1
  157. package/dist-cjs/salt-provider/SaltProvider.js +80 -3
  158. package/dist-cjs/salt-provider/SaltProvider.js.map +1 -1
  159. package/dist-cjs/scrim/Scrim.js +78 -1
  160. package/dist-cjs/scrim/Scrim.js.map +1 -1
  161. package/dist-cjs/spinner/Spinner.js +78 -2
  162. package/dist-cjs/spinner/Spinner.js.map +1 -1
  163. package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js +80 -0
  164. package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js.map +1 -1
  165. package/dist-cjs/split-layout/SplitLayout.js +78 -2
  166. package/dist-cjs/split-layout/SplitLayout.js.map +1 -1
  167. package/dist-cjs/stack-layout/StackLayout.js +80 -2
  168. package/dist-cjs/stack-layout/StackLayout.js.map +1 -1
  169. package/dist-cjs/status-adornment/StatusAdornment.js +77 -0
  170. package/dist-cjs/status-adornment/StatusAdornment.js.map +1 -1
  171. package/dist-cjs/status-indicator/StatusIndicator.js +78 -2
  172. package/dist-cjs/status-indicator/StatusIndicator.js.map +1 -1
  173. package/dist-cjs/switch/Switch.js +77 -2
  174. package/dist-cjs/switch/Switch.js.map +1 -1
  175. package/dist-cjs/text/Code.js +21 -0
  176. package/dist-cjs/text/Code.js.map +1 -0
  177. package/dist-cjs/text/Text.css.js +1 -1
  178. package/dist-cjs/text/Text.js +79 -2
  179. package/dist-cjs/text/Text.js.map +1 -1
  180. package/dist-cjs/toast/Toast.js +76 -0
  181. package/dist-cjs/toast/Toast.js.map +1 -1
  182. package/dist-cjs/toast/ToastContent.js +77 -0
  183. package/dist-cjs/toast/ToastContent.js.map +1 -1
  184. package/dist-cjs/toggle-button/ToggleButton.js +75 -0
  185. package/dist-cjs/toggle-button/ToggleButton.js.map +1 -1
  186. package/dist-cjs/toggle-button-group/ToggleButtonGroup.js +76 -0
  187. package/dist-cjs/toggle-button-group/ToggleButtonGroup.js.map +1 -1
  188. package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js +80 -0
  189. package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js.map +1 -1
  190. package/dist-cjs/tooltip/Tooltip.js +77 -1
  191. package/dist-cjs/tooltip/Tooltip.js.map +1 -1
  192. package/dist-cjs/tooltip/TooltipBase.js +77 -2
  193. package/dist-cjs/tooltip/TooltipBase.js.map +1 -1
  194. package/dist-cjs/tooltip/useAriaAnnounce.js +79 -0
  195. package/dist-cjs/tooltip/useAriaAnnounce.js.map +1 -1
  196. package/dist-cjs/tooltip/useTooltip.js +80 -0
  197. package/dist-cjs/tooltip/useTooltip.js.map +1 -1
  198. package/dist-cjs/utils/ownerWindow.js.map +1 -1
  199. package/dist-cjs/utils/useEventCallback.js +20 -0
  200. package/dist-cjs/utils/useEventCallback.js.map +1 -0
  201. package/dist-cjs/utils/useResizeObserver.js +29 -0
  202. package/dist-cjs/utils/useResizeObserver.js.map +1 -0
  203. package/dist-cjs/utils/useValueEffect.js +126 -0
  204. package/dist-cjs/utils/useValueEffect.js.map +1 -0
  205. package/dist-cjs/viewport/ViewportProvider.js +80 -0
  206. package/dist-cjs/viewport/ViewportProvider.js.map +1 -1
  207. package/dist-es/accordion/Accordion.js +77 -0
  208. package/dist-es/accordion/Accordion.js.map +1 -1
  209. package/dist-es/accordion/AccordionContext.js +81 -0
  210. package/dist-es/accordion/AccordionContext.js.map +1 -1
  211. package/dist-es/accordion/AccordionGroup.js +78 -1
  212. package/dist-es/accordion/AccordionGroup.js.map +1 -1
  213. package/dist-es/accordion/AccordionHeader.js +75 -0
  214. package/dist-es/accordion/AccordionHeader.js.map +1 -1
  215. package/dist-es/accordion/AccordionPanel.js +77 -0
  216. package/dist-es/accordion/AccordionPanel.js.map +1 -1
  217. package/dist-es/aria-announcer/useAriaAnnouncer.js +80 -0
  218. package/dist-es/aria-announcer/useAriaAnnouncer.js.map +1 -1
  219. package/dist-es/avatar/Avatar.js +76 -0
  220. package/dist-es/avatar/Avatar.js.map +1 -1
  221. package/dist-es/avatar/useAvatarImage.js +81 -0
  222. package/dist-es/avatar/useAvatarImage.js.map +1 -1
  223. package/dist-es/badge/Badge.js +77 -0
  224. package/dist-es/badge/Badge.js.map +1 -1
  225. package/dist-es/banner/Banner.js +78 -2
  226. package/dist-es/banner/Banner.js.map +1 -1
  227. package/dist-es/banner/BannerActions.js +78 -1
  228. package/dist-es/banner/BannerActions.js.map +1 -1
  229. package/dist-es/banner/BannerContent.js +78 -1
  230. package/dist-es/banner/BannerContent.js.map +1 -1
  231. package/dist-es/border-item/BorderItem.js +77 -1
  232. package/dist-es/border-item/BorderItem.js.map +1 -1
  233. package/dist-es/border-layout/BorderLayout.js +78 -0
  234. package/dist-es/border-layout/BorderLayout.js.map +1 -1
  235. package/dist-es/button/Button.js +78 -1
  236. package/dist-es/button/Button.js.map +1 -1
  237. package/dist-es/card/Card.js +77 -0
  238. package/dist-es/card/Card.js.map +1 -1
  239. package/dist-es/card/InteractableCard.js +77 -0
  240. package/dist-es/card/InteractableCard.js.map +1 -1
  241. package/dist-es/checkbox/Checkbox.js +75 -0
  242. package/dist-es/checkbox/Checkbox.js.map +1 -1
  243. package/dist-es/checkbox/CheckboxGroup.js +76 -0
  244. package/dist-es/checkbox/CheckboxGroup.js.map +1 -1
  245. package/dist-es/checkbox/CheckboxIcon.js +77 -0
  246. package/dist-es/checkbox/CheckboxIcon.js.map +1 -1
  247. package/dist-es/checkbox/internal/CheckboxGroupContext.js +81 -0
  248. package/dist-es/checkbox/internal/CheckboxGroupContext.js.map +1 -1
  249. package/dist-es/combo-box/ComboBox.css.js +4 -0
  250. package/dist-es/combo-box/ComboBox.css.js.map +1 -0
  251. package/dist-es/combo-box/ComboBox.js +441 -0
  252. package/dist-es/combo-box/ComboBox.js.map +1 -0
  253. package/dist-es/combo-box/useComboBox.js +151 -0
  254. package/dist-es/combo-box/useComboBox.js.map +1 -0
  255. package/dist-es/dialog/Dialog.js +79 -3
  256. package/dist-es/dialog/Dialog.js.map +1 -1
  257. package/dist-es/dialog/DialogActions.js +78 -1
  258. package/dist-es/dialog/DialogActions.js.map +1 -1
  259. package/dist-es/dialog/DialogCloseButton.js +76 -1
  260. package/dist-es/dialog/DialogCloseButton.js.map +1 -1
  261. package/dist-es/dialog/DialogContent.js +78 -1
  262. package/dist-es/dialog/DialogContent.js.map +1 -1
  263. package/dist-es/dialog/DialogHeader.css.js +1 -1
  264. package/dist-es/dialog/DialogHeader.js +124 -51
  265. package/dist-es/dialog/DialogHeader.js.map +1 -1
  266. package/dist-es/drawer/Drawer.js +79 -4
  267. package/dist-es/drawer/Drawer.js.map +1 -1
  268. package/dist-es/drawer/DrawerCloseButton.js +76 -1
  269. package/dist-es/drawer/DrawerCloseButton.js.map +1 -1
  270. package/dist-es/dropdown/Dropdown.css.js +4 -0
  271. package/dist-es/dropdown/Dropdown.css.js.map +1 -0
  272. package/dist-es/dropdown/Dropdown.js +410 -0
  273. package/dist-es/dropdown/Dropdown.js.map +1 -0
  274. package/dist-es/file-drop-zone/FileDropZone.js +77 -0
  275. package/dist-es/file-drop-zone/FileDropZone.js.map +1 -1
  276. package/dist-es/file-drop-zone/FileDropZoneTrigger.js +78 -0
  277. package/dist-es/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
  278. package/dist-es/flex-item/FlexItem.js +81 -2
  279. package/dist-es/flex-item/FlexItem.js.map +1 -1
  280. package/dist-es/flex-layout/FlexLayout.js +81 -2
  281. package/dist-es/flex-layout/FlexLayout.js.map +1 -1
  282. package/dist-es/form-field/FormField.js +76 -0
  283. package/dist-es/form-field/FormField.js.map +1 -1
  284. package/dist-es/form-field/FormFieldHelperText.js +73 -3
  285. package/dist-es/form-field/FormFieldHelperText.js.map +1 -1
  286. package/dist-es/form-field/FormFieldLabel.js +72 -1
  287. package/dist-es/form-field/FormFieldLabel.js.map +1 -1
  288. package/dist-es/form-field-context/FormFieldContext.js +80 -0
  289. package/dist-es/form-field-context/FormFieldContext.js.map +1 -1
  290. package/dist-es/grid-item/GridItem.js +81 -2
  291. package/dist-es/grid-item/GridItem.js.map +1 -1
  292. package/dist-es/grid-layout/GridLayout.js +81 -2
  293. package/dist-es/grid-layout/GridLayout.js.map +1 -1
  294. package/dist-es/index.js +10 -1
  295. package/dist-es/index.js.map +1 -1
  296. package/dist-es/input/Input.js +75 -0
  297. package/dist-es/input/Input.js.map +1 -1
  298. package/dist-es/link/Link.js +73 -3
  299. package/dist-es/link/Link.js.map +1 -1
  300. package/dist-es/link-card/LinkCard.js +77 -0
  301. package/dist-es/link-card/LinkCard.js.map +1 -1
  302. package/dist-es/list-control/ListControlContext.js +118 -0
  303. package/dist-es/list-control/ListControlContext.js.map +1 -0
  304. package/dist-es/list-control/ListControlState.js +273 -0
  305. package/dist-es/list-control/ListControlState.js.map +1 -0
  306. package/dist-es/multiline-input/MultilineInput.js +75 -0
  307. package/dist-es/multiline-input/MultilineInput.js.map +1 -1
  308. package/dist-es/navigation-item/NavigationItem.js +79 -2
  309. package/dist-es/navigation-item/NavigationItem.js.map +1 -1
  310. package/dist-es/option/Option.css.js +4 -0
  311. package/dist-es/option/Option.css.js.map +1 -0
  312. package/dist-es/option/Option.js +176 -0
  313. package/dist-es/option/Option.js.map +1 -0
  314. package/dist-es/option/OptionGroup.css.js +4 -0
  315. package/dist-es/option/OptionGroup.css.js.map +1 -0
  316. package/dist-es/option/OptionGroup.js +121 -0
  317. package/dist-es/option/OptionGroup.js.map +1 -0
  318. package/dist-es/option/OptionList.css.js +4 -0
  319. package/dist-es/option/OptionList.css.js.map +1 -0
  320. package/dist-es/option/OptionList.js +116 -0
  321. package/dist-es/option/OptionList.js.map +1 -0
  322. package/dist-es/option/OptionListBase.js +111 -0
  323. package/dist-es/option/OptionListBase.js.map +1 -0
  324. package/dist-es/pagination/CompactInput.js +78 -2
  325. package/dist-es/pagination/CompactInput.js.map +1 -1
  326. package/dist-es/pagination/CompactPaginator.js +72 -3
  327. package/dist-es/pagination/CompactPaginator.js.map +1 -1
  328. package/dist-es/pagination/GoToInput.js +71 -4
  329. package/dist-es/pagination/GoToInput.js.map +1 -1
  330. package/dist-es/pagination/PageButton.js +79 -2
  331. package/dist-es/pagination/PageButton.js.map +1 -1
  332. package/dist-es/pagination/PageRanges.js +80 -2
  333. package/dist-es/pagination/PageRanges.js.map +1 -1
  334. package/dist-es/pagination/Pagination.js +78 -2
  335. package/dist-es/pagination/Pagination.js.map +1 -1
  336. package/dist-es/pagination/Paginator.js +77 -2
  337. package/dist-es/pagination/Paginator.js.map +1 -1
  338. package/dist-es/panel/Panel.js +79 -2
  339. package/dist-es/panel/Panel.js.map +1 -1
  340. package/dist-es/pill/Pill.js +76 -0
  341. package/dist-es/pill/Pill.js.map +1 -1
  342. package/dist-es/pill-input/PillInput.css.js +4 -0
  343. package/dist-es/pill-input/PillInput.css.js.map +1 -0
  344. package/dist-es/pill-input/PillInput.js +336 -0
  345. package/dist-es/pill-input/PillInput.js.map +1 -0
  346. package/dist-es/pill-input/useTruncatePills.js +79 -0
  347. package/dist-es/pill-input/useTruncatePills.js.map +1 -0
  348. package/dist-es/progress/CircularProgress/CircularProgress.css.js +1 -1
  349. package/dist-es/progress/CircularProgress/CircularProgress.js +141 -15
  350. package/dist-es/progress/CircularProgress/CircularProgress.js.map +1 -1
  351. package/dist-es/progress/LinearProgress/LinearProgress.css.js +1 -1
  352. package/dist-es/progress/LinearProgress/LinearProgress.js +92 -9
  353. package/dist-es/progress/LinearProgress/LinearProgress.js.map +1 -1
  354. package/dist-es/radio-button/RadioButton.js +80 -4
  355. package/dist-es/radio-button/RadioButton.js.map +1 -1
  356. package/dist-es/radio-button/RadioButtonGroup.js +79 -3
  357. package/dist-es/radio-button/RadioButtonGroup.js.map +1 -1
  358. package/dist-es/radio-button/RadioButtonIcon.js +78 -0
  359. package/dist-es/radio-button/RadioButtonIcon.js.map +1 -1
  360. package/dist-es/radio-button/internal/RadioGroupContext.js +81 -0
  361. package/dist-es/radio-button/internal/RadioGroupContext.js.map +1 -1
  362. package/dist-es/salt-provider/SaltProvider.js +80 -3
  363. package/dist-es/salt-provider/SaltProvider.js.map +1 -1
  364. package/dist-es/scrim/Scrim.js +78 -1
  365. package/dist-es/scrim/Scrim.js.map +1 -1
  366. package/dist-es/spinner/Spinner.js +78 -2
  367. package/dist-es/spinner/Spinner.js.map +1 -1
  368. package/dist-es/spinner/svgSpinners/SpinnerSVG.js +80 -0
  369. package/dist-es/spinner/svgSpinners/SpinnerSVG.js.map +1 -1
  370. package/dist-es/split-layout/SplitLayout.js +78 -2
  371. package/dist-es/split-layout/SplitLayout.js.map +1 -1
  372. package/dist-es/stack-layout/StackLayout.js +80 -2
  373. package/dist-es/stack-layout/StackLayout.js.map +1 -1
  374. package/dist-es/status-adornment/StatusAdornment.js +77 -0
  375. package/dist-es/status-adornment/StatusAdornment.js.map +1 -1
  376. package/dist-es/status-indicator/StatusIndicator.js +78 -2
  377. package/dist-es/status-indicator/StatusIndicator.js.map +1 -1
  378. package/dist-es/switch/Switch.js +77 -2
  379. package/dist-es/switch/Switch.js.map +1 -1
  380. package/dist-es/text/Code.js +17 -0
  381. package/dist-es/text/Code.js.map +1 -0
  382. package/dist-es/text/Text.css.js +1 -1
  383. package/dist-es/text/Text.js +79 -2
  384. package/dist-es/text/Text.js.map +1 -1
  385. package/dist-es/toast/Toast.js +76 -0
  386. package/dist-es/toast/Toast.js.map +1 -1
  387. package/dist-es/toast/ToastContent.js +77 -0
  388. package/dist-es/toast/ToastContent.js.map +1 -1
  389. package/dist-es/toggle-button/ToggleButton.js +75 -0
  390. package/dist-es/toggle-button/ToggleButton.js.map +1 -1
  391. package/dist-es/toggle-button-group/ToggleButtonGroup.js +76 -0
  392. package/dist-es/toggle-button-group/ToggleButtonGroup.js.map +1 -1
  393. package/dist-es/toggle-button-group/ToggleButtonGroupContext.js +80 -0
  394. package/dist-es/toggle-button-group/ToggleButtonGroupContext.js.map +1 -1
  395. package/dist-es/tooltip/Tooltip.js +77 -1
  396. package/dist-es/tooltip/Tooltip.js.map +1 -1
  397. package/dist-es/tooltip/TooltipBase.js +77 -2
  398. package/dist-es/tooltip/TooltipBase.js.map +1 -1
  399. package/dist-es/tooltip/useAriaAnnounce.js +79 -0
  400. package/dist-es/tooltip/useAriaAnnounce.js.map +1 -1
  401. package/dist-es/tooltip/useTooltip.js +80 -0
  402. package/dist-es/tooltip/useTooltip.js.map +1 -1
  403. package/dist-es/utils/ownerWindow.js.map +1 -1
  404. package/dist-es/utils/useEventCallback.js +16 -0
  405. package/dist-es/utils/useEventCallback.js.map +1 -0
  406. package/dist-es/utils/useResizeObserver.js +25 -0
  407. package/dist-es/utils/useResizeObserver.js.map +1 -0
  408. package/dist-es/utils/useValueEffect.js +122 -0
  409. package/dist-es/utils/useValueEffect.js.map +1 -0
  410. package/dist-es/viewport/ViewportProvider.js +80 -0
  411. package/dist-es/viewport/ViewportProvider.js.map +1 -1
  412. package/dist-types/combo-box/ComboBox.d.ts +17 -0
  413. package/dist-types/combo-box/index.d.ts +1 -0
  414. package/dist-types/combo-box/useComboBox.d.ts +30 -0
  415. package/dist-types/dialog/DialogHeader.d.ts +2 -4
  416. package/dist-types/dropdown/Dropdown.d.ts +99 -0
  417. package/dist-types/dropdown/index.d.ts +1 -0
  418. package/dist-types/index.d.ts +4 -0
  419. package/dist-types/list-control/ListControlContext.d.ts +21 -0
  420. package/dist-types/list-control/ListControlState.d.ts +70 -0
  421. package/dist-types/list-control/index.d.ts +1 -0
  422. package/dist-types/option/Option.d.ts +16 -0
  423. package/dist-types/option/OptionGroup.d.ts +12 -0
  424. package/dist-types/option/OptionList.d.ts +5 -0
  425. package/dist-types/option/OptionListBase.d.ts +4 -0
  426. package/dist-types/option/index.d.ts +2 -0
  427. package/dist-types/pill-input/PillInput.d.ts +48 -0
  428. package/dist-types/pill-input/index.d.ts +1 -0
  429. package/dist-types/pill-input/useTruncatePills.d.ts +8 -0
  430. package/dist-types/progress/CircularProgress/CircularProgress.d.ts +5 -0
  431. package/dist-types/progress/LinearProgress/LinearProgress.d.ts +5 -0
  432. package/dist-types/text/Code.d.ts +2 -0
  433. package/dist-types/text/Text.d.ts +1 -1
  434. package/dist-types/text/index.d.ts +2 -1
  435. package/dist-types/utils/index.d.ts +3 -0
  436. package/dist-types/utils/ownerWindow.d.ts +1 -1
  437. package/dist-types/utils/useEventCallback.d.ts +4 -0
  438. package/dist-types/utils/useResizeObserver.d.ts +6 -0
  439. package/dist-types/utils/useValueEffect.d.ts +4 -0
  440. package/package.json +1 -1
@@ -11,12 +11,88 @@ require('../utils/useFloatingUI/useFloatingUI.js');
11
11
  var useId = require('../utils/useId.js');
12
12
  require('../salt-provider/SaltProvider.js');
13
13
  require('../viewport/ViewportProvider.js');
14
- var RadioGroupContext = require('./internal/RadioGroupContext.js');
15
- var RadioButtonGroup$1 = require('./RadioButtonGroup.css.js');
16
- var window = require('@salt-ds/window');
14
+ require('../accordion/AccordionGroup.js');
15
+ require('../accordion/AccordionPanel.js');
16
+ require('../accordion/Accordion.js');
17
+ require('../accordion/AccordionHeader.js');
18
+ require('../aria-announcer/AriaAnnouncerContext.js');
19
+ require('../avatar/Avatar.js');
20
+ require('../badge/Badge.js');
21
+ require('../banner/Banner.js');
22
+ require('../banner/BannerActions.js');
23
+ require('../banner/BannerContent.js');
24
+ require('../border-item/BorderItem.js');
25
+ require('../border-layout/BorderLayout.js');
26
+ require('../button/Button.js');
27
+ require('../card/Card.js');
28
+ require('../card/InteractableCard.js');
29
+ require('../checkbox/Checkbox.js');
30
+ require('../checkbox/CheckboxGroup.js');
17
31
  var styles = require('@salt-ds/styles');
32
+ var window = require('@salt-ds/window');
33
+ require('@salt-ds/icons');
34
+ require('../combo-box/ComboBox.js');
35
+ require('../dialog/Dialog.js');
36
+ require('../dialog/DialogHeader.js');
37
+ require('../dialog/DialogActions.js');
38
+ require('../dialog/DialogContent.js');
39
+ require('../dialog/DialogContext.js');
40
+ require('../dialog/DialogCloseButton.js');
41
+ require('../drawer/Drawer.js');
42
+ require('../drawer/DrawerCloseButton.js');
43
+ require('../dropdown/Dropdown.js');
44
+ require('../file-drop-zone/FileDropZone.js');
45
+ require('../file-drop-zone/FileDropZoneIcon.js');
46
+ require('../file-drop-zone/FileDropZoneTrigger.js');
47
+ require('../flex-item/FlexItem.js');
48
+ require('../flex-layout/FlexLayout.js');
49
+ require('../flow-layout/FlowLayout.js');
50
+ require('../form-field/FormField.js');
51
+ require('../status-indicator/StatusIndicator.js');
52
+ require('../text/Text.js');
53
+ require('../text/Code.js');
54
+ require('../text/Display.js');
55
+ require('../text/Headings.js');
56
+ require('../text/Label.js');
57
+ require('../text/TextAction.js');
58
+ require('../text/TextNotation.js');
18
59
  require('../form-field-context/FormFieldContext.js');
19
60
  var useFormFieldProps = require('../form-field-context/useFormFieldProps.js');
61
+ require('../grid-item/GridItem.js');
62
+ require('../grid-layout/GridLayout.js');
63
+ require('../input/Input.js');
64
+ require('../link/Link.js');
65
+ require('../link-card/LinkCard.js');
66
+ require('../list-control/ListControlContext.js');
67
+ require('../multiline-input/MultilineInput.js');
68
+ require('../navigation-item/NavigationItem.js');
69
+ require('../option/Option.js');
70
+ require('../option/OptionGroup.js');
71
+ require('../pagination/Pagination.js');
72
+ require('../pagination/Paginator.js');
73
+ require('../pagination/CompactInput.js');
74
+ require('../pagination/CompactPaginator.js');
75
+ require('../pagination/GoToInput.js');
76
+ require('../panel/Panel.js');
77
+ require('../pill/Pill.js');
78
+ require('../progress/CircularProgress/CircularProgress.js');
79
+ require('../progress/LinearProgress/LinearProgress.js');
80
+ require('./RadioButton.js');
81
+ require('../scrim/Scrim.js');
82
+ require('../spinner/Spinner.js');
83
+ require('../stack-layout/StackLayout.js');
84
+ require('../status-adornment/StatusAdornment.js');
85
+ require('../toast/Toast.js');
86
+ require('../toast/ToastContent.js');
87
+ require('../split-layout/SplitLayout.js');
88
+ require('../switch/Switch.js');
89
+ require('../toggle-button/ToggleButton.js');
90
+ require('../toggle-button-group/ToggleButtonGroup.js');
91
+ require('../toggle-button-group/ToggleButtonGroupContext.js');
92
+ require('../tooltip/Tooltip.js');
93
+ require('@floating-ui/react');
94
+ var RadioGroupContext = require('./internal/RadioGroupContext.js');
95
+ var RadioButtonGroup$1 = require('./RadioButtonGroup.css.js');
20
96
 
21
97
  const withBaseName = makePrefixer.makePrefixer("saltRadioButtonGroup");
22
98
  const RadioButtonGroup = React.forwardRef(function RadioButtonGroup2(props, ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButtonGroup.js","sources":["../src/radio-button/RadioButtonGroup.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport {\n ChangeEventHandler,\n ComponentPropsWithoutRef,\n forwardRef,\n} from \"react\";\nimport { makePrefixer, useControlled, useId } from \"../utils\";\nimport { RadioGroupContext } from \"./internal/RadioGroupContext\";\n\nimport radioButtonGroupCss from \"./RadioButtonGroup.css\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useFormFieldProps } from \"../form-field-context\";\n\nconst withBaseName = makePrefixer(\"saltRadioButtonGroup\");\n\nexport interface RadioButtonGroupProps\n extends Omit<ComponentPropsWithoutRef<\"fieldset\">, \"onChange\"> {\n /**\n * Set the selected value when initialized.\n */\n defaultValue?: string;\n /**\n * Set the group direction.\n */\n direction?: \"horizontal\" | \"vertical\";\n /**\n * Disable the RadioButton group\n */\n disabled?: boolean;\n /**\n * Only for horizontal direction. When `true` the text in radio button label will wrap to fit within the container. Otherwise the radio buttons will wrap onto the next line.\n */\n wrap?: boolean;\n /**\n * The name to be set on each radio button within the group. If not set, then one will be generated for you.\n */\n name?: string;\n /**\n * Callback for change event.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Set the RadioButton group to read only.\n */\n readOnly?: boolean;\n /**\n * The value of the radio group, required for a controlled component.\n */\n value?: string;\n /**\n * Validation status.\n */\n validationStatus?: \"error\" | \"warning\";\n}\n\nexport const RadioButtonGroup = forwardRef<\n HTMLFieldSetElement,\n RadioButtonGroupProps\n>(function RadioButtonGroup(props, ref) {\n const {\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n children,\n className,\n defaultValue,\n direction = \"vertical\",\n disabled: disabledProp,\n wrap = true,\n name: nameProp,\n onChange,\n readOnly: readOnlyProp,\n value: valueProp,\n validationStatus: validationStatusProp,\n ...rest\n } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-radio-button-group\",\n css: radioButtonGroupCss,\n window: targetWindow,\n });\n\n const {\n a11yProps,\n disabled: formFieldDisabled,\n readOnly: formFieldReadOnly,\n validationStatus: formFieldValidationStatus,\n } = useFormFieldProps();\n\n const disabled = formFieldDisabled || disabledProp;\n const readOnly = formFieldReadOnly || readOnlyProp;\n const validationStatus = formFieldValidationStatus ?? validationStatusProp;\n\n const [value, setStateValue] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n state: \"value\",\n name: \"RadioButtonGroup\",\n });\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n setStateValue(event.target.value);\n onChange?.(event);\n };\n\n const name = useId(nameProp);\n\n return (\n <fieldset\n role=\"radiogroup\"\n aria-readonly={readOnly}\n aria-labelledby={\n clsx(a11yProps?.[\"aria-labelledby\"], ariaLabelledBy) || undefined\n }\n aria-describedby={\n clsx(a11yProps?.[\"aria-describedby\"], ariaDescribedBy) || undefined\n }\n className={clsx(\n withBaseName(),\n withBaseName(direction),\n {\n [withBaseName(\"noWrap\")]: !wrap,\n },\n className\n )}\n data-testid=\"radio-button-group\"\n ref={ref}\n {...rest}\n >\n <RadioGroupContext.Provider\n value={{\n disabled,\n name,\n onChange: handleChange,\n readOnly,\n validationStatus,\n value,\n }}\n >\n {children}\n </RadioGroupContext.Provider>\n </fieldset>\n );\n});\n"],"names":["makePrefixer","forwardRef","RadioButtonGroup","useWindow","useComponentCssInjection","radioButtonGroupCss","useFormFieldProps","useControlled","useId","jsx","clsx","RadioGroupContext"],"mappings":"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"}
1
+ {"version":3,"file":"RadioButtonGroup.js","sources":["../src/radio-button/RadioButtonGroup.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport {\n ChangeEventHandler,\n ComponentPropsWithoutRef,\n forwardRef,\n} from \"react\";\nimport { makePrefixer, useControlled, useId } from \"../utils\";\nimport { RadioGroupContext } from \"./internal/RadioGroupContext\";\n\nimport radioButtonGroupCss from \"./RadioButtonGroup.css\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useFormFieldProps } from \"../form-field-context\";\n\nconst withBaseName = makePrefixer(\"saltRadioButtonGroup\");\n\nexport interface RadioButtonGroupProps\n extends Omit<ComponentPropsWithoutRef<\"fieldset\">, \"onChange\"> {\n /**\n * Set the selected value when initialized.\n */\n defaultValue?: string;\n /**\n * Set the group direction.\n */\n direction?: \"horizontal\" | \"vertical\";\n /**\n * Disable the RadioButton group\n */\n disabled?: boolean;\n /**\n * Only for horizontal direction. When `true` the text in radio button label will wrap to fit within the container. Otherwise the radio buttons will wrap onto the next line.\n */\n wrap?: boolean;\n /**\n * The name to be set on each radio button within the group. If not set, then one will be generated for you.\n */\n name?: string;\n /**\n * Callback for change event.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Set the RadioButton group to read only.\n */\n readOnly?: boolean;\n /**\n * The value of the radio group, required for a controlled component.\n */\n value?: string;\n /**\n * Validation status.\n */\n validationStatus?: \"error\" | \"warning\";\n}\n\nexport const RadioButtonGroup = forwardRef<\n HTMLFieldSetElement,\n RadioButtonGroupProps\n>(function RadioButtonGroup(props, ref) {\n const {\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n children,\n className,\n defaultValue,\n direction = \"vertical\",\n disabled: disabledProp,\n wrap = true,\n name: nameProp,\n onChange,\n readOnly: readOnlyProp,\n value: valueProp,\n validationStatus: validationStatusProp,\n ...rest\n } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-radio-button-group\",\n css: radioButtonGroupCss,\n window: targetWindow,\n });\n\n const {\n a11yProps,\n disabled: formFieldDisabled,\n readOnly: formFieldReadOnly,\n validationStatus: formFieldValidationStatus,\n } = useFormFieldProps();\n\n const disabled = formFieldDisabled || disabledProp;\n const readOnly = formFieldReadOnly || readOnlyProp;\n const validationStatus = formFieldValidationStatus ?? validationStatusProp;\n\n const [value, setStateValue] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n state: \"value\",\n name: \"RadioButtonGroup\",\n });\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n setStateValue(event.target.value);\n onChange?.(event);\n };\n\n const name = useId(nameProp);\n\n return (\n <fieldset\n role=\"radiogroup\"\n aria-readonly={readOnly}\n aria-labelledby={\n clsx(a11yProps?.[\"aria-labelledby\"], ariaLabelledBy) || undefined\n }\n aria-describedby={\n clsx(a11yProps?.[\"aria-describedby\"], ariaDescribedBy) || undefined\n }\n className={clsx(\n withBaseName(),\n withBaseName(direction),\n {\n [withBaseName(\"noWrap\")]: !wrap,\n },\n className\n )}\n data-testid=\"radio-button-group\"\n ref={ref}\n {...rest}\n >\n <RadioGroupContext.Provider\n value={{\n disabled,\n name,\n onChange: handleChange,\n readOnly,\n validationStatus,\n value,\n }}\n >\n {children}\n </RadioGroupContext.Provider>\n </fieldset>\n );\n});\n"],"names":["makePrefixer","forwardRef","RadioButtonGroup","useWindow","useComponentCssInjection","radioButtonGroupCss","useFormFieldProps","useControlled","useId","jsx","clsx","RadioGroupContext"],"mappings":"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"}
@@ -10,9 +10,87 @@ require('../utils/useId.js');
10
10
  require('../salt-provider/SaltProvider.js');
11
11
  require('../viewport/ViewportProvider.js');
12
12
  var clsx = require('clsx');
13
+ require('../accordion/AccordionGroup.js');
14
+ require('../accordion/AccordionPanel.js');
15
+ require('../accordion/Accordion.js');
16
+ require('../accordion/AccordionHeader.js');
17
+ require('../aria-announcer/AriaAnnouncerContext.js');
18
+ require('../avatar/Avatar.js');
19
+ require('../badge/Badge.js');
20
+ require('../banner/Banner.js');
21
+ require('../banner/BannerActions.js');
22
+ require('../banner/BannerContent.js');
23
+ require('../border-item/BorderItem.js');
24
+ require('../border-layout/BorderLayout.js');
25
+ require('../button/Button.js');
26
+ require('../card/Card.js');
27
+ require('../card/InteractableCard.js');
28
+ require('../checkbox/Checkbox.js');
29
+ require('../checkbox/CheckboxGroup.js');
13
30
  var styles = require('@salt-ds/styles');
14
31
  var window = require('@salt-ds/window');
32
+ require('@salt-ds/icons');
33
+ require('../combo-box/ComboBox.js');
34
+ require('../dialog/Dialog.js');
35
+ require('../dialog/DialogHeader.js');
36
+ require('../dialog/DialogActions.js');
37
+ require('../dialog/DialogContent.js');
38
+ require('../dialog/DialogContext.js');
39
+ require('../dialog/DialogCloseButton.js');
40
+ require('../drawer/Drawer.js');
41
+ require('../drawer/DrawerCloseButton.js');
42
+ require('../dropdown/Dropdown.js');
43
+ require('../file-drop-zone/FileDropZone.js');
44
+ require('../file-drop-zone/FileDropZoneIcon.js');
45
+ require('../file-drop-zone/FileDropZoneTrigger.js');
46
+ require('../flex-item/FlexItem.js');
47
+ require('../flex-layout/FlexLayout.js');
48
+ require('../flow-layout/FlowLayout.js');
49
+ require('../form-field/FormField.js');
50
+ require('../status-indicator/StatusIndicator.js');
51
+ require('../text/Text.js');
52
+ require('../text/Code.js');
53
+ require('../text/Display.js');
54
+ require('../text/Headings.js');
55
+ require('../text/Label.js');
56
+ require('../text/TextAction.js');
57
+ require('../text/TextNotation.js');
58
+ require('../form-field-context/FormFieldContext.js');
59
+ require('../grid-item/GridItem.js');
60
+ require('../grid-layout/GridLayout.js');
61
+ require('../input/Input.js');
62
+ require('../link/Link.js');
63
+ require('../link-card/LinkCard.js');
64
+ require('../list-control/ListControlContext.js');
65
+ require('../multiline-input/MultilineInput.js');
66
+ require('../navigation-item/NavigationItem.js');
67
+ require('../option/Option.js');
68
+ require('../option/OptionGroup.js');
69
+ require('../pagination/Pagination.js');
70
+ require('../pagination/Paginator.js');
71
+ require('../pagination/CompactInput.js');
72
+ require('../pagination/CompactPaginator.js');
73
+ require('../pagination/GoToInput.js');
74
+ require('../panel/Panel.js');
75
+ require('../pill/Pill.js');
76
+ require('../progress/CircularProgress/CircularProgress.js');
77
+ require('../progress/LinearProgress/LinearProgress.js');
78
+ require('./RadioButton.js');
79
+ require('./RadioButtonGroup.js');
15
80
  var RadioButtonIcon$1 = require('./RadioButtonIcon.css.js');
81
+ require('../scrim/Scrim.js');
82
+ require('../spinner/Spinner.js');
83
+ require('../stack-layout/StackLayout.js');
84
+ require('../status-adornment/StatusAdornment.js');
85
+ require('../toast/Toast.js');
86
+ require('../toast/ToastContent.js');
87
+ require('../split-layout/SplitLayout.js');
88
+ require('../switch/Switch.js');
89
+ require('../toggle-button/ToggleButton.js');
90
+ require('../toggle-button-group/ToggleButtonGroup.js');
91
+ require('../toggle-button-group/ToggleButtonGroupContext.js');
92
+ require('../tooltip/Tooltip.js');
93
+ require('@floating-ui/react');
16
94
 
17
95
  const withBaseName = makePrefixer.makePrefixer("saltRadioButtonIcon");
18
96
  const RadioButtonIcon = ({
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButtonIcon.js","sources":["../src/radio-button/RadioButtonIcon.tsx"],"sourcesContent":["import { makePrefixer } from \"../utils\";\nimport { clsx } from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { AdornmentValidationStatus } from \"../status-adornment\";\nimport radioButtonIconCss from \"./RadioButtonIcon.css\";\nimport { ComponentPropsWithoutRef } from \"react\";\n\nconst withBaseName = makePrefixer(\"saltRadioButtonIcon\");\n\nexport interface RadioButtonIconProps extends ComponentPropsWithoutRef<\"div\"> {\n checked?: boolean;\n disabled?: boolean;\n /**\n * @deprecated Use validationStatus instead\n */\n error?: boolean;\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\n/**\n * Default radio icon\n */\nexport const RadioButtonIcon = ({\n checked,\n className,\n error,\n disabled,\n validationStatus,\n readOnly,\n ...rest\n}: RadioButtonIconProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-radio-button-icon\",\n css: radioButtonIconCss,\n window: targetWindow,\n });\n return (\n <div\n aria-hidden=\"true\"\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"checked\")]: checked,\n [withBaseName(\"error\")]: error,\n [withBaseName(\"disabled\")]: disabled,\n [withBaseName(validationStatus || \"\")]: validationStatus,\n [withBaseName(\"readOnly\")]: readOnly,\n },\n className\n )}\n {...rest}\n >\n {checked && !readOnly && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 12 12\"\n fill=\"currentColor\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M0 6a6 6 0 1 1 12 0A6 6 0 0 1 0 6Zm6 3a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n )}\n {checked && readOnly && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 12 12\"\n >\n <path\n fill=\"#161616\"\n d=\"M9.5 6a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z\"\n />\n </svg>\n )}\n </div>\n );\n};\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","radioButtonIconCss","jsxs","clsx","jsx"],"mappings":";;;;;;;;;;;;;;;;AAQA,MAAM,YAAA,GAAeA,0BAAa,qBAAqB,CAAA,CAAA;AAgBhD,MAAM,kBAAkB,CAAC;AAAA,EAC9B,OAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,gBAAA;AAAA,EACA,QAAA;AAAA,EACG,GAAA,IAAA;AACL,CAA4B,KAAA;AAC1B,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,wBAAA;AAAA,IACR,GAAK,EAAAC,iBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AACD,EAAA,uBACGC,eAAA,CAAA,KAAA,EAAA;AAAA,IACC,aAAY,EAAA,MAAA;AAAA,IACZ,SAAW,EAAAC,SAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb;AAAA,QACE,CAAC,YAAa,CAAA,SAAS,CAAI,GAAA,OAAA;AAAA,QAC3B,CAAC,YAAa,CAAA,OAAO,CAAI,GAAA,KAAA;AAAA,QACzB,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,QAAA;AAAA,QAC5B,CAAC,YAAA,CAAa,gBAAoB,IAAA,EAAE,CAAI,GAAA,gBAAA;AAAA,QACxC,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,QAAA;AAAA,OAC9B;AAAA,MACA,SAAA;AAAA,KACF;AAAA,IACC,GAAG,IAAA;AAAA,IAEH,QAAA,EAAA;AAAA,MAAW,OAAA,IAAA,CAAC,4BACVC,cAAA,CAAA,KAAA,EAAA;AAAA,QACC,KAAM,EAAA,4BAAA;AAAA,QACN,OAAQ,EAAA,WAAA;AAAA,QACR,IAAK,EAAA,cAAA;AAAA,QAEL,QAAC,kBAAAA,cAAA,CAAA,MAAA,EAAA;AAAA,UACC,QAAS,EAAA,SAAA;AAAA,UACT,CAAE,EAAA,qEAAA;AAAA,UACF,QAAS,EAAA,SAAA;AAAA,SACX,CAAA;AAAA,OACF,CAAA;AAAA,MAED,OAAA,IAAW,4BACTA,cAAA,CAAA,KAAA,EAAA;AAAA,QACC,KAAM,EAAA,4BAAA;AAAA,QACN,IAAK,EAAA,cAAA;AAAA,QACL,OAAQ,EAAA,WAAA;AAAA,QAER,QAAC,kBAAAA,cAAA,CAAA,MAAA,EAAA;AAAA,UACC,IAAK,EAAA,SAAA;AAAA,UACL,CAAE,EAAA,6CAAA;AAAA,SACJ,CAAA;AAAA,OACF,CAAA;AAAA,KAAA;AAAA,GAEJ,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"RadioButtonIcon.js","sources":["../src/radio-button/RadioButtonIcon.tsx"],"sourcesContent":["import { makePrefixer } from \"../utils\";\nimport { clsx } from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { AdornmentValidationStatus } from \"../status-adornment\";\nimport radioButtonIconCss from \"./RadioButtonIcon.css\";\nimport { ComponentPropsWithoutRef } from \"react\";\n\nconst withBaseName = makePrefixer(\"saltRadioButtonIcon\");\n\nexport interface RadioButtonIconProps extends ComponentPropsWithoutRef<\"div\"> {\n checked?: boolean;\n disabled?: boolean;\n /**\n * @deprecated Use validationStatus instead\n */\n error?: boolean;\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\n/**\n * Default radio icon\n */\nexport const RadioButtonIcon = ({\n checked,\n className,\n error,\n disabled,\n validationStatus,\n readOnly,\n ...rest\n}: RadioButtonIconProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-radio-button-icon\",\n css: radioButtonIconCss,\n window: targetWindow,\n });\n return (\n <div\n aria-hidden=\"true\"\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"checked\")]: checked,\n [withBaseName(\"error\")]: error,\n [withBaseName(\"disabled\")]: disabled,\n [withBaseName(validationStatus || \"\")]: validationStatus,\n [withBaseName(\"readOnly\")]: readOnly,\n },\n className\n )}\n {...rest}\n >\n {checked && !readOnly && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 12 12\"\n fill=\"currentColor\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M0 6a6 6 0 1 1 12 0A6 6 0 0 1 0 6Zm6 3a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n )}\n {checked && readOnly && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 12 12\"\n >\n <path\n fill=\"#161616\"\n d=\"M9.5 6a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z\"\n />\n </svg>\n )}\n </div>\n );\n};\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","radioButtonIconCss","jsxs","clsx","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM,YAAA,GAAeA,0BAAa,qBAAqB,CAAA,CAAA;AAgBhD,MAAM,kBAAkB,CAAC;AAAA,EAC9B,OAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,gBAAA;AAAA,EACA,QAAA;AAAA,EACG,GAAA,IAAA;AACL,CAA4B,KAAA;AAC1B,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,wBAAA;AAAA,IACR,GAAK,EAAAC,iBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AACD,EAAA,uBACGC,eAAA,CAAA,KAAA,EAAA;AAAA,IACC,aAAY,EAAA,MAAA;AAAA,IACZ,SAAW,EAAAC,SAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb;AAAA,QACE,CAAC,YAAa,CAAA,SAAS,CAAI,GAAA,OAAA;AAAA,QAC3B,CAAC,YAAa,CAAA,OAAO,CAAI,GAAA,KAAA;AAAA,QACzB,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,QAAA;AAAA,QAC5B,CAAC,YAAA,CAAa,gBAAoB,IAAA,EAAE,CAAI,GAAA,gBAAA;AAAA,QACxC,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,QAAA;AAAA,OAC9B;AAAA,MACA,SAAA;AAAA,KACF;AAAA,IACC,GAAG,IAAA;AAAA,IAEH,QAAA,EAAA;AAAA,MAAW,OAAA,IAAA,CAAC,4BACVC,cAAA,CAAA,KAAA,EAAA;AAAA,QACC,KAAM,EAAA,4BAAA;AAAA,QACN,OAAQ,EAAA,WAAA;AAAA,QACR,IAAK,EAAA,cAAA;AAAA,QAEL,QAAC,kBAAAA,cAAA,CAAA,MAAA,EAAA;AAAA,UACC,QAAS,EAAA,SAAA;AAAA,UACT,CAAE,EAAA,qEAAA;AAAA,UACF,QAAS,EAAA,SAAA;AAAA,SACX,CAAA;AAAA,OACF,CAAA;AAAA,MAED,OAAA,IAAW,4BACTA,cAAA,CAAA,KAAA,EAAA;AAAA,QACC,KAAM,EAAA,4BAAA;AAAA,QACN,IAAK,EAAA,cAAA;AAAA,QACL,OAAQ,EAAA,WAAA;AAAA,QAER,QAAC,kBAAAA,cAAA,CAAA,MAAA,EAAA;AAAA,UACC,IAAK,EAAA,SAAA;AAAA,UACL,CAAE,EAAA,6CAAA;AAAA,SACJ,CAAA;AAAA,OACF,CAAA;AAAA,KAAA;AAAA,GAEJ,CAAA,CAAA;AAEJ;;;;"}
@@ -9,6 +9,87 @@ require('../../utils/useId.js');
9
9
  require('../../salt-provider/SaltProvider.js');
10
10
  require('../../viewport/ViewportProvider.js');
11
11
  require('clsx');
12
+ require('../../accordion/AccordionGroup.js');
13
+ require('../../accordion/AccordionPanel.js');
14
+ require('../../accordion/Accordion.js');
15
+ require('../../accordion/AccordionHeader.js');
16
+ require('../../aria-announcer/AriaAnnouncerContext.js');
17
+ require('react/jsx-runtime');
18
+ require('../../avatar/Avatar.js');
19
+ require('../../badge/Badge.js');
20
+ require('../../banner/Banner.js');
21
+ require('../../banner/BannerActions.js');
22
+ require('../../banner/BannerContent.js');
23
+ require('../../border-item/BorderItem.js');
24
+ require('../../border-layout/BorderLayout.js');
25
+ require('../../button/Button.js');
26
+ require('../../card/Card.js');
27
+ require('../../card/InteractableCard.js');
28
+ require('../../checkbox/Checkbox.js');
29
+ require('../../checkbox/CheckboxGroup.js');
30
+ require('@salt-ds/styles');
31
+ require('@salt-ds/window');
32
+ require('@salt-ds/icons');
33
+ require('../../combo-box/ComboBox.js');
34
+ require('../../dialog/Dialog.js');
35
+ require('../../dialog/DialogHeader.js');
36
+ require('../../dialog/DialogActions.js');
37
+ require('../../dialog/DialogContent.js');
38
+ require('../../dialog/DialogContext.js');
39
+ require('../../dialog/DialogCloseButton.js');
40
+ require('../../drawer/Drawer.js');
41
+ require('../../drawer/DrawerCloseButton.js');
42
+ require('../../dropdown/Dropdown.js');
43
+ require('../../file-drop-zone/FileDropZone.js');
44
+ require('../../file-drop-zone/FileDropZoneIcon.js');
45
+ require('../../file-drop-zone/FileDropZoneTrigger.js');
46
+ require('../../flex-item/FlexItem.js');
47
+ require('../../flex-layout/FlexLayout.js');
48
+ require('../../flow-layout/FlowLayout.js');
49
+ require('../../form-field/FormField.js');
50
+ require('../../status-indicator/StatusIndicator.js');
51
+ require('../../text/Text.js');
52
+ require('../../text/Code.js');
53
+ require('../../text/Display.js');
54
+ require('../../text/Headings.js');
55
+ require('../../text/Label.js');
56
+ require('../../text/TextAction.js');
57
+ require('../../text/TextNotation.js');
58
+ require('../../form-field-context/FormFieldContext.js');
59
+ require('../../grid-item/GridItem.js');
60
+ require('../../grid-layout/GridLayout.js');
61
+ require('../../input/Input.js');
62
+ require('../../link/Link.js');
63
+ require('../../link-card/LinkCard.js');
64
+ require('../../list-control/ListControlContext.js');
65
+ require('../../multiline-input/MultilineInput.js');
66
+ require('../../navigation-item/NavigationItem.js');
67
+ require('../../option/Option.js');
68
+ require('../../option/OptionGroup.js');
69
+ require('../../pagination/Pagination.js');
70
+ require('../../pagination/Paginator.js');
71
+ require('../../pagination/CompactInput.js');
72
+ require('../../pagination/CompactPaginator.js');
73
+ require('../../pagination/GoToInput.js');
74
+ require('../../panel/Panel.js');
75
+ require('../../pill/Pill.js');
76
+ require('../../progress/CircularProgress/CircularProgress.js');
77
+ require('../../progress/LinearProgress/LinearProgress.js');
78
+ require('../RadioButton.js');
79
+ require('../RadioButtonGroup.js');
80
+ require('../../scrim/Scrim.js');
81
+ require('../../spinner/Spinner.js');
82
+ require('../../stack-layout/StackLayout.js');
83
+ require('../../status-adornment/StatusAdornment.js');
84
+ require('../../toast/Toast.js');
85
+ require('../../toast/ToastContent.js');
86
+ require('../../split-layout/SplitLayout.js');
87
+ require('../../switch/Switch.js');
88
+ require('../../toggle-button/ToggleButton.js');
89
+ require('../../toggle-button-group/ToggleButtonGroup.js');
90
+ require('../../toggle-button-group/ToggleButtonGroupContext.js');
91
+ require('../../tooltip/Tooltip.js');
92
+ require('@floating-ui/react');
12
93
 
13
94
  const RadioGroupContext = createContext.createContext("RadioGroupContext", void 0);
14
95
 
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroupContext.js","sources":["../src/radio-button/internal/RadioGroupContext.tsx"],"sourcesContent":["import { ChangeEventHandler } from \"react\";\nimport { AdornmentValidationStatus } from \"../../status-adornment\";\nimport { createContext } from \"../../utils\";\n\nexport interface RadioGroupContextValue {\n disabled?: boolean;\n name?: string;\n value?: string;\n onChange?: ChangeEventHandler<HTMLElement>;\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\nexport const RadioGroupContext = createContext<\n RadioGroupContextValue | undefined\n>(\"RadioGroupContext\", undefined);\n"],"names":["createContext"],"mappings":";;;;;;;;;;;;AAaa,MAAA,iBAAA,GAAoBA,2BAE/B,CAAA,mBAAA,EAAqB,KAAS,CAAA;;;;"}
1
+ {"version":3,"file":"RadioGroupContext.js","sources":["../src/radio-button/internal/RadioGroupContext.tsx"],"sourcesContent":["import { ChangeEventHandler } from \"react\";\nimport { AdornmentValidationStatus } from \"../../status-adornment\";\nimport { createContext } from \"../../utils\";\n\nexport interface RadioGroupContextValue {\n disabled?: boolean;\n name?: string;\n value?: string;\n onChange?: ChangeEventHandler<HTMLElement>;\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\nexport const RadioGroupContext = createContext<\n RadioGroupContextValue | undefined\n>(\"RadioGroupContext\", undefined);\n"],"names":["createContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaa,MAAA,iBAAA,GAAoBA,2BAE/B,CAAA,mBAAA,EAAqB,KAAS,CAAA;;;;"}
@@ -10,11 +10,88 @@ require('../utils/useFloatingUI/useFloatingUI.js');
10
10
  require('../utils/useId.js');
11
11
  var useIsomorphicLayoutEffect = require('../utils/useIsomorphicLayoutEffect.js');
12
12
  var ViewportProvider = require('../viewport/ViewportProvider.js');
13
- var AriaAnnouncerProvider = require('../aria-announcer/AriaAnnouncerProvider.js');
13
+ require('../accordion/AccordionGroup.js');
14
+ require('../accordion/AccordionPanel.js');
15
+ require('../accordion/Accordion.js');
16
+ require('../accordion/AccordionHeader.js');
17
+ require('../avatar/Avatar.js');
18
+ require('../badge/Badge.js');
19
+ require('../banner/Banner.js');
20
+ require('../banner/BannerActions.js');
21
+ require('../banner/BannerContent.js');
22
+ require('../border-item/BorderItem.js');
23
+ require('../border-layout/BorderLayout.js');
14
24
  var Breakpoints = require('../breakpoints/Breakpoints.js');
15
- var SaltProvider$1 = require('./SaltProvider.css.js');
16
- var window = require('@salt-ds/window');
25
+ require('../button/Button.js');
26
+ require('../card/Card.js');
27
+ require('../card/InteractableCard.js');
28
+ require('../checkbox/Checkbox.js');
29
+ require('../checkbox/CheckboxGroup.js');
17
30
  var styles = require('@salt-ds/styles');
31
+ var window = require('@salt-ds/window');
32
+ require('@salt-ds/icons');
33
+ require('../combo-box/ComboBox.js');
34
+ require('../dialog/Dialog.js');
35
+ require('../dialog/DialogHeader.js');
36
+ require('../dialog/DialogActions.js');
37
+ require('../dialog/DialogContent.js');
38
+ require('../dialog/DialogContext.js');
39
+ require('../dialog/DialogCloseButton.js');
40
+ require('../drawer/Drawer.js');
41
+ require('../drawer/DrawerCloseButton.js');
42
+ require('../dropdown/Dropdown.js');
43
+ require('../file-drop-zone/FileDropZone.js');
44
+ require('../file-drop-zone/FileDropZoneIcon.js');
45
+ require('../file-drop-zone/FileDropZoneTrigger.js');
46
+ require('../flex-item/FlexItem.js');
47
+ require('../flex-layout/FlexLayout.js');
48
+ require('../flow-layout/FlowLayout.js');
49
+ require('../form-field/FormField.js');
50
+ require('../status-indicator/StatusIndicator.js');
51
+ require('../text/Text.js');
52
+ require('../text/Code.js');
53
+ require('../text/Display.js');
54
+ require('../text/Headings.js');
55
+ require('../text/Label.js');
56
+ require('../text/TextAction.js');
57
+ require('../text/TextNotation.js');
58
+ require('../form-field-context/FormFieldContext.js');
59
+ require('../grid-item/GridItem.js');
60
+ require('../grid-layout/GridLayout.js');
61
+ require('../input/Input.js');
62
+ require('../link/Link.js');
63
+ require('../link-card/LinkCard.js');
64
+ require('../list-control/ListControlContext.js');
65
+ require('../multiline-input/MultilineInput.js');
66
+ require('../navigation-item/NavigationItem.js');
67
+ require('../option/Option.js');
68
+ require('../option/OptionGroup.js');
69
+ require('../pagination/Pagination.js');
70
+ require('../pagination/Paginator.js');
71
+ require('../pagination/CompactInput.js');
72
+ require('../pagination/CompactPaginator.js');
73
+ require('../pagination/GoToInput.js');
74
+ require('../panel/Panel.js');
75
+ require('../pill/Pill.js');
76
+ require('../progress/CircularProgress/CircularProgress.js');
77
+ require('../progress/LinearProgress/LinearProgress.js');
78
+ require('../radio-button/RadioButton.js');
79
+ require('../radio-button/RadioButtonGroup.js');
80
+ require('../scrim/Scrim.js');
81
+ require('../spinner/Spinner.js');
82
+ require('../stack-layout/StackLayout.js');
83
+ require('../status-adornment/StatusAdornment.js');
84
+ require('../toast/Toast.js');
85
+ require('../toast/ToastContent.js');
86
+ require('../split-layout/SplitLayout.js');
87
+ require('../switch/Switch.js');
88
+ require('../toggle-button/ToggleButton.js');
89
+ require('../toggle-button-group/ToggleButtonGroup.js');
90
+ require('../toggle-button-group/ToggleButtonGroupContext.js');
91
+ require('../tooltip/Tooltip.js');
92
+ require('@floating-ui/react');
93
+ var AriaAnnouncerProvider = require('../aria-announcer/AriaAnnouncerProvider.js');
94
+ var SaltProvider$1 = require('./SaltProvider.css.js');
18
95
 
19
96
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
97
 
@@ -1 +1 @@
1
- {"version":3,"file":"SaltProvider.js","sources":["../src/salt-provider/SaltProvider.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport React, {\n createContext,\n HTMLAttributes,\n ReactElement,\n ReactNode,\n useContext,\n useMemo,\n} from \"react\";\nimport { AriaAnnouncerProvider } from \"../aria-announcer\";\nimport { Breakpoints, DEFAULT_BREAKPOINTS } from \"../breakpoints\";\nimport { Density, Mode, ThemeName } from \"../theme\";\nimport { ViewportProvider } from \"../viewport\";\nimport { useIsomorphicLayoutEffect } from \"../utils\";\n\nimport saltProviderCss from \"./SaltProvider.css\";\nimport { useWindow, WindowContextType } from \"@salt-ds/window\";\nimport {\n useComponentCssInjection,\n StyleInjectionProvider,\n} from \"@salt-ds/styles\";\nimport { UNSTABLE_Corner } from \"../theme/Corner\";\n\nexport const DEFAULT_DENSITY = \"medium\";\n\nconst DEFAULT_THEME_NAME = \"salt-theme\";\nconst UNSTABLE_ADDITIONAL_THEME_NAME = \"salt-theme-next\";\n\nconst DEFAULT_MODE = \"light\";\nconst DEFAULT_CORNER: UNSTABLE_Corner = \"sharp\";\nexport interface ThemeContextProps {\n theme: ThemeName;\n mode: Mode;\n window?: WindowContextType;\n /** Only available when using SaltProviderNext. */\n themeNext: boolean;\n UNSTABLE_corner: UNSTABLE_Corner;\n}\n\nexport const DensityContext = createContext<Density>(DEFAULT_DENSITY);\n\nexport const ThemeContext = createContext<ThemeContextProps>({\n theme: \"\",\n mode: DEFAULT_MODE,\n themeNext: false,\n UNSTABLE_corner: DEFAULT_CORNER,\n});\n\nexport const BreakpointContext =\n createContext<Breakpoints>(DEFAULT_BREAKPOINTS);\n\n/**\n * We're relying `DEFAULT_THEME_NAME` to determine whether the provider is a root.\n */\nconst getThemeNames = (themeName: ThemeName, themeNext?: boolean) => {\n if (themeNext) {\n return themeName === DEFAULT_THEME_NAME\n ? [DEFAULT_THEME_NAME, UNSTABLE_ADDITIONAL_THEME_NAME]\n : [DEFAULT_THEME_NAME, UNSTABLE_ADDITIONAL_THEME_NAME, themeName];\n } else {\n {\n return themeName === DEFAULT_THEME_NAME\n ? [DEFAULT_THEME_NAME]\n : [DEFAULT_THEME_NAME, themeName];\n }\n }\n};\n\ninterface ThemeNextProps {\n themeNext?: boolean;\n}\n\nconst createThemedChildren = ({\n children,\n themeName,\n density,\n mode,\n applyClassesTo,\n themeNext,\n corner,\n}: {\n children: ReactNode;\n themeName: ThemeName;\n density: Density;\n mode: Mode;\n applyClassesTo?: TargetElement;\n} & ThemeNextProps &\n UNSTABLE_SaltProviderNextAdditionalProps) => {\n const themeNames = getThemeNames(themeName, themeNext);\n const themeNextProps = {\n \"data-corner\": corner,\n };\n if (applyClassesTo === \"root\") {\n return children;\n } else if (applyClassesTo === \"child\") {\n if (React.isValidElement<HTMLAttributes<HTMLElement>>(children)) {\n return React.cloneElement(children, {\n className: clsx(\n children.props?.className,\n ...themeNames,\n `salt-density-${density}`\n ),\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n \"data-mode\": mode,\n ...(themeNext ? themeNextProps : {}),\n });\n } else {\n console.warn(\n `\\nSaltProvider can only apply CSS classes for theming to a single nested child element of the SaltProvider.\n Either wrap elements with a single container or consider removing the applyClassesToChild prop, in which case a\n div element will wrap your child elements`\n );\n return children;\n }\n } else {\n return (\n <div\n className={clsx(\n `salt-provider`,\n ...themeNames,\n `salt-density-${density}`\n )}\n data-mode={mode}\n {...(themeNext ? themeNextProps : {})}\n >\n {children}\n </div>\n );\n }\n};\n\ntype TargetElement = \"root\" | \"scope\" | \"child\";\n\ninterface SaltProviderBaseProps {\n applyClassesTo?: TargetElement;\n density?: Density;\n theme?: ThemeName;\n mode?: Mode;\n breakpoints?: Breakpoints;\n enableStyleInjection?: boolean;\n}\n\ninterface SaltProviderThatAppliesClassesToChild extends SaltProviderBaseProps {\n children: ReactElement;\n applyClassesTo: \"child\";\n}\n\ninterface SaltProviderThatInjectsThemeElement extends SaltProviderBaseProps {\n children: ReactNode;\n}\n\ninterface SaltProviderThatClassesToRoot\n extends SaltProviderThatInjectsThemeElement {\n applyClassesTo: \"root\";\n}\n\ntype SaltProviderProps =\n | SaltProviderThatAppliesClassesToChild\n | SaltProviderThatInjectsThemeElement\n | SaltProviderThatClassesToRoot;\n\nfunction InternalSaltProvider({\n applyClassesTo: applyClassesToProp,\n children,\n density: densityProp,\n theme: themeProp,\n mode: modeProp,\n breakpoints: breakpointsProp,\n themeNext,\n corner: cornerProp,\n}: Omit<\n SaltProviderProps & ThemeNextProps & UNSTABLE_SaltProviderNextProps,\n \"enableStyleInjection\"\n>) {\n const inheritedDensity = useContext(DensityContext);\n const {\n theme: inheritedTheme,\n mode: inheritedMode,\n window: inheritedWindow,\n UNSTABLE_corner: inheritedCorner,\n } = useContext(ThemeContext);\n\n const isRootProvider = inheritedTheme === undefined || inheritedTheme === \"\";\n const density = densityProp ?? inheritedDensity ?? DEFAULT_DENSITY;\n const themeName =\n themeProp ?? (inheritedTheme === \"\" ? DEFAULT_THEME_NAME : inheritedTheme);\n const mode = modeProp ?? inheritedMode;\n const breakpoints = breakpointsProp ?? DEFAULT_BREAKPOINTS;\n const corner = cornerProp ?? inheritedCorner ?? DEFAULT_CORNER;\n\n const applyClassesTo =\n applyClassesToProp ?? (isRootProvider ? \"root\" : \"scope\");\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-provider\",\n css: saltProviderCss,\n window: targetWindow,\n });\n\n const themeContextValue = useMemo(\n () => ({\n theme: themeName,\n mode,\n window: targetWindow,\n themeNext: Boolean(themeNext),\n UNSTABLE_corner: corner,\n }),\n [themeName, mode, targetWindow, themeNext, corner]\n );\n\n const themedChildren = createThemedChildren({\n children,\n themeName,\n density,\n mode,\n applyClassesTo,\n themeNext,\n corner: corner,\n });\n\n useIsomorphicLayoutEffect(() => {\n const themeNames = getThemeNames(themeName, themeNext);\n\n if (applyClassesTo === \"root\" && targetWindow) {\n if (inheritedWindow != targetWindow) {\n // add the styles we want to apply\n targetWindow.document.documentElement.classList.add(\n ...themeNames,\n `salt-density-${density}`\n );\n targetWindow.document.documentElement.dataset.mode = mode;\n if (themeNext) {\n targetWindow.document.documentElement.dataset.corner = corner;\n }\n } else {\n console.warn(\n \"SaltProvider can only apply CSS classes to the root if it is the root level SaltProvider.\"\n );\n }\n }\n return () => {\n if (applyClassesTo === \"root\" && targetWindow) {\n // When unmounting/remounting, remove the applied styles from the root\n targetWindow.document.documentElement.classList.remove(\n ...themeNames,\n `salt-density-${density}`\n );\n targetWindow.document.documentElement.dataset.mode = undefined;\n if (themeNext) {\n delete targetWindow.document.documentElement.dataset.corner;\n }\n }\n };\n }, [\n applyClassesTo,\n density,\n mode,\n themeName,\n targetWindow,\n inheritedWindow,\n themeNext,\n corner,\n ]);\n\n const saltProvider = (\n <DensityContext.Provider value={density}>\n <ThemeContext.Provider value={themeContextValue}>\n <BreakpointContext.Provider value={breakpoints}>\n <ViewportProvider>{themedChildren}</ViewportProvider>\n </BreakpointContext.Provider>\n </ThemeContext.Provider>\n </DensityContext.Provider>\n );\n\n if (isRootProvider) {\n return <AriaAnnouncerProvider>{saltProvider}</AriaAnnouncerProvider>;\n } else {\n return saltProvider;\n }\n}\n\nexport function SaltProvider({\n enableStyleInjection,\n ...restProps\n}: SaltProviderProps) {\n return (\n <StyleInjectionProvider value={enableStyleInjection}>\n <InternalSaltProvider {...restProps} />\n </StyleInjectionProvider>\n );\n}\n\ninterface UNSTABLE_SaltProviderNextAdditionalProps {\n corner?: UNSTABLE_Corner;\n}\n\nexport type UNSTABLE_SaltProviderNextProps = SaltProviderProps &\n UNSTABLE_SaltProviderNextAdditionalProps;\n\nexport function UNSTABLE_SaltProviderNext({\n enableStyleInjection,\n ...restProps\n}: UNSTABLE_SaltProviderNextProps) {\n return (\n <StyleInjectionProvider value={enableStyleInjection}>\n {/* Leveraging InternalSaltProvider being not exported, so we can pass more props than previously supported */}\n <InternalSaltProvider {...restProps} themeNext={true} />\n </StyleInjectionProvider>\n );\n}\n\nexport const useTheme = (): ThemeContextProps => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { window, ...contextWithoutWindow } = useContext(ThemeContext);\n\n return contextWithoutWindow;\n};\n\n/**\n * `useDensity` merges density value from `DensityContext` with the one from component's props.\n */\nexport function useDensity(density?: Density): Density {\n const densityFromContext = useContext(DensityContext);\n return density ?? densityFromContext ?? DEFAULT_DENSITY;\n}\n\nexport const useBreakpoints = (): Breakpoints => {\n return useContext(BreakpointContext);\n};\n"],"names":["createContext","DEFAULT_BREAKPOINTS","React","clsx","jsx","useContext","useWindow","useComponentCssInjection","saltProviderCss","useMemo","useIsomorphicLayoutEffect","ViewportProvider","AriaAnnouncerProvider","StyleInjectionProvider"],"mappings":"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"}
1
+ {"version":3,"file":"SaltProvider.js","sources":["../src/salt-provider/SaltProvider.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport React, {\n createContext,\n HTMLAttributes,\n ReactElement,\n ReactNode,\n useContext,\n useMemo,\n} from \"react\";\nimport { AriaAnnouncerProvider } from \"../aria-announcer\";\nimport { Breakpoints, DEFAULT_BREAKPOINTS } from \"../breakpoints\";\nimport { Density, Mode, ThemeName } from \"../theme\";\nimport { ViewportProvider } from \"../viewport\";\nimport { useIsomorphicLayoutEffect } from \"../utils\";\n\nimport saltProviderCss from \"./SaltProvider.css\";\nimport { useWindow, WindowContextType } from \"@salt-ds/window\";\nimport {\n useComponentCssInjection,\n StyleInjectionProvider,\n} from \"@salt-ds/styles\";\nimport { UNSTABLE_Corner } from \"../theme/Corner\";\n\nexport const DEFAULT_DENSITY = \"medium\";\n\nconst DEFAULT_THEME_NAME = \"salt-theme\";\nconst UNSTABLE_ADDITIONAL_THEME_NAME = \"salt-theme-next\";\n\nconst DEFAULT_MODE = \"light\";\nconst DEFAULT_CORNER: UNSTABLE_Corner = \"sharp\";\nexport interface ThemeContextProps {\n theme: ThemeName;\n mode: Mode;\n window?: WindowContextType;\n /** Only available when using SaltProviderNext. */\n themeNext: boolean;\n UNSTABLE_corner: UNSTABLE_Corner;\n}\n\nexport const DensityContext = createContext<Density>(DEFAULT_DENSITY);\n\nexport const ThemeContext = createContext<ThemeContextProps>({\n theme: \"\",\n mode: DEFAULT_MODE,\n themeNext: false,\n UNSTABLE_corner: DEFAULT_CORNER,\n});\n\nexport const BreakpointContext =\n createContext<Breakpoints>(DEFAULT_BREAKPOINTS);\n\n/**\n * We're relying `DEFAULT_THEME_NAME` to determine whether the provider is a root.\n */\nconst getThemeNames = (themeName: ThemeName, themeNext?: boolean) => {\n if (themeNext) {\n return themeName === DEFAULT_THEME_NAME\n ? [DEFAULT_THEME_NAME, UNSTABLE_ADDITIONAL_THEME_NAME]\n : [DEFAULT_THEME_NAME, UNSTABLE_ADDITIONAL_THEME_NAME, themeName];\n } else {\n {\n return themeName === DEFAULT_THEME_NAME\n ? [DEFAULT_THEME_NAME]\n : [DEFAULT_THEME_NAME, themeName];\n }\n }\n};\n\ninterface ThemeNextProps {\n themeNext?: boolean;\n}\n\nconst createThemedChildren = ({\n children,\n themeName,\n density,\n mode,\n applyClassesTo,\n themeNext,\n corner,\n}: {\n children: ReactNode;\n themeName: ThemeName;\n density: Density;\n mode: Mode;\n applyClassesTo?: TargetElement;\n} & ThemeNextProps &\n UNSTABLE_SaltProviderNextAdditionalProps) => {\n const themeNames = getThemeNames(themeName, themeNext);\n const themeNextProps = {\n \"data-corner\": corner,\n };\n if (applyClassesTo === \"root\") {\n return children;\n } else if (applyClassesTo === \"child\") {\n if (React.isValidElement<HTMLAttributes<HTMLElement>>(children)) {\n return React.cloneElement(children, {\n className: clsx(\n children.props?.className,\n ...themeNames,\n `salt-density-${density}`\n ),\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n \"data-mode\": mode,\n ...(themeNext ? themeNextProps : {}),\n });\n } else {\n console.warn(\n `\\nSaltProvider can only apply CSS classes for theming to a single nested child element of the SaltProvider.\n Either wrap elements with a single container or consider removing the applyClassesToChild prop, in which case a\n div element will wrap your child elements`\n );\n return children;\n }\n } else {\n return (\n <div\n className={clsx(\n `salt-provider`,\n ...themeNames,\n `salt-density-${density}`\n )}\n data-mode={mode}\n {...(themeNext ? themeNextProps : {})}\n >\n {children}\n </div>\n );\n }\n};\n\ntype TargetElement = \"root\" | \"scope\" | \"child\";\n\ninterface SaltProviderBaseProps {\n applyClassesTo?: TargetElement;\n density?: Density;\n theme?: ThemeName;\n mode?: Mode;\n breakpoints?: Breakpoints;\n enableStyleInjection?: boolean;\n}\n\ninterface SaltProviderThatAppliesClassesToChild extends SaltProviderBaseProps {\n children: ReactElement;\n applyClassesTo: \"child\";\n}\n\ninterface SaltProviderThatInjectsThemeElement extends SaltProviderBaseProps {\n children: ReactNode;\n}\n\ninterface SaltProviderThatClassesToRoot\n extends SaltProviderThatInjectsThemeElement {\n applyClassesTo: \"root\";\n}\n\ntype SaltProviderProps =\n | SaltProviderThatAppliesClassesToChild\n | SaltProviderThatInjectsThemeElement\n | SaltProviderThatClassesToRoot;\n\nfunction InternalSaltProvider({\n applyClassesTo: applyClassesToProp,\n children,\n density: densityProp,\n theme: themeProp,\n mode: modeProp,\n breakpoints: breakpointsProp,\n themeNext,\n corner: cornerProp,\n}: Omit<\n SaltProviderProps & ThemeNextProps & UNSTABLE_SaltProviderNextProps,\n \"enableStyleInjection\"\n>) {\n const inheritedDensity = useContext(DensityContext);\n const {\n theme: inheritedTheme,\n mode: inheritedMode,\n window: inheritedWindow,\n UNSTABLE_corner: inheritedCorner,\n } = useContext(ThemeContext);\n\n const isRootProvider = inheritedTheme === undefined || inheritedTheme === \"\";\n const density = densityProp ?? inheritedDensity ?? DEFAULT_DENSITY;\n const themeName =\n themeProp ?? (inheritedTheme === \"\" ? DEFAULT_THEME_NAME : inheritedTheme);\n const mode = modeProp ?? inheritedMode;\n const breakpoints = breakpointsProp ?? DEFAULT_BREAKPOINTS;\n const corner = cornerProp ?? inheritedCorner ?? DEFAULT_CORNER;\n\n const applyClassesTo =\n applyClassesToProp ?? (isRootProvider ? \"root\" : \"scope\");\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-provider\",\n css: saltProviderCss,\n window: targetWindow,\n });\n\n const themeContextValue = useMemo(\n () => ({\n theme: themeName,\n mode,\n window: targetWindow,\n themeNext: Boolean(themeNext),\n UNSTABLE_corner: corner,\n }),\n [themeName, mode, targetWindow, themeNext, corner]\n );\n\n const themedChildren = createThemedChildren({\n children,\n themeName,\n density,\n mode,\n applyClassesTo,\n themeNext,\n corner: corner,\n });\n\n useIsomorphicLayoutEffect(() => {\n const themeNames = getThemeNames(themeName, themeNext);\n\n if (applyClassesTo === \"root\" && targetWindow) {\n if (inheritedWindow != targetWindow) {\n // add the styles we want to apply\n targetWindow.document.documentElement.classList.add(\n ...themeNames,\n `salt-density-${density}`\n );\n targetWindow.document.documentElement.dataset.mode = mode;\n if (themeNext) {\n targetWindow.document.documentElement.dataset.corner = corner;\n }\n } else {\n console.warn(\n \"SaltProvider can only apply CSS classes to the root if it is the root level SaltProvider.\"\n );\n }\n }\n return () => {\n if (applyClassesTo === \"root\" && targetWindow) {\n // When unmounting/remounting, remove the applied styles from the root\n targetWindow.document.documentElement.classList.remove(\n ...themeNames,\n `salt-density-${density}`\n );\n targetWindow.document.documentElement.dataset.mode = undefined;\n if (themeNext) {\n delete targetWindow.document.documentElement.dataset.corner;\n }\n }\n };\n }, [\n applyClassesTo,\n density,\n mode,\n themeName,\n targetWindow,\n inheritedWindow,\n themeNext,\n corner,\n ]);\n\n const saltProvider = (\n <DensityContext.Provider value={density}>\n <ThemeContext.Provider value={themeContextValue}>\n <BreakpointContext.Provider value={breakpoints}>\n <ViewportProvider>{themedChildren}</ViewportProvider>\n </BreakpointContext.Provider>\n </ThemeContext.Provider>\n </DensityContext.Provider>\n );\n\n if (isRootProvider) {\n return <AriaAnnouncerProvider>{saltProvider}</AriaAnnouncerProvider>;\n } else {\n return saltProvider;\n }\n}\n\nexport function SaltProvider({\n enableStyleInjection,\n ...restProps\n}: SaltProviderProps) {\n return (\n <StyleInjectionProvider value={enableStyleInjection}>\n <InternalSaltProvider {...restProps} />\n </StyleInjectionProvider>\n );\n}\n\ninterface UNSTABLE_SaltProviderNextAdditionalProps {\n corner?: UNSTABLE_Corner;\n}\n\nexport type UNSTABLE_SaltProviderNextProps = SaltProviderProps &\n UNSTABLE_SaltProviderNextAdditionalProps;\n\nexport function UNSTABLE_SaltProviderNext({\n enableStyleInjection,\n ...restProps\n}: UNSTABLE_SaltProviderNextProps) {\n return (\n <StyleInjectionProvider value={enableStyleInjection}>\n {/* Leveraging InternalSaltProvider being not exported, so we can pass more props than previously supported */}\n <InternalSaltProvider {...restProps} themeNext={true} />\n </StyleInjectionProvider>\n );\n}\n\nexport const useTheme = (): ThemeContextProps => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { window, ...contextWithoutWindow } = useContext(ThemeContext);\n\n return contextWithoutWindow;\n};\n\n/**\n * `useDensity` merges density value from `DensityContext` with the one from component's props.\n */\nexport function useDensity(density?: Density): Density {\n const densityFromContext = useContext(DensityContext);\n return density ?? densityFromContext ?? DEFAULT_DENSITY;\n}\n\nexport const useBreakpoints = (): Breakpoints => {\n return useContext(BreakpointContext);\n};\n"],"names":["createContext","DEFAULT_BREAKPOINTS","React","clsx","jsx","useContext","useWindow","useComponentCssInjection","saltProviderCss","useMemo","useIsomorphicLayoutEffect","ViewportProvider","AriaAnnouncerProvider","StyleInjectionProvider"],"mappings":"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"}
@@ -10,8 +10,85 @@ require('../utils/useFloatingUI/useFloatingUI.js');
10
10
  require('../utils/useId.js');
11
11
  require('../salt-provider/SaltProvider.js');
12
12
  require('../viewport/ViewportProvider.js');
13
- var window = require('@salt-ds/window');
13
+ require('../accordion/AccordionGroup.js');
14
+ require('../accordion/AccordionPanel.js');
15
+ require('../accordion/Accordion.js');
16
+ require('../accordion/AccordionHeader.js');
17
+ require('../aria-announcer/AriaAnnouncerContext.js');
18
+ require('../avatar/Avatar.js');
19
+ require('../badge/Badge.js');
20
+ require('../banner/Banner.js');
21
+ require('../banner/BannerActions.js');
22
+ require('../banner/BannerContent.js');
23
+ require('../border-item/BorderItem.js');
24
+ require('../border-layout/BorderLayout.js');
25
+ require('../button/Button.js');
26
+ require('../card/Card.js');
27
+ require('../card/InteractableCard.js');
28
+ require('../checkbox/Checkbox.js');
29
+ require('../checkbox/CheckboxGroup.js');
14
30
  var styles = require('@salt-ds/styles');
31
+ var window = require('@salt-ds/window');
32
+ require('@salt-ds/icons');
33
+ require('../combo-box/ComboBox.js');
34
+ require('../dialog/Dialog.js');
35
+ require('../dialog/DialogHeader.js');
36
+ require('../dialog/DialogActions.js');
37
+ require('../dialog/DialogContent.js');
38
+ require('../dialog/DialogContext.js');
39
+ require('../dialog/DialogCloseButton.js');
40
+ require('../drawer/Drawer.js');
41
+ require('../drawer/DrawerCloseButton.js');
42
+ require('../dropdown/Dropdown.js');
43
+ require('../file-drop-zone/FileDropZone.js');
44
+ require('../file-drop-zone/FileDropZoneIcon.js');
45
+ require('../file-drop-zone/FileDropZoneTrigger.js');
46
+ require('../flex-item/FlexItem.js');
47
+ require('../flex-layout/FlexLayout.js');
48
+ require('../flow-layout/FlowLayout.js');
49
+ require('../form-field/FormField.js');
50
+ require('../status-indicator/StatusIndicator.js');
51
+ require('../text/Text.js');
52
+ require('../text/Code.js');
53
+ require('../text/Display.js');
54
+ require('../text/Headings.js');
55
+ require('../text/Label.js');
56
+ require('../text/TextAction.js');
57
+ require('../text/TextNotation.js');
58
+ require('../form-field-context/FormFieldContext.js');
59
+ require('../grid-item/GridItem.js');
60
+ require('../grid-layout/GridLayout.js');
61
+ require('../input/Input.js');
62
+ require('../link/Link.js');
63
+ require('../link-card/LinkCard.js');
64
+ require('../list-control/ListControlContext.js');
65
+ require('../multiline-input/MultilineInput.js');
66
+ require('../navigation-item/NavigationItem.js');
67
+ require('../option/Option.js');
68
+ require('../option/OptionGroup.js');
69
+ require('../pagination/Pagination.js');
70
+ require('../pagination/Paginator.js');
71
+ require('../pagination/CompactInput.js');
72
+ require('../pagination/CompactPaginator.js');
73
+ require('../pagination/GoToInput.js');
74
+ require('../panel/Panel.js');
75
+ require('../pill/Pill.js');
76
+ require('../progress/CircularProgress/CircularProgress.js');
77
+ require('../progress/LinearProgress/LinearProgress.js');
78
+ require('../radio-button/RadioButton.js');
79
+ require('../radio-button/RadioButtonGroup.js');
80
+ require('../spinner/Spinner.js');
81
+ require('../stack-layout/StackLayout.js');
82
+ require('../status-adornment/StatusAdornment.js');
83
+ require('../toast/Toast.js');
84
+ require('../toast/ToastContent.js');
85
+ require('../split-layout/SplitLayout.js');
86
+ require('../switch/Switch.js');
87
+ require('../toggle-button/ToggleButton.js');
88
+ require('../toggle-button-group/ToggleButtonGroup.js');
89
+ require('../toggle-button-group/ToggleButtonGroupContext.js');
90
+ require('../tooltip/Tooltip.js');
91
+ require('@floating-ui/react');
15
92
  var Scrim$1 = require('./Scrim.css.js');
16
93
 
17
94
  const withBaseName = makePrefixer.makePrefixer("saltScrim");
@@ -1 +1 @@
1
- {"version":3,"file":"Scrim.js","sources":["../src/scrim/Scrim.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport { ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport { makePrefixer } from \"../utils\";\n\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport scrimCss from \"./Scrim.css\";\n\nconst withBaseName = makePrefixer(\"saltScrim\");\n\nexport interface ScrimProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * If `true` the scrim is bound to the document viewport.\n * The default value of this prop is false, and the default behavior is for Scrim to be bound to its parent container (nearest positioned ancestor).\n */\n fixed?: boolean;\n /**\n * If `true` the scrim is shown.\n */\n open?: boolean;\n}\n\nexport const Scrim = forwardRef<HTMLDivElement, ScrimProps>(function Scrim(\n { className, children, fixed = false, open = true, ...rest },\n ref\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-scrim\",\n css: scrimCss,\n window: targetWindow,\n });\n\n if (!open) {\n return null;\n }\n\n return (\n <div\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"fixed\")]: fixed,\n },\n className\n )}\n data-testid=\"scrim\"\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n );\n});\n"],"names":["makePrefixer","forwardRef","Scrim","useWindow","useComponentCssInjection","scrimCss","jsx","clsx"],"mappings":";;;;;;;;;;;;;;;;AASA,MAAM,YAAA,GAAeA,0BAAa,WAAW,CAAA,CAAA;AActC,MAAM,KAAQ,GAAAC,gBAAA,CAAuC,SAASC,MAAAA,CACnE,EAAE,SAAA,EAAW,QAAU,EAAA,KAAA,GAAQ,KAAO,EAAA,IAAA,GAAO,IAAS,EAAA,GAAA,IAAA,IACtD,GACA,EAAA;AACA,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,YAAA;AAAA,IACR,GAAK,EAAAC,OAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,IAAI,CAAC,IAAM,EAAA;AACT,IAAO,OAAA,IAAA,CAAA;AAAA,GACT;AAEA,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,SAAW,EAAAC,SAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb;AAAA,QACE,CAAC,YAAa,CAAA,OAAO,CAAI,GAAA,KAAA;AAAA,OAC3B;AAAA,MACA,SAAA;AAAA,KACF;AAAA,IACA,aAAY,EAAA,OAAA;AAAA,IACZ,GAAA;AAAA,IACC,GAAG,IAAA;AAAA,IAEH,QAAA;AAAA,GACH,CAAA,CAAA;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"Scrim.js","sources":["../src/scrim/Scrim.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport { ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport { makePrefixer } from \"../utils\";\n\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport scrimCss from \"./Scrim.css\";\n\nconst withBaseName = makePrefixer(\"saltScrim\");\n\nexport interface ScrimProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * If `true` the scrim is bound to the document viewport.\n * The default value of this prop is false, and the default behavior is for Scrim to be bound to its parent container (nearest positioned ancestor).\n */\n fixed?: boolean;\n /**\n * If `true` the scrim is shown.\n */\n open?: boolean;\n}\n\nexport const Scrim = forwardRef<HTMLDivElement, ScrimProps>(function Scrim(\n { className, children, fixed = false, open = true, ...rest },\n ref\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-scrim\",\n css: scrimCss,\n window: targetWindow,\n });\n\n if (!open) {\n return null;\n }\n\n return (\n <div\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"fixed\")]: fixed,\n },\n className\n )}\n data-testid=\"scrim\"\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n );\n});\n"],"names":["makePrefixer","forwardRef","Scrim","useWindow","useComponentCssInjection","scrimCss","jsx","clsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,MAAM,YAAA,GAAeA,0BAAa,WAAW,CAAA,CAAA;AActC,MAAM,KAAQ,GAAAC,gBAAA,CAAuC,SAASC,MAAAA,CACnE,EAAE,SAAA,EAAW,QAAU,EAAA,KAAA,GAAQ,KAAO,EAAA,IAAA,GAAO,IAAS,EAAA,GAAA,IAAA,IACtD,GACA,EAAA;AACA,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,YAAA;AAAA,IACR,GAAK,EAAAC,OAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,IAAI,CAAC,IAAM,EAAA;AACT,IAAO,OAAA,IAAA,CAAA;AAAA,GACT;AAEA,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,SAAW,EAAAC,SAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb;AAAA,QACE,CAAC,YAAa,CAAA,OAAO,CAAI,GAAA,KAAA;AAAA,OAC3B;AAAA,MACA,SAAA;AAAA,KACF;AAAA,IACA,aAAY,EAAA,OAAA;AAAA,IACZ,GAAA;AAAA,IACC,GAAG,IAAA;AAAA,IAEH,QAAA;AAAA,GACH,CAAA,CAAA;AAEJ,CAAC;;;;"}