najm-kit 0.0.7 → 0.0.8

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,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React$1 from 'react';
3
- import React__default, { ComponentType, ReactNode, MouseEventHandler, InputHTMLAttributes, Ref } from 'react';
3
+ import React__default, { RefObject, ComponentType, ReactNode, CSSProperties, MouseEvent, MouseEventHandler, InputHTMLAttributes, Ref } from 'react';
4
4
  import * as class_variance_authority_types from 'class-variance-authority/types';
5
5
  import { VariantProps } from 'class-variance-authority';
6
6
  import * as LabelPrimitive from '@radix-ui/react-label';
@@ -17,6 +17,7 @@ import * as TabsPrimitive from '@radix-ui/react-tabs';
17
17
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
18
18
  import * as ProgressPrimitive from '@radix-ui/react-progress';
19
19
  import * as SeparatorPrimitive from '@radix-ui/react-separator';
20
+ import { OverlayScrollbarsComponentProps } from 'overlayscrollbars-react';
20
21
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
21
22
  import { Command as Command$1 } from 'cmdk';
22
23
  import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
@@ -26,6 +27,7 @@ import * as react_hook_form from 'react-hook-form';
26
27
  import { FieldValues, FieldPath, ControllerProps, UseFormProps, SubmitHandler, UseFormReturn } from 'react-hook-form';
27
28
  import { Slot } from '@radix-ui/react-slot';
28
29
  import { LucideProps, LucideIcon } from 'lucide-react';
30
+ import * as SliderPrimitive from '@radix-ui/react-slider';
29
31
  import { ZodTypeAny, TypeOf } from 'zod';
30
32
  import { SortingState, ExpandedState, ColumnDef, Row, ColumnFiltersState, VisibilityState, RowSelectionState } from '@tanstack/react-table';
31
33
  export { N as NTableJson } from './NTableJson-tXqgfZI1.js';
@@ -80,7 +82,20 @@ declare function resolvePreset(preset: NajmPreset): NajmThemeTokens;
80
82
  interface KeyboardOptions {
81
83
  enabled?: boolean;
82
84
  preventDefault?: boolean;
85
+ /**
86
+ * When `true` (default), ignore key events that originate inside editable
87
+ * text fields: `<input type="text|search|email|password|tel|url|number|...">`,
88
+ * `<textarea>`, `<select>`, `[contenteditable]`, and `[role="combobox"]`.
89
+ * Non-text inputs (checkbox, radio, button, submit) still pass through so
90
+ * shortcuts like Ctrl+A keep working from a focused row checkbox.
91
+ */
83
92
  ignoreInputs?: boolean;
93
+ /**
94
+ * When provided, only fire when the keydown's `e.target` is contained by
95
+ * this element. Useful for scoping shortcuts to one mounted component
96
+ * instance (e.g., one NTable on a page that contains several).
97
+ */
98
+ scopeRef?: RefObject<HTMLElement | null>;
84
99
  }
85
100
  declare function useKeyboard(shortcut: string, handler: (e: KeyboardEvent) => void, options?: KeyboardOptions): void;
86
101
 
@@ -155,6 +170,7 @@ interface ButtonProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElemen
155
170
  loaderPosition?: ButtonLoaderPosition;
156
171
  leftIcon?: ButtonIcon;
157
172
  rightIcon?: ButtonIcon;
173
+ bordered?: boolean;
158
174
  onClick?: AsyncClickHandler;
159
175
  }
160
176
  type NButtonProps = ButtonProps;
@@ -199,6 +215,32 @@ declare const NBadge: typeof Badge;
199
215
  type NBadgeLook = BadgeDisplayLook;
200
216
  type NBadgeProps = BadgeProps;
201
217
 
218
+ type IndicatorVertical = "top" | "middle" | "bottom";
219
+ type IndicatorHorizontal = "start" | "center" | "end";
220
+ type IndicatorPosition = `${IndicatorVertical}-${IndicatorHorizontal}`;
221
+ type IndicatorResponsivePosition = Partial<Record<"base" | "sm" | "md" | "lg" | "xl" | "2xl", IndicatorPosition>>;
222
+ type IndicatorOverlay = "dot" | "status" | "badge" | "button" | "custom";
223
+ type IndicatorSize = "sm" | "md" | "lg";
224
+ interface IndicatorProps extends Omit<React$1.HTMLAttributes<HTMLDivElement>, "children" | "content" | "color" | "default"> {
225
+ children: React$1.ReactNode;
226
+ position?: IndicatorPosition | IndicatorResponsivePosition;
227
+ overlay?: IndicatorOverlay;
228
+ color?: BadgeColor;
229
+ size?: IndicatorSize;
230
+ shape?: BadgeShape;
231
+ content?: React$1.ReactNode;
232
+ ping?: boolean;
233
+ pulse?: boolean;
234
+ className?: string;
235
+ overlayClassName?: string;
236
+ }
237
+ declare const indicatorVariants: (props?: {} & class_variance_authority_types.ClassProp) => string;
238
+ declare function NIndicator({ children, position, overlay, color, size, shape, content, ping, pulse, className, overlayClassName, ...rest }: IndicatorProps): react_jsx_runtime.JSX.Element;
239
+ declare namespace NIndicator {
240
+ var displayName: string;
241
+ }
242
+ declare const Indicator: typeof NIndicator;
243
+
202
244
  declare function Input({ className, type, ...props }: React$1.ComponentProps<"input">): react_jsx_runtime.JSX.Element;
203
245
 
204
246
  declare function Textarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
@@ -236,6 +278,7 @@ type DialogWidth = 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | '3xl' | '4xl' | '5xl' | '
236
278
  type DialogHeight = 'auto' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'full';
237
279
  type RenderSlot<T = any> = T | ((ctx: T) => ReactNode);
238
280
 
281
+ type DialogActionMode = "auto" | "dialog" | "content";
239
282
  interface ButtonConfig {
240
283
  text: string;
241
284
  variant?: "default" | "destructive" | "secondary" | "outline" | "tertiary" | "ghost";
@@ -247,6 +290,16 @@ interface ButtonConfig {
247
290
  disabled?: boolean;
248
291
  form?: string;
249
292
  }
293
+ interface DialogRenderContext {
294
+ dialog: DialogConfig;
295
+ index: number;
296
+ zIndex: number;
297
+ close: (result?: any) => void;
298
+ confirm: (data?: any) => Promise<void>;
299
+ cancel: (data?: any) => Promise<void>;
300
+ onOpenChange: (open: boolean) => void;
301
+ }
302
+ type DialogRenderer = (context: DialogRenderContext) => ReactNode;
250
303
  interface DialogConfig {
251
304
  id: string;
252
305
  title?: string;
@@ -259,6 +312,8 @@ interface DialogConfig {
259
312
  width?: DialogWidth;
260
313
  height?: DialogHeight;
261
314
  className?: string;
315
+ actionMode?: DialogActionMode;
316
+ render?: DialogRenderer;
262
317
  }
263
318
  /** Internal store shape that adds promise handlers. */
264
319
  interface PromiseDialogConfig extends DialogConfig {
@@ -276,6 +331,14 @@ interface PushDialogOptions {
276
331
  width?: DialogWidth;
277
332
  height?: DialogHeight;
278
333
  className?: string;
334
+ /**
335
+ * Controls which layer owns action buttons.
336
+ * - auto: hide dialog buttons when content declares its own actions
337
+ * - dialog: always use the dialog footer
338
+ * - content: never render the dialog footer buttons
339
+ */
340
+ actionMode?: DialogActionMode;
341
+ render?: DialogRenderer;
279
342
  }
280
343
  interface DeleteDialogOptions {
281
344
  title?: string;
@@ -296,13 +359,13 @@ interface DialogApi {
296
359
  confirmDelete: (options: DeleteDialogOptions) => Promise<any>;
297
360
  closeAll: () => void;
298
361
  push: (options: PushDialogOptions) => Promise<any>;
299
- pop: (result?: any) => void;
362
+ pop: (result?: any) => Promise<void>;
300
363
  }
301
364
 
302
365
  interface DialogStoreState {
303
366
  dialogs: PromiseDialogConfig[];
304
367
  pushDialog: (config: PushDialogOptions) => Promise<any>;
305
- popDialog: (result?: any) => void;
368
+ popDialog: (result?: any) => Promise<void>;
306
369
  closeDialog: (id: string, result?: any) => void;
307
370
  closeAllDialogs: () => void;
308
371
  getCurrentDialog: () => PromiseDialogConfig | undefined;
@@ -329,7 +392,7 @@ interface NMultiDialogProps {
329
392
  store?: DialogStore;
330
393
  }
331
394
  declare function NMultiDialog({ store: storeProp }: NMultiDialogProps): react_jsx_runtime.JSX.Element;
332
- interface NDialogDirectProps extends PushDialogOptions {
395
+ interface NDialogDirectProps extends Omit<PushDialogOptions, "render"> {
333
396
  trigger?: React__default.ReactElement;
334
397
  open?: boolean;
335
398
  defaultOpen?: boolean;
@@ -362,7 +425,22 @@ interface NDeleteDialogContentProps {
362
425
  warningText?: string;
363
426
  className?: string;
364
427
  }
428
+ interface NDeleteDialogProps extends Omit<NDeleteDialogContentProps, "className"> {
429
+ open?: boolean;
430
+ title?: string;
431
+ description?: string;
432
+ confirmText?: string;
433
+ cancelText?: string;
434
+ loading?: boolean;
435
+ zIndex?: number;
436
+ className?: string;
437
+ contentClassName?: string;
438
+ onOpenChange?: (open: boolean) => void;
439
+ onConfirm?: () => void | Promise<void>;
440
+ onCancel?: () => void | Promise<void>;
441
+ }
365
442
  declare function NDeleteDialogContent({ itemName, itemType, icon: Icon, warningText, className, }: NDeleteDialogContentProps): react_jsx_runtime.JSX.Element;
443
+ declare function NDeleteDialog({ open, title, description, itemName, itemType, icon, warningText, confirmText, cancelText, loading, zIndex, className, contentClassName, onOpenChange, onConfirm, onCancel, }: NDeleteDialogProps): react_jsx_runtime.JSX.Element;
366
444
 
367
445
  declare function NPortalScopeProvider({ className, children }: {
368
446
  className?: string;
@@ -514,6 +592,62 @@ interface TabsTriggerProps extends React$1.ComponentProps<typeof TabsPrimitive.T
514
592
  declare function TabsTrigger({ className, variant, ...props }: TabsTriggerProps): react_jsx_runtime.JSX.Element;
515
593
  declare function TabsContent({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime.JSX.Element;
516
594
 
595
+ declare const TAB_COLORS: {
596
+ readonly default: {
597
+ readonly list: "bg-muted";
598
+ readonly active: "bg-background";
599
+ };
600
+ readonly primary: {
601
+ readonly list: "bg-primary/20";
602
+ readonly active: "bg-primary/50";
603
+ };
604
+ readonly card: {
605
+ readonly list: "bg-card";
606
+ readonly active: "bg-muted";
607
+ };
608
+ readonly ghost: {
609
+ readonly list: "bg-transparent";
610
+ readonly active: "bg-accent";
611
+ };
612
+ };
613
+ type NTabsColor = keyof typeof TAB_COLORS;
614
+
615
+ type NTabsItem<V extends string = string> = {
616
+ value: V;
617
+ label: React__default.ReactNode;
618
+ icon?: NIconSource;
619
+ content: React__default.ReactNode;
620
+ disabled?: boolean;
621
+ };
622
+ type NTabsClassNames = {
623
+ root?: string;
624
+ list?: string;
625
+ trigger?: string;
626
+ content?: string;
627
+ };
628
+ type NTabsStyles = {
629
+ root?: React__default.CSSProperties;
630
+ list?: React__default.CSSProperties;
631
+ trigger?: React__default.CSSProperties;
632
+ activeTrigger?: React__default.CSSProperties;
633
+ content?: React__default.CSSProperties;
634
+ };
635
+ interface NTabsProps<V extends string = string> {
636
+ items: NTabsItem<V>[];
637
+ defaultValue?: V;
638
+ value?: V;
639
+ onValueChange?: (value: V) => void;
640
+ variant?: TabsVariant;
641
+ orientation?: TabsOrientation;
642
+ color?: NTabsColor;
643
+ accentColor?: string;
644
+ fullWidth?: boolean;
645
+ className?: string;
646
+ classNames?: NTabsClassNames;
647
+ styles?: NTabsStyles;
648
+ }
649
+ declare function NTabs<V extends string = string>({ items, defaultValue, value, onValueChange, variant, orientation, color, accentColor, fullWidth, className, classNames, styles, }: NTabsProps<V>): react_jsx_runtime.JSX.Element;
650
+
517
651
  declare function TooltipProvider({ delayDuration, ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Provider>): react_jsx_runtime.JSX.Element;
518
652
  declare function Tooltip({ ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Root>): react_jsx_runtime.JSX.Element;
519
653
  declare function TooltipTrigger({ ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
@@ -554,6 +688,28 @@ interface ScrollAreaProps extends React$1.HTMLAttributes<HTMLDivElement> {
554
688
  }
555
689
  declare function ScrollArea({ className, children, ...props }: ScrollAreaProps): react_jsx_runtime.JSX.Element;
556
690
 
691
+ interface NajmScrollProps extends Omit<OverlayScrollbarsComponentProps, "options" | "ref" | "element"> {
692
+ /** Host element tag. Defaults to "div". */
693
+ element?: keyof React$1.JSX.IntrinsicElements;
694
+ /** Which axes may scroll. Defaults to vertical only. */
695
+ axis?: "both" | "x" | "y";
696
+ /** Scrollbar auto-hide behaviour. Defaults to "never" (always visible while scrollable). */
697
+ autoHide?: "never" | "scroll" | "leave" | "move";
698
+ /** Receives the actual scroll viewport element (the node that scrolls), for measuring or scrollTo. */
699
+ viewportRef?: React$1.Ref<HTMLElement>;
700
+ options?: OverlayScrollbarsComponentProps["options"];
701
+ }
702
+ /**
703
+ * Scroll container with a custom overlay scrollbar (OverlayScrollbars).
704
+ *
705
+ * The bar floats over the content and reserves **no layout space** in every
706
+ * browser — unlike native scrollbars, which `overflow: auto` always reserves a
707
+ * gutter for. Children are rendered inside the scroll viewport, so put layout
708
+ * (grid/flex) classes on a child element, and sizing (`flex-1 min-h-0`,
709
+ * `max-h-*`, etc.) on this component.
710
+ */
711
+ declare function NajmScroll({ className, axis, autoHide, viewportRef, events, options, element, children, style, ...props }: NajmScrollProps): react_jsx_runtime.JSX.Element;
712
+
557
713
  type AvatarSize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
558
714
  type AvatarShape$1 = "circle" | "rounded" | "square";
559
715
  type AvatarStatusType = "online" | "offline" | "busy" | "away";
@@ -849,6 +1005,7 @@ interface CardClassNames {
849
1005
  }
850
1006
  interface CardProps {
851
1007
  children?: React__default.ReactNode;
1008
+ onClick?: () => void;
852
1009
  title?: string;
853
1010
  description?: string;
854
1011
  icon?: NIconSource;
@@ -865,10 +1022,11 @@ interface CardProps {
865
1022
  onRetry?: () => void;
866
1023
  noPadding?: boolean;
867
1024
  separator?: boolean;
1025
+ bordered?: boolean;
868
1026
  className?: string;
869
1027
  classNames?: CardClassNames;
870
1028
  }
871
- declare function NCard({ children, title, description, icon, iconColor, loading, error, empty, noData, loadingText, errorText, emptyText, noDataText, skeleton, onRetry, noPadding, separator, className, classNames, }: CardProps): react_jsx_runtime.JSX.Element;
1029
+ declare function NCard({ children, title, description, icon, iconColor, loading, error, empty, noData, loadingText, errorText, emptyText, noDataText, skeleton, onRetry, noPadding, separator, bordered, className, classNames, onClick, }: CardProps): react_jsx_runtime.JSX.Element;
872
1030
 
873
1031
  declare function truncateByCharacters(text: string, maxCharacters: number, suffix?: string): string;
874
1032
  interface NSectionInfoProps {
@@ -952,6 +1110,7 @@ interface BaseProps$1 {
952
1110
  icon: NIconSource;
953
1111
  label: string;
954
1112
  onClick?: () => void;
1113
+ bordered?: boolean;
955
1114
  className?: string;
956
1115
  classNames?: NStatCardClassNames;
957
1116
  }
@@ -1295,26 +1454,64 @@ interface NFolderIconProps {
1295
1454
  }
1296
1455
  declare function NFolderIcon({ size, className }: NFolderIconProps): react_jsx_runtime.JSX.Element;
1297
1456
 
1298
- interface BaseInputProps {
1299
- children: React__default.ReactNode;
1300
- variant?: "default" | "rounded" | "ghost";
1301
- status?: "default" | "error";
1302
- hasIcon?: boolean;
1303
- className?: string;
1457
+ type SliderVariant = "default" | "secondary" | "destructive" | "accent" | "success" | "warning" | "info";
1458
+ type SliderSize = "sm" | "md" | "lg";
1459
+ type SliderOrientation = "horizontal" | "vertical";
1460
+ declare const sliderVariants: (props?: {
1461
+ size?: "sm" | "md" | "lg";
1462
+ orientation?: "horizontal" | "vertical";
1463
+ } & class_variance_authority_types.ClassProp) => string;
1464
+ interface NSliderProps extends Omit<React$1.ComponentPropsWithoutRef<typeof SliderPrimitive.Root>, "value" | "defaultValue" | "onValueChange" | "orientation" | "dir" | "asChild"> {
1465
+ value?: number | [number, number];
1466
+ defaultValue?: number | [number, number];
1467
+ onValueChange?: (value: number | [number, number]) => void;
1468
+ min?: number;
1469
+ max?: number;
1470
+ step?: number;
1471
+ variant?: SliderVariant;
1472
+ size?: SliderSize;
1473
+ orientation?: SliderOrientation;
1304
1474
  disabled?: boolean;
1305
- onHover?: () => void;
1306
- onClick?: () => void;
1475
+ showTooltip?: boolean;
1476
+ formatTooltip?: (n: number) => string;
1477
+ dir?: "ltr" | "rtl";
1478
+ name?: string;
1479
+ id?: string;
1480
+ "aria-label"?: string;
1481
+ "aria-labelledby"?: string;
1307
1482
  }
1308
- declare const BaseInput: React__default.FC<BaseInputProps>;
1483
+ declare function NSlider({ value: controlledValue, defaultValue, onValueChange, min, max, step, variant, size, orientation, disabled, showTooltip, formatTooltip, dir, name, className, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...rest }: NSliderProps): react_jsx_runtime.JSX.Element;
1484
+ declare namespace NSlider {
1485
+ var displayName: string;
1486
+ }
1487
+
1488
+ interface SliderProps extends Omit<NSliderProps, "value" | "defaultValue" | "onValueChange"> {
1489
+ value: number[];
1490
+ onValueChange: (value: number[]) => void;
1491
+ }
1492
+ declare function Slider({ value, onValueChange, ...rest }: SliderProps): react_jsx_runtime.JSX.Element;
1493
+ interface SliderInputProps extends Omit<NSliderProps, "value" | "defaultValue" | "onValueChange" | "onChange"> {
1494
+ value?: number;
1495
+ onChange?: (value: number) => void;
1496
+ status?: "default" | "error";
1497
+ icon?: unknown;
1498
+ iconColor?: string;
1499
+ readOnly?: boolean;
1500
+ }
1501
+ declare function SliderInput({ value, onChange, status: _status, icon: _icon, iconColor: _iconColor, readOnly: _readOnly, ...rest }: SliderInputProps): react_jsx_runtime.JSX.Element;
1309
1502
 
1310
1503
  type InputIcon = string | ReactNode | ComponentType<{
1311
1504
  className?: string;
1312
- style?: React.CSSProperties;
1505
+ style?: CSSProperties;
1313
1506
  }>;
1507
+ declare const TAILWIND_COLORS: readonly ["black", "white", "gray", "slate", "zinc", "neutral", "stone", "red", "orange", "amber", "yellow", "green", "teal", "blue", "indigo", "purple"];
1508
+ type TailwindColor = "muted" | "primary" | "accent" | "success" | "warning" | "destructive" | typeof TAILWIND_COLORS[number];
1314
1509
  interface BaseProps {
1315
1510
  className?: string;
1316
1511
  variant?: "default" | "rounded" | "ghost";
1317
1512
  status?: "default" | "error";
1513
+ bordered?: boolean;
1514
+ borderColor?: TailwindColor;
1318
1515
  iconColor?: string;
1319
1516
  }
1320
1517
  interface SelectItemType {
@@ -1401,9 +1598,7 @@ interface SwitchInputProps extends BaseProps {
1401
1598
  onChange: (checked: boolean) => void;
1402
1599
  label?: string;
1403
1600
  helper?: string;
1404
- icon?: string | ComponentType<{
1405
- className?: string;
1406
- }>;
1601
+ icon?: InputIcon;
1407
1602
  showIcon?: boolean;
1408
1603
  iconPosition?: "label" | "input";
1409
1604
  }
@@ -1498,6 +1693,18 @@ interface LangInputProps extends BaseProps {
1498
1693
  disabled?: boolean;
1499
1694
  }
1500
1695
 
1696
+ interface BaseInputProps extends React__default.HTMLAttributes<HTMLDivElement> {
1697
+ children: React__default.ReactNode;
1698
+ variant?: "default" | "rounded" | "ghost";
1699
+ status?: "default" | "error";
1700
+ bordered?: boolean;
1701
+ borderColor?: TailwindColor;
1702
+ hasIcon?: boolean;
1703
+ disabled?: boolean;
1704
+ onHover?: () => void;
1705
+ }
1706
+ declare const BaseInput: React__default.ForwardRefExoticComponent<BaseInputProps & React__default.RefAttributes<HTMLDivElement>>;
1707
+
1501
1708
  declare const TextInput: React__default.FC<TextInputProps>;
1502
1709
 
1503
1710
  declare const NumberInput: React__default.FC<NumberInputProps>;
@@ -1516,7 +1723,7 @@ declare const RadioGroupInput: React__default.FC<RadioGroupInputProps>;
1516
1723
 
1517
1724
  declare const CheckboxInput: React__default.FC<CheckboxInputProps>;
1518
1725
 
1519
- declare function CheckboxGroupInput({ value, onChange, items, layout, className, variant, status, disabled, }: CheckboxGroupInputProps & {
1726
+ declare function CheckboxGroupInput({ value, onChange, items, layout, className, variant, status, bordered, borderColor, disabled, }: CheckboxGroupInputProps & {
1520
1727
  disabled?: boolean;
1521
1728
  }): react_jsx_runtime.JSX.Element;
1522
1729
 
@@ -1534,19 +1741,21 @@ declare const StarRatingInput: React__default.FC<StarRatingInputProps>;
1534
1741
 
1535
1742
  declare const ColorArrayInput: React__default.FC<ColorArrayInputProps>;
1536
1743
 
1537
- declare function ColorPickerInput({ value, onChange, colors, className, variant, status, disabled, }: ColorArrayInputProps & {
1744
+ declare function ColorPickerInput({ value, onChange, colors, className, variant, status, bordered, borderColor, disabled, }: ColorArrayInputProps & {
1538
1745
  disabled?: boolean;
1539
1746
  }): react_jsx_runtime.JSX.Element;
1540
1747
 
1541
- declare function EmojiInput({ value, onChange, options, className, variant, status, disabled, }: EmojiInputProps & {
1748
+ declare function EmojiInput({ value, onChange, options, className, variant, status, bordered, borderColor, disabled, }: EmojiInputProps & {
1542
1749
  disabled?: boolean;
1543
1750
  }): react_jsx_runtime.JSX.Element;
1544
1751
 
1545
1752
  declare function LangInput({ value, onChange, items, disabled, className, }: LangInputProps): react_jsx_runtime.JSX.Element;
1546
1753
 
1547
- declare function PhoneInput({ value, onChange, defaultCountry, placeholder, disabled, className, variant, status, }: PhoneInputProps & {
1754
+ declare function PhoneInput({ value, onChange, defaultCountry, placeholder, disabled, className, variant, status, bordered, borderColor, }: PhoneInputProps & {
1548
1755
  variant?: "default" | "rounded" | "ghost";
1549
1756
  status?: "default" | "error";
1757
+ borderColor?: TailwindColor;
1758
+ bordered?: boolean;
1550
1759
  }): react_jsx_runtime.JSX.Element;
1551
1760
 
1552
1761
  declare const TimeInput: React__default.FC<TimeInputProps>;
@@ -1563,17 +1772,6 @@ declare function getIconColorProps(iconColor?: string, baseClassName?: string):
1563
1772
  };
1564
1773
  };
1565
1774
 
1566
- interface SliderProps {
1567
- value: number[];
1568
- onValueChange: (value: number[]) => void;
1569
- min?: number;
1570
- max?: number;
1571
- step?: number;
1572
- className?: string;
1573
- disabled?: boolean;
1574
- }
1575
- declare function Slider({ value, onValueChange, min, max, step, className, disabled }: SliderProps): react_jsx_runtime.JSX.Element;
1576
-
1577
1775
  interface SearchFieldProps {
1578
1776
  value: string;
1579
1777
  onChange: (value: string) => void;
@@ -1618,6 +1816,7 @@ interface FormSlotClassNames {
1618
1816
  }
1619
1817
  declare const VariantProvider: React__default.FC<{
1620
1818
  variant?: FormVariant;
1819
+ bordered?: boolean;
1621
1820
  children: React__default.ReactNode;
1622
1821
  }>;
1623
1822
  declare const useVariant: () => FormVariant;
@@ -1628,7 +1827,7 @@ interface BaseFormInputProps {
1628
1827
  formLabel?: string;
1629
1828
  formDescription?: string;
1630
1829
  required?: boolean;
1631
- icon?: React.ReactNode;
1830
+ icon?: NIconSource;
1632
1831
  iconColor?: string;
1633
1832
  items?: any;
1634
1833
  disabled?: boolean;
@@ -1638,27 +1837,29 @@ interface BaseFormInputProps {
1638
1837
  classNames?: FormSlotClassNames;
1639
1838
  onChange?: (value: any) => void;
1640
1839
  }
1840
+ type FormInputSpecificProps<T> = Omit<T, "value" | "onChange" | keyof BaseFormInputProps>;
1641
1841
  type InputTypeMap = {
1642
- text: Omit<TextInputProps, "value" | "onChange">;
1643
- number: Omit<NumberInputProps, "value" | "onChange">;
1644
- password: Omit<PasswordInputProps, "value" | "onChange">;
1645
- textarea: Omit<TextAreaInputProps, "value" | "onChange">;
1646
- select: Omit<SelectInputProps, "value" | "onChange">;
1647
- combobox: Omit<ComboboxInputProps, "value" | "onChange">;
1648
- multiselect: Omit<MultiSelectInputProps, "value" | "onChange">;
1649
- radio: Omit<RadioGroupInputProps, "value" | "onChange">;
1650
- switch: Omit<SwitchInputProps, "value" | "onChange">;
1651
- checkbox: Omit<CheckboxInputProps, "value" | "onChange">;
1652
- checkboxGroup: Omit<CheckboxGroupInputProps, "value" | "onChange">;
1653
- file: Omit<FileInputProps, "value" | "onChange">;
1654
- image: Omit<ImageInputProps, "value" | "onChange">;
1655
- date: Omit<DateInputProps, "value" | "onChange">;
1656
- starRating: Omit<StarRatingInputProps, "value" | "onChange">;
1657
- colorArray: Omit<ColorArrayInputProps, "value" | "onChange">;
1658
- emoji: Omit<EmojiInputProps, "value" | "onChange">;
1659
- lang: Omit<LangInputProps, "value" | "onChange">;
1660
- phone: Omit<PhoneInputProps, "value" | "onChange">;
1661
- time: Omit<TimeInputProps, "value" | "onChange">;
1842
+ text: FormInputSpecificProps<TextInputProps>;
1843
+ number: FormInputSpecificProps<NumberInputProps>;
1844
+ password: FormInputSpecificProps<PasswordInputProps>;
1845
+ textarea: FormInputSpecificProps<TextAreaInputProps>;
1846
+ select: FormInputSpecificProps<SelectInputProps>;
1847
+ combobox: FormInputSpecificProps<ComboboxInputProps>;
1848
+ multiselect: FormInputSpecificProps<MultiSelectInputProps>;
1849
+ radio: FormInputSpecificProps<RadioGroupInputProps>;
1850
+ switch: FormInputSpecificProps<SwitchInputProps>;
1851
+ checkbox: FormInputSpecificProps<CheckboxInputProps>;
1852
+ checkboxGroup: FormInputSpecificProps<CheckboxGroupInputProps>;
1853
+ file: FormInputSpecificProps<FileInputProps>;
1854
+ image: FormInputSpecificProps<ImageInputProps>;
1855
+ date: FormInputSpecificProps<DateInputProps>;
1856
+ starRating: FormInputSpecificProps<StarRatingInputProps>;
1857
+ colorArray: FormInputSpecificProps<ColorArrayInputProps>;
1858
+ emoji: FormInputSpecificProps<EmojiInputProps>;
1859
+ lang: FormInputSpecificProps<LangInputProps>;
1860
+ phone: FormInputSpecificProps<PhoneInputProps>;
1861
+ time: FormInputSpecificProps<TimeInputProps>;
1862
+ slider: FormInputSpecificProps<SliderInputProps>;
1662
1863
  };
1663
1864
  type FormInputProps = {
1664
1865
  [K in keyof InputTypeMap]: BaseFormInputProps & {
@@ -1671,6 +1872,7 @@ type FormProps<T extends ZodTypeAny = ZodTypeAny> = {
1671
1872
  onSubmit: SubmitHandler<TypeOf<T>>;
1672
1873
  form?: UseFormReturn<TypeOf<T>>;
1673
1874
  variant?: FormVariant;
1875
+ bordered?: boolean;
1674
1876
  as?: "form" | "div";
1675
1877
  className?: string;
1676
1878
  id?: string;
@@ -1753,6 +1955,8 @@ interface WizardFormProps {
1753
1955
  nextLabel?: string;
1754
1956
  previousLabel?: string;
1755
1957
  submitLabel?: string;
1958
+ variant?: FormVariant;
1959
+ bordered?: boolean;
1756
1960
  className?: string;
1757
1961
  classNames?: WizardClassNames;
1758
1962
  footerSlot?: ReactNode;
@@ -1764,7 +1968,7 @@ interface StepMeta {
1764
1968
  title: string;
1765
1969
  }
1766
1970
 
1767
- declare function WizardForm({ steps, schema, defaultValues, onSubmit, currentStep: controlledStep, onCurrentStepChange, onStepComplete, showHeader, showFooter, nextLabel, previousLabel, submitLabel, className, classNames, footerSlot, }: WizardFormProps): react_jsx_runtime.JSX.Element;
1971
+ declare function WizardForm({ steps, schema, defaultValues, onSubmit, currentStep: controlledStep, onCurrentStepChange, onStepComplete, showHeader, showFooter, nextLabel, previousLabel, submitLabel, variant, bordered, className, classNames, footerSlot, }: WizardFormProps): react_jsx_runtime.JSX.Element;
1768
1972
 
1769
1973
  interface StepIndicatorProps {
1770
1974
  stepNumber: number;
@@ -1871,7 +2075,9 @@ interface TableState {
1871
2075
  CardComponent: ComponentType<any> | null;
1872
2076
  className: string;
1873
2077
  classNames: NTableClassNames;
2078
+ bordered: boolean;
1874
2079
  headerClassName: string;
2080
+ headerColor: string | undefined;
1875
2081
  showCheckbox: boolean;
1876
2082
  selectedRowId: string | null;
1877
2083
  headerSlot: ReactNode | null;
@@ -1881,6 +2087,9 @@ interface TableState {
1881
2087
  onDelete: any;
1882
2088
  onRowClick: any;
1883
2089
  onRowContextMenu: any;
2090
+ onBackgroundContextMenu: ((e: MouseEvent) => void) | null;
2091
+ openRowMenu: ((e: MouseEvent, row: any) => void) | null;
2092
+ menuButton: boolean;
1884
2093
  onCellClick: any;
1885
2094
  onBulkDelete: any;
1886
2095
  onRetry: any;
@@ -1979,7 +2188,9 @@ declare const createTableStore: () => {
1979
2188
  CardComponent: () => ComponentType<any>;
1980
2189
  className: () => string;
1981
2190
  classNames: () => NTableClassNames;
2191
+ bordered: () => boolean;
1982
2192
  headerClassName: () => string;
2193
+ headerColor: () => string;
1983
2194
  showCheckbox: () => boolean;
1984
2195
  selectedRowId: () => string;
1985
2196
  headerSlot: () => ReactNode;
@@ -1989,6 +2200,9 @@ declare const createTableStore: () => {
1989
2200
  onDelete: () => any;
1990
2201
  onRowClick: () => any;
1991
2202
  onRowContextMenu: () => any;
2203
+ onBackgroundContextMenu: () => (e: MouseEvent) => void;
2204
+ openRowMenu: () => (e: MouseEvent, row: any) => void;
2205
+ menuButton: () => boolean;
1992
2206
  onCellClick: () => any;
1993
2207
  onBulkDelete: () => any;
1994
2208
  onRetry: () => any;
@@ -2056,6 +2270,45 @@ declare const createTableStore: () => {
2056
2270
  };
2057
2271
  };
2058
2272
 
2273
+ declare const HEADER_COLORS: {
2274
+ readonly primary: {
2275
+ readonly bg: "bg-primary/15";
2276
+ readonly text: "[&_th]:text-primary";
2277
+ readonly row: "hover:bg-primary/5";
2278
+ };
2279
+ readonly violet: {
2280
+ readonly bg: "bg-violet-600/20";
2281
+ readonly text: "[&_th]:text-violet-700 dark:[&_th]:text-violet-300";
2282
+ readonly row: "hover:bg-violet-500/5";
2283
+ };
2284
+ readonly blue: {
2285
+ readonly bg: "bg-blue-600/20";
2286
+ readonly text: "[&_th]:text-blue-700 dark:[&_th]:text-blue-300";
2287
+ readonly row: "hover:bg-blue-500/5";
2288
+ };
2289
+ readonly emerald: {
2290
+ readonly bg: "bg-emerald-600/20";
2291
+ readonly text: "[&_th]:text-emerald-700 dark:[&_th]:text-emerald-300";
2292
+ readonly row: "hover:bg-emerald-500/5";
2293
+ };
2294
+ readonly amber: {
2295
+ readonly bg: "bg-amber-500/20";
2296
+ readonly text: "[&_th]:text-amber-700 dark:[&_th]:text-amber-300";
2297
+ readonly row: "hover:bg-amber-500/5";
2298
+ };
2299
+ readonly rose: {
2300
+ readonly bg: "bg-rose-600/20";
2301
+ readonly text: "[&_th]:text-rose-700 dark:[&_th]:text-rose-300";
2302
+ readonly row: "hover:bg-rose-500/5";
2303
+ };
2304
+ readonly slate: {
2305
+ readonly bg: "bg-slate-700/60";
2306
+ readonly text: "[&_th]:text-slate-100 dark:[&_th]:text-slate-300";
2307
+ readonly row: "hover:bg-slate-500/5";
2308
+ };
2309
+ };
2310
+ type TableHeaderColor = keyof typeof HEADER_COLORS;
2311
+
2059
2312
  interface NTableState {
2060
2313
  sorting: SortingState;
2061
2314
  columnFilters: ColumnFiltersState;
@@ -2063,6 +2316,18 @@ interface NTableState {
2063
2316
  rowSelection: RowSelectionState;
2064
2317
  globalFilter: string;
2065
2318
  }
2319
+ /**
2320
+ * Unified menu definition for NTable. The same items power the row right-click
2321
+ * menu AND the built-in ⋮ button; `background` powers right-click on whitespace.
2322
+ */
2323
+ interface NTableMenu<T = any> {
2324
+ /** Items for right-clicking a row/card and for the built-in ⋮ button. */
2325
+ row?: (row: T) => ContextMenuItem[];
2326
+ /** Items for right-clicking empty space (whitespace / between cards). */
2327
+ background?: () => ContextMenuItem[];
2328
+ }
2329
+ /** Object form, or a bare function treated as `{ row }`. */
2330
+ type NTableMenuProp<T = any> = NTableMenu<T> | ((row: T) => ContextMenuItem[]);
2066
2331
  interface NTableProps<T = any, M extends ViewMode = ViewMode> {
2067
2332
  data: T[];
2068
2333
  columns: ColumnDef<T, any>[];
@@ -2083,6 +2348,7 @@ interface NTableProps<T = any, M extends ViewMode = ViewMode> {
2083
2348
  canExpand?: boolean;
2084
2349
  renderSubRow?: (row: T) => React__default.ReactNode;
2085
2350
  'data-row'?: string;
2351
+ 'data-row-id'?: string;
2086
2352
  }>;
2087
2353
  renderToolbar?: (state: NTableState) => React__default.ReactNode;
2088
2354
  renderEmpty?: () => React__default.ReactNode;
@@ -2090,6 +2356,8 @@ interface NTableProps<T = any, M extends ViewMode = ViewMode> {
2090
2356
  renderLoading?: () => React__default.ReactNode;
2091
2357
  className?: string;
2092
2358
  classNames?: NTableClassNames;
2359
+ /** Use a border instead of a shadow for the table container and cards. */
2360
+ bordered?: boolean;
2093
2361
  density?: "compact" | "comfortable" | "spacious";
2094
2362
  availableModes?: readonly M[];
2095
2363
  mode?: M;
@@ -2138,9 +2406,12 @@ interface NTableProps<T = any, M extends ViewMode = ViewMode> {
2138
2406
  toolbarLabels?: boolean;
2139
2407
  dynamicHeight?: boolean;
2140
2408
  headerClassName?: string;
2409
+ headerColor?: TableHeaderColor;
2141
2410
  showCheckbox?: boolean;
2142
2411
  onRowClick?: (row: T) => void;
2143
2412
  onRowContextMenu?: (e: React__default.MouseEvent, row: T) => void;
2413
+ menu?: NTableMenuProp<T>;
2414
+ menuButton?: boolean;
2144
2415
  onCellEdit?: (row: T, columnId: string, value: any) => Promise<any>;
2145
2416
  onBulkDelete?: (ids: string[]) => void;
2146
2417
  pageSizeOptions?: number[];
@@ -2182,8 +2453,13 @@ interface NDataCardShellProps {
2182
2453
  actions?: NDataCardShellActions;
2183
2454
  children?: React__default.ReactNode;
2184
2455
  className?: string;
2456
+ showCheckbox?: boolean;
2457
+ selectedRowId?: string | null;
2458
+ openRowMenu?: ((e: React__default.MouseEvent, row: any) => void) | null;
2459
+ menuButton?: boolean;
2460
+ bordered?: boolean;
2185
2461
  }
2186
- declare function NDataCardShell({ row, onClick, onContextMenu, actions, children, className }: NDataCardShellProps): react_jsx_runtime.JSX.Element;
2462
+ declare function NDataCardShell({ row, onClick, onContextMenu, actions, children, className, showCheckbox, selectedRowId, openRowMenu, menuButton, bordered }: NDataCardShellProps): react_jsx_runtime.JSX.Element;
2187
2463
 
2188
2464
  interface NTableCardRootProps extends Omit<React__default.HTMLAttributes<HTMLDivElement>, "onClick" | "onContextMenu"> {
2189
2465
  card: {
@@ -2289,7 +2565,9 @@ declare const TableStoreContext: React$1.Context<{
2289
2565
  CardComponent: () => React$1.ComponentType<any>;
2290
2566
  className: () => string;
2291
2567
  classNames: () => NTableClassNames;
2568
+ bordered: () => boolean;
2292
2569
  headerClassName: () => string;
2570
+ headerColor: () => string;
2293
2571
  showCheckbox: () => boolean;
2294
2572
  selectedRowId: () => string;
2295
2573
  headerSlot: () => React$1.ReactNode;
@@ -2299,6 +2577,9 @@ declare const TableStoreContext: React$1.Context<{
2299
2577
  onDelete: () => any;
2300
2578
  onRowClick: () => any;
2301
2579
  onRowContextMenu: () => any;
2580
+ onBackgroundContextMenu: () => (e: React$1.MouseEvent) => void;
2581
+ openRowMenu: () => (e: React$1.MouseEvent, row: any) => void;
2582
+ menuButton: () => boolean;
2302
2583
  onCellClick: () => any;
2303
2584
  onBulkDelete: () => any;
2304
2585
  onRetry: () => any;
@@ -2401,7 +2682,9 @@ declare function useStoreSync(props: any): {
2401
2682
  CardComponent: () => React__default.ComponentType<any>;
2402
2683
  className: () => string;
2403
2684
  classNames: () => NTableClassNames;
2685
+ bordered: () => boolean;
2404
2686
  headerClassName: () => string;
2687
+ headerColor: () => string;
2405
2688
  showCheckbox: () => boolean;
2406
2689
  selectedRowId: () => string;
2407
2690
  headerSlot: () => React__default.ReactNode;
@@ -2411,6 +2694,9 @@ declare function useStoreSync(props: any): {
2411
2694
  onDelete: () => any;
2412
2695
  onRowClick: () => any;
2413
2696
  onRowContextMenu: () => any;
2697
+ onBackgroundContextMenu: () => (e: React__default.MouseEvent) => void;
2698
+ openRowMenu: () => (e: React__default.MouseEvent, row: any) => void;
2699
+ menuButton: () => boolean;
2414
2700
  onCellClick: () => any;
2415
2701
  onBulkDelete: () => any;
2416
2702
  onRetry: () => any;
@@ -2490,7 +2776,19 @@ declare function useTable(): {
2490
2776
  globalFilter: string;
2491
2777
  setGlobalFilter: React__default.Dispatch<React__default.SetStateAction<string>>;
2492
2778
  };
2493
- declare function useTableKeyboard(): void;
2779
+ interface UseTableKeyboardOptions {
2780
+ /**
2781
+ * When provided, only fire shortcuts while the keydown target is inside
2782
+ * this element. Without it, shortcuts are global and would conflict between
2783
+ * multiple NTable instances on the same page.
2784
+ */
2785
+ scopeRef?: RefObject<HTMLElement | null>;
2786
+ /** Close the NTable right-click context menu (if any). */
2787
+ contextMenuClose?: () => void;
2788
+ /** True while the NTable context menu is open. */
2789
+ contextMenuOpen?: boolean;
2790
+ }
2791
+ declare function useTableKeyboard(options?: UseTableKeyboardOptions): void;
2494
2792
 
2495
2793
  declare function cn(...inputs: ClassValue[]): string;
2496
2794
 
@@ -2563,6 +2861,11 @@ interface NAppShellClassNames {
2563
2861
  content?: string;
2564
2862
  overlay?: string;
2565
2863
  }
2864
+ interface SidebarWidths {
2865
+ expanded?: number | string;
2866
+ collapsed?: number | string;
2867
+ mobile?: number | string;
2868
+ }
2566
2869
  interface SidebarProps {
2567
2870
  logo?: ReactNode;
2568
2871
  navItems?: NavItem[];
@@ -2575,9 +2878,12 @@ interface SidebarProps {
2575
2878
  onCollapsedChange?: (collapsed: boolean) => void;
2576
2879
  showCollapseButton?: boolean;
2577
2880
  collapseButtonPosition?: 'header' | 'nav';
2881
+ widths?: SidebarWidths;
2578
2882
  showSectionLabels?: boolean;
2579
2883
  showSectionIcons?: boolean;
2580
2884
  showSectionSeparators?: boolean;
2885
+ /** Use a border instead of the default flat sidebar edge. */
2886
+ bordered?: boolean;
2581
2887
  footer?: ReactNode;
2582
2888
  className?: string;
2583
2889
  classNames?: NAppShellClassNames;
@@ -2673,11 +2979,13 @@ interface NSidebarMobileProps {
2673
2979
  onOpen: () => void;
2674
2980
  onClose: () => void;
2675
2981
  mobileBreakpoint: 'sm' | 'md' | 'lg';
2982
+ width?: number | string;
2676
2983
  hamburgerLabel?: string;
2677
2984
  closeLabel?: string;
2678
2985
  hamburgerClassName?: string;
2679
2986
  showHamburgerButton?: boolean;
2680
2987
  children?: ReactNode;
2988
+ bordered?: boolean;
2681
2989
  }
2682
2990
 
2683
2991
  declare function NSidebarHeader({ children, collapsed, className, classNames }: NSidebarHeaderProps): react_jsx_runtime.JSX.Element;
@@ -2690,9 +2998,9 @@ declare function NSidebarSection({ group, activePath, isActive, onNavigate, link
2690
2998
 
2691
2999
  declare function NSidebarFooter({ children, onSettings, settingsLabel, onLogout, logoutLabel, showCollapseButton, collapsed, onToggleCollapsed, collapseLabel, expandLabel, isMobile, className, classNames, }: NSidebarFooterProps): react_jsx_runtime.JSX.Element;
2692
3000
 
2693
- declare function NSidebarMobile({ open, onOpen, onClose, mobileBreakpoint, hamburgerLabel, closeLabel, hamburgerClassName, showHamburgerButton, children, }: NSidebarMobileProps): react_jsx_runtime.JSX.Element;
3001
+ declare function NSidebarMobile({ open, onOpen, onClose, mobileBreakpoint, width, hamburgerLabel, closeLabel, hamburgerClassName, showHamburgerButton, children, bordered, }: NSidebarMobileProps): react_jsx_runtime.JSX.Element;
2694
3002
 
2695
- declare function NSidebar({ logo, navItems, activePath, isActive, onNavigate, linkComponent, collapsed: collapsedProp, defaultCollapsed, onCollapsedChange, showCollapseButton, showSectionLabels, showSectionIcons, showSectionSeparators, footer, className, classNames, mobileBreakpoint, mobileOpen: mobileOpenProp, defaultMobileOpen, onMobileOpenChange, closeOnNavigate, hamburgerLabel, closeLabel, collapseLabel, expandLabel, hamburgerClassName, showHamburgerButton, logoIcon, logoTitle, logoSubtitle, onLogoClick, onSettings, settingsLabel, onLogout, logoutLabel, }: SidebarProps): react_jsx_runtime.JSX.Element;
3003
+ declare function NSidebar({ logo, navItems, activePath, isActive, onNavigate, linkComponent, collapsed: collapsedProp, defaultCollapsed, onCollapsedChange, showCollapseButton, showSectionLabels, showSectionIcons, showSectionSeparators, bordered, footer, className, classNames, mobileBreakpoint, mobileOpen: mobileOpenProp, defaultMobileOpen, onMobileOpenChange, closeOnNavigate, hamburgerLabel, closeLabel, collapseLabel, expandLabel, hamburgerClassName, showHamburgerButton, logoIcon, logoTitle, logoSubtitle, onLogoClick, onSettings, settingsLabel, onLogout, logoutLabel, widths, }: SidebarProps): react_jsx_runtime.JSX.Element;
2696
3004
 
2697
3005
  declare function NSidebarItem({ item, activePath, isActive, onNavigate, linkComponent: LinkComponent, collapsed, depth, classNames, }: SidebarItemProps): react_jsx_runtime.JSX.Element;
2698
3006
 
@@ -2721,7 +3029,7 @@ interface NAppShellAction {
2721
3029
  badge?: ReactNode;
2722
3030
  hideOnMobile?: boolean;
2723
3031
  }
2724
- interface NAppShellProps {
3032
+ interface NAppShellProps extends Pick<SidebarProps, "widths"> {
2725
3033
  children: ReactNode;
2726
3034
  logo?: ReactNode;
2727
3035
  title?: string;
@@ -2763,7 +3071,7 @@ interface NCommandPaletteProps {
2763
3071
  className?: string;
2764
3072
  }
2765
3073
 
2766
- declare function NAppShell({ children, logo, title, navItems, activePath, onNavigate, isActive, linkComponent, user, actions, userMenuActions, onLogout, collapsed: controlledCollapsed, defaultCollapsed, onCollapsedChange, collapseButtonPosition, sidebarFooter, navbarLeft, navbarRight, classNames, }: NAppShellProps): react_jsx_runtime.JSX.Element;
3074
+ declare function NAppShell({ children, logo, title, navItems, activePath, onNavigate, isActive, linkComponent, user, actions, userMenuActions, onLogout, collapsed: controlledCollapsed, defaultCollapsed, onCollapsedChange, collapseButtonPosition, widths, sidebarFooter, navbarLeft, navbarRight, classNames, }: NAppShellProps): react_jsx_runtime.JSX.Element;
2767
3075
 
2768
3076
  interface NavbarProps {
2769
3077
  title?: string;
@@ -2783,23 +3091,41 @@ declare function NNavbar({ title, logo, user, actions, userMenuActions, onLogout
2783
3091
 
2784
3092
  declare function NCommandPalette({ commands, open, onOpenChange, placeholder, emptyMessage, className, }: NCommandPaletteProps): react_jsx_runtime.JSX.Element;
2785
3093
 
2786
- interface PageHeaderProps {
2787
- icon: LucideIcon;
3094
+ interface PageHeaderSlotProps {
3095
+ children: ReactNode;
3096
+ className?: string;
3097
+ }
3098
+ interface NPageHeaderProps {
3099
+ icon: ComponentType<{
3100
+ className?: string;
3101
+ }>;
2788
3102
  title: string;
2789
3103
  subtitle?: string;
2790
3104
  actions?: ReactNode;
2791
3105
  filters?: ReactNode;
2792
3106
  top?: ReactNode;
2793
- footer?: ReactNode;
2794
3107
  search?: InputHTMLAttributes<HTMLInputElement> & {
2795
3108
  placeholder?: string;
2796
3109
  ref?: Ref<HTMLInputElement>;
2797
3110
  };
2798
- children: ReactNode;
2799
- contentClassName?: string;
2800
- contentRef?: React__default.Ref<HTMLDivElement>;
3111
+ children?: ReactNode;
3112
+ className?: string;
3113
+ headerClassName?: string;
3114
+ bordered?: boolean;
3115
+ }
3116
+ declare function NPageHeaderActions({ children, className }: PageHeaderSlotProps): react_jsx_runtime.JSX.Element;
3117
+ declare namespace NPageHeaderActions {
3118
+ var displayName: string;
3119
+ }
3120
+ declare function NPageHeaderFilters({ children, className }: PageHeaderSlotProps): react_jsx_runtime.JSX.Element;
3121
+ declare namespace NPageHeaderFilters {
3122
+ var displayName: string;
3123
+ }
3124
+ declare function NPageHeaderTop({ children, className }: PageHeaderSlotProps): react_jsx_runtime.JSX.Element;
3125
+ declare namespace NPageHeaderTop {
3126
+ var displayName: string;
2801
3127
  }
2802
- declare function NPageHeader({ icon: Icon, title, subtitle, actions, filters, top, footer, search, children, contentClassName, contentRef }: PageHeaderProps): react_jsx_runtime.JSX.Element;
3128
+ declare function NPageHeader({ icon: Icon, title, subtitle, actions, filters, top, search, children, className, headerClassName, bordered }: NPageHeaderProps): react_jsx_runtime.JSX.Element;
2803
3129
 
2804
3130
  interface InspectorSheetProps {
2805
3131
  open: boolean;
@@ -2809,4 +3135,4 @@ interface InspectorSheetProps {
2809
3135
  }
2810
3136
  declare function NInspectorSheet({ open, onClose, title, children }: InspectorSheetProps): react_jsx_runtime.JSX.Element;
2811
3137
 
2812
- export { Alert, type AlertLook, type AlertOrientation, type AlertProps, type AlertSize, type AlertTone, type AlertVariant, NCard as AsyncCard, Avatar, AvatarFallback, AvatarGroup, type AvatarGroupProps, AvatarImage, type AvatarProps$1 as AvatarProps, type AvatarShape$1 as AvatarShape, type AvatarSize, AvatarStatus, type AvatarStatusType, Badge, type BadgeColor, type BadgeIcon, type BadgeLook, type BadgeProps, type BadgeShape, type BadgeSize, type BadgeVariant, BaseInput, type BuildDefaultFileColumnsOptions, Button, type ButtonConfig, type ButtonIcon, type ButtonLoaderPosition, type ButtonProps, type ButtonRounded, type ButtonSize, type ButtonVariant, Calendar, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxGroupInput, type CheckboxGroupInputProps, CheckboxInput, type CheckboxInputProps, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorArrayInput, type ColorArrayInputProps, ColorPickerInput, Combobox, ComboboxInput, type ComboboxInputProps, type ComboboxOption, type ComboboxProps, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, type ContextMenuItem, DateInput, type DateInputProps, type DeleteDialogOptions, Dialog, type DialogApi, DialogClose, type DialogConfig, DialogContent, DialogDescription, DialogFooter, DialogHeader, type DialogHeight, DialogOverlay, DialogPortal, type DialogSize, type DialogStore, DialogTitle, DialogTrigger, type DialogWidth, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DynamicArray, type DynamicArrayProps, EmojiInput, type EmojiInputProps, type FileBrowserMode, FileImportButton, FileInput, type FileInputProps, type FileNode, Form, FormControl, FormDescription, FormField, FormInput, type FormInputProps, FormItem, FormLabel, FormMessage, type FormProps, type FormSlotClassNames, type FormVariant, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonVariant, ImageInput, type ImageInputProps, Input, type InputIcon, Label, LangInput, type LangInputProps, type LinkComponentType, MultiSelectInput, type MultiSelectInputProps, NAlert, type NAppCommandItem, NAppShell, type NAppShellAction, type NAppShellClassNames, type NAppShellProps, type NAppShellUser, NCard as NAsyncCard, type CardClassNames as NAsyncCardClassNames, type CardProps as NAsyncCardProps, NAvatar, type NAvatarClassNames, type NAvatarProps, type AvatarShape as NAvatarShape, NBadge, type NBadgeLook, type NBadgeProps, type NBulkAction, type NBulkActionButton, type NBulkActionSelect, NBulkActionsBar, type NBulkActionsBarProps, NButton, type NButtonProps, NCard, NCardAction, type CardClassNames as NCardClassNames, NCardFooter, type CardProps as NCardProps, NCommandPalette, type NCommandPaletteProps, NConfirmDialog, type NConfirmDialogProps, NContextMenu, type NContextMenuItem, type NContextMenuProps, NDataCardShell, type NDataCardShellActions, type NDataCardShellProps, NDeleteDialogContent, type NDeleteDialogContentProps, NDetailCard, type NDetailCardClassNames, type NDetailCardProps, NDetailItem, type NDetailItemProps, NDetailList, type NDetailListItem, type NDetailListProps, NDialog, type NDialogDirectProps, type NDialogProps, NEmptyState, type NEmptyStateProps, NErrorBoundary, NErrorState, type NErrorStateProps, NFileBrowser, type NFileBrowserCardProps, type NFileBrowserProps, type NFileBrowserRenderThumbProps, NFileTypeIcon, type NFileTypeIconProps, NFilterBar, NFolderIcon, type NFolderIconProps, NForm, NFormSectionHeader, type NFormSectionHeaderProps, NIcon, type NIconProps, type NIconSource, NInspectorSheet, NLoadingState, type NLoadingStateProps, NMultiDialog, type NMultiDialogProps, NNavbar, NPageHeader, NPortalScopeProvider, NProgress, type NProgressProps, NRowActions, NSection, NSectionHeader, type NSectionHeaderActionsProps, type NSectionHeaderContentProps, type NSectionHeaderProps, type NSectionHeaderSubtitleProps, type NSectionHeaderTitleProps, NSectionInfo, type NSectionInfoProps, type NSectionProps, NSectionWithInfo, type NSectionWithInfoItem, type NSectionWithInfoProps, NSheet, type NSheetProps, NSidebar, NSidebarContent, type NSidebarContentProps, NSidebarFooter, type NSidebarFooterProps, NSidebarHeader, type NSidebarHeaderProps, NSidebarItem, NSidebarLogo, type NSidebarLogoProps, NSidebarMobile, type NSidebarMobileProps, NSidebarSection, type NSidebarSectionProps, NSkeleton, NSkeletonCalendar, NSkeletonChart, NSkeletonDonut, NSkeletonEventList, NSkeletonWidget, NSkeletonWidgets, NSmartPasteDialog, type NSmartPasteDialogProps, NSpinner, type NSpinnerProps, NStatCard, type NStatCardClassNames, type NStatCardProps, NStatCardSkeleton, type NStatCardVariant, Swap as NSwap, type NSwapProps, NTable, NTableCardRoot, type NTableCardRootProps, NTableCards, type NTableClassNames, NTableContent, NTableHeader, NTableLoadingSkeleton, NTablePagination, type NTableProps, NTableRowSkeleton, NTableSkeleton, type NTableState, NUploader, type NUploaderItem, type NUploaderItemStatus, type NUploaderProps, NViewBody, NViewToggle, type NajmAccent, type NajmMode, type NajmPreset, NajmThemeProvider, type NajmThemeProviderProps, type NajmThemeTokens, NativeSelect, type NativeSelectOption, type NativeSelectProps, type NavItem, type NavItemGroup, NumberInput, type NumberInputProps, PasswordInput, type PasswordInputProps, PhoneInput, type PhoneInputProps, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PrefixProvider, Progress, type ProgressColor, type ProgressLabelPosition, type ProgressProps, type ProgressSize, type PushDialogOptions, RadioGroup, RadioGroupInput, type RadioGroupInputProps, RadioGroupItem, type RenderSlot, RepeatingFields, type RepeatingFieldsProps, ScrollArea, type ScrollAreaProps, SearchField, SearchField as SearchInput, SegmentedControl, type SegmentedControlOption, type SegmentedControlProps, Select, SelectContent, SelectGroup, SelectInput, type SelectInputProps, SelectItem, type SelectItemType$1 as SelectItemDataType, type SelectItemType, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, type SidebarItemProps, type SidebarProps, SimpleTooltip, type SimpleTooltipProps, NSkeleton as Skeleton, Slider, type SliderProps, type SmartPastePreview, type SpinnerVariant, StarRatingInput, type StarRatingInputProps, StatusPill, type StatusPillProps, type StatusPillTone, type StepConfig, StepIndicator, type StepMeta, StepsHeader, StepsProgress, type StorageMenuAction, type StorageSortOption, type StorageTarget, Swap, type SwapEffect, SwapIndeterminate, SwapOff, SwapOn, type SwapProps, type SwapSize, type SwapState, Switch, type SwitchColor, SwitchInput, type SwitchInputProps, type SwitchSize, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, type TableState, type TableStore, TableStoreContext, Tabs, TabsContent, TabsList, type TabsListProps, type TabsOrientation, type TabsProps, TabsTrigger, type TabsTriggerProps, type TabsVariant, TextAreaInput, type TextAreaInputProps, TextInput, type TextInputProps, Textarea, TimeInput, type TimeInputProps, Toaster, Toggle, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type UseContextMenuResult, type UseNFormOptions, type UseStorageContextMenuOptions, type UseStorageContextMenuResult, type UserMenuAction, VariantProvider, type WizardClassNames, WizardForm, type WizardFormProps, alertVariants, avatarVariants, badgeColorVariants, badgeVariants, buildDefaultFileColumns, buttonVariants, cn, composePreset, createDialogStore, createTableStore, dialogVariants, formatFileBytes, formatFileRelative, getIconColorProps, resolvePreset, resolveSlot, swapVariants, toggleVariants, tooltipContentVariants, truncateByCharacters, useClickOutside, useContextMenu, useDebouncedValue, useDelayedLoading, useDialog, useDialogStore, useDynamicPageSize, useFormField, useFormSubmission, useInfiniteScroll, useKeyboard, useLocalStorageState, useNForm, useNPortalScope, usePrefix, useSelection, useStepNavigation, useStorageContextMenu, useStoreSync, useTable, useTableKeyboard, useTableStore, useVariant, useVariantPreset };
3138
+ export { Alert, type AlertLook, type AlertOrientation, type AlertProps, type AlertSize, type AlertTone, type AlertVariant, NCard as AsyncCard, Avatar, AvatarFallback, AvatarGroup, type AvatarGroupProps, AvatarImage, type AvatarProps$1 as AvatarProps, type AvatarShape$1 as AvatarShape, type AvatarSize, AvatarStatus, type AvatarStatusType, Badge, type BadgeColor, type BadgeIcon, type BadgeLook, type BadgeProps, type BadgeShape, type BadgeSize, type BadgeVariant, BaseInput, type BuildDefaultFileColumnsOptions, Button, type ButtonConfig, type ButtonIcon, type ButtonLoaderPosition, type ButtonProps, type ButtonRounded, type ButtonSize, type ButtonVariant, Calendar, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxGroupInput, type CheckboxGroupInputProps, CheckboxInput, type CheckboxInputProps, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorArrayInput, type ColorArrayInputProps, ColorPickerInput, Combobox, ComboboxInput, type ComboboxInputProps, type ComboboxOption, type ComboboxProps, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, type ContextMenuItem, DateInput, type DateInputProps, type DeleteDialogOptions, Dialog, type DialogActionMode, type DialogApi, DialogClose, type DialogConfig, DialogContent, DialogDescription, DialogFooter, DialogHeader, type DialogHeight, DialogOverlay, DialogPortal, type DialogRenderContext, type DialogRenderer, type DialogSize, type DialogStore, DialogTitle, DialogTrigger, type DialogWidth, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DynamicArray, type DynamicArrayProps, EmojiInput, type EmojiInputProps, type FileBrowserMode, FileImportButton, FileInput, type FileInputProps, type FileNode, Form, FormControl, FormDescription, FormField, FormInput, type FormInputProps, FormItem, FormLabel, FormMessage, type FormProps, type FormSlotClassNames, type FormVariant, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonVariant, ImageInput, type ImageInputProps, Indicator, type IndicatorHorizontal, type IndicatorOverlay, type IndicatorPosition, type IndicatorProps, type IndicatorResponsivePosition, type IndicatorSize, type IndicatorVertical, Input, type InputIcon, Label, LangInput, type LangInputProps, type LinkComponentType, MultiSelectInput, type MultiSelectInputProps, NAlert, type NAppCommandItem, NAppShell, type NAppShellAction, type NAppShellClassNames, type NAppShellProps, type NAppShellUser, NCard as NAsyncCard, type CardClassNames as NAsyncCardClassNames, type CardProps as NAsyncCardProps, NAvatar, type NAvatarClassNames, type NAvatarProps, type AvatarShape as NAvatarShape, NBadge, type NBadgeLook, type NBadgeProps, type NBulkAction, type NBulkActionButton, type NBulkActionSelect, NBulkActionsBar, type NBulkActionsBarProps, NButton, type NButtonProps, NCard, NCardAction, type CardClassNames as NCardClassNames, NCardFooter, type CardProps as NCardProps, NCommandPalette, type NCommandPaletteProps, NConfirmDialog, type NConfirmDialogProps, NContextMenu, type NContextMenuItem, type NContextMenuProps, NDataCardShell, type NDataCardShellActions, type NDataCardShellProps, NDeleteDialog, NDeleteDialogContent, type NDeleteDialogContentProps, type NDeleteDialogProps, NDetailCard, type NDetailCardClassNames, type NDetailCardProps, NDetailItem, type NDetailItemProps, NDetailList, type NDetailListItem, type NDetailListProps, NDialog, type NDialogDirectProps, type NDialogProps, NEmptyState, type NEmptyStateProps, NErrorBoundary, NErrorState, type NErrorStateProps, NFileBrowser, type NFileBrowserCardProps, type NFileBrowserProps, type NFileBrowserRenderThumbProps, NFileTypeIcon, type NFileTypeIconProps, NFilterBar, NFolderIcon, type NFolderIconProps, NForm, NFormSectionHeader, type NFormSectionHeaderProps, NIcon, type NIconProps, type NIconSource, NIndicator, NInspectorSheet, NLoadingState, type NLoadingStateProps, NMultiDialog, type NMultiDialogProps, NNavbar, NPageHeader, NPageHeaderActions, NPageHeaderFilters, type NPageHeaderProps, NPageHeaderTop, NPortalScopeProvider, NProgress, type NProgressProps, NRowActions, NSection, NSectionHeader, type NSectionHeaderActionsProps, type NSectionHeaderContentProps, type NSectionHeaderProps, type NSectionHeaderSubtitleProps, type NSectionHeaderTitleProps, NSectionInfo, type NSectionInfoProps, type NSectionProps, NSectionWithInfo, type NSectionWithInfoItem, type NSectionWithInfoProps, NSheet, type NSheetProps, NSidebar, NSidebarContent, type NSidebarContentProps, NSidebarFooter, type NSidebarFooterProps, NSidebarHeader, type NSidebarHeaderProps, NSidebarItem, NSidebarLogo, type NSidebarLogoProps, NSidebarMobile, type NSidebarMobileProps, NSidebarSection, type NSidebarSectionProps, NSkeleton, NSkeletonCalendar, NSkeletonChart, NSkeletonDonut, NSkeletonEventList, NSkeletonWidget, NSkeletonWidgets, NSlider, type NSliderProps, NSmartPasteDialog, type NSmartPasteDialogProps, NSpinner, type NSpinnerProps, NStatCard, type NStatCardClassNames, type NStatCardProps, NStatCardSkeleton, type NStatCardVariant, Swap as NSwap, type NSwapProps, NTable, NTableCardRoot, type NTableCardRootProps, NTableCards, type NTableClassNames, NTableContent, NTableHeader, NTableLoadingSkeleton, type NTableMenu, type NTableMenuProp, NTablePagination, type NTableProps, NTableRowSkeleton, NTableSkeleton, type NTableState, NTabs, type NTabsClassNames, type NTabsColor, type NTabsItem, type NTabsProps, type NTabsStyles, NUploader, type NUploaderItem, type NUploaderItemStatus, type NUploaderProps, NViewBody, NViewToggle, type NajmAccent, type NajmMode, type NajmPreset, NajmScroll, type NajmScrollProps, NajmThemeProvider, type NajmThemeProviderProps, type NajmThemeTokens, NativeSelect, type NativeSelectOption, type NativeSelectProps, type NavItem, type NavItemGroup, NumberInput, type NumberInputProps, PasswordInput, type PasswordInputProps, PhoneInput, type PhoneInputProps, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PrefixProvider, Progress, type ProgressColor, type ProgressLabelPosition, type ProgressProps, type ProgressSize, type PushDialogOptions, RadioGroup, RadioGroupInput, type RadioGroupInputProps, RadioGroupItem, type RenderSlot, RepeatingFields, type RepeatingFieldsProps, ScrollArea, type ScrollAreaProps, SearchField, SearchField as SearchInput, SegmentedControl, type SegmentedControlOption, type SegmentedControlProps, Select, SelectContent, SelectGroup, SelectInput, type SelectInputProps, SelectItem, type SelectItemType$1 as SelectItemDataType, type SelectItemType, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, type SidebarItemProps, type SidebarProps, type SidebarWidths, SimpleTooltip, type SimpleTooltipProps, NSkeleton as Skeleton, Slider, SliderInput, type SliderInputProps, type SliderOrientation, type SliderProps, type SliderSize, type SliderVariant, type SmartPastePreview, type SpinnerVariant, StarRatingInput, type StarRatingInputProps, StatusPill, type StatusPillProps, type StatusPillTone, type StepConfig, StepIndicator, type StepMeta, StepsHeader, StepsProgress, type StorageMenuAction, type StorageSortOption, type StorageTarget, Swap, type SwapEffect, SwapIndeterminate, SwapOff, SwapOn, type SwapProps, type SwapSize, type SwapState, Switch, type SwitchColor, SwitchInput, type SwitchInputProps, type SwitchSize, TAB_COLORS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, type TableHeaderColor, TableRow, type TableState, type TableStore, TableStoreContext, Tabs, TabsContent, TabsList, type TabsListProps, type TabsOrientation, type TabsProps, TabsTrigger, type TabsTriggerProps, type TabsVariant, TextAreaInput, type TextAreaInputProps, TextInput, type TextInputProps, Textarea, TimeInput, type TimeInputProps, Toaster, Toggle, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type UseContextMenuResult, type UseNFormOptions, type UseStorageContextMenuOptions, type UseStorageContextMenuResult, type UserMenuAction, VariantProvider, type WizardClassNames, WizardForm, type WizardFormProps, alertVariants, avatarVariants, badgeColorVariants, badgeVariants, buildDefaultFileColumns, buttonVariants, cn, composePreset, createDialogStore, createTableStore, dialogVariants, formatFileBytes, formatFileRelative, getIconColorProps, indicatorVariants, resolvePreset, resolveSlot, sliderVariants, swapVariants, toggleVariants, tooltipContentVariants, truncateByCharacters, useClickOutside, useContextMenu, useDebouncedValue, useDelayedLoading, useDialog, useDialogStore, useDynamicPageSize, useFormField, useFormSubmission, useInfiniteScroll, useKeyboard, useLocalStorageState, useNForm, useNPortalScope, usePrefix, useSelection, useStepNavigation, useStorageContextMenu, useStoreSync, useTable, useTableKeyboard, useTableStore, useVariant, useVariantPreset };