jaci-ui 0.6.3 → 0.8.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 (292) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +48 -0
  3. package/dist/components/alert/alert.cjs +11 -1
  4. package/dist/components/alert/alert.cjs.map +1 -1
  5. package/dist/components/alert/alert.d.cts +4 -1
  6. package/dist/components/alert/alert.d.ts +4 -1
  7. package/dist/components/alert/alert.js +11 -2
  8. package/dist/components/alert/alert.js.map +1 -1
  9. package/dist/components/alert/index.d.cts +2 -2
  10. package/dist/components/alert/index.d.ts +2 -2
  11. package/dist/components/alert-dialog/alert-dialog.cjs +4 -1
  12. package/dist/components/alert-dialog/alert-dialog.cjs.map +1 -1
  13. package/dist/components/alert-dialog/alert-dialog.d.cts +2 -2
  14. package/dist/components/alert-dialog/alert-dialog.d.ts +2 -2
  15. package/dist/components/alert-dialog/alert-dialog.js +4 -1
  16. package/dist/components/alert-dialog/alert-dialog.js.map +1 -1
  17. package/dist/components/aspect-ratio/aspect-ratio.cjs +23 -0
  18. package/dist/components/aspect-ratio/aspect-ratio.cjs.map +1 -0
  19. package/dist/components/aspect-ratio/aspect-ratio.d.cts +9 -0
  20. package/dist/components/aspect-ratio/aspect-ratio.d.ts +9 -0
  21. package/dist/components/aspect-ratio/aspect-ratio.js +23 -0
  22. package/dist/components/aspect-ratio/aspect-ratio.js.map +1 -0
  23. package/dist/components/aspect-ratio/index.d.cts +2 -0
  24. package/dist/components/aspect-ratio/index.d.ts +2 -0
  25. package/dist/components/card/card.cjs +10 -1
  26. package/dist/components/card/card.cjs.map +1 -1
  27. package/dist/components/card/card.d.cts +15 -2
  28. package/dist/components/card/card.d.ts +15 -2
  29. package/dist/components/card/card.js +10 -2
  30. package/dist/components/card/card.js.map +1 -1
  31. package/dist/components/card/index.d.cts +2 -2
  32. package/dist/components/card/index.d.ts +2 -2
  33. package/dist/components/code/code.cjs +39 -0
  34. package/dist/components/code/code.cjs.map +1 -0
  35. package/dist/components/code/code.d.cts +14 -0
  36. package/dist/components/code/code.d.ts +14 -0
  37. package/dist/components/code/code.js +39 -0
  38. package/dist/components/code/code.js.map +1 -0
  39. package/dist/components/code/index.d.cts +2 -0
  40. package/dist/components/code/index.d.ts +2 -0
  41. package/dist/components/color-picker/color-picker.cjs +4 -1
  42. package/dist/components/color-picker/color-picker.cjs.map +1 -1
  43. package/dist/components/color-picker/color-picker.d.cts +2 -2
  44. package/dist/components/color-picker/color-picker.d.ts +2 -2
  45. package/dist/components/color-picker/color-picker.js +4 -1
  46. package/dist/components/color-picker/color-picker.js.map +1 -1
  47. package/dist/components/combobox/combobox.cjs +4 -1
  48. package/dist/components/combobox/combobox.cjs.map +1 -1
  49. package/dist/components/combobox/combobox.d.cts +2 -2
  50. package/dist/components/combobox/combobox.d.ts +2 -2
  51. package/dist/components/combobox/combobox.js +4 -1
  52. package/dist/components/combobox/combobox.js.map +1 -1
  53. package/dist/components/command/command.cjs +73 -12
  54. package/dist/components/command/command.cjs.map +1 -1
  55. package/dist/components/command/command.d.cts +7 -1
  56. package/dist/components/command/command.d.ts +7 -1
  57. package/dist/components/command/command.js +73 -12
  58. package/dist/components/command/command.js.map +1 -1
  59. package/dist/components/command/index.d.cts +2 -2
  60. package/dist/components/command/index.d.ts +2 -2
  61. package/dist/components/context-menu/context-menu.cjs +4 -1
  62. package/dist/components/context-menu/context-menu.cjs.map +1 -1
  63. package/dist/components/context-menu/context-menu.d.cts +2 -2
  64. package/dist/components/context-menu/context-menu.d.ts +2 -2
  65. package/dist/components/context-menu/context-menu.js +4 -1
  66. package/dist/components/context-menu/context-menu.js.map +1 -1
  67. package/dist/components/date-picker/date-picker.cjs +4 -1
  68. package/dist/components/date-picker/date-picker.cjs.map +1 -1
  69. package/dist/components/date-picker/date-picker.d.cts +2 -2
  70. package/dist/components/date-picker/date-picker.d.ts +2 -2
  71. package/dist/components/date-picker/date-picker.js +4 -1
  72. package/dist/components/date-picker/date-picker.js.map +1 -1
  73. package/dist/components/date-range-picker/date-range-picker.cjs +4 -1
  74. package/dist/components/date-range-picker/date-range-picker.cjs.map +1 -1
  75. package/dist/components/date-range-picker/date-range-picker.d.cts +2 -2
  76. package/dist/components/date-range-picker/date-range-picker.d.ts +2 -2
  77. package/dist/components/date-range-picker/date-range-picker.js +4 -1
  78. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  79. package/dist/components/dialog/dialog.cjs +4 -1
  80. package/dist/components/dialog/dialog.cjs.map +1 -1
  81. package/dist/components/dialog/dialog.d.cts +2 -2
  82. package/dist/components/dialog/dialog.d.ts +2 -2
  83. package/dist/components/dialog/dialog.js +4 -1
  84. package/dist/components/dialog/dialog.js.map +1 -1
  85. package/dist/components/drawer/drawer.cjs +4 -1
  86. package/dist/components/drawer/drawer.cjs.map +1 -1
  87. package/dist/components/drawer/drawer.d.cts +2 -2
  88. package/dist/components/drawer/drawer.d.ts +2 -2
  89. package/dist/components/drawer/drawer.js +4 -1
  90. package/dist/components/drawer/drawer.js.map +1 -1
  91. package/dist/components/feedback/badge.cjs +6 -3
  92. package/dist/components/feedback/badge.cjs.map +1 -1
  93. package/dist/components/feedback/badge.d.cts +1 -0
  94. package/dist/components/feedback/badge.d.ts +1 -0
  95. package/dist/components/feedback/badge.js +6 -3
  96. package/dist/components/feedback/badge.js.map +1 -1
  97. package/dist/components/figure/figure.cjs +134 -0
  98. package/dist/components/figure/figure.cjs.map +1 -0
  99. package/dist/components/figure/figure.d.cts +24 -0
  100. package/dist/components/figure/figure.d.ts +24 -0
  101. package/dist/components/figure/figure.js +131 -0
  102. package/dist/components/figure/figure.js.map +1 -0
  103. package/dist/components/figure/index.d.cts +2 -0
  104. package/dist/components/figure/index.d.ts +2 -0
  105. package/dist/components/image/image.cjs +112 -0
  106. package/dist/components/image/image.cjs.map +1 -0
  107. package/dist/components/image/image.d.cts +21 -0
  108. package/dist/components/image/image.d.ts +21 -0
  109. package/dist/components/image/image.js +112 -0
  110. package/dist/components/image/image.js.map +1 -0
  111. package/dist/components/image/index.d.cts +2 -0
  112. package/dist/components/image/index.d.ts +2 -0
  113. package/dist/components/kbd/index.d.cts +2 -0
  114. package/dist/components/kbd/index.d.ts +2 -0
  115. package/dist/components/kbd/kbd.cjs +23 -0
  116. package/dist/components/kbd/kbd.cjs.map +1 -0
  117. package/dist/components/kbd/kbd.d.cts +12 -0
  118. package/dist/components/kbd/kbd.d.ts +12 -0
  119. package/dist/components/kbd/kbd.js +23 -0
  120. package/dist/components/kbd/kbd.js.map +1 -0
  121. package/dist/components/menu/menu.cjs +4 -1
  122. package/dist/components/menu/menu.cjs.map +1 -1
  123. package/dist/components/menu/menu.d.cts +2 -2
  124. package/dist/components/menu/menu.d.ts +2 -2
  125. package/dist/components/menu/menu.js +4 -1
  126. package/dist/components/menu/menu.js.map +1 -1
  127. package/dist/components/menubar/menubar.cjs +4 -1
  128. package/dist/components/menubar/menubar.cjs.map +1 -1
  129. package/dist/components/menubar/menubar.d.cts +2 -2
  130. package/dist/components/menubar/menubar.d.ts +2 -2
  131. package/dist/components/menubar/menubar.js +4 -1
  132. package/dist/components/menubar/menubar.js.map +1 -1
  133. package/dist/components/navigation/navigation.cjs +3 -1
  134. package/dist/components/navigation/navigation.cjs.map +1 -1
  135. package/dist/components/navigation/navigation.js +3 -1
  136. package/dist/components/navigation/navigation.js.map +1 -1
  137. package/dist/components/navigation-menu/navigation-menu.cjs +4 -1
  138. package/dist/components/navigation-menu/navigation-menu.cjs.map +1 -1
  139. package/dist/components/navigation-menu/navigation-menu.d.cts +2 -2
  140. package/dist/components/navigation-menu/navigation-menu.d.ts +2 -2
  141. package/dist/components/navigation-menu/navigation-menu.js +4 -1
  142. package/dist/components/navigation-menu/navigation-menu.js.map +1 -1
  143. package/dist/components/popover/popover.cjs +4 -1
  144. package/dist/components/popover/popover.cjs.map +1 -1
  145. package/dist/components/popover/popover.d.cts +2 -2
  146. package/dist/components/popover/popover.d.ts +2 -2
  147. package/dist/components/popover/popover.js +4 -1
  148. package/dist/components/popover/popover.js.map +1 -1
  149. package/dist/components/progress/progress.cjs +19 -7
  150. package/dist/components/progress/progress.cjs.map +1 -1
  151. package/dist/components/progress/progress.d.cts +4 -0
  152. package/dist/components/progress/progress.d.ts +4 -0
  153. package/dist/components/progress/progress.js +19 -7
  154. package/dist/components/progress/progress.js.map +1 -1
  155. package/dist/components/quote/index.d.cts +2 -0
  156. package/dist/components/quote/index.d.ts +2 -0
  157. package/dist/components/quote/quote.cjs +38 -0
  158. package/dist/components/quote/quote.cjs.map +1 -0
  159. package/dist/components/quote/quote.d.cts +19 -0
  160. package/dist/components/quote/quote.d.ts +19 -0
  161. package/dist/components/quote/quote.js +38 -0
  162. package/dist/components/quote/quote.js.map +1 -0
  163. package/dist/components/select/select.cjs +4 -1
  164. package/dist/components/select/select.cjs.map +1 -1
  165. package/dist/components/select/select.d.cts +2 -2
  166. package/dist/components/select/select.d.ts +2 -2
  167. package/dist/components/select/select.js +4 -1
  168. package/dist/components/select/select.js.map +1 -1
  169. package/dist/components/sidebar/sidebar.cjs +24 -17
  170. package/dist/components/sidebar/sidebar.cjs.map +1 -1
  171. package/dist/components/sidebar/sidebar.d.cts +4 -2
  172. package/dist/components/sidebar/sidebar.d.ts +4 -2
  173. package/dist/components/sidebar/sidebar.js +24 -17
  174. package/dist/components/sidebar/sidebar.js.map +1 -1
  175. package/dist/components/stat/index.d.cts +2 -0
  176. package/dist/components/stat/index.d.ts +2 -0
  177. package/dist/components/stat/stat.cjs +122 -0
  178. package/dist/components/stat/stat.cjs.map +1 -0
  179. package/dist/components/stat/stat.d.cts +51 -0
  180. package/dist/components/stat/stat.d.ts +51 -0
  181. package/dist/components/stat/stat.js +114 -0
  182. package/dist/components/stat/stat.js.map +1 -0
  183. package/dist/components/stat-group/index.d.cts +2 -0
  184. package/dist/components/stat-group/index.d.ts +2 -0
  185. package/dist/components/toast/toast.cjs +4 -1
  186. package/dist/components/toast/toast.cjs.map +1 -1
  187. package/dist/components/toast/toast.d.cts +1 -1
  188. package/dist/components/toast/toast.d.ts +1 -1
  189. package/dist/components/toast/toast.js +4 -1
  190. package/dist/components/toast/toast.js.map +1 -1
  191. package/dist/components/tooltip/tooltip.cjs +4 -1
  192. package/dist/components/tooltip/tooltip.cjs.map +1 -1
  193. package/dist/components/tooltip/tooltip.d.cts +2 -2
  194. package/dist/components/tooltip/tooltip.d.ts +2 -2
  195. package/dist/components/tooltip/tooltip.js +4 -1
  196. package/dist/components/tooltip/tooltip.js.map +1 -1
  197. package/dist/components/typography/heading.cjs +8 -2
  198. package/dist/components/typography/heading.cjs.map +1 -1
  199. package/dist/components/typography/heading.d.cts +8 -1
  200. package/dist/components/typography/heading.d.ts +8 -1
  201. package/dist/components/typography/heading.js +8 -2
  202. package/dist/components/typography/heading.js.map +1 -1
  203. package/dist/components/typography/index.d.cts +2 -2
  204. package/dist/components/typography/index.d.ts +2 -2
  205. package/dist/components/typography/paragraph.cjs +7 -2
  206. package/dist/components/typography/paragraph.cjs.map +1 -1
  207. package/dist/components/typography/paragraph.d.cts +8 -2
  208. package/dist/components/typography/paragraph.d.ts +8 -2
  209. package/dist/components/typography/paragraph.js +7 -2
  210. package/dist/components/typography/paragraph.js.map +1 -1
  211. package/dist/components/typography/text.cjs +6 -2
  212. package/dist/components/typography/text.cjs.map +1 -1
  213. package/dist/components/typography/text.d.cts +5 -0
  214. package/dist/components/typography/text.d.ts +5 -0
  215. package/dist/components/typography/text.js +6 -2
  216. package/dist/components/typography/text.js.map +1 -1
  217. package/dist/index.cjs +28 -0
  218. package/dist/index.cjs.map +1 -0
  219. package/dist/index.d.cts +20 -5
  220. package/dist/index.d.ts +20 -5
  221. package/dist/index.js +11 -3
  222. package/dist/index.js.map +1 -0
  223. package/dist/styled-system/recipes/alert.cjs +2 -1
  224. package/dist/styled-system/recipes/alert.cjs.map +1 -1
  225. package/dist/styled-system/recipes/alert.js +2 -1
  226. package/dist/styled-system/recipes/alert.js.map +1 -1
  227. package/dist/styled-system/recipes/aspect-ratio-box.cjs +25 -0
  228. package/dist/styled-system/recipes/aspect-ratio-box.cjs.map +1 -0
  229. package/dist/styled-system/recipes/aspect-ratio-box.js +25 -0
  230. package/dist/styled-system/recipes/aspect-ratio-box.js.map +1 -0
  231. package/dist/styled-system/recipes/badge.cjs +16 -6
  232. package/dist/styled-system/recipes/badge.cjs.map +1 -1
  233. package/dist/styled-system/recipes/badge.js +16 -6
  234. package/dist/styled-system/recipes/badge.js.map +1 -1
  235. package/dist/styled-system/recipes/code.cjs +33 -0
  236. package/dist/styled-system/recipes/code.cjs.map +1 -0
  237. package/dist/styled-system/recipes/code.js +33 -0
  238. package/dist/styled-system/recipes/code.js.map +1 -0
  239. package/dist/styled-system/recipes/command.cjs +3 -3
  240. package/dist/styled-system/recipes/command.cjs.map +1 -1
  241. package/dist/styled-system/recipes/command.js +3 -3
  242. package/dist/styled-system/recipes/command.js.map +1 -1
  243. package/dist/styled-system/recipes/figure.cjs +43 -0
  244. package/dist/styled-system/recipes/figure.cjs.map +1 -0
  245. package/dist/styled-system/recipes/figure.js +43 -0
  246. package/dist/styled-system/recipes/figure.js.map +1 -0
  247. package/dist/styled-system/recipes/heading.cjs +34 -9
  248. package/dist/styled-system/recipes/heading.cjs.map +1 -1
  249. package/dist/styled-system/recipes/heading.js +34 -9
  250. package/dist/styled-system/recipes/heading.js.map +1 -1
  251. package/dist/styled-system/recipes/image.cjs +57 -0
  252. package/dist/styled-system/recipes/image.cjs.map +1 -0
  253. package/dist/styled-system/recipes/image.js +57 -0
  254. package/dist/styled-system/recipes/image.js.map +1 -0
  255. package/dist/styled-system/recipes/kbd.cjs +39 -0
  256. package/dist/styled-system/recipes/kbd.cjs.map +1 -0
  257. package/dist/styled-system/recipes/kbd.js +39 -0
  258. package/dist/styled-system/recipes/kbd.js.map +1 -0
  259. package/dist/styled-system/recipes/paragraph.cjs +25 -2
  260. package/dist/styled-system/recipes/paragraph.cjs.map +1 -1
  261. package/dist/styled-system/recipes/paragraph.js +25 -2
  262. package/dist/styled-system/recipes/paragraph.js.map +1 -1
  263. package/dist/styled-system/recipes/progress.cjs +1 -0
  264. package/dist/styled-system/recipes/progress.cjs.map +1 -1
  265. package/dist/styled-system/recipes/progress.js +1 -0
  266. package/dist/styled-system/recipes/progress.js.map +1 -1
  267. package/dist/styled-system/recipes/quote.cjs +39 -0
  268. package/dist/styled-system/recipes/quote.cjs.map +1 -0
  269. package/dist/styled-system/recipes/quote.js +39 -0
  270. package/dist/styled-system/recipes/quote.js.map +1 -0
  271. package/dist/styled-system/recipes/stat-group.cjs +40 -0
  272. package/dist/styled-system/recipes/stat-group.cjs.map +1 -0
  273. package/dist/styled-system/recipes/stat-group.js +40 -0
  274. package/dist/styled-system/recipes/stat-group.js.map +1 -0
  275. package/dist/styled-system/recipes/stat.cjs +63 -0
  276. package/dist/styled-system/recipes/stat.cjs.map +1 -0
  277. package/dist/styled-system/recipes/stat.js +63 -0
  278. package/dist/styled-system/recipes/stat.js.map +1 -0
  279. package/dist/styled-system/recipes/text.cjs +23 -2
  280. package/dist/styled-system/recipes/text.cjs.map +1 -1
  281. package/dist/styled-system/recipes/text.js +23 -2
  282. package/dist/styled-system/recipes/text.js.map +1 -1
  283. package/dist/styles.css +1064 -117
  284. package/dist/theme/theme-provider.cjs +18 -8
  285. package/dist/theme/theme-provider.cjs.map +1 -1
  286. package/dist/theme/theme-provider.js +18 -8
  287. package/dist/theme/theme-provider.js.map +1 -1
  288. package/dist/theme/theme-scope.cjs +21 -0
  289. package/dist/theme/theme-scope.cjs.map +1 -0
  290. package/dist/theme/theme-scope.js +19 -0
  291. package/dist/theme/theme-scope.js.map +1 -0
  292. package/package.json +7 -4
@@ -0,0 +1,51 @@
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ //#region src/components/stat/stat.d.ts
3
+ type StatTone = "neutral" | "accent" | "success" | "warning" | "danger";
4
+ type StatSize = "sm" | "md" | "lg";
5
+ type StatTrendDirection = "up" | "down" | "neutral";
6
+ interface StatRootProps extends ComponentPropsWithoutRef<"article"> {
7
+ size?: StatSize;
8
+ tone?: StatTone;
9
+ }
10
+ declare const StatRoot: import("react").ForwardRefExoticComponent<StatRootProps & import("react").RefAttributes<HTMLElement>>;
11
+ type StatIconProps = ComponentPropsWithoutRef<"span">;
12
+ declare const StatIcon: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
13
+ type StatLabelProps = ComponentPropsWithoutRef<"span">;
14
+ declare const StatLabel: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
15
+ type StatValueProps = ComponentPropsWithoutRef<"strong">;
16
+ declare const StatValue: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
17
+ type StatDescriptionProps = ComponentPropsWithoutRef<"p">;
18
+ declare const StatDescription: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLParagraphElement>>;
19
+ interface StatTrendProps extends ComponentPropsWithoutRef<"span"> {
20
+ direction?: StatTrendDirection;
21
+ }
22
+ declare const StatTrend: import("react").ForwardRefExoticComponent<StatTrendProps & import("react").RefAttributes<HTMLSpanElement>>;
23
+ declare const Stat: {
24
+ Root: import("react").ForwardRefExoticComponent<StatRootProps & import("react").RefAttributes<HTMLElement>>;
25
+ Icon: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
26
+ Label: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
27
+ Value: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
28
+ Description: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLParagraphElement>>;
29
+ Trend: import("react").ForwardRefExoticComponent<StatTrendProps & import("react").RefAttributes<HTMLSpanElement>>;
30
+ };
31
+ type StatGroupRootProps = ComponentPropsWithoutRef<"div"> & {
32
+ columns?: 1 | 2 | 3 | 4;
33
+ gap?: "sm" | "md" | "lg";
34
+ responsive?: boolean;
35
+ };
36
+ declare const StatGroupRoot: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
37
+ columns?: 1 | 2 | 3 | 4;
38
+ gap?: "sm" | "md" | "lg";
39
+ responsive?: boolean;
40
+ } & import("react").RefAttributes<HTMLDivElement>>;
41
+ declare const StatGroup: {
42
+ Root: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
43
+ columns?: 1 | 2 | 3 | 4;
44
+ gap?: "sm" | "md" | "lg";
45
+ responsive?: boolean;
46
+ } & import("react").RefAttributes<HTMLDivElement>>;
47
+ };
48
+ type StatGroupProps = StatGroupRootProps;
49
+ //#endregion
50
+ export { Stat, StatDescription, StatDescriptionProps, StatGroup, StatGroupProps, StatGroupRoot, StatGroupRootProps, StatIcon, StatIconProps, StatLabel, StatLabelProps, StatRoot, StatRootProps, StatSize, StatTone, StatTrend, StatTrendDirection, StatTrendProps, StatValue, StatValueProps };
51
+ //# sourceMappingURL=stat.d.cts.map
@@ -0,0 +1,51 @@
1
+ import { ComponentPropsWithoutRef, ReactNode } from "react";
2
+ //#region src/components/stat/stat.d.ts
3
+ type StatTone = "neutral" | "accent" | "success" | "warning" | "danger";
4
+ type StatSize = "sm" | "md" | "lg";
5
+ type StatTrendDirection = "up" | "down" | "neutral";
6
+ interface StatRootProps extends ComponentPropsWithoutRef<"article"> {
7
+ size?: StatSize;
8
+ tone?: StatTone;
9
+ }
10
+ declare const StatRoot: import("react").ForwardRefExoticComponent<StatRootProps & import("react").RefAttributes<HTMLElement>>;
11
+ type StatIconProps = ComponentPropsWithoutRef<"span">;
12
+ declare const StatIcon: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
13
+ type StatLabelProps = ComponentPropsWithoutRef<"span">;
14
+ declare const StatLabel: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
15
+ type StatValueProps = ComponentPropsWithoutRef<"strong">;
16
+ declare const StatValue: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
17
+ type StatDescriptionProps = ComponentPropsWithoutRef<"p">;
18
+ declare const StatDescription: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLParagraphElement>>;
19
+ interface StatTrendProps extends ComponentPropsWithoutRef<"span"> {
20
+ direction?: StatTrendDirection;
21
+ }
22
+ declare const StatTrend: import("react").ForwardRefExoticComponent<StatTrendProps & import("react").RefAttributes<HTMLSpanElement>>;
23
+ declare const Stat: {
24
+ Root: import("react").ForwardRefExoticComponent<StatRootProps & import("react").RefAttributes<HTMLElement>>;
25
+ Icon: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
26
+ Label: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
27
+ Value: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
28
+ Description: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLParagraphElement>>;
29
+ Trend: import("react").ForwardRefExoticComponent<StatTrendProps & import("react").RefAttributes<HTMLSpanElement>>;
30
+ };
31
+ type StatGroupRootProps = ComponentPropsWithoutRef<"div"> & {
32
+ columns?: 1 | 2 | 3 | 4;
33
+ gap?: "sm" | "md" | "lg";
34
+ responsive?: boolean;
35
+ };
36
+ declare const StatGroupRoot: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
37
+ columns?: 1 | 2 | 3 | 4;
38
+ gap?: "sm" | "md" | "lg";
39
+ responsive?: boolean;
40
+ } & import("react").RefAttributes<HTMLDivElement>>;
41
+ declare const StatGroup: {
42
+ Root: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
43
+ columns?: 1 | 2 | 3 | 4;
44
+ gap?: "sm" | "md" | "lg";
45
+ responsive?: boolean;
46
+ } & import("react").RefAttributes<HTMLDivElement>>;
47
+ };
48
+ type StatGroupProps = StatGroupRootProps;
49
+ //#endregion
50
+ export { Stat, StatDescription, StatDescriptionProps, StatGroup, StatGroupProps, StatGroupRoot, StatGroupRootProps, StatIcon, StatIconProps, StatLabel, StatLabelProps, StatRoot, StatRootProps, StatSize, StatTone, StatTrend, StatTrendDirection, StatTrendProps, StatValue, StatValueProps };
51
+ //# sourceMappingURL=stat.d.ts.map
@@ -0,0 +1,114 @@
1
+ import { cx } from "../../styled-system/css/cx.js";
2
+ import { statGroup } from "../../styled-system/recipes/stat-group.js";
3
+ import { stat } from "../../styled-system/recipes/stat.js";
4
+ import { createContext, forwardRef, useContext } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ //#region src/components/stat/stat.tsx
7
+ const StatContext = createContext(null);
8
+ function useStatContext() {
9
+ const context = useContext(StatContext);
10
+ if (!context) throw new Error("Stat parts must be rendered inside Stat.Root.");
11
+ return context;
12
+ }
13
+ const StatRoot = forwardRef(function StatRoot({ children, className, size = "md", tone = "neutral", ...props }, ref) {
14
+ const styles = stat({
15
+ size,
16
+ tone
17
+ });
18
+ return /* @__PURE__ */ jsx(StatContext.Provider, {
19
+ value: {
20
+ size,
21
+ styles,
22
+ tone
23
+ },
24
+ children: /* @__PURE__ */ jsx("article", {
25
+ ...props,
26
+ ref,
27
+ className: cx(styles.root, className),
28
+ "data-jaci-component": "stat",
29
+ "data-size": size,
30
+ "data-slot": "stat",
31
+ "data-tone": tone,
32
+ children
33
+ })
34
+ });
35
+ });
36
+ const StatIcon = forwardRef(function StatIcon({ className, ...props }, ref) {
37
+ const { styles } = useStatContext();
38
+ return /* @__PURE__ */ jsx("span", {
39
+ ...props,
40
+ ref,
41
+ className: cx(styles.icon, className),
42
+ "data-slot": "stat-icon"
43
+ });
44
+ });
45
+ const StatLabel = forwardRef(function StatLabel({ className, ...props }, ref) {
46
+ const { styles } = useStatContext();
47
+ return /* @__PURE__ */ jsx("span", {
48
+ ...props,
49
+ ref,
50
+ className: cx(styles.label, className),
51
+ "data-slot": "stat-label"
52
+ });
53
+ });
54
+ const StatValue = forwardRef(function StatValue({ className, ...props }, ref) {
55
+ const { styles } = useStatContext();
56
+ return /* @__PURE__ */ jsx("strong", {
57
+ ...props,
58
+ ref,
59
+ className: cx(styles.value, className),
60
+ "data-slot": "stat-value"
61
+ });
62
+ });
63
+ const StatDescription = forwardRef(function StatDescription({ className, ...props }, ref) {
64
+ const { styles } = useStatContext();
65
+ return /* @__PURE__ */ jsx("p", {
66
+ ...props,
67
+ ref,
68
+ className: cx(styles.description, className),
69
+ "data-slot": "stat-description"
70
+ });
71
+ });
72
+ const StatTrend = forwardRef(function StatTrend({ className, direction = "neutral", ...props }, ref) {
73
+ const { styles } = useStatContext();
74
+ return /* @__PURE__ */ jsx("span", {
75
+ ...props,
76
+ ref,
77
+ className: cx(styles.trend, stat({ direction }).trend, className),
78
+ "data-direction": direction,
79
+ "data-slot": "stat-trend"
80
+ });
81
+ });
82
+ const Stat = {
83
+ Root: StatRoot,
84
+ Icon: StatIcon,
85
+ Label: StatLabel,
86
+ Value: StatValue,
87
+ Description: StatDescription,
88
+ Trend: StatTrend
89
+ };
90
+ const StatGroupRoot = forwardRef(function StatGroupRoot({ children, className, columns = 3, gap = "md", responsive = true, style, ...props }, ref) {
91
+ const columnValue = String(columns);
92
+ return /* @__PURE__ */ jsx("div", {
93
+ ...props,
94
+ ref,
95
+ className: cx(statGroup({
96
+ columns: columnValue,
97
+ gap
98
+ }), className),
99
+ "data-columns": columns,
100
+ "data-jaci-component": "stat-group",
101
+ "data-responsive": responsive || void 0,
102
+ "data-slot": "stat-group",
103
+ style: responsive ? style : {
104
+ gridTemplateColumns: `repeat(${columns}, minmax(0, 1fr))`,
105
+ ...style
106
+ },
107
+ children
108
+ });
109
+ });
110
+ const StatGroup = { Root: StatGroupRoot };
111
+ //#endregion
112
+ export { Stat, StatDescription, StatGroup, StatGroupRoot, StatIcon, StatLabel, StatRoot, StatTrend, StatValue };
113
+
114
+ //# sourceMappingURL=stat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stat.js","names":[],"sources":["../../../src/components/stat/stat.tsx"],"sourcesContent":["import { createContext, forwardRef, useContext } from \"react\";\nimport type { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { stat, statGroup } from \"../../styled-system/recipes\";\n\nexport type StatTone = \"neutral\" | \"accent\" | \"success\" | \"warning\" | \"danger\";\nexport type StatSize = \"sm\" | \"md\" | \"lg\";\nexport type StatTrendDirection = \"up\" | \"down\" | \"neutral\";\n\ninterface StatContextValue {\n size: StatSize;\n styles: ReturnType<typeof stat>;\n tone: StatTone;\n}\n\nconst StatContext = createContext<StatContextValue | null>(null);\n\nfunction useStatContext() {\n const context = useContext(StatContext);\n if (!context) {\n throw new Error(\"Stat parts must be rendered inside Stat.Root.\");\n }\n\n return context;\n}\n\nexport interface StatRootProps extends ComponentPropsWithoutRef<\"article\"> {\n size?: StatSize;\n tone?: StatTone;\n}\n\nexport const StatRoot = forwardRef<HTMLElement, StatRootProps>(function StatRoot(\n { children, className, size = \"md\", tone = \"neutral\", ...props },\n ref,\n) {\n const styles = stat({ size, tone });\n\n return (\n <StatContext.Provider value={{ size, styles, tone }}>\n <article\n {...props}\n ref={ref}\n className={cx(styles.root, className)}\n data-jaci-component=\"stat\"\n data-size={size}\n data-slot=\"stat\"\n data-tone={tone}\n >\n {children}\n </article>\n </StatContext.Provider>\n );\n});\n\nexport type StatIconProps = ComponentPropsWithoutRef<\"span\">;\nexport const StatIcon = forwardRef<HTMLSpanElement, StatIconProps>(function StatIcon(\n { className, ...props },\n ref,\n) {\n const { styles } = useStatContext();\n return <span {...props} ref={ref} className={cx(styles.icon, className)} data-slot=\"stat-icon\" />;\n});\n\nexport type StatLabelProps = ComponentPropsWithoutRef<\"span\">;\nexport const StatLabel = forwardRef<HTMLSpanElement, StatLabelProps>(function StatLabel(\n { className, ...props },\n ref,\n) {\n const { styles } = useStatContext();\n return (\n <span {...props} ref={ref} className={cx(styles.label, className)} data-slot=\"stat-label\" />\n );\n});\n\nexport type StatValueProps = ComponentPropsWithoutRef<\"strong\">;\nexport const StatValue = forwardRef<HTMLElement, StatValueProps>(function StatValue(\n { className, ...props },\n ref,\n) {\n const { styles } = useStatContext();\n return (\n <strong {...props} ref={ref} className={cx(styles.value, className)} data-slot=\"stat-value\" />\n );\n});\n\nexport type StatDescriptionProps = ComponentPropsWithoutRef<\"p\">;\nexport const StatDescription = forwardRef<HTMLParagraphElement, StatDescriptionProps>(\n function StatDescription({ className, ...props }, ref) {\n const { styles } = useStatContext();\n return (\n <p\n {...props}\n ref={ref}\n className={cx(styles.description, className)}\n data-slot=\"stat-description\"\n />\n );\n },\n);\n\nexport interface StatTrendProps extends ComponentPropsWithoutRef<\"span\"> {\n direction?: StatTrendDirection;\n}\n\nexport const StatTrend = forwardRef<HTMLSpanElement, StatTrendProps>(function StatTrend(\n { className, direction = \"neutral\", ...props },\n ref,\n) {\n const { styles } = useStatContext();\n return (\n <span\n {...props}\n ref={ref}\n className={cx(styles.trend, stat({ direction }).trend, className)}\n data-direction={direction}\n data-slot=\"stat-trend\"\n />\n );\n});\n\nexport const Stat = {\n Root: StatRoot,\n Icon: StatIcon,\n Label: StatLabel,\n Value: StatValue,\n Description: StatDescription,\n Trend: StatTrend,\n};\n\nexport type StatGroupRootProps = ComponentPropsWithoutRef<\"div\"> & {\n columns?: 1 | 2 | 3 | 4;\n gap?: \"sm\" | \"md\" | \"lg\";\n responsive?: boolean;\n};\n\nexport const StatGroupRoot = forwardRef<HTMLDivElement, StatGroupRootProps>(function StatGroupRoot(\n { children, className, columns = 3, gap = \"md\", responsive = true, style, ...props },\n ref,\n) {\n const columnValue = String(columns) as \"1\" | \"2\" | \"3\" | \"4\";\n return (\n <div\n {...props}\n ref={ref}\n className={cx(statGroup({ columns: columnValue, gap }), className)}\n data-columns={columns}\n data-jaci-component=\"stat-group\"\n data-responsive={responsive || undefined}\n data-slot=\"stat-group\"\n style={\n responsive ? style : { gridTemplateColumns: `repeat(${columns}, minmax(0, 1fr))`, ...style }\n }\n >\n {children}\n </div>\n );\n});\n\nexport const StatGroup = { Root: StatGroupRoot };\n\nexport type StatGroupProps = StatGroupRootProps;\n\nexport type StatChildren = ReactNode;\n"],"mappings":";;;;;;AAgBA,MAAM,cAAc,cAAuC,IAAI;AAE/D,SAAS,iBAAiB;CACxB,MAAM,UAAU,WAAW,WAAW;CACtC,IAAI,CAAC,SACH,MAAM,IAAI,MAAM,+CAA+C;CAGjE,OAAO;AACT;AAOA,MAAa,WAAW,WAAuC,SAAS,SACtE,EAAE,UAAU,WAAW,OAAO,MAAM,OAAO,WAAW,GAAG,SACzD,KACA;CACA,MAAM,SAAS,KAAK;EAAE;EAAM;CAAK,CAAC;CAElC,OACE,oBAAC,YAAY,UAAb;EAAsB,OAAO;GAAE;GAAM;GAAQ;EAAK;YAChD,oBAAC,WAAD;GACE,GAAI;GACC;GACL,WAAW,GAAG,OAAO,MAAM,SAAS;GACpC,uBAAoB;GACpB,aAAW;GACX,aAAU;GACV,aAAW;GAEV;EACM,CAAA;CACW,CAAA;AAE1B,CAAC;AAGD,MAAa,WAAW,WAA2C,SAAS,SAC1E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,MAAM,EAAE,WAAW,eAAe;CAClC,OAAO,oBAAC,QAAD;EAAM,GAAI;EAAY;EAAK,WAAW,GAAG,OAAO,MAAM,SAAS;EAAG,aAAU;CAAa,CAAA;AAClG,CAAC;AAGD,MAAa,YAAY,WAA4C,SAAS,UAC5E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,MAAM,EAAE,WAAW,eAAe;CAClC,OACE,oBAAC,QAAD;EAAM,GAAI;EAAY;EAAK,WAAW,GAAG,OAAO,OAAO,SAAS;EAAG,aAAU;CAAc,CAAA;AAE/F,CAAC;AAGD,MAAa,YAAY,WAAwC,SAAS,UACxE,EAAE,WAAW,GAAG,SAChB,KACA;CACA,MAAM,EAAE,WAAW,eAAe;CAClC,OACE,oBAAC,UAAD;EAAQ,GAAI;EAAY;EAAK,WAAW,GAAG,OAAO,OAAO,SAAS;EAAG,aAAU;CAAc,CAAA;AAEjG,CAAC;AAGD,MAAa,kBAAkB,WAC7B,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAS,KAAK;CACrD,MAAM,EAAE,WAAW,eAAe;CAClC,OACE,oBAAC,KAAD;EACE,GAAI;EACC;EACL,WAAW,GAAG,OAAO,aAAa,SAAS;EAC3C,aAAU;CACX,CAAA;AAEL,CACF;AAMA,MAAa,YAAY,WAA4C,SAAS,UAC5E,EAAE,WAAW,YAAY,WAAW,GAAG,SACvC,KACA;CACA,MAAM,EAAE,WAAW,eAAe;CAClC,OACE,oBAAC,QAAD;EACE,GAAI;EACC;EACL,WAAW,GAAG,OAAO,OAAO,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,SAAS;EAChE,kBAAgB;EAChB,aAAU;CACX,CAAA;AAEL,CAAC;AAED,MAAa,OAAO;CAClB,MAAM;CACN,MAAM;CACN,OAAO;CACP,OAAO;CACP,aAAa;CACb,OAAO;AACT;AAQA,MAAa,gBAAgB,WAA+C,SAAS,cACnF,EAAE,UAAU,WAAW,UAAU,GAAG,MAAM,MAAM,aAAa,MAAM,OAAO,GAAG,SAC7E,KACA;CACA,MAAM,cAAc,OAAO,OAAO;CAClC,OACE,oBAAC,OAAD;EACE,GAAI;EACC;EACL,WAAW,GAAG,UAAU;GAAE,SAAS;GAAa;EAAI,CAAC,GAAG,SAAS;EACjE,gBAAc;EACd,uBAAoB;EACpB,mBAAiB,cAAc,KAAA;EAC/B,aAAU;EACV,OACE,aAAa,QAAQ;GAAE,qBAAqB,UAAU,QAAQ;GAAoB,GAAG;EAAM;EAG5F;CACE,CAAA;AAET,CAAC;AAED,MAAa,YAAY,EAAE,MAAM,cAAc"}
@@ -0,0 +1,2 @@
1
+ import { StatGroup, StatGroupProps, StatGroupRoot, StatGroupRootProps } from "../stat/stat.cjs";
2
+ export { StatGroup, type StatGroupProps, StatGroupRoot, type StatGroupRootProps };
@@ -0,0 +1,2 @@
1
+ import { StatGroup, StatGroupProps, StatGroupRoot, StatGroupRootProps } from "../stat/stat.js";
2
+ export { StatGroup, type StatGroupProps, StatGroupRoot, type StatGroupRootProps };
@@ -2,6 +2,7 @@
2
2
  const require_cx = require("../../styled-system/css/cx.cjs");
3
3
  const require_base_ui = require("../base-ui.cjs");
4
4
  const require_toast = require("../../styled-system/recipes/toast.cjs");
5
+ const require_theme_scope = require("../../theme/theme-scope.cjs");
5
6
  let react = require("react");
6
7
  let react_jsx_runtime = require("react/jsx-runtime");
7
8
  let _base_ui_react_toast = require("@base-ui/react/toast");
@@ -107,7 +108,9 @@ const ToastAction = (0, react.forwardRef)(function ToastAction({ className, ...p
107
108
  });
108
109
  });
109
110
  /** Base UI's portal is preserved for rendering the viewport at document level. */
110
- const ToastPortal = _base_ui_react_toast.Toast.Portal;
111
+ function ToastPortal(props) {
112
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_toast.Toast.Portal, { ...require_theme_scope.useThemePortalProps(props) });
113
+ }
111
114
  const Toast = {
112
115
  Provider: ToastProvider,
113
116
  Viewport: ToastViewport,
@@ -1 +1 @@
1
- {"version":3,"file":"toast.cjs","names":["BaseToast","withRecipeClassName","toastRecipe","cx"],"sources":["../../../src/components/toast/toast.tsx"],"sourcesContent":["\"use client\";\n\nimport { Toast as BaseToast } from \"@base-ui/react/toast\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { toast as toastRecipe } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\nexport type ToastTone = \"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\";\n\nconst toneByToastType: Record<string, ToastTone> = {\n danger: \"danger\",\n error: \"danger\",\n info: \"info\",\n success: \"success\",\n warning: \"warning\",\n};\n\nfunction resolveTone(type: string | undefined, tone: ToastTone | undefined): ToastTone {\n return tone ?? (type === undefined ? \"neutral\" : (toneByToastType[type] ?? \"neutral\"));\n}\n\nexport type ToastProviderProps = ComponentPropsWithoutRef<typeof BaseToast.Provider>;\n\n/**\n * Creates an isolated, declarative toast region. Configure `timeout` and\n * `limit` here; use `Toast.Root` to render each toast from local state or\n * `Toast.useToastManager()`.\n */\nexport function ToastProvider(props: ToastProviderProps) {\n return <BaseToast.Provider {...props} />;\n}\n\nexport type ToastViewportProps = ComponentPropsWithoutRef<typeof BaseToast.Viewport>;\n\n/**\n * A bottom-centred notification region.\n */\nexport const ToastViewport = forwardRef<HTMLDivElement, ToastViewportProps>(function ToastViewport(\n { \"aria-label\": ariaLabel, \"aria-live\": ariaLive, className, ...props },\n ref,\n) {\n return (\n <BaseToast.Viewport\n {...props}\n aria-label={ariaLabel ?? \"Notifications\"}\n aria-live={ariaLive ?? \"polite\"}\n ref={ref}\n className={withRecipeClassName(toastRecipe().viewport, className)}\n data-jaci-component=\"toast-viewport\"\n data-slot=\"toast-viewport\"\n />\n );\n});\n\nexport interface ToastRootProps extends ComponentPropsWithoutRef<typeof BaseToast.Root> {\n /**\n * Visual status. When omitted, the value is inferred from the toast's\n * `type` (`error` maps to `danger`) and otherwise remains neutral.\n */\n tone?: ToastTone;\n}\n\n/**\n * Renders a toast object while preserving Base UI's lifecycle, focus, swipe,\n * and auto-dismiss behavior. It is intentionally composed rather than a\n * global imperative notification API.\n */\nexport const ToastRoot = forwardRef<HTMLDivElement, ToastRootProps>(function ToastRoot(\n { className, toast: toastObject, tone, ...props },\n ref,\n) {\n const resolvedTone = resolveTone(toastObject.type, tone);\n\n return (\n <BaseToast.Root\n {...props}\n ref={ref}\n toast={toastObject}\n className={withRecipeClassName(toastRecipe({ tone: resolvedTone }).root, className)}\n data-jaci-component=\"toast\"\n data-jaci-tone={resolvedTone}\n data-slot=\"toast\"\n />\n );\n});\n\nexport type ToastContentProps = ComponentPropsWithoutRef<typeof BaseToast.Content>;\n\nexport const ToastContent = forwardRef<HTMLDivElement, ToastContentProps>(function ToastContent(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Content\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().content, className)}\n data-slot=\"toast-content\"\n />\n );\n});\n\n/** A layout wrapper for `Toast.Title` and `Toast.Description`. */\nexport type ToastTextProps = ComponentPropsWithoutRef<\"div\">;\n\nexport const ToastText = forwardRef<HTMLDivElement, ToastTextProps>(function ToastText(\n { className, ...props },\n ref,\n) {\n return (\n <div\n {...props}\n ref={ref}\n className={cx(toastRecipe().text, className)}\n data-slot=\"toast-text\"\n />\n );\n});\n\nexport type ToastTitleProps = ComponentPropsWithoutRef<typeof BaseToast.Title>;\n\nexport const ToastTitle = forwardRef<HTMLHeadingElement, ToastTitleProps>(function ToastTitle(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Title\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().title, className)}\n data-slot=\"toast-title\"\n />\n );\n});\n\nexport type ToastDescriptionProps = ComponentPropsWithoutRef<typeof BaseToast.Description>;\n\nexport const ToastDescription = forwardRef<HTMLParagraphElement, ToastDescriptionProps>(\n function ToastDescription({ className, ...props }, ref) {\n return (\n <BaseToast.Description\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().description, className)}\n data-slot=\"toast-description\"\n />\n );\n },\n);\n\nexport type ToastCloseProps = ComponentPropsWithoutRef<typeof BaseToast.Close>;\n\nexport const ToastClose = forwardRef<HTMLButtonElement, ToastCloseProps>(function ToastClose(\n { \"aria-label\": ariaLabel, children, className, ...props },\n ref,\n) {\n const hasVisibleLabel = children != null;\n\n return (\n <BaseToast.Close\n {...props}\n aria-label={ariaLabel ?? (hasVisibleLabel ? undefined : \"Dismiss notification\")}\n ref={ref}\n className={withRecipeClassName(toastRecipe().close, className)}\n data-slot=\"toast-close\"\n >\n {children ?? \"×\"}\n </BaseToast.Close>\n );\n});\n\nexport type ToastActionProps = ComponentPropsWithoutRef<typeof BaseToast.Action>;\n\nexport const ToastAction = forwardRef<HTMLButtonElement, ToastActionProps>(function ToastAction(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Action\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().action, className)}\n data-slot=\"toast-action\"\n />\n );\n});\n\n/** Base UI's portal is preserved for rendering the viewport at document level. */\nexport const ToastPortal: typeof BaseToast.Portal = BaseToast.Portal;\n\nexport interface ToastComponent {\n Provider: typeof ToastProvider;\n Viewport: typeof ToastViewport;\n Root: typeof ToastRoot;\n Content: typeof ToastContent;\n Text: typeof ToastText;\n Title: typeof ToastTitle;\n Description: typeof ToastDescription;\n Close: typeof ToastClose;\n Action: typeof ToastAction;\n Portal: typeof ToastPortal;\n useToastManager: typeof BaseToast.useToastManager;\n}\n\nexport const Toast: ToastComponent = {\n Provider: ToastProvider,\n Viewport: ToastViewport,\n Root: ToastRoot,\n Content: ToastContent,\n Text: ToastText,\n Title: ToastTitle,\n Description: ToastDescription,\n Close: ToastClose,\n Action: ToastAction,\n Portal: ToastPortal,\n useToastManager: BaseToast.useToastManager,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"toast.cjs","names":["BaseToast","withRecipeClassName","toastRecipe","cx","useThemePortalProps"],"sources":["../../../src/components/toast/toast.tsx"],"sourcesContent":["\"use client\";\n\nimport { Toast as BaseToast } from \"@base-ui/react/toast\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { toast as toastRecipe } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\nexport type ToastTone = \"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\";\n\nconst toneByToastType: Record<string, ToastTone> = {\n danger: \"danger\",\n error: \"danger\",\n info: \"info\",\n success: \"success\",\n warning: \"warning\",\n};\n\nfunction resolveTone(type: string | undefined, tone: ToastTone | undefined): ToastTone {\n return tone ?? (type === undefined ? \"neutral\" : (toneByToastType[type] ?? \"neutral\"));\n}\n\nexport type ToastProviderProps = ComponentPropsWithoutRef<typeof BaseToast.Provider>;\n\n/**\n * Creates an isolated, declarative toast region. Configure `timeout` and\n * `limit` here; use `Toast.Root` to render each toast from local state or\n * `Toast.useToastManager()`.\n */\nexport function ToastProvider(props: ToastProviderProps) {\n return <BaseToast.Provider {...props} />;\n}\n\nexport type ToastViewportProps = ComponentPropsWithoutRef<typeof BaseToast.Viewport>;\n\n/**\n * A bottom-centred notification region.\n */\nexport const ToastViewport = forwardRef<HTMLDivElement, ToastViewportProps>(function ToastViewport(\n { \"aria-label\": ariaLabel, \"aria-live\": ariaLive, className, ...props },\n ref,\n) {\n return (\n <BaseToast.Viewport\n {...props}\n aria-label={ariaLabel ?? \"Notifications\"}\n aria-live={ariaLive ?? \"polite\"}\n ref={ref}\n className={withRecipeClassName(toastRecipe().viewport, className)}\n data-jaci-component=\"toast-viewport\"\n data-slot=\"toast-viewport\"\n />\n );\n});\n\nexport interface ToastRootProps extends ComponentPropsWithoutRef<typeof BaseToast.Root> {\n /**\n * Visual status. When omitted, the value is inferred from the toast's\n * `type` (`error` maps to `danger`) and otherwise remains neutral.\n */\n tone?: ToastTone;\n}\n\n/**\n * Renders a toast object while preserving Base UI's lifecycle, focus, swipe,\n * and auto-dismiss behavior. It is intentionally composed rather than a\n * global imperative notification API.\n */\nexport const ToastRoot = forwardRef<HTMLDivElement, ToastRootProps>(function ToastRoot(\n { className, toast: toastObject, tone, ...props },\n ref,\n) {\n const resolvedTone = resolveTone(toastObject.type, tone);\n\n return (\n <BaseToast.Root\n {...props}\n ref={ref}\n toast={toastObject}\n className={withRecipeClassName(toastRecipe({ tone: resolvedTone }).root, className)}\n data-jaci-component=\"toast\"\n data-jaci-tone={resolvedTone}\n data-slot=\"toast\"\n />\n );\n});\n\nexport type ToastContentProps = ComponentPropsWithoutRef<typeof BaseToast.Content>;\n\nexport const ToastContent = forwardRef<HTMLDivElement, ToastContentProps>(function ToastContent(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Content\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().content, className)}\n data-slot=\"toast-content\"\n />\n );\n});\n\n/** A layout wrapper for `Toast.Title` and `Toast.Description`. */\nexport type ToastTextProps = ComponentPropsWithoutRef<\"div\">;\n\nexport const ToastText = forwardRef<HTMLDivElement, ToastTextProps>(function ToastText(\n { className, ...props },\n ref,\n) {\n return (\n <div\n {...props}\n ref={ref}\n className={cx(toastRecipe().text, className)}\n data-slot=\"toast-text\"\n />\n );\n});\n\nexport type ToastTitleProps = ComponentPropsWithoutRef<typeof BaseToast.Title>;\n\nexport const ToastTitle = forwardRef<HTMLHeadingElement, ToastTitleProps>(function ToastTitle(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Title\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().title, className)}\n data-slot=\"toast-title\"\n />\n );\n});\n\nexport type ToastDescriptionProps = ComponentPropsWithoutRef<typeof BaseToast.Description>;\n\nexport const ToastDescription = forwardRef<HTMLParagraphElement, ToastDescriptionProps>(\n function ToastDescription({ className, ...props }, ref) {\n return (\n <BaseToast.Description\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().description, className)}\n data-slot=\"toast-description\"\n />\n );\n },\n);\n\nexport type ToastCloseProps = ComponentPropsWithoutRef<typeof BaseToast.Close>;\n\nexport const ToastClose = forwardRef<HTMLButtonElement, ToastCloseProps>(function ToastClose(\n { \"aria-label\": ariaLabel, children, className, ...props },\n ref,\n) {\n const hasVisibleLabel = children != null;\n\n return (\n <BaseToast.Close\n {...props}\n aria-label={ariaLabel ?? (hasVisibleLabel ? undefined : \"Dismiss notification\")}\n ref={ref}\n className={withRecipeClassName(toastRecipe().close, className)}\n data-slot=\"toast-close\"\n >\n {children ?? \"×\"}\n </BaseToast.Close>\n );\n});\n\nexport type ToastActionProps = ComponentPropsWithoutRef<typeof BaseToast.Action>;\n\nexport const ToastAction = forwardRef<HTMLButtonElement, ToastActionProps>(function ToastAction(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Action\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().action, className)}\n data-slot=\"toast-action\"\n />\n );\n});\n\n/** Base UI's portal is preserved for rendering the viewport at document level. */\nexport function ToastPortal(props: ComponentPropsWithoutRef<typeof BaseToast.Portal>) {\n return <BaseToast.Portal {...useThemePortalProps(props)} />;\n}\n\nexport interface ToastComponent {\n Provider: typeof ToastProvider;\n Viewport: typeof ToastViewport;\n Root: typeof ToastRoot;\n Content: typeof ToastContent;\n Text: typeof ToastText;\n Title: typeof ToastTitle;\n Description: typeof ToastDescription;\n Close: typeof ToastClose;\n Action: typeof ToastAction;\n Portal: typeof ToastPortal;\n useToastManager: typeof BaseToast.useToastManager;\n}\n\nexport const Toast: ToastComponent = {\n Provider: ToastProvider,\n Viewport: ToastViewport,\n Root: ToastRoot,\n Content: ToastContent,\n Text: ToastText,\n Title: ToastTitle,\n Description: ToastDescription,\n Close: ToastClose,\n Action: ToastAction,\n Portal: ToastPortal,\n useToastManager: BaseToast.useToastManager,\n};\n"],"mappings":"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"}
@@ -41,7 +41,7 @@ declare const ToastClose: import("react").ForwardRefExoticComponent<Omit<Omit<im
41
41
  type ToastActionProps = ComponentPropsWithoutRef<typeof Toast.Action>;
42
42
  declare const ToastAction: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ToastActionProps, "ref"> & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
43
43
  /** Base UI's portal is preserved for rendering the viewport at document level. */
44
- declare const ToastPortal: typeof Toast.Portal;
44
+ declare function ToastPortal(props: ComponentPropsWithoutRef<typeof Toast.Portal>): import("react").JSX.Element;
45
45
  interface ToastComponent {
46
46
  Provider: typeof ToastProvider;
47
47
  Viewport: typeof ToastViewport;
@@ -41,7 +41,7 @@ declare const ToastClose: import("react").ForwardRefExoticComponent<Omit<Omit<im
41
41
  type ToastActionProps = ComponentPropsWithoutRef<typeof Toast.Action>;
42
42
  declare const ToastAction: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").ToastActionProps, "ref"> & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
43
43
  /** Base UI's portal is preserved for rendering the viewport at document level. */
44
- declare const ToastPortal: typeof Toast.Portal;
44
+ declare function ToastPortal(props: ComponentPropsWithoutRef<typeof Toast.Portal>): import("react").JSX.Element;
45
45
  interface ToastComponent {
46
46
  Provider: typeof ToastProvider;
47
47
  Viewport: typeof ToastViewport;
@@ -2,6 +2,7 @@
2
2
  import { cx } from "../../styled-system/css/cx.js";
3
3
  import { withRecipeClassName } from "../base-ui.js";
4
4
  import { toast } from "../../styled-system/recipes/toast.js";
5
+ import { useThemePortalProps } from "../../theme/theme-scope.js";
5
6
  import { forwardRef } from "react";
6
7
  import { jsx } from "react/jsx-runtime";
7
8
  import { Toast } from "@base-ui/react/toast";
@@ -107,7 +108,9 @@ const ToastAction = forwardRef(function ToastAction({ className, ...props }, ref
107
108
  });
108
109
  });
109
110
  /** Base UI's portal is preserved for rendering the viewport at document level. */
110
- const ToastPortal = Toast.Portal;
111
+ function ToastPortal(props) {
112
+ return /* @__PURE__ */ jsx(Toast.Portal, { ...useThemePortalProps(props) });
113
+ }
111
114
  const Toast$1 = {
112
115
  Provider: ToastProvider,
113
116
  Viewport: ToastViewport,
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","names":["BaseToast","toastRecipe","Toast"],"sources":["../../../src/components/toast/toast.tsx"],"sourcesContent":["\"use client\";\n\nimport { Toast as BaseToast } from \"@base-ui/react/toast\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { toast as toastRecipe } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\nexport type ToastTone = \"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\";\n\nconst toneByToastType: Record<string, ToastTone> = {\n danger: \"danger\",\n error: \"danger\",\n info: \"info\",\n success: \"success\",\n warning: \"warning\",\n};\n\nfunction resolveTone(type: string | undefined, tone: ToastTone | undefined): ToastTone {\n return tone ?? (type === undefined ? \"neutral\" : (toneByToastType[type] ?? \"neutral\"));\n}\n\nexport type ToastProviderProps = ComponentPropsWithoutRef<typeof BaseToast.Provider>;\n\n/**\n * Creates an isolated, declarative toast region. Configure `timeout` and\n * `limit` here; use `Toast.Root` to render each toast from local state or\n * `Toast.useToastManager()`.\n */\nexport function ToastProvider(props: ToastProviderProps) {\n return <BaseToast.Provider {...props} />;\n}\n\nexport type ToastViewportProps = ComponentPropsWithoutRef<typeof BaseToast.Viewport>;\n\n/**\n * A bottom-centred notification region.\n */\nexport const ToastViewport = forwardRef<HTMLDivElement, ToastViewportProps>(function ToastViewport(\n { \"aria-label\": ariaLabel, \"aria-live\": ariaLive, className, ...props },\n ref,\n) {\n return (\n <BaseToast.Viewport\n {...props}\n aria-label={ariaLabel ?? \"Notifications\"}\n aria-live={ariaLive ?? \"polite\"}\n ref={ref}\n className={withRecipeClassName(toastRecipe().viewport, className)}\n data-jaci-component=\"toast-viewport\"\n data-slot=\"toast-viewport\"\n />\n );\n});\n\nexport interface ToastRootProps extends ComponentPropsWithoutRef<typeof BaseToast.Root> {\n /**\n * Visual status. When omitted, the value is inferred from the toast's\n * `type` (`error` maps to `danger`) and otherwise remains neutral.\n */\n tone?: ToastTone;\n}\n\n/**\n * Renders a toast object while preserving Base UI's lifecycle, focus, swipe,\n * and auto-dismiss behavior. It is intentionally composed rather than a\n * global imperative notification API.\n */\nexport const ToastRoot = forwardRef<HTMLDivElement, ToastRootProps>(function ToastRoot(\n { className, toast: toastObject, tone, ...props },\n ref,\n) {\n const resolvedTone = resolveTone(toastObject.type, tone);\n\n return (\n <BaseToast.Root\n {...props}\n ref={ref}\n toast={toastObject}\n className={withRecipeClassName(toastRecipe({ tone: resolvedTone }).root, className)}\n data-jaci-component=\"toast\"\n data-jaci-tone={resolvedTone}\n data-slot=\"toast\"\n />\n );\n});\n\nexport type ToastContentProps = ComponentPropsWithoutRef<typeof BaseToast.Content>;\n\nexport const ToastContent = forwardRef<HTMLDivElement, ToastContentProps>(function ToastContent(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Content\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().content, className)}\n data-slot=\"toast-content\"\n />\n );\n});\n\n/** A layout wrapper for `Toast.Title` and `Toast.Description`. */\nexport type ToastTextProps = ComponentPropsWithoutRef<\"div\">;\n\nexport const ToastText = forwardRef<HTMLDivElement, ToastTextProps>(function ToastText(\n { className, ...props },\n ref,\n) {\n return (\n <div\n {...props}\n ref={ref}\n className={cx(toastRecipe().text, className)}\n data-slot=\"toast-text\"\n />\n );\n});\n\nexport type ToastTitleProps = ComponentPropsWithoutRef<typeof BaseToast.Title>;\n\nexport const ToastTitle = forwardRef<HTMLHeadingElement, ToastTitleProps>(function ToastTitle(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Title\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().title, className)}\n data-slot=\"toast-title\"\n />\n );\n});\n\nexport type ToastDescriptionProps = ComponentPropsWithoutRef<typeof BaseToast.Description>;\n\nexport const ToastDescription = forwardRef<HTMLParagraphElement, ToastDescriptionProps>(\n function ToastDescription({ className, ...props }, ref) {\n return (\n <BaseToast.Description\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().description, className)}\n data-slot=\"toast-description\"\n />\n );\n },\n);\n\nexport type ToastCloseProps = ComponentPropsWithoutRef<typeof BaseToast.Close>;\n\nexport const ToastClose = forwardRef<HTMLButtonElement, ToastCloseProps>(function ToastClose(\n { \"aria-label\": ariaLabel, children, className, ...props },\n ref,\n) {\n const hasVisibleLabel = children != null;\n\n return (\n <BaseToast.Close\n {...props}\n aria-label={ariaLabel ?? (hasVisibleLabel ? undefined : \"Dismiss notification\")}\n ref={ref}\n className={withRecipeClassName(toastRecipe().close, className)}\n data-slot=\"toast-close\"\n >\n {children ?? \"×\"}\n </BaseToast.Close>\n );\n});\n\nexport type ToastActionProps = ComponentPropsWithoutRef<typeof BaseToast.Action>;\n\nexport const ToastAction = forwardRef<HTMLButtonElement, ToastActionProps>(function ToastAction(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Action\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().action, className)}\n data-slot=\"toast-action\"\n />\n );\n});\n\n/** Base UI's portal is preserved for rendering the viewport at document level. */\nexport const ToastPortal: typeof BaseToast.Portal = BaseToast.Portal;\n\nexport interface ToastComponent {\n Provider: typeof ToastProvider;\n Viewport: typeof ToastViewport;\n Root: typeof ToastRoot;\n Content: typeof ToastContent;\n Text: typeof ToastText;\n Title: typeof ToastTitle;\n Description: typeof ToastDescription;\n Close: typeof ToastClose;\n Action: typeof ToastAction;\n Portal: typeof ToastPortal;\n useToastManager: typeof BaseToast.useToastManager;\n}\n\nexport const Toast: ToastComponent = {\n Provider: ToastProvider,\n Viewport: ToastViewport,\n Root: ToastRoot,\n Content: ToastContent,\n Text: ToastText,\n Title: ToastTitle,\n Description: ToastDescription,\n Close: ToastClose,\n Action: ToastAction,\n Portal: ToastPortal,\n useToastManager: BaseToast.useToastManager,\n};\n"],"mappings":";;;;;;;;AAYA,MAAM,kBAA6C;CACjD,QAAQ;CACR,OAAO;CACP,MAAM;CACN,SAAS;CACT,SAAS;AACX;AAEA,SAAS,YAAY,MAA0B,MAAwC;CACrF,OAAO,SAAS,SAAS,KAAA,IAAY,YAAa,gBAAgB,SAAS;AAC7E;;;;;;AASA,SAAgB,cAAc,OAA2B;CACvD,OAAO,oBAACA,MAAU,UAAX,EAAoB,GAAI,MAAQ,CAAA;AACzC;;;;AAOA,MAAa,gBAAgB,WAA+C,SAAS,cACnF,EAAE,cAAc,WAAW,aAAa,UAAU,WAAW,GAAG,SAChE,KACA;CACA,OACE,oBAACA,MAAU,UAAX;EACE,GAAI;EACJ,cAAY,aAAa;EACzB,aAAW,YAAY;EAClB;EACL,WAAW,oBAAoBC,MAAY,CAAC,CAAC,UAAU,SAAS;EAChE,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;;;;;;AAeD,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,WAAW,OAAO,aAAa,MAAM,GAAG,SAC1C,KACA;CACA,MAAM,eAAe,YAAY,YAAY,MAAM,IAAI;CAEvD,OACE,oBAACD,MAAU,MAAX;EACE,GAAI;EACC;EACL,OAAO;EACP,WAAW,oBAAoBC,MAAY,EAAE,MAAM,aAAa,CAAC,CAAC,CAAC,MAAM,SAAS;EAClF,uBAAoB;EACpB,kBAAgB;EAChB,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACD,MAAU,SAAX;EACE,GAAI;EACC;EACL,WAAW,oBAAoBC,MAAY,CAAC,CAAC,SAAS,SAAS;EAC/D,aAAU;CACX,CAAA;AAEL,CAAC;AAKD,MAAa,YAAY,WAA2C,SAAS,UAC3E,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAAC,OAAD;EACE,GAAI;EACC;EACL,WAAW,GAAGA,MAAY,CAAC,CAAC,MAAM,SAAS;EAC3C,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,aAAa,WAAgD,SAAS,WACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACD,MAAU,OAAX;EACE,GAAI;EACC;EACL,WAAW,oBAAoBC,MAAY,CAAC,CAAC,OAAO,SAAS;EAC7D,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,mBAAmB,WAC9B,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAS,KAAK;CACtD,OACE,oBAACD,MAAU,aAAX;EACE,GAAI;EACC;EACL,WAAW,oBAAoBC,MAAY,CAAC,CAAC,aAAa,SAAS;EACnE,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,aAAa,WAA+C,SAAS,WAChF,EAAE,cAAc,WAAW,UAAU,WAAW,GAAG,SACnD,KACA;CACA,MAAM,kBAAkB,YAAY;CAEpC,OACE,oBAACD,MAAU,OAAX;EACE,GAAI;EACJ,cAAY,cAAc,kBAAkB,KAAA,IAAY;EACnD;EACL,WAAW,oBAAoBC,MAAY,CAAC,CAAC,OAAO,SAAS;EAC7D,aAAU;YAET,YAAY;CACE,CAAA;AAErB,CAAC;AAID,MAAa,cAAc,WAAgD,SAAS,YAClF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACD,MAAU,QAAX;EACE,GAAI;EACC;EACL,WAAW,oBAAoBC,MAAY,CAAC,CAAC,QAAQ,SAAS;EAC9D,aAAU;CACX,CAAA;AAEL,CAAC;;AAGD,MAAa,cAAuCD,MAAU;AAgB9D,MAAaE,UAAwB;CACnC,UAAU;CACV,UAAU;CACV,MAAM;CACN,SAAS;CACT,MAAM;CACN,OAAO;CACP,aAAa;CACb,OAAO;CACP,QAAQ;CACR,QAAQ;CACR,iBAAiBF,MAAU;AAC7B"}
1
+ {"version":3,"file":"toast.js","names":["BaseToast","toastRecipe","Toast"],"sources":["../../../src/components/toast/toast.tsx"],"sourcesContent":["\"use client\";\n\nimport { Toast as BaseToast } from \"@base-ui/react/toast\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { toast as toastRecipe } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\nexport type ToastTone = \"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\";\n\nconst toneByToastType: Record<string, ToastTone> = {\n danger: \"danger\",\n error: \"danger\",\n info: \"info\",\n success: \"success\",\n warning: \"warning\",\n};\n\nfunction resolveTone(type: string | undefined, tone: ToastTone | undefined): ToastTone {\n return tone ?? (type === undefined ? \"neutral\" : (toneByToastType[type] ?? \"neutral\"));\n}\n\nexport type ToastProviderProps = ComponentPropsWithoutRef<typeof BaseToast.Provider>;\n\n/**\n * Creates an isolated, declarative toast region. Configure `timeout` and\n * `limit` here; use `Toast.Root` to render each toast from local state or\n * `Toast.useToastManager()`.\n */\nexport function ToastProvider(props: ToastProviderProps) {\n return <BaseToast.Provider {...props} />;\n}\n\nexport type ToastViewportProps = ComponentPropsWithoutRef<typeof BaseToast.Viewport>;\n\n/**\n * A bottom-centred notification region.\n */\nexport const ToastViewport = forwardRef<HTMLDivElement, ToastViewportProps>(function ToastViewport(\n { \"aria-label\": ariaLabel, \"aria-live\": ariaLive, className, ...props },\n ref,\n) {\n return (\n <BaseToast.Viewport\n {...props}\n aria-label={ariaLabel ?? \"Notifications\"}\n aria-live={ariaLive ?? \"polite\"}\n ref={ref}\n className={withRecipeClassName(toastRecipe().viewport, className)}\n data-jaci-component=\"toast-viewport\"\n data-slot=\"toast-viewport\"\n />\n );\n});\n\nexport interface ToastRootProps extends ComponentPropsWithoutRef<typeof BaseToast.Root> {\n /**\n * Visual status. When omitted, the value is inferred from the toast's\n * `type` (`error` maps to `danger`) and otherwise remains neutral.\n */\n tone?: ToastTone;\n}\n\n/**\n * Renders a toast object while preserving Base UI's lifecycle, focus, swipe,\n * and auto-dismiss behavior. It is intentionally composed rather than a\n * global imperative notification API.\n */\nexport const ToastRoot = forwardRef<HTMLDivElement, ToastRootProps>(function ToastRoot(\n { className, toast: toastObject, tone, ...props },\n ref,\n) {\n const resolvedTone = resolveTone(toastObject.type, tone);\n\n return (\n <BaseToast.Root\n {...props}\n ref={ref}\n toast={toastObject}\n className={withRecipeClassName(toastRecipe({ tone: resolvedTone }).root, className)}\n data-jaci-component=\"toast\"\n data-jaci-tone={resolvedTone}\n data-slot=\"toast\"\n />\n );\n});\n\nexport type ToastContentProps = ComponentPropsWithoutRef<typeof BaseToast.Content>;\n\nexport const ToastContent = forwardRef<HTMLDivElement, ToastContentProps>(function ToastContent(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Content\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().content, className)}\n data-slot=\"toast-content\"\n />\n );\n});\n\n/** A layout wrapper for `Toast.Title` and `Toast.Description`. */\nexport type ToastTextProps = ComponentPropsWithoutRef<\"div\">;\n\nexport const ToastText = forwardRef<HTMLDivElement, ToastTextProps>(function ToastText(\n { className, ...props },\n ref,\n) {\n return (\n <div\n {...props}\n ref={ref}\n className={cx(toastRecipe().text, className)}\n data-slot=\"toast-text\"\n />\n );\n});\n\nexport type ToastTitleProps = ComponentPropsWithoutRef<typeof BaseToast.Title>;\n\nexport const ToastTitle = forwardRef<HTMLHeadingElement, ToastTitleProps>(function ToastTitle(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Title\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().title, className)}\n data-slot=\"toast-title\"\n />\n );\n});\n\nexport type ToastDescriptionProps = ComponentPropsWithoutRef<typeof BaseToast.Description>;\n\nexport const ToastDescription = forwardRef<HTMLParagraphElement, ToastDescriptionProps>(\n function ToastDescription({ className, ...props }, ref) {\n return (\n <BaseToast.Description\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().description, className)}\n data-slot=\"toast-description\"\n />\n );\n },\n);\n\nexport type ToastCloseProps = ComponentPropsWithoutRef<typeof BaseToast.Close>;\n\nexport const ToastClose = forwardRef<HTMLButtonElement, ToastCloseProps>(function ToastClose(\n { \"aria-label\": ariaLabel, children, className, ...props },\n ref,\n) {\n const hasVisibleLabel = children != null;\n\n return (\n <BaseToast.Close\n {...props}\n aria-label={ariaLabel ?? (hasVisibleLabel ? undefined : \"Dismiss notification\")}\n ref={ref}\n className={withRecipeClassName(toastRecipe().close, className)}\n data-slot=\"toast-close\"\n >\n {children ?? \"×\"}\n </BaseToast.Close>\n );\n});\n\nexport type ToastActionProps = ComponentPropsWithoutRef<typeof BaseToast.Action>;\n\nexport const ToastAction = forwardRef<HTMLButtonElement, ToastActionProps>(function ToastAction(\n { className, ...props },\n ref,\n) {\n return (\n <BaseToast.Action\n {...props}\n ref={ref}\n className={withRecipeClassName(toastRecipe().action, className)}\n data-slot=\"toast-action\"\n />\n );\n});\n\n/** Base UI's portal is preserved for rendering the viewport at document level. */\nexport function ToastPortal(props: ComponentPropsWithoutRef<typeof BaseToast.Portal>) {\n return <BaseToast.Portal {...useThemePortalProps(props)} />;\n}\n\nexport interface ToastComponent {\n Provider: typeof ToastProvider;\n Viewport: typeof ToastViewport;\n Root: typeof ToastRoot;\n Content: typeof ToastContent;\n Text: typeof ToastText;\n Title: typeof ToastTitle;\n Description: typeof ToastDescription;\n Close: typeof ToastClose;\n Action: typeof ToastAction;\n Portal: typeof ToastPortal;\n useToastManager: typeof BaseToast.useToastManager;\n}\n\nexport const Toast: ToastComponent = {\n Provider: ToastProvider,\n Viewport: ToastViewport,\n Root: ToastRoot,\n Content: ToastContent,\n Text: ToastText,\n Title: ToastTitle,\n Description: ToastDescription,\n Close: ToastClose,\n Action: ToastAction,\n Portal: ToastPortal,\n useToastManager: BaseToast.useToastManager,\n};\n"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  const require_base_ui = require("../base-ui.cjs");
3
3
  const require_tooltip = require("../../styled-system/recipes/tooltip.cjs");
4
+ const require_theme_scope = require("../../theme/theme-scope.cjs");
4
5
  let react = require("react");
5
6
  let react_jsx_runtime = require("react/jsx-runtime");
6
7
  let _base_ui_react_tooltip = require("@base-ui/react/tooltip");
@@ -18,7 +19,9 @@ const TooltipTrigger = (0, react.forwardRef)(function TooltipTrigger({ className
18
19
  });
19
20
  });
20
21
  /** Preserves Base UI's optional portal container and mount controls. */
21
- const TooltipPortal = _base_ui_react_tooltip.Tooltip.Portal;
22
+ function TooltipPortal(props) {
23
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_tooltip.Tooltip.Portal, { ...require_theme_scope.useThemePortalProps(props) });
24
+ }
22
25
  const TooltipPositioner = (0, react.forwardRef)(function TooltipPositioner({ className, ...props }, ref) {
23
26
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_tooltip.Tooltip.Positioner, {
24
27
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.cjs","names":["BaseTooltip","withRecipeClassName","tooltip"],"sources":["../../../src/components/tooltip/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport { Tooltip as BaseTooltip } from \"@base-ui/react/tooltip\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { TooltipRoot as BaseTooltipRoot } from \"@base-ui/react/tooltip\";\n\nimport { tooltip } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\n/** Preserves Base UI's controlled `open` API and uncontrolled `defaultOpen` API. */\nexport type TooltipRootProps<Payload = unknown> = BaseTooltipRoot.Props<Payload>;\n\nexport function TooltipRoot<Payload = unknown>(props: TooltipRootProps<Payload>) {\n return <BaseTooltip.Root {...props} />;\n}\n\nexport type TooltipTriggerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Trigger>;\n\nexport const TooltipTrigger = forwardRef<HTMLButtonElement, TooltipTriggerProps>(\n function TooltipTrigger({ className, ...props }, ref) {\n return (\n <BaseTooltip.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().trigger, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-trigger\"\n />\n );\n },\n);\n\n/** Preserves Base UI's optional portal container and mount controls. */\nexport const TooltipPortal: typeof BaseTooltip.Portal = BaseTooltip.Portal;\n\nexport type TooltipPositionerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Positioner>;\n\nexport const TooltipPositioner = forwardRef<HTMLDivElement, TooltipPositionerProps>(\n function TooltipPositioner({ className, ...props }, ref) {\n return (\n <BaseTooltip.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().positioner, className)}\n data-slot=\"tooltip-positioner\"\n />\n );\n },\n);\n\nexport type TooltipPopupProps = ComponentPropsWithoutRef<typeof BaseTooltip.Popup>;\n\nexport const TooltipPopup = forwardRef<HTMLDivElement, TooltipPopupProps>(function TooltipPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().popup, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-popup\"\n />\n );\n});\n\nexport type TooltipArrowProps = ComponentPropsWithoutRef<typeof BaseTooltip.Arrow>;\n\nexport const TooltipArrow = forwardRef<HTMLDivElement, TooltipArrowProps>(function TooltipArrow(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Arrow\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().arrow, className)}\n data-slot=\"tooltip-arrow\"\n />\n );\n});\n\nexport const Tooltip = {\n Root: TooltipRoot,\n Trigger: TooltipTrigger,\n Portal: TooltipPortal,\n Positioner: TooltipPositioner,\n Popup: TooltipPopup,\n Arrow: TooltipArrow,\n createHandle: BaseTooltip.createHandle,\n};\n"],"mappings":";;;;;;;AAaA,SAAgB,YAA+B,OAAkC;CAC/E,OAAO,iBAAA,GAAA,kBAAA,IAAA,CAACA,uBAAAA,QAAY,MAAb,EAAkB,GAAI,MAAQ,CAAA;AACvC;AAIA,MAAa,kBAAA,GAAA,MAAA,WAAA,CACX,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACA,uBAAAA,QAAY,SAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,SAAS,SAAS;EAC3D,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CACF;;AAGA,MAAa,gBAA2CF,uBAAAA,QAAY;AAIpE,MAAa,qBAAA,GAAA,MAAA,WAAA,CACX,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAS,KAAK;CACvD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACA,uBAAAA,QAAY,YAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,YAAY,SAAS;EAC9D,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,gBAAA,GAAA,MAAA,WAAA,CAA6D,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACF,uBAAAA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,gBAAA,GAAA,MAAA,WAAA,CAA6D,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACF,uBAAAA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,aAAU;CACX,CAAA;AAEL,CAAC;AAED,MAAa,UAAU;CACrB,MAAM;CACN,SAAS;CACT,QAAQ;CACR,YAAY;CACZ,OAAO;CACP,OAAO;CACP,cAAcF,uBAAAA,QAAY;AAC5B"}
1
+ {"version":3,"file":"tooltip.cjs","names":["BaseTooltip","withRecipeClassName","tooltip","useThemePortalProps"],"sources":["../../../src/components/tooltip/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport { Tooltip as BaseTooltip } from \"@base-ui/react/tooltip\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { TooltipRoot as BaseTooltipRoot } from \"@base-ui/react/tooltip\";\n\nimport { tooltip } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\n/** Preserves Base UI's controlled `open` API and uncontrolled `defaultOpen` API. */\nexport type TooltipRootProps<Payload = unknown> = BaseTooltipRoot.Props<Payload>;\n\nexport function TooltipRoot<Payload = unknown>(props: TooltipRootProps<Payload>) {\n return <BaseTooltip.Root {...props} />;\n}\n\nexport type TooltipTriggerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Trigger>;\n\nexport const TooltipTrigger = forwardRef<HTMLButtonElement, TooltipTriggerProps>(\n function TooltipTrigger({ className, ...props }, ref) {\n return (\n <BaseTooltip.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().trigger, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-trigger\"\n />\n );\n },\n);\n\n/** Preserves Base UI's optional portal container and mount controls. */\nexport function TooltipPortal(props: ComponentPropsWithoutRef<typeof BaseTooltip.Portal>) {\n return <BaseTooltip.Portal {...useThemePortalProps(props)} />;\n}\n\nexport type TooltipPositionerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Positioner>;\n\nexport const TooltipPositioner = forwardRef<HTMLDivElement, TooltipPositionerProps>(\n function TooltipPositioner({ className, ...props }, ref) {\n return (\n <BaseTooltip.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().positioner, className)}\n data-slot=\"tooltip-positioner\"\n />\n );\n },\n);\n\nexport type TooltipPopupProps = ComponentPropsWithoutRef<typeof BaseTooltip.Popup>;\n\nexport const TooltipPopup = forwardRef<HTMLDivElement, TooltipPopupProps>(function TooltipPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().popup, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-popup\"\n />\n );\n});\n\nexport type TooltipArrowProps = ComponentPropsWithoutRef<typeof BaseTooltip.Arrow>;\n\nexport const TooltipArrow = forwardRef<HTMLDivElement, TooltipArrowProps>(function TooltipArrow(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Arrow\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().arrow, className)}\n data-slot=\"tooltip-arrow\"\n />\n );\n});\n\nexport const Tooltip = {\n Root: TooltipRoot,\n Trigger: TooltipTrigger,\n Portal: TooltipPortal,\n Positioner: TooltipPositioner,\n Popup: TooltipPopup,\n Arrow: TooltipArrow,\n createHandle: BaseTooltip.createHandle,\n};\n"],"mappings":";;;;;;;;AAcA,SAAgB,YAA+B,OAAkC;CAC/E,OAAO,iBAAA,GAAA,kBAAA,IAAA,CAACA,uBAAAA,QAAY,MAAb,EAAkB,GAAI,MAAQ,CAAA;AACvC;AAIA,MAAa,kBAAA,GAAA,MAAA,WAAA,CACX,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACA,uBAAAA,QAAY,SAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,SAAS,SAAS;EAC3D,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CACF;;AAGA,SAAgB,cAAc,OAA4D;CACxF,OAAO,iBAAA,GAAA,kBAAA,IAAA,CAACF,uBAAAA,QAAY,QAAb,EAAoB,GAAIG,oBAAAA,oBAAoB,KAAK,EAAI,CAAA;AAC9D;AAIA,MAAa,qBAAA,GAAA,MAAA,WAAA,CACX,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAS,KAAK;CACvD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACH,uBAAAA,QAAY,YAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,YAAY,SAAS;EAC9D,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,gBAAA,GAAA,MAAA,WAAA,CAA6D,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACF,uBAAAA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,gBAAA,GAAA,MAAA,WAAA,CAA6D,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACF,uBAAAA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAWC,gBAAAA,oBAAoBC,gBAAAA,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,aAAU;CACX,CAAA;AAEL,CAAC;AAED,MAAa,UAAU;CACrB,MAAM;CACN,SAAS;CACT,QAAQ;CACR,YAAY;CACZ,OAAO;CACP,OAAO;CACP,cAAcF,uBAAAA,QAAY;AAC5B"}
@@ -7,7 +7,7 @@ declare function TooltipRoot$1<Payload = unknown>(props: TooltipRootProps<Payloa
7
7
  type TooltipTriggerProps = ComponentPropsWithoutRef<typeof Tooltip.Trigger>;
8
8
  declare const TooltipTrigger: import("react").ForwardRefExoticComponent<Omit<Tooltip.Trigger.Props<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
9
9
  /** Preserves Base UI's optional portal container and mount controls. */
10
- declare const TooltipPortal: typeof Tooltip.Portal;
10
+ declare function TooltipPortal(props: ComponentPropsWithoutRef<typeof Tooltip.Portal>): import("react").JSX.Element;
11
11
  type TooltipPositionerProps = ComponentPropsWithoutRef<typeof Tooltip.Positioner>;
12
12
  declare const TooltipPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
13
13
  type TooltipPopupProps = ComponentPropsWithoutRef<typeof Tooltip.Popup>;
@@ -17,7 +17,7 @@ declare const TooltipArrow: import("react").ForwardRefExoticComponent<Omit<Omit<
17
17
  declare const Tooltip$1: {
18
18
  Root: typeof TooltipRoot$1;
19
19
  Trigger: import("react").ForwardRefExoticComponent<Omit<Tooltip.Trigger.Props<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
20
- Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").TooltipPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
20
+ Portal: typeof TooltipPortal;
21
21
  Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
22
22
  Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
23
23
  Arrow: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipArrowProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -7,7 +7,7 @@ declare function TooltipRoot$1<Payload = unknown>(props: TooltipRootProps<Payloa
7
7
  type TooltipTriggerProps = ComponentPropsWithoutRef<typeof Tooltip.Trigger>;
8
8
  declare const TooltipTrigger: import("react").ForwardRefExoticComponent<Omit<Tooltip.Trigger.Props<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
9
9
  /** Preserves Base UI's optional portal container and mount controls. */
10
- declare const TooltipPortal: typeof Tooltip.Portal;
10
+ declare function TooltipPortal(props: ComponentPropsWithoutRef<typeof Tooltip.Portal>): import("react").JSX.Element;
11
11
  type TooltipPositionerProps = ComponentPropsWithoutRef<typeof Tooltip.Positioner>;
12
12
  declare const TooltipPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
13
13
  type TooltipPopupProps = ComponentPropsWithoutRef<typeof Tooltip.Popup>;
@@ -17,7 +17,7 @@ declare const TooltipArrow: import("react").ForwardRefExoticComponent<Omit<Omit<
17
17
  declare const Tooltip$1: {
18
18
  Root: typeof TooltipRoot$1;
19
19
  Trigger: import("react").ForwardRefExoticComponent<Omit<Tooltip.Trigger.Props<unknown> & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
20
- Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").TooltipPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
20
+ Portal: typeof TooltipPortal;
21
21
  Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
22
22
  Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
23
23
  Arrow: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").TooltipArrowProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { withRecipeClassName } from "../base-ui.js";
3
3
  import { tooltip } from "../../styled-system/recipes/tooltip.js";
4
+ import { useThemePortalProps } from "../../theme/theme-scope.js";
4
5
  import { forwardRef } from "react";
5
6
  import { jsx } from "react/jsx-runtime";
6
7
  import { Tooltip } from "@base-ui/react/tooltip";
@@ -18,7 +19,9 @@ const TooltipTrigger = forwardRef(function TooltipTrigger({ className, ...props
18
19
  });
19
20
  });
20
21
  /** Preserves Base UI's optional portal container and mount controls. */
21
- const TooltipPortal = Tooltip.Portal;
22
+ function TooltipPortal(props) {
23
+ return /* @__PURE__ */ jsx(Tooltip.Portal, { ...useThemePortalProps(props) });
24
+ }
22
25
  const TooltipPositioner = forwardRef(function TooltipPositioner({ className, ...props }, ref) {
23
26
  return /* @__PURE__ */ jsx(Tooltip.Positioner, {
24
27
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.js","names":["TooltipRoot","BaseTooltip","Tooltip"],"sources":["../../../src/components/tooltip/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport { Tooltip as BaseTooltip } from \"@base-ui/react/tooltip\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { TooltipRoot as BaseTooltipRoot } from \"@base-ui/react/tooltip\";\n\nimport { tooltip } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\n\n/** Preserves Base UI's controlled `open` API and uncontrolled `defaultOpen` API. */\nexport type TooltipRootProps<Payload = unknown> = BaseTooltipRoot.Props<Payload>;\n\nexport function TooltipRoot<Payload = unknown>(props: TooltipRootProps<Payload>) {\n return <BaseTooltip.Root {...props} />;\n}\n\nexport type TooltipTriggerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Trigger>;\n\nexport const TooltipTrigger = forwardRef<HTMLButtonElement, TooltipTriggerProps>(\n function TooltipTrigger({ className, ...props }, ref) {\n return (\n <BaseTooltip.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().trigger, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-trigger\"\n />\n );\n },\n);\n\n/** Preserves Base UI's optional portal container and mount controls. */\nexport const TooltipPortal: typeof BaseTooltip.Portal = BaseTooltip.Portal;\n\nexport type TooltipPositionerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Positioner>;\n\nexport const TooltipPositioner = forwardRef<HTMLDivElement, TooltipPositionerProps>(\n function TooltipPositioner({ className, ...props }, ref) {\n return (\n <BaseTooltip.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().positioner, className)}\n data-slot=\"tooltip-positioner\"\n />\n );\n },\n);\n\nexport type TooltipPopupProps = ComponentPropsWithoutRef<typeof BaseTooltip.Popup>;\n\nexport const TooltipPopup = forwardRef<HTMLDivElement, TooltipPopupProps>(function TooltipPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().popup, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-popup\"\n />\n );\n});\n\nexport type TooltipArrowProps = ComponentPropsWithoutRef<typeof BaseTooltip.Arrow>;\n\nexport const TooltipArrow = forwardRef<HTMLDivElement, TooltipArrowProps>(function TooltipArrow(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Arrow\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().arrow, className)}\n data-slot=\"tooltip-arrow\"\n />\n );\n});\n\nexport const Tooltip = {\n Root: TooltipRoot,\n Trigger: TooltipTrigger,\n Portal: TooltipPortal,\n Positioner: TooltipPositioner,\n Popup: TooltipPopup,\n Arrow: TooltipArrow,\n createHandle: BaseTooltip.createHandle,\n};\n"],"mappings":";;;;;;;AAaA,SAAgBA,cAA+B,OAAkC;CAC/E,OAAO,oBAACC,QAAY,MAAb,EAAkB,GAAI,MAAQ,CAAA;AACvC;AAIA,MAAa,iBAAiB,WAC5B,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,oBAACA,QAAY,SAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,SAAS,SAAS;EAC3D,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CACF;;AAGA,MAAa,gBAA2CA,QAAY;AAIpE,MAAa,oBAAoB,WAC/B,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAS,KAAK;CACvD,OACE,oBAACA,QAAY,YAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,YAAY,SAAS;EAC9D,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,aAAU;CACX,CAAA;AAEL,CAAC;AAED,MAAaC,YAAU;CACrB,MAAMF;CACN,SAAS;CACT,QAAQ;CACR,YAAY;CACZ,OAAO;CACP,OAAO;CACP,cAAcC,QAAY;AAC5B"}
1
+ {"version":3,"file":"tooltip.js","names":["TooltipRoot","BaseTooltip","Tooltip"],"sources":["../../../src/components/tooltip/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport { Tooltip as BaseTooltip } from \"@base-ui/react/tooltip\";\nimport { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { TooltipRoot as BaseTooltipRoot } from \"@base-ui/react/tooltip\";\n\nimport { tooltip } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { useThemePortalProps } from \"../../theme/theme-scope\";\n\n/** Preserves Base UI's controlled `open` API and uncontrolled `defaultOpen` API. */\nexport type TooltipRootProps<Payload = unknown> = BaseTooltipRoot.Props<Payload>;\n\nexport function TooltipRoot<Payload = unknown>(props: TooltipRootProps<Payload>) {\n return <BaseTooltip.Root {...props} />;\n}\n\nexport type TooltipTriggerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Trigger>;\n\nexport const TooltipTrigger = forwardRef<HTMLButtonElement, TooltipTriggerProps>(\n function TooltipTrigger({ className, ...props }, ref) {\n return (\n <BaseTooltip.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().trigger, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-trigger\"\n />\n );\n },\n);\n\n/** Preserves Base UI's optional portal container and mount controls. */\nexport function TooltipPortal(props: ComponentPropsWithoutRef<typeof BaseTooltip.Portal>) {\n return <BaseTooltip.Portal {...useThemePortalProps(props)} />;\n}\n\nexport type TooltipPositionerProps = ComponentPropsWithoutRef<typeof BaseTooltip.Positioner>;\n\nexport const TooltipPositioner = forwardRef<HTMLDivElement, TooltipPositionerProps>(\n function TooltipPositioner({ className, ...props }, ref) {\n return (\n <BaseTooltip.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().positioner, className)}\n data-slot=\"tooltip-positioner\"\n />\n );\n },\n);\n\nexport type TooltipPopupProps = ComponentPropsWithoutRef<typeof BaseTooltip.Popup>;\n\nexport const TooltipPopup = forwardRef<HTMLDivElement, TooltipPopupProps>(function TooltipPopup(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().popup, className)}\n data-jaci-component=\"tooltip\"\n data-slot=\"tooltip-popup\"\n />\n );\n});\n\nexport type TooltipArrowProps = ComponentPropsWithoutRef<typeof BaseTooltip.Arrow>;\n\nexport const TooltipArrow = forwardRef<HTMLDivElement, TooltipArrowProps>(function TooltipArrow(\n { className, ...props },\n ref,\n) {\n return (\n <BaseTooltip.Arrow\n {...props}\n ref={ref}\n className={withRecipeClassName(tooltip().arrow, className)}\n data-slot=\"tooltip-arrow\"\n />\n );\n});\n\nexport const Tooltip = {\n Root: TooltipRoot,\n Trigger: TooltipTrigger,\n Portal: TooltipPortal,\n Positioner: TooltipPositioner,\n Popup: TooltipPopup,\n Arrow: TooltipArrow,\n createHandle: BaseTooltip.createHandle,\n};\n"],"mappings":";;;;;;;;AAcA,SAAgBA,cAA+B,OAAkC;CAC/E,OAAO,oBAACC,QAAY,MAAb,EAAkB,GAAI,MAAQ,CAAA;AACvC;AAIA,MAAa,iBAAiB,WAC5B,SAAS,eAAe,EAAE,WAAW,GAAG,SAAS,KAAK;CACpD,OACE,oBAACA,QAAY,SAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,SAAS,SAAS;EAC3D,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CACF;;AAGA,SAAgB,cAAc,OAA4D;CACxF,OAAO,oBAACA,QAAY,QAAb,EAAoB,GAAI,oBAAoB,KAAK,EAAI,CAAA;AAC9D;AAIA,MAAa,oBAAoB,WAC/B,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAS,KAAK;CACvD,OACE,oBAACA,QAAY,YAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,YAAY,SAAS;EAC9D,aAAU;CACX,CAAA;AAEL,CACF;AAIA,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC;AAID,MAAa,eAAe,WAA8C,SAAS,aACjF,EAAE,WAAW,GAAG,SAChB,KACA;CACA,OACE,oBAACA,QAAY,OAAb;EACE,GAAI;EACC;EACL,WAAW,oBAAoB,QAAQ,CAAC,CAAC,OAAO,SAAS;EACzD,aAAU;CACX,CAAA;AAEL,CAAC;AAED,MAAaC,YAAU;CACrB,MAAMF;CACN,SAAS;CACT,QAAQ;CACR,YAAY;CACZ,OAAO;CACP,OAAO;CACP,cAAcC,QAAY;AAC5B"}
@@ -11,13 +11,19 @@ const defaultSizeByElement = {
11
11
  h5: "sm",
12
12
  h6: "xs"
13
13
  };
14
- const Heading = (0, react.forwardRef)(function Heading({ as = "h2", className, size, ...props }, ref) {
14
+ const Heading = (0, react.forwardRef)(function Heading({ as = "h2", className, lineClamp, size, truncate = false, weight, width = "auto", ...props }, ref) {
15
15
  const Component = as;
16
16
  const resolvedSize = size ?? defaultSizeByElement[as];
17
17
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, {
18
18
  ...props,
19
19
  ref,
20
- className: require_cx.cx(require_heading.heading({ size: resolvedSize }), className),
20
+ className: require_cx.cx(require_heading.heading({
21
+ lineClamp: lineClamp ? String(lineClamp) : void 0,
22
+ size: resolvedSize,
23
+ truncate,
24
+ weight,
25
+ width
26
+ }), className),
21
27
  "data-jaci-component": "heading",
22
28
  "data-slot": "heading"
23
29
  });
@@ -1 +1 @@
1
- {"version":3,"file":"heading.cjs","names":["cx","heading"],"sources":["../../../src/components/typography/heading.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef, ElementType, ReactElement, Ref } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { heading } from \"../../styled-system/recipes\";\n\nexport type HeadingSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\nexport type HeadingElement = \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n\nconst defaultSizeByElement: Record<HeadingElement, HeadingSize> = {\n h1: \"2xl\",\n h2: \"xl\",\n h3: \"lg\",\n h4: \"md\",\n h5: \"sm\",\n h6: \"xs\",\n};\n\nexport interface HeadingProps extends Omit<ComponentPropsWithoutRef<\"h2\">, \"color\"> {\n as?: HeadingElement;\n size?: HeadingSize;\n}\n\nexport const Heading = forwardRef<HTMLHeadingElement, HeadingProps>(function Heading(\n { as = \"h2\", className, size, ...props },\n ref,\n) {\n const Component = as as ElementType;\n const resolvedSize = size ?? defaultSizeByElement[as];\n\n return (\n <Component\n {...props}\n ref={ref as Ref<HTMLElement>}\n className={cx(heading({ size: resolvedSize }), className)}\n data-jaci-component=\"heading\"\n data-slot=\"heading\"\n />\n ) as ReactElement;\n});\n"],"mappings":";;;;;AASA,MAAM,uBAA4D;CAChE,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;AACN;AAOA,MAAa,WAAA,GAAA,MAAA,WAAA,CAAuD,SAAS,QAC3E,EAAE,KAAK,MAAM,WAAW,MAAM,GAAG,SACjC,KACA;CACA,MAAM,YAAY;CAClB,MAAM,eAAe,QAAQ,qBAAqB;CAElD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,WAAD;EACE,GAAI;EACC;EACL,WAAWA,WAAAA,GAAGC,gBAAAA,QAAQ,EAAE,MAAM,aAAa,CAAC,GAAG,SAAS;EACxD,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC"}
1
+ {"version":3,"file":"heading.cjs","names":["cx","heading"],"sources":["../../../src/components/typography/heading.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef, ElementType, ReactElement, Ref } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { heading } from \"../../styled-system/recipes\";\n\nexport type HeadingSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\nexport type HeadingElement = \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\nexport type TypographyWeight = \"normal\" | \"medium\" | \"semibold\" | \"bold\";\nexport type TypographyWidth = \"auto\" | \"fit\" | \"full\";\nexport type TypographyLineClamp = 1 | 2 | 3 | 4;\n\nconst defaultSizeByElement: Record<HeadingElement, HeadingSize> = {\n h1: \"2xl\",\n h2: \"xl\",\n h3: \"lg\",\n h4: \"md\",\n h5: \"sm\",\n h6: \"xs\",\n};\n\nexport interface HeadingProps extends Omit<ComponentPropsWithoutRef<\"h2\">, \"color\"> {\n as?: HeadingElement;\n size?: HeadingSize;\n weight?: TypographyWeight;\n truncate?: boolean;\n lineClamp?: TypographyLineClamp;\n width?: TypographyWidth;\n}\n\nexport const Heading = forwardRef<HTMLHeadingElement, HeadingProps>(function Heading(\n { as = \"h2\", className, lineClamp, size, truncate = false, weight, width = \"auto\", ...props },\n ref,\n) {\n const Component = as as ElementType;\n const resolvedSize = size ?? defaultSizeByElement[as];\n\n return (\n <Component\n {...props}\n ref={ref as Ref<HTMLElement>}\n className={cx(\n heading({\n lineClamp: lineClamp ? (String(lineClamp) as \"1\" | \"2\" | \"3\" | \"4\") : undefined,\n size: resolvedSize,\n truncate,\n weight,\n width,\n }),\n className,\n )}\n data-jaci-component=\"heading\"\n data-slot=\"heading\"\n />\n ) as ReactElement;\n});\n"],"mappings":";;;;;AAYA,MAAM,uBAA4D;CAChE,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;AACN;AAWA,MAAa,WAAA,GAAA,MAAA,WAAA,CAAuD,SAAS,QAC3E,EAAE,KAAK,MAAM,WAAW,WAAW,MAAM,WAAW,OAAO,QAAQ,QAAQ,QAAQ,GAAG,SACtF,KACA;CACA,MAAM,YAAY;CAClB,MAAM,eAAe,QAAQ,qBAAqB;CAElD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,WAAD;EACE,GAAI;EACC;EACL,WAAWA,WAAAA,GACTC,gBAAAA,QAAQ;GACN,WAAW,YAAa,OAAO,SAAS,IAA8B,KAAA;GACtE,MAAM;GACN;GACA;GACA;EACF,CAAC,GACD,SACF;EACA,uBAAoB;EACpB,aAAU;CACX,CAAA;AAEL,CAAC"}
@@ -2,11 +2,18 @@ import { ComponentPropsWithoutRef } from "react";
2
2
  //#region src/components/typography/heading.d.ts
3
3
  type HeadingSize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
4
4
  type HeadingElement = "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
5
+ type TypographyWeight = "normal" | "medium" | "semibold" | "bold";
6
+ type TypographyWidth = "auto" | "fit" | "full";
7
+ type TypographyLineClamp = 1 | 2 | 3 | 4;
5
8
  interface HeadingProps extends Omit<ComponentPropsWithoutRef<"h2">, "color"> {
6
9
  as?: HeadingElement;
7
10
  size?: HeadingSize;
11
+ weight?: TypographyWeight;
12
+ truncate?: boolean;
13
+ lineClamp?: TypographyLineClamp;
14
+ width?: TypographyWidth;
8
15
  }
9
16
  declare const Heading: import("react").ForwardRefExoticComponent<HeadingProps & import("react").RefAttributes<HTMLHeadingElement>>;
10
17
  //#endregion
11
- export { Heading, HeadingElement, HeadingProps, HeadingSize };
18
+ export { Heading, HeadingElement, HeadingProps, HeadingSize, TypographyLineClamp, TypographyWeight, TypographyWidth };
12
19
  //# sourceMappingURL=heading.d.cts.map