@salt-ds/core 1.42.0 → 1.44.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 (124) hide show
  1. package/CHANGELOG.md +120 -0
  2. package/css/salt-core.css +315 -30
  3. package/dist-cjs/border-layout/BorderLayout.js +1 -1
  4. package/dist-cjs/border-layout/BorderLayout.js.map +1 -1
  5. package/dist-cjs/button/Button.js +2 -2
  6. package/dist-cjs/button/Button.js.map +1 -1
  7. package/dist-cjs/combo-box/ComboBox.js +22 -20
  8. package/dist-cjs/combo-box/ComboBox.js.map +1 -1
  9. package/dist-cjs/dialog/DialogContent.css.js +1 -1
  10. package/dist-cjs/dialog/DialogContent.js +24 -4
  11. package/dist-cjs/dialog/DialogContent.js.map +1 -1
  12. package/dist-cjs/dialog/DialogHeader.css.js +1 -1
  13. package/dist-cjs/dialog/DialogHeader.js +15 -16
  14. package/dist-cjs/dialog/DialogHeader.js.map +1 -1
  15. package/dist-cjs/dropdown/Dropdown.css.js +1 -1
  16. package/dist-cjs/dropdown/Dropdown.js +3 -3
  17. package/dist-cjs/dropdown/Dropdown.js.map +1 -1
  18. package/dist-cjs/index.js +6 -0
  19. package/dist-cjs/index.js.map +1 -1
  20. package/dist-cjs/option/Option.js +5 -12
  21. package/dist-cjs/option/Option.js.map +1 -1
  22. package/dist-cjs/overlay/OverlayHeader.css.js +6 -0
  23. package/dist-cjs/overlay/OverlayHeader.css.js.map +1 -0
  24. package/dist-cjs/overlay/OverlayHeader.js +40 -0
  25. package/dist-cjs/overlay/OverlayHeader.js.map +1 -0
  26. package/dist-cjs/overlay/OverlayPanelCloseButton.css.js +1 -1
  27. package/dist-cjs/overlay/OverlayPanelContent.css.js +1 -1
  28. package/dist-cjs/overlay/OverlayPanelContent.js +26 -26
  29. package/dist-cjs/overlay/OverlayPanelContent.js.map +1 -1
  30. package/dist-cjs/pill-input/PillInput.css.js +1 -1
  31. package/dist-cjs/pill-input/PillInput.js +1 -0
  32. package/dist-cjs/pill-input/PillInput.js.map +1 -1
  33. package/dist-cjs/slider/RangeSlider.js +188 -0
  34. package/dist-cjs/slider/RangeSlider.js.map +1 -0
  35. package/dist-cjs/slider/Slider.js +151 -0
  36. package/dist-cjs/slider/Slider.js.map +1 -0
  37. package/dist-cjs/slider/internal/SliderThumb.css.js +6 -0
  38. package/dist-cjs/slider/internal/SliderThumb.css.js.map +1 -0
  39. package/dist-cjs/slider/internal/SliderThumb.js +141 -0
  40. package/dist-cjs/slider/internal/SliderThumb.js.map +1 -0
  41. package/dist-cjs/slider/internal/SliderTooltip.css.js +6 -0
  42. package/dist-cjs/slider/internal/SliderTooltip.css.js.map +1 -0
  43. package/dist-cjs/slider/internal/SliderTooltip.js +70 -0
  44. package/dist-cjs/slider/internal/SliderTooltip.js.map +1 -0
  45. package/dist-cjs/slider/internal/SliderTrack.css.js +6 -0
  46. package/dist-cjs/slider/internal/SliderTrack.css.js.map +1 -0
  47. package/dist-cjs/slider/internal/SliderTrack.js +179 -0
  48. package/dist-cjs/slider/internal/SliderTrack.js.map +1 -0
  49. package/dist-cjs/slider/internal/useRangeSliderThumb.js +234 -0
  50. package/dist-cjs/slider/internal/useRangeSliderThumb.js.map +1 -0
  51. package/dist-cjs/slider/internal/useSliderThumb.js +162 -0
  52. package/dist-cjs/slider/internal/useSliderThumb.js.map +1 -0
  53. package/dist-cjs/slider/internal/utils.js +127 -0
  54. package/dist-cjs/slider/internal/utils.js.map +1 -0
  55. package/dist-cjs/switch/Switch.js.map +1 -1
  56. package/dist-es/border-layout/BorderLayout.js +2 -2
  57. package/dist-es/border-layout/BorderLayout.js.map +1 -1
  58. package/dist-es/button/Button.js +2 -2
  59. package/dist-es/button/Button.js.map +1 -1
  60. package/dist-es/combo-box/ComboBox.js +23 -21
  61. package/dist-es/combo-box/ComboBox.js.map +1 -1
  62. package/dist-es/dialog/DialogContent.css.js +1 -1
  63. package/dist-es/dialog/DialogContent.js +24 -4
  64. package/dist-es/dialog/DialogContent.js.map +1 -1
  65. package/dist-es/dialog/DialogHeader.css.js +1 -1
  66. package/dist-es/dialog/DialogHeader.js +14 -15
  67. package/dist-es/dialog/DialogHeader.js.map +1 -1
  68. package/dist-es/dropdown/Dropdown.css.js +1 -1
  69. package/dist-es/dropdown/Dropdown.js +3 -3
  70. package/dist-es/dropdown/Dropdown.js.map +1 -1
  71. package/dist-es/index.js +3 -0
  72. package/dist-es/index.js.map +1 -1
  73. package/dist-es/option/Option.js +5 -12
  74. package/dist-es/option/Option.js.map +1 -1
  75. package/dist-es/overlay/OverlayHeader.css.js +4 -0
  76. package/dist-es/overlay/OverlayHeader.css.js.map +1 -0
  77. package/dist-es/overlay/OverlayHeader.js +38 -0
  78. package/dist-es/overlay/OverlayHeader.js.map +1 -0
  79. package/dist-es/overlay/OverlayPanelCloseButton.css.js +1 -1
  80. package/dist-es/overlay/OverlayPanelContent.css.js +1 -1
  81. package/dist-es/overlay/OverlayPanelContent.js +27 -27
  82. package/dist-es/overlay/OverlayPanelContent.js.map +1 -1
  83. package/dist-es/pill-input/PillInput.css.js +1 -1
  84. package/dist-es/pill-input/PillInput.js +1 -0
  85. package/dist-es/pill-input/PillInput.js.map +1 -1
  86. package/dist-es/slider/RangeSlider.js +186 -0
  87. package/dist-es/slider/RangeSlider.js.map +1 -0
  88. package/dist-es/slider/Slider.js +149 -0
  89. package/dist-es/slider/Slider.js.map +1 -0
  90. package/dist-es/slider/internal/SliderThumb.css.js +4 -0
  91. package/dist-es/slider/internal/SliderThumb.css.js.map +1 -0
  92. package/dist-es/slider/internal/SliderThumb.js +139 -0
  93. package/dist-es/slider/internal/SliderThumb.js.map +1 -0
  94. package/dist-es/slider/internal/SliderTooltip.css.js +4 -0
  95. package/dist-es/slider/internal/SliderTooltip.css.js.map +1 -0
  96. package/dist-es/slider/internal/SliderTooltip.js +68 -0
  97. package/dist-es/slider/internal/SliderTooltip.js.map +1 -0
  98. package/dist-es/slider/internal/SliderTrack.css.js +4 -0
  99. package/dist-es/slider/internal/SliderTrack.css.js.map +1 -0
  100. package/dist-es/slider/internal/SliderTrack.js +177 -0
  101. package/dist-es/slider/internal/SliderTrack.js.map +1 -0
  102. package/dist-es/slider/internal/useRangeSliderThumb.js +232 -0
  103. package/dist-es/slider/internal/useRangeSliderThumb.js.map +1 -0
  104. package/dist-es/slider/internal/useSliderThumb.js +160 -0
  105. package/dist-es/slider/internal/useSliderThumb.js.map +1 -0
  106. package/dist-es/slider/internal/utils.js +119 -0
  107. package/dist-es/slider/internal/utils.js.map +1 -0
  108. package/dist-es/switch/Switch.js.map +1 -1
  109. package/dist-types/border-layout/BorderLayout.d.ts +2 -3
  110. package/dist-types/dialog/DialogHeader.d.ts +9 -1
  111. package/dist-types/index.d.ts +1 -0
  112. package/dist-types/overlay/OverlayHeader.d.ts +20 -0
  113. package/dist-types/overlay/index.d.ts +1 -0
  114. package/dist-types/slider/RangeSlider.d.ts +99 -0
  115. package/dist-types/slider/Slider.d.ts +100 -0
  116. package/dist-types/slider/index.d.ts +2 -0
  117. package/dist-types/slider/internal/SliderThumb.d.ts +26 -0
  118. package/dist-types/slider/internal/SliderTooltip.d.ts +6 -0
  119. package/dist-types/slider/internal/SliderTrack.d.ts +24 -0
  120. package/dist-types/slider/internal/useRangeSliderThumb.d.ts +30 -0
  121. package/dist-types/slider/internal/useSliderThumb.d.ts +28 -0
  122. package/dist-types/slider/internal/utils.d.ts +20 -0
  123. package/dist-types/switch/Switch.d.ts +7 -7
  124. package/package.json +1 -1
@@ -50,6 +50,7 @@ export * from "./text";
50
50
  export * from "./theme";
51
51
  export * from "./toast";
52
52
  export * from "./salt-provider";
53
+ export * from "./slider";
53
54
  export * from "./split-layout";
54
55
  export * from "./switch";
55
56
  export * from "./tag";
@@ -0,0 +1,20 @@
1
+ import { type ComponentPropsWithoutRef, type ReactNode } from "react";
2
+ export interface OverlayHeaderProps extends ComponentPropsWithoutRef<"div"> {
3
+ /**
4
+ * Description text is displayed just below the header
5
+ **/
6
+ description?: ReactNode;
7
+ /**
8
+ * Actions to be displayed in header
9
+ */
10
+ actions?: ReactNode;
11
+ /**
12
+ * Header text
13
+ */
14
+ header?: ReactNode;
15
+ /**
16
+ * Preheader text is displayed just above the header
17
+ **/
18
+ preheader?: ReactNode;
19
+ }
20
+ export declare const OverlayHeader: import("react").ForwardRefExoticComponent<OverlayHeaderProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,5 +1,6 @@
1
1
  export * from "./Overlay";
2
2
  export * from "./OverlayTrigger";
3
3
  export * from "./OverlayPanel";
4
+ export * from "./OverlayHeader";
4
5
  export * from "./OverlayPanelCloseButton";
5
6
  export * from "./OverlayPanelContent";
@@ -0,0 +1,99 @@
1
+ import { type HTMLAttributes } from "react";
2
+ export interface RangeSliderProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue"> {
3
+ /**
4
+ * Accessible text to announce maximum value label.
5
+ */
6
+ accessibleMaxText?: string;
7
+ /**
8
+ * Accessible text to announce minimum value label.
9
+ */
10
+ accessibleMinText?: string;
11
+ /**
12
+ * When minimum and maximum labels are defined, ensure
13
+ * they are confined within the boundary of the slider.
14
+ */
15
+ constrainLabelPosition?: boolean;
16
+ /**
17
+ * The number of allowed decimal places
18
+ * @default 2
19
+ */
20
+ decimalPlaces?: number;
21
+ /**
22
+ * The default value. Use when the component is not controlled.
23
+ * @default [min, min + (max - min) / 2]
24
+ */
25
+ defaultValue?: [number, number];
26
+ /**
27
+ * Disable the slider.
28
+ */
29
+ disabled?: boolean;
30
+ /**
31
+ * Show visual ticks above the marks.
32
+ */
33
+ showTicks?: boolean;
34
+ /**
35
+ * A callback to format the display value in the tooltip, min and max labels
36
+ * and the `aria-valuetext` attribute.
37
+ */
38
+ format?: (value: number) => string | number;
39
+ /**
40
+ * Marks that are displayed under the track.
41
+ */
42
+ marks?: {
43
+ label: string;
44
+ value: number;
45
+ }[];
46
+ /**
47
+ * Maximum slider value.
48
+ * @default 10
49
+ */
50
+ max?: number;
51
+ /**
52
+ * Minimum slider value.
53
+ * @default 0
54
+ */
55
+ min?: number;
56
+ /**
57
+ * Label for maximum value.
58
+ */
59
+ maxLabel?: string;
60
+ /**
61
+ * Label for minimum value.
62
+ */
63
+ minLabel?: string;
64
+ /**
65
+ * Callback called when slider value is changed.
66
+ * It provides a generic event and the current value of the slider.
67
+ */
68
+ onChange?: (event: Event, value: [number, number]) => void;
69
+ /**
70
+ * Callback called when the slider is stopped from being dragged or
71
+ * its value is changed from the keyboard. It provides a generic
72
+ * event and the current value of the slider.
73
+ */
74
+ onChangeEnd?: (event: Event, value: [number, number]) => void;
75
+ /**
76
+ * Restrict slider value to marks only. The step will be ignored.
77
+ */
78
+ restrictToMarks?: boolean;
79
+ /**
80
+ * Show the slider value in a tooltip when the thumb is hovered.
81
+ * @default true
82
+ */
83
+ showTooltip?: boolean;
84
+ /**
85
+ * Minimum interval the slider thumb can move.
86
+ * @default 1
87
+ */
88
+ step?: number;
89
+ /**
90
+ * Maximum interval the slider thumb can move when using PageUp and PageDown keys.
91
+ * @default 2
92
+ */
93
+ stepMultiplier?: number;
94
+ /**
95
+ * Value of the slider, to be used when in a controlled state.
96
+ */
97
+ value?: [number, number];
98
+ }
99
+ export declare const RangeSlider: import("react").ForwardRefExoticComponent<RangeSliderProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,100 @@
1
+ import { type HTMLAttributes } from "react";
2
+ export interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue"> {
3
+ /**
4
+ * Accessible text to announce maximum value label.
5
+ */
6
+ accessibleMaxText?: string;
7
+ /**
8
+ * Accessible text to announce minimum value label.
9
+ */
10
+ accessibleMinText?: string;
11
+ /**
12
+ * When minimum and maximum labels are defined, ensure
13
+ * they are confined within the boundary of the slider.
14
+ * @default false
15
+ */
16
+ constrainLabelPosition?: boolean;
17
+ /**
18
+ * The number of allowed decimal places
19
+ * @default 2
20
+ */
21
+ decimalPlaces?: number;
22
+ /**
23
+ * The default value. Use when the component is not controlled.
24
+ * @default min + (max - min) / 2,
25
+ */
26
+ defaultValue?: number;
27
+ /**
28
+ * Disable the slider.
29
+ */
30
+ disabled?: boolean;
31
+ /**
32
+ * A callback to format the display value in the tooltip, min and max labels
33
+ * and the `aria-valuetext` attribute.
34
+ */
35
+ format?: (value: number) => string | number;
36
+ /**
37
+ * Marks that are displayed under the track.
38
+ */
39
+ marks?: {
40
+ label: string;
41
+ value: number;
42
+ }[];
43
+ /**
44
+ * Maximum slider value.
45
+ * @default 10
46
+ */
47
+ max?: number;
48
+ /**
49
+ * Minimum slider value.
50
+ * @default 0
51
+ */
52
+ min?: number;
53
+ /**
54
+ * Label for maximum value.
55
+ */
56
+ maxLabel?: string;
57
+ /**
58
+ * Label for the minimum value.
59
+ */
60
+ minLabel?: string;
61
+ /**
62
+ * Callback called when slider value is changed.
63
+ * It provides a generic event and the current value of the slider.
64
+ */
65
+ onChange?: (event: Event, value: number) => void;
66
+ /**
67
+ * Callback called when the slider is stopped from being dragged or
68
+ * its value is changed from the keyboard. It provides a generic
69
+ * event and the current value of the slider.
70
+ */
71
+ onChangeEnd?: (event: Event, value: number) => void;
72
+ /**
73
+ * Restrict slider value to marks only. The step will be ignored.
74
+ */
75
+ restrictToMarks?: boolean;
76
+ /**
77
+ * Show visual ticks above the marks.
78
+ */
79
+ showTicks?: boolean;
80
+ /**
81
+ * Show the slider value in a tooltip when the thumb is hovered.
82
+ * @default true
83
+ */
84
+ showTooltip?: boolean;
85
+ /**
86
+ * Minimum interval the slider thumb can move.
87
+ * @default 1
88
+ */
89
+ step?: number;
90
+ /**
91
+ * Maximum interval the slider thumb can move when using PageUp and PageDown keys.
92
+ * @default 2
93
+ */
94
+ stepMultiplier?: number;
95
+ /**
96
+ * Value of the slider, to be used when in a controlled state.
97
+ */
98
+ value?: number;
99
+ }
100
+ export declare const Slider: import("react").ForwardRefExoticComponent<SliderProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,2 @@
1
+ export * from "./Slider";
2
+ export * from "./RangeSlider";
@@ -0,0 +1,26 @@
1
+ import { type ChangeEvent, type ComponentPropsWithoutRef, type RefObject } from "react";
2
+ interface SliderThumbProps extends Omit<ComponentPropsWithoutRef<"input">, "onChange" | "defaultValue" | "min" | "max"> {
3
+ accessibleMaxText?: string;
4
+ accessibleMinText?: string;
5
+ disabled: boolean;
6
+ format?: (value: number) => number | string;
7
+ handleInputChange: (event: ChangeEvent<HTMLInputElement>) => void;
8
+ handleKeydownOnThumb: (event: React.KeyboardEvent) => void;
9
+ handlePointerDown: (event: React.PointerEvent<HTMLDivElement>) => void;
10
+ index?: number;
11
+ inputRef?: RefObject<HTMLInputElement>;
12
+ isFocusVisible: boolean;
13
+ max: number;
14
+ maxLabel?: string;
15
+ min: number;
16
+ minLabel?: string;
17
+ offsetPercentage?: string;
18
+ restrictToMarks?: boolean;
19
+ showTooltip?: boolean;
20
+ sliderValue: [number, number] | number;
21
+ step: number;
22
+ stepMultiplier: number;
23
+ trackDragging: boolean;
24
+ }
25
+ export declare const SliderThumb: ({ "aria-label": ariaLabel, "aria-valuetext": ariaValueText, "aria-labelledby": ariaLabelledBy, accessibleMaxText, accessibleMinText, disabled, format, handleInputChange, handleKeydownOnThumb, handlePointerDown, index, inputRef, isFocusVisible, max, maxLabel, min, minLabel, offsetPercentage, restrictToMarks, showTooltip, sliderValue, step, stepMultiplier, trackDragging, ...rest }: SliderThumbProps) => import("react/jsx-runtime").JSX.Element;
26
+ export {};
@@ -0,0 +1,6 @@
1
+ interface SliderTooltipProps {
2
+ value: number | string;
3
+ open?: boolean;
4
+ }
5
+ export declare const SliderTooltip: ({ value, open }: SliderTooltipProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,24 @@
1
+ import { type HTMLAttributes, type RefObject } from "react";
2
+ interface SliderTrackProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue"> {
3
+ children: React.ReactNode;
4
+ constrainLabelPosition?: boolean;
5
+ disabled: boolean;
6
+ showTicks?: boolean;
7
+ format?: (value: number) => string | number;
8
+ handlePointerDown: (event: React.PointerEvent<HTMLDivElement>) => void;
9
+ isDragging: boolean;
10
+ isRange?: boolean;
11
+ marks?: {
12
+ label: string;
13
+ value: number;
14
+ }[];
15
+ max: number;
16
+ maxLabel?: number | string;
17
+ min: number;
18
+ minLabel?: number | string;
19
+ progressPercentage?: number;
20
+ progressPercentageRange?: [number, number];
21
+ sliderRef: RefObject<HTMLDivElement>;
22
+ }
23
+ export declare const SliderTrack: import("react").ForwardRefExoticComponent<SliderTrackProps & import("react").RefAttributes<HTMLDivElement>>;
24
+ export {};
@@ -0,0 +1,30 @@
1
+ import { type ChangeEvent, type Dispatch, type RefObject, type SetStateAction } from "react";
2
+ import type { SliderProps } from "../Slider";
3
+ declare type UseRangeSliderThumbProps = Pick<SliderProps, "min" | "max" | "step"> & {
4
+ decimalPlaces: number;
5
+ handleInputChange: (event: ChangeEvent<HTMLInputElement>, thumbIndex: number) => void;
6
+ inputRefs: RefObject<HTMLInputElement>[];
7
+ marks?: {
8
+ label: string;
9
+ value: number;
10
+ }[];
11
+ onChange?: (event: Event, value: [number, number]) => void;
12
+ onChangeEnd?: (event: Event, value: [number, number]) => void;
13
+ restrictToMarks?: boolean;
14
+ setValue: Dispatch<SetStateAction<[number, number]>>;
15
+ stepMultiplier: number;
16
+ value: [number, number];
17
+ };
18
+ export declare const useRangeSliderThumb: ({ decimalPlaces, handleInputChange, inputRefs, marks, min, max, step, onChange, onChangeEnd, restrictToMarks, setValue, stepMultiplier, value, }: UseRangeSliderThumbProps) => {
19
+ handleBlur: (thumbIndex: number) => void;
20
+ handleFocus: (thumbIndex: number) => void;
21
+ handleKeydownOnThumb: (event: React.KeyboardEvent, thumbIndex: number) => void;
22
+ handlePointerDownOnThumb: (event: React.PointerEvent<HTMLDivElement>, thumbIndex: number) => void;
23
+ handlePointerDownOnTrack: (event: React.PointerEvent<HTMLDivElement>) => void;
24
+ isDragging: boolean;
25
+ isFocusVisible: boolean;
26
+ preventThumbOverlap: (currentValue: number, value: [number, number], thumbIndex: number) => [number, number];
27
+ sliderRef: RefObject<HTMLDivElement>;
28
+ thumbIndexState: number;
29
+ };
30
+ export {};
@@ -0,0 +1,28 @@
1
+ import { type ChangeEvent, type Dispatch, type RefObject, type SetStateAction } from "react";
2
+ import type { SliderProps } from "../Slider";
3
+ declare type UseSliderThumbProps = Pick<SliderProps, "min" | "max" | "step"> & {
4
+ decimalPlaces: number;
5
+ handleInputChange: (event: ChangeEvent<HTMLInputElement>) => void;
6
+ inputRef: RefObject<HTMLInputElement>;
7
+ marks?: {
8
+ label: string;
9
+ value: number;
10
+ }[];
11
+ onChange?: (event: Event, value: number) => void;
12
+ onChangeEnd?: (event: Event, value: number) => void;
13
+ restrictToMarks?: boolean;
14
+ setValue: Dispatch<SetStateAction<number>>;
15
+ stepMultiplier: number;
16
+ value: number;
17
+ };
18
+ export declare const useSliderThumb: ({ decimalPlaces, handleInputChange, inputRef, marks, min, max, step, onChange, onChangeEnd, restrictToMarks, setValue, stepMultiplier, value, }: UseSliderThumbProps) => {
19
+ handleBlur: () => void;
20
+ handleFocus: () => void;
21
+ handleKeydownOnThumb: (event: React.KeyboardEvent) => void;
22
+ handlePointerDownOnThumb: (event: React.PointerEvent<HTMLDivElement>) => void;
23
+ handlePointerDownOnTrack: (event: React.PointerEvent<HTMLDivElement>) => void;
24
+ isDragging: boolean;
25
+ isFocusVisible: boolean;
26
+ sliderRef: RefObject<HTMLDivElement>;
27
+ };
28
+ export {};
@@ -0,0 +1,20 @@
1
+ import type { RefObject } from "react";
2
+ export declare const toFloat: (value: number | string) => number;
3
+ export declare const calculateMarkPosition: (value: number | string, max: number, min: number) => number;
4
+ export declare const calculatePercentage: (value: number, max: number, min: number) => number;
5
+ export declare const clamp: (value: number, max: number, min: number, step: number, decimalPlaces: number, marks?: {
6
+ value: number;
7
+ label: string;
8
+ }[] | undefined, restrictToMarks?: boolean | undefined) => number;
9
+ export declare const clampRange: (range: [number, number], max: number, min: number, step: number, decimalPlaces: number, marks?: {
10
+ value: number;
11
+ label: string;
12
+ }[] | undefined, restrictToMarks?: boolean | undefined) => [number, number];
13
+ export declare const getClickedPosition: (sliderRef: RefObject<HTMLDivElement>, clientX: number, max: number, min: number, step: number, decimalPlaces: number, marks?: {
14
+ label: string;
15
+ value: number;
16
+ }[] | undefined, restrictToMarks?: boolean | undefined) => number | undefined;
17
+ export declare const getKeyboardValue: (event: React.KeyboardEvent, value: number, step: number, stepMultiplier: number, max: number, min: number, restrictToMarks?: boolean | undefined, marks?: {
18
+ label: string;
19
+ value: number;
20
+ }[] | undefined) => number;
@@ -2,16 +2,16 @@ import { type ChangeEventHandler, type ComponentPropsWithoutRef, type FocusEvent
2
2
  import type { DataAttributes } from "../types";
3
3
  export interface SwitchProps extends Omit<ComponentPropsWithoutRef<"label">, "children" | "onFocus" | "onBlur" | "onChange"> {
4
4
  /**
5
- * If `true`, the checkbox will be checked.
5
+ * If `true`, the switch will be checked.
6
6
  */
7
7
  checked?: boolean;
8
8
  /**
9
- * Whether the checkbox component is checked by default
9
+ * Whether the switch component is checked by default
10
10
  * This will be disregarded if checked is already set.
11
11
  */
12
12
  defaultChecked?: boolean;
13
13
  /**
14
- * If `true`, the checkbox will be disabled.
14
+ * If `true`, the switch will be disabled.
15
15
  */
16
16
  disabled?: boolean;
17
17
  /**
@@ -19,7 +19,7 @@ export interface SwitchProps extends Omit<ComponentPropsWithoutRef<"label">, "ch
19
19
  */
20
20
  inputProps?: Partial<ComponentPropsWithoutRef<"input">> & DataAttributes;
21
21
  /**
22
- * The label to be shown next to the checkbox.
22
+ * The label to be shown next to the switch.
23
23
  */
24
24
  label?: ReactNode;
25
25
  /**
@@ -27,7 +27,7 @@ export interface SwitchProps extends Omit<ComponentPropsWithoutRef<"label">, "ch
27
27
  */
28
28
  name?: string;
29
29
  /**
30
- * Callback when checkbox loses focus.
30
+ * Callback when switch loses focus.
31
31
  */
32
32
  onBlur?: FocusEventHandler<HTMLInputElement>;
33
33
  /**
@@ -35,11 +35,11 @@ export interface SwitchProps extends Omit<ComponentPropsWithoutRef<"label">, "ch
35
35
  */
36
36
  onChange?: ChangeEventHandler<HTMLInputElement>;
37
37
  /**
38
- * Callback when checkbox gains focus.
38
+ * Callback when switch gains focus.
39
39
  */
40
40
  onFocus?: FocusEventHandler<HTMLInputElement>;
41
41
  /**
42
- * The value of the checkbox.
42
+ * The value of the switch.
43
43
  */
44
44
  value?: string;
45
45
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salt-ds/core",
3
- "version": "1.42.0",
3
+ "version": "1.44.0",
4
4
  "license": "Apache-2.0",
5
5
  "repository": {
6
6
  "type": "git",