@nypl/design-system-react-components 0.25.7 → 0.25.10
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 +119 -1
- package/README.md +1 -1
- package/dist/components/Button/Button.d.ts +6 -6
- package/dist/components/Button/ButtonTypes.d.ts +0 -1
- package/dist/components/Card/Card.d.ts +6 -4
- package/dist/components/Checkbox/Checkbox.d.ts +3 -2
- package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +3 -2
- package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +8 -2
- package/dist/components/DatePicker/DatePicker.d.ts +4 -3
- package/dist/components/Fieldset/Fieldset.d.ts +1 -3
- package/dist/components/Form/Form.d.ts +15 -14
- package/dist/components/Form/FormTypes.d.ts +2 -2
- package/dist/components/Heading/Heading.d.ts +7 -3
- package/dist/components/Heading/HeadingTypes.d.ts +6 -6
- package/dist/components/HelperErrorText/HelperErrorText.d.ts +5 -2
- package/dist/components/HorizontalRule/HorizontalRule.d.ts +3 -3
- package/dist/components/Icons/Icon.d.ts +4 -4
- package/dist/components/Icons/IconSvgs.d.ts +1 -21
- package/dist/components/Icons/IconTypes.d.ts +1 -23
- package/dist/components/Image/Image.d.ts +11 -3
- package/dist/components/Image/ImageTypes.d.ts +3 -1
- package/dist/components/Link/LinkTypes.d.ts +1 -0
- package/dist/components/Logo/Logo.d.ts +28 -0
- package/dist/components/Logo/LogoSvgs.d.ts +18 -0
- package/dist/components/Logo/LogoTypes.d.ts +30 -0
- package/dist/components/Modal/Modal.d.ts +0 -4
- package/dist/components/Notification/Notification.d.ts +4 -2
- package/dist/components/Placeholder/Placeholder.d.ts +3 -5
- package/dist/components/Radio/Radio.d.ts +6 -5
- package/dist/components/RadioGroup/RadioGroup.d.ts +6 -5
- package/dist/components/SearchBar/SearchBar.d.ts +15 -7
- package/dist/components/Select/Select.d.ts +5 -2
- package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +8 -4
- package/dist/components/Slider/Slider.d.ts +3 -2
- package/dist/components/StatusBadge/StatusBadge.d.ts +2 -1
- package/dist/components/StructuredContent/StructuredContent.d.ts +41 -0
- package/dist/components/StructuredContent/StructuredContentTypes.d.ts +5 -0
- package/dist/components/Table/Table.d.ts +29 -0
- package/dist/components/Template/Template.d.ts +30 -6
- package/dist/components/Text/Text.d.ts +2 -2
- package/dist/components/TextInput/TextInput.d.ts +4 -3
- package/dist/components/Toggle/Toggle.d.ts +48 -0
- package/dist/components/Toggle/ToggleSizes.d.ts +4 -0
- package/dist/components/VideoPlayer/VideoPlayer.d.ts +17 -6
- package/dist/design-system-react-components.cjs.development.js +4698 -4405
- package/dist/design-system-react-components.cjs.development.js.map +1 -1
- package/dist/design-system-react-components.cjs.production.min.js +1 -1
- package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
- package/dist/design-system-react-components.esm.js +5862 -5573
- package/dist/design-system-react-components.esm.js.map +1 -1
- package/dist/index.d.ts +13 -8
- package/dist/resources.scss +0 -2
- package/dist/styles.css +2 -2
- package/dist/theme/components/breadcrumb.d.ts +1 -1
- package/dist/theme/components/button.d.ts +0 -12
- package/dist/theme/components/card.d.ts +14 -2
- package/dist/theme/components/customTable.d.ts +56 -0
- package/dist/theme/components/fieldset.d.ts +2 -2
- package/dist/theme/components/global.d.ts +1 -1
- package/dist/theme/components/heading.d.ts +4 -0
- package/dist/theme/components/label.d.ts +1 -1
- package/dist/theme/components/link.d.ts +14 -1
- package/dist/theme/components/list.d.ts +0 -2
- package/dist/theme/components/logo.d.ts +4 -0
- package/dist/theme/components/notification.d.ts +8 -4
- package/dist/theme/components/searchBar.d.ts +7 -13
- package/dist/theme/components/select.d.ts +1 -0
- package/dist/theme/components/structuredContent.d.ts +33 -0
- package/dist/theme/components/template.d.ts +10 -10
- package/dist/theme/components/textInput.d.ts +2 -0
- package/dist/theme/components/toggle.d.ts +71 -0
- package/dist/theme/foundations/spacing.d.ts +2 -0
- package/dist/utils/utils.d.ts +10 -0
- package/package.json +40 -37
- package/src/__tests__/utils/utils.test.ts +23 -1
- package/src/components/Accordion/Accordion.stories.mdx +16 -15
- package/src/components/Accordion/Accordion.test.tsx +45 -1
- package/src/components/Accordion/Accordion.tsx +20 -8
- package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +243 -0
- package/src/components/Autosuggest/Autosuggest.stories.mdx +2 -1
- package/src/components/Autosuggest/Autosuggest.stories.tsx +24 -48
- package/src/components/Autosuggest/_Autosuggest.scss +2 -6
- package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +43 -13
- package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +25 -0
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +9 -3
- package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +103 -4
- package/src/components/Button/Button.stories.mdx +93 -48
- package/src/components/Button/Button.test.tsx +0 -12
- package/src/components/Button/Button.tsx +7 -8
- package/src/components/Button/ButtonTypes.tsx +0 -1
- package/src/components/Button/__snapshots__/Button.test.tsx.snap +0 -12
- package/src/components/Card/Card.stories.mdx +246 -64
- package/src/components/Card/Card.test.tsx +45 -22
- package/src/components/Card/Card.tsx +30 -14
- package/src/components/Card/__snapshots__/Card.test.tsx.snap +75 -37
- package/src/components/Chakra/Box.stories.mdx +3 -3
- package/src/components/Chakra/Center.stories.mdx +5 -5
- package/src/components/Chakra/Flex.stories.mdx +113 -0
- package/src/components/Chakra/Grid.stories.mdx +14 -17
- package/src/components/Chakra/Stack.stories.mdx +2 -2
- package/src/components/Checkbox/Checkbox.stories.mdx +37 -15
- package/src/components/Checkbox/Checkbox.tsx +13 -8
- package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +48 -16
- package/src/components/CheckboxGroup/CheckboxGroup.tsx +14 -10
- package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +6 -3
- package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +151 -0
- package/src/components/ComponentWrapper/ComponentWrapper.tsx +36 -23
- package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +85 -0
- package/src/components/DatePicker/DatePicker.stories.mdx +63 -18
- package/src/components/DatePicker/DatePicker.test.tsx +14 -12
- package/src/components/DatePicker/DatePicker.tsx +13 -10
- package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +41 -22
- package/src/components/Fieldset/Fieldset.stories.mdx +20 -9
- package/src/components/Fieldset/Fieldset.tsx +2 -4
- package/src/components/Form/Form.stories.mdx +75 -49
- package/src/components/Form/Form.test.tsx +92 -3
- package/src/components/Form/Form.tsx +28 -23
- package/src/components/Form/FormTypes.tsx +2 -2
- package/src/components/Form/__snapshots__/Form.test.tsx.snap +0 -1
- package/src/components/Grid/SimpleGrid.stories.mdx +26 -26
- package/src/components/Heading/Heading.stories.mdx +59 -23
- package/src/components/Heading/Heading.test.tsx +82 -18
- package/src/components/Heading/Heading.tsx +31 -31
- package/src/components/Heading/HeadingTypes.tsx +6 -6
- package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +71 -0
- package/src/components/HelperErrorText/HelperErrorText.stories.mdx +55 -27
- package/src/components/HelperErrorText/HelperErrorText.test.tsx +42 -15
- package/src/components/HelperErrorText/HelperErrorText.tsx +24 -24
- package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +41 -4
- package/src/components/Hero/Hero.stories.mdx +72 -53
- package/src/components/HorizontalRule/HorizontalRule.stories.mdx +11 -9
- package/src/components/HorizontalRule/HorizontalRule.tsx +4 -6
- package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +4 -4
- package/src/components/Icons/Icon.stories.mdx +77 -75
- package/src/components/Icons/Icon.tsx +4 -5
- package/src/components/Icons/IconSvgs.tsx +2 -42
- package/src/components/Icons/IconTypes.tsx +1 -24
- package/src/components/Image/Image.stories.mdx +214 -104
- package/src/components/Image/Image.test.tsx +10 -0
- package/src/components/Image/Image.tsx +21 -10
- package/src/components/Image/ImageTypes.ts +2 -0
- package/src/components/Image/__snapshots__/Image.test.tsx.snap +24 -8
- package/src/components/Label/Label.stories.mdx +21 -20
- package/src/components/Link/Link.stories.mdx +103 -53
- package/src/components/Link/Link.test.tsx +108 -7
- package/src/components/Link/Link.tsx +58 -19
- package/src/components/Link/LinkTypes.tsx +1 -0
- package/src/components/Link/__snapshots__/Link.test.tsx.snap +261 -0
- package/src/components/List/List.stories.mdx +37 -25
- package/src/components/List/List.tsx +1 -1
- package/src/components/Logo/Logo.stories.mdx +220 -0
- package/src/components/Logo/Logo.test.tsx +98 -0
- package/src/components/Logo/Logo.tsx +97 -0
- package/src/components/Logo/LogoSvgs.tsx +34 -0
- package/src/components/Logo/LogoTypes.tsx +32 -0
- package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +71 -0
- package/src/components/Modal/Modal.stories.mdx +20 -5
- package/src/components/Modal/Modal.tsx +2 -8
- package/src/components/Notification/Notification.stories.mdx +96 -40
- package/src/components/Notification/Notification.test.tsx +62 -16
- package/src/components/Notification/Notification.tsx +26 -9
- package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +121 -0
- package/src/components/Pagination/Pagination.stories.mdx +19 -9
- package/src/components/Pagination/Pagination.tsx +3 -3
- package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +42 -0
- package/src/components/Placeholder/Placeholder.tsx +7 -14
- package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +74 -46
- package/src/components/Radio/Radio.stories.mdx +39 -19
- package/src/components/Radio/Radio.tsx +13 -9
- package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +5 -5
- package/src/components/RadioGroup/RadioGroup.stories.mdx +50 -16
- package/src/components/RadioGroup/RadioGroup.test.tsx +13 -11
- package/src/components/RadioGroup/RadioGroup.tsx +97 -94
- package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +24 -21
- package/src/components/SearchBar/SearchBar.Test.tsx +160 -34
- package/src/components/SearchBar/SearchBar.stories.mdx +116 -34
- package/src/components/SearchBar/SearchBar.tsx +70 -50
- package/src/components/Select/Select.stories.mdx +177 -66
- package/src/components/Select/Select.test.tsx +91 -2
- package/src/components/Select/Select.tsx +29 -13
- package/src/components/Select/__snapshots__/Select.test.tsx.snap +545 -0
- package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +50 -16
- package/src/components/SkeletonLoader/SkeletonLoader.tsx +8 -4
- package/src/components/Slider/Slider.stories.mdx +74 -23
- package/src/components/Slider/Slider.test.tsx +35 -0
- package/src/components/Slider/Slider.tsx +22 -11
- package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +67 -30
- package/src/components/StatusBadge/StatusBadge.stories.mdx +33 -18
- package/src/components/StatusBadge/StatusBadge.tsx +2 -1
- package/src/components/StructuredContent/StructuredContent.stories.mdx +427 -0
- package/src/components/StructuredContent/StructuredContent.test.tsx +376 -0
- package/src/components/StructuredContent/StructuredContent.tsx +153 -0
- package/src/components/StructuredContent/StructuredContentTypes.tsx +5 -0
- package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +283 -0
- package/src/components/StyleGuide/Bidirectionality.stories.mdx +32 -83
- package/src/components/StyleGuide/Breakpoints.stories.mdx +1 -11
- package/src/components/StyleGuide/Buttons.stories.mdx +3 -18
- package/src/components/StyleGuide/ColorCard.tsx +1 -2
- package/src/components/StyleGuide/Colors.stories.mdx +3 -11
- package/src/components/StyleGuide/DesignTokens.stories.mdx +3 -8
- package/src/components/StyleGuide/Forms.stories.mdx +2 -10
- package/src/components/StyleGuide/Iconography.stories.mdx +8 -34
- package/src/components/StyleGuide/Spacing.stories.mdx +3 -14
- package/src/components/StyleGuide/Typography.stories.mdx +64 -76
- package/src/components/Table/Table.stories.mdx +165 -0
- package/src/components/Table/Table.test.tsx +137 -0
- package/src/components/Table/Table.tsx +126 -0
- package/src/components/Table/__snapshots__/Table.test.tsx.snap +1179 -0
- package/src/components/Tabs/Tabs.stories.mdx +20 -14
- package/src/components/Tabs/Tabs.test.tsx +21 -5
- package/src/components/Tabs/Tabs.tsx +33 -18
- package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +195 -0
- package/src/components/Template/Template.stories.mdx +132 -49
- package/src/components/Template/Template.test.tsx +128 -6
- package/src/components/Template/Template.tsx +93 -13
- package/src/components/Template/__snapshots__/Template.test.tsx.snap +169 -0
- package/src/components/Text/Text.stories.mdx +33 -11
- package/src/components/Text/Text.tsx +2 -2
- package/src/components/TextInput/TextInput.stories.mdx +84 -17
- package/src/components/TextInput/TextInput.test.tsx +96 -0
- package/src/components/TextInput/TextInput.tsx +12 -8
- package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +240 -0
- package/src/components/Toggle/Toggle.stories.mdx +200 -0
- package/src/components/Toggle/Toggle.test.tsx +140 -0
- package/src/components/Toggle/Toggle.tsx +123 -0
- package/src/components/Toggle/ToggleSizes.tsx +4 -0
- package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +255 -0
- package/src/components/VideoPlayer/VideoPlayer.stories.mdx +96 -25
- package/src/components/VideoPlayer/VideoPlayer.test.tsx +103 -1
- package/src/components/VideoPlayer/VideoPlayer.tsx +72 -22
- package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +57 -3
- package/src/docs/Chakra.stories.mdx +5 -8
- package/src/docs/Intro.stories.mdx +2 -2
- package/src/index.ts +19 -6
- package/src/styles/base/_03-base.scss +1 -1
- package/src/styles/base/_place-holder.scss +7 -7
- package/src/styles.scss +1 -5
- package/src/theme/components/breadcrumb.ts +5 -5
- package/src/theme/components/button.ts +5 -12
- package/src/theme/components/card.ts +9 -7
- package/src/theme/components/checkbox.ts +1 -1
- package/src/theme/components/customTable.ts +63 -0
- package/src/theme/components/datePicker.ts +1 -1
- package/src/theme/components/global.ts +7 -7
- package/src/theme/components/heading.ts +13 -11
- package/src/theme/components/helperErrorText.ts +1 -1
- package/src/theme/components/icon.ts +2 -2
- package/src/theme/components/image.ts +9 -1
- package/src/theme/components/link.ts +17 -5
- package/src/theme/components/list.ts +1 -3
- package/src/theme/components/logo.ts +54 -0
- package/src/theme/components/notification.ts +9 -7
- package/src/theme/components/searchBar.ts +7 -13
- package/src/theme/components/select.ts +1 -0
- package/src/theme/components/statusBadge.ts +1 -1
- package/src/theme/components/structuredContent.ts +54 -0
- package/src/theme/components/template.ts +10 -10
- package/src/theme/components/text.ts +6 -6
- package/src/theme/components/textInput.ts +1 -0
- package/src/theme/components/toggle.ts +69 -0
- package/src/theme/components/videoPlayer.ts +0 -2
- package/src/theme/foundations/global.ts +2 -2
- package/src/theme/foundations/spacing.ts +3 -0
- package/src/theme/foundations/typography.ts +84 -12
- package/src/theme/index.ts +8 -0
- package/src/utils/componentCategories.ts +5 -2
- package/src/utils/utils.ts +17 -0
- package/dist/__tests__/utils/bem.test.d.ts +0 -1
- package/dist/components/CardEdition/CardEdition.d.ts +0 -21
- package/dist/components/CardEdition/CardEdition.stories.d.ts +0 -27
- package/dist/components/Input/Input.d.ts +0 -36
- package/dist/components/Input/Input.stories.d.ts +0 -29
- package/dist/components/Input/InputTypes.d.ts +0 -6
- package/dist/components/StyleGuide/UIDocCard.d.ts +0 -11
- package/dist/helpers/CSSVariablesHelper.d.ts +0 -3
- package/dist/helpers/getCSSVariable.d.ts +0 -1
- package/dist/interfaces.d.ts +0 -3
- package/dist/utils/bem.d.ts +0 -1
- package/src/__tests__/utils/bem.test.ts +0 -37
- package/src/components/CardEdition/CardEdition.stories.tsx +0 -122
- package/src/components/CardEdition/CardEdition.test.tsx +0 -395
- package/src/components/CardEdition/CardEdition.tsx +0 -60
- package/src/components/CardEdition/_CardEdition.scss +0 -137
- package/src/components/Input/Input.stories.tsx +0 -133
- package/src/components/Input/Input.test.tsx +0 -266
- package/src/components/Input/Input.tsx +0 -81
- package/src/components/Input/InputTypes.tsx +0 -8
- package/src/components/Input/_Input.scss +0 -78
- package/src/components/StyleGuide/UIDocCard.tsx +0 -36
- package/src/helpers/CSSVariablesHelper.tsx +0 -34
- package/src/helpers/getCSSVariable.tsx +0 -5
- package/src/interfaces.ts +0 -3
- package/src/utils/bem.ts +0 -44
|
@@ -1,17 +1,33 @@
|
|
|
1
|
+
import { VStack } from "@chakra-ui/react";
|
|
1
2
|
import {
|
|
2
|
-
Meta,
|
|
3
|
-
Story,
|
|
4
|
-
Canvas,
|
|
5
3
|
ArgsTable,
|
|
4
|
+
Canvas,
|
|
6
5
|
Description,
|
|
7
|
-
|
|
6
|
+
Meta,
|
|
7
|
+
Story,
|
|
8
|
+
} from "@storybook/addon-docs";
|
|
8
9
|
import { withDesign } from "storybook-addon-designs";
|
|
9
|
-
import { VStack } from "@chakra-ui/react";
|
|
10
10
|
|
|
11
|
+
import Heading from "../Heading/Heading";
|
|
11
12
|
import Image from "./Image";
|
|
12
13
|
import { ImageRatios, ImageSizes, ImageTypes } from "./ImageTypes";
|
|
13
|
-
import
|
|
14
|
+
import SimpleGrid from "../Grid/SimpleGrid";
|
|
14
15
|
import { getCategory } from "../../utils/componentCategories";
|
|
16
|
+
import { getStorybookEnumValues } from "../../utils/utils";
|
|
17
|
+
|
|
18
|
+
export const ratiosEnumValues = getStorybookEnumValues(
|
|
19
|
+
ImageRatios,
|
|
20
|
+
"ImageRatios"
|
|
21
|
+
);
|
|
22
|
+
export const sizesEnumValues = getStorybookEnumValues(ImageSizes, "ImageSizes");
|
|
23
|
+
export const typesEnumValues = getStorybookEnumValues(ImageTypes, "ImageTypes");
|
|
24
|
+
|
|
25
|
+
export const imageBlockStyles = {
|
|
26
|
+
margin: "auto",
|
|
27
|
+
maxWidth: "360px",
|
|
28
|
+
textAlign: "center",
|
|
29
|
+
width: "100%",
|
|
30
|
+
};
|
|
15
31
|
|
|
16
32
|
<Meta
|
|
17
33
|
title={getCategory("Image")}
|
|
@@ -25,9 +41,38 @@ import { getCategory } from "../../utils/componentCategories";
|
|
|
25
41
|
jest: ["Image.test.tsx"],
|
|
26
42
|
}}
|
|
27
43
|
argTypes={{
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
44
|
+
additionalFigureStyles: { control: false },
|
|
45
|
+
additionalImageStyles: { control: false },
|
|
46
|
+
additionalWrapperStyles: { control: false },
|
|
47
|
+
alt: {
|
|
48
|
+
control: false,
|
|
49
|
+
description:
|
|
50
|
+
"Alternate text description of the image. Needed for accessibility purposes.",
|
|
51
|
+
},
|
|
52
|
+
className: {
|
|
53
|
+
control: false,
|
|
54
|
+
description: "Additional class name for the component to use.",
|
|
55
|
+
},
|
|
56
|
+
component: { control: false },
|
|
57
|
+
imageAspectRatio: {
|
|
58
|
+
control: { type: "select" },
|
|
59
|
+
table: { defaultValue: { summary: "ImageRatios.Original" } },
|
|
60
|
+
options: ratiosEnumValues.options,
|
|
61
|
+
},
|
|
62
|
+
imageSize: {
|
|
63
|
+
control: { type: "select" },
|
|
64
|
+
table: { defaultValue: { summary: "ImageSizes.Default" } },
|
|
65
|
+
options: sizesEnumValues.options,
|
|
66
|
+
},
|
|
67
|
+
imageType: {
|
|
68
|
+
control: { type: "select" },
|
|
69
|
+
table: { defaultValue: { summary: "ImageTypes.Default" } },
|
|
70
|
+
options: typesEnumValues.options,
|
|
71
|
+
},
|
|
72
|
+
src: {
|
|
73
|
+
description:
|
|
74
|
+
"The src attribute is required, and contains the path to the image you want to embed.",
|
|
75
|
+
},
|
|
31
76
|
}}
|
|
32
77
|
/>
|
|
33
78
|
|
|
@@ -36,7 +81,7 @@ import { getCategory } from "../../utils/componentCategories";
|
|
|
36
81
|
| Component Version | DS Version |
|
|
37
82
|
| ----------------- | ---------- |
|
|
38
83
|
| Added | `0.0.6` |
|
|
39
|
-
| Latest | `0.25.
|
|
84
|
+
| Latest | `0.25.9` |
|
|
40
85
|
|
|
41
86
|
<Description of={Image} />
|
|
42
87
|
|
|
@@ -47,22 +92,34 @@ import { getCategory } from "../../utils/componentCategories";
|
|
|
47
92
|
|
|
48
93
|
<Canvas>
|
|
49
94
|
<Story
|
|
50
|
-
name="Image
|
|
95
|
+
name="Image with Controls"
|
|
51
96
|
args={{
|
|
97
|
+
additionalFigureStyles: undefined,
|
|
98
|
+
additionalImageStyles: undefined,
|
|
99
|
+
additionalWrapperStyles: undefined,
|
|
52
100
|
alt: "Alt text",
|
|
53
|
-
|
|
101
|
+
className: undefined,
|
|
102
|
+
component: undefined,
|
|
103
|
+
imageAspectRatio: "ImageRatios.TwoByOne",
|
|
54
104
|
imageCaption: "Image caption",
|
|
55
105
|
imageCredit: "Image credit",
|
|
56
|
-
imageSize: ImageSizes.Medium,
|
|
57
|
-
imageType: ImageTypes.Default,
|
|
106
|
+
imageSize: "ImageSizes.Medium",
|
|
107
|
+
imageType: "ImageTypes.Default",
|
|
58
108
|
src: "https://placeimg.com/400/300/animals",
|
|
59
109
|
}}
|
|
60
110
|
>
|
|
61
|
-
{(args) =>
|
|
111
|
+
{(args) => (
|
|
112
|
+
<Image
|
|
113
|
+
{...args}
|
|
114
|
+
imageAspectRatio={ratiosEnumValues.getValue(args.imageAspectRatio)}
|
|
115
|
+
imageSize={sizesEnumValues.getValue(args.imageSize)}
|
|
116
|
+
imageType={typesEnumValues.getValue(args.imageType)}
|
|
117
|
+
/>
|
|
118
|
+
)}
|
|
62
119
|
</Story>
|
|
63
120
|
</Canvas>
|
|
64
121
|
|
|
65
|
-
<ArgsTable story="Image
|
|
122
|
+
<ArgsTable story="Image with Controls" />
|
|
66
123
|
|
|
67
124
|
## Image Figure
|
|
68
125
|
|
|
@@ -102,28 +159,61 @@ Use the `ImageSizes` prop to set the desired size.
|
|
|
102
159
|
|
|
103
160
|
<Canvas>
|
|
104
161
|
<Story name="Image Sizes">
|
|
105
|
-
<
|
|
106
|
-
<
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
<
|
|
125
|
-
|
|
126
|
-
|
|
162
|
+
<SimpleGrid columns={1}>
|
|
163
|
+
<div style={{ textAlign: "center" }}>
|
|
164
|
+
<Heading id="ExtraExtraSmall" text="ImageSizes.ExtraExtraSmall" />
|
|
165
|
+
<Image
|
|
166
|
+
alt="Alt text"
|
|
167
|
+
imageCaption="64px"
|
|
168
|
+
imageSize={ImageSizes.ExtraExtraSmall}
|
|
169
|
+
src="https://placeimg.com/400/300/animals"
|
|
170
|
+
/>
|
|
171
|
+
</div>
|
|
172
|
+
<div style={{ textAlign: "center" }}>
|
|
173
|
+
<Heading id="ExtraSmall" text="ImageSizes.ExtraSmall" />
|
|
174
|
+
<Image
|
|
175
|
+
alt="Alt text"
|
|
176
|
+
imageCaption="96px"
|
|
177
|
+
imageSize={ImageSizes.ExtraSmall}
|
|
178
|
+
src="https://placeimg.com/400/300/animals"
|
|
179
|
+
/>
|
|
180
|
+
</div>
|
|
181
|
+
<div style={{ textAlign: "center" }}>
|
|
182
|
+
<Heading id="Small" text="ImageSizes.Small" />
|
|
183
|
+
<Image
|
|
184
|
+
alt="Alt text"
|
|
185
|
+
imageCaption="165px"
|
|
186
|
+
imageSize={ImageSizes.Small}
|
|
187
|
+
src="https://placeimg.com/400/300/animals"
|
|
188
|
+
/>
|
|
189
|
+
</div>
|
|
190
|
+
<div style={{ textAlign: "center" }}>
|
|
191
|
+
<Heading id="Medium" text="ImageSizes.Medium" />
|
|
192
|
+
<Image
|
|
193
|
+
alt="Alt text"
|
|
194
|
+
imageCaption="225px"
|
|
195
|
+
imageSize={ImageSizes.Medium}
|
|
196
|
+
src="https://placeimg.com/400/300/animals"
|
|
197
|
+
/>
|
|
198
|
+
</div>
|
|
199
|
+
<div style={{ textAlign: "center" }}>
|
|
200
|
+
<Heading id="Large" text="ImageSizes.Large" />
|
|
201
|
+
<Image
|
|
202
|
+
alt="Alt text"
|
|
203
|
+
imageCaption="360px"
|
|
204
|
+
imageSize={ImageSizes.Large}
|
|
205
|
+
src="https://placeimg.com/400/300/animals"
|
|
206
|
+
/>
|
|
207
|
+
</div>
|
|
208
|
+
<div style={{ textAlign: "center" }}>
|
|
209
|
+
<Heading id="Default" text="ImageSizes.Default" />
|
|
210
|
+
<Image
|
|
211
|
+
alt="Alt text"
|
|
212
|
+
imageCaption="100%"
|
|
213
|
+
src="https://placeimg.com/400/300/animals"
|
|
214
|
+
/>
|
|
215
|
+
</div>
|
|
216
|
+
</SimpleGrid>
|
|
127
217
|
</Story>
|
|
128
218
|
</Canvas>
|
|
129
219
|
|
|
@@ -137,56 +227,72 @@ in an element with a fixed width value.
|
|
|
137
227
|
|
|
138
228
|
<Canvas>
|
|
139
229
|
<Story name="Image Aspect Ratios">
|
|
140
|
-
<
|
|
141
|
-
<
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
<
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
230
|
+
<SimpleGrid columns={1}>
|
|
231
|
+
<div style={imageBlockStyles}>
|
|
232
|
+
<Heading id="fourbythree" text="ImageRatios.FourByThree" />
|
|
233
|
+
<Image
|
|
234
|
+
alt="Alt text"
|
|
235
|
+
imageAspectRatio={ImageRatios.FourByThree}
|
|
236
|
+
src="https://placeimg.com/400/300/animals"
|
|
237
|
+
/>
|
|
238
|
+
</div>
|
|
239
|
+
<div style={imageBlockStyles}>
|
|
240
|
+
<Heading id="onebytwo" text="ImageRatios.OneByTwo" />
|
|
241
|
+
<Image
|
|
242
|
+
alt="Alt text"
|
|
243
|
+
imageAspectRatio={ImageRatios.OneByTwo}
|
|
244
|
+
src="https://placeimg.com/400/300/animals"
|
|
245
|
+
/>
|
|
246
|
+
</div>
|
|
247
|
+
<div style={imageBlockStyles}>
|
|
248
|
+
<Heading id="original" text="ImageRatios.Original" />
|
|
249
|
+
<Image
|
|
250
|
+
alt="Alt text"
|
|
251
|
+
imageAspectRatio={ImageRatios.Original}
|
|
252
|
+
src="https://placeimg.com/400/300/animals"
|
|
253
|
+
/>
|
|
254
|
+
</div>
|
|
255
|
+
<div style={imageBlockStyles}>
|
|
256
|
+
<Heading id="sixteenbynine" text="ImageRatios.SixteenByNine" />
|
|
257
|
+
<Image
|
|
258
|
+
alt="Alt text"
|
|
259
|
+
imageAspectRatio={ImageRatios.SixteenByNine}
|
|
260
|
+
src="https://placeimg.com/400/300/animals"
|
|
261
|
+
/>
|
|
262
|
+
</div>
|
|
263
|
+
<div style={imageBlockStyles}>
|
|
264
|
+
<Heading id="square" text="ImageRatios.Square" />
|
|
265
|
+
<Image
|
|
266
|
+
alt="Alt text"
|
|
267
|
+
imageAspectRatio={ImageRatios.Square}
|
|
268
|
+
src="https://placeimg.com/400/300/animals"
|
|
269
|
+
/>
|
|
270
|
+
</div>
|
|
271
|
+
<div style={imageBlockStyles}>
|
|
272
|
+
<Heading id="threebyfour" text="ImageRatios.ThreeByFour" />
|
|
273
|
+
<Image
|
|
274
|
+
alt="Alt text"
|
|
275
|
+
imageAspectRatio={ImageRatios.ThreeByFour}
|
|
276
|
+
src="https://placeimg.com/400/300/animals"
|
|
277
|
+
/>
|
|
278
|
+
</div>
|
|
279
|
+
<div style={imageBlockStyles}>
|
|
280
|
+
<Heading id="threebytwo" text="ImageRatios.ThreeByTwo" />
|
|
281
|
+
<Image
|
|
282
|
+
alt="Alt text"
|
|
283
|
+
imageAspectRatio={ImageRatios.ThreeByTwo}
|
|
284
|
+
src="https://placeimg.com/400/300/animals"
|
|
285
|
+
/>
|
|
286
|
+
</div>
|
|
287
|
+
<div style={imageBlockStyles}>
|
|
288
|
+
<Heading id="twobyone" text="ImageRatios.TwoByOne" />
|
|
289
|
+
<Image
|
|
290
|
+
alt="Alt text"
|
|
291
|
+
imageAspectRatio={ImageRatios.TwoByOne}
|
|
292
|
+
src="https://placeimg.com/400/300/animals"
|
|
293
|
+
/>
|
|
294
|
+
</div>
|
|
295
|
+
</SimpleGrid>
|
|
190
296
|
</Story>
|
|
191
297
|
</Canvas>
|
|
192
298
|
|
|
@@ -200,21 +306,25 @@ in an element with a fixed width value.
|
|
|
200
306
|
|
|
201
307
|
<Canvas>
|
|
202
308
|
<Story name="Image Types">
|
|
203
|
-
<
|
|
204
|
-
<
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
309
|
+
<SimpleGrid columns={1}>
|
|
310
|
+
<div style={imageBlockStyles}>
|
|
311
|
+
<Heading id="default" text="ImageTypes.Default" />
|
|
312
|
+
<Image
|
|
313
|
+
alt="Alt text"
|
|
314
|
+
imageAspectRatio={ImageRatios.Square}
|
|
315
|
+
imageType={ImageTypes.Default}
|
|
316
|
+
src="https://placeimg.com/400/400/animals"
|
|
317
|
+
/>
|
|
318
|
+
</div>
|
|
319
|
+
<div style={imageBlockStyles}>
|
|
320
|
+
<Heading id="circle" text="ImageTypes.Circle" />
|
|
321
|
+
<Image
|
|
322
|
+
alt="Alt text"
|
|
323
|
+
imageAspectRatio={ImageRatios.Square}
|
|
324
|
+
imageType={ImageTypes.Circle}
|
|
325
|
+
src="https://placeimg.com/400/400/animals"
|
|
326
|
+
/>
|
|
327
|
+
</div>
|
|
328
|
+
</SimpleGrid>
|
|
219
329
|
</Story>
|
|
220
330
|
</Canvas>
|
|
@@ -74,6 +74,14 @@ describe("Image", () => {
|
|
|
74
74
|
const figCaption = renderer
|
|
75
75
|
.create(<Image src="test.png" alt="" imageCaption="Caption" />)
|
|
76
76
|
.toJSON();
|
|
77
|
+
const sizeExtraExtraSmall = renderer
|
|
78
|
+
.create(
|
|
79
|
+
<Image src="test.png" alt="" imageSize={ImageSizes.ExtraExtraSmall} />
|
|
80
|
+
)
|
|
81
|
+
.toJSON();
|
|
82
|
+
const sizeExtraSmall = renderer
|
|
83
|
+
.create(<Image src="test.png" alt="" imageSize={ImageSizes.ExtraSmall} />)
|
|
84
|
+
.toJSON();
|
|
77
85
|
const sizeSmall = renderer
|
|
78
86
|
.create(<Image src="test.png" alt="" imageSize={ImageSizes.Small} />)
|
|
79
87
|
.toJSON();
|
|
@@ -152,6 +160,8 @@ describe("Image", () => {
|
|
|
152
160
|
.toJSON();
|
|
153
161
|
expect(basic).toMatchSnapshot();
|
|
154
162
|
expect(figCaption).toMatchSnapshot();
|
|
163
|
+
expect(sizeExtraExtraSmall).toMatchSnapshot();
|
|
164
|
+
expect(sizeExtraSmall).toMatchSnapshot();
|
|
155
165
|
expect(sizeSmall).toMatchSnapshot();
|
|
156
166
|
expect(sizeMedium).toMatchSnapshot();
|
|
157
167
|
expect(sizeLarge).toMatchSnapshot();
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
1
|
import { Box, useMultiStyleConfig } from "@chakra-ui/react";
|
|
2
|
+
import * as React from "react";
|
|
3
3
|
|
|
4
4
|
import { ImageRatios, ImageSizes, ImageTypes } from "./ImageTypes";
|
|
5
5
|
|
|
6
6
|
interface ImageWrapperProps {
|
|
7
7
|
/** Optionally pass in additional Chakra-based styles. */
|
|
8
|
-
|
|
8
|
+
additionalWrapperStyles?: { [key: string]: any };
|
|
9
9
|
/** ClassName you can add in addition to 'image' */
|
|
10
10
|
className?: string;
|
|
11
11
|
/** Optional value to control the aspect ratio of the cartd image; default value is `square` */
|
|
@@ -15,6 +15,10 @@ interface ImageWrapperProps {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export interface ImageProps extends ImageWrapperProps {
|
|
18
|
+
/** Optionally pass in additional Chakra-based styles only for the figure. */
|
|
19
|
+
additionalFigureStyles?: { [key: string]: any };
|
|
20
|
+
/** Optionally pass in additional Chakra-based styles only for the image. */
|
|
21
|
+
additionalImageStyles?: { [key: string]: any };
|
|
18
22
|
/** Alternate text description of the image */
|
|
19
23
|
alt: string;
|
|
20
24
|
/** Custom image component */
|
|
@@ -33,7 +37,7 @@ export interface ImageProps extends ImageWrapperProps {
|
|
|
33
37
|
|
|
34
38
|
function ImageWrapper(props: React.PropsWithChildren<ImageWrapperProps>) {
|
|
35
39
|
const {
|
|
36
|
-
|
|
40
|
+
additionalWrapperStyles = {},
|
|
37
41
|
className = "",
|
|
38
42
|
children,
|
|
39
43
|
imageAspectRatio = ImageRatios.Original,
|
|
@@ -45,19 +49,21 @@ function ImageWrapper(props: React.PropsWithChildren<ImageWrapperProps>) {
|
|
|
45
49
|
});
|
|
46
50
|
return (
|
|
47
51
|
<Box
|
|
48
|
-
__css={{ ...styles, ...additionalStyles }}
|
|
49
52
|
className={`the-wrap ${className}`}
|
|
53
|
+
__css={{ ...styles, ...additionalWrapperStyles }}
|
|
50
54
|
>
|
|
51
|
-
<Box __css={styles.crop}
|
|
55
|
+
<Box className="the-crop" __css={styles.crop}>
|
|
52
56
|
{children}
|
|
53
57
|
</Box>
|
|
54
58
|
</Box>
|
|
55
59
|
);
|
|
56
60
|
}
|
|
57
61
|
|
|
58
|
-
export default function Image(props:
|
|
62
|
+
export default function Image(props: ImageProps) {
|
|
59
63
|
const {
|
|
60
|
-
|
|
64
|
+
additionalFigureStyles = {},
|
|
65
|
+
additionalImageStyles = {},
|
|
66
|
+
additionalWrapperStyles = {},
|
|
61
67
|
alt,
|
|
62
68
|
className = "",
|
|
63
69
|
component,
|
|
@@ -81,14 +87,19 @@ export default function Image(props: React.ComponentProps<"img"> & ImageProps) {
|
|
|
81
87
|
const imageComponent: JSX.Element = component ? (
|
|
82
88
|
component
|
|
83
89
|
) : (
|
|
84
|
-
<Box
|
|
90
|
+
<Box
|
|
91
|
+
as="img"
|
|
92
|
+
src={src}
|
|
93
|
+
alt={alt}
|
|
94
|
+
__css={{ ...styles.img, ...additionalImageStyles }}
|
|
95
|
+
/>
|
|
85
96
|
);
|
|
86
97
|
const finalImage = useImageWrapper ? (
|
|
87
98
|
<ImageWrapper
|
|
88
99
|
className={className}
|
|
89
100
|
imageAspectRatio={imageAspectRatio}
|
|
90
101
|
imageSize={imageSize}
|
|
91
|
-
|
|
102
|
+
additionalWrapperStyles={additionalWrapperStyles}
|
|
92
103
|
>
|
|
93
104
|
{imageComponent}
|
|
94
105
|
</ImageWrapper>
|
|
@@ -97,7 +108,7 @@ export default function Image(props: React.ComponentProps<"img"> & ImageProps) {
|
|
|
97
108
|
);
|
|
98
109
|
|
|
99
110
|
return imageCaption || imageCredit ? (
|
|
100
|
-
<Box as="figure" __css={styles.figure}>
|
|
111
|
+
<Box as="figure" __css={{ ...styles.figure, ...additionalFigureStyles }}>
|
|
101
112
|
{finalImage}
|
|
102
113
|
<Box as="figcaption" __css={styles.figcaption}>
|
|
103
114
|
{imageCaption && (
|
|
@@ -54,6 +54,22 @@ exports[`Image Renders the UI snapshot correctly 5`] = `
|
|
|
54
54
|
`;
|
|
55
55
|
|
|
56
56
|
exports[`Image Renders the UI snapshot correctly 6`] = `
|
|
57
|
+
<img
|
|
58
|
+
alt=""
|
|
59
|
+
className="css-0"
|
|
60
|
+
src="test.png"
|
|
61
|
+
/>
|
|
62
|
+
`;
|
|
63
|
+
|
|
64
|
+
exports[`Image Renders the UI snapshot correctly 7`] = `
|
|
65
|
+
<img
|
|
66
|
+
alt=""
|
|
67
|
+
className="css-0"
|
|
68
|
+
src="test.png"
|
|
69
|
+
/>
|
|
70
|
+
`;
|
|
71
|
+
|
|
72
|
+
exports[`Image Renders the UI snapshot correctly 8`] = `
|
|
57
73
|
<div
|
|
58
74
|
className="the-wrap css-0"
|
|
59
75
|
>
|
|
@@ -69,7 +85,7 @@ exports[`Image Renders the UI snapshot correctly 6`] = `
|
|
|
69
85
|
</div>
|
|
70
86
|
`;
|
|
71
87
|
|
|
72
|
-
exports[`Image Renders the UI snapshot correctly
|
|
88
|
+
exports[`Image Renders the UI snapshot correctly 9`] = `
|
|
73
89
|
<div
|
|
74
90
|
className="the-wrap css-0"
|
|
75
91
|
>
|
|
@@ -85,7 +101,7 @@ exports[`Image Renders the UI snapshot correctly 7`] = `
|
|
|
85
101
|
</div>
|
|
86
102
|
`;
|
|
87
103
|
|
|
88
|
-
exports[`Image Renders the UI snapshot correctly
|
|
104
|
+
exports[`Image Renders the UI snapshot correctly 10`] = `
|
|
89
105
|
<img
|
|
90
106
|
alt=""
|
|
91
107
|
className="css-0"
|
|
@@ -93,7 +109,7 @@ exports[`Image Renders the UI snapshot correctly 8`] = `
|
|
|
93
109
|
/>
|
|
94
110
|
`;
|
|
95
111
|
|
|
96
|
-
exports[`Image Renders the UI snapshot correctly
|
|
112
|
+
exports[`Image Renders the UI snapshot correctly 11`] = `
|
|
97
113
|
<div
|
|
98
114
|
className="the-wrap css-0"
|
|
99
115
|
>
|
|
@@ -109,7 +125,7 @@ exports[`Image Renders the UI snapshot correctly 9`] = `
|
|
|
109
125
|
</div>
|
|
110
126
|
`;
|
|
111
127
|
|
|
112
|
-
exports[`Image Renders the UI snapshot correctly
|
|
128
|
+
exports[`Image Renders the UI snapshot correctly 12`] = `
|
|
113
129
|
<div
|
|
114
130
|
className="the-wrap css-0"
|
|
115
131
|
>
|
|
@@ -125,7 +141,7 @@ exports[`Image Renders the UI snapshot correctly 10`] = `
|
|
|
125
141
|
</div>
|
|
126
142
|
`;
|
|
127
143
|
|
|
128
|
-
exports[`Image Renders the UI snapshot correctly
|
|
144
|
+
exports[`Image Renders the UI snapshot correctly 13`] = `
|
|
129
145
|
<div
|
|
130
146
|
className="the-wrap css-0"
|
|
131
147
|
>
|
|
@@ -141,7 +157,7 @@ exports[`Image Renders the UI snapshot correctly 11`] = `
|
|
|
141
157
|
</div>
|
|
142
158
|
`;
|
|
143
159
|
|
|
144
|
-
exports[`Image Renders the UI snapshot correctly
|
|
160
|
+
exports[`Image Renders the UI snapshot correctly 14`] = `
|
|
145
161
|
<div
|
|
146
162
|
className="the-wrap css-0"
|
|
147
163
|
>
|
|
@@ -157,7 +173,7 @@ exports[`Image Renders the UI snapshot correctly 12`] = `
|
|
|
157
173
|
</div>
|
|
158
174
|
`;
|
|
159
175
|
|
|
160
|
-
exports[`Image Renders the UI snapshot correctly
|
|
176
|
+
exports[`Image Renders the UI snapshot correctly 15`] = `
|
|
161
177
|
<div
|
|
162
178
|
className="the-wrap css-0"
|
|
163
179
|
>
|
|
@@ -173,7 +189,7 @@ exports[`Image Renders the UI snapshot correctly 13`] = `
|
|
|
173
189
|
</div>
|
|
174
190
|
`;
|
|
175
191
|
|
|
176
|
-
exports[`Image Renders the UI snapshot correctly
|
|
192
|
+
exports[`Image Renders the UI snapshot correctly 16`] = `
|
|
177
193
|
<div
|
|
178
194
|
className="the-wrap css-0"
|
|
179
195
|
>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import { Box } from "@chakra-ui/react";
|
|
1
2
|
import {
|
|
2
|
-
Meta,
|
|
3
|
-
Story,
|
|
4
|
-
Canvas,
|
|
5
3
|
ArgsTable,
|
|
4
|
+
Canvas,
|
|
6
5
|
Description,
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
Meta,
|
|
7
|
+
Story,
|
|
8
|
+
} from "@storybook/addon-docs";
|
|
9
9
|
|
|
10
10
|
import Label from "./Label";
|
|
11
11
|
import { getCategory } from "../../utils/componentCategories";
|
|
@@ -17,8 +17,15 @@ import { getCategory } from "../../utils/componentCategories";
|
|
|
17
17
|
jest: ["Label.test.tsx"],
|
|
18
18
|
}}
|
|
19
19
|
argTypes={{
|
|
20
|
-
className: {
|
|
21
|
-
id: {
|
|
20
|
+
className: { control: false },
|
|
21
|
+
id: { control: false },
|
|
22
|
+
optReqFlag: {
|
|
23
|
+
control: { type: "select" },
|
|
24
|
+
options: ["Required", "Optional", ""],
|
|
25
|
+
},
|
|
26
|
+
text: {
|
|
27
|
+
description: "Only used for Storybook",
|
|
28
|
+
},
|
|
22
29
|
}}
|
|
23
30
|
/>
|
|
24
31
|
|
|
@@ -27,32 +34,26 @@ import { getCategory } from "../../utils/componentCategories";
|
|
|
27
34
|
| Component Version | DS Version |
|
|
28
35
|
| ----------------- | ---------- |
|
|
29
36
|
| Added | `0.0.10` |
|
|
30
|
-
| Latest | `0.25.
|
|
37
|
+
| Latest | `0.25.8` |
|
|
31
38
|
|
|
32
39
|
<Description of={Label} />
|
|
33
40
|
|
|
34
41
|
<Canvas>
|
|
35
42
|
<Story
|
|
36
|
-
name="Label"
|
|
43
|
+
name="Label with Controls"
|
|
37
44
|
args={{
|
|
38
|
-
|
|
39
|
-
optReqFlag: "Required",
|
|
45
|
+
className: undefined,
|
|
40
46
|
htmlFor: "id-of-input-element",
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
control: {
|
|
45
|
-
type: "select",
|
|
46
|
-
},
|
|
47
|
-
options: ["Required", "Optional", ""],
|
|
48
|
-
},
|
|
47
|
+
id: "label-id",
|
|
48
|
+
optReqFlag: "Required",
|
|
49
|
+
text: "A label for a villager.",
|
|
49
50
|
}}
|
|
50
51
|
>
|
|
51
52
|
{(args) => <Label {...args}>{args.text}</Label>}
|
|
52
53
|
</Story>
|
|
53
54
|
</Canvas>
|
|
54
55
|
|
|
55
|
-
<ArgsTable story="Label" />
|
|
56
|
+
<ArgsTable story="Label with Controls" />
|
|
56
57
|
|
|
57
58
|
## Required/Optional helper text
|
|
58
59
|
|