@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.
Files changed (46) hide show
  1. package/dist/card.d.ts +31 -0
  2. package/dist/card.d.ts.map +1 -0
  3. package/dist/card.js +73 -0
  4. package/dist/card.js.map +1 -0
  5. package/dist/index.d.ts +10 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +15 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/modal.d.ts +13 -0
  10. package/dist/modal.d.ts.map +1 -0
  11. package/dist/modal.js +117 -0
  12. package/dist/modal.js.map +1 -0
  13. package/dist/primitives.d.ts +162 -0
  14. package/dist/primitives.d.ts.map +1 -0
  15. package/dist/primitives.js +100 -0
  16. package/dist/primitives.js.map +1 -0
  17. package/dist/provider.d.ts +16 -0
  18. package/dist/provider.d.ts.map +1 -0
  19. package/dist/provider.js +58 -0
  20. package/dist/provider.js.map +1 -0
  21. package/dist/select.d.ts +27 -0
  22. package/dist/select.d.ts.map +1 -0
  23. package/dist/select.js +172 -0
  24. package/dist/select.js.map +1 -0
  25. package/dist/tabs.d.ts +33 -0
  26. package/dist/tabs.d.ts.map +1 -0
  27. package/dist/tabs.js +74 -0
  28. package/dist/tabs.js.map +1 -0
  29. package/dist/toast.d.ts +24 -0
  30. package/dist/toast.d.ts.map +1 -0
  31. package/dist/toast.js +111 -0
  32. package/dist/toast.js.map +1 -0
  33. package/dist/tooltip.d.ts +12 -0
  34. package/dist/tooltip.d.ts.map +1 -0
  35. package/dist/tooltip.js +52 -0
  36. package/dist/tooltip.js.map +1 -0
  37. package/package.json +44 -0
  38. package/src/card.tsx +137 -0
  39. package/src/index.ts +35 -0
  40. package/src/modal.tsx +172 -0
  41. package/src/primitives.tsx +344 -0
  42. package/src/provider.tsx +88 -0
  43. package/src/select.tsx +296 -0
  44. package/src/tabs.tsx +150 -0
  45. package/src/toast.tsx +178 -0
  46. 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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.js","sourceRoot":"","sources":["../src/card.tsx"],"names":[],"mappings":"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"}
@@ -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"}
@@ -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"}