neba 1.6.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/README.md +37 -6
  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/app-logo/AppLogo.d.ts +148 -0
  55. package/dist/components/app-logo/AppLogo.js +1 -0
  56. package/dist/components/app-logo/index.d.ts +2 -0
  57. package/dist/components/app-logo/index.js +1 -0
  58. package/dist/components/area-chart/AreaChart.d.ts +3 -3
  59. package/dist/components/area-chart/AreaChart.js +1 -1
  60. package/dist/components/area-chart/index.d.ts +2 -2
  61. package/dist/components/area-chart/index.js +1 -1
  62. package/dist/components/aspect-ratio/AspectRatio.d.ts +1 -1
  63. package/dist/components/aspect-ratio/AspectRatio.js +1 -1
  64. package/dist/components/aspect-ratio/index.d.ts +2 -2
  65. package/dist/components/aspect-ratio/index.js +1 -1
  66. package/dist/components/avatar/Avatar.d.ts +1 -1
  67. package/dist/components/avatar/Avatar.js +1 -1
  68. package/dist/components/avatar/index.d.ts +2 -2
  69. package/dist/components/avatar/index.js +1 -1
  70. package/dist/components/badge/Badge.d.ts +1 -1
  71. package/dist/components/badge/Badge.js +1 -1
  72. package/dist/components/badge/index.d.ts +2 -2
  73. package/dist/components/badge/index.js +1 -1
  74. package/dist/components/bar-chart/BarChart.d.ts +2 -2
  75. package/dist/components/bar-chart/BarChart.js +1 -1
  76. package/dist/components/bar-chart/index.d.ts +2 -2
  77. package/dist/components/bar-chart/index.js +1 -1
  78. package/dist/components/blockquote/Blockquote.d.ts +1 -1
  79. package/dist/components/blockquote/Blockquote.js +1 -1
  80. package/dist/components/blockquote/index.d.ts +2 -2
  81. package/dist/components/blockquote/index.js +1 -1
  82. package/dist/components/bottom-navigation/BottomNavigation.d.ts +3 -3
  83. package/dist/components/bottom-navigation/BottomNavigation.js +1 -1
  84. package/dist/components/bottom-navigation/index.d.ts +1 -1
  85. package/dist/components/bottom-navigation/index.js +1 -1
  86. package/dist/components/box/Box.d.ts +1 -1
  87. package/dist/components/box/Box.js +1 -1
  88. package/dist/components/box/index.d.ts +2 -2
  89. package/dist/components/box/index.js +1 -1
  90. package/dist/components/breadcrumb/Breadcrumb.d.ts +1 -1
  91. package/dist/components/breadcrumb/Breadcrumb.js +1 -1
  92. package/dist/components/breadcrumb/index.d.ts +2 -2
  93. package/dist/components/breadcrumb/index.js +1 -1
  94. package/dist/components/button/Button.d.ts +1 -1
  95. package/dist/components/button/Button.js +1 -1
  96. package/dist/components/button/index.d.ts +2 -2
  97. package/dist/components/button/index.js +1 -1
  98. package/dist/components/button-group/ButtonGroup.d.ts +1 -1
  99. package/dist/components/button-group/ButtonGroup.js +1 -1
  100. package/dist/components/button-group/index.d.ts +2 -2
  101. package/dist/components/button-group/index.js +1 -1
  102. package/dist/components/card/Card.d.ts +1 -1
  103. package/dist/components/card/Card.js +1 -1
  104. package/dist/components/card/index.d.ts +2 -2
  105. package/dist/components/card/index.js +1 -1
  106. package/dist/components/carousel/Carousel.d.ts +1 -1
  107. package/dist/components/carousel/Carousel.js +1 -1
  108. package/dist/components/carousel/index.d.ts +2 -2
  109. package/dist/components/carousel/index.js +1 -1
  110. package/dist/components/chat-bubble/ChatBubble.d.ts +1 -1
  111. package/dist/components/chat-bubble/ChatBubble.js +1 -1
  112. package/dist/components/chat-bubble/index.d.ts +2 -2
  113. package/dist/components/chat-bubble/index.js +1 -1
  114. package/dist/components/checkbox/Checkbox.d.ts +1 -1
  115. package/dist/components/checkbox/Checkbox.js +1 -1
  116. package/dist/components/checkbox/index.d.ts +2 -2
  117. package/dist/components/checkbox/index.js +1 -1
  118. package/dist/components/chip/Chip.d.ts +1 -1
  119. package/dist/components/chip/Chip.js +1 -1
  120. package/dist/components/chip/index.d.ts +2 -2
  121. package/dist/components/chip/index.js +1 -1
  122. package/dist/components/code-block/CodeBlock.d.ts +170 -0
  123. package/dist/components/code-block/CodeBlock.js +1 -0
  124. package/dist/components/code-block/index.d.ts +2 -0
  125. package/dist/components/code-block/index.js +1 -0
  126. package/dist/components/collapsible/Collapsible.d.ts +1 -1
  127. package/dist/components/collapsible/Collapsible.js +1 -1
  128. package/dist/components/collapsible/index.d.ts +1 -1
  129. package/dist/components/collapsible/index.js +1 -1
  130. package/dist/components/color-picker/ColorPicker.d.ts +3 -3
  131. package/dist/components/color-picker/ColorPicker.js +1 -1
  132. package/dist/components/color-picker/index.d.ts +2 -2
  133. package/dist/components/color-picker/index.js +1 -1
  134. package/dist/components/combobox/Combobox.d.ts +1 -1
  135. package/dist/components/combobox/Combobox.js +1 -1
  136. package/dist/components/combobox/index.d.ts +2 -2
  137. package/dist/components/combobox/index.js +1 -1
  138. package/dist/components/container/Container.d.ts +1 -1
  139. package/dist/components/container/Container.js +1 -1
  140. package/dist/components/container/index.d.ts +2 -2
  141. package/dist/components/container/index.js +1 -1
  142. package/dist/components/data-table/DataTable.d.ts +1 -1
  143. package/dist/components/data-table/DataTable.js +1 -1
  144. package/dist/components/data-table/index.d.ts +2 -2
  145. package/dist/components/data-table/index.js +1 -1
  146. package/dist/components/date-picker/DatePicker.d.ts +3 -3
  147. package/dist/components/date-picker/DatePicker.js +1 -1
  148. package/dist/components/date-picker/index.d.ts +2 -2
  149. package/dist/components/date-picker/index.js +1 -1
  150. package/dist/components/date-range-picker/DateRangePicker.d.ts +3 -3
  151. package/dist/components/date-range-picker/DateRangePicker.js +1 -1
  152. package/dist/components/date-range-picker/index.d.ts +2 -2
  153. package/dist/components/date-range-picker/index.js +1 -1
  154. package/dist/components/date-time-picker/DateTimePicker.d.ts +4 -4
  155. package/dist/components/date-time-picker/DateTimePicker.js +1 -1
  156. package/dist/components/date-time-picker/index.d.ts +2 -2
  157. package/dist/components/date-time-picker/index.js +1 -1
  158. package/dist/components/dialog/Dialog.d.ts +1 -1
  159. package/dist/components/dialog/Dialog.js +1 -1
  160. package/dist/components/dialog/index.d.ts +2 -2
  161. package/dist/components/dialog/index.js +1 -1
  162. package/dist/components/divider/Divider.d.ts +1 -1
  163. package/dist/components/divider/Divider.js +1 -1
  164. package/dist/components/divider/index.d.ts +2 -2
  165. package/dist/components/divider/index.js +1 -1
  166. package/dist/components/drawer/Drawer.d.ts +1 -1
  167. package/dist/components/drawer/Drawer.js +1 -1
  168. package/dist/components/drawer/index.d.ts +2 -2
  169. package/dist/components/drawer/index.js +1 -1
  170. package/dist/components/empty/Empty.d.ts +1 -1
  171. package/dist/components/empty/Empty.js +1 -1
  172. package/dist/components/empty/index.d.ts +2 -2
  173. package/dist/components/empty/index.js +1 -1
  174. package/dist/components/file-picker/FilePicker.d.ts +1 -1
  175. package/dist/components/file-picker/FilePicker.js +1 -1
  176. package/dist/components/file-picker/index.d.ts +2 -2
  177. package/dist/components/file-picker/index.js +1 -1
  178. package/dist/components/floating-action-button/FloatingActionButton.d.ts +1 -1
  179. package/dist/components/floating-action-button/FloatingActionButton.js +1 -1
  180. package/dist/components/floating-action-button/index.d.ts +1 -1
  181. package/dist/components/floating-action-button/index.js +1 -1
  182. package/dist/components/floating-bottom-navigation/FloatingBottomNavigation.d.ts +2 -2
  183. package/dist/components/floating-bottom-navigation/FloatingBottomNavigation.js +1 -1
  184. package/dist/components/floating-bottom-navigation/index.d.ts +2 -2
  185. package/dist/components/floating-bottom-navigation/index.js +1 -1
  186. package/dist/components/footer/Footer.d.ts +85 -0
  187. package/dist/components/footer/Footer.js +1 -0
  188. package/dist/components/footer/index.d.ts +2 -0
  189. package/dist/components/footer/index.js +1 -0
  190. package/dist/components/grid/Grid.d.ts +1 -1
  191. package/dist/components/grid/Grid.js +1 -1
  192. package/dist/components/grid/index.d.ts +2 -2
  193. package/dist/components/grid/index.js +1 -1
  194. package/dist/components/grid-container/GridContainer.d.ts +1 -1
  195. package/dist/components/grid-container/GridContainer.js +1 -1
  196. package/dist/components/grid-container/index.d.ts +2 -2
  197. package/dist/components/grid-container/index.js +1 -1
  198. package/dist/components/header/Header.d.ts +114 -0
  199. package/dist/components/header/Header.js +1 -0
  200. package/dist/components/header/index.d.ts +2 -0
  201. package/dist/components/header/index.js +1 -0
  202. package/dist/components/heatmap-chart/HeatmapChart.d.ts +3 -3
  203. package/dist/components/heatmap-chart/HeatmapChart.js +1 -1
  204. package/dist/components/heatmap-chart/index.d.ts +2 -2
  205. package/dist/components/heatmap-chart/index.js +1 -1
  206. package/dist/components/highlight/Highlight.d.ts +2 -2
  207. package/dist/components/highlight/Highlight.js +1 -1
  208. package/dist/components/highlight/index.d.ts +2 -2
  209. package/dist/components/highlight/index.js +1 -1
  210. package/dist/components/how-to-steps/HowToSteps.d.ts +167 -0
  211. package/dist/components/how-to-steps/HowToSteps.js +1 -0
  212. package/dist/components/how-to-steps/index.d.ts +2 -0
  213. package/dist/components/how-to-steps/index.js +1 -0
  214. package/dist/components/icon/Icon.d.ts +1 -1
  215. package/dist/components/icon/Icon.js +1 -1
  216. package/dist/components/icon/index.d.ts +2 -2
  217. package/dist/components/icon/index.js +1 -1
  218. package/dist/components/icon-button/IconButton.d.ts +1 -1
  219. package/dist/components/icon-button/IconButton.js +1 -1
  220. package/dist/components/icon-button/index.d.ts +2 -2
  221. package/dist/components/icon-button/index.js +1 -1
  222. package/dist/components/line-chart/LineChart.d.ts +3 -3
  223. package/dist/components/line-chart/LineChart.js +1 -1
  224. package/dist/components/line-chart/index.d.ts +2 -2
  225. package/dist/components/line-chart/index.js +1 -1
  226. package/dist/components/list/List.d.ts +1 -1
  227. package/dist/components/list/List.js +1 -1
  228. package/dist/components/list/index.d.ts +2 -2
  229. package/dist/components/list/index.js +1 -1
  230. package/dist/components/menu/Menu.d.ts +1 -1
  231. package/dist/components/menu/Menu.js +1 -1
  232. package/dist/components/menu/index.d.ts +2 -2
  233. package/dist/components/menu/index.js +1 -1
  234. package/dist/components/mockup/Mockup.d.ts +3 -3
  235. package/dist/components/mockup/Mockup.js +1 -1
  236. package/dist/components/mockup/index.d.ts +2 -2
  237. package/dist/components/mockup/index.js +1 -1
  238. package/dist/components/number-field/NumberField.d.ts +1 -1
  239. package/dist/components/number-field/NumberField.js +1 -1
  240. package/dist/components/number-field/index.d.ts +2 -2
  241. package/dist/components/number-field/index.js +1 -1
  242. package/dist/components/otp-field/OtpField.d.ts +1 -1
  243. package/dist/components/otp-field/OtpField.js +1 -1
  244. package/dist/components/otp-field/index.d.ts +2 -2
  245. package/dist/components/otp-field/index.js +1 -1
  246. package/dist/components/overlay/Overlay.d.ts +1 -1
  247. package/dist/components/overlay/Overlay.js +1 -1
  248. package/dist/components/overlay/index.d.ts +2 -2
  249. package/dist/components/overlay/index.js +1 -1
  250. package/dist/components/page-layout/PageLayout.d.ts +144 -0
  251. package/dist/components/page-layout/PageLayout.js +1 -0
  252. package/dist/components/page-layout/index.d.ts +2 -0
  253. package/dist/components/page-layout/index.js +1 -0
  254. package/dist/components/pagination/Pagination.d.ts +1 -1
  255. package/dist/components/pagination/Pagination.js +1 -1
  256. package/dist/components/pagination/index.d.ts +2 -2
  257. package/dist/components/pagination/index.js +1 -1
  258. package/dist/components/panes/Panes.d.ts +1 -1
  259. package/dist/components/panes/Panes.js +1 -1
  260. package/dist/components/panes/index.d.ts +2 -2
  261. package/dist/components/panes/index.js +1 -1
  262. package/dist/components/pie-chart/PieChart.d.ts +2 -2
  263. package/dist/components/pie-chart/PieChart.js +1 -1
  264. package/dist/components/pie-chart/index.d.ts +2 -2
  265. package/dist/components/pie-chart/index.js +1 -1
  266. package/dist/components/pill/Pill.d.ts +1 -1
  267. package/dist/components/pill/Pill.js +1 -1
  268. package/dist/components/pill/index.d.ts +2 -2
  269. package/dist/components/pill/index.js +1 -1
  270. package/dist/components/popover/Popover.d.ts +1 -1
  271. package/dist/components/popover/Popover.js +1 -1
  272. package/dist/components/popover/index.d.ts +2 -2
  273. package/dist/components/popover/index.js +1 -1
  274. package/dist/components/progress-box/ProgressBox.d.ts +2 -2
  275. package/dist/components/progress-box/ProgressBox.js +1 -1
  276. package/dist/components/progress-box/index.d.ts +2 -2
  277. package/dist/components/progress-box/index.js +1 -1
  278. package/dist/components/progress-circular/ProgressCircular.d.ts +2 -2
  279. package/dist/components/progress-circular/ProgressCircular.js +1 -1
  280. package/dist/components/progress-circular/index.d.ts +2 -2
  281. package/dist/components/progress-circular/index.js +1 -1
  282. package/dist/components/progress-linear/ProgressLinear.d.ts +2 -2
  283. package/dist/components/progress-linear/ProgressLinear.js +1 -1
  284. package/dist/components/progress-linear/index.d.ts +2 -2
  285. package/dist/components/progress-linear/index.js +1 -1
  286. package/dist/components/radio-group/RadioGroup.d.ts +1 -1
  287. package/dist/components/radio-group/RadioGroup.js +1 -1
  288. package/dist/components/radio-group/index.d.ts +2 -2
  289. package/dist/components/radio-group/index.js +1 -1
  290. package/dist/components/rating/Rating.d.ts +1 -1
  291. package/dist/components/rating/Rating.js +1 -1
  292. package/dist/components/rating/index.d.ts +1 -1
  293. package/dist/components/rating/index.js +1 -1
  294. package/dist/components/scatter-chart/ScatterChart.d.ts +2 -2
  295. package/dist/components/scatter-chart/ScatterChart.js +1 -1
  296. package/dist/components/scatter-chart/index.d.ts +2 -2
  297. package/dist/components/scatter-chart/index.js +1 -1
  298. package/dist/components/scroll-zone/ScrollZone.d.ts +1 -1
  299. package/dist/components/scroll-zone/ScrollZone.js +1 -1
  300. package/dist/components/scroll-zone/index.d.ts +2 -2
  301. package/dist/components/scroll-zone/index.js +1 -1
  302. package/dist/components/segmented-button/SegmentedButton.d.ts +1 -1
  303. package/dist/components/segmented-button/SegmentedButton.js +1 -1
  304. package/dist/components/segmented-button/index.d.ts +2 -2
  305. package/dist/components/segmented-button/index.js +1 -1
  306. package/dist/components/select/Select.d.ts +1 -1
  307. package/dist/components/select/Select.js +1 -1
  308. package/dist/components/select/index.d.ts +2 -2
  309. package/dist/components/select/index.js +1 -1
  310. package/dist/components/shortcut/Shortcut.d.ts +1 -1
  311. package/dist/components/shortcut/Shortcut.js +1 -1
  312. package/dist/components/shortcut/index.d.ts +2 -2
  313. package/dist/components/shortcut/index.js +1 -1
  314. package/dist/components/sidebar/Sidebar.d.ts +144 -0
  315. package/dist/components/sidebar/Sidebar.js +1 -0
  316. package/dist/components/sidebar/SidebarTrigger.d.ts +36 -0
  317. package/dist/components/sidebar/SidebarTrigger.js +1 -0
  318. package/dist/components/sidebar/index.d.ts +4 -0
  319. package/dist/components/sidebar/index.js +1 -0
  320. package/dist/components/skeleton/Skeleton.d.ts +1 -1
  321. package/dist/components/skeleton/Skeleton.js +1 -1
  322. package/dist/components/skeleton/index.d.ts +2 -2
  323. package/dist/components/skeleton/index.js +1 -1
  324. package/dist/components/slider/Slider.d.ts +1 -1
  325. package/dist/components/slider/Slider.js +1 -1
  326. package/dist/components/slider/index.d.ts +2 -2
  327. package/dist/components/slider/index.js +1 -1
  328. package/dist/components/sparkline/Sparkline.d.ts +1 -1
  329. package/dist/components/sparkline/Sparkline.js +1 -1
  330. package/dist/components/sparkline/index.d.ts +2 -2
  331. package/dist/components/sparkline/index.js +1 -1
  332. package/dist/components/spoiler/Spoiler.d.ts +1 -1
  333. package/dist/components/spoiler/Spoiler.js +1 -1
  334. package/dist/components/spoiler/index.d.ts +2 -2
  335. package/dist/components/spoiler/index.js +1 -1
  336. package/dist/components/statistic/Statistic.d.ts +2 -2
  337. package/dist/components/statistic/Statistic.js +1 -1
  338. package/dist/components/statistic/index.d.ts +2 -2
  339. package/dist/components/statistic/index.js +1 -1
  340. package/dist/components/switch/Switch.d.ts +1 -1
  341. package/dist/components/switch/Switch.js +1 -1
  342. package/dist/components/switch/index.d.ts +2 -2
  343. package/dist/components/switch/index.js +1 -1
  344. package/dist/components/table/Table.d.ts +2 -2
  345. package/dist/components/table/Table.js +1 -1
  346. package/dist/components/table/index.d.ts +2 -2
  347. package/dist/components/table/index.js +1 -1
  348. package/dist/components/tabs/Tabs.d.ts +1 -1
  349. package/dist/components/tabs/Tabs.js +1 -1
  350. package/dist/components/tabs/index.d.ts +2 -2
  351. package/dist/components/tabs/index.js +1 -1
  352. package/dist/components/text-field/TextField.d.ts +1 -1
  353. package/dist/components/text-field/TextField.js +1 -1
  354. package/dist/components/text-field/index.d.ts +2 -2
  355. package/dist/components/text-field/index.js +1 -1
  356. package/dist/components/text-link/TextLink.d.ts +1 -1
  357. package/dist/components/text-link/TextLink.js +1 -1
  358. package/dist/components/text-link/index.d.ts +2 -2
  359. package/dist/components/text-link/index.js +1 -1
  360. package/dist/components/time-picker/TimePicker.d.ts +2 -2
  361. package/dist/components/time-picker/TimePicker.js +1 -1
  362. package/dist/components/time-picker/index.d.ts +2 -2
  363. package/dist/components/time-picker/index.js +1 -1
  364. package/dist/components/timeline/Timeline.d.ts +1 -1
  365. package/dist/components/timeline/Timeline.js +1 -1
  366. package/dist/components/timeline/index.d.ts +2 -2
  367. package/dist/components/timeline/index.js +1 -1
  368. package/dist/components/timeline-chart/TimelineChart.d.ts +2 -2
  369. package/dist/components/timeline-chart/TimelineChart.js +1 -1
  370. package/dist/components/timeline-chart/index.d.ts +2 -2
  371. package/dist/components/timeline-chart/index.js +1 -1
  372. package/dist/components/toast/Toast.d.ts +1 -1
  373. package/dist/components/toast/Toast.js +1 -1
  374. package/dist/components/toast/index.d.ts +2 -2
  375. package/dist/components/toast/index.js +1 -1
  376. package/dist/components/toolbar/Toolbar.d.ts +1 -1
  377. package/dist/components/toolbar/Toolbar.js +1 -1
  378. package/dist/components/toolbar/index.d.ts +2 -2
  379. package/dist/components/toolbar/index.js +1 -1
  380. package/dist/components/tooltip/Tooltip.d.ts +1 -1
  381. package/dist/components/tooltip/Tooltip.js +1 -1
  382. package/dist/components/tooltip/index.d.ts +2 -2
  383. package/dist/components/tooltip/index.js +1 -1
  384. package/dist/components/tree-view/TreeView.d.ts +1 -1
  385. package/dist/components/tree-view/TreeView.js +1 -1
  386. package/dist/components/tree-view/index.d.ts +2 -2
  387. package/dist/components/tree-view/index.js +1 -1
  388. package/dist/components/typography/Typography.d.ts +1 -1
  389. package/dist/components/typography/Typography.js +1 -1
  390. package/dist/components/typography/index.d.ts +2 -2
  391. package/dist/components/typography/index.js +1 -1
  392. package/dist/components/window-pane/WindowPane.d.ts +3 -3
  393. package/dist/components/window-pane/WindowPane.js +1 -1
  394. package/dist/components/window-pane/index.d.ts +2 -2
  395. package/dist/components/window-pane/index.js +1 -1
  396. package/dist/index.d.ts +99 -92
  397. package/dist/index.js +1 -1
  398. package/dist/internal/animate.d.ts +1 -1
  399. package/dist/internal/bottom-navigation.d.ts +5 -4
  400. package/dist/internal/bottom-navigation.js +1 -1
  401. package/dist/internal/button-group.d.ts +1 -1
  402. package/dist/internal/button-group.js +1 -1
  403. package/dist/internal/calendar.d.ts +2 -2
  404. package/dist/internal/calendar.js +1 -1
  405. package/dist/internal/chart-frame.d.ts +3 -3
  406. package/dist/internal/chart-frame.js +1 -1
  407. package/dist/internal/chart-line.d.ts +2 -2
  408. package/dist/internal/chart-line.js +1 -1
  409. package/dist/internal/chart.d.ts +4 -3
  410. package/dist/internal/chart.js +1 -1
  411. package/dist/internal/color.d.ts +2 -2
  412. package/dist/internal/data-table.d.ts +1 -1
  413. package/dist/internal/date.d.ts +4 -5
  414. package/dist/internal/date.js +1 -1
  415. package/dist/internal/grid.d.ts +1 -1
  416. package/dist/internal/highlight.d.ts +97 -0
  417. package/dist/internal/highlight.js +1 -0
  418. package/dist/internal/i18n.d.ts +427 -229
  419. package/dist/internal/i18n.js +1 -1
  420. package/dist/internal/icons.d.ts +38 -2
  421. package/dist/internal/icons.js +1 -1
  422. package/dist/internal/initials.d.ts +24 -0
  423. package/dist/internal/initials.js +1 -0
  424. package/dist/internal/menu.d.ts +1 -1
  425. package/dist/internal/menu.js +1 -1
  426. package/dist/internal/mockup.d.ts +1 -1
  427. package/dist/internal/page-layout.d.ts +143 -0
  428. package/dist/internal/page-layout.js +1 -0
  429. package/dist/internal/picker.d.ts +2 -2
  430. package/dist/internal/picker.js +1 -1
  431. package/dist/internal/progress.d.ts +1 -1
  432. package/dist/internal/styles.d.ts +12 -1
  433. package/dist/internal/styles.js +1 -1
  434. package/dist/internal/window.d.ts +1 -1
  435. package/dist/internal/window.js +1 -1
  436. package/dist/locales/ar.d.ts +14 -0
  437. package/dist/locales/ar.js +1 -0
  438. package/dist/locales/de.d.ts +14 -0
  439. package/dist/locales/de.js +1 -0
  440. package/dist/locales/es.d.ts +14 -0
  441. package/dist/locales/es.js +1 -0
  442. package/dist/locales/fr.d.ts +14 -0
  443. package/dist/locales/fr.js +1 -0
  444. package/dist/locales/hi.d.ts +14 -0
  445. package/dist/locales/hi.js +1 -0
  446. package/dist/locales/id.d.ts +14 -0
  447. package/dist/locales/id.js +1 -0
  448. package/dist/locales/index.d.ts +45 -0
  449. package/dist/locales/index.js +1 -0
  450. package/dist/locales/it.d.ts +14 -0
  451. package/dist/locales/it.js +1 -0
  452. package/dist/locales/ja.d.ts +14 -0
  453. package/dist/locales/ja.js +1 -0
  454. package/dist/locales/ko.d.ts +14 -0
  455. package/dist/locales/ko.js +1 -0
  456. package/dist/locales/nl.d.ts +14 -0
  457. package/dist/locales/nl.js +1 -0
  458. package/dist/locales/pl.d.ts +14 -0
  459. package/dist/locales/pl.js +1 -0
  460. package/dist/locales/pt.d.ts +14 -0
  461. package/dist/locales/pt.js +1 -0
  462. package/dist/locales/ru.d.ts +14 -0
  463. package/dist/locales/ru.js +1 -0
  464. package/dist/locales/th.d.ts +14 -0
  465. package/dist/locales/th.js +1 -0
  466. package/dist/locales/tr.d.ts +14 -0
  467. package/dist/locales/tr.js +1 -0
  468. package/dist/locales/vi.d.ts +14 -0
  469. package/dist/locales/vi.js +1 -0
  470. package/dist/locales/zh-hans.d.ts +17 -0
  471. package/dist/locales/zh-hans.js +1 -0
  472. package/dist/locales/zh-hant.d.ts +17 -0
  473. package/dist/locales/zh-hant.js +1 -0
  474. package/dist/styles.css +1 -1
  475. package/dist/tailwind.css +473 -0
  476. package/package.json +40 -9
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import*as l from"react";import{Combobox as n}from"@base-ui/react/combobox";import{Field as t}from"@base-ui/react/field";import{Chip as i}from"../chip/Chip";import{fillMessage as r,useMessages as o}from"../../internal/i18n";import{CheckIcon as s,ChevronIcon as c,CloseIcon as d,PlusIcon as m}from"../../internal/icons";import{chipRemoveClasses as u,controlHeightClasses as p,controlTextLeadingClasses as b,disabledClasses as h,fieldReadOnlyClasses as f,fieldRestClasses as g,focusWithinRingClasses as x,gapClasses as v,hasContent as y,iconClasses as w,metaTextClasses as N,paddingXClasses as C,radiusClasses as j,stackGapClasses as L,surfaceClasses as I,surfaceSlots as S,transitionClasses as $}from"../../internal/styles";const O=["group relative flex w-full cursor-text items-center","[-webkit-tap-highlight-color:transparent]",$,"focus-within:[transition-duration:0ms]",x,w].join(" "),V={xs:"min-h-5.5 py-0",sm:"min-h-6.5 py-[2px]",md:"min-h-8 py-[3px]",lg:"min-h-10 py-[4px]",xl:"min-h-12 py-[4px]"},_=[I,"max-h-[min(20rem,var(--available-height))] overflow-y-auto overscroll-contain","w-[var(--anchor-width)] border bg-(--n-panel-press) p-1","[border-color:var(--n-line)]","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]","[outline:none]"].join(" "),z=["relative flex cursor-pointer items-center gap-2 select-none","rounded-(--neba-radius-xs) py-1.5 pe-2 ps-7",$,"data-[highlighted]:bg-(--n-soft-hover) data-[highlighted]:text-(--n-accent)","data-[selected]:text-(--n-accent) data-[selected]:font-medium","data-[disabled]:cursor-not-allowed data-[disabled]:text-(--neba-disabled-fg)","[outline:none]"].join(" "),A=["inline-flex h-[1lh] shrink-0 cursor-pointer items-center justify-center","rounded-(--neba-radius-xs) text-(--neba-muted-fg)","[transition:color_var(--neba-duration)_var(--neba-ease)]","hover:text-(--n-accent)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-1","disabled:cursor-not-allowed disabled:text-(--neba-disabled-fg)"].join(" ");function M(e){return null==e?[]:Array.isArray(e)?e.slice():[e]}export function Combobox({variant:x="outline",size:w="md",color:I="primary",density:$="default",elevation:k=0,items:R,multiple:T,value:q,defaultValue:E,onValueChange:F,onInputValueChange:P,allowCustom:B=!0,customLabel:D,clearable:G=!1,locale:H,emptyMessage:W,limit:J,placeholder:K,label:Q,description:U,error:X,invalid:Y,startIcon:Z,fullWidth:ee=!1,disabled:ae=!1,readOnly:le=!1,required:ne=!1,name:te,open:ie,defaultOpen:re,onOpenChange:oe,clearLabel:se,removeLabel:ce,inputRef:de,id:me,className:ue,style:pe,...be}){const he=o(H),fe=ce??(e=>r(he.combobox.remove,{label:e})),ge=y(X),xe=Y??ge,ve=xe?"danger":I,ye=!0===T,we=l.useMemo(()=>R.map(e=>({value:e.value,label:e.label??String(e.value),disabled:e.disabled})),[R]),[Ne,Ce]=l.useState(()=>M(E)),je=void 0===q?Ne:M(q),[Le,Ie]=l.useState(""),Se=l.useMemo(()=>new Map(we.map(e=>[e.value,e])),[we]),$e=l.useCallback(e=>Se.get(e)??{value:e,label:String(e),custom:!0},[Se]),Oe=Le.trim(),Ve=Oe.toLocaleLowerCase(),_e=""===Oe||we.some(e=>e.label.toLocaleLowerCase()===Ve||String(e.value).toLocaleLowerCase()===Ve)||je.some(e=>String(e).toLocaleLowerCase()===Ve),ze=!B||le||ae||_e?null:Oe,Ae=l.useMemo(()=>null===ze?we:[...we,{value:ze,label:ze,custom:!0}],[we,ze]),Me=ye?je.map($e):je.length>0?$e(je[0]):null;const ke=C[$][w],Re=[O,b[w],j[w],v[w],ye?V[w]:p[w],`${ke} pe-1.5`,ae?h[x]:le?f[x]:g[x]].join(" "),Te=["min-w-0 flex-1 self-stretch 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"].join(" "),qe=a=>e(n.Input,{ref:de,placeholder:K,className:ye?`${Te} min-w-16 ${a?"ms-1.5":""}`:Te});return a(t.Root,{disabled:ae,invalid:xe,className:["flex-col align-top",L[w],ee?"flex w-full":"inline-flex",ue??""].filter(Boolean).join(" "),style:{...S(ve,k),...pe},...be,children:[Q?e(t.Label,{className:[N[w],"font-medium",ae?"text-(--neba-disabled-fg)":"text-(--neba-fg)"].join(" "),children:Q}):null,a(n.Root,{id:me,name:te,items:Ae,multiple:ye,value:Me,onValueChange:e=>{!function(e){void 0===q&&Ce(e),F?.(ye?e:e[0]??null)}((null===e?[]:Array.isArray(e)?e:[e]).map(e=>e.value))},onInputValueChange:e=>{Ie(e),P?.(e)},open:ie,defaultOpen:re,onOpenChange:e=>oe?.(e),autoHighlight:!0,itemToStringLabel:e=>e.label,itemToStringValue:e=>String(e.value),isItemEqualToValue:(e,a)=>e.value===a.value,limit:J,disabled:ae,readOnly:le,required:ne,children:[a(n.InputGroup,{className:Re,children:[Z?e("span",{className:"flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg)",children:Z}):null,ye?e(n.Chips,{className:"flex min-w-0 flex-1 flex-wrap items-center gap-1",children:e(n.Value,{children:t=>a(l.Fragment,{children:[t.map(a=>e(n.Chip,{render:e(i,{variant:"outline",size:w,color:ve,density:"compact",disabled:ae,endIcon:le||ae?null:e(n.ChipRemove,{"aria-label":fe(a.label),className:u,children:e(d,{})})}),children:a.label},String(a.value))),qe(t.length>0)]})})}):qe(!1),G&&!le?e(n.Clear,{"aria-label":se??he.action.clear,className:A,children:e(d,{})}):null,e(n.Trigger,{"aria-label":"string"==typeof Q?void 0:"Open",className:A,children:e(n.Icon,{className:["flex items-center","[transition:rotate_var(--neba-duration)_var(--neba-ease)]","data-[popup-open]:rotate-180"].join(" "),children:e(c,{})})})]}),e(n.Portal,{children:e(n.Positioner,{className:"neba-portal z-50 [outline:none]",sideOffset:6,children:a(n.Popup,{className:`${_} ${j[w]} ${b[w]}`,style:S(ve,3),children:[e(n.Empty,{className:"px-2 py-1.5 text-(--neba-muted-fg) empty:hidden",children:W??he.combobox.empty}),e(n.List,{children:t=>e(n.Item,{value:t,disabled:t.disabled,className:z,children:t.custom?a(l.Fragment,{children:[e("span",{className:"absolute start-1.5 flex size-4 items-center justify-center text-(--n-accent) [&_svg]:size-4",children:e(m,{})}),e("span",{className:"truncate",children:D?D(t.label):`Add “${t.label}”`})]}):a(l.Fragment,{children:[e(n.ItemIndicator,{className:"absolute start-1.5 flex size-4 items-center justify-center",children:e(s,{})}),e("span",{className:"truncate",children:t.label})]})},`${t.custom?"custom:":""}${String(t.value)}`)})]})})})]}),U?e(t.Description,{className:`${N[w]} text-(--neba-muted-fg)`,children:U}):null,ge?e(t.Error,{match:!0,className:`${N[w]} text-(--n-accent)`,children:X}):null]})}
1
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import*as l from"react";import{Combobox as n}from"@base-ui/react/combobox";import{Field as t}from"@base-ui/react/field";import{Chip as i}from"../chip/Chip.js";import{actionMessages as r,comboboxMessages as s,fillMessage as o,useMessages as c}from"../../internal/i18n.js";import{CheckIcon as d,ChevronIcon as m,CloseIcon as u,PlusIcon as p}from"../../internal/icons.js";import{chipRemoveClasses as h,controlHeightClasses as b,controlTextLeadingClasses as f,disabledClasses as g,fieldReadOnlyClasses as x,fieldRestClasses as v,focusWithinRingClasses as y,gapClasses as w,hasContent as N,iconClasses as j,metaTextClasses as C,paddingXClasses as L,radiusClasses as I,stackGapClasses as S,surfaceClasses as $,surfaceSlots as O,transitionClasses as V}from"../../internal/styles.js";const _=["group relative flex w-full cursor-text items-center","[-webkit-tap-highlight-color:transparent]",V,"focus-within:[transition-duration:0ms]",y,j].join(" "),z={xs:"min-h-5.5 py-0",sm:"min-h-6.5 py-[2px]",md:"min-h-8 py-[3px]",lg:"min-h-10 py-[4px]",xl:"min-h-12 py-[4px]"},A=[$,"max-h-[min(20rem,var(--available-height))] overflow-y-auto overscroll-contain","w-[var(--anchor-width)] border bg-(--n-panel-press) p-1","[border-color:var(--n-line)]","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]","[outline:none]"].join(" "),M=["relative flex cursor-pointer items-center gap-2 select-none","rounded-(--neba-radius-xs) py-1.5 pe-2 ps-7",V,"data-[highlighted]:bg-(--n-soft-hover) data-[highlighted]:text-(--n-accent)","data-[selected]:text-(--n-accent) data-[selected]:font-medium","data-[disabled]:cursor-not-allowed data-[disabled]:text-(--neba-disabled-fg)","[outline:none]"].join(" "),k=["inline-flex h-[1lh] shrink-0 cursor-pointer items-center justify-center","rounded-(--neba-radius-xs) text-(--neba-muted-fg)","[transition:color_var(--neba-duration)_var(--neba-ease)]","hover:text-(--n-accent)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-1","disabled:cursor-not-allowed disabled:text-(--neba-disabled-fg)"].join(" ");function R(e){return null==e?[]:Array.isArray(e)?e.slice():[e]}export function Combobox({variant:y="outline",size:j="md",color:$="primary",density:V="default",elevation:T=0,items:q,multiple:E,value:F,defaultValue:P,onValueChange:B,onInputValueChange:D,allowCustom:G=!0,customLabel:H,clearable:W=!1,locale:J,emptyMessage:K,limit:Q,placeholder:U,label:X,description:Y,error:Z,invalid:ee,startIcon:ae,fullWidth:le=!1,disabled:ne=!1,readOnly:te=!1,required:ie=!1,name:re,open:se,defaultOpen:oe,onOpenChange:ce,clearLabel:de,removeLabel:me,inputRef:ue,id:pe,className:he,style:be,...fe}){const ge=c(s,J),xe=c(r,J),ve=me??(e=>o(ge.remove,{label:e})),ye=N(Z),we=ee??ye,Ne=we?"danger":$,je=!0===E,Ce=l.useMemo(()=>q.map(e=>({value:e.value,label:e.label??String(e.value),disabled:e.disabled})),[q]),[Le,Ie]=l.useState(()=>R(P)),Se=void 0===F?Le:R(F),[$e,Oe]=l.useState(""),Ve=l.useMemo(()=>new Map(Ce.map(e=>[e.value,e])),[Ce]),_e=l.useCallback(e=>Ve.get(e)??{value:e,label:String(e),custom:!0},[Ve]),ze=$e.trim(),Ae=ze.toLocaleLowerCase(),Me=""===ze||Ce.some(e=>e.label.toLocaleLowerCase()===Ae||String(e.value).toLocaleLowerCase()===Ae)||Se.some(e=>String(e).toLocaleLowerCase()===Ae),ke=!G||te||ne||Me?null:ze,Re=l.useMemo(()=>null===ke?Ce:[...Ce,{value:ke,label:ke,custom:!0}],[Ce,ke]),Te=je?Se.map(_e):Se.length>0?_e(Se[0]):null;const qe=L[V][j],Ee=[_,f[j],I[j],w[j],je?z[j]:b[j],`${qe} pe-1.5`,ne?g[y]:te?x[y]:v[y]].join(" "),Fe=["min-w-0 flex-1 self-stretch 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"].join(" "),Pe=a=>e(n.Input,{ref:ue,placeholder:U,className:je?`${Fe} min-w-16 ${a?"ms-1.5":""}`:Fe});return a(t.Root,{disabled:ne,invalid:we,className:["flex-col align-top",S[j],le?"flex w-full":"inline-flex",he??""].filter(Boolean).join(" "),style:{...O(Ne,T),...be},...fe,children:[X?e(t.Label,{className:[C[j],"font-medium",ne?"text-(--neba-disabled-fg)":"text-(--neba-fg)"].join(" "),children:X}):null,a(n.Root,{id:pe,name:re,items:Re,multiple:je,value:Te,onValueChange:e=>{!function(e){void 0===F&&Ie(e),B?.(je?e:e[0]??null)}((null===e?[]:Array.isArray(e)?e:[e]).map(e=>e.value))},onInputValueChange:e=>{Oe(e),D?.(e)},open:se,defaultOpen:oe,onOpenChange:e=>ce?.(e),autoHighlight:!0,itemToStringLabel:e=>e.label,itemToStringValue:e=>String(e.value),isItemEqualToValue:(e,a)=>e.value===a.value,limit:Q,disabled:ne,readOnly:te,required:ie,children:[a(n.InputGroup,{className:Ee,children:[ae?e("span",{className:"flex h-[1lh] shrink-0 items-center text-(--neba-muted-fg)",children:ae}):null,je?e(n.Chips,{className:"flex min-w-0 flex-1 flex-wrap items-center gap-1",children:e(n.Value,{children:t=>a(l.Fragment,{children:[t.map(a=>e(n.Chip,{render:e(i,{variant:"outline",size:j,color:Ne,density:"compact",disabled:ne,endIcon:te||ne?null:e(n.ChipRemove,{"aria-label":ve(a.label),className:h,children:e(u,{})})}),children:a.label},String(a.value))),Pe(t.length>0)]})})}):Pe(!1),W&&!te?e(n.Clear,{"aria-label":de??xe.clear,className:k,children:e(u,{})}):null,e(n.Trigger,{"aria-label":"string"==typeof X?void 0:"Open",className:k,children:e(n.Icon,{className:["flex items-center","[transition:rotate_var(--neba-duration)_var(--neba-ease)]","data-[popup-open]:rotate-180"].join(" "),children:e(m,{})})})]}),e(n.Portal,{children:e(n.Positioner,{className:"neba-portal z-50 [outline:none]",sideOffset:6,children:a(n.Popup,{className:`${A} ${I[j]} ${f[j]}`,style:O(Ne,3),children:[e(n.Empty,{className:"px-2 py-1.5 text-(--neba-muted-fg) empty:hidden",children:K??ge.empty}),e(n.List,{children:t=>e(n.Item,{value:t,disabled:t.disabled,className:M,children:t.custom?a(l.Fragment,{children:[e("span",{className:"absolute start-1.5 flex size-4 items-center justify-center text-(--n-accent) [&_svg]:size-4",children:e(p,{})}),e("span",{className:"truncate",children:H?H(t.label):`Add “${t.label}”`})]}):a(l.Fragment,{children:[e(n.ItemIndicator,{className:"absolute start-1.5 flex size-4 items-center justify-center",children:e(d,{})}),e("span",{className:"truncate",children:t.label})]})},`${t.custom?"custom:":""}${String(t.value)}`)})]})})})]}),Y?e(t.Description,{className:`${C[j]} text-(--neba-muted-fg)`,children:Y}):null,ye?e(t.Error,{match:!0,className:`${C[j]} text-(--n-accent)`,children:Z}):null]})}
@@ -1,2 +1,2 @@
1
- export { Combobox } from './Combobox';
2
- export type { ComboboxOption, ComboboxProps, ComboboxValue } from './Combobox';
1
+ export { Combobox } from './Combobox.js';
2
+ export type { ComboboxOption, ComboboxProps, ComboboxValue } from './Combobox.js';
@@ -1 +1 @@
1
- export{Combobox}from"./Combobox";
1
+ export{Combobox}from"./Combobox.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 { NebaDensity, NebaSize } from '../../types';
3
+ import type { NebaDensity, NebaSize } from '../../types.js';
4
4
  export interface ContainerProps extends React.ComponentPropsWithoutRef<'div'> {
5
5
  /**
6
6
  * How wide the content is allowed to get, on the same ladder the breakpoints
@@ -1 +1 @@
1
- import*as e from"react";import{useRender as r}from"@base-ui/react/use-render";import{boxPaddingXClasses as m}from"../box/Box";const o={xs:"max-w-[30rem]",sm:"max-w-[40rem]",md:"max-w-[48rem]",lg:"max-w-[64rem]",xl:"max-w-[80rem]"};export const Container=e.forwardRef(function({maxWidth:e="none",padded:n=!0,size:a="md",density:t="default",centered:d=!0,render:s,className:i,children:c,...l},x){const f=["block w-full","none"===e?"":o[e],d?"mx-auto":"",n?m[t][a]:"",i??""].filter(Boolean).join(" ");return r({render:s,ref:x,props:{className:f,children:c,...l}})});
1
+ import*as e from"react";import{useRender as r}from"@base-ui/react/use-render";import{boxPaddingXClasses as m}from"../box/Box.js";const o={xs:"max-w-[30rem]",sm:"max-w-[40rem]",md:"max-w-[48rem]",lg:"max-w-[64rem]",xl:"max-w-[80rem]"};export const Container=/*@__PURE__*/e.forwardRef(function({maxWidth:e="none",padded:n=!0,size:a="md",density:t="default",centered:s=!0,render:d,className:i,children:c,...l},x){const f=["block w-full","none"===e?"":o[e],s?"mx-auto":"",n?m[t][a]:"",i??""].filter(Boolean).join(" ");return r({render:d,ref:x,props:{className:f,children:c,...l}})});
@@ -1,2 +1,2 @@
1
- export { Container } from './Container';
2
- export type { ContainerProps } from './Container';
1
+ export { Container } from './Container.js';
2
+ export type { ContainerProps } from './Container.js';
@@ -1 +1 @@
1
- export{Container}from"./Container";
1
+ export{Container}from"./Container.js";
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { NebaAlign, NebaElevation, NebaStyleProps } from '../../types';
2
+ import type { NebaAlign, NebaElevation, NebaStyleProps } from '../../types.js';
3
3
  /** Which way a column runs when it is sorted. */
4
4
  export type DataTableSortDirection = 'asc' | 'desc';
5
5
  /** One key of the sort, and its direction. A sort is a list of these. */
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import*as r from"react";import{Box as a}from"../box/Box";import{Checkbox as l}from"../checkbox/Checkbox";import{Pagination as o}from"../pagination/Pagination";import{Select as s}from"../select/Select";import{TextField as i}from"../text-field/TextField";import{compareValues as c,dataHeaderHeights as u,dataRowHeights as d,dataTickWidths as p,defaultColumnWidth as m,keysBetween as h,minColumnWidth as f,nextSort as g,pageBounds as v,searchText as y,sortRows as b,virtualWindow as k}from"../../internal/data-table";import{fillMessage as w,useMessages as x}from"../../internal/i18n";import{ChevronIcon as C}from"../../internal/icons";import{controlTextLeadingClasses as S,cx as M,hasContent as N,metaTextClasses as K,paddingXValues as z,srOnlyClasses as $}from"../../internal/styles";const E=["[--n-row:transparent]","[transition:background-color_var(--neba-duration)_var(--neba-ease)]"].join(" "),_={"--n-stripe":"color-mix(in oklab, var(--neba-fg) 4%, transparent)"},R=["group/sort flex w-full min-w-0 cursor-pointer items-center gap-1","text-inherit [outline:none]","[transition:color_var(--neba-duration)_var(--neba-ease)]","hover:text-(--n-accent)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-1","[&_svg]:pointer-events-none [&_svg]:size-[1.15em] [&_svg]:shrink-0"].join(" "),D=["absolute inset-y-0 z-10 w-2 cursor-col-resize select-none","end-0 translate-x-1/2 rtl:-translate-x-1/2","after:absolute after:inset-y-1 after:start-1/2 after:w-px","after:[background:transparent]","after:[transition:background_var(--neba-duration)_var(--neba-ease)]","hover:after:[background:var(--n-accent)]"].join(" ");function L(){return t("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[e("circle",{cx:"7.25",cy:"7.25",r:"4.75",stroke:"currentColor",strokeWidth:"1.5"}),e("path",{d:"m10.75 10.75 2.75 2.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function P(e){return"number"==typeof e?`${e}px`:e}export function DataTable({headers:A,items:T,getRowKey:j,variant:H="outline",size:B="sm",color:I="primary",density:W="compact",elevation:F=0,height:O,maxHeight:q,rowHeight:U,striped:X=!1,hoverable:Y=!0,stickyHeader:V=!0,caption:G,label:J,empty:Q,virtual:Z=!0,overscan:ee=8,sortable:te=!1,sortMode:ne="single",sort:re,defaultSort:ae,onSortChange:le,resizable:oe=!1,columnWidths:se,defaultColumnWidths:ie,onColumnWidthsChange:ce,selectionMode:ue="none",selected:de,defaultSelected:pe,onSelectedChange:me,checkboxes:he=!1,onRowClick:fe,onRowActivate:ge,paging:ve="scroll",page:ye,defaultPage:be=1,onPageChange:ke,pageSize:we,defaultPageSize:xe=25,onPageSizeChange:Ce,pageSizeOptions:Se=[10,25,50,100],footer:Me,search:Ne,defaultSearch:Ke,onSearchChange:ze,searchable:$e=!1,searchPlaceholder:Ee,filter:_e,toolbar:Re,manual:De=!1,rowCount:Le,locale:Pe,className:Ae,style:Te,...je}){const He=x(Pe),Be=r.useId(),Ie=U??d[W][B],We=u[W][B],Fe=z[W][B],Oe=r.useMemo(()=>new Set(!0===De?["sort","filter","pages"]:De||[]),[De]),qe=r.useMemo(()=>A.filter(e=>!e.hidden),[A]),Ue=qe.some(e=>void 0!==e.group),Xe="none"!==ue,Ye="multiple"===ue,Ve=Xe&&he,Ge=r.useMemo(()=>T.map((e,t)=>{const n=j?j(e,t):t;return{row:e,identity:n,key:String(n),origin:t}}),[T,j]),[Je,Qe]=r.useState(Ke??""),Ze=(Ne??Je).trim(),et=r.useMemo(()=>{if(Oe.has("filter"))return Ge;const e=y(Ze),t=qe.filter(e=>!1!==e.searchable);let n=Ge;return""!==e&&t.length>0&&(n=n.filter(n=>t.some(t=>{const r=t.value?t.value(n.row):n.row[t.key];return y(r).includes(e)}))),_e?n.filter(e=>_e(e.row,e.origin)):n},[Ge,qe,Ze,_e,Oe]),tt=r.useMemo(()=>new Intl.Collator(Pe,{numeric:!0,sensitivity:"base"}),[Pe]),[nt,rt]=r.useState(ae??[]),at=re??nt,lt=r.useMemo(()=>Oe.has("sort")?et:b(et,at,e=>{const t=qe.find(t=>t.key===e);if(!t)return null;if(t.compare)return(e,n)=>t.compare(e.row,n.row);const n=t.value?t.value:e=>e[t.key];return(e,t)=>c(n(e.row),n(t.row),tt)}),[et,at,qe,tt,Oe]),[ot,st]=r.useState(be),[it,ct]=r.useState(xe),ut=we??it,dt=Oe.has("pages")?Le??lt.length:lt.length,pt=v(dt,ye??ot,ut),mt=r.useMemo(()=>"pages"!==ve||Oe.has("pages")?lt:lt.slice(pt.start,pt.end),[lt,ve,Oe,pt.start,pt.end]),ht="pages"===ve?pt.start:0,ft=r.useMemo(()=>mt.map(e=>e.key),[mt]),gt=r.useMemo(()=>new Map(Ge.map(e=>[e.key,e])),[Ge]),[vt,yt]=r.useState(pe??[]),bt=de??vt,kt=r.useMemo(()=>new Set(bt.map(String)),[bt]),[wt,xt]=r.useState(null),Ct=r.useRef(null),St=r.useRef({paged:mt,pagedKeys:ft,byKey:gt,selectedKeys:kt,multiple:Ye});St.current={paged:mt,pagedKeys:ft,byKey:gt,selectedKeys:kt,multiple:Ye};const Mt=r.useCallback(e=>{const t=[],n=[];for(const r of e){const e=St.current.byKey.get(r);e&&(t.push(e.identity),n.push(e.row))}void 0===de&&yt(t),me?.(t,n)},[de,me]),Nt=r.useCallback(e=>{Ct.current=e,Mt([e])},[Mt]),Kt=r.useCallback(e=>{const t=St.current.selectedKeys,n=new Set(t);n.has(e)?n.delete(e):n.add(e),Ct.current=e,Mt([...n])},[Mt]),zt=r.useCallback((e,t)=>{const n=St.current.pagedKeys,r=Ct.current??n[0];if(void 0===r)return;const a=h(n,r,e);0!==a.length&&Mt(t?[...new Set([...St.current.selectedKeys,...a])]:a)},[Mt]),$t=r.useRef(null),Et=r.useRef(null),_t=r.useRef(null),[Rt,Dt]=r.useState(0),[Lt,Pt]=r.useState(0),At=void 0!==O||void 0!==q,Tt=Z&&At&&mt.length>0;r.useLayoutEffect(()=>{const e=$t.current;if(!e||!Tt)return;const t=new ResizeObserver(([e])=>{Dt(e.contentRect.height)});return t.observe(e),Dt(e.clientHeight),()=>t.disconnect()},[Tt]);const jt=r.useCallback(e=>{if(!Tt)return;const t=Math.floor(e.currentTarget.scrollTop/Ie)*Ie;Pt(e=>e===t?e:t)},[Tt,Ie]),Ht=Tt?k(Lt,Rt,Ie,mt.length,ee):{start:0,end:mt.length,before:0,after:0},Bt=mt.slice(Ht.start,Ht.end),It=Xe&&null!==wt&&Bt.some(e=>e.key===wt),[Wt,Ft]=r.useState(ie??{}),Ot=se??Wt,qt=r.useCallback(e=>{void 0===se&&Ft(e),ce?.(e)},[se,ce]),Ut=r.useRef(new Map),Xt=r.useCallback(e=>{const t=$t.current;if(!t||!At)return;const n=V?We*(Ue?2:1):0,r=e*Ie;r<t.scrollTop+n?t.scrollTop=Math.max(0,r-n):r+Ie>t.scrollTop+t.clientHeight&&(t.scrollTop=r+Ie-t.clientHeight)},[At,V,We,Ue,Ie]),Yt=(e,t)=>{const n=St.current.paged,r=Math.min(Math.max(e,0),n.length-1),a=n[r];a&&(t.preventDefault(),xt(a.key),Xt(r),t.shiftKey&&St.current.multiple?zt(a.key,!1):t.ctrlKey||t.metaKey||Nt(a.key))};const Vt=r.useCallback(e=>{const t=Et.current,n=St.current.paged;if(!t||0===n.length)return null;const r=t.getBoundingClientRect().top,a=Math.floor((e-r)/Ie);return Math.min(Math.max(a,0),n.length-1)},[Ie]),Gt=r.useRef(null),Jt=r.useCallback(e=>{const t=Vt(e),n=null===t?void 0:St.current.paged[t];n&&(xt(n.key),zt(n.key,!1))},[Vt,zt]),Qt=r.useRef(Jt);Qt.current=Jt;function Zt(e,t){if(Xe&&!t.target.closest('button, a, input, select, textarea, [role="button"]'))if(_t.current?.focus({preventScroll:!0}),xt(e.key),2!==t.button){if(0===t.button)return t.shiftKey&&Ye?(t.preventDefault(),void zt(e.key,t.ctrlKey||t.metaKey)):void((t.ctrlKey||t.metaKey)&&Ye?Kt(e.key):(Nt(e.key),Ye&&(e=>{if(Gt.current)return;const t=e=>{const t=Gt.current,r=$t.current;if(!t)return;if(t.y=e.clientY,Qt.current(t.y),!r||!At)return;const a=r.getBoundingClientRect(),l=a.top+Ie-t.y,o=t.y-(a.bottom-Ie);t.speed=l>0?-Math.min(l,40):o>0?Math.min(o,40):0,0!==t.speed&&null===t.frame&&(t.frame=requestAnimationFrame(n))},n=()=>{const e=Gt.current,t=$t.current;e&&t&&0!==e.speed?(t.scrollTop+=e.speed,Qt.current(e.y),e.frame=requestAnimationFrame(n)):e&&(e.frame=null)},r=()=>{const e=Gt.current;null!=e?.frame&&cancelAnimationFrame(e.frame),Gt.current=null,window.removeEventListener("pointermove",t),window.removeEventListener("pointerup",r),window.removeEventListener("pointercancel",r)};Gt.current={y:e,speed:0,frame:null,stop:r},window.addEventListener("pointermove",t),window.addEventListener("pointerup",r),window.addEventListener("pointercancel",r)})(t.clientY)))}else St.current.selectedKeys.has(e.key)||Nt(e.key)}r.useEffect(()=>()=>Gt.current?.stop(),[]);const en=r.useMemo(()=>ft.reduce((e,t)=>kt.has(t)?e+1:e,0),[ft,kt]),tn=ft.length>0&&en===ft.length,nn=p[B],rn=e=>Ot[e.key]??e.width,an=(Ve?nn:0)+qe.reduce((e,t)=>e+(rn(t)??f),0),ln=qe.length>0&&qe.every(e=>void 0!==rn(e)),on=qe.length+(Ve?1:0)+(ln?1:0),sn=r.useMemo(()=>{const e=[];return qe.forEach((t,n)=>{const r=e[e.length-1];r&&void 0!==r.label&&r.label===t.group?r.span+=1:e.push({label:t.group,span:1,from:n})}),e},[qe]),cn={padding:`0 ${Fe}`,borderBottom:"1px solid var(--n-line)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},un={...cn,height:`${We}px`,backgroundColor:"var(--n-panel-press)"},dn="odd"===X?0:1,pn=r.useMemo(()=>new Intl.NumberFormat(Pe),[Pe]),mn=Me??"pages"===ve,hn=w(He.table.range,{start:pn.format(0===dt?0:("pages"===ve?pt.start:0)+1),end:pn.format("pages"===ve?pt.end:dt),total:pn.format(dt)}),fn=e=>{void 0===ye&&st(e),ke?.(e)},gn=(n,r,a)=>{const l=n.sortable??te,o=n.resizable??oe,s=(i=n.key,at.find(e=>e.key===i));var i;const c=s?at.findIndex(e=>e.key===n.key)+1:0,u=n.headerAlign??n.align??"start";return t("th",{ref:e=>{e?Ut.current.set(n.key,e):Ut.current.delete(n.key)},scope:"col",rowSpan:a,"aria-sort":s?"asc"===s.direction?"ascending":"descending":void 0,className:M("relative font-semibold select-none",s?"text-(--n-accent)":"text-(--neba-muted-fg)",V?"sticky z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...un,top:V?2!==a&&Ue?We:0:void 0,textAlign:u},children:[l?t("button",{type:"button",className:M(R,"end"===u?"justify-end":"center"===u?"justify-center":"justify-start"),onClick:e=>((e,t)=>{const n=g(at,e,t&&"multiple"===ne);void 0===re&&rt(n),le?.(n)})(n.key,e.shiftKey),children:[e("span",{className:"min-w-0 truncate",children:n.label??n.key}),e("span",{"aria-hidden":"true",className:M("flex items-center","desc"===s?.direction?"rotate-0":"rotate-180",s?"":"text-transparent group-hover/sort:text-inherit group-focus-visible/sort:text-inherit"),children:e(C,{})}),c>1?e("span",{"aria-hidden":"true",className:"text-[0.85em] tabular-nums",children:c}):null]}):e("span",{className:"block truncate",children:n.label??n.key}),o&&r<qe.length-1?e("span",{"aria-hidden":"true",className:D,onPointerDown:e=>((e,t)=>{t.preventDefault(),t.stopPropagation();const n=t.currentTarget,r={...Ot};for(const e of qe){const t=Ut.current.get(e.key);t&&void 0===r[e.key]&&(r[e.key]=Math.round(t.getBoundingClientRect().width))}const a="rtl"===getComputedStyle(n).direction,l=t.clientX,o=r[e]??m,s=qe.find(t=>t.key===e)?.minWidth??f;n.setPointerCapture(t.pointerId);const i=t=>{const n=(t.clientX-l)*(a?-1:1);qt({...r,[e]:Math.max(s,Math.round(o+n))})},c=()=>{n.removeEventListener("pointermove",i),n.removeEventListener("pointerup",c),n.removeEventListener("pointercancel",c)};n.addEventListener("pointermove",i),n.addEventListener("pointerup",c),n.addEventListener("pointercancel",c)})(n.key,e),onDoubleClick:()=>(e=>{const t={...Ot};delete t[e],qt(t)})(n.key)}):null]},n.key)},vn=t=>e("span",{className:"flex items-center justify-center",children:t}),yn=t=>e("td",{role:Xe?"gridcell":void 0,style:{...cn,padding:0,overflow:"visible"},children:vn(e(l,{size:B,color:I,checked:kt.has(t.key),"aria-label":He.table.selectRow,onCheckedChange:()=>{Ye?Kt(t.key):Nt(t.key)}}))}),bn=Ye?vn(e(l,{size:B,color:I,checked:tn,indeterminate:en>0&&!tn,"aria-label":He.table.selectAll,onCheckedChange:()=>{if(tn){const e=new Set(ft);Mt([...kt].filter(t=>!e.has(t)))}else Mt([...new Set([...kt,...ft])])}})):null,kn=ln?e("th",{"aria-hidden":"true",className:M(V?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...un,padding:0}}):null,wn=(t,n)=>n>0?e("tr",{"aria-hidden":"true",style:{height:`${n}px`},children:e("td",{colSpan:on,style:{padding:0,border:0}})},t):null;return t(a,{variant:H,size:B,color:I,density:W,elevation:F,padded:!1,className:M("flex flex-col overflow-hidden",Xe?"has-[:focus-visible]:[outline:2px_solid_var(--n-ring)] has-[:focus-visible]:outline-offset-2":"",Ae),style:{..._,...Te},...je,children:[$e||N(Re)?t("div",{className:"flex items-center gap-2",style:{padding:`${Fe} ${Fe}`,borderBottom:"1px solid var(--n-line)"},children:[$e?e(i,{size:B,color:I,density:W,variant:"outline",type:"search",className:"w-full max-w-64",startIcon:e(L,{}),placeholder:Ee??He.table.search,"aria-label":Ee??He.table.search,value:Ne??Je,onChange:e=>{const t=e.target.value;void 0===Ne&&Qe(t),fn(1),ze?.(t)}}):null,N(Re)?e("div",{className:"ms-auto flex items-center gap-2",children:Re}):null]}):null,e("div",{ref:$t,className:"min-h-0 flex-auto overflow-auto overscroll-contain",style:{height:P(O),maxHeight:P(q)},onScroll:jt,children:t("table",{ref:_t,role:Xe?"grid":void 0,"aria-label":J,"aria-multiselectable":Ye||void 0,"aria-rowcount":Tt?mt.length+1:void 0,"aria-activedescendant":It?`${Be}-${wt}`:void 0,tabIndex:Xe?0:void 0,className:M("w-full text-start [outline:none]",S[B],"text-(--neba-fg)",Xe?"select-none":""),style:{tableLayout:"fixed",borderCollapse:"separate",borderSpacing:0,minWidth:`${an}px`},onKeyDown:function(e){if(!Xe||e.target!==e.currentTarget)return;const t=St.current.paged;if(0===t.length)return;const n=null===wt?-1:St.current.pagedKeys.indexOf(wt),r=Math.max(1,Math.floor((Rt||10*Ie)/Ie)-1);switch(e.key){case"ArrowDown":Yt(n+1,e);break;case"ArrowUp":Yt(-1===n?0:n-1,e);break;case"Home":Yt(0,e);break;case"End":Yt(t.length-1,e);break;case"PageDown":Yt(-1===n?0:n+r,e);break;case"PageUp":Yt(-1===n?0:n-r,e);break;case" ":-1!==n&&(e.preventDefault(),(e.ctrlKey||e.metaKey)&&Ye?Kt(t[n].key):Nt(t[n].key));break;case"a":case"A":(e.ctrlKey||e.metaKey)&&Ye&&(e.preventDefault(),Mt(St.current.pagedKeys));break;case"Escape":e.preventDefault(),Mt([]);break;case"Enter":-1!==n&&ge&&(e.preventDefault(),ge(t[n].row,ht+n))}},children:[G?e("caption",{className:M(K[B],"text-(--neba-muted-fg)"),style:{padding:`0.5rem ${Fe}`,textAlign:"start"},children:G}):null,t("colgroup",{children:[Ve?e("col",{style:{width:`${nn}px`}}):null,qe.map(t=>{const n=rn(t);return e("col",{style:void 0===n?void 0:{width:`${n}px`}},t.key)}),ln?e("col",{}):null]}),t("thead",{children:[Ue?t("tr",{style:{height:`${We}px`},children:[Ve?e("th",{scope:"col",rowSpan:2,className:M(V?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...un,padding:0,overflow:"visible"},children:bn}):null,sn.map(t=>void 0===t.label?gn(qe[t.from],t.from,2):e("th",{scope:"colgroup",colSpan:t.span,className:M("font-semibold text-(--neba-muted-fg) select-none",V?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...un,textAlign:"center"},children:t.label},`group-${t.from}`)),ln?r.cloneElement(kn,{rowSpan:2}):null]}):null,t("tr",{style:{height:`${We}px`},children:[Ve&&!Ue?e("th",{scope:"col",className:M(V?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...un,padding:0,overflow:"visible"},children:bn}):null,qe.map((e,t)=>Ue&&void 0===e.group?null:gn(e,t)),ln&&!Ue?kn:null]})]}),e("tbody",{ref:Et,children:0===mt.length?e("tr",{children:e("td",{colSpan:on,className:"text-(--neba-muted-fg)",style:{padding:`2rem ${Fe}`,textAlign:"center"},children:Q??He.empty.title})}):t(n,{children:[wn("before",Ht.before),Bt.map((n,r)=>{const a=Ht.start+r,l=kt.has(n.key),o=wt===n.key;return t("tr",{id:`${Be}-${n.key}`,"aria-selected":Xe?l:void 0,"aria-rowindex":Tt?a+2:void 0,"data-neba-row":n.key,className:M(E,l?"[--n-row:var(--n-soft-press)]":!1!==X&&a%2===dn?"[--n-row:var(--n-stripe)]":"",!l&&Y?"hover:[--n-row:var(--n-soft)]":"",o&&Xe?"[box-shadow:inset_0_0_0_1px_var(--n-ring)]":"",Xe||fe?"cursor-default":""),style:{height:`${Ie}px`,backgroundColor:"var(--n-row)"},onPointerDown:e=>Zt(n,e),onClick:e=>fe?.(n.row,ht+a,e),onDoubleClick:()=>ge?.(n.row,ht+a),children:[Ve?yn(n):null,qe.map(t=>e("td",{role:Xe?"gridcell":void 0,style:{...cn,textAlign:t.align??"start"},children:t.render?t.render(n.row,ht+a):n.row[t.key]},t.key)),ln?e("td",{"aria-hidden":"true",style:{...cn,padding:0}}):null]},n.key)}),wn("after",Ht.after)]})})]})}),mn?t("div",{className:M("flex flex-wrap items-center gap-3",K[B]),style:{padding:`0.375rem ${Fe}`,borderTop:"1px solid var(--n-line)"},children:[e("span",{className:"text-(--neba-muted-fg) tabular-nums",children:hn}),Xe&&kt.size>0?e("span",{className:"text-(--n-accent) tabular-nums",children:w(He.table.selected,{count:pn.format(kt.size)})}):null,t("div",{className:"ms-auto flex items-center gap-2",children:["pages"===ve&&Se.length>0?e(n,{children:e(s,{size:B,color:I,density:W,variant:"outline",label:He.table.rowsPerPage,items:Se.map(e=>({value:e})),value:ut,onValueChange:e=>{const t=Number(e);void 0===we&&ct(t),fn(Math.floor(pt.start/t)+1),Ce?.(t)}})}):null,"pages"===ve?e(o,{size:B,color:I,count:pt.pages,page:pt.page,siblingCount:0,onPageChange:fn}):null]})]}):null,!mn&&Tt?e("span",{className:$,"aria-live":"polite",children:hn}):null]})}
1
+ import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import*as r from"react";import{Box as a}from"../box/Box.js";import{Checkbox as o}from"../checkbox/Checkbox.js";import{Pagination as l}from"../pagination/Pagination.js";import{Select as s}from"../select/Select.js";import{TextField as i}from"../text-field/TextField.js";import{compareValues as c,dataHeaderHeights as u,dataRowHeights as d,dataTickWidths as p,defaultColumnWidth as m,keysBetween as h,minColumnWidth as f,nextSort as g,pageBounds as v,searchText as y,sortRows as b,virtualWindow as k}from"../../internal/data-table.js";import{emptyMessages as w,fillMessage as x,tableMessages as C,useMessages as S}from"../../internal/i18n.js";import{ChevronIcon as M}from"../../internal/icons.js";import{controlTextLeadingClasses as N,cx as K,hasContent as z,metaTextClasses as $,paddingXValues as j,srOnlyClasses as E}from"../../internal/styles.js";const _=["[--n-row:transparent]","[transition:background-color_var(--neba-duration)_var(--neba-ease)]"].join(" "),R={"--n-stripe":"color-mix(in oklab, var(--neba-fg) 4%, transparent)"},D=["group/sort flex w-full min-w-0 cursor-pointer items-center gap-1","text-inherit [outline:none]","[transition:color_var(--neba-duration)_var(--neba-ease)]","hover:text-(--n-accent)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-1","[&_svg]:pointer-events-none [&_svg]:size-[1.15em] [&_svg]:shrink-0"].join(" "),L=["absolute inset-y-0 z-10 w-2 cursor-col-resize select-none","end-0 translate-x-1/2 rtl:-translate-x-1/2","after:absolute after:inset-y-1 after:start-1/2 after:w-px","after:[background:transparent]","after:[transition:background_var(--neba-duration)_var(--neba-ease)]","hover:after:[background:var(--n-accent)]"].join(" ");function P(){return t("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[e("circle",{cx:"7.25",cy:"7.25",r:"4.75",stroke:"currentColor",strokeWidth:"1.5"}),e("path",{d:"m10.75 10.75 2.75 2.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function A(e){return"number"==typeof e?`${e}px`:e}export function DataTable({headers:T,items:H,getRowKey:B,variant:I="outline",size:W="sm",color:F="primary",density:O="compact",elevation:q=0,height:U,maxHeight:X,rowHeight:Y,striped:V=!1,hoverable:G=!0,stickyHeader:J=!0,caption:Q,label:Z,empty:ee,virtual:te=!0,overscan:ne=8,sortable:re=!1,sortMode:ae="single",sort:oe,defaultSort:le,onSortChange:se,resizable:ie=!1,columnWidths:ce,defaultColumnWidths:ue,onColumnWidthsChange:de,selectionMode:pe="none",selected:me,defaultSelected:he,onSelectedChange:fe,checkboxes:ge=!1,onRowClick:ve,onRowActivate:ye,paging:be="scroll",page:ke,defaultPage:we=1,onPageChange:xe,pageSize:Ce,defaultPageSize:Se=25,onPageSizeChange:Me,pageSizeOptions:Ne=[10,25,50,100],footer:Ke,search:ze,defaultSearch:$e,onSearchChange:je,searchable:Ee=!1,searchPlaceholder:_e,filter:Re,toolbar:De,manual:Le=!1,rowCount:Pe,locale:Ae,className:Te,style:He,...Be}){const Ie=S(C,Ae),We=S(w,Ae),Fe=r.useId(),Oe=Y??d[O][W],qe=u[O][W],Ue=j[O][W],Xe=r.useMemo(()=>new Set(!0===Le?["sort","filter","pages"]:Le||[]),[Le]),Ye=r.useMemo(()=>T.filter(e=>!e.hidden),[T]),Ve=Ye.some(e=>void 0!==e.group),Ge="none"!==pe,Je="multiple"===pe,Qe=Ge&&ge,Ze=r.useMemo(()=>H.map((e,t)=>{const n=B?B(e,t):t;return{row:e,identity:n,key:String(n),origin:t}}),[H,B]),[et,tt]=r.useState($e??""),nt=(ze??et).trim(),rt=r.useMemo(()=>{if(Xe.has("filter"))return Ze;const e=y(nt),t=Ye.filter(e=>!1!==e.searchable);let n=Ze;return""!==e&&t.length>0&&(n=n.filter(n=>t.some(t=>{const r=t.value?t.value(n.row):n.row[t.key];return y(r).includes(e)}))),Re?n.filter(e=>Re(e.row,e.origin)):n},[Ze,Ye,nt,Re,Xe]),at=r.useMemo(()=>new Intl.Collator(Ae,{numeric:!0,sensitivity:"base"}),[Ae]),[ot,lt]=r.useState(le??[]),st=oe??ot,it=r.useMemo(()=>Xe.has("sort")?rt:b(rt,st,e=>{const t=Ye.find(t=>t.key===e);if(!t)return null;if(t.compare)return(e,n)=>t.compare(e.row,n.row);const n=t.value?t.value:e=>e[t.key];return(e,t)=>c(n(e.row),n(t.row),at)}),[rt,st,Ye,at,Xe]),[ct,ut]=r.useState(we),[dt,pt]=r.useState(Se),mt=Ce??dt,ht=Xe.has("pages")?Pe??it.length:it.length,ft=v(ht,ke??ct,mt),gt=r.useMemo(()=>"pages"!==be||Xe.has("pages")?it:it.slice(ft.start,ft.end),[it,be,Xe,ft.start,ft.end]),vt="pages"===be?ft.start:0,yt=r.useMemo(()=>gt.map(e=>e.key),[gt]),bt=r.useMemo(()=>new Map(Ze.map(e=>[e.key,e])),[Ze]),[kt,wt]=r.useState(he??[]),xt=me??kt,Ct=r.useMemo(()=>new Set(xt.map(String)),[xt]),[St,Mt]=r.useState(null),Nt=r.useRef(null),Kt=r.useRef({paged:gt,pagedKeys:yt,byKey:bt,selectedKeys:Ct,multiple:Je});Kt.current={paged:gt,pagedKeys:yt,byKey:bt,selectedKeys:Ct,multiple:Je};const zt=r.useCallback(e=>{const t=[],n=[];for(const r of e){const e=Kt.current.byKey.get(r);e&&(t.push(e.identity),n.push(e.row))}void 0===me&&wt(t),fe?.(t,n)},[me,fe]),$t=r.useCallback(e=>{Nt.current=e,zt([e])},[zt]),jt=r.useCallback(e=>{const t=Kt.current.selectedKeys,n=new Set(t);n.has(e)?n.delete(e):n.add(e),Nt.current=e,zt([...n])},[zt]),Et=r.useCallback((e,t)=>{const n=Kt.current.pagedKeys,r=Nt.current??n[0];if(void 0===r)return;const a=h(n,r,e);0!==a.length&&zt(t?[...new Set([...Kt.current.selectedKeys,...a])]:a)},[zt]),_t=r.useRef(null),Rt=r.useRef(null),Dt=r.useRef(null),[Lt,Pt]=r.useState(0),[At,Tt]=r.useState(0),Ht=void 0!==U||void 0!==X,Bt=te&&Ht&&gt.length>0;r.useLayoutEffect(()=>{const e=_t.current;if(!e||!Bt)return;const t=new ResizeObserver(([e])=>{Pt(e.contentRect.height)});return t.observe(e),Pt(e.clientHeight),()=>t.disconnect()},[Bt]);const It=r.useCallback(e=>{if(!Bt)return;const t=Math.floor(e.currentTarget.scrollTop/Oe)*Oe;Tt(e=>e===t?e:t)},[Bt,Oe]),Wt=Bt?k(At,Lt,Oe,gt.length,ne):{start:0,end:gt.length,before:0,after:0},Ft=gt.slice(Wt.start,Wt.end),Ot=Ge&&null!==St&&Ft.some(e=>e.key===St),[qt,Ut]=r.useState(ue??{}),Xt=ce??qt,Yt=r.useCallback(e=>{void 0===ce&&Ut(e),de?.(e)},[ce,de]),Vt=r.useRef(new Map),Gt=r.useCallback(e=>{const t=_t.current;if(!t||!Ht)return;const n=J?qe*(Ve?2:1):0,r=e*Oe;r<t.scrollTop+n?t.scrollTop=Math.max(0,r-n):r+Oe>t.scrollTop+t.clientHeight&&(t.scrollTop=r+Oe-t.clientHeight)},[Ht,J,qe,Ve,Oe]),Jt=(e,t)=>{const n=Kt.current.paged,r=Math.min(Math.max(e,0),n.length-1),a=n[r];a&&(t.preventDefault(),Mt(a.key),Gt(r),t.shiftKey&&Kt.current.multiple?Et(a.key,!1):t.ctrlKey||t.metaKey||$t(a.key))};const Qt=r.useCallback(e=>{const t=Rt.current,n=Kt.current.paged;if(!t||0===n.length)return null;const r=t.getBoundingClientRect().top,a=Math.floor((e-r)/Oe);return Math.min(Math.max(a,0),n.length-1)},[Oe]),Zt=r.useRef(null),en=r.useCallback(e=>{const t=Qt(e),n=null===t?void 0:Kt.current.paged[t];n&&(Mt(n.key),Et(n.key,!1))},[Qt,Et]),tn=r.useRef(en);tn.current=en;function nn(e,t){if(Ge&&!t.target.closest('button, a, input, select, textarea, [role="button"]'))if(Dt.current?.focus({preventScroll:!0}),Mt(e.key),2!==t.button){if(0===t.button)return t.shiftKey&&Je?(t.preventDefault(),void Et(e.key,t.ctrlKey||t.metaKey)):void((t.ctrlKey||t.metaKey)&&Je?jt(e.key):($t(e.key),Je&&(e=>{if(Zt.current)return;const t=e=>{const t=Zt.current,r=_t.current;if(!t)return;if(t.y=e.clientY,tn.current(t.y),!r||!Ht)return;const a=r.getBoundingClientRect(),o=a.top+Oe-t.y,l=t.y-(a.bottom-Oe);t.speed=o>0?-Math.min(o,40):l>0?Math.min(l,40):0,0!==t.speed&&null===t.frame&&(t.frame=requestAnimationFrame(n))},n=()=>{const e=Zt.current,t=_t.current;e&&t&&0!==e.speed?(t.scrollTop+=e.speed,tn.current(e.y),e.frame=requestAnimationFrame(n)):e&&(e.frame=null)},r=()=>{const e=Zt.current;null!=e?.frame&&cancelAnimationFrame(e.frame),Zt.current=null,window.removeEventListener("pointermove",t),window.removeEventListener("pointerup",r),window.removeEventListener("pointercancel",r)};Zt.current={y:e,speed:0,frame:null,stop:r},window.addEventListener("pointermove",t),window.addEventListener("pointerup",r),window.addEventListener("pointercancel",r)})(t.clientY)))}else Kt.current.selectedKeys.has(e.key)||$t(e.key)}r.useEffect(()=>()=>Zt.current?.stop(),[]);const rn=r.useMemo(()=>yt.reduce((e,t)=>Ct.has(t)?e+1:e,0),[yt,Ct]),an=yt.length>0&&rn===yt.length,on=p[W],ln=e=>Xt[e.key]??e.width,sn=(Qe?on:0)+Ye.reduce((e,t)=>e+(ln(t)??f),0),cn=Ye.length>0&&Ye.every(e=>void 0!==ln(e)),un=Ye.length+(Qe?1:0)+(cn?1:0),dn=r.useMemo(()=>{const e=[];return Ye.forEach((t,n)=>{const r=e[e.length-1];r&&void 0!==r.label&&r.label===t.group?r.span+=1:e.push({label:t.group,span:1,from:n})}),e},[Ye]),pn={padding:`0 ${Ue}`,borderBottom:"1px solid var(--n-line)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},mn={...pn,height:`${qe}px`,backgroundColor:"var(--n-panel-press)"},hn="odd"===V?0:1,fn=r.useMemo(()=>new Intl.NumberFormat(Ae),[Ae]),gn=Ke??"pages"===be,vn=x(Ie.range,{start:fn.format(0===ht?0:("pages"===be?ft.start:0)+1),end:fn.format("pages"===be?ft.end:ht),total:fn.format(ht)}),yn=e=>{void 0===ke&&ut(e),xe?.(e)},bn=(n,r,a)=>{const o=n.sortable??re,l=n.resizable??ie,s=(i=n.key,st.find(e=>e.key===i));var i;const c=s?st.findIndex(e=>e.key===n.key)+1:0,u=n.headerAlign??n.align??"start";return t("th",{ref:e=>{e?Vt.current.set(n.key,e):Vt.current.delete(n.key)},scope:"col",rowSpan:a,"aria-sort":s?"asc"===s.direction?"ascending":"descending":void 0,className:K("relative font-semibold select-none",s?"text-(--n-accent)":"text-(--neba-muted-fg)",J?"sticky z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...mn,top:J?2!==a&&Ve?qe:0:void 0,textAlign:u},children:[o?t("button",{type:"button",className:K(D,"end"===u?"justify-end":"center"===u?"justify-center":"justify-start"),onClick:e=>((e,t)=>{const n=g(st,e,t&&"multiple"===ae);void 0===oe&&lt(n),se?.(n)})(n.key,e.shiftKey),children:[e("span",{className:"min-w-0 truncate",children:n.label??n.key}),e("span",{"aria-hidden":"true",className:K("flex items-center","desc"===s?.direction?"rotate-0":"rotate-180",s?"":"text-transparent group-hover/sort:text-inherit group-focus-visible/sort:text-inherit"),children:e(M,{})}),c>1?e("span",{"aria-hidden":"true",className:"text-[0.85em] tabular-nums",children:c}):null]}):e("span",{className:"block truncate",children:n.label??n.key}),l&&r<Ye.length-1?e("span",{"aria-hidden":"true",className:L,onPointerDown:e=>((e,t)=>{t.preventDefault(),t.stopPropagation();const n=t.currentTarget,r={...Xt};for(const e of Ye){const t=Vt.current.get(e.key);t&&void 0===r[e.key]&&(r[e.key]=Math.round(t.getBoundingClientRect().width))}const a="rtl"===getComputedStyle(n).direction,o=t.clientX,l=r[e]??m,s=Ye.find(t=>t.key===e)?.minWidth??f;n.setPointerCapture(t.pointerId);const i=t=>{const n=(t.clientX-o)*(a?-1:1);Yt({...r,[e]:Math.max(s,Math.round(l+n))})},c=()=>{n.removeEventListener("pointermove",i),n.removeEventListener("pointerup",c),n.removeEventListener("pointercancel",c)};n.addEventListener("pointermove",i),n.addEventListener("pointerup",c),n.addEventListener("pointercancel",c)})(n.key,e),onDoubleClick:()=>(e=>{const t={...Xt};delete t[e],Yt(t)})(n.key)}):null]},n.key)},kn=t=>e("span",{className:"flex items-center justify-center",children:t}),wn=t=>e("td",{role:Ge?"gridcell":void 0,style:{...pn,padding:0,overflow:"visible"},children:kn(e(o,{size:W,color:F,checked:Ct.has(t.key),"aria-label":Ie.selectRow,onCheckedChange:()=>{Je?jt(t.key):$t(t.key)}}))}),xn=Je?kn(e(o,{size:W,color:F,checked:an,indeterminate:rn>0&&!an,"aria-label":Ie.selectAll,onCheckedChange:()=>{if(an){const e=new Set(yt);zt([...Ct].filter(t=>!e.has(t)))}else zt([...new Set([...Ct,...yt])])}})):null,Cn=cn?e("th",{"aria-hidden":"true",className:K(J?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...mn,padding:0}}):null,Sn=(t,n)=>n>0?e("tr",{"aria-hidden":"true",style:{height:`${n}px`},children:e("td",{colSpan:un,style:{padding:0,border:0}})},t):null;return t(a,{variant:I,size:W,color:F,density:O,elevation:q,padded:!1,className:K("flex flex-col overflow-hidden",Ge?"has-[:focus-visible]:[outline:2px_solid_var(--n-ring)] has-[:focus-visible]:outline-offset-2":"",Te),style:{...R,...He},...Be,children:[Ee||z(De)?t("div",{className:"flex items-center gap-2",style:{padding:`${Ue} ${Ue}`,borderBottom:"1px solid var(--n-line)"},children:[Ee?e(i,{size:W,color:F,density:O,variant:"outline",type:"search",className:"w-full max-w-64",startIcon:e(P,{}),placeholder:_e??Ie.search,"aria-label":_e??Ie.search,value:ze??et,onChange:e=>{const t=e.target.value;void 0===ze&&tt(t),yn(1),je?.(t)}}):null,z(De)?e("div",{className:"ms-auto flex items-center gap-2",children:De}):null]}):null,e("div",{ref:_t,className:"min-h-0 flex-auto overflow-auto overscroll-contain",style:{height:A(U),maxHeight:A(X)},onScroll:It,children:t("table",{ref:Dt,role:Ge?"grid":void 0,"aria-label":Z,"aria-multiselectable":Je||void 0,"aria-rowcount":Bt?gt.length+1:void 0,"aria-activedescendant":Ot?`${Fe}-${St}`:void 0,tabIndex:Ge?0:void 0,className:K("w-full text-start [outline:none]",N[W],"text-(--neba-fg)",Ge?"select-none":""),style:{tableLayout:"fixed",borderCollapse:"separate",borderSpacing:0,minWidth:`${sn}px`},onKeyDown:function(e){if(!Ge||e.target!==e.currentTarget)return;const t=Kt.current.paged;if(0===t.length)return;const n=null===St?-1:Kt.current.pagedKeys.indexOf(St),r=Math.max(1,Math.floor((Lt||10*Oe)/Oe)-1);switch(e.key){case"ArrowDown":Jt(n+1,e);break;case"ArrowUp":Jt(-1===n?0:n-1,e);break;case"Home":Jt(0,e);break;case"End":Jt(t.length-1,e);break;case"PageDown":Jt(-1===n?0:n+r,e);break;case"PageUp":Jt(-1===n?0:n-r,e);break;case" ":-1!==n&&(e.preventDefault(),(e.ctrlKey||e.metaKey)&&Je?jt(t[n].key):$t(t[n].key));break;case"a":case"A":(e.ctrlKey||e.metaKey)&&Je&&(e.preventDefault(),zt(Kt.current.pagedKeys));break;case"Escape":e.preventDefault(),zt([]);break;case"Enter":-1!==n&&ye&&(e.preventDefault(),ye(t[n].row,vt+n))}},children:[Q?e("caption",{className:K($[W],"text-(--neba-muted-fg)"),style:{padding:`0.5rem ${Ue}`,textAlign:"start"},children:Q}):null,t("colgroup",{children:[Qe?e("col",{style:{width:`${on}px`}}):null,Ye.map(t=>{const n=ln(t);return e("col",{style:void 0===n?void 0:{width:`${n}px`}},t.key)}),cn?e("col",{}):null]}),t("thead",{children:[Ve?t("tr",{style:{height:`${qe}px`},children:[Qe?e("th",{scope:"col",rowSpan:2,className:K(J?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...mn,padding:0,overflow:"visible"},children:xn}):null,dn.map(t=>void 0===t.label?bn(Ye[t.from],t.from,2):e("th",{scope:"colgroup",colSpan:t.span,className:K("font-semibold text-(--neba-muted-fg) select-none",J?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...mn,textAlign:"center"},children:t.label},`group-${t.from}`)),cn?r.cloneElement(Cn,{rowSpan:2}):null]}):null,t("tr",{style:{height:`${qe}px`},children:[Qe&&!Ve?e("th",{scope:"col",className:K(J?"sticky top-0 z-20 [backdrop-filter:var(--neba-blur)]":""),style:{...mn,padding:0,overflow:"visible"},children:xn}):null,Ye.map((e,t)=>Ve&&void 0===e.group?null:bn(e,t)),cn&&!Ve?Cn:null]})]}),e("tbody",{ref:Rt,children:0===gt.length?e("tr",{children:e("td",{colSpan:un,className:"text-(--neba-muted-fg)",style:{padding:`2rem ${Ue}`,textAlign:"center"},children:ee??We.title})}):t(n,{children:[Sn("before",Wt.before),Ft.map((n,r)=>{const a=Wt.start+r,o=Ct.has(n.key),l=St===n.key;return t("tr",{id:`${Fe}-${n.key}`,"aria-selected":Ge?o:void 0,"aria-rowindex":Bt?a+2:void 0,"data-neba-row":n.key,className:K(_,o?"[--n-row:var(--n-soft-press)]":!1!==V&&a%2===hn?"[--n-row:var(--n-stripe)]":"",!o&&G?"hover:[--n-row:var(--n-soft)]":"",l&&Ge?"[box-shadow:inset_0_0_0_1px_var(--n-ring)]":"",Ge||ve?"cursor-default":""),style:{height:`${Oe}px`,backgroundColor:"var(--n-row)"},onPointerDown:e=>nn(n,e),onClick:e=>ve?.(n.row,vt+a,e),onDoubleClick:()=>ye?.(n.row,vt+a),children:[Qe?wn(n):null,Ye.map(t=>e("td",{role:Ge?"gridcell":void 0,style:{...pn,textAlign:t.align??"start"},children:t.render?t.render(n.row,vt+a):n.row[t.key]},t.key)),cn?e("td",{"aria-hidden":"true",style:{...pn,padding:0}}):null]},n.key)}),Sn("after",Wt.after)]})})]})}),gn?t("div",{className:K("flex flex-wrap items-center gap-3",$[W]),style:{padding:`0.375rem ${Ue}`,borderTop:"1px solid var(--n-line)"},children:[e("span",{className:"text-(--neba-muted-fg) tabular-nums",children:vn}),Ge&&Ct.size>0?e("span",{className:"text-(--n-accent) tabular-nums",children:x(Ie.selected,{count:fn.format(Ct.size)})}):null,t("div",{className:"ms-auto flex items-center gap-2",children:["pages"===be&&Ne.length>0?e(n,{children:e(s,{size:W,color:F,density:O,variant:"outline",label:Ie.rowsPerPage,items:Ne.map(e=>({value:e})),value:mt,onValueChange:e=>{const t=Number(e);void 0===Ce&&pt(t),yn(Math.floor(ft.start/t)+1),Me?.(t)}})}):null,"pages"===be?e(l,{size:W,color:F,count:ft.pages,page:ft.page,siblingCount:0,onPageChange:yn}):null]})]}):null,!gn&&Bt?e("span",{className:E,"aria-live":"polite",children:vn}):null]})}
@@ -1,2 +1,2 @@
1
- export { DataTable } from './DataTable';
2
- export type { DataTableColumn, DataTablePaging, DataTableProps, DataTableSelectionMode, DataTableSort, DataTableSortDirection, DataTableStage, DataTableStripe } from './DataTable';
1
+ export { DataTable } from './DataTable.js';
2
+ export type { DataTableColumn, DataTablePaging, DataTableProps, DataTableSelectionMode, DataTableSort, DataTableSortDirection, DataTableStage, DataTableStripe } from './DataTable.js';
@@ -1 +1 @@
1
- export{DataTable}from"./DataTable";
1
+ export{DataTable}from"./DataTable.js";
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { type PickerLabels } from '../../internal/calendar';
3
- import { type PickerShellProps } from '../../internal/picker';
4
- import type { NebaWeekday } from '../../types';
2
+ import { type PickerLabels } from '../../internal/calendar.js';
3
+ import { type PickerShellProps } from '../../internal/picker.js';
4
+ import type { NebaWeekday } from '../../types.js';
5
5
  /**
6
6
  * What the four pickers agree on, so a caller who has learned one has learned
7
7
  * the others. Spelled out here rather than in `internal/` because these are the
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import*as t from"react";import{Button as l}from"../button/Button";import{Calendar as o,usePickerLabels as n}from"../../internal/calendar";import{CalendarIcon as r}from"../../internal/icons";import{PickerFooter as i,PickerShell as s}from"../../internal/picker";import{displaySamples as c,formatDate as d,isDayOutside as m,isValidDate as u,localeWeekStart as p,mergeDateAndTime as f,startOfDay as h,startOfMonth as b,toISODate as y,today as x,withPlaceholder as v}from"../../internal/date";import{cx as D}from"../../internal/styles";export const DatePicker=t.forwardRef(function({value:O,defaultValue:S,onValueChange:g,open:C,defaultOpen:k,onOpenChange:z,defaultMonth:w,minDate:j,maxDate:M,shouldDisableDate:V,locale:B,weekStartsOn:I,format:R={dateStyle:"medium"},placeholder:E,clearable:F=!1,showTodayButton:N=!0,closeOnSelect:P=!0,labels:T,name:q,size:A="md",color:G="primary",readOnly:H=!1,disabled:J=!1,startIcon:K,...L},Q){const U=n(T),W=I??p(B),[X,Y]=t.useState(S??null),Z=void 0!==O?O:X,[$,_]=t.useState(k??!1),ee=C??$,[ae,te]=t.useState(()=>b(u(Z)?Z:w??x()));t.useEffect(()=>{ee&&te(b(u(Z)?Z:w??x()))},[ee]);const le=e=>{e&&(H||J)||(void 0===C&&_(e),z?.(e))},oe=e=>{void 0===O&&Y(e),g?.(e)},ne=e=>{const a=u(Z)?f(e,Z):h(e);oe(a),te(b(a)),P&&le(!1)},re=x(),ie=m(re,j,M)||(V?.(re)??!1),se=N||F,ce=t.useMemo(()=>v(c(B,R),E),[B,R,E]);return e(s,{...L,size:A,color:G,readOnly:H,disabled:J,triggerRef:Q,startIcon:K??e(r,{}),display:u(Z)?d(Z,B,R):E??"",samples:ce,empty:!u(Z),clearable:F,onClear:()=>oe(null),open:ee,onOpenChange:le,labels:U,hiddenValues:q?[{name:q,value:u(Z)?y(Z):""}]:void 0,children:a("div",{className:D("flex flex-col",se&&"gap-1.5"),children:[e(o,{size:A,color:G,locale:B,weekStartsOn:W,month:ae,onMonthChange:te,selected:[Z],onSelect:ne,minDate:j,maxDate:M,shouldDisableDate:V,labels:U,autoFocus:!0}),se?a(i,{size:A,children:[F?e(l,{variant:"text",size:A,color:G,density:"compact",onClick:()=>{oe(null),le(!1)},children:U.clear}):null,N?e(l,{variant:"text",size:A,color:G,density:"compact",disabled:ie,onClick:()=>ne(re),children:U.today}):null]}):null]})})});
1
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import*as t from"react";import{Button as l}from"../button/Button.js";import{Calendar as o,usePickerLabels as n}from"../../internal/calendar.js";import{CalendarIcon as r}from"../../internal/icons.js";import{PickerFooter as s,PickerShell as i}from"../../internal/picker.js";import{displaySamples as c,formatDate as d,isDayOutside as m,isValidDate as u,localeWeekStart as p,mergeDateAndTime as f,startOfDay as h,startOfMonth as b,toISODate as y,today as x,withPlaceholder as j}from"../../internal/date.js";import{cx as v}from"../../internal/styles.js";export const DatePicker=/*@__PURE__*/t.forwardRef(function({value:D,defaultValue:O,onValueChange:S,open:g,defaultOpen:C,onOpenChange:k,defaultMonth:z,minDate:w,maxDate:M,shouldDisableDate:V,locale:B,weekStartsOn:I,format:R={dateStyle:"medium"},placeholder:E,clearable:F=!1,showTodayButton:N=!0,closeOnSelect:P=!0,labels:T,name:q,size:A="md",color:G="primary",readOnly:H=!1,disabled:J=!1,startIcon:K,...L},Q){const U=n(T),W=I??p(B),[X,Y]=t.useState(O??null),Z=void 0!==D?D:X,[$,_]=t.useState(C??!1),ee=g??$,[ae,te]=t.useState(()=>b(u(Z)?Z:z??x()));t.useEffect(()=>{ee&&te(b(u(Z)?Z:z??x()))},[ee]);const le=e=>{e&&(H||J)||(void 0===g&&_(e),k?.(e))},oe=e=>{void 0===D&&Y(e),S?.(e)},ne=e=>{const a=u(Z)?f(e,Z):h(e);oe(a),te(b(a)),P&&le(!1)},re=x(),se=m(re,w,M)||(V?.(re)??!1),ie=N||F,ce=t.useMemo(()=>j(c(B,R),E),[B,R,E]);return e(i,{...L,size:A,color:G,readOnly:H,disabled:J,triggerRef:Q,startIcon:K??e(r,{}),display:u(Z)?d(Z,B,R):E??"",samples:ce,empty:!u(Z),clearable:F,onClear:()=>oe(null),open:ee,onOpenChange:le,labels:U,hiddenValues:q?[{name:q,value:u(Z)?y(Z):""}]:void 0,children:a("div",{className:v("flex flex-col",ie&&"gap-1.5"),children:[e(o,{size:A,color:G,locale:B,weekStartsOn:W,month:ae,onMonthChange:te,selected:[Z],onSelect:ne,minDate:w,maxDate:M,shouldDisableDate:V,labels:U,autoFocus:!0}),ie?a(s,{size:A,children:[F?e(l,{variant:"text",size:A,color:G,density:"compact",onClick:()=>{oe(null),le(!1)},children:U.clear}):null,N?e(l,{variant:"text",size:A,color:G,density:"compact",disabled:se,onClick:()=>ne(re),children:U.today}):null]}):null]})})});
@@ -1,2 +1,2 @@
1
- export { DatePicker } from './DatePicker';
2
- export type { DatePickerProps } from './DatePicker';
1
+ export { DatePicker } from './DatePicker.js';
2
+ export type { DatePickerProps } from './DatePicker.js';
@@ -1 +1 @@
1
- export{DatePicker}from"./DatePicker";
1
+ export{DatePicker}from"./DatePicker.js";
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { type PickerLabels } from '../../internal/calendar';
3
- import { type PickerShellProps } from '../../internal/picker';
4
- import type { NebaWeekday } from '../../types';
2
+ import { type PickerLabels } from '../../internal/calendar.js';
3
+ import { type PickerShellProps } from '../../internal/picker.js';
4
+ import type { NebaWeekday } from '../../types.js';
5
5
  /**
6
6
  * Two ends, either of which may be missing.
7
7
  *
@@ -1 +1 @@
1
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import*as n from"react";import{Button as a}from"../button/Button";import{Calendar as t,usePickerLabels as r}from"../../internal/calendar";import{ArrowRightIcon as s,CalendarIcon as o}from"../../internal/icons";import{PickerFooter as i,PickerShell as c}from"../../internal/picker";import{WidthSizer as u}from"../../internal/sizer";import{addMonths as d,compareDay as m,displaySamples as h,formatDate as p,isValidDate as f,localeWeekStart as x,startOfDay as v,startOfMonth as g,toISODate as b,today as w,withPlaceholder as y}from"../../internal/date";import{cx as N,gapClasses as S,metaTextClasses as C}from"../../internal/styles";const D={start:null,end:null};export const DateRangePicker=n.forwardRef(function({value:O,defaultValue:k,onValueChange:z,open:P,defaultOpen:j,onOpenChange:B,defaultMonth:M,minDate:R,maxDate:V,shouldDisableDate:E,locale:I,weekStartsOn:F,format:q={dateStyle:"medium"},monthCount:A=2,startPlaceholder:G,endPlaceholder:H,presets:J,clearable:K=!1,closeOnSelect:L=!0,labels:Q,name:T,size:U="md",color:W="primary",readOnly:X=!1,disabled:Y=!1,startIcon:Z,...$},_){const ee=r(Q),le=F??x(I),[ne,ae]=n.useState(k??D),te=void 0!==O?O??D:ne,re=f(te.start)?te.start:null,se=f(te.end)?te.end:null,[oe,ie]=n.useState(j??!1),ce=P??oe,[ue,de]=n.useState(null),[me,he]=n.useState(null),[pe,fe]=n.useState(()=>g(re??M??w()));n.useEffect(()=>{ce?fe(g(re??M??w())):(de(null),he(null))},[ce]);const xe=e=>{e&&(X||Y)||(void 0===P&&ie(e),B?.(e))},ve=e=>{void 0===O&&ae(e),z?.(e)},ge=ue??re,be=null!==ue?me:se,we=(l,n)=>f(l)?p(l,I,q):e("span",{className:"text-(--neba-muted-fg)",children:n??""}),ye=d(pe,1),Ne=2===A,Se=h(I,q),Ce=null!==ue?ee.end:null===re?ee.start:null,De={size:U,color:W,locale:I,weekStartsOn:le,selected:[re,se,ue],rangeStart:ge,rangeEnd:be,onSelect:e=>{const l=v(e);if(null===ue)return de(l),he(l),void ve({start:l,end:null});const[n,a]=m(l,ue)<0?[l,ue]:[ue,l];de(null),he(null),ve({start:n,end:a}),L&&xe(!1)},onPreviewChange:e=>{null!==ue&&he(e??ue)},minDate:R,maxDate:V,shouldDisableDate:E,showOutsideDays:!1,labels:ee};return e(c,{...$,size:U,color:W,readOnly:X,disabled:Y,triggerRef:_,startIcon:Z??e(o,{}),display:l("span",{className:"flex min-w-0 items-center gap-1.5",children:[l("span",{className:"flex min-w-0 flex-col",children:[e("span",{className:"truncate",children:we(re,G)}),e(u,{samples:y(Se,G)})]}),e("span",{"aria-hidden":"true",className:"flex shrink-0 items-center text-(--neba-muted-fg) rtl:rotate-180",children:e(s,{})}),l("span",{className:"flex min-w-0 flex-col",children:[e("span",{className:"truncate",children:we(se,H)}),e(u,{samples:y(Se,H)})]})]}),empty:null===re&&null===se,clearable:K,onClear:()=>ve(D),open:ce,onOpenChange:xe,labels:ee,hiddenValues:T?[{name:T,value:re?b(re):""},{name:T,value:se?b(se):""}]:void 0,children:l("div",{className:"flex flex-col gap-1.5",children:[l("div",{className:N("flex items-stretch",S[U]),children:[J&&J.length>0?e("div",{className:N("flex max-h-[calc(var(--n-cell,2rem)*8)] flex-col overflow-y-auto border-e pe-1.5","[border-color:var(--n-line)]"),children:J.map((l,n)=>e(a,{variant:"text",size:U,color:W,density:"compact",className:"justify-start whitespace-nowrap",onClick:()=>(e=>{const l="function"==typeof e.value?e.value():e.value;de(null),he(null),ve(l),f(l.start)&&fe(g(l.start)),L&&xe(!1)})(l),children:l.label},n))}):null,e(t,{...De,month:pe,onMonthChange:fe,showNextButton:!Ne,autoFocus:!0}),Ne?e(t,{...De,month:ye,onMonthChange:e=>fe(d(e,-1)),showPreviousButton:!1}):null]}),K||null!==Ce?l(i,{size:U,children:[null!==Ce?e("span",{className:N("me-auto text-(--neba-muted-fg)",C[U]),children:Ce}):null,K?e(a,{variant:"text",size:U,color:W,density:"compact",onClick:()=>{de(null),he(null),ve(D),xe(!1)},children:ee.clear}):null]}):null]})})});
1
+ import{jsx as e,jsxs as l}from"react/jsx-runtime";import*as n from"react";import{Button as a}from"../button/Button.js";import{Calendar as t,usePickerLabels as s}from"../../internal/calendar.js";import{ArrowRightIcon as r,CalendarIcon as o}from"../../internal/icons.js";import{PickerFooter as i,PickerShell as c}from"../../internal/picker.js";import{WidthSizer as u}from"../../internal/sizer.js";import{addMonths as d,compareDay as m,displaySamples as h,formatDate as p,isValidDate as f,localeWeekStart as x,startOfDay as v,startOfMonth as g,toISODate as b,today as w,withPlaceholder as y}from"../../internal/date.js";import{cx as N,gapClasses as j,metaTextClasses as S}from"../../internal/styles.js";const C={start:null,end:null};export const DateRangePicker=/*@__PURE__*/n.forwardRef(function({value:D,defaultValue:O,onValueChange:k,open:z,defaultOpen:P,onOpenChange:B,defaultMonth:M,minDate:R,maxDate:V,shouldDisableDate:E,locale:I,weekStartsOn:F,format:q={dateStyle:"medium"},monthCount:A=2,startPlaceholder:G,endPlaceholder:H,presets:J,clearable:K=!1,closeOnSelect:L=!0,labels:Q,name:T,size:U="md",color:W="primary",readOnly:X=!1,disabled:Y=!1,startIcon:Z,...$},_){const ee=s(Q),le=F??x(I),[ne,ae]=n.useState(O??C),te=void 0!==D?D??C:ne,se=f(te.start)?te.start:null,re=f(te.end)?te.end:null,[oe,ie]=n.useState(P??!1),ce=z??oe,[ue,de]=n.useState(null),[me,he]=n.useState(null),[pe,fe]=n.useState(()=>g(se??M??w()));n.useEffect(()=>{ce?fe(g(se??M??w())):(de(null),he(null))},[ce]);const xe=e=>{e&&(X||Y)||(void 0===z&&ie(e),B?.(e))},ve=e=>{void 0===D&&ae(e),k?.(e)},ge=ue??se,be=null!==ue?me:re,we=(l,n)=>f(l)?p(l,I,q):e("span",{className:"text-(--neba-muted-fg)",children:n??""}),ye=d(pe,1),Ne=2===A,je=h(I,q),Se=null!==ue?ee.end:null===se?ee.start:null,Ce={size:U,color:W,locale:I,weekStartsOn:le,selected:[se,re,ue],rangeStart:ge,rangeEnd:be,onSelect:e=>{const l=v(e);if(null===ue)return de(l),he(l),void ve({start:l,end:null});const[n,a]=m(l,ue)<0?[l,ue]:[ue,l];de(null),he(null),ve({start:n,end:a}),L&&xe(!1)},onPreviewChange:e=>{null!==ue&&he(e??ue)},minDate:R,maxDate:V,shouldDisableDate:E,showOutsideDays:!1,labels:ee};return e(c,{...$,size:U,color:W,readOnly:X,disabled:Y,triggerRef:_,startIcon:Z??e(o,{}),display:l("span",{className:"flex min-w-0 items-center gap-1.5",children:[l("span",{className:"flex min-w-0 flex-col",children:[e("span",{className:"truncate",children:we(se,G)}),e(u,{samples:y(je,G)})]}),e("span",{"aria-hidden":"true",className:"flex shrink-0 items-center text-(--neba-muted-fg) rtl:rotate-180",children:e(r,{})}),l("span",{className:"flex min-w-0 flex-col",children:[e("span",{className:"truncate",children:we(re,H)}),e(u,{samples:y(je,H)})]})]}),empty:null===se&&null===re,clearable:K,onClear:()=>ve(C),open:ce,onOpenChange:xe,labels:ee,hiddenValues:T?[{name:T,value:se?b(se):""},{name:T,value:re?b(re):""}]:void 0,children:l("div",{className:"flex flex-col gap-1.5",children:[l("div",{className:N("flex items-stretch",j[U]),children:[J&&J.length>0?e("div",{className:N("flex max-h-[calc(var(--n-cell,2rem)*8)] flex-col overflow-y-auto border-e pe-1.5","[border-color:var(--n-line)]"),children:J.map((l,n)=>e(a,{variant:"text",size:U,color:W,density:"compact",className:"justify-start whitespace-nowrap",onClick:()=>(e=>{const l="function"==typeof e.value?e.value():e.value;de(null),he(null),ve(l),f(l.start)&&fe(g(l.start)),L&&xe(!1)})(l),children:l.label},n))}):null,e(t,{...Ce,month:pe,onMonthChange:fe,showNextButton:!Ne,autoFocus:!0}),Ne?e(t,{...Ce,month:ye,onMonthChange:e=>fe(d(e,-1)),showPreviousButton:!1}):null]}),K||null!==Se?l(i,{size:U,children:[null!==Se?e("span",{className:N("me-auto text-(--neba-muted-fg)",S[U]),children:Se}):null,K?e(a,{variant:"text",size:U,color:W,density:"compact",onClick:()=>{de(null),he(null),ve(C),xe(!1)},children:ee.clear}):null]}):null]})})});
@@ -1,2 +1,2 @@
1
- export { DateRangePicker } from './DateRangePicker';
2
- export type { DateRange, DateRangePickerProps, DateRangePreset } from './DateRangePicker';
1
+ export { DateRangePicker } from './DateRangePicker.js';
2
+ export type { DateRange, DateRangePickerProps, DateRangePreset } from './DateRangePicker.js';
@@ -1 +1 @@
1
- export{DateRangePicker}from"./DateRangePicker";
1
+ export{DateRangePicker}from"./DateRangePicker.js";
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
- import { type PickerLabels } from '../../internal/calendar';
3
- import { type PickerShellProps } from '../../internal/picker';
4
- import { type TimeUnit } from '../../internal/date';
5
- import type { NebaWeekday } from '../../types';
2
+ import { type PickerLabels } from '../../internal/calendar.js';
3
+ import { type PickerShellProps } from '../../internal/picker.js';
4
+ import { type TimeUnit } from '../../internal/date.js';
5
+ import type { NebaWeekday } from '../../types.js';
6
6
  export interface DateTimePickerProps extends PickerShellProps {
7
7
  /** The chosen moment. Use with `onValueChange` for a controlled picker. */
8
8
  value?: Date | null;
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as l from"react";import{Button as o}from"../button/Button";import{Calendar as n,TimeGrid as a,usePickerLabels as s}from"../../internal/calendar";import{CalendarIcon as i}from"../../internal/icons";import{PickerDivider as r,PickerFooter as c,PickerShell as d}from"../../internal/picker";import{displaySamples as m,formatDate as u,isDayOutside as h,isHour12 as p,isValidDate as f,localeWeekStart as S,mergeDateAndTime as b,startOfDay as y,startOfMonth as D,timeUnitSpan as g,toISODateTime as v,today as x,withPlaceholder as C,withTime as w}from"../../internal/date";import{cx as k,gapClasses as z}from"../../internal/styles";export const DateTimePicker=l.forwardRef(function({value:O,defaultValue:T,onValueChange:j,open:N,defaultOpen:V,onOpenChange:B,defaultMonth:I,minDate:M,maxDate:R,shouldDisableDate:E,shouldDisableTime:F,locale:P,weekStartsOn:q,format:A={dateStyle:"medium",timeStyle:"short"},hour12:G,showSeconds:H=!1,hourStep:J=1,minuteStep:K=1,secondStep:L=1,placeholder:Q,clearable:U=!1,showNowButton:W=!0,closeOnSelect:X=!1,labels:Y,name:Z,size:$="md",color:_="primary",density:ee="default",readOnly:te=!1,disabled:le=!1,startIcon:oe,...ne},ae){const se=s(Y),ie=q??S(P),re=G??p(P),[ce,de]=l.useState(T??null),me=void 0!==O?O:ce,[ue,he]=l.useState(V??!1),pe=N??ue,[fe,Se]=l.useState(()=>D(f(me)?me:I??x()));l.useEffect(()=>{pe&&Se(D(f(me)?me:I??x()))},[pe]);const be=e=>{e&&(te||le)||(void 0===N&&he(e),B?.(e))},ye=e=>{void 0===O&&de(e),j?.(e)},De=l.useCallback((e,t)=>{const[l,o]=g(t,e),n=y(e).getTime();return!!(f(M)&&n+1e3*o<M.getTime())||(!!(f(R)&&n+1e3*l>R.getTime())||(F?.(e,t)??!1))},[M,R,F]),ge=new Date,ve=w(ge,{seconds:H?ge.getSeconds():0}),xe=h(ve,M,R)||(E?.(ve)??!1)||De(ve,"second"),Ce=C(m(P,A),Q);return e(d,{...ne,size:$,color:_,density:ee,readOnly:te,disabled:le,triggerRef:ae,startIcon:oe??e(i,{}),display:f(me)?u(me,P,A):Q??"",samples:Ce,empty:!f(me),clearable:U,onClear:()=>ye(null),open:pe,onOpenChange:be,labels:se,hiddenValues:Z?[{name:Z,value:f(me)?v(me,H):""}]:void 0,children:t("div",{className:"flex flex-col gap-1.5",children:[t("div",{className:k("flex items-stretch",z[$]),children:[e(n,{size:$,color:_,locale:P,weekStartsOn:ie,month:fe,onMonthChange:Se,selected:[me],onSelect:e=>{const t=f(me)?b(e,me):y(e);ye(t),Se(D(t)),X&&be(!1)},minDate:M,maxDate:R,shouldDisableDate:E,labels:se,autoFocus:!0}),e(r,{}),e(a,{size:$,density:ee,locale:P,value:f(me)?me:null,referenceDate:f(me)?me:x(),onChange:ye,hour12:re,showSeconds:H,hourStep:J,minuteStep:K,secondStep:L,shouldDisableTime:De,labels:se})]}),t(c,{size:$,children:[U?e(o,{variant:"text",size:$,color:_,density:"compact",onClick:()=>{ye(null),be(!1)},children:se.clear}):null,W?e(o,{variant:"text",size:$,color:_,density:"compact",disabled:xe,onClick:()=>{ye(ve),Se(D(ve))},children:se.now}):null,e(o,{variant:"solid",size:$,color:_,density:"compact",onClick:()=>be(!1),children:se.done})]})]})})});
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import*as l from"react";import{Button as o}from"../button/Button.js";import{Calendar as n,TimeGrid as a,usePickerLabels as s}from"../../internal/calendar.js";import{CalendarIcon as i}from"../../internal/icons.js";import{PickerDivider as r,PickerFooter as c,PickerShell as d}from"../../internal/picker.js";import{displaySamples as m,formatDate as u,isDayOutside as h,isHour12 as p,isValidDate as f,localeWeekStart as S,mergeDateAndTime as b,startOfDay as y,startOfMonth as D,timeUnitSpan as g,toISODateTime as v,today as x,withPlaceholder as C,withTime as j}from"../../internal/date.js";import{cx as w,gapClasses as k}from"../../internal/styles.js";export const DateTimePicker=/*@__PURE__*/l.forwardRef(function({value:z,defaultValue:O,onValueChange:T,open:N,defaultOpen:V,onOpenChange:B,defaultMonth:I,minDate:M,maxDate:R,shouldDisableDate:E,shouldDisableTime:F,locale:P,weekStartsOn:q,format:A={dateStyle:"medium",timeStyle:"short"},hour12:G,showSeconds:H=!1,hourStep:J=1,minuteStep:K=1,secondStep:L=1,placeholder:Q,clearable:U=!1,showNowButton:W=!0,closeOnSelect:X=!1,labels:Y,name:Z,size:$="md",color:_="primary",density:ee="default",readOnly:te=!1,disabled:le=!1,startIcon:oe,...ne},ae){const se=s(Y),ie=q??S(P),re=G??p(P),[ce,de]=l.useState(O??null),me=void 0!==z?z:ce,[ue,he]=l.useState(V??!1),pe=N??ue,[fe,Se]=l.useState(()=>D(f(me)?me:I??x()));l.useEffect(()=>{pe&&Se(D(f(me)?me:I??x()))},[pe]);const be=e=>{e&&(te||le)||(void 0===N&&he(e),B?.(e))},ye=e=>{void 0===z&&de(e),T?.(e)},De=l.useCallback((e,t)=>{const[l,o]=g(t,e),n=y(e).getTime();return!!(f(M)&&n+1e3*o<M.getTime())||(!!(f(R)&&n+1e3*l>R.getTime())||(F?.(e,t)??!1))},[M,R,F]),ge=new Date,ve=j(ge,{seconds:H?ge.getSeconds():0}),xe=h(ve,M,R)||(E?.(ve)??!1)||De(ve,"second"),Ce=C(m(P,A),Q);return e(d,{...ne,size:$,color:_,density:ee,readOnly:te,disabled:le,triggerRef:ae,startIcon:oe??e(i,{}),display:f(me)?u(me,P,A):Q??"",samples:Ce,empty:!f(me),clearable:U,onClear:()=>ye(null),open:pe,onOpenChange:be,labels:se,hiddenValues:Z?[{name:Z,value:f(me)?v(me,H):""}]:void 0,children:t("div",{className:"flex flex-col gap-1.5",children:[t("div",{className:w("flex items-stretch",k[$]),children:[e(n,{size:$,color:_,locale:P,weekStartsOn:ie,month:fe,onMonthChange:Se,selected:[me],onSelect:e=>{const t=f(me)?b(e,me):y(e);ye(t),Se(D(t)),X&&be(!1)},minDate:M,maxDate:R,shouldDisableDate:E,labels:se,autoFocus:!0}),e(r,{}),e(a,{size:$,density:ee,locale:P,value:f(me)?me:null,referenceDate:f(me)?me:x(),onChange:ye,hour12:re,showSeconds:H,hourStep:J,minuteStep:K,secondStep:L,shouldDisableTime:De,labels:se})]}),t(c,{size:$,children:[U?e(o,{variant:"text",size:$,color:_,density:"compact",onClick:()=>{ye(null),be(!1)},children:se.clear}):null,W?e(o,{variant:"text",size:$,color:_,density:"compact",disabled:xe,onClick:()=>{ye(ve),Se(D(ve))},children:se.now}):null,e(o,{variant:"solid",size:$,color:_,density:"compact",onClick:()=>be(!1),children:se.done})]})]})})});
@@ -1,2 +1,2 @@
1
- export { DateTimePicker } from './DateTimePicker';
2
- export type { DateTimePickerProps } from './DateTimePicker';
1
+ export { DateTimePicker } from './DateTimePicker.js';
2
+ export type { DateTimePickerProps } from './DateTimePicker.js';
@@ -1 +1 @@
1
- export{DateTimePicker}from"./DateTimePicker";
1
+ export{DateTimePicker}from"./DateTimePicker.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { Dialog as BaseUIDialog } from '@base-ui/react/dialog';
3
- import type { NebaStyleProps } from '../../types';
3
+ import type { NebaStyleProps } from '../../types.js';
4
4
  /**
5
5
  * A dialog takes `size`, `color` and `density` and stops there.
6
6
  *
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import{Dialog as n}from"@base-ui/react/dialog";import{boxPaddingXClasses as l,boxPaddingYClasses as i}from"../box/Box";import{useMessages as o}from"../../internal/i18n";import{CloseIcon as r}from"../../internal/icons";import{hasContent as t,metaTextClasses as s,radiusClasses as c,sheetBodyClasses as d,sheetHeaderGapClasses as m,sheetSectionGapClasses as f,sheetTitleClasses as p,surfaceClasses as u,surfaceSlots as x}from"../../internal/styles";const b={xs:"max-w-80",sm:"max-w-96",md:"max-w-lg",lg:"max-w-2xl",xl:"max-w-4xl"},h=[u,"relative flex w-full flex-col overflow-hidden","border text-(--neba-fg) bg-(--n-panel-press)","[border-color:var(--n-line)]","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]","[outline:none]","[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"].join(" "),g=["fixed inset-0 z-50 bg-(--neba-scrim)","[backdrop-filter:blur(2px)]","[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"].join(" "),v="border-t [border-color:var(--n-line)]";export const DialogClose=n.Close;export function Dialog({size:u="md",color:y="primary",density:w="default",open:j,defaultOpen:$,onOpenChange:_,trigger:N,title:k,description:C,actions:z,dividers:B=!1,showClose:D=!0,locale:O,closeLabel:P,width:T,fullWidth:W=!0,fullScreen:L=!1,modal:R=!0,dismissible:S=!0,className:V,style:q,children:A,...E}){const F=o(O),G=l[w][u],H=i[w][u],I=B?`${G} ${H}`:G,J=t(k)||t(C),K=t(z);return a(n.Root,{open:j,defaultOpen:$,modal:R,disablePointerDismissal:!S,onOpenChange:(e,a)=>{S||e||"escape-key"!==a.reason?_?.(e):a.cancel()},children:[N?e(n.Trigger,{render:N}):null,a(n.Portal,{children:[e(n.Backdrop,{className:`neba-portal ${g}`}),e(n.Viewport,{className:["neba-portal fixed inset-0 z-50 flex justify-center",L?"items-stretch":"items-center p-4"].join(" "),children:a(n.Popup,{className:[h,d[u],L?"h-full max-w-none rounded-none":`max-h-full ${c[u]} ${void 0===T?b[u]:""}`,L||W?"":"w-auto",B?"":`${H} ${f[u]}`,V??""].filter(Boolean).join(" "),style:{...x(y,3),...void 0===T?null:{maxWidth:"number"==typeof T?`${T}px`:T},...q},...E,children:[J||D?a("div",{className:`flex shrink-0 items-start gap-3 ${I}`,children:[a("div",{className:`flex min-w-0 flex-1 flex-col ${m[u]}`,children:[t(k)?e(n.Title,{className:`font-semibold ${p[u]} m-0`,children:k}):null,t(C)?e(n.Description,{className:`m-0 text-(--neba-muted-fg) ${s[u]}`,children:C}):null]}),D?e(n.Close,{"aria-label":P??F.action.close,className:["flex size-[1.6em] shrink-0 cursor-pointer items-center justify-center","rounded-full text-(--neba-muted-fg)","[&_svg]:size-[1.1em] [&_svg]:shrink-0","[transition:background-color_var(--neba-duration)_var(--neba-ease),color_var(--neba-duration)_var(--neba-ease)]","hover:bg-(--n-soft) hover:text-(--neba-fg)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" "),children:e(r,{})}):null]}):null,t(A)?e("div",{className:["min-h-0 flex-1 overflow-y-auto overscroll-contain",I,B&&(J||D)?v:"",B?"":"py-1 -my-1"].filter(Boolean).join(" "),children:A}):null,K?e("div",{className:["flex shrink-0 flex-wrap items-center justify-end gap-2",I,B?v:""].filter(Boolean).join(" "),children:z}):null]})})]})]})}
1
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import{Dialog as l}from"@base-ui/react/dialog";import{boxPaddingXClasses as n,boxPaddingYClasses as i}from"../box/Box.js";import{actionMessages as o,useMessages as r}from"../../internal/i18n.js";import{CloseIcon as t}from"../../internal/icons.js";import{hasContent as s,metaTextClasses as c,radiusClasses as d,sheetBodyClasses as m,sheetHeaderGapClasses as f,sheetSectionGapClasses as p,sheetTitleClasses as u,surfaceClasses as x,surfaceSlots as b}from"../../internal/styles.js";const h={xs:"max-w-80",sm:"max-w-96",md:"max-w-lg",lg:"max-w-2xl",xl:"max-w-4xl"},g=[x,"relative flex w-full flex-col overflow-hidden","border text-(--neba-fg) bg-(--n-panel-press)","[border-color:var(--n-line)]","[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]","[outline:none]","[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"].join(" "),v=["fixed inset-0 z-50 bg-(--neba-scrim)","[backdrop-filter:blur(2px)]","[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"].join(" "),y="border-t [border-color:var(--n-line)]";export const DialogClose=l.Close;export function Dialog({size:x="md",color:j="primary",density:w="default",open:$,defaultOpen:_,onOpenChange:N,trigger:k,title:C,description:z,actions:B,dividers:D=!1,showClose:O=!0,locale:P,closeLabel:T,width:W,fullWidth:L=!0,fullScreen:R=!1,modal:S=!0,dismissible:V=!0,className:q,style:A,children:E,...F}){const G=r(o,P),H=n[w][x],I=i[w][x],J=D?`${H} ${I}`:H,K=s(C)||s(z),M=s(B);return a(l.Root,{open:$,defaultOpen:_,modal:S,disablePointerDismissal:!V,onOpenChange:(e,a)=>{V||e||"escape-key"!==a.reason?N?.(e):a.cancel()},children:[k?e(l.Trigger,{render:k}):null,a(l.Portal,{children:[e(l.Backdrop,{className:`neba-portal ${v}`}),e(l.Viewport,{className:["neba-portal fixed inset-0 z-50 flex justify-center",R?"items-stretch":"items-center p-4"].join(" "),children:a(l.Popup,{className:[g,m[x],R?"h-full max-w-none rounded-none":`max-h-full ${d[x]} ${void 0===W?h[x]:""}`,R||L?"":"w-auto",D?"":`${I} ${p[x]}`,q??""].filter(Boolean).join(" "),style:{...b(j,3),...void 0===W?null:{maxWidth:"number"==typeof W?`${W}px`:W},...A},...F,children:[K||O?a("div",{className:`flex shrink-0 items-start gap-3 ${J}`,children:[a("div",{className:`flex min-w-0 flex-1 flex-col ${f[x]}`,children:[s(C)?e(l.Title,{className:`font-semibold ${u[x]} m-0`,children:C}):null,s(z)?e(l.Description,{className:`m-0 text-(--neba-muted-fg) ${c[x]}`,children:z}):null]}),O?e(l.Close,{"aria-label":T??G.close,className:["flex size-[1.6em] shrink-0 cursor-pointer items-center justify-center","rounded-full text-(--neba-muted-fg)","[&_svg]:size-[1.1em] [&_svg]:shrink-0","[transition:background-color_var(--neba-duration)_var(--neba-ease),color_var(--neba-duration)_var(--neba-ease)]","hover:bg-(--n-soft) hover:text-(--neba-fg)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" "),children:e(t,{})}):null]}):null,s(E)?e("div",{className:["min-h-0 flex-1 overflow-y-auto overscroll-contain",J,D&&(K||O)?y:"",D?"":"py-1 -my-1"].filter(Boolean).join(" "),children:E}):null,M?e("div",{className:["flex shrink-0 flex-wrap items-center justify-end gap-2",J,D?y:""].filter(Boolean).join(" "),children:B}):null]})})]})]})}
@@ -1,2 +1,2 @@
1
- export { Dialog, DialogClose } from './Dialog';
2
- export type { DialogCloseProps, DialogProps } from './Dialog';
1
+ export { Dialog, DialogClose } from './Dialog.js';
2
+ export type { DialogCloseProps, DialogProps } from './Dialog.js';
@@ -1 +1 @@
1
- export{Dialog,DialogClose}from"./Dialog";
1
+ export{Dialog,DialogClose}from"./Dialog.js";
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import type { NebaAlign, NebaColor, NebaOrientation, NebaSize } from '../../types';
2
+ import type { NebaAlign, NebaColor, NebaOrientation, NebaSize } from '../../types.js';
3
3
  /** Where the label sits along a labelled divider. Ignored without a label. */
4
4
  export type DividerTextAlign = NebaAlign;
5
5
  export interface DividerProps extends Omit<React.ComponentPropsWithoutRef<'div'>, 'color' | 'children'> {
@@ -1 +1 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import*as t from"react";import{Separator as n}from"@base-ui/react/separator";import{metaTextClasses as l}from"../../internal/styles";const i="[border-color:var(--n-line)]";function a(e){return"number"==typeof e?`${e}px`:e}const o={horizontal:{start:["w-4 shrink-0","flex-1"],center:["flex-1","flex-1"],end:["flex-1","w-4 shrink-0"]},vertical:{start:["h-4 shrink-0","flex-1"],center:["flex-1","flex-1"],end:["flex-1","h-4 shrink-0"]}},s={xs:"gap-1.5",sm:"gap-2",md:"gap-3",lg:"gap-3.5",xl:"gap-4"};export const Divider=t.forwardRef(function({orientation:t="horizontal",color:c="primary",size:d="md",length:f,thickness:h,textAlign:m="center",className:p,style:u,children:x,...w},b){const v="vertical"===t,g=null!=x&&!1!==x&&""!==x,$={"--n-line":`var(--neba-${c}-line)`,"--n-rule":a(h)??"1px"},y=a(f),j={...$,...void 0===y?null:v?{height:y}:{width:y},...u};if(!g)return e(n,{ref:b,orientation:t,className:[v?"w-0 border-l [border-left-width:var(--n-rule)] "+(void 0===y?"self-stretch":""):"h-0 w-full border-t [border-top-width:var(--n-rule)]",i,p??""].filter(Boolean).join(" "),style:j,...w});const[k,N]=o[t][m],z=v?"w-0 border-l [border-left-width:var(--n-rule)]":"h-0 border-t [border-top-width:var(--n-rule)]";return r(n,{ref:b,orientation:t,"aria-label":"string"==typeof x?x:void 0,className:["flex items-center",v?"w-auto flex-col "+(void 0===y?"self-stretch":""):"w-full",s[d],p??""].filter(Boolean).join(" "),style:j,...w,children:[e("span",{"aria-hidden":"true",className:`${z} ${k} ${i}`}),e("span",{className:["shrink-0 whitespace-nowrap text-(--neba-muted-fg)",l[d],v?"[writing-mode:vertical-rl]":""].filter(Boolean).join(" "),children:x}),e("span",{"aria-hidden":"true",className:`${z} ${N} ${i}`})]})});
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import*as t from"react";import{Separator as n}from"@base-ui/react/separator";import{metaTextClasses as l}from"../../internal/styles.js";const i="[border-color:var(--n-line)]";function a(e){return"number"==typeof e?`${e}px`:e}const o={horizontal:{start:["w-4 shrink-0","flex-1"],center:["flex-1","flex-1"],end:["flex-1","w-4 shrink-0"]},vertical:{start:["h-4 shrink-0","flex-1"],center:["flex-1","flex-1"],end:["flex-1","h-4 shrink-0"]}},s={xs:"gap-1.5",sm:"gap-2",md:"gap-3",lg:"gap-3.5",xl:"gap-4"};export const Divider=/*@__PURE__*/t.forwardRef(function({orientation:t="horizontal",color:c="primary",size:d="md",length:f,thickness:h,textAlign:m="center",className:p,style:u,children:x,...w},b){const v="vertical"===t,g=null!=x&&!1!==x&&""!==x,$={"--n-line":`var(--neba-${c}-line)`,"--n-rule":a(h)??"1px"},j=a(f),y={...$,...void 0===j?null:v?{height:j}:{width:j},...u};if(!g)return e(n,{ref:b,orientation:t,className:[v?"w-0 border-l [border-left-width:var(--n-rule)] "+(void 0===j?"self-stretch":""):"h-0 w-full border-t [border-top-width:var(--n-rule)]",i,p??""].filter(Boolean).join(" "),style:y,...w});const[k,N]=o[t][m],z=v?"w-0 border-l [border-left-width:var(--n-rule)]":"h-0 border-t [border-top-width:var(--n-rule)]";return r(n,{ref:b,orientation:t,"aria-label":"string"==typeof x?x:void 0,className:["flex items-center",v?"w-auto flex-col "+(void 0===j?"self-stretch":""):"w-full",s[d],p??""].filter(Boolean).join(" "),style:y,...w,children:[e("span",{"aria-hidden":"true",className:`${z} ${k} ${i}`}),e("span",{className:["shrink-0 whitespace-nowrap text-(--neba-muted-fg)",l[d],v?"[writing-mode:vertical-rl]":""].filter(Boolean).join(" "),children:x}),e("span",{"aria-hidden":"true",className:`${z} ${N} ${i}`})]})});
@@ -1,2 +1,2 @@
1
- export { Divider } from './Divider';
2
- export type { DividerProps, DividerTextAlign } from './Divider';
1
+ export { Divider } from './Divider.js';
2
+ export type { DividerProps, DividerTextAlign } from './Divider.js';
@@ -1 +1 @@
1
- export{Divider}from"./Divider";
1
+ export{Divider}from"./Divider.js";
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { Dialog as BaseUIDialog } from '@base-ui/react/dialog';
3
- import type { NebaSide, NebaStyleProps } from '../../types';
3
+ import type { NebaSide, NebaStyleProps } from '../../types.js';
4
4
  /**
5
5
  * How the panel relates to the page.
6
6
  *
@@ -1 +1 @@
1
- import{jsx as e,jsxs as r,Fragment as a}from"react/jsx-runtime";import{Dialog as n}from"@base-ui/react/dialog";import{boxPaddingXClasses as l,boxPaddingYClasses as o}from"../box/Box";import{useMessages as s}from"../../internal/i18n";import{CloseIcon as i}from"../../internal/icons";import{hasContent as d,metaTextClasses as t,sheetBodyClasses as u,sheetHeaderGapClasses as b,sheetSectionGapClasses as m,sheetTitleClasses as c,surfaceClasses as f,surfaceSlots as x}from"../../internal/styles";const p={xs:"w-56",sm:"w-64",md:"w-80",lg:"w-96",xl:"w-[28rem]"},g={left:{xs:"rounded-r-(--neba-radius-xs)",sm:"rounded-r-(--neba-radius-sm)",md:"rounded-r-(--neba-radius-md)",lg:"rounded-r-(--neba-radius-lg)",xl:"rounded-r-(--neba-radius-xl)"},right:{xs:"rounded-l-(--neba-radius-xs)",sm:"rounded-l-(--neba-radius-sm)",md:"rounded-l-(--neba-radius-md)",lg:"rounded-l-(--neba-radius-lg)",xl:"rounded-l-(--neba-radius-xl)"},top:{xs:"rounded-b-(--neba-radius-xs)",sm:"rounded-b-(--neba-radius-sm)",md:"rounded-b-(--neba-radius-md)",lg:"rounded-b-(--neba-radius-lg)",xl:"rounded-b-(--neba-radius-xl)"},bottom:{xs:"rounded-t-(--neba-radius-xs)",sm:"rounded-t-(--neba-radius-sm)",md:"rounded-t-(--neba-radius-md)",lg:"rounded-t-(--neba-radius-lg)",xl:"rounded-t-(--neba-radius-xl)"}},h={left:"border-r",right:"border-l",top:"border-b",bottom:"border-t"},v={left:"flex-row justify-start",right:"flex-row justify-end",top:"flex-col justify-start",bottom:"flex-col justify-end"},y=[f,"relative flex flex-col overflow-hidden","text-(--neba-fg) bg-(--n-panel-press)","[border-color:var(--n-line)]","[outline:none]"].join(" "),w=["[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"].join(" "),j=["fixed inset-0 z-50 bg-(--neba-scrim)","[backdrop-filter:blur(2px)]",w].join(" "),N="border-t [border-color:var(--n-line)]",$=["flex size-[1.6em] shrink-0 cursor-pointer items-center justify-center","rounded-full text-(--neba-muted-fg)","[&_svg]:size-[1.1em] [&_svg]:shrink-0","[transition:background-color_var(--neba-duration)_var(--neba-ease),color_var(--neba-duration)_var(--neba-ease)]","hover:bg-(--n-soft) hover:text-(--neba-fg)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" ");export const DrawerClose=n.Close;export function Drawer({side:f="left",mode:_="overlay",size:k="md",color:C="primary",density:z="default",open:B,defaultOpen:D,onOpenChange:O,trigger:P,title:T,description:F,actions:L,dividers:R=!1,showClose:V,locale:q,closeLabel:A,extent:E,rounded:G=!0,modal:H=!0,dismissible:I=!0,className:J,style:K,children:M,...Q}){const S=s(q),U="overlay"===_,W="left"===f||"right"===f,X=V??U,Y=l[z][k],Z=o[z][k],ee=R?`${Y} ${Z}`:Y,re=d(T)||d(F),ae=d(L),ne=void 0===E?null:{[W?"width":"height"]:"number"==typeof E?`${E}px`:E},le=[y,u[k],h[f],G?g[f][k]:"",U?"[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]":"[box-shadow:var(--neba-plate-glass)]",U?w:"",W?`h-full max-w-full ${void 0===E?p[k]:""}`:"w-full "+(void 0===E?"max-h-[85%]":""),R?"":`${Z} ${m[k]}`,J??""].filter(Boolean).join(" "),oe=U?n.Title:"h2",se=U?n.Description:"p",ie=r(a,{children:[re||X?r("div",{className:`flex shrink-0 items-start gap-3 ${ee}`,children:[r("div",{className:`flex min-w-0 flex-1 flex-col ${b[k]}`,children:[d(T)?e(oe,{className:`m-0 font-semibold ${c[k]}`,children:T}):null,d(F)?e(se,{className:`m-0 text-(--neba-muted-fg) ${t[k]}`,children:F}):null]}),X?U?e(n.Close,{"aria-label":A??S.action.close,className:$,children:e(i,{})}):e("button",{type:"button","aria-label":A??S.action.close,className:$,onClick:()=>O?.(!1),children:e(i,{})}):null]}):null,d(M)?e("div",{className:["min-h-0 flex-1 overflow-y-auto overscroll-contain",ee,R&&(re||X)?N:"",R?"":"py-1 -my-1"].filter(Boolean).join(" "),children:M}):null,ae?e("div",{className:["flex shrink-0 flex-wrap items-center justify-end gap-2",ee,R?N:""].filter(Boolean).join(" "),children:L}):null]});return U?r(n.Root,{open:B,defaultOpen:D,modal:H,disablePointerDismissal:!I,onOpenChange:(e,r)=>{I||e||"escape-key"!==r.reason?O?.(e):r.cancel()},children:[P?e(n.Trigger,{render:P}):null,r(n.Portal,{children:[e(n.Backdrop,{className:`neba-portal ${j}`}),e(n.Viewport,{className:`neba-portal fixed inset-0 z-50 flex ${v[f]}`,children:e(n.Popup,{className:le,style:{...x(C,3),...ne,...K},...Q,children:ie})})]})]}):B??D??1?e("div",{className:le,style:{...x(C,0),...ne,...K},children:ie}):null}
1
+ import{jsx as e,jsxs as r,Fragment as a}from"react/jsx-runtime";import{Dialog as l}from"@base-ui/react/dialog";import{boxPaddingXClasses as n,boxPaddingYClasses as o}from"../box/Box.js";import{actionMessages as s,useMessages as i}from"../../internal/i18n.js";import{CloseIcon as d}from"../../internal/icons.js";import{hasContent as t,metaTextClasses as u,sheetBodyClasses as b,sheetHeaderGapClasses as m,sheetSectionGapClasses as c,sheetTitleClasses as f,surfaceClasses as x,surfaceSlots as p}from"../../internal/styles.js";const g={xs:"w-56",sm:"w-64",md:"w-80",lg:"w-96",xl:"w-[28rem]"},h={left:{xs:"rounded-r-(--neba-radius-xs)",sm:"rounded-r-(--neba-radius-sm)",md:"rounded-r-(--neba-radius-md)",lg:"rounded-r-(--neba-radius-lg)",xl:"rounded-r-(--neba-radius-xl)"},right:{xs:"rounded-l-(--neba-radius-xs)",sm:"rounded-l-(--neba-radius-sm)",md:"rounded-l-(--neba-radius-md)",lg:"rounded-l-(--neba-radius-lg)",xl:"rounded-l-(--neba-radius-xl)"},top:{xs:"rounded-b-(--neba-radius-xs)",sm:"rounded-b-(--neba-radius-sm)",md:"rounded-b-(--neba-radius-md)",lg:"rounded-b-(--neba-radius-lg)",xl:"rounded-b-(--neba-radius-xl)"},bottom:{xs:"rounded-t-(--neba-radius-xs)",sm:"rounded-t-(--neba-radius-sm)",md:"rounded-t-(--neba-radius-md)",lg:"rounded-t-(--neba-radius-lg)",xl:"rounded-t-(--neba-radius-xl)"}},v={left:"border-r",right:"border-l",top:"border-b",bottom:"border-t"},y={left:"flex-row justify-start",right:"flex-row justify-end",top:"flex-col justify-start",bottom:"flex-col justify-end"},w=[x,"relative flex flex-col overflow-hidden","text-(--neba-fg) bg-(--n-panel-press)","[border-color:var(--n-line)]","[outline:none]"].join(" "),j=["[transition:opacity_var(--neba-duration)_var(--neba-ease)]","data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"].join(" "),N=["fixed inset-0 z-50 bg-(--neba-scrim)","[backdrop-filter:blur(2px)]",j].join(" "),$="border-t [border-color:var(--n-line)]",_=["flex size-[1.6em] shrink-0 cursor-pointer items-center justify-center","rounded-full text-(--neba-muted-fg)","[&_svg]:size-[1.1em] [&_svg]:shrink-0","[transition:background-color_var(--neba-duration)_var(--neba-ease),color_var(--neba-duration)_var(--neba-ease)]","hover:bg-(--n-soft) hover:text-(--neba-fg)","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2"].join(" ");export const DrawerClose=l.Close;export function Drawer({side:x="left",mode:k="overlay",size:C="md",color:z="primary",density:B="default",open:D,defaultOpen:O,onOpenChange:P,trigger:T,title:F,description:L,actions:R,dividers:V=!1,showClose:q,locale:A,closeLabel:E,extent:G,rounded:H=!0,modal:I=!0,dismissible:J=!0,className:K,style:M,children:Q,...S}){const U=i(s,A),W="overlay"===k,X="left"===x||"right"===x,Y=q??W,Z=n[B][C],ee=o[B][C],re=V?`${Z} ${ee}`:Z,ae=t(F)||t(L),le=t(R),ne=void 0===G?null:{[X?"width":"height"]:"number"==typeof G?`${G}px`:G},oe=[w,b[C],v[x],H?h[x][C]:"",W?"[box-shadow:var(--neba-shadow-3),var(--neba-plate-glass)]":"[box-shadow:var(--neba-plate-glass)]",W?j:"",X?`h-full max-w-full ${void 0===G?g[C]:""}`:"w-full "+(void 0===G?"max-h-[85%]":""),V?"":`${ee} ${c[C]}`,K??""].filter(Boolean).join(" "),se=W?l.Title:"h2",ie=W?l.Description:"p",de=r(a,{children:[ae||Y?r("div",{className:`flex shrink-0 items-start gap-3 ${re}`,children:[r("div",{className:`flex min-w-0 flex-1 flex-col ${m[C]}`,children:[t(F)?e(se,{className:`m-0 font-semibold ${f[C]}`,children:F}):null,t(L)?e(ie,{className:`m-0 text-(--neba-muted-fg) ${u[C]}`,children:L}):null]}),Y?W?e(l.Close,{"aria-label":E??U.close,className:_,children:e(d,{})}):e("button",{type:"button","aria-label":E??U.close,className:_,onClick:()=>P?.(!1),children:e(d,{})}):null]}):null,t(Q)?e("div",{className:["min-h-0 flex-1 overflow-y-auto overscroll-contain",re,V&&(ae||Y)?$:"",V?"":"py-1 -my-1"].filter(Boolean).join(" "),children:Q}):null,le?e("div",{className:["flex shrink-0 flex-wrap items-center justify-end gap-2",re,V?$:""].filter(Boolean).join(" "),children:R}):null]});return W?r(l.Root,{open:D,defaultOpen:O,modal:I,disablePointerDismissal:!J,onOpenChange:(e,r)=>{J||e||"escape-key"!==r.reason?P?.(e):r.cancel()},children:[T?e(l.Trigger,{render:T}):null,r(l.Portal,{children:[e(l.Backdrop,{className:`neba-portal ${N}`}),e(l.Viewport,{className:`neba-portal fixed inset-0 z-50 flex ${y[x]}`,children:e(l.Popup,{className:oe,style:{...p(z,3),...ne,...M},...S,children:de})})]})]}):D??O??!0?e("div",{className:oe,style:{...p(z,0),...ne,...M},children:de}):null}
@@ -1,2 +1,2 @@
1
- export { Drawer, DrawerClose } from './Drawer';
2
- export type { DrawerCloseProps, DrawerProps, NebaDrawerMode } from './Drawer';
1
+ export { Drawer, DrawerClose } from './Drawer.js';
2
+ export type { DrawerCloseProps, DrawerProps, NebaDrawerMode } from './Drawer.js';
@@ -1 +1 @@
1
- export{Drawer,DrawerClose}from"./Drawer";
1
+ export{Drawer,DrawerClose}from"./Drawer.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, NebaStyleProps, NebaTransition } from '../../types';
3
+ import type { NebaElevation, NebaStyleProps, NebaTransition } from '../../types.js';
4
4
  export interface EmptyProps extends NebaStyleProps, Omit<React.ComponentPropsWithoutRef<'div'>, 'color' | 'title'> {
5
5
  /**
6
6
  * The headline. Defaults to the `locale`'s way of saying that there is
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import*as n from"react";import{useRender as l}from"@base-ui/react/use-render";import{boxPaddingXClasses as a}from"../box/Box";import{transitionProps as o}from"../../internal/animate";import{useMessages as s}from"../../internal/i18n";import{hasContent as i,iconClasses as m,radiusClasses as c,sheetBodyClasses as d,sheetHeaderGapClasses as x,sheetSectionGapClasses as p,sheetTitleClasses as f,surfaceClasses as u,surfaceSlots as h,transitionClasses as y}from"../../internal/styles";const v={default:{xs:"py-5",sm:"py-6",md:"py-8",lg:"py-10",xl:"py-12"},compact:{xs:"py-3",sm:"py-3.5",md:"py-4",lg:"py-5",xl:"py-6"}},b={xs:"text-[1.25rem]",sm:"text-[1.5rem]",md:"text-[1.75rem]",lg:"text-[2.125rem]",xl:"text-[2.5rem]"},g={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"};function j(){return t("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[e("path",{d:"M1.75 9.75h3l.9 1.6h4.7l.9-1.6h3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"m1.75 9.75 2.1-6a1.5 1.5 0 0 1 1.42-1h5.46a1.5 1.5 0 0 1 1.42 1l2.1 6v2a1.5 1.5 0 0 1-1.5 1.5h-9.5a1.5 1.5 0 0 1-1.5-1.5Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"})]})}export const Empty=n.forwardRef(function({variant:n="text",size:u="md",color:N="secondary",density:k="default",elevation:w=0,title:$,icon:B,action:L,locale:C,transition:W,render:z,className:E,style:F,children:M,...R},Z){const q=s(C),A=void 0===$?q.empty.title:$,D=void 0===B?e(j,{}):B,G=o(W),H=i(A),I=["flex w-full flex-col items-center justify-center text-center",a[k][u],v[k][u],c[u],p[u],y,g[n],G.className,E??""].filter(Boolean).join(" ");return l({render:z,ref:Z,props:{role:"status",className:I,style:{...h(N,w),...G.style,...F},children:t(r,{children:[i(D)?e("span",{className:`flex items-center text-(--neba-muted-fg) ${b[u]} ${m}`,children:D}):null,H||i(M)?t("div",{className:`flex max-w-prose flex-col items-center ${x[u]}`,children:[H?e("div",{className:`neba-title font-semibold ${f[u]}`,children:A}):null,i(M)?e("div",{className:`${d[u]} ${H?"text-(--neba-muted-fg)":""}`,children:M}):null]}):null,i(L)?e("div",{className:"flex flex-wrap items-center justify-center gap-2",children:L}):null]}),...R}})});
1
+ import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import*as n from"react";import{useRender as l}from"@base-ui/react/use-render";import{boxPaddingXClasses as a}from"../box/Box.js";import{transitionProps as o}from"../../internal/animate.js";import{emptyMessages as s,useMessages as i}from"../../internal/i18n.js";import{hasContent as m,iconClasses as c,radiusClasses as d,sheetBodyClasses as x,sheetHeaderGapClasses as p,sheetSectionGapClasses as f,sheetTitleClasses as u,surfaceClasses as h,surfaceSlots as v,transitionClasses as y}from"../../internal/styles.js";const b={default:{xs:"py-5",sm:"py-6",md:"py-8",lg:"py-10",xl:"py-12"},compact:{xs:"py-3",sm:"py-3.5",md:"py-4",lg:"py-5",xl:"py-6"}},g={xs:"text-[1.25rem]",sm:"text-[1.5rem]",md:"text-[1.75rem]",lg:"text-[2.125rem]",xl:"text-[2.5rem]"},j={solid:[h,"text-(--neba-fg) bg-(--n-panel-hover)","[box-shadow:var(--n-elev),var(--neba-plate-solid)]"].join(" "),outline:[h,"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"};function N(){return t("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[e("path",{d:"M1.75 9.75h3l.9 1.6h4.7l.9-1.6h3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"m1.75 9.75 2.1-6a1.5 1.5 0 0 1 1.42-1h5.46a1.5 1.5 0 0 1 1.42 1l2.1 6v2a1.5 1.5 0 0 1-1.5 1.5h-9.5a1.5 1.5 0 0 1-1.5-1.5Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"})]})}export const Empty=/*@__PURE__*/n.forwardRef(function({variant:n="text",size:h="md",color:k="secondary",density:w="default",elevation:$=0,title:B,icon:L,action:C,locale:W,transition:z,render:E,className:F,style:M,children:R,...Z},q){const A=i(s,W),D=void 0===B?A.title:B,G=void 0===L?e(N,{}):L,H=o(z),I=m(D),J=["flex w-full flex-col items-center justify-center text-center",a[w][h],b[w][h],d[h],f[h],y,j[n],H.className,F??""].filter(Boolean).join(" ");return l({render:E,ref:q,props:{role:"status",className:J,style:{...v(k,$),...H.style,...M},children:t(r,{children:[m(G)?e("span",{className:`flex items-center text-(--neba-muted-fg) ${g[h]} ${c}`,children:G}):null,I||m(R)?t("div",{className:`flex max-w-prose flex-col items-center ${p[h]}`,children:[I?e("div",{className:`neba-title font-semibold ${u[h]}`,children:D}):null,m(R)?e("div",{className:`${x[h]} ${I?"text-(--neba-muted-fg)":""}`,children:R}):null]}):null,m(C)?e("div",{className:"flex flex-wrap items-center justify-center gap-2",children:C}):null]}),...Z}})});
@@ -1,2 +1,2 @@
1
- export { Empty } from './Empty';
2
- export type { EmptyProps } from './Empty';
1
+ export { Empty } from './Empty.js';
2
+ export type { EmptyProps } from './Empty.js';
@@ -1 +1 @@
1
- export{Empty}from"./Empty";
1
+ export{Empty}from"./Empty.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
  /** Why a file was turned away. One reason per file, in the order they are checked. */
4
4
  export type FileRejectionReason = 'type' | 'size' | 'count';
5
5
  export interface FileRejection {
@@ -1 +1 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import*as n from"react";import{CloseIcon as t}from"../../internal/icons";import{controlTextLeadingClasses as a,disabledClasses as l,gapClasses as o,hasContent as i,iconClasses as s,metaTextClasses as c,radiusClasses as d,readOnlyFilterClasses as u,sheetTitleClasses as f,stackGapClasses as p,surfaceClasses as m,surfaceSlots as h,transitionClasses as b}from"../../internal/styles";const v={default:{xs:"p-4",sm:"p-5",md:"p-6",lg:"p-8",xl:"p-10"},compact:{xs:"p-2",sm:"p-3",md:"p-4",lg:"p-5",xl:"p-6"}},x={solid:[m,"border-2 border-dashed text-(--neba-fg) bg-(--n-panel-hover)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),outline:[m,"border-2 border-dashed text-(--neba-fg) bg-(--n-panel)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),text:"border-2 border-dashed text-(--neba-fg) bg-transparent [border-color:var(--n-line)]"},g={solid:"hover:bg-(--n-panel-press) hover:[border-color:var(--n-line-hover)]",outline:"hover:bg-(--n-panel-hover) hover:[border-color:var(--n-line-hover)]",text:"hover:bg-(--n-soft) hover:[border-color:var(--n-line-hover)]"};function y(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[e("path",{d:"M8 10.5V2.75m0 0L5.25 5.5M8 2.75 10.75 5.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"M2.75 9.75v1.75a1.75 1.75 0 0 0 1.75 1.75h7a1.75 1.75 0 0 0 1.75-1.75V9.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function formatFileSize(e){if(e<1e3)return`${e} B`;const r=["kB","MB","GB","TB"];let n=e/1e3,t=0;for(;n>=1e3&&t<r.length-1;)n/=1e3,t+=1;return`${n<10?n.toFixed(1):Math.round(n)} ${r[t]}`}function k(e,r){const n=e.name.toLowerCase(),t=e.type.toLowerCase();return r.split(",").map(e=>e.trim().toLowerCase()).filter(Boolean).some(e=>e.startsWith(".")?n.endsWith(e):e.endsWith("/*")?t.startsWith(`${e.slice(0,-1)}`):t===e)}export const FilePicker=n.forwardRef(function({variant:m="outline",size:N="md",color:$="primary",density:j="default",elevation:w=0,accept:z,multiple:C=!1,maxSize:_,maxFiles:L,value:B,defaultValue:D,onFilesChange:I,onReject:M,label:F,description:W,error:S,invalid:R,title:T,hint:V,icon:E,showList:O=!0,removeLabel:q=e=>`Remove ${e}`,fullWidth:A=!0,disabled:P=!1,readOnly:G=!1,required:H=!1,name:Y,id:J,className:K,style:Q,...U},X){const Z=n.useRef(null);n.useImperativeHandle(X,()=>Z.current);const[ee,re]=n.useState(()=>[...D??[]]),ne=n.useMemo(()=>B?[...B]:ee,[B,ee]),te=n.useRef(0),[ae,le]=n.useState(!1),oe=i(S),ie=R??oe,se=ie?"danger":$,ce=P||G,de=n.useId(),ue=n.useCallback(e=>{B||re(e),I?.(e)},[I,B]),fe=n.useCallback(e=>{const r=[],n=[],t=C?L??Number.POSITIVE_INFINITY:1,a=C?ne.length:0;for(const l of e)z&&!k(l,z)?n.push({file:l,reason:"type"}):void 0!==_&&l.size>_?n.push({file:l,reason:"size"}):a+r.length>=t?n.push({file:l,reason:"count"}):r.push(l);return{kept:r,rejections:n}},[z,ne.length,L,_,C]),pe=n.useCallback(e=>{const{kept:r,rejections:n}=fe(e);n.length>0&&M?.(n),r.length>0&&ue(C?[...ne,...r]:r)},[fe,ue,ne,C,M]),me=["flex w-full flex-col items-center justify-center text-center","cursor-pointer select-none",v[j][N],d[N],o[N],b,s,"focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2",P?`${l[m]} border-2 border-dashed`:G?`${x[m]} ${u} cursor-default`:x[m],ce?"":g[m],ae&&!ce?"bg-(--n-soft-press) [border-color:var(--n-ring)]":""].filter(Boolean).join(" ");return r("div",{className:["flex-col align-top",p[N],A?"flex w-full":"inline-flex",K??""].filter(Boolean).join(" "),style:{...h(se,w),...Q},...U,children:[i(F)?e("span",{className:[c[N],"font-medium",P?"text-(--neba-disabled-fg)":"text-(--neba-fg)"].join(" "),children:F}):null,r("div",{className:"flex w-full flex-col",onDragEnter:e=>{ce||(e.preventDefault(),te.current+=1,le(!0))},onDragOver:e=>{ce||(e.preventDefault(),e.dataTransfer.dropEffect="copy")},onDragLeave:()=>{ce||(te.current=Math.max(0,te.current-1),0===te.current&&le(!1))},onDrop:e=>{ce||(e.preventDefault(),te.current=0,le(!1),pe(Array.from(e.dataTransfer.files)))},children:[r("button",{type:"button",id:J,disabled:P,"aria-describedby":i(W)||oe?de:void 0,"aria-invalid":ie||void 0,className:me,onClick:()=>{ce||Z.current&&(Z.current.value="",Z.current.click())},children:[void 0===E?e("span",{className:"flex items-center text-(--n-accent) [&_svg]:size-[1.8em]",children:e(y,{})}):i(E)?e("span",{className:"flex items-center text-(--n-accent) [&_svg]:size-[1.8em]",children:E}):null,e("span",{className:`font-medium ${f[N]}`,children:T??"Drop files here, or click to browse"}),i(V)?e("span",{className:`text-(--neba-muted-fg) ${c[N]}`,children:V}):null]}),e("input",{ref:Z,type:"file",name:Y,accept:z,multiple:C,required:H&&0===ne.length,disabled:ce,tabIndex:-1,"aria-hidden":"true",className:"absolute size-px overflow-hidden opacity-0 [clip-path:inset(50%)]",onChange:e=>pe(Array.from(e.target.files??[]))})]}),O&&ne.length>0?e("ul",{role:"list",className:`flex w-full flex-col ${p[N]} m-0 list-none p-0`,children:ne.map((n,l)=>r("li",{className:["flex w-full items-center gap-2 px-2 py-1.5",d.xs,a[N],"bg-(--n-soft) text-(--neba-fg)"].join(" "),children:[e("span",{className:"min-w-0 flex-1 truncate",children:n.name}),e("span",{className:`shrink-0 text-(--neba-muted-fg) tabular-nums ${c[N]}`,children:formatFileSize(n.size)}),ce?null:e("button",{type:"button","aria-label":q(n.name),className:["inline-flex shrink-0 cursor-pointer items-center justify-center rounded-full","size-[1.3em] text-(--neba-muted-fg) opacity-70","[transition:opacity_var(--neba-duration)_var(--neba-ease),color_var(--neba-duration)_var(--neba-ease)]","[&_svg]:size-[0.9em]","hover:text-(--neba-fg) hover:opacity-100 focus-visible:opacity-100","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-1"].join(" "),onClick:()=>ue(ne.filter((e,r)=>r!==l)),children:e(t,{})})]},`${n.name}-${n.size}-${n.lastModified}-${l}`))}):null,i(W)&&!oe?e("span",{id:de,className:`${c[N]} text-(--neba-muted-fg)`,children:W}):null,oe?e("span",{id:de,className:`${c[N]} text-(--n-accent)`,children:S}):null]})});
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import*as n from"react";import{CloseIcon as t}from"../../internal/icons.js";import{controlTextLeadingClasses as a,disabledClasses as l,gapClasses as o,hasContent as i,iconClasses as s,metaTextClasses as c,radiusClasses as d,readOnlyFilterClasses as u,sheetTitleClasses as f,stackGapClasses as p,surfaceClasses as m,surfaceSlots as h,transitionClasses as b}from"../../internal/styles.js";const v={default:{xs:"p-4",sm:"p-5",md:"p-6",lg:"p-8",xl:"p-10"},compact:{xs:"p-2",sm:"p-3",md:"p-4",lg:"p-5",xl:"p-6"}},x={solid:[m,"border-2 border-dashed text-(--neba-fg) bg-(--n-panel-hover)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),outline:[m,"border-2 border-dashed text-(--neba-fg) bg-(--n-panel)","[border-color:var(--n-line)]","[box-shadow:var(--n-elev),var(--neba-plate-glass)]"].join(" "),text:"border-2 border-dashed text-(--neba-fg) bg-transparent [border-color:var(--n-line)]"},g={solid:"hover:bg-(--n-panel-press) hover:[border-color:var(--n-line-hover)]",outline:"hover:bg-(--n-panel-hover) hover:[border-color:var(--n-line-hover)]",text:"hover:bg-(--n-soft) hover:[border-color:var(--n-line-hover)]"};function y(){return r("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[e("path",{d:"M8 10.5V2.75m0 0L5.25 5.5M8 2.75 10.75 5.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"M2.75 9.75v1.75a1.75 1.75 0 0 0 1.75 1.75h7a1.75 1.75 0 0 0 1.75-1.75V9.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}export function formatFileSize(e){if(e<1e3)return`${e} B`;const r=["kB","MB","GB","TB"];let n=e/1e3,t=0;for(;n>=1e3&&t<r.length-1;)n/=1e3,t+=1;return`${n<10?n.toFixed(1):Math.round(n)} ${r[t]}`}function k(e,r){const n=e.name.toLowerCase(),t=e.type.toLowerCase();return r.split(",").map(e=>e.trim().toLowerCase()).filter(Boolean).some(e=>e.startsWith(".")?n.endsWith(e):e.endsWith("/*")?t.startsWith(`${e.slice(0,-1)}`):t===e)}export const FilePicker=/*@__PURE__*/n.forwardRef(function({variant:m="outline",size:N="md",color:j="primary",density:$="default",elevation:w=0,accept:z,multiple:C=!1,maxSize:_,maxFiles:L,value:B,defaultValue:D,onFilesChange:I,onReject:M,label:F,description:W,error:S,invalid:R,title:T,hint:V,icon:E,showList:O=!0,removeLabel:q=e=>`Remove ${e}`,fullWidth:A=!0,disabled:P=!1,readOnly:G=!1,required:H=!1,name:Y,id:J,className:K,style:Q,...U},X){const Z=n.useRef(null);n.useImperativeHandle(X,()=>Z.current);const[ee,re]=n.useState(()=>[...D??[]]),ne=n.useMemo(()=>B?[...B]:ee,[B,ee]),te=n.useRef(0),[ae,le]=n.useState(!1),oe=i(S),ie=R??oe,se=ie?"danger":j,ce=P||G,de=n.useId(),ue=n.useCallback(e=>{B||re(e),I?.(e)},[I,B]),fe=n.useCallback(e=>{const r=[],n=[],t=C?L??Number.POSITIVE_INFINITY:1,a=C?ne.length:0;for(const l of e)z&&!k(l,z)?n.push({file:l,reason:"type"}):void 0!==_&&l.size>_?n.push({file:l,reason:"size"}):a+r.length>=t?n.push({file:l,reason:"count"}):r.push(l);return{kept:r,rejections:n}},[z,ne.length,L,_,C]),pe=n.useCallback(e=>{const{kept:r,rejections:n}=fe(e);n.length>0&&M?.(n),r.length>0&&ue(C?[...ne,...r]:r)},[fe,ue,ne,C,M]),me=["flex w-full flex-col items-center justify-center text-center","cursor-pointer select-none",v[$][N],d[N],o[N],b,s,"focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-2",P?`${l[m]} border-2 border-dashed`:G?`${x[m]} ${u} cursor-default`:x[m],ce?"":g[m],ae&&!ce?"bg-(--n-soft-press) [border-color:var(--n-ring)]":""].filter(Boolean).join(" ");return r("div",{className:["flex-col align-top",p[N],A?"flex w-full":"inline-flex",K??""].filter(Boolean).join(" "),style:{...h(se,w),...Q},...U,children:[i(F)?e("span",{className:[c[N],"font-medium",P?"text-(--neba-disabled-fg)":"text-(--neba-fg)"].join(" "),children:F}):null,r("div",{className:"flex w-full flex-col",onDragEnter:e=>{ce||(e.preventDefault(),te.current+=1,le(!0))},onDragOver:e=>{ce||(e.preventDefault(),e.dataTransfer.dropEffect="copy")},onDragLeave:()=>{ce||(te.current=Math.max(0,te.current-1),0===te.current&&le(!1))},onDrop:e=>{ce||(e.preventDefault(),te.current=0,le(!1),pe(Array.from(e.dataTransfer.files)))},children:[r("button",{type:"button",id:J,disabled:P,"aria-describedby":i(W)||oe?de:void 0,"aria-invalid":ie||void 0,className:me,onClick:()=>{ce||Z.current&&(Z.current.value="",Z.current.click())},children:[void 0===E?e("span",{className:"flex items-center text-(--n-accent) [&_svg]:size-[1.8em]",children:e(y,{})}):i(E)?e("span",{className:"flex items-center text-(--n-accent) [&_svg]:size-[1.8em]",children:E}):null,e("span",{className:`font-medium ${f[N]}`,children:T??"Drop files here, or click to browse"}),i(V)?e("span",{className:`text-(--neba-muted-fg) ${c[N]}`,children:V}):null]}),e("input",{ref:Z,type:"file",name:Y,accept:z,multiple:C,required:H&&0===ne.length,disabled:ce,tabIndex:-1,"aria-hidden":"true",className:"absolute size-px overflow-hidden opacity-0 [clip-path:inset(50%)]",onChange:e=>pe(Array.from(e.target.files??[]))})]}),O&&ne.length>0?e("ul",{role:"list",className:`flex w-full flex-col ${p[N]} m-0 list-none p-0`,children:ne.map((n,l)=>r("li",{className:["flex w-full items-center gap-2 px-2 py-1.5",d.xs,a[N],"bg-(--n-soft) text-(--neba-fg)"].join(" "),children:[e("span",{className:"min-w-0 flex-1 truncate",children:n.name}),e("span",{className:`shrink-0 text-(--neba-muted-fg) tabular-nums ${c[N]}`,children:formatFileSize(n.size)}),ce?null:e("button",{type:"button","aria-label":q(n.name),className:["inline-flex shrink-0 cursor-pointer items-center justify-center rounded-full","size-[1.3em] text-(--neba-muted-fg) opacity-70","[transition:opacity_var(--neba-duration)_var(--neba-ease),color_var(--neba-duration)_var(--neba-ease)]","[&_svg]:size-[0.9em]","hover:text-(--neba-fg) hover:opacity-100 focus-visible:opacity-100","focus-visible:[outline:2px_solid_var(--n-ring)] focus-visible:outline-offset-1"].join(" "),onClick:()=>ue(ne.filter((e,r)=>r!==l)),children:e(t,{})})]},`${n.name}-${n.size}-${n.lastModified}-${l}`))}):null,i(W)&&!oe?e("span",{id:de,className:`${c[N]} text-(--neba-muted-fg)`,children:W}):null,oe?e("span",{id:de,className:`${c[N]} text-(--n-accent)`,children:S}):null]})});
@@ -1,2 +1,2 @@
1
- export { FilePicker, formatFileSize } from './FilePicker';
2
- export type { FilePickerProps, FileRejection, FileRejectionReason } from './FilePicker';
1
+ export { FilePicker, formatFileSize } from './FilePicker.js';
2
+ export type { FilePickerProps, FileRejection, FileRejectionReason } from './FilePicker.js';
@@ -1 +1 @@
1
- export{FilePicker,formatFileSize}from"./FilePicker";
1
+ export{FilePicker,formatFileSize}from"./FilePicker.js";