@simplybusiness/mobius 3.9.3 → 3.10.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.
- package/CHANGELOG.md +9 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/components/NumberField/NumberField.mdx +17 -0
- package/src/components/NumberField/__snapshots__/NumberField.test.tsx.snap +7 -14
- package/dist/esm/components/Accordion/Accordion.stories.js +0 -45
- package/dist/esm/components/Accordion/Accordion.stories.js.map +0 -1
- package/dist/esm/components/Accordion/Accordion.test.js +0 -65
- package/dist/esm/components/Accordion/Accordion.test.js.map +0 -1
- package/dist/esm/components/Alert/Alert.stories.js +0 -32
- package/dist/esm/components/Alert/Alert.stories.js.map +0 -1
- package/dist/esm/components/Alert/Alert.test.js +0 -48
- package/dist/esm/components/Alert/Alert.test.js.map +0 -1
- package/dist/esm/components/Box/Box.stories.js +0 -20
- package/dist/esm/components/Box/Box.stories.js.map +0 -1
- package/dist/esm/components/Box/Box.test.js +0 -31
- package/dist/esm/components/Box/Box.test.js.map +0 -1
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.stories.js +0 -17
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.stories.js.map +0 -1
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.test.js +0 -33
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.test.js.map +0 -1
- package/dist/esm/components/Button/Button.stories.js +0 -213
- package/dist/esm/components/Button/Button.stories.js.map +0 -1
- package/dist/esm/components/Button/Button.test.js +0 -81
- package/dist/esm/components/Button/Button.test.js.map +0 -1
- package/dist/esm/components/Checkbox/Checkbox.stories.js +0 -98
- package/dist/esm/components/Checkbox/Checkbox.stories.js.map +0 -1
- package/dist/esm/components/Checkbox/Checkbox.test.js +0 -108
- package/dist/esm/components/Checkbox/Checkbox.test.js.map +0 -1
- package/dist/esm/components/Checkbox/CheckboxGroup.stories.js +0 -71
- package/dist/esm/components/Checkbox/CheckboxGroup.stories.js.map +0 -1
- package/dist/esm/components/Checkbox/CheckboxGroup.test.js +0 -44
- package/dist/esm/components/Checkbox/CheckboxGroup.test.js.map +0 -1
- package/dist/esm/components/Chopin/Actions/Actions.stories.js +0 -56
- package/dist/esm/components/Chopin/Actions/Actions.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Actions/Actions.test.js +0 -95
- package/dist/esm/components/Chopin/Actions/Actions.test.js.map +0 -1
- package/dist/esm/components/Chopin/Actions/LinkOrButton.test.js +0 -33
- package/dist/esm/components/Chopin/Actions/LinkOrButton.test.js.map +0 -1
- package/dist/esm/components/Chopin/Footer/Footer.stories.js +0 -166
- package/dist/esm/components/Chopin/Footer/Footer.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Footer/Footer.test.js +0 -90
- package/dist/esm/components/Chopin/Footer/Footer.test.js.map +0 -1
- package/dist/esm/components/Chopin/Header/Header.stories.js +0 -38
- package/dist/esm/components/Chopin/Header/Header.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Header/Header.test.js +0 -86
- package/dist/esm/components/Chopin/Header/Header.test.js.map +0 -1
- package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js +0 -43
- package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js.map +0 -1
- package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.test.js +0 -108
- package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.test.js.map +0 -1
- package/dist/esm/components/Chopin/Question/Question.stories.js +0 -136
- package/dist/esm/components/Chopin/Question/Question.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Question/Question.test.js +0 -116
- package/dist/esm/components/Chopin/Question/Question.test.js.map +0 -1
- package/dist/esm/components/Chopin/QuestionGroup/QuestionGroup.stories.js +0 -40
- package/dist/esm/components/Chopin/QuestionGroup/QuestionGroup.stories.js.map +0 -1
- package/dist/esm/components/Chopin/QuestionGroup/QuestionGroup.test.js +0 -62
- package/dist/esm/components/Chopin/QuestionGroup/QuestionGroup.test.js.map +0 -1
- package/dist/esm/components/Chopin/QuestionHelp/QuestionHelp.test.js +0 -41
- package/dist/esm/components/Chopin/QuestionHelp/QuestionHelp.test.js.map +0 -1
- package/dist/esm/components/Chopin/Section/Section.stories.js +0 -16
- package/dist/esm/components/Chopin/Section/Section.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Section/Section.test.js +0 -35
- package/dist/esm/components/Chopin/Section/Section.test.js.map +0 -1
- package/dist/esm/components/Chopin/Steps/Steps.stories.js +0 -12
- package/dist/esm/components/Chopin/Steps/Steps.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Steps/Steps.test.js +0 -93
- package/dist/esm/components/Chopin/Steps/Steps.test.js.map +0 -1
- package/dist/esm/components/Chopin/Testimonial/Testimonial.stories.js +0 -15
- package/dist/esm/components/Chopin/Testimonial/Testimonial.stories.js.map +0 -1
- package/dist/esm/components/Chopin/Testimonial/Testimonial.test.js +0 -35
- package/dist/esm/components/Chopin/Testimonial/Testimonial.test.js.map +0 -1
- package/dist/esm/components/Chopin/TradeSelector/Listing/Listing.test.js +0 -26
- package/dist/esm/components/Chopin/TradeSelector/Listing/Listing.test.js.map +0 -1
- package/dist/esm/components/Chopin/TradeSelector/Listing/ListingItem.test.js +0 -37
- package/dist/esm/components/Chopin/TradeSelector/Listing/ListingItem.test.js.map +0 -1
- package/dist/esm/components/Chopin/TradeSelector/SearchResults/SearchResults.test.js +0 -86
- package/dist/esm/components/Chopin/TradeSelector/SearchResults/SearchResults.test.js.map +0 -1
- package/dist/esm/components/Chopin/TradeSelector/TradeInput/TradeInput.test.js +0 -52
- package/dist/esm/components/Chopin/TradeSelector/TradeInput/TradeInput.test.js.map +0 -1
- package/dist/esm/components/Chopin/TradeSelector/TradeSelector.stories.js +0 -52
- package/dist/esm/components/Chopin/TradeSelector/TradeSelector.stories.js.map +0 -1
- package/dist/esm/components/Chopin/TradeSelector/TradeSelector.test.js +0 -226
- package/dist/esm/components/Chopin/TradeSelector/TradeSelector.test.js.map +0 -1
- package/dist/esm/components/Container/Container.stories.js +0 -12
- package/dist/esm/components/Container/Container.stories.js.map +0 -1
- package/dist/esm/components/Container/Container.test.js +0 -37
- package/dist/esm/components/Container/Container.test.js.map +0 -1
- package/dist/esm/components/DataTable/DataTable.stories.js +0 -174
- package/dist/esm/components/DataTable/DataTable.stories.js.map +0 -1
- package/dist/esm/components/DataTable/DataTable.test.js +0 -119
- package/dist/esm/components/DataTable/DataTable.test.js.map +0 -1
- package/dist/esm/components/DatePicker/DatePicker.stories.js +0 -25
- package/dist/esm/components/DatePicker/DatePicker.stories.js.map +0 -1
- package/dist/esm/components/Divider/Divider.stories.js +0 -12
- package/dist/esm/components/Divider/Divider.stories.js.map +0 -1
- package/dist/esm/components/DropdownMenu/DropdownMenu.stories.js +0 -58
- package/dist/esm/components/DropdownMenu/DropdownMenu.stories.js.map +0 -1
- package/dist/esm/components/DropdownMenu/DropdownMenu.test.js +0 -95
- package/dist/esm/components/DropdownMenu/DropdownMenu.test.js.map +0 -1
- package/dist/esm/components/ErrorMessage/ErrorMessage.stories.js +0 -21
- package/dist/esm/components/ErrorMessage/ErrorMessage.stories.js.map +0 -1
- package/dist/esm/components/ErrorMessage/ErrorMessage.test.js +0 -30
- package/dist/esm/components/ErrorMessage/ErrorMessage.test.js.map +0 -1
- package/dist/esm/components/Fieldset/Fieldset.stories.js +0 -22
- package/dist/esm/components/Fieldset/Fieldset.stories.js.map +0 -1
- package/dist/esm/components/Fieldset/Fieldset.test.js +0 -10
- package/dist/esm/components/Fieldset/Fieldset.test.js.map +0 -1
- package/dist/esm/components/Flex/Flex.stories.js +0 -148
- package/dist/esm/components/Flex/Flex.stories.js.map +0 -1
- package/dist/esm/components/Flex/Flex.test.js +0 -31
- package/dist/esm/components/Flex/Flex.test.js.map +0 -1
- package/dist/esm/components/Grid/Grid.stories.js +0 -227
- package/dist/esm/components/Grid/Grid.stories.js.map +0 -1
- package/dist/esm/components/Grid/Grid.test.js +0 -95
- package/dist/esm/components/Grid/Grid.test.js.map +0 -1
- package/dist/esm/components/Icon/Icon.stories.js +0 -43
- package/dist/esm/components/Icon/Icon.stories.js.map +0 -1
- package/dist/esm/components/Icon/Icon.test.js +0 -52
- package/dist/esm/components/Icon/Icon.test.js.map +0 -1
- package/dist/esm/components/Image/Image.stories.js +0 -17
- package/dist/esm/components/Image/Image.stories.js.map +0 -1
- package/dist/esm/components/Image/Image.test.js +0 -37
- package/dist/esm/components/Image/Image.test.js.map +0 -1
- package/dist/esm/components/Label/Label.stories.js +0 -15
- package/dist/esm/components/Label/Label.stories.js.map +0 -1
- package/dist/esm/components/Label/Label.test.js +0 -35
- package/dist/esm/components/Label/Label.test.js.map +0 -1
- package/dist/esm/components/Link/Link.stories.js +0 -41
- package/dist/esm/components/Link/Link.stories.js.map +0 -1
- package/dist/esm/components/Link/Link.test.js +0 -65
- package/dist/esm/components/Link/Link.test.js.map +0 -1
- package/dist/esm/components/LinkButton/LinkButton.stories.js +0 -42
- package/dist/esm/components/LinkButton/LinkButton.stories.js.map +0 -1
- package/dist/esm/components/LinkButton/LinkButton.test.js +0 -62
- package/dist/esm/components/LinkButton/LinkButton.test.js.map +0 -1
- package/dist/esm/components/List/List.stories.js +0 -77
- package/dist/esm/components/List/List.stories.js.map +0 -1
- package/dist/esm/components/List/List.test.js +0 -93
- package/dist/esm/components/List/List.test.js.map +0 -1
- package/dist/esm/components/LoadingIndicator/LoadingIndicator.stories.js +0 -50
- package/dist/esm/components/LoadingIndicator/LoadingIndicator.stories.js.map +0 -1
- package/dist/esm/components/LoadingIndicator/LoadingIndicator.test.js +0 -27
- package/dist/esm/components/LoadingIndicator/LoadingIndicator.test.js.map +0 -1
- package/dist/esm/components/MaskedField/MaskedField.stories.js +0 -22
- package/dist/esm/components/MaskedField/MaskedField.stories.js.map +0 -1
- package/dist/esm/components/MaskedField/MaskedField.test.js +0 -64
- package/dist/esm/components/MaskedField/MaskedField.test.js.map +0 -1
- package/dist/esm/components/Modal/Modal.stories.js +0 -79
- package/dist/esm/components/Modal/Modal.stories.js.map +0 -1
- package/dist/esm/components/Modal/Modal.test.js +0 -135
- package/dist/esm/components/Modal/Modal.test.js.map +0 -1
- package/dist/esm/components/NumberField/NumberField.stories.js +0 -103
- package/dist/esm/components/NumberField/NumberField.stories.js.map +0 -1
- package/dist/esm/components/NumberField/NumberField.test.js +0 -81
- package/dist/esm/components/NumberField/NumberField.test.js.map +0 -1
- package/dist/esm/components/PasswordField/PasswordField.stories.js +0 -31
- package/dist/esm/components/PasswordField/PasswordField.stories.js.map +0 -1
- package/dist/esm/components/PasswordField/PasswordField.test.js +0 -29
- package/dist/esm/components/PasswordField/PasswordField.test.js.map +0 -1
- package/dist/esm/components/Progress/Progress.stories.js +0 -89
- package/dist/esm/components/Progress/Progress.stories.js.map +0 -1
- package/dist/esm/components/Progress/Progress.test.js +0 -32
- package/dist/esm/components/Progress/Progress.test.js.map +0 -1
- package/dist/esm/components/Radio/Radio.stories.js +0 -118
- package/dist/esm/components/Radio/Radio.stories.js.map +0 -1
- package/dist/esm/components/Radio/Radio.test.js +0 -139
- package/dist/esm/components/Radio/Radio.test.js.map +0 -1
- package/dist/esm/components/Radio/RadioButton.stories.js +0 -88
- package/dist/esm/components/Radio/RadioButton.stories.js.map +0 -1
- package/dist/esm/components/Radio/RadioButton.test.js +0 -118
- package/dist/esm/components/Radio/RadioButton.test.js.map +0 -1
- package/dist/esm/components/SVG/SVG.stories.js +0 -19
- package/dist/esm/components/SVG/SVG.stories.js.map +0 -1
- package/dist/esm/components/SVG/SVG.test.js +0 -26
- package/dist/esm/components/SVG/SVG.test.js.map +0 -1
- package/dist/esm/components/Segment/Segment.stories.js +0 -112
- package/dist/esm/components/Segment/Segment.stories.js.map +0 -1
- package/dist/esm/components/Select/Select.stories.js +0 -79
- package/dist/esm/components/Select/Select.stories.js.map +0 -1
- package/dist/esm/components/Select/Select.test.js +0 -94
- package/dist/esm/components/Select/Select.test.js.map +0 -1
- package/dist/esm/components/Slider/Slider.stories.js +0 -63
- package/dist/esm/components/Slider/Slider.stories.js.map +0 -1
- package/dist/esm/components/Slider/Slider.test.js +0 -58
- package/dist/esm/components/Slider/Slider.test.js.map +0 -1
- package/dist/esm/components/Table/Table.stories.js +0 -15
- package/dist/esm/components/Table/Table.stories.js.map +0 -1
- package/dist/esm/components/Table/Table.test.js +0 -73
- package/dist/esm/components/Table/Table.test.js.map +0 -1
- package/dist/esm/components/Text/Text.stories.js +0 -31
- package/dist/esm/components/Text/Text.stories.js.map +0 -1
- package/dist/esm/components/Text/Text.test.js +0 -31
- package/dist/esm/components/Text/Text.test.js.map +0 -1
- package/dist/esm/components/TextArea/TextArea.stories.js +0 -80
- package/dist/esm/components/TextArea/TextArea.stories.js.map +0 -1
- package/dist/esm/components/TextArea/TextArea.test.js +0 -84
- package/dist/esm/components/TextArea/TextArea.test.js.map +0 -1
- package/dist/esm/components/TextAreaInput/TextAreaInput.test.js +0 -42
- package/dist/esm/components/TextAreaInput/TextAreaInput.test.js.map +0 -1
- package/dist/esm/components/TextField/TextField.stories.js +0 -103
- package/dist/esm/components/TextField/TextField.stories.js.map +0 -1
- package/dist/esm/components/TextField/TextField.test.js +0 -123
- package/dist/esm/components/TextField/TextField.test.js.map +0 -1
- package/dist/esm/components/Title/Title.stories.js +0 -16
- package/dist/esm/components/Title/Title.stories.js.map +0 -1
- package/dist/esm/components/Title/Title.test.js +0 -20
- package/dist/esm/components/Title/Title.test.js.map +0 -1
- package/dist/esm/components/VisuallyHidden/VisuallyHidden.stories.js +0 -12
- package/dist/esm/components/VisuallyHidden/VisuallyHidden.stories.js.map +0 -1
- package/dist/esm/contexts/ThemeContext/ThemeContext.test.js +0 -10
- package/dist/esm/contexts/ThemeContext/ThemeContext.test.js.map +0 -1
- package/dist/esm/hooks/useBreakpoint/useBreakpoint.stories.js +0 -40
- package/dist/esm/hooks/useBreakpoint/useBreakpoint.stories.js.map +0 -1
- package/dist/esm/hooks/useBreakpoint/useBreakpoint.test.js +0 -242
- package/dist/esm/hooks/useBreakpoint/useBreakpoint.test.js.map +0 -1
- package/dist/esm/hooks/useButton/useButton.test.js +0 -141
- package/dist/esm/hooks/useButton/useButton.test.js.map +0 -1
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from "react";
|
|
3
|
-
import { Button } from "../Button";
|
|
4
|
-
import { Modal } from ".";
|
|
5
|
-
import { excludeControls } from "../../utils/excludeControls";
|
|
6
|
-
const Demo = (props) => {
|
|
7
|
-
const [open, setOpen] = useState(false);
|
|
8
|
-
return (_jsxs(_Fragment, { children: [_jsx(Button, Object.assign({ onClick: () => setOpen(true) }, { children: "Show Modal" })), _jsxs(Modal, Object.assign({}, props, { isOpen: open, onClose: () => setOpen(false) }, { children: [_jsx(Modal.Header, { children: "The Latin Modal" }), _jsx(Modal.Content, { children: "Aliquam fringilla quam vel purus rhoncus interdum in quis sapien. Sed at eros et lectus mollis posuere. Morbi augue augue, venenatis vel consectetur sed, vulputate et lorem. Integer venenatis nibh molestie commodo lobortis. Phasellus sit amet dignissim nisi. Vivamus nisi augue, scelerisque commodo libero vitae, vulputate interdum ex. Integer non risus sollicitudin, cursus ipsum vitae, rhoncus nulla." })] }))] }));
|
|
9
|
-
};
|
|
10
|
-
const FullScreenDemo = (props) => {
|
|
11
|
-
const [open, setOpen] = useState(false);
|
|
12
|
-
return (_jsxs(_Fragment, { children: [_jsx(Button, Object.assign({ onClick: () => setOpen(true), variant: "secondary" }, { children: "Show Fullscreen Modal \uD83D\uDE80" })), _jsxs(Modal, Object.assign({}, props, { size: "fullscreen", isOpen: open, onClose: () => setOpen(false), preventCloseOnEsc: true }, { children: [_jsx(Modal.Header, { children: "The Full Screen Modal" }), _jsx(Modal.Content, { children: "Aliquam fringilla quam vel purus rhoncus interdum in quis sapien. Sed at eros et lectus mollis posuere. Morbi augue augue, venenatis vel consectetur sed, vulputate et lorem. Integer venenatis nibh molestie commodo lobortis. Phasellus sit amet dignissim nisi. Vivamus nisi augue, scelerisque commodo libero vitae, vulputate interdum ex. Integer non risus sollicitudin, cursus ipsum vitae, rhoncus nulla." })] }))] }));
|
|
13
|
-
};
|
|
14
|
-
const WithCustomSizeDemo = (props) => {
|
|
15
|
-
const [open, setOpen] = useState(false);
|
|
16
|
-
return (_jsxs(_Fragment, { children: [_jsx(Button, Object.assign({ onClick: () => setOpen(true), variant: "secondary" }, { children: "Show Custom Size Modal \uD83D\uDD38" })), _jsxs(Modal, Object.assign({}, props, { size: "sm", isOpen: open, onClose: () => setOpen(false), preventCloseOnEsc: true }, { children: [_jsx(Modal.Header, { children: "The Custom Size Modal" }), _jsx(Modal.Content, { children: "Aliquam fringilla quam vel purus rhoncus interdum in quis sapien. Sed at eros et lectus mollis posuere. Morbi augue augue, venenatis vel consectetur sed, vulputate et lorem. Integer venenatis nibh molestie commodo lobortis. Phasellus sit amet dignissim nisi. Vivamus nisi augue, scelerisque commodo libero vitae, vulputate interdum ex. Integer non risus sollicitudin, cursus ipsum vitae, rhoncus nulla." })] }))] }));
|
|
17
|
-
};
|
|
18
|
-
const WithAnimationDemo = ({ animation, }) => {
|
|
19
|
-
const [open, setOpen] = useState(false);
|
|
20
|
-
return (_jsxs(_Fragment, { children: [_jsx(Button, Object.assign({ onClick: () => setOpen(true) }, { children: "Show Modal With Animation \uD83E\uDDD9\u200D\u2642\uFE0F" })), _jsxs(Modal, Object.assign({ isOpen: open, onClose: () => setOpen(false), animation: animation }, { children: [_jsx(Modal.Header, { children: "The Latin Modal" }), _jsx(Modal.Content, { children: "Aliquam fringilla quam vel purus rhoncus interdum in quis sapien. Sed at eros et lectus mollis posuere. Morbi augue augue, venenatis vel consectetur sed, vulputate et lorem. Integer venenatis nibh molestie commodo lobortis. Phasellus sit amet dignissim nisi. Vivamus nisi augue, scelerisque commodo libero vitae, vulputate interdum ex. Integer non risus sollicitudin, cursus ipsum vitae, rhoncus nulla." })] }))] }));
|
|
21
|
-
};
|
|
22
|
-
export default {
|
|
23
|
-
title: "Components/Modal",
|
|
24
|
-
component: Modal,
|
|
25
|
-
argTypes: Object.assign({ animation: {
|
|
26
|
-
options: ["slideUp", "fade", "neither"],
|
|
27
|
-
control: { type: "radio" },
|
|
28
|
-
mapping: {
|
|
29
|
-
slideUp: "slideUp",
|
|
30
|
-
fade: "fade",
|
|
31
|
-
neither: undefined,
|
|
32
|
-
},
|
|
33
|
-
}, size: {
|
|
34
|
-
control: { type: "radio" },
|
|
35
|
-
options: ["md", "fullscreen"],
|
|
36
|
-
} }, excludeControls("className", "onClose", "appElement", "parentSelector", "isOpen")),
|
|
37
|
-
};
|
|
38
|
-
export const Normal = {
|
|
39
|
-
render: (args) => _jsx(Demo, Object.assign({}, args)),
|
|
40
|
-
args: {
|
|
41
|
-
isOpen: false,
|
|
42
|
-
shouldFocusAfterRender: true,
|
|
43
|
-
preventCloseOnEsc: false,
|
|
44
|
-
closeLabel: "Close",
|
|
45
|
-
size: "md",
|
|
46
|
-
},
|
|
47
|
-
};
|
|
48
|
-
export const FullScreen = {
|
|
49
|
-
render: (args) => _jsx(FullScreenDemo, Object.assign({}, args)),
|
|
50
|
-
args: {
|
|
51
|
-
isOpen: false,
|
|
52
|
-
shouldFocusAfterRender: true,
|
|
53
|
-
preventCloseOnEsc: false,
|
|
54
|
-
closeLabel: "Close",
|
|
55
|
-
size: "fullscreen",
|
|
56
|
-
},
|
|
57
|
-
};
|
|
58
|
-
export const WithCustomSize = {
|
|
59
|
-
render: (args) => _jsx(WithCustomSizeDemo, Object.assign({}, args)),
|
|
60
|
-
args: {
|
|
61
|
-
isOpen: false,
|
|
62
|
-
shouldFocusAfterRender: true,
|
|
63
|
-
preventCloseOnEsc: false,
|
|
64
|
-
closeLabel: "Close",
|
|
65
|
-
size: "sm",
|
|
66
|
-
},
|
|
67
|
-
};
|
|
68
|
-
export const WithAnimation = {
|
|
69
|
-
render: (args) => _jsx(WithAnimationDemo, Object.assign({}, args)),
|
|
70
|
-
args: {
|
|
71
|
-
isOpen: false,
|
|
72
|
-
animation: "slideUp",
|
|
73
|
-
shouldFocusAfterRender: true,
|
|
74
|
-
preventCloseOnEsc: false,
|
|
75
|
-
closeLabel: "Close",
|
|
76
|
-
size: "md",
|
|
77
|
-
},
|
|
78
|
-
};
|
|
79
|
-
//# sourceMappingURL=Modal.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.stories.js","sourceRoot":"","sources":["../../../../src/components/Modal/Modal.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { fireEvent, render, screen } from "@testing-library/react";
|
|
3
|
-
import userEvent from "@testing-library/user-event";
|
|
4
|
-
import { Modal } from ".";
|
|
5
|
-
const MODAL_CLASS_NAME = "mobius/Modal";
|
|
6
|
-
const OVERLAY_CLASS_NAME = "mobius/ModalOverlay";
|
|
7
|
-
const BODY_CLASS_NAME = "mobius/Modal--is-open";
|
|
8
|
-
const MODAL_CLOSE_CLASS_NAME = "mobius/ModalClose";
|
|
9
|
-
const mockMatchMedia = (matches) => {
|
|
10
|
-
Object.defineProperty(window, "matchMedia", {
|
|
11
|
-
writable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
value: jest.fn().mockImplementation(query => ({
|
|
14
|
-
matches,
|
|
15
|
-
media: query,
|
|
16
|
-
onchange: null,
|
|
17
|
-
addListener: jest.fn(),
|
|
18
|
-
removeListener: jest.fn(),
|
|
19
|
-
addEventListener: jest.fn(),
|
|
20
|
-
removeEventListener: jest.fn(),
|
|
21
|
-
dispatchEvent: jest.fn(),
|
|
22
|
-
})),
|
|
23
|
-
});
|
|
24
|
-
};
|
|
25
|
-
describe("Modal", () => {
|
|
26
|
-
beforeEach(() => {
|
|
27
|
-
mockMatchMedia(true);
|
|
28
|
-
});
|
|
29
|
-
it("should render without errors", () => {
|
|
30
|
-
const { container } = render(_jsx(Modal, { isOpen: true, onClose: () => { } }));
|
|
31
|
-
expect(container).toBeTruthy();
|
|
32
|
-
});
|
|
33
|
-
it("should render with default class names", () => {
|
|
34
|
-
render(_jsx(Modal, Object.assign({ isOpen: true, onClose: () => { } }, { children: _jsx(Modal.Header, {}) })));
|
|
35
|
-
const dialog = screen.getByRole("dialog");
|
|
36
|
-
const closeButton = screen.getByLabelText("Close");
|
|
37
|
-
expect(dialog).toHaveClass(MODAL_CLASS_NAME);
|
|
38
|
-
expect(dialog.parentElement).toHaveClass(OVERLAY_CLASS_NAME);
|
|
39
|
-
expect(document.body).toHaveClass(BODY_CLASS_NAME);
|
|
40
|
-
expect(closeButton).toHaveClass(MODAL_CLOSE_CLASS_NAME);
|
|
41
|
-
});
|
|
42
|
-
it("should render with custom class name", () => {
|
|
43
|
-
render(_jsx(Modal, Object.assign({ className: "my-test-modal", isOpen: true, onClose: () => { } }, { children: _jsx(Modal.Header, {}) })));
|
|
44
|
-
const dialog = screen.getByRole("dialog");
|
|
45
|
-
const closeButton = screen.getByLabelText("Close");
|
|
46
|
-
expect(dialog).toHaveClass(MODAL_CLASS_NAME);
|
|
47
|
-
expect(dialog).toHaveClass("my-test-modal");
|
|
48
|
-
expect(dialog.parentElement).toHaveClass(OVERLAY_CLASS_NAME);
|
|
49
|
-
expect(document.body).toHaveClass(BODY_CLASS_NAME);
|
|
50
|
-
expect(closeButton).toHaveClass(MODAL_CLOSE_CLASS_NAME);
|
|
51
|
-
});
|
|
52
|
-
describe("given the size prop is set", () => {
|
|
53
|
-
it.each(["fullscreen", "xs", "sm", "md", "lg", "xl", "xxl"])("to %s, it should render with --is-%s class name", size => {
|
|
54
|
-
render(_jsx(Modal, { isOpen: true, onClose: () => { }, size: size }));
|
|
55
|
-
const dialog = screen.getByRole("dialog");
|
|
56
|
-
expect(dialog).toHaveClass(`--is-${size}`);
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
describe("given the animation prop is set to slideUp", () => {
|
|
60
|
-
it("should render with appropriate class name", () => {
|
|
61
|
-
render(_jsx(Modal, { isOpen: true, onClose: () => { }, animation: "slideUp" }));
|
|
62
|
-
const dialog = screen.getByRole("dialog");
|
|
63
|
-
expect(dialog).toHaveClass("--slide-up");
|
|
64
|
-
expect(dialog.parentElement).toHaveClass("--fade");
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
describe("given the animation prop is set to fade", () => {
|
|
68
|
-
it("should render with appropriate class name", () => {
|
|
69
|
-
render(_jsx(Modal, { isOpen: true, onClose: () => { }, animation: "fade" }));
|
|
70
|
-
const dialog = screen.getByRole("dialog");
|
|
71
|
-
expect(dialog).toHaveClass("--fade");
|
|
72
|
-
expect(dialog.parentElement).toHaveClass("--fade");
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
describe("given the user has reduced motion preference enabled", () => {
|
|
76
|
-
beforeEach(() => {
|
|
77
|
-
mockMatchMedia(false);
|
|
78
|
-
});
|
|
79
|
-
afterEach(() => {
|
|
80
|
-
jest.resetAllMocks();
|
|
81
|
-
});
|
|
82
|
-
it("renders with appropriate class name", () => {
|
|
83
|
-
render(_jsx(Modal, { isOpen: true, onClose: () => { } }));
|
|
84
|
-
const dialog = screen.getByRole("dialog");
|
|
85
|
-
expect(dialog).toHaveClass("--has-reduced-motion");
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
describe("pressing ESC key", () => {
|
|
89
|
-
it("should close the modal", async () => {
|
|
90
|
-
const content = "Sample content";
|
|
91
|
-
let modalOpen = true;
|
|
92
|
-
const onClose = () => {
|
|
93
|
-
modalOpen = false;
|
|
94
|
-
};
|
|
95
|
-
render(_jsx(Modal, Object.assign({ isOpen: modalOpen, onClose: onClose }, { children: content })));
|
|
96
|
-
const modalContent = screen.getByText(content);
|
|
97
|
-
expect(modalContent).toBeInTheDocument();
|
|
98
|
-
await userEvent.keyboard("[Escape]");
|
|
99
|
-
expect(modalOpen).toBe(false);
|
|
100
|
-
});
|
|
101
|
-
});
|
|
102
|
-
describe("pressing close button", () => {
|
|
103
|
-
it("should close the modal", async () => {
|
|
104
|
-
const content = "Sample content";
|
|
105
|
-
let modalOpen = true;
|
|
106
|
-
const onClose = () => {
|
|
107
|
-
modalOpen = false;
|
|
108
|
-
};
|
|
109
|
-
render(_jsxs(Modal, Object.assign({ isOpen: modalOpen, onClose: onClose }, { children: [_jsx(Modal.Header, {}), content] })));
|
|
110
|
-
const modalContent = screen.getByText(content);
|
|
111
|
-
expect(modalContent).toBeInTheDocument();
|
|
112
|
-
const closeButton = screen.getByLabelText("Close");
|
|
113
|
-
await fireEvent.click(closeButton);
|
|
114
|
-
expect(modalOpen).toBe(false);
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
describe("closeLabel prop", () => {
|
|
118
|
-
describe("given the label is defined", () => {
|
|
119
|
-
it("should render the label", () => {
|
|
120
|
-
const closeLabel = "Leave";
|
|
121
|
-
render(_jsxs(Modal, Object.assign({ isOpen: true, onClose: () => { }, closeLabel: closeLabel }, { children: [_jsx(Modal.Header, {}), "Sample content"] })));
|
|
122
|
-
const closeButton = screen.getByText(closeLabel);
|
|
123
|
-
expect(closeButton).toBeInTheDocument();
|
|
124
|
-
});
|
|
125
|
-
});
|
|
126
|
-
describe("given the label is not defined", () => {
|
|
127
|
-
it("should render the default close button", () => {
|
|
128
|
-
render(_jsx(Modal, Object.assign({ isOpen: true, onClose: () => { } }, { children: _jsx(Modal.Header, {}) })));
|
|
129
|
-
const closeButton = screen.getByLabelText("Close");
|
|
130
|
-
expect(closeButton).toBeInTheDocument();
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
|
-
//# sourceMappingURL=Modal.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.test.js","sourceRoot":"","sources":["../../../../src/components/Modal/Modal.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { NumberField } from "./NumberField";
|
|
3
|
-
import { excludeControls } from "../../utils/excludeControls";
|
|
4
|
-
export default {
|
|
5
|
-
title: "Forms/NumberField",
|
|
6
|
-
component: NumberField,
|
|
7
|
-
argTypes: Object.assign({ validationState: {
|
|
8
|
-
options: ["valid", "invalid", "neither"],
|
|
9
|
-
control: { type: "radio" },
|
|
10
|
-
mapping: {
|
|
11
|
-
valid: "valid",
|
|
12
|
-
invalid: "invalid",
|
|
13
|
-
neither: "",
|
|
14
|
-
},
|
|
15
|
-
}, minValue: {
|
|
16
|
-
control: {
|
|
17
|
-
control: { type: "range" },
|
|
18
|
-
min: 0,
|
|
19
|
-
max: 10,
|
|
20
|
-
step: 1,
|
|
21
|
-
},
|
|
22
|
-
}, maxValue: {
|
|
23
|
-
control: {
|
|
24
|
-
control: { type: "range" },
|
|
25
|
-
min: 0,
|
|
26
|
-
max: 10,
|
|
27
|
-
step: 1,
|
|
28
|
-
},
|
|
29
|
-
} }, excludeControls("className", "value", "aria-describedby")),
|
|
30
|
-
args: {
|
|
31
|
-
minValue: 0,
|
|
32
|
-
maxValue: 100,
|
|
33
|
-
},
|
|
34
|
-
};
|
|
35
|
-
export const Normal = {
|
|
36
|
-
render: (args) => _jsx(NumberField, Object.assign({}, args)),
|
|
37
|
-
args: {
|
|
38
|
-
label: "Number field",
|
|
39
|
-
defaultValue: 0,
|
|
40
|
-
errorMessage: "",
|
|
41
|
-
step: 1,
|
|
42
|
-
isRequired: false,
|
|
43
|
-
},
|
|
44
|
-
};
|
|
45
|
-
export const Formatted = {
|
|
46
|
-
render: (args) => _jsx(NumberField, Object.assign({}, args)),
|
|
47
|
-
args: {
|
|
48
|
-
label: "Number field",
|
|
49
|
-
defaultValue: 0,
|
|
50
|
-
formatOptions: {
|
|
51
|
-
style: "percent",
|
|
52
|
-
},
|
|
53
|
-
errorMessage: "",
|
|
54
|
-
step: 1,
|
|
55
|
-
isRequired: false,
|
|
56
|
-
},
|
|
57
|
-
};
|
|
58
|
-
export const LimitedRange = {
|
|
59
|
-
render: (args) => _jsx(NumberField, Object.assign({}, args)),
|
|
60
|
-
args: {
|
|
61
|
-
label: "Number field",
|
|
62
|
-
minValue: -10,
|
|
63
|
-
maxValue: 10,
|
|
64
|
-
defaultValue: 0,
|
|
65
|
-
errorMessage: "",
|
|
66
|
-
step: 1,
|
|
67
|
-
isRequired: false,
|
|
68
|
-
},
|
|
69
|
-
};
|
|
70
|
-
export const Valid = {
|
|
71
|
-
render: (args) => _jsx(NumberField, Object.assign({}, args)),
|
|
72
|
-
args: {
|
|
73
|
-
label: "Number field",
|
|
74
|
-
validationState: "valid",
|
|
75
|
-
defaultValue: 0,
|
|
76
|
-
errorMessage: "",
|
|
77
|
-
step: 1,
|
|
78
|
-
isRequired: false,
|
|
79
|
-
},
|
|
80
|
-
};
|
|
81
|
-
export const Invalid = {
|
|
82
|
-
render: (args) => _jsx(NumberField, Object.assign({}, args)),
|
|
83
|
-
args: {
|
|
84
|
-
label: "Number field",
|
|
85
|
-
validationState: "invalid",
|
|
86
|
-
errorMessage: "Error message",
|
|
87
|
-
defaultValue: 0,
|
|
88
|
-
step: 1,
|
|
89
|
-
isRequired: false,
|
|
90
|
-
},
|
|
91
|
-
};
|
|
92
|
-
export const Disabled = {
|
|
93
|
-
render: (args) => _jsx(NumberField, Object.assign({}, args)),
|
|
94
|
-
args: {
|
|
95
|
-
label: "Number field",
|
|
96
|
-
isDisabled: true,
|
|
97
|
-
defaultValue: 0,
|
|
98
|
-
errorMessage: "",
|
|
99
|
-
step: 1,
|
|
100
|
-
isRequired: false,
|
|
101
|
-
},
|
|
102
|
-
};
|
|
103
|
-
//# sourceMappingURL=NumberField.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NumberField.stories.js","sourceRoot":"","sources":["../../../../src/components/NumberField/NumberField.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { render, screen } from "@testing-library/react";
|
|
3
|
-
import { SSRProvider } from "@react-aria/ssr";
|
|
4
|
-
import userEvent from "@testing-library/user-event";
|
|
5
|
-
import { NumberField } from ".";
|
|
6
|
-
describe("NumberField", () => {
|
|
7
|
-
it("should render without errors", () => {
|
|
8
|
-
render(_jsx(NumberField, { label: "NumberField" }));
|
|
9
|
-
});
|
|
10
|
-
it("should match snapshot", () => {
|
|
11
|
-
const { asFragment } = render(_jsx(SSRProvider, { children: _jsx(NumberField, { label: "NumberField" }) }));
|
|
12
|
-
expect(asFragment()).toMatchSnapshot();
|
|
13
|
-
});
|
|
14
|
-
it("should render with label", () => {
|
|
15
|
-
const { getByText } = render(_jsx(NumberField, { label: "Sample label" }));
|
|
16
|
-
expect(getByText("Sample label")).toBeInTheDocument();
|
|
17
|
-
});
|
|
18
|
-
it("should render with error message", () => {
|
|
19
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", errorMessage: "Sample error message" }));
|
|
20
|
-
expect(getByLabelText("Number")).toHaveAccessibleDescription("Sample error message");
|
|
21
|
-
});
|
|
22
|
-
it("should render with disabled state", () => {
|
|
23
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", isDisabled: true }));
|
|
24
|
-
expect(getByLabelText("Number")).toBeDisabled();
|
|
25
|
-
});
|
|
26
|
-
it("should render with custom class name", () => {
|
|
27
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", className: "sample-class" }));
|
|
28
|
-
expect(getByLabelText("Number")).toHaveClass("sample-class");
|
|
29
|
-
});
|
|
30
|
-
it("should disable the decrement button when at minimum value", () => {
|
|
31
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", minValue: 10, value: 10 }));
|
|
32
|
-
expect(getByLabelText("Decrease Number")).toBeDisabled();
|
|
33
|
-
});
|
|
34
|
-
it("should disable the increment button when at maximum value", () => {
|
|
35
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", maxValue: 10, value: 10 }));
|
|
36
|
-
expect(getByLabelText("Increase Number")).toBeDisabled();
|
|
37
|
-
});
|
|
38
|
-
describe("disabled", () => {
|
|
39
|
-
it("should disable the input when disabled", () => {
|
|
40
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10 }));
|
|
41
|
-
expect(getByLabelText("Number")).toBeDisabled();
|
|
42
|
-
});
|
|
43
|
-
it("should disable the increment button when disabled", () => {
|
|
44
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10 }));
|
|
45
|
-
expect(getByLabelText("Increase Number")).toBeDisabled();
|
|
46
|
-
});
|
|
47
|
-
it("should disable the decrement button when disabled", () => {
|
|
48
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10 }));
|
|
49
|
-
expect(getByLabelText("Decrease Number")).toBeDisabled();
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
it("should reformat on blur", async () => {
|
|
53
|
-
const { getByLabelText } = render(_jsx(NumberField, { label: "Number", formatOptions: {
|
|
54
|
-
style: "percent",
|
|
55
|
-
} }));
|
|
56
|
-
await userEvent.tab();
|
|
57
|
-
await userEvent.type(getByLabelText("Number"), "42");
|
|
58
|
-
await userEvent.tab();
|
|
59
|
-
expect(getByLabelText("Number")).toHaveValue("42%");
|
|
60
|
-
});
|
|
61
|
-
describe("isRequired", () => {
|
|
62
|
-
it("should set aria-required to true", () => {
|
|
63
|
-
render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10, isRequired: true }));
|
|
64
|
-
expect(screen.getByLabelText("Number")).toHaveAttribute("aria-required", "true");
|
|
65
|
-
});
|
|
66
|
-
it("should have className of --is-required when true", () => {
|
|
67
|
-
render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10, isRequired: true }));
|
|
68
|
-
expect(screen.getByLabelText("Number")).toHaveClass("--is-required");
|
|
69
|
-
});
|
|
70
|
-
it("should have className of --is-optional when false", () => {
|
|
71
|
-
render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10, isRequired: false }));
|
|
72
|
-
expect(screen.getByLabelText("Number")).toHaveClass("--is-optional");
|
|
73
|
-
});
|
|
74
|
-
it("should have neither --is-required nor --is-optional when unset", () => {
|
|
75
|
-
render(_jsx(NumberField, { label: "Number", isDisabled: true, value: 10 }));
|
|
76
|
-
expect(screen.getByLabelText("Number")).not.toHaveClass("--is-required");
|
|
77
|
-
expect(screen.getByLabelText("Number")).not.toHaveClass("--is-optional");
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
//# sourceMappingURL=NumberField.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NumberField.test.js","sourceRoot":"","sources":["../../../../src/components/NumberField/NumberField.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { PasswordField } from "./PasswordField";
|
|
3
|
-
import { excludeControls } from "../../utils/excludeControls";
|
|
4
|
-
export default {
|
|
5
|
-
title: "Forms/PasswordField",
|
|
6
|
-
component: PasswordField,
|
|
7
|
-
argTypes: Object.assign({ validationState: {
|
|
8
|
-
options: ["valid", "invalid", "neither"],
|
|
9
|
-
control: { type: "radio" },
|
|
10
|
-
mapping: {
|
|
11
|
-
valid: "valid",
|
|
12
|
-
invalid: "invalid",
|
|
13
|
-
neither: "",
|
|
14
|
-
},
|
|
15
|
-
}, type: {
|
|
16
|
-
control: { type: "radio" },
|
|
17
|
-
options: ["text", "password"],
|
|
18
|
-
} }, excludeControls("className")),
|
|
19
|
-
};
|
|
20
|
-
export const Normal = {
|
|
21
|
-
render: (args) => _jsx(PasswordField, Object.assign({}, args)),
|
|
22
|
-
args: {
|
|
23
|
-
label: "Password",
|
|
24
|
-
placeholder: "",
|
|
25
|
-
isDisabled: false,
|
|
26
|
-
errorMessage: "",
|
|
27
|
-
type: "password",
|
|
28
|
-
isRequired: false,
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=PasswordField.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordField.stories.js","sourceRoot":"","sources":["../../../../src/components/PasswordField/PasswordField.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAsB,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,eAAe;IACb,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,aAAa;IACxB,QAAQ,kBACN,eAAe,EAAE;YACf,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;YACxC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YAC1B,OAAO,EAAE;gBACP,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,EAAE;aACZ;SACF,EACD,IAAI,EAAE;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YAC1B,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;SAC9B,IACE,eAAe,CAAC,WAAW,CAAC,CAChC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAA+B;IAChD,MAAM,EAAE,CAAC,IAAwB,EAAE,EAAE,CAAC,KAAC,aAAa,oBAAK,IAAI,EAAI;IACjE,IAAI,EAAE;QACJ,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,EAAE;QAChB,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,KAAK;KAClB;CACF,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { render, screen } from "@testing-library/react";
|
|
3
|
-
import userEvent from "@testing-library/user-event";
|
|
4
|
-
import { PasswordField } from "./PasswordField";
|
|
5
|
-
describe("PasswordField", () => {
|
|
6
|
-
it("should render without errors", () => {
|
|
7
|
-
const { container } = render(_jsx(PasswordField, { label: "Password" }));
|
|
8
|
-
expect(container).toBeInTheDocument();
|
|
9
|
-
});
|
|
10
|
-
it("should hide the password by default", () => {
|
|
11
|
-
render(_jsx(PasswordField, { label: "Password", "data-testid": "password-field" }));
|
|
12
|
-
expect(screen.getByTestId("password-field")).toHaveAttribute("type", "password");
|
|
13
|
-
});
|
|
14
|
-
it("should show the password on request", async () => {
|
|
15
|
-
render(_jsx(PasswordField, { label: "Password", "data-testid": "password-field" }));
|
|
16
|
-
await userEvent.click(screen.getByTestId("show-hide-button"));
|
|
17
|
-
expect(screen.getByTestId("password-field")).toHaveAttribute("type", "text");
|
|
18
|
-
});
|
|
19
|
-
it("should return focus to input after pressing show/hide", async () => {
|
|
20
|
-
render(_jsx(PasswordField, { label: "Password", "data-testid": "password-field" }));
|
|
21
|
-
await userEvent.tab();
|
|
22
|
-
expect(screen.getByTestId("password-field")).toHaveFocus();
|
|
23
|
-
// Press Show button with keyboard
|
|
24
|
-
await userEvent.tab();
|
|
25
|
-
await userEvent.keyboard("{enter}");
|
|
26
|
-
expect(screen.getByTestId("password-field")).toHaveFocus();
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
//# sourceMappingURL=PasswordField.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordField.test.js","sourceRoot":"","sources":["../../../../src/components/PasswordField/PasswordField.test.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,aAAa,IAAC,KAAK,EAAC,UAAU,GAAG,CAAC,CAAC;QACjE,MAAM,CAAC,SAAS,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,KAAC,aAAa,IAAC,KAAK,EAAC,UAAU,iBAAa,gBAAgB,GAAG,CAAC,CAAC;QACxE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAC1D,MAAM,EACN,UAAU,CACX,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,CAAC,KAAC,aAAa,IAAC,KAAK,EAAC,UAAU,iBAAa,gBAAgB,GAAG,CAAC,CAAC;QACxE,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAC1D,MAAM,EACN,MAAM,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,CAAC,KAAC,aAAa,IAAC,KAAK,EAAC,UAAU,iBAAa,gBAAgB,GAAG,CAAC,CAAC;QACxE,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAE3D,kCAAkC;QAClC,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Progress } from "./Progress";
|
|
3
|
-
import { excludeControls } from "../../utils/excludeControls";
|
|
4
|
-
const customValueFormatter = (value, minValue, maxValue) => `Step ${value} of ${maxValue}`;
|
|
5
|
-
export default {
|
|
6
|
-
title: "Components/Progress",
|
|
7
|
-
component: Progress,
|
|
8
|
-
argTypes: Object.assign({ value: {
|
|
9
|
-
control: {
|
|
10
|
-
control: { type: "range" },
|
|
11
|
-
min: 0,
|
|
12
|
-
max: 10,
|
|
13
|
-
step: 1,
|
|
14
|
-
},
|
|
15
|
-
}, minValue: {
|
|
16
|
-
control: {
|
|
17
|
-
control: { type: "range" },
|
|
18
|
-
min: 0,
|
|
19
|
-
max: 10,
|
|
20
|
-
step: 1,
|
|
21
|
-
},
|
|
22
|
-
}, maxValue: {
|
|
23
|
-
control: {
|
|
24
|
-
control: { type: "range" },
|
|
25
|
-
min: 0,
|
|
26
|
-
max: 10,
|
|
27
|
-
step: 1,
|
|
28
|
-
},
|
|
29
|
-
}, label: {
|
|
30
|
-
control: {
|
|
31
|
-
control: { type: "text" },
|
|
32
|
-
},
|
|
33
|
-
}, variant: {
|
|
34
|
-
control: { type: "radio" },
|
|
35
|
-
options: ["primary", "secondary"],
|
|
36
|
-
} }, excludeControls("className", "valueFormatter")),
|
|
37
|
-
};
|
|
38
|
-
export const Primary = {
|
|
39
|
-
render: (args) => _jsx(Progress, Object.assign({}, args)),
|
|
40
|
-
args: {
|
|
41
|
-
value: 2,
|
|
42
|
-
minValue: 0,
|
|
43
|
-
maxValue: 10,
|
|
44
|
-
label: "Progress",
|
|
45
|
-
variant: "primary",
|
|
46
|
-
showValueLabel: true,
|
|
47
|
-
},
|
|
48
|
-
};
|
|
49
|
-
export const Secondary = {
|
|
50
|
-
render: (args) => _jsx(Progress, Object.assign({}, args)),
|
|
51
|
-
args: {
|
|
52
|
-
value: 2,
|
|
53
|
-
minValue: 0,
|
|
54
|
-
maxValue: 10,
|
|
55
|
-
label: "Secondary",
|
|
56
|
-
variant: "secondary",
|
|
57
|
-
showValueLabel: true,
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
export const NoVisibleLabel = {
|
|
61
|
-
render: (args) => _jsx(Progress, Object.assign({}, args)),
|
|
62
|
-
args: {
|
|
63
|
-
value: 1,
|
|
64
|
-
minValue: 0,
|
|
65
|
-
maxValue: 4,
|
|
66
|
-
label: "",
|
|
67
|
-
variant: "primary",
|
|
68
|
-
"aria-label": "Progress",
|
|
69
|
-
showValueLabel: true,
|
|
70
|
-
},
|
|
71
|
-
parameters: {
|
|
72
|
-
controls: {
|
|
73
|
-
exclude: ["aria-label"],
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
};
|
|
77
|
-
export const CustomValueFormat = {
|
|
78
|
-
render: (args) => _jsx(Progress, Object.assign({}, args)),
|
|
79
|
-
args: {
|
|
80
|
-
value: 1,
|
|
81
|
-
minValue: 0,
|
|
82
|
-
maxValue: 4,
|
|
83
|
-
label: "Progress",
|
|
84
|
-
variant: "primary",
|
|
85
|
-
showValueLabel: true,
|
|
86
|
-
valueFormatter: customValueFormatter,
|
|
87
|
-
},
|
|
88
|
-
};
|
|
89
|
-
//# sourceMappingURL=Progress.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Progress.stories.js","sourceRoot":"","sources":["../../../../src/components/Progress/Progress.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,oBAAoB,GAAG,CAC3B,KAAa,EACb,QAAgB,EAChB,QAAgB,EAChB,EAAE,CAAC,QAAQ,KAAK,OAAO,QAAQ,EAAE,CAAC;AAEpC,eAAe;IACb,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;IACnB,QAAQ,kBACN,KAAK,EAAE;YACL,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBAC1B,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,CAAC;aACR;SACF,EACD,QAAQ,EAAE;YACR,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBAC1B,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,CAAC;aACR;SACF,EACD,QAAQ,EAAE;YACR,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBAC1B,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,CAAC;aACR;SACF,EACD,KAAK,EAAE;YACL,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;aAC1B;SACF,EACD,OAAO,EAAE;YACP,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YAC1B,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;SAClC,IACE,eAAe,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAClD;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAA0B;IAC5C,MAAM,EAAE,CAAC,IAAmB,EAAE,EAAE,CAAC,KAAC,QAAQ,oBAAK,IAAI,EAAI;IACvD,IAAI,EAAE;QACJ,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,SAAS;QAClB,cAAc,EAAE,IAAI;KACrB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAA0B;IAC9C,MAAM,EAAE,CAAC,IAAmB,EAAE,EAAE,CAAC,KAAC,QAAQ,oBAAK,IAAI,EAAI;IACvD,IAAI,EAAE;QACJ,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,WAAW;QACpB,cAAc,EAAE,IAAI;KACrB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAA0B;IACnD,MAAM,EAAE,CAAC,IAAmB,EAAE,EAAE,CAAC,KAAC,QAAQ,oBAAK,IAAI,EAAI;IACvD,IAAI,EAAE;QACJ,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,SAAS;QAClB,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,IAAI;KACrB;IACD,UAAU,EAAE;QACV,QAAQ,EAAE;YACR,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAA0B;IACtD,MAAM,EAAE,CAAC,IAAmB,EAAE,EAAE,CAAC,KAAC,QAAQ,oBAAK,IAAI,EAAI;IACvD,IAAI,EAAE;QACJ,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,SAAS;QAClB,cAAc,EAAE,IAAI;QACpB,cAAc,EAAE,oBAAoB;KACrC;CACF,CAAC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { render } from "@testing-library/react";
|
|
3
|
-
import { Progress } from ".";
|
|
4
|
-
describe("Progress", () => {
|
|
5
|
-
describe("classnames", () => {
|
|
6
|
-
let result;
|
|
7
|
-
beforeEach(() => {
|
|
8
|
-
result = render(_jsx(Progress, { label: "Progress", className: "test", minValue: 0, maxValue: 10 }));
|
|
9
|
-
});
|
|
10
|
-
const classNames = ["mobius", "mobius/Progress", "test"];
|
|
11
|
-
it.each(classNames)("should have classname %s", className => {
|
|
12
|
-
expect(result.container.firstChild).toHaveClass(className);
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
const valueFormatter = (value, minValue, maxValue) => `${value},${minValue},${maxValue}`;
|
|
16
|
-
describe("custom formatter", () => {
|
|
17
|
-
const value = 5;
|
|
18
|
-
const minValue = 0;
|
|
19
|
-
const maxValue = 10;
|
|
20
|
-
let result;
|
|
21
|
-
beforeEach(() => {
|
|
22
|
-
result = render(_jsx(Progress, { label: "Progress", minValue: minValue, maxValue: maxValue, value: value, valueFormatter: valueFormatter }));
|
|
23
|
-
});
|
|
24
|
-
it("should use custom formatter for aria-valuetext", () => {
|
|
25
|
-
expect(result.container.firstChild).toHaveAttribute("aria-valuetext", `${value},${minValue},${maxValue}`);
|
|
26
|
-
});
|
|
27
|
-
it("should use custom formatter for value text", () => {
|
|
28
|
-
expect(result.getByTestId("value-label")).toHaveTextContent(`${value},${minValue},${maxValue}`);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
//# sourceMappingURL=Progress.test.js.map
|