zudoku 0.25.2 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/dist/app/demo.js +0 -1
  2. package/dist/app/demo.js.map +1 -1
  3. package/dist/app/standalone.js +0 -1
  4. package/dist/app/standalone.js.map +1 -1
  5. package/dist/cli/dev/handler.js +2 -2
  6. package/dist/cli/dev/handler.js.map +1 -1
  7. package/dist/config/validators/InputSidebarSchema.d.ts +2 -2
  8. package/dist/config/validators/common.d.ts +28 -28
  9. package/dist/config/validators/icon-types.d.ts +1 -1
  10. package/dist/config/validators/validate.d.ts +16 -16
  11. package/dist/lib/components/navigation/SidebarCategory.js +1 -1
  12. package/dist/lib/components/navigation/SidebarCategory.js.map +1 -1
  13. package/dist/lib/oas/graphql/index.d.ts +3 -0
  14. package/dist/lib/oas/graphql/index.js +12 -13
  15. package/dist/lib/oas/graphql/index.js.map +1 -1
  16. package/dist/lib/plugins/openapi/ColorizedParam.d.ts +10 -2
  17. package/dist/lib/plugins/openapi/ColorizedParam.js +16 -7
  18. package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
  19. package/dist/lib/plugins/openapi/OperationList.js +3 -0
  20. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  21. package/dist/lib/plugins/openapi/ParameterListItem.js +3 -2
  22. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  23. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +2 -0
  24. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
  25. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +3 -2
  26. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +3 -6
  27. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  28. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +2 -6
  29. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  30. package/dist/lib/plugins/openapi/Sidecar.js +9 -6
  31. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  32. package/dist/lib/plugins/openapi/SidecarBox.js +1 -1
  33. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  34. package/dist/lib/plugins/openapi/{ExampleDisplay.d.ts → SidecarExamples.d.ts} +3 -6
  35. package/dist/lib/plugins/openapi/SidecarExamples.js +65 -0
  36. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -0
  37. package/dist/lib/plugins/openapi/client/GraphQLClient.d.ts +1 -1
  38. package/dist/lib/plugins/openapi/client/GraphQLClient.js +22 -93
  39. package/dist/lib/plugins/openapi/client/GraphQLClient.js.map +1 -1
  40. package/dist/lib/plugins/openapi/client/createServer.d.ts +2 -1
  41. package/dist/lib/plugins/openapi/client/createServer.js +5 -2
  42. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -1
  43. package/dist/lib/plugins/openapi/client/useCreateQuery.d.ts +1 -1
  44. package/dist/lib/plugins/openapi/client/useCreateQuery.js +2 -13
  45. package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -1
  46. package/dist/lib/plugins/openapi/index.d.ts +2 -1
  47. package/dist/lib/plugins/openapi/index.js.map +1 -1
  48. package/dist/lib/plugins/openapi/playground/EnumSelector.d.ts +8 -0
  49. package/dist/lib/plugins/openapi/playground/EnumSelector.js +21 -0
  50. package/dist/lib/plugins/openapi/playground/EnumSelector.js.map +1 -0
  51. package/dist/lib/plugins/openapi/playground/PathParams.js +9 -4
  52. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  53. package/dist/lib/plugins/openapi/playground/Playground.d.ts +3 -0
  54. package/dist/lib/plugins/openapi/playground/Playground.js +5 -2
  55. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  56. package/dist/lib/plugins/openapi/playground/QueryParams.js +23 -8
  57. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  58. package/dist/lib/plugins/openapi/schema/SchemaComponents.js +2 -1
  59. package/dist/lib/plugins/openapi/schema/SchemaComponents.js.map +1 -1
  60. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +19 -11
  61. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  62. package/dist/lib/ui/Badge.d.ts +1 -1
  63. package/dist/lib/ui/Badge.js +2 -1
  64. package/dist/lib/ui/Badge.js.map +1 -1
  65. package/dist/lib/ui/Button.d.ts +1 -1
  66. package/dist/lib/ui/Checkbox.d.ts +8 -2
  67. package/dist/lib/ui/Checkbox.js +13 -1
  68. package/dist/lib/ui/Checkbox.js.map +1 -1
  69. package/dist/lib/util/traverse.d.ts +8 -1
  70. package/dist/lib/util/traverse.js +7 -3
  71. package/dist/lib/util/traverse.js.map +1 -1
  72. package/dist/vite/api/schema-codegen.d.ts +12 -0
  73. package/dist/vite/api/schema-codegen.js +62 -0
  74. package/dist/vite/api/schema-codegen.js.map +1 -0
  75. package/dist/vite/api/schema-codegen.test.d.ts +1 -0
  76. package/dist/vite/api/schema-codegen.test.js +247 -0
  77. package/dist/vite/api/schema-codegen.test.js.map +1 -0
  78. package/dist/vite/config.js +0 -7
  79. package/dist/vite/config.js.map +1 -1
  80. package/dist/vite/config.test.js +5 -1
  81. package/dist/vite/config.test.js.map +1 -1
  82. package/dist/vite/plugin-api.js +110 -82
  83. package/dist/vite/plugin-api.js.map +1 -1
  84. package/dist/vite/plugin-component.js +0 -1
  85. package/dist/vite/plugin-component.js.map +1 -1
  86. package/lib/{AnchorLink-DFZZbmvr.js → AnchorLink-_Vu02ceN.js} +3 -3
  87. package/lib/{AnchorLink-DFZZbmvr.js.map → AnchorLink-_Vu02ceN.js.map} +1 -1
  88. package/lib/{AuthenticationPlugin-D7G3me8L.js → AuthenticationPlugin-DNXBcsVN.js} +4 -4
  89. package/lib/{AuthenticationPlugin-D7G3me8L.js.map → AuthenticationPlugin-DNXBcsVN.js.map} +1 -1
  90. package/lib/{Button-DeAoTouo.js → Button-oroWHXAy.js} +3 -3
  91. package/lib/{Button-DeAoTouo.js.map → Button-oroWHXAy.js.map} +1 -1
  92. package/lib/{CategoryHeading-CBconmtI.js → CategoryHeading-MYL1u_6K.js} +3 -3
  93. package/lib/{CategoryHeading-CBconmtI.js.map → CategoryHeading-MYL1u_6K.js.map} +1 -1
  94. package/lib/Command-D5DE0DD7.js +611 -0
  95. package/lib/Command-D5DE0DD7.js.map +1 -0
  96. package/lib/{Markdown-CZDLNOFc.js → Markdown-BrfrjEk_.js} +1041 -1041
  97. package/lib/{Markdown-CZDLNOFc.js.map → Markdown-BrfrjEk_.js.map} +1 -1
  98. package/lib/{MdxPage-DKMbBROv.js → MdxPage-LNZLj_A5.js} +24 -24
  99. package/lib/{MdxPage-DKMbBROv.js.map → MdxPage-LNZLj_A5.js.map} +1 -1
  100. package/lib/{OperationList-BLdHAQ39.js → OperationList-PCwzTp1r.js} +1899 -1877
  101. package/lib/OperationList-PCwzTp1r.js.map +1 -0
  102. package/lib/{Route-DYwKZ_c_.js → Route-Pzk6qwIk.js} +5 -5
  103. package/lib/{Route-DYwKZ_c_.js.map → Route-Pzk6qwIk.js.map} +1 -1
  104. package/lib/{Select-B_IxRUUC.js → Select-DkOpAG0c.js} +36 -36
  105. package/lib/{Select-B_IxRUUC.js.map → Select-DkOpAG0c.js.map} +1 -1
  106. package/lib/{SlotletProvider-pfc9oejW.js → SlotletProvider-DPbx9KdU.js} +53 -53
  107. package/lib/{SlotletProvider-pfc9oejW.js.map → SlotletProvider-DPbx9KdU.js.map} +1 -1
  108. package/lib/{Spinner-DuxJLLNE.js → Spinner-C5gHXrVz.js} +2 -2
  109. package/lib/{Spinner-DuxJLLNE.js.map → Spinner-C5gHXrVz.js.map} +1 -1
  110. package/lib/{SyntaxHighlight-Bz-lOJtH.js → SyntaxHighlight-CJCSPG1F.js} +297 -301
  111. package/lib/{SyntaxHighlight-Bz-lOJtH.js.map → SyntaxHighlight-CJCSPG1F.js.map} +1 -1
  112. package/lib/{ZudokuContext-hmLMUdf2.js → ZudokuContext-D3ayHjP-.js} +357 -356
  113. package/lib/ZudokuContext-D3ayHjP-.js.map +1 -0
  114. package/lib/{chunk-D52XG6IA-Dl7HLe6j.js → chunk-SYFQ2XB5-KWlHsT7t.js} +407 -410
  115. package/lib/chunk-SYFQ2XB5-KWlHsT7t.js.map +1 -0
  116. package/lib/context-rwLGh-6_.js +22 -0
  117. package/lib/{context-h_UkBLvr.js.map → context-rwLGh-6_.js.map} +1 -1
  118. package/lib/{createServer-Bf5_6o6G.js → createServer-BcaswoFO.js} +4363 -5302
  119. package/lib/createServer-BcaswoFO.js.map +1 -0
  120. package/lib/{hook-CHq7pFyz.js → hook-DUyACbIK.js} +17 -17
  121. package/lib/{hook-CHq7pFyz.js.map → hook-DUyACbIK.js.map} +1 -1
  122. package/lib/index-CaILD1AV.js +1292 -0
  123. package/lib/index-CaILD1AV.js.map +1 -0
  124. package/lib/index-Djenk2Hj.js +36 -0
  125. package/lib/{index-CPNSgwSb.js.map → index-Djenk2Hj.js.map} +1 -1
  126. package/lib/{index-CBXSgjaE.js → index-Dl3Yl0yb.js} +65 -69
  127. package/lib/index-Dl3Yl0yb.js.map +1 -0
  128. package/lib/index-TaRXY2w1.js +43 -0
  129. package/lib/index-TaRXY2w1.js.map +1 -0
  130. package/lib/{index.esm-BSV1C092.js → index.esm-9-TF9KQB.js} +52 -52
  131. package/lib/{index.esm-BSV1C092.js.map → index.esm-9-TF9KQB.js.map} +1 -1
  132. package/lib/index.esm-CrSoEshU.js +1207 -0
  133. package/lib/index.esm-CrSoEshU.js.map +1 -0
  134. package/lib/{jsx-runtime-Dx-03ztt.js → jsx-runtime-Bdg6XQ1m.js} +135 -135
  135. package/lib/{jsx-runtime-Dx-03ztt.js.map → jsx-runtime-Bdg6XQ1m.js.map} +1 -1
  136. package/lib/post-processors/removeExtensions.js +3 -3
  137. package/lib/post-processors/traverse.js +11 -8
  138. package/lib/post-processors/traverse.js.map +1 -1
  139. package/lib/{prism-bash.min-DadFsM4Z.js → prism-bash.min-HHIMdNJ_.js} +4 -4
  140. package/lib/{prism-bash.min-DadFsM4Z.js.map → prism-bash.min-HHIMdNJ_.js.map} +1 -1
  141. package/lib/{prism-csharp.min-DUwvItt4.js → prism-csharp.min-bQAo2pmx.js} +33 -33
  142. package/lib/{prism-csharp.min-DUwvItt4.js.map → prism-csharp.min-bQAo2pmx.js.map} +1 -1
  143. package/lib/{prism-java.min-BtgBR4yd.js → prism-java.min-BpvsOuIa.js} +12 -12
  144. package/lib/{prism-java.min-BtgBR4yd.js.map → prism-java.min-BpvsOuIa.js.map} +1 -1
  145. package/lib/{prism-markdown.min-F3U-vPBi.js → prism-markdown.min-C0Qn0m-5.js} +30 -30
  146. package/lib/{prism-markdown.min-F3U-vPBi.js.map → prism-markdown.min-C0Qn0m-5.js.map} +1 -1
  147. package/lib/{prism-ruby.min-DeDXCp1r.js → prism-ruby.min-Dx9KO9ds.js} +16 -16
  148. package/lib/{prism-ruby.min-DeDXCp1r.js.map → prism-ruby.min-Dx9KO9ds.js.map} +1 -1
  149. package/lib/prism-typescript.min-CD7H2IYQ.js.map +1 -1
  150. package/lib/state-mM7uaXTW.js +202 -0
  151. package/lib/state-mM7uaXTW.js.map +1 -0
  152. package/lib/ui/Accordion.js +1 -1
  153. package/lib/ui/ActionButton.js +3 -3
  154. package/lib/ui/Alert.js +2 -2
  155. package/lib/ui/AlertDialog.js +1 -1
  156. package/lib/ui/Badge.js +4 -3
  157. package/lib/ui/Badge.js.map +1 -1
  158. package/lib/ui/Breadcrumb.js +1 -1
  159. package/lib/ui/Button.js +2 -2
  160. package/lib/ui/Callout.js +1 -1
  161. package/lib/ui/Card.js +1 -1
  162. package/lib/ui/Carousel.js +3 -3
  163. package/lib/ui/Carousel.js.map +1 -1
  164. package/lib/ui/Checkbox.js +26 -15
  165. package/lib/ui/Checkbox.js.map +1 -1
  166. package/lib/ui/Command.js +14 -550
  167. package/lib/ui/Command.js.map +1 -1
  168. package/lib/ui/Dialog.js +1 -1
  169. package/lib/ui/Drawer.js +520 -519
  170. package/lib/ui/Drawer.js.map +1 -1
  171. package/lib/ui/DropdownMenu.js +1 -1
  172. package/lib/ui/Form.js +2 -2
  173. package/lib/ui/HoverCard.js +1 -1
  174. package/lib/ui/Input.js +1 -1
  175. package/lib/ui/Label.js +2 -2
  176. package/lib/ui/Pagination.js +7 -7
  177. package/lib/ui/Popover.js +1 -1
  178. package/lib/ui/Progress.js +1 -1
  179. package/lib/ui/RadioGroup.js +1 -1
  180. package/lib/ui/ScrollArea.js +1 -1
  181. package/lib/ui/Select.js +1 -1
  182. package/lib/ui/Skeleton.js +1 -1
  183. package/lib/ui/Slider.js +1 -1
  184. package/lib/ui/Switch.js +1 -1
  185. package/lib/ui/Tabs.js +1 -1
  186. package/lib/ui/Textarea.js +1 -1
  187. package/lib/ui/Toggle.js +2 -2
  188. package/lib/ui/ToggleGroup.js +1 -1
  189. package/lib/ui/Tooltip.js +1 -1
  190. package/lib/{useExposedProps-DE9lR6MF.js → useExposedProps-BBHR7aLM.js} +2 -2
  191. package/lib/{useExposedProps-DE9lR6MF.js.map → useExposedProps-BBHR7aLM.js.map} +1 -1
  192. package/lib/zudoku.auth-auth0.js +1 -1
  193. package/lib/zudoku.auth-clerk.js +18 -18
  194. package/lib/zudoku.auth-openid.js +5 -5
  195. package/lib/zudoku.components.js +492 -477
  196. package/lib/zudoku.components.js.map +1 -1
  197. package/lib/zudoku.plugin-api-catalog.js +5 -5
  198. package/lib/zudoku.plugin-api-keys.js +7 -7
  199. package/lib/zudoku.plugin-custom-pages.js +3 -3
  200. package/lib/zudoku.plugin-markdown.js +2 -2
  201. package/lib/zudoku.plugin-openapi.js +5 -5
  202. package/lib/zudoku.plugin-redirect.js +1 -1
  203. package/lib/zudoku.plugin-search-inkeep.js +9 -9
  204. package/package.json +48 -53
  205. package/src/app/demo.tsx +0 -1
  206. package/src/app/standalone.tsx +0 -1
  207. package/src/lib/components/navigation/SidebarCategory.tsx +2 -2
  208. package/src/lib/oas/graphql/index.ts +19 -15
  209. package/src/lib/plugins/openapi/ColorizedParam.tsx +29 -12
  210. package/src/lib/plugins/openapi/OperationList.tsx +4 -0
  211. package/src/lib/plugins/openapi/ParameterListItem.tsx +5 -7
  212. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +2 -0
  213. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +9 -8
  214. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +5 -8
  215. package/src/lib/plugins/openapi/Sidecar.tsx +14 -7
  216. package/src/lib/plugins/openapi/SidecarBox.tsx +1 -1
  217. package/src/lib/plugins/openapi/SidecarExamples.tsx +163 -0
  218. package/src/lib/plugins/openapi/client/GraphQLClient.tsx +28 -120
  219. package/src/lib/plugins/openapi/client/createServer.ts +6 -2
  220. package/src/lib/plugins/openapi/client/useCreateQuery.ts +2 -17
  221. package/src/lib/plugins/openapi/index.tsx +2 -1
  222. package/src/lib/plugins/openapi/playground/EnumSelector.tsx +86 -0
  223. package/src/lib/plugins/openapi/playground/PathParams.tsx +72 -64
  224. package/src/lib/plugins/openapi/playground/Playground.tsx +26 -13
  225. package/src/lib/plugins/openapi/playground/QueryParams.tsx +102 -73
  226. package/src/lib/plugins/openapi/schema/SchemaComponents.tsx +4 -7
  227. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +26 -11
  228. package/src/lib/ui/Badge.tsx +2 -1
  229. package/src/lib/ui/Checkbox.tsx +24 -7
  230. package/src/lib/util/traverse.ts +15 -5
  231. package/dist/lib/plugins/openapi/ExampleDisplay.js +0 -78
  232. package/dist/lib/plugins/openapi/ExampleDisplay.js.map +0 -1
  233. package/dist/lib/plugins/openapi/client/worker.d.ts +0 -4
  234. package/dist/lib/plugins/openapi/client/worker.js +0 -29
  235. package/dist/lib/plugins/openapi/client/worker.js.map +0 -1
  236. package/dist/lib/plugins/openapi-worker.d.ts +0 -1
  237. package/dist/lib/plugins/openapi-worker.js +0 -8
  238. package/dist/lib/plugins/openapi-worker.js.map +0 -1
  239. package/lib/Dialog-Bxv1yEIg.js +0 -67
  240. package/lib/Dialog-Bxv1yEIg.js.map +0 -1
  241. package/lib/OperationList-BLdHAQ39.js.map +0 -1
  242. package/lib/ZudokuContext-hmLMUdf2.js.map +0 -1
  243. package/lib/assets/index-C7jnHK4b.js +0 -4841
  244. package/lib/assets/index-C7jnHK4b.js.map +0 -1
  245. package/lib/assets/worker-Cbp2r2BQ.js +0 -18592
  246. package/lib/assets/worker-Cbp2r2BQ.js.map +0 -1
  247. package/lib/chunk-D52XG6IA-Dl7HLe6j.js.map +0 -1
  248. package/lib/context-h_UkBLvr.js +0 -22
  249. package/lib/createServer-Bf5_6o6G.js.map +0 -1
  250. package/lib/index-BNx95gkf.js +0 -1284
  251. package/lib/index-BNx95gkf.js.map +0 -1
  252. package/lib/index-CBXSgjaE.js.map +0 -1
  253. package/lib/index-CPNSgwSb.js +0 -36
  254. package/lib/index-DyBL--Kz.js +0 -826
  255. package/lib/index-DyBL--Kz.js.map +0 -1
  256. package/lib/index.esm-BnnBRKJX.js +0 -1214
  257. package/lib/index.esm-BnnBRKJX.js.map +0 -1
  258. package/lib/state-CFQsUZUP.js +0 -202
  259. package/lib/state-CFQsUZUP.js.map +0 -1
  260. package/lib/zudoku.openapi-worker.js +0 -15
  261. package/lib/zudoku.openapi-worker.js.map +0 -1
  262. package/src/lib/plugins/openapi/ExampleDisplay.tsx +0 -163
  263. package/src/lib/plugins/openapi/client/worker.ts +0 -44
  264. package/src/lib/plugins/openapi-worker.ts +0 -11
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useSuspenseQuery } from "@tanstack/react-query";
3
3
  import { HTTPSnippet } from "@zudoku/httpsnippet";
4
- import { Fragment, useMemo, useTransition } from "react";
4
+ import { Fragment, useMemo, useState, useTransition } from "react";
5
5
  import { useSearchParams } from "react-router";
6
6
  import { useSelectedServerStore } from "../../authentication/state.js";
7
7
  import { SyntaxHighlight } from "../../components/SyntaxHighlight.js";
@@ -91,6 +91,7 @@ export const Sidecar = ({ operation, selectedResponse, onSelectResponse, }) => {
91
91
  const methodTextColor = methodForColor(operation.method);
92
92
  const [searchParams, setSearchParams] = useSearchParams();
93
93
  const [, startTransition] = useTransition();
94
+ const [selectedExample, setSelectedExample] = useState();
94
95
  const selectedLang = searchParams.get("lang") ?? "shell";
95
96
  const requestBodyContent = operation.requestBody?.content;
96
97
  const path = operation.path.split("/").map((part, i, arr) => {
@@ -104,9 +105,10 @@ export const Sidecar = ({ operation, selectedResponse, onSelectResponse, }) => {
104
105
  });
105
106
  const { selectedServer } = useSelectedServerStore();
106
107
  const code = useMemo(() => {
107
- const example = requestBodyContent?.[0]?.schema
108
- ? generateSchemaExample(requestBodyContent[0].schema)
109
- : undefined;
108
+ const example = selectedExample ??
109
+ (requestBodyContent?.[0]?.schema
110
+ ? generateSchemaExample(requestBodyContent[0].schema)
111
+ : undefined);
110
112
  const snippet = new HTTPSnippet({
111
113
  method: operation.method.toLocaleUpperCase(),
112
114
  url: (selectedServer ?? result.data.schema.url ?? "") +
@@ -126,6 +128,7 @@ export const Sidecar = ({ operation, selectedResponse, onSelectResponse, }) => {
126
128
  });
127
129
  return getConverted(snippet, selectedLang);
128
130
  }, [
131
+ selectedExample,
129
132
  requestBodyContent,
130
133
  operation.method,
131
134
  operation.path,
@@ -134,13 +137,13 @@ export const Sidecar = ({ operation, selectedResponse, onSelectResponse, }) => {
134
137
  selectedLang,
135
138
  ]);
136
139
  const [ref, isOnScreen] = useOnScreen({ rootMargin: "200px 0px 200px 0px" });
137
- return (_jsxs("aside", { ref: ref, className: "flex flex-col overflow-hidden sticky top-[--scroll-padding] gap-4", children: [_jsxs(SidecarBox.Root, { children: [_jsxs(SidecarBox.Head, { className: "flex justify-between items-center flex-nowrap py-4 gap-2 text-xs", children: [_jsxs("span", { className: "font-mono break-words", children: [_jsx("span", { className: cn("font-semibold", methodTextColor), children: operation.method.toLocaleUpperCase() }), "\u00A0", path] }), isOnScreen && (_jsx(PlaygroundDialogWrapper, { server: result.data.schema.url, servers: result.data.schema.servers.map((server) => server.url), operation: operation }))] }), isOnScreen && (_jsxs(_Fragment, { children: [_jsx(SidecarBox.Body, { className: "p-0", children: _jsx(CollapsibleCode, { children: _jsx(SyntaxHighlight, { language: selectedLang, noBackground: true, className: "[--scrollbar-color:gray] text-xs max-h-[500px] p-2", code: code }) }) }), _jsxs(SidecarBox.Footer, { className: "flex items-center text-xs gap-2 justify-end py-3", children: [_jsx("span", { children: "Show example in" }), _jsx(SimpleSelect, { className: "self-start max-w-[150px]", value: selectedLang, onChange: (e) => {
140
+ return (_jsxs("aside", { ref: ref, className: "flex flex-col overflow-hidden sticky top-[--scroll-padding] gap-4", children: [_jsxs(SidecarBox.Root, { children: [_jsxs(SidecarBox.Head, { className: "flex justify-between items-center flex-nowrap py-2.5 gap-2 text-xs", children: [_jsxs("span", { className: "font-mono break-words", children: [_jsx("span", { className: cn("font-semibold", methodTextColor), children: operation.method.toLocaleUpperCase() }), "\u00A0", path] }), isOnScreen && (_jsx(PlaygroundDialogWrapper, { server: result.data.schema.url, servers: result.data.schema.servers.map((server) => server.url), operation: operation }))] }), isOnScreen && (_jsxs(_Fragment, { children: [_jsx(SidecarBox.Body, { className: "p-0", children: _jsx(CollapsibleCode, { children: _jsx(SyntaxHighlight, { language: selectedLang, noBackground: true, className: "[--scrollbar-color:gray] text-xs max-h-[500px] p-2", code: code }) }) }), _jsxs(SidecarBox.Footer, { className: "flex items-center text-xs gap-2 justify-end py-2.5", children: [_jsx("span", { children: "Show example in" }), _jsx(SimpleSelect, { className: "self-start max-w-[150px]", value: selectedLang, onChange: (e) => {
138
141
  startTransition(() => {
139
142
  setSearchParams((prev) => {
140
143
  prev.set("lang", e.target.value);
141
144
  return prev;
142
145
  });
143
146
  });
144
- }, options: EXAMPLE_LANGUAGES })] })] }))] }), isOnScreen && requestBodyContent && (_jsx(RequestBodySidecarBox, { content: requestBodyContent })), isOnScreen && operation.responses.length > 0 && (_jsx(ResponsesSidecarBox, { selectedResponse: selectedResponse, onSelectResponse: onSelectResponse, responses: operation.responses }))] }));
147
+ }, options: EXAMPLE_LANGUAGES })] })] }))] }), isOnScreen && requestBodyContent && (_jsx(RequestBodySidecarBox, { content: requestBodyContent, onExampleChange: setSelectedExample })), isOnScreen && operation.responses.length > 0 && (_jsx(ResponsesSidecarBox, { selectedResponse: selectedResponse, onSelectResponse: onSelectResponse, responses: operation.responses }))] }));
145
148
  };
146
149
  //# sourceMappingURL=Sidecar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Sidecar.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/Sidecar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sidecar.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/Sidecar.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { cn } from "../../util/cn.js";
3
3
  export const Root = ({ children, className }) => (_jsx("div", { className: cn("rounded-xl overflow-hidden border border-border", className), children: children }));
4
- export const Head = ({ children, className }) => (_jsx("div", { className: cn("border-b bg-muted dark:bg-transparent text-card-foreground p-3", className), children: children }));
4
+ export const Head = ({ children, className }) => (_jsx("div", { className: cn("border-b bg-muted dark:bg-transparent text-card-foreground p-3 py-2.5", className), children: children }));
5
5
  export const Body = ({ children, className }) => (_jsx("div", { className: cn("bg-card overflow-auto p-2", className), children: children }));
6
6
  export const Footer = ({ children, className }) => (_jsx("div", { className: cn("border-t bg-muted dark:bg-transparent p-3", className), children: children }));
7
7
  //# sourceMappingURL=SidecarBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidecarBox.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/SidecarBox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAMtC,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACnE,cACE,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,YAE1E,QAAQ,GACL,CACP,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACnE,cACE,SAAS,EAAE,EAAE,CACX,gEAAgE,EAChE,SAAS,CACV,YAEA,QAAQ,GACL,CACP,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACnE,cAAK,SAAS,EAAE,EAAE,CAAC,2BAA2B,EAAE,SAAS,CAAC,YAAG,QAAQ,GAAO,CAC7E,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACrE,cAAK,SAAS,EAAE,EAAE,CAAC,2CAA2C,EAAE,SAAS,CAAC,YACvE,QAAQ,GACL,CACP,CAAC"}
1
+ {"version":3,"file":"SidecarBox.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/SidecarBox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAMtC,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACnE,cACE,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,YAE1E,QAAQ,GACL,CACP,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACnE,cACE,SAAS,EAAE,EAAE,CACX,uEAAuE,EACvE,SAAS,CACV,YAEA,QAAQ,GACL,CACP,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACnE,cAAK,SAAS,EAAE,EAAE,CAAC,2BAA2B,EAAE,SAAS,CAAC,YAAG,QAAQ,GAAO,CAC7E,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAsB,EAAE,EAAE,CAAC,CACrE,cAAK,SAAS,EAAE,EAAE,CAAC,2CAA2C,EAAE,SAAS,CAAC,YACvE,QAAQ,GACL,CACP,CAAC"}
@@ -1,12 +1,9 @@
1
1
  import type { OperationListItemResult } from "./OperationList.js";
2
2
  export type Content = NonNullable<NonNullable<OperationListItemResult["requestBody"]>["content"]>;
3
3
  export type Example = NonNullable<NonNullable<Content[number]["examples"]>>[number];
4
- export interface UseExampleDisplayProps {
4
+ export type SidecarExamplesProps = {
5
5
  content: Content;
6
6
  description?: string;
7
- }
8
- export declare const useSidecarExamples: ({ content, description, }: UseExampleDisplayProps) => {
9
- SidecarBody: () => import("react/jsx-runtime").JSX.Element;
10
- SidebarFooter: () => import("react/jsx-runtime").JSX.Element;
11
- hasContent: boolean;
7
+ onExampleChange?: (example: unknown) => void;
12
8
  };
9
+ export declare const SidecarExamples: ({ content, description, onExampleChange, }: SidecarExamplesProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,65 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useEffect, useState } from "react";
3
+ import { SyntaxHighlight } from "../../components/SyntaxHighlight.js";
4
+ import { CollapsibleCode } from "./CollapsibleCode.js";
5
+ import * as SidecarBox from "./SidecarBox.js";
6
+ import { SimpleSelect } from "./SimpleSelect.js";
7
+ import { generateSchemaExample } from "./util/generateSchemaExample.js";
8
+ const formatForDisplay = (value) => {
9
+ if (value == null)
10
+ return "No example";
11
+ if (typeof value === "string")
12
+ return value.trim();
13
+ return JSON.stringify(value, null, 2);
14
+ };
15
+ const getLanguage = (mediaType) => {
16
+ if (!mediaType)
17
+ return "plain";
18
+ const languages = {
19
+ "application/json": "json",
20
+ "application/xml": "xml",
21
+ "application/x-yaml": "yaml",
22
+ "text/csv": "csv",
23
+ "application/javascript": "javascript",
24
+ "application/graphql": "graphql",
25
+ };
26
+ return languages[mediaType] ?? "plain";
27
+ };
28
+ export const SidecarExamples = ({ content, description, onExampleChange, }) => {
29
+ const [selectedContentTypeIndex, setSelectedContentTypeIndex] = useState(0);
30
+ const [selectedExampleIndex, setSelectedExampleIndex] = useState(0);
31
+ // Get the effective content (handle single item array case)
32
+ const effectiveContent = Array.isArray(content) && content.length === 1
33
+ ? content[0]
34
+ : content[selectedContentTypeIndex];
35
+ // Get example value, with fallback to schema-generated example
36
+ const examples = effectiveContent?.examples ?? [];
37
+ const selectedExample = examples[selectedExampleIndex];
38
+ let exampleValue = undefined;
39
+ if (selectedExample) {
40
+ // If it's a wrapped example with a value field, use that
41
+ exampleValue =
42
+ "value" in selectedExample ? selectedExample.value : selectedExample;
43
+ }
44
+ else if (effectiveContent?.schema) {
45
+ // No example provided, generate one from schema
46
+ exampleValue = generateSchemaExample(effectiveContent.schema);
47
+ }
48
+ useEffect(() => {
49
+ onExampleChange?.(exampleValue);
50
+ }, [exampleValue, onExampleChange]);
51
+ const formattedExample = formatForDisplay(exampleValue);
52
+ const language = getLanguage(effectiveContent?.mediaType);
53
+ const hasContent = examples.length > 0 || content.length > 0;
54
+ return (_jsxs(_Fragment, { children: [_jsxs(SidecarBox.Body, { className: "p-0", children: [selectedExample?.externalValue ? (_jsx("div", { className: "p-2", children: _jsx("a", { href: selectedExample.externalValue, target: "_blank", rel: "noopener noreferrer", className: "text-xs text-primary hover:underline", children: "View External Example \u2192" }) })) : (_jsx(CollapsibleCode, { children: _jsx(SyntaxHighlight, { language: language, noBackground: true, copyable: true, className: "[--scrollbar-color:gray] text-xs max-h-[500px] p-2", code: formattedExample }) })), selectedExample?.description && (_jsx("div", { className: "border-t text-xs px-3 py-1.5 text-muted-foreground", children: selectedExample.description }))] }), hasContent && (_jsxs(SidecarBox.Footer, { className: "text-xs p-0", children: [description && (_jsx("div", { className: "text-muted-foreground text-xs border-b px-3 py-2", children: description })), _jsxs("div", { className: "flex items-center gap-2 justify-between min-w-0 px-3 py-2", children: [_jsx("div", { className: "flex items-center gap-2 min-w-0", children: content.length > 1 ? (_jsx(SimpleSelect, { className: "max-w-[200px]", value: selectedContentTypeIndex.toString(), onChange: (e) => setSelectedContentTypeIndex(Number(e.target.value)), options: content.map((c, index) => ({
55
+ value: index.toString(),
56
+ label: c.mediaType,
57
+ })) })) : (_jsx("span", { className: "font-mono text-[11px]", children: content[0]?.mediaType })) }), examples.length > 1 && (_jsx("div", { className: "flex items-center gap-1", children: _jsx(SimpleSelect, { className: "max-w-[180px]", value: selectedExampleIndex.toString(), onChange: (e) => setSelectedExampleIndex(Number(e.target.value)), options: examples.map((example, index) => ({
58
+ value: index.toString(),
59
+ label: example.summary ||
60
+ example.name ||
61
+ example.description ||
62
+ `Example ${index + 1}`,
63
+ })) }) }))] })] }))] }));
64
+ };
65
+ //# sourceMappingURL=SidecarExamples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidecarExamples.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/SidecarExamples.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { TypedDocumentString } from "../graphql/graphql.js";
2
2
  import type { OpenApiPluginOptions } from "../index.js";
3
3
  export declare class GraphQLClient {
4
4
  #private;
5
- private config;
5
+ private readonly config;
6
6
  constructor(config: OpenApiPluginOptions);
7
7
  fetch: <TResult, TVariables>(query: TypedDocumentString<TResult, TVariables>, ...[variables]: TVariables extends Record<string, never> ? [] : [TVariables]) => Promise<TResult>;
8
8
  }
@@ -1,19 +1,5 @@
1
- import { ulid } from "ulidx";
2
- import { initializeWorker } from "zudoku/openapi-worker";
3
1
  import { ZudokuError } from "../../../util/invariant.js";
4
2
  let localServerPromise;
5
- let worker;
6
- const resolveVariables = async (variables) => {
7
- if (!variables)
8
- return;
9
- if (typeof variables === "object" &&
10
- "type" in variables &&
11
- variables.type === "file" &&
12
- "input" in variables &&
13
- typeof variables.input === "function") {
14
- variables.input = await variables.input();
15
- }
16
- };
17
3
  const throwIfError = (response) => {
18
4
  if (!response.errors?.[0])
19
5
  return;
@@ -23,92 +9,35 @@ const throwIfError = (response) => {
23
9
  };
24
10
  export class GraphQLClient {
25
11
  config;
26
- #mode;
27
- #pendingRequests = new Map();
28
- #port;
29
12
  constructor(config) {
30
13
  this.config = config;
31
- if (config.server) {
32
- this.#mode = "remote";
33
- }
34
- else if (config.inMemory || typeof SharedWorker === "undefined") {
35
- this.#mode = "in-memory";
14
+ }
15
+ #getLocalServer = async () => {
16
+ if (!localServerPromise) {
17
+ localServerPromise = import("./createServer.js").then((m) => m.createServer(this.config));
36
18
  }
37
- else {
38
- this.#mode = "worker";
19
+ return localServerPromise;
20
+ };
21
+ #executeFetch = async (init) => {
22
+ if (this.config.server) {
23
+ return fetch(this.config.server, init);
39
24
  }
40
- }
41
- #initializeLocalServer = () => import("./createServer.js").then((m) => m.createServer());
25
+ const localServer = await this.#getLocalServer();
26
+ return localServer.fetch("http://localhost/graphql", init);
27
+ };
42
28
  fetch = async (query, ...[variables]) => {
43
29
  const operationName = query.match(/query (\w+)/)?.[1];
44
- await resolveVariables(variables);
45
- const body = JSON.stringify({ query, variables, operationName });
46
- switch (this.#mode) {
47
- case "remote": {
48
- const response = await fetch(this.config.server, {
49
- method: "POST",
50
- body,
51
- headers: { "Content-Type": "application/json" },
52
- });
53
- if (!response.ok) {
54
- throw new Error("Network response was not ok");
55
- }
56
- const result = (await response.json());
57
- throwIfError(result);
58
- return result.data;
59
- }
60
- case "in-memory": {
61
- if (!localServerPromise) {
62
- localServerPromise = this.#initializeLocalServer();
63
- }
64
- const localServer = await localServerPromise;
65
- if (!localServer)
66
- throw new Error("Local server not initialized");
67
- const response = await localServer.fetch(new Request("http://localhost/graphql", {
68
- method: "POST",
69
- body,
70
- headers: { "Content-Type": "application/json" },
71
- }));
72
- if (!response.ok) {
73
- throw new Error("Network response was not ok");
74
- }
75
- const result = (await response.json());
76
- throwIfError(result);
77
- return result.data;
78
- }
79
- case "worker": {
80
- if (!worker) {
81
- worker = initializeWorker();
82
- }
83
- if (!this.#port) {
84
- const channel = new MessageChannel();
85
- worker.port.postMessage({ port: channel.port2 }, [channel.port2]);
86
- this.#port = channel.port1;
87
- this.#port.onmessage = (e) => {
88
- const { id, body } = e.data;
89
- const resolve = this.#pendingRequests.get(id);
90
- if (resolve) {
91
- const result = JSON.parse(body);
92
- resolve(result);
93
- this.#pendingRequests.delete(id);
94
- }
95
- else {
96
- // eslint-disable-next-line no-console
97
- console.error(`No pending request found for id: ${id}`);
98
- }
99
- };
100
- this.#port.start();
101
- }
102
- const id = ulid();
103
- const resultPromise = new Promise((resolve) => {
104
- this.#pendingRequests.set(id, resolve);
105
- this.#port.postMessage({ id, body });
106
- });
107
- const result = await resultPromise;
108
- throwIfError(result);
109
- return result.data;
110
- }
30
+ const response = await this.#executeFetch({
31
+ method: "POST",
32
+ body: JSON.stringify({ query, variables, operationName }),
33
+ headers: { "Content-Type": "application/json" },
34
+ });
35
+ if (!response.ok) {
36
+ throw new Error("Network response was not ok");
111
37
  }
38
+ const result = (await response.json());
39
+ throwIfError(result);
40
+ return result.data;
112
41
  };
113
42
  }
114
43
  //# sourceMappingURL=GraphQLClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GraphQLClient.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/client/GraphQLClient.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphQLClient.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/client/GraphQLClient.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAKzD,IAAI,kBAAoD,CAAC;AAOzD,MAAM,YAAY,GAAG,CAAC,QAAkC,EAAE,EAAE;IAC1D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO;IAElC,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;QAChD,aAAa,EACX,mFAAmF;KACtF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,MAA4B;QAA5B,WAAM,GAAN,MAAM,CAAsB;IAAG,CAAC;IAE7D,eAAe,GAAG,KAAK,IAAI,EAAE;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1D,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAC5B,CAAC;QACJ,CAAC;QACD,OAAO,kBAAkB,CAAC;IAC5B,CAAC,CAAC;IAEF,aAAa,GAAG,KAAK,EAAE,IAAiB,EAAqB,EAAE;QAC7D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjD,OAAO,WAAW,CAAC,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEF,KAAK,GAAG,KAAK,EACX,KAA+C,EAC/C,GAAG,CAAC,SAAS,CAA+D,EAC1D,EAAE;QACpB,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEtD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC;YACxC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;YACzD,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SAChD,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC;QACnE,YAAY,CAAC,MAAM,CAAC,CAAC;QAErB,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC,CAAC;CACH"}
@@ -1,5 +1,6 @@
1
+ import type { OpenApiPluginOptions } from "../index.js";
1
2
  /**
2
3
  * Creates the GraphQL server
3
4
  */
4
- export declare const createServer: () => import("graphql-yoga").YogaServerInstance<any, any>;
5
+ export declare const createServer: (config: OpenApiPluginOptions) => import("graphql-yoga").YogaServerInstance<any, any>;
5
6
  export type LocalServer = ReturnType<typeof createServer>;
@@ -4,7 +4,10 @@ const map = new Map();
4
4
  /**
5
5
  * Creates the GraphQL server
6
6
  */
7
- export const createServer = () => createGraphQLServer({
7
+ export const createServer = (config) => createGraphQLServer({
8
+ context: {
9
+ schemaImports: config.schemaImports,
10
+ },
8
11
  plugins: [
9
12
  // eslint-disable-next-line react-hooks/rules-of-hooks
10
13
  useLogger({
@@ -19,7 +22,7 @@ export const createServer = () => createGraphQLServer({
19
22
  const start = map.get(`${startEvent}-${args.operationName}`);
20
23
  if (start) {
21
24
  // eslint-disable-next-line no-console
22
- console.log(`${args.operationName} query took ${performance.now() - start}ms`);
25
+ console.log(`[zudoku:debug] ${args.operationName} query took ${performance.now() - start}ms`);
23
26
  map.delete(`${startEvent}-${args.operationName}`);
24
27
  }
25
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createServer.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/client/createServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAC/B,mBAAmB,CAAC;IAClB,OAAO,EAAE;QACP,sDAAsD;QACtD,SAAS,CAAC;YACR,KAAK,EAAE,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC7B,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;oBAAE,OAAO;gBAEjC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtC,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;oBACvD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBAC7D,IAAI,KAAK,EAAE,CAAC;wBACV,sCAAsC;wBACtC,OAAO,CAAC,GAAG,CACT,GAAG,IAAI,CAAC,aAAa,eAAe,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAClE,CAAC;wBACF,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC;KACH;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"createServer.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/client/createServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGpE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAA4B,EAAE,EAAE,CAC3D,mBAAmB,CAAC;IAClB,OAAO,EAAE;QACP,aAAa,EAAE,MAAM,CAAC,aAAa;KACpC;IACD,OAAO,EAAE;QACP,sDAAsD;QACtD,SAAS,CAAC;YACR,KAAK,EAAE,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC7B,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;oBAAE,OAAO;gBAEjC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtC,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;oBACvD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBAC7D,IAAI,KAAK,EAAE,CAAC;wBACV,sCAAsC;wBACtC,OAAO,CAAC,GAAG,CACT,kBAAkB,IAAI,CAAC,aAAa,eAAe,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CACjF,CAAC;wBACF,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC;KACH;CACF,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { TypedDocumentString } from "../graphql/graphql.js";
2
2
  export declare const useCreateQuery: <TResult, TVariables>(query: TypedDocumentString<TResult, TVariables>, ...variables: TVariables extends Record<string, never> ? [] : [TVariables]) => {
3
3
  readonly queryFn: () => Promise<TResult>;
4
- readonly queryKey: readonly [TypedDocumentString<TResult, TVariables>, string];
4
+ readonly queryKey: readonly [TypedDocumentString<TResult, TVariables>, TVariables | undefined];
5
5
  };
@@ -1,24 +1,13 @@
1
- import hashit from "object-hash";
2
- import { useContext, useMemo } from "react";
1
+ import { useContext } from "react";
3
2
  import { GraphQLContext } from "./GraphQLContext.js";
4
3
  export const useCreateQuery = (query, ...variables) => {
5
4
  const graphQLClient = useContext(GraphQLContext);
6
5
  if (graphQLClient === undefined) {
7
6
  throw new Error("useGraphQL must be used within a GraphQLProvider");
8
7
  }
9
- const hash = useMemo(() => {
10
- if (typeof variables[0] === "object" &&
11
- variables[0] != null &&
12
- "input" in variables[0] &&
13
- typeof variables[0].input === "function") {
14
- // This is a pre-hashed name to ensure that the query key is consistent across server and client
15
- return variables[0].input.name;
16
- }
17
- return hashit(variables[0] ?? {});
18
- }, [variables]);
19
8
  return {
20
9
  queryFn: () => graphQLClient.fetch(query, ...variables),
21
- queryKey: [query, hash],
10
+ queryKey: [query, variables[0]],
22
11
  };
23
12
  };
24
13
  //# sourceMappingURL=useCreateQuery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateQuery.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/client/useCreateQuery.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,KAA+C,EAC/C,GAAG,SAAuE,EAC1E,EAAE;IACF,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE;QACxB,IACE,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ;YAChC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI;YACpB,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC;YACvB,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,EACxC,CAAC;YACD,gGAAgG;YAChG,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QACjC,CAAC;QAED,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC;QACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;KACf,CAAC;AACb,CAAC,CAAC"}
1
+ {"version":3,"file":"useCreateQuery.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/client/useCreateQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,KAA+C,EAC/C,GAAG,SAAuE,EAC1E,EAAE;IACF,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC;QACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;KACvB,CAAC;AACb,CAAC,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { type ZudokuPlugin } from "../../core/plugins.js";
2
+ import type { SchemaImports } from "../../oas/graphql/index.js";
2
3
  import { OasPluginConfig } from "./interfaces.js";
3
4
  type InternalOasPluginConfig = {
4
- inMemory?: boolean;
5
+ schemaImports?: SchemaImports;
5
6
  };
6
7
  export type OpenApiPluginOptions = OasPluginConfig & InternalOasPluginConfig;
7
8
  export declare const openApiPlugin: (config: OpenApiPluginOptions) => ZudokuPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ interface EnumSelectorProps {
2
+ value: string;
3
+ enumValues: string[];
4
+ onChange: (value: string) => void;
5
+ onValueSelected: () => void;
6
+ }
7
+ export declare const EnumSelector: ({ value, enumValues, onChange, onValueSelected, }: EnumSelectorProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { Command, CommandEmpty, CommandInput, CommandItem, CommandList, } from "../../../ui/Command.js";
4
+ import { Popover, PopoverContent, PopoverTrigger, } from "../../../ui/Popover.js";
5
+ import { cn } from "../../../util/cn.js";
6
+ export const EnumSelector = ({ value, enumValues, onChange, onValueSelected, }) => {
7
+ const [searchValue, setSearchValue] = useState("");
8
+ const [open, setOpen] = useState(false);
9
+ return (_jsxs(Popover, { open: open, onOpenChange: setOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx("button", { type: "button", role: "combobox", className: cn("px-3 py-2 w-full border-0 shadow-none text-xs font-mono text-start hover:bg-accent/40 rounded border-transparent hover:bg-accent", !value && "text-muted-foreground"), children: value || "Select value" }) }), _jsx(PopoverContent, { className: "p-0 w-[--radix-popover-trigger-width] ", align: "start", sideOffset: 3, alignOffset: -3, side: "bottom", children: _jsxs(Command, { className: "max-h-[180px]", children: [_jsx(CommandInput, { placeholder: "Enter value", className: "h-9 bg-transparent ", onValueChange: setSearchValue, onKeyDown: (e) => {
10
+ if (e.key === "Enter") {
11
+ onChange(searchValue);
12
+ onValueSelected();
13
+ setOpen(false);
14
+ }
15
+ } }), _jsxs(CommandList, { children: [_jsxs(CommandEmpty, { children: ["Use \"", searchValue, "\""] }), enumValues.map((enumValue) => (_jsx(CommandItem, { value: enumValue, onSelect: (selected) => {
16
+ onChange(selected);
17
+ onValueSelected();
18
+ setOpen(false);
19
+ }, children: enumValue }, enumValue)))] })] }) })] }));
20
+ };
21
+ //# sourceMappingURL=EnumSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumSelector.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/EnumSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AASzC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,KAAK,EACL,UAAU,EACV,QAAQ,EACR,eAAe,GACG,EAAE,EAAE;IACtB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExC,OAAO,CACL,MAAC,OAAO,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,aACxC,KAAC,cAAc,IAAC,OAAO,kBACrB,iBACE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,UAAU,EACf,SAAS,EAAE,EAAE,CACX,kIAAkI,EAClI,CAAC,KAAK,IAAI,uBAAuB,CAClC,YAEA,KAAK,IAAI,cAAc,GACjB,GACM,EACjB,KAAC,cAAc,IACb,SAAS,EAAC,wCAAwC,EAClD,KAAK,EAAC,OAAO,EACb,UAAU,EAAE,CAAC,EACb,WAAW,EAAE,CAAC,CAAC,EACf,IAAI,EAAC,QAAQ,YAEb,MAAC,OAAO,IAAC,SAAS,EAAC,eAAe,aAChC,KAAC,YAAY,IACX,WAAW,EAAC,aAAa,EACzB,SAAS,EAAC,qBAAqB,EAC/B,aAAa,EAAE,cAAc,EAC7B,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gCACf,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oCACtB,QAAQ,CAAC,WAAW,CAAC,CAAC;oCACtB,eAAe,EAAE,CAAC;oCAClB,OAAO,CAAC,KAAK,CAAC,CAAC;gCACjB,CAAC;4BACH,CAAC,GACD,EACF,MAAC,WAAW,eACV,MAAC,YAAY,yBAAO,WAAW,UAAiB,EAC/C,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC7B,KAAC,WAAW,IAEV,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;wCACrB,QAAQ,CAAC,QAAQ,CAAC,CAAC;wCACnB,eAAe,EAAE,CAAC;wCAClB,OAAO,CAAC,KAAK,CAAC,CAAC;oCACjB,CAAC,YAEA,SAAS,IARL,SAAS,CASF,CACf,CAAC,IACU,IACN,GACK,IACT,CACX,CAAC;AACJ,CAAC,CAAC"}
@@ -1,17 +1,22 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { EraserIcon } from "lucide-react";
3
3
  import { Controller, useFieldArray } from "react-hook-form";
4
+ import { Card } from "zudoku/ui/Card.js";
4
5
  import { Button } from "../../../ui/Button.js";
5
6
  import { Input } from "../../../ui/Input.js";
6
7
  import { cn } from "../../../util/cn.js";
7
- import { ColorizedParam } from "../ColorizedParam.js";
8
+ import { ColorizedParam, useParamColor } from "../ColorizedParam.js";
9
+ const PathParamLabel = ({ name }) => {
10
+ const color = useParamColor(name);
11
+ return (_jsxs("div", { className: "flex items-center", children: [_jsx("div", { className: "w-2 h-2 rounded-full", style: { backgroundColor: `hsl(${color})` } }), _jsx(ColorizedParam, { slug: name, name: name, className: "font-mono text-xs m-2 px-1" })] }));
12
+ };
8
13
  export const PathParams = ({ control, }) => {
9
14
  const { fields } = useFieldArray({
10
15
  control,
11
16
  name: "pathParams",
12
17
  });
13
- return (_jsx("table", { className: "w-full table-auto [&_td]:border [&_td]:py-1 [&_td]:px-2", children: _jsx("tbody", { children: fields.map((part, i) => (_jsxs("tr", { className: "hover:bg-accent/40", children: [_jsx("td", { children: _jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsxs("div", { children: [_jsx(ColorizedParam, { slug: part.name, name: part.name, backgroundOpacity: "25%", borderOpacity: field.value ? "100%" : "0", className: cn("font-mono text-xs m-2", !field.value && "opacity-60") }), "*"] })) }) }), _jsx("td", { children: _jsxs("div", { className: "flex justify-between items-center", children: [_jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsx(Input, { ...field, required: true, placeholder: "Enter value", className: "border-0 shadow-none ring-0 font-mono text-xs" })) }), _jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsx(Button, { size: "icon", type: "button", variant: "ghost", "aria-label": "Clear value", className: cn("ms-2", field.value.length === 0
14
- ? "opacity-0 pointer-events-none"
15
- : "opacity-100"), title: "Clear value", onClick: () => field.onChange(""), children: _jsx(EraserIcon, { size: 16 }) })) })] }) })] }, part.id))) }) }));
18
+ return (_jsx(Card, { className: "rounded-lg", children: _jsx("table", { className: "w-full", children: _jsx("tbody", { children: fields.map((part, i) => (_jsxs("tr", { className: "hover:bg-accent/40", children: [_jsx("td", { className: "w-5/12", children: _jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: () => _jsx(PathParamLabel, { name: part.name }) }) }), _jsx("td", { className: "w-7/12", children: _jsxs("div", { className: "flex justify-between items-center", children: [_jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsx(Input, { ...field, required: true, placeholder: "Enter value", className: "w-full border-0 shadow-none text-xs font-mono hover:bg-accent" })) }), _jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsx(Button, { size: "icon", type: "button", variant: "ghost", "aria-label": "Clear value", className: cn("ms-2 mr-1", field.value.length === 0
19
+ ? "opacity-0 pointer-events-none"
20
+ : "opacity-100"), title: "Clear value", onClick: () => field.onChange(""), children: _jsx(EraserIcon, { size: 16 }) })) })] }) })] }, part.id))) }) }) }));
16
21
  };
17
22
  //# sourceMappingURL=PathParams.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PathParams.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/PathParams.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAW,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,OAAO,GAGR,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAiB;QAC/C,OAAO;QACP,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IAEH,OAAO,CACL,gBAAO,SAAS,EAAC,yDAAyD,YACxE,0BACG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACvB,cAAkB,SAAS,EAAC,oBAAoB,aAC9C,uBACE,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,0BACE,KAAC,cAAc,IACb,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,iBAAiB,EAAC,KAAK,EACvB,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EACzC,SAAS,EAAE,EAAE,CACX,uBAAuB,EACvB,CAAC,KAAK,CAAC,KAAK,IAAI,YAAY,CAC7B,GACD,SAEE,CACP,GACD,GACC,EACL,uBACE,eAAK,SAAS,EAAC,mCAAmC,aAChD,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,KAAC,KAAK,OACA,KAAK,EACT,QAAQ,QACR,WAAW,EAAC,aAAa,EACzB,SAAS,EAAC,+CAA+C,GACzD,CACH,GACD,EACF,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,KAAC,MAAM,IACL,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,OAAO,gBACJ,aAAa,EACxB,SAAS,EAAE,EAAE,CACX,MAAM,EACN,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;4CACtB,CAAC,CAAC,+BAA+B;4CACjC,CAAC,CAAC,aAAa,CAClB,EACD,KAAK,EAAC,aAAa,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,YAEjC,KAAC,UAAU,IAAC,IAAI,EAAE,EAAE,GAAI,GACjB,CACV,GACD,IACE,GACH,KA3DE,IAAI,CAAC,EAAE,CA4DX,CACN,CAAC,GACI,GACF,CACT,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"PathParams.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/PathParams.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAW,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrE,MAAM,cAAc,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;IACpD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAElC,OAAO,CACL,eAAK,SAAS,EAAC,mBAAmB,aAChC,cACE,SAAS,EAAC,sBAAsB,EAChC,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,KAAK,GAAG,EAAE,GAC3C,EAEF,KAAC,cAAc,IACb,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,4BAA4B,GACtC,IACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,OAAO,GAGR,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAiB;QAC/C,OAAO;QACP,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAC,YAAY,YAC1B,gBAAO,SAAS,EAAC,QAAQ,YACvB,0BACG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACvB,cAAkB,SAAS,EAAC,oBAAoB,aAC9C,aAAI,SAAS,EAAC,QAAQ,YACpB,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,KAAC,cAAc,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,GACjD,GACC,EACL,aAAI,SAAS,EAAC,QAAQ,YACpB,eAAK,SAAS,EAAC,mCAAmC,aAChD,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,KAAC,KAAK,OACA,KAAK,EACT,QAAQ,QACR,WAAW,EAAC,aAAa,EACzB,SAAS,EAAC,+DAA+D,GACzE,CACH,GACD,EACF,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,KAAC,MAAM,IACL,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,OAAO,gBACJ,aAAa,EACxB,SAAS,EAAE,EAAE,CACX,WAAW,EACX,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gDACtB,CAAC,CAAC,+BAA+B;gDACjC,CAAC,CAAC,aAAa,CAClB,EACD,KAAK,EAAC,aAAa,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,YAEjC,KAAC,UAAU,IAAC,IAAI,EAAE,EAAE,GAAI,GACjB,CACV,GACD,IACE,GACH,KA7CE,IAAI,CAAC,EAAE,CA8CX,CACN,CAAC,GACI,GACF,GACH,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -8,6 +8,8 @@ export type QueryParam = {
8
8
  defaultValue?: string;
9
9
  defaultActive?: boolean;
10
10
  isRequired?: boolean;
11
+ enum?: string[];
12
+ type?: string;
11
13
  };
12
14
  export type PathParam = {
13
15
  name: string;
@@ -20,6 +22,7 @@ export type PlaygroundForm = {
20
22
  name: string;
21
23
  value: string;
22
24
  active: boolean;
25
+ enum?: string[];
23
26
  }>;
24
27
  pathParams: Array<{
25
28
  name: string;