@salt-ds/core 0.0.0-snapshot-20230419162206

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 (487) hide show
  1. package/README.md +1 -0
  2. package/dist-cjs/node_modules/style-inject/dist/style-inject.es.js +31 -0
  3. package/dist-cjs/node_modules/style-inject/dist/style-inject.es.js.map +1 -0
  4. package/dist-cjs/packages/core/src/aria-announcer/AriaAnnounce.js +22 -0
  5. package/dist-cjs/packages/core/src/aria-announcer/AriaAnnounce.js.map +1 -0
  6. package/dist-cjs/packages/core/src/aria-announcer/AriaAnnouncerContext.js +12 -0
  7. package/dist-cjs/packages/core/src/aria-announcer/AriaAnnouncerContext.js.map +1 -0
  8. package/dist-cjs/packages/core/src/aria-announcer/AriaAnnouncerProvider.js +78 -0
  9. package/dist-cjs/packages/core/src/aria-announcer/AriaAnnouncerProvider.js.map +1 -0
  10. package/dist-cjs/packages/core/src/aria-announcer/useAriaAnnouncer.js +67 -0
  11. package/dist-cjs/packages/core/src/aria-announcer/useAriaAnnouncer.js.map +1 -0
  12. package/dist-cjs/packages/core/src/avatar/Avatar.css.js +9 -0
  13. package/dist-cjs/packages/core/src/avatar/Avatar.css.js.map +1 -0
  14. package/dist-cjs/packages/core/src/avatar/Avatar.js +76 -0
  15. package/dist-cjs/packages/core/src/avatar/Avatar.js.map +1 -0
  16. package/dist-cjs/packages/core/src/avatar/useAvatarImage.js +39 -0
  17. package/dist-cjs/packages/core/src/avatar/useAvatarImage.js.map +1 -0
  18. package/dist-cjs/packages/core/src/border-item/BorderItem.css.js +9 -0
  19. package/dist-cjs/packages/core/src/border-item/BorderItem.css.js.map +1 -0
  20. package/dist-cjs/packages/core/src/border-item/BorderItem.js +64 -0
  21. package/dist-cjs/packages/core/src/border-item/BorderItem.js.map +1 -0
  22. package/dist-cjs/packages/core/src/border-layout/BorderLayout.js +56 -0
  23. package/dist-cjs/packages/core/src/border-layout/BorderLayout.js.map +1 -0
  24. package/dist-cjs/packages/core/src/breakpoints/Breakpoints.js +15 -0
  25. package/dist-cjs/packages/core/src/breakpoints/Breakpoints.js.map +1 -0
  26. package/dist-cjs/packages/core/src/button/Button.css.js +9 -0
  27. package/dist-cjs/packages/core/src/button/Button.css.js.map +1 -0
  28. package/dist-cjs/packages/core/src/button/Button.js +70 -0
  29. package/dist-cjs/packages/core/src/button/Button.js.map +1 -0
  30. package/dist-cjs/packages/core/src/button/useButton.js +65 -0
  31. package/dist-cjs/packages/core/src/button/useButton.js.map +1 -0
  32. package/dist-cjs/packages/core/src/card/Card.css.js +9 -0
  33. package/dist-cjs/packages/core/src/card/Card.css.js.map +1 -0
  34. package/dist-cjs/packages/core/src/card/Card.js +45 -0
  35. package/dist-cjs/packages/core/src/card/Card.js.map +1 -0
  36. package/dist-cjs/packages/core/src/card/InteractableCard.css.js +9 -0
  37. package/dist-cjs/packages/core/src/card/InteractableCard.css.js.map +1 -0
  38. package/dist-cjs/packages/core/src/card/InteractableCard.js +57 -0
  39. package/dist-cjs/packages/core/src/card/InteractableCard.js.map +1 -0
  40. package/dist-cjs/packages/core/src/card/useInteractableCard.js +63 -0
  41. package/dist-cjs/packages/core/src/card/useInteractableCard.js.map +1 -0
  42. package/dist-cjs/packages/core/src/checkbox/Checkbox.css.js +9 -0
  43. package/dist-cjs/packages/core/src/checkbox/Checkbox.css.js.map +1 -0
  44. package/dist-cjs/packages/core/src/checkbox/Checkbox.js +95 -0
  45. package/dist-cjs/packages/core/src/checkbox/Checkbox.js.map +1 -0
  46. package/dist-cjs/packages/core/src/checkbox/CheckboxGroup.css.js +9 -0
  47. package/dist-cjs/packages/core/src/checkbox/CheckboxGroup.css.js.map +1 -0
  48. package/dist-cjs/packages/core/src/checkbox/CheckboxGroup.js +62 -0
  49. package/dist-cjs/packages/core/src/checkbox/CheckboxGroup.js.map +1 -0
  50. package/dist-cjs/packages/core/src/checkbox/CheckboxIcon.css.js +9 -0
  51. package/dist-cjs/packages/core/src/checkbox/CheckboxIcon.css.js.map +1 -0
  52. package/dist-cjs/packages/core/src/checkbox/CheckboxIcon.js +48 -0
  53. package/dist-cjs/packages/core/src/checkbox/CheckboxIcon.js.map +1 -0
  54. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxCheckedIcon.js +33 -0
  55. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxCheckedIcon.js.map +1 -0
  56. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxCheckedIconHD.js +32 -0
  57. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxCheckedIconHD.js.map +1 -0
  58. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxIndeterminateIcon.js +37 -0
  59. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxIndeterminateIcon.js.map +1 -0
  60. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxUncheckedIcon.js +26 -0
  61. package/dist-cjs/packages/core/src/checkbox/assets/CheckboxUncheckedIcon.js.map +1 -0
  62. package/dist-cjs/packages/core/src/checkbox/internal/CheckboxGroupContext.js +13 -0
  63. package/dist-cjs/packages/core/src/checkbox/internal/CheckboxGroupContext.js.map +1 -0
  64. package/dist-cjs/packages/core/src/checkbox/internal/useCheckboxGroup.js +13 -0
  65. package/dist-cjs/packages/core/src/checkbox/internal/useCheckboxGroup.js.map +1 -0
  66. package/dist-cjs/packages/core/src/flex-item/FlexItem.css.js +9 -0
  67. package/dist-cjs/packages/core/src/flex-item/FlexItem.css.js.map +1 -0
  68. package/dist-cjs/packages/core/src/flex-item/FlexItem.js +64 -0
  69. package/dist-cjs/packages/core/src/flex-item/FlexItem.js.map +1 -0
  70. package/dist-cjs/packages/core/src/flex-layout/FlexLayout.css.js +9 -0
  71. package/dist-cjs/packages/core/src/flex-layout/FlexLayout.css.js.map +1 -0
  72. package/dist-cjs/packages/core/src/flex-layout/FlexLayout.js +83 -0
  73. package/dist-cjs/packages/core/src/flex-layout/FlexLayout.js.map +1 -0
  74. package/dist-cjs/packages/core/src/flow-layout/FlowLayout.js +22 -0
  75. package/dist-cjs/packages/core/src/flow-layout/FlowLayout.js.map +1 -0
  76. package/dist-cjs/packages/core/src/grid-item/GridItem.css.js +9 -0
  77. package/dist-cjs/packages/core/src/grid-item/GridItem.css.js.map +1 -0
  78. package/dist-cjs/packages/core/src/grid-item/GridItem.js +73 -0
  79. package/dist-cjs/packages/core/src/grid-item/GridItem.js.map +1 -0
  80. package/dist-cjs/packages/core/src/grid-layout/GridLayout.css.js +9 -0
  81. package/dist-cjs/packages/core/src/grid-layout/GridLayout.css.js.map +1 -0
  82. package/dist-cjs/packages/core/src/grid-layout/GridLayout.js +60 -0
  83. package/dist-cjs/packages/core/src/grid-layout/GridLayout.js.map +1 -0
  84. package/dist-cjs/packages/core/src/index.js +156 -0
  85. package/dist-cjs/packages/core/src/index.js.map +1 -0
  86. package/dist-cjs/packages/core/src/link/Link.css.js +9 -0
  87. package/dist-cjs/packages/core/src/link/Link.css.js.map +1 -0
  88. package/dist-cjs/packages/core/src/link/Link.js +65 -0
  89. package/dist-cjs/packages/core/src/link/Link.js.map +1 -0
  90. package/dist-cjs/packages/core/src/panel/Panel.css.js +9 -0
  91. package/dist-cjs/packages/core/src/panel/Panel.css.js.map +1 -0
  92. package/dist-cjs/packages/core/src/panel/Panel.js +34 -0
  93. package/dist-cjs/packages/core/src/panel/Panel.js.map +1 -0
  94. package/dist-cjs/packages/core/src/radio-button/RadioButton.css.js +9 -0
  95. package/dist-cjs/packages/core/src/radio-button/RadioButton.css.js.map +1 -0
  96. package/dist-cjs/packages/core/src/radio-button/RadioButton.js +86 -0
  97. package/dist-cjs/packages/core/src/radio-button/RadioButton.js.map +1 -0
  98. package/dist-cjs/packages/core/src/radio-button/RadioButtonGroup.css.js +9 -0
  99. package/dist-cjs/packages/core/src/radio-button/RadioButtonGroup.css.js.map +1 -0
  100. package/dist-cjs/packages/core/src/radio-button/RadioButtonGroup.js +61 -0
  101. package/dist-cjs/packages/core/src/radio-button/RadioButtonGroup.js.map +1 -0
  102. package/dist-cjs/packages/core/src/radio-button/RadioButtonIcon.css.js +9 -0
  103. package/dist-cjs/packages/core/src/radio-button/RadioButtonIcon.css.js.map +1 -0
  104. package/dist-cjs/packages/core/src/radio-button/RadioButtonIcon.js +48 -0
  105. package/dist-cjs/packages/core/src/radio-button/RadioButtonIcon.js.map +1 -0
  106. package/dist-cjs/packages/core/src/radio-button/internal/RadioGroupContext.js +19 -0
  107. package/dist-cjs/packages/core/src/radio-button/internal/RadioGroupContext.js.map +1 -0
  108. package/dist-cjs/packages/core/src/radio-button/internal/useRadioGroup.js +13 -0
  109. package/dist-cjs/packages/core/src/radio-button/internal/useRadioGroup.js.map +1 -0
  110. package/dist-cjs/packages/core/src/salt-provider/SaltProvider.css.js +9 -0
  111. package/dist-cjs/packages/core/src/salt-provider/SaltProvider.css.js.map +1 -0
  112. package/dist-cjs/packages/core/src/salt-provider/SaltProvider.js +166 -0
  113. package/dist-cjs/packages/core/src/salt-provider/SaltProvider.js.map +1 -0
  114. package/dist-cjs/packages/core/src/spinner/Spinner.css.js +9 -0
  115. package/dist-cjs/packages/core/src/spinner/Spinner.css.js.map +1 -0
  116. package/dist-cjs/packages/core/src/spinner/Spinner.js +89 -0
  117. package/dist-cjs/packages/core/src/spinner/Spinner.js.map +1 -0
  118. package/dist-cjs/packages/core/src/spinner/svgSpinners/SpinnerSVG.js +82 -0
  119. package/dist-cjs/packages/core/src/spinner/svgSpinners/SpinnerSVG.js.map +1 -0
  120. package/dist-cjs/packages/core/src/split-layout/SplitLayout.js +25 -0
  121. package/dist-cjs/packages/core/src/split-layout/SplitLayout.js.map +1 -0
  122. package/dist-cjs/packages/core/src/stack-layout/StackLayout.css.js +9 -0
  123. package/dist-cjs/packages/core/src/stack-layout/StackLayout.css.js.map +1 -0
  124. package/dist-cjs/packages/core/src/stack-layout/StackLayout.js +63 -0
  125. package/dist-cjs/packages/core/src/stack-layout/StackLayout.js.map +1 -0
  126. package/dist-cjs/packages/core/src/status-indicator/StatusIndicator.css.js +9 -0
  127. package/dist-cjs/packages/core/src/status-indicator/StatusIndicator.css.js.map +1 -0
  128. package/dist-cjs/packages/core/src/status-indicator/StatusIndicator.js +52 -0
  129. package/dist-cjs/packages/core/src/status-indicator/StatusIndicator.js.map +1 -0
  130. package/dist-cjs/packages/core/src/status-indicator/ValidationStatus.js +13 -0
  131. package/dist-cjs/packages/core/src/status-indicator/ValidationStatus.js.map +1 -0
  132. package/dist-cjs/packages/core/src/text/Display.js +47 -0
  133. package/dist-cjs/packages/core/src/text/Display.js.map +1 -0
  134. package/dist-cjs/packages/core/src/text/Headings.js +54 -0
  135. package/dist-cjs/packages/core/src/text/Headings.js.map +1 -0
  136. package/dist-cjs/packages/core/src/text/Label.js +19 -0
  137. package/dist-cjs/packages/core/src/text/Label.js.map +1 -0
  138. package/dist-cjs/packages/core/src/text/Text.css.js +9 -0
  139. package/dist-cjs/packages/core/src/text/Text.css.js.map +1 -0
  140. package/dist-cjs/packages/core/src/text/Text.js +58 -0
  141. package/dist-cjs/packages/core/src/text/Text.js.map +1 -0
  142. package/dist-cjs/packages/core/src/theme/Density.js +8 -0
  143. package/dist-cjs/packages/core/src/theme/Density.js.map +1 -0
  144. package/dist-cjs/packages/core/src/theme/Mode.js +8 -0
  145. package/dist-cjs/packages/core/src/theme/Mode.js.map +1 -0
  146. package/dist-cjs/packages/core/src/theme/Theme.js +19 -0
  147. package/dist-cjs/packages/core/src/theme/Theme.js.map +1 -0
  148. package/dist-cjs/packages/core/src/tooltip/Tooltip.css.js +9 -0
  149. package/dist-cjs/packages/core/src/tooltip/Tooltip.css.js.map +1 -0
  150. package/dist-cjs/packages/core/src/tooltip/Tooltip.js +115 -0
  151. package/dist-cjs/packages/core/src/tooltip/Tooltip.js.map +1 -0
  152. package/dist-cjs/packages/core/src/tooltip/useAriaAnnounce.js +95 -0
  153. package/dist-cjs/packages/core/src/tooltip/useAriaAnnounce.js.map +1 -0
  154. package/dist-cjs/packages/core/src/tooltip/useTooltip.js +109 -0
  155. package/dist-cjs/packages/core/src/tooltip/useTooltip.js.map +1 -0
  156. package/dist-cjs/packages/core/src/utils/capitalize.js +10 -0
  157. package/dist-cjs/packages/core/src/utils/capitalize.js.map +1 -0
  158. package/dist-cjs/packages/core/src/utils/createChainedFunction.js +22 -0
  159. package/dist-cjs/packages/core/src/utils/createChainedFunction.js.map +1 -0
  160. package/dist-cjs/packages/core/src/utils/createContext.js +16 -0
  161. package/dist-cjs/packages/core/src/utils/createContext.js.map +1 -0
  162. package/dist-cjs/packages/core/src/utils/debounce.js +24 -0
  163. package/dist-cjs/packages/core/src/utils/debounce.js.map +1 -0
  164. package/dist-cjs/packages/core/src/utils/makePrefixer.js +8 -0
  165. package/dist-cjs/packages/core/src/utils/makePrefixer.js.map +1 -0
  166. package/dist-cjs/packages/core/src/utils/marginMiddleware.js +22 -0
  167. package/dist-cjs/packages/core/src/utils/marginMiddleware.js.map +1 -0
  168. package/dist-cjs/packages/core/src/utils/mergeProps.js +25 -0
  169. package/dist-cjs/packages/core/src/utils/mergeProps.js.map +1 -0
  170. package/dist-cjs/packages/core/src/utils/ownerDocument.js +10 -0
  171. package/dist-cjs/packages/core/src/utils/ownerDocument.js.map +1 -0
  172. package/dist-cjs/packages/core/src/utils/ownerWindow.js +13 -0
  173. package/dist-cjs/packages/core/src/utils/ownerWindow.js.map +1 -0
  174. package/dist-cjs/packages/core/src/utils/setRef.js +14 -0
  175. package/dist-cjs/packages/core/src/utils/setRef.js.map +1 -0
  176. package/dist-cjs/packages/core/src/utils/useControlled.js +60 -0
  177. package/dist-cjs/packages/core/src/utils/useControlled.js.map +1 -0
  178. package/dist-cjs/packages/core/src/utils/useFloatingUI.js +38 -0
  179. package/dist-cjs/packages/core/src/utils/useFloatingUI.js.map +1 -0
  180. package/dist-cjs/packages/core/src/utils/useForkRef.js +21 -0
  181. package/dist-cjs/packages/core/src/utils/useForkRef.js.map +1 -0
  182. package/dist-cjs/packages/core/src/utils/useId.js +55 -0
  183. package/dist-cjs/packages/core/src/utils/useId.js.map +1 -0
  184. package/dist-cjs/packages/core/src/utils/useIsFocusVisible.js +108 -0
  185. package/dist-cjs/packages/core/src/utils/useIsFocusVisible.js.map +1 -0
  186. package/dist-cjs/packages/core/src/utils/useIsomorphicLayoutEffect.js +10 -0
  187. package/dist-cjs/packages/core/src/utils/useIsomorphicLayoutEffect.js.map +1 -0
  188. package/dist-cjs/packages/core/src/utils/usePrevious.js +16 -0
  189. package/dist-cjs/packages/core/src/utils/usePrevious.js.map +1 -0
  190. package/dist-cjs/packages/core/src/utils/useResponsiveProp.js +71 -0
  191. package/dist-cjs/packages/core/src/utils/useResponsiveProp.js.map +1 -0
  192. package/dist-cjs/packages/core/src/viewport/ViewportProvider.js +48 -0
  193. package/dist-cjs/packages/core/src/viewport/ViewportProvider.js.map +1 -0
  194. package/dist-es/node_modules/style-inject/dist/style-inject.es.js +29 -0
  195. package/dist-es/node_modules/style-inject/dist/style-inject.es.js.map +1 -0
  196. package/dist-es/packages/core/src/aria-announcer/AriaAnnounce.js +18 -0
  197. package/dist-es/packages/core/src/aria-announcer/AriaAnnounce.js.map +1 -0
  198. package/dist-es/packages/core/src/aria-announcer/AriaAnnouncerContext.js +8 -0
  199. package/dist-es/packages/core/src/aria-announcer/AriaAnnouncerContext.js.map +1 -0
  200. package/dist-es/packages/core/src/aria-announcer/AriaAnnouncerProvider.js +73 -0
  201. package/dist-es/packages/core/src/aria-announcer/AriaAnnouncerProvider.js.map +1 -0
  202. package/dist-es/packages/core/src/aria-announcer/useAriaAnnouncer.js +63 -0
  203. package/dist-es/packages/core/src/aria-announcer/useAriaAnnouncer.js.map +1 -0
  204. package/dist-es/packages/core/src/avatar/Avatar.css.js +7 -0
  205. package/dist-es/packages/core/src/avatar/Avatar.css.js.map +1 -0
  206. package/dist-es/packages/core/src/avatar/Avatar.js +72 -0
  207. package/dist-es/packages/core/src/avatar/Avatar.js.map +1 -0
  208. package/dist-es/packages/core/src/avatar/useAvatarImage.js +35 -0
  209. package/dist-es/packages/core/src/avatar/useAvatarImage.js.map +1 -0
  210. package/dist-es/packages/core/src/border-item/BorderItem.css.js +7 -0
  211. package/dist-es/packages/core/src/border-item/BorderItem.css.js.map +1 -0
  212. package/dist-es/packages/core/src/border-item/BorderItem.js +59 -0
  213. package/dist-es/packages/core/src/border-item/BorderItem.js.map +1 -0
  214. package/dist-es/packages/core/src/border-layout/BorderLayout.js +52 -0
  215. package/dist-es/packages/core/src/border-layout/BorderLayout.js.map +1 -0
  216. package/dist-es/packages/core/src/breakpoints/Breakpoints.js +11 -0
  217. package/dist-es/packages/core/src/breakpoints/Breakpoints.js.map +1 -0
  218. package/dist-es/packages/core/src/button/Button.css.js +7 -0
  219. package/dist-es/packages/core/src/button/Button.css.js.map +1 -0
  220. package/dist-es/packages/core/src/button/Button.js +65 -0
  221. package/dist-es/packages/core/src/button/Button.js.map +1 -0
  222. package/dist-es/packages/core/src/button/useButton.js +61 -0
  223. package/dist-es/packages/core/src/button/useButton.js.map +1 -0
  224. package/dist-es/packages/core/src/card/Card.css.js +7 -0
  225. package/dist-es/packages/core/src/card/Card.css.js.map +1 -0
  226. package/dist-es/packages/core/src/card/Card.js +41 -0
  227. package/dist-es/packages/core/src/card/Card.js.map +1 -0
  228. package/dist-es/packages/core/src/card/InteractableCard.css.js +7 -0
  229. package/dist-es/packages/core/src/card/InteractableCard.css.js.map +1 -0
  230. package/dist-es/packages/core/src/card/InteractableCard.js +53 -0
  231. package/dist-es/packages/core/src/card/InteractableCard.js.map +1 -0
  232. package/dist-es/packages/core/src/card/useInteractableCard.js +59 -0
  233. package/dist-es/packages/core/src/card/useInteractableCard.js.map +1 -0
  234. package/dist-es/packages/core/src/checkbox/Checkbox.css.js +7 -0
  235. package/dist-es/packages/core/src/checkbox/Checkbox.css.js.map +1 -0
  236. package/dist-es/packages/core/src/checkbox/Checkbox.js +91 -0
  237. package/dist-es/packages/core/src/checkbox/Checkbox.js.map +1 -0
  238. package/dist-es/packages/core/src/checkbox/CheckboxGroup.css.js +7 -0
  239. package/dist-es/packages/core/src/checkbox/CheckboxGroup.css.js.map +1 -0
  240. package/dist-es/packages/core/src/checkbox/CheckboxGroup.js +58 -0
  241. package/dist-es/packages/core/src/checkbox/CheckboxGroup.js.map +1 -0
  242. package/dist-es/packages/core/src/checkbox/CheckboxIcon.css.js +7 -0
  243. package/dist-es/packages/core/src/checkbox/CheckboxIcon.css.js.map +1 -0
  244. package/dist-es/packages/core/src/checkbox/CheckboxIcon.js +44 -0
  245. package/dist-es/packages/core/src/checkbox/CheckboxIcon.js.map +1 -0
  246. package/dist-es/packages/core/src/checkbox/assets/CheckboxCheckedIcon.js +29 -0
  247. package/dist-es/packages/core/src/checkbox/assets/CheckboxCheckedIcon.js.map +1 -0
  248. package/dist-es/packages/core/src/checkbox/assets/CheckboxCheckedIconHD.js +28 -0
  249. package/dist-es/packages/core/src/checkbox/assets/CheckboxCheckedIconHD.js.map +1 -0
  250. package/dist-es/packages/core/src/checkbox/assets/CheckboxIndeterminateIcon.js +33 -0
  251. package/dist-es/packages/core/src/checkbox/assets/CheckboxIndeterminateIcon.js.map +1 -0
  252. package/dist-es/packages/core/src/checkbox/assets/CheckboxUncheckedIcon.js +22 -0
  253. package/dist-es/packages/core/src/checkbox/assets/CheckboxUncheckedIcon.js.map +1 -0
  254. package/dist-es/packages/core/src/checkbox/internal/CheckboxGroupContext.js +9 -0
  255. package/dist-es/packages/core/src/checkbox/internal/CheckboxGroupContext.js.map +1 -0
  256. package/dist-es/packages/core/src/checkbox/internal/useCheckboxGroup.js +9 -0
  257. package/dist-es/packages/core/src/checkbox/internal/useCheckboxGroup.js.map +1 -0
  258. package/dist-es/packages/core/src/flex-item/FlexItem.css.js +7 -0
  259. package/dist-es/packages/core/src/flex-item/FlexItem.css.js.map +1 -0
  260. package/dist-es/packages/core/src/flex-item/FlexItem.js +59 -0
  261. package/dist-es/packages/core/src/flex-item/FlexItem.js.map +1 -0
  262. package/dist-es/packages/core/src/flex-layout/FlexLayout.css.js +7 -0
  263. package/dist-es/packages/core/src/flex-layout/FlexLayout.css.js.map +1 -0
  264. package/dist-es/packages/core/src/flex-layout/FlexLayout.js +77 -0
  265. package/dist-es/packages/core/src/flex-layout/FlexLayout.js.map +1 -0
  266. package/dist-es/packages/core/src/flow-layout/FlowLayout.js +18 -0
  267. package/dist-es/packages/core/src/flow-layout/FlowLayout.js.map +1 -0
  268. package/dist-es/packages/core/src/grid-item/GridItem.css.js +7 -0
  269. package/dist-es/packages/core/src/grid-item/GridItem.css.js.map +1 -0
  270. package/dist-es/packages/core/src/grid-item/GridItem.js +68 -0
  271. package/dist-es/packages/core/src/grid-item/GridItem.js.map +1 -0
  272. package/dist-es/packages/core/src/grid-layout/GridLayout.css.js +7 -0
  273. package/dist-es/packages/core/src/grid-layout/GridLayout.css.js.map +1 -0
  274. package/dist-es/packages/core/src/grid-layout/GridLayout.js +56 -0
  275. package/dist-es/packages/core/src/grid-layout/GridLayout.js.map +1 -0
  276. package/dist-es/packages/core/src/index.js +61 -0
  277. package/dist-es/packages/core/src/index.js.map +1 -0
  278. package/dist-es/packages/core/src/link/Link.css.js +7 -0
  279. package/dist-es/packages/core/src/link/Link.css.js.map +1 -0
  280. package/dist-es/packages/core/src/link/Link.js +61 -0
  281. package/dist-es/packages/core/src/link/Link.js.map +1 -0
  282. package/dist-es/packages/core/src/panel/Panel.css.js +7 -0
  283. package/dist-es/packages/core/src/panel/Panel.css.js.map +1 -0
  284. package/dist-es/packages/core/src/panel/Panel.js +30 -0
  285. package/dist-es/packages/core/src/panel/Panel.js.map +1 -0
  286. package/dist-es/packages/core/src/radio-button/RadioButton.css.js +7 -0
  287. package/dist-es/packages/core/src/radio-button/RadioButton.css.js.map +1 -0
  288. package/dist-es/packages/core/src/radio-button/RadioButton.js +82 -0
  289. package/dist-es/packages/core/src/radio-button/RadioButton.js.map +1 -0
  290. package/dist-es/packages/core/src/radio-button/RadioButtonGroup.css.js +7 -0
  291. package/dist-es/packages/core/src/radio-button/RadioButtonGroup.css.js.map +1 -0
  292. package/dist-es/packages/core/src/radio-button/RadioButtonGroup.js +57 -0
  293. package/dist-es/packages/core/src/radio-button/RadioButtonGroup.js.map +1 -0
  294. package/dist-es/packages/core/src/radio-button/RadioButtonIcon.css.js +7 -0
  295. package/dist-es/packages/core/src/radio-button/RadioButtonIcon.css.js.map +1 -0
  296. package/dist-es/packages/core/src/radio-button/RadioButtonIcon.js +44 -0
  297. package/dist-es/packages/core/src/radio-button/RadioButtonIcon.js.map +1 -0
  298. package/dist-es/packages/core/src/radio-button/internal/RadioGroupContext.js +15 -0
  299. package/dist-es/packages/core/src/radio-button/internal/RadioGroupContext.js.map +1 -0
  300. package/dist-es/packages/core/src/radio-button/internal/useRadioGroup.js +9 -0
  301. package/dist-es/packages/core/src/radio-button/internal/useRadioGroup.js.map +1 -0
  302. package/dist-es/packages/core/src/salt-provider/SaltProvider.css.js +7 -0
  303. package/dist-es/packages/core/src/salt-provider/SaltProvider.css.js.map +1 -0
  304. package/dist-es/packages/core/src/salt-provider/SaltProvider.js +151 -0
  305. package/dist-es/packages/core/src/salt-provider/SaltProvider.js.map +1 -0
  306. package/dist-es/packages/core/src/spinner/Spinner.css.js +7 -0
  307. package/dist-es/packages/core/src/spinner/Spinner.css.js.map +1 -0
  308. package/dist-es/packages/core/src/spinner/Spinner.js +84 -0
  309. package/dist-es/packages/core/src/spinner/Spinner.js.map +1 -0
  310. package/dist-es/packages/core/src/spinner/svgSpinners/SpinnerSVG.js +78 -0
  311. package/dist-es/packages/core/src/spinner/svgSpinners/SpinnerSVG.js.map +1 -0
  312. package/dist-es/packages/core/src/split-layout/SplitLayout.js +21 -0
  313. package/dist-es/packages/core/src/split-layout/SplitLayout.js.map +1 -0
  314. package/dist-es/packages/core/src/stack-layout/StackLayout.css.js +7 -0
  315. package/dist-es/packages/core/src/stack-layout/StackLayout.css.js.map +1 -0
  316. package/dist-es/packages/core/src/stack-layout/StackLayout.js +59 -0
  317. package/dist-es/packages/core/src/stack-layout/StackLayout.js.map +1 -0
  318. package/dist-es/packages/core/src/status-indicator/StatusIndicator.css.js +7 -0
  319. package/dist-es/packages/core/src/status-indicator/StatusIndicator.css.js.map +1 -0
  320. package/dist-es/packages/core/src/status-indicator/StatusIndicator.js +48 -0
  321. package/dist-es/packages/core/src/status-indicator/StatusIndicator.js.map +1 -0
  322. package/dist-es/packages/core/src/status-indicator/ValidationStatus.js +9 -0
  323. package/dist-es/packages/core/src/status-indicator/ValidationStatus.js.map +1 -0
  324. package/dist-es/packages/core/src/text/Display.js +41 -0
  325. package/dist-es/packages/core/src/text/Display.js.map +1 -0
  326. package/dist-es/packages/core/src/text/Headings.js +47 -0
  327. package/dist-es/packages/core/src/text/Headings.js.map +1 -0
  328. package/dist-es/packages/core/src/text/Label.js +15 -0
  329. package/dist-es/packages/core/src/text/Label.js.map +1 -0
  330. package/dist-es/packages/core/src/text/Text.css.js +7 -0
  331. package/dist-es/packages/core/src/text/Text.css.js.map +1 -0
  332. package/dist-es/packages/core/src/text/Text.js +54 -0
  333. package/dist-es/packages/core/src/text/Text.js.map +1 -0
  334. package/dist-es/packages/core/src/theme/Density.js +4 -0
  335. package/dist-es/packages/core/src/theme/Density.js.map +1 -0
  336. package/dist-es/packages/core/src/theme/Mode.js +4 -0
  337. package/dist-es/packages/core/src/theme/Mode.js.map +1 -0
  338. package/dist-es/packages/core/src/theme/Theme.js +15 -0
  339. package/dist-es/packages/core/src/theme/Theme.js.map +1 -0
  340. package/dist-es/packages/core/src/tooltip/Tooltip.css.js +7 -0
  341. package/dist-es/packages/core/src/tooltip/Tooltip.css.js.map +1 -0
  342. package/dist-es/packages/core/src/tooltip/Tooltip.js +111 -0
  343. package/dist-es/packages/core/src/tooltip/Tooltip.js.map +1 -0
  344. package/dist-es/packages/core/src/tooltip/useAriaAnnounce.js +91 -0
  345. package/dist-es/packages/core/src/tooltip/useAriaAnnounce.js.map +1 -0
  346. package/dist-es/packages/core/src/tooltip/useTooltip.js +105 -0
  347. package/dist-es/packages/core/src/tooltip/useTooltip.js.map +1 -0
  348. package/dist-es/packages/core/src/utils/capitalize.js +6 -0
  349. package/dist-es/packages/core/src/utils/capitalize.js.map +1 -0
  350. package/dist-es/packages/core/src/utils/createChainedFunction.js +18 -0
  351. package/dist-es/packages/core/src/utils/createChainedFunction.js.map +1 -0
  352. package/dist-es/packages/core/src/utils/createContext.js +12 -0
  353. package/dist-es/packages/core/src/utils/createContext.js.map +1 -0
  354. package/dist-es/packages/core/src/utils/debounce.js +20 -0
  355. package/dist-es/packages/core/src/utils/debounce.js.map +1 -0
  356. package/dist-es/packages/core/src/utils/makePrefixer.js +4 -0
  357. package/dist-es/packages/core/src/utils/makePrefixer.js.map +1 -0
  358. package/dist-es/packages/core/src/utils/marginMiddleware.js +18 -0
  359. package/dist-es/packages/core/src/utils/marginMiddleware.js.map +1 -0
  360. package/dist-es/packages/core/src/utils/mergeProps.js +21 -0
  361. package/dist-es/packages/core/src/utils/mergeProps.js.map +1 -0
  362. package/dist-es/packages/core/src/utils/ownerDocument.js +6 -0
  363. package/dist-es/packages/core/src/utils/ownerDocument.js.map +1 -0
  364. package/dist-es/packages/core/src/utils/ownerWindow.js +9 -0
  365. package/dist-es/packages/core/src/utils/ownerWindow.js.map +1 -0
  366. package/dist-es/packages/core/src/utils/setRef.js +10 -0
  367. package/dist-es/packages/core/src/utils/setRef.js.map +1 -0
  368. package/dist-es/packages/core/src/utils/useControlled.js +56 -0
  369. package/dist-es/packages/core/src/utils/useControlled.js.map +1 -0
  370. package/dist-es/packages/core/src/utils/useFloatingUI.js +33 -0
  371. package/dist-es/packages/core/src/utils/useFloatingUI.js.map +1 -0
  372. package/dist-es/packages/core/src/utils/useForkRef.js +17 -0
  373. package/dist-es/packages/core/src/utils/useForkRef.js.map +1 -0
  374. package/dist-es/packages/core/src/utils/useId.js +30 -0
  375. package/dist-es/packages/core/src/utils/useId.js.map +1 -0
  376. package/dist-es/packages/core/src/utils/useIsFocusVisible.js +103 -0
  377. package/dist-es/packages/core/src/utils/useIsFocusVisible.js.map +1 -0
  378. package/dist-es/packages/core/src/utils/useIsomorphicLayoutEffect.js +6 -0
  379. package/dist-es/packages/core/src/utils/useIsomorphicLayoutEffect.js.map +1 -0
  380. package/dist-es/packages/core/src/utils/usePrevious.js +12 -0
  381. package/dist-es/packages/core/src/utils/usePrevious.js.map +1 -0
  382. package/dist-es/packages/core/src/utils/useResponsiveProp.js +64 -0
  383. package/dist-es/packages/core/src/utils/useResponsiveProp.js.map +1 -0
  384. package/dist-es/packages/core/src/viewport/ViewportProvider.js +42 -0
  385. package/dist-es/packages/core/src/viewport/ViewportProvider.js.map +1 -0
  386. package/dist-types/aria-announcer/AriaAnnounce.d.ts +8 -0
  387. package/dist-types/aria-announcer/AriaAnnouncerContext.d.ts +6 -0
  388. package/dist-types/aria-announcer/AriaAnnouncerProvider.d.ts +10 -0
  389. package/dist-types/aria-announcer/index.d.ts +4 -0
  390. package/dist-types/aria-announcer/useAriaAnnouncer.d.ts +6 -0
  391. package/dist-types/avatar/Avatar.d.ts +26 -0
  392. package/dist-types/avatar/index.d.ts +2 -0
  393. package/dist-types/avatar/useAvatarImage.d.ts +2 -0
  394. package/dist-types/border-item/BorderItem.d.ts +26 -0
  395. package/dist-types/border-item/index.d.ts +1 -0
  396. package/dist-types/border-layout/BorderLayout.d.ts +25 -0
  397. package/dist-types/border-layout/index.d.ts +1 -0
  398. package/dist-types/breakpoints/Breakpoints.d.ts +8 -0
  399. package/dist-types/breakpoints/index.d.ts +1 -0
  400. package/dist-types/button/Button.d.ts +19 -0
  401. package/dist-types/button/index.d.ts +2 -0
  402. package/dist-types/button/useButton.d.ts +22 -0
  403. package/dist-types/card/Card.d.ts +17 -0
  404. package/dist-types/card/InteractableCard.d.ts +14 -0
  405. package/dist-types/card/index.d.ts +2 -0
  406. package/dist-types/card/useInteractableCard.d.ts +21 -0
  407. package/dist-types/checkbox/Checkbox.d.ts +56 -0
  408. package/dist-types/checkbox/CheckboxGroup.d.ts +30 -0
  409. package/dist-types/checkbox/CheckboxIcon.d.ts +10 -0
  410. package/dist-types/checkbox/assets/CheckboxCheckedIcon.d.ts +4 -0
  411. package/dist-types/checkbox/assets/CheckboxCheckedIconHD.d.ts +4 -0
  412. package/dist-types/checkbox/assets/CheckboxIndeterminateIcon.d.ts +4 -0
  413. package/dist-types/checkbox/assets/CheckboxUncheckedIcon.d.ts +4 -0
  414. package/dist-types/checkbox/assets/index.d.ts +4 -0
  415. package/dist-types/checkbox/index.d.ts +3 -0
  416. package/dist-types/checkbox/internal/CheckboxGroupContext.d.ts +9 -0
  417. package/dist-types/checkbox/internal/useCheckboxGroup.d.ts +2 -0
  418. package/dist-types/flex-item/FlexItem.d.ts +25 -0
  419. package/dist-types/flex-item/index.d.ts +1 -0
  420. package/dist-types/flex-layout/FlexLayout.d.ts +39 -0
  421. package/dist-types/flex-layout/index.d.ts +1 -0
  422. package/dist-types/flow-layout/FlowLayout.d.ts +20 -0
  423. package/dist-types/flow-layout/index.d.ts +1 -0
  424. package/dist-types/grid-item/GridItem.d.ts +26 -0
  425. package/dist-types/grid-item/index.d.ts +1 -0
  426. package/dist-types/grid-layout/GridLayout.d.ts +27 -0
  427. package/dist-types/grid-layout/index.d.ts +1 -0
  428. package/dist-types/index.d.ts +26 -0
  429. package/dist-types/link/Link.d.ts +13 -0
  430. package/dist-types/link/index.d.ts +1 -0
  431. package/dist-types/panel/Panel.d.ts +19 -0
  432. package/dist-types/panel/index.d.ts +1 -0
  433. package/dist-types/radio-button/RadioButton.d.ts +45 -0
  434. package/dist-types/radio-button/RadioButtonGroup.d.ts +29 -0
  435. package/dist-types/radio-button/RadioButtonIcon.d.ts +11 -0
  436. package/dist-types/radio-button/index.d.ts +3 -0
  437. package/dist-types/radio-button/internal/RadioGroupContext.d.ts +7 -0
  438. package/dist-types/radio-button/internal/useRadioGroup.d.ts +1 -0
  439. package/dist-types/salt-provider/SaltProvider.d.ts +38 -0
  440. package/dist-types/salt-provider/index.d.ts +1 -0
  441. package/dist-types/spinner/Spinner.d.ts +44 -0
  442. package/dist-types/spinner/index.d.ts +1 -0
  443. package/dist-types/spinner/svgSpinners/SpinnerSVG.d.ts +5 -0
  444. package/dist-types/split-layout/SplitLayout.d.ts +28 -0
  445. package/dist-types/split-layout/index.d.ts +1 -0
  446. package/dist-types/stack-layout/StackLayout.d.ts +24 -0
  447. package/dist-types/stack-layout/index.d.ts +1 -0
  448. package/dist-types/status-indicator/StatusIndicator.d.ts +10 -0
  449. package/dist-types/status-indicator/ValidationStatus.d.ts +2 -0
  450. package/dist-types/status-indicator/index.d.ts +2 -0
  451. package/dist-types/text/Display.d.ts +5 -0
  452. package/dist-types/text/Headings.d.ts +6 -0
  453. package/dist-types/text/Label.d.ts +3 -0
  454. package/dist-types/text/Text.d.ts +23 -0
  455. package/dist-types/text/index.d.ts +4 -0
  456. package/dist-types/theme/Density.d.ts +2 -0
  457. package/dist-types/theme/Mode.d.ts +2 -0
  458. package/dist-types/theme/Theme.d.ts +3 -0
  459. package/dist-types/theme/index.d.ts +3 -0
  460. package/dist-types/tooltip/Tooltip.d.ts +46 -0
  461. package/dist-types/tooltip/index.d.ts +2 -0
  462. package/dist-types/tooltip/useAriaAnnounce.d.ts +9 -0
  463. package/dist-types/tooltip/useTooltip.d.ts +56 -0
  464. package/dist-types/utils/capitalize.d.ts +1 -0
  465. package/dist-types/utils/createChainedFunction.d.ts +3 -0
  466. package/dist-types/utils/createContext.d.ts +2 -0
  467. package/dist-types/utils/debounce.d.ts +4 -0
  468. package/dist-types/utils/index.d.ts +20 -0
  469. package/dist-types/utils/inferElementType.d.ts +2 -0
  470. package/dist-types/utils/makePrefixer.d.ts +2 -0
  471. package/dist-types/utils/marginMiddleware.d.ts +2 -0
  472. package/dist-types/utils/mergeProps.d.ts +12 -0
  473. package/dist-types/utils/ownerDocument.d.ts +1 -0
  474. package/dist-types/utils/ownerWindow.d.ts +1 -0
  475. package/dist-types/utils/polymorphicTypes.d.ts +14 -0
  476. package/dist-types/utils/setRef.d.ts +2 -0
  477. package/dist-types/utils/useControlled.d.ts +24 -0
  478. package/dist-types/utils/useFloatingUI.d.ts +34 -0
  479. package/dist-types/utils/useForkRef.d.ts +2 -0
  480. package/dist-types/utils/useId.d.ts +2 -0
  481. package/dist-types/utils/useIsFocusVisible.d.ts +8 -0
  482. package/dist-types/utils/useIsomorphicLayoutEffect.d.ts +2 -0
  483. package/dist-types/utils/usePrevious.d.ts +2 -0
  484. package/dist-types/utils/useResponsiveProp.d.ts +10 -0
  485. package/dist-types/viewport/ViewportProvider.d.ts +8 -0
  486. package/dist-types/viewport/index.d.ts +1 -0
  487. package/package.json +43 -0
package/README.md ADDED
@@ -0,0 +1 @@
1
+ # Core
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ function styleInject(css, ref) {
4
+ if ( ref === void 0 ) ref = {};
5
+ var insertAt = ref.insertAt;
6
+
7
+ if (!css || typeof document === 'undefined') { return; }
8
+
9
+ var head = document.head || document.getElementsByTagName('head')[0];
10
+ var style = document.createElement('style');
11
+ style.type = 'text/css';
12
+
13
+ if (insertAt === 'top') {
14
+ if (head.firstChild) {
15
+ head.insertBefore(style, head.firstChild);
16
+ } else {
17
+ head.appendChild(style);
18
+ }
19
+ } else {
20
+ head.appendChild(style);
21
+ }
22
+
23
+ if (style.styleSheet) {
24
+ style.styleSheet.cssText = css;
25
+ } else {
26
+ style.appendChild(document.createTextNode(css));
27
+ }
28
+ }
29
+
30
+ module.exports = styleInject;
31
+ //# sourceMappingURL=style-inject.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style-inject.es.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n"],"names":[],"mappings":";;AAAA,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE;AAC/B,EAAE,KAAK,GAAG,KAAK,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;AACjC,EAAE,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;AAC9B;AACA,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,EAAE,OAAO,EAAE;AAC1D;AACA,EAAE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACvE,EAAE,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC9C,EAAE,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;AAC1B;AACA,EAAE,IAAI,QAAQ,KAAK,KAAK,EAAE;AAC1B,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;AACzB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAChD,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC9B,KAAK;AACL,GAAG,MAAM;AACT,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,GAAG;AACH;AACA,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE;AACxB,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;AACnC,GAAG,MAAM;AACT,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AACpD,GAAG;AACH;;;;"}
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var useAriaAnnouncer = require('./useAriaAnnouncer.js');
8
+
9
+ const AriaAnnounce = ({
10
+ announcement
11
+ }) => {
12
+ const { announce } = useAriaAnnouncer.useAriaAnnouncer();
13
+ React.useEffect(() => {
14
+ if (announcement) {
15
+ announce(announcement);
16
+ }
17
+ }, [announce, announcement]);
18
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {});
19
+ };
20
+
21
+ exports.AriaAnnounce = AriaAnnounce;
22
+ //# sourceMappingURL=AriaAnnounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AriaAnnounce.js","sources":["../src/aria-announcer/AriaAnnounce.tsx"],"sourcesContent":["import { ComponentType, useEffect } from \"react\";\n\nimport { useAriaAnnouncer } from \"./useAriaAnnouncer\";\n\nexport interface AriaAnnounceProps {\n /**\n * String which will be announced by screen readers on change\n */\n announcement?: string;\n}\n\nexport const AriaAnnounce: ComponentType<AriaAnnounceProps> = ({\n announcement,\n}) => {\n const { announce } = useAriaAnnouncer();\n\n useEffect(() => {\n if (announcement) {\n announce(announcement);\n }\n }, [announce, announcement]);\n\n // If we return null here, react-docgen wouldn't be able to locate the component\n return <></>;\n};\n"],"names":["useAriaAnnouncer","useEffect","jsx","Fragment"],"mappings":";;;;;;;;AAWO,MAAM,eAAiD,CAAC;AAAA,EAC7D,YAAA;AACF,CAAM,KAAA;AACJ,EAAM,MAAA,EAAE,QAAS,EAAA,GAAIA,iCAAiB,EAAA,CAAA;AAEtC,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,YAAc,EAAA;AAChB,MAAA,QAAA,CAAS,YAAY,CAAA,CAAA;AAAA,KACvB;AAAA,GACC,EAAA,CAAC,QAAU,EAAA,YAAY,CAAC,CAAA,CAAA;AAG3B,EAAA,uBAASC,cAAA,CAAAC,mBAAA,EAAA,EAAA,CAAA,CAAA;AACX;;;;"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ const AriaAnnouncerContext = React.createContext(
8
+ void 0
9
+ );
10
+
11
+ exports.AriaAnnouncerContext = AriaAnnouncerContext;
12
+ //# sourceMappingURL=AriaAnnouncerContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AriaAnnouncerContext.js","sources":["../src/aria-announcer/AriaAnnouncerContext.ts"],"sourcesContent":["import { createContext } from \"react\";\n\nexport type AnnounceFn = (announcement: string, delay?: number) => void;\n\nexport type AriaAnnouncer = {\n announce: AnnounceFn;\n};\n\nexport const AriaAnnouncerContext = createContext<AriaAnnouncer | undefined>(\n undefined\n);\n"],"names":["createContext"],"mappings":";;;;;;AAQO,MAAM,oBAAuB,GAAAA,mBAAA;AAAA,EAClC,KAAA,CAAA;AACF;;;;"}
@@ -0,0 +1,78 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var AriaAnnouncerContext = require('./AriaAnnouncerContext.js');
8
+
9
+ const ARIA_ANNOUNCE_DELAY = 150;
10
+ function AriaAnnouncerProvider({
11
+ children,
12
+ style
13
+ }) {
14
+ const [currentAnnouncement, setCurrentAnnouncement] = React.useState("");
15
+ const announcementsRef = React.useRef([]);
16
+ const isAnnouncingRef = React.useRef(false);
17
+ const mountedRef = React.useRef(true);
18
+ const announceAll = React.useCallback(() => {
19
+ isAnnouncingRef.current = true;
20
+ if (mountedRef.current) {
21
+ setCurrentAnnouncement("");
22
+ requestAnimationFrame(() => {
23
+ if (mountedRef.current && announcementsRef.current.length) {
24
+ const announcement = announcementsRef.current.shift();
25
+ setCurrentAnnouncement(announcement);
26
+ setTimeout(() => {
27
+ announceAll();
28
+ }, ARIA_ANNOUNCE_DELAY);
29
+ } else {
30
+ isAnnouncingRef.current = false;
31
+ }
32
+ });
33
+ }
34
+ }, []);
35
+ const announce = React.useCallback(
36
+ (announcement) => {
37
+ announcementsRef.current.push(announcement);
38
+ if (!isAnnouncingRef.current) {
39
+ announceAll();
40
+ }
41
+ },
42
+ [announceAll]
43
+ );
44
+ React.useEffect(() => {
45
+ mountedRef.current = true;
46
+ return () => {
47
+ mountedRef.current = false;
48
+ };
49
+ }, []);
50
+ const value = React.useMemo(() => ({ announce }), [announce]);
51
+ return /* @__PURE__ */ jsxRuntime.jsxs(AriaAnnouncerContext.AriaAnnouncerContext.Provider, {
52
+ value,
53
+ children: [
54
+ children,
55
+ /* @__PURE__ */ jsxRuntime.jsx("div", {
56
+ "aria-atomic": "true",
57
+ "aria-live": "assertive",
58
+ style: {
59
+ position: "absolute",
60
+ height: 1,
61
+ width: 1,
62
+ padding: 0,
63
+ margin: -1,
64
+ overflow: "hidden",
65
+ clip: "rect(0, 0, 0, 0)",
66
+ whiteSpace: "nowrap",
67
+ borderWidth: 0,
68
+ ...style
69
+ },
70
+ children: currentAnnouncement
71
+ })
72
+ ]
73
+ });
74
+ }
75
+
76
+ exports.ARIA_ANNOUNCE_DELAY = ARIA_ANNOUNCE_DELAY;
77
+ exports.AriaAnnouncerProvider = AriaAnnouncerProvider;
78
+ //# sourceMappingURL=AriaAnnouncerProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AriaAnnouncerProvider.js","sources":["../src/aria-announcer/AriaAnnouncerProvider.tsx"],"sourcesContent":["import {\n CSSProperties,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { AriaAnnouncerContext } from \"./AriaAnnouncerContext\";\n\nexport const ARIA_ANNOUNCE_DELAY = 150;\n\nexport interface AriaAnnouncerProviderProps {\n children?: ReactNode;\n /**\n * Style overrides for the aria-live element\n */\n style?: CSSProperties;\n}\n\nexport function AriaAnnouncerProvider({\n children,\n style,\n}: AriaAnnouncerProviderProps) {\n // announcement that gets rendered inside aria-live and read out by screen readers\n const [currentAnnouncement, setCurrentAnnouncement] = useState(\"\");\n // queue that stores all the requested announcements\n const announcementsRef = useRef<string[]>([]);\n // we use this variable to decide whether to start the announcement queue if one is not already in progress\n const isAnnouncingRef = useRef(false);\n // we need to keep track of the state of the component mount since all the async function calls\n // might trigger a setState after a component has been unmounted\n const mountedRef = useRef(true);\n\n // announceAll will get called recursively until all the announcements are rendered and cleared from the queue\n const announceAll = useCallback(() => {\n isAnnouncingRef.current = true;\n if (mountedRef.current) {\n setCurrentAnnouncement(\"\");\n requestAnimationFrame(() => {\n if (mountedRef.current && announcementsRef.current.length) {\n const announcement = announcementsRef.current.shift() as string;\n setCurrentAnnouncement(announcement);\n setTimeout(() => {\n announceAll();\n }, ARIA_ANNOUNCE_DELAY);\n } else {\n isAnnouncingRef.current = false;\n }\n });\n }\n }, []);\n\n const announce = useCallback(\n (announcement: string) => {\n announcementsRef.current.push(announcement);\n if (!isAnnouncingRef.current) {\n announceAll();\n }\n },\n [announceAll]\n );\n\n useEffect(() => {\n mountedRef.current = true;\n return () => {\n mountedRef.current = false;\n };\n }, []);\n\n const value = useMemo(() => ({ announce }), [announce]);\n return (\n <AriaAnnouncerContext.Provider value={value}>\n {children}\n <div\n aria-atomic=\"true\"\n aria-live=\"assertive\"\n // hidden styling based on https://tailwindcss.com/docs/screen-readers\n style={{\n position: \"absolute\",\n height: 1,\n width: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n borderWidth: 0,\n ...style,\n }}\n >\n {currentAnnouncement}\n </div>\n </AriaAnnouncerContext.Provider>\n );\n}\n"],"names":["useState","useRef","useCallback","useEffect","useMemo","jsxs","AriaAnnouncerContext","jsx"],"mappings":";;;;;;;;AAYO,MAAM,mBAAsB,GAAA,IAAA;AAU5B,SAAS,qBAAsB,CAAA;AAAA,EACpC,QAAA;AAAA,EACA,KAAA;AACF,CAA+B,EAAA;AAE7B,EAAA,MAAM,CAAC,mBAAA,EAAqB,sBAAsB,CAAA,GAAIA,eAAS,EAAE,CAAA,CAAA;AAEjE,EAAM,MAAA,gBAAA,GAAmBC,YAAiB,CAAA,EAAE,CAAA,CAAA;AAE5C,EAAM,MAAA,eAAA,GAAkBA,aAAO,KAAK,CAAA,CAAA;AAGpC,EAAM,MAAA,UAAA,GAAaA,aAAO,IAAI,CAAA,CAAA;AAG9B,EAAM,MAAA,WAAA,GAAcC,kBAAY,MAAM;AACpC,IAAA,eAAA,CAAgB,OAAU,GAAA,IAAA,CAAA;AAC1B,IAAA,IAAI,WAAW,OAAS,EAAA;AACtB,MAAA,sBAAA,CAAuB,EAAE,CAAA,CAAA;AACzB,MAAA,qBAAA,CAAsB,MAAM;AAC1B,QAAA,IAAI,UAAW,CAAA,OAAA,IAAW,gBAAiB,CAAA,OAAA,CAAQ,MAAQ,EAAA;AACzD,UAAM,MAAA,YAAA,GAAe,gBAAiB,CAAA,OAAA,CAAQ,KAAM,EAAA,CAAA;AACpD,UAAA,sBAAA,CAAuB,YAAY,CAAA,CAAA;AACnC,UAAA,UAAA,CAAW,MAAM;AACf,YAAY,WAAA,EAAA,CAAA;AAAA,aACX,mBAAmB,CAAA,CAAA;AAAA,SACjB,MAAA;AACL,UAAA,eAAA,CAAgB,OAAU,GAAA,KAAA,CAAA;AAAA,SAC5B;AAAA,OACD,CAAA,CAAA;AAAA,KACH;AAAA,GACF,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,MAAM,QAAW,GAAAA,iBAAA;AAAA,IACf,CAAC,YAAyB,KAAA;AACxB,MAAiB,gBAAA,CAAA,OAAA,CAAQ,KAAK,YAAY,CAAA,CAAA;AAC1C,MAAI,IAAA,CAAC,gBAAgB,OAAS,EAAA;AAC5B,QAAY,WAAA,EAAA,CAAA;AAAA,OACd;AAAA,KACF;AAAA,IACA,CAAC,WAAW,CAAA;AAAA,GACd,CAAA;AAEA,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,UAAA,CAAW,OAAU,GAAA,IAAA,CAAA;AACrB,IAAA,OAAO,MAAM;AACX,MAAA,UAAA,CAAW,OAAU,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAAA,GACF,EAAG,EAAE,CAAA,CAAA;AAEL,EAAM,MAAA,KAAA,GAAQC,cAAQ,OAAO,EAAE,UAAa,CAAA,EAAA,CAAC,QAAQ,CAAC,CAAA,CAAA;AACtD,EACE,uBAAAC,eAAA,CAACC,0CAAqB,QAArB,EAAA;AAAA,IAA8B,KAAA;AAAA,IAC5B,QAAA,EAAA;AAAA,MAAA,QAAA;AAAA,sBACAC,cAAA,CAAA,KAAA,EAAA;AAAA,QACC,aAAY,EAAA,MAAA;AAAA,QACZ,WAAU,EAAA,WAAA;AAAA,QAEV,KAAO,EAAA;AAAA,UACL,QAAU,EAAA,UAAA;AAAA,UACV,MAAQ,EAAA,CAAA;AAAA,UACR,KAAO,EAAA,CAAA;AAAA,UACP,OAAS,EAAA,CAAA;AAAA,UACT,MAAQ,EAAA,CAAA,CAAA;AAAA,UACR,QAAU,EAAA,QAAA;AAAA,UACV,IAAM,EAAA,kBAAA;AAAA,UACN,UAAY,EAAA,QAAA;AAAA,UACZ,WAAa,EAAA,CAAA;AAAA,UACb,GAAG,KAAA;AAAA,SACL;AAAA,QAEC,QAAA,EAAA,mBAAA;AAAA,OACH,CAAA;AAAA,KAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;;"}
@@ -0,0 +1,67 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var debounce = require('../utils/debounce.js');
7
+ require('../utils/useFloatingUI.js');
8
+ require('../utils/useId.js');
9
+ require('../salt-provider/SaltProvider.js');
10
+ require('../viewport/ViewportProvider.js');
11
+ require('clsx');
12
+ var AriaAnnouncerContext = require('./AriaAnnouncerContext.js');
13
+
14
+ let warnedOnce = false;
15
+ const useAriaAnnouncer = ({
16
+ debounce: debounceInterval = 0
17
+ } = {}) => {
18
+ const context = React.useContext(AriaAnnouncerContext.AriaAnnouncerContext);
19
+ const mountedRef = React.useRef(true);
20
+ const baseAnnounce = React.useCallback(
21
+ (announcement, delay) => {
22
+ const isReactAnnouncerInstalled = context && context.announce;
23
+ if (process.env.NODE_ENV !== "production") {
24
+ if (isReactAnnouncerInstalled && warnedOnce) {
25
+ console.warn(
26
+ "useAriaAnnouncer is being used without an AriaAnnouncerProvider. Your application should be wrapped in an AriaAnnouncerProvider"
27
+ );
28
+ warnedOnce = true;
29
+ }
30
+ }
31
+ function makeAnnouncement() {
32
+ if (mountedRef.current) {
33
+ if (isReactAnnouncerInstalled) {
34
+ context.announce(announcement);
35
+ }
36
+ }
37
+ }
38
+ if (delay) {
39
+ setTimeout(makeAnnouncement, delay);
40
+ } else {
41
+ makeAnnouncement();
42
+ }
43
+ },
44
+ [context]
45
+ );
46
+ const announce = React.useMemo(
47
+ () => debounceInterval > 0 ? debounce.debounce(baseAnnounce, debounceInterval) : baseAnnounce,
48
+ [baseAnnounce, debounceInterval]
49
+ );
50
+ const ariaAnnouncer = React.useMemo(
51
+ () => ({
52
+ ...context,
53
+ announce
54
+ }),
55
+ [context, announce]
56
+ );
57
+ React.useEffect(() => {
58
+ mountedRef.current = true;
59
+ return () => {
60
+ mountedRef.current = false;
61
+ };
62
+ }, []);
63
+ return ariaAnnouncer;
64
+ };
65
+
66
+ exports.useAriaAnnouncer = useAriaAnnouncer;
67
+ //# sourceMappingURL=useAriaAnnouncer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAriaAnnouncer.js","sources":["../src/aria-announcer/useAriaAnnouncer.ts"],"sourcesContent":["import { useCallback, useContext, useEffect, useMemo, useRef } from \"react\";\nimport { debounce } from \"../utils\";\nimport { AriaAnnouncer, AriaAnnouncerContext } from \"./AriaAnnouncerContext\";\n\nexport type useAnnouncerOptions = {\n debounce?: number;\n};\nexport type useAriaAnnouncerHook = (\n options?: useAnnouncerOptions\n) => AriaAnnouncer;\n\nlet warnedOnce = false;\n\nexport const useAriaAnnouncer: useAriaAnnouncerHook = ({\n debounce: debounceInterval = 0,\n} = {}) => {\n const context = useContext(AriaAnnouncerContext);\n const mountedRef = useRef(true);\n const baseAnnounce = useCallback(\n (announcement: string, delay?: number) => {\n const isReactAnnouncerInstalled = context && context.announce;\n\n if (process.env.NODE_ENV !== \"production\") {\n if (isReactAnnouncerInstalled && warnedOnce) {\n console.warn(\n \"useAriaAnnouncer is being used without an AriaAnnouncerProvider. Your application should be wrapped in an AriaAnnouncerProvider\"\n );\n warnedOnce = true;\n }\n }\n\n function makeAnnouncement() {\n if (mountedRef.current) {\n if (isReactAnnouncerInstalled) {\n context.announce(announcement);\n }\n }\n }\n\n if (delay) {\n setTimeout(makeAnnouncement, delay);\n } else {\n makeAnnouncement();\n }\n },\n [context]\n );\n\n const announce = useMemo(\n () =>\n debounceInterval > 0\n ? debounce(baseAnnounce, debounceInterval)\n : baseAnnounce,\n [baseAnnounce, debounceInterval]\n );\n\n const ariaAnnouncer = useMemo(\n () => ({\n ...context,\n announce,\n }),\n [context, announce]\n );\n\n useEffect(() => {\n mountedRef.current = true;\n return () => {\n mountedRef.current = false;\n };\n }, []);\n\n return ariaAnnouncer;\n};\n"],"names":["useContext","AriaAnnouncerContext","useRef","useCallback","useMemo","debounce","useEffect"],"mappings":";;;;;;;;;;;;;AAWA,IAAI,UAAa,GAAA,KAAA,CAAA;AAEV,MAAM,mBAAyC,CAAC;AAAA,EACrD,UAAU,gBAAmB,GAAA,CAAA;AAC/B,CAAA,GAAI,EAAO,KAAA;AACT,EAAM,MAAA,OAAA,GAAUA,iBAAWC,yCAAoB,CAAA,CAAA;AAC/C,EAAM,MAAA,UAAA,GAAaC,aAAO,IAAI,CAAA,CAAA;AAC9B,EAAA,MAAM,YAAe,GAAAC,iBAAA;AAAA,IACnB,CAAC,cAAsB,KAAmB,KAAA;AACxC,MAAM,MAAA,yBAAA,GAA4B,WAAW,OAAQ,CAAA,QAAA,CAAA;AAErD,MAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,QAAA,KAAa,YAAc,EAAA;AACzC,QAAA,IAAI,6BAA6B,UAAY,EAAA;AAC3C,UAAQ,OAAA,CAAA,IAAA;AAAA,YACN,iIAAA;AAAA,WACF,CAAA;AACA,UAAa,UAAA,GAAA,IAAA,CAAA;AAAA,SACf;AAAA,OACF;AAEA,MAAA,SAAS,gBAAmB,GAAA;AAC1B,QAAA,IAAI,WAAW,OAAS,EAAA;AACtB,UAAA,IAAI,yBAA2B,EAAA;AAC7B,YAAA,OAAA,CAAQ,SAAS,YAAY,CAAA,CAAA;AAAA,WAC/B;AAAA,SACF;AAAA,OACF;AAEA,MAAA,IAAI,KAAO,EAAA;AACT,QAAA,UAAA,CAAW,kBAAkB,KAAK,CAAA,CAAA;AAAA,OAC7B,MAAA;AACL,QAAiB,gBAAA,EAAA,CAAA;AAAA,OACnB;AAAA,KACF;AAAA,IACA,CAAC,OAAO,CAAA;AAAA,GACV,CAAA;AAEA,EAAA,MAAM,QAAW,GAAAC,aAAA;AAAA,IACf,MACE,gBAAmB,GAAA,CAAA,GACfC,iBAAS,CAAA,YAAA,EAAc,gBAAgB,CACvC,GAAA,YAAA;AAAA,IACN,CAAC,cAAc,gBAAgB,CAAA;AAAA,GACjC,CAAA;AAEA,EAAA,MAAM,aAAgB,GAAAD,aAAA;AAAA,IACpB,OAAO;AAAA,MACL,GAAG,OAAA;AAAA,MACH,QAAA;AAAA,KACF,CAAA;AAAA,IACA,CAAC,SAAS,QAAQ,CAAA;AAAA,GACpB,CAAA;AAEA,EAAAE,eAAA,CAAU,MAAM;AACd,IAAA,UAAA,CAAW,OAAU,GAAA,IAAA,CAAA;AACrB,IAAA,OAAO,MAAM;AACX,MAAA,UAAA,CAAW,OAAU,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAAA,GACF,EAAG,EAAE,CAAA,CAAA;AAEL,EAAO,OAAA,aAAA,CAAA;AACT;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
+
5
+ var css_248z = "/* Default variables applied to the root element */\n.saltAvatar {\n --avatar-foreground: var(--saltAvatar-foreground, var(--salt-accent-foreground));\n --avatar-size-multiplier: var(--saltAvatar-size-multiplier, 1);\n --avatar-base-size: var(--salt-size-base, 12px);\n --avatar-base-fontSize: var(--saltAvatar-fontSize, var(--salt-accent-fontSize));\n --avatar-container-size: calc(var(--avatar-base-size) * var(--avatar-size-multiplier));\n --avatar-fontSize: calc(var(--avatar-base-fontSize) * var(--avatar-size-multiplier));\n /* Icon styling */\n --saltIcon-color: var(--avatar-foreground);\n --salt-icon-size-base: calc(var(--avatar-container-size) / 2);\n}\n\n/* Style applied to the root element */\n.saltAvatar {\n line-height: var(--saltAvatar-lineHeight, var(--salt-accent-lineHeight));\n display: flex;\n justify-content: center;\n align-items: center;\n background: var(--saltAvatar-background, var(--salt-accent-background));\n color: var(--avatar-foreground);\n font-size: var(--avatar-fontSize);\n width: var(--avatar-container-size);\n min-width: var(--avatar-container-size);\n height: var(--avatar-container-size);\n min-height: var(--avatar-container-size);\n overflow: hidden;\n user-select: none;\n border-radius: 50%;\n}\n.saltAvatar:has(img),\n.saltAvatar-withImage {\n background: none;\n}\n/* Style applied to the image/svg element. We specifically allow SVGs as the Avatar image to enable SVGs such as Flags to take up the full Avatar space */\n.saltAvatar > img,\n.saltAvatar > svg:not(.saltIcon) {\n width: 100%;\n height: 100%;\n}\n";
6
+ styleInject_es(css_248z);
7
+
8
+ module.exports = css_248z;
9
+ //# sourceMappingURL=Avatar.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var icons = require('@salt-ds/icons');
7
+ var window = require('@salt-ds/window');
8
+ var styles = require('@salt-ds/styles');
9
+ var clsx = require('clsx');
10
+ var React = require('react');
11
+ var useAvatarImage = require('./useAvatarImage.js');
12
+ var makePrefixer = require('../utils/makePrefixer.js');
13
+ require('../utils/useFloatingUI.js');
14
+ require('../utils/useId.js');
15
+ require('../salt-provider/SaltProvider.js');
16
+ require('../viewport/ViewportProvider.js');
17
+ var Avatar$1 = require('./Avatar.css.js');
18
+
19
+ const withBaseName = makePrefixer.makePrefixer("saltAvatar");
20
+ const DEFAULT_AVATAR_SIZE = 2;
21
+ const defaultNameToInitials = (name) => name == null ? void 0 : name.split(" ").slice(0, 2).map((n) => n[0]).join("").toUpperCase();
22
+ const Avatar = React.forwardRef(function Avatar2({
23
+ className,
24
+ children: childrenProp,
25
+ name,
26
+ nameToInitials = defaultNameToInitials,
27
+ src,
28
+ size = DEFAULT_AVATAR_SIZE,
29
+ style: styleProp,
30
+ fallbackIcon = /* @__PURE__ */ jsxRuntime.jsx(icons.UserSolidIcon, {
31
+ "aria-label": "User Avatar"
32
+ }),
33
+ ...rest
34
+ }, ref) {
35
+ const { window: targetWindow } = window.useWindow();
36
+ styles.useComponentCssInjection({
37
+ id: "salt-avatar",
38
+ css: Avatar$1,
39
+ window: targetWindow
40
+ });
41
+ let children;
42
+ const style = {
43
+ ...styleProp,
44
+ "--saltAvatar-size-multiplier": `${size}`
45
+ };
46
+ const status = useAvatarImage.useAvatarImage({ src });
47
+ const hasImgNotFailing = status === "loaded";
48
+ if (hasImgNotFailing) {
49
+ children = /* @__PURE__ */ jsxRuntime.jsx("img", {
50
+ alt: name,
51
+ src
52
+ });
53
+ } else if (childrenProp != null) {
54
+ children = childrenProp;
55
+ }
56
+ const avatarInitials = nameToInitials(name);
57
+ const initialsProps = avatarInitials ? {
58
+ role: "img",
59
+ "aria-label": name
60
+ } : {};
61
+ return /* @__PURE__ */ jsxRuntime.jsx("div", {
62
+ ref,
63
+ style,
64
+ className: clsx.clsx(
65
+ withBaseName(),
66
+ { [withBaseName("withImage")]: hasImgNotFailing },
67
+ className
68
+ ),
69
+ ...initialsProps,
70
+ ...rest,
71
+ children: children || avatarInitials || fallbackIcon
72
+ });
73
+ });
74
+
75
+ exports.Avatar = Avatar;
76
+ //# sourceMappingURL=Avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.js","sources":["../src/avatar/Avatar.tsx"],"sourcesContent":["import { UserSolidIcon } from \"@salt-ds/icons\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { clsx } from \"clsx\";\nimport { forwardRef, HTMLAttributes, ReactNode } from \"react\";\nimport { useAvatarImage } from \"./useAvatarImage\";\n\nimport { makePrefixer } from \"../utils\";\nimport avatarCss from \"./Avatar.css\";\n\nexport type NameToInitials = (name?: string) => string;\n\nexport interface AvatarProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * The name that Avatar represents.\n */\n name?: string;\n /**\n * Defines the function that gets initials. Default is capital first letter of each separate word in name.\n * If a function is not passed or returns undefined, Avatar will default to Icon.\n */\n nameToInitials?: NameToInitials;\n /**\n * Image src of Avatar.\n */\n src?: string;\n /**\n * Multiplier for the base avatar.\n */\n size?: number;\n /**\n * Icon to be used as a default item. Defaults to `UserIcon`\n */\n fallbackIcon?: ReactNode;\n}\n\nconst withBaseName = makePrefixer(\"saltAvatar\");\nconst DEFAULT_AVATAR_SIZE = 2; // medium\n\nconst defaultNameToInitials = (name?: string) =>\n name\n ?.split(\" \")\n .slice(0, 2)\n .map((n) => n[0])\n .join(\"\")\n .toUpperCase();\n\nexport const Avatar = forwardRef<HTMLDivElement, AvatarProps>(function Avatar(\n {\n className,\n children: childrenProp,\n name,\n nameToInitials = defaultNameToInitials,\n src,\n size = DEFAULT_AVATAR_SIZE,\n style: styleProp,\n fallbackIcon = <UserSolidIcon aria-label=\"User Avatar\" />,\n ...rest\n },\n ref\n) {\n const { window: targetWindow } = useWindow();\n useComponentCssInjection({\n id: \"salt-avatar\",\n css: avatarCss,\n window: targetWindow,\n });\n\n let children;\n\n const style = {\n ...styleProp,\n \"--saltAvatar-size-multiplier\": `${size}`,\n };\n\n const status = useAvatarImage({ src });\n const hasImgNotFailing = status === \"loaded\";\n if (hasImgNotFailing) {\n children = <img alt={name} src={src} />;\n } else if (childrenProp != null) {\n children = childrenProp;\n }\n\n const avatarInitials = nameToInitials(name);\n\n const initialsProps = avatarInitials\n ? {\n role: \"img\",\n \"aria-label\": name,\n }\n : {};\n\n return (\n <div\n ref={ref}\n style={style}\n className={clsx(\n withBaseName(),\n { [withBaseName(\"withImage\")]: hasImgNotFailing },\n className\n )}\n {...initialsProps}\n {...rest}\n >\n {children || avatarInitials || fallbackIcon}\n </div>\n );\n});\n"],"names":["makePrefixer","forwardRef","Avatar","jsx","UserSolidIcon","useWindow","useComponentCssInjection","avatarCss","useAvatarImage","clsx"],"mappings":";;;;;;;;;;;;;;;;;;AAoCA,MAAM,YAAA,GAAeA,0BAAa,YAAY,CAAA,CAAA;AAC9C,MAAM,mBAAsB,GAAA,CAAA,CAAA;AAE5B,MAAM,qBAAwB,GAAA,CAAC,IAC7B,KAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CACI,MAAM,GACP,CAAA,CAAA,KAAA,CAAM,CAAG,EAAA,CAAA,CAAA,CACT,IAAI,CAAC,CAAA,KAAM,CAAE,CAAA,CAAA,CAAA,CAAA,CACb,KAAK,EACL,CAAA,CAAA,WAAA,EAAA,CAAA;AAEQ,MAAA,MAAA,GAASC,gBAAwC,CAAA,SAASC,OACrE,CAAA;AAAA,EACE,SAAA;AAAA,EACA,QAAU,EAAA,YAAA;AAAA,EACV,IAAA;AAAA,EACA,cAAiB,GAAA,qBAAA;AAAA,EACjB,GAAA;AAAA,EACA,IAAO,GAAA,mBAAA;AAAA,EACP,KAAO,EAAA,SAAA;AAAA,EACP,+BAAgBC,cAAA,CAAAC,mBAAA,EAAA;AAAA,IAAc,YAAW,EAAA,aAAA;AAAA,GAAc,CAAA;AAAA,EACpD,GAAA,IAAA;AACL,CAAA,EACA,GACA,EAAA;AACA,EAAA,MAAM,EAAE,MAAA,EAAQ,YAAa,EAAA,GAAIC,gBAAU,EAAA,CAAA;AAC3C,EAAyBC,+BAAA,CAAA;AAAA,IACvB,EAAI,EAAA,aAAA;AAAA,IACJ,GAAK,EAAAC,QAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAI,IAAA,QAAA,CAAA;AAEJ,EAAA,MAAM,KAAQ,GAAA;AAAA,IACZ,GAAG,SAAA;AAAA,IACH,gCAAgC,CAAG,EAAA,IAAA,CAAA,CAAA;AAAA,GACrC,CAAA;AAEA,EAAA,MAAM,MAAS,GAAAC,6BAAA,CAAe,EAAE,GAAA,EAAK,CAAA,CAAA;AACrC,EAAA,MAAM,mBAAmB,MAAW,KAAA,QAAA,CAAA;AACpC,EAAA,IAAI,gBAAkB,EAAA;AACpB,IAAA,QAAA,mBAAYL,cAAA,CAAA,KAAA,EAAA;AAAA,MAAI,GAAK,EAAA,IAAA;AAAA,MAAM,GAAA;AAAA,KAAU,CAAA,CAAA;AAAA,GACvC,MAAA,IAAW,gBAAgB,IAAM,EAAA;AAC/B,IAAW,QAAA,GAAA,YAAA,CAAA;AAAA,GACb;AAEA,EAAM,MAAA,cAAA,GAAiB,eAAe,IAAI,CAAA,CAAA;AAE1C,EAAA,MAAM,gBAAgB,cAClB,GAAA;AAAA,IACE,IAAM,EAAA,KAAA;AAAA,IACN,YAAc,EAAA,IAAA;AAAA,MAEhB,EAAC,CAAA;AAEL,EAAA,uBACGA,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,KAAA;AAAA,IACA,SAAW,EAAAM,SAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb,EAAE,CAAC,YAAa,CAAA,WAAW,IAAI,gBAAiB,EAAA;AAAA,MAChD,SAAA;AAAA,KACF;AAAA,IACC,GAAG,aAAA;AAAA,IACH,GAAG,IAAA;AAAA,IAEH,sBAAY,cAAkB,IAAA,YAAA;AAAA,GACjC,CAAA,CAAA;AAEJ,CAAC;;;;"}
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ require('../utils/useFloatingUI.js');
7
+ require('../utils/useId.js');
8
+ var useIsomorphicLayoutEffect = require('../utils/useIsomorphicLayoutEffect.js');
9
+ require('../salt-provider/SaltProvider.js');
10
+ require('../viewport/ViewportProvider.js');
11
+ require('clsx');
12
+
13
+ function useAvatarImage({ src }) {
14
+ const [status, setStatus] = React.useState("loading");
15
+ React.useEffect(() => {
16
+ setStatus(src ? "loading" : "pending");
17
+ }, [src]);
18
+ useIsomorphicLayoutEffect.useIsomorphicLayoutEffect(() => {
19
+ if (!src) {
20
+ return;
21
+ }
22
+ let active = true;
23
+ const image = new Image();
24
+ image.src = src;
25
+ const onLoad = () => active && setStatus("loaded");
26
+ const onError = () => active && setStatus("error");
27
+ image.addEventListener("load", onLoad, { once: true });
28
+ image.addEventListener("error", onError, { once: true });
29
+ return () => {
30
+ image.removeEventListener("load", onLoad);
31
+ image.removeEventListener("load", onError);
32
+ active = false;
33
+ };
34
+ }, [src]);
35
+ return status;
36
+ }
37
+
38
+ exports.useAvatarImage = useAvatarImage;
39
+ //# sourceMappingURL=useAvatarImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAvatarImage.js","sources":["../src/avatar/useAvatarImage.ts"],"sourcesContent":["import { ImgHTMLAttributes, useEffect, useState } from \"react\";\nimport { useIsomorphicLayoutEffect } from \"../utils\";\n\nexport function useAvatarImage({ src }: ImgHTMLAttributes<HTMLImageElement>) {\n const [status, setStatus] = useState<\n \"pending\" | \"loading\" | \"loaded\" | \"error\"\n >(\"loading\");\n\n useEffect(() => {\n setStatus(src ? \"loading\" : \"pending\");\n }, [src]);\n\n useIsomorphicLayoutEffect(() => {\n if (!src) {\n return;\n }\n\n let active = true;\n const image = new Image();\n image.src = src;\n const onLoad = () => active && setStatus(\"loaded\");\n const onError = () => active && setStatus(\"error\");\n\n image.addEventListener(\"load\", onLoad, { once: true });\n image.addEventListener(\"error\", onError, { once: true });\n\n return () => {\n image.removeEventListener(\"load\", onLoad);\n image.removeEventListener(\"load\", onError);\n active = false;\n };\n }, [src]);\n\n return status;\n}\n"],"names":["useState","useEffect","useIsomorphicLayoutEffect"],"mappings":";;;;;;;;;;;;AAGgB,SAAA,cAAA,CAAe,EAAE,GAAA,EAA4C,EAAA;AAC3E,EAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAIA,eAE1B,SAAS,CAAA,CAAA;AAEX,EAAAC,eAAA,CAAU,MAAM;AACd,IAAU,SAAA,CAAA,GAAA,GAAM,YAAY,SAAS,CAAA,CAAA;AAAA,GACvC,EAAG,CAAC,GAAG,CAAC,CAAA,CAAA;AAER,EAAAC,mDAAA,CAA0B,MAAM;AAC9B,IAAA,IAAI,CAAC,GAAK,EAAA;AACR,MAAA,OAAA;AAAA,KACF;AAEA,IAAA,IAAI,MAAS,GAAA,IAAA,CAAA;AACb,IAAM,MAAA,KAAA,GAAQ,IAAI,KAAM,EAAA,CAAA;AACxB,IAAA,KAAA,CAAM,GAAM,GAAA,GAAA,CAAA;AACZ,IAAA,MAAM,MAAS,GAAA,MAAM,MAAU,IAAA,SAAA,CAAU,QAAQ,CAAA,CAAA;AACjD,IAAA,MAAM,OAAU,GAAA,MAAM,MAAU,IAAA,SAAA,CAAU,OAAO,CAAA,CAAA;AAEjD,IAAA,KAAA,CAAM,iBAAiB,MAAQ,EAAA,MAAA,EAAQ,EAAE,IAAA,EAAM,MAAM,CAAA,CAAA;AACrD,IAAA,KAAA,CAAM,iBAAiB,OAAS,EAAA,OAAA,EAAS,EAAE,IAAA,EAAM,MAAM,CAAA,CAAA;AAEvD,IAAA,OAAO,MAAM;AACX,MAAM,KAAA,CAAA,mBAAA,CAAoB,QAAQ,MAAM,CAAA,CAAA;AACxC,MAAM,KAAA,CAAA,mBAAA,CAAoB,QAAQ,OAAO,CAAA,CAAA;AACzC,MAAS,MAAA,GAAA,KAAA,CAAA;AAAA,KACX,CAAA;AAAA,GACF,EAAG,CAAC,GAAG,CAAC,CAAA,CAAA;AAER,EAAO,OAAA,MAAA,CAAA;AACT;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
+
5
+ var css_248z = "/* Style applied to BorderItem when `sticky` positioning is on */\n.saltBorderItem-sticky {\n position: sticky;\n overflow: auto;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n";
6
+ styleInject_es(css_248z);
7
+
8
+ module.exports = css_248z;
9
+ //# sourceMappingURL=BorderItem.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BorderItem.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var clsx = require('clsx');
8
+ var GridItem = require('../grid-item/GridItem.js');
9
+ var BorderItem$1 = require('./BorderItem.css.js');
10
+ var makePrefixer = require('../utils/makePrefixer.js');
11
+ require('../utils/useFloatingUI.js');
12
+ require('../utils/useId.js');
13
+ require('../salt-provider/SaltProvider.js');
14
+ require('../viewport/ViewportProvider.js');
15
+ var window = require('@salt-ds/window');
16
+ var styles = require('@salt-ds/styles');
17
+
18
+ const BORDER_POSITION = [
19
+ "north",
20
+ "west",
21
+ "center",
22
+ "east",
23
+ "south"
24
+ ];
25
+ const withBaseName = makePrefixer.makePrefixer("saltBorderItem");
26
+ const BorderItem = React.forwardRef(
27
+ ({
28
+ children,
29
+ className,
30
+ position,
31
+ sticky = false,
32
+ style,
33
+ ...rest
34
+ }, ref) => {
35
+ const { window: targetWindow } = window.useWindow();
36
+ styles.useComponentCssInjection({
37
+ id: "salt-border-item",
38
+ css: BorderItem$1,
39
+ window: targetWindow
40
+ });
41
+ const gridItemStyles = {
42
+ ...style,
43
+ "--gridItem-gridArea": position
44
+ };
45
+ return /* @__PURE__ */ jsxRuntime.jsx(GridItem.GridItem, {
46
+ ref,
47
+ className: clsx.clsx(
48
+ withBaseName(),
49
+ "saltGridItem-area",
50
+ {
51
+ [withBaseName("sticky")]: sticky
52
+ },
53
+ className
54
+ ),
55
+ style: gridItemStyles,
56
+ ...rest,
57
+ children
58
+ });
59
+ }
60
+ );
61
+
62
+ exports.BORDER_POSITION = BORDER_POSITION;
63
+ exports.BorderItem = BorderItem;
64
+ //# sourceMappingURL=BorderItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BorderItem.js","sources":["../src/border-item/BorderItem.tsx"],"sourcesContent":["import { forwardRef, ElementType, ReactElement } from \"react\";\nimport { clsx } from \"clsx\";\nimport { GridItem, GridItemProps } from \"../grid-item\";\nimport borderItemCss from \"./BorderItem.css\";\nimport {\n makePrefixer,\n PolymorphicComponentPropWithRef,\n PolymorphicRef,\n} from \"../utils\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nexport const BORDER_POSITION = [\n \"north\",\n \"west\",\n \"center\",\n \"east\",\n \"south\",\n] as const;\n\nexport type BorderPosition = typeof BORDER_POSITION[number];\n\nexport type BorderItemProps<T extends ElementType> =\n PolymorphicComponentPropWithRef<\n T,\n {\n /**\n * Aligns a grid item inside a cell along the inline (row) axis. Defaults to \"stretch\"\n */\n horizontalAlignment?: GridItemProps<T>[\"horizontalAlignment\"];\n /**\n * Aligns a grid item inside a cell along the block (column) axis. Defaults to \"stretch\"\n */\n verticalAlignment?: GridItemProps<T>[\"verticalAlignment\"];\n /**\n * Position in the Border Layout\n */\n position: BorderPosition;\n /**\n * Defines if the item should stick to the edges of its container. Defaults to \"false\"\n */\n sticky?: boolean;\n }\n >;\n\nconst withBaseName = makePrefixer(\"saltBorderItem\");\n\ntype BorderItemComponent = <T extends ElementType = \"div\">(\n props: BorderItemProps<T>\n) => ReactElement | null;\n\nexport const BorderItem: BorderItemComponent = forwardRef(\n <T extends ElementType>(\n {\n children,\n className,\n position,\n sticky = false,\n style,\n ...rest\n }: BorderItemProps<T>,\n ref?: PolymorphicRef<T>\n ) => {\n const { window: targetWindow } = useWindow();\n useComponentCssInjection({\n id: \"salt-border-item\",\n css: borderItemCss,\n window: targetWindow,\n });\n\n const gridItemStyles = {\n ...style,\n \"--gridItem-gridArea\": position,\n };\n\n return (\n <GridItem\n ref={ref}\n className={clsx(\n withBaseName(),\n \"saltGridItem-area\",\n {\n [withBaseName(\"sticky\")]: sticky,\n },\n className\n )}\n style={gridItemStyles}\n {...rest}\n >\n {children}\n </GridItem>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","useWindow","useComponentCssInjection","borderItemCss","jsx","GridItem","clsx"],"mappings":";;;;;;;;;;;;;;;;;AAYO,MAAM,eAAkB,GAAA;AAAA,EAC7B,OAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AACF,EAAA;AA2BA,MAAM,YAAA,GAAeA,0BAAa,gBAAgB,CAAA,CAAA;AAM3C,MAAM,UAAkC,GAAAC,gBAAA;AAAA,EAC7C,CACE;AAAA,IACE,QAAA;AAAA,IACA,SAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAS,GAAA,KAAA;AAAA,IACT,KAAA;AAAA,IACG,GAAA,IAAA;AAAA,KAEL,GACG,KAAA;AACH,IAAA,MAAM,EAAE,MAAA,EAAQ,YAAa,EAAA,GAAIC,gBAAU,EAAA,CAAA;AAC3C,IAAyBC,+BAAA,CAAA;AAAA,MACvB,EAAI,EAAA,kBAAA;AAAA,MACJ,GAAK,EAAAC,YAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,MAAM,cAAiB,GAAA;AAAA,MACrB,GAAG,KAAA;AAAA,MACH,qBAAuB,EAAA,QAAA;AAAA,KACzB,CAAA;AAEA,IAAA,uBACGC,cAAA,CAAAC,iBAAA,EAAA;AAAA,MACC,GAAA;AAAA,MACA,SAAW,EAAAC,SAAA;AAAA,QACT,YAAa,EAAA;AAAA,QACb,mBAAA;AAAA,QACA;AAAA,UACE,CAAC,YAAa,CAAA,QAAQ,CAAI,GAAA,MAAA;AAAA,SAC5B;AAAA,QACA,SAAA;AAAA,OACF;AAAA,MACA,KAAO,EAAA,cAAA;AAAA,MACN,GAAG,IAAA;AAAA,MAEH,QAAA;AAAA,KACH,CAAA,CAAA;AAAA,GAEJ;AACF;;;;;"}
@@ -0,0 +1,56 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var clsx = require('clsx');
8
+ var GridLayout = require('../grid-layout/GridLayout.js');
9
+ var makePrefixer = require('../utils/makePrefixer.js');
10
+ require('../utils/useFloatingUI.js');
11
+ require('../utils/useId.js');
12
+ require('../salt-provider/SaltProvider.js');
13
+ require('../viewport/ViewportProvider.js');
14
+
15
+ const withBaseName = makePrefixer.makePrefixer("saltBorderLayout");
16
+ const numberOfColumns = 3;
17
+ const BorderLayout = React.forwardRef(
18
+ ({ children, className, gap, style, ...rest }, ref) => {
19
+ const borderAreas = React.Children.map(
20
+ children,
21
+ (child) => child.props.position
22
+ );
23
+ const topSection = borderAreas.includes("north") ? "north ".repeat(numberOfColumns) : "none ".repeat(numberOfColumns);
24
+ const leftSection = borderAreas.includes("west") ? "west" : "center";
25
+ const rightSection = borderAreas.includes("east") ? "east" : "center";
26
+ const midSection = `${leftSection} center ${rightSection}`;
27
+ const bottomSection = borderAreas.includes("south") ? "south ".repeat(numberOfColumns) : "none ".repeat(numberOfColumns);
28
+ const gridTemplateAreas = `"${topSection}" "${midSection}" "${bottomSection}"`;
29
+ const hasMainSection = borderAreas.includes("center");
30
+ React.useEffect(() => {
31
+ if (process.env.NODE_ENV !== "production") {
32
+ if (!hasMainSection) {
33
+ console.warn(
34
+ "No main section has been found. A main section should be provided."
35
+ );
36
+ }
37
+ }
38
+ }, [hasMainSection]);
39
+ const borderLayoutStyles = {
40
+ ...style,
41
+ "--gridLayout-gridTemplate": gridTemplateAreas
42
+ };
43
+ return /* @__PURE__ */ jsxRuntime.jsx(GridLayout.GridLayout, {
44
+ className: clsx.clsx(withBaseName(), className, "saltGridLayout-area"),
45
+ columns: numberOfColumns,
46
+ gap: gap || 0,
47
+ style: borderLayoutStyles,
48
+ ref,
49
+ ...rest,
50
+ children
51
+ });
52
+ }
53
+ );
54
+
55
+ exports.BorderLayout = BorderLayout;
56
+ //# sourceMappingURL=BorderLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BorderLayout.js","sources":["../src/border-layout/BorderLayout.tsx"],"sourcesContent":["import {\n Children,\n forwardRef,\n ReactElement,\n useEffect,\n ElementType,\n} from \"react\";\nimport { clsx } from \"clsx\";\n\nimport { GridLayout, GridLayoutProps } from \"../grid-layout\";\nimport {\n makePrefixer,\n PolymorphicRef,\n PolymorphicComponentPropWithRef,\n} from \"../utils\";\nimport { BorderItemProps } from \"../border-item\";\n\nexport type BorderLayoutProps<T extends ElementType> =\n PolymorphicComponentPropWithRef<\n T,\n {\n /**\n * Defines the size of the gutter between the columns and the rows by setting a density multiplier. Defaults to 0\n */\n gap?: GridLayoutProps<T>[\"gap\"];\n /**\n * Defines the size of the gutter between the columns by setting a density multiplier. Defaults to 0\n */\n columnGap?: GridLayoutProps<T>[\"columnGap\"];\n /**\n * Defines the size of the gutter between the rows by setting a density multiplier. Defaults to 0\n */\n rowGap?: GridLayoutProps<T>[\"rowGap\"];\n /**\n * Border item components to be rendered.\n */\n children: ReactElement<BorderItemProps<T>>[];\n }\n >;\n\nconst withBaseName = makePrefixer(\"saltBorderLayout\");\n\nconst numberOfColumns = 3;\n\ntype BorderLayoutComponent = <T extends ElementType = \"div\">(\n props: BorderLayoutProps<T>\n) => ReactElement | null;\n\nexport const BorderLayout: BorderLayoutComponent = forwardRef(\n <T extends ElementType>(\n { children, className, gap, style, ...rest }: BorderLayoutProps<T>,\n ref?: PolymorphicRef<T>\n ) => {\n const borderAreas = Children.map(\n children,\n (child: ReactElement<BorderItemProps<T>>) => child.props.position\n );\n\n const topSection = borderAreas.includes(\"north\")\n ? \"north \".repeat(numberOfColumns)\n : \"none \".repeat(numberOfColumns);\n\n const leftSection = borderAreas.includes(\"west\") ? \"west\" : \"center\";\n\n const rightSection = borderAreas.includes(\"east\") ? \"east\" : \"center\";\n\n const midSection = `${leftSection} center ${rightSection}`;\n\n const bottomSection = borderAreas.includes(\"south\")\n ? \"south \".repeat(numberOfColumns)\n : \"none \".repeat(numberOfColumns);\n\n const gridTemplateAreas = `\"${topSection}\" \"${midSection}\" \"${bottomSection}\"`;\n\n const hasMainSection = borderAreas.includes(\"center\");\n\n useEffect(() => {\n if (process.env.NODE_ENV !== \"production\") {\n if (!hasMainSection) {\n console.warn(\n \"No main section has been found. A main section should be provided.\"\n );\n }\n }\n }, [hasMainSection]);\n\n const borderLayoutStyles = {\n ...style,\n \"--gridLayout-gridTemplate\": gridTemplateAreas,\n };\n\n return (\n <GridLayout\n className={clsx(withBaseName(), className, \"saltGridLayout-area\")}\n columns={numberOfColumns}\n gap={gap || 0}\n style={borderLayoutStyles}\n ref={ref}\n {...rest}\n >\n {children}\n </GridLayout>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","Children","useEffect","jsx","GridLayout","clsx"],"mappings":";;;;;;;;;;;;;;AAwCA,MAAM,YAAA,GAAeA,0BAAa,kBAAkB,CAAA,CAAA;AAEpD,MAAM,eAAkB,GAAA,CAAA,CAAA;AAMjB,MAAM,YAAsC,GAAAC,gBAAA;AAAA,EACjD,CACE,EAAE,QAAU,EAAA,SAAA,EAAW,KAAK,KAAU,EAAA,GAAA,IAAA,IACtC,GACG,KAAA;AACH,IAAA,MAAM,cAAcC,cAAS,CAAA,GAAA;AAAA,MAC3B,QAAA;AAAA,MACA,CAAC,KAA4C,KAAA,KAAA,CAAM,KAAM,CAAA,QAAA;AAAA,KAC3D,CAAA;AAEA,IAAM,MAAA,UAAA,GAAa,WAAY,CAAA,QAAA,CAAS,OAAO,CAAA,GAC3C,QAAS,CAAA,MAAA,CAAO,eAAe,CAAA,GAC/B,OAAQ,CAAA,MAAA,CAAO,eAAe,CAAA,CAAA;AAElC,IAAA,MAAM,WAAc,GAAA,WAAA,CAAY,QAAS,CAAA,MAAM,IAAI,MAAS,GAAA,QAAA,CAAA;AAE5D,IAAA,MAAM,YAAe,GAAA,WAAA,CAAY,QAAS,CAAA,MAAM,IAAI,MAAS,GAAA,QAAA,CAAA;AAE7D,IAAM,MAAA,UAAA,GAAa,GAAG,WAAsB,CAAA,QAAA,EAAA,YAAA,CAAA,CAAA,CAAA;AAE5C,IAAM,MAAA,aAAA,GAAgB,WAAY,CAAA,QAAA,CAAS,OAAO,CAAA,GAC9C,QAAS,CAAA,MAAA,CAAO,eAAe,CAAA,GAC/B,OAAQ,CAAA,MAAA,CAAO,eAAe,CAAA,CAAA;AAElC,IAAM,MAAA,iBAAA,GAAoB,CAAI,CAAA,EAAA,UAAA,CAAA,GAAA,EAAgB,UAAgB,CAAA,GAAA,EAAA,aAAA,CAAA,CAAA,CAAA,CAAA;AAE9D,IAAM,MAAA,cAAA,GAAiB,WAAY,CAAA,QAAA,CAAS,QAAQ,CAAA,CAAA;AAEpD,IAAAC,eAAA,CAAU,MAAM;AACd,MAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,QAAA,KAAa,YAAc,EAAA;AACzC,QAAA,IAAI,CAAC,cAAgB,EAAA;AACnB,UAAQ,OAAA,CAAA,IAAA;AAAA,YACN,oEAAA;AAAA,WACF,CAAA;AAAA,SACF;AAAA,OACF;AAAA,KACF,EAAG,CAAC,cAAc,CAAC,CAAA,CAAA;AAEnB,IAAA,MAAM,kBAAqB,GAAA;AAAA,MACzB,GAAG,KAAA;AAAA,MACH,2BAA6B,EAAA,iBAAA;AAAA,KAC/B,CAAA;AAEA,IAAA,uBACGC,cAAA,CAAAC,qBAAA,EAAA;AAAA,MACC,SAAW,EAAAC,SAAA,CAAK,YAAa,EAAA,EAAG,WAAW,qBAAqB,CAAA;AAAA,MAChE,OAAS,EAAA,eAAA;AAAA,MACT,KAAK,GAAO,IAAA,CAAA;AAAA,MACZ,KAAO,EAAA,kBAAA;AAAA,MACP,GAAA;AAAA,MACC,GAAG,IAAA;AAAA,MAEH,QAAA;AAAA,KACH,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const breakpoints = {
6
+ xs: 0,
7
+ sm: 600,
8
+ md: 960,
9
+ lg: 1280,
10
+ xl: 1920
11
+ };
12
+ const DEFAULT_BREAKPOINTS = breakpoints;
13
+
14
+ exports.DEFAULT_BREAKPOINTS = DEFAULT_BREAKPOINTS;
15
+ //# sourceMappingURL=Breakpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breakpoints.js","sources":["../src/breakpoints/Breakpoints.tsx"],"sourcesContent":["export type Breakpoints = {\n xs: number;\n sm: number;\n md: number;\n lg: number;\n xl: number;\n};\n\nconst breakpoints: Breakpoints = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n};\n\nexport const DEFAULT_BREAKPOINTS = breakpoints;\n"],"names":[],"mappings":";;;;AAQA,MAAM,WAA2B,GAAA;AAAA,EAC/B,EAAI,EAAA,CAAA;AAAA,EACJ,EAAI,EAAA,GAAA;AAAA,EACJ,EAAI,EAAA,GAAA;AAAA,EACJ,EAAI,EAAA,IAAA;AAAA,EACJ,EAAI,EAAA,IAAA;AACN,CAAA,CAAA;AAEO,MAAM,mBAAsB,GAAA;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
+
5
+ var css_248z = "/* Styles applied to the root element if variant=\"cta\" */\n.saltButton-cta {\n --button-background: var(--salt-actionable-cta-background);\n --button-background-active: var(--salt-actionable-cta-background-active);\n --button-background-disabled: var(--salt-actionable-cta-background-disabled);\n --button-background-hover: var(--salt-actionable-cta-background-hover);\n --button-fontWeight: var(--salt-actionable-cta-fontWeight);\n --button-text-color: var(--salt-actionable-cta-foreground);\n --button-text-color-active: var(--salt-actionable-cta-foreground-active);\n --button-text-color-disabled: var(--salt-actionable-cta-foreground-disabled);\n --button-text-color-hover: var(--salt-actionable-cta-foreground-hover);\n}\n\n/* Icon API in \"CTA\" variant @ignore */\n.saltButton-cta {\n --saltIcon-color: var(--salt-actionable-cta-foreground);\n}\n.saltButton-cta:hover {\n --saltIcon-color: var(--salt-actionable-cta-foreground-hover);\n}\n.saltButton-cta:active,\n.saltButton-cta.saltButton-active {\n --saltIcon-color: var(--salt-actionable-cta-foreground-active);\n}\n.saltButton-cta.saltButton-disabled {\n --saltIcon-color: var(--salt-actionable-cta-foreground-disabled);\n}\n\n/* Styles applied to the root element if variant=\"primary\" (or no variant specified) */\n.saltButton-primary {\n --button-background: var(--salt-actionable-primary-background);\n --button-background-active: var(--salt-actionable-primary-background-active);\n --button-background-disabled: var(--salt-actionable-primary-background-disabled);\n --button-background-hover: var(--salt-actionable-primary-background-hover);\n --button-fontWeight: var(--salt-actionable-primary-fontWeight);\n --button-text-color: var(--salt-actionable-primary-foreground);\n --button-text-color-active: var(--salt-actionable-primary-foreground-active);\n --button-text-color-disabled: var(--salt-actionable-primary-foreground-disabled);\n --button-text-color-hover: var(--salt-actionable-primary-foreground-hover);\n}\n\n/* Icon API in \"primary\" variant @ignore */\n.saltButton-primary {\n --saltIcon-color: var(--salt-actionable-primary-foreground);\n}\n.saltButton-primary:hover {\n --saltIcon-color: var(--salt-actionable-primary-foreground-hover);\n}\n.saltButton-primary:active,\n.saltButton-primary.saltButton-active {\n --saltIcon-color: var(--salt-actionable-primary-foreground-active);\n}\n.saltButton-primary.saltButton-disabled {\n --saltIcon-color: var(--salt-actionable-primary-foreground-disabled);\n}\n\n/* Styles applied to the root element if variant=\"secondary\" */\n.saltButton-secondary {\n --button-background: var(--salt-actionable-secondary-background);\n --button-background-active: var(--salt-actionable-secondary-background-active);\n --button-background-disabled: var(--salt-actionable-secondary-background-disabled);\n --button-background-hover: var(--salt-actionable-secondary-background-hover);\n --button-fontWeight: var(--salt-actionable-secondary-fontWeight);\n --button-text-color: var(--salt-actionable-secondary-foreground);\n --button-text-color-active: var(--salt-actionable-secondary-foreground-active);\n --button-text-color-disabled: var(--salt-actionable-secondary-foreground-disabled);\n --button-text-color-hover: var(--salt-actionable-secondary-foreground-hover);\n}\n\n/* Icon API in \"secondary\" variant @ignore */\n.saltButton-secondary {\n --saltIcon-color: var(--salt-actionable-secondary-foreground);\n}\n\n.saltButton-secondary:hover {\n --saltIcon-color: var(--salt-actionable-secondary-foreground-hover);\n}\n.saltButton-secondary:active,\n.saltButton-secondary.saltButton-active {\n --saltIcon-color: var(--salt-actionable-secondary-foreground-active);\n}\n.saltButton-secondary.saltButton-disabled {\n --saltIcon-color: var(--salt-actionable-secondary-foreground-disabled);\n}\n\n.saltButton {\n align-items: var(--saltButton-alignItems, center);\n appearance: none;\n background: var(--saltButton-background, var(--button-background));\n border-color: var(--saltButton-borderColor, transparent);\n border-style: var(--saltButton-borderStyle, solid);\n border-width: var(--saltButton-borderWidth, 0);\n border-radius: var(--saltButton-borderRadius, 0);\n color: var(--saltButton-text-color, var(--button-text-color));\n cursor: var(--saltButton-cursor, pointer);\n display: inline-flex;\n justify-content: var(--saltButton-justifyContent, center);\n font-size: var(--saltButton-fontSize, var(--salt-text-fontSize));\n font-family: var(--saltButton-fontFamily, var(--salt-text-fontFamily));\n line-height: var(--saltButton-lineHeight, var(--salt-text-lineHeight));\n letter-spacing: var(--saltButton-letterSpacing, var(--salt-actionable-letterSpacing));\n text-transform: var(--saltButton-textTransform, var(--salt-actionable-textTransform));\n padding: 0 var(--saltButton-padding, var(--salt-size-unit));\n margin: var(--saltButton-margin, 0);\n height: var(--saltButton-height, var(--salt-size-base));\n min-width: var(--saltButton-minWidth, unset);\n min-height: 0;\n position: relative;\n text-align: var(--saltButton-textAlign, var(--salt-actionable-textAlign));\n text-decoration: none;\n transition: none;\n user-select: none;\n width: var(--saltButton-width, auto);\n -webkit-appearance: none;\n -webkit-tap-highlight-color: transparent;\n /* Styles applied to align children*/\n font-weight: var(--saltButton-fontWeight, var(--button-fontWeight));\n white-space: pre;\n}\n\n/* Pseudo-class applied to the root element on focus */\n.saltButton:focus-visible {\n outline-style: var(--salt-focused-outlineStyle);\n outline-width: var(--salt-focused-outlineWidth);\n outline-color: var(--salt-focused-outlineColor);\n outline-offset: var(--salt-focused-outlineOffset);\n background: var(--saltButton-background-hover, var(--button-background-hover));\n color: var(--saltButton-text-color-hover, var(--button-text-color-hover));\n}\n\n/* Pseudo-class applied to the root element on focus when Button is active */\n.saltButton.saltButton-active:focus-visible,\n.saltButton:focus-visible(:active) {\n background: var(--saltButton-background-active-hover, var(--button-background));\n color: var(--saltButton-text-color-active-hover, var(--button-text-color));\n}\n\n/* Pseudo-class applied to the root element on hover when Button is not active or disabled */\n.saltButton:hover {\n background: var(--saltButton-background-hover, var(--button-background-hover));\n color: var(--saltButton-text-color-hover, var(--button-text-color-hover));\n}\n\n/* Pseudo-class applied to the root element when Button is active and not disabled */\n.saltButton:active,\n.saltButton.saltButton-active {\n background: var(--saltButton-background-active, var(--button-background-active));\n color: var(--saltButton-text-color-active, var(--button-text-color-active));\n}\n\n/* Pseudo-class applied to the root element if disabled={true} */\n.saltButton:disabled,\n.saltButton-disabled,\n /* Overrides to apply the disabled style when the button is focusable while also disabled */\n.saltButton-disabled:active,\n.saltButton-disabled:focus-visible,\n.saltButton-disabled:hover {\n background: var(--saltButton-background-disabled, var(--button-background-disabled));\n color: var(--saltButton-text-color-disabled, var(--button-text-color-disabled));\n cursor: var(--saltButton-cursor-disabled, var(--salt-actionable-cursor-disabled));\n}\n\n.saltButton[href] {\n display: inline-flex;\n}\n";
6
+ styleInject_es(css_248z);
7
+
8
+ module.exports = css_248z;
9
+ //# sourceMappingURL=Button.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}