zudoku 0.3.0-dev.9 → 0.3.0-dev.90

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 (663) hide show
  1. package/cli.js +5 -1
  2. package/dist/app/App.d.ts +1 -2
  3. package/dist/app/App.js +1 -29
  4. package/dist/app/App.js.map +1 -1
  5. package/dist/app/demo.d.ts +2 -0
  6. package/dist/app/demo.js +33 -0
  7. package/dist/app/demo.js.map +1 -0
  8. package/dist/app/entry.client.d.ts +2 -0
  9. package/dist/app/entry.client.js +35 -0
  10. package/dist/app/entry.client.js.map +1 -0
  11. package/dist/app/entry.server.d.ts +14 -0
  12. package/dist/app/entry.server.js +105 -0
  13. package/dist/app/entry.server.js.map +1 -0
  14. package/dist/app/main.d.ts +6 -1
  15. package/dist/app/main.js +74 -12
  16. package/dist/app/main.js.map +1 -1
  17. package/dist/app/standalone.d.ts +2 -0
  18. package/dist/app/standalone.js +38 -0
  19. package/dist/app/standalone.js.map +1 -0
  20. package/dist/app/tailwind.d.ts +1 -1
  21. package/dist/app/tailwind.js +0 -4
  22. package/dist/app/tailwind.js.map +1 -1
  23. package/dist/cli/cmds/dev.js +5 -0
  24. package/dist/cli/cmds/dev.js.map +1 -1
  25. package/dist/cli/dev/handler.d.ts +1 -0
  26. package/dist/cli/dev/handler.js +3 -1
  27. package/dist/cli/dev/handler.js.map +1 -1
  28. package/dist/config/config.d.ts +21 -46
  29. package/dist/config/validators/InputSidebarSchema.d.ts +176 -0
  30. package/dist/config/validators/InputSidebarSchema.js +71 -0
  31. package/dist/config/validators/InputSidebarSchema.js.map +1 -0
  32. package/dist/config/validators/SidebarSchema.d.ts +17 -0
  33. package/dist/config/validators/SidebarSchema.js +76 -0
  34. package/dist/config/validators/SidebarSchema.js.map +1 -0
  35. package/dist/config/validators/validate.d.ts +1263 -2
  36. package/dist/config/validators/validate.js +170 -1
  37. package/dist/config/validators/validate.js.map +1 -1
  38. package/dist/index.d.ts +1 -1
  39. package/dist/internal.d.ts +1 -0
  40. package/dist/internal.js +2 -0
  41. package/dist/internal.js.map +1 -0
  42. package/dist/lib/authentication/AuthenticationPlugin.d.ts +13 -0
  43. package/dist/lib/authentication/AuthenticationPlugin.js +31 -0
  44. package/dist/lib/authentication/AuthenticationPlugin.js.map +1 -0
  45. package/dist/lib/authentication/authentication.d.ts +10 -9
  46. package/dist/lib/authentication/components/SignIn.d.ts +1 -0
  47. package/dist/lib/authentication/components/SignIn.js +14 -0
  48. package/dist/lib/authentication/components/SignIn.js.map +1 -0
  49. package/dist/lib/authentication/components/SignOut.d.ts +1 -0
  50. package/dist/lib/authentication/components/SignOut.js +12 -0
  51. package/dist/lib/authentication/components/SignOut.js.map +1 -0
  52. package/dist/lib/authentication/components/SignUp.d.ts +1 -0
  53. package/dist/lib/authentication/components/SignUp.js +10 -0
  54. package/dist/lib/authentication/components/SignUp.js.map +1 -0
  55. package/dist/lib/authentication/hook.js +4 -4
  56. package/dist/lib/authentication/hook.js.map +1 -1
  57. package/dist/lib/authentication/providers/auth0.js +11 -6
  58. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  59. package/dist/lib/authentication/providers/clerk.js +59 -30
  60. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  61. package/dist/lib/authentication/providers/openid.d.ts +30 -7
  62. package/dist/lib/authentication/providers/openid.js +79 -29
  63. package/dist/lib/authentication/providers/openid.js.map +1 -1
  64. package/dist/lib/authentication/state.js +1 -1
  65. package/dist/lib/authentication/state.js.map +1 -1
  66. package/dist/lib/components/Bootstrap.d.ts +13 -0
  67. package/dist/lib/components/Bootstrap.js +12 -0
  68. package/dist/lib/components/Bootstrap.js.map +1 -0
  69. package/dist/lib/components/DevPortal.d.ts +5 -23
  70. package/dist/lib/components/DevPortal.js +43 -20
  71. package/dist/lib/components/DevPortal.js.map +1 -1
  72. package/dist/lib/components/DeveloperHint.d.ts +5 -0
  73. package/dist/lib/components/DeveloperHint.js +10 -0
  74. package/dist/lib/components/DeveloperHint.js.map +1 -0
  75. package/dist/lib/components/ErrorPage.d.ts +6 -0
  76. package/dist/lib/components/ErrorPage.js +9 -0
  77. package/dist/lib/components/ErrorPage.js.map +1 -0
  78. package/dist/lib/components/Header.js +23 -4
  79. package/dist/lib/components/Header.js.map +1 -1
  80. package/dist/lib/components/Heading.d.ts +9 -4
  81. package/dist/lib/components/Heading.js +17 -2
  82. package/dist/lib/components/Heading.js.map +1 -1
  83. package/dist/lib/components/InlineCode.d.ts +5 -0
  84. package/dist/lib/components/InlineCode.js +4 -0
  85. package/dist/lib/components/InlineCode.js.map +1 -0
  86. package/dist/lib/components/Layout.js +7 -5
  87. package/dist/lib/components/Layout.js.map +1 -1
  88. package/dist/lib/components/NotFoundPage.d.ts +1 -0
  89. package/dist/lib/components/NotFoundPage.js +12 -0
  90. package/dist/lib/components/NotFoundPage.js.map +1 -0
  91. package/dist/lib/components/SlotletProvider.d.ts +9 -0
  92. package/dist/lib/components/SlotletProvider.js +11 -0
  93. package/dist/lib/components/SlotletProvider.js.map +1 -0
  94. package/dist/lib/components/SyntaxHighlight.d.ts +3 -2
  95. package/dist/lib/components/SyntaxHighlight.js +24 -22
  96. package/dist/lib/components/SyntaxHighlight.js.map +1 -1
  97. package/dist/lib/components/TopNavigation.d.ts +1 -1
  98. package/dist/lib/components/TopNavigation.js +8 -4
  99. package/dist/lib/components/TopNavigation.js.map +1 -1
  100. package/dist/lib/components/context/ThemeContext.d.ts +1 -4
  101. package/dist/lib/components/context/ThemeContext.js +3 -29
  102. package/dist/lib/components/context/ThemeContext.js.map +1 -1
  103. package/dist/lib/components/context/ThemeProvider.d.ts +4 -0
  104. package/dist/lib/components/context/ThemeProvider.js +23 -0
  105. package/dist/lib/components/context/ThemeProvider.js.map +1 -0
  106. package/dist/lib/components/context/ZudokuContext.d.ts +15 -0
  107. package/dist/lib/components/context/ZudokuContext.js +43 -0
  108. package/dist/lib/components/context/ZudokuContext.js.map +1 -0
  109. package/dist/lib/components/context/ZudokuProvider.d.ts +5 -0
  110. package/dist/lib/components/context/ZudokuProvider.js +16 -0
  111. package/dist/lib/components/context/ZudokuProvider.js.map +1 -0
  112. package/dist/lib/components/index.d.ts +32 -3
  113. package/dist/lib/components/index.js +21 -3
  114. package/dist/lib/components/index.js.map +1 -1
  115. package/dist/lib/components/navigation/Sidebar.d.ts +1 -0
  116. package/dist/lib/components/navigation/Sidebar.js +12 -0
  117. package/dist/lib/components/navigation/Sidebar.js.map +1 -0
  118. package/dist/lib/components/navigation/SidebarBadge.d.ts +22 -0
  119. package/dist/lib/components/navigation/SidebarBadge.js +24 -0
  120. package/dist/lib/components/navigation/SidebarBadge.js.map +1 -0
  121. package/dist/lib/components/navigation/SidebarCategory.d.ts +5 -0
  122. package/dist/lib/components/navigation/SidebarCategory.js +33 -0
  123. package/dist/lib/components/navigation/SidebarCategory.js.map +1 -0
  124. package/dist/lib/components/navigation/SidebarItem.d.ts +12 -0
  125. package/dist/lib/components/navigation/SidebarItem.js +42 -0
  126. package/dist/lib/components/navigation/SidebarItem.js.map +1 -0
  127. package/dist/lib/components/navigation/{SideNavigationWrapper.d.ts → SidebarWrapper.d.ts} +1 -1
  128. package/dist/lib/components/navigation/{SideNavigationWrapper.js → SidebarWrapper.js} +2 -2
  129. package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -0
  130. package/dist/lib/components/navigation/utils.d.ts +16 -0
  131. package/dist/lib/components/navigation/utils.js +85 -0
  132. package/dist/lib/components/navigation/utils.js.map +1 -0
  133. package/dist/lib/core/DevPortalContext.d.ts +58 -42
  134. package/dist/lib/core/DevPortalContext.js +18 -19
  135. package/dist/lib/core/DevPortalContext.js.map +1 -1
  136. package/dist/lib/core/plugins.d.ts +25 -10
  137. package/dist/lib/core/plugins.js +3 -0
  138. package/dist/lib/core/plugins.js.map +1 -1
  139. package/dist/lib/errors/ErrorAlert.d.ts +3 -0
  140. package/dist/lib/errors/ErrorAlert.js +8 -0
  141. package/dist/lib/errors/ErrorAlert.js.map +1 -0
  142. package/dist/lib/errors/RouterError.d.ts +1 -0
  143. package/dist/lib/errors/RouterError.js +12 -0
  144. package/dist/lib/errors/RouterError.js.map +1 -0
  145. package/dist/lib/errors/ServerError.d.ts +3 -0
  146. package/dist/lib/errors/ServerError.js +6 -0
  147. package/dist/lib/errors/ServerError.js.map +1 -0
  148. package/dist/lib/errors/TopLevelError.d.ts +2 -0
  149. package/dist/lib/errors/TopLevelError.js +7 -0
  150. package/dist/lib/errors/TopLevelError.js.map +1 -0
  151. package/dist/lib/oas/graphql/index.js +8 -5
  152. package/dist/lib/oas/graphql/index.js.map +1 -1
  153. package/dist/lib/oas/parser/index.d.ts +1 -1
  154. package/dist/lib/oas/parser/index.js +38 -12
  155. package/dist/lib/oas/parser/index.js.map +1 -1
  156. package/dist/lib/plugins/{api-key → api-keys}/CreateApiKey.js +4 -4
  157. package/dist/lib/plugins/api-keys/CreateApiKey.js.map +1 -0
  158. package/dist/lib/plugins/api-keys/ProtectedRoute.d.ts +1 -0
  159. package/dist/lib/plugins/api-keys/ProtectedRoute.js +14 -0
  160. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -0
  161. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +54 -0
  162. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -0
  163. package/dist/lib/plugins/{api-key → api-keys}/index.d.ts +4 -5
  164. package/dist/lib/plugins/{api-key → api-keys}/index.js +18 -20
  165. package/dist/lib/plugins/api-keys/index.js.map +1 -0
  166. package/dist/lib/plugins/custom-page/index.d.ts +8 -0
  167. package/dist/lib/plugins/custom-page/index.js +12 -0
  168. package/dist/lib/plugins/custom-page/index.js.map +1 -0
  169. package/dist/lib/plugins/markdown/MdxPage.d.ts +3 -2
  170. package/dist/lib/plugins/markdown/MdxPage.js +10 -40
  171. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  172. package/dist/lib/plugins/markdown/Toc.js +17 -9
  173. package/dist/lib/plugins/markdown/Toc.js.map +1 -1
  174. package/dist/lib/plugins/markdown/generateRoutes.d.ts +3 -3
  175. package/dist/lib/plugins/markdown/generateRoutes.js +20 -43
  176. package/dist/lib/plugins/markdown/generateRoutes.js.map +1 -1
  177. package/dist/lib/plugins/markdown/index.d.ts +4 -1
  178. package/dist/lib/plugins/markdown/index.js +3 -7
  179. package/dist/lib/plugins/markdown/index.js.map +1 -1
  180. package/dist/lib/plugins/openapi/ColorizedParam.d.ts +2 -1
  181. package/dist/lib/plugins/openapi/ColorizedParam.js +14 -9
  182. package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
  183. package/dist/lib/plugins/openapi/OperationList.js +17 -5
  184. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  185. package/dist/lib/plugins/openapi/OperationListItem.js +11 -5
  186. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  187. package/dist/lib/plugins/openapi/ParameterList.js +2 -1
  188. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  189. package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
  190. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  191. package/dist/lib/plugins/openapi/{MakeRequest.d.ts → PlaygroundDialogWrapper.d.ts} +2 -1
  192. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +23 -0
  193. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -0
  194. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +3 -9
  195. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  196. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +1 -1
  197. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  198. package/dist/lib/plugins/openapi/Route.d.ts +6 -0
  199. package/dist/lib/plugins/openapi/Route.js +8 -0
  200. package/dist/lib/plugins/openapi/Route.js.map +1 -0
  201. package/dist/lib/plugins/openapi/SchemaListView.js +10 -26
  202. package/dist/lib/plugins/openapi/SchemaListView.js.map +1 -1
  203. package/dist/lib/plugins/openapi/SchemaListViewItem.d.ts +8 -0
  204. package/dist/lib/plugins/openapi/SchemaListViewItem.js +25 -0
  205. package/dist/lib/plugins/openapi/SchemaListViewItem.js.map +1 -0
  206. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.d.ts +8 -0
  207. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.js +17 -0
  208. package/dist/lib/plugins/openapi/SchemaListViewItemGroup.js.map +1 -0
  209. package/dist/lib/plugins/openapi/Sidecar.d.ts +4 -0
  210. package/dist/lib/plugins/openapi/Sidecar.js +55 -21
  211. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  212. package/dist/lib/plugins/openapi/SidecarBox.d.ts +1 -0
  213. package/dist/lib/plugins/openapi/SidecarBox.js +3 -2
  214. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  215. package/dist/lib/plugins/openapi/{Select.d.ts → SimpleSelect.d.ts} +3 -2
  216. package/dist/lib/plugins/openapi/SimpleSelect.js +5 -0
  217. package/dist/lib/plugins/openapi/SimpleSelect.js.map +1 -0
  218. package/dist/lib/plugins/openapi/StaggeredRender.d.ts +8 -0
  219. package/dist/lib/plugins/openapi/StaggeredRender.js +18 -0
  220. package/dist/lib/plugins/openapi/StaggeredRender.js.map +1 -0
  221. package/dist/lib/plugins/openapi/client/createMemoryClient.d.ts +12 -0
  222. package/dist/lib/plugins/openapi/client/createMemoryClient.js +46 -0
  223. package/dist/lib/plugins/openapi/client/createMemoryClient.js.map +1 -0
  224. package/dist/lib/plugins/openapi/client/createServer.d.ts +4 -0
  225. package/dist/lib/plugins/openapi/client/createServer.js +30 -0
  226. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -0
  227. package/dist/lib/plugins/openapi/client/createWorkerClient.d.ts +10 -0
  228. package/dist/lib/plugins/openapi/{worker/createSharedWorkerClient.js → client/createWorkerClient.js} +15 -2
  229. package/dist/lib/plugins/openapi/client/createWorkerClient.js.map +1 -0
  230. package/dist/lib/plugins/openapi/client/interfaces.d.ts +4 -0
  231. package/dist/lib/plugins/openapi/client/interfaces.js +2 -0
  232. package/dist/lib/plugins/openapi/client/interfaces.js.map +1 -0
  233. package/dist/lib/plugins/openapi/{worker → client}/worker.js +2 -2
  234. package/dist/lib/plugins/openapi/client/worker.js.map +1 -0
  235. package/dist/lib/plugins/openapi/context.d.ts +5 -0
  236. package/dist/lib/plugins/openapi/context.js +11 -0
  237. package/dist/lib/plugins/openapi/context.js.map +1 -0
  238. package/dist/lib/plugins/openapi/graphql/gql.d.ts +6 -6
  239. package/dist/lib/plugins/openapi/graphql/gql.js +1 -1
  240. package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
  241. package/dist/lib/plugins/openapi/graphql/graphql.d.ts +15 -15
  242. package/dist/lib/plugins/openapi/graphql/graphql.js +67 -67
  243. package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
  244. package/dist/lib/plugins/openapi/index.d.ts +4 -18
  245. package/dist/lib/plugins/openapi/index.js +76 -32
  246. package/dist/lib/plugins/openapi/index.js.map +1 -1
  247. package/dist/lib/plugins/openapi/interfaces.d.ts +15 -0
  248. package/dist/lib/plugins/openapi/interfaces.js +2 -0
  249. package/dist/lib/plugins/openapi/interfaces.js.map +1 -0
  250. package/dist/lib/plugins/openapi/playground/Headers.js +1 -1
  251. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  252. package/dist/lib/plugins/openapi/playground/PathParams.d.ts +4 -5
  253. package/dist/lib/plugins/openapi/playground/PathParams.js +9 -13
  254. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  255. package/dist/lib/plugins/openapi/playground/Playground.d.ts +26 -14
  256. package/dist/lib/plugins/openapi/playground/Playground.js +54 -26
  257. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  258. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.d.ts +5 -0
  259. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +12 -0
  260. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -0
  261. package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +4 -3
  262. package/dist/lib/plugins/openapi/playground/QueryParams.js +21 -12
  263. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  264. package/dist/lib/plugins/openapi/playground/ResponseTab.d.ts +4 -0
  265. package/dist/lib/plugins/openapi/playground/ResponseTab.js +40 -0
  266. package/dist/lib/plugins/openapi/playground/ResponseTab.js.map +1 -0
  267. package/dist/lib/plugins/openapi/playground/createUrl.d.ts +1 -1
  268. package/dist/lib/plugins/openapi/playground/createUrl.js +5 -9
  269. package/dist/lib/plugins/openapi/playground/createUrl.js.map +1 -1
  270. package/dist/lib/plugins/openapi/util/prose.d.ts +1 -0
  271. package/dist/lib/plugins/openapi/util/prose.js +4 -0
  272. package/dist/lib/plugins/openapi/util/prose.js.map +1 -0
  273. package/dist/lib/plugins/openapi-worker.d.ts +1 -1
  274. package/dist/lib/plugins/openapi-worker.js +1 -1
  275. package/dist/lib/plugins/openapi-worker.js.map +1 -1
  276. package/dist/lib/plugins/redirect/index.d.ts +0 -1
  277. package/dist/lib/plugins/redirect/index.js +3 -4
  278. package/dist/lib/plugins/redirect/index.js.map +1 -1
  279. package/dist/lib/ui/Button.d.ts +5 -1
  280. package/dist/lib/ui/Button.js +24 -1
  281. package/dist/lib/ui/Button.js.map +1 -1
  282. package/dist/lib/ui/Callout.js +2 -2
  283. package/dist/lib/ui/Callout.js.map +1 -1
  284. package/dist/lib/ui/Card.js +1 -1
  285. package/dist/lib/ui/Card.js.map +1 -1
  286. package/dist/lib/ui/DropdownMenu.d.ts +27 -0
  287. package/dist/lib/ui/DropdownMenu.js +36 -0
  288. package/dist/lib/ui/DropdownMenu.js.map +1 -0
  289. package/dist/lib/ui/Input.js.map +1 -0
  290. package/dist/lib/util/MdxComponents.d.ts +2 -2
  291. package/dist/lib/util/MdxComponents.js +7 -5
  292. package/dist/lib/util/MdxComponents.js.map +1 -1
  293. package/dist/lib/util/fetchTimeout.d.ts +1 -0
  294. package/dist/lib/util/fetchTimeout.js +14 -0
  295. package/dist/lib/util/fetchTimeout.js.map +1 -0
  296. package/dist/lib/util/groupBy.d.ts +1 -6
  297. package/dist/lib/util/groupBy.js +10 -8
  298. package/dist/lib/util/groupBy.js.map +1 -1
  299. package/dist/lib/util/invariant.d.ts +6 -0
  300. package/dist/lib/util/invariant.js +21 -0
  301. package/dist/lib/util/invariant.js.map +1 -0
  302. package/dist/lib/util/joinPath.js +2 -1
  303. package/dist/lib/util/joinPath.js.map +1 -1
  304. package/dist/lib/util/logInit.d.ts +1 -0
  305. package/dist/lib/util/logInit.js +9 -0
  306. package/dist/lib/util/logInit.js.map +1 -0
  307. package/dist/lib/util/objectEntries.d.ts +4 -0
  308. package/dist/lib/util/objectEntries.js +2 -0
  309. package/dist/lib/util/objectEntries.js.map +1 -0
  310. package/dist/lib/util/renderIf.d.ts +1 -0
  311. package/dist/lib/util/renderIf.js +2 -0
  312. package/dist/lib/util/renderIf.js.map +1 -0
  313. package/dist/lib/util/requestIdleCallbackPolyfill.d.ts +1 -0
  314. package/dist/lib/util/requestIdleCallbackPolyfill.js +7 -0
  315. package/dist/lib/util/requestIdleCallbackPolyfill.js.map +1 -0
  316. package/dist/lib/util/useScrollToAnchor.js +31 -17
  317. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  318. package/dist/vite/build.js +30 -7
  319. package/dist/vite/build.js.map +1 -1
  320. package/dist/vite/config.d.ts +20 -12
  321. package/dist/vite/config.js +107 -55
  322. package/dist/vite/config.js.map +1 -1
  323. package/dist/vite/config.test.js +6 -3
  324. package/dist/vite/config.test.js.map +1 -1
  325. package/dist/vite/dev-server.d.ts +2 -1
  326. package/dist/vite/dev-server.js +44 -15
  327. package/dist/vite/dev-server.js.map +1 -1
  328. package/dist/vite/html.js +18 -5
  329. package/dist/vite/html.js.map +1 -1
  330. package/dist/vite/plugin-api-keys.js +7 -8
  331. package/dist/vite/plugin-api-keys.js.map +1 -1
  332. package/dist/vite/plugin-api.js +9 -20
  333. package/dist/vite/plugin-api.js.map +1 -1
  334. package/dist/vite/plugin-auth.js +5 -6
  335. package/dist/vite/plugin-auth.js.map +1 -1
  336. package/dist/vite/plugin-component.js +5 -2
  337. package/dist/vite/plugin-component.js.map +1 -1
  338. package/dist/vite/plugin-config.d.ts +3 -6
  339. package/dist/vite/plugin-config.js +5 -8
  340. package/dist/vite/plugin-config.js.map +1 -1
  341. package/dist/vite/plugin-custom-css.d.ts +6 -0
  342. package/dist/vite/plugin-custom-css.js +54 -0
  343. package/dist/vite/plugin-custom-css.js.map +1 -0
  344. package/dist/vite/plugin-docs.js +15 -5
  345. package/dist/vite/plugin-docs.js.map +1 -1
  346. package/dist/vite/plugin-mdx.d.ts +3 -1
  347. package/dist/vite/plugin-mdx.js +5 -5
  348. package/dist/vite/plugin-mdx.js.map +1 -1
  349. package/dist/vite/plugin-metadata.js +1 -1
  350. package/dist/vite/plugin-metadata.js.map +1 -1
  351. package/dist/vite/plugin-redirect.js +10 -10
  352. package/dist/vite/plugin-redirect.js.map +1 -1
  353. package/dist/vite/plugin-sidebar.d.ts +3 -0
  354. package/dist/vite/plugin-sidebar.js +23 -0
  355. package/dist/vite/plugin-sidebar.js.map +1 -0
  356. package/dist/vite/plugin.js +5 -5
  357. package/dist/vite/plugin.js.map +1 -1
  358. package/dist/vite/prerender.d.ts +17 -0
  359. package/dist/vite/prerender.js +79 -0
  360. package/dist/vite/prerender.js.map +1 -0
  361. package/lib/AuthenticationPlugin-C3dzfGaA.js +55 -0
  362. package/lib/AuthenticationPlugin-C3dzfGaA.js.map +1 -0
  363. package/lib/CategoryHeading-BWq12Bfa.js +10 -0
  364. package/lib/CategoryHeading-BWq12Bfa.js.map +1 -0
  365. package/lib/Combination-Djh-LWhb.js +2789 -0
  366. package/lib/Combination-Djh-LWhb.js.map +1 -0
  367. package/lib/DeveloperHint-BQSFXH01.js +10 -0
  368. package/lib/DeveloperHint-BQSFXH01.js.map +1 -0
  369. package/lib/Input-SCGD-EvD.js +2239 -0
  370. package/lib/Input-SCGD-EvD.js.map +1 -0
  371. package/lib/Markdown-B_Gax7at.js +14108 -0
  372. package/lib/Markdown-B_Gax7at.js.map +1 -0
  373. package/lib/MdxPage-d02krMBw.js +187 -0
  374. package/lib/MdxPage-d02krMBw.js.map +1 -0
  375. package/lib/OperationList-BQweX28o.js +448 -0
  376. package/lib/OperationList-BQweX28o.js.map +1 -0
  377. package/lib/Route-BPGW1TS_.js +14 -0
  378. package/lib/Route-BPGW1TS_.js.map +1 -0
  379. package/lib/SlotletProvider-CzMAO73_.js +82 -0
  380. package/lib/SlotletProvider-CzMAO73_.js.map +1 -0
  381. package/lib/Spinner-DEgs-1Gu.js +274 -0
  382. package/lib/Spinner-DEgs-1Gu.js.map +1 -0
  383. package/lib/ZudokuContext-C3JtXViU.js +1084 -0
  384. package/lib/ZudokuContext-C3JtXViU.js.map +1 -0
  385. package/lib/_commonjsHelpers-BVfed4GL.js +29 -0
  386. package/lib/_commonjsHelpers-BVfed4GL.js.map +1 -0
  387. package/lib/assets/index-BPdJm2ty.js +1 -0
  388. package/lib/assets/index-BPdJm2ty.js.map +1 -0
  389. package/lib/assets/{worker-BCcpCNJ7.js → worker-CyHZIIfE.js} +10727 -10300
  390. package/lib/assets/worker-CyHZIIfE.js.map +1 -0
  391. package/lib/index-7kcHaXD6.js +1771 -0
  392. package/lib/index-7kcHaXD6.js.map +1 -0
  393. package/lib/index-B8BCBPkc.js +124 -0
  394. package/lib/index-B8BCBPkc.js.map +1 -0
  395. package/lib/index-DoIWqOG1.js +5934 -0
  396. package/lib/index-DoIWqOG1.js.map +1 -0
  397. package/lib/index-pI9JkN46.js +4765 -0
  398. package/lib/index-pI9JkN46.js.map +1 -0
  399. package/lib/joinPath-VeNuJa7y.js +8 -0
  400. package/lib/joinPath-VeNuJa7y.js.map +1 -0
  401. package/lib/jsx-runtime-B6kdoens.js +635 -0
  402. package/lib/jsx-runtime-B6kdoens.js.map +1 -0
  403. package/lib/prism-bash.min-DadFsM4Z.js +1 -0
  404. package/lib/prism-bash.min-DadFsM4Z.js.map +1 -0
  405. package/lib/prism-csharp.min-Yizuc34Y.js +1 -0
  406. package/lib/prism-csharp.min-Yizuc34Y.js.map +1 -0
  407. package/lib/prism-java.min-d5iT_mOd.js +1 -0
  408. package/lib/prism-java.min-d5iT_mOd.js.map +1 -0
  409. package/lib/prism-json.min-B1GJqK1k.js +1 -0
  410. package/lib/prism-json.min-B1GJqK1k.js.map +1 -0
  411. package/lib/prism-markup-templating-DZrrEs0A.js +1 -0
  412. package/lib/prism-markup-templating-DZrrEs0A.js.map +1 -0
  413. package/lib/prism-objectivec.min-BXSWqpJJ.js +1 -0
  414. package/lib/prism-objectivec.min-BXSWqpJJ.js.map +1 -0
  415. package/lib/prism-php.min-o7FpoMP_.js +1 -0
  416. package/lib/prism-php.min-o7FpoMP_.js.map +1 -0
  417. package/lib/prism-ruby.min-C7LwcKyz.js +1 -0
  418. package/lib/prism-ruby.min-C7LwcKyz.js.map +1 -0
  419. package/lib/router-BiRCp01d.js +2971 -0
  420. package/lib/router-BiRCp01d.js.map +1 -0
  421. package/lib/slugify-CiPVjteN.js +28 -0
  422. package/lib/slugify-CiPVjteN.js.map +1 -0
  423. package/lib/state-DsXXkBLH.js +288 -0
  424. package/lib/state-DsXXkBLH.js.map +1 -0
  425. package/lib/{urql-DMlBWUKL.js → urql-DrBfkb92.js} +2 -2
  426. package/lib/urql-DrBfkb92.js.map +1 -0
  427. package/lib/utils-D3fcGEot.js +749 -0
  428. package/lib/utils-D3fcGEot.js.map +1 -0
  429. package/lib/zudoku.auth-auth0.js +31 -20
  430. package/lib/zudoku.auth-auth0.js.map +1 -0
  431. package/lib/zudoku.auth-clerk.js +59 -29
  432. package/lib/zudoku.auth-clerk.js.map +1 -0
  433. package/lib/zudoku.auth-openid.js +742 -573
  434. package/lib/zudoku.auth-openid.js.map +1 -0
  435. package/lib/zudoku.components.js +2008 -684
  436. package/lib/zudoku.components.js.map +1 -0
  437. package/lib/zudoku.openapi-worker.js +15035 -146
  438. package/lib/zudoku.openapi-worker.js.map +1 -0
  439. package/lib/zudoku.plugin-api-keys.js +325 -0
  440. package/lib/zudoku.plugin-api-keys.js.map +1 -0
  441. package/lib/zudoku.plugin-custom-page.js +13 -0
  442. package/lib/zudoku.plugin-custom-page.js.map +1 -0
  443. package/lib/zudoku.plugin-markdown.js +31 -0
  444. package/lib/zudoku.plugin-markdown.js.map +1 -0
  445. package/lib/zudoku.plugin-openapi.js +14 -0
  446. package/lib/zudoku.plugin-openapi.js.map +1 -0
  447. package/lib/zudoku.plugin-redirect.js +11 -0
  448. package/lib/zudoku.plugin-redirect.js.map +1 -0
  449. package/package.json +64 -25
  450. package/src/app/App.tsx +0 -41
  451. package/src/app/demo-cdn.html +26 -0
  452. package/src/app/demo.html +18 -0
  453. package/src/app/demo.tsx +46 -0
  454. package/src/app/entry.client.tsx +47 -0
  455. package/src/app/entry.server.tsx +160 -0
  456. package/src/app/main.css +83 -3
  457. package/src/app/main.tsx +87 -15
  458. package/src/app/standalone.html +20 -0
  459. package/src/app/standalone.tsx +52 -0
  460. package/src/app/tailwind.ts +2 -6
  461. package/src/lib/authentication/AuthenticationPlugin.tsx +38 -0
  462. package/src/lib/authentication/authentication.ts +6 -12
  463. package/src/lib/authentication/components/SignIn.tsx +15 -0
  464. package/src/lib/authentication/components/SignOut.tsx +13 -0
  465. package/src/lib/authentication/components/SignUp.tsx +11 -0
  466. package/src/lib/authentication/hook.ts +4 -4
  467. package/src/lib/authentication/providers/auth0.tsx +16 -6
  468. package/src/lib/authentication/providers/clerk.tsx +63 -31
  469. package/src/lib/authentication/providers/openid.tsx +104 -34
  470. package/src/lib/authentication/state.ts +1 -1
  471. package/src/lib/components/Bootstrap.tsx +44 -0
  472. package/src/lib/components/DevPortal.tsx +75 -66
  473. package/src/lib/components/DeveloperHint.tsx +25 -0
  474. package/src/lib/components/ErrorPage.tsx +28 -0
  475. package/src/lib/components/Header.tsx +106 -31
  476. package/src/lib/components/Heading.tsx +26 -7
  477. package/src/lib/components/InlineCode.tsx +19 -0
  478. package/src/lib/components/Layout.tsx +16 -11
  479. package/src/lib/components/NotFoundPage.tsx +33 -0
  480. package/src/lib/components/SlotletProvider.tsx +25 -0
  481. package/src/lib/components/SyntaxHighlight.tsx +53 -44
  482. package/src/lib/components/TopNavigation.tsx +10 -5
  483. package/src/lib/components/context/ThemeContext.tsx +3 -41
  484. package/src/lib/components/context/ThemeProvider.tsx +27 -0
  485. package/src/lib/components/context/ZudokuContext.ts +55 -0
  486. package/src/lib/components/context/ZudokuProvider.tsx +26 -0
  487. package/src/lib/components/index.ts +25 -3
  488. package/src/lib/components/navigation/Sidebar.tsx +24 -0
  489. package/src/lib/components/navigation/SidebarBadge.tsx +40 -0
  490. package/src/lib/components/navigation/SidebarCategory.tsx +105 -0
  491. package/src/lib/components/navigation/SidebarItem.tsx +100 -0
  492. package/src/lib/components/navigation/{SideNavigationWrapper.tsx → SidebarWrapper.tsx} +1 -1
  493. package/src/lib/components/navigation/utils.ts +117 -0
  494. package/src/lib/core/DevPortalContext.ts +72 -68
  495. package/src/lib/core/plugins.ts +40 -16
  496. package/src/lib/errors/ErrorAlert.tsx +21 -0
  497. package/src/lib/errors/RouterError.tsx +13 -0
  498. package/src/lib/errors/ServerError.tsx +5 -0
  499. package/src/lib/errors/TopLevelError.tsx +8 -0
  500. package/src/lib/oas/graphql/index.ts +11 -6
  501. package/src/lib/oas/parser/index.ts +41 -20
  502. package/src/lib/plugins/{api-key → api-keys}/CreateApiKey.tsx +4 -4
  503. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +29 -0
  504. package/src/lib/plugins/{api-key → api-keys}/SettingsApiKeys.tsx +49 -16
  505. package/src/lib/plugins/{api-key → api-keys}/index.tsx +27 -41
  506. package/src/lib/plugins/custom-page/index.tsx +22 -0
  507. package/src/lib/plugins/markdown/MdxPage.tsx +54 -73
  508. package/src/lib/plugins/markdown/Toc.tsx +53 -40
  509. package/src/lib/plugins/markdown/generateRoutes.tsx +35 -53
  510. package/src/lib/plugins/markdown/index.tsx +10 -7
  511. package/src/lib/plugins/openapi/ColorizedParam.tsx +23 -16
  512. package/src/lib/plugins/openapi/OperationList.tsx +46 -10
  513. package/src/lib/plugins/openapi/OperationListItem.tsx +51 -30
  514. package/src/lib/plugins/openapi/ParameterList.tsx +13 -10
  515. package/src/lib/plugins/openapi/ParameterListItem.tsx +3 -4
  516. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +39 -0
  517. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +3 -15
  518. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +3 -2
  519. package/src/lib/plugins/openapi/Route.tsx +21 -0
  520. package/src/lib/plugins/openapi/SchemaListView.tsx +39 -192
  521. package/src/lib/plugins/openapi/SchemaListViewItem.tsx +125 -0
  522. package/src/lib/plugins/openapi/SchemaListViewItemGroup.tsx +63 -0
  523. package/src/lib/plugins/openapi/Sidecar.tsx +77 -30
  524. package/src/lib/plugins/openapi/SidecarBox.tsx +13 -2
  525. package/src/lib/plugins/openapi/{Select.tsx → SimpleSelect.tsx} +6 -3
  526. package/src/lib/plugins/openapi/StaggeredRender.tsx +31 -0
  527. package/src/lib/plugins/openapi/client/createMemoryClient.ts +56 -0
  528. package/src/lib/plugins/openapi/client/createServer.ts +33 -0
  529. package/src/lib/plugins/openapi/{worker/createSharedWorkerClient.ts → client/createWorkerClient.ts} +21 -2
  530. package/src/lib/plugins/openapi/client/interfaces.ts +5 -0
  531. package/src/lib/plugins/openapi/{worker → client}/worker.ts +3 -3
  532. package/src/lib/plugins/openapi/context.tsx +16 -0
  533. package/src/lib/plugins/openapi/graphql/gql.ts +8 -8
  534. package/src/lib/plugins/openapi/graphql/graphql.ts +80 -80
  535. package/src/lib/plugins/openapi/index.tsx +134 -76
  536. package/src/lib/plugins/openapi/interfaces.ts +9 -0
  537. package/src/lib/plugins/openapi/playground/Headers.tsx +1 -1
  538. package/src/lib/plugins/openapi/playground/PathParams.tsx +76 -50
  539. package/src/lib/plugins/openapi/playground/Playground.tsx +240 -230
  540. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +40 -0
  541. package/src/lib/plugins/openapi/playground/QueryParams.tsx +107 -66
  542. package/src/lib/plugins/openapi/playground/ResponseTab.tsx +76 -0
  543. package/src/lib/plugins/openapi/playground/createUrl.ts +12 -15
  544. package/src/lib/plugins/openapi/util/prose.ts +7 -0
  545. package/src/lib/plugins/openapi-worker.ts +1 -1
  546. package/src/lib/plugins/redirect/index.tsx +3 -4
  547. package/src/lib/ui/Button.tsx +32 -2
  548. package/src/lib/ui/Callout.tsx +4 -4
  549. package/src/lib/ui/Card.tsx +1 -1
  550. package/src/lib/ui/DropdownMenu.tsx +199 -0
  551. package/src/lib/util/MdxComponents.tsx +7 -15
  552. package/src/lib/util/fetchTimeout.tsx +21 -0
  553. package/src/lib/util/groupBy.ts +7 -12
  554. package/src/lib/util/invariant.ts +26 -0
  555. package/src/lib/util/joinPath.tsx +2 -1
  556. package/src/lib/util/logInit.ts +9 -0
  557. package/src/lib/util/objectEntries.ts +5 -0
  558. package/src/lib/util/renderIf.ts +4 -0
  559. package/src/lib/util/requestIdleCallbackPolyfill.ts +6 -0
  560. package/src/lib/util/useScrollToAnchor.ts +39 -18
  561. package/dist/lib/authentication/Callback.d.ts +0 -3
  562. package/dist/lib/authentication/Callback.js +0 -34
  563. package/dist/lib/authentication/Callback.js.map +0 -1
  564. package/dist/lib/components/Input.js.map +0 -1
  565. package/dist/lib/components/Link.d.ts +0 -1
  566. package/dist/lib/components/Link.js +0 -2
  567. package/dist/lib/components/Link.js.map +0 -1
  568. package/dist/lib/components/Router.d.ts +0 -4
  569. package/dist/lib/components/Router.js +0 -20
  570. package/dist/lib/components/Router.js.map +0 -1
  571. package/dist/lib/components/context/DevPortalProvider.d.ts +0 -9
  572. package/dist/lib/components/context/DevPortalProvider.js +0 -39
  573. package/dist/lib/components/context/DevPortalProvider.js.map +0 -1
  574. package/dist/lib/components/navigation/SideNavigation.d.ts +0 -1
  575. package/dist/lib/components/navigation/SideNavigation.js +0 -11
  576. package/dist/lib/components/navigation/SideNavigation.js.map +0 -1
  577. package/dist/lib/components/navigation/SideNavigationCategory.d.ts +0 -4
  578. package/dist/lib/components/navigation/SideNavigationCategory.js +0 -26
  579. package/dist/lib/components/navigation/SideNavigationCategory.js.map +0 -1
  580. package/dist/lib/components/navigation/SideNavigationItem.d.ts +0 -13
  581. package/dist/lib/components/navigation/SideNavigationItem.js +0 -44
  582. package/dist/lib/components/navigation/SideNavigationItem.js.map +0 -1
  583. package/dist/lib/components/navigation/SideNavigationWrapper.js.map +0 -1
  584. package/dist/lib/components/navigation/useNavigationCollapsibleState.d.ts +0 -6
  585. package/dist/lib/components/navigation/useNavigationCollapsibleState.js +0 -16
  586. package/dist/lib/components/navigation/useNavigationCollapsibleState.js.map +0 -1
  587. package/dist/lib/components/navigation/util.d.ts +0 -8
  588. package/dist/lib/components/navigation/util.js +0 -15
  589. package/dist/lib/components/navigation/util.js.map +0 -1
  590. package/dist/lib/core/helmet.d.ts +0 -4
  591. package/dist/lib/core/helmet.js +0 -5
  592. package/dist/lib/core/helmet.js.map +0 -1
  593. package/dist/lib/core/icons.d.ts +0 -1
  594. package/dist/lib/core/icons.js +0 -2
  595. package/dist/lib/core/icons.js.map +0 -1
  596. package/dist/lib/core/router.d.ts +0 -1
  597. package/dist/lib/core/router.js +0 -2
  598. package/dist/lib/core/router.js.map +0 -1
  599. package/dist/lib/plugins/api-key/CreateApiKey.js.map +0 -1
  600. package/dist/lib/plugins/api-key/SettingsApiKeys.js +0 -38
  601. package/dist/lib/plugins/api-key/SettingsApiKeys.js.map +0 -1
  602. package/dist/lib/plugins/api-key/index.js.map +0 -1
  603. package/dist/lib/plugins/index.d.ts +0 -4
  604. package/dist/lib/plugins/index.js +0 -5
  605. package/dist/lib/plugins/index.js.map +0 -1
  606. package/dist/lib/plugins/openapi/MakeRequest.js +0 -43
  607. package/dist/lib/plugins/openapi/MakeRequest.js.map +0 -1
  608. package/dist/lib/plugins/openapi/MethodBadge.d.ts +0 -13
  609. package/dist/lib/plugins/openapi/MethodBadge.js +0 -26
  610. package/dist/lib/plugins/openapi/MethodBadge.js.map +0 -1
  611. package/dist/lib/plugins/openapi/Select.js +0 -5
  612. package/dist/lib/plugins/openapi/Select.js.map +0 -1
  613. package/dist/lib/plugins/openapi/worker/createSharedWorkerClient.d.ts +0 -5
  614. package/dist/lib/plugins/openapi/worker/createSharedWorkerClient.js.map +0 -1
  615. package/dist/lib/plugins/openapi/worker/shared-worker.d.ts +0 -1
  616. package/dist/lib/plugins/openapi/worker/shared-worker.js +0 -6
  617. package/dist/lib/plugins/openapi/worker/shared-worker.js.map +0 -1
  618. package/dist/lib/plugins/openapi/worker/worker.js.map +0 -1
  619. package/dist/lib/ui/button-variants.d.ts +0 -4
  620. package/dist/lib/ui/button-variants.js +0 -24
  621. package/dist/lib/ui/button-variants.js.map +0 -1
  622. package/dist/lib/util/traverseNavigation.d.ts +0 -6
  623. package/dist/lib/util/traverseNavigation.js +0 -30
  624. package/dist/lib/util/traverseNavigation.js.map +0 -1
  625. package/dist/vite/common.d.ts +0 -1
  626. package/dist/vite/common.js +0 -5
  627. package/dist/vite/common.js.map +0 -1
  628. package/dist/vite/plugin-html.d.ts +0 -3
  629. package/dist/vite/plugin-html.js +0 -47
  630. package/dist/vite/plugin-html.js.map +0 -1
  631. package/dist/vite/plugin-openapi-worker.d.ts +0 -4
  632. package/dist/vite/plugin-openapi-worker.js +0 -28
  633. package/dist/vite/plugin-openapi-worker.js.map +0 -1
  634. package/lib/Spinner-BewqqUU-.js +0 -8413
  635. package/lib/clerk-Wslx_mPo.js +0 -19685
  636. package/lib/index-PyGcnQFX.js +0 -3462
  637. package/lib/loglevel-CoH7VSwE.js +0 -152
  638. package/lib/state-2Hu1renZ.js +0 -313
  639. package/lib/zudoku.plugins.js +0 -19904
  640. package/src/lib/authentication/Callback.tsx +0 -60
  641. package/src/lib/components/Link.tsx +0 -1
  642. package/src/lib/components/Router.tsx +0 -28
  643. package/src/lib/components/context/DevPortalProvider.ts +0 -54
  644. package/src/lib/components/navigation/SideNavigation.tsx +0 -21
  645. package/src/lib/components/navigation/SideNavigationCategory.tsx +0 -76
  646. package/src/lib/components/navigation/SideNavigationItem.tsx +0 -152
  647. package/src/lib/components/navigation/useNavigationCollapsibleState.ts +0 -27
  648. package/src/lib/components/navigation/util.ts +0 -38
  649. package/src/lib/core/helmet.ts +0 -5
  650. package/src/lib/core/icons.tsx +0 -1
  651. package/src/lib/core/router.tsx +0 -1
  652. package/src/lib/plugins/index.ts +0 -4
  653. package/src/lib/plugins/openapi/MakeRequest.tsx +0 -63
  654. package/src/lib/plugins/openapi/MethodBadge.tsx +0 -36
  655. package/src/lib/plugins/openapi/worker/shared-worker.ts +0 -5
  656. package/src/lib/ui/button-variants.ts +0 -31
  657. package/src/lib/util/traverseNavigation.ts +0 -55
  658. /package/dist/lib/plugins/{api-key → api-keys}/CreateApiKey.d.ts +0 -0
  659. /package/dist/lib/plugins/{api-key → api-keys}/SettingsApiKeys.d.ts +0 -0
  660. /package/dist/lib/plugins/openapi/{worker → client}/worker.d.ts +0 -0
  661. /package/dist/lib/{components → ui}/Input.d.ts +0 -0
  662. /package/dist/lib/{components → ui}/Input.js +0 -0
  663. /package/src/lib/{components → ui}/Input.tsx +0 -0
@@ -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,45 +1,22 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useTopNavigationItem } from "../../components/context/DevPortalProvider.js";
3
- import { isPathItem } from "../../components/navigation/util.js";
4
- import { Navigate } from "../../core/router.js";
5
- import { traverseNavigation } from "../../util/traverseNavigation.js";
6
- import { MdxPage } from "./MdxPage.js";
7
- export const generateRoutes = (markdownFiles) => {
8
- const routes = Object.entries(markdownFiles).flatMap(([file, importPromise]) => {
9
- // @todo we can pass in the folder name and then filter the markdown files based on that path
10
- const match = file.match(/pages\/(.*).mdx?$/);
11
- const path = match?.at(1);
12
- if (!path)
13
- return [];
14
- const pathSegments = path.split("/");
15
- const isIndexFile = pathSegments.at(-1) === "index";
16
- const routePath = isIndexFile
17
- ? pathSegments.slice(0, -1).join("/")
18
- : path;
19
- return {
20
- path: routePath,
21
- lazy: async () => {
22
- const { default: Component, ...props } = await importPromise();
23
- return {
24
- element: _jsx(MdxPage, { mdxComponent: Component, ...props }),
25
- };
26
- },
27
- };
28
- });
29
- const rootRoutes = Array.from(new Set(routes.map((route) => route.path.split("/").at(0)))).map((dir) => ({
30
- path: `/${dir}`,
31
- element: _jsx(Redirect, {}),
32
- }));
33
- return [...routes, ...rootRoutes];
34
- };
35
- const Redirect = () => {
36
- const navItem = useTopNavigationItem();
37
- if (!navItem)
38
- return null;
39
- return traverseNavigation(navItem, (node, fullPath) => {
40
- if ("children" in node || !isPathItem(node))
41
- return;
42
- return _jsx(Navigate, { to: fullPath, replace: true });
43
- });
44
- };
2
+ export const generateRoutes = (markdownFiles, defaultOptions) => Object.entries(markdownFiles).flatMap(([file, importPromise]) => {
3
+ // @todo we can pass in the folder name and then filter the markdown files based on that path
4
+ const match = file.match(/pages\/(.*).mdx?$/);
5
+ const path = match?.at(1);
6
+ if (!path)
7
+ return [];
8
+ const pathSegments = path.split("/");
9
+ const isIndexFile = pathSegments.at(-1) === "index";
10
+ const routePath = isIndexFile ? pathSegments.slice(0, -1).join("/") : path;
11
+ return {
12
+ path: routePath,
13
+ lazy: async () => {
14
+ const { MdxPage } = await import("./MdxPage.js");
15
+ const { default: Component, ...props } = await importPromise();
16
+ return {
17
+ element: (_jsx(MdxPage, { mdxComponent: Component, ...props, defaultOptions: defaultOptions })),
18
+ };
19
+ },
20
+ };
21
+ });
45
22
  //# sourceMappingURL=generateRoutes.js.map
@@ -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":";AAOA,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,aAAqD,EACrD,cAA6C,EAC9B,EAAE,CACjB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE;IAC9D,6FAA6F;IAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAE1B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;IACpD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3E,OAAO;QACL,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;YACjD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,aAAa,EAAE,CAAC;YAC/D,OAAO;gBACL,OAAO,EAAE,CACP,KAAC,OAAO,IACN,YAAY,EAAE,SAAS,KACnB,KAAK,EACT,cAAc,EAAE,cAAc,GAC9B,CACH;aACF,CAAC;QACJ,CAAC;KACoB,CAAC;AAC1B,CAAC,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,10 +1,11 @@
1
1
  import { type ReactNode } from "react";
2
2
  export declare const DATA_ATTR = "data-linked-param";
3
3
  export declare const usePastellizedColor: (name: string) => string;
4
- export declare const ColorizedParam: ({ name, className, backgroundOpacity, slug, children, onClick, }: {
4
+ export declare const ColorizedParam: ({ name, className, backgroundOpacity, borderOpacity, slug, children, onClick, }: {
5
5
  name: string;
6
6
  className?: string;
7
7
  backgroundOpacity?: string;
8
+ borderOpacity?: string;
8
9
  slug?: string;
9
10
  children?: ReactNode;
10
11
  onClick?: () => void;
@@ -6,28 +6,33 @@ import { pastellize } from "../../util/pastellize.js";
6
6
  export const DATA_ATTR = "data-linked-param";
7
7
  export const usePastellizedColor = (name) => {
8
8
  const [isDark] = useTheme();
9
- return pastellize(name, !isDark ? { saturation: 100, lightness: 70 } : undefined);
9
+ return pastellize(name, !isDark ? { saturation: 85, lightness: 50 } : undefined);
10
10
  };
11
- export const ColorizedParam = ({ name, className, backgroundOpacity = "100%", slug, children, onClick, }) => {
11
+ export const ColorizedParam = ({ name, className, backgroundOpacity = "100%", borderOpacity = "100%", slug, children, onClick, }) => {
12
12
  const ref = useRef(null);
13
- const normalized = name.replace("{", "").replace("}", "");
13
+ const normalized = name.replace(/[{}]/g, "");
14
+ const normalizedSlug = slug?.replace(/[{}]/g, "");
14
15
  const color = usePastellizedColor(normalized);
15
- const borderColor = `hsl(${color})`;
16
+ const borderColor = `hsl(${color} / ${borderOpacity})`;
16
17
  const backgroundColor = `hsl(${color} / ${backgroundOpacity})`;
17
18
  useEffect(() => {
18
- if (!slug)
19
+ if (!normalizedSlug)
19
20
  return;
20
21
  if (!ref.current)
21
22
  return;
22
23
  const onMouseEnter = () => {
23
- document.querySelectorAll(`[${DATA_ATTR}="${slug}"]`).forEach((el) => {
24
+ document
25
+ .querySelectorAll(`[${DATA_ATTR}="${normalizedSlug}"]`)
26
+ .forEach((el) => {
24
27
  if (el instanceof HTMLElement) {
25
28
  el.dataset.active = "true";
26
29
  }
27
30
  });
28
31
  };
29
32
  const onMouseLeave = () => {
30
- document.querySelectorAll(`[${DATA_ATTR}="${slug}"]`).forEach((el) => {
33
+ document
34
+ .querySelectorAll(`[${DATA_ATTR}="${normalizedSlug}"]`)
35
+ .forEach((el) => {
31
36
  if (el instanceof HTMLElement) {
32
37
  el.dataset.active = "false";
33
38
  }
@@ -39,7 +44,7 @@ export const ColorizedParam = ({ name, className, backgroundOpacity = "100%", sl
39
44
  ref.current?.removeEventListener("mouseenter", onMouseEnter);
40
45
  ref.current?.removeEventListener("mouseleave", onMouseLeave);
41
46
  };
42
- }, [slug]);
43
- return (_jsxs("span", { className: cn("inline-flex relative rounded group", className), [DATA_ATTR]: slug, ref: ref, onClick: onClick, children: [_jsx("span", { className: "absolute inset-0 border-b-2 transition-opacity duration-200 opacity-30 group-data-[active=true]:opacity-100", style: { borderColor, backgroundColor } }), _jsx("span", { className: "relative", children: children ?? name })] }));
47
+ }, [normalizedSlug]);
48
+ return (_jsxs("span", { className: cn("inline-flex relative rounded group", className), [DATA_ATTR]: normalizedSlug, ref: ref, onClick: onClick, children: [_jsx("span", { className: "absolute inset-0 border-b-2 transition-opacity duration-200 opacity-30 group-data-[active=true]:opacity-100", style: { borderColor, backgroundColor } }), _jsx("span", { className: "relative", children: children ?? name })] }));
44
49
  };
45
50
  //# sourceMappingURL=ColorizedParam.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColorizedParam.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ColorizedParam.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ColorizedParam.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ColorizedParam.tsx"],"names":[],"mappings":"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"}
@@ -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,23 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } 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
+ import { Card } from "../../ui/Card.js";
4
5
  import { Tabs, TabsContent, TabsList, TabsTrigger } from "../../ui/Tabs.js";
6
+ import { groupBy } from "../../util/groupBy.js";
7
+ import { renderIf } from "../../util/renderIf.js";
5
8
  import { OperationsFragment } from "./OperationList.js";
6
9
  import { ParameterList } from "./ParameterList.js";
7
10
  import { SchemaListView } from "./SchemaListView.js";
8
11
  import { Sidecar } from "./Sidecar.js";
9
12
  import { useFragment } from "./graphql/index.js";
13
+ import { SchemaProseClasses } from "./util/prose.js";
10
14
  export const PARAM_GROUPS = ["path", "query", "header", "cookie"];
11
15
  export const OperationListItem = ({ operationFragment, }) => {
12
16
  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)) : ([])) })), operation.responses.length > 0 && (_jsxs(_Fragment, { children: [_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));
17
+ const groupedParameters = groupBy(operation.parameters ?? [], (param) => param.in);
18
+ const first = operation.responses.at(0);
19
+ return (_jsxs("div", { className: "grid grid-cols-1 lg:grid-cols-[4fr_3fr] gap-8 items-start border-b-2 mb-16 pb-16", 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) => {
20
+ return _jsx(SchemaListView, { schema: content.schema });
21
+ }) ?? (_jsx(Card, { className: "font-mono text-sm p-4", children: "No response body" })) }, response.statusCode))) })] })] }))] }), _jsx(Sidecar, { operation: operation })] }, operation.operationId));
16
22
  };
17
23
  //# 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":"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"}
@@ -1,5 +1,6 @@
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
+ import { Card } from "../../ui/Card.js";
3
4
  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}`))) })] }));
5
+ 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(Card, { children: _jsx("ul", { className: "list-none m-0 px-0 divide-y ", children: parameters.map((parameter) => (_jsx(ParameterListItem, { parameter: parameter, id: id, group: group }, `${parameter.name}-${parameter.in}`))) }) })] }));
5
6
  //# 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;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,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,KAAC,IAAI,cACH,aAAI,SAAS,EAAC,8BAA8B,YACzC,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,GACA,IACN,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,5 @@
1
1
  import type { OperationListItemResult } from "./OperationList.js";
2
- export declare const MakeRequest: ({ operation, }: {
2
+ export declare const PlaygroundDialogWrapper: ({ server, operation, }: {
3
+ server: string;
3
4
  operation: OperationListItemResult;
4
5
  }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { PlaygroundDialog } from "./playground/PlaygroundDialog.js";
3
+ export const PlaygroundDialogWrapper = ({ server, operation, }) => {
4
+ const headers = operation.parameters
5
+ ?.filter((p) => p.in === "header")
6
+ .map((p) => ({
7
+ name: p.name,
8
+ defaultValue: p.examples?.find((x) => x.value)?.value ?? "",
9
+ }));
10
+ const queryParams = operation.parameters
11
+ ?.filter((p) => p.in === "query")
12
+ .sort((a, b) => (a.required && !b.required ? -1 : 1))
13
+ .map((p) => ({
14
+ name: p.name,
15
+ defaultActive: p.required ?? false,
16
+ isRequired: p.required ?? false,
17
+ }));
18
+ const pathParams = operation.parameters
19
+ ?.filter((p) => p.in === "path")
20
+ .map((p) => ({ name: p.name }));
21
+ return (_jsx(PlaygroundDialog, { server: server, method: operation.method, url: operation.path, headers: headers, queryParams: queryParams, pathParams: pathParams }));
22
+ };
23
+ //# 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,MAAM,EACN,SAAS,GAIV,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,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE;KAC5D,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,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,aAAa,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;QAClC,UAAU,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;KAChC,CAAC,CAAC,CAAC;IACN,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,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAElC,OAAO,CACL,KAAC,gBAAgB,IACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,CAAC,MAAM,EACxB,GAAG,EAAE,SAAS,CAAC,IAAI,EACnB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACtB,CACH,CAAC;AACJ,CAAC,CAAC"}
@@ -1,19 +1,13 @@
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(content.at(0)?.schema
10
+ ? generateSchemaExample(content[0].schema)
11
+ : "", null, 2) }) })] }) }));
18
12
  };
19
13
  //# sourceMappingURL=RequestBodySidecarBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RequestBodySidecarBox.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/RequestBodySidecarBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAGtE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAMxE,iDAAiD;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EAAE,OAAO,EAAwB,EAAE,EAAE;IACzE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEpD,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEjC,OAAO,CACL,8BACE,gCAAc,EACd,MAAC,UAAU,CAAC,IAAI,eACd,MAAC,UAAU,CAAC,IAAI,IAAC,SAAS,EAAC,2CAA2C,aACpE,eAAM,SAAS,EAAC,WAAW,6BAAoB,EAC/C,KAAC,MAAM,IACL,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5C,OAAO,EAAE;oCACP,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;oCACtC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;iCACrC,GACD,IACc,EAClB,KAAC,UAAU,CAAC,IAAI,cACd,KAAC,eAAe,IACd,QAAQ,EAAC,MAAM,EACf,YAAY,QACZ,QAAQ,QACR,SAAS,EAAC,SAAS,EACnB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,QAAQ,KAAK,SAAS;gCACpB,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAsB,CAAC;gCAC1D,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,EACrB,IAAI,EACJ,CAAC,CACF,GACD,GACc,IACF,IACjB,CACJ,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"RequestBodySidecarBox.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/RequestBodySidecarBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAGtE,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAMxE,iDAAiD;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EAAE,OAAO,EAAwB,EAAE,EAAE;IACzE,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEjC,OAAO,CACL,4BACE,MAAC,UAAU,CAAC,IAAI,eACd,KAAC,UAAU,CAAC,IAAI,IAAC,SAAS,EAAC,2CAA2C,YACpE,eAAM,SAAS,EAAC,WAAW,qCAA4B,GACvC,EAClB,KAAC,UAAU,CAAC,IAAI,cACd,KAAC,eAAe,IACd,QAAQ,EAAC,MAAM,EACf,YAAY,QACZ,QAAQ,QACR,SAAS,EAAC,SAAS,EACnB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM;4BACnB,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAsB,CAAC;4BAC1D,CAAC,CAAC,EAAE,EACN,IAAI,EACJ,CAAC,CACF,GACD,GACc,IACF,GACjB,CACJ,CAAC;AACJ,CAAC,CAAC"}
@@ -10,6 +10,6 @@ export const ResponsesSidecarBox = ({ responses, }) => {
10
10
  const schema = activeTab.content?.[0]?.schema;
11
11
  return (_jsxs(SidecarBox.Root, { children: [_jsxs(SidecarBox.Head, { className: "text-xs grid grid-rows-2 pb-0", children: [_jsx("span", { className: "font-mono", children: "Example Responses" }), _jsx("div", { className: "flex gap-2", children: responses.map((response, index) => (_jsx("div", { onClick: () => setTabIndex(index), className: cn("text-xs font-mono px-1.5 py-1 pb-px translate-y-px border-b-2 border-transparent rounded-t cursor-pointer", tabIndex === index
12
12
  ? "text-primary dark:text-inherit border-primary"
13
- : "hover:border-accent-foreground/25"), children: response.statusCode }, response.statusCode))) })] }), _jsxs(SidecarBox.Body, { children: [schema ? (_jsx(SyntaxHighlight, { language: "json", noBackground: true, className: "text-xs", code: JSON.stringify(generateSchemaExample(schema), null, 2) })) : (_jsx("span", { className: "text-muted-foreground font-mono italic text-xs", children: "Empty Response" })), _jsx("hr", { className: "border-border my-1" }), _jsx("div", { className: "text-xs", children: responses[tabIndex].description })] })] }));
13
+ : "hover:border-accent-foreground/25"), children: response.statusCode }, response.statusCode))) })] }), _jsx(SidecarBox.Body, { children: schema ? (_jsx(SyntaxHighlight, { language: "json", noBackground: true, className: "text-xs", code: JSON.stringify(generateSchemaExample(schema), null, 2) })) : (_jsx("span", { className: "text-muted-foreground font-mono italic text-xs", children: "Empty Response" })) }), _jsx(SidecarBox.Footer, { className: "flex justify-end text-xs", children: responses[tabIndex].description })] }));
14
14
  };
15
15
  //# sourceMappingURL=ResponsesSidecarBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsesSidecarBox.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ResponsesSidecarBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,SAAS,GAGV,EAAE,EAAE;IACH,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,MAAkC,CAAC;IAE1E,OAAO,CACL,MAAC,UAAU,CAAC,IAAI,eACd,MAAC,UAAU,CAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,aACxD,eAAM,SAAS,EAAC,WAAW,kCAAyB,EACpD,cAAK,SAAS,EAAC,YAAY,YACxB,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAClC,cAEE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,SAAS,EAAE,EAAE,CACX,2GAA2G,EAC3G,QAAQ,KAAK,KAAK;gCAChB,CAAC,CAAC,+CAA+C;gCACjD,CAAC,CAAC,mCAAmC,CACxC,YAEA,QAAQ,CAAC,UAAU,IATf,QAAQ,CAAC,UAAU,CAUpB,CACP,CAAC,GACE,IACU,EAClB,MAAC,UAAU,CAAC,IAAI,eACb,MAAM,CAAC,CAAC,CAAC,CACR,KAAC,eAAe,IACd,QAAQ,EAAC,MAAM,EACf,YAAY,QACZ,SAAS,EAAC,SAAS,EACnB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAC5D,CACH,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,gDAAgD,+BAEzD,CACR,EACD,aAAI,SAAS,EAAC,oBAAoB,GAAG,EACrC,cAAK,SAAS,EAAC,SAAS,YAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,WAAW,GAAO,IAChD,IACF,CACnB,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"ResponsesSidecarBox.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/ResponsesSidecarBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,SAAS,GAGV,EAAE,EAAE;IACH,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,MAAkC,CAAC;IAE1E,OAAO,CACL,MAAC,UAAU,CAAC,IAAI,eACd,MAAC,UAAU,CAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,aACxD,eAAM,SAAS,EAAC,WAAW,kCAAyB,EACpD,cAAK,SAAS,EAAC,YAAY,YACxB,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAClC,cAEE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,SAAS,EAAE,EAAE,CACX,2GAA2G,EAC3G,QAAQ,KAAK,KAAK;gCAChB,CAAC,CAAC,+CAA+C;gCACjD,CAAC,CAAC,mCAAmC,CACxC,YAEA,QAAQ,CAAC,UAAU,IATf,QAAQ,CAAC,UAAU,CAUpB,CACP,CAAC,GACE,IACU,EAClB,KAAC,UAAU,CAAC,IAAI,cACb,MAAM,CAAC,CAAC,CAAC,CACR,KAAC,eAAe,IACd,QAAQ,EAAC,MAAM,EACf,YAAY,QACZ,SAAS,EAAC,SAAS,EACnB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAC5D,CACH,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,gDAAgD,+BAEzD,CACR,GACe,EAClB,KAAC,UAAU,CAAC,MAAM,IAAC,SAAS,EAAC,0BAA0B,YACpD,SAAS,CAAC,QAAQ,CAAC,CAAC,WAAW,GACd,IACJ,CACnB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { OasPluginConfig } from "./interfaces.js";
2
+ import { Client as UrqlClient } from "./util/urql.js";
3
+ export declare function OpenApiRoute({ config, client, }: {
4
+ config: OasPluginConfig;
5
+ client: typeof UrqlClient;
6
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Outlet } from "react-router-dom";
3
+ import { OasConfigProvider } from "./context.js";
4
+ import { Provider } from "./util/urql.js";
5
+ export function OpenApiRoute({ config, client, }) {
6
+ return (_jsx(Provider, { value: client, children: _jsx(OasConfigProvider, { value: { config }, children: _jsx(Outlet, {}) }) }));
7
+ }
8
+ //# sourceMappingURL=Route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Route.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/Route.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,EAAE,QAAQ,EAAwB,MAAM,gBAAgB,CAAC;AAEhE,MAAM,UAAU,YAAY,CAAC,EAC3B,MAAM,EACN,MAAM,GAIP;IACC,OAAO,CACL,KAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YACrB,KAAC,iBAAiB,IAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAClC,KAAC,MAAM,KAAG,GACQ,GACX,CACZ,CAAC;AACJ,CAAC"}
@@ -1,43 +1,27 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as Collapsible from "@radix-ui/react-collapsible";
3
- import { ListPlusIcon } from "lucide-react";
4
- import { useState } from "react";
5
2
  import { Markdown } from "../../components/Markdown.js";
6
- import { Button } from "../../ui/Button.js";
7
- import { cn } from "../../util/cn.js";
3
+ import { Card } from "../../ui/Card.js";
4
+ import { groupBy } from "../../util/groupBy.js";
5
+ import { objectEntries } from "../../util/objectEntries.js";
6
+ import { SchemaListViewItem } from "./SchemaListViewItem.js";
7
+ import { SchemaListViewItemGroup } from "./SchemaListViewItemGroup.js";
8
+ import { SchemaProseClasses } from "./util/prose.js";
8
9
  export const SchemaListView = ({ name, schema, level = 0, defaultOpen = false, }) => {
9
10
  const properties = Object.entries(schema.properties ?? {});
10
11
  const additionalProperties = typeof schema.additionalProperties === "object"
11
12
  ? Object.entries(schema.additionalProperties)
12
13
  : [];
13
14
  const combinedProperties = properties.concat(Array.isArray(additionalProperties) ? additionalProperties : []);
14
- const groups = Object.groupBy(combinedProperties, ([propertyName, property]) => {
15
+ const groups = groupBy(combinedProperties, ([propertyName, property]) => {
15
16
  return property.deprecated
16
17
  ? "deprecated"
17
18
  : schema.required?.includes(propertyName)
18
19
  ? "required"
19
20
  : "optional";
20
21
  });
21
- return (_jsxs("div", { className: cn("not-prose", level > 0 && "border border-border rounded text-sm"), children: [(schema.title ?? name) && (_jsx("div", { className: "ml-2 my-1 font-bold", children: schema.title ?? name })), level === 0 && schema.description && (_jsx("p", { className: "prose", children: schema.description })), _jsx("ul", { children: Object.entries(groups).map(([group, properties]) => {
22
- return (_jsx(SchemaListViewItemGroup, { defaultOpen: defaultOpen, group: group, nestingLevel: level, properties: properties, required: schema.required ?? [] }, group));
23
- }) })] }));
24
- };
25
- const SchemaListViewItemGroup = ({ group, properties, nestingLevel, required, defaultOpen = false, }) => {
26
- const notCollapsible = defaultOpen ||
27
- group === "required" ||
28
- properties.length === 1 ||
29
- nestingLevel === 0;
30
- const [open, setOpen] = useState(notCollapsible);
31
- if (properties.length === 0) {
32
- return;
22
+ if (schema.type === "array") {
23
+ return (_jsx(Card, { className: "overflow-hidden", children: _jsx(SchemaListViewItem, { propertyName: schema.title ?? name, isRequired: true, property: schema, defaultOpen: level === 0, nestingLevel: level }) }));
33
24
  }
34
- return (_jsxs(Collapsible.Root, { className: "CollapsibleRoot", open: open, onOpenChange: setOpen, children: [!open && (_jsxs(Collapsible.Trigger, { className: cn("py-2 hover:bg-muted w-full", group === "optional" && "font-semibold", group === "deprecated" && "text-muted-foreground"), children: [properties.length, " ", group, " fields"] })), _jsx(Collapsible.Content, { children: properties.map(([propertyName, property]) => (_jsx(SchemaListViewItem, { property: property, propertyName: propertyName, nestingLevel: nestingLevel, isRequired: required.includes(propertyName) }, propertyName))) })] }));
35
- };
36
- const SchemaListViewItem = ({ propertyName, property, nestingLevel, isRequired, }) => {
37
- return (_jsxs("div", { className: cn(nestingLevel > 0 ? "py-2" : "py-4", "px-2 border-t border-border bg-border/20 hover:bg-border/30 flex gap-1 flex-col text-sm", property.deprecated && "opacity-50"), children: [_jsxs("div", { className: "flex items-center gap-2 relative", children: [_jsxs("code", { children: [propertyName, " ", property.title] }), property.type && (_jsx("span", { className: "text-xs text-muted-foreground", children: property.type })), property.deprecated && (_jsx("span", { className: "text-xs text-muted-foreground", children: "Deprecated" })), !isRequired && (_jsxs("span", { className: "py-px px-1.5 font-medium text-xs border border-border rounded-lg", children: ["optional ", property.required] }))] }), property.description && (_jsx(Markdown, { content: property.description, className: "text-sm leading-normal line-clamp-4 " })), property.enum && (_jsxs("span", { className: "text-sm text-muted-foreground flex gap-1 flex-wrap items-center", children: [_jsx("span", { children: "Possible values" }), property.enum
38
- .filter((value) => value)
39
- .map((value) => (_jsx("span", { className: "font-mono text-xs border-border border bg-muted rounded px-1", children: value }, value)))
40
- .slice(0, 4), property.enum.length > 4 && (_jsx("span", { className: "font-mono text-xs border-border border bg-muted rounded px-1", children: "..." }))] })), _jsxs(Collapsible.Root, { className: "CollapsibleRoot", defaultOpen: false, children: [property.type === "object" ||
41
- (property.type === "array" && property.items.type === "object") ? (_jsx(Collapsible.Trigger, { asChild: true, children: _jsxs(Button, { variant: "ghost", size: "sm", children: ["Show nested fields", _jsx(ListPlusIcon, { size: 18, className: "ml-1.5" })] }) })) : null, _jsxs(Collapsible.Content, { children: [property.type === "object" && (_jsx("div", { className: "mt-2.5", children: _jsx(SchemaListView, { schema: property, level: nestingLevel + 1, defaultOpen: true }) })), property.type === "array" && property.items.type === "object" && (_jsx("div", { className: "mt-2.5", children: _jsx(SchemaListView, { schema: property.items, defaultOpen: true, level: nestingLevel + 1 }) }))] })] })] }, propertyName));
25
+ return (_jsxs("div", { className: "flex flex-col gap-2.5", children: [(schema.title ?? name) && (_jsx("div", { className: "ml-2 my-1 font-bold", children: schema.title ?? name })), level === 0 && schema.description && (_jsx(Markdown, { className: SchemaProseClasses, content: schema.description })), _jsx(Card, { className: "overflow-hidden", children: objectEntries(groups).map(([group, properties]) => (_jsx(SchemaListViewItemGroup, { defaultOpen: defaultOpen, group: group, nestingLevel: level, properties: properties ?? [], required: schema.required ?? [] }, group))) })] }));
42
26
  };
43
27
  //# sourceMappingURL=SchemaListView.js.map