zudoku 0.3.0-dev.6 → 0.3.0-dev.60

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 (523) hide show
  1. package/dist/app/App.d.ts +1 -2
  2. package/dist/app/App.js +1 -29
  3. package/dist/app/App.js.map +1 -1
  4. package/dist/app/demo.d.ts +2 -0
  5. package/dist/app/demo.js +32 -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 +14 -0
  11. package/dist/app/entry.server.js +105 -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 +67 -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 +37 -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/cli/cmds/dev.js +5 -0
  23. package/dist/cli/cmds/dev.js.map +1 -1
  24. package/dist/cli/dev/handler.d.ts +1 -0
  25. package/dist/cli/dev/handler.js +3 -1
  26. package/dist/cli/dev/handler.js.map +1 -1
  27. package/dist/config/config.d.ts +5 -39
  28. package/dist/config/validators/validate.d.ts +878 -2
  29. package/dist/config/validators/validate.js +144 -1
  30. package/dist/config/validators/validate.js.map +1 -1
  31. package/dist/internal.d.ts +1 -0
  32. package/dist/internal.js +2 -0
  33. package/dist/internal.js.map +1 -0
  34. package/dist/lib/authentication/AuthenticationPlugin.d.ts +16 -0
  35. package/dist/lib/authentication/AuthenticationPlugin.js +31 -0
  36. package/dist/lib/authentication/AuthenticationPlugin.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 +3 -4
  40. package/dist/lib/authentication/components/Login.d.ts +1 -0
  41. package/dist/lib/authentication/components/Login.js +10 -0
  42. package/dist/lib/authentication/components/Login.js.map +1 -0
  43. package/dist/lib/authentication/components/Logout.d.ts +1 -0
  44. package/dist/lib/authentication/components/Logout.js +10 -0
  45. package/dist/lib/authentication/components/Logout.js.map +1 -0
  46. package/dist/lib/authentication/providers/clerk.js +45 -27
  47. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  48. package/dist/lib/authentication/providers/openid.d.ts +11 -3
  49. package/dist/lib/authentication/providers/openid.js +22 -11
  50. package/dist/lib/authentication/providers/openid.js.map +1 -1
  51. package/dist/lib/authentication/routes.d.ts +5 -0
  52. package/dist/lib/authentication/routes.js +12 -0
  53. package/dist/lib/authentication/routes.js.map +1 -0
  54. package/dist/lib/components/Bootstrap.d.ts +13 -0
  55. package/dist/lib/components/Bootstrap.js +12 -0
  56. package/dist/lib/components/Bootstrap.js.map +1 -0
  57. package/dist/lib/components/DevPortal.d.ts +4 -19
  58. package/dist/lib/components/DevPortal.js +30 -12
  59. package/dist/lib/components/DevPortal.js.map +1 -1
  60. package/dist/lib/components/DeveloperHint.d.ts +5 -0
  61. package/dist/lib/components/DeveloperHint.js +10 -0
  62. package/dist/lib/components/DeveloperHint.js.map +1 -0
  63. package/dist/lib/components/ErrorPage.d.ts +6 -0
  64. package/dist/lib/components/ErrorPage.js +9 -0
  65. package/dist/lib/components/ErrorPage.js.map +1 -0
  66. package/dist/lib/components/Header.js +17 -3
  67. package/dist/lib/components/Header.js.map +1 -1
  68. package/dist/lib/components/Heading.d.ts +9 -4
  69. package/dist/lib/components/Heading.js +17 -2
  70. package/dist/lib/components/Heading.js.map +1 -1
  71. package/dist/lib/components/InlineCode.d.ts +5 -0
  72. package/dist/lib/components/InlineCode.js +4 -0
  73. package/dist/lib/components/InlineCode.js.map +1 -0
  74. package/dist/lib/components/Layout.js +3 -2
  75. package/dist/lib/components/Layout.js.map +1 -1
  76. package/dist/lib/components/NotFoundPage.d.ts +1 -0
  77. package/dist/lib/components/NotFoundPage.js +12 -0
  78. package/dist/lib/components/NotFoundPage.js.map +1 -0
  79. package/dist/lib/components/SyntaxHighlight.d.ts +3 -2
  80. package/dist/lib/components/SyntaxHighlight.js +20 -18
  81. package/dist/lib/components/SyntaxHighlight.js.map +1 -1
  82. package/dist/lib/components/TopNavigation.d.ts +1 -1
  83. package/dist/lib/components/TopNavigation.js +5 -1
  84. package/dist/lib/components/TopNavigation.js.map +1 -1
  85. package/dist/lib/components/context/DevPortalProvider.d.ts +1 -1
  86. package/dist/lib/components/context/DevPortalProvider.js +20 -3
  87. package/dist/lib/components/context/DevPortalProvider.js.map +1 -1
  88. package/dist/lib/components/index.d.ts +32 -3
  89. package/dist/lib/components/index.js +21 -3
  90. package/dist/lib/components/index.js.map +1 -1
  91. package/dist/lib/components/navigation/SideNavigationCategory.js +2 -2
  92. package/dist/lib/components/navigation/SideNavigationCategory.js.map +1 -1
  93. package/dist/lib/components/navigation/SideNavigationItem.js +1 -1
  94. package/dist/lib/components/navigation/SideNavigationItem.js.map +1 -1
  95. package/dist/lib/core/DevPortalContext.d.ts +46 -12
  96. package/dist/lib/core/DevPortalContext.js +7 -9
  97. package/dist/lib/core/DevPortalContext.js.map +1 -1
  98. package/dist/lib/core/plugins.d.ts +16 -4
  99. package/dist/lib/core/plugins.js +2 -0
  100. package/dist/lib/core/plugins.js.map +1 -1
  101. package/dist/lib/errors/ErrorAlert.d.ts +3 -0
  102. package/dist/lib/errors/ErrorAlert.js +8 -0
  103. package/dist/lib/errors/ErrorAlert.js.map +1 -0
  104. package/dist/lib/errors/RouterError.d.ts +1 -0
  105. package/dist/lib/errors/RouterError.js +12 -0
  106. package/dist/lib/errors/RouterError.js.map +1 -0
  107. package/dist/lib/errors/ServerError.d.ts +3 -0
  108. package/dist/lib/errors/ServerError.js +6 -0
  109. package/dist/lib/errors/ServerError.js.map +1 -0
  110. package/dist/lib/errors/TopLevelError.d.ts +2 -0
  111. package/dist/lib/errors/TopLevelError.js +7 -0
  112. package/dist/lib/errors/TopLevelError.js.map +1 -0
  113. package/dist/lib/oas/graphql/index.js +6 -4
  114. package/dist/lib/oas/graphql/index.js.map +1 -1
  115. package/dist/lib/oas/parser/index.d.ts +1 -1
  116. package/dist/lib/oas/parser/index.js +38 -12
  117. package/dist/lib/oas/parser/index.js.map +1 -1
  118. package/dist/lib/plugins/{api-key → api-keys}/CreateApiKey.js +1 -1
  119. package/dist/lib/plugins/api-keys/CreateApiKey.js.map +1 -0
  120. package/dist/lib/plugins/api-keys/ProtectedRoute.d.ts +1 -0
  121. package/dist/lib/plugins/api-keys/ProtectedRoute.js +14 -0
  122. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -0
  123. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +39 -0
  124. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -0
  125. package/dist/lib/plugins/{api-key → api-keys}/index.d.ts +4 -5
  126. package/dist/lib/plugins/{api-key → api-keys}/index.js +11 -19
  127. package/dist/lib/plugins/api-keys/index.js.map +1 -0
  128. package/dist/lib/plugins/custom-page/index.d.ts +8 -0
  129. package/dist/lib/plugins/custom-page/index.js +12 -0
  130. package/dist/lib/plugins/custom-page/index.js.map +1 -0
  131. package/dist/lib/plugins/markdown/MdxPage.d.ts +3 -2
  132. package/dist/lib/plugins/markdown/MdxPage.js +7 -6
  133. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  134. package/dist/lib/plugins/markdown/Toc.js +1 -1
  135. package/dist/lib/plugins/markdown/Toc.js.map +1 -1
  136. package/dist/lib/plugins/markdown/generateRoutes.d.ts +3 -3
  137. package/dist/lib/plugins/markdown/generateRoutes.js +4 -4
  138. package/dist/lib/plugins/markdown/generateRoutes.js.map +1 -1
  139. package/dist/lib/plugins/markdown/index.d.ts +4 -1
  140. package/dist/lib/plugins/markdown/index.js +3 -7
  141. package/dist/lib/plugins/markdown/index.js.map +1 -1
  142. package/dist/lib/plugins/openapi/OperationList.js +17 -5
  143. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  144. package/dist/lib/plugins/openapi/OperationListItem.js +10 -5
  145. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  146. package/dist/lib/plugins/openapi/ParameterList.js +1 -1
  147. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  148. package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
  149. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  150. package/dist/lib/plugins/openapi/{MakeRequest.d.ts → PlaygroundDialogWrapper.d.ts} +1 -1
  151. package/dist/lib/plugins/openapi/{MakeRequest.js → PlaygroundDialogWrapper.js} +4 -16
  152. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -0
  153. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +1 -9
  154. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  155. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +1 -1
  156. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  157. package/dist/lib/plugins/openapi/Route.d.ts +6 -0
  158. package/dist/lib/plugins/openapi/Route.js +8 -0
  159. package/dist/lib/plugins/openapi/Route.js.map +1 -0
  160. package/dist/lib/plugins/openapi/SchemaListView.js +6 -27
  161. package/dist/lib/plugins/openapi/SchemaListView.js.map +1 -1
  162. package/dist/lib/plugins/openapi/SchemaListViewItem.d.ts +7 -0
  163. package/dist/lib/plugins/openapi/SchemaListViewItem.js +16 -0
  164. package/dist/lib/plugins/openapi/SchemaListViewItem.js.map +1 -0
  165. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.d.ts +8 -0
  166. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.js +17 -0
  167. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.js.map +1 -0
  168. package/dist/lib/plugins/openapi/Sidecar.js +10 -8
  169. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  170. package/dist/lib/plugins/openapi/SidecarBox.js +1 -1
  171. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  172. package/dist/lib/plugins/openapi/{Select.d.ts → SimpleSelect.d.ts} +3 -2
  173. package/dist/lib/plugins/openapi/SimpleSelect.js +5 -0
  174. package/dist/lib/plugins/openapi/SimpleSelect.js.map +1 -0
  175. package/dist/lib/plugins/openapi/StaggeredRender.d.ts +8 -0
  176. package/dist/lib/plugins/openapi/StaggeredRender.js +18 -0
  177. package/dist/lib/plugins/openapi/StaggeredRender.js.map +1 -0
  178. package/dist/lib/plugins/openapi/client/createMemoryClient.d.ts +12 -0
  179. package/dist/lib/plugins/openapi/client/createMemoryClient.js +46 -0
  180. package/dist/lib/plugins/openapi/client/createMemoryClient.js.map +1 -0
  181. package/dist/lib/plugins/openapi/client/createServer.d.ts +4 -0
  182. package/dist/lib/plugins/openapi/client/createServer.js +30 -0
  183. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -0
  184. package/dist/lib/plugins/openapi/client/createWorkerClient.d.ts +10 -0
  185. package/dist/lib/plugins/openapi/{worker/createSharedWorkerClient.js → client/createWorkerClient.js} +15 -2
  186. package/dist/lib/plugins/openapi/client/createWorkerClient.js.map +1 -0
  187. package/dist/lib/plugins/openapi/client/interfaces.d.ts +4 -0
  188. package/dist/lib/plugins/openapi/client/interfaces.js +2 -0
  189. package/dist/lib/plugins/openapi/client/interfaces.js.map +1 -0
  190. package/dist/lib/plugins/openapi/{worker → client}/worker.js +2 -2
  191. package/dist/lib/plugins/openapi/client/worker.js.map +1 -0
  192. package/dist/lib/plugins/openapi/context.d.ts +5 -0
  193. package/dist/lib/plugins/openapi/context.js +11 -0
  194. package/dist/lib/plugins/openapi/context.js.map +1 -0
  195. package/dist/lib/plugins/openapi/index.d.ts +4 -18
  196. package/dist/lib/plugins/openapi/index.js +35 -20
  197. package/dist/lib/plugins/openapi/index.js.map +1 -1
  198. package/dist/lib/plugins/openapi/interfaces.d.ts +15 -0
  199. package/dist/lib/plugins/openapi/interfaces.js +2 -0
  200. package/dist/lib/plugins/openapi/interfaces.js.map +1 -0
  201. package/dist/lib/plugins/openapi/playground/Headers.d.ts +2 -3
  202. package/dist/lib/plugins/openapi/playground/Headers.js +16 -6
  203. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  204. package/dist/lib/plugins/openapi/playground/PathParams.d.ts +1 -1
  205. package/dist/lib/plugins/openapi/playground/Playground.d.ts +5 -4
  206. package/dist/lib/plugins/openapi/playground/Playground.js +22 -13
  207. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  208. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.d.ts +3 -0
  209. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +12 -0
  210. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -0
  211. package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +1 -1
  212. package/dist/lib/plugins/openapi/playground/QueryParams.js +2 -1
  213. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  214. package/dist/lib/plugins/openapi/playground/createUrl.d.ts +1 -1
  215. package/dist/lib/plugins/openapi/util/prose.d.ts +1 -0
  216. package/dist/lib/plugins/openapi/util/prose.js +4 -0
  217. package/dist/lib/plugins/openapi/util/prose.js.map +1 -0
  218. package/dist/lib/plugins/openapi-worker.d.ts +1 -1
  219. package/dist/lib/plugins/openapi-worker.js +1 -1
  220. package/dist/lib/plugins/openapi-worker.js.map +1 -1
  221. package/dist/lib/plugins/redirect/index.d.ts +0 -1
  222. package/dist/lib/plugins/redirect/index.js +3 -4
  223. package/dist/lib/plugins/redirect/index.js.map +1 -1
  224. package/dist/lib/ui/Callout.js +2 -2
  225. package/dist/lib/ui/Callout.js.map +1 -1
  226. package/dist/lib/ui/Card.js +1 -1
  227. package/dist/lib/ui/Card.js.map +1 -1
  228. package/dist/lib/ui/DropdownMenu.d.ts +27 -0
  229. package/dist/lib/ui/DropdownMenu.js +36 -0
  230. package/dist/lib/ui/DropdownMenu.js.map +1 -0
  231. package/dist/lib/ui/button-variants.d.ts +2 -2
  232. package/dist/lib/ui/button-variants.js +1 -0
  233. package/dist/lib/ui/button-variants.js.map +1 -1
  234. package/dist/lib/util/MdxComponents.d.ts +2 -2
  235. package/dist/lib/util/MdxComponents.js +7 -5
  236. package/dist/lib/util/MdxComponents.js.map +1 -1
  237. package/dist/lib/util/groupBy.d.ts +1 -6
  238. package/dist/lib/util/groupBy.js +10 -8
  239. package/dist/lib/util/groupBy.js.map +1 -1
  240. package/dist/lib/util/joinPath.js +2 -1
  241. package/dist/lib/util/joinPath.js.map +1 -1
  242. package/dist/lib/util/logInit.d.ts +1 -0
  243. package/dist/lib/util/logInit.js +9 -0
  244. package/dist/lib/util/logInit.js.map +1 -0
  245. package/dist/lib/util/objectEntries.d.ts +4 -0
  246. package/dist/lib/util/objectEntries.js +2 -0
  247. package/dist/lib/util/objectEntries.js.map +1 -0
  248. package/dist/lib/util/renderIf.d.ts +1 -0
  249. package/dist/lib/util/renderIf.js +2 -0
  250. package/dist/lib/util/renderIf.js.map +1 -0
  251. package/dist/vite/build.js +30 -7
  252. package/dist/vite/build.js.map +1 -1
  253. package/dist/vite/config.d.ts +21 -12
  254. package/dist/vite/config.js +107 -55
  255. package/dist/vite/config.js.map +1 -1
  256. package/dist/vite/config.test.js +6 -3
  257. package/dist/vite/config.test.js.map +1 -1
  258. package/dist/vite/dev-server.d.ts +2 -1
  259. package/dist/vite/dev-server.js +44 -15
  260. package/dist/vite/dev-server.js.map +1 -1
  261. package/dist/vite/html.js +18 -5
  262. package/dist/vite/html.js.map +1 -1
  263. package/dist/vite/plugin-api-keys.js +7 -8
  264. package/dist/vite/plugin-api-keys.js.map +1 -1
  265. package/dist/vite/plugin-api.js +9 -20
  266. package/dist/vite/plugin-api.js.map +1 -1
  267. package/dist/vite/plugin-auth.js +5 -6
  268. package/dist/vite/plugin-auth.js.map +1 -1
  269. package/dist/vite/plugin-component.js +5 -2
  270. package/dist/vite/plugin-component.js.map +1 -1
  271. package/dist/vite/plugin-config.d.ts +0 -2
  272. package/dist/vite/plugin-config.js +2 -13
  273. package/dist/vite/plugin-config.js.map +1 -1
  274. package/dist/vite/plugin-custom-css.d.ts +6 -0
  275. package/dist/vite/plugin-custom-css.js +54 -0
  276. package/dist/vite/plugin-custom-css.js.map +1 -0
  277. package/dist/vite/plugin-docs.js +15 -5
  278. package/dist/vite/plugin-docs.js.map +1 -1
  279. package/dist/vite/plugin-mdx.d.ts +3 -1
  280. package/dist/vite/plugin-mdx.js +5 -5
  281. package/dist/vite/plugin-mdx.js.map +1 -1
  282. package/dist/vite/plugin-metadata.js +1 -1
  283. package/dist/vite/plugin-metadata.js.map +1 -1
  284. package/dist/vite/plugin-redirect.js +10 -10
  285. package/dist/vite/plugin-redirect.js.map +1 -1
  286. package/dist/vite/plugin.js +3 -5
  287. package/dist/vite/plugin.js.map +1 -1
  288. package/dist/vite/prerender.d.ts +17 -0
  289. package/dist/vite/prerender.js +79 -0
  290. package/dist/vite/prerender.js.map +1 -0
  291. package/lib/AnchorLink-Bj1hwDuD.js +705 -0
  292. package/lib/AnchorLink-Bj1hwDuD.js.map +1 -0
  293. package/lib/AuthenticationPlugin-CG6Bw32B.js +46 -0
  294. package/lib/AuthenticationPlugin-CG6Bw32B.js.map +1 -0
  295. package/lib/CategoryHeading-DMkTmmBh.js +10 -0
  296. package/lib/CategoryHeading-DMkTmmBh.js.map +1 -0
  297. package/lib/Combination-lAFQBd6U.js +2774 -0
  298. package/lib/Combination-lAFQBd6U.js.map +1 -0
  299. package/lib/DevPortalProvider-BBhQ8kgI.js +1125 -0
  300. package/lib/DevPortalProvider-BBhQ8kgI.js.map +1 -0
  301. package/lib/Markdown-BjRJKl_E.js +15028 -0
  302. package/lib/Markdown-BjRJKl_E.js.map +1 -0
  303. package/lib/MdxPage-DJTFOCbZ.js +190 -0
  304. package/lib/MdxPage-DJTFOCbZ.js.map +1 -0
  305. package/lib/OperationList-DDTtK3I7.js +5403 -0
  306. package/lib/OperationList-DDTtK3I7.js.map +1 -0
  307. package/lib/Route-Bsrd0acQ.js +13 -0
  308. package/lib/Route-Bsrd0acQ.js.map +1 -0
  309. package/lib/Select-CEnkyfyn.js +2223 -0
  310. package/lib/Select-CEnkyfyn.js.map +1 -0
  311. package/lib/Spinner-Ciq_pWU7.js +359 -0
  312. package/lib/Spinner-Ciq_pWU7.js.map +1 -0
  313. package/lib/_commonjsHelpers-BVfed4GL.js +29 -0
  314. package/lib/_commonjsHelpers-BVfed4GL.js.map +1 -0
  315. package/lib/assets/index-BPdJm2ty.js +1 -0
  316. package/lib/assets/index-BPdJm2ty.js.map +1 -0
  317. package/lib/assets/{worker-BCcpCNJ7.js → worker-BWwCA-wk.js} +10727 -10300
  318. package/lib/assets/worker-BWwCA-wk.js.map +1 -0
  319. package/lib/context-_fYfJFgk.js +14 -0
  320. package/lib/context-_fYfJFgk.js.map +1 -0
  321. package/lib/hook-Q_gAL2NZ.js +93 -0
  322. package/lib/hook-Q_gAL2NZ.js.map +1 -0
  323. package/lib/index-BE2a6gGC.js +726 -0
  324. package/lib/index-BE2a6gGC.js.map +1 -0
  325. package/lib/index-pI9JkN46.js +4765 -0
  326. package/lib/index-pI9JkN46.js.map +1 -0
  327. package/lib/jsx-runtime-BIr0WBt_.js +1526 -0
  328. package/lib/jsx-runtime-BIr0WBt_.js.map +1 -0
  329. package/lib/prism-bash.min-DadFsM4Z.js +1 -0
  330. package/lib/prism-bash.min-DadFsM4Z.js.map +1 -0
  331. package/lib/prism-csharp.min-Yizuc34Y.js +35 -0
  332. package/lib/prism-csharp.min-Yizuc34Y.js.map +1 -0
  333. package/lib/prism-java.min-d5iT_mOd.js +1 -0
  334. package/lib/prism-java.min-d5iT_mOd.js.map +1 -0
  335. package/lib/prism-json.min-B1GJqK1k.js +1 -0
  336. package/lib/prism-json.min-B1GJqK1k.js.map +1 -0
  337. package/lib/prism-markup-templating-DZrrEs0A.js +1 -0
  338. package/lib/prism-markup-templating-DZrrEs0A.js.map +1 -0
  339. package/lib/prism-objectivec.min-BXSWqpJJ.js +2 -0
  340. package/lib/prism-objectivec.min-BXSWqpJJ.js.map +1 -0
  341. package/lib/prism-php.min-o7FpoMP_.js +1 -0
  342. package/lib/prism-php.min-o7FpoMP_.js.map +1 -0
  343. package/lib/prism-ruby.min-C7LwcKyz.js +1 -0
  344. package/lib/prism-ruby.min-C7LwcKyz.js.map +1 -0
  345. package/lib/router-BiRCp01d.js +2971 -0
  346. package/lib/router-BiRCp01d.js.map +1 -0
  347. package/lib/slugify-CiPVjteN.js +28 -0
  348. package/lib/slugify-CiPVjteN.js.map +1 -0
  349. package/lib/state-DKdaQzvh.js +288 -0
  350. package/lib/state-DKdaQzvh.js.map +1 -0
  351. package/lib/urql-DMlBWUKL.js +1 -0
  352. package/lib/urql-DMlBWUKL.js.map +1 -0
  353. package/lib/zudoku.auth-auth0.js +2 -1
  354. package/lib/zudoku.auth-auth0.js.map +1 -0
  355. package/lib/zudoku.auth-clerk.js +48 -31
  356. package/lib/zudoku.auth-clerk.js.map +1 -0
  357. package/lib/zudoku.auth-openid.js +608 -448
  358. package/lib/zudoku.auth-openid.js.map +1 -0
  359. package/lib/zudoku.components.js +1793 -512
  360. package/lib/zudoku.components.js.map +1 -0
  361. package/lib/zudoku.openapi-worker.js +15035 -146
  362. package/lib/zudoku.openapi-worker.js.map +1 -0
  363. package/lib/zudoku.plugin-api-keys.js +313 -0
  364. package/lib/zudoku.plugin-api-keys.js.map +1 -0
  365. package/lib/zudoku.plugin-custom-page.js +13 -0
  366. package/lib/zudoku.plugin-custom-page.js.map +1 -0
  367. package/lib/zudoku.plugin-markdown.js +48 -0
  368. package/lib/zudoku.plugin-markdown.js.map +1 -0
  369. package/lib/zudoku.plugin-openapi.js +10 -0
  370. package/lib/zudoku.plugin-openapi.js.map +1 -0
  371. package/lib/zudoku.plugin-redirect.js +11 -0
  372. package/lib/zudoku.plugin-redirect.js.map +1 -0
  373. package/package.json +60 -24
  374. package/src/app/App.tsx +0 -41
  375. package/src/app/demo-cdn.html +26 -0
  376. package/src/app/demo.html +18 -0
  377. package/src/app/demo.tsx +45 -0
  378. package/src/app/entry.client.tsx +47 -0
  379. package/src/app/entry.server.tsx +160 -0
  380. package/src/app/main.css +80 -0
  381. package/src/app/main.tsx +86 -15
  382. package/src/app/standalone.html +20 -0
  383. package/src/app/standalone.tsx +51 -0
  384. package/src/app/tailwind.ts +2 -6
  385. package/src/lib/authentication/AuthenticationPlugin.tsx +36 -0
  386. package/src/lib/authentication/Callback.tsx +1 -1
  387. package/src/lib/authentication/authentication.ts +3 -7
  388. package/src/lib/authentication/components/Login.tsx +11 -0
  389. package/src/lib/authentication/components/Logout.tsx +11 -0
  390. package/src/lib/authentication/providers/clerk.tsx +44 -27
  391. package/src/lib/authentication/providers/openid.tsx +25 -13
  392. package/src/lib/authentication/routes.tsx +10 -0
  393. package/src/lib/components/Bootstrap.tsx +44 -0
  394. package/src/lib/components/DevPortal.tsx +55 -49
  395. package/src/lib/components/DeveloperHint.tsx +25 -0
  396. package/src/lib/components/ErrorPage.tsx +28 -0
  397. package/src/lib/components/Header.tsx +89 -28
  398. package/src/lib/components/Heading.tsx +26 -7
  399. package/src/lib/components/InlineCode.tsx +19 -0
  400. package/src/lib/components/Layout.tsx +9 -7
  401. package/src/lib/components/NotFoundPage.tsx +33 -0
  402. package/src/lib/components/SyntaxHighlight.tsx +26 -18
  403. package/src/lib/components/TopNavigation.tsx +6 -1
  404. package/src/lib/components/context/DevPortalProvider.ts +24 -4
  405. package/src/lib/components/index.ts +25 -3
  406. package/src/lib/components/navigation/SideNavigationCategory.tsx +3 -3
  407. package/src/lib/components/navigation/SideNavigationItem.tsx +1 -1
  408. package/src/lib/core/DevPortalContext.ts +52 -25
  409. package/src/lib/core/plugins.ts +26 -5
  410. package/src/lib/errors/ErrorAlert.tsx +21 -0
  411. package/src/lib/errors/RouterError.tsx +13 -0
  412. package/src/lib/errors/ServerError.tsx +5 -0
  413. package/src/lib/errors/TopLevelError.tsx +8 -0
  414. package/src/lib/oas/graphql/index.ts +9 -5
  415. package/src/lib/oas/parser/index.ts +41 -20
  416. package/src/lib/plugins/{api-key → api-keys}/CreateApiKey.tsx +1 -1
  417. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +29 -0
  418. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +139 -0
  419. package/src/lib/plugins/{api-key → api-keys}/index.tsx +16 -40
  420. package/src/lib/plugins/custom-page/index.tsx +22 -0
  421. package/src/lib/plugins/markdown/MdxPage.tsx +51 -34
  422. package/src/lib/plugins/markdown/Toc.tsx +1 -1
  423. package/src/lib/plugins/markdown/generateRoutes.tsx +16 -6
  424. package/src/lib/plugins/markdown/index.tsx +10 -7
  425. package/src/lib/plugins/openapi/OperationList.tsx +46 -10
  426. package/src/lib/plugins/openapi/OperationListItem.tsx +68 -42
  427. package/src/lib/plugins/openapi/ParameterList.tsx +1 -1
  428. package/src/lib/plugins/openapi/ParameterListItem.tsx +3 -4
  429. package/src/lib/plugins/openapi/{MakeRequest.tsx → PlaygroundDialogWrapper.tsx} +3 -19
  430. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +2 -16
  431. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +3 -1
  432. package/src/lib/plugins/openapi/Route.tsx +21 -0
  433. package/src/lib/plugins/openapi/SchemaListView.tsx +23 -192
  434. package/src/lib/plugins/openapi/SchemaListViewItem.tsx +110 -0
  435. package/src/lib/plugins/openapi/SchemaListViewItemGroup.tsx +63 -0
  436. package/src/lib/plugins/openapi/Sidecar.tsx +15 -10
  437. package/src/lib/plugins/openapi/SidecarBox.tsx +1 -1
  438. package/src/lib/plugins/openapi/{Select.tsx → SimpleSelect.tsx} +6 -3
  439. package/src/lib/plugins/openapi/StaggeredRender.tsx +31 -0
  440. package/src/lib/plugins/openapi/client/createMemoryClient.ts +56 -0
  441. package/src/lib/plugins/openapi/client/createServer.ts +33 -0
  442. package/src/lib/plugins/openapi/{worker/createSharedWorkerClient.ts → client/createWorkerClient.ts} +21 -2
  443. package/src/lib/plugins/openapi/client/interfaces.ts +5 -0
  444. package/src/lib/plugins/openapi/{worker → client}/worker.ts +3 -3
  445. package/src/lib/plugins/openapi/context.tsx +16 -0
  446. package/src/lib/plugins/openapi/index.tsx +59 -52
  447. package/src/lib/plugins/openapi/interfaces.ts +9 -0
  448. package/src/lib/plugins/openapi/playground/Headers.tsx +60 -33
  449. package/src/lib/plugins/openapi/playground/PathParams.tsx +1 -1
  450. package/src/lib/plugins/openapi/playground/Playground.tsx +172 -193
  451. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +36 -0
  452. package/src/lib/plugins/openapi/playground/QueryParams.tsx +7 -2
  453. package/src/lib/plugins/openapi/playground/createUrl.ts +1 -1
  454. package/src/lib/plugins/openapi/util/prose.ts +7 -0
  455. package/src/lib/plugins/openapi-worker.ts +1 -1
  456. package/src/lib/plugins/redirect/index.tsx +3 -4
  457. package/src/lib/ui/Callout.tsx +4 -4
  458. package/src/lib/ui/Card.tsx +1 -1
  459. package/src/lib/ui/DropdownMenu.tsx +199 -0
  460. package/src/lib/ui/button-variants.ts +1 -0
  461. package/src/lib/util/MdxComponents.tsx +7 -15
  462. package/src/lib/util/groupBy.ts +7 -12
  463. package/src/lib/util/joinPath.tsx +2 -1
  464. package/src/lib/util/logInit.ts +9 -0
  465. package/src/lib/util/objectEntries.ts +5 -0
  466. package/src/lib/util/renderIf.ts +4 -0
  467. package/dist/lib/components/Link.d.ts +0 -1
  468. package/dist/lib/components/Link.js +0 -2
  469. package/dist/lib/components/Link.js.map +0 -1
  470. package/dist/lib/components/Router.d.ts +0 -4
  471. package/dist/lib/components/Router.js +0 -20
  472. package/dist/lib/components/Router.js.map +0 -1
  473. package/dist/lib/core/helmet.d.ts +0 -4
  474. package/dist/lib/core/helmet.js +0 -5
  475. package/dist/lib/core/helmet.js.map +0 -1
  476. package/dist/lib/core/icons.d.ts +0 -1
  477. package/dist/lib/core/icons.js +0 -2
  478. package/dist/lib/core/icons.js.map +0 -1
  479. package/dist/lib/core/router.d.ts +0 -1
  480. package/dist/lib/core/router.js +0 -2
  481. package/dist/lib/core/router.js.map +0 -1
  482. package/dist/lib/plugins/api-key/CreateApiKey.js.map +0 -1
  483. package/dist/lib/plugins/api-key/SettingsApiKeys.js +0 -38
  484. package/dist/lib/plugins/api-key/SettingsApiKeys.js.map +0 -1
  485. package/dist/lib/plugins/api-key/index.js.map +0 -1
  486. package/dist/lib/plugins/index.d.ts +0 -4
  487. package/dist/lib/plugins/index.js +0 -5
  488. package/dist/lib/plugins/index.js.map +0 -1
  489. package/dist/lib/plugins/openapi/MakeRequest.js.map +0 -1
  490. package/dist/lib/plugins/openapi/Select.js +0 -5
  491. package/dist/lib/plugins/openapi/Select.js.map +0 -1
  492. package/dist/lib/plugins/openapi/worker/createSharedWorkerClient.d.ts +0 -5
  493. package/dist/lib/plugins/openapi/worker/createSharedWorkerClient.js.map +0 -1
  494. package/dist/lib/plugins/openapi/worker/shared-worker.d.ts +0 -1
  495. package/dist/lib/plugins/openapi/worker/shared-worker.js +0 -6
  496. package/dist/lib/plugins/openapi/worker/shared-worker.js.map +0 -1
  497. package/dist/lib/plugins/openapi/worker/worker.js.map +0 -1
  498. package/dist/vite/common.d.ts +0 -1
  499. package/dist/vite/common.js +0 -5
  500. package/dist/vite/common.js.map +0 -1
  501. package/dist/vite/plugin-html.d.ts +0 -3
  502. package/dist/vite/plugin-html.js +0 -47
  503. package/dist/vite/plugin-html.js.map +0 -1
  504. package/dist/vite/plugin-openapi-worker.d.ts +0 -4
  505. package/dist/vite/plugin-openapi-worker.js +0 -28
  506. package/dist/vite/plugin-openapi-worker.js.map +0 -1
  507. package/lib/Spinner-BINYpvLB.js +0 -8412
  508. package/lib/clerk-Wslx_mPo.js +0 -19685
  509. package/lib/index-PyGcnQFX.js +0 -3462
  510. package/lib/loglevel-CoH7VSwE.js +0 -152
  511. package/lib/state-2Hu1renZ.js +0 -313
  512. package/lib/zudoku.plugins.js +0 -19892
  513. package/src/lib/components/Link.tsx +0 -1
  514. package/src/lib/components/Router.tsx +0 -28
  515. package/src/lib/core/helmet.ts +0 -5
  516. package/src/lib/core/icons.tsx +0 -1
  517. package/src/lib/core/router.tsx +0 -1
  518. package/src/lib/plugins/api-key/SettingsApiKeys.tsx +0 -117
  519. package/src/lib/plugins/index.ts +0 -4
  520. package/src/lib/plugins/openapi/worker/shared-worker.ts +0 -5
  521. /package/dist/lib/plugins/{api-key → api-keys}/CreateApiKey.d.ts +0 -0
  522. /package/dist/lib/plugins/{api-key → api-keys}/SettingsApiKeys.d.ts +0 -0
  523. /package/dist/lib/plugins/openapi/{worker → client}/worker.d.ts +0 -0
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMutation, useQueryClient, useSuspenseQuery, } from "@tanstack/react-query";
3
+ import { EyeIcon, EyeOffIcon, RotateCwIcon, TrashIcon } from "lucide-react";
4
+ import { useState } from "react";
5
+ import { Link } from "react-router-dom";
6
+ import { useDevPortal } from "../../components/context/DevPortalProvider.js";
7
+ import { Button } from "../../ui/Button.js";
8
+ import { cn } from "../../util/cn.js";
9
+ export const SettingsApiKeys = ({ service }) => {
10
+ const context = useDevPortal();
11
+ const queryClient = useQueryClient();
12
+ const { data } = useSuspenseQuery({
13
+ queryFn: () => service.getKeys(context),
14
+ queryKey: ["api-keys"],
15
+ retry: false,
16
+ });
17
+ const deleteKeyMutation = useMutation({
18
+ mutationFn: (id) => {
19
+ if (!service.deleteKey) {
20
+ throw new Error("deleteKey not implemented");
21
+ }
22
+ return service.deleteKey(id, context);
23
+ },
24
+ onSuccess: () => {
25
+ void queryClient.invalidateQueries({ queryKey: ["api-keys"] });
26
+ },
27
+ });
28
+ return (_jsxs("div", { className: "max-w-screen-lg h-full pt-[--padding-content-top] pb-[--padding-content-bottom]", children: [_jsxs("div", { className: "flex justify-between mb-4 border-b pb-3", children: [_jsx("h1", { className: "font-medium text-2xl", children: "API Keys" }), service.createKey && (_jsx(Button, { asChild: true, children: _jsx(Link, { to: "/settings/api-keys/new", children: "Create API Key" }) }))] }), data.length === 0 ? (_jsxs("div", { className: "flex flex-col justify-center gap-4 items-center h-1/2 my-8", children: [_jsxs("div", { className: "text-center", children: ["No API keys created yet.", _jsx("br", {}), "Get started and create the first one now"] }), service.createKey && (_jsx(Button, { asChild: true, children: _jsx(Link, { to: "/settings/api-keys/new", children: "Create API Key" }) }))] })) : (_jsx("ul", { className: cn("grid grid-cols-1 rounded border", "lg:grid-cols-[minmax(250px,min-content)_1fr_min-content]"), children: data.map((key) => (_jsxs("li", { className: "border-b p-5 grid grid-cols-subgrid col-span-full gap-2 items-center", children: [_jsxs("div", { className: "flex flex-col gap-1 text-sm", children: [key.description ?? key.id, _jsxs("div", { className: "text-muted-foreground text-xs", children: [key.createdOn && (_jsxs("div", { children: ["Created on ", new Date(key.createdOn).toLocaleDateString()] })), key.expiresOn && (_jsxs("div", { children: ["Expires on ", new Date(key.expiresOn).toLocaleDateString()] }))] })] }), _jsx("div", { className: "items-center flex lg:justify-center", children: _jsx(RevealApiKey, { apiKey: key.key }) }), _jsxs("div", { className: "flex gap-2", children: [service.rollKey && (_jsx(Button, { size: "icon", children: _jsx(RotateCwIcon, { size: 16 }) })), service.deleteKey && (_jsx(Button, { variant: "ghost", size: "icon", onClick: () => {
29
+ if (!confirm("Do you want to delete this key?")) {
30
+ return;
31
+ }
32
+ deleteKeyMutation.mutate(key.id);
33
+ }, disabled: deleteKeyMutation.isPending, children: _jsx(TrashIcon, { size: 16 }) }))] })] }, key.id))) }))] }));
34
+ };
35
+ const RevealApiKey = ({ apiKey }) => {
36
+ const [revealed, setRevealed] = useState(false);
37
+ return (_jsxs("div", { className: "flex gap-2 items-center text-sm w-full", children: [_jsx("input", { className: "border rounded bg-gray-100 dark:bg-gray-950 p-1 font-mono max-w-min", value: revealed ? apiKey : "•".repeat(apiKey.length) }), _jsx(Button, { variant: "outline", onClick: () => setRevealed((prev) => !prev), size: "icon", children: revealed ? _jsx(EyeOffIcon, { size: 16 }) : _jsx(EyeIcon, { size: 16 }) })] }));
38
+ };
39
+ //# sourceMappingURL=SettingsApiKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SettingsApiKeys.js","sourceRoot":"","sources":["../../../../src/lib/plugins/api-keys/SettingsApiKeys.tsx"],"names":[],"mappings":"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"}
@@ -1,12 +1,11 @@
1
1
  import { DevPortalContext } from "../../core/DevPortalContext.js";
2
- import { type ApiIdentityPlugin, type DevPortalPlugin } from "../../core/plugins.js";
3
- export type ApiKeyResults = Promise<ApiKey[]>;
2
+ import { type ApiIdentityPlugin, type DevPortalPlugin, ProfileMenuPlugin } from "../../core/plugins.js";
4
3
  export type ApiKeyService = {
5
- getKeys: (context: DevPortalContext) => ApiKeyResults;
4
+ getKeys: (context: DevPortalContext) => Promise<ApiKey[]>;
6
5
  rollKey?: (id: string, context: DevPortalContext) => Promise<void>;
7
6
  deleteKey?: (id: string, context: DevPortalContext) => Promise<void>;
8
7
  updateKeyDescription?: (apiKey: {
9
- jd: string;
8
+ id: string;
10
9
  description: string;
11
10
  }, context: DevPortalContext) => Promise<void>;
12
11
  getUsage?: (apiKeys: string[], context: DevPortalContext) => Promise<void>;
@@ -27,4 +26,4 @@ export interface ApiKey {
27
26
  expiresOn?: string;
28
27
  key: string;
29
28
  }
30
- export declare const apiKeyPlugin: (options: ApiKeyPluginOptions) => DevPortalPlugin & ApiIdentityPlugin;
29
+ export declare const apiKeyPlugin: (options: ApiKeyPluginOptions) => DevPortalPlugin & ApiIdentityPlugin & ProfileMenuPlugin;
@@ -1,10 +1,8 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import logger from "loglevel";
3
- import { Outlet, useRouteError } from "react-router-dom";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
4
2
  import invariant from "tiny-invariant";
5
- import { useAuth } from "../../authentication/hook.js";
6
- import { Button } from "../../ui/Button.js";
3
+ import { RouterError } from "../../errors/RouterError.js";
7
4
  import { CreateApiKey } from "./CreateApiKey.js";
5
+ import { ProtectedRoute } from "./ProtectedRoute.js";
8
6
  import { SettingsApiKeys } from "./SettingsApiKeys.js";
9
7
  const DEFAULT_API_KEY_ENDPOINT = "https://zudoku-rewiringamerica-main-ef9c9c0.d2.zuplo.dev";
10
8
  const createDefaultHandler = (endpoint) => {
@@ -38,23 +36,16 @@ const createDefaultHandler = (endpoint) => {
38
36
  },
39
37
  };
40
38
  };
41
- const ProtectedRoute = () => {
42
- const auth = useAuth();
43
- // TODO: should we suspend here somehow?
44
- if (auth.isPending) {
45
- return null;
46
- }
47
- return auth.isAuthenticated ? (_jsx(Outlet, {})) : (_jsxs("div", { className: "flex flex-col justify-center gap-2 items-center h-1/2 my-12", children: ["Please login first to view this page", _jsx(Button, { onClick: () => auth.login(), children: "Login" })] }));
48
- };
49
- const SettingsErrorBoundary = () => {
50
- const error = useRouteError();
51
- logger.error(String(error));
52
- return (_jsxs("div", { className: "flex flex-col justify-center gap-2 items-center h-1/2 my-12", children: [_jsx("h1", { children: "Something went wrong" }), error instanceof Error && _jsx("p", { children: error.message })] }));
53
- };
54
39
  export const apiKeyPlugin = (options) => {
55
40
  const endpoint = "endpoint" in options ? options.endpoint : DEFAULT_API_KEY_ENDPOINT;
56
41
  const service = "getKeys" in options ? options : createDefaultHandler(endpoint);
57
42
  return {
43
+ getProfileMenuItems: () => [
44
+ {
45
+ label: "API Keys",
46
+ path: "/settings/api-keys",
47
+ },
48
+ ],
58
49
  getIdentities: async (context) => {
59
50
  try {
60
51
  const keys = await service.getKeys(context);
@@ -72,10 +63,11 @@ export const apiKeyPlugin = (options) => {
72
63
  }
73
64
  },
74
65
  getRoutes: () => {
66
+ // TODO: Make lazy
75
67
  return [
76
68
  {
77
69
  element: _jsx(ProtectedRoute, {}),
78
- errorElement: _jsx(SettingsErrorBoundary, {}),
70
+ errorElement: _jsx(RouterError, {}),
79
71
  children: [
80
72
  {
81
73
  path: "/settings/api-keys",
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/api-keys/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { ReactNode } from "react";
2
+ import type { DevPortalPlugin, NavigationPlugin } from "../../core/plugins.js";
3
+ type CustomPageConfig = Array<{
4
+ path: string;
5
+ element: ReactNode;
6
+ }>;
7
+ export declare const customPagePlugin: (config: CustomPageConfig) => DevPortalPlugin & NavigationPlugin;
8
+ export {};
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ProseClasses } from "../../components/Markdown.js";
3
+ export const customPagePlugin = (config) => {
4
+ return {
5
+ getRoutes: () => config.map(({ path, element }) => ({
6
+ path,
7
+ // TODO: we should componentize prose pages
8
+ element: _jsx("div", { className: ProseClasses + " max-w-full", children: element }),
9
+ })),
10
+ };
11
+ };
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/custom-page/index.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAQ5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAwB,EACY,EAAE;IACtC,OAAO;QACL,SAAS,EAAE,GAAkB,EAAE,CAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI;YACJ,2CAA2C;YAC3C,OAAO,EAAE,cAAK,SAAS,EAAE,YAAY,GAAG,aAAa,YAAG,OAAO,GAAO;SACvE,CAAC,CAAC;KACN,CAAC;AACJ,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { type PropsWithChildren } from "react";
2
- import type { MDXImport } from "./index.js";
3
- export declare const MdxPage: ({ mdxComponent: MdxComponent, frontmatter, tableOfContents, }: PropsWithChildren<Omit<MDXImport, "default"> & {
2
+ import { MarkdownPluginDefaultOptions, MDXImport } from "./index.js";
3
+ export declare const MdxPage: ({ mdxComponent: MdxComponent, frontmatter, defaultOptions, tableOfContents, }: PropsWithChildren<Omit<MDXImport, "default"> & {
4
4
  mdxComponent: MDXImport["default"];
5
+ defaultOptions?: MarkdownPluginDefaultOptions;
5
6
  }>) => import("react/jsx-runtime").JSX.Element;
@@ -1,13 +1,13 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useMDXComponents } from "@mdx-js/react";
3
+ import { Helmet } from "@zudoku/react-helmet-async";
3
4
  import { useMemo } from "react";
5
+ import { Link, useLocation } from "react-router-dom";
4
6
  import { CategoryHeading } from "../../components/CategoryHeading.js";
5
7
  import { Heading } from "../../components/Heading.js";
6
8
  import { ProseClasses } from "../../components/Markdown.js";
7
9
  import { useTopNavigationItem } from "../../components/context/DevPortalProvider.js";
8
10
  import { isPathItem } from "../../components/navigation/util.js";
9
- import { Helmet } from "../../core/helmet.js";
10
- import { Link, useLocation } from "../../core/router.js";
11
11
  import { cn } from "../../util/cn.js";
12
12
  import slugify from "../../util/slugify.js";
13
13
  import { traverseNavigation } from "../../util/traverseNavigation.js";
@@ -16,7 +16,7 @@ const MarkdownHeadings = {
16
16
  h2: ({ children, id }) => (_jsx(Heading, { level: 2, id: id, registerSidebarAnchor: true, children: children })),
17
17
  h3: ({ children, id }) => (_jsxs(Heading, { level: 3, id: id, registerSidebarAnchor: true, children: [" ", children] })),
18
18
  };
19
- export const MdxPage = ({ mdxComponent: MdxComponent, frontmatter = {}, tableOfContents, }) => {
19
+ export const MdxPage = ({ mdxComponent: MdxComponent, frontmatter = {}, defaultOptions, tableOfContents, }) => {
20
20
  const navItem = useTopNavigationItem();
21
21
  const location = useLocation();
22
22
  const categoryTitle = navItem
@@ -28,8 +28,9 @@ export const MdxPage = ({ mdxComponent: MdxComponent, frontmatter = {}, tableOfC
28
28
  : undefined;
29
29
  const title = frontmatter.title;
30
30
  const category = frontmatter.category ?? categoryTitle;
31
- const hideToc = frontmatter.toc === false;
31
+ const hideToc = frontmatter.toc === false || defaultOptions?.toc === false;
32
32
  const pageTitle = tableOfContents.find((item) => item.depth === 1)?.value ?? title;
33
+ const hidePager = frontmatter.disablePager ?? defaultOptions?.disablePager ?? false;
33
34
  const tocEntries = tableOfContents.find((item) => item.depth === 1)?.children ??
34
35
  // if `title` is provided by frontmatter it does not appear in the table of contents
35
36
  tableOfContents.filter((item) => item.depth === 2);
@@ -55,6 +56,6 @@ export const MdxPage = ({ mdxComponent: MdxComponent, frontmatter = {}, tableOfC
55
56
  });
56
57
  return { prev, next };
57
58
  }, [navItem, location.pathname]);
58
- return (_jsxs("div", { className: "xl:grid grid-cols-[--sidecar-grid-cols] gap-8 justify-between", children: [_jsx(Helmet, { children: _jsx("title", { children: pageTitle }) }), _jsxs("div", { className: cn(ProseClasses, "max-w-full xl:w-full xl:max-w-prose flex-1 flex-shrink pt-[--padding-content-top] pb-[--padding-content-bottom]"), children: [_jsxs("header", { children: [category && _jsx(CategoryHeading, { children: category }), title && (_jsx(Heading, { level: 1, id: slugify(title, { lower: true }), children: title })), frontmatter.description && (_jsx("p", { className: "prose-lg", children: frontmatter.description }))] }), _jsx(MdxComponent, { components: { ...useMDXComponents(), ...MarkdownHeadings } }), _jsx("hr", {}), _jsxs("div", { className: "not-prose flex items-center justify-between gap-8", children: [prev.path ? (_jsxs(Link, { to: prev.path, className: "flex flex-col items-stretch gap-2 flex-1 truncate border border-border rounded px-6 py-4 text-start hover:border-primary/85 transition shadow-sm hover:shadow-md", title: typeof prev.label === "string" ? prev.label : undefined, children: [_jsx("div", { className: "text-sm text-muted-foreground", children: "\u2190 Previous page" }), _jsx("div", { className: "text-lg text-primary truncate", children: prev.label })] })) : (_jsx("div", { className: "flex-1" })), next.path ? (_jsxs(Link, { to: next.path, className: "flex flex-col items-stretch gap-2 flex-1 truncate border border-border rounded px-6 py-4 text-end hover:border-primary/85 transition shadow-sm hover:shadow-md", title: typeof next.label === "string" ? next.label : undefined, children: [_jsx("div", { className: "text-sm text-muted-foreground", children: "Next page \u2192" }), _jsx("div", { className: "text-lg text-primary truncate", children: next.label })] })) : (_jsx("div", { className: "flex-1" }))] })] }), _jsx("div", { className: "hidden xl:block", children: showToc && _jsx(Toc, { entries: tocEntries }) })] }));
59
+ return (_jsxs("div", { className: "xl:grid grid-cols-[--sidecar-grid-cols] gap-8 justify-between", children: [_jsx(Helmet, { children: _jsx("title", { children: pageTitle }) }), _jsxs("div", { className: cn(ProseClasses, "max-w-full xl:w-full xl:max-w-prose flex-1 flex-shrink pt-[--padding-content-top] pb-[--padding-content-bottom]"), children: [_jsxs("header", { children: [category && _jsx(CategoryHeading, { children: category }), title && (_jsx(Heading, { level: 1, id: slugify(title, { lower: true }), children: title })), frontmatter.description && (_jsx("p", { className: "prose-lg", children: frontmatter.description }))] }), _jsx(MdxComponent, { components: { ...useMDXComponents(), ...MarkdownHeadings } }), !hidePager && (_jsxs(_Fragment, { children: [_jsx("hr", {}), _jsxs("div", { className: "not-prose flex items-center justify-between gap-8", children: [prev.path ? (_jsxs(Link, { to: prev.path, className: "flex flex-col items-stretch gap-2 flex-1 truncate border rounded px-6 py-4 text-start hover:border-primary/85 transition shadow-sm hover:shadow-md", title: typeof prev.label === "string" ? prev.label : undefined, children: [_jsx("div", { className: "text-sm text-muted-foreground", children: "\u2190 Previous page" }), _jsx("div", { className: "text-lg text-primary truncate", children: prev.label })] })) : (_jsx("div", { className: "flex-1" })), next.path ? (_jsxs(Link, { to: next.path, className: "flex flex-col items-stretch gap-2 flex-1 truncate border rounded px-6 py-4 text-end hover:border-primary/85 transition shadow-sm hover:shadow-md", title: typeof next.label === "string" ? next.label : undefined, children: [_jsx("div", { className: "text-sm text-muted-foreground", children: "Next page \u2192" }), _jsx("div", { className: "text-lg text-primary truncate", children: next.label })] })) : (_jsx("div", { className: "flex-1" }))] })] }))] }), _jsx("div", { className: "hidden xl:block", children: showToc && _jsx(Toc, { entries: tocEntries }) })] }));
59
60
  };
60
61
  //# sourceMappingURL=MdxPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MdxPage.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/MdxPage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MdxPage.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/MdxPage.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ListTreeIcon } from "lucide-react";
2
3
  import { useEffect, useRef, useState, } from "react";
3
4
  import { AnchorLink } from "../../components/AnchorLink.js";
4
5
  import { useViewportAnchor } from "../../components/context/ViewportAnchorContext.js";
5
- import { ListTreeIcon } from "../../core/icons.js";
6
6
  import { cn } from "../../util/cn.js";
7
7
  const DATA_ANCHOR_ATTR = "data-active";
8
8
  const TocItem = ({ item, children, className, isActive, }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Toc.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/Toc.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Toc.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/Toc.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { type RouteObject } from "../../core/router.js";
2
- import type { MarkdownPluginOptions } from "./index.js";
3
- export declare const generateRoutes: (markdownFiles: MarkdownPluginOptions["markdownFiles"]) => RouteObject[];
1
+ import { type RouteObject } from "react-router-dom";
2
+ import { MarkdownPluginDefaultOptions, MarkdownPluginOptions } from "./index.js";
3
+ export declare const generateRoutes: (markdownFiles: MarkdownPluginOptions["markdownFiles"], defaultOptions?: MarkdownPluginDefaultOptions) => RouteObject[];
@@ -1,10 +1,9 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Navigate } from "react-router-dom";
2
3
  import { useTopNavigationItem } from "../../components/context/DevPortalProvider.js";
3
4
  import { isPathItem } from "../../components/navigation/util.js";
4
- import { Navigate } from "../../core/router.js";
5
5
  import { traverseNavigation } from "../../util/traverseNavigation.js";
6
- import { MdxPage } from "./MdxPage.js";
7
- export const generateRoutes = (markdownFiles) => {
6
+ export const generateRoutes = (markdownFiles, defaultOptions) => {
8
7
  const routes = Object.entries(markdownFiles).flatMap(([file, importPromise]) => {
9
8
  // @todo we can pass in the folder name and then filter the markdown files based on that path
10
9
  const match = file.match(/pages\/(.*).mdx?$/);
@@ -19,9 +18,10 @@ export const generateRoutes = (markdownFiles) => {
19
18
  return {
20
19
  path: routePath,
21
20
  lazy: async () => {
21
+ const { MdxPage } = await import("./MdxPage.js");
22
22
  const { default: Component, ...props } = await importPromise();
23
23
  return {
24
- element: _jsx(MdxPage, { mdxComponent: Component, ...props }),
24
+ element: (_jsx(MdxPage, { mdxComponent: Component, ...props, defaultOptions: defaultOptions })),
25
25
  };
26
26
  },
27
27
  };
@@ -1 +1 @@
1
- {"version":3,"file":"generateRoutes.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/generateRoutes.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAoB,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,aAAqD,EACtC,EAAE;IACjB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAClD,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE;QACxB,6FAA6F;QAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;QAErB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;QACpD,MAAM,SAAS,GAAG,WAAW;YAC3B,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC;QAET,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,aAAa,EAAE,CAAC;gBAE/D,OAAO;oBACL,OAAO,EAAE,KAAC,OAAO,IAAC,YAAY,EAAE,SAAS,KAAM,KAAK,GAAI;iBACzD,CAAC;YACJ,CAAC;SACoB,CAAC;IAC1B,CAAC,CACF,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAC3B,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5D,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACd,IAAI,EAAE,IAAI,GAAG,EAAE;QACf,OAAO,EAAE,KAAC,QAAQ,KAAG;KACtB,CAAC,CAAC,CAAC;IAEJ,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,OAAO,kBAAkB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;QACpD,IAAI,UAAU,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO;QACpD,OAAO,KAAC,QAAQ,IAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,SAAG,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"generateRoutes.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/generateRoutes.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAoB,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAOtE,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,aAAqD,EACrD,cAA6C,EAC9B,EAAE;IACjB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAClD,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE;QACxB,6FAA6F;QAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;QAErB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;QACpD,MAAM,SAAS,GAAG,WAAW;YAC3B,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC;QAET,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;gBACjD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,aAAa,EAAE,CAAC;gBAC/D,OAAO;oBACL,OAAO,EAAE,CACP,KAAC,OAAO,IACN,YAAY,EAAE,SAAS,KACnB,KAAK,EACT,cAAc,EAAE,cAAc,GAC9B,CACH;iBACF,CAAC;YACJ,CAAC;SACoB,CAAC;IAC1B,CAAC,CACF,CAAC;IAEF,MAAM,UAAU,GAAkB,KAAK,CAAC,IAAI,CAC1C,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5D,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACd,IAAI,EAAE,IAAI,GAAG,EAAE;QACf,OAAO,EAAE,KAAC,QAAQ,KAAG;KACtB,CAAC,CAAC,CAAC;IAEJ,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,OAAO,kBAAkB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;QACpD,IAAI,UAAU,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO;QACpD,OAAO,KAAC,QAAQ,IAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,SAAG,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -3,16 +3,19 @@ import type { MDXProps } from "mdx/types.js";
3
3
  import type { DevPortalPlugin } from "../../core/plugins.js";
4
4
  export type MarkdownPluginOptions = {
5
5
  markdownFiles: Record<string, () => Promise<MDXImport>>;
6
+ defaultOptions?: MarkdownPluginDefaultOptions;
6
7
  };
8
+ export type MarkdownPluginDefaultOptions = Pick<Frontmatter, "toc" | "disablePager">;
7
9
  export type Frontmatter = {
8
10
  title?: string;
9
11
  description?: string;
10
12
  category?: string;
11
13
  toc?: boolean;
14
+ disablePager?: boolean;
12
15
  };
13
16
  export type MDXImport = {
14
17
  tableOfContents: Toc;
15
18
  frontmatter: Frontmatter;
16
19
  default: (props: MDXProps) => JSX.Element;
17
20
  };
18
- export declare const markdownPlugin: ({ markdownFiles, }: MarkdownPluginOptions) => DevPortalPlugin;
21
+ export declare const markdownPlugin: ({ markdownFiles, defaultOptions, }: MarkdownPluginOptions) => DevPortalPlugin;
@@ -1,9 +1,5 @@
1
1
  import { generateRoutes } from "./generateRoutes.js";
2
- export const markdownPlugin = ({ markdownFiles, }) => {
3
- return {
4
- getRoutes() {
5
- return generateRoutes(markdownFiles);
6
- },
7
- };
8
- };
2
+ export const markdownPlugin = ({ markdownFiles, defaultOptions, }) => ({
3
+ getRoutes: () => generateRoutes(markdownFiles, defaultOptions),
4
+ });
9
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAmBrD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,aAAa,GACS,EAAmB,EAAE;IAC3C,OAAO;QACL,SAAS;YACP,OAAO,cAAc,CAAC,aAAa,CAAC,CAAC;QACvC,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/markdown/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAyBrD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,aAAa,EACb,cAAc,GACQ,EAAmB,EAAE,CAAC,CAAC;IAC7C,SAAS,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,aAAa,EAAE,cAAc,CAAC;CAC/D,CAAC,CAAC"}
@@ -1,11 +1,17 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { CategoryHeading } from "../../components/CategoryHeading.js";
3
+ import { DeveloperHint } from "../../components/DeveloperHint.js";
4
+ import { ErrorPage } from "../../components/ErrorPage.js";
3
5
  import { Heading } from "../../components/Heading.js";
4
- import { Markdown, ProseClasses } from "../../components/Markdown.js";
6
+ import { InlineCode } from "../../components/InlineCode.js";
7
+ import { Markdown } from "../../components/Markdown.js";
8
+ import { SyntaxHighlight } from "../../components/SyntaxHighlight.js";
5
9
  import { cn } from "../../util/cn.js";
6
10
  import { OperationListItem } from "./OperationListItem.js";
11
+ import StaggeredRender from "./StaggeredRender.js";
12
+ import { useOasConfig } from "./context.js";
7
13
  import { graphql } from "./graphql/index.js";
8
- import { useOasConfig } from "./index.js";
14
+ import { SchemaProseClasses } from "./util/prose.js";
9
15
  import { useQuery } from "./util/urql.js";
10
16
  export const OperationsFragment = graphql(/* GraphQL */ `
11
17
  fragment OperationsFragment on OperationItem {
@@ -82,10 +88,16 @@ export const OperationList = () => {
82
88
  variables: { type, input },
83
89
  context: suspenseContext,
84
90
  });
91
+ const error = result.error?.graphQLErrors.at(0);
92
+ // Looks like there is no Suspense level error handling (yet)?
93
+ // So we handle the error case in the component directly
94
+ if (error) {
95
+ return (_jsx(ErrorPage, { category: "Error", title: "Schema cannot be displayed", message: _jsxs(_Fragment, { children: [_jsxs(DeveloperHint, { className: "mb-4", children: ["Check your configuration value ", _jsx(InlineCode, { children: "apis.type" }), " ", "and ", _jsx(InlineCode, { children: "apis.input" }), " in the Zudoku config."] }), "An error occurred while trying to fetch the API reference:", _jsx(SyntaxHighlight, { code: error.toString(), language: "plain" })] }) }));
96
+ }
85
97
  if (!result.data)
86
98
  return null;
87
- return (_jsxs("div", { className: "pt-[--padding-content-top]", children: [_jsxs("div", { className: cn(ProseClasses, "mb-16"), children: [_jsx(CategoryHeading, { children: "Overview" }), _jsx(Heading, { level: 1, id: "description", registerSidebarAnchor: true, children: result.data.schema.title }), _jsx(Markdown, { content: result.data.schema.description ?? "" })] }), result.data.schema.tags
99
+ return (_jsxs("div", { className: "pt-[--padding-content-top]", children: [_jsxs("div", { className: cn(SchemaProseClasses, "mb-16 max-w-full prose-img:max-w-prose"), children: [_jsx(CategoryHeading, { children: "Overview" }), _jsx(Heading, { level: 1, id: "description", registerSidebarAnchor: true, children: result.data.schema.title }), _jsx(Markdown, { content: result.data.schema.description ?? "" })] }), result.data.schema.tags
88
100
  .filter((tag) => tag.operations.length > 0)
89
- .map((tag) => (_jsxs("div", { children: [tag.name && _jsx(CategoryHeading, { children: tag.name }), tag.description && (_jsx(Markdown, { className: `${ProseClasses} mt-2 mb-12`, content: tag.description })), _jsx("div", { className: "operation mb-12", children: tag.operations.map((fragment) => (_jsx(OperationListItem, { operationFragment: fragment }, fragment.slug))) })] }, tag.name)))] }));
101
+ .map((tag) => (_jsxs("div", { children: [tag.name && _jsx(CategoryHeading, { children: tag.name }), tag.description && (_jsx(Markdown, { className: `${SchemaProseClasses} mt-2 mb-12`, content: tag.description })), _jsx("div", { className: "operation mb-12", children: _jsx(StaggeredRender, { children: tag.operations.map((fragment) => (_jsx(OperationListItem, { operationFragment: fragment }, fragment.slug))) }) })] }, tag.name)))] }));
90
102
  };
91
103
  //# sourceMappingURL=OperationList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OperationList.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/OperationList.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDvD,CAAC,CAAC;AAIH,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;CAiBhD,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE3C,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;IAEvC,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;QACxB,KAAK,EAAE,kBAAkB;QACzB,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;QAC1B,OAAO,EAAE,eAAe;KACzB,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,CACL,eAAK,SAAS,EAAC,4BAA4B,aACzC,eAAK,SAAS,EAAE,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,aACvC,KAAC,eAAe,2BAA2B,EAC3C,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAC,aAAa,EAAC,qBAAqB,kBACtD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GACjB,EACV,KAAC,QAAQ,IAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,GAAI,IACvD,EACL,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;iBACrB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;iBAC1C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACZ,0BACG,GAAG,CAAC,IAAI,IAAI,KAAC,eAAe,cAAE,GAAG,CAAC,IAAI,GAAmB,EACzD,GAAG,CAAC,WAAW,IAAI,CAClB,KAAC,QAAQ,IACP,SAAS,EAAE,GAAG,YAAY,aAAa,EACvC,OAAO,EAAE,GAAG,CAAC,WAAW,GACxB,CACH,EACD,cAAK,SAAS,EAAC,iBAAiB,YAC7B,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAChC,KAAC,iBAAiB,IAEhB,iBAAiB,EAAE,QAAQ,IADtB,QAAQ,CAAC,IAAI,CAElB,CACH,CAAC,GACE,KAfE,GAAG,CAAC,IAAI,CAgBZ,CACP,CAAC,IACA,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"OperationList.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/OperationList.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,22 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Heading } from "../../components/Heading.js";
3
- import { Markdown, ProseClasses } from "../../components/Markdown.js";
3
+ import { Markdown } from "../../components/Markdown.js";
4
4
  import { Tabs, TabsContent, TabsList, TabsTrigger } from "../../ui/Tabs.js";
5
+ import { groupBy } from "../../util/groupBy.js";
6
+ import { renderIf } from "../../util/renderIf.js";
5
7
  import { OperationsFragment } from "./OperationList.js";
6
8
  import { ParameterList } from "./ParameterList.js";
7
9
  import { SchemaListView } from "./SchemaListView.js";
8
10
  import { Sidecar } from "./Sidecar.js";
9
11
  import { useFragment } from "./graphql/index.js";
12
+ import { SchemaProseClasses } from "./util/prose.js";
10
13
  export const PARAM_GROUPS = ["path", "query", "header", "cookie"];
11
14
  export const OperationListItem = ({ operationFragment, }) => {
12
15
  const operation = useFragment(OperationsFragment, operationFragment);
13
- const groupedParameters = Object.groupBy(operation.parameters ?? [], (param) => param.in);
14
- const first = operation.responses.find((re) => re.statusCode === "200");
15
- return (_jsxs("div", { className: "grid grid-cols-2 gap-8 items-start border-b-2 mb-16 pb-16 border-border", children: [_jsxs("div", { className: ProseClasses, children: [_jsx(Heading, { level: 2, className: "mt-0", id: operation.slug, registerSidebarAnchor: true, children: operation.summary }), operation.description && _jsx(Markdown, { content: operation.description }), operation.parameters && operation.parameters.length > 0 && (_jsx("div", { className: "mt-4", children: PARAM_GROUPS.flatMap((group) => groupedParameters[group]?.length ? (_jsx(ParameterList, { id: operation.slug, parameters: groupedParameters[group], group: group }, group)) : ([])) })), _jsx(Heading, { level: 3, className: "capitalize", children: "Responses" }), _jsxs(Tabs, { defaultValue: `${first?.statusCode}${first?.description}`, children: [_jsx(TabsList, { children: operation.responses.map((response) => (_jsx(TabsTrigger, { value: response.statusCode + response.description, title: response.description, children: response.statusCode }, response.statusCode))) }), _jsx("ul", { className: "list-none m-0 px-0 overflow-hidden", children: operation.responses.map((response) => (_jsx(TabsContent, { value: response.statusCode + response.description, children: _jsx(SchemaListView, { schema: response.content?.at(0)?.schema, name: "" }) }, response.statusCode))) })] })] }), _jsx(Sidecar, { operation: operation })] }, operation.operationId));
16
+ const groupedParameters = groupBy(operation.parameters ?? [], (param) => param.in);
17
+ const first = operation.responses.at(0);
18
+ return (_jsxs("div", { className: "grid grid-cols-1 lg:grid-cols-[4fr_3fr] gap-8 items-start border-b-2 mb-16 pb-16 border-border", children: [_jsxs("div", { className: "flex flex-col gap-4", children: [_jsx(Heading, { level: 2, id: operation.slug, registerSidebarAnchor: true, children: operation.summary }), operation.description && (_jsx(Markdown, { className: SchemaProseClasses, content: operation.description })), operation.parameters && operation.parameters.length > 0 && (_jsx(_Fragment, { children: PARAM_GROUPS.flatMap((group) => groupedParameters[group]?.length ? (_jsx(ParameterList, { id: operation.slug, parameters: groupedParameters[group], group: group }, group)) : ([])) })), renderIf(operation.requestBody?.content?.at(0)?.schema, (schema) => (_jsxs("div", { className: "mt-4 flex flex-col gap-4", children: [_jsx(Heading, { level: 3, className: "capitalize", children: "Request Body" }), _jsx(SchemaListView, { schema: schema })] }))), operation.responses.length > 0 && (_jsxs(_Fragment, { children: [_jsx(Heading, { level: 3, className: "capitalize mt-8 pt-8 border-t", children: "Responses" }), _jsxs(Tabs, { defaultValue: `${first?.statusCode}${first?.description}`, children: [operation.responses.length > 1 && (_jsx(TabsList, { children: operation.responses.map((response) => (_jsx(TabsTrigger, { value: response.statusCode + response.description, title: response.description, children: response.statusCode }, response.statusCode))) })), _jsx("ul", { className: "list-none m-0 px-0 overflow-hidden", children: operation.responses.map((response) => (_jsx(TabsContent, { value: response.statusCode + response.description, children: renderIf(response.content?.find((content) => content.schema), (content) => {
19
+ return (_jsx(SchemaListView, { schema: content.schema, name: "" }));
20
+ }) ?? (_jsx("div", { className: "border-border font-mono text-sm border rounded p-4", children: "No response body" })) }, response.statusCode))) })] })] }))] }), _jsx(Sidecar, { operation: operation })] }, operation.operationId));
16
21
  };
17
22
  //# sourceMappingURL=OperationListItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OperationListItem.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/OperationListItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationListItem.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/OperationListItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAgB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAG3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,iBAAiB,GAGlB,EAAE,EAAE;IACH,MAAM,SAAS,GAAG,WAAW,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;IACrE,MAAM,iBAAiB,GAAG,OAAO,CAC/B,SAAS,CAAC,UAAU,IAAI,EAAE,EAC1B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB,CAAC;IAEF,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,CACL,eAEE,SAAS,EAAC,gGAAgG,aAE1G,eAAK,SAAS,EAAC,qBAAqB,aAClC,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,IAAI,EAAE,qBAAqB,kBACzD,SAAS,CAAC,OAAO,GACV,EACT,SAAS,CAAC,WAAW,IAAI,CACxB,KAAC,QAAQ,IACP,SAAS,EAAE,kBAAkB,EAC7B,OAAO,EAAE,SAAS,CAAC,WAAW,GAC9B,CACH,EACA,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1D,4BACG,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC9B,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CACjC,KAAC,aAAa,IAEZ,EAAE,EAAE,SAAS,CAAC,IAAI,EAClB,UAAU,EAAE,iBAAiB,CAAC,KAAK,CAAC,EACpC,KAAK,EAAE,KAAK,IAHP,KAAK,CAIV,CACH,CAAC,CAAC,CAAC,CACF,EAAE,CACH,CACF,GACA,CACJ,EACA,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CACnE,eAAK,SAAS,EAAC,0BAA0B,aACvC,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAC,YAAY,6BAE/B,EACV,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACP,CAAC,EACD,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACjC,8BACE,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAC,+BAA+B,0BAElD,EACV,MAAC,IAAI,IAAC,YAAY,EAAE,GAAG,KAAK,EAAE,UAAU,GAAG,KAAK,EAAE,WAAW,EAAE,aAC5D,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACjC,KAAC,QAAQ,cACN,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CACrC,KAAC,WAAW,IACV,KAAK,EAAE,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,WAAW,EAEjD,KAAK,EAAE,QAAQ,CAAC,WAAW,YAE1B,QAAQ,CAAC,UAAU,IAHf,QAAQ,CAAC,UAAU,CAIZ,CACf,CAAC,GACO,CACZ,EACD,aAAI,SAAS,EAAC,oCAAoC,YAC/C,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CACrC,KAAC,WAAW,IACV,KAAK,EAAE,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,WAAW,YAGhD,QAAQ,CACP,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EACnD,CAAC,OAAO,EAAE,EAAE;gDACV,OAAO,CACL,KAAC,cAAc,IAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAC,EAAE,GAAG,CACnD,CAAC;4CACJ,CAAC,CACF,IAAI,CACH,cAAK,SAAS,EAAC,oDAAoD,iCAE7D,CACP,IAbI,QAAQ,CAAC,UAAU,CAcZ,CACf,CAAC,GACC,IACA,IACN,CACJ,IACG,EAEN,KAAC,OAAO,IAAC,SAAS,EAAE,SAAS,GAAI,KAlF5B,SAAS,CAAC,WAAW,CAmFtB,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Heading } from "../../components/Heading.js";
3
3
  import { ParameterListItem, } from "./ParameterListItem.js";
4
- export const ParameterList = ({ group, parameters, id, }) => (_jsxs(_Fragment, { children: [_jsx(Heading, { level: 3, id: `${id}/${group}-parameters`, className: "capitalize", children: group === "header" ? "Headers" : `${group} Parameters` }), _jsx("ul", { className: "list-none m-0 px-0 overflow-hidden", children: parameters.map((parameter) => (_jsx(ParameterListItem, { parameter: parameter, id: id, group: group }, `${parameter.name}-${parameter.in}`))) })] }));
4
+ export const ParameterList = ({ group, parameters, id, }) => (_jsxs(_Fragment, { children: [_jsx(Heading, { level: 3, id: `${id}/${group}-parameters`, className: "capitalize", children: group === "header" ? "Headers" : `${group} Parameters` }), _jsx("ul", { className: "list-none m-0 px-0 overflow-hidden border divide-y divide-border rounded", children: parameters.map((parameter) => (_jsx(ParameterListItem, { parameter: parameter, id: id, group: group }, `${parameter.name}-${parameter.in}`))) })] }));
5
5
  //# sourceMappingURL=ParameterList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParameterList.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ParameterList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EACL,iBAAiB,GAElB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,KAAK,EACL,UAAU,EACV,EAAE,GAKH,EAAE,EAAE,CAAC,CACJ,8BACE,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,KAAK,aAAa,EAAE,SAAS,EAAC,YAAY,YACvE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,aAAa,GAC/C,EACV,aAAI,SAAS,EAAC,oCAAoC,YAC/C,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC7B,KAAC,iBAAiB,IAEhB,SAAS,EAAE,SAAS,EACpB,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,KAAK,IAHP,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,EAAE,CAIxC,CACH,CAAC,GACC,IACJ,CACJ,CAAC"}
1
+ {"version":3,"file":"ParameterList.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ParameterList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EACL,iBAAiB,GAElB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,KAAK,EACL,UAAU,EACV,EAAE,GAKH,EAAE,EAAE,CAAC,CACJ,8BACE,KAAC,OAAO,IAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,KAAK,aAAa,EAAE,SAAS,EAAC,YAAY,YACvE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,aAAa,GAC/C,EACV,aAAI,SAAS,EAAC,0EAA0E,YACrF,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC7B,KAAC,iBAAiB,IAEhB,SAAS,EAAE,SAAS,EACpB,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,KAAK,IAHP,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,EAAE,CAIxC,CACH,CAAC,GACC,IACJ,CACJ,CAAC"}
@@ -9,5 +9,5 @@ const getParameterSchema = (parameter) => {
9
9
  type: "string",
10
10
  };
11
11
  };
12
- export const ParameterListItem = ({ parameter, group, id, }) => (_jsxs("li", { className: "not-prose px-2 py-4 border-t border-border bg-border/20 text-sm flex flex-col gap-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("code", { children: group === "path" ? (_jsx(ColorizedParam, { name: parameter.name, backgroundOpacity: "15%", className: "px-1", slug: id + "-" + parameter.name.toLocaleLowerCase() })) : (parameter.name) }), parameter.required && (_jsx("span", { className: "py-px px-1.5 font-medium text-xs bg-primary/75 text-muted rounded-lg", children: "required" })), getParameterSchema(parameter).type && (_jsx("span", { className: "text-xs text-muted-foreground", children: getParameterSchema(parameter).type }))] }), parameter.description && (_jsx(Markdown, { content: parameter.description, className: "text-sm prose-p:my-1" }))] }));
12
+ export const ParameterListItem = ({ parameter, group, id, }) => (_jsxs("li", { className: "p-4 bg-border/20 text-sm flex flex-col gap-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("code", { children: group === "path" ? (_jsx(ColorizedParam, { name: parameter.name, backgroundOpacity: "15%", slug: id + "-" + parameter.name.toLocaleLowerCase() })) : (parameter.name) }), parameter.required && (_jsx("span", { className: "py-px px-1.5 font-medium bg-primary/75 text-muted rounded-lg", children: "required" })), getParameterSchema(parameter).type && (_jsx("span", { className: "text-muted-foreground", children: getParameterSchema(parameter).type }))] }), parameter.description && (_jsx(Markdown, { content: parameter.description, className: "text-sm prose-p:my-1" }))] }));
13
13
  //# sourceMappingURL=ParameterListItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParameterListItem.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ParameterListItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIrD,MAAM,kBAAkB,GAAG,CACzB,SAAkC,EACpB,EAAE;IAChB,IAAI,SAAS,CAAC,MAAM,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC,MAAM,CAAC;IAC1B,CAAC;IACD,OAAO;QACL,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,SAAS,EACT,KAAK,EACL,EAAE,GAKH,EAAE,EAAE,CAAC,CACJ,cAAI,SAAS,EAAC,qFAAqF,aACjG,eAAK,SAAS,EAAC,yBAAyB,aACtC,yBACG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAClB,KAAC,cAAc,IACb,IAAI,EAAE,SAAS,CAAC,IAAI,EACpB,iBAAiB,EAAC,KAAK,EACvB,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,EAAE,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,GACnD,CACH,CAAC,CAAC,CAAC,CACF,SAAS,CAAC,IAAI,CACf,GACI,EACN,SAAS,CAAC,QAAQ,IAAI,CACrB,eAAM,SAAS,EAAC,sEAAsE,yBAE/E,CACR,EACA,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CACrC,eAAM,SAAS,EAAC,+BAA+B,YAC5C,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,GAC9B,CACR,IACG,EACL,SAAS,CAAC,WAAW,IAAI,CACxB,KAAC,QAAQ,IACP,OAAO,EAAE,SAAS,CAAC,WAAW,EAC9B,SAAS,EAAC,sBAAsB,GAChC,CACH,IACE,CACN,CAAC"}
1
+ {"version":3,"file":"ParameterListItem.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ParameterListItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIrD,MAAM,kBAAkB,GAAG,CACzB,SAAkC,EACpB,EAAE;IAChB,IAAI,SAAS,CAAC,MAAM,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC,MAAM,CAAC;IAC1B,CAAC;IACD,OAAO;QACL,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,SAAS,EACT,KAAK,EACL,EAAE,GAKH,EAAE,EAAE,CAAC,CACJ,cAAI,SAAS,EAAC,8CAA8C,aAC1D,eAAK,SAAS,EAAC,yBAAyB,aACtC,yBACG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAClB,KAAC,cAAc,IACb,IAAI,EAAE,SAAS,CAAC,IAAI,EACpB,iBAAiB,EAAC,KAAK,EACvB,IAAI,EAAE,EAAE,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,GACnD,CACH,CAAC,CAAC,CAAC,CACF,SAAS,CAAC,IAAI,CACf,GACI,EACN,SAAS,CAAC,QAAQ,IAAI,CACrB,eAAM,SAAS,EAAC,8DAA8D,yBAEvE,CACR,EACA,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CACrC,eAAM,SAAS,EAAC,uBAAuB,YACpC,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,GAC9B,CACR,IACG,EACL,SAAS,CAAC,WAAW,IAAI,CACxB,KAAC,QAAQ,IACP,OAAO,EAAE,SAAS,CAAC,WAAW,EAC9B,SAAS,EAAC,sBAAsB,GAChC,CACH,IACE,CACN,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { OperationListItemResult } from "./OperationList.js";
2
- export declare const MakeRequest: ({ operation, }: {
2
+ export declare const PlaygroundDialogWrapper: ({ operation, }: {
3
3
  operation: OperationListItemResult;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,18 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { graphql } from "./graphql/index.js";
3
- import { useOasConfig } from "./index.js";
4
- import { Playground } from "./playground/Playground.js";
5
- import { useQuery } from "urql";
6
- const GetServerQuery = graphql(/* GraphQL */ `
7
- query getServerQuery($input: JSON!, $type: SchemaType!) {
8
- schema(input: $input, type: $type) {
9
- url
10
- }
11
- }
12
- `);
13
- export const MakeRequest = ({ operation, }) => {
14
- const variables = useOasConfig();
15
- const [server] = useQuery({ query: GetServerQuery, variables });
2
+ import { PlaygroundDialog } from "./playground/PlaygroundDialog.js";
3
+ export const PlaygroundDialogWrapper = ({ operation, }) => {
16
4
  const headers = operation.parameters
17
5
  ?.filter((p) => p.in === "header")
18
6
  .map((p) => ({
@@ -38,6 +26,6 @@ export const MakeRequest = ({ operation, }) => {
38
26
  }));
39
27
  const hasParams = operation.parameters?.some((p) => p.in === "query" || p.in === "path") ??
40
28
  false;
41
- return (_jsx(Playground, { host: server.data?.schema.url ?? "", method: operation.method, url: operation.path, headers: headers, queryParams: queryParams, pathParams: pathParams, hasParams: hasParams }));
29
+ return (_jsx(PlaygroundDialog, { method: operation.method, url: operation.path, headers: headers, queryParams: queryParams, pathParams: pathParams, hasParams: hasParams }));
42
30
  };
43
- //# sourceMappingURL=MakeRequest.js.map
31
+ //# sourceMappingURL=PlaygroundDialogWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlaygroundDialogWrapper.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACtC,SAAS,GAGV,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU;QAClC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE;KACrD,CAAC,CAAC,CAAC;IACN,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU;QACtC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC;SAChC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;YAC3B,UAAU,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;SAChC,CAAC;IACJ,CAAC,CAAC,CAAC;IACL,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU;QACrC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,KAAK,EAAE,EAAE;KACV,CAAC,CAAC,CAAC;IAEN,MAAM,SAAS,GACb,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC;QACtE,KAAK,CAAC;IAER,OAAO,CACL,KAAC,gBAAgB,IACf,MAAM,EAAE,SAAS,CAAC,MAAM,EACxB,GAAG,EAAE,SAAS,CAAC,IAAI,EACnB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,GACpB,CACH,CAAC;AACJ,CAAC,CAAC"}
@@ -1,19 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState } from "react";
3
2
  import { SyntaxHighlight } from "../../components/SyntaxHighlight.js";
4
- import { Select } from "./Select.js";
5
3
  import * as SidecarBox from "./SidecarBox.js";
6
4
  import { generateSchemaExample } from "./util/generateSchemaExample.js";
7
5
  // @todo should we handle multiple content types?
8
6
  export const RequestBodySidecarBox = ({ content }) => {
9
- const [selected, setSelected] = useState("example");
10
7
  if (!content.length)
11
8
  return null;
12
- return (_jsxs(_Fragment, { children: [_jsx("div", { children: "lol" }), _jsxs(SidecarBox.Root, { children: [_jsxs(SidecarBox.Head, { className: "text-xs flex justify-between items-center", children: [_jsx("span", { className: "font-mono", children: "Request Body" }), _jsx(Select, { onChange: (e) => setSelected(e.target.value), options: [
13
- { value: "example", label: "Example" },
14
- { value: "schema", label: "Schema" },
15
- ] })] }), _jsx(SidecarBox.Body, { children: _jsx(SyntaxHighlight, { language: "json", noBackground: true, copyable: true, className: "text-xs", code: JSON.stringify(selected === "example"
16
- ? generateSchemaExample(content[0].schema)
17
- : content[0].schema, null, 2) }) })] })] }));
9
+ return (_jsx(_Fragment, { children: _jsxs(SidecarBox.Root, { children: [_jsx(SidecarBox.Head, { className: "text-xs flex justify-between items-center", children: _jsx("span", { className: "font-mono", children: "Request Body Example" }) }), _jsx(SidecarBox.Body, { children: _jsx(SyntaxHighlight, { language: "json", noBackground: true, copyable: true, className: "text-xs", code: JSON.stringify(generateSchemaExample(content[0].schema), null, 2) }) })] }) }));
18
10
  };
19
11
  //# sourceMappingURL=RequestBodySidecarBox.js.map