najm-kit 0.0.8 → 0.0.10

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
@@ -37,6 +37,15 @@ import { ClassValue } from 'clsx';
37
37
  type NajmMode = 'light' | 'dark';
38
38
  type NajmAccent = 'neutral' | 'emerald' | 'green' | 'slate' | 'blue' | 'violet';
39
39
  type NajmPreset = 'light' | 'dark' | 'dark-emerald' | 'dark-green' | 'dark-slate' | 'dark-blue' | 'dark-violet';
40
+ /**
41
+ * Semantic border contrast preference. Components interpret this based on
42
+ * their role (surface container, input, floating surface, etc.) so a single
43
+ * app-wide value can drive border contrast for many components at once.
44
+ */
45
+ type NajmBorderDegree = 'none' | 'subtle' | 'default' | 'strong';
46
+ interface NajmAppearance {
47
+ borderDegree?: NajmBorderDegree;
48
+ }
40
49
  interface NajmThemeTokens {
41
50
  background?: string;
42
51
  foreground?: string;
@@ -57,6 +66,8 @@ interface NajmThemeTokens {
57
66
  destructive?: string;
58
67
  'destructive-foreground'?: string;
59
68
  border?: string;
69
+ 'border-subtle'?: string;
70
+ 'border-strong'?: string;
60
71
  input?: string;
61
72
  ring?: string;
62
73
  radius?: string;
@@ -69,16 +80,30 @@ interface NajmThemeProviderProps {
69
80
  /** When true, only inject accent tokens (primary, ring, accent and their foregrounds).
70
81
  * Everything else (bg, card, fg…) is inherited from the parent cascade. */
71
82
  accentOnly?: boolean;
83
+ /** App-wide UI preferences (currently border contrast). */
84
+ appearance?: NajmAppearance;
72
85
  className?: string;
73
86
  asChild?: boolean;
74
87
  children: React.ReactNode;
75
88
  }
76
89
 
77
- declare function NajmThemeProvider({ preset, mode, accent, tokens, accentOnly, className, asChild, children, }: NajmThemeProviderProps): react_jsx_runtime.JSX.Element;
90
+ declare function useNajmAppearance(): Required<NajmAppearance>;
91
+ declare function NajmThemeProvider({ preset, mode, accent, tokens, accentOnly, appearance, className, asChild, children, }: NajmThemeProviderProps): react_jsx_runtime.JSX.Element;
78
92
 
79
93
  declare function composePreset(mode: NajmMode, accent: NajmAccent): NajmThemeTokens;
80
94
  declare function resolvePreset(preset: NajmPreset): NajmThemeTokens;
81
95
 
96
+ interface BorderResolutionOptions {
97
+ borderDegree?: NajmBorderDegree;
98
+ bordered?: boolean;
99
+ fallback?: NajmBorderDegree;
100
+ }
101
+ declare function resolveBorderDegree(borderDegree: NajmBorderDegree | undefined, bordered: boolean | undefined, globalBorderDegree: NajmBorderDegree | undefined, fallback?: NajmBorderDegree): NajmBorderDegree;
102
+ declare function borderColorClassForDegree(degree: NajmBorderDegree): string;
103
+ declare function inputBorderColorClassForDegree(degree: NajmBorderDegree): string;
104
+ declare function useResolvedBorderDegree(options?: BorderResolutionOptions): NajmBorderDegree;
105
+ declare function surfaceBorderClasses(degree: NajmBorderDegree): string;
106
+
82
107
  interface KeyboardOptions {
83
108
  enabled?: boolean;
84
109
  preventDefault?: boolean;
@@ -148,7 +173,7 @@ type NIconProps = Omit<React__default.HTMLAttributes<HTMLElement>, "children"> &
148
173
  declare const NIcon: React__default.FC<NIconProps>;
149
174
 
150
175
  declare const buttonVariants: (props?: {
151
- variant?: "secondary" | "tertiary" | "destructive" | "default" | "outline" | "link" | "ghost" | "success" | "warning" | "info" | "soft" | "subtle" | "plain";
176
+ variant?: "subtle" | "default" | "secondary" | "tertiary" | "destructive" | "outline" | "link" | "ghost" | "success" | "warning" | "info" | "soft" | "plain";
152
177
  size?: "default" | "icon" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "icon-xs" | "icon-sm" | "icon-lg" | "icon-xl";
153
178
  rounded?: "none" | "default" | "sm" | "md" | "lg" | "xl" | "2xl" | "full";
154
179
  fullWidth?: boolean;
@@ -171,6 +196,7 @@ interface ButtonProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElemen
171
196
  leftIcon?: ButtonIcon;
172
197
  rightIcon?: ButtonIcon;
173
198
  bordered?: boolean;
199
+ borderDegree?: NajmBorderDegree;
174
200
  onClick?: AsyncClickHandler;
175
201
  }
176
202
  type NButtonProps = ButtonProps;
@@ -178,7 +204,7 @@ declare const Button: React$1.ForwardRefExoticComponent<ButtonProps & React$1.Re
178
204
  declare const NButton: React$1.ForwardRefExoticComponent<ButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
179
205
 
180
206
  declare const badgeVariants: (props?: {
181
- variant?: "secondary" | "destructive" | "default" | "outline" | "success" | "warning";
207
+ variant?: "default" | "secondary" | "destructive" | "outline" | "success" | "warning";
182
208
  } & class_variance_authority_types.ClassProp) => string;
183
209
  declare const badgeColorVariants: (props?: {
184
210
  color?: "neutral" | "primary" | "accent" | "secondary" | "destructive" | "success" | "warning" | "info";
@@ -475,7 +501,7 @@ declare function NSheet({ open, onOpenChange, title, description, width, side, p
475
501
  declare function useDialog(store?: DialogStore): DialogApi;
476
502
 
477
503
  declare const alertVariants: (props?: {
478
- tone?: "destructive" | "default" | "error" | "success" | "warning" | "info";
504
+ tone?: "default" | "destructive" | "error" | "success" | "warning" | "info";
479
505
  look?: "solid" | "outline" | "soft" | "dash";
480
506
  size?: "sm" | "md" | "lg";
481
507
  orientation?: "horizontal" | "vertical" | "responsive";
@@ -1023,10 +1049,11 @@ interface CardProps {
1023
1049
  noPadding?: boolean;
1024
1050
  separator?: boolean;
1025
1051
  bordered?: boolean;
1052
+ borderDegree?: NajmBorderDegree;
1026
1053
  className?: string;
1027
1054
  classNames?: CardClassNames;
1028
1055
  }
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;
1056
+ declare function NCard({ children, title, description, icon, iconColor, loading, error, empty, noData, loadingText, errorText, emptyText, noDataText, skeleton, onRetry, noPadding, separator, bordered, borderDegree, className, classNames, onClick, }: CardProps): react_jsx_runtime.JSX.Element;
1030
1057
 
1031
1058
  declare function truncateByCharacters(text: string, maxCharacters: number, suffix?: string): string;
1032
1059
  interface NSectionInfoProps {
@@ -1111,6 +1138,7 @@ interface BaseProps$1 {
1111
1138
  label: string;
1112
1139
  onClick?: () => void;
1113
1140
  bordered?: boolean;
1141
+ borderDegree?: NajmBorderDegree;
1114
1142
  className?: string;
1115
1143
  classNames?: NStatCardClassNames;
1116
1144
  }
@@ -1410,33 +1438,6 @@ interface NBulkActionsBarProps {
1410
1438
  */
1411
1439
  declare function NBulkActionsBar({ count, actions, onAction, onClear, busy, variant, className }: NBulkActionsBarProps): react_jsx_runtime.JSX.Element;
1412
1440
 
1413
- type NUploaderItemStatus = "uploading" | "done" | "error";
1414
- interface NUploaderItem {
1415
- id: string;
1416
- name: string;
1417
- size?: number;
1418
- mimeType?: string;
1419
- progress?: number;
1420
- status?: NUploaderItemStatus;
1421
- error?: string;
1422
- }
1423
- interface NUploaderProps {
1424
- title?: string;
1425
- subtitle?: string;
1426
- accept?: string;
1427
- multiple?: boolean;
1428
- disabled?: boolean;
1429
- items?: NUploaderItem[];
1430
- emptyListLabel?: string;
1431
- listTitle?: string;
1432
- className?: string;
1433
- dropzoneClassName?: string;
1434
- onFilesSelected?: (files: File[]) => void;
1435
- onCancel?: (id: string) => void;
1436
- onRemove?: (id: string) => void;
1437
- }
1438
- declare function NUploader({ title, subtitle, accept, multiple, disabled, items, listTitle, className, dropzoneClassName, onFilesSelected, onCancel, onRemove, }: NUploaderProps): react_jsx_runtime.JSX.Element;
1439
-
1440
1441
  type IconSize = "sm" | "md" | "lg" | "xl";
1441
1442
  interface NFileTypeIconProps {
1442
1443
  mimeType?: string;
@@ -1511,6 +1512,7 @@ interface BaseProps {
1511
1512
  variant?: "default" | "rounded" | "ghost";
1512
1513
  status?: "default" | "error";
1513
1514
  bordered?: boolean;
1515
+ borderDegree?: NajmBorderDegree;
1514
1516
  borderColor?: TailwindColor;
1515
1517
  iconColor?: string;
1516
1518
  }
@@ -1698,6 +1700,7 @@ interface BaseInputProps extends React__default.HTMLAttributes<HTMLDivElement> {
1698
1700
  variant?: "default" | "rounded" | "ghost";
1699
1701
  status?: "default" | "error";
1700
1702
  bordered?: boolean;
1703
+ borderDegree?: NajmBorderDegree;
1701
1704
  borderColor?: TailwindColor;
1702
1705
  hasIcon?: boolean;
1703
1706
  disabled?: boolean;
@@ -1723,7 +1726,7 @@ declare const RadioGroupInput: React__default.FC<RadioGroupInputProps>;
1723
1726
 
1724
1727
  declare const CheckboxInput: React__default.FC<CheckboxInputProps>;
1725
1728
 
1726
- declare function CheckboxGroupInput({ value, onChange, items, layout, className, variant, status, bordered, borderColor, disabled, }: CheckboxGroupInputProps & {
1729
+ declare function CheckboxGroupInput({ value, onChange, items, layout, className, variant, status, bordered, borderDegree, borderColor, disabled, }: CheckboxGroupInputProps & {
1727
1730
  disabled?: boolean;
1728
1731
  }): react_jsx_runtime.JSX.Element;
1729
1732
 
@@ -1733,6 +1736,34 @@ declare const DateInput: React__default.FC<DateInputProps>;
1733
1736
 
1734
1737
  declare const FileInput: React__default.FC<FileInputProps>;
1735
1738
 
1739
+ type NUploaderItemStatus = "uploading" | "done" | "error";
1740
+ interface NUploaderItem {
1741
+ id: string;
1742
+ name: string;
1743
+ size?: number;
1744
+ mimeType?: string;
1745
+ progress?: number;
1746
+ status?: NUploaderItemStatus;
1747
+ error?: string;
1748
+ }
1749
+ interface NUploaderProps {
1750
+ title?: string;
1751
+ subtitle?: string;
1752
+ accept?: string;
1753
+ multiple?: boolean;
1754
+ disabled?: boolean;
1755
+ items?: NUploaderItem[];
1756
+ emptyListLabel?: string;
1757
+ listTitle?: string;
1758
+ className?: string;
1759
+ dropzoneClassName?: string;
1760
+ borderDegree?: NajmBorderDegree;
1761
+ onFilesSelected?: (files: File[]) => void;
1762
+ onCancel?: (id: string) => void;
1763
+ onRemove?: (id: string) => void;
1764
+ }
1765
+ declare function NUploader({ title, subtitle, accept, multiple, disabled, items, listTitle, className, dropzoneClassName, borderDegree, onFilesSelected, onCancel, onRemove, }: NUploaderProps): react_jsx_runtime.JSX.Element;
1766
+
1736
1767
  declare function ImageInput({ value, onChange, previewClassName, showPreview, previewPosition, allowClear, accept, defaultImage, imageSize, imageVersion, disabled, }: ImageInputProps & {
1737
1768
  disabled?: boolean;
1738
1769
  }): react_jsx_runtime.JSX.Element;
@@ -1741,21 +1772,22 @@ declare const StarRatingInput: React__default.FC<StarRatingInputProps>;
1741
1772
 
1742
1773
  declare const ColorArrayInput: React__default.FC<ColorArrayInputProps>;
1743
1774
 
1744
- declare function ColorPickerInput({ value, onChange, colors, className, variant, status, bordered, borderColor, disabled, }: ColorArrayInputProps & {
1775
+ declare function ColorPickerInput({ value, onChange, colors, className, variant, status, bordered, borderDegree, borderColor, disabled, }: ColorArrayInputProps & {
1745
1776
  disabled?: boolean;
1746
1777
  }): react_jsx_runtime.JSX.Element;
1747
1778
 
1748
- declare function EmojiInput({ value, onChange, options, className, variant, status, bordered, borderColor, disabled, }: EmojiInputProps & {
1779
+ declare function EmojiInput({ value, onChange, options, className, variant, status, bordered, borderDegree, borderColor, disabled, }: EmojiInputProps & {
1749
1780
  disabled?: boolean;
1750
1781
  }): react_jsx_runtime.JSX.Element;
1751
1782
 
1752
1783
  declare function LangInput({ value, onChange, items, disabled, className, }: LangInputProps): react_jsx_runtime.JSX.Element;
1753
1784
 
1754
- declare function PhoneInput({ value, onChange, defaultCountry, placeholder, disabled, className, variant, status, bordered, borderColor, }: PhoneInputProps & {
1785
+ declare function PhoneInput({ value, onChange, defaultCountry, placeholder, disabled, className, variant, status, bordered, borderDegree, borderColor, }: PhoneInputProps & {
1755
1786
  variant?: "default" | "rounded" | "ghost";
1756
1787
  status?: "default" | "error";
1757
1788
  borderColor?: TailwindColor;
1758
1789
  bordered?: boolean;
1790
+ borderDegree?: NajmBorderDegree;
1759
1791
  }): react_jsx_runtime.JSX.Element;
1760
1792
 
1761
1793
  declare const TimeInput: React__default.FC<TimeInputProps>;
@@ -1817,6 +1849,7 @@ interface FormSlotClassNames {
1817
1849
  declare const VariantProvider: React__default.FC<{
1818
1850
  variant?: FormVariant;
1819
1851
  bordered?: boolean;
1852
+ borderDegree?: NajmBorderDegree;
1820
1853
  children: React__default.ReactNode;
1821
1854
  }>;
1822
1855
  declare const useVariant: () => FormVariant;
@@ -1873,6 +1906,7 @@ type FormProps<T extends ZodTypeAny = ZodTypeAny> = {
1873
1906
  form?: UseFormReturn<TypeOf<T>>;
1874
1907
  variant?: FormVariant;
1875
1908
  bordered?: boolean;
1909
+ borderDegree?: NajmBorderDegree;
1876
1910
  as?: "form" | "div";
1877
1911
  className?: string;
1878
1912
  id?: string;
@@ -1957,6 +1991,7 @@ interface WizardFormProps {
1957
1991
  submitLabel?: string;
1958
1992
  variant?: FormVariant;
1959
1993
  bordered?: boolean;
1994
+ borderDegree?: NajmBorderDegree;
1960
1995
  className?: string;
1961
1996
  classNames?: WizardClassNames;
1962
1997
  footerSlot?: ReactNode;
@@ -1968,7 +2003,7 @@ interface StepMeta {
1968
2003
  title: string;
1969
2004
  }
1970
2005
 
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;
2006
+ declare function WizardForm({ steps, schema, defaultValues, onSubmit, currentStep: controlledStep, onCurrentStepChange, onStepComplete, showHeader, showFooter, nextLabel, previousLabel, submitLabel, variant, bordered, borderDegree, className, classNames, footerSlot, }: WizardFormProps): react_jsx_runtime.JSX.Element;
1972
2007
 
1973
2008
  interface StepIndicatorProps {
1974
2009
  stepNumber: number;
@@ -2075,7 +2110,8 @@ interface TableState {
2075
2110
  CardComponent: ComponentType<any> | null;
2076
2111
  className: string;
2077
2112
  classNames: NTableClassNames;
2078
- bordered: boolean;
2113
+ bordered?: boolean;
2114
+ borderDegree?: NajmBorderDegree;
2079
2115
  headerClassName: string;
2080
2116
  headerColor: string | undefined;
2081
2117
  showCheckbox: boolean;
@@ -2188,7 +2224,8 @@ declare const createTableStore: () => {
2188
2224
  CardComponent: () => ComponentType<any>;
2189
2225
  className: () => string;
2190
2226
  classNames: () => NTableClassNames;
2191
- bordered: () => boolean;
2227
+ bordered?: () => boolean;
2228
+ borderDegree?: () => NajmBorderDegree;
2192
2229
  headerClassName: () => string;
2193
2230
  headerColor: () => string;
2194
2231
  showCheckbox: () => boolean;
@@ -2358,6 +2395,7 @@ interface NTableProps<T = any, M extends ViewMode = ViewMode> {
2358
2395
  classNames?: NTableClassNames;
2359
2396
  /** Use a border instead of a shadow for the table container and cards. */
2360
2397
  bordered?: boolean;
2398
+ borderDegree?: NajmBorderDegree;
2361
2399
  density?: "compact" | "comfortable" | "spacious";
2362
2400
  availableModes?: readonly M[];
2363
2401
  mode?: M;
@@ -2458,8 +2496,9 @@ interface NDataCardShellProps {
2458
2496
  openRowMenu?: ((e: React__default.MouseEvent, row: any) => void) | null;
2459
2497
  menuButton?: boolean;
2460
2498
  bordered?: boolean;
2499
+ borderDegree?: NajmBorderDegree;
2461
2500
  }
2462
- declare function NDataCardShell({ row, onClick, onContextMenu, actions, children, className, showCheckbox, selectedRowId, openRowMenu, menuButton, bordered }: NDataCardShellProps): react_jsx_runtime.JSX.Element;
2501
+ declare function NDataCardShell({ row, onClick, onContextMenu, actions, children, className, showCheckbox, selectedRowId, openRowMenu, menuButton, bordered, borderDegree }: NDataCardShellProps): react_jsx_runtime.JSX.Element;
2463
2502
 
2464
2503
  interface NTableCardRootProps extends Omit<React__default.HTMLAttributes<HTMLDivElement>, "onClick" | "onContextMenu"> {
2465
2504
  card: {
@@ -2565,7 +2604,8 @@ declare const TableStoreContext: React$1.Context<{
2565
2604
  CardComponent: () => React$1.ComponentType<any>;
2566
2605
  className: () => string;
2567
2606
  classNames: () => NTableClassNames;
2568
- bordered: () => boolean;
2607
+ bordered?: () => boolean;
2608
+ borderDegree?: () => NajmBorderDegree;
2569
2609
  headerClassName: () => string;
2570
2610
  headerColor: () => string;
2571
2611
  showCheckbox: () => boolean;
@@ -2682,7 +2722,8 @@ declare function useStoreSync(props: any): {
2682
2722
  CardComponent: () => React__default.ComponentType<any>;
2683
2723
  className: () => string;
2684
2724
  classNames: () => NTableClassNames;
2685
- bordered: () => boolean;
2725
+ bordered?: () => boolean;
2726
+ borderDegree?: () => NajmBorderDegree;
2686
2727
  headerClassName: () => string;
2687
2728
  headerColor: () => string;
2688
2729
  showCheckbox: () => boolean;
@@ -2877,13 +2918,15 @@ interface SidebarProps {
2877
2918
  defaultCollapsed?: boolean;
2878
2919
  onCollapsedChange?: (collapsed: boolean) => void;
2879
2920
  showCollapseButton?: boolean;
2880
- collapseButtonPosition?: 'header' | 'nav';
2921
+ /** Where the collapse toggle lives: a full-width button in the footer, or a small floating circle on the sidebar's edge. */
2922
+ collapseButtonPosition?: 'footer' | 'edge';
2881
2923
  widths?: SidebarWidths;
2882
2924
  showSectionLabels?: boolean;
2883
2925
  showSectionIcons?: boolean;
2884
2926
  showSectionSeparators?: boolean;
2885
2927
  /** Use a border instead of the default flat sidebar edge. */
2886
2928
  bordered?: boolean;
2929
+ borderDegree?: NajmBorderDegree;
2887
2930
  footer?: ReactNode;
2888
2931
  className?: string;
2889
2932
  classNames?: NAppShellClassNames;
@@ -2986,6 +3029,7 @@ interface NSidebarMobileProps {
2986
3029
  showHamburgerButton?: boolean;
2987
3030
  children?: ReactNode;
2988
3031
  bordered?: boolean;
3032
+ borderDegree?: NajmBorderDegree;
2989
3033
  }
2990
3034
 
2991
3035
  declare function NSidebarHeader({ children, collapsed, className, classNames }: NSidebarHeaderProps): react_jsx_runtime.JSX.Element;
@@ -2998,9 +3042,9 @@ declare function NSidebarSection({ group, activePath, isActive, onNavigate, link
2998
3042
 
2999
3043
  declare function NSidebarFooter({ children, onSettings, settingsLabel, onLogout, logoutLabel, showCollapseButton, collapsed, onToggleCollapsed, collapseLabel, expandLabel, isMobile, className, classNames, }: NSidebarFooterProps): react_jsx_runtime.JSX.Element;
3000
3044
 
3001
- declare function NSidebarMobile({ open, onOpen, onClose, mobileBreakpoint, width, hamburgerLabel, closeLabel, hamburgerClassName, showHamburgerButton, children, bordered, }: NSidebarMobileProps): react_jsx_runtime.JSX.Element;
3045
+ declare function NSidebarMobile({ open, onOpen, onClose, mobileBreakpoint, width, hamburgerLabel, closeLabel, hamburgerClassName, showHamburgerButton, children, bordered, borderDegree, }: NSidebarMobileProps): react_jsx_runtime.JSX.Element;
3002
3046
 
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;
3047
+ declare function NSidebar({ logo, navItems, activePath, isActive, onNavigate, linkComponent, collapsed: collapsedProp, defaultCollapsed, onCollapsedChange, showCollapseButton, collapseButtonPosition, showSectionLabels, showSectionIcons, showSectionSeparators, bordered, borderDegree, 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;
3004
3048
 
3005
3049
  declare function NSidebarItem({ item, activePath, isActive, onNavigate, linkComponent: LinkComponent, collapsed, depth, classNames, }: SidebarItemProps): react_jsx_runtime.JSX.Element;
3006
3050
 
@@ -3045,7 +3089,8 @@ interface NAppShellProps extends Pick<SidebarProps, "widths"> {
3045
3089
  collapsed?: boolean;
3046
3090
  defaultCollapsed?: boolean;
3047
3091
  onCollapsedChange?: (collapsed: boolean) => void;
3048
- collapseButtonPosition?: 'header' | 'nav';
3092
+ /** Where the collapse toggle lives: a full-width button in the footer, or a small floating circle on the sidebar's edge. */
3093
+ collapseButtonPosition?: 'footer' | 'edge';
3049
3094
  sidebarFooter?: ReactNode;
3050
3095
  navbarLeft?: ReactNode;
3051
3096
  navbarRight?: ReactNode;
@@ -3112,6 +3157,7 @@ interface NPageHeaderProps {
3112
3157
  className?: string;
3113
3158
  headerClassName?: string;
3114
3159
  bordered?: boolean;
3160
+ borderDegree?: NajmBorderDegree;
3115
3161
  }
3116
3162
  declare function NPageHeaderActions({ children, className }: PageHeaderSlotProps): react_jsx_runtime.JSX.Element;
3117
3163
  declare namespace NPageHeaderActions {
@@ -3125,7 +3171,7 @@ declare function NPageHeaderTop({ children, className }: PageHeaderSlotProps): r
3125
3171
  declare namespace NPageHeaderTop {
3126
3172
  var displayName: string;
3127
3173
  }
3128
- declare function NPageHeader({ icon: Icon, title, subtitle, actions, filters, top, search, children, className, headerClassName, bordered }: NPageHeaderProps): react_jsx_runtime.JSX.Element;
3174
+ declare function NPageHeader({ icon: Icon, title, subtitle, actions, filters, top, search, children, className, headerClassName, bordered, borderDegree }: NPageHeaderProps): react_jsx_runtime.JSX.Element;
3129
3175
 
3130
3176
  interface InspectorSheetProps {
3131
3177
  open: boolean;
@@ -3135,4 +3181,4 @@ interface InspectorSheetProps {
3135
3181
  }
3136
3182
  declare function NInspectorSheet({ open, onClose, title, children }: InspectorSheetProps): react_jsx_runtime.JSX.Element;
3137
3183
 
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 };
3184
+ 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 BorderResolutionOptions, 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 NajmAppearance, type NajmBorderDegree, 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, borderColorClassForDegree, buildDefaultFileColumns, buttonVariants, cn, composePreset, createDialogStore, createTableStore, dialogVariants, formatFileBytes, formatFileRelative, getIconColorProps, indicatorVariants, inputBorderColorClassForDegree, resolveBorderDegree, resolvePreset, resolveSlot, sliderVariants, surfaceBorderClasses, swapVariants, toggleVariants, tooltipContentVariants, truncateByCharacters, useClickOutside, useContextMenu, useDebouncedValue, useDelayedLoading, useDialog, useDialogStore, useDynamicPageSize, useFormField, useFormSubmission, useInfiniteScroll, useKeyboard, useLocalStorageState, useNForm, useNPortalScope, useNajmAppearance, usePrefix, useResolvedBorderDegree, useSelection, useStepNavigation, useStorageContextMenu, useStoreSync, useTable, useTableKeyboard, useTableStore, useVariant, useVariantPreset };