singularity-components 0.1.60 → 0.1.61
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 +51 -51
- package/dist/main.cjs.map +1 -1
- package/dist/main.css +859 -663
- package/dist/main.css.map +1 -1
- package/dist/main.js +51 -51
- package/dist/main.js.map +1 -1
- package/package.json +58 -59
package/dist/main.cjs
CHANGED
|
@@ -30,22 +30,22 @@ var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
|
30
30
|
// lib/components/ui/heading/heading.tsx
|
|
31
31
|
function cn(...inputs) {
|
|
32
32
|
const twMergeWithPrefix = tailwindMerge.extendTailwindMerge({
|
|
33
|
-
prefix: "sg
|
|
33
|
+
prefix: "sg:"
|
|
34
34
|
});
|
|
35
35
|
return twMergeWithPrefix(tailwindMerge.twMerge(clsx.clsx(inputs)));
|
|
36
36
|
}
|
|
37
37
|
var headingVariants = classVarianceAuthority.cva("", {
|
|
38
38
|
variants: {
|
|
39
39
|
variant: {
|
|
40
|
-
h1: "sg
|
|
41
|
-
h2: "sg
|
|
42
|
-
h3: "sg
|
|
43
|
-
h4: "sg
|
|
40
|
+
h1: "sg:text-4xl sg:font-extrabold sg:tracking-tight sg:lg:text-5xl",
|
|
41
|
+
h2: "sg:text-3xl sg:font-semibold sg:tracking-tight sg:transition-colors sg:first:mt-0",
|
|
42
|
+
h3: "sg:text-2xl sg:font-semibold sg:tracking-tight",
|
|
43
|
+
h4: "sg:text-xl sg:font-semibold sg:tracking-tight"
|
|
44
44
|
},
|
|
45
45
|
foreground: {
|
|
46
|
-
default: "sg
|
|
47
|
-
muted: "sg
|
|
48
|
-
primary: "sg
|
|
46
|
+
default: "sg:text-foreground",
|
|
47
|
+
muted: "sg:text-muted-foreground",
|
|
48
|
+
primary: "sg:text-primary"
|
|
49
49
|
}
|
|
50
50
|
},
|
|
51
51
|
defaultVariants: {
|
|
@@ -79,25 +79,25 @@ var Heading = ({
|
|
|
79
79
|
var textVariants = classVarianceAuthority.cva("", {
|
|
80
80
|
variants: {
|
|
81
81
|
size: {
|
|
82
|
-
xs: "sg
|
|
83
|
-
sm: "sg
|
|
84
|
-
base: "sg
|
|
85
|
-
lg: "sg
|
|
86
|
-
xl: "sg
|
|
82
|
+
xs: "sg:text-xs",
|
|
83
|
+
sm: "sg:text-sm",
|
|
84
|
+
base: "sg:text-base",
|
|
85
|
+
lg: "sg:text-lg",
|
|
86
|
+
xl: "sg:text-xl"
|
|
87
87
|
},
|
|
88
88
|
foreground: {
|
|
89
|
-
default: "sg
|
|
90
|
-
muted: "sg
|
|
91
|
-
primary: "sg
|
|
92
|
-
secondary: "sg
|
|
93
|
-
destructive: "sg
|
|
94
|
-
accent: "sg
|
|
89
|
+
default: "sg:text-foreground",
|
|
90
|
+
muted: "sg:text-muted-foreground",
|
|
91
|
+
primary: "sg:text-primary",
|
|
92
|
+
secondary: "sg:text-secondary-foreground",
|
|
93
|
+
destructive: "sg:text-destructive",
|
|
94
|
+
accent: "sg:text-accent-foreground"
|
|
95
95
|
},
|
|
96
96
|
weight: {
|
|
97
|
-
normal: "sg
|
|
98
|
-
medium: "sg
|
|
99
|
-
semibold: "sg
|
|
100
|
-
bold: "sg
|
|
97
|
+
normal: "sg:font-normal",
|
|
98
|
+
medium: "sg:font-medium",
|
|
99
|
+
semibold: "sg:font-semibold",
|
|
100
|
+
bold: "sg:font-bold"
|
|
101
101
|
}
|
|
102
102
|
},
|
|
103
103
|
defaultVariants: {
|
|
@@ -131,22 +131,22 @@ var Text = ({
|
|
|
131
131
|
);
|
|
132
132
|
};
|
|
133
133
|
var buttonVariants = classVarianceAuthority.cva(
|
|
134
|
-
"sg
|
|
134
|
+
"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 sg:focus-visible:outline-hidden focus-visible:ring-offset-2 sg:focus-visible:ring-2 sg:focus-visible:ring-ring sg:disabled:pointer-events-none sg:disabled:opacity-50 sg:[&_svg]:pointer-events-none sg:[&_svg]:size-4 sg:[&_svg]:shrink-0",
|
|
135
135
|
{
|
|
136
136
|
variants: {
|
|
137
137
|
variant: {
|
|
138
|
-
primary: "sg
|
|
139
|
-
secondary: "sg
|
|
140
|
-
destructive: "sg
|
|
141
|
-
outline: "sg
|
|
142
|
-
ghost: "hover:
|
|
143
|
-
link: "sg
|
|
138
|
+
primary: "sg:bg-orange sg:text-orange-foreground sg:shadow sg:hover:bg-orange/90",
|
|
139
|
+
secondary: "sg:bg-purple sg:text-purple-foreground sg:shadow-sm sg:hover:bg-purple/90",
|
|
140
|
+
destructive: "sg:bg-red sg:text-red-foreground sg:shadow-sm sg:hover:bg-red/90",
|
|
141
|
+
outline: "sg:border sg:border-orange sg:bg-white sg:shadow-sm sg:hover:bg-gray/20",
|
|
142
|
+
ghost: "sg:hover:bg-accent sg:hover:text-accent-foreground",
|
|
143
|
+
link: "sg:text-primary sg:underline-offset-4 sg:hover:underline"
|
|
144
144
|
},
|
|
145
145
|
size: {
|
|
146
|
-
default: "sg
|
|
147
|
-
sm: "sg
|
|
148
|
-
lg: "sg
|
|
149
|
-
icon: "sg
|
|
146
|
+
default: "sg:h-9 sg:px-4 sg:py-2",
|
|
147
|
+
sm: "sg:h-8 sg:rounded-md sg:px-3 sg:py-2 sg:text-xs",
|
|
148
|
+
lg: "sg:h-10 sg:rounded-md sg:px-8 sg:py-2",
|
|
149
|
+
icon: "sg:h-9 sg:w-9"
|
|
150
150
|
}
|
|
151
151
|
},
|
|
152
152
|
defaultVariants: {
|
|
@@ -170,14 +170,14 @@ var Button = React2__namespace.forwardRef(
|
|
|
170
170
|
);
|
|
171
171
|
Button.displayName = "Button";
|
|
172
172
|
var badgeVariants = classVarianceAuthority.cva(
|
|
173
|
-
"sg
|
|
173
|
+
"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 sg:focus:outline-hidden sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2",
|
|
174
174
|
{
|
|
175
175
|
variants: {
|
|
176
176
|
variant: {
|
|
177
|
-
default: "sg
|
|
178
|
-
purple: "sg
|
|
179
|
-
green: "sg
|
|
180
|
-
outline: "sg
|
|
177
|
+
default: "sg:border-transparent sg:bg-orange sg:text-orange-foreground sg:shadow sg:hover:bg-orange/80",
|
|
178
|
+
purple: "sg:border-transparent sg:bg-purple sg:text-purple-foreground sg:shadow sg:hover:bg-purple/80",
|
|
179
|
+
green: "sg:border-transparent sg:bg-green sg:text-green-foreground sg:shadow sg:hover:bg-green/80",
|
|
180
|
+
outline: "sg:text-foreground"
|
|
181
181
|
}
|
|
182
182
|
},
|
|
183
183
|
defaultVariants: {
|
|
@@ -189,24 +189,24 @@ function Badge({ className, variant, ...props }) {
|
|
|
189
189
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(badgeVariants({ variant }), className), ...props });
|
|
190
190
|
}
|
|
191
191
|
var bgColor = {
|
|
192
|
-
transparent: "sg
|
|
193
|
-
white: "sg
|
|
194
|
-
black: "sg
|
|
195
|
-
orange: "sg
|
|
196
|
-
purple: "sg
|
|
192
|
+
transparent: "sg:bg-transparent",
|
|
193
|
+
white: "sg:bg-white",
|
|
194
|
+
black: "sg:bg-black",
|
|
195
|
+
orange: "sg:bg-orange",
|
|
196
|
+
purple: "sg:bg-purple"
|
|
197
197
|
};
|
|
198
|
-
var layoutVariants = classVarianceAuthority.cva("sg
|
|
198
|
+
var layoutVariants = classVarianceAuthority.cva("sg:grid sg:grid-cols-1 sg:gap-4", {
|
|
199
199
|
variants: {
|
|
200
200
|
type: {
|
|
201
|
-
full: "sg
|
|
202
|
-
col: "sg
|
|
201
|
+
full: "sg:w-full sg:px-4",
|
|
202
|
+
col: "sg:mx-auto sg:max-w-[768px] sg:px-4 sg:md:px-0"
|
|
203
203
|
},
|
|
204
204
|
cols: {
|
|
205
205
|
"100": "",
|
|
206
|
-
"66-33": "md:
|
|
207
|
-
"50-50": "md:
|
|
208
|
-
"33-33-33": "md:
|
|
209
|
-
"25-25-25-25": "md:
|
|
206
|
+
"66-33": "sg:md:grid-cols-2",
|
|
207
|
+
"50-50": "sg:md:grid-cols-2",
|
|
208
|
+
"33-33-33": "sg:md:grid-cols-3",
|
|
209
|
+
"25-25-25-25": "sg:md:grid-cols-4"
|
|
210
210
|
},
|
|
211
211
|
bgcolor: bgColor
|
|
212
212
|
},
|
package/dist/main.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/utils.ts","../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"],"names":["extendTailwindMerge","twMerge","clsx","cva","jsx","React","Slot","React2","Fragment"],"mappings":"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","file":"main.cjs","sourcesContent":["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 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 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 type: {\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 type: \"col\",\n cols: \"100\",\n },\n});\n\nexport interface LayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof layoutVariants> {}\n\nfunction Layout({\n children,\n className,\n type,\n cols,\n bgcolor,\n ...props\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\n {...props}\n className={cn(bgColor[bgcolor ?? \"transparent\"], className)}\n >\n <div className={cn(layoutVariants({ type, 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"]}
|
|
1
|
+
{"version":3,"sources":["../lib/utils.ts","../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"],"names":["extendTailwindMerge","twMerge","clsx","cva","jsx","React","Slot","React2","Fragment"],"mappings":"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","file":"main.cjs","sourcesContent":["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 headingVariants = cva(\"\", {\r\n variants: {\r\n variant: {\r\n h1: \"sg:text-4xl sg:font-extrabold sg:tracking-tight sg:lg:text-5xl\",\r\n h2: \"sg:text-3xl sg:font-semibold sg:tracking-tight sg:transition-colors sg:first: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 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 sg:focus-visible:outline-hidden focus-visible:ring-offset-2 sg:focus-visible:ring-2 sg:focus-visible:ring-ring sg:disabled:pointer-events-none sg:disabled:opacity-50 sg:[&_svg]:pointer-events-none sg:[&_svg]:size-4 sg:[&_svg]:shrink-0\",\n {\n variants: {\n variant: {\n primary:\n \"sg:bg-orange sg:text-orange-foreground sg:shadow sg:hover:bg-orange/90\",\n secondary:\n \"sg:bg-purple sg:text-purple-foreground sg:shadow-sm sg:hover:bg-purple/90\",\n destructive:\n \"sg:bg-red sg:text-red-foreground sg:shadow-sm sg:hover:bg-red/90\",\n outline:\n \"sg:border sg:border-orange sg:bg-white sg:shadow-sm sg:hover:bg-gray/20\",\n ghost: \"sg:hover:bg-accent sg:hover:text-accent-foreground\",\n link: \"sg:text-primary sg:underline-offset-4 sg:hover: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:py-2 sg:text-xs\",\n lg: \"sg:h-10 sg:rounded-md sg:px-8 sg:py-2\",\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 sg:focus:outline-hidden sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"sg:border-transparent sg:bg-orange sg:text-orange-foreground sg:shadow sg:hover:bg-orange/80\",\n purple:\n \"sg:border-transparent sg:bg-purple sg:text-purple-foreground sg:shadow sg:hover:bg-purple/80\",\n green:\n \"sg:border-transparent sg:bg-green sg:text-green-foreground sg:shadow sg:hover: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 type: {\n full: \"sg:w-full sg:px-4\",\n col: \"sg:mx-auto sg:max-w-[768px] sg:px-4 sg:md:px-0\",\n },\n cols: {\n \"100\": \"\",\n \"66-33\": \"sg:md:grid-cols-2\",\n \"50-50\": \"sg:md:grid-cols-2\",\n \"33-33-33\": \"sg:md:grid-cols-3\",\n \"25-25-25-25\": \"sg:md:grid-cols-4\",\n },\n bgcolor: bgColor,\n },\n defaultVariants: {\n type: \"col\",\n cols: \"100\",\n },\n});\n\nexport interface LayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof layoutVariants> {}\n\nfunction Layout({\n children,\n className,\n type,\n cols,\n bgcolor,\n ...props\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\n {...props}\n className={cn(bgColor[bgcolor ?? \"transparent\"], className)}\n >\n <div className={cn(layoutVariants({ type, 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"]}
|