livemark 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (624) hide show
  1. package/package.json +14 -14
  2. package/source/actions/changelog/build.ts +245 -0
  3. package/source/actions/changelog/build.unit.ts +69 -0
  4. package/source/actions/config/define.ts +11 -0
  5. package/source/actions/config/define.unit.ts +33 -0
  6. package/source/actions/config/load.ts +22 -0
  7. package/source/actions/config/load.unit.ts +30 -0
  8. package/source/commands/build.ts +21 -0
  9. package/source/commands/escape.ts +77 -0
  10. package/source/commands/preview.ts +25 -0
  11. package/source/commands/start.ts +26 -0
  12. package/{build/website → source}/components/Article.tsx +12 -2
  13. package/{build/website → source}/components/Callout.tsx +1 -1
  14. package/{build/website → source}/components/Layout.tsx +3 -14
  15. package/{build/website → source}/components/LinkButton.tsx +1 -1
  16. package/{build/website → source}/components/PageToolbar.tsx +21 -8
  17. package/{build/website → source}/components/Section.tsx +1 -1
  18. package/{build/website → source}/components/SectionHeader.tsx +1 -1
  19. package/{build/website/components/MiniSidebar.tsx → source/components/Sidebar.tsx} +21 -5
  20. package/{build/website/components/Sidebar.tsx → source/components/SidebarArticles.tsx} +22 -55
  21. package/source/components/SidebarPosts.tsx +129 -0
  22. package/source/components/SidebarReleases.tsx +85 -0
  23. package/{build/website → source}/content-collections.ts +2 -2
  24. package/{build/website → source}/elements/accordion.tsx +1 -1
  25. package/{build/website → source}/elements/alert-dialog.tsx +1 -1
  26. package/{build/website → source}/elements/alert.tsx +1 -1
  27. package/{build/website → source}/elements/aspect-ratio.tsx +1 -1
  28. package/{build/website → source}/elements/avatar.tsx +1 -1
  29. package/{build/website → source}/elements/badge.tsx +1 -1
  30. package/{build/website → source}/elements/breadcrumb.tsx +1 -1
  31. package/{build/website → source}/elements/button-group.tsx +1 -1
  32. package/{build/website → source}/elements/button.tsx +1 -1
  33. package/{build/website → source}/elements/calendar.tsx +1 -1
  34. package/{build/website → source}/elements/card.tsx +1 -1
  35. package/{build/website → source}/elements/carousel.tsx +1 -1
  36. package/{build/website → source}/elements/chart.tsx +1 -1
  37. package/{build/website → source}/elements/checkbox.tsx +1 -1
  38. package/{build/website → source}/elements/command.tsx +1 -1
  39. package/{build/website → source}/elements/context-menu.tsx +1 -1
  40. package/{build/website → source}/elements/dialog.tsx +1 -1
  41. package/{build/website → source}/elements/drawer.tsx +1 -1
  42. package/{build/website → source}/elements/dropdown-menu.tsx +1 -1
  43. package/{build/website → source}/elements/empty.tsx +1 -1
  44. package/{build/website → source}/elements/field.tsx +1 -1
  45. package/{build/website → source}/elements/hover-card.tsx +1 -1
  46. package/{build/website → source}/elements/input-group.tsx +1 -1
  47. package/{build/website → source}/elements/input-otp.tsx +1 -1
  48. package/{build/website → source}/elements/input.tsx +1 -1
  49. package/{build/website → source}/elements/item.tsx +1 -1
  50. package/{build/website → source}/elements/kbd.tsx +1 -1
  51. package/{build/website → source}/elements/label.tsx +1 -1
  52. package/{build/website → source}/elements/menubar.tsx +1 -1
  53. package/{build/website → source}/elements/native-select.tsx +1 -1
  54. package/{build/website → source}/elements/navigation-menu.tsx +1 -1
  55. package/{build/website → source}/elements/pagination.tsx +1 -1
  56. package/{build/website → source}/elements/popover.tsx +1 -1
  57. package/{build/website → source}/elements/progress.tsx +1 -1
  58. package/{build/website → source}/elements/radio-group.tsx +1 -1
  59. package/{build/website → source}/elements/resizable.tsx +1 -1
  60. package/{build/website → source}/elements/scroll-area.tsx +1 -1
  61. package/{build/website → source}/elements/select.tsx +1 -1
  62. package/{build/website → source}/elements/separator.tsx +1 -1
  63. package/{build/website → source}/elements/sheet.tsx +1 -1
  64. package/{build/website → source}/elements/sidebar.tsx +7 -4
  65. package/{build/website → source}/elements/skeleton.tsx +1 -1
  66. package/{build/website → source}/elements/slider.tsx +1 -1
  67. package/{build/website → source}/elements/spinner.tsx +1 -1
  68. package/{build/website → source}/elements/switch.tsx +1 -1
  69. package/{build/website → source}/elements/table.tsx +1 -1
  70. package/{build/website → source}/elements/tabs.tsx +1 -1
  71. package/{build/website → source}/elements/textarea.tsx +1 -1
  72. package/{build/website → source}/elements/toggle-group.tsx +1 -1
  73. package/{build/website → source}/elements/toggle.tsx +1 -1
  74. package/{build/website → source}/elements/tooltip.tsx +1 -1
  75. package/source/entrypoints/main.ts +12 -0
  76. package/{build/website → source}/env.d.ts +1 -1
  77. package/source/helpers/program.ts +6 -0
  78. package/{build/website → source}/helpers/section.ts +1 -1
  79. package/source/hooks/media.ts +29 -0
  80. package/source/index.ts +1 -0
  81. package/{build/website → source}/models/article.ts +4 -0
  82. package/source/models/config.ts +51 -0
  83. package/source/models/link.ts +11 -0
  84. package/source/models/patch.ts +9 -0
  85. package/source/models/section.ts +45 -0
  86. package/source/models/theme.ts +74 -0
  87. package/{build/website → source}/plugins/vite-livemark.ts +0 -7
  88. package/source/program.ts +18 -0
  89. package/source/settings.ts +6 -0
  90. package/{build/website → source}/vite.config.ts +4 -3
  91. package/{build → target}/actions/changelog/build.d.ts +1 -0
  92. package/target/actions/changelog/build.js +187 -0
  93. package/target/actions/changelog/build.unit.js +66 -0
  94. package/target/actions/config/define.js +8 -0
  95. package/target/actions/config/define.unit.js +29 -0
  96. package/target/actions/config/load.js +25 -0
  97. package/target/actions/config/load.unit.js +23 -0
  98. package/target/client.d.ts +1 -0
  99. package/target/client.js +6 -0
  100. package/target/commands/build.js +14 -0
  101. package/target/commands/escape.js +56 -0
  102. package/target/commands/preview.js +18 -0
  103. package/target/commands/start.js +19 -0
  104. package/target/components/Abbr.d.ts +5 -0
  105. package/target/components/Abbr.js +9 -0
  106. package/target/components/AnsiCode.d.ts +4 -0
  107. package/target/components/AnsiCode.js +6 -0
  108. package/target/components/Article.d.ts +5 -0
  109. package/target/components/Article.js +105 -0
  110. package/target/components/BackToTop.d.ts +3 -0
  111. package/target/components/BackToTop.js +19 -0
  112. package/target/components/Banner.d.ts +2 -0
  113. package/target/components/Banner.js +12 -0
  114. package/target/components/BlogIndex.d.ts +4 -0
  115. package/target/components/BlogIndex.js +62 -0
  116. package/target/components/Breadcrumbs.d.ts +1 -0
  117. package/target/components/Breadcrumbs.js +13 -0
  118. package/target/components/Callout.d.ts +8 -0
  119. package/target/components/Callout.js +43 -0
  120. package/target/components/Card.d.ts +7 -0
  121. package/target/components/Card.js +17 -0
  122. package/target/components/Cards.d.ts +4 -0
  123. package/target/components/Cards.js +6 -0
  124. package/target/components/ChangelogIndex.d.ts +4 -0
  125. package/target/components/ChangelogIndex.js +57 -0
  126. package/target/components/CodeBlock.d.ts +1 -0
  127. package/target/components/CodeBlock.js +47 -0
  128. package/target/components/CodeTabs.d.ts +6 -0
  129. package/target/components/CodeTabs.js +49 -0
  130. package/target/components/Column.d.ts +4 -0
  131. package/target/components/Column.js +6 -0
  132. package/target/components/Columns.d.ts +5 -0
  133. package/target/components/Columns.js +10 -0
  134. package/target/components/Content.d.ts +3 -0
  135. package/target/components/Content.js +5 -0
  136. package/target/components/ContentTab.d.ts +5 -0
  137. package/target/components/ContentTab.js +6 -0
  138. package/target/components/ContentTabs.d.ts +5 -0
  139. package/target/components/ContentTabs.js +47 -0
  140. package/target/components/DefaultCatchBoundary.d.ts +2 -0
  141. package/target/components/DefaultCatchBoundary.js +20 -0
  142. package/target/components/DefinitionList.d.ts +7 -0
  143. package/target/components/DefinitionList.js +14 -0
  144. package/target/components/Details.d.ts +5 -0
  145. package/target/components/Details.js +13 -0
  146. package/target/components/FileTree.d.ts +4 -0
  147. package/target/components/FileTree.js +17 -0
  148. package/target/components/Footer.d.ts +2 -0
  149. package/target/components/Footer.js +9 -0
  150. package/target/components/FootnoteRef.d.ts +3 -0
  151. package/target/components/FootnoteRef.js +31 -0
  152. package/target/components/Heading.d.ts +8 -0
  153. package/target/components/Heading.js +18 -0
  154. package/target/components/InlineBadge.d.ts +5 -0
  155. package/target/components/InlineBadge.js +7 -0
  156. package/target/components/InlineIcon.d.ts +5 -0
  157. package/target/components/InlineIcon.js +10 -0
  158. package/target/components/InlineToc.d.ts +4 -0
  159. package/target/components/InlineToc.js +14 -0
  160. package/target/components/Layout.d.ts +4 -0
  161. package/target/components/Layout.js +65 -0
  162. package/target/components/LinkButton.d.ts +7 -0
  163. package/target/components/LinkButton.js +11 -0
  164. package/target/components/Mermaid.d.ts +4 -0
  165. package/target/components/Mermaid.js +8 -0
  166. package/target/components/MermaidRenderer.d.ts +4 -0
  167. package/target/components/MermaidRenderer.js +32 -0
  168. package/target/components/NotFound.d.ts +3 -0
  169. package/target/components/NotFound.js +10 -0
  170. package/target/components/PackageTabs.d.ts +9 -0
  171. package/target/components/PackageTabs.js +28 -0
  172. package/target/components/PageToolbar.d.ts +7 -0
  173. package/target/components/PageToolbar.js +34 -0
  174. package/target/components/PrevNext.d.ts +4 -0
  175. package/target/components/PrevNext.js +34 -0
  176. package/target/components/Search.d.ts +2 -0
  177. package/target/components/Search.js +16 -0
  178. package/target/components/SearchDialog.d.ts +5 -0
  179. package/target/components/SearchDialog.js +139 -0
  180. package/target/components/Section.d.ts +5 -0
  181. package/target/components/Section.js +8 -0
  182. package/target/components/SectionHeader.d.ts +7 -0
  183. package/target/components/SectionHeader.js +7 -0
  184. package/target/components/Sidebar.d.ts +4 -0
  185. package/target/components/Sidebar.js +33 -0
  186. package/target/components/SidebarArticles.d.ts +2 -0
  187. package/target/components/SidebarArticles.js +45 -0
  188. package/target/components/SidebarLinks.d.ts +4 -0
  189. package/target/components/SidebarLinks.js +26 -0
  190. package/target/components/SidebarPosts.d.ts +2 -0
  191. package/target/components/SidebarPosts.js +53 -0
  192. package/target/components/SidebarReleases.d.ts +2 -0
  193. package/target/components/SidebarReleases.js +35 -0
  194. package/target/components/SidebarSections.d.ts +4 -0
  195. package/target/components/SidebarSections.js +36 -0
  196. package/target/components/SiteTitle.d.ts +2 -0
  197. package/target/components/SiteTitle.js +12 -0
  198. package/target/components/SortableTable.d.ts +5 -0
  199. package/target/components/SortableTable.js +63 -0
  200. package/target/components/SoundCloud.d.ts +4 -0
  201. package/target/components/SoundCloud.js +7 -0
  202. package/target/components/TagIndex.d.ts +5 -0
  203. package/target/components/TagIndex.js +64 -0
  204. package/target/components/Theme.d.ts +1 -0
  205. package/target/components/Theme.js +21 -0
  206. package/target/components/Toc.d.ts +12 -0
  207. package/target/components/Toc.js +128 -0
  208. package/target/components/YouTube.d.ts +4 -0
  209. package/target/components/YouTube.js +6 -0
  210. package/target/components/ZoomImage.d.ts +4 -0
  211. package/target/components/ZoomImage.js +26 -0
  212. package/target/content/article.d.ts +43 -0
  213. package/target/content/article.js +54 -0
  214. package/target/content/tag.d.ts +2 -0
  215. package/target/content/tag.js +30 -0
  216. package/target/content-collections.d.ts +2 -0
  217. package/target/content-collections.js +192 -0
  218. package/target/elements/accordion.d.ts +6 -0
  219. package/target/elements/accordion.js +19 -0
  220. package/target/elements/alert-dialog.d.ts +18 -0
  221. package/target/elements/alert-dialog.js +44 -0
  222. package/target/elements/alert.d.ts +9 -0
  223. package/target/elements/alert.js +28 -0
  224. package/target/elements/aspect-ratio.d.ts +4 -0
  225. package/target/elements/aspect-ratio.js +9 -0
  226. package/target/elements/avatar.d.ts +11 -0
  227. package/target/elements/avatar.js +23 -0
  228. package/target/elements/badge.d.ts +7 -0
  229. package/target/elements/badge.js +34 -0
  230. package/target/elements/breadcrumb.d.ts +9 -0
  231. package/target/elements/breadcrumb.js +39 -0
  232. package/target/elements/button-group.d.ts +10 -0
  233. package/target/elements/button-group.js +37 -0
  234. package/target/elements/button.d.ts +8 -0
  235. package/target/elements/button.js +35 -0
  236. package/target/elements/calendar.d.ts +10 -0
  237. package/target/elements/calendar.js +76 -0
  238. package/target/elements/card.d.ts +11 -0
  239. package/target/elements/card.js +25 -0
  240. package/target/elements/carousel.d.ts +28 -0
  241. package/target/elements/carousel.js +95 -0
  242. package/target/elements/chart.d.ts +44 -0
  243. package/target/elements/chart.js +140 -0
  244. package/target/elements/checkbox.d.ts +3 -0
  245. package/target/elements/checkbox.js +9 -0
  246. package/target/elements/collapsible.d.ts +5 -0
  247. package/target/elements/collapsible.js +13 -0
  248. package/target/elements/command.d.ts +23 -0
  249. package/target/elements/command.js +42 -0
  250. package/target/elements/context-menu.d.ts +29 -0
  251. package/target/elements/context-menu.js +54 -0
  252. package/target/elements/dialog.d.ts +16 -0
  253. package/target/elements/dialog.js +41 -0
  254. package/target/elements/direction.d.ts +1 -0
  255. package/target/elements/direction.js +2 -0
  256. package/target/elements/drawer.d.ts +12 -0
  257. package/target/elements/drawer.js +38 -0
  258. package/target/elements/dropdown-menu.d.ts +24 -0
  259. package/target/elements/dropdown-menu.js +54 -0
  260. package/target/elements/empty.d.ts +11 -0
  261. package/target/elements/empty.js +34 -0
  262. package/target/elements/field.d.ts +24 -0
  263. package/target/elements/field.js +69 -0
  264. package/target/elements/hover-card.d.ts +5 -0
  265. package/target/elements/hover-card.js +14 -0
  266. package/target/elements/input-group.d.ts +18 -0
  267. package/target/elements/input-group.js +60 -0
  268. package/target/elements/input-otp.d.ts +11 -0
  269. package/target/elements/input-otp.js +21 -0
  270. package/target/elements/input.d.ts +2 -0
  271. package/target/elements/input.js +8 -0
  272. package/target/elements/item.d.ts +21 -0
  273. package/target/elements/item.js +79 -0
  274. package/target/elements/kbd.d.ts +3 -0
  275. package/target/elements/kbd.js +10 -0
  276. package/target/elements/label.d.ts +2 -0
  277. package/target/elements/label.js +8 -0
  278. package/target/elements/menubar.d.ts +29 -0
  279. package/target/elements/menubar.js +58 -0
  280. package/target/elements/native-select.d.ts +8 -0
  281. package/target/elements/native-select.js +16 -0
  282. package/target/elements/navigation-menu.d.ts +11 -0
  283. package/target/elements/navigation-menu.js +34 -0
  284. package/target/elements/pagination.d.ts +17 -0
  285. package/target/elements/pagination.js +33 -0
  286. package/target/elements/popover.d.ts +9 -0
  287. package/target/elements/popover.js +23 -0
  288. package/target/elements/progress.d.ts +7 -0
  289. package/target/elements/progress.js +21 -0
  290. package/target/elements/radio-group.d.ts +5 -0
  291. package/target/elements/radio-group.js +12 -0
  292. package/target/elements/resizable.d.ts +7 -0
  293. package/target/elements/resizable.js +14 -0
  294. package/target/elements/scroll-area.d.ts +4 -0
  295. package/target/elements/scroll-area.js +13 -0
  296. package/target/elements/select.d.ts +15 -0
  297. package/target/elements/select.js +39 -0
  298. package/target/elements/separator.d.ts +3 -0
  299. package/target/elements/separator.js +8 -0
  300. package/target/elements/sheet.d.ts +13 -0
  301. package/target/elements/sheet.js +41 -0
  302. package/target/elements/sidebar.d.ts +63 -0
  303. package/target/elements/sidebar.js +272 -0
  304. package/target/elements/skeleton.d.ts +2 -0
  305. package/target/elements/skeleton.js +7 -0
  306. package/target/elements/slider.d.ts +3 -0
  307. package/target/elements/slider.js +15 -0
  308. package/target/elements/sonner.d.ts +3 -0
  309. package/target/elements/sonner.js +23 -0
  310. package/target/elements/spinner.d.ts +2 -0
  311. package/target/elements/spinner.js +8 -0
  312. package/target/elements/switch.d.ts +5 -0
  313. package/target/elements/switch.js +8 -0
  314. package/target/elements/table.d.ts +9 -0
  315. package/target/elements/table.js +28 -0
  316. package/target/elements/tabs.d.ts +10 -0
  317. package/target/elements/tabs.js +29 -0
  318. package/target/elements/textarea.d.ts +2 -0
  319. package/target/elements/textarea.js +7 -0
  320. package/target/elements/toggle-group.d.ts +10 -0
  321. package/target/elements/toggle-group.js +24 -0
  322. package/target/elements/toggle.d.ts +8 -0
  323. package/target/elements/toggle.js +26 -0
  324. package/target/elements/tooltip.d.ts +6 -0
  325. package/target/elements/tooltip.js +18 -0
  326. package/target/entrypoints/main.js +12 -0
  327. package/target/helpers/article-icon.d.ts +3 -0
  328. package/target/helpers/article-icon.js +34 -0
  329. package/target/helpers/article.d.ts +24 -0
  330. package/target/helpers/article.js +73 -0
  331. package/target/helpers/changelog-source.d.ts +7 -0
  332. package/target/helpers/changelog-source.js +16 -0
  333. package/target/helpers/changelog-source.unit.d.ts +1 -0
  334. package/target/helpers/changelog-source.unit.js +33 -0
  335. package/target/helpers/dynamic-icon-resolver.d.ts +5 -0
  336. package/target/helpers/dynamic-icon-resolver.js +17 -0
  337. package/target/helpers/dynamic-icon.d.ts +5 -0
  338. package/target/helpers/dynamic-icon.js +8 -0
  339. package/target/helpers/favicon.d.ts +2 -0
  340. package/target/helpers/favicon.js +11 -0
  341. package/target/helpers/model.d.ts +3 -0
  342. package/target/helpers/model.js +4 -0
  343. package/target/helpers/program.js +5 -0
  344. package/target/helpers/resolve-asset-path.d.ts +2 -0
  345. package/target/helpers/resolve-asset-path.js +9 -0
  346. package/target/helpers/resolve-includes.d.ts +2 -0
  347. package/target/helpers/resolve-includes.js +113 -0
  348. package/target/helpers/resolve-includes.unit.d.ts +1 -0
  349. package/target/helpers/resolve-includes.unit.js +76 -0
  350. package/target/helpers/search-text.d.ts +2 -0
  351. package/target/helpers/search-text.js +16 -0
  352. package/target/helpers/section.d.ts +13 -0
  353. package/target/helpers/section.js +39 -0
  354. package/target/helpers/section.unit.d.ts +1 -0
  355. package/target/helpers/section.unit.js +62 -0
  356. package/target/helpers/theme.d.ts +5 -0
  357. package/target/helpers/theme.js +23 -0
  358. package/target/helpers/toc-context.d.ts +5 -0
  359. package/target/helpers/toc-context.js +8 -0
  360. package/target/helpers/toc.d.ts +3 -0
  361. package/target/helpers/toc.js +41 -0
  362. package/target/helpers/toc.unit.d.ts +1 -0
  363. package/target/helpers/toc.unit.js +65 -0
  364. package/target/hooks/in-view.d.ts +4 -0
  365. package/target/hooks/in-view.js +23 -0
  366. package/target/hooks/media.d.ts +6 -0
  367. package/target/hooks/media.js +25 -0
  368. package/target/index.js +2 -0
  369. package/target/models/article.d.ts +57 -0
  370. package/target/models/article.js +21 -0
  371. package/{build → target}/models/config.d.ts +10 -0
  372. package/target/models/config.js +34 -0
  373. package/target/models/link.js +9 -0
  374. package/{build → target}/models/patch.d.ts +5 -0
  375. package/target/models/patch.js +7 -0
  376. package/target/models/section.js +26 -0
  377. package/target/models/theme.js +73 -0
  378. package/target/models/toc.d.ts +5 -0
  379. package/target/models/toc.js +2 -0
  380. package/target/plugins/rehype-inline-code.d.ts +19 -0
  381. package/target/plugins/rehype-inline-code.js +55 -0
  382. package/target/plugins/rehype-task-list-a11y.d.ts +10 -0
  383. package/target/plugins/rehype-task-list-a11y.js +29 -0
  384. package/target/plugins/remark-abbr.d.ts +6 -0
  385. package/target/plugins/remark-abbr.js +39 -0
  386. package/target/plugins/remark-abbr.unit.d.ts +1 -0
  387. package/target/plugins/remark-abbr.unit.js +79 -0
  388. package/target/plugins/remark-ansi.d.ts +8 -0
  389. package/target/plugins/remark-ansi.js +239 -0
  390. package/target/plugins/remark-ansi.unit.d.ts +1 -0
  391. package/target/plugins/remark-ansi.unit.js +134 -0
  392. package/target/plugins/remark-badge.d.ts +6 -0
  393. package/target/plugins/remark-badge.js +43 -0
  394. package/target/plugins/remark-badge.unit.d.ts +1 -0
  395. package/target/plugins/remark-badge.unit.js +76 -0
  396. package/target/plugins/remark-button.d.ts +6 -0
  397. package/target/plugins/remark-button.js +52 -0
  398. package/target/plugins/remark-button.unit.d.ts +1 -0
  399. package/target/plugins/remark-button.unit.js +105 -0
  400. package/target/plugins/remark-callout.d.ts +4 -0
  401. package/target/plugins/remark-callout.js +39 -0
  402. package/target/plugins/remark-card.d.ts +4 -0
  403. package/target/plugins/remark-card.js +66 -0
  404. package/target/plugins/remark-code-tabs.d.ts +4 -0
  405. package/target/plugins/remark-code-tabs.js +72 -0
  406. package/target/plugins/remark-columns.d.ts +4 -0
  407. package/target/plugins/remark-columns.js +54 -0
  408. package/target/plugins/remark-custom-heading-id.d.ts +14 -0
  409. package/target/plugins/remark-custom-heading-id.js +54 -0
  410. package/target/plugins/remark-custom-heading-id.unit.d.ts +1 -0
  411. package/target/plugins/remark-custom-heading-id.unit.js +91 -0
  412. package/target/plugins/remark-deflist.d.ts +4 -0
  413. package/target/plugins/remark-deflist.js +31 -0
  414. package/target/plugins/remark-details.d.ts +4 -0
  415. package/target/plugins/remark-details.js +33 -0
  416. package/target/plugins/remark-filetree.d.ts +12 -0
  417. package/target/plugins/remark-filetree.js +61 -0
  418. package/target/plugins/remark-filetree.unit.d.ts +1 -0
  419. package/target/plugins/remark-filetree.unit.js +87 -0
  420. package/target/plugins/remark-github-callout.d.ts +4 -0
  421. package/target/plugins/remark-github-callout.js +62 -0
  422. package/target/plugins/remark-icon.d.ts +4 -0
  423. package/target/plugins/remark-icon.js +36 -0
  424. package/target/plugins/remark-image.d.ts +9 -0
  425. package/target/plugins/remark-image.js +26 -0
  426. package/target/plugins/remark-media.d.ts +6 -0
  427. package/target/plugins/remark-media.js +52 -0
  428. package/target/plugins/remark-media.unit.d.ts +1 -0
  429. package/target/plugins/remark-media.unit.js +54 -0
  430. package/target/plugins/remark-mermaid.d.ts +4 -0
  431. package/target/plugins/remark-mermaid.js +20 -0
  432. package/target/plugins/remark-npm.d.ts +4 -0
  433. package/target/plugins/remark-npm.js +32 -0
  434. package/target/plugins/remark-steps.d.ts +6 -0
  435. package/target/plugins/remark-steps.js +30 -0
  436. package/target/plugins/remark-steps.unit.d.ts +1 -0
  437. package/target/plugins/remark-steps.unit.js +65 -0
  438. package/target/plugins/remark-tab.d.ts +6 -0
  439. package/target/plugins/remark-tab.js +76 -0
  440. package/target/plugins/remark-tab.unit.d.ts +1 -0
  441. package/target/plugins/remark-tab.unit.js +156 -0
  442. package/target/plugins/remark-toc.d.ts +6 -0
  443. package/target/plugins/remark-toc.js +33 -0
  444. package/target/plugins/remark-toc.unit.d.ts +1 -0
  445. package/target/plugins/remark-toc.unit.js +57 -0
  446. package/target/plugins/shiki-icon.d.ts +16 -0
  447. package/target/plugins/shiki-icon.js +66 -0
  448. package/target/plugins/shiki-line-highlight.d.ts +27 -0
  449. package/target/plugins/shiki-line-highlight.js +140 -0
  450. package/target/plugins/vite-livemark.d.ts +13 -0
  451. package/target/plugins/vite-livemark.js +76 -0
  452. package/target/program.js +18 -0
  453. package/target/routeTree.gen.d.ts +57 -0
  454. package/target/routeTree.gen.js +27 -0
  455. package/target/router.d.ts +6 -0
  456. package/target/router.js +26 -0
  457. package/target/routes/$.d.ts +1 -0
  458. package/target/routes/$.js +85 -0
  459. package/target/routes/__root.d.ts +1 -0
  460. package/target/routes/__root.js +69 -0
  461. package/target/server.d.ts +2 -0
  462. package/target/server.js +7 -0
  463. package/target/settings.d.ts +2 -0
  464. package/target/settings.js +7 -0
  465. package/target/utils/style.d.ts +2 -0
  466. package/target/utils/style.js +6 -0
  467. package/target/vite.config.d.ts +2 -0
  468. package/target/vite.config.js +64 -0
  469. package/build/actions/changelog/build.js +0 -158
  470. package/build/actions/changelog/build.unit.js +0 -66
  471. package/build/actions/config/define.js +0 -8
  472. package/build/actions/config/define.unit.js +0 -29
  473. package/build/actions/config/load.js +0 -25
  474. package/build/actions/config/load.unit.js +0 -23
  475. package/build/commands/build.js +0 -14
  476. package/build/commands/escape.js +0 -56
  477. package/build/commands/preview.js +0 -18
  478. package/build/commands/start.js +0 -19
  479. package/build/docs/markdown/includes/example.d.ts +0 -58
  480. package/build/docs/markdown/includes/example.js +0 -5
  481. package/build/entrypoints/main.js +0 -12
  482. package/build/helpers/program.js +0 -5
  483. package/build/index.js +0 -2
  484. package/build/livemark.config.d.ts +0 -58
  485. package/build/livemark.config.js +0 -25
  486. package/build/models/config.js +0 -34
  487. package/build/models/link.js +0 -9
  488. package/build/models/patch.js +0 -7
  489. package/build/models/section.js +0 -26
  490. package/build/models/theme.js +0 -73
  491. package/build/program.js +0 -16
  492. package/build/vite.config.d.ts +0 -2
  493. package/build/vite.config.js +0 -48
  494. package/build/website/components/BlogSidebar.tsx +0 -162
  495. package/build/website/components/ChangelogSidebar.tsx +0 -120
  496. package/build/website/hooks/media.ts +0 -19
  497. /package/{build/website → source}/assets/logo.svg +0 -0
  498. /package/{build/website → source}/client.tsx +0 -0
  499. /package/{build/website → source}/components/Abbr.tsx +0 -0
  500. /package/{build/website → source}/components/AnsiCode.tsx +0 -0
  501. /package/{build/website → source}/components/BackToTop.tsx +0 -0
  502. /package/{build/website → source}/components/Banner.tsx +0 -0
  503. /package/{build/website → source}/components/BlogIndex.tsx +0 -0
  504. /package/{build/website → source}/components/Breadcrumbs.tsx +0 -0
  505. /package/{build/website → source}/components/Card.tsx +0 -0
  506. /package/{build/website → source}/components/Cards.tsx +0 -0
  507. /package/{build/website → source}/components/ChangelogIndex.tsx +0 -0
  508. /package/{build/website → source}/components/CodeBlock.tsx +0 -0
  509. /package/{build/website → source}/components/CodeTabs.tsx +0 -0
  510. /package/{build/website → source}/components/Column.tsx +0 -0
  511. /package/{build/website → source}/components/Columns.tsx +0 -0
  512. /package/{build/website → source}/components/Content.tsx +0 -0
  513. /package/{build/website → source}/components/ContentTab.tsx +0 -0
  514. /package/{build/website → source}/components/ContentTabs.tsx +0 -0
  515. /package/{build/website → source}/components/DefaultCatchBoundary.tsx +0 -0
  516. /package/{build/website → source}/components/DefinitionList.tsx +0 -0
  517. /package/{build/website → source}/components/Details.tsx +0 -0
  518. /package/{build/website → source}/components/FileTree.tsx +0 -0
  519. /package/{build/website → source}/components/Footer.tsx +0 -0
  520. /package/{build/website → source}/components/FootnoteRef.tsx +0 -0
  521. /package/{build/website → source}/components/Heading.tsx +0 -0
  522. /package/{build/website → source}/components/InlineBadge.tsx +0 -0
  523. /package/{build/website → source}/components/InlineIcon.tsx +0 -0
  524. /package/{build/website → source}/components/InlineToc.tsx +0 -0
  525. /package/{build/website → source}/components/Mermaid.tsx +0 -0
  526. /package/{build/website → source}/components/MermaidRenderer.tsx +0 -0
  527. /package/{build/website → source}/components/NotFound.tsx +0 -0
  528. /package/{build/website → source}/components/PackageTabs.tsx +0 -0
  529. /package/{build/website → source}/components/PrevNext.tsx +0 -0
  530. /package/{build/website → source}/components/Search.tsx +0 -0
  531. /package/{build/website → source}/components/SearchDialog.tsx +0 -0
  532. /package/{build/website → source}/components/SidebarLinks.tsx +0 -0
  533. /package/{build/website → source}/components/SidebarSections.tsx +0 -0
  534. /package/{build/website → source}/components/SiteTitle.tsx +0 -0
  535. /package/{build/website → source}/components/SortableTable.tsx +0 -0
  536. /package/{build/website → source}/components/SoundCloud.tsx +0 -0
  537. /package/{build/website → source}/components/TagIndex.tsx +0 -0
  538. /package/{build/website → source}/components/Theme.tsx +0 -0
  539. /package/{build/website → source}/components/Toc.tsx +0 -0
  540. /package/{build/website → source}/components/YouTube.tsx +0 -0
  541. /package/{build/website → source}/components/ZoomImage.tsx +0 -0
  542. /package/{build/website → source}/content/article.ts +0 -0
  543. /package/{build/website → source}/content/tag.ts +0 -0
  544. /package/{build/website → source}/elements/collapsible.tsx +0 -0
  545. /package/{build/website → source}/elements/direction.tsx +0 -0
  546. /package/{build/website → source}/elements/sonner.tsx +0 -0
  547. /package/{build/website → source}/helpers/article-icon.ts +0 -0
  548. /package/{build/website → source}/helpers/article.ts +0 -0
  549. /package/{build/website → source}/helpers/changelog-source.ts +0 -0
  550. /package/{build/website → source}/helpers/changelog-source.unit.ts +0 -0
  551. /package/{build/website → source}/helpers/dynamic-icon-resolver.tsx +0 -0
  552. /package/{build/website → source}/helpers/dynamic-icon.tsx +0 -0
  553. /package/{build/website → source}/helpers/favicon.ts +0 -0
  554. /package/{build/website → source}/helpers/model.ts +0 -0
  555. /package/{build/website → source}/helpers/resolve-asset-path.ts +0 -0
  556. /package/{build/website → source}/helpers/resolve-includes.ts +0 -0
  557. /package/{build/website → source}/helpers/resolve-includes.unit.ts +0 -0
  558. /package/{build/website → source}/helpers/search-text.ts +0 -0
  559. /package/{build/website → source}/helpers/section.unit.ts +0 -0
  560. /package/{build/website → source}/helpers/theme.ts +0 -0
  561. /package/{build/website → source}/helpers/toc-context.ts +0 -0
  562. /package/{build/website → source}/helpers/toc.ts +0 -0
  563. /package/{build/website → source}/helpers/toc.unit.ts +0 -0
  564. /package/{build/website → source}/hooks/in-view.ts +0 -0
  565. /package/{build/website → source}/models/toc.ts +0 -0
  566. /package/{build/website → source}/plugins/rehype-inline-code.ts +0 -0
  567. /package/{build/website → source}/plugins/rehype-task-list-a11y.ts +0 -0
  568. /package/{build/website → source}/plugins/remark-abbr.ts +0 -0
  569. /package/{build/website → source}/plugins/remark-abbr.unit.ts +0 -0
  570. /package/{build/website → source}/plugins/remark-ansi.ts +0 -0
  571. /package/{build/website → source}/plugins/remark-ansi.unit.ts +0 -0
  572. /package/{build/website → source}/plugins/remark-badge.ts +0 -0
  573. /package/{build/website → source}/plugins/remark-badge.unit.ts +0 -0
  574. /package/{build/website → source}/plugins/remark-button.ts +0 -0
  575. /package/{build/website → source}/plugins/remark-button.unit.ts +0 -0
  576. /package/{build/website → source}/plugins/remark-callout.ts +0 -0
  577. /package/{build/website → source}/plugins/remark-card.ts +0 -0
  578. /package/{build/website → source}/plugins/remark-code-tabs.ts +0 -0
  579. /package/{build/website → source}/plugins/remark-columns.ts +0 -0
  580. /package/{build/website → source}/plugins/remark-custom-heading-id.ts +0 -0
  581. /package/{build/website → source}/plugins/remark-custom-heading-id.unit.ts +0 -0
  582. /package/{build/website → source}/plugins/remark-deflist.ts +0 -0
  583. /package/{build/website → source}/plugins/remark-details.ts +0 -0
  584. /package/{build/website → source}/plugins/remark-filetree.ts +0 -0
  585. /package/{build/website → source}/plugins/remark-filetree.unit.ts +0 -0
  586. /package/{build/website → source}/plugins/remark-github-callout.ts +0 -0
  587. /package/{build/website → source}/plugins/remark-icon.ts +0 -0
  588. /package/{build/website → source}/plugins/remark-image.ts +0 -0
  589. /package/{build/website → source}/plugins/remark-media.ts +0 -0
  590. /package/{build/website → source}/plugins/remark-media.unit.ts +0 -0
  591. /package/{build/website → source}/plugins/remark-mermaid.ts +0 -0
  592. /package/{build/website → source}/plugins/remark-npm.ts +0 -0
  593. /package/{build/website → source}/plugins/remark-steps.ts +0 -0
  594. /package/{build/website → source}/plugins/remark-steps.unit.ts +0 -0
  595. /package/{build/website → source}/plugins/remark-tab.ts +0 -0
  596. /package/{build/website → source}/plugins/remark-tab.unit.ts +0 -0
  597. /package/{build/website → source}/plugins/remark-toc.ts +0 -0
  598. /package/{build/website → source}/plugins/remark-toc.unit.ts +0 -0
  599. /package/{build/website → source}/plugins/shiki-icon.ts +0 -0
  600. /package/{build/website → source}/plugins/shiki-line-highlight.ts +0 -0
  601. /package/{build/website → source}/routeTree.gen.ts +0 -0
  602. /package/{build/website → source}/router.tsx +0 -0
  603. /package/{build/website → source}/routes/$.tsx +0 -0
  604. /package/{build/website → source}/routes/__root.tsx +0 -0
  605. /package/{build/website → source}/server.ts +0 -0
  606. /package/{build/website → source}/styles/general.css +0 -0
  607. /package/{build/website → source}/styles/markdown.css +0 -0
  608. /package/{build/website/helpers → source/utils}/style.ts +0 -0
  609. /package/{build → target}/actions/changelog/build.unit.d.ts +0 -0
  610. /package/{build → target}/actions/config/define.d.ts +0 -0
  611. /package/{build → target}/actions/config/define.unit.d.ts +0 -0
  612. /package/{build → target}/actions/config/load.d.ts +0 -0
  613. /package/{build → target}/actions/config/load.unit.d.ts +0 -0
  614. /package/{build → target}/commands/build.d.ts +0 -0
  615. /package/{build → target}/commands/escape.d.ts +0 -0
  616. /package/{build → target}/commands/preview.d.ts +0 -0
  617. /package/{build → target}/commands/start.d.ts +0 -0
  618. /package/{build → target}/entrypoints/main.d.ts +0 -0
  619. /package/{build → target}/helpers/program.d.ts +0 -0
  620. /package/{build → target}/index.d.ts +0 -0
  621. /package/{build → target}/models/link.d.ts +0 -0
  622. /package/{build → target}/models/section.d.ts +0 -0
  623. /package/{build → target}/models/theme.d.ts +0 -0
  624. /package/{build → target}/program.d.ts +0 -0
@@ -0,0 +1,21 @@
1
+ import { useRender } from "@base-ui/react/use-render";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ import { Separator } from "./separator.tsx";
4
+ declare function ItemGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
5
+ declare function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): import("react/jsx-runtime").JSX.Element;
6
+ declare const itemVariants: (props?: ({
7
+ variant?: "default" | "muted" | "outline" | null | undefined;
8
+ size?: "default" | "sm" | "xs" | null | undefined;
9
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
10
+ declare function Item({ className, variant, size, render, ...props }: useRender.ComponentProps<"div"> & VariantProps<typeof itemVariants>): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
11
+ declare const itemMediaVariants: (props?: ({
12
+ variant?: "default" | "icon" | "image" | null | undefined;
13
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
14
+ declare function ItemMedia({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): import("react/jsx-runtime").JSX.Element;
15
+ declare function ItemContent({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
16
+ declare function ItemTitle({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
17
+ declare function ItemDescription({ className, ...props }: React.ComponentProps<"p">): import("react/jsx-runtime").JSX.Element;
18
+ declare function ItemActions({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
19
+ declare function ItemHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
20
+ declare function ItemFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
21
+ export { Item, ItemMedia, ItemContent, ItemActions, ItemGroup, ItemSeparator, ItemTitle, ItemDescription, ItemHeader, ItemFooter, };
@@ -0,0 +1,79 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { mergeProps } from "@base-ui/react/merge-props";
3
+ import { useRender } from "@base-ui/react/use-render";
4
+ import { cva } from "class-variance-authority";
5
+ import { cn } from "../utils/style.js";
6
+ import { Separator } from "./separator.js";
7
+ function ItemGroup({ className, ...props }) {
8
+ return (_jsx("div", { role: "list", "data-slot": "item-group", className: cn("gap-4 has-[[data-size=sm]]:gap-2.5 has-[[data-size=xs]]:gap-2 group/item-group flex w-full flex-col", className), ...props }));
9
+ }
10
+ function ItemSeparator({ className, ...props }) {
11
+ return (_jsx(Separator, { "data-slot": "item-separator", orientation: "horizontal", className: cn("my-2", className), ...props }));
12
+ }
13
+ const itemVariants = cva("[a]:hover:bg-muted rounded-md border text-sm w-full group/item focus-visible:border-ring focus-visible:ring-ring/50 flex items-center flex-wrap outline-none transition-colors duration-100 focus-visible:ring-[3px] [a]:transition-colors", {
14
+ variants: {
15
+ variant: {
16
+ default: "border-transparent",
17
+ outline: "border-border",
18
+ muted: "bg-muted/50 border-transparent",
19
+ },
20
+ size: {
21
+ default: "gap-3.5 px-4 py-3.5",
22
+ sm: "gap-2.5 px-3 py-2.5",
23
+ xs: "gap-2 px-2.5 py-2 [[data-slot=dropdown-menu-content]_&]:p-0",
24
+ },
25
+ },
26
+ defaultVariants: {
27
+ variant: "default",
28
+ size: "default",
29
+ },
30
+ });
31
+ function Item({ className, variant = "default", size = "default", render, ...props }) {
32
+ return useRender({
33
+ defaultTagName: "div",
34
+ props: mergeProps({
35
+ className: cn(itemVariants({ variant, size, className })),
36
+ }, props),
37
+ render,
38
+ state: {
39
+ slot: "item",
40
+ variant,
41
+ size,
42
+ },
43
+ });
44
+ }
45
+ const itemMediaVariants = cva("gap-2 group-has-[[data-slot=item-description]]/item:translate-y-0.5 group-has-[[data-slot=item-description]]/item:self-start flex shrink-0 items-center justify-center [&_svg]:pointer-events-none", {
46
+ variants: {
47
+ variant: {
48
+ default: "bg-transparent",
49
+ icon: "[&_svg:not([class*='size-'])]:size-4",
50
+ image: "size-10 overflow-hidden rounded-sm group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 [&_img]:size-full [&_img]:object-cover",
51
+ },
52
+ },
53
+ defaultVariants: {
54
+ variant: "default",
55
+ },
56
+ });
57
+ function ItemMedia({ className, variant = "default", ...props }) {
58
+ return (_jsx("div", { "data-slot": "item-media", "data-variant": variant, className: cn(itemMediaVariants({ variant, className })), ...props }));
59
+ }
60
+ function ItemContent({ className, ...props }) {
61
+ return (_jsx("div", { "data-slot": "item-content", className: cn("gap-1 group-data-[size=xs]/item:gap-0 flex flex-1 flex-col [&+[data-slot=item-content]]:flex-none", className), ...props }));
62
+ }
63
+ function ItemTitle({ className, ...props }) {
64
+ return (_jsx("div", { "data-slot": "item-title", className: cn("gap-2 text-sm leading-snug font-medium underline-offset-4 line-clamp-1 flex w-fit items-center", className), ...props }));
65
+ }
66
+ function ItemDescription({ className, ...props }) {
67
+ return (_jsx("p", { "data-slot": "item-description", className: cn("text-muted-foreground text-left text-sm leading-normal group-data-[size=xs]/item:text-xs [&>a:hover]:text-primary line-clamp-2 font-normal [&>a]:underline [&>a]:underline-offset-4", className), ...props }));
68
+ }
69
+ function ItemActions({ className, ...props }) {
70
+ return (_jsx("div", { "data-slot": "item-actions", className: cn("gap-2 flex items-center", className), ...props }));
71
+ }
72
+ function ItemHeader({ className, ...props }) {
73
+ return (_jsx("div", { "data-slot": "item-header", className: cn("gap-2 flex basis-full items-center justify-between", className), ...props }));
74
+ }
75
+ function ItemFooter({ className, ...props }) {
76
+ return (_jsx("div", { "data-slot": "item-footer", className: cn("gap-2 flex basis-full items-center justify-between", className), ...props }));
77
+ }
78
+ export { Item, ItemMedia, ItemContent, ItemActions, ItemGroup, ItemSeparator, ItemTitle, ItemDescription, ItemHeader, ItemFooter, };
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NvdXJjZS9lbGVtZW50cy9pdGVtLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsR0FBRyxFQUFxQixNQUFNLDBCQUEwQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWlCLENBQUE7QUFFM0MsU0FBUyxTQUFTLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxLQUFLLEVBQStCO0lBQ3JFLE9BQU8sQ0FDTCxjQUNFLElBQUksRUFBQyxNQUFNLGVBQ0QsWUFBWSxFQUN0QixTQUFTLEVBQUUsRUFBRSxDQUNYLHFHQUFxRyxFQUNyRyxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEVBQ3JCLFNBQVMsRUFDVCxHQUFHLEtBQUssRUFDK0I7SUFDdkMsT0FBTyxDQUNMLEtBQUMsU0FBUyxpQkFDRSxnQkFBZ0IsRUFDMUIsV0FBVyxFQUFDLFlBQVksRUFDeEIsU0FBUyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQzVCLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUN0Qiw0T0FBNE8sRUFDNU87SUFDRSxRQUFRLEVBQUU7UUFDUixPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsb0JBQW9CO1lBQzdCLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLEtBQUssRUFBRSxnQ0FBZ0M7U0FDeEM7UUFDRCxJQUFJLEVBQUU7WUFDSixPQUFPLEVBQUUscUJBQXFCO1lBQzlCLEVBQUUs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QkFDWSxhQUFhLEVBQ3ZCLFNBQVMsRUFBRSxFQUFFLENBQ1gsb0RBQW9ELEVBQ3BELFNBQVMsQ0FDVixLQUNHLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUNMLElBQUksRUFDSixTQUFTLEVBQ1QsV0FBVyxFQUNYLFdBQVcsRUFDWCxTQUFTLEVBQ1QsYUFBYSxFQUNiLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFVBQVUsR0FDWCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWVyZ2VQcm9wcyB9IGZyb20gXCJAYmFzZS11aS9yZWFjdC9tZXJnZS1wcm9wc1wiXG5pbXBvcnQgeyB1c2VSZW5kZXIgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvdXNlLXJlbmRlclwiXG5pbXBvcnQgeyBjdmEsIHR5cGUgVmFyaWFudFByb3BzIH0gZnJvbSBcImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eVwiXG5pbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5pbXBvcnQgeyBTZXBhcmF0b3IgfSBmcm9tIFwiLi9zZXBhcmF0b3IudHN4XCJcblxuZnVuY3Rpb24gSXRlbUdyb3VwKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHJvbGU9XCJsaXN0XCJcbiAgICAgIGRhdGEtc2xvdD1cIml0ZW0tZ3JvdXBcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJnYXAtNCBoYXMtW1tkYXRhLXNpemU9c21dXTpnYXAtMi41IGhhcy1bW2RhdGEtc2l6ZT14c11dOmdhcC0yIGdyb3VwL2l0ZW0tZ3JvdXAgZmxleCB3LWZ1bGwgZmxleC1jb2xcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEl0ZW1TZXBhcmF0b3Ioe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczx0eXBlb2YgU2VwYXJhdG9yPikge1xuICByZXR1cm4gKFxuICAgIDxTZXBhcmF0b3JcbiAgICAgIGRhdGEtc2xvdD1cIml0ZW0tc2VwYXJhdG9yXCJcbiAgICAgIG9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwibXktMlwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuY29uc3QgaXRlbVZhcmlhbnRzID0gY3ZhKFxuICBcIlthXTpob3ZlcjpiZy1tdXRlZCByb3VuZGVkLW1kIGJvcmRlciB0ZXh0LXNtIHctZnVsbCBncm91cC9pdGVtIGZvY3VzLXZpc2libGU6Ym9yZGVyLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcvNTAgZmxleCBpdGVtcy1jZW50ZXIgZmxleC13cmFwIG91dGxpbmUtbm9uZSB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi0xMDAgZm9jdXMtdmlzaWJsZTpyaW5nLVszcHhdIFthXTp0cmFuc2l0aW9uLWNvbG9yc1wiLFxuICB7XG4gICAgdmFyaWFudHM6IHtcbiAgICAgIHZhcmlhbnQ6IHtcbiAgICAgICAgZGVmYXVsdDogXCJib3JkZXItdHJhbnNwYXJlbnRcIixcbiAgICAgICAgb3V0bGluZTogXCJib3JkZXItYm9yZGVyXCIsXG4gICAgICAgIG11dGVkOiBcImJnLW11dGVkLzUwIGJvcmRlci10cmFuc3BhcmVudFwiLFxuICAgICAgfSxcbiAgICAgIHNpemU6IHtcbiAgICAgICAgZGVmYXVsdDogXCJnYXAtMy41IHB4LTQgcHktMy41XCIsXG4gICAgICAgIHNtOiBcImdhcC0yLjUgcHgtMyBweS0yLjVcIixcbiAgICAgICAgeHM6IFwiZ2FwLTIgcHgtMi41IHB5LTIgW1tkYXRhLXNsb3Q9ZHJvcGRvd24tbWVudS1jb250ZW50XV8mXTpwLTBcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgICBkZWZhdWx0VmFyaWFudHM6IHtcbiAgICAgIHZhcmlhbnQ6IFwiZGVmYXVsdFwiLFxuICAgICAgc2l6ZTogXCJkZWZhdWx0XCIsXG4gICAgfSxcbiAgfSxcbilcblxuZnVuY3Rpb24gSXRlbSh7XG4gIGNsYXNzTmFtZSxcbiAgdmFyaWFudCA9IFwiZGVmYXVsdFwiLFxuICBzaXplID0gXCJkZWZhdWx0XCIsXG4gIHJlbmRlcixcbiAgLi4ucHJvcHNcbn06IHVzZVJlbmRlci5Db21wb25lbnRQcm9wczxcImRpdlwiPiAmIFZhcmlhbnRQcm9wczx0eXBlb2YgaXRlbVZhcmlhbnRzPikge1xuICByZXR1cm4gdXNlUmVuZGVyKHtcbiAgICBkZWZhdWx0VGFnTmFtZTogXCJkaXZcIixcbiAgICBwcm9wczogbWVyZ2VQcm9wczxcImRpdlwiPihcbiAgICAgIHtcbiAgICAgICAgY2xhc3NOYW1lOiBjbihpdGVtVmFyaWFudHMoeyB2YXJpYW50LCBzaXplLCBjbGFzc05hbWUgfSkpLFxuICAgICAgfSxcbiAgICAgIHByb3BzLFxuICAgICksXG4gICAgcmVuZGVyLFxuICAgIHN0YXRlOiB7XG4gICAgICBzbG90OiBcIml0ZW1cIixcbiAgICAgIHZhcmlhbnQsXG4gICAgICBzaXplLFxuICAgIH0sXG4gIH0pXG59XG5cbmNvbnN0IGl0ZW1NZWRpYVZhcmlhbnRzID0gY3ZhKFxuICBcImdhcC0yIGdyb3VwLWhhcy1bW2RhdGEtc2xvdD1pdGVtLWRlc2NyaXB0aW9uXV0vaXRlbTp0cmFuc2xhdGUteS0wLjUgZ3JvdXAtaGFzLVtbZGF0YS1zbG90PWl0ZW0tZGVzY3JpcHRpb25dXS9pdGVtOnNlbGYtc3RhcnQgZmxleCBzaHJpbmstMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgWyZfc3ZnXTpwb2ludGVyLWV2ZW50cy1ub25lXCIsXG4gIHtcbiAgICB2YXJpYW50czoge1xuICAgICAgdmFyaWFudDoge1xuICAgICAgICBkZWZhdWx0OiBcImJnLXRyYW5zcGFyZW50XCIsXG4gICAgICAgIGljb246IFwiWyZfc3ZnOm5vdChbY2xhc3MqPSdzaXplLSddKV06c2l6ZS00XCIsXG4gICAgICAgIGltYWdlOlxuICAgICAgICAgIFwic2l6ZS0xMCBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC1zbSBncm91cC1kYXRhLVtzaXplPXNtXS9pdGVtOnNpemUtOCBncm91cC1kYXRhLVtzaXplPXhzXS9pdGVtOnNpemUtNiBbJl9pbWddOnNpemUtZnVsbCBbJl9pbWddOm9iamVjdC1jb3ZlclwiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRWYXJpYW50czoge1xuICAgICAgdmFyaWFudDogXCJkZWZhdWx0XCIsXG4gICAgfSxcbiAgfSxcbilcblxuZnVuY3Rpb24gSXRlbU1lZGlhKHtcbiAgY2xhc3NOYW1lLFxuICB2YXJpYW50ID0gXCJkZWZhdWx0XCIsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPiAmIFZhcmlhbnRQcm9wczx0eXBlb2YgaXRlbU1lZGlhVmFyaWFudHM+KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS1zbG90PVwiaXRlbS1tZWRpYVwiXG4gICAgICBkYXRhLXZhcmlhbnQ9e3ZhcmlhbnR9XG4gICAgICBjbGFzc05hbWU9e2NuKGl0ZW1NZWRpYVZhcmlhbnRzKHsgdmFyaWFudCwgY2xhc3NOYW1lIH0pKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEl0ZW1Db250ZW50KHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGRhdGEtc2xvdD1cIml0ZW0tY29udGVudFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImdhcC0xIGdyb3VwLWRhdGEtW3NpemU9eHNdL2l0ZW06Z2FwLTAgZmxleCBmbGV4LTEgZmxleC1jb2wgWyYrW2RhdGEtc2xvdD1pdGVtLWNvbnRlbnRdXTpmbGV4LW5vbmVcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEl0ZW1UaXRsZSh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJkaXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXNsb3Q9XCJpdGVtLXRpdGxlXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZ2FwLTIgdGV4dC1zbSBsZWFkaW5nLXNudWcgZm9udC1tZWRpdW0gdW5kZXJsaW5lLW9mZnNldC00IGxpbmUtY2xhbXAtMSBmbGV4IHctZml0IGl0ZW1zLWNlbnRlclwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gSXRlbURlc2NyaXB0aW9uKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcInBcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8cFxuICAgICAgZGF0YS1zbG90PVwiaXRlbS1kZXNjcmlwdGlvblwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcInRleHQtbXV0ZWQtZm9yZWdyb3VuZCB0ZXh0LWxlZnQgdGV4dC1zbSBsZWFkaW5nLW5vcm1hbCBncm91cC1kYXRhLVtzaXplPXhzXS9pdGVtOnRleHQteHMgWyY+YTpob3Zlcl06dGV4dC1wcmltYXJ5IGxpbmUtY2xhbXAtMiBmb250LW5vcm1hbCBbJj5hXTp1bmRlcmxpbmUgWyY+YV06dW5kZXJsaW5lLW9mZnNldC00XCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBJdGVtQWN0aW9ucyh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJkaXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXNsb3Q9XCJpdGVtLWFjdGlvbnNcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcImdhcC0yIGZsZXggaXRlbXMtY2VudGVyXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBJdGVtSGVhZGVyKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGRhdGEtc2xvdD1cIml0ZW0taGVhZGVyXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZ2FwLTIgZmxleCBiYXNpcy1mdWxsIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEl0ZW1Gb290ZXIoeyBjbGFzc05hbWUsIC4uLnByb3BzIH06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwiZGl2XCI+KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS1zbG90PVwiaXRlbS1mb290ZXJcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJnYXAtMiBmbGV4IGJhc2lzLWZ1bGwgaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlblwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZXhwb3J0IHtcbiAgSXRlbSxcbiAgSXRlbU1lZGlhLFxuICBJdGVtQ29udGVudCxcbiAgSXRlbUFjdGlvbnMsXG4gIEl0ZW1Hcm91cCxcbiAgSXRlbVNlcGFyYXRvcixcbiAgSXRlbVRpdGxlLFxuICBJdGVtRGVzY3JpcHRpb24sXG4gIEl0ZW1IZWFkZXIsXG4gIEl0ZW1Gb290ZXIsXG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ declare function Kbd({ className, ...props }: React.ComponentProps<"kbd">): import("react/jsx-runtime").JSX.Element;
2
+ declare function KbdGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
3
+ export { Kbd, KbdGroup };
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from "../utils/style.js";
3
+ function Kbd({ className, ...props }) {
4
+ return (_jsx("kbd", { "data-slot": "kbd", className: cn("bg-muted text-muted-foreground [[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10 h-5 w-fit min-w-5 gap-1 rounded-sm px-1 font-sans text-xs font-medium [&_svg:not([class*='size-'])]:size-3 pointer-events-none inline-flex items-center justify-center select-none", className), ...props }));
5
+ }
6
+ function KbdGroup({ className, ...props }) {
7
+ return (_jsx("kbd", { "data-slot": "kbd-group", className: cn("gap-1 inline-flex items-center", className), ...props }));
8
+ }
9
+ export { Kbd, KbdGroup };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL2VsZW1lbnRzL2tiZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUV0QyxTQUFTLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEtBQUssRUFBK0I7SUFDL0QsT0FBTyxDQUNMLDJCQUNZLEtBQUssRUFDZixTQUFTLEVBQUUsRUFBRSxDQUNYLDBXQUEwVyxFQUMxVyxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUNwRSxPQUFPLENBQ0wsMkJBQ1ksV0FBVyxFQUNyQixTQUFTLEVBQUUsRUFBRSxDQUFDLGdDQUFnQyxFQUFFLFNBQVMsQ0FBQyxLQUN0RCxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5cbmZ1bmN0aW9uIEtiZCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJrYmRcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8a2JkXG4gICAgICBkYXRhLXNsb3Q9XCJrYmRcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJiZy1tdXRlZCB0ZXh0LW11dGVkLWZvcmVncm91bmQgW1tkYXRhLXNsb3Q9dG9vbHRpcC1jb250ZW50XV8mXTpiZy1iYWNrZ3JvdW5kLzIwIFtbZGF0YS1zbG90PXRvb2x0aXAtY29udGVudF1fJl06dGV4dC1iYWNrZ3JvdW5kIGRhcms6W1tkYXRhLXNsb3Q9dG9vbHRpcC1jb250ZW50XV8mXTpiZy1iYWNrZ3JvdW5kLzEwIGgtNSB3LWZpdCBtaW4tdy01IGdhcC0xIHJvdW5kZWQtc20gcHgtMSBmb250LXNhbnMgdGV4dC14cyBmb250LW1lZGl1bSBbJl9zdmc6bm90KFtjbGFzcyo9J3NpemUtJ10pXTpzaXplLTMgcG9pbnRlci1ldmVudHMtbm9uZSBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgc2VsZWN0LW5vbmVcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEtiZEdyb3VwKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxrYmRcbiAgICAgIGRhdGEtc2xvdD1cImtiZC1ncm91cFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwiZ2FwLTEgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5leHBvcnQgeyBLYmQsIEtiZEdyb3VwIH1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ declare function Label({ className, ...props }: React.ComponentProps<"label">): import("react/jsx-runtime").JSX.Element;
2
+ export { Label };
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // biome-ignore-all lint: shadcn
3
+ import { cn } from "../utils/style.js";
4
+ function Label({ className, ...props }) {
5
+ return (_jsx("label", { "data-slot": "label", className: cn("gap-2 text-sm leading-none font-medium group-data-[disabled=true]:opacity-50 peer-disabled:opacity-50 flex items-center select-none group-data-[disabled=true]:pointer-events-none peer-disabled:cursor-not-allowed", className), ...props }));
6
+ }
7
+ export { Label };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZWxlbWVudHMvbGFiZWwudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxnQ0FBZ0M7QUFDaEMsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXRDLFNBQVMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUFpQztJQUNuRSxPQUFPLENBQ0wsNkJBQ1ksT0FBTyxFQUNqQixTQUFTLEVBQUUsRUFBRSxDQUNYLHFOQUFxTixFQUNyTixTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIGJpb21lLWlnbm9yZS1hbGwgbGludDogc2hhZGNuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5cbmZ1bmN0aW9uIExhYmVsKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImxhYmVsXCI+KSB7XG4gIHJldHVybiAoXG4gICAgPGxhYmVsXG4gICAgICBkYXRhLXNsb3Q9XCJsYWJlbFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImdhcC0yIHRleHQtc20gbGVhZGluZy1ub25lIGZvbnQtbWVkaXVtIGdyb3VwLWRhdGEtW2Rpc2FibGVkPXRydWVdOm9wYWNpdHktNTAgcGVlci1kaXNhYmxlZDpvcGFjaXR5LTUwIGZsZXggaXRlbXMtY2VudGVyIHNlbGVjdC1ub25lIGdyb3VwLWRhdGEtW2Rpc2FibGVkPXRydWVdOnBvaW50ZXItZXZlbnRzLW5vbmUgcGVlci1kaXNhYmxlZDpjdXJzb3Itbm90LWFsbG93ZWRcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmV4cG9ydCB7IExhYmVsIH1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import * as React from "react";
2
+ import { Menu as MenuPrimitive } from "@base-ui/react/menu";
3
+ import { Menubar as MenubarPrimitive } from "@base-ui/react/menubar";
4
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./dropdown-menu.tsx";
5
+ declare function Menubar({ className, ...props }: MenubarPrimitive.Props): import("react/jsx-runtime").JSX.Element;
6
+ declare function MenubarMenu({ ...props }: React.ComponentProps<typeof DropdownMenu>): import("react/jsx-runtime").JSX.Element;
7
+ declare function MenubarGroup({ ...props }: React.ComponentProps<typeof DropdownMenuGroup>): import("react/jsx-runtime").JSX.Element;
8
+ declare function MenubarPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPortal>): import("react/jsx-runtime").JSX.Element;
9
+ declare function MenubarTrigger({ className, ...props }: React.ComponentProps<typeof DropdownMenuTrigger>): import("react/jsx-runtime").JSX.Element;
10
+ declare function MenubarContent({ className, align, alignOffset, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuContent>): import("react/jsx-runtime").JSX.Element;
11
+ declare function MenubarItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuItem>): import("react/jsx-runtime").JSX.Element;
12
+ declare function MenubarCheckboxItem({ className, children, checked, inset, ...props }: MenuPrimitive.CheckboxItem.Props & {
13
+ inset?: boolean;
14
+ }): import("react/jsx-runtime").JSX.Element;
15
+ declare function MenubarRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuRadioGroup>): import("react/jsx-runtime").JSX.Element;
16
+ declare function MenubarRadioItem({ className, children, inset, ...props }: MenuPrimitive.RadioItem.Props & {
17
+ inset?: boolean;
18
+ }): import("react/jsx-runtime").JSX.Element;
19
+ declare function MenubarLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuLabel> & {
20
+ inset?: boolean;
21
+ }): import("react/jsx-runtime").JSX.Element;
22
+ declare function MenubarSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuSeparator>): import("react/jsx-runtime").JSX.Element;
23
+ declare function MenubarShortcut({ className, ...props }: React.ComponentProps<typeof DropdownMenuShortcut>): import("react/jsx-runtime").JSX.Element;
24
+ declare function MenubarSub({ ...props }: React.ComponentProps<typeof DropdownMenuSub>): import("react/jsx-runtime").JSX.Element;
25
+ declare function MenubarSubTrigger({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuSubTrigger> & {
26
+ inset?: boolean;
27
+ }): import("react/jsx-runtime").JSX.Element;
28
+ declare function MenubarSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuSubContent>): import("react/jsx-runtime").JSX.Element;
29
+ export { Menubar, MenubarPortal, MenubarMenu, MenubarTrigger, MenubarContent, MenubarGroup, MenubarSeparator, MenubarLabel, MenubarItem, MenubarShortcut, MenubarCheckboxItem, MenubarRadioGroup, MenubarRadioItem, MenubarSub, MenubarSubTrigger, MenubarSubContent, };
@@ -0,0 +1,58 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Menu as MenuPrimitive } from "@base-ui/react/menu";
3
+ import { Menubar as MenubarPrimitive } from "@base-ui/react/menubar";
4
+ import { CheckIcon } from "lucide-react";
5
+ import { cn } from "../utils/style.js";
6
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, } from "./dropdown-menu.js";
7
+ function Menubar({ className, ...props }) {
8
+ return (_jsx(MenubarPrimitive, { "data-slot": "menubar", className: cn("flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs", className), ...props }));
9
+ }
10
+ function MenubarMenu({ ...props }) {
11
+ return _jsx(DropdownMenu, { "data-slot": "menubar-menu", ...props });
12
+ }
13
+ function MenubarGroup({ ...props }) {
14
+ return _jsx(DropdownMenuGroup, { "data-slot": "menubar-group", ...props });
15
+ }
16
+ function MenubarPortal({ ...props }) {
17
+ return _jsx(DropdownMenuPortal, { "data-slot": "menubar-portal", ...props });
18
+ }
19
+ function MenubarTrigger({ className, ...props }) {
20
+ return (_jsx(DropdownMenuTrigger, { "data-slot": "menubar-trigger", className: cn("flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none hover:bg-muted aria-expanded:bg-muted", className), ...props }));
21
+ }
22
+ function MenubarContent({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }) {
23
+ return (_jsx(DropdownMenuContent, { "data-slot": "menubar-content", align: align, alignOffset: alignOffset, sideOffset: sideOffset, className: cn("cn-menu-target cn-menu-translucent min-w-36 rounded-md bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95", className), ...props }));
24
+ }
25
+ function MenubarItem({ className, inset, variant = "default", ...props }) {
26
+ return (_jsx(DropdownMenuItem, { "data-slot": "menubar-item", "data-inset": inset, "data-variant": variant, className: cn("group/menubar-item gap-2 rounded-sm px-2 py-1.5 text-sm focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive!", className), ...props }));
27
+ }
28
+ function MenubarCheckboxItem({ className, children, checked, inset, ...props }) {
29
+ return (_jsxs(MenuPrimitive.CheckboxItem, { "data-slot": "menubar-checkbox-item", "data-inset": inset, className: cn("relative flex cursor-default items-center gap-2 rounded-md py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-8 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0", className), checked: checked, ...props, children: [
30
+ _jsx("span", { className: "pointer-events-none absolute left-2 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: _jsx(MenuPrimitive.CheckboxItemIndicator, { children: _jsx(CheckIcon, {}) }) }), children] }));
31
+ }
32
+ function MenubarRadioGroup({ ...props }) {
33
+ return _jsx(DropdownMenuRadioGroup, { "data-slot": "menubar-radio-group", ...props });
34
+ }
35
+ function MenubarRadioItem({ className, children, inset, ...props }) {
36
+ return (_jsxs(MenuPrimitive.RadioItem, { "data-slot": "menubar-radio-item", "data-inset": inset, className: cn("relative flex cursor-default items-center gap-2 rounded-md py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-8 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props, children: [
37
+ _jsx("span", { className: "pointer-events-none absolute left-2 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: _jsx(MenuPrimitive.RadioItemIndicator, { children: _jsx(CheckIcon, {}) }) }), children] }));
38
+ }
39
+ function MenubarLabel({ className, inset, ...props }) {
40
+ return (_jsx(DropdownMenuLabel, { "data-slot": "menubar-label", "data-inset": inset, className: cn("px-2 py-1.5 text-sm font-medium data-inset:pl-8", className), ...props }));
41
+ }
42
+ function MenubarSeparator({ className, ...props }) {
43
+ return (_jsx(DropdownMenuSeparator, { "data-slot": "menubar-separator", className: cn("-mx-1 my-1 h-px bg-border", className), ...props }));
44
+ }
45
+ function MenubarShortcut({ className, ...props }) {
46
+ return (_jsx(DropdownMenuShortcut, { "data-slot": "menubar-shortcut", className: cn("ml-auto text-xs tracking-widest text-muted-foreground group-focus/menubar-item:text-accent-foreground", className), ...props }));
47
+ }
48
+ function MenubarSub({ ...props }) {
49
+ return _jsx(DropdownMenuSub, { "data-slot": "menubar-sub", ...props });
50
+ }
51
+ function MenubarSubTrigger({ className, inset, ...props }) {
52
+ return (_jsx(DropdownMenuSubTrigger, { "data-slot": "menubar-sub-trigger", "data-inset": inset, className: cn("gap-2 rounded-sm px-2 py-1.5 text-sm focus:bg-accent focus:text-accent-foreground data-inset:pl-8 data-open:bg-accent data-open:text-accent-foreground [&_svg:not([class*='size-'])]:size-4", className), ...props }));
53
+ }
54
+ function MenubarSubContent({ className, ...props }) {
55
+ return (_jsx(DropdownMenuSubContent, { "data-slot": "menubar-sub-content", className: cn("cn-menu-target cn-menu-translucent min-w-32 rounded-md bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className), ...props }));
56
+ }
57
+ export { Menubar, MenubarPortal, MenubarMenu, MenubarTrigger, MenubarContent, MenubarGroup, MenubarSeparator, MenubarLabel, MenubarItem, MenubarShortcut, MenubarCheckboxItem, MenubarRadioGroup, MenubarRadioItem, MenubarSub, MenubarSubTrigger, MenubarSubContent, };
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudWJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NvdXJjZS9lbGVtZW50cy9tZW51YmFyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLElBQUksSUFBSSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUMzRCxPQUFPLEVBQUUsT0FBTyxJQUFJLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV4QyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDdEMsT0FBTyxFQUNMLFlBQVksRUFDWixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGVBQWUsRUFDZixzQkFBc0IsRUFDdEIsc0JBQXNCLEVBQ3RCLG1CQUFtQixHQUNwQixNQUFNLG9CQUFxQixDQUFBO0FBRTVCLFNBQVMsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUEwQjtJQUM5RCxPQUFPLENBQ0wsS0FBQyxnQkFBZ0IsaUJBQ0wsU0FBUyxFQUNuQixTQUFTLEVBQUUsRUFBRSxDQUNYLDZEQUE2RCxFQUM3RCxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQTZDO0lBQzFFLE9BQU8sS0FBQyxZQUFZLGlCQUFXLGNBQWMsS0FBSyxLQUFLLEdBQUksQ0FBQTtBQUM3RCxDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsRUFDcEIsR0FBRyxLQUFLLEVBQ3VDO0lBQy9DLE9BQU8sS0FBQyxpQkFBaUIsaUJBQVcsZUFBZSxLQUFLLEtBQUssR0FBSSxDQUFBO0FBQ25FLENBQUM7QUFFRCxT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QixFQUNoQixZQUFZLEVBQ1osV0FBVyxFQUNYLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixVQUFVLEVBQ1YsaUJBQWlCLEVBQ2pCLGlCQUFpQixHQUNsQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IE1lbnUgYXMgTWVudVByaW1pdGl2ZSB9IGZyb20gXCJAYmFzZS11aS9yZWFjdC9tZW51XCJcbmltcG9ydCB7IE1lbnViYXIgYXMgTWVudWJhclByaW1pdGl2ZSB9IGZyb20gXCJAYmFzZS11aS9yZWFjdC9tZW51YmFyXCJcbmltcG9ydCB7IENoZWNrSWNvbiB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5pbXBvcnQge1xuICBEcm9wZG93bk1lbnUsXG4gIERyb3Bkb3duTWVudUNvbnRlbnQsXG4gIERyb3Bkb3duTWVudUdyb3VwLFxuICBEcm9wZG93bk1lbnVJdGVtLFxuICBEcm9wZG93bk1lbnVMYWJlbCxcbiAgRHJvcGRvd25NZW51UG9ydGFsLFxuICBEcm9wZG93bk1lbnVSYWRpb0dyb3VwLFxuICBEcm9wZG93bk1lbnVTZXBhcmF0b3IsXG4gIERyb3Bkb3duTWVudVNob3J0Y3V0LFxuICBEcm9wZG93bk1lbnVTdWIsXG4gIERyb3Bkb3duTWVudVN1YkNvbnRlbnQsXG4gIERyb3Bkb3duTWVudVN1YlRyaWdnZXIsXG4gIERyb3Bkb3duTWVudVRyaWdnZXIsXG59IGZyb20gXCIuL2Ryb3Bkb3duLW1lbnUudHN4XCJcblxuZnVuY3Rpb24gTWVudWJhcih7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogTWVudWJhclByaW1pdGl2ZS5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxNZW51YmFyUHJpbWl0aXZlXG4gICAgICBkYXRhLXNsb3Q9XCJtZW51YmFyXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZmxleCBoLTkgaXRlbXMtY2VudGVyIGdhcC0xIHJvdW5kZWQtbWQgYm9yZGVyIHAtMSBzaGFkb3cteHNcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIE1lbnViYXJNZW51KHsgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIERyb3Bkb3duTWVudT4pIHtcbiAgcmV0dXJuIDxEcm9wZG93bk1lbnUgZGF0YS1zbG90PVwibWVudWJhci1tZW51XCIgey4uLnByb3BzfSAvPlxufVxuXG5mdW5jdGlvbiBNZW51YmFyR3JvdXAoe1xuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIERyb3Bkb3duTWVudUdyb3VwPikge1xuICByZXR1cm4gPERyb3Bkb3duTWVudUdyb3VwIGRhdGEtc2xvdD1cIm1lbnViYXItZ3JvdXBcIiB7Li4ucHJvcHN9IC8+XG59XG5cbmZ1bmN0aW9uIE1lbnViYXJQb3J0YWwoe1xuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIERyb3Bkb3duTWVudVBvcnRhbD4pIHtcbiAgcmV0dXJuIDxEcm9wZG93bk1lbnVQb3J0YWwgZGF0YS1zbG90PVwibWVudWJhci1wb3J0YWxcIiB7Li4ucHJvcHN9IC8+XG59XG5cbmZ1bmN0aW9uIE1lbnViYXJUcmlnZ2VyKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIERyb3Bkb3duTWVudVRyaWdnZXI+KSB7XG4gIHJldHVybiAoXG4gICAgPERyb3Bkb3duTWVudVRyaWdnZXJcbiAgICAgIGRhdGEtc2xvdD1cIm1lbnViYXItdHJpZ2dlclwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImZsZXggaXRlbXMtY2VudGVyIHJvdW5kZWQtc20gcHgtMiBweS0xIHRleHQtc20gZm9udC1tZWRpdW0gb3V0bGluZS1oaWRkZW4gc2VsZWN0LW5vbmUgaG92ZXI6YmctbXV0ZWQgYXJpYS1leHBhbmRlZDpiZy1tdXRlZFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTWVudWJhckNvbnRlbnQoe1xuICBjbGFzc05hbWUsXG4gIGFsaWduID0gXCJzdGFydFwiLFxuICBhbGlnbk9mZnNldCA9IC00LFxuICBzaWRlT2Zmc2V0ID0gOCxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPHR5cGVvZiBEcm9wZG93bk1lbnVDb250ZW50Pikge1xuICByZXR1cm4gKFxuICAgIDxEcm9wZG93bk1lbnVDb250ZW50XG4gICAgICBkYXRhLXNsb3Q9XCJtZW51YmFyLWNvbnRlbnRcIlxuICAgICAgYWxpZ249e2FsaWdufVxuICAgICAgYWxpZ25PZmZzZXQ9e2FsaWduT2Zmc2V0fVxuICAgICAgc2lkZU9mZnNldD17c2lkZU9mZnNldH1cbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiY24tbWVudS10YXJnZXQgY24tbWVudS10cmFuc2x1Y2VudCBtaW4tdy0zNiByb3VuZGVkLW1kIGJnLXBvcG92ZXIgcC0xIHRleHQtcG9wb3Zlci1mb3JlZ3JvdW5kIHNoYWRvdy1tZCByaW5nLTEgcmluZy1mb3JlZ3JvdW5kLzEwIGR1cmF0aW9uLTEwMCBkYXRhLVtzaWRlPWJvdHRvbV06c2xpZGUtaW4tZnJvbS10b3AtMiBkYXRhLVtzaWRlPWlubGluZS1lbmRdOnNsaWRlLWluLWZyb20tbGVmdC0yIGRhdGEtW3NpZGU9aW5saW5lLXN0YXJ0XTpzbGlkZS1pbi1mcm9tLXJpZ2h0LTIgZGF0YS1bc2lkZT1sZWZ0XTpzbGlkZS1pbi1mcm9tLXJpZ2h0LTIgZGF0YS1bc2lkZT1yaWdodF06c2xpZGUtaW4tZnJvbS1sZWZ0LTIgZGF0YS1bc2lkZT10b3BdOnNsaWRlLWluLWZyb20tYm90dG9tLTIgZGF0YS1vcGVuOmFuaW1hdGUtaW4gZGF0YS1vcGVuOmZhZGUtaW4tMCBkYXRhLW9wZW46em9vbS1pbi05NVwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTWVudWJhckl0ZW0oe1xuICBjbGFzc05hbWUsXG4gIGluc2V0LFxuICB2YXJpYW50ID0gXCJkZWZhdWx0XCIsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczx0eXBlb2YgRHJvcGRvd25NZW51SXRlbT4pIHtcbiAgcmV0dXJuIChcbiAgICA8RHJvcGRvd25NZW51SXRlbVxuICAgICAgZGF0YS1zbG90PVwibWVudWJhci1pdGVtXCJcbiAgICAgIGRhdGEtaW5zZXQ9e2luc2V0fVxuICAgICAgZGF0YS12YXJpYW50PXt2YXJpYW50fVxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJncm91cC9tZW51YmFyLWl0ZW0gZ2FwLTIgcm91bmRlZC1zbSBweC0yIHB5LTEuNSB0ZXh0LXNtIGZvY3VzOmJnLWFjY2VudCBmb2N1czp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIG5vdC1kYXRhLVt2YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1czoqKjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIGRhdGEtaW5zZXQ6cGwtOCBkYXRhLVt2YXJpYW50PWRlc3RydWN0aXZlXTp0ZXh0LWRlc3RydWN0aXZlIGRhdGEtW3ZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOmZvY3VzOmJnLWRlc3RydWN0aXZlLzEwIGRhdGEtW3ZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOmZvY3VzOnRleHQtZGVzdHJ1Y3RpdmUgZGFyazpkYXRhLVt2YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1czpiZy1kZXN0cnVjdGl2ZS8yMCBkYXRhLWRpc2FibGVkOm9wYWNpdHktNTAgWyZfc3ZnOm5vdChbY2xhc3MqPSdzaXplLSddKV06c2l6ZS00IGRhdGEtW3ZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOio6W3N2Z106dGV4dC1kZXN0cnVjdGl2ZSFcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIE1lbnViYXJDaGVja2JveEl0ZW0oe1xuICBjbGFzc05hbWUsXG4gIGNoaWxkcmVuLFxuICBjaGVja2VkLFxuICBpbnNldCxcbiAgLi4ucHJvcHNcbn06IE1lbnVQcmltaXRpdmUuQ2hlY2tib3hJdGVtLlByb3BzICYge1xuICBpbnNldD86IGJvb2xlYW5cbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8TWVudVByaW1pdGl2ZS5DaGVja2JveEl0ZW1cbiAgICAgIGRhdGEtc2xvdD1cIm1lbnViYXItY2hlY2tib3gtaXRlbVwiXG4gICAgICBkYXRhLWluc2V0PXtpbnNldH1cbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwicmVsYXRpdmUgZmxleCBjdXJzb3ItZGVmYXVsdCBpdGVtcy1jZW50ZXIgZ2FwLTIgcm91bmRlZC1tZCBweS0xLjUgcHItMiBwbC04IHRleHQtc20gb3V0bGluZS1oaWRkZW4gc2VsZWN0LW5vbmUgZm9jdXM6YmctYWNjZW50IGZvY3VzOnRleHQtYWNjZW50LWZvcmVncm91bmQgZm9jdXM6Kio6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCBkYXRhLWluc2V0OnBsLTggZGF0YS1kaXNhYmxlZDpwb2ludGVyLWV2ZW50cy1ub25lIGRhdGEtZGlzYWJsZWQ6b3BhY2l0eS01MCBbJl9zdmddOnBvaW50ZXItZXZlbnRzLW5vbmUgWyZfc3ZnXTpzaHJpbmstMFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgY2hlY2tlZD17Y2hlY2tlZH1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9XCJwb2ludGVyLWV2ZW50cy1ub25lIGFic29sdXRlIGxlZnQtMiBmbGV4IHNpemUtNCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgWyZfc3ZnOm5vdChbY2xhc3MqPSdzaXplLSddKV06c2l6ZS00XCI+XG4gICAgICAgIDxNZW51UHJpbWl0aXZlLkNoZWNrYm94SXRlbUluZGljYXRvcj5cbiAgICAgICAgICA8Q2hlY2tJY29uIC8+XG4gICAgICAgIDwvTWVudVByaW1pdGl2ZS5DaGVja2JveEl0ZW1JbmRpY2F0b3I+XG4gICAgICA8L3NwYW4+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9NZW51UHJpbWl0aXZlLkNoZWNrYm94SXRlbT5cbiAgKVxufVxuXG5mdW5jdGlvbiBNZW51YmFyUmFkaW9Hcm91cCh7XG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczx0eXBlb2YgRHJvcGRvd25NZW51UmFkaW9Hcm91cD4pIHtcbiAgcmV0dXJuIDxEcm9wZG93bk1lbnVSYWRpb0dyb3VwIGRhdGEtc2xvdD1cIm1lbnViYXItcmFkaW8tZ3JvdXBcIiB7Li4ucHJvcHN9IC8+XG59XG5cbmZ1bmN0aW9uIE1lbnViYXJSYWRpb0l0ZW0oe1xuICBjbGFzc05hbWUsXG4gIGNoaWxkcmVuLFxuICBpbnNldCxcbiAgLi4ucHJvcHNcbn06IE1lbnVQcmltaXRpdmUuUmFkaW9JdGVtLlByb3BzICYge1xuICBpbnNldD86IGJvb2xlYW5cbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8TWVudVByaW1pdGl2ZS5SYWRpb0l0ZW1cbiAgICAgIGRhdGEtc2xvdD1cIm1lbnViYXItcmFkaW8taXRlbVwiXG4gICAgICBkYXRhLWluc2V0PXtpbnNldH1cbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwicmVsYXRpdmUgZmxleCBjdXJzb3ItZGVmYXVsdCBpdGVtcy1jZW50ZXIgZ2FwLTIgcm91bmRlZC1tZCBweS0xLjUgcHItMiBwbC04IHRleHQtc20gb3V0bGluZS1oaWRkZW4gc2VsZWN0LW5vbmUgZm9jdXM6YmctYWNjZW50IGZvY3VzOnRleHQtYWNjZW50LWZvcmVncm91bmQgZm9jdXM6Kio6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCBkYXRhLWluc2V0OnBsLTggZGF0YS1kaXNhYmxlZDpwb2ludGVyLWV2ZW50cy1ub25lIGRhdGEtZGlzYWJsZWQ6b3BhY2l0eS01MCBbJl9zdmddOnBvaW50ZXItZXZlbnRzLW5vbmUgWyZfc3ZnXTpzaHJpbmstMCBbJl9zdmc6bm90KFtjbGFzcyo9J3NpemUtJ10pXTpzaXplLTRcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9XCJwb2ludGVyLWV2ZW50cy1ub25lIGFic29sdXRlIGxlZnQtMiBmbGV4IHNpemUtNCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgWyZfc3ZnOm5vdChbY2xhc3MqPSdzaXplLSddKV06c2l6ZS00XCI+XG4gICAgICAgIDxNZW51UHJpbWl0aXZlLlJhZGlvSXRlbUluZGljYXRvcj5cbiAgICAgICAgICA8Q2hlY2tJY29uIC8+XG4gICAgICAgIDwvTWVudVByaW1pdGl2ZS5SYWRpb0l0ZW1JbmRpY2F0b3I+XG4gICAgICA8L3NwYW4+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9NZW51UHJpbWl0aXZlLlJhZGlvSXRlbT5cbiAgKVxufVxuXG5mdW5jdGlvbiBNZW51YmFyTGFiZWwoe1xuICBjbGFzc05hbWUsXG4gIGluc2V0LFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIERyb3Bkb3duTWVudUxhYmVsPiAmIHtcbiAgaW5zZXQ/OiBib29sZWFuXG59KSB7XG4gIHJldHVybiAoXG4gICAgPERyb3Bkb3duTWVudUxhYmVsXG4gICAgICBkYXRhLXNsb3Q9XCJtZW51YmFyLWxhYmVsXCJcbiAgICAgIGRhdGEtaW5zZXQ9e2luc2V0fVxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJweC0yIHB5LTEuNSB0ZXh0LXNtIGZvbnQtbWVkaXVtIGRhdGEtaW5zZXQ6cGwtOFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTWVudWJhclNlcGFyYXRvcih7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPHR5cGVvZiBEcm9wZG93bk1lbnVTZXBhcmF0b3I+KSB7XG4gIHJldHVybiAoXG4gICAgPERyb3Bkb3duTWVudVNlcGFyYXRvclxuICAgICAgZGF0YS1zbG90PVwibWVudWJhci1zZXBhcmF0b3JcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcIi1teC0xIG15LTEgaC1weCBiZy1ib3JkZXJcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIE1lbnViYXJTaG9ydGN1dCh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPHR5cGVvZiBEcm9wZG93bk1lbnVTaG9ydGN1dD4pIHtcbiAgcmV0dXJuIChcbiAgICA8RHJvcGRvd25NZW51U2hvcnRjdXRcbiAgICAgIGRhdGEtc2xvdD1cIm1lbnViYXItc2hvcnRjdXRcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJtbC1hdXRvIHRleHQteHMgdHJhY2tpbmctd2lkZXN0IHRleHQtbXV0ZWQtZm9yZWdyb3VuZCBncm91cC1mb2N1cy9tZW51YmFyLWl0ZW06dGV4dC1hY2NlbnQtZm9yZWdyb3VuZFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTWVudWJhclN1Yih7XG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczx0eXBlb2YgRHJvcGRvd25NZW51U3ViPikge1xuICByZXR1cm4gPERyb3Bkb3duTWVudVN1YiBkYXRhLXNsb3Q9XCJtZW51YmFyLXN1YlwiIHsuLi5wcm9wc30gLz5cbn1cblxuZnVuY3Rpb24gTWVudWJhclN1YlRyaWdnZXIoe1xuICBjbGFzc05hbWUsXG4gIGluc2V0LFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIERyb3Bkb3duTWVudVN1YlRyaWdnZXI+ICYge1xuICBpbnNldD86IGJvb2xlYW5cbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8RHJvcGRvd25NZW51U3ViVHJpZ2dlclxuICAgICAgZGF0YS1zbG90PVwibWVudWJhci1zdWItdHJpZ2dlclwiXG4gICAgICBkYXRhLWluc2V0PXtpbnNldH1cbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZ2FwLTIgcm91bmRlZC1zbSBweC0yIHB5LTEuNSB0ZXh0LXNtIGZvY3VzOmJnLWFjY2VudCBmb2N1czp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIGRhdGEtaW5zZXQ6cGwtOCBkYXRhLW9wZW46YmctYWNjZW50IGRhdGEtb3Blbjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIFsmX3N2Zzpub3QoW2NsYXNzKj0nc2l6ZS0nXSldOnNpemUtNFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTWVudWJhclN1YkNvbnRlbnQoe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczx0eXBlb2YgRHJvcGRvd25NZW51U3ViQ29udGVudD4pIHtcbiAgcmV0dXJuIChcbiAgICA8RHJvcGRvd25NZW51U3ViQ29udGVudFxuICAgICAgZGF0YS1zbG90PVwibWVudWJhci1zdWItY29udGVudFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImNuLW1lbnUtdGFyZ2V0IGNuLW1lbnUtdHJhbnNsdWNlbnQgbWluLXctMzIgcm91bmRlZC1tZCBiZy1wb3BvdmVyIHAtMSB0ZXh0LXBvcG92ZXItZm9yZWdyb3VuZCBzaGFkb3ctbGcgcmluZy0xIHJpbmctZm9yZWdyb3VuZC8xMCBkdXJhdGlvbi0xMDAgZGF0YS1bc2lkZT1ib3R0b21dOnNsaWRlLWluLWZyb20tdG9wLTIgZGF0YS1bc2lkZT1sZWZ0XTpzbGlkZS1pbi1mcm9tLXJpZ2h0LTIgZGF0YS1bc2lkZT1yaWdodF06c2xpZGUtaW4tZnJvbS1sZWZ0LTIgZGF0YS1bc2lkZT10b3BdOnNsaWRlLWluLWZyb20tYm90dG9tLTIgZGF0YS1vcGVuOmFuaW1hdGUtaW4gZGF0YS1vcGVuOmZhZGUtaW4tMCBkYXRhLW9wZW46em9vbS1pbi05NSBkYXRhLWNsb3NlZDphbmltYXRlLW91dCBkYXRhLWNsb3NlZDpmYWRlLW91dC0wIGRhdGEtY2xvc2VkOnpvb20tb3V0LTk1XCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5leHBvcnQge1xuICBNZW51YmFyLFxuICBNZW51YmFyUG9ydGFsLFxuICBNZW51YmFyTWVudSxcbiAgTWVudWJhclRyaWdnZXIsXG4gIE1lbnViYXJDb250ZW50LFxuICBNZW51YmFyR3JvdXAsXG4gIE1lbnViYXJTZXBhcmF0b3IsXG4gIE1lbnViYXJMYWJlbCxcbiAgTWVudWJhckl0ZW0sXG4gIE1lbnViYXJTaG9ydGN1dCxcbiAgTWVudWJhckNoZWNrYm94SXRlbSxcbiAgTWVudWJhclJhZGlvR3JvdXAsXG4gIE1lbnViYXJSYWRpb0l0ZW0sXG4gIE1lbnViYXJTdWIsXG4gIE1lbnViYXJTdWJUcmlnZ2VyLFxuICBNZW51YmFyU3ViQ29udGVudCxcbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ import * as React from "react";
2
+ type NativeSelectProps = Omit<React.ComponentProps<"select">, "size"> & {
3
+ size?: "sm" | "default";
4
+ };
5
+ declare function NativeSelect({ className, size, ...props }: NativeSelectProps): import("react/jsx-runtime").JSX.Element;
6
+ declare function NativeSelectOption({ ...props }: React.ComponentProps<"option">): import("react/jsx-runtime").JSX.Element;
7
+ declare function NativeSelectOptGroup({ className, ...props }: React.ComponentProps<"optgroup">): import("react/jsx-runtime").JSX.Element;
8
+ export { NativeSelect, NativeSelectOptGroup, NativeSelectOption };
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ChevronDownIcon } from "lucide-react";
3
+ import { cn } from "../utils/style.js";
4
+ function NativeSelect({ className, size = "default", ...props }) {
5
+ return (_jsxs("div", { className: cn("group/native-select relative w-fit has-[select:disabled]:opacity-50", className), "data-slot": "native-select-wrapper", "data-size": size, children: [
6
+ _jsx("select", { "data-slot": "native-select", "data-size": size, className: "h-9 w-full min-w-0 appearance-none rounded-md border border-input bg-transparent py-1 pr-8 pl-2.5 text-sm shadow-xs transition-[color,box-shadow] outline-none select-none selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=sm]:h-8 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", ...props }), _jsx(ChevronDownIcon, { className: "pointer-events-none absolute top-1/2 right-2.5 size-4 -translate-y-1/2 text-muted-foreground select-none", "aria-hidden": "true", "data-slot": "native-select-icon" })
7
+ ] }));
8
+ }
9
+ function NativeSelectOption({ ...props }) {
10
+ return _jsx("option", { "data-slot": "native-select-option", ...props });
11
+ }
12
+ function NativeSelectOptGroup({ className, ...props }) {
13
+ return (_jsx("optgroup", { "data-slot": "native-select-optgroup", className: cn(className), ...props }));
14
+ }
15
+ export { NativeSelect, NativeSelectOptGroup, NativeSelectOption };
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLXNlbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NvdXJjZS9lbGVtZW50cy9uYXRpdmUtc2VsZWN0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFNdEMsU0FBUyxZQUFZLENBQUMsRUFDcEIsU0FBUyxFQUNULElBQUksR0FBRyxTQUFTLEVBQ2hCLEdBQUcsS0FBSyxFQUNVO0lBQ2xCLE9BQU8sQ0FDTCxlQUNFLFNBQVMsRUFBRSxFQUFFLENBQ1gscUVBQXFFLEVBQ3JFLFNBQVMsQ0FDVixlQUNTLHVCQUF1QixlQUN0QixJQUFJO1lBRWYsOEJBQ1ksZUFBZSxlQUNkLElBQUksRUFDZixTQUFTLEVBQUMsc21CQUFzbUIsS0FDNW1CLEtBQUssR0FDVCxFQUNGLEtBQUMsZUFBZSxJQUNkLFNBQVMsRUFBQywwR0FBMEcsaUJBQ3hHLE1BQU0sZUFDUixvQkFBb0IsR0FDOUI7WUFDRSxDQUNQLENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFrQztJQUN0RSxPQUFPLDhCQUFrQixzQkFBc0IsS0FBSyxLQUFLLEdBQUksQ0FBQTtBQUMvRCxDQUFDO0FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxFQUM1QixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQ3lCO0lBQ2pDLE9BQU8sQ0FDTCxnQ0FDWSx3QkFBd0IsRUFDbEMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FDcEIsS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IHsgQ2hldnJvbkRvd25JY29uIH0gZnJvbSBcImx1Y2lkZS1yZWFjdFwiXG5cbmltcG9ydCB7IGNuIH0gZnJvbSBcIi4uL3V0aWxzL3N0eWxlLnRzXCJcblxudHlwZSBOYXRpdmVTZWxlY3RQcm9wcyA9IE9taXQ8UmVhY3QuQ29tcG9uZW50UHJvcHM8XCJzZWxlY3RcIj4sIFwic2l6ZVwiPiAmIHtcbiAgc2l6ZT86IFwic21cIiB8IFwiZGVmYXVsdFwiXG59XG5cbmZ1bmN0aW9uIE5hdGl2ZVNlbGVjdCh7XG4gIGNsYXNzTmFtZSxcbiAgc2l6ZSA9IFwiZGVmYXVsdFwiLFxuICAuLi5wcm9wc1xufTogTmF0aXZlU2VsZWN0UHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImdyb3VwL25hdGl2ZS1zZWxlY3QgcmVsYXRpdmUgdy1maXQgaGFzLVtzZWxlY3Q6ZGlzYWJsZWRdOm9wYWNpdHktNTBcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIGRhdGEtc2xvdD1cIm5hdGl2ZS1zZWxlY3Qtd3JhcHBlclwiXG4gICAgICBkYXRhLXNpemU9e3NpemV9XG4gICAgPlxuICAgICAgPHNlbGVjdFxuICAgICAgICBkYXRhLXNsb3Q9XCJuYXRpdmUtc2VsZWN0XCJcbiAgICAgICAgZGF0YS1zaXplPXtzaXplfVxuICAgICAgICBjbGFzc05hbWU9XCJoLTkgdy1mdWxsIG1pbi13LTAgYXBwZWFyYW5jZS1ub25lIHJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci1pbnB1dCBiZy10cmFuc3BhcmVudCBweS0xIHByLTggcGwtMi41IHRleHQtc20gc2hhZG93LXhzIHRyYW5zaXRpb24tW2NvbG9yLGJveC1zaGFkb3ddIG91dGxpbmUtbm9uZSBzZWxlY3Qtbm9uZSBzZWxlY3Rpb246YmctcHJpbWFyeSBzZWxlY3Rpb246dGV4dC1wcmltYXJ5LWZvcmVncm91bmQgcGxhY2Vob2xkZXI6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kIGZvY3VzLXZpc2libGU6Ym9yZGVyLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLTMgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcvNTAgZGlzYWJsZWQ6cG9pbnRlci1ldmVudHMtbm9uZSBkaXNhYmxlZDpjdXJzb3Itbm90LWFsbG93ZWQgYXJpYS1pbnZhbGlkOmJvcmRlci1kZXN0cnVjdGl2ZSBhcmlhLWludmFsaWQ6cmluZy0zIGFyaWEtaW52YWxpZDpyaW5nLWRlc3RydWN0aXZlLzIwIGRhdGEtW3NpemU9c21dOmgtOCBkYXJrOmJnLWlucHV0LzMwIGRhcms6aG92ZXI6YmctaW5wdXQvNTAgZGFyazphcmlhLWludmFsaWQ6Ym9yZGVyLWRlc3RydWN0aXZlLzUwIGRhcms6YXJpYS1pbnZhbGlkOnJpbmctZGVzdHJ1Y3RpdmUvNDBcIlxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAvPlxuICAgICAgPENoZXZyb25Eb3duSWNvblxuICAgICAgICBjbGFzc05hbWU9XCJwb2ludGVyLWV2ZW50cy1ub25lIGFic29sdXRlIHRvcC0xLzIgcmlnaHQtMi41IHNpemUtNCAtdHJhbnNsYXRlLXktMS8yIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCBzZWxlY3Qtbm9uZVwiXG4gICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgIGRhdGEtc2xvdD1cIm5hdGl2ZS1zZWxlY3QtaWNvblwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuICApXG59XG5cbmZ1bmN0aW9uIE5hdGl2ZVNlbGVjdE9wdGlvbih7IC4uLnByb3BzIH06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwib3B0aW9uXCI+KSB7XG4gIHJldHVybiA8b3B0aW9uIGRhdGEtc2xvdD1cIm5hdGl2ZS1zZWxlY3Qtb3B0aW9uXCIgey4uLnByb3BzfSAvPlxufVxuXG5mdW5jdGlvbiBOYXRpdmVTZWxlY3RPcHRHcm91cCh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwib3B0Z3JvdXBcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8b3B0Z3JvdXBcbiAgICAgIGRhdGEtc2xvdD1cIm5hdGl2ZS1zZWxlY3Qtb3B0Z3JvdXBcIlxuICAgICAgY2xhc3NOYW1lPXtjbihjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZXhwb3J0IHsgTmF0aXZlU2VsZWN0LCBOYXRpdmVTZWxlY3RPcHRHcm91cCwgTmF0aXZlU2VsZWN0T3B0aW9uIH1cbiJdfQ==
@@ -0,0 +1,11 @@
1
+ import { NavigationMenu as NavigationMenuPrimitive } from "@base-ui/react/navigation-menu";
2
+ declare function NavigationMenu({ align, className, children, ...props }: NavigationMenuPrimitive.Root.Props & Pick<NavigationMenuPrimitive.Positioner.Props, "align">): import("react/jsx-runtime").JSX.Element;
3
+ declare function NavigationMenuList({ className, ...props }: React.ComponentPropsWithRef<typeof NavigationMenuPrimitive.List>): import("react/jsx-runtime").JSX.Element;
4
+ declare function NavigationMenuItem({ className, ...props }: React.ComponentPropsWithRef<typeof NavigationMenuPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
5
+ declare const navigationMenuTriggerStyle: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
6
+ declare function NavigationMenuTrigger({ className, children, ...props }: NavigationMenuPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
7
+ declare function NavigationMenuContent({ className, ...props }: NavigationMenuPrimitive.Content.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function NavigationMenuPositioner({ className, side, sideOffset, align, alignOffset, ...props }: NavigationMenuPrimitive.Positioner.Props): import("react/jsx-runtime").JSX.Element;
9
+ declare function NavigationMenuLink({ className, ...props }: NavigationMenuPrimitive.Link.Props): import("react/jsx-runtime").JSX.Element;
10
+ declare function NavigationMenuIndicator({ className, ...props }: React.ComponentPropsWithRef<typeof NavigationMenuPrimitive.Icon>): import("react/jsx-runtime").JSX.Element;
11
+ export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, navigationMenuTriggerStyle, NavigationMenuPositioner, };
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { NavigationMenu as NavigationMenuPrimitive } from "@base-ui/react/navigation-menu";
3
+ import { cva } from "class-variance-authority";
4
+ import { ChevronDownIcon } from "lucide-react";
5
+ import { cn } from "../utils/style.js";
6
+ function NavigationMenu({ align = "start", className, children, ...props }) {
7
+ return (_jsxs(NavigationMenuPrimitive.Root, { "data-slot": "navigation-menu", className: cn("group/navigation-menu relative flex max-w-max flex-1 items-center justify-center", className), ...props, children: [children, _jsx(NavigationMenuPositioner, { align: align })
8
+ ] }));
9
+ }
10
+ function NavigationMenuList({ className, ...props }) {
11
+ return (_jsx(NavigationMenuPrimitive.List, { "data-slot": "navigation-menu-list", className: cn("group flex flex-1 list-none items-center justify-center gap-0", className), ...props }));
12
+ }
13
+ function NavigationMenuItem({ className, ...props }) {
14
+ return (_jsx(NavigationMenuPrimitive.Item, { "data-slot": "navigation-menu-item", className: cn("relative", className), ...props }));
15
+ }
16
+ const navigationMenuTriggerStyle = cva("group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center rounded-md px-4 py-2 text-sm font-medium transition-all outline-none hover:bg-muted focus:bg-muted focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-popup-open:bg-muted/50 data-popup-open:hover:bg-muted data-open:bg-muted/50 data-open:hover:bg-muted data-open:focus:bg-muted");
17
+ function NavigationMenuTrigger({ className, children, ...props }) {
18
+ return (_jsxs(NavigationMenuPrimitive.Trigger, { "data-slot": "navigation-menu-trigger", className: cn(navigationMenuTriggerStyle(), "group", className), ...props, children: [children, " ", _jsx(ChevronDownIcon, { className: "relative top-px ml-1 size-3 transition duration-300 group-data-popup-open/navigation-menu-trigger:rotate-180 group-data-open/navigation-menu-trigger:rotate-180", "aria-hidden": "true" })
19
+ ] }));
20
+ }
21
+ function NavigationMenuContent({ className, ...props }) {
22
+ return (_jsx(NavigationMenuPrimitive.Content, { "data-slot": "navigation-menu-content", className: cn("data-ending-style:data-activation-direction=left:translate-x-[50%] data-ending-style:data-activation-direction=right:translate-x-[-50%] data-starting-style:data-activation-direction=left:translate-x-[-50%] data-starting-style:data-activation-direction=right:translate-x-[50%] h-full w-auto p-2 pr-2.5 transition-[opacity,transform,translate] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:ring-1 group-data-[viewport=false]/navigation-menu:ring-foreground/10 group-data-[viewport=false]/navigation-menu:duration-300 data-ending-style:opacity-0 data-starting-style:opacity-0 data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 data-[motion^=from-]:animate-in data-[motion^=from-]:fade-in data-[motion^=to-]:animate-out data-[motion^=to-]:fade-out **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none group-data-[viewport=false]/navigation-menu:data-open:animate-in group-data-[viewport=false]/navigation-menu:data-open:fade-in-0 group-data-[viewport=false]/navigation-menu:data-open:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-closed:animate-out group-data-[viewport=false]/navigation-menu:data-closed:fade-out-0 group-data-[viewport=false]/navigation-menu:data-closed:zoom-out-95", className), ...props }));
23
+ }
24
+ function NavigationMenuPositioner({ className, side = "bottom", sideOffset = 8, align = "start", alignOffset = 0, ...props }) {
25
+ return (_jsx(NavigationMenuPrimitive.Portal, { children: _jsx(NavigationMenuPrimitive.Positioner, { side: side, sideOffset: sideOffset, align: align, alignOffset: alignOffset, className: cn("isolate z-50 h-(--positioner-height) w-(--positioner-width) max-w-(--available-width) transition-[top,left,right,bottom] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] data-instant:transition-none data-[side=bottom]:before:top-[-10px] data-[side=bottom]:before:right-0 data-[side=bottom]:before:left-0", className), ...props, children: _jsx(NavigationMenuPrimitive.Popup, { className: "data-[ending-style]:easing-[ease] xs:w-(--popup-width) relative h-(--popup-height) w-(--popup-width) origin-(--transform-origin) rounded-lg bg-popover text-popover-foreground shadow ring-1 ring-foreground/10 transition-[opacity,transform,width,height,scale,translate] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] outline-none data-ending-style:scale-90 data-ending-style:opacity-0 data-ending-style:duration-150 data-starting-style:scale-90 data-starting-style:opacity-0", children: _jsx(NavigationMenuPrimitive.Viewport, { className: "relative size-full overflow-hidden" }) }) }) }));
26
+ }
27
+ function NavigationMenuLink({ className, ...props }) {
28
+ return (_jsx(NavigationMenuPrimitive.Link, { "data-slot": "navigation-menu-link", className: cn("flex items-center gap-1.5 rounded-md p-2 text-sm transition-all outline-none hover:bg-muted focus:bg-muted focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:outline-1 in-data-[slot=navigation-menu-content]:rounded-sm data-[active=true]:bg-muted/50 data-[active=true]:hover:bg-muted data-[active=true]:focus:bg-muted [&_svg:not([class*='size-'])]:size-4", className), ...props }));
29
+ }
30
+ function NavigationMenuIndicator({ className, ...props }) {
31
+ return (_jsx(NavigationMenuPrimitive.Icon, { "data-slot": "navigation-menu-indicator", className: cn("top-full z-1 flex h-1.5 items-end justify-center overflow-hidden data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:animate-in data-[state=visible]:fade-in", className), ...props, children: _jsx("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" }) }));
32
+ }
33
+ export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, navigationMenuTriggerStyle, NavigationMenuPositioner, };
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1tZW51LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL2VsZW1lbnRzL25hdmlnYXRpb24tbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxjQUFjLElBQUksdUJBQXVCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUMxRixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFdEMsU0FBUyxjQUFjLENBQUMsRUFDdEIsS0FBSyxHQUFHLE9BQU8sRUFDZixTQUFTLEVBQ1QsUUFBUSxFQUNSLEdBQUcsS0FBSyxFQUUrQztJQUN2RCxPQUFPLENBQ0wsTUFBQyx1QkFBdUIsQ0FBQyxJQUFJLGlCQUNqQixpQkFBaUIsRUFDM0IsU0FBUyxFQUFFLEVBQUUsQ0FDWCxrRkFBa0YsRUFDbEYsU0FBUyxDQUNWLEtBQ0csS0FBSyxhQUVSLFFBQVEsRUFDVCxLQUFDLHdCQUF3QixJQUFDLEtBQUssRUFBRSxLQUFLLEdBQUk7WUFDYixDQUNoQyxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsRUFDMUIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUN5RDtJQUNqRSxPQUFPLENBQ0wsS0FBQyx1QkFBdUIsQ0FBQyxJQUFJLGlCQUNqQixzQkFBc0IsRUFDaEMsU0FBUyxFQUFFLEVBQUUsQ0FDWCwrREFBK0QsRUFDL0QsU0FBUyxDQUNWLEtBQ0csS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLEVBQzFCLFNBQVMsRUFDVCxHQUFHLEtBQUssRUFDeUQ7SUFDakUsT0FBTyxDQUNMLEtBQUMsdUJBQXVCLENBQUMsSUFBSSxpQkFDakIsc0JBQXNCLEVBQ2hDLFNBQVMsRUFBRSxFQUFFLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxLQUNoQyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELE1BQU0sMEJBQTBCLEdBQUcsR0FBRyxDQUNwQyxnYkFBZ2IsQ0FDamIsQ0FBQTtBQUVELFNBQVMscUJBQXFCLENBQUMsRUFDN0IsU0FBUyxFQUNULFFBQVEsRUFDUixHQUFHLEtBQUssRUFDOEI7SUFDdEMsT0FBTyxDQUNMLE1BQUMsdUJBQXVCLENBQUMsT0FBTyxpQkFDcEIseUJBQXlCLEVBQ25DLFNBQVMsRUFBRSxFQUFFLENBQUMsMEJBQTBCLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLEtBQzNELEtBQUssYUFFUixRQUFRLEVBQUUsR0FBRyxFQUNkLEtBQUMsZUFBZSxJQUNkLFNBQVMsRUFBQyxpS0FBaUssaUJBQy9KLE1BQU0sR0FDbEI7WUFDOEIsQ0FDbkMsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLHFCQUFxQixDQUFDLEVBQzdCLFNBQVMsRUFDVCxHQUFHLEtBQUssRUFDOEI7SUFDdEMsT0FBTyxDQUNMLEtBQUMsdUJBQXVCLENBQUMsT0FBTyxpQkFDcEIseUJBQXlCLEVBQ25DLFNBQVMsRUFBRSxFQUFFLENBQ1gsc25EQUFzbkQsRUFDdG5ELFNBQVMsQ0FDVixLQUNHLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyx3QkFBd0IsQ0FBQyxFQUNoQyxTQUFTLEVBQ1QsSUFBSSxHQUFHLFFBQVEsRUFDZixVQUFVLEdBQUcsQ0FBQyxFQUNkLEtBQUssR0FBRyxPQUFPLEVBQ2YsV0FBVyxHQUFHLENBQUMsRUFDZixHQUFHLEtBQUssRUFDaUM7SUFDekMsT0FBTyxDQUNMLEtBQUMsdUJBQXVCLENBQUMsTUFBTSxjQUM3QixLQUFDLHVCQUF1QixDQUFDLFVBQVUsSUFDakMsSUFBSSxFQUFFLElBQUksRUFDVixVQUFVLEVBQUUsVUFBVSxFQUN0QixLQUFLLEVBQUUsS0FBSyxFQUNaLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxFQUFFLENBQ1gsb1RBQW9ULEVBQ3BULFNBQVMsQ0FDVixLQUNHLEtBQUssWUFFVCxLQUFDLHVCQUF1QixDQUFDLEtBQUssSUFBQyxTQUFTLEVBQUMsK2RBQStkLFlBQ3RnQixLQUFDLHVCQUF1QixDQUFDLFFBQVEsSUFBQyxTQUFTLEVBQUMsb0NBQW9DLEdBQUcsR0FDckQsR0FDRyxHQUNOLENBQ2xDLENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxFQUMxQixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQzJCO0lBQ25DLE9BQU8sQ0FDTCxLQUFDLHVCQUF1QixDQUFDLElBQUksaUJBQ2pCLHNCQUFzQixFQUNoQyxTQUFTLEVBQUUsRUFBRSxDQUNYLDhXQUE4VyxFQUM5VyxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsdUJBQXVCLENBQUMsRUFDL0IsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUN5RDtJQUNqRSxPQUFPLENBQ0wsS0FBQyx1QkFBdUIsQ0FBQyxJQUFJLGlCQUNqQiwyQkFBMkIsRUFDckMsU0FBUyxFQUFFLEVBQUUsQ0FDWCw0TEFBNEwsRUFDNUwsU0FBUyxDQUNWLEtBQ0csS0FBSyxZQUVULGNBQUssU0FBUyxFQUFDLHdFQUF3RSxHQUFHLEdBQzdELENBQ2hDLENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUNMLGNBQWMsRUFDZCxxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQiwwQkFBMEIsRUFDMUIsd0JBQXdCLEdBQ3pCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOYXZpZ2F0aW9uTWVudSBhcyBOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZSB9IGZyb20gXCJAYmFzZS11aS9yZWFjdC9uYXZpZ2F0aW9uLW1lbnVcIlxuaW1wb3J0IHsgY3ZhIH0gZnJvbSBcImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eVwiXG5pbXBvcnQgeyBDaGV2cm9uRG93bkljb24gfSBmcm9tIFwibHVjaWRlLXJlYWN0XCJcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vdXRpbHMvc3R5bGUudHNcIlxuXG5mdW5jdGlvbiBOYXZpZ2F0aW9uTWVudSh7XG4gIGFsaWduID0gXCJzdGFydFwiLFxuICBjbGFzc05hbWUsXG4gIGNoaWxkcmVuLFxuICAuLi5wcm9wc1xufTogTmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuUm9vdC5Qcm9wcyAmXG4gIFBpY2s8TmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuUG9zaXRpb25lci5Qcm9wcywgXCJhbGlnblwiPikge1xuICByZXR1cm4gKFxuICAgIDxOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5Sb290XG4gICAgICBkYXRhLXNsb3Q9XCJuYXZpZ2F0aW9uLW1lbnVcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJncm91cC9uYXZpZ2F0aW9uLW1lbnUgcmVsYXRpdmUgZmxleCBtYXgtdy1tYXggZmxleC0xIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlclwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDxOYXZpZ2F0aW9uTWVudVBvc2l0aW9uZXIgYWxpZ249e2FsaWdufSAvPlxuICAgIDwvTmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuUm9vdD5cbiAgKVxufVxuXG5mdW5jdGlvbiBOYXZpZ2F0aW9uTWVudUxpc3Qoe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhSZWY8dHlwZW9mIE5hdmlnYXRpb25NZW51UHJpbWl0aXZlLkxpc3Q+KSB7XG4gIHJldHVybiAoXG4gICAgPE5hdmlnYXRpb25NZW51UHJpbWl0aXZlLkxpc3RcbiAgICAgIGRhdGEtc2xvdD1cIm5hdmlnYXRpb24tbWVudS1saXN0XCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZ3JvdXAgZmxleCBmbGV4LTEgbGlzdC1ub25lIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTmF2aWdhdGlvbk1lbnVJdGVtKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRoUmVmPHR5cGVvZiBOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5JdGVtPikge1xuICByZXR1cm4gKFxuICAgIDxOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5JdGVtXG4gICAgICBkYXRhLXNsb3Q9XCJuYXZpZ2F0aW9uLW1lbnUtaXRlbVwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwicmVsYXRpdmVcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmNvbnN0IG5hdmlnYXRpb25NZW51VHJpZ2dlclN0eWxlID0gY3ZhKFxuICBcImdyb3VwL25hdmlnYXRpb24tbWVudS10cmlnZ2VyIGlubGluZS1mbGV4IGgtOSB3LW1heCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1tZCBweC00IHB5LTIgdGV4dC1zbSBmb250LW1lZGl1bSB0cmFuc2l0aW9uLWFsbCBvdXRsaW5lLW5vbmUgaG92ZXI6YmctbXV0ZWQgZm9jdXM6YmctbXV0ZWQgZm9jdXMtdmlzaWJsZTpyaW5nLTMgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcvNTAgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLTEgZGlzYWJsZWQ6cG9pbnRlci1ldmVudHMtbm9uZSBkaXNhYmxlZDpvcGFjaXR5LTUwIGRhdGEtcG9wdXAtb3BlbjpiZy1tdXRlZC81MCBkYXRhLXBvcHVwLW9wZW46aG92ZXI6YmctbXV0ZWQgZGF0YS1vcGVuOmJnLW11dGVkLzUwIGRhdGEtb3Blbjpob3ZlcjpiZy1tdXRlZCBkYXRhLW9wZW46Zm9jdXM6YmctbXV0ZWRcIixcbilcblxuZnVuY3Rpb24gTmF2aWdhdGlvbk1lbnVUcmlnZ2VyKHtcbiAgY2xhc3NOYW1lLFxuICBjaGlsZHJlbixcbiAgLi4ucHJvcHNcbn06IE5hdmlnYXRpb25NZW51UHJpbWl0aXZlLlRyaWdnZXIuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8TmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuVHJpZ2dlclxuICAgICAgZGF0YS1zbG90PVwibmF2aWdhdGlvbi1tZW51LXRyaWdnZXJcIlxuICAgICAgY2xhc3NOYW1lPXtjbihuYXZpZ2F0aW9uTWVudVRyaWdnZXJTdHlsZSgpLCBcImdyb3VwXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAge2NoaWxkcmVufXtcIiBcIn1cbiAgICAgIDxDaGV2cm9uRG93bkljb25cbiAgICAgICAgY2xhc3NOYW1lPVwicmVsYXRpdmUgdG9wLXB4IG1sLTEgc2l6ZS0zIHRyYW5zaXRpb24gZHVyYXRpb24tMzAwIGdyb3VwLWRhdGEtcG9wdXAtb3Blbi9uYXZpZ2F0aW9uLW1lbnUtdHJpZ2dlcjpyb3RhdGUtMTgwIGdyb3VwLWRhdGEtb3Blbi9uYXZpZ2F0aW9uLW1lbnUtdHJpZ2dlcjpyb3RhdGUtMTgwXCJcbiAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgIC8+XG4gICAgPC9OYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5UcmlnZ2VyPlxuICApXG59XG5cbmZ1bmN0aW9uIE5hdmlnYXRpb25NZW51Q29udGVudCh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IE5hdmlnYXRpb25NZW51UHJpbWl0aXZlLkNvbnRlbnQuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8TmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuQ29udGVudFxuICAgICAgZGF0YS1zbG90PVwibmF2aWdhdGlvbi1tZW51LWNvbnRlbnRcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJkYXRhLWVuZGluZy1zdHlsZTpkYXRhLWFjdGl2YXRpb24tZGlyZWN0aW9uPWxlZnQ6dHJhbnNsYXRlLXgtWzUwJV0gZGF0YS1lbmRpbmctc3R5bGU6ZGF0YS1hY3RpdmF0aW9uLWRpcmVjdGlvbj1yaWdodDp0cmFuc2xhdGUteC1bLTUwJV0gZGF0YS1zdGFydGluZy1zdHlsZTpkYXRhLWFjdGl2YXRpb24tZGlyZWN0aW9uPWxlZnQ6dHJhbnNsYXRlLXgtWy01MCVdIGRhdGEtc3RhcnRpbmctc3R5bGU6ZGF0YS1hY3RpdmF0aW9uLWRpcmVjdGlvbj1yaWdodDp0cmFuc2xhdGUteC1bNTAlXSBoLWZ1bGwgdy1hdXRvIHAtMiBwci0yLjUgdHJhbnNpdGlvbi1bb3BhY2l0eSx0cmFuc2Zvcm0sdHJhbnNsYXRlXSBkdXJhdGlvbi1bMC4zNXNdIGVhc2UtW2N1YmljLWJlemllcigwLjIyLDEsMC4zNiwxKV0gZ3JvdXAtZGF0YS1bdmlld3BvcnQ9ZmFsc2VdL25hdmlnYXRpb24tbWVudTpyb3VuZGVkLW1kIGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6YmctcG9wb3ZlciBncm91cC1kYXRhLVt2aWV3cG9ydD1mYWxzZV0vbmF2aWdhdGlvbi1tZW51OnRleHQtcG9wb3Zlci1mb3JlZ3JvdW5kIGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6c2hhZG93IGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6cmluZy0xIGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6cmluZy1mb3JlZ3JvdW5kLzEwIGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6ZHVyYXRpb24tMzAwIGRhdGEtZW5kaW5nLXN0eWxlOm9wYWNpdHktMCBkYXRhLXN0YXJ0aW5nLXN0eWxlOm9wYWNpdHktMCBkYXRhLVttb3Rpb249ZnJvbS1lbmRdOnNsaWRlLWluLWZyb20tcmlnaHQtNTIgZGF0YS1bbW90aW9uPWZyb20tc3RhcnRdOnNsaWRlLWluLWZyb20tbGVmdC01MiBkYXRhLVttb3Rpb249dG8tZW5kXTpzbGlkZS1vdXQtdG8tcmlnaHQtNTIgZGF0YS1bbW90aW9uPXRvLXN0YXJ0XTpzbGlkZS1vdXQtdG8tbGVmdC01MiBkYXRhLVttb3Rpb25ePWZyb20tXTphbmltYXRlLWluIGRhdGEtW21vdGlvbl49ZnJvbS1dOmZhZGUtaW4gZGF0YS1bbW90aW9uXj10by1dOmFuaW1hdGUtb3V0IGRhdGEtW21vdGlvbl49dG8tXTpmYWRlLW91dCAqKjpkYXRhLVtzbG90PW5hdmlnYXRpb24tbWVudS1saW5rXTpmb2N1czpyaW5nLTAgKio6ZGF0YS1bc2xvdD1uYXZpZ2F0aW9uLW1lbnUtbGlua106Zm9jdXM6b3V0bGluZS1ub25lIGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6ZGF0YS1vcGVuOmFuaW1hdGUtaW4gZ3JvdXAtZGF0YS1bdmlld3BvcnQ9ZmFsc2VdL25hdmlnYXRpb24tbWVudTpkYXRhLW9wZW46ZmFkZS1pbi0wIGdyb3VwLWRhdGEtW3ZpZXdwb3J0PWZhbHNlXS9uYXZpZ2F0aW9uLW1lbnU6ZGF0YS1vcGVuOnpvb20taW4tOTUgZ3JvdXAtZGF0YS1bdmlld3BvcnQ9ZmFsc2VdL25hdmlnYXRpb24tbWVudTpkYXRhLWNsb3NlZDphbmltYXRlLW91dCBncm91cC1kYXRhLVt2aWV3cG9ydD1mYWxzZV0vbmF2aWdhdGlvbi1tZW51OmRhdGEtY2xvc2VkOmZhZGUtb3V0LTAgZ3JvdXAtZGF0YS1bdmlld3BvcnQ9ZmFsc2VdL25hdmlnYXRpb24tbWVudTpkYXRhLWNsb3NlZDp6b29tLW91dC05NVwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gTmF2aWdhdGlvbk1lbnVQb3NpdGlvbmVyKHtcbiAgY2xhc3NOYW1lLFxuICBzaWRlID0gXCJib3R0b21cIixcbiAgc2lkZU9mZnNldCA9IDgsXG4gIGFsaWduID0gXCJzdGFydFwiLFxuICBhbGlnbk9mZnNldCA9IDAsXG4gIC4uLnByb3BzXG59OiBOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5Qb3NpdGlvbmVyLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPE5hdmlnYXRpb25NZW51UHJpbWl0aXZlLlBvcnRhbD5cbiAgICAgIDxOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5Qb3NpdGlvbmVyXG4gICAgICAgIHNpZGU9e3NpZGV9XG4gICAgICAgIHNpZGVPZmZzZXQ9e3NpZGVPZmZzZXR9XG4gICAgICAgIGFsaWduPXthbGlnbn1cbiAgICAgICAgYWxpZ25PZmZzZXQ9e2FsaWduT2Zmc2V0fVxuICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgIFwiaXNvbGF0ZSB6LTUwIGgtKC0tcG9zaXRpb25lci1oZWlnaHQpIHctKC0tcG9zaXRpb25lci13aWR0aCkgbWF4LXctKC0tYXZhaWxhYmxlLXdpZHRoKSB0cmFuc2l0aW9uLVt0b3AsbGVmdCxyaWdodCxib3R0b21dIGR1cmF0aW9uLVswLjM1c10gZWFzZS1bY3ViaWMtYmV6aWVyKDAuMjIsMSwwLjM2LDEpXSBkYXRhLWluc3RhbnQ6dHJhbnNpdGlvbi1ub25lIGRhdGEtW3NpZGU9Ym90dG9tXTpiZWZvcmU6dG9wLVstMTBweF0gZGF0YS1bc2lkZT1ib3R0b21dOmJlZm9yZTpyaWdodC0wIGRhdGEtW3NpZGU9Ym90dG9tXTpiZWZvcmU6bGVmdC0wXCIsXG4gICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICApfVxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICA+XG4gICAgICAgIDxOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5Qb3B1cCBjbGFzc05hbWU9XCJkYXRhLVtlbmRpbmctc3R5bGVdOmVhc2luZy1bZWFzZV0geHM6dy0oLS1wb3B1cC13aWR0aCkgcmVsYXRpdmUgaC0oLS1wb3B1cC1oZWlnaHQpIHctKC0tcG9wdXAtd2lkdGgpIG9yaWdpbi0oLS10cmFuc2Zvcm0tb3JpZ2luKSByb3VuZGVkLWxnIGJnLXBvcG92ZXIgdGV4dC1wb3BvdmVyLWZvcmVncm91bmQgc2hhZG93IHJpbmctMSByaW5nLWZvcmVncm91bmQvMTAgdHJhbnNpdGlvbi1bb3BhY2l0eSx0cmFuc2Zvcm0sd2lkdGgsaGVpZ2h0LHNjYWxlLHRyYW5zbGF0ZV0gZHVyYXRpb24tWzAuMzVzXSBlYXNlLVtjdWJpYy1iZXppZXIoMC4yMiwxLDAuMzYsMSldIG91dGxpbmUtbm9uZSBkYXRhLWVuZGluZy1zdHlsZTpzY2FsZS05MCBkYXRhLWVuZGluZy1zdHlsZTpvcGFjaXR5LTAgZGF0YS1lbmRpbmctc3R5bGU6ZHVyYXRpb24tMTUwIGRhdGEtc3RhcnRpbmctc3R5bGU6c2NhbGUtOTAgZGF0YS1zdGFydGluZy1zdHlsZTpvcGFjaXR5LTBcIj5cbiAgICAgICAgICA8TmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuVmlld3BvcnQgY2xhc3NOYW1lPVwicmVsYXRpdmUgc2l6ZS1mdWxsIG92ZXJmbG93LWhpZGRlblwiIC8+XG4gICAgICAgIDwvTmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuUG9wdXA+XG4gICAgICA8L05hdmlnYXRpb25NZW51UHJpbWl0aXZlLlBvc2l0aW9uZXI+XG4gICAgPC9OYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5Qb3J0YWw+XG4gIClcbn1cblxuZnVuY3Rpb24gTmF2aWdhdGlvbk1lbnVMaW5rKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogTmF2aWdhdGlvbk1lbnVQcmltaXRpdmUuTGluay5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5MaW5rXG4gICAgICBkYXRhLXNsb3Q9XCJuYXZpZ2F0aW9uLW1lbnUtbGlua1wiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgcm91bmRlZC1tZCBwLTIgdGV4dC1zbSB0cmFuc2l0aW9uLWFsbCBvdXRsaW5lLW5vbmUgaG92ZXI6YmctbXV0ZWQgZm9jdXM6YmctbXV0ZWQgZm9jdXMtdmlzaWJsZTpyaW5nLTMgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcvNTAgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLTEgaW4tZGF0YS1bc2xvdD1uYXZpZ2F0aW9uLW1lbnUtY29udGVudF06cm91bmRlZC1zbSBkYXRhLVthY3RpdmU9dHJ1ZV06YmctbXV0ZWQvNTAgZGF0YS1bYWN0aXZlPXRydWVdOmhvdmVyOmJnLW11dGVkIGRhdGEtW2FjdGl2ZT10cnVlXTpmb2N1czpiZy1tdXRlZCBbJl9zdmc6bm90KFtjbGFzcyo9J3NpemUtJ10pXTpzaXplLTRcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIE5hdmlnYXRpb25NZW51SW5kaWNhdG9yKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRoUmVmPHR5cGVvZiBOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5JY29uPikge1xuICByZXR1cm4gKFxuICAgIDxOYXZpZ2F0aW9uTWVudVByaW1pdGl2ZS5JY29uXG4gICAgICBkYXRhLXNsb3Q9XCJuYXZpZ2F0aW9uLW1lbnUtaW5kaWNhdG9yXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwidG9wLWZ1bGwgei0xIGZsZXggaC0xLjUgaXRlbXMtZW5kIGp1c3RpZnktY2VudGVyIG92ZXJmbG93LWhpZGRlbiBkYXRhLVtzdGF0ZT1oaWRkZW5dOmFuaW1hdGUtb3V0IGRhdGEtW3N0YXRlPWhpZGRlbl06ZmFkZS1vdXQgZGF0YS1bc3RhdGU9dmlzaWJsZV06YW5pbWF0ZS1pbiBkYXRhLVtzdGF0ZT12aXNpYmxlXTpmYWRlLWluXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyZWxhdGl2ZSB0b3AtWzYwJV0gaC0yIHctMiByb3RhdGUtNDUgcm91bmRlZC10bC1zbSBiZy1ib3JkZXIgc2hhZG93LW1kXCIgLz5cbiAgICA8L05hdmlnYXRpb25NZW51UHJpbWl0aXZlLkljb24+XG4gIClcbn1cblxuZXhwb3J0IHtcbiAgTmF2aWdhdGlvbk1lbnUsXG4gIE5hdmlnYXRpb25NZW51Q29udGVudCxcbiAgTmF2aWdhdGlvbk1lbnVJbmRpY2F0b3IsXG4gIE5hdmlnYXRpb25NZW51SXRlbSxcbiAgTmF2aWdhdGlvbk1lbnVMaW5rLFxuICBOYXZpZ2F0aW9uTWVudUxpc3QsXG4gIE5hdmlnYXRpb25NZW51VHJpZ2dlcixcbiAgbmF2aWdhdGlvbk1lbnVUcmlnZ2VyU3R5bGUsXG4gIE5hdmlnYXRpb25NZW51UG9zaXRpb25lcixcbn1cbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import * as React from "react";
2
+ import { Button } from "./button.tsx";
3
+ declare function Pagination({ className, ...props }: React.ComponentProps<"nav">): import("react/jsx-runtime").JSX.Element;
4
+ declare function PaginationContent({ className, ...props }: React.ComponentProps<"ul">): import("react/jsx-runtime").JSX.Element;
5
+ declare function PaginationItem({ ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
6
+ type PaginationLinkProps = {
7
+ isActive?: boolean;
8
+ } & Pick<React.ComponentProps<typeof Button>, "size"> & React.ComponentProps<"a">;
9
+ declare function PaginationLink({ className, isActive, size, ...props }: PaginationLinkProps): import("react/jsx-runtime").JSX.Element;
10
+ declare function PaginationPrevious({ className, text, ...props }: React.ComponentProps<typeof PaginationLink> & {
11
+ text?: string;
12
+ }): import("react/jsx-runtime").JSX.Element;
13
+ declare function PaginationNext({ className, text, ...props }: React.ComponentProps<typeof PaginationLink> & {
14
+ text?: string;
15
+ }): import("react/jsx-runtime").JSX.Element;
16
+ declare function PaginationEllipsis({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
17
+ export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, };
@@ -0,0 +1,33 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ChevronLeftIcon, ChevronRightIcon, MoreHorizontalIcon, } from "lucide-react";
3
+ import { cn } from "../utils/style.js";
4
+ import { Button } from "./button.js";
5
+ function Pagination({ className, ...props }) {
6
+ return (_jsx("nav", { role: "navigation", "aria-label": "pagination", "data-slot": "pagination", className: cn("mx-auto flex w-full justify-center", className), ...props }));
7
+ }
8
+ function PaginationContent({ className, ...props }) {
9
+ return (_jsx("ul", { "data-slot": "pagination-content", className: cn("flex items-center gap-1", className), ...props }));
10
+ }
11
+ function PaginationItem({ ...props }) {
12
+ return _jsx("li", { "data-slot": "pagination-item", ...props });
13
+ }
14
+ function PaginationLink({ className, isActive, size = "icon", ...props }) {
15
+ return (_jsx(Button, { variant: isActive ? "outline" : "ghost", size: size, className: cn(className), nativeButton: false, render: _jsx("a", { "aria-current": isActive ? "page" : undefined, "data-slot": "pagination-link", "data-active": isActive, ...props }) }));
16
+ }
17
+ function PaginationPrevious({ className, text = "Previous", ...props }) {
18
+ return (_jsxs(PaginationLink, { "aria-label": "Go to previous page", size: "default", className: cn("pl-2!", className), ...props, children: [
19
+ _jsx(ChevronLeftIcon, { "data-icon": "inline-start", className: "cn-rtl-flip" }), _jsx("span", { className: "hidden sm:block", children: text })
20
+ ] }));
21
+ }
22
+ function PaginationNext({ className, text = "Next", ...props }) {
23
+ return (_jsxs(PaginationLink, { "aria-label": "Go to next page", size: "default", className: cn("pr-2!", className), ...props, children: [
24
+ _jsx("span", { className: "hidden sm:block", children: text }), _jsx(ChevronRightIcon, { "data-icon": "inline-end", className: "cn-rtl-flip" })
25
+ ] }));
26
+ }
27
+ function PaginationEllipsis({ className, ...props }) {
28
+ return (_jsxs("span", { "aria-hidden": true, "data-slot": "pagination-ellipsis", className: cn("flex size-9 items-center justify-center [&_svg:not([class*='size-'])]:size-4", className), ...props, children: [
29
+ _jsx(MoreHorizontalIcon, {}), _jsx("span", { className: "sr-only", children: "More pages" })
30
+ ] }));
31
+ }
32
+ export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, };
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NvdXJjZS9lbGVtZW50cy9wYWdpbmF0aW9uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNMLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsa0JBQWtCLEdBQ25CLE1BQU0sY0FBYyxDQUFBO0FBRXJCLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYyxDQUFBO0FBRXJDLFNBQVMsVUFBVSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUN0RSxPQUFPLENBQ0wsY0FDRSxJQUFJLEVBQUMsWUFBWSxnQkFDTixZQUFZLGVBQ2IsWUFBWSxFQUN0QixTQUFTLEVBQUUsRUFBRSxDQUFDLG9DQUFvQyxFQUFFLFNBQVMsQ0FBQyxLQUMxRCxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsaUJBQWlCLENBQUMsRUFDekIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUNtQjtJQUMzQixPQUFPLENBQ0wsMEJBQ1ksb0JBQW9CLEVBQzlCLFNBQVMsRUFBRSxFQUFFLENBQUMseUJBQXlCLEVBQUUsU0FBUyxDQUFDLEtBQy9DLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBOEI7SUFDOUQsT0FBTywwQkFBYyxpQkFBaUIsS0FBSyxLQUFLLEdBQUksQ0FBQTtBQUN0RCxDQUFDO0FBT0QsU0FBUyxjQUFjLENBQUMsRUFDdEIsU0FBUyxFQUNULFFBQVEsRUFDUixJQUFJLEdBQUcsTUFBTSxFQUNiLEdBQUcsS0FBSyxFQUNZO0lBQ3BCLE9BQU8sQ0FDTCxLQUFDLE1BQU0sSUFDTCxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFDdkMsSUFBSSxFQUFFLElBQUksRUFDVixTQUFTLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUN4QixZQUFZLEVBQUUsS0FBSyxFQUNuQixNQUFNLEVBQ0osNEJBQ2dCLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLGVBQ2pDLGlCQUFpQixpQkFDZCxRQUFRLEtBQ2pCLEtBQUssR0FDVCxHQUVKLENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLEVBQzFCLFNBQVMsRUFDVCxJQUFJLEdBQUcsVUFBVSxFQUNqQixHQUFHLEtBQUssRUFDd0Q7SUFDaEUsT0FBTyxDQUNMLE1BQUMsY0FBYyxrQkFDRixxQkFBcUIsRUFDaEMsSUFBSSxFQUFDLFNBQVMsRUFDZCxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsS0FDN0IsS0FBSztZQUVULEtBQUMsZUFBZSxpQkFBVyxjQUFjLEVBQUMsU0FBUyxFQUFDLGFBQWEsR0FBRyxFQUNwRSxlQUFNLFNBQVMsRUFBQyxpQkFBaUIsWUFBRSxJQUFJLEdBQVE7WUFDaEMsQ0FDbEIsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxFQUN0QixTQUFTLEVBQ1QsSUFBSSxHQUFHLE1BQU0sRUFDYixHQUFHLEtBQUssRUFDd0Q7SUFDaEUsT0FBTyxDQUNMLE1BQUMsY0FBYyxrQkFDRixpQkFBaUIsRUFDNUIsSUFBSSxFQUFDLFNBQVMsRUFDZCxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsS0FDN0IsS0FBSztZQUVULGVBQU0sU0FBUyxFQUFDLGlCQUFpQixZQUFFLElBQUksR0FBUSxFQUMvQyxLQUFDLGdCQUFnQixpQkFBVyxZQUFZLEVBQUMsU0FBUyxFQUFDLGFBQWEsR0FBRztZQUNwRCxDQUNsQixDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsRUFDMUIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUNxQjtJQUM3QixPQUFPLENBQ0wsa0RBRVkscUJBQXFCLEVBQy9CLFNBQVMsRUFBRSxFQUFFLENBQ1gsOEVBQThFLEVBQzlFLFNBQVMsQ0FDVixLQUNHLEtBQUs7WUFFVCxLQUFDLGtCQUFrQixLQUFHLEVBQ3RCLGVBQU0sU0FBUyxFQUFDLFNBQVMsMkJBQWtCO1lBQ3RDLENBQ1IsQ0FBQTtBQUNILENBQUM7QUFFRCxPQUFPLEVBQ0wsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLGNBQWMsRUFDZCxjQUFjLEVBQ2Qsa0JBQWtCLEdBQ25CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IHtcbiAgQ2hldnJvbkxlZnRJY29uLFxuICBDaGV2cm9uUmlnaHRJY29uLFxuICBNb3JlSG9yaXpvbnRhbEljb24sXG59IGZyb20gXCJsdWNpZGUtcmVhY3RcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tIFwiLi9idXR0b24udHN4XCJcblxuZnVuY3Rpb24gUGFnaW5hdGlvbih7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJuYXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8bmF2XG4gICAgICByb2xlPVwibmF2aWdhdGlvblwiXG4gICAgICBhcmlhLWxhYmVsPVwicGFnaW5hdGlvblwiXG4gICAgICBkYXRhLXNsb3Q9XCJwYWdpbmF0aW9uXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXCJteC1hdXRvIGZsZXggdy1mdWxsIGp1c3RpZnktY2VudGVyXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBQYWdpbmF0aW9uQ29udGVudCh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwidWxcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8dWxcbiAgICAgIGRhdGEtc2xvdD1cInBhZ2luYXRpb24tY29udGVudFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTFcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIFBhZ2luYXRpb25JdGVtKHsgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJsaVwiPikge1xuICByZXR1cm4gPGxpIGRhdGEtc2xvdD1cInBhZ2luYXRpb24taXRlbVwiIHsuLi5wcm9wc30gLz5cbn1cblxudHlwZSBQYWdpbmF0aW9uTGlua1Byb3BzID0ge1xuICBpc0FjdGl2ZT86IGJvb2xlYW5cbn0gJiBQaWNrPFJlYWN0LkNvbXBvbmVudFByb3BzPHR5cGVvZiBCdXR0b24+LCBcInNpemVcIj4gJlxuICBSZWFjdC5Db21wb25lbnRQcm9wczxcImFcIj5cblxuZnVuY3Rpb24gUGFnaW5hdGlvbkxpbmsoe1xuICBjbGFzc05hbWUsXG4gIGlzQWN0aXZlLFxuICBzaXplID0gXCJpY29uXCIsXG4gIC4uLnByb3BzXG59OiBQYWdpbmF0aW9uTGlua1Byb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPEJ1dHRvblxuICAgICAgdmFyaWFudD17aXNBY3RpdmUgPyBcIm91dGxpbmVcIiA6IFwiZ2hvc3RcIn1cbiAgICAgIHNpemU9e3NpemV9XG4gICAgICBjbGFzc05hbWU9e2NuKGNsYXNzTmFtZSl9XG4gICAgICBuYXRpdmVCdXR0b249e2ZhbHNlfVxuICAgICAgcmVuZGVyPXtcbiAgICAgICAgPGFcbiAgICAgICAgICBhcmlhLWN1cnJlbnQ9e2lzQWN0aXZlID8gXCJwYWdlXCIgOiB1bmRlZmluZWR9XG4gICAgICAgICAgZGF0YS1zbG90PVwicGFnaW5hdGlvbi1saW5rXCJcbiAgICAgICAgICBkYXRhLWFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAvPlxuICAgICAgfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gUGFnaW5hdGlvblByZXZpb3VzKHtcbiAgY2xhc3NOYW1lLFxuICB0ZXh0ID0gXCJQcmV2aW91c1wiLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIFBhZ2luYXRpb25MaW5rPiAmIHsgdGV4dD86IHN0cmluZyB9KSB7XG4gIHJldHVybiAoXG4gICAgPFBhZ2luYXRpb25MaW5rXG4gICAgICBhcmlhLWxhYmVsPVwiR28gdG8gcHJldmlvdXMgcGFnZVwiXG4gICAgICBzaXplPVwiZGVmYXVsdFwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwicGwtMiFcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICA8Q2hldnJvbkxlZnRJY29uIGRhdGEtaWNvbj1cImlubGluZS1zdGFydFwiIGNsYXNzTmFtZT1cImNuLXJ0bC1mbGlwXCIgLz5cbiAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImhpZGRlbiBzbTpibG9ja1wiPnt0ZXh0fTwvc3Bhbj5cbiAgICA8L1BhZ2luYXRpb25MaW5rPlxuICApXG59XG5cbmZ1bmN0aW9uIFBhZ2luYXRpb25OZXh0KHtcbiAgY2xhc3NOYW1lLFxuICB0ZXh0ID0gXCJOZXh0XCIsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczx0eXBlb2YgUGFnaW5hdGlvbkxpbms+ICYgeyB0ZXh0Pzogc3RyaW5nIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8UGFnaW5hdGlvbkxpbmtcbiAgICAgIGFyaWEtbGFiZWw9XCJHbyB0byBuZXh0IHBhZ2VcIlxuICAgICAgc2l6ZT1cImRlZmF1bHRcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcInByLTIhXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAgPHNwYW4gY2xhc3NOYW1lPVwiaGlkZGVuIHNtOmJsb2NrXCI+e3RleHR9PC9zcGFuPlxuICAgICAgPENoZXZyb25SaWdodEljb24gZGF0YS1pY29uPVwiaW5saW5lLWVuZFwiIGNsYXNzTmFtZT1cImNuLXJ0bC1mbGlwXCIgLz5cbiAgICA8L1BhZ2luYXRpb25MaW5rPlxuICApXG59XG5cbmZ1bmN0aW9uIFBhZ2luYXRpb25FbGxpcHNpcyh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwic3BhblwiPikge1xuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICBhcmlhLWhpZGRlblxuICAgICAgZGF0YS1zbG90PVwicGFnaW5hdGlvbi1lbGxpcHNpc1wiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImZsZXggc2l6ZS05IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBbJl9zdmc6bm90KFtjbGFzcyo9J3NpemUtJ10pXTpzaXplLTRcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICA8TW9yZUhvcml6b250YWxJY29uIC8+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+TW9yZSBwYWdlczwvc3Bhbj5cbiAgICA8L3NwYW4+XG4gIClcbn1cblxuZXhwb3J0IHtcbiAgUGFnaW5hdGlvbixcbiAgUGFnaW5hdGlvbkNvbnRlbnQsXG4gIFBhZ2luYXRpb25FbGxpcHNpcyxcbiAgUGFnaW5hdGlvbkl0ZW0sXG4gIFBhZ2luYXRpb25MaW5rLFxuICBQYWdpbmF0aW9uTmV4dCxcbiAgUGFnaW5hdGlvblByZXZpb3VzLFxufVxuIl19
@@ -0,0 +1,9 @@
1
+ import * as React from "react";
2
+ import { Popover as PopoverPrimitive } from "@base-ui/react/popover";
3
+ declare function Popover({ ...props }: PopoverPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function PopoverTrigger({ ...props }: PopoverPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare function PopoverContent({ className, align, alignOffset, side, sideOffset, ...props }: PopoverPrimitive.Popup.Props & Pick<PopoverPrimitive.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset">): import("react/jsx-runtime").JSX.Element;
6
+ declare function PopoverHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
7
+ declare function PopoverTitle({ className, ...props }: PopoverPrimitive.Title.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function PopoverDescription({ className, ...props }: PopoverPrimitive.Description.Props): import("react/jsx-runtime").JSX.Element;
9
+ export { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, };
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Popover as PopoverPrimitive } from "@base-ui/react/popover";
3
+ import { cn } from "../utils/style.js";
4
+ function Popover({ ...props }) {
5
+ return _jsx(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
6
+ }
7
+ function PopoverTrigger({ ...props }) {
8
+ return _jsx(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
9
+ }
10
+ function PopoverContent({ className, align = "center", alignOffset = 0, side = "bottom", sideOffset = 4, ...props }) {
11
+ return (_jsx(PopoverPrimitive.Portal, { children: _jsx(PopoverPrimitive.Positioner, { align: align, alignOffset: alignOffset, side: side, sideOffset: sideOffset, className: "isolate z-50", children: _jsx(PopoverPrimitive.Popup, { "data-slot": "popover-content", className: cn("z-50 flex w-72 origin-(--transform-origin) flex-col gap-4 rounded-md bg-popover p-4 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className), ...props }) }) }));
12
+ }
13
+ function PopoverHeader({ className, ...props }) {
14
+ return (_jsx("div", { "data-slot": "popover-header", className: cn("flex flex-col gap-1 text-sm", className), ...props }));
15
+ }
16
+ function PopoverTitle({ className, ...props }) {
17
+ return (_jsx(PopoverPrimitive.Title, { "data-slot": "popover-title", className: cn("cn-font-heading font-medium", className), ...props }));
18
+ }
19
+ function PopoverDescription({ className, ...props }) {
20
+ return (_jsx(PopoverPrimitive.Description, { "data-slot": "popover-description", className: cn("text-muted-foreground", className), ...props }));
21
+ }
22
+ export { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NvdXJjZS9lbGVtZW50cy9wb3BvdmVyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRXBFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUV0QyxTQUFTLE9BQU8sQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUN4RCxPQUFPLEtBQUMsZ0JBQWdCLENBQUMsSUFBSSxpQkFBVyxTQUFTLEtBQUssS0FBSyxHQUFJLENBQUE7QUFDakUsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQWtDO0lBQ2xFLE9BQU8sS0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLGlCQUFXLGlCQUFpQixLQUFLLEtBQUssR0FBSSxDQUFBO0FBQzVFLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxFQUN0QixTQUFTLEVBQ1QsS0FBSyxHQUFHLFFBQVEsRUFDaEIsV0FBVyxHQUFHLENBQUMsRUFDZixJQUFJLEdBQUcsUUFBUSxFQUNmLFVBQVUsR0FBRyxDQUFDLEVBQ2QsR0FBRyxLQUFLLEVBS1A7SUFDRCxPQUFPLENBQ0wsS0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLGNBQ3RCLEtBQUMsZ0JBQWdCLENBQUMsVUFBVSxJQUMxQixLQUFLLEVBQUUsS0FBSyxFQUNaLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLElBQUksRUFBRSxJQUFJLEVBQ1YsVUFBVSxFQUFFLFVBQVUsRUFDdEIsU0FBUyxFQUFDLGNBQWMsWUFFeEIsS0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLGlCQUNYLGlCQUFpQixFQUMzQixTQUFTLEVBQUUsRUFBRSxDQUNYLGlqQkFBaWpCLEVBQ2pqQixTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsR0FDMEIsR0FDTixDQUMzQixDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUN6RSxPQUFPLENBQ0wsMkJBQ1ksZ0JBQWdCLEVBQzFCLFNBQVMsRUFBRSxFQUFFLENBQUMsNkJBQTZCLEVBQUUsU0FBUyxDQUFDLEtBQ25ELEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxLQUFLLEVBQWdDO0lBQ3pFLE9BQU8sQ0FDTCxLQUFDLGdCQUFnQixDQUFDLEtBQUssaUJBQ1gsZUFBZSxFQUN6QixTQUFTLEVBQUUsRUFBRSxDQUFDLDZCQUE2QixFQUFFLFNBQVMsQ0FBQyxLQUNuRCxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsRUFDMUIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUMyQjtJQUNuQyxPQUFPLENBQ0wsS0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLGlCQUNqQixxQkFBcUIsRUFDL0IsU0FBUyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxTQUFTLENBQUMsS0FDN0MsS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxPQUFPLEVBQ0wsT0FBTyxFQUNQLGNBQWMsRUFDZCxrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLFlBQVksRUFDWixjQUFjLEdBQ2YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgeyBQb3BvdmVyIGFzIFBvcG92ZXJQcmltaXRpdmUgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvcG9wb3ZlclwiXG5cbmltcG9ydCB7IGNuIH0gZnJvbSBcIi4uL3V0aWxzL3N0eWxlLnRzXCJcblxuZnVuY3Rpb24gUG9wb3Zlcih7IC4uLnByb3BzIH06IFBvcG92ZXJQcmltaXRpdmUuUm9vdC5Qcm9wcykge1xuICByZXR1cm4gPFBvcG92ZXJQcmltaXRpdmUuUm9vdCBkYXRhLXNsb3Q9XCJwb3BvdmVyXCIgey4uLnByb3BzfSAvPlxufVxuXG5mdW5jdGlvbiBQb3BvdmVyVHJpZ2dlcih7IC4uLnByb3BzIH06IFBvcG92ZXJQcmltaXRpdmUuVHJpZ2dlci5Qcm9wcykge1xuICByZXR1cm4gPFBvcG92ZXJQcmltaXRpdmUuVHJpZ2dlciBkYXRhLXNsb3Q9XCJwb3BvdmVyLXRyaWdnZXJcIiB7Li4ucHJvcHN9IC8+XG59XG5cbmZ1bmN0aW9uIFBvcG92ZXJDb250ZW50KHtcbiAgY2xhc3NOYW1lLFxuICBhbGlnbiA9IFwiY2VudGVyXCIsXG4gIGFsaWduT2Zmc2V0ID0gMCxcbiAgc2lkZSA9IFwiYm90dG9tXCIsXG4gIHNpZGVPZmZzZXQgPSA0LFxuICAuLi5wcm9wc1xufTogUG9wb3ZlclByaW1pdGl2ZS5Qb3B1cC5Qcm9wcyAmXG4gIFBpY2s8XG4gICAgUG9wb3ZlclByaW1pdGl2ZS5Qb3NpdGlvbmVyLlByb3BzLFxuICAgIFwiYWxpZ25cIiB8IFwiYWxpZ25PZmZzZXRcIiB8IFwic2lkZVwiIHwgXCJzaWRlT2Zmc2V0XCJcbiAgPikge1xuICByZXR1cm4gKFxuICAgIDxQb3BvdmVyUHJpbWl0aXZlLlBvcnRhbD5cbiAgICAgIDxQb3BvdmVyUHJpbWl0aXZlLlBvc2l0aW9uZXJcbiAgICAgICAgYWxpZ249e2FsaWdufVxuICAgICAgICBhbGlnbk9mZnNldD17YWxpZ25PZmZzZXR9XG4gICAgICAgIHNpZGU9e3NpZGV9XG4gICAgICAgIHNpZGVPZmZzZXQ9e3NpZGVPZmZzZXR9XG4gICAgICAgIGNsYXNzTmFtZT1cImlzb2xhdGUgei01MFwiXG4gICAgICA+XG4gICAgICAgIDxQb3BvdmVyUHJpbWl0aXZlLlBvcHVwXG4gICAgICAgICAgZGF0YS1zbG90PVwicG9wb3Zlci1jb250ZW50XCJcbiAgICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgICAgXCJ6LTUwIGZsZXggdy03MiBvcmlnaW4tKC0tdHJhbnNmb3JtLW9yaWdpbikgZmxleC1jb2wgZ2FwLTQgcm91bmRlZC1tZCBiZy1wb3BvdmVyIHAtNCB0ZXh0LXNtIHRleHQtcG9wb3Zlci1mb3JlZ3JvdW5kIHNoYWRvdy1tZCByaW5nLTEgcmluZy1mb3JlZ3JvdW5kLzEwIG91dGxpbmUtaGlkZGVuIGR1cmF0aW9uLTEwMCBkYXRhLVtzaWRlPWJvdHRvbV06c2xpZGUtaW4tZnJvbS10b3AtMiBkYXRhLVtzaWRlPWlubGluZS1lbmRdOnNsaWRlLWluLWZyb20tbGVmdC0yIGRhdGEtW3NpZGU9aW5saW5lLXN0YXJ0XTpzbGlkZS1pbi1mcm9tLXJpZ2h0LTIgZGF0YS1bc2lkZT1sZWZ0XTpzbGlkZS1pbi1mcm9tLXJpZ2h0LTIgZGF0YS1bc2lkZT1yaWdodF06c2xpZGUtaW4tZnJvbS1sZWZ0LTIgZGF0YS1bc2lkZT10b3BdOnNsaWRlLWluLWZyb20tYm90dG9tLTIgZGF0YS1vcGVuOmFuaW1hdGUtaW4gZGF0YS1vcGVuOmZhZGUtaW4tMCBkYXRhLW9wZW46em9vbS1pbi05NSBkYXRhLWNsb3NlZDphbmltYXRlLW91dCBkYXRhLWNsb3NlZDpmYWRlLW91dC0wIGRhdGEtY2xvc2VkOnpvb20tb3V0LTk1XCIsXG4gICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgKX1cbiAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIC8+XG4gICAgICA8L1BvcG92ZXJQcmltaXRpdmUuUG9zaXRpb25lcj5cbiAgICA8L1BvcG92ZXJQcmltaXRpdmUuUG9ydGFsPlxuICApXG59XG5cbmZ1bmN0aW9uIFBvcG92ZXJIZWFkZXIoeyBjbGFzc05hbWUsIC4uLnByb3BzIH06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwiZGl2XCI+KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS1zbG90PVwicG9wb3Zlci1oZWFkZXJcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcImZsZXggZmxleC1jb2wgZ2FwLTEgdGV4dC1zbVwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gUG9wb3ZlclRpdGxlKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBQb3BvdmVyUHJpbWl0aXZlLlRpdGxlLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPFBvcG92ZXJQcmltaXRpdmUuVGl0bGVcbiAgICAgIGRhdGEtc2xvdD1cInBvcG92ZXItdGl0bGVcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcImNuLWZvbnQtaGVhZGluZyBmb250LW1lZGl1bVwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gUG9wb3ZlckRlc2NyaXB0aW9uKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUG9wb3ZlclByaW1pdGl2ZS5EZXNjcmlwdGlvbi5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxQb3BvdmVyUHJpbWl0aXZlLkRlc2NyaXB0aW9uXG4gICAgICBkYXRhLXNsb3Q9XCJwb3BvdmVyLWRlc2NyaXB0aW9uXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXCJ0ZXh0LW11dGVkLWZvcmVncm91bmRcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmV4cG9ydCB7XG4gIFBvcG92ZXIsXG4gIFBvcG92ZXJDb250ZW50LFxuICBQb3BvdmVyRGVzY3JpcHRpb24sXG4gIFBvcG92ZXJIZWFkZXIsXG4gIFBvcG92ZXJUaXRsZSxcbiAgUG9wb3ZlclRyaWdnZXIsXG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import { Progress as ProgressPrimitive } from "@base-ui/react/progress";
2
+ declare function Progress({ className, children, value, ...props }: ProgressPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
+ declare function ProgressTrack({ className, ...props }: ProgressPrimitive.Track.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function ProgressIndicator({ className, ...props }: ProgressPrimitive.Indicator.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare function ProgressLabel({ className, ...props }: ProgressPrimitive.Label.Props): import("react/jsx-runtime").JSX.Element;
6
+ declare function ProgressValue({ className, ...props }: ProgressPrimitive.Value.Props): import("react/jsx-runtime").JSX.Element;
7
+ export { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue, };
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Progress as ProgressPrimitive } from "@base-ui/react/progress";
3
+ import { cn } from "../utils/style.js";
4
+ function Progress({ className, children, value, ...props }) {
5
+ return (_jsxs(ProgressPrimitive.Root, { value: value, "data-slot": "progress", className: cn("flex flex-wrap gap-3", className), ...props, children: [children, _jsx(ProgressTrack, { children: _jsx(ProgressIndicator, {}) })
6
+ ] }));
7
+ }
8
+ function ProgressTrack({ className, ...props }) {
9
+ return (_jsx(ProgressPrimitive.Track, { className: cn("relative flex h-1.5 w-full items-center overflow-x-hidden rounded-full bg-muted", className), "data-slot": "progress-track", ...props }));
10
+ }
11
+ function ProgressIndicator({ className, ...props }) {
12
+ return (_jsx(ProgressPrimitive.Indicator, { "data-slot": "progress-indicator", className: cn("h-full bg-primary transition-all", className), ...props }));
13
+ }
14
+ function ProgressLabel({ className, ...props }) {
15
+ return (_jsx(ProgressPrimitive.Label, { className: cn("text-sm font-medium", className), "data-slot": "progress-label", ...props }));
16
+ }
17
+ function ProgressValue({ className, ...props }) {
18
+ return (_jsx(ProgressPrimitive.Value, { className: cn("ml-auto text-sm text-muted-foreground tabular-nums", className), "data-slot": "progress-value", ...props }));
19
+ }
20
+ export { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue, };
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZWxlbWVudHMvcHJvZ3Jlc3MudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxJQUFJLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFFdkUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXRDLFNBQVMsUUFBUSxDQUFDLEVBQ2hCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEdBQUcsS0FBSyxFQUNxQjtJQUM3QixPQUFPLENBQ0wsTUFBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQ3JCLEtBQUssRUFBRSxLQUFLLGVBQ0YsVUFBVSxFQUNwQixTQUFTLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixFQUFFLFNBQVMsQ0FBQyxLQUM1QyxLQUFLLGFBRVIsUUFBUSxFQUNULEtBQUMsYUFBYSxjQUNaLEtBQUMsaUJBQWlCLEtBQUcsR0FDUDtZQUNPLENBQzFCLENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxhQUFhLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxLQUFLLEVBQWlDO0lBQzNFLE9BQU8sQ0FDTCxLQUFDLGlCQUFpQixDQUFDLEtBQUssSUFDdEIsU0FBUyxFQUFFLEVBQUUsQ0FDWCxpRkFBaUYsRUFDakYsU0FBUyxDQUNWLGVBQ1MsZ0JBQWdCLEtBQ3RCLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxFQUN6QixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQzBCO0lBQ2xDLE9BQU8sQ0FDTCxLQUFDLGlCQUFpQixDQUFDLFNBQVMsaUJBQ2hCLG9CQUFvQixFQUM5QixTQUFTLEVBQUUsRUFBRSxDQUFDLGtDQUFrQyxFQUFFLFNBQVMsQ0FBQyxLQUN4RCxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUFpQztJQUMzRSxPQUFPLENBQ0wsS0FBQyxpQkFBaUIsQ0FBQyxLQUFLLElBQ3RCLFNBQVMsRUFBRSxFQUFFLENBQUMscUJBQXFCLEVBQUUsU0FBUyxDQUFDLGVBQ3JDLGdCQUFnQixLQUN0QixLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUFpQztJQUMzRSxPQUFPLENBQ0wsS0FBQyxpQkFBaUIsQ0FBQyxLQUFLLElBQ3RCLFNBQVMsRUFBRSxFQUFFLENBQ1gsb0RBQW9ELEVBQ3BELFNBQVMsQ0FDVixlQUNTLGdCQUFnQixLQUN0QixLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELE9BQU8sRUFDTCxRQUFRLEVBQ1IsYUFBYSxFQUNiLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsYUFBYSxHQUNkLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9ncmVzcyBhcyBQcm9ncmVzc1ByaW1pdGl2ZSB9IGZyb20gXCJAYmFzZS11aS9yZWFjdC9wcm9ncmVzc1wiXG5cbmltcG9ydCB7IGNuIH0gZnJvbSBcIi4uL3V0aWxzL3N0eWxlLnRzXCJcblxuZnVuY3Rpb24gUHJvZ3Jlc3Moe1xuICBjbGFzc05hbWUsXG4gIGNoaWxkcmVuLFxuICB2YWx1ZSxcbiAgLi4ucHJvcHNcbn06IFByb2dyZXNzUHJpbWl0aXZlLlJvb3QuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8UHJvZ3Jlc3NQcmltaXRpdmUuUm9vdFxuICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgZGF0YS1zbG90PVwicHJvZ3Jlc3NcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcImZsZXggZmxleC13cmFwIGdhcC0zXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgICAgPFByb2dyZXNzVHJhY2s+XG4gICAgICAgIDxQcm9ncmVzc0luZGljYXRvciAvPlxuICAgICAgPC9Qcm9ncmVzc1RyYWNrPlxuICAgIDwvUHJvZ3Jlc3NQcmltaXRpdmUuUm9vdD5cbiAgKVxufVxuXG5mdW5jdGlvbiBQcm9ncmVzc1RyYWNrKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBQcm9ncmVzc1ByaW1pdGl2ZS5UcmFjay5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxQcm9ncmVzc1ByaW1pdGl2ZS5UcmFja1xuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJyZWxhdGl2ZSBmbGV4IGgtMS41IHctZnVsbCBpdGVtcy1jZW50ZXIgb3ZlcmZsb3cteC1oaWRkZW4gcm91bmRlZC1mdWxsIGJnLW11dGVkXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICBkYXRhLXNsb3Q9XCJwcm9ncmVzcy10cmFja1wiXG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBQcm9ncmVzc0luZGljYXRvcih7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFByb2dyZXNzUHJpbWl0aXZlLkluZGljYXRvci5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxQcm9ncmVzc1ByaW1pdGl2ZS5JbmRpY2F0b3JcbiAgICAgIGRhdGEtc2xvdD1cInByb2dyZXNzLWluZGljYXRvclwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwiaC1mdWxsIGJnLXByaW1hcnkgdHJhbnNpdGlvbi1hbGxcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIFByb2dyZXNzTGFiZWwoeyBjbGFzc05hbWUsIC4uLnByb3BzIH06IFByb2dyZXNzUHJpbWl0aXZlLkxhYmVsLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPFByb2dyZXNzUHJpbWl0aXZlLkxhYmVsXG4gICAgICBjbGFzc05hbWU9e2NuKFwidGV4dC1zbSBmb250LW1lZGl1bVwiLCBjbGFzc05hbWUpfVxuICAgICAgZGF0YS1zbG90PVwicHJvZ3Jlc3MtbGFiZWxcIlxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gUHJvZ3Jlc3NWYWx1ZSh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUHJvZ3Jlc3NQcmltaXRpdmUuVmFsdWUuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8UHJvZ3Jlc3NQcmltaXRpdmUuVmFsdWVcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwibWwtYXV0byB0ZXh0LXNtIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCB0YWJ1bGFyLW51bXNcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIGRhdGEtc2xvdD1cInByb2dyZXNzLXZhbHVlXCJcbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmV4cG9ydCB7XG4gIFByb2dyZXNzLFxuICBQcm9ncmVzc1RyYWNrLFxuICBQcm9ncmVzc0luZGljYXRvcixcbiAgUHJvZ3Jlc3NMYWJlbCxcbiAgUHJvZ3Jlc3NWYWx1ZSxcbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import { Radio as RadioPrimitive } from "@base-ui/react/radio";
2
+ import { RadioGroup as RadioGroupPrimitive } from "@base-ui/react/radio-group";
3
+ declare function RadioGroup({ className, ...props }: RadioGroupPrimitive.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function RadioGroupItem({ className, ...props }: RadioPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
5
+ export { RadioGroup, RadioGroupItem };