getlotui 0.1.3 → 0.1.5
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/apps/getlotui-documentation-website/app/about/page.tsx +9 -4
- package/apps/getlotui-documentation-website/app/docs/components/aspect-ratio/page.tsx +376 -0
- package/apps/getlotui-documentation-website/app/docs/components/breadcrumb/page.tsx +458 -0
- package/apps/getlotui-documentation-website/app/docs/components/button-group/page.tsx +362 -0
- package/apps/getlotui-documentation-website/app/docs/components/calendar/page.tsx +340 -0
- package/apps/getlotui-documentation-website/app/docs/components/carousel/page.tsx +357 -0
- package/apps/getlotui-documentation-website/app/docs/components/page.tsx +32 -159
- package/apps/getlotui-documentation-website/app/docs/layout.tsx +29 -1
- package/apps/getlotui-documentation-website/app/layout.tsx +4 -1
- package/apps/getlotui-documentation-website/app/page.tsx +7 -2
- package/apps/getlotui-documentation-website/components/docs-sidebar.tsx +5 -2
- package/apps/getlotui-documentation-website/components/site-header.tsx +1 -1
- package/apps/getlotui-documentation-website/components/ui/aspect-ratio.tsx +30 -7
- package/apps/getlotui-documentation-website/components/ui/button-group.tsx +53 -74
- package/apps/getlotui-documentation-website/config/docs.ts +24 -0
- package/apps/getlotui-documentation-website/package.json +1 -2
- package/package.json +1 -1
- package/packages/cli/dist/commands/add.js +88 -3
- package/packages/cli/dist/commands/init.js +147 -2
- package/packages/cli/dist/templates/expo/AspectRatio.tsx +38 -0
- package/packages/cli/dist/templates/expo/Breadcrumb.tsx +135 -0
- package/packages/cli/dist/templates/expo/ButtonGroup.tsx +39 -0
- package/packages/cli/dist/templates/expo/Calendar.tsx +209 -0
- package/packages/cli/dist/templates/expo/Carousel.tsx +152 -0
- package/packages/cli/dist/templates/flutter/AspectRatio.dart +41 -0
- package/packages/cli/dist/templates/flutter/Breadcrumb.dart +103 -0
- package/packages/cli/dist/templates/flutter/ButtonGroup.dart +25 -0
- package/packages/cli/dist/templates/flutter/Calendar.dart +191 -0
- package/packages/cli/dist/templates/flutter/Carousel.dart +137 -0
- package/packages/cli/dist/templates/web/AspectRatio.tsx +34 -0
- package/packages/cli/dist/templates/web/Breadcrumb.tsx +109 -0
- package/packages/cli/dist/templates/web/ButtonGroup.tsx +62 -0
- package/packages/cli/dist/templates/web/Calendar.tsx +213 -0
- package/packages/cli/dist/templates/web/Carousel.tsx +241 -0
- package/packages/cli/dist/templates/web/Dialog.tsx +143 -0
- package/packages/cli/dist/utils/dependencies.d.ts +8 -0
- package/packages/cli/dist/utils/dependencies.js +33 -0
- package/packages/cli/package-lock.json +2 -2
- package/packages/cli/package.json +1 -1
- package/packages/cli/src/commands/add.ts +96 -6
- package/packages/cli/src/commands/init.ts +139 -2
- package/packages/cli/src/templates/expo/AspectRatio.tsx +38 -0
- package/packages/cli/src/templates/expo/Breadcrumb.tsx +135 -0
- package/packages/cli/src/templates/expo/ButtonGroup.tsx +39 -0
- package/packages/cli/src/templates/expo/Calendar.tsx +209 -0
- package/packages/cli/src/templates/expo/Carousel.tsx +152 -0
- package/packages/cli/src/templates/flutter/AspectRatio.dart +41 -0
- package/packages/cli/src/templates/flutter/Breadcrumb.dart +103 -0
- package/packages/cli/src/templates/flutter/ButtonGroup.dart +25 -0
- package/packages/cli/src/templates/flutter/Calendar.dart +191 -0
- package/packages/cli/src/templates/flutter/Carousel.dart +137 -0
- package/packages/cli/src/templates/web/AspectRatio.tsx +34 -0
- package/packages/cli/src/templates/web/Breadcrumb.tsx +109 -0
- package/packages/cli/src/templates/web/ButtonGroup.tsx +62 -0
- package/packages/cli/src/templates/web/Calendar.tsx +213 -0
- package/packages/cli/src/templates/web/Carousel.tsx +241 -0
- package/packages/cli/src/templates/web/Dialog.tsx +143 -0
- package/packages/cli/src/utils/dependencies.ts +30 -0
- package/packages/core/components/aspect-ratio.json +22 -0
- package/packages/core/components/breadcrumb.json +22 -0
- package/packages/core/components/button-group.json +18 -0
- package/packages/core/components/calendar.json +30 -0
- package/packages/core/components/carousel.json +21 -0
- package/packages/core/index.ts +14 -0
- package/packages/expo/src/components/AspectRatio.tsx +38 -0
- package/packages/expo/src/components/Breadcrumb.tsx +135 -0
- package/packages/expo/src/components/Button.tsx +43 -13
- package/packages/expo/src/components/ButtonGroup.tsx +39 -0
- package/packages/expo/src/components/Calendar.tsx +209 -0
- package/packages/expo/src/components/Carousel.tsx +152 -0
- package/packages/expo/src/index.ts +5 -0
- package/packages/flutter/lib/getlotui_flutter.dart +5 -0
- package/packages/flutter/lib/src/components/aspect_ratio.dart +41 -0
- package/packages/flutter/lib/src/components/breadcrumb.dart +103 -0
- package/packages/flutter/lib/src/components/button.dart +12 -13
- package/packages/flutter/lib/src/components/button_group.dart +25 -0
- package/packages/flutter/lib/src/components/calendar.dart +191 -0
- package/packages/flutter/lib/src/components/carousel.dart +137 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
+
import * as React from "react";
|
|
3
4
|
import { motion } from "framer-motion";
|
|
4
5
|
import {
|
|
5
6
|
Sparkles,
|
|
@@ -38,6 +39,10 @@ const item = {
|
|
|
38
39
|
};
|
|
39
40
|
|
|
40
41
|
export default function AboutPage() {
|
|
42
|
+
React.useEffect(() => {
|
|
43
|
+
document.title = "About Us | GetLotUI";
|
|
44
|
+
}, []);
|
|
45
|
+
|
|
41
46
|
return (
|
|
42
47
|
<div className="flex min-h-screen flex-col">
|
|
43
48
|
<SiteHeader />
|
|
@@ -543,8 +548,8 @@ export default function AboutPage() {
|
|
|
543
548
|
step.status === "Completed"
|
|
544
549
|
? "bg-emerald-500/10 text-emerald-500"
|
|
545
550
|
: step.status === "In Progress"
|
|
546
|
-
|
|
547
|
-
|
|
551
|
+
? "bg-primary/10 text-primary"
|
|
552
|
+
: "bg-muted/50 text-muted-foreground"
|
|
548
553
|
}`}
|
|
549
554
|
>
|
|
550
555
|
<step.icon className="h-6 w-6" />
|
|
@@ -561,8 +566,8 @@ export default function AboutPage() {
|
|
|
561
566
|
step.status === "Completed"
|
|
562
567
|
? "bg-emerald-500/10 text-emerald-500"
|
|
563
568
|
: step.status === "In Progress"
|
|
564
|
-
|
|
565
|
-
|
|
569
|
+
? "bg-primary/10 text-primary"
|
|
570
|
+
: "bg-muted/10 text-muted-foreground"
|
|
566
571
|
}`}
|
|
567
572
|
>
|
|
568
573
|
{step.status}
|
|
@@ -0,0 +1,376 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { AspectRatio } from "@/components/ui/aspect-ratio";
|
|
4
|
+
import { ComponentPreview } from "@/components/component-preview";
|
|
5
|
+
import { InstallationCommand } from "@/components/installation-command";
|
|
6
|
+
import { useFramework } from "@/context/framework-context";
|
|
7
|
+
import { motion } from "framer-motion";
|
|
8
|
+
import Image from "next/image";
|
|
9
|
+
|
|
10
|
+
export default function AspectRatioPage() {
|
|
11
|
+
const { framework } = useFramework();
|
|
12
|
+
|
|
13
|
+
const usageCode = `import { AspectRatio, Image } from '@crossui/expo'
|
|
14
|
+
|
|
15
|
+
export default function MyComponent() {
|
|
16
|
+
return (
|
|
17
|
+
<AspectRatio ratio={16 / 9}>
|
|
18
|
+
<Image
|
|
19
|
+
source={{ uri: 'https://images.unsplash.com/photo-1588345921523-c2dcdb7f1dcd?w=800&dpr=2&q=80' }}
|
|
20
|
+
style={{ width: '100%', height: '100%' }}
|
|
21
|
+
/>
|
|
22
|
+
</AspectRatio>
|
|
23
|
+
)
|
|
24
|
+
}`;
|
|
25
|
+
|
|
26
|
+
const flutterUsage = `CrossUIAspectRatio(
|
|
27
|
+
ratio: 16 / 9,
|
|
28
|
+
child: Image.network(
|
|
29
|
+
'https://images.unsplash.com/photo-1588345921523-c2dcdb7f1dcd?w=800&dpr=2&q=80',
|
|
30
|
+
fit: BoxFit.cover,
|
|
31
|
+
),
|
|
32
|
+
)`;
|
|
33
|
+
|
|
34
|
+
const webUsage = `<AspectRatio ratio={16 / 9} className="bg-muted">
|
|
35
|
+
<Image
|
|
36
|
+
src="https://images.unsplash.com/photo-1588345921523-c2dcdb7f1dcd?w=800&dpr=2&q=80"
|
|
37
|
+
alt="Photo by Drew Beamer"
|
|
38
|
+
fill
|
|
39
|
+
className="rounded-md object-cover"
|
|
40
|
+
/>
|
|
41
|
+
</AspectRatio>`;
|
|
42
|
+
|
|
43
|
+
const getUsageContent = () => {
|
|
44
|
+
switch (framework) {
|
|
45
|
+
case "flutter":
|
|
46
|
+
return { code: flutterUsage, lang: "dart", title: "example.dart" };
|
|
47
|
+
case "web":
|
|
48
|
+
return { code: webUsage, lang: "tsx", title: "example.tsx" };
|
|
49
|
+
case "expo":
|
|
50
|
+
default:
|
|
51
|
+
return { code: usageCode, lang: "tsx", title: "Example.tsx" };
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
const usage = getUsageContent();
|
|
56
|
+
|
|
57
|
+
const variantsCode = `<div className="w-[450px]">
|
|
58
|
+
<AspectRatio variant="landscape">
|
|
59
|
+
<Image
|
|
60
|
+
src="https://images.unsplash.com/photo-1576075796033-848c2a5f3696?w=800&dpr=2&q=80"
|
|
61
|
+
alt="Landscape"
|
|
62
|
+
fill
|
|
63
|
+
className="rounded-md object-cover"
|
|
64
|
+
/>
|
|
65
|
+
</AspectRatio>
|
|
66
|
+
</div>`;
|
|
67
|
+
|
|
68
|
+
const squareCode = `<div className="w-[200px]">
|
|
69
|
+
<AspectRatio variant="square">
|
|
70
|
+
<Image
|
|
71
|
+
src="https://images.unsplash.com/photo-1514888286974-6c03e2ca1dba?w=800&q=80"
|
|
72
|
+
alt="Square"
|
|
73
|
+
fill
|
|
74
|
+
className="rounded-md object-cover"
|
|
75
|
+
/>
|
|
76
|
+
</AspectRatio>
|
|
77
|
+
</div>`;
|
|
78
|
+
|
|
79
|
+
const portraitCode = `<div className="w-[200px]">
|
|
80
|
+
<AspectRatio variant="portrait">
|
|
81
|
+
<Image
|
|
82
|
+
src="https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=800&q=80"
|
|
83
|
+
alt="Portrait"
|
|
84
|
+
fill
|
|
85
|
+
className="rounded-md object-cover"
|
|
86
|
+
/>
|
|
87
|
+
</AspectRatio>
|
|
88
|
+
</div>`;
|
|
89
|
+
|
|
90
|
+
const wideCode = `<div className="w-[450px]">
|
|
91
|
+
<AspectRatio variant="wide">
|
|
92
|
+
<Image
|
|
93
|
+
src="https://images.unsplash.com/photo-1469474968028-56623f02e42e?w=800&q=80"
|
|
94
|
+
alt="Wide"
|
|
95
|
+
fill
|
|
96
|
+
className="rounded-md object-cover"
|
|
97
|
+
/>
|
|
98
|
+
</AspectRatio>
|
|
99
|
+
</div>`;
|
|
100
|
+
|
|
101
|
+
return (
|
|
102
|
+
<div className="space-y-12 pb-12">
|
|
103
|
+
{/* Header */}
|
|
104
|
+
<motion.div
|
|
105
|
+
initial={{ opacity: 0, y: 20 }}
|
|
106
|
+
animate={{ opacity: 1, y: 0 }}
|
|
107
|
+
transition={{ duration: 0.4 }}
|
|
108
|
+
className="space-y-4"
|
|
109
|
+
>
|
|
110
|
+
<div className="space-y-2">
|
|
111
|
+
<h1
|
|
112
|
+
id="aspect-ratio"
|
|
113
|
+
className="scroll-m-20 text-5xl font-bold tracking-tight"
|
|
114
|
+
>
|
|
115
|
+
Aspect Ratio
|
|
116
|
+
</h1>
|
|
117
|
+
<p className="text-xl text-muted-foreground leading-relaxed max-w-3xl">
|
|
118
|
+
Displays content within a desired ratio.
|
|
119
|
+
</p>
|
|
120
|
+
</div>
|
|
121
|
+
|
|
122
|
+
<div className="flex items-center gap-3 pt-3 border-t border-border/50">
|
|
123
|
+
<span className="text-sm font-medium text-foreground">
|
|
124
|
+
Framework:
|
|
125
|
+
</span>
|
|
126
|
+
<span className="inline-flex items-center rounded-md bg-primary/10 px-3 py-1 text-xs font-mono font-semibold text-primary ring-1 ring-inset ring-primary/20 capitalize">
|
|
127
|
+
{framework}
|
|
128
|
+
</span>
|
|
129
|
+
</div>
|
|
130
|
+
</motion.div>
|
|
131
|
+
|
|
132
|
+
{/* Installation */}
|
|
133
|
+
<motion.div
|
|
134
|
+
initial={{ opacity: 0, y: 20 }}
|
|
135
|
+
animate={{ opacity: 1, y: 0 }}
|
|
136
|
+
transition={{ duration: 0.4, delay: 0.1 }}
|
|
137
|
+
className="space-y-4"
|
|
138
|
+
>
|
|
139
|
+
<h2
|
|
140
|
+
id="installation"
|
|
141
|
+
className="scroll-m-20 border-b border-border/50 pb-3 text-3xl font-semibold tracking-tight"
|
|
142
|
+
>
|
|
143
|
+
Installation
|
|
144
|
+
</h2>
|
|
145
|
+
<InstallationCommand
|
|
146
|
+
code={
|
|
147
|
+
framework === "flutter"
|
|
148
|
+
? "crossui add aspect-ratio"
|
|
149
|
+
: "npx crossui add aspect-ratio"
|
|
150
|
+
}
|
|
151
|
+
/>
|
|
152
|
+
</motion.div>
|
|
153
|
+
|
|
154
|
+
{/* Usage */}
|
|
155
|
+
<motion.div
|
|
156
|
+
initial={{ opacity: 0, y: 20 }}
|
|
157
|
+
animate={{ opacity: 1, y: 0 }}
|
|
158
|
+
transition={{ duration: 0.4, delay: 0.2 }}
|
|
159
|
+
className="space-y-4"
|
|
160
|
+
>
|
|
161
|
+
<h2
|
|
162
|
+
id="usage"
|
|
163
|
+
className="scroll-m-20 border-b border-border/50 pb-3 text-3xl font-semibold tracking-tight"
|
|
164
|
+
>
|
|
165
|
+
Usage
|
|
166
|
+
</h2>
|
|
167
|
+
<InstallationCommand
|
|
168
|
+
code={usage.code}
|
|
169
|
+
title={usage.title}
|
|
170
|
+
language={usage.lang}
|
|
171
|
+
/>
|
|
172
|
+
</motion.div>
|
|
173
|
+
|
|
174
|
+
{/* Examples */}
|
|
175
|
+
<motion.div
|
|
176
|
+
initial={{ opacity: 0, y: 20 }}
|
|
177
|
+
animate={{ opacity: 1, y: 0 }}
|
|
178
|
+
transition={{ duration: 0.4, delay: 0.3 }}
|
|
179
|
+
className="space-y-8"
|
|
180
|
+
>
|
|
181
|
+
<h2
|
|
182
|
+
id="examples"
|
|
183
|
+
className="scroll-m-20 border-b border-border/50 pb-3 text-3xl font-semibold tracking-tight"
|
|
184
|
+
>
|
|
185
|
+
Examples
|
|
186
|
+
</h2>
|
|
187
|
+
|
|
188
|
+
{/* Variants */}
|
|
189
|
+
<div className="space-y-4">
|
|
190
|
+
<div className="space-y-2">
|
|
191
|
+
<h3
|
|
192
|
+
id="variants"
|
|
193
|
+
className="scroll-m-20 text-2xl font-semibold tracking-tight"
|
|
194
|
+
>
|
|
195
|
+
Variants
|
|
196
|
+
</h3>
|
|
197
|
+
<p className="text-base text-muted-foreground leading-relaxed">
|
|
198
|
+
Use the{" "}
|
|
199
|
+
<code className="relative rounded bg-muted px-2 py-0.5 font-mono text-sm">
|
|
200
|
+
variant
|
|
201
|
+
</code>{" "}
|
|
202
|
+
prop to verify different aspect ratios.
|
|
203
|
+
</p>
|
|
204
|
+
</div>
|
|
205
|
+
<ComponentPreview name="aspect-ratio-demo" code={variantsCode}>
|
|
206
|
+
<div className="w-[300px] overflow-hidden rounded-md border border-border bg-muted">
|
|
207
|
+
<AspectRatio variant="landscape">
|
|
208
|
+
<Image
|
|
209
|
+
src="https://images.unsplash.com/photo-1588345921523-c2dcdb7f1dcd?w=800&dpr=2&q=80"
|
|
210
|
+
alt="Photo by Drew Beamer"
|
|
211
|
+
fill
|
|
212
|
+
className="h-full w-full object-cover"
|
|
213
|
+
/>
|
|
214
|
+
</AspectRatio>
|
|
215
|
+
</div>
|
|
216
|
+
</ComponentPreview>
|
|
217
|
+
</div>
|
|
218
|
+
|
|
219
|
+
{/* Square */}
|
|
220
|
+
<div className="space-y-4">
|
|
221
|
+
<div className="space-y-2">
|
|
222
|
+
<h3 className="scroll-m-20 text-2xl font-semibold tracking-tight">
|
|
223
|
+
Square
|
|
224
|
+
</h3>
|
|
225
|
+
<p className="text-base text-muted-foreground leading-relaxed">
|
|
226
|
+
Use the{" "}
|
|
227
|
+
<code className="relative rounded bg-muted px-2 py-0.5 font-mono text-sm">
|
|
228
|
+
square
|
|
229
|
+
</code>{" "}
|
|
230
|
+
variant for 1:1 ratio.
|
|
231
|
+
</p>
|
|
232
|
+
</div>
|
|
233
|
+
<ComponentPreview name="aspect-ratio-square" code={squareCode}>
|
|
234
|
+
<div className="w-[200px] overflow-hidden rounded-md border border-border bg-muted">
|
|
235
|
+
<AspectRatio variant="square">
|
|
236
|
+
<Image
|
|
237
|
+
src="https://images.unsplash.com/photo-1514888286974-6c03e2ca1dba?w=800&q=80"
|
|
238
|
+
alt="Square"
|
|
239
|
+
fill
|
|
240
|
+
className="h-full w-full object-cover"
|
|
241
|
+
/>
|
|
242
|
+
</AspectRatio>
|
|
243
|
+
</div>
|
|
244
|
+
</ComponentPreview>
|
|
245
|
+
</div>
|
|
246
|
+
|
|
247
|
+
{/* Portrait */}
|
|
248
|
+
<div className="space-y-4">
|
|
249
|
+
<div className="space-y-2">
|
|
250
|
+
<h3 className="scroll-m-20 text-2xl font-semibold tracking-tight">
|
|
251
|
+
Portrait
|
|
252
|
+
</h3>
|
|
253
|
+
<p className="text-base text-muted-foreground leading-relaxed">
|
|
254
|
+
Use the{" "}
|
|
255
|
+
<code className="relative rounded bg-muted px-2 py-0.5 font-mono text-sm">
|
|
256
|
+
portrait
|
|
257
|
+
</code>{" "}
|
|
258
|
+
variant for 3:4 ratio.
|
|
259
|
+
</p>
|
|
260
|
+
</div>
|
|
261
|
+
<ComponentPreview name="aspect-ratio-portrait" code={portraitCode}>
|
|
262
|
+
<div className="w-[200px] overflow-hidden rounded-md border border-border bg-muted">
|
|
263
|
+
<AspectRatio variant="portrait">
|
|
264
|
+
<Image
|
|
265
|
+
src="https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=800&q=80"
|
|
266
|
+
alt="Portrait"
|
|
267
|
+
fill
|
|
268
|
+
className="h-full w-full object-cover"
|
|
269
|
+
/>
|
|
270
|
+
</AspectRatio>
|
|
271
|
+
</div>
|
|
272
|
+
</ComponentPreview>
|
|
273
|
+
</div>
|
|
274
|
+
|
|
275
|
+
{/* Wide */}
|
|
276
|
+
<div className="space-y-4">
|
|
277
|
+
<div className="space-y-2">
|
|
278
|
+
<h3 className="scroll-m-20 text-2xl font-semibold tracking-tight">
|
|
279
|
+
Wide
|
|
280
|
+
</h3>
|
|
281
|
+
<p className="text-base text-muted-foreground leading-relaxed">
|
|
282
|
+
Use the{" "}
|
|
283
|
+
<code className="relative rounded bg-muted px-2 py-0.5 font-mono text-sm">
|
|
284
|
+
wide
|
|
285
|
+
</code>{" "}
|
|
286
|
+
variant for 21:9 ratio.
|
|
287
|
+
</p>
|
|
288
|
+
</div>
|
|
289
|
+
<ComponentPreview name="aspect-ratio-wide" code={wideCode}>
|
|
290
|
+
<div className="w-[450px] overflow-hidden rounded-md border border-border bg-muted">
|
|
291
|
+
<AspectRatio variant="wide">
|
|
292
|
+
<Image
|
|
293
|
+
src="https://images.unsplash.com/photo-1469474968028-56623f02e42e?w=800&q=80"
|
|
294
|
+
alt="Wide"
|
|
295
|
+
fill
|
|
296
|
+
className="h-full w-full object-cover"
|
|
297
|
+
/>
|
|
298
|
+
</AspectRatio>
|
|
299
|
+
</div>
|
|
300
|
+
</ComponentPreview>
|
|
301
|
+
</div>
|
|
302
|
+
</motion.div>
|
|
303
|
+
|
|
304
|
+
{/* API Reference */}
|
|
305
|
+
<motion.div
|
|
306
|
+
initial={{ opacity: 0, y: 20 }}
|
|
307
|
+
animate={{ opacity: 1, y: 0 }}
|
|
308
|
+
transition={{ duration: 0.4, delay: 0.4 }}
|
|
309
|
+
className="space-y-4"
|
|
310
|
+
>
|
|
311
|
+
<h2
|
|
312
|
+
id="api-reference"
|
|
313
|
+
className="scroll-m-20 border-b border-border/50 pb-3 text-3xl font-semibold tracking-tight"
|
|
314
|
+
>
|
|
315
|
+
API Reference
|
|
316
|
+
</h2>
|
|
317
|
+
<div className="rounded-lg border border-border overflow-hidden">
|
|
318
|
+
<div className="overflow-x-auto">
|
|
319
|
+
<table className="w-full text-sm">
|
|
320
|
+
<thead className="bg-muted/50">
|
|
321
|
+
<tr className="border-b border-border">
|
|
322
|
+
<th className="text-left py-3.5 px-4 font-semibold">Prop</th>
|
|
323
|
+
<th className="text-left py-3.5 px-4 font-semibold">Type</th>
|
|
324
|
+
<th className="text-left py-3.5 px-4 font-semibold">
|
|
325
|
+
Default
|
|
326
|
+
</th>
|
|
327
|
+
<th className="text-left py-3.5 px-4 font-semibold">
|
|
328
|
+
Description
|
|
329
|
+
</th>
|
|
330
|
+
</tr>
|
|
331
|
+
</thead>
|
|
332
|
+
<tbody>
|
|
333
|
+
<tr className="border-b border-border hover:bg-muted/30 transition-colors">
|
|
334
|
+
<td className="py-3.5 px-4 font-mono text-xs font-medium">
|
|
335
|
+
ratio
|
|
336
|
+
</td>
|
|
337
|
+
<td className="py-3.5 px-4">
|
|
338
|
+
<code className="text-xs font-mono bg-muted px-2 py-1 rounded">
|
|
339
|
+
number
|
|
340
|
+
</code>
|
|
341
|
+
</td>
|
|
342
|
+
<td className="py-3.5 px-4">
|
|
343
|
+
<code className="text-xs font-mono bg-muted px-2 py-1 rounded">
|
|
344
|
+
16/9
|
|
345
|
+
</code>
|
|
346
|
+
</td>
|
|
347
|
+
<td className="py-3.5 px-4 text-muted-foreground">
|
|
348
|
+
The aspect ratio to use
|
|
349
|
+
</td>
|
|
350
|
+
</tr>
|
|
351
|
+
<tr className="border-b border-border hover:bg-muted/30 transition-colors">
|
|
352
|
+
<td className="py-3.5 px-4 font-mono text-xs font-medium">
|
|
353
|
+
variant
|
|
354
|
+
</td>
|
|
355
|
+
<td className="py-3.5 px-4">
|
|
356
|
+
<code className="text-xs font-mono bg-muted px-2 py-1 rounded">
|
|
357
|
+
'square' | 'landscape' | 'portrait' | 'wide' | 'ultrawide'
|
|
358
|
+
</code>
|
|
359
|
+
</td>
|
|
360
|
+
<td className="py-3.5 px-4">
|
|
361
|
+
<code className="text-xs font-mono bg-muted px-2 py-1 rounded">
|
|
362
|
+
'landscape'
|
|
363
|
+
</code>
|
|
364
|
+
</td>
|
|
365
|
+
<td className="py-3.5 px-4 text-muted-foreground">
|
|
366
|
+
Predefined aspect ratio variants
|
|
367
|
+
</td>
|
|
368
|
+
</tr>
|
|
369
|
+
</tbody>
|
|
370
|
+
</table>
|
|
371
|
+
</div>
|
|
372
|
+
</div>
|
|
373
|
+
</motion.div>
|
|
374
|
+
</div>
|
|
375
|
+
);
|
|
376
|
+
}
|