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,192 @@
1
+ import { execSync } from "node:child_process";
2
+ import { basename, relative, resolve } from "node:path";
3
+ import { defineCollection, defineConfig } from "@content-collections/core";
4
+ import { compileMDX } from "@content-collections/mdx";
5
+ import rehypeShiki from "@shikijs/rehype";
6
+ import { transformerTwoslash } from "@shikijs/twoslash";
7
+ import rehypeKatex from "rehype-katex";
8
+ import rehypeSlug from "rehype-slug";
9
+ import remarkDefinitionList from "remark-definition-list";
10
+ import remarkDirective from "remark-directive";
11
+ import remarkGemoji from "remark-gemoji";
12
+ import remarkGfm from "remark-gfm";
13
+ import remarkMath from "remark-math";
14
+ import { loadConfig } from "./actions/config/load.js";
15
+ import { buildChangelog, cacheIncludeGlob } from "./actions/changelog/build.js";
16
+ import { Article } from "./models/article.js";
17
+ import { pickDefaultIcon } from "./helpers/article-icon.js";
18
+ import slugify from "@sindresorhus/slugify";
19
+ import remarkCustomHeadingId from "./plugins/remark-custom-heading-id.js";
20
+ import { remarkCallout } from "./plugins/remark-callout.js";
21
+ import { remarkCard } from "./plugins/remark-card.js";
22
+ import { remarkColumns } from "./plugins/remark-columns.js";
23
+ import { remarkTab } from "./plugins/remark-tab.js";
24
+ import { remarkBadge } from "./plugins/remark-badge.js";
25
+ import { remarkButton } from "./plugins/remark-button.js";
26
+ import { remarkAbbr } from "./plugins/remark-abbr.js";
27
+ import { remarkDeflist } from "./plugins/remark-deflist.js";
28
+ import { remarkDetails } from "./plugins/remark-details.js";
29
+ import { remarkFiletree } from "./plugins/remark-filetree.js";
30
+ import { remarkIcon } from "./plugins/remark-icon.js";
31
+ import { remarkCodeTabs } from "./plugins/remark-code-tabs.js";
32
+ import { remarkGithubCallout } from "./plugins/remark-github-callout.js";
33
+ import { remarkImage } from "./plugins/remark-image.js";
34
+ import { remarkMedia } from "./plugins/remark-media.js";
35
+ import { remarkAnsi } from "./plugins/remark-ansi.js";
36
+ import { remarkMermaid } from "./plugins/remark-mermaid.js";
37
+ import { remarkToc } from "./plugins/remark-toc.js";
38
+ import { remarkNpm } from "./plugins/remark-npm.js";
39
+ import { remarkSteps } from "./plugins/remark-steps.js";
40
+ import { transformerLineHighlight, transformerNotations, } from "./plugins/shiki-line-highlight.js";
41
+ import { rehypeInlineCode } from "./plugins/rehype-inline-code.js";
42
+ import { rehypeTaskListA11y } from "./plugins/rehype-task-list-a11y.js";
43
+ import { transformerIcon } from "./plugins/shiki-icon.js";
44
+ import { resolveAssetPath } from "./helpers/resolve-asset-path.js";
45
+ import { resolveIncludes } from "./helpers/resolve-includes.js";
46
+ import { extractSearchText } from "./helpers/search-text.js";
47
+ import { extractToc } from "./helpers/toc.js";
48
+ const config = await loadConfig();
49
+ const changelogSections = config.sections?.filter(s => s.type === "changelog") ?? [];
50
+ for (const section of changelogSections) {
51
+ await buildChangelog(section, config);
52
+ }
53
+ const configInclude = Array.isArray(config.include)
54
+ ? config.include
55
+ : [config.include];
56
+ const include = changelogSections.length
57
+ ? [...configInclude, cacheIncludeGlob()]
58
+ : configInclude;
59
+ // content-collections compiles this file to .content-collections/cache/;
60
+ // going up 2 levels reconstructs the baseDirectory it uses for path resolution
61
+ const baseDir = resolve(import.meta.dirname, "../..");
62
+ const directory = relative(baseDir, config.root) || ".";
63
+ function toPath(filePath) {
64
+ const name = basename(filePath).replace(/\.\w+$/, "");
65
+ return slugify(name);
66
+ }
67
+ function getLastUpdated(filePath) {
68
+ try {
69
+ const timestamp = execSync(`git log -1 --format=%cI -- "${filePath}"`, {
70
+ cwd: config.root,
71
+ encoding: "utf-8",
72
+ }).trim();
73
+ return timestamp || undefined;
74
+ }
75
+ catch {
76
+ return undefined;
77
+ }
78
+ }
79
+ function extractTitle(content, path) {
80
+ const match = /^#\s+(.+)$/m.exec(content);
81
+ if (match)
82
+ return match[1];
83
+ return (path
84
+ .split("/")
85
+ .pop()
86
+ ?.replace(/\.\w+$/, "") ?? path);
87
+ }
88
+ const articles = defineCollection({
89
+ name: "articles",
90
+ directory,
91
+ include,
92
+ exclude: config.exclude,
93
+ schema: Article,
94
+ transform: async (document, context) => {
95
+ const patch = config.patches?.find(p => p.file === document._meta.filePath);
96
+ const doc = patch ? { ...document, ...patch.article } : document;
97
+ const filePath = resolve(config.root, doc._meta.filePath);
98
+ const content = resolveIncludes(doc.content, filePath);
99
+ const title = doc.title ?? extractTitle(content, doc._meta.path);
100
+ const icon = doc.icon ?? pickDefaultIcon(doc._meta.path);
101
+ const path = doc.path ?? toPath(doc._meta.filePath);
102
+ const mdx = await compileMDX(context, { ...doc, content }, {
103
+ remarkPlugins: [
104
+ remarkGfm,
105
+ remarkGemoji,
106
+ remarkDefinitionList,
107
+ remarkDeflist,
108
+ remarkMath,
109
+ remarkDirective,
110
+ remarkCallout,
111
+ remarkCard,
112
+ remarkColumns,
113
+ remarkTab,
114
+ remarkDetails,
115
+ remarkFiletree,
116
+ remarkIcon,
117
+ remarkBadge,
118
+ remarkButton,
119
+ remarkAbbr,
120
+ remarkGithubCallout,
121
+ [
122
+ remarkImage,
123
+ {
124
+ filePath: resolve(config.root, doc._meta.filePath),
125
+ root: config.root,
126
+ },
127
+ ],
128
+ remarkAnsi,
129
+ remarkMermaid,
130
+ remarkMedia,
131
+ remarkToc,
132
+ remarkNpm,
133
+ remarkCodeTabs,
134
+ remarkSteps,
135
+ remarkCustomHeadingId,
136
+ ],
137
+ rehypePlugins: [
138
+ [
139
+ rehypeShiki,
140
+ {
141
+ themes: {
142
+ light: config.codeThemeLight,
143
+ dark: config.codeThemeDark,
144
+ },
145
+ // Darken catppuccin-latte's green (the colour used for strings and
146
+ // some comments) — the theme default #40A02B lands at 3.2:1 on the
147
+ // code-block background, below the WCAG AA 4.5:1 threshold.
148
+ colorReplacements: {
149
+ "catppuccin-latte": {
150
+ "#40a02b": "#2a7e16",
151
+ },
152
+ },
153
+ transformers: [
154
+ transformerTwoslash({ explicitTrigger: true }),
155
+ transformerIcon(),
156
+ transformerNotations(),
157
+ transformerLineHighlight(),
158
+ ],
159
+ parseMetaString: (meta) => ({ "data-meta": meta }),
160
+ },
161
+ ],
162
+ rehypeInlineCode,
163
+ rehypeSlug,
164
+ rehypeKatex,
165
+ rehypeTaskListA11y,
166
+ ],
167
+ });
168
+ const tocItems = extractToc(content);
169
+ const searchText = extractSearchText(content);
170
+ const lastUpdated = getLastUpdated(doc._meta.filePath);
171
+ const image = doc.image
172
+ ? resolveAssetPath(doc.image, filePath, config.root)
173
+ : undefined;
174
+ return {
175
+ ...doc,
176
+ file: doc._meta.filePath,
177
+ lastUpdated,
178
+ image,
179
+ title,
180
+ icon,
181
+ path,
182
+ tocItems,
183
+ searchText,
184
+ mdx,
185
+ };
186
+ },
187
+ });
188
+ export default defineConfig({
189
+ // @ts-expect-error tsgo picks wrong overload when rehype-slug augments unified types
190
+ content: [articles],
191
+ });
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1jb2xsZWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9jb250ZW50LWNvbGxlY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUNyRCxPQUFPLFdBQVcsTUFBTSxpQkFBaUIsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN2RCxPQUFPLFdBQVcsTUFBTSxjQUFjLENBQUE7QUFDdEMsT0FBTyxVQUFVLE1BQU0sYUFBYSxDQUFBO0FBQ3BDLE9BQU8sb0JBQW9CLE1BQU0sd0JBQXdCLENBQUE7QUFDekQsT0FBTyxlQUFlLE1BQU0sa0JBQWtCLENBQUE7QUFDOUMsT0FBTyxZQUFZLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQTtBQUNsQyxPQUFPLFVBQVUsTUFBTSxhQUFhLENBQUE7QUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzNELE9BQU8sT0FBTyxNQUFNLHVCQUF1QixDQUFBO0FBQzNDLE9BQU8scUJBQXFCLE1BQU0sdUNBQXVDLENBQUE7QUFDekUsT0FBTyxFQUFF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LFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDcEMsTUFBTSxVQUFVLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDN0MsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDdEQsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUs7WUFDckIsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDcEQsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtRQUNiLE9BQU87WUFDTCxHQUFHLEdBQUc7WUFDTixJQUFJLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLFdBQVc7WUFDWCxLQUFLO1lBQ0wsS0FBSztZQUNMLElBQUk7WUFDSixJQUFJO1lBQ0osUUFBUTtZQUNSLFVBQVU7WUFDVixHQUFHO1NBQ0osQ0FBQTtJQUNILENBQUM7Q0FDRixDQUFDLENBQUE7QUFFRixlQUFlLFlBQVksQ0FBQztJQUMxQixxRkFBcUY7SUFDckYsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO0NBQ3BCLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiXG5pbXBvcnQgeyBiYXNlbmFtZSwgcmVsYXRpdmUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCJcbmltcG9ydCB7IGRlZmluZUNvbGxlY3Rpb24sIGRlZmluZUNvbmZpZyB9IGZyb20gXCJAY29udGVudC1jb2xsZWN0aW9ucy9jb3JlXCJcbmltcG9ydCB7IGNvbXBpbGVNRFggfSBmcm9tIFwiQGNvbnRlbnQtY29sbGVjdGlvbnMvbWR4XCJcbmltcG9ydCByZWh5cGVTaGlraSBmcm9tIFwiQHNoaWtpanMvcmVoeXBlXCJcbmltcG9ydCB7IHRyYW5zZm9ybWVyVHdvc2xhc2ggfSBmcm9tIFwiQHNoaWtpanMvdHdvc2xhc2hcIlxuaW1wb3J0IHJlaHlwZUthdGV4IGZyb20gXCJyZWh5cGUta2F0ZXhcIlxuaW1wb3J0IHJlaHlwZVNsdWcgZnJvbSBcInJlaHlwZS1zbHVnXCJcbmltcG9ydCByZW1hcmtEZWZpbml0aW9uTGlzdCBmcm9tIFwicmVtYXJrLWRlZmluaXRpb24tbGlzdFwiXG5pbXBvcnQgcmVtYXJrRGlyZWN0aXZlIGZyb20gXCJyZW1hcmstZGlyZWN0aXZlXCJcbmltcG9ydCByZW1hcmtHZW1vamkgZnJvbSBcInJlbWFyay1nZW1vamlcIlxuaW1wb3J0IHJlbWFya0dmbSBmcm9tIFwicmVtYXJrLWdmbVwiXG5pbXBvcnQgcmVtYXJrTWF0aCBmcm9tIFwicmVtYXJrLW1hdGhcIlxuaW1wb3J0IHsgbG9hZENvbmZpZyB9IGZyb20gXCIuL2FjdGlvbnMvY29uZmlnL2xvYWQudHNcIlxuaW1wb3J0IHsgYnVpbGRDaGFuZ2Vsb2csIGNhY2hlSW5jbHVkZUdsb2IgfSBmcm9tIFwiLi9hY3Rpb25zL2NoYW5nZWxvZy9idWlsZC50c1wiXG5pbXBvcnQgeyBBcnRpY2xlIH0gZnJvbSBcIi4vbW9kZWxzL2FydGljbGUudHNcIlxuaW1wb3J0IHsgcGlja0RlZmF1bHRJY29uIH0gZnJvbSBcIi4vaGVscGVycy9hcnRpY2xlLWljb24udHNcIlxuaW1wb3J0IHNsdWdpZnkgZnJvbSBcIkBzaW5kcmVzb3JodXMvc2x1Z2lmeVwiXG5pbXBvcnQgcmVtYXJrQ3VzdG9tSGVhZGluZ0lkIGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLWN1c3RvbS1oZWFkaW5nLWlkLnRzXCJcbmltcG9ydCB7IHJlbWFya0NhbGxvdXQgfSBmcm9tIFwiLi9wbHVnaW5zL3JlbWFyay1jYWxsb3V0LnRzXCJcbmltcG9ydCB7IHJlbWFya0NhcmQgfSBmcm9tIFwiLi9wbHVnaW5zL3JlbWFyay1jYXJkLnRzXCJcbmltcG9ydCB7IHJlbWFya0NvbHVtbnMgfSBmcm9tIFwiLi9wbHVnaW5zL3JlbWFyay1jb2x1bW5zLnRzXCJcbmltcG9ydCB7IHJlbWFya1RhYiB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLXRhYi50c1wiXG5pbXBvcnQgeyByZW1hcmtCYWRnZSB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLWJhZGdlLnRzXCJcbmltcG9ydCB7IHJlbWFya0J1dHRvbiB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLWJ1dHRvbi50c1wiXG5pbXBvcnQgeyByZW1hcmtBYmJyIH0gZnJvbSBcIi4vcGx1Z2lucy9yZW1hcmstYWJici50c1wiXG5pbXBvcnQgeyByZW1hcmtEZWZsaXN0IH0gZnJvbSBcIi4vcGx1Z2lucy9yZW1hcmstZGVmbGlzdC50c1wiXG5pbXBvcnQgeyByZW1hcmtEZXRhaWxzIH0gZnJvbSBcIi4vcGx1Z2lucy9yZW1hcmstZGV0YWlscy50c1wiXG5pbXBvcnQgeyByZW1hcmtGaWxldHJlZSB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLWZpbGV0cmVlLnRzXCJcbmltcG9ydCB7IHJlbWFya0ljb24gfSBmcm9tIFwiLi9wbHVnaW5zL3JlbWFyay1pY29uLnRzXCJcbmltcG9ydCB7IHJlbWFya0NvZGVUYWJzIH0gZnJvbSBcIi4vcGx1Z2lucy9yZW1hcmstY29kZS10YWJzLnRzXCJcbmltcG9ydCB7IHJlbWFya0dpdGh1YkNhbGxvdXQgfSBmcm9tIFwiLi9wbHVnaW5zL3JlbWFyay1naXRodWItY2FsbG91dC50c1wiXG5pbXBvcnQgeyByZW1hcmtJbWFnZSB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLWltYWdlLnRzXCJcbmltcG9ydCB7IHJlbWFya01lZGlhIH0gZnJvbSBcIi4vcGx1Z2lucy9yZW1hcmstbWVkaWEudHNcIlxuaW1wb3J0IHsgcmVtYXJrQW5zaSB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLWFuc2kudHNcIlxuaW1wb3J0IHsgcmVtYXJrTWVybWFpZCB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLW1lcm1haWQudHNcIlxuaW1wb3J0IHsgcmVtYXJrVG9jIH0gZnJvbSBcIi4vcGx1Z2lucy9yZW1hcmstdG9jLnRzXCJcbmltcG9ydCB7IHJlbWFya05wbSB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLW5wbS50c1wiXG5pbXBvcnQgeyByZW1hcmtTdGVwcyB9IGZyb20gXCIuL3BsdWdpbnMvcmVtYXJrLXN0ZXBzLnRzXCJcbmltcG9ydCB7XG4gIHRyYW5zZm9ybWVyTGluZUhpZ2hsaWdodCxcbiAgdHJhbnNmb3JtZXJOb3RhdGlvbnMsXG59IGZyb20gXCIuL3BsdWdpbnMvc2hpa2ktbGluZS1oaWdobGlnaHQudHNcIlxuaW1wb3J0IHsgcmVoeXBlSW5saW5lQ29kZSB9IGZyb20gXCIuL3BsdWdpbnMvcmVoeXBlLWlubGluZS1jb2RlLnRzXCJcbmltcG9ydCB7IHJlaHlwZVRhc2tMaXN0QTExeSB9IGZyb20gXCIuL3BsdWdpbnMvcmVoeXBlLXRhc2stbGlzdC1hMTF5LnRzXCJcbmltcG9ydCB7IHRyYW5zZm9ybWVySWNvbiB9IGZyb20gXCIuL3BsdWdpbnMvc2hpa2ktaWNvbi50c1wiXG5pbXBvcnQgeyByZXNvbHZlQXNzZXRQYXRoIH0gZnJvbSBcIi4vaGVscGVycy9yZXNvbHZlLWFzc2V0LXBhdGgudHNcIlxuaW1wb3J0IHsgcmVzb2x2ZUluY2x1ZGVzIH0gZnJvbSBcIi4vaGVscGVycy9yZXNvbHZlLWluY2x1ZGVzLnRzXCJcbmltcG9ydCB7IGV4dHJhY3RTZWFyY2hUZXh0IH0gZnJvbSBcIi4vaGVscGVycy9zZWFyY2gtdGV4dC50c1wiXG5pbXBvcnQgeyBleHRyYWN0VG9jIH0gZnJvbSBcIi4vaGVscGVycy90b2MudHNcIlxuXG5jb25zdCBjb25maWcgPSBhd2FpdCBsb2FkQ29uZmlnKClcblxuY29uc3QgY2hhbmdlbG9nU2VjdGlvbnMgPVxuICBjb25maWcuc2VjdGlvbnM/LmZpbHRlcihzID0+IHMudHlwZSA9PT0gXCJjaGFuZ2Vsb2dcIikgPz8gW11cbmZvciAoY29uc3Qgc2VjdGlvbiBvZiBjaGFuZ2Vsb2dTZWN0aW9ucykge1xuICBhd2FpdCBidWlsZENoYW5nZWxvZyhzZWN0aW9uLCBjb25maWcpXG59XG5cbmNvbnN0IGNvbmZpZ0luY2x1ZGUgPSBBcnJheS5pc0FycmF5KGNvbmZpZy5pbmNsdWRlKVxuICA/IGNvbmZpZy5pbmNsdWRlXG4gIDogW2NvbmZpZy5pbmNsdWRlXVxuY29uc3QgaW5jbHVkZSA9IGNoYW5nZWxvZ1NlY3Rpb25zLmxlbmd0aFxuICA/IFsuLi5jb25maWdJbmNsdWRlLCBjYWNoZUluY2x1ZGVHbG9iKCldXG4gIDogY29uZmlnSW5jbHVkZVxuXG4vLyBjb250ZW50LWNvbGxlY3Rpb25zIGNvbXBpbGVzIHRoaXMgZmlsZSB0byAuY29udGVudC1jb2xsZWN0aW9ucy9jYWNoZS87XG4vLyBnb2luZyB1cCAyIGxldmVscyByZWNvbnN0cnVjdHMgdGhlIGJhc2VEaXJlY3RvcnkgaXQgdXNlcyBmb3IgcGF0aCByZXNvbHV0aW9uXG5jb25zdCBiYXNlRGlyID0gcmVzb2x2ZShpbXBvcnQubWV0YS5kaXJuYW1lLCBcIi4uLy4uXCIpXG5jb25zdCBkaXJlY3RvcnkgPSByZWxhdGl2ZShiYXNlRGlyLCBjb25maWcucm9vdCkgfHwgXCIuXCJcblxuZnVuY3Rpb24gdG9QYXRoKGZpbGVQYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgbmFtZSA9IGJhc2VuYW1lKGZpbGVQYXRoKS5yZXBsYWNlKC9cXC5cXHcrJC8sIFwiXCIpXG4gIHJldHVybiBzbHVnaWZ5KG5hbWUpXG59XG5cbmZ1bmN0aW9uIGdldExhc3RVcGRhdGVkKGZpbGVQYXRoOiBzdHJpbmcpIHtcbiAgdHJ5IHtcbiAgICBjb25zdCB0aW1lc3RhbXAgPSBleGVjU3luYyhgZ2l0IGxvZyAtMSAtLWZvcm1hdD0lY0kgLS0gXCIke2ZpbGVQYXRofVwiYCwge1xuICAgICAgY3dkOiBjb25maWcucm9vdCxcbiAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4gICAgfSkudHJpbSgpXG4gICAgcmV0dXJuIHRpbWVzdGFtcCB8fCB1bmRlZmluZWRcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RUaXRsZShjb250ZW50OiBzdHJpbmcsIHBhdGg6IHN0cmluZykge1xuICBjb25zdCBtYXRjaCA9IC9eI1xccysoLispJC9tLmV4ZWMoY29udGVudClcbiAgaWYgKG1hdGNoKSByZXR1cm4gbWF0Y2hbMV0hXG4gIHJldHVybiAoXG4gICAgcGF0aFxuICAgICAgLnNwbGl0KFwiL1wiKVxuICAgICAgLnBvcCgpXG4gICAgICA/LnJlcGxhY2UoL1xcLlxcdyskLywgXCJcIikgPz8gcGF0aFxuICApXG59XG5cbmNvbnN0IGFydGljbGVzID0gZGVmaW5lQ29sbGVjdGlvbih7XG4gIG5hbWU6IFwiYXJ0aWNsZXNcIixcbiAgZGlyZWN0b3J5LFxuICBpbmNsdWRlLFxuICBleGNsdWRlOiBjb25maWcuZXhjbHVkZSxcbiAgc2NoZW1hOiBBcnRpY2xlLFxuICB0cmFuc2Zvcm06IGFzeW5jIChkb2N1bWVudCwgY29udGV4dCkgPT4ge1xuICAgIGNvbnN0IHBhdGNoID0gY29uZmlnLnBhdGNoZXM/LmZpbmQocCA9PiBwLmZpbGUgPT09IGRvY3VtZW50Ll9tZXRhLmZpbGVQYXRoKVxuICAgIGNvbnN0IGRvYyA9IHBhdGNoID8geyAuLi5kb2N1bWVudCwgLi4ucGF0Y2guYXJ0aWNsZSB9IDogZG9jdW1lbnRcbiAgICBjb25zdCBmaWxlUGF0aCA9IHJlc29sdmUoY29uZmlnLnJvb3QsIGRvYy5fbWV0YS5maWxlUGF0aClcbiAgICBjb25zdCBjb250ZW50ID0gcmVzb2x2ZUluY2x1ZGVzKGRvYy5jb250ZW50LCBmaWxlUGF0aClcbiAgICBjb25zdCB0aXRsZSA9IGRvYy50aXRsZSA/PyBleHRyYWN0VGl0bGUoY29udGVudCwgZG9jLl9tZXRhLnBhdGgpXG4gICAgY29uc3QgaWNvbiA9IGRvYy5pY29uID8/IHBpY2tEZWZhdWx0SWNvbihkb2MuX21ldGEucGF0aClcbiAgICBjb25zdCBwYXRoID0gZG9jLnBhdGggPz8gdG9QYXRoKGRvYy5fbWV0YS5maWxlUGF0aClcbiAgICBjb25zdCBtZHggPSBhd2FpdCBjb21waWxlTURYKFxuICAgICAgY29udGV4dCxcbiAgICAgIHsgLi4uZG9jLCBjb250ZW50IH0sXG4gICAgICB7XG4gICAgICAgIHJlbWFya1BsdWdpbnM6IFtcbiAgICAgICAgICByZW1hcmtHZm0sXG4gICAgICAgICAgcmVtYXJrR2Vtb2ppLFxuICAgICAgICAgIHJlbWFya0RlZmluaXRpb25MaXN0LFxuICAgICAgICAgIHJlbWFya0RlZmxpc3QsXG4gICAgICAgICAgcmVtYXJrTWF0aCxcbiAgICAgICAgICByZW1hcmtEaXJlY3RpdmUsXG4gICAgICAgICAgcmVtYXJrQ2FsbG91dCxcbiAgICAgICAgICByZW1hcmtDYXJkLFxuICAgICAgICAgIHJlbWFya0NvbHVtbnMsXG4gICAgICAgICAgcmVtYXJrVGFiLFxuICAgICAgICAgIHJlbWFya0RldGFpbHMsXG4gICAgICAgICAgcmVtYXJrRmlsZXRyZWUsXG4gICAgICAgICAgcmVtYXJrSWNvbixcbiAgICAgICAgICByZW1hcmtCYWRnZSxcbiAgICAgICAgICByZW1hcmtCdXR0b24sXG4gICAgICAgICAgcmVtYXJrQWJicixcbiAgICAgICAgICByZW1hcmtHaXRodWJDYWxsb3V0LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIHJlbWFya0ltYWdlLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmaWxlUGF0aDogcmVzb2x2ZShjb25maWcucm9vdCwgZG9jLl9tZXRhLmZpbGVQYXRoKSxcbiAgICAgICAgICAgICAgcm9vdDogY29uZmlnLnJvb3QsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcmVtYXJrQW5zaSxcbiAgICAgICAgICByZW1hcmtNZXJtYWlkLFxuICAgICAgICAgIHJlbWFya01lZGlhLFxuICAgICAgICAgIHJlbWFya1RvYyxcbiAgICAgICAgICByZW1hcmtOcG0sXG4gICAgICAgICAgcmVtYXJrQ29kZVRhYnMsXG4gICAgICAgICAgcmVtYXJrU3RlcHMsXG4gICAgICAgICAgcmVtYXJrQ3VzdG9tSGVhZGluZ0lkLFxuICAgICAgICBdLFxuICAgICAgICByZWh5cGVQbHVnaW5zOiBbXG4gICAgICAgICAgW1xuICAgICAgICAgICAgcmVoeXBlU2hpa2ksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRoZW1lczoge1xuICAgICAgICAgICAgICAgIGxpZ2h0OiBjb25maWcuY29kZVRoZW1lTGlnaHQsXG4gICAgICAgICAgICAgICAgZGFyazogY29uZmlnLmNvZGVUaGVtZURhcmssXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIC8vIERhcmtlbiBjYXRwcHVjY2luLWxhdHRlJ3MgZ3JlZW4gKHRoZSBjb2xvdXIgdXNlZCBmb3Igc3RyaW5ncyBhbmRcbiAgICAgICAgICAgICAgLy8gc29tZSBjb21tZW50cykg4oCUIHRoZSB0aGVtZSBkZWZhdWx0ICM0MEEwMkIgbGFuZHMgYXQgMy4yOjEgb24gdGhlXG4gICAgICAgICAgICAgIC8vIGNvZGUtYmxvY2sgYmFja2dyb3VuZCwgYmVsb3cgdGhlIFdDQUcgQUEgNC41OjEgdGhyZXNob2xkLlxuICAgICAgICAgICAgICBjb2xvclJlcGxhY2VtZW50czoge1xuICAgICAgICAgICAgICAgIFwiY2F0cHB1Y2Npbi1sYXR0ZVwiOiB7XG4gICAgICAgICAgICAgICAgICBcIiM0MGEwMmJcIjogXCIjMmE3ZTE2XCIsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtZXJzOiBbXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtZXJUd29zbGFzaCh7IGV4cGxpY2l0VHJpZ2dlcjogdHJ1ZSB9KSxcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1lckljb24oKSxcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1lck5vdGF0aW9ucygpLFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybWVyTGluZUhpZ2hsaWdodCgpLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBwYXJzZU1ldGFTdHJpbmc6IChtZXRhOiBzdHJpbmcpID0+ICh7IFwiZGF0YS1tZXRhXCI6IG1ldGEgfSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcmVoeXBlSW5saW5lQ29kZSxcbiAgICAgICAgICByZWh5cGVTbHVnLFxuICAgICAgICAgIHJlaHlwZUthdGV4LFxuICAgICAgICAgIHJlaHlwZVRhc2tMaXN0QTExeSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgKVxuICAgIGNvbnN0IHRvY0l0ZW1zID0gZXh0cmFjdFRvYyhjb250ZW50KVxuICAgIGNvbnN0IHNlYXJjaFRleHQgPSBleHRyYWN0U2VhcmNoVGV4dChjb250ZW50KVxuICAgIGNvbnN0IGxhc3RVcGRhdGVkID0gZ2V0TGFzdFVwZGF0ZWQoZG9jLl9tZXRhLmZpbGVQYXRoKVxuICAgIGNvbnN0IGltYWdlID0gZG9jLmltYWdlXG4gICAgICA/IHJlc29sdmVBc3NldFBhdGgoZG9jLmltYWdlLCBmaWxlUGF0aCwgY29uZmlnLnJvb3QpXG4gICAgICA6IHVuZGVmaW5lZFxuICAgIHJldHVybiB7XG4gICAgICAuLi5kb2MsXG4gICAgICBmaWxlOiBkb2MuX21ldGEuZmlsZVBhdGgsXG4gICAgICBsYXN0VXBkYXRlZCxcbiAgICAgIGltYWdlLFxuICAgICAgdGl0bGUsXG4gICAgICBpY29uLFxuICAgICAgcGF0aCxcbiAgICAgIHRvY0l0ZW1zLFxuICAgICAgc2VhcmNoVGV4dCxcbiAgICAgIG1keCxcbiAgICB9XG4gIH0sXG59KVxuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoe1xuICAvLyBAdHMtZXhwZWN0LWVycm9yIHRzZ28gcGlja3Mgd3Jvbmcgb3ZlcmxvYWQgd2hlbiByZWh5cGUtc2x1ZyBhdWdtZW50cyB1bmlmaWVkIHR5cGVzXG4gIGNvbnRlbnQ6IFthcnRpY2xlc10sXG59KVxuIl19
@@ -0,0 +1,6 @@
1
+ import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
2
+ declare function Accordion({ className, ...props }: AccordionPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
+ declare function AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function AccordionTrigger({ className, children, ...props }: AccordionPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare function AccordionContent({ className, children, ...props }: AccordionPrimitive.Panel.Props): import("react/jsx-runtime").JSX.Element;
6
+ export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
3
+ import { ChevronDownIcon, ChevronUpIcon } from "lucide-react";
4
+ import { cn } from "../utils/style.js";
5
+ function Accordion({ className, ...props }) {
6
+ return (_jsx(AccordionPrimitive.Root, { "data-slot": "accordion", className: cn("flex w-full flex-col", className), ...props }));
7
+ }
8
+ function AccordionItem({ className, ...props }) {
9
+ return (_jsx(AccordionPrimitive.Item, { "data-slot": "accordion-item", className: cn("not-last:border-b", className), ...props }));
10
+ }
11
+ function AccordionTrigger({ className, children, ...props }) {
12
+ return (_jsx(AccordionPrimitive.Header, { className: "flex", children: _jsxs(AccordionPrimitive.Trigger, { "data-slot": "accordion-trigger", className: cn("group/accordion-trigger relative flex flex-1 items-start justify-between rounded-md border border-transparent py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:after:border-ring aria-disabled:pointer-events-none aria-disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4 **:data-[slot=accordion-trigger-icon]:text-muted-foreground", className), ...props, children: [children, _jsx(ChevronDownIcon, { "data-slot": "accordion-trigger-icon", className: "pointer-events-none shrink-0 group-aria-expanded/accordion-trigger:hidden" }), _jsx(ChevronUpIcon, { "data-slot": "accordion-trigger-icon", className: "pointer-events-none hidden shrink-0 group-aria-expanded/accordion-trigger:inline" })
13
+ ] }) }));
14
+ }
15
+ function AccordionContent({ className, children, ...props }) {
16
+ return (_jsx(AccordionPrimitive.Panel, { "data-slot": "accordion-content", className: "overflow-hidden text-sm data-open:animate-accordion-down data-closed:animate-accordion-up", ...props, children: _jsx("div", { className: cn("h-(--accordion-panel-height) pt-0 pb-4 data-ending-style:h-0 data-starting-style:h-0 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4", className), children: children }) }));
17
+ }
18
+ export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL2VsZW1lbnRzL2FjY29yZGlvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLElBQUksa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU3RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFdEMsU0FBUyxTQUFTLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxLQUFLLEVBQWlDO0lBQ3ZFLE9BQU8sQ0FDTCxLQUFDLGtCQUFrQixDQUFDLElBQUksaUJBQ1osV0FBVyxFQUNyQixTQUFTLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixFQUFFLFNBQVMsQ0FBQyxLQUM1QyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUFpQztJQUMzRSxPQUFPLENBQ0wsS0FBQyxrQkFBa0IsQ0FBQyxJQUFJLGlCQUNaLGdCQUFnQixFQUMxQixTQUFTLEVBQUUsRUFBRSxDQUFDLG1CQUFtQixFQUFFLFNBQVMsQ0FBQyxLQUN6QyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsRUFDeEIsU0FBUyxFQUNULFFBQVEsRUFDUixHQUFHLEtBQUssRUFDeUI7SUFDakMsT0FBTyxDQUNMLEtBQUMsa0JBQWtCLENBQUMsTUFBTSxJQUFDLFNBQVMsRUFBQyxNQUFNLFlBQ3pDLE1BQUMsa0JBQWtCLENBQUMsT0FBTyxpQkFDZixtQkFBbUIsRUFDN0IsU0FBUyxFQUFFLEVBQUUsQ0FDWCwwZkFBMGYsRUFDMWYsU0FBUyxDQUNWLEtBQ0csS0FBSyxhQUVSLFFBQVEsRUFDVCxLQUFDLGVBQWUsaUJBQ0osd0JBQXdCLEVBQ2xDLFNBQVMsRUFBQywyRUFBMkUsR0FDckYsRUFDRixLQUFDLGFBQWEsaUJBQ0Ysd0JBQXdCLEVBQ2xDLFNBQVMsRUFBQyxrRkFBa0YsR0FDNUY7Z0JBQ3lCLEdBQ0gsQ0FDN0IsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQixDQUFDLEVBQ3hCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsR0FBRyxLQUFLLEVBQ3VCO0lBQy9CLE9BQU8sQ0FDTCxLQUFDLGtCQUFrQixDQUFDLEtBQUssaUJBQ2IsbUJBQW1CLEVBQzdCLFNBQVMsRUFBQywyRkFBMkYsS0FDakcsS0FBSyxZQUVULGNBQ0UsU0FBUyxFQUFFLEVBQUUsQ0FDWCx1TEFBdUwsRUFDdkwsU0FBUyxDQUNWLFlBRUEsUUFBUSxHQUNMLEdBQ21CLENBQzVCLENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY29yZGlvbiBhcyBBY2NvcmRpb25QcmltaXRpdmUgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvYWNjb3JkaW9uXCJcbmltcG9ydCB7IENoZXZyb25Eb3duSWNvbiwgQ2hldnJvblVwSWNvbiB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5cbmZ1bmN0aW9uIEFjY29yZGlvbih7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogQWNjb3JkaW9uUHJpbWl0aXZlLlJvb3QuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8QWNjb3JkaW9uUHJpbWl0aXZlLlJvb3RcbiAgICAgIGRhdGEtc2xvdD1cImFjY29yZGlvblwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwiZmxleCB3LWZ1bGwgZmxleC1jb2xcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEFjY29yZGlvbkl0ZW0oeyBjbGFzc05hbWUsIC4uLnByb3BzIH06IEFjY29yZGlvblByaW1pdGl2ZS5JdGVtLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPEFjY29yZGlvblByaW1pdGl2ZS5JdGVtXG4gICAgICBkYXRhLXNsb3Q9XCJhY2NvcmRpb24taXRlbVwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwibm90LWxhc3Q6Ym9yZGVyLWJcIiwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEFjY29yZGlvblRyaWdnZXIoe1xuICBjbGFzc05hbWUsXG4gIGNoaWxkcmVuLFxuICAuLi5wcm9wc1xufTogQWNjb3JkaW9uUHJpbWl0aXZlLlRyaWdnZXIuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8QWNjb3JkaW9uUHJpbWl0aXZlLkhlYWRlciBjbGFzc05hbWU9XCJmbGV4XCI+XG4gICAgICA8QWNjb3JkaW9uUHJpbWl0aXZlLlRyaWdnZXJcbiAgICAgICAgZGF0YS1zbG90PVwiYWNjb3JkaW9uLXRyaWdnZXJcIlxuICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgIFwiZ3JvdXAvYWNjb3JkaW9uLXRyaWdnZXIgcmVsYXRpdmUgZmxleCBmbGV4LTEgaXRlbXMtc3RhcnQganVzdGlmeS1iZXR3ZWVuIHJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci10cmFuc3BhcmVudCBweS00IHRleHQtbGVmdCB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRyYW5zaXRpb24tYWxsIG91dGxpbmUtbm9uZSBob3Zlcjp1bmRlcmxpbmUgZm9jdXMtdmlzaWJsZTpib3JkZXItcmluZyBmb2N1cy12aXNpYmxlOnJpbmctMyBmb2N1cy12aXNpYmxlOnJpbmctcmluZy81MCBmb2N1cy12aXNpYmxlOmFmdGVyOmJvcmRlci1yaW5nIGFyaWEtZGlzYWJsZWQ6cG9pbnRlci1ldmVudHMtbm9uZSBhcmlhLWRpc2FibGVkOm9wYWNpdHktNTAgKio6ZGF0YS1bc2xvdD1hY2NvcmRpb24tdHJpZ2dlci1pY29uXTptbC1hdXRvICoqOmRhdGEtW3Nsb3Q9YWNjb3JkaW9uLXRyaWdnZXItaWNvbl06c2l6ZS00ICoqOmRhdGEtW3Nsb3Q9YWNjb3JkaW9uLXRyaWdnZXItaWNvbl06dGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICApfVxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPENoZXZyb25Eb3duSWNvblxuICAgICAgICAgIGRhdGEtc2xvdD1cImFjY29yZGlvbi10cmlnZ2VyLWljb25cIlxuICAgICAgICAgIGNsYXNzTmFtZT1cInBvaW50ZXItZXZlbnRzLW5vbmUgc2hyaW5rLTAgZ3JvdXAtYXJpYS1leHBhbmRlZC9hY2NvcmRpb24tdHJpZ2dlcjpoaWRkZW5cIlxuICAgICAgICAvPlxuICAgICAgICA8Q2hldnJvblVwSWNvblxuICAgICAgICAgIGRhdGEtc2xvdD1cImFjY29yZGlvbi10cmlnZ2VyLWljb25cIlxuICAgICAgICAgIGNsYXNzTmFtZT1cInBvaW50ZXItZXZlbnRzLW5vbmUgaGlkZGVuIHNocmluay0wIGdyb3VwLWFyaWEtZXhwYW5kZWQvYWNjb3JkaW9uLXRyaWdnZXI6aW5saW5lXCJcbiAgICAgICAgLz5cbiAgICAgIDwvQWNjb3JkaW9uUHJpbWl0aXZlLlRyaWdnZXI+XG4gICAgPC9BY2NvcmRpb25QcmltaXRpdmUuSGVhZGVyPlxuICApXG59XG5cbmZ1bmN0aW9uIEFjY29yZGlvbkNvbnRlbnQoe1xuICBjbGFzc05hbWUsXG4gIGNoaWxkcmVuLFxuICAuLi5wcm9wc1xufTogQWNjb3JkaW9uUHJpbWl0aXZlLlBhbmVsLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPEFjY29yZGlvblByaW1pdGl2ZS5QYW5lbFxuICAgICAgZGF0YS1zbG90PVwiYWNjb3JkaW9uLWNvbnRlbnRcIlxuICAgICAgY2xhc3NOYW1lPVwib3ZlcmZsb3ctaGlkZGVuIHRleHQtc20gZGF0YS1vcGVuOmFuaW1hdGUtYWNjb3JkaW9uLWRvd24gZGF0YS1jbG9zZWQ6YW5pbWF0ZS1hY2NvcmRpb24tdXBcIlxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgICBcImgtKC0tYWNjb3JkaW9uLXBhbmVsLWhlaWdodCkgcHQtMCBwYi00IGRhdGEtZW5kaW5nLXN0eWxlOmgtMCBkYXRhLXN0YXJ0aW5nLXN0eWxlOmgtMCBbJl9hXTp1bmRlcmxpbmUgWyZfYV06dW5kZXJsaW5lLW9mZnNldC0zIFsmX2FdOmhvdmVyOnRleHQtZm9yZWdyb3VuZCBbJl9wOm5vdCg6bGFzdC1jaGlsZCldOm1iLTRcIixcbiAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgIDwvQWNjb3JkaW9uUHJpbWl0aXZlLlBhbmVsPlxuICApXG59XG5cbmV4cG9ydCB7IEFjY29yZGlvbiwgQWNjb3JkaW9uSXRlbSwgQWNjb3JkaW9uVHJpZ2dlciwgQWNjb3JkaW9uQ29udGVudCB9XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import * as React from "react";
2
+ import { AlertDialog as AlertDialogPrimitive } from "@base-ui/react/alert-dialog";
3
+ import { Button } from "./button.tsx";
4
+ declare function AlertDialog({ ...props }: AlertDialogPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare function AlertDialogTrigger({ ...props }: AlertDialogPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
6
+ declare function AlertDialogPortal({ ...props }: AlertDialogPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
7
+ declare function AlertDialogOverlay({ className, ...props }: AlertDialogPrimitive.Backdrop.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function AlertDialogContent({ className, size, ...props }: AlertDialogPrimitive.Popup.Props & {
9
+ size?: "default" | "sm";
10
+ }): import("react/jsx-runtime").JSX.Element;
11
+ declare function AlertDialogHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
12
+ declare function AlertDialogFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
13
+ declare function AlertDialogMedia({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
14
+ declare function AlertDialogTitle({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
15
+ declare function AlertDialogDescription({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
16
+ declare function AlertDialogAction({ className, ...props }: React.ComponentProps<typeof Button>): import("react/jsx-runtime").JSX.Element;
17
+ declare function AlertDialogCancel({ className, variant, size, ...props }: AlertDialogPrimitive.Close.Props & Pick<React.ComponentProps<typeof Button>, "variant" | "size">): import("react/jsx-runtime").JSX.Element;
18
+ export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, };
@@ -0,0 +1,44 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { AlertDialog as AlertDialogPrimitive } from "@base-ui/react/alert-dialog";
3
+ import { cn } from "../utils/style.js";
4
+ import { Button } from "./button.js";
5
+ function AlertDialog({ ...props }) {
6
+ return _jsx(AlertDialogPrimitive.Root, { "data-slot": "alert-dialog", ...props });
7
+ }
8
+ function AlertDialogTrigger({ ...props }) {
9
+ return (_jsx(AlertDialogPrimitive.Trigger, { "data-slot": "alert-dialog-trigger", ...props }));
10
+ }
11
+ function AlertDialogPortal({ ...props }) {
12
+ return (_jsx(AlertDialogPrimitive.Portal, { "data-slot": "alert-dialog-portal", ...props }));
13
+ }
14
+ function AlertDialogOverlay({ className, ...props }) {
15
+ return (_jsx(AlertDialogPrimitive.Backdrop, { "data-slot": "alert-dialog-overlay", className: cn("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0", className), ...props }));
16
+ }
17
+ function AlertDialogContent({ className, size = "default", ...props }) {
18
+ return (_jsxs(AlertDialogPortal, { children: [
19
+ _jsx(AlertDialogOverlay, {}), _jsx(AlertDialogPrimitive.Popup, { "data-slot": "alert-dialog-content", "data-size": size, className: cn("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-6 rounded-xl bg-popover p-6 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg 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 })
20
+ ] }));
21
+ }
22
+ function AlertDialogHeader({ className, ...props }) {
23
+ return (_jsx("div", { "data-slot": "alert-dialog-header", className: cn("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]", className), ...props }));
24
+ }
25
+ function AlertDialogFooter({ className, ...props }) {
26
+ return (_jsx("div", { "data-slot": "alert-dialog-footer", className: cn("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end", className), ...props }));
27
+ }
28
+ function AlertDialogMedia({ className, ...props }) {
29
+ return (_jsx("div", { "data-slot": "alert-dialog-media", className: cn("mb-2 inline-flex size-16 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-8", className), ...props }));
30
+ }
31
+ function AlertDialogTitle({ className, ...props }) {
32
+ return (_jsx(AlertDialogPrimitive.Title, { "data-slot": "alert-dialog-title", className: cn("cn-font-heading text-lg font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2", className), ...props }));
33
+ }
34
+ function AlertDialogDescription({ className, ...props }) {
35
+ return (_jsx(AlertDialogPrimitive.Description, { "data-slot": "alert-dialog-description", className: cn("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground", className), ...props }));
36
+ }
37
+ function AlertDialogAction({ className, ...props }) {
38
+ return (_jsx(Button, { "data-slot": "alert-dialog-action", className: cn(className), ...props }));
39
+ }
40
+ function AlertDialogCancel({ className, variant = "outline", size = "default", ...props }) {
41
+ return (_jsx(AlertDialogPrimitive.Close, { "data-slot": "alert-dialog-cancel", className: cn(className), render: _jsx(Button, { variant: variant, size: size }), ...props }));
42
+ }
43
+ export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, };
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL2VsZW1lbnRzL2FsZXJ0LWRpYWxvZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxXQUFXLElBQUksb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUVqRixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWMsQ0FBQTtBQUVyQyxTQUFTLFdBQVcsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFtQztJQUNoRSxPQUFPLEtBQUMsb0JBQW9CLENBQUMsSUFBSSxpQkFBVyxjQUFjLEtBQUssS0FBSyxHQUFJLENBQUE7QUFDMUUsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBc0M7SUFDMUUsT0FBTyxDQUNMLEtBQUMsb0JBQW9CLENBQUMsT0FBTyxpQkFBVyxzQkFBc0IsS0FBSyxLQUFLLEdBQUksQ0FDN0UsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQXFDO0lBQ3hFLE9BQU8sQ0FDTCxLQUFDLG9CQUFvQixDQUFDLE1BQU0saUJBQVcscUJBQXFCLEtBQUssS0FBSyxHQUFJLENBQzNFLENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxFQUMxQixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQzRCO0lBQ3BDLE9BQU8sQ0FDTCxLQUFDLG9CQUFvQixDQUFDLFFBQVEsaUJBQ2xCLHNCQUFzQixFQUNoQyxTQUFTLEVBQUUsRUFBRSxDQUNYLHVMQUF1TCxFQUN2TCxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsRUFDMUIsU0FBUyxFQUNULElBQUksR0FBRyxTQUFTLEVBQ2hCLEdBQUcsS0FBSyxFQUdUO0lBQ0MsT0FBTyxDQUNMLE1BQUMsaUJBQWlCO1lBQ2hCLEtBQUMsa0JBQWtCLEtBQUcsRUFDdEIsS0FBQyxvQkFBb0IsQ0FBQyxLQUFLLGlCQUNmLHNCQUFzQixlQUNyQixJQUFJLEVBQ2YsU0FBUyxFQUFFLEVBQUUsQ0FDWCw0YUFBNGEsRUFDNWEsU0FBUyxDQUNWLEtBQ0csS0FBSyxHQUNUO1lBQ2dCLENBQ3JCLENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxFQUN6QixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQ29CO0lBQzVCLE9BQU8sQ0FDTCwyQkFDWSxxQkFBcUIsRUFDL0IsU0FBUyxFQUFFLEVBQUUsQ0FDWCxvWkFBb1osRUFDcFosU0FBUyxDQUNWLEtBQ0csS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEVBQ3pCLFNBQVMsRUFDVCxHQUFHLEtBQUssRUFDb0I7SUFDNUIsT0FBTyxDQUNMLDJCQUNZLHFCQUFxQixFQUMvQixTQUFTLEVBQUUsRUFBRSxDQUNYLDZKQUE2SixFQUM3SixTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsRUFDeEIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUNvQjtJQUM1QixPQUFPLENBQ0wsMkJBQ1ksb0JBQW9CLEVBQzlCLFNBQVMsRUFBRSxFQUFFLENBQ1gsNEtBQTRLLEVBQzVLLFNBQVMsQ0FDVixLQUNHLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxFQUN4QixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQ2dEO0lBQ3hELE9BQU8sQ0FDTCxLQUFDLG9CQUFvQixDQUFDLEtBQUssaUJBQ2Ysb0JBQW9CLEVBQzlCLFNBQVMsRUFBRSxFQUFFLENBQ1gsaUtBQWlLLEVBQ2pLLFNBQVMsQ0FDVixLQUNHLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxzQkFBc0IsQ0FBQyxFQUM5QixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQ3NEO0lBQzlELE9BQU8sQ0FDTCxLQUFDLG9CQUFvQixDQUFDLFdBQVcsaUJBQ3JCLDBCQUEwQixFQUNwQyxTQUFTLEVBQUUsRUFBRSxDQUNYLGdJQUFnSSxFQUNoSSxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsaUJBQWlCLENBQUMsRUFDekIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUM0QjtJQUNwQyxPQUFPLENBQ0wsS0FBQyxNQUFNLGlCQUNLLHFCQUFxQixFQUMvQixTQUFTLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUNwQixLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsaUJBQWlCLENBQUMsRUFDekIsU0FBUyxFQUNULE9BQU8sR0FBRyxTQUFTLEVBQ25CLElBQUksR0FBRyxTQUFTLEVBQ2hCLEdBQUcsS0FBSyxFQUVxRDtJQUM3RCxPQUFPLENBQ0wsS0FBQyxvQkFBb0IsQ0FBQyxLQUFLLGlCQUNmLHFCQUFxQixFQUMvQixTQUFTLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUN4QixNQUFNLEVBQUUsS0FBQyxNQUFNLElBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxHQUFJLEtBQzVDLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUNMLFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsa0JBQWtCLEdBQ25CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IHsgQWxlcnREaWFsb2cgYXMgQWxlcnREaWFsb2dQcmltaXRpdmUgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvYWxlcnQtZGlhbG9nXCJcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vdXRpbHMvc3R5bGUudHNcIlxuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSBcIi4vYnV0dG9uLnRzeFwiXG5cbmZ1bmN0aW9uIEFsZXJ0RGlhbG9nKHsgLi4ucHJvcHMgfTogQWxlcnREaWFsb2dQcmltaXRpdmUuUm9vdC5Qcm9wcykge1xuICByZXR1cm4gPEFsZXJ0RGlhbG9nUHJpbWl0aXZlLlJvb3QgZGF0YS1zbG90PVwiYWxlcnQtZGlhbG9nXCIgey4uLnByb3BzfSAvPlxufVxuXG5mdW5jdGlvbiBBbGVydERpYWxvZ1RyaWdnZXIoeyAuLi5wcm9wcyB9OiBBbGVydERpYWxvZ1ByaW1pdGl2ZS5UcmlnZ2VyLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPEFsZXJ0RGlhbG9nUHJpbWl0aXZlLlRyaWdnZXIgZGF0YS1zbG90PVwiYWxlcnQtZGlhbG9nLXRyaWdnZXJcIiB7Li4ucHJvcHN9IC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQWxlcnREaWFsb2dQb3J0YWwoeyAuLi5wcm9wcyB9OiBBbGVydERpYWxvZ1ByaW1pdGl2ZS5Qb3J0YWwuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8QWxlcnREaWFsb2dQcmltaXRpdmUuUG9ydGFsIGRhdGEtc2xvdD1cImFsZXJ0LWRpYWxvZy1wb3J0YWxcIiB7Li4ucHJvcHN9IC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQWxlcnREaWFsb2dPdmVybGF5KHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogQWxlcnREaWFsb2dQcmltaXRpdmUuQmFja2Ryb3AuUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8QWxlcnREaWFsb2dQcmltaXRpdmUuQmFja2Ryb3BcbiAgICAgIGRhdGEtc2xvdD1cImFsZXJ0LWRpYWxvZy1vdmVybGF5XCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZml4ZWQgaW5zZXQtMCBpc29sYXRlIHotNTAgYmctYmxhY2svMTAgZHVyYXRpb24tMTAwIHN1cHBvcnRzLWJhY2tkcm9wLWZpbHRlcjpiYWNrZHJvcC1ibHVyLXhzIGRhdGEtb3BlbjphbmltYXRlLWluIGRhdGEtb3BlbjpmYWRlLWluLTAgZGF0YS1jbG9zZWQ6YW5pbWF0ZS1vdXQgZGF0YS1jbG9zZWQ6ZmFkZS1vdXQtMFwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQWxlcnREaWFsb2dDb250ZW50KHtcbiAgY2xhc3NOYW1lLFxuICBzaXplID0gXCJkZWZhdWx0XCIsXG4gIC4uLnByb3BzXG59OiBBbGVydERpYWxvZ1ByaW1pdGl2ZS5Qb3B1cC5Qcm9wcyAmIHtcbiAgc2l6ZT86IFwiZGVmYXVsdFwiIHwgXCJzbVwiXG59KSB7XG4gIHJldHVybiAoXG4gICAgPEFsZXJ0RGlhbG9nUG9ydGFsPlxuICAgICAgPEFsZXJ0RGlhbG9nT3ZlcmxheSAvPlxuICAgICAgPEFsZXJ0RGlhbG9nUHJpbWl0aXZlLlBvcHVwXG4gICAgICAgIGRhdGEtc2xvdD1cImFsZXJ0LWRpYWxvZy1jb250ZW50XCJcbiAgICAgICAgZGF0YS1zaXplPXtzaXplfVxuICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgIFwiZ3JvdXAvYWxlcnQtZGlhbG9nLWNvbnRlbnQgZml4ZWQgdG9wLTEvMiBsZWZ0LTEvMiB6LTUwIGdyaWQgdy1mdWxsIC10cmFuc2xhdGUteC0xLzIgLXRyYW5zbGF0ZS15LTEvMiBnYXAtNiByb3VuZGVkLXhsIGJnLXBvcG92ZXIgcC02IHRleHQtcG9wb3Zlci1mb3JlZ3JvdW5kIHJpbmctMSByaW5nLWZvcmVncm91bmQvMTAgZHVyYXRpb24tMTAwIG91dGxpbmUtbm9uZSBkYXRhLVtzaXplPWRlZmF1bHRdOm1heC13LXhzIGRhdGEtW3NpemU9c21dOm1heC13LXhzIGRhdGEtW3NpemU9ZGVmYXVsdF06c206bWF4LXctbGcgZGF0YS1vcGVuOmFuaW1hdGUtaW4gZGF0YS1vcGVuOmZhZGUtaW4tMCBkYXRhLW9wZW46em9vbS1pbi05NSBkYXRhLWNsb3NlZDphbmltYXRlLW91dCBkYXRhLWNsb3NlZDpmYWRlLW91dC0wIGRhdGEtY2xvc2VkOnpvb20tb3V0LTk1XCIsXG4gICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICApfVxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAvPlxuICAgIDwvQWxlcnREaWFsb2dQb3J0YWw+XG4gIClcbn1cblxuZnVuY3Rpb24gQWxlcnREaWFsb2dIZWFkZXIoe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGRhdGEtc2xvdD1cImFsZXJ0LWRpYWxvZy1oZWFkZXJcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJncmlkIGdyaWQtcm93cy1bYXV0b18xZnJdIHBsYWNlLWl0ZW1zLWNlbnRlciBnYXAtMS41IHRleHQtY2VudGVyIGhhcy1kYXRhLVtzbG90PWFsZXJ0LWRpYWxvZy1tZWRpYV06Z3JpZC1yb3dzLVthdXRvX2F1dG9fMWZyXSBoYXMtZGF0YS1bc2xvdD1hbGVydC1kaWFsb2ctbWVkaWFdOmdhcC14LTYgc206Z3JvdXAtZGF0YS1bc2l6ZT1kZWZhdWx0XS9hbGVydC1kaWFsb2ctY29udGVudDpwbGFjZS1pdGVtcy1zdGFydCBzbTpncm91cC1kYXRhLVtzaXplPWRlZmF1bHRdL2FsZXJ0LWRpYWxvZy1jb250ZW50OnRleHQtbGVmdCBzbTpncm91cC1kYXRhLVtzaXplPWRlZmF1bHRdL2FsZXJ0LWRpYWxvZy1jb250ZW50Omhhcy1kYXRhLVtzbG90PWFsZXJ0LWRpYWxvZy1tZWRpYV06Z3JpZC1yb3dzLVthdXRvXzFmcl1cIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEFsZXJ0RGlhbG9nRm9vdGVyKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJkaXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXNsb3Q9XCJhbGVydC1kaWFsb2ctZm9vdGVyXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZmxleCBmbGV4LWNvbC1yZXZlcnNlIGdhcC0yIGdyb3VwLWRhdGEtW3NpemU9c21dL2FsZXJ0LWRpYWxvZy1jb250ZW50OmdyaWQgZ3JvdXAtZGF0YS1bc2l6ZT1zbV0vYWxlcnQtZGlhbG9nLWNvbnRlbnQ6Z3JpZC1jb2xzLTIgc206ZmxleC1yb3cgc206anVzdGlmeS1lbmRcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEFsZXJ0RGlhbG9nTWVkaWEoe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGRhdGEtc2xvdD1cImFsZXJ0LWRpYWxvZy1tZWRpYVwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcIm1iLTIgaW5saW5lLWZsZXggc2l6ZS0xNiBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1tZCBiZy1tdXRlZCBzbTpncm91cC1kYXRhLVtzaXplPWRlZmF1bHRdL2FsZXJ0LWRpYWxvZy1jb250ZW50OnJvdy1zcGFuLTIgKjpbc3ZnOm5vdChbY2xhc3MqPSdzaXplLSddKV06c2l6ZS04XCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBbGVydERpYWxvZ1RpdGxlKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIEFsZXJ0RGlhbG9nUHJpbWl0aXZlLlRpdGxlPikge1xuICByZXR1cm4gKFxuICAgIDxBbGVydERpYWxvZ1ByaW1pdGl2ZS5UaXRsZVxuICAgICAgZGF0YS1zbG90PVwiYWxlcnQtZGlhbG9nLXRpdGxlXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiY24tZm9udC1oZWFkaW5nIHRleHQtbGcgZm9udC1tZWRpdW0gc206Z3JvdXAtZGF0YS1bc2l6ZT1kZWZhdWx0XS9hbGVydC1kaWFsb2ctY29udGVudDpncm91cC1oYXMtZGF0YS1bc2xvdD1hbGVydC1kaWFsb2ctbWVkaWFdL2FsZXJ0LWRpYWxvZy1jb250ZW50OmNvbC1zdGFydC0yXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBbGVydERpYWxvZ0Rlc2NyaXB0aW9uKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIEFsZXJ0RGlhbG9nUHJpbWl0aXZlLkRlc2NyaXB0aW9uPikge1xuICByZXR1cm4gKFxuICAgIDxBbGVydERpYWxvZ1ByaW1pdGl2ZS5EZXNjcmlwdGlvblxuICAgICAgZGF0YS1zbG90PVwiYWxlcnQtZGlhbG9nLWRlc2NyaXB0aW9uXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwidGV4dC1zbSB0ZXh0LWJhbGFuY2UgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIG1kOnRleHQtcHJldHR5ICo6W2FdOnVuZGVybGluZSAqOlthXTp1bmRlcmxpbmUtb2Zmc2V0LTMgKjpbYV06aG92ZXI6dGV4dC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBbGVydERpYWxvZ0FjdGlvbih7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPHR5cGVvZiBCdXR0b24+KSB7XG4gIHJldHVybiAoXG4gICAgPEJ1dHRvblxuICAgICAgZGF0YS1zbG90PVwiYWxlcnQtZGlhbG9nLWFjdGlvblwiXG4gICAgICBjbGFzc05hbWU9e2NuKGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBbGVydERpYWxvZ0NhbmNlbCh7XG4gIGNsYXNzTmFtZSxcbiAgdmFyaWFudCA9IFwib3V0bGluZVwiLFxuICBzaXplID0gXCJkZWZhdWx0XCIsXG4gIC4uLnByb3BzXG59OiBBbGVydERpYWxvZ1ByaW1pdGl2ZS5DbG9zZS5Qcm9wcyAmXG4gIFBpY2s8UmVhY3QuQ29tcG9uZW50UHJvcHM8dHlwZW9mIEJ1dHRvbj4sIFwidmFyaWFudFwiIHwgXCJzaXplXCI+KSB7XG4gIHJldHVybiAoXG4gICAgPEFsZXJ0RGlhbG9nUHJpbWl0aXZlLkNsb3NlXG4gICAgICBkYXRhLXNsb3Q9XCJhbGVydC1kaWFsb2ctY2FuY2VsXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oY2xhc3NOYW1lKX1cbiAgICAgIHJlbmRlcj17PEJ1dHRvbiB2YXJpYW50PXt2YXJpYW50fSBzaXplPXtzaXplfSAvPn1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmV4cG9ydCB7XG4gIEFsZXJ0RGlhbG9nLFxuICBBbGVydERpYWxvZ0FjdGlvbixcbiAgQWxlcnREaWFsb2dDYW5jZWwsXG4gIEFsZXJ0RGlhbG9nQ29udGVudCxcbiAgQWxlcnREaWFsb2dEZXNjcmlwdGlvbixcbiAgQWxlcnREaWFsb2dGb290ZXIsXG4gIEFsZXJ0RGlhbG9nSGVhZGVyLFxuICBBbGVydERpYWxvZ01lZGlhLFxuICBBbGVydERpYWxvZ092ZXJsYXksXG4gIEFsZXJ0RGlhbG9nUG9ydGFsLFxuICBBbGVydERpYWxvZ1RpdGxlLFxuICBBbGVydERpYWxvZ1RyaWdnZXIsXG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ declare const alertVariants: (props?: ({
3
+ variant?: "default" | "destructive" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ declare function Alert({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof alertVariants>): import("react/jsx-runtime").JSX.Element;
6
+ declare function AlertTitle({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
7
+ declare function AlertDescription({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
8
+ declare function AlertAction({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
9
+ export { Alert, AlertTitle, AlertDescription, AlertAction };
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { cn } from "../utils/style.js";
4
+ const alertVariants = cva("grid gap-0.5 rounded-lg border px-4 py-3 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2.5 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4 w-full relative group/alert", {
5
+ variants: {
6
+ variant: {
7
+ default: "bg-card text-card-foreground",
8
+ destructive: "text-destructive bg-card *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current",
9
+ },
10
+ },
11
+ defaultVariants: {
12
+ variant: "default",
13
+ },
14
+ });
15
+ function Alert({ className, variant, ...props }) {
16
+ return (_jsx("div", { "data-slot": "alert", role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
17
+ }
18
+ function AlertTitle({ className, ...props }) {
19
+ return (_jsx("div", { "data-slot": "alert-title", className: cn("font-medium group-has-[>svg]/alert:col-start-2 [&_a]:hover:text-foreground [&_a]:underline [&_a]:underline-offset-3", className), ...props }));
20
+ }
21
+ function AlertDescription({ className, ...props }) {
22
+ return (_jsx("div", { "data-slot": "alert-description", className: cn("text-muted-foreground text-sm text-balance md:text-pretty [&_p:not(:last-child)]:mb-4 [&_a]:hover:text-foreground [&_a]:underline [&_a]:underline-offset-3", className), ...props }));
23
+ }
24
+ function AlertAction({ className, ...props }) {
25
+ return (_jsx("div", { "data-slot": "alert-action", className: cn("absolute top-2.5 right-3", className), ...props }));
26
+ }
27
+ export { Alert, AlertTitle, AlertDescription, AlertAction };
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZWxlbWVudHMvYWxlcnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFxQixNQUFNLDBCQUEwQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUV0QyxNQUFNLGFBQWEsR0FBRyxHQUFHLENBQ3ZCLDJUQUEyVCxFQUMzVDtJQUNFLFFBQVEsRUFBRTtRQUNSLE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSw4QkFBOEI7WUFDdkMsV0FBVyxFQUNULG1HQUFtRztTQUN0RztLQUNGO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsT0FBTyxFQUFFLFNBQVM7S0FDbkI7Q0FDRixDQUNGLENBQUE7QUFFRCxTQUFTLEtBQUssQ0FBQyxFQUNiLFNBQVMsRUFDVCxPQUFPLEVBQ1AsR0FBRyxLQUFLLEVBQ3lEO0lBQ2pFLE9BQU8sQ0FDTCwyQkFDWSxPQUFPLEVBQ2pCLElBQUksRUFBQyxPQUFPLEVBQ1osU0FBUyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxLQUNoRCxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUN0RSxPQUFPLENBQ0wsMkJBQ1ksYUFBYSxFQUN2QixTQUFTLEVBQUUsRUFBRSxDQUNYLHFIQUFxSCxFQUNySCxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsRUFDeEIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUNvQjtJQUM1QixPQUFPLENBQ0wsMkJBQ1ksbUJBQW1CLEVBQzdCLFNBQVMsRUFBRSxFQUFFLENBQ1gsNEpBQTRKLEVBQzVKLFNBQVMsQ0FDVixLQUNHLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxLQUFLLEVBQStCO0lBQ3ZFLE9BQU8sQ0FDTCwyQkFDWSxjQUFjLEVBQ3hCLFNBQVMsRUFBRSxFQUFFLENBQUMsMEJBQTBCLEVBQUUsU0FBUyxDQUFDLEtBQ2hELEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjdmEsIHR5cGUgVmFyaWFudFByb3BzIH0gZnJvbSBcImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eVwiXG5pbXBvcnQgeyBjbiB9IGZyb20gXCIuLi91dGlscy9zdHlsZS50c1wiXG5cbmNvbnN0IGFsZXJ0VmFyaWFudHMgPSBjdmEoXG4gIFwiZ3JpZCBnYXAtMC41IHJvdW5kZWQtbGcgYm9yZGVyIHB4LTQgcHktMyB0ZXh0LWxlZnQgdGV4dC1zbSBoYXMtZGF0YS1bc2xvdD1hbGVydC1hY3Rpb25dOnJlbGF0aXZlIGhhcy1kYXRhLVtzbG90PWFsZXJ0LWFjdGlvbl06cHItMTggaGFzLVs+c3ZnXTpncmlkLWNvbHMtW2F1dG9fMWZyXSBoYXMtWz5zdmddOmdhcC14LTIuNSAqOltzdmddOnJvdy1zcGFuLTIgKjpbc3ZnXTp0cmFuc2xhdGUteS0wLjUgKjpbc3ZnXTp0ZXh0LWN1cnJlbnQgKjpbc3ZnOm5vdChbY2xhc3MqPSdzaXplLSddKV06c2l6ZS00IHctZnVsbCByZWxhdGl2ZSBncm91cC9hbGVydFwiLFxuICB7XG4gICAgdmFyaWFudHM6IHtcbiAgICAgIHZhcmlhbnQ6IHtcbiAgICAgICAgZGVmYXVsdDogXCJiZy1jYXJkIHRleHQtY2FyZC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgIGRlc3RydWN0aXZlOlxuICAgICAgICAgIFwidGV4dC1kZXN0cnVjdGl2ZSBiZy1jYXJkICo6ZGF0YS1bc2xvdD1hbGVydC1kZXNjcmlwdGlvbl06dGV4dC1kZXN0cnVjdGl2ZS85MCAqOltzdmddOnRleHQtY3VycmVudFwiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRWYXJpYW50czoge1xuICAgICAgdmFyaWFudDogXCJkZWZhdWx0XCIsXG4gICAgfSxcbiAgfSxcbilcblxuZnVuY3Rpb24gQWxlcnQoe1xuICBjbGFzc05hbWUsXG4gIHZhcmlhbnQsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPiAmIFZhcmlhbnRQcm9wczx0eXBlb2YgYWxlcnRWYXJpYW50cz4pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXNsb3Q9XCJhbGVydFwiXG4gICAgICByb2xlPVwiYWxlcnRcIlxuICAgICAgY2xhc3NOYW1lPXtjbihhbGVydFZhcmlhbnRzKHsgdmFyaWFudCB9KSwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEFsZXJ0VGl0bGUoeyBjbGFzc05hbWUsIC4uLnByb3BzIH06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwiZGl2XCI+KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS1zbG90PVwiYWxlcnQtdGl0bGVcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJmb250LW1lZGl1bSBncm91cC1oYXMtWz5zdmddL2FsZXJ0OmNvbC1zdGFydC0yIFsmX2FdOmhvdmVyOnRleHQtZm9yZWdyb3VuZCBbJl9hXTp1bmRlcmxpbmUgWyZfYV06dW5kZXJsaW5lLW9mZnNldC0zXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBbGVydERlc2NyaXB0aW9uKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJkaXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXNsb3Q9XCJhbGVydC1kZXNjcmlwdGlvblwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcInRleHQtbXV0ZWQtZm9yZWdyb3VuZCB0ZXh0LXNtIHRleHQtYmFsYW5jZSBtZDp0ZXh0LXByZXR0eSBbJl9wOm5vdCg6bGFzdC1jaGlsZCldOm1iLTQgWyZfYV06aG92ZXI6dGV4dC1mb3JlZ3JvdW5kIFsmX2FdOnVuZGVybGluZSBbJl9hXTp1bmRlcmxpbmUtb2Zmc2V0LTNcIixcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEFsZXJ0QWN0aW9uKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGRhdGEtc2xvdD1cImFsZXJ0LWFjdGlvblwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwiYWJzb2x1dGUgdG9wLTIuNSByaWdodC0zXCIsIGNsYXNzTmFtZSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5leHBvcnQgeyBBbGVydCwgQWxlcnRUaXRsZSwgQWxlcnREZXNjcmlwdGlvbiwgQWxlcnRBY3Rpb24gfVxuIl19
@@ -0,0 +1,4 @@
1
+ declare function AspectRatio({ ratio, className, ...props }: React.ComponentProps<"div"> & {
2
+ ratio: number;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ export { AspectRatio };
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from "../utils/style.js";
3
+ function AspectRatio({ ratio, className, ...props }) {
4
+ return (_jsx("div", { "data-slot": "aspect-ratio", style: {
5
+ "--ratio": ratio,
6
+ }, className: cn("relative aspect-(--ratio)", className), ...props }));
7
+ }
8
+ export { AspectRatio };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNwZWN0LXJhdGlvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL2VsZW1lbnRzL2FzcGVjdC1yYXRpby50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUV0QyxTQUFTLFdBQVcsQ0FBQyxFQUNuQixLQUFLLEVBQ0wsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUN3QztJQUNoRCxPQUFPLENBQ0wsMkJBQ1ksY0FBYyxFQUN4QixLQUFLLEVBQ0g7WUFDRSxTQUFTLEVBQUUsS0FBSztTQUNNLEVBRTFCLFNBQVMsRUFBRSxFQUFFLENBQUMsMkJBQTJCLEVBQUUsU0FBUyxDQUFDLEtBQ2pELEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vdXRpbHMvc3R5bGUudHNcIlxuXG5mdW5jdGlvbiBBc3BlY3RSYXRpbyh7XG4gIHJhdGlvLFxuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImRpdlwiPiAmIHsgcmF0aW86IG51bWJlciB9KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS1zbG90PVwiYXNwZWN0LXJhdGlvXCJcbiAgICAgIHN0eWxlPXtcbiAgICAgICAge1xuICAgICAgICAgIFwiLS1yYXRpb1wiOiByYXRpbyxcbiAgICAgICAgfSBhcyBSZWFjdC5DU1NQcm9wZXJ0aWVzXG4gICAgICB9XG4gICAgICBjbGFzc05hbWU9e2NuKFwicmVsYXRpdmUgYXNwZWN0LSgtLXJhdGlvKVwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZXhwb3J0IHsgQXNwZWN0UmF0aW8gfVxuIl19
@@ -0,0 +1,11 @@
1
+ import * as React from "react";
2
+ import { Avatar as AvatarPrimitive } from "@base-ui/react/avatar";
3
+ declare function Avatar({ className, size, ...props }: AvatarPrimitive.Root.Props & {
4
+ size?: "default" | "sm" | "lg";
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ declare function AvatarImage({ className, ...props }: AvatarPrimitive.Image.Props): import("react/jsx-runtime").JSX.Element;
7
+ declare function AvatarFallback({ className, ...props }: AvatarPrimitive.Fallback.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function AvatarBadge({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
9
+ declare function AvatarGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
10
+ declare function AvatarGroupCount({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
11
+ export { Avatar, AvatarImage, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarBadge, };
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Avatar as AvatarPrimitive } from "@base-ui/react/avatar";
3
+ import { cn } from "../utils/style.js";
4
+ function Avatar({ className, size = "default", ...props }) {
5
+ return (_jsx(AvatarPrimitive.Root, { "data-slot": "avatar", "data-size": size, className: cn("group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten", className), ...props }));
6
+ }
7
+ function AvatarImage({ className, ...props }) {
8
+ return (_jsx(AvatarPrimitive.Image, { "data-slot": "avatar-image", className: cn("aspect-square size-full rounded-full object-cover", className), ...props }));
9
+ }
10
+ function AvatarFallback({ className, ...props }) {
11
+ return (_jsx(AvatarPrimitive.Fallback, { "data-slot": "avatar-fallback", className: cn("flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs", className), ...props }));
12
+ }
13
+ function AvatarBadge({ className, ...props }) {
14
+ return (_jsx("span", { "data-slot": "avatar-badge", className: cn("absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground bg-blend-color ring-2 ring-background select-none", "group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden", "group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2", "group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2", className), ...props }));
15
+ }
16
+ function AvatarGroup({ className, ...props }) {
17
+ return (_jsx("div", { "data-slot": "avatar-group", className: cn("group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background", className), ...props }));
18
+ }
19
+ function AvatarGroupCount({ className, ...props }) {
20
+ return (_jsx("div", { "data-slot": "avatar-group-count", className: cn("relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3", className), ...props }));
21
+ }
22
+ export { Avatar, AvatarImage, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarBadge, };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL2VsZW1lbnRzL2F2YXRhci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxNQUFNLElBQUksZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFakUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXRDLFNBQVMsTUFBTSxDQUFDLEVBQ2QsU0FBUyxFQUNULElBQUksR0FBRyxTQUFTLEVBQ2hCLEdBQUcsS0FBSyxFQUdUO0lBQ0MsT0FBTyxDQUNMLEtBQUMsZUFBZSxDQUFDLElBQUksaUJBQ1QsUUFBUSxlQUNQLElBQUksRUFDZixTQUFTLEVBQUUsRUFBRSxDQUNYLHVQQUF1UCxFQUN2UCxTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUN2RSxPQUFPLENBQ0wsS0FBQyxlQUFlLENBQUMsS0FBSyxpQkFDVixjQUFjLEVBQ3hCLFNBQVMsRUFBRSxFQUFFLENBQ1gsbURBQW1ELEVBQ25ELFNBQVMsQ0FDVixLQUNHLEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsRUFDdEIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUN1QjtJQUMvQixPQUFPLENBQ0wsS0FBQyxlQUFlLENBQUMsUUFBUSxpQkFDYixpQkFBaUIsRUFDM0IsU0FBUyxFQUFFLEVBQUUsQ0FDWCxvSUFBb0ksRUFDcEksU0FBUyxDQUNWLEtBQ0csS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEtBQUssRUFBZ0M7SUFDeEUsT0FBTyxDQUNMLDRCQUNZLGNBQWMsRUFDeEIsU0FBUyxFQUFFLEVBQUUsQ0FDWCwwS0FBMEssRUFDMUssK0VBQStFLEVBQy9FLDJGQUEyRixFQUMzRiwrRUFBK0UsRUFDL0UsU0FBUyxDQUNWLEtBQ0csS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEtBQUssRUFBK0I7SUFDdkUsT0FBTyxDQUNMLDJCQUNZLGNBQWMsRUFDeEIsU0FBUyxFQUFFLEVBQUUsQ0FDWCxxR0FBcUcsRUFDckcsU0FBUyxDQUNWLEtBQ0csS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQixDQUFDLEVBQ3hCLFNBQVMsRUFDVCxHQUFHLEtBQUssRUFDb0I7SUFDNUIsT0FBTyxDQUNMLDJCQUNZLG9CQUFvQixFQUM5QixTQUFTLEVBQUUsRUFBRSxDQUNYLDBWQUEwVixFQUMxVixTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELE9BQU8sRUFDTCxNQUFNLEVBQ04sV0FBVyxFQUNYLGNBQWMsRUFDZCxXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLFdBQVcsR0FDWixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IEF2YXRhciBhcyBBdmF0YXJQcmltaXRpdmUgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvYXZhdGFyXCJcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vdXRpbHMvc3R5bGUudHNcIlxuXG5mdW5jdGlvbiBBdmF0YXIoe1xuICBjbGFzc05hbWUsXG4gIHNpemUgPSBcImRlZmF1bHRcIixcbiAgLi4ucHJvcHNcbn06IEF2YXRhclByaW1pdGl2ZS5Sb290LlByb3BzICYge1xuICBzaXplPzogXCJkZWZhdWx0XCIgfCBcInNtXCIgfCBcImxnXCJcbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8QXZhdGFyUHJpbWl0aXZlLlJvb3RcbiAgICAgIGRhdGEtc2xvdD1cImF2YXRhclwiXG4gICAgICBkYXRhLXNpemU9e3NpemV9XG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImdyb3VwL2F2YXRhciByZWxhdGl2ZSBmbGV4IHNpemUtOCBzaHJpbmstMCByb3VuZGVkLWZ1bGwgc2VsZWN0LW5vbmUgYWZ0ZXI6YWJzb2x1dGUgYWZ0ZXI6aW5zZXQtMCBhZnRlcjpyb3VuZGVkLWZ1bGwgYWZ0ZXI6Ym9yZGVyIGFmdGVyOmJvcmRlci1ib3JkZXIgYWZ0ZXI6bWl4LWJsZW5kLWRhcmtlbiBkYXRhLVtzaXplPWxnXTpzaXplLTEwIGRhdGEtW3NpemU9c21dOnNpemUtNiBkYXJrOmFmdGVyOm1peC1ibGVuZC1saWdodGVuXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBdmF0YXJJbWFnZSh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogQXZhdGFyUHJpbWl0aXZlLkltYWdlLlByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPEF2YXRhclByaW1pdGl2ZS5JbWFnZVxuICAgICAgZGF0YS1zbG90PVwiYXZhdGFyLWltYWdlXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiYXNwZWN0LXNxdWFyZSBzaXplLWZ1bGwgcm91bmRlZC1mdWxsIG9iamVjdC1jb3ZlclwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQXZhdGFyRmFsbGJhY2soe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBBdmF0YXJQcmltaXRpdmUuRmFsbGJhY2suUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8QXZhdGFyUHJpbWl0aXZlLkZhbGxiYWNrXG4gICAgICBkYXRhLXNsb3Q9XCJhdmF0YXItZmFsbGJhY2tcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJmbGV4IHNpemUtZnVsbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJnLW11dGVkIHRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIGdyb3VwLWRhdGEtW3NpemU9c21dL2F2YXRhcjp0ZXh0LXhzXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBdmF0YXJCYWRnZSh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJzcGFuXCI+KSB7XG4gIHJldHVybiAoXG4gICAgPHNwYW5cbiAgICAgIGRhdGEtc2xvdD1cImF2YXRhci1iYWRnZVwiXG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImFic29sdXRlIHJpZ2h0LTAgYm90dG9tLTAgei0xMCBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJnLXByaW1hcnkgdGV4dC1wcmltYXJ5LWZvcmVncm91bmQgYmctYmxlbmQtY29sb3IgcmluZy0yIHJpbmctYmFja2dyb3VuZCBzZWxlY3Qtbm9uZVwiLFxuICAgICAgICBcImdyb3VwLWRhdGEtW3NpemU9c21dL2F2YXRhcjpzaXplLTIgZ3JvdXAtZGF0YS1bc2l6ZT1zbV0vYXZhdGFyOlsmPnN2Z106aGlkZGVuXCIsXG4gICAgICAgIFwiZ3JvdXAtZGF0YS1bc2l6ZT1kZWZhdWx0XS9hdmF0YXI6c2l6ZS0yLjUgZ3JvdXAtZGF0YS1bc2l6ZT1kZWZhdWx0XS9hdmF0YXI6WyY+c3ZnXTpzaXplLTJcIixcbiAgICAgICAgXCJncm91cC1kYXRhLVtzaXplPWxnXS9hdmF0YXI6c2l6ZS0zIGdyb3VwLWRhdGEtW3NpemU9bGddL2F2YXRhcjpbJj5zdmddOnNpemUtMlwiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQXZhdGFyR3JvdXAoeyBjbGFzc05hbWUsIC4uLnByb3BzIH06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwiZGl2XCI+KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS1zbG90PVwiYXZhdGFyLWdyb3VwXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZ3JvdXAvYXZhdGFyLWdyb3VwIGZsZXggLXNwYWNlLXgtMiAqOmRhdGEtW3Nsb3Q9YXZhdGFyXTpyaW5nLTIgKjpkYXRhLVtzbG90PWF2YXRhcl06cmluZy1iYWNrZ3JvdW5kXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBBdmF0YXJHcm91cENvdW50KHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJkaXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXNsb3Q9XCJhdmF0YXItZ3JvdXAtY291bnRcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJyZWxhdGl2ZSBmbGV4IHNpemUtOCBzaHJpbmstMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJnLW11dGVkIHRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIHJpbmctMiByaW5nLWJhY2tncm91bmQgZ3JvdXAtaGFzLWRhdGEtW3NpemU9bGddL2F2YXRhci1ncm91cDpzaXplLTEwIGdyb3VwLWhhcy1kYXRhLVtzaXplPXNtXS9hdmF0YXItZ3JvdXA6c2l6ZS02IFsmPnN2Z106c2l6ZS00IGdyb3VwLWhhcy1kYXRhLVtzaXplPWxnXS9hdmF0YXItZ3JvdXA6WyY+c3ZnXTpzaXplLTUgZ3JvdXAtaGFzLWRhdGEtW3NpemU9c21dL2F2YXRhci1ncm91cDpbJj5zdmddOnNpemUtM1wiLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZXhwb3J0IHtcbiAgQXZhdGFyLFxuICBBdmF0YXJJbWFnZSxcbiAgQXZhdGFyRmFsbGJhY2ssXG4gIEF2YXRhckdyb3VwLFxuICBBdmF0YXJHcm91cENvdW50LFxuICBBdmF0YXJCYWRnZSxcbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ import { useRender } from "@base-ui/react/use-render";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ declare const badgeVariants: (props?: ({
4
+ variant?: "default" | "destructive" | "ghost" | "link" | "outline" | "secondary" | null | undefined;
5
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
+ declare function Badge({ className, variant, render, ...props }: useRender.ComponentProps<"span"> & VariantProps<typeof badgeVariants>): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
7
+ export { Badge, badgeVariants };
@@ -0,0 +1,34 @@
1
+ import { mergeProps } from "@base-ui/react/merge-props";
2
+ import { useRender } from "@base-ui/react/use-render";
3
+ import { cva } from "class-variance-authority";
4
+ import { cn } from "../utils/style.js";
5
+ const badgeVariants = cva("h-5 gap-1 rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium transition-all has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&>svg]:size-3! inline-flex items-center justify-center w-fit whitespace-nowrap shrink-0 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive overflow-hidden group/badge", {
6
+ variants: {
7
+ variant: {
8
+ default: "bg-primary text-primary-foreground [a]:hover:bg-primary/80",
9
+ secondary: "bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",
10
+ destructive: "bg-destructive/10 [a]:hover:bg-destructive/20 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 text-destructive dark:bg-destructive/20",
11
+ outline: "border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",
12
+ ghost: "hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",
13
+ link: "text-primary underline-offset-4 hover:underline",
14
+ },
15
+ },
16
+ defaultVariants: {
17
+ variant: "default",
18
+ },
19
+ });
20
+ function Badge({ className, variant = "default", render, ...props }) {
21
+ return useRender({
22
+ defaultTagName: "span",
23
+ props: mergeProps({
24
+ className: cn(badgeVariants({ className, variant })),
25
+ }, props),
26
+ render,
27
+ state: {
28
+ slot: "badge",
29
+ variant,
30
+ },
31
+ });
32
+ }
33
+ export { Badge, badgeVariants };
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZWxlbWVudHMvYmFkZ2UudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDckQsT0FBTyxFQUFFLEdBQUcsRUFBcUIsTUFBTSwwQkFBMEIsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFdEMsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUN2Qiw0ZUFBNGUsRUFDNWU7SUFDRSxRQUFRLEVBQUU7UUFDUixPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsNERBQTREO1lBQ3JFLFNBQVMsRUFDUCxrRUFBa0U7WUFDcEUsV0FBVyxFQUNULGdLQUFnSztZQUNsSyxPQUFPLEVBQ0wsa0ZBQWtGO1lBQ3BGLEtBQUssRUFDSCxtRUFBbUU7WUFDckUsSUFBSSxFQUFFLGlEQUFpRDtTQUN4RDtLQUNGO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsT0FBTyxFQUFFLFNBQVM7S0FDbkI7Q0FDRixDQUNGLENBQUE7QUFFRCxTQUFTLEtBQUssQ0FBQyxFQUNiLFNBQVMsRUFDVCxPQUFPLEdBQUcsU0FBUyxFQUNuQixNQUFNLEVBQ04sR0FBRyxLQUFLLEVBQzhEO0lBQ3RFLE9BQU8sU0FBUyxDQUFDO1FBQ2YsY0FBYyxFQUFFLE1BQU07UUFDdEIsS0FBSyxFQUFFLFVBQVUsQ0FDZjtZQUNFLFNBQVMsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7U0FDckQsRUFDRCxLQUFLLENBQ047UUFDRCxNQUFNO1FBQ04sS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLE9BQU87WUFDYixPQUFPO1NBQ1I7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsT0FBTyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1lcmdlUHJvcHMgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvbWVyZ2UtcHJvcHNcIlxuaW1wb3J0IHsgdXNlUmVuZGVyIH0gZnJvbSBcIkBiYXNlLXVpL3JlYWN0L3VzZS1yZW5kZXJcIlxuaW1wb3J0IHsgY3ZhLCB0eXBlIFZhcmlhbnRQcm9wcyB9IGZyb20gXCJjbGFzcy12YXJpYW5jZS1hdXRob3JpdHlcIlxuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vdXRpbHMvc3R5bGUudHNcIlxuXG5jb25zdCBiYWRnZVZhcmlhbnRzID0gY3ZhKFxuICBcImgtNSBnYXAtMSByb3VuZGVkLTR4bCBib3JkZXIgYm9yZGVyLXRyYW5zcGFyZW50IHB4LTIgcHktMC41IHRleHQteHMgZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1hbGwgaGFzLWRhdGEtW2ljb249aW5saW5lLWVuZF06cHItMS41IGhhcy1kYXRhLVtpY29uPWlubGluZS1zdGFydF06cGwtMS41IFsmPnN2Z106c2l6ZS0zISBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdy1maXQgd2hpdGVzcGFjZS1ub3dyYXAgc2hyaW5rLTAgWyY+c3ZnXTpwb2ludGVyLWV2ZW50cy1ub25lIGZvY3VzLXZpc2libGU6Ym9yZGVyLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcvNTAgZm9jdXMtdmlzaWJsZTpyaW5nLVszcHhdIGFyaWEtaW52YWxpZDpyaW5nLWRlc3RydWN0aXZlLzIwIGRhcms6YXJpYS1pbnZhbGlkOnJpbmctZGVzdHJ1Y3RpdmUvNDAgYXJpYS1pbnZhbGlkOmJvcmRlci1kZXN0cnVjdGl2ZSBvdmVyZmxvdy1oaWRkZW4gZ3JvdXAvYmFkZ2VcIixcbiAge1xuICAgIHZhcmlhbnRzOiB7XG4gICAgICB2YXJpYW50OiB7XG4gICAgICAgIGRlZmF1bHQ6IFwiYmctcHJpbWFyeSB0ZXh0LXByaW1hcnktZm9yZWdyb3VuZCBbYV06aG92ZXI6YmctcHJpbWFyeS84MFwiLFxuICAgICAgICBzZWNvbmRhcnk6XG4gICAgICAgICAgXCJiZy1zZWNvbmRhcnkgdGV4dC1zZWNvbmRhcnktZm9yZWdyb3VuZCBbYV06aG92ZXI6Ymctc2Vjb25kYXJ5LzgwXCIsXG4gICAgICAgIGRlc3RydWN0aXZlOlxuICAgICAgICAgIFwiYmctZGVzdHJ1Y3RpdmUvMTAgW2FdOmhvdmVyOmJnLWRlc3RydWN0aXZlLzIwIGZvY3VzLXZpc2libGU6cmluZy1kZXN0cnVjdGl2ZS8yMCBkYXJrOmZvY3VzLXZpc2libGU6cmluZy1kZXN0cnVjdGl2ZS80MCB0ZXh0LWRlc3RydWN0aXZlIGRhcms6YmctZGVzdHJ1Y3RpdmUvMjBcIixcbiAgICAgICAgb3V0bGluZTpcbiAgICAgICAgICBcImJvcmRlci1ib3JkZXIgdGV4dC1mb3JlZ3JvdW5kIFthXTpob3ZlcjpiZy1tdXRlZCBbYV06aG92ZXI6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgIGdob3N0OlxuICAgICAgICAgIFwiaG92ZXI6YmctbXV0ZWQgaG92ZXI6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kIGRhcms6aG92ZXI6YmctbXV0ZWQvNTBcIixcbiAgICAgICAgbGluazogXCJ0ZXh0LXByaW1hcnkgdW5kZXJsaW5lLW9mZnNldC00IGhvdmVyOnVuZGVybGluZVwiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRWYXJpYW50czoge1xuICAgICAgdmFyaWFudDogXCJkZWZhdWx0XCIsXG4gICAgfSxcbiAgfSxcbilcblxuZnVuY3Rpb24gQmFkZ2Uoe1xuICBjbGFzc05hbWUsXG4gIHZhcmlhbnQgPSBcImRlZmF1bHRcIixcbiAgcmVuZGVyLFxuICAuLi5wcm9wc1xufTogdXNlUmVuZGVyLkNvbXBvbmVudFByb3BzPFwic3BhblwiPiAmIFZhcmlhbnRQcm9wczx0eXBlb2YgYmFkZ2VWYXJpYW50cz4pIHtcbiAgcmV0dXJuIHVzZVJlbmRlcih7XG4gICAgZGVmYXVsdFRhZ05hbWU6IFwic3BhblwiLFxuICAgIHByb3BzOiBtZXJnZVByb3BzPFwic3BhblwiPihcbiAgICAgIHtcbiAgICAgICAgY2xhc3NOYW1lOiBjbihiYWRnZVZhcmlhbnRzKHsgY2xhc3NOYW1lLCB2YXJpYW50IH0pKSxcbiAgICAgIH0sXG4gICAgICBwcm9wcyxcbiAgICApLFxuICAgIHJlbmRlcixcbiAgICBzdGF0ZToge1xuICAgICAgc2xvdDogXCJiYWRnZVwiLFxuICAgICAgdmFyaWFudCxcbiAgICB9LFxuICB9KVxufVxuXG5leHBvcnQgeyBCYWRnZSwgYmFkZ2VWYXJpYW50cyB9XG4iXX0=
@@ -0,0 +1,9 @@
1
+ import { useRender } from "@base-ui/react/use-render";
2
+ declare function Breadcrumb({ className, ...props }: React.ComponentProps<"nav">): import("react/jsx-runtime").JSX.Element;
3
+ declare function BreadcrumbList({ className, ...props }: React.ComponentProps<"ol">): import("react/jsx-runtime").JSX.Element;
4
+ declare function BreadcrumbItem({ className, ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
5
+ declare function BreadcrumbLink({ className, render, ...props }: useRender.ComponentProps<"a">): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
6
+ declare function BreadcrumbPage({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
7
+ declare function BreadcrumbSeparator({ children, className, ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
8
+ declare function BreadcrumbEllipsis({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
9
+ export { Breadcrumb, BreadcrumbList, BreadcrumbItem, BreadcrumbLink, BreadcrumbPage, BreadcrumbSeparator, BreadcrumbEllipsis, };
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { mergeProps } from "@base-ui/react/merge-props";
3
+ import { useRender } from "@base-ui/react/use-render";
4
+ import { ChevronRightIcon, MoreHorizontalIcon } from "lucide-react";
5
+ import { cn } from "../utils/style.js";
6
+ function Breadcrumb({ className, ...props }) {
7
+ return (_jsx("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", className: cn(className), ...props }));
8
+ }
9
+ function BreadcrumbList({ className, ...props }) {
10
+ return (_jsx("ol", { "data-slot": "breadcrumb-list", className: cn("text-muted-foreground gap-1.5 text-sm sm:gap-2.5 flex flex-wrap items-center break-words", className), ...props }));
11
+ }
12
+ function BreadcrumbItem({ className, ...props }) {
13
+ return (_jsx("li", { "data-slot": "breadcrumb-item", className: cn("gap-1.5 inline-flex items-center", className), ...props }));
14
+ }
15
+ function BreadcrumbLink({ className, render, ...props }) {
16
+ return useRender({
17
+ defaultTagName: "a",
18
+ props: mergeProps({
19
+ className: cn("hover:text-foreground transition-colors", className),
20
+ }, props),
21
+ render,
22
+ state: {
23
+ slot: "breadcrumb-link",
24
+ },
25
+ });
26
+ }
27
+ function BreadcrumbPage({ className, ...props }) {
28
+ return (_jsx("span", { "data-slot": "breadcrumb-page", role: "link", "aria-disabled": "true", "aria-current": "page", className: cn("text-foreground font-normal", className), ...props }));
29
+ }
30
+ function BreadcrumbSeparator({ children, className, ...props }) {
31
+ return (_jsx("li", { "data-slot": "breadcrumb-separator", role: "presentation", "aria-hidden": "true", className: cn("[&>svg]:size-3.5", className), ...props, children: children ?? _jsx(ChevronRightIcon, {}) }));
32
+ }
33
+ function BreadcrumbEllipsis({ className, ...props }) {
34
+ return (_jsxs("span", { "data-slot": "breadcrumb-ellipsis", role: "presentation", "aria-hidden": "true", className: cn("size-5 [&>svg]:size-4 flex items-center justify-center", className), ...props, children: [
35
+ _jsx(MoreHorizontalIcon, {}), _jsx("span", { className: "sr-only", children: "More" })
36
+ ] }));
37
+ }
38
+ export { Breadcrumb, BreadcrumbList, BreadcrumbItem, BreadcrumbLink, BreadcrumbPage, BreadcrumbSeparator, BreadcrumbEllipsis, };
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NvdXJjZS9lbGVtZW50cy9icmVhZGNydW1iLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDbkUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXRDLFNBQVMsVUFBVSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUErQjtJQUN0RSxPQUFPLENBQ0wsNEJBQ2EsWUFBWSxlQUNiLFlBQVksRUFDdEIsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FDcEIsS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEtBQUssRUFBOEI7SUFDekUsT0FBTyxDQUNMLDBCQUNZLGlCQUFpQixFQUMzQixTQUFTLEVBQUUsRUFBRSxDQUNYLDBGQUEwRixFQUMxRixTQUFTLENBQ1YsS0FDRyxLQUFLLEdBQ1QsQ0FDSCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxFQUE4QjtJQUN6RSxPQUFPLENBQ0wsMEJBQ1ksaUJBQWlCLEVBQzNCLFNBQVMsRUFBRSxFQUFFLENBQUMsa0NBQWtDLEVBQUUsU0FBUyxDQUFDLEtBQ3hELEtBQUssR0FDVCxDQUNILENBQUE7QUFDSCxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsRUFDdEIsU0FBUyxFQUNULE1BQU0sRUFDTixHQUFHLEtBQUssRUFDc0I7SUFDOUIsT0FBTyxTQUFTLENBQUM7UUFDZixjQUFjLEVBQUUsR0FBRztRQUNuQixLQUFLLEVBQUUsVUFBVSxDQUNmO1lBQ0UsU0FBUyxFQUFFLEVBQUUsQ0FBQyx5Q0FBeUMsRUFBRSxTQUFTLENBQUM7U0FDcEUsRUFDRCxLQUFLLENBQ047UUFDRCxNQUFNO1FBQ04sS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLGlCQUFpQjtTQUN4QjtLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEtBQUssRUFBZ0M7SUFDM0UsT0FBTyxDQUNMLDRCQUNZLGlCQUFpQixFQUMzQixJQUFJLEVBQUMsTUFBTSxtQkFDRyxNQUFNLGtCQUNQLE1BQU0sRUFDbkIsU0FBUyxFQUFFLEVBQUUsQ0FBQyw2QkFBNkIsRUFBRSxTQUFTLENBQUMsS0FDbkQsS0FBSyxHQUNULENBQ0gsQ0FBQTtBQUNILENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLEVBQzNCLFFBQVEsRUFDUixTQUFTLEVBQ1QsR0FBRyxLQUFLLEVBQ21CO0lBQzNCLE9BQU8sQ0FDTCwwQkFDWSxzQkFBc0IsRUFDaEMsSUFBSSxFQUFDLGNBQWMsaUJBQ1AsTUFBTSxFQUNsQixTQUFTLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxLQUN4QyxLQUFLLFlBRVIsUUFBUSxJQUFJLEtBQUMsZ0JBQWdCLEtBQUcsR0FDOUIsQ0FDTixDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsRUFDMUIsU0FBUyxFQUNULEdBQUcsS0FBSyxFQUNxQjtJQUM3QixPQUFPLENBQ0wsNkJBQ1kscUJBQXFCLEVBQy9CLElBQUksRUFBQyxjQUFjLGlCQUNQLE1BQU0sRUFDbEIsU0FBUyxFQUFFLEVBQUUsQ0FDWCx3REFBd0QsRUFDeEQsU0FBUyxDQUNWLEtBQ0csS0FBSztZQUVULEtBQUMsa0JBQWtCLEtBQUcsRUFDdEIsZUFBTSxTQUFTLEVBQUMsU0FBUyxxQkFBWTtZQUNoQyxDQUNSLENBQUE7QUFDSCxDQUFDO0FBRUQsT0FBTyxFQUNMLFVBQVUsRUFDVixjQUFjLEVBQ2QsY0FBYyxFQUNkLGNBQWMsRUFDZCxjQUFjLEVBQ2QsbUJBQW1CLEVBQ25CLGtCQUFrQixHQUNuQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWVyZ2VQcm9wcyB9IGZyb20gXCJAYmFzZS11aS9yZWFjdC9tZXJnZS1wcm9wc1wiXG5pbXBvcnQgeyB1c2VSZW5kZXIgfSBmcm9tIFwiQGJhc2UtdWkvcmVhY3QvdXNlLXJlbmRlclwiXG5pbXBvcnQgeyBDaGV2cm9uUmlnaHRJY29uLCBNb3JlSG9yaXpvbnRhbEljb24gfSBmcm9tIFwibHVjaWRlLXJlYWN0XCJcbmltcG9ydCB7IGNuIH0gZnJvbSBcIi4uL3V0aWxzL3N0eWxlLnRzXCJcblxuZnVuY3Rpb24gQnJlYWRjcnVtYih7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJuYXZcIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8bmF2XG4gICAgICBhcmlhLWxhYmVsPVwiYnJlYWRjcnVtYlwiXG4gICAgICBkYXRhLXNsb3Q9XCJicmVhZGNydW1iXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmZ1bmN0aW9uIEJyZWFkY3J1bWJMaXN0KHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcIm9sXCI+KSB7XG4gIHJldHVybiAoXG4gICAgPG9sXG4gICAgICBkYXRhLXNsb3Q9XCJicmVhZGNydW1iLWxpc3RcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgXCJ0ZXh0LW11dGVkLWZvcmVncm91bmQgZ2FwLTEuNSB0ZXh0LXNtIHNtOmdhcC0yLjUgZmxleCBmbGV4LXdyYXAgaXRlbXMtY2VudGVyIGJyZWFrLXdvcmRzXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufVxuXG5mdW5jdGlvbiBCcmVhZGNydW1iSXRlbSh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogUmVhY3QuQ29tcG9uZW50UHJvcHM8XCJsaVwiPikge1xuICByZXR1cm4gKFxuICAgIDxsaVxuICAgICAgZGF0YS1zbG90PVwiYnJlYWRjcnVtYi1pdGVtXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXCJnYXAtMS41IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlclwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQnJlYWRjcnVtYkxpbmsoe1xuICBjbGFzc05hbWUsXG4gIHJlbmRlcixcbiAgLi4ucHJvcHNcbn06IHVzZVJlbmRlci5Db21wb25lbnRQcm9wczxcImFcIj4pIHtcbiAgcmV0dXJuIHVzZVJlbmRlcih7XG4gICAgZGVmYXVsdFRhZ05hbWU6IFwiYVwiLFxuICAgIHByb3BzOiBtZXJnZVByb3BzPFwiYVwiPihcbiAgICAgIHtcbiAgICAgICAgY2xhc3NOYW1lOiBjbihcImhvdmVyOnRleHQtZm9yZWdyb3VuZCB0cmFuc2l0aW9uLWNvbG9yc1wiLCBjbGFzc05hbWUpLFxuICAgICAgfSxcbiAgICAgIHByb3BzLFxuICAgICksXG4gICAgcmVuZGVyLFxuICAgIHN0YXRlOiB7XG4gICAgICBzbG90OiBcImJyZWFkY3J1bWItbGlua1wiLFxuICAgIH0sXG4gIH0pXG59XG5cbmZ1bmN0aW9uIEJyZWFkY3J1bWJQYWdlKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBSZWFjdC5Db21wb25lbnRQcm9wczxcInNwYW5cIj4pIHtcbiAgcmV0dXJuIChcbiAgICA8c3BhblxuICAgICAgZGF0YS1zbG90PVwiYnJlYWRjcnVtYi1wYWdlXCJcbiAgICAgIHJvbGU9XCJsaW5rXCJcbiAgICAgIGFyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJcbiAgICAgIGFyaWEtY3VycmVudD1cInBhZ2VcIlxuICAgICAgY2xhc3NOYW1lPXtjbihcInRleHQtZm9yZWdyb3VuZCBmb250LW5vcm1hbFwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cblxuZnVuY3Rpb24gQnJlYWRjcnVtYlNlcGFyYXRvcih7XG4gIGNoaWxkcmVuLFxuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5Db21wb25lbnRQcm9wczxcImxpXCI+KSB7XG4gIHJldHVybiAoXG4gICAgPGxpXG4gICAgICBkYXRhLXNsb3Q9XCJicmVhZGNydW1iLXNlcGFyYXRvclwiXG4gICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICBjbGFzc05hbWU9e2NuKFwiWyY+c3ZnXTpzaXplLTMuNVwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbiA/PyA8Q2hldnJvblJpZ2h0SWNvbiAvPn1cbiAgICA8L2xpPlxuICApXG59XG5cbmZ1bmN0aW9uIEJyZWFkY3J1bWJFbGxpcHNpcyh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkNvbXBvbmVudFByb3BzPFwic3BhblwiPikge1xuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICBkYXRhLXNsb3Q9XCJicmVhZGNydW1iLWVsbGlwc2lzXCJcbiAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIlxuICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwic2l6ZS01IFsmPnN2Z106c2l6ZS00IGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCIsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAgPE1vcmVIb3Jpem9udGFsSWNvbiAvPlxuICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPk1vcmU8L3NwYW4+XG4gICAgPC9zcGFuPlxuICApXG59XG5cbmV4cG9ydCB7XG4gIEJyZWFkY3J1bWIsXG4gIEJyZWFkY3J1bWJMaXN0LFxuICBCcmVhZGNydW1iSXRlbSxcbiAgQnJlYWRjcnVtYkxpbmssXG4gIEJyZWFkY3J1bWJQYWdlLFxuICBCcmVhZGNydW1iU2VwYXJhdG9yLFxuICBCcmVhZGNydW1iRWxsaXBzaXMsXG59XG4iXX0=
@@ -0,0 +1,10 @@
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 const buttonGroupVariants: (props?: ({
5
+ orientation?: "horizontal" | "vertical" | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ declare function ButtonGroup({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants>): import("react/jsx-runtime").JSX.Element;
8
+ declare function ButtonGroupText({ className, render, ...props }: useRender.ComponentProps<"div">): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
9
+ declare function ButtonGroupSeparator({ className, orientation, ...props }: React.ComponentProps<typeof Separator>): import("react/jsx-runtime").JSX.Element;
10
+ export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants, };