@simplybusiness/mobius 4.16.0 → 5.0.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 +48 -0
- package/dist/cjs/components/Accordion/Accordion.js +8 -8
- package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.js +4 -4
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/Box/Box.js +1 -1
- package/dist/cjs/components/Box/Box.js.map +1 -1
- package/dist/cjs/components/Breadcrumbs/BreadcrumbItem.js +2 -2
- package/dist/cjs/components/Breadcrumbs/BreadcrumbItem.js.map +1 -1
- package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/dist/cjs/components/Button/Button.js +4 -2
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/Button/Loading.js +12 -6
- package/dist/cjs/components/Button/Loading.js.map +1 -1
- package/dist/cjs/components/Button/Success.js +4 -3
- package/dist/cjs/components/Button/Success.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +10 -6
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/Checkbox/CheckboxGroup.js +2 -2
- package/dist/cjs/components/Checkbox/CheckboxGroup.js.map +1 -1
- package/dist/cjs/components/Container/Container.js +1 -1
- package/dist/cjs/components/Container/Container.js.map +1 -1
- package/dist/cjs/components/Divider/Divider.js +2 -2
- package/dist/cjs/components/Divider/Divider.js.map +1 -1
- package/dist/cjs/components/Drawer/Content.js +1 -1
- package/dist/cjs/components/Drawer/Content.js.map +1 -1
- package/dist/cjs/components/Drawer/Drawer.js +1 -1
- package/dist/cjs/components/Drawer/Drawer.js.map +1 -1
- package/dist/cjs/components/Drawer/Header.js +2 -2
- package/dist/cjs/components/Drawer/Header.js.map +1 -1
- package/dist/cjs/components/DropdownMenu/DropdownMenu.js +3 -3
- package/dist/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/cjs/components/DropdownMenu/Item.js +1 -1
- package/dist/cjs/components/DropdownMenu/Item.js.map +1 -1
- package/dist/cjs/components/ErrorMessage/ErrorMessage.js +7 -4
- package/dist/cjs/components/ErrorMessage/ErrorMessage.js.map +1 -1
- package/dist/cjs/components/Fieldset/Fieldset.js +2 -2
- package/dist/cjs/components/Fieldset/Fieldset.js.map +1 -1
- package/dist/cjs/components/Flex/Flex.js +1 -1
- package/dist/cjs/components/Flex/Flex.js.map +1 -1
- package/dist/cjs/components/Grid/Grid.js +1 -1
- package/dist/cjs/components/Grid/Grid.js.map +1 -1
- package/dist/cjs/components/Grid/Item.js +1 -1
- package/dist/cjs/components/Grid/Item.js.map +1 -1
- package/dist/cjs/components/Icon/Icon.js +1 -1
- package/dist/cjs/components/Icon/Icon.js.map +1 -1
- package/dist/cjs/components/Image/Image.js +1 -1
- package/dist/cjs/components/Image/Image.js.map +1 -1
- package/dist/cjs/components/Label/Label.js +1 -1
- package/dist/cjs/components/Label/Label.js.map +1 -1
- package/dist/cjs/components/Link/Link.js +1 -1
- package/dist/cjs/components/Link/Link.js.map +1 -1
- package/dist/cjs/components/LinkButton/LinkButton.js +1 -1
- package/dist/cjs/components/LinkButton/LinkButton.js.map +1 -1
- package/dist/cjs/components/List/List.js +1 -1
- package/dist/cjs/components/List/List.js.map +1 -1
- package/dist/cjs/components/List/ListItem.js +3 -3
- package/dist/cjs/components/List/ListItem.js.map +1 -1
- package/dist/cjs/components/LoadingIndicator/LoadingIndicator.js +1 -1
- package/dist/cjs/components/LoadingIndicator/LoadingIndicator.js.map +1 -1
- package/dist/cjs/components/Logo/Logo.js +1 -1
- package/dist/cjs/components/Logo/Logo.js.map +1 -1
- package/dist/cjs/components/Modal/Content.js +1 -1
- package/dist/cjs/components/Modal/Content.js.map +1 -1
- package/dist/cjs/components/Modal/Header.js +2 -2
- package/dist/cjs/components/Modal/Header.js.map +1 -1
- package/dist/cjs/components/Modal/Modal.js +1 -1
- package/dist/cjs/components/Modal/Modal.js.map +1 -1
- package/dist/cjs/components/NumberField/NumberField.js +7 -5
- package/dist/cjs/components/NumberField/NumberField.js.map +1 -1
- package/dist/cjs/components/PasswordField/PasswordField.js +1 -1
- package/dist/cjs/components/PasswordField/PasswordField.js.map +1 -1
- package/dist/cjs/components/PasswordField/ShowHideButton.js +1 -1
- package/dist/cjs/components/PasswordField/ShowHideButton.js.map +1 -1
- package/dist/cjs/components/Popover/Popover.js +8 -8
- package/dist/cjs/components/Popover/Popover.js.map +1 -1
- package/dist/cjs/components/Progress/Progress.js +5 -5
- package/dist/cjs/components/Progress/Progress.js.map +1 -1
- package/dist/cjs/components/Radio/Radio.js +6 -6
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/Radio/RadioGroup.js +36 -32
- package/dist/cjs/components/Radio/RadioGroup.js.map +1 -1
- package/dist/cjs/components/SVG/SVG.js +1 -1
- package/dist/cjs/components/SVG/SVG.js.map +1 -1
- package/dist/cjs/components/Segment/Segment.js +2 -2
- package/dist/cjs/components/Segment/Segment.js.map +1 -1
- package/dist/cjs/components/Segment/SegmentGroup.js +5 -5
- package/dist/cjs/components/Segment/SegmentGroup.js.map +1 -1
- package/dist/cjs/components/Select/Select.js +8 -8
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/Slider/Slider.js +7 -7
- package/dist/cjs/components/Slider/Slider.js.map +1 -1
- package/dist/cjs/components/Stack/Stack.js +72 -0
- package/dist/cjs/components/Stack/Stack.js.map +1 -0
- package/dist/cjs/components/Stack/index.js +20 -0
- package/dist/cjs/components/Stack/index.js.map +1 -0
- package/dist/cjs/components/Table/Body.js +1 -1
- package/dist/cjs/components/Table/Body.js.map +1 -1
- package/dist/cjs/components/Table/Cell.js +1 -1
- package/dist/cjs/components/Table/Cell.js.map +1 -1
- package/dist/cjs/components/Table/Foot.js +1 -1
- package/dist/cjs/components/Table/Foot.js.map +1 -1
- package/dist/cjs/components/Table/Head.js +1 -1
- package/dist/cjs/components/Table/Head.js.map +1 -1
- package/dist/cjs/components/Table/HeaderCell.js +1 -1
- package/dist/cjs/components/Table/HeaderCell.js.map +1 -1
- package/dist/cjs/components/Table/Row.js +1 -1
- package/dist/cjs/components/Table/Row.js.map +1 -1
- package/dist/cjs/components/Table/Table.js +1 -1
- package/dist/cjs/components/Table/Table.js.map +1 -1
- package/dist/cjs/components/Text/Text.js +5 -2
- package/dist/cjs/components/Text/Text.js.map +1 -1
- package/dist/cjs/components/TextArea/TextArea.js +5 -5
- package/dist/cjs/components/TextArea/TextArea.js.map +1 -1
- package/dist/cjs/components/TextAreaInput/TextAreaInput.js +1 -1
- package/dist/cjs/components/TextAreaInput/TextAreaInput.js.map +1 -1
- package/dist/cjs/components/TextField/TextField.js +12 -10
- package/dist/cjs/components/TextField/TextField.js.map +1 -1
- package/dist/cjs/components/Title/Title.js +4 -4
- package/dist/cjs/components/Title/Title.js.map +1 -1
- package/dist/cjs/components/Trust/Trust.js +4 -5
- package/dist/cjs/components/Trust/Trust.js.map +1 -1
- package/dist/cjs/components/Trust/constants.js +3 -3
- package/dist/cjs/components/Trust/constants.js.map +1 -1
- package/dist/cjs/components/index.js +1 -0
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/components/Accordion/Accordion.js +8 -8
- package/dist/esm/components/Accordion/Accordion.js.map +1 -1
- package/dist/esm/components/Alert/Alert.js +4 -4
- package/dist/esm/components/Alert/Alert.js.map +1 -1
- package/dist/esm/components/Box/Box.js +1 -1
- package/dist/esm/components/Box/Box.js.map +1 -1
- package/dist/esm/components/Breadcrumbs/BreadcrumbItem.js +2 -2
- package/dist/esm/components/Breadcrumbs/BreadcrumbItem.js.map +1 -1
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/dist/esm/components/Button/Button.js +4 -2
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Button/Loading.js +12 -6
- package/dist/esm/components/Button/Loading.js.map +1 -1
- package/dist/esm/components/Button/Success.js +4 -3
- package/dist/esm/components/Button/Success.js.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.js +11 -7
- package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/Checkbox/CheckboxGroup.js +2 -2
- package/dist/esm/components/Checkbox/CheckboxGroup.js.map +1 -1
- package/dist/esm/components/Container/Container.js +1 -1
- package/dist/esm/components/Container/Container.js.map +1 -1
- package/dist/esm/components/Divider/Divider.js +2 -2
- package/dist/esm/components/Divider/Divider.js.map +1 -1
- package/dist/esm/components/Drawer/Content.js +1 -1
- package/dist/esm/components/Drawer/Content.js.map +1 -1
- package/dist/esm/components/Drawer/Drawer.js +1 -1
- package/dist/esm/components/Drawer/Drawer.js.map +1 -1
- package/dist/esm/components/Drawer/Header.js +2 -2
- package/dist/esm/components/Drawer/Header.js.map +1 -1
- package/dist/esm/components/DropdownMenu/DropdownMenu.js +3 -3
- package/dist/esm/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/esm/components/DropdownMenu/Item.js +1 -1
- package/dist/esm/components/DropdownMenu/Item.js.map +1 -1
- package/dist/esm/components/ErrorMessage/ErrorMessage.js +7 -4
- package/dist/esm/components/ErrorMessage/ErrorMessage.js.map +1 -1
- package/dist/esm/components/Fieldset/Fieldset.js +2 -2
- package/dist/esm/components/Fieldset/Fieldset.js.map +1 -1
- package/dist/esm/components/Flex/Flex.js +1 -1
- package/dist/esm/components/Flex/Flex.js.map +1 -1
- package/dist/esm/components/Grid/Grid.js +1 -1
- package/dist/esm/components/Grid/Grid.js.map +1 -1
- package/dist/esm/components/Grid/Item.js +1 -1
- package/dist/esm/components/Grid/Item.js.map +1 -1
- package/dist/esm/components/Icon/Icon.js +1 -1
- package/dist/esm/components/Icon/Icon.js.map +1 -1
- package/dist/esm/components/Image/Image.js +1 -1
- package/dist/esm/components/Image/Image.js.map +1 -1
- package/dist/esm/components/Label/Label.js +1 -1
- package/dist/esm/components/Label/Label.js.map +1 -1
- package/dist/esm/components/Link/Link.js +1 -1
- package/dist/esm/components/Link/Link.js.map +1 -1
- package/dist/esm/components/LinkButton/LinkButton.js +1 -1
- package/dist/esm/components/LinkButton/LinkButton.js.map +1 -1
- package/dist/esm/components/List/List.js +1 -1
- package/dist/esm/components/List/List.js.map +1 -1
- package/dist/esm/components/List/ListItem.js +3 -3
- package/dist/esm/components/List/ListItem.js.map +1 -1
- package/dist/esm/components/LoadingIndicator/LoadingIndicator.js +1 -1
- package/dist/esm/components/LoadingIndicator/LoadingIndicator.js.map +1 -1
- package/dist/esm/components/Logo/Logo.js +1 -1
- package/dist/esm/components/Logo/Logo.js.map +1 -1
- package/dist/esm/components/Modal/Content.js +1 -1
- package/dist/esm/components/Modal/Content.js.map +1 -1
- package/dist/esm/components/Modal/Header.js +2 -2
- package/dist/esm/components/Modal/Header.js.map +1 -1
- package/dist/esm/components/Modal/Modal.js +1 -1
- package/dist/esm/components/Modal/Modal.js.map +1 -1
- package/dist/esm/components/NumberField/NumberField.js +7 -5
- package/dist/esm/components/NumberField/NumberField.js.map +1 -1
- package/dist/esm/components/PasswordField/PasswordField.js +1 -1
- package/dist/esm/components/PasswordField/PasswordField.js.map +1 -1
- package/dist/esm/components/PasswordField/ShowHideButton.js +1 -1
- package/dist/esm/components/PasswordField/ShowHideButton.js.map +1 -1
- package/dist/esm/components/Popover/Popover.js +8 -8
- package/dist/esm/components/Popover/Popover.js.map +1 -1
- package/dist/esm/components/Progress/Progress.js +5 -5
- package/dist/esm/components/Progress/Progress.js.map +1 -1
- package/dist/esm/components/Radio/Radio.js +6 -6
- package/dist/esm/components/Radio/Radio.js.map +1 -1
- package/dist/esm/components/Radio/RadioGroup.js +36 -32
- package/dist/esm/components/Radio/RadioGroup.js.map +1 -1
- package/dist/esm/components/SVG/SVG.js +1 -1
- package/dist/esm/components/SVG/SVG.js.map +1 -1
- package/dist/esm/components/Segment/Segment.js +2 -2
- package/dist/esm/components/Segment/Segment.js.map +1 -1
- package/dist/esm/components/Segment/SegmentGroup.js +5 -5
- package/dist/esm/components/Segment/SegmentGroup.js.map +1 -1
- package/dist/esm/components/Select/Select.js +8 -8
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Slider/Slider.js +7 -7
- package/dist/esm/components/Slider/Slider.js.map +1 -1
- package/dist/esm/components/Stack/Stack.js +16 -0
- package/dist/esm/components/Stack/Stack.js.map +1 -0
- package/dist/esm/components/Stack/index.js +3 -0
- package/dist/esm/components/Stack/index.js.map +1 -0
- package/dist/esm/components/Table/Body.js +1 -1
- package/dist/esm/components/Table/Body.js.map +1 -1
- package/dist/esm/components/Table/Cell.js +1 -1
- package/dist/esm/components/Table/Cell.js.map +1 -1
- package/dist/esm/components/Table/Foot.js +1 -1
- package/dist/esm/components/Table/Foot.js.map +1 -1
- package/dist/esm/components/Table/Head.js +1 -1
- package/dist/esm/components/Table/Head.js.map +1 -1
- package/dist/esm/components/Table/HeaderCell.js +1 -1
- package/dist/esm/components/Table/HeaderCell.js.map +1 -1
- package/dist/esm/components/Table/Row.js +1 -1
- package/dist/esm/components/Table/Row.js.map +1 -1
- package/dist/esm/components/Table/Table.js +1 -1
- package/dist/esm/components/Table/Table.js.map +1 -1
- package/dist/esm/components/Text/Text.js +5 -2
- package/dist/esm/components/Text/Text.js.map +1 -1
- package/dist/esm/components/TextArea/TextArea.js +5 -5
- package/dist/esm/components/TextArea/TextArea.js.map +1 -1
- package/dist/esm/components/TextAreaInput/TextAreaInput.js +1 -1
- package/dist/esm/components/TextAreaInput/TextAreaInput.js.map +1 -1
- package/dist/esm/components/TextField/TextField.js +12 -10
- package/dist/esm/components/TextField/TextField.js.map +1 -1
- package/dist/esm/components/Title/Title.js +4 -4
- package/dist/esm/components/Title/Title.js.map +1 -1
- package/dist/esm/components/Trust/Trust.js +4 -5
- package/dist/esm/components/Trust/Trust.js.map +1 -1
- package/dist/esm/components/Trust/constants.js +3 -3
- package/dist/esm/components/Trust/constants.js.map +1 -1
- package/dist/esm/components/index.js +1 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/types/components/Button/Button.d.ts +2 -2
- package/dist/types/components/Button/Loading.d.ts +5 -1
- package/dist/types/components/Segment/Segment.stories.d.ts +2 -2
- package/dist/types/components/Segment/SegmentGroup.d.ts +1 -1
- package/dist/types/components/Stack/Stack.d.ts +15 -0
- package/dist/types/components/Stack/Stack.stories.d.ts +7 -0
- package/dist/types/components/Stack/Stack.test.d.ts +1 -0
- package/dist/types/components/Stack/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +1 -0
- package/package.json +3 -2
- package/src/components/Accordion/Accordion.css +72 -0
- package/src/components/Accordion/Accordion.mdx +9 -10
- package/src/components/Accordion/Accordion.test.tsx +4 -4
- package/src/components/Accordion/Accordion.tsx +8 -8
- package/src/components/Alert/Alert.css +53 -0
- package/src/components/Alert/Alert.mdx +1 -5
- package/src/components/Alert/Alert.tsx +4 -4
- package/src/components/Box/Box.css +3 -0
- package/src/components/Box/Box.mdx +1 -5
- package/src/components/Box/Box.test.tsx +1 -1
- package/src/components/Box/Box.tsx +1 -1
- package/src/components/Breadcrumbs/BreadcrumbItem.tsx +2 -2
- package/src/components/Breadcrumbs/Breadcrumbs.css +34 -0
- package/src/components/Breadcrumbs/Breadcrumbs.mdx +4 -8
- package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +2 -2
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +1 -1
- package/src/components/Button/Button.css +253 -0
- package/src/components/Button/Button.mdx +3 -11
- package/src/components/Button/Button.story.styles.css +2 -2
- package/src/components/Button/Button.test.tsx +4 -6
- package/src/components/Button/Button.tsx +4 -4
- package/src/components/Button/Loading.tsx +21 -8
- package/src/components/Button/Success.tsx +5 -3
- package/src/components/Checkbox/Checkbox.css +112 -0
- package/src/components/Checkbox/Checkbox.mdx +6 -12
- package/src/components/Checkbox/Checkbox.test.tsx +1 -7
- package/src/components/Checkbox/Checkbox.tsx +9 -7
- package/src/components/Checkbox/CheckboxGroup.css +26 -0
- package/src/components/Checkbox/CheckboxGroup.mdx +12 -22
- package/src/components/Checkbox/CheckboxGroup.test.tsx +2 -7
- package/src/components/Checkbox/CheckboxGroup.tsx +2 -2
- package/src/components/Container/Container.css +13 -0
- package/src/components/Container/Container.mdx +1 -5
- package/src/components/Container/Container.test.tsx +1 -2
- package/src/components/Container/Container.tsx +1 -1
- package/src/components/Divider/Divider.css +14 -0
- package/src/components/Divider/Divider.mdx +2 -6
- package/src/components/Divider/Divider.test.tsx +1 -1
- package/src/components/Divider/Divider.tsx +2 -2
- package/src/components/Drawer/Content.tsx +1 -1
- package/src/components/Drawer/Drawer.css +189 -0
- package/src/components/Drawer/Drawer.mdx +5 -12
- package/src/components/Drawer/Drawer.test.tsx +2 -2
- package/src/components/Drawer/Drawer.tsx +1 -1
- package/src/components/Drawer/Header.tsx +2 -2
- package/src/components/DropdownMenu/DropdownMenu.css +70 -0
- package/src/components/DropdownMenu/DropdownMenu.mdx +4 -8
- package/src/components/DropdownMenu/DropdownMenu.story.styles.css +3 -3
- package/src/components/DropdownMenu/DropdownMenu.test.tsx +4 -4
- package/src/components/DropdownMenu/DropdownMenu.tsx +3 -3
- package/src/components/DropdownMenu/Item.tsx +1 -1
- package/src/components/ErrorMessage/ErrorMessage.css +11 -0
- package/src/components/ErrorMessage/ErrorMessage.test.tsx +1 -1
- package/src/components/ErrorMessage/ErrorMessage.tsx +5 -3
- package/src/components/Fieldset/Fieldset.css +15 -0
- package/src/components/Fieldset/Fieldset.mdx +2 -6
- package/src/components/Fieldset/Fieldset.tsx +2 -2
- package/src/components/Flex/Flex.css +4 -0
- package/src/components/Flex/Flex.mdx +1 -5
- package/src/components/Flex/Flex.test.tsx +1 -1
- package/src/components/Flex/Flex.tsx +1 -1
- package/src/components/Grid/Grid.mdx +0 -4
- package/src/components/Grid/Grid.tsx +1 -1
- package/src/components/Grid/Item.tsx +1 -1
- package/src/components/Icon/Icon.css +44 -0
- package/src/components/Icon/Icon.mdx +1 -5
- package/src/components/Icon/Icon.test.tsx +1 -1
- package/src/components/Icon/Icon.tsx +1 -1
- package/src/components/Image/Image.mdx +1 -5
- package/src/components/Image/Image.test.tsx +1 -1
- package/src/components/Image/Image.tsx +1 -1
- package/src/components/Label/Label.css +21 -0
- package/src/components/Label/Label.mdx +1 -5
- package/src/components/Label/Label.test.tsx +1 -1
- package/src/components/Label/Label.tsx +1 -1
- package/src/components/Link/Link.css +26 -0
- package/src/components/Link/Link.mdx +1 -5
- package/src/components/Link/Link.test.tsx +1 -1
- package/src/components/Link/Link.tsx +1 -1
- package/src/components/LinkButton/LinkButton.mdx +1 -5
- package/src/components/LinkButton/LinkButton.tsx +1 -1
- package/src/components/List/List.css +60 -0
- package/src/components/List/List.mdx +4 -8
- package/src/components/List/List.test.tsx +4 -4
- package/src/components/List/List.tsx +1 -1
- package/src/components/List/ListItem.tsx +3 -3
- package/src/components/LoadingIndicator/LoadingIndicator.css +3 -0
- package/src/components/LoadingIndicator/LoadingIndicator.mdx +1 -5
- package/src/components/LoadingIndicator/LoadingIndicator.test.tsx +1 -1
- package/src/components/LoadingIndicator/LoadingIndicator.tsx +1 -1
- package/src/components/Logo/Logo.mdx +1 -5
- package/src/components/Logo/Logo.test.tsx +1 -1
- package/src/components/Logo/Logo.tsx +1 -1
- package/src/components/Modal/Content.tsx +1 -1
- package/src/components/Modal/Header.tsx +2 -2
- package/src/components/Modal/Modal.css +145 -0
- package/src/components/Modal/Modal.mdx +5 -12
- package/src/components/Modal/Modal.test.tsx +2 -2
- package/src/components/Modal/Modal.tsx +1 -1
- package/src/components/NumberField/NumberField.css +64 -0
- package/src/components/NumberField/NumberField.mdx +4 -8
- package/src/components/NumberField/NumberField.tsx +7 -6
- package/src/components/PasswordField/PasswordField.css +31 -0
- package/src/components/PasswordField/PasswordField.mdx +4 -8
- package/src/components/PasswordField/PasswordField.tsx +1 -1
- package/src/components/PasswordField/ShowHideButton.tsx +1 -1
- package/src/components/Popover/Popover.css +43 -0
- package/src/components/Popover/Popover.mdx +7 -11
- package/src/components/Popover/Popover.story.styles.css +3 -3
- package/src/components/Popover/Popover.test.tsx +7 -7
- package/src/components/Popover/Popover.tsx +8 -8
- package/src/components/Progress/Progress.css +30 -0
- package/src/components/Progress/Progress.mdx +5 -11
- package/src/components/Progress/Progress.test.tsx +7 -3
- package/src/components/Progress/Progress.tsx +5 -5
- package/src/components/Radio/Radio.css +185 -0
- package/src/components/Radio/Radio.mdx +9 -13
- package/src/components/Radio/Radio.test.tsx +10 -5
- package/src/components/Radio/Radio.tsx +6 -6
- package/src/components/Radio/RadioGroup.tsx +28 -25
- package/src/components/SVG/SVG.mdx +1 -5
- package/src/components/SVG/SVG.test.tsx +1 -1
- package/src/components/SVG/SVG.tsx +1 -1
- package/src/components/Segment/Segment.css +204 -0
- package/src/components/Segment/Segment.mdx +9 -13
- package/src/components/Segment/Segment.stories.tsx +7 -7
- package/src/components/Segment/Segment.tsx +2 -2
- package/src/components/Segment/SegmentGroup.tsx +6 -6
- package/src/components/Select/Select.css +85 -0
- package/src/components/Select/Select.mdx +4 -8
- package/src/components/Select/Select.test.tsx +2 -2
- package/src/components/Select/Select.tsx +7 -7
- package/src/components/Slider/Slider.css +138 -0
- package/src/components/Slider/Slider.mdx +8 -14
- package/src/components/Slider/Slider.test.tsx +4 -1
- package/src/components/Slider/Slider.tsx +7 -7
- package/src/components/Stack/Stack.css +30 -0
- package/src/components/Stack/Stack.mdx +41 -0
- package/src/components/Stack/Stack.stories.tsx +56 -0
- package/src/components/Stack/Stack.test.tsx +8 -0
- package/src/components/Stack/Stack.tsx +34 -0
- package/src/components/Stack/index.tsx +1 -0
- package/src/components/Table/Body.tsx +1 -1
- package/src/components/Table/Cell.tsx +1 -1
- package/src/components/Table/Foot.tsx +1 -1
- package/src/components/Table/Head.tsx +1 -1
- package/src/components/Table/HeaderCell.tsx +1 -1
- package/src/components/Table/Row.tsx +1 -1
- package/src/components/Table/Table.css +62 -0
- package/src/components/Table/Table.mdx +10 -14
- package/src/components/Table/Table.test.tsx +28 -15
- package/src/components/Table/Table.tsx +1 -1
- package/src/components/Text/Text.css +94 -0
- package/src/components/Text/Text.mdx +1 -5
- package/src/components/Text/Text.test.tsx +1 -1
- package/src/components/Text/Text.tsx +3 -4
- package/src/components/TextArea/TextArea.css +46 -0
- package/src/components/TextArea/TextArea.mdx +4 -8
- package/src/components/TextArea/TextArea.test.tsx +1 -1
- package/src/components/TextArea/TextArea.tsx +8 -5
- package/src/components/TextAreaInput/TextAreaInput.test.tsx +1 -1
- package/src/components/TextAreaInput/TextAreaInput.tsx +1 -1
- package/src/components/TextField/TextField.css +166 -0
- package/src/components/TextField/TextField.mdx +4 -8
- package/src/components/TextField/TextField.test.tsx +10 -10
- package/src/components/TextField/TextField.tsx +14 -11
- package/src/components/Title/Title.css +41 -0
- package/src/components/Title/Title.mdx +4 -8
- package/src/components/Title/Title.tsx +4 -4
- package/src/components/Trust/Trust.mdx +1 -7
- package/src/components/Trust/Trust.test.tsx +1 -1
- package/src/components/Trust/Trust.tsx +4 -5
- package/src/components/Trust/constants.ts +3 -3
- package/src/components/VisuallyHidden/VisuallyHidden.mdx +0 -4
- package/src/components/index.tsx +1 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { Stack, StackProps } from ".";
|
|
3
|
+
import { excludeControls } from "../../utils";
|
|
4
|
+
import { Button } from "../Button";
|
|
5
|
+
|
|
6
|
+
type StoryType = StoryObj<typeof Stack>;
|
|
7
|
+
|
|
8
|
+
const meta: Meta<typeof Stack> = {
|
|
9
|
+
title: "Layout/Stack",
|
|
10
|
+
component: Stack,
|
|
11
|
+
argTypes: {
|
|
12
|
+
...excludeControls("className"),
|
|
13
|
+
gap: {
|
|
14
|
+
control: {
|
|
15
|
+
type: "select",
|
|
16
|
+
options: ["", "xs", "sm", "md", "lg", "xl"],
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export const Default: StoryType = {
|
|
23
|
+
render: (args: StackProps) => (
|
|
24
|
+
<Stack {...args}>
|
|
25
|
+
<Button type="button">One</Button>
|
|
26
|
+
<Button type="button">Two</Button>
|
|
27
|
+
<Button type="button">Three</Button>
|
|
28
|
+
<Button type="button">Four</Button>
|
|
29
|
+
</Stack>
|
|
30
|
+
),
|
|
31
|
+
args: {
|
|
32
|
+
gap: "xs",
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export const Nested: StoryType = {
|
|
37
|
+
render: (args: StackProps) => (
|
|
38
|
+
<Stack {...args}>
|
|
39
|
+
<Button type="button">One</Button>
|
|
40
|
+
<Button type="button">Two</Button>
|
|
41
|
+
<Stack {...args}>
|
|
42
|
+
<Button type="button" variant="secondary">
|
|
43
|
+
Three
|
|
44
|
+
</Button>
|
|
45
|
+
<Button type="button" variant="secondary">
|
|
46
|
+
Four
|
|
47
|
+
</Button>
|
|
48
|
+
</Stack>
|
|
49
|
+
</Stack>
|
|
50
|
+
),
|
|
51
|
+
args: {
|
|
52
|
+
gap: "xs",
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export default meta;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React, { Ref, forwardRef, RefAttributes, ReactNode } from "react";
|
|
2
|
+
import classNames from "classnames/dedupe";
|
|
3
|
+
import type { DOMProps } from "../../types/dom";
|
|
4
|
+
import type { ForwardedRefComponent } from "../../types/components";
|
|
5
|
+
import { SpacingType } from "../../types";
|
|
6
|
+
|
|
7
|
+
export type StackElementType = HTMLDivElement;
|
|
8
|
+
|
|
9
|
+
export interface StackProps extends DOMProps, RefAttributes<StackElementType> {
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
/** How big a gap between items */
|
|
12
|
+
gap?: SpacingType;
|
|
13
|
+
/** Custom class name for setting specific CSS */
|
|
14
|
+
className?: string;
|
|
15
|
+
elementType?: string | React.ElementType;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type StackRef = Ref<StackElementType>;
|
|
19
|
+
|
|
20
|
+
export const Stack: ForwardedRefComponent<StackProps, StackElementType> =
|
|
21
|
+
forwardRef((props: StackProps, ref: StackRef) => {
|
|
22
|
+
const { elementType: Element = "div", gap, ...otherProps } = props;
|
|
23
|
+
|
|
24
|
+
const classes = classNames(
|
|
25
|
+
"mobius",
|
|
26
|
+
"mobius-stack",
|
|
27
|
+
{
|
|
28
|
+
[`--gap-${gap}`]: gap,
|
|
29
|
+
},
|
|
30
|
+
otherProps.className,
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
return <Element ref={ref} {...otherProps} className={classes} />;
|
|
34
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Stack";
|
|
@@ -11,7 +11,7 @@ export type BodyRef = Ref<HTMLTableSectionElement>;
|
|
|
11
11
|
|
|
12
12
|
const Body: ForwardedRefComponent<BodyProps, HTMLTableSectionElement> =
|
|
13
13
|
forwardRef((props: BodyProps, ref: BodyRef) => {
|
|
14
|
-
const classes = classNames("mobius", "mobius
|
|
14
|
+
const classes = classNames("mobius", "mobius-table__body", props.className);
|
|
15
15
|
|
|
16
16
|
return <tbody ref={ref} {...props} className={classes} />;
|
|
17
17
|
});
|
|
@@ -11,7 +11,7 @@ export type FootRef = Ref<HTMLTableSectionElement>;
|
|
|
11
11
|
|
|
12
12
|
const Foot: ForwardedRefComponent<FootProps, HTMLTableSectionElement> =
|
|
13
13
|
forwardRef((props: FootProps, ref: FootRef) => {
|
|
14
|
-
const classes = classNames("mobius", "mobius
|
|
14
|
+
const classes = classNames("mobius", "mobius-table__foot", props.className);
|
|
15
15
|
|
|
16
16
|
return <tfoot ref={ref} {...props} className={classes} />;
|
|
17
17
|
});
|
|
@@ -11,7 +11,7 @@ export type HeadRef = Ref<HTMLTableSectionElement>;
|
|
|
11
11
|
|
|
12
12
|
const Head: ForwardedRefComponent<HeadProps, HTMLTableSectionElement> =
|
|
13
13
|
forwardRef((props: HeadProps, ref: HeadRef) => {
|
|
14
|
-
const classes = classNames("mobius", "mobius
|
|
14
|
+
const classes = classNames("mobius", "mobius-table__head", props.className);
|
|
15
15
|
|
|
16
16
|
return <thead ref={ref} {...props} className={classes} />;
|
|
17
17
|
});
|
|
@@ -15,7 +15,7 @@ const HeaderCell: ForwardedRefComponent<HeaderCellProps, HTMLTableCellElement> =
|
|
|
15
15
|
forwardRef((props: HeaderCellProps, ref: HeaderCellRef) => {
|
|
16
16
|
const classes = classNames(
|
|
17
17
|
"mobius",
|
|
18
|
-
"mobius
|
|
18
|
+
"mobius-table__head-cell",
|
|
19
19
|
props.className,
|
|
20
20
|
);
|
|
21
21
|
|
|
@@ -11,7 +11,7 @@ export type RowRef = Ref<HTMLTableRowElement>;
|
|
|
11
11
|
|
|
12
12
|
const Row: ForwardedRefComponent<RowProps, HTMLTableRowElement> = forwardRef(
|
|
13
13
|
(props: RowProps, ref: RowRef) => {
|
|
14
|
-
const classes = classNames("mobius", "mobius
|
|
14
|
+
const classes = classNames("mobius", "mobius-table__row", props.className);
|
|
15
15
|
|
|
16
16
|
return <tr ref={ref} {...props} className={classes} />;
|
|
17
17
|
},
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
:root,
|
|
2
|
+
:host {
|
|
3
|
+
--table-border-width: 1px;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.mobius-table {
|
|
7
|
+
display: table;
|
|
8
|
+
box-sizing: border-box;
|
|
9
|
+
width: 100%;
|
|
10
|
+
text-align: left;
|
|
11
|
+
border-collapse: collapse;
|
|
12
|
+
line-height: 1.7;
|
|
13
|
+
box-sizing: border-box;
|
|
14
|
+
text-indent: initial;
|
|
15
|
+
border-spacing: 2px;
|
|
16
|
+
border-color: var(--color-border-light);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.mobius-table__head {
|
|
20
|
+
display: table-row-group;
|
|
21
|
+
box-sizing: border-box;
|
|
22
|
+
vertical-align: middle;
|
|
23
|
+
border-color: inherit;
|
|
24
|
+
font-weight: var(--font-weight-bold);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.mobius-table__head-cell {
|
|
28
|
+
display: table-cell;
|
|
29
|
+
font-weight: var(--font-weight-bold);
|
|
30
|
+
box-sizing: border-box;
|
|
31
|
+
vertical-align: baseline;
|
|
32
|
+
padding-top: var(--size-xs);
|
|
33
|
+
padding-bottom: var(--size-xs);
|
|
34
|
+
padding-right: var(--size-lg);
|
|
35
|
+
border-color: currentColor;
|
|
36
|
+
border-width: var(--table-border-width);
|
|
37
|
+
border-bottom-style: solid;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.mobius-table__body {
|
|
41
|
+
display: table-row-group;
|
|
42
|
+
box-sizing: border-box;
|
|
43
|
+
vertical-align: middle;
|
|
44
|
+
border-color: inherit;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.mobius-table__body-cell {
|
|
48
|
+
display: table-cell;
|
|
49
|
+
vertical-align: baseline;
|
|
50
|
+
box-sizing: border-box;
|
|
51
|
+
color: var(--color-text-medium);
|
|
52
|
+
padding-top: var(--size-xs);
|
|
53
|
+
padding-bottom: var(--size-xs);
|
|
54
|
+
padding-right: var(--size-lg);
|
|
55
|
+
border-color: var(--color-border-light);
|
|
56
|
+
border-width: var(--table-border-width);
|
|
57
|
+
border-bottom-style: solid;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.mobius-table__row {
|
|
61
|
+
display: table-row;
|
|
62
|
+
}
|
|
@@ -45,25 +45,21 @@ a `Table.HeaderCell` to indicate what the data for that row is pertaining to.
|
|
|
45
45
|
The following HTML is rendered for a Table:
|
|
46
46
|
|
|
47
47
|
```html
|
|
48
|
-
<table class="mobius
|
|
49
|
-
<thead class="mobius
|
|
50
|
-
<tr class="mobius
|
|
51
|
-
<th class="mobius
|
|
48
|
+
<table class="mobius-table">
|
|
49
|
+
<thead class="mobius-table__head">
|
|
50
|
+
<tr class="mobius-table__row">
|
|
51
|
+
<th class="mobius-table__cell">Header cell</th>
|
|
52
52
|
</tr>
|
|
53
53
|
</thead>
|
|
54
|
-
<tbody class="mobius
|
|
55
|
-
<tr class="mobius
|
|
56
|
-
<td class="mobius
|
|
54
|
+
<tbody class="mobius-table__body">
|
|
55
|
+
<tr class="mobius-table__row">
|
|
56
|
+
<td class="mobius-table__cell">Body cell</td>
|
|
57
57
|
</tr>
|
|
58
58
|
</tbody>
|
|
59
|
-
<tfoot class="mobius
|
|
60
|
-
<tr class="mobius
|
|
61
|
-
<td class="mobius
|
|
59
|
+
<tfoot class="mobius-table__foot">
|
|
60
|
+
<tr class="mobius-table__row">
|
|
61
|
+
<td class="mobius-table__cell">Footer cell</td>
|
|
62
62
|
</tr>
|
|
63
63
|
</tfoot>
|
|
64
64
|
</table>
|
|
65
65
|
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
[See on Github](https://github.com/simplybusiness/mobius/tree/master/packages/mobius/src/components/Table) | [Give feedback](https://simplybusiness.atlassian.net/CreateIssue.jspa?issuetype=10103&pid=10609) | [Get support](https://simplybusiness.slack.com/archives/C016CC0NDNE)
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { render, screen } from "@testing-library/react";
|
|
2
2
|
import { Table } from ".";
|
|
3
3
|
|
|
4
|
-
const TABLE_CLASS_NAME = "mobius
|
|
4
|
+
const TABLE_CLASS_NAME = "mobius-table";
|
|
5
|
+
const TABLE_HEAD_CLASS_NAME = "mobius-table__head";
|
|
6
|
+
const TABLE_HEAD_CELL_CLASS_NAME = "mobius-table__head-cell";
|
|
7
|
+
const TABLE_BODY_CLASS_NAME = "mobius-table__body";
|
|
8
|
+
const TABLE_FOOT_CLASS_NAME = "mobius-table__foot";
|
|
9
|
+
const TABLE_ROW_CLASS_NAME = "mobius-table__row";
|
|
5
10
|
|
|
6
11
|
describe("Test for Table", () => {
|
|
7
12
|
it("renders an empty table", () => {
|
|
@@ -71,17 +76,21 @@ describe("Test for Table", () => {
|
|
|
71
76
|
// Table and head
|
|
72
77
|
expect(screen.getByTestId("test")).toHaveClass(TABLE_CLASS_NAME);
|
|
73
78
|
const head = screen.getByTestId("test").firstChild;
|
|
74
|
-
expect(head).toHaveClass(
|
|
75
|
-
expect(head?.firstChild).toHaveClass(
|
|
76
|
-
expect(head?.firstChild?.firstChild).toHaveClass(
|
|
79
|
+
expect(head).toHaveClass(TABLE_HEAD_CLASS_NAME);
|
|
80
|
+
expect(head?.firstChild).toHaveClass(TABLE_ROW_CLASS_NAME);
|
|
81
|
+
expect(head?.firstChild?.firstChild).toHaveClass(
|
|
82
|
+
TABLE_HEAD_CELL_CLASS_NAME,
|
|
83
|
+
);
|
|
77
84
|
// Body
|
|
78
85
|
const body = screen.getByTestId("test").childNodes[1];
|
|
79
|
-
expect(body).toHaveClass(
|
|
80
|
-
expect(body?.firstChild).toHaveClass(
|
|
81
|
-
expect(body?.firstChild?.firstChild).toHaveClass(
|
|
86
|
+
expect(body).toHaveClass(TABLE_BODY_CLASS_NAME);
|
|
87
|
+
expect(body?.firstChild).toHaveClass(TABLE_ROW_CLASS_NAME);
|
|
88
|
+
expect(body?.firstChild?.firstChild).toHaveClass(
|
|
89
|
+
TABLE_HEAD_CELL_CLASS_NAME,
|
|
90
|
+
);
|
|
82
91
|
// Foot
|
|
83
92
|
const foot = screen.getByTestId("test").childNodes[2];
|
|
84
|
-
expect(foot).toHaveClass(
|
|
93
|
+
expect(foot).toHaveClass(TABLE_FOOT_CLASS_NAME);
|
|
85
94
|
});
|
|
86
95
|
|
|
87
96
|
it("includes custom class name", () => {
|
|
@@ -114,23 +123,27 @@ describe("Test for Table", () => {
|
|
|
114
123
|
expect(screen.getByTestId("test")).toHaveClass(TABLE_CLASS_NAME);
|
|
115
124
|
expect(screen.getByTestId("test")).toHaveClass("my-table");
|
|
116
125
|
const head = screen.getByTestId("test").firstChild;
|
|
117
|
-
expect(head).toHaveClass(
|
|
126
|
+
expect(head).toHaveClass(TABLE_HEAD_CLASS_NAME);
|
|
118
127
|
expect(head).toHaveClass("my-header");
|
|
119
|
-
expect(head?.firstChild).toHaveClass(
|
|
128
|
+
expect(head?.firstChild).toHaveClass(TABLE_ROW_CLASS_NAME);
|
|
120
129
|
expect(head?.firstChild).toHaveClass("my-header-row");
|
|
121
|
-
expect(head?.firstChild?.firstChild).toHaveClass(
|
|
130
|
+
expect(head?.firstChild?.firstChild).toHaveClass(
|
|
131
|
+
TABLE_HEAD_CELL_CLASS_NAME,
|
|
132
|
+
);
|
|
122
133
|
expect(head?.firstChild?.firstChild).toHaveClass("my-header-cell");
|
|
123
134
|
// Body
|
|
124
135
|
const body = screen.getByTestId("test").childNodes[1];
|
|
125
|
-
expect(body).toHaveClass(
|
|
136
|
+
expect(body).toHaveClass(TABLE_BODY_CLASS_NAME);
|
|
126
137
|
expect(body).toHaveClass("my-body");
|
|
127
|
-
expect(body?.firstChild).toHaveClass(
|
|
138
|
+
expect(body?.firstChild).toHaveClass(TABLE_ROW_CLASS_NAME);
|
|
128
139
|
expect(body?.firstChild).toHaveClass("my-body-row");
|
|
129
|
-
expect(body?.firstChild?.firstChild).toHaveClass(
|
|
140
|
+
expect(body?.firstChild?.firstChild).toHaveClass(
|
|
141
|
+
TABLE_HEAD_CELL_CLASS_NAME,
|
|
142
|
+
);
|
|
130
143
|
expect(body?.firstChild?.firstChild).toHaveClass("my-body-cell");
|
|
131
144
|
// Foot
|
|
132
145
|
const foot = screen.getByTestId("test").childNodes[2];
|
|
133
|
-
expect(foot).toHaveClass(
|
|
146
|
+
expect(foot).toHaveClass(TABLE_FOOT_CLASS_NAME);
|
|
134
147
|
expect(foot).toHaveClass("my-footer");
|
|
135
148
|
});
|
|
136
149
|
});
|
|
@@ -14,7 +14,7 @@ export type TableRef = Ref<TableElementType>;
|
|
|
14
14
|
|
|
15
15
|
const Table: ForwardedRefComponent<TableProps, TableElementType> = forwardRef(
|
|
16
16
|
(props: TableProps, ref: TableRef) => {
|
|
17
|
-
const classes = classNames("mobius", "mobius
|
|
17
|
+
const classes = classNames("mobius", "mobius-table", props.className);
|
|
18
18
|
|
|
19
19
|
return <table ref={ref} {...props} className={classes} />;
|
|
20
20
|
},
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
.mobius-text {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
font-family: var(--font-family);
|
|
4
|
+
font-size: var(--font-size-regular);
|
|
5
|
+
font-weight: var(--font-weight-normal);
|
|
6
|
+
line-height: var(--line-height-normal);
|
|
7
|
+
|
|
8
|
+
&:where(.--is-p) {
|
|
9
|
+
box-sizing: border-box;
|
|
10
|
+
font-family: var(--font-family);
|
|
11
|
+
font-size: var(--font-size-regular);
|
|
12
|
+
font-weight: var(--font-weight-normal);
|
|
13
|
+
line-height: var(--line-height-normal);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&:where(.--is-h1) {
|
|
17
|
+
box-sizing: border-box;
|
|
18
|
+
font-family: var(--font-family);
|
|
19
|
+
font-size: var(--font-size-title); /* 32px */
|
|
20
|
+
font-weight: var(--font-weight-bold);
|
|
21
|
+
line-height: 1.25; /* 40px */
|
|
22
|
+
margin: 0.35em 0;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&:where(.--is-h2) {
|
|
26
|
+
box-sizing: border-box;
|
|
27
|
+
font-family: var(--font-family);
|
|
28
|
+
font-size: var(--font-size-small-title); /* 24px */
|
|
29
|
+
font-weight: var(--font-weight-bold);
|
|
30
|
+
line-height: var(--line-height-tight); /* 1.333, 32px */
|
|
31
|
+
margin: 0.45em 0;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
&:where(.--is-h3) {
|
|
35
|
+
box-sizing: border-box;
|
|
36
|
+
font-family: var(--font-family);
|
|
37
|
+
font-size: var(--font-size-lead); /* 20px */
|
|
38
|
+
font-weight: var(--font-weight-bold);
|
|
39
|
+
line-height: 1.2; /* 24px */
|
|
40
|
+
margin: 0.5em 0;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&:where(.--is-h4) {
|
|
44
|
+
box-sizing: border-box;
|
|
45
|
+
font-family: var(--font-family);
|
|
46
|
+
font-size: var(--font-size-regular); /* 16px */
|
|
47
|
+
font-weight: var(--font-weight-bold);
|
|
48
|
+
line-height: var(--line-height-normal); /* 1.5, 24px */
|
|
49
|
+
margin: 0.55em 0;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&:where(.--is-span) {
|
|
53
|
+
box-sizing: border-box;
|
|
54
|
+
font-size: var(--font-size-regular);
|
|
55
|
+
font-weight: var(--font-weight-normal);
|
|
56
|
+
line-height: var(--line-height-normal);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
&:where(.--is-body) {
|
|
60
|
+
box-sizing: border-box;
|
|
61
|
+
font-family: var(--font-family);
|
|
62
|
+
font-size: var(--font-size-regular); /* 16px */
|
|
63
|
+
font-weight: var(--font-weight-normal);
|
|
64
|
+
line-height: var(--line-height-normal); /* 1.5, 24px */
|
|
65
|
+
color: var(--color-text-medium);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
&:where(.--is-small) {
|
|
69
|
+
box-sizing: border-box;
|
|
70
|
+
font-family: var(--font-family);
|
|
71
|
+
font-size: var(--font-size-small-paragraph); /* 14px */
|
|
72
|
+
font-weight: var(--font-weight-normal);
|
|
73
|
+
line-height: 1.428; /* 20px */
|
|
74
|
+
color: var(--color-text-medium);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
&:where(.--is-legal) {
|
|
78
|
+
box-sizing: border-box;
|
|
79
|
+
font-family: var(--font-family);
|
|
80
|
+
font-size: var(--font-size-small-print); /* 12px */
|
|
81
|
+
font-weight: var(--font-weight-normal);
|
|
82
|
+
line-height: var(--line-height-tight); /* 1.333, 16px */
|
|
83
|
+
color: var(--color-text-medium);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/* Compact text */
|
|
87
|
+
&:where(.--has-line-height-tight) {
|
|
88
|
+
line-height: var(--line-height-tight);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
&:where(.--has-line-height-loose) {
|
|
92
|
+
line-height: var(--line-height-normal);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -113,9 +113,5 @@ Set the spacing to "loose" or "tight" to override the default line height for te
|
|
|
113
113
|
The following HTML is rendered for Text. The element type is added as a class.
|
|
114
114
|
|
|
115
115
|
```html
|
|
116
|
-
<h4 class="mobius
|
|
116
|
+
<h4 class="mobius-text --is-h4">{text}</h4>
|
|
117
117
|
```
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
[See on Github](https://github.com/simplybusiness/mobius/tree/master/packages/mobius/src/components/Text) | [Give feedback](https://simplybusiness.atlassian.net/CreateIssue.jspa?issuetype=10103&pid=10609) | [Get support](https://simplybusiness.slack.com/archives/C016CC0NDNE)
|
|
@@ -46,12 +46,11 @@ const Text: ForwardedRefComponent<TextProps, TextElementType> = forwardRef(
|
|
|
46
46
|
// If a variant is supplied, set the class name and element type
|
|
47
47
|
const elementType = getElementType(variant, Component);
|
|
48
48
|
const variantType = variant || elementType;
|
|
49
|
-
const lineHeight = spacing ? `line-height-${spacing}` : "";
|
|
50
49
|
const classes = classNames(
|
|
51
50
|
"mobius",
|
|
52
|
-
"mobius
|
|
53
|
-
variantType,
|
|
54
|
-
|
|
51
|
+
"mobius-text",
|
|
52
|
+
{ [`--is-${variantType}`]: variantType },
|
|
53
|
+
{ [`--has-line-height-${spacing}`]: spacing },
|
|
55
54
|
className,
|
|
56
55
|
);
|
|
57
56
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
.mobius-text-area__input {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
flex: 1 1 0%;
|
|
4
|
+
border: var(--border-default);
|
|
5
|
+
border-radius: var(--radius-1);
|
|
6
|
+
padding: var(--size-xs) var(--size-sm);
|
|
7
|
+
margin: 0px;
|
|
8
|
+
font-family: var(--font-family);
|
|
9
|
+
font-size: var(--font-size-regular);
|
|
10
|
+
color: var(--color-text);
|
|
11
|
+
outline: 0px;
|
|
12
|
+
background-color: var(--color-background-input);
|
|
13
|
+
|
|
14
|
+
/* Hovered */
|
|
15
|
+
&:hover:not(.--is-disabled):not(&.--is-invalid) {
|
|
16
|
+
border-color: var(--color-primary);
|
|
17
|
+
background-color: var(--color-background-input-active);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/* Focused */
|
|
21
|
+
&:focus-visible {
|
|
22
|
+
border-color: var(--color-primary);
|
|
23
|
+
background-color: var(--color-background-input-active);
|
|
24
|
+
box-shadow: var(--box-shadow-default);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/* Disabled */
|
|
28
|
+
&.--is-disabled {
|
|
29
|
+
background-color: var(--color-background-light);
|
|
30
|
+
border-color: var(--color-border-medium);
|
|
31
|
+
color: var(--color-text-light);
|
|
32
|
+
cursor: not-allowed;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* Invalid */
|
|
36
|
+
&:not(.--is-disabled).--is-invalid {
|
|
37
|
+
border-color: var(--color-error);
|
|
38
|
+
background-color: var(--color-error-background);
|
|
39
|
+
color: var(--color-error);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.mobius-text-area {
|
|
44
|
+
box-sizing: border-box;
|
|
45
|
+
width: 100%;
|
|
46
|
+
}
|
|
@@ -57,13 +57,9 @@ Refer to [TextField docs](/story/core-docs-textfield--page) for usage and exampl
|
|
|
57
57
|
The following HTML is rendered for a TextArea:
|
|
58
58
|
|
|
59
59
|
```html
|
|
60
|
-
<div class="mobius
|
|
61
|
-
<label class="mobius
|
|
62
|
-
<textarea class="mobius
|
|
63
|
-
<div class="mobius
|
|
60
|
+
<div class="mobius-text-area">
|
|
61
|
+
<label class="mobius-label">{label}</label>
|
|
62
|
+
<textarea class="mobius-text-area__input">{text}</textarea>
|
|
63
|
+
<div class="mobius-error-message">{errors}</div>
|
|
64
64
|
</div>
|
|
65
65
|
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
[See on Github](https://github.com/simplybusiness/mobius/tree/master/packages/mobius/src/components/TextArea) | [Give feedback](https://simplybusiness.atlassian.net/CreateIssue.jspa?issuetype=10103&pid=10609) | [Get support](https://simplybusiness.slack.com/archives/C016CC0NDNE)
|
|
@@ -2,7 +2,7 @@ import { render, screen } from "@testing-library/react";
|
|
|
2
2
|
import userEvent from "@testing-library/user-event";
|
|
3
3
|
import { TextArea } from ".";
|
|
4
4
|
|
|
5
|
-
const CLASS_NAME = "mobius
|
|
5
|
+
const CLASS_NAME = "mobius-text-area";
|
|
6
6
|
|
|
7
7
|
describe("TextArea", () => {
|
|
8
8
|
it("should render without error", () => {
|
|
@@ -6,13 +6,13 @@ import { DOMProps } from "../../types/dom";
|
|
|
6
6
|
import { TextAreaInput } from "../TextAreaInput";
|
|
7
7
|
import { Label } from "../Label";
|
|
8
8
|
import { ForwardedRefComponent } from "../../types/components";
|
|
9
|
-
import { Flex } from "../Flex";
|
|
10
9
|
import { ErrorMessage } from "../ErrorMessage";
|
|
11
10
|
import {
|
|
12
11
|
UseTextFieldProps,
|
|
13
12
|
useTextField,
|
|
14
13
|
useValidationClasses,
|
|
15
14
|
} from "../../hooks";
|
|
15
|
+
import { Stack } from "../Stack";
|
|
16
16
|
|
|
17
17
|
export type TextAreaElementType = HTMLTextAreaElement;
|
|
18
18
|
|
|
@@ -41,12 +41,15 @@ const TextArea: ForwardedRefComponent<TextAreaProps, TextAreaElementType> =
|
|
|
41
41
|
const { inputProps, labelProps, errorMessageProps } = useTextField(props);
|
|
42
42
|
|
|
43
43
|
// Set class name for atom, including interaction state
|
|
44
|
-
const classes = classNames("mobius", "mobius
|
|
44
|
+
const classes = classNames("mobius", "mobius-text-area", className);
|
|
45
45
|
const validationClasses = useValidationClasses({
|
|
46
46
|
validationState,
|
|
47
47
|
isInvalid,
|
|
48
48
|
});
|
|
49
|
-
const inputClasses = classNames(
|
|
49
|
+
const inputClasses = classNames(
|
|
50
|
+
"mobius-text-area__input",
|
|
51
|
+
validationClasses,
|
|
52
|
+
);
|
|
50
53
|
const labelClasses = classNames(
|
|
51
54
|
{
|
|
52
55
|
"--is-disabled": isDisabled,
|
|
@@ -55,7 +58,7 @@ const TextArea: ForwardedRefComponent<TextAreaProps, TextAreaElementType> =
|
|
|
55
58
|
);
|
|
56
59
|
|
|
57
60
|
return (
|
|
58
|
-
<
|
|
61
|
+
<Stack className={classes} gap="xs">
|
|
59
62
|
{label && (
|
|
60
63
|
<Label {...labelProps} className={labelClasses}>
|
|
61
64
|
{props.label}
|
|
@@ -70,7 +73,7 @@ const TextArea: ForwardedRefComponent<TextAreaProps, TextAreaElementType> =
|
|
|
70
73
|
aria-invalid={errorMessage != null}
|
|
71
74
|
/>
|
|
72
75
|
<ErrorMessage {...errorMessageProps} errorMessage={errorMessage} />
|
|
73
|
-
</
|
|
76
|
+
</Stack>
|
|
74
77
|
);
|
|
75
78
|
});
|
|
76
79
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { render, screen } from "@testing-library/react";
|
|
2
2
|
import { TextAreaInput } from ".";
|
|
3
3
|
|
|
4
|
-
const CLASS_NAME = "mobius
|
|
4
|
+
const CLASS_NAME = "mobius-text-area__input";
|
|
5
5
|
|
|
6
6
|
describe("TextAreaInput", () => {
|
|
7
7
|
it("should render without errors", () => {
|