@nexub/react 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/dist/{chunk-BYF223HT.js → chunk-2555JXCP.js} +1 -1
  2. package/dist/{chunk-6AZP6VBM.js → chunk-2FCSWBSM.js} +1 -1
  3. package/dist/{chunk-OZPPL76D.js → chunk-2ZBJOUJ7.js} +17 -20
  4. package/dist/{chunk-YJD66LTV.js → chunk-3AXIMXDU.js} +1 -1
  5. package/dist/{chunk-H4MXRAXP.js → chunk-3LP2CR7F.js} +1 -1
  6. package/dist/chunk-3TMIZQPR.js +49 -0
  7. package/dist/chunk-47UGX37F.js +21 -0
  8. package/dist/{chunk-PANDAMD2.js → chunk-4I5ULCYG.js} +1 -1
  9. package/dist/{chunk-3U54QLYB.js → chunk-4SSUM4CL.js} +1 -1
  10. package/dist/{chunk-KZW37FQZ.js → chunk-56FERRWW.js} +1 -1
  11. package/dist/chunk-5O34ZNC3.js +70 -0
  12. package/dist/{chunk-YUNWZAAD.js → chunk-5URGARPH.js} +8 -3
  13. package/dist/{chunk-QF7GUDOE.js → chunk-63DPMUMR.js} +1 -1
  14. package/dist/chunk-64JDZWCV.js +47 -0
  15. package/dist/{chunk-BMVAZIAJ.js → chunk-6J3QTWKC.js} +1 -1
  16. package/dist/{chunk-2RLSIOGB.js → chunk-6QLLH6ID.js} +21 -11
  17. package/dist/{chunk-KWWV3CM3.js → chunk-6RBNM5RO.js} +1 -1
  18. package/dist/{chunk-WPPNDU2E.js → chunk-6SJPVQQW.js} +7 -6
  19. package/dist/{chunk-NAIZ7R2L.js → chunk-72I7EVOL.js} +1 -1
  20. package/dist/{chunk-SZKUSLHI.js → chunk-7L3CGIRA.js} +21 -11
  21. package/dist/{chunk-UWWL5FPC.js → chunk-7Q7ZF6BY.js} +1 -1
  22. package/dist/chunk-7SXR4PGO.js +31 -0
  23. package/dist/{chunk-W4IEXUD4.js → chunk-7ZWBHHRK.js} +14 -11
  24. package/dist/{chunk-PER3O4FD.js → chunk-A4IMFAZX.js} +1 -1
  25. package/dist/{chunk-E3QPDCEV.js → chunk-AEBYQKLS.js} +34 -7
  26. package/dist/chunk-AHT35UWY.js +92 -0
  27. package/dist/chunk-AXOKFS4K.js +48 -0
  28. package/dist/chunk-B54WADL4.js +103 -0
  29. package/dist/{chunk-CMYEVLQT.js → chunk-BFRX6X4O.js} +9 -7
  30. package/dist/{chunk-KBB7M6WO.js → chunk-BTRTORKU.js} +1 -1
  31. package/dist/{chunk-TCTFQYLH.js → chunk-CHGPGRML.js} +1 -1
  32. package/dist/chunk-CIQHFMF6.js +44 -0
  33. package/dist/{chunk-U3AEA4BZ.js → chunk-CNNJFWFA.js} +1 -1
  34. package/dist/chunk-CWS37T3K.js +80 -0
  35. package/dist/chunk-DEIBF3P7.js +8 -0
  36. package/dist/{chunk-RIDDJUPA.js → chunk-DJZZ3FIP.js} +13 -4
  37. package/dist/{chunk-K7CUCLLI.js → chunk-DYWJ7BIK.js} +2 -2
  38. package/dist/{chunk-6Y734SXN.js → chunk-E4JM3HUM.js} +1 -1
  39. package/dist/{chunk-POFKKYHY.js → chunk-EQNETGTV.js} +1 -1
  40. package/dist/{chunk-BBVOB4EC.js → chunk-EZ23IA3H.js} +1 -1
  41. package/dist/{chunk-LOP63AVE.js → chunk-FD7YU53N.js} +1 -1
  42. package/dist/{chunk-CPV367VS.js → chunk-FHFVBOF3.js} +1 -1
  43. package/dist/chunk-GHCV6UXG.js +57 -0
  44. package/dist/{chunk-UALYS4XI.js → chunk-GIGOTRXX.js} +9 -4
  45. package/dist/{chunk-BTZW34TX.js → chunk-GRB6T2TT.js} +7 -6
  46. package/dist/chunk-GUB7YKG2.js +35 -0
  47. package/dist/{chunk-POBSY7EZ.js → chunk-H2W7IYVY.js} +1 -1
  48. package/dist/{chunk-I5Z3A7N3.js → chunk-HG6HTUWU.js} +2 -2
  49. package/dist/chunk-HI7GBSW2.js +1 -0
  50. package/dist/{chunk-DEH2Z27F.js → chunk-HJERFB7J.js} +1 -1
  51. package/dist/{chunk-UTBUIBEP.js → chunk-I4BHRVRL.js} +3 -30
  52. package/dist/{chunk-FUJOSPNQ.js → chunk-I4URNMI7.js} +1 -1
  53. package/dist/{chunk-24CZFBTG.js → chunk-IIPYF6ZQ.js} +1 -1
  54. package/dist/{chunk-CVBAWKNG.js → chunk-IK23Q2OF.js} +32 -27
  55. package/dist/{chunk-4OCXGNP3.js → chunk-J2T4GFFS.js} +1 -1
  56. package/dist/{chunk-BJKW3G2L.js → chunk-J6TU45KP.js} +1 -1
  57. package/dist/chunk-JLUCMNVS.js +32 -0
  58. package/dist/{chunk-ELC2NBGH.js → chunk-JSD3H7WV.js} +1 -1
  59. package/dist/{chunk-46CFSBEO.js → chunk-KA2J5OBA.js} +3 -2
  60. package/dist/{chunk-OUBBOOZE.js → chunk-KM6Z3VTI.js} +1 -1
  61. package/dist/chunk-KQPLFVFR.js +27 -0
  62. package/dist/{chunk-MV7WMQI4.js → chunk-LDYD7WL3.js} +1 -1
  63. package/dist/{chunk-QURKXXNS.js → chunk-LGQ737BP.js} +6 -12
  64. package/dist/{chunk-DOHXBNOP.js → chunk-LH3BSAIS.js} +1 -1
  65. package/dist/chunk-LMPGHWUA.js +114 -0
  66. package/dist/chunk-LVPU7455.js +1 -0
  67. package/dist/chunk-LZB3KTSH.js +61 -0
  68. package/dist/{chunk-BUBYXAJK.js → chunk-M7YB3MSW.js} +1 -1
  69. package/dist/{chunk-V3FZHIEB.js → chunk-NCRFKPA4.js} +1 -1
  70. package/dist/{chunk-JKTZMWWC.js → chunk-NIX4SEKM.js} +1 -1
  71. package/dist/{chunk-PBLEGOLM.js → chunk-NMH5WSZG.js} +6 -5
  72. package/dist/{chunk-ZFVBFCYV.js → chunk-NQVRF4RB.js} +1 -1
  73. package/dist/{chunk-IU76LV3W.js → chunk-OASFXI27.js} +6 -6
  74. package/dist/chunk-OJ2TLWYD.js +89 -0
  75. package/dist/{chunk-MY6XUJ5P.js → chunk-OJRSPDNJ.js} +21 -14
  76. package/dist/chunk-P26VJEIW.js +1 -0
  77. package/dist/{chunk-IBCYG6HR.js → chunk-P44EROBX.js} +1 -1
  78. package/dist/{chunk-52KTX5A7.js → chunk-PQ6GU7SG.js} +2 -2
  79. package/dist/{chunk-CZUNTABW.js → chunk-PVTACENM.js} +1 -1
  80. package/dist/{chunk-Y45JAJKW.js → chunk-PWBPHGM3.js} +2 -2
  81. package/dist/chunk-Q7G5WGYV.js +33 -0
  82. package/dist/{chunk-BYCTJHXY.js → chunk-QCNLE27O.js} +2 -2
  83. package/dist/{chunk-7W2YDJ5W.js → chunk-QD7H3WV3.js} +10 -7
  84. package/dist/{chunk-HW3I7I3R.js → chunk-RB4CVS22.js} +1 -1
  85. package/dist/{chunk-ZLSUVZM2.js → chunk-RHOYF7MO.js} +17 -11
  86. package/dist/{chunk-QHJ43Q2T.js → chunk-RLE5RN3T.js} +1 -1
  87. package/dist/{chunk-7B4FS7VQ.js → chunk-RTDUTWJ4.js} +31 -14
  88. package/dist/{chunk-DR2Y3PIT.js → chunk-S46W2QER.js} +1 -1
  89. package/dist/{chunk-LAWZQ6R6.js → chunk-SVQCINRE.js} +1 -1
  90. package/dist/{chunk-6MYVXJPJ.js → chunk-SY6V3HAK.js} +17 -23
  91. package/dist/{chunk-VT7RKY46.js → chunk-TEOLG3N2.js} +1 -1
  92. package/dist/{chunk-A7L75YXY.js → chunk-TJCHA3OI.js} +2 -2
  93. package/dist/chunk-TNBBQ7IP.js +43 -0
  94. package/dist/{chunk-IHW2L532.js → chunk-TYTW4F3B.js} +12 -9
  95. package/dist/{chunk-T4IVMVMQ.js → chunk-UMC64NCT.js} +1 -1
  96. package/dist/chunk-V3TETH4J.js +146 -0
  97. package/dist/{chunk-JQDLCN5D.js → chunk-W2NEXOTG.js} +1 -1
  98. package/dist/{chunk-XNDCVVNE.js → chunk-WESZPFBZ.js} +2 -2
  99. package/dist/{chunk-DD6XCW6R.js → chunk-XR4NBY54.js} +1 -1
  100. package/dist/{chunk-YGOR3KT7.js → chunk-YJ3JQYAN.js} +1 -1
  101. package/dist/chunk-YPHNHQYQ.js +61 -0
  102. package/dist/chunk-YRDCY6BI.js +55 -0
  103. package/dist/{chunk-2VDP2ML4.js → chunk-Z3IG5WRA.js} +10 -9
  104. package/dist/{chunk-YUFCNHZF.js → chunk-ZV3AF5CL.js} +1 -1
  105. package/dist/components/Accordion/index.js +2 -2
  106. package/dist/components/Alert/index.js +2 -2
  107. package/dist/components/AlertDialog/index.js +6 -2
  108. package/dist/components/Amount/index.js +9 -0
  109. package/dist/components/AppShell/index.js +2 -2
  110. package/dist/components/AspectRatio/index.js +2 -2
  111. package/dist/components/Autocomplete/index.js +3 -3
  112. package/dist/components/Avatar/index.js +2 -2
  113. package/dist/components/AvatarGroup/index.js +3 -3
  114. package/dist/components/Badge/index.js +2 -2
  115. package/dist/components/Banner/index.js +2 -2
  116. package/dist/components/Box/index.js +2 -2
  117. package/dist/components/Breadcrumb/index.js +2 -2
  118. package/dist/components/Button/index.js +5 -2
  119. package/dist/components/ButtonGroup/index.js +3 -2
  120. package/dist/components/Callout/index.js +2 -2
  121. package/dist/components/Card/index.js +3 -3
  122. package/dist/components/CheckList/index.js +2 -2
  123. package/dist/components/Checkbox/index.js +2 -2
  124. package/dist/components/Chip/index.js +2 -2
  125. package/dist/components/Code/index.js +2 -2
  126. package/dist/components/Collapsible/index.js +2 -2
  127. package/dist/components/Combobox/index.js +2 -2
  128. package/dist/components/CommandPalette/index.js +4 -2
  129. package/dist/components/Container/index.js +2 -2
  130. package/dist/components/ContextMenu/index.js +3 -2
  131. package/dist/components/CountryBadge/index.js +3 -3
  132. package/dist/components/DataTable/index.js +2 -2
  133. package/dist/components/DatePicker/index.js +2 -2
  134. package/dist/components/DateRangePicker/index.js +2 -2
  135. package/dist/components/Dialog/index.js +4 -3
  136. package/dist/components/Drawer/index.js +5 -3
  137. package/dist/components/DropdownMenu/index.js +4 -2
  138. package/dist/components/EmptyState/index.js +2 -2
  139. package/dist/components/ErrorState/index.js +2 -2
  140. package/dist/components/EyebrowChip/index.js +2 -2
  141. package/dist/components/FileUpload/index.js +2 -2
  142. package/dist/components/FilterChip/index.js +2 -2
  143. package/dist/components/Flag/index.js +2 -2
  144. package/dist/components/Flex/index.js +2 -2
  145. package/dist/components/FormError/index.js +2 -2
  146. package/dist/components/FormField/index.js +5 -5
  147. package/dist/components/GradientDivider/index.js +2 -2
  148. package/dist/components/Grid/index.js +2 -2
  149. package/dist/components/Heading/index.js +2 -2
  150. package/dist/components/HelperText/index.js +2 -2
  151. package/dist/components/HoverCard/index.js +3 -2
  152. package/dist/components/IconButton/index.js +3 -2
  153. package/dist/components/Input/index.js +3 -2
  154. package/dist/components/Kbd/index.js +2 -2
  155. package/dist/components/KeyboardShortcut/index.js +3 -3
  156. package/dist/components/Label/index.js +2 -2
  157. package/dist/components/Link/index.js +2 -2
  158. package/dist/components/Logo/index.js +2 -2
  159. package/dist/components/Menubar/index.js +3 -2
  160. package/dist/components/MoneyInput/index.js +13 -0
  161. package/dist/components/NavigationMenu/index.js +3 -2
  162. package/dist/components/NavigationRail/index.js +8 -0
  163. package/dist/components/NumberInput/index.js +4 -3
  164. package/dist/components/PageHeader/index.js +2 -2
  165. package/dist/components/Pagination/index.js +2 -2
  166. package/dist/components/PasswordInput/index.js +4 -3
  167. package/dist/components/Popover/index.js +4 -3
  168. package/dist/components/Progress/index.js +2 -2
  169. package/dist/components/RadioGroup/index.js +2 -2
  170. package/dist/components/Rating/index.js +3 -2
  171. package/dist/components/ScrollArea/index.js +2 -2
  172. package/dist/components/SearchInput/index.js +4 -3
  173. package/dist/components/Section/index.js +2 -2
  174. package/dist/components/SegmentedControl/index.js +4 -2
  175. package/dist/components/Select/index.js +4 -2
  176. package/dist/components/Separator/index.js +2 -2
  177. package/dist/components/Sidebar/index.js +2 -2
  178. package/dist/components/Skeleton/index.js +2 -2
  179. package/dist/components/Slider/index.js +2 -2
  180. package/dist/components/Spinner/index.js +2 -2
  181. package/dist/components/SplitButton/index.js +14 -0
  182. package/dist/components/Stack/index.js +2 -2
  183. package/dist/components/StatusPill/index.js +2 -2
  184. package/dist/components/Switch/index.js +2 -2
  185. package/dist/components/Table/index.js +2 -2
  186. package/dist/components/Tabs/index.js +4 -2
  187. package/dist/components/Tag/index.js +2 -2
  188. package/dist/components/Text/index.js +2 -2
  189. package/dist/components/TextGradient/index.js +2 -2
  190. package/dist/components/Textarea/index.js +3 -2
  191. package/dist/components/ThemeProvider/index.js +1 -1
  192. package/dist/components/Toast/index.js +2 -2
  193. package/dist/components/Toggle/index.js +2 -2
  194. package/dist/components/ToggleGroup/index.js +3 -3
  195. package/dist/components/Toolbar/index.js +3 -2
  196. package/dist/components/Tooltip/index.js +2 -2
  197. package/dist/components/TopNav/index.js +3 -3
  198. package/dist/index.d.ts +128 -21
  199. package/dist/index.js +162 -152
  200. package/package.json +8 -5
  201. package/dist/chunk-3CSKW56L.js +0 -44
  202. package/dist/chunk-AT6RPKU3.js +0 -12
  203. package/dist/chunk-BGY23Y5O.js +0 -104
  204. package/dist/chunk-DAXDAFNG.js +0 -92
  205. package/dist/chunk-EVCTOIRS.js +0 -66
  206. package/dist/chunk-GTQIA62H.js +0 -60
  207. package/dist/chunk-JCUVWDUC.js +0 -57
  208. package/dist/chunk-N2GIMMTF.js +0 -98
  209. package/dist/chunk-P6BZNFVU.js +0 -38
  210. package/dist/chunk-QRZV2FLW.js +0 -106
  211. package/dist/chunk-ROZVVWPV.js +0 -8
  212. package/dist/chunk-U3EGB3JL.js +0 -43
  213. package/dist/chunk-VPZCQFVY.js +0 -33
@@ -3,7 +3,7 @@ import {
3
3
  ThemeProvider,
4
4
  ThemeScript,
5
5
  useTheme
6
- } from "../../chunk-E3QPDCEV.js";
6
+ } from "../../chunk-AEBYQKLS.js";
7
7
  import "../../chunk-NHUQLIHL.js";
8
8
  export {
9
9
  ThemeProvider,
@@ -4,8 +4,8 @@ import {
4
4
  Toaster,
5
5
  toast,
6
6
  useToastStore
7
- } from "../../chunk-IHW2L532.js";
8
- import "../../chunk-AT6RPKU3.js";
7
+ } from "../../chunk-TYTW4F3B.js";
8
+ import "../../chunk-Q7G5WGYV.js";
9
9
  export {
10
10
  Toast,
11
11
  Toaster,
@@ -3,8 +3,8 @@ import "../../chunk-YJU4ZRQZ.js";
3
3
  import {
4
4
  Toggle,
5
5
  toggleVariants
6
- } from "../../chunk-U3EGB3JL.js";
7
- import "../../chunk-AT6RPKU3.js";
6
+ } from "../../chunk-3TMIZQPR.js";
7
+ import "../../chunk-Q7G5WGYV.js";
8
8
  export {
9
9
  Toggle,
10
10
  toggleVariants
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
  import {
3
3
  ToggleGroup
4
- } from "../../chunk-K7CUCLLI.js";
5
- import "../../chunk-U3EGB3JL.js";
6
- import "../../chunk-AT6RPKU3.js";
4
+ } from "../../chunk-DYWJ7BIK.js";
5
+ import "../../chunk-3TMIZQPR.js";
6
+ import "../../chunk-Q7G5WGYV.js";
7
7
  export {
8
8
  ToggleGroup
9
9
  };
@@ -1,8 +1,9 @@
1
1
  'use client';
2
2
  import {
3
3
  Toolbar
4
- } from "../../chunk-OZPPL76D.js";
5
- import "../../chunk-AT6RPKU3.js";
4
+ } from "../../chunk-2ZBJOUJ7.js";
5
+ import "../../chunk-DEIBF3P7.js";
6
+ import "../../chunk-Q7G5WGYV.js";
6
7
  export {
7
8
  Toolbar
8
9
  };
@@ -5,8 +5,8 @@ import {
5
5
  Root,
6
6
  Tooltip,
7
7
  Trigger
8
- } from "../../chunk-46CFSBEO.js";
9
- import "../../chunk-AT6RPKU3.js";
8
+ } from "../../chunk-KA2J5OBA.js";
9
+ import "../../chunk-Q7G5WGYV.js";
10
10
  export {
11
11
  Content,
12
12
  Provider,
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
  import {
3
3
  TopNav
4
- } from "../../chunk-BTZW34TX.js";
5
- import "../../chunk-ROZVVWPV.js";
6
- import "../../chunk-AT6RPKU3.js";
4
+ } from "../../chunk-GRB6T2TT.js";
5
+ import "../../chunk-DEIBF3P7.js";
6
+ import "../../chunk-Q7G5WGYV.js";
7
7
  export {
8
8
  TopNav
9
9
  };
package/dist/index.d.ts CHANGED
@@ -54,7 +54,7 @@ declare function useMergedRefs<T>(...refs: Array<Ref<T> | undefined>): (node: T)
54
54
 
55
55
  type ToneValue = 'neutral' | 'info' | 'success' | 'warning' | 'danger' | 'leap' | 'bookub' | 'payub' | 'founderub';
56
56
  declare const buttonVariants: (props?: ({
57
- variant?: "primary" | "secondary" | "subtle" | "ghost" | "outline" | "destructive" | "accent" | "link" | null | undefined;
57
+ variant?: "accent" | "text" | "link" | "glass" | "filled" | "tonal" | "outlined" | "primary" | "secondary" | "subtle" | "outline" | "ghost" | "destructive" | null | undefined;
58
58
  size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
59
59
  fullWidth?: boolean | null | undefined;
60
60
  } & class_variance_authority_types.ClassProp) | undefined) => string;
@@ -74,8 +74,22 @@ interface ButtonGroupProps extends React.HTMLAttributes<HTMLDivElement> {
74
74
  }
75
75
  declare const ButtonGroup: React.ForwardRefExoticComponent<ButtonGroupProps & React.RefAttributes<HTMLDivElement>>;
76
76
 
77
+ interface SplitButtonProps extends Omit<ButtonProps, 'asChild' | 'trailingIcon' | 'fullWidth'> {
78
+ /** Accessible name of the menu toggle, e.g. "More save options". */
79
+ menuLabel: string;
80
+ /** `DropdownMenu.Item`s for the secondary actions. */
81
+ menu: React.ReactNode;
82
+ /** Menu alignment against the toggle. @default 'end' */
83
+ align?: 'start' | 'end';
84
+ }
85
+ /**
86
+ * A primary action with related secondary actions behind a chevron, as one
87
+ * connected control (M3 Expressive split button). The ref goes to the primary button.
88
+ */
89
+ declare const SplitButton: React.ForwardRefExoticComponent<SplitButtonProps & React.RefAttributes<HTMLButtonElement>>;
90
+
77
91
  declare const iconButtonVariants: (props?: ({
78
- variant?: "subtle" | "ghost" | "outline" | "solid" | null | undefined;
92
+ variant?: "solid" | "subtle" | "outline" | "ghost" | null | undefined;
79
93
  size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
80
94
  } & class_variance_authority_types.ClassProp) | undefined) => string;
81
95
  interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof iconButtonVariants> {
@@ -130,6 +144,43 @@ interface NumberInputProps extends Omit<React.InputHTMLAttributes<HTMLInputEleme
130
144
  }
131
145
  declare const NumberInput: React.ForwardRefExoticComponent<NumberInputProps & React.RefAttributes<HTMLInputElement>>;
132
146
 
147
+ interface MoneyInputProps extends Omit<InputProps, 'value' | 'defaultValue' | 'onChange' | 'type' | 'inputMode' | 'leadingIcon' | 'leadingAddon'> {
148
+ /** The amount, or null when empty. */
149
+ value?: number | null;
150
+ defaultValue?: number | null;
151
+ /** Called with the parsed amount (rounded to the currency's minor unit) as the person types. */
152
+ onValueChange?: (value: number | null) => void;
153
+ /** ISO 4217 code, e.g. 'USD'. */
154
+ currency: string;
155
+ /** BCP 47 locale for separators. Defaults to the user's. */
156
+ locale?: string;
157
+ }
158
+ /**
159
+ * An amount field: the currency symbol leads, digits are tabular, the locale's
160
+ * separators parse correctly, and the value is grouped on blur
161
+ * (e.g. 1234.5 → "1,234.50"). Raw while editing so the caret never jumps.
162
+ */
163
+ declare const MoneyInput: React.ForwardRefExoticComponent<MoneyInputProps & React.RefAttributes<HTMLInputElement>>;
164
+
165
+ interface AmountProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'> {
166
+ value: number;
167
+ /** ISO 4217 code, e.g. 'USD', 'EUR', 'INR'. */
168
+ currency: string;
169
+ /** BCP 47 locale. Defaults to the user's. */
170
+ locale?: string;
171
+ /** `display`: a hero figure in the brand face with a quieter symbol and minor units. */
172
+ size?: 'sm' | 'md' | 'lg' | 'display';
173
+ /** `auto` colours gains success and losses error (use with signDisplay). */
174
+ tone?: 'neutral' | 'auto';
175
+ /** e.g. 'exceptZero' to show "+" on gains. */
176
+ signDisplay?: Intl.NumberFormatOptions['signDisplay'];
177
+ }
178
+ /**
179
+ * A money figure, honest by default (Calm Depth §3.5): tabular numerals, the
180
+ * currency's own minor unit, a true minus sign. Formatting is Intl.NumberFormat.
181
+ */
182
+ declare const Amount: React.ForwardRefExoticComponent<AmountProps & React.RefAttributes<HTMLSpanElement>>;
183
+
133
184
  interface SearchInputProps extends Omit<InputProps, 'leadingIcon' | 'trailingIcon'> {
134
185
  onClear?: () => void;
135
186
  }
@@ -202,7 +253,7 @@ declare const FormField: {
202
253
 
203
254
  declare const badgeVariants: (props?: ({
204
255
  size?: "sm" | "md" | "lg" | null | undefined;
205
- variant?: "outline" | "solid" | "soft" | null | undefined;
256
+ variant?: "solid" | "outline" | "soft" | null | undefined;
206
257
  } & class_variance_authority_types.ClassProp) | undefined) => string;
207
258
  interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
208
259
  tone?: ToneValue;
@@ -432,7 +483,7 @@ declare const Container: React.ForwardRefExoticComponent<ContainerProps & React.
432
483
 
433
484
  declare const sectionVariants: (props?: ({
434
485
  paddingY?: "sm" | "md" | "lg" | null | undefined;
435
- tone?: "subtle" | "default" | "muted" | "inverse" | null | undefined;
486
+ tone?: "default" | "subtle" | "muted" | "inverse" | null | undefined;
436
487
  } & class_variance_authority_types.ClassProp) | undefined) => string;
437
488
  interface SectionProps extends React.HTMLAttributes<HTMLElement>, VariantProps<typeof sectionVariants> {
438
489
  asChild?: boolean;
@@ -480,8 +531,8 @@ interface AspectRatioProps extends React.HTMLAttributes<HTMLDivElement> {
480
531
  declare const AspectRatio: React.ForwardRefExoticComponent<AspectRatioProps & React.RefAttributes<HTMLDivElement>>;
481
532
 
482
533
  declare const headingVariants: (props?: ({
483
- size?: "display" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | null | undefined;
484
- weight?: "bold" | "medium" | "regular" | "semibold" | "extrabold" | null | undefined;
534
+ size?: "display" | "h2" | "h3" | "h1" | "h4" | "h5" | "h6" | null | undefined;
535
+ weight?: "bold" | "regular" | "medium" | "semibold" | "extrabold" | null | undefined;
485
536
  } & class_variance_authority_types.ClassProp) | undefined) => string;
486
537
  type HeadingSize = 'display' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
487
538
  type HeadingWeight = 'regular' | 'medium' | 'semibold' | 'bold' | 'extrabold';
@@ -495,9 +546,9 @@ interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
495
546
  declare const Heading: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
496
547
 
497
548
  declare const textVariants: (props?: ({
498
- size?: "label" | "caption" | "body" | "body-lg" | "body-sm" | null | undefined;
499
- tone?: "secondary" | "subtle" | "default" | "muted" | "inverse" | null | undefined;
500
- weight?: "bold" | "medium" | "regular" | "semibold" | null | undefined;
549
+ size?: "body" | "label" | "caption" | "body-lg" | "body-sm" | null | undefined;
550
+ tone?: "default" | "secondary" | "subtle" | "muted" | "inverse" | null | undefined;
551
+ weight?: "bold" | "regular" | "medium" | "semibold" | null | undefined;
501
552
  } & class_variance_authority_types.ClassProp) | undefined) => string;
502
553
  interface TextProps extends React.HTMLAttributes<HTMLParagraphElement>, VariantProps<typeof textVariants> {
503
554
  asChild?: boolean;
@@ -645,6 +696,25 @@ declare const NavigationMenu: {
645
696
  Indicator: React.ForwardRefExoticComponent<RadixNav.NavigationMenuIndicatorProps & React.RefAttributes<HTMLDivElement>>;
646
697
  };
647
698
 
699
+ interface NavigationRailRootProps extends React.HTMLAttributes<HTMLElement> {
700
+ /** Accessible name for the landmark. @default 'Main' */
701
+ 'aria-label'?: string;
702
+ /** Optional slot above the items, e.g. a primary action or logo. */
703
+ header?: React.ReactNode;
704
+ }
705
+ interface NavigationRailItemProps extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'children'> {
706
+ icon: React.ReactNode;
707
+ label: React.ReactNode;
708
+ active?: boolean;
709
+ /** Render your link (e.g. a router `<Link>`) as the item: pass it as the only child. */
710
+ asChild?: boolean;
711
+ children?: React.ReactElement;
712
+ }
713
+ declare const NavigationRail: {
714
+ Root: React.ForwardRefExoticComponent<NavigationRailRootProps & React.RefAttributes<HTMLElement>>;
715
+ Item: React.ForwardRefExoticComponent<NavigationRailItemProps & React.RefAttributes<HTMLAnchorElement>>;
716
+ };
717
+
648
718
  interface DrawerRootProps {
649
719
  children?: React.ReactNode;
650
720
  open?: boolean;
@@ -867,7 +937,7 @@ interface SliderProps extends RadixSlider.SliderProps {
867
937
  declare const Slider: React.ForwardRefExoticComponent<SliderProps & React.RefAttributes<HTMLSpanElement>>;
868
938
 
869
939
  declare const toggleVariants: (props?: ({
870
- variant?: "outline" | "default" | null | undefined;
940
+ variant?: "default" | "outline" | null | undefined;
871
941
  size?: "sm" | "md" | "lg" | null | undefined;
872
942
  } & class_variance_authority_types.ClassProp) | undefined) => string;
873
943
  interface ToggleProps extends RadixToggle.ToggleProps, VariantProps<typeof toggleVariants> {
@@ -881,7 +951,7 @@ type RootProps$1 = (RadixToggleGroup.ToggleGroupSingleProps | RadixToggleGroup.T
881
951
  declare const ToggleGroup: {
882
952
  Root: React.ForwardRefExoticComponent<RootProps$1 & React.RefAttributes<HTMLDivElement>>;
883
953
  Item: React.ForwardRefExoticComponent<RadixToggleGroup.ToggleGroupItemProps & VariantProps<(props?: ({
884
- variant?: "outline" | "default" | null | undefined;
954
+ variant?: "default" | "outline" | null | undefined;
885
955
  size?: "sm" | "md" | "lg" | null | undefined;
886
956
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React.RefAttributes<HTMLButtonElement>>;
887
957
  };
@@ -922,8 +992,17 @@ interface ScrollAreaProps extends RadixScrollArea.ScrollAreaProps {
922
992
  }
923
993
  declare const ScrollArea: React.ForwardRefExoticComponent<ScrollAreaProps & React.RefAttributes<HTMLDivElement>>;
924
994
 
995
+ interface ToolbarRootProps extends RadixToolbar.ToolbarProps {
996
+ /**
997
+ * Floating toolbar (Apple / M3 Expressive): a glass capsule for the control
998
+ * layer above content, e.g. editor or selection actions.
999
+ */
1000
+ floating?: boolean;
1001
+ /** With `floating`: pin it to the bottom centre of the viewport. */
1002
+ placement?: 'bottom';
1003
+ }
925
1004
  declare const Toolbar: {
926
- Root: React.ForwardRefExoticComponent<RadixToolbar.ToolbarProps & React.RefAttributes<HTMLDivElement>>;
1005
+ Root: React.ForwardRefExoticComponent<ToolbarRootProps & React.RefAttributes<HTMLDivElement>>;
927
1006
  Button: React.ForwardRefExoticComponent<RadixToolbar.ToolbarButtonProps & React.RefAttributes<HTMLButtonElement>>;
928
1007
  Separator: React.ForwardRefExoticComponent<RadixToolbar.ToolbarSeparatorProps & React.RefAttributes<HTMLDivElement>>;
929
1008
  ToggleGroup: React.ForwardRefExoticComponent<(RadixToolbar.ToolbarToggleGroupSingleProps | RadixToolbar.ToolbarToggleGroupMultipleProps) & React.RefAttributes<HTMLDivElement>>;
@@ -968,15 +1047,19 @@ declare const toast: {
968
1047
  dismiss: typeof dismiss;
969
1048
  };
970
1049
 
1050
+ interface TopNavRootProps extends React.HTMLAttributes<HTMLElement> {
1051
+ surface?: SurfaceValue;
1052
+ /** Sticky-bar edge: `soft` dissolves scrolling content under the bar (no
1053
+ * divider), `hard` is an opaque band for pinned headers. Default: a divider. */
1054
+ scrollEdge?: 'soft' | 'hard';
1055
+ }
971
1056
  interface TopNavItemProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
972
1057
  active?: boolean;
973
1058
  /** Render the child element (e.g. a router `<Link>`) instead of an `<a>`. */
974
1059
  asChild?: boolean;
975
1060
  }
976
1061
  declare const TopNav: {
977
- Root: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLElement> & {
978
- surface?: SurfaceValue;
979
- } & React.RefAttributes<HTMLElement>>;
1062
+ Root: React.ForwardRefExoticComponent<TopNavRootProps & React.RefAttributes<HTMLElement>>;
980
1063
  Logo: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
981
1064
  Menu: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLElement> & React.RefAttributes<HTMLElement>>;
982
1065
  Item: React.ForwardRefExoticComponent<TopNavItemProps & React.RefAttributes<HTMLAnchorElement>>;
@@ -1054,10 +1137,21 @@ interface PaginationProps extends React.HTMLAttributes<HTMLElement> {
1054
1137
  }
1055
1138
  declare const Pagination: React.ForwardRefExoticComponent<PaginationProps & React.RefAttributes<HTMLElement>>;
1056
1139
 
1140
+ interface CommandPaletteRootProps extends DialogPrimitive.DialogProps {
1141
+ className?: string;
1142
+ /** Accessible name of the dialog. @default 'Command palette' */
1143
+ label?: string;
1144
+ /**
1145
+ * How page scroll is locked while open.
1146
+ * - `'style'` (default): Radix's lock, which injects a `<style>` tag (blocked by `style-src 'self'`).
1147
+ * - `'class'`: the `nexub-scroll-lock` class from `@nexub/themes/base`. Strict-CSP safe.
1148
+ */
1149
+ scrollLock?: 'style' | 'class';
1150
+ /** `false` when the items are already filtered (e.g. async search results). @default true */
1151
+ shouldFilter?: boolean;
1152
+ }
1057
1153
  declare const CommandPalette: {
1058
- Root: React.ForwardRefExoticComponent<DialogPrimitive.DialogProps & {
1059
- className?: string;
1060
- } & React.RefAttributes<HTMLDivElement>>;
1154
+ Root: React.ForwardRefExoticComponent<CommandPaletteRootProps & React.RefAttributes<HTMLDivElement>>;
1061
1155
  Input: React.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "key" | keyof React.InputHTMLAttributes<HTMLInputElement>> & {
1062
1156
  ref?: React.Ref<HTMLInputElement>;
1063
1157
  } & {
@@ -1199,6 +1293,9 @@ interface DateRangePickerProps {
1199
1293
  declare const DateRangePicker: React.ForwardRefExoticComponent<DateRangePickerProps & React.RefAttributes<HTMLButtonElement>>;
1200
1294
 
1201
1295
  type ThemeMode = 'light' | 'dark' | 'system';
1296
+ /** Glass intensity dial (user preference, like iOS 27's clear → tinted slider).
1297
+ * 'off' makes every glass surface solid. Set as `data-glass` on <html>. */
1298
+ type GlassMode = 'clear' | 'balanced' | 'tinted' | 'off';
1202
1299
  interface ThemeContextValue {
1203
1300
  /** The resolved theme actually applied (never 'system'). */
1204
1301
  resolvedTheme: 'light' | 'dark';
@@ -1206,6 +1303,10 @@ interface ThemeContextValue {
1206
1303
  theme: ThemeMode;
1207
1304
  /** Change the active theme. */
1208
1305
  setTheme: (mode: ThemeMode) => void;
1306
+ /** Glass intensity. */
1307
+ glass: GlassMode;
1308
+ /** Change (and persist) the glass intensity. */
1309
+ setGlass: (mode: GlassMode) => void;
1209
1310
  }
1210
1311
  interface ThemeProviderProps {
1211
1312
  children: React.ReactNode;
@@ -1218,14 +1319,20 @@ interface ThemeProviderProps {
1218
1319
  * Defaults to 'nexub-theme'.
1219
1320
  */
1220
1321
  storageKey?: string;
1322
+ /** Initial glass intensity. Defaults to 'balanced'. */
1323
+ defaultGlass?: GlassMode;
1324
+ /** localStorage key for the glass intensity. Defaults to 'nexub-glass'. */
1325
+ glassStorageKey?: string;
1221
1326
  }
1222
- declare function ThemeProvider({ children, defaultTheme, storageKey, }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
1327
+ declare function ThemeProvider({ children, defaultTheme, storageKey, defaultGlass, glassStorageKey, }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
1223
1328
  declare function useTheme(): ThemeContextValue;
1224
1329
  interface ThemeScriptProps {
1225
1330
  /** Must match ThemeProvider's `storageKey`. Defaults to 'nexub-theme'. */
1226
1331
  storageKey?: string;
1227
1332
  /** If set, a stored product brand (e.g. 'bookub') is applied as `data-product`. */
1228
1333
  productStorageKey?: string;
1334
+ /** Must match ThemeProvider's `glassStorageKey`. Defaults to 'nexub-glass'. */
1335
+ glassStorageKey?: string;
1229
1336
  /** CSP nonce for pages whose script-src disallows inline scripts. */
1230
1337
  nonce?: string;
1231
1338
  }
@@ -1233,7 +1340,7 @@ interface ThemeScriptProps {
1233
1340
  * Applies the stored theme before first paint, so there is no light/dark flash.
1234
1341
  * Render it in `<head>` (or at the top of `<body>`) on server-rendered pages.
1235
1342
  */
1236
- declare function ThemeScript({ storageKey, productStorageKey, nonce }: ThemeScriptProps): react_jsx_runtime.JSX.Element;
1343
+ declare function ThemeScript({ storageKey, productStorageKey, glassStorageKey, nonce }: ThemeScriptProps): react_jsx_runtime.JSX.Element;
1237
1344
 
1238
1345
  type MotionDuration = 'instant' | 'fast' | 'normal' | 'slow' | 'slower';
1239
1346
  type MotionEasing = 'linear' | 'in' | 'out' | 'in-out' | 'out-expo' | 'spring';
@@ -1341,4 +1448,4 @@ interface CollapseProps extends Omit<MotionBaseProps, 'easing'>, React.HTMLAttri
1341
1448
  */
1342
1449
  declare const Collapse: React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<HTMLDivElement>>;
1343
1450
 
1344
- export { Accordion, Alert, AlertDialog, type AlertProps, AppShell, AspectRatio, type AspectRatioProps, Autocomplete, type AutocompleteOption, type AutocompleteProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, Badge, type BadgeProps, Banner, type BannerProps, Box, type BoxProps, Breadcrumb, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, Callout, type CalloutProps, Card, type CardProps, CheckList, CheckListItem, type CheckListItemProps, type CheckListProps, Checkbox, type CheckboxProps, Chip, type ChipProps, Code, type CodeProps, Collapse, type CollapseProps, Collapsible, Combobox, CommandPalette, Container, type ContainerProps, ContextMenu, CountryBadge, type CountryBadgeProps, DataTable, type DataTableProps, DatePicker, type DatePickerProps, DateRangePicker, type DateRangePickerProps, Dialog, Drawer, type DrawerRootProps, DropdownMenu, EmptyState, ErrorState, type ErrorStateProps, EyebrowChip, type EyebrowChipProps, Fade, type FadeProps, FileUpload, type FileUploadRootProps, FilterChip, type FilterChipProps, Flag, type FlagProps, Flex, type FlexProps, FormError, type FormErrorProps, FormField, type FormFieldContextValue, type FormFieldRootProps, GradientDivider, type GradientDividerProps, Grid, type GridProps, Heading, type HeadingProps, HelperText, type HelperTextProps, HoverCard, IconButton, type IconButtonProps, Input, type InputProps, Kbd, type KbdProps, KeyboardShortcut, type KeyboardShortcutProps, Label, type LabelProps, Link, type LinkProps, Logo, type LogoProps, Menubar, type MotionBaseProps, type MotionDuration, type MotionEasing, NavigationMenu, NumberInput, type NumberInputProps, PageHeader, type PageHeaderProps, Pagination, type PaginationProps, PasswordInput, type PasswordInputProps, Popover, Progress, type ProgressProps, RadioGroup, Rating, type RatingProps, Scale, type ScaleProps, ScrollArea, type ScrollAreaProps, SearchInput, type SearchInputProps, Section, type SectionProps, SegmentedControl, type SegmentedControlItemProps, type SegmentedControlProps, Select, Separator, type SeparatorProps, Sheet, Sidebar, type SidebarGroupProps, type SidebarHeaderProps, type SidebarItemProps, type SidebarRootProps, Skeleton, type SkeletonProps, Slide, type SlideDirection, type SlideProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackProps, StatusPill, type StatusPillProps, Switch, type SwitchProps, Table, Tabs, Tag, type TagProps, Text, TextGradient, type TextGradientProps, type TextProps, Textarea, type TextareaProps, type ThemeContextValue, type ThemeMode, ThemeProvider, type ThemeProviderProps, ThemeScript, type ThemeScriptProps, Toast, type ToastItem, Toaster, Toggle, ToggleGroup, type ToggleProps, type ToneValue, Toolbar, Tooltip, Provider as TooltipProvider, TopNav, type TopNavItemProps, addonVariants, alertVariants, avatarGroupVariants, avatarVariants, badgeVariants, bannerVariants, buttonVariants, calloutVariants, cardVariants, chipVariants, cn, containerVariants, headingVariants, iconButtonVariants, inputVariants, inputWrapperVariants, labelVariants, linkVariants, logoVariants, progressFillVariants, progressTrackVariants, ratingVariants, sectionVariants, separatorVariants, skeletonVariants, spinnerVariants, statusPillVariants, tagVariants, textVariants, textareaVariants, toast, toggleVariants, useControllableState, useDisclosure, useIsomorphicLayoutEffect, useMediaQuery, useMergedRefs, useTheme, useToastStore };
1451
+ export { Accordion, Alert, AlertDialog, type AlertProps, Amount, type AmountProps, AppShell, AspectRatio, type AspectRatioProps, Autocomplete, type AutocompleteOption, type AutocompleteProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, Badge, type BadgeProps, Banner, type BannerProps, Box, type BoxProps, Breadcrumb, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, Callout, type CalloutProps, Card, type CardProps, CheckList, CheckListItem, type CheckListItemProps, type CheckListProps, Checkbox, type CheckboxProps, Chip, type ChipProps, Code, type CodeProps, Collapse, type CollapseProps, Collapsible, Combobox, CommandPalette, type CommandPaletteRootProps, Container, type ContainerProps, ContextMenu, CountryBadge, type CountryBadgeProps, DataTable, type DataTableProps, DatePicker, type DatePickerProps, DateRangePicker, type DateRangePickerProps, Dialog, Drawer, type DrawerRootProps, DropdownMenu, EmptyState, ErrorState, type ErrorStateProps, EyebrowChip, type EyebrowChipProps, Fade, type FadeProps, FileUpload, type FileUploadRootProps, FilterChip, type FilterChipProps, Flag, type FlagProps, Flex, type FlexProps, FormError, type FormErrorProps, FormField, type FormFieldContextValue, type FormFieldRootProps, type GlassMode, GradientDivider, type GradientDividerProps, Grid, type GridProps, Heading, type HeadingProps, HelperText, type HelperTextProps, HoverCard, IconButton, type IconButtonProps, Input, type InputProps, Kbd, type KbdProps, KeyboardShortcut, type KeyboardShortcutProps, Label, type LabelProps, Link, type LinkProps, Logo, type LogoProps, Menubar, MoneyInput, type MoneyInputProps, type MotionBaseProps, type MotionDuration, type MotionEasing, NavigationMenu, NavigationRail, type NavigationRailItemProps, type NavigationRailRootProps, NumberInput, type NumberInputProps, PageHeader, type PageHeaderProps, Pagination, type PaginationProps, PasswordInput, type PasswordInputProps, Popover, Progress, type ProgressProps, RadioGroup, Rating, type RatingProps, Scale, type ScaleProps, ScrollArea, type ScrollAreaProps, SearchInput, type SearchInputProps, Section, type SectionProps, SegmentedControl, type SegmentedControlItemProps, type SegmentedControlProps, Select, Separator, type SeparatorProps, Sheet, Sidebar, type SidebarGroupProps, type SidebarHeaderProps, type SidebarItemProps, type SidebarRootProps, Skeleton, type SkeletonProps, Slide, type SlideDirection, type SlideProps, Slider, type SliderProps, Spinner, type SpinnerProps, SplitButton, type SplitButtonProps, Stack, type StackProps, StatusPill, type StatusPillProps, Switch, type SwitchProps, Table, Tabs, Tag, type TagProps, Text, TextGradient, type TextGradientProps, type TextProps, Textarea, type TextareaProps, type ThemeContextValue, type ThemeMode, ThemeProvider, type ThemeProviderProps, ThemeScript, type ThemeScriptProps, Toast, type ToastItem, Toaster, Toggle, ToggleGroup, type ToggleProps, type ToneValue, Toolbar, type ToolbarRootProps, Tooltip, Provider as TooltipProvider, TopNav, type TopNavItemProps, type TopNavRootProps, addonVariants, alertVariants, avatarGroupVariants, avatarVariants, badgeVariants, bannerVariants, buttonVariants, calloutVariants, cardVariants, chipVariants, cn, containerVariants, headingVariants, iconButtonVariants, inputVariants, inputWrapperVariants, labelVariants, linkVariants, logoVariants, progressFillVariants, progressTrackVariants, ratingVariants, sectionVariants, separatorVariants, skeletonVariants, spinnerVariants, statusPillVariants, tagVariants, textVariants, textareaVariants, toast, toggleVariants, useControllableState, useDisclosure, useIsomorphicLayoutEffect, useMediaQuery, useMergedRefs, useTheme, useToastStore };