@nulogy/components 16.0.2 → 16.0.3

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 (151) hide show
  1. package/dist/main.js +1 -0
  2. package/dist/main.js.map +1 -1
  3. package/dist/main.module.js +1 -0
  4. package/dist/main.module.js.map +1 -1
  5. package/dist/src/Alert/Alert.story.d.ts +1 -1
  6. package/dist/src/Alert/Alert.story.js +11 -0
  7. package/dist/src/AppTag/stories/AppTag.story.d.ts +2 -2
  8. package/dist/src/AppTag/stories/AppTag.story.js +6 -4
  9. package/dist/src/AppTag/stories/AppTag.usecases.story.d.ts +13 -10
  10. package/dist/src/AppTag/stories/AppTag.usecases.story.js +71 -51
  11. package/dist/src/AsyncSelect/AsyncSelect.story.d.ts +17 -13
  12. package/dist/src/AsyncSelect/AsyncSelect.story.js +46 -23
  13. package/dist/src/BottomSheet/stories/BottomSheet.actions.story.d.ts +8 -1
  14. package/dist/src/BottomSheet/stories/BottomSheet.actions.story.js +22 -3
  15. package/dist/src/BottomSheet/stories/BottomSheet.features.story.d.ts +9 -2
  16. package/dist/src/BottomSheet/stories/BottomSheet.features.story.js +27 -12
  17. package/dist/src/BottomSheet/stories/BottomSheet.story.d.ts +7 -1
  18. package/dist/src/BottomSheet/stories/BottomSheet.story.js +20 -3
  19. package/dist/src/Box/Box.story.d.ts +22 -44
  20. package/dist/src/Box/Box.story.js +30 -30
  21. package/dist/src/BrandedNavBar/NavBar.story.d.ts +16 -28
  22. package/dist/src/BrandedNavBar/NavBar.story.js +41 -35
  23. package/dist/src/BrandedNavBar/SmallNavBar.story.d.ts +1 -1
  24. package/dist/src/Breadcrumbs/Breadcrumbs.story.d.ts +4 -8
  25. package/dist/src/Breadcrumbs/Breadcrumbs.story.js +4 -4
  26. package/dist/src/Button/Button.story.d.ts +14 -28
  27. package/dist/src/Button/Button.story.js +14 -14
  28. package/dist/src/Button/ControlIcon.story.js +1 -1
  29. package/dist/src/Button/IconicButton.story.d.ts +23 -45
  30. package/dist/src/Button/IconicButton.story.js +27 -25
  31. package/dist/src/ButtonGroup/ButtonGroup.story.d.ts +13 -23
  32. package/dist/src/ButtonGroup/ButtonGroup.story.js +10 -10
  33. package/dist/src/Card/Card.story.d.ts +3 -5
  34. package/dist/src/Card/Card.story.js +9 -7
  35. package/dist/src/Checkbox/Checkbox.story.d.ts +18 -34
  36. package/dist/src/Checkbox/Checkbox.story.js +28 -24
  37. package/dist/src/Checkbox/CheckboxGroup.story.d.ts +10 -20
  38. package/dist/src/Checkbox/CheckboxGroup.story.js +10 -10
  39. package/dist/src/DatePickers/stories/DatePicker.story.d.ts +9 -2
  40. package/dist/src/DatePickers/stories/DatePicker.story.js +43 -2
  41. package/dist/src/DatePickers/stories/MonthPicker.story.d.ts +8 -1
  42. package/dist/src/DatePickers/stories/MonthPicker.story.js +21 -2
  43. package/dist/src/DatePickers/stories/WeekPicker.story.d.ts +32 -4
  44. package/dist/src/DatePickers/stories/WeekPicker.story.js +57 -8
  45. package/dist/src/DateRange/DateRange.story.d.ts +16 -2
  46. package/dist/src/DateRange/DateRange.story.js +41 -3
  47. package/dist/src/DescriptionList/stories/DescriptionList.column.story.d.ts +1 -1
  48. package/dist/src/DescriptionList/stories/DescriptionList.column.story.js +10 -8
  49. package/dist/src/DescriptionList/stories/DescriptionList.group-min-width.story.d.ts +1 -1
  50. package/dist/src/DescriptionList/stories/DescriptionList.layout.story.d.ts +1 -1
  51. package/dist/src/DescriptionList/stories/DescriptionList.layout.story.js +12 -10
  52. package/dist/src/DescriptionList/stories/DescriptionList.playground.story.d.ts +1 -1
  53. package/dist/src/DescriptionList/stories/DescriptionList.story.d.ts +1 -0
  54. package/dist/src/DescriptionList/stories/DescriptionList.story.js +3 -0
  55. package/dist/src/DropdownMenu/DropdownMenu.story.d.ts +32 -32
  56. package/dist/src/DropdownMenu/DropdownMenu.story.js +58 -16
  57. package/dist/src/FieldLabel/FieldLabel.story.d.ts +2 -4
  58. package/dist/src/FieldLabel/FieldLabel.story.js +2 -2
  59. package/dist/src/Flex/Flex.story.d.ts +34 -68
  60. package/dist/src/Flex/Flex.story.js +36 -36
  61. package/dist/src/Form/Form.story.d.ts +8 -16
  62. package/dist/src/Form/Form.story.js +8 -8
  63. package/dist/src/Icon/Icon.story.d.ts +12 -24
  64. package/dist/src/Icon/Icon.story.js +15 -15
  65. package/dist/src/Input/Input.story.d.ts +16 -32
  66. package/dist/src/Input/Input.story.js +23 -23
  67. package/dist/src/Layout/Page.applicationFrame.story.d.ts +1 -1
  68. package/dist/src/Layout/Page.story.d.ts +1 -1
  69. package/dist/src/Layout/Sidebar.story.d.ts +1 -1
  70. package/dist/src/Link/Link.story.d.ts +16 -32
  71. package/dist/src/Link/Link.story.js +16 -17
  72. package/dist/src/List/List.story.d.ts +8 -16
  73. package/dist/src/List/List.story.js +8 -8
  74. package/dist/src/LoadingAnimation/LoadingAnimation.story.d.ts +4 -8
  75. package/dist/src/LoadingAnimation/LoadingAnimation.story.js +4 -4
  76. package/dist/src/MaybeTooltip/MaybeTooltip.story.d.ts +1 -1
  77. package/dist/src/Modal/Modal.story.d.ts +1 -1
  78. package/dist/src/Navigation/stories/Navigation.appSwitcher.story.d.ts +8 -1
  79. package/dist/src/Navigation/stories/Navigation.appSwitcher.story.js +19 -1
  80. package/dist/src/Navigation/stories/Navigation.logos.story.d.ts +2 -4
  81. package/dist/src/Navigation/stories/Navigation.logos.story.js +4 -4
  82. package/dist/src/Navigation/stories/Navigation.story.d.ts +7 -1
  83. package/dist/src/Navigation/stories/Navigation.story.js +145 -136
  84. package/dist/src/Navigation/stories/Navigation.userMenu.story.d.ts +8 -1
  85. package/dist/src/Navigation/stories/Navigation.userMenu.story.js +22 -1
  86. package/dist/src/Overlay/Overlay.story.d.ts +2 -4
  87. package/dist/src/Overlay/Overlay.story.js +2 -2
  88. package/dist/src/Pagination/Pagination.story.d.ts +14 -13
  89. package/dist/src/Pagination/Pagination.story.js +32 -11
  90. package/dist/src/Radio/Radio.story.d.ts +1 -1
  91. package/dist/src/Radio/Radio.story.js +44 -1
  92. package/dist/src/Radio/RadioGroup.story.d.ts +29 -21
  93. package/dist/src/Radio/RadioGroup.story.js +67 -14
  94. package/dist/src/RangeContainer/RangeContainer.story.d.ts +2 -4
  95. package/dist/src/RangeContainer/RangeContainer.story.js +2 -2
  96. package/dist/src/Select/Select.story.d.ts +37 -65
  97. package/dist/src/Select/Select.story.js +93 -49
  98. package/dist/src/StatusIndicator/StatusIndicator.story.d.ts +4 -8
  99. package/dist/src/StatusIndicator/StatusIndicator.story.js +4 -4
  100. package/dist/src/Switcher/Switcher.story.d.ts +8 -1
  101. package/dist/src/Switcher/Switcher.story.js +13 -1
  102. package/dist/src/Table/stories/BaseTable.story.d.ts +1 -1
  103. package/dist/src/Table/stories/BaseTable.story.js +1 -1
  104. package/dist/src/Table/stories/CustomContent.story.js +1 -1
  105. package/dist/src/Table/stories/Density.story.d.ts +4 -8
  106. package/dist/src/Table/stories/Density.story.js +4 -4
  107. package/dist/src/Table/stories/SortingColumnHeader.story.d.ts +1 -1
  108. package/dist/src/Table/stories/SortingColumnHeader.story.js +1 -1
  109. package/dist/src/Table/stories/Table.story.d.ts +1 -1
  110. package/dist/src/Table/stories/Table.story.js +37 -1
  111. package/dist/src/Table/stories/TableWithCustomSorting.story.d.ts +2 -4
  112. package/dist/src/Table/stories/TableWithCustomSorting.story.js +2 -2
  113. package/dist/src/Table/stories/TableWithExpandableRows.story.d.ts +4 -8
  114. package/dist/src/Table/stories/TableWithExpandableRows.story.js +5 -5
  115. package/dist/src/Table/stories/TableWithFiltering.story.d.ts +8 -8
  116. package/dist/src/Table/stories/TableWithFiltering.story.js +15 -4
  117. package/dist/src/Table/stories/TableWithSelectableRows.story.d.ts +8 -8
  118. package/dist/src/Table/stories/TableWithSelectableRows.story.js +22 -5
  119. package/dist/src/Table/stories/TableWithServerSidePagination.story.d.ts +2 -4
  120. package/dist/src/Table/stories/TableWithServerSidePagination.story.js +2 -2
  121. package/dist/src/Tabs/Tabs.story.d.ts +33 -33
  122. package/dist/src/Tabs/Tabs.story.js +52 -16
  123. package/dist/src/Textarea/Textarea.story.js +1 -1
  124. package/dist/src/TimePicker/TimePicker.js +2 -0
  125. package/dist/src/TimePicker/TimePicker.story.d.ts +24 -40
  126. package/dist/src/TimePicker/TimePicker.story.js +40 -27
  127. package/dist/src/TimeRange/TimeRange.story.d.ts +14 -20
  128. package/dist/src/TimeRange/TimeRange.story.js +34 -20
  129. package/dist/src/Toast/Toast.story.d.ts +24 -25
  130. package/dist/src/Toast/Toast.story.js +170 -142
  131. package/dist/src/ToastContainer/ToastContainer.story.d.ts +8 -1
  132. package/dist/src/ToastContainer/ToastContainer.story.js +13 -1
  133. package/dist/src/Toggle/Toggle.story.d.ts +25 -15
  134. package/dist/src/Toggle/Toggle.story.js +77 -43
  135. package/dist/src/Tooltip/Tooltip.story.d.ts +1 -1
  136. package/dist/src/Tooltip/Tooltip.story.js +16 -0
  137. package/dist/src/TopBar/stories/TopBar.story.d.ts +7 -1
  138. package/dist/src/TopBar/stories/TopBar.story.js +18 -1
  139. package/dist/src/TruncatedText/TruncatedText.story.d.ts +29 -34
  140. package/dist/src/TruncatedText/TruncatedText.story.js +46 -19
  141. package/dist/src/Type/Text.story.d.ts +10 -20
  142. package/dist/src/Type/Text.story.js +10 -10
  143. package/dist/src/Validation/InlineValidation.story.d.ts +6 -12
  144. package/dist/src/Validation/InlineValidation.story.js +6 -6
  145. package/dist/src/VisualTests/Select.story.d.ts +12 -24
  146. package/dist/src/VisualTests/Select.story.js +19 -19
  147. package/dist/src/pages/ErrorPage.story.d.ts +3 -5
  148. package/dist/src/pages/ErrorPage.story.js +10 -10
  149. package/dist/src/pages/LoginPage.story.d.ts +8 -16
  150. package/dist/src/pages/LoginPage.story.js +8 -8
  151. package/package.json +15 -23
@@ -3,62 +3,46 @@ declare const _default: {
3
3
  };
4
4
  export default _default;
5
5
  export declare const Default: {
6
- (): import("react/jsx-runtime").JSX.Element;
7
- story: {
8
- name: string;
9
- };
6
+ render: () => import("react/jsx-runtime").JSX.Element;
7
+ name: string;
8
+ play: ({ canvasElement, step }: {
9
+ canvasElement: any;
10
+ step: any;
11
+ }) => Promise<void>;
10
12
  };
11
13
  export declare const WithCustomTimeFormat: {
12
- (): import("react/jsx-runtime").JSX.Element;
13
- story: {
14
- name: string;
15
- };
14
+ render: () => import("react/jsx-runtime").JSX.Element;
15
+ name: string;
16
16
  };
17
17
  export declare const WithCustomTimeInterval: {
18
- (): import("react/jsx-runtime").JSX.Element;
19
- story: {
20
- name: string;
21
- };
18
+ render: () => import("react/jsx-runtime").JSX.Element;
19
+ name: string;
22
20
  };
23
21
  export declare const WithCustomPlaceholder: {
24
- (): import("react/jsx-runtime").JSX.Element;
25
- story: {
26
- name: string;
27
- };
22
+ render: () => import("react/jsx-runtime").JSX.Element;
23
+ name: string;
28
24
  };
29
25
  export declare const disabled: {
30
- (): import("react/jsx-runtime").JSX.Element;
31
- story: {
32
- name: string;
33
- };
26
+ render: () => import("react/jsx-runtime").JSX.Element;
27
+ name: string;
34
28
  };
35
29
  export declare const WithErrorState: {
36
- (): import("react/jsx-runtime").JSX.Element;
37
- story: {
38
- name: string;
39
- };
30
+ render: () => import("react/jsx-runtime").JSX.Element;
31
+ name: string;
40
32
  };
41
33
  export declare const WithMinAndMaxTime: {
42
- (): import("react/jsx-runtime").JSX.Element;
43
- story: {
44
- name: string;
45
- };
34
+ render: () => import("react/jsx-runtime").JSX.Element;
35
+ name: string;
46
36
  };
47
37
  export declare const WithCustomDefault: {
48
- (): import("react/jsx-runtime").JSX.Element;
49
- story: {
50
- name: string;
51
- };
38
+ render: () => import("react/jsx-runtime").JSX.Element;
39
+ name: string;
52
40
  };
53
41
  export declare const WithValue: {
54
- (): import("react/jsx-runtime").JSX.Element;
55
- story: {
56
- name: string;
57
- };
42
+ render: () => import("react/jsx-runtime").JSX.Element;
43
+ name: string;
58
44
  };
59
45
  export declare const UsingRefToControlFocus: {
60
- (): import("react/jsx-runtime").JSX.Element;
61
- story: {
62
- name: string;
63
- };
46
+ render: () => import("react/jsx-runtime").JSX.Element;
47
+ name: string;
64
48
  };
@@ -1,57 +1,70 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useRef } from "react";
3
- import { action } from "@storybook/addon-actions";
3
+ import { expect, screen, userEvent, waitFor, within } from "storybook/test";
4
+ import { action } from "storybook/actions";
4
5
  import { TimePicker, Button } from "../index";
5
6
  export default {
6
7
  title: "Components/TimePicker",
7
8
  };
8
- export const Default = () => (_jsx(TimePicker, { p: "x3", onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Start Time" }));
9
- Default.story = {
9
+ export const Default = {
10
+ render: () => (_jsx(TimePicker, { p: "x3", onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Start Time" })),
10
11
  name: "default",
12
+ play: async ({ canvasElement, step }) => {
13
+ const canvas = within(canvasElement);
14
+ await step("can open the dropdown on click", async () => {
15
+ await userEvent.click(canvas.getByTestId("select-input"));
16
+ await waitFor(() => expect(screen.getAllByTestId(/select-option/)[0]).toBeVisible());
17
+ });
18
+ await step("allows the user to select a time by clicking", async () => {
19
+ const options = screen.getAllByTestId(/select-option/);
20
+ await userEvent.click(options[0]);
21
+ await expect(canvas.getByTestId("select-container")).toHaveTextContent("12:00 AM");
22
+ });
23
+ },
11
24
  };
12
- export const WithCustomTimeFormat = () => (_jsx(TimePicker, { defaultValue: "03:30", timeFormat: "HH:mm", onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration" }));
13
- WithCustomTimeFormat.story = {
25
+ export const WithCustomTimeFormat = {
26
+ render: () => (_jsx(TimePicker, { defaultValue: "03:30", timeFormat: "HH:mm", onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration" })),
14
27
  name: "with custom time format",
15
28
  };
16
- export const WithCustomTimeInterval = () => (_jsx(TimePicker, { defaultValue: "03:30", timeFormat: "HH:mm", interval: 30, onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration" }));
17
- WithCustomTimeInterval.story = {
29
+ export const WithCustomTimeInterval = {
30
+ render: () => (_jsx(TimePicker, { defaultValue: "03:30", timeFormat: "HH:mm", interval: 30, onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration" })),
18
31
  name: "with custom time interval",
19
32
  };
20
- export const WithCustomPlaceholder = () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration", placeholder: "--:--" }));
21
- WithCustomPlaceholder.story = {
33
+ export const WithCustomPlaceholder = {
34
+ render: () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration", placeholder: "--:--" })),
22
35
  name: "with custom placeholder",
23
36
  };
24
- export const disabled = () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration", placeholder: "--:--", disabled: true }));
25
- disabled.story = {
37
+ export const disabled = {
38
+ render: () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration", placeholder: "--:--", disabled: true })),
26
39
  name: "disabled",
27
40
  };
28
- export const WithErrorState = () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "End Time", errorMessage: "This time is invalid" }));
29
- WithErrorState.story = {
41
+ export const WithErrorState = {
42
+ render: () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "End Time", errorMessage: "This time is invalid" })),
30
43
  name: "with error state",
31
44
  };
32
- export const WithMinAndMaxTime = () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "End Time", minTime: "09:00", maxTime: "21:00" }));
33
- WithMinAndMaxTime.story = {
45
+ export const WithMinAndMaxTime = {
46
+ render: () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "End Time", minTime: "09:00", maxTime: "21:00" })),
34
47
  name: "with min and max time",
35
48
  };
36
- export const WithCustomDefault = () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "End Time", defaultValue: "12:38 PM" }));
37
- WithCustomDefault.story = {
49
+ export const WithCustomDefault = {
50
+ render: () => (_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "End Time", defaultValue: "12:38 PM" })),
38
51
  name: "with custom default",
39
52
  };
40
53
  const ControlledTimePicker = () => {
41
54
  const [value, setValue] = useState("13:43");
42
55
  return _jsx(TimePicker, { onChange: setValue, onInputChange: setValue, labelText: "End Time", value: value });
43
56
  };
44
- export const WithValue = () => _jsx(ControlledTimePicker, {});
45
- WithValue.story = {
57
+ export const WithValue = {
58
+ render: () => _jsx(ControlledTimePicker, {}),
46
59
  name: "with value",
47
60
  };
48
- export const UsingRefToControlFocus = () => {
49
- const ref = useRef(null);
50
- const handleClick = () => {
51
- ref.current.focus();
52
- };
53
- return (_jsxs(_Fragment, { children: [_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration", ref: ref }), _jsx(Button, { onClick: handleClick, children: "Focus the Toggle" })] }));
54
- };
55
- UsingRefToControlFocus.story = {
61
+ export const UsingRefToControlFocus = {
62
+ render: () => {
63
+ const ref = useRef(null);
64
+ const handleClick = () => {
65
+ ref.current.focus();
66
+ };
67
+ return (_jsxs(_Fragment, { children: [_jsx(TimePicker, { onChange: action("time changed"), onInputChange: action("input changed"), labelText: "Duration", ref: ref }), _jsx(Button, { onClick: handleClick, children: "Focus the Toggle" })] }));
68
+ },
56
69
  name: "using ref to control focus",
57
70
  };
@@ -3,32 +3,26 @@ declare const _default: {
3
3
  };
4
4
  export default _default;
5
5
  export declare const Default: {
6
- (): import("react/jsx-runtime").JSX.Element;
7
- story: {
8
- name: string;
9
- };
6
+ render: () => import("react/jsx-runtime").JSX.Element;
7
+ name: string;
10
8
  };
11
9
  export declare const DefaultSelections: {
12
- (): import("react/jsx-runtime").JSX.Element;
13
- story: {
14
- name: string;
15
- };
10
+ render: () => import("react/jsx-runtime").JSX.Element;
11
+ name: string;
16
12
  };
17
13
  export declare const WithRangeValidation: {
18
- (): import("react/jsx-runtime").JSX.Element;
19
- story: {
20
- name: string;
21
- };
14
+ render: () => import("react/jsx-runtime").JSX.Element;
15
+ name: string;
22
16
  };
23
17
  export declare const WithMinAndMaxTimeRange: {
24
- (): import("react/jsx-runtime").JSX.Element;
25
- story: {
26
- name: string;
27
- };
18
+ render: () => import("react/jsx-runtime").JSX.Element;
19
+ name: string;
20
+ play: ({ canvasElement, step }: {
21
+ canvasElement: any;
22
+ step: any;
23
+ }) => Promise<void>;
28
24
  };
29
25
  export declare const UsingRefToControlFocus: {
30
- (): import("react/jsx-runtime").JSX.Element;
31
- story: {
32
- name: string;
33
- };
26
+ render: () => import("react/jsx-runtime").JSX.Element;
27
+ name: string;
34
28
  };
@@ -1,37 +1,51 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useRef } from "react";
3
- import { action } from "@storybook/addon-actions";
3
+ import { expect, screen, userEvent, within } from "storybook/test";
4
+ import { action } from "storybook/actions";
4
5
  import { Button, PrimaryButton } from "..";
5
6
  import TimeRange from "./TimeRange";
6
7
  export default {
7
8
  title: "Components/TimeRange",
8
9
  };
9
- export const Default = () => (_jsx(TimeRange, { p: "x3", onRangeChange: action("range changed"), onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") }));
10
- Default.story = {
10
+ export const Default = {
11
+ render: () => (_jsx(TimeRange, { p: "x3", onRangeChange: action("range changed"), onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") })),
11
12
  name: "default",
12
13
  };
13
- export const DefaultSelections = () => (_jsx(TimeRange, { onRangeChange: action("range changed"), defaultStartTime: "12:00 AM", defaultEndTime: "01:30 PM", onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") }));
14
- DefaultSelections.story = {
14
+ export const DefaultSelections = {
15
+ render: () => (_jsx(TimeRange, { onRangeChange: action("range changed"), defaultStartTime: "12:00 AM", defaultEndTime: "01:30 PM", onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") })),
15
16
  name: "default selections",
16
17
  };
17
- export const WithRangeValidation = () => (_jsx(TimeRange, { onRangeChange: action("range changed"), defaultStartTime: "12:00 AM", defaultEndTime: "03:30 AM", onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") }));
18
- WithRangeValidation.story = {
18
+ export const WithRangeValidation = {
19
+ render: () => (_jsx(TimeRange, { onRangeChange: action("range changed"), defaultStartTime: "12:00 AM", defaultEndTime: "03:30 AM", onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") })),
19
20
  name: "with range validation",
20
21
  };
21
- export const WithMinAndMaxTimeRange = () => (_jsx(TimeRange, { onRangeChange: action("range changed"), minTime: "09:00", maxTime: "18:30", onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") }));
22
- WithMinAndMaxTimeRange.story = {
22
+ export const WithMinAndMaxTimeRange = {
23
+ render: () => (_jsx(TimeRange, { onRangeChange: action("range changed"), minTime: "09:00", maxTime: "18:30", onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed") })),
23
24
  name: "with min and max time range",
25
+ play: async ({ canvasElement, step }) => {
26
+ const canvas = within(canvasElement);
27
+ await step("shows constrained end time options after selecting a start time", async () => {
28
+ await userEvent.click(canvas.getByLabelText("Select a start time"));
29
+ const startOptions = screen.getAllByTestId(/select-option/);
30
+ await userEvent.click(startOptions[4]);
31
+ const startInput = canvas.getAllByTestId("select-input")[0];
32
+ await expect(startInput).toHaveValue("10:00 AM");
33
+ await userEvent.click(canvas.getByLabelText("Select an end time"));
34
+ const endOptions = screen.getAllByTestId(/select-option/);
35
+ await expect(endOptions.length).toBeGreaterThan(0);
36
+ });
37
+ },
24
38
  };
25
- export const UsingRefToControlFocus = () => {
26
- const ref = useRef(null);
27
- const handleClick = () => {
28
- ref.current.inputRef1.focus();
29
- };
30
- const handleClick2 = () => {
31
- ref.current.inputRef2.focus();
32
- };
33
- return (_jsxs(_Fragment, { children: [_jsx(TimeRange, { onRangeChange: action("range changed"), onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed"), ref: ref }), _jsx(Button, { onClick: handleClick, ml: "x2", children: "Focus the First Input" }), _jsx(PrimaryButton, { onClick: handleClick2, ml: "x2", children: "Focus the Second Input" })] }));
34
- };
35
- UsingRefToControlFocus.story = {
39
+ export const UsingRefToControlFocus = {
40
+ render: () => {
41
+ const ref = useRef(null);
42
+ const handleClick = () => {
43
+ ref.current.inputRef1.focus();
44
+ };
45
+ const handleClick2 = () => {
46
+ ref.current.inputRef2.focus();
47
+ };
48
+ return (_jsxs(_Fragment, { children: [_jsx(TimeRange, { onRangeChange: action("range changed"), onStartTimeChange: action("start date changed"), onEndTimeChange: action("end date changed"), ref: ref }), _jsx(Button, { onClick: handleClick, ml: "x2", children: "Focus the First Input" }), _jsx(PrimaryButton, { onClick: handleClick2, ml: "x2", children: "Focus the Second Input" })] }));
49
+ },
36
50
  name: "using ref to control focus",
37
51
  };
@@ -2,40 +2,39 @@ declare const _default: {
2
2
  title: string;
3
3
  };
4
4
  export default _default;
5
- export declare const _Toast: () => import("react/jsx-runtime").JSX.Element;
5
+ export declare const _Toast: {
6
+ render: () => import("react/jsx-runtime").JSX.Element;
7
+ name: string;
8
+ play: ({ canvasElement, step }: {
9
+ canvasElement: any;
10
+ step: any;
11
+ }) => Promise<void>;
12
+ };
6
13
  export declare const _MultipleToastsExample: {
7
- (): import("react/jsx-runtime").JSX.Element;
8
- story: {
9
- name: string;
10
- };
14
+ render: () => import("react/jsx-runtime").JSX.Element;
15
+ name: string;
11
16
  };
12
17
  export declare const CustomizeLengthOfTimeToastIsVisible: {
13
- (): import("react/jsx-runtime").JSX.Element;
14
- story: {
15
- name: string;
16
- };
18
+ render: () => import("react/jsx-runtime").JSX.Element;
19
+ name: string;
17
20
  };
18
21
  export declare const WithCloseButton: {
19
- (): import("react/jsx-runtime").JSX.Element;
20
- story: {
21
- name: string;
22
- };
22
+ render: () => import("react/jsx-runtime").JSX.Element;
23
+ name: string;
24
+ play: ({ canvasElement, step }: {
25
+ canvasElement: any;
26
+ step: any;
27
+ }) => Promise<void>;
23
28
  };
24
29
  export declare const WithModal: {
25
- (): import("react/jsx-runtime").JSX.Element;
26
- story: {
27
- name: string;
28
- };
30
+ render: () => import("react/jsx-runtime").JSX.Element;
31
+ name: string;
29
32
  };
30
33
  export declare const CloseableWithMultiLineMessage: {
31
- (): import("react/jsx-runtime").JSX.Element;
32
- story: {
33
- name: string;
34
- };
34
+ render: () => import("react/jsx-runtime").JSX.Element;
35
+ name: string;
35
36
  };
36
37
  export declare const MultipleCloseableToastsExample: {
37
- (): import("react/jsx-runtime").JSX.Element;
38
- story: {
39
- name: string;
40
- };
38
+ render: () => import("react/jsx-runtime").JSX.Element;
39
+ name: string;
41
40
  };