@itcase/ui 1.2.19 → 1.2.21
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/dist/cjs/components/Accordion.js +3 -2
- package/dist/cjs/components/Choice.js +1 -1
- package/dist/cjs/components/InputPassword.js +6 -6
- package/dist/cjs/components/Radio.js +85 -8
- package/dist/cjs/components/Switch.js +12 -8
- package/dist/cjs/components/Tile.js +3 -3
- package/dist/cjs/constants/componentProps/textColor.js +1 -1
- package/dist/cjs/constants/componentProps/textColorHover.js +1 -1
- package/dist/components/Accordion.js +3 -2
- package/dist/components/Choice.js +1 -1
- package/dist/components/InputPassword.js +6 -6
- package/dist/components/Radio.js +86 -5
- package/dist/components/Switch.js +12 -4
- package/dist/components/Tile.js +3 -3
- package/dist/constants/componentProps/textColor.js +1 -1
- package/dist/constants/componentProps/textColorHover.js +1 -1
- package/dist/css/components/Accordion/Accordion.css +1 -0
- package/dist/css/components/DatePicker/DatePicker.css +12 -12
- package/dist/css/components/Icon/Icon.css +4 -2
- package/dist/css/mixins/mixin_elevation.css +0 -2
- package/dist/css/mixins/mixin_typography.css +104 -84
- package/dist/css/mixins/mixin_utils.css +1 -1
- package/dist/css/styles/border-color/border-color.css +4 -2
- package/dist/css/styles/text-gradient/text-gradient.css +9 -4
- package/dist/css/tokens/colors.css +105 -0
- package/dist/css/tokens/elevation.css +10 -0
- package/dist/css/tokens/settings.css +31 -0
- package/dist/css/tokens/typography.css +127 -0
- package/dist/stories/Accordion.mdx +11 -0
- package/dist/stories/Accordion.stories.js +49 -32
- package/dist/stories/AccordionItem.mdx +15 -0
- package/dist/stories/AccordionItem.stories.js +69 -69
- package/dist/stories/AlignContent.mdx +85 -0
- package/dist/stories/AlignItems.mdx +74 -0
- package/dist/stories/AlignItems.stories.js +88 -0
- package/dist/stories/AlignSelf.mdx +85 -0
- package/dist/stories/AlignSelf.stories.js +101 -0
- package/dist/stories/Appearance.mdx +24 -9
- package/dist/stories/Appearance.stories.js +77 -23
- package/dist/stories/Avatar.mdx +23 -0
- package/dist/stories/Avatar.stories.js +69 -64
- package/dist/stories/Badge.mdx +20 -0
- package/dist/stories/Badge.stories.js +43 -44
- package/dist/stories/Button.mdx +48 -0
- package/dist/stories/Button.stories.js +26 -186
- package/dist/stories/Cell.mdx +23 -0
- package/dist/stories/Cell.stories.js +119 -119
- package/dist/stories/Checkbox.mdx +24 -0
- package/dist/stories/Checkbox.stories.js +42 -34
- package/dist/stories/Chips.mdx +31 -0
- package/dist/stories/Chips.stories.js +22 -67
- package/dist/stories/Choice.mdx +11 -0
- package/dist/stories/Choice.stories.js +59 -61
- package/dist/stories/Code.mdx +11 -0
- package/dist/stories/Code.stories.js +37 -40
- package/dist/stories/Columns.mdx +51 -0
- package/dist/stories/Columns.stories.js +80 -0
- package/dist/stories/DatePicker.mdx +31 -0
- package/dist/stories/DatePicker.stories.js +58 -59
- package/dist/stories/Dev.mdx +9 -0
- package/dist/stories/DevMode.mdx +8 -0
- package/dist/stories/Direction.mdx +84 -0
- package/dist/stories/Direction.stories.js +93 -0
- package/dist/stories/Divider.mdx +35 -0
- package/dist/stories/Divider.stories.js +28 -29
- package/dist/stories/Dot.mdx +19 -0
- package/dist/stories/Dot.stories.js +38 -39
- package/dist/stories/Drawer.mdx +11 -0
- package/dist/stories/Drawer.stories.js +75 -0
- package/dist/stories/Dropdown.mdx +12 -0
- package/dist/stories/Dropdown.stories.js +30 -29
- package/dist/stories/DropdownItem.mdx +19 -0
- package/dist/stories/DropdownItem.stories.js +76 -78
- package/dist/stories/Flex.stories.js +47 -0
- package/dist/stories/FlexAlignContent.stories.js +102 -0
- package/dist/stories/FlexAlignItems.stories.js +91 -0
- package/dist/stories/FlexAlignSelf.stories.js +97 -0
- package/dist/stories/FlexDirection.stories.js +112 -0
- package/dist/stories/FlexGrow.stories.js +69 -0
- package/dist/stories/FlexJustifyContent.stories.js +98 -0
- package/dist/stories/FlexOrder.stories.js +76 -0
- package/dist/stories/FlexWrap.stories.js +89 -0
- package/dist/stories/Grid.stories.js +202 -0
- package/dist/stories/Group.mdx +9 -0
- package/dist/stories/{Tab.group.stories.js → Group.stories.js} +60 -56
- package/dist/stories/Grow.mdx +40 -0
- package/dist/stories/Icon.mdx +15 -0
- package/dist/stories/Icon.stories.js +84 -82
- package/dist/stories/Image.mdx +15 -0
- package/dist/stories/Image.stories.js +134 -0
- package/dist/stories/Input.mdx +31 -0
- package/dist/stories/Input.stories.js +26 -26
- package/dist/stories/InputPassword.mdx +15 -0
- package/dist/stories/InputPassword.stories.js +32 -34
- package/dist/stories/JustifyContent.mdx +89 -0
- package/dist/stories/JustifyContent.stories.js +96 -0
- package/dist/stories/Label.mdx +31 -0
- package/dist/stories/Label.stories.js +63 -53
- package/dist/stories/Loader.mdx +31 -0
- package/dist/stories/Loader.stories.js +26 -28
- package/dist/stories/Logo.mdx +19 -0
- package/dist/stories/Logo.stories.js +28 -28
- package/dist/stories/MenuItem.mdx +15 -0
- package/dist/stories/MenuItem.stories.js +156 -91
- package/dist/stories/Message.mdx +12 -0
- package/dist/stories/Message.stories.js +34 -0
- package/dist/stories/ModalConfirm.stories.js +48 -47
- package/dist/stories/ModalDefault.stories.js +21 -20
- package/dist/stories/Notification.mdx +23 -0
- package/dist/stories/Notification.stories.js +24 -47
- package/dist/stories/Order.mdx +52 -0
- package/dist/stories/Overview.mdx +1 -2
- package/dist/stories/Pagination.mdx +11 -0
- package/dist/stories/Pagination.stories.js +24 -27
- package/dist/stories/Playground.mdx +1 -2
- package/dist/stories/Radio.mdx +29 -0
- package/dist/stories/Radio.stories.js +32 -33
- package/dist/stories/Response.mdx +18 -0
- package/dist/stories/Response.stories.js +66 -0
- package/dist/stories/SearchInput.mdx +19 -0
- package/dist/stories/{Search-input.stories.js → SearchInput.stories.js} +79 -62
- package/dist/stories/Segmented.mdx +11 -0
- package/dist/stories/Segmented.stories.js +49 -50
- package/dist/stories/Select.stories.js +155 -155
- package/dist/stories/Size.mdx +35 -0
- package/dist/stories/Size.stories.js +101 -0
- package/dist/stories/Skeleton.mdx +9 -0
- package/dist/stories/State.mdx +19 -0
- package/dist/stories/State.stories.js +70 -0
- package/dist/stories/Switch.mdx +23 -0
- package/dist/stories/Switch.stories.js +23 -23
- package/dist/stories/Text.mdx +35 -0
- package/dist/stories/Text.stories.js +172 -0
- package/dist/stories/Textarea.mdx +15 -0
- package/dist/stories/Textarea.stories.js +27 -27
- package/dist/stories/Tile.mdx +19 -0
- package/dist/stories/Tile.stories.js +111 -96
- package/dist/stories/Title.mdx +31 -0
- package/dist/stories/Title.stories.js +168 -0
- package/dist/stories/Tooltip.mdx +19 -0
- package/dist/stories/Tooltip.stories.js +164 -0
- package/dist/stories/WithTooltip.mdx +9 -0
- package/dist/stories/Wrap.mdx +52 -0
- package/dist/stories/Wrap.stories.js +74 -0
- package/dist/types/components/Accordion/Accordion.interface.d.ts +4 -0
- package/dist/types/components/Choice/Choice.interface.d.ts +0 -2
- package/dist/types/components/InputPassword/InputPassword.interface.d.ts +10 -8
- package/dist/types/components/Tile/Tile.d.ts +1 -1
- package/dist/types/components/Tile/Tile.interface.d.ts +3 -1
- package/dist/types/config/forms/datepicker.d.ts +18 -0
- package/dist/types/config/forms/index.d.ts +4 -0
- package/dist/types/config/forms/input.d.ts +14 -0
- package/dist/types/config/forms/select.d.ts +50 -0
- package/package.json +36 -42
- package/dist/Radio-BQo97TZL.js +0 -89
- package/dist/Radio-oMf0vN7T.js +0 -86
- package/dist/Switch-B5yVEqxz.js +0 -14
- package/dist/Switch-DEXsrPCo.js +0 -12
- package/dist/cjs/components/FormField.js +0 -122
- package/dist/components/FormField.js +0 -116
- package/dist/css/mixins/mixin.css +0 -78
- package/dist/stories/FormFieldCheckbox.stories.js +0 -77
- package/dist/stories/FormFieldChoice.stories.js +0 -75
- package/dist/stories/FormFieldDatepicker.stories.js +0 -51
- package/dist/stories/FormFieldFileInput.stories.js +0 -58
- package/dist/stories/FormFieldInput.stories.js +0 -66
- package/dist/stories/FormFieldInputPassword.stories.js +0 -66
- package/dist/stories/FormFieldMultiBadgeSelect.stories.js +0 -132
- package/dist/stories/FormFieldMultiSelect.stories.js +0 -127
- package/dist/stories/FormFieldSelect.stories.js +0 -99
- package/dist/stories/FormFieldSelectGroup.stories.js +0 -84
- package/dist/stories/NotFound.stories.js +0 -93
- package/dist/stories/Tab.appearance.stories.js +0 -260
- package/dist/stories/Tab.size.stories.js +0 -259
- package/dist/stories/Tab.state.stories.js +0 -227
- package/dist/types/components/FormField/ChoiceField.d.ts +0 -8
- package/dist/types/components/FormField/FormField.d.ts +0 -9
- package/dist/types/components/FormField/FormFiled.interface.d.ts +0 -77
- package/dist/types/components/FormField/PasswordField.d.ts +0 -9
- package/dist/types/components/FormField/SelectField.d.ts +0 -9
- package/dist/types/components/FormField/SwitchField.d.ts +0 -8
- package/dist/types/components/FormField/index.d.ts +0 -6
|
@@ -1,86 +1,85 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
borderColorProps,
|
|
4
|
-
borderTypeProps,
|
|
5
|
-
borderWidthProps,
|
|
6
|
-
borderColorHoverProps,
|
|
7
|
-
textColorProps,
|
|
8
|
-
fillProps,
|
|
9
|
-
sizeProps,
|
|
10
|
-
shapeProps,
|
|
11
|
-
} from '@itcase/ui/constants'
|
|
1
|
+
import { borderColorProps, borderTypeProps, fillProps, shapeProps } from '../../../constants'
|
|
2
|
+
import { Dot } from '../Dot'
|
|
12
3
|
|
|
13
4
|
export default {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
parameters: {
|
|
17
|
-
controls: {
|
|
18
|
-
exclude: [
|
|
19
|
-
'borderDesktop',
|
|
20
|
-
'borderMobile',
|
|
21
|
-
'borderTablet',
|
|
22
|
-
'borderTypeDesktop',
|
|
23
|
-
'borderTypeMobile',
|
|
24
|
-
'borderTypeTablet',
|
|
25
|
-
'fillDesktop',
|
|
26
|
-
'fillMobile',
|
|
27
|
-
'fillTablet',
|
|
28
|
-
'shapeDesktop',
|
|
29
|
-
'shapeMobile',
|
|
30
|
-
'shapeTablet',
|
|
31
|
-
],
|
|
32
|
-
},
|
|
5
|
+
args: {
|
|
6
|
+
shape: 'circular',
|
|
33
7
|
},
|
|
34
8
|
argTypes: {
|
|
35
|
-
advancedProps: { control: 'boolean' },
|
|
36
|
-
className: {
|
|
37
|
-
if: { arg: 'advancedProps' },
|
|
38
|
-
},
|
|
39
9
|
children: {
|
|
40
10
|
if: { arg: 'advancedProps' },
|
|
41
11
|
},
|
|
12
|
+
advancedProps: { control: 'boolean' },
|
|
42
13
|
border: {
|
|
43
|
-
options: borderColorProps,
|
|
44
14
|
control: 'select',
|
|
15
|
+
options: borderColorProps,
|
|
45
16
|
},
|
|
46
17
|
borderType: {
|
|
47
|
-
options: borderTypeProps,
|
|
48
18
|
control: 'inline-radio',
|
|
19
|
+
options: borderTypeProps,
|
|
20
|
+
},
|
|
21
|
+
className: {
|
|
22
|
+
if: { arg: 'advancedProps' },
|
|
49
23
|
},
|
|
50
24
|
fill: {
|
|
51
|
-
options: fillProps,
|
|
52
25
|
control: 'select',
|
|
26
|
+
options: fillProps,
|
|
53
27
|
},
|
|
54
28
|
shape: {
|
|
29
|
+
control: 'inline-radio',
|
|
55
30
|
options: shapeProps,
|
|
31
|
+
},
|
|
32
|
+
size: {
|
|
56
33
|
control: 'inline-radio',
|
|
34
|
+
options: ['s', 'm', 'l'],
|
|
57
35
|
},
|
|
58
36
|
},
|
|
59
|
-
|
|
60
|
-
|
|
37
|
+
component: Dot,
|
|
38
|
+
parameters: {
|
|
39
|
+
controls: {
|
|
40
|
+
exclude: [
|
|
41
|
+
'borderDesktop',
|
|
42
|
+
'borderMobile',
|
|
43
|
+
'borderTablet',
|
|
44
|
+
'borderTypeDesktop',
|
|
45
|
+
'borderTypeMobile',
|
|
46
|
+
'borderTypeTablet',
|
|
47
|
+
'fillDesktop',
|
|
48
|
+
'fillMobile',
|
|
49
|
+
'fillTablet',
|
|
50
|
+
'shapeDesktop',
|
|
51
|
+
'shapeMobile',
|
|
52
|
+
'shapeTablet',
|
|
53
|
+
],
|
|
54
|
+
},
|
|
61
55
|
},
|
|
56
|
+
title: 'Atoms / Dot',
|
|
62
57
|
}
|
|
63
58
|
|
|
64
59
|
export const Default = {
|
|
65
60
|
args: {
|
|
66
61
|
fill: 'accentPrimary',
|
|
62
|
+
size: 'm',
|
|
67
63
|
},
|
|
68
64
|
}
|
|
69
65
|
|
|
70
66
|
export const Accent = {
|
|
71
67
|
args: {
|
|
68
|
+
...Default.args,
|
|
72
69
|
fill: 'accentPrimary',
|
|
73
70
|
},
|
|
74
71
|
}
|
|
75
72
|
|
|
76
73
|
export const Primary = {
|
|
77
74
|
args: {
|
|
75
|
+
...Default.args,
|
|
78
76
|
fill: 'primaryPrimary',
|
|
79
77
|
},
|
|
80
78
|
}
|
|
81
79
|
|
|
82
80
|
export const Secondary = {
|
|
83
81
|
args: {
|
|
82
|
+
...Default.args,
|
|
84
83
|
fill: 'secondaryPrimary',
|
|
85
84
|
},
|
|
86
85
|
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { directionProps } from '../../../constants'
|
|
2
|
+
import { Button } from '../../Button'
|
|
3
|
+
import { Drawer } from '../../Drawer'
|
|
4
|
+
import { Group } from '../../Group'
|
|
5
|
+
import { Text } from '../../Text'
|
|
6
|
+
import { Title } from '../../Title'
|
|
7
|
+
|
|
8
|
+
export default {
|
|
9
|
+
argTypes: {
|
|
10
|
+
direction: {
|
|
11
|
+
control: 'inline-radio',
|
|
12
|
+
if: { arg: 'advancedProps' },
|
|
13
|
+
options: directionProps,
|
|
14
|
+
},
|
|
15
|
+
isOpenModal: { control: 'boolean' },
|
|
16
|
+
advancedProps: { control: 'boolean' },
|
|
17
|
+
className: {
|
|
18
|
+
if: { arg: 'advancedProps' },
|
|
19
|
+
},
|
|
20
|
+
closeModal: {
|
|
21
|
+
if: { arg: 'advancedProps' },
|
|
22
|
+
},
|
|
23
|
+
dataTour: {
|
|
24
|
+
if: { arg: 'advancedProps' },
|
|
25
|
+
},
|
|
26
|
+
size: {
|
|
27
|
+
control: 'inline-radio',
|
|
28
|
+
options: [300, 400, 500, 600, 700, 800],
|
|
29
|
+
},
|
|
30
|
+
type: {
|
|
31
|
+
if: { arg: 'advancedProps' },
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
component: Drawer,
|
|
35
|
+
title: 'Molecules / Drawer',
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export const Default = {
|
|
39
|
+
args: {
|
|
40
|
+
children: (
|
|
41
|
+
<Group
|
|
42
|
+
height="100%"
|
|
43
|
+
padding="24"
|
|
44
|
+
alignItems="center"
|
|
45
|
+
direction="vertical"
|
|
46
|
+
justifyContent="center"
|
|
47
|
+
>
|
|
48
|
+
<Title size="h4" textColor="surfaceTextPrimary">
|
|
49
|
+
Drawer content
|
|
50
|
+
</Title>
|
|
51
|
+
</Group>
|
|
52
|
+
),
|
|
53
|
+
isOpenModal: true,
|
|
54
|
+
after: (
|
|
55
|
+
<Group padding="24" alignItems="center" direction="vertical" justifyContent="center">
|
|
56
|
+
<Button
|
|
57
|
+
width="fill"
|
|
58
|
+
labelTextSize="l"
|
|
59
|
+
appearance="accent"
|
|
60
|
+
label="btn after"
|
|
61
|
+
shape="rounded"
|
|
62
|
+
size="xxl"
|
|
63
|
+
/>
|
|
64
|
+
</Group>
|
|
65
|
+
),
|
|
66
|
+
before: (
|
|
67
|
+
<Group padding="24" alignItems="center" direction="vertical" justifyContent="center">
|
|
68
|
+
<Text size="m" textColor="surfaceTextPrimary">
|
|
69
|
+
Before content
|
|
70
|
+
</Text>
|
|
71
|
+
</Group>
|
|
72
|
+
),
|
|
73
|
+
size: 600,
|
|
74
|
+
},
|
|
75
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Canvas, Meta } from '@storybook/blocks'
|
|
2
|
+
|
|
3
|
+
import * as DropdownStories from './Dropdown.stories.js'
|
|
4
|
+
import * as DropdownItemStories from './DropdownItem.stories.js'
|
|
5
|
+
|
|
6
|
+
<Meta of={DropdownStories} />
|
|
7
|
+
|
|
8
|
+
# Dropdown
|
|
9
|
+
|
|
10
|
+
## Default
|
|
11
|
+
|
|
12
|
+
<Canvas sourceState="shown" of={DropdownStories.Default} />
|
|
@@ -1,74 +1,75 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
|
|
3
|
-
import { Dropdown
|
|
3
|
+
import { Dropdown } from '../Dropdown'
|
|
4
|
+
import { DropdownItem } from '../DropdownItem'
|
|
4
5
|
|
|
5
6
|
export default {
|
|
6
|
-
title: 'Atoms / Dropdown / Default',
|
|
7
|
-
component: Dropdown,
|
|
8
7
|
argTypes: {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
control: 'text',
|
|
8
|
+
elevation: {
|
|
9
|
+
control: 'inline-radio',
|
|
10
|
+
options: [null, 1, 2, 4, 6, 8, 12, 16, 24],
|
|
13
11
|
},
|
|
14
|
-
|
|
12
|
+
isCloseByClickOutside: {
|
|
15
13
|
if: { arg: 'advancedProps' },
|
|
16
14
|
},
|
|
15
|
+
isOpen: {
|
|
16
|
+
control: 'boolean',
|
|
17
|
+
},
|
|
18
|
+
advancedProps: { control: 'boolean' },
|
|
17
19
|
animationClose: {
|
|
18
20
|
if: { arg: 'advancedProps' },
|
|
19
21
|
},
|
|
20
|
-
|
|
22
|
+
animationOpen: {
|
|
21
23
|
if: { arg: 'advancedProps' },
|
|
22
24
|
},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
},
|
|
27
|
-
isOpen: {
|
|
28
|
-
control: 'boolean',
|
|
25
|
+
className: {
|
|
26
|
+
control: 'text',
|
|
27
|
+
if: { arg: 'advancedProps' },
|
|
29
28
|
},
|
|
30
29
|
shape: {
|
|
31
|
-
options: [null, 'geometric', 'rounded'],
|
|
32
30
|
control: 'inline-radio',
|
|
31
|
+
options: [null, 'geometric', 'rounded'],
|
|
33
32
|
},
|
|
34
33
|
},
|
|
34
|
+
component: Dropdown,
|
|
35
|
+
title: 'Molecules / Dropdown / Default',
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
export const Default = {
|
|
38
39
|
args: {
|
|
39
|
-
shape: 'rounded',
|
|
40
|
-
elevation: 8,
|
|
41
|
-
isOpen: true,
|
|
42
40
|
children: (
|
|
43
41
|
<React.Fragment>
|
|
44
42
|
<DropdownItem
|
|
45
|
-
|
|
43
|
+
labelTextColor="surfaceTextPrimary"
|
|
44
|
+
labelTextSize="m"
|
|
46
45
|
fill="surfacePrimary"
|
|
47
46
|
fillHover="surfacePrimaryHover"
|
|
48
47
|
label="Label Primary"
|
|
49
|
-
labelTextSize="m"
|
|
50
48
|
labelTextWrap="nowrap"
|
|
51
|
-
|
|
49
|
+
size="normal"
|
|
52
50
|
/>
|
|
53
51
|
<DropdownItem
|
|
54
|
-
|
|
52
|
+
labelTextColor="surfaceTextPrimary"
|
|
53
|
+
labelTextSize="m"
|
|
55
54
|
fill="surfacePrimary"
|
|
56
55
|
fillHover="surfacePrimaryHover"
|
|
57
56
|
label="Label Secondary"
|
|
58
57
|
labelTextWrap="nowrap"
|
|
59
|
-
|
|
60
|
-
labelTextColor="surfaceTextPrimary"
|
|
58
|
+
size="normal"
|
|
61
59
|
/>
|
|
62
60
|
<DropdownItem
|
|
63
|
-
|
|
61
|
+
labelTextColor="surfaceTextPrimary"
|
|
62
|
+
labelTextSize="m"
|
|
64
63
|
fill="surfacePrimary"
|
|
65
64
|
fillHover="surfacePrimaryHover"
|
|
66
|
-
labelTextWrap="nowrap"
|
|
67
65
|
label="Label Tertiary"
|
|
68
|
-
|
|
69
|
-
|
|
66
|
+
labelTextWrap="nowrap"
|
|
67
|
+
size="normal"
|
|
70
68
|
/>
|
|
71
69
|
</React.Fragment>
|
|
72
70
|
),
|
|
71
|
+
elevation: 8,
|
|
72
|
+
isOpen: true,
|
|
73
|
+
shape: 'rounded',
|
|
73
74
|
},
|
|
74
75
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Canvas, Meta } from '@storybook/blocks'
|
|
2
|
+
|
|
3
|
+
import * as DropdownItemStories from './DropdownItem.stories.js'
|
|
4
|
+
|
|
5
|
+
<Meta of={DropdownItemStories} />
|
|
6
|
+
|
|
7
|
+
# DropdownItem
|
|
8
|
+
|
|
9
|
+
## Default
|
|
10
|
+
|
|
11
|
+
<Canvas sourceState="shown" of={DropdownItemStories.Default} />
|
|
12
|
+
|
|
13
|
+
## Active
|
|
14
|
+
|
|
15
|
+
<Canvas sourceState="shown" of={DropdownItemStories.Active} />
|
|
16
|
+
|
|
17
|
+
## Disabled
|
|
18
|
+
|
|
19
|
+
<Canvas sourceState="shown" of={DropdownItemStories.Disabled} />
|
|
@@ -1,40 +1,19 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
|
|
3
|
-
import { DropdownItem } from '@itcase/ui/components/Dropdown'
|
|
4
|
-
|
|
5
1
|
import {
|
|
2
|
+
fillHoverProps,
|
|
3
|
+
fillProps,
|
|
6
4
|
textColorProps,
|
|
7
5
|
textSizeProps,
|
|
8
|
-
fillProps,
|
|
9
|
-
fillHoverProps,
|
|
10
6
|
textWrapProps,
|
|
11
|
-
} from '
|
|
7
|
+
} from '../../../constants'
|
|
8
|
+
|
|
9
|
+
import { DropdownItem } from '../DropdownItem'
|
|
12
10
|
|
|
13
11
|
export default {
|
|
14
|
-
title: 'Atoms / Dropdown / Item',
|
|
15
|
-
component: DropdownItem,
|
|
16
|
-
parameters: {
|
|
17
|
-
controls: {
|
|
18
|
-
exclude: [
|
|
19
|
-
'fillDesktop',
|
|
20
|
-
'fillTablet',
|
|
21
|
-
'fillMobile',
|
|
22
|
-
'linkFillDesktop',
|
|
23
|
-
'linkFillTablet',
|
|
24
|
-
'linkFillMobile',
|
|
25
|
-
'sizeDesktop',
|
|
26
|
-
'sizeTablet',
|
|
27
|
-
'sizeMobile',
|
|
28
|
-
'shapeDesktop',
|
|
29
|
-
'shapeTablet',
|
|
30
|
-
'shapeMobile',
|
|
31
|
-
'typeDesktop',
|
|
32
|
-
'typeTablet',
|
|
33
|
-
'typeMobile',
|
|
34
|
-
],
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
12
|
argTypes: {
|
|
13
|
+
children: {
|
|
14
|
+
control: 'text',
|
|
15
|
+
if: { arg: 'advancedProps' },
|
|
16
|
+
},
|
|
38
17
|
advancedProps: { control: 'boolean' },
|
|
39
18
|
after: {
|
|
40
19
|
if: { arg: 'advancedProps' },
|
|
@@ -42,41 +21,61 @@ export default {
|
|
|
42
21
|
before: {
|
|
43
22
|
if: { arg: 'advancedProps' },
|
|
44
23
|
},
|
|
45
|
-
children: {
|
|
46
|
-
if: { arg: 'advancedProps' },
|
|
47
|
-
control: 'text',
|
|
48
|
-
},
|
|
49
24
|
className: {
|
|
50
|
-
if: { arg: 'advancedProps' },
|
|
51
25
|
control: 'text',
|
|
26
|
+
if: { arg: 'advancedProps' },
|
|
52
27
|
},
|
|
53
28
|
desc: {
|
|
54
|
-
if: { arg: 'advancedProps' },
|
|
55
29
|
control: 'text',
|
|
30
|
+
if: { arg: 'advancedProps' },
|
|
31
|
+
},
|
|
32
|
+
fill: {
|
|
33
|
+
control: 'select',
|
|
34
|
+
options: fillProps,
|
|
35
|
+
},
|
|
36
|
+
fillHover: {
|
|
37
|
+
control: 'select',
|
|
38
|
+
options: fillHoverProps,
|
|
56
39
|
},
|
|
57
40
|
href: {
|
|
58
41
|
if: { arg: 'advancedProps' },
|
|
59
42
|
},
|
|
60
|
-
|
|
61
|
-
|
|
43
|
+
labelTextColor: {
|
|
44
|
+
control: 'select',
|
|
45
|
+
options: textColorProps,
|
|
62
46
|
},
|
|
63
|
-
|
|
64
|
-
|
|
47
|
+
labelTextSize: {
|
|
48
|
+
control: 'inline-radio',
|
|
49
|
+
options: textSizeProps,
|
|
65
50
|
},
|
|
66
|
-
|
|
51
|
+
labelTextWrap: {
|
|
52
|
+
control: 'select',
|
|
53
|
+
options: textWrapProps,
|
|
54
|
+
},
|
|
55
|
+
link: {
|
|
67
56
|
if: { arg: 'advancedProps' },
|
|
68
57
|
},
|
|
69
|
-
|
|
58
|
+
LinkComponent: {
|
|
70
59
|
if: { arg: 'advancedProps' },
|
|
71
|
-
control: 'text',
|
|
72
60
|
},
|
|
73
|
-
|
|
61
|
+
linkFill: {
|
|
74
62
|
if: { arg: 'advancedProps' },
|
|
75
|
-
control: 'text',
|
|
76
63
|
},
|
|
77
64
|
rel: {
|
|
78
65
|
if: { arg: 'advancedProps' },
|
|
79
66
|
},
|
|
67
|
+
set: {
|
|
68
|
+
control: 'inline-radio',
|
|
69
|
+
options: [null, 'normal', 'compact'],
|
|
70
|
+
},
|
|
71
|
+
shape: {
|
|
72
|
+
control: 'inline-radio',
|
|
73
|
+
options: [null, 'geometric', 'rounded'],
|
|
74
|
+
},
|
|
75
|
+
size: {
|
|
76
|
+
control: 'inline-radio',
|
|
77
|
+
options: [null, 'normal', 'compact'],
|
|
78
|
+
},
|
|
80
79
|
target: {
|
|
81
80
|
if: { arg: 'advancedProps' },
|
|
82
81
|
},
|
|
@@ -86,52 +85,51 @@ export default {
|
|
|
86
85
|
underline: {
|
|
87
86
|
if: { arg: 'advancedProps' },
|
|
88
87
|
},
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
},
|
|
93
|
-
fillHover: {
|
|
94
|
-
options: fillHoverProps,
|
|
95
|
-
control: 'select',
|
|
96
|
-
},
|
|
97
|
-
labelTextColor: {
|
|
98
|
-
options: textColorProps,
|
|
99
|
-
control: 'select',
|
|
100
|
-
},
|
|
101
|
-
labelTextSize: {
|
|
102
|
-
options: textSizeProps,
|
|
103
|
-
control: 'inline-radio',
|
|
104
|
-
},
|
|
105
|
-
labelTextWrap: {
|
|
106
|
-
options: textWrapProps,
|
|
107
|
-
control: 'select',
|
|
108
|
-
},
|
|
109
|
-
set: {
|
|
110
|
-
options: [null, 'normal', 'compact'],
|
|
111
|
-
control: 'inline-radio',
|
|
88
|
+
onClick: {
|
|
89
|
+
control: 'text',
|
|
90
|
+
if: { arg: 'advancedProps' },
|
|
112
91
|
},
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
92
|
+
onMouseEnter: {
|
|
93
|
+
control: 'text',
|
|
94
|
+
if: { arg: 'advancedProps' },
|
|
116
95
|
},
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
96
|
+
},
|
|
97
|
+
component: DropdownItem,
|
|
98
|
+
parameters: {
|
|
99
|
+
controls: {
|
|
100
|
+
exclude: [
|
|
101
|
+
'fillDesktop',
|
|
102
|
+
'fillTablet',
|
|
103
|
+
'fillMobile',
|
|
104
|
+
'linkFillDesktop',
|
|
105
|
+
'linkFillTablet',
|
|
106
|
+
'linkFillMobile',
|
|
107
|
+
'sizeDesktop',
|
|
108
|
+
'sizeTablet',
|
|
109
|
+
'sizeMobile',
|
|
110
|
+
'shapeDesktop',
|
|
111
|
+
'shapeTablet',
|
|
112
|
+
'shapeMobile',
|
|
113
|
+
'typeDesktop',
|
|
114
|
+
'typeTablet',
|
|
115
|
+
'typeMobile',
|
|
116
|
+
],
|
|
120
117
|
},
|
|
121
118
|
},
|
|
119
|
+
title: 'Molecules / Dropdown / Item',
|
|
122
120
|
}
|
|
123
121
|
|
|
124
122
|
export const Default = {
|
|
125
123
|
args: {
|
|
126
|
-
set: 'normal',
|
|
127
|
-
shape: 'rounded',
|
|
128
124
|
isOpen: true,
|
|
129
|
-
size: 'normal',
|
|
130
125
|
fill: 'surfacePrimary',
|
|
131
126
|
fillHover: 'surfacePrimaryHover',
|
|
132
127
|
label: 'Label',
|
|
133
|
-
labelTextSize: 'm',
|
|
134
128
|
labelTextColor: 'surfaceTextPrimary',
|
|
129
|
+
labelTextSize: 'm',
|
|
130
|
+
set: 'normal',
|
|
131
|
+
shape: 'rounded',
|
|
132
|
+
size: 'normal',
|
|
135
133
|
},
|
|
136
134
|
}
|
|
137
135
|
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
|
|
3
|
+
import { Flex, FlexItem } from '@itcase/ui/components/Flex'
|
|
4
|
+
import { Group } from '@itcase/ui/components/Group'
|
|
5
|
+
import { Text } from '@itcase/ui/components/Text'
|
|
6
|
+
|
|
7
|
+
import { argTypes, parameters } from './args'
|
|
8
|
+
|
|
9
|
+
export default {
|
|
10
|
+
argTypes: {
|
|
11
|
+
...argTypes,
|
|
12
|
+
},
|
|
13
|
+
parameters: {
|
|
14
|
+
...parameters,
|
|
15
|
+
},
|
|
16
|
+
render: ({ ...args }) => (
|
|
17
|
+
<Flex flex="1" direction="horizontal" maxWidthWrapper="100%">
|
|
18
|
+
<FlexItem maxWidth="260px" fill="infoPrimary" padding="20">
|
|
19
|
+
<Text size="xl" textColor="infoTextPrimary">
|
|
20
|
+
Menu
|
|
21
|
+
</Text>
|
|
22
|
+
</FlexItem>
|
|
23
|
+
<FlexItem direction="vertical" grow={1}>
|
|
24
|
+
<Group fill="accentPrimary" padding="20">
|
|
25
|
+
<Text size="xl" textColor="accentTextPrimary">
|
|
26
|
+
Header
|
|
27
|
+
</Text>
|
|
28
|
+
</Group>
|
|
29
|
+
<Group fill="primaryPrimary" padding="20">
|
|
30
|
+
<Text size="xl" textColor="primaryTextPrimary">
|
|
31
|
+
Component
|
|
32
|
+
</Text>
|
|
33
|
+
</Group>
|
|
34
|
+
<Group fill="secondaryPrimary" padding="20">
|
|
35
|
+
<Text size="xl" textColor="secondaryTextPrimary">
|
|
36
|
+
Footer
|
|
37
|
+
</Text>
|
|
38
|
+
</Group>
|
|
39
|
+
</FlexItem>
|
|
40
|
+
</Flex>
|
|
41
|
+
),
|
|
42
|
+
title: 'Layout / Flex / Variants / Flex',
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export const Default = {
|
|
46
|
+
args: {},
|
|
47
|
+
}
|