@pos-360/horizon 0.5.3 → 0.5.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/dist/chunk-E3UN74IA.mjs +276 -0
- package/dist/chunk-E3UN74IA.mjs.map +1 -0
- package/dist/{chunk-223LM7JX.js → chunk-EQA33OB6.js} +362 -25
- package/dist/chunk-EQA33OB6.js.map +1 -0
- package/dist/{chunk-2A47AJTF.mjs → chunk-MB2CYZNV.mjs} +86 -348
- package/dist/chunk-MB2CYZNV.mjs.map +1 -0
- package/dist/{chunk-ZBMBYN56.mjs → chunk-MEJ3HYYK.mjs} +336 -6
- package/dist/chunk-MEJ3HYYK.mjs.map +1 -0
- package/dist/{chunk-CNIMGVGT.js → chunk-RLWM76LJ.js} +147 -422
- package/dist/chunk-RLWM76LJ.js.map +1 -0
- package/dist/chunk-YO72COII.js +311 -0
- package/dist/chunk-YO72COII.js.map +1 -0
- package/dist/enhanced.d.mts +91 -2
- package/dist/enhanced.d.ts +91 -2
- package/dist/enhanced.js +37 -13
- package/dist/enhanced.mjs +2 -2
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +166 -142
- package/dist/index.mjs +3 -3
- package/dist/primitives.js +120 -120
- package/dist/primitives.mjs +2 -2
- package/package.json +2 -1
- package/dist/chunk-223LM7JX.js.map +0 -1
- package/dist/chunk-2A47AJTF.mjs.map +0 -1
- package/dist/chunk-CNIMGVGT.js.map +0 -1
- package/dist/chunk-TDRL2RCT.mjs +0 -10
- package/dist/chunk-TDRL2RCT.mjs.map +0 -1
- package/dist/chunk-TMZLQK74.js +0 -12
- package/dist/chunk-TMZLQK74.js.map +0 -1
- package/dist/chunk-ZBMBYN56.mjs.map +0 -1
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
import { clsx } from 'clsx';
|
|
2
|
+
import { twMerge } from 'tailwind-merge';
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
7
|
+
import { Slot } from '@radix-ui/react-slot';
|
|
8
|
+
|
|
9
|
+
function cn(...inputs) {
|
|
10
|
+
return twMerge(clsx(inputs));
|
|
11
|
+
}
|
|
12
|
+
var badgeVariants = cva(
|
|
13
|
+
"inline-flex items-center rounded-hz-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",
|
|
14
|
+
{
|
|
15
|
+
variants: {
|
|
16
|
+
variant: {
|
|
17
|
+
default: "border-transparent bg-blue-600 text-white hover:bg-blue-700",
|
|
18
|
+
secondary: "border-transparent bg-gray-100 text-gray-900 hover:bg-gray-200 dark:bg-neutral-700 dark:text-gray-100 dark:hover:bg-neutral-600",
|
|
19
|
+
destructive: "border-transparent bg-rose-100 text-rose-800 dark:bg-rose-900/30 dark:text-rose-400",
|
|
20
|
+
outline: "border-gray-300 text-gray-700 dark:border-neutral-600 dark:text-gray-300",
|
|
21
|
+
success: "border-transparent bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400",
|
|
22
|
+
warning: "border-transparent bg-amber-100 text-amber-800 dark:bg-amber-900/30 dark:text-amber-400",
|
|
23
|
+
info: "border-transparent bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-400",
|
|
24
|
+
purple: "border-transparent bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-400",
|
|
25
|
+
purpleOutline: "border-purple-300 dark:border-purple-600 bg-transparent text-purple-700 dark:text-purple-300 hover:bg-purple-50 dark:hover:bg-purple-900/20"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
defaultVariants: {
|
|
29
|
+
variant: "default"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
function Badge({ className, variant, ...props }) {
|
|
34
|
+
return /* @__PURE__ */ jsx("div", { className: cn(badgeVariants({ variant }), className), ...props });
|
|
35
|
+
}
|
|
36
|
+
var labelVariants = cva(
|
|
37
|
+
"font-bricolage font-medium text-neutral-900 dark:text-neutral-100 peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
|
|
38
|
+
{
|
|
39
|
+
variants: {
|
|
40
|
+
variant: {
|
|
41
|
+
default: "",
|
|
42
|
+
eyebrow: "uppercase tracking-[0.2em]"
|
|
43
|
+
},
|
|
44
|
+
size: {
|
|
45
|
+
xs: "text-[10px] leading-3",
|
|
46
|
+
sm: "text-xs leading-4",
|
|
47
|
+
base: "text-sm leading-5",
|
|
48
|
+
lg: "text-base leading-6",
|
|
49
|
+
xl: "text-lg leading-7"
|
|
50
|
+
},
|
|
51
|
+
weight: {
|
|
52
|
+
medium: "font-medium",
|
|
53
|
+
semibold: "font-semibold",
|
|
54
|
+
bold: "font-bold"
|
|
55
|
+
},
|
|
56
|
+
required: {
|
|
57
|
+
true: "after:content-['*'] after:ml-0.5 after:text-rose-500",
|
|
58
|
+
false: ""
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
defaultVariants: {
|
|
62
|
+
variant: "default",
|
|
63
|
+
size: "base",
|
|
64
|
+
weight: "medium",
|
|
65
|
+
required: false
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
);
|
|
69
|
+
var Label = React.forwardRef(({ className, variant, size, weight, required, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
70
|
+
LabelPrimitive.Root,
|
|
71
|
+
{
|
|
72
|
+
ref,
|
|
73
|
+
className: cn(labelVariants({ variant, size, weight, required, className })),
|
|
74
|
+
...props
|
|
75
|
+
}
|
|
76
|
+
));
|
|
77
|
+
Label.displayName = LabelPrimitive.Root.displayName;
|
|
78
|
+
var headingVariants = cva(
|
|
79
|
+
"font-bricolage tracking-tight text-neutral-900 dark:text-neutral-50",
|
|
80
|
+
{
|
|
81
|
+
variants: {
|
|
82
|
+
level: {
|
|
83
|
+
1: "text-4xl sm:text-5xl lg:text-6xl",
|
|
84
|
+
2: "text-3xl sm:text-4xl lg:text-5xl",
|
|
85
|
+
3: "text-2xl sm:text-3xl lg:text-4xl",
|
|
86
|
+
4: "text-xl sm:text-2xl lg:text-3xl",
|
|
87
|
+
5: "text-lg sm:text-xl lg:text-2xl",
|
|
88
|
+
6: "text-base sm:text-lg lg:text-xl"
|
|
89
|
+
},
|
|
90
|
+
weight: {
|
|
91
|
+
regular: "font-normal",
|
|
92
|
+
medium: "font-medium",
|
|
93
|
+
semibold: "font-semibold",
|
|
94
|
+
bold: "font-bold"
|
|
95
|
+
},
|
|
96
|
+
align: {
|
|
97
|
+
left: "text-left",
|
|
98
|
+
center: "text-center",
|
|
99
|
+
right: "text-right"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
defaultVariants: {
|
|
103
|
+
level: 1,
|
|
104
|
+
weight: "bold",
|
|
105
|
+
align: "left"
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
);
|
|
109
|
+
var Heading = React.forwardRef(
|
|
110
|
+
({ className, level = 1, weight, align, as, children, ...props }, ref) => {
|
|
111
|
+
const Tag = as || `h${level}`;
|
|
112
|
+
return /* @__PURE__ */ jsx(
|
|
113
|
+
Tag,
|
|
114
|
+
{
|
|
115
|
+
ref,
|
|
116
|
+
className: cn(headingVariants({ level, weight, align, className })),
|
|
117
|
+
...props,
|
|
118
|
+
children
|
|
119
|
+
}
|
|
120
|
+
);
|
|
121
|
+
}
|
|
122
|
+
);
|
|
123
|
+
Heading.displayName = "Heading";
|
|
124
|
+
var textVariants = cva("font-bricolage text-neutral-700 dark:text-neutral-300", {
|
|
125
|
+
variants: {
|
|
126
|
+
size: {
|
|
127
|
+
xs: "text-xs leading-4",
|
|
128
|
+
sm: "text-sm leading-5",
|
|
129
|
+
base: "text-base leading-6",
|
|
130
|
+
lg: "text-lg leading-7",
|
|
131
|
+
xl: "text-xl leading-8",
|
|
132
|
+
"2xl": "text-2xl leading-9",
|
|
133
|
+
"3xl": "text-3xl leading-10",
|
|
134
|
+
"4xl": "text-4xl leading-[2.75rem]"
|
|
135
|
+
},
|
|
136
|
+
weight: {
|
|
137
|
+
regular: "font-normal",
|
|
138
|
+
medium: "font-medium",
|
|
139
|
+
semibold: "font-semibold"
|
|
140
|
+
},
|
|
141
|
+
align: {
|
|
142
|
+
left: "text-left",
|
|
143
|
+
center: "text-center",
|
|
144
|
+
right: "text-right",
|
|
145
|
+
justify: "text-justify"
|
|
146
|
+
},
|
|
147
|
+
color: {
|
|
148
|
+
default: "text-neutral-700 dark:text-neutral-300",
|
|
149
|
+
muted: "text-neutral-500 dark:text-neutral-400",
|
|
150
|
+
accent: "text-blue-600 dark:text-blue-400",
|
|
151
|
+
success: "text-emerald-600 dark:text-emerald-400",
|
|
152
|
+
warning: "text-amber-600 dark:text-amber-400",
|
|
153
|
+
error: "text-rose-600 dark:text-rose-400"
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
defaultVariants: {
|
|
157
|
+
size: "base",
|
|
158
|
+
weight: "regular",
|
|
159
|
+
align: "left",
|
|
160
|
+
color: "default"
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
var Text = React.forwardRef(
|
|
164
|
+
({ className, size, weight, align, color, asChild = false, as = "p", children, ...props }, ref) => {
|
|
165
|
+
const Comp = asChild ? Slot : as;
|
|
166
|
+
return /* @__PURE__ */ jsx(
|
|
167
|
+
Comp,
|
|
168
|
+
{
|
|
169
|
+
ref,
|
|
170
|
+
className: cn(textVariants({ size, weight, align, color, className })),
|
|
171
|
+
...props,
|
|
172
|
+
children
|
|
173
|
+
}
|
|
174
|
+
);
|
|
175
|
+
}
|
|
176
|
+
);
|
|
177
|
+
Text.displayName = "Text";
|
|
178
|
+
var captionVariants = cva(
|
|
179
|
+
"font-bricolage text-xs leading-4 text-neutral-500 dark:text-neutral-400",
|
|
180
|
+
{
|
|
181
|
+
variants: {
|
|
182
|
+
weight: {
|
|
183
|
+
regular: "font-normal",
|
|
184
|
+
medium: "font-medium"
|
|
185
|
+
},
|
|
186
|
+
align: {
|
|
187
|
+
left: "text-left",
|
|
188
|
+
center: "text-center",
|
|
189
|
+
right: "text-right"
|
|
190
|
+
},
|
|
191
|
+
color: {
|
|
192
|
+
default: "text-neutral-500 dark:text-neutral-400",
|
|
193
|
+
muted: "text-neutral-400 dark:text-neutral-500",
|
|
194
|
+
accent: "text-blue-500 dark:text-blue-400",
|
|
195
|
+
success: "text-emerald-500 dark:text-emerald-400",
|
|
196
|
+
warning: "text-amber-500 dark:text-amber-400",
|
|
197
|
+
error: "text-rose-500 dark:text-rose-400"
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
defaultVariants: {
|
|
201
|
+
weight: "regular",
|
|
202
|
+
align: "left",
|
|
203
|
+
color: "default"
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
);
|
|
207
|
+
var Caption = React.forwardRef(
|
|
208
|
+
({ className, weight, align, color, children, ...props }, ref) => {
|
|
209
|
+
return /* @__PURE__ */ jsx(
|
|
210
|
+
"span",
|
|
211
|
+
{
|
|
212
|
+
ref,
|
|
213
|
+
className: cn(captionVariants({ weight, align, color, className })),
|
|
214
|
+
...props,
|
|
215
|
+
children
|
|
216
|
+
}
|
|
217
|
+
);
|
|
218
|
+
}
|
|
219
|
+
);
|
|
220
|
+
Caption.displayName = "Caption";
|
|
221
|
+
var codeVariants = cva("font-mono", {
|
|
222
|
+
variants: {
|
|
223
|
+
variant: {
|
|
224
|
+
inline: "px-1.5 py-0.5 text-sm rounded-hz-md bg-neutral-100 dark:bg-neutral-800 text-neutral-800 dark:text-neutral-200 border border-neutral-200 dark:border-neutral-700",
|
|
225
|
+
block: "block p-4 text-sm rounded-hz-lg bg-neutral-900 dark:bg-neutral-950 text-neutral-100 overflow-x-auto"
|
|
226
|
+
},
|
|
227
|
+
color: {
|
|
228
|
+
default: "",
|
|
229
|
+
accent: "bg-blue-50 dark:bg-blue-950/30 text-blue-700 dark:text-blue-300 border-blue-200 dark:border-blue-800",
|
|
230
|
+
success: "bg-emerald-50 dark:bg-emerald-950/30 text-emerald-700 dark:text-emerald-300 border-emerald-200 dark:border-emerald-800",
|
|
231
|
+
warning: "bg-amber-50 dark:bg-amber-950/30 text-amber-700 dark:text-amber-300 border-amber-200 dark:border-amber-800",
|
|
232
|
+
error: "bg-rose-50 dark:bg-rose-950/30 text-rose-700 dark:text-rose-300 border-rose-200 dark:border-rose-800"
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
compoundVariants: [
|
|
236
|
+
{
|
|
237
|
+
variant: "block",
|
|
238
|
+
color: ["accent", "success", "warning", "error"],
|
|
239
|
+
className: "border"
|
|
240
|
+
}
|
|
241
|
+
],
|
|
242
|
+
defaultVariants: {
|
|
243
|
+
variant: "inline",
|
|
244
|
+
color: "default"
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
var Code = React.forwardRef(
|
|
248
|
+
({ className, variant, color, children, ...props }, ref) => {
|
|
249
|
+
const isBlock = variant === "block";
|
|
250
|
+
if (isBlock) {
|
|
251
|
+
return /* @__PURE__ */ jsx(
|
|
252
|
+
"pre",
|
|
253
|
+
{
|
|
254
|
+
ref,
|
|
255
|
+
className: cn(codeVariants({ variant, color, className })),
|
|
256
|
+
...props,
|
|
257
|
+
children: /* @__PURE__ */ jsx("code", { children })
|
|
258
|
+
}
|
|
259
|
+
);
|
|
260
|
+
}
|
|
261
|
+
return /* @__PURE__ */ jsx(
|
|
262
|
+
"code",
|
|
263
|
+
{
|
|
264
|
+
ref,
|
|
265
|
+
className: cn(codeVariants({ variant, color, className })),
|
|
266
|
+
...props,
|
|
267
|
+
children
|
|
268
|
+
}
|
|
269
|
+
);
|
|
270
|
+
}
|
|
271
|
+
);
|
|
272
|
+
Code.displayName = "Code";
|
|
273
|
+
|
|
274
|
+
export { Badge, Caption, Code, Heading, Label, Text, badgeVariants, captionVariants, cn, codeVariants, headingVariants, labelVariants, textVariants };
|
|
275
|
+
//# sourceMappingURL=chunk-E3UN74IA.mjs.map
|
|
276
|
+
//# sourceMappingURL=chunk-E3UN74IA.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/cn.ts","../src/components/primitives/badge/badge.tsx","../src/components/primitives/typography/label.tsx","../src/components/primitives/typography/heading.tsx","../src/components/primitives/typography/text.tsx","../src/components/primitives/typography/caption.tsx","../src/components/primitives/typography/code.tsx"],"names":["cva","jsx","React2","React3","React4","React5"],"mappings":"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","file":"chunk-E3UN74IA.mjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\n/**\n * Utility function to merge Tailwind CSS classes\n * Combines clsx for conditional classes with tailwind-merge for deduplication\n *\n * @example\n * cn(\"px-4 py-2\", isActive && \"bg-blue-500\", className)\n */\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-hz-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-blue-600 text-white hover:bg-blue-700\",\n secondary:\n \"border-transparent bg-gray-100 text-gray-900 hover:bg-gray-200 dark:bg-neutral-700 dark:text-gray-100 dark:hover:bg-neutral-600\",\n destructive:\n \"border-transparent bg-rose-100 text-rose-800 dark:bg-rose-900/30 dark:text-rose-400\",\n outline:\n \"border-gray-300 text-gray-700 dark:border-neutral-600 dark:text-gray-300\",\n success:\n \"border-transparent bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400\",\n warning:\n \"border-transparent bg-amber-100 text-amber-800 dark:bg-amber-900/30 dark:text-amber-400\",\n info: \"border-transparent bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-400\",\n purple:\n \"border-transparent bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-400\",\n purpleOutline:\n \"border-purple-300 dark:border-purple-600 bg-transparent text-purple-700 dark:text-purple-300 hover:bg-purple-50 dark:hover:bg-purple-900/20\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"@/utils\";\n\nconst labelVariants = cva(\n \"font-bricolage font-medium text-neutral-900 dark:text-neutral-100 peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n {\n variants: {\n variant: {\n default: \"\",\n eyebrow: \"uppercase tracking-[0.2em]\",\n },\n size: {\n xs: \"text-[10px] leading-3\",\n sm: \"text-xs leading-4\",\n base: \"text-sm leading-5\",\n lg: \"text-base leading-6\",\n xl: \"text-lg leading-7\",\n },\n weight: {\n medium: \"font-medium\",\n semibold: \"font-semibold\",\n bold: \"font-bold\",\n },\n required: {\n true: \"after:content-['*'] after:ml-0.5 after:text-rose-500\",\n false: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"base\",\n weight: \"medium\",\n required: false,\n },\n }\n);\n\nexport interface LabelProps\n extends React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>,\n VariantProps<typeof labelVariants> {}\n\nconst Label = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n LabelProps\n>(({ className, variant, size, weight, required, ...props }, ref) => (\n <LabelPrimitive.Root\n ref={ref}\n className={cn(labelVariants({ variant, size, weight, required, className }))}\n {...props}\n />\n));\n\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label, labelVariants };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"@/utils\";\n\nconst headingVariants = cva(\n \"font-bricolage tracking-tight text-neutral-900 dark:text-neutral-50\",\n {\n variants: {\n level: {\n 1: \"text-4xl sm:text-5xl lg:text-6xl\",\n 2: \"text-3xl sm:text-4xl lg:text-5xl\",\n 3: \"text-2xl sm:text-3xl lg:text-4xl\",\n 4: \"text-xl sm:text-2xl lg:text-3xl\",\n 5: \"text-lg sm:text-xl lg:text-2xl\",\n 6: \"text-base sm:text-lg lg:text-xl\",\n },\n weight: {\n regular: \"font-normal\",\n medium: \"font-medium\",\n semibold: \"font-semibold\",\n bold: \"font-bold\",\n },\n align: {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n },\n },\n defaultVariants: {\n level: 1,\n weight: \"bold\",\n align: \"left\",\n },\n }\n);\n\ntype HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;\n\nexport interface HeadingProps\n extends React.HTMLAttributes<HTMLHeadingElement>,\n Omit<VariantProps<typeof headingVariants>, \"level\"> {\n level?: HeadingLevel;\n as?: `h${HeadingLevel}`;\n}\n\nconst Heading = React.forwardRef<HTMLHeadingElement, HeadingProps>(\n ({ className, level = 1, weight, align, as, children, ...props }, ref) => {\n // Use `as` prop if provided, otherwise derive from level\n const Tag = as || (`h${level}` as `h${HeadingLevel}`);\n\n return (\n <Tag\n ref={ref}\n className={cn(headingVariants({ level, weight, align, className }))}\n {...props}\n >\n {children}\n </Tag>\n );\n }\n);\n\nHeading.displayName = \"Heading\";\n\nexport { Heading, headingVariants };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"@/utils\";\n\nconst textVariants = cva(\"font-bricolage text-neutral-700 dark:text-neutral-300\", {\n variants: {\n size: {\n xs: \"text-xs leading-4\",\n sm: \"text-sm leading-5\",\n base: \"text-base leading-6\",\n lg: \"text-lg leading-7\",\n xl: \"text-xl leading-8\",\n \"2xl\": \"text-2xl leading-9\",\n \"3xl\": \"text-3xl leading-10\",\n \"4xl\": \"text-4xl leading-[2.75rem]\",\n },\n weight: {\n regular: \"font-normal\",\n medium: \"font-medium\",\n semibold: \"font-semibold\",\n },\n align: {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n justify: \"text-justify\",\n },\n color: {\n default: \"text-neutral-700 dark:text-neutral-300\",\n muted: \"text-neutral-500 dark:text-neutral-400\",\n accent: \"text-blue-600 dark:text-blue-400\",\n success: \"text-emerald-600 dark:text-emerald-400\",\n warning: \"text-amber-600 dark:text-amber-400\",\n error: \"text-rose-600 dark:text-rose-400\",\n },\n },\n defaultVariants: {\n size: \"base\",\n weight: \"regular\",\n align: \"left\",\n color: \"default\",\n },\n});\n\nexport interface TextProps\n extends Omit<React.HTMLAttributes<HTMLParagraphElement>, \"color\">,\n VariantProps<typeof textVariants> {\n asChild?: boolean;\n as?: \"p\" | \"span\" | \"div\";\n}\n\nconst Text = React.forwardRef<HTMLParagraphElement, TextProps>(\n (\n { className, size, weight, align, color, asChild = false, as = \"p\", children, ...props },\n ref\n ) => {\n const Comp = asChild ? Slot : as;\n\n return (\n <Comp\n ref={ref}\n className={cn(textVariants({ size, weight, align, color, className }))}\n {...props}\n >\n {children}\n </Comp>\n );\n }\n);\n\nText.displayName = \"Text\";\n\nexport { Text, textVariants };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"@/utils\";\n\nconst captionVariants = cva(\n \"font-bricolage text-xs leading-4 text-neutral-500 dark:text-neutral-400\",\n {\n variants: {\n weight: {\n regular: \"font-normal\",\n medium: \"font-medium\",\n },\n align: {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n },\n color: {\n default: \"text-neutral-500 dark:text-neutral-400\",\n muted: \"text-neutral-400 dark:text-neutral-500\",\n accent: \"text-blue-500 dark:text-blue-400\",\n success: \"text-emerald-500 dark:text-emerald-400\",\n warning: \"text-amber-500 dark:text-amber-400\",\n error: \"text-rose-500 dark:text-rose-400\",\n },\n },\n defaultVariants: {\n weight: \"regular\",\n align: \"left\",\n color: \"default\",\n },\n }\n);\n\nexport interface CaptionProps\n extends Omit<React.HTMLAttributes<HTMLSpanElement>, \"color\">,\n VariantProps<typeof captionVariants> {}\n\nconst Caption = React.forwardRef<HTMLSpanElement, CaptionProps>(\n ({ className, weight, align, color, children, ...props }, ref) => {\n return (\n <span\n ref={ref}\n className={cn(captionVariants({ weight, align, color, className }))}\n {...props}\n >\n {children}\n </span>\n );\n }\n);\n\nCaption.displayName = \"Caption\";\n\nexport { Caption, captionVariants };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"@/utils\";\n\nconst codeVariants = cva(\"font-mono\", {\n variants: {\n variant: {\n inline:\n \"px-1.5 py-0.5 text-sm rounded-hz-md bg-neutral-100 dark:bg-neutral-800 text-neutral-800 dark:text-neutral-200 border border-neutral-200 dark:border-neutral-700\",\n block:\n \"block p-4 text-sm rounded-hz-lg bg-neutral-900 dark:bg-neutral-950 text-neutral-100 overflow-x-auto\",\n },\n color: {\n default: \"\",\n accent:\n \"bg-blue-50 dark:bg-blue-950/30 text-blue-700 dark:text-blue-300 border-blue-200 dark:border-blue-800\",\n success:\n \"bg-emerald-50 dark:bg-emerald-950/30 text-emerald-700 dark:text-emerald-300 border-emerald-200 dark:border-emerald-800\",\n warning:\n \"bg-amber-50 dark:bg-amber-950/30 text-amber-700 dark:text-amber-300 border-amber-200 dark:border-amber-800\",\n error:\n \"bg-rose-50 dark:bg-rose-950/30 text-rose-700 dark:text-rose-300 border-rose-200 dark:border-rose-800\",\n },\n },\n compoundVariants: [\n {\n variant: \"block\",\n color: [\"accent\", \"success\", \"warning\", \"error\"],\n className: \"border\",\n },\n ],\n defaultVariants: {\n variant: \"inline\",\n color: \"default\",\n },\n});\n\nexport interface CodeProps\n extends Omit<React.HTMLAttributes<HTMLElement>, \"color\">,\n VariantProps<typeof codeVariants> {}\n\nconst Code = React.forwardRef<HTMLElement, CodeProps>(\n ({ className, variant, color, children, ...props }, ref) => {\n const isBlock = variant === \"block\";\n\n if (isBlock) {\n return (\n <pre\n ref={ref as React.Ref<HTMLPreElement>}\n className={cn(codeVariants({ variant, color, className }))}\n {...props}\n >\n <code>{children}</code>\n </pre>\n );\n }\n\n return (\n <code\n ref={ref}\n className={cn(codeVariants({ variant, color, className }))}\n {...props}\n >\n {children}\n </code>\n );\n }\n);\n\nCode.displayName = \"Code\";\n\nexport { Code, codeVariants };\n"]}
|