@gsk_poc/untitled-ui-base 0.1.1
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/LICENSE +21 -0
- package/README.md +44 -0
- package/components/application/app-navigation/base-components/featured-cards.demo.tsx +86 -0
- package/components/application/app-navigation/base-components/featured-cards.story.tsx +49 -0
- package/components/application/app-navigation/header-navigation.demo.tsx +59 -0
- package/components/application/app-navigation/header-navigation.story.tsx +23 -0
- package/components/application/app-navigation/sidebar-navigation.demo.tsx +409 -0
- package/components/application/app-navigation/sidebar-navigation.story.tsx +47 -0
- package/components/application/carousel/carousel.demo.tsx +107 -0
- package/components/application/carousel/carousel.story.tsx +21 -0
- package/components/application/charts/activity-gauges.demo.tsx +251 -0
- package/components/application/charts/activity-gauges.story.tsx +27 -0
- package/components/application/charts/bar-charts.demo.tsx +506 -0
- package/components/application/charts/bar-charts.story.tsx +36 -0
- package/components/application/charts/line-charts.demo.tsx +604 -0
- package/components/application/charts/line-charts.story.tsx +43 -0
- package/components/application/charts/pie-charts.demo.tsx +193 -0
- package/components/application/charts/pie-charts.story.tsx +30 -0
- package/components/application/charts/progress-circles.demo.tsx +110 -0
- package/components/application/charts/progress-circles.story.tsx +33 -0
- package/components/application/charts/radar-charts.demo.tsx +203 -0
- package/components/application/charts/radar-charts.story.tsx +18 -0
- package/components/application/date-picker/date-picker.demo.tsx +217 -0
- package/components/application/date-picker/date-picker.story.tsx +44 -0
- package/components/application/file-upload/file-upload.demo.tsx +292 -0
- package/components/application/file-upload/file-upload.story.tsx +70 -0
- package/components/application/loading-indicator/loading-indicator.demo.tsx +73 -0
- package/components/application/loading-indicator/loading-indicator.story.tsx +22 -0
- package/components/application/pagination/pagination.demo.tsx +104 -0
- package/components/application/pagination/pagination.story.tsx +54 -0
- package/components/application/table/table.demo.tsx +1038 -0
- package/components/application/table/table.story.tsx +119 -0
- package/components/application/tabs/tabs.demo.tsx +322 -0
- package/components/application/tabs/tabs.story.tsx +43 -0
- package/components/base/avatar/avatar.demo.tsx +865 -0
- package/components/base/avatar/avatar.story.tsx +27 -0
- package/components/base/badges/badge-groups.demo.tsx +357 -0
- package/components/base/badges/badge-groups.story.tsx +25 -0
- package/components/base/badges/badges.demo.tsx +497 -0
- package/components/base/badges/badges.story.tsx +83 -0
- package/components/base/button-group/button-group.demo.tsx +131 -0
- package/components/base/button-group/button-group.story.tsx +16 -0
- package/components/base/buttons/app-store-buttons.demo.tsx +129 -0
- package/components/base/buttons/app-store-buttons.story.tsx +13 -0
- package/components/base/buttons/buttons.demo.tsx +1022 -0
- package/components/base/buttons/buttons.story.tsx +42 -0
- package/components/base/buttons/social-buttons.demo.tsx +432 -0
- package/components/base/buttons/social-buttons.story.tsx +20 -0
- package/components/base/checkbox/checkbox.demo.tsx +62 -0
- package/components/base/checkbox/checkbox.story.tsx +18 -0
- package/components/base/dropdown/dropdown.demo.tsx +137 -0
- package/components/base/dropdown/dropdown.story.tsx +22 -0
- package/components/base/input/inputs.demo.tsx +758 -0
- package/components/base/input/inputs.story.tsx +52 -0
- package/components/base/pin-input/pin-input.demo.tsx +126 -0
- package/components/base/pin-input/pin-input.story.tsx +22 -0
- package/components/base/progress-indicators/progress-indicators.demo.tsx +54 -0
- package/components/base/progress-indicators/progress-indicators.story.tsx +57 -0
- package/components/base/radio-buttons/radio-buttons.demo.tsx +77 -0
- package/components/base/radio-buttons/radio-buttons.story.tsx +19 -0
- package/components/base/select/select.demo.tsx +936 -0
- package/components/base/select/select.story.tsx +43 -0
- package/components/base/slider/slider.demo.tsx +19 -0
- package/components/base/slider/slider.story.tsx +26 -0
- package/components/base/tags/tags.demo.tsx +341 -0
- package/components/base/tags/tags.story.tsx +28 -0
- package/components/base/textarea/textarea.demo.tsx +25 -0
- package/components/base/textarea/textarea.story.tsx +15 -0
- package/components/base/toggle/toggle.demo.tsx +76 -0
- package/components/base/toggle/toggle.story.tsx +23 -0
- package/components/base/tooltip/tooltip.demo.tsx +125 -0
- package/components/base/tooltip/tooltip.story.tsx +21 -0
- package/components/foundations/featured-icon/featured-icon.demo.tsx +160 -0
- package/components/foundations/featured-icon/featured-icon.story.tsx +25 -0
- package/components/shared-assets/credit-card/credit-card.demo.tsx +106 -0
- package/components/shared-assets/credit-card/credit-card.story.tsx +41 -0
- package/dist/index.d.mts +1417 -0
- package/dist/index.d.ts +1417 -0
- package/dist/index.js +10435 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +10345 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +126 -0
- package/styles/globals.css +65 -0
- package/styles/theme.css +430 -0
- package/styles/tokens-mapped.css +233 -0
- package/styles/tokens.css +807 -0
- package/styles/typography.css +430 -0
- package/tokens/design-tokens.dtcg.json +3515 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { FC } from "react";
|
|
2
|
+
import * as Buttons from "@/components/base/buttons/buttons.demo";
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
title: "Base components/Buttons",
|
|
6
|
+
decorators: [
|
|
7
|
+
(Story: FC) => (
|
|
8
|
+
<div className="flex min-h-screen w-full bg-primary p-4">
|
|
9
|
+
<Story />
|
|
10
|
+
</div>
|
|
11
|
+
),
|
|
12
|
+
],
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export const Primary = () => <Buttons.Primary />;
|
|
16
|
+
|
|
17
|
+
export const Secondary = () => <Buttons.Secondary />;
|
|
18
|
+
|
|
19
|
+
export const Tertiary = () => <Buttons.Tertiary />;
|
|
20
|
+
|
|
21
|
+
export const LinkGray = () => <Buttons.LinkGray />;
|
|
22
|
+
LinkGray.storyName = "Link gray";
|
|
23
|
+
|
|
24
|
+
export const LinkColor = () => <Buttons.LinkColor />;
|
|
25
|
+
LinkColor.storyName = "Link color";
|
|
26
|
+
|
|
27
|
+
export const DestructivePrimary = () => <Buttons.PrimaryDestructive />;
|
|
28
|
+
DestructivePrimary.storyName = "Destructive primary";
|
|
29
|
+
|
|
30
|
+
export const DestructiveSecondary = () => <Buttons.SecondaryDestructive />;
|
|
31
|
+
DestructiveSecondary.storyName = "Destructive secondary";
|
|
32
|
+
|
|
33
|
+
export const DestructiveTertiary = () => <Buttons.TertiaryDestructive />;
|
|
34
|
+
DestructiveTertiary.storyName = "Destructive tertiary";
|
|
35
|
+
|
|
36
|
+
export const DestructiveLink = () => <Buttons.LinkDestructive />;
|
|
37
|
+
DestructiveLink.storyName = "Destructive link";
|
|
38
|
+
|
|
39
|
+
export const CloseX = () => <Buttons.CloseX />;
|
|
40
|
+
|
|
41
|
+
export const UtilityButton = () => <Buttons.UtilityButton />;
|
|
42
|
+
UtilityButton.storyName = "Utility button";
|
|
@@ -0,0 +1,432 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { SocialButton } from "@/components/base/buttons/social-button";
|
|
4
|
+
|
|
5
|
+
export const SocialButtonGoogleDemo = () => {
|
|
6
|
+
return (
|
|
7
|
+
<div className="flex flex-col gap-4">
|
|
8
|
+
<div className="flex gap-8">
|
|
9
|
+
<SocialButton social="google" theme="brand">
|
|
10
|
+
Sign in with Google
|
|
11
|
+
</SocialButton>
|
|
12
|
+
<SocialButton social="google" theme="brand" />
|
|
13
|
+
</div>
|
|
14
|
+
<div className="flex gap-8">
|
|
15
|
+
<SocialButton social="google" theme="color">
|
|
16
|
+
Sign in with Google
|
|
17
|
+
</SocialButton>
|
|
18
|
+
<SocialButton social="google" theme="color" />
|
|
19
|
+
</div>
|
|
20
|
+
<div className="flex gap-8">
|
|
21
|
+
<SocialButton social="google" theme="gray">
|
|
22
|
+
Sign in with Google
|
|
23
|
+
</SocialButton>
|
|
24
|
+
<SocialButton social="google" theme="gray" />
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
);
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export const SocialButtonFacebookDemo = () => {
|
|
31
|
+
return (
|
|
32
|
+
<div className="flex flex-col gap-4">
|
|
33
|
+
<div className="flex gap-8">
|
|
34
|
+
<SocialButton social="facebook" theme="brand">
|
|
35
|
+
Sign in with Facebook
|
|
36
|
+
</SocialButton>
|
|
37
|
+
<SocialButton social="facebook" theme="brand" />
|
|
38
|
+
</div>
|
|
39
|
+
<div className="flex gap-8">
|
|
40
|
+
<SocialButton social="facebook" theme="color">
|
|
41
|
+
Sign in with Facebook
|
|
42
|
+
</SocialButton>
|
|
43
|
+
<SocialButton social="facebook" theme="color" />
|
|
44
|
+
</div>
|
|
45
|
+
<div className="flex gap-8">
|
|
46
|
+
<SocialButton social="facebook" theme="gray">
|
|
47
|
+
Sign in with Facebook
|
|
48
|
+
</SocialButton>
|
|
49
|
+
<SocialButton social="facebook" theme="gray" />
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
);
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export const SocialButtonAppleDemo = () => {
|
|
56
|
+
return (
|
|
57
|
+
<div className="flex flex-col gap-4">
|
|
58
|
+
<div className="flex gap-8">
|
|
59
|
+
<SocialButton social="apple" theme="brand">
|
|
60
|
+
Sign in with Apple
|
|
61
|
+
</SocialButton>
|
|
62
|
+
<SocialButton social="apple" theme="brand" />
|
|
63
|
+
</div>
|
|
64
|
+
<div className="flex gap-8">
|
|
65
|
+
<SocialButton social="apple" theme="color">
|
|
66
|
+
Sign in with Apple
|
|
67
|
+
</SocialButton>
|
|
68
|
+
<SocialButton social="apple" theme="color" />
|
|
69
|
+
</div>
|
|
70
|
+
<div className="flex gap-8">
|
|
71
|
+
<SocialButton social="apple" theme="gray">
|
|
72
|
+
Sign in with Apple
|
|
73
|
+
</SocialButton>
|
|
74
|
+
<SocialButton social="apple" theme="gray" />
|
|
75
|
+
</div>
|
|
76
|
+
</div>
|
|
77
|
+
);
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
export const SocialButtonTwitterDemo = () => {
|
|
81
|
+
return (
|
|
82
|
+
<div className="flex flex-col gap-4">
|
|
83
|
+
<div className="flex gap-8">
|
|
84
|
+
<SocialButton social="twitter" theme="brand">
|
|
85
|
+
Sign in with X
|
|
86
|
+
</SocialButton>
|
|
87
|
+
<SocialButton social="twitter" theme="brand" />
|
|
88
|
+
</div>
|
|
89
|
+
<div className="flex gap-8">
|
|
90
|
+
<SocialButton social="twitter" theme="color">
|
|
91
|
+
Sign in with X
|
|
92
|
+
</SocialButton>
|
|
93
|
+
<SocialButton social="twitter" theme="color" />
|
|
94
|
+
</div>
|
|
95
|
+
<div className="flex gap-8">
|
|
96
|
+
<SocialButton social="twitter" theme="gray">
|
|
97
|
+
Sign in with X
|
|
98
|
+
</SocialButton>
|
|
99
|
+
<SocialButton social="twitter" theme="gray" />
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
);
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
export const SocialButtonFigmaDemo = () => {
|
|
106
|
+
return (
|
|
107
|
+
<div className="flex flex-col gap-4">
|
|
108
|
+
<div className="flex gap-8">
|
|
109
|
+
<SocialButton social="figma" theme="brand">
|
|
110
|
+
Sign in with Figma
|
|
111
|
+
</SocialButton>
|
|
112
|
+
<SocialButton social="figma" theme="brand" />
|
|
113
|
+
</div>
|
|
114
|
+
<div className="flex gap-8">
|
|
115
|
+
<SocialButton social="figma" theme="color">
|
|
116
|
+
Sign in with Figma
|
|
117
|
+
</SocialButton>
|
|
118
|
+
<SocialButton social="figma" theme="color" />
|
|
119
|
+
</div>
|
|
120
|
+
<div className="flex gap-8">
|
|
121
|
+
<SocialButton social="figma" theme="gray">
|
|
122
|
+
Sign in with Figma
|
|
123
|
+
</SocialButton>
|
|
124
|
+
<SocialButton social="figma" theme="gray" />
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
);
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
export const SocialButtonDribbleDemo = () => {
|
|
131
|
+
return (
|
|
132
|
+
<div className="flex flex-col gap-4">
|
|
133
|
+
<div className="flex gap-8">
|
|
134
|
+
<SocialButton social="dribble" theme="brand">
|
|
135
|
+
Sign in with Dribble
|
|
136
|
+
</SocialButton>
|
|
137
|
+
<SocialButton social="dribble" theme="brand" />
|
|
138
|
+
</div>
|
|
139
|
+
<div className="flex gap-8">
|
|
140
|
+
<SocialButton social="dribble" theme="color">
|
|
141
|
+
Sign in with Dribble
|
|
142
|
+
</SocialButton>
|
|
143
|
+
<SocialButton social="dribble" theme="color" />
|
|
144
|
+
</div>
|
|
145
|
+
<div className="flex gap-8">
|
|
146
|
+
<SocialButton social="dribble" theme="gray">
|
|
147
|
+
Sign in with Dribble
|
|
148
|
+
</SocialButton>
|
|
149
|
+
<SocialButton social="dribble" theme="gray" />
|
|
150
|
+
</div>
|
|
151
|
+
</div>
|
|
152
|
+
);
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
export const SocialButtonGroupBrandDemo = () => {
|
|
156
|
+
return (
|
|
157
|
+
<div className="flex w-90 flex-col gap-3">
|
|
158
|
+
<SocialButton social="google" theme="brand">
|
|
159
|
+
Sign in with Google
|
|
160
|
+
</SocialButton>
|
|
161
|
+
<SocialButton social="facebook" theme="brand">
|
|
162
|
+
Sign in with Facebook
|
|
163
|
+
</SocialButton>
|
|
164
|
+
<SocialButton social="apple" theme="brand">
|
|
165
|
+
Sign in with Apple
|
|
166
|
+
</SocialButton>
|
|
167
|
+
</div>
|
|
168
|
+
);
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
export const SocialButtonGroupIconsBrandDemo = () => {
|
|
172
|
+
return (
|
|
173
|
+
<div className="grid w-90 grid-cols-3 gap-3">
|
|
174
|
+
<SocialButton social="google" theme="brand" />
|
|
175
|
+
<SocialButton social="facebook" theme="brand" />
|
|
176
|
+
<SocialButton social="apple" theme="brand" />
|
|
177
|
+
</div>
|
|
178
|
+
);
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
export const SocialButtonGroupColorDemo = () => {
|
|
182
|
+
return (
|
|
183
|
+
<div className="flex w-90 flex-col gap-3">
|
|
184
|
+
<SocialButton social="google" theme="color">
|
|
185
|
+
Sign in with Google
|
|
186
|
+
</SocialButton>
|
|
187
|
+
<SocialButton social="facebook" theme="color">
|
|
188
|
+
Sign in with Facebook
|
|
189
|
+
</SocialButton>
|
|
190
|
+
<SocialButton social="apple" theme="color">
|
|
191
|
+
Sign in with Apple
|
|
192
|
+
</SocialButton>
|
|
193
|
+
</div>
|
|
194
|
+
);
|
|
195
|
+
};
|
|
196
|
+
|
|
197
|
+
export const SocialButtonGroupIconsColorDemo = () => {
|
|
198
|
+
return (
|
|
199
|
+
<div className="grid w-90 grid-cols-3 gap-3">
|
|
200
|
+
<SocialButton social="google" theme="color" />
|
|
201
|
+
<SocialButton social="facebook" theme="color" />
|
|
202
|
+
<SocialButton social="apple" theme="color" />
|
|
203
|
+
</div>
|
|
204
|
+
);
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
export const SocialButtonGroupGrayDemo = () => {
|
|
208
|
+
return (
|
|
209
|
+
<div className="flex w-90 flex-col gap-3">
|
|
210
|
+
<SocialButton social="google" theme="gray">
|
|
211
|
+
Sign in with Google
|
|
212
|
+
</SocialButton>
|
|
213
|
+
<SocialButton social="facebook" theme="gray">
|
|
214
|
+
Sign in with Facebook
|
|
215
|
+
</SocialButton>
|
|
216
|
+
<SocialButton social="apple" theme="gray">
|
|
217
|
+
Sign in with Apple
|
|
218
|
+
</SocialButton>
|
|
219
|
+
</div>
|
|
220
|
+
);
|
|
221
|
+
};
|
|
222
|
+
|
|
223
|
+
export const SocialButtonGroupIconsGrayDemo = () => {
|
|
224
|
+
return (
|
|
225
|
+
<div className="grid w-90 grid-cols-3 gap-3">
|
|
226
|
+
<SocialButton social="google" theme="gray" />
|
|
227
|
+
<SocialButton social="facebook" theme="gray" />
|
|
228
|
+
<SocialButton social="apple" theme="gray" />
|
|
229
|
+
</div>
|
|
230
|
+
);
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
export const SocialButtons = () => {
|
|
234
|
+
return (
|
|
235
|
+
<div>
|
|
236
|
+
{/* Google */}
|
|
237
|
+
<div className="mb-4 flex justify-items-start gap-16">
|
|
238
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
239
|
+
<SocialButton social="google" theme="brand">
|
|
240
|
+
Sign in with Google
|
|
241
|
+
</SocialButton>
|
|
242
|
+
<SocialButton social="google" theme="brand" />
|
|
243
|
+
</div>
|
|
244
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
245
|
+
<SocialButton social="google" theme="color">
|
|
246
|
+
Sign in with Google
|
|
247
|
+
</SocialButton>
|
|
248
|
+
<SocialButton social="google" theme="color" />
|
|
249
|
+
</div>
|
|
250
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
251
|
+
<SocialButton social="google" theme="gray">
|
|
252
|
+
Sign in with Google
|
|
253
|
+
</SocialButton>
|
|
254
|
+
<SocialButton social="google" theme="gray" />
|
|
255
|
+
</div>
|
|
256
|
+
</div>
|
|
257
|
+
|
|
258
|
+
{/* Facebook */}
|
|
259
|
+
<div className="mb-4 flex justify-items-start gap-16">
|
|
260
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
261
|
+
<SocialButton social="facebook" theme="brand">
|
|
262
|
+
Sign in with Facebook
|
|
263
|
+
</SocialButton>
|
|
264
|
+
<SocialButton social="facebook" theme="brand" />
|
|
265
|
+
</div>
|
|
266
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
267
|
+
<SocialButton social="facebook" theme="color">
|
|
268
|
+
Sign in with Facebook
|
|
269
|
+
</SocialButton>
|
|
270
|
+
<SocialButton social="facebook" theme="color" />
|
|
271
|
+
</div>
|
|
272
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
273
|
+
<SocialButton social="facebook" theme="gray">
|
|
274
|
+
Sign in with Facebook
|
|
275
|
+
</SocialButton>
|
|
276
|
+
<SocialButton social="facebook" theme="gray" />
|
|
277
|
+
</div>
|
|
278
|
+
</div>
|
|
279
|
+
|
|
280
|
+
{/* Apple */}
|
|
281
|
+
<div className="mb-4 flex justify-items-start gap-16">
|
|
282
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
283
|
+
<SocialButton social="apple" theme="brand">
|
|
284
|
+
Sign in with Apple
|
|
285
|
+
</SocialButton>
|
|
286
|
+
<SocialButton social="apple" theme="brand" />
|
|
287
|
+
</div>
|
|
288
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
289
|
+
<SocialButton social="apple" theme="color">
|
|
290
|
+
Sign in with Apple
|
|
291
|
+
</SocialButton>
|
|
292
|
+
<SocialButton social="apple" theme="color" />
|
|
293
|
+
</div>
|
|
294
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
295
|
+
<SocialButton social="apple" theme="gray">
|
|
296
|
+
Sign in with Apple
|
|
297
|
+
</SocialButton>
|
|
298
|
+
<SocialButton social="apple" theme="gray" />
|
|
299
|
+
</div>
|
|
300
|
+
</div>
|
|
301
|
+
|
|
302
|
+
{/* Twitter */}
|
|
303
|
+
<div className="mb-4 flex justify-items-start gap-16">
|
|
304
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
305
|
+
<SocialButton social="twitter" theme="brand">
|
|
306
|
+
Sign in with X
|
|
307
|
+
</SocialButton>
|
|
308
|
+
<SocialButton social="twitter" theme="brand" />
|
|
309
|
+
</div>
|
|
310
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
311
|
+
<SocialButton social="twitter" theme="color">
|
|
312
|
+
Sign in with X
|
|
313
|
+
</SocialButton>
|
|
314
|
+
<SocialButton social="twitter" theme="color" />
|
|
315
|
+
</div>
|
|
316
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
317
|
+
<SocialButton social="twitter" theme="gray">
|
|
318
|
+
Sign in with X
|
|
319
|
+
</SocialButton>
|
|
320
|
+
<SocialButton social="twitter" theme="gray" />
|
|
321
|
+
</div>
|
|
322
|
+
</div>
|
|
323
|
+
|
|
324
|
+
{/* Figma */}
|
|
325
|
+
<div className="mb-4 flex justify-items-start gap-16">
|
|
326
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
327
|
+
<SocialButton social="figma" theme="brand">
|
|
328
|
+
Sign in with Figma
|
|
329
|
+
</SocialButton>
|
|
330
|
+
<SocialButton social="figma" theme="brand" />
|
|
331
|
+
</div>
|
|
332
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
333
|
+
<SocialButton social="figma" theme="color">
|
|
334
|
+
Sign in with figma
|
|
335
|
+
</SocialButton>
|
|
336
|
+
<SocialButton social="figma" theme="color" />
|
|
337
|
+
</div>
|
|
338
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
339
|
+
<SocialButton social="figma" theme="gray">
|
|
340
|
+
Sign in with Figma
|
|
341
|
+
</SocialButton>
|
|
342
|
+
<SocialButton social="figma" theme="gray" />
|
|
343
|
+
</div>
|
|
344
|
+
</div>
|
|
345
|
+
|
|
346
|
+
{/* Dribbble */}
|
|
347
|
+
<div className="mb-4 flex justify-items-start gap-16">
|
|
348
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
349
|
+
<SocialButton social="dribble" theme="brand">
|
|
350
|
+
Sign in with Dribble
|
|
351
|
+
</SocialButton>
|
|
352
|
+
<SocialButton social="dribble" theme="brand" />
|
|
353
|
+
</div>
|
|
354
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
355
|
+
<SocialButton social="dribble" theme="color">
|
|
356
|
+
Sign in with Dribble
|
|
357
|
+
</SocialButton>
|
|
358
|
+
<SocialButton social="dribble" theme="color" />
|
|
359
|
+
</div>
|
|
360
|
+
<div className="grid grid-cols-[238px_44px] justify-items-start gap-8">
|
|
361
|
+
<SocialButton social="dribble" theme="gray">
|
|
362
|
+
Sign in with Dribble
|
|
363
|
+
</SocialButton>
|
|
364
|
+
<SocialButton social="dribble" theme="gray" />
|
|
365
|
+
</div>
|
|
366
|
+
</div>
|
|
367
|
+
</div>
|
|
368
|
+
);
|
|
369
|
+
};
|
|
370
|
+
|
|
371
|
+
export const SocialButtonGroups = () => {
|
|
372
|
+
return (
|
|
373
|
+
<div>
|
|
374
|
+
<div className="mb-4 flex items-start gap-8">
|
|
375
|
+
<div className="flex w-90 flex-col gap-3">
|
|
376
|
+
<SocialButton social="google" theme="brand">
|
|
377
|
+
Sign in with Google
|
|
378
|
+
</SocialButton>
|
|
379
|
+
<SocialButton social="facebook" theme="brand">
|
|
380
|
+
Sign in with Facebook
|
|
381
|
+
</SocialButton>
|
|
382
|
+
<SocialButton social="apple" theme="brand">
|
|
383
|
+
Sign in with Apple
|
|
384
|
+
</SocialButton>
|
|
385
|
+
</div>
|
|
386
|
+
<div className="grid w-90 grid-cols-3 justify-items-start gap-3">
|
|
387
|
+
<SocialButton social="google" theme="brand" />
|
|
388
|
+
<SocialButton social="facebook" theme="brand" />
|
|
389
|
+
<SocialButton social="apple" theme="brand" />
|
|
390
|
+
</div>
|
|
391
|
+
</div>
|
|
392
|
+
|
|
393
|
+
<div className="mb-4 flex items-start gap-8">
|
|
394
|
+
<div className="flex w-90 flex-col gap-3">
|
|
395
|
+
<SocialButton social="google" theme="color">
|
|
396
|
+
Sign in with Google
|
|
397
|
+
</SocialButton>
|
|
398
|
+
<SocialButton social="facebook" theme="color">
|
|
399
|
+
Sign in with Facebook
|
|
400
|
+
</SocialButton>
|
|
401
|
+
<SocialButton social="apple" theme="color">
|
|
402
|
+
Sign in with Apple
|
|
403
|
+
</SocialButton>
|
|
404
|
+
</div>
|
|
405
|
+
<div className="grid w-90 grid-cols-3 justify-items-start gap-3">
|
|
406
|
+
<SocialButton social="google" theme="color" />
|
|
407
|
+
<SocialButton social="facebook" theme="color" />
|
|
408
|
+
<SocialButton social="apple" theme="color" />
|
|
409
|
+
</div>
|
|
410
|
+
</div>
|
|
411
|
+
|
|
412
|
+
<div className="mb-4 flex items-start gap-8">
|
|
413
|
+
<div className="flex w-90 flex-col gap-3">
|
|
414
|
+
<SocialButton social="google" theme="gray">
|
|
415
|
+
Sign in with Google
|
|
416
|
+
</SocialButton>
|
|
417
|
+
<SocialButton social="facebook" theme="gray">
|
|
418
|
+
Sign in with Facebook
|
|
419
|
+
</SocialButton>
|
|
420
|
+
<SocialButton social="apple" theme="gray">
|
|
421
|
+
Sign in with Apple
|
|
422
|
+
</SocialButton>
|
|
423
|
+
</div>
|
|
424
|
+
<div className="grid w-90 grid-cols-3 justify-items-start gap-3">
|
|
425
|
+
<SocialButton social="google" theme="gray" />
|
|
426
|
+
<SocialButton social="facebook" theme="gray" />
|
|
427
|
+
<SocialButton social="apple" theme="gray" />
|
|
428
|
+
</div>
|
|
429
|
+
</div>
|
|
430
|
+
</div>
|
|
431
|
+
);
|
|
432
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { FC } from "react";
|
|
2
|
+
import * as Buttons from "./social-buttons.demo";
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
title: "Base components/Buttons",
|
|
6
|
+
excludeStories: ["GoogleLogo", "GoogleButton", "FacebookButton", "AppleButton"],
|
|
7
|
+
decorators: [
|
|
8
|
+
(Story: FC) => (
|
|
9
|
+
<div className="flex min-h-screen w-full bg-primary p-4">
|
|
10
|
+
<Story />
|
|
11
|
+
</div>
|
|
12
|
+
),
|
|
13
|
+
],
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export const SocialButtons = () => <Buttons.SocialButtons />;
|
|
17
|
+
SocialButtons.storyName = "Social buttons";
|
|
18
|
+
|
|
19
|
+
export const SocialButtonGroups = () => <Buttons.SocialButtonGroups />;
|
|
20
|
+
SocialButtonGroups.storyName = "Social button groups";
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { Checkbox } from "@/components/base/checkbox/checkbox";
|
|
4
|
+
|
|
5
|
+
export const DefaultDemo = () => <Checkbox label="Remember me" hint="Save my login details for next time." size="sm" />;
|
|
6
|
+
|
|
7
|
+
export const BaseDemo = () => <Checkbox size="sm" />;
|
|
8
|
+
|
|
9
|
+
export const WithLabelDemo = () => <Checkbox label="Remember me" size="sm" />;
|
|
10
|
+
|
|
11
|
+
export const WithLabelAndHintDemo = () => <Checkbox label="Remember me" hint="Save my login details for next time." size="sm" />;
|
|
12
|
+
|
|
13
|
+
export const DisabledDemo = () => <Checkbox isDisabled label="Remember me" hint="Save my login details for next time." size="sm" />;
|
|
14
|
+
|
|
15
|
+
export const SizesDemo = () => (
|
|
16
|
+
<div className="flex flex-col gap-8">
|
|
17
|
+
<Checkbox label="Remember me" hint="Save my login details for next time." size="sm" />
|
|
18
|
+
<Checkbox label="Remember me" hint="Save my login details for next time." size="md" />
|
|
19
|
+
</div>
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
export const Checkboxes = () => {
|
|
23
|
+
return (
|
|
24
|
+
<div className="grid grid-cols-2 gap-8">
|
|
25
|
+
<div className="flex flex-col gap-4">
|
|
26
|
+
<Checkbox label="Remember me" hint="Save my login details for next time." />
|
|
27
|
+
<Checkbox isSelected label="Remember me" hint="Save my login details for next time." />
|
|
28
|
+
<Checkbox isSelected isDisabled label="Remember me" hint="Save my login details for next time." />
|
|
29
|
+
<Checkbox isIndeterminate label="Remember me" hint="Save my login details for next time." />
|
|
30
|
+
<Checkbox isIndeterminate isDisabled label="Remember me" hint="Save my login details for next time." />
|
|
31
|
+
</div>
|
|
32
|
+
<div className="flex flex-col gap-4">
|
|
33
|
+
<Checkbox size="md" label="Remember me" hint="Save my login details for next time." />
|
|
34
|
+
<Checkbox isSelected size="md" label="Remember me" hint="Save my login details for next time." />
|
|
35
|
+
<Checkbox isSelected isDisabled size="md" label="Remember me" hint="Save my login details for next time." />
|
|
36
|
+
<Checkbox isIndeterminate size="md" label="Remember me" hint="Save my login details for next time." />
|
|
37
|
+
<Checkbox isIndeterminate isDisabled size="md" label="Remember me" hint="Save my login details for next time." />
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export const CheckboxBase = () => {
|
|
44
|
+
return (
|
|
45
|
+
<div className="grid grid-cols-2 gap-8">
|
|
46
|
+
<div className="flex flex-col gap-2">
|
|
47
|
+
<Checkbox />
|
|
48
|
+
<Checkbox isSelected />
|
|
49
|
+
<Checkbox isSelected isDisabled />
|
|
50
|
+
<Checkbox isIndeterminate />
|
|
51
|
+
<Checkbox isIndeterminate isDisabled />
|
|
52
|
+
</div>
|
|
53
|
+
<div className="flex flex-col gap-2">
|
|
54
|
+
<Checkbox size="md" />
|
|
55
|
+
<Checkbox isSelected size="md" />
|
|
56
|
+
<Checkbox isSelected isDisabled size="md" />
|
|
57
|
+
<Checkbox isIndeterminate size="md" />
|
|
58
|
+
<Checkbox isIndeterminate isDisabled size="md" />
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
);
|
|
62
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { FC } from "react";
|
|
2
|
+
import * as Checkbox from "@/components/base/checkbox/checkbox.demo";
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
title: "Base components/Checkboxes",
|
|
6
|
+
decorators: [
|
|
7
|
+
(Story: FC) => (
|
|
8
|
+
<div className="flex min-h-screen w-full bg-primary p-4">
|
|
9
|
+
<Story />
|
|
10
|
+
</div>
|
|
11
|
+
),
|
|
12
|
+
],
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export const Checkboxes = () => <Checkbox.Checkboxes />;
|
|
16
|
+
|
|
17
|
+
export const CheckboxBase = () => <Checkbox.CheckboxBase />;
|
|
18
|
+
CheckboxBase.storyName = "Checkbox base";
|