gladvn 0.2.36 → 0.2.37
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/README.md +1 -1
- package/package.json +1 -1
- package/scripts/strip-comments.ts +79 -0
- package/src/blocks/auth-form.tsx +34 -30
- package/src/blocks/auth-recovery.tsx +9 -13
- package/src/blocks/auth-split.tsx +46 -36
- package/src/blocks/settings.tsx +84 -117
- package/src/components/macro/alert-preset.tsx +3 -1
- package/src/components/macro/carousel-preset.tsx +0 -1
- package/src/components/macro/checkbox-preset.test.tsx +2 -2
- package/src/components/macro/checkbox-preset.tsx +1 -2
- package/src/components/macro/command-preset.tsx +1 -1
- package/src/components/macro/date-picker.tsx +5 -18
- package/src/components/macro/dialog-preset.tsx +5 -3
- package/src/components/macro/input-preset.tsx +0 -1
- package/src/components/macro/select-preset.tsx +1 -1
- package/src/components/macro/switch-preset.test.tsx +1 -1
- package/src/components/micro/accordion.test.tsx +6 -12
- package/src/components/micro/alert-dialog.tsx +0 -2
- package/src/components/micro/alert.test.tsx +5 -8
- package/src/components/micro/alert.tsx +0 -2
- package/src/components/micro/badge.test.tsx +5 -7
- package/src/components/micro/badge.tsx +1 -3
- package/src/components/micro/button.test.tsx +19 -26
- package/src/components/micro/button.tsx +3 -11
- package/src/components/micro/calendar.tsx +12 -13
- package/src/components/micro/card.test.tsx +3 -5
- package/src/components/micro/carousel.tsx +0 -1
- package/src/components/micro/chart.tsx +3 -2
- package/src/components/micro/checkbox.test.tsx +9 -18
- package/src/components/micro/combobox.tsx +1 -3
- package/src/components/micro/command.tsx +23 -11
- package/src/components/micro/context-menu.tsx +0 -2
- package/src/components/micro/dialog.test.tsx +6 -14
- package/src/components/micro/dialog.tsx +0 -2
- package/src/components/micro/drawer.tsx +0 -3
- package/src/components/micro/dropdown-menu.test.tsx +8 -14
- package/src/components/micro/dropdown-menu.tsx +0 -2
- package/src/components/micro/field.tsx +3 -3
- package/src/components/micro/hover-card.tsx +0 -2
- package/src/components/micro/input-group.tsx +9 -42
- package/src/components/micro/input.test.tsx +15 -24
- package/src/components/micro/navigation-menu.tsx +0 -2
- package/src/components/micro/popover.test.tsx +5 -9
- package/src/components/micro/progress.tsx +5 -1
- package/src/components/micro/select.test.tsx +5 -18
- package/src/components/micro/select.tsx +3 -5
- package/src/components/micro/separator.tsx +1 -1
- package/src/components/micro/sheet.test.tsx +6 -14
- package/src/components/micro/sheet.tsx +0 -2
- package/src/components/micro/sidebar.tsx +5 -6
- package/src/components/micro/sonner.tsx +0 -1
- package/src/components/micro/switch.test.tsx +9 -18
- package/src/components/micro/switch.tsx +1 -1
- package/src/components/micro/tabs.test.tsx +5 -11
- package/src/components/micro/theme-provider.tsx +0 -12
- package/src/components/micro/toggle-group.tsx +1 -12
- package/src/components/micro/tooltip.test.tsx +7 -12
- package/src/dev/App.tsx +6 -6
- package/src/dev/components/BlockViewer.tsx +15 -4
- package/src/dev/components/Container.tsx +20 -0
- package/src/dev/components/GladvnLogo.tsx +3 -9
- package/src/dev/components/code-highlighter.tsx +5 -3
- package/src/dev/components/showcase.tsx +116 -168
- package/src/dev/sections/buttons.tsx +4 -9
- package/src/dev/sections/display.tsx +68 -72
- package/src/dev/sections/feedback.tsx +304 -314
- package/src/dev/sections/forms.tsx +10 -14
- package/src/dev/sections/interactive.tsx +32 -32
- package/src/dev/sections/overview.tsx +2 -10
- package/src/dev/showcase/accordion.tsx +512 -554
- package/src/dev/showcase/alert-dialog.tsx +525 -565
- package/src/dev/showcase/alert.tsx +352 -402
- package/src/dev/showcase/aspect-ratio.tsx +167 -193
- package/src/dev/showcase/avatar.tsx +231 -269
- package/src/dev/showcase/badge.tsx +92 -140
- package/src/dev/showcase/breadcrumb.tsx +113 -135
- package/src/dev/showcase/button.tsx +140 -173
- package/src/dev/showcase/calendar.tsx +187 -237
- package/src/dev/showcase/card.tsx +229 -261
- package/src/dev/showcase/carousel.tsx +288 -315
- package/src/dev/showcase/chart.tsx +44 -50
- package/src/dev/showcase/checkbox.tsx +286 -330
- package/src/dev/showcase/collapsible.tsx +143 -160
- package/src/dev/showcase/combobox.tsx +327 -369
- package/src/dev/showcase/command.tsx +106 -120
- package/src/dev/showcase/context-menu.tsx +93 -107
- package/src/dev/showcase/dialog.tsx +585 -630
- package/src/dev/showcase/drawer.tsx +176 -196
- package/src/dev/showcase/dropdown-menu.tsx +183 -201
- package/src/dev/showcase/empty.tsx +232 -274
- package/src/dev/showcase/hover-card.tsx +153 -180
- package/src/dev/showcase/input-group.tsx +221 -253
- package/src/dev/showcase/input-otp.tsx +204 -250
- package/src/dev/showcase/input.tsx +246 -325
- package/src/dev/showcase/item.tsx +134 -152
- package/src/dev/showcase/kbd.tsx +149 -172
- package/src/dev/showcase/label.tsx +50 -68
- package/src/dev/showcase/menubar.tsx +194 -213
- package/src/dev/showcase/navigation-menu.tsx +119 -133
- package/src/dev/showcase/overview-components/ArchitectureSection.tsx +126 -0
- package/src/dev/showcase/overview-components/CodeBlock.tsx +50 -0
- package/src/dev/showcase/overview-components/ColorPaletteSection.tsx +44 -0
- package/src/dev/showcase/overview-components/DashboardPreview.tsx +159 -0
- package/src/dev/showcase/overview-components/FeatureGridSection.tsx +535 -0
- package/src/dev/showcase/overview-components/FooterCTA.tsx +137 -0
- package/src/dev/showcase/overview-components/HeroSection.tsx +65 -0
- package/src/dev/showcase/overview-components/PrinciplesSection.tsx +128 -0
- package/src/dev/showcase/overview.tsx +21 -1163
- package/src/dev/showcase/pagination.tsx +144 -190
- package/src/dev/showcase/popover.tsx +181 -196
- package/src/dev/showcase/progress.tsx +141 -189
- package/src/dev/showcase/radio-group.tsx +272 -332
- package/src/dev/showcase/resizable.tsx +119 -141
- package/src/dev/showcase/scroll-area.tsx +21 -36
- package/src/dev/showcase/select.tsx +262 -322
- package/src/dev/showcase/separator.tsx +75 -73
- package/src/dev/showcase/sheet.tsx +333 -361
- package/src/dev/showcase/sidebar.tsx +53 -59
- package/src/dev/showcase/skeleton.tsx +93 -112
- package/src/dev/showcase/slider.tsx +244 -296
- package/src/dev/showcase/sonner.tsx +251 -258
- package/src/dev/showcase/spinner.tsx +46 -67
- package/src/dev/showcase/switch.tsx +298 -362
- package/src/dev/showcase/table.tsx +76 -80
- package/src/dev/showcase/tabs.tsx +302 -355
- package/src/dev/showcase/textarea.tsx +240 -293
- package/src/dev/showcase/toast.tsx +48 -54
- package/src/dev/showcase/toggle-group.tsx +104 -129
- package/src/dev/showcase/toggle.tsx +82 -102
- package/src/dev/showcase/tooltip.tsx +173 -192
- package/src/dev/showcase/why.tsx +6 -12
- package/src/hooks/use-mobile.test.ts +3 -2
- package/src/lib/utils.test.ts +5 -4
|
@@ -5,7 +5,7 @@ import { useDevContext } from "../../dev/components/dev-context";
|
|
|
5
5
|
import {
|
|
6
6
|
DocsH3,
|
|
7
7
|
DocsP,
|
|
8
|
-
|
|
8
|
+
ShowcaseExample,
|
|
9
9
|
Showcase,
|
|
10
10
|
ShowcaseDocs
|
|
11
11
|
} from "../../dev/components/showcase";
|
|
@@ -13,20 +13,17 @@ import { type Size } from "../../lib/types";
|
|
|
13
13
|
|
|
14
14
|
function ToastMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
15
15
|
return (
|
|
16
|
-
<div className="space-y-10
|
|
17
|
-
<
|
|
18
|
-
label="Toast Notifications"
|
|
19
|
-
description="Nhấp để kích hoạt các loại toast khác nhau."
|
|
20
|
-
codeString={`<div className="flex flex-wrap gap-3">
|
|
16
|
+
<div className="space-y-10">
|
|
17
|
+
<ShowcaseExample title="Toast Notifications" description="Nhấp để kích hoạt các loại toast khác nhau." code={`<div className="flex flex-wrap gap-3">
|
|
21
18
|
<Button
|
|
22
19
|
variant="outline"
|
|
23
20
|
onClick={() => {
|
|
24
|
-
toast("
|
|
21
|
+
toast("Sự kiện đã được tạo", {
|
|
25
22
|
description:
|
|
26
|
-
"
|
|
23
|
+
"Chủ nhật, ngày 03 tháng 12 năm 2023 lúc 9:00 sáng",
|
|
27
24
|
action: {
|
|
28
|
-
label: "
|
|
29
|
-
onClick: () => console.log("
|
|
25
|
+
label: "Hoàn tác",
|
|
26
|
+
onClick: () => console.log("Hoàn tác") } })
|
|
30
27
|
}}
|
|
31
28
|
>
|
|
32
29
|
Show Toast
|
|
@@ -49,44 +46,45 @@ function ToastMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
49
46
|
>
|
|
50
47
|
Error Toast
|
|
51
48
|
</Button>
|
|
52
|
-
</div>`}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
49
|
+
</div>`} preview={
|
|
50
|
+
<>
|
|
51
|
+
<div className="flex flex-wrap gap-3">
|
|
52
|
+
<Button
|
|
53
|
+
variant="outline"
|
|
54
|
+
size={globalSize}
|
|
55
|
+
onClick={() => {
|
|
56
|
+
toast("Sự kiện đã được tạo", {
|
|
57
|
+
description: "Chủ nhật, ngày 03 tháng 12 năm 2023 lúc 9:00 sáng",
|
|
58
|
+
action: {
|
|
59
|
+
label: "Hoàn tác",
|
|
60
|
+
onClick: () => console.log("Hoàn tác") } });
|
|
61
|
+
}}
|
|
62
|
+
>
|
|
63
|
+
Show Toast
|
|
64
|
+
</Button>
|
|
65
|
+
<Button
|
|
66
|
+
variant="outline"
|
|
67
|
+
color="success"
|
|
68
|
+
size={globalSize}
|
|
69
|
+
onClick={() => {
|
|
70
|
+
toast.success("Profile updated successfully");
|
|
71
|
+
}}
|
|
72
|
+
>
|
|
73
|
+
Success Toast
|
|
74
|
+
</Button>
|
|
75
|
+
<Button
|
|
76
|
+
variant="outline"
|
|
77
|
+
color="destructive"
|
|
78
|
+
size={globalSize}
|
|
79
|
+
onClick={() => {
|
|
80
|
+
toast.error("Failed to update profile");
|
|
81
|
+
}}
|
|
82
|
+
>
|
|
83
|
+
Error Toast
|
|
84
|
+
</Button>
|
|
85
|
+
</div>
|
|
86
|
+
</>
|
|
87
|
+
} />
|
|
90
88
|
</div>
|
|
91
89
|
);
|
|
92
90
|
}
|
|
@@ -97,17 +95,13 @@ export default function ToastShowcase() {
|
|
|
97
95
|
<Showcase
|
|
98
96
|
title="Toast"
|
|
99
97
|
description="Một thông báo ngắn gọn được hiển thị tạm thời."
|
|
100
|
-
|
|
98
|
+
guideline={
|
|
101
99
|
<ShowcaseDocs>
|
|
102
100
|
<DocsH3>Toast (Sonner)</DocsH3>
|
|
103
101
|
<DocsP>Sử dụng để hiển thị các thông báo nhanh cho người dùng.</DocsP>
|
|
104
102
|
</ShowcaseDocs>
|
|
105
103
|
}
|
|
106
|
-
|
|
107
|
-
{
|
|
108
|
-
label: "Micro (Primitive)",
|
|
109
|
-
content: <ToastMicroShowcase globalSize={globalSize} /> },
|
|
110
|
-
]}
|
|
104
|
+
micro={{ content: <ToastMicroShowcase globalSize={globalSize} /> }}
|
|
111
105
|
/>
|
|
112
106
|
);
|
|
113
107
|
}
|
|
@@ -17,24 +17,17 @@ import {
|
|
|
17
17
|
DocsH3,
|
|
18
18
|
DocsP,
|
|
19
19
|
ExampleGrid,
|
|
20
|
-
|
|
20
|
+
ShowcaseExample,
|
|
21
21
|
Showcase,
|
|
22
22
|
ShowcaseDocs
|
|
23
23
|
} from "../../dev/components/showcase";
|
|
24
24
|
import { type Size } from "../../lib/types";
|
|
25
25
|
|
|
26
|
-
// ──────────────────────────────────────────────────────────
|
|
27
|
-
// SECTION 1: Micro Content
|
|
28
|
-
// ──────────────────────────────────────────────────────────
|
|
29
26
|
function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
30
27
|
return (
|
|
31
|
-
<div className="space-y-10
|
|
32
|
-
{/* Single vs Multiple */}
|
|
28
|
+
<div className="space-y-10">
|
|
33
29
|
<ExampleGrid>
|
|
34
|
-
<
|
|
35
|
-
label="Single Selection"
|
|
36
|
-
description="Chỉ có một mục có thể hoạt động tại một thời điểm."
|
|
37
|
-
codeString={`<ToggleGroup defaultValue={["center"]}>
|
|
30
|
+
<ShowcaseExample title="Single Selection" description="Chỉ có một mục có thể hoạt động tại một thời điểm." code={`<ToggleGroup defaultValue={["center"]}>
|
|
38
31
|
<ToggleGroupItem value="left" aria-label="Align left">
|
|
39
32
|
<AlignLeftIcon />
|
|
40
33
|
</ToggleGroupItem>
|
|
@@ -47,25 +40,23 @@ function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
47
40
|
<ToggleGroupItem value="right" aria-label="Align right">
|
|
48
41
|
<AlignRightIcon />
|
|
49
42
|
</ToggleGroupItem>
|
|
50
|
-
</ToggleGroup>`}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
43
|
+
</ToggleGroup>`} preview={
|
|
44
|
+
<>
|
|
45
|
+
<ToggleGroup defaultValue={["center"]} size={globalSize}>
|
|
46
|
+
<ToggleGroupItem value="left" aria-label="Align left">
|
|
47
|
+
<AlignLeftIcon />
|
|
48
|
+
</ToggleGroupItem>
|
|
49
|
+
<ToggleGroupItem value="center" aria-label="Align center">
|
|
50
|
+
<AlignCenterIcon />
|
|
51
|
+
</ToggleGroupItem>
|
|
52
|
+
<ToggleGroupItem value="right" aria-label="Align right">
|
|
53
|
+
<AlignRightIcon />
|
|
54
|
+
</ToggleGroupItem>
|
|
55
|
+
</ToggleGroup>
|
|
56
|
+
</>
|
|
57
|
+
} />
|
|
64
58
|
|
|
65
|
-
<
|
|
66
|
-
label="Multiple Selection"
|
|
67
|
-
description="Nhiều mục có thể được kích hoạt đồng thời."
|
|
68
|
-
codeString={`<ToggleGroup defaultValue={["bold", "italic"]}>
|
|
59
|
+
<ShowcaseExample title="Multiple Selection" description="Nhiều mục có thể được kích hoạt đồng thời." code={`<ToggleGroup defaultValue={["bold", "italic"]}>
|
|
69
60
|
<ToggleGroupItem value="bold" aria-label="Toggle bold">
|
|
70
61
|
<BoldIcon />
|
|
71
62
|
</ToggleGroupItem>
|
|
@@ -81,28 +72,25 @@ function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
81
72
|
>
|
|
82
73
|
<UnderlineIcon />
|
|
83
74
|
</ToggleGroupItem>
|
|
84
|
-
</ToggleGroup>`}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
75
|
+
</ToggleGroup>`} preview={
|
|
76
|
+
<>
|
|
77
|
+
<ToggleGroup defaultValue={["bold", "italic"]} size={globalSize}>
|
|
78
|
+
<ToggleGroupItem value="bold" aria-label="Toggle bold">
|
|
79
|
+
<BoldIcon />
|
|
80
|
+
</ToggleGroupItem>
|
|
81
|
+
<ToggleGroupItem value="italic" aria-label="Toggle italic">
|
|
82
|
+
<ItalicIcon />
|
|
83
|
+
</ToggleGroupItem>
|
|
84
|
+
<ToggleGroupItem value="underline" aria-label="Toggle underline">
|
|
85
|
+
<UnderlineIcon />
|
|
86
|
+
</ToggleGroupItem>
|
|
87
|
+
</ToggleGroup>
|
|
88
|
+
</>
|
|
89
|
+
} />
|
|
98
90
|
</ExampleGrid>
|
|
99
91
|
|
|
100
|
-
{/* Variants */}
|
|
101
92
|
<ExampleGrid>
|
|
102
|
-
<
|
|
103
|
-
label="Outline Variant"
|
|
104
|
-
description='variant="outline" — viền bao quanh từng item.'
|
|
105
|
-
codeString={`<ToggleGroup variant="outline">
|
|
93
|
+
<ShowcaseExample title="Outline Variant" description='variant="outline" — viền bao quanh từng item.' code={`<ToggleGroup variant="outline">
|
|
106
94
|
<ToggleGroupItem value="bold" aria-label="Bold">
|
|
107
95
|
<BoldIcon />
|
|
108
96
|
</ToggleGroupItem>
|
|
@@ -115,25 +103,23 @@ function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
115
103
|
>
|
|
116
104
|
<UnderlineIcon />
|
|
117
105
|
</ToggleGroupItem>
|
|
118
|
-
</ToggleGroup>`}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
106
|
+
</ToggleGroup>`} preview={
|
|
107
|
+
<>
|
|
108
|
+
<ToggleGroup variant="outline" size={globalSize}>
|
|
109
|
+
<ToggleGroupItem value="bold" aria-label="Bold">
|
|
110
|
+
<BoldIcon />
|
|
111
|
+
</ToggleGroupItem>
|
|
112
|
+
<ToggleGroupItem value="italic" aria-label="Italic">
|
|
113
|
+
<ItalicIcon />
|
|
114
|
+
</ToggleGroupItem>
|
|
115
|
+
<ToggleGroupItem value="underline" aria-label="Underline">
|
|
116
|
+
<UnderlineIcon />
|
|
117
|
+
</ToggleGroupItem>
|
|
118
|
+
</ToggleGroup>
|
|
119
|
+
</>
|
|
120
|
+
} />
|
|
132
121
|
|
|
133
|
-
<
|
|
134
|
-
label="Compact (spacing={0})"
|
|
135
|
-
description="spacing={0} — các nút dính liền nhau, phù hợp với toolbar."
|
|
136
|
-
codeString={`<ToggleGroup variant="outline" spacing={0}>
|
|
122
|
+
<ShowcaseExample title="Compact (spacing={0})" description="spacing={0} — các nút dính liền nhau, phù hợp với toolbar." code={`<ToggleGroup variant="outline" spacing={0}>
|
|
137
123
|
<ToggleGroupItem value="left" aria-label="Align left">
|
|
138
124
|
<AlignLeftIcon />
|
|
139
125
|
</ToggleGroupItem>
|
|
@@ -146,28 +132,25 @@ function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
146
132
|
<ToggleGroupItem value="right" aria-label="Align right">
|
|
147
133
|
<AlignRightIcon />
|
|
148
134
|
</ToggleGroupItem>
|
|
149
|
-
</ToggleGroup>`}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
135
|
+
</ToggleGroup>`} preview={
|
|
136
|
+
<>
|
|
137
|
+
<ToggleGroup variant="outline" spacing={0} size={globalSize}>
|
|
138
|
+
<ToggleGroupItem value="left" aria-label="Align left">
|
|
139
|
+
<AlignLeftIcon />
|
|
140
|
+
</ToggleGroupItem>
|
|
141
|
+
<ToggleGroupItem value="center" aria-label="Align center">
|
|
142
|
+
<AlignCenterIcon />
|
|
143
|
+
</ToggleGroupItem>
|
|
144
|
+
<ToggleGroupItem value="right" aria-label="Align right">
|
|
145
|
+
<AlignRightIcon />
|
|
146
|
+
</ToggleGroupItem>
|
|
147
|
+
</ToggleGroup>
|
|
148
|
+
</>
|
|
149
|
+
} />
|
|
163
150
|
</ExampleGrid>
|
|
164
151
|
|
|
165
|
-
{/* Vertical & Disabled */}
|
|
166
152
|
<ExampleGrid>
|
|
167
|
-
<
|
|
168
|
-
label="Vertical"
|
|
169
|
-
description='orientation="vertical" — sắp xếp các nút theo chiều dọc.'
|
|
170
|
-
codeString={`<ToggleGroup orientation="vertical">
|
|
153
|
+
<ShowcaseExample title="Vertical" description='orientation="vertical" — sắp xếp các nút theo chiều dọc.' code={`<ToggleGroup orientation="vertical">
|
|
171
154
|
<ToggleGroupItem value="bold" aria-label="Bold">
|
|
172
155
|
<BoldIcon />
|
|
173
156
|
</ToggleGroupItem>
|
|
@@ -180,25 +163,23 @@ function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
180
163
|
>
|
|
181
164
|
<UnderlineIcon />
|
|
182
165
|
</ToggleGroupItem>
|
|
183
|
-
</ToggleGroup>`}
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
166
|
+
</ToggleGroup>`} preview={
|
|
167
|
+
<>
|
|
168
|
+
<ToggleGroup orientation="vertical" size={globalSize}>
|
|
169
|
+
<ToggleGroupItem value="bold" aria-label="Bold">
|
|
170
|
+
<BoldIcon />
|
|
171
|
+
</ToggleGroupItem>
|
|
172
|
+
<ToggleGroupItem value="italic" aria-label="Italic">
|
|
173
|
+
<ItalicIcon />
|
|
174
|
+
</ToggleGroupItem>
|
|
175
|
+
<ToggleGroupItem value="underline" aria-label="Underline">
|
|
176
|
+
<UnderlineIcon />
|
|
177
|
+
</ToggleGroupItem>
|
|
178
|
+
</ToggleGroup>
|
|
179
|
+
</>
|
|
180
|
+
} />
|
|
197
181
|
|
|
198
|
-
<
|
|
199
|
-
label="Disabled Items"
|
|
200
|
-
description="Từng ToggleGroupItem có thể bị vô hiệu hóa riêng lẻ."
|
|
201
|
-
codeString={`<ToggleGroup>
|
|
182
|
+
<ShowcaseExample title="Disabled Items" description="Từng ToggleGroupItem có thể bị vô hiệu hóa riêng lẻ." code={`<ToggleGroup>
|
|
202
183
|
<ToggleGroupItem value="bold" aria-label="Bold">
|
|
203
184
|
<BoldIcon />
|
|
204
185
|
</ToggleGroupItem>
|
|
@@ -215,39 +196,37 @@ function ToggleGroupMicroShowcase({ globalSize }: { globalSize: Size }) {
|
|
|
215
196
|
>
|
|
216
197
|
<UnderlineIcon />
|
|
217
198
|
</ToggleGroupItem>
|
|
218
|
-
</ToggleGroup>`}
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
199
|
+
</ToggleGroup>`} preview={
|
|
200
|
+
<>
|
|
201
|
+
<ToggleGroup size={globalSize}>
|
|
202
|
+
<ToggleGroupItem value="bold" aria-label="Bold">
|
|
203
|
+
<BoldIcon />
|
|
204
|
+
</ToggleGroupItem>
|
|
205
|
+
<ToggleGroupItem
|
|
206
|
+
value="italic"
|
|
207
|
+
disabled
|
|
208
|
+
aria-label="Italic (disabled)"
|
|
209
|
+
>
|
|
210
|
+
<ItalicIcon />
|
|
211
|
+
</ToggleGroupItem>
|
|
212
|
+
<ToggleGroupItem value="underline" aria-label="Underline">
|
|
213
|
+
<UnderlineIcon />
|
|
214
|
+
</ToggleGroupItem>
|
|
215
|
+
</ToggleGroup>
|
|
216
|
+
</>
|
|
217
|
+
} />
|
|
236
218
|
</ExampleGrid>
|
|
237
219
|
</div>
|
|
238
220
|
);
|
|
239
221
|
}
|
|
240
222
|
|
|
241
|
-
// ──────────────────────────────────────────────────────────
|
|
242
|
-
// SECTION 2: Entry point
|
|
243
|
-
// ──────────────────────────────────────────────────────────
|
|
244
223
|
export default function ToggleGroupShowcase() {
|
|
245
224
|
const { size: globalSize } = useDevContext();
|
|
246
225
|
return (
|
|
247
226
|
<Showcase
|
|
248
227
|
title="Toggle Group"
|
|
249
228
|
description="Một tập hợp các nút hai trạng thái có thể bật hoặc tắt, hỗ trợ đơn và đa lựa chọn."
|
|
250
|
-
|
|
229
|
+
guideline={
|
|
251
230
|
<ShowcaseDocs>
|
|
252
231
|
<DocsH3>Toggle Group</DocsH3>
|
|
253
232
|
<DocsP>
|
|
@@ -260,11 +239,7 @@ export default function ToggleGroupShowcase() {
|
|
|
260
239
|
</DocsP>
|
|
261
240
|
</ShowcaseDocs>
|
|
262
241
|
}
|
|
263
|
-
|
|
264
|
-
{
|
|
265
|
-
label: "Micro (Primitive)",
|
|
266
|
-
content: <ToggleGroupMicroShowcase globalSize={globalSize} /> },
|
|
267
|
-
]}
|
|
242
|
+
micro={{ content: <ToggleGroupMicroShowcase globalSize={globalSize} /> }}
|
|
268
243
|
/>
|
|
269
244
|
);
|
|
270
245
|
}
|