@redis-ui/components 39.18.0 → 41.3.2

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 (215) hide show
  1. package/dist/AppSelectionMenu/components/Icon/Icon.cjs +3 -1
  2. package/dist/AppSelectionMenu/components/Icon/Icon.js +3 -1
  3. package/dist/AppSelectionMenu/components/Trigger/Trigger.styles.cjs +1 -1
  4. package/dist/AppSelectionMenu/components/Trigger/Trigger.styles.js +1 -1
  5. package/dist/AutoCompleteSelect/AutoCompleteSelect.style.d.ts +1 -1
  6. package/dist/Banner/Banner.d.ts +3 -3
  7. package/dist/Banner/components/Actions/Actions.d.ts +1 -1
  8. package/dist/Banner/components/Compose/Compose.style.d.ts +1 -1
  9. package/dist/BoxSelectionGroup/components/Item/components/Compose/Compose.types.d.ts +1 -1
  10. package/dist/ChipList/Components/ExtraItem.cjs +3 -0
  11. package/dist/ChipList/Components/ExtraItem.js +3 -0
  12. package/dist/Drawer/Drawer.d.ts +2 -2
  13. package/dist/Drawer/components/Body/Body.cjs +17 -3
  14. package/dist/Drawer/components/Body/Body.d.ts +1 -1
  15. package/dist/Drawer/components/Body/Body.js +17 -3
  16. package/dist/Drawer/components/Body/Body.types.d.ts +3 -1
  17. package/dist/Filters/components/MultiSelectFilter/MultiSelectFilter.styles.d.ts +2 -2
  18. package/dist/FormField/FormField.context.d.ts +6 -2
  19. package/dist/FormField/FormField.d.ts +2 -4
  20. package/dist/FormField/components/Compose/Compose.d.ts +1 -1
  21. package/dist/FormField/components/Compose/Compose.types.d.ts +2 -2
  22. package/dist/FormField/components/Nested/Nested.cjs +25 -8
  23. package/dist/FormField/components/Nested/Nested.d.ts +1 -1
  24. package/dist/FormField/components/Nested/Nested.js +25 -8
  25. package/dist/FormField/components/Nested/Nested.types.d.ts +2 -0
  26. package/dist/Helpers/common.types.d.ts +1 -1
  27. package/dist/Helpers/contexts/NullableContext.cjs +17 -0
  28. package/dist/Helpers/contexts/NullableContext.d.ts +4 -0
  29. package/dist/Helpers/contexts/NullableContext.js +17 -0
  30. package/dist/Helpers/contexts/PrimitiveContextState.cjs +27 -0
  31. package/dist/Helpers/contexts/PrimitiveContextState.d.ts +7 -2
  32. package/dist/Helpers/contexts/PrimitiveContextState.js +27 -0
  33. package/dist/Helpers/hooks/useScrollable.cjs +32 -0
  34. package/dist/Helpers/hooks/useScrollable.d.ts +3 -0
  35. package/dist/Helpers/hooks/useScrollable.js +32 -0
  36. package/dist/Helpers/index.d.ts +2 -0
  37. package/dist/Inputs/Input/Input.d.ts +1 -1
  38. package/dist/Inputs/NumericInput/NumericInput.d.ts +1 -1
  39. package/dist/Inputs/PasswordInput/components/Compose/Compose.style.d.ts +1 -1
  40. package/dist/Inputs/QuantityCounter/QuantityCounter.d.ts +2 -2
  41. package/dist/Inputs/QuantityCounter/components/Compose/Compose.style.d.ts +1 -1
  42. package/dist/Inputs/QuantityCounter/components/InputGroup/InputGroup.d.ts +1 -1
  43. package/dist/Inputs/SearchInput/SearchInput.d.ts +1 -1
  44. package/dist/Inputs/TextArea/TextArea.d.ts +1 -1
  45. package/dist/Inputs/TextArea/components/Compose/Compose.style.d.ts +1 -1
  46. package/dist/Inputs/components/Context/Field.context.d.ts +3 -1
  47. package/dist/Loader/Loader.style.cjs +1 -1
  48. package/dist/Loader/Loader.style.js +1 -1
  49. package/dist/Menu/Menu.d.ts +1 -1
  50. package/dist/Menu/components/Content/Content.d.ts +1 -1
  51. package/dist/Menu/components/Content/components/Label/Label.d.ts +1 -1
  52. package/dist/Modal/Modal.d.ts +1 -1
  53. package/dist/Modal/components/Content/Content.d.ts +1 -1
  54. package/dist/ProfileIcon/ProfileIcon.types.d.ts +1 -1
  55. package/dist/ScreenReaderAnnounce/ScreenReaderAnnounce.cjs +32 -0
  56. package/dist/ScreenReaderAnnounce/ScreenReaderAnnounce.d.ts +8 -0
  57. package/dist/ScreenReaderAnnounce/ScreenReaderAnnounce.js +32 -0
  58. package/dist/ScreenReaderAnnounce/index.d.ts +1 -0
  59. package/dist/Section/Section.cjs +11 -8
  60. package/dist/Section/Section.d.ts +9 -7
  61. package/dist/Section/Section.js +11 -8
  62. package/dist/Section/Section.types.d.ts +8 -2
  63. package/dist/Section/components/Body/Body.cjs +10 -6
  64. package/dist/Section/components/Body/Body.d.ts +1 -1
  65. package/dist/Section/components/Body/Body.js +11 -7
  66. package/dist/Section/components/Body/Body.style.cjs +1 -1
  67. package/dist/Section/components/Body/Body.style.js +1 -1
  68. package/dist/Section/components/Body/Body.types.d.ts +2 -5
  69. package/dist/Section/components/Compose/Compose.cjs +18 -7
  70. package/dist/Section/components/Compose/Compose.d.ts +1 -1
  71. package/dist/Section/components/Compose/Compose.js +18 -7
  72. package/dist/Section/components/Compose/Compose.types.d.ts +2 -2
  73. package/dist/Section/components/Header/Header.cjs +12 -20
  74. package/dist/Section/components/Header/Header.d.ts +5 -4
  75. package/dist/Section/components/Header/Header.js +12 -20
  76. package/dist/Section/components/Header/Header.types.d.ts +7 -3
  77. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.cjs +34 -0
  78. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.d.ts +2 -0
  79. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.js +34 -0
  80. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.style.cjs +30 -0
  81. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.style.d.ts +3 -0
  82. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.style.js +28 -0
  83. package/dist/Section/components/Header/components/CollapseButton/CollapseButton.types.d.ts +6 -0
  84. package/dist/Section/components/Header/components/Compose/Compose.cjs +2 -30
  85. package/dist/Section/components/Header/components/Compose/Compose.d.ts +1 -1
  86. package/dist/Section/components/Header/components/Compose/Compose.js +3 -31
  87. package/dist/Section/components/Header/components/Compose/Compose.style.cjs +3 -36
  88. package/dist/Section/components/Header/components/Compose/Compose.style.d.ts +1 -9
  89. package/dist/Section/components/Header/components/Compose/Compose.style.js +5 -38
  90. package/dist/Section/components/Header/components/Compose/Compose.types.d.ts +2 -5
  91. package/dist/Section/components/Header/components/Group/Group.types.d.ts +1 -1
  92. package/dist/Section/components/Header/components/Label/Label.cjs +18 -7
  93. package/dist/Section/components/Header/components/Label/Label.js +19 -8
  94. package/dist/Section/components/Header/components/Label/Label.style.cjs +17 -4
  95. package/dist/Section/components/Header/components/Label/Label.style.d.ts +2 -1
  96. package/dist/Section/components/Header/components/Label/Label.style.js +17 -4
  97. package/dist/Section/components/Header/components/Label/Label.types.d.ts +2 -2
  98. package/dist/Section/components/SummaryBar/SummaryBar.cjs +14 -0
  99. package/dist/Section/components/SummaryBar/SummaryBar.d.ts +2 -0
  100. package/dist/Section/components/SummaryBar/SummaryBar.js +14 -0
  101. package/dist/Section/components/SummaryBar/SummaryBar.style.cjs +22 -0
  102. package/dist/Section/components/SummaryBar/SummaryBar.style.d.ts +3 -0
  103. package/dist/Section/components/SummaryBar/SummaryBar.style.js +20 -0
  104. package/dist/Section/components/SummaryBar/SummaryBar.types.d.ts +4 -0
  105. package/dist/Select/components/Content/components/Search/SelectSearchInput.style.d.ts +1 -1
  106. package/dist/SideBar/components/Footer/Footer.style.cjs +4 -1
  107. package/dist/SideBar/components/Footer/Footer.style.js +5 -2
  108. package/dist/SideBar/components/Header/Header.cjs +4 -6
  109. package/dist/SideBar/components/Header/Header.js +4 -6
  110. package/dist/SideBar/components/ScrollContainer/ScrollContainer.types.d.ts +1 -1
  111. package/dist/Stepper/Stepper.cjs +15 -27
  112. package/dist/Stepper/Stepper.context.cjs +13 -0
  113. package/dist/Stepper/Stepper.context.d.ts +12 -0
  114. package/dist/Stepper/Stepper.context.js +13 -0
  115. package/dist/Stepper/Stepper.d.ts +14 -5
  116. package/dist/Stepper/Stepper.js +15 -25
  117. package/dist/Stepper/Stepper.types.d.ts +9 -3
  118. package/dist/Stepper/components/Compose/Compose.cjs +42 -0
  119. package/dist/Stepper/components/Compose/Compose.d.ts +10 -0
  120. package/dist/Stepper/components/Compose/Compose.js +42 -0
  121. package/dist/Stepper/{Stepper.style.cjs → components/Compose/Compose.style.cjs} +4 -4
  122. package/dist/Stepper/components/Compose/Compose.style.d.ts +1 -0
  123. package/dist/Stepper/{Stepper.style.js → components/Compose/Compose.style.js} +4 -4
  124. package/dist/Stepper/components/Compose/Compose.types.d.ts +6 -0
  125. package/dist/Stepper/components/Step/Step.cjs +10 -17
  126. package/dist/Stepper/components/Step/Step.context.d.ts +3 -3
  127. package/dist/Stepper/components/Step/Step.d.ts +7 -5
  128. package/dist/Stepper/components/Step/Step.js +10 -17
  129. package/dist/Stepper/components/Step/Step.types.cjs +2 -2
  130. package/dist/Stepper/components/Step/Step.types.d.ts +6 -8
  131. package/dist/Stepper/components/Step/Step.types.js +2 -2
  132. package/dist/Stepper/components/Step/components/Compose/Compose.cjs +36 -4
  133. package/dist/Stepper/components/Step/components/Compose/Compose.d.ts +1 -1
  134. package/dist/Stepper/components/Step/components/Compose/Compose.js +37 -5
  135. package/dist/Stepper/components/Step/components/Compose/Compose.style.cjs +8 -4
  136. package/dist/Stepper/components/Step/components/Compose/Compose.style.d.ts +1 -1
  137. package/dist/Stepper/components/Step/components/Compose/Compose.style.js +10 -6
  138. package/dist/Stepper/components/Step/components/Compose/Compose.types.d.ts +2 -5
  139. package/dist/Stepper/components/Step/components/Icon/Icon.cjs +11 -6
  140. package/dist/Stepper/components/Step/components/Icon/Icon.d.ts +1 -1
  141. package/dist/Stepper/components/Step/components/Icon/Icon.js +12 -7
  142. package/dist/Stepper/components/Step/components/Icon/Icon.style.cjs +1 -1
  143. package/dist/Stepper/components/Step/components/Icon/Icon.style.js +2 -2
  144. package/dist/Stepper/components/Step/components/Label/Label.cjs +11 -13
  145. package/dist/Stepper/components/Step/components/Label/Label.d.ts +1 -1
  146. package/dist/Stepper/components/Step/components/Label/Label.js +12 -14
  147. package/dist/Stepper/components/Step/components/Label/Label.style.cjs +8 -8
  148. package/dist/Stepper/components/Step/components/Label/Label.style.d.ts +1 -1
  149. package/dist/Stepper/components/Step/components/Label/Label.style.js +9 -9
  150. package/dist/Stepper/components/Step/components/Label/Label.types.d.ts +3 -2
  151. package/dist/Stepper/hooks/useStepIndexing.cjs +38 -0
  152. package/dist/Stepper/hooks/useStepIndexing.d.ts +10 -0
  153. package/dist/Stepper/hooks/useStepIndexing.js +38 -0
  154. package/dist/Stepper/hooks/useStepRegistration.cjs +25 -0
  155. package/dist/Stepper/hooks/useStepRegistration.d.ts +5 -0
  156. package/dist/Stepper/hooks/useStepRegistration.js +25 -0
  157. package/dist/Stepper/hooks/useStepperInteractive.cjs +96 -0
  158. package/dist/Stepper/hooks/useStepperInteractive.d.ts +30 -0
  159. package/dist/Stepper/hooks/useStepperInteractive.js +96 -0
  160. package/dist/Switch/Switch.d.ts +1 -1
  161. package/dist/TableHeading/TableHeading.d.ts +1 -1
  162. package/dist/TableHeading/TableHeading.style.d.ts +1 -1
  163. package/dist/Tabs/Tabs.d.ts +3 -3
  164. package/dist/Tabs/components/ContentPane/ContentPane.d.ts +1 -1
  165. package/dist/Tabs/components/TabBar/TabBar.d.ts +2 -2
  166. package/dist/Tabs/components/TabBar/components/Trigger/Trigger.d.ts +1 -1
  167. package/dist/Toast/Toast.d.ts +4 -4
  168. package/dist/Toast/components/Actions/Actions.d.ts +1 -1
  169. package/dist/Toast/components/Actions/Actions.types.d.ts +1 -1
  170. package/dist/Toast/components/Actions/components/Action/Action.cjs +1 -1
  171. package/dist/Toast/components/Actions/components/Action/Action.js +1 -1
  172. package/dist/Toast/components/Actions/components/Compose/Compose.d.ts +1 -1
  173. package/dist/Toast/components/Compose/Compose.cjs +2 -2
  174. package/dist/Toast/components/Compose/Compose.d.ts +1 -1
  175. package/dist/Toast/components/Compose/Compose.js +2 -2
  176. package/dist/Toast/components/Compose/Compose.style.d.ts +1 -1
  177. package/dist/Toast/components/Content/Content.d.ts +1 -1
  178. package/dist/Toast/components/Content/Content.types.d.ts +1 -1
  179. package/dist/Toast/components/Content/components/Compose/Compose.cjs +15 -3
  180. package/dist/Toast/components/Content/components/Compose/Compose.d.ts +1 -1
  181. package/dist/Toast/components/Content/components/Compose/Compose.js +15 -3
  182. package/dist/Toast/components/Content/components/Description/Description.cjs +1 -1
  183. package/dist/Toast/components/Content/components/Description/Description.js +1 -1
  184. package/dist/Toast/components/Content/components/Message/Message.cjs +1 -1
  185. package/dist/Toast/components/Content/components/Message/Message.js +1 -1
  186. package/dist/Toast/components/Icon/Icon.cjs +1 -0
  187. package/dist/Toast/components/Icon/Icon.js +1 -0
  188. package/dist/Toast/core/content.helper.cjs +1 -1
  189. package/dist/Toast/core/content.helper.js +2 -2
  190. package/dist/Toast/core/context.cjs +4 -5
  191. package/dist/Toast/core/context.d.ts +1 -2
  192. package/dist/Toast/core/context.js +4 -5
  193. package/dist/Toast/core/core.cjs +2 -0
  194. package/dist/Toast/core/core.d.ts +9 -8
  195. package/dist/Toast/core/core.js +3 -1
  196. package/dist/Toast/core/mapping.helpers.cjs +24 -16
  197. package/dist/Toast/core/mapping.helpers.d.ts +8 -6
  198. package/dist/Toast/core/mapping.helpers.js +25 -17
  199. package/dist/Toast/core/mapping.types.d.ts +9 -8
  200. package/dist/Tooltip/Tooltip.types.d.ts +1 -1
  201. package/dist/Typography/components/Heading/Heading.types.d.ts +1 -1
  202. package/dist/index.cjs +7 -1
  203. package/dist/index.d.ts +1 -0
  204. package/dist/index.js +8 -2
  205. package/package.json +3 -3
  206. package/dist/Section/components/Header/components/ActionButton/ActionButton.cjs +0 -23
  207. package/dist/Section/components/Header/components/ActionButton/ActionButton.js +0 -23
  208. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.cjs +0 -19
  209. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.d.ts +0 -2
  210. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.js +0 -19
  211. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.style.cjs +0 -11
  212. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.style.d.ts +0 -1
  213. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.style.js +0 -9
  214. package/dist/Section/components/Header/components/CollapseIndicator/CollapseIndicator.types.d.ts +0 -2
  215. package/dist/Stepper/Stepper.style.d.ts +0 -1
@@ -0,0 +1,5 @@
1
+ /** Individual step registration and index retrieval */
2
+ export declare const useStepRegistration: () => {
3
+ stepId: string;
4
+ stepIndex: number;
5
+ };
@@ -0,0 +1,25 @@
1
+ import { useLayoutEffect } from "react";
2
+ import { useId } from "../../node_modules/@radix-ui/react-id/dist/index.js";
3
+ import { useStepperContext } from "../Stepper.context.js";
4
+ const useStepRegistration = () => {
5
+ const {
6
+ registerStep,
7
+ unregisterStep,
8
+ getStepIndex,
9
+ collectStepOrder
10
+ } = useStepperContext();
11
+ const stepId = useId();
12
+ useLayoutEffect(() => {
13
+ registerStep(stepId);
14
+ return () => unregisterStep(stepId);
15
+ }, [stepId, registerStep, unregisterStep]);
16
+ collectStepOrder(stepId);
17
+ const stepIndex = getStepIndex(stepId);
18
+ return {
19
+ stepId,
20
+ stepIndex
21
+ };
22
+ };
23
+ export {
24
+ useStepRegistration
25
+ };
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const React = require("react");
4
+ const Step_types = require("../components/Step/Step.types.cjs");
5
+ const react_utils = require("../../Helpers/react.utils.cjs");
6
+ function useStepperInteractive({
7
+ onStepChange,
8
+ onKeyDown,
9
+ getIsStepInteractive,
10
+ currentStep = -1,
11
+ totalSteps
12
+ }) {
13
+ const isInteractive = !!onStepChange;
14
+ const isStepInteractive = React.useCallback((stepIndex) => {
15
+ if (!isInteractive) return false;
16
+ if (typeof getIsStepInteractive === "function") {
17
+ return getIsStepInteractive(stepIndex);
18
+ }
19
+ return stepIndex !== currentStep;
20
+ }, [currentStep, getIsStepInteractive, isInteractive]);
21
+ const handleKeyDown = react_utils.combineHandlers(isInteractive ? (event) => {
22
+ const {
23
+ key
24
+ } = event;
25
+ if (key === "ArrowLeft" || key === "ArrowRight") {
26
+ event.preventDefault();
27
+ const direction = key === "ArrowRight" ? 1 : -1;
28
+ const newIndex = currentStep + direction;
29
+ if (direction > 0) {
30
+ for (let i = newIndex; i < totalSteps || 0; i += 1) {
31
+ if (isStepInteractive(i)) {
32
+ onStepChange(i);
33
+ break;
34
+ }
35
+ }
36
+ } else {
37
+ for (let i = newIndex; i >= 0; i -= 1) {
38
+ if (isStepInteractive(i)) {
39
+ onStepChange(i);
40
+ break;
41
+ }
42
+ }
43
+ }
44
+ }
45
+ } : void 0, onKeyDown);
46
+ const role = isInteractive ? "tablist" : "list";
47
+ const label = isInteractive ? "Step navigation" : "Progress steps";
48
+ return {
49
+ context: {
50
+ getIsStepInteractive: isStepInteractive,
51
+ onStepChange
52
+ },
53
+ props: {
54
+ onKeyDown: handleKeyDown,
55
+ role,
56
+ "aria-label": label
57
+ }
58
+ };
59
+ }
60
+ function getInteractiveStepProps({
61
+ onClick,
62
+ onKeyDown,
63
+ onStepChange,
64
+ getIsStepInteractive,
65
+ stepIndex,
66
+ state
67
+ }) {
68
+ const isInteractive = !!onStepChange;
69
+ const isClickable = isInteractive && getIsStepInteractive(stepIndex);
70
+ const handleClick = react_utils.combineHandlers(isClickable ? () => onStepChange(stepIndex) : void 0, onClick);
71
+ const handleKeyDown = react_utils.combineHandlers(isClickable ? (e) => {
72
+ const {
73
+ key
74
+ } = e;
75
+ if (key === "Enter" || key === " ") {
76
+ e.preventDefault();
77
+ onStepChange(stepIndex);
78
+ }
79
+ } : void 0, onKeyDown);
80
+ const role = isInteractive ? "tab" : "listitem";
81
+ const ariaSelected = isInteractive ? state === Step_types.StepperStepState.FOCUSED : void 0;
82
+ const ariaCurrent = !isInteractive && state === Step_types.StepperStepState.FOCUSED ? "step" : void 0;
83
+ const tabIndex = isClickable ? 0 : -1;
84
+ const ariaDisabled = isInteractive && !isClickable ? true : void 0;
85
+ return {
86
+ onClick: handleClick,
87
+ onKeyDown: handleKeyDown,
88
+ role,
89
+ "aria-selected": ariaSelected,
90
+ "aria-current": ariaCurrent,
91
+ "aria-disabled": ariaDisabled,
92
+ tabIndex
93
+ };
94
+ }
95
+ exports.getInteractiveStepProps = getInteractiveStepProps;
96
+ exports.useStepperInteractive = useStepperInteractive;
@@ -0,0 +1,30 @@
1
+ /// <reference types="react" />
2
+ import { StepperProps } from '../Stepper.types';
3
+ import { ComposeProps } from '../components/Step/components/Compose/Compose.types';
4
+ import { StepperContextType } from '../Stepper.context';
5
+ import { StepperStepStateType } from '../components/Step/Step.types';
6
+ export declare function useStepperInteractive({ onStepChange, onKeyDown, getIsStepInteractive, currentStep, totalSteps }: Pick<StepperProps, 'onStepChange' | 'getIsStepInteractive' | 'currentStep' | 'onKeyDown'> & {
7
+ totalSteps: number;
8
+ }): {
9
+ context: {
10
+ getIsStepInteractive: (stepIndex: number) => boolean;
11
+ onStepChange: ((stepIndex: number) => void) | undefined;
12
+ };
13
+ props: {
14
+ onKeyDown: import("react").KeyboardEventHandler<HTMLElement> | undefined;
15
+ role: string;
16
+ 'aria-label': string;
17
+ };
18
+ };
19
+ export declare function getInteractiveStepProps({ onClick, onKeyDown, onStepChange, getIsStepInteractive, stepIndex, state }: Pick<ComposeProps, 'onClick' | 'onKeyDown'> & Pick<StepperContextType, 'onStepChange' | 'getIsStepInteractive'> & {
20
+ stepIndex: number;
21
+ state: StepperStepStateType;
22
+ }): {
23
+ readonly onClick: import("react").MouseEventHandler<HTMLElement> | undefined;
24
+ readonly onKeyDown: import("react").KeyboardEventHandler<HTMLElement> | undefined;
25
+ readonly role: "listitem" | "tab";
26
+ readonly 'aria-selected': boolean | undefined;
27
+ readonly 'aria-current': "step" | undefined;
28
+ readonly 'aria-disabled': true | undefined;
29
+ readonly tabIndex: 0 | -1;
30
+ };
@@ -0,0 +1,96 @@
1
+ import { useCallback } from "react";
2
+ import { StepperStepState } from "../components/Step/Step.types.js";
3
+ import { combineHandlers } from "../../Helpers/react.utils.js";
4
+ function useStepperInteractive({
5
+ onStepChange,
6
+ onKeyDown,
7
+ getIsStepInteractive,
8
+ currentStep = -1,
9
+ totalSteps
10
+ }) {
11
+ const isInteractive = !!onStepChange;
12
+ const isStepInteractive = useCallback((stepIndex) => {
13
+ if (!isInteractive) return false;
14
+ if (typeof getIsStepInteractive === "function") {
15
+ return getIsStepInteractive(stepIndex);
16
+ }
17
+ return stepIndex !== currentStep;
18
+ }, [currentStep, getIsStepInteractive, isInteractive]);
19
+ const handleKeyDown = combineHandlers(isInteractive ? (event) => {
20
+ const {
21
+ key
22
+ } = event;
23
+ if (key === "ArrowLeft" || key === "ArrowRight") {
24
+ event.preventDefault();
25
+ const direction = key === "ArrowRight" ? 1 : -1;
26
+ const newIndex = currentStep + direction;
27
+ if (direction > 0) {
28
+ for (let i = newIndex; i < totalSteps || 0; i += 1) {
29
+ if (isStepInteractive(i)) {
30
+ onStepChange(i);
31
+ break;
32
+ }
33
+ }
34
+ } else {
35
+ for (let i = newIndex; i >= 0; i -= 1) {
36
+ if (isStepInteractive(i)) {
37
+ onStepChange(i);
38
+ break;
39
+ }
40
+ }
41
+ }
42
+ }
43
+ } : void 0, onKeyDown);
44
+ const role = isInteractive ? "tablist" : "list";
45
+ const label = isInteractive ? "Step navigation" : "Progress steps";
46
+ return {
47
+ context: {
48
+ getIsStepInteractive: isStepInteractive,
49
+ onStepChange
50
+ },
51
+ props: {
52
+ onKeyDown: handleKeyDown,
53
+ role,
54
+ "aria-label": label
55
+ }
56
+ };
57
+ }
58
+ function getInteractiveStepProps({
59
+ onClick,
60
+ onKeyDown,
61
+ onStepChange,
62
+ getIsStepInteractive,
63
+ stepIndex,
64
+ state
65
+ }) {
66
+ const isInteractive = !!onStepChange;
67
+ const isClickable = isInteractive && getIsStepInteractive(stepIndex);
68
+ const handleClick = combineHandlers(isClickable ? () => onStepChange(stepIndex) : void 0, onClick);
69
+ const handleKeyDown = combineHandlers(isClickable ? (e) => {
70
+ const {
71
+ key
72
+ } = e;
73
+ if (key === "Enter" || key === " ") {
74
+ e.preventDefault();
75
+ onStepChange(stepIndex);
76
+ }
77
+ } : void 0, onKeyDown);
78
+ const role = isInteractive ? "tab" : "listitem";
79
+ const ariaSelected = isInteractive ? state === StepperStepState.FOCUSED : void 0;
80
+ const ariaCurrent = !isInteractive && state === StepperStepState.FOCUSED ? "step" : void 0;
81
+ const tabIndex = isClickable ? 0 : -1;
82
+ const ariaDisabled = isInteractive && !isClickable ? true : void 0;
83
+ return {
84
+ onClick: handleClick,
85
+ onKeyDown: handleKeyDown,
86
+ role,
87
+ "aria-selected": ariaSelected,
88
+ "aria-current": ariaCurrent,
89
+ "aria-disabled": ariaDisabled,
90
+ tabIndex
91
+ };
92
+ }
93
+ export {
94
+ getInteractiveStepProps,
95
+ useStepperInteractive
96
+ };
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { SwitchProps } from './Switch.types';
3
3
  declare const Switch: (({ className, style, disabled, readOnly, checked, defaultChecked, onCheckedChange, titleOff, titleOn, ...restProps }: SwitchProps) => import("react/jsx-runtime").JSX.Element) & {
4
- Compose: ({ disabled, readOnly, checked, defaultChecked, onCheckedChange, ...restProps }: import("./components/Compose/Compose.types").SwitchComposeProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
4
+ Compose: ({ disabled, readOnly, checked, defaultChecked, onCheckedChange, ...restProps }: import("./components/Compose/Compose.types").SwitchComposeProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
5
5
  Switcher: (({ id, onPointerDown, onMouseLeave, onKeyDown, ...props }: import("./components/Switcher/Switcher.types").SwitcherProps) => import("react/jsx-runtime").JSX.Element) & {
6
6
  Compose: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@radix-ui/react-switch").SwitchProps & import("react").RefAttributes<HTMLButtonElement>>, any, {}, never>;
7
7
  Knob: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@radix-ui/react-switch").SwitchThumbProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
@@ -3,7 +3,7 @@ import { TableHeadingProps } from './TableHeading.types';
3
3
  declare const TableHeading: ((props: TableHeadingProps) => import("react/jsx-runtime").JSX.Element) & {
4
4
  Title: ({ className, children, ...restProps }: import("..").TypographyHeadingProps) => import("react/jsx-runtime").JSX.Element;
5
5
  SearchInput: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Omit<import("../Inputs/components/Compose/TextCompose.types").TextInputComposeProps, "readOnly" | "parser" | "formatter"> & import("../Inputs/components/InputTag/InputTag.types").InputTagProps & import("../Inputs/components/LoadingIndicator/LoadingIndicator.types").LoadingIndicatorProps & import("../Inputs/components/ResetButton/ResetButton.types").ResetButtonProps & import("..").RestInputProps & import("react").RefAttributes<HTMLInputElement>> & {
6
- Compose: ({ value, defaultValue, onChange, parser, formatter, ...restProps }: import("../Inputs/components/Compose/CommonCompose.types").CommonInputComposeProps & Omit<import("../Inputs/components/Context/InputValueProvider").InputValueProviderProps, "children"> & Omit<import("..").ComposeElementProps<HTMLDivElement>, "defaultValue" | "onChange"> & {
6
+ Compose: ({ value, defaultValue, onChange, parser, formatter, ...restProps }: import("../Inputs/components/Compose/CommonCompose.types").CommonInputComposeProps & Omit<import("../Inputs/components/Context/InputValueProvider").InputValueProviderProps, "children"> & Omit<import("..").ComposeElementProps<HTMLElement>, "defaultValue" | "onChange"> & {
7
7
  readonlyRender?: import("../Inputs/components/ReadonlyRender/ReadonlyRender.types").ReadOnlyRenderComponent | undefined;
8
8
  readonlyProps?: import("react").HTMLAttributes<HTMLElement> | undefined;
9
9
  }) => import("react/jsx-runtime").JSX.Element;
@@ -3,7 +3,7 @@ export declare const separator: import("styled-components").FlattenInterpolation
3
3
  export declare const TableHeadingContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
4
4
  export declare const EndContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
5
5
  export declare const TableSearchInput: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Omit<import("../Inputs/components/Compose/TextCompose.types").TextInputComposeProps, "readOnly" | "parser" | "formatter"> & import("../Inputs/components/InputTag/InputTag.types").InputTagProps & import("../Inputs/components/LoadingIndicator/LoadingIndicator.types").LoadingIndicatorProps & import("../Inputs/components/ResetButton/ResetButton.types").ResetButtonProps & import("../Inputs").RestInputProps & import("react").RefAttributes<HTMLInputElement>> & {
6
- Compose: ({ value, defaultValue, onChange, parser, formatter, ...restProps }: import("../Inputs/components/Compose/CommonCompose.types").CommonInputComposeProps & Omit<import("../Inputs/components/Context/InputValueProvider").InputValueProviderProps, "children"> & Omit<import("..").ComposeElementProps<HTMLDivElement>, "defaultValue" | "onChange"> & {
6
+ Compose: ({ value, defaultValue, onChange, parser, formatter, ...restProps }: import("../Inputs/components/Compose/CommonCompose.types").CommonInputComposeProps & Omit<import("../Inputs/components/Context/InputValueProvider").InputValueProviderProps, "children"> & Omit<import("..").ComposeElementProps<HTMLElement>, "defaultValue" | "onChange"> & {
7
7
  readonlyRender?: import("../Inputs/components/ReadonlyRender/ReadonlyRender.types").ReadOnlyRenderComponent | undefined;
8
8
  readonlyProps?: import("react").HTMLAttributes<HTMLElement> | undefined;
9
9
  }) => import("react/jsx-runtime").JSX.Element;
@@ -3,16 +3,16 @@ import { TabsProps } from './Tabs.types';
3
3
  declare const Tabs: (({ tabs, variant, ...restProps }: TabsProps) => import("react/jsx-runtime").JSX.Element) & {
4
4
  Compose: <TValue extends string = string>({ onChange, activateOnFocus, ...restProps }: import("./components/Compose/Compose.types").TabsComposeProps<TValue> & import("./components/Compose/Compose.types").RestTabsComposeProps) => import("react/jsx-runtime").JSX.Element;
5
5
  TabBar: (({ tabs, ...restProps }: import(".").TabsBarProps & import(".").RestTabsBarProps) => import("react/jsx-runtime").JSX.Element) & {
6
- Compose: ({ children, variant, ...restProps }: import("./components/TabBar/components/Compose/Compose.types").TabsBarComposeProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
6
+ Compose: ({ children, variant, ...restProps }: import("./components/TabBar/components/Compose/Compose.types").TabsBarComposeProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
7
7
  Trigger: (({ value, children, ...restProps }: import("./components/TabBar/components/Trigger/components/Compose/Compose.types").TabsBarTriggerComposeProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element) & {
8
8
  Compose: ({ children, ...restProps }: import("./components/TabBar/components/Trigger/components/Compose/Compose.types").TabsBarTriggerComposeProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
9
- Tab: ({ children, ...restProps }: import("..").ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
9
+ Tab: ({ children, ...restProps }: import("..").ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
10
10
  Marker: (props: import("..").ChildFree<import("react").HTMLAttributes<HTMLDivElement>>) => import("react/jsx-runtime").JSX.Element;
11
11
  };
12
12
  };
13
13
  ContentPane: (({ tabs, ...restProps }: import(".").TabsContentPaneProps & import(".").RestTabsContentPaneProps) => import("react/jsx-runtime").JSX.Element) & {
14
14
  Compose: (props: import("./components/ContentPane/components/Compose/Compose.types").RestTabsContentPaneComposeProps) => import("react/jsx-runtime").JSX.Element;
15
- Content: (props: import("./components/ContentPane/components/Content/Content.types").TabsContentProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
15
+ Content: (props: import("./components/ContentPane/components/Content/Content.types").TabsContentProps & import("..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
16
16
  };
17
17
  };
18
18
  export default Tabs;
@@ -2,6 +2,6 @@
2
2
  import { RestTabsContentPaneProps, TabsContentPaneProps } from './ContentPane.types';
3
3
  declare const ContentPane: (({ tabs, ...restProps }: TabsContentPaneProps & RestTabsContentPaneProps) => import("react/jsx-runtime").JSX.Element) & {
4
4
  Compose: (props: import("./components/Compose/Compose.types").RestTabsContentPaneComposeProps) => import("react/jsx-runtime").JSX.Element;
5
- Content: (props: import("./components/Content/Content.types").TabsContentProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
5
+ Content: (props: import("./components/Content/Content.types").TabsContentProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
6
6
  };
7
7
  export default ContentPane;
@@ -1,10 +1,10 @@
1
1
  /// <reference types="react" />
2
2
  import { RestTabsBarProps, TabsBarProps } from './TabBar.types';
3
3
  declare const TabBar: (({ tabs, ...restProps }: TabsBarProps & RestTabsBarProps) => import("react/jsx-runtime").JSX.Element) & {
4
- Compose: ({ children, variant, ...restProps }: import("./components/Compose/Compose.types").TabsBarComposeProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
4
+ Compose: ({ children, variant, ...restProps }: import("./components/Compose/Compose.types").TabsBarComposeProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
5
5
  Trigger: (({ value, children, ...restProps }: import("./components/Trigger/components/Compose/Compose.types").TabsBarTriggerComposeProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element) & {
6
6
  Compose: ({ children, ...restProps }: import("./components/Trigger/components/Compose/Compose.types").TabsBarTriggerComposeProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
7
- Tab: ({ children, ...restProps }: import("../../..").ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
7
+ Tab: ({ children, ...restProps }: import("../../..").ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
8
8
  Marker: (props: import("../../..").ChildFree<import("react").HTMLAttributes<HTMLDivElement>>) => import("react/jsx-runtime").JSX.Element;
9
9
  };
10
10
  };
@@ -2,7 +2,7 @@
2
2
  import { RestTabsBarTriggerProps, TabsBarTriggerProps } from './Trigger.types';
3
3
  declare const Trigger: (({ value, children, ...restProps }: TabsBarTriggerProps & RestTabsBarTriggerProps) => import("react/jsx-runtime").JSX.Element) & {
4
4
  Compose: ({ children, ...restProps }: import("./components/Compose/Compose.types").TabsBarTriggerComposeProps & import("../../../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
5
- Tab: ({ children, ...restProps }: import("../../../../..").ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
5
+ Tab: ({ children, ...restProps }: import("../../../../..").ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
6
6
  Marker: (props: import("../../../../..").ChildFree<import("react").HTMLAttributes<HTMLDivElement>>) => import("react/jsx-runtime").JSX.Element;
7
7
  };
8
8
  export default Trigger;
@@ -1,13 +1,13 @@
1
1
  /// <reference types="react" />
2
2
  import type { ToastProps } from './Toast.types';
3
- import { ChildFree, ComposeElementProps } from '../Helpers/common.types';
3
+ import { ChildFree, ComposeElementProps } from '../Helpers';
4
4
  declare const Toast: (({ message, description, actions, customIcon, showIcon, showCloseButton, ...props }: ToastProps & ChildFree<ComposeElementProps>) => import("react/jsx-runtime").JSX.Element) & {
5
- Compose: (props: import("../Banner/components/BannerSemanticComponents").SemanticContainerProps & import("../Helpers/common.types").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
5
+ Compose: (props: import("../Banner/components/BannerSemanticComponents").SemanticContainerProps & import("../Helpers").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element;
6
6
  Icon: ({ icon, size, ...props }: import("./components/Icon/Icon.types").ToastIconProps) => import("react/jsx-runtime").JSX.Element;
7
7
  Message: ({ children, ...restProps }: import("..").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
8
8
  Description: ({ children, ...restProps }: import("..").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
9
9
  Actions: (({ primary, secondary, ...props }: import("./components/Actions/Actions.types").ActionsProps) => import("react/jsx-runtime").JSX.Element | null) & {
10
- Compose: (props: ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
10
+ Compose: (props: ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
11
11
  Action: ({ label, onClick, closes, icon, variant, ...restProps }: import(".").ToastActionType & {
12
12
  variant?: import("../Banner/components/BannerSemanticComponents").SemanticOutlineVariant | undefined;
13
13
  disabled?: boolean | undefined;
@@ -15,7 +15,7 @@ declare const Toast: (({ message, description, actions, customIcon, showIcon, sh
15
15
  };
16
16
  CloseButton: ({ children, onClick, ...props }: import("../Banner/components/BannerSemanticComponents").SemanticCloseButtonProps & import("../Banner/components/BannerSemanticComponents").RestSemanticCloseButtonProps) => import("react/jsx-runtime").JSX.Element;
17
17
  Content: (({ message, description, ...restProps }: import("./components/Content/Content.types").ToastContentProps & import("./components/Content/Content.types").RestToastContentProps) => import("react/jsx-runtime").JSX.Element) & {
18
- Compose: (props: ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
18
+ Compose: (props: ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
19
19
  Message: ({ children, ...restProps }: import("..").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
20
20
  Description: ({ children, ...restProps }: import("..").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
21
21
  };
@@ -1,6 +1,6 @@
1
1
  import type { ActionsProps } from './Actions.types';
2
2
  declare const Actions: (({ primary, secondary, ...props }: ActionsProps) => import("react/jsx-runtime").JSX.Element | null) & {
3
- Compose: (props: import("../../..").ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
3
+ Compose: (props: import("../../..").ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
4
4
  Action: ({ label, onClick, closes, icon, variant, ...restProps }: import("../..").ToastActionType & {
5
5
  variant?: import("../../../Banner/components/BannerSemanticComponents").SemanticOutlineVariant | undefined;
6
6
  disabled?: boolean | undefined;
@@ -1,5 +1,5 @@
1
1
  import { ToastActionType } from '../../core/core.types';
2
- import { ChildFree, ComposeElementProps } from '../../../Helpers/common.types';
2
+ import { ChildFree, ComposeElementProps } from '../../../Helpers';
3
3
  export type ActionsProps = {
4
4
  primary?: ToastActionType;
5
5
  secondary?: ToastActionType;
@@ -16,7 +16,7 @@ const Action = ({
16
16
  variant: semanticVariant
17
17
  } = context.useToastParams();
18
18
  return jsxRuntime.jsxRuntimeExports.jsxs(SemanticButton.default, {
19
- "data-testid": "redisui-toast-action-button",
19
+ "data-role": "toast-action-button",
20
20
  semanticVariant,
21
21
  outlineVariant: variant,
22
22
  onClick: (e) => {
@@ -14,7 +14,7 @@ const Action = ({
14
14
  variant: semanticVariant
15
15
  } = useToastParams();
16
16
  return jsxRuntimeExports.jsxs(SemanticButton, {
17
- "data-testid": "redisui-toast-action-button",
17
+ "data-role": "toast-action-button",
18
18
  semanticVariant,
19
19
  outlineVariant: variant,
20
20
  onClick: (e) => {
@@ -1,3 +1,3 @@
1
- import type { ComposeElementProps } from '../../../../../Helpers/common.types';
1
+ import type { ComposeElementProps } from '../../../../../Helpers';
2
2
  declare const Compose: (props: ComposeElementProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default Compose;
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const jsxRuntime = require("../../../node_modules/react/jsx-runtime.cjs");
4
- const Compose_style = require("./Compose.style.cjs");
5
4
  const context = require("../../core/context.cjs");
5
+ const Compose_style = require("./Compose.style.cjs");
6
6
  const Compose = (props) => jsxRuntime.jsxRuntimeExports.jsx(Compose_style.ToastComposeContainer, {
7
- "data-testid": "redisui-toast",
7
+ "data-role": "toast",
8
8
  variant: context.useToastParams().variant,
9
9
  size: "M",
10
10
  ...props
@@ -1,4 +1,4 @@
1
1
  import type { SemanticContainerProps } from '../../../Banner/components/BannerSemanticComponents';
2
- import { ComposeElementProps } from '../../../Helpers/common.types';
2
+ import { ComposeElementProps } from '../../../Helpers';
3
3
  declare const Compose: (props: SemanticContainerProps & ComposeElementProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default Compose;
@@ -1,8 +1,8 @@
1
1
  import { j as jsxRuntimeExports } from "../../../node_modules/react/jsx-runtime.js";
2
- import { ToastComposeContainer } from "./Compose.style.js";
3
2
  import { useToastParams } from "../../core/context.js";
3
+ import { ToastComposeContainer } from "./Compose.style.js";
4
4
  const Compose = (props) => jsxRuntimeExports.jsx(ToastComposeContainer, {
5
- "data-testid": "redisui-toast",
5
+ "data-role": "toast",
6
6
  variant: useToastParams().variant,
7
7
  size: "M",
8
8
  ...props
@@ -1,2 +1,2 @@
1
1
  /// <reference types="react" />
2
- export declare const ToastComposeContainer: import("styled-components").StyledComponent<({ variant, size, ...props }: import("../../../Banner/components/BannerSemanticComponents").SemanticContainerProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLDivElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
2
+ export declare const ToastComposeContainer: import("styled-components").StyledComponent<({ variant, size, ...props }: import("../../../Banner/components/BannerSemanticComponents").SemanticContainerProps & import("../../..").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLElement>, "content" | "children">) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
@@ -1,6 +1,6 @@
1
1
  import { RestToastContentProps, ToastContentProps } from './Content.types';
2
2
  declare const Content: (({ message, description, ...restProps }: ToastContentProps & RestToastContentProps) => import("react/jsx-runtime").JSX.Element) & {
3
- Compose: (props: import("../../..").ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
3
+ Compose: (props: import("../../..").ComposeElementProps<HTMLElement>) => import("react/jsx-runtime").JSX.Element;
4
4
  Message: ({ children, ...restProps }: import("../../..").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
5
5
  Description: ({ children, ...restProps }: import("../../..").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
6
6
  };
@@ -1,4 +1,4 @@
1
1
  import { ToastContentParams } from '../../core/core.types';
2
- import { ChildFree, ComposeElementProps } from '../../../Helpers/common.types';
2
+ import { ChildFree, ComposeElementProps } from '../../../Helpers';
3
3
  export type ToastContentProps = Pick<ToastContentParams, 'message' | 'description'>;
4
4
  export type RestToastContentProps = ChildFree<ComposeElementProps>;
@@ -1,8 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const jsxRuntime = require("../../../../../node_modules/react/jsx-runtime.cjs");
4
+ const context = require("../../../../core/context.cjs");
4
5
  const Compose_style = require("./Compose.style.cjs");
5
- const Compose = (props) => jsxRuntime.jsxRuntimeExports.jsx(Compose_style.Container, {
6
- ...props
7
- });
6
+ const Compose = (props) => {
7
+ const {
8
+ liveRole
9
+ } = context.useToastParams();
10
+ const liveProps = liveRole === "alert" ? {} : {
11
+ "aria-live": "polite",
12
+ "aria-atomic": true
13
+ };
14
+ return jsxRuntime.jsxRuntimeExports.jsx(Compose_style.Container, {
15
+ role: liveRole,
16
+ ...liveProps,
17
+ ...props
18
+ });
19
+ };
8
20
  exports.default = Compose;
@@ -1,3 +1,3 @@
1
- import { ComposeElementProps } from '../../../../../Helpers/common.types';
1
+ import { ComposeElementProps } from '../../../../../Helpers';
2
2
  declare const Compose: (props: ComposeElementProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default Compose;
@@ -1,8 +1,20 @@
1
1
  import { j as jsxRuntimeExports } from "../../../../../node_modules/react/jsx-runtime.js";
2
+ import { useToastParams } from "../../../../core/context.js";
2
3
  import { Container } from "./Compose.style.js";
3
- const Compose = (props) => jsxRuntimeExports.jsx(Container, {
4
- ...props
5
- });
4
+ const Compose = (props) => {
5
+ const {
6
+ liveRole
7
+ } = useToastParams();
8
+ const liveProps = liveRole === "alert" ? {} : {
9
+ "aria-live": "polite",
10
+ "aria-atomic": true
11
+ };
12
+ return jsxRuntimeExports.jsx(Container, {
13
+ role: liveRole,
14
+ ...liveProps,
15
+ ...props
16
+ });
17
+ };
6
18
  export {
7
19
  Compose as default
8
20
  };
@@ -6,7 +6,7 @@ const Description = ({
6
6
  children,
7
7
  ...restProps
8
8
  }) => children ? jsxRuntime.jsxRuntimeExports.jsx(Description_style.ToastDescription, {
9
- "data-testid": "redisui-toast-description",
9
+ "data-role": "toast-description",
10
10
  ...restProps,
11
11
  children
12
12
  }) : null;
@@ -4,7 +4,7 @@ const Description = ({
4
4
  children,
5
5
  ...restProps
6
6
  }) => children ? jsxRuntimeExports.jsx(ToastDescription, {
7
- "data-testid": "redisui-toast-description",
7
+ "data-role": "toast-description",
8
8
  ...restProps,
9
9
  children
10
10
  }) : null;
@@ -6,7 +6,7 @@ const Message = ({
6
6
  children,
7
7
  ...restProps
8
8
  }) => children ? jsxRuntime.jsxRuntimeExports.jsx(Message_style.ToastMessage, {
9
- "data-testid": "redisui-toast-message",
9
+ "data-role": "toast-message",
10
10
  variant: "semiBold",
11
11
  ...restProps,
12
12
  children
@@ -4,7 +4,7 @@ const Message = ({
4
4
  children,
5
5
  ...restProps
6
6
  }) => children ? jsxRuntimeExports.jsx(ToastMessage, {
7
- "data-testid": "redisui-toast-message",
7
+ "data-role": "toast-message",
8
8
  variant: "semiBold",
9
9
  ...restProps,
10
10
  children
@@ -15,6 +15,7 @@ const Icon = ({
15
15
  customIcon: icon,
16
16
  variant,
17
17
  size,
18
+ "aria-hidden": true,
18
19
  ...props
19
20
  });
20
21
  };
@@ -13,6 +13,7 @@ const Icon = ({
13
13
  customIcon: icon,
14
14
  variant,
15
15
  size,
16
+ "aria-hidden": true,
16
17
  ...props
17
18
  });
18
19
  };
@@ -13,7 +13,7 @@ const renderContent = (content) => {
13
13
  ...content
14
14
  });
15
15
  };
16
- const wrapInContextProvider = (contextProps, content) => jsxRuntime.jsxRuntimeExports.jsx(context.Context.Provider, {
16
+ const wrapInContextProvider = (contextProps, content) => jsxRuntime.jsxRuntimeExports.jsx(context.ToastContextProvider, {
17
17
  value: contextProps,
18
18
  children: content
19
19
  });