singularity-components 0.1.56 → 0.1.58
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/main.cjs +72 -58
- package/dist/main.cjs.map +1 -1
- package/dist/main.css +17 -13
- package/dist/main.css.map +1 -1
- package/dist/main.d.cts +15 -21
- package/dist/main.d.ts +15 -21
- package/dist/main.js +72 -57
- package/dist/main.js.map +1 -1
- package/package.json +4 -5
package/dist/main.cjs
CHANGED
|
@@ -32,13 +32,15 @@ var main_exports = {};
|
|
|
32
32
|
__export(main_exports, {
|
|
33
33
|
Badge: () => Badge,
|
|
34
34
|
Button: () => Button,
|
|
35
|
-
Demo: () => Demo,
|
|
36
35
|
Heading: () => Heading,
|
|
37
36
|
Layout: () => Layout,
|
|
38
37
|
Text: () => Text
|
|
39
38
|
});
|
|
40
39
|
module.exports = __toCommonJS(main_exports);
|
|
41
40
|
|
|
41
|
+
// lib/components/ui/heading/heading.tsx
|
|
42
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
43
|
+
|
|
42
44
|
// lib/utils.ts
|
|
43
45
|
var import_clsx = require("clsx");
|
|
44
46
|
var import_tailwind_merge = require("tailwind-merge");
|
|
@@ -49,23 +51,8 @@ function cn(...inputs) {
|
|
|
49
51
|
return twMergeWithPrefix((0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs)));
|
|
50
52
|
}
|
|
51
53
|
|
|
52
|
-
// lib/components/Demo.tsx
|
|
53
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
|
54
|
-
var Demo = ({ text }) => {
|
|
55
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
56
|
-
"div",
|
|
57
|
-
{
|
|
58
|
-
className: cn(
|
|
59
|
-
"sg-text-orange-500 sg-p-4 sg-p-3 sg-text-white sg-bg-black"
|
|
60
|
-
),
|
|
61
|
-
children: text
|
|
62
|
-
}
|
|
63
|
-
);
|
|
64
|
-
};
|
|
65
|
-
|
|
66
54
|
// lib/components/ui/heading/heading.tsx
|
|
67
|
-
var
|
|
68
|
-
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
55
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
69
56
|
var headingVariants = (0, import_class_variance_authority.cva)("", {
|
|
70
57
|
variants: {
|
|
71
58
|
variant: {
|
|
@@ -87,14 +74,19 @@ var headingVariants = (0, import_class_variance_authority.cva)("", {
|
|
|
87
74
|
});
|
|
88
75
|
var Heading = ({
|
|
89
76
|
children,
|
|
90
|
-
as
|
|
77
|
+
as,
|
|
91
78
|
variant,
|
|
92
79
|
foreground,
|
|
93
80
|
className,
|
|
94
81
|
...props
|
|
95
82
|
}) => {
|
|
83
|
+
if (!as && variant) {
|
|
84
|
+
as = variant;
|
|
85
|
+
} else if (!as) {
|
|
86
|
+
as = "h2";
|
|
87
|
+
}
|
|
96
88
|
const Component = as;
|
|
97
|
-
return /* @__PURE__ */ (0,
|
|
89
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
98
90
|
Component,
|
|
99
91
|
{
|
|
100
92
|
className: cn(headingVariants({ variant, foreground, className })),
|
|
@@ -106,7 +98,7 @@ var Heading = ({
|
|
|
106
98
|
|
|
107
99
|
// lib/components/ui/text/text.tsx
|
|
108
100
|
var import_class_variance_authority2 = require("class-variance-authority");
|
|
109
|
-
var
|
|
101
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
110
102
|
var textVariants = (0, import_class_variance_authority2.cva)("", {
|
|
111
103
|
variants: {
|
|
112
104
|
size: {
|
|
@@ -145,7 +137,7 @@ var Text = ({
|
|
|
145
137
|
className,
|
|
146
138
|
...props
|
|
147
139
|
}) => {
|
|
148
|
-
return /* @__PURE__ */ (0,
|
|
140
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
149
141
|
"p",
|
|
150
142
|
{
|
|
151
143
|
className: cn(
|
|
@@ -166,7 +158,7 @@ var Text = ({
|
|
|
166
158
|
var React = __toESM(require("react"), 1);
|
|
167
159
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
168
160
|
var import_class_variance_authority3 = require("class-variance-authority");
|
|
169
|
-
var
|
|
161
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
170
162
|
var buttonVariants = (0, import_class_variance_authority3.cva)(
|
|
171
163
|
"sg-inline-flex sg-items-center sg-justify-center sg-gap-2 sg-whitespace-nowrap sg-rounded-md sg-text-sm sg-font-medium sg-transition-colors focus-visible:sg-outline-none focus-visible:ring-offset-2 focus-visible:sg-ring-2 focus-visible:sg-ring-ring disabled:sg-pointer-events-none disabled:sg-opacity-50 [&_svg]:sg-pointer-events-none [&_svg]:sg-size-4 [&_svg]:sg-shrink-0",
|
|
172
164
|
{
|
|
@@ -195,7 +187,7 @@ var buttonVariants = (0, import_class_variance_authority3.cva)(
|
|
|
195
187
|
var Button = React.forwardRef(
|
|
196
188
|
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
197
189
|
const Comp = asChild ? import_react_slot.Slot : "button";
|
|
198
|
-
return /* @__PURE__ */ (0,
|
|
190
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
199
191
|
Comp,
|
|
200
192
|
{
|
|
201
193
|
className: cn(buttonVariants({ variant, size, className })),
|
|
@@ -209,7 +201,7 @@ Button.displayName = "Button";
|
|
|
209
201
|
|
|
210
202
|
// lib/components/ui/badge/badge.tsx
|
|
211
203
|
var import_class_variance_authority4 = require("class-variance-authority");
|
|
212
|
-
var
|
|
204
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
213
205
|
var badgeVariants = (0, import_class_variance_authority4.cva)(
|
|
214
206
|
"sg-inline-flex sg-items-center sg-rounded-md sg-border sg-px-2.5 sg-py-0.5 sg-text-xs sg-font-semibold sg-transition-colors focus:sg-outline-none focus:sg-ring-2 focus:sg-ring-ring focus:sg-ring-offset-2",
|
|
215
207
|
{
|
|
@@ -227,73 +219,95 @@ var badgeVariants = (0, import_class_variance_authority4.cva)(
|
|
|
227
219
|
}
|
|
228
220
|
);
|
|
229
221
|
function Badge({ className, variant, ...props }) {
|
|
230
|
-
return /* @__PURE__ */ (0,
|
|
222
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: cn(badgeVariants({ variant }), className), ...props });
|
|
231
223
|
}
|
|
232
224
|
|
|
233
225
|
// lib/components/ui/layout/layout.tsx
|
|
234
226
|
var React2 = __toESM(require("react"), 1);
|
|
235
227
|
var import_class_variance_authority5 = require("class-variance-authority");
|
|
236
|
-
var
|
|
237
|
-
var
|
|
228
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
229
|
+
var bgColor = {
|
|
230
|
+
transparent: "sg-bg-transparent",
|
|
231
|
+
white: "sg-bg-white",
|
|
232
|
+
black: "sg-bg-black",
|
|
233
|
+
orange: "sg-bg-orange",
|
|
234
|
+
purple: "sg-bg-purple"
|
|
235
|
+
};
|
|
236
|
+
var layoutVariants = (0, import_class_variance_authority5.cva)("sg-grid sg-grid-cols-1 sg-gap-4", {
|
|
238
237
|
variants: {
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
"50-50": "sg-grid-cols-1 md:sg-grid-cols-2",
|
|
243
|
-
"33-33-33": "sg-grid-cols-1 md:sg-grid-cols-2",
|
|
244
|
-
"25-25-25-25": "sg-grid-cols-1 md:sg-grid-cols-2"
|
|
238
|
+
content: {
|
|
239
|
+
full: "sg-w-full sg-px-4",
|
|
240
|
+
col: "sg-mx-auto sg-max-w-[768px] sg-px-4 md:sg-px-0"
|
|
245
241
|
},
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
242
|
+
cols: {
|
|
243
|
+
"100": "",
|
|
244
|
+
"66-33": "md:sg-grid-cols-2",
|
|
245
|
+
"50-50": "md:sg-grid-cols-2",
|
|
246
|
+
"33-33-33": "md:sg-grid-cols-3",
|
|
247
|
+
"25-25-25-25": "md:sg-grid-cols-4"
|
|
248
|
+
},
|
|
249
|
+
bgcolor: bgColor
|
|
250
250
|
},
|
|
251
251
|
defaultVariants: {
|
|
252
|
-
|
|
253
|
-
|
|
252
|
+
content: "col",
|
|
253
|
+
cols: "100"
|
|
254
254
|
}
|
|
255
255
|
});
|
|
256
256
|
function Layout({
|
|
257
257
|
children,
|
|
258
258
|
className,
|
|
259
|
-
|
|
259
|
+
content,
|
|
260
|
+
cols,
|
|
261
|
+
bgcolor
|
|
260
262
|
}) {
|
|
261
|
-
const allowedInLayout = (
|
|
262
|
-
if (
|
|
263
|
+
const allowedInLayout = (content2) => {
|
|
264
|
+
if (content2.type === Layout.Col1) {
|
|
263
265
|
return true;
|
|
264
|
-
} else if (
|
|
266
|
+
} else if (content2.type === Layout.Col2 && (cols === "66-33" || cols === "50-50" || cols === "33-33-33" || cols === "25-25-25-25")) {
|
|
265
267
|
return true;
|
|
266
|
-
} else if (
|
|
268
|
+
} else if (content2.type === Layout.Col3 && (cols === "33-33-33" || cols === "25-25-25-25")) {
|
|
267
269
|
return true;
|
|
268
|
-
} else if (
|
|
270
|
+
} else if (content2.type === Layout.Col4 && cols === "25-25-25-25") {
|
|
269
271
|
return true;
|
|
270
272
|
}
|
|
271
|
-
console.error(
|
|
273
|
+
console.error(
|
|
274
|
+
"Content not allowed in column for variant",
|
|
275
|
+
cols,
|
|
276
|
+
content2.type
|
|
277
|
+
);
|
|
272
278
|
return false;
|
|
273
279
|
};
|
|
274
|
-
const renderColumn = (
|
|
275
|
-
if (!allowedInLayout(
|
|
280
|
+
const renderColumn = (content2) => {
|
|
281
|
+
if (!allowedInLayout(content2)) {
|
|
276
282
|
return;
|
|
277
283
|
}
|
|
278
|
-
return /* @__PURE__ */ (0,
|
|
284
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { children: content2 });
|
|
279
285
|
};
|
|
280
|
-
return /* @__PURE__ */ (0,
|
|
286
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: cn(bgColor[bgcolor ?? "transparent"], className), children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: cn(layoutVariants({ content, cols })), children: React2.Children.map(
|
|
281
287
|
children,
|
|
282
|
-
(child) => React2.isValidElement(child) ? renderColumn(child) : /* @__PURE__ */ (0,
|
|
288
|
+
(child) => React2.isValidElement(child) ? renderColumn(child) : /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_jsx_runtime5.Fragment, {})
|
|
283
289
|
) }) });
|
|
284
290
|
}
|
|
285
|
-
function
|
|
286
|
-
return
|
|
291
|
+
function Col1({ children }) {
|
|
292
|
+
return children;
|
|
293
|
+
}
|
|
294
|
+
function Col2({ children }) {
|
|
295
|
+
return children;
|
|
296
|
+
}
|
|
297
|
+
function Col3({ children }) {
|
|
298
|
+
return children;
|
|
299
|
+
}
|
|
300
|
+
function Col4({ children }) {
|
|
301
|
+
return children;
|
|
287
302
|
}
|
|
288
|
-
Layout.Col1 =
|
|
289
|
-
Layout.Col2 =
|
|
290
|
-
Layout.Col3 =
|
|
291
|
-
Layout.Col4 =
|
|
303
|
+
Layout.Col1 = Col1;
|
|
304
|
+
Layout.Col2 = Col2;
|
|
305
|
+
Layout.Col3 = Col3;
|
|
306
|
+
Layout.Col4 = Col4;
|
|
292
307
|
// Annotate the CommonJS export names for ESM import in node:
|
|
293
308
|
0 && (module.exports = {
|
|
294
309
|
Badge,
|
|
295
310
|
Button,
|
|
296
|
-
Demo,
|
|
297
311
|
Heading,
|
|
298
312
|
Layout,
|
|
299
313
|
Text
|
package/dist/main.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/main.ts","../lib/utils.ts","../lib/components/Demo.tsx","../lib/components/ui/heading/heading.tsx","../lib/components/ui/text/text.tsx","../lib/components/ui/button/button.tsx","../lib/components/ui/badge/badge.tsx","../lib/components/ui/layout/layout.tsx"],"sourcesContent":["import \"./tailwind.css\";\n\nexport { Demo } from \"./components/Demo\";\n\n// export { Button } from \"./components/ui/button/button\";\n// export { Badge } from \"./components/ui/badge/badge\";\n\n// export { Layout } from \"./components/ui/layout/layout\";\n\nexport * from \"./components\";\n","import { clsx, type ClassValue } from \"clsx\";\r\nimport { extendTailwindMerge, twMerge } from \"tailwind-merge\";\r\nimport {} from \"tailwind-merge\";\r\n\r\nexport function cn(...inputs: ClassValue[]) {\r\n const twMergeWithPrefix = extendTailwindMerge({\r\n prefix: \"sg-\",\r\n });\r\n\r\n return twMergeWithPrefix(twMerge(clsx(inputs)));\r\n}\r\n","import { cn } from \"../utils\";\n\ntype props = {\n text?: string;\n};\n\nexport const Demo = ({ text }: props) => {\n return (\n <div\n className={cn(\n \"sg-text-orange-500 sg-p-4 sg-p-3 sg-text-white sg-bg-black\"\n )}\n >\n {text}\n </div>\n );\n};\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst headingVariants = cva(\"\", {\r\n variants: {\r\n variant: {\r\n h1: \"sg-text-4xl sg-font-extrabold sg-tracking-tight lg:sg-text-5xl\",\r\n h2: \"sg-text-3xl sg-font-semibold sg-tracking-tight sg-transition-colors first:sg-mt-0\",\r\n h3: \"sg-text-2xl sg-font-semibold sg-tracking-tight\",\r\n h4: \"sg-text-xl sg-font-semibold sg-tracking-tight\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"h2\",\r\n foreground: \"default\",\r\n },\r\n});\r\n\r\nexport interface HeadingProps\r\n extends OmitClassProperty<\r\n React.HTMLAttributes<HTMLHeadingElement>,\r\n \"className\"\r\n >,\r\n VariantProps<typeof headingVariants> {\r\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\";\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Heading: React.FC<HeadingProps> = ({\r\n children,\r\n as = \"h2\",\r\n variant,\r\n foreground,\r\n className,\r\n ...props\r\n}) => {\r\n const Component = as;\r\n\r\n return (\r\n <Component\r\n className={cn(headingVariants({ variant, foreground, className }))}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst textVariants = cva(\"\", {\r\n variants: {\r\n size: {\r\n xs: \"sg-text-xs\",\r\n sm: \"sg-text-sm\",\r\n base: \"sg-text-base\",\r\n lg: \"sg-text-lg\",\r\n xl: \"sg-text-xl\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n secondary: \"sg-text-secondary-foreground\",\r\n destructive: \"sg-text-destructive\",\r\n accent: \"sg-text-accent-foreground\",\r\n },\r\n weight: {\r\n normal: \"sg-font-normal\",\r\n medium: \"sg-font-medium\",\r\n semibold: \"sg-font-semibold\",\r\n bold: \"sg-font-bold\",\r\n },\r\n },\r\n defaultVariants: {\r\n size: \"base\",\r\n foreground: \"default\",\r\n weight: \"normal\",\r\n },\r\n});\r\n\r\nexport interface TextProps\r\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\r\n VariantProps<typeof textVariants> {\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Text: React.FC<TextProps> = ({\r\n children,\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n ...props\r\n}) => {\r\n return (\r\n <p\r\n className={cn(\r\n textVariants({\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n })\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </p>\r\n );\r\n};\r\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst buttonVariants = cva(\n \"sg-inline-flex sg-items-center sg-justify-center sg-gap-2 sg-whitespace-nowrap sg-rounded-md sg-text-sm sg-font-medium sg-transition-colors focus-visible:sg-outline-none focus-visible:ring-offset-2 focus-visible:sg-ring-2 focus-visible:sg-ring-ring disabled:sg-pointer-events-none disabled:sg-opacity-50 [&_svg]:sg-pointer-events-none [&_svg]:sg-size-4 [&_svg]:sg-shrink-0\",\n {\n variants: {\n variant: {\n primary:\n \"sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/90\",\n secondary:\n \"sg-bg-purple sg-text-purple-foreground sg-shadow-sm hover:sg-bg-purple/90\",\n destructive:\n \"sg-bg-red sg-text-red-foreground sg-shadow-sm hover:sg-bg-red/90\",\n outline:\n \"sg-border sg-border-orange sg-bg-white sg-shadow-sm hover:sg-bg-gray/20\",\n ghost: \"hover:sg-bg-accent hover:sg-text-accent-foreground\",\n link: \"sg-text-primary sg-underline-offset-4 hover:sg-underline\",\n },\n size: {\n default: \"sg-h-9 sg-px-4 sg-py-2\",\n sm: \"sg-h-8 sg-rounded-md sg-px-3 sg-text-xs\",\n lg: \"sg-h-10 sg-rounded-md sg-px-8\",\n icon: \"sg-h-9 sg-w-9\",\n },\n },\n defaultVariants: {\n variant: \"primary\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n extends OmitClassProperty<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"className\"\n >,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n className?: TailwindMarginClass;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst badgeVariants = cva(\n \"sg-inline-flex sg-items-center sg-rounded-md sg-border sg-px-2.5 sg-py-0.5 sg-text-xs sg-font-semibold sg-transition-colors focus:sg-outline-none focus:sg-ring-2 focus:sg-ring-ring focus:sg-ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"sg-border-transparent sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/80\",\n purple:\n \"sg-border-transparent sg-bg-purple sg-text-purple-foreground sg-shadow hover:sg-bg-purple/80\",\n green:\n \"sg-border-transparent sg-bg-green sg-text-green-foreground sg-shadow hover:sg-bg-green/80\",\n outline: \"sg-text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\n VariantProps<typeof badgeVariants> {\n className?: TailwindMarginClass;\n}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { TailwindMarginClass } from \"../../../lib/types\";\nimport { PropsWithChildren } from \"react\";\n\nconst layoutVariants = cva(\"sg-grid sg-gap-4 \", {\n variants: {\n variant: {\n \"100\": \"sg-grid-cols-1\",\n \"66-33\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n \"50-50\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n \"33-33-33\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n \"25-25-25-25\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n },\n fill: {\n full: \"sg-w-screen\",\n col: \"sg-max-w-[960px]\",\n },\n },\n defaultVariants: {\n variant: \"100\",\n fill: \"col\",\n },\n});\n\nexport interface LayoutProps extends VariantProps<typeof layoutVariants> {\n fullWidth?: boolean;\n className?: TailwindMarginClass;\n}\n\nfunction Layout({\n children,\n className,\n variant = \"100\",\n}: PropsWithChildren<LayoutProps>) {\n const allowedInLayout = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ): boolean => {\n if (content.type === Layout.Col1) {\n return true;\n } else if (\n content.type === Layout.Col2 &&\n (variant === \"66-33\" || variant === \"50-50\")\n ) {\n return true;\n } else if (\n content.type === Layout.Col3 &&\n (variant === \"33-33-33\" || variant === \"25-25-25-25\")\n ) {\n return true;\n } else if (content.type === Layout.Col4 && variant === \"25-25-25-25\") {\n return true;\n }\n\n console.error(\"Content not allowed in column for layout\", content.type);\n return false;\n };\n\n const renderColumn = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ) => {\n if (!allowedInLayout(content)) {\n return;\n }\n return <div>{content}</div>;\n };\n\n return (\n <div className=\"sg-mx-auto sg-max-w-[960px]\">\n <div className={cn(layoutVariants({ variant }), className)}>\n {React.Children.map(children, (child) =>\n React.isValidElement(child) ? renderColumn(child) : <></>\n )}\n </div>\n </div>\n );\n}\n\ntype colProp = {\n children?: React.ReactNode;\n};\n\nfunction Col({ children }: colProp) {\n return <>{children}</>;\n}\n\nLayout.Col1 = Col;\nLayout.Col2 = Col;\nLayout.Col3 = Col;\nLayout.Col4 = Col;\n\nexport { Layout, layoutVariants };\n"],"mappings":"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","names":["import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","React","import_class_variance_authority","import_jsx_runtime"]}
|
|
1
|
+
{"version":3,"sources":["../lib/main.ts","../lib/components/ui/heading/heading.tsx","../lib/utils.ts","../lib/components/ui/text/text.tsx","../lib/components/ui/button/button.tsx","../lib/components/ui/badge/badge.tsx","../lib/components/ui/layout/layout.tsx"],"sourcesContent":["import \"./tailwind.css\";\n\nexport * from \"./components\";\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst headingVariants = cva(\"\", {\r\n variants: {\r\n variant: {\r\n h1: \"sg-text-4xl sg-font-extrabold sg-tracking-tight lg:sg-text-5xl\",\r\n h2: \"sg-text-3xl sg-font-semibold sg-tracking-tight sg-transition-colors first:sg-mt-0\",\r\n h3: \"sg-text-2xl sg-font-semibold sg-tracking-tight\",\r\n h4: \"sg-text-xl sg-font-semibold sg-tracking-tight\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"h2\",\r\n foreground: \"default\",\r\n },\r\n});\r\n\r\nexport interface HeadingProps\r\n extends OmitClassProperty<\r\n React.HTMLAttributes<HTMLHeadingElement>,\r\n \"className\"\r\n >,\r\n VariantProps<typeof headingVariants> {\r\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\";\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Heading: React.FC<HeadingProps> = ({\r\n children,\r\n as,\r\n variant,\r\n foreground,\r\n className,\r\n ...props\r\n}) => {\r\n if (!as && variant) {\r\n as = variant;\r\n } else if (!as) {\r\n as = \"h2\";\r\n }\r\n const Component = as;\r\n\r\n return (\r\n <Component\r\n className={cn(headingVariants({ variant, foreground, className }))}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n","import { clsx, type ClassValue } from \"clsx\";\r\nimport { extendTailwindMerge, twMerge } from \"tailwind-merge\";\r\n\r\nexport function cn(...inputs: ClassValue[]) {\r\n const twMergeWithPrefix = extendTailwindMerge({\r\n prefix: \"sg-\",\r\n });\r\n\r\n return twMergeWithPrefix(twMerge(clsx(inputs)));\r\n}\r\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst textVariants = cva(\"\", {\r\n variants: {\r\n size: {\r\n xs: \"sg-text-xs\",\r\n sm: \"sg-text-sm\",\r\n base: \"sg-text-base\",\r\n lg: \"sg-text-lg\",\r\n xl: \"sg-text-xl\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n secondary: \"sg-text-secondary-foreground\",\r\n destructive: \"sg-text-destructive\",\r\n accent: \"sg-text-accent-foreground\",\r\n },\r\n weight: {\r\n normal: \"sg-font-normal\",\r\n medium: \"sg-font-medium\",\r\n semibold: \"sg-font-semibold\",\r\n bold: \"sg-font-bold\",\r\n },\r\n },\r\n defaultVariants: {\r\n size: \"base\",\r\n foreground: \"default\",\r\n weight: \"normal\",\r\n },\r\n});\r\n\r\nexport interface TextProps\r\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\r\n VariantProps<typeof textVariants> {\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Text: React.FC<TextProps> = ({\r\n children,\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n ...props\r\n}) => {\r\n return (\r\n <p\r\n className={cn(\r\n textVariants({\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n })\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </p>\r\n );\r\n};\r\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst buttonVariants = cva(\n \"sg-inline-flex sg-items-center sg-justify-center sg-gap-2 sg-whitespace-nowrap sg-rounded-md sg-text-sm sg-font-medium sg-transition-colors focus-visible:sg-outline-none focus-visible:ring-offset-2 focus-visible:sg-ring-2 focus-visible:sg-ring-ring disabled:sg-pointer-events-none disabled:sg-opacity-50 [&_svg]:sg-pointer-events-none [&_svg]:sg-size-4 [&_svg]:sg-shrink-0\",\n {\n variants: {\n variant: {\n primary:\n \"sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/90\",\n secondary:\n \"sg-bg-purple sg-text-purple-foreground sg-shadow-sm hover:sg-bg-purple/90\",\n destructive:\n \"sg-bg-red sg-text-red-foreground sg-shadow-sm hover:sg-bg-red/90\",\n outline:\n \"sg-border sg-border-orange sg-bg-white sg-shadow-sm hover:sg-bg-gray/20\",\n ghost: \"hover:sg-bg-accent hover:sg-text-accent-foreground\",\n link: \"sg-text-primary sg-underline-offset-4 hover:sg-underline\",\n },\n size: {\n default: \"sg-h-9 sg-px-4 sg-py-2\",\n sm: \"sg-h-8 sg-rounded-md sg-px-3 sg-text-xs\",\n lg: \"sg-h-10 sg-rounded-md sg-px-8\",\n icon: \"sg-h-9 sg-w-9\",\n },\n },\n defaultVariants: {\n variant: \"primary\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n extends OmitClassProperty<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"className\"\n >,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n className?: TailwindMarginClass;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst badgeVariants = cva(\n \"sg-inline-flex sg-items-center sg-rounded-md sg-border sg-px-2.5 sg-py-0.5 sg-text-xs sg-font-semibold sg-transition-colors focus:sg-outline-none focus:sg-ring-2 focus:sg-ring-ring focus:sg-ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"sg-border-transparent sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/80\",\n purple:\n \"sg-border-transparent sg-bg-purple sg-text-purple-foreground sg-shadow hover:sg-bg-purple/80\",\n green:\n \"sg-border-transparent sg-bg-green sg-text-green-foreground sg-shadow hover:sg-bg-green/80\",\n outline: \"sg-text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\n VariantProps<typeof badgeVariants> {\n className?: TailwindMarginClass;\n}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { PropsWithChildren } from \"react\";\n\nconst bgColor = {\n transparent: \"sg-bg-transparent\",\n white: \"sg-bg-white\",\n black: \"sg-bg-black\",\n orange: \"sg-bg-orange\",\n purple: \"sg-bg-purple\",\n};\n\nconst layoutVariants = cva(\"sg-grid sg-grid-cols-1 sg-gap-4\", {\n variants: {\n content: {\n full: \"sg-w-full sg-px-4\",\n col: \"sg-mx-auto sg-max-w-[768px] sg-px-4 md:sg-px-0\",\n },\n cols: {\n \"100\": \"\",\n \"66-33\": \"md:sg-grid-cols-2\",\n \"50-50\": \"md:sg-grid-cols-2\",\n \"33-33-33\": \"md:sg-grid-cols-3\",\n \"25-25-25-25\": \"md:sg-grid-cols-4\",\n },\n bgcolor: bgColor,\n },\n defaultVariants: {\n content: \"col\",\n cols: \"100\",\n },\n});\n\nexport interface LayoutProps extends VariantProps<typeof layoutVariants> {\n className?: React.HTMLAttributes<HTMLDivElement>;\n}\n\nfunction Layout({\n children,\n className,\n content,\n cols,\n bgcolor,\n}: PropsWithChildren<LayoutProps>) {\n const allowedInLayout = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ): boolean => {\n if (content.type === Layout.Col1) {\n return true;\n } else if (\n content.type === Layout.Col2 &&\n (cols === \"66-33\" ||\n cols === \"50-50\" ||\n cols === \"33-33-33\" ||\n cols === \"25-25-25-25\")\n ) {\n return true;\n } else if (\n content.type === Layout.Col3 &&\n (cols === \"33-33-33\" || cols === \"25-25-25-25\")\n ) {\n return true;\n } else if (content.type === Layout.Col4 && cols === \"25-25-25-25\") {\n return true;\n }\n\n console.error(\n \"Content not allowed in column for variant\",\n cols,\n content.type\n );\n return false;\n };\n\n const renderColumn = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ) => {\n if (!allowedInLayout(content)) {\n return;\n }\n return <div>{content}</div>;\n };\n\n return (\n <div className={cn(bgColor[bgcolor ?? \"transparent\"], className)}>\n <div className={cn(layoutVariants({ content, cols }))}>\n {React.Children.map(children, (child) =>\n React.isValidElement(child) ? renderColumn(child) : <></>\n )}\n </div>\n </div>\n );\n}\n\ntype colProp = {\n children?: React.ReactNode;\n};\n\nfunction Col1({ children }: colProp) {\n return children;\n}\nfunction Col2({ children }: colProp) {\n return children;\n}\nfunction Col3({ children }: colProp) {\n return children;\n}\nfunction Col4({ children }: colProp) {\n return children;\n}\n\nLayout.Col1 = Col1;\nLayout.Col2 = Col2;\nLayout.Col3 = Col3;\nLayout.Col4 = Col4;\n\nexport { Layout, layoutVariants };\n"],"mappings":"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","names":["import_class_variance_authority","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","React","import_class_variance_authority","import_jsx_runtime","content"]}
|
package/dist/main.css
CHANGED
|
@@ -392,11 +392,11 @@ video {
|
|
|
392
392
|
.sg-w-9 {
|
|
393
393
|
width: 2.25rem;
|
|
394
394
|
}
|
|
395
|
-
.sg-w-
|
|
396
|
-
width:
|
|
395
|
+
.sg-w-full {
|
|
396
|
+
width: 100%;
|
|
397
397
|
}
|
|
398
|
-
.sg-max-w-\[
|
|
399
|
-
max-width:
|
|
398
|
+
.sg-max-w-\[768px\] {
|
|
399
|
+
max-width: 768px;
|
|
400
400
|
}
|
|
401
401
|
.sg-grid-cols-1 {
|
|
402
402
|
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
@@ -443,15 +443,12 @@ video {
|
|
|
443
443
|
.sg-bg-red {
|
|
444
444
|
background-color: hsl(var(--sg-red));
|
|
445
445
|
}
|
|
446
|
+
.sg-bg-transparent {
|
|
447
|
+
background-color: transparent;
|
|
448
|
+
}
|
|
446
449
|
.sg-bg-white {
|
|
447
450
|
background-color: hsl(var(--sg-white));
|
|
448
451
|
}
|
|
449
|
-
.sg-p-3 {
|
|
450
|
-
padding: 0.75rem;
|
|
451
|
-
}
|
|
452
|
-
.sg-p-4 {
|
|
453
|
-
padding: 1rem;
|
|
454
|
-
}
|
|
455
452
|
.sg-px-2\.5 {
|
|
456
453
|
padding-left: 0.625rem;
|
|
457
454
|
padding-right: 0.625rem;
|
|
@@ -553,9 +550,6 @@ video {
|
|
|
553
550
|
.sg-text-secondary-foreground {
|
|
554
551
|
color: hsl(var(--secondary-foreground));
|
|
555
552
|
}
|
|
556
|
-
.sg-text-white {
|
|
557
|
-
color: hsl(var(--sg-white));
|
|
558
|
-
}
|
|
559
553
|
.sg-underline-offset-4 {
|
|
560
554
|
text-underline-offset: 4px;
|
|
561
555
|
}
|
|
@@ -674,6 +668,16 @@ video {
|
|
|
674
668
|
.md\:sg-grid-cols-2 {
|
|
675
669
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
676
670
|
}
|
|
671
|
+
.md\:sg-grid-cols-3 {
|
|
672
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
673
|
+
}
|
|
674
|
+
.md\:sg-grid-cols-4 {
|
|
675
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
676
|
+
}
|
|
677
|
+
.md\:sg-px-0 {
|
|
678
|
+
padding-left: 0px;
|
|
679
|
+
padding-right: 0px;
|
|
680
|
+
}
|
|
677
681
|
}
|
|
678
682
|
@media (min-width: 1024px) {
|
|
679
683
|
.lg\:sg-text-5xl {
|
package/dist/main.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/tailwind.css"],"sourcesContent":["*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}/*\n! tailwindcss v3.4.16 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: currentColor; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n7. Disable tap highlights on iOS\n*/\n\nhtml,\n:host {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n -webkit-tap-highlight-color: transparent; /* 7 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font-family by default.\n2. Use the user's configured `mono` font-feature-settings by default.\n3. Use the user's configured `mono` font-variation-settings by default.\n4. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-feature-settings: normal; /* 2 */\n font-variation-settings: normal; /* 3 */\n font-size: 1em; /* 4 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n letter-spacing: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\ninput:where([type='button']),\ninput:where([type='reset']),\ninput:where([type='submit']) {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none;\n}\n :root {\n --sg-black: 0 0% 15%;\n --sg-white: 30 20% 98%;\n --sg-gray: 30 10% 70%;\n --sg-orange: 33 75% 54%;\n --sg-orange-foreground: 0 0% 20%;\n --sg-purple: 250 45% 58%;\n --sg-purple-foreground: 250 50% 98%;\n --sg-red: 0 65% 51%;\n --sg-red-foreground: 0 0% 98%;\n --sg-green: 120 45% 45%;\n --sg-green-foreground: 120 50% 98%;\n\n --sg-primary: var(--sg-orange);\n --sg-background: var(--sg-white);\n --sg-foreground: var(--sg-black);\n\n --sg-border: var(--sg-primary);\n --sg-ring: 210 65% 55%;\n --sg-radius: 0.5rem;\n\n /* --background: 0 0% 100%;\n --foreground: 222.2 47.4% 11.2%; */\n --muted: 210 40% 96.1%;\n --muted-foreground: 215.4 16.3% 46.9%;\n --popover: 0 0% 100%;\n --popover-foreground: 222.2 47.4% 11.2%;\n --input: 214.3 31.8% 91.4%;\n --card: 0 0% 100%;\n --card-foreground: 222.2 47.4% 11.2%;\n --primary: 222.2 47.4% 11.2%;\n --primary-foreground: 210 40% 98%;\n --secondary: 210 40% 96.1%;\n --secondary-foreground: 222.2 47.4% 11.2%;\n --accent: 210 40% 96.1%;\n --accent-foreground: 222.2 47.4% 11.2%;\n --destructive: 0 100% 50%;\n --destructive-foreground: 210 40% 98%;\n /* --ring: 215 20.2% 65.1%; */\n\n --test1: 1px;\n }\n\n :root body {\n background-color: hsl(var(--sg-background));\n }\n.sg-mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.sg-inline-flex {\n display: inline-flex;\n}\n.sg-grid {\n display: grid;\n}\n.sg-h-10 {\n height: 2.5rem;\n}\n.sg-h-8 {\n height: 2rem;\n}\n.sg-h-9 {\n height: 2.25rem;\n}\n.sg-w-9 {\n width: 2.25rem;\n}\n.sg-w-screen {\n width: 100vw;\n}\n.sg-max-w-\\[960px\\] {\n max-width: 960px;\n}\n.sg-grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n.sg-items-center {\n align-items: center;\n}\n.sg-justify-center {\n justify-content: center;\n}\n.sg-gap-2 {\n gap: 0.5rem;\n}\n.sg-gap-4 {\n gap: 1rem;\n}\n.sg-whitespace-nowrap {\n white-space: nowrap;\n}\n.sg-rounded-md {\n border-radius: 0.375rem;\n}\n.sg-border {\n border-width: 1px;\n}\n.sg-border-orange {\n border-color: hsl(var(--sg-orange));\n}\n.sg-border-transparent {\n border-color: transparent;\n}\n.sg-bg-black {\n background-color: hsl(var(--sg-black));\n}\n.sg-bg-green {\n background-color: hsl(var(--sg-green));\n}\n.sg-bg-orange {\n background-color: hsl(var(--sg-orange));\n}\n.sg-bg-purple {\n background-color: hsl(var(--sg-purple));\n}\n.sg-bg-red {\n background-color: hsl(var(--sg-red));\n}\n.sg-bg-white {\n background-color: hsl(var(--sg-white));\n}\n.sg-p-3 {\n padding: 0.75rem;\n}\n.sg-p-4 {\n padding: 1rem;\n}\n.sg-px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.sg-px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.sg-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.sg-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n.sg-py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.sg-py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.sg-text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.sg-text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.sg-text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n.sg-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.sg-text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.sg-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.sg-text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.sg-text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.sg-font-bold {\n font-weight: 700;\n}\n.sg-font-extrabold {\n font-weight: 800;\n}\n.sg-font-medium {\n font-weight: 500;\n}\n.sg-font-normal {\n font-weight: 400;\n}\n.sg-font-semibold {\n font-weight: 600;\n}\n.sg-tracking-tight {\n letter-spacing: -0.025em;\n}\n.sg-text-accent-foreground {\n color: hsl(var(--accent-foreground));\n}\n.sg-text-destructive {\n color: hsl(var(--destructive));\n}\n.sg-text-foreground {\n color: hsl(var(--sg-foreground));\n}\n.sg-text-green-foreground {\n color: hsl(var(--sg-green-foreground));\n}\n.sg-text-orange-foreground {\n color: hsl(var(--sg-orange-foreground));\n}\n.sg-text-primary {\n color: hsl(var(--primary));\n}\n.sg-text-purple-foreground {\n color: hsl(var(--sg-purple-foreground));\n}\n.sg-text-red-foreground {\n color: hsl(var(--sg-red-foreground));\n}\n.sg-text-secondary-foreground {\n color: hsl(var(--secondary-foreground));\n}\n.sg-text-white {\n color: hsl(var(--sg-white));\n}\n.sg-underline-offset-4 {\n text-underline-offset: 4px;\n}\n.sg-shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.sg-shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.sg-transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n@keyframes enter {\n\n from {\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n@keyframes exit {\n\n to {\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n/* @layer base {\n * {\n @apply border-border;\n }\n body {\n @apply font-sans antialiased bg-background text-foreground;\n }\n} */\n.first\\:sg-mt-0:first-child {\n margin-top: 0px;\n}\n.hover\\:sg-bg-accent:hover {\n background-color: hsl(var(--accent));\n}\n.hover\\:sg-bg-gray\\/20:hover {\n background-color: hsl(var(--sg-gray) / 0.2);\n}\n.hover\\:sg-bg-green\\/80:hover {\n background-color: hsl(var(--sg-green) / 0.8);\n}\n.hover\\:sg-bg-orange\\/80:hover {\n background-color: hsl(var(--sg-orange) / 0.8);\n}\n.hover\\:sg-bg-orange\\/90:hover {\n background-color: hsl(var(--sg-orange) / 0.9);\n}\n.hover\\:sg-bg-purple\\/80:hover {\n background-color: hsl(var(--sg-purple) / 0.8);\n}\n.hover\\:sg-bg-purple\\/90:hover {\n background-color: hsl(var(--sg-purple) / 0.9);\n}\n.hover\\:sg-bg-red\\/90:hover {\n background-color: hsl(var(--sg-red) / 0.9);\n}\n.hover\\:sg-text-accent-foreground:hover {\n color: hsl(var(--accent-foreground));\n}\n.hover\\:sg-underline:hover {\n text-decoration-line: underline;\n}\n.focus\\:sg-outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:sg-ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:sg-ring-ring:focus {\n --tw-ring-color: hsl(var(--sg-ring));\n}\n.focus\\:sg-ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:sg-outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:sg-ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:sg-ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--sg-ring));\n}\n.disabled\\:sg-pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:sg-opacity-50:disabled {\n opacity: 0.5;\n}\n@media (min-width: 768px) {\n\n .md\\:sg-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n@media (min-width: 1024px) {\n\n .lg\\:sg-text-5xl {\n font-size: 3rem;\n line-height: 1;\n }\n}\n.\\[\\&_svg\\]\\:sg-pointer-events-none svg {\n pointer-events: none;\n}\n.\\[\\&_svg\\]\\:sg-size-4 svg {\n width: 1rem;\n height: 1rem;\n}\n.\\[\\&_svg\\]\\:sg-shrink-0 svg {\n flex-shrink: 0;\n}\n"],"mappings":";AAAA;AAAG;AAAU;AACX,yBAAuB;AACvB,yBAAuB;AACvB,oBAAkB;AAClB,oBAAkB;AAClB,eAAa;AACb,eAAa;AACb,eAAa;AACb,gBAAc;AACd,gBAAc;AACd;AACA;AACA;AACA,+BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAAwB;AACxB,0BAAwB;AACxB,mBAAiB,IAAI,GAAG,IAAI,IAAI,EAAE;AAClC,2BAAyB,EAAE,EAAE;AAC7B,oBAAkB,EAAE,EAAE;AACtB,eAAa,EAAE,EAAE;AACjB,uBAAqB,EAAE,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AAEA;AACE,yBAAuB;AACvB,yBAAuB;AACvB,oBAAkB;AAClB,oBAAkB;AAClB,eAAa;AACb,eAAa;AACb,eAAa;AACb,gBAAc;AACd,gBAAc;AACd;AACA;AACA;AACA,+BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAAwB;AACxB,0BAAwB;AACxB,mBAAiB,IAAI,GAAG,IAAI,IAAI,EAAE;AAClC,2BAAyB,EAAE,EAAE;AAC7B,oBAAkB,EAAE,EAAE;AACtB,eAAa,EAAE,EAAE;AACjB,uBAAqB,EAAE,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AAOA;AACA;AACA;AACE,cAAY;AACZ,gBAAc;AACd,gBAAc;AACd,gBAAc;AAChB;AAEA;AACA;AACE,gBAAc;AAChB;AAYA;AACA;AACE,eAAa;AACb,4BAA0B;AAC1B,iBAAe;AACf,eAAa;AACV,YAAU;AACb;AAAA,IAAa,aAAa;AAAA,IAAE,SAAS;AAAA,IAAE,UAAU;AAAA,IAAE,mBAAmB;AAAA,IAAE,gBAAgB;AAAA,IAAE,iBAAiB;AAAA,IAAE;AAC7G,yBAAuB;AACvB,2B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A,CAAC;AACC,WAAS;AACX;AACA,CAAC;AACC,UAAQ;AACV;AACA,CAAC;AACC,UAAQ;AACV;AACA,CAAC;AACC,UAAQ;AACV;AACA,CAAC;AACC,SAAO;AACT;AACA,CAAC;AACC,SAAO;AACT;AACA,CAAC;AACC,aAAW;AACb;AACA,CAAC;AACC,yBAAuB,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE;AAC7C;AACA,CAAC;AACC,eAAa;AACf;AACA,CAAC;AACC,mBAAiB;AACnB;AACA,CAAC;AACC,OAAK;AACP;AACA,CAAC;AACC,OAAK;AACP;AACA,CAAC;AACC,eAAa;AACf;AACA,CAAC;AACC,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AAChB;AACA,CAAC;AACC,gBAAc,IAAI,IAAI;AACxB;AACA,CAAC;AACC,gBAAc;AAChB;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,WAAS;AACX;AACA,CAAC;AACC,WAAS;AACX;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,eAAa;AACb,kBAAgB;AAClB;AACA,CAAC;AACC,eAAa;AACb,kBAAgB;AAClB;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAA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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../lib/tailwind.css"],"sourcesContent":["*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}/*\n! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: currentColor; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n7. Disable tap highlights on iOS\n*/\n\nhtml,\n:host {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n -webkit-tap-highlight-color: transparent; /* 7 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font-family by default.\n2. Use the user's configured `mono` font-feature-settings by default.\n3. Use the user's configured `mono` font-variation-settings by default.\n4. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-feature-settings: normal; /* 2 */\n font-variation-settings: normal; /* 3 */\n font-size: 1em; /* 4 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n letter-spacing: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\ninput:where([type='button']),\ninput:where([type='reset']),\ninput:where([type='submit']) {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none;\n}\n :root {\n --sg-black: 0 0% 15%;\n --sg-white: 30 20% 98%;\n --sg-gray: 30 10% 70%;\n --sg-orange: 33 75% 54%;\n --sg-orange-foreground: 0 0% 20%;\n --sg-purple: 250 45% 58%;\n --sg-purple-foreground: 250 50% 98%;\n --sg-red: 0 65% 51%;\n --sg-red-foreground: 0 0% 98%;\n --sg-green: 120 45% 45%;\n --sg-green-foreground: 120 50% 98%;\n\n --sg-primary: var(--sg-orange);\n --sg-background: var(--sg-white);\n --sg-foreground: var(--sg-black);\n\n --sg-border: var(--sg-primary);\n --sg-ring: 210 65% 55%;\n --sg-radius: 0.5rem;\n\n /* --background: 0 0% 100%;\n --foreground: 222.2 47.4% 11.2%; */\n --muted: 210 40% 96.1%;\n --muted-foreground: 215.4 16.3% 46.9%;\n --popover: 0 0% 100%;\n --popover-foreground: 222.2 47.4% 11.2%;\n --input: 214.3 31.8% 91.4%;\n --card: 0 0% 100%;\n --card-foreground: 222.2 47.4% 11.2%;\n --primary: 222.2 47.4% 11.2%;\n --primary-foreground: 210 40% 98%;\n --secondary: 210 40% 96.1%;\n --secondary-foreground: 222.2 47.4% 11.2%;\n --accent: 210 40% 96.1%;\n --accent-foreground: 222.2 47.4% 11.2%;\n --destructive: 0 100% 50%;\n --destructive-foreground: 210 40% 98%;\n /* --ring: 215 20.2% 65.1%; */\n\n --test1: 1px;\n }\n\n :root body {\n background-color: hsl(var(--sg-background));\n }\n.sg-mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.sg-inline-flex {\n display: inline-flex;\n}\n.sg-grid {\n display: grid;\n}\n.sg-h-10 {\n height: 2.5rem;\n}\n.sg-h-8 {\n height: 2rem;\n}\n.sg-h-9 {\n height: 2.25rem;\n}\n.sg-w-9 {\n width: 2.25rem;\n}\n.sg-w-full {\n width: 100%;\n}\n.sg-max-w-\\[768px\\] {\n max-width: 768px;\n}\n.sg-grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n.sg-items-center {\n align-items: center;\n}\n.sg-justify-center {\n justify-content: center;\n}\n.sg-gap-2 {\n gap: 0.5rem;\n}\n.sg-gap-4 {\n gap: 1rem;\n}\n.sg-whitespace-nowrap {\n white-space: nowrap;\n}\n.sg-rounded-md {\n border-radius: 0.375rem;\n}\n.sg-border {\n border-width: 1px;\n}\n.sg-border-orange {\n border-color: hsl(var(--sg-orange));\n}\n.sg-border-transparent {\n border-color: transparent;\n}\n.sg-bg-black {\n background-color: hsl(var(--sg-black));\n}\n.sg-bg-green {\n background-color: hsl(var(--sg-green));\n}\n.sg-bg-orange {\n background-color: hsl(var(--sg-orange));\n}\n.sg-bg-purple {\n background-color: hsl(var(--sg-purple));\n}\n.sg-bg-red {\n background-color: hsl(var(--sg-red));\n}\n.sg-bg-transparent {\n background-color: transparent;\n}\n.sg-bg-white {\n background-color: hsl(var(--sg-white));\n}\n.sg-px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.sg-px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.sg-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.sg-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n.sg-py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.sg-py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.sg-text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.sg-text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.sg-text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n.sg-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.sg-text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.sg-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.sg-text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.sg-text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.sg-font-bold {\n font-weight: 700;\n}\n.sg-font-extrabold {\n font-weight: 800;\n}\n.sg-font-medium {\n font-weight: 500;\n}\n.sg-font-normal {\n font-weight: 400;\n}\n.sg-font-semibold {\n font-weight: 600;\n}\n.sg-tracking-tight {\n letter-spacing: -0.025em;\n}\n.sg-text-accent-foreground {\n color: hsl(var(--accent-foreground));\n}\n.sg-text-destructive {\n color: hsl(var(--destructive));\n}\n.sg-text-foreground {\n color: hsl(var(--sg-foreground));\n}\n.sg-text-green-foreground {\n color: hsl(var(--sg-green-foreground));\n}\n.sg-text-orange-foreground {\n color: hsl(var(--sg-orange-foreground));\n}\n.sg-text-primary {\n color: hsl(var(--primary));\n}\n.sg-text-purple-foreground {\n color: hsl(var(--sg-purple-foreground));\n}\n.sg-text-red-foreground {\n color: hsl(var(--sg-red-foreground));\n}\n.sg-text-secondary-foreground {\n color: hsl(var(--secondary-foreground));\n}\n.sg-underline-offset-4 {\n text-underline-offset: 4px;\n}\n.sg-shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.sg-shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.sg-transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n@keyframes enter {\n\n from {\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n@keyframes exit {\n\n to {\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n/* @layer base {\n * {\n @apply border-border;\n }\n body {\n @apply font-sans antialiased bg-background text-foreground;\n }\n} */\n.first\\:sg-mt-0:first-child {\n margin-top: 0px;\n}\n.hover\\:sg-bg-accent:hover {\n background-color: hsl(var(--accent));\n}\n.hover\\:sg-bg-gray\\/20:hover {\n background-color: hsl(var(--sg-gray) / 0.2);\n}\n.hover\\:sg-bg-green\\/80:hover {\n background-color: hsl(var(--sg-green) / 0.8);\n}\n.hover\\:sg-bg-orange\\/80:hover {\n background-color: hsl(var(--sg-orange) / 0.8);\n}\n.hover\\:sg-bg-orange\\/90:hover {\n background-color: hsl(var(--sg-orange) / 0.9);\n}\n.hover\\:sg-bg-purple\\/80:hover {\n background-color: hsl(var(--sg-purple) / 0.8);\n}\n.hover\\:sg-bg-purple\\/90:hover {\n background-color: hsl(var(--sg-purple) / 0.9);\n}\n.hover\\:sg-bg-red\\/90:hover {\n background-color: hsl(var(--sg-red) / 0.9);\n}\n.hover\\:sg-text-accent-foreground:hover {\n color: hsl(var(--accent-foreground));\n}\n.hover\\:sg-underline:hover {\n text-decoration-line: underline;\n}\n.focus\\:sg-outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:sg-ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:sg-ring-ring:focus {\n --tw-ring-color: hsl(var(--sg-ring));\n}\n.focus\\:sg-ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:sg-outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:sg-ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:sg-ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--sg-ring));\n}\n.disabled\\:sg-pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:sg-opacity-50:disabled {\n opacity: 0.5;\n}\n@media (min-width: 768px) {\n\n .md\\:sg-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n\n .md\\:sg-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n\n .md\\:sg-grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n\n .md\\:sg-px-0 {\n padding-left: 0px;\n padding-right: 0px;\n }\n}\n@media (min-width: 1024px) {\n\n .lg\\:sg-text-5xl {\n font-size: 3rem;\n line-height: 1;\n }\n}\n.\\[\\&_svg\\]\\:sg-pointer-events-none svg {\n pointer-events: none;\n}\n.\\[\\&_svg\\]\\:sg-size-4 svg {\n width: 1rem;\n height: 1rem;\n}\n.\\[\\&_svg\\]\\:sg-shrink-0 svg {\n flex-shrink: 0;\n}\n"],"mappings":";AAAA;AAAG;AAAU;AACX,yBAAuB;AACvB,yBAAuB;AACvB,oBAAkB;AAClB,oBAAkB;AAClB,eAAa;AACb,eAAa;AACb,eAAa;AACb,gBAAc;AACd,gBAAc;AACd;AACA;AACA;AACA,+BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAAwB;AACxB,0BAAwB;AACxB,mBAAiB,IAAI,GAAG,IAAI,IAAI,EAAE;AAClC,2BAAyB,EAAE,EAAE;AAC7B,oBAAkB,EAAE,EAAE;AACtB,eAAa,EAAE,EAAE;AACjB,uBAAqB,EAAE,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AAEA;AACE,yBAAuB;AACvB,yBAAuB;AACvB,oBAAkB;AAClB,oBAAkB;AAClB,eAAa;AACb,eAAa;AACb,eAAa;AACb,gBAAc;AACd,gBAAc;AACd;AACA;AACA;AACA,+BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAAwB;AACxB,0BAAwB;AACxB,mBAAiB,IAAI,GAAG,IAAI,IAAI,EAAE;AAClC,2BAAyB,EAAE,EAAE;AAC7B,oBAAkB,EAAE,EAAE;AACtB,eAAa,EAAE,EAAE;AACjB,uBAAqB,EAAE,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AAOA;AACA;AACA;AACE,cAAY;AACZ,gBAAc;AACd,gBAAc;AACd,gBAAc;AAChB;AAEA;AACA;AACE,gBAAc;AAChB;AAYA;AACA;AACE,eAAa;AACb,4BAA0B;AAC1B,iBAAe;AACf,eAAa;AACV,YAAU;AACb;AAAA,IAAa,aAAa;AAAA,IAAE,SAAS;AAAA,IAAE,UAAU;AAAA,IAAE,mBAAmB;AAAA,IAAE,gBAAgB;AAAA,IAAE,iBAAiB;AAAA,IAAE;AAC7G,yBAAuB;AACvB,2B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A,CAAC;AACC,WAAS;AACX;AACA,CAAC;AACC,UAAQ;AACV;AACA,CAAC;AACC,UAAQ;AACV;AACA,CAAC;AACC,UAAQ;AACV;AACA,CAAC;AACC,SAAO;AACT;AACA,CAAC;AACC,SAAO;AACT;AACA,CAAC;AACC,aAAW;AACb;AACA,CAAC;AACC,yBAAuB,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE;AAC7C;AACA,CAAC;AACC,eAAa;AACf;AACA,CAAC;AACC,mBAAiB;AACnB;AACA,CAAC;AACC,OAAK;AACP;AACA,CAAC;AACC,OAAK;AACP;AACA,CAAC;AACC,eAAa;AACf;AACA,CAAC;AACC,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AAChB;AACA,CAAC;AACC,gBAAc,IAAI,IAAI;AACxB;AACA,CAAC;AACC,gBAAc;AAChB;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,oBAAkB;AACpB;AACA,CAAC;AACC,oBAAkB,IAAI,IAAI;AAC5B;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,gBAAc;AACd,iBAAe;AACjB;AACA,CAAC;AACC,eAAa;AACb,kBAAgB;AAClB;AACA,CAAC;AACC,eAAa;AACb,kBAAgB;AAClB;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;AACf;AACA,CAAC;AACC,aAAW;AACX,eAAa;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","names":[]}
|
package/dist/main.d.cts
CHANGED
|
@@ -1,18 +1,13 @@
|
|
|
1
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
1
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
2
|
import * as React from 'react';
|
|
4
3
|
import React__default, { PropsWithChildren } from 'react';
|
|
5
4
|
import { VariantProps } from 'class-variance-authority';
|
|
6
|
-
|
|
7
|
-
type props = {
|
|
8
|
-
text?: string;
|
|
9
|
-
};
|
|
10
|
-
declare const Demo: ({ text }: props) => react_jsx_runtime.JSX.Element;
|
|
5
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
11
6
|
|
|
12
7
|
type ValidBreakpoint = "" | "sm:" | "md:" | "lg:" | "xl:" | "2xl:";
|
|
13
8
|
type ValidMarginDirection = "m-" | "mx-" | "my-" | "mt-" | "mr-" | "mb-" | "ml-";
|
|
14
|
-
type
|
|
15
|
-
type TailwindMarginClass = "" | `${ValidBreakpoint}${ValidMarginDirection}${
|
|
9
|
+
type ValidSize = "0" | "0.5" | "1" | "1.5" | "2" | "2.5" | "3" | "3.5" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11" | "12" | "14" | "16" | "20" | "24" | "28" | "32" | "36" | "40" | "44" | "48" | "52" | "56" | "60" | "64" | "72" | "80" | "96" | "px" | "auto";
|
|
10
|
+
type TailwindMarginClass = "" | `${ValidBreakpoint}${ValidMarginDirection}${ValidSize}`;
|
|
16
11
|
type OmitClassProperty<T1, T2 extends string> = Omit<T1, T2>;
|
|
17
12
|
|
|
18
13
|
declare const headingVariants: (props?: ({
|
|
@@ -28,7 +23,7 @@ declare const Heading: React__default.FC<HeadingProps>;
|
|
|
28
23
|
declare const textVariants: (props?: ({
|
|
29
24
|
size?: "xs" | "sm" | "base" | "lg" | "xl" | null | undefined;
|
|
30
25
|
foreground?: "accent" | "default" | "muted" | "primary" | "secondary" | "destructive" | null | undefined;
|
|
31
|
-
weight?: "
|
|
26
|
+
weight?: "normal" | "medium" | "semibold" | "bold" | null | undefined;
|
|
32
27
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
33
28
|
interface TextProps extends OmitClassProperty<React__default.HTMLAttributes<HTMLDivElement>, "className">, VariantProps<typeof textVariants> {
|
|
34
29
|
className?: TailwindMarginClass;
|
|
@@ -36,7 +31,7 @@ interface TextProps extends OmitClassProperty<React__default.HTMLAttributes<HTML
|
|
|
36
31
|
declare const Text: React__default.FC<TextProps>;
|
|
37
32
|
|
|
38
33
|
declare const buttonVariants: (props?: ({
|
|
39
|
-
variant?: "
|
|
34
|
+
variant?: "primary" | "link" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
|
|
40
35
|
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
41
36
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
42
37
|
interface ButtonProps extends OmitClassProperty<React.ButtonHTMLAttributes<HTMLButtonElement>, "className">, VariantProps<typeof buttonVariants> {
|
|
@@ -54,23 +49,22 @@ interface BadgeProps extends OmitClassProperty<React.HTMLAttributes<HTMLDivEleme
|
|
|
54
49
|
declare function Badge({ className, variant, ...props }: BadgeProps): react_jsx_runtime.JSX.Element;
|
|
55
50
|
|
|
56
51
|
declare const layoutVariants: (props?: ({
|
|
57
|
-
|
|
58
|
-
|
|
52
|
+
content?: "full" | "col" | null | undefined;
|
|
53
|
+
cols?: "100" | "66-33" | "50-50" | "33-33-33" | "25-25-25-25" | null | undefined;
|
|
54
|
+
bgcolor?: "purple" | "transparent" | "white" | "black" | "orange" | null | undefined;
|
|
59
55
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
60
56
|
interface LayoutProps extends VariantProps<typeof layoutVariants> {
|
|
61
|
-
|
|
62
|
-
className?: TailwindMarginClass;
|
|
57
|
+
className?: React.HTMLAttributes<HTMLDivElement>;
|
|
63
58
|
}
|
|
64
|
-
declare function Layout({ children, className,
|
|
59
|
+
declare function Layout({ children, className, content, cols, bgcolor, }: PropsWithChildren<LayoutProps>): react_jsx_runtime.JSX.Element;
|
|
65
60
|
declare namespace Layout {
|
|
66
|
-
var Col1:
|
|
67
|
-
var Col2:
|
|
68
|
-
var Col3:
|
|
69
|
-
var Col4:
|
|
61
|
+
var Col1: ({ children }: colProp) => React.ReactNode;
|
|
62
|
+
var Col2: ({ children }: colProp) => React.ReactNode;
|
|
63
|
+
var Col3: ({ children }: colProp) => React.ReactNode;
|
|
64
|
+
var Col4: ({ children }: colProp) => React.ReactNode;
|
|
70
65
|
}
|
|
71
66
|
type colProp = {
|
|
72
67
|
children?: React.ReactNode;
|
|
73
68
|
};
|
|
74
|
-
declare function Col({ children }: colProp): react_jsx_runtime.JSX.Element;
|
|
75
69
|
|
|
76
|
-
export { Badge, Button,
|
|
70
|
+
export { Badge, Button, Heading, Layout, Text };
|
package/dist/main.d.ts
CHANGED
|
@@ -1,18 +1,13 @@
|
|
|
1
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
1
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
2
|
import * as React from 'react';
|
|
4
3
|
import React__default, { PropsWithChildren } from 'react';
|
|
5
4
|
import { VariantProps } from 'class-variance-authority';
|
|
6
|
-
|
|
7
|
-
type props = {
|
|
8
|
-
text?: string;
|
|
9
|
-
};
|
|
10
|
-
declare const Demo: ({ text }: props) => react_jsx_runtime.JSX.Element;
|
|
5
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
11
6
|
|
|
12
7
|
type ValidBreakpoint = "" | "sm:" | "md:" | "lg:" | "xl:" | "2xl:";
|
|
13
8
|
type ValidMarginDirection = "m-" | "mx-" | "my-" | "mt-" | "mr-" | "mb-" | "ml-";
|
|
14
|
-
type
|
|
15
|
-
type TailwindMarginClass = "" | `${ValidBreakpoint}${ValidMarginDirection}${
|
|
9
|
+
type ValidSize = "0" | "0.5" | "1" | "1.5" | "2" | "2.5" | "3" | "3.5" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11" | "12" | "14" | "16" | "20" | "24" | "28" | "32" | "36" | "40" | "44" | "48" | "52" | "56" | "60" | "64" | "72" | "80" | "96" | "px" | "auto";
|
|
10
|
+
type TailwindMarginClass = "" | `${ValidBreakpoint}${ValidMarginDirection}${ValidSize}`;
|
|
16
11
|
type OmitClassProperty<T1, T2 extends string> = Omit<T1, T2>;
|
|
17
12
|
|
|
18
13
|
declare const headingVariants: (props?: ({
|
|
@@ -28,7 +23,7 @@ declare const Heading: React__default.FC<HeadingProps>;
|
|
|
28
23
|
declare const textVariants: (props?: ({
|
|
29
24
|
size?: "xs" | "sm" | "base" | "lg" | "xl" | null | undefined;
|
|
30
25
|
foreground?: "accent" | "default" | "muted" | "primary" | "secondary" | "destructive" | null | undefined;
|
|
31
|
-
weight?: "
|
|
26
|
+
weight?: "normal" | "medium" | "semibold" | "bold" | null | undefined;
|
|
32
27
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
33
28
|
interface TextProps extends OmitClassProperty<React__default.HTMLAttributes<HTMLDivElement>, "className">, VariantProps<typeof textVariants> {
|
|
34
29
|
className?: TailwindMarginClass;
|
|
@@ -36,7 +31,7 @@ interface TextProps extends OmitClassProperty<React__default.HTMLAttributes<HTML
|
|
|
36
31
|
declare const Text: React__default.FC<TextProps>;
|
|
37
32
|
|
|
38
33
|
declare const buttonVariants: (props?: ({
|
|
39
|
-
variant?: "
|
|
34
|
+
variant?: "primary" | "link" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
|
|
40
35
|
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
41
36
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
42
37
|
interface ButtonProps extends OmitClassProperty<React.ButtonHTMLAttributes<HTMLButtonElement>, "className">, VariantProps<typeof buttonVariants> {
|
|
@@ -54,23 +49,22 @@ interface BadgeProps extends OmitClassProperty<React.HTMLAttributes<HTMLDivEleme
|
|
|
54
49
|
declare function Badge({ className, variant, ...props }: BadgeProps): react_jsx_runtime.JSX.Element;
|
|
55
50
|
|
|
56
51
|
declare const layoutVariants: (props?: ({
|
|
57
|
-
|
|
58
|
-
|
|
52
|
+
content?: "full" | "col" | null | undefined;
|
|
53
|
+
cols?: "100" | "66-33" | "50-50" | "33-33-33" | "25-25-25-25" | null | undefined;
|
|
54
|
+
bgcolor?: "purple" | "transparent" | "white" | "black" | "orange" | null | undefined;
|
|
59
55
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
60
56
|
interface LayoutProps extends VariantProps<typeof layoutVariants> {
|
|
61
|
-
|
|
62
|
-
className?: TailwindMarginClass;
|
|
57
|
+
className?: React.HTMLAttributes<HTMLDivElement>;
|
|
63
58
|
}
|
|
64
|
-
declare function Layout({ children, className,
|
|
59
|
+
declare function Layout({ children, className, content, cols, bgcolor, }: PropsWithChildren<LayoutProps>): react_jsx_runtime.JSX.Element;
|
|
65
60
|
declare namespace Layout {
|
|
66
|
-
var Col1:
|
|
67
|
-
var Col2:
|
|
68
|
-
var Col3:
|
|
69
|
-
var Col4:
|
|
61
|
+
var Col1: ({ children }: colProp) => React.ReactNode;
|
|
62
|
+
var Col2: ({ children }: colProp) => React.ReactNode;
|
|
63
|
+
var Col3: ({ children }: colProp) => React.ReactNode;
|
|
64
|
+
var Col4: ({ children }: colProp) => React.ReactNode;
|
|
70
65
|
}
|
|
71
66
|
type colProp = {
|
|
72
67
|
children?: React.ReactNode;
|
|
73
68
|
};
|
|
74
|
-
declare function Col({ children }: colProp): react_jsx_runtime.JSX.Element;
|
|
75
69
|
|
|
76
|
-
export { Badge, Button,
|
|
70
|
+
export { Badge, Button, Heading, Layout, Text };
|
package/dist/main.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// lib/components/ui/heading/heading.tsx
|
|
2
|
+
import { cva } from "class-variance-authority";
|
|
3
|
+
|
|
1
4
|
// lib/utils.ts
|
|
2
5
|
import { clsx } from "clsx";
|
|
3
6
|
import { extendTailwindMerge, twMerge } from "tailwind-merge";
|
|
@@ -8,23 +11,8 @@ function cn(...inputs) {
|
|
|
8
11
|
return twMergeWithPrefix(twMerge(clsx(inputs)));
|
|
9
12
|
}
|
|
10
13
|
|
|
11
|
-
// lib/components/Demo.tsx
|
|
12
|
-
import { jsx } from "react/jsx-runtime";
|
|
13
|
-
var Demo = ({ text }) => {
|
|
14
|
-
return /* @__PURE__ */ jsx(
|
|
15
|
-
"div",
|
|
16
|
-
{
|
|
17
|
-
className: cn(
|
|
18
|
-
"sg-text-orange-500 sg-p-4 sg-p-3 sg-text-white sg-bg-black"
|
|
19
|
-
),
|
|
20
|
-
children: text
|
|
21
|
-
}
|
|
22
|
-
);
|
|
23
|
-
};
|
|
24
|
-
|
|
25
14
|
// lib/components/ui/heading/heading.tsx
|
|
26
|
-
import {
|
|
27
|
-
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
15
|
+
import { jsx } from "react/jsx-runtime";
|
|
28
16
|
var headingVariants = cva("", {
|
|
29
17
|
variants: {
|
|
30
18
|
variant: {
|
|
@@ -46,14 +34,19 @@ var headingVariants = cva("", {
|
|
|
46
34
|
});
|
|
47
35
|
var Heading = ({
|
|
48
36
|
children,
|
|
49
|
-
as
|
|
37
|
+
as,
|
|
50
38
|
variant,
|
|
51
39
|
foreground,
|
|
52
40
|
className,
|
|
53
41
|
...props
|
|
54
42
|
}) => {
|
|
43
|
+
if (!as && variant) {
|
|
44
|
+
as = variant;
|
|
45
|
+
} else if (!as) {
|
|
46
|
+
as = "h2";
|
|
47
|
+
}
|
|
55
48
|
const Component = as;
|
|
56
|
-
return /* @__PURE__ */
|
|
49
|
+
return /* @__PURE__ */ jsx(
|
|
57
50
|
Component,
|
|
58
51
|
{
|
|
59
52
|
className: cn(headingVariants({ variant, foreground, className })),
|
|
@@ -65,7 +58,7 @@ var Heading = ({
|
|
|
65
58
|
|
|
66
59
|
// lib/components/ui/text/text.tsx
|
|
67
60
|
import { cva as cva2 } from "class-variance-authority";
|
|
68
|
-
import { jsx as
|
|
61
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
69
62
|
var textVariants = cva2("", {
|
|
70
63
|
variants: {
|
|
71
64
|
size: {
|
|
@@ -104,7 +97,7 @@ var Text = ({
|
|
|
104
97
|
className,
|
|
105
98
|
...props
|
|
106
99
|
}) => {
|
|
107
|
-
return /* @__PURE__ */
|
|
100
|
+
return /* @__PURE__ */ jsx2(
|
|
108
101
|
"p",
|
|
109
102
|
{
|
|
110
103
|
className: cn(
|
|
@@ -125,7 +118,7 @@ var Text = ({
|
|
|
125
118
|
import * as React from "react";
|
|
126
119
|
import { Slot } from "@radix-ui/react-slot";
|
|
127
120
|
import { cva as cva3 } from "class-variance-authority";
|
|
128
|
-
import { jsx as
|
|
121
|
+
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
129
122
|
var buttonVariants = cva3(
|
|
130
123
|
"sg-inline-flex sg-items-center sg-justify-center sg-gap-2 sg-whitespace-nowrap sg-rounded-md sg-text-sm sg-font-medium sg-transition-colors focus-visible:sg-outline-none focus-visible:ring-offset-2 focus-visible:sg-ring-2 focus-visible:sg-ring-ring disabled:sg-pointer-events-none disabled:sg-opacity-50 [&_svg]:sg-pointer-events-none [&_svg]:sg-size-4 [&_svg]:sg-shrink-0",
|
|
131
124
|
{
|
|
@@ -154,7 +147,7 @@ var buttonVariants = cva3(
|
|
|
154
147
|
var Button = React.forwardRef(
|
|
155
148
|
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
156
149
|
const Comp = asChild ? Slot : "button";
|
|
157
|
-
return /* @__PURE__ */
|
|
150
|
+
return /* @__PURE__ */ jsx3(
|
|
158
151
|
Comp,
|
|
159
152
|
{
|
|
160
153
|
className: cn(buttonVariants({ variant, size, className })),
|
|
@@ -168,7 +161,7 @@ Button.displayName = "Button";
|
|
|
168
161
|
|
|
169
162
|
// lib/components/ui/badge/badge.tsx
|
|
170
163
|
import { cva as cva4 } from "class-variance-authority";
|
|
171
|
-
import { jsx as
|
|
164
|
+
import { jsx as jsx4 } from "react/jsx-runtime";
|
|
172
165
|
var badgeVariants = cva4(
|
|
173
166
|
"sg-inline-flex sg-items-center sg-rounded-md sg-border sg-px-2.5 sg-py-0.5 sg-text-xs sg-font-semibold sg-transition-colors focus:sg-outline-none focus:sg-ring-2 focus:sg-ring-ring focus:sg-ring-offset-2",
|
|
174
167
|
{
|
|
@@ -186,72 +179,94 @@ var badgeVariants = cva4(
|
|
|
186
179
|
}
|
|
187
180
|
);
|
|
188
181
|
function Badge({ className, variant, ...props }) {
|
|
189
|
-
return /* @__PURE__ */
|
|
182
|
+
return /* @__PURE__ */ jsx4("div", { className: cn(badgeVariants({ variant }), className), ...props });
|
|
190
183
|
}
|
|
191
184
|
|
|
192
185
|
// lib/components/ui/layout/layout.tsx
|
|
193
186
|
import * as React2 from "react";
|
|
194
187
|
import { cva as cva5 } from "class-variance-authority";
|
|
195
|
-
import { Fragment, jsx as
|
|
196
|
-
var
|
|
188
|
+
import { Fragment, jsx as jsx5 } from "react/jsx-runtime";
|
|
189
|
+
var bgColor = {
|
|
190
|
+
transparent: "sg-bg-transparent",
|
|
191
|
+
white: "sg-bg-white",
|
|
192
|
+
black: "sg-bg-black",
|
|
193
|
+
orange: "sg-bg-orange",
|
|
194
|
+
purple: "sg-bg-purple"
|
|
195
|
+
};
|
|
196
|
+
var layoutVariants = cva5("sg-grid sg-grid-cols-1 sg-gap-4", {
|
|
197
197
|
variants: {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
"50-50": "sg-grid-cols-1 md:sg-grid-cols-2",
|
|
202
|
-
"33-33-33": "sg-grid-cols-1 md:sg-grid-cols-2",
|
|
203
|
-
"25-25-25-25": "sg-grid-cols-1 md:sg-grid-cols-2"
|
|
198
|
+
content: {
|
|
199
|
+
full: "sg-w-full sg-px-4",
|
|
200
|
+
col: "sg-mx-auto sg-max-w-[768px] sg-px-4 md:sg-px-0"
|
|
204
201
|
},
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
202
|
+
cols: {
|
|
203
|
+
"100": "",
|
|
204
|
+
"66-33": "md:sg-grid-cols-2",
|
|
205
|
+
"50-50": "md:sg-grid-cols-2",
|
|
206
|
+
"33-33-33": "md:sg-grid-cols-3",
|
|
207
|
+
"25-25-25-25": "md:sg-grid-cols-4"
|
|
208
|
+
},
|
|
209
|
+
bgcolor: bgColor
|
|
209
210
|
},
|
|
210
211
|
defaultVariants: {
|
|
211
|
-
|
|
212
|
-
|
|
212
|
+
content: "col",
|
|
213
|
+
cols: "100"
|
|
213
214
|
}
|
|
214
215
|
});
|
|
215
216
|
function Layout({
|
|
216
217
|
children,
|
|
217
218
|
className,
|
|
218
|
-
|
|
219
|
+
content,
|
|
220
|
+
cols,
|
|
221
|
+
bgcolor
|
|
219
222
|
}) {
|
|
220
|
-
const allowedInLayout = (
|
|
221
|
-
if (
|
|
223
|
+
const allowedInLayout = (content2) => {
|
|
224
|
+
if (content2.type === Layout.Col1) {
|
|
222
225
|
return true;
|
|
223
|
-
} else if (
|
|
226
|
+
} else if (content2.type === Layout.Col2 && (cols === "66-33" || cols === "50-50" || cols === "33-33-33" || cols === "25-25-25-25")) {
|
|
224
227
|
return true;
|
|
225
|
-
} else if (
|
|
228
|
+
} else if (content2.type === Layout.Col3 && (cols === "33-33-33" || cols === "25-25-25-25")) {
|
|
226
229
|
return true;
|
|
227
|
-
} else if (
|
|
230
|
+
} else if (content2.type === Layout.Col4 && cols === "25-25-25-25") {
|
|
228
231
|
return true;
|
|
229
232
|
}
|
|
230
|
-
console.error(
|
|
233
|
+
console.error(
|
|
234
|
+
"Content not allowed in column for variant",
|
|
235
|
+
cols,
|
|
236
|
+
content2.type
|
|
237
|
+
);
|
|
231
238
|
return false;
|
|
232
239
|
};
|
|
233
|
-
const renderColumn = (
|
|
234
|
-
if (!allowedInLayout(
|
|
240
|
+
const renderColumn = (content2) => {
|
|
241
|
+
if (!allowedInLayout(content2)) {
|
|
235
242
|
return;
|
|
236
243
|
}
|
|
237
|
-
return /* @__PURE__ */
|
|
244
|
+
return /* @__PURE__ */ jsx5("div", { children: content2 });
|
|
238
245
|
};
|
|
239
|
-
return /* @__PURE__ */
|
|
246
|
+
return /* @__PURE__ */ jsx5("div", { className: cn(bgColor[bgcolor ?? "transparent"], className), children: /* @__PURE__ */ jsx5("div", { className: cn(layoutVariants({ content, cols })), children: React2.Children.map(
|
|
240
247
|
children,
|
|
241
|
-
(child) => React2.isValidElement(child) ? renderColumn(child) : /* @__PURE__ */
|
|
248
|
+
(child) => React2.isValidElement(child) ? renderColumn(child) : /* @__PURE__ */ jsx5(Fragment, {})
|
|
242
249
|
) }) });
|
|
243
250
|
}
|
|
244
|
-
function
|
|
245
|
-
return
|
|
251
|
+
function Col1({ children }) {
|
|
252
|
+
return children;
|
|
253
|
+
}
|
|
254
|
+
function Col2({ children }) {
|
|
255
|
+
return children;
|
|
256
|
+
}
|
|
257
|
+
function Col3({ children }) {
|
|
258
|
+
return children;
|
|
259
|
+
}
|
|
260
|
+
function Col4({ children }) {
|
|
261
|
+
return children;
|
|
246
262
|
}
|
|
247
|
-
Layout.Col1 =
|
|
248
|
-
Layout.Col2 =
|
|
249
|
-
Layout.Col3 =
|
|
250
|
-
Layout.Col4 =
|
|
263
|
+
Layout.Col1 = Col1;
|
|
264
|
+
Layout.Col2 = Col2;
|
|
265
|
+
Layout.Col3 = Col3;
|
|
266
|
+
Layout.Col4 = Col4;
|
|
251
267
|
export {
|
|
252
268
|
Badge,
|
|
253
269
|
Button,
|
|
254
|
-
Demo,
|
|
255
270
|
Heading,
|
|
256
271
|
Layout,
|
|
257
272
|
Text
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/utils.ts","../lib/components/Demo.tsx","../lib/components/ui/heading/heading.tsx","../lib/components/ui/text/text.tsx","../lib/components/ui/button/button.tsx","../lib/components/ui/badge/badge.tsx","../lib/components/ui/layout/layout.tsx"],"sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\r\nimport { extendTailwindMerge, twMerge } from \"tailwind-merge\";\r\nimport {} from \"tailwind-merge\";\r\n\r\nexport function cn(...inputs: ClassValue[]) {\r\n const twMergeWithPrefix = extendTailwindMerge({\r\n prefix: \"sg-\",\r\n });\r\n\r\n return twMergeWithPrefix(twMerge(clsx(inputs)));\r\n}\r\n","import { cn } from \"../utils\";\n\ntype props = {\n text?: string;\n};\n\nexport const Demo = ({ text }: props) => {\n return (\n <div\n className={cn(\n \"sg-text-orange-500 sg-p-4 sg-p-3 sg-text-white sg-bg-black\"\n )}\n >\n {text}\n </div>\n );\n};\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst headingVariants = cva(\"\", {\r\n variants: {\r\n variant: {\r\n h1: \"sg-text-4xl sg-font-extrabold sg-tracking-tight lg:sg-text-5xl\",\r\n h2: \"sg-text-3xl sg-font-semibold sg-tracking-tight sg-transition-colors first:sg-mt-0\",\r\n h3: \"sg-text-2xl sg-font-semibold sg-tracking-tight\",\r\n h4: \"sg-text-xl sg-font-semibold sg-tracking-tight\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"h2\",\r\n foreground: \"default\",\r\n },\r\n});\r\n\r\nexport interface HeadingProps\r\n extends OmitClassProperty<\r\n React.HTMLAttributes<HTMLHeadingElement>,\r\n \"className\"\r\n >,\r\n VariantProps<typeof headingVariants> {\r\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\";\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Heading: React.FC<HeadingProps> = ({\r\n children,\r\n as = \"h2\",\r\n variant,\r\n foreground,\r\n className,\r\n ...props\r\n}) => {\r\n const Component = as;\r\n\r\n return (\r\n <Component\r\n className={cn(headingVariants({ variant, foreground, className }))}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst textVariants = cva(\"\", {\r\n variants: {\r\n size: {\r\n xs: \"sg-text-xs\",\r\n sm: \"sg-text-sm\",\r\n base: \"sg-text-base\",\r\n lg: \"sg-text-lg\",\r\n xl: \"sg-text-xl\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n secondary: \"sg-text-secondary-foreground\",\r\n destructive: \"sg-text-destructive\",\r\n accent: \"sg-text-accent-foreground\",\r\n },\r\n weight: {\r\n normal: \"sg-font-normal\",\r\n medium: \"sg-font-medium\",\r\n semibold: \"sg-font-semibold\",\r\n bold: \"sg-font-bold\",\r\n },\r\n },\r\n defaultVariants: {\r\n size: \"base\",\r\n foreground: \"default\",\r\n weight: \"normal\",\r\n },\r\n});\r\n\r\nexport interface TextProps\r\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\r\n VariantProps<typeof textVariants> {\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Text: React.FC<TextProps> = ({\r\n children,\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n ...props\r\n}) => {\r\n return (\r\n <p\r\n className={cn(\r\n textVariants({\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n })\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </p>\r\n );\r\n};\r\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst buttonVariants = cva(\n \"sg-inline-flex sg-items-center sg-justify-center sg-gap-2 sg-whitespace-nowrap sg-rounded-md sg-text-sm sg-font-medium sg-transition-colors focus-visible:sg-outline-none focus-visible:ring-offset-2 focus-visible:sg-ring-2 focus-visible:sg-ring-ring disabled:sg-pointer-events-none disabled:sg-opacity-50 [&_svg]:sg-pointer-events-none [&_svg]:sg-size-4 [&_svg]:sg-shrink-0\",\n {\n variants: {\n variant: {\n primary:\n \"sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/90\",\n secondary:\n \"sg-bg-purple sg-text-purple-foreground sg-shadow-sm hover:sg-bg-purple/90\",\n destructive:\n \"sg-bg-red sg-text-red-foreground sg-shadow-sm hover:sg-bg-red/90\",\n outline:\n \"sg-border sg-border-orange sg-bg-white sg-shadow-sm hover:sg-bg-gray/20\",\n ghost: \"hover:sg-bg-accent hover:sg-text-accent-foreground\",\n link: \"sg-text-primary sg-underline-offset-4 hover:sg-underline\",\n },\n size: {\n default: \"sg-h-9 sg-px-4 sg-py-2\",\n sm: \"sg-h-8 sg-rounded-md sg-px-3 sg-text-xs\",\n lg: \"sg-h-10 sg-rounded-md sg-px-8\",\n icon: \"sg-h-9 sg-w-9\",\n },\n },\n defaultVariants: {\n variant: \"primary\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n extends OmitClassProperty<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"className\"\n >,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n className?: TailwindMarginClass;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst badgeVariants = cva(\n \"sg-inline-flex sg-items-center sg-rounded-md sg-border sg-px-2.5 sg-py-0.5 sg-text-xs sg-font-semibold sg-transition-colors focus:sg-outline-none focus:sg-ring-2 focus:sg-ring-ring focus:sg-ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"sg-border-transparent sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/80\",\n purple:\n \"sg-border-transparent sg-bg-purple sg-text-purple-foreground sg-shadow hover:sg-bg-purple/80\",\n green:\n \"sg-border-transparent sg-bg-green sg-text-green-foreground sg-shadow hover:sg-bg-green/80\",\n outline: \"sg-text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\n VariantProps<typeof badgeVariants> {\n className?: TailwindMarginClass;\n}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { TailwindMarginClass } from \"../../../lib/types\";\nimport { PropsWithChildren } from \"react\";\n\nconst layoutVariants = cva(\"sg-grid sg-gap-4 \", {\n variants: {\n variant: {\n \"100\": \"sg-grid-cols-1\",\n \"66-33\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n \"50-50\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n \"33-33-33\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n \"25-25-25-25\": \"sg-grid-cols-1 md:sg-grid-cols-2\",\n },\n fill: {\n full: \"sg-w-screen\",\n col: \"sg-max-w-[960px]\",\n },\n },\n defaultVariants: {\n variant: \"100\",\n fill: \"col\",\n },\n});\n\nexport interface LayoutProps extends VariantProps<typeof layoutVariants> {\n fullWidth?: boolean;\n className?: TailwindMarginClass;\n}\n\nfunction Layout({\n children,\n className,\n variant = \"100\",\n}: PropsWithChildren<LayoutProps>) {\n const allowedInLayout = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ): boolean => {\n if (content.type === Layout.Col1) {\n return true;\n } else if (\n content.type === Layout.Col2 &&\n (variant === \"66-33\" || variant === \"50-50\")\n ) {\n return true;\n } else if (\n content.type === Layout.Col3 &&\n (variant === \"33-33-33\" || variant === \"25-25-25-25\")\n ) {\n return true;\n } else if (content.type === Layout.Col4 && variant === \"25-25-25-25\") {\n return true;\n }\n\n console.error(\"Content not allowed in column for layout\", content.type);\n return false;\n };\n\n const renderColumn = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ) => {\n if (!allowedInLayout(content)) {\n return;\n }\n return <div>{content}</div>;\n };\n\n return (\n <div className=\"sg-mx-auto sg-max-w-[960px]\">\n <div className={cn(layoutVariants({ variant }), className)}>\n {React.Children.map(children, (child) =>\n React.isValidElement(child) ? renderColumn(child) : <></>\n )}\n </div>\n </div>\n );\n}\n\ntype colProp = {\n children?: React.ReactNode;\n};\n\nfunction Col({ children }: colProp) {\n return <>{children}</>;\n}\n\nLayout.Col1 = Col;\nLayout.Col2 = Col;\nLayout.Col3 = Col;\nLayout.Col4 = Col;\n\nexport { Layout, layoutVariants };\n"],"mappings":";AAAA,SAAS,YAA6B;AACtC,SAAS,qBAAqB,eAAe;AAGtC,SAAS,MAAM,QAAsB;AAC1C,QAAM,oBAAoB,oBAAoB;AAAA,IAC5C,QAAQ;AAAA,EACV,CAAC;AAED,SAAO,kBAAkB,QAAQ,KAAK,MAAM,CAAC,CAAC;AAChD;;;ACFI;AAFG,IAAM,OAAO,CAAC,EAAE,KAAK,MAAa;AACvC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;;;ACfA,SAAS,WAA8B;AA6CnC,gBAAAA,YAAA;AAzCJ,IAAM,kBAAkB,IAAI,IAAI;AAAA,EAC9B,UAAU;AAAA,IACR,SAAS;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACN;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,IACT,YAAY;AAAA,EACd;AACF,CAAC;AAYM,IAAM,UAAkC,CAAC;AAAA,EAC9C;AAAA,EACA,KAAK;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,YAAY;AAElB,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,gBAAgB,EAAE,SAAS,YAAY,UAAU,CAAC,CAAC;AAAA,MAChE,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;;;ACpDA,SAAS,OAAAC,YAA8B;AAkDnC,gBAAAC,YAAA;AA9CJ,IAAM,eAAeC,KAAI,IAAI;AAAA,EAC3B,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,IACN;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,WAAW;AAAA,MACX,aAAa;AAAA,MACb,QAAQ;AAAA,IACV;AAAA,IACA,QAAQ;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,QAAQ;AAAA,EACV;AACF,CAAC;AAQM,IAAM,OAA4B,CAAC;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACE,gBAAAD;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT,aAAa;AAAA,UACX;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;;;ACjEA,YAAY,WAAW;AACvB,SAAS,YAAY;AACrB,SAAS,OAAAE,YAA8B;AAgDjC,gBAAAC,YAAA;AA5CN,IAAM,iBAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,WACE;AAAA,QACF,aACE;AAAA,QACF,SACE;AAAA,QACF,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAYA,IAAM,SAAe;AAAA,EACnB,CAAC,EAAE,WAAW,SAAS,MAAM,UAAU,OAAO,GAAG,MAAM,GAAG,QAAQ;AAChE,UAAM,OAAO,UAAU,OAAO;AAC9B,WACE,gBAAAD;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,eAAe,EAAE,SAAS,MAAM,UAAU,CAAC,CAAC;AAAA,QAC1D;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AACA,OAAO,cAAc;;;ACzDrB,SAAS,OAAAE,YAA8B;AAgCnC,gBAAAC,YAAA;AA5BJ,IAAM,gBAAgBC;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,QACE;AAAA,QACF,OACE;AAAA,QACF,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAQA,SAAS,MAAM,EAAE,WAAW,SAAS,GAAG,MAAM,GAAe;AAC3D,SACE,gBAAAD,KAAC,SAAI,WAAW,GAAG,cAAc,EAAE,QAAQ,CAAC,GAAG,SAAS,GAAI,GAAG,OAAO;AAE1E;;;ACnCA,YAAYE,YAAW;AACvB,SAAS,OAAAC,YAA8B;AAgE5B,SAOmD,UAPnD,OAAAC,YAAA;AA3DX,IAAM,iBAAiBC,KAAI,qBAAqB;AAAA,EAC9C,UAAU;AAAA,IACR,SAAS;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,eAAe;AAAA,IACjB;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,KAAK;AAAA,IACP;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,IACT,MAAM;AAAA,EACR;AACF,CAAC;AAOD,SAAS,OAAO;AAAA,EACd;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAAmC;AACjC,QAAM,kBAAkB,CACtB,YACY;AACZ,QAAI,QAAQ,SAAS,OAAO,MAAM;AAChC,aAAO;AAAA,IACT,WACE,QAAQ,SAAS,OAAO,SACvB,YAAY,WAAW,YAAY,UACpC;AACA,aAAO;AAAA,IACT,WACE,QAAQ,SAAS,OAAO,SACvB,YAAY,cAAc,YAAY,gBACvC;AACA,aAAO;AAAA,IACT,WAAW,QAAQ,SAAS,OAAO,QAAQ,YAAY,eAAe;AACpE,aAAO;AAAA,IACT;AAEA,YAAQ,MAAM,4CAA4C,QAAQ,IAAI;AACtE,WAAO;AAAA,EACT;AAEA,QAAM,eAAe,CACnB,YACG;AACH,QAAI,CAAC,gBAAgB,OAAO,GAAG;AAC7B;AAAA,IACF;AACA,WAAO,gBAAAD,KAAC,SAAK,mBAAQ;AAAA,EACvB;AAEA,SACE,gBAAAA,KAAC,SAAI,WAAU,+BACb,0BAAAA,KAAC,SAAI,WAAW,GAAG,eAAe,EAAE,QAAQ,CAAC,GAAG,SAAS,GACtD,UAAM,gBAAS;AAAA,IAAI;AAAA,IAAU,CAAC,UACvB,sBAAe,KAAK,IAAI,aAAa,KAAK,IAAI,gBAAAA,KAAA,YAAE;AAAA,EACxD,GACF,GACF;AAEJ;AAMA,SAAS,IAAI,EAAE,SAAS,GAAY;AAClC,SAAO,gBAAAA,KAAA,YAAG,UAAS;AACrB;AAEA,OAAO,OAAO;AACd,OAAO,OAAO;AACd,OAAO,OAAO;AACd,OAAO,OAAO;","names":["jsx","cva","jsx","cva","cva","jsx","cva","cva","jsx","cva","React","cva","jsx","cva"]}
|
|
1
|
+
{"version":3,"sources":["../lib/components/ui/heading/heading.tsx","../lib/utils.ts","../lib/components/ui/text/text.tsx","../lib/components/ui/button/button.tsx","../lib/components/ui/badge/badge.tsx","../lib/components/ui/layout/layout.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst headingVariants = cva(\"\", {\r\n variants: {\r\n variant: {\r\n h1: \"sg-text-4xl sg-font-extrabold sg-tracking-tight lg:sg-text-5xl\",\r\n h2: \"sg-text-3xl sg-font-semibold sg-tracking-tight sg-transition-colors first:sg-mt-0\",\r\n h3: \"sg-text-2xl sg-font-semibold sg-tracking-tight\",\r\n h4: \"sg-text-xl sg-font-semibold sg-tracking-tight\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"h2\",\r\n foreground: \"default\",\r\n },\r\n});\r\n\r\nexport interface HeadingProps\r\n extends OmitClassProperty<\r\n React.HTMLAttributes<HTMLHeadingElement>,\r\n \"className\"\r\n >,\r\n VariantProps<typeof headingVariants> {\r\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\";\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Heading: React.FC<HeadingProps> = ({\r\n children,\r\n as,\r\n variant,\r\n foreground,\r\n className,\r\n ...props\r\n}) => {\r\n if (!as && variant) {\r\n as = variant;\r\n } else if (!as) {\r\n as = \"h2\";\r\n }\r\n const Component = as;\r\n\r\n return (\r\n <Component\r\n className={cn(headingVariants({ variant, foreground, className }))}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n","import { clsx, type ClassValue } from \"clsx\";\r\nimport { extendTailwindMerge, twMerge } from \"tailwind-merge\";\r\n\r\nexport function cn(...inputs: ClassValue[]) {\r\n const twMergeWithPrefix = extendTailwindMerge({\r\n prefix: \"sg-\",\r\n });\r\n\r\n return twMergeWithPrefix(twMerge(clsx(inputs)));\r\n}\r\n","import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\r\n\r\nconst textVariants = cva(\"\", {\r\n variants: {\r\n size: {\r\n xs: \"sg-text-xs\",\r\n sm: \"sg-text-sm\",\r\n base: \"sg-text-base\",\r\n lg: \"sg-text-lg\",\r\n xl: \"sg-text-xl\",\r\n },\r\n foreground: {\r\n default: \"sg-text-foreground\",\r\n muted: \"sg-text-muted-foreground\",\r\n primary: \"sg-text-primary\",\r\n secondary: \"sg-text-secondary-foreground\",\r\n destructive: \"sg-text-destructive\",\r\n accent: \"sg-text-accent-foreground\",\r\n },\r\n weight: {\r\n normal: \"sg-font-normal\",\r\n medium: \"sg-font-medium\",\r\n semibold: \"sg-font-semibold\",\r\n bold: \"sg-font-bold\",\r\n },\r\n },\r\n defaultVariants: {\r\n size: \"base\",\r\n foreground: \"default\",\r\n weight: \"normal\",\r\n },\r\n});\r\n\r\nexport interface TextProps\r\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\r\n VariantProps<typeof textVariants> {\r\n className?: TailwindMarginClass;\r\n}\r\n\r\nexport const Text: React.FC<TextProps> = ({\r\n children,\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n ...props\r\n}) => {\r\n return (\r\n <p\r\n className={cn(\r\n textVariants({\r\n size,\r\n foreground,\r\n weight,\r\n className,\r\n })\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </p>\r\n );\r\n};\r\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst buttonVariants = cva(\n \"sg-inline-flex sg-items-center sg-justify-center sg-gap-2 sg-whitespace-nowrap sg-rounded-md sg-text-sm sg-font-medium sg-transition-colors focus-visible:sg-outline-none focus-visible:ring-offset-2 focus-visible:sg-ring-2 focus-visible:sg-ring-ring disabled:sg-pointer-events-none disabled:sg-opacity-50 [&_svg]:sg-pointer-events-none [&_svg]:sg-size-4 [&_svg]:sg-shrink-0\",\n {\n variants: {\n variant: {\n primary:\n \"sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/90\",\n secondary:\n \"sg-bg-purple sg-text-purple-foreground sg-shadow-sm hover:sg-bg-purple/90\",\n destructive:\n \"sg-bg-red sg-text-red-foreground sg-shadow-sm hover:sg-bg-red/90\",\n outline:\n \"sg-border sg-border-orange sg-bg-white sg-shadow-sm hover:sg-bg-gray/20\",\n ghost: \"hover:sg-bg-accent hover:sg-text-accent-foreground\",\n link: \"sg-text-primary sg-underline-offset-4 hover:sg-underline\",\n },\n size: {\n default: \"sg-h-9 sg-px-4 sg-py-2\",\n sm: \"sg-h-8 sg-rounded-md sg-px-3 sg-text-xs\",\n lg: \"sg-h-10 sg-rounded-md sg-px-8\",\n icon: \"sg-h-9 sg-w-9\",\n },\n },\n defaultVariants: {\n variant: \"primary\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n extends OmitClassProperty<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"className\"\n >,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n className?: TailwindMarginClass;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { OmitClassProperty, TailwindMarginClass } from \"../../../lib/types\";\n\nconst badgeVariants = cva(\n \"sg-inline-flex sg-items-center sg-rounded-md sg-border sg-px-2.5 sg-py-0.5 sg-text-xs sg-font-semibold sg-transition-colors focus:sg-outline-none focus:sg-ring-2 focus:sg-ring-ring focus:sg-ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"sg-border-transparent sg-bg-orange sg-text-orange-foreground sg-shadow hover:sg-bg-orange/80\",\n purple:\n \"sg-border-transparent sg-bg-purple sg-text-purple-foreground sg-shadow hover:sg-bg-purple/80\",\n green:\n \"sg-border-transparent sg-bg-green sg-text-green-foreground sg-shadow hover:sg-bg-green/80\",\n outline: \"sg-text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends OmitClassProperty<React.HTMLAttributes<HTMLDivElement>, \"className\">,\n VariantProps<typeof badgeVariants> {\n className?: TailwindMarginClass;\n}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils\";\nimport { PropsWithChildren } from \"react\";\n\nconst bgColor = {\n transparent: \"sg-bg-transparent\",\n white: \"sg-bg-white\",\n black: \"sg-bg-black\",\n orange: \"sg-bg-orange\",\n purple: \"sg-bg-purple\",\n};\n\nconst layoutVariants = cva(\"sg-grid sg-grid-cols-1 sg-gap-4\", {\n variants: {\n content: {\n full: \"sg-w-full sg-px-4\",\n col: \"sg-mx-auto sg-max-w-[768px] sg-px-4 md:sg-px-0\",\n },\n cols: {\n \"100\": \"\",\n \"66-33\": \"md:sg-grid-cols-2\",\n \"50-50\": \"md:sg-grid-cols-2\",\n \"33-33-33\": \"md:sg-grid-cols-3\",\n \"25-25-25-25\": \"md:sg-grid-cols-4\",\n },\n bgcolor: bgColor,\n },\n defaultVariants: {\n content: \"col\",\n cols: \"100\",\n },\n});\n\nexport interface LayoutProps extends VariantProps<typeof layoutVariants> {\n className?: React.HTMLAttributes<HTMLDivElement>;\n}\n\nfunction Layout({\n children,\n className,\n content,\n cols,\n bgcolor,\n}: PropsWithChildren<LayoutProps>) {\n const allowedInLayout = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ): boolean => {\n if (content.type === Layout.Col1) {\n return true;\n } else if (\n content.type === Layout.Col2 &&\n (cols === \"66-33\" ||\n cols === \"50-50\" ||\n cols === \"33-33-33\" ||\n cols === \"25-25-25-25\")\n ) {\n return true;\n } else if (\n content.type === Layout.Col3 &&\n (cols === \"33-33-33\" || cols === \"25-25-25-25\")\n ) {\n return true;\n } else if (content.type === Layout.Col4 && cols === \"25-25-25-25\") {\n return true;\n }\n\n console.error(\n \"Content not allowed in column for variant\",\n cols,\n content.type\n );\n return false;\n };\n\n const renderColumn = (\n content: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n ) => {\n if (!allowedInLayout(content)) {\n return;\n }\n return <div>{content}</div>;\n };\n\n return (\n <div className={cn(bgColor[bgcolor ?? \"transparent\"], className)}>\n <div className={cn(layoutVariants({ content, cols }))}>\n {React.Children.map(children, (child) =>\n React.isValidElement(child) ? renderColumn(child) : <></>\n )}\n </div>\n </div>\n );\n}\n\ntype colProp = {\n children?: React.ReactNode;\n};\n\nfunction Col1({ children }: colProp) {\n return children;\n}\nfunction Col2({ children }: colProp) {\n return children;\n}\nfunction Col3({ children }: colProp) {\n return children;\n}\nfunction Col4({ children }: colProp) {\n return children;\n}\n\nLayout.Col1 = Col1;\nLayout.Col2 = Col2;\nLayout.Col3 = Col3;\nLayout.Col4 = Col4;\n\nexport { Layout, layoutVariants };\n"],"mappings":"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","names":["cva","jsx","cva","cva","jsx","cva","cva","jsx","cva","React","cva","jsx","cva","content"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "singularity-components",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.58",
|
|
4
4
|
"main": "./dist/main.js",
|
|
5
5
|
"module": "./dist/main.mjs",
|
|
6
6
|
"types": "./dist/main.d.ts",
|
|
@@ -33,15 +33,14 @@
|
|
|
33
33
|
"@storybook/addon-essentials": "^8.4.7",
|
|
34
34
|
"@storybook/addon-interactions": "^8.4.7",
|
|
35
35
|
"@storybook/addon-links": "^8.4.7",
|
|
36
|
-
"@storybook/addon-onboarding": "^8.4.7",
|
|
37
36
|
"@storybook/blocks": "^8.4.7",
|
|
38
37
|
"@storybook/react": "^8.4.7",
|
|
39
38
|
"@storybook/react-vite": "^8.4.7",
|
|
40
39
|
"@storybook/test": "^8.4.7",
|
|
41
40
|
"@types/react": "^19.0.1",
|
|
42
41
|
"@types/react-dom": "^19.0.2",
|
|
43
|
-
"@typescript-eslint/eslint-plugin": "^8.18.
|
|
44
|
-
"@typescript-eslint/parser": "^8.18.
|
|
42
|
+
"@typescript-eslint/eslint-plugin": "^8.18.1",
|
|
43
|
+
"@typescript-eslint/parser": "^8.18.1",
|
|
45
44
|
"@vitejs/plugin-react": "^4.3.4",
|
|
46
45
|
"autoprefixer": "^10.4.20",
|
|
47
46
|
"eslint": "^9.17.0",
|
|
@@ -51,7 +50,7 @@
|
|
|
51
50
|
"postcss": "^8.4.49",
|
|
52
51
|
"postcss-import": "^16.1.0",
|
|
53
52
|
"storybook": "^8.4.7",
|
|
54
|
-
"tailwindcss": "^3.4.
|
|
53
|
+
"tailwindcss": "^3.4.17",
|
|
55
54
|
"tsup": "^8.3.5",
|
|
56
55
|
"typescript": "^5.7.2",
|
|
57
56
|
"vite": "^6.0.3",
|