zudoku 0.0.0-fix-downgrade-openapi-parser.aac00796 → 0.0.0-fix-prevent-full-deref-allof.b02efbe5

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 (548) hide show
  1. package/dist/app/main.d.ts +91 -1
  2. package/dist/app/main.js +5 -1
  3. package/dist/app/main.js.map +1 -1
  4. package/dist/config/config.d.ts +15 -46
  5. package/dist/config/validators/BuildSchema.js +18 -3
  6. package/dist/config/validators/BuildSchema.js.map +1 -1
  7. package/dist/config/validators/InputNavigationSchema.d.ts +61 -61
  8. package/dist/config/validators/NavigationSchema.js +2 -4
  9. package/dist/config/validators/NavigationSchema.js.map +1 -1
  10. package/dist/config/validators/ProtectedRoutesSchema.d.ts +1 -1
  11. package/dist/config/validators/validate.d.ts +203 -5
  12. package/dist/config/validators/validate.js +44 -1
  13. package/dist/config/validators/validate.js.map +1 -1
  14. package/dist/config/validators/validate.test.js +43 -0
  15. package/dist/config/validators/validate.test.js.map +1 -1
  16. package/dist/flat-config.d.ts +31 -2
  17. package/dist/lib/auth/issuer.js +3 -0
  18. package/dist/lib/auth/issuer.js.map +1 -1
  19. package/dist/lib/authentication/authentication.d.ts +1 -1
  20. package/dist/lib/authentication/providers/auth0.js +6 -1
  21. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  22. package/dist/lib/authentication/providers/firebase.d.ts +4 -0
  23. package/dist/lib/authentication/providers/firebase.js +215 -0
  24. package/dist/lib/authentication/providers/firebase.js.map +1 -0
  25. package/dist/lib/authentication/providers/supabase.js +1 -6
  26. package/dist/lib/authentication/providers/supabase.js.map +1 -1
  27. package/dist/lib/authentication/ui/ZudokuAuthUi.d.ts +24 -0
  28. package/dist/lib/authentication/ui/ZudokuAuthUi.js +124 -0
  29. package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -0
  30. package/dist/lib/authentication/ui/icons/Apple.d.ts +3 -0
  31. package/dist/lib/authentication/ui/icons/Apple.js +4 -0
  32. package/dist/lib/authentication/ui/icons/Apple.js.map +1 -0
  33. package/dist/lib/authentication/ui/icons/Facebook.d.ts +3 -0
  34. package/dist/lib/authentication/ui/icons/Facebook.js +4 -0
  35. package/dist/lib/authentication/ui/icons/Facebook.js.map +1 -0
  36. package/dist/lib/authentication/ui/icons/Github.d.ts +3 -0
  37. package/dist/lib/authentication/ui/icons/Github.js +4 -0
  38. package/dist/lib/authentication/ui/icons/Github.js.map +1 -0
  39. package/dist/lib/authentication/ui/icons/Google.d.ts +3 -0
  40. package/dist/lib/authentication/ui/icons/Google.js +4 -0
  41. package/dist/lib/authentication/ui/icons/Google.js.map +1 -0
  42. package/dist/lib/authentication/ui/icons/Microsoft.d.ts +3 -0
  43. package/dist/lib/authentication/ui/icons/Microsoft.js +4 -0
  44. package/dist/lib/authentication/ui/icons/Microsoft.js.map +1 -0
  45. package/dist/lib/authentication/ui/icons/X.d.ts +3 -0
  46. package/dist/lib/authentication/ui/icons/X.js +4 -0
  47. package/dist/lib/authentication/ui/icons/X.js.map +1 -0
  48. package/dist/lib/components/Autocomplete.d.ts +3 -1
  49. package/dist/lib/components/Autocomplete.js +6 -2
  50. package/dist/lib/components/Autocomplete.js.map +1 -1
  51. package/dist/lib/components/Heading.d.ts +1 -1
  52. package/dist/lib/components/Layout.js +3 -2
  53. package/dist/lib/components/Layout.js.map +1 -1
  54. package/dist/lib/components/Mermaid.d.ts +7 -0
  55. package/dist/lib/components/Mermaid.js +42 -0
  56. package/dist/lib/components/Mermaid.js.map +1 -0
  57. package/dist/lib/components/PagefindSearchMeta.d.ts +8 -0
  58. package/dist/lib/components/PagefindSearchMeta.js +7 -0
  59. package/dist/lib/components/PagefindSearchMeta.js.map +1 -0
  60. package/dist/lib/components/Zudoku.js +2 -5
  61. package/dist/lib/components/Zudoku.js.map +1 -1
  62. package/dist/lib/components/navigation/NavigationItem.js +2 -2
  63. package/dist/lib/components/navigation/NavigationItem.js.map +1 -1
  64. package/dist/lib/core/RouteGuard.js +7 -7
  65. package/dist/lib/core/RouteGuard.js.map +1 -1
  66. package/dist/lib/core/plugins.d.ts +3 -3
  67. package/dist/lib/errors/ErrorAlert.js +1 -1
  68. package/dist/lib/errors/RouterError.d.ts +3 -1
  69. package/dist/lib/errors/RouterError.js +3 -2
  70. package/dist/lib/errors/RouterError.js.map +1 -1
  71. package/dist/lib/oas/parser/index.d.ts +1 -0
  72. package/dist/lib/oas/parser/index.js +7 -3
  73. package/dist/lib/oas/parser/index.js.map +1 -1
  74. package/dist/lib/plugins/api-keys/ProtectedRoute.js +4 -1
  75. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
  76. package/dist/lib/plugins/openapi/CollapsibleCode.d.ts +1 -0
  77. package/dist/lib/plugins/openapi/CollapsibleCode.js +2 -1
  78. package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -1
  79. package/dist/lib/plugins/openapi/DownloadSchemaButton.d.ts +3 -0
  80. package/dist/lib/plugins/openapi/DownloadSchemaButton.js +47 -0
  81. package/dist/lib/plugins/openapi/DownloadSchemaButton.js.map +1 -0
  82. package/dist/lib/plugins/openapi/Endpoint.js +3 -6
  83. package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
  84. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.d.ts +5 -0
  85. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js +10 -0
  86. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js.map +1 -0
  87. package/dist/lib/plugins/openapi/OasProvider.js +22 -13
  88. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -1
  89. package/dist/lib/plugins/openapi/OperationList.js +16 -6
  90. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  91. package/dist/lib/plugins/openapi/OperationListItem.d.ts +2 -1
  92. package/dist/lib/plugins/openapi/OperationListItem.js +4 -3
  93. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  94. package/dist/lib/plugins/openapi/ParameterList.js +7 -4
  95. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  96. package/dist/lib/plugins/openapi/ParameterListItem.js +17 -6
  97. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  98. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +9 -2
  99. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +5 -2
  100. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  101. package/dist/lib/plugins/openapi/ResponsesSidecarBox.d.ts +4 -2
  102. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +26 -4
  103. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  104. package/dist/lib/plugins/openapi/SchemaList.js +2 -1
  105. package/dist/lib/plugins/openapi/SchemaList.js.map +1 -1
  106. package/dist/lib/plugins/openapi/Sidecar.d.ts +2 -2
  107. package/dist/lib/plugins/openapi/Sidecar.js +61 -26
  108. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  109. package/dist/lib/plugins/openapi/SidecarBox.js +4 -4
  110. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  111. package/dist/lib/plugins/openapi/SidecarExamples.d.ts +9 -2
  112. package/dist/lib/plugins/openapi/SidecarExamples.js +24 -43
  113. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
  114. package/dist/lib/plugins/openapi/components/ConstValue.js +1 -1
  115. package/dist/lib/plugins/openapi/components/ConstValue.js.map +1 -1
  116. package/dist/lib/plugins/openapi/components/EnumValues.js +1 -1
  117. package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -1
  118. package/dist/lib/plugins/openapi/components/NonHighlightedCode.d.ts +4 -0
  119. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js +5 -0
  120. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js.map +1 -0
  121. package/dist/lib/plugins/openapi/components/ResponseContent.js +5 -6
  122. package/dist/lib/plugins/openapi/components/ResponseContent.js.map +1 -1
  123. package/dist/lib/plugins/openapi/index.js +11 -5
  124. package/dist/lib/plugins/openapi/index.js.map +1 -1
  125. package/dist/lib/plugins/openapi/interfaces.d.ts +29 -13
  126. package/dist/lib/plugins/openapi/playground/BodyPanel.js +67 -15
  127. package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -1
  128. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +2 -2
  129. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -1
  130. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +1 -1
  131. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
  132. package/dist/lib/plugins/openapi/playground/Headers.js +23 -83
  133. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  134. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +10 -2
  135. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +8 -1
  136. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -1
  137. package/dist/lib/plugins/openapi/playground/PathParams.js +2 -3
  138. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  139. package/dist/lib/plugins/openapi/playground/Playground.d.ts +7 -0
  140. package/dist/lib/plugins/openapi/playground/Playground.js +57 -25
  141. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  142. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +3 -2
  143. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  144. package/dist/lib/plugins/openapi/playground/QueryParams.js +16 -40
  145. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  146. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.d.ts +8 -0
  147. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js +19 -0
  148. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js.map +1 -0
  149. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +1 -1
  150. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -1
  151. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.d.ts +1 -0
  152. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js +540 -0
  153. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js.map +1 -0
  154. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.d.ts +40 -0
  155. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js +205 -0
  156. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js.map +1 -0
  157. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +2 -2
  158. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
  159. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +1 -1
  160. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -1
  161. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +17 -8
  162. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
  163. package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +1 -1
  164. package/dist/lib/plugins/openapi/schema/SchemaView.js +31 -16
  165. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  166. package/dist/lib/plugins/openapi/schema/UnionView.js +2 -5
  167. package/dist/lib/plugins/openapi/schema/UnionView.js.map +1 -1
  168. package/dist/lib/plugins/openapi/schema/union-helpers.js +0 -1
  169. package/dist/lib/plugins/openapi/schema/union-helpers.js.map +1 -1
  170. package/dist/lib/plugins/openapi/schema/utils.d.ts +2 -2
  171. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  172. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +9 -11
  173. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  174. package/dist/lib/plugins/openapi/util/getRoutes.d.ts +6 -1
  175. package/dist/lib/plugins/openapi/util/getRoutes.js +29 -2
  176. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  177. package/dist/lib/plugins/search-pagefind/IndexingDialog.d.ts +3 -0
  178. package/dist/lib/plugins/search-pagefind/IndexingDialog.js +64 -0
  179. package/dist/lib/plugins/search-pagefind/IndexingDialog.js.map +1 -0
  180. package/dist/lib/plugins/search-pagefind/PagefindSearch.js +22 -5
  181. package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -1
  182. package/dist/lib/plugins/search-pagefind/ResultList.js +5 -4
  183. package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -1
  184. package/dist/lib/shiki.d.ts +1 -1
  185. package/dist/lib/shiki.js +18 -12
  186. package/dist/lib/shiki.js.map +1 -1
  187. package/dist/lib/ui/Badge.d.ts +3 -3
  188. package/dist/lib/ui/Badge.js +9 -7
  189. package/dist/lib/ui/Badge.js.map +1 -1
  190. package/dist/lib/ui/Button.d.ts +2 -2
  191. package/dist/lib/ui/Button.js +9 -7
  192. package/dist/lib/ui/Button.js.map +1 -1
  193. package/dist/lib/ui/ButtonGroup.d.ts +11 -0
  194. package/dist/lib/ui/ButtonGroup.js +28 -0
  195. package/dist/lib/ui/ButtonGroup.js.map +1 -0
  196. package/dist/lib/ui/Checkbox.d.ts +2 -2
  197. package/dist/lib/ui/Checkbox.js +4 -4
  198. package/dist/lib/ui/Checkbox.js.map +1 -1
  199. package/dist/lib/ui/CodeBlock.d.ts +0 -1
  200. package/dist/lib/ui/CodeBlock.js +1 -1
  201. package/dist/lib/ui/CodeBlock.js.map +1 -1
  202. package/dist/lib/ui/Collapsible.d.ts +4 -4
  203. package/dist/lib/ui/Collapsible.js +11 -4
  204. package/dist/lib/ui/Collapsible.js.map +1 -1
  205. package/dist/lib/ui/Command.d.ts +3 -3
  206. package/dist/lib/ui/Command.js +2 -2
  207. package/dist/lib/ui/Command.js.map +1 -1
  208. package/dist/lib/ui/DropdownMenu.d.ts +21 -23
  209. package/dist/lib/ui/DropdownMenu.js +47 -32
  210. package/dist/lib/ui/DropdownMenu.js.map +1 -1
  211. package/dist/lib/ui/EmbeddedCodeBlock.d.ts +0 -1
  212. package/dist/lib/ui/EmbeddedCodeBlock.js +3 -2
  213. package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  214. package/dist/lib/ui/Frame.d.ts +8 -0
  215. package/dist/lib/ui/Frame.js +22 -0
  216. package/dist/lib/ui/Frame.js.map +1 -0
  217. package/dist/lib/ui/Item.d.ts +23 -0
  218. package/dist/lib/ui/Item.js +67 -0
  219. package/dist/lib/ui/Item.js.map +1 -0
  220. package/dist/lib/ui/Kbd.d.ts +3 -0
  221. package/dist/lib/ui/Kbd.js +10 -0
  222. package/dist/lib/ui/Kbd.js.map +1 -0
  223. package/dist/lib/ui/NativeSelect.d.ts +5 -0
  224. package/dist/lib/ui/NativeSelect.js +14 -0
  225. package/dist/lib/ui/NativeSelect.js.map +1 -0
  226. package/dist/lib/ui/Select.d.ts +13 -11
  227. package/dist/lib/ui/Select.js +34 -23
  228. package/dist/lib/ui/Select.js.map +1 -1
  229. package/dist/lib/ui/Separator.d.ts +4 -0
  230. package/dist/lib/ui/Separator.js +8 -0
  231. package/dist/lib/ui/Separator.js.map +1 -0
  232. package/dist/lib/ui/Tooltip.d.ts +7 -7
  233. package/dist/lib/ui/Tooltip.js +16 -10
  234. package/dist/lib/ui/Tooltip.js.map +1 -1
  235. package/dist/lib/util/MdxComponents.d.ts +1 -0
  236. package/dist/lib/util/MdxComponents.js +2 -0
  237. package/dist/lib/util/MdxComponents.js.map +1 -1
  238. package/dist/lib/util/createVariantComponent.d.ts +5 -2
  239. package/dist/lib/util/createVariantComponent.js +5 -2
  240. package/dist/lib/util/createVariantComponent.js.map +1 -1
  241. package/dist/lib/util/flattenAllOf.d.ts +4 -0
  242. package/dist/lib/util/flattenAllOf.js +88 -0
  243. package/dist/lib/util/flattenAllOf.js.map +1 -0
  244. package/dist/lib/util/flattenAllOf.test.d.ts +1 -0
  245. package/dist/lib/util/flattenAllOf.test.js +532 -0
  246. package/dist/lib/util/flattenAllOf.test.js.map +1 -0
  247. package/dist/lib/util/readFrontmatter.d.ts +6 -0
  248. package/dist/lib/util/readFrontmatter.js +12 -0
  249. package/dist/lib/util/readFrontmatter.js.map +1 -0
  250. package/dist/vite/api/SchemaManager.d.ts +5 -0
  251. package/dist/vite/api/SchemaManager.js +30 -18
  252. package/dist/vite/api/SchemaManager.js.map +1 -1
  253. package/dist/vite/config.js +7 -1
  254. package/dist/vite/config.js.map +1 -1
  255. package/dist/vite/dev-server.js +25 -0
  256. package/dist/vite/dev-server.js.map +1 -1
  257. package/dist/vite/mdx/remark-last-modified.js +57 -3
  258. package/dist/vite/mdx/remark-last-modified.js.map +1 -1
  259. package/dist/vite/pagefind-dev-index.d.ts +16 -0
  260. package/dist/vite/pagefind-dev-index.js +68 -0
  261. package/dist/vite/pagefind-dev-index.js.map +1 -0
  262. package/dist/vite/plugin-api.js +41 -3
  263. package/dist/vite/plugin-api.js.map +1 -1
  264. package/dist/vite/plugin-frontmatter.js +3 -5
  265. package/dist/vite/plugin-frontmatter.js.map +1 -1
  266. package/dist/vite/plugin-markdown-export.js +3 -4
  267. package/dist/vite/plugin-markdown-export.js.map +1 -1
  268. package/dist/vite/plugin-theme.js +10 -1
  269. package/dist/vite/plugin-theme.js.map +1 -1
  270. package/dist/vite/prerender/prerender.js +1 -19
  271. package/dist/vite/prerender/prerender.js.map +1 -1
  272. package/dist/vite/prerender/utils.d.ts +2 -0
  273. package/dist/vite/prerender/utils.js +24 -0
  274. package/dist/vite/prerender/utils.js.map +1 -0
  275. package/lib/Button-CynVW1JV.js +53 -0
  276. package/lib/Button-CynVW1JV.js.map +1 -0
  277. package/lib/ClaudeLogo-PxFjou9w.js +69 -0
  278. package/lib/ClaudeLogo-PxFjou9w.js.map +1 -0
  279. package/lib/{Command-CUcrW3qs.js → Command-BpT1iBE6.js} +25 -25
  280. package/lib/Command-BpT1iBE6.js.map +1 -0
  281. package/lib/Drawer-Ci7XwhqT.js.map +1 -1
  282. package/lib/DropdownMenu-C8SX_-S_.js +104 -0
  283. package/lib/DropdownMenu-C8SX_-S_.js.map +1 -0
  284. package/lib/{ErrorAlert-DE3Sf66a.js → ErrorAlert-BqjbNHIn.js} +475 -456
  285. package/lib/ErrorAlert-BqjbNHIn.js.map +1 -0
  286. package/lib/IndexingDialog-B5zCiUKr.js +100 -0
  287. package/lib/IndexingDialog-B5zCiUKr.js.map +1 -0
  288. package/lib/MdxPage-CVFatbHw.js +210 -0
  289. package/lib/MdxPage-CVFatbHw.js.map +1 -0
  290. package/lib/Mermaid-CIFixY6C.js +102 -0
  291. package/lib/Mermaid-CIFixY6C.js.map +1 -0
  292. package/lib/{OAuthErrorPage-BycMozgn.js → OAuthErrorPage-Dup79DJk.js} +7 -7
  293. package/lib/{OAuthErrorPage-BycMozgn.js.map → OAuthErrorPage-Dup79DJk.js.map} +1 -1
  294. package/lib/OasProvider-C10RPbY8.js +40 -0
  295. package/lib/OasProvider-C10RPbY8.js.map +1 -0
  296. package/lib/OperationList--zX7OAlH.js +5824 -0
  297. package/lib/OperationList--zX7OAlH.js.map +1 -0
  298. package/lib/RouteGuard-BXy13JSz.js +77 -0
  299. package/lib/RouteGuard-BXy13JSz.js.map +1 -0
  300. package/lib/RouterError-CKOZTsDD.js +42 -0
  301. package/lib/RouterError-CKOZTsDD.js.map +1 -0
  302. package/lib/{SchemaList-xZSf3IMh.js → SchemaList-CxafJA_P.js} +28 -27
  303. package/lib/SchemaList-CxafJA_P.js.map +1 -0
  304. package/lib/SchemaView-j0PtjY8U.js +597 -0
  305. package/lib/SchemaView-j0PtjY8U.js.map +1 -0
  306. package/lib/Select-VmDZ-nKe.js +337 -0
  307. package/lib/Select-VmDZ-nKe.js.map +1 -0
  308. package/lib/{SignUp-6SGx9Yyq.js → SignUp-Pm_LGm6T.js} +13 -13
  309. package/lib/{SignUp-6SGx9Yyq.js.map → SignUp-Pm_LGm6T.js.map} +1 -1
  310. package/lib/{SyntaxHighlight-zvlnSnHB.js → SyntaxHighlight-bkmst3oV.js} +710 -662
  311. package/lib/{SyntaxHighlight-zvlnSnHB.js.map → SyntaxHighlight-bkmst3oV.js.map} +1 -1
  312. package/lib/{Toc-Da9yp7lo.js → Toc-TUXNFbKl.js} +2 -2
  313. package/lib/{Toc-Da9yp7lo.js.map → Toc-TUXNFbKl.js.map} +1 -1
  314. package/lib/{ZudokuContext-BUZ5hkWB.js → ZudokuContext-np1wheDl.js} +8 -8
  315. package/lib/{ZudokuContext-BUZ5hkWB.js.map → ZudokuContext-np1wheDl.js.map} +1 -1
  316. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js +9 -0
  317. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js.map +1 -0
  318. package/lib/{chunk-PVWAREVJ-BMhpCH5D.js → chunk-PVWAREVJ-dLIqswPy.js} +5 -5
  319. package/lib/{chunk-PVWAREVJ-BMhpCH5D.js.map → chunk-PVWAREVJ-dLIqswPy.js.map} +1 -1
  320. package/lib/{circular-DvuimBGQ.js → circular-GQ_uaom2.js} +6360 -5953
  321. package/lib/circular-GQ_uaom2.js.map +1 -0
  322. package/lib/createServer-sU0O9wfJ.js +16693 -0
  323. package/lib/createServer-sU0O9wfJ.js.map +1 -0
  324. package/lib/{errors-CuGgh3hf.js → errors-B0hNTPFO.js} +3 -3
  325. package/lib/{errors-CuGgh3hf.js.map → errors-B0hNTPFO.js.map} +1 -1
  326. package/lib/{hook-CMeoxziF.js → hook-CvSwcbk6.js} +3 -3
  327. package/lib/{hook-CMeoxziF.js.map → hook-CvSwcbk6.js.map} +1 -1
  328. package/lib/index-B6SRNBIt.js +3700 -0
  329. package/lib/index-B6SRNBIt.js.map +1 -0
  330. package/lib/index-CrcNWbel.js.map +1 -1
  331. package/lib/index-DnMgJWrI.js +133 -0
  332. package/lib/index-DnMgJWrI.js.map +1 -0
  333. package/lib/{index-rYHsvtTo.js → index-DscsS121.js} +2 -2
  334. package/lib/{index-rYHsvtTo.js.map → index-DscsS121.js.map} +1 -1
  335. package/lib/{index-B1rmok4X.js → index-mfkNWYG-.js} +10 -10
  336. package/lib/{index-B1rmok4X.js.map → index-mfkNWYG-.js.map} +1 -1
  337. package/lib/{index.esm-BnYHxCYC.js → index.esm-DtzT_KoE.js} +20 -20
  338. package/lib/{index.esm-BnYHxCYC.js.map → index.esm-DtzT_KoE.js.map} +1 -1
  339. package/lib/{invariant-Bm-FVUQE.js → invariant-CGOLuIIz.js} +3 -3
  340. package/lib/{invariant-Bm-FVUQE.js.map → invariant-CGOLuIIz.js.map} +1 -1
  341. package/lib/{mutation-BSU0xu4m.js → mutation-BlmnL5qL.js} +2 -2
  342. package/lib/{mutation-BSU0xu4m.js.map → mutation-BlmnL5qL.js.map} +1 -1
  343. package/lib/ui/ActionButton.js +1 -1
  344. package/lib/ui/Badge.js +27 -13
  345. package/lib/ui/Badge.js.map +1 -1
  346. package/lib/ui/Button.js +26 -24
  347. package/lib/ui/Button.js.map +1 -1
  348. package/lib/ui/ButtonGroup.js +77 -0
  349. package/lib/ui/ButtonGroup.js.map +1 -0
  350. package/lib/ui/Checkbox.js +29 -26
  351. package/lib/ui/Checkbox.js.map +1 -1
  352. package/lib/ui/CodeBlock.js +7 -7
  353. package/lib/ui/CodeBlock.js.map +1 -1
  354. package/lib/ui/Collapsible.js +32 -5
  355. package/lib/ui/Collapsible.js.map +1 -1
  356. package/lib/ui/Command.js +3 -3
  357. package/lib/ui/Command.js.map +1 -1
  358. package/lib/ui/DropdownMenu.js +227 -140
  359. package/lib/ui/DropdownMenu.js.map +1 -1
  360. package/lib/ui/EmbeddedCodeBlock.js +26 -25
  361. package/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  362. package/lib/ui/Frame.js +81 -0
  363. package/lib/ui/Frame.js.map +1 -0
  364. package/lib/ui/Item.js +188 -0
  365. package/lib/ui/Item.js.map +1 -0
  366. package/lib/ui/Kbd.js +32 -0
  367. package/lib/ui/Kbd.js.map +1 -0
  368. package/lib/ui/NativeSelect.js +57 -0
  369. package/lib/ui/NativeSelect.js.map +1 -0
  370. package/lib/ui/Select.js +166 -116
  371. package/lib/ui/Select.js.map +1 -1
  372. package/lib/ui/Separator.js +27 -0
  373. package/lib/ui/Separator.js.map +1 -0
  374. package/lib/ui/SyntaxHighlight.js +3 -3
  375. package/lib/ui/Tabs.js +10 -10
  376. package/lib/ui/Tooltip.js +55 -28
  377. package/lib/ui/Tooltip.js.map +1 -1
  378. package/lib/zudoku.__internal.js +349 -349
  379. package/lib/zudoku.__internal.js.map +1 -1
  380. package/lib/zudoku.auth-auth0.js +7 -7
  381. package/lib/zudoku.auth-auth0.js.map +1 -1
  382. package/lib/zudoku.auth-azureb2c.js +4 -4
  383. package/lib/zudoku.auth-clerk.js +2 -2
  384. package/lib/zudoku.auth-openid.js +5 -5
  385. package/lib/zudoku.auth-supabase.js +31 -34
  386. package/lib/zudoku.auth-supabase.js.map +1 -1
  387. package/lib/zudoku.components.js +7 -7
  388. package/lib/zudoku.hooks.js +11 -24
  389. package/lib/zudoku.hooks.js.map +1 -1
  390. package/lib/zudoku.mermaid.js +10 -0
  391. package/lib/zudoku.mermaid.js.map +1 -0
  392. package/lib/zudoku.plugin-api-catalog.js +6 -6
  393. package/lib/zudoku.plugin-api-keys.js +223 -198
  394. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  395. package/lib/zudoku.plugin-custom-pages.js +1 -1
  396. package/lib/zudoku.plugin-markdown.js +1 -1
  397. package/lib/zudoku.plugin-openapi.js +3 -3
  398. package/lib/zudoku.plugin-redirect.js +1 -1
  399. package/lib/zudoku.plugin-search-pagefind.js +184 -226
  400. package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
  401. package/lib/zudoku.plugins.js.map +1 -1
  402. package/lib/zudoku.router.js +2 -2
  403. package/package.json +36 -23
  404. package/src/app/main.css +1 -1
  405. package/src/app/main.tsx +5 -1
  406. package/src/lib/auth/issuer.ts +3 -0
  407. package/src/lib/authentication/authentication.ts +1 -1
  408. package/src/lib/authentication/providers/auth0.tsx +6 -1
  409. package/src/lib/authentication/providers/firebase.tsx +284 -0
  410. package/src/lib/authentication/providers/supabase.tsx +2 -7
  411. package/src/lib/authentication/ui/ZudokuAuthUi.tsx +335 -0
  412. package/src/lib/authentication/ui/icons/Apple.tsx +10 -0
  413. package/src/lib/authentication/ui/icons/Facebook.tsx +15 -0
  414. package/src/lib/authentication/ui/icons/Github.tsx +16 -0
  415. package/src/lib/authentication/ui/icons/Google.tsx +16 -0
  416. package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -0
  417. package/src/lib/authentication/ui/icons/X.tsx +10 -0
  418. package/src/lib/components/Autocomplete.tsx +11 -2
  419. package/src/lib/components/Layout.tsx +3 -2
  420. package/src/lib/components/Mermaid.tsx +68 -0
  421. package/src/lib/components/PagefindSearchMeta.tsx +14 -0
  422. package/src/lib/components/Zudoku.tsx +4 -7
  423. package/src/lib/components/navigation/NavigationItem.tsx +7 -20
  424. package/src/lib/core/RouteGuard.tsx +9 -9
  425. package/src/lib/core/plugins.ts +2 -2
  426. package/src/lib/errors/ErrorAlert.tsx +1 -1
  427. package/src/lib/errors/RouterError.tsx +7 -2
  428. package/src/lib/oas/parser/index.ts +10 -3
  429. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +11 -7
  430. package/src/lib/plugins/openapi/CollapsibleCode.tsx +5 -3
  431. package/src/lib/plugins/openapi/DownloadSchemaButton.tsx +115 -0
  432. package/src/lib/plugins/openapi/Endpoint.tsx +20 -27
  433. package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -0
  434. package/src/lib/plugins/openapi/OasProvider.tsx +30 -17
  435. package/src/lib/plugins/openapi/OperationList.tsx +46 -21
  436. package/src/lib/plugins/openapi/OperationListItem.tsx +15 -12
  437. package/src/lib/plugins/openapi/ParameterList.tsx +37 -23
  438. package/src/lib/plugins/openapi/ParameterListItem.tsx +105 -54
  439. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +48 -7
  440. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +101 -33
  441. package/src/lib/plugins/openapi/SchemaList.tsx +4 -0
  442. package/src/lib/plugins/openapi/Sidecar.tsx +145 -65
  443. package/src/lib/plugins/openapi/SidecarBox.tsx +26 -4
  444. package/src/lib/plugins/openapi/SidecarExamples.tsx +91 -79
  445. package/src/lib/plugins/openapi/components/ConstValue.tsx +1 -1
  446. package/src/lib/plugins/openapi/components/EnumValues.tsx +2 -2
  447. package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -0
  448. package/src/lib/plugins/openapi/components/ResponseContent.tsx +63 -53
  449. package/src/lib/plugins/openapi/index.tsx +16 -7
  450. package/src/lib/plugins/openapi/interfaces.ts +28 -7
  451. package/src/lib/plugins/openapi/playground/BodyPanel.tsx +246 -30
  452. package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +10 -6
  453. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +3 -2
  454. package/src/lib/plugins/openapi/playground/Headers.tsx +103 -219
  455. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +33 -1
  456. package/src/lib/plugins/openapi/playground/PathParams.tsx +26 -34
  457. package/src/lib/plugins/openapi/playground/Playground.tsx +74 -32
  458. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +9 -30
  459. package/src/lib/plugins/openapi/playground/QueryParams.tsx +82 -136
  460. package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -0
  461. package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +1 -1
  462. package/src/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.tsx +872 -0
  463. package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +349 -0
  464. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +2 -6
  465. package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +1 -1
  466. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +89 -55
  467. package/src/lib/plugins/openapi/schema/SchemaView.tsx +98 -60
  468. package/src/lib/plugins/openapi/schema/UnionView.tsx +6 -17
  469. package/src/lib/plugins/openapi/schema/union-helpers.ts +0 -1
  470. package/src/lib/plugins/openapi/schema/utils.ts +5 -2
  471. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +11 -11
  472. package/src/lib/plugins/openapi/util/getRoutes.tsx +35 -3
  473. package/src/lib/plugins/search-pagefind/IndexingDialog.tsx +163 -0
  474. package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +61 -22
  475. package/src/lib/plugins/search-pagefind/ResultList.tsx +8 -3
  476. package/src/lib/shiki.ts +21 -12
  477. package/src/lib/ui/Badge.tsx +21 -12
  478. package/src/lib/ui/Button.tsx +10 -9
  479. package/src/lib/ui/ButtonGroup.tsx +82 -0
  480. package/src/lib/ui/Checkbox.tsx +23 -24
  481. package/src/lib/ui/CodeBlock.tsx +3 -4
  482. package/src/lib/ui/Collapsible.tsx +26 -4
  483. package/src/lib/ui/Command.tsx +3 -3
  484. package/src/lib/ui/DropdownMenu.tsx +226 -170
  485. package/src/lib/ui/EmbeddedCodeBlock.tsx +21 -19
  486. package/src/lib/ui/Frame.tsx +81 -0
  487. package/src/lib/ui/Item.tsx +192 -0
  488. package/src/lib/ui/Kbd.tsx +28 -0
  489. package/src/lib/ui/NativeSelect.tsx +47 -0
  490. package/src/lib/ui/Select.tsx +153 -126
  491. package/src/lib/ui/Separator.tsx +25 -0
  492. package/src/lib/ui/Tooltip.tsx +54 -32
  493. package/src/lib/util/MdxComponents.tsx +2 -0
  494. package/src/lib/util/createVariantComponent.tsx +31 -5
  495. package/src/lib/util/flattenAllOf.test.ts +637 -0
  496. package/src/lib/util/flattenAllOf.ts +122 -0
  497. package/src/lib/util/readFrontmatter.ts +13 -0
  498. package/src/shiki/langs/markdown-nix.js +1 -0
  499. package/src/shiki/langs/openscad.js +1 -0
  500. package/dist/lib/plugins/openapi/playground/InlineInput.d.ts +0 -4
  501. package/dist/lib/plugins/openapi/playground/InlineInput.js +0 -3
  502. package/dist/lib/plugins/openapi/playground/InlineInput.js.map +0 -1
  503. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.d.ts +0 -5
  504. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js +0 -7
  505. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js.map +0 -1
  506. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.d.ts +0 -4
  507. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js +0 -10
  508. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js.map +0 -1
  509. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.d.ts +0 -5
  510. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js +0 -16
  511. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js.map +0 -1
  512. package/dist/vite/create-pagefind-index.d.ts +0 -4
  513. package/dist/vite/create-pagefind-index.js +0 -12
  514. package/dist/vite/create-pagefind-index.js.map +0 -1
  515. package/lib/Button-DmS4u8Lj.js +0 -51
  516. package/lib/Button-DmS4u8Lj.js.map +0 -1
  517. package/lib/Command-CUcrW3qs.js.map +0 -1
  518. package/lib/DropdownMenu-BZ2NKQ3K.js +0 -126
  519. package/lib/DropdownMenu-BZ2NKQ3K.js.map +0 -1
  520. package/lib/ErrorAlert-DE3Sf66a.js.map +0 -1
  521. package/lib/MdxPage-DZfeC0QY.js +0 -240
  522. package/lib/MdxPage-DZfeC0QY.js.map +0 -1
  523. package/lib/OasProvider-Bf5zBDBY.js +0 -36
  524. package/lib/OasProvider-Bf5zBDBY.js.map +0 -1
  525. package/lib/OperationList-Cmiw1xm2.js +0 -5446
  526. package/lib/OperationList-Cmiw1xm2.js.map +0 -1
  527. package/lib/Pagination-CJszmeSA.js +0 -37
  528. package/lib/Pagination-CJszmeSA.js.map +0 -1
  529. package/lib/RouteGuard-DhU3LRr1.js +0 -81
  530. package/lib/RouteGuard-DhU3LRr1.js.map +0 -1
  531. package/lib/RouterError-VDLnrFqF.js +0 -41
  532. package/lib/RouterError-VDLnrFqF.js.map +0 -1
  533. package/lib/SchemaList-xZSf3IMh.js.map +0 -1
  534. package/lib/SchemaView-tHXTm5oM.js +0 -458
  535. package/lib/SchemaView-tHXTm5oM.js.map +0 -1
  536. package/lib/Select-C1DeCqKv.js +0 -372
  537. package/lib/Select-C1DeCqKv.js.map +0 -1
  538. package/lib/circular-DvuimBGQ.js.map +0 -1
  539. package/lib/createServer-D9UvCoDf.js +0 -12559
  540. package/lib/createServer-D9UvCoDf.js.map +0 -1
  541. package/lib/index-Cr9_YzOZ.js +0 -3364
  542. package/lib/index-Cr9_YzOZ.js.map +0 -1
  543. package/lib/useExposedProps-U3pmsHaG.js +0 -113
  544. package/lib/useExposedProps-U3pmsHaG.js.map +0 -1
  545. package/src/lib/plugins/openapi/playground/InlineInput.tsx +0 -6
  546. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.tsx +0 -36
  547. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.tsx +0 -25
  548. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.tsx +0 -42
@@ -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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"}
@@ -3,27 +3,24 @@ import type { ZudokuContext } from "../../core/ZudokuContext.js";
3
3
  import type { SchemaImports } from "../../oas/graphql/index.js";
4
4
  import type { OperationsFragmentFragment } from "./graphql/graphql.js";
5
5
  type DynamicInput = () => Promise<unknown>;
6
+ export type VersionedInput<T> = Array<{
7
+ path: string;
8
+ label?: string;
9
+ input: T;
10
+ }>;
6
11
  type OasSource = {
7
12
  type: "url";
8
- input: string;
13
+ input: string | VersionedInput<string>;
9
14
  } | {
10
15
  type: "file";
11
- input: {
12
- [version: string]: DynamicInput;
13
- };
16
+ input: VersionedInput<DynamicInput>;
14
17
  } | {
15
18
  type: "raw";
16
19
  input: string;
17
20
  };
18
21
  export type ContextOasSource = {
19
- type: "url";
20
- input: string;
21
- } | {
22
- type: "file";
23
- input: DynamicInput;
24
- } | {
25
- type: "raw";
26
- input: string;
22
+ type: "url" | "file" | "raw";
23
+ input: string | DynamicInput;
27
24
  };
28
25
  type Example = {
29
26
  name: string;
@@ -47,6 +44,14 @@ export type TransformExamplesFn = (options: {
47
44
  operation: OperationsFragmentFragment;
48
45
  type: "request" | "response";
49
46
  }) => Content[];
47
+ export type GenerateCodeSnippetFn = (options: {
48
+ selectedLang: string;
49
+ selectedServer: string;
50
+ context: ZudokuContext;
51
+ auth: AuthState;
52
+ operation: OperationsFragmentFragment;
53
+ example?: any | null;
54
+ }) => string | false;
50
55
  type BaseOasConfig = {
51
56
  server?: string;
52
57
  path?: string;
@@ -55,17 +60,28 @@ type BaseOasConfig = {
55
60
  schemaImports?: SchemaImports;
56
61
  options?: {
57
62
  examplesLanguage?: string;
63
+ supportedLanguages?: {
64
+ value: string;
65
+ label: string;
66
+ }[];
58
67
  disablePlayground?: boolean;
59
68
  disableSidecar?: boolean;
60
69
  showVersionSelect?: "always" | "if-available" | "hide";
61
70
  expandAllTags?: boolean;
62
71
  expandApiInformation?: boolean;
72
+ schemaDownload?: {
73
+ enabled: boolean;
74
+ };
63
75
  transformExamples?: TransformExamplesFn;
76
+ generateCodeSnippet?: GenerateCodeSnippetFn;
64
77
  };
65
78
  };
66
79
  export type OasPluginConfig = BaseOasConfig & OasSource;
67
80
  export type OasPluginContext = BaseOasConfig & ContextOasSource & {
68
81
  version?: string;
69
- versions: Record<string, string>;
82
+ versions: Record<string, {
83
+ path: string;
84
+ label: string;
85
+ }>;
70
86
  };
71
87
  export {};
@@ -1,26 +1,78 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { FileInput } from "lucide-react";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ChevronDownIcon, FileInput, Grid2x2PlusIcon, PaperclipIcon, ScanTextIcon, XIcon, } from "lucide-react";
3
+ import { useRef, useState } from "react";
3
4
  import { useFormContext } from "react-hook-form";
5
+ import { Button } from "zudoku/components";
4
6
  import { Collapsible, CollapsibleContent } from "zudoku/ui/Collapsible.js";
7
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "zudoku/ui/DropdownMenu.js";
5
8
  import { Textarea } from "zudoku/ui/Textarea.js";
6
9
  import { cn } from "../../../util/cn.js";
10
+ import { humanFileSize } from "../../../util/humanFileSize.js";
7
11
  import { CollapsibleHeader, CollapsibleHeaderTrigger, } from "./CollapsibleHeader.js";
8
12
  import ExamplesDropdown from "./ExamplesDropdown.js";
13
+ import ParamsGrid from "./ParamsGrid.js";
14
+ import { MultipartField } from "./request-panel/MultipartField.js";
15
+ import { useKeyValueFieldManager } from "./request-panel/useKeyValueFieldManager.js";
9
16
  export const BodyPanel = ({ content }) => {
10
- const { register, setValue, watch } = useFormContext();
17
+ const { register, setValue, watch, control } = useFormContext();
11
18
  const examples = (content ?? []).flatMap((e) => e.examples);
12
- const headers = watch("headers");
13
- return (_jsxs(Collapsible, { defaultOpen: true, children: [_jsxs(CollapsibleHeaderTrigger, { children: [_jsx(FileInput, { size: 16 }), _jsx(CollapsibleHeader, { children: "Body" }), content && examples.length > 0 ? (_jsx(ExamplesDropdown, { examples: content, onSelect: (example, mediaType) => {
14
- setValue("body", JSON.stringify(example.value, null, 2));
15
- setValue("headers", [
16
- ...headers.filter((h) => h.name !== "Content-Type"),
17
- {
18
- name: "Content-Type",
19
- value: mediaType,
20
- active: true,
21
- },
22
- ]);
23
- } })) : (_jsx("div", {}))] }), _jsx(CollapsibleContent, { className: "flex flex-col gap-2 ", children: _jsx(Textarea, { ...register("body"), className: cn("w-full p-2 h-64 font-mono md:text-xs border-none rounded-none focus-visible:ring-0"), placeholder: "Your body here..." }) })] }));
19
+ const [headers, file, bodyMode, body, multipartFormFields] = watch([
20
+ "headers",
21
+ "file",
22
+ "bodyMode",
23
+ "body",
24
+ "multipartFormFields",
25
+ ]);
26
+ const fileInputRef = useRef(null);
27
+ const [isDragging, setIsDragging] = useState(false);
28
+ const handleFileSelect = (selectedFile) => {
29
+ setValue("file", selectedFile);
30
+ if (!selectedFile)
31
+ return;
32
+ setValue("headers", headers.filter((h) => h.name.toLowerCase() !== "content-type" || !h.active));
33
+ };
34
+ const handleFileInputChange = (e) => {
35
+ const selectedFile = e.target.files?.[0] ?? null;
36
+ handleFileSelect(selectedFile);
37
+ };
38
+ const handleDragOver = (e) => {
39
+ e.preventDefault();
40
+ e.stopPropagation();
41
+ setIsDragging(true);
42
+ };
43
+ const handleDragLeave = (e) => {
44
+ e.preventDefault();
45
+ e.stopPropagation();
46
+ setIsDragging(false);
47
+ };
48
+ const handleDrop = (e) => {
49
+ e.preventDefault();
50
+ e.stopPropagation();
51
+ setIsDragging(false);
52
+ const droppedFile = e.dataTransfer.files?.[0] ?? null;
53
+ handleFileSelect(droppedFile);
54
+ };
55
+ const manager = useKeyValueFieldManager({
56
+ control,
57
+ name: "multipartFormFields",
58
+ defaultValue: { name: "", value: "", active: false },
59
+ isEmpty: (item) => {
60
+ if (item.value instanceof File)
61
+ return false;
62
+ return !item.name && !item.value;
63
+ },
64
+ });
65
+ return (_jsxs(Collapsible, { defaultOpen: true, children: [_jsxs(CollapsibleHeaderTrigger, { className: "items-center", children: [_jsx(FileInput, { size: 16 }), _jsxs(CollapsibleHeader, { className: "flex items-center justify-between", children: ["Body", _jsxs("div", { className: "flex items-center", children: [_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsxs(Button, { variant: "ghost", size: "sm", className: "hover:bg-accent hover:brightness-95 gap-2", children: [bodyMode === "text" ? (_jsxs(_Fragment, { children: [_jsx(ScanTextIcon, { size: 14 }), "Text"] })) : bodyMode === "file" ? (_jsxs(_Fragment, { children: [_jsx(PaperclipIcon, { size: 14 }), "File"] })) : (_jsxs(_Fragment, { children: [_jsx(Grid2x2PlusIcon, { size: 14 }), "Multipart"] })), _jsx(ChevronDownIcon, { size: 14 })] }) }), _jsxs(DropdownMenuContent, { className: "min-w-40", children: [_jsxs(DropdownMenuItem, { onSelect: () => setValue("bodyMode", "text"), className: "gap-2", children: [_jsx(ScanTextIcon, { size: 14 }), _jsx("span", { className: "flex-1", children: "Text" }), _jsx("span", { children: body.length > 0 && (_jsx("div", { className: "w-1.5 h-1.5 bg-primary rounded-full" })) })] }), _jsxs(DropdownMenuItem, { onSelect: () => setValue("bodyMode", "file"), className: "gap-2", children: [_jsx(PaperclipIcon, { size: 14 }), _jsx("span", { className: "flex-1", children: "File" }), _jsx("span", { children: file && (_jsx("div", { className: "w-1.5 h-1.5 bg-primary rounded-full" })) })] }), _jsxs(DropdownMenuItem, { onSelect: () => setValue("bodyMode", "multipart"), className: "gap-2", children: [_jsx(Grid2x2PlusIcon, { size: 14, strokeWidth: 1.5 }), _jsx("span", { className: "flex-1", children: "Multipart" }), _jsx("span", { children: multipartFormFields?.some((field) => field.active) && (_jsx("div", { className: "w-1.5 h-1.5 bg-primary rounded-full" })) })] })] })] }), _jsx("input", { ref: fileInputRef, type: "file", className: "hidden", onChange: handleFileInputChange }), _jsx("div", { className: "w-px mx-1 h-5 bg-border" }), content && examples.length > 0 ? (_jsx(ExamplesDropdown, { examples: content, onSelect: (example, mediaType) => {
66
+ setValue("body", JSON.stringify(example.value, null, 2));
67
+ setValue("headers", [
68
+ ...headers.filter((h) => h.name !== "Content-Type"),
69
+ {
70
+ name: "Content-Type",
71
+ value: mediaType,
72
+ active: true,
73
+ },
74
+ ]);
75
+ } })) : (_jsx("div", {}))] })] })] }), _jsxs(CollapsibleContent, { className: "CollapsibleContent flex flex-col gap-2", children: [bodyMode === "text" && (_jsx(Textarea, { ...register("body"), className: cn("w-full px-4 py-2.5 h-64 font-mono md:text-xs border-none rounded-none focus-visible:ring-0 transition-colors"), placeholder: "Body content" })), bodyMode === "file" && (_jsxs("div", { role: "region", "aria-label": "File upload drop zone", className: cn("flex flex-col items-center justify-center gap-4 min-h-[300px]"), onDragOver: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, children: [_jsx("button", { type: "button", onClick: () => fileInputRef.current?.click(), className: cn("flex items-center justify-center gap-2 rounded-full size-20 p-0 border border-dashed border-muted-foreground/50 hover:bg-accent/75 transition-colors", (file || isDragging) && "border-solid", isDragging && "bg-accent border-primary"), children: _jsx(PaperclipIcon, { className: cn("text-muted-foreground", isDragging && "text-primary"), size: 30 }) }), file ? (_jsxs("div", { className: "flex items-center justify-between gap-2 px-2 py-1.5 rounded-md border", children: [_jsxs("span", { className: "text-sm truncate", title: file.name, children: [file.name, " ", _jsxs("span", { className: "text-muted-foreground", children: ["(", humanFileSize(file.size), ")"] })] }), _jsx(Button, { type: "button", variant: "ghost", size: "icon-xxs", onClick: () => handleFileSelect(null), children: _jsx(XIcon, { size: 14 }) })] })) : (_jsx("span", { className: "text-lg font-semibold text-muted-foreground", children: "Select or drop a file" }))] })), bodyMode === "multipart" && (_jsx(ParamsGrid, { children: manager.fields.map((field, index) => (_jsx(MultipartField, { index: index, manager: manager }, field.id))) }))] })] }));
24
76
  };
25
77
  export default BodyPanel;
26
78
  //# sourceMappingURL=BodyPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BodyPanel.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/BodyPanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAEzC,OAAO,EACL,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAGrD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,OAAO,EAAmC,EAAE,EAAE;IACxE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,cAAc,EAAkB,CAAC;IACvE,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,OAAO,CACL,MAAC,WAAW,IAAC,WAAW,mBACtB,MAAC,wBAAwB,eACvB,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI,EACvB,KAAC,iBAAiB,uBAAyB,EAC1C,OAAO,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAChC,KAAC,gBAAgB,IACf,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE;4BAC/B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;4BACzD,QAAQ,CAAC,SAAS,EAAE;gCAClB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC;gCACnD;oCACE,IAAI,EAAE,cAAc;oCACpB,KAAK,EAAE,SAAS;oCAChB,MAAM,EAAE,IAAI;iCACb;6BACF,CAAC,CAAC;wBACL,CAAC,GACD,CACH,CAAC,CAAC,CAAC,CACF,eAAO,CACR,IACwB,EAC3B,KAAC,kBAAkB,IAAC,SAAS,EAAC,sBAAsB,YAClD,KAAC,QAAQ,OACH,QAAQ,CAAC,MAAM,CAAC,EACpB,SAAS,EAAE,EAAE,CACX,oFAAoF,CACrF,EACD,WAAW,EAAC,mBAAmB,GAC/B,GACiB,IACT,CACf,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"BodyPanel.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/BodyPanel.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { ChevronUpIcon } from "lucide-react";
2
+ import { ChevronsDownUpIcon, ChevronsUpDownIcon } from "lucide-react";
3
3
  import { CollapsibleTrigger } from "zudoku/ui/Collapsible.js";
4
4
  import { cn } from "../../../util/cn.js";
5
5
  export const CollapsibleHeaderTrigger = ({ children, className, }) => {
6
- return (_jsxs("div", { className: cn("grid grid-cols-[max-content_1fr_min-content_max-content] items-center gap-2 group bg-muted w-full h-10 ps-4 pe-2 border-b", className), children: [children, _jsx(CollapsibleTrigger, { className: cn("flex items-center gap-4 group bg-muted w-full p-2 hover:bg-accent hover:brightness-95 rounded-md", className), children: _jsx(ChevronUpIcon, { className: "group-data-[state=open]:rotate-180 transition-transform shrink-0", size: 16 }) })] }));
6
+ return (_jsxs("div", { className: cn("grid grid-cols-[max-content_1fr_max-content] items-center gap-2 group bg-muted w-full h-10 ps-4 pe-2 border-b", className), children: [children, _jsxs(CollapsibleTrigger, { className: cn("flex items-center gap-4 group bg-muted w-full p-2 hover:bg-accent hover:brightness-95 opacity-75 rounded-md", className), children: [_jsx(ChevronsDownUpIcon, { className: "group-data-[state=closed]:hidden shrink-0", size: 14 }), _jsx(ChevronsUpDownIcon, { className: "group-data-[state=open]:hidden shrink-0", size: 14 })] })] }));
7
7
  };
8
8
  export const CollapsibleHeader = ({ children, className, }) => {
9
9
  return (_jsx("span", { className: cn("font-semibold w-full text-start", className), children: children }));
@@ -1 +1 @@
1
- {"version":3,"file":"CollapsibleHeader.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/CollapsibleHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAEzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,QAAQ,EACR,SAAS,GAIV,EAAE,EAAE;IACH,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,2HAA2H,EAC3H,SAAS,CACV,aAEA,QAAQ,EACT,KAAC,kBAAkB,IACjB,SAAS,EAAE,EAAE,CACX,kGAAkG,EAClG,SAAS,CACV,YAED,KAAC,aAAa,IACZ,SAAS,EAAC,kEAAkE,EAC5E,IAAI,EAAE,EAAE,GACR,GACiB,IACjB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,QAAQ,EACR,SAAS,GAIV,EAAE,EAAE;IACH,OAAO,CACL,eAAM,SAAS,EAAE,EAAE,CAAC,iCAAiC,EAAE,SAAS,CAAC,YAC9D,QAAQ,GACJ,CACR,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"CollapsibleHeader.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/CollapsibleHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAEzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,QAAQ,EACR,SAAS,GAIV,EAAE,EAAE;IACH,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,+GAA+G,EAC/G,SAAS,CACV,aAEA,QAAQ,EACT,MAAC,kBAAkB,IACjB,SAAS,EAAE,EAAE,CACX,6GAA6G,EAC7G,SAAS,CACV,aAED,KAAC,kBAAkB,IACjB,SAAS,EAAC,2CAA2C,EACrD,IAAI,EAAE,EAAE,GACR,EACF,KAAC,kBAAkB,IACjB,SAAS,EAAC,yCAAyC,EACnD,IAAI,EAAE,EAAE,GACR,IACiB,IACjB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,QAAQ,EACR,SAAS,GAIV,EAAE,EAAE;IACH,OAAO,CACL,eAAM,SAAS,EAAE,EAAE,CAAC,iCAAiC,EAAE,SAAS,CAAC,YAC9D,QAAQ,GACJ,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -3,7 +3,7 @@ import { PlusCircleIcon } from "lucide-react";
3
3
  import { Button } from "zudoku/ui/Button.js";
4
4
  import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "zudoku/ui/DropdownMenu.js";
5
5
  const ExamplesDropdown = ({ examples, onSelect, }) => {
6
- return (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsxs(Button, { variant: "ghost", size: "sm", className: "hover:bg-accent hover:brightness-95", children: ["Use Example ", _jsx(PlusCircleIcon, { size: 16, className: "ml-2" })] }) }), _jsx(DropdownMenuContent, { className: "max-w-72", children: examples.map((mediaTypeObject) => (_jsxs("div", { children: [_jsx(DropdownMenuLabel, { children: mediaTypeObject.mediaType }), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuGroup, { children: mediaTypeObject.examples?.map((example) => (_jsx(DropdownMenuItem, { onSelect: () => onSelect(example, mediaTypeObject.mediaType), children: _jsx("span", { className: "line-clamp-1", title: example.summary ?? example.name, children: example.summary ?? example.name }) }, example.name))) })] }, mediaTypeObject.mediaType))) })] }));
6
+ return (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsxs(Button, { variant: "ghost", size: "sm", className: "hover:bg-accent hover:brightness-95 gap-2", children: ["Use Example", _jsx(PlusCircleIcon, { size: 14 })] }) }), _jsx(DropdownMenuContent, { className: "max-w-72", children: examples.map((mediaTypeObject) => (_jsxs("div", { children: [_jsx(DropdownMenuLabel, { children: mediaTypeObject.mediaType }), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuGroup, { children: mediaTypeObject.examples?.map((example) => (_jsx(DropdownMenuItem, { onSelect: () => onSelect(example, mediaTypeObject.mediaType), children: _jsx("span", { className: "line-clamp-1", title: example.summary ?? example.name, children: example.summary ?? example.name }) }, example.name))) })] }, mediaTypeObject.mediaType))) })] }));
7
7
  };
8
8
  export default ExamplesDropdown;
9
9
  //# sourceMappingURL=ExamplesDropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExamplesDropdown.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/ExamplesDropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAGnC,MAAM,gBAAgB,GAAG,CAAC,EACxB,QAAQ,EACR,QAAQ,GAIT,EAAE,EAAE;IACH,OAAO,CACL,MAAC,YAAY,eACX,KAAC,mBAAmB,IAAC,OAAO,kBAC1B,MAAC,MAAM,IACL,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,qCAAqC,6BAEnC,KAAC,cAAc,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,MAAM,GAAG,IAClD,GACW,EACtB,KAAC,mBAAmB,IAAC,SAAS,EAAC,UAAU,YACtC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CACjC,0BACE,KAAC,iBAAiB,cAAE,eAAe,CAAC,SAAS,GAAqB,EAClE,KAAC,qBAAqB,KAAG,EACzB,KAAC,iBAAiB,cACf,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAC1C,KAAC,gBAAgB,IAEf,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,YAE5D,eACE,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,YAErC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,GAC3B,IARF,OAAO,CAAC,IAAI,CASA,CACpB,CAAC,GACgB,KAjBZ,eAAe,CAAC,SAAS,CAkB7B,CACP,CAAC,GACkB,IACT,CAChB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"ExamplesDropdown.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/ExamplesDropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAGnC,MAAM,gBAAgB,GAAG,CAAC,EACxB,QAAQ,EACR,QAAQ,GAIT,EAAE,EAAE;IACH,OAAO,CACL,MAAC,YAAY,eACX,KAAC,mBAAmB,IAAC,OAAO,kBAC1B,MAAC,MAAM,IACL,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,2CAA2C,4BAGrD,KAAC,cAAc,IAAC,IAAI,EAAE,EAAE,GAAI,IACrB,GACW,EACtB,KAAC,mBAAmB,IAAC,SAAS,EAAC,UAAU,YACtC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CACjC,0BACE,KAAC,iBAAiB,cAAE,eAAe,CAAC,SAAS,GAAqB,EAClE,KAAC,qBAAqB,KAAG,EACzB,KAAC,iBAAiB,cACf,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAC1C,KAAC,gBAAgB,IAEf,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,YAE5D,eACE,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,YAErC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,GAC3B,IARF,OAAO,CAAC,IAAI,CASA,CACpB,CAAC,GACgB,KAjBZ,eAAe,CAAC,SAAS,CAkB7B,CACP,CAAC,GACkB,IACT,CAChB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -1,73 +1,34 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { CircleAlertIcon, LockIcon, PlusCircleIcon, TableOfContentsIcon, XIcon, } from "lucide-react";
3
- import { useCallback, useEffect, useRef } from "react";
4
- import { Controller, useFieldArray, useFormContext, } from "react-hook-form";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CircleAlertIcon, LockIcon, TableOfContentsIcon } from "lucide-react";
3
+ import { useFormContext } from "react-hook-form";
5
4
  import { Checkbox } from "zudoku/ui/Checkbox.js";
6
5
  import { Collapsible, CollapsibleContent } from "zudoku/ui/Collapsible.js";
7
6
  import { Tooltip, TooltipContent, TooltipTrigger } from "zudoku/ui/Tooltip.js";
8
7
  import { Autocomplete } from "../../../components/Autocomplete.js";
9
- import { Button } from "../../../ui/Button.js";
10
- import { Input } from "../../../ui/Input.js";
11
8
  import { cn } from "../../../util/cn.js";
12
9
  import { CollapsibleHeader, CollapsibleHeaderTrigger, } from "./CollapsibleHeader.js";
13
- import ParamsGrid, { ParamsGridItem } from "./ParamsGrid.js";
10
+ import ParamsGrid, { ParamsGridInput, ParamsGridItem, ParamsGridRemoveButton, } from "./ParamsGrid.js";
11
+ import { useKeyValueFieldManager } from "./request-panel/useKeyValueFieldManager.js";
12
+ // biome-ignore format: Easier to read
14
13
  const headerOptions = Object.freeze([
15
- "Accept",
16
- "Accept-Encoding",
17
- "Accept-Language",
18
- "Authorization",
19
- "Cache-Control",
20
- "Connection",
21
- "Content-Disposition",
22
- "Content-Encoding",
23
- "Content-Language",
24
- "Content-Length",
25
- "Content-Range",
26
- "Content-Security-Policy",
27
- "Content-Type",
28
- "Cookie",
29
- "Date",
30
- "ETag",
31
- "Expires",
32
- "Host",
33
- "If-Modified-Since",
34
- "Location",
35
- "Origin",
36
- "Pragma",
37
- "Referer",
38
- "Set-Cookie",
39
- "User-Agent",
14
+ "Accept", "Accept-Encoding", "Accept-Language", "Authorization", "Cache-Control", "Connection",
15
+ "Content-Disposition", "Content-Encoding", "Content-Language", "Content-Length", "Content-Range",
16
+ "Content-Security-Policy", "Content-Type", "Cookie", "Date", "ETag", "Expires", "Host",
17
+ "If-Modified-Since", "Location", "Origin", "Pragma", "Referer", "Set-Cookie", "User-Agent",
40
18
  "X-Requested-With",
41
19
  ]);
42
20
  export const Headers = ({ control, schemaHeaders, lockedHeaders, }) => {
43
- const { fields, append, remove } = useFieldArray({
21
+ const { watch, formState } = useFormContext();
22
+ const watchedHeaders = watch("headers");
23
+ const manager = useKeyValueFieldManager({
44
24
  control,
45
25
  name: "headers",
26
+ defaultValue: { name: "", value: "", active: false },
46
27
  });
47
- const { setValue, watch, formState } = useFormContext();
48
- const valueRefs = useRef([]);
49
- const nameRefs = useRef([]);
50
- const watchedHeaders = watch("headers");
51
- const addNewHeader = useCallback((e) => {
52
- e?.stopPropagation();
53
- append({ name: "", value: "", active: false }, { shouldFocus: true });
54
- }, [append]);
55
- useEffect(() => {
56
- if (watchedHeaders.length === 0) {
57
- addNewHeader();
58
- }
59
- }, [watchedHeaders, addNewHeader]);
60
- const handleHeaderEnter = (index) => {
61
- valueRefs.current[index]?.focus();
62
- };
63
- const handleValueEnter = (index) => {
64
- addNewHeader();
65
- requestAnimationFrame(() => nameRefs.current[index + 1]?.focus());
66
- };
67
28
  const missingHeaders = schemaHeaders
68
29
  .filter((h) => !watchedHeaders.some((f) => f.name === h.name))
69
30
  .map(({ name }) => name);
70
- const hiddenHeadersIndex = fields.flatMap((f, index) => {
31
+ const hiddenHeadersIndex = manager.fields.flatMap((f, index) => {
71
32
  const keep = !lockedHeaders
72
33
  ?.map((h) => h.toLowerCase())
73
34
  .includes(f.name.toLowerCase());
@@ -80,37 +41,16 @@ export const Headers = ({ control, schemaHeaders, lockedHeaders, }) => {
80
41
  active: true,
81
42
  locked: true,
82
43
  })) ?? [];
83
- return (_jsxs(Collapsible, { defaultOpen: true, children: [_jsxs(CollapsibleHeaderTrigger, { children: [_jsx(TableOfContentsIcon, { size: 16 }), _jsx(CollapsibleHeader, { children: "Headers" }), _jsxs(Button, { onClick: addNewHeader, type: "button", size: "sm", variant: "ghost", className: "hover:bg-accent hover:brightness-95 flex gap-2", children: ["Add header ", _jsx(PlusCircleIcon, { size: 16 })] })] }), _jsx(CollapsibleContent, { className: "CollapsibleContent", children: _jsx("div", { className: "flex flex-col gap-2", children: _jsx("div", { className: "overflow-hidden", children: _jsxs(ParamsGrid, { children: [lockedHeaderFields.map((field) => {
84
- return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsxs(ParamsGridItem, { className: "opacity-50 cursor-not-allowed font-mono text-xs min-h-10", children: [_jsx(LockIcon, { size: 16 }), _jsx(Input, { value: field.name, disabled: true, className: "w-full border-0 p-0 m-0 shadow-none text-xs focus-visible:ring-0 font-mono" }), _jsx("div", { children: field.value })] }, field.id) }), _jsx(TooltipContent, { alignOffset: 10, side: "bottom", align: "start", children: _jsx("p", { children: "This header is set by the selected authentication." }) })] }, field.id));
85
- }), fields.map((field, i) => {
44
+ return (_jsxs(Collapsible, { defaultOpen: true, children: [_jsxs(CollapsibleHeaderTrigger, { children: [_jsx(TableOfContentsIcon, { size: 14 }), _jsx(CollapsibleHeader, { children: "Headers" })] }), _jsx(CollapsibleContent, { className: "CollapsibleContent", children: _jsx("div", { className: "flex flex-col gap-2", children: _jsx("div", { className: "overflow-hidden", children: _jsxs(ParamsGrid, { children: [lockedHeaderFields.map((field) => (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsxs(ParamsGridItem, { className: "opacity-50 cursor-not-allowed font-mono text-xs min-h-10", children: [_jsx(LockIcon, { size: 16 }), _jsx(ParamsGridInput, { value: field.name, disabled: true }), _jsx("div", { children: field.value })] }, field.id) }), _jsx(TooltipContent, { alignOffset: 10, side: "bottom", align: "start", children: _jsx("p", { children: "This header is set by the selected authentication." }) })] }, field.id))), manager.fields.map((field, i) => {
86
45
  const currentSchemaHeader = schemaHeaders.find((h) => h.name === watchedHeaders.at(i)?.name);
87
- return (_jsxs(ParamsGridItem, { className: cn(hiddenHeadersIndex.includes(i) && "text-amber-600", hiddenHeadersIndex.includes(i) &&
46
+ const hasEnum = currentSchemaHeader?.enum &&
47
+ currentSchemaHeader.enum.length > 0;
48
+ const isHidden = hiddenHeadersIndex.includes(i);
49
+ const nameInputProps = manager.getNameInputProps(i);
50
+ const valueInputProps = manager.getValueInputProps(i);
51
+ return (_jsxs(ParamsGridItem, { className: cn(isHidden && "text-amber-600", isHidden &&
88
52
  !formState.dirtyFields.headers?.[i]?.value &&
89
- "hidden"), children: [_jsx(Controller, { control: control, name: `headers.${i}.active`, render: ({ field }) => (_jsxs(_Fragment, { children: [_jsx(Checkbox, { id: `headers.${i}.active`, className: cn(hiddenHeadersIndex.includes(i) && "hidden"), checked: field.value, onCheckedChange: (checked) => {
90
- field.onChange(checked);
91
- } }), _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(CircleAlertIcon, { className: cn("text-amber-600", !hiddenHeadersIndex.includes(i) && "hidden"), size: 16 }) }), _jsx(TooltipContent, { alignOffset: 10, side: "bottom", align: "start", children: _jsx("p", { children: "This header will be overwritten by the selected authentication." }) })] })] })) }), _jsx(Controller, { control: control, name: `headers.${i}.name`, render: ({ field }) => (_jsx(Autocomplete, { ...field, placeholder: "Name", className: "border-0 p-0 m-0 shadow-none focus-visible:ring-0 bg-transparent hover:bg-transparent text-xs font-mono", options: [...missingHeaders, ...headerOptions], onEnterPress: () => handleHeaderEnter(i), onChange: (e) => {
92
- field.onChange(e);
93
- setValue(`headers.${i}.active`, true);
94
- }, ref: (el) => {
95
- nameRefs.current[i] = el;
96
- } })) }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Controller, { control: control, name: `headers.${i}.value`, render: ({ field }) => {
97
- const hasEnum = currentSchemaHeader?.enum &&
98
- currentSchemaHeader.enum.length > 0;
99
- if (!hasEnum) {
100
- return (_jsx(Input, { placeholder: "Value", className: "w-full truncate border-0 p-0 m-0 shadow-none text-xs focus-visible:ring-0 font-mono", autoComplete: "off", ...field, ref: (el) => {
101
- valueRefs.current[i] = el;
102
- }, onKeyDown: (e) => {
103
- if (e.key === "Enter" &&
104
- e.currentTarget.value.trim()) {
105
- handleValueEnter(i);
106
- }
107
- } }));
108
- }
109
- return (_jsx(Autocomplete, { shouldFilter: false, value: field.value, options: currentSchemaHeader.enum ?? [], onChange: (e) => {
110
- field.onChange(e);
111
- setValue(`headers.${i}.active`, true);
112
- }, className: "border-0 p-0 m-0 shadow-none focus-visible:ring-0 bg-transparent hover:bg-transparent text-xs font-mono" }));
113
- } }), _jsx(Button, { size: "icon-xs", variant: "ghost", className: "text-muted-foreground opacity-0 group-hover:brightness-95 group-hover:opacity-100", onClick: () => remove(i), type: "button", children: _jsx(XIcon, { size: 16 }) })] })] }, field.id));
53
+ "hidden"), children: [_jsx(Checkbox, { className: cn(isHidden && "hidden"), ...manager.getCheckboxProps(i) }), _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(CircleAlertIcon, { className: cn("text-amber-600", !isHidden && "hidden"), size: 16 }) }), _jsx(TooltipContent, { alignOffset: 10, side: "bottom", align: "start", children: _jsx("p", { children: "This header will be overwritten by the selected authentication." }) })] }), _jsx(ParamsGridInput, { asChild: true, children: _jsx(Autocomplete, { ...nameInputProps, value: String(manager.getValue(i, "name")), placeholder: "Name", options: [...missingHeaders, ...headerOptions], onChange: (v) => manager.setValue(i, "name", v), onSelect: (v) => manager.setValue(i, "name", v, { focus: "next" }) }) }), _jsxs("div", { className: "flex items-center gap-2", children: [!hasEnum ? (_jsx(ParamsGridInput, { placeholder: "Value", autoComplete: "off", ...valueInputProps })) : (_jsx(ParamsGridInput, { asChild: true, children: _jsx(Autocomplete, { ...valueInputProps, value: String(manager.getValue(i, "value")), shouldFilter: false, options: currentSchemaHeader.enum ?? [], onChange: (v) => manager.setValue(i, "value", v), onSelect: (v) => manager.setValue(i, "value", v, { focus: "next" }) }) })), _jsx(ParamsGridRemoveButton, { ...manager.getRemoveButtonProps(i) })] })] }, field.id));
114
54
  })] }) }) }) })] }));
115
55
  };
116
56
  //# sourceMappingURL=Headers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Headers.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/Headers.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Headers.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/Headers.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,17 @@
1
1
  declare const ParamsGrid: import("react").ForwardRefExoticComponent<Omit<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
2
2
  className?: import("clsx").ClassValue;
3
3
  asChild?: boolean;
4
- }, "ref"> & import("react").RefAttributes<HTMLElement>>;
4
+ }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
5
5
  export declare const ParamsGridItem: import("react").ForwardRefExoticComponent<Omit<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
6
6
  className?: import("clsx").ClassValue;
7
7
  asChild?: boolean;
8
- }, "ref"> & import("react").RefAttributes<HTMLElement>>;
8
+ }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
9
+ export declare const ParamsGridInput: import("react").ForwardRefExoticComponent<Omit<import("react").InputHTMLAttributes<HTMLInputElement> & import("react").RefAttributes<HTMLInputElement> & {
10
+ className?: import("clsx").ClassValue;
11
+ asChild?: boolean;
12
+ }, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
13
+ export declare const ParamsGridRemoveButton: ({ onClick, className, }: {
14
+ onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;
15
+ className?: string;
16
+ }) => import("react/jsx-runtime").JSX.Element;
9
17
  export default ParamsGrid;
@@ -1,5 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { XIcon } from "lucide-react";
3
+ import { Button } from "zudoku/components";
4
+ import { Input } from "zudoku/ui/Input.js";
5
+ import { cn } from "../../../util/cn.js";
1
6
  import createVariantComponent from "../../../util/createVariantComponent.js";
2
- const ParamsGrid = createVariantComponent("div", "grid grid-cols-[min-content_2fr_3fr] items-center gap-x-5");
7
+ const ParamsGrid = createVariantComponent("div", "grid grid-cols-[min-content_2fr_3fr] items-center gap-x-5 [&>*:last-child_[data-slot=remove-button]]:invisible");
3
8
  export const ParamsGridItem = createVariantComponent("div", "group h-9 hover:bg-accent/75 ps-4 pe-2 grid col-span-full grid-cols-subgrid items-center border-b");
9
+ export const ParamsGridInput = createVariantComponent(Input, "w-full truncate border-0 p-0 m-0 shadow-none text-xs focus-visible:ring-0 font-mono");
10
+ export const ParamsGridRemoveButton = ({ onClick, className, }) => (_jsx(Button, { size: "icon-xs", variant: "ghost", className: cn("text-muted-foreground opacity-0 group-hover:brightness-95 focus-visible:opacity-100 group-hover:opacity-100", className), onClick: onClick, type: "button", "data-slot": "remove-button", children: _jsx(XIcon, { size: 14 }) }));
4
11
  export default ParamsGrid;
5
12
  //# sourceMappingURL=ParamsGrid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParamsGrid.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/ParamsGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,MAAM,yCAAyC,CAAC;AAE7E,MAAM,UAAU,GAAG,sBAAsB,CACvC,KAAK,EACL,2DAA2D,CAC5D,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAClD,KAAK,EACL,mGAAmG,CACpG,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ParamsGrid.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/ParamsGrid.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,sBAAsB,MAAM,yCAAyC,CAAC;AAE7E,MAAM,UAAU,GAAG,sBAAsB,CACvC,KAAK,EACL,gHAAgH,CACjH,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAClD,KAAK,EACL,mGAAmG,CACpG,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CACnD,KAAK,EACL,qFAAqF,CACtF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,OAAO,EACP,SAAS,GAIV,EAAE,EAAE,CAAC,CACJ,KAAC,MAAM,IACL,IAAI,EAAC,SAAS,EACd,OAAO,EAAC,OAAO,EACf,SAAS,EAAE,EAAE,CACX,6GAA6G,EAC7G,SAAS,CACV,EACD,OAAO,EAAE,OAAO,EAChB,IAAI,EAAC,QAAQ,eAEH,eAAe,YAEzB,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,GAAI,GACZ,CACV,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,14 +1,13 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Controller, useFieldArray } from "react-hook-form";
3
- import { Input } from "../../../ui/Input.js";
4
3
  import { ColorizedParam } from "../ColorizedParam.js";
5
- import ParamsGrid, { ParamsGridItem } from "./ParamsGrid.js";
4
+ import ParamsGrid, { ParamsGridInput, ParamsGridItem } from "./ParamsGrid.js";
6
5
  export const PathParams = ({ control, url, }) => {
7
6
  const { fields } = useFieldArray({
8
7
  control,
9
8
  name: "pathParams",
10
9
  });
11
10
  const sortedFields = [...fields].sort((a, b) => url.indexOf(`{${a.name}}`) - url.indexOf(`{${b.name}}`));
12
- return (_jsx("div", { className: "overflow-hidden", children: _jsx(ParamsGrid, { children: sortedFields.map((field, i) => (_jsxs(ParamsGridItem, { children: [_jsx(Controller, { control: control, name: `pathParams.${i}.name`, render: () => (_jsx("div", { className: "flex items-center", children: _jsx(ColorizedParam, { slug: field.name, name: field.name, className: "font-mono text-xs px-2" }) })) }), _jsx("div", { className: "flex justify-between items-center col-span-2", children: _jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsx(Input, { ...field, required: true, placeholder: "Value", className: "w-full truncate border-0 p-0 m-0 shadow-none text-xs font-mono focus-visible:ring-0" })) }) })] }, field.id))) }) }));
11
+ return (_jsx(ParamsGrid, { children: sortedFields.map((field, i) => (_jsxs(ParamsGridItem, { children: [_jsx(Controller, { control: control, name: `pathParams.${i}.name`, render: () => (_jsx("div", { className: "flex items-center", children: _jsx(ColorizedParam, { slug: field.name, name: field.name, className: "font-mono text-xs px-2" }) })) }), _jsx("div", { className: "flex justify-between items-center col-span-2", children: _jsx(Controller, { control: control, name: `pathParams.${i}.value`, render: ({ field }) => (_jsx(ParamsGridInput, { ...field, required: true, placeholder: "Value" })) }) })] }, field.id))) }));
13
12
  };
14
13
  //# 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,EAAgB,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,UAAU,EAAE,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG7D,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,OAAO,EACP,GAAG,GAIJ,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAA+B;QAC7D,OAAO;QACP,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CACnC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAClE,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,iBAAiB,YAC9B,KAAC,UAAU,cACR,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAC9B,MAAC,cAAc,eACb,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,OAAO,EAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,CACZ,cAAK,SAAS,EAAC,mBAAmB,YAChC,KAAC,cAAc,IACb,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,SAAS,EAAC,wBAAwB,GAClC,GACE,CACP,GACD,EAEF,cAAK,SAAS,EAAC,8CAA8C,YAC3D,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,OAAO,EACnB,SAAS,EAAC,qFAAqF,GAC/F,CACH,GACD,GACE,KA5Ba,KAAK,CAAC,EAAE,CA6BZ,CAClB,CAAC,GACS,GACT,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"PathParams.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/playground/PathParams.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAgB,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,UAAU,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG9E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,OAAO,EACP,GAAG,GAIJ,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAA+B;QAC7D,OAAO;QACP,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CACnC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAClE,CAAC;IAEF,OAAO,CACL,KAAC,UAAU,cACR,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAC9B,MAAC,cAAc,eACb,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,OAAO,EAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,CACZ,cAAK,SAAS,EAAC,mBAAmB,YAChC,KAAC,cAAc,IACb,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,SAAS,EAAC,wBAAwB,GAClC,GACE,CACP,GACD,EAEF,cAAK,SAAS,EAAC,8CAA8C,YAC3D,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,EAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,KAAC,eAAe,OAAK,KAAK,EAAE,QAAQ,QAAC,WAAW,EAAC,OAAO,GAAG,CAC5D,GACD,GACE,KAvBa,KAAK,CAAC,EAAE,CAwBZ,CAClB,CAAC,GACS,CACd,CAAC;AACJ,CAAC,CAAC"}
@@ -23,6 +23,13 @@ export type PathParam = {
23
23
  };
24
24
  export type PlaygroundForm = {
25
25
  body: string;
26
+ bodyMode?: "text" | "file" | "multipart";
27
+ file?: File | null;
28
+ multipartFormFields: Array<{
29
+ name: string;
30
+ value: File | string;
31
+ active: boolean;
32
+ }>;
26
33
  queryParams: Array<{
27
34
  name: string;
28
35
  value: string;