@nikala-ui/folio 0.13.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 (454) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +221 -0
  3. package/dist/cli/commands/build.d.ts +5 -0
  4. package/dist/cli/commands/build.d.ts.map +1 -0
  5. package/dist/cli/commands/build.js +28 -0
  6. package/dist/cli/commands/build.js.map +1 -0
  7. package/dist/cli/commands/dev.d.ts +7 -0
  8. package/dist/cli/commands/dev.d.ts.map +1 -0
  9. package/dist/cli/commands/dev.js +33 -0
  10. package/dist/cli/commands/dev.js.map +1 -0
  11. package/dist/cli/commands/init.d.ts +2 -0
  12. package/dist/cli/commands/init.d.ts.map +1 -0
  13. package/dist/cli/commands/init.js +359 -0
  14. package/dist/cli/commands/init.js.map +1 -0
  15. package/dist/cli/commands/preview.d.ts +7 -0
  16. package/dist/cli/commands/preview.d.ts.map +1 -0
  17. package/dist/cli/commands/preview.js +25 -0
  18. package/dist/cli/commands/preview.js.map +1 -0
  19. package/dist/cli/commands/serve.d.ts +7 -0
  20. package/dist/cli/commands/serve.d.ts.map +1 -0
  21. package/dist/cli/commands/serve.js +34 -0
  22. package/dist/cli/commands/serve.js.map +1 -0
  23. package/dist/cli/index.d.ts +3 -0
  24. package/dist/cli/index.d.ts.map +1 -0
  25. package/dist/cli/index.js +55 -0
  26. package/dist/cli/index.js.map +1 -0
  27. package/dist/client/app-types.d.ts +18 -0
  28. package/dist/client/app-types.d.ts.map +1 -0
  29. package/dist/client/app-types.js +2 -0
  30. package/dist/client/app-types.js.map +1 -0
  31. package/dist/client/app.d.ts +5 -0
  32. package/dist/client/app.d.ts.map +1 -0
  33. package/dist/client/app.jsx +51 -0
  34. package/dist/client/app.jsx.map +1 -0
  35. package/dist/client/base.css +90 -0
  36. package/dist/client/components/docs-layout-shell.d.ts +23 -0
  37. package/dist/client/components/docs-layout-shell.d.ts.map +1 -0
  38. package/dist/client/components/docs-layout-shell.jsx +15 -0
  39. package/dist/client/components/docs-layout-shell.jsx.map +1 -0
  40. package/dist/client/components/docs-page-content.d.ts +9 -0
  41. package/dist/client/components/docs-page-content.d.ts.map +1 -0
  42. package/dist/client/components/docs-page-content.jsx +10 -0
  43. package/dist/client/components/docs-page-content.jsx.map +1 -0
  44. package/dist/client/entry.d.ts +2 -0
  45. package/dist/client/entry.d.ts.map +1 -0
  46. package/dist/client/entry.jsx +32 -0
  47. package/dist/client/entry.jsx.map +1 -0
  48. package/dist/client/index.html +23 -0
  49. package/dist/client/navigation/page-navigation.d.ts +9 -0
  50. package/dist/client/navigation/page-navigation.d.ts.map +1 -0
  51. package/dist/client/navigation/page-navigation.js +51 -0
  52. package/dist/client/navigation/page-navigation.js.map +1 -0
  53. package/dist/client/page-actions.d.ts +10 -0
  54. package/dist/client/page-actions.d.ts.map +1 -0
  55. package/dist/client/page-actions.js +63 -0
  56. package/dist/client/page-actions.js.map +1 -0
  57. package/dist/client/public/favicon.ico +0 -0
  58. package/dist/client/routing/use-docs-router.d.ts +17 -0
  59. package/dist/client/routing/use-docs-router.d.ts.map +1 -0
  60. package/dist/client/routing/use-docs-router.js +87 -0
  61. package/dist/client/routing/use-docs-router.js.map +1 -0
  62. package/dist/client/ssr-entry.d.ts +3 -0
  63. package/dist/client/ssr-entry.d.ts.map +1 -0
  64. package/dist/client/ssr-entry.jsx +13 -0
  65. package/dist/client/ssr-entry.jsx.map +1 -0
  66. package/dist/client/style.css +186 -0
  67. package/dist/client/utils/sidebar.d.ts +2 -0
  68. package/dist/client/utils/sidebar.d.ts.map +1 -0
  69. package/dist/client/utils/sidebar.js +2 -0
  70. package/dist/client/utils/sidebar.js.map +1 -0
  71. package/dist/components/mdx-components.d.ts +65 -0
  72. package/dist/components/mdx-components.d.ts.map +1 -0
  73. package/dist/components/mdx-components.jsx +133 -0
  74. package/dist/components/mdx-components.jsx.map +1 -0
  75. package/dist/components/ui/api-table.d.ts +29 -0
  76. package/dist/components/ui/api-table.d.ts.map +1 -0
  77. package/dist/components/ui/api-table.jsx +66 -0
  78. package/dist/components/ui/api-table.jsx.map +1 -0
  79. package/dist/components/ui/badge.d.ts +17 -0
  80. package/dist/components/ui/badge.d.ts.map +1 -0
  81. package/dist/components/ui/badge.jsx +33 -0
  82. package/dist/components/ui/badge.jsx.map +1 -0
  83. package/dist/components/ui/breadcrumb.d.ts +51 -0
  84. package/dist/components/ui/breadcrumb.d.ts.map +1 -0
  85. package/dist/components/ui/breadcrumb.jsx +62 -0
  86. package/dist/components/ui/breadcrumb.jsx.map +1 -0
  87. package/dist/components/ui/button.d.ts +19 -0
  88. package/dist/components/ui/button.d.ts.map +1 -0
  89. package/dist/components/ui/button.jsx +54 -0
  90. package/dist/components/ui/button.jsx.map +1 -0
  91. package/dist/components/ui/callout.d.ts +21 -0
  92. package/dist/components/ui/callout.d.ts.map +1 -0
  93. package/dist/components/ui/callout.jsx +76 -0
  94. package/dist/components/ui/callout.jsx.map +1 -0
  95. package/dist/components/ui/card.d.ts +44 -0
  96. package/dist/components/ui/card.d.ts.map +1 -0
  97. package/dist/components/ui/card.jsx +45 -0
  98. package/dist/components/ui/card.jsx.map +1 -0
  99. package/dist/components/ui/code-block.d.ts +23 -0
  100. package/dist/components/ui/code-block.d.ts.map +1 -0
  101. package/dist/components/ui/code-block.jsx +263 -0
  102. package/dist/components/ui/code-block.jsx.map +1 -0
  103. package/dist/components/ui/collapsible.d.ts +27 -0
  104. package/dist/components/ui/collapsible.d.ts.map +1 -0
  105. package/dist/components/ui/collapsible.jsx +29 -0
  106. package/dist/components/ui/collapsible.jsx.map +1 -0
  107. package/dist/components/ui/command.d.ts +57 -0
  108. package/dist/components/ui/command.d.ts.map +1 -0
  109. package/dist/components/ui/command.jsx +224 -0
  110. package/dist/components/ui/command.jsx.map +1 -0
  111. package/dist/components/ui/component-viewer.d.ts +33 -0
  112. package/dist/components/ui/component-viewer.d.ts.map +1 -0
  113. package/dist/components/ui/component-viewer.jsx +210 -0
  114. package/dist/components/ui/component-viewer.jsx.map +1 -0
  115. package/dist/components/ui/container.d.ts +13 -0
  116. package/dist/components/ui/container.d.ts.map +1 -0
  117. package/dist/components/ui/container.jsx +29 -0
  118. package/dist/components/ui/container.jsx.map +1 -0
  119. package/dist/components/ui/dropdown-menu.d.ts +58 -0
  120. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  121. package/dist/components/ui/dropdown-menu.jsx +112 -0
  122. package/dist/components/ui/dropdown-menu.jsx.map +1 -0
  123. package/dist/components/ui/input-group.d.ts +16 -0
  124. package/dist/components/ui/input-group.d.ts.map +1 -0
  125. package/dist/components/ui/input-group.jsx +33 -0
  126. package/dist/components/ui/input-group.jsx.map +1 -0
  127. package/dist/components/ui/kbd.d.ts +15 -0
  128. package/dist/components/ui/kbd.d.ts.map +1 -0
  129. package/dist/components/ui/kbd.jsx +42 -0
  130. package/dist/components/ui/kbd.jsx.map +1 -0
  131. package/dist/components/ui/list.d.ts +36 -0
  132. package/dist/components/ui/list.d.ts.map +1 -0
  133. package/dist/components/ui/list.jsx +131 -0
  134. package/dist/components/ui/list.jsx.map +1 -0
  135. package/dist/components/ui/logo.d.ts +9 -0
  136. package/dist/components/ui/logo.d.ts.map +1 -0
  137. package/dist/components/ui/logo.jsx +31 -0
  138. package/dist/components/ui/logo.jsx.map +1 -0
  139. package/dist/components/ui/navbar.d.ts +57 -0
  140. package/dist/components/ui/navbar.d.ts.map +1 -0
  141. package/dist/components/ui/navbar.jsx +174 -0
  142. package/dist/components/ui/navbar.jsx.map +1 -0
  143. package/dist/components/ui/package-manager-tabs.d.ts +21 -0
  144. package/dist/components/ui/package-manager-tabs.d.ts.map +1 -0
  145. package/dist/components/ui/package-manager-tabs.jsx +167 -0
  146. package/dist/components/ui/package-manager-tabs.jsx.map +1 -0
  147. package/dist/components/ui/pager.d.ts +27 -0
  148. package/dist/components/ui/pager.d.ts.map +1 -0
  149. package/dist/components/ui/pager.jsx +50 -0
  150. package/dist/components/ui/pager.jsx.map +1 -0
  151. package/dist/components/ui/scroll-area.d.ts +9 -0
  152. package/dist/components/ui/scroll-area.d.ts.map +1 -0
  153. package/dist/components/ui/scroll-area.jsx +160 -0
  154. package/dist/components/ui/scroll-area.jsx.map +1 -0
  155. package/dist/components/ui/section-heading.d.ts +23 -0
  156. package/dist/components/ui/section-heading.d.ts.map +1 -0
  157. package/dist/components/ui/section-heading.jsx +82 -0
  158. package/dist/components/ui/section-heading.jsx.map +1 -0
  159. package/dist/components/ui/separator.d.ts +13 -0
  160. package/dist/components/ui/separator.d.ts.map +1 -0
  161. package/dist/components/ui/separator.jsx +16 -0
  162. package/dist/components/ui/separator.jsx.map +1 -0
  163. package/dist/components/ui/sidebar.d.ts +103 -0
  164. package/dist/components/ui/sidebar.d.ts.map +1 -0
  165. package/dist/components/ui/sidebar.jsx +315 -0
  166. package/dist/components/ui/sidebar.jsx.map +1 -0
  167. package/dist/components/ui/skeleton.d.ts +9 -0
  168. package/dist/components/ui/skeleton.d.ts.map +1 -0
  169. package/dist/components/ui/skeleton.jsx +11 -0
  170. package/dist/components/ui/skeleton.jsx.map +1 -0
  171. package/dist/components/ui/spinner.d.ts +11 -0
  172. package/dist/components/ui/spinner.d.ts.map +1 -0
  173. package/dist/components/ui/spinner.jsx +21 -0
  174. package/dist/components/ui/spinner.jsx.map +1 -0
  175. package/dist/components/ui/table-of-contents.d.ts +20 -0
  176. package/dist/components/ui/table-of-contents.d.ts.map +1 -0
  177. package/dist/components/ui/table-of-contents.jsx +77 -0
  178. package/dist/components/ui/table-of-contents.jsx.map +1 -0
  179. package/dist/components/ui/table.d.ts +58 -0
  180. package/dist/components/ui/table.d.ts.map +1 -0
  181. package/dist/components/ui/table.jsx +61 -0
  182. package/dist/components/ui/table.jsx.map +1 -0
  183. package/dist/components/ui/tabs.d.ts +42 -0
  184. package/dist/components/ui/tabs.d.ts.map +1 -0
  185. package/dist/components/ui/tabs.jsx +93 -0
  186. package/dist/components/ui/tabs.jsx.map +1 -0
  187. package/dist/components/ui/theme-toggle.d.ts +19 -0
  188. package/dist/components/ui/theme-toggle.d.ts.map +1 -0
  189. package/dist/components/ui/theme-toggle.jsx +142 -0
  190. package/dist/components/ui/theme-toggle.jsx.map +1 -0
  191. package/dist/components/ui/tooltip.d.ts +10 -0
  192. package/dist/components/ui/tooltip.d.ts.map +1 -0
  193. package/dist/components/ui/tooltip.jsx +18 -0
  194. package/dist/components/ui/tooltip.jsx.map +1 -0
  195. package/dist/config.d.ts +6 -0
  196. package/dist/config.d.ts.map +1 -0
  197. package/dist/config.js +105 -0
  198. package/dist/config.js.map +1 -0
  199. package/dist/core/content-scanner.d.ts +10 -0
  200. package/dist/core/content-scanner.d.ts.map +1 -0
  201. package/dist/core/content-scanner.js +218 -0
  202. package/dist/core/content-scanner.js.map +1 -0
  203. package/dist/core/route-tree.d.ts +24 -0
  204. package/dist/core/route-tree.d.ts.map +1 -0
  205. package/dist/core/route-tree.js +221 -0
  206. package/dist/core/route-tree.js.map +1 -0
  207. package/dist/hooks/create-click-outside.d.ts +18 -0
  208. package/dist/hooks/create-click-outside.d.ts.map +1 -0
  209. package/dist/hooks/create-click-outside.js +55 -0
  210. package/dist/hooks/create-click-outside.js.map +1 -0
  211. package/dist/hooks/create-clipboard.d.ts +20 -0
  212. package/dist/hooks/create-clipboard.d.ts.map +1 -0
  213. package/dist/hooks/create-clipboard.js +48 -0
  214. package/dist/hooks/create-clipboard.js.map +1 -0
  215. package/dist/hooks/create-color-mode.d.ts +27 -0
  216. package/dist/hooks/create-color-mode.d.ts.map +1 -0
  217. package/dist/hooks/create-color-mode.js +86 -0
  218. package/dist/hooks/create-color-mode.js.map +1 -0
  219. package/dist/hooks/create-controllable-signal.d.ts +17 -0
  220. package/dist/hooks/create-controllable-signal.d.ts.map +1 -0
  221. package/dist/hooks/create-controllable-signal.js +35 -0
  222. package/dist/hooks/create-controllable-signal.js.map +1 -0
  223. package/dist/hooks/create-focus-trap.d.ts +15 -0
  224. package/dist/hooks/create-focus-trap.d.ts.map +1 -0
  225. package/dist/hooks/create-focus-trap.js +72 -0
  226. package/dist/hooks/create-focus-trap.js.map +1 -0
  227. package/dist/hooks/create-keybindings.d.ts +34 -0
  228. package/dist/hooks/create-keybindings.d.ts.map +1 -0
  229. package/dist/hooks/create-keybindings.js +113 -0
  230. package/dist/hooks/create-keybindings.js.map +1 -0
  231. package/dist/hooks/create-lock-scroll.d.ts +20 -0
  232. package/dist/hooks/create-lock-scroll.d.ts.map +1 -0
  233. package/dist/hooks/create-lock-scroll.js +77 -0
  234. package/dist/hooks/create-lock-scroll.js.map +1 -0
  235. package/dist/hooks/create-resize-observer.d.ts +27 -0
  236. package/dist/hooks/create-resize-observer.d.ts.map +1 -0
  237. package/dist/hooks/create-resize-observer.js +59 -0
  238. package/dist/hooks/create-resize-observer.js.map +1 -0
  239. package/dist/hooks/create-scroll-position.d.ts +29 -0
  240. package/dist/hooks/create-scroll-position.d.ts.map +1 -0
  241. package/dist/hooks/create-scroll-position.js +101 -0
  242. package/dist/hooks/create-scroll-position.js.map +1 -0
  243. package/dist/index.d.ts +13 -0
  244. package/dist/index.d.ts.map +1 -0
  245. package/dist/index.js +14 -0
  246. package/dist/index.js.map +1 -0
  247. package/dist/lib/cn.d.ts +6 -0
  248. package/dist/lib/cn.d.ts.map +1 -0
  249. package/dist/lib/cn.js +9 -0
  250. package/dist/lib/cn.js.map +1 -0
  251. package/dist/mdx/compiler.d.ts +13 -0
  252. package/dist/mdx/compiler.d.ts.map +1 -0
  253. package/dist/mdx/compiler.js +38 -0
  254. package/dist/mdx/compiler.js.map +1 -0
  255. package/dist/mdx/highlighter.d.ts +22 -0
  256. package/dist/mdx/highlighter.d.ts.map +1 -0
  257. package/dist/mdx/highlighter.js +190 -0
  258. package/dist/mdx/highlighter.js.map +1 -0
  259. package/dist/mdx/rehype-shiki.d.ts +3 -0
  260. package/dist/mdx/rehype-shiki.d.ts.map +1 -0
  261. package/dist/mdx/rehype-shiki.js +83 -0
  262. package/dist/mdx/rehype-shiki.js.map +1 -0
  263. package/dist/navigation/index.d.ts +3 -0
  264. package/dist/navigation/index.d.ts.map +1 -0
  265. package/dist/navigation/index.js +3 -0
  266. package/dist/navigation/index.js.map +1 -0
  267. package/dist/navigation/repository-links.d.ts +3 -0
  268. package/dist/navigation/repository-links.d.ts.map +1 -0
  269. package/dist/navigation/repository-links.js +35 -0
  270. package/dist/navigation/repository-links.js.map +1 -0
  271. package/dist/navigation/sidebar-state.d.ts +6 -0
  272. package/dist/navigation/sidebar-state.d.ts.map +1 -0
  273. package/dist/navigation/sidebar-state.js +20 -0
  274. package/dist/navigation/sidebar-state.js.map +1 -0
  275. package/dist/navigation/sidebar-tree.d.ts +7 -0
  276. package/dist/navigation/sidebar-tree.d.ts.map +1 -0
  277. package/dist/navigation/sidebar-tree.js +11 -0
  278. package/dist/navigation/sidebar-tree.js.map +1 -0
  279. package/dist/providers/theme-provider.d.ts +33 -0
  280. package/dist/providers/theme-provider.d.ts.map +1 -0
  281. package/dist/providers/theme-provider.jsx +158 -0
  282. package/dist/providers/theme-provider.jsx.map +1 -0
  283. package/dist/providers/theme-script.d.ts +16 -0
  284. package/dist/providers/theme-script.d.ts.map +1 -0
  285. package/dist/providers/theme-script.jsx +41 -0
  286. package/dist/providers/theme-script.jsx.map +1 -0
  287. package/dist/providers/theme-transitions.d.ts +12 -0
  288. package/dist/providers/theme-transitions.d.ts.map +1 -0
  289. package/dist/providers/theme-transitions.js +115 -0
  290. package/dist/providers/theme-transitions.js.map +1 -0
  291. package/dist/registry/api-table.json +21 -0
  292. package/dist/registry/badge.json +18 -0
  293. package/dist/registry/breadcrumb.json +17 -0
  294. package/dist/registry/button.json +21 -0
  295. package/dist/registry/callout.json +19 -0
  296. package/dist/registry/card.json +17 -0
  297. package/dist/registry/code-block.json +28 -0
  298. package/dist/registry/collapsible.json +18 -0
  299. package/dist/registry/command.json +27 -0
  300. package/dist/registry/component-viewer.json +25 -0
  301. package/dist/registry/container.json +18 -0
  302. package/dist/registry/create-click-outside.json +13 -0
  303. package/dist/registry/create-clipboard.json +13 -0
  304. package/dist/registry/create-color-mode.json +13 -0
  305. package/dist/registry/create-controllable-signal.json +13 -0
  306. package/dist/registry/create-focus-trap.json +13 -0
  307. package/dist/registry/create-keybindings.json +13 -0
  308. package/dist/registry/create-lock-scroll.json +13 -0
  309. package/dist/registry/create-resize-observer.json +13 -0
  310. package/dist/registry/create-scroll-position.json +13 -0
  311. package/dist/registry/dropdown-menu.json +22 -0
  312. package/dist/registry/input-group.json +21 -0
  313. package/dist/registry/kbd.json +18 -0
  314. package/dist/registry/list.json +20 -0
  315. package/dist/registry/logo.json +17 -0
  316. package/dist/registry/navbar.json +19 -0
  317. package/dist/registry/package-manager-tabs.json +24 -0
  318. package/dist/registry/pager.json +21 -0
  319. package/dist/registry/scroll-area.json +21 -0
  320. package/dist/registry/section-heading.json +21 -0
  321. package/dist/registry/separator.json +17 -0
  322. package/dist/registry/sidebar.json +24 -0
  323. package/dist/registry/skeleton.json +17 -0
  324. package/dist/registry/spinner.json +18 -0
  325. package/dist/registry/table-of-contents.json +23 -0
  326. package/dist/registry/table.json +17 -0
  327. package/dist/registry/tabs.json +20 -0
  328. package/dist/registry/theme-manager.json +39 -0
  329. package/dist/registry/tooltip.json +18 -0
  330. package/dist/search/provider.d.ts +14 -0
  331. package/dist/search/provider.d.ts.map +1 -0
  332. package/dist/search/provider.js +14 -0
  333. package/dist/search/provider.js.map +1 -0
  334. package/dist/server/index.d.ts +18 -0
  335. package/dist/server/index.d.ts.map +1 -0
  336. package/dist/server/index.js +565 -0
  337. package/dist/server/index.js.map +1 -0
  338. package/dist/server/plugin.d.ts +10 -0
  339. package/dist/server/plugin.d.ts.map +1 -0
  340. package/dist/server/plugin.js +522 -0
  341. package/dist/server/plugin.js.map +1 -0
  342. package/dist/theme-accent.d.ts +8 -0
  343. package/dist/theme-accent.d.ts.map +1 -0
  344. package/dist/theme-accent.js +18 -0
  345. package/dist/theme-accent.js.map +1 -0
  346. package/dist/theme-mode.d.ts +4 -0
  347. package/dist/theme-mode.d.ts.map +1 -0
  348. package/dist/theme-mode.js +5 -0
  349. package/dist/theme-mode.js.map +1 -0
  350. package/dist/themes/default/content/breadcrumbs.d.ts +4 -0
  351. package/dist/themes/default/content/breadcrumbs.d.ts.map +1 -0
  352. package/dist/themes/default/content/breadcrumbs.jsx +31 -0
  353. package/dist/themes/default/content/breadcrumbs.jsx.map +1 -0
  354. package/dist/themes/default/content/pager.d.ts +5 -0
  355. package/dist/themes/default/content/pager.d.ts.map +1 -0
  356. package/dist/themes/default/content/pager.jsx +9 -0
  357. package/dist/themes/default/content/pager.jsx.map +1 -0
  358. package/dist/themes/default/content/table-of-contents.d.ts +4 -0
  359. package/dist/themes/default/content/table-of-contents.d.ts.map +1 -0
  360. package/dist/themes/default/content/table-of-contents.jsx +19 -0
  361. package/dist/themes/default/content/table-of-contents.jsx.map +1 -0
  362. package/dist/themes/default/icons.d.ts +3 -0
  363. package/dist/themes/default/icons.d.ts.map +1 -0
  364. package/dist/themes/default/icons.js +15 -0
  365. package/dist/themes/default/icons.js.map +1 -0
  366. package/dist/themes/default/index.d.ts +12 -0
  367. package/dist/themes/default/index.d.ts.map +1 -0
  368. package/dist/themes/default/index.js +30 -0
  369. package/dist/themes/default/index.js.map +1 -0
  370. package/dist/themes/default/layout.d.ts +4 -0
  371. package/dist/themes/default/layout.d.ts.map +1 -0
  372. package/dist/themes/default/layout.jsx +194 -0
  373. package/dist/themes/default/layout.jsx.map +1 -0
  374. package/dist/themes/default/navbar.d.ts +4 -0
  375. package/dist/themes/default/navbar.d.ts.map +1 -0
  376. package/dist/themes/default/navbar.jsx +83 -0
  377. package/dist/themes/default/navbar.jsx.map +1 -0
  378. package/dist/themes/default/navigation/mobile-table-of-contents.d.ts +4 -0
  379. package/dist/themes/default/navigation/mobile-table-of-contents.d.ts.map +1 -0
  380. package/dist/themes/default/navigation/mobile-table-of-contents.jsx +38 -0
  381. package/dist/themes/default/navigation/mobile-table-of-contents.jsx.map +1 -0
  382. package/dist/themes/default/navigation/sidebar-tree.d.ts +8 -0
  383. package/dist/themes/default/navigation/sidebar-tree.d.ts.map +1 -0
  384. package/dist/themes/default/navigation/sidebar-tree.jsx +124 -0
  385. package/dist/themes/default/navigation/sidebar-tree.jsx.map +1 -0
  386. package/dist/themes/default/overlays/search-dialog.d.ts +4 -0
  387. package/dist/themes/default/overlays/search-dialog.d.ts.map +1 -0
  388. package/dist/themes/default/overlays/search-dialog.jsx +52 -0
  389. package/dist/themes/default/overlays/search-dialog.jsx.map +1 -0
  390. package/dist/themes/default/sidebar.d.ts +4 -0
  391. package/dist/themes/default/sidebar.d.ts.map +1 -0
  392. package/dist/themes/default/sidebar.jsx +92 -0
  393. package/dist/themes/default/sidebar.jsx.map +1 -0
  394. package/dist/themes/index.d.ts +4 -0
  395. package/dist/themes/index.d.ts.map +1 -0
  396. package/dist/themes/index.js +5 -0
  397. package/dist/themes/index.js.map +1 -0
  398. package/dist/themes/types.d.ts +91 -0
  399. package/dist/themes/types.d.ts.map +1 -0
  400. package/dist/themes/types.js +2 -0
  401. package/dist/themes/types.js.map +1 -0
  402. package/dist/types.d.ts +132 -0
  403. package/dist/types.d.ts.map +1 -0
  404. package/dist/types.js +3 -0
  405. package/dist/types.js.map +1 -0
  406. package/dist/vendor/docs-src/components/mdx-components.tsx +144 -0
  407. package/dist/vendor/docs-src/components/ui/api-table.tsx +117 -0
  408. package/dist/vendor/docs-src/components/ui/badge.tsx +56 -0
  409. package/dist/vendor/docs-src/components/ui/breadcrumb.tsx +136 -0
  410. package/dist/vendor/docs-src/components/ui/button.tsx +82 -0
  411. package/dist/vendor/docs-src/components/ui/callout.tsx +137 -0
  412. package/dist/vendor/docs-src/components/ui/card.tsx +113 -0
  413. package/dist/vendor/docs-src/components/ui/code-block.tsx +347 -0
  414. package/dist/vendor/docs-src/components/ui/collapsible.tsx +73 -0
  415. package/dist/vendor/docs-src/components/ui/command.tsx +382 -0
  416. package/dist/vendor/docs-src/components/ui/component-viewer.tsx +363 -0
  417. package/dist/vendor/docs-src/components/ui/container.tsx +45 -0
  418. package/dist/vendor/docs-src/components/ui/dropdown-menu.tsx +298 -0
  419. package/dist/vendor/docs-src/components/ui/input-group.tsx +80 -0
  420. package/dist/vendor/docs-src/components/ui/kbd.tsx +73 -0
  421. package/dist/vendor/docs-src/components/ui/list.tsx +222 -0
  422. package/dist/vendor/docs-src/components/ui/logo.tsx +68 -0
  423. package/dist/vendor/docs-src/components/ui/navbar.tsx +375 -0
  424. package/dist/vendor/docs-src/components/ui/package-manager-tabs.tsx +226 -0
  425. package/dist/vendor/docs-src/components/ui/pager.tsx +102 -0
  426. package/dist/vendor/docs-src/components/ui/scroll-area.tsx +228 -0
  427. package/dist/vendor/docs-src/components/ui/section-heading.tsx +115 -0
  428. package/dist/vendor/docs-src/components/ui/separator.tsx +37 -0
  429. package/dist/vendor/docs-src/components/ui/sidebar.tsx +712 -0
  430. package/dist/vendor/docs-src/components/ui/skeleton.tsx +24 -0
  431. package/dist/vendor/docs-src/components/ui/spinner.tsx +41 -0
  432. package/dist/vendor/docs-src/components/ui/table-of-contents.tsx +131 -0
  433. package/dist/vendor/docs-src/components/ui/table.tsx +160 -0
  434. package/dist/vendor/docs-src/components/ui/tabs.tsx +204 -0
  435. package/dist/vendor/docs-src/components/ui/theme-toggle.tsx +238 -0
  436. package/dist/vendor/docs-src/components/ui/tooltip.tsx +41 -0
  437. package/dist/vendor/docs-src/hooks/create-click-outside.ts +82 -0
  438. package/dist/vendor/docs-src/hooks/create-clipboard.ts +69 -0
  439. package/dist/vendor/docs-src/hooks/create-color-mode.ts +115 -0
  440. package/dist/vendor/docs-src/hooks/create-controllable-signal.ts +56 -0
  441. package/dist/vendor/docs-src/hooks/create-focus-trap.ts +94 -0
  442. package/dist/vendor/docs-src/hooks/create-keybindings.ts +148 -0
  443. package/dist/vendor/docs-src/hooks/create-lock-scroll.ts +97 -0
  444. package/dist/vendor/docs-src/hooks/create-resize-observer.ts +89 -0
  445. package/dist/vendor/docs-src/hooks/create-scroll-position.ts +129 -0
  446. package/dist/vendor/docs-src/lib/cn.ts +9 -0
  447. package/dist/vendor/docs-src/providers/theme-provider.tsx +203 -0
  448. package/dist/vendor/docs-src/providers/theme-script.tsx +54 -0
  449. package/dist/vendor/docs-src/providers/theme-transitions.ts +139 -0
  450. package/dist/version.d.ts +2 -0
  451. package/dist/version.d.ts.map +1 -0
  452. package/dist/version.js +2 -0
  453. package/dist/version.js.map +1 -0
  454. package/package.json +95 -0
@@ -0,0 +1,522 @@
1
+ import path from "node:path";
2
+ import { fileURLToPath } from "node:url";
3
+ import { createRequire } from "node:module";
4
+ import fs from "fs-extra";
5
+ import { scanContent, scanContentDirectories } from "../core/content-scanner.js";
6
+ import { buildConfiguredSidebarTree, buildSidebarTree } from "../core/route-tree.js";
7
+ import { compileMdx } from "../mdx/compiler.js";
8
+ import { loadConfig } from "../config.js";
9
+ import { resolveDefaultThemeMode } from "../theme-mode.js";
10
+ const VIRTUAL_CONFIG_ID = "virtual:folio-config";
11
+ const RESOLVED_CONFIG_ID = "\0" + VIRTUAL_CONFIG_ID;
12
+ const VIRTUAL_TREE_ID = "virtual:folio-tree";
13
+ const RESOLVED_TREE_ID = "\0" + VIRTUAL_TREE_ID;
14
+ const VIRTUAL_ROUTES_ID = "virtual:folio-routes";
15
+ const RESOLVED_ROUTES_ID = "\0" + VIRTUAL_ROUTES_ID;
16
+ const VIRTUAL_SOURCES_ID = "virtual:folio-sources";
17
+ const RESOLVED_SOURCES_ID = "\0" + VIRTUAL_SOURCES_ID;
18
+ const VIRTUAL_COMPONENTS_ID = "virtual:folio-components";
19
+ const RESOLVED_COMPONENTS_ID = "\0" + VIRTUAL_COMPONENTS_ID;
20
+ const VIRTUAL_ICONS_ID = "virtual:folio-icons";
21
+ const RESOLVED_ICONS_ID = "\0" + VIRTUAL_ICONS_ID;
22
+ const VIRTUAL_THEME_ID = "virtual:folio-theme";
23
+ const RESOLVED_THEME_ID = "\0" + VIRTUAL_THEME_ID;
24
+ const VIRTUAL_SHIKI_ID = "virtual:folio-shiki-stub";
25
+ const RESOLVED_SHIKI_ID = "\0" + VIRTUAL_SHIKI_ID;
26
+ const CONFIG_FILENAMES = new Set([
27
+ "docs.config.ts",
28
+ "docs.config.js",
29
+ "docs.config.mjs",
30
+ "nikala.docs.config.ts",
31
+ "nikala.docs.config.js",
32
+ "nikala.docs.config.mjs",
33
+ // Backward compatibility for older docs projects.
34
+ "nikala.config.ts",
35
+ "nikala.config.js",
36
+ ]);
37
+ function findConfigFile(rootDir) {
38
+ return [...CONFIG_FILENAMES]
39
+ .map((filename) => path.join(rootDir, filename))
40
+ .find((file) => fs.existsSync(file));
41
+ }
42
+ function toLucideComponentName(name) {
43
+ return name
44
+ .trim()
45
+ .split(/[-_\s]+/)
46
+ .filter(Boolean)
47
+ .map((part) => part.charAt(0).toUpperCase() + part.slice(1))
48
+ .join("");
49
+ }
50
+ function escapeHtmlAttribute(value) {
51
+ return value
52
+ .replace(/&/g, "&")
53
+ .replace(/"/g, """)
54
+ .replace(/</g, "&lt;")
55
+ .replace(/>/g, "&gt;");
56
+ }
57
+ function getTailwindSourceDirectives(rootDir, docsDir) {
58
+ const sources = [];
59
+ const bundledDocsSource = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../vendor/docs-src");
60
+ if (fs.existsSync(bundledDocsSource))
61
+ sources.push(bundledDocsSource);
62
+ sources.push(path.resolve(rootDir, "src"));
63
+ const themesDir = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../themes");
64
+ if (fs.existsSync(themesDir))
65
+ sources.push(themesDir);
66
+ if (docsDir && fs.existsSync(docsDir))
67
+ sources.push(docsDir);
68
+ return sources
69
+ .map((src) => `@source "${src}";`)
70
+ .join("\n");
71
+ }
72
+ function getComponentSourceDir(rootDir) {
73
+ const localSource = path.resolve(rootDir, "src/components/ui");
74
+ if (fs.existsSync(localSource))
75
+ return localSource;
76
+ const moduleDir = path.dirname(fileURLToPath(import.meta.url));
77
+ const candidates = [
78
+ path.resolve(moduleDir, "../vendor/docs-src/components/ui"),
79
+ path.resolve(moduleDir, "../../src/components/ui"),
80
+ path.resolve(moduleDir, "../components/ui"),
81
+ ];
82
+ const source = candidates.find((candidate) => fs.existsSync(candidate));
83
+ if (source)
84
+ return source;
85
+ throw new Error("Folio local component sources are missing");
86
+ }
87
+ function collectComponentExports(directory) {
88
+ if (!fs.existsSync(directory))
89
+ return [];
90
+ return fs.readdirSync(directory, { withFileTypes: true })
91
+ .filter((entry) => entry.isFile() && /\.(?:tsx?|jsx?)$/.test(entry.name) && !/^index\./.test(entry.name))
92
+ .flatMap((entry) => {
93
+ const file = path.join(directory, entry.name);
94
+ const source = fs.readFileSync(file, "utf8");
95
+ const names = new Set();
96
+ for (const match of source.matchAll(/export\s+(?:const|function|class)\s+([A-Z][A-Za-z0-9_$]*)/g)) {
97
+ names.add(match[1]);
98
+ }
99
+ for (const match of source.matchAll(/export\s*\{([^}]+)\}/g)) {
100
+ for (const name of match[1].split(",")) {
101
+ const exported = name.trim().split(/\s+as\s+/).at(-1);
102
+ if (exported && /^[A-Z][A-Za-z0-9_$]*$/.test(exported))
103
+ names.add(exported);
104
+ }
105
+ }
106
+ return [...names].sort().map((name) => ({ name, file }));
107
+ })
108
+ .sort((a, b) => a.name.localeCompare(b.name));
109
+ }
110
+ function collectSourceFiles(directory) {
111
+ if (!fs.existsSync(directory))
112
+ return [];
113
+ return fs.readdirSync(directory, { withFileTypes: true }).flatMap((entry) => {
114
+ const file = path.join(directory, entry.name);
115
+ if (entry.isDirectory())
116
+ return collectSourceFiles(file);
117
+ return entry.isFile() && /\.(?:tsx?|jsx?)$/.test(entry.name) ? [file] : [];
118
+ });
119
+ }
120
+ function resolveComponentFile(directory, importPath) {
121
+ const base = path.join(directory, importPath);
122
+ const candidates = [
123
+ base,
124
+ ...[".ts", ".tsx", ".js", ".jsx"].map((extension) => base + extension),
125
+ ...["index.ts", "index.tsx", "index.js", "index.jsx"].map((entry) => path.join(base, entry)),
126
+ ];
127
+ return candidates.find((file) => fs.existsSync(file));
128
+ }
129
+ function collectStaticComponentFiles(componentDir, themeDirs) {
130
+ const staticFiles = new Set();
131
+ const pending = themeDirs.flatMap((directory) => collectSourceFiles(directory));
132
+ while (pending.length) {
133
+ const file = pending.pop();
134
+ if (!fs.existsSync(file))
135
+ continue;
136
+ const source = fs.readFileSync(file, "utf8");
137
+ for (const match of source.matchAll(/from\s+["']@\/components\/ui\/([^"']+)["']/g)) {
138
+ const importedFile = resolveComponentFile(componentDir, match[1]);
139
+ if (importedFile && !staticFiles.has(importedFile)) {
140
+ staticFiles.add(importedFile);
141
+ pending.push(importedFile);
142
+ }
143
+ }
144
+ for (const match of source.matchAll(/from\s+["'](\.\.?\/[^"']+)["']/g)) {
145
+ const importedFile = resolveComponentFile(path.dirname(file), match[1]);
146
+ if (importedFile && importedFile.startsWith(`${path.resolve(componentDir)}${path.sep}`) && !staticFiles.has(importedFile)) {
147
+ staticFiles.add(importedFile);
148
+ pending.push(importedFile);
149
+ }
150
+ }
151
+ }
152
+ return staticFiles;
153
+ }
154
+ export function nikalaDocsPlugin(options = {}) {
155
+ // Vite's root is the docs engine client directory. It is not the user's
156
+ // project root, so content/config paths must always resolve from configRoot.
157
+ let rootDir = path.resolve(options.configRoot || process.cwd());
158
+ let docsDir = options.docsDir ? path.resolve(rootDir, options.docsDir) : path.resolve(rootDir, "docs");
159
+ let resolvedConfig = options.config || { title: "Folio" };
160
+ let cachedPages = [];
161
+ let isSsrBuild = false;
162
+ return {
163
+ name: "vite-plugin-folio",
164
+ enforce: "pre",
165
+ async configResolved(viteConfig) {
166
+ isSsrBuild = Boolean(viteConfig.build.ssr);
167
+ // Keep Vite's internal root separate from the consuming project's root.
168
+ // Otherwise a relative contentDir could resolve under packages/docs.
169
+ rootDir = path.resolve(options.configRoot || process.cwd());
170
+ if (!options.docsDir) {
171
+ // The config is authoritative for new projects; keep legacy auto-detection.
172
+ const fs = await import("fs-extra");
173
+ if (!options.config) {
174
+ resolvedConfig = await loadConfig(options.configRoot || rootDir);
175
+ }
176
+ if (resolvedConfig.contentDir) {
177
+ docsDir = path.resolve(rootDir, resolvedConfig.contentDir);
178
+ }
179
+ else if (await fs.pathExists(path.resolve(rootDir, "docs"))) {
180
+ docsDir = path.resolve(rootDir, "docs");
181
+ }
182
+ else if (await fs.pathExists(path.resolve(rootDir, "content"))) {
183
+ docsDir = path.resolve(rootDir, "content");
184
+ }
185
+ else {
186
+ docsDir = rootDir;
187
+ }
188
+ }
189
+ else {
190
+ docsDir = path.resolve(rootDir, options.docsDir);
191
+ }
192
+ },
193
+ transformIndexHtml(html) {
194
+ const favicon = resolvedConfig.favicon || "/favicon.ico";
195
+ const defaultTheme = resolveDefaultThemeMode(resolvedConfig);
196
+ return html.replace(/<link rel="icon" href="[^"]*"\s*\/>/i, `<link rel="icon" href="${escapeHtmlAttribute(favicon)}" />`).replaceAll("__NIKALA_DEFAULT_THEME__", defaultTheme);
197
+ },
198
+ resolveId(id, importer) {
199
+ if (id === "shiki" || id.startsWith("shiki/")) {
200
+ if (importer && (importer.includes("/mdx/") || importer.includes("\\mdx\\"))) {
201
+ return null;
202
+ }
203
+ return isSsrBuild ? RESOLVED_SHIKI_ID : null;
204
+ }
205
+ if (id === VIRTUAL_CONFIG_ID)
206
+ return RESOLVED_CONFIG_ID;
207
+ if (id === VIRTUAL_TREE_ID)
208
+ return RESOLVED_TREE_ID;
209
+ if (id === VIRTUAL_ROUTES_ID)
210
+ return RESOLVED_ROUTES_ID;
211
+ if (id === VIRTUAL_SOURCES_ID)
212
+ return RESOLVED_SOURCES_ID;
213
+ if (id === VIRTUAL_COMPONENTS_ID)
214
+ return RESOLVED_COMPONENTS_ID;
215
+ if (id === VIRTUAL_ICONS_ID || id === RESOLVED_ICONS_ID)
216
+ return RESOLVED_ICONS_ID;
217
+ if (id === VIRTUAL_THEME_ID)
218
+ return RESOLVED_THEME_ID;
219
+ return null;
220
+ },
221
+ async load(id) {
222
+ if (id === RESOLVED_SHIKI_ID) {
223
+ return `
224
+ export const createHighlighter = async () => null;
225
+ export const bundledLanguages = {};
226
+ export const bundledThemes = {};
227
+ export default { createHighlighter, bundledLanguages, bundledThemes };
228
+ `;
229
+ }
230
+ if (id === RESOLVED_CONFIG_ID) {
231
+ const configFile = findConfigFile(rootDir);
232
+ if (!configFile)
233
+ return `export default ${JSON.stringify(resolvedConfig)};`;
234
+ return `
235
+ import userConfig from ${JSON.stringify(configFile)};
236
+ const defaults = ${JSON.stringify(resolvedConfig)};
237
+ const config = {
238
+ ...defaults,
239
+ ...userConfig,
240
+ navigation: {
241
+ ...defaults.navigation,
242
+ ...userConfig.navigation,
243
+ sidebar: { ...defaults.navigation?.sidebar, ...userConfig.navigation?.sidebar },
244
+ },
245
+ theme: { ...defaults.theme, ...userConfig.theme },
246
+ shiki: {
247
+ ...defaults.shiki,
248
+ ...userConfig.shiki,
249
+ themes: { ...defaults.shiki?.themes, ...userConfig.shiki?.themes },
250
+ },
251
+ search: { ...defaults.search, ...userConfig.search },
252
+ };
253
+ export default config;
254
+ `;
255
+ }
256
+ if (id === RESOLVED_TREE_ID) {
257
+ cachedPages = await scanContent(docsDir);
258
+ const directories = await scanContentDirectories(docsDir);
259
+ const configuredSidebar = resolvedConfig.navigation?.sidebar?.nav ?? resolvedConfig.sidebar ?? "auto";
260
+ const tree = configuredSidebar !== "auto"
261
+ ? buildConfiguredSidebarTree(configuredSidebar, cachedPages)
262
+ : buildSidebarTree(cachedPages, directories);
263
+ return `
264
+ export const pages = ${JSON.stringify(cachedPages)};
265
+ export const tree = ${JSON.stringify(tree)};
266
+ export default { pages, tree };
267
+ `;
268
+ }
269
+ if (id === RESOLVED_ROUTES_ID) {
270
+ cachedPages = await scanContent(docsDir);
271
+ const routeEntries = cachedPages.map((page) => ` ${JSON.stringify(page.url)}: () => import(${JSON.stringify(page.filePath)})`);
272
+ return `
273
+ export const routes = {
274
+ ${routeEntries.join(",\n")}
275
+ };
276
+ export default routes;
277
+ `;
278
+ }
279
+ if (id === RESOLVED_SOURCES_ID) {
280
+ cachedPages = await scanContent(docsDir);
281
+ const sourceEntries = cachedPages.map((page) => ` ${JSON.stringify(page.url)}: () => import(${JSON.stringify(`${page.filePath}?raw`)})`);
282
+ return `
283
+ export const sources = {
284
+ ${sourceEntries.join(",\n")}
285
+ };
286
+ export default sources;
287
+ `;
288
+ }
289
+ if (id === RESOLVED_COMPONENTS_ID) {
290
+ const componentDir = getComponentSourceDir(rootDir);
291
+ const themeDirs = [
292
+ path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../themes/default"),
293
+ path.resolve(rootDir, "src/themes/default"),
294
+ ];
295
+ if (resolvedConfig.theme?.path) {
296
+ const configuredTheme = path.resolve(rootDir, resolvedConfig.theme.path);
297
+ themeDirs.push(fs.existsSync(configuredTheme) && fs.statSync(configuredTheme).isDirectory()
298
+ ? configuredTheme
299
+ : path.dirname(configuredTheme));
300
+ }
301
+ const staticFiles = collectStaticComponentFiles(componentDir, themeDirs);
302
+ const modules = new Map();
303
+ const exports = collectComponentExports(getComponentSourceDir(rootDir));
304
+ for (const { file } of exports) {
305
+ const existing = modules.get(file);
306
+ if (!existing)
307
+ modules.set(file, { index: modules.size, file, isStatic: staticFiles.has(file) });
308
+ }
309
+ const moduleEntries = [...modules.values()];
310
+ const imports = moduleEntries.map(({ index, file }) => modules.get(file).isStatic
311
+ ? `import * as componentModule${index} from ${JSON.stringify(file)};`
312
+ : `const componentModule${index} = () => import(${JSON.stringify(file)});`);
313
+ const entries = exports.map(({ name, file }) => {
314
+ const module = modules.get(file);
315
+ return module.isStatic
316
+ ? ` ${JSON.stringify(name)}: componentModule${module.index}[${JSON.stringify(name)}]`
317
+ : ` ${JSON.stringify(name)}: lazy(() => componentModule${module.index}().then((module) => ({ default: module[${JSON.stringify(name)}] })))`;
318
+ });
319
+ return `
320
+ import { lazy } from "solid-js";
321
+ ${imports.join("\n")}
322
+ const components = {
323
+ ${entries.join(",\n")}
324
+ };
325
+ export default components;
326
+ `;
327
+ }
328
+ if (id === RESOLVED_ICONS_ID) {
329
+ const pages = await scanContent(docsDir);
330
+ const names = [...new Set(pages.map((page) => page.frontmatter.icon).filter((name) => typeof name === "string" && name.trim().length > 0))];
331
+ const require = createRequire(path.join(rootDir, "package.json"));
332
+ const entries = [];
333
+ for (const name of names) {
334
+ const kebabName = name
335
+ .trim()
336
+ .replace(/([a-z0-9])([A-Z])/g, "$1-$2")
337
+ .replace(/[\s_]+/g, "-")
338
+ .toLowerCase();
339
+ try {
340
+ require.resolve(`lucide-solid/icons/${kebabName}`);
341
+ entries.push({ name, specifier: `lucide-solid/icons/${kebabName}` });
342
+ }
343
+ catch {
344
+ console.warn(`[folio] Unknown Lucide icon "${name}"; skipping it.`);
345
+ }
346
+ }
347
+ const imports = entries.map(({ specifier }, index) => `import icon${index} from ${JSON.stringify(specifier)};`);
348
+ const iconEntries = entries.map(({ name }, index) => ` ${JSON.stringify(toLucideComponentName(name))}: icon${index}`);
349
+ return `
350
+ ${imports.join("\n")}
351
+ export const icons = {
352
+ ${iconEntries.join(",\n")}
353
+ };
354
+ `;
355
+ }
356
+ if (id === RESOLVED_THEME_ID) {
357
+ const configuredPath = resolvedConfig.theme?.path;
358
+ if (!configuredPath) {
359
+ const defaultEntry = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../themes/default/index.js");
360
+ return `import defaultTheme from ${JSON.stringify(defaultEntry)}; export const theme = defaultTheme; export default theme;`;
361
+ }
362
+ const requestedPath = path.resolve(options.configRoot || rootDir, configuredPath);
363
+ const candidates = [
364
+ requestedPath,
365
+ path.join(requestedPath, "index.ts"),
366
+ path.join(requestedPath, "index.tsx"),
367
+ path.join(requestedPath, "index.js"),
368
+ path.join(requestedPath, "index.jsx"),
369
+ ];
370
+ const themeEntry = candidates.find((candidate) => fs.existsSync(candidate));
371
+ if (!themeEntry)
372
+ throw new Error(`[folio] Theme path does not exist: ${requestedPath}`);
373
+ return `import configuredTheme from ${JSON.stringify(themeEntry)}; export const theme = configuredTheme.default || configuredTheme; export default theme;`;
374
+ }
375
+ return null;
376
+ },
377
+ async transform(code, id, transformOptions) {
378
+ const cssId = id.split("?", 1)[0];
379
+ const packagedCss = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../client/style.css");
380
+ const baseCss = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../client/base.css");
381
+ const configuredCss = resolvedConfig.css
382
+ ? path.resolve(rootDir, resolvedConfig.css)
383
+ : packagedCss;
384
+ if (cssId === packagedCss || cssId === configuredCss) {
385
+ if (cssId === packagedCss && configuredCss !== packagedCss) {
386
+ const sourceDirectives = getTailwindSourceDirectives(rootDir, docsDir);
387
+ return {
388
+ code: sourceDirectives + "\n@import " + JSON.stringify(configuredCss.replace(/\\/g, "/")) + ";\n@import " + JSON.stringify(baseCss.replace(/\\/g, "/")) + ";",
389
+ map: null,
390
+ };
391
+ }
392
+ const sourceDirectives = getTailwindSourceDirectives(rootDir, docsDir);
393
+ return {
394
+ code: `@import "tailwindcss";\n${sourceDirectives}\n${code.replace('@import "tailwindcss";', "")}`,
395
+ map: null,
396
+ };
397
+ }
398
+ // Compile Markdown / MDX files to SolidJS JSX
399
+ if (/\.(md|mdx)$/.test(id)) {
400
+ const isSsr = Boolean(transformOptions?.ssr);
401
+ const result = await compileMdx(code, {
402
+ filePath: id,
403
+ development: !isSsr && process.env.NODE_ENV !== "production",
404
+ shiki: resolvedConfig.shiki,
405
+ });
406
+ return {
407
+ code: result.code,
408
+ map: null,
409
+ };
410
+ }
411
+ return null;
412
+ },
413
+ configureServer(server) {
414
+ // Vite's root is the packaged client directory, so the consuming
415
+ // project's config/content files are outside its default watch scope.
416
+ // Register them explicitly for dev reloads.
417
+ const configFiles = [...CONFIG_FILENAMES]
418
+ .map((filename) => path.join(rootDir, filename))
419
+ .filter((file) => fs.existsSync(file));
420
+ if (configFiles.length)
421
+ server.watcher.add(configFiles);
422
+ if (docsDir && fs.existsSync(docsDir))
423
+ server.watcher.add(docsDir);
424
+ const componentsDir = getComponentSourceDir(rootDir);
425
+ if (componentsDir && fs.existsSync(componentsDir))
426
+ server.watcher.add(componentsDir);
427
+ const configuredCss = resolvedConfig.css
428
+ ? path.resolve(rootDir, resolvedConfig.css)
429
+ : undefined;
430
+ if (configuredCss && fs.existsSync(configuredCss))
431
+ server.watcher.add(configuredCss);
432
+ let reloadTimer;
433
+ const invalidateVirtualModules = (includeConfig = false, includeComponents = false) => {
434
+ const modTree = server.moduleGraph.getModuleById(RESOLVED_TREE_ID);
435
+ const modRoutes = server.moduleGraph.getModuleById(RESOLVED_ROUTES_ID);
436
+ if (modTree)
437
+ server.moduleGraph.invalidateModule(modTree);
438
+ if (modRoutes)
439
+ server.moduleGraph.invalidateModule(modRoutes);
440
+ if (includeComponents) {
441
+ const modComponents = server.moduleGraph.getModuleById(RESOLVED_COMPONENTS_ID);
442
+ if (modComponents)
443
+ server.moduleGraph.invalidateModule(modComponents);
444
+ }
445
+ if (includeConfig) {
446
+ const modConfig = server.moduleGraph.getModuleById(RESOLVED_CONFIG_ID);
447
+ const modTheme = server.moduleGraph.getModuleById(RESOLVED_THEME_ID);
448
+ if (modConfig)
449
+ server.moduleGraph.invalidateModule(modConfig);
450
+ if (modTheme)
451
+ server.moduleGraph.invalidateModule(modTheme);
452
+ }
453
+ if (reloadTimer)
454
+ clearTimeout(reloadTimer);
455
+ reloadTimer = setTimeout(() => {
456
+ reloadTimer = undefined;
457
+ server.ws.send({ type: "full-reload" });
458
+ }, 75);
459
+ };
460
+ // Watch content directory for file additions or removals
461
+ server.watcher.on("add", (file) => {
462
+ if (/\.(md|mdx)$/.test(file)) {
463
+ invalidateVirtualModules();
464
+ return;
465
+ }
466
+ if (componentsDir && path.resolve(file).startsWith(`${path.resolve(componentsDir)}${path.sep}`)) {
467
+ invalidateVirtualModules(false, true);
468
+ }
469
+ });
470
+ server.watcher.on("unlink", (file) => {
471
+ if (/\.(md|mdx)$/.test(file)) {
472
+ invalidateVirtualModules();
473
+ return;
474
+ }
475
+ if (componentsDir && path.resolve(file).startsWith(`${path.resolve(componentsDir)}${path.sep}`)) {
476
+ invalidateVirtualModules(false, true);
477
+ }
478
+ });
479
+ server.watcher.on("change", async (file) => {
480
+ if (/\.(md|mdx)$/.test(file)) {
481
+ invalidateVirtualModules();
482
+ return;
483
+ }
484
+ if (componentsDir && path.resolve(file).startsWith(`${path.resolve(componentsDir)}${path.sep}`)) {
485
+ invalidateVirtualModules(false, true);
486
+ return;
487
+ }
488
+ if (CONFIG_FILENAMES.has(path.basename(file))) {
489
+ if (!options.config) {
490
+ resolvedConfig = await loadConfig(rootDir);
491
+ if (resolvedConfig.contentDir) {
492
+ docsDir = path.resolve(rootDir, resolvedConfig.contentDir);
493
+ }
494
+ }
495
+ invalidateVirtualModules(true);
496
+ return;
497
+ }
498
+ if (configuredCss && path.resolve(file) === configuredCss) {
499
+ const cssModule = server.moduleGraph.getModuleById(configuredCss);
500
+ if (cssModule)
501
+ server.moduleGraph.invalidateModule(cssModule);
502
+ invalidateVirtualModules();
503
+ }
504
+ });
505
+ },
506
+ handleHotUpdate({ file, server }) {
507
+ const configuredCss = resolvedConfig.css
508
+ ? path.resolve(rootDir, resolvedConfig.css)
509
+ : undefined;
510
+ if (configuredCss && path.resolve(file) === configuredCss) {
511
+ const cssModules = server.moduleGraph.getModulesByFile(configuredCss);
512
+ for (const module of cssModules || []) {
513
+ server.moduleGraph.invalidateModule(module);
514
+ }
515
+ server.ws.send({ type: "full-reload" });
516
+ return [];
517
+ }
518
+ return undefined;
519
+ },
520
+ };
521
+ }
522
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/server/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAU3D,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AACjD,MAAM,kBAAkB,GAAG,IAAI,GAAG,iBAAiB,CAAC;AAEpD,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAC7C,MAAM,gBAAgB,GAAG,IAAI,GAAG,eAAe,CAAC;AAEhD,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AACjD,MAAM,kBAAkB,GAAG,IAAI,GAAG,iBAAiB,CAAC;AAEpD,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AACnD,MAAM,mBAAmB,GAAG,IAAI,GAAG,kBAAkB,CAAC;AAEtD,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AACzD,MAAM,sBAAsB,GAAG,IAAI,GAAG,qBAAqB,CAAC;AAE5D,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAC/C,MAAM,iBAAiB,GAAG,IAAI,GAAG,gBAAgB,CAAC;AAElD,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAC/C,MAAM,iBAAiB,GAAG,IAAI,GAAG,gBAAgB,CAAC;AAElD,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AACpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,gBAAgB,CAAC;AAElD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,uBAAuB;IACvB,wBAAwB;IACxB,kDAAkD;IAClD,kBAAkB;IAClB,kBAAkB;CACnB,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,CAAC,GAAG,gBAAgB,CAAC;SACzB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;SAC/C,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,OAAO,IAAI;SACR,IAAI,EAAE;SACN,KAAK,CAAC,SAAS,CAAC;SAChB,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK;SACT,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAe,EAAE,OAAe;IACnE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAC3G,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAE3C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC1F,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtD,IAAI,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE7D,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC;SACjC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe;IAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,kCAAkC,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,yBAAyB,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IACF,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IACxE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAiB;IAChD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzC,OAAO,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;SACtD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACxG,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,4DAA4D,CAAC,EAAE,CAAC;YAClG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;YAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtD,IAAI,QAAQ,IAAI,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzC,OAAO,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,KAAK,CAAC,WAAW,EAAE;YAAE,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB,EAAE,UAAkB;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG;QACjB,IAAI;QACJ,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC;QACtE,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC7F,CAAC;IACF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,2BAA2B,CAAC,YAAoB,EAAE,SAAmB;IAC5E,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhF,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAG,CAAC;QAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,6CAA6C,CAAC,EAAE,CAAC;YACnF,MAAM,YAAY,GAAG,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAClE,IAAI,YAAY,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBACnD,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EAAE,CAAC;YACvE,MAAM,YAAY,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,IAAI,YAAY,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1H,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAO,GAA4B,EAAE;IACpE,wEAAwE;IACxE,6EAA6E;IAC7E,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChE,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACvG,IAAI,cAAc,GAAe,OAAO,CAAC,MAAM,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IACtE,IAAI,WAAW,GAAe,EAAE,CAAC;IACjC,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,KAAK;QAEd,KAAK,CAAC,cAAc,CAAC,UAAU;YAC7B,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3C,wEAAwE;YACxE,qEAAqE;YACrE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,4EAA4E;gBAC5E,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBACpC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBACpB,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,CAAC;gBACnE,CAAC;gBACD,IAAI,cAAc,CAAC,UAAU,EAAE,CAAC;oBAC9B,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC7D,CAAC;qBAAM,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;oBAC9D,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC1C,CAAC;qBAAM,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;oBACjE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,OAAO,CAAC;gBACpB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YACnD,CAAC;QAEH,CAAC;QAED,kBAAkB,CAAC,IAAI;YACrB,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC;YACzD,MAAM,YAAY,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;YAC7D,OAAO,IAAI,CAAC,OAAO,CACjB,sCAAsC,EACtC,0BAA0B,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAC7D,CAAC,UAAU,CAAC,0BAA0B,EAAE,YAAY,CAAC,CAAC;QACzD,CAAC;QAED,SAAS,CAAC,EAAE,EAAE,QAAQ;YACpB,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9C,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;oBAC7E,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/C,CAAC;YACD,IAAI,EAAE,KAAK,iBAAiB;gBAAE,OAAO,kBAAkB,CAAC;YACxD,IAAI,EAAE,KAAK,eAAe;gBAAE,OAAO,gBAAgB,CAAC;YACpD,IAAI,EAAE,KAAK,iBAAiB;gBAAE,OAAO,kBAAkB,CAAC;YACxD,IAAI,EAAE,KAAK,kBAAkB;gBAAE,OAAO,mBAAmB,CAAC;YAC1D,IAAI,EAAE,KAAK,qBAAqB;gBAAE,OAAO,sBAAsB,CAAC;YAChE,IAAI,EAAE,KAAK,gBAAgB,IAAI,EAAE,KAAK,iBAAiB;gBAAE,OAAO,iBAAiB,CAAC;YAClF,IAAI,EAAE,KAAK,gBAAgB;gBAAE,OAAO,iBAAiB,CAAC;YACtD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,KAAK,iBAAiB,EAAE,CAAC;gBAC7B,OAAO;;;;;CAKd,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,kBAAkB,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,UAAU;oBAAE,OAAO,kBAAkB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC;gBAE5E,OAAO;yBACU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;mBAChC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;;;;;;;;;;;;;;;;;;CAkBhD,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,gBAAgB,EAAE,CAAC;gBAC5B,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;gBACzC,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAC1D,MAAM,iBAAiB,GAAG,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,cAAc,CAAC,OAAO,IAAI,MAAM,CAAC;gBACtG,MAAM,IAAI,GAAG,iBAAiB,KAAK,MAAM;oBACvC,CAAC,CAAC,0BAA0B,CAAC,iBAAiB,EAAE,WAAW,CAAC;oBAC5D,CAAC,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBAC/C,OAAO;uBACQ,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;sBAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;;CAEzC,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,kBAAkB,EAAE,CAAC;gBAC9B,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;gBACzC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5C,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAChF,CAAC;gBAEF,OAAO;;EAEb,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;;;CAGzB,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,mBAAmB,EAAE,CAAC;gBAC/B,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;gBACzC,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7C,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,MAAM,CAAC,GAAG,CACzF,CAAC;gBAEF,OAAO;;EAEb,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;;;CAG1B,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,sBAAsB,EAAE,CAAC;gBAClC,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBACpD,MAAM,SAAS,GAAG;oBAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC;oBAC/E,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,oBAAoB,CAAC;iBAC5C,CAAC;gBACF,IAAI,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;oBAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACzE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE;wBACzF,CAAC,CAAC,eAAe;wBACjB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;gBACrC,CAAC;gBACD,MAAM,WAAW,GAAG,2BAA2B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBACzE,MAAM,OAAO,GAAG,IAAI,GAAG,EAA8D,CAAC;gBACtF,MAAM,OAAO,GAAG,uBAAuB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;gBACxE,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;oBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACnC,IAAI,CAAC,QAAQ;wBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,MAAM,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CACpD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,QAAQ;oBACzB,CAAC,CAAC,8BAA8B,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;oBACrE,CAAC,CAAC,wBAAwB,KAAK,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAC7E,CAAC;gBACF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;oBAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;oBAClC,OAAO,MAAM,CAAC,QAAQ;wBACpB,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;wBACtF,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,+BAA+B,MAAM,CAAC,KAAK,0CAA0C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACjJ,CAAC,CAAC,CAAC;gBAEH,OAAO;;EAEb,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;EAElB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;;;CAGpB,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,iBAAiB,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;gBACzC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5J,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;gBAClE,MAAM,OAAO,GAA+C,EAAE,CAAC;gBAE/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,SAAS,GAAG,IAAI;yBACnB,IAAI,EAAE;yBACN,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;yBACtC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;yBACvB,WAAW,EAAE,CAAC;oBACjB,IAAI,CAAC;wBACH,OAAO,CAAC,OAAO,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;wBACnD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,sBAAsB,SAAS,EAAE,EAAE,CAAC,CAAC;oBACvE,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,CAAC,IAAI,CAAC,gCAAgC,IAAI,iBAAiB,CAAC,CAAC;oBACtE,CAAC;gBACH,CAAC;gBAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBAChH,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;gBAEvH,OAAO;EACb,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;EAElB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;;CAExB,CAAC;YACI,CAAC;YAED,IAAI,EAAE,KAAK,iBAAiB,EAAE,CAAC;gBAC7B,MAAM,cAAc,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC;gBAClD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,4BAA4B,CAAC,CAAC;oBAC9G,OAAO,4BAA4B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,4DAA4D,CAAC;gBAC9H,CAAC;gBAED,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,EAAE,cAAc,CAAC,CAAC;gBAClF,MAAM,UAAU,GAAG;oBACjB,aAAa;oBACb,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC;oBACpC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC;oBACpC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;iBACtC,CAAC;gBACF,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC5E,IAAI,CAAC,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,aAAa,EAAE,CAAC,CAAC;gBACxF,OAAO,+BAA+B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,0FAA0F,CAAC;YAC7J,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,gBAAgB;YACxC,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;YACtG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;YACjG,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG;gBACtC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC;gBAC3C,CAAC,CAAC,WAAW,CAAC;YAChB,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;gBACrD,IAAI,KAAK,KAAK,WAAW,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;oBAC3D,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBACvE,OAAO;wBACL,IAAI,EAAE,gBAAgB,GAAG,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG;wBAC7J,GAAG,EAAE,IAAI;qBACV,CAAC;gBACJ,CAAC;gBAED,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAEvE,OAAO;oBACL,IAAI,EAAE,2BAA2B,gBAAgB,KAAK,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,EAAE;oBAClG,GAAG,EAAE,IAAI;iBACV,CAAC;YACJ,CAAC;YAED,8CAA8C;YAC9C,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;gBAC7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE;oBACpC,QAAQ,EAAE,EAAE;oBACZ,WAAW,EAAE,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;oBAC5D,KAAK,EAAE,cAAc,CAAC,KAAK;iBAC5B,CAAC,CAAC;gBAEH,OAAO;oBACL,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,GAAG,EAAE,IAAI;iBACV,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,eAAe,CAAC,MAAqB;YACnC,iEAAiE;YACjE,sEAAsE;YACtE,4CAA4C;YAC5C,MAAM,WAAW,GAAG,CAAC,GAAG,gBAAgB,CAAC;iBACtC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;iBAC/C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YACzC,IAAI,WAAW,CAAC,MAAM;gBAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACxD,IAAI,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnE,MAAM,aAAa,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,aAAa,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;gBAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACrF,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG;gBACtC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC;gBAC3C,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,aAAa,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;gBAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAErF,IAAI,WAAsD,CAAC;YAE3D,MAAM,wBAAwB,GAAG,CAAC,aAAa,GAAG,KAAK,EAAE,iBAAiB,GAAG,KAAK,EAAE,EAAE;gBACpF,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;gBACnE,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;gBACvE,IAAI,OAAO;oBAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC1D,IAAI,SAAS;oBAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAE9D,IAAI,iBAAiB,EAAE,CAAC;oBACtB,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;oBAC/E,IAAI,aAAa;wBAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBACxE,CAAC;gBAED,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;oBACvE,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBACrE,IAAI,SAAS;wBAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;oBAC9D,IAAI,QAAQ;wBAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC9D,CAAC;gBAED,IAAI,WAAW;oBAAE,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC3C,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC5B,WAAW,GAAG,SAAS,CAAC;oBACxB,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;gBAC1C,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC;YAEF,yDAAyD;YACzD,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;gBAChC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7B,wBAAwB,EAAE,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;oBAChG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACnC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7B,wBAAwB,EAAE,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;oBAChG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACzC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7B,wBAAwB,EAAE,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;oBAChG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACtC,OAAO;gBACT,CAAC;gBACD,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBAC9C,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;wBACpB,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;wBAC3C,IAAI,cAAc,CAAC,UAAU,EAAE,CAAC;4BAC9B,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;oBACD,wBAAwB,CAAC,IAAI,CAAC,CAAC;oBAC/B,OAAO;gBACT,CAAC;gBACD,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,aAAa,EAAE,CAAC;oBAC1D,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;oBAClE,IAAI,SAAS;wBAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;oBAC9D,wBAAwB,EAAE,CAAC;gBAC7B,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAC9B,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG;gBACtC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC;gBAC3C,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,aAAa,EAAE,CAAC;gBAC1D,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBACtE,KAAK,MAAM,MAAM,IAAI,UAAU,IAAI,EAAE,EAAE,CAAC;oBACtC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBAC9C,CAAC;gBACD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;gBACxC,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const TAILWIND_ACCENT_COLORS: readonly ["slate", "gray", "zinc", "neutral", "stone", "red", "orange", "amber", "yellow", "lime", "green", "emerald", "teal", "cyan", "sky", "blue", "indigo", "violet", "purple", "fuchsia", "pink", "rose"];
2
+ export type DocsAccentColor = (typeof TAILWIND_ACCENT_COLORS)[number];
3
+ export declare function isDocsAccentColor(value: unknown): value is DocsAccentColor;
4
+ export declare function getAccentCssVariables(accent: DocsAccentColor, dark: boolean): {
5
+ primary: string;
6
+ foreground: string;
7
+ };
8
+ //# sourceMappingURL=theme-accent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-accent.d.ts","sourceRoot":"","sources":["../src/theme-accent.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,YACjC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EACrE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EACnE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAC/C,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO;;;EAQ3E"}
@@ -0,0 +1,18 @@
1
+ export const TAILWIND_ACCENT_COLORS = [
2
+ "slate", "gray", "zinc", "neutral", "stone", "red", "orange", "amber",
3
+ "yellow", "lime", "green", "emerald", "teal", "cyan", "sky", "blue",
4
+ "indigo", "violet", "purple", "fuchsia", "pink", "rose",
5
+ ];
6
+ export function isDocsAccentColor(value) {
7
+ return typeof value === "string" && TAILWIND_ACCENT_COLORS.includes(value);
8
+ }
9
+ export function getAccentCssVariables(accent, dark) {
10
+ const foreground = accent === "amber" || accent === "yellow" || accent === "lime"
11
+ ? "var(--color-black)"
12
+ : "var(--color-white)";
13
+ return {
14
+ primary: `var(--color-${accent}-${dark ? "400" : "500"})`,
15
+ foreground,
16
+ };
17
+ }
18
+ //# sourceMappingURL=theme-accent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-accent.js","sourceRoot":"","sources":["../src/theme-accent.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO;IACrE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IACnE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM;CAC/C,CAAC;AAIX,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,sBAAsB,CAAC,QAAQ,CAAC,KAAwB,CAAC,CAAC;AAChG,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAuB,EAAE,IAAa;IAC1E,MAAM,UAAU,GAAG,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,MAAM;QAC/E,CAAC,CAAC,oBAAoB;QACtB,CAAC,CAAC,oBAAoB,CAAC;IACzB,OAAO;QACL,OAAO,EAAE,eAAe,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;QACzD,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { DocsConfig } from "./types.js";
2
+ export type DocsThemeMode = "light" | "dark" | "system";
3
+ export declare function resolveDefaultThemeMode(config?: DocsConfig): DocsThemeMode;
4
+ //# sourceMappingURL=theme-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-mode.d.ts","sourceRoot":"","sources":["../src/theme-mode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAExD,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,aAAa,CAG1E"}
@@ -0,0 +1,5 @@
1
+ export function resolveDefaultThemeMode(config) {
2
+ const mode = config?.theme?.defaultMode;
3
+ return mode === "light" || mode === "dark" || mode === "system" ? mode : "system";
4
+ }
5
+ //# sourceMappingURL=theme-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-mode.js","sourceRoot":"","sources":["../src/theme-mode.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,uBAAuB,CAAC,MAAmB;IACzD,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;IACxC,OAAO,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type Component } from "solid-js";
2
+ import type { DocsBreadcrumbsProps } from "../../types.js";
3
+ export declare const DocsBreadcrumbs: Component<DocsBreadcrumbsProps>;
4
+ //# sourceMappingURL=breadcrumbs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../src/themes/default/content/breadcrumbs.tsx"],"names":[],"mappings":"AACA,OAAO,EAAyB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAOjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,eAAO,MAAM,eAAe,EAAE,SAAS,CAAC,oBAAoB,CA6B3D,CAAC"}