zudoku 0.3.0-dev.5 → 0.3.0-dev.51

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 (483) hide show
  1. package/dist/app/App.d.ts +1 -2
  2. package/dist/app/App.js +1 -28
  3. package/dist/app/App.js.map +1 -1
  4. package/dist/app/demo.d.ts +2 -0
  5. package/dist/app/demo.js +27 -0
  6. package/dist/app/demo.js.map +1 -0
  7. package/dist/app/entry.client.d.ts +2 -0
  8. package/dist/app/entry.client.js +35 -0
  9. package/dist/app/entry.client.js.map +1 -0
  10. package/dist/app/entry.server.d.ts +12 -0
  11. package/dist/app/entry.server.js +104 -0
  12. package/dist/app/entry.server.js.map +1 -0
  13. package/dist/app/main.d.ts +6 -1
  14. package/dist/app/main.js +54 -12
  15. package/dist/app/main.js.map +1 -1
  16. package/dist/app/standalone.d.ts +2 -0
  17. package/dist/app/standalone.js +32 -0
  18. package/dist/app/standalone.js.map +1 -0
  19. package/dist/app/tailwind.d.ts +1 -1
  20. package/dist/app/tailwind.js +0 -4
  21. package/dist/app/tailwind.js.map +1 -1
  22. package/dist/app/zudoku-manifest.d.ts +1 -0
  23. package/dist/app/zudoku-manifest.js +20 -0
  24. package/dist/app/zudoku-manifest.js.map +1 -0
  25. package/dist/cli/cmds/dev.js +5 -0
  26. package/dist/cli/cmds/dev.js.map +1 -1
  27. package/dist/cli/dev/handler.d.ts +1 -0
  28. package/dist/cli/dev/handler.js +3 -1
  29. package/dist/cli/dev/handler.js.map +1 -1
  30. package/dist/config/config.d.ts +5 -39
  31. package/dist/config/validators/validate.d.ts +799 -2
  32. package/dist/config/validators/validate.js +134 -1
  33. package/dist/config/validators/validate.js.map +1 -1
  34. package/dist/internal.d.ts +1 -0
  35. package/dist/internal.js +2 -0
  36. package/dist/internal.js.map +1 -0
  37. package/dist/lib/authentication/Callback.js +1 -1
  38. package/dist/lib/authentication/Callback.js.map +1 -1
  39. package/dist/lib/authentication/authentication.d.ts +2 -2
  40. package/dist/lib/authentication/hook.d.ts +1 -0
  41. package/dist/lib/authentication/hook.js +1 -0
  42. package/dist/lib/authentication/hook.js.map +1 -1
  43. package/dist/lib/authentication/providers/auth0.js +1 -0
  44. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  45. package/dist/lib/authentication/providers/clerk.js +4 -0
  46. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  47. package/dist/lib/authentication/providers/openid.d.ts +1 -1
  48. package/dist/lib/authentication/providers/openid.js +2 -0
  49. package/dist/lib/authentication/providers/openid.js.map +1 -1
  50. package/dist/lib/authentication/state.d.ts +1 -0
  51. package/dist/lib/authentication/state.js +1 -0
  52. package/dist/lib/authentication/state.js.map +1 -1
  53. package/dist/lib/components/Bootstrap.d.ts +12 -0
  54. package/dist/lib/components/Bootstrap.js +9 -0
  55. package/dist/lib/components/Bootstrap.js.map +1 -0
  56. package/dist/lib/components/DevPortal.d.ts +4 -19
  57. package/dist/lib/components/DevPortal.js +17 -12
  58. package/dist/lib/components/DevPortal.js.map +1 -1
  59. package/dist/lib/components/ErrorPage.d.ts +6 -0
  60. package/dist/lib/components/ErrorPage.js +9 -0
  61. package/dist/lib/components/ErrorPage.js.map +1 -0
  62. package/dist/lib/components/Header.js +3 -3
  63. package/dist/lib/components/Header.js.map +1 -1
  64. package/dist/lib/components/Heading.d.ts +9 -4
  65. package/dist/lib/components/Heading.js +17 -2
  66. package/dist/lib/components/Heading.js.map +1 -1
  67. package/dist/lib/components/InlineCode.d.ts +5 -0
  68. package/dist/lib/components/InlineCode.js +4 -0
  69. package/dist/lib/components/InlineCode.js.map +1 -0
  70. package/dist/lib/components/Layout.js +3 -2
  71. package/dist/lib/components/Layout.js.map +1 -1
  72. package/dist/lib/components/NotFoundPage.d.ts +1 -0
  73. package/dist/lib/components/NotFoundPage.js +12 -0
  74. package/dist/lib/components/NotFoundPage.js.map +1 -0
  75. package/dist/lib/components/SyntaxHighlight.d.ts +3 -2
  76. package/dist/lib/components/SyntaxHighlight.js +21 -19
  77. package/dist/lib/components/SyntaxHighlight.js.map +1 -1
  78. package/dist/lib/components/TopNavigation.d.ts +1 -1
  79. package/dist/lib/components/TopNavigation.js +4 -0
  80. package/dist/lib/components/TopNavigation.js.map +1 -1
  81. package/dist/lib/components/context/DevPortalProvider.d.ts +1 -1
  82. package/dist/lib/components/context/DevPortalProvider.js +2 -2
  83. package/dist/lib/components/context/DevPortalProvider.js.map +1 -1
  84. package/dist/lib/components/index.d.ts +28 -3
  85. package/dist/lib/components/index.js +17 -3
  86. package/dist/lib/components/index.js.map +1 -1
  87. package/dist/lib/core/DevPortalContext.d.ts +36 -11
  88. package/dist/lib/core/DevPortalContext.js +11 -12
  89. package/dist/lib/core/DevPortalContext.js.map +1 -1
  90. package/dist/lib/core/plugins.d.ts +7 -4
  91. package/dist/lib/core/plugins.js +1 -0
  92. package/dist/lib/core/plugins.js.map +1 -1
  93. package/dist/lib/errors/ErrorAlert.d.ts +3 -0
  94. package/dist/lib/errors/ErrorAlert.js +8 -0
  95. package/dist/lib/errors/ErrorAlert.js.map +1 -0
  96. package/dist/lib/errors/RouterError.d.ts +1 -0
  97. package/dist/lib/errors/RouterError.js +12 -0
  98. package/dist/lib/errors/RouterError.js.map +1 -0
  99. package/dist/lib/errors/ServerError.d.ts +3 -0
  100. package/dist/lib/errors/ServerError.js +6 -0
  101. package/dist/lib/errors/ServerError.js.map +1 -0
  102. package/dist/lib/errors/TopLevelError.d.ts +2 -0
  103. package/dist/lib/errors/TopLevelError.js +7 -0
  104. package/dist/lib/errors/TopLevelError.js.map +1 -0
  105. package/dist/lib/oas/graphql/index.js +1 -1
  106. package/dist/lib/oas/graphql/index.js.map +1 -1
  107. package/dist/lib/oas/parser/index.d.ts +1 -1
  108. package/dist/lib/oas/parser/index.js +38 -12
  109. package/dist/lib/oas/parser/index.js.map +1 -1
  110. package/dist/lib/plugins/api-keys/CreateApiKey.d.ts +4 -0
  111. package/dist/lib/plugins/{api-key → api-keys}/CreateApiKey.js +1 -1
  112. package/dist/lib/plugins/api-keys/CreateApiKey.js.map +1 -0
  113. package/dist/lib/plugins/api-keys/SettingsApiKeys.d.ts +4 -0
  114. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +39 -0
  115. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -0
  116. package/dist/lib/plugins/{api-key → api-keys}/index.d.ts +2 -3
  117. package/dist/lib/plugins/{api-key → api-keys}/index.js +15 -4
  118. package/dist/lib/plugins/api-keys/index.js.map +1 -0
  119. package/dist/lib/plugins/markdown/MdxPage.d.ts +3 -2
  120. package/dist/lib/plugins/markdown/MdxPage.js +7 -6
  121. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  122. package/dist/lib/plugins/markdown/Toc.js +1 -1
  123. package/dist/lib/plugins/markdown/Toc.js.map +1 -1
  124. package/dist/lib/plugins/markdown/generateRoutes.d.ts +3 -3
  125. package/dist/lib/plugins/markdown/generateRoutes.js +4 -4
  126. package/dist/lib/plugins/markdown/generateRoutes.js.map +1 -1
  127. package/dist/lib/plugins/markdown/index.d.ts +4 -1
  128. package/dist/lib/plugins/markdown/index.js +3 -7
  129. package/dist/lib/plugins/markdown/index.js.map +1 -1
  130. package/dist/lib/plugins/openapi/OperationList.js +16 -5
  131. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  132. package/dist/lib/plugins/openapi/OperationListItem.js +10 -5
  133. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  134. package/dist/lib/plugins/openapi/ParameterList.js +1 -1
  135. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  136. package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
  137. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  138. package/dist/lib/plugins/openapi/{MakeRequest.d.ts → PlaygroundDialogWrapper.d.ts} +1 -1
  139. package/dist/lib/plugins/openapi/{MakeRequest.js → PlaygroundDialogWrapper.js} +5 -5
  140. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -0
  141. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +1 -9
  142. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  143. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +1 -1
  144. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  145. package/dist/lib/plugins/openapi/Route.d.ts +6 -0
  146. package/dist/lib/plugins/openapi/Route.js +8 -0
  147. package/dist/lib/plugins/openapi/Route.js.map +1 -0
  148. package/dist/lib/plugins/openapi/SchemaListView.js +6 -27
  149. package/dist/lib/plugins/openapi/SchemaListView.js.map +1 -1
  150. package/dist/lib/plugins/openapi/SchemaListViewItem.d.ts +7 -0
  151. package/dist/lib/plugins/openapi/SchemaListViewItem.js +16 -0
  152. package/dist/lib/plugins/openapi/SchemaListViewItem.js.map +1 -0
  153. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.d.ts +8 -0
  154. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.js +17 -0
  155. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.js.map +1 -0
  156. package/dist/lib/plugins/openapi/Sidecar.js +10 -8
  157. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  158. package/dist/lib/plugins/openapi/{Select.d.ts → SimpleSelect.d.ts} +3 -2
  159. package/dist/lib/plugins/openapi/SimpleSelect.js +5 -0
  160. package/dist/lib/plugins/openapi/SimpleSelect.js.map +1 -0
  161. package/dist/lib/plugins/openapi/client/createMemoryClient.d.ts +12 -0
  162. package/dist/lib/plugins/openapi/client/createMemoryClient.js +46 -0
  163. package/dist/lib/plugins/openapi/client/createMemoryClient.js.map +1 -0
  164. package/dist/lib/plugins/openapi/client/createServer.d.ts +4 -0
  165. package/dist/lib/plugins/openapi/client/createServer.js +30 -0
  166. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -0
  167. package/dist/lib/plugins/openapi/client/createWorkerClient.d.ts +10 -0
  168. package/dist/lib/plugins/openapi/{worker/createSharedWorkerClient.js → client/createWorkerClient.js} +15 -2
  169. package/dist/lib/plugins/openapi/client/createWorkerClient.js.map +1 -0
  170. package/dist/lib/plugins/openapi/client/interfaces.d.ts +4 -0
  171. package/dist/lib/plugins/openapi/client/interfaces.js +2 -0
  172. package/dist/lib/plugins/openapi/client/interfaces.js.map +1 -0
  173. package/dist/lib/plugins/openapi/{worker → client}/worker.js +2 -2
  174. package/dist/lib/plugins/openapi/client/worker.js.map +1 -0
  175. package/dist/lib/plugins/openapi/context.d.ts +5 -0
  176. package/dist/lib/plugins/openapi/context.js +11 -0
  177. package/dist/lib/plugins/openapi/context.js.map +1 -0
  178. package/dist/lib/plugins/openapi/index.d.ts +4 -18
  179. package/dist/lib/plugins/openapi/index.js +35 -20
  180. package/dist/lib/plugins/openapi/index.js.map +1 -1
  181. package/dist/lib/plugins/openapi/interfaces.d.ts +15 -0
  182. package/dist/lib/plugins/openapi/interfaces.js +2 -0
  183. package/dist/lib/plugins/openapi/interfaces.js.map +1 -0
  184. package/dist/lib/plugins/openapi/playground/Headers.d.ts +2 -3
  185. package/dist/lib/plugins/openapi/playground/Headers.js +16 -6
  186. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  187. package/dist/lib/plugins/openapi/playground/PathParams.d.ts +1 -1
  188. package/dist/lib/plugins/openapi/playground/Playground.d.ts +4 -3
  189. package/dist/lib/plugins/openapi/playground/Playground.js +8 -12
  190. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  191. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.d.ts +3 -0
  192. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +10 -0
  193. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -0
  194. package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +1 -1
  195. package/dist/lib/plugins/openapi/playground/QueryParams.js +2 -1
  196. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  197. package/dist/lib/plugins/openapi/playground/createUrl.d.ts +1 -1
  198. package/dist/lib/plugins/openapi/util/prose.d.ts +1 -0
  199. package/dist/lib/plugins/openapi/util/prose.js +4 -0
  200. package/dist/lib/plugins/openapi/util/prose.js.map +1 -0
  201. package/dist/lib/plugins/openapi-worker.d.ts +1 -1
  202. package/dist/lib/plugins/openapi-worker.js +1 -1
  203. package/dist/lib/plugins/openapi-worker.js.map +1 -1
  204. package/dist/lib/plugins/redirect/index.d.ts +0 -1
  205. package/dist/lib/plugins/redirect/index.js +3 -4
  206. package/dist/lib/plugins/redirect/index.js.map +1 -1
  207. package/dist/lib/ui/Callout.js +2 -2
  208. package/dist/lib/ui/Callout.js.map +1 -1
  209. package/dist/lib/ui/button-variants.d.ts +1 -1
  210. package/dist/lib/util/MdxComponents.d.ts +2 -2
  211. package/dist/lib/util/MdxComponents.js +6 -4
  212. package/dist/lib/util/MdxComponents.js.map +1 -1
  213. package/dist/lib/util/groupBy.d.ts +1 -6
  214. package/dist/lib/util/groupBy.js +10 -8
  215. package/dist/lib/util/groupBy.js.map +1 -1
  216. package/dist/lib/util/logInit.d.ts +1 -0
  217. package/dist/lib/util/logInit.js +9 -0
  218. package/dist/lib/util/logInit.js.map +1 -0
  219. package/dist/lib/util/objectEntries.d.ts +4 -0
  220. package/dist/lib/util/objectEntries.js +2 -0
  221. package/dist/lib/util/objectEntries.js.map +1 -0
  222. package/dist/lib/util/renderIf.d.ts +1 -0
  223. package/dist/lib/util/renderIf.js +2 -0
  224. package/dist/lib/util/renderIf.js.map +1 -0
  225. package/dist/vite/build.js +26 -6
  226. package/dist/vite/build.js.map +1 -1
  227. package/dist/vite/config.d.ts +13 -12
  228. package/dist/vite/config.js +100 -55
  229. package/dist/vite/config.js.map +1 -1
  230. package/dist/vite/config.test.js +7 -4
  231. package/dist/vite/config.test.js.map +1 -1
  232. package/dist/vite/dev-server.d.ts +2 -1
  233. package/dist/vite/dev-server.js +43 -15
  234. package/dist/vite/dev-server.js.map +1 -1
  235. package/dist/vite/html.js +18 -5
  236. package/dist/vite/html.js.map +1 -1
  237. package/dist/vite/plugin-api-keys.js +7 -8
  238. package/dist/vite/plugin-api-keys.js.map +1 -1
  239. package/dist/vite/plugin-api.js +9 -20
  240. package/dist/vite/plugin-api.js.map +1 -1
  241. package/dist/vite/plugin-auth.js +5 -6
  242. package/dist/vite/plugin-auth.js.map +1 -1
  243. package/dist/vite/plugin-component.js +4 -2
  244. package/dist/vite/plugin-component.js.map +1 -1
  245. package/dist/vite/plugin-config.d.ts +0 -2
  246. package/dist/vite/plugin-config.js +2 -13
  247. package/dist/vite/plugin-config.js.map +1 -1
  248. package/dist/vite/plugin-custom-css.d.ts +6 -0
  249. package/dist/vite/plugin-custom-css.js +55 -0
  250. package/dist/vite/plugin-custom-css.js.map +1 -0
  251. package/dist/vite/plugin-docs.js +15 -5
  252. package/dist/vite/plugin-docs.js.map +1 -1
  253. package/dist/vite/plugin-docs.test.js +1 -1
  254. package/dist/vite/plugin-docs.test.js.map +1 -1
  255. package/dist/vite/plugin-mdx.d.ts +3 -1
  256. package/dist/vite/plugin-mdx.js +5 -5
  257. package/dist/vite/plugin-mdx.js.map +1 -1
  258. package/dist/vite/plugin-metadata.js +1 -1
  259. package/dist/vite/plugin-metadata.js.map +1 -1
  260. package/dist/vite/plugin-redirect.js +10 -10
  261. package/dist/vite/plugin-redirect.js.map +1 -1
  262. package/dist/vite/plugin.js +3 -5
  263. package/dist/vite/plugin.js.map +1 -1
  264. package/dist/vite/prerender.d.ts +17 -0
  265. package/dist/vite/prerender.js +55 -0
  266. package/dist/vite/prerender.js.map +1 -0
  267. package/lib/AnchorLink-CZUp-F0P.js +705 -0
  268. package/lib/AnchorLink-CZUp-F0P.js.map +1 -0
  269. package/lib/DevPortalProvider-Do9oJqme.js +1081 -0
  270. package/lib/DevPortalProvider-Do9oJqme.js.map +1 -0
  271. package/lib/Markdown-Dbzrtopg.js +15030 -0
  272. package/lib/Markdown-Dbzrtopg.js.map +1 -0
  273. package/lib/MdxPage-JvboTsbK.js +190 -0
  274. package/lib/MdxPage-JvboTsbK.js.map +1 -0
  275. package/lib/OperationList-DGdaixGa.js +5562 -0
  276. package/lib/OperationList-DGdaixGa.js.map +1 -0
  277. package/lib/Route-C1LyvITr.js +13 -0
  278. package/lib/Route-C1LyvITr.js.map +1 -0
  279. package/lib/Select-DHm1jDdS.js +4571 -0
  280. package/lib/Select-DHm1jDdS.js.map +1 -0
  281. package/lib/Spinner-BSk0ImmP.js +182 -0
  282. package/lib/Spinner-BSk0ImmP.js.map +1 -0
  283. package/lib/_commonjsHelpers-BVfed4GL.js +29 -0
  284. package/lib/_commonjsHelpers-BVfed4GL.js.map +1 -0
  285. package/lib/assets/index-BPdJm2ty.js +1 -0
  286. package/lib/assets/index-BPdJm2ty.js.map +1 -0
  287. package/lib/assets/{worker-BCcpCNJ7.js → worker-BjPv-hjP.js} +10742 -10318
  288. package/lib/assets/worker-BjPv-hjP.js.map +1 -0
  289. package/lib/context-_fYfJFgk.js +14 -0
  290. package/lib/context-_fYfJFgk.js.map +1 -0
  291. package/lib/hook-CGFJQf_n.js +77 -0
  292. package/lib/hook-CGFJQf_n.js.map +1 -0
  293. package/lib/index-CXXn0D4E.js +412 -0
  294. package/lib/index-CXXn0D4E.js.map +1 -0
  295. package/lib/index-DSZ4Cj5q.js +725 -0
  296. package/lib/index-DSZ4Cj5q.js.map +1 -0
  297. package/lib/index-pI9JkN46.js +4765 -0
  298. package/lib/index-pI9JkN46.js.map +1 -0
  299. package/lib/jsx-runtime-CJZJivg2.js +1526 -0
  300. package/lib/jsx-runtime-CJZJivg2.js.map +1 -0
  301. package/lib/prism-bash.min-DadFsM4Z.js +1 -0
  302. package/lib/prism-bash.min-DadFsM4Z.js.map +1 -0
  303. package/lib/prism-csharp.min-Yizuc34Y.js +35 -0
  304. package/lib/prism-csharp.min-Yizuc34Y.js.map +1 -0
  305. package/lib/prism-java.min-d5iT_mOd.js +1 -0
  306. package/lib/prism-java.min-d5iT_mOd.js.map +1 -0
  307. package/lib/prism-json.min-B1GJqK1k.js +1 -0
  308. package/lib/prism-json.min-B1GJqK1k.js.map +1 -0
  309. package/lib/prism-markup-templating-DZrrEs0A.js +1 -0
  310. package/lib/prism-markup-templating-DZrrEs0A.js.map +1 -0
  311. package/lib/prism-objectivec.min-BXSWqpJJ.js +2 -0
  312. package/lib/prism-objectivec.min-BXSWqpJJ.js.map +1 -0
  313. package/lib/prism-php.min-o7FpoMP_.js +1 -0
  314. package/lib/prism-php.min-o7FpoMP_.js.map +1 -0
  315. package/lib/prism-ruby.min-C7LwcKyz.js +1 -0
  316. package/lib/prism-ruby.min-C7LwcKyz.js.map +1 -0
  317. package/lib/router-CBw2vqJE.js +2973 -0
  318. package/lib/router-CBw2vqJE.js.map +1 -0
  319. package/lib/slugify-CiPVjteN.js +28 -0
  320. package/lib/slugify-CiPVjteN.js.map +1 -0
  321. package/lib/state-DKdaQzvh.js +288 -0
  322. package/lib/state-DKdaQzvh.js.map +1 -0
  323. package/lib/urql-DMlBWUKL.js +1 -0
  324. package/lib/urql-DMlBWUKL.js.map +1 -0
  325. package/lib/util-_jwUlTBU.js +41 -0
  326. package/lib/util-_jwUlTBU.js.map +1 -0
  327. package/lib/zudoku.auth-auth0.js +3 -1
  328. package/lib/zudoku.auth-auth0.js.map +1 -0
  329. package/lib/zudoku.auth-clerk.js +11 -8
  330. package/lib/zudoku.auth-clerk.js.map +1 -0
  331. package/lib/zudoku.auth-openid.js +8 -4
  332. package/lib/zudoku.auth-openid.js.map +1 -0
  333. package/lib/zudoku.components.js +806 -451
  334. package/lib/zudoku.components.js.map +1 -0
  335. package/lib/zudoku.openapi-worker.js +15032 -146
  336. package/lib/zudoku.openapi-worker.js.map +1 -0
  337. package/lib/zudoku.plugin-api-keys.js +302 -0
  338. package/lib/zudoku.plugin-api-keys.js.map +1 -0
  339. package/lib/zudoku.plugin-markdown.js +49 -0
  340. package/lib/zudoku.plugin-markdown.js.map +1 -0
  341. package/lib/zudoku.plugin-openapi.js +10 -0
  342. package/lib/zudoku.plugin-openapi.js.map +1 -0
  343. package/lib/zudoku.plugin-redirect.js +11 -0
  344. package/lib/zudoku.plugin-redirect.js.map +1 -0
  345. package/package.json +37 -15
  346. package/src/app/App.tsx +0 -40
  347. package/src/app/demo-cdn.html +26 -0
  348. package/src/app/demo.html +18 -0
  349. package/src/app/demo.tsx +40 -0
  350. package/src/app/entry.client.tsx +47 -0
  351. package/src/app/entry.server.tsx +158 -0
  352. package/src/app/main.css +74 -0
  353. package/src/app/main.tsx +71 -15
  354. package/src/app/standalone.html +20 -0
  355. package/src/app/standalone.tsx +46 -0
  356. package/src/app/tailwind.ts +2 -6
  357. package/src/app/zudoku-manifest.ts +22 -0
  358. package/src/lib/authentication/Callback.tsx +1 -1
  359. package/src/lib/authentication/authentication.ts +2 -5
  360. package/src/lib/authentication/hook.ts +1 -0
  361. package/src/lib/authentication/providers/auth0.tsx +1 -0
  362. package/src/lib/authentication/providers/clerk.tsx +3 -0
  363. package/src/lib/authentication/providers/openid.tsx +3 -1
  364. package/src/lib/authentication/state.ts +2 -0
  365. package/src/lib/components/Bootstrap.tsx +37 -0
  366. package/src/lib/components/DevPortal.tsx +41 -56
  367. package/src/lib/components/ErrorPage.tsx +28 -0
  368. package/src/lib/components/Header.tsx +13 -7
  369. package/src/lib/components/Heading.tsx +26 -7
  370. package/src/lib/components/InlineCode.tsx +19 -0
  371. package/src/lib/components/Layout.tsx +9 -7
  372. package/src/lib/components/NotFoundPage.tsx +39 -0
  373. package/src/lib/components/SyntaxHighlight.tsx +27 -19
  374. package/src/lib/components/TopNavigation.tsx +5 -0
  375. package/src/lib/components/context/DevPortalProvider.ts +2 -2
  376. package/src/lib/components/index.ts +21 -3
  377. package/src/lib/core/DevPortalContext.ts +47 -28
  378. package/src/lib/core/plugins.ts +10 -5
  379. package/src/lib/errors/ErrorAlert.tsx +21 -0
  380. package/src/lib/errors/RouterError.tsx +13 -0
  381. package/src/lib/errors/ServerError.tsx +5 -0
  382. package/src/lib/errors/TopLevelError.tsx +8 -0
  383. package/src/lib/oas/graphql/index.ts +2 -2
  384. package/src/lib/oas/parser/index.ts +41 -20
  385. package/src/lib/plugins/{api-key → api-keys}/CreateApiKey.tsx +2 -8
  386. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +139 -0
  387. package/src/lib/plugins/{api-key → api-keys}/index.tsx +22 -9
  388. package/src/lib/plugins/markdown/MdxPage.tsx +51 -34
  389. package/src/lib/plugins/markdown/Toc.tsx +1 -1
  390. package/src/lib/plugins/markdown/generateRoutes.tsx +16 -6
  391. package/src/lib/plugins/markdown/index.tsx +10 -7
  392. package/src/lib/plugins/openapi/OperationList.tsx +40 -4
  393. package/src/lib/plugins/openapi/OperationListItem.tsx +69 -42
  394. package/src/lib/plugins/openapi/ParameterList.tsx +1 -1
  395. package/src/lib/plugins/openapi/ParameterListItem.tsx +3 -4
  396. package/src/lib/plugins/openapi/{MakeRequest.tsx → PlaygroundDialogWrapper.tsx} +4 -4
  397. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +2 -16
  398. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +3 -1
  399. package/src/lib/plugins/openapi/Route.tsx +21 -0
  400. package/src/lib/plugins/openapi/SchemaListView.tsx +23 -192
  401. package/src/lib/plugins/openapi/SchemaListViewItem.tsx +110 -0
  402. package/src/lib/plugins/openapi/SchemaListViewItemGroup.tsx +63 -0
  403. package/src/lib/plugins/openapi/Sidecar.tsx +15 -10
  404. package/src/lib/plugins/openapi/{Select.tsx → SimpleSelect.tsx} +6 -3
  405. package/src/lib/plugins/openapi/client/createMemoryClient.ts +56 -0
  406. package/src/lib/plugins/openapi/client/createServer.ts +33 -0
  407. package/src/lib/plugins/openapi/{worker/createSharedWorkerClient.ts → client/createWorkerClient.ts} +21 -2
  408. package/src/lib/plugins/openapi/client/interfaces.ts +5 -0
  409. package/src/lib/plugins/openapi/{worker → client}/worker.ts +3 -3
  410. package/src/lib/plugins/openapi/context.tsx +16 -0
  411. package/src/lib/plugins/openapi/index.tsx +59 -52
  412. package/src/lib/plugins/openapi/interfaces.ts +9 -0
  413. package/src/lib/plugins/openapi/playground/Headers.tsx +60 -33
  414. package/src/lib/plugins/openapi/playground/PathParams.tsx +1 -1
  415. package/src/lib/plugins/openapi/playground/Playground.tsx +158 -193
  416. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +34 -0
  417. package/src/lib/plugins/openapi/playground/QueryParams.tsx +7 -2
  418. package/src/lib/plugins/openapi/playground/createUrl.ts +1 -1
  419. package/src/lib/plugins/openapi/util/prose.ts +7 -0
  420. package/src/lib/plugins/openapi-worker.ts +1 -1
  421. package/src/lib/plugins/redirect/index.tsx +3 -4
  422. package/src/lib/ui/Callout.tsx +4 -4
  423. package/src/lib/util/MdxComponents.tsx +6 -14
  424. package/src/lib/util/groupBy.ts +7 -12
  425. package/src/lib/util/logInit.ts +9 -0
  426. package/src/lib/util/objectEntries.ts +5 -0
  427. package/src/lib/util/renderIf.ts +4 -0
  428. package/dist/lib/components/Link.d.ts +0 -1
  429. package/dist/lib/components/Link.js +0 -2
  430. package/dist/lib/components/Link.js.map +0 -1
  431. package/dist/lib/components/Router.d.ts +0 -4
  432. package/dist/lib/components/Router.js +0 -20
  433. package/dist/lib/components/Router.js.map +0 -1
  434. package/dist/lib/core/helmet.d.ts +0 -4
  435. package/dist/lib/core/helmet.js +0 -5
  436. package/dist/lib/core/helmet.js.map +0 -1
  437. package/dist/lib/core/icons.d.ts +0 -1
  438. package/dist/lib/core/icons.js +0 -2
  439. package/dist/lib/core/icons.js.map +0 -1
  440. package/dist/lib/core/router.d.ts +0 -1
  441. package/dist/lib/core/router.js +0 -2
  442. package/dist/lib/core/router.js.map +0 -1
  443. package/dist/lib/plugins/api-key/CreateApiKey.d.ts +0 -5
  444. package/dist/lib/plugins/api-key/CreateApiKey.js.map +0 -1
  445. package/dist/lib/plugins/api-key/SettingsApiKeys.d.ts +0 -5
  446. package/dist/lib/plugins/api-key/SettingsApiKeys.js +0 -37
  447. package/dist/lib/plugins/api-key/SettingsApiKeys.js.map +0 -1
  448. package/dist/lib/plugins/api-key/index.js.map +0 -1
  449. package/dist/lib/plugins/index.d.ts +0 -4
  450. package/dist/lib/plugins/index.js +0 -5
  451. package/dist/lib/plugins/index.js.map +0 -1
  452. package/dist/lib/plugins/openapi/MakeRequest.js.map +0 -1
  453. package/dist/lib/plugins/openapi/Select.js +0 -5
  454. package/dist/lib/plugins/openapi/Select.js.map +0 -1
  455. package/dist/lib/plugins/openapi/worker/createSharedWorkerClient.d.ts +0 -5
  456. package/dist/lib/plugins/openapi/worker/createSharedWorkerClient.js.map +0 -1
  457. package/dist/lib/plugins/openapi/worker/shared-worker.d.ts +0 -1
  458. package/dist/lib/plugins/openapi/worker/shared-worker.js +0 -6
  459. package/dist/lib/plugins/openapi/worker/shared-worker.js.map +0 -1
  460. package/dist/lib/plugins/openapi/worker/worker.js.map +0 -1
  461. package/dist/vite/common.d.ts +0 -1
  462. package/dist/vite/common.js +0 -5
  463. package/dist/vite/common.js.map +0 -1
  464. package/dist/vite/plugin-html.d.ts +0 -3
  465. package/dist/vite/plugin-html.js +0 -47
  466. package/dist/vite/plugin-html.js.map +0 -1
  467. package/dist/vite/plugin-openapi-worker.d.ts +0 -4
  468. package/dist/vite/plugin-openapi-worker.js +0 -28
  469. package/dist/vite/plugin-openapi-worker.js.map +0 -1
  470. package/lib/Spinner-DWHrSHMP.js +0 -8411
  471. package/lib/clerk-Wslx_mPo.js +0 -19685
  472. package/lib/index-DNx3xWa2.js +0 -3461
  473. package/lib/state-DfftBQ9X.js +0 -312
  474. package/lib/zudoku.plugins.js +0 -19873
  475. package/src/lib/components/Link.tsx +0 -1
  476. package/src/lib/components/Router.tsx +0 -28
  477. package/src/lib/core/helmet.ts +0 -5
  478. package/src/lib/core/icons.tsx +0 -1
  479. package/src/lib/core/router.tsx +0 -1
  480. package/src/lib/plugins/api-key/SettingsApiKeys.tsx +0 -122
  481. package/src/lib/plugins/index.ts +0 -4
  482. package/src/lib/plugins/openapi/worker/shared-worker.ts +0 -5
  483. /package/dist/lib/plugins/openapi/{worker → client}/worker.d.ts +0 -0
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { AlertTriangleIcon, InfoIcon, LightbulbIcon, ShieldAlertIcon, } from "../core/icons.js";
2
+ import { AlertTriangleIcon, InfoIcon, LightbulbIcon, ShieldAlertIcon, } from "lucide-react";
3
3
  import { cn } from "../util/cn.js";
4
4
  const stylesMap = {
5
5
  note: {
@@ -45,6 +45,6 @@ const stylesMap = {
45
45
  };
46
46
  export const Callout = ({ type, children, title, className }) => {
47
47
  const { border, bg, iconColor, titleColor, textColor, Icon } = stylesMap[type];
48
- return (_jsxs("div", { className: cn("not-prose grid grid-cols-[fit-content_1fr] grid-rows-[fit-content_1fr] gap-x-4 gap-y-2 text-md rounded-md border p-4", "[&_a]:underline [&_a]:decoration-current [&_a]:decoration-from-font [&_a]:underline-offset-4 hover:[&_a]:decoration-1", "[&_code]:!bg-transparent [&_code]:!border-none", title && "items-center", border, bg, className), children: [_jsx(Icon, { className: cn(!title && "mt-1 translate-y-px", iconColor), size: 20, "aria-hidden": "true" }), title && _jsx("h3", { className: cn("font-medium", titleColor), children: title }), _jsx("div", { className: cn("col-start-2", !title && "row-start-1", textColor), children: children })] }));
48
+ return (_jsxs("div", { className: cn("not-prose grid grid-cols-[min-content_1fr] grid-rows-[fit-content_1fr] gap-x-4 gap-y-2 text-md rounded-md border p-4", "[&_a]:underline [&_a]:decoration-current [&_a]:decoration-from-font [&_a]:underline-offset-4 hover:[&_a]:decoration-1", "[&_code]:!bg-gray-50 [&_code]:dark:!bg-gray-800 [&_code]:!border-none", title && "items-center", border, bg, className), children: [_jsx(Icon, { className: cn(!title && "mt-1 translate-y-px", iconColor), size: 20, "aria-hidden": "true" }), title && _jsx("h3", { className: cn("font-medium", titleColor), children: title }), _jsx("div", { className: cn("col-start-2", !title && "row-start-1", textColor), children: children })] }));
49
49
  };
50
50
  //# sourceMappingURL=Callout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../../src/lib/ui/Callout.tsx"],"names":[],"mappings":";AACA,OAAO,EACL,iBAAiB,EACjB,QAAQ,EACR,aAAa,EACb,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEnC,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE;QACJ,MAAM,EAAE,sCAAsC;QAC9C,EAAE,EAAE,iCAAiC;QACrC,SAAS,EAAE,kCAAkC;QAC7C,UAAU,EAAE,kCAAkC;QAC9C,SAAS,EAAE,kCAAkC;QAC7C,IAAI,EAAE,QAAQ;KACf;IACD,GAAG,EAAE;QACH,MAAM,EAAE,wCAAwC;QAChD,EAAE,EAAE,sCAAsC;QAC1C,SAAS,EAAE,oCAAoC;QAC/C,UAAU,EAAE,oCAAoC;QAChD,SAAS,EAAE,mCAAmC;QAC9C,IAAI,EAAE,aAAa;KACpB;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,yCAAyC;QACjD,EAAE,EAAE,gCAAgC;QACpC,SAAS,EAAE,kCAAkC;QAC7C,UAAU,EAAE,kCAAkC;QAC9C,SAAS,EAAE,kCAAkC;QAC7C,IAAI,EAAE,QAAQ;KACf;IACD,OAAO,EAAE;QACP,MAAM,EAAE,6CAA6C;QACrD,EAAE,EAAE,wCAAwC;QAC5C,SAAS,EAAE,sCAAsC;QACjD,UAAU,EAAE,sCAAsC;QAClD,SAAS,EAAE,sCAAsC;QACjD,IAAI,EAAE,iBAAiB;KACxB;IACD,MAAM,EAAE;QACN,MAAM,EAAE,sCAAsC;QAC9C,EAAE,EAAE,gCAAgC;QACpC,SAAS,EAAE,kCAAkC;QAC7C,UAAU,EAAE,kCAAkC;QAC9C,SAAS,EAAE,kCAAkC;QAC7C,IAAI,EAAE,eAAe;KACtB;CACF,CAAC;AASF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAgB,EAAE,EAAE;IAC5E,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,GAC1D,SAAS,CAAC,IAAI,CAAC,CAAC;IAElB,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,sHAAsH,EACtH,uHAAuH,EACvH,gDAAgD,EAChD,KAAK,IAAI,cAAc,EACvB,MAAM,EACN,EAAE,EACF,SAAS,CACV,aAED,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,qBAAqB,EAAE,SAAS,CAAC,EACzD,IAAI,EAAE,EAAE,iBACI,MAAM,GAClB,EACD,KAAK,IAAI,aAAI,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,YAAG,KAAK,GAAM,EACpE,cAAK,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC,KAAK,IAAI,aAAa,EAAE,SAAS,CAAC,YAClE,QAAQ,GACL,IACF,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../../src/lib/ui/Callout.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,QAAQ,EACR,aAAa,EACb,eAAe,GAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEnC,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE;QACJ,MAAM,EAAE,sCAAsC;QAC9C,EAAE,EAAE,iCAAiC;QACrC,SAAS,EAAE,kCAAkC;QAC7C,UAAU,EAAE,kCAAkC;QAC9C,SAAS,EAAE,kCAAkC;QAC7C,IAAI,EAAE,QAAQ;KACf;IACD,GAAG,EAAE;QACH,MAAM,EAAE,wCAAwC;QAChD,EAAE,EAAE,sCAAsC;QAC1C,SAAS,EAAE,oCAAoC;QAC/C,UAAU,EAAE,oCAAoC;QAChD,SAAS,EAAE,mCAAmC;QAC9C,IAAI,EAAE,aAAa;KACpB;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,yCAAyC;QACjD,EAAE,EAAE,gCAAgC;QACpC,SAAS,EAAE,kCAAkC;QAC7C,UAAU,EAAE,kCAAkC;QAC9C,SAAS,EAAE,kCAAkC;QAC7C,IAAI,EAAE,QAAQ;KACf;IACD,OAAO,EAAE;QACP,MAAM,EAAE,6CAA6C;QACrD,EAAE,EAAE,wCAAwC;QAC5C,SAAS,EAAE,sCAAsC;QACjD,UAAU,EAAE,sCAAsC;QAClD,SAAS,EAAE,sCAAsC;QACjD,IAAI,EAAE,iBAAiB;KACxB;IACD,MAAM,EAAE;QACN,MAAM,EAAE,sCAAsC;QAC9C,EAAE,EAAE,gCAAgC;QACpC,SAAS,EAAE,kCAAkC;QAC7C,UAAU,EAAE,kCAAkC;QAC9C,SAAS,EAAE,kCAAkC;QAC7C,IAAI,EAAE,eAAe;KACtB;CACF,CAAC;AASF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAgB,EAAE,EAAE;IAC5E,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,GAC1D,SAAS,CAAC,IAAI,CAAC,CAAC;IAElB,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,sHAAsH,EACtH,uHAAuH,EACvH,uEAAuE,EACvE,KAAK,IAAI,cAAc,EACvB,MAAM,EACN,EAAE,EACF,SAAS,CACV,aAED,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,qBAAqB,EAAE,SAAS,CAAC,EACzD,IAAI,EAAE,EAAE,iBACI,MAAM,GAClB,EACD,KAAK,IAAI,aAAI,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,YAAG,KAAK,GAAM,EACpE,cAAK,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC,KAAK,IAAI,aAAa,EAAE,SAAS,CAAC,YAClE,QAAQ,GACL,IACF,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export declare const buttonVariants: (props?: ({
2
- variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
2
+ variant?: "link" | "default" | "outline" | "destructive" | "secondary" | "ghost" | null | undefined;
3
3
  size?: "default" | "icon" | "sm" | "lg" | null | undefined;
4
4
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
@@ -2,14 +2,14 @@ import { MDXProvider } from "@mdx-js/react";
2
2
  import type { ComponentProps } from "react";
3
3
  export type MdxComponentsType = ComponentProps<typeof MDXProvider>["components"];
4
4
  export declare const MdxComponents: {
5
- img: (props: import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>) => import("react/jsx-runtime").JSX.Element;
5
+ img: ({ node, ...props }: import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>) => import("react/jsx-runtime").JSX.Element;
6
6
  h1: ({ children, id }: import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>) => import("react/jsx-runtime").JSX.Element;
7
7
  h2: ({ children, id }: import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>) => import("react/jsx-runtime").JSX.Element;
8
8
  h3: ({ children, id }: import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>) => import("react/jsx-runtime").JSX.Element;
9
9
  h4: ({ children, id }: import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>) => import("react/jsx-runtime").JSX.Element;
10
10
  h5: ({ children, id }: import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>) => import("react/jsx-runtime").JSX.Element;
11
11
  h6: ({ children, id }: import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>) => import("react/jsx-runtime").JSX.Element;
12
- a: ({ href, ...props }: import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>) => import("react/jsx-runtime").JSX.Element;
12
+ a: ({ href, node, ...props }: import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>) => import("react/jsx-runtime").JSX.Element;
13
13
  Callout: ({ type, children, title, className }: {
14
14
  type: "note" | "tip" | "info" | "caution" | "danger";
15
15
  title?: string;
@@ -1,11 +1,12 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { Link } from "react-router-dom";
3
3
  import { Heading } from "../components/Heading.js";
4
+ import { InlineCode } from "../components/InlineCode.js";
4
5
  import { SyntaxHighlight } from "../components/SyntaxHighlight.js";
5
6
  import { Callout } from "../ui/Callout.js";
6
- import { cn } from "./cn.js";
7
7
  export const MdxComponents = {
8
- img: (props) => {
8
+ // @ts-expect-error Node is not in types but still gets passed
9
+ img: ({ node, ...props }) => {
9
10
  if (/\.(mp4|webm|mov|avi)$/.test(props.src ?? "")) {
10
11
  return _jsx("video", { src: props.src, controls: true, playsInline: true, autoPlay: true, loop: true });
11
12
  }
@@ -17,7 +18,8 @@ export const MdxComponents = {
17
18
  h4: ({ children, id }) => (_jsx(Heading, { level: 4, id: id, children: children })),
18
19
  h5: ({ children, id }) => (_jsx(Heading, { level: 5, id: id, children: children })),
19
20
  h6: ({ children, id }) => (_jsx(Heading, { level: 6, id: id, children: children })),
20
- a: ({ href, ...props }) => href && !href.startsWith("http") ? (_jsx(Link, { to: href, relative: "path", ...props })) : (_jsx("a", { href: href, target: "_blank", ...props, rel: "noreferrer" })),
21
+ // @ts-expect-error Node is not in types but still gets passed
22
+ a: ({ href, node, ...props }) => href && !href.startsWith("http") ? (_jsx(Link, { to: href, relative: "path", ...props })) : (_jsx("a", { href: href, target: "_blank", ...props, rel: "noreferrer" })),
21
23
  Callout,
22
24
  tip: (props) => _jsx(Callout, { type: "tip", ...props }),
23
25
  info: (props) => _jsx(Callout, { type: "info", ...props }),
@@ -34,7 +36,7 @@ export const MdxComponents = {
34
36
  const match = className?.match(/language?-(\w+)/);
35
37
  return (_jsx(SyntaxHighlight, { language: match?.[1] ?? "markup", className: "rounded-xl overflow-x-auto p-4 border border-border dark:!bg-foreground/10 dark:border-transparent", showLanguageIndicator: true, code: String(children).trim() }));
36
38
  }
37
- return (_jsx("code", { className: cn(className, "font-mono border border-border p-1 py-0.5 rounded bg-border/50 dark:bg-border/70"), children: children }));
39
+ return _jsx(InlineCode, { className: className, children: children });
38
40
  },
39
41
  };
40
42
  //# sourceMappingURL=MdxComponents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MdxComponents.js","sourceRoot":"","sources":["../../../src/lib/util/MdxComponents.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MdxComponents.js","sourceRoot":"","sources":["../../../src/lib/util/MdxComponents.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAM3C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,8DAA8D;IAC9D,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;QAC1B,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;YAClD,OAAO,gBAAO,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,QAAC,WAAW,QAAC,QAAQ,QAAC,IAAI,SAAG,CAAC;QACtE,CAAC;QACD,OAAO,iBAAS,KAAK,EAAE,SAAS,EAAC,YAAY,GAAG,CAAC;IACnD,CAAC;IACD,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,YACtB,QAAQ,GACD,CACX;IACD,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,YACtB,QAAQ,GACD,CACX;IACD,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,YACtB,QAAQ,GACD,CACX;IACD,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,YACtB,QAAQ,GACD,CACX;IACD,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,YACtB,QAAQ,GACD,CACX;IACD,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,YACtB,QAAQ,GACD,CACX;IACD,8DAA8D;IAC9D,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAC9B,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CACjC,KAAC,IAAI,IAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAC,MAAM,KAAK,KAAK,GAAI,CAC9C,CAAC,CAAC,CAAC,CACF,YAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAC,QAAQ,KAAK,KAAK,EAAE,GAAG,EAAC,YAAY,GAAG,CAC9D;IACH,OAAO;IACP,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,KAAK,KAAK,KAAK,GAAI;IACjD,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,MAAM,KAAK,KAAK,GAAI;IACnD,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,MAAM,KAAK,KAAK,GAAI;IACnD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,SAAS,KAAK,KAAK,GAAI;IACzD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,SAAS,KAAK,KAAK,GAAI;IACzD,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,KAAK,KAAK,GAAI;IAEvD,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,4BAAG,QAAQ,GAAI;IACtC,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;QAC1C,qFAAqF;QACrF,8DAA8D;QAC9D,MAAM,MAAM,GAAI,KAAa,CAAC,MAAM,CAAC;QAErC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAElD,OAAO,CACL,KAAC,eAAe,IACd,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,QAAQ,EAChC,SAAS,EAAC,oGAAoG,EAC9G,qBAAqB,QACrB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,GAC7B,CACH,CAAC;QACJ,CAAC;QAED,OAAO,KAAC,UAAU,IAAC,SAAS,EAAE,SAAS,YAAG,QAAQ,GAAc,CAAC;IACnE,CAAC;CAC0B,CAAC"}
@@ -1,6 +1 @@
1
- type MapValuesToKeysIfAllowed<T> = {
2
- [K in keyof T]: T[K] extends PropertyKey ? K : never;
3
- };
4
- type Filter<T> = MapValuesToKeysIfAllowed<T>[keyof T];
5
- export declare const groupBy: <T extends Record<PropertyKey, any>, Key extends Filter<T>>(arr: T[], key: Key) => Record<T[Key], T[]>;
6
- export {};
1
+ export declare const groupBy: <T extends Record<PropertyKey, any>, KeySelector extends (item: T) => PropertyKey>(arr: T[], keySelector: KeySelector) => Partial<Record<ReturnType<KeySelector>, T[]>>;
@@ -1,9 +1,11 @@
1
- export const groupBy = (arr, key) => arr.reduce((accumulator, val) => {
2
- const groupedKey = val[key];
3
- if (!accumulator[groupedKey]) {
4
- accumulator[groupedKey] = [];
5
- }
6
- accumulator[groupedKey].push(val);
7
- return accumulator;
8
- }, {});
1
+ export const groupBy = (arr, keySelector) => {
2
+ return arr.reduce((accumulator, val) => {
3
+ const groupedKey = keySelector(val);
4
+ if (!accumulator[groupedKey]) {
5
+ accumulator[groupedKey] = [];
6
+ }
7
+ accumulator[groupedKey].push(val);
8
+ return accumulator;
9
+ }, {});
10
+ };
9
11
  //# sourceMappingURL=groupBy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"groupBy.js","sourceRoot":"","sources":["../../../src/lib/util/groupBy.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,OAAO,GAAG,CAKrB,GAAQ,EACR,GAAQ,EACa,EAAE,CACvB,GAAG,CAAC,MAAM,CACR,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;IACnB,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7B,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IACD,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO,WAAW,CAAC;AACrB,CAAC,EACD,EAAyB,CAC1B,CAAC"}
1
+ {"version":3,"file":"groupBy.js","sourceRoot":"","sources":["../../../src/lib/util/groupBy.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,CAIrB,GAAQ,EACR,WAAwB,EACuB,EAAE;IACjD,OAAO,GAAG,CAAC,MAAM,CACf,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;QACnB,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAA4B,CAAC;QAC/D,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QAC/B,CAAC;QACD,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClC,OAAO,WAAW,CAAC;IACrB,CAAC,EACD,EAA0C,CAC3C,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import log from "loglevel";
2
+ log.setDefaultLevel("silent");
3
+ if (import.meta.env.DEV) {
4
+ log.setLevel("debug");
5
+ }
6
+ else if (localStorage.getItem("ENABLE_DEBUG_LOGS")) {
7
+ log.setLevel("debug");
8
+ }
9
+ //# sourceMappingURL=logInit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logInit.js","sourceRoot":"","sources":["../../../src/lib/util/logInit.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAE9B,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IACxB,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;KAAM,IAAI,YAAY,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;IACrD,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC"}
@@ -0,0 +1,4 @@
1
+ type ValueOf<T> = T[keyof T];
2
+ type Entries<T> = [keyof T, ValueOf<T>][];
3
+ export declare const objectEntries: <T extends object>(obj: T) => Entries<T>;
4
+ export {};
@@ -0,0 +1,2 @@
1
+ export const objectEntries = (obj) => Object.entries(obj);
2
+ //# sourceMappingURL=objectEntries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectEntries.js","sourceRoot":"","sources":["../../../src/lib/util/objectEntries.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAmB,GAAM,EAAc,EAAE,CACpE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAe,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const renderIf: <G, R>(variable: G | undefined | null, callback: (variable: G) => R) => R | undefined;
@@ -0,0 +1,2 @@
1
+ export const renderIf = (variable, callback) => (variable ? callback(variable) : undefined);
2
+ //# sourceMappingURL=renderIf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderIf.js","sourceRoot":"","sources":["../../../src/lib/util/renderIf.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,QAA8B,EAC9B,QAA4B,EACb,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC"}
@@ -2,19 +2,39 @@ import { writeFile } from "fs/promises";
2
2
  import { build as viteBuild } from "vite";
3
3
  import { getViteConfig } from "./config.js";
4
4
  import { getBuildHtml } from "./html.js";
5
+ import { prerender } from "./prerender.js";
5
6
  export async function runBuild(options) {
6
- const viteConfig = await getViteConfig({ dir: options.dir, mode: "build" });
7
- const result = await viteBuild(viteConfig);
8
- if (Array.isArray(result)) {
7
+ // Shouldn't run in parallel because it's potentially racy
8
+ const viteClientConfig = await getViteConfig(options.dir, {
9
+ mode: "production",
10
+ command: "build",
11
+ });
12
+ const viteServerConfig = await getViteConfig(options.dir, {
13
+ mode: "production",
14
+ command: "build",
15
+ isSsrBuild: true,
16
+ });
17
+ // Don't run in parallel because it might overwrite itself
18
+ const clientResult = await viteBuild(viteClientConfig);
19
+ await viteBuild(viteServerConfig);
20
+ if (Array.isArray(clientResult)) {
9
21
  throw new Error("Build failed");
10
22
  }
11
- if ("output" in result) {
12
- const jsEntry = result.output.find((o) => "isEntry" in o && o.isEntry)?.fileName;
13
- const cssEntry = result.output.find((o) => o.fileName.endsWith(".css"))?.fileName;
23
+ if ("output" in clientResult) {
24
+ const jsEntry = clientResult.output.find((o) => "isEntry" in o && o.isEntry)?.fileName;
25
+ const cssEntry = clientResult.output.find((o) => o.fileName.endsWith(".css"))?.fileName;
14
26
  const html = getBuildHtml({
15
27
  jsEntry: `/${jsEntry}`,
16
28
  cssEntry: `/${cssEntry}`,
17
29
  });
30
+ try {
31
+ await prerender(html, options.dir);
32
+ }
33
+ catch (e) {
34
+ // dynamic imports in prerender swallow the stack trace, so we log it here
35
+ // eslint-disable-next-line no-console
36
+ console.error(e);
37
+ }
18
38
  await writeFile(`${options.dir}/dist/index.html`, html, "utf-8");
19
39
  return;
20
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/vite/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IACrD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAE5E,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC;IAE3C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAChC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CACnC,EAAE,QAAQ,CAAC;QACZ,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5B,EAAE,QAAQ,CAAC;QAEZ,MAAM,IAAI,GAAG,YAAY,CAAC;YACxB,OAAO,EAAE,IAAI,OAAO,EAAE;YACtB,QAAQ,EAAE,IAAI,QAAQ,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,SAAS,CAAC,GAAG,OAAO,CAAC,GAAG,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/vite/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IACrD,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE;QACxD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE;QACxD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IAEH,0DAA0D;IAC1D,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACvD,MAAM,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAElC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ,IAAI,YAAY,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CACnC,EAAE,QAAQ,CAAC;QACZ,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5B,EAAE,QAAQ,CAAC;QAEZ,MAAM,IAAI,GAAG,YAAY,CAAC;YACxB,OAAO,EAAE,IAAI,OAAO,EAAE;YACtB,QAAQ,EAAE,IAAI,QAAQ,EAAE;SACzB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,0EAA0E;YAC1E,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;QACD,MAAM,SAAS,CAAC,GAAG,OAAO,CAAC,GAAG,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAEjE,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;AAClC,CAAC"}
@@ -1,14 +1,15 @@
1
- import { InlineConfig } from "vite";
2
- import { ZudokuConfig } from "../config/config.js";
1
+ import { ConfigEnv, InlineConfig } from "vite";
2
+ import { ZudokuConfig, ZudokuPluginOptions } from "../config/config.js";
3
3
  export declare const zuploConfigFiles: string[];
4
- export interface ZudokuViteConfig extends InlineConfig {
5
- root: string;
6
- }
7
- export declare function loadZuploConfig(rootDir: string): Promise<ZudokuConfig>;
8
- export declare function getModuleDir(): string;
9
- export declare function getAppMainTsxPath(): string;
10
- export declare function getViteConfig({ dir, mode, }: {
4
+ export declare function getConfigFilePath(rootDir: string): Promise<string>;
5
+ export type ZudokuConfigEnv = ConfigEnv & {
6
+ mode: "development" | "production";
7
+ };
8
+ export declare function loadZuploConfig(rootDir: string, configEnv: ZudokuConfigEnv): Promise<ZudokuConfig>;
9
+ export declare function getAppClientEntryPath(): string;
10
+ export declare function getAppServerEntryPath(): string;
11
+ export declare function getPluginOptions({ dir, mode, }: {
11
12
  dir: string;
12
- mode: "dev" | "build";
13
- }): Promise<ZudokuViteConfig>;
14
- export declare function loadConfig(rootPath: string, fileName: string): Promise<any>;
13
+ mode: ZudokuPluginOptions["mode"];
14
+ }): ZudokuPluginOptions;
15
+ export declare function getViteConfig(dir: string, configEnv: ZudokuConfigEnv): Promise<InlineConfig>;
@@ -1,15 +1,14 @@
1
+ import { vitePluginSsrCss } from "@hiogawa/vite-plugin-ssr-css";
1
2
  import autoprefixer from "autoprefixer";
2
- import esbuild from "esbuild";
3
3
  import { stat } from "node:fs/promises";
4
4
  import path from "node:path";
5
5
  import colors from "picocolors";
6
6
  import tailwindcss from "tailwindcss";
7
+ import { loadConfigFromFile, mergeConfig, } from "vite";
7
8
  import tailwindConfig from "../app/tailwind.js";
8
9
  import { logger } from "../cli/common/logger.js";
9
10
  import { isPortAvailable } from "../cli/common/utils/ports.js";
10
11
  import { validateConfig } from "../config/validators/validate.js";
11
- import { externalModules } from "./common.js";
12
- import { COMPILED_CONFIG_PATH } from "./plugin-config.js";
13
12
  import vitePlugin from "./plugin.js";
14
13
  export const zuploConfigFiles = [
15
14
  "zudoku.config.js",
@@ -21,19 +20,43 @@ export const zuploConfigFiles = [
21
20
  const fileExists = (path) => stat(path)
22
21
  .then(() => true)
23
22
  .catch(() => false);
24
- export async function loadZuploConfig(rootDir) {
23
+ let configPath;
24
+ export async function getConfigFilePath(rootDir) {
25
+ if (configPath) {
26
+ return configPath;
27
+ }
25
28
  for (const fileName of zuploConfigFiles) {
26
29
  const filepath = path.join(rootDir, fileName);
27
- try {
28
- if (await fileExists(filepath)) {
29
- logger.info(colors.yellow(`loaded config file `) + colors.dim(filepath), { timestamp: true });
30
- const config = await loadConfig(rootDir, fileName);
31
- return config.default;
32
- }
30
+ if (await fileExists(filepath)) {
31
+ configPath = filepath;
32
+ return filepath;
33
33
  }
34
- catch (e) {
35
- logger.error(e);
34
+ }
35
+ throw new Error(`No zudoku config file found in project root.`);
36
+ }
37
+ let config;
38
+ export async function loadZuploConfig(rootDir, configEnv) {
39
+ if (config) {
40
+ return config;
41
+ }
42
+ const filepath = await getConfigFilePath(rootDir);
43
+ try {
44
+ logger.info(colors.yellow(`loaded config file `) + colors.dim(filepath), {
45
+ timestamp: true,
46
+ });
47
+ // NOTE: This function technically is for loading vite configs, but it
48
+ // doesn't actually have anything to do with vite config, it just loads
49
+ // typescript files. So we can use it to load our zudoku config file.
50
+ // It is possible they change this and it wont work in the future.
51
+ const loaded = await loadConfigFromFile(configEnv, filepath, rootDir);
52
+ if (!loaded) {
53
+ throw new Error(`Failed to load config file: ${filepath}`);
36
54
  }
55
+ config = loaded.config;
56
+ return config;
57
+ }
58
+ catch (e) {
59
+ logger.error(e);
37
60
  }
38
61
  // Default config
39
62
  logger.error(colors.red(`no zudoku config file found in project root.`), {
@@ -41,7 +64,7 @@ export async function loadZuploConfig(rootDir) {
41
64
  });
42
65
  process.exit(1);
43
66
  }
44
- export function getModuleDir() {
67
+ function getModuleDir() {
45
68
  // NOTE: This is relative to the /dist folder because the dev server
46
69
  // runs the compiled JS files, but vite uses the raw TS files
47
70
  const moduleDir = new URL("../../", import.meta.url).pathname;
@@ -52,24 +75,35 @@ export function getModuleDir() {
52
75
  return moduleDir;
53
76
  }
54
77
  }
55
- export function getAppMainTsxPath() {
78
+ export function getAppClientEntryPath() {
56
79
  const modDir = getModuleDir();
57
- return path.join(modDir, "src", "app", "main.tsx");
80
+ return path.join(modDir, "src", "app", "entry.client.tsx");
58
81
  }
59
- export async function getViteConfig({ dir, mode, }) {
82
+ export function getAppServerEntryPath() {
83
+ const modDir = getModuleDir();
84
+ return path.join(modDir, "src", "app", "entry.server.tsx");
85
+ }
86
+ export function getPluginOptions({ dir, mode, }) {
60
87
  const moduleDir = getModuleDir();
61
- const config = await loadZuploConfig(dir);
88
+ return {
89
+ ...config,
90
+ rootDir: dir,
91
+ moduleDir,
92
+ mode,
93
+ };
94
+ }
95
+ export async function getViteConfig(dir, configEnv) {
96
+ const config = await loadZuploConfig(dir, configEnv);
62
97
  validateConfig(config);
63
98
  let websocketPort = 9800;
64
99
  while (!(await isPortAvailable("localhost", websocketPort)) &&
65
100
  websocketPort < 9999) {
66
101
  websocketPort++;
67
102
  }
68
- const pluginOptions = {
69
- ...config,
70
- rootDir: dir,
71
- moduleDir,
72
- };
103
+ const pluginOptions = getPluginOptions({
104
+ dir,
105
+ mode: process.env.ZUDOKU_INTERNAL_DEV ? "internal" : "module",
106
+ });
73
107
  const viteConfig = {
74
108
  root: dir,
75
109
  appType: "custom",
@@ -81,6 +115,10 @@ export async function getViteConfig({ dir, mode, }) {
81
115
  worker: {
82
116
  format: "es",
83
117
  },
118
+ ssr: {
119
+ target: "node",
120
+ noExternal: [],
121
+ },
84
122
  server: {
85
123
  middlewareMode: true,
86
124
  open: true,
@@ -92,37 +130,62 @@ export async function getViteConfig({ dir, mode, }) {
92
130
  `${dir}/dist`,
93
131
  `${dir}/lib`,
94
132
  `${dir}/.git`,
95
- `${moduleDir}/src/vite`,
96
- `${moduleDir}/src/cli`,
133
+ `${pluginOptions.moduleDir}/src/vite`,
134
+ `${pluginOptions.moduleDir}/src/cli`,
97
135
  ],
98
136
  },
99
137
  },
100
138
  build: {
101
- outDir: path.resolve(dir, "dist"),
139
+ ssr: configEnv.isSsrBuild,
140
+ sourcemap: true,
141
+ outDir: path.resolve(path.join(dir, "dist", configEnv.isSsrBuild ? "server" : "")),
142
+ emptyOutDir: true,
102
143
  rollupOptions: {
103
- external: [...externalModules],
104
- input: mode === "build" ? "zudoku/app/main.tsx" : undefined,
144
+ input: configEnv.command === "build"
145
+ ? configEnv.isSsrBuild
146
+ ? [
147
+ "zudoku/app/entry.server.tsx",
148
+ "zudoku/app/zudoku-manifest.ts",
149
+ configPath,
150
+ ]
151
+ : "zudoku/app/entry.client.tsx"
152
+ : undefined,
105
153
  },
106
154
  },
107
155
  optimizeDeps: {
108
- entries: [getAppMainTsxPath()],
156
+ entries: [
157
+ configEnv.isSsrBuild
158
+ ? getAppServerEntryPath()
159
+ : getAppClientEntryPath(),
160
+ ],
161
+ include: ["react-dom/client"],
109
162
  exclude: [
110
163
  // Vite does not like optimizing the worker dependency
111
164
  "zudoku/openapi-worker",
112
- "virtual:zudoku-openapi-worker",
165
+ "worker",
113
166
  ],
114
167
  },
115
- plugins: [vitePlugin(pluginOptions)],
168
+ plugins: [
169
+ vitePluginSsrCss({
170
+ entries: [`${pluginOptions.moduleDir}/src/app/entry.client.tsx`],
171
+ }),
172
+ ...vitePlugin(pluginOptions),
173
+ ],
116
174
  css: {
117
175
  postcss: {
118
176
  plugins: [
119
177
  tailwindcss({
120
178
  ...tailwindConfig,
121
179
  content: [
122
- `${moduleDir}/src/**/*.{js,ts,jsx,tsx,md,mdx}`,
180
+ // Zudoku components and styles
123
181
  // Tailwind seems to crash if it tries to parse compiled .js files
124
182
  // as a workaround, we will just ship the source file and use those
125
183
  // `${moduleDir}/lib/**/*.{js,ts,jsx,tsx,md,mdx}`,
184
+ `${pluginOptions.moduleDir}/src/lib/**/*.{js,ts,jsx,tsx,md,mdx}`,
185
+ // Users custom components
186
+ // NOTE: For now we are requiring components to be in `src` folder
187
+ // would be good to make this more dynamic though because users
188
+ // could put their components anywhere
126
189
  `${dir}/src/**/*.{js,ts,jsx,tsx,md,mdx}`,
127
190
  ],
128
191
  }),
@@ -131,30 +194,12 @@ export async function getViteConfig({ dir, mode, }) {
131
194
  },
132
195
  },
133
196
  };
134
- return viteConfig;
135
- }
136
- export async function loadConfig(rootPath, fileName) {
137
- const compiledFilepath = path.join(rootPath, COMPILED_CONFIG_PATH);
138
- const filepath = path.join(rootPath, fileName);
139
- try {
140
- await esbuild.build({
141
- entryPoints: [filepath],
142
- bundle: true,
143
- keepNames: true,
144
- treeShaking: true,
145
- minifyIdentifiers: false,
146
- minifySyntax: false,
147
- minifyWhitespace: false,
148
- platform: "node",
149
- target: "es2022",
150
- format: "esm",
151
- outfile: compiledFilepath,
152
- });
153
- }
154
- catch (error) {
155
- error.message = `TypeScript Error in ${filepath}:\n${error.message}`;
156
- throw error;
197
+ // If the user has supplied a vite.config file, merge it with ours
198
+ const userConfig = await loadConfigFromFile(configEnv, undefined, dir);
199
+ if (userConfig) {
200
+ const merged = mergeConfig(userConfig.config, viteConfig, true);
201
+ return merged;
157
202
  }
158
- return await import(compiledFilepath);
203
+ return viteConfig;
159
204
  }
160
205
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/vite/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/vite/config.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
1
  import assert from "node:assert";
2
2
  import path from "node:path";
3
3
  import test from "node:test";
4
- import { loadConfig } from "./config.js";
5
- test("Should correctly load zudoku.config.ts file", async (t) => {
4
+ import { loadZuploConfig } from "./config.js";
5
+ test("Should correctly load zudoku.config.ts file", async () => {
6
6
  const rootPath = path.resolve("../../samples/with-config/");
7
- const config = await loadConfig(rootPath, "zudoku.config.ts");
8
- assert.equal(config.default.ui.headerTitle, "My Portal");
7
+ const config = await loadZuploConfig(rootPath, {
8
+ mode: "development",
9
+ command: "build",
10
+ });
11
+ assert.equal(config.metadata?.title, "My Portal");
9
12
  });
10
13
  //# sourceMappingURL=config.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../src/vite/config.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,IAAI,CAAC,6CAA6C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAC9D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../src/vite/config.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,IAAI,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE;QAC7C,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC"}
@@ -1,10 +1,11 @@
1
1
  export declare class DevServer {
2
2
  private options;
3
3
  private server;
4
- private viteServer;
4
+ private currentConfig;
5
5
  constructor(options: {
6
6
  port: number;
7
7
  dir: string;
8
+ ssr?: boolean;
8
9
  });
9
10
  watch(): Promise<void>;
10
11
  start(): Promise<void>;