@pulog/ui 0.0.0-stage → 0.1.0
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/README.md +95 -2
- package/dist/button-Cne9rSSH.d.ts +16 -0
- package/dist/carousel.d.ts +34 -0
- package/dist/carousel.js +196 -0
- package/dist/carousel.js.map +1 -0
- package/dist/chart.d.ts +48 -0
- package/dist/chart.js +248 -0
- package/dist/chart.js.map +1 -0
- package/dist/chunk-JYU5CUA4.js +11 -0
- package/dist/chunk-JYU5CUA4.js.map +1 -0
- package/dist/chunk-LIIDSNMG.js +61 -0
- package/dist/chunk-LIIDSNMG.js.map +1 -0
- package/dist/drawer.d.ts +16 -0
- package/dist/drawer.js +120 -0
- package/dist/drawer.js.map +1 -0
- package/dist/index.d.ts +513 -0
- package/dist/index.js +4281 -0
- package/dist/index.js.map +1 -0
- package/dist/input-otp.d.ts +14 -0
- package/dist/input-otp.js +82 -0
- package/dist/input-otp.js.map +1 -0
- package/dist/resizable.d.ts +10 -0
- package/dist/resizable.js +46 -0
- package/dist/resizable.js.map +1 -0
- package/dist/sonner.d.ts +6 -0
- package/dist/sonner.js +39 -0
- package/dist/sonner.js.map +1 -0
- package/package.json +105 -4
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { OTPInput } from 'input-otp';
|
|
4
|
+
|
|
5
|
+
declare function InputOTP({ className, containerClassName, ...props }: React.ComponentProps<typeof OTPInput> & {
|
|
6
|
+
containerClassName?: string;
|
|
7
|
+
}): react_jsx_runtime.JSX.Element;
|
|
8
|
+
declare function InputOTPGroup({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
9
|
+
declare function InputOTPSlot({ index, className, ...props }: React.ComponentProps<"div"> & {
|
|
10
|
+
index: number;
|
|
11
|
+
}): react_jsx_runtime.JSX.Element;
|
|
12
|
+
declare function InputOTPSeparator({ ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
13
|
+
|
|
14
|
+
export { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot };
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { OTPInput, OTPInputContext } from 'input-otp';
|
|
3
|
+
import { cn } from '@pulog/utils';
|
|
4
|
+
import { MinusIcon } from 'lucide-react';
|
|
5
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
// src/input-otp.tsx
|
|
8
|
+
function InputOTP({
|
|
9
|
+
className,
|
|
10
|
+
containerClassName,
|
|
11
|
+
...props
|
|
12
|
+
}) {
|
|
13
|
+
return /* @__PURE__ */ jsx(
|
|
14
|
+
OTPInput,
|
|
15
|
+
{
|
|
16
|
+
"data-slot": "input-otp",
|
|
17
|
+
containerClassName: cn(
|
|
18
|
+
"cn-input-otp flex items-center has-disabled:opacity-50",
|
|
19
|
+
containerClassName
|
|
20
|
+
),
|
|
21
|
+
spellCheck: false,
|
|
22
|
+
className: cn("disabled:cursor-not-allowed", className),
|
|
23
|
+
...props
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
function InputOTPGroup({ className, ...props }) {
|
|
28
|
+
return /* @__PURE__ */ jsx(
|
|
29
|
+
"div",
|
|
30
|
+
{
|
|
31
|
+
"data-slot": "input-otp-group",
|
|
32
|
+
className: cn(
|
|
33
|
+
"flex items-center rounded-md has-aria-invalid:border-destructive has-aria-invalid:ring-3 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40",
|
|
34
|
+
className
|
|
35
|
+
),
|
|
36
|
+
...props
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
function InputOTPSlot({
|
|
41
|
+
index,
|
|
42
|
+
className,
|
|
43
|
+
...props
|
|
44
|
+
}) {
|
|
45
|
+
const inputOTPContext = React.useContext(OTPInputContext);
|
|
46
|
+
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
47
|
+
return /* @__PURE__ */ jsxs(
|
|
48
|
+
"div",
|
|
49
|
+
{
|
|
50
|
+
"data-slot": "input-otp-slot",
|
|
51
|
+
"data-active": isActive,
|
|
52
|
+
className: cn(
|
|
53
|
+
"relative flex size-9 items-center justify-center border-y border-r border-input text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md aria-invalid:border-destructive data-[active=true]:z-10 data-[active=true]:border-ring data-[active=true]:ring-3 data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:bg-input/30 dark:data-[active=true]:aria-invalid:ring-destructive/40",
|
|
54
|
+
className
|
|
55
|
+
),
|
|
56
|
+
...props,
|
|
57
|
+
children: [
|
|
58
|
+
char,
|
|
59
|
+
hasFakeCaret && /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
function InputOTPSeparator({ ...props }) {
|
|
65
|
+
return /* @__PURE__ */ jsx(
|
|
66
|
+
"div",
|
|
67
|
+
{
|
|
68
|
+
"data-slot": "input-otp-separator",
|
|
69
|
+
className: "flex items-center [&_svg:not([class*='size-'])]:size-4",
|
|
70
|
+
role: "separator",
|
|
71
|
+
...props,
|
|
72
|
+
children: /* @__PURE__ */ jsx(
|
|
73
|
+
MinusIcon,
|
|
74
|
+
{}
|
|
75
|
+
)
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot };
|
|
81
|
+
//# sourceMappingURL=input-otp.js.map
|
|
82
|
+
//# sourceMappingURL=input-otp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/input-otp.tsx"],"names":[],"mappings":";;;;;;;AAMA,SAAS,QAAA,CAAS;AAAA,EAChB,SAAA;AAAA,EACA,kBAAA;AAAA,EACA,GAAG;AACL,CAAA,EAEG;AACD,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,WAAA;AAAA,MACV,kBAAA,EAAoB,EAAA;AAAA,QAClB,wDAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,UAAA,EAAY,KAAA;AAAA,MACZ,SAAA,EAAW,EAAA,CAAG,6BAAA,EAA+B,SAAS,CAAA;AAAA,MACrD,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AAC3E,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,iBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,yKAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,YAAA,CAAa;AAAA,EACpB,KAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAEG;AACD,EAAA,MAAM,eAAA,GAAwB,iBAAW,eAAe,CAAA;AACxD,EAAA,MAAM,EAAE,MAAM,YAAA,EAAc,QAAA,KAAa,eAAA,EAAiB,KAAA,CAAM,KAAK,CAAA,IAAK,EAAC;AAE3E,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,aAAA,EAAa,QAAA;AAAA,MACb,SAAA,EAAW,EAAA;AAAA,QACT,qfAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,IAAA;AAAA,QACA,YAAA,wBACE,KAAA,EAAA,EAAI,SAAA,EAAU,yEACb,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,0DAAA,EAA2D,CAAA,EAC5E;AAAA;AAAA;AAAA,GAEJ;AAEJ;AAEA,SAAS,iBAAA,CAAkB,EAAE,GAAG,KAAA,EAAM,EAAgC;AACpE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,qBAAA;AAAA,MACV,SAAA,EAAU,wDAAA;AAAA,MACV,IAAA,EAAK,WAAA;AAAA,MACJ,GAAG,KAAA;AAAA,MAEJ,QAAA,kBAAA,GAAA;AAAA,QAAC,SAAA;AAAA,QAAA;AAAA;AACD;AAAA,GACF;AAEJ","file":"input-otp.js","sourcesContent":["import * as React from \"react\"\r\nimport { OTPInput, OTPInputContext } from \"input-otp\"\r\n\r\nimport { cn } from \"@pulog/utils\"\r\nimport { MinusIcon } from \"lucide-react\"\r\n\r\nfunction InputOTP({\r\n className,\r\n containerClassName,\r\n ...props\r\n}: React.ComponentProps<typeof OTPInput> & {\r\n containerClassName?: string\r\n}) {\r\n return (\r\n <OTPInput\r\n data-slot=\"input-otp\"\r\n containerClassName={cn(\r\n \"cn-input-otp flex items-center has-disabled:opacity-50\",\r\n containerClassName\r\n )}\r\n spellCheck={false}\r\n className={cn(\"disabled:cursor-not-allowed\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction InputOTPGroup({ className, ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"input-otp-group\"\r\n className={cn(\r\n \"flex items-center rounded-md has-aria-invalid:border-destructive has-aria-invalid:ring-3 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction InputOTPSlot({\r\n index,\r\n className,\r\n ...props\r\n}: React.ComponentProps<\"div\"> & {\r\n index: number\r\n}) {\r\n const inputOTPContext = React.useContext(OTPInputContext)\r\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {}\r\n\r\n return (\r\n <div\r\n data-slot=\"input-otp-slot\"\r\n data-active={isActive}\r\n className={cn(\r\n \"relative flex size-9 items-center justify-center border-y border-r border-input text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md aria-invalid:border-destructive data-[active=true]:z-10 data-[active=true]:border-ring data-[active=true]:ring-3 data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:bg-input/30 dark:data-[active=true]:aria-invalid:ring-destructive/40\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {char}\r\n {hasFakeCaret && (\r\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\r\n <div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\r\n </div>\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nfunction InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"input-otp-separator\"\r\n className=\"flex items-center [&_svg:not([class*='size-'])]:size-4\"\r\n role=\"separator\"\r\n {...props}\r\n >\r\n <MinusIcon\r\n />\r\n </div>\r\n )\r\n}\r\n\r\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator }\r\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as ResizablePrimitive from 'react-resizable-panels';
|
|
3
|
+
|
|
4
|
+
declare function ResizablePanelGroup({ className, ...props }: ResizablePrimitive.GroupProps): react_jsx_runtime.JSX.Element;
|
|
5
|
+
declare function ResizablePanel({ ...props }: ResizablePrimitive.PanelProps): react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare function ResizableHandle({ withHandle, className, ...props }: ResizablePrimitive.SeparatorProps & {
|
|
7
|
+
withHandle?: boolean;
|
|
8
|
+
}): react_jsx_runtime.JSX.Element;
|
|
9
|
+
|
|
10
|
+
export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import * as ResizablePrimitive from 'react-resizable-panels';
|
|
2
|
+
import { cn } from '@pulog/utils';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
// src/resizable.tsx
|
|
6
|
+
function ResizablePanelGroup({
|
|
7
|
+
className,
|
|
8
|
+
...props
|
|
9
|
+
}) {
|
|
10
|
+
return /* @__PURE__ */ jsx(
|
|
11
|
+
ResizablePrimitive.Group,
|
|
12
|
+
{
|
|
13
|
+
"data-slot": "resizable-panel-group",
|
|
14
|
+
className: cn(
|
|
15
|
+
"flex h-full w-full aria-[orientation=vertical]:flex-col",
|
|
16
|
+
className
|
|
17
|
+
),
|
|
18
|
+
...props
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
|
+
function ResizablePanel({ ...props }) {
|
|
23
|
+
return /* @__PURE__ */ jsx(ResizablePrimitive.Panel, { "data-slot": "resizable-panel", ...props });
|
|
24
|
+
}
|
|
25
|
+
function ResizableHandle({
|
|
26
|
+
withHandle,
|
|
27
|
+
className,
|
|
28
|
+
...props
|
|
29
|
+
}) {
|
|
30
|
+
return /* @__PURE__ */ jsx(
|
|
31
|
+
ResizablePrimitive.Separator,
|
|
32
|
+
{
|
|
33
|
+
"data-slot": "resizable-handle",
|
|
34
|
+
className: cn(
|
|
35
|
+
"relative flex w-px items-center justify-center bg-border ring-offset-background after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-hidden aria-[orientation=horizontal]:h-px aria-[orientation=horizontal]:w-full aria-[orientation=horizontal]:after:left-0 aria-[orientation=horizontal]:after:h-1 aria-[orientation=horizontal]:after:w-full aria-[orientation=horizontal]:after:translate-x-0 aria-[orientation=horizontal]:after:-translate-y-1/2 [&[aria-orientation=horizontal]>div]:rotate-90",
|
|
36
|
+
className
|
|
37
|
+
),
|
|
38
|
+
...props,
|
|
39
|
+
children: withHandle && /* @__PURE__ */ jsx("div", { className: "z-10 flex h-6 w-1 shrink-0 rounded-lg bg-border" })
|
|
40
|
+
}
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
|
|
45
|
+
//# sourceMappingURL=resizable.js.map
|
|
46
|
+
//# sourceMappingURL=resizable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/resizable.tsx"],"names":[],"mappings":";;;;;AAIA,SAAS,mBAAA,CAAoB;AAAA,EAC3B,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAkC;AAChC,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,KAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,uBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,yDAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,cAAA,CAAe,EAAE,GAAG,KAAA,EAAM,EAAkC;AACnE,EAAA,2BAA2B,kBAAA,CAAA,KAAA,EAAnB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAEA,SAAS,eAAA,CAAgB;AAAA,EACvB,UAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAEG;AACD,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,SAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,skBAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA,UAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,iDAAA,EAAkD;AAAA;AAAA,GAErE;AAEJ","file":"resizable.js","sourcesContent":["import * as ResizablePrimitive from \"react-resizable-panels\"\r\n\r\nimport { cn } from \"@pulog/utils\"\r\n\r\nfunction ResizablePanelGroup({\r\n className,\r\n ...props\r\n}: ResizablePrimitive.GroupProps) {\r\n return (\r\n <ResizablePrimitive.Group\r\n data-slot=\"resizable-panel-group\"\r\n className={cn(\r\n \"flex h-full w-full aria-[orientation=vertical]:flex-col\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction ResizablePanel({ ...props }: ResizablePrimitive.PanelProps) {\r\n return <ResizablePrimitive.Panel data-slot=\"resizable-panel\" {...props} />\r\n}\r\n\r\nfunction ResizableHandle({\r\n withHandle,\r\n className,\r\n ...props\r\n}: ResizablePrimitive.SeparatorProps & {\r\n withHandle?: boolean\r\n}) {\r\n return (\r\n <ResizablePrimitive.Separator\r\n data-slot=\"resizable-handle\"\r\n className={cn(\r\n \"relative flex w-px items-center justify-center bg-border ring-offset-background after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-hidden aria-[orientation=horizontal]:h-px aria-[orientation=horizontal]:w-full aria-[orientation=horizontal]:after:left-0 aria-[orientation=horizontal]:after:h-1 aria-[orientation=horizontal]:after:w-full aria-[orientation=horizontal]:after:translate-x-0 aria-[orientation=horizontal]:after:-translate-y-1/2 [&[aria-orientation=horizontal]>div]:rotate-90\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {withHandle && (\r\n <div className=\"z-10 flex h-6 w-1 shrink-0 rounded-lg bg-border\" />\r\n )}\r\n </ResizablePrimitive.Separator>\r\n )\r\n}\r\n\r\nexport { ResizableHandle, ResizablePanel, ResizablePanelGroup }\r\n"]}
|
package/dist/sonner.d.ts
ADDED
package/dist/sonner.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { useTheme } from 'next-themes';
|
|
2
|
+
import { Toaster as Toaster$1 } from 'sonner';
|
|
3
|
+
import { Loader2Icon, OctagonXIcon, TriangleAlertIcon, InfoIcon, CircleCheckIcon } from 'lucide-react';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
// src/sonner.tsx
|
|
7
|
+
var Toaster = ({ ...props }) => {
|
|
8
|
+
const { theme = "system" } = useTheme();
|
|
9
|
+
return /* @__PURE__ */ jsx(
|
|
10
|
+
Toaster$1,
|
|
11
|
+
{
|
|
12
|
+
theme,
|
|
13
|
+
className: "toaster group",
|
|
14
|
+
icons: {
|
|
15
|
+
success: /* @__PURE__ */ jsx(CircleCheckIcon, { className: "size-4" }),
|
|
16
|
+
info: /* @__PURE__ */ jsx(InfoIcon, { className: "size-4" }),
|
|
17
|
+
warning: /* @__PURE__ */ jsx(TriangleAlertIcon, { className: "size-4" }),
|
|
18
|
+
error: /* @__PURE__ */ jsx(OctagonXIcon, { className: "size-4" }),
|
|
19
|
+
loading: /* @__PURE__ */ jsx(Loader2Icon, { className: "size-4 animate-spin" })
|
|
20
|
+
},
|
|
21
|
+
style: {
|
|
22
|
+
"--normal-bg": "var(--popover)",
|
|
23
|
+
"--normal-text": "var(--popover-foreground)",
|
|
24
|
+
"--normal-border": "var(--border)",
|
|
25
|
+
"--border-radius": "var(--radius)"
|
|
26
|
+
},
|
|
27
|
+
toastOptions: {
|
|
28
|
+
classNames: {
|
|
29
|
+
toast: "cn-toast"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
...props
|
|
33
|
+
}
|
|
34
|
+
);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export { Toaster };
|
|
38
|
+
//# sourceMappingURL=sonner.js.map
|
|
39
|
+
//# sourceMappingURL=sonner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sonner.tsx"],"names":["Sonner"],"mappings":";;;;;;AAIA,IAAM,OAAA,GAAU,CAAC,EAAE,GAAG,OAAM,KAAoB;AAC9C,EAAA,MAAM,EAAE,KAAA,GAAQ,QAAA,EAAS,GAAI,QAAA,EAAS;AAEtC,EAAA,uBACE,GAAA;AAAA,IAACA,SAAA;AAAA,IAAA;AAAA,MACC,KAAA;AAAA,MACA,SAAA,EAAU,eAAA;AAAA,MACV,KAAA,EAAO;AAAA,QACL,OAAA,kBACE,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,QAEtC,IAAA,kBACE,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,QAE/B,OAAA,kBACE,GAAA,CAAC,iBAAA,EAAA,EAAkB,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,QAExC,KAAA,kBACE,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,QAEnC,OAAA,kBACE,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAU,qBAAA,EAAsB;AAAA,OAEjD;AAAA,MACA,KAAA,EACE;AAAA,QACE,aAAA,EAAe,gBAAA;AAAA,QACf,eAAA,EAAiB,2BAAA;AAAA,QACjB,iBAAA,EAAmB,eAAA;AAAA,QACnB,iBAAA,EAAmB;AAAA,OACrB;AAAA,MAEF,YAAA,EAAc;AAAA,QACZ,UAAA,EAAY;AAAA,UACV,KAAA,EAAO;AAAA;AACT,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ","file":"sonner.js","sourcesContent":["import { useTheme } from \"next-themes\"\r\nimport { Toaster as Sonner, type ToasterProps } from \"sonner\"\r\nimport { CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon, Loader2Icon } from \"lucide-react\"\r\n\r\nconst Toaster = ({ ...props }: ToasterProps) => {\r\n const { theme = \"system\" } = useTheme()\r\n\r\n return (\r\n <Sonner\r\n theme={theme as ToasterProps[\"theme\"]}\r\n className=\"toaster group\"\r\n icons={{\r\n success: (\r\n <CircleCheckIcon className=\"size-4\" />\r\n ),\r\n info: (\r\n <InfoIcon className=\"size-4\" />\r\n ),\r\n warning: (\r\n <TriangleAlertIcon className=\"size-4\" />\r\n ),\r\n error: (\r\n <OctagonXIcon className=\"size-4\" />\r\n ),\r\n loading: (\r\n <Loader2Icon className=\"size-4 animate-spin\" />\r\n ),\r\n }}\r\n style={\r\n {\r\n \"--normal-bg\": \"var(--popover)\",\r\n \"--normal-text\": \"var(--popover-foreground)\",\r\n \"--normal-border\": \"var(--border)\",\r\n \"--border-radius\": \"var(--radius)\",\r\n } as React.CSSProperties\r\n }\r\n toastOptions={{\r\n classNames: {\r\n toast: \"cn-toast\",\r\n },\r\n }}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nexport { Toaster }\r\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,107 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulog/ui",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Shared shadcn/Radix primitives (button, input, popover, ...) and PortalContainerContext for Shadow DOM remotes.",
|
|
5
|
+
"license": "UNLICENSED",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"sideEffects": false,
|
|
8
|
+
"publishConfig": {
|
|
9
|
+
"access": "public",
|
|
10
|
+
"registry": "https://registry.npmjs.org/"
|
|
11
|
+
},
|
|
12
|
+
"main": "./dist/index.js",
|
|
13
|
+
"module": "./dist/index.js",
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"import": "./dist/index.js"
|
|
19
|
+
},
|
|
20
|
+
"./carousel": {
|
|
21
|
+
"types": "./dist/carousel.d.ts",
|
|
22
|
+
"import": "./dist/carousel.js"
|
|
23
|
+
},
|
|
24
|
+
"./chart": {
|
|
25
|
+
"types": "./dist/chart.d.ts",
|
|
26
|
+
"import": "./dist/chart.js"
|
|
27
|
+
},
|
|
28
|
+
"./drawer": {
|
|
29
|
+
"types": "./dist/drawer.d.ts",
|
|
30
|
+
"import": "./dist/drawer.js"
|
|
31
|
+
},
|
|
32
|
+
"./input-otp": {
|
|
33
|
+
"types": "./dist/input-otp.d.ts",
|
|
34
|
+
"import": "./dist/input-otp.js"
|
|
35
|
+
},
|
|
36
|
+
"./resizable": {
|
|
37
|
+
"types": "./dist/resizable.d.ts",
|
|
38
|
+
"import": "./dist/resizable.js"
|
|
39
|
+
},
|
|
40
|
+
"./sonner": {
|
|
41
|
+
"types": "./dist/sonner.d.ts",
|
|
42
|
+
"import": "./dist/sonner.js"
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"files": [
|
|
46
|
+
"dist",
|
|
47
|
+
"README.md"
|
|
48
|
+
],
|
|
49
|
+
"scripts": {
|
|
50
|
+
"build": "tsup",
|
|
51
|
+
"dev": "tsup --watch",
|
|
52
|
+
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
53
|
+
"prepublishOnly": "npm run build",
|
|
54
|
+
"test": "vitest run"
|
|
55
|
+
},
|
|
56
|
+
"dependencies": {
|
|
57
|
+
"@pulog/utils": "^0.1.0",
|
|
58
|
+
"class-variance-authority": "^0.7.1"
|
|
59
|
+
},
|
|
60
|
+
"peerDependencies": {
|
|
61
|
+
"cmdk": "^1.1.0",
|
|
62
|
+
"embla-carousel-react": "^8.6.0",
|
|
63
|
+
"input-otp": "^1.4.0",
|
|
64
|
+
"lucide-react": ">=1.0.0",
|
|
65
|
+
"next-themes": "^0.4.0",
|
|
66
|
+
"radix-ui": "^1.5.0",
|
|
67
|
+
"react": "^18.2.0",
|
|
68
|
+
"react-day-picker": "^10.0.0",
|
|
69
|
+
"react-dom": "^18.2.0",
|
|
70
|
+
"react-resizable-panels": "^4.0.0",
|
|
71
|
+
"recharts": "^3.8.0",
|
|
72
|
+
"sonner": "^2.0.0",
|
|
73
|
+
"vaul": "^1.1.2"
|
|
74
|
+
},
|
|
75
|
+
"devDependencies": {
|
|
76
|
+
"embla-carousel-react": "^8.6.0",
|
|
77
|
+
"input-otp": "^1.5.0",
|
|
78
|
+
"next-themes": "^0.4.6",
|
|
79
|
+
"react-resizable-panels": "^4.14.8",
|
|
80
|
+
"recharts": "^3.10.1",
|
|
81
|
+
"sonner": "^2.0.8",
|
|
82
|
+
"vaul": "^1.1.2"
|
|
83
|
+
},
|
|
84
|
+
"peerDependenciesMeta": {
|
|
85
|
+
"embla-carousel-react": {
|
|
86
|
+
"optional": true
|
|
87
|
+
},
|
|
88
|
+
"recharts": {
|
|
89
|
+
"optional": true
|
|
90
|
+
},
|
|
91
|
+
"vaul": {
|
|
92
|
+
"optional": true
|
|
93
|
+
},
|
|
94
|
+
"input-otp": {
|
|
95
|
+
"optional": true
|
|
96
|
+
},
|
|
97
|
+
"react-resizable-panels": {
|
|
98
|
+
"optional": true
|
|
99
|
+
},
|
|
100
|
+
"sonner": {
|
|
101
|
+
"optional": true
|
|
102
|
+
},
|
|
103
|
+
"next-themes": {
|
|
104
|
+
"optional": true
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|