neba 1.5.0 → 1.7.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 (438) hide show
  1. package/README.md +36 -5
  2. package/dist/components/accordion/Accordion.d.ts +1 -1
  3. package/dist/components/accordion/Accordion.js +1 -1
  4. package/dist/components/accordion/index.d.ts +2 -2
  5. package/dist/components/accordion/index.js +1 -1
  6. package/dist/components/alert/Alert.d.ts +1 -1
  7. package/dist/components/alert/Alert.js +1 -1
  8. package/dist/components/alert/index.d.ts +2 -2
  9. package/dist/components/alert/index.js +1 -1
  10. package/dist/components/animate-appear/AnimateAppear.d.ts +1 -1
  11. package/dist/components/animate-appear/AnimateAppear.js +1 -1
  12. package/dist/components/animate-appear/index.d.ts +2 -2
  13. package/dist/components/animate-appear/index.js +1 -1
  14. package/dist/components/animate-blink/AnimateBlink.d.ts +1 -1
  15. package/dist/components/animate-blink/AnimateBlink.js +1 -1
  16. package/dist/components/animate-blink/index.d.ts +2 -2
  17. package/dist/components/animate-blink/index.js +1 -1
  18. package/dist/components/animate-fade/AnimateFade.d.ts +1 -1
  19. package/dist/components/animate-fade/AnimateFade.js +1 -1
  20. package/dist/components/animate-fade/index.d.ts +2 -2
  21. package/dist/components/animate-fade/index.js +1 -1
  22. package/dist/components/animate-grow/AnimateGrow.d.ts +1 -1
  23. package/dist/components/animate-grow/AnimateGrow.js +1 -1
  24. package/dist/components/animate-grow/index.d.ts +2 -2
  25. package/dist/components/animate-grow/index.js +1 -1
  26. package/dist/components/animate-headline/AnimateHeadline.d.ts +1 -1
  27. package/dist/components/animate-headline/AnimateHeadline.js +1 -1
  28. package/dist/components/animate-headline/index.d.ts +2 -2
  29. package/dist/components/animate-headline/index.js +1 -1
  30. package/dist/components/animate-lighting/AnimateLighting.d.ts +1 -1
  31. package/dist/components/animate-lighting/AnimateLighting.js +1 -1
  32. package/dist/components/animate-lighting/index.d.ts +2 -2
  33. package/dist/components/animate-lighting/index.js +1 -1
  34. package/dist/components/animate-marquee/AnimateMarquee.d.ts +1 -1
  35. package/dist/components/animate-marquee/AnimateMarquee.js +1 -1
  36. package/dist/components/animate-marquee/index.d.ts +2 -2
  37. package/dist/components/animate-marquee/index.js +1 -1
  38. package/dist/components/animate-rotate/AnimateRotate.d.ts +1 -1
  39. package/dist/components/animate-rotate/AnimateRotate.js +1 -1
  40. package/dist/components/animate-rotate/index.d.ts +2 -2
  41. package/dist/components/animate-rotate/index.js +1 -1
  42. package/dist/components/animate-slide/AnimateSlide.d.ts +1 -1
  43. package/dist/components/animate-slide/AnimateSlide.js +1 -1
  44. package/dist/components/animate-slide/index.d.ts +2 -2
  45. package/dist/components/animate-slide/index.js +1 -1
  46. package/dist/components/animate-typing/AnimateTyping.d.ts +1 -1
  47. package/dist/components/animate-typing/AnimateTyping.js +1 -1
  48. package/dist/components/animate-typing/index.d.ts +2 -2
  49. package/dist/components/animate-typing/index.js +1 -1
  50. package/dist/components/animate-zoom/AnimateZoom.d.ts +1 -1
  51. package/dist/components/animate-zoom/AnimateZoom.js +1 -1
  52. package/dist/components/animate-zoom/index.d.ts +2 -2
  53. package/dist/components/animate-zoom/index.js +1 -1
  54. package/dist/components/area-chart/AreaChart.d.ts +3 -3
  55. package/dist/components/area-chart/AreaChart.js +1 -1
  56. package/dist/components/area-chart/index.d.ts +2 -2
  57. package/dist/components/area-chart/index.js +1 -1
  58. package/dist/components/aspect-ratio/AspectRatio.d.ts +1 -1
  59. package/dist/components/aspect-ratio/AspectRatio.js +1 -1
  60. package/dist/components/aspect-ratio/index.d.ts +2 -2
  61. package/dist/components/aspect-ratio/index.js +1 -1
  62. package/dist/components/avatar/Avatar.d.ts +1 -1
  63. package/dist/components/avatar/Avatar.js +1 -1
  64. package/dist/components/avatar/index.d.ts +2 -2
  65. package/dist/components/avatar/index.js +1 -1
  66. package/dist/components/badge/Badge.d.ts +1 -1
  67. package/dist/components/badge/Badge.js +1 -1
  68. package/dist/components/badge/index.d.ts +2 -2
  69. package/dist/components/badge/index.js +1 -1
  70. package/dist/components/bar-chart/BarChart.d.ts +2 -2
  71. package/dist/components/bar-chart/BarChart.js +1 -1
  72. package/dist/components/bar-chart/index.d.ts +2 -2
  73. package/dist/components/bar-chart/index.js +1 -1
  74. package/dist/components/blockquote/Blockquote.d.ts +1 -1
  75. package/dist/components/blockquote/Blockquote.js +1 -1
  76. package/dist/components/blockquote/index.d.ts +2 -2
  77. package/dist/components/blockquote/index.js +1 -1
  78. package/dist/components/bottom-navigation/BottomNavigation.d.ts +3 -15
  79. package/dist/components/bottom-navigation/BottomNavigation.js +1 -1
  80. package/dist/components/bottom-navigation/index.d.ts +1 -1
  81. package/dist/components/bottom-navigation/index.js +1 -1
  82. package/dist/components/box/Box.d.ts +1 -1
  83. package/dist/components/box/Box.js +1 -1
  84. package/dist/components/box/index.d.ts +2 -2
  85. package/dist/components/box/index.js +1 -1
  86. package/dist/components/breadcrumb/Breadcrumb.d.ts +1 -1
  87. package/dist/components/breadcrumb/Breadcrumb.js +1 -1
  88. package/dist/components/breadcrumb/index.d.ts +2 -2
  89. package/dist/components/breadcrumb/index.js +1 -1
  90. package/dist/components/button/Button.d.ts +1 -1
  91. package/dist/components/button/Button.js +1 -1
  92. package/dist/components/button/index.d.ts +2 -2
  93. package/dist/components/button/index.js +1 -1
  94. package/dist/components/button-group/ButtonGroup.d.ts +1 -1
  95. package/dist/components/button-group/ButtonGroup.js +1 -1
  96. package/dist/components/button-group/index.d.ts +2 -2
  97. package/dist/components/button-group/index.js +1 -1
  98. package/dist/components/card/Card.d.ts +1 -1
  99. package/dist/components/card/Card.js +1 -1
  100. package/dist/components/card/index.d.ts +2 -2
  101. package/dist/components/card/index.js +1 -1
  102. package/dist/components/carousel/Carousel.d.ts +1 -1
  103. package/dist/components/carousel/Carousel.js +1 -1
  104. package/dist/components/carousel/index.d.ts +2 -2
  105. package/dist/components/carousel/index.js +1 -1
  106. package/dist/components/chat-bubble/ChatBubble.d.ts +1 -1
  107. package/dist/components/chat-bubble/ChatBubble.js +1 -1
  108. package/dist/components/chat-bubble/index.d.ts +2 -2
  109. package/dist/components/chat-bubble/index.js +1 -1
  110. package/dist/components/checkbox/Checkbox.d.ts +1 -1
  111. package/dist/components/checkbox/Checkbox.js +1 -1
  112. package/dist/components/checkbox/index.d.ts +2 -2
  113. package/dist/components/checkbox/index.js +1 -1
  114. package/dist/components/chip/Chip.d.ts +1 -1
  115. package/dist/components/chip/Chip.js +1 -1
  116. package/dist/components/chip/index.d.ts +2 -2
  117. package/dist/components/chip/index.js +1 -1
  118. package/dist/components/collapsible/Collapsible.d.ts +1 -1
  119. package/dist/components/collapsible/Collapsible.js +1 -1
  120. package/dist/components/collapsible/index.d.ts +1 -1
  121. package/dist/components/collapsible/index.js +1 -1
  122. package/dist/components/color-picker/ColorPicker.d.ts +2 -2
  123. package/dist/components/color-picker/ColorPicker.js +1 -1
  124. package/dist/components/color-picker/index.d.ts +2 -2
  125. package/dist/components/color-picker/index.js +1 -1
  126. package/dist/components/combobox/Combobox.d.ts +1 -1
  127. package/dist/components/combobox/Combobox.js +1 -1
  128. package/dist/components/combobox/index.d.ts +2 -2
  129. package/dist/components/combobox/index.js +1 -1
  130. package/dist/components/container/Container.d.ts +1 -1
  131. package/dist/components/container/Container.js +1 -1
  132. package/dist/components/container/index.d.ts +2 -2
  133. package/dist/components/container/index.js +1 -1
  134. package/dist/components/data-table/DataTable.d.ts +1 -1
  135. package/dist/components/data-table/DataTable.js +1 -1
  136. package/dist/components/data-table/index.d.ts +2 -2
  137. package/dist/components/data-table/index.js +1 -1
  138. package/dist/components/date-picker/DatePicker.d.ts +3 -3
  139. package/dist/components/date-picker/DatePicker.js +1 -1
  140. package/dist/components/date-picker/index.d.ts +2 -2
  141. package/dist/components/date-picker/index.js +1 -1
  142. package/dist/components/date-range-picker/DateRangePicker.d.ts +3 -3
  143. package/dist/components/date-range-picker/DateRangePicker.js +1 -1
  144. package/dist/components/date-range-picker/index.d.ts +2 -2
  145. package/dist/components/date-range-picker/index.js +1 -1
  146. package/dist/components/date-time-picker/DateTimePicker.d.ts +4 -4
  147. package/dist/components/date-time-picker/DateTimePicker.js +1 -1
  148. package/dist/components/date-time-picker/index.d.ts +2 -2
  149. package/dist/components/date-time-picker/index.js +1 -1
  150. package/dist/components/dialog/Dialog.d.ts +1 -1
  151. package/dist/components/dialog/Dialog.js +1 -1
  152. package/dist/components/dialog/index.d.ts +2 -2
  153. package/dist/components/dialog/index.js +1 -1
  154. package/dist/components/divider/Divider.d.ts +1 -1
  155. package/dist/components/divider/Divider.js +1 -1
  156. package/dist/components/divider/index.d.ts +2 -2
  157. package/dist/components/divider/index.js +1 -1
  158. package/dist/components/drawer/Drawer.d.ts +1 -1
  159. package/dist/components/drawer/Drawer.js +1 -1
  160. package/dist/components/drawer/index.d.ts +2 -2
  161. package/dist/components/drawer/index.js +1 -1
  162. package/dist/components/empty/Empty.d.ts +1 -1
  163. package/dist/components/empty/Empty.js +1 -1
  164. package/dist/components/empty/index.d.ts +2 -2
  165. package/dist/components/empty/index.js +1 -1
  166. package/dist/components/file-picker/FilePicker.d.ts +1 -1
  167. package/dist/components/file-picker/FilePicker.js +1 -1
  168. package/dist/components/file-picker/index.d.ts +2 -2
  169. package/dist/components/file-picker/index.js +1 -1
  170. package/dist/components/floating-action-button/FloatingActionButton.d.ts +1 -1
  171. package/dist/components/floating-action-button/FloatingActionButton.js +1 -1
  172. package/dist/components/floating-action-button/index.d.ts +1 -1
  173. package/dist/components/floating-action-button/index.js +1 -1
  174. package/dist/components/floating-bottom-navigation/FloatingBottomNavigation.d.ts +91 -0
  175. package/dist/components/floating-bottom-navigation/FloatingBottomNavigation.js +1 -0
  176. package/dist/components/floating-bottom-navigation/index.d.ts +2 -0
  177. package/dist/components/floating-bottom-navigation/index.js +1 -0
  178. package/dist/components/grid/Grid.d.ts +1 -1
  179. package/dist/components/grid/Grid.js +1 -1
  180. package/dist/components/grid/index.d.ts +2 -2
  181. package/dist/components/grid/index.js +1 -1
  182. package/dist/components/grid-container/GridContainer.d.ts +1 -1
  183. package/dist/components/grid-container/GridContainer.js +1 -1
  184. package/dist/components/grid-container/index.d.ts +2 -2
  185. package/dist/components/grid-container/index.js +1 -1
  186. package/dist/components/heatmap-chart/HeatmapChart.d.ts +3 -3
  187. package/dist/components/heatmap-chart/HeatmapChart.js +1 -1
  188. package/dist/components/heatmap-chart/index.d.ts +2 -2
  189. package/dist/components/heatmap-chart/index.js +1 -1
  190. package/dist/components/highlight/Highlight.d.ts +2 -2
  191. package/dist/components/highlight/Highlight.js +1 -1
  192. package/dist/components/highlight/index.d.ts +2 -2
  193. package/dist/components/highlight/index.js +1 -1
  194. package/dist/components/icon/Icon.d.ts +1 -1
  195. package/dist/components/icon/Icon.js +1 -1
  196. package/dist/components/icon/index.d.ts +2 -2
  197. package/dist/components/icon/index.js +1 -1
  198. package/dist/components/icon-button/IconButton.d.ts +1 -1
  199. package/dist/components/icon-button/IconButton.js +1 -1
  200. package/dist/components/icon-button/index.d.ts +2 -2
  201. package/dist/components/icon-button/index.js +1 -1
  202. package/dist/components/line-chart/LineChart.d.ts +3 -3
  203. package/dist/components/line-chart/LineChart.js +1 -1
  204. package/dist/components/line-chart/index.d.ts +2 -2
  205. package/dist/components/line-chart/index.js +1 -1
  206. package/dist/components/list/List.d.ts +1 -1
  207. package/dist/components/list/List.js +1 -1
  208. package/dist/components/list/index.d.ts +2 -2
  209. package/dist/components/list/index.js +1 -1
  210. package/dist/components/menu/Menu.d.ts +1 -1
  211. package/dist/components/menu/Menu.js +1 -1
  212. package/dist/components/menu/index.d.ts +2 -2
  213. package/dist/components/menu/index.js +1 -1
  214. package/dist/components/mockup/Mockup.d.ts +3 -3
  215. package/dist/components/mockup/Mockup.js +1 -1
  216. package/dist/components/mockup/index.d.ts +2 -2
  217. package/dist/components/mockup/index.js +1 -1
  218. package/dist/components/number-field/NumberField.d.ts +1 -1
  219. package/dist/components/number-field/NumberField.js +1 -1
  220. package/dist/components/number-field/index.d.ts +2 -2
  221. package/dist/components/number-field/index.js +1 -1
  222. package/dist/components/otp-field/OtpField.d.ts +1 -1
  223. package/dist/components/otp-field/OtpField.js +1 -1
  224. package/dist/components/otp-field/index.d.ts +2 -2
  225. package/dist/components/otp-field/index.js +1 -1
  226. package/dist/components/overlay/Overlay.d.ts +1 -1
  227. package/dist/components/overlay/Overlay.js +1 -1
  228. package/dist/components/overlay/index.d.ts +2 -2
  229. package/dist/components/overlay/index.js +1 -1
  230. package/dist/components/pagination/Pagination.d.ts +1 -1
  231. package/dist/components/pagination/Pagination.js +1 -1
  232. package/dist/components/pagination/index.d.ts +2 -2
  233. package/dist/components/pagination/index.js +1 -1
  234. package/dist/components/panes/Panes.d.ts +1 -1
  235. package/dist/components/panes/Panes.js +1 -1
  236. package/dist/components/panes/index.d.ts +2 -2
  237. package/dist/components/panes/index.js +1 -1
  238. package/dist/components/pie-chart/PieChart.d.ts +2 -2
  239. package/dist/components/pie-chart/PieChart.js +1 -1
  240. package/dist/components/pie-chart/index.d.ts +2 -2
  241. package/dist/components/pie-chart/index.js +1 -1
  242. package/dist/components/pill/Pill.d.ts +1 -1
  243. package/dist/components/pill/Pill.js +1 -1
  244. package/dist/components/pill/index.d.ts +2 -2
  245. package/dist/components/pill/index.js +1 -1
  246. package/dist/components/popover/Popover.d.ts +1 -1
  247. package/dist/components/popover/Popover.js +1 -1
  248. package/dist/components/popover/index.d.ts +2 -2
  249. package/dist/components/popover/index.js +1 -1
  250. package/dist/components/progress-box/ProgressBox.d.ts +2 -2
  251. package/dist/components/progress-box/ProgressBox.js +1 -1
  252. package/dist/components/progress-box/index.d.ts +2 -2
  253. package/dist/components/progress-box/index.js +1 -1
  254. package/dist/components/progress-circular/ProgressCircular.d.ts +2 -2
  255. package/dist/components/progress-circular/ProgressCircular.js +1 -1
  256. package/dist/components/progress-circular/index.d.ts +2 -2
  257. package/dist/components/progress-circular/index.js +1 -1
  258. package/dist/components/progress-linear/ProgressLinear.d.ts +2 -2
  259. package/dist/components/progress-linear/ProgressLinear.js +1 -1
  260. package/dist/components/progress-linear/index.d.ts +2 -2
  261. package/dist/components/progress-linear/index.js +1 -1
  262. package/dist/components/radio-group/RadioGroup.d.ts +1 -1
  263. package/dist/components/radio-group/RadioGroup.js +1 -1
  264. package/dist/components/radio-group/index.d.ts +2 -2
  265. package/dist/components/radio-group/index.js +1 -1
  266. package/dist/components/rating/Rating.d.ts +1 -1
  267. package/dist/components/rating/Rating.js +1 -1
  268. package/dist/components/rating/index.d.ts +1 -1
  269. package/dist/components/rating/index.js +1 -1
  270. package/dist/components/scatter-chart/ScatterChart.d.ts +2 -2
  271. package/dist/components/scatter-chart/ScatterChart.js +1 -1
  272. package/dist/components/scatter-chart/index.d.ts +2 -2
  273. package/dist/components/scatter-chart/index.js +1 -1
  274. package/dist/components/scroll-zone/ScrollZone.d.ts +126 -0
  275. package/dist/components/scroll-zone/ScrollZone.js +1 -0
  276. package/dist/components/scroll-zone/index.d.ts +2 -0
  277. package/dist/components/scroll-zone/index.js +1 -0
  278. package/dist/components/segmented-button/SegmentedButton.d.ts +1 -1
  279. package/dist/components/segmented-button/SegmentedButton.js +1 -1
  280. package/dist/components/segmented-button/index.d.ts +2 -2
  281. package/dist/components/segmented-button/index.js +1 -1
  282. package/dist/components/select/Select.d.ts +1 -1
  283. package/dist/components/select/Select.js +1 -1
  284. package/dist/components/select/index.d.ts +2 -2
  285. package/dist/components/select/index.js +1 -1
  286. package/dist/components/shortcut/Shortcut.d.ts +1 -1
  287. package/dist/components/shortcut/Shortcut.js +1 -1
  288. package/dist/components/shortcut/index.d.ts +2 -2
  289. package/dist/components/shortcut/index.js +1 -1
  290. package/dist/components/skeleton/Skeleton.d.ts +1 -1
  291. package/dist/components/skeleton/Skeleton.js +1 -1
  292. package/dist/components/skeleton/index.d.ts +2 -2
  293. package/dist/components/skeleton/index.js +1 -1
  294. package/dist/components/slider/Slider.d.ts +1 -1
  295. package/dist/components/slider/Slider.js +1 -1
  296. package/dist/components/slider/index.d.ts +2 -2
  297. package/dist/components/slider/index.js +1 -1
  298. package/dist/components/sparkline/Sparkline.d.ts +1 -1
  299. package/dist/components/sparkline/Sparkline.js +1 -1
  300. package/dist/components/sparkline/index.d.ts +2 -2
  301. package/dist/components/sparkline/index.js +1 -1
  302. package/dist/components/spoiler/Spoiler.d.ts +1 -1
  303. package/dist/components/spoiler/Spoiler.js +1 -1
  304. package/dist/components/spoiler/index.d.ts +2 -2
  305. package/dist/components/spoiler/index.js +1 -1
  306. package/dist/components/statistic/Statistic.d.ts +2 -2
  307. package/dist/components/statistic/Statistic.js +1 -1
  308. package/dist/components/statistic/index.d.ts +2 -2
  309. package/dist/components/statistic/index.js +1 -1
  310. package/dist/components/switch/Switch.d.ts +1 -1
  311. package/dist/components/switch/Switch.js +1 -1
  312. package/dist/components/switch/index.d.ts +2 -2
  313. package/dist/components/switch/index.js +1 -1
  314. package/dist/components/table/Table.d.ts +2 -2
  315. package/dist/components/table/Table.js +1 -1
  316. package/dist/components/table/index.d.ts +2 -2
  317. package/dist/components/table/index.js +1 -1
  318. package/dist/components/tabs/Tabs.d.ts +1 -1
  319. package/dist/components/tabs/Tabs.js +1 -1
  320. package/dist/components/tabs/index.d.ts +2 -2
  321. package/dist/components/tabs/index.js +1 -1
  322. package/dist/components/text-field/TextField.d.ts +1 -1
  323. package/dist/components/text-field/TextField.js +1 -1
  324. package/dist/components/text-field/index.d.ts +2 -2
  325. package/dist/components/text-field/index.js +1 -1
  326. package/dist/components/text-link/TextLink.d.ts +1 -1
  327. package/dist/components/text-link/TextLink.js +1 -1
  328. package/dist/components/text-link/index.d.ts +2 -2
  329. package/dist/components/text-link/index.js +1 -1
  330. package/dist/components/time-picker/TimePicker.d.ts +2 -2
  331. package/dist/components/time-picker/TimePicker.js +1 -1
  332. package/dist/components/time-picker/index.d.ts +2 -2
  333. package/dist/components/time-picker/index.js +1 -1
  334. package/dist/components/timeline/Timeline.d.ts +1 -1
  335. package/dist/components/timeline/Timeline.js +1 -1
  336. package/dist/components/timeline/index.d.ts +2 -2
  337. package/dist/components/timeline/index.js +1 -1
  338. package/dist/components/timeline-chart/TimelineChart.d.ts +2 -2
  339. package/dist/components/timeline-chart/TimelineChart.js +1 -1
  340. package/dist/components/timeline-chart/index.d.ts +2 -2
  341. package/dist/components/timeline-chart/index.js +1 -1
  342. package/dist/components/toast/Toast.d.ts +1 -1
  343. package/dist/components/toast/Toast.js +1 -1
  344. package/dist/components/toast/index.d.ts +2 -2
  345. package/dist/components/toast/index.js +1 -1
  346. package/dist/components/toolbar/Toolbar.d.ts +1 -1
  347. package/dist/components/toolbar/Toolbar.js +1 -1
  348. package/dist/components/toolbar/index.d.ts +2 -2
  349. package/dist/components/toolbar/index.js +1 -1
  350. package/dist/components/tooltip/Tooltip.d.ts +1 -1
  351. package/dist/components/tooltip/Tooltip.js +1 -1
  352. package/dist/components/tooltip/index.d.ts +2 -2
  353. package/dist/components/tooltip/index.js +1 -1
  354. package/dist/components/tree-view/TreeView.d.ts +1 -1
  355. package/dist/components/tree-view/TreeView.js +1 -1
  356. package/dist/components/tree-view/index.d.ts +2 -2
  357. package/dist/components/tree-view/index.js +1 -1
  358. package/dist/components/typography/Typography.d.ts +1 -1
  359. package/dist/components/typography/Typography.js +1 -1
  360. package/dist/components/typography/index.d.ts +2 -2
  361. package/dist/components/typography/index.js +1 -1
  362. package/dist/components/window-pane/WindowPane.d.ts +178 -0
  363. package/dist/components/window-pane/WindowPane.js +1 -0
  364. package/dist/components/window-pane/index.d.ts +2 -0
  365. package/dist/components/window-pane/index.js +1 -0
  366. package/dist/index.d.ts +92 -89
  367. package/dist/index.js +1 -1
  368. package/dist/internal/animate.d.ts +1 -1
  369. package/dist/internal/bottom-navigation.d.ts +57 -0
  370. package/dist/internal/bottom-navigation.js +1 -0
  371. package/dist/internal/button-group.d.ts +1 -1
  372. package/dist/internal/button-group.js +1 -1
  373. package/dist/internal/calendar.d.ts +2 -2
  374. package/dist/internal/calendar.js +1 -1
  375. package/dist/internal/chart-frame.d.ts +3 -3
  376. package/dist/internal/chart-frame.js +1 -1
  377. package/dist/internal/chart-line.d.ts +2 -2
  378. package/dist/internal/chart-line.js +1 -1
  379. package/dist/internal/chart.d.ts +1 -1
  380. package/dist/internal/chart.js +1 -1
  381. package/dist/internal/data-table.d.ts +1 -1
  382. package/dist/internal/date.d.ts +1 -1
  383. package/dist/internal/date.js +1 -1
  384. package/dist/internal/grid.d.ts +1 -1
  385. package/dist/internal/i18n.d.ts +346 -205
  386. package/dist/internal/i18n.js +1 -1
  387. package/dist/internal/icons.d.ts +18 -2
  388. package/dist/internal/icons.js +1 -1
  389. package/dist/internal/menu.d.ts +1 -1
  390. package/dist/internal/menu.js +1 -1
  391. package/dist/internal/mockup.d.ts +1 -1
  392. package/dist/internal/picker.d.ts +2 -2
  393. package/dist/internal/picker.js +1 -1
  394. package/dist/internal/progress.d.ts +1 -1
  395. package/dist/internal/styles.d.ts +1 -1
  396. package/dist/internal/window.d.ts +201 -0
  397. package/dist/internal/window.js +1 -0
  398. package/dist/locales/ar.d.ts +14 -0
  399. package/dist/locales/ar.js +1 -0
  400. package/dist/locales/de.d.ts +14 -0
  401. package/dist/locales/de.js +1 -0
  402. package/dist/locales/es.d.ts +14 -0
  403. package/dist/locales/es.js +1 -0
  404. package/dist/locales/fr.d.ts +14 -0
  405. package/dist/locales/fr.js +1 -0
  406. package/dist/locales/hi.d.ts +14 -0
  407. package/dist/locales/hi.js +1 -0
  408. package/dist/locales/id.d.ts +14 -0
  409. package/dist/locales/id.js +1 -0
  410. package/dist/locales/index.d.ts +45 -0
  411. package/dist/locales/index.js +1 -0
  412. package/dist/locales/it.d.ts +14 -0
  413. package/dist/locales/it.js +1 -0
  414. package/dist/locales/ja.d.ts +14 -0
  415. package/dist/locales/ja.js +1 -0
  416. package/dist/locales/ko.d.ts +14 -0
  417. package/dist/locales/ko.js +1 -0
  418. package/dist/locales/nl.d.ts +14 -0
  419. package/dist/locales/nl.js +1 -0
  420. package/dist/locales/pl.d.ts +14 -0
  421. package/dist/locales/pl.js +1 -0
  422. package/dist/locales/pt.d.ts +14 -0
  423. package/dist/locales/pt.js +1 -0
  424. package/dist/locales/ru.d.ts +14 -0
  425. package/dist/locales/ru.js +1 -0
  426. package/dist/locales/th.d.ts +14 -0
  427. package/dist/locales/th.js +1 -0
  428. package/dist/locales/tr.d.ts +14 -0
  429. package/dist/locales/tr.js +1 -0
  430. package/dist/locales/vi.d.ts +14 -0
  431. package/dist/locales/vi.js +1 -0
  432. package/dist/locales/zh-hans.d.ts +17 -0
  433. package/dist/locales/zh-hans.js +1 -0
  434. package/dist/locales/zh-hant.d.ts +17 -0
  435. package/dist/locales/zh-hant.js +1 -0
  436. package/dist/styles.css +1 -1
  437. package/dist/tailwind.css +6 -0
  438. package/package.json +41 -11
@@ -1,2 +1,2 @@
1
- export { Statistic } from './Statistic';
2
- export type { StatisticProps } from './Statistic';
1
+ export { Statistic } from './Statistic.js';
2
+ export type { StatisticProps } from './Statistic.js';
@@ -1 +1 @@
1
- export{Statistic}from"./Statistic";
1
+ export{Statistic}from"./Statistic.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { Switch as BaseUISwitch } from '@base-ui/react/switch';
3
- import type { NebaColor, NebaSize } from '../../types';
3
+ import type { NebaColor, NebaSize } from '../../types.js';
4
4
  /** Which side of the track the label sits on. */
5
5
  export type SwitchLabelPlacement = 'start' | 'end';
6
6
  type BaseSwitchProps = Omit<React.ComponentPropsWithoutRef<typeof BaseUISwitch.Root>, 'className' | 'style' | 'render' | 'children'>;
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a,Fragment as r}from"react/jsx-runtime";import*as n from"react";import{Switch as l}from"@base-ui/react/switch";import{Field as o}from"@base-ui/react/field";import{controlTextClasses as t,metaTextClasses as i,surfaceClasses as c,tickRowLeadingClasses as s}from"../../internal/styles";const d={xs:"h-3.5 w-6",sm:"h-4 w-7",md:"h-5 w-9",lg:"h-6 w-11",xl:"h-7 w-13"},b={xs:"data-[checked]:left-[calc(100%-0.75rem)]",sm:"data-[checked]:left-[calc(100%-0.875rem)]",md:"data-[checked]:left-[calc(100%-1.125rem)]",lg:"data-[checked]:left-[calc(100%-1.375rem)]",xl:"data-[checked]:left-[calc(100%-1.625rem)]"},h=["relative inline-flex shrink-0 border","[-webkit-tap-highlight-color:transparent] [touch-action:manipulation]","rounded-full","[transition-property:background-color,border-color,box-shadow]","[transition-duration:var(--neba-duration-fill),var(--neba-duration),var(--neba-duration)]","[transition-timing-function:var(--neba-ease)]","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" "),f=[c,"cursor-pointer bg-(--n-panel) [border-color:var(--n-line)]","hover:bg-(--n-panel-hover) hover:[border-color:var(--n-line-hover)]","data-[checked]:bg-(--n-fill) data-[checked]:[border-color:transparent]","data-[checked]:hover:bg-(--n-fill-hover)"].join(" "),m=[c,"cursor-default bg-(--n-panel) [border-color:var(--n-line)]","[filter:saturate(0.55)]","data-[checked]:bg-(--n-fill) data-[checked]:[border-color:transparent]"].join(" "),u=["cursor-not-allowed bg-transparent [border-color:var(--neba-disabled-border)] shadow-none","data-[checked]:bg-(--neba-disabled-bg)"].join(" "),v=["absolute inset-y-0.5 left-0.5 aspect-square rounded-full bg-(--neba-surface)","[box-shadow:var(--neba-shadow-1)]","[transition:left_var(--neba-duration)_var(--neba-ease)]"].join(" ");export const Switch=n.forwardRef(function({size:n="md",color:c="primary",label:p,description:g,error:x,invalid:w,labelPlacement:k="end",disabled:j=!1,readOnly:$=!1,className:N,style:y,..._},R){const B=null!=x&&!1!==x&&""!==x,O=w??B,S=O?"danger":c,q={"--n-fill":`var(--neba-${S}-fill)`,"--n-fill-hover":`var(--neba-${S}-fill-hover)`,"--n-accent":`var(--neba-${S}-accent)`,"--n-panel":"var(--neba-panel)","--n-panel-hover":"var(--neba-panel-hover)","--n-line":`var(--neba-${S}-line)`,"--n-line-hover":`var(--neba-${S}-line-hover)`,"--n-ring":`var(--neba-${S}-ring)`},z=e("span",{className:"flex h-[1lh] shrink-0 items-center",children:e(l.Root,{ref:R,className:[h,d[n],j?u:$?m:f].join(" "),disabled:j,readOnly:$,..._,children:e(l.Thumb,{className:`${v} ${b[n]}`})})}),D=p||g?a("span",{className:["flex min-w-0 flex-col gap-0.5","start"===k?"flex-1":""].filter(Boolean).join(" "),children:[p?e(o.Label,{className:["leading-[1.4]",j?"text-(--neba-disabled-fg)":"cursor-pointer text-(--neba-fg)"].join(" "),children:p}):null,g?e(o.Description,{className:`${i[n]} text-(--neba-muted-fg)`,children:g}):null]}):null;return a(o.Root,{disabled:j,invalid:O,className:["inline-flex flex-col gap-1 align-top",N??""].filter(Boolean).join(" "),style:{...q,...y},children:[e("div",{className:`flex items-start gap-2.5 ${t[n]} ${s}`,children:a(r,"start"===k?{children:[D,z]}:{children:[z,D]})}),B?e(o.Error,{match:!0,className:`${i[n]} text-(--n-accent)`,children:x}):null]})});
1
+ import{jsx as e,jsxs as a,Fragment as r}from"react/jsx-runtime";import*as n from"react";import{Switch as l}from"@base-ui/react/switch";import{Field as o}from"@base-ui/react/field";import{controlTextClasses as t,metaTextClasses as i,surfaceClasses as c,tickRowLeadingClasses as s}from"../../internal/styles.js";const d={xs:"h-3.5 w-6",sm:"h-4 w-7",md:"h-5 w-9",lg:"h-6 w-11",xl:"h-7 w-13"},b={xs:"data-[checked]:left-[calc(100%-0.75rem)]",sm:"data-[checked]:left-[calc(100%-0.875rem)]",md:"data-[checked]:left-[calc(100%-1.125rem)]",lg:"data-[checked]:left-[calc(100%-1.375rem)]",xl:"data-[checked]:left-[calc(100%-1.625rem)]"},h=["relative inline-flex shrink-0 border","[-webkit-tap-highlight-color:transparent] [touch-action:manipulation]","rounded-full","[transition-property:background-color,border-color,box-shadow]","[transition-duration:var(--neba-duration-fill),var(--neba-duration),var(--neba-duration)]","[transition-timing-function:var(--neba-ease)]","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" "),f=[c,"cursor-pointer bg-(--n-panel) [border-color:var(--n-line)]","hover:bg-(--n-panel-hover) hover:[border-color:var(--n-line-hover)]","data-[checked]:bg-(--n-fill) data-[checked]:[border-color:transparent]","data-[checked]:hover:bg-(--n-fill-hover)"].join(" "),m=[c,"cursor-default bg-(--n-panel) [border-color:var(--n-line)]","[filter:saturate(0.55)]","data-[checked]:bg-(--n-fill) data-[checked]:[border-color:transparent]"].join(" "),u=["cursor-not-allowed bg-transparent [border-color:var(--neba-disabled-border)] shadow-none","data-[checked]:bg-(--neba-disabled-bg)"].join(" "),v=["absolute inset-y-0.5 left-0.5 aspect-square rounded-full bg-(--neba-surface)","[box-shadow:var(--neba-shadow-1)]","[transition:left_var(--neba-duration)_var(--neba-ease)]"].join(" ");export const Switch=/*@__PURE__*/n.forwardRef(function({size:n="md",color:c="primary",label:p,description:g,error:x,invalid:w,labelPlacement:k="end",disabled:j=!1,readOnly:$=!1,className:N,style:y,..._},R){const B=null!=x&&!1!==x&&""!==x,O=w??B,S=O?"danger":c,q={"--n-fill":`var(--neba-${S}-fill)`,"--n-fill-hover":`var(--neba-${S}-fill-hover)`,"--n-accent":`var(--neba-${S}-accent)`,"--n-panel":"var(--neba-panel)","--n-panel-hover":"var(--neba-panel-hover)","--n-line":`var(--neba-${S}-line)`,"--n-line-hover":`var(--neba-${S}-line-hover)`,"--n-ring":`var(--neba-${S}-ring)`},z=e("span",{className:"flex h-[1lh] shrink-0 items-center",children:e(l.Root,{ref:R,className:[h,d[n],j?u:$?m:f].join(" "),disabled:j,readOnly:$,..._,children:e(l.Thumb,{className:`${v} ${b[n]}`})})}),D=p||g?a("span",{className:["flex min-w-0 flex-col gap-0.5","start"===k?"flex-1":""].filter(Boolean).join(" "),children:[p?e(o.Label,{className:["leading-[1.4]",j?"text-(--neba-disabled-fg)":"cursor-pointer text-(--neba-fg)"].join(" "),children:p}):null,g?e(o.Description,{className:`${i[n]} text-(--neba-muted-fg)`,children:g}):null]}):null;return a(o.Root,{disabled:j,invalid:O,className:["inline-flex flex-col gap-1 align-top",N??""].filter(Boolean).join(" "),style:{...q,...y},children:[e("div",{className:`flex items-start gap-2.5 ${t[n]} ${s}`,children:a(r,"start"===k?{children:[D,z]}:{children:[z,D]})}),B?e(o.Error,{match:!0,className:`${i[n]} text-(--n-accent)`,children:x}):null]})});
@@ -1,2 +1,2 @@
1
- export { Switch } from './Switch';
2
- export type { SwitchLabelPlacement, SwitchProps } from './Switch';
1
+ export { Switch } from './Switch.js';
2
+ export type { SwitchLabelPlacement, SwitchProps } from './Switch.js';
@@ -1 +1 @@
1
- export{Switch}from"./Switch";
1
+ export{Switch}from"./Switch.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { type BoxProps } from '../box/Box';
3
- import type { NebaAlign } from '../../types';
2
+ import { type BoxProps } from '../box/Box.js';
3
+ import type { NebaAlign } from '../../types.js';
4
4
  /** Which edge the text in a column lines up against. */
5
5
  export type TableAlign = NebaAlign;
6
6
  /**
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Box as r}from"../box/Box";import{useMessages as n}from"../../internal/i18n";import{controlTextLeadingClasses as o,metaTextClasses as l,paddingXValues as a}from"../../internal/styles";const i={default:{xs:"0.25rem",sm:"0.375rem",md:"0.625rem",lg:"0.75rem",xl:"0.875rem"},compact:{xs:"0.125rem",sm:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.625rem"}},s=["[--n-row:transparent]","[transition:background-color_var(--neba-duration)_var(--neba-ease)]"].join(" "),d=["cursor-pointer [outline:none]","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:[outline-offset:-2px]"].join(" "),c={borderTop:"1px solid var(--n-line)",backgroundColor:"var(--n-row)"};export function Table({headers:m,items:p,getRowKey:b,caption:h,locale:u,empty:y,striped:f=!1,hoverable:x=!1,stickyHeader:g=!1,onRowClick:v,size:w="md",density:k="default",className:j,...N}){const $=n(u),B=a[k][w],C=i[k][w],A=Boolean(v),_=x||A,z={padding:`${C} ${B}`},T={...z,backgroundColor:"var(--n-panel-press)"};return e(r,{size:w,density:k,padded:!1,className:["overflow-x-auto",j??""].filter(Boolean).join(" "),...N,children:t("table",{className:`w-full text-start ${o[w]} text-(--neba-fg)`,style:{borderCollapse:"collapse"},children:[h?e("caption",{className:`${l[w]} text-(--neba-muted-fg)`,style:{...z,textAlign:"start"},children:h}):null,e("colgroup",{children:m.map(t=>e("col",{style:void 0===t.width?void 0:{width:"number"==typeof t.width?`${t.width}px`:t.width}},t.key))}),e("thead",{children:e("tr",{children:m.map(t=>e("th",{scope:"col",className:["font-semibold whitespace-nowrap text-(--neba-muted-fg)",g?"sticky top-0 z-10 [backdrop-filter:var(--neba-blur)]":""].filter(Boolean).join(" "),style:{...T,textAlign:t.align??"start"},children:t.label??t.key},t.key))})}),e("tbody",{children:0===p.length?e("tr",{className:s,style:c,children:e("td",{colSpan:m.length,className:"text-(--neba-muted-fg)",style:{padding:`2rem ${B}`,textAlign:"center"},children:y??$.table.empty})}):p.map((t,r)=>e("tr",{className:[s,f&&r%2==1?"[--n-row:var(--n-panel-hover)]":"",_?"hover:[--n-row:var(--n-soft)]":"",A?d:""].filter(Boolean).join(" "),style:c,tabIndex:A?0:void 0,onClick:v?()=>v(t,r):void 0,onKeyDown:v?e=>{e.target===e.currentTarget&&("Enter"!==e.key&&" "!==e.key||(e.preventDefault(),v(t,r)))}:void 0,children:m.map(n=>e("td",{style:{...z,textAlign:n.align??"start"},children:n.render?n.render(t,r):t[n.key]},n.key))},b?b(t,r):r))})]})})}
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Box as r}from"../box/Box.js";import{tableMessages as n,useMessages as o}from"../../internal/i18n.js";import{controlTextLeadingClasses as l,metaTextClasses as a,paddingXValues as i}from"../../internal/styles.js";const s={default:{xs:"0.25rem",sm:"0.375rem",md:"0.625rem",lg:"0.75rem",xl:"0.875rem"},compact:{xs:"0.125rem",sm:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.625rem"}},d=["[--n-row:transparent]","[transition:background-color_var(--neba-duration)_var(--neba-ease)]"].join(" "),c=["cursor-pointer [outline:none]","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:[outline-offset:-2px]"].join(" "),m={borderTop:"1px solid var(--n-line)",backgroundColor:"var(--n-row)"};export function Table({headers:p,items:h,getRowKey:u,caption:y,locale:b,empty:f,striped:x=!1,hoverable:g=!1,stickyHeader:v=!1,onRowClick:w,size:k="md",density:j="default",className:N,...$}){const B=o(n,b),C=i[j][k],A=s[j][k],_=Boolean(w),z=g||_,T={padding:`${A} ${C}`},D={...T,backgroundColor:"var(--n-panel-press)"};return e(r,{size:k,density:j,padded:!1,className:["overflow-x-auto",N??""].filter(Boolean).join(" "),...$,children:t("table",{className:`w-full text-start ${l[k]} text-(--neba-fg)`,style:{borderCollapse:"collapse"},children:[y?e("caption",{className:`${a[k]} text-(--neba-muted-fg)`,style:{...T,textAlign:"start"},children:y}):null,e("colgroup",{children:p.map(t=>e("col",{style:void 0===t.width?void 0:{width:"number"==typeof t.width?`${t.width}px`:t.width}},t.key))}),e("thead",{children:e("tr",{children:p.map(t=>e("th",{scope:"col",className:["font-semibold whitespace-nowrap text-(--neba-muted-fg)",v?"sticky top-0 z-10 [backdrop-filter:var(--neba-blur)]":""].filter(Boolean).join(" "),style:{...D,textAlign:t.align??"start"},children:t.label??t.key},t.key))})}),e("tbody",{children:0===h.length?e("tr",{className:d,style:m,children:e("td",{colSpan:p.length,className:"text-(--neba-muted-fg)",style:{padding:`2rem ${C}`,textAlign:"center"},children:f??B.empty})}):h.map((t,r)=>e("tr",{className:[d,x&&r%2==1?"[--n-row:var(--n-panel-hover)]":"",z?"hover:[--n-row:var(--n-soft)]":"",_?c:""].filter(Boolean).join(" "),style:m,tabIndex:_?0:void 0,onClick:w?()=>w(t,r):void 0,onKeyDown:w?e=>{e.target===e.currentTarget&&("Enter"!==e.key&&" "!==e.key||(e.preventDefault(),w(t,r)))}:void 0,children:p.map(n=>e("td",{style:{...T,textAlign:n.align??"start"},children:n.render?n.render(t,r):t[n.key]},n.key))},u?u(t,r):r))})]})})}
@@ -1,2 +1,2 @@
1
- export { Table } from './Table';
2
- export type { TableAlign, TableColumn, TableProps } from './Table';
1
+ export { Table } from './Table.js';
2
+ export type { TableAlign, TableColumn, TableProps } from './Table.js';
@@ -1 +1 @@
1
- export{Table}from"./Table";
1
+ export{Table}from"./Table.js";
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { NebaOrientation, NebaStyleProps, NebaVariant } from '../../types';
2
+ import type { NebaOrientation, NebaStyleProps, NebaVariant } from '../../types.js';
3
3
  /** A tab's value. The same restraint Select puts on its own — an identifier. */
4
4
  export type TabValue = string | number;
5
5
  export interface TabsProps extends Omit<NebaStyleProps, 'variant'>, Omit<React.ComponentPropsWithoutRef<'div'>, 'color' | 'defaultValue' | 'onChange'> {
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as a from"react";import{Tabs as i}from"@base-ui/react/tabs";import{controlHeightClasses as o,controlTextClasses as l,gapClasses as n,hasContent as r,iconClasses as s,paddingXClasses as c,radiusClasses as d,surfaceClasses as f,surfaceSlots as u,transitionClasses as h}from"../../internal/styles";const b=a.createContext({variant:"outline",size:"md",density:"default",orientation:"horizontal",fullWidth:!1}),v={solid:{horizontal:`${f} inline-flex bg-(--n-panel) p-1 [box-shadow:var(--neba-plate-glass)]`,vertical:`${f} inline-flex flex-col bg-(--n-panel) p-1 [box-shadow:var(--neba-plate-glass)]`},outline:{horizontal:"flex border-b [border-color:var(--n-line)]",vertical:"flex flex-col border-e [border-color:var(--n-line)]"},text:{horizontal:"flex",vertical:"flex flex-col"}},p={solid:{horizontal:"absolute left-(--active-tab-left) top-(--active-tab-top) h-(--active-tab-height) w-(--active-tab-width)",vertical:"absolute left-(--active-tab-left) top-(--active-tab-top) h-(--active-tab-height) w-(--active-tab-width)"},outline:{horizontal:"absolute bottom-0 left-(--active-tab-left) h-0.5 w-(--active-tab-width)",vertical:"absolute end-0 top-(--active-tab-top) h-(--active-tab-height) w-0.5"},text:{horizontal:"absolute bottom-0 left-(--active-tab-left) h-0.5 w-(--active-tab-width)",vertical:"absolute end-0 top-(--active-tab-top) h-(--active-tab-height) w-0.5"}},x={solid:`${f} bg-(--n-panel-press) [box-shadow:var(--neba-shadow-1),var(--neba-plate-glass)]`,outline:"bg-(--n-accent)",text:"bg-(--n-accent)"},m={solid:"text-(--neba-muted-fg) hover:text-(--neba-fg) data-[active]:text-(--n-accent)",outline:"text-(--neba-muted-fg) hover:text-(--neba-fg) data-[active]:text-(--n-accent)",text:"text-(--neba-muted-fg) hover:text-(--neba-fg) data-[active]:text-(--n-accent)"};export const Tab=a.forwardRef(function({value:f,startIcon:u,endIcon:v,disabled:p=!1,className:x,children:g,...w},z){const{variant:y,size:N,density:j,fullWidth:k}=a.useContext(b);return t(i.Tab,{ref:z,value:f,disabled:p,className:["relative z-10 inline-flex shrink-0 cursor-pointer items-center justify-center select-none","whitespace-nowrap font-medium","[-webkit-tap-highlight-color:transparent] [touch-action:manipulation]",o[N],l[N],n[N],c[j][N],"solid"===y?d[N]:"",h,s,m[y],"focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:[outline-offset:-2px]","data-[disabled]:cursor-not-allowed data-[disabled]:text-(--neba-disabled-fg)",k?"flex-1":"",x??""].filter(Boolean).join(" "),...w,children:[r(u)?e("span",{className:"flex h-[1lh] shrink-0 items-center",children:u}):null,g,r(v)?e("span",{className:"flex h-[1lh] shrink-0 items-center",children:v}):null]})});export const TabPanel=a.forwardRef(function({value:t,keepMounted:o=!1,className:l,children:n,...r},s){const{size:c}=a.useContext(b);return e(i.Panel,{ref:s,value:t,keepMounted:o,className:["min-w-0 flex-1 text-(--neba-fg)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2",d[c],l??""].filter(Boolean).join(" "),...r,children:n})});export const Tabs=a.forwardRef(function({variant:o="outline",size:l="md",color:n="primary",density:r="default",value:s,defaultValue:c,onValueChange:f,orientation:h="horizontal",activateOnFocus:m=!1,loopFocus:g=!0,fullWidth:w=!1,className:z,style:y,children:N,...j},k){const C=a.useMemo(()=>({variant:o,size:l,density:r,orientation:h,fullWidth:w}),[o,l,r,h,w]),T=[],V=[];return a.Children.forEach(N,e=>{a.isValidElement(e)&&e.type===TabPanel?V.push(e):null!=e&&!1!==e&&T.push(e)}),e(b.Provider,{value:C,children:t(i.Root,{ref:k,value:s,defaultValue:c,onValueChange:e=>f?.(e),orientation:h,className:["flex min-w-0","vertical"===h?"flex-row gap-4":"flex-col gap-4",z??""].filter(Boolean).join(" "),style:{...u(n,0),...y},...j,children:[t(i.List,{activateOnFocus:m,loopFocus:g,className:["relative shrink-0",v[o][h],"solid"===o?d[l]:"",w&&"horizontal"===h?"w-full":"","horizontal"===h?"overflow-x-auto overflow-y-hidden":""].filter(Boolean).join(" "),children:[T,e(i.Indicator,{className:["pointer-events-none",p[o][h],x[o],"solid"===o?d[l]:"rounded-full","[transition-property:left,top,width,height]","[transition-duration:var(--neba-duration)]","[transition-timing-function:var(--neba-ease)]"].join(" ")})]}),V]})})});
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as a from"react";import{Tabs as i}from"@base-ui/react/tabs";import{controlHeightClasses as o,controlTextClasses as l,gapClasses as n,hasContent as r,iconClasses as s,paddingXClasses as c,radiusClasses as d,surfaceClasses as f,surfaceSlots as u,transitionClasses as h}from"../../internal/styles.js";const b=/*@__PURE__*/a.createContext({variant:"outline",size:"md",density:"default",orientation:"horizontal",fullWidth:!1}),v={solid:{horizontal:`${f} inline-flex bg-(--n-panel) p-1 [box-shadow:var(--neba-plate-glass)]`,vertical:`${f} inline-flex flex-col bg-(--n-panel) p-1 [box-shadow:var(--neba-plate-glass)]`},outline:{horizontal:"flex border-b [border-color:var(--n-line)]",vertical:"flex flex-col border-e [border-color:var(--n-line)]"},text:{horizontal:"flex",vertical:"flex flex-col"}},p={solid:{horizontal:"absolute left-(--active-tab-left) top-(--active-tab-top) h-(--active-tab-height) w-(--active-tab-width)",vertical:"absolute left-(--active-tab-left) top-(--active-tab-top) h-(--active-tab-height) w-(--active-tab-width)"},outline:{horizontal:"absolute bottom-0 left-(--active-tab-left) h-0.5 w-(--active-tab-width)",vertical:"absolute end-0 top-(--active-tab-top) h-(--active-tab-height) w-0.5"},text:{horizontal:"absolute bottom-0 left-(--active-tab-left) h-0.5 w-(--active-tab-width)",vertical:"absolute end-0 top-(--active-tab-top) h-(--active-tab-height) w-0.5"}},x={solid:`${f} bg-(--n-panel-press) [box-shadow:var(--neba-shadow-1),var(--neba-plate-glass)]`,outline:"bg-(--n-accent)",text:"bg-(--n-accent)"},m={solid:"text-(--neba-muted-fg) hover:text-(--neba-fg) data-[active]:text-(--n-accent)",outline:"text-(--neba-muted-fg) hover:text-(--neba-fg) data-[active]:text-(--n-accent)",text:"text-(--neba-muted-fg) hover:text-(--neba-fg) data-[active]:text-(--n-accent)"};export const Tab=/*@__PURE__*/a.forwardRef(function({value:f,startIcon:u,endIcon:v,disabled:p=!1,className:x,children:g,...w},z){const{variant:y,size:j,density:N,fullWidth:k}=a.useContext(b);return t(i.Tab,{ref:z,value:f,disabled:p,className:["relative z-10 inline-flex shrink-0 cursor-pointer items-center justify-center select-none","whitespace-nowrap font-medium","[-webkit-tap-highlight-color:transparent] [touch-action:manipulation]",o[j],l[j],n[j],c[N][j],"solid"===y?d[j]:"",h,s,m[y],"focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:[outline-offset:-2px]","data-[disabled]:cursor-not-allowed data-[disabled]:text-(--neba-disabled-fg)",k?"flex-1":"",x??""].filter(Boolean).join(" "),...w,children:[r(u)?e("span",{className:"flex h-[1lh] shrink-0 items-center",children:u}):null,g,r(v)?e("span",{className:"flex h-[1lh] shrink-0 items-center",children:v}):null]})});export const TabPanel=/*@__PURE__*/a.forwardRef(function({value:t,keepMounted:o=!1,className:l,children:n,...r},s){const{size:c}=a.useContext(b);return e(i.Panel,{ref:s,value:t,keepMounted:o,className:["min-w-0 flex-1 text-(--neba-fg)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2",d[c],l??""].filter(Boolean).join(" "),...r,children:n})});export const Tabs=/*@__PURE__*/a.forwardRef(function({variant:o="outline",size:l="md",color:n="primary",density:r="default",value:s,defaultValue:c,onValueChange:f,orientation:h="horizontal",activateOnFocus:m=!1,loopFocus:g=!0,fullWidth:w=!1,className:z,style:y,children:j,...N},k){const C=a.useMemo(()=>({variant:o,size:l,density:r,orientation:h,fullWidth:w}),[o,l,r,h,w]),T=[],V=[];return a.Children.forEach(j,e=>{a.isValidElement(e)&&e.type===TabPanel?V.push(e):null!=e&&!1!==e&&T.push(e)}),e(b.Provider,{value:C,children:t(i.Root,{ref:k,value:s,defaultValue:c,onValueChange:e=>f?.(e),orientation:h,className:["flex min-w-0","vertical"===h?"flex-row gap-4":"flex-col gap-4",z??""].filter(Boolean).join(" "),style:{...u(n,0),...y},...N,children:[t(i.List,{activateOnFocus:m,loopFocus:g,className:["relative shrink-0",v[o][h],"solid"===o?d[l]:"",w&&"horizontal"===h?"w-full":"","horizontal"===h?"overflow-x-auto overflow-y-hidden":""].filter(Boolean).join(" "),children:[T,e(i.Indicator,{className:["pointer-events-none",p[o][h],x[o],"solid"===o?d[l]:"rounded-full","[transition-property:left,top,width,height]","[transition-duration:var(--neba-duration)]","[transition-timing-function:var(--neba-ease)]"].join(" ")})]}),V]})})});
@@ -1,2 +1,2 @@
1
- export { Tab, TabPanel, Tabs } from './Tabs';
2
- export type { TabPanelProps, TabProps, TabsProps, TabValue } from './Tabs';
1
+ export { Tab, TabPanel, Tabs } from './Tabs.js';
2
+ export type { TabPanelProps, TabProps, TabsProps, TabValue } from './Tabs.js';
@@ -1 +1 @@
1
- export{Tab,TabPanel,Tabs}from"./Tabs";
1
+ export{Tab,TabPanel,Tabs}from"./Tabs.js";
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { NebaElevation, NebaStyleProps } from '../../types';
2
+ import type { NebaElevation, NebaStyleProps } from '../../types.js';
3
3
  /** How the multiline control may be resized by the user. Ignored when single line. */
4
4
  export type TextFieldResize = 'none' | 'vertical' | 'horizontal' | 'both';
5
5
  /**
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as n from"react";import{Field as r}from"@base-ui/react/field";import{Input as i}from"@base-ui/react/input";import{controlHeightClasses as l,controlTextLeadingClasses as a,disabledClasses as s,fieldReadOnlyClasses as o,fieldRestClasses as c,focusWithinRingClasses as d,gapClasses as m,iconClasses as u,metaTextClasses as f,paddingXClasses as p,radiusClasses as x,stackGapClasses as h,surfaceSlots as g,transitionClasses as b}from"../../internal/styles";const y={xs:`${m.xs} ${x.xs} ${a.xs}`,sm:`${m.sm} ${x.sm} ${a.sm}`,md:`${m.md} ${x.md} ${a.md}`,lg:`${m.lg} ${x.lg} ${a.lg}`,xl:`${m.xl} ${x.xl} ${a.xl}`},$={xs:"min-h-5.5 py-[3px]",sm:"min-h-6.5 py-[4px]",md:"min-h-8 py-[5px]",lg:"min-h-10 py-[8px]",xl:"min-h-12 py-[10px]"},v={none:"resize-none",vertical:"resize-y",horizontal:"resize-x",both:"resize"},w=["group relative flex w-full cursor-text","[-webkit-tap-highlight-color:transparent]",b,"focus-within:[transition-duration:0ms]",d,u].join(" "),N=c,j=o;function k(){return t("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",className:"animate-spin",children:[e("circle",{cx:"8",cy:"8",r:"6.5",stroke:"currentColor",strokeOpacity:"0.25",strokeWidth:"2"}),e("path",{d:"M14.5 8A6.5 6.5 0 0 0 8 1.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})}export const TextField=n.forwardRef(function({variant:a="outline",size:o="md",color:c="primary",density:d="default",elevation:m=0,multiline:u=!1,rows:x=3,resize:b="vertical",label:z,description:B,error:C,invalid:D,startIcon:O,endIcon:R,loading:W=!1,fullWidth:I=!1,readOnly:L=!1,disabled:T=!1,type:A="text",className:E,style:F,...M},P){const q=null!=C&&!1!==C&&""!==C,G=D??q,H=G?"danger":c,J=n.useRef(null),K=n.useCallback(e=>{J.current=e,"function"==typeof P?P(e):P&&(P.current=e)},[P]),Q=[w,y[o],u?`${$[o]} items-start`:`${l[o]} items-center`,p[d][o],T?s[a]:L?j[a]:N[a]].filter(Boolean).join(" "),S=["min-w-0 flex-1 bg-transparent [font:inherit] text-inherit","[outline:none]","placeholder:text-(--neba-muted-fg)","caret-(--n-accent) selection:bg-(--n-soft-press)","disabled:cursor-not-allowed",u?`block ${v[b]}`:"self-stretch"].join(" "),U="inline-flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg) transition-[color] duration-(--neba-duration) group-focus-within:text-(--n-accent)";return t(r.Root,{disabled:T,invalid:G,className:["flex-col align-top",h[o],I?"flex w-full":"inline-flex",E??""].filter(Boolean).join(" "),style:{...g(H,m),...F},children:[z?e(r.Label,{className:[f[o],"font-medium",T?"text-(--neba-disabled-fg)":"text-(--neba-fg)"].join(" "),children:z}):null,t("span",{className:Q,onPointerDown:e=>{e.target!==e.currentTarget||T||(e.preventDefault(),J.current?.focus())},children:[O?e("span",{className:U,children:O}):null,e(i,{ref:K,className:S,disabled:T,readOnly:L,"aria-busy":W||void 0,"data-loading":W||void 0,...u?{render:e("textarea",{rows:x})}:{type:A},...M}),W?e("span",{className:U,children:e(k,{})}):R?e("span",{className:U,children:R}):null]}),B?e(r.Description,{className:[f[o],"text-(--neba-muted-fg)"].join(" "),children:B}):null,q?e(r.Error,{match:!0,className:[f[o],"text-(--n-accent)"].join(" "),children:C}):null]})});
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as n from"react";import{Field as r}from"@base-ui/react/field";import{Input as i}from"@base-ui/react/input";import{controlHeightClasses as l,controlTextLeadingClasses as a,disabledClasses as s,fieldReadOnlyClasses as o,fieldRestClasses as c,focusWithinRingClasses as d,gapClasses as m,iconClasses as u,metaTextClasses as f,paddingXClasses as p,radiusClasses as x,stackGapClasses as h,surfaceSlots as g,transitionClasses as b}from"../../internal/styles.js";const y={xs:`${m.xs} ${x.xs} ${a.xs}`,sm:`${m.sm} ${x.sm} ${a.sm}`,md:`${m.md} ${x.md} ${a.md}`,lg:`${m.lg} ${x.lg} ${a.lg}`,xl:`${m.xl} ${x.xl} ${a.xl}`},$={xs:"min-h-5.5 py-[3px]",sm:"min-h-6.5 py-[4px]",md:"min-h-8 py-[5px]",lg:"min-h-10 py-[8px]",xl:"min-h-12 py-[10px]"},v={none:"resize-none",vertical:"resize-y",horizontal:"resize-x",both:"resize"},w=["group relative flex w-full cursor-text","[-webkit-tap-highlight-color:transparent]",b,"focus-within:[transition-duration:0ms]",d,u].join(" "),j=c,N=o;function k(){return t("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",className:"animate-spin",children:[e("circle",{cx:"8",cy:"8",r:"6.5",stroke:"currentColor",strokeOpacity:"0.25",strokeWidth:"2"}),e("path",{d:"M14.5 8A6.5 6.5 0 0 0 8 1.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})}export const TextField=/*@__PURE__*/n.forwardRef(function({variant:a="outline",size:o="md",color:c="primary",density:d="default",elevation:m=0,multiline:u=!1,rows:x=3,resize:b="vertical",label:z,description:B,error:C,invalid:D,startIcon:O,endIcon:R,loading:W=!1,fullWidth:I=!1,readOnly:L=!1,disabled:T=!1,type:A="text",className:E,style:F,...M},P){const q=null!=C&&!1!==C&&""!==C,G=D??q,H=G?"danger":c,J=n.useRef(null),K=n.useCallback(e=>{J.current=e,"function"==typeof P?P(e):P&&(P.current=e)},[P]),Q=[w,y[o],u?`${$[o]} items-start`:`${l[o]} items-center`,p[d][o],T?s[a]:L?N[a]:j[a]].filter(Boolean).join(" "),S=["min-w-0 flex-1 bg-transparent [font:inherit] text-inherit","[outline:none]","placeholder:text-(--neba-muted-fg)","caret-(--n-accent) selection:bg-(--n-soft-press)","disabled:cursor-not-allowed",u?`block ${v[b]}`:"self-stretch"].join(" "),U="inline-flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg) transition-[color] duration-(--neba-duration) group-focus-within:text-(--n-accent)";return t(r.Root,{disabled:T,invalid:G,className:["flex-col align-top",h[o],I?"flex w-full":"inline-flex",E??""].filter(Boolean).join(" "),style:{...g(H,m),...F},children:[z?e(r.Label,{className:[f[o],"font-medium",T?"text-(--neba-disabled-fg)":"text-(--neba-fg)"].join(" "),children:z}):null,t("span",{className:Q,onPointerDown:e=>{e.target!==e.currentTarget||T||(e.preventDefault(),J.current?.focus())},children:[O?e("span",{className:U,children:O}):null,e(i,{ref:K,className:S,disabled:T,readOnly:L,"aria-busy":W||void 0,"data-loading":W||void 0,...u?{render:e("textarea",{rows:x})}:{type:A},...M}),W?e("span",{className:U,children:e(k,{})}):R?e("span",{className:U,children:R}):null]}),B?e(r.Description,{className:[f[o],"text-(--neba-muted-fg)"].join(" "),children:B}):null,q?e(r.Error,{match:!0,className:[f[o],"text-(--n-accent)"].join(" "),children:C}):null]})});
@@ -1,2 +1,2 @@
1
- export { TextField } from './TextField';
2
- export type { TextFieldProps, TextFieldResize } from './TextField';
1
+ export { TextField } from './TextField.js';
2
+ export type { TextFieldProps, TextFieldResize } from './TextField.js';
@@ -1 +1 @@
1
- export{TextField}from"./TextField";
1
+ export{TextField}from"./TextField.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { useRender } from '@base-ui/react/use-render';
3
- import type { NebaColor, NebaSize } from '../../types';
3
+ import type { NebaColor, NebaSize } from '../../types.js';
4
4
  /**
5
5
  * When the line under a link is drawn.
6
6
  *
@@ -1 +1 @@
1
- import{jsx as n,Fragment as e,jsxs as r}from"react/jsx-runtime";import*as i from"react";import{useRender as o}from"@base-ui/react/use-render";import{useMessages as a}from"../../internal/i18n";import{ExternalLinkIcon as t,LinkIcon as l}from"../../internal/icons";import{controlTextLeadingClasses as s,focusRingClasses as c,srOnlyClasses as m}from"../../internal/styles";const d={always:"[&.neba-link]:underline",hover:"[&.neba-link]:no-underline [&.neba-link]:hover:underline",none:"[&.neba-link]:no-underline"},u=["neba-link","cursor-pointer","[&_svg]:pointer-events-none [&_svg]:inline [&_svg]:size-[0.95em] [&_svg]:shrink-0",["[transition-property:color,text-decoration-color]","[transition-duration:var(--neba-duration)]","[transition-timing-function:var(--neba-ease)]"].join(" "),c,"focus-visible:rounded-[0.25rem]"].join(" ");export const TextLink=i.forwardRef(function({href:i,underline:c="always",color:p,size:b,newTab:f=!1,icon:v,locale:h,render:k,className:g,style:x,children:j,...y},w){const _=a(h),N=v??f,T=!0===N?n(f?t:l,{}):N,z=[u,b?s[b]:"",d[c],p?"[&.neba-link]:text-(--n-accent)":"[&.neba-link]:text-inherit",g??""].filter(Boolean).join(" "),B={"--n-underline":"color-mix(in oklab, currentColor 45%, transparent)","--n-underline-hover":"currentColor","--n-ring":`var(--neba-${p??"primary"}-ring)`,...p?{"--n-accent":`var(--neba-${p}-accent)`}:null},{rel:C,...$}=y,F=f?[...new Set([...(C??"").split(/\s+/).filter(Boolean),"noopener","noreferrer"])].join(" "):C;return o({render:k??n("a",{}),ref:w,props:{href:i,target:f?"_blank":void 0,className:z,style:{...B,...x},children:r(e,{children:[j,T?n("span",{className:"ms-[0.25em]",children:T}):null,f?r(e,{children:[" ",n("span",{className:m,children:_.link.newTab})]}):null]}),...$,rel:F}})});
1
+ import{jsx as n,Fragment as e,jsxs as r}from"react/jsx-runtime";import*as i from"react";import{useRender as o}from"@base-ui/react/use-render";import{linkMessages as a,useMessages as t}from"../../internal/i18n.js";import{ExternalLinkIcon as l,LinkIcon as s}from"../../internal/icons.js";import{controlTextLeadingClasses as c,focusRingClasses as m,srOnlyClasses as d}from"../../internal/styles.js";const u={always:"[&.neba-link]:underline",hover:"[&.neba-link]:no-underline [&.neba-link]:hover:underline",none:"[&.neba-link]:no-underline"},p=["neba-link","cursor-pointer","[&_svg]:pointer-events-none [&_svg]:inline [&_svg]:size-[0.95em] [&_svg]:shrink-0",["[transition-property:color,text-decoration-color]","[transition-duration:var(--neba-duration)]","[transition-timing-function:var(--neba-ease)]"].join(" "),m,"focus-visible:rounded-[0.25rem]"].join(" ");export const TextLink=/*@__PURE__*/i.forwardRef(function({href:i,underline:m="always",color:b,size:f,newTab:v=!1,icon:h,locale:k,render:j,className:g,style:x,children:y,...w},_){const N=t(a,k),T=h??v,z=!0===T?n(v?l:s,{}):T,B=[p,f?c[f]:"",u[m],b?"[&.neba-link]:text-(--n-accent)":"[&.neba-link]:text-inherit",g??""].filter(Boolean).join(" "),C={"--n-underline":"color-mix(in oklab, currentColor 45%, transparent)","--n-underline-hover":"currentColor","--n-ring":`var(--neba-${b??"primary"}-ring)`,...b?{"--n-accent":`var(--neba-${b}-accent)`}:null},{rel:$,...F}=w,L=v?[...new Set([...($??"").split(/\s+/).filter(Boolean),"noopener","noreferrer"])].join(" "):$;return o({render:j??n("a",{}),ref:_,props:{href:i,target:v?"_blank":void 0,className:B,style:{...C,...x},children:r(e,{children:[y,z?n("span",{className:"ms-[0.25em]",children:z}):null,v?r(e,{children:[" ",n("span",{className:d,children:N.newTab})]}):null]}),...F,rel:L}})});
@@ -1,2 +1,2 @@
1
- export { TextLink } from './TextLink';
2
- export type { TextLinkProps, TextLinkUnderline } from './TextLink';
1
+ export { TextLink } from './TextLink.js';
2
+ export type { TextLinkProps, TextLinkUnderline } from './TextLink.js';
@@ -1 +1 @@
1
- export{TextLink}from"./TextLink";
1
+ export{TextLink}from"./TextLink.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { type PickerLabels, type TimeUnit } from '../../internal/calendar';
3
- import { type PickerShellProps } from '../../internal/picker';
2
+ import { type PickerLabels, type TimeUnit } from '../../internal/calendar.js';
3
+ import { type PickerShellProps } from '../../internal/picker.js';
4
4
  /**
5
5
  * Which column of the clock a row belongs to. Re-exported so a caller writing a
6
6
  * `shouldDisableTime` rule can name the argument it is handed.
@@ -1 +1 @@
1
- import{jsx as e,jsxs as n}from"react/jsx-runtime";import*as o from"react";import{Button as t}from"../button/Button";import{TimeGrid as l,usePickerLabels as a}from"../../internal/calendar";import{ClockIcon as i}from"../../internal/icons";import{PickerFooter as r,PickerShell as s}from"../../internal/picker";import{displaySamples as c,formatDate as d,isHour12 as u,isValidDate as m,secondsOfDay as p,timeUnitSpan as h,toISOTime as f,withPlaceholder as S,withTime as b}from"../../internal/date";import{cx as g}from"../../internal/styles";export const TimePicker=o.forwardRef(function({value:y,defaultValue:v,onValueChange:x,open:C,defaultOpen:w,onOpenChange:z,referenceDate:k,minTime:D,maxTime:O,shouldDisableTime:T,hour12:j,showSeconds:M=!1,hourStep:V=1,minuteStep:B=1,secondStep:I=1,locale:N,format:R,placeholder:F,clearable:H=!1,showNowButton:P=!0,closeOnSelect:q=!1,labels:A,name:E,size:G="md",color:J="primary",density:K="default",readOnly:L=!1,disabled:Q=!1,startIcon:U,...W},X){const Y=a(A),Z=j??u(N),[$,_]=o.useState(v??null),ee=void 0!==y?y:$,[ne,oe]=o.useState(w??!1),te=C??ne,[le]=o.useState(()=>k??new Date),ae=e=>{e&&(L||Q)||(void 0===C&&oe(e),z?.(e))},ie=e=>{void 0===y&&_(e),x?.(e)},re=o.useCallback((e,n)=>{const[o,t]=h(n,e);return!!(m(D)&&t<p(D))||(!!(m(O)&&o>p(O))||(T?.(e,n)??!1))},[D,O,T]),se=o.useMemo(()=>R??{hour:"numeric",minute:"2-digit",...M?{second:"2-digit"}:{}},[R,M]),ce=new Date,de=b(k??le,{hours:ce.getHours(),minutes:ce.getMinutes(),seconds:M?ce.getSeconds():0}),ue=P||H||!q,me=o.useMemo(()=>S(c(N,se),F),[N,se,F]);return e(s,{...W,size:G,color:J,density:K,readOnly:L,disabled:Q,triggerRef:X,startIcon:U??e(i,{}),display:m(ee)?d(ee,N,se):F??"",samples:me,empty:!m(ee),clearable:H,onClear:()=>ie(null),open:te,onOpenChange:ae,labels:Y,hiddenValues:E?[{name:E,value:m(ee)?f(ee,M):""}]:void 0,children:n("div",{className:g("flex flex-col",ue&&"gap-1.5"),children:[e(l,{size:G,density:K,locale:N,value:m(ee)?ee:null,referenceDate:k??le,onChange:e=>{ie(e),q&&ae(!1)},hour12:Z,showSeconds:M,hourStep:V,minuteStep:B,secondStep:I,shouldDisableTime:re,labels:Y,autoFocus:!0}),ue?n(r,{size:G,children:[H?e(t,{variant:"text",size:G,color:J,density:"compact",onClick:()=>{ie(null),ae(!1)},children:Y.clear}):null,P?e(t,{variant:"text",size:G,color:J,density:"compact",disabled:re(de,"second"),onClick:()=>{ie(de),ae(!1)},children:Y.now}):null,q?null:e(t,{variant:"solid",size:G,color:J,density:"compact",onClick:()=>ae(!1),children:Y.done})]}):null]})})});
1
+ import{jsx as e,jsxs as n}from"react/jsx-runtime";import*as o from"react";import{Button as t}from"../button/Button.js";import{TimeGrid as l,usePickerLabels as a}from"../../internal/calendar.js";import{ClockIcon as s}from"../../internal/icons.js";import{PickerFooter as i,PickerShell as r}from"../../internal/picker.js";import{displaySamples as c,formatDate as d,isHour12 as u,isValidDate as m,secondsOfDay as p,timeUnitSpan as h,toISOTime as f,withPlaceholder as S,withTime as b}from"../../internal/date.js";import{cx as g}from"../../internal/styles.js";export const TimePicker=/*@__PURE__*/o.forwardRef(function({value:y,defaultValue:v,onValueChange:j,open:x,defaultOpen:C,onOpenChange:w,referenceDate:z,minTime:k,maxTime:D,shouldDisableTime:O,hour12:T,showSeconds:M=!1,hourStep:V=1,minuteStep:B=1,secondStep:I=1,locale:N,format:R,placeholder:F,clearable:H=!1,showNowButton:P=!0,closeOnSelect:q=!1,labels:A,name:E,size:G="md",color:J="primary",density:K="default",readOnly:L=!1,disabled:Q=!1,startIcon:U,...W},X){const Y=a(A),Z=T??u(N),[$,_]=o.useState(v??null),ee=void 0!==y?y:$,[ne,oe]=o.useState(C??!1),te=x??ne,[le]=o.useState(()=>z??new Date),ae=e=>{e&&(L||Q)||(void 0===x&&oe(e),w?.(e))},se=e=>{void 0===y&&_(e),j?.(e)},ie=o.useCallback((e,n)=>{const[o,t]=h(n,e);return!!(m(k)&&t<p(k))||(!!(m(D)&&o>p(D))||(O?.(e,n)??!1))},[k,D,O]),re=o.useMemo(()=>R??{hour:"numeric",minute:"2-digit",...M?{second:"2-digit"}:{}},[R,M]),ce=new Date,de=b(z??le,{hours:ce.getHours(),minutes:ce.getMinutes(),seconds:M?ce.getSeconds():0}),ue=P||H||!q,me=o.useMemo(()=>S(c(N,re),F),[N,re,F]);return e(r,{...W,size:G,color:J,density:K,readOnly:L,disabled:Q,triggerRef:X,startIcon:U??e(s,{}),display:m(ee)?d(ee,N,re):F??"",samples:me,empty:!m(ee),clearable:H,onClear:()=>se(null),open:te,onOpenChange:ae,labels:Y,hiddenValues:E?[{name:E,value:m(ee)?f(ee,M):""}]:void 0,children:n("div",{className:g("flex flex-col",ue&&"gap-1.5"),children:[e(l,{size:G,density:K,locale:N,value:m(ee)?ee:null,referenceDate:z??le,onChange:e=>{se(e),q&&ae(!1)},hour12:Z,showSeconds:M,hourStep:V,minuteStep:B,secondStep:I,shouldDisableTime:ie,labels:Y,autoFocus:!0}),ue?n(i,{size:G,children:[H?e(t,{variant:"text",size:G,color:J,density:"compact",onClick:()=>{se(null),ae(!1)},children:Y.clear}):null,P?e(t,{variant:"text",size:G,color:J,density:"compact",disabled:ie(de,"second"),onClick:()=>{se(de),ae(!1)},children:Y.now}):null,q?null:e(t,{variant:"solid",size:G,color:J,density:"compact",onClick:()=>ae(!1),children:Y.done})]}):null]})})});
@@ -1,2 +1,2 @@
1
- export { TimePicker } from './TimePicker';
2
- export type { TimePickerProps, TimeUnit } from './TimePicker';
1
+ export { TimePicker } from './TimePicker.js';
2
+ export type { TimePickerProps, TimeUnit } from './TimePicker.js';
@@ -1 +1 @@
1
- export{TimePicker}from"./TimePicker";
1
+ export{TimePicker}from"./TimePicker.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { useRender } from '@base-ui/react/use-render';
3
- import type { NebaColor, NebaDensity, NebaOrientation, NebaSize } from '../../types';
3
+ import type { NebaColor, NebaDensity, NebaOrientation, NebaSize } from '../../types.js';
4
4
  /**
5
5
  * How far along one item is.
6
6
  *
@@ -1 +1 @@
1
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import*as r from"react";import{useRender as t}from"@base-ui/react/use-render";import{cx as n,hasContent as a,iconClasses as o,metaTextClasses as s,sheetBodyClasses as i,sheetTitleClasses as d,surfaceClasses as c,surfaceSlots as m,transitionClasses as p}from"../../internal/styles";const u=r.createContext(null),b=r.createContext({index:0,last:!1}),x={xs:"0.875rem",sm:"1rem",md:"1.25rem",lg:"1.5rem",xl:"1.875rem"},f={xs:"gap-2",sm:"gap-2.5",md:"gap-3",lg:"gap-3.5",xl:"gap-4"},v={default:{xs:"pb-5",sm:"pb-6",md:"pb-7",lg:"pb-8",xl:"pb-10"},compact:{xs:"pb-3",sm:"pb-3.5",md:"pb-4",lg:"pb-5",xl:"pb-6"}},g={default:{xs:"pe-5",sm:"pe-6",md:"pe-7",lg:"pe-8",xl:"pe-10"},compact:{xs:"pe-3",sm:"pe-3.5",md:"pe-4",lg:"pe-5",xl:"pe-6"}},h={solid:"border-solid",dashed:"border-dashed",dotted:"border-dotted",none:""},y={complete:`${c} bg-(--n-fill) text-(--n-on-solid) [box-shadow:var(--neba-plate-solid)]`,current:`${c} bg-(--n-fill) text-(--n-on-solid) [box-shadow:0_0_0_0.25rem_var(--n-soft),var(--neba-plate-solid)]`,upcoming:`${c} border-2 bg-(--n-panel) text-(--neba-muted-fg) [border-color:var(--n-line)]`},N={complete:"[border-color:var(--n-line-hover)]",current:"[border-color:var(--neba-border)]",upcoming:"[border-color:var(--neba-border)]"},w={complete:"text-(--neba-fg)",current:"text-(--n-accent)",upcoming:"text-(--neba-muted-fg)"};export const TimelineItem=r.forwardRef(function({title:t,meta:c,bullet:_,status:z,color:C,connector:$="solid",className:j,children:P,...R},T){const k=r.useContext(u),{index:A,last:I}=r.useContext(b),M=k?.size??"md",q=k?.density??"default",B=k?.orientation??"vertical",D=C??k?.color??"primary",E=k?.active??null,F=z??(null===E?"upcoming":A<E?"complete":A===E?"current":"upcoming"),G="horizontal"===B,H="none"!==$&&!I,J=e("span",{"aria-hidden":"true",className:n("relative z-10 flex shrink-0 items-center justify-center rounded-full","size-(--n-bullet) text-[calc(var(--n-bullet)*0.5)] leading-none font-semibold tabular-nums",y[F],p,o),children:_}),K=H?e("span",{"aria-hidden":"true",className:n("pointer-events-none absolute",G?"top-[calc(var(--n-bullet)/2_-_1px)] start-(--n-bullet) end-0 border-t-2":"start-[calc(var(--n-bullet)/2_-_1px)] top-(--n-bullet) bottom-0 border-s-2",h[$],N[F],p)}):null,L=l("div",{className:n("flex min-w-0 flex-col gap-0.5",G?"mt-2":""),children:[a(t)||a(c)?l("div",{className:"flex flex-wrap items-baseline gap-x-2",children:[a(t)?e("span",{className:n("font-semibold",d[M],w[F],p),children:t}):null,a(c)?e("span",{className:n("text-(--neba-muted-fg)",s[M]),children:c}):null]}):null,a(P)?e("div",{className:n("text-(--neba-muted-fg)",i[M]),children:P}):null]});return l("li",{ref:T,"aria-current":"current"===F?"step":void 0,"data-status":F,className:n("relative",G?n("flex min-w-0 flex-1 flex-col",I?"":g[q][M]):n("flex",f[M],I?"":v[q][M]),j),style:{"--n-bullet":x[M],...m(D,0),"--n-fill":`var(--neba-${D}-fill)`,"--n-on-solid":`var(--neba-${D}-on-solid)`},...R,children:[K,J,L]})});export const Timeline=r.forwardRef(function({active:l,size:a="md",color:o="primary",density:s="default",orientation:i="vertical",render:d,className:c,style:p,children:x,...f},v){const g=r.Children.toArray(x),h=g.length,y=r.useMemo(()=>({size:a,density:s,orientation:i,color:o,active:l??null}),[a,s,i,o,l]),N=t({render:d??e("ol",{}),ref:v,props:{role:"list",className:n("flex","horizontal"===i?"flex-row":"flex-col",c),style:{...m(o,0),...p},children:g.map((l,r)=>e(b.Provider,{value:{index:r,last:r===h-1},children:l},r)),...f}});return e(u.Provider,{value:y,children:N})});
1
+ import{jsx as e,jsxs as l}from"react/jsx-runtime";import*as r from"react";import{useRender as t}from"@base-ui/react/use-render";import{cx as n,hasContent as a,iconClasses as o,metaTextClasses as s,sheetBodyClasses as i,sheetTitleClasses as d,surfaceClasses as c,surfaceSlots as m,transitionClasses as p}from"../../internal/styles.js";const u=/*@__PURE__*/r.createContext(null),b=/*@__PURE__*/r.createContext({index:0,last:!1}),x={xs:"0.875rem",sm:"1rem",md:"1.25rem",lg:"1.5rem",xl:"1.875rem"},f={xs:"gap-2",sm:"gap-2.5",md:"gap-3",lg:"gap-3.5",xl:"gap-4"},v={default:{xs:"pb-5",sm:"pb-6",md:"pb-7",lg:"pb-8",xl:"pb-10"},compact:{xs:"pb-3",sm:"pb-3.5",md:"pb-4",lg:"pb-5",xl:"pb-6"}},g={default:{xs:"pe-5",sm:"pe-6",md:"pe-7",lg:"pe-8",xl:"pe-10"},compact:{xs:"pe-3",sm:"pe-3.5",md:"pe-4",lg:"pe-5",xl:"pe-6"}},h={solid:"border-solid",dashed:"border-dashed",dotted:"border-dotted",none:""},y={complete:`${c} bg-(--n-fill) text-(--n-on-solid) [box-shadow:var(--neba-plate-solid)]`,current:`${c} bg-(--n-fill) text-(--n-on-solid) [box-shadow:0_0_0_0.25rem_var(--n-soft),var(--neba-plate-solid)]`,upcoming:`${c} border-2 bg-(--n-panel) text-(--neba-muted-fg) [border-color:var(--n-line)]`},N={complete:"[border-color:var(--n-line-hover)]",current:"[border-color:var(--neba-border)]",upcoming:"[border-color:var(--neba-border)]"},w={complete:"text-(--neba-fg)",current:"text-(--n-accent)",upcoming:"text-(--neba-muted-fg)"};export const TimelineItem=/*@__PURE__*/r.forwardRef(function({title:t,meta:c,bullet:_,status:z,color:j,connector:C="solid",className:$,children:P,...R},T){const k=r.useContext(u),{index:A,last:I}=r.useContext(b),M=k?.size??"md",q=k?.density??"default",B=k?.orientation??"vertical",D=j??k?.color??"primary",E=k?.active??null,F=z??(null===E?"upcoming":A<E?"complete":A===E?"current":"upcoming"),G="horizontal"===B,H="none"!==C&&!I,J=e("span",{"aria-hidden":"true",className:n("relative z-10 flex shrink-0 items-center justify-center rounded-full","size-(--n-bullet) text-[calc(var(--n-bullet)*0.5)] leading-none font-semibold tabular-nums",y[F],p,o),children:_}),K=H?e("span",{"aria-hidden":"true",className:n("pointer-events-none absolute",G?"top-[calc(var(--n-bullet)/2_-_1px)] start-(--n-bullet) end-0 border-t-2":"start-[calc(var(--n-bullet)/2_-_1px)] top-(--n-bullet) bottom-0 border-s-2",h[C],N[F],p)}):null,L=l("div",{className:n("flex min-w-0 flex-col gap-0.5",G?"mt-2":""),children:[a(t)||a(c)?l("div",{className:"flex flex-wrap items-baseline gap-x-2",children:[a(t)?e("span",{className:n("font-semibold",d[M],w[F],p),children:t}):null,a(c)?e("span",{className:n("text-(--neba-muted-fg)",s[M]),children:c}):null]}):null,a(P)?e("div",{className:n("text-(--neba-muted-fg)",i[M]),children:P}):null]});return l("li",{ref:T,"aria-current":"current"===F?"step":void 0,"data-status":F,className:n("relative",G?n("flex min-w-0 flex-1 flex-col",I?"":g[q][M]):n("flex",f[M],I?"":v[q][M]),$),style:{"--n-bullet":x[M],...m(D,0),"--n-fill":`var(--neba-${D}-fill)`,"--n-on-solid":`var(--neba-${D}-on-solid)`},...R,children:[K,J,L]})});export const Timeline=/*@__PURE__*/r.forwardRef(function({active:l,size:a="md",color:o="primary",density:s="default",orientation:i="vertical",render:d,className:c,style:p,children:x,...f},v){const g=r.Children.toArray(x),h=g.length,y=r.useMemo(()=>({size:a,density:s,orientation:i,color:o,active:l??null}),[a,s,i,o,l]),N=t({render:d??e("ol",{}),ref:v,props:{role:"list",className:n("flex","horizontal"===i?"flex-row":"flex-col",c),style:{...m(o,0),...p},children:g.map((l,r)=>e(b.Provider,{value:{index:r,last:r===h-1},children:l},r)),...f}});return e(u.Provider,{value:y,children:N})});
@@ -1,2 +1,2 @@
1
- export { Timeline, TimelineItem } from './Timeline';
2
- export type { TimelineConnector, TimelineItemProps, TimelineProps, TimelineStatus } from './Timeline';
1
+ export { Timeline, TimelineItem } from './Timeline.js';
2
+ export type { TimelineConnector, TimelineItemProps, TimelineProps, TimelineStatus } from './Timeline.js';
@@ -1 +1 @@
1
- export{Timeline,TimelineItem}from"./Timeline";
1
+ export{Timeline,TimelineItem}from"./Timeline.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { type CartesianChartProps } from '../../internal/chart-frame';
3
- import type { NebaChartCategory, NebaTimelineSeries } from '../../types';
2
+ import { type CartesianChartProps } from '../../internal/chart-frame.js';
3
+ import type { NebaChartCategory, NebaTimelineSeries } from '../../types.js';
4
4
  export interface TimelineChartProps extends Omit<CartesianChartProps, 'series' | 'categories' | 'legend'> {
5
5
  /**
6
6
  * One row per series, and the spans on it. A row's name is what the axis
@@ -1 +1 @@
1
- import{jsx as e,jsxs as n}from"react/jsx-runtime";import*as t from"react";import{CartesianChart as o}from"../../internal/chart-frame";import{barBandRatio as r,barMaxThickness as a,barRadius as s,formatTimeTicks as l,formatTimeValue as i,markGap as c,resolveColor as m,seriesColor as d,timeScale as u,toNumber as h}from"../../internal/chart";import{srOnlyClasses as x}from"../../internal/styles";export function TimelineChart({series:n,min:s,max:m,barSize:x,rounded:b=!0,size:y="md",density:k="default",xAxis:g,yAxis:v,locale:$,...C}){const w=t.useMemo(()=>n.map(f),[n]),z=t.useMemo(()=>w.map(e=>e.spans),[w]),A=t.useMemo(()=>{let e=1/0,n=-1/0,t=!1;for(const o of z)for(const r of o)r&&(t=!0,e=Math.min(e,r.from),n=Math.max(n,r.to));return t?{min:e,max:n}:null},[z]),j=t.useMemo(()=>u(A,{min:h(s)??void 0,max:h(m)??void 0,tickCount:v?.tickCount}),[A,s,m,v?.tickCount]),E=t.useMemo(()=>l(j.ticks,j.unit,$),[j,$]),P=t.useMemo(()=>n.map((e,n)=>d(e,n)),[n]),B=t.useMemo(()=>[{data:z.map(e=>e.some(Boolean)?1:null)}],[z]),I=t.useMemo(()=>n.map((e,n)=>e.name??`${n+1}`),[n]),T=x??a[y],F=t.useCallback(e=>{const n=[];return w.forEach((t,o)=>{const r=Math.min(T,Math.max(1,(e.band.band-c*(t.lanes-1))/t.lanes)),a=r*t.lanes+c*(t.lanes-1),s=e.plot.top+e.categoryPx(o)-a/2+r/2;t.spans.forEach((t,a)=>{if(!t)return;const l=e.valuePx(t.from),i=e.valuePx(t.to);n.push({series:o,index:a,x:(l+i)/2,y:s+t.lane*(r+c),r:r/2,rx:Math.max(0,(i-l)/2),ry:r/2})})}),n},[w,T]),N=t.useCallback(e=>{const n=z[e.series]?.[e.index];if(!n)return null;const t=[{seriesIndex:e.series,name:I[e.series],color:n.color??P[e.series],value:n.to-n.from,formatted:`${i(n.from,j.unit,$)} – ${i(n.to,j.unit,$)}`}];return{heading:n.span.label??I[e.series],items:t}},[z,I,P,j.unit,$]);return e(o,{...C,series:B,categories:I,size:y,density:k,locale:$,horizontal:!0,scale:j,xAxis:g,yAxis:{tickFormat:(e,n)=>E[n]??"",...v},legend:!1,bandRatio:r[k],marks:F,markTooltip:N,table:t=>e(M,{id:t,names:I,series:n,spans:z,unit:j.unit,label:C.label,corner:g?.label,locale:$}),children:n=>e(p,{context:n,spans:z,colors:P,rounded:b})})}function f(e){const n=e.data.map(e=>{const n=h(e.start),t=h(e.end);return null===n||null===t?null:{from:Math.min(n,t),to:Math.max(n,t),lane:0,color:e.color?m(e.color):void 0,span:e}}),t=[];return n.map((e,n)=>({one:e,index:n})).filter(e=>Boolean(e.one)).sort((e,n)=>e.one.from-n.one.from).forEach(({one:e})=>{const n=t.findIndex(n=>n<=e.from),o=-1===n?t.length:n;t[o]=e.to,e.lane=o}),{spans:n,lanes:Math.max(1,t.length)}}function p({context:n,spans:t,colors:o,rounded:r}){const{marks:a,activeMark:l,plot:i}=n,c=r?s:0;return e("g",{children:a.map(n=>{const r=t[n.series]?.[n.index];if(!r)return null;const a=l?.series===n.series&&l?.index===n.index,s=n.rx??n.r,m=2*(n.ry??n.r),d=Math.max(i.left,n.x-s),u=Math.min(i.left+i.width,n.x+s);if(u<i.left||d>i.left+i.width)return null;const h=Math.max(1,u-d);return e("rect",{x:d,y:n.y-m/2,width:h,height:m,rx:Math.min(c,h/2,m/2),fill:r.color??o[n.series],opacity:a?1:.92},`${n.series}-${n.index}`)})})}function M({id:t,names:o,series:r,spans:a,unit:s,label:l,corner:c,locale:m}){const d=r.some(e=>e.data.some(e=>void 0!==e.label));return n("table",{id:t,className:x,children:[l?e("caption",{children:l}):null,e("thead",{children:n("tr",{children:[e("th",{scope:"col",children:c??""}),d?e("th",{scope:"col",children:"label"}):null,e("th",{scope:"col",children:"start"}),e("th",{scope:"col",children:"end"})]})}),e("tbody",{children:a.flatMap((t,a)=>t.map((t,l)=>n("tr",{children:[e("th",{scope:"row",children:o[a]}),d?e("td",{children:r[a].data[l]?.label??""}):null,e("td",{children:t?i(t.from,s,m):""}),e("td",{children:t?i(t.to,s,m):""})]},`${a}-${l}`)))})]})}
1
+ import{jsx as e,jsxs as n}from"react/jsx-runtime";import*as t from"react";import{CartesianChart as o}from"../../internal/chart-frame.js";import{barBandRatio as r,barMaxThickness as a,barRadius as s,formatTimeTicks as l,formatTimeValue as i,markGap as c,resolveColor as m,seriesColor as d,timeScale as u,toNumber as h}from"../../internal/chart.js";import{srOnlyClasses as x}from"../../internal/styles.js";export function TimelineChart({series:n,min:s,max:m,barSize:x,rounded:b=!0,size:y="md",density:k="default",xAxis:g,yAxis:v,locale:$,...j}){const C=t.useMemo(()=>n.map(f),[n]),w=t.useMemo(()=>C.map(e=>e.spans),[C]),z=t.useMemo(()=>{let e=1/0,n=-1/0,t=!1;for(const o of w)for(const r of o)r&&(t=!0,e=Math.min(e,r.from),n=Math.max(n,r.to));return t?{min:e,max:n}:null},[w]),A=t.useMemo(()=>u(z,{min:h(s)??void 0,max:h(m)??void 0,tickCount:v?.tickCount}),[z,s,m,v?.tickCount]),E=t.useMemo(()=>l(A.ticks,A.unit,$),[A,$]),P=t.useMemo(()=>n.map((e,n)=>d(e,n)),[n]),B=t.useMemo(()=>[{data:w.map(e=>e.some(Boolean)?1:null)}],[w]),I=t.useMemo(()=>n.map((e,n)=>e.name??`${n+1}`),[n]),T=x??a[y],F=t.useCallback(e=>{const n=[];return C.forEach((t,o)=>{const r=Math.min(T,Math.max(1,(e.band.band-c*(t.lanes-1))/t.lanes)),a=r*t.lanes+c*(t.lanes-1),s=e.plot.top+e.categoryPx(o)-a/2+r/2;t.spans.forEach((t,a)=>{if(!t)return;const l=e.valuePx(t.from),i=e.valuePx(t.to);n.push({series:o,index:a,x:(l+i)/2,y:s+t.lane*(r+c),r:r/2,rx:Math.max(0,(i-l)/2),ry:r/2})})}),n},[C,T]),N=t.useCallback(e=>{const n=w[e.series]?.[e.index];if(!n)return null;const t=[{seriesIndex:e.series,name:I[e.series],color:n.color??P[e.series],value:n.to-n.from,formatted:`${i(n.from,A.unit,$)} – ${i(n.to,A.unit,$)}`}];return{heading:n.span.label??I[e.series],items:t}},[w,I,P,A.unit,$]);return e(o,{...j,series:B,categories:I,size:y,density:k,locale:$,horizontal:!0,scale:A,xAxis:g,yAxis:{tickFormat:(e,n)=>E[n]??"",...v},legend:!1,bandRatio:r[k],marks:F,markTooltip:N,table:t=>e(M,{id:t,names:I,series:n,spans:w,unit:A.unit,label:j.label,corner:g?.label,locale:$}),children:n=>e(p,{context:n,spans:w,colors:P,rounded:b})})}function f(e){const n=e.data.map(e=>{const n=h(e.start),t=h(e.end);return null===n||null===t?null:{from:Math.min(n,t),to:Math.max(n,t),lane:0,color:e.color?m(e.color):void 0,span:e}}),t=[];return n.map((e,n)=>({one:e,index:n})).filter(e=>Boolean(e.one)).sort((e,n)=>e.one.from-n.one.from).forEach(({one:e})=>{const n=t.findIndex(n=>n<=e.from),o=-1===n?t.length:n;t[o]=e.to,e.lane=o}),{spans:n,lanes:Math.max(1,t.length)}}function p({context:n,spans:t,colors:o,rounded:r}){const{marks:a,activeMark:l,plot:i}=n,c=r?s:0;return e("g",{children:a.map(n=>{const r=t[n.series]?.[n.index];if(!r)return null;const a=l?.series===n.series&&l?.index===n.index,s=n.rx??n.r,m=2*(n.ry??n.r),d=Math.max(i.left,n.x-s),u=Math.min(i.left+i.width,n.x+s);if(u<i.left||d>i.left+i.width)return null;const h=Math.max(1,u-d);return e("rect",{x:d,y:n.y-m/2,width:h,height:m,rx:Math.min(c,h/2,m/2),fill:r.color??o[n.series],opacity:a?1:.92},`${n.series}-${n.index}`)})})}function M({id:t,names:o,series:r,spans:a,unit:s,label:l,corner:c,locale:m}){const d=r.some(e=>e.data.some(e=>void 0!==e.label));return n("table",{id:t,className:x,children:[l?e("caption",{children:l}):null,e("thead",{children:n("tr",{children:[e("th",{scope:"col",children:c??""}),d?e("th",{scope:"col",children:"label"}):null,e("th",{scope:"col",children:"start"}),e("th",{scope:"col",children:"end"})]})}),e("tbody",{children:a.flatMap((t,a)=>t.map((t,l)=>n("tr",{children:[e("th",{scope:"row",children:o[a]}),d?e("td",{children:r[a].data[l]?.label??""}):null,e("td",{children:t?i(t.from,s,m):""}),e("td",{children:t?i(t.to,s,m):""})]},`${a}-${l}`)))})]})}
@@ -1,2 +1,2 @@
1
- export { TimelineChart } from './TimelineChart';
2
- export type { TimelineChartProps } from './TimelineChart';
1
+ export { TimelineChart } from './TimelineChart.js';
2
+ export type { TimelineChartProps } from './TimelineChart.js';
@@ -1 +1 @@
1
- export{TimelineChart}from"./TimelineChart";
1
+ export{TimelineChart}from"./TimelineChart.js";
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { NebaAlign, NebaColor, NebaStyleProps, NebaVariant } from '../../types';
2
+ import type { NebaAlign, NebaColor, NebaStyleProps, NebaVariant } from '../../types.js';
3
3
  /**
4
4
  * Where the stack sits.
5
5
  *
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as o from"react";import{Toast as i}from"@base-ui/react/toast";import{boxPaddingClasses as n}from"../box/Box";import{useMessages as s}from"../../internal/i18n";import{CloseIcon as a,severityIcons as r}from"../../internal/icons";import{controlSlots as l,focusRingClasses as c,hasContent as d,iconClasses as m,metaTextClasses as p,radiusClasses as u,sheetBodyClasses as f,sheetHeaderGapClasses as b,sheetSectionGapClasses as x,sheetTitleClasses as v,surfaceClasses as h}from"../../internal/styles";const y={"top-start":"top-0 items-start","top-center":"top-0 items-center","top-end":"top-0 items-end","bottom-start":"bottom-0 items-start flex-col-reverse","bottom-center":"bottom-0 items-center flex-col-reverse","bottom-end":"bottom-0 items-end flex-col-reverse"},g={solid:[h,"text-(--n-on-solid) bg-(--n-fill)","[box-shadow:var(--neba-shadow-3),var(--neba-plate-solid)]"].join(" "),outline:[h,"border text-(--neba-fg) bg-(--n-panel-press)","[border-color:var(--n-line)]","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]"].join(" "),text:[h,"text-(--neba-fg) bg-(--n-panel-press)","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]"].join(" ")},w={solid:"",outline:"text-(--n-accent)",text:"text-(--n-accent)"};function j(e){const{color:t,variant:o,icon:i,actionLabel:n,onAction:s,...a}=e;return{...a,data:{color:t,variant:o,icon:i},actionProps:void 0===n?void 0:{children:n,onClick:s}}}export function useToast(){const e=i.useToastManager();return o.useMemo(()=>({add:t=>e.add(j(t)),close:t=>e.close(t),update:(t,o)=>e.update(t,j(o)),promise:(t,o)=>e.promise(t,{loading:j(o.loading),success:e=>j("function"==typeof o.success?o.success(e):o.success),error:e=>j("function"==typeof o.error?o.error(e):o.error)}),toasts:e.toasts}),[e])}function N({toast:o,variant:s,color:h,size:y,density:j,closeLabel:N,swipeDirection:_}){const T=o.data?.variant??s??"outline",z=o.data?.color??h,$=void 0===o.data?.icon?r[z]:o.data.icon,k=w[T],D=d(o.title);return t(i.Root,{toast:o,swipeDirection:_,className:["pointer-events-auto flex w-full items-start",n[j??"default"][y],u[y],x[y],f[y],g[T],m,"[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0","data-[limited]:hidden",c,"[outline:none]"].filter(Boolean).join(" "),style:l(z,3,T),children:[d($)?e("span",{className:`flex h-[1lh] shrink-0 items-center ${k}`,children:$}):null,t("div",{className:`flex min-w-0 flex-1 flex-col ${b[y]}`,children:[e(i.Title,{className:`neba-title font-semibold ${v[y]} ${k}`}),e(i.Description,{className:D?""+("solid"===T?"":"text-(--neba-muted-fg)"):""})]}),e(i.Action,{className:["flex h-[1lh] shrink-0 cursor-pointer items-center rounded-full px-2","font-medium underline-offset-2",k||"text-(--n-on-solid)","hover:underline","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2",p[y]].join(" ")}),e("span",{className:"flex h-[1lh] shrink-0 items-center",children:e(i.Close,{"aria-label":N,className:["inline-flex size-[1.15em] cursor-pointer items-center justify-center rounded-full","opacity-70 [transition:opacity_var(--neba-duration)_var(--neba-ease)]","hover:opacity-100 focus-visible:opacity-100","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" "),children:e(a,{})})})]})}function _(t){const{toasts:o}=i.useToastManager(),{position:n,width:s,...a}=t,r=[n.startsWith("top")?"up":"down","left","right"];return e(i.Portal,{children:e(i.Viewport,{className:["neba-portal pointer-events-none fixed inset-x-0 z-50 flex flex-col gap-2 p-4",y[n]].join(" "),children:o.map(t=>e("div",{className:"w-full",style:{maxWidth:"number"==typeof s?`${s}px`:s},children:e(N,{toast:t,swipeDirection:r,...a})},t.id))})})}export function ToastProvider({variant:o="outline",size:n="md",color:a="primary",density:r="default",position:l="bottom-end",timeout:c=5e3,limit:d=3,width:m=380,locale:p,closeLabel:u,children:f}){const b=s(p);return t(i.Provider,{timeout:c,limit:d,children:[f,e(_,{position:l,variant:o,size:n,color:a,density:r,width:m,closeLabel:u??b.action.close})]})}
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as o from"react";import{Toast as i}from"@base-ui/react/toast";import{boxPaddingClasses as n}from"../box/Box.js";import{actionMessages as s,useMessages as a}from"../../internal/i18n.js";import{CloseIcon as r,severityIcon as l}from"../../internal/icons.js";import{controlSlots as c,focusRingClasses as d,hasContent as m,iconClasses as p,metaTextClasses as u,radiusClasses as f,sheetBodyClasses as b,sheetHeaderGapClasses as x,sheetSectionGapClasses as v,sheetTitleClasses as h,surfaceClasses as y}from"../../internal/styles.js";const g={"top-start":"top-0 items-start","top-center":"top-0 items-center","top-end":"top-0 items-end","bottom-start":"bottom-0 items-start flex-col-reverse","bottom-center":"bottom-0 items-center flex-col-reverse","bottom-end":"bottom-0 items-end flex-col-reverse"},w={solid:[y,"text-(--n-on-solid) bg-(--n-fill)","[box-shadow:var(--neba-shadow-3),var(--neba-plate-solid)]"].join(" "),outline:[y,"border text-(--neba-fg) bg-(--n-panel-press)","[border-color:var(--n-line)]","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]"].join(" "),text:[y,"text-(--neba-fg) bg-(--n-panel-press)","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]"].join(" ")},j={solid:"",outline:"text-(--n-accent)",text:"text-(--n-accent)"};function N(e){const{color:t,variant:o,icon:i,actionLabel:n,onAction:s,...a}=e;return{...a,data:{color:t,variant:o,icon:i},actionProps:void 0===n?void 0:{children:n,onClick:s}}}export function useToast(){const e=i.useToastManager();return o.useMemo(()=>({add:t=>e.add(N(t)),close:t=>e.close(t),update:(t,o)=>e.update(t,N(o)),promise:(t,o)=>e.promise(t,{loading:N(o.loading),success:e=>N("function"==typeof o.success?o.success(e):o.success),error:e=>N("function"==typeof o.error?o.error(e):o.error)}),toasts:e.toasts}),[e])}function _({toast:o,variant:s,color:a,size:y,density:g,closeLabel:N,swipeDirection:_}){const T=o.data?.variant??s??"outline",z=o.data?.color??a,$=void 0===o.data?.icon?l(z):o.data.icon,k=j[T],D=m(o.title);return t(i.Root,{toast:o,swipeDirection:_,className:["pointer-events-auto flex w-full items-start",n[g??"default"][y],f[y],v[y],b[y],w[T],p,"[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0","data-[limited]:hidden",d,"[outline:none]"].filter(Boolean).join(" "),style:c(z,3,T),children:[m($)?e("span",{className:`flex h-[1lh] shrink-0 items-center ${k}`,children:$}):null,t("div",{className:`flex min-w-0 flex-1 flex-col ${x[y]}`,children:[e(i.Title,{className:`neba-title font-semibold ${h[y]} ${k}`}),e(i.Description,{className:D?""+("solid"===T?"":"text-(--neba-muted-fg)"):""})]}),e(i.Action,{className:["flex h-[1lh] shrink-0 cursor-pointer items-center rounded-full px-2","font-medium underline-offset-2",k||"text-(--n-on-solid)","hover:underline","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2",u[y]].join(" ")}),e("span",{className:"flex h-[1lh] shrink-0 items-center",children:e(i.Close,{"aria-label":N,className:["inline-flex size-[1.15em] cursor-pointer items-center justify-center rounded-full","opacity-70 [transition:opacity_var(--neba-duration)_var(--neba-ease)]","hover:opacity-100 focus-visible:opacity-100","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" "),children:e(r,{})})})]})}function T(t){const{toasts:o}=i.useToastManager(),{position:n,width:s,...a}=t,r=[n.startsWith("top")?"up":"down","left","right"];return e(i.Portal,{children:e(i.Viewport,{className:["neba-portal pointer-events-none fixed inset-x-0 z-50 flex flex-col gap-2 p-4",g[n]].join(" "),children:o.map(t=>e("div",{className:"w-full",style:{maxWidth:"number"==typeof s?`${s}px`:s},children:e(_,{toast:t,swipeDirection:r,...a})},t.id))})})}export function ToastProvider({variant:o="outline",size:n="md",color:r="primary",density:l="default",position:c="bottom-end",timeout:d=5e3,limit:m=3,width:p=380,locale:u,closeLabel:f,children:b}){const x=a(s,u);return t(i.Provider,{timeout:d,limit:m,children:[b,e(T,{position:c,variant:o,size:n,color:r,density:l,width:p,closeLabel:f??x.close})]})}
@@ -1,2 +1,2 @@
1
- export { ToastProvider, useToast } from './Toast';
2
- export type { ToastData, ToastOptions, ToastPosition, ToastProviderProps } from './Toast';
1
+ export { ToastProvider, useToast } from './Toast.js';
2
+ export type { ToastData, ToastOptions, ToastPosition, ToastProviderProps } from './Toast.js';
@@ -1 +1 @@
1
- export{ToastProvider,useToast}from"./Toast";
1
+ export{ToastProvider,useToast}from"./Toast.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { useRender } from '@base-ui/react/use-render';
3
- import type { NebaElevation, NebaPosition, NebaStyleProps } from '../../types';
3
+ import type { NebaElevation, NebaPosition, NebaStyleProps } from '../../types.js';
4
4
  export interface ToolbarProps extends NebaStyleProps, Omit<React.ComponentPropsWithoutRef<'div'>, 'color'> {
5
5
  /**
6
6
  * Drop shadow depth. `0` — the default — is flat even when the bar is pinned:
@@ -1 +1 @@
1
- import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import*as o from"react";import{useRender as n}from"@base-ui/react/use-render";import{boxPaddingXClasses as i,boxPaddingYClasses as a}from"../box/Box";import{hasContent as s,radiusClasses as l,sheetSectionGapClasses as d,surfaceClasses as m,surfaceSlots as c,transitionClasses as b}from"../../internal/styles";const p={solid:[m,"text-(--neba-fg) bg-(--n-panel-hover)","[box-shadow:var(--n-elev),var(--neba-plate-solid)]"].join(" "),outline:[m,"border text-(--neba-fg) bg-(--n-panel)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),text:"text-(--neba-fg) bg-transparent"},f={static:{top:"",bottom:""},sticky:{top:"sticky top-0 z-20",bottom:"sticky bottom-0 z-20"},fixed:{top:"fixed inset-x-0 top-0 z-30",bottom:"fixed inset-x-0 bottom-0 z-30"}},x={top:"border-b [border-color:var(--n-line)]",bottom:"border-t [border-color:var(--n-line)]"};export const Toolbar=o.forwardRef(function({variant:o="outline",size:m="md",color:v="primary",density:g="default",elevation:h=0,position:u="static",side:w="top",divider:y=!1,start:j,end:k,render:z,className:N,style:B,children:F,...R},T){const q=["flex w-full min-w-0 items-center",i[g][m],a[g][m],d[m],"static"===u?l[m]:"",p[o],y?x[w]:"",f[u][w],b,N??""].filter(Boolean).join(" ");return n({render:z,ref:T,props:{className:q,style:{...c(v,h),...B},children:r(t,{children:[s(j)?e("div",{className:"flex min-w-0 shrink-0 items-center gap-2",children:j}):null,e("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:F}),s(k)?e("div",{className:"flex min-w-0 shrink-0 items-center gap-2",children:k}):null]}),...R}})});
1
+ import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import*as o from"react";import{useRender as n}from"@base-ui/react/use-render";import{boxPaddingXClasses as i,boxPaddingYClasses as a}from"../box/Box.js";import{hasContent as s,radiusClasses as l,sheetSectionGapClasses as d,surfaceClasses as m,surfaceSlots as c,transitionClasses as b}from"../../internal/styles.js";const p={solid:[m,"text-(--neba-fg) bg-(--n-panel-hover)","[box-shadow:var(--n-elev),var(--neba-plate-solid)]"].join(" "),outline:[m,"border text-(--neba-fg) bg-(--n-panel)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),text:"text-(--neba-fg) bg-transparent"},f={static:{top:"",bottom:""},sticky:{top:"sticky top-0 z-20",bottom:"sticky bottom-0 z-20"},fixed:{top:"fixed inset-x-0 top-0 z-30",bottom:"fixed inset-x-0 bottom-0 z-30"}},x={top:"border-b [border-color:var(--n-line)]",bottom:"border-t [border-color:var(--n-line)]"};export const Toolbar=/*@__PURE__*/o.forwardRef(function({variant:o="outline",size:m="md",color:v="primary",density:g="default",elevation:h=0,position:u="static",side:j="top",divider:w=!1,start:y,end:k,render:z,className:N,style:B,children:F,...R},T){const q=["flex w-full min-w-0 items-center",i[g][m],a[g][m],d[m],"static"===u?l[m]:"",p[o],w?x[j]:"",f[u][j],b,N??""].filter(Boolean).join(" ");return n({render:z,ref:T,props:{className:q,style:{...c(v,h),...B},children:r(t,{children:[s(y)?e("div",{className:"flex min-w-0 shrink-0 items-center gap-2",children:y}):null,e("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:F}),s(k)?e("div",{className:"flex min-w-0 shrink-0 items-center gap-2",children:k}):null]}),...R}})});
@@ -1,2 +1,2 @@
1
- export { Toolbar } from './Toolbar';
2
- export type { ToolbarProps } from './Toolbar';
1
+ export { Toolbar } from './Toolbar.js';
2
+ export type { ToolbarProps } from './Toolbar.js';
@@ -1 +1 @@
1
- export{Toolbar}from"./Toolbar";
1
+ export{Toolbar}from"./Toolbar.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { Tooltip as BaseUITooltip } from '@base-ui/react/tooltip';
3
- import type { NebaAlign, NebaSide, NebaStyleProps } from '../../types';
3
+ import type { NebaAlign, NebaSide, NebaStyleProps } from '../../types.js';
4
4
  export interface TooltipProps extends Pick<NebaStyleProps, 'size' | 'color' | 'density'>, Omit<React.ComponentPropsWithoutRef<'div'>, 'color' | 'content' | 'children'> {
5
5
  /**
6
6
  * What the tooltip says.
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as a from"react";import{Tooltip as o}from"@base-ui/react/tooltip";import{controlSlots as i,metaTextClasses as s,paddingXClasses as n,radiusClasses as l,surfaceClasses as r}from"../../internal/styles";export const TooltipProvider=o.Provider;const d=[r,"max-w-64 text-(--n-on-solid) bg-(--n-fill)","[box-shadow:var(--neba-shadow-3),var(--neba-plate-solid)]","[outline:none]","[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0","data-[instant]:[transition-duration:0ms]"].join(" "),p={xs:"py-0.5",sm:"py-0.5",md:"py-1",lg:"py-1.5",xl:"py-2"},c={xs:6,sm:7,md:8,lg:9,xl:10};export function Tooltip({content:r,children:m,size:h="sm",color:y="secondary",density:f="default",side:x="top",align:b="center",sideOffset:g=6,delay:u,closeDelay:v,arrow:w=!0,open:j,defaultOpen:O,onOpenChange:N,disabled:P=!1,className:T,style:z,...B}){const C=c[h],D=a.useId(),[_,k]=a.useState(O??!1),A=j??_;return t(o.Root,{open:j,defaultOpen:O,onOpenChange:e=>{k(e),N?.(e)},children:[e(o.Trigger,{render:m,delay:u,closeDelay:v,disabled:P,"aria-describedby":A?D:void 0}),e(o.Portal,{children:e(o.Positioner,{className:"neba-portal z-50 [outline:none]",side:x,align:b,sideOffset:g,children:t(o.Popup,{id:D,role:"tooltip",className:[d,l[h],n[f][h],p[h],s[h],T??""].filter(Boolean).join(" "),style:{...i(y,3,"solid"),...z},...B,children:[w?e(o.Arrow,{className:["data-[side=top]:bottom-[-1px]","data-[side=bottom]:top-[-1px] data-[side=bottom]:rotate-180","data-[side=left]:right-[-1px] data-[side=left]:-rotate-90","data-[side=right]:left-[-1px] data-[side=right]:rotate-90"].join(" "),children:e("svg",{width:C,height:C/2,viewBox:"0 0 10 5","aria-hidden":"true",className:"block",children:e("path",{d:"M0 0h10L5 5z",fill:"var(--n-fill)"})})}):null,r]})})})]})}
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as a from"react";import{Tooltip as o}from"@base-ui/react/tooltip";import{controlSlots as i,metaTextClasses as s,paddingXClasses as n,radiusClasses as l,surfaceClasses as r}from"../../internal/styles.js";export const TooltipProvider=o.Provider;const d=[r,"max-w-64 text-(--n-on-solid) bg-(--n-fill)","[box-shadow:var(--neba-shadow-3),var(--neba-plate-solid)]","[outline:none]","[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0","data-[instant]:[transition-duration:0ms]"].join(" "),p={xs:"py-0.5",sm:"py-0.5",md:"py-1",lg:"py-1.5",xl:"py-2"},c={xs:6,sm:7,md:8,lg:9,xl:10};export function Tooltip({content:r,children:m,size:h="sm",color:y="secondary",density:f="default",side:x="top",align:b="center",sideOffset:g=6,delay:u,closeDelay:v,arrow:j=!0,open:w,defaultOpen:O,onOpenChange:N,disabled:P=!1,className:T,style:z,...B}){const C=c[h],D=a.useId(),[_,k]=a.useState(O??!1),A=w??_;return t(o.Root,{open:w,defaultOpen:O,onOpenChange:e=>{k(e),N?.(e)},children:[e(o.Trigger,{render:m,delay:u,closeDelay:v,disabled:P,"aria-describedby":A?D:void 0}),e(o.Portal,{children:e(o.Positioner,{className:"neba-portal z-50 [outline:none]",side:x,align:b,sideOffset:g,children:t(o.Popup,{id:D,role:"tooltip",className:[d,l[h],n[f][h],p[h],s[h],T??""].filter(Boolean).join(" "),style:{...i(y,3,"solid"),...z},...B,children:[j?e(o.Arrow,{className:["data-[side=top]:bottom-[-1px]","data-[side=bottom]:top-[-1px] data-[side=bottom]:rotate-180","data-[side=left]:right-[-1px] data-[side=left]:-rotate-90","data-[side=right]:left-[-1px] data-[side=right]:rotate-90"].join(" "),children:e("svg",{width:C,height:C/2,viewBox:"0 0 10 5","aria-hidden":"true",className:"block",children:e("path",{d:"M0 0h10L5 5z",fill:"var(--n-fill)"})})}):null,r]})})})]})}
@@ -1,2 +1,2 @@
1
- export { Tooltip, TooltipProvider } from './Tooltip';
2
- export type { TooltipProps, TooltipProviderProps } from './Tooltip';
1
+ export { Tooltip, TooltipProvider } from './Tooltip.js';
2
+ export type { TooltipProps, TooltipProviderProps } from './Tooltip.js';
@@ -1 +1 @@
1
- export{Tooltip,TooltipProvider}from"./Tooltip";
1
+ export{Tooltip,TooltipProvider}from"./Tooltip.js";
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { NebaElevation, NebaStyleProps } from '../../types';
2
+ import type { NebaElevation, NebaStyleProps } from '../../types.js';
3
3
  /**
4
4
  * How the hierarchy is drawn.
5
5
  *
@@ -1 +1 @@
1
- import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import*as n from"react";import{ChevronIcon as a}from"../../internal/icons";import{controlTextClasses as l,cx as s,gapClasses as o,hasContent as i,iconClasses as c,radiusClasses as d,surfaceClasses as u,surfaceSlots as m,transitionClasses as f}from"../../internal/styles";const p=n.createContext({size:"md",density:"default",disabled:!1,expandedKeys:new Set,selectedKeys:new Set,activeKey:null,toggle:()=>{},select:()=>{},activate:()=>{},register:()=>()=>{}}),x={solid:[u,"text-(--neba-fg) bg-(--n-panel-hover)","[box-shadow:var(--n-elev),var(--neba-plate-solid)]"].join(" "),outline:[u,"border text-(--neba-fg) bg-(--n-panel)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),text:"text-(--neba-fg) bg-transparent"},b={xs:"0.875rem",sm:"1rem",md:"1.25rem",lg:"1.5rem",xl:"1.75rem"},g={xs:"1.375rem",sm:"1.625rem",md:"2rem",lg:"2.5rem",xl:"3rem"},h={default:{xs:"px-1.5",sm:"px-2",md:"px-2.5",lg:"px-3",xl:"px-3.5"},compact:{xs:"px-1",sm:"px-1",md:"px-1.5",lg:"px-2",xl:"px-2.5"}},v={xs:"rounded-[0.3125rem]",sm:"rounded-[0.375rem]",md:"rounded-[0.5rem]",lg:"rounded-[0.625rem]",xl:"rounded-[0.75rem]"},w={none:"",simple:"neba-tree-simple",folder:"neba-tree-folder"};function y(e){return Array.from(e.querySelectorAll('[role="treeitem"]'))}const k=e=>String(e);export const TreeView=n.forwardRef(function({variant:t="outline",size:r="md",color:a="primary",density:l="default",elevation:o=0,lines:i="simple",expanded:c,defaultExpanded:u,onExpandedChange:h,selected:v,defaultSelected:C,onSelectedChange:N,multiple:S=!1,disabled:K=!1,label:A,className:D,style:j,children:R,onKeyDown:E,...I},P){const[V,z]=n.useState(u??[]),[_,L]=n.useState(C??[]),[M,T]=n.useState(null),q=c??V,F=v??_,H=n.useRef(null),O=n.useCallback(e=>{H.current=e,"function"==typeof P?P(e):P&&(P.current=e)},[P]),U=n.useCallback(e=>{const t=k(e),r=c??V,n=r.some(e=>k(e)===t)?r.filter(e=>k(e)!==t):[...r,e];void 0===c&&z(n),h?.(n)},[c,V,h]),B=n.useCallback(e=>{const t=k(e),r=v??_,n=r.some(e=>k(e)===t),a=S?n?r.filter(e=>k(e)!==t):[...r,e]:[e];void 0===v&&L(a),N?.(a)},[S,v,_,N]),G=n.useRef(new Map),J=n.useCallback((e,t)=>(G.current.set(e,t),()=>{G.current.delete(e)}),[]),Q=q.map(k).join("\0"),W=F.map(k).join("\0"),X=n.useMemo(()=>({size:r,density:l,disabled:K,expandedKeys:new Set(q.map(k)),selectedKeys:new Set(F.map(k)),activeKey:M,toggle:U,select:B,activate:T,register:J}),[r,l,K,Q,W,M,U,B,J]);n.useEffect(()=>{const e=H.current;if(!e)return;const t=y(e);0!==t.length&&(null!==M&&t.some(e=>e.dataset.nebaValue===M)||T(t[0].dataset.nebaValue??null))});const Y=s("flex list-none flex-col p-1",d[r],x[t],f,w[i],D);return e(p.Provider,{value:X,children:e("ul",{ref:O,role:"tree","aria-label":A,"aria-multiselectable":S||void 0,className:Y,style:{...m(a,o),"--n-tree-indent":b[r],"--n-tree-row":g[r],...j},onKeyDown:function(e){if(E?.(e),e.defaultPrevented)return;const t=H.current,r=e.target?.closest?.('[role="treeitem"]');if(!t||!r||!t.contains(r))return;const n=y(t),a=n.indexOf(r);if(-1===a)return;const l=t=>{t&&(e.preventDefault(),T(t.dataset.nebaValue??null),t.focus())},s=e=>{const t=e.dataset.nebaValue;t&&G.current.get(t)?.toggle()},o="rtl"===getComputedStyle(t).direction,i=o?"ArrowLeft":"ArrowRight",c=o?"ArrowRight":"ArrowLeft",d=r.getAttribute("aria-expanded");switch(e.key){case"ArrowDown":l(n[a+1]);break;case"ArrowUp":l(n[a-1]);break;case"Home":l(n[0]);break;case"End":l(n[n.length-1]);break;case i:"false"===d?(e.preventDefault(),s(r)):"true"===d&&l(n[a+1]);break;case c:"true"===d?(e.preventDefault(),s(r)):l(r.parentElement?.closest('[role="treeitem"]'));break;case"Enter":case" ":e.preventDefault(),r.click()}},...I,children:R})})});export const TreeItem=n.forwardRef(function({value:d,label:u,startIcon:m,endIcon:x,action:b,href:g,expandable:w,disabled:y=!1,className:C,children:N,onClick:S,...K},A){const{size:D,density:j,disabled:R,expandedKeys:E,selectedKeys:I,activeKey:P,toggle:V,select:z,activate:_,register:L}=n.useContext(p),M=n.useId(),T=d??M,q=k(T),F=n.useRef(null),H=n.useCallback(e=>{F.current=e,"function"==typeof A?A(e):A&&(A.current=e)},[A]),O=n.Children.toArray(N),U=w??O.length>0,B=U&&E.has(q),G=I.has(q),J=y||R,Q=n.useRef({toggle:()=>{}});Q.current.toggle=()=>{!J&&U&&V(T)},n.useEffect(()=>L(q,Q.current),[q,L]);const W=s("flex min-w-0 flex-1 cursor-pointer items-center text-start","h-(--n-tree-row)",h[j][D],v[D],o[D],l[D],f,c,"group-focus-visible/tree-item:[outline:2px_solid_var(--n-ring)]","group-focus-visible/tree-item:outline-offset-[-2px]",J?"cursor-not-allowed text-(--neba-disabled-fg)":G?"bg-(--n-soft-press) font-medium text-(--n-accent) hover:bg-(--n-soft-press)":"hover:bg-(--n-soft)"),X=r(t,{children:[e("span",{"aria-hidden":"true",onClick:e=>{!J&&U&&(e.stopPropagation(),e.preventDefault(),F.current?.focus(),_(q),V(T))},className:s("flex h-[1lh] w-[1.15em] shrink-0 items-center justify-center","[transition:rotate_var(--neba-duration)_var(--neba-ease)]",U?"text-(--neba-muted-fg)":"",B?"rotate-0":"-rotate-90 rtl:rotate-90"),children:U?e(a,{}):null}),i(m)?e("span",{className:"flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg)",children:m}):null,e("span",{className:"min-w-0 flex-1 truncate",children:u}),i(x)?e("span",{className:"flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg)",children:x}):null]});return r("li",{ref:H,role:"treeitem","aria-expanded":U?B:void 0,"aria-selected":!!G||void 0,"aria-disabled":J||void 0,"data-neba-value":q,tabIndex:P===q?0:-1,className:s("group/tree-item relative block [outline:none]",C),onClick:function(e){e.stopPropagation(),J?e.preventDefault():(F.current?.focus(),_(q),S?.(e),e.defaultPrevented||(U&&V(T),z(T)))},...K,children:[r("div",{className:"flex w-full items-center",children:[g&&!J?e("a",{href:g,tabIndex:-1,className:W,"aria-current":G?"page":void 0,children:X}):e("div",{className:W,children:X}),i(b)?e("span",{className:s("flex shrink-0 items-center",h[j][D]),onClick:e=>e.stopPropagation(),children:b}):null]}),U&&B&&O.length>0?e("ul",{role:"group",className:"list-none ps-(--n-tree-indent)",children:N}):null]})});
1
+ import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import*as n from"react";import{ChevronIcon as a}from"../../internal/icons.js";import{controlTextClasses as l,cx as s,gapClasses as o,hasContent as i,iconClasses as c,radiusClasses as d,surfaceClasses as u,surfaceSlots as m,transitionClasses as f}from"../../internal/styles.js";const p=/*@__PURE__*/n.createContext({size:"md",density:"default",disabled:!1,expandedKeys:new Set,selectedKeys:new Set,activeKey:null,toggle:()=>{},select:()=>{},activate:()=>{},register:()=>()=>{}}),x={solid:[u,"text-(--neba-fg) bg-(--n-panel-hover)","[box-shadow:var(--n-elev),var(--neba-plate-solid)]"].join(" "),outline:[u,"border text-(--neba-fg) bg-(--n-panel)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),text:"text-(--neba-fg) bg-transparent"},b={xs:"0.875rem",sm:"1rem",md:"1.25rem",lg:"1.5rem",xl:"1.75rem"},g={xs:"1.375rem",sm:"1.625rem",md:"2rem",lg:"2.5rem",xl:"3rem"},h={default:{xs:"px-1.5",sm:"px-2",md:"px-2.5",lg:"px-3",xl:"px-3.5"},compact:{xs:"px-1",sm:"px-1",md:"px-1.5",lg:"px-2",xl:"px-2.5"}},v={xs:"rounded-[0.3125rem]",sm:"rounded-[0.375rem]",md:"rounded-[0.5rem]",lg:"rounded-[0.625rem]",xl:"rounded-[0.75rem]"},w={none:"",simple:"neba-tree-simple",folder:"neba-tree-folder"};function y(e){return Array.from(e.querySelectorAll('[role="treeitem"]'))}const k=e=>String(e);export const TreeView=/*@__PURE__*/n.forwardRef(function({variant:t="outline",size:r="md",color:a="primary",density:l="default",elevation:o=0,lines:i="simple",expanded:c,defaultExpanded:u,onExpandedChange:h,selected:v,defaultSelected:C,onSelectedChange:N,multiple:S=!1,disabled:K=!1,label:j,className:A,style:D,children:R,onKeyDown:E,...I},P){const[V,z]=n.useState(u??[]),[_,L]=n.useState(C??[]),[M,T]=n.useState(null),q=c??V,F=v??_,H=n.useRef(null),O=n.useCallback(e=>{H.current=e,"function"==typeof P?P(e):P&&(P.current=e)},[P]),U=n.useCallback(e=>{const t=k(e),r=c??V,n=r.some(e=>k(e)===t)?r.filter(e=>k(e)!==t):[...r,e];void 0===c&&z(n),h?.(n)},[c,V,h]),B=n.useCallback(e=>{const t=k(e),r=v??_,n=r.some(e=>k(e)===t),a=S?n?r.filter(e=>k(e)!==t):[...r,e]:[e];void 0===v&&L(a),N?.(a)},[S,v,_,N]),G=n.useRef(new Map),J=n.useCallback((e,t)=>(G.current.set(e,t),()=>{G.current.delete(e)}),[]),Q=q.map(k).join("\0"),W=F.map(k).join("\0"),X=n.useMemo(()=>({size:r,density:l,disabled:K,expandedKeys:new Set(q.map(k)),selectedKeys:new Set(F.map(k)),activeKey:M,toggle:U,select:B,activate:T,register:J}),[r,l,K,Q,W,M,U,B,J]);n.useEffect(()=>{const e=H.current;if(!e)return;const t=y(e);0!==t.length&&(null!==M&&t.some(e=>e.dataset.nebaValue===M)||T(t[0].dataset.nebaValue??null))});const Y=s("flex list-none flex-col p-1",d[r],x[t],f,w[i],A);return e(p.Provider,{value:X,children:e("ul",{ref:O,role:"tree","aria-label":j,"aria-multiselectable":S||void 0,className:Y,style:{...m(a,o),"--n-tree-indent":b[r],"--n-tree-row":g[r],...D},onKeyDown:function(e){if(E?.(e),e.defaultPrevented)return;const t=H.current,r=e.target?.closest?.('[role="treeitem"]');if(!t||!r||!t.contains(r))return;const n=y(t),a=n.indexOf(r);if(-1===a)return;const l=t=>{t&&(e.preventDefault(),T(t.dataset.nebaValue??null),t.focus())},s=e=>{const t=e.dataset.nebaValue;t&&G.current.get(t)?.toggle()},o="rtl"===getComputedStyle(t).direction,i=o?"ArrowLeft":"ArrowRight",c=o?"ArrowRight":"ArrowLeft",d=r.getAttribute("aria-expanded");switch(e.key){case"ArrowDown":l(n[a+1]);break;case"ArrowUp":l(n[a-1]);break;case"Home":l(n[0]);break;case"End":l(n[n.length-1]);break;case i:"false"===d?(e.preventDefault(),s(r)):"true"===d&&l(n[a+1]);break;case c:"true"===d?(e.preventDefault(),s(r)):l(r.parentElement?.closest('[role="treeitem"]'));break;case"Enter":case" ":e.preventDefault(),r.click()}},...I,children:R})})});export const TreeItem=/*@__PURE__*/n.forwardRef(function({value:d,label:u,startIcon:m,endIcon:x,action:b,href:g,expandable:w,disabled:y=!1,className:C,children:N,onClick:S,...K},j){const{size:A,density:D,disabled:R,expandedKeys:E,selectedKeys:I,activeKey:P,toggle:V,select:z,activate:_,register:L}=n.useContext(p),M=n.useId(),T=d??M,q=k(T),F=n.useRef(null),H=n.useCallback(e=>{F.current=e,"function"==typeof j?j(e):j&&(j.current=e)},[j]),O=n.Children.toArray(N),U=w??O.length>0,B=U&&E.has(q),G=I.has(q),J=y||R,Q=n.useRef({toggle:()=>{}});Q.current.toggle=()=>{!J&&U&&V(T)},n.useEffect(()=>L(q,Q.current),[q,L]);const W=s("flex min-w-0 flex-1 cursor-pointer items-center text-start","h-(--n-tree-row)",h[D][A],v[A],o[A],l[A],f,c,"group-focus-visible/tree-item:[outline:2px_solid_var(--n-ring)]","group-focus-visible/tree-item:outline-offset-[-2px]",J?"cursor-not-allowed text-(--neba-disabled-fg)":G?"bg-(--n-soft-press) font-medium text-(--n-accent) hover:bg-(--n-soft-press)":"hover:bg-(--n-soft)"),X=r(t,{children:[e("span",{"aria-hidden":"true",onClick:e=>{!J&&U&&(e.stopPropagation(),e.preventDefault(),F.current?.focus(),_(q),V(T))},className:s("flex h-[1lh] w-[1.15em] shrink-0 items-center justify-center","[transition:rotate_var(--neba-duration)_var(--neba-ease)]",U?"text-(--neba-muted-fg)":"",B?"rotate-0":"-rotate-90 rtl:rotate-90"),children:U?e(a,{}):null}),i(m)?e("span",{className:"flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg)",children:m}):null,e("span",{className:"min-w-0 flex-1 truncate",children:u}),i(x)?e("span",{className:"flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg)",children:x}):null]});return r("li",{ref:H,role:"treeitem","aria-expanded":U?B:void 0,"aria-selected":!!G||void 0,"aria-disabled":J||void 0,"data-neba-value":q,tabIndex:P===q?0:-1,className:s("group/tree-item relative block [outline:none]",C),onClick:function(e){e.stopPropagation(),J?e.preventDefault():(F.current?.focus(),_(q),S?.(e),e.defaultPrevented||(U&&V(T),z(T)))},...K,children:[r("div",{className:"flex w-full items-center",children:[g&&!J?e("a",{href:g,tabIndex:-1,className:W,"aria-current":G?"page":void 0,children:X}):e("div",{className:W,children:X}),i(b)?e("span",{className:s("flex shrink-0 items-center",h[D][A]),onClick:e=>e.stopPropagation(),children:b}):null]}),U&&B&&O.length>0?e("ul",{role:"group",className:"list-none ps-(--n-tree-indent)",children:N}):null]})});
@@ -1,2 +1,2 @@
1
- export { TreeItem, TreeView } from './TreeView';
2
- export type { TreeItemProps, TreeViewLines, TreeViewProps, TreeViewValue } from './TreeView';
1
+ export { TreeItem, TreeView } from './TreeView.js';
2
+ export type { TreeItemProps, TreeViewLines, TreeViewProps, TreeViewValue } from './TreeView.js';
@@ -1 +1 @@
1
- export{TreeItem,TreeView}from"./TreeView";
1
+ export{TreeItem,TreeView}from"./TreeView.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { useRender } from '@base-ui/react/use-render';
3
- import type { NebaColor, NebaTransition } from '../../types';
3
+ import type { NebaColor, NebaTransition } from '../../types.js';
4
4
  /**
5
5
  * What a piece of text *is*, which decides both its type scale and the element
6
6
  * it renders as.
@@ -1 +1 @@
1
- import*as e from"react";import{useRender as t}from"@base-ui/react/use-render";import{transitionProps as r}from"../../internal/animate";const m={h1:"text-[1.875rem]/[2.25rem] tracking-[-0.02em]",h2:"text-[1.5rem]/[1.875rem] tracking-[-0.015em]",h3:"text-[1.25rem]/[1.625rem] tracking-[-0.01em]",h4:"text-[1.0625rem]/[1.5rem]",h5:"text-[0.9375rem]/[1.375rem]",h6:"text-[0.8125rem]/[1.25rem]",lead:"text-[1.0625rem]/[1.75rem]",body:"text-[0.8125rem]/[1.375rem]",caption:"text-[0.75rem]/[1.125rem]",overline:"text-[0.6875rem]/[1rem] tracking-[0.08em] uppercase"},n={h1:"semibold",h2:"semibold",h3:"semibold",h4:"semibold",h5:"semibold",h6:"semibold",lead:"regular",body:"regular",caption:"regular",overline:"medium"},a={h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",lead:"p",body:"p",caption:"span",overline:"span"},l=new Set(["caption","overline"]),o={h1:"mb-4",h2:"mb-3.5",h3:"mb-3",h4:"mb-2.5",h5:"mb-2",h6:"mb-2",lead:"mb-4",body:"mb-3",caption:"mb-2",overline:"mb-2"},i={regular:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},c={start:"text-start",center:"text-center",end:"text-end",justify:"text-justify"},h={1:"truncate",2:"line-clamp-2",3:"line-clamp-3",4:"line-clamp-4",5:"line-clamp-5",6:"line-clamp-6"};export const Typography=e.forwardRef(function({level:s="body",color:d,weight:b,align:p,lines:x,gutter:u=!1,transition:f,render:g,className:y,style:v,children:k,...j},w){const N=r(f),B=[m[s],i[b??n[s]],p?c[p]:"",x?h[x]??"line-clamp-6":"",u?o[s]:"",d?"text-(--n-accent)":l.has(s)?"text-(--neba-muted-fg)":"text-(--neba-fg)",N.className,y??""].filter(Boolean).join(" ");return t({render:g??e.createElement(a[s]),ref:w,props:{className:B,style:d?{"--n-accent":`var(--neba-${d}-accent)`,...N.style,...v}:{...N.style,...v},children:k,...j}})});
1
+ import*as e from"react";import{useRender as t}from"@base-ui/react/use-render";import{transitionProps as r}from"../../internal/animate.js";const m={h1:"text-[1.875rem]/[2.25rem] tracking-[-0.02em]",h2:"text-[1.5rem]/[1.875rem] tracking-[-0.015em]",h3:"text-[1.25rem]/[1.625rem] tracking-[-0.01em]",h4:"text-[1.0625rem]/[1.5rem]",h5:"text-[0.9375rem]/[1.375rem]",h6:"text-[0.8125rem]/[1.25rem]",lead:"text-[1.0625rem]/[1.75rem]",body:"text-[0.8125rem]/[1.375rem]",caption:"text-[0.75rem]/[1.125rem]",overline:"text-[0.6875rem]/[1rem] tracking-[0.08em] uppercase"},n={h1:"semibold",h2:"semibold",h3:"semibold",h4:"semibold",h5:"semibold",h6:"semibold",lead:"regular",body:"regular",caption:"regular",overline:"medium"},a={h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",lead:"p",body:"p",caption:"span",overline:"span"},l=new Set(["caption","overline"]),o={h1:"mb-4",h2:"mb-3.5",h3:"mb-3",h4:"mb-2.5",h5:"mb-2",h6:"mb-2",lead:"mb-4",body:"mb-3",caption:"mb-2",overline:"mb-2"},i={regular:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},c={start:"text-start",center:"text-center",end:"text-end",justify:"text-justify"},s={1:"truncate",2:"line-clamp-2",3:"line-clamp-3",4:"line-clamp-4",5:"line-clamp-5",6:"line-clamp-6"};export const Typography=/*@__PURE__*/e.forwardRef(function({level:h="body",color:d,weight:b,align:p,lines:x,gutter:u=!1,transition:f,render:g,className:y,style:v,children:j,...k},w){const N=r(f),B=[m[h],i[b??n[h]],p?c[p]:"",x?s[x]??"line-clamp-6":"",u?o[h]:"",d?"text-(--n-accent)":l.has(h)?"text-(--neba-muted-fg)":"text-(--neba-fg)",N.className,y??""].filter(Boolean).join(" ");return t({render:g??e.createElement(a[h]),ref:w,props:{className:B,style:d?{"--n-accent":`var(--neba-${d}-accent)`,...N.style,...v}:{...N.style,...v},children:j,...k}})});
@@ -1,2 +1,2 @@
1
- export { Typography } from './Typography';
2
- export type { TypographyAlign, TypographyLevel, TypographyProps, TypographyWeight } from './Typography';
1
+ export { Typography } from './Typography.js';
2
+ export type { TypographyAlign, TypographyLevel, TypographyProps, TypographyWeight } from './Typography.js';
@@ -1 +1 @@
1
- export{Typography}from"./Typography";
1
+ export{Typography}from"./Typography.js";