@salt-ds/core 1.8.1 → 1.9.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 (224) hide show
  1. package/dist-cjs/accordion/Accordion.js +1 -1
  2. package/dist-cjs/accordion/Accordion.js.map +1 -1
  3. package/dist-cjs/accordion/AccordionContext.js +1 -1
  4. package/dist-cjs/accordion/AccordionGroup.js +1 -1
  5. package/dist-cjs/accordion/AccordionGroup.js.map +1 -1
  6. package/dist-cjs/accordion/AccordionHeader.js +1 -1
  7. package/dist-cjs/accordion/AccordionHeader.js.map +1 -1
  8. package/dist-cjs/accordion/AccordionPanel.js +1 -1
  9. package/dist-cjs/accordion/AccordionPanel.js.map +1 -1
  10. package/dist-cjs/aria-announcer/useAriaAnnouncer.js +1 -1
  11. package/dist-cjs/avatar/Avatar.js +1 -1
  12. package/dist-cjs/avatar/useAvatarImage.js +1 -1
  13. package/dist-cjs/banner/Banner.js +1 -1
  14. package/dist-cjs/banner/BannerActions.js +17 -15
  15. package/dist-cjs/banner/BannerActions.js.map +1 -1
  16. package/dist-cjs/banner/BannerContent.js +17 -15
  17. package/dist-cjs/banner/BannerContent.js.map +1 -1
  18. package/dist-cjs/border-item/BorderItem.js +1 -1
  19. package/dist-cjs/border-item/BorderItem.js.map +1 -1
  20. package/dist-cjs/border-layout/BorderLayout.js +1 -1
  21. package/dist-cjs/button/Button.css.js +1 -1
  22. package/dist-cjs/button/Button.js +1 -1
  23. package/dist-cjs/button/Button.js.map +1 -1
  24. package/dist-cjs/card/Card.css.js +1 -1
  25. package/dist-cjs/card/Card.js +2 -5
  26. package/dist-cjs/card/Card.js.map +1 -1
  27. package/dist-cjs/card/InteractableCard.css.js +1 -1
  28. package/dist-cjs/card/InteractableCard.js +2 -5
  29. package/dist-cjs/card/InteractableCard.js.map +1 -1
  30. package/dist-cjs/checkbox/Checkbox.js +1 -2
  31. package/dist-cjs/checkbox/Checkbox.js.map +1 -1
  32. package/dist-cjs/checkbox/CheckboxGroup.js +1 -1
  33. package/dist-cjs/checkbox/CheckboxIcon.js +1 -1
  34. package/dist-cjs/flex-item/FlexItem.js +1 -1
  35. package/dist-cjs/flex-item/FlexItem.js.map +1 -1
  36. package/dist-cjs/flex-layout/FlexLayout.js +1 -1
  37. package/dist-cjs/flex-layout/FlexLayout.js.map +1 -1
  38. package/dist-cjs/form-field/FormField.css.js +1 -1
  39. package/dist-cjs/form-field/FormField.js +1 -1
  40. package/dist-cjs/form-field/FormFieldHelperText.js +1 -1
  41. package/dist-cjs/form-field/FormFieldLabel.js +1 -1
  42. package/dist-cjs/form-field-context/FormFieldContext.js +1 -1
  43. package/dist-cjs/grid-item/GridItem.js +1 -1
  44. package/dist-cjs/grid-item/GridItem.js.map +1 -1
  45. package/dist-cjs/grid-layout/GridLayout.js +3 -3
  46. package/dist-cjs/grid-layout/GridLayout.js.map +1 -1
  47. package/dist-cjs/index.js +5 -1
  48. package/dist-cjs/index.js.map +1 -1
  49. package/dist-cjs/input/Input.js +1 -1
  50. package/dist-cjs/link/Link.js +1 -1
  51. package/dist-cjs/multiline-input/MultilineInput.js +1 -1
  52. package/dist-cjs/panel/Panel.js +1 -1
  53. package/dist-cjs/radio-button/RadioButton.js +1 -2
  54. package/dist-cjs/radio-button/RadioButton.js.map +1 -1
  55. package/dist-cjs/radio-button/RadioButtonGroup.css.js +1 -1
  56. package/dist-cjs/radio-button/RadioButtonGroup.js +1 -1
  57. package/dist-cjs/radio-button/RadioButtonIcon.js +1 -1
  58. package/dist-cjs/radio-button/internal/RadioGroupContext.js +1 -1
  59. package/dist-cjs/salt-provider/SaltProvider.js +1 -1
  60. package/dist-cjs/spinner/Spinner.js +1 -1
  61. package/dist-cjs/spinner/Spinner.js.map +1 -1
  62. package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js +1 -1
  63. package/dist-cjs/stack-layout/StackLayout.js +1 -1
  64. package/dist-cjs/status-adornment/ErrorAdornment.js +2 -2
  65. package/dist-cjs/status-adornment/ErrorAdornment.js.map +1 -1
  66. package/dist-cjs/status-adornment/StatusAdornment.js +1 -1
  67. package/dist-cjs/status-adornment/SuccessAdornment.js +2 -2
  68. package/dist-cjs/status-adornment/SuccessAdornment.js.map +1 -1
  69. package/dist-cjs/status-indicator/StatusIndicator.css.js +1 -1
  70. package/dist-cjs/status-indicator/StatusIndicator.js +1 -1
  71. package/dist-cjs/status-indicator/ValidationStatus.js.map +1 -1
  72. package/dist-cjs/text/Display.js +1 -1
  73. package/dist-cjs/text/Text.js +1 -1
  74. package/dist-cjs/theme/Density.js.map +1 -1
  75. package/dist-cjs/theme/Mode.js.map +1 -1
  76. package/dist-cjs/toast/Toast.js +1 -1
  77. package/dist-cjs/toast/ToastContent.js +1 -1
  78. package/dist-cjs/toast/ToastContent.js.map +1 -1
  79. package/dist-cjs/toggle-button/ToggleButton.css.js +1 -1
  80. package/dist-cjs/toggle-button/ToggleButton.js +1 -1
  81. package/dist-cjs/toggle-button-group/ToggleButtonGroup.js +1 -1
  82. package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js +1 -1
  83. package/dist-cjs/tooltip/Tooltip.js +19 -53
  84. package/dist-cjs/tooltip/Tooltip.js.map +1 -1
  85. package/dist-cjs/tooltip/TooltipBase.js +62 -0
  86. package/dist-cjs/tooltip/TooltipBase.js.map +1 -0
  87. package/dist-cjs/tooltip/useAriaAnnounce.js +1 -1
  88. package/dist-cjs/tooltip/useTooltip.js +16 -9
  89. package/dist-cjs/tooltip/useTooltip.js.map +1 -1
  90. package/dist-cjs/utils/useFloatingUI/useFloatingUI.js +124 -0
  91. package/dist-cjs/utils/useFloatingUI/useFloatingUI.js.map +1 -0
  92. package/dist-cjs/viewport/ViewportProvider.js +1 -1
  93. package/dist-es/accordion/Accordion.js +1 -1
  94. package/dist-es/accordion/Accordion.js.map +1 -1
  95. package/dist-es/accordion/AccordionContext.js +1 -1
  96. package/dist-es/accordion/AccordionGroup.js +1 -1
  97. package/dist-es/accordion/AccordionGroup.js.map +1 -1
  98. package/dist-es/accordion/AccordionHeader.js +1 -1
  99. package/dist-es/accordion/AccordionHeader.js.map +1 -1
  100. package/dist-es/accordion/AccordionPanel.js +1 -1
  101. package/dist-es/accordion/AccordionPanel.js.map +1 -1
  102. package/dist-es/aria-announcer/useAriaAnnouncer.js +1 -1
  103. package/dist-es/avatar/Avatar.js +1 -1
  104. package/dist-es/avatar/useAvatarImage.js +1 -1
  105. package/dist-es/banner/Banner.js +1 -1
  106. package/dist-es/banner/BannerActions.js +17 -15
  107. package/dist-es/banner/BannerActions.js.map +1 -1
  108. package/dist-es/banner/BannerContent.js +17 -15
  109. package/dist-es/banner/BannerContent.js.map +1 -1
  110. package/dist-es/border-item/BorderItem.js +1 -1
  111. package/dist-es/border-item/BorderItem.js.map +1 -1
  112. package/dist-es/border-layout/BorderLayout.js +1 -1
  113. package/dist-es/button/Button.css.js +1 -1
  114. package/dist-es/button/Button.js +1 -1
  115. package/dist-es/button/Button.js.map +1 -1
  116. package/dist-es/card/Card.css.js +1 -1
  117. package/dist-es/card/Card.js +2 -5
  118. package/dist-es/card/Card.js.map +1 -1
  119. package/dist-es/card/InteractableCard.css.js +1 -1
  120. package/dist-es/card/InteractableCard.js +2 -5
  121. package/dist-es/card/InteractableCard.js.map +1 -1
  122. package/dist-es/checkbox/Checkbox.js +1 -2
  123. package/dist-es/checkbox/Checkbox.js.map +1 -1
  124. package/dist-es/checkbox/CheckboxGroup.js +1 -1
  125. package/dist-es/checkbox/CheckboxIcon.js +1 -1
  126. package/dist-es/flex-item/FlexItem.js +1 -1
  127. package/dist-es/flex-item/FlexItem.js.map +1 -1
  128. package/dist-es/flex-layout/FlexLayout.js +1 -1
  129. package/dist-es/flex-layout/FlexLayout.js.map +1 -1
  130. package/dist-es/form-field/FormField.css.js +1 -1
  131. package/dist-es/form-field/FormField.js +1 -1
  132. package/dist-es/form-field/FormFieldHelperText.js +1 -1
  133. package/dist-es/form-field/FormFieldLabel.js +1 -1
  134. package/dist-es/form-field-context/FormFieldContext.js +1 -1
  135. package/dist-es/grid-item/GridItem.js +1 -1
  136. package/dist-es/grid-item/GridItem.js.map +1 -1
  137. package/dist-es/grid-layout/GridLayout.js +3 -3
  138. package/dist-es/grid-layout/GridLayout.js.map +1 -1
  139. package/dist-es/index.js +1 -1
  140. package/dist-es/input/Input.js +1 -1
  141. package/dist-es/link/Link.js +1 -1
  142. package/dist-es/multiline-input/MultilineInput.js +1 -1
  143. package/dist-es/panel/Panel.js +1 -1
  144. package/dist-es/radio-button/RadioButton.js +1 -2
  145. package/dist-es/radio-button/RadioButton.js.map +1 -1
  146. package/dist-es/radio-button/RadioButtonGroup.css.js +1 -1
  147. package/dist-es/radio-button/RadioButtonGroup.js +1 -1
  148. package/dist-es/radio-button/RadioButtonIcon.js +1 -1
  149. package/dist-es/radio-button/internal/RadioGroupContext.js +1 -1
  150. package/dist-es/salt-provider/SaltProvider.js +1 -1
  151. package/dist-es/spinner/Spinner.js +1 -1
  152. package/dist-es/spinner/Spinner.js.map +1 -1
  153. package/dist-es/spinner/svgSpinners/SpinnerSVG.js +1 -1
  154. package/dist-es/stack-layout/StackLayout.js +1 -1
  155. package/dist-es/status-adornment/ErrorAdornment.js +2 -2
  156. package/dist-es/status-adornment/ErrorAdornment.js.map +1 -1
  157. package/dist-es/status-adornment/StatusAdornment.js +1 -1
  158. package/dist-es/status-adornment/SuccessAdornment.js +2 -2
  159. package/dist-es/status-adornment/SuccessAdornment.js.map +1 -1
  160. package/dist-es/status-indicator/StatusIndicator.css.js +1 -1
  161. package/dist-es/status-indicator/StatusIndicator.js +1 -1
  162. package/dist-es/status-indicator/ValidationStatus.js.map +1 -1
  163. package/dist-es/text/Display.js +1 -1
  164. package/dist-es/text/Text.js +1 -1
  165. package/dist-es/theme/Density.js.map +1 -1
  166. package/dist-es/theme/Mode.js.map +1 -1
  167. package/dist-es/toast/Toast.js +1 -1
  168. package/dist-es/toast/ToastContent.js +1 -1
  169. package/dist-es/toast/ToastContent.js.map +1 -1
  170. package/dist-es/toggle-button/ToggleButton.css.js +1 -1
  171. package/dist-es/toggle-button/ToggleButton.js +1 -1
  172. package/dist-es/toggle-button-group/ToggleButtonGroup.js +1 -1
  173. package/dist-es/toggle-button-group/ToggleButtonGroupContext.js +1 -1
  174. package/dist-es/tooltip/Tooltip.js +19 -53
  175. package/dist-es/tooltip/Tooltip.js.map +1 -1
  176. package/dist-es/tooltip/TooltipBase.js +58 -0
  177. package/dist-es/tooltip/TooltipBase.js.map +1 -0
  178. package/dist-es/tooltip/useAriaAnnounce.js +1 -1
  179. package/dist-es/tooltip/useTooltip.js +16 -9
  180. package/dist-es/tooltip/useTooltip.js.map +1 -1
  181. package/dist-es/utils/useFloatingUI/useFloatingUI.js +115 -0
  182. package/dist-es/utils/useFloatingUI/useFloatingUI.js.map +1 -0
  183. package/dist-es/viewport/ViewportProvider.js +1 -1
  184. package/dist-types/accordion/Accordion.d.ts +0 -1
  185. package/dist-types/accordion/AccordionGroup.d.ts +8 -3
  186. package/dist-types/accordion/AccordionHeader.d.ts +8 -3
  187. package/dist-types/accordion/AccordionPanel.d.ts +8 -3
  188. package/dist-types/aria-announcer/AriaAnnouncerContext.d.ts +0 -1
  189. package/dist-types/banner/BannerActions.d.ts +9 -2
  190. package/dist-types/banner/BannerContent.d.ts +9 -2
  191. package/dist-types/border-item/BorderItem.d.ts +1 -1
  192. package/dist-types/button/Button.d.ts +1 -1
  193. package/dist-types/checkbox/CheckboxIcon.d.ts +0 -1
  194. package/dist-types/checkbox/internal/CheckboxGroupContext.d.ts +0 -1
  195. package/dist-types/flex-item/FlexItem.d.ts +1 -1
  196. package/dist-types/flex-layout/FlexLayout.d.ts +2 -2
  197. package/dist-types/form-field/FormFieldHelperText.d.ts +0 -1
  198. package/dist-types/form-field/FormFieldLabel.d.ts +0 -1
  199. package/dist-types/form-field-context/FormFieldContext.d.ts +0 -1
  200. package/dist-types/grid-item/GridItem.d.ts +1 -1
  201. package/dist-types/spinner/Spinner.d.ts +1 -1
  202. package/dist-types/status-adornment/ErrorAdornment.d.ts +0 -1
  203. package/dist-types/status-adornment/StatusAdornment.d.ts +0 -1
  204. package/dist-types/status-adornment/SuccessAdornment.d.ts +0 -1
  205. package/dist-types/status-adornment/WarningAdornment.d.ts +0 -1
  206. package/dist-types/status-indicator/StatusIndicator.d.ts +0 -1
  207. package/dist-types/status-indicator/ValidationStatus.d.ts +1 -1
  208. package/dist-types/text/Display.d.ts +0 -1
  209. package/dist-types/text/Headings.d.ts +0 -1
  210. package/dist-types/text/Label.d.ts +0 -1
  211. package/dist-types/theme/Density.d.ts +1 -1
  212. package/dist-types/theme/Mode.d.ts +1 -1
  213. package/dist-types/toast/ToastContent.d.ts +8 -2
  214. package/dist-types/tooltip/Tooltip.d.ts +2 -2
  215. package/dist-types/tooltip/TooltipBase.d.ts +12 -0
  216. package/dist-types/tooltip/useTooltip.d.ts +12 -5
  217. package/dist-types/utils/useFloatingUI/index.d.ts +1 -0
  218. package/dist-types/utils/useFloatingUI/useFloatingUI.d.ts +77 -0
  219. package/package.json +15 -14
  220. package/dist-cjs/utils/useFloatingUI.js +0 -38
  221. package/dist-cjs/utils/useFloatingUI.js.map +0 -1
  222. package/dist-es/utils/useFloatingUI.js +0 -33
  223. package/dist-es/utils/useFloatingUI.js.map +0 -1
  224. package/dist-types/utils/useFloatingUI.d.ts +0 -34
@@ -1,3 +1,8 @@
1
- import { ComponentPropsWithoutRef } from "react";
2
- export declare type AccordionHeaderProps = ComponentPropsWithoutRef<"button">;
3
- export declare const AccordionHeader: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ export interface AccordionHeaderProps extends ComponentPropsWithoutRef<"button"> {
3
+ /**
4
+ * The content of the Accordion Header
5
+ */
6
+ children?: ReactNode;
7
+ }
8
+ export declare const AccordionHeader: import("react").ForwardRefExoticComponent<AccordionHeaderProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -1,3 +1,8 @@
1
- import { ComponentPropsWithoutRef } from "react";
2
- export declare type AccordionPanelProps = ComponentPropsWithoutRef<"div">;
3
- export declare const AccordionPanel: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ export interface AccordionPanelProps extends ComponentPropsWithoutRef<"div"> {
3
+ /**
4
+ * The content of the Accordion Panel
5
+ */
6
+ children?: ReactNode;
7
+ }
8
+ export declare const AccordionPanel: import("react").ForwardRefExoticComponent<AccordionPanelProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export declare type AnnounceFn = (announcement: string, delay?: number) => void;
3
2
  export declare type AriaAnnouncer = {
4
3
  announce: AnnounceFn;
@@ -1,2 +1,9 @@
1
- /// <reference types="react" />
2
- export declare const BannerActions: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ interface BannerActionsProps extends ComponentPropsWithoutRef<"div"> {
3
+ /**
4
+ * The content of BannerActions
5
+ */
6
+ children: ReactNode;
7
+ }
8
+ export declare const BannerActions: import("react").ForwardRefExoticComponent<BannerActionsProps & import("react").RefAttributes<HTMLDivElement>>;
9
+ export {};
@@ -1,2 +1,9 @@
1
- /// <reference types="react" />
2
- export declare const BannerContent: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ interface BannerContentProps extends ComponentPropsWithoutRef<"div"> {
3
+ /**
4
+ * The content of BannerContent
5
+ */
6
+ children: ReactNode;
7
+ }
8
+ export declare const BannerContent: import("react").ForwardRefExoticComponent<BannerContentProps & import("react").RefAttributes<HTMLDivElement>>;
9
+ export {};
@@ -2,7 +2,7 @@ import { ElementType, ReactElement } from "react";
2
2
  import { GridItemProps } from "../grid-item";
3
3
  import { PolymorphicComponentPropWithRef } from "../utils";
4
4
  export declare const BORDER_POSITION: readonly ["north", "west", "center", "east", "south"];
5
- export declare type BorderPosition = typeof BORDER_POSITION[number];
5
+ export declare type BorderPosition = (typeof BORDER_POSITION)[number];
6
6
  export declare type BorderItemProps<T extends ElementType> = PolymorphicComponentPropWithRef<T, {
7
7
  /**
8
8
  * Aligns a grid item inside a cell along the inline (row) axis. Defaults to "stretch"
@@ -1,6 +1,6 @@
1
1
  import { ComponentPropsWithoutRef } from "react";
2
2
  export declare const ButtonVariantValues: readonly ["primary", "secondary", "cta"];
3
- export declare type ButtonVariant = typeof ButtonVariantValues[number];
3
+ export declare type ButtonVariant = (typeof ButtonVariantValues)[number];
4
4
  export interface ButtonProps extends ComponentPropsWithoutRef<"button"> {
5
5
  /**
6
6
  * If `true`, the button will be disabled.
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { AdornmentValidationStatus } from "../status-adornment";
3
2
  export interface CheckboxIconProps {
4
3
  checked?: boolean;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { a11yValueAriaProps } from "../../form-field-context";
3
2
  import { AdornmentValidationStatus } from "../../status-adornment";
4
3
  import { CheckboxGroupProps } from "../CheckboxGroup";
@@ -1,7 +1,7 @@
1
1
  import { ElementType, ReactElement, CSSProperties } from "react";
2
2
  import { ResponsiveProp, PolymorphicComponentPropWithRef } from "../utils";
3
3
  export declare const FLEX_ITEM_ALIGNMENTS: readonly ["start", "end", "center", "stretch"];
4
- export declare type flexItemAlignment = typeof FLEX_ITEM_ALIGNMENTS[number];
4
+ export declare type flexItemAlignment = (typeof FLEX_ITEM_ALIGNMENTS)[number];
5
5
  export declare type FlexItemProps<T extends ElementType> = PolymorphicComponentPropWithRef<T, {
6
6
  /**
7
7
  * Allows the alignment specified by parent to be overridden for individual items, default is "start".
@@ -4,8 +4,8 @@ export declare type LayoutSeparator = "start" | "center" | "end";
4
4
  export declare type LayoutDirection = "row" | "column";
5
5
  export declare const FLEX_ALIGNMENT_BASE: readonly ["start", "end", "center"];
6
6
  export declare const FLEX_CONTENT_ALIGNMENT_BASE: readonly ["start", "end", "center", "space-between", "space-around", "space-evenly"];
7
- export declare type FlexAlignment = typeof FLEX_ALIGNMENT_BASE[number];
8
- export declare type FlexContentAlignment = typeof FLEX_CONTENT_ALIGNMENT_BASE[number];
7
+ export declare type FlexAlignment = (typeof FLEX_ALIGNMENT_BASE)[number];
8
+ export declare type FlexContentAlignment = (typeof FLEX_CONTENT_ALIGNMENT_BASE)[number];
9
9
  export declare type FlexLayoutProps<T extends ElementType> = PolymorphicComponentPropWithRef<T, {
10
10
  /**
11
11
  * Defines the default behavior for how flex items are laid out along the cross axis on the current line, default is "stretch".
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import { TextProps } from "../text";
3
2
  export declare const FormFieldHelperText: ({ className, children, ...restProps }: Omit<TextProps<"label">, "variant" | "styleAs">) => JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { TextProps } from "../text";
3
2
  export interface FormFieldLabelProps extends Omit<TextProps<"label">, "variant" | "styleAs"> {
4
3
  /**
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export interface A11yValueProps {
3
2
  /**
4
3
  * id for FormFieldHelperText
@@ -1,7 +1,7 @@
1
1
  import { ElementType, ReactElement } from "react";
2
2
  import { ResponsiveProp, PolymorphicComponentPropWithRef } from "../utils";
3
3
  export declare const GRID_ALIGNMENT_BASE: readonly ["start", "end", "center", "stretch"];
4
- declare type GridAlignment = typeof GRID_ALIGNMENT_BASE[number];
4
+ declare type GridAlignment = (typeof GRID_ALIGNMENT_BASE)[number];
5
5
  declare type GridProperty = number | "auto";
6
6
  export declare type GridItemProps<T extends ElementType> = PolymorphicComponentPropWithRef<T, {
7
7
  /**
@@ -6,7 +6,7 @@ import { HTMLAttributes } from "react";
6
6
  * <Spinner size="default | large" />
7
7
  */
8
8
  export declare const SpinnerSizeValues: readonly ["default", "large"];
9
- export declare type SpinnerSize = typeof SpinnerSizeValues[number];
9
+ export declare type SpinnerSize = (typeof SpinnerSizeValues)[number];
10
10
  export interface SpinnerProps extends HTMLAttributes<HTMLDivElement> {
11
11
  /**
12
12
  * Determines the interval on which the component will continue to announce the aria-label. Defaults to 5000ms (5s)
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { IconProps } from "@salt-ds/icons";
3
2
  export declare type ErrorAdornmentIconProps = IconProps;
4
3
  export declare const ErrorAdornmentIcon: import("react").ForwardRefExoticComponent<IconProps & import("react").RefAttributes<SVGSVGElement>>;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { IconProps } from "@salt-ds/icons";
3
2
  import { ValidationStatus } from "../status-indicator";
4
3
  export declare type AdornmentValidationStatus = Exclude<ValidationStatus, "info">;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { IconProps } from "@salt-ds/icons";
3
2
  export declare type SuccessAdornmentIconProps = IconProps;
4
3
  export declare const SuccessAdornmentIcon: import("react").ForwardRefExoticComponent<IconProps & import("react").RefAttributes<SVGSVGElement>>;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { IconProps } from "@salt-ds/icons";
3
2
  export declare type WarningAdornmentIconProps = IconProps;
4
3
  export declare const WarningAdornmentIcon: import("react").ForwardRefExoticComponent<IconProps & import("react").RefAttributes<SVGSVGElement>>;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { IconProps } from "@salt-ds/icons";
3
2
  import { ValidationStatus } from "./ValidationStatus";
4
3
  export interface StatusIndicatorProps extends IconProps {
@@ -1,2 +1,2 @@
1
1
  export declare const VALIDATION_NAMED_STATUS: readonly ["error", "warning", "success", "info"];
2
- export declare type ValidationStatus = typeof VALIDATION_NAMED_STATUS[number];
2
+ export declare type ValidationStatus = (typeof VALIDATION_NAMED_STATUS)[number];
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { TextProps } from "./Text";
3
2
  export declare const Display1: import("react").ForwardRefExoticComponent<Omit<Omit<TextProps<"span">, "as">, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
4
3
  export declare const Display2: import("react").ForwardRefExoticComponent<Omit<Omit<TextProps<"span">, "as">, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { TextProps } from "./Text";
3
2
  export declare const H1: import("react").ForwardRefExoticComponent<Omit<Omit<TextProps<"h1">, "as">, "ref"> & import("react").RefAttributes<HTMLHeadingElement>>;
4
3
  export declare const H2: import("react").ForwardRefExoticComponent<Omit<Omit<TextProps<"h2">, "as">, "ref"> & import("react").RefAttributes<HTMLHeadingElement>>;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import { TextProps } from "./Text";
3
2
  export declare const Label: import("react").ForwardRefExoticComponent<Omit<Omit<TextProps<"label">, "as">, "ref"> & import("react").RefAttributes<HTMLLabelElement>>;
@@ -1,2 +1,2 @@
1
1
  export declare const DensityValues: readonly ["high", "medium", "low", "touch"];
2
- export declare type Density = typeof DensityValues[number];
2
+ export declare type Density = (typeof DensityValues)[number];
@@ -1,2 +1,2 @@
1
1
  export declare const ModeValues: readonly ["light", "dark"];
2
- export declare type Mode = typeof ModeValues[number];
2
+ export declare type Mode = (typeof ModeValues)[number];
@@ -1,2 +1,8 @@
1
- /// <reference types="react" />
2
- export declare const ToastContent: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ export interface ToastContentProps extends ComponentPropsWithoutRef<"div"> {
3
+ /**
4
+ * The content of Toast Content
5
+ */
6
+ children?: ReactNode;
7
+ }
8
+ export declare const ToastContent: import("react").ForwardRefExoticComponent<ToastContentProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -27,11 +27,11 @@ export interface TooltipProps extends Pick<UseFloatingUIProps, "open" | "onOpenC
27
27
  */
28
28
  enterDelay?: number;
29
29
  /**
30
- * Delay in milliseconds before the Tooltip is hidden.
30
+ * Delay in milliseconds before the Tooltip is hidden. Defaults to 300ms.
31
31
  */
32
32
  leaveDelay?: number;
33
33
  /**
34
- * Option to not display the Tooltip. Can be used in conditional situations like text truncation.
34
+ * Option to not display the Tooltip. Can be used in conditional situations like text truncation. Defaults to 0.
35
35
  */
36
36
  disabled?: boolean;
37
37
  /**
@@ -0,0 +1,12 @@
1
+ import { ValidationStatus } from "../status-indicator";
2
+ import { FloatingArrowProps } from "@floating-ui/react";
3
+ import { TooltipProps } from "./Tooltip";
4
+ interface TooltipBaseProps extends Omit<TooltipProps, "children"> {
5
+ arrowProps: FloatingArrowProps;
6
+ /**
7
+ * A string to determine the status of the Tooltip. Defaults to `info`.
8
+ */
9
+ status: ValidationStatus;
10
+ }
11
+ export declare const TooltipBase: (props: TooltipBaseProps) => JSX.Element;
12
+ export {};
@@ -26,12 +26,12 @@ export declare function useTooltip(props?: UseTooltipProps): {
26
26
  context: {
27
27
  x: number | null;
28
28
  y: number | null;
29
- placement: import("@floating-ui/react").Placement;
30
- strategy: import("@floating-ui/react").Strategy;
31
- middlewareData: import("@floating-ui/react").MiddlewareData;
32
- update: () => void;
29
+ placement: import("@floating-ui/utils").Placement;
30
+ strategy: import("@floating-ui/utils").Strategy;
31
+ middlewareData: import("@floating-ui/core").MiddlewareData;
33
32
  reference: (node: import("@floating-ui/react").ReferenceType | null) => void;
34
33
  floating: (node: HTMLElement | null) => void;
34
+ update: () => void;
35
35
  isPositioned: boolean;
36
36
  open: boolean;
37
37
  onOpenChange: (open: boolean) => void;
@@ -43,7 +43,7 @@ export declare function useTooltip(props?: UseTooltipProps): {
43
43
  elements: import("@floating-ui/react").ExtendedElements<import("@floating-ui/react").ReferenceType>;
44
44
  };
45
45
  style: {
46
- position: import("@floating-ui/react").Strategy;
46
+ position: import("@floating-ui/utils").Strategy;
47
47
  left: number;
48
48
  top: number;
49
49
  };
@@ -53,4 +53,11 @@ export declare function useTooltip(props?: UseTooltipProps): {
53
53
  reference: (node: import("@floating-ui/react").ReferenceType | null) => void;
54
54
  getTooltipProps: () => HTMLProps<HTMLDivElement>;
55
55
  getTriggerProps: () => Record<string, unknown>;
56
+ getTooltipPosition: () => {
57
+ top: number;
58
+ left: number;
59
+ position: import("@floating-ui/utils").Strategy;
60
+ width: number | undefined;
61
+ height: number | undefined;
62
+ };
56
63
  };
@@ -0,0 +1 @@
1
+ export * from "./useFloatingUI";
@@ -0,0 +1,77 @@
1
+ import { Middleware, Placement, Platform, Strategy, useFloating } from "@floating-ui/react";
2
+ import { ReactNode, PropsWithChildren, ForwardRefExoticComponent } from "react";
3
+ declare type CombinedFloatingComponentProps = PropsWithChildren<FloatingComponentProps>;
4
+ export interface FloatingComponentProps {
5
+ /**
6
+ * Whether the floating component is open (used for determinig whether to show the component)
7
+ * We pass this as a prop rather than not rendering the component to allow more advanced use-cases e.g.
8
+ * for caching windows and reusing them, rather than always spawning a new one
9
+ */
10
+ open: boolean;
11
+ /**
12
+ * Position props for the floating component
13
+ */
14
+ top: number;
15
+ left: number;
16
+ width?: number;
17
+ height?: number;
18
+ position: Strategy;
19
+ }
20
+ export interface FloatingComponentContextType {
21
+ Component: ForwardRefExoticComponent<CombinedFloatingComponentProps>;
22
+ }
23
+ export interface FloatingComponentProviderProps extends FloatingComponentContextType {
24
+ children: ReactNode;
25
+ }
26
+ export declare function FloatingComponentProvider(props: FloatingComponentProviderProps): JSX.Element;
27
+ export declare function useFloatingComponent(): FloatingComponentContextType;
28
+ export interface UseFloatingUIProps {
29
+ /**
30
+ * Sets position relative to trigger.
31
+ */
32
+ placement?: Placement;
33
+ strategy?: Strategy;
34
+ /**
35
+ * Function to update the default middleware used to extend or replace it
36
+ */
37
+ middleware?: Middleware[];
38
+ /**
39
+ * Sets visible state.
40
+ */
41
+ open?: boolean;
42
+ /**
43
+ * Callback function triggered when open state changes.
44
+ */
45
+ onOpenChange?: (open: boolean) => void;
46
+ }
47
+ declare type GetMiddleware = (middleware: Middleware[]) => Middleware[];
48
+ interface FloatingPlatformContextType {
49
+ platform: Platform;
50
+ middleware: GetMiddleware;
51
+ animationFrame: boolean;
52
+ }
53
+ export interface FloatingPlatformProviderProps {
54
+ platform?: Platform;
55
+ middleware?: GetMiddleware;
56
+ children: ReactNode;
57
+ animationFrame?: boolean;
58
+ }
59
+ export declare function FloatingPlatformProvider(props: FloatingPlatformProviderProps): JSX.Element;
60
+ export declare function useFloatingPlatform(): FloatingPlatformContextType;
61
+ export declare const DEFAULT_FLOATING_UI_MIDDLEWARE: {
62
+ name: string;
63
+ options?: any;
64
+ fn: (state: {
65
+ x: number;
66
+ y: number;
67
+ initialPlacement: Placement;
68
+ placement: Placement;
69
+ strategy: Strategy;
70
+ middlewareData: import("@floating-ui/core").MiddlewareData;
71
+ rects: import("@floating-ui/utils").ElementRects;
72
+ platform: import("@floating-ui/core").Platform;
73
+ elements: import("@floating-ui/dom").Elements;
74
+ }) => import("@floating-ui/core").MiddlewareReturn | Promise<import("@floating-ui/core").MiddlewareReturn>;
75
+ }[];
76
+ export declare function useFloatingUI(props: UseFloatingUIProps): ReturnType<typeof useFloating>;
77
+ export {};
package/package.json CHANGED
@@ -1,9 +1,22 @@
1
1
  {
2
2
  "name": "@salt-ds/core",
3
- "version": "1.8.1",
3
+ "version": "1.9.0",
4
4
  "license": "Apache-2.0",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/jpmorganchase/salt-ds.git",
8
+ "directory": "packages/core"
9
+ },
10
+ "bugs": "https://github.com/jpmorganchase/salt-ds/issues",
5
11
  "main": "dist-cjs/index.js",
6
12
  "sideEffects": false,
13
+ "dependencies": {
14
+ "@floating-ui/react": "^0.23.0",
15
+ "clsx": "^2.0.0",
16
+ "@salt-ds/window": "^0.1.1",
17
+ "@salt-ds/styles": "^0.1.1",
18
+ "@salt-ds/icons": "^1.7.0"
19
+ },
7
20
  "peerDependencies": {
8
21
  "@types/react": ">=16.14.0",
9
22
  "react": ">=16.14.0",
@@ -20,22 +33,10 @@
20
33
  },
21
34
  "module": "dist-es/index.js",
22
35
  "typings": "dist-types/index.d.ts",
23
- "dependencies": {
24
- "clsx": "^2.0.0",
25
- "@floating-ui/react": "^0.23.0",
26
- "@salt-ds/window": "^0.1.1",
27
- "@salt-ds/styles": "^0.1.1",
28
- "@salt-ds/icons": "^1.6.0"
29
- },
30
36
  "files": [
31
37
  "dist-cjs",
32
38
  "dist-es",
33
39
  "dist-types",
34
40
  "README.md"
35
- ],
36
- "repository": {
37
- "type": "git",
38
- "url": "https://github.com/jpmorganchase/salt-ds",
39
- "directory": "packages/core"
40
- }
41
+ ]
41
42
  }
@@ -1,38 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var react = require('@floating-ui/react');
6
-
7
- const DEFAULT_FLOATING_UI_MIDDLEWARE = [
8
- react.flip(),
9
- react.shift({ limiter: react.limitShift() })
10
- ];
11
- function useFloatingUI(props) {
12
- const {
13
- placement,
14
- strategy,
15
- middleware = DEFAULT_FLOATING_UI_MIDDLEWARE,
16
- open = false,
17
- onOpenChange
18
- } = props;
19
- const { reference, floating, refs, update, ...rest } = react.useFloating({
20
- placement,
21
- strategy,
22
- middleware,
23
- open,
24
- onOpenChange,
25
- whileElementsMounted: react.autoUpdate
26
- });
27
- return {
28
- reference,
29
- floating,
30
- refs,
31
- update,
32
- ...rest
33
- };
34
- }
35
-
36
- exports.DEFAULT_FLOATING_UI_MIDDLEWARE = DEFAULT_FLOATING_UI_MIDDLEWARE;
37
- exports.useFloatingUI = useFloatingUI;
38
- //# sourceMappingURL=useFloatingUI.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFloatingUI.js","sources":["../src/utils/useFloatingUI.tsx"],"sourcesContent":["import type { Middleware, Placement, Strategy } from \"@floating-ui/react\";\nimport {\n autoUpdate,\n flip,\n limitShift,\n shift,\n useFloating,\n} from \"@floating-ui/react\";\n\nexport type UseFloatingUIProps = {\n /**\n * Sets position relative to trigger.\n */\n placement?: Placement;\n strategy?: Strategy;\n middleware?: Middleware[];\n /**\n * Sets visible state.\n */\n open?: boolean;\n /**\n * Callback function triggered when open state changes.\n */\n onOpenChange?: (open: boolean) => void;\n};\n\nexport const DEFAULT_FLOATING_UI_MIDDLEWARE = [\n flip(),\n shift({ limiter: limitShift() }),\n];\n\nexport function useFloatingUI(\n props: UseFloatingUIProps\n): ReturnType<typeof useFloating> {\n const {\n placement,\n strategy,\n middleware = DEFAULT_FLOATING_UI_MIDDLEWARE,\n open = false,\n onOpenChange,\n } = props;\n\n const { reference, floating, refs, update, ...rest } = useFloating({\n placement,\n strategy,\n middleware,\n open,\n onOpenChange,\n whileElementsMounted: autoUpdate,\n });\n\n return {\n reference,\n floating,\n refs,\n update,\n ...rest,\n };\n}\n"],"names":["flip","shift","limitShift","useFloating","autoUpdate"],"mappings":";;;;;;AA0BO,MAAM,8BAAiC,GAAA;AAAA,EAC5CA,UAAK,EAAA;AAAA,EACLC,WAAM,CAAA,EAAE,OAAS,EAAAC,gBAAA,IAAc,CAAA;AACjC,EAAA;AAEO,SAAS,cACd,KACgC,EAAA;AAChC,EAAM,MAAA;AAAA,IACJ,SAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAa,GAAA,8BAAA;AAAA,IACb,IAAO,GAAA,KAAA;AAAA,IACP,YAAA;AAAA,GACE,GAAA,KAAA,CAAA;AAEJ,EAAA,MAAM,EAAE,SAAW,EAAA,QAAA,EAAU,MAAM,MAAW,EAAA,GAAA,IAAA,KAASC,iBAAY,CAAA;AAAA,IACjE,SAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAA;AAAA,IACA,IAAA;AAAA,IACA,YAAA;AAAA,IACA,oBAAsB,EAAAC,gBAAA;AAAA,GACvB,CAAA,CAAA;AAED,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,MAAA;AAAA,IACA,GAAG,IAAA;AAAA,GACL,CAAA;AACF;;;;;"}
@@ -1,33 +0,0 @@
1
- import { flip, shift, limitShift, useFloating, autoUpdate } from '@floating-ui/react';
2
-
3
- const DEFAULT_FLOATING_UI_MIDDLEWARE = [
4
- flip(),
5
- shift({ limiter: limitShift() })
6
- ];
7
- function useFloatingUI(props) {
8
- const {
9
- placement,
10
- strategy,
11
- middleware = DEFAULT_FLOATING_UI_MIDDLEWARE,
12
- open = false,
13
- onOpenChange
14
- } = props;
15
- const { reference, floating, refs, update, ...rest } = useFloating({
16
- placement,
17
- strategy,
18
- middleware,
19
- open,
20
- onOpenChange,
21
- whileElementsMounted: autoUpdate
22
- });
23
- return {
24
- reference,
25
- floating,
26
- refs,
27
- update,
28
- ...rest
29
- };
30
- }
31
-
32
- export { DEFAULT_FLOATING_UI_MIDDLEWARE, useFloatingUI };
33
- //# sourceMappingURL=useFloatingUI.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFloatingUI.js","sources":["../src/utils/useFloatingUI.tsx"],"sourcesContent":["import type { Middleware, Placement, Strategy } from \"@floating-ui/react\";\nimport {\n autoUpdate,\n flip,\n limitShift,\n shift,\n useFloating,\n} from \"@floating-ui/react\";\n\nexport type UseFloatingUIProps = {\n /**\n * Sets position relative to trigger.\n */\n placement?: Placement;\n strategy?: Strategy;\n middleware?: Middleware[];\n /**\n * Sets visible state.\n */\n open?: boolean;\n /**\n * Callback function triggered when open state changes.\n */\n onOpenChange?: (open: boolean) => void;\n};\n\nexport const DEFAULT_FLOATING_UI_MIDDLEWARE = [\n flip(),\n shift({ limiter: limitShift() }),\n];\n\nexport function useFloatingUI(\n props: UseFloatingUIProps\n): ReturnType<typeof useFloating> {\n const {\n placement,\n strategy,\n middleware = DEFAULT_FLOATING_UI_MIDDLEWARE,\n open = false,\n onOpenChange,\n } = props;\n\n const { reference, floating, refs, update, ...rest } = useFloating({\n placement,\n strategy,\n middleware,\n open,\n onOpenChange,\n whileElementsMounted: autoUpdate,\n });\n\n return {\n reference,\n floating,\n refs,\n update,\n ...rest,\n };\n}\n"],"names":[],"mappings":";;AA0BO,MAAM,8BAAiC,GAAA;AAAA,EAC5C,IAAK,EAAA;AAAA,EACL,KAAM,CAAA,EAAE,OAAS,EAAA,UAAA,IAAc,CAAA;AACjC,EAAA;AAEO,SAAS,cACd,KACgC,EAAA;AAChC,EAAM,MAAA;AAAA,IACJ,SAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAa,GAAA,8BAAA;AAAA,IACb,IAAO,GAAA,KAAA;AAAA,IACP,YAAA;AAAA,GACE,GAAA,KAAA,CAAA;AAEJ,EAAA,MAAM,EAAE,SAAW,EAAA,QAAA,EAAU,MAAM,MAAW,EAAA,GAAA,IAAA,KAAS,WAAY,CAAA;AAAA,IACjE,SAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAA;AAAA,IACA,IAAA;AAAA,IACA,YAAA;AAAA,IACA,oBAAsB,EAAA,UAAA;AAAA,GACvB,CAAA,CAAA;AAED,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,MAAA;AAAA,IACA,GAAG,IAAA;AAAA,GACL,CAAA;AACF;;;;"}
@@ -1,34 +0,0 @@
1
- import type { Middleware, Placement, Strategy } from "@floating-ui/react";
2
- import { useFloating } from "@floating-ui/react";
3
- export declare type UseFloatingUIProps = {
4
- /**
5
- * Sets position relative to trigger.
6
- */
7
- placement?: Placement;
8
- strategy?: Strategy;
9
- middleware?: Middleware[];
10
- /**
11
- * Sets visible state.
12
- */
13
- open?: boolean;
14
- /**
15
- * Callback function triggered when open state changes.
16
- */
17
- onOpenChange?: (open: boolean) => void;
18
- };
19
- export declare const DEFAULT_FLOATING_UI_MIDDLEWARE: {
20
- name: string;
21
- options?: any;
22
- fn: (state: {
23
- x: number;
24
- y: number;
25
- initialPlacement: Placement;
26
- placement: Placement;
27
- strategy: Strategy;
28
- middlewareData: import("@floating-ui/react").MiddlewareData;
29
- rects: import("@floating-ui/react").ElementRects;
30
- platform: import("@floating-ui/core").Platform;
31
- elements: import("@floating-ui/react").Elements;
32
- }) => import("@floating-ui/react").MiddlewareReturn | Promise<import("@floating-ui/react").MiddlewareReturn>;
33
- }[];
34
- export declare function useFloatingUI(props: UseFloatingUIProps): ReturnType<typeof useFloating>;