@vibe/core 4.2.5 → 4.3.0-alpha-9bd83.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/metadata/accessibility/Accordion.md +10 -0
- package/dist/metadata/accessibility/AlertBanner.md +9 -0
- package/dist/metadata/accessibility/Avatar.md +12 -0
- package/dist/metadata/accessibility/AvatarGroup.md +6 -0
- package/dist/metadata/accessibility/BreadcrumbsBar.md +10 -0
- package/dist/metadata/accessibility/Button.md +13 -0
- package/dist/metadata/accessibility/ButtonGroup.md +9 -0
- package/dist/metadata/accessibility/Checkbox.md +13 -0
- package/dist/metadata/accessibility/Chips.md +10 -0
- package/dist/metadata/accessibility/Combobox.md +6 -0
- package/dist/metadata/accessibility/DropdownBasicDropdown.md +10 -0
- package/dist/metadata/accessibility/IconButton.md +26 -0
- package/dist/metadata/accessibility/Info.md +12 -0
- package/dist/metadata/accessibility/Link.md +8 -0
- package/dist/metadata/accessibility/List.md +11 -0
- package/dist/metadata/accessibility/Menu.md +10 -0
- package/dist/metadata/accessibility/MenuButton.md +6 -0
- package/dist/metadata/accessibility/MenuItem.md +8 -0
- package/dist/metadata/accessibility/Modal.md +35 -0
- package/dist/metadata/accessibility/NumberField.md +9 -0
- package/dist/metadata/accessibility/RadioButton.md +11 -0
- package/dist/metadata/accessibility/Search.md +10 -0
- package/dist/metadata/accessibility/Tabs.md +10 -0
- package/dist/metadata/accessibility/TextArea.md +17 -0
- package/dist/metadata/accessibility/TextField.md +16 -0
- package/dist/metadata/accessibility/Toast.md +4 -0
- package/dist/metadata/accessibility/Toggle.md +7 -0
- package/dist/metadata/accessibility/Tooltip.md +11 -0
- package/dist/metadata/components.json +20940 -0
- package/dist/metadata/examples/Accordion.md +136 -0
- package/dist/metadata/examples/AlertBanner.md +85 -0
- package/dist/metadata/examples/AttentionBox.md +267 -0
- package/dist/metadata/examples/Avatar.md +118 -0
- package/dist/metadata/examples/AvatarGroup.md +390 -0
- package/dist/metadata/examples/Badge.md +59 -0
- package/dist/metadata/examples/BaseInput.md +2 -0
- package/dist/metadata/examples/BaseList.md +342 -0
- package/dist/metadata/examples/Box.md +208 -0
- package/dist/metadata/examples/BreadcrumbItem.md +54 -0
- package/dist/metadata/examples/BreadcrumbsBar.md +64 -0
- package/dist/metadata/examples/Button.md +174 -0
- package/dist/metadata/examples/ButtonGroup.md +180 -0
- package/dist/metadata/examples/Checkbox.md +24 -0
- package/dist/metadata/examples/Chips.md +192 -0
- package/dist/metadata/examples/Clickable.md +31 -0
- package/dist/metadata/examples/ColorPicker.md +2 -0
- package/dist/metadata/examples/Combobox.md +438 -0
- package/dist/metadata/examples/Counter.md +188 -0
- package/dist/metadata/examples/DatePicker.md +43 -0
- package/dist/metadata/examples/Dialog.md +521 -0
- package/dist/metadata/examples/DialogContentContainer.md +18 -0
- package/dist/metadata/examples/Divider.md +50 -0
- package/dist/metadata/examples/DropdownBasicDropdown.md +479 -0
- package/dist/metadata/examples/DropdownBoxMode.md +218 -0
- package/dist/metadata/examples/EditableHeading.md +33 -0
- package/dist/metadata/examples/EditableText.md +36 -0
- package/dist/metadata/examples/EmptyState.md +192 -0
- package/dist/metadata/examples/ExpandCollapse.md +77 -0
- package/dist/metadata/examples/Flex.md +916 -0
- package/dist/metadata/examples/Heading.md +124 -0
- package/dist/metadata/examples/HiddenText.md +8 -0
- package/dist/metadata/examples/Icon.md +67 -0
- package/dist/metadata/examples/IconButton.md +141 -0
- package/dist/metadata/examples/Info.md +80 -0
- package/dist/metadata/examples/Label.md +109 -0
- package/dist/metadata/examples/Link.md +52 -0
- package/dist/metadata/examples/List.md +125 -0
- package/dist/metadata/examples/ListItem.md +42 -0
- package/dist/metadata/examples/Loader.md +148 -0
- package/dist/metadata/examples/Menu.md +141 -0
- package/dist/metadata/examples/MenuButton.md +127 -0
- package/dist/metadata/examples/MenuDivider.md +35 -0
- package/dist/metadata/examples/MenuGridItem.md +65 -0
- package/dist/metadata/examples/MenuItem.md +98 -0
- package/dist/metadata/examples/MenuItemButton.md +42 -0
- package/dist/metadata/examples/MenuTitle.md +25 -0
- package/dist/metadata/examples/ModalBasicLayout.md +400 -0
- package/dist/metadata/examples/ModalMediaLayout.md +240 -0
- package/dist/metadata/examples/ModalSideBySideLayout.md +313 -0
- package/dist/metadata/examples/MultiStepIndicator.md +189 -0
- package/dist/metadata/examples/NumberField.md +68 -0
- package/dist/metadata/examples/ProgressBar.md +152 -0
- package/dist/metadata/examples/RadioButton.md +41 -0
- package/dist/metadata/examples/Search.md +24 -0
- package/dist/metadata/examples/Skeleton.md +161 -0
- package/dist/metadata/examples/Slider.md +109 -0
- package/dist/metadata/examples/SplitButton.md +120 -0
- package/dist/metadata/examples/Steps.md +106 -0
- package/dist/metadata/examples/Table.md +449 -0
- package/dist/metadata/examples/Tabs.md +241 -0
- package/dist/metadata/examples/Text.md +188 -0
- package/dist/metadata/examples/TextArea.md +28 -0
- package/dist/metadata/examples/TextField.md +119 -0
- package/dist/metadata/examples/TextWithHighlight.md +2 -0
- package/dist/metadata/examples/ThemeProvider.md +47 -0
- package/dist/metadata/examples/Tipseen.md +111 -0
- package/dist/metadata/examples/Toast.md +127 -0
- package/dist/metadata/examples/Toggle.md +38 -0
- package/dist/metadata/examples/Tooltip.md +53 -0
- package/dist/metadata/examples/VirtualizedGrid.md +54 -0
- package/dist/metadata/examples/VirtualizedList.md +50 -0
- package/dist/metadata/examples/useGridKeyboardNavigationContext.md +61 -0
- package/dist/mocked_classnames/scripts/build-all-metadata.d.ts +1 -0
- package/dist/mocked_classnames/scripts/extract-accessibility.d.ts +4 -0
- package/dist/mocked_classnames/scripts/extract-examples.d.ts +3 -0
- package/dist/scripts/build-all-metadata.d.ts +1 -0
- package/dist/scripts/extract-accessibility.d.ts +4 -0
- package/dist/scripts/extract-examples.d.ts +3 -0
- package/package.json +12 -10
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Storybook Code Examples
|
|
2
|
+
|
|
3
|
+
## TypesAndWeights
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
<Flex gap="large" direction="column" justify="start" align="start">
|
|
7
|
+
<Flex gap="small" direction="column" justify="start" align="start">
|
|
8
|
+
<Heading type="h1" weight="bold">
|
|
9
|
+
Bold H1 title
|
|
10
|
+
</Heading>
|
|
11
|
+
<Heading type="h1" weight="medium">
|
|
12
|
+
Medium H1 title
|
|
13
|
+
</Heading>
|
|
14
|
+
<Heading type="h1" weight="normal">
|
|
15
|
+
Normal H1 title
|
|
16
|
+
</Heading>
|
|
17
|
+
<Heading type="h1" weight="light">
|
|
18
|
+
Light H1 title
|
|
19
|
+
</Heading>
|
|
20
|
+
</Flex>
|
|
21
|
+
<Flex gap="small" direction="column" justify="start" align="start">
|
|
22
|
+
<Heading type="h2" weight="bold">
|
|
23
|
+
Bold H2 title
|
|
24
|
+
</Heading>
|
|
25
|
+
<Heading type="h2" weight="medium">
|
|
26
|
+
Medium H2 title
|
|
27
|
+
</Heading>
|
|
28
|
+
<Heading type="h2" weight="normal">
|
|
29
|
+
Normal H2 title
|
|
30
|
+
</Heading>
|
|
31
|
+
<Heading type="h2" weight="light">
|
|
32
|
+
Light H2 title
|
|
33
|
+
</Heading>
|
|
34
|
+
</Flex>
|
|
35
|
+
<Flex gap="small" direction="column" justify="start" align="start">
|
|
36
|
+
<Heading type="h3" weight="bold">
|
|
37
|
+
Bold H3 title
|
|
38
|
+
</Heading>
|
|
39
|
+
<Heading type="h3" weight="medium">
|
|
40
|
+
Medium H3 title
|
|
41
|
+
</Heading>
|
|
42
|
+
<Heading type="h3" weight="normal">
|
|
43
|
+
Normal H3 title
|
|
44
|
+
</Heading>
|
|
45
|
+
<Heading type="h3" weight="light">
|
|
46
|
+
Light H3 title
|
|
47
|
+
</Heading>
|
|
48
|
+
</Flex>
|
|
49
|
+
</Flex>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Colors
|
|
53
|
+
|
|
54
|
+
```tsx
|
|
55
|
+
<Flex direction="column" align="start" gap="small">
|
|
56
|
+
<Heading type="h2" color="primary">
|
|
57
|
+
Primary title
|
|
58
|
+
</Heading>
|
|
59
|
+
<Heading type="h2" color="secondary">
|
|
60
|
+
Secondary title
|
|
61
|
+
</Heading>
|
|
62
|
+
<Box style={{
|
|
63
|
+
backgroundColor: "var(--primary-color)"
|
|
64
|
+
}} padding="small">
|
|
65
|
+
<Heading element="div" type="h2" align="center" color="onPrimary">
|
|
66
|
+
On primary title
|
|
67
|
+
</Heading>
|
|
68
|
+
</Box>
|
|
69
|
+
<Box backgroundColor="invertedColorBackground" padding="small">
|
|
70
|
+
<Heading element="div" type="h2" align="center" color="onInverted">
|
|
71
|
+
On inverted title
|
|
72
|
+
</Heading>
|
|
73
|
+
</Box>
|
|
74
|
+
</Flex>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Overflow
|
|
78
|
+
|
|
79
|
+
```tsx
|
|
80
|
+
<Flex id={OVERFLOW_TITLE_CONTAINER_ID} direction="column" gap="medium" align="stretch" style={{
|
|
81
|
+
width: "480px"
|
|
82
|
+
}}>
|
|
83
|
+
<Heading type="h2">Heading without overflow</Heading>
|
|
84
|
+
<Heading type="h2"
|
|
85
|
+
/**for testing purposes**/ data-testid={ONE_LINE_ELLIPSIS_TEST_ID} tooltipProps={{
|
|
86
|
+
containerSelector: `#${OVERFLOW_TITLE_CONTAINER_ID}`
|
|
87
|
+
}}>
|
|
88
|
+
Heading with ellipsis and tooltip when hovering
|
|
89
|
+
</Heading>
|
|
90
|
+
<div>
|
|
91
|
+
<Heading type="h2" maxLines={2}>
|
|
92
|
+
Heading with two lines overflow and a tooltip. Heading with two lines overflow and a tooltip. Heading with two
|
|
93
|
+
lines overflow and a tooltip.
|
|
94
|
+
</Heading>
|
|
95
|
+
</div>
|
|
96
|
+
</Flex>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Built-in page header (not editable)
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
<div style={{
|
|
103
|
+
width: "100%"
|
|
104
|
+
}}>
|
|
105
|
+
<Heading type="h1" id="my-work-id">
|
|
106
|
+
My work
|
|
107
|
+
</Heading>
|
|
108
|
+
<Divider />
|
|
109
|
+
<Flex align="center" gap="small" aria-labelledby="my-work-id" style={{
|
|
110
|
+
marginTop: "var(--space-16)"
|
|
111
|
+
}}>
|
|
112
|
+
<Box style={{
|
|
113
|
+
width: "146px"
|
|
114
|
+
}}>
|
|
115
|
+
<Search placeholder="Search" />
|
|
116
|
+
</Box>
|
|
117
|
+
<Checkbox label="Hide done items" checked />
|
|
118
|
+
<Button leftIcon={Custom} kind="tertiary">
|
|
119
|
+
Customize
|
|
120
|
+
</Button>
|
|
121
|
+
</Flex>
|
|
122
|
+
</div>
|
|
123
|
+
```
|
|
124
|
+
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Storybook Code Examples
|
|
2
|
+
|
|
3
|
+
## VibeIcon
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
<Icon id="vibe-icon" type="svg" icon={Bolt} label="my bolt svg icon" size={16} />
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## FontIcon
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
<Icon id="font-icon" type="font" label="my font awesome start icon" icon="fa fa-star" />
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## CustomSvg
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<Icon id="custom-svg-icon" type="src" icon="https://cdn.monday.com/images/apps/custom-icons/Form.svg" label="my src awesome icon" size={20} useCurrentColor />
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Color
|
|
22
|
+
|
|
23
|
+
```tsx
|
|
24
|
+
<div style={{
|
|
25
|
+
color: "var(--sb-color-sofia_pink)"
|
|
26
|
+
}}>
|
|
27
|
+
<Icon id="colored-icon" type="svg" icon={Bolt} label="my bolt svg icon" size={16} />
|
|
28
|
+
</div>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## IconsListStory
|
|
32
|
+
|
|
33
|
+
```tsx
|
|
34
|
+
interface IconMeta {
|
|
35
|
+
name: string;
|
|
36
|
+
tags: string;
|
|
37
|
+
file: string;
|
|
38
|
+
}
|
|
39
|
+
const [query, setQuery] = useState("");
|
|
40
|
+
return <section style={{
|
|
41
|
+
width: "100%"
|
|
42
|
+
}}>
|
|
43
|
+
<Search value={query} onChange={setQuery} placeholder="Search for icons" />
|
|
44
|
+
<div style={{
|
|
45
|
+
display: "grid",
|
|
46
|
+
gridTemplateColumns: "repeat(auto-fill, minmax(250px, 1fr))",
|
|
47
|
+
gap: "var(--sb-spacing-large)",
|
|
48
|
+
marginTop: "var(--sb-spacing-large)"
|
|
49
|
+
}}>
|
|
50
|
+
{iconsMetaData.filter((icon: IconMeta) => {
|
|
51
|
+
return `${icon.tags},${icon.name}`.toLowerCase().includes(query.toLowerCase());
|
|
52
|
+
}).map((icon: IconMeta) => {
|
|
53
|
+
const fileName = icon.file.split(".")[0] as string;
|
|
54
|
+
const Component = allIcons[fileName as keyof typeof allIcons] as SubIcon;
|
|
55
|
+
return <>
|
|
56
|
+
<Flex style={{
|
|
57
|
+
color: "var(--sb-icon-color)"
|
|
58
|
+
}} gap="small">
|
|
59
|
+
<Icon icon={Component} size={26} />
|
|
60
|
+
<span>{icon.name}</span>
|
|
61
|
+
</Flex>
|
|
62
|
+
</>;
|
|
63
|
+
})}
|
|
64
|
+
</div>
|
|
65
|
+
</section>;
|
|
66
|
+
```
|
|
67
|
+
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# Storybook Code Examples
|
|
2
|
+
|
|
3
|
+
## Kinds
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
<div style={{
|
|
7
|
+
display: "flex",
|
|
8
|
+
justifyContent: "space-evenly",
|
|
9
|
+
alignItems: "center",
|
|
10
|
+
width: "100%"
|
|
11
|
+
}}>
|
|
12
|
+
<IconButton id="kinds-primary" icon={Bolt} kind="primary" aria-label="My primary IconButton" />
|
|
13
|
+
<IconButton id="kinds-secondary" icon={Bolt} kind="secondary" aria-label="My secondary IconButton" />
|
|
14
|
+
<IconButton id="kinds-tertiary" icon={Bolt} kind="tertiary" aria-label="My tertiary IconButton" />
|
|
15
|
+
</div>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Sizes
|
|
19
|
+
|
|
20
|
+
```tsx
|
|
21
|
+
<div style={{
|
|
22
|
+
display: "flex",
|
|
23
|
+
justifyContent: "space-evenly",
|
|
24
|
+
alignItems: "center",
|
|
25
|
+
width: "100%"
|
|
26
|
+
}}>
|
|
27
|
+
<IconButton key="xxs" id="sizes-xxs" icon={Robot} kind="secondary" size="xxs" aria-label="My xxs IconButton" />
|
|
28
|
+
<IconButton key="xs" id="sizes-xs" icon={Robot} kind="secondary" size="xs" aria-label="My xs IconButton" />
|
|
29
|
+
<IconButton key="small" id="sizes-small" icon={Robot} kind="secondary" size="small" aria-label="My small IconButton" />
|
|
30
|
+
<IconButton key="medium" id="sizes-medium" icon={Robot} kind="secondary" size="medium" aria-label="My medium IconButton" />
|
|
31
|
+
<IconButton key="large" id="sizes-large" icon={Robot} kind="secondary" size="large" aria-label="My large IconButton" />
|
|
32
|
+
</div>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Active
|
|
36
|
+
|
|
37
|
+
```tsx
|
|
38
|
+
<div style={{
|
|
39
|
+
display: "flex",
|
|
40
|
+
justifyContent: "space-evenly",
|
|
41
|
+
alignItems: "center",
|
|
42
|
+
width: "100%"
|
|
43
|
+
}}>
|
|
44
|
+
<IconButton id="active-primary" icon={Doc} kind="primary" aria-label="My small active IconButton" active />
|
|
45
|
+
<IconButton id="active-secondary" icon={Doc} kind="secondary" aria-label="My active medium IconButton" active />
|
|
46
|
+
<IconButton id="active-tertiary" icon={Doc} kind="tertiary" aria-label="My active large IconButton" active />
|
|
47
|
+
</div>
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Disabled
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
<div style={{
|
|
54
|
+
display: "flex",
|
|
55
|
+
justifyContent: "space-evenly",
|
|
56
|
+
alignItems: "center",
|
|
57
|
+
width: "100%"
|
|
58
|
+
}}>
|
|
59
|
+
<IconButton id="disabled-primary" icon={Doc} kind="primary" aria-label="My small disabled IconButton" disabled disabledReason="This function is not available" />
|
|
60
|
+
<IconButton id="disabled-secondary" icon={Doc} kind="secondary" aria-label="My disabled medium IconButton" disabled disabledReason="This function is not available" />
|
|
61
|
+
<IconButton id="disabled-tertiary" icon={Doc} kind="tertiary" aria-label="My disabled large IconButton" disabled disabledReason="This function is not available" />
|
|
62
|
+
</div>
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Icon button as toolbar button
|
|
66
|
+
|
|
67
|
+
```tsx
|
|
68
|
+
<Box border rounded="medium" style={{
|
|
69
|
+
width: "50%"
|
|
70
|
+
}}>
|
|
71
|
+
<Flex direction="column" align="start">
|
|
72
|
+
<Flex gap="small" style={{
|
|
73
|
+
padding: "var(--sb-spacing-small)"
|
|
74
|
+
}}>
|
|
75
|
+
<Icon icon={Drag} />
|
|
76
|
+
<Text type="text1">Widget name</Text>
|
|
77
|
+
<IconButton id="toolbar-filter-button" icon={Filter} aria-label="Filter the widget by everything" size="small" />
|
|
78
|
+
</Flex>
|
|
79
|
+
<Divider withoutMargin />
|
|
80
|
+
<div style={{
|
|
81
|
+
height: "200px",
|
|
82
|
+
width: "100%",
|
|
83
|
+
backgroundColor: "var(--sb-primary-background-hover-color)"
|
|
84
|
+
}} />
|
|
85
|
+
</Flex>
|
|
86
|
+
</Box>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Icon button as close button
|
|
90
|
+
|
|
91
|
+
```tsx
|
|
92
|
+
<Flex gap="medium" style={{
|
|
93
|
+
width: "100%"
|
|
94
|
+
}}>
|
|
95
|
+
<Box border rounded="small" paddingX="large" style={{
|
|
96
|
+
width: "100%"
|
|
97
|
+
}}>
|
|
98
|
+
<Flex justify="start" gap="large" style={{
|
|
99
|
+
height: "94px"
|
|
100
|
+
}}>
|
|
101
|
+
<Flex direction="column" justify="center" style={{
|
|
102
|
+
color: "var(--sb-icon-color)"
|
|
103
|
+
}}>
|
|
104
|
+
<Icon icon={Item} size={40} />
|
|
105
|
+
<Text type="text1" id="monday-recycle-bin-title">
|
|
106
|
+
Item
|
|
107
|
+
</Text>
|
|
108
|
+
</Flex>
|
|
109
|
+
<Divider direction="vertical" />
|
|
110
|
+
<Avatar size="large" src={person1} type="img" />
|
|
111
|
+
<Flex direction="column" align="start" aria-labelledby="monday-recycle-bin-title" style={{
|
|
112
|
+
flexGrow: 1
|
|
113
|
+
}}>
|
|
114
|
+
<Flex gap="xs">
|
|
115
|
+
<Link withoutSpacing href="">
|
|
116
|
+
Hadas Farhi
|
|
117
|
+
</Link>
|
|
118
|
+
<span>deleted the item</span>
|
|
119
|
+
<Text type="text1" element="span" weight="medium">
|
|
120
|
+
Hello World
|
|
121
|
+
</Text>
|
|
122
|
+
<span>from the board</span>
|
|
123
|
+
</Flex>
|
|
124
|
+
<Text type="text1" element="span" weight="medium">
|
|
125
|
+
Tasks
|
|
126
|
+
</Text>
|
|
127
|
+
<Flex gap="xs">
|
|
128
|
+
<Icon icon={Time} />
|
|
129
|
+
<Text weight="medium">13m</Text>
|
|
130
|
+
<Text>(Available for restore in the next 1M)</Text>
|
|
131
|
+
</Flex>
|
|
132
|
+
</Flex>
|
|
133
|
+
<Button id="restore-button" aria-label="Restore deleted item">
|
|
134
|
+
Restore
|
|
135
|
+
</Button>
|
|
136
|
+
</Flex>
|
|
137
|
+
</Box>
|
|
138
|
+
<IconButton id="close-recycle-button" icon={CloseSmall} size="small" aria-label="Remove from Recycle bin" />
|
|
139
|
+
</Flex>
|
|
140
|
+
```
|
|
141
|
+
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Storybook Code Examples
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
<Info {...args} />
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Directions
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
<Flex justify="center" align="center" style={{
|
|
13
|
+
minHeight: "400px",
|
|
14
|
+
width: "100%"
|
|
15
|
+
}}>
|
|
16
|
+
<Box style={{
|
|
17
|
+
display: "grid",
|
|
18
|
+
gridTemplateColumns: "1fr 1fr",
|
|
19
|
+
gridTemplateRows: "1fr 1fr",
|
|
20
|
+
gap: "var(--space-48)",
|
|
21
|
+
alignItems: "center",
|
|
22
|
+
justifyItems: "center"
|
|
23
|
+
}}>
|
|
24
|
+
<Flex direction="column" gap="medium" align="center">
|
|
25
|
+
<Text id="bottom-direction" align="center" type="text1" weight="medium" ellipsis={false}>
|
|
26
|
+
Bottom
|
|
27
|
+
</Text>
|
|
28
|
+
<Info id="bottom-direction-info-button" aria-labelledby="bottom-direction" title="Placement: Bottom" body="This dialog's direction is from the bottom" link={{
|
|
29
|
+
text: "Learn more about dialog direction",
|
|
30
|
+
href: "#"
|
|
31
|
+
}} position="bottom-start" />
|
|
32
|
+
</Flex>
|
|
33
|
+
<Flex direction="column" gap="medium" align="center">
|
|
34
|
+
<Text id="left-direction" align="center" type="text1" weight="medium" ellipsis={false}>
|
|
35
|
+
Left
|
|
36
|
+
</Text>
|
|
37
|
+
<Info id="left-direction-info-button" aria-labelledby="left-direction" title="Placement: Left" body="This dialog's direction is from the left" link={{
|
|
38
|
+
text: "Learn more about dialog direction",
|
|
39
|
+
href: "#"
|
|
40
|
+
}} position="left-start" />
|
|
41
|
+
</Flex>
|
|
42
|
+
<Flex direction="column" gap="medium" align="center">
|
|
43
|
+
<Text id="right-direction" align="center" type="text1" weight="medium" ellipsis={false}>
|
|
44
|
+
Right
|
|
45
|
+
</Text>
|
|
46
|
+
<Info id="right-direction-info-button" aria-labelledby="right-direction" title="Placement: Right" body="This dialog's direction is from the right" link={{
|
|
47
|
+
text: "Learn more about dialog direction",
|
|
48
|
+
href: "#"
|
|
49
|
+
}} position="right-start" />
|
|
50
|
+
</Flex>
|
|
51
|
+
<Flex direction="column" gap="medium" align="center">
|
|
52
|
+
<Text id="top-direction" align="center" type="text1" weight="medium" ellipsis={false}>
|
|
53
|
+
Top
|
|
54
|
+
</Text>
|
|
55
|
+
<Info id="top-direction-info-button" aria-labelledby="top-direction" title="Placement: Top" body="This dialog's direction is from the top" link={{
|
|
56
|
+
text: "Learn more about dialog direction",
|
|
57
|
+
href: "#"
|
|
58
|
+
}} position="top-start" />
|
|
59
|
+
</Flex>
|
|
60
|
+
</Box>
|
|
61
|
+
</Flex>
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## WithCustomLink
|
|
65
|
+
|
|
66
|
+
```tsx
|
|
67
|
+
<Info id="custom-link-info" aria-label="Information with external link" title="External link example" body="This info dialog contains a link that opens in a new tab." link={{
|
|
68
|
+
text: "Visit external site",
|
|
69
|
+
href: "https://www.example.com",
|
|
70
|
+
target: "_blank",
|
|
71
|
+
rel: "noopener noreferrer"
|
|
72
|
+
}} />
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Disabled
|
|
76
|
+
|
|
77
|
+
```tsx
|
|
78
|
+
<Info id="disabled-info" aria-label="Disabled information" title="Disabled info" body="This info dialog is disabled and cannot be opened." disabled />
|
|
79
|
+
```
|
|
80
|
+
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# Storybook Code Examples
|
|
2
|
+
|
|
3
|
+
## Kinds
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
<Flex style={{
|
|
7
|
+
marginLeft: "30px",
|
|
8
|
+
marginTop: "10px",
|
|
9
|
+
gap: "184px"
|
|
10
|
+
}}>
|
|
11
|
+
<Flex direction="column" align="start" gap="large">
|
|
12
|
+
<Label id="kinds-fill" text="New" />
|
|
13
|
+
<Text>Fill</Text>
|
|
14
|
+
</Flex>
|
|
15
|
+
<Flex direction="column" align="start" gap="large">
|
|
16
|
+
<Label id="kinds-outline" text="New" kind="line" />
|
|
17
|
+
<Text>Outline</Text>
|
|
18
|
+
</Flex>
|
|
19
|
+
</Flex>
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Sizes
|
|
23
|
+
|
|
24
|
+
```tsx
|
|
25
|
+
<>
|
|
26
|
+
<Label id="sizes-medium" text="New" />
|
|
27
|
+
<Label id="sizes-small" text="New" size="small" />
|
|
28
|
+
</>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Colors
|
|
32
|
+
|
|
33
|
+
```tsx
|
|
34
|
+
<>
|
|
35
|
+
<Label id="colors-default-fill" text="New" />
|
|
36
|
+
<Label id="colors-negative-fill" text="New" color="negative" />
|
|
37
|
+
<Label id="colors-positive-fill" text="New" color="positive" />
|
|
38
|
+
<Label id="colors-dark-fill" text="New" color="dark" />
|
|
39
|
+
<Label id="colors-default-line" text="New" kind="line" />
|
|
40
|
+
<Label id="colors-negative-line" text="New" color="negative" kind="line" />
|
|
41
|
+
<Label id="colors-positive-line" text="New" color="positive" kind="line" />
|
|
42
|
+
<Label id="colors-dark-line" text="New" color="dark" kind="line" />
|
|
43
|
+
</>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Clickable
|
|
47
|
+
|
|
48
|
+
```tsx
|
|
49
|
+
<>
|
|
50
|
+
<Label id="clickable-fill" aria-label="Clickable new feature label" text="New" onClick={() => {}} />
|
|
51
|
+
<Label id="clickable-line" aria-label="Clickable new feature label" text="New" kind="line" onClick={() => {}} />
|
|
52
|
+
</>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Secondary label
|
|
56
|
+
|
|
57
|
+
```tsx
|
|
58
|
+
<Flex direction="column" gap="large">
|
|
59
|
+
<Box style={{
|
|
60
|
+
width: "300px"
|
|
61
|
+
}}>
|
|
62
|
+
<Flex align="center" gap="small">
|
|
63
|
+
<Heading id="gantt-heading" type="h3">
|
|
64
|
+
Gannt
|
|
65
|
+
</Heading>
|
|
66
|
+
<Label id="gantt-label" text="New" kind="line" />
|
|
67
|
+
</Flex>
|
|
68
|
+
<Text element="p" type="text1">
|
|
69
|
+
Plan, track and present your projects visually using the Gannt chart
|
|
70
|
+
</Text>
|
|
71
|
+
</Box>
|
|
72
|
+
<Box style={{
|
|
73
|
+
width: "300px",
|
|
74
|
+
marginTop: "8px"
|
|
75
|
+
}}>
|
|
76
|
+
<Flex align="center" gap="small">
|
|
77
|
+
<Heading id="apps-heading" type="h3" style={{
|
|
78
|
+
display: "inline"
|
|
79
|
+
}}>
|
|
80
|
+
Apps
|
|
81
|
+
</Heading>
|
|
82
|
+
<Label id="apps-label" text="New" kind="line" />
|
|
83
|
+
</Flex>
|
|
84
|
+
<Text element="p" type="text1" style={{
|
|
85
|
+
marginTop: "8px"
|
|
86
|
+
}}>
|
|
87
|
+
Enhance your dashboard with widgets built on the monday apps framework
|
|
88
|
+
</Text>
|
|
89
|
+
</Box>
|
|
90
|
+
</Flex>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Celebration
|
|
94
|
+
|
|
95
|
+
```tsx
|
|
96
|
+
const [animate, setAnimate] = useState(false);
|
|
97
|
+
useEffect(() => {
|
|
98
|
+
setTimeout(() => {
|
|
99
|
+
setAnimate(false);
|
|
100
|
+
}, 500);
|
|
101
|
+
}, [animate]);
|
|
102
|
+
return <>
|
|
103
|
+
<Label id="celebration-label" text="New" kind="line" celebrationAnimation={animate} />
|
|
104
|
+
<Button id="celebration-button" aria-label="Trigger celebration animation" size="small" kind="tertiary" onClick={() => setAnimate(true)}>
|
|
105
|
+
Click to celebrate
|
|
106
|
+
</Button>
|
|
107
|
+
</>;
|
|
108
|
+
```
|
|
109
|
+
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Storybook Code Examples
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
<Link id="overview-link" text="Read more" href="https://www.monday.com" {...args} />
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## States
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
<Link id="states-default" text="Default" href="https://www.monday.com" />
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## RightToLeft
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<>
|
|
19
|
+
<Link id="rtl-arabic" text="اقرأ أكثر" href="https://www.monday.com" icon={IconLink} />
|
|
20
|
+
<Link id="rtl-hebrew" text="קרא עוד" href="https://www.monday.com" iconPosition="end" icon={Info} />
|
|
21
|
+
</>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## WithIcons
|
|
25
|
+
|
|
26
|
+
```tsx
|
|
27
|
+
<>
|
|
28
|
+
<Link id="icon-start" text="Read more" href="https://www.monday.com" icon={ExternalPage} />
|
|
29
|
+
<Link id="icon-end" text="Read more" href="https://www.monday.com" iconPosition="end" icon={ExternalPage} />
|
|
30
|
+
</>
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## ReferenceLink
|
|
34
|
+
|
|
35
|
+
```tsx
|
|
36
|
+
<div>
|
|
37
|
+
{`Lorem Ipsum has been the industry's `}
|
|
38
|
+
<Link id="reference-link" inlineText inheritFontSize text="standard" href="https://www.monday.com" />
|
|
39
|
+
{` dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.`}
|
|
40
|
+
</div>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## ShorteningTexts
|
|
44
|
+
|
|
45
|
+
```tsx
|
|
46
|
+
<div>
|
|
47
|
+
{`Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a
|
|
48
|
+
galley of type and scrambled it to make a type specimen book. `}
|
|
49
|
+
<Link id="shortening-link" text="Read more" href="https://www.monday.com" inheritFontSize inlineText />
|
|
50
|
+
</div>
|
|
51
|
+
```
|
|
52
|
+
|