@a2v2ai/uikit 0.0.38 → 0.0.39

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.
Files changed (183) hide show
  1. package/Alert/Alert.d.ts +13 -0
  2. package/Alert/Alert.js +25 -0
  3. package/AlertDialog/AlertDialog.d.ts +43 -0
  4. package/AlertDialog/AlertDialog.js +71 -0
  5. package/Avatar/Avatar.d.ts +14 -0
  6. package/Avatar/Avatar.js +25 -0
  7. package/Badge/Badge.d.ts +11 -0
  8. package/Badge/Badge.js +23 -0
  9. package/Breadcrumb/Breadcrumb.d.ts +19 -0
  10. package/Breadcrumb/Breadcrumb.js +23 -0
  11. package/Button/Button.d.ts +23 -0
  12. package/Button/Button.js +52 -0
  13. package/Calendar/Calendar.d.ts +20 -0
  14. package/Calendar/Calendar.js +78 -0
  15. package/Card/Card.d.ts +16 -0
  16. package/Card/Card.js +28 -0
  17. package/Carousel/Carousel.d.ts +37 -0
  18. package/Carousel/Carousel.js +132 -0
  19. package/ChatBubble/ChatBubble.d.ts +33 -0
  20. package/ChatBubble/ChatBubble.js +107 -0
  21. package/Checkbox/Checkbox.d.ts +12 -0
  22. package/Checkbox/Checkbox.js +20 -0
  23. package/DataTable/DataTable.d.ts +35 -0
  24. package/DataTable/DataTable.js +51 -0
  25. package/Drawer/Drawer.d.ts +33 -0
  26. package/Drawer/Drawer.js +55 -0
  27. package/DropdownMenu/DropdownMenu.d.ts +27 -0
  28. package/DropdownMenu/DropdownMenu.js +35 -0
  29. package/ErrorMessage/ErrorMessage.d.ts +27 -0
  30. package/ErrorMessage/ErrorMessage.js +14 -0
  31. package/Flex/Flex.d.ts +31 -0
  32. package/Flex/Flex.js +64 -0
  33. package/IconButton/IconButton.d.ts +23 -0
  34. package/IconButton/IconButton.js +48 -0
  35. package/Input/Input.d.ts +27 -0
  36. package/Input/Input.js +42 -0
  37. package/InputOTP/InputOTP.d.ts +20 -0
  38. package/InputOTP/InputOTP.js +44 -0
  39. package/Label/Label.d.ts +13 -0
  40. package/Label/Label.js +19 -0
  41. package/Loader/Loader.d.ts +21 -0
  42. package/Loader/Loader.js +30 -0
  43. package/Menubar/Menubar.d.ts +26 -0
  44. package/Menubar/Menubar.js +54 -0
  45. package/Menubar/index.d.ts +1 -0
  46. package/Menubar/index.js +1 -0
  47. package/Pagination/Pagination.d.ts +35 -0
  48. package/Pagination/Pagination.js +37 -0
  49. package/Popover/Popover.d.ts +7 -0
  50. package/Popover/Popover.js +10 -0
  51. package/Progress/Progress.d.ts +17 -0
  52. package/Progress/Progress.js +33 -0
  53. package/RadioGroup/RadioGroup.d.ts +13 -0
  54. package/RadioGroup/RadioGroup.js +26 -0
  55. package/ScrollArea/ScrollArea.d.ts +5 -0
  56. package/ScrollArea/ScrollArea.js +11 -0
  57. package/Select/Select.d.ts +29 -0
  58. package/Select/Select.js +50 -0
  59. package/Separator/Separator.d.ts +4 -0
  60. package/Separator/Separator.js +7 -0
  61. package/Sidebar/Sidebar.d.ts +48 -0
  62. package/Sidebar/Sidebar.js +116 -0
  63. package/Sidebar/index.d.ts +2 -0
  64. package/Sidebar/index.js +1 -0
  65. package/Skeleton/Skeleton.d.ts +4 -0
  66. package/Skeleton/Skeleton.js +7 -0
  67. package/Slider/Slider.d.ts +6 -0
  68. package/Slider/Slider.js +7 -0
  69. package/Spinner/Spinner.d.ts +19 -0
  70. package/Spinner/Spinner.js +31 -0
  71. package/Switch/Switch.d.ts +12 -0
  72. package/Switch/Switch.js +30 -0
  73. package/Table/Table.d.ts +10 -0
  74. package/Table/Table.js +20 -0
  75. package/Tabs/Tabs.d.ts +15 -0
  76. package/Tabs/Tabs.js +24 -0
  77. package/Textarea/Textarea.d.ts +19 -0
  78. package/Textarea/Textarea.js +31 -0
  79. package/Toast/Toast.d.ts +12 -0
  80. package/Toast/Toast.js +25 -0
  81. package/Tooltip/Tooltip.d.ts +17 -0
  82. package/Tooltip/Tooltip.js +29 -0
  83. package/Typography/Typography.d.ts +20 -0
  84. package/Typography/Typography.js +71 -0
  85. package/helpers.d.ts +4 -0
  86. package/helpers.js +5 -0
  87. package/icons.d.ts +1 -0
  88. package/{icons.ts → icons.js} +1 -1
  89. package/index.css +68 -0
  90. package/index.d.ts +42 -0
  91. package/index.js +45 -0
  92. package/lib/typography-types.d.ts +4 -0
  93. package/lib/typography-types.js +118 -0
  94. package/lib/utils.d.ts +3 -0
  95. package/lib/utils.js +14 -0
  96. package/package.json +1 -1
  97. package/Alert/Alert.stories.tsx +0 -121
  98. package/Alert/Alert.tsx +0 -71
  99. package/AlertDialog/AlertDialog.stories.tsx +0 -665
  100. package/AlertDialog/AlertDialog.tsx +0 -241
  101. package/Avatar/Avatar.stories.tsx +0 -128
  102. package/Avatar/Avatar.tsx +0 -71
  103. package/Badge/Badge.stories.tsx +0 -76
  104. package/Badge/Badge.tsx +0 -39
  105. package/Breadcrumb/Breadcrumb.stories.tsx +0 -231
  106. package/Breadcrumb/Breadcrumb.tsx +0 -114
  107. package/Button/Button.stories.tsx +0 -684
  108. package/Button/Button.tsx +0 -107
  109. package/Calendar/Calendar.stories.tsx +0 -291
  110. package/Calendar/Calendar.tsx +0 -246
  111. package/Card/Card.stories.tsx +0 -136
  112. package/Card/Card.tsx +0 -96
  113. package/Carousel/Carousel.stories.tsx +0 -256
  114. package/Carousel/Carousel.tsx +0 -301
  115. package/ChatBubble/ChatBubble.stories.tsx +0 -339
  116. package/ChatBubble/ChatBubble.tsx +0 -179
  117. package/Checkbox/Checkbox.stories.tsx +0 -137
  118. package/Checkbox/Checkbox.tsx +0 -53
  119. package/DataTable/DataTable.stories.tsx +0 -400
  120. package/DataTable/DataTable.tsx +0 -207
  121. package/Drawer/Drawer.stories.tsx +0 -721
  122. package/Drawer/Drawer.tsx +0 -201
  123. package/DropdownMenu/DropdownMenu.stories.tsx +0 -251
  124. package/DropdownMenu/DropdownMenu.tsx +0 -199
  125. package/ErrorMessage/ErrorMessage.stories.tsx +0 -159
  126. package/ErrorMessage/ErrorMessage.tsx +0 -55
  127. package/Flex/Flex.stories.tsx +0 -390
  128. package/Flex/Flex.tsx +0 -102
  129. package/IconButton/IconButton.stories.tsx +0 -566
  130. package/IconButton/IconButton.tsx +0 -95
  131. package/Input/Input.stories.tsx +0 -566
  132. package/Input/Input.tsx +0 -168
  133. package/InputOTP/InputOTP.stories.tsx +0 -246
  134. package/InputOTP/InputOTP.tsx +0 -127
  135. package/Label/Label.stories.tsx +0 -110
  136. package/Label/Label.tsx +0 -44
  137. package/Loader/Loader.stories.tsx +0 -170
  138. package/Loader/Loader.tsx +0 -62
  139. package/Menubar/Menubar.stories.tsx +0 -382
  140. package/Menubar/Menubar.tsx +0 -274
  141. package/Menubar/index.ts +0 -18
  142. package/Pagination/Pagination.stories.tsx +0 -196
  143. package/Pagination/Pagination.tsx +0 -122
  144. package/Popover/Popover.stories.tsx +0 -133
  145. package/Popover/Popover.tsx +0 -31
  146. package/Progress/Progress.stories.tsx +0 -146
  147. package/Progress/Progress.tsx +0 -67
  148. package/RadioGroup/RadioGroup.stories.tsx +0 -159
  149. package/RadioGroup/RadioGroup.tsx +0 -68
  150. package/ScrollArea/ScrollArea.stories.tsx +0 -136
  151. package/ScrollArea/ScrollArea.tsx +0 -46
  152. package/Select/Select.stories.tsx +0 -378
  153. package/Select/Select.tsx +0 -230
  154. package/Separator/Separator.stories.tsx +0 -110
  155. package/Separator/Separator.tsx +0 -29
  156. package/Sidebar/Sidebar.stories.tsx +0 -340
  157. package/Sidebar/Sidebar.tsx +0 -414
  158. package/Sidebar/index.ts +0 -28
  159. package/Skeleton/Skeleton.stories.tsx +0 -117
  160. package/Skeleton/Skeleton.tsx +0 -16
  161. package/Slider/Slider.stories.tsx +0 -216
  162. package/Slider/Slider.tsx +0 -29
  163. package/Spinner/Spinner.stories.tsx +0 -210
  164. package/Spinner/Spinner.tsx +0 -78
  165. package/Switch/Switch.stories.tsx +0 -146
  166. package/Switch/Switch.tsx +0 -59
  167. package/Table/Table.stories.tsx +0 -510
  168. package/Table/Table.tsx +0 -114
  169. package/Tabs/Tabs.stories.tsx +0 -197
  170. package/Tabs/Tabs.tsx +0 -74
  171. package/Textarea/Textarea.stories.tsx +0 -187
  172. package/Textarea/Textarea.tsx +0 -73
  173. package/Toast/Toast.stories.tsx +0 -285
  174. package/Toast/Toast.tsx +0 -59
  175. package/Tooltip/Tooltip.stories.tsx +0 -463
  176. package/Tooltip/Tooltip.tsx +0 -96
  177. package/Typography/Typography.stories.tsx +0 -425
  178. package/Typography/Typography.tsx +0 -106
  179. package/helpers.ts +0 -5
  180. package/index.ts +0 -217
  181. package/lib/typography-types.ts +0 -223
  182. package/lib/utils.ts +0 -15
  183. package/tsconfig.json +0 -22
@@ -1,136 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react"
2
-
3
- import { Button } from "../Button/Button"
4
- import { Input } from "../Input/Input"
5
- import { Label } from "../Label/Label"
6
- import { Flex } from "../Flex/Flex"
7
- import { Typography } from "../Typography/Typography"
8
- import { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent } from "./Card"
9
-
10
- const meta: Meta<typeof Card> = {
11
- title: "Components/Card",
12
- component: Card,
13
- parameters: {
14
- layout: "centered",
15
- },
16
- argTypes: {
17
- variant: {
18
- control: "select",
19
- options: ["default", "outline"],
20
- description: "The visual variant of the card",
21
- },
22
- },
23
- tags: ["autodocs"],
24
- }
25
-
26
- export default meta
27
- type Story = StoryObj<typeof meta>
28
-
29
- export const Default: Story = {
30
- render: () => (
31
- <Card className="w-[350px]">
32
- <CardHeader>
33
- <CardTitle>Card Title</CardTitle>
34
- <CardDescription>Card Description</CardDescription>
35
- </CardHeader>
36
- <CardContent>
37
- <p>Card Content</p>
38
- </CardContent>
39
- <CardFooter>
40
- <p>Card Footer</p>
41
- </CardFooter>
42
- </Card>
43
- ),
44
- }
45
-
46
- export const Outline: Story = {
47
- render: () => (
48
- <Card variant="outline" className="w-[350px]">
49
- <CardHeader>
50
- <CardTitle>Outline Card</CardTitle>
51
- <CardDescription>This card has no shadow</CardDescription>
52
- </CardHeader>
53
- <CardContent>
54
- <p>Card content goes here.</p>
55
- </CardContent>
56
- </Card>
57
- ),
58
- }
59
-
60
- export const WithForm: Story = {
61
- render: () => (
62
- <Card className="w-[350px]">
63
- <CardHeader>
64
- <CardTitle>Create project</CardTitle>
65
- <CardDescription>Deploy your new project in one-click.</CardDescription>
66
- </CardHeader>
67
- <CardContent>
68
- <form>
69
- <Flex gap={4}>
70
- <Flex gap={2}>
71
- <Label htmlFor="name">Name</Label>
72
- <Input id="name" placeholder="Name of your project" />
73
- </Flex>
74
- <Flex gap={2}>
75
- <Label htmlFor="framework">Framework</Label>
76
- <Input id="framework" placeholder="Select a framework" />
77
- </Flex>
78
- </Flex>
79
- </form>
80
- </CardContent>
81
- <CardFooter className="flex justify-between">
82
- <Button variant="outline">Cancel</Button>
83
- <Button>Deploy</Button>
84
- </CardFooter>
85
- </Card>
86
- ),
87
- }
88
-
89
- export const SimpleCard: Story = {
90
- render: () => (
91
- <Card className="w-[350px] p-6">
92
- <Flex gap={2}>
93
- <Typography variant="h4">Notifications</Typography>
94
- <Typography variant="body2" color="grey-500">
95
- You have 3 unread messages.
96
- </Typography>
97
- </Flex>
98
- </Card>
99
- ),
100
- }
101
-
102
- export const AllVariants: Story = {
103
- render: () => (
104
- <Flex gap={6}>
105
- <Typography variant="h4" className="text-white">Card Variants</Typography>
106
-
107
- <Flex direction="row" gap={4} wrap="wrap">
108
- <Card className="w-[300px]">
109
- <CardHeader>
110
- <CardTitle>Default Card</CardTitle>
111
- <CardDescription>With shadow</CardDescription>
112
- </CardHeader>
113
- <CardContent>
114
- <p>This is the default card style with a subtle shadow.</p>
115
- </CardContent>
116
- <CardFooter>
117
- <Button size="small">Action</Button>
118
- </CardFooter>
119
- </Card>
120
-
121
- <Card variant="outline" className="w-[300px]">
122
- <CardHeader>
123
- <CardTitle>Outline Card</CardTitle>
124
- <CardDescription>Without shadow</CardDescription>
125
- </CardHeader>
126
- <CardContent>
127
- <p>This card has an outline border but no shadow.</p>
128
- </CardContent>
129
- <CardFooter>
130
- <Button size="small" variant="outline">Action</Button>
131
- </CardFooter>
132
- </Card>
133
- </Flex>
134
- </Flex>
135
- ),
136
- }
package/Card/Card.tsx DELETED
@@ -1,96 +0,0 @@
1
- import * as React from "react"
2
- import { cva } from "class-variance-authority"
3
-
4
- import { cn } from "../lib/utils"
5
-
6
- type CardVariant = "default" | "outline"
7
-
8
- const cardVariants = cva(
9
- "rounded-xl border bg-white text-main-950 shadow-sm",
10
- {
11
- variants: {
12
- variant: {
13
- default: "border-grey-200",
14
- outline: "border-grey-300 shadow-none",
15
- },
16
- },
17
- defaultVariants: {
18
- variant: "default",
19
- },
20
- }
21
- )
22
-
23
- export interface CardProps
24
- extends React.HTMLAttributes<HTMLDivElement> {
25
- variant?: CardVariant
26
- }
27
-
28
- const Card = React.forwardRef<HTMLDivElement, CardProps>(
29
- ({ className, variant, ...props }, ref) => (
30
- <div
31
- ref={ref}
32
- className={cn(cardVariants({ variant }), className)}
33
- {...props}
34
- />
35
- )
36
- )
37
- Card.displayName = "Card"
38
-
39
- const CardHeader = React.forwardRef<
40
- HTMLDivElement,
41
- React.HTMLAttributes<HTMLDivElement>
42
- >(({ className, ...props }, ref) => (
43
- <div
44
- ref={ref}
45
- className={cn("flex flex-col space-y-1.5 p-6", className)}
46
- {...props}
47
- />
48
- ))
49
- CardHeader.displayName = "CardHeader"
50
-
51
- const CardTitle = React.forwardRef<
52
- HTMLDivElement,
53
- React.HTMLAttributes<HTMLDivElement>
54
- >(({ className, ...props }, ref) => (
55
- <div
56
- ref={ref}
57
- className={cn("font-semibold leading-none tracking-tight", className)}
58
- {...props}
59
- />
60
- ))
61
- CardTitle.displayName = "CardTitle"
62
-
63
- const CardDescription = React.forwardRef<
64
- HTMLDivElement,
65
- React.HTMLAttributes<HTMLDivElement>
66
- >(({ className, ...props }, ref) => (
67
- <div
68
- ref={ref}
69
- className={cn("text-sm text-grey-500", className)}
70
- {...props}
71
- />
72
- ))
73
- CardDescription.displayName = "CardDescription"
74
-
75
- const CardContent = React.forwardRef<
76
- HTMLDivElement,
77
- React.HTMLAttributes<HTMLDivElement>
78
- >(({ className, ...props }, ref) => (
79
- <div ref={ref} className={cn("p-6 pt-0", className)} {...props} />
80
- ))
81
- CardContent.displayName = "CardContent"
82
-
83
- const CardFooter = React.forwardRef<
84
- HTMLDivElement,
85
- React.HTMLAttributes<HTMLDivElement>
86
- >(({ className, ...props }, ref) => (
87
- <div
88
- ref={ref}
89
- className={cn("flex items-center p-6 pt-0", className)}
90
- {...props}
91
- />
92
- ))
93
- CardFooter.displayName = "CardFooter"
94
-
95
- export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent, cardVariants }
96
- export type { CardVariant }
@@ -1,256 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react"
2
- import { Flex } from "../Flex/Flex"
3
- import { Card, CardContent } from "../Card/Card"
4
- import { Typography } from "../Typography/Typography"
5
- import {
6
- Carousel,
7
- CarouselContent,
8
- CarouselItem,
9
- CarouselNext,
10
- CarouselPrevious,
11
- } from "./Carousel"
12
-
13
- const meta: Meta<typeof Carousel> = {
14
- title: "Components/Carousel",
15
- component: Carousel,
16
- parameters: {
17
- layout: "centered",
18
- },
19
- tags: ["autodocs"],
20
- argTypes: {
21
- orientation: {
22
- control: "select",
23
- options: ["horizontal", "vertical"],
24
- description: "The orientation of the carousel",
25
- },
26
- },
27
- }
28
-
29
- export default meta
30
- type Story = StoryObj<typeof Carousel>
31
-
32
- export const Default: Story = {
33
- render: () => (
34
- <div className="w-full max-w-xs">
35
- <Carousel className="w-full max-w-xs">
36
- <CarouselContent>
37
- {Array.from({ length: 5 }).map((_, index) => (
38
- <CarouselItem key={index}>
39
- <div className="p-1">
40
- <Card>
41
- <CardContent className="flex aspect-square items-center justify-center p-6">
42
- <Typography variant="h3">{index + 1}</Typography>
43
- </CardContent>
44
- </Card>
45
- </div>
46
- </CarouselItem>
47
- ))}
48
- </CarouselContent>
49
- <CarouselPrevious />
50
- <CarouselNext />
51
- </Carousel>
52
- </div>
53
- ),
54
- }
55
-
56
- export const Sizes: Story = {
57
- render: () => (
58
- <div className="w-full max-w-sm">
59
- <Carousel
60
- opts={{
61
- align: "start",
62
- }}
63
- className="w-full max-w-sm"
64
- >
65
- <CarouselContent>
66
- {Array.from({ length: 5 }).map((_, index) => (
67
- <CarouselItem key={index} className="md:basis-1/2 lg:basis-1/3">
68
- <div className="p-1">
69
- <Card>
70
- <CardContent className="flex aspect-square items-center justify-center p-6">
71
- <Typography variant="h3">{index + 1}</Typography>
72
- </CardContent>
73
- </Card>
74
- </div>
75
- </CarouselItem>
76
- ))}
77
- </CarouselContent>
78
- <CarouselPrevious />
79
- <CarouselNext />
80
- </Carousel>
81
- </div>
82
- ),
83
- }
84
-
85
- export const Vertical: Story = {
86
- render: () => (
87
- <Carousel
88
- opts={{
89
- align: "start",
90
- }}
91
- orientation="vertical"
92
- className="w-full max-w-xs"
93
- >
94
- <CarouselContent className="-mt-1 h-[200px]">
95
- {Array.from({ length: 5 }).map((_, index) => (
96
- <CarouselItem key={index} className="pt-1 md:basis-1/2">
97
- <div className="p-1">
98
- <Card>
99
- <CardContent className="flex items-center justify-center p-6">
100
- <Typography variant="h3">{index + 1}</Typography>
101
- </CardContent>
102
- </Card>
103
- </div>
104
- </CarouselItem>
105
- ))}
106
- </CarouselContent>
107
- <CarouselPrevious />
108
- <CarouselNext />
109
- </Carousel>
110
- ),
111
- }
112
-
113
- export const Loop: Story = {
114
- render: () => (
115
- <div className="w-full max-w-xs">
116
- <Carousel
117
- opts={{
118
- loop: true,
119
- }}
120
- className="w-full max-w-xs"
121
- >
122
- <CarouselContent>
123
- {Array.from({ length: 5 }).map((_, index) => (
124
- <CarouselItem key={index}>
125
- <div className="p-1">
126
- <Card>
127
- <CardContent className="flex aspect-square items-center justify-center p-6">
128
- <Typography variant="h3">{index + 1}</Typography>
129
- </CardContent>
130
- </Card>
131
- </div>
132
- </CarouselItem>
133
- ))}
134
- </CarouselContent>
135
- <CarouselPrevious />
136
- <CarouselNext />
137
- </Carousel>
138
- </div>
139
- ),
140
- }
141
-
142
- export const WithoutNavigation: Story = {
143
- render: () => (
144
- <div className="w-full max-w-xs">
145
- <Carousel className="w-full max-w-xs">
146
- <CarouselContent>
147
- {Array.from({ length: 5 }).map((_, index) => (
148
- <CarouselItem key={index}>
149
- <div className="p-1">
150
- <Card>
151
- <CardContent className="flex aspect-square items-center justify-center p-6">
152
- <Typography variant="h3">{index + 1}</Typography>
153
- </CardContent>
154
- </Card>
155
- </div>
156
- </CarouselItem>
157
- ))}
158
- </CarouselContent>
159
- </Carousel>
160
- </div>
161
- ),
162
- }
163
-
164
- export const AllVariants: Story = {
165
- parameters: {
166
- layout: "padded",
167
- },
168
- render: () => (
169
- <Flex gap={12} className="p-8">
170
- <Flex gap={4}>
171
- <Typography variant="subtitle1" color="main-700">
172
- Default Carousel
173
- </Typography>
174
- <div className="w-full max-w-xs">
175
- <Carousel className="w-full max-w-xs">
176
- <CarouselContent>
177
- {Array.from({ length: 5 }).map((_, index) => (
178
- <CarouselItem key={index}>
179
- <div className="p-1">
180
- <Card>
181
- <CardContent className="flex aspect-square items-center justify-center p-6">
182
- <Typography variant="h3">{index + 1}</Typography>
183
- </CardContent>
184
- </Card>
185
- </div>
186
- </CarouselItem>
187
- ))}
188
- </CarouselContent>
189
- <CarouselPrevious />
190
- <CarouselNext />
191
- </Carousel>
192
- </div>
193
- </Flex>
194
-
195
- <Flex gap={4}>
196
- <Typography variant="subtitle1" color="main-700">
197
- Multiple Items Per View
198
- </Typography>
199
- <div className="w-full max-w-lg">
200
- <Carousel
201
- opts={{
202
- align: "start",
203
- }}
204
- className="w-full"
205
- >
206
- <CarouselContent>
207
- {Array.from({ length: 8 }).map((_, index) => (
208
- <CarouselItem key={index} className="basis-1/3">
209
- <div className="p-1">
210
- <Card>
211
- <CardContent className="flex aspect-square items-center justify-center p-6">
212
- <Typography variant="h4">{index + 1}</Typography>
213
- </CardContent>
214
- </Card>
215
- </div>
216
- </CarouselItem>
217
- ))}
218
- </CarouselContent>
219
- <CarouselPrevious />
220
- <CarouselNext />
221
- </Carousel>
222
- </div>
223
- </Flex>
224
-
225
- <Flex gap={4}>
226
- <Typography variant="subtitle1" color="main-700">
227
- With Loop Enabled
228
- </Typography>
229
- <div className="w-full max-w-xs">
230
- <Carousel
231
- opts={{
232
- loop: true,
233
- }}
234
- className="w-full max-w-xs"
235
- >
236
- <CarouselContent>
237
- {Array.from({ length: 5 }).map((_, index) => (
238
- <CarouselItem key={index}>
239
- <div className="p-1">
240
- <Card variant="secondary">
241
- <CardContent className="flex aspect-square items-center justify-center p-6">
242
- <Typography variant="h3">{index + 1}</Typography>
243
- </CardContent>
244
- </Card>
245
- </div>
246
- </CarouselItem>
247
- ))}
248
- </CarouselContent>
249
- <CarouselPrevious />
250
- <CarouselNext />
251
- </Carousel>
252
- </div>
253
- </Flex>
254
- </Flex>
255
- ),
256
- }