@salt-ds/lab 1.0.0-alpha.33 → 1.0.0-alpha.35

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 (182) hide show
  1. package/css/salt-lab.css +101 -398
  2. package/dist-cjs/calendar/Calendar.css.js +1 -1
  3. package/dist-cjs/calendar/internal/CalendarCarousel.css.js +1 -1
  4. package/dist-cjs/calendar/internal/CalendarCarousel.js +5 -29
  5. package/dist-cjs/calendar/internal/CalendarCarousel.js.map +1 -1
  6. package/dist-cjs/calendar/internal/CalendarContext.js.map +1 -1
  7. package/dist-cjs/calendar/internal/CalendarDay.css.js +1 -1
  8. package/dist-cjs/calendar/internal/CalendarDay.js +18 -19
  9. package/dist-cjs/calendar/internal/CalendarDay.js.map +1 -1
  10. package/dist-cjs/calendar/internal/CalendarMonth.css.js +1 -1
  11. package/dist-cjs/calendar/internal/CalendarMonth.js +0 -2
  12. package/dist-cjs/calendar/internal/CalendarMonth.js.map +1 -1
  13. package/dist-cjs/calendar/internal/CalendarNavigation.css.js +1 -1
  14. package/dist-cjs/calendar/internal/CalendarNavigation.js +74 -81
  15. package/dist-cjs/calendar/internal/CalendarNavigation.js.map +1 -1
  16. package/dist-cjs/calendar/internal/CalendarWeekHeader.css.js +1 -1
  17. package/dist-cjs/calendar/useCalendar.js +14 -8
  18. package/dist-cjs/calendar/useCalendar.js.map +1 -1
  19. package/dist-cjs/calendar/useCalendarDay.js +15 -5
  20. package/dist-cjs/calendar/useCalendarDay.js.map +1 -1
  21. package/dist-cjs/calendar/useSelection.js.map +1 -1
  22. package/dist-cjs/combo-box-next/ComboBoxNext.js +36 -13
  23. package/dist-cjs/combo-box-next/ComboBoxNext.js.map +1 -1
  24. package/dist-cjs/combo-box-next/useComboBoxNext.js +16 -15
  25. package/dist-cjs/combo-box-next/useComboBoxNext.js.map +1 -1
  26. package/dist-cjs/dropdown-next/DropdownNext.js +7 -8
  27. package/dist-cjs/dropdown-next/DropdownNext.js.map +1 -1
  28. package/dist-cjs/index.js +0 -18
  29. package/dist-cjs/index.js.map +1 -1
  30. package/dist-cjs/list-control/ListControlContext.js +3 -1
  31. package/dist-cjs/list-control/ListControlContext.js.map +1 -1
  32. package/dist-cjs/list-control/ListControlState.js +16 -18
  33. package/dist-cjs/list-control/ListControlState.js.map +1 -1
  34. package/dist-cjs/option/Option.css.js +1 -1
  35. package/dist-cjs/option/Option.js +10 -20
  36. package/dist-cjs/option/Option.js.map +1 -1
  37. package/dist-cjs/overlay/Overlay.css.js +1 -1
  38. package/dist-cjs/overlay/Overlay.js +1 -7
  39. package/dist-cjs/overlay/Overlay.js.map +1 -1
  40. package/dist-cjs/overlay/OverlayPanel.js +18 -24
  41. package/dist-cjs/overlay/OverlayPanel.js.map +1 -1
  42. package/dist-cjs/overlay/OverlayPanelBase.js +2 -4
  43. package/dist-cjs/overlay/OverlayPanelBase.js.map +1 -1
  44. package/dist-cjs/tabs/Tab.js +1 -1
  45. package/dist-cjs/tabs/Tab.js.map +1 -1
  46. package/dist-cjs/tabs-next/TabNextContext.js.map +1 -1
  47. package/dist-cjs/tabs-next/TabstripNext.css.js +1 -1
  48. package/dist-cjs/tabs-next/TabstripNext.js +23 -21
  49. package/dist-cjs/tabs-next/TabstripNext.js.map +1 -1
  50. package/dist-es/calendar/Calendar.css.js +1 -1
  51. package/dist-es/calendar/internal/CalendarCarousel.css.js +1 -1
  52. package/dist-es/calendar/internal/CalendarCarousel.js +5 -29
  53. package/dist-es/calendar/internal/CalendarCarousel.js.map +1 -1
  54. package/dist-es/calendar/internal/CalendarContext.js.map +1 -1
  55. package/dist-es/calendar/internal/CalendarDay.css.js +1 -1
  56. package/dist-es/calendar/internal/CalendarDay.js +20 -21
  57. package/dist-es/calendar/internal/CalendarDay.js.map +1 -1
  58. package/dist-es/calendar/internal/CalendarMonth.css.js +1 -1
  59. package/dist-es/calendar/internal/CalendarMonth.js +0 -2
  60. package/dist-es/calendar/internal/CalendarMonth.js.map +1 -1
  61. package/dist-es/calendar/internal/CalendarNavigation.css.js +1 -1
  62. package/dist-es/calendar/internal/CalendarNavigation.js +75 -82
  63. package/dist-es/calendar/internal/CalendarNavigation.js.map +1 -1
  64. package/dist-es/calendar/internal/CalendarWeekHeader.css.js +1 -1
  65. package/dist-es/calendar/useCalendar.js +14 -8
  66. package/dist-es/calendar/useCalendar.js.map +1 -1
  67. package/dist-es/calendar/useCalendarDay.js +15 -5
  68. package/dist-es/calendar/useCalendarDay.js.map +1 -1
  69. package/dist-es/calendar/useSelection.js.map +1 -1
  70. package/dist-es/combo-box-next/ComboBoxNext.js +36 -13
  71. package/dist-es/combo-box-next/ComboBoxNext.js.map +1 -1
  72. package/dist-es/combo-box-next/useComboBoxNext.js +16 -15
  73. package/dist-es/combo-box-next/useComboBoxNext.js.map +1 -1
  74. package/dist-es/dropdown-next/DropdownNext.js +8 -9
  75. package/dist-es/dropdown-next/DropdownNext.js.map +1 -1
  76. package/dist-es/index.js +0 -8
  77. package/dist-es/index.js.map +1 -1
  78. package/dist-es/list-control/ListControlContext.js +3 -1
  79. package/dist-es/list-control/ListControlContext.js.map +1 -1
  80. package/dist-es/list-control/ListControlState.js +16 -19
  81. package/dist-es/list-control/ListControlState.js.map +1 -1
  82. package/dist-es/option/Option.css.js +1 -1
  83. package/dist-es/option/Option.js +11 -21
  84. package/dist-es/option/Option.js.map +1 -1
  85. package/dist-es/overlay/Overlay.css.js +1 -1
  86. package/dist-es/overlay/Overlay.js +1 -7
  87. package/dist-es/overlay/Overlay.js.map +1 -1
  88. package/dist-es/overlay/OverlayPanel.js +19 -25
  89. package/dist-es/overlay/OverlayPanel.js.map +1 -1
  90. package/dist-es/overlay/OverlayPanelBase.js +2 -4
  91. package/dist-es/overlay/OverlayPanelBase.js.map +1 -1
  92. package/dist-es/tabs/Tab.js +1 -1
  93. package/dist-es/tabs/Tab.js.map +1 -1
  94. package/dist-es/tabs-next/TabNextContext.js.map +1 -1
  95. package/dist-es/tabs-next/TabstripNext.css.js +1 -1
  96. package/dist-es/tabs-next/TabstripNext.js +23 -21
  97. package/dist-es/tabs-next/TabstripNext.js.map +1 -1
  98. package/dist-types/calendar/internal/CalendarContext.d.ts +2 -2
  99. package/dist-types/calendar/internal/CalendarNavigation.d.ts +3 -7
  100. package/dist-types/calendar/useCalendarDay.d.ts +7 -4
  101. package/dist-types/calendar/useSelection.d.ts +4 -4
  102. package/dist-types/combo-box-next/ComboBoxNext.d.ts +7 -10
  103. package/dist-types/combo-box-next/useComboBoxNext.d.ts +6 -4
  104. package/dist-types/dropdown-next/DropdownNext.d.ts +49 -7
  105. package/dist-types/index.d.ts +0 -2
  106. package/dist-types/list-control/ListControlContext.d.ts +1 -1
  107. package/dist-types/list-control/ListControlState.d.ts +14 -12
  108. package/dist-types/option/Option.d.ts +0 -4
  109. package/dist-types/tabs/drag-drop/drag-utils.d.ts +6 -6
  110. package/dist-types/tabs-next/TabNextContext.d.ts +2 -2
  111. package/package.json +2 -2
  112. package/dist-cjs/dialog/Dialog.css.js +0 -6
  113. package/dist-cjs/dialog/Dialog.css.js.map +0 -1
  114. package/dist-cjs/dialog/Dialog.js +0 -115
  115. package/dist-cjs/dialog/Dialog.js.map +0 -1
  116. package/dist-cjs/dialog/DialogActions.css.js +0 -6
  117. package/dist-cjs/dialog/DialogActions.css.js.map +0 -1
  118. package/dist-cjs/dialog/DialogActions.js +0 -33
  119. package/dist-cjs/dialog/DialogActions.js.map +0 -1
  120. package/dist-cjs/dialog/DialogCloseButton.css.js +0 -6
  121. package/dist-cjs/dialog/DialogCloseButton.css.js.map +0 -1
  122. package/dist-cjs/dialog/DialogCloseButton.js +0 -39
  123. package/dist-cjs/dialog/DialogCloseButton.js.map +0 -1
  124. package/dist-cjs/dialog/DialogContent.css.js +0 -6
  125. package/dist-cjs/dialog/DialogContent.css.js.map +0 -1
  126. package/dist-cjs/dialog/DialogContent.js +0 -45
  127. package/dist-cjs/dialog/DialogContent.js.map +0 -1
  128. package/dist-cjs/dialog/DialogContext.js +0 -17
  129. package/dist-cjs/dialog/DialogContext.js.map +0 -1
  130. package/dist-cjs/dialog/DialogTitle.css.js +0 -6
  131. package/dist-cjs/dialog/DialogTitle.css.js.map +0 -1
  132. package/dist-cjs/dialog/DialogTitle.js +0 -67
  133. package/dist-cjs/dialog/DialogTitle.js.map +0 -1
  134. package/dist-cjs/drawer/Drawer.css.js +0 -6
  135. package/dist-cjs/drawer/Drawer.css.js.map +0 -1
  136. package/dist-cjs/drawer/Drawer.js +0 -104
  137. package/dist-cjs/drawer/Drawer.js.map +0 -1
  138. package/dist-cjs/drawer/DrawerCloseButton.css.js +0 -6
  139. package/dist-cjs/drawer/DrawerCloseButton.css.js.map +0 -1
  140. package/dist-cjs/drawer/DrawerCloseButton.js +0 -44
  141. package/dist-cjs/drawer/DrawerCloseButton.js.map +0 -1
  142. package/dist-es/dialog/Dialog.css.js +0 -4
  143. package/dist-es/dialog/Dialog.css.js.map +0 -1
  144. package/dist-es/dialog/Dialog.js +0 -110
  145. package/dist-es/dialog/Dialog.js.map +0 -1
  146. package/dist-es/dialog/DialogActions.css.js +0 -4
  147. package/dist-es/dialog/DialogActions.css.js.map +0 -1
  148. package/dist-es/dialog/DialogActions.js +0 -29
  149. package/dist-es/dialog/DialogActions.js.map +0 -1
  150. package/dist-es/dialog/DialogCloseButton.css.js +0 -4
  151. package/dist-es/dialog/DialogCloseButton.css.js.map +0 -1
  152. package/dist-es/dialog/DialogCloseButton.js +0 -31
  153. package/dist-es/dialog/DialogCloseButton.js.map +0 -1
  154. package/dist-es/dialog/DialogContent.css.js +0 -4
  155. package/dist-es/dialog/DialogContent.css.js.map +0 -1
  156. package/dist-es/dialog/DialogContent.js +0 -41
  157. package/dist-es/dialog/DialogContent.js.map +0 -1
  158. package/dist-es/dialog/DialogContext.js +0 -12
  159. package/dist-es/dialog/DialogContext.js.map +0 -1
  160. package/dist-es/dialog/DialogTitle.css.js +0 -4
  161. package/dist-es/dialog/DialogTitle.css.js.map +0 -1
  162. package/dist-es/dialog/DialogTitle.js +0 -59
  163. package/dist-es/dialog/DialogTitle.js.map +0 -1
  164. package/dist-es/drawer/Drawer.css.js +0 -4
  165. package/dist-es/drawer/Drawer.css.js.map +0 -1
  166. package/dist-es/drawer/Drawer.js +0 -100
  167. package/dist-es/drawer/Drawer.js.map +0 -1
  168. package/dist-es/drawer/DrawerCloseButton.css.js +0 -4
  169. package/dist-es/drawer/DrawerCloseButton.css.js.map +0 -1
  170. package/dist-es/drawer/DrawerCloseButton.js +0 -36
  171. package/dist-es/drawer/DrawerCloseButton.js.map +0 -1
  172. package/dist-types/calendar/useCalendar.d.ts +0 -60
  173. package/dist-types/dialog/Dialog.d.ts +0 -46
  174. package/dist-types/dialog/DialogActions.d.ts +0 -8
  175. package/dist-types/dialog/DialogCloseButton.d.ts +0 -2
  176. package/dist-types/dialog/DialogContent.d.ts +0 -8
  177. package/dist-types/dialog/DialogContext.d.ts +0 -8
  178. package/dist-types/dialog/DialogTitle.d.ts +0 -22
  179. package/dist-types/dialog/index.d.ts +0 -6
  180. package/dist-types/drawer/Drawer.d.ts +0 -28
  181. package/dist-types/drawer/DrawerCloseButton.d.ts +0 -2
  182. package/dist-types/drawer/index.d.ts +0 -2
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dialog.js","sources":["../src/dialog/Dialog.tsx"],"sourcesContent":["import {\n forwardRef,\n HTMLAttributes,\n useEffect,\n useMemo,\n useState,\n ComponentProps,\n ReactNode,\n} from \"react\";\nimport { clsx } from \"clsx\";\nimport {\n FloatingFocusManager,\n useClick,\n useDismiss,\n useInteractions,\n} from \"@floating-ui/react\";\nimport {\n makePrefixer,\n useFloatingComponent,\n useFloatingUI,\n useCurrentBreakpoint,\n useForkRef,\n ValidationStatus,\n Scrim,\n useId,\n} from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport dialogCss from \"./Dialog.css\";\nimport { DialogContext } from \"./DialogContext\";\n\ninterface ConditionalScrimWrapperProps {\n children?: ReactNode;\n condition: boolean;\n}\n\nexport const ConditionalScrimWrapper = ({\n condition,\n children,\n}: ConditionalScrimWrapperProps) => {\n return condition ? <Scrim fixed>{children}</Scrim> : <>{children} </>;\n};\n\nexport interface DialogProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Display or hide the component.\n */\n open?: boolean;\n /**\n * Callback function triggered when open state changes.\n */\n onOpenChange?: (open: boolean) => void;\n /**\n * The status of the Dialog\n * */\n status?: ValidationStatus;\n /**\n * Which element to initially focus. Can be either a number (tabbable index as specified by the order) or a ref.\n * Default value is 0 (first tabbable element).\n * */\n initialFocus?: ComponentProps<typeof FloatingFocusManager>[\"initialFocus\"];\n /**\n * Size of the Dialog\n * */\n size?: \"small\" | \"medium\" | \"large\";\n /**\n * Prevent the dialog closing on click away\n * */\n disableDismiss?: boolean;\n /**\n * Prevent Scrim from rendering\n * */\n disableScrim?: boolean;\n /**\n * Optional id prop\n * Used for accessibility purposes to announce the title and subtitle when using a screen reader\n * */\n idProp?: string;\n}\n\nconst withBaseName = makePrefixer(\"saltDialog\");\n\nexport const Dialog = forwardRef<HTMLDivElement, DialogProps>(function Dialog(\n props,\n ref\n) {\n const {\n children,\n className,\n open = false,\n onOpenChange,\n status,\n disableDismiss,\n size = \"medium\",\n disableScrim,\n idProp,\n ...rest\n } = props;\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-dialog\",\n css: dialogCss,\n window: targetWindow,\n });\n\n const id = useId(idProp);\n\n const currentbreakpoint = useCurrentBreakpoint();\n\n const [showComponent, setShowComponent] = useState(false);\n\n const { context, floating, elements } = useFloatingUI({\n open,\n onOpenChange,\n });\n\n const { getFloatingProps } = useInteractions([\n useClick(context),\n useDismiss(context, { enabled: !disableDismiss }),\n ]);\n\n const { Component: FloatingComponent } = useFloatingComponent();\n\n const floatingRef = useForkRef<HTMLDivElement>(floating, ref);\n\n useEffect(() => {\n if (open && !showComponent) {\n setShowComponent(true);\n }\n\n if (!open && showComponent) {\n const animate = setTimeout(() => {\n setShowComponent(false);\n }, 300); // var(--salt-duration-perceptible)\n return () => clearTimeout(animate);\n }\n }, [open, showComponent, setShowComponent]);\n\n const contextValue = useMemo(() => ({ status, id }), [status, id]);\n\n return (\n <DialogContext.Provider value={contextValue}>\n <ConditionalScrimWrapper condition={open && !disableScrim}>\n <FloatingComponent\n open={showComponent}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={id}\n ref={floatingRef}\n width={elements.floating?.offsetWidth}\n height={elements.floating?.offsetHeight}\n focusManagerProps={{\n context: context,\n }}\n className={clsx(\n withBaseName(),\n withBaseName(size, currentbreakpoint),\n {\n [withBaseName(\"enterAnimation\")]: open,\n [withBaseName(\"exitAnimation\")]: !open,\n [withBaseName(status as string)]: status,\n },\n className\n )}\n onAnimationEnd={() => {\n if (!open && showComponent) {\n setShowComponent(false);\n }\n }}\n {...getFloatingProps()}\n {...rest}\n >\n {children}\n </FloatingComponent>\n </ConditionalScrimWrapper>\n </DialogContext.Provider>\n );\n});\n"],"names":["Dialog","dialogCss"],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltDialogActions {\n padding: var(--salt-spacing-300);\n padding-bottom: 0;\n display: flex;\n justify-content: flex-end;\n gap: var(--salt-spacing-100);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=DialogActions.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogActions.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,29 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { forwardRef } from 'react';
3
- import { clsx } from 'clsx';
4
- import { makePrefixer } from '@salt-ds/core';
5
- import { useWindow } from '@salt-ds/window';
6
- import { useComponentCssInjection } from '@salt-ds/styles';
7
- import css_248z from './DialogActions.css.js';
8
-
9
- const withBaseName = makePrefixer("saltDialogActions");
10
- const DialogActions = forwardRef(
11
- function DialogActions2(props, ref) {
12
- const { children, className, ...rest } = props;
13
- const targetWindow = useWindow();
14
- useComponentCssInjection({
15
- testId: "salt-dialog-actions",
16
- css: css_248z,
17
- window: targetWindow
18
- });
19
- return /* @__PURE__ */ jsx("div", {
20
- className: clsx(withBaseName(), className),
21
- ...rest,
22
- ref,
23
- children
24
- });
25
- }
26
- );
27
-
28
- export { DialogActions };
29
- //# sourceMappingURL=DialogActions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogActions.js","sources":["../src/dialog/DialogActions.tsx"],"sourcesContent":["import { forwardRef, HTMLAttributes, ReactNode } from \"react\";\nimport { clsx } from \"clsx\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport dialogActionsCss from \"./DialogActions.css\";\n\nconst withBaseName = makePrefixer(\"saltDialogActions\");\n\nexport interface DialogActionsProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * The content of Dialog Actions\n */\n children?: ReactNode;\n}\n\nexport const DialogActions = forwardRef<HTMLDivElement, DialogActionsProps>(\n function DialogActions(props, ref) {\n const { children, className, ...rest } = props;\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-dialog-actions\",\n css: dialogActionsCss,\n window: targetWindow,\n });\n\n return (\n <div className={clsx(withBaseName(), className)} {...rest} ref={ref}>\n {children}\n </div>\n );\n }\n);\n"],"names":["DialogActions","dialogActionsCss"],"mappings":";;;;;;;;AAQA,MAAM,YAAA,GAAe,aAAa,mBAAmB,CAAA,CAAA;AAS9C,MAAM,aAAgB,GAAA,UAAA;AAAA,EAC3B,SAASA,cAAc,CAAA,KAAA,EAAO,GAAK,EAAA;AACjC,IAAA,MAAM,EAAE,QAAA,EAAU,SAAc,EAAA,GAAA,IAAA,EAAS,GAAA,KAAA,CAAA;AACzC,IAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,IAAyB,wBAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,qBAAA;AAAA,MACR,GAAK,EAAAC,QAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,uBACG,GAAA,CAAA,KAAA,EAAA;AAAA,MAAI,SAAW,EAAA,IAAA,CAAK,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,MAAI,GAAG,IAAA;AAAA,MAAM,GAAA;AAAA,MACxD,QAAA;AAAA,KACH,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltButton.saltDialogCloseButton {\n position: absolute;\n top: 0;\n right: 0;\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=DialogCloseButton.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogCloseButton.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,31 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { forwardRef } from 'react';
3
- import clsx from 'clsx';
4
- import { makePrefixer, Button } from '@salt-ds/core';
5
- import { useWindow } from '@salt-ds/window';
6
- import { useComponentCssInjection } from '@salt-ds/styles';
7
- import { CloseIcon } from '@salt-ds/icons';
8
- import css_248z from './DialogCloseButton.css.js';
9
-
10
- const withBaseName = makePrefixer("saltDialogCloseButton");
11
- const DialogCloseButton = forwardRef(
12
- function DialogCloseButton2({ className, ...rest }, ref) {
13
- const targetWindow = useWindow();
14
- useComponentCssInjection({
15
- testId: "salt-dialog-close-button",
16
- css: css_248z,
17
- window: targetWindow
18
- });
19
- return /* @__PURE__ */ jsx(Button, {
20
- ref,
21
- "aria-label": "Close dialog",
22
- variant: "secondary",
23
- className: clsx(withBaseName(), className),
24
- ...rest,
25
- children: /* @__PURE__ */ jsx(CloseIcon, {})
26
- });
27
- }
28
- );
29
-
30
- export { DialogCloseButton };
31
- //# sourceMappingURL=DialogCloseButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogCloseButton.js","sources":["../src/dialog/DialogCloseButton.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport clsx from \"clsx\";\nimport { Button, ButtonProps, makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { CloseIcon } from \"@salt-ds/icons\";\n\nimport dialogCloseButtonCss from \"./DialogCloseButton.css\";\n\nconst withBaseName = makePrefixer(\"saltDialogCloseButton\");\n\nexport const DialogCloseButton = forwardRef<HTMLButtonElement, ButtonProps>(\n function DialogCloseButton({ className, ...rest }, ref) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-dialog-close-button\",\n css: dialogCloseButtonCss,\n window: targetWindow,\n });\n\n return (\n <Button\n ref={ref}\n aria-label=\"Close dialog\"\n variant=\"secondary\"\n className={clsx(withBaseName(), className)}\n {...rest}\n >\n <CloseIcon />\n </Button>\n );\n }\n);\n"],"names":["DialogCloseButton","dialogCloseButtonCss"],"mappings":";;;;;;;;;AASA,MAAM,YAAA,GAAe,aAAa,uBAAuB,CAAA,CAAA;AAElD,MAAM,iBAAoB,GAAA,UAAA;AAAA,EAC/B,SAASA,kBAAkB,CAAA,EAAE,SAAc,EAAA,GAAA,IAAA,IAAQ,GAAK,EAAA;AACtD,IAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,IAAyB,wBAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,0BAAA;AAAA,MACR,GAAK,EAAAC,QAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,uBACG,GAAA,CAAA,MAAA,EAAA;AAAA,MACC,GAAA;AAAA,MACA,YAAW,EAAA,cAAA;AAAA,MACX,OAAQ,EAAA,WAAA;AAAA,MACR,SAAW,EAAA,IAAA,CAAK,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,MACxC,GAAG,IAAA;AAAA,MAEJ,8BAAC,SAAU,EAAA,EAAA,CAAA;AAAA,KACb,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltDialogContent {\n color: var(--salt-content-primary-foreground);\n min-height: var(--salt-text-lineHeight);\n overflow-y: auto;\n background: var(--salt-container-primary-background);\n padding-bottom: var(--salt-spacing-50);\n\n margin-left: var(--salt-spacing-200);\n margin-right: var(--salt-spacing-300);\n padding-right: var(--salt-spacing-300);\n padding-left: var(--salt-spacing-100);\n border-bottom: var(--salt-size-border) var(--salt-separable-borderStyle) transparent;\n box-shadow: none;\n}\n\n.saltDialogContent-scroll {\n border-bottom: var(--salt-size-border) var(--salt-separable-borderStyle) var(--salt-separable-tertiary-borderColor);\n box-shadow: var(--salt-overlayable-shadow-scroll);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=DialogContent.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogContent.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,41 +0,0 @@
1
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
- import { forwardRef, useState } from 'react';
3
- import { clsx } from 'clsx';
4
- import { makePrefixer } from '@salt-ds/core';
5
- import { useWindow } from '@salt-ds/window';
6
- import { useComponentCssInjection } from '@salt-ds/styles';
7
- import css_248z from './DialogContent.css.js';
8
-
9
- const withBaseName = makePrefixer("saltDialogContent");
10
- const DialogContent = forwardRef(
11
- function DialogContent2(props, ref) {
12
- const { children, className, ...rest } = props;
13
- const [scrollTop, setScrollTop] = useState(0);
14
- const handleScroll = (event) => {
15
- setScrollTop(event.currentTarget.scrollTop);
16
- };
17
- const targetWindow = useWindow();
18
- useComponentCssInjection({
19
- testId: "salt-dialog-content",
20
- css: css_248z,
21
- window: targetWindow
22
- });
23
- return /* @__PURE__ */ jsxs(Fragment, {
24
- children: [
25
- /* @__PURE__ */ jsx("div", {
26
- className: clsx({ [withBaseName("scroll")]: scrollTop > 0 })
27
- }),
28
- /* @__PURE__ */ jsx("div", {
29
- className: clsx(withBaseName(), className),
30
- onScroll: handleScroll,
31
- ...rest,
32
- ref,
33
- children
34
- })
35
- ]
36
- });
37
- }
38
- );
39
-
40
- export { DialogContent };
41
- //# sourceMappingURL=DialogContent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogContent.js","sources":["../src/dialog/DialogContent.tsx"],"sourcesContent":["import { forwardRef, HTMLAttributes, ReactNode, useState } from \"react\";\nimport { clsx } from \"clsx\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport dialogContentCss from \"./DialogContent.css\";\n\nconst withBaseName = makePrefixer(\"saltDialogContent\");\n\nexport interface DialogContentProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * The content of Dialog Content\n */\n children?: ReactNode;\n}\n\nexport const DialogContent = forwardRef<HTMLDivElement, DialogContentProps>(\n function DialogContent(props, ref) {\n const { children, className, ...rest } = props;\n const [scrollTop, setScrollTop] = useState(0);\n\n const handleScroll = (event: React.UIEvent<HTMLElement>) => {\n setScrollTop(event.currentTarget.scrollTop);\n };\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-dialog-content\",\n css: dialogContentCss,\n window: targetWindow,\n });\n\n return (\n <>\n <div className={clsx({ [withBaseName(\"scroll\")]: scrollTop > 0 })} />\n <div\n className={clsx(withBaseName(), className)}\n onScroll={handleScroll}\n {...rest}\n ref={ref}\n >\n {children}\n </div>\n </>\n );\n }\n);\n"],"names":["DialogContent","dialogContentCss"],"mappings":";;;;;;;;AAQA,MAAM,YAAA,GAAe,aAAa,mBAAmB,CAAA,CAAA;AAS9C,MAAM,aAAgB,GAAA,UAAA;AAAA,EAC3B,SAASA,cAAc,CAAA,KAAA,EAAO,GAAK,EAAA;AACjC,IAAA,MAAM,EAAE,QAAA,EAAU,SAAc,EAAA,GAAA,IAAA,EAAS,GAAA,KAAA,CAAA;AACzC,IAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,CAAC,CAAA,CAAA;AAE5C,IAAM,MAAA,YAAA,GAAe,CAAC,KAAsC,KAAA;AAC1D,MAAa,YAAA,CAAA,KAAA,CAAM,cAAc,SAAS,CAAA,CAAA;AAAA,KAC5C,CAAA;AAEA,IAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,IAAyB,wBAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,qBAAA;AAAA,MACR,GAAK,EAAAC,QAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IACE,uBAAA,IAAA,CAAA,QAAA,EAAA;AAAA,MACE,QAAA,EAAA;AAAA,wBAAC,GAAA,CAAA,KAAA,EAAA;AAAA,UAAI,SAAA,EAAW,KAAK,EAAE,CAAC,aAAa,QAAQ,CAAA,GAAI,SAAY,GAAA,CAAA,EAAG,CAAA;AAAA,SAAG,CAAA;AAAA,wBAClE,GAAA,CAAA,KAAA,EAAA;AAAA,UACC,SAAW,EAAA,IAAA,CAAK,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,UACzC,QAAU,EAAA,YAAA;AAAA,UACT,GAAG,IAAA;AAAA,UACJ,GAAA;AAAA,UAEC,QAAA;AAAA,SACH,CAAA;AAAA,OAAA;AAAA,KACF,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -1,12 +0,0 @@
1
- import { createContext, useContext } from 'react';
2
-
3
- const DialogContext = createContext({
4
- status: void 0,
5
- id: ""
6
- });
7
- const useDialogContext = () => {
8
- return useContext(DialogContext);
9
- };
10
-
11
- export { DialogContext, useDialogContext };
12
- //# sourceMappingURL=DialogContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogContext.js","sources":["../src/dialog/DialogContext.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport { ValidationStatus } from \"@salt-ds/core\";\n\nexport const DialogContext = createContext<{\n status?: ValidationStatus;\n id: string | undefined;\n}>({\n status: undefined,\n id: \"\",\n});\n\nexport const useDialogContext = () => {\n return useContext(DialogContext);\n};\n"],"names":[],"mappings":";;AAGO,MAAM,gBAAgB,aAG1B,CAAA;AAAA,EACD,MAAQ,EAAA,KAAA,CAAA;AAAA,EACR,EAAI,EAAA,EAAA;AACN,CAAC,EAAA;AAEM,MAAM,mBAAmB,MAAM;AACpC,EAAA,OAAO,WAAW,aAAa,CAAA,CAAA;AACjC;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = "/* Styles applied to the root element */\n.saltDialogTitle {\n padding-bottom: var(--salt-spacing-100);\n padding-left: var(--salt-spacing-300);\n padding-right: var(--salt-spacing-300);\n align-items: center;\n display: flex;\n flex-direction: row;\n gap: var(--salt-spacing-100);\n box-sizing: border-box;\n}\n\n.saltDialogTitle-title {\n margin: 0;\n}\n\n/* Styles applied to the status indicator icon overriding its default size */\n.saltDialogTitle .saltStatusIndicator.saltIcon {\n --icon-size: var(--salt-text-h2-lineHeight);\n}\n\n/* Styles applied to DialogTitle when accent={true} */\n.saltDialogTitle-withAccent {\n position: relative;\n}\n\n.saltDialogTitle-withAccent::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: var(--salt-spacing-100);\n width: var(--salt-size-accent);\n background: var(--salt-accent-background);\n}\n\n.saltDialogTitle-error::before {\n background: var(--salt-status-error-borderColor);\n}\n\n.saltDialogTitle-info::before {\n background: var(--salt-status-info-borderColor);\n}\n\n.saltDialogTitle-success::before {\n background: var(--salt-status-success-borderColor);\n}\n\n.saltDialogTitle-warning::before {\n background: var(--salt-status-warning-borderColor);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=DialogTitle.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogTitle.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,59 +0,0 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import clsx from 'clsx';
3
- import { makePrefixer, StatusIndicator, Text, H2 } from '@salt-ds/core';
4
- import { useDialogContext } from './DialogContext.js';
5
- import { useWindow } from '@salt-ds/window';
6
- import { useComponentCssInjection } from '@salt-ds/styles';
7
- import css_248z from './DialogTitle.css.js';
8
-
9
- const withBaseName = makePrefixer("saltDialogTitle");
10
- const DialogTitle = ({
11
- className,
12
- title,
13
- subtitle,
14
- disableAccent,
15
- status: statusProp,
16
- ...rest
17
- }) => {
18
- const { status: statusContext, id } = useDialogContext();
19
- const targetWindow = useWindow();
20
- useComponentCssInjection({
21
- testId: "salt-dialog-title",
22
- css: css_248z,
23
- window: targetWindow
24
- });
25
- const status = statusProp != null ? statusProp : statusContext;
26
- return /* @__PURE__ */ jsxs("div", {
27
- id,
28
- className: clsx(
29
- withBaseName(),
30
- {
31
- [withBaseName("withAccent")]: !disableAccent && !status,
32
- [withBaseName(status)]: !!status
33
- },
34
- className
35
- ),
36
- ...rest,
37
- children: [
38
- status && /* @__PURE__ */ jsx(StatusIndicator, {
39
- status
40
- }),
41
- /* @__PURE__ */ jsxs("div", {
42
- children: [
43
- subtitle && /* @__PURE__ */ jsx(Text, {
44
- as: "label",
45
- variant: "secondary",
46
- children: subtitle
47
- }),
48
- /* @__PURE__ */ jsx(H2, {
49
- className: clsx(withBaseName("title")),
50
- children: title
51
- })
52
- ]
53
- })
54
- ]
55
- });
56
- };
57
-
58
- export { DialogTitle };
59
- //# sourceMappingURL=DialogTitle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DialogTitle.js","sources":["../src/dialog/DialogTitle.tsx"],"sourcesContent":["import { ReactNode, ComponentPropsWithoutRef } from \"react\";\nimport clsx from \"clsx\";\nimport {\n H2,\n StatusIndicator,\n ValidationStatus,\n makePrefixer,\n Text,\n} from \"@salt-ds/core\";\nimport { useDialogContext } from \"./DialogContext\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport dialogTitleCss from \"./DialogTitle.css\";\n\nconst withBaseName = makePrefixer(\"saltDialogTitle\");\n\ninterface DialogTitleProps\n extends Omit<ComponentPropsWithoutRef<\"div\">, \"title\"> {\n /**\n * The status of the Dialog\n */\n status?: ValidationStatus | undefined;\n /**\n * Displays the accent bar in the Dialog Title */\n disableAccent?: boolean;\n /**\n * Displays the Dialog Title in a H2 component\n */\n title: ReactNode;\n /**\n * Displays the Dialog Subtitle in a Label component\n **/\n subtitle?: ReactNode;\n\n className?: string;\n}\n\nexport const DialogTitle = ({\n className,\n title,\n subtitle,\n disableAccent,\n status: statusProp,\n ...rest\n}: DialogTitleProps) => {\n const { status: statusContext, id } = useDialogContext();\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-dialog-title\",\n css: dialogTitleCss,\n window: targetWindow,\n });\n\n const status = statusProp ?? (statusContext as ValidationStatus);\n\n return (\n <div\n id={id as string}\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"withAccent\")]: !disableAccent && !status,\n [withBaseName(status)]: !!status,\n },\n className\n )}\n {...rest}\n >\n {status && <StatusIndicator status={status} />}\n <div>\n {subtitle && (\n <Text as={\"label\"} variant=\"secondary\">\n {subtitle}\n </Text>\n )}\n <H2 className={clsx(withBaseName(\"title\"))}>{title}</H2>\n </div>\n </div>\n );\n};\n"],"names":["dialogTitleCss"],"mappings":";;;;;;;;AAcA,MAAM,YAAA,GAAe,aAAa,iBAAiB,CAAA,CAAA;AAuB5C,MAAM,cAAc,CAAC;AAAA,EAC1B,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA;AAAA,EACA,MAAQ,EAAA,UAAA;AAAA,EACL,GAAA,IAAA;AACL,CAAwB,KAAA;AACtB,EAAA,MAAM,EAAE,MAAA,EAAQ,aAAe,EAAA,EAAA,KAAO,gBAAiB,EAAA,CAAA;AACvD,EAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,EAAyB,wBAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,mBAAA;AAAA,IACR,GAAK,EAAAA,QAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,MAAM,SAAS,UAAe,IAAA,IAAA,GAAA,UAAA,GAAA,aAAA,CAAA;AAE9B,EAAA,uBACG,IAAA,CAAA,KAAA,EAAA;AAAA,IACC,EAAA;AAAA,IACA,SAAW,EAAA,IAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb;AAAA,QACE,CAAC,YAAa,CAAA,YAAY,CAAI,GAAA,CAAC,iBAAiB,CAAC,MAAA;AAAA,QACjD,CAAC,YAAA,CAAa,MAAM,CAAA,GAAI,CAAC,CAAC,MAAA;AAAA,OAC5B;AAAA,MACA,SAAA;AAAA,KACF;AAAA,IACC,GAAG,IAAA;AAAA,IAEH,QAAA,EAAA;AAAA,MAAA,MAAA,oBAAW,GAAA,CAAA,eAAA,EAAA;AAAA,QAAgB,MAAA;AAAA,OAAgB,CAAA;AAAA,sBAC3C,IAAA,CAAA,KAAA,EAAA;AAAA,QACE,QAAA,EAAA;AAAA,UAAA,QAAA,oBACE,GAAA,CAAA,IAAA,EAAA;AAAA,YAAK,EAAI,EAAA,OAAA;AAAA,YAAS,OAAQ,EAAA,WAAA;AAAA,YACxB,QAAA,EAAA,QAAA;AAAA,WACH,CAAA;AAAA,0BAED,GAAA,CAAA,EAAA,EAAA;AAAA,YAAG,SAAW,EAAA,IAAA,CAAK,YAAa,CAAA,OAAO,CAAC,CAAA;AAAA,YAAI,QAAA,EAAA,KAAA;AAAA,WAAM,CAAA;AAAA,SAAA;AAAA,OACrD,CAAA;AAAA,KAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = "/* Styles applied to Drawer component */\n.saltDrawer {\n background: var(--drawer-background);\n display: flex;\n flex-direction: column;\n max-height: 100%;\n max-width: 100%;\n overflow: auto;\n padding: var(--salt-spacing-300);\n box-shadow: var(--salt-overlayable-shadow-modal);\n z-index: var(--salt-zIndex-drawer);\n position: fixed;\n top: 0;\n box-sizing: border-box;\n}\n\n/* Styles applied when variant = \"primary\" */\n.saltDrawer-primary {\n --drawer-background: var(--salt-container-primary-background);\n}\n\n/* Styles applied when variant = \"secondary\" */\n.saltDrawer-secondary {\n --drawer-background: var(--salt-container-secondary-background);\n}\n\n/* Styles applied when position = \"top\" */\n.saltDrawer-top {\n left: 0;\n right: 0;\n bottom: auto;\n}\n\n/* Styles applied when position = \"top\" and the component mounts */\n.saltDrawer-top.saltDrawer-enterAnimation {\n animation: var(--salt-animation-slide-in-bottom);\n}\n\n/* Styles applied when position = \"top\" and the component unmounts */\n.saltDrawer-top.saltDrawer-exitAnimation {\n animation: var(--salt-animation-slide-out-bottom);\n}\n\n/* Styles applied when position = \"right\" */\n.saltDrawer-right {\n left: auto;\n right: 0;\n height: 100%;\n}\n\n/* Styles applied when position = \"right\" and the component mounts */\n.saltDrawer-right.saltDrawer-enterAnimation {\n animation: var(--salt-animation-slide-in-right);\n}\n\n/* Styles applied when position = \"right\" and the component unmounts */\n.saltDrawer-right.saltDrawer-exitAnimation {\n animation: var(--salt-animation-slide-out-right);\n}\n\n/* Styles applied when position = \"left\" */\n.saltDrawer-left {\n left: 0;\n right: auto;\n height: 100%;\n}\n\n/* Styles applied when position = \"left\" and the component mounts */\n.saltDrawer-left.saltDrawer-enterAnimation {\n animation: var(--salt-animation-slide-in-left);\n}\n\n/* Styles applied when position = \"left\" and the component unmounts */\n.saltDrawer-left.saltDrawer-exitAnimation {\n animation: var(--salt-animation-slide-out-left);\n}\n\n/* Styles applied when position = \"bottom\" */\n.saltDrawer-bottom {\n left: 0;\n right: 0;\n bottom: 0;\n top: auto;\n}\n\n/* Styles applied when position = \"bottom\" and the component mounts */\n.saltDrawer-bottom.saltDrawer-enterAnimation {\n animation: var(--salt-animation-slide-in-top);\n}\n\n/* Styles applied when position = \"bottom\" and the component unmounts */\n.saltDrawer-bottom.saltDrawer-exitAnimation {\n animation: var(--salt-animation-slide-out-top);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=Drawer.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Drawer.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,100 +0,0 @@
1
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
- import { forwardRef, useState, useEffect } from 'react';
3
- import { clsx } from 'clsx';
4
- import { useInteractions, useClick, useDismiss } from '@floating-ui/react';
5
- import { makePrefixer, useFloatingComponent, useFloatingUI, useForkRef, Scrim } from '@salt-ds/core';
6
- import { useWindow } from '@salt-ds/window';
7
- import { useComponentCssInjection } from '@salt-ds/styles';
8
- import css_248z from './Drawer.css.js';
9
-
10
- const ConditionalScrimWrapper = ({
11
- condition,
12
- children
13
- }) => {
14
- return condition ? /* @__PURE__ */ jsxs(Scrim, {
15
- fixed: true,
16
- children: [
17
- " ",
18
- children,
19
- " "
20
- ]
21
- }) : /* @__PURE__ */ jsxs(Fragment, {
22
- children: [
23
- children,
24
- " "
25
- ]
26
- });
27
- };
28
- const withBaseName = makePrefixer("saltDrawer");
29
- const Drawer = forwardRef(function Drawer2(props, ref) {
30
- var _a, _b;
31
- const {
32
- children,
33
- className,
34
- position = "left",
35
- open = false,
36
- onOpenChange,
37
- variant = "primary",
38
- disableDismiss,
39
- disableScrim,
40
- ...rest
41
- } = props;
42
- const targetWindow = useWindow();
43
- useComponentCssInjection({
44
- testId: "salt-drawer",
45
- css: css_248z,
46
- window: targetWindow
47
- });
48
- const [showComponent, setShowComponent] = useState(false);
49
- const { Component: FloatingComponent } = useFloatingComponent();
50
- const { context, floating, elements } = useFloatingUI({
51
- open,
52
- onOpenChange
53
- });
54
- const { getFloatingProps } = useInteractions([
55
- useClick(context),
56
- useDismiss(context, { enabled: !disableDismiss })
57
- ]);
58
- const handleRef = useForkRef(floating, ref);
59
- useEffect(() => {
60
- if (open && !showComponent) {
61
- setShowComponent(true);
62
- }
63
- if (!open && showComponent) {
64
- const animate = setTimeout(() => {
65
- setShowComponent(false);
66
- }, 300);
67
- return () => clearTimeout(animate);
68
- }
69
- }, [open, showComponent, setShowComponent]);
70
- return /* @__PURE__ */ jsx(ConditionalScrimWrapper, {
71
- condition: open && !disableScrim,
72
- children: /* @__PURE__ */ jsx(FloatingComponent, {
73
- open: showComponent,
74
- ref: handleRef,
75
- role: "dialog",
76
- width: (_a = elements.floating) == null ? void 0 : _a.offsetWidth,
77
- height: (_b = elements.floating) == null ? void 0 : _b.offsetHeight,
78
- "aria-modal": "true",
79
- focusManagerProps: {
80
- context
81
- },
82
- className: clsx(
83
- withBaseName(),
84
- withBaseName(position),
85
- {
86
- [withBaseName("enterAnimation")]: open,
87
- [withBaseName("exitAnimation")]: !open,
88
- [withBaseName(variant)]: variant
89
- },
90
- className
91
- ),
92
- ...getFloatingProps(),
93
- ...rest,
94
- children
95
- })
96
- });
97
- });
98
-
99
- export { Drawer };
100
- //# sourceMappingURL=Drawer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Drawer.js","sources":["../src/drawer/Drawer.tsx"],"sourcesContent":["import {\n ComponentPropsWithoutRef,\n forwardRef,\n useEffect,\n useState,\n PropsWithChildren,\n} from \"react\";\nimport { clsx } from \"clsx\";\nimport { useClick, useDismiss, useInteractions } from \"@floating-ui/react\";\nimport {\n makePrefixer,\n Scrim,\n useFloatingComponent,\n useFloatingUI,\n useForkRef,\n} from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport drawerCss from \"./Drawer.css\";\n\ninterface ConditionalScrimWrapperProps extends PropsWithChildren {\n condition: boolean;\n}\n\nconst ConditionalScrimWrapper = ({\n condition,\n children,\n}: ConditionalScrimWrapperProps) => {\n return condition ? <Scrim fixed> {children} </Scrim> : <>{children} </>;\n};\n\nexport interface DrawerProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * Defines the drawer position within the screen. Defaults to `left`.\n */\n position?: \"left\" | \"top\" | \"right\" | \"bottom\";\n /**\n * Display or hide the component.\n */\n open?: boolean;\n /**\n * Callback function triggered when open state changes.\n */\n onOpenChange?: (newOpen: boolean) => void;\n /**\n * Change background color palette\n */\n variant?: \"primary\" | \"secondary\";\n /**\n * Prevent the dialog closing on click away\n * */\n disableDismiss?: boolean;\n /**\n * Prevent Scrim from rendering\n * */\n disableScrim?: boolean;\n}\n\nconst withBaseName = makePrefixer(\"saltDrawer\");\n\nexport const Drawer = forwardRef<HTMLDivElement, DrawerProps>(function Drawer(\n props,\n ref\n) {\n const {\n children,\n className,\n position = \"left\",\n open = false,\n onOpenChange,\n variant = \"primary\",\n disableDismiss,\n disableScrim,\n ...rest\n } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-drawer\",\n css: drawerCss,\n window: targetWindow,\n });\n\n const [showComponent, setShowComponent] = useState(false);\n const { Component: FloatingComponent } = useFloatingComponent();\n\n const { context, floating, elements } = useFloatingUI({\n open,\n onOpenChange,\n });\n\n const { getFloatingProps } = useInteractions([\n useClick(context),\n useDismiss(context, { enabled: !disableDismiss }),\n ]);\n\n const handleRef = useForkRef<HTMLDivElement>(floating, ref);\n\n useEffect(() => {\n if (open && !showComponent) {\n setShowComponent(true);\n }\n\n if (!open && showComponent) {\n const animate = setTimeout(() => {\n setShowComponent(false);\n }, 300); // var(--salt-duration-perceptible)\n return () => clearTimeout(animate);\n }\n }, [open, showComponent, setShowComponent]);\n\n return (\n <ConditionalScrimWrapper condition={open && !disableScrim}>\n <FloatingComponent\n open={showComponent}\n ref={handleRef}\n role={\"dialog\"}\n width={elements.floating?.offsetWidth}\n height={elements.floating?.offsetHeight}\n aria-modal=\"true\"\n focusManagerProps={{\n context: context,\n }}\n className={clsx(\n withBaseName(),\n withBaseName(position),\n {\n [withBaseName(\"enterAnimation\")]: open,\n [withBaseName(\"exitAnimation\")]: !open,\n [withBaseName(variant)]: variant,\n },\n className\n )}\n {...getFloatingProps()}\n {...rest}\n >\n {children}\n </FloatingComponent>\n </ConditionalScrimWrapper>\n );\n});\n"],"names":["Drawer","drawerCss"],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltDrawerCloseButton-container {\n position: relative;\n display: flex;\n justify-content: flex-end;\n}\n\n.saltButton-secondary.saltDrawerCloseButton {\n position: fixed;\n margin-top: calc(var(--salt-spacing-300) * -1);\n margin-right: calc(var(--salt-spacing-300) * -1);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=DrawerCloseButton.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DrawerCloseButton.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,36 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { forwardRef } from 'react';
3
- import clsx from 'clsx';
4
- import { makePrefixer, Button } from '@salt-ds/core';
5
- import { useWindow } from '@salt-ds/window';
6
- import { useComponentCssInjection } from '@salt-ds/styles';
7
- import { CloseIcon } from '@salt-ds/icons';
8
- import css_248z from './DrawerCloseButton.css.js';
9
-
10
- const withBaseName = makePrefixer("saltDrawerCloseButton");
11
- const DrawerCloseButton = forwardRef(
12
- function DrawerCloseButton2({ className, ...rest }, ref) {
13
- const targetWindow = useWindow();
14
- useComponentCssInjection({
15
- testId: "salt-drawer-close-button",
16
- css: css_248z,
17
- window: targetWindow
18
- });
19
- return /* @__PURE__ */ jsx("div", {
20
- className: withBaseName("container"),
21
- children: /* @__PURE__ */ jsx(Button, {
22
- ref,
23
- "aria-label": "Close Drawer",
24
- variant: "secondary",
25
- className: clsx(withBaseName(), className),
26
- ...rest,
27
- children: /* @__PURE__ */ jsx(CloseIcon, {
28
- "aria-hidden": true
29
- })
30
- })
31
- });
32
- }
33
- );
34
-
35
- export { DrawerCloseButton };
36
- //# sourceMappingURL=DrawerCloseButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DrawerCloseButton.js","sources":["../src/drawer/DrawerCloseButton.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport clsx from \"clsx\";\nimport { Button, ButtonProps, makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { CloseIcon } from \"@salt-ds/icons\";\n\nimport drawerCloseButtonCss from \"./DrawerCloseButton.css\";\n\nconst withBaseName = makePrefixer(\"saltDrawerCloseButton\");\n\nexport const DrawerCloseButton = forwardRef<HTMLButtonElement, ButtonProps>(\n function DrawerCloseButton({ className, ...rest }, ref) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-drawer-close-button\",\n css: drawerCloseButtonCss,\n window: targetWindow,\n });\n\n return (\n <div className={withBaseName(\"container\")}>\n <Button\n ref={ref}\n aria-label=\"Close Drawer\"\n variant=\"secondary\"\n className={clsx(withBaseName(), className)}\n {...rest}\n >\n <CloseIcon aria-hidden />\n </Button>\n </div>\n );\n }\n);\n"],"names":["DrawerCloseButton","drawerCloseButtonCss"],"mappings":";;;;;;;;;AASA,MAAM,YAAA,GAAe,aAAa,uBAAuB,CAAA,CAAA;AAElD,MAAM,iBAAoB,GAAA,UAAA;AAAA,EAC/B,SAASA,kBAAkB,CAAA,EAAE,SAAc,EAAA,GAAA,IAAA,IAAQ,GAAK,EAAA;AACtD,IAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,IAAyB,wBAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,0BAAA;AAAA,MACR,GAAK,EAAAC,QAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,uBACG,GAAA,CAAA,KAAA,EAAA;AAAA,MAAI,SAAA,EAAW,aAAa,WAAW,CAAA;AAAA,MACtC,QAAC,kBAAA,GAAA,CAAA,MAAA,EAAA;AAAA,QACC,GAAA;AAAA,QACA,YAAW,EAAA,cAAA;AAAA,QACX,OAAQ,EAAA,WAAA;AAAA,QACR,SAAW,EAAA,IAAA,CAAK,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,QACxC,GAAG,IAAA;AAAA,QAEJ,QAAC,kBAAA,GAAA,CAAA,SAAA,EAAA;AAAA,UAAU,aAAW,EAAA,IAAA;AAAA,SAAC,CAAA;AAAA,OACzB,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -1,60 +0,0 @@
1
- import { DateValue } from "@internationalized/date";
2
- import { SyntheticEvent } from "react";
3
- import { UseMultiSelectionCalendarProps, UseOffsetSelectionCalendarProps, UseRangeSelectionCalendarProps, UseSingleSelectionCalendarProps } from "./useSelection";
4
- export declare type UnselectableInfo = {
5
- emphasis: "medium";
6
- tooltip: string;
7
- } | {
8
- emphasis: "low";
9
- tooltip?: string;
10
- };
11
- interface BaseUseCalendarProps {
12
- defaultVisibleMonth?: DateValue;
13
- onVisibleMonthChange?: (event: SyntheticEvent, visibleMonth: DateValue) => void;
14
- isDayUnselectable?: (date: DateValue) => UnselectableInfo | boolean | void;
15
- visibleMonth?: DateValue;
16
- hideOutOfRangeDates?: boolean;
17
- hideYearDropdown?: boolean;
18
- minDate?: DateValue;
19
- maxDate?: DateValue;
20
- }
21
- export declare type useCalendarProps = (Omit<UseSingleSelectionCalendarProps, "isDaySelectable"> | Omit<UseMultiSelectionCalendarProps, "isDaySelectable"> | Omit<UseRangeSelectionCalendarProps, "isDaySelectable"> | Omit<UseOffsetSelectionCalendarProps, "isDaySelectable">) & BaseUseCalendarProps;
22
- export declare function useCalendar(props: useCalendarProps): {
23
- state: {
24
- selectedDate: import("@internationalized/date").CalendarDate | import("@internationalized/date").CalendarDateTime | import("@internationalized/date").ZonedDateTime | {
25
- startDate?: DateValue | undefined;
26
- endDate?: DateValue | undefined;
27
- } | {
28
- startDate?: DateValue | undefined;
29
- endDate?: DateValue | undefined;
30
- } | DateValue[] | null | undefined;
31
- hoveredDate: import("@internationalized/date").CalendarDate | import("@internationalized/date").CalendarDateTime | import("@internationalized/date").ZonedDateTime | null | undefined;
32
- visibleMonth: DateValue;
33
- focusedDate: DateValue;
34
- minDate: DateValue | undefined;
35
- maxDate: DateValue | undefined;
36
- selectionVariant: "offset" | "range" | "default" | "multiselect";
37
- hideOutOfRangeDates: boolean | undefined;
38
- calendarFocused: boolean;
39
- };
40
- helpers: {
41
- setSelectedDate: (event: SyntheticEvent<HTMLButtonElement, Event>, newSelectedDate: DateValue) => void;
42
- isSelected: (date: DateValue) => boolean;
43
- setHoveredDate: (event: SyntheticEvent<Element, Event>, date: DateValue | null) => void;
44
- isHovered: (date: DateValue) => boolean;
45
- isSelectedSpan: (date: DateValue) => boolean;
46
- isHoveredSpan: (date: DateValue) => boolean;
47
- isSelectedStart: (date: DateValue) => boolean;
48
- isSelectedEnd: (date: DateValue) => boolean;
49
- isHoveredOffset: (date: DateValue) => boolean;
50
- setVisibleMonth: (event: SyntheticEvent, newVisibleMonth: DateValue) => void;
51
- setFocusedDate: (event: SyntheticEvent, date: DateValue) => void;
52
- setCalendarFocused: import("react").Dispatch<import("react").SetStateAction<boolean>>;
53
- isDayUnselectable: (date: DateValue) => boolean | void | UnselectableInfo;
54
- isDayVisible: (date: DateValue) => boolean;
55
- isOutsideAllowedDates: (date: DateValue) => boolean;
56
- isOutsideAllowedMonths: (date: DateValue) => boolean;
57
- isOutsideAllowedYears: (date: DateValue) => boolean;
58
- };
59
- };
60
- export {};
@@ -1,46 +0,0 @@
1
- import { HTMLAttributes, ComponentProps, ReactNode } from "react";
2
- import { FloatingFocusManager } from "@floating-ui/react";
3
- import { ValidationStatus } from "@salt-ds/core";
4
- interface ConditionalScrimWrapperProps {
5
- children?: ReactNode;
6
- condition: boolean;
7
- }
8
- export declare const ConditionalScrimWrapper: ({ condition, children, }: ConditionalScrimWrapperProps) => JSX.Element;
9
- export interface DialogProps extends HTMLAttributes<HTMLDivElement> {
10
- /**
11
- * Display or hide the component.
12
- */
13
- open?: boolean;
14
- /**
15
- * Callback function triggered when open state changes.
16
- */
17
- onOpenChange?: (open: boolean) => void;
18
- /**
19
- * The status of the Dialog
20
- * */
21
- status?: ValidationStatus;
22
- /**
23
- * Which element to initially focus. Can be either a number (tabbable index as specified by the order) or a ref.
24
- * Default value is 0 (first tabbable element).
25
- * */
26
- initialFocus?: ComponentProps<typeof FloatingFocusManager>["initialFocus"];
27
- /**
28
- * Size of the Dialog
29
- * */
30
- size?: "small" | "medium" | "large";
31
- /**
32
- * Prevent the dialog closing on click away
33
- * */
34
- disableDismiss?: boolean;
35
- /**
36
- * Prevent Scrim from rendering
37
- * */
38
- disableScrim?: boolean;
39
- /**
40
- * Optional id prop
41
- * Used for accessibility purposes to announce the title and subtitle when using a screen reader
42
- * */
43
- idProp?: string;
44
- }
45
- export declare const Dialog: import("react").ForwardRefExoticComponent<DialogProps & import("react").RefAttributes<HTMLDivElement>>;
46
- export {};
@@ -1,8 +0,0 @@
1
- import { HTMLAttributes, ReactNode } from "react";
2
- export interface DialogActionsProps extends HTMLAttributes<HTMLDivElement> {
3
- /**
4
- * The content of Dialog Actions
5
- */
6
- children?: ReactNode;
7
- }
8
- export declare const DialogActions: import("react").ForwardRefExoticComponent<DialogActionsProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,2 +0,0 @@
1
- import { ButtonProps } from "@salt-ds/core";
2
- export declare const DialogCloseButton: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -1,8 +0,0 @@
1
- import { HTMLAttributes, ReactNode } from "react";
2
- export interface DialogContentProps extends HTMLAttributes<HTMLDivElement> {
3
- /**
4
- * The content of Dialog Content
5
- */
6
- children?: ReactNode;
7
- }
8
- export declare const DialogContent: import("react").ForwardRefExoticComponent<DialogContentProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,8 +0,0 @@
1
- export declare const DialogContext: import("react").Context<{
2
- status?: "error" | "warning" | "success" | "info" | undefined;
3
- id: string | undefined;
4
- }>;
5
- export declare const useDialogContext: () => {
6
- status?: "error" | "warning" | "success" | "info" | undefined;
7
- id: string | undefined;
8
- };
@@ -1,22 +0,0 @@
1
- import { ReactNode, ComponentPropsWithoutRef } from "react";
2
- import { ValidationStatus } from "@salt-ds/core";
3
- interface DialogTitleProps extends Omit<ComponentPropsWithoutRef<"div">, "title"> {
4
- /**
5
- * The status of the Dialog
6
- */
7
- status?: ValidationStatus | undefined;
8
- /**
9
- * Displays the accent bar in the Dialog Title */
10
- disableAccent?: boolean;
11
- /**
12
- * Displays the Dialog Title in a H2 component
13
- */
14
- title: ReactNode;
15
- /**
16
- * Displays the Dialog Subtitle in a Label component
17
- **/
18
- subtitle?: ReactNode;
19
- className?: string;
20
- }
21
- export declare const DialogTitle: ({ className, title, subtitle, disableAccent, status: statusProp, ...rest }: DialogTitleProps) => JSX.Element;
22
- export {};
@@ -1,6 +0,0 @@
1
- export * from "./Dialog";
2
- export * from "./DialogTitle";
3
- export * from "./DialogActions";
4
- export * from "./DialogContent";
5
- export * from "./DialogContext";
6
- export * from "./DialogCloseButton";