@appcorp/shadcn 2.0.0 → 2.0.1
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/components/app-sidebar.js +1 -34
- package/components/audio.js +1 -13
- package/components/dashboard.js +1 -29
- package/components/drawer-generic.js +1 -39
- package/components/enhanced-checkbox.js +1 -39
- package/components/enhanced-combobox.js +1 -271
- package/components/enhanced-drawer-footer.js +1 -30
- package/components/enhanced-drawer-header.js +1 -7
- package/components/enhanced-dropzone-impl.js +1 -218
- package/components/enhanced-dropzone.js +1 -8
- package/components/enhanced-input.js +1 -40
- package/components/enhanced-label.js +1 -22
- package/components/enhanced-radio.js +1 -15
- package/components/enhanced-select.js +1 -33
- package/components/enhanced-slider.js +1 -33
- package/components/enhanced-switch.js +1 -42
- package/components/enhanced-table-footer-action.js +1 -102
- package/components/enhanced-table-footer-page.js +1 -124
- package/components/enhanced-table-footer-pagination.js +1 -108
- package/components/enhanced-table-header-action.js +1 -32
- package/components/enhanced-table-header-search.js +1 -10
- package/components/enhanced-table.js +1 -301
- package/components/enhanced-textarea.js +1 -40
- package/components/field.js +1 -96
- package/components/image-resize-dialog.js +1 -82
- package/components/nav-main.js +1 -40
- package/components/nav-projects.js +1 -39
- package/components/nav-user.js +1 -52
- package/components/show-toast.js +1 -7
- package/components/sidebar.js +1 -257
- package/components/team-switcher.js +1 -42
- package/components/theme-provider.js +1 -112
- package/components/timeline.js +1 -13
- package/components/tooltip.js +1 -36
- package/components/ui/accordion.js +1 -37
- package/components/ui/alert-dialog.js +1 -63
- package/components/ui/alert.js +1 -41
- package/components/ui/area-chart-v1-impl.js +1 -75
- package/components/ui/area-chart-v1.js +1 -5
- package/components/ui/aspect-ratio.js +1 -4
- package/components/ui/avatar.js +1 -31
- package/components/ui/badge.js +1 -32
- package/components/ui/breadcrumb.js +1 -54
- package/components/ui/button.js +1 -44
- package/components/ui/calendar-impl.js +1 -55
- package/components/ui/calendar.js +1 -6
- package/components/ui/card.js +1 -44
- package/components/ui/carousel-impl.js +1 -117
- package/components/ui/carousel.js +1 -9
- package/components/ui/chart-impl.js +6 -161
- package/components/ui/chart.js +1 -10
- package/components/ui/checkbox.js +1 -24
- package/components/ui/collapsible.js +1 -6
- package/components/ui/combobox.js +1 -52
- package/components/ui/command-impl.js +1 -63
- package/components/ui/command.js +1 -13
- package/components/ui/context-menu.js +1 -80
- package/components/ui/dialog.js +1 -57
- package/components/ui/drawer-impl.js +1 -56
- package/components/ui/drawer.js +1 -14
- package/components/ui/dropdown-menu.js +1 -82
- package/components/ui/form.d.ts +1 -1
- package/components/ui/form.js +1 -78
- package/components/ui/hover-card.js +1 -23
- package/components/ui/input-otp-impl.js +1 -43
- package/components/ui/input-otp.js +1 -8
- package/components/ui/input.js +1 -19
- package/components/ui/label.js +1 -23
- package/components/ui/language-selector.js +1 -25
- package/components/ui/menubar.js +1 -103
- package/components/ui/navigation-menu.js +1 -59
- package/components/ui/pagination.js +1 -60
- package/components/ui/popover.js +1 -25
- package/components/ui/progress.js +1 -22
- package/components/ui/radio-group.js +1 -29
- package/components/ui/resizable-impl.js +1 -27
- package/components/ui/resizable.js +1 -7
- package/components/ui/scroll-area.js +1 -32
- package/components/ui/select.js +1 -71
- package/components/ui/separator.js +1 -21
- package/components/ui/sheet.js +1 -71
- package/components/ui/skeleton.js +1 -18
- package/components/ui/slider.js +1 -32
- package/components/ui/sonner.js +1 -28
- package/components/ui/switch.js +1 -22
- package/components/ui/table.js +1 -55
- package/components/ui/tabs.js +1 -32
- package/components/ui/textarea.js +1 -19
- package/components/ui/theme-switcher.js +1 -102
- package/components/ui/toggle.js +1 -39
- package/data/admin-dashboard.js +1 -301
- package/hooks/use-enhanced-combobox.js +1 -73
- package/hooks/use-mobile.js +1 -15
- package/hooks/use-outside-click.js +1 -19
- package/lib/themes.js +1 -147
- package/lib/toast-utils.js +1 -170
- package/lib/utils.js +1 -5
- package/package.json +2 -2
- package/utils/transform-breadcrumbs.js +1 -7
- package/utils/transform-navitems.js +1 -18
package/components/ui/sheet.js
CHANGED
|
@@ -1,71 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import * as React from "react";
|
|
14
|
-
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
15
|
-
import { cva } from "class-variance-authority";
|
|
16
|
-
import { cn } from "../../lib/utils";
|
|
17
|
-
import { Cross2Icon } from "@radix-ui/react-icons";
|
|
18
|
-
const Sheet = SheetPrimitive.Root;
|
|
19
|
-
const SheetTrigger = SheetPrimitive.Trigger;
|
|
20
|
-
const SheetClose = SheetPrimitive.Close;
|
|
21
|
-
const SheetPortal = SheetPrimitive.Portal;
|
|
22
|
-
const SheetOverlay = React.forwardRef((_a, ref) => {
|
|
23
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
24
|
-
return (React.createElement(SheetPrimitive.Overlay, Object.assign({ className: cn("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", className) }, props, { ref: ref })));
|
|
25
|
-
});
|
|
26
|
-
SheetOverlay.displayName = SheetPrimitive.Overlay.displayName;
|
|
27
|
-
const sheetVariants = cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out", {
|
|
28
|
-
variants: {
|
|
29
|
-
side: {
|
|
30
|
-
top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
|
|
31
|
-
bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
|
|
32
|
-
left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
|
|
33
|
-
right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm",
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
defaultVariants: {
|
|
37
|
-
side: "right",
|
|
38
|
-
},
|
|
39
|
-
});
|
|
40
|
-
const SheetContent = React.forwardRef((_a, ref) => {
|
|
41
|
-
var { side = "right", className, children } = _a, props = __rest(_a, ["side", "className", "children"]);
|
|
42
|
-
return (React.createElement(SheetPortal, null,
|
|
43
|
-
React.createElement(SheetOverlay, null),
|
|
44
|
-
React.createElement(SheetPrimitive.Content, Object.assign({ ref: ref, className: cn(sheetVariants({ side }), className) }, props),
|
|
45
|
-
React.createElement(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary" },
|
|
46
|
-
React.createElement(Cross2Icon, { className: "h-4 w-4" }),
|
|
47
|
-
React.createElement("span", { className: "sr-only" }, "Close")),
|
|
48
|
-
children)));
|
|
49
|
-
});
|
|
50
|
-
SheetContent.displayName = SheetPrimitive.Content.displayName;
|
|
51
|
-
const SheetHeader = (_a) => {
|
|
52
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
53
|
-
return (React.createElement("div", Object.assign({ className: cn("flex flex-col space-y-2 text-center sm:text-left", className) }, props)));
|
|
54
|
-
};
|
|
55
|
-
SheetHeader.displayName = "SheetHeader";
|
|
56
|
-
const SheetFooter = (_a) => {
|
|
57
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
58
|
-
return (React.createElement("div", Object.assign({ className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className) }, props)));
|
|
59
|
-
};
|
|
60
|
-
SheetFooter.displayName = "SheetFooter";
|
|
61
|
-
const SheetTitle = React.forwardRef((_a, ref) => {
|
|
62
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
63
|
-
return (React.createElement(SheetPrimitive.Title, Object.assign({ ref: ref, className: cn("text-lg font-semibold text-foreground", className) }, props)));
|
|
64
|
-
});
|
|
65
|
-
SheetTitle.displayName = SheetPrimitive.Title.displayName;
|
|
66
|
-
const SheetDescription = React.forwardRef((_a, ref) => {
|
|
67
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
68
|
-
return (React.createElement(SheetPrimitive.Description, Object.assign({ ref: ref, className: cn("text-sm text-muted-foreground", className) }, props)));
|
|
69
|
-
});
|
|
70
|
-
SheetDescription.displayName = SheetPrimitive.Description.displayName;
|
|
71
|
-
export { Sheet, SheetPortal, SheetOverlay, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|
|
1
|
+
"use strict";"use client";var l=function(e,o){var a={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&o.indexOf(t)<0&&(a[t]=e[t]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,t=Object.getOwnPropertySymbols(e);n<t.length;n++)o.indexOf(t[n])<0&&Object.prototype.propertyIsEnumerable.call(e,t[n])&&(a[t[n]]=e[t[n]]);return a};import*as s from"react";import*as r from"@radix-ui/react-dialog";import{cva as b}from"class-variance-authority";import{cn as i}from"../../lib/utils";import{Cross2Icon as y}from"@radix-ui/react-icons";const N=r.Root,v=r.Trigger,x=r.Close,d=r.Portal,c=s.forwardRef((e,o)=>{var{className:a}=e,t=l(e,["className"]);return s.createElement(r.Overlay,Object.assign({className:i("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a)},t,{ref:o}))});c.displayName=r.Overlay.displayName;const O=b("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),m=s.forwardRef((e,o)=>{var{side:a="right",className:t,children:n}=e,h=l(e,["side","className","children"]);return s.createElement(d,null,s.createElement(c,null),s.createElement(r.Content,Object.assign({ref:o,className:i(O({side:a}),t)},h),s.createElement(r.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary"},s.createElement(y,{className:"h-4 w-4"}),s.createElement("span",{className:"sr-only"},"Close")),n))});m.displayName=r.Content.displayName;const p=e=>{var{className:o}=e,a=l(e,["className"]);return s.createElement("div",Object.assign({className:i("flex flex-col space-y-2 text-center sm:text-left",o)},a))};p.displayName="SheetHeader";const f=e=>{var{className:o}=e,a=l(e,["className"]);return s.createElement("div",Object.assign({className:i("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",o)},a))};f.displayName="SheetFooter";const u=s.forwardRef((e,o)=>{var{className:a}=e,t=l(e,["className"]);return s.createElement(r.Title,Object.assign({ref:o,className:i("text-lg font-semibold text-foreground",a)},t))});u.displayName=r.Title.displayName;const g=s.forwardRef((e,o)=>{var{className:a}=e,t=l(e,["className"]);return s.createElement(r.Description,Object.assign({ref:o,className:i("text-sm text-muted-foreground",a)},t))});g.displayName=r.Description.displayName;export{N as Sheet,d as SheetPortal,c as SheetOverlay,v as SheetTrigger,x as SheetClose,m as SheetContent,p as SheetHeader,f as SheetFooter,u as SheetTitle,g as SheetDescription};
|
|
@@ -1,18 +1 @@
|
|
|
1
|
-
var
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import React from "react";
|
|
13
|
-
import { cn } from "../../lib/utils";
|
|
14
|
-
function Skeleton(_a) {
|
|
15
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
16
|
-
return (React.createElement("div", Object.assign({ className: cn("animate-pulse rounded-md bg-primary/10", className) }, props)));
|
|
17
|
-
}
|
|
18
|
-
export { Skeleton };
|
|
1
|
+
"use strict";var a=function(e,n){var o={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&n.indexOf(t)<0&&(o[t]=e[t]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,t=Object.getOwnPropertySymbols(e);r<t.length;r++)n.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(e,t[r])&&(o[t[r]]=e[t[r]]);return o};import c from"react";import{cn as l}from"../../lib/utils";function p(e){var{className:n}=e,o=a(e,["className"]);return c.createElement("div",Object.assign({className:l("animate-pulse rounded-md bg-primary/10",n)},o))}export{p as Skeleton};
|
package/components/ui/slider.js
CHANGED
|
@@ -1,32 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import * as React from "react";
|
|
14
|
-
import * as SliderPrimitive from "@radix-ui/react-slider";
|
|
15
|
-
import { cn } from "../../lib/utils";
|
|
16
|
-
const Slider = React.forwardRef((_a, ref) => {
|
|
17
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
18
|
-
return (React.createElement(SliderPrimitive.Root, Object.assign({ ref: ref, className: cn("relative flex w-full touch-none select-none items-center", className) }, props),
|
|
19
|
-
React.createElement(SliderPrimitive.Track, { className: "relative h-1.5 w-full grow overflow-hidden rounded-full bg-primary/20" },
|
|
20
|
-
React.createElement(SliderPrimitive.Range, { className: "absolute h-full bg-primary" })),
|
|
21
|
-
// Render one thumb per value when used as a range (defaultValue or value is an array)
|
|
22
|
-
(() => {
|
|
23
|
-
const values = Array.isArray(props.value)
|
|
24
|
-
? props.value
|
|
25
|
-
: Array.isArray(props.defaultValue)
|
|
26
|
-
? props.defaultValue
|
|
27
|
-
: [undefined];
|
|
28
|
-
return values.map((_, i) => (React.createElement(SliderPrimitive.Thumb, { key: i, className: "block h-4 w-4 rounded-full border border-primary/50 bg-background shadow transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50" })));
|
|
29
|
-
})()));
|
|
30
|
-
});
|
|
31
|
-
Slider.displayName = SliderPrimitive.Root.displayName;
|
|
32
|
-
export { Slider };
|
|
1
|
+
"use strict";"use client";var c=function(r,n){var a={};for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&n.indexOf(e)<0&&(a[e]=r[e]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var t=0,e=Object.getOwnPropertySymbols(r);t<e.length;t++)n.indexOf(e[t])<0&&Object.prototype.propertyIsEnumerable.call(r,e[t])&&(a[e[t]]=r[e[t]]);return a};import*as l from"react";import*as o from"@radix-ui/react-slider";import{cn as u}from"../../lib/utils";const i=l.forwardRef((r,n)=>{var{className:a}=r,e=c(r,["className"]);return l.createElement(o.Root,Object.assign({ref:n,className:u("relative flex w-full touch-none select-none items-center",a)},e),l.createElement(o.Track,{className:"relative h-1.5 w-full grow overflow-hidden rounded-full bg-primary/20"},l.createElement(o.Range,{className:"absolute h-full bg-primary"})),(Array.isArray(e.value)?e.value:Array.isArray(e.defaultValue)?e.defaultValue:[void 0]).map((f,s)=>l.createElement(o.Thumb,{key:s,className:"block h-4 w-4 rounded-full border border-primary/50 bg-background shadow transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"})))});i.displayName=o.Root.displayName;export{i as Slider};
|
package/components/ui/sonner.js
CHANGED
|
@@ -1,28 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import React from "react";
|
|
14
|
-
import { useTheme } from "next-themes";
|
|
15
|
-
import { Toaster as Sonner } from "sonner";
|
|
16
|
-
const Toaster = (_a) => {
|
|
17
|
-
var props = __rest(_a, []);
|
|
18
|
-
const { theme = "system" } = useTheme();
|
|
19
|
-
return (React.createElement(Sonner, Object.assign({ theme: theme, className: "toaster group", toastOptions: {
|
|
20
|
-
classNames: {
|
|
21
|
-
toast: "group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",
|
|
22
|
-
description: "group-[.toast]:text-muted-foreground",
|
|
23
|
-
actionButton: "group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",
|
|
24
|
-
cancelButton: "group-[.toast]:bg-muted group-[.toast]:text-muted-foreground",
|
|
25
|
-
},
|
|
26
|
-
} }, props)));
|
|
27
|
-
};
|
|
28
|
-
export { Toaster };
|
|
1
|
+
"use strict";"use client";var s=function(r,a){var e={};for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&a.indexOf(t)<0&&(e[t]=r[t]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,t=Object.getOwnPropertySymbols(r);o<t.length;o++)a.indexOf(t[o])<0&&Object.prototype.propertyIsEnumerable.call(r,t[o])&&(e[t[o]]=r[t[o]]);return e};import n from"react";import{useTheme as p}from"next-themes";import{Toaster as u}from"sonner";const g=r=>{var a=s(r,[]);const{theme:e="system"}=p();return n.createElement(u,Object.assign({theme:e,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}}},a))};export{g as Toaster};
|
package/components/ui/switch.js
CHANGED
|
@@ -1,22 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import * as React from "react";
|
|
14
|
-
import * as SwitchPrimitives from "@radix-ui/react-switch";
|
|
15
|
-
import { cn } from "../../lib/utils";
|
|
16
|
-
const Switch = React.forwardRef((_a, ref) => {
|
|
17
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
18
|
-
return (React.createElement(SwitchPrimitives.Root, Object.assign({ className: cn("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input", className) }, props, { ref: ref }),
|
|
19
|
-
React.createElement(SwitchPrimitives.Thumb, { className: cn("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0") })));
|
|
20
|
-
});
|
|
21
|
-
Switch.displayName = SwitchPrimitives.Root.displayName;
|
|
22
|
-
export { Switch };
|
|
1
|
+
"use strict";"use client";var l=function(t,a){var o={};for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&a.indexOf(e)<0&&(o[e]=t[e]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,e=Object.getOwnPropertySymbols(t);r<e.length;r++)a.indexOf(e[r])<0&&Object.prototype.propertyIsEnumerable.call(t,e[r])&&(o[e[r]]=t[e[r]]);return o};import*as n from"react";import*as s from"@radix-ui/react-switch";import{cn as i}from"../../lib/utils";const c=n.forwardRef((t,a)=>{var{className:o}=t,e=l(t,["className"]);return n.createElement(s.Root,Object.assign({className:i("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",o)},e,{ref:a}),n.createElement(s.Thumb,{className:i("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")}))});c.displayName=s.Root.displayName;export{c as Switch};
|
package/components/ui/table.js
CHANGED
|
@@ -1,55 +1 @@
|
|
|
1
|
-
var
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import * as React from "react";
|
|
13
|
-
import { cn } from "../../lib/utils";
|
|
14
|
-
const Table = React.forwardRef((_a, ref) => {
|
|
15
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
16
|
-
return (React.createElement("div", { className: "relative w-full overflow-auto" },
|
|
17
|
-
React.createElement("table", Object.assign({ ref: ref, className: cn("w-full caption-bottom text-sm", className) }, props))));
|
|
18
|
-
});
|
|
19
|
-
Table.displayName = "Table";
|
|
20
|
-
const TableHeader = React.forwardRef((_a, ref) => {
|
|
21
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
22
|
-
return (React.createElement("thead", Object.assign({ ref: ref, className: cn("[&_tr]:border-b", className) }, props)));
|
|
23
|
-
});
|
|
24
|
-
TableHeader.displayName = "TableHeader";
|
|
25
|
-
const TableBody = React.forwardRef((_a, ref) => {
|
|
26
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
27
|
-
return (React.createElement("tbody", Object.assign({ ref: ref, className: cn("[&_tr:last-child]:border-0", className) }, props)));
|
|
28
|
-
});
|
|
29
|
-
TableBody.displayName = "TableBody";
|
|
30
|
-
const TableFooter = React.forwardRef((_a, ref) => {
|
|
31
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
32
|
-
return (React.createElement("tfoot", Object.assign({ ref: ref, className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className) }, props)));
|
|
33
|
-
});
|
|
34
|
-
TableFooter.displayName = "TableFooter";
|
|
35
|
-
const TableRow = React.forwardRef((_a, ref) => {
|
|
36
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
37
|
-
return (React.createElement("tr", Object.assign({ ref: ref, className: cn("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted", className) }, props)));
|
|
38
|
-
});
|
|
39
|
-
TableRow.displayName = "TableRow";
|
|
40
|
-
const TableHead = React.forwardRef((_a, ref) => {
|
|
41
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
42
|
-
return (React.createElement("th", Object.assign({ ref: ref, className: cn("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className) }, props)));
|
|
43
|
-
});
|
|
44
|
-
TableHead.displayName = "TableHead";
|
|
45
|
-
const TableCell = React.forwardRef((_a, ref) => {
|
|
46
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
47
|
-
return (React.createElement("td", Object.assign({ ref: ref, className: cn("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className) }, props)));
|
|
48
|
-
});
|
|
49
|
-
TableCell.displayName = "TableCell";
|
|
50
|
-
const TableCaption = React.forwardRef((_a, ref) => {
|
|
51
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
52
|
-
return (React.createElement("caption", Object.assign({ ref: ref, className: cn("mt-4 text-sm text-muted-foreground", className) }, props)));
|
|
53
|
-
});
|
|
54
|
-
TableCaption.displayName = "TableCaption";
|
|
55
|
-
export { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption, };
|
|
1
|
+
"use strict";var l=function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var c=0,a=Object.getOwnPropertySymbols(e);c<a.length;c++)t.indexOf(a[c])<0&&Object.prototype.propertyIsEnumerable.call(e,a[c])&&(r[a[c]]=e[a[c]]);return r};import*as s from"react";import{cn as o}from"../../lib/utils";const m=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("div",{className:"relative w-full overflow-auto"},s.createElement("table",Object.assign({ref:t,className:o("w-full caption-bottom text-sm",r)},a)))});m.displayName="Table";const n=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("thead",Object.assign({ref:t,className:o("[&_tr]:border-b",r)},a))});n.displayName="TableHeader";const b=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("tbody",Object.assign({ref:t,className:o("[&_tr:last-child]:border-0",r)},a))});b.displayName="TableBody";const d=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("tfoot",Object.assign({ref:t,className:o("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",r)},a))});d.displayName="TableFooter";const f=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("tr",Object.assign({ref:t,className:o("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",r)},a))});f.displayName="TableRow";const p=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("th",Object.assign({ref:t,className:o("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",r)},a))});p.displayName="TableHead";const i=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("td",Object.assign({ref:t,className:o("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",r)},a))});i.displayName="TableCell";const N=s.forwardRef((e,t)=>{var{className:r}=e,a=l(e,["className"]);return s.createElement("caption",Object.assign({ref:t,className:o("mt-4 text-sm text-muted-foreground",r)},a))});N.displayName="TableCaption";export{m as Table,n as TableHeader,b as TableBody,d as TableFooter,p as TableHead,f as TableRow,i as TableCell,N as TableCaption};
|
package/components/ui/tabs.js
CHANGED
|
@@ -1,32 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import * as React from "react";
|
|
14
|
-
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
15
|
-
import { cn } from "../../lib/utils";
|
|
16
|
-
const Tabs = TabsPrimitive.Root;
|
|
17
|
-
const TabsList = React.forwardRef((_a, ref) => {
|
|
18
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
19
|
-
return (React.createElement(TabsPrimitive.List, Object.assign({ ref: ref, className: cn("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground", className) }, props)));
|
|
20
|
-
});
|
|
21
|
-
TabsList.displayName = TabsPrimitive.List.displayName;
|
|
22
|
-
const TabsTrigger = React.forwardRef((_a, ref) => {
|
|
23
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
24
|
-
return (React.createElement(TabsPrimitive.Trigger, Object.assign({ ref: ref, className: cn("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow", className) }, props)));
|
|
25
|
-
});
|
|
26
|
-
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
|
|
27
|
-
const TabsContent = React.forwardRef((_a, ref) => {
|
|
28
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
29
|
-
return (React.createElement(TabsPrimitive.Content, Object.assign({ ref: ref, className: cn("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", className) }, props)));
|
|
30
|
-
});
|
|
31
|
-
TabsContent.displayName = TabsPrimitive.Content.displayName;
|
|
32
|
-
export { Tabs, TabsList, TabsTrigger, TabsContent };
|
|
1
|
+
"use strict";"use client";var o=function(e,s){var r={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&s.indexOf(t)<0&&(r[t]=e[t]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,t=Object.getOwnPropertySymbols(e);i<t.length;i++)s.indexOf(t[i])<0&&Object.prototype.propertyIsEnumerable.call(e,t[i])&&(r[t[i]]=e[t[i]]);return r};import*as n from"react";import*as a from"@radix-ui/react-tabs";import{cn as c}from"../../lib/utils";const d=a.Root,l=n.forwardRef((e,s)=>{var{className:r}=e,t=o(e,["className"]);return n.createElement(a.List,Object.assign({ref:s,className:c("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",r)},t))});l.displayName=a.List.displayName;const f=n.forwardRef((e,s)=>{var{className:r}=e,t=o(e,["className"]);return n.createElement(a.Trigger,Object.assign({ref:s,className:c("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",r)},t))});f.displayName=a.Trigger.displayName;const m=n.forwardRef((e,s)=>{var{className:r}=e,t=o(e,["className"]);return n.createElement(a.Content,Object.assign({ref:s,className:c("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",r)},t))});m.displayName=a.Content.displayName;export{d as Tabs,l as TabsList,f as TabsTrigger,m as TabsContent};
|
|
@@ -1,19 +1 @@
|
|
|
1
|
-
var
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import * as React from "react";
|
|
13
|
-
import { cn } from "../../lib/utils";
|
|
14
|
-
const Textarea = React.forwardRef((_a, ref) => {
|
|
15
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
16
|
-
return (React.createElement("textarea", Object.assign({ className: cn("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", className), ref: ref }, props)));
|
|
17
|
-
});
|
|
18
|
-
Textarea.displayName = "Textarea";
|
|
19
|
-
export { Textarea };
|
|
1
|
+
"use strict";var s=function(r,a){var o={};for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&a.indexOf(e)<0&&(o[e]=r[e]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var t=0,e=Object.getOwnPropertySymbols(r);t<e.length;t++)a.indexOf(e[t])<0&&Object.prototype.propertyIsEnumerable.call(r,e[t])&&(o[e[t]]=r[e[t]]);return o};import*as n from"react";import{cn as i}from"../../lib/utils";const l=n.forwardRef((r,a)=>{var{className:o}=r,e=s(r,["className"]);return n.createElement("textarea",Object.assign({className:i("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",o),ref:a},e))});l.displayName="Textarea";export{l as Textarea};
|
|
@@ -1,102 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import * as React from "react";
|
|
14
|
-
import { useTheme } from "next-themes";
|
|
15
|
-
import { Check, Moon, Palette, Sun } from "lucide-react";
|
|
16
|
-
import { Button } from "./button";
|
|
17
|
-
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "./dropdown-menu";
|
|
18
|
-
import { cn } from "../../lib/utils";
|
|
19
|
-
// Available color themes from globals.css
|
|
20
|
-
const colorThemes = [
|
|
21
|
-
{ name: "default", label: "Default", color: "bg-zinc-900" },
|
|
22
|
-
{ name: "blue", label: "Blue", color: "bg-blue-600" },
|
|
23
|
-
{ name: "green", label: "Green", color: "bg-green-600" },
|
|
24
|
-
{ name: "orange", label: "Orange", color: "bg-orange-600" },
|
|
25
|
-
{ name: "red", label: "Red", color: "bg-red-600" },
|
|
26
|
-
{ name: "violet", label: "Violet", color: "bg-violet-600" },
|
|
27
|
-
{ name: "yellow", label: "Yellow", color: "bg-yellow-500" },
|
|
28
|
-
];
|
|
29
|
-
export const ThemeSwitcher = (_a) => {
|
|
30
|
-
var { className } = _a, props = __rest(_a, ["className"]);
|
|
31
|
-
const { theme, setTheme, resolvedTheme } = useTheme();
|
|
32
|
-
const [mounted, setMounted] = React.useState(false);
|
|
33
|
-
const [colorTheme, setColorTheme] = React.useState("default");
|
|
34
|
-
// Get the current mode (light/dark)
|
|
35
|
-
const isDark = resolvedTheme === "dark" || theme === "dark";
|
|
36
|
-
React.useEffect(() => {
|
|
37
|
-
setMounted(true);
|
|
38
|
-
// Initialize color theme from localStorage first (persisted preference),
|
|
39
|
-
// otherwise fall back to any existing class on the document element.
|
|
40
|
-
const root = document.documentElement;
|
|
41
|
-
try {
|
|
42
|
-
const persisted = window.localStorage.getItem("ui-theme-color");
|
|
43
|
-
if (persisted) {
|
|
44
|
-
setColorTheme(persisted);
|
|
45
|
-
// Apply persisted theme class
|
|
46
|
-
colorThemes.forEach((t) => root.classList.remove(`theme-${t.name}`));
|
|
47
|
-
if (persisted !== "default")
|
|
48
|
-
root.classList.add(`theme-${persisted}`);
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
catch (_a) {
|
|
53
|
-
// ignore
|
|
54
|
-
}
|
|
55
|
-
const currentColorTheme = colorThemes.find((t) => root.classList.contains(`theme-${t.name}`));
|
|
56
|
-
if (currentColorTheme) {
|
|
57
|
-
setColorTheme(currentColorTheme.name);
|
|
58
|
-
}
|
|
59
|
-
}, []);
|
|
60
|
-
const handleModeToggle = () => {
|
|
61
|
-
setTheme(isDark ? "light" : "dark");
|
|
62
|
-
};
|
|
63
|
-
const handleColorThemeChange = (newColorTheme) => {
|
|
64
|
-
const root = document.documentElement;
|
|
65
|
-
// Remove all theme classes
|
|
66
|
-
colorThemes.forEach((t) => {
|
|
67
|
-
root.classList.remove(`theme-${t.name}`);
|
|
68
|
-
});
|
|
69
|
-
// Add new theme class (except for default which uses :root)
|
|
70
|
-
if (newColorTheme !== "default") {
|
|
71
|
-
root.classList.add(`theme-${newColorTheme}`);
|
|
72
|
-
}
|
|
73
|
-
try {
|
|
74
|
-
window.localStorage.setItem("ui-theme-color", newColorTheme);
|
|
75
|
-
}
|
|
76
|
-
catch (_a) {
|
|
77
|
-
// ignore storage errors
|
|
78
|
-
}
|
|
79
|
-
setColorTheme(newColorTheme);
|
|
80
|
-
};
|
|
81
|
-
if (!mounted) {
|
|
82
|
-
return (React.createElement(Button, Object.assign({ variant: "ghost", size: "icon", className: className }, props),
|
|
83
|
-
React.createElement(Palette, { className: "size-4" })));
|
|
84
|
-
}
|
|
85
|
-
return (React.createElement(DropdownMenu, null,
|
|
86
|
-
React.createElement(DropdownMenuTrigger, { asChild: true },
|
|
87
|
-
React.createElement(Button, Object.assign({ variant: "ghost", size: "icon", "aria-label": "Theme settings", className: className }, props),
|
|
88
|
-
React.createElement(Palette, { className: "size-4" }))),
|
|
89
|
-
React.createElement(DropdownMenuContent, { align: "end", className: "w-48" },
|
|
90
|
-
React.createElement(DropdownMenuLabel, null, "Mode"),
|
|
91
|
-
React.createElement(DropdownMenuItem, { onClick: handleModeToggle }, isDark ? (React.createElement(React.Fragment, null,
|
|
92
|
-
React.createElement(Sun, { className: "mr-2 size-4" }),
|
|
93
|
-
"Light Mode")) : (React.createElement(React.Fragment, null,
|
|
94
|
-
React.createElement(Moon, { className: "mr-2 size-4" }),
|
|
95
|
-
"Dark Mode"))),
|
|
96
|
-
React.createElement(DropdownMenuSeparator, null),
|
|
97
|
-
React.createElement(DropdownMenuLabel, null, "Color Theme"),
|
|
98
|
-
colorThemes.map((t) => (React.createElement(DropdownMenuItem, { key: t.name, onClick: () => handleColorThemeChange(t.name) },
|
|
99
|
-
React.createElement("span", { className: cn("mr-2 size-4 rounded-full", t.color) }),
|
|
100
|
-
t.label,
|
|
101
|
-
colorTheme === t.name && React.createElement(Check, { className: "ml-auto size-4" })))))));
|
|
102
|
-
};
|
|
1
|
+
"use strict";"use client";var O=function(o,c){var r={};for(var a in o)Object.prototype.hasOwnProperty.call(o,a)&&c.indexOf(a)<0&&(r[a]=o[a]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,a=Object.getOwnPropertySymbols(o);n<a.length;n++)c.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(o,a[n])&&(r[a[n]]=o[a[n]]);return r};import*as e from"react";import{useTheme as N}from"next-themes";import{Check as T,Moon as k,Palette as d,Sun as z}from"lucide-react";import{Button as h}from"./button";import{DropdownMenu as D,DropdownMenuContent as S,DropdownMenuItem as f,DropdownMenuLabel as g,DropdownMenuSeparator as C,DropdownMenuTrigger as L}from"./dropdown-menu";import{cn as j}from"../../lib/utils";const s=[{name:"default",label:"Default",color:"bg-zinc-900"},{name:"blue",label:"Blue",color:"bg-blue-600"},{name:"green",label:"Green",color:"bg-green-600"},{name:"orange",label:"Orange",color:"bg-orange-600"},{name:"red",label:"Red",color:"bg-red-600"},{name:"violet",label:"Violet",color:"bg-violet-600"},{name:"yellow",label:"Yellow",color:"bg-yellow-500"}];export const ThemeSwitcher=o=>{var{className:c}=o,r=O(o,["className"]);const{theme:a,setTheme:n,resolvedTheme:b}=N(),[p,E]=e.useState(!1),[w,i]=e.useState("default"),u=b==="dark"||a==="dark";e.useEffect(()=>{E(!0);const t=document.documentElement;try{const l=window.localStorage.getItem("ui-theme-color");if(l){i(l),s.forEach(M=>t.classList.remove(`theme-${M.name}`)),l!=="default"&&t.classList.add(`theme-${l}`);return}}catch{}const m=s.find(l=>t.classList.contains(`theme-${l.name}`));m&&i(m.name)},[]);const y=()=>{n(u?"light":"dark")},v=t=>{const m=document.documentElement;s.forEach(l=>{m.classList.remove(`theme-${l.name}`)}),t!=="default"&&m.classList.add(`theme-${t}`);try{window.localStorage.setItem("ui-theme-color",t)}catch{}i(t)};return p?e.createElement(D,null,e.createElement(L,{asChild:!0},e.createElement(h,Object.assign({variant:"ghost",size:"icon","aria-label":"Theme settings",className:c},r),e.createElement(d,{className:"size-4"}))),e.createElement(S,{align:"end",className:"w-48"},e.createElement(g,null,"Mode"),e.createElement(f,{onClick:y},u?e.createElement(e.Fragment,null,e.createElement(z,{className:"mr-2 size-4"}),"Light Mode"):e.createElement(e.Fragment,null,e.createElement(k,{className:"mr-2 size-4"}),"Dark Mode")),e.createElement(C,null),e.createElement(g,null,"Color Theme"),s.map(t=>e.createElement(f,{key:t.name,onClick:()=>v(t.name)},e.createElement("span",{className:j("mr-2 size-4 rounded-full",t.color)}),t.label,w===t.name&&e.createElement(T,{className:"ml-auto size-4"}))))):e.createElement(h,Object.assign({variant:"ghost",size:"icon",className:c},r),e.createElement(d,{className:"size-4"}))};
|
package/components/ui/toggle.js
CHANGED
|
@@ -1,39 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import * as React from "react";
|
|
14
|
-
import * as TogglePrimitive from "@radix-ui/react-toggle";
|
|
15
|
-
import { cva } from "class-variance-authority";
|
|
16
|
-
import { cn } from "../../lib/utils";
|
|
17
|
-
const toggleVariants = cva("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", {
|
|
18
|
-
variants: {
|
|
19
|
-
variant: {
|
|
20
|
-
default: "bg-transparent",
|
|
21
|
-
outline: "border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground",
|
|
22
|
-
},
|
|
23
|
-
size: {
|
|
24
|
-
default: "h-9 px-2 min-w-9",
|
|
25
|
-
sm: "h-8 px-1.5 min-w-8",
|
|
26
|
-
lg: "h-10 px-2.5 min-w-10",
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
defaultVariants: {
|
|
30
|
-
variant: "default",
|
|
31
|
-
size: "default",
|
|
32
|
-
},
|
|
33
|
-
});
|
|
34
|
-
const Toggle = React.forwardRef((_a, ref) => {
|
|
35
|
-
var { className, variant, size } = _a, props = __rest(_a, ["className", "variant", "size"]);
|
|
36
|
-
return (React.createElement(TogglePrimitive.Root, Object.assign({ ref: ref, className: cn(toggleVariants({ variant, size, className })) }, props)));
|
|
37
|
-
});
|
|
38
|
-
Toggle.displayName = TogglePrimitive.Root.displayName;
|
|
39
|
-
export { Toggle, toggleVariants };
|
|
1
|
+
"use strict";"use client";var f=function(t,o){var n={};for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&o.indexOf(e)<0&&(n[e]=t[e]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,e=Object.getOwnPropertySymbols(t);r<e.length;r++)o.indexOf(e[r])<0&&Object.prototype.propertyIsEnumerable.call(t,e[r])&&(n[e[r]]=t[e[r]]);return n};import*as a from"react";import*as i from"@radix-ui/react-toggle";import{cva as m}from"class-variance-authority";import{cn as d}from"../../lib/utils";const s=m("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}}),l=a.forwardRef((t,o)=>{var{className:n,variant:e,size:r}=t,c=f(t,["className","variant","size"]);return a.createElement(i.Root,Object.assign({ref:o,className:d(s({variant:e,size:r,className:n}))},c))});l.displayName=i.Root.displayName;export{l as Toggle,s as toggleVariants};
|