@imdanibytes/nexus-ui 0.6.0 → 0.7.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/dist/index.d.ts CHANGED
@@ -1,11 +1,72 @@
1
1
  import { ClassValue } from 'clsx';
2
+ import { ElementType } from 'react';
2
3
  import { JSX } from 'react/jsx-runtime';
3
4
  import * as React_2 from 'react';
5
+ import { ReactNode } from 'react';
4
6
  import { toast } from 'sonner';
5
7
  import { Toaster } from 'sonner';
6
8
 
9
+ /**
10
+ * Ambient gradient background — uses HeroUI theme tokens for colors.
11
+ *
12
+ * Blobs are radial-gradient divs (no CSS `filter: blur()` — GPU-safe).
13
+ * Layer-promoted via `will-change: transform`, animated exclusively with
14
+ * `transform: translate3d()` so the GPU composites cached textures at new
15
+ * positions each frame — no Gaussian blur recomputation.
16
+ *
17
+ * Drift keyframes (`drift-1` through `drift-4`) are defined in base.css.
18
+ */
19
+ export declare interface BlobConfig {
20
+ /** Blob diameter in px */
21
+ size: number;
22
+ /** CSS left position (e.g. "10%", "200px") */
23
+ x: string;
24
+ /** CSS top position */
25
+ y: string;
26
+ /** HeroUI color token name — "primary", "secondary", "success", etc. */
27
+ color: string;
28
+ /** Opacity for the radial gradient (0–1) */
29
+ opacity: number;
30
+ /** Keyframe name from base.css — "drift-1", "drift-2", etc. */
31
+ drift: string;
32
+ /** Animation duration (e.g. "25s") */
33
+ duration: string;
34
+ }
35
+
7
36
  export declare function cn(...inputs: ClassValue[]): string;
8
37
 
38
+ export declare function CodeBlock({ text, copyLabel, className }: CodeBlockProps): JSX.Element;
39
+
40
+ declare interface CodeBlockProps {
41
+ /** The text content to display */
42
+ text: string;
43
+ /** Label for the copy button (accessibility) */
44
+ copyLabel?: string;
45
+ className?: string;
46
+ }
47
+
48
+ export declare function EmptyState({ icon: Icon, title, description, action, className }: EmptyStateProps): JSX.Element;
49
+
50
+ declare interface EmptyStateProps {
51
+ /** Lucide icon component or any React element type */
52
+ icon: ElementType;
53
+ /** Primary message */
54
+ title: string;
55
+ /** Secondary description */
56
+ description?: string;
57
+ /** Optional action slot (button, link, etc.) */
58
+ action?: ReactNode;
59
+ className?: string;
60
+ }
61
+
62
+ export declare function GradientBackground({ blobs, className }: GradientBackgroundProps): JSX.Element;
63
+
64
+ declare interface GradientBackgroundProps {
65
+ /** Custom blob configurations. Defaults to a 3-blob teal/violet/blue set. */
66
+ blobs?: BlobConfig[];
67
+ className?: string;
68
+ }
69
+
9
70
  declare interface NexusContextValue {
10
71
  apiUrl: string;
11
72
  }
@@ -18,6 +79,40 @@ declare interface NexusProviderProps {
18
79
  toaster?: boolean;
19
80
  }
20
81
 
82
+ export declare function SearchBar({ value: controlledValue, onChange, placeholder, delay, icon, className, }: SearchBarProps): JSX.Element;
83
+
84
+ declare interface SearchBarProps {
85
+ /** Current search value (controlled) or initial value (uncontrolled) */
86
+ value?: string;
87
+ /** Called with the debounced search query */
88
+ onChange: (query: string) => void;
89
+ /** Placeholder text */
90
+ placeholder?: string;
91
+ /** Debounce delay in ms (default 300) */
92
+ delay?: number;
93
+ /** Optional icon element rendered as Input startContent */
94
+ icon?: React.ReactNode;
95
+ className?: string;
96
+ }
97
+
98
+ declare type Status = "running" | "stopped" | "error" | "busy" | "installing";
99
+
100
+ export declare function StatusDot({ status, ping, className }: StatusDotProps): JSX.Element;
101
+
102
+ declare interface StatusDotProps {
103
+ status: Status;
104
+ /** Show animated ping ring (default: true when running) */
105
+ ping?: boolean;
106
+ className?: string;
107
+ }
108
+
109
+ export declare const Surface: React_2.ForwardRefExoticComponent<SurfaceProps & React_2.RefAttributes<HTMLDivElement>>;
110
+
111
+ declare interface SurfaceProps extends React_2.HTMLAttributes<HTMLDivElement> {
112
+ /** "default" = standard glass card, "strong" = structural chrome (no rounding, stronger blur) */
113
+ variant?: "default" | "strong";
114
+ }
115
+
21
116
  export { toast }
22
117
 
23
118
  export { Toaster }