@simplybusiness/mobius 3.9.3 → 3.9.4
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 +8 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/components/NumberField/NumberField.mdx +17 -0
- 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,33 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { fireEvent, render, screen } from "@testing-library/react";
|
|
3
|
-
import { LinkOrButton } from "./LinkOrButton";
|
|
4
|
-
describe("LinkOrButton", () => {
|
|
5
|
-
describe("given no children are provided", () => {
|
|
6
|
-
it("renders nothing", () => {
|
|
7
|
-
const { container } = render(_jsx(LinkOrButton, {}));
|
|
8
|
-
expect(container).toBeEmptyDOMElement();
|
|
9
|
-
});
|
|
10
|
-
});
|
|
11
|
-
describe("given href is provided", () => {
|
|
12
|
-
it("renders anchor tag", () => {
|
|
13
|
-
const url = "http://www.example.com";
|
|
14
|
-
render(_jsx(LinkOrButton, Object.assign({ className: "green", href: url }, { children: "I am a link" })));
|
|
15
|
-
const link = screen.getByRole("link");
|
|
16
|
-
expect(link).toBeInTheDocument();
|
|
17
|
-
expect(link).toHaveClass("green");
|
|
18
|
-
expect(link).toHaveAttribute("href", url);
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
describe("given href is not provided", () => {
|
|
22
|
-
it("renders button", () => {
|
|
23
|
-
const clickHandler = jest.fn();
|
|
24
|
-
render(_jsx(LinkOrButton, Object.assign({ "data-id": "test", onClick: clickHandler }, { children: "I am a button" })));
|
|
25
|
-
const button = screen.getByRole("button");
|
|
26
|
-
expect(button).toBeInTheDocument();
|
|
27
|
-
expect(button).toHaveAttribute("data-id", "test");
|
|
28
|
-
fireEvent.click(button);
|
|
29
|
-
expect(clickHandler).toHaveBeenCalled();
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
//# sourceMappingURL=LinkOrButton.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LinkOrButton.test.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/Actions/LinkOrButton.test.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC9C,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,YAAY,KAAG,CAAC,CAAC;YAE/C,MAAM,CAAC,SAAS,CAAC,CAAC,mBAAmB,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAC5B,MAAM,GAAG,GAAG,wBAAwB,CAAC;YAErC,MAAM,CACJ,KAAC,YAAY,kBAAC,SAAS,EAAC,OAAO,EAAC,IAAI,EAAE,GAAG,iCAE1B,CAChB,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACxB,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;YAE/B,MAAM,CACJ,KAAC,YAAY,6BAAS,MAAM,EAAC,OAAO,EAAE,YAAY,mCAEnC,CAChB,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAE1C,MAAM,CAAC,MAAM,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAElD,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAExB,MAAM,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Footer } from ".";
|
|
3
|
-
import { ThemeContext } from "../../../contexts";
|
|
4
|
-
import { excludeControls } from "../../../utils/excludeControls";
|
|
5
|
-
export default {
|
|
6
|
-
title: "Chopin/Footer",
|
|
7
|
-
component: Footer,
|
|
8
|
-
argTypes: excludeControls("className", "address", "footerLinks", "legalLinks"),
|
|
9
|
-
};
|
|
10
|
-
const breakpoints = [
|
|
11
|
-
{
|
|
12
|
-
size: "xs",
|
|
13
|
-
value: 320,
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
size: "sm",
|
|
17
|
-
value: 540,
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
size: "md",
|
|
21
|
-
value: 720,
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
size: "lg",
|
|
25
|
-
value: 960,
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
size: "xl",
|
|
29
|
-
value: 1140,
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
size: "xxl",
|
|
33
|
-
value: 1320,
|
|
34
|
-
},
|
|
35
|
-
];
|
|
36
|
-
const setBreakpoints = () => { };
|
|
37
|
-
export const Normal = {
|
|
38
|
-
render: (args) => (_jsx("div", { children: _jsx(Footer, Object.assign({}, args)) })),
|
|
39
|
-
args: {
|
|
40
|
-
address: [["6th Floor", "99 Gresham Street", "London", "EC2V 7NG"]],
|
|
41
|
-
legalLinks: [
|
|
42
|
-
{
|
|
43
|
-
href: "https://www.simplybusiness.co.uk/terms-conditions/",
|
|
44
|
-
text: "Terms & conditions",
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
href: "https://www.simplybusiness.co.uk/privacy-policy/",
|
|
48
|
-
text: "Privacy policy",
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
href: "https://www.simplybusiness.co.uk/legal/cookies/",
|
|
52
|
-
text: "Cookie policy",
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
href: "https://www.simplybusiness.co.uk/support/accessibility/",
|
|
56
|
-
text: "Accessibility",
|
|
57
|
-
},
|
|
58
|
-
],
|
|
59
|
-
text: "© Copyright 2022 Simply Business. All Rights Reserved. Simply Business is a trading name of Xbridge Limited which is authorised and regulated by the Financial Conduct Authority (Financial Services Registration No: 313348). Xbridge Limited (No: 3967717) has its registered office at 6th Floor, 99 Gresham Street, London EC2V 7NG.",
|
|
60
|
-
withLogo: true,
|
|
61
|
-
},
|
|
62
|
-
decorators: [
|
|
63
|
-
Story => (_jsx(ThemeContext.Provider, Object.assign({ value: {
|
|
64
|
-
breakpoints,
|
|
65
|
-
setBreakpoints,
|
|
66
|
-
} }, { children: _jsx(Story, {}) }))),
|
|
67
|
-
],
|
|
68
|
-
};
|
|
69
|
-
export const ContainingTwoAddresses = {
|
|
70
|
-
render: (args) => (_jsx("div", { children: _jsx(Footer, Object.assign({}, args)) })),
|
|
71
|
-
args: {
|
|
72
|
-
address: [
|
|
73
|
-
["6th Floor", "99 Gresham Street", "London", "EC2V 7NG"],
|
|
74
|
-
["Sol House", "29 St Katherine's Street", "Northampton", "NN1 2QZ"],
|
|
75
|
-
],
|
|
76
|
-
legalLinks: [
|
|
77
|
-
{
|
|
78
|
-
href: "https://www.simplybusiness.co.uk/terms-conditions/",
|
|
79
|
-
text: "Terms & conditions",
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
href: "https://www.simplybusiness.co.uk/privacy-policy/",
|
|
83
|
-
text: "Privacy policy",
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
href: "https://www.simplybusiness.co.uk/legal/cookies/",
|
|
87
|
-
text: "Cookie policy",
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
href: "https://www.simplybusiness.co.uk/support/accessibility/",
|
|
91
|
-
text: "Accessibility",
|
|
92
|
-
},
|
|
93
|
-
],
|
|
94
|
-
text: "© Copyright 2022 Simply Business. All Rights Reserved. Simply Business is a trading name of Xbridge Limited which is authorised and regulated by the Financial Conduct Authority (Financial Services Registration No: 313348). Xbridge Limited (No: 3967717) has its registered office at 6th Floor, 99 Gresham Street, London EC2V 7NG.",
|
|
95
|
-
withLogo: true,
|
|
96
|
-
},
|
|
97
|
-
decorators: [
|
|
98
|
-
Story => (_jsx(ThemeContext.Provider, Object.assign({ value: {
|
|
99
|
-
breakpoints,
|
|
100
|
-
setBreakpoints,
|
|
101
|
-
} }, { children: _jsx(Story, {}) }))),
|
|
102
|
-
],
|
|
103
|
-
};
|
|
104
|
-
export const WithFooterLogo = {
|
|
105
|
-
render: (args) => (_jsx("div", { children: _jsx(Footer, Object.assign({}, args)) })),
|
|
106
|
-
args: {
|
|
107
|
-
address: [
|
|
108
|
-
["6th Floor", "99 Gresham Street", "London", "EC2V 7NG"],
|
|
109
|
-
["Sol House", "29 St Katherine's Street", "Northampton", "NN1 2QZ"],
|
|
110
|
-
],
|
|
111
|
-
legalLinks: [
|
|
112
|
-
{
|
|
113
|
-
href: "https://www.simplybusiness.co.uk/terms-conditions/",
|
|
114
|
-
text: "Terms & conditions",
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
href: "https://www.simplybusiness.co.uk/privacy-policy/",
|
|
118
|
-
text: "Privacy policy",
|
|
119
|
-
},
|
|
120
|
-
{
|
|
121
|
-
href: "https://www.simplybusiness.co.uk/legal/cookies/",
|
|
122
|
-
text: "Cookie policy",
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
href: "https://www.simplybusiness.co.uk/support/accessibility/",
|
|
126
|
-
text: "Accessibility",
|
|
127
|
-
},
|
|
128
|
-
],
|
|
129
|
-
text: "© Copyright 2022 Simply Business. All Rights Reserved. Simply Business is a trading name of Xbridge Limited which is authorised and regulated by the Financial Conduct Authority (Financial Services Registration No: 313348). Xbridge Limited (No: 3967717) has its registered office at 6th Floor, 99 Gresham Street, London EC2V 7NG.",
|
|
130
|
-
withLogo: true,
|
|
131
|
-
},
|
|
132
|
-
decorators: [
|
|
133
|
-
Story => (_jsx(ThemeContext.Provider, Object.assign({ value: {
|
|
134
|
-
breakpoints,
|
|
135
|
-
setBreakpoints,
|
|
136
|
-
} }, { children: _jsx(Story, {}) }))),
|
|
137
|
-
],
|
|
138
|
-
};
|
|
139
|
-
export const WithJustFooterText = {
|
|
140
|
-
render: (args) => (_jsx("div", { children: _jsx(Footer, Object.assign({}, args)) })),
|
|
141
|
-
args: {
|
|
142
|
-
text: `
|
|
143
|
-
<p>© Copyright 2022 Simply Business. All Rights Reserved.
|
|
144
|
-
Simply Business, LLC is a licensed insurance producer in all U.S.
|
|
145
|
-
States and the District of Columbia.
|
|
146
|
-
Please be advised that insurance coverage cannot be added, deleted or otherwise changed until it is confirmed in writing by Simply Business or your insurance carrier.
|
|
147
|
-
Simply Business has its registered office at Simply Business, 1 Beacon Street, 15th Floor, Boston, MA 02108, (844) 654-7272.
|
|
148
|
-
In the state of California, we operate under the name Simply Business Insurance Agency, Inc., License #0M20593.
|
|
149
|
-
In the state of New York we operate under the name Simply Business Insurance Agency.
|
|
150
|
-
In the state of Texas we operate under the name, U.S. Simply Business, Inc.
|
|
151
|
-
For more information, please refer to our
|
|
152
|
-
<a href="https://www.simplybusiness.com/privacy-policy/" target="_blank">Privacy Policy</a>
|
|
153
|
-
and
|
|
154
|
-
<a href="https://www.simplybusiness.com/terms-conditions/" target="_blank">Terms & Conditions.</a>
|
|
155
|
-
</p>
|
|
156
|
-
`,
|
|
157
|
-
withLogo: true,
|
|
158
|
-
},
|
|
159
|
-
decorators: [
|
|
160
|
-
Story => (_jsx(ThemeContext.Provider, Object.assign({ value: {
|
|
161
|
-
breakpoints,
|
|
162
|
-
setBreakpoints,
|
|
163
|
-
} }, { children: _jsx(Story, {}) }))),
|
|
164
|
-
],
|
|
165
|
-
};
|
|
166
|
-
//# sourceMappingURL=Footer.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Footer.stories.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/Footer/Footer.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { render, screen } from "@testing-library/react";
|
|
3
|
-
import { Footer } from ".";
|
|
4
|
-
const FOOTER_CLASS_NAME = "chopin/Footer";
|
|
5
|
-
const HEADING_CLASS_NAME = "chopin/FooterHeader";
|
|
6
|
-
const CONTENT_CLASS_NAME = "chopin/FooterContent";
|
|
7
|
-
const ONE_REGION_CLASS_NAME = "--one-region";
|
|
8
|
-
const MANY_REGION_CLASS_NAME = "--many-regions";
|
|
9
|
-
const FOOTER_LINK_CLASS_NAME = "chopin/FooterLegalLink";
|
|
10
|
-
const props = {
|
|
11
|
-
text: "footer test text",
|
|
12
|
-
};
|
|
13
|
-
const singleAddress = [["test_1", "test_2"]];
|
|
14
|
-
const multiAddress = [
|
|
15
|
-
["test_1", "test_2"],
|
|
16
|
-
["test_3", "test_4"],
|
|
17
|
-
];
|
|
18
|
-
const legalLinks = [{ href: "test_1", text: "test_1" }];
|
|
19
|
-
describe("Footer", () => {
|
|
20
|
-
it("should render without errors", () => {
|
|
21
|
-
const component = render(_jsx(Footer, Object.assign({}, props)));
|
|
22
|
-
expect(component).toBeTruthy();
|
|
23
|
-
});
|
|
24
|
-
describe("uses correct class names", () => {
|
|
25
|
-
it("uses Chopin class", () => {
|
|
26
|
-
render(_jsx(Footer, Object.assign({}, props, { "data-testid": "test-id" })));
|
|
27
|
-
expect(screen.getByTestId("test-id")).toHaveClass("chopin");
|
|
28
|
-
});
|
|
29
|
-
it("uses chopin/Footer class", () => {
|
|
30
|
-
render(_jsx(Footer, Object.assign({}, props, { "data-testid": "test-id" })));
|
|
31
|
-
expect(screen.getByTestId("test-id")).toHaveClass(FOOTER_CLASS_NAME);
|
|
32
|
-
});
|
|
33
|
-
it("includes custom class name", () => {
|
|
34
|
-
render(_jsx(Footer, Object.assign({}, props, { "data-testid": "test-id", className: "my-class" })));
|
|
35
|
-
expect(screen.getByTestId("test-id")).toHaveClass("my-class");
|
|
36
|
-
expect(screen.getByTestId("test-id")).toHaveClass(FOOTER_CLASS_NAME);
|
|
37
|
-
});
|
|
38
|
-
it("uses content class name", () => {
|
|
39
|
-
render(_jsx(Footer, Object.assign({}, props)));
|
|
40
|
-
expect(screen.getByTestId("FooterContent")).toHaveClass(CONTENT_CLASS_NAME);
|
|
41
|
-
});
|
|
42
|
-
it("uses heading class name", () => {
|
|
43
|
-
render(_jsx(Footer, Object.assign({}, props, { address: singleAddress, legalLinks: legalLinks })));
|
|
44
|
-
expect(screen.getByRole("heading", {
|
|
45
|
-
name: /address/i,
|
|
46
|
-
})).toHaveClass(HEADING_CLASS_NAME);
|
|
47
|
-
expect(screen.getByRole("heading", {
|
|
48
|
-
name: /legal/i,
|
|
49
|
-
})).toHaveClass(HEADING_CLASS_NAME);
|
|
50
|
-
});
|
|
51
|
-
it("uses --one-region class name with single address", () => {
|
|
52
|
-
render(_jsx(Footer, Object.assign({}, props, { address: singleAddress })));
|
|
53
|
-
expect(screen.getByTestId("FooterContent")).toHaveClass(ONE_REGION_CLASS_NAME);
|
|
54
|
-
});
|
|
55
|
-
it("uses --many-region class name with several addresses", () => {
|
|
56
|
-
render(_jsx(Footer, Object.assign({}, props, { address: multiAddress })));
|
|
57
|
-
expect(screen.getByTestId("FooterContent")).toHaveClass(MANY_REGION_CLASS_NAME);
|
|
58
|
-
});
|
|
59
|
-
it("uses footer link class name", () => {
|
|
60
|
-
render(_jsx(Footer, Object.assign({}, props, { address: singleAddress, legalLinks: legalLinks })));
|
|
61
|
-
const footerLink = screen.getByRole("link", {
|
|
62
|
-
name: /test_1/i,
|
|
63
|
-
});
|
|
64
|
-
expect(footerLink).toHaveClass(FOOTER_LINK_CLASS_NAME);
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
describe("renders correct elements based on passed props", () => {
|
|
68
|
-
it("renders link block if address and legalLinks props are provided", () => {
|
|
69
|
-
render(_jsx(Footer, Object.assign({}, props, { address: singleAddress, legalLinks: legalLinks })));
|
|
70
|
-
expect(screen.queryByRole("link", {
|
|
71
|
-
name: /test_1/i,
|
|
72
|
-
})).toBeInTheDocument();
|
|
73
|
-
});
|
|
74
|
-
it("doesn't render link block if address and legalLinks props are not provided", () => {
|
|
75
|
-
render(_jsx(Footer, Object.assign({}, props)));
|
|
76
|
-
expect(screen.queryByRole("link", {
|
|
77
|
-
name: /test_1/i,
|
|
78
|
-
})).not.toBeInTheDocument();
|
|
79
|
-
});
|
|
80
|
-
it("renders footer text", () => {
|
|
81
|
-
render(_jsx(Footer, Object.assign({}, props)));
|
|
82
|
-
expect(screen.getByText(props.text)).toBeInTheDocument();
|
|
83
|
-
});
|
|
84
|
-
it("renders footer logo if withLogo prop is true", () => {
|
|
85
|
-
render(_jsx(Footer, Object.assign({}, props, { withLogo: true })));
|
|
86
|
-
expect(screen.getByRole("img", { hidden: true })).toBeInTheDocument();
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
//# sourceMappingURL=Footer.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Footer.test.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/Footer/Footer.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Header } from ".";
|
|
3
|
-
import { excludeControls } from "../../../utils/excludeControls";
|
|
4
|
-
export default {
|
|
5
|
-
title: "Chopin/Header",
|
|
6
|
-
component: Header,
|
|
7
|
-
argTypes: excludeControls("className", "openingHours"),
|
|
8
|
-
args: {
|
|
9
|
-
openingHours: {
|
|
10
|
-
Mon: "8am-8pm",
|
|
11
|
-
Tue: "8am-8pm",
|
|
12
|
-
Wed: "8am-8pm",
|
|
13
|
-
Thu: "8am-8pm",
|
|
14
|
-
Fri: "8am-8pm",
|
|
15
|
-
"<strong>Sat</strong>": "<strong>Closed</strong>",
|
|
16
|
-
"<strong>Sun</strong>": "<strong>Closed</strong>",
|
|
17
|
-
},
|
|
18
|
-
},
|
|
19
|
-
};
|
|
20
|
-
export const Normal = {
|
|
21
|
-
render: (args) => (_jsx("div", { children: _jsx(Header, Object.assign({}, args)) })),
|
|
22
|
-
args: {
|
|
23
|
-
phone: "0333 014 6683",
|
|
24
|
-
whiteLabel: false,
|
|
25
|
-
url: "https://www.example.com/",
|
|
26
|
-
},
|
|
27
|
-
};
|
|
28
|
-
export const WhiteLabel = {
|
|
29
|
-
render: (args) => (_jsx("div", Object.assign({ style: {
|
|
30
|
-
height: 300,
|
|
31
|
-
} }, { children: _jsx(Header, Object.assign({}, args)) }))),
|
|
32
|
-
args: {
|
|
33
|
-
phone: "(855) 737-0087",
|
|
34
|
-
whiteLabel: true,
|
|
35
|
-
url: "https://www.example.com/",
|
|
36
|
-
},
|
|
37
|
-
};
|
|
38
|
-
//# sourceMappingURL=Header.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Header.stories.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/Header/Header.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAe,MAAM,GAAG,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,eAAe;IACb,KAAK,EAAE,eAAe;IACtB,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC;IACtD,IAAI,EAAE;QACJ,YAAY,EAAE;YACZ,GAAG,EAAE,SAAS;YACd,GAAG,EAAE,SAAS;YACd,GAAG,EAAE,SAAS;YACd,GAAG,EAAE,SAAS;YACd,GAAG,EAAE,SAAS;YACd,sBAAsB,EAAE,yBAAyB;YACjD,sBAAsB,EAAE,yBAAyB;SAClD;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAwB;IACzC,MAAM,EAAE,CAAC,IAAiB,EAAE,EAAE,CAAC,CAC7B,wBACE,KAAC,MAAM,oBAAK,IAAI,EAAI,GAChB,CACP;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,eAAe;QACtB,UAAU,EAAE,KAAK;QACjB,GAAG,EAAE,0BAA0B;KAChC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAwB;IAC7C,MAAM,EAAE,CAAC,IAAiB,EAAE,EAAE,CAAC,CAC7B,4BACE,KAAK,EAAE;YACL,MAAM,EAAE,GAAG;SACZ,gBAED,KAAC,MAAM,oBAAK,IAAI,EAAI,IAChB,CACP;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,IAAI;QAChB,GAAG,EAAE,0BAA0B;KAChC;CACF,CAAC"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { render, screen } from "@testing-library/react";
|
|
3
|
-
import { Header, LOGO_LINK } from ".";
|
|
4
|
-
const HEADER_CLASS_NAME = "chopin/Header";
|
|
5
|
-
const LOGO_CLASS_NAME = "chopin/HeaderLogo";
|
|
6
|
-
const CONTACT_CLASS_NAME = "chopin/HeaderContactLink";
|
|
7
|
-
const PHONE_NUMBER_CLASS_NAME = "chopin/HeaderPhoneNumber";
|
|
8
|
-
const props = {
|
|
9
|
-
phone: "0333 014 6683",
|
|
10
|
-
};
|
|
11
|
-
describe("Header", () => {
|
|
12
|
-
it("should render without errors", () => {
|
|
13
|
-
const component = render(_jsx(Header, Object.assign({}, props)));
|
|
14
|
-
expect(component).toBeTruthy();
|
|
15
|
-
});
|
|
16
|
-
describe("uses correct class names", () => {
|
|
17
|
-
it("uses Chopin class", () => {
|
|
18
|
-
render(_jsx(Header, Object.assign({}, props, { "data-testid": "test-id" })));
|
|
19
|
-
expect(screen.getByTestId("test-id")).toHaveClass("chopin");
|
|
20
|
-
});
|
|
21
|
-
it("uses chopin/Header class", () => {
|
|
22
|
-
render(_jsx(Header, Object.assign({}, props, { "data-testid": "test-id" })));
|
|
23
|
-
expect(screen.getByTestId("test-id")).toHaveClass(HEADER_CLASS_NAME);
|
|
24
|
-
});
|
|
25
|
-
it("includes custom class name", () => {
|
|
26
|
-
render(_jsx(Header, Object.assign({}, props, { "data-testid": "test-id", className: "my-class" })));
|
|
27
|
-
expect(screen.getByTestId("test-id")).toHaveClass("my-class");
|
|
28
|
-
expect(screen.getByTestId("test-id")).toHaveClass(HEADER_CLASS_NAME);
|
|
29
|
-
});
|
|
30
|
-
it("uses logo class name", () => {
|
|
31
|
-
render(_jsx(Header, Object.assign({}, props)));
|
|
32
|
-
const link = screen.getByRole("link", {
|
|
33
|
-
name: /simply business - insurance for your business/i,
|
|
34
|
-
});
|
|
35
|
-
expect(link).toHaveClass(LOGO_CLASS_NAME);
|
|
36
|
-
});
|
|
37
|
-
it("uses contact link class name", () => {
|
|
38
|
-
render(_jsx(Header, Object.assign({}, props)));
|
|
39
|
-
const link = screen.getByRole("link", {
|
|
40
|
-
name: /see our opening hours/i,
|
|
41
|
-
});
|
|
42
|
-
expect(link).toHaveClass(CONTACT_CLASS_NAME);
|
|
43
|
-
});
|
|
44
|
-
it("uses phone number class name", () => {
|
|
45
|
-
render(_jsx(Header, Object.assign({}, props)));
|
|
46
|
-
const phoneNumberEl = screen.getByText(props.phone);
|
|
47
|
-
expect(phoneNumberEl).toHaveClass(PHONE_NUMBER_CLASS_NAME);
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
describe("renders correct elements based on passed props", () => {
|
|
51
|
-
it("renders passed Phone prop", () => {
|
|
52
|
-
render(_jsx(Header, Object.assign({}, props)));
|
|
53
|
-
expect(screen.getByText(props.phone)).toBeInTheDocument();
|
|
54
|
-
});
|
|
55
|
-
it("renders Logo element as Link by default", () => {
|
|
56
|
-
render(_jsx(Header, Object.assign({}, props)));
|
|
57
|
-
const link = screen.getByRole("link", {
|
|
58
|
-
name: /simply business - insurance for your business/i,
|
|
59
|
-
});
|
|
60
|
-
expect(link).toHaveAttribute("href", LOGO_LINK);
|
|
61
|
-
});
|
|
62
|
-
it("doesn't render Logo as Link when whiteLabel prop is true", () => {
|
|
63
|
-
render(_jsx(Header, Object.assign({}, props, { whiteLabel: true })));
|
|
64
|
-
expect(screen.queryByRole("link", {
|
|
65
|
-
name: /simply business - insurance for your business/i,
|
|
66
|
-
})).not.toBeInTheDocument();
|
|
67
|
-
});
|
|
68
|
-
it("renders Opening Hours element as Link by default", () => {
|
|
69
|
-
render(_jsx(Header, Object.assign({}, props)));
|
|
70
|
-
const link = screen.getByRole("link", {
|
|
71
|
-
name: /see our opening hours/i,
|
|
72
|
-
});
|
|
73
|
-
expect(link).toHaveAttribute("href", "https://www.simplybusiness.co.uk/support/");
|
|
74
|
-
});
|
|
75
|
-
it("renders Opening Hours element as Button when whiteLabel prop is true", () => {
|
|
76
|
-
render(_jsx(Header, Object.assign({}, props, { whiteLabel: true })));
|
|
77
|
-
expect(screen.queryByRole("link", {
|
|
78
|
-
name: /see our opening hours/i,
|
|
79
|
-
})).not.toBeInTheDocument();
|
|
80
|
-
expect(screen.getByRole("button", {
|
|
81
|
-
name: /see our opening hours/i,
|
|
82
|
-
})).toBeInTheDocument();
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
//# sourceMappingURL=Header.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Header.test.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/Header/Header.test.tsx"],"names":[],"mappings":"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"}
|
package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useContext, useEffect } from "react";
|
|
3
|
-
import { ThemeProvider, ThemeContext, } from "../../../contexts";
|
|
4
|
-
import { PercentageTotalsQuestion, } from "./PercentageTotalsQuestion";
|
|
5
|
-
import { excludeControls } from "../../../utils/excludeControls";
|
|
6
|
-
const breakpoints = [
|
|
7
|
-
{ size: "xs", value: 320 },
|
|
8
|
-
{ size: "sm", value: 480 },
|
|
9
|
-
{ size: "md", value: 670 },
|
|
10
|
-
{ size: "lg", value: 960 },
|
|
11
|
-
{ size: "xl", value: 1200 },
|
|
12
|
-
{ size: "xxl", value: 1320 },
|
|
13
|
-
];
|
|
14
|
-
export default {
|
|
15
|
-
title: "Chopin/PercentageTotalsQuestion",
|
|
16
|
-
component: PercentageTotalsQuestion,
|
|
17
|
-
argTypes: excludeControls("className", "help", "onChange", "closeHelpOnOutsideClick"),
|
|
18
|
-
decorators: [
|
|
19
|
-
Story => (_jsx(ThemeProvider, { children: _jsx(Story, {}) })),
|
|
20
|
-
],
|
|
21
|
-
};
|
|
22
|
-
export const Normal = {
|
|
23
|
-
render: (args) => {
|
|
24
|
-
// eslint-disable-next-line
|
|
25
|
-
const { setBreakpoints } = useContext(ThemeContext);
|
|
26
|
-
// eslint-disable-next-line
|
|
27
|
-
useEffect(() => {
|
|
28
|
-
setBreakpoints(breakpoints);
|
|
29
|
-
}, [setBreakpoints]);
|
|
30
|
-
return _jsx(PercentageTotalsQuestion, Object.assign({}, args));
|
|
31
|
-
},
|
|
32
|
-
args: {
|
|
33
|
-
label: "What percentage of your work is on?",
|
|
34
|
-
alertText: "The total percentage of your work must be 100%",
|
|
35
|
-
items: [
|
|
36
|
-
"UK contracts",
|
|
37
|
-
"EU contracts",
|
|
38
|
-
"USA and Canada contracts",
|
|
39
|
-
"Rest of the world contracts",
|
|
40
|
-
],
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
//# sourceMappingURL=PercentageTotalsQuestion.stories.js.map
|
package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PercentageTotalsQuestion.stories.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EACL,aAAa,EACb,YAAY,GAEb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,GAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,MAAM,WAAW,GAAG;IAClB,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;IAC1B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;IAC1B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;IAC1B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;IAC1B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3B,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;CACV,CAAC;AAErB,eAAe;IACb,KAAK,EAAE,iCAAiC;IACxC,SAAS,EAAE,wBAAwB;IACnC,QAAQ,EAAE,eAAe,CACvB,WAAW,EACX,MAAM,EACN,UAAU,EACV,yBAAyB,CAC1B;IACD,UAAU,EAAE;QACV,KAAK,CAAC,EAAE,CAAC,CACP,KAAC,aAAa,cACZ,KAAC,KAAK,KAAG,GACK,CACjB;KACF;CAC8C,CAAC;AAElD,MAAM,CAAC,MAAM,MAAM,GAA0C;IAC3D,MAAM,EAAE,CAAC,IAAmC,EAAE,EAAE;QAC9C,2BAA2B;QAC3B,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QAEpD,2BAA2B;QAC3B,SAAS,CAAC,GAAG,EAAE;YACb,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9B,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;QAErB,OAAO,KAAC,wBAAwB,oBAAK,IAAI,EAAI,CAAC;IAChD,CAAC;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,qCAAqC;QAC5C,SAAS,EAAE,gDAAgD;QAC3D,KAAK,EAAE;YACL,cAAc;YACd,cAAc;YACd,0BAA0B;YAC1B,6BAA6B;SAC9B;KACF;CACF,CAAC"}
|
package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.test.js
DELETED
|
@@ -1,108 +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 { PercentageTotalsQuestion } from ".";
|
|
5
|
-
const LABEL = "How do you split your time across these items?";
|
|
6
|
-
const THREE_ITEMS = ["Item 1", "Item 2", "Item 3"];
|
|
7
|
-
const FIVE_ITEMS = ["Item 1", "Item 2", "Item 3", "Item 4", "Item 5"];
|
|
8
|
-
describe("PercentageTotalsQuestion", () => {
|
|
9
|
-
it("should render without errors", () => {
|
|
10
|
-
const label = "This is my custom label";
|
|
11
|
-
const { container } = render(_jsx(PercentageTotalsQuestion, { label: label, items: THREE_ITEMS }));
|
|
12
|
-
expect(screen.getByText(label)).toBeInTheDocument();
|
|
13
|
-
const items = container.getElementsByClassName("mobius/NumberField");
|
|
14
|
-
expect(items.length).toBe(3);
|
|
15
|
-
});
|
|
16
|
-
it("should display custom alert message", () => {
|
|
17
|
-
const alertText = "This is my alert!";
|
|
18
|
-
render(_jsx(PercentageTotalsQuestion, { label: LABEL, alertText: alertText, items: FIVE_ITEMS }));
|
|
19
|
-
expect(screen.getByText(alertText)).toBeInTheDocument();
|
|
20
|
-
});
|
|
21
|
-
it("should render a row for every item", () => {
|
|
22
|
-
const { container } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: FIVE_ITEMS }));
|
|
23
|
-
const items = container.getElementsByClassName("mobius/NumberField");
|
|
24
|
-
expect(items.length).toBe(5);
|
|
25
|
-
});
|
|
26
|
-
describe("Calculations", () => {
|
|
27
|
-
it("should correctly total the sum of typed item values", async () => {
|
|
28
|
-
const { getByLabelText } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: THREE_ITEMS }));
|
|
29
|
-
await userEvent.type(getByLabelText("Item 1"), "25");
|
|
30
|
-
expect(screen.getByText("Total: 25%")).toBeInTheDocument();
|
|
31
|
-
await userEvent.type(getByLabelText("Item 2"), "37");
|
|
32
|
-
expect(screen.getByText("Total: 62%")).toBeInTheDocument();
|
|
33
|
-
await userEvent.type(getByLabelText("Item 3"), "13");
|
|
34
|
-
expect(screen.getByText("Total: 75%")).toBeInTheDocument();
|
|
35
|
-
});
|
|
36
|
-
it("should prevent any typed input that exceeds a total of 100%", async () => {
|
|
37
|
-
const { getByLabelText } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: THREE_ITEMS }));
|
|
38
|
-
const inputs = THREE_ITEMS.map(i => screen.getByLabelText(i, { selector: "input" }));
|
|
39
|
-
await userEvent.type(getByLabelText("Item 1"), "123");
|
|
40
|
-
expect(inputs[0]).toHaveValue("100%");
|
|
41
|
-
expect(screen.getByText("Total: 100%")).toBeInTheDocument();
|
|
42
|
-
await userEvent.type(getByLabelText("Item 2"), "37");
|
|
43
|
-
expect(inputs[1]).toHaveValue("0%");
|
|
44
|
-
expect(screen.getByText("Total: 100%")).toBeInTheDocument();
|
|
45
|
-
await userEvent.type(getByLabelText("Item 3"), "13");
|
|
46
|
-
expect(inputs[2]).toHaveValue("0%");
|
|
47
|
-
expect(screen.getByText("Total: 100%")).toBeInTheDocument();
|
|
48
|
-
});
|
|
49
|
-
it("supports keyboard navigation and up/down arrows to increase/decrease", async () => {
|
|
50
|
-
const { getByLabelText } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: THREE_ITEMS }));
|
|
51
|
-
const inputs = THREE_ITEMS.map(i => screen.getByLabelText(i, { selector: "input" }));
|
|
52
|
-
await userEvent.type(getByLabelText("Item 1"), "30");
|
|
53
|
-
expect(inputs[0]).toHaveValue("30%");
|
|
54
|
-
expect(screen.getByText("Total: 30%")).toBeInTheDocument();
|
|
55
|
-
await userEvent.tab(); // Move focus to Item 2
|
|
56
|
-
await userEvent.keyboard("[ArrowUp]");
|
|
57
|
-
await userEvent.keyboard("[ArrowUp]");
|
|
58
|
-
await userEvent.keyboard("[ArrowUp]");
|
|
59
|
-
expect(inputs[1]).toHaveValue("3%");
|
|
60
|
-
expect(screen.getByText("Total: 33%")).toBeInTheDocument();
|
|
61
|
-
await userEvent.keyboard("[ArrowDown]");
|
|
62
|
-
expect(inputs[1]).toHaveValue("2%");
|
|
63
|
-
expect(screen.getByText("Total: 32%")).toBeInTheDocument();
|
|
64
|
-
});
|
|
65
|
-
it("should prevent changing any initial value above 100", async () => {
|
|
66
|
-
const { getByLabelText } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: THREE_ITEMS }));
|
|
67
|
-
const inputs = THREE_ITEMS.map(i => screen.getByLabelText(i, { selector: "input" }));
|
|
68
|
-
await userEvent.type(getByLabelText("Item 1"), "9");
|
|
69
|
-
expect(inputs[0]).toHaveValue("9%");
|
|
70
|
-
expect(screen.getByText("Total: 9%")).toBeInTheDocument();
|
|
71
|
-
await userEvent.type(getByLabelText("Item 1"), "9");
|
|
72
|
-
expect(inputs[0]).toHaveValue("99%");
|
|
73
|
-
expect(screen.getByText("Total: 99%")).toBeInTheDocument();
|
|
74
|
-
await userEvent.type(getByLabelText("Item 1"), "9");
|
|
75
|
-
expect(inputs[0]).toHaveValue("100%");
|
|
76
|
-
expect(screen.getByText("Total: 100%")).toBeInTheDocument();
|
|
77
|
-
});
|
|
78
|
-
it("should prevent changing any subsequent value above remaining percentage", async () => {
|
|
79
|
-
const { getByLabelText } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: THREE_ITEMS }));
|
|
80
|
-
const inputs = THREE_ITEMS.map(i => screen.getByLabelText(i, { selector: "input" }));
|
|
81
|
-
await userEvent.type(getByLabelText("Item 1"), "75");
|
|
82
|
-
expect(inputs[0]).toHaveValue("75%");
|
|
83
|
-
expect(screen.getByText("Total: 75%")).toBeInTheDocument();
|
|
84
|
-
await userEvent.type(getByLabelText("Item 2"), "40");
|
|
85
|
-
expect(inputs[1]).toHaveValue("25%");
|
|
86
|
-
expect(screen.getByText("Total: 100%")).toBeInTheDocument();
|
|
87
|
-
});
|
|
88
|
-
it("sets maxValue on each item based upon remaining percentage", async () => {
|
|
89
|
-
const { getByLabelText } = render(_jsx(PercentageTotalsQuestion, { label: LABEL, items: THREE_ITEMS }));
|
|
90
|
-
const inputs = THREE_ITEMS.map(i => screen.getByLabelText(i, { selector: "input" }));
|
|
91
|
-
await userEvent.type(getByLabelText("Item 1"), "98");
|
|
92
|
-
expect(inputs[0]).toHaveValue("98%");
|
|
93
|
-
expect(screen.getByText("Total: 98%")).toBeInTheDocument();
|
|
94
|
-
// Click increment button on second item until it is disabled
|
|
95
|
-
await userEvent.click(getByLabelText(`Increase ${THREE_ITEMS[1]}`));
|
|
96
|
-
expect(inputs[1]).toHaveValue("1%");
|
|
97
|
-
expect(screen.getByText("Total: 99%")).toBeInTheDocument();
|
|
98
|
-
await userEvent.click(getByLabelText(`Increase ${THREE_ITEMS[1]}`));
|
|
99
|
-
expect(inputs[1]).toHaveValue("2%");
|
|
100
|
-
expect(screen.getByText("Total: 100%")).toBeInTheDocument();
|
|
101
|
-
// All increase buttons should be disabled
|
|
102
|
-
expect(getByLabelText(`Increase ${THREE_ITEMS[0]}`)).toBeDisabled();
|
|
103
|
-
expect(getByLabelText(`Increase ${THREE_ITEMS[1]}`)).toBeDisabled();
|
|
104
|
-
expect(getByLabelText(`Increase ${THREE_ITEMS[2]}`)).toBeDisabled();
|
|
105
|
-
});
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
//# sourceMappingURL=PercentageTotalsQuestion.test.js.map
|
package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PercentageTotalsQuestion.test.js","sourceRoot":"","sources":["../../../../../src/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.test.tsx"],"names":[],"mappings":"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"}
|