@a2v2ai/uikit 0.0.1 → 0.0.3
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/Alert/Alert.stories.tsx +121 -0
- package/Alert/Alert.tsx +71 -0
- package/AlertDialog/AlertDialog.stories.tsx +665 -0
- package/AlertDialog/AlertDialog.tsx +241 -0
- package/Avatar/Avatar.stories.tsx +128 -0
- package/Avatar/Avatar.tsx +71 -0
- package/Badge/Badge.stories.tsx +76 -0
- package/Badge/Badge.tsx +39 -0
- package/Breadcrumb/Breadcrumb.stories.tsx +231 -0
- package/Breadcrumb/Breadcrumb.tsx +114 -0
- package/Button/Button.stories.tsx +684 -0
- package/Button/Button.tsx +90 -0
- package/Calendar/Calendar.stories.tsx +207 -0
- package/Calendar/Calendar.tsx +232 -0
- package/Card/Card.stories.tsx +136 -0
- package/Card/Card.tsx +96 -0
- package/ChatBubble/ChatBubble.stories.tsx +307 -0
- package/ChatBubble/ChatBubble.tsx +167 -0
- package/Checkbox/Checkbox.stories.tsx +137 -0
- package/Checkbox/Checkbox.tsx +53 -0
- package/Drawer/Drawer.stories.tsx +721 -0
- package/Drawer/Drawer.tsx +201 -0
- package/DropdownMenu/DropdownMenu.stories.tsx +251 -0
- package/DropdownMenu/DropdownMenu.tsx +199 -0
- package/ErrorMessage/ErrorMessage.stories.tsx +159 -0
- package/ErrorMessage/ErrorMessage.tsx +55 -0
- package/Flex/Flex.tsx +102 -0
- package/IconButton/IconButton.stories.tsx +566 -0
- package/IconButton/IconButton.tsx +95 -0
- package/Input/Input.stories.tsx +456 -0
- package/Input/Input.tsx +129 -0
- package/InputOTP/InputOTP.stories.tsx +246 -0
- package/InputOTP/InputOTP.tsx +127 -0
- package/Label/Label.stories.tsx +105 -0
- package/Label/Label.tsx +43 -0
- package/Loader/Loader.stories.tsx +170 -0
- package/Loader/Loader.tsx +62 -0
- package/Popover/Popover.stories.tsx +133 -0
- package/Popover/Popover.tsx +31 -0
- package/Progress/Progress.stories.tsx +146 -0
- package/Progress/Progress.tsx +67 -0
- package/README.md +12 -12
- package/RadioGroup/RadioGroup.stories.tsx +159 -0
- package/RadioGroup/RadioGroup.tsx +68 -0
- package/ScrollArea/ScrollArea.stories.tsx +136 -0
- package/ScrollArea/ScrollArea.tsx +46 -0
- package/Select/Select.stories.tsx +242 -0
- package/Select/Select.tsx +180 -0
- package/Separator/Separator.stories.tsx +110 -0
- package/Separator/Separator.tsx +29 -0
- package/Skeleton/Skeleton.stories.tsx +117 -0
- package/Skeleton/Skeleton.tsx +16 -0
- package/Spinner/Spinner.stories.tsx +210 -0
- package/Spinner/Spinner.tsx +78 -0
- package/Switch/Switch.stories.tsx +146 -0
- package/Switch/Switch.tsx +59 -0
- package/Tabs/Tabs.stories.tsx +197 -0
- package/Tabs/Tabs.tsx +74 -0
- package/Textarea/Textarea.stories.tsx +170 -0
- package/Textarea/Textarea.tsx +51 -0
- package/Toast/Toast.stories.tsx +285 -0
- package/Toast/Toast.tsx +59 -0
- package/Tooltip/Tooltip.stories.tsx +463 -0
- package/Tooltip/Tooltip.tsx +96 -0
- package/Typography/Typography.stories.tsx +235 -0
- package/Typography/Typography.tsx +171 -0
- package/helpers.ts +5 -0
- package/icons.ts +2 -0
- package/index.ts +136 -0
- package/lib/utils.ts +15 -0
- package/package.json +4 -1
- package/tsconfig.json +24 -0
- package/Alert/Alert.d.ts +0 -11
- package/Alert/Alert.js +0 -64
- package/AlertDialog/AlertDialog.d.ts +0 -35
- package/AlertDialog/AlertDialog.js +0 -121
- package/Avatar/Avatar.d.ts +0 -12
- package/Avatar/Avatar.js +0 -64
- package/Badge/Badge.d.ts +0 -9
- package/Badge/Badge.js +0 -26
- package/Breadcrumb/Breadcrumb.d.ts +0 -19
- package/Breadcrumb/Breadcrumb.js +0 -65
- package/Button/Button.d.ts +0 -14
- package/Button/Button.js +0 -75
- package/Calendar/Calendar.d.ts +0 -16
- package/Calendar/Calendar.js +0 -113
- package/Card/Card.d.ts +0 -14
- package/Card/Card.js +0 -70
- package/ChatBubble/ChatBubble.d.ts +0 -29
- package/ChatBubble/ChatBubble.js +0 -133
- package/Checkbox/Checkbox.d.ts +0 -10
- package/Checkbox/Checkbox.js +0 -57
- package/Dialog/Dialog.d.ts +0 -35
- package/Dialog/Dialog.js +0 -130
- package/Drawer/Drawer.d.ts +0 -31
- package/Drawer/Drawer.js +0 -69
- package/DropdownMenu/DropdownMenu.d.ts +0 -27
- package/DropdownMenu/DropdownMenu.js +0 -85
- package/ErrorMessage/ErrorMessage.d.ts +0 -27
- package/ErrorMessage/ErrorMessage.js +0 -15
- package/Flex/Flex.d.ts +0 -23
- package/Flex/Flex.js +0 -101
- package/IconButton/IconButton.d.ts +0 -17
- package/IconButton/IconButton.js +0 -85
- package/Input/Input.d.ts +0 -16
- package/Input/Input.js +0 -75
- package/InputOTP/InputOTP.d.ts +0 -18
- package/InputOTP/InputOTP.js +0 -85
- package/Label/Label.d.ts +0 -10
- package/Label/Label.js +0 -57
- package/Loader/Loader.d.ts +0 -18
- package/Loader/Loader.js +0 -67
- package/Popover/Popover.d.ts +0 -7
- package/Popover/Popover.js +0 -49
- package/Progress/Progress.d.ts +0 -13
- package/Progress/Progress.js +0 -71
- package/RadioGroup/RadioGroup.d.ts +0 -11
- package/RadioGroup/RadioGroup.js +0 -64
- package/ScrollArea/ScrollArea.d.ts +0 -5
- package/ScrollArea/ScrollArea.js +0 -48
- package/Select/Select.d.ts +0 -19
- package/Select/Select.js +0 -85
- package/Separator/Separator.d.ts +0 -4
- package/Separator/Separator.js +0 -43
- package/Skeleton/Skeleton.d.ts +0 -4
- package/Skeleton/Skeleton.js +0 -8
- package/Spinner/Spinner.d.ts +0 -15
- package/Spinner/Spinner.js +0 -68
- package/Switch/Switch.d.ts +0 -10
- package/Switch/Switch.js +0 -67
- package/Tabs/Tabs.d.ts +0 -13
- package/Tabs/Tabs.js +0 -64
- package/Textarea/Textarea.d.ts +0 -10
- package/Textarea/Textarea.js +0 -64
- package/Toast/Toast.d.ts +0 -10
- package/Toast/Toast.js +0 -29
- package/Tooltip/Tooltip.d.ts +0 -15
- package/Tooltip/Tooltip.js +0 -68
- package/Typography/Typography.d.ts +0 -15
- package/Typography/Typography.js +0 -125
- package/helpers.d.ts +0 -4
- package/helpers.js +0 -13
- package/icons.d.ts +0 -1
- package/icons.js +0 -18
- package/index.d.ts +0 -35
- package/index.js +0 -183
- package/lib/utils.d.ts +0 -3
- package/lib/utils.js +0 -18
|
@@ -0,0 +1,684 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react"
|
|
2
|
+
import { ArrowRight, Mail, Plus, Search, Trash2, Download, ChevronDown } from "../icons"
|
|
3
|
+
import { Typography } from "../Typography/Typography"
|
|
4
|
+
import { Flex } from "../Flex/Flex"
|
|
5
|
+
import { Button } from "./Button"
|
|
6
|
+
|
|
7
|
+
const meta: Meta<typeof Button> = {
|
|
8
|
+
title: "Components/Button",
|
|
9
|
+
component: Button,
|
|
10
|
+
parameters: {
|
|
11
|
+
layout: "centered",
|
|
12
|
+
},
|
|
13
|
+
tags: ["autodocs"],
|
|
14
|
+
argTypes: {
|
|
15
|
+
variant: {
|
|
16
|
+
control: "select",
|
|
17
|
+
options: [
|
|
18
|
+
"primary",
|
|
19
|
+
"secondary",
|
|
20
|
+
"outline",
|
|
21
|
+
"ghost",
|
|
22
|
+
"ghost-muted",
|
|
23
|
+
"destructive",
|
|
24
|
+
],
|
|
25
|
+
description: "The visual style variant of the button",
|
|
26
|
+
},
|
|
27
|
+
size: {
|
|
28
|
+
control: "select",
|
|
29
|
+
options: ["mini", "small", "regular", "large"],
|
|
30
|
+
description: "The size of the button",
|
|
31
|
+
},
|
|
32
|
+
roundness: {
|
|
33
|
+
control: "select",
|
|
34
|
+
options: ["default", "round"],
|
|
35
|
+
description: "The roundness of the button corners",
|
|
36
|
+
},
|
|
37
|
+
disabled: {
|
|
38
|
+
control: "boolean",
|
|
39
|
+
description: "Whether the button is disabled",
|
|
40
|
+
},
|
|
41
|
+
asChild: {
|
|
42
|
+
control: "boolean",
|
|
43
|
+
description: "Render as child element (for use with Link components)",
|
|
44
|
+
},
|
|
45
|
+
leftIcon: {
|
|
46
|
+
control: false,
|
|
47
|
+
description: "Icon to display on the left side of the button",
|
|
48
|
+
},
|
|
49
|
+
rightIcon: {
|
|
50
|
+
control: false,
|
|
51
|
+
description: "Icon to display on the right side of the button",
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export default meta
|
|
57
|
+
type Story = StoryObj<typeof Button>
|
|
58
|
+
|
|
59
|
+
export const Primary: Story = {
|
|
60
|
+
args: {
|
|
61
|
+
children: "Button",
|
|
62
|
+
variant: "primary",
|
|
63
|
+
},
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export const Secondary: Story = {
|
|
67
|
+
args: {
|
|
68
|
+
children: "Button",
|
|
69
|
+
variant: "secondary",
|
|
70
|
+
},
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export const Outline: Story = {
|
|
74
|
+
args: {
|
|
75
|
+
children: "Button",
|
|
76
|
+
variant: "outline",
|
|
77
|
+
},
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export const Ghost: Story = {
|
|
81
|
+
args: {
|
|
82
|
+
children: "Button",
|
|
83
|
+
variant: "ghost",
|
|
84
|
+
},
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export const GhostMuted: Story = {
|
|
88
|
+
args: {
|
|
89
|
+
children: "Button",
|
|
90
|
+
variant: "ghost-muted",
|
|
91
|
+
},
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export const Destructive: Story = {
|
|
95
|
+
args: {
|
|
96
|
+
children: "Button",
|
|
97
|
+
variant: "destructive",
|
|
98
|
+
},
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export const Disabled: Story = {
|
|
102
|
+
args: {
|
|
103
|
+
children: "Button",
|
|
104
|
+
disabled: true,
|
|
105
|
+
},
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export const Sizes: Story = {
|
|
109
|
+
render: () => (
|
|
110
|
+
<Flex align="center" gap={4}>
|
|
111
|
+
<Button size="mini">Mini</Button>
|
|
112
|
+
<Button size="small">Small</Button>
|
|
113
|
+
<Button size="regular">Regular</Button>
|
|
114
|
+
<Button size="large">Large</Button>
|
|
115
|
+
</Flex>
|
|
116
|
+
),
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export const Variants: Story = {
|
|
120
|
+
render: () => (
|
|
121
|
+
<Flex align="center" gap={4}>
|
|
122
|
+
<Button variant="primary">Primary</Button>
|
|
123
|
+
<Button variant="secondary">Secondary</Button>
|
|
124
|
+
<Button variant="outline">Outline</Button>
|
|
125
|
+
<Button variant="ghost">Ghost</Button>
|
|
126
|
+
<Button variant="ghost-muted">Ghost Muted</Button>
|
|
127
|
+
<Button variant="destructive">Destructive</Button>
|
|
128
|
+
</Flex>
|
|
129
|
+
),
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export const Rounded: Story = {
|
|
133
|
+
render: () => (
|
|
134
|
+
<Flex align="center" gap={4}>
|
|
135
|
+
<Button roundness="round" variant="primary">
|
|
136
|
+
Primary
|
|
137
|
+
</Button>
|
|
138
|
+
<Button roundness="round" variant="secondary">
|
|
139
|
+
Secondary
|
|
140
|
+
</Button>
|
|
141
|
+
<Button roundness="round" variant="outline">
|
|
142
|
+
Outline
|
|
143
|
+
</Button>
|
|
144
|
+
<Button roundness="round" variant="ghost">
|
|
145
|
+
Ghost
|
|
146
|
+
</Button>
|
|
147
|
+
</Flex>
|
|
148
|
+
),
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export const WithIcons: Story = {
|
|
152
|
+
render: () => (
|
|
153
|
+
<Flex direction="column" gap={4}>
|
|
154
|
+
<Flex align="center" gap={4}>
|
|
155
|
+
<Button leftIcon={<Mail />}>
|
|
156
|
+
Login with Email
|
|
157
|
+
</Button>
|
|
158
|
+
<Button rightIcon={<ArrowRight />}>
|
|
159
|
+
Next Step
|
|
160
|
+
</Button>
|
|
161
|
+
<Button leftIcon={<Plus />} rightIcon={<ChevronDown />}>
|
|
162
|
+
Add New
|
|
163
|
+
</Button>
|
|
164
|
+
</Flex>
|
|
165
|
+
<Flex align="center" gap={4}>
|
|
166
|
+
<Button variant="secondary" leftIcon={<Search />}>
|
|
167
|
+
Search
|
|
168
|
+
</Button>
|
|
169
|
+
<Button variant="outline" leftIcon={<Download />}>
|
|
170
|
+
Download
|
|
171
|
+
</Button>
|
|
172
|
+
<Button variant="destructive" leftIcon={<Trash2 />}>
|
|
173
|
+
Delete
|
|
174
|
+
</Button>
|
|
175
|
+
</Flex>
|
|
176
|
+
</Flex>
|
|
177
|
+
),
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
export const IconPositions: Story = {
|
|
181
|
+
parameters: {
|
|
182
|
+
layout: "padded",
|
|
183
|
+
},
|
|
184
|
+
render: () => (
|
|
185
|
+
<Flex direction="column" gap={6}>
|
|
186
|
+
<Typography variant="subtitle1" color="main-700">Icon Positions</Typography>
|
|
187
|
+
|
|
188
|
+
{/* No Icons */}
|
|
189
|
+
<Flex direction="column" gap={2}>
|
|
190
|
+
<Typography variant="body3" color="main-500">No Icons</Typography>
|
|
191
|
+
<Flex align="center" gap={3}>
|
|
192
|
+
<Button variant="primary">Label</Button>
|
|
193
|
+
<Button variant="secondary">Label</Button>
|
|
194
|
+
<Button variant="outline">Label</Button>
|
|
195
|
+
<Button variant="ghost">Label</Button>
|
|
196
|
+
<Button variant="destructive">Label</Button>
|
|
197
|
+
</Flex>
|
|
198
|
+
</Flex>
|
|
199
|
+
|
|
200
|
+
{/* Left Icon Only */}
|
|
201
|
+
<Flex direction="column" gap={2}>
|
|
202
|
+
<Typography variant="body3" color="main-500">Left Icon Only</Typography>
|
|
203
|
+
<Flex align="center" gap={3}>
|
|
204
|
+
<Button variant="primary" leftIcon={<Mail />}>Label</Button>
|
|
205
|
+
<Button variant="secondary" leftIcon={<Plus />}>Label</Button>
|
|
206
|
+
<Button variant="outline" leftIcon={<Search />}>Label</Button>
|
|
207
|
+
<Button variant="ghost" leftIcon={<Download />}>Label</Button>
|
|
208
|
+
<Button variant="destructive" leftIcon={<Trash2 />}>Label</Button>
|
|
209
|
+
</Flex>
|
|
210
|
+
</Flex>
|
|
211
|
+
|
|
212
|
+
{/* Right Icon Only */}
|
|
213
|
+
<Flex direction="column" gap={2}>
|
|
214
|
+
<Typography variant="body3" color="main-500">Right Icon Only</Typography>
|
|
215
|
+
<Flex align="center" gap={3}>
|
|
216
|
+
<Button variant="primary" rightIcon={<ArrowRight />}>Label</Button>
|
|
217
|
+
<Button variant="secondary" rightIcon={<ChevronDown />}>Label</Button>
|
|
218
|
+
<Button variant="outline" rightIcon={<ArrowRight />}>Label</Button>
|
|
219
|
+
<Button variant="ghost" rightIcon={<ChevronDown />}>Label</Button>
|
|
220
|
+
<Button variant="destructive" rightIcon={<ArrowRight />}>Label</Button>
|
|
221
|
+
</Flex>
|
|
222
|
+
</Flex>
|
|
223
|
+
|
|
224
|
+
{/* Both Icons */}
|
|
225
|
+
<Flex direction="column" gap={2}>
|
|
226
|
+
<Typography variant="body3" color="main-500">Both Icons</Typography>
|
|
227
|
+
<Flex align="center" gap={3}>
|
|
228
|
+
<Button variant="primary" leftIcon={<Mail />} rightIcon={<ArrowRight />}>Label</Button>
|
|
229
|
+
<Button variant="secondary" leftIcon={<Plus />} rightIcon={<ChevronDown />}>Label</Button>
|
|
230
|
+
<Button variant="outline" leftIcon={<Search />} rightIcon={<ArrowRight />}>Label</Button>
|
|
231
|
+
<Button variant="ghost" leftIcon={<Download />} rightIcon={<ChevronDown />}>Label</Button>
|
|
232
|
+
<Button variant="destructive" leftIcon={<Trash2 />} rightIcon={<ArrowRight />}>Label</Button>
|
|
233
|
+
</Flex>
|
|
234
|
+
</Flex>
|
|
235
|
+
|
|
236
|
+
{/* Icon Only (Square Buttons) */}
|
|
237
|
+
<Flex direction="column" gap={2}>
|
|
238
|
+
<Typography variant="body3" color="main-500">Icon Only (Square)</Typography>
|
|
239
|
+
<Flex align="center" gap={3}>
|
|
240
|
+
<Button variant="primary" style={{ padding: "0", width: "36px", height: "36px" }}><Plus /></Button>
|
|
241
|
+
<Button variant="secondary" style={{ padding: "0", width: "36px", height: "36px" }}><Search /></Button>
|
|
242
|
+
<Button variant="outline" style={{ padding: "0", width: "36px", height: "36px" }}><Mail /></Button>
|
|
243
|
+
<Button variant="ghost" style={{ padding: "0", width: "36px", height: "36px" }}><Download /></Button>
|
|
244
|
+
<Button variant="destructive" style={{ padding: "0", width: "36px", height: "36px" }}><Trash2 /></Button>
|
|
245
|
+
</Flex>
|
|
246
|
+
</Flex>
|
|
247
|
+
|
|
248
|
+
{/* Icon Only (Round Buttons) */}
|
|
249
|
+
<Flex direction="column" gap={2}>
|
|
250
|
+
<Typography variant="body3" color="main-500">Icon Only (Round)</Typography>
|
|
251
|
+
<Flex align="center" gap={3}>
|
|
252
|
+
<Button variant="primary" roundness="round" style={{ padding: "0", width: "36px", height: "36px" }}><Plus /></Button>
|
|
253
|
+
<Button variant="secondary" roundness="round" style={{ padding: "0", width: "36px", height: "36px" }}><Search /></Button>
|
|
254
|
+
<Button variant="outline" roundness="round" style={{ padding: "0", width: "36px", height: "36px" }}><Mail /></Button>
|
|
255
|
+
<Button variant="ghost" roundness="round" style={{ padding: "0", width: "36px", height: "36px" }}><Download /></Button>
|
|
256
|
+
<Button variant="destructive" roundness="round" style={{ padding: "0", width: "36px", height: "36px" }}><Trash2 /></Button>
|
|
257
|
+
</Flex>
|
|
258
|
+
</Flex>
|
|
259
|
+
</Flex>
|
|
260
|
+
),
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
export const AllSizesWithIcons: Story = {
|
|
264
|
+
parameters: {
|
|
265
|
+
layout: "padded",
|
|
266
|
+
},
|
|
267
|
+
render: () => (
|
|
268
|
+
<Flex direction="column" gap={6}>
|
|
269
|
+
<Typography variant="subtitle1" color="main-700">All Sizes with Icons</Typography>
|
|
270
|
+
|
|
271
|
+
{/* Large */}
|
|
272
|
+
<Flex direction="column" gap={2}>
|
|
273
|
+
<Typography variant="body3" color="main-500">Large</Typography>
|
|
274
|
+
<Flex align="center" gap={3}>
|
|
275
|
+
<Button size="large">Label</Button>
|
|
276
|
+
<Button size="large" leftIcon={<Mail />}>Label</Button>
|
|
277
|
+
<Button size="large" rightIcon={<ArrowRight />}>Label</Button>
|
|
278
|
+
<Button size="large" leftIcon={<Mail />} rightIcon={<ArrowRight />}>Label</Button>
|
|
279
|
+
</Flex>
|
|
280
|
+
</Flex>
|
|
281
|
+
|
|
282
|
+
{/* Regular */}
|
|
283
|
+
<Flex direction="column" gap={2}>
|
|
284
|
+
<Typography variant="body3" color="main-500">Regular</Typography>
|
|
285
|
+
<Flex align="center" gap={3}>
|
|
286
|
+
<Button size="regular">Label</Button>
|
|
287
|
+
<Button size="regular" leftIcon={<Mail />}>Label</Button>
|
|
288
|
+
<Button size="regular" rightIcon={<ArrowRight />}>Label</Button>
|
|
289
|
+
<Button size="regular" leftIcon={<Mail />} rightIcon={<ArrowRight />}>Label</Button>
|
|
290
|
+
</Flex>
|
|
291
|
+
</Flex>
|
|
292
|
+
|
|
293
|
+
{/* Small */}
|
|
294
|
+
<Flex direction="column" gap={2}>
|
|
295
|
+
<Typography variant="body3" color="main-500">Small</Typography>
|
|
296
|
+
<Flex align="center" gap={3}>
|
|
297
|
+
<Button size="small">Label</Button>
|
|
298
|
+
<Button size="small" leftIcon={<Mail />}>Label</Button>
|
|
299
|
+
<Button size="small" rightIcon={<ArrowRight />}>Label</Button>
|
|
300
|
+
<Button size="small" leftIcon={<Mail />} rightIcon={<ArrowRight />}>Label</Button>
|
|
301
|
+
</Flex>
|
|
302
|
+
</Flex>
|
|
303
|
+
|
|
304
|
+
{/* Mini */}
|
|
305
|
+
<Flex direction="column" gap={2}>
|
|
306
|
+
<Typography variant="body3" color="main-500">Mini</Typography>
|
|
307
|
+
<Flex align="center" gap={3}>
|
|
308
|
+
<Button size="mini">Label</Button>
|
|
309
|
+
<Button size="mini" leftIcon={<Mail />}>Label</Button>
|
|
310
|
+
<Button size="mini" rightIcon={<ArrowRight />}>Label</Button>
|
|
311
|
+
<Button size="mini" leftIcon={<Mail />} rightIcon={<ArrowRight />}>Label</Button>
|
|
312
|
+
</Flex>
|
|
313
|
+
</Flex>
|
|
314
|
+
</Flex>
|
|
315
|
+
),
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
export const AllVariantsAndSizes: Story = {
|
|
319
|
+
parameters: {
|
|
320
|
+
layout: "fullscreen",
|
|
321
|
+
},
|
|
322
|
+
render: () => (
|
|
323
|
+
<Flex direction="column" style={{ padding: "32px", backgroundColor: "#ffffff", minHeight: "100vh", overflowX: "auto" }}>
|
|
324
|
+
{/* Header */}
|
|
325
|
+
<Flex style={{ borderBottom: "1px solid #e5e7eb", paddingBottom: "24px", marginBottom: "32px" }}>
|
|
326
|
+
<Typography variant="h3" color="main-950">Button</Typography>
|
|
327
|
+
</Flex>
|
|
328
|
+
|
|
329
|
+
{/* Main Content */}
|
|
330
|
+
<Flex direction="column" gap={12} style={{ minWidth: "fit-content" }}>
|
|
331
|
+
{/* Default Roundness Section */}
|
|
332
|
+
<Flex direction="column" gap={6}>
|
|
333
|
+
<Typography variant="subtitle1" color="main-700">Default Roundness</Typography>
|
|
334
|
+
|
|
335
|
+
{/* Variant Headers */}
|
|
336
|
+
<Flex>
|
|
337
|
+
<Flex style={{ width: "80px" }} />
|
|
338
|
+
<Flex gap={0}>
|
|
339
|
+
{/* Primary */}
|
|
340
|
+
<Flex direction="column" align="center" style={{ width: "532px" }}>
|
|
341
|
+
<Typography variant="body3" color="accent-600">Primary</Typography>
|
|
342
|
+
<Flex gap={0} style={{ marginTop: "8px" }}>
|
|
343
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Default</Typography></Flex>
|
|
344
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Hover & Active</Typography></Flex>
|
|
345
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Focus</Typography></Flex>
|
|
346
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Disabled</Typography></Flex>
|
|
347
|
+
</Flex>
|
|
348
|
+
</Flex>
|
|
349
|
+
{/* Secondary */}
|
|
350
|
+
<Flex direction="column" align="center" style={{ width: "532px" }}>
|
|
351
|
+
<Typography variant="body3" color="accent-600">Secondary</Typography>
|
|
352
|
+
<Flex gap={0} style={{ marginTop: "8px" }}>
|
|
353
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Default</Typography></Flex>
|
|
354
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Hover & Active</Typography></Flex>
|
|
355
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Focus</Typography></Flex>
|
|
356
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Disabled</Typography></Flex>
|
|
357
|
+
</Flex>
|
|
358
|
+
</Flex>
|
|
359
|
+
{/* Outline */}
|
|
360
|
+
<Flex direction="column" align="center" style={{ width: "532px" }}>
|
|
361
|
+
<Typography variant="body3" color="accent-600">Outline</Typography>
|
|
362
|
+
<Flex gap={0} style={{ marginTop: "8px" }}>
|
|
363
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Default</Typography></Flex>
|
|
364
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Hover & Active</Typography></Flex>
|
|
365
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Focus</Typography></Flex>
|
|
366
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Disabled</Typography></Flex>
|
|
367
|
+
</Flex>
|
|
368
|
+
</Flex>
|
|
369
|
+
</Flex>
|
|
370
|
+
</Flex>
|
|
371
|
+
|
|
372
|
+
{/* Regular Row */}
|
|
373
|
+
<Flex align="center">
|
|
374
|
+
<Flex style={{ width: "80px" }}>
|
|
375
|
+
<Typography variant="body3" color="main-500">Regular</Typography>
|
|
376
|
+
</Flex>
|
|
377
|
+
<Flex gap={0}>
|
|
378
|
+
{/* Primary */}
|
|
379
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="regular">Label</Button></Flex>
|
|
380
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="regular" className="bg-main-800">Label</Button></Flex>
|
|
381
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="regular" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
382
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="regular" disabled>Label</Button></Flex>
|
|
383
|
+
{/* Secondary */}
|
|
384
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="regular">Label</Button></Flex>
|
|
385
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="regular" className="bg-main-200">Label</Button></Flex>
|
|
386
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="regular" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
387
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="regular" disabled>Label</Button></Flex>
|
|
388
|
+
{/* Outline */}
|
|
389
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="regular">Label</Button></Flex>
|
|
390
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="regular" className="bg-main-100">Label</Button></Flex>
|
|
391
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="regular" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
392
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="regular" disabled>Label</Button></Flex>
|
|
393
|
+
</Flex>
|
|
394
|
+
</Flex>
|
|
395
|
+
|
|
396
|
+
{/* Large Row */}
|
|
397
|
+
<Flex align="center">
|
|
398
|
+
<Flex style={{ width: "80px" }}>
|
|
399
|
+
<Typography variant="body3" color="main-500">Large</Typography>
|
|
400
|
+
</Flex>
|
|
401
|
+
<Flex gap={0}>
|
|
402
|
+
{/* Primary */}
|
|
403
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="large">Label</Button></Flex>
|
|
404
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="large" className="bg-main-800">Label</Button></Flex>
|
|
405
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="large" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
406
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="large" disabled>Label</Button></Flex>
|
|
407
|
+
{/* Secondary */}
|
|
408
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="large">Label</Button></Flex>
|
|
409
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="large" className="bg-main-200">Label</Button></Flex>
|
|
410
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="large" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
411
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="large" disabled>Label</Button></Flex>
|
|
412
|
+
{/* Outline */}
|
|
413
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="large">Label</Button></Flex>
|
|
414
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="large" className="bg-main-100">Label</Button></Flex>
|
|
415
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="large" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
416
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="large" disabled>Label</Button></Flex>
|
|
417
|
+
</Flex>
|
|
418
|
+
</Flex>
|
|
419
|
+
|
|
420
|
+
{/* Small Row */}
|
|
421
|
+
<Flex align="center">
|
|
422
|
+
<Flex style={{ width: "80px" }}>
|
|
423
|
+
<Typography variant="body3" color="main-500">Small</Typography>
|
|
424
|
+
</Flex>
|
|
425
|
+
<Flex gap={0}>
|
|
426
|
+
{/* Primary */}
|
|
427
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="small">Label</Button></Flex>
|
|
428
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="small" className="bg-main-800">Label</Button></Flex>
|
|
429
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="small" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
430
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="small" disabled>Label</Button></Flex>
|
|
431
|
+
{/* Secondary */}
|
|
432
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="small">Label</Button></Flex>
|
|
433
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="small" className="bg-main-200">Label</Button></Flex>
|
|
434
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="small" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
435
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="small" disabled>Label</Button></Flex>
|
|
436
|
+
{/* Outline */}
|
|
437
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="small">Label</Button></Flex>
|
|
438
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="small" className="bg-main-100">Label</Button></Flex>
|
|
439
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="small" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
440
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="small" disabled>Label</Button></Flex>
|
|
441
|
+
</Flex>
|
|
442
|
+
</Flex>
|
|
443
|
+
|
|
444
|
+
{/* Mini Row */}
|
|
445
|
+
<Flex align="center">
|
|
446
|
+
<Flex style={{ width: "80px" }}>
|
|
447
|
+
<Typography variant="body3" color="main-500">Mini</Typography>
|
|
448
|
+
</Flex>
|
|
449
|
+
<Flex gap={0}>
|
|
450
|
+
{/* Primary */}
|
|
451
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="mini">Label</Button></Flex>
|
|
452
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="mini" className="bg-main-800">Label</Button></Flex>
|
|
453
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="mini" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
454
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="primary" size="mini" disabled>Label</Button></Flex>
|
|
455
|
+
{/* Secondary */}
|
|
456
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="mini">Label</Button></Flex>
|
|
457
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="mini" className="bg-main-200">Label</Button></Flex>
|
|
458
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="mini" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
459
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="secondary" size="mini" disabled>Label</Button></Flex>
|
|
460
|
+
{/* Outline */}
|
|
461
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="mini">Label</Button></Flex>
|
|
462
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="mini" className="bg-main-100">Label</Button></Flex>
|
|
463
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="mini" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
464
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="outline" size="mini" disabled>Label</Button></Flex>
|
|
465
|
+
</Flex>
|
|
466
|
+
</Flex>
|
|
467
|
+
</Flex>
|
|
468
|
+
|
|
469
|
+
{/* Ghost, Destructive, Ghost Muted Section */}
|
|
470
|
+
<Flex direction="column" gap={6}>
|
|
471
|
+
{/* Variant Headers */}
|
|
472
|
+
<Flex>
|
|
473
|
+
<Flex style={{ width: "80px" }} />
|
|
474
|
+
<Flex gap={0}>
|
|
475
|
+
{/* Ghost */}
|
|
476
|
+
<Flex direction="column" align="center" style={{ width: "532px" }}>
|
|
477
|
+
<Typography variant="body3" color="accent-600">Ghost</Typography>
|
|
478
|
+
<Flex gap={0} style={{ marginTop: "8px" }}>
|
|
479
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Default</Typography></Flex>
|
|
480
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Hover & Active</Typography></Flex>
|
|
481
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Focus</Typography></Flex>
|
|
482
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Disabled</Typography></Flex>
|
|
483
|
+
</Flex>
|
|
484
|
+
</Flex>
|
|
485
|
+
{/* Destructive */}
|
|
486
|
+
<Flex direction="column" align="center" style={{ width: "532px" }}>
|
|
487
|
+
<Typography variant="body3" color="error-600">Destructive</Typography>
|
|
488
|
+
<Flex gap={0} style={{ marginTop: "8px" }}>
|
|
489
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Default</Typography></Flex>
|
|
490
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Hover & Active</Typography></Flex>
|
|
491
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Focus</Typography></Flex>
|
|
492
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Disabled</Typography></Flex>
|
|
493
|
+
</Flex>
|
|
494
|
+
</Flex>
|
|
495
|
+
{/* Ghost Muted */}
|
|
496
|
+
<Flex direction="column" align="center" style={{ width: "532px" }}>
|
|
497
|
+
<Typography variant="body3" color="main-400">Ghost Muted</Typography>
|
|
498
|
+
<Flex gap={0} style={{ marginTop: "8px" }}>
|
|
499
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Default</Typography></Flex>
|
|
500
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Hover & Active</Typography></Flex>
|
|
501
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Focus</Typography></Flex>
|
|
502
|
+
<Flex justify="center" style={{ width: "133px" }}><Typography variant="caption" color="main-400">Disabled</Typography></Flex>
|
|
503
|
+
</Flex>
|
|
504
|
+
</Flex>
|
|
505
|
+
</Flex>
|
|
506
|
+
</Flex>
|
|
507
|
+
|
|
508
|
+
{/* Regular Row */}
|
|
509
|
+
<Flex align="center">
|
|
510
|
+
<Flex style={{ width: "80px" }}>
|
|
511
|
+
<Typography variant="body3" color="main-500">Regular</Typography>
|
|
512
|
+
</Flex>
|
|
513
|
+
<Flex gap={0}>
|
|
514
|
+
{/* Ghost */}
|
|
515
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="regular">Label</Button></Flex>
|
|
516
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="regular" className="bg-main-100 text-main-950">Label</Button></Flex>
|
|
517
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="regular" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
518
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="regular" disabled>Label</Button></Flex>
|
|
519
|
+
{/* Destructive */}
|
|
520
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="regular">Label</Button></Flex>
|
|
521
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="regular" className="bg-error-700">Label</Button></Flex>
|
|
522
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="regular" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
523
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="regular" disabled>Label</Button></Flex>
|
|
524
|
+
{/* Ghost Muted */}
|
|
525
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="regular">Label</Button></Flex>
|
|
526
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="regular" className="bg-main-100 text-main-600">Label</Button></Flex>
|
|
527
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="regular" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
528
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="regular" disabled>Label</Button></Flex>
|
|
529
|
+
</Flex>
|
|
530
|
+
</Flex>
|
|
531
|
+
|
|
532
|
+
{/* Large Row */}
|
|
533
|
+
<Flex align="center">
|
|
534
|
+
<Flex style={{ width: "80px" }}>
|
|
535
|
+
<Typography variant="body3" color="main-500">Large</Typography>
|
|
536
|
+
</Flex>
|
|
537
|
+
<Flex gap={0}>
|
|
538
|
+
{/* Ghost */}
|
|
539
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="large">Label</Button></Flex>
|
|
540
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="large" className="bg-main-100 text-main-950">Label</Button></Flex>
|
|
541
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="large" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
542
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="large" disabled>Label</Button></Flex>
|
|
543
|
+
{/* Destructive */}
|
|
544
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="large">Label</Button></Flex>
|
|
545
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="large" className="bg-error-700">Label</Button></Flex>
|
|
546
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="large" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
547
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="large" disabled>Label</Button></Flex>
|
|
548
|
+
{/* Ghost Muted */}
|
|
549
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="large">Label</Button></Flex>
|
|
550
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="large" className="bg-main-100 text-main-600">Label</Button></Flex>
|
|
551
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="large" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
552
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="large" disabled>Label</Button></Flex>
|
|
553
|
+
</Flex>
|
|
554
|
+
</Flex>
|
|
555
|
+
|
|
556
|
+
{/* Small Row */}
|
|
557
|
+
<Flex align="center">
|
|
558
|
+
<Flex style={{ width: "80px" }}>
|
|
559
|
+
<Typography variant="body3" color="main-500">Small</Typography>
|
|
560
|
+
</Flex>
|
|
561
|
+
<Flex gap={0}>
|
|
562
|
+
{/* Ghost */}
|
|
563
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="small">Label</Button></Flex>
|
|
564
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="small" className="bg-main-100 text-main-950">Label</Button></Flex>
|
|
565
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="small" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
566
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="small" disabled>Label</Button></Flex>
|
|
567
|
+
{/* Destructive */}
|
|
568
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="small">Label</Button></Flex>
|
|
569
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="small" className="bg-error-700">Label</Button></Flex>
|
|
570
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="small" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
571
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="small" disabled>Label</Button></Flex>
|
|
572
|
+
{/* Ghost Muted */}
|
|
573
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="small">Label</Button></Flex>
|
|
574
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="small" className="bg-main-100 text-main-600">Label</Button></Flex>
|
|
575
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="small" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
576
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="small" disabled>Label</Button></Flex>
|
|
577
|
+
</Flex>
|
|
578
|
+
</Flex>
|
|
579
|
+
|
|
580
|
+
{/* Mini Row */}
|
|
581
|
+
<Flex align="center">
|
|
582
|
+
<Flex style={{ width: "80px" }}>
|
|
583
|
+
<Typography variant="body3" color="main-500">Mini</Typography>
|
|
584
|
+
</Flex>
|
|
585
|
+
<Flex gap={0}>
|
|
586
|
+
{/* Ghost */}
|
|
587
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="mini">Label</Button></Flex>
|
|
588
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="mini" className="bg-main-100 text-main-950">Label</Button></Flex>
|
|
589
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="mini" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
590
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost" size="mini" disabled>Label</Button></Flex>
|
|
591
|
+
{/* Destructive */}
|
|
592
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="mini">Label</Button></Flex>
|
|
593
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="mini" className="bg-error-700">Label</Button></Flex>
|
|
594
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="mini" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
595
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="destructive" size="mini" disabled>Label</Button></Flex>
|
|
596
|
+
{/* Ghost Muted */}
|
|
597
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="mini">Label</Button></Flex>
|
|
598
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="mini" className="bg-main-100 text-main-600">Label</Button></Flex>
|
|
599
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="mini" className="shadow-[0_0_0_3px_#d4d4d4]">Label</Button></Flex>
|
|
600
|
+
<Flex justify="center" style={{ width: "133px" }}><Button variant="ghost-muted" size="mini" disabled>Label</Button></Flex>
|
|
601
|
+
</Flex>
|
|
602
|
+
</Flex>
|
|
603
|
+
</Flex>
|
|
604
|
+
|
|
605
|
+
{/* Examples Section */}
|
|
606
|
+
<Flex direction="column" gap={6} style={{ marginTop: "24px", paddingTop: "24px", borderTop: "1px solid #e5e7eb" }}>
|
|
607
|
+
<Typography variant="subtitle1" color="main-700">Examples</Typography>
|
|
608
|
+
|
|
609
|
+
<Flex gap={12}>
|
|
610
|
+
{/* Regular size examples */}
|
|
611
|
+
<Flex direction="column" gap={4}>
|
|
612
|
+
<Typography variant="body2" color="main-600" className="font-medium">Regular Size</Typography>
|
|
613
|
+
<Flex direction="column" gap={3}>
|
|
614
|
+
<Flex gap={3}>
|
|
615
|
+
<Button variant="primary" leftIcon={<Mail />}>Login with Email</Button>
|
|
616
|
+
<Button variant="secondary" leftIcon={<Plus />}>Add Item</Button>
|
|
617
|
+
</Flex>
|
|
618
|
+
<Flex gap={3}>
|
|
619
|
+
<Button variant="outline" leftIcon={<Search />}>Edit</Button>
|
|
620
|
+
<Button variant="ghost" leftIcon={<Plus />}>Add</Button>
|
|
621
|
+
<Button variant="destructive" leftIcon={<Trash2 />}>Delete</Button>
|
|
622
|
+
</Flex>
|
|
623
|
+
<Flex gap={3}>
|
|
624
|
+
<Button variant="outline" leftIcon={<ChevronDown />}>Dropdown</Button>
|
|
625
|
+
<Button variant="outline" leftIcon={<ChevronDown />}>Display</Button>
|
|
626
|
+
<Button variant="outline" leftIcon={<ChevronDown />}>Display</Button>
|
|
627
|
+
</Flex>
|
|
628
|
+
<Flex gap={3}>
|
|
629
|
+
<Button variant="outline" leftIcon={<ArrowRight />}>Previous</Button>
|
|
630
|
+
<Button variant="ghost" rightIcon={<ArrowRight />}>Next</Button>
|
|
631
|
+
</Flex>
|
|
632
|
+
<Flex gap={3}>
|
|
633
|
+
<Button variant="ghost" leftIcon={<Search />}>Search</Button>
|
|
634
|
+
<Button variant="ghost" leftIcon={<Download />}>Bookmark</Button>
|
|
635
|
+
</Flex>
|
|
636
|
+
</Flex>
|
|
637
|
+
</Flex>
|
|
638
|
+
|
|
639
|
+
{/* Small size examples */}
|
|
640
|
+
<Flex direction="column" gap={4}>
|
|
641
|
+
<Typography variant="body2" color="main-600" className="font-medium">Small Size</Typography>
|
|
642
|
+
<Flex direction="column" gap={3}>
|
|
643
|
+
<Flex gap={3}>
|
|
644
|
+
<Button variant="primary" size="small" leftIcon={<Mail />}>Login with Email</Button>
|
|
645
|
+
<Button variant="secondary" size="small" leftIcon={<Plus />}>Add Item</Button>
|
|
646
|
+
</Flex>
|
|
647
|
+
<Flex gap={3}>
|
|
648
|
+
<Button variant="outline" size="small" leftIcon={<Search />}>Edit</Button>
|
|
649
|
+
<Button variant="ghost" size="small" leftIcon={<Plus />}>Add</Button>
|
|
650
|
+
<Button variant="destructive" size="small" leftIcon={<Trash2 />}>Delete</Button>
|
|
651
|
+
</Flex>
|
|
652
|
+
<Flex gap={3}>
|
|
653
|
+
<Button variant="outline" size="small" leftIcon={<ChevronDown />}>Dropdown</Button>
|
|
654
|
+
<Button variant="outline" size="small" leftIcon={<ChevronDown />}>Display</Button>
|
|
655
|
+
<Button variant="outline" size="small" leftIcon={<ChevronDown />}>Display</Button>
|
|
656
|
+
</Flex>
|
|
657
|
+
<Flex gap={3}>
|
|
658
|
+
<Button variant="outline" size="small" leftIcon={<ArrowRight />}>Previous</Button>
|
|
659
|
+
<Button variant="ghost" size="small" rightIcon={<ArrowRight />}>Next</Button>
|
|
660
|
+
</Flex>
|
|
661
|
+
<Flex gap={3}>
|
|
662
|
+
<Button variant="ghost" size="small" leftIcon={<Search />}>Search</Button>
|
|
663
|
+
<Button variant="ghost" size="small" leftIcon={<Download />}>Bookmark</Button>
|
|
664
|
+
</Flex>
|
|
665
|
+
</Flex>
|
|
666
|
+
</Flex>
|
|
667
|
+
|
|
668
|
+
{/* Loading states */}
|
|
669
|
+
<Flex direction="column" gap={4}>
|
|
670
|
+
<Typography variant="body2" color="main-600" className="font-medium">1:1 Fit</Typography>
|
|
671
|
+
<Typography variant="caption" color="main-400">Note: You can set a minimum width to<br />make the 1:1 pill button, e.g. 2:1</Typography>
|
|
672
|
+
<Flex direction="column" gap={3}>
|
|
673
|
+
<Button variant="primary" roundness="round" style={{ width: "36px", height: "36px", padding: 0 }}><Plus /></Button>
|
|
674
|
+
<Button variant="secondary" roundness="round" style={{ width: "36px", height: "36px", padding: 0 }}><Plus /></Button>
|
|
675
|
+
<Button variant="outline" roundness="round" style={{ width: "36px", height: "36px", padding: 0 }}><Plus /></Button>
|
|
676
|
+
<Button variant="ghost" roundness="round" style={{ width: "36px", height: "36px", padding: 0 }}><Plus /></Button>
|
|
677
|
+
</Flex>
|
|
678
|
+
</Flex>
|
|
679
|
+
</Flex>
|
|
680
|
+
</Flex>
|
|
681
|
+
</Flex>
|
|
682
|
+
</Flex>
|
|
683
|
+
),
|
|
684
|
+
}
|