@yugnex/nexui-react 2.0.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/dist/card.d.ts +31 -0
- package/dist/card.d.ts.map +1 -0
- package/dist/card.js +73 -0
- package/dist/card.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/modal.d.ts +13 -0
- package/dist/modal.d.ts.map +1 -0
- package/dist/modal.js +117 -0
- package/dist/modal.js.map +1 -0
- package/dist/primitives.d.ts +162 -0
- package/dist/primitives.d.ts.map +1 -0
- package/dist/primitives.js +100 -0
- package/dist/primitives.js.map +1 -0
- package/dist/provider.d.ts +16 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +58 -0
- package/dist/provider.js.map +1 -0
- package/dist/select.d.ts +27 -0
- package/dist/select.d.ts.map +1 -0
- package/dist/select.js +172 -0
- package/dist/select.js.map +1 -0
- package/dist/tabs.d.ts +33 -0
- package/dist/tabs.d.ts.map +1 -0
- package/dist/tabs.js +74 -0
- package/dist/tabs.js.map +1 -0
- package/dist/toast.d.ts +24 -0
- package/dist/toast.d.ts.map +1 -0
- package/dist/toast.js +111 -0
- package/dist/toast.js.map +1 -0
- package/dist/tooltip.d.ts +12 -0
- package/dist/tooltip.d.ts.map +1 -0
- package/dist/tooltip.js +52 -0
- package/dist/tooltip.js.map +1 -0
- package/package.json +44 -0
- package/src/card.tsx +137 -0
- package/src/index.ts +35 -0
- package/src/modal.tsx +172 -0
- package/src/primitives.tsx +344 -0
- package/src/provider.tsx +88 -0
- package/src/select.tsx +296 -0
- package/src/tabs.tsx +150 -0
- package/src/toast.tsx +178 -0
- package/src/tooltip.tsx +90 -0
package/dist/card.d.ts
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React, { type ReactNode, type CSSProperties } from "react";
|
|
2
|
+
interface CardProps {
|
|
3
|
+
variant?: "base" | "surface" | "elevated";
|
|
4
|
+
hoverable?: boolean;
|
|
5
|
+
onClick?: () => void;
|
|
6
|
+
children?: ReactNode;
|
|
7
|
+
className?: string;
|
|
8
|
+
style?: CSSProperties;
|
|
9
|
+
}
|
|
10
|
+
export declare function Card({ variant, hoverable, onClick, children, className, style }: CardProps): React.JSX.Element;
|
|
11
|
+
interface CardHeaderProps {
|
|
12
|
+
title?: ReactNode;
|
|
13
|
+
subtitle?: ReactNode;
|
|
14
|
+
action?: ReactNode;
|
|
15
|
+
children?: ReactNode;
|
|
16
|
+
className?: string;
|
|
17
|
+
style?: CSSProperties;
|
|
18
|
+
}
|
|
19
|
+
export declare function CardHeader({ title, subtitle, action, children, className, style }: CardHeaderProps): React.JSX.Element;
|
|
20
|
+
export declare function CardBody({ children, className, style }: {
|
|
21
|
+
children?: ReactNode;
|
|
22
|
+
className?: string;
|
|
23
|
+
style?: CSSProperties;
|
|
24
|
+
}): React.JSX.Element;
|
|
25
|
+
export declare function CardFooter({ children, className, style }: {
|
|
26
|
+
children?: ReactNode;
|
|
27
|
+
className?: string;
|
|
28
|
+
style?: CSSProperties;
|
|
29
|
+
}): React.JSX.Element;
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../src/card.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAElE,UAAU,SAAS;IACjB,OAAO,CAAC,EAAI,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAI,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAG,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAM,aAAa,CAAC;CAC3B;AAED,wBAAgB,IAAI,CAAC,EAAE,OAAmB,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,SAAS,qBA+CtG;AAED,UAAU,eAAe;IACvB,KAAK,CAAC,EAAM,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAG,SAAS,CAAC;IACtB,MAAM,CAAC,EAAK,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAG,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAM,aAAa,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,eAAe,qBA8BlG;AAED,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,qBAM3H;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,qBAiB7H"}
|
package/dist/card.js
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
// @yugnex/nexui-react — Card
|
|
4
|
+
// Composable card with optional header, body, and footer sections.
|
|
5
|
+
// Usage:
|
|
6
|
+
// <Card>
|
|
7
|
+
// <CardHeader title="Project" action={<Badge>Active</Badge>} />
|
|
8
|
+
// <CardBody>Content here</CardBody>
|
|
9
|
+
// <CardFooter><Button>Open</Button></CardFooter>
|
|
10
|
+
// </Card>
|
|
11
|
+
import React, {} from "react";
|
|
12
|
+
export function Card({ variant = "surface", hoverable, onClick, children, className, style }) {
|
|
13
|
+
const bgMap = {
|
|
14
|
+
base: "var(--nx-bg-base, #0D1117)",
|
|
15
|
+
surface: "var(--nx-bg-surface, #161B22)",
|
|
16
|
+
elevated: "var(--nx-bg-elevated, #1C2128)",
|
|
17
|
+
};
|
|
18
|
+
return (_jsx("div", { className: className, onClick: onClick, role: onClick ? "button" : undefined, tabIndex: onClick ? 0 : undefined, style: {
|
|
19
|
+
background: bgMap[variant] ?? bgMap.surface,
|
|
20
|
+
border: "1px solid var(--nx-border, rgba(255,255,255,0.08))",
|
|
21
|
+
borderRadius: 10,
|
|
22
|
+
overflow: "hidden",
|
|
23
|
+
fontFamily: "var(--nx-font-sans, system-ui, sans-serif)",
|
|
24
|
+
color: "var(--nx-text, #E6EDF3)",
|
|
25
|
+
cursor: onClick ? "pointer" : "default",
|
|
26
|
+
transition: hoverable || onClick ? "border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease" : "none",
|
|
27
|
+
...(hoverable || onClick ? {
|
|
28
|
+
["&:hover"]: {
|
|
29
|
+
borderColor: "var(--nx-border-strong, rgba(255,255,255,0.16))",
|
|
30
|
+
boxShadow: "0 4px 6px rgba(0,0,0,0.40)",
|
|
31
|
+
transform: "translateY(-1px)",
|
|
32
|
+
},
|
|
33
|
+
} : {}),
|
|
34
|
+
...style,
|
|
35
|
+
}, onMouseEnter: hoverable || onClick ? e => {
|
|
36
|
+
const el = e.currentTarget;
|
|
37
|
+
el.style.borderColor = "var(--nx-border-strong, rgba(255,255,255,0.16))";
|
|
38
|
+
el.style.boxShadow = "0 4px 6px rgba(0,0,0,0.40)";
|
|
39
|
+
if (onClick)
|
|
40
|
+
el.style.transform = "translateY(-1px)";
|
|
41
|
+
} : undefined, onMouseLeave: hoverable || onClick ? e => {
|
|
42
|
+
const el = e.currentTarget;
|
|
43
|
+
el.style.borderColor = "";
|
|
44
|
+
el.style.boxShadow = "";
|
|
45
|
+
el.style.transform = "";
|
|
46
|
+
} : undefined, children: children }));
|
|
47
|
+
}
|
|
48
|
+
export function CardHeader({ title, subtitle, action, children, className, style }) {
|
|
49
|
+
return (_jsxs("div", { className: className, style: {
|
|
50
|
+
display: "flex",
|
|
51
|
+
alignItems: "flex-start",
|
|
52
|
+
justifyContent: "space-between",
|
|
53
|
+
gap: 12,
|
|
54
|
+
padding: "16px 20px",
|
|
55
|
+
borderBottom: "1px solid var(--nx-border, rgba(255,255,255,0.08))",
|
|
56
|
+
...style,
|
|
57
|
+
}, children: [_jsxs("div", { style: { flex: 1, minWidth: 0 }, children: [title && (_jsx("div", { style: { fontSize: "var(--nx-fs-md, 14px)", fontWeight: 600, color: "var(--nx-text, #E6EDF3)", lineHeight: 1.3 }, children: title })), subtitle && (_jsx("div", { style: { fontSize: "var(--nx-fs-xs, 11px)", color: "var(--nx-text-3, #6E7681)", marginTop: 3, lineHeight: 1.4 }, children: subtitle })), children] }), action && _jsx("div", { style: { flexShrink: 0 }, children: action })] }));
|
|
58
|
+
}
|
|
59
|
+
export function CardBody({ children, className, style }) {
|
|
60
|
+
return (_jsx("div", { className: className, style: { padding: "16px 20px", ...style }, children: children }));
|
|
61
|
+
}
|
|
62
|
+
export function CardFooter({ children, className, style }) {
|
|
63
|
+
return (_jsx("div", { className: className, style: {
|
|
64
|
+
display: "flex",
|
|
65
|
+
alignItems: "center",
|
|
66
|
+
justifyContent: "flex-end",
|
|
67
|
+
gap: 8,
|
|
68
|
+
padding: "12px 20px",
|
|
69
|
+
borderTop: "1px solid var(--nx-border, rgba(255,255,255,0.08))",
|
|
70
|
+
...style,
|
|
71
|
+
}, children: children }));
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=card.js.map
|
package/dist/card.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card.js","sourceRoot":"","sources":["../src/card.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { NexuiProvider, useNexui, type NexuiTheme } from "./provider";
|
|
2
|
+
export { ToastProvider, Toaster, useToast } from "./toast";
|
|
3
|
+
export { Panel, Button, Badge, Input, Avatar, StatusRing, TextStream, Progress, Switch, Checkbox, Skeleton, Separator, Spinner, type TextStreamHandle, } from "./primitives";
|
|
4
|
+
export { Modal } from "./modal";
|
|
5
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent } from "./tabs";
|
|
6
|
+
export { Select, SelectItem, SelectGroup } from "./select";
|
|
7
|
+
export { Tooltip } from "./tooltip";
|
|
8
|
+
export { Card, CardHeader, CardBody, CardFooter } from "./card";
|
|
9
|
+
export type { NexuiSemanticToken } from "@yugnex/nexui";
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAc,SAAS,CAAC;AAGnE,OAAO,EACL,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAM,EACN,UAAU,EACV,UAAU,EACV,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,KAAK,EAAE,MAA+C,SAAS,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAY,QAAQ,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAqB,UAAU,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAA6C,WAAW,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAc,QAAQ,CAAC;AAGxE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// @yugnex/nexui-react — Main Entry Point
|
|
2
|
+
// Full React component library powered by @yugnex/nexui Web Components.
|
|
3
|
+
// Zero external dependencies beyond React itself.
|
|
4
|
+
// ── Provider & Hooks ─────────────────────────────────────────────────────────
|
|
5
|
+
export { NexuiProvider, useNexui } from "./provider";
|
|
6
|
+
export { ToastProvider, Toaster, useToast } from "./toast";
|
|
7
|
+
// ── Web Component Wrappers ───────────────────────────────────────────────────
|
|
8
|
+
export { Panel, Button, Badge, Input, Avatar, StatusRing, TextStream, Progress, Switch, Checkbox, Skeleton, Separator, Spinner, } from "./primitives";
|
|
9
|
+
// ── React-Native Components ──────────────────────────────────────────────────
|
|
10
|
+
export { Modal } from "./modal";
|
|
11
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent } from "./tabs";
|
|
12
|
+
export { Select, SelectItem, SelectGroup } from "./select";
|
|
13
|
+
export { Tooltip } from "./tooltip";
|
|
14
|
+
export { Card, CardHeader, CardBody, CardFooter } from "./card";
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,wEAAwE;AACxE,kDAAkD;AAElD,gFAAgF;AAChF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAmB,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAc,SAAS,CAAC;AAEnE,gFAAgF;AAChF,OAAO,EACL,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAM,EACN,UAAU,EACV,UAAU,EACV,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,GAER,MAAM,cAAc,CAAC;AAEtB,gFAAgF;AAChF,OAAO,EAAE,KAAK,EAAE,MAA+C,SAAS,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAY,QAAQ,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAqB,UAAU,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAA6C,WAAW,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAc,QAAQ,CAAC"}
|
package/dist/modal.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React, { type ReactNode } from "react";
|
|
2
|
+
interface ModalProps {
|
|
3
|
+
open: boolean;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
title?: string;
|
|
6
|
+
children?: ReactNode;
|
|
7
|
+
footer?: ReactNode;
|
|
8
|
+
size?: "sm" | "md" | "lg" | "xl" | "full";
|
|
9
|
+
closeable?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function Modal({ open, onClose, title, children, footer, size, closeable }: ModalProps): React.JSX.Element | null;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=modal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../src/modal.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAIZ,KAAK,SAAS,EAEf,MAAM,OAAO,CAAC;AAqFf,UAAU,UAAU;IAClB,IAAI,EAAQ,OAAO,CAAC;IACpB,OAAO,EAAK,MAAM,IAAI,CAAC;IACvB,KAAK,CAAC,EAAM,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAG,SAAS,CAAC;IACtB,MAAM,CAAC,EAAK,SAAS,CAAC;IACtB,IAAI,CAAC,EAAO,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAW,EAAE,SAAgB,EAAE,EAAE,UAAU,4BAiE1G"}
|
package/dist/modal.js
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
// @yugnex/nexui-react — Modal / Dialog
|
|
4
|
+
// Uses native <dialog> element: focus trap, Escape key, backdrop all built-in.
|
|
5
|
+
// Supports controlled (open prop) and uncontrolled usage.
|
|
6
|
+
import React, { useEffect, useRef, useCallback, } from "react";
|
|
7
|
+
const modalStyles = {
|
|
8
|
+
backdrop: {
|
|
9
|
+
position: "fixed",
|
|
10
|
+
inset: 0,
|
|
11
|
+
background: "rgba(0,0,0,0.65)",
|
|
12
|
+
backdropFilter: "blur(4px)",
|
|
13
|
+
zIndex: 200,
|
|
14
|
+
display: "flex",
|
|
15
|
+
alignItems: "center",
|
|
16
|
+
justifyContent: "center",
|
|
17
|
+
padding: "16px",
|
|
18
|
+
animation: "nx-fade-in 150ms ease forwards",
|
|
19
|
+
},
|
|
20
|
+
dialog: {
|
|
21
|
+
position: "relative",
|
|
22
|
+
background: "var(--nx-bg-elevated, #1C2128)",
|
|
23
|
+
border: "1px solid var(--nx-border-strong, rgba(255,255,255,0.16))",
|
|
24
|
+
borderRadius: "12px",
|
|
25
|
+
boxShadow: "0 25px 50px rgba(0,0,0,0.65)",
|
|
26
|
+
color: "var(--nx-text, #E6EDF3)",
|
|
27
|
+
fontFamily: "var(--nx-font-sans, system-ui, sans-serif)",
|
|
28
|
+
maxHeight: "90vh",
|
|
29
|
+
display: "flex",
|
|
30
|
+
flexDirection: "column",
|
|
31
|
+
animation: "nx-scale-in 200ms cubic-bezier(0.34,1.56,0.64,1) forwards",
|
|
32
|
+
outline: "none",
|
|
33
|
+
padding: 0,
|
|
34
|
+
margin: 0,
|
|
35
|
+
width: "100%",
|
|
36
|
+
},
|
|
37
|
+
header: {
|
|
38
|
+
display: "flex",
|
|
39
|
+
alignItems: "center",
|
|
40
|
+
justifyContent: "space-between",
|
|
41
|
+
padding: "20px 24px 0",
|
|
42
|
+
flexShrink: 0,
|
|
43
|
+
},
|
|
44
|
+
title: {
|
|
45
|
+
fontSize: "var(--nx-fs-lg, 18px)",
|
|
46
|
+
fontWeight: 600,
|
|
47
|
+
color: "var(--nx-text, #E6EDF3)",
|
|
48
|
+
margin: 0,
|
|
49
|
+
lineHeight: 1.3,
|
|
50
|
+
},
|
|
51
|
+
closeBtn: {
|
|
52
|
+
width: 28,
|
|
53
|
+
height: 28,
|
|
54
|
+
borderRadius: 6,
|
|
55
|
+
border: "1px solid transparent",
|
|
56
|
+
background: "transparent",
|
|
57
|
+
color: "var(--nx-text-3, #6E7681)",
|
|
58
|
+
cursor: "pointer",
|
|
59
|
+
display: "flex",
|
|
60
|
+
alignItems: "center",
|
|
61
|
+
justifyContent: "center",
|
|
62
|
+
flexShrink: 0,
|
|
63
|
+
transition: "background 150ms ease, color 150ms ease",
|
|
64
|
+
fontSize: 16,
|
|
65
|
+
lineHeight: 1,
|
|
66
|
+
},
|
|
67
|
+
body: {
|
|
68
|
+
padding: "16px 24px",
|
|
69
|
+
overflowY: "auto",
|
|
70
|
+
flex: 1,
|
|
71
|
+
},
|
|
72
|
+
footer: {
|
|
73
|
+
display: "flex",
|
|
74
|
+
alignItems: "center",
|
|
75
|
+
justifyContent: "flex-end",
|
|
76
|
+
gap: 8,
|
|
77
|
+
padding: "0 24px 20px",
|
|
78
|
+
flexShrink: 0,
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
const SIZE_WIDTHS = {
|
|
82
|
+
sm: 400,
|
|
83
|
+
md: 560,
|
|
84
|
+
lg: 720,
|
|
85
|
+
xl: 900,
|
|
86
|
+
full: 9999,
|
|
87
|
+
};
|
|
88
|
+
export function Modal({ open, onClose, title, children, footer, size = "md", closeable = true }) {
|
|
89
|
+
const backdropRef = useRef(null);
|
|
90
|
+
const dialogRef = useRef(null);
|
|
91
|
+
// Focus the dialog when opened
|
|
92
|
+
useEffect(() => {
|
|
93
|
+
if (open) {
|
|
94
|
+
requestAnimationFrame(() => dialogRef.current?.focus());
|
|
95
|
+
document.body.style.overflow = "hidden";
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
document.body.style.overflow = "";
|
|
99
|
+
}
|
|
100
|
+
return () => { document.body.style.overflow = ""; };
|
|
101
|
+
}, [open]);
|
|
102
|
+
// Escape key
|
|
103
|
+
const handleKeyDown = useCallback((e) => {
|
|
104
|
+
if (e.key === "Escape" && closeable)
|
|
105
|
+
onClose();
|
|
106
|
+
}, [closeable, onClose]);
|
|
107
|
+
// Click outside
|
|
108
|
+
const handleBackdropClick = useCallback((e) => {
|
|
109
|
+
if (e.target === backdropRef.current && closeable)
|
|
110
|
+
onClose();
|
|
111
|
+
}, [closeable, onClose]);
|
|
112
|
+
if (!open)
|
|
113
|
+
return null;
|
|
114
|
+
const maxWidth = SIZE_WIDTHS[size] ?? SIZE_WIDTHS.md;
|
|
115
|
+
return (_jsx("div", { ref: backdropRef, style: modalStyles.backdrop, onClick: handleBackdropClick, "aria-modal": "true", role: "dialog", "aria-label": title, children: _jsxs("div", { ref: dialogRef, style: { ...modalStyles.dialog, maxWidth: size === "full" ? "calc(100% - 32px)" : `${maxWidth}px` }, tabIndex: -1, onKeyDown: handleKeyDown, children: [(title || closeable) && (_jsxs("div", { style: modalStyles.header, children: [title && _jsx("h2", { style: modalStyles.title, children: title }), closeable && (_jsx("button", { style: modalStyles.closeBtn, onClick: onClose, "aria-label": "Close modal", onMouseEnter: e => { e.currentTarget.style.background = "var(--nx-bg-overlay, #21262D)"; e.currentTarget.style.color = "var(--nx-text, #E6EDF3)"; }, onMouseLeave: e => { e.currentTarget.style.background = "transparent"; e.currentTarget.style.color = "var(--nx-text-3, #6E7681)"; }, children: "\u2715" }))] })), _jsx("div", { style: modalStyles.body, children: children }), footer && _jsx("div", { style: modalStyles.footer, children: footer })] }) }));
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=modal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modal.js","sourceRoot":"","sources":["../src/modal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import React, { type ReactNode } from "react";
|
|
2
|
+
declare global {
|
|
3
|
+
namespace JSX {
|
|
4
|
+
interface IntrinsicElements {
|
|
5
|
+
"nex-panel": any;
|
|
6
|
+
"nex-button": any;
|
|
7
|
+
"nex-badge": any;
|
|
8
|
+
"nex-input": any;
|
|
9
|
+
"nex-avatar": any;
|
|
10
|
+
"nex-status-ring": any;
|
|
11
|
+
"nex-text-stream": any;
|
|
12
|
+
"nex-progress": any;
|
|
13
|
+
"nex-switch": any;
|
|
14
|
+
"nex-checkbox": any;
|
|
15
|
+
"nex-skeleton": any;
|
|
16
|
+
"nex-separator": any;
|
|
17
|
+
"nex-spinner": any;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
interface NexPanelProps {
|
|
22
|
+
variant?: "void" | "base" | "surface" | "elevated" | "overlay" | "accent" | "live" | "success" | "error" | "warning";
|
|
23
|
+
padding?: "none" | "xs" | "sm" | "md" | "lg" | "xl";
|
|
24
|
+
elevation?: "0" | "1" | "2" | "3" | "4";
|
|
25
|
+
matrix?: string;
|
|
26
|
+
className?: string;
|
|
27
|
+
children?: ReactNode;
|
|
28
|
+
style?: React.CSSProperties;
|
|
29
|
+
}
|
|
30
|
+
export declare const Panel: React.ForwardRefExoticComponent<NexPanelProps & React.RefAttributes<HTMLElement>>;
|
|
31
|
+
interface NexButtonProps {
|
|
32
|
+
variant?: "primary" | "secondary" | "ghost" | "danger" | "outline" | "accent" | "live";
|
|
33
|
+
size?: "sm" | "md" | "lg";
|
|
34
|
+
loading?: boolean;
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
"icon-only"?: boolean;
|
|
37
|
+
type?: "button" | "submit" | "reset";
|
|
38
|
+
className?: string;
|
|
39
|
+
children?: ReactNode;
|
|
40
|
+
onClick?: React.MouseEventHandler<HTMLElement>;
|
|
41
|
+
style?: React.CSSProperties;
|
|
42
|
+
}
|
|
43
|
+
export declare const Button: React.ForwardRefExoticComponent<NexButtonProps & React.RefAttributes<HTMLElement>>;
|
|
44
|
+
interface NexBadgeProps {
|
|
45
|
+
variant?: "default" | "accent" | "live" | "success" | "error" | "warning" | "muted";
|
|
46
|
+
size?: "sm" | "md";
|
|
47
|
+
dot?: boolean;
|
|
48
|
+
className?: string;
|
|
49
|
+
children?: ReactNode;
|
|
50
|
+
style?: React.CSSProperties;
|
|
51
|
+
}
|
|
52
|
+
export declare const Badge: React.ForwardRefExoticComponent<NexBadgeProps & React.RefAttributes<HTMLElement>>;
|
|
53
|
+
interface NexInputProps {
|
|
54
|
+
type?: string;
|
|
55
|
+
label?: string;
|
|
56
|
+
placeholder?: string;
|
|
57
|
+
helper?: string;
|
|
58
|
+
error?: string;
|
|
59
|
+
size?: "sm" | "md" | "lg";
|
|
60
|
+
disabled?: boolean;
|
|
61
|
+
required?: boolean;
|
|
62
|
+
value?: string;
|
|
63
|
+
className?: string;
|
|
64
|
+
onChange?: React.ChangeEventHandler<HTMLInputElement>;
|
|
65
|
+
onInput?: React.FormEventHandler<HTMLInputElement>;
|
|
66
|
+
onFocus?: React.FocusEventHandler<HTMLInputElement>;
|
|
67
|
+
onBlur?: React.FocusEventHandler<HTMLInputElement>;
|
|
68
|
+
style?: React.CSSProperties;
|
|
69
|
+
}
|
|
70
|
+
export declare const Input: React.ForwardRefExoticComponent<NexInputProps & React.RefAttributes<HTMLElement>>;
|
|
71
|
+
interface NexAvatarProps {
|
|
72
|
+
src?: string;
|
|
73
|
+
name?: string;
|
|
74
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl";
|
|
75
|
+
status?: "online" | "away" | "busy" | "offline";
|
|
76
|
+
shape?: "circle" | "square";
|
|
77
|
+
className?: string;
|
|
78
|
+
style?: React.CSSProperties;
|
|
79
|
+
}
|
|
80
|
+
export declare const Avatar: React.ForwardRefExoticComponent<NexAvatarProps & React.RefAttributes<HTMLElement>>;
|
|
81
|
+
interface NexStatusRingProps {
|
|
82
|
+
score?: number;
|
|
83
|
+
label?: string;
|
|
84
|
+
color?: string;
|
|
85
|
+
size?: number;
|
|
86
|
+
className?: string;
|
|
87
|
+
style?: React.CSSProperties;
|
|
88
|
+
}
|
|
89
|
+
export declare const StatusRing: React.ForwardRefExoticComponent<NexStatusRingProps & React.RefAttributes<HTMLElement>>;
|
|
90
|
+
export interface TextStreamHandle {
|
|
91
|
+
push: (msg: string) => void;
|
|
92
|
+
batch: (msgs: string[]) => void;
|
|
93
|
+
clear: () => void;
|
|
94
|
+
}
|
|
95
|
+
interface NexTextStreamProps {
|
|
96
|
+
maxRows?: number;
|
|
97
|
+
showNumbers?: boolean;
|
|
98
|
+
className?: string;
|
|
99
|
+
style?: React.CSSProperties;
|
|
100
|
+
}
|
|
101
|
+
export declare const TextStream: React.ForwardRefExoticComponent<NexTextStreamProps & React.RefAttributes<TextStreamHandle>>;
|
|
102
|
+
interface NexProgressProps {
|
|
103
|
+
value?: number;
|
|
104
|
+
variant?: "linear" | "circular";
|
|
105
|
+
size?: "sm" | "md" | "lg";
|
|
106
|
+
color?: "accent" | "live" | "success" | "error" | "warning";
|
|
107
|
+
label?: string;
|
|
108
|
+
"show-value"?: boolean;
|
|
109
|
+
className?: string;
|
|
110
|
+
style?: React.CSSProperties;
|
|
111
|
+
}
|
|
112
|
+
export declare const Progress: React.ForwardRefExoticComponent<NexProgressProps & React.RefAttributes<HTMLElement>>;
|
|
113
|
+
interface NexSwitchProps {
|
|
114
|
+
checked?: boolean;
|
|
115
|
+
disabled?: boolean;
|
|
116
|
+
label?: string;
|
|
117
|
+
size?: "sm" | "md" | "lg";
|
|
118
|
+
color?: "accent" | "live" | "success";
|
|
119
|
+
className?: string;
|
|
120
|
+
onChange?: (checked: boolean) => void;
|
|
121
|
+
style?: React.CSSProperties;
|
|
122
|
+
}
|
|
123
|
+
export declare const Switch: React.ForwardRefExoticComponent<NexSwitchProps & React.RefAttributes<HTMLElement>>;
|
|
124
|
+
interface NexCheckboxProps {
|
|
125
|
+
checked?: boolean;
|
|
126
|
+
indeterminate?: boolean;
|
|
127
|
+
disabled?: boolean;
|
|
128
|
+
label?: string;
|
|
129
|
+
size?: "sm" | "md" | "lg";
|
|
130
|
+
className?: string;
|
|
131
|
+
onChange?: (checked: boolean) => void;
|
|
132
|
+
style?: React.CSSProperties;
|
|
133
|
+
}
|
|
134
|
+
export declare const Checkbox: React.ForwardRefExoticComponent<NexCheckboxProps & React.RefAttributes<HTMLElement>>;
|
|
135
|
+
interface NexSkeletonProps {
|
|
136
|
+
variant?: "text" | "circle" | "rect";
|
|
137
|
+
width?: string;
|
|
138
|
+
height?: string;
|
|
139
|
+
lines?: number;
|
|
140
|
+
animate?: boolean;
|
|
141
|
+
className?: string;
|
|
142
|
+
style?: React.CSSProperties;
|
|
143
|
+
}
|
|
144
|
+
export declare const Skeleton: React.ForwardRefExoticComponent<NexSkeletonProps & React.RefAttributes<HTMLElement>>;
|
|
145
|
+
interface NexSeparatorProps {
|
|
146
|
+
orientation?: "horizontal" | "vertical";
|
|
147
|
+
variant?: "default" | "strong" | "muted";
|
|
148
|
+
label?: string;
|
|
149
|
+
className?: string;
|
|
150
|
+
style?: React.CSSProperties;
|
|
151
|
+
}
|
|
152
|
+
export declare const Separator: React.ForwardRefExoticComponent<NexSeparatorProps & React.RefAttributes<HTMLElement>>;
|
|
153
|
+
interface NexSpinnerProps {
|
|
154
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl";
|
|
155
|
+
color?: "accent" | "live" | "success" | "error" | "muted";
|
|
156
|
+
label?: string;
|
|
157
|
+
className?: string;
|
|
158
|
+
style?: React.CSSProperties;
|
|
159
|
+
}
|
|
160
|
+
export declare const Spinner: React.ForwardRefExoticComponent<NexSpinnerProps & React.RefAttributes<HTMLElement>>;
|
|
161
|
+
export {};
|
|
162
|
+
//# sourceMappingURL=primitives.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../src/primitives.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
// @yugnex/nexui-react — Web Component Wrappers
|
|
4
|
+
// Thin typed React wrappers for every @yugnex/nexui Web Component.
|
|
5
|
+
// Each wrapper:
|
|
6
|
+
// • Declares proper TypeScript prop types
|
|
7
|
+
// • Forwards refs to the underlying DOM element
|
|
8
|
+
// • Handles imperative APIs (e.g. TextStream.pushLogTrace)
|
|
9
|
+
// • Bridges React synthetic events ↔ Web Component custom events
|
|
10
|
+
import React, { forwardRef, useEffect, useImperativeHandle, useRef, } from "react";
|
|
11
|
+
export const Panel = forwardRef(({ children, ...props }, ref) => (_jsx("nex-panel", { ref: ref, ...props, children: children })));
|
|
12
|
+
Panel.displayName = "Panel";
|
|
13
|
+
export const Button = forwardRef(({ loading, "icon-only": iconOnly, children, ...props }, ref) => (_jsx("nex-button", { ref: ref, loading: loading ? "true" : undefined, "icon-only": iconOnly ? "true" : undefined, ...props, children: children })));
|
|
14
|
+
Button.displayName = "Button";
|
|
15
|
+
export const Badge = forwardRef(({ dot, children, ...props }, ref) => (_jsx("nex-badge", { ref: ref, dot: dot ? "true" : undefined, ...props, children: children })));
|
|
16
|
+
Badge.displayName = "Badge";
|
|
17
|
+
export const Input = forwardRef(({ onChange, onInput, onFocus, onBlur, ...props }, ref) => {
|
|
18
|
+
const elRef = useRef(null);
|
|
19
|
+
useImperativeHandle(ref, () => elRef.current);
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
const el = elRef.current;
|
|
22
|
+
if (!el)
|
|
23
|
+
return;
|
|
24
|
+
const handlers = [];
|
|
25
|
+
if (onChange) {
|
|
26
|
+
const h = (e) => onChange(e);
|
|
27
|
+
el.addEventListener("change", h);
|
|
28
|
+
handlers.push(["change", h]);
|
|
29
|
+
}
|
|
30
|
+
if (onInput) {
|
|
31
|
+
const h = (e) => onInput(e);
|
|
32
|
+
el.addEventListener("input", h);
|
|
33
|
+
handlers.push(["input", h]);
|
|
34
|
+
}
|
|
35
|
+
if (onFocus) {
|
|
36
|
+
const h = (e) => onFocus(e);
|
|
37
|
+
el.addEventListener("focus", h);
|
|
38
|
+
handlers.push(["focus", h]);
|
|
39
|
+
}
|
|
40
|
+
if (onBlur) {
|
|
41
|
+
const h = (e) => onBlur(e);
|
|
42
|
+
el.addEventListener("blur", h);
|
|
43
|
+
handlers.push(["blur", h]);
|
|
44
|
+
}
|
|
45
|
+
return () => handlers.forEach(([ev, h]) => el.removeEventListener(ev, h));
|
|
46
|
+
}, [onChange, onInput, onFocus, onBlur]);
|
|
47
|
+
return _jsx("nex-input", { ref: elRef, ...props });
|
|
48
|
+
});
|
|
49
|
+
Input.displayName = "Input";
|
|
50
|
+
export const Avatar = forwardRef((props, ref) => _jsx("nex-avatar", { ref: ref, ...props }));
|
|
51
|
+
Avatar.displayName = "Avatar";
|
|
52
|
+
export const StatusRing = forwardRef(({ score, size, ...props }, ref) => (_jsx("nex-status-ring", { ref: ref, score: score !== undefined ? String(score) : undefined, size: size !== undefined ? String(size) : undefined, ...props })));
|
|
53
|
+
StatusRing.displayName = "StatusRing";
|
|
54
|
+
export const TextStream = forwardRef(({ maxRows, showNumbers, ...props }, ref) => {
|
|
55
|
+
const elRef = useRef(null);
|
|
56
|
+
useImperativeHandle(ref, () => ({
|
|
57
|
+
push: (msg) => elRef.current?.pushLogTrace(msg),
|
|
58
|
+
batch: (msgs) => elRef.current?.pushBatch(msgs),
|
|
59
|
+
clear: () => elRef.current?.clear(),
|
|
60
|
+
}));
|
|
61
|
+
return (_jsx("nex-text-stream", { ref: elRef, "max-rows": maxRows !== undefined ? String(maxRows) : undefined, "show-numbers": showNumbers === false ? "false" : undefined, ...props }));
|
|
62
|
+
});
|
|
63
|
+
TextStream.displayName = "TextStream";
|
|
64
|
+
export const Progress = forwardRef(({ value, "show-value": showVal, ...props }, ref) => (_jsx("nex-progress", { ref: ref, value: value !== undefined ? String(value) : undefined, "show-value": showVal ? "true" : undefined, ...props })));
|
|
65
|
+
Progress.displayName = "Progress";
|
|
66
|
+
export const Switch = forwardRef(({ checked, onChange, ...props }, ref) => {
|
|
67
|
+
const elRef = useRef(null);
|
|
68
|
+
useImperativeHandle(ref, () => elRef.current);
|
|
69
|
+
useEffect(() => {
|
|
70
|
+
const el = elRef.current;
|
|
71
|
+
if (!el || !onChange)
|
|
72
|
+
return;
|
|
73
|
+
const h = (e) => onChange(e.detail.checked);
|
|
74
|
+
el.addEventListener("change", h);
|
|
75
|
+
return () => el.removeEventListener("change", h);
|
|
76
|
+
}, [onChange]);
|
|
77
|
+
return (_jsx("nex-switch", { ref: elRef, checked: checked ? "" : undefined, ...props }));
|
|
78
|
+
});
|
|
79
|
+
Switch.displayName = "Switch";
|
|
80
|
+
export const Checkbox = forwardRef(({ checked, indeterminate, onChange, ...props }, ref) => {
|
|
81
|
+
const elRef = useRef(null);
|
|
82
|
+
useImperativeHandle(ref, () => elRef.current);
|
|
83
|
+
useEffect(() => {
|
|
84
|
+
const el = elRef.current;
|
|
85
|
+
if (!el || !onChange)
|
|
86
|
+
return;
|
|
87
|
+
const h = (e) => onChange(e.detail.checked);
|
|
88
|
+
el.addEventListener("change", h);
|
|
89
|
+
return () => el.removeEventListener("change", h);
|
|
90
|
+
}, [onChange]);
|
|
91
|
+
return (_jsx("nex-checkbox", { ref: elRef, checked: checked ? "" : undefined, indeterminate: indeterminate ? "" : undefined, ...props }));
|
|
92
|
+
});
|
|
93
|
+
Checkbox.displayName = "Checkbox";
|
|
94
|
+
export const Skeleton = forwardRef(({ lines, animate, ...props }, ref) => (_jsx("nex-skeleton", { ref: ref, lines: lines !== undefined ? String(lines) : undefined, animate: animate === false ? "false" : undefined, ...props })));
|
|
95
|
+
Skeleton.displayName = "Skeleton";
|
|
96
|
+
export const Separator = forwardRef((props, ref) => _jsx("nex-separator", { ref: ref, ...props }));
|
|
97
|
+
Separator.displayName = "Separator";
|
|
98
|
+
export const Spinner = forwardRef((props, ref) => _jsx("nex-spinner", { ref: ref, ...props }));
|
|
99
|
+
Spinner.displayName = "Spinner";
|
|
100
|
+
//# sourceMappingURL=primitives.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React, { type ReactNode } from "react";
|
|
2
|
+
export type NexuiTheme = "void" | "terminal";
|
|
3
|
+
interface NexuiContextValue {
|
|
4
|
+
theme: NexuiTheme;
|
|
5
|
+
setTheme: (t: NexuiTheme) => void;
|
|
6
|
+
ready: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function useNexui(): NexuiContextValue;
|
|
9
|
+
interface NexuiProviderProps {
|
|
10
|
+
children: ReactNode;
|
|
11
|
+
theme?: NexuiTheme;
|
|
12
|
+
onThemeChange?: (t: NexuiTheme) => void;
|
|
13
|
+
}
|
|
14
|
+
export declare function NexuiProvider({ children, theme: initialTheme, onThemeChange }: NexuiProviderProps): React.JSX.Element;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAMZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAE7C,UAAU,iBAAiB;IACzB,KAAK,EAAM,UAAU,CAAC;IACtB,QAAQ,EAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACnC,KAAK,EAAM,OAAO,CAAC;CACpB;AAQD,wBAAgB,QAAQ,sBAEvB;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAO,SAAS,CAAC;IACzB,KAAK,CAAC,EAAS,UAAU,CAAC;IAC1B,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAqB,EAAE,aAAa,EAAE,EAAE,kBAAkB,qBA2C1G"}
|