zudoku 0.0.0-fdf886de → 0.0.0-fe92c9e1

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 (1220) hide show
  1. package/README.md +32 -12
  2. package/cli.js +1 -0
  3. package/client.d.ts +8 -0
  4. package/dist/app/ZuploBuildConfig.d.ts +1 -1
  5. package/dist/app/ZuploBuildConfig.js +1 -1
  6. package/dist/app/ZuploBuildConfig.js.map +1 -1
  7. package/dist/app/entry.client.js +5 -4
  8. package/dist/app/entry.client.js.map +1 -1
  9. package/dist/app/entry.server.js +16 -3
  10. package/dist/app/entry.server.js.map +1 -1
  11. package/dist/app/env.js +6 -6
  12. package/dist/app/env.js.map +1 -1
  13. package/dist/app/main.d.ts +91 -1
  14. package/dist/app/main.js +5 -1
  15. package/dist/app/main.js.map +1 -1
  16. package/dist/app/standalone.js +4 -1
  17. package/dist/app/standalone.js.map +1 -1
  18. package/dist/cli/cli.d.ts +9 -0
  19. package/dist/cli/cli.js +5 -10
  20. package/dist/cli/cli.js.map +1 -1
  21. package/dist/cli/cmds/build.d.ts +1 -1
  22. package/dist/cli/cmds/dev.d.ts +1 -1
  23. package/dist/cli/cmds/preview.d.ts +1 -1
  24. package/dist/cli/common/analytics/lib.js +1 -1
  25. package/dist/cli/common/analytics/lib.js.map +1 -1
  26. package/dist/cli/common/logger.js +0 -1
  27. package/dist/cli/common/logger.js.map +1 -1
  28. package/dist/cli/common/machine-id/lib.js +3 -2
  29. package/dist/cli/common/machine-id/lib.js.map +1 -1
  30. package/dist/cli/common/outdated.js +2 -1
  31. package/dist/cli/common/outdated.js.map +1 -1
  32. package/dist/cli/common/output.js +2 -3
  33. package/dist/cli/common/output.js.map +1 -1
  34. package/dist/cli/common/utils/box.js +2 -2
  35. package/dist/cli/common/utils/box.js.map +1 -1
  36. package/dist/cli/common/validators/lib.js +1 -1
  37. package/dist/cli/common/validators/lib.js.map +1 -1
  38. package/dist/cli/common/version-check.d.ts +2 -0
  39. package/dist/cli/common/version-check.js +58 -0
  40. package/dist/cli/common/version-check.js.map +1 -0
  41. package/dist/cli/dev/handler.js +0 -4
  42. package/dist/cli/dev/handler.js.map +1 -1
  43. package/dist/codegen.js +2 -2
  44. package/dist/codegen.js.map +1 -1
  45. package/dist/config/config.d.ts +15 -41
  46. package/dist/config/loader.js.map +1 -1
  47. package/dist/config/validators/BuildSchema.d.ts +16 -8
  48. package/dist/config/validators/BuildSchema.js +22 -5
  49. package/dist/config/validators/BuildSchema.js.map +1 -1
  50. package/dist/config/validators/InputNavigationSchema.d.ts +260 -78
  51. package/dist/config/validators/InputNavigationSchema.js +5 -2
  52. package/dist/config/validators/InputNavigationSchema.js.map +1 -1
  53. package/dist/config/validators/InputNavigationSchema.test-d.js +2 -1
  54. package/dist/config/validators/InputNavigationSchema.test-d.js.map +1 -1
  55. package/dist/config/validators/NavigationSchema.d.ts +1 -1
  56. package/dist/config/validators/NavigationSchema.js +2 -2
  57. package/dist/config/validators/NavigationSchema.js.map +1 -1
  58. package/dist/config/validators/ProtectedRoutesSchema.d.ts +2 -2
  59. package/dist/config/validators/ProtectedRoutesSchema.js +1 -1
  60. package/dist/config/validators/ProtectedRoutesSchema.js.map +1 -1
  61. package/dist/config/validators/auth.d.ts +2 -2
  62. package/dist/config/validators/auth.js +1 -1
  63. package/dist/config/validators/auth.js.map +1 -1
  64. package/dist/config/validators/icon-types.d.ts +1 -1
  65. package/dist/config/validators/icon-types.js +43 -0
  66. package/dist/config/validators/icon-types.js.map +1 -1
  67. package/dist/config/validators/validate.d.ts +202 -20
  68. package/dist/config/validators/validate.js +70 -11
  69. package/dist/config/validators/validate.js.map +1 -1
  70. package/dist/config/validators/validate.test.js +1 -2
  71. package/dist/config/validators/validate.test.js.map +1 -1
  72. package/dist/flat-config.d.ts +52 -3
  73. package/dist/index.d.ts +5 -5
  74. package/dist/index.js +2 -2
  75. package/dist/index.js.map +1 -1
  76. package/dist/lib/MissingIcon.d.ts +1 -1
  77. package/dist/lib/MissingIcon.js.map +1 -1
  78. package/dist/lib/assets/language-icons/c.d.ts +3 -0
  79. package/dist/lib/assets/language-icons/c.js +4 -0
  80. package/dist/lib/assets/language-icons/c.js.map +1 -0
  81. package/dist/lib/assets/language-icons/commonlisp.d.ts +3 -0
  82. package/dist/lib/assets/language-icons/commonlisp.js +4 -0
  83. package/dist/lib/assets/language-icons/commonlisp.js.map +1 -0
  84. package/dist/lib/assets/language-icons/cpp.d.ts +3 -0
  85. package/dist/lib/assets/language-icons/cpp.js +4 -0
  86. package/dist/lib/assets/language-icons/cpp.js.map +1 -0
  87. package/dist/lib/assets/language-icons/csharp.d.ts +3 -0
  88. package/dist/lib/assets/language-icons/csharp.js +4 -0
  89. package/dist/lib/assets/language-icons/csharp.js.map +1 -0
  90. package/dist/lib/assets/language-icons/css.d.ts +3 -0
  91. package/dist/lib/assets/language-icons/css.js +4 -0
  92. package/dist/lib/assets/language-icons/css.js.map +1 -0
  93. package/dist/lib/assets/language-icons/dart.d.ts +3 -0
  94. package/dist/lib/assets/language-icons/dart.js +4 -0
  95. package/dist/lib/assets/language-icons/dart.js.map +1 -0
  96. package/dist/lib/assets/language-icons/elixir.d.ts +3 -0
  97. package/dist/lib/assets/language-icons/elixir.js +4 -0
  98. package/dist/lib/assets/language-icons/elixir.js.map +1 -0
  99. package/dist/lib/assets/language-icons/go.d.ts +3 -0
  100. package/dist/lib/assets/language-icons/go.js +4 -0
  101. package/dist/lib/assets/language-icons/go.js.map +1 -0
  102. package/dist/lib/assets/language-icons/graphql.d.ts +3 -0
  103. package/dist/lib/assets/language-icons/graphql.js +4 -0
  104. package/dist/lib/assets/language-icons/graphql.js.map +1 -0
  105. package/dist/lib/assets/language-icons/html.d.ts +3 -0
  106. package/dist/lib/assets/language-icons/html.js +4 -0
  107. package/dist/lib/assets/language-icons/html.js.map +1 -0
  108. package/dist/lib/assets/language-icons/java.d.ts +3 -0
  109. package/dist/lib/assets/language-icons/java.js +4 -0
  110. package/dist/lib/assets/language-icons/java.js.map +1 -0
  111. package/dist/lib/assets/language-icons/javascript.d.ts +3 -0
  112. package/dist/lib/assets/language-icons/javascript.js +4 -0
  113. package/dist/lib/assets/language-icons/javascript.js.map +1 -0
  114. package/dist/lib/assets/language-icons/json.d.ts +3 -0
  115. package/dist/lib/assets/language-icons/json.js +4 -0
  116. package/dist/lib/assets/language-icons/json.js.map +1 -0
  117. package/dist/lib/assets/language-icons/kotlin.d.ts +3 -0
  118. package/dist/lib/assets/language-icons/kotlin.js +4 -0
  119. package/dist/lib/assets/language-icons/kotlin.js.map +1 -0
  120. package/dist/lib/assets/language-icons/markdown.d.ts +3 -0
  121. package/dist/lib/assets/language-icons/markdown.js +4 -0
  122. package/dist/lib/assets/language-icons/markdown.js.map +1 -0
  123. package/dist/lib/assets/language-icons/mdx.d.ts +3 -0
  124. package/dist/lib/assets/language-icons/mdx.js +4 -0
  125. package/dist/lib/assets/language-icons/mdx.js.map +1 -0
  126. package/dist/lib/assets/language-icons/objectivec.d.ts +3 -0
  127. package/dist/lib/assets/language-icons/objectivec.js +4 -0
  128. package/dist/lib/assets/language-icons/objectivec.js.map +1 -0
  129. package/dist/lib/assets/language-icons/ocaml.d.ts +3 -0
  130. package/dist/lib/assets/language-icons/ocaml.js +4 -0
  131. package/dist/lib/assets/language-icons/ocaml.js.map +1 -0
  132. package/dist/lib/assets/language-icons/php.d.ts +3 -0
  133. package/dist/lib/assets/language-icons/php.js +4 -0
  134. package/dist/lib/assets/language-icons/php.js.map +1 -0
  135. package/dist/lib/assets/language-icons/powershell.d.ts +3 -0
  136. package/dist/lib/assets/language-icons/powershell.js +4 -0
  137. package/dist/lib/assets/language-icons/powershell.js.map +1 -0
  138. package/dist/lib/assets/language-icons/python.d.ts +3 -0
  139. package/dist/lib/assets/language-icons/python.js +4 -0
  140. package/dist/lib/assets/language-icons/python.js.map +1 -0
  141. package/dist/lib/assets/language-icons/react.d.ts +3 -0
  142. package/dist/lib/assets/language-icons/react.js +4 -0
  143. package/dist/lib/assets/language-icons/react.js.map +1 -0
  144. package/dist/lib/assets/language-icons/ruby.d.ts +3 -0
  145. package/dist/lib/assets/language-icons/ruby.js +4 -0
  146. package/dist/lib/assets/language-icons/ruby.js.map +1 -0
  147. package/dist/lib/assets/language-icons/rust.d.ts +3 -0
  148. package/dist/lib/assets/language-icons/rust.js +4 -0
  149. package/dist/lib/assets/language-icons/rust.js.map +1 -0
  150. package/dist/lib/assets/language-icons/scala.d.ts +3 -0
  151. package/dist/lib/assets/language-icons/scala.js +4 -0
  152. package/dist/lib/assets/language-icons/scala.js.map +1 -0
  153. package/dist/lib/assets/language-icons/shell.d.ts +3 -0
  154. package/dist/lib/assets/language-icons/shell.js +4 -0
  155. package/dist/lib/assets/language-icons/shell.js.map +1 -0
  156. package/dist/lib/assets/language-icons/swift.d.ts +3 -0
  157. package/dist/lib/assets/language-icons/swift.js +4 -0
  158. package/dist/lib/assets/language-icons/swift.js.map +1 -0
  159. package/dist/lib/assets/language-icons/toml.d.ts +3 -0
  160. package/dist/lib/assets/language-icons/toml.js +4 -0
  161. package/dist/lib/assets/language-icons/toml.js.map +1 -0
  162. package/dist/lib/assets/language-icons/typescript.d.ts +3 -0
  163. package/dist/lib/assets/language-icons/typescript.js +4 -0
  164. package/dist/lib/assets/language-icons/typescript.js.map +1 -0
  165. package/dist/lib/assets/language-icons/xml.d.ts +3 -0
  166. package/dist/lib/assets/language-icons/xml.js +4 -0
  167. package/dist/lib/assets/language-icons/xml.js.map +1 -0
  168. package/dist/lib/assets/language-icons/yaml.d.ts +3 -0
  169. package/dist/lib/assets/language-icons/yaml.js +4 -0
  170. package/dist/lib/assets/language-icons/yaml.js.map +1 -0
  171. package/dist/lib/assets/language-icons/zig.d.ts +3 -0
  172. package/dist/lib/assets/language-icons/zig.js +4 -0
  173. package/dist/lib/assets/language-icons/zig.js.map +1 -0
  174. package/dist/lib/auth/issuer.js +3 -0
  175. package/dist/lib/auth/issuer.js.map +1 -1
  176. package/dist/lib/auth/issuer.test.js +1 -0
  177. package/dist/lib/auth/issuer.test.js.map +1 -1
  178. package/dist/lib/authentication/AuthenticationPlugin.d.ts +1 -1
  179. package/dist/lib/authentication/authentication.d.ts +19 -13
  180. package/dist/lib/authentication/components/OAuthErrorPage.d.ts +1 -1
  181. package/dist/lib/authentication/components/OAuthErrorPage.js +1 -1
  182. package/dist/lib/authentication/components/OAuthErrorPage.js.map +1 -1
  183. package/dist/lib/authentication/components/SignIn.js +6 -5
  184. package/dist/lib/authentication/components/SignIn.js.map +1 -1
  185. package/dist/lib/authentication/components/SignOut.js +6 -6
  186. package/dist/lib/authentication/components/SignOut.js.map +1 -1
  187. package/dist/lib/authentication/components/SignUp.js +5 -5
  188. package/dist/lib/authentication/components/SignUp.js.map +1 -1
  189. package/dist/lib/authentication/hook.d.ts +3 -2
  190. package/dist/lib/authentication/hook.js +12 -8
  191. package/dist/lib/authentication/hook.js.map +1 -1
  192. package/dist/lib/authentication/providers/auth0.d.ts +2 -2
  193. package/dist/lib/authentication/providers/auth0.js +9 -5
  194. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  195. package/dist/lib/authentication/providers/azureb2c.d.ts +5 -5
  196. package/dist/lib/authentication/providers/azureb2c.js +3 -3
  197. package/dist/lib/authentication/providers/azureb2c.js.map +1 -1
  198. package/dist/lib/authentication/providers/clerk.d.ts +2 -2
  199. package/dist/lib/authentication/providers/clerk.js +2 -2
  200. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  201. package/dist/lib/authentication/providers/firebase.d.ts +4 -0
  202. package/dist/lib/authentication/providers/firebase.js +215 -0
  203. package/dist/lib/authentication/providers/firebase.js.map +1 -0
  204. package/dist/lib/authentication/providers/openid.d.ts +8 -8
  205. package/dist/lib/authentication/providers/openid.js +5 -3
  206. package/dist/lib/authentication/providers/openid.js.map +1 -1
  207. package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.d.ts +8 -0
  208. package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.js +39 -0
  209. package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.js.map +1 -0
  210. package/dist/lib/authentication/providers/supabase.d.ts +2 -2
  211. package/dist/lib/authentication/providers/supabase.js +30 -30
  212. package/dist/lib/authentication/providers/supabase.js.map +1 -1
  213. package/dist/lib/authentication/state.d.ts +5 -7
  214. package/dist/lib/authentication/state.js +2 -14
  215. package/dist/lib/authentication/state.js.map +1 -1
  216. package/dist/lib/authentication/ui/ZudokuAuthUi.d.ts +24 -0
  217. package/dist/lib/authentication/ui/ZudokuAuthUi.js +124 -0
  218. package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -0
  219. package/dist/lib/authentication/ui/icons/Apple.d.ts +3 -0
  220. package/dist/lib/authentication/ui/icons/Apple.js +4 -0
  221. package/dist/lib/authentication/ui/icons/Apple.js.map +1 -0
  222. package/dist/lib/authentication/ui/icons/Facebook.d.ts +3 -0
  223. package/dist/lib/authentication/ui/icons/Facebook.js +4 -0
  224. package/dist/lib/authentication/ui/icons/Facebook.js.map +1 -0
  225. package/dist/lib/authentication/ui/icons/Github.d.ts +3 -0
  226. package/dist/lib/authentication/ui/icons/Github.js +4 -0
  227. package/dist/lib/authentication/ui/icons/Github.js.map +1 -0
  228. package/dist/lib/authentication/ui/icons/Google.d.ts +3 -0
  229. package/dist/lib/authentication/ui/icons/Google.js +4 -0
  230. package/dist/lib/authentication/ui/icons/Google.js.map +1 -0
  231. package/dist/lib/authentication/ui/icons/Microsoft.d.ts +3 -0
  232. package/dist/lib/authentication/ui/icons/Microsoft.js +4 -0
  233. package/dist/lib/authentication/ui/icons/Microsoft.js.map +1 -0
  234. package/dist/lib/authentication/ui/icons/X.d.ts +3 -0
  235. package/dist/lib/authentication/ui/icons/X.js +4 -0
  236. package/dist/lib/authentication/ui/icons/X.js.map +1 -0
  237. package/dist/lib/authentication/use-broadcast/shared.d.ts +1 -1
  238. package/dist/lib/authentication/use-broadcast/shared.js +3 -3
  239. package/dist/lib/authentication/use-broadcast/shared.js.map +1 -1
  240. package/dist/lib/authentication/use-broadcast/useBroadcast.js +2 -2
  241. package/dist/lib/authentication/use-broadcast/useBroadcast.js.map +1 -1
  242. package/dist/lib/components/Autocomplete.d.ts +3 -1
  243. package/dist/lib/components/Autocomplete.js +6 -2
  244. package/dist/lib/components/Autocomplete.js.map +1 -1
  245. package/dist/lib/components/Bootstrap.js.map +1 -1
  246. package/dist/lib/components/BuildCheck.js +4 -3
  247. package/dist/lib/components/BuildCheck.js.map +1 -1
  248. package/dist/lib/components/Header.js +1 -3
  249. package/dist/lib/components/Header.js.map +1 -1
  250. package/dist/lib/components/Heading.d.ts +2 -2
  251. package/dist/lib/components/Heading.js +2 -6
  252. package/dist/lib/components/Heading.js.map +1 -1
  253. package/dist/lib/components/LanguageIcon.d.ts +3 -0
  254. package/dist/lib/components/LanguageIcon.js +163 -0
  255. package/dist/lib/components/LanguageIcon.js.map +1 -0
  256. package/dist/lib/components/Layout.js.map +1 -1
  257. package/dist/lib/components/Main.js +1 -1
  258. package/dist/lib/components/Main.js.map +1 -1
  259. package/dist/lib/components/Markdown.js +2 -2
  260. package/dist/lib/components/Markdown.js.map +1 -1
  261. package/dist/lib/components/Meta.js +1 -1
  262. package/dist/lib/components/Meta.js.map +1 -1
  263. package/dist/lib/components/MobileTopNavigation.js +4 -4
  264. package/dist/lib/components/MobileTopNavigation.js.map +1 -1
  265. package/dist/lib/components/PathRenderer.js +1 -1
  266. package/dist/lib/components/PathRenderer.js.map +1 -1
  267. package/dist/lib/components/Search.js +1 -1
  268. package/dist/lib/components/Search.js.map +1 -1
  269. package/dist/lib/components/Slot.js.map +1 -1
  270. package/dist/lib/components/Slot.test.js +7 -3
  271. package/dist/lib/components/Slot.test.js.map +1 -1
  272. package/dist/lib/components/TopNavigation.d.ts +1 -1
  273. package/dist/lib/components/TopNavigation.js +2 -2
  274. package/dist/lib/components/TopNavigation.js.map +1 -1
  275. package/dist/lib/components/Zudoku.js +5 -5
  276. package/dist/lib/components/Zudoku.js.map +1 -1
  277. package/dist/lib/components/cache.d.ts +3 -1
  278. package/dist/lib/components/cache.js +3 -5
  279. package/dist/lib/components/cache.js.map +1 -1
  280. package/dist/lib/components/context/ComponentsContext.js.map +1 -1
  281. package/dist/lib/components/context/RouterEventsEmitter.js.map +1 -1
  282. package/dist/lib/components/context/SlotProvider.js.map +1 -1
  283. package/dist/lib/components/context/ViewportAnchorContext.js +1 -1
  284. package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
  285. package/dist/lib/components/context/ZudokuContext.d.ts +1 -1
  286. package/dist/lib/components/context/ZudokuContext.js +10 -2
  287. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  288. package/dist/lib/components/context/ZudokuProvider.d.ts +1 -1
  289. package/dist/lib/components/index.d.ts +14 -4
  290. package/dist/lib/components/index.js +3 -1
  291. package/dist/lib/components/index.js.map +1 -1
  292. package/dist/lib/components/navigation/NavigationCategory.js +6 -1
  293. package/dist/lib/components/navigation/NavigationCategory.js.map +1 -1
  294. package/dist/lib/components/navigation/NavigationItem.js +3 -3
  295. package/dist/lib/components/navigation/NavigationItem.js.map +1 -1
  296. package/dist/lib/components/navigation/NavigationWrapper.js.map +1 -1
  297. package/dist/lib/components/navigation/Toc.js +1 -1
  298. package/dist/lib/components/navigation/Toc.js.map +1 -1
  299. package/dist/lib/components/navigation/ZudokuLogo.d.ts +1 -1
  300. package/dist/lib/components/navigation/utils.d.ts +3 -3
  301. package/dist/lib/components/navigation/utils.js +1 -2
  302. package/dist/lib/components/navigation/utils.js.map +1 -1
  303. package/dist/lib/core/RouteGuard.d.ts +1 -1
  304. package/dist/lib/core/RouteGuard.js +12 -20
  305. package/dist/lib/core/RouteGuard.js.map +1 -1
  306. package/dist/lib/core/ZudokuContext.d.ts +2 -1
  307. package/dist/lib/core/ZudokuContext.js +3 -0
  308. package/dist/lib/core/ZudokuContext.js.map +1 -1
  309. package/dist/lib/core/__internal.d.ts +1 -1
  310. package/dist/lib/errors/ErrorAlert.js +1 -2
  311. package/dist/lib/errors/ErrorAlert.js.map +1 -1
  312. package/dist/lib/errors/RouterError.d.ts +3 -1
  313. package/dist/lib/errors/RouterError.js +3 -2
  314. package/dist/lib/errors/RouterError.js.map +1 -1
  315. package/dist/lib/errors/TopLevelError.d.ts +2 -2
  316. package/dist/lib/errors/TopLevelError.js +1 -2
  317. package/dist/lib/errors/TopLevelError.js.map +1 -1
  318. package/dist/lib/hooks/index.d.ts +3 -3
  319. package/dist/lib/oas/graphql/circular.js +2 -2
  320. package/dist/lib/oas/graphql/circular.js.map +1 -1
  321. package/dist/lib/oas/graphql/index.js +39 -3
  322. package/dist/lib/oas/graphql/index.js.map +1 -1
  323. package/dist/lib/oas/parser/dereference/index.js +2 -1
  324. package/dist/lib/oas/parser/dereference/index.js.map +1 -1
  325. package/dist/lib/oas/parser/dereference/resolveRef.js +3 -3
  326. package/dist/lib/oas/parser/dereference/resolveRef.js.map +1 -1
  327. package/dist/lib/oas/parser/index.js +8 -4
  328. package/dist/lib/oas/parser/index.js.map +1 -1
  329. package/dist/lib/oas/parser/upgrade/index.js +2 -1
  330. package/dist/lib/oas/parser/upgrade/index.js.map +1 -1
  331. package/dist/lib/plugins/api-catalog/Catalog.js +7 -1
  332. package/dist/lib/plugins/api-catalog/Catalog.js.map +1 -1
  333. package/dist/lib/plugins/api-keys/CreateApiKey.d.ts +1 -1
  334. package/dist/lib/plugins/api-keys/CreateApiKeyDialog.d.ts +11 -0
  335. package/dist/lib/plugins/api-keys/CreateApiKeyDialog.js +9 -0
  336. package/dist/lib/plugins/api-keys/CreateApiKeyDialog.js.map +1 -0
  337. package/dist/lib/plugins/api-keys/ProtectedRoute.js +4 -1
  338. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
  339. package/dist/lib/plugins/api-keys/SettingsApiKeys.d.ts +1 -1
  340. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +10 -16
  341. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -1
  342. package/dist/lib/plugins/api-keys/index.d.ts +3 -3
  343. package/dist/lib/plugins/api-keys/index.js +1 -1
  344. package/dist/lib/plugins/api-keys/index.js.map +1 -1
  345. package/dist/lib/plugins/custom-pages/index.d.ts +1 -1
  346. package/dist/lib/plugins/markdown/MdxPage.d.ts +3 -2
  347. package/dist/lib/plugins/markdown/MdxPage.js +32 -8
  348. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  349. package/dist/lib/plugins/markdown/assets/ChatGPTLogo.d.ts +2 -0
  350. package/dist/lib/plugins/markdown/assets/ChatGPTLogo.js +3 -0
  351. package/dist/lib/plugins/markdown/assets/ChatGPTLogo.js.map +1 -0
  352. package/dist/lib/plugins/markdown/assets/ClaudeLogo.d.ts +2 -0
  353. package/dist/lib/plugins/markdown/assets/ClaudeLogo.js +3 -0
  354. package/dist/lib/plugins/markdown/assets/ClaudeLogo.js.map +1 -0
  355. package/dist/lib/plugins/markdown/index.d.ts +4 -2
  356. package/dist/lib/plugins/markdown/index.js +1 -1
  357. package/dist/lib/plugins/markdown/index.js.map +1 -1
  358. package/dist/lib/plugins/openapi/CollapsibleCode.d.ts +1 -0
  359. package/dist/lib/plugins/openapi/CollapsibleCode.js +2 -1
  360. package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -1
  361. package/dist/lib/plugins/openapi/ColorizedParam.js +4 -1
  362. package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
  363. package/dist/lib/plugins/openapi/Endpoint.js +2 -2
  364. package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
  365. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.d.ts +5 -0
  366. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js +10 -0
  367. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js.map +1 -0
  368. package/dist/lib/plugins/openapi/MCPEndpoint.d.ts +5 -0
  369. package/dist/lib/plugins/openapi/MCPEndpoint.js +56 -0
  370. package/dist/lib/plugins/openapi/MCPEndpoint.js.map +1 -0
  371. package/dist/lib/plugins/openapi/OasProvider.d.ts +1 -1
  372. package/dist/lib/plugins/openapi/OasProvider.js +1 -0
  373. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -1
  374. package/dist/lib/plugins/openapi/OperationList.d.ts +0 -2
  375. package/dist/lib/plugins/openapi/OperationList.js +31 -8
  376. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  377. package/dist/lib/plugins/openapi/OperationListItem.d.ts +4 -3
  378. package/dist/lib/plugins/openapi/OperationListItem.js +12 -5
  379. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  380. package/dist/lib/plugins/openapi/ParamInfos.d.ts +1 -1
  381. package/dist/lib/plugins/openapi/ParamInfos.js +11 -9
  382. package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -1
  383. package/dist/lib/plugins/openapi/ParameterList.d.ts +2 -2
  384. package/dist/lib/plugins/openapi/ParameterList.js +1 -1
  385. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  386. package/dist/lib/plugins/openapi/ParameterListItem.d.ts +2 -3
  387. package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
  388. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  389. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.d.ts +3 -4
  390. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +3 -5
  391. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
  392. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +11 -4
  393. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +2 -2
  394. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  395. package/dist/lib/plugins/openapi/ResponsesSidecarBox.d.ts +3 -1
  396. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +14 -2
  397. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  398. package/dist/lib/plugins/openapi/Sidecar.d.ts +5 -3
  399. package/dist/lib/plugins/openapi/Sidecar.js +54 -30
  400. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  401. package/dist/lib/plugins/openapi/SidecarExamples.d.ts +11 -6
  402. package/dist/lib/plugins/openapi/SidecarExamples.js +15 -33
  403. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
  404. package/dist/lib/plugins/openapi/StaggeredRender.d.ts +1 -1
  405. package/dist/lib/plugins/openapi/client/GraphQLContext.d.ts +1 -1
  406. package/dist/lib/plugins/openapi/client/createServer.js +1 -2
  407. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -1
  408. package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -1
  409. package/dist/lib/plugins/openapi/components/NonHighlightedCode.d.ts +4 -0
  410. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js +5 -0
  411. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js.map +1 -0
  412. package/dist/lib/plugins/openapi/components/ResponseContent.js +1 -1
  413. package/dist/lib/plugins/openapi/components/ResponseContent.js.map +1 -1
  414. package/dist/lib/plugins/openapi/context.d.ts +1 -1
  415. package/dist/lib/plugins/openapi/graphql/fragment-masking.d.ts +1 -1
  416. package/dist/lib/plugins/openapi/graphql/gql.d.ts +2 -2
  417. package/dist/lib/plugins/openapi/graphql/gql.js +2 -2
  418. package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
  419. package/dist/lib/plugins/openapi/graphql/graphql.d.ts +11 -2
  420. package/dist/lib/plugins/openapi/graphql/graphql.js +11 -0
  421. package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
  422. package/dist/lib/plugins/openapi/index.d.ts +2 -2
  423. package/dist/lib/plugins/openapi/index.js +7 -11
  424. package/dist/lib/plugins/openapi/index.js.map +1 -1
  425. package/dist/lib/plugins/openapi/interfaces.d.ts +18 -4
  426. package/dist/lib/plugins/openapi/playground/BodyPanel.d.ts +2 -2
  427. package/dist/lib/plugins/openapi/playground/BodyPanel.js +67 -15
  428. package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -1
  429. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +2 -2
  430. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -1
  431. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.d.ts +3 -3
  432. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +1 -1
  433. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
  434. package/dist/lib/plugins/openapi/playground/Headers.d.ts +1 -1
  435. package/dist/lib/plugins/openapi/playground/Headers.js +23 -83
  436. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  437. package/dist/lib/plugins/openapi/playground/IdentityDialog.d.ts +1 -1
  438. package/dist/lib/plugins/openapi/playground/IdentitySelector.d.ts +1 -1
  439. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +10 -2
  440. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +8 -1
  441. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -1
  442. package/dist/lib/plugins/openapi/playground/PathParams.js +2 -3
  443. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  444. package/dist/lib/plugins/openapi/playground/Playground.d.ts +9 -2
  445. package/dist/lib/plugins/openapi/playground/Playground.js +70 -32
  446. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  447. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +3 -1
  448. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  449. package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +1 -1
  450. package/dist/lib/plugins/openapi/playground/QueryParams.js +16 -40
  451. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  452. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.d.ts +2 -1
  453. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js +10 -2
  454. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js.map +1 -1
  455. package/dist/lib/plugins/openapi/playground/rememberedIdentity.d.ts +5 -3
  456. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.d.ts +8 -0
  457. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js +19 -0
  458. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js.map +1 -0
  459. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +1 -1
  460. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -1
  461. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.d.ts +1 -0
  462. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js +540 -0
  463. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js.map +1 -0
  464. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.d.ts +40 -0
  465. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js +205 -0
  466. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js.map +1 -0
  467. package/dist/lib/plugins/openapi/playground/result-panel/Highlight.d.ts +1 -1
  468. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js +4 -2
  469. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js.map +1 -1
  470. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +33 -19
  471. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
  472. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +2 -2
  473. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +1 -1
  474. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -1
  475. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.d.ts +1 -1
  476. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js +1 -1
  477. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js.map +1 -1
  478. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.d.ts +5 -3
  479. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js +2 -0
  480. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js.map +1 -1
  481. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js +1 -0
  482. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js.map +1 -1
  483. package/dist/lib/plugins/openapi/processors/removeParameters.test.js +1 -0
  484. package/dist/lib/plugins/openapi/processors/removeParameters.test.js.map +1 -1
  485. package/dist/lib/plugins/openapi/processors/traverse.d.ts +1 -1
  486. package/dist/lib/plugins/openapi/processors/traverse.js.map +1 -1
  487. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.d.ts +0 -3
  488. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +6 -15
  489. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
  490. package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +2 -1
  491. package/dist/lib/plugins/openapi/schema/SchemaView.js +12 -11
  492. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  493. package/dist/lib/plugins/openapi/schema/UnionView.d.ts +5 -0
  494. package/dist/lib/plugins/openapi/schema/UnionView.js +36 -0
  495. package/dist/lib/plugins/openapi/schema/UnionView.js.map +1 -0
  496. package/dist/lib/plugins/openapi/schema/union-helpers.d.ts +28 -0
  497. package/dist/lib/plugins/openapi/schema/union-helpers.js +71 -0
  498. package/dist/lib/plugins/openapi/schema/union-helpers.js.map +1 -0
  499. package/dist/lib/plugins/openapi/schema/utils.d.ts +0 -7
  500. package/dist/lib/plugins/openapi/schema/utils.js +0 -6
  501. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  502. package/dist/lib/plugins/openapi/state.d.ts +5 -3
  503. package/dist/lib/plugins/openapi/util/createHttpSnippet.d.ts +1 -1
  504. package/dist/lib/plugins/openapi/util/createHttpSnippet.js +1 -1
  505. package/dist/lib/plugins/openapi/util/createHttpSnippet.js.map +1 -1
  506. package/dist/lib/plugins/openapi/util/createNavigationCategory.js +1 -0
  507. package/dist/lib/plugins/openapi/util/createNavigationCategory.js.map +1 -1
  508. package/dist/lib/plugins/openapi/util/generateSchemaExample.d.ts +1 -1
  509. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +10 -13
  510. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  511. package/dist/lib/plugins/openapi/util/getRoutes.js +1 -1
  512. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  513. package/dist/lib/plugins/openapi/util/methodColorMap.d.ts +1 -1
  514. package/dist/lib/plugins/search-inkeep/index.js +1 -1
  515. package/dist/lib/plugins/search-inkeep/index.js.map +1 -1
  516. package/dist/lib/plugins/search-pagefind/PagefindSearch.js +1 -1
  517. package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -1
  518. package/dist/lib/plugins/search-pagefind/ResultList.d.ts +1 -1
  519. package/dist/lib/plugins/search-pagefind/ResultList.js +4 -1
  520. package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -1
  521. package/dist/lib/plugins/search-pagefind/get-results.js +0 -1
  522. package/dist/lib/plugins/search-pagefind/get-results.js.map +1 -1
  523. package/dist/lib/shiki.d.ts +3 -6
  524. package/dist/lib/shiki.js +29 -8
  525. package/dist/lib/shiki.js.map +1 -1
  526. package/dist/lib/ui/Breadcrumb.js +1 -1
  527. package/dist/lib/ui/Breadcrumb.js.map +1 -1
  528. package/dist/lib/ui/Button.d.ts +1 -1
  529. package/dist/lib/ui/Button.js +1 -0
  530. package/dist/lib/ui/Button.js.map +1 -1
  531. package/dist/lib/ui/Callout.d.ts +5 -5
  532. package/dist/lib/ui/Callout.js +5 -5
  533. package/dist/lib/ui/Callout.js.map +1 -1
  534. package/dist/lib/ui/Checkbox.d.ts +2 -2
  535. package/dist/lib/ui/Checkbox.js +4 -4
  536. package/dist/lib/ui/Checkbox.js.map +1 -1
  537. package/dist/lib/ui/CodeBlock.d.ts +1 -2
  538. package/dist/lib/ui/CodeBlock.js +3 -28
  539. package/dist/lib/ui/CodeBlock.js.map +1 -1
  540. package/dist/lib/ui/Command.d.ts +5 -5
  541. package/dist/lib/ui/Command.js +2 -6
  542. package/dist/lib/ui/Command.js.map +1 -1
  543. package/dist/lib/ui/Dialog.d.ts +12 -18
  544. package/dist/lib/ui/Dialog.js +30 -17
  545. package/dist/lib/ui/Dialog.js.map +1 -1
  546. package/dist/lib/ui/EmbeddedCodeBlock.d.ts +3 -2
  547. package/dist/lib/ui/EmbeddedCodeBlock.js +2 -2
  548. package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  549. package/dist/lib/ui/Form.d.ts +2 -2
  550. package/dist/lib/ui/Pagination.d.ts +1 -1
  551. package/dist/lib/ui/Pagination.js +1 -1
  552. package/dist/lib/ui/Pagination.js.map +1 -1
  553. package/dist/lib/ui/ReactComponentDoc.d.ts +20 -0
  554. package/dist/lib/ui/ReactComponentDoc.js +10 -0
  555. package/dist/lib/ui/ReactComponentDoc.js.map +1 -0
  556. package/dist/lib/ui/Secret.d.ts +18 -0
  557. package/dist/lib/ui/Secret.js +26 -0
  558. package/dist/lib/ui/Secret.js.map +1 -0
  559. package/dist/lib/ui/Separator.d.ts +4 -0
  560. package/dist/lib/ui/Separator.js +8 -0
  561. package/dist/lib/ui/Separator.js.map +1 -0
  562. package/dist/lib/ui/SyntaxHighlight.d.ts +1 -0
  563. package/dist/lib/ui/SyntaxHighlight.js.map +1 -1
  564. package/dist/lib/ui/ToggleGroup.d.ts +1 -1
  565. package/dist/lib/ui/Tooltip.d.ts +7 -7
  566. package/dist/lib/ui/Tooltip.js +16 -10
  567. package/dist/lib/ui/Tooltip.js.map +1 -1
  568. package/dist/lib/ui/Value.d.ts +5 -0
  569. package/dist/lib/ui/Value.js +13 -0
  570. package/dist/lib/ui/Value.js.map +1 -0
  571. package/dist/lib/util/MdxComponents.d.ts +3 -2
  572. package/dist/lib/util/MdxComponents.js +7 -4
  573. package/dist/lib/util/MdxComponents.js.map +1 -1
  574. package/dist/lib/util/cn.js.map +1 -1
  575. package/dist/lib/util/createVariantComponent.d.ts +7 -4
  576. package/dist/lib/util/createVariantComponent.js +5 -2
  577. package/dist/lib/util/createVariantComponent.js.map +1 -1
  578. package/dist/lib/util/flattenAllOf.d.ts +4 -0
  579. package/dist/lib/util/flattenAllOf.js +65 -0
  580. package/dist/lib/util/flattenAllOf.js.map +1 -0
  581. package/dist/lib/util/flattenAllOf.test.d.ts +1 -0
  582. package/dist/lib/util/flattenAllOf.test.js +532 -0
  583. package/dist/lib/util/flattenAllOf.test.js.map +1 -0
  584. package/dist/lib/util/groupBy.js +1 -0
  585. package/dist/lib/util/groupBy.js.map +1 -1
  586. package/dist/lib/util/humanFileSize.js +1 -1
  587. package/dist/lib/util/humanFileSize.js.map +1 -1
  588. package/dist/lib/util/invariant.js +3 -1
  589. package/dist/lib/util/invariant.js.map +1 -1
  590. package/dist/lib/util/pastellize.js +4 -4
  591. package/dist/lib/util/pastellize.js.map +1 -1
  592. package/dist/lib/util/syncZustandState.d.ts +5 -0
  593. package/dist/lib/util/syncZustandState.js +14 -0
  594. package/dist/lib/util/syncZustandState.js.map +1 -0
  595. package/dist/lib/util/traverse.d.ts +1 -0
  596. package/dist/lib/util/traverse.js +25 -0
  597. package/dist/lib/util/traverse.js.map +1 -1
  598. package/dist/lib/util/useIsomorphicLayoutEffect.js.map +1 -1
  599. package/dist/lib/util/useScrollToAnchor.js +2 -0
  600. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  601. package/dist/ts.js +3 -3
  602. package/dist/ts.js.map +1 -1
  603. package/dist/vite/api/SchemaManager.d.ts +3 -1
  604. package/dist/vite/api/SchemaManager.js +43 -32
  605. package/dist/vite/api/SchemaManager.js.map +1 -1
  606. package/dist/vite/api/SchemaManager.test.js +2 -2
  607. package/dist/vite/api/SchemaManager.test.js.map +1 -1
  608. package/dist/vite/api/schema-codegen.js +60 -42
  609. package/dist/vite/api/schema-codegen.js.map +1 -1
  610. package/dist/vite/api/schema-codegen.test.js +76 -3
  611. package/dist/vite/api/schema-codegen.test.js.map +1 -1
  612. package/dist/vite/build.js +1 -1
  613. package/dist/vite/build.js.map +1 -1
  614. package/dist/vite/dev-server.js +2 -2
  615. package/dist/vite/dev-server.js.map +1 -1
  616. package/dist/vite/error-handler.d.ts +2 -2
  617. package/dist/vite/error-handler.js.map +1 -1
  618. package/dist/vite/llms.d.ts +12 -0
  619. package/dist/vite/llms.js +66 -0
  620. package/dist/vite/llms.js.map +1 -0
  621. package/dist/vite/mdx/remark-inject-filepath.js.map +1 -1
  622. package/dist/vite/mdx/remark-last-modified.js +57 -4
  623. package/dist/vite/mdx/remark-last-modified.js.map +1 -1
  624. package/dist/vite/mdx/remark-link-rewrite.js.map +1 -1
  625. package/dist/vite/mdx/remark-static-generation.js +1 -1
  626. package/dist/vite/mdx/remark-static-generation.js.map +1 -1
  627. package/dist/vite/output.d.ts +1 -1
  628. package/dist/vite/output.js +1 -1
  629. package/dist/vite/output.js.map +1 -1
  630. package/dist/vite/plugin-api-keys.d.ts +1 -1
  631. package/dist/vite/plugin-api-keys.js +1 -1
  632. package/dist/vite/plugin-api-keys.js.map +1 -1
  633. package/dist/vite/plugin-api.js +22 -21
  634. package/dist/vite/plugin-api.js.map +1 -1
  635. package/dist/vite/plugin-auth.d.ts +1 -1
  636. package/dist/vite/plugin-auth.js +1 -1
  637. package/dist/vite/plugin-auth.js.map +1 -1
  638. package/dist/vite/plugin-component.d.ts +1 -1
  639. package/dist/vite/plugin-config-reload.d.ts +1 -1
  640. package/dist/vite/plugin-custom-pages.d.ts +1 -1
  641. package/dist/vite/plugin-custom-pages.js +1 -1
  642. package/dist/vite/plugin-custom-pages.js.map +1 -1
  643. package/dist/vite/plugin-docs.d.ts +9 -0
  644. package/dist/vite/plugin-docs.js +70 -47
  645. package/dist/vite/plugin-docs.js.map +1 -1
  646. package/dist/vite/plugin-frontmatter.js +1 -1
  647. package/dist/vite/plugin-frontmatter.js.map +1 -1
  648. package/dist/vite/plugin-markdown-export.d.ts +21 -0
  649. package/dist/vite/plugin-markdown-export.js +141 -0
  650. package/dist/vite/plugin-markdown-export.js.map +1 -0
  651. package/dist/vite/plugin-mdx.d.ts +2 -2
  652. package/dist/vite/plugin-mdx.js +44 -34
  653. package/dist/vite/plugin-mdx.js.map +1 -1
  654. package/dist/vite/plugin-metadata.d.ts +1 -1
  655. package/dist/vite/plugin-navigation.d.ts +2 -2
  656. package/dist/vite/plugin-navigation.js +38 -35
  657. package/dist/vite/plugin-navigation.js.map +1 -1
  658. package/dist/vite/plugin-redirect.d.ts +1 -1
  659. package/dist/vite/plugin-redirect.js +1 -1
  660. package/dist/vite/plugin-redirect.js.map +1 -1
  661. package/dist/vite/plugin-search.d.ts +1 -1
  662. package/dist/vite/plugin-search.js +1 -1
  663. package/dist/vite/plugin-search.js.map +1 -1
  664. package/dist/vite/plugin-shiki-register.js +1 -1
  665. package/dist/vite/plugin-shiki-register.js.map +1 -1
  666. package/dist/vite/plugin-theme.js +16 -7
  667. package/dist/vite/plugin-theme.js.map +1 -1
  668. package/dist/vite/plugin-theme.test.js +2 -0
  669. package/dist/vite/plugin-theme.test.js.map +1 -1
  670. package/dist/vite/plugin.d.ts +1 -1
  671. package/dist/vite/plugin.js +4 -2
  672. package/dist/vite/plugin.js.map +1 -1
  673. package/dist/vite/prerender/FileWritingResponse.js +5 -3
  674. package/dist/vite/prerender/FileWritingResponse.js.map +1 -1
  675. package/dist/vite/prerender/InMemoryResponse.js +3 -1
  676. package/dist/vite/prerender/InMemoryResponse.js.map +1 -1
  677. package/dist/vite/prerender/prerender.js +38 -5
  678. package/dist/vite/prerender/prerender.js.map +1 -1
  679. package/dist/vite/prerender/worker.d.ts +1 -1
  680. package/dist/vite/prerender/worker.js.map +1 -1
  681. package/dist/vite/reporter.js +2 -2
  682. package/dist/vite/reporter.js.map +1 -1
  683. package/dist/vite/shadcn-registry.d.ts +8 -33
  684. package/dist/vite/sitemap.js +4 -4
  685. package/dist/vite/sitemap.js.map +1 -1
  686. package/dist/zuplo/enrich-with-zuplo-mcp.d.ts +4 -0
  687. package/dist/zuplo/enrich-with-zuplo-mcp.js +117 -0
  688. package/dist/zuplo/enrich-with-zuplo-mcp.js.map +1 -0
  689. package/dist/zuplo/enrich-with-zuplo.d.ts +1 -0
  690. package/dist/zuplo/enrich-with-zuplo.js +4 -4
  691. package/dist/zuplo/enrich-with-zuplo.js.map +1 -1
  692. package/dist/zuplo/policy-types.js +0 -1
  693. package/dist/zuplo/policy-types.js.map +1 -1
  694. package/dist/zuplo/with-zuplo-processors.js +2 -0
  695. package/dist/zuplo/with-zuplo-processors.js.map +1 -1
  696. package/dist/zuplo/with-zuplo.js +1 -1
  697. package/dist/zuplo/with-zuplo.js.map +1 -1
  698. package/lib/{Button-B3o-2Xdf.js → Button-B3ucvvQw.js} +7 -6
  699. package/lib/Button-B3ucvvQw.js.map +1 -0
  700. package/lib/{Card-CMDQUPM4.js → Card-KFniaZn5.js} +2 -2
  701. package/lib/{Card-CMDQUPM4.js.map → Card-KFniaZn5.js.map} +1 -1
  702. package/lib/{CategoryHeading-DCpZu3yG.js → CategoryHeading-DhmodDcq.js} +2 -2
  703. package/lib/{CategoryHeading-DCpZu3yG.js.map → CategoryHeading-DhmodDcq.js.map} +1 -1
  704. package/lib/{Command-CDn17s8X.js → Command-CUcrW3qs.js} +22 -28
  705. package/lib/Command-CUcrW3qs.js.map +1 -0
  706. package/lib/Dialog-BQciPiHN.js +144 -0
  707. package/lib/Dialog-BQciPiHN.js.map +1 -0
  708. package/lib/{Drawer-DJ05s2pH.js → Drawer-Ci7XwhqT.js} +2 -2
  709. package/lib/{Drawer-DJ05s2pH.js.map → Drawer-Ci7XwhqT.js.map} +1 -1
  710. package/lib/DropdownMenu-BZ2NKQ3K.js +126 -0
  711. package/lib/DropdownMenu-BZ2NKQ3K.js.map +1 -0
  712. package/lib/{Slot-DOtTvoyj.js → ErrorAlert-B4eXGBQj.js} +2413 -2431
  713. package/lib/ErrorAlert-B4eXGBQj.js.map +1 -0
  714. package/lib/MdxPage-BSxjb_Mb.js +240 -0
  715. package/lib/MdxPage-BSxjb_Mb.js.map +1 -0
  716. package/lib/{OAuthErrorPage-Jv3r8wnL.js → OAuthErrorPage-YbraVLZt.js} +9 -9
  717. package/lib/OAuthErrorPage-YbraVLZt.js.map +1 -0
  718. package/lib/{OasProvider-CA_lpILt.js → OasProvider-CgHWBl16.js} +5 -4
  719. package/lib/OasProvider-CgHWBl16.js.map +1 -0
  720. package/lib/OperationList-BNNhgkkk.js +5482 -0
  721. package/lib/OperationList-BNNhgkkk.js.map +1 -0
  722. package/lib/{Pagination-CBiRGddW.js → Pagination-BpxzD3Tn.js} +4 -4
  723. package/lib/{Pagination-CBiRGddW.js.map → Pagination-BpxzD3Tn.js.map} +1 -1
  724. package/lib/RouteGuard-Brz95MSt.js +77 -0
  725. package/lib/RouteGuard-Brz95MSt.js.map +1 -0
  726. package/lib/RouterError-BsnUU8eo.js +42 -0
  727. package/lib/RouterError-BsnUU8eo.js.map +1 -0
  728. package/lib/{SchemaList-BeYWvBC7.js → SchemaList-C8-SHBql.js} +10 -10
  729. package/lib/{SchemaList-BeYWvBC7.js.map → SchemaList-C8-SHBql.js.map} +1 -1
  730. package/lib/SchemaView-VsgUbgRw.js +397 -0
  731. package/lib/SchemaView-VsgUbgRw.js.map +1 -0
  732. package/lib/Select-C1DeCqKv.js +372 -0
  733. package/lib/Select-C1DeCqKv.js.map +1 -0
  734. package/lib/SignUp-Bnvel-zK.js +50 -0
  735. package/lib/SignUp-Bnvel-zK.js.map +1 -0
  736. package/lib/{Spinner-mNLZ6awP.js → Spinner-CI6bRyZw.js} +2 -2
  737. package/lib/{Spinner-mNLZ6awP.js.map → Spinner-CI6bRyZw.js.map} +1 -1
  738. package/lib/{SyntaxHighlight-GR0eix_L.js → SyntaxHighlight-C19vH0V_.js} +1074 -1030
  739. package/lib/SyntaxHighlight-C19vH0V_.js.map +1 -0
  740. package/lib/{Toc-BlcGIkXc.js → Toc-DR_4nkDQ.js} +6 -6
  741. package/lib/Toc-DR_4nkDQ.js.map +1 -0
  742. package/lib/ZudokuContext-BUZ5hkWB.js +1508 -0
  743. package/lib/ZudokuContext-BUZ5hkWB.js.map +1 -0
  744. package/lib/c-B-NUhs61.js +46 -0
  745. package/lib/c-B-NUhs61.js.map +1 -0
  746. package/lib/chunk-PVWAREVJ-BMhpCH5D.js +7965 -0
  747. package/lib/chunk-PVWAREVJ-BMhpCH5D.js.map +1 -0
  748. package/lib/{circular-CGTcsqA3.js → circular-BHuymtcS.js} +30 -30
  749. package/lib/{circular-CGTcsqA3.js.map → circular-BHuymtcS.js.map} +1 -1
  750. package/lib/cn-dYga0KKN.js.map +1 -1
  751. package/lib/commonlisp-De080z23.js +28 -0
  752. package/lib/commonlisp-De080z23.js.map +1 -0
  753. package/lib/cpp-79Paht7T.js +53 -0
  754. package/lib/cpp-79Paht7T.js.map +1 -0
  755. package/lib/{createServer-DjgpuLne.js → createServer-C4Kx4Ah4.js} +3703 -3225
  756. package/lib/createServer-C4Kx4Ah4.js.map +1 -0
  757. package/lib/csharp-D8MIL50B.js +53 -0
  758. package/lib/csharp-D8MIL50B.js.map +1 -0
  759. package/lib/css-Bt6hr1td.js +54 -0
  760. package/lib/css-Bt6hr1td.js.map +1 -0
  761. package/lib/dart-B0vy1jWB.js +60 -0
  762. package/lib/dart-B0vy1jWB.js.map +1 -0
  763. package/lib/elixir-Ds8r0sF8.js +25 -0
  764. package/lib/elixir-Ds8r0sF8.js.map +1 -0
  765. package/lib/{errors-CrI3s7mR.js → errors-C43bc4dH.js} +3 -3
  766. package/lib/errors-C43bc4dH.js.map +1 -0
  767. package/lib/go-D2VsmIOS.js +25 -0
  768. package/lib/go-D2VsmIOS.js.map +1 -0
  769. package/lib/graphql-BtA6M4m5.js +25 -0
  770. package/lib/graphql-BtA6M4m5.js.map +1 -0
  771. package/lib/hook-CMeoxziF.js +40 -0
  772. package/lib/hook-CMeoxziF.js.map +1 -0
  773. package/lib/html-MGnI2uzP.js +33 -0
  774. package/lib/html-MGnI2uzP.js.map +1 -0
  775. package/lib/index-BlL_RtG2.js +3665 -0
  776. package/lib/index-BlL_RtG2.js.map +1 -0
  777. package/lib/{index-DzO-Qh6S.js → index-CfR_Jx5Q.js} +276 -278
  778. package/lib/index-CfR_Jx5Q.js.map +1 -0
  779. package/lib/index-CrcNWbel.js.map +1 -1
  780. package/lib/{index-HarEI51d.js → index-Dc4KrhPf.js} +166 -50
  781. package/lib/index-Dc4KrhPf.js.map +1 -0
  782. package/lib/{index-DmNq2fbN.js → index-nGbmHh_A.js} +2 -2
  783. package/lib/index-nGbmHh_A.js.map +1 -0
  784. package/lib/index.esm-BYObtETB.js +1294 -0
  785. package/lib/index.esm-BYObtETB.js.map +1 -0
  786. package/lib/index.esm-BnYHxCYC.js.map +1 -1
  787. package/lib/invariant-Bm-FVUQE.js.map +1 -1
  788. package/lib/java-CVLzHfb1.js +53 -0
  789. package/lib/java-CVLzHfb1.js.map +1 -0
  790. package/lib/javascript-CcmIpL4G.js +10 -0
  791. package/lib/javascript-CcmIpL4G.js.map +1 -0
  792. package/lib/json-4AyP4uiY.js +25 -0
  793. package/lib/json-4AyP4uiY.js.map +1 -0
  794. package/lib/{jsx-runtime-C5mzlN2N.js → jsx-runtime-BzflLqGi.js} +110 -112
  795. package/lib/jsx-runtime-BzflLqGi.js.map +1 -0
  796. package/lib/kotlin-v2plddBQ.js +37 -0
  797. package/lib/kotlin-v2plddBQ.js.map +1 -0
  798. package/lib/markdown-DYGWCmGQ.js +25 -0
  799. package/lib/markdown-DYGWCmGQ.js.map +1 -0
  800. package/lib/mdx-CHwYvXd4.js +32 -0
  801. package/lib/mdx-CHwYvXd4.js.map +1 -0
  802. package/lib/{mutation-Dy_5up8v.js → mutation-BSU0xu4m.js} +2 -2
  803. package/lib/{mutation-Dy_5up8v.js.map → mutation-BSU0xu4m.js.map} +1 -1
  804. package/lib/objectivec-HZY8shkd.js +32 -0
  805. package/lib/objectivec-HZY8shkd.js.map +1 -0
  806. package/lib/ocaml-DqsdDdwb.js +52 -0
  807. package/lib/ocaml-DqsdDdwb.js.map +1 -0
  808. package/lib/php-rQXzo7K_.js +25 -0
  809. package/lib/php-rQXzo7K_.js.map +1 -0
  810. package/lib/powershell-CQje9pm1.js +39 -0
  811. package/lib/powershell-CQje9pm1.js.map +1 -0
  812. package/lib/processors/traverse.js.map +1 -1
  813. package/lib/python-QIQAE5Ei.js +32 -0
  814. package/lib/python-QIQAE5Ei.js.map +1 -0
  815. package/lib/react-DHpVpxRv.js +24 -0
  816. package/lib/react-DHpVpxRv.js.map +1 -0
  817. package/lib/ruby-B2dU8Ny5.js +25 -0
  818. package/lib/ruby-B2dU8Ny5.js.map +1 -0
  819. package/lib/rust-DYnLHAi2.js +25 -0
  820. package/lib/rust-DYnLHAi2.js.map +1 -0
  821. package/lib/scala-CeKInBR8.js +25 -0
  822. package/lib/scala-CeKInBR8.js.map +1 -0
  823. package/lib/shell-HUv9oVtp.js +25 -0
  824. package/lib/shell-HUv9oVtp.js.map +1 -0
  825. package/lib/swift-B4z6ig1Z.js +25 -0
  826. package/lib/swift-B4z6ig1Z.js.map +1 -0
  827. package/lib/toml-Co9mpdct.js +32 -0
  828. package/lib/toml-Co9mpdct.js.map +1 -0
  829. package/lib/typescript-C26xdBDC.js +32 -0
  830. package/lib/typescript-C26xdBDC.js.map +1 -0
  831. package/lib/ui/Accordion.js +1 -1
  832. package/lib/ui/ActionButton.js +3 -3
  833. package/lib/ui/Alert.js +1 -1
  834. package/lib/ui/AlertDialog.js +1 -1
  835. package/lib/ui/Badge.js +1 -1
  836. package/lib/ui/Breadcrumb.js +23 -22
  837. package/lib/ui/Breadcrumb.js.map +1 -1
  838. package/lib/ui/Button.js +6 -5
  839. package/lib/ui/Button.js.map +1 -1
  840. package/lib/ui/Callout.js +19 -19
  841. package/lib/ui/Callout.js.map +1 -1
  842. package/lib/ui/Card.js +1 -1
  843. package/lib/ui/Carousel.js +1 -1
  844. package/lib/ui/Carousel.js.map +1 -1
  845. package/lib/ui/Checkbox.js +29 -26
  846. package/lib/ui/Checkbox.js.map +1 -1
  847. package/lib/ui/CodeBlock.js +217 -6
  848. package/lib/ui/CodeBlock.js.map +1 -1
  849. package/lib/ui/Command.js +21 -27
  850. package/lib/ui/Command.js.map +1 -1
  851. package/lib/ui/Dialog.js +135 -105
  852. package/lib/ui/Dialog.js.map +1 -1
  853. package/lib/ui/Drawer.js +2 -2
  854. package/lib/ui/DropdownMenu.js +1 -1
  855. package/lib/ui/EmbeddedCodeBlock.js +25 -22
  856. package/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  857. package/lib/ui/Form.js +2 -2
  858. package/lib/ui/Form.js.map +1 -1
  859. package/lib/ui/HoverCard.js +1 -1
  860. package/lib/ui/Input.js +1 -1
  861. package/lib/ui/Label.js +1 -1
  862. package/lib/ui/Pagination.js +28 -29
  863. package/lib/ui/Pagination.js.map +1 -1
  864. package/lib/ui/Popover.js +1 -1
  865. package/lib/ui/Progress.js +1 -1
  866. package/lib/ui/RadioGroup.js +1 -1
  867. package/lib/ui/ReactComponentDoc.js +28 -0
  868. package/lib/ui/ReactComponentDoc.js.map +1 -0
  869. package/lib/ui/ScrollArea.js +1 -1
  870. package/lib/ui/Secret.js +106 -0
  871. package/lib/ui/Secret.js.map +1 -0
  872. package/lib/ui/Select.js +1 -1
  873. package/lib/ui/Separator.js +27 -0
  874. package/lib/ui/Separator.js.map +1 -0
  875. package/lib/ui/Skeleton.js +1 -1
  876. package/lib/ui/Slider.js +1 -1
  877. package/lib/ui/Stepper.js +1 -1
  878. package/lib/ui/Switch.js +1 -1
  879. package/lib/ui/SyntaxHighlight.js +4 -4
  880. package/lib/ui/Tabs.js +1 -1
  881. package/lib/ui/Textarea.js +1 -1
  882. package/lib/ui/Toggle.js +1 -1
  883. package/lib/ui/ToggleGroup.js +1 -1
  884. package/lib/ui/ToggleGroup.js.map +1 -1
  885. package/lib/ui/Tooltip.js +55 -28
  886. package/lib/ui/Tooltip.js.map +1 -1
  887. package/lib/ui/Value.js +39 -0
  888. package/lib/ui/Value.js.map +1 -0
  889. package/lib/useCopyToClipboard-B_085nfO.js +14 -0
  890. package/lib/useCopyToClipboard-B_085nfO.js.map +1 -0
  891. package/lib/{useExposedProps-BH9aq4MD.js → useExposedProps-U3pmsHaG.js} +34 -34
  892. package/lib/{useExposedProps-BH9aq4MD.js.map → useExposedProps-U3pmsHaG.js.map} +1 -1
  893. package/lib/xml-BQOOC04j.js +25 -0
  894. package/lib/xml-BQOOC04j.js.map +1 -0
  895. package/lib/yaml-BGsJItKv.js +32 -0
  896. package/lib/yaml-BGsJItKv.js.map +1 -0
  897. package/lib/zig-CUV2sTct.js +35 -0
  898. package/lib/zig-CUV2sTct.js.map +1 -0
  899. package/lib/zudoku.__internal.js +1192 -1073
  900. package/lib/zudoku.__internal.js.map +1 -1
  901. package/lib/zudoku.auth-auth0.js +23 -22
  902. package/lib/zudoku.auth-auth0.js.map +1 -1
  903. package/lib/zudoku.auth-azureb2c.js +34 -35
  904. package/lib/zudoku.auth-azureb2c.js.map +1 -1
  905. package/lib/zudoku.auth-clerk.js +41 -41
  906. package/lib/zudoku.auth-clerk.js.map +1 -1
  907. package/lib/zudoku.auth-openid.js +104 -108
  908. package/lib/zudoku.auth-openid.js.map +1 -1
  909. package/lib/zudoku.auth-supabase.js +108 -51
  910. package/lib/zudoku.auth-supabase.js.map +1 -1
  911. package/lib/zudoku.components.js +21 -20
  912. package/lib/zudoku.hooks.js +6 -6
  913. package/lib/zudoku.hooks.js.map +1 -1
  914. package/lib/zudoku.icons.js +1 -1
  915. package/lib/zudoku.icons.js.map +1 -1
  916. package/lib/zudoku.plugin-api-catalog.js +34 -28
  917. package/lib/zudoku.plugin-api-catalog.js.map +1 -1
  918. package/lib/zudoku.plugin-api-keys.js +302 -327
  919. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  920. package/lib/zudoku.plugin-custom-pages.js +1 -1
  921. package/lib/zudoku.plugin-custom-pages.js.map +1 -1
  922. package/lib/zudoku.plugin-markdown.js +10 -9
  923. package/lib/zudoku.plugin-markdown.js.map +1 -1
  924. package/lib/zudoku.plugin-openapi.js +7 -8
  925. package/lib/zudoku.plugin-openapi.js.map +1 -1
  926. package/lib/zudoku.plugin-redirect.js +3 -3
  927. package/lib/zudoku.plugin-search-inkeep.js +1 -1
  928. package/lib/zudoku.plugin-search-inkeep.js.map +1 -1
  929. package/lib/zudoku.plugin-search-pagefind.js +48 -49
  930. package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
  931. package/lib/zudoku.router.js +2502 -118
  932. package/lib/zudoku.router.js.map +1 -1
  933. package/package.json +93 -92
  934. package/src/app/ZuploBuildConfig.ts +1 -1
  935. package/src/app/entry.client.tsx +6 -5
  936. package/src/app/entry.server.tsx +19 -9
  937. package/src/app/env.ts +6 -6
  938. package/src/app/main.css +71 -19
  939. package/src/app/main.tsx +7 -3
  940. package/src/app/standalone.tsx +7 -2
  941. package/src/lib/MissingIcon.tsx +1 -1
  942. package/src/lib/assets/language-icons/c.tsx +31 -0
  943. package/src/lib/assets/language-icons/commonlisp.tsx +22 -0
  944. package/src/lib/assets/language-icons/cpp.tsx +35 -0
  945. package/src/lib/assets/language-icons/csharp.tsx +35 -0
  946. package/src/lib/assets/language-icons/css.tsx +36 -0
  947. package/src/lib/assets/language-icons/dart.tsx +39 -0
  948. package/src/lib/assets/language-icons/elixir.tsx +19 -0
  949. package/src/lib/assets/language-icons/go.tsx +19 -0
  950. package/src/lib/assets/language-icons/graphql.tsx +19 -0
  951. package/src/lib/assets/language-icons/html.tsx +24 -0
  952. package/src/lib/assets/language-icons/java.tsx +35 -0
  953. package/src/lib/assets/language-icons/javascript.tsx +11 -0
  954. package/src/lib/assets/language-icons/json.tsx +19 -0
  955. package/src/lib/assets/language-icons/kotlin.tsx +30 -0
  956. package/src/lib/assets/language-icons/markdown.tsx +19 -0
  957. package/src/lib/assets/language-icons/mdx.tsx +23 -0
  958. package/src/lib/assets/language-icons/objectivec.tsx +23 -0
  959. package/src/lib/assets/language-icons/ocaml.tsx +34 -0
  960. package/src/lib/assets/language-icons/php.tsx +19 -0
  961. package/src/lib/assets/language-icons/powershell.tsx +27 -0
  962. package/src/lib/assets/language-icons/python.tsx +23 -0
  963. package/src/lib/assets/language-icons/react.tsx +21 -0
  964. package/src/lib/assets/language-icons/ruby.tsx +19 -0
  965. package/src/lib/assets/language-icons/rust.tsx +19 -0
  966. package/src/lib/assets/language-icons/scala.tsx +19 -0
  967. package/src/lib/assets/language-icons/shell.tsx +19 -0
  968. package/src/lib/assets/language-icons/swift.tsx +19 -0
  969. package/src/lib/assets/language-icons/toml.tsx +23 -0
  970. package/src/lib/assets/language-icons/typescript.tsx +23 -0
  971. package/src/lib/assets/language-icons/xml.tsx +19 -0
  972. package/src/lib/assets/language-icons/yaml.tsx +23 -0
  973. package/src/lib/assets/language-icons/zig.tsx +32 -0
  974. package/src/lib/auth/issuer.test.ts +1 -0
  975. package/src/lib/auth/issuer.ts +3 -0
  976. package/src/lib/authentication/AuthenticationPlugin.tsx +4 -4
  977. package/src/lib/authentication/authentication.ts +26 -8
  978. package/src/lib/authentication/components/OAuthErrorPage.tsx +2 -2
  979. package/src/lib/authentication/components/SignIn.tsx +7 -5
  980. package/src/lib/authentication/components/SignOut.tsx +7 -6
  981. package/src/lib/authentication/components/SignUp.tsx +5 -8
  982. package/src/lib/authentication/hook.ts +21 -10
  983. package/src/lib/authentication/providers/auth0.tsx +14 -9
  984. package/src/lib/authentication/providers/azureb2c.tsx +15 -8
  985. package/src/lib/authentication/providers/clerk.tsx +14 -7
  986. package/src/lib/authentication/providers/firebase.tsx +284 -0
  987. package/src/lib/authentication/providers/openid.tsx +26 -21
  988. package/src/lib/authentication/providers/supabase/SupabaseAuthUI.tsx +75 -0
  989. package/src/lib/authentication/providers/supabase.tsx +61 -49
  990. package/src/lib/authentication/state.ts +3 -23
  991. package/src/lib/authentication/ui/ZudokuAuthUi.tsx +335 -0
  992. package/src/lib/authentication/ui/icons/Apple.tsx +10 -0
  993. package/src/lib/authentication/ui/icons/Facebook.tsx +15 -0
  994. package/src/lib/authentication/ui/icons/Github.tsx +16 -0
  995. package/src/lib/authentication/ui/icons/Google.tsx +16 -0
  996. package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -0
  997. package/src/lib/authentication/ui/icons/X.tsx +10 -0
  998. package/src/lib/authentication/use-broadcast/LICENSE.md +12 -3
  999. package/src/lib/authentication/use-broadcast/shared.ts +4 -4
  1000. package/src/lib/authentication/use-broadcast/useBroadcast.ts +2 -2
  1001. package/src/lib/components/AnchorLink.tsx +1 -1
  1002. package/src/lib/components/Autocomplete.tsx +12 -3
  1003. package/src/lib/components/Bootstrap.tsx +1 -0
  1004. package/src/lib/components/BuildCheck.tsx +14 -11
  1005. package/src/lib/components/Header.tsx +2 -3
  1006. package/src/lib/components/Heading.tsx +4 -9
  1007. package/src/lib/components/LanguageIcon.tsx +181 -0
  1008. package/src/lib/components/Layout.tsx +1 -1
  1009. package/src/lib/components/Main.tsx +1 -1
  1010. package/src/lib/components/Markdown.tsx +5 -2
  1011. package/src/lib/components/Meta.tsx +13 -0
  1012. package/src/lib/components/MobileTopNavigation.tsx +11 -13
  1013. package/src/lib/components/PathRenderer.tsx +2 -2
  1014. package/src/lib/components/Search.tsx +1 -1
  1015. package/src/lib/components/Slot.test.tsx +8 -8
  1016. package/src/lib/components/Slot.tsx +2 -2
  1017. package/src/lib/components/TopNavigation.tsx +3 -3
  1018. package/src/lib/components/Zudoku.tsx +5 -5
  1019. package/src/lib/components/cache.ts +9 -5
  1020. package/src/lib/components/context/ComponentsContext.tsx +2 -2
  1021. package/src/lib/components/context/RouterEventsEmitter.tsx +1 -1
  1022. package/src/lib/components/context/SlotProvider.tsx +4 -4
  1023. package/src/lib/components/context/ViewportAnchorContext.tsx +2 -2
  1024. package/src/lib/components/context/ZudokuContext.ts +12 -3
  1025. package/src/lib/components/context/ZudokuProvider.tsx +1 -1
  1026. package/src/lib/components/index.ts +3 -1
  1027. package/src/lib/components/navigation/NavigationCategory.tsx +8 -1
  1028. package/src/lib/components/navigation/NavigationItem.tsx +3 -3
  1029. package/src/lib/components/navigation/NavigationWrapper.tsx +1 -1
  1030. package/src/lib/components/navigation/Toc.tsx +5 -5
  1031. package/src/lib/components/navigation/ZudokuLogo.tsx +1 -1
  1032. package/src/lib/components/navigation/utils.ts +5 -6
  1033. package/src/lib/core/RouteGuard.tsx +41 -21
  1034. package/src/lib/core/ZudokuContext.ts +5 -1
  1035. package/src/lib/errors/ErrorAlert.tsx +1 -2
  1036. package/src/lib/errors/RouterError.tsx +7 -2
  1037. package/src/lib/errors/TopLevelError.tsx +2 -4
  1038. package/src/lib/hooks/useEvent.test.tsx +2 -2
  1039. package/src/lib/oas/graphql/circular.ts +3 -3
  1040. package/src/lib/oas/graphql/index.ts +39 -3
  1041. package/src/lib/oas/parser/dereference/index.ts +2 -1
  1042. package/src/lib/oas/parser/dereference/resolveRef.ts +4 -4
  1043. package/src/lib/oas/parser/index.ts +10 -5
  1044. package/src/lib/oas/parser/upgrade/index.ts +2 -1
  1045. package/src/lib/plugins/api-catalog/Catalog.tsx +7 -0
  1046. package/src/lib/plugins/api-keys/CreateApiKey.tsx +1 -1
  1047. package/src/lib/plugins/api-keys/CreateApiKeyDialog.tsx +49 -0
  1048. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +11 -7
  1049. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +23 -70
  1050. package/src/lib/plugins/api-keys/index.tsx +8 -8
  1051. package/src/lib/plugins/custom-pages/index.tsx +1 -1
  1052. package/src/lib/plugins/markdown/MdxPage.tsx +131 -14
  1053. package/src/lib/plugins/markdown/assets/ChatGPTLogo.tsx +11 -0
  1054. package/src/lib/plugins/markdown/assets/ClaudeLogo.tsx +19 -0
  1055. package/src/lib/plugins/markdown/index.tsx +6 -8
  1056. package/src/lib/plugins/openapi/CollapsibleCode.tsx +5 -3
  1057. package/src/lib/plugins/openapi/ColorizedParam.tsx +3 -1
  1058. package/src/lib/plugins/openapi/Endpoint.tsx +2 -2
  1059. package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -0
  1060. package/src/lib/plugins/openapi/MCPEndpoint.tsx +273 -0
  1061. package/src/lib/plugins/openapi/OasProvider.tsx +2 -1
  1062. package/src/lib/plugins/openapi/OperationList.tsx +39 -13
  1063. package/src/lib/plugins/openapi/OperationListItem.tsx +103 -76
  1064. package/src/lib/plugins/openapi/ParamInfos.tsx +10 -9
  1065. package/src/lib/plugins/openapi/ParameterList.tsx +3 -5
  1066. package/src/lib/plugins/openapi/ParameterListItem.tsx +6 -12
  1067. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +8 -13
  1068. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +23 -4
  1069. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +27 -2
  1070. package/src/lib/plugins/openapi/Sidecar.tsx +112 -64
  1071. package/src/lib/plugins/openapi/SidecarExamples.tsx +40 -57
  1072. package/src/lib/plugins/openapi/StaggeredRender.tsx +1 -1
  1073. package/src/lib/plugins/openapi/client/GraphQLContext.tsx +1 -1
  1074. package/src/lib/plugins/openapi/client/createServer.ts +1 -2
  1075. package/src/lib/plugins/openapi/client/useCreateQuery.ts +3 -2
  1076. package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -0
  1077. package/src/lib/plugins/openapi/components/ResponseContent.tsx +1 -1
  1078. package/src/lib/plugins/openapi/context.tsx +1 -1
  1079. package/src/lib/plugins/openapi/graphql/fragment-masking.ts +1 -1
  1080. package/src/lib/plugins/openapi/graphql/gql.ts +6 -6
  1081. package/src/lib/plugins/openapi/graphql/graphql.ts +25 -3
  1082. package/src/lib/plugins/openapi/index.tsx +14 -33
  1083. package/src/lib/plugins/openapi/interfaces.ts +19 -4
  1084. package/src/lib/plugins/openapi/playground/BodyPanel.tsx +249 -33
  1085. package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +10 -6
  1086. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +6 -5
  1087. package/src/lib/plugins/openapi/playground/Headers.tsx +104 -220
  1088. package/src/lib/plugins/openapi/playground/IdentityDialog.tsx +1 -1
  1089. package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +1 -1
  1090. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +33 -1
  1091. package/src/lib/plugins/openapi/playground/PathParams.tsx +26 -34
  1092. package/src/lib/plugins/openapi/playground/Playground.tsx +90 -41
  1093. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +13 -2
  1094. package/src/lib/plugins/openapi/playground/QueryParams.tsx +83 -137
  1095. package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +20 -1
  1096. package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -0
  1097. package/src/lib/plugins/openapi/playground/request-panel/UrlPath.tsx +1 -1
  1098. package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +2 -2
  1099. package/src/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.tsx +872 -0
  1100. package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +349 -0
  1101. package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +5 -3
  1102. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +124 -56
  1103. package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +4 -4
  1104. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +1 -1
  1105. package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +3 -0
  1106. package/src/lib/plugins/openapi/processors/removeExtensions.test.ts +1 -0
  1107. package/src/lib/plugins/openapi/processors/removeParameters.test.ts +1 -0
  1108. package/src/lib/plugins/openapi/processors/traverse.ts +1 -1
  1109. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +6 -27
  1110. package/src/lib/plugins/openapi/schema/SchemaView.tsx +30 -23
  1111. package/src/lib/plugins/openapi/schema/UnionView.tsx +143 -0
  1112. package/src/lib/plugins/openapi/schema/union-helpers.ts +123 -0
  1113. package/src/lib/plugins/openapi/schema/utils.ts +0 -11
  1114. package/src/lib/plugins/openapi/util/createHttpSnippet.ts +2 -2
  1115. package/src/lib/plugins/openapi/util/createNavigationCategory.tsx +1 -0
  1116. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +14 -15
  1117. package/src/lib/plugins/openapi/util/getRoutes.tsx +2 -2
  1118. package/src/lib/plugins/openapi/util/methodColorMap.tsx +1 -1
  1119. package/src/lib/plugins/search-inkeep/index.tsx +3 -3
  1120. package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +2 -4
  1121. package/src/lib/plugins/search-pagefind/ResultList.tsx +3 -4
  1122. package/src/lib/plugins/search-pagefind/get-results.tsx +0 -1
  1123. package/src/lib/shiki.ts +35 -8
  1124. package/src/lib/ui/Breadcrumb.tsx +1 -0
  1125. package/src/lib/ui/Button.tsx +1 -0
  1126. package/src/lib/ui/Callout.tsx +10 -5
  1127. package/src/lib/ui/Checkbox.tsx +23 -24
  1128. package/src/lib/ui/CodeBlock.tsx +7 -41
  1129. package/src/lib/ui/Command.tsx +2 -4
  1130. package/src/lib/ui/Dialog.tsx +112 -107
  1131. package/src/lib/ui/EmbeddedCodeBlock.tsx +6 -4
  1132. package/src/lib/ui/Form.tsx +4 -4
  1133. package/src/lib/ui/Pagination.tsx +1 -2
  1134. package/src/lib/ui/ReactComponentDoc.tsx +68 -0
  1135. package/src/lib/ui/Secret.tsx +123 -0
  1136. package/src/lib/ui/Separator.tsx +25 -0
  1137. package/src/lib/ui/SyntaxHighlight.tsx +6 -1
  1138. package/src/lib/ui/ToggleGroup.tsx +1 -1
  1139. package/src/lib/ui/Tooltip.tsx +54 -32
  1140. package/src/lib/ui/Value.tsx +42 -0
  1141. package/src/lib/util/MdxComponents.tsx +12 -4
  1142. package/src/lib/util/cn.ts +1 -1
  1143. package/src/lib/util/createVariantComponent.tsx +33 -7
  1144. package/src/lib/util/flattenAllOf.test.ts +637 -0
  1145. package/src/lib/util/flattenAllOf.ts +101 -0
  1146. package/src/lib/util/groupBy.ts +1 -0
  1147. package/src/lib/util/humanFileSize.ts +2 -3
  1148. package/src/lib/util/invariant.ts +1 -0
  1149. package/src/lib/util/pastellize.ts +4 -4
  1150. package/src/lib/util/syncZustandState.ts +22 -0
  1151. package/src/lib/util/traverse.ts +36 -0
  1152. package/src/lib/util/types.ts +1 -1
  1153. package/src/lib/util/useIsomorphicLayoutEffect.ts +1 -0
  1154. package/src/lib/util/useScrollToAnchor.ts +3 -1
  1155. package/src/shiki/langs/hurl.js +1 -0
  1156. package/src/shiki/langs/kdl.js +1 -0
  1157. package/src/shiki/langs/pkl.js +1 -0
  1158. package/src/shiki/langs/rosmsg.js +1 -0
  1159. package/dist/lib/components/ReactMarkdown.d.ts +0 -29
  1160. package/dist/lib/components/ReactMarkdown.js +0 -182
  1161. package/dist/lib/components/ReactMarkdown.js.map +0 -1
  1162. package/dist/lib/plugins/openapi/playground/InlineInput.d.ts +0 -4
  1163. package/dist/lib/plugins/openapi/playground/InlineInput.js +0 -3
  1164. package/dist/lib/plugins/openapi/playground/InlineInput.js.map +0 -1
  1165. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.d.ts +0 -8
  1166. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js +0 -14
  1167. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js.map +0 -1
  1168. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.d.ts +0 -7
  1169. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.js +0 -17
  1170. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.js.map +0 -1
  1171. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.d.ts +0 -6
  1172. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js +0 -10
  1173. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js.map +0 -1
  1174. package/lib/Button-B3o-2Xdf.js.map +0 -1
  1175. package/lib/CodeBlock-yJjjRwj-.js +0 -98
  1176. package/lib/CodeBlock-yJjjRwj-.js.map +0 -1
  1177. package/lib/Command-CDn17s8X.js.map +0 -1
  1178. package/lib/Dialog-BrIjMmUK.js +0 -114
  1179. package/lib/Dialog-BrIjMmUK.js.map +0 -1
  1180. package/lib/MdxPage-BmOQ5m5g.js +0 -111
  1181. package/lib/MdxPage-BmOQ5m5g.js.map +0 -1
  1182. package/lib/OAuthErrorPage-Jv3r8wnL.js.map +0 -1
  1183. package/lib/OasProvider-CA_lpILt.js.map +0 -1
  1184. package/lib/OperationList-C-TObVw6.js +0 -5169
  1185. package/lib/OperationList-C-TObVw6.js.map +0 -1
  1186. package/lib/RouteGuard-JLH6tCY8.js +0 -56
  1187. package/lib/RouteGuard-JLH6tCY8.js.map +0 -1
  1188. package/lib/RouterError-DcVonMP1.js +0 -41
  1189. package/lib/RouterError-DcVonMP1.js.map +0 -1
  1190. package/lib/SchemaView-CRcShewo.js +0 -366
  1191. package/lib/SchemaView-CRcShewo.js.map +0 -1
  1192. package/lib/Select-C3efYI1n.js +0 -273
  1193. package/lib/Select-C3efYI1n.js.map +0 -1
  1194. package/lib/SignUp-CxBGHgba.js +0 -56
  1195. package/lib/SignUp-CxBGHgba.js.map +0 -1
  1196. package/lib/Slot-DOtTvoyj.js.map +0 -1
  1197. package/lib/SyntaxHighlight-GR0eix_L.js.map +0 -1
  1198. package/lib/Toc-BlcGIkXc.js.map +0 -1
  1199. package/lib/ZudokuContext-BuJD7yIX.js +0 -1286
  1200. package/lib/ZudokuContext-BuJD7yIX.js.map +0 -1
  1201. package/lib/chunk-QMGIS6GS-DqecZ6nq.js +0 -9204
  1202. package/lib/chunk-QMGIS6GS-DqecZ6nq.js.map +0 -1
  1203. package/lib/createServer-DjgpuLne.js.map +0 -1
  1204. package/lib/errors-CrI3s7mR.js.map +0 -1
  1205. package/lib/hook-bv3iuX7X.js +0 -247
  1206. package/lib/hook-bv3iuX7X.js.map +0 -1
  1207. package/lib/index-CvTWnHZF.js +0 -3391
  1208. package/lib/index-CvTWnHZF.js.map +0 -1
  1209. package/lib/index-DmNq2fbN.js.map +0 -1
  1210. package/lib/index-DzO-Qh6S.js.map +0 -1
  1211. package/lib/index-HarEI51d.js.map +0 -1
  1212. package/lib/index.esm-CdzlRw50.js +0 -1254
  1213. package/lib/index.esm-CdzlRw50.js.map +0 -1
  1214. package/lib/jsx-runtime-C5mzlN2N.js.map +0 -1
  1215. package/src/lib/components/ReactMarkdown.license.txt +0 -21
  1216. package/src/lib/components/ReactMarkdown.tsx +0 -264
  1217. package/src/lib/plugins/openapi/playground/InlineInput.tsx +0 -6
  1218. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.tsx +0 -40
  1219. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.tsx +0 -57
  1220. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.tsx +0 -33
@@ -0,0 +1,397 @@
1
+ import { j as t } from "./jsx-runtime-BzflLqGi.js";
2
+ import { ChevronUpIcon as q, ChevronDownIcon as E, ChevronsLeftRightIcon as R, MinusIcon as z, PlusIcon as B, RefreshCcwDotIcon as L, InfoIcon as M } from "lucide-react";
3
+ import { S as x, I as C, M as P } from "./ErrorAlert-B4eXGBQj.js";
4
+ import { Card as u } from "./ui/Card.js";
5
+ import { useState as m, isValidElement as D } from "react";
6
+ import { B as T } from "./Button-B3ucvvQw.js";
7
+ import { c as h } from "./cn-dYga0KKN.js";
8
+ import * as j from "@radix-ui/react-collapsible";
9
+ import { Button as F } from "./ui/Button.js";
10
+ import { Badge as J } from "./ui/Badge.js";
11
+ import { C as U } from "./circular-BHuymtcS.js";
12
+ const _ = (e, r) => e.reduce(
13
+ (s, i) => {
14
+ const o = r(i);
15
+ return s[o] || (s[o] = []), s[o].push(i), s;
16
+ },
17
+ {}
18
+ ), $ = ({
19
+ schema: e,
20
+ hideDescription: r = !1
21
+ }) => /* @__PURE__ */ t.jsx("div", { className: "flex flex-col gap-1 text-xs", children: /* @__PURE__ */ t.jsxs("div", { children: [
22
+ /* @__PURE__ */ t.jsx("span", { className: "text-muted-foreground", children: "Const value: " }),
23
+ /* @__PURE__ */ t.jsx(x, { className: "border rounded px-1 font-mono", children: e.const }),
24
+ !r && e.description && /* @__PURE__ */ t.jsx("div", { className: "text-muted-foreground", children: e.description })
25
+ ] }) }), y = ({
26
+ values: e,
27
+ className: r,
28
+ maxVisibleValues: s = 8
29
+ }) => {
30
+ const [i, o] = m(!1);
31
+ if (!e.length) return null;
32
+ const n = e.length > s, l = n && !i ? e.slice(0, s) : e;
33
+ return /* @__PURE__ */ t.jsxs("div", { className: h("flex flex-wrap gap-1.5 text-xs", r), children: [
34
+ /* @__PURE__ */ t.jsx("span", { className: "text-muted-foreground", children: "Enum values: " }),
35
+ l.map((a) => /* @__PURE__ */ t.jsx("div", { children: /* @__PURE__ */ t.jsx(x, { className: "border rounded-sm px-1 font-mono", children: a }) }, a)),
36
+ n && /* @__PURE__ */ t.jsx(
37
+ T,
38
+ {
39
+ variant: "ghost",
40
+ size: "sm",
41
+ className: "h-fit px-0",
42
+ onClick: () => o(!i),
43
+ children: i ? /* @__PURE__ */ t.jsxs("div", { className: "flex items-center gap-1", children: [
44
+ /* @__PURE__ */ t.jsx(q, { size: 12 }),
45
+ /* @__PURE__ */ t.jsx("span", { className: "text-muted-foreground", children: "show less" })
46
+ ] }) : /* @__PURE__ */ t.jsxs("div", { className: "flex items-center gap-1", children: [
47
+ /* @__PURE__ */ t.jsx(E, { size: 12 }),
48
+ /* @__PURE__ */ t.jsxs("span", { className: "text-muted-foreground", children: [
49
+ "show ",
50
+ e.length - s,
51
+ " more"
52
+ ] })
53
+ ] })
54
+ }
55
+ )
56
+ ] });
57
+ }, G = ({ pattern: e }) => {
58
+ const [r, s] = m(!1), i = e.length > 20, o = i ? `${e.slice(0, 20)}…` : e;
59
+ return /* @__PURE__ */ t.jsxs(
60
+ C,
61
+ {
62
+ className: h("text-xs", i && "cursor-pointer"),
63
+ onClick: () => s(!r),
64
+ selectOnClick: !1,
65
+ children: [
66
+ r ? e : o,
67
+ i && /* @__PURE__ */ t.jsx("button", { type: "button", className: "p-1 translate-y-[2px]", children: !r && /* @__PURE__ */ t.jsx(R, { size: 12 }) })
68
+ ]
69
+ }
70
+ );
71
+ }, K = (e) => e ? [
72
+ e.type === "array" && e.items.type ? Array.isArray(e.items.type) ? `(${e.items.type.join(" | ")})[]` : `${e.items.type}[]` : Array.isArray(e.type) ? e.type.join(" | ") : e.type,
73
+ e.enum && "enum",
74
+ e.const && "const",
75
+ e.format,
76
+ e.minimum !== void 0 && `min: ${e.minimum}`,
77
+ e.maximum !== void 0 && `max: ${e.maximum}`,
78
+ e.minLength !== void 0 && `minLength: ${e.minLength}`,
79
+ e.maxLength !== void 0 && `maxLength: ${e.maxLength}`,
80
+ e.minItems !== void 0 && `minItems: ${e.minItems}`,
81
+ e.maxItems !== void 0 && `maxItems: ${e.maxItems}`,
82
+ e.minProperties !== void 0 && `minProps: ${e.minProperties}`,
83
+ e.maxProperties !== void 0 && `maxProps: ${e.maxProperties}`,
84
+ e.uniqueItems && "unique",
85
+ e.readOnly && "readOnly",
86
+ e.writeOnly && "writeOnly",
87
+ e.deprecated && "deprecated",
88
+ e.pattern && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
89
+ "pattern: ",
90
+ /* @__PURE__ */ t.jsx(G, { pattern: e.pattern })
91
+ ] })
92
+ ] : [], g = ({
93
+ schema: e,
94
+ extraItems: r = [],
95
+ className: s
96
+ }) => {
97
+ const i = [...K(e), ...r].flatMap(
98
+ (o) => typeof o == "string" || D(o) ? o : []
99
+ );
100
+ return /* @__PURE__ */ t.jsx("span", { className: s, children: i.map((o, n) => (
101
+ // biome-ignore lint/suspicious/noArrayIndexKey: index should be stable
102
+ /* @__PURE__ */ t.jsxs("span", { className: "text-muted-foreground", children: [
103
+ o,
104
+ n < i.length - 1 && /* @__PURE__ */ t.jsx("span", { className: "text-muted-foreground/50", children: " · " })
105
+ ] }, n)
106
+ )) });
107
+ }, N = ({
108
+ schema: e
109
+ }) => {
110
+ const r = e.examples?.at(0), s = e.default;
111
+ return r === void 0 && s === void 0 ? null : /* @__PURE__ */ t.jsxs("div", { className: "flex flex-col gap-1 text-xs", children: [
112
+ r !== void 0 && /* @__PURE__ */ t.jsxs("div", { children: [
113
+ /* @__PURE__ */ t.jsx("span", { className: "text-muted-foreground", children: "Example: " }),
114
+ /* @__PURE__ */ t.jsx(x, { className: "border rounded-sm px-1 font-mono", children: typeof r == "object" || typeof r == "boolean" ? JSON.stringify(r) : r })
115
+ ] }),
116
+ s !== void 0 && /* @__PURE__ */ t.jsxs("div", { children: [
117
+ /* @__PURE__ */ t.jsx("span", { className: "text-muted-foreground", children: "Default: " }),
118
+ /* @__PURE__ */ t.jsx(x, { className: "border rounded-sm px-1 font-mono", children: typeof s == "object" || typeof s == "boolean" ? JSON.stringify(s) : s })
119
+ ] })
120
+ ] });
121
+ }, w = (e) => typeof e == "string" && ["string", "number", "boolean", "integer", "null"].includes(e) || Array.isArray(e) && e.every(w), b = (e) => e.type === "array" || // schema.type might be an array of types, so we need to check if "array" is one of them
122
+ Array.isArray(e.type) && e.type.includes("array"), O = (e) => e && (e.type === "object" && Object.keys(e.properties ?? {}).length > 0 || e.type === "array" && typeof e.items == "object" && (!e.items.type || e.items.type === "object")), S = (e) => typeof e == "string" && e.startsWith(U), I = (e) => b(e) && "items" in e && S(e.items), W = (e) => typeof e == "string" ? e.split(":")[1] : void 0, A = ({ circularProp: e }) => /* @__PURE__ */ t.jsxs(
123
+ C,
124
+ {
125
+ className: "inline-flex items-center gap-1.5 italic text-xs translate-y-0.5",
126
+ selectOnClick: !1,
127
+ children: [
128
+ /* @__PURE__ */ t.jsx(L, { size: 13 }),
129
+ /* @__PURE__ */ t.jsx("span", { children: e ? `${e} (circular)` : "circular" })
130
+ ]
131
+ }
132
+ ), Q = ({
133
+ name: e,
134
+ schema: r,
135
+ group: s,
136
+ defaultOpen: i = !1,
137
+ showCollapseButton: o = !0
138
+ }) => {
139
+ const [n, l] = m(i);
140
+ if (S(r))
141
+ return /* @__PURE__ */ t.jsx("li", { className: "p-4 bg-border/20 hover:bg-border/30", children: /* @__PURE__ */ t.jsxs("div", { className: "flex flex-col gap-2.5 justify-between text-sm", children: [
142
+ /* @__PURE__ */ t.jsxs("div", { className: "space-x-2 rtl:space-x-reverse", children: [
143
+ /* @__PURE__ */ t.jsx("code", { children: e }),
144
+ /* @__PURE__ */ t.jsx(
145
+ g,
146
+ {
147
+ schema: r,
148
+ extraItems: [/* @__PURE__ */ t.jsx(A, {}, "circular-ref")]
149
+ }
150
+ )
151
+ ] }),
152
+ /* @__PURE__ */ t.jsx(N, { schema: r })
153
+ ] }) });
154
+ const a = !!((r.allOf || r.anyOf || r.oneOf || O(r) || b(r) && "items" in r && O(r.items) || r.additionalProperties) && !I(r));
155
+ return /* @__PURE__ */ t.jsx("li", { className: "p-4 bg-border/20 hover:bg-border/30", children: /* @__PURE__ */ t.jsxs("div", { className: "flex flex-col gap-2.5 justify-between text-sm", children: [
156
+ /* @__PURE__ */ t.jsxs("div", { className: "space-x-2 rtl:space-x-reverse", children: [
157
+ /* @__PURE__ */ t.jsx(x, { asChild: !0, children: /* @__PURE__ */ t.jsx("code", { children: e }) }),
158
+ /* @__PURE__ */ t.jsx(
159
+ g,
160
+ {
161
+ schema: r,
162
+ extraItems: [
163
+ s !== "optional" && /* @__PURE__ */ t.jsx("span", { className: "text-primary", children: "required" }),
164
+ I(r) && /* @__PURE__ */ t.jsx(
165
+ A,
166
+ {
167
+ circularProp: W(r.items)
168
+ }
169
+ )
170
+ ]
171
+ }
172
+ )
173
+ ] }),
174
+ r.description && /* @__PURE__ */ t.jsx(
175
+ P,
176
+ {
177
+ className: "text-sm leading-normal",
178
+ content: r.description
179
+ }
180
+ ),
181
+ r.type === "array" && "items" in r && r.items.enum && /* @__PURE__ */ t.jsx(y, { values: r.items.enum }),
182
+ r.const && /* @__PURE__ */ t.jsx($, { schema: r, hideDescription: !0 }),
183
+ r.enum && /* @__PURE__ */ t.jsx(y, { values: r.enum }),
184
+ /* @__PURE__ */ t.jsx(N, { schema: r }),
185
+ a && /* @__PURE__ */ t.jsxs(
186
+ j.Root,
187
+ {
188
+ defaultOpen: i,
189
+ open: n,
190
+ onOpenChange: () => l(!n),
191
+ children: [
192
+ o && /* @__PURE__ */ t.jsx(j.Trigger, { asChild: !0, children: /* @__PURE__ */ t.jsxs(F, { variant: "expand", size: "sm", children: [
193
+ n ? /* @__PURE__ */ t.jsx(z, { size: 12 }) : /* @__PURE__ */ t.jsx(B, { size: 12 }),
194
+ n ? "Hide properties" : "Show properties"
195
+ ] }) }),
196
+ /* @__PURE__ */ t.jsx(j.Content, { children: /* @__PURE__ */ t.jsx("div", { className: "mt-2", children: r.anyOf || r.oneOf || r.type === "object" ? /* @__PURE__ */ t.jsx(p, { schema: r }) : b(r) && "items" in r ? /* @__PURE__ */ t.jsx(p, { schema: r.items }) : null }) })
197
+ ]
198
+ }
199
+ )
200
+ ] }) });
201
+ }, V = (e) => {
202
+ const r = e.oneOf ?? e.anyOf ?? [];
203
+ return e.properties && Object.keys(e.properties).length > 0 ? r.map((s) => !s.properties && !s.type && !s.oneOf && !s.anyOf ? {
204
+ ...s,
205
+ type: "object",
206
+ properties: e.properties,
207
+ required: s.required ?? e.required
208
+ } : s) : r;
209
+ }, X = (e) => {
210
+ if (Array.isArray(e.oneOf)) return "exactly-one";
211
+ const r = e.discriminator?.propertyName;
212
+ if (!r) return "at-least-one";
213
+ const s = V(e), i = /* @__PURE__ */ new Set();
214
+ for (const o of s) {
215
+ const n = o.properties?.[r], l = n?.const ?? (Array.isArray(n?.enum) && n.enum.length === 1 ? String(n.enum[0]) : void 0);
216
+ if (l == null || i.has(String(l))) return "at-least-one";
217
+ i.add(String(l));
218
+ }
219
+ return "exactly-one";
220
+ }, v = (e, r) => r.title?.trim() || `Variant ${e + 1}`, Y = (e, r) => {
221
+ const s = [];
222
+ e.type && s.push(
223
+ `type = ${Array.isArray(e.type) ? e.type.join("|") : e.type}`
224
+ );
225
+ const i = r?.discriminator?.propertyName;
226
+ if (i) {
227
+ const n = e.properties?.[i], l = n?.const ?? (Array.isArray(n?.enum) && n.enum.length === 1 ? n.enum[0] : void 0);
228
+ l !== void 0 && s.push(`${i}=${JSON.stringify(l)}`);
229
+ }
230
+ const o = (e.required ?? []).filter((n) => n !== i);
231
+ if (o.length) {
232
+ const n = o.slice(0, 3).join(", "), l = o.length > 3 ? ` +${o.length - 3} more` : "";
233
+ s.push(`requires: ${n}${l}`);
234
+ }
235
+ return s;
236
+ }, Z = ({
237
+ variants: e,
238
+ schema: r,
239
+ selectedVariant: s,
240
+ onSelectVariant: i
241
+ }) => {
242
+ const o = e.map((n, l) => ({
243
+ label: v(l, n),
244
+ guards: Y(n, r)
245
+ }));
246
+ return /* @__PURE__ */ t.jsxs("div", { className: "flex flex-col gap-2 text-sm", children: [
247
+ /* @__PURE__ */ t.jsx("h4", { className: "font-medium", children: "Decision Table" }),
248
+ /* @__PURE__ */ t.jsx("div", { className: "border rounded-md overflow-hidden", children: /* @__PURE__ */ t.jsxs("table", { className: "w-full", children: [
249
+ /* @__PURE__ */ t.jsx("thead", { children: /* @__PURE__ */ t.jsxs("tr", { className: "border-b bg-muted/50", children: [
250
+ /* @__PURE__ */ t.jsx("th", { className: "text-left p-2 font-medium", children: "Variant" }),
251
+ /* @__PURE__ */ t.jsx("th", { className: "text-left p-2 font-medium", children: "Matching Criteria" })
252
+ ] }) }),
253
+ /* @__PURE__ */ t.jsx("tbody", { className: "divide-y", children: o.map((n) => /* @__PURE__ */ t.jsxs("tr", { className: "hover:bg-muted/30", children: [
254
+ /* @__PURE__ */ t.jsx("td", { className: "p-2 font-medium", children: /* @__PURE__ */ t.jsx(
255
+ "button",
256
+ {
257
+ type: "button",
258
+ className: h(
259
+ "hover:underline",
260
+ s === n.label && "text-primary"
261
+ ),
262
+ onClick: () => i(n.label),
263
+ children: n.label
264
+ }
265
+ ) }),
266
+ /* @__PURE__ */ t.jsx("td", { className: "p-2 text-muted-foreground text-xs", children: n.guards.length > 0 ? n.guards.join(" · ") : "No specific criteria" })
267
+ ] }, n.label)) })
268
+ ] }) })
269
+ ] });
270
+ }, H = ({ variant: e }) => /* @__PURE__ */ t.jsxs("div", { className: "space-y-2", children: [
271
+ e.description && /* @__PURE__ */ t.jsx("p", { className: "text-sm text-muted-foreground", children: e.description }),
272
+ /* @__PURE__ */ t.jsx(p, { schema: e })
273
+ ] }), ee = ({
274
+ schema: e,
275
+ cardHeader: r
276
+ }) => {
277
+ const s = Array.isArray(e.oneOf) ? "oneOf" : Array.isArray(e.anyOf) ? "anyOf" : void 0, i = s ? V(e) : [], [o, n] = m(
278
+ () => i[0] ? v(0, i[0]) : ""
279
+ );
280
+ if (!s) return null;
281
+ const a = X(e) === "exactly-one" ? /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
282
+ "Exactly one variant ",
283
+ /* @__PURE__ */ t.jsx("b", { children: "must match" }),
284
+ "."
285
+ ] }) : /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
286
+ "At least one variant ",
287
+ /* @__PURE__ */ t.jsx("b", { children: "must match" }),
288
+ ". Multiple variants",
289
+ " ",
290
+ /* @__PURE__ */ t.jsx("i", { children: "may match" }),
291
+ " simultaneously."
292
+ ] }), d = i.findIndex(
293
+ (f, k) => v(k, f) === o
294
+ ), c = d >= 0 ? i[d] : null;
295
+ return /* @__PURE__ */ t.jsxs(u, { className: "overflow-hidden text-sm", children: [
296
+ r,
297
+ /* @__PURE__ */ t.jsxs("div", { className: "flex flex-col gap-4 p-4", children: [
298
+ /* @__PURE__ */ t.jsxs("div", { className: "flex items-center gap-2", children: [
299
+ /* @__PURE__ */ t.jsx(J, { variant: "outline", children: s }),
300
+ /* @__PURE__ */ t.jsx("div", { className: "flex-1 p-2", children: /* @__PURE__ */ t.jsx("span", { className: "text-sm", children: a }) })
301
+ ] }),
302
+ /* @__PURE__ */ t.jsx(
303
+ Z,
304
+ {
305
+ variants: i,
306
+ schema: e,
307
+ selectedVariant: o,
308
+ onSelectVariant: n
309
+ }
310
+ ),
311
+ /* @__PURE__ */ t.jsxs("strong", { children: [
312
+ "Properties for ",
313
+ o,
314
+ ":"
315
+ ] }),
316
+ c && /* @__PURE__ */ t.jsx(H, { variant: c })
317
+ ] })
318
+ ] });
319
+ }, te = (e) => e && /* @__PURE__ */ t.jsx(
320
+ P,
321
+ {
322
+ className: "text-sm leading-normal line-clamp-4",
323
+ content: e
324
+ }
325
+ ), re = (e, r) => /* @__PURE__ */ t.jsxs(u, { className: "overflow-hidden", children: [
326
+ r,
327
+ /* @__PURE__ */ t.jsxs("div", { className: "p-4 space-y-2", children: [
328
+ /* @__PURE__ */ t.jsx("span", { className: "text-sm text-muted-foreground", children: /* @__PURE__ */ t.jsx(g, { schema: e }) }),
329
+ e.enum && /* @__PURE__ */ t.jsx(y, { values: e.enum }),
330
+ te(e.description),
331
+ /* @__PURE__ */ t.jsx(N, { schema: e })
332
+ ] })
333
+ ] }), p = ({
334
+ schema: e,
335
+ defaultOpen: r = !1,
336
+ cardHeader: s,
337
+ embedded: i
338
+ }) => {
339
+ if (!e || Object.keys(e).length === 0)
340
+ return /* @__PURE__ */ t.jsxs(u, { className: "overflow-hidden", children: [
341
+ s,
342
+ /* @__PURE__ */ t.jsx("div", { className: "text-sm text-muted-foreground italic p-4", children: "No data returned" })
343
+ ] });
344
+ if (e.const)
345
+ return /* @__PURE__ */ t.jsx($, { schema: e });
346
+ if (Array.isArray(e.oneOf) || Array.isArray(e.anyOf))
347
+ return /* @__PURE__ */ t.jsx(ee, { schema: e, cardHeader: s });
348
+ if (w(e.type))
349
+ return re(e, s);
350
+ if (e.type === "array" && typeof e.items == "object")
351
+ return /* @__PURE__ */ t.jsx(p, { schema: e.items, cardHeader: s });
352
+ if (e.type === "object") {
353
+ const o = _(
354
+ Object.entries(e.properties ?? {}),
355
+ ([d, c]) => c.deprecated ? "deprecated" : e.required?.includes(d) ? "required" : "optional"
356
+ ), n = ["required", "optional", "deprecated"], l = typeof e.additionalProperties == "object" ? /* @__PURE__ */ t.jsx(p, { schema: e.additionalProperties, embedded: !0 }) : e.additionalProperties === !0 ? /* @__PURE__ */ t.jsxs("div", { className: "text-sm p-4 bg-border/20 hover:bg-border/30 flex items-center gap-1", children: [
357
+ /* @__PURE__ */ t.jsx("span", { children: "Additional properties are allowed" }),
358
+ /* @__PURE__ */ t.jsx(
359
+ "a",
360
+ {
361
+ className: "p-0.5 -m-0.5",
362
+ href: "https://swagger.io/docs/specification/v3_0/data-models/dictionaries/",
363
+ rel: "noopener noreferrer",
364
+ target: "_blank",
365
+ children: /* @__PURE__ */ t.jsx(M, { size: 14 })
366
+ }
367
+ )
368
+ ] }) : null, a = i ? "div" : u;
369
+ return /* @__PURE__ */ t.jsxs(a, { className: "divide-y overflow-hidden", children: [
370
+ s,
371
+ n.map(
372
+ (d) => o[d] && /* @__PURE__ */ t.jsx("ul", { className: "divide-y", children: o[d].map(([c, f]) => /* @__PURE__ */ t.jsx(
373
+ Q,
374
+ {
375
+ name: c,
376
+ schema: f,
377
+ group: d,
378
+ defaultOpen: r
379
+ },
380
+ c
381
+ )) }, d)
382
+ ),
383
+ l
384
+ ] });
385
+ }
386
+ return null;
387
+ };
388
+ export {
389
+ y as E,
390
+ g as P,
391
+ p as S,
392
+ N as a,
393
+ S as b,
394
+ _ as g,
395
+ b as i
396
+ };
397
+ //# sourceMappingURL=SchemaView-VsgUbgRw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaView-VsgUbgRw.js","sources":["../src/lib/util/groupBy.ts","../src/lib/plugins/openapi/components/ConstValue.tsx","../src/lib/plugins/openapi/components/EnumValues.tsx","../src/lib/plugins/openapi/ParamInfos.tsx","../src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx","../src/lib/plugins/openapi/schema/utils.ts","../src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx","../src/lib/plugins/openapi/schema/union-helpers.ts","../src/lib/plugins/openapi/schema/UnionView.tsx","../src/lib/plugins/openapi/schema/SchemaView.tsx"],"sourcesContent":["// biome-ignore-all lint/suspicious/noExplicitAny: Allow any type\nexport const groupBy = <\n T extends Record<PropertyKey, any>,\n KeySelector extends (item: T) => PropertyKey,\n>(\n arr: T[],\n keySelector: KeySelector,\n): Partial<Record<ReturnType<KeySelector>, T[]>> => {\n return arr.reduce(\n (accumulator, val) => {\n const groupedKey = keySelector(val) as ReturnType<KeySelector>;\n if (!accumulator[groupedKey]) {\n accumulator[groupedKey] = [];\n }\n accumulator[groupedKey].push(val);\n return accumulator;\n },\n {} as Record<ReturnType<KeySelector>, T[]>,\n );\n};\n","import type { SchemaObject } from \"../../../oas/parser/index.js\";\nimport { SelectOnClick } from \"./SelectOnClick.js\";\n\nexport const ConstValue = ({\n schema,\n hideDescription = false,\n}: {\n schema: SchemaObject;\n hideDescription?: boolean;\n}) => {\n return (\n <div className=\"flex flex-col gap-1 text-xs\">\n <div>\n <span className=\"text-muted-foreground\">Const value: </span>\n <SelectOnClick className=\"border rounded px-1 font-mono\">\n {schema.const}\n </SelectOnClick>\n {!hideDescription && schema.description && (\n <div className=\"text-muted-foreground\">{schema.description}</div>\n )}\n </div>\n </div>\n );\n};\n","import { ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\nimport { useState } from \"react\";\nimport { Button } from \"zudoku/ui/Button.js\";\nimport { cn } from \"../../../util/cn.js\";\nimport { SelectOnClick } from \"./SelectOnClick.js\";\n\nexport const EnumValues = ({\n values,\n className,\n maxVisibleValues = 8,\n}: {\n values: Array<string | number>;\n className?: string;\n maxVisibleValues?: number;\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n if (!values.length) return null;\n\n const shouldCollapse = values.length > maxVisibleValues;\n const visibleValues =\n shouldCollapse && !isOpen ? values.slice(0, maxVisibleValues) : values;\n\n return (\n <div className={cn(\"flex flex-wrap gap-1.5 text-xs\", className)}>\n <span className=\"text-muted-foreground\">Enum values: </span>\n {visibleValues.map((value) => (\n <div key={value}>\n <SelectOnClick className=\"border rounded-sm px-1 font-mono\">\n {value}\n </SelectOnClick>\n </div>\n ))}\n {shouldCollapse && (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-fit px-0\"\n onClick={() => setIsOpen(!isOpen)}\n >\n {isOpen ? (\n <div className=\"flex items-center gap-1\">\n <ChevronUpIcon size={12} />\n <span className=\"text-muted-foreground\">show less</span>\n </div>\n ) : (\n <div className=\"flex items-center gap-1\">\n <ChevronDownIcon size={12} />\n <span className=\"text-muted-foreground\">\n show {values.length - maxVisibleValues} more\n </span>\n </div>\n )}\n </Button>\n )}\n </div>\n );\n};\n","import { ChevronsLeftRightIcon } from \"lucide-react\";\nimport { isValidElement, useState } from \"react\";\nimport { InlineCode } from \"../../components/InlineCode.js\";\nimport type { SchemaObject } from \"../../oas/parser/index.js\";\nimport { cn } from \"../../util/cn.js\";\n\nconst Pattern = ({ pattern }: { pattern: string }) => {\n const [isExpanded, setIsExpanded] = useState(false);\n const isExpandable = pattern.length > 20;\n const shortPattern = isExpandable ? `${pattern.slice(0, 20)}…` : pattern;\n\n return (\n <InlineCode\n className={cn(\"text-xs\", isExpandable && \"cursor-pointer\")}\n onClick={() => setIsExpanded(!isExpanded)}\n selectOnClick={false}\n >\n {isExpanded ? pattern : shortPattern}\n {isExpandable && (\n <button type=\"button\" className=\"p-1 translate-y-[2px]\">\n {!isExpanded && <ChevronsLeftRightIcon size={12} />}\n </button>\n )}\n </InlineCode>\n );\n};\n\nconst getSchemaInfos = (schema?: SchemaObject) => {\n if (!schema) return [];\n\n return [\n schema.type === \"array\" && schema.items.type\n ? Array.isArray(schema.items.type)\n ? `(${schema.items.type.join(\" | \")})[]`\n : `${schema.items.type}[]`\n : Array.isArray(schema.type)\n ? schema.type.join(\" | \")\n : schema.type,\n\n schema.enum && \"enum\",\n schema.const && \"const\",\n schema.format,\n schema.minimum !== undefined && `min: ${schema.minimum}`,\n schema.maximum !== undefined && `max: ${schema.maximum}`,\n schema.minLength !== undefined && `minLength: ${schema.minLength}`,\n schema.maxLength !== undefined && `maxLength: ${schema.maxLength}`,\n schema.minItems !== undefined && `minItems: ${schema.minItems}`,\n schema.maxItems !== undefined && `maxItems: ${schema.maxItems}`,\n schema.minProperties !== undefined && `minProps: ${schema.minProperties}`,\n schema.maxProperties !== undefined && `maxProps: ${schema.maxProperties}`,\n schema.uniqueItems && \"unique\",\n schema.readOnly && \"readOnly\",\n schema.writeOnly && \"writeOnly\",\n schema.deprecated && \"deprecated\",\n schema.pattern && (\n <>\n pattern: <Pattern pattern={schema.pattern} />\n </>\n ),\n ];\n};\n\nexport const ParamInfos = ({\n schema,\n extraItems = [],\n className,\n}: {\n schema?: SchemaObject;\n extraItems?: unknown[];\n className?: string;\n}) => {\n const filteredItems = [...getSchemaInfos(schema), ...extraItems].flatMap(\n (item) => (typeof item === \"string\" || isValidElement(item) ? item : []),\n );\n\n return (\n <span className={className}>\n {filteredItems.map((item, index) => (\n // biome-ignore lint/suspicious/noArrayIndexKey: index should be stable\n <span className=\"text-muted-foreground\" key={index}>\n {item}\n {index < filteredItems.length - 1 && (\n <span className=\"text-muted-foreground/50\">\n &nbsp;&middot;&nbsp;\n </span>\n )}\n </span>\n ))}\n </span>\n );\n};\n","import type { SchemaObject } from \"../../../oas/parser/index.js\";\nimport { SelectOnClick } from \"../components/SelectOnClick.js\";\n\nexport const SchemaExampleAndDefault = ({\n schema,\n}: {\n schema: SchemaObject;\n}) => {\n const example = schema.examples?.at(0);\n const defaultValue = schema.default;\n\n if (example === undefined && defaultValue === undefined) return null;\n\n return (\n <div className=\"flex flex-col gap-1 text-xs\">\n {example !== undefined && (\n <div>\n <span className=\"text-muted-foreground\">Example: </span>\n <SelectOnClick className=\"border rounded-sm px-1 font-mono\">\n {typeof example === \"object\" || typeof example === \"boolean\"\n ? JSON.stringify(example)\n : example}\n </SelectOnClick>\n </div>\n )}\n {defaultValue !== undefined && (\n <div>\n <span className=\"text-muted-foreground\">Default: </span>\n <SelectOnClick className=\"border rounded-sm px-1 font-mono\">\n {typeof defaultValue === \"object\" ||\n typeof defaultValue === \"boolean\"\n ? JSON.stringify(defaultValue)\n : defaultValue}\n </SelectOnClick>\n </div>\n )}\n </div>\n );\n};\n","import { CIRCULAR_REF } from \"../../../oas/graphql/circular.js\";\nimport type { SchemaObject } from \"../../../oas/parser/index.js\";\n\nexport const isBasicType = (\n type: unknown,\n): type is \"string\" | \"number\" | \"boolean\" | \"integer\" | \"null\" =>\n (typeof type === \"string\" &&\n [\"string\", \"number\", \"boolean\", \"integer\", \"null\"].includes(type)) ||\n (Array.isArray(type) && type.every(isBasicType));\n\nexport const isArrayType = (value: SchemaObject) =>\n value.type === \"array\" ||\n // schema.type might be an array of types, so we need to check if \"array\" is one of them\n (Array.isArray(value.type) && value.type.includes(\"array\"));\n\nexport const isComplexType = (value?: SchemaObject) =>\n value &&\n ((value.type === \"object\" &&\n Object.keys(value.properties ?? {}).length > 0) ||\n (value.type === \"array\" &&\n typeof value.items === \"object\" &&\n (!value.items.type || value.items.type === \"object\")));\n\nexport const isCircularRef = (schema: unknown): schema is string =>\n typeof schema === \"string\" && schema.startsWith(CIRCULAR_REF);\n\nexport const isArrayCircularRef = (\n schema: SchemaObject,\n): schema is SchemaObject & { items: SchemaObject } =>\n isArrayType(schema) && \"items\" in schema && isCircularRef(schema.items);\n\nexport const extractCircularRefInfo = (\n ref?: string | SchemaObject,\n): string | undefined =>\n typeof ref === \"string\" ? ref.split(\":\")[1] : undefined;\n","import * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { MinusIcon, PlusIcon, RefreshCcwDotIcon } from \"lucide-react\";\nimport { useState } from \"react\";\nimport { InlineCode } from \"../../../components/InlineCode.js\";\nimport { Markdown } from \"../../../components/Markdown.js\";\nimport type { SchemaObject } from \"../../../oas/parser/index.js\";\nimport { Button } from \"../../../ui/Button.js\";\nimport { ConstValue } from \"../components/ConstValue.js\";\nimport { EnumValues } from \"../components/EnumValues.js\";\nimport { SelectOnClick } from \"../components/SelectOnClick.js\";\nimport { ParamInfos } from \"../ParamInfos.js\";\nimport { SchemaExampleAndDefault } from \"./SchemaExampleAndDefault.js\";\nimport { SchemaView } from \"./SchemaView.js\";\nimport {\n extractCircularRefInfo,\n isArrayCircularRef,\n isArrayType,\n isCircularRef,\n isComplexType,\n} from \"./utils.js\";\n\nconst RecursiveIndicator = ({ circularProp }: { circularProp?: string }) => (\n <InlineCode\n className=\"inline-flex items-center gap-1.5 italic text-xs translate-y-0.5\"\n selectOnClick={false}\n >\n <RefreshCcwDotIcon size={13} />\n <span>{circularProp ? `${circularProp} (circular)` : \"circular\"}</span>\n </InlineCode>\n);\n\nexport const SchemaPropertyItem = ({\n name,\n schema,\n group,\n defaultOpen = false,\n showCollapseButton = true,\n}: {\n name: string;\n schema: SchemaObject;\n group: \"required\" | \"optional\" | \"deprecated\";\n defaultOpen?: boolean;\n showCollapseButton?: boolean;\n}) => {\n const [isOpen, setIsOpen] = useState(defaultOpen);\n\n if (isCircularRef(schema)) {\n return (\n <li className=\"p-4 bg-border/20 hover:bg-border/30\">\n <div className=\"flex flex-col gap-2.5 justify-between text-sm\">\n <div className=\"space-x-2 rtl:space-x-reverse\">\n <code>{name}</code>\n <ParamInfos\n schema={schema}\n extraItems={[<RecursiveIndicator key=\"circular-ref\" />]}\n />\n </div>\n <SchemaExampleAndDefault schema={schema} />\n </div>\n </li>\n );\n }\n\n const isCollapsible = Boolean(\n (schema.allOf ||\n schema.anyOf ||\n schema.oneOf ||\n isComplexType(schema) ||\n (isArrayType(schema) &&\n \"items\" in schema &&\n isComplexType(schema.items)) ||\n schema.additionalProperties) &&\n !isArrayCircularRef(schema),\n );\n\n return (\n <li className=\"p-4 bg-border/20 hover:bg-border/30\">\n <div className=\"flex flex-col gap-2.5 justify-between text-sm\">\n <div className=\"space-x-2 rtl:space-x-reverse\">\n <SelectOnClick asChild>\n <code>{name}</code>\n </SelectOnClick>\n <ParamInfos\n schema={schema}\n extraItems={[\n group !== \"optional\" && (\n <span className=\"text-primary\">required</span>\n ),\n isArrayCircularRef(schema) && (\n <RecursiveIndicator\n circularProp={extractCircularRefInfo(schema.items)}\n />\n ),\n ]}\n />\n </div>\n {schema.description && (\n <Markdown\n className=\"text-sm leading-normal\"\n content={schema.description}\n />\n )}\n {schema.type === \"array\" && \"items\" in schema && schema.items.enum && (\n <EnumValues values={schema.items.enum} />\n )}\n {schema.const && <ConstValue schema={schema} hideDescription />}\n {schema.enum && <EnumValues values={schema.enum} />}\n <SchemaExampleAndDefault schema={schema} />\n\n {isCollapsible && (\n <Collapsible.Root\n defaultOpen={defaultOpen}\n open={isOpen}\n onOpenChange={() => setIsOpen(!isOpen)}\n >\n {showCollapseButton && (\n <Collapsible.Trigger asChild>\n <Button variant=\"expand\" size=\"sm\">\n {isOpen ? <MinusIcon size={12} /> : <PlusIcon size={12} />}\n {!isOpen ? \"Show properties\" : \"Hide properties\"}\n </Button>\n </Collapsible.Trigger>\n )}\n <Collapsible.Content>\n <div className=\"mt-2\">\n {schema.anyOf || schema.oneOf || schema.type === \"object\" ? (\n <SchemaView schema={schema} />\n ) : isArrayType(schema) && \"items\" in schema ? (\n <SchemaView schema={schema.items} />\n ) : null}\n </div>\n </Collapsible.Content>\n </Collapsible.Root>\n )}\n </div>\n </li>\n );\n};\n","import type { SchemaObject } from \"../../../oas/parser/index.js\";\n\nexport type FieldSignature = {\n type?: SchemaObject[\"type\"];\n const?: unknown;\n enum?: unknown[];\n format?: string;\n pattern?: string;\n minimum?: number;\n maximum?: number;\n exclusiveMinimum?: boolean | number;\n exclusiveMaximum?: boolean | number;\n minLength?: number;\n maxLength?: number;\n minItems?: number;\n maxItems?: number;\n itemsType?: string | string[];\n additionalProps?: \"true\" | \"false\" | \"schema\";\n};\n\nexport type FieldDoc = {\n name: string;\n humanType: string;\n description?: string;\n requiredInAll: boolean;\n};\n\nexport const unionVariants = (schema: SchemaObject): SchemaObject[] => {\n const variants = (schema.oneOf ?? schema.anyOf ?? []) as SchemaObject[];\n\n // If parent schema has properties that variants don't, merge them\n // This handles the pattern where anyOf/oneOf is used just for required field combinations\n if (schema.properties && Object.keys(schema.properties).length > 0) {\n return variants.map((variant) => {\n // If variant doesn't define its own properties or type, inherit from parent\n const shouldInherit =\n !variant.properties &&\n !variant.type &&\n !variant.oneOf &&\n !variant.anyOf;\n\n if (shouldInherit) {\n return {\n ...variant,\n type: \"object\" as const,\n properties: schema.properties,\n required: variant.required ?? schema.required,\n };\n }\n\n return variant;\n });\n }\n\n return variants;\n};\n\nexport const decideExclusivity = (\n schema: SchemaObject,\n): \"exactly-one\" | \"at-least-one\" => {\n if (Array.isArray(schema.oneOf)) return \"exactly-one\";\n\n const discriminator = schema.discriminator?.propertyName;\n if (!discriminator) return \"at-least-one\";\n\n const variants = unionVariants(schema);\n const seen = new Set<string>();\n\n for (const variant of variants) {\n const prop = variant.properties?.[discriminator];\n\n const value =\n prop?.const ??\n (Array.isArray(prop?.enum) && prop.enum.length === 1\n ? String(prop.enum[0])\n : undefined);\n\n if (value == null || seen.has(String(value))) return \"at-least-one\";\n seen.add(String(value));\n }\n\n return \"exactly-one\";\n};\n\nexport const labelForVariant = (index: number, variant: SchemaObject) =>\n variant.title?.trim() || `Variant ${index + 1}`;\n\nexport const quickGuards = (variant: SchemaObject, root?: SchemaObject) => {\n const guards: string[] = [];\n\n if (variant.type) {\n guards.push(\n `type = ${Array.isArray(variant.type) ? variant.type.join(\"|\") : variant.type}`,\n );\n }\n\n const discriminator = root?.discriminator?.propertyName;\n if (discriminator) {\n const discriminatorProp = variant.properties?.[discriminator] as\n | SchemaObject\n | undefined;\n\n const discriminatorValue =\n discriminatorProp?.const ??\n (Array.isArray(discriminatorProp?.enum) &&\n discriminatorProp.enum.length === 1\n ? discriminatorProp.enum[0]\n : undefined);\n\n if (discriminatorValue !== undefined) {\n guards.push(`${discriminator}=${JSON.stringify(discriminatorValue)}`);\n }\n }\n\n const required = (variant.required ?? []).filter((k) => k !== discriminator);\n if (required.length) {\n const head = required.slice(0, 3).join(\", \");\n const more = required.length > 3 ? ` +${required.length - 3} more` : \"\";\n guards.push(`requires: ${head}${more}`);\n }\n\n return guards;\n};\n","import { useState } from \"react\";\nimport type { SchemaObject } from \"../../../oas/parser/index.js\";\nimport { Badge } from \"../../../ui/Badge.js\";\nimport { Card } from \"../../../ui/Card.js\";\nimport { cn } from \"../../../util/cn.js\";\nimport { SchemaView } from \"./SchemaView.js\";\nimport {\n decideExclusivity,\n labelForVariant,\n quickGuards,\n unionVariants,\n} from \"./union-helpers.js\";\n\nconst DecisionTable = ({\n variants,\n schema,\n selectedVariant,\n onSelectVariant,\n}: {\n variants: SchemaObject[];\n schema: SchemaObject;\n selectedVariant: string;\n onSelectVariant: (label: string) => void;\n}) => {\n const rows = variants.map((v, i) => ({\n label: labelForVariant(i, v),\n guards: quickGuards(v, schema),\n }));\n\n return (\n <div className=\"flex flex-col gap-2 text-sm\">\n <h4 className=\"font-medium\">Decision Table</h4>\n <div className=\"border rounded-md overflow-hidden\">\n <table className=\"w-full\">\n <thead>\n <tr className=\"border-b bg-muted/50\">\n <th className=\"text-left p-2 font-medium\">Variant</th>\n <th className=\"text-left p-2 font-medium\">Matching Criteria</th>\n </tr>\n </thead>\n <tbody className=\"divide-y\">\n {rows.map((row) => (\n <tr key={row.label} className=\"hover:bg-muted/30\">\n <td className=\"p-2 font-medium\">\n <button\n type=\"button\"\n className={cn(\n \"hover:underline\",\n selectedVariant === row.label && \"text-primary\",\n )}\n onClick={() => onSelectVariant(row.label)}\n >\n {row.label}\n </button>\n </td>\n <td className=\"p-2 text-muted-foreground text-xs\">\n {row.guards.length > 0\n ? row.guards.join(\" · \")\n : \"No specific criteria\"}\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </div>\n );\n};\n\nconst VariantPanel = ({ variant }: { variant: SchemaObject }) => {\n return (\n <div className=\"space-y-2\">\n {variant.description && (\n <p className=\"text-sm text-muted-foreground\">{variant.description}</p>\n )}\n <SchemaView schema={variant} />\n </div>\n );\n};\n\nexport const UnionView = ({\n schema,\n cardHeader,\n}: {\n schema: SchemaObject;\n cardHeader?: React.ReactNode;\n}) => {\n const mode = Array.isArray(schema.oneOf)\n ? \"oneOf\"\n : Array.isArray(schema.anyOf)\n ? \"anyOf\"\n : undefined;\n\n const variants = mode ? unionVariants(schema) : [];\n const [selectedVariant, setSelectedVariant] = useState(() =>\n variants[0] ? labelForVariant(0, variants[0]) : \"\",\n );\n\n if (!mode) return null;\n\n const exclusivity = decideExclusivity(schema);\n\n const semanticsMessage =\n exclusivity === \"exactly-one\" ? (\n <>\n Exactly one variant <b>must match</b>.\n </>\n ) : (\n <>\n At least one variant <b>must match</b>. Multiple variants{\" \"}\n <i>may match</i> simultaneously.\n </>\n );\n\n const currentVariantIndex = variants.findIndex(\n (v, i) => labelForVariant(i, v) === selectedVariant,\n );\n const currentVariant =\n currentVariantIndex >= 0 ? variants[currentVariantIndex] : null;\n\n return (\n <Card className=\"overflow-hidden text-sm\">\n {cardHeader}\n <div className=\"flex flex-col gap-4 p-4\">\n <div className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">{mode}</Badge>\n <div className=\"flex-1 p-2\">\n <span className=\"text-sm\">{semanticsMessage}</span>\n </div>\n </div>\n\n <DecisionTable\n variants={variants}\n schema={schema}\n selectedVariant={selectedVariant}\n onSelectVariant={setSelectedVariant}\n />\n <strong>Properties for {selectedVariant}:</strong>\n {currentVariant && <VariantPanel variant={currentVariant} />}\n </div>\n </Card>\n );\n};\n","import { InfoIcon } from \"lucide-react\";\nimport { Markdown } from \"../../../components/Markdown.js\";\nimport type { SchemaObject } from \"../../../oas/parser/index.js\";\nimport { Card } from \"../../../ui/Card.js\";\nimport { groupBy } from \"../../../util/groupBy.js\";\nimport { ConstValue } from \"../components/ConstValue.js\";\nimport { EnumValues } from \"../components/EnumValues.js\";\nimport { ParamInfos } from \"../ParamInfos.js\";\nimport { SchemaExampleAndDefault } from \"./SchemaExampleAndDefault.js\";\nimport { SchemaPropertyItem } from \"./SchemaPropertyItem.js\";\nimport { UnionView } from \"./UnionView.js\";\nimport { isBasicType } from \"./utils.js\";\n\nconst renderMarkdown = (content?: string) =>\n content && (\n <Markdown\n className=\"text-sm leading-normal line-clamp-4\"\n content={content}\n />\n );\n\nconst renderBasicSchema = (\n schema: SchemaObject,\n cardHeader?: React.ReactNode,\n) => (\n <Card className=\"overflow-hidden\">\n {cardHeader}\n <div className=\"p-4 space-y-2\">\n <span className=\"text-sm text-muted-foreground\">\n <ParamInfos schema={schema} />\n </span>\n {schema.enum && <EnumValues values={schema.enum} />}\n {renderMarkdown(schema.description)}\n <SchemaExampleAndDefault schema={schema} />\n </div>\n </Card>\n);\n\nexport const SchemaView = ({\n schema,\n defaultOpen = false,\n cardHeader,\n embedded,\n}: {\n schema?: SchemaObject | null;\n defaultOpen?: boolean;\n cardHeader?: React.ReactNode;\n embedded?: boolean;\n}) => {\n if (!schema || Object.keys(schema).length === 0) {\n return (\n <Card className=\"overflow-hidden\">\n {cardHeader}\n <div className=\"text-sm text-muted-foreground italic p-4\">\n No data returned\n </div>\n </Card>\n );\n }\n\n if (schema.const) {\n return <ConstValue schema={schema} />;\n }\n\n if (Array.isArray(schema.oneOf) || Array.isArray(schema.anyOf)) {\n return <UnionView schema={schema} cardHeader={cardHeader} />;\n }\n\n if (isBasicType(schema.type)) {\n return renderBasicSchema(schema, cardHeader);\n }\n\n if (schema.type === \"array\" && typeof schema.items === \"object\") {\n return <SchemaView schema={schema.items} cardHeader={cardHeader} />;\n }\n\n if (schema.type === \"object\") {\n const groupedProperties = groupBy(\n Object.entries(schema.properties ?? {}),\n ([propertyName, property]) => {\n return property.deprecated\n ? \"deprecated\"\n : schema.required?.includes(propertyName)\n ? \"required\"\n : \"optional\";\n },\n );\n const groupNames = [\"required\", \"optional\", \"deprecated\"] as const;\n\n const additionalProperties =\n typeof schema.additionalProperties === \"object\" ? (\n <SchemaView schema={schema.additionalProperties} embedded />\n ) : schema.additionalProperties === true ? (\n <div className=\"text-sm p-4 bg-border/20 hover:bg-border/30 flex items-center gap-1\">\n <span>Additional properties are allowed</span>\n <a\n className=\"p-0.5 -m-0.5\"\n href=\"https://swagger.io/docs/specification/v3_0/data-models/dictionaries/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n <InfoIcon size={14} />\n </a>\n </div>\n ) : null;\n\n const Component = embedded ? \"div\" : Card;\n\n return (\n <Component className=\"divide-y overflow-hidden\">\n {cardHeader}\n {groupNames.map(\n (group) =>\n groupedProperties[group] && (\n <ul key={group} className=\"divide-y\">\n {groupedProperties[group].map(([name, schema]) => (\n <SchemaPropertyItem\n key={name}\n name={name}\n schema={schema}\n group={group}\n defaultOpen={defaultOpen}\n />\n ))}\n </ul>\n ),\n )}\n {additionalProperties}\n </Component>\n );\n }\n\n return null;\n};\n"],"names":["groupBy","arr","keySelector","accumulator","val","groupedKey","ConstValue","schema","hideDescription","jsx","SelectOnClick","EnumValues","values","className","maxVisibleValues","isOpen","setIsOpen","useState","shouldCollapse","visibleValues","cn","value","Button","jsxs","ChevronUpIcon","ChevronDownIcon","Pattern","pattern","isExpanded","setIsExpanded","isExpandable","shortPattern","InlineCode","ChevronsLeftRightIcon","getSchemaInfos","Fragment","ParamInfos","extraItems","filteredItems","item","isValidElement","index","SchemaExampleAndDefault","example","defaultValue","isBasicType","type","isArrayType","isComplexType","isCircularRef","CIRCULAR_REF","isArrayCircularRef","extractCircularRefInfo","ref","RecursiveIndicator","circularProp","RefreshCcwDotIcon","SchemaPropertyItem","name","group","defaultOpen","showCollapseButton","isCollapsible","Markdown","Collapsible","MinusIcon","PlusIcon","SchemaView","unionVariants","variants","variant","decideExclusivity","discriminator","seen","prop","labelForVariant","quickGuards","root","guards","discriminatorProp","discriminatorValue","required","k","head","more","DecisionTable","selectedVariant","onSelectVariant","rows","v","i","row","VariantPanel","UnionView","cardHeader","mode","setSelectedVariant","semanticsMessage","currentVariantIndex","currentVariant","Card","Badge","renderMarkdown","content","renderBasicSchema","embedded","groupedProperties","propertyName","property","groupNames","additionalProperties","InfoIcon","Component"],"mappings":"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"}