@nypl/design-system-react-components 0.25.5 → 0.25.9
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 +91 -1
- package/README.md +1 -1
- package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +1 -0
- 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 +3 -2
- package/dist/components/Form/Form.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 +2 -2
- 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 +3 -2
- package/dist/components/SearchBar/SearchBar.d.ts +10 -2
- 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 +23 -0
- package/dist/components/Template/Template.d.ts +8 -3
- 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 +5989 -5490
- 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 +6057 -5551
- package/dist/design-system-react-components.esm.js.map +1 -1
- package/dist/index.d.ts +11 -4
- package/dist/styles.css +2 -2
- package/dist/theme/components/breadcrumb.d.ts +9 -0
- 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 +47 -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 +2 -3
- package/src/__tests__/utils/utils.test.ts +23 -1
- package/src/components/Accordion/Accordion.stories.mdx +15 -14
- 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 +50 -14
- package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +20 -0
- package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +1 -0
- package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +198 -0
- 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 +26 -13
- 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/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 +8 -6
- package/src/components/DatePicker/DatePicker.tsx +10 -6
- package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +41 -22
- package/src/components/Fieldset/Fieldset.stories.mdx +19 -8
- package/src/components/Form/Form.stories.mdx +49 -41
- package/src/components/Form/Form.tsx +5 -4
- 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 +9 -8
- package/src/components/HorizontalRule/HorizontalRule.tsx +2 -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 +36 -24
- 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 +18 -8
- package/src/components/Pagination/Pagination.tsx +1 -1
- 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/RadioGroup/RadioGroup.stories.mdx +50 -16
- package/src/components/RadioGroup/RadioGroup.tsx +15 -11
- package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +6 -3
- package/src/components/SearchBar/SearchBar.Test.tsx +114 -22
- package/src/components/SearchBar/SearchBar.stories.mdx +111 -33
- package/src/components/SearchBar/SearchBar.tsx +57 -33
- package/src/components/Select/Select.stories.mdx +177 -66
- package/src/components/Select/Select.test.tsx +2 -2
- package/src/components/Select/Select.tsx +22 -12
- 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 +60 -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 +66 -0
- package/src/components/Table/Table.test.tsx +60 -0
- package/src/components/Table/Table.tsx +116 -0
- package/src/components/Tabs/Tabs.stories.mdx +19 -13
- package/src/components/Tabs/Tabs.test.tsx +1 -1
- package/src/components/Template/Template.stories.mdx +57 -49
- package/src/components/Template/Template.test.tsx +65 -5
- package/src/components/Template/Template.tsx +35 -5
- package/src/components/Template/__snapshots__/Template.test.tsx.snap +76 -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 +13 -4
- 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 +14 -4
- 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 +50 -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 +4 -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,16 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
|
-
Meta,
|
|
3
|
-
Story,
|
|
4
|
-
Canvas,
|
|
5
2
|
ArgsTable,
|
|
3
|
+
Canvas,
|
|
6
4
|
Description,
|
|
7
|
-
|
|
5
|
+
Meta,
|
|
6
|
+
Story,
|
|
7
|
+
} from "@storybook/addon-docs";
|
|
8
8
|
import { withDesign } from "storybook-addon-designs";
|
|
9
9
|
|
|
10
|
-
import { getCategory } from "../../utils/componentCategories";
|
|
11
10
|
import DatePicker from "./DatePicker";
|
|
12
11
|
import { DatePickerTypes } from "./DatePickerTypes";
|
|
12
|
+
import { getCategory } from "../../utils/componentCategories";
|
|
13
13
|
import DSProvider from "../../theme/provider";
|
|
14
|
+
import { getStorybookEnumValues } from "../../utils/utils";
|
|
15
|
+
|
|
16
|
+
export const enumValues = getStorybookEnumValues(
|
|
17
|
+
DatePickerTypes,
|
|
18
|
+
"DatePickerTypes"
|
|
19
|
+
);
|
|
14
20
|
|
|
15
21
|
<Meta
|
|
16
22
|
title={getCategory("DatePicker")}
|
|
@@ -19,18 +25,51 @@ import DSProvider from "../../theme/provider";
|
|
|
19
25
|
parameters={{
|
|
20
26
|
design: {
|
|
21
27
|
type: "figma",
|
|
22
|
-
url:
|
|
23
|
-
"https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=11689%3A0",
|
|
28
|
+
url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=11689%3A0",
|
|
24
29
|
},
|
|
25
30
|
jest: ["DatePicker.test.tsx"],
|
|
26
31
|
}}
|
|
27
32
|
argTypes={{
|
|
28
|
-
className: {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
className: { control: false },
|
|
34
|
+
dateFormat: {
|
|
35
|
+
table: { defaultValue: { summary: "yyyy-MM-dd" } },
|
|
36
|
+
},
|
|
37
|
+
dateType: {
|
|
38
|
+
control: { type: "select" },
|
|
39
|
+
table: { defaultValue: { summary: "DatePickerTypes.Full" } },
|
|
40
|
+
options: enumValues.options,
|
|
41
|
+
},
|
|
42
|
+
id: { control: false },
|
|
43
|
+
isDateRange: {
|
|
44
|
+
table: { defaultValue: { summary: false } },
|
|
45
|
+
},
|
|
46
|
+
isDisabled: {
|
|
47
|
+
table: { defaultValue: { summary: false } },
|
|
48
|
+
},
|
|
49
|
+
isInvalid: {
|
|
50
|
+
table: { defaultValue: { summary: false } },
|
|
51
|
+
},
|
|
52
|
+
isRequired: {
|
|
53
|
+
table: { defaultValue: { summary: false } },
|
|
54
|
+
},
|
|
55
|
+
key: { table: { disable: true } },
|
|
56
|
+
labelText: {
|
|
57
|
+
table: { defaultValue: { summary: "From" } },
|
|
58
|
+
},
|
|
59
|
+
nameFrom: { control: false },
|
|
60
|
+
nameTo: { control: false },
|
|
61
|
+
onChange: { control: false },
|
|
62
|
+
ref: { table: { disable: true } },
|
|
63
|
+
refTo: { control: false },
|
|
64
|
+
showHelperInvalidText: {
|
|
65
|
+
table: { defaultValue: { summary: true } },
|
|
66
|
+
},
|
|
67
|
+
showLabel: {
|
|
68
|
+
table: { defaultValue: { summary: true } },
|
|
69
|
+
},
|
|
70
|
+
showOptReqLabel: {
|
|
71
|
+
table: { defaultValue: { summary: true } },
|
|
72
|
+
},
|
|
34
73
|
}}
|
|
35
74
|
/>
|
|
36
75
|
|
|
@@ -39,7 +78,7 @@ import DSProvider from "../../theme/provider";
|
|
|
39
78
|
| Component Version | DS Version |
|
|
40
79
|
| ----------------- | ---------- |
|
|
41
80
|
| Added | `0.24.0` |
|
|
42
|
-
| Latest | `0.25.
|
|
81
|
+
| Latest | `0.25.9` |
|
|
43
82
|
|
|
44
83
|
<Description of={DatePicker} />
|
|
45
84
|
|
|
@@ -49,13 +88,15 @@ also be added through props.
|
|
|
49
88
|
|
|
50
89
|
<Canvas withToolbar>
|
|
51
90
|
<Story
|
|
52
|
-
name="DatePicker"
|
|
91
|
+
name="DatePicker with Controls"
|
|
53
92
|
args={{
|
|
93
|
+
className: undefined,
|
|
54
94
|
dateFormat: "yyyy-MM-dd",
|
|
55
|
-
dateType: DatePickerTypes.Full,
|
|
95
|
+
dateType: "DatePickerTypes.Full",
|
|
56
96
|
helperText: "Note that the Library may be closed on Sundays.",
|
|
57
97
|
helperTextFrom: "Select start date.",
|
|
58
98
|
helperTextTo: "Select end date.",
|
|
99
|
+
id: "datePicker-id",
|
|
59
100
|
initialDate: "1/1/2021",
|
|
60
101
|
initialDateTo: "1/30/2021",
|
|
61
102
|
invalidText: "Please select a valid date.",
|
|
@@ -68,16 +109,20 @@ also be added through props.
|
|
|
68
109
|
minDate: "1/1/2021",
|
|
69
110
|
nameFrom: "visit-dates-from",
|
|
70
111
|
nameTo: "visit-dates-to",
|
|
112
|
+
onChange: undefined,
|
|
113
|
+
refTo: undefined,
|
|
71
114
|
showHelperInvalidText: true,
|
|
72
115
|
showLabel: true,
|
|
73
116
|
showOptReqLabel: true,
|
|
74
117
|
}}
|
|
75
118
|
>
|
|
76
|
-
{(args) =>
|
|
119
|
+
{(args) => (
|
|
120
|
+
<DatePicker {...args} dateType={enumValues.getValue(args.dateType)} />
|
|
121
|
+
)}
|
|
77
122
|
</Story>
|
|
78
123
|
</Canvas>
|
|
79
124
|
|
|
80
|
-
<ArgsTable story="DatePicker" />
|
|
125
|
+
<ArgsTable story="DatePicker with Controls" />
|
|
81
126
|
|
|
82
127
|
## Date Range
|
|
83
128
|
|
|
@@ -368,7 +368,7 @@ describe("DatePicker", () => {
|
|
|
368
368
|
// Note: Have to add an initial date so that the snapshot tests always
|
|
369
369
|
// pass. Otherwise, it'll use the _current_ date which changes
|
|
370
370
|
// based on the day it is tested and is not what we want.
|
|
371
|
-
it
|
|
371
|
+
it("renders the UI snapshot correctly", () => {
|
|
372
372
|
const basic = renderer
|
|
373
373
|
.create(
|
|
374
374
|
<DatePicker
|
|
@@ -805,10 +805,12 @@ describe("DatePicker", () => {
|
|
|
805
805
|
const input = screen.getByLabelText(
|
|
806
806
|
/Select the year you want to visit NYPL/i
|
|
807
807
|
);
|
|
808
|
-
const
|
|
808
|
+
const mockYear = 2021;
|
|
809
809
|
|
|
810
810
|
expect(
|
|
811
|
-
screen.queryByText(
|
|
811
|
+
screen.queryByText(
|
|
812
|
+
`${(mockYear as any) - 4} - ${(mockYear as any) + 7}`
|
|
813
|
+
)
|
|
812
814
|
).not.toBeInTheDocument();
|
|
813
815
|
|
|
814
816
|
userEvent.click(input);
|
|
@@ -817,16 +819,16 @@ describe("DatePicker", () => {
|
|
|
817
819
|
// before the current year to seven years after the current year. For year
|
|
818
820
|
// 2021, it will display 2017 - 2028.
|
|
819
821
|
expect(
|
|
820
|
-
screen.getByText(`${(
|
|
822
|
+
screen.getByText(`${(mockYear as any) - 4} - ${(mockYear as any) + 7}`)
|
|
821
823
|
).toBeInTheDocument();
|
|
822
824
|
// This calendar displays 12 years to select from.
|
|
823
825
|
// It should display the four previous years from the current year.
|
|
824
826
|
for (let i = 4; i > 0; i--) {
|
|
825
|
-
expect(screen.getByText((
|
|
827
|
+
expect(screen.getByText((mockYear as any) - i)).toBeInTheDocument();
|
|
826
828
|
}
|
|
827
829
|
// It should display the eight next years from the current year.
|
|
828
830
|
for (let i = 0; i < 8; i++) {
|
|
829
|
-
expect(screen.getByText((
|
|
831
|
+
expect(screen.getByText((mockYear as any) + i)).toBeInTheDocument();
|
|
830
832
|
}
|
|
831
833
|
});
|
|
832
834
|
|
|
@@ -5,7 +5,9 @@ import { DatePickerTypes } from "./DatePickerTypes";
|
|
|
5
5
|
import Fieldset from "../Fieldset/Fieldset";
|
|
6
6
|
import { FormRow, FormField } from "../Form/Form";
|
|
7
7
|
import { FormSpacing } from "../Form/FormTypes";
|
|
8
|
-
import HelperErrorText
|
|
8
|
+
import HelperErrorText, {
|
|
9
|
+
HelperErrorTextType,
|
|
10
|
+
} from "../HelperErrorText/HelperErrorText";
|
|
9
11
|
import TextInput, {
|
|
10
12
|
InputProps,
|
|
11
13
|
TextInputRefType,
|
|
@@ -74,7 +76,7 @@ export interface DatePickerProps extends DatePickerWrapperProps {
|
|
|
74
76
|
/** DatePicker date types that can be rendered. */
|
|
75
77
|
dateType?: DatePickerTypes;
|
|
76
78
|
/** Populates the `HelperErrorText` component in this component. */
|
|
77
|
-
helperText?:
|
|
79
|
+
helperText?: HelperErrorTextType;
|
|
78
80
|
/** Populates the `HelperErrorText` component in the "From" `TextInput` component. */
|
|
79
81
|
helperTextFrom?: string;
|
|
80
82
|
/** Populates the `HelperErrorText` component in the "To" `TextInput` component. */
|
|
@@ -86,7 +88,7 @@ export interface DatePickerProps extends DatePickerWrapperProps {
|
|
|
86
88
|
initialDateTo?: string;
|
|
87
89
|
/** Populates the `HelperErrorText` error state for both "From"
|
|
88
90
|
* and "To" input components. */
|
|
89
|
-
invalidText?:
|
|
91
|
+
invalidText?: HelperErrorTextType;
|
|
90
92
|
/** Adds the 'disabled' property to the input element(s). */
|
|
91
93
|
isDisabled?: boolean;
|
|
92
94
|
/** Adds 'isInvalid' styling. */
|
|
@@ -415,9 +417,11 @@ const DatePicker = React.forwardRef<TextInputRefType, DatePickerProps>(
|
|
|
415
417
|
)}
|
|
416
418
|
</DateRangeRow>
|
|
417
419
|
{helperText && isDateRange && showHelperInvalidText && (
|
|
418
|
-
<HelperErrorText
|
|
419
|
-
{
|
|
420
|
-
|
|
420
|
+
<HelperErrorText
|
|
421
|
+
id={`${id}-helper-text`}
|
|
422
|
+
isInvalid={false}
|
|
423
|
+
text={helperText}
|
|
424
|
+
/>
|
|
421
425
|
)}
|
|
422
426
|
</DatePickerWrapper>
|
|
423
427
|
);
|
|
@@ -363,11 +363,14 @@ exports[`DatePicker Date Range renders the UI snapshot correctly 4`] = `
|
|
|
363
363
|
aria-atomic={true}
|
|
364
364
|
aria-live="polite"
|
|
365
365
|
className=" css-0"
|
|
366
|
+
dangerouslySetInnerHTML={
|
|
367
|
+
Object {
|
|
368
|
+
"__html": "Please select a valid date.",
|
|
369
|
+
}
|
|
370
|
+
}
|
|
366
371
|
data-isinvalid={true}
|
|
367
372
|
id="invalid-start-helperText"
|
|
368
|
-
|
|
369
|
-
Please select a valid date.
|
|
370
|
-
</div>
|
|
373
|
+
/>
|
|
371
374
|
</div>
|
|
372
375
|
</div>
|
|
373
376
|
</div>
|
|
@@ -415,11 +418,14 @@ exports[`DatePicker Date Range renders the UI snapshot correctly 4`] = `
|
|
|
415
418
|
aria-atomic={true}
|
|
416
419
|
aria-live="polite"
|
|
417
420
|
className=" css-0"
|
|
421
|
+
dangerouslySetInnerHTML={
|
|
422
|
+
Object {
|
|
423
|
+
"__html": "Please select a valid date.",
|
|
424
|
+
}
|
|
425
|
+
}
|
|
418
426
|
data-isinvalid={true}
|
|
419
427
|
id="invalid-end-helperText"
|
|
420
|
-
|
|
421
|
-
Please select a valid date.
|
|
422
|
-
</div>
|
|
428
|
+
/>
|
|
423
429
|
</div>
|
|
424
430
|
</div>
|
|
425
431
|
</div>
|
|
@@ -430,11 +436,14 @@ exports[`DatePicker Date Range renders the UI snapshot correctly 4`] = `
|
|
|
430
436
|
aria-atomic={true}
|
|
431
437
|
aria-live="off"
|
|
432
438
|
className=" css-0"
|
|
439
|
+
dangerouslySetInnerHTML={
|
|
440
|
+
Object {
|
|
441
|
+
"__html": "Note that the Library may be closed on Sundays.",
|
|
442
|
+
}
|
|
443
|
+
}
|
|
433
444
|
data-isinvalid={false}
|
|
434
445
|
id="invalid-helper-text"
|
|
435
|
-
|
|
436
|
-
Note that the Library may be closed on Sundays.
|
|
437
|
-
</div>
|
|
446
|
+
/>
|
|
438
447
|
</fieldset>
|
|
439
448
|
</div>
|
|
440
449
|
`;
|
|
@@ -539,11 +548,14 @@ exports[`DatePicker Date Range renders the UI snapshot correctly 5`] = `
|
|
|
539
548
|
aria-atomic={true}
|
|
540
549
|
aria-live="off"
|
|
541
550
|
className=" css-0"
|
|
551
|
+
dangerouslySetInnerHTML={
|
|
552
|
+
Object {
|
|
553
|
+
"__html": "Note that the Library may be closed on Sundays.",
|
|
554
|
+
}
|
|
555
|
+
}
|
|
542
556
|
data-isinvalid={false}
|
|
543
557
|
id="disabled-helper-text"
|
|
544
|
-
|
|
545
|
-
Note that the Library may be closed on Sundays.
|
|
546
|
-
</div>
|
|
558
|
+
/>
|
|
547
559
|
</fieldset>
|
|
548
560
|
</div>
|
|
549
561
|
`;
|
|
@@ -587,6 +599,7 @@ exports[`DatePicker Single input renders the UI snapshot correctly 1`] = `
|
|
|
587
599
|
onClick={[Function]}
|
|
588
600
|
onFocus={[Function]}
|
|
589
601
|
required={false}
|
|
602
|
+
step={null}
|
|
590
603
|
type="text"
|
|
591
604
|
value="1988-01-02"
|
|
592
605
|
/>
|
|
@@ -625,12 +638,9 @@ exports[`DatePicker Single input renders the UI snapshot correctly 2`] = `
|
|
|
625
638
|
onClick={[Function]}
|
|
626
639
|
onFocus={[Function]}
|
|
627
640
|
required={false}
|
|
641
|
+
step={null}
|
|
628
642
|
type="text"
|
|
629
|
-
<<<<<<< HEAD
|
|
630
|
-
value="2021-11-17"
|
|
631
|
-
=======
|
|
632
643
|
value="1988-01-02"
|
|
633
|
-
>>>>>>> development
|
|
634
644
|
/>
|
|
635
645
|
</div>
|
|
636
646
|
</div>
|
|
@@ -678,6 +688,7 @@ exports[`DatePicker Single input renders the UI snapshot correctly 3`] = `
|
|
|
678
688
|
onClick={[Function]}
|
|
679
689
|
onFocus={[Function]}
|
|
680
690
|
required={false}
|
|
691
|
+
step={null}
|
|
681
692
|
type="text"
|
|
682
693
|
value="1988/02/01"
|
|
683
694
|
/>
|
|
@@ -729,6 +740,7 @@ exports[`DatePicker Single input renders the UI snapshot correctly 4`] = `
|
|
|
729
740
|
onClick={[Function]}
|
|
730
741
|
onFocus={[Function]}
|
|
731
742
|
required={false}
|
|
743
|
+
step={null}
|
|
732
744
|
type="text"
|
|
733
745
|
value="1988-01-02"
|
|
734
746
|
/>
|
|
@@ -740,11 +752,14 @@ exports[`DatePicker Single input renders the UI snapshot correctly 4`] = `
|
|
|
740
752
|
aria-atomic={true}
|
|
741
753
|
aria-live="polite"
|
|
742
754
|
className=" css-0"
|
|
755
|
+
dangerouslySetInnerHTML={
|
|
756
|
+
Object {
|
|
757
|
+
"__html": "Please select a valid date.",
|
|
758
|
+
}
|
|
759
|
+
}
|
|
743
760
|
data-isinvalid={true}
|
|
744
761
|
id="invalid-start-helperText"
|
|
745
|
-
|
|
746
|
-
Please select a valid date.
|
|
747
|
-
</div>
|
|
762
|
+
/>
|
|
748
763
|
</div>
|
|
749
764
|
</div>
|
|
750
765
|
</div>
|
|
@@ -793,6 +808,7 @@ exports[`DatePicker Single input renders the UI snapshot correctly 5`] = `
|
|
|
793
808
|
onClick={[Function]}
|
|
794
809
|
onFocus={[Function]}
|
|
795
810
|
required={false}
|
|
811
|
+
step={null}
|
|
796
812
|
type="text"
|
|
797
813
|
value="1988-01-02"
|
|
798
814
|
/>
|
|
@@ -804,11 +820,14 @@ exports[`DatePicker Single input renders the UI snapshot correctly 5`] = `
|
|
|
804
820
|
aria-atomic={true}
|
|
805
821
|
aria-live="off"
|
|
806
822
|
className=" css-0"
|
|
823
|
+
dangerouslySetInnerHTML={
|
|
824
|
+
Object {
|
|
825
|
+
"__html": "Note that the Library may be closed on Sundays.",
|
|
826
|
+
}
|
|
827
|
+
}
|
|
807
828
|
data-isinvalid={false}
|
|
808
829
|
id="disabled-start-helperText"
|
|
809
|
-
|
|
810
|
-
Note that the Library may be closed on Sundays.
|
|
811
|
-
</div>
|
|
830
|
+
/>
|
|
812
831
|
</div>
|
|
813
832
|
</div>
|
|
814
833
|
</div>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
|
-
Meta,
|
|
3
|
-
Story,
|
|
4
|
-
Canvas,
|
|
5
2
|
ArgsTable,
|
|
3
|
+
Canvas,
|
|
6
4
|
Description,
|
|
7
|
-
|
|
5
|
+
Meta,
|
|
6
|
+
Story,
|
|
7
|
+
} from "@storybook/addon-docs";
|
|
8
8
|
import { withDesign } from "storybook-addon-designs";
|
|
9
9
|
|
|
10
10
|
import Fieldset from "./Fieldset";
|
|
@@ -20,8 +20,17 @@ import DSProvider from "../../theme/provider";
|
|
|
20
20
|
}}
|
|
21
21
|
argTypes={{
|
|
22
22
|
children: { table: { disable: true } },
|
|
23
|
-
className: {
|
|
24
|
-
id: {
|
|
23
|
+
className: { control: false },
|
|
24
|
+
id: { control: false },
|
|
25
|
+
isLegendHidden: {
|
|
26
|
+
table: { defaultValue: { summary: false } },
|
|
27
|
+
},
|
|
28
|
+
isRequired: {
|
|
29
|
+
table: { defaultValue: { summary: false } },
|
|
30
|
+
},
|
|
31
|
+
optReqFlag: {
|
|
32
|
+
table: { defaultValue: { summary: false } },
|
|
33
|
+
},
|
|
25
34
|
}}
|
|
26
35
|
/>
|
|
27
36
|
|
|
@@ -36,8 +45,10 @@ import DSProvider from "../../theme/provider";
|
|
|
36
45
|
|
|
37
46
|
<Canvas withToolbar>
|
|
38
47
|
<Story
|
|
39
|
-
name="
|
|
48
|
+
name="Fieldset"
|
|
40
49
|
args={{
|
|
50
|
+
className: undefined,
|
|
51
|
+
id: "fieldset-id",
|
|
41
52
|
isLegendHidden: false,
|
|
42
53
|
isRequired: false,
|
|
43
54
|
legendText: "This is the legend text",
|
|
@@ -52,4 +63,4 @@ import DSProvider from "../../theme/provider";
|
|
|
52
63
|
</Story>
|
|
53
64
|
</Canvas>
|
|
54
65
|
|
|
55
|
-
<ArgsTable story="
|
|
66
|
+
<ArgsTable story="Fieldset" />
|
|
@@ -1,31 +1,33 @@
|
|
|
1
|
+
import { action } from "@storybook/addon-actions";
|
|
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 { getCategory } from "../../utils/componentCategories";
|
|
10
10
|
|
|
11
|
-
import
|
|
12
|
-
import { FormSpacing } from "./FormTypes";
|
|
13
|
-
import TextInput from "../TextInput/TextInput";
|
|
14
|
-
import Radio from "../Radio/Radio";
|
|
15
|
-
import RadioGroup from "../RadioGroup/RadioGroup";
|
|
11
|
+
import Button from "../Button/Button";
|
|
16
12
|
import Checkbox from "../Checkbox/Checkbox";
|
|
17
13
|
import CheckboxGroup from "../CheckboxGroup/CheckboxGroup";
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
14
|
+
import DatePicker from "../DatePicker/DatePicker";
|
|
15
|
+
import { DatePickerTypes } from "../DatePicker/DatePickerTypes";
|
|
16
|
+
import Form, { FormRow, FormField } from "./Form";
|
|
17
|
+
import { FormSpacing } from "./FormTypes";
|
|
21
18
|
import Heading from "../Heading/Heading";
|
|
22
19
|
import { HeadingLevels } from "../Heading/HeadingTypes";
|
|
23
20
|
import HorizontalRule from "../HorizontalRule/HorizontalRule";
|
|
24
|
-
import
|
|
25
|
-
import
|
|
26
|
-
import
|
|
27
|
-
|
|
21
|
+
import Label from "../Label/Label";
|
|
22
|
+
import Radio from "../Radio/Radio";
|
|
23
|
+
import RadioGroup from "../RadioGroup/RadioGroup";
|
|
24
|
+
import Select from "../Select/Select";
|
|
25
|
+
import TextInput from "../TextInput/TextInput";
|
|
26
|
+
import { getCategory } from "../../utils/componentCategories";
|
|
28
27
|
import SimpleGrid from "../Grid/SimpleGrid";
|
|
28
|
+
import { getStorybookEnumValues } from "../../utils/utils";
|
|
29
|
+
|
|
30
|
+
export const enumValues = getStorybookEnumValues(FormSpacing, "FormSpacing");
|
|
29
31
|
|
|
30
32
|
<Meta
|
|
31
33
|
title={getCategory("Form")}
|
|
@@ -34,11 +36,23 @@ import SimpleGrid from "../Grid/SimpleGrid";
|
|
|
34
36
|
parameters={{
|
|
35
37
|
design: {
|
|
36
38
|
type: "figma",
|
|
37
|
-
url:
|
|
38
|
-
"https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11895%3A547",
|
|
39
|
+
url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11895%3A547",
|
|
39
40
|
},
|
|
40
41
|
jest: ["Form.test.tsx"],
|
|
41
42
|
}}
|
|
43
|
+
argTypes={{
|
|
44
|
+
action: { control: false },
|
|
45
|
+
id: { control: false },
|
|
46
|
+
method: {
|
|
47
|
+
control: { type: "radio" },
|
|
48
|
+
options: ["get", "post"],
|
|
49
|
+
},
|
|
50
|
+
spacing: {
|
|
51
|
+
control: { type: "select" },
|
|
52
|
+
table: { defaultValue: { summary: "FormSpacing.Large" } },
|
|
53
|
+
options: enumValues.options,
|
|
54
|
+
},
|
|
55
|
+
}}
|
|
42
56
|
/>
|
|
43
57
|
|
|
44
58
|
# Form
|
|
@@ -58,23 +72,17 @@ The `Form` component renders a standard `<form>` element and should be used to h
|
|
|
58
72
|
|
|
59
73
|
<Canvas withToolbar>
|
|
60
74
|
<Story
|
|
61
|
-
name="Form"
|
|
75
|
+
name="Form with Controls"
|
|
62
76
|
args={{
|
|
63
77
|
action: "/end/point",
|
|
64
|
-
|
|
78
|
+
className: undefined,
|
|
79
|
+
id: "form-id",
|
|
65
80
|
method: "get",
|
|
66
|
-
|
|
67
|
-
argTypes={{
|
|
68
|
-
method: {
|
|
69
|
-
control: {
|
|
70
|
-
type: "radio",
|
|
71
|
-
options: ["get", "post"],
|
|
72
|
-
},
|
|
73
|
-
},
|
|
81
|
+
spacing: "FormSpacing.Large",
|
|
74
82
|
}}
|
|
75
83
|
>
|
|
76
84
|
{(args) => (
|
|
77
|
-
<Form {...args}>
|
|
85
|
+
<Form {...args} spacing={enumValues.getValue(args.spacing)}>
|
|
78
86
|
<FormRow>
|
|
79
87
|
<FormField>
|
|
80
88
|
<TextInput
|
|
@@ -95,15 +103,15 @@ The `Form` component renders a standard `<form>` element and should be used to h
|
|
|
95
103
|
id="date-range"
|
|
96
104
|
dateType={DatePickerTypes.Full}
|
|
97
105
|
dateFormat="yyyy-MM-dd"
|
|
98
|
-
dateRange={true}
|
|
99
|
-
minDate="1/1/2021"
|
|
100
|
-
maxDate="1/1/2022"
|
|
101
|
-
labelText="Select the date range you want to visit NYPL"
|
|
102
|
-
nameFrom="visit-dates"
|
|
103
106
|
helperTextFrom="From this date."
|
|
104
107
|
helperTextTo="To this date."
|
|
105
108
|
helperText="Select a valid date range."
|
|
106
109
|
invalidText="Please select a valid date range."
|
|
110
|
+
isDateRange
|
|
111
|
+
labelText="Select the date range you want to visit NYPL"
|
|
112
|
+
minDate="1/1/2021"
|
|
113
|
+
maxDate="1/1/2022"
|
|
114
|
+
nameFrom="visit-dates"
|
|
107
115
|
showLabel={false}
|
|
108
116
|
/>
|
|
109
117
|
</FormField>
|
|
@@ -188,14 +196,14 @@ The `Form` component renders a standard `<form>` element and should be used to h
|
|
|
188
196
|
</Story>
|
|
189
197
|
</Canvas>
|
|
190
198
|
|
|
191
|
-
<ArgsTable story="Form" />
|
|
199
|
+
<ArgsTable story="Form with Controls" />
|
|
192
200
|
|
|
193
201
|
## Spacing Variants
|
|
194
202
|
|
|
195
|
-
export const formRow = (size) => {
|
|
196
|
-
const labelText = `Size: ${size}`;
|
|
203
|
+
export const formRow = (nameString, size) => {
|
|
204
|
+
const labelText = `Size: ${nameString} (${size})`;
|
|
197
205
|
return (
|
|
198
|
-
<li>
|
|
206
|
+
<li key={size}>
|
|
199
207
|
<Heading level={HeadingLevels.Three}>{labelText}</Heading>
|
|
200
208
|
<Form spacing={size}>
|
|
201
209
|
<FormRow>
|
|
@@ -243,7 +251,7 @@ export const formRow = (size) => {
|
|
|
243
251
|
};
|
|
244
252
|
export const sizes = [];
|
|
245
253
|
for (const formSpacing in FormSpacing) {
|
|
246
|
-
sizes.push(formRow(FormSpacing[formSpacing]));
|
|
254
|
+
sizes.push(formRow(`FormSpacing.${formSpacing}`, FormSpacing[formSpacing]));
|
|
247
255
|
}
|
|
248
256
|
export const getForms = (list) => <ul style={{ listStyle: "none" }}>{list}</ul>;
|
|
249
257
|
|
|
@@ -269,7 +277,7 @@ Below are the spacing variants available with the `FormSpacing` enum.
|
|
|
269
277
|
<Story name="Example Code" />
|
|
270
278
|
|
|
271
279
|
```jsx
|
|
272
|
-
<Form action="/end/point" method="get">
|
|
280
|
+
<Form action="/end/point" method="get" spacing={FormSpacing.Large}>
|
|
273
281
|
<FormField>
|
|
274
282
|
<TextInput
|
|
275
283
|
labelText="Username"
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { Box } from "@chakra-ui/react";
|
|
1
2
|
import * as React from "react";
|
|
3
|
+
|
|
2
4
|
import { FormSpacing } from "./FormTypes";
|
|
3
5
|
import SimpleGrid from "../Grid/SimpleGrid";
|
|
4
|
-
import { Box } from "@chakra-ui/react";
|
|
5
6
|
import generateUUID from "../../helpers/generateUUID";
|
|
6
7
|
|
|
7
8
|
export interface FormChildProps {
|
|
@@ -54,15 +55,15 @@ export function FormField(props: React.PropsWithChildren<FormChildProps>) {
|
|
|
54
55
|
);
|
|
55
56
|
}
|
|
56
57
|
|
|
57
|
-
/**
|
|
58
|
-
export default function Form(props: React.
|
|
58
|
+
/** Main Form component */
|
|
59
|
+
export default function Form(props: React.PropsWithChildren<FormProps>) {
|
|
59
60
|
const {
|
|
60
61
|
action,
|
|
61
62
|
children,
|
|
62
63
|
className,
|
|
63
64
|
id = generateUUID(),
|
|
64
65
|
method,
|
|
65
|
-
spacing,
|
|
66
|
+
spacing = FormSpacing.Large,
|
|
66
67
|
} = props;
|
|
67
68
|
|
|
68
69
|
let attributes = {};
|