zudoku 0.0.0-f36627bd → 0.0.0-f370c714

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 (963) hide show
  1. package/README.md +1 -1
  2. package/client.d.ts +8 -0
  3. package/dist/app/entry.server.js +14 -1
  4. package/dist/app/entry.server.js.map +1 -1
  5. package/dist/app/main.d.ts +91 -1
  6. package/dist/app/main.js +5 -1
  7. package/dist/app/main.js.map +1 -1
  8. package/dist/app/sentry.js +1 -1
  9. package/dist/cli/cli.d.ts +9 -0
  10. package/dist/cli/cli.js +4 -10
  11. package/dist/cli/cli.js.map +1 -1
  12. package/dist/cli/common/version-check.d.ts +2 -0
  13. package/dist/cli/common/version-check.js +58 -0
  14. package/dist/cli/common/version-check.js.map +1 -0
  15. package/dist/config/config.d.ts +15 -41
  16. package/dist/config/validators/BuildSchema.d.ts +15 -7
  17. package/dist/config/validators/BuildSchema.js +34 -2
  18. package/dist/config/validators/BuildSchema.js.map +1 -1
  19. package/dist/config/validators/InputNavigationSchema.d.ts +169 -85
  20. package/dist/config/validators/InputNavigationSchema.js +1 -0
  21. package/dist/config/validators/InputNavigationSchema.js.map +1 -1
  22. package/dist/config/validators/NavigationSchema.js +2 -4
  23. package/dist/config/validators/NavigationSchema.js.map +1 -1
  24. package/dist/config/validators/ProtectedRoutesSchema.d.ts +1 -1
  25. package/dist/config/validators/icon-types.d.ts +1 -1
  26. package/dist/config/validators/icon-types.js +20 -0
  27. package/dist/config/validators/icon-types.js.map +1 -1
  28. package/dist/config/validators/validate.d.ts +278 -25
  29. package/dist/config/validators/validate.js +75 -10
  30. package/dist/config/validators/validate.js.map +1 -1
  31. package/dist/config/validators/validate.test.js +43 -0
  32. package/dist/config/validators/validate.test.js.map +1 -1
  33. package/dist/flat-config.d.ts +60 -5
  34. package/dist/lib/assets/language-icons/c.d.ts +3 -0
  35. package/dist/lib/assets/language-icons/c.js +4 -0
  36. package/dist/lib/assets/language-icons/c.js.map +1 -0
  37. package/dist/lib/assets/language-icons/commonlisp.d.ts +3 -0
  38. package/dist/lib/assets/language-icons/commonlisp.js +4 -0
  39. package/dist/lib/assets/language-icons/commonlisp.js.map +1 -0
  40. package/dist/lib/assets/language-icons/cpp.d.ts +3 -0
  41. package/dist/lib/assets/language-icons/cpp.js +4 -0
  42. package/dist/lib/assets/language-icons/cpp.js.map +1 -0
  43. package/dist/lib/assets/language-icons/dart.d.ts +3 -0
  44. package/dist/lib/assets/language-icons/dart.js +4 -0
  45. package/dist/lib/assets/language-icons/dart.js.map +1 -0
  46. package/dist/lib/assets/language-icons/elixir.d.ts +3 -0
  47. package/dist/lib/assets/language-icons/elixir.js +4 -0
  48. package/dist/lib/assets/language-icons/elixir.js.map +1 -0
  49. package/dist/lib/assets/language-icons/ocaml.d.ts +3 -0
  50. package/dist/lib/assets/language-icons/ocaml.js +4 -0
  51. package/dist/lib/assets/language-icons/ocaml.js.map +1 -0
  52. package/dist/lib/assets/language-icons/powershell.d.ts +3 -0
  53. package/dist/lib/assets/language-icons/powershell.js +4 -0
  54. package/dist/lib/assets/language-icons/powershell.js.map +1 -0
  55. package/dist/lib/assets/language-icons/scala.d.ts +3 -0
  56. package/dist/lib/assets/language-icons/scala.js +4 -0
  57. package/dist/lib/assets/language-icons/scala.js.map +1 -0
  58. package/dist/lib/assets/language-icons/zig.d.ts +3 -0
  59. package/dist/lib/assets/language-icons/zig.js +4 -0
  60. package/dist/lib/assets/language-icons/zig.js.map +1 -0
  61. package/dist/lib/auth/issuer.js +3 -0
  62. package/dist/lib/auth/issuer.js.map +1 -1
  63. package/dist/lib/authentication/authentication.d.ts +19 -10
  64. package/dist/lib/authentication/components/OAuthErrorPage.js +1 -1
  65. package/dist/lib/authentication/components/OAuthErrorPage.js.map +1 -1
  66. package/dist/lib/authentication/components/SignIn.js +8 -5
  67. package/dist/lib/authentication/components/SignIn.js.map +1 -1
  68. package/dist/lib/authentication/components/SignOut.js +6 -6
  69. package/dist/lib/authentication/components/SignOut.js.map +1 -1
  70. package/dist/lib/authentication/components/SignUp.js +7 -5
  71. package/dist/lib/authentication/components/SignUp.js.map +1 -1
  72. package/dist/lib/authentication/hook.d.ts +5 -2
  73. package/dist/lib/authentication/hook.js +22 -8
  74. package/dist/lib/authentication/hook.js.map +1 -1
  75. package/dist/lib/authentication/providers/auth0.js +13 -4
  76. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  77. package/dist/lib/authentication/providers/azureb2c.d.ts +4 -4
  78. package/dist/lib/authentication/providers/azureb2c.js +3 -3
  79. package/dist/lib/authentication/providers/azureb2c.js.map +1 -1
  80. package/dist/lib/authentication/providers/clerk.js +2 -2
  81. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  82. package/dist/lib/authentication/providers/firebase.d.ts +4 -0
  83. package/dist/lib/authentication/providers/firebase.js +273 -0
  84. package/dist/lib/authentication/providers/firebase.js.map +1 -0
  85. package/dist/lib/authentication/providers/openid.d.ts +7 -7
  86. package/dist/lib/authentication/providers/openid.js +5 -3
  87. package/dist/lib/authentication/providers/openid.js.map +1 -1
  88. package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.d.ts +8 -0
  89. package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.js +39 -0
  90. package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.js.map +1 -0
  91. package/dist/lib/authentication/providers/supabase.js +30 -31
  92. package/dist/lib/authentication/providers/supabase.js.map +1 -1
  93. package/dist/lib/authentication/state.d.ts +5 -7
  94. package/dist/lib/authentication/state.js +2 -14
  95. package/dist/lib/authentication/state.js.map +1 -1
  96. package/dist/lib/authentication/ui/EmailVerificationUi.d.ts +4 -0
  97. package/dist/lib/authentication/ui/EmailVerificationUi.js +34 -0
  98. package/dist/lib/authentication/ui/EmailVerificationUi.js.map +1 -0
  99. package/dist/lib/authentication/ui/ZudokuAuthUi.d.ts +29 -0
  100. package/dist/lib/authentication/ui/ZudokuAuthUi.js +160 -0
  101. package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -0
  102. package/dist/lib/authentication/ui/icons/Apple.d.ts +3 -0
  103. package/dist/lib/authentication/ui/icons/Apple.js +4 -0
  104. package/dist/lib/authentication/ui/icons/Apple.js.map +1 -0
  105. package/dist/lib/authentication/ui/icons/Facebook.d.ts +3 -0
  106. package/dist/lib/authentication/ui/icons/Facebook.js +4 -0
  107. package/dist/lib/authentication/ui/icons/Facebook.js.map +1 -0
  108. package/dist/lib/authentication/ui/icons/Github.d.ts +3 -0
  109. package/dist/lib/authentication/ui/icons/Github.js +4 -0
  110. package/dist/lib/authentication/ui/icons/Github.js.map +1 -0
  111. package/dist/lib/authentication/ui/icons/Google.d.ts +3 -0
  112. package/dist/lib/authentication/ui/icons/Google.js +4 -0
  113. package/dist/lib/authentication/ui/icons/Google.js.map +1 -0
  114. package/dist/lib/authentication/ui/icons/Microsoft.d.ts +3 -0
  115. package/dist/lib/authentication/ui/icons/Microsoft.js +4 -0
  116. package/dist/lib/authentication/ui/icons/Microsoft.js.map +1 -0
  117. package/dist/lib/authentication/ui/icons/X.d.ts +3 -0
  118. package/dist/lib/authentication/ui/icons/X.js +4 -0
  119. package/dist/lib/authentication/ui/icons/X.js.map +1 -0
  120. package/dist/lib/authentication/utils/relativeRedirectUrl.d.ts +1 -0
  121. package/dist/lib/authentication/utils/relativeRedirectUrl.js +8 -0
  122. package/dist/lib/authentication/utils/relativeRedirectUrl.js.map +1 -0
  123. package/dist/lib/components/Autocomplete.d.ts +3 -1
  124. package/dist/lib/components/Autocomplete.js +6 -2
  125. package/dist/lib/components/Autocomplete.js.map +1 -1
  126. package/dist/lib/components/BuildCheck.js +2 -2
  127. package/dist/lib/components/BuildCheck.js.map +1 -1
  128. package/dist/lib/components/Heading.d.ts +1 -1
  129. package/dist/lib/components/Heading.js +1 -5
  130. package/dist/lib/components/Heading.js.map +1 -1
  131. package/dist/lib/components/LanguageIcon.js +45 -0
  132. package/dist/lib/components/LanguageIcon.js.map +1 -1
  133. package/dist/lib/components/Layout.js +3 -2
  134. package/dist/lib/components/Layout.js.map +1 -1
  135. package/dist/lib/components/Main.js +1 -1
  136. package/dist/lib/components/Main.js.map +1 -1
  137. package/dist/lib/components/Mermaid.d.ts +7 -0
  138. package/dist/lib/components/Mermaid.js +42 -0
  139. package/dist/lib/components/Mermaid.js.map +1 -0
  140. package/dist/lib/components/PagefindSearchMeta.d.ts +8 -0
  141. package/dist/lib/components/PagefindSearchMeta.js +7 -0
  142. package/dist/lib/components/PagefindSearchMeta.js.map +1 -0
  143. package/dist/lib/components/Zudoku.js +5 -8
  144. package/dist/lib/components/Zudoku.js.map +1 -1
  145. package/dist/lib/components/cache.d.ts +3 -1
  146. package/dist/lib/components/cache.js +3 -5
  147. package/dist/lib/components/cache.js.map +1 -1
  148. package/dist/lib/components/context/ZudokuContext.js +10 -2
  149. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  150. package/dist/lib/components/index.d.ts +5 -4
  151. package/dist/lib/components/navigation/NavigationItem.js +3 -3
  152. package/dist/lib/components/navigation/NavigationItem.js.map +1 -1
  153. package/dist/lib/components/navigation/Toc.js +1 -1
  154. package/dist/lib/components/navigation/Toc.js.map +1 -1
  155. package/dist/lib/core/RouteGuard.d.ts +1 -1
  156. package/dist/lib/core/RouteGuard.js +13 -21
  157. package/dist/lib/core/RouteGuard.js.map +1 -1
  158. package/dist/lib/core/ZudokuContext.d.ts +1 -0
  159. package/dist/lib/core/ZudokuContext.js +2 -0
  160. package/dist/lib/core/ZudokuContext.js.map +1 -1
  161. package/dist/lib/core/__internal.d.ts +1 -1
  162. package/dist/lib/core/plugins.d.ts +3 -3
  163. package/dist/lib/errors/ErrorAlert.js +1 -1
  164. package/dist/lib/errors/ErrorMessage.d.ts +3 -0
  165. package/dist/lib/errors/ErrorMessage.js +16 -0
  166. package/dist/lib/errors/ErrorMessage.js.map +1 -0
  167. package/dist/lib/errors/RouterError.d.ts +3 -1
  168. package/dist/lib/errors/RouterError.js +3 -2
  169. package/dist/lib/errors/RouterError.js.map +1 -1
  170. package/dist/lib/hooks/index.d.ts +5 -3
  171. package/dist/lib/oas/graphql/index.js +24 -3
  172. package/dist/lib/oas/graphql/index.js.map +1 -1
  173. package/dist/lib/oas/parser/index.d.ts +1 -0
  174. package/dist/lib/oas/parser/index.js +7 -3
  175. package/dist/lib/oas/parser/index.js.map +1 -1
  176. package/dist/lib/plugins/api-keys/ProtectedRoute.js +4 -1
  177. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
  178. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +9 -172
  179. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -1
  180. package/dist/lib/plugins/api-keys/index.d.ts +4 -1
  181. package/dist/lib/plugins/api-keys/index.js +21 -17
  182. package/dist/lib/plugins/api-keys/index.js.map +1 -1
  183. package/dist/lib/plugins/api-keys/settings/ApiKeyItem.d.ts +12 -0
  184. package/dist/lib/plugins/api-keys/settings/ApiKeyItem.js +133 -0
  185. package/dist/lib/plugins/api-keys/settings/ApiKeyItem.js.map +1 -0
  186. package/dist/lib/plugins/api-keys/settings/ApiKeyList.d.ts +4 -0
  187. package/dist/lib/plugins/api-keys/settings/ApiKeyList.js +30 -0
  188. package/dist/lib/plugins/api-keys/settings/ApiKeyList.js.map +1 -0
  189. package/dist/lib/plugins/api-keys/settings/RevealApiKey.d.ts +6 -0
  190. package/dist/lib/plugins/api-keys/settings/RevealApiKey.js +39 -0
  191. package/dist/lib/plugins/api-keys/settings/RevealApiKey.js.map +1 -0
  192. package/dist/lib/plugins/markdown/MdxPage.d.ts +2 -1
  193. package/dist/lib/plugins/markdown/MdxPage.js +28 -4
  194. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  195. package/dist/lib/plugins/markdown/assets/ChatGPTLogo.d.ts +2 -0
  196. package/dist/lib/plugins/markdown/assets/ChatGPTLogo.js +3 -0
  197. package/dist/lib/plugins/markdown/assets/ChatGPTLogo.js.map +1 -0
  198. package/dist/lib/plugins/markdown/assets/ClaudeLogo.d.ts +2 -0
  199. package/dist/lib/plugins/markdown/assets/ClaudeLogo.js +3 -0
  200. package/dist/lib/plugins/markdown/assets/ClaudeLogo.js.map +1 -0
  201. package/dist/lib/plugins/markdown/index.d.ts +3 -1
  202. package/dist/lib/plugins/markdown/index.js +1 -1
  203. package/dist/lib/plugins/markdown/index.js.map +1 -1
  204. package/dist/lib/plugins/openapi/CollapsibleCode.d.ts +1 -0
  205. package/dist/lib/plugins/openapi/CollapsibleCode.js +2 -1
  206. package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -1
  207. package/dist/lib/plugins/openapi/DownloadSchemaButton.d.ts +3 -0
  208. package/dist/lib/plugins/openapi/DownloadSchemaButton.js +47 -0
  209. package/dist/lib/plugins/openapi/DownloadSchemaButton.js.map +1 -0
  210. package/dist/lib/plugins/openapi/Endpoint.js +3 -6
  211. package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
  212. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.d.ts +5 -0
  213. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js +10 -0
  214. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js.map +1 -0
  215. package/dist/lib/plugins/openapi/MCPEndpoint.js +9 -18
  216. package/dist/lib/plugins/openapi/MCPEndpoint.js.map +1 -1
  217. package/dist/lib/plugins/openapi/OasProvider.js +22 -13
  218. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -1
  219. package/dist/lib/plugins/openapi/OperationList.js +22 -7
  220. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  221. package/dist/lib/plugins/openapi/OperationListItem.d.ts +3 -2
  222. package/dist/lib/plugins/openapi/OperationListItem.js +8 -4
  223. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  224. package/dist/lib/plugins/openapi/ParamInfos.js +1 -0
  225. package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -1
  226. package/dist/lib/plugins/openapi/ParameterList.js +7 -4
  227. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  228. package/dist/lib/plugins/openapi/ParameterListItem.js +17 -6
  229. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  230. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +1 -3
  231. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
  232. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +9 -2
  233. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +5 -2
  234. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  235. package/dist/lib/plugins/openapi/ResponsesSidecarBox.d.ts +4 -2
  236. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +26 -4
  237. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  238. package/dist/lib/plugins/openapi/SchemaList.js +2 -1
  239. package/dist/lib/plugins/openapi/SchemaList.js.map +1 -1
  240. package/dist/lib/plugins/openapi/Sidecar.d.ts +3 -2
  241. package/dist/lib/plugins/openapi/Sidecar.js +68 -35
  242. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  243. package/dist/lib/plugins/openapi/SidecarBox.js +4 -4
  244. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  245. package/dist/lib/plugins/openapi/SidecarExamples.d.ts +9 -2
  246. package/dist/lib/plugins/openapi/SidecarExamples.js +24 -43
  247. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
  248. package/dist/lib/plugins/openapi/components/ConstValue.js +1 -1
  249. package/dist/lib/plugins/openapi/components/ConstValue.js.map +1 -1
  250. package/dist/lib/plugins/openapi/components/EnumValues.js +1 -1
  251. package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -1
  252. package/dist/lib/plugins/openapi/components/NonHighlightedCode.d.ts +4 -0
  253. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js +5 -0
  254. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js.map +1 -0
  255. package/dist/lib/plugins/openapi/components/ResponseContent.js +5 -6
  256. package/dist/lib/plugins/openapi/components/ResponseContent.js.map +1 -1
  257. package/dist/lib/plugins/openapi/graphql/fragment-masking.js.map +1 -1
  258. package/dist/lib/plugins/openapi/graphql/gql.d.ts +1 -1
  259. package/dist/lib/plugins/openapi/graphql/gql.js +2 -1
  260. package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
  261. package/dist/lib/plugins/openapi/graphql/graphql.d.ts +8 -2
  262. package/dist/lib/plugins/openapi/graphql/graphql.js +8 -0
  263. package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
  264. package/dist/lib/plugins/openapi/index.js +16 -15
  265. package/dist/lib/plugins/openapi/index.js.map +1 -1
  266. package/dist/lib/plugins/openapi/interfaces.d.ts +30 -13
  267. package/dist/lib/plugins/openapi/playground/BodyPanel.js +67 -15
  268. package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -1
  269. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +2 -2
  270. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -1
  271. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +1 -1
  272. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
  273. package/dist/lib/plugins/openapi/playground/Headers.js +23 -83
  274. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  275. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +10 -2
  276. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +8 -1
  277. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -1
  278. package/dist/lib/plugins/openapi/playground/PathParams.js +2 -3
  279. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  280. package/dist/lib/plugins/openapi/playground/Playground.d.ts +7 -0
  281. package/dist/lib/plugins/openapi/playground/Playground.js +71 -29
  282. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  283. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +5 -2
  284. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  285. package/dist/lib/plugins/openapi/playground/QueryParams.js +16 -40
  286. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  287. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.d.ts +2 -1
  288. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js +10 -2
  289. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js.map +1 -1
  290. package/dist/lib/plugins/openapi/playground/rememberedIdentity.d.ts +5 -3
  291. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.d.ts +8 -0
  292. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js +19 -0
  293. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js.map +1 -0
  294. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +1 -1
  295. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -1
  296. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.d.ts +1 -0
  297. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js +540 -0
  298. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js.map +1 -0
  299. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.d.ts +40 -0
  300. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js +205 -0
  301. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js.map +1 -0
  302. package/dist/lib/plugins/openapi/playground/result-panel/Highlight.d.ts +1 -1
  303. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js +1 -1
  304. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js.map +1 -1
  305. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +33 -19
  306. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
  307. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +1 -1
  308. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -1
  309. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.d.ts +5 -3
  310. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js +2 -0
  311. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js.map +1 -1
  312. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +1 -1
  313. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -1
  314. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +17 -8
  315. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
  316. package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +1 -1
  317. package/dist/lib/plugins/openapi/schema/SchemaView.js +31 -16
  318. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  319. package/dist/lib/plugins/openapi/schema/UnionView.js +2 -5
  320. package/dist/lib/plugins/openapi/schema/UnionView.js.map +1 -1
  321. package/dist/lib/plugins/openapi/schema/union-helpers.js +0 -1
  322. package/dist/lib/plugins/openapi/schema/union-helpers.js.map +1 -1
  323. package/dist/lib/plugins/openapi/schema/utils.d.ts +2 -2
  324. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  325. package/dist/lib/plugins/openapi/state.d.ts +5 -3
  326. package/dist/lib/plugins/openapi/util/createHttpSnippet.js +24 -1
  327. package/dist/lib/plugins/openapi/util/createHttpSnippet.js.map +1 -1
  328. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +9 -11
  329. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  330. package/dist/lib/plugins/openapi/util/getRoutes.d.ts +6 -1
  331. package/dist/lib/plugins/openapi/util/getRoutes.js +29 -2
  332. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  333. package/dist/lib/plugins/search-pagefind/IndexingDialog.d.ts +3 -0
  334. package/dist/lib/plugins/search-pagefind/IndexingDialog.js +64 -0
  335. package/dist/lib/plugins/search-pagefind/IndexingDialog.js.map +1 -0
  336. package/dist/lib/plugins/search-pagefind/PagefindSearch.js +22 -5
  337. package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -1
  338. package/dist/lib/plugins/search-pagefind/ResultList.js +5 -4
  339. package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -1
  340. package/dist/lib/shiki.d.ts +2 -2
  341. package/dist/lib/shiki.js +40 -14
  342. package/dist/lib/shiki.js.map +1 -1
  343. package/dist/lib/ui/Badge.d.ts +3 -3
  344. package/dist/lib/ui/Badge.js +9 -7
  345. package/dist/lib/ui/Badge.js.map +1 -1
  346. package/dist/lib/ui/Button.d.ts +2 -2
  347. package/dist/lib/ui/Button.js +10 -8
  348. package/dist/lib/ui/Button.js.map +1 -1
  349. package/dist/lib/ui/ButtonGroup.d.ts +11 -0
  350. package/dist/lib/ui/ButtonGroup.js +28 -0
  351. package/dist/lib/ui/ButtonGroup.js.map +1 -0
  352. package/dist/lib/ui/Callout.d.ts +5 -5
  353. package/dist/lib/ui/Callout.js +5 -5
  354. package/dist/lib/ui/Callout.js.map +1 -1
  355. package/dist/lib/ui/Carousel.js.map +1 -1
  356. package/dist/lib/ui/Checkbox.d.ts +2 -2
  357. package/dist/lib/ui/Checkbox.js +4 -4
  358. package/dist/lib/ui/Checkbox.js.map +1 -1
  359. package/dist/lib/ui/CodeBlock.d.ts +0 -1
  360. package/dist/lib/ui/CodeBlock.js +1 -1
  361. package/dist/lib/ui/CodeBlock.js.map +1 -1
  362. package/dist/lib/ui/Collapsible.d.ts +4 -4
  363. package/dist/lib/ui/Collapsible.js +11 -4
  364. package/dist/lib/ui/Collapsible.js.map +1 -1
  365. package/dist/lib/ui/Command.d.ts +3 -3
  366. package/dist/lib/ui/Command.js +2 -2
  367. package/dist/lib/ui/Command.js.map +1 -1
  368. package/dist/lib/ui/Dialog.d.ts +12 -18
  369. package/dist/lib/ui/Dialog.js +30 -17
  370. package/dist/lib/ui/Dialog.js.map +1 -1
  371. package/dist/lib/ui/DropdownMenu.d.ts +21 -23
  372. package/dist/lib/ui/DropdownMenu.js +47 -32
  373. package/dist/lib/ui/DropdownMenu.js.map +1 -1
  374. package/dist/lib/ui/EmbeddedCodeBlock.d.ts +3 -2
  375. package/dist/lib/ui/EmbeddedCodeBlock.js +4 -3
  376. package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  377. package/dist/lib/ui/Frame.d.ts +8 -0
  378. package/dist/lib/ui/Frame.js +22 -0
  379. package/dist/lib/ui/Frame.js.map +1 -0
  380. package/dist/lib/ui/Item.d.ts +23 -0
  381. package/dist/lib/ui/Item.js +67 -0
  382. package/dist/lib/ui/Item.js.map +1 -0
  383. package/dist/lib/ui/Kbd.d.ts +3 -0
  384. package/dist/lib/ui/Kbd.js +10 -0
  385. package/dist/lib/ui/Kbd.js.map +1 -0
  386. package/dist/lib/ui/NativeSelect.d.ts +5 -0
  387. package/dist/lib/ui/NativeSelect.js +14 -0
  388. package/dist/lib/ui/NativeSelect.js.map +1 -0
  389. package/dist/lib/ui/ReactComponentDoc.d.ts +1 -1
  390. package/dist/lib/ui/ReactComponentDoc.js +2 -2
  391. package/dist/lib/ui/ReactComponentDoc.js.map +1 -1
  392. package/dist/lib/ui/Secret.d.ts +6 -0
  393. package/dist/lib/ui/Secret.js +7 -4
  394. package/dist/lib/ui/Secret.js.map +1 -1
  395. package/dist/lib/ui/Select.d.ts +13 -11
  396. package/dist/lib/ui/Select.js +34 -23
  397. package/dist/lib/ui/Select.js.map +1 -1
  398. package/dist/lib/ui/Separator.d.ts +4 -0
  399. package/dist/lib/ui/Separator.js +8 -0
  400. package/dist/lib/ui/Separator.js.map +1 -0
  401. package/dist/lib/ui/SyntaxHighlight.d.ts +1 -0
  402. package/dist/lib/ui/SyntaxHighlight.js.map +1 -1
  403. package/dist/lib/ui/Tooltip.d.ts +7 -7
  404. package/dist/lib/ui/Tooltip.js +16 -10
  405. package/dist/lib/ui/Tooltip.js.map +1 -1
  406. package/dist/lib/util/MdxComponents.d.ts +3 -1
  407. package/dist/lib/util/MdxComponents.js +5 -2
  408. package/dist/lib/util/MdxComponents.js.map +1 -1
  409. package/dist/lib/util/createVariantComponent.d.ts +5 -2
  410. package/dist/lib/util/createVariantComponent.js +5 -2
  411. package/dist/lib/util/createVariantComponent.js.map +1 -1
  412. package/dist/lib/util/flattenAllOf.d.ts +4 -0
  413. package/dist/lib/util/flattenAllOf.js +88 -0
  414. package/dist/lib/util/flattenAllOf.js.map +1 -0
  415. package/dist/lib/util/flattenAllOf.test.d.ts +1 -0
  416. package/dist/lib/util/flattenAllOf.test.js +587 -0
  417. package/dist/lib/util/flattenAllOf.test.js.map +1 -0
  418. package/dist/lib/util/pastellize.js +4 -4
  419. package/dist/lib/util/pastellize.js.map +1 -1
  420. package/dist/lib/util/readFrontmatter.d.ts +6 -0
  421. package/dist/lib/util/readFrontmatter.js +12 -0
  422. package/dist/lib/util/readFrontmatter.js.map +1 -0
  423. package/dist/lib/util/syncZustandState.d.ts +5 -0
  424. package/dist/lib/util/syncZustandState.js +14 -0
  425. package/dist/lib/util/syncZustandState.js.map +1 -0
  426. package/dist/vite/api/SchemaManager.d.ts +8 -1
  427. package/dist/vite/api/SchemaManager.js +52 -21
  428. package/dist/vite/api/SchemaManager.js.map +1 -1
  429. package/dist/vite/api/SchemaManager.test.js +69 -2
  430. package/dist/vite/api/SchemaManager.test.js.map +1 -1
  431. package/dist/vite/config.js +11 -1
  432. package/dist/vite/config.js.map +1 -1
  433. package/dist/vite/dev-server.js +25 -0
  434. package/dist/vite/dev-server.js.map +1 -1
  435. package/dist/vite/llms.d.ts +12 -0
  436. package/dist/vite/llms.js +66 -0
  437. package/dist/vite/llms.js.map +1 -0
  438. package/dist/vite/mdx/remark-last-modified.js +57 -3
  439. package/dist/vite/mdx/remark-last-modified.js.map +1 -1
  440. package/dist/vite/pagefind-dev-index.d.ts +16 -0
  441. package/dist/vite/pagefind-dev-index.js +68 -0
  442. package/dist/vite/pagefind-dev-index.js.map +1 -0
  443. package/dist/vite/plugin-api-keys.js +4 -1
  444. package/dist/vite/plugin-api-keys.js.map +1 -1
  445. package/dist/vite/plugin-api.js +58 -19
  446. package/dist/vite/plugin-api.js.map +1 -1
  447. package/dist/vite/plugin-docs.d.ts +9 -0
  448. package/dist/vite/plugin-docs.js +68 -49
  449. package/dist/vite/plugin-docs.js.map +1 -1
  450. package/dist/vite/plugin-frontmatter.js +3 -5
  451. package/dist/vite/plugin-frontmatter.js.map +1 -1
  452. package/dist/vite/plugin-markdown-export.d.ts +21 -0
  453. package/dist/vite/plugin-markdown-export.js +140 -0
  454. package/dist/vite/plugin-markdown-export.js.map +1 -0
  455. package/dist/vite/plugin-mdx.d.ts +1 -1
  456. package/dist/vite/plugin-mdx.js +39 -29
  457. package/dist/vite/plugin-mdx.js.map +1 -1
  458. package/dist/vite/plugin-navigation.js +4 -0
  459. package/dist/vite/plugin-navigation.js.map +1 -1
  460. package/dist/vite/plugin-theme.js +10 -1
  461. package/dist/vite/plugin-theme.js.map +1 -1
  462. package/dist/vite/plugin.js +2 -0
  463. package/dist/vite/plugin.js.map +1 -1
  464. package/dist/vite/prerender/prerender.js +38 -23
  465. package/dist/vite/prerender/prerender.js.map +1 -1
  466. package/dist/vite/prerender/utils.d.ts +2 -0
  467. package/dist/vite/prerender/utils.js +24 -0
  468. package/dist/vite/prerender/utils.js.map +1 -0
  469. package/dist/vite/prerender/worker.js +3 -0
  470. package/dist/vite/prerender/worker.js.map +1 -1
  471. package/dist/vite/zuplo.d.ts +13 -0
  472. package/dist/vite/zuplo.js +15 -0
  473. package/dist/vite/zuplo.js.map +1 -0
  474. package/lib/ActionButton-BSM2oNHF.js +25 -0
  475. package/lib/ActionButton-BSM2oNHF.js.map +1 -0
  476. package/lib/Button-IOAeVaIH.js +54 -0
  477. package/lib/Button-IOAeVaIH.js.map +1 -0
  478. package/lib/{Card-hTy9PAnh.js → Card-KFniaZn5.js} +2 -2
  479. package/lib/{Card-hTy9PAnh.js.map → Card-KFniaZn5.js.map} +1 -1
  480. package/lib/{CategoryHeading-BGCNu3VK.js → CategoryHeading-DhmodDcq.js} +2 -2
  481. package/lib/{CategoryHeading-BGCNu3VK.js.map → CategoryHeading-DhmodDcq.js.map} +1 -1
  482. package/lib/ClaudeLogo-DgjivS8A.js +69 -0
  483. package/lib/ClaudeLogo-DgjivS8A.js.map +1 -0
  484. package/lib/{Command-TEBTONf1.js → Command-BpT1iBE6.js} +26 -26
  485. package/lib/Command-BpT1iBE6.js.map +1 -0
  486. package/lib/Dialog-BQciPiHN.js +144 -0
  487. package/lib/Dialog-BQciPiHN.js.map +1 -0
  488. package/lib/{Drawer-DM9wJUC6.js → Drawer-BRMcpfuF.js} +7 -7
  489. package/lib/Drawer-BRMcpfuF.js.map +1 -0
  490. package/lib/DropdownMenu-C8SX_-S_.js +104 -0
  491. package/lib/DropdownMenu-C8SX_-S_.js.map +1 -0
  492. package/lib/Frame-DxlznfVd.js +205 -0
  493. package/lib/Frame-DxlznfVd.js.map +1 -0
  494. package/lib/IndexingDialog-DZWj_3cU.js +100 -0
  495. package/lib/IndexingDialog-DZWj_3cU.js.map +1 -0
  496. package/lib/Input-D-kqEQ5M.js +115 -0
  497. package/lib/Input-D-kqEQ5M.js.map +1 -0
  498. package/lib/MdxPage-BL-HbZrv.js +210 -0
  499. package/lib/MdxPage-BL-HbZrv.js.map +1 -0
  500. package/lib/Mermaid-BjSczjLW.js +102 -0
  501. package/lib/Mermaid-BjSczjLW.js.map +1 -0
  502. package/lib/{OAuthErrorPage-BbI9XJWR.js → OAuthErrorPage-DQtg28Go.js} +22 -23
  503. package/lib/{OAuthErrorPage-BbI9XJWR.js.map → OAuthErrorPage-DQtg28Go.js.map} +1 -1
  504. package/lib/OasProvider--qcZwrKS.js +40 -0
  505. package/lib/OasProvider--qcZwrKS.js.map +1 -0
  506. package/lib/OperationList-CSJYzxQY.js +5819 -0
  507. package/lib/OperationList-CSJYzxQY.js.map +1 -0
  508. package/lib/RouteGuard-D0f743SM.js +77 -0
  509. package/lib/RouteGuard-D0f743SM.js.map +1 -0
  510. package/lib/{SchemaList-BcJyi2sR.js → SchemaList-DtyuDrQA.js} +30 -29
  511. package/lib/SchemaList-DtyuDrQA.js.map +1 -0
  512. package/lib/SchemaView-G-SVXxAG.js +435 -0
  513. package/lib/SchemaView-G-SVXxAG.js.map +1 -0
  514. package/lib/Secret-BxGpIhDP.js +243 -0
  515. package/lib/Secret-BxGpIhDP.js.map +1 -0
  516. package/lib/Separator-CTPSeW1S.js +27 -0
  517. package/lib/Separator-CTPSeW1S.js.map +1 -0
  518. package/lib/SignUp-CDl7bQj3.js +50 -0
  519. package/lib/SignUp-CDl7bQj3.js.map +1 -0
  520. package/lib/{Spinner-Cf6E803I.js → Spinner-CI6bRyZw.js} +2 -2
  521. package/lib/{Spinner-Cf6E803I.js.map → Spinner-CI6bRyZw.js.map} +1 -1
  522. package/lib/{SyntaxHighlight-Cqh6cwC3.js → SyntaxHighlight-Dgd0AaaX.js} +1585 -1492
  523. package/lib/SyntaxHighlight-Dgd0AaaX.js.map +1 -0
  524. package/lib/{Toc-Zzozy3eB.js → Toc-D_Rj4jVx.js} +6 -6
  525. package/lib/Toc-D_Rj4jVx.js.map +1 -0
  526. package/lib/ZudokuContext-DNHMZfcP.js +1508 -0
  527. package/lib/ZudokuContext-DNHMZfcP.js.map +1 -0
  528. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js +9 -0
  529. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js.map +1 -0
  530. package/lib/c-B-NUhs61.js +46 -0
  531. package/lib/c-B-NUhs61.js.map +1 -0
  532. package/lib/chunk-PVWAREVJ-ClM0m2aJ.js +7965 -0
  533. package/lib/chunk-PVWAREVJ-ClM0m2aJ.js.map +1 -0
  534. package/lib/{circular-CokAagii.js → circular-BxODTa7z.js} +6365 -5958
  535. package/lib/circular-BxODTa7z.js.map +1 -0
  536. package/lib/commonlisp-De080z23.js +28 -0
  537. package/lib/commonlisp-De080z23.js.map +1 -0
  538. package/lib/cpp-79Paht7T.js +53 -0
  539. package/lib/cpp-79Paht7T.js.map +1 -0
  540. package/lib/createServer-BpreIXp6.js +16693 -0
  541. package/lib/createServer-BpreIXp6.js.map +1 -0
  542. package/lib/createVariantComponent-CQVt-H3r.js +18 -0
  543. package/lib/createVariantComponent-CQVt-H3r.js.map +1 -0
  544. package/lib/{csharp-rrJEDRrV.js → csharp-D8MIL50B.js} +2 -2
  545. package/lib/{csharp-rrJEDRrV.js.map → csharp-D8MIL50B.js.map} +1 -1
  546. package/lib/{css-Dpk9bCql.js → css-Bt6hr1td.js} +2 -2
  547. package/lib/{css-Dpk9bCql.js.map → css-Bt6hr1td.js.map} +1 -1
  548. package/lib/dart-B0vy1jWB.js +60 -0
  549. package/lib/dart-B0vy1jWB.js.map +1 -0
  550. package/lib/elixir-Ds8r0sF8.js +25 -0
  551. package/lib/elixir-Ds8r0sF8.js.map +1 -0
  552. package/lib/{errors-CQLQ5016.js → errors-DliW1dED.js} +4 -4
  553. package/lib/{errors-CQLQ5016.js.map → errors-DliW1dED.js.map} +1 -1
  554. package/lib/firebase-D4tbaCYB.js +7612 -0
  555. package/lib/firebase-D4tbaCYB.js.map +1 -0
  556. package/lib/{go-D8SJIQ0Z.js → go-D2VsmIOS.js} +2 -2
  557. package/lib/{go-D8SJIQ0Z.js.map → go-D2VsmIOS.js.map} +1 -1
  558. package/lib/{graphql-aeVKJNa2.js → graphql-BtA6M4m5.js} +2 -2
  559. package/lib/{graphql-aeVKJNa2.js.map → graphql-BtA6M4m5.js.map} +1 -1
  560. package/lib/hook-CHw_R_xu.js +52 -0
  561. package/lib/hook-CHw_R_xu.js.map +1 -0
  562. package/lib/{html-D_7om-nA.js → html-MGnI2uzP.js} +2 -2
  563. package/lib/{html-D_7om-nA.js.map → html-MGnI2uzP.js.map} +1 -1
  564. package/lib/{index-CF3Ls1wd.js → index-1TbL0HXQ.js} +166 -50
  565. package/lib/index-1TbL0HXQ.js.map +1 -0
  566. package/lib/index-9MxNUgg4.js +3675 -0
  567. package/lib/index-9MxNUgg4.js.map +1 -0
  568. package/lib/{ErrorAlert-Diu_w5Po.js → index-CboxZOVW.js} +5432 -4439
  569. package/lib/index-CboxZOVW.js.map +1 -0
  570. package/lib/index-CrcNWbel.js.map +1 -1
  571. package/lib/index-DXXZDuSJ.js +133 -0
  572. package/lib/index-DXXZDuSJ.js.map +1 -0
  573. package/lib/index.esm-BYObtETB.js +1294 -0
  574. package/lib/index.esm-BYObtETB.js.map +1 -0
  575. package/lib/{index.esm-BnYHxCYC.js → index.esm-DtzT_KoE.js} +20 -20
  576. package/lib/{index.esm-BnYHxCYC.js.map → index.esm-DtzT_KoE.js.map} +1 -1
  577. package/lib/index.esm-ti5zvZS_.js +34 -0
  578. package/lib/index.esm-ti5zvZS_.js.map +1 -0
  579. package/lib/{invariant-Bm-FVUQE.js → invariant-CGOLuIIz.js} +3 -3
  580. package/lib/{invariant-Bm-FVUQE.js.map → invariant-CGOLuIIz.js.map} +1 -1
  581. package/lib/{java-DUh-EL8n.js → java-CVLzHfb1.js} +2 -2
  582. package/lib/{java-DUh-EL8n.js.map → java-CVLzHfb1.js.map} +1 -1
  583. package/lib/{javascript-CrY8dcGu.js → javascript-CcmIpL4G.js} +2 -2
  584. package/lib/{javascript-CrY8dcGu.js.map → javascript-CcmIpL4G.js.map} +1 -1
  585. package/lib/{json-DLK2_sdf.js → json-4AyP4uiY.js} +2 -2
  586. package/lib/{json-DLK2_sdf.js.map → json-4AyP4uiY.js.map} +1 -1
  587. package/lib/{jsx-runtime-DywqP_6a.js → jsx-runtime-BzflLqGi.js} +109 -111
  588. package/lib/jsx-runtime-BzflLqGi.js.map +1 -0
  589. package/lib/{kotlin-rJMOGl7D.js → kotlin-v2plddBQ.js} +2 -2
  590. package/lib/{kotlin-rJMOGl7D.js.map → kotlin-v2plddBQ.js.map} +1 -1
  591. package/lib/{markdown-BD9bIU5J.js → markdown-DYGWCmGQ.js} +2 -2
  592. package/lib/{markdown-BD9bIU5J.js.map → markdown-DYGWCmGQ.js.map} +1 -1
  593. package/lib/{mdx-G25UCvf3.js → mdx-CHwYvXd4.js} +2 -2
  594. package/lib/{mdx-G25UCvf3.js.map → mdx-CHwYvXd4.js.map} +1 -1
  595. package/lib/{mutation-DvBlWyBr.js → mutation-DMHWqmFp.js} +2 -2
  596. package/lib/{mutation-DvBlWyBr.js.map → mutation-DMHWqmFp.js.map} +1 -1
  597. package/lib/{objectivec-DDpj0aWX.js → objectivec-HZY8shkd.js} +2 -2
  598. package/lib/{objectivec-DDpj0aWX.js.map → objectivec-HZY8shkd.js.map} +1 -1
  599. package/lib/ocaml-DqsdDdwb.js +52 -0
  600. package/lib/ocaml-DqsdDdwb.js.map +1 -0
  601. package/lib/{php-BeG18bSy.js → php-rQXzo7K_.js} +2 -2
  602. package/lib/{php-BeG18bSy.js.map → php-rQXzo7K_.js.map} +1 -1
  603. package/lib/powershell-CQje9pm1.js +39 -0
  604. package/lib/powershell-CQje9pm1.js.map +1 -0
  605. package/lib/{python-BaF2byD-.js → python-QIQAE5Ei.js} +2 -2
  606. package/lib/{python-BaF2byD-.js.map → python-QIQAE5Ei.js.map} +1 -1
  607. package/lib/{react-CQvDN20M.js → react-DHpVpxRv.js} +2 -2
  608. package/lib/{react-CQvDN20M.js.map → react-DHpVpxRv.js.map} +1 -1
  609. package/lib/{ruby-CmxRVHMR.js → ruby-B2dU8Ny5.js} +2 -2
  610. package/lib/{ruby-CmxRVHMR.js.map → ruby-B2dU8Ny5.js.map} +1 -1
  611. package/lib/{rust-IfSC62c5.js → rust-DYnLHAi2.js} +2 -2
  612. package/lib/{rust-IfSC62c5.js.map → rust-DYnLHAi2.js.map} +1 -1
  613. package/lib/scala-CeKInBR8.js +25 -0
  614. package/lib/scala-CeKInBR8.js.map +1 -0
  615. package/lib/{shell-BFu0M6m4.js → shell-HUv9oVtp.js} +2 -2
  616. package/lib/{shell-BFu0M6m4.js.map → shell-HUv9oVtp.js.map} +1 -1
  617. package/lib/{swift-DckbsN4v.js → swift-B4z6ig1Z.js} +2 -2
  618. package/lib/{swift-DckbsN4v.js.map → swift-B4z6ig1Z.js.map} +1 -1
  619. package/lib/{toml-BJsCc8TC.js → toml-Co9mpdct.js} +2 -2
  620. package/lib/{toml-BJsCc8TC.js.map → toml-Co9mpdct.js.map} +1 -1
  621. package/lib/{typescript-7qOVMjOC.js → typescript-C26xdBDC.js} +2 -2
  622. package/lib/{typescript-7qOVMjOC.js.map → typescript-C26xdBDC.js.map} +1 -1
  623. package/lib/ui/Accordion.js +1 -1
  624. package/lib/ui/ActionButton.js +3 -3
  625. package/lib/ui/Alert.js +1 -1
  626. package/lib/ui/AlertDialog.js +1 -1
  627. package/lib/ui/Badge.js +28 -14
  628. package/lib/ui/Badge.js.map +1 -1
  629. package/lib/ui/Breadcrumb.js +1 -1
  630. package/lib/ui/Button.js +28 -25
  631. package/lib/ui/Button.js.map +1 -1
  632. package/lib/ui/ButtonGroup.js +77 -0
  633. package/lib/ui/ButtonGroup.js.map +1 -0
  634. package/lib/ui/Callout.js +19 -19
  635. package/lib/ui/Callout.js.map +1 -1
  636. package/lib/ui/Card.js +1 -1
  637. package/lib/ui/Carousel.js +1 -1
  638. package/lib/ui/Carousel.js.map +1 -1
  639. package/lib/ui/Checkbox.js +29 -26
  640. package/lib/ui/Checkbox.js.map +1 -1
  641. package/lib/ui/CodeBlock.js +217 -7
  642. package/lib/ui/CodeBlock.js.map +1 -1
  643. package/lib/ui/Collapsible.js +32 -5
  644. package/lib/ui/Collapsible.js.map +1 -1
  645. package/lib/ui/Command.js +5 -5
  646. package/lib/ui/Command.js.map +1 -1
  647. package/lib/ui/Dialog.js +135 -105
  648. package/lib/ui/Dialog.js.map +1 -1
  649. package/lib/ui/Drawer.js +3 -3
  650. package/lib/ui/DropdownMenu.js +227 -140
  651. package/lib/ui/DropdownMenu.js.map +1 -1
  652. package/lib/ui/EmbeddedCodeBlock.js +36 -32
  653. package/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  654. package/lib/ui/Form.js +2 -2
  655. package/lib/ui/Frame.js +81 -0
  656. package/lib/ui/Frame.js.map +1 -0
  657. package/lib/ui/HoverCard.js +1 -1
  658. package/lib/ui/Input.js +1 -1
  659. package/lib/ui/Item.js +188 -0
  660. package/lib/ui/Item.js.map +1 -0
  661. package/lib/ui/Kbd.js +32 -0
  662. package/lib/ui/Kbd.js.map +1 -0
  663. package/lib/ui/Label.js +1 -1
  664. package/lib/ui/NativeSelect.js +57 -0
  665. package/lib/ui/NativeSelect.js.map +1 -0
  666. package/lib/ui/Pagination.js +1 -1
  667. package/lib/ui/Popover.js +1 -1
  668. package/lib/ui/Progress.js +1 -1
  669. package/lib/ui/RadioGroup.js +1 -1
  670. package/lib/ui/ReactComponentDoc.js +14 -14
  671. package/lib/ui/ReactComponentDoc.js.map +1 -1
  672. package/lib/ui/ScrollArea.js +1 -1
  673. package/lib/ui/Secret.js +64 -54
  674. package/lib/ui/Secret.js.map +1 -1
  675. package/lib/ui/Select.js +166 -116
  676. package/lib/ui/Select.js.map +1 -1
  677. package/lib/ui/Separator.js +27 -0
  678. package/lib/ui/Separator.js.map +1 -0
  679. package/lib/ui/Skeleton.js +1 -1
  680. package/lib/ui/Slider.js +1 -1
  681. package/lib/ui/Stepper.js +1 -1
  682. package/lib/ui/Switch.js +1 -1
  683. package/lib/ui/SyntaxHighlight.js +5 -5
  684. package/lib/ui/Tabs.js +11 -11
  685. package/lib/ui/Textarea.js +1 -1
  686. package/lib/ui/Toggle.js +1 -1
  687. package/lib/ui/ToggleGroup.js +1 -1
  688. package/lib/ui/Tooltip.js +55 -28
  689. package/lib/ui/Tooltip.js.map +1 -1
  690. package/lib/ui/Value.js +1 -1
  691. package/lib/{xml-DAaTIkBX.js → xml-BQOOC04j.js} +2 -2
  692. package/lib/{xml-DAaTIkBX.js.map → xml-BQOOC04j.js.map} +1 -1
  693. package/lib/{yaml-DUi-dbfu.js → yaml-BGsJItKv.js} +2 -2
  694. package/lib/{yaml-DUi-dbfu.js.map → yaml-BGsJItKv.js.map} +1 -1
  695. package/lib/zig-CUV2sTct.js +35 -0
  696. package/lib/zig-CUV2sTct.js.map +1 -0
  697. package/lib/zudoku.__internal.js +1082 -951
  698. package/lib/zudoku.__internal.js.map +1 -1
  699. package/lib/zudoku.auth-auth0.js +24 -23
  700. package/lib/zudoku.auth-auth0.js.map +1 -1
  701. package/lib/zudoku.auth-azureb2c.js +34 -35
  702. package/lib/zudoku.auth-azureb2c.js.map +1 -1
  703. package/lib/zudoku.auth-clerk.js +41 -41
  704. package/lib/zudoku.auth-clerk.js.map +1 -1
  705. package/lib/zudoku.auth-firebase.js +10 -0
  706. package/lib/zudoku.auth-firebase.js.map +1 -0
  707. package/lib/zudoku.auth-openid.js +105 -109
  708. package/lib/zudoku.auth-openid.js.map +1 -1
  709. package/lib/zudoku.auth-supabase.js +108 -52
  710. package/lib/zudoku.auth-supabase.js.map +1 -1
  711. package/lib/zudoku.components.js +22 -23
  712. package/lib/zudoku.components.js.map +1 -1
  713. package/lib/zudoku.hooks.js +11 -24
  714. package/lib/zudoku.hooks.js.map +1 -1
  715. package/lib/zudoku.icons.js +1 -1
  716. package/lib/zudoku.mermaid.js +10 -0
  717. package/lib/zudoku.mermaid.js.map +1 -0
  718. package/lib/zudoku.plugin-api-catalog.js +31 -33
  719. package/lib/zudoku.plugin-api-catalog.js.map +1 -1
  720. package/lib/zudoku.plugin-api-keys.js +573 -615
  721. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  722. package/lib/zudoku.plugin-custom-pages.js +1 -1
  723. package/lib/zudoku.plugin-markdown.js +10 -9
  724. package/lib/zudoku.plugin-markdown.js.map +1 -1
  725. package/lib/zudoku.plugin-openapi.js +7 -8
  726. package/lib/zudoku.plugin-openapi.js.map +1 -1
  727. package/lib/zudoku.plugin-redirect.js +3 -3
  728. package/lib/zudoku.plugin-search-inkeep.js +1 -1
  729. package/lib/zudoku.plugin-search-pagefind.js +185 -228
  730. package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
  731. package/lib/zudoku.plugins.js.map +1 -1
  732. package/lib/zudoku.router.js +2502 -118
  733. package/lib/zudoku.router.js.map +1 -1
  734. package/package.json +94 -66
  735. package/src/app/entry.server.tsx +16 -6
  736. package/src/app/main.css +61 -9
  737. package/src/app/main.tsx +5 -1
  738. package/src/app/sentry.ts +1 -1
  739. package/src/lib/assets/language-icons/c.tsx +31 -0
  740. package/src/lib/assets/language-icons/commonlisp.tsx +22 -0
  741. package/src/lib/assets/language-icons/cpp.tsx +35 -0
  742. package/src/lib/assets/language-icons/dart.tsx +39 -0
  743. package/src/lib/assets/language-icons/elixir.tsx +19 -0
  744. package/src/lib/assets/language-icons/ocaml.tsx +34 -0
  745. package/src/lib/assets/language-icons/powershell.tsx +27 -0
  746. package/src/lib/assets/language-icons/scala.tsx +19 -0
  747. package/src/lib/assets/language-icons/zig.tsx +32 -0
  748. package/src/lib/auth/issuer.ts +3 -0
  749. package/src/lib/authentication/authentication.ts +29 -5
  750. package/src/lib/authentication/components/OAuthErrorPage.tsx +1 -1
  751. package/src/lib/authentication/components/SignIn.tsx +10 -5
  752. package/src/lib/authentication/components/SignOut.tsx +7 -6
  753. package/src/lib/authentication/components/SignUp.tsx +8 -8
  754. package/src/lib/authentication/hook.ts +37 -10
  755. package/src/lib/authentication/providers/auth0.tsx +14 -4
  756. package/src/lib/authentication/providers/azureb2c.tsx +10 -3
  757. package/src/lib/authentication/providers/clerk.tsx +9 -2
  758. package/src/lib/authentication/providers/firebase.tsx +376 -0
  759. package/src/lib/authentication/providers/openid.tsx +20 -15
  760. package/src/lib/authentication/providers/supabase/SupabaseAuthUI.tsx +75 -0
  761. package/src/lib/authentication/providers/supabase.tsx +55 -44
  762. package/src/lib/authentication/state.ts +3 -23
  763. package/src/lib/authentication/ui/EmailVerificationUi.tsx +129 -0
  764. package/src/lib/authentication/ui/ZudokuAuthUi.tsx +477 -0
  765. package/src/lib/authentication/ui/icons/Apple.tsx +10 -0
  766. package/src/lib/authentication/ui/icons/Facebook.tsx +15 -0
  767. package/src/lib/authentication/ui/icons/Github.tsx +16 -0
  768. package/src/lib/authentication/ui/icons/Google.tsx +16 -0
  769. package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -0
  770. package/src/lib/authentication/ui/icons/X.tsx +10 -0
  771. package/src/lib/authentication/utils/relativeRedirectUrl.ts +12 -0
  772. package/src/lib/components/Autocomplete.tsx +11 -2
  773. package/src/lib/components/BuildCheck.tsx +12 -10
  774. package/src/lib/components/Heading.tsx +2 -6
  775. package/src/lib/components/LanguageIcon.tsx +45 -0
  776. package/src/lib/components/Layout.tsx +3 -2
  777. package/src/lib/components/Main.tsx +1 -1
  778. package/src/lib/components/Mermaid.tsx +68 -0
  779. package/src/lib/components/PagefindSearchMeta.tsx +14 -0
  780. package/src/lib/components/Zudoku.tsx +7 -10
  781. package/src/lib/components/cache.ts +9 -5
  782. package/src/lib/components/context/ZudokuContext.ts +11 -2
  783. package/src/lib/components/navigation/NavigationItem.tsx +8 -21
  784. package/src/lib/components/navigation/Toc.tsx +3 -3
  785. package/src/lib/core/RouteGuard.tsx +42 -22
  786. package/src/lib/core/ZudokuContext.ts +3 -0
  787. package/src/lib/core/plugins.ts +2 -2
  788. package/src/lib/errors/ErrorAlert.tsx +1 -1
  789. package/src/lib/errors/ErrorMessage.tsx +38 -0
  790. package/src/lib/errors/RouterError.tsx +7 -2
  791. package/src/lib/oas/graphql/index.ts +26 -3
  792. package/src/lib/oas/parser/index.ts +10 -3
  793. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +11 -7
  794. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +36 -476
  795. package/src/lib/plugins/api-keys/index.tsx +35 -21
  796. package/src/lib/plugins/api-keys/settings/ApiKeyItem.tsx +342 -0
  797. package/src/lib/plugins/api-keys/settings/ApiKeyList.tsx +64 -0
  798. package/src/lib/plugins/api-keys/settings/RevealApiKey.tsx +124 -0
  799. package/src/lib/plugins/markdown/MdxPage.tsx +125 -8
  800. package/src/lib/plugins/markdown/assets/ChatGPTLogo.tsx +11 -0
  801. package/src/lib/plugins/markdown/assets/ClaudeLogo.tsx +19 -0
  802. package/src/lib/plugins/markdown/index.tsx +5 -7
  803. package/src/lib/plugins/openapi/CollapsibleCode.tsx +5 -3
  804. package/src/lib/plugins/openapi/DownloadSchemaButton.tsx +115 -0
  805. package/src/lib/plugins/openapi/Endpoint.tsx +20 -27
  806. package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -0
  807. package/src/lib/plugins/openapi/MCPEndpoint.tsx +8 -28
  808. package/src/lib/plugins/openapi/OasProvider.tsx +30 -17
  809. package/src/lib/plugins/openapi/OperationList.tsx +60 -24
  810. package/src/lib/plugins/openapi/OperationListItem.tsx +25 -17
  811. package/src/lib/plugins/openapi/ParamInfos.tsx +1 -0
  812. package/src/lib/plugins/openapi/ParameterList.tsx +37 -23
  813. package/src/lib/plugins/openapi/ParameterListItem.tsx +105 -54
  814. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +0 -7
  815. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +48 -7
  816. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +101 -33
  817. package/src/lib/plugins/openapi/SchemaList.tsx +4 -0
  818. package/src/lib/plugins/openapi/Sidecar.tsx +155 -74
  819. package/src/lib/plugins/openapi/SidecarBox.tsx +26 -4
  820. package/src/lib/plugins/openapi/SidecarExamples.tsx +91 -79
  821. package/src/lib/plugins/openapi/components/ConstValue.tsx +1 -1
  822. package/src/lib/plugins/openapi/components/EnumValues.tsx +2 -2
  823. package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -0
  824. package/src/lib/plugins/openapi/components/ResponseContent.tsx +63 -53
  825. package/src/lib/plugins/openapi/graphql/fragment-masking.ts +1 -0
  826. package/src/lib/plugins/openapi/graphql/gql.ts +4 -3
  827. package/src/lib/plugins/openapi/graphql/graphql.ts +20 -3
  828. package/src/lib/plugins/openapi/index.tsx +26 -37
  829. package/src/lib/plugins/openapi/interfaces.ts +29 -7
  830. package/src/lib/plugins/openapi/playground/BodyPanel.tsx +246 -30
  831. package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +10 -6
  832. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +3 -2
  833. package/src/lib/plugins/openapi/playground/Headers.tsx +103 -219
  834. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +33 -1
  835. package/src/lib/plugins/openapi/playground/PathParams.tsx +26 -34
  836. package/src/lib/plugins/openapi/playground/Playground.tsx +89 -36
  837. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +22 -32
  838. package/src/lib/plugins/openapi/playground/QueryParams.tsx +82 -136
  839. package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +20 -1
  840. package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -0
  841. package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +1 -1
  842. package/src/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.tsx +872 -0
  843. package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +349 -0
  844. package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +2 -2
  845. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +124 -56
  846. package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +1 -1
  847. package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +3 -0
  848. package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +1 -1
  849. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +89 -55
  850. package/src/lib/plugins/openapi/schema/SchemaView.tsx +100 -60
  851. package/src/lib/plugins/openapi/schema/UnionView.tsx +6 -17
  852. package/src/lib/plugins/openapi/schema/union-helpers.ts +0 -1
  853. package/src/lib/plugins/openapi/schema/utils.ts +5 -2
  854. package/src/lib/plugins/openapi/util/createHttpSnippet.ts +29 -1
  855. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +11 -11
  856. package/src/lib/plugins/openapi/util/getRoutes.tsx +35 -3
  857. package/src/lib/plugins/search-pagefind/IndexingDialog.tsx +163 -0
  858. package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +61 -22
  859. package/src/lib/plugins/search-pagefind/ResultList.tsx +8 -3
  860. package/src/lib/shiki.ts +46 -14
  861. package/src/lib/ui/Badge.tsx +21 -12
  862. package/src/lib/ui/Button.tsx +11 -9
  863. package/src/lib/ui/ButtonGroup.tsx +82 -0
  864. package/src/lib/ui/Callout.tsx +10 -5
  865. package/src/lib/ui/Carousel.tsx +0 -1
  866. package/src/lib/ui/Checkbox.tsx +23 -24
  867. package/src/lib/ui/CodeBlock.tsx +3 -4
  868. package/src/lib/ui/Collapsible.tsx +26 -4
  869. package/src/lib/ui/Command.tsx +3 -3
  870. package/src/lib/ui/Dialog.tsx +112 -106
  871. package/src/lib/ui/DropdownMenu.tsx +226 -170
  872. package/src/lib/ui/EmbeddedCodeBlock.tsx +24 -19
  873. package/src/lib/ui/Frame.tsx +81 -0
  874. package/src/lib/ui/Item.tsx +192 -0
  875. package/src/lib/ui/Kbd.tsx +28 -0
  876. package/src/lib/ui/NativeSelect.tsx +47 -0
  877. package/src/lib/ui/ReactComponentDoc.tsx +17 -17
  878. package/src/lib/ui/Secret.tsx +44 -27
  879. package/src/lib/ui/Select.tsx +153 -126
  880. package/src/lib/ui/Separator.tsx +25 -0
  881. package/src/lib/ui/SyntaxHighlight.tsx +6 -1
  882. package/src/lib/ui/Tooltip.tsx +54 -32
  883. package/src/lib/util/MdxComponents.tsx +5 -5
  884. package/src/lib/util/createVariantComponent.tsx +31 -5
  885. package/src/lib/util/flattenAllOf.test.ts +689 -0
  886. package/src/lib/util/flattenAllOf.ts +122 -0
  887. package/src/lib/util/pastellize.ts +4 -4
  888. package/src/lib/util/readFrontmatter.ts +13 -0
  889. package/src/lib/util/syncZustandState.ts +22 -0
  890. package/src/shiki/langs/hurl.js +1 -0
  891. package/src/shiki/langs/kdl.js +1 -0
  892. package/src/shiki/langs/markdown-nix.js +1 -0
  893. package/src/shiki/langs/openscad.js +1 -0
  894. package/src/shiki/langs/pkl.js +1 -0
  895. package/src/shiki/langs/rosmsg.js +1 -0
  896. package/dist/lib/plugins/openapi/playground/InlineInput.d.ts +0 -4
  897. package/dist/lib/plugins/openapi/playground/InlineInput.js +0 -3
  898. package/dist/lib/plugins/openapi/playground/InlineInput.js.map +0 -1
  899. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.d.ts +0 -5
  900. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js +0 -7
  901. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js.map +0 -1
  902. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.d.ts +0 -4
  903. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js +0 -10
  904. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js.map +0 -1
  905. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.d.ts +0 -5
  906. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js +0 -16
  907. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js.map +0 -1
  908. package/dist/vite/create-pagefind-index.d.ts +0 -4
  909. package/dist/vite/create-pagefind-index.js +0 -12
  910. package/dist/vite/create-pagefind-index.js.map +0 -1
  911. package/lib/Button-DTDRi4CT.js +0 -51
  912. package/lib/Button-DTDRi4CT.js.map +0 -1
  913. package/lib/CodeBlock-i0BM_QFf.js +0 -176
  914. package/lib/CodeBlock-i0BM_QFf.js.map +0 -1
  915. package/lib/Command-TEBTONf1.js.map +0 -1
  916. package/lib/Dialog-VIMic7xI.js +0 -114
  917. package/lib/Dialog-VIMic7xI.js.map +0 -1
  918. package/lib/Drawer-DM9wJUC6.js.map +0 -1
  919. package/lib/ErrorAlert-Diu_w5Po.js.map +0 -1
  920. package/lib/MdxPage-CDs_vtjC.js +0 -111
  921. package/lib/MdxPage-CDs_vtjC.js.map +0 -1
  922. package/lib/OasProvider-D3Cjaaxr.js +0 -36
  923. package/lib/OasProvider-D3Cjaaxr.js.map +0 -1
  924. package/lib/OperationList-BH4cFU-0.js +0 -5454
  925. package/lib/OperationList-BH4cFU-0.js.map +0 -1
  926. package/lib/Pagination-BKphudjx.js +0 -37
  927. package/lib/Pagination-BKphudjx.js.map +0 -1
  928. package/lib/RouteGuard-nFlgfJqk.js +0 -56
  929. package/lib/RouteGuard-nFlgfJqk.js.map +0 -1
  930. package/lib/RouterError-CnS5hYUh.js +0 -41
  931. package/lib/RouterError-CnS5hYUh.js.map +0 -1
  932. package/lib/SchemaList-BcJyi2sR.js.map +0 -1
  933. package/lib/SchemaView-DnTxmN15.js +0 -458
  934. package/lib/SchemaView-DnTxmN15.js.map +0 -1
  935. package/lib/Select-BPQp7Yqx.js +0 -273
  936. package/lib/Select-BPQp7Yqx.js.map +0 -1
  937. package/lib/SignUp-tBtnwuXL.js +0 -56
  938. package/lib/SignUp-tBtnwuXL.js.map +0 -1
  939. package/lib/SyntaxHighlight-Cqh6cwC3.js.map +0 -1
  940. package/lib/Toc-Zzozy3eB.js.map +0 -1
  941. package/lib/ZudokuContext-3cqbu21w.js +0 -1285
  942. package/lib/ZudokuContext-3cqbu21w.js.map +0 -1
  943. package/lib/chunk-QMGIS6GS-DqecZ6nq.js +0 -9204
  944. package/lib/chunk-QMGIS6GS-DqecZ6nq.js.map +0 -1
  945. package/lib/circular-CokAagii.js.map +0 -1
  946. package/lib/createServer-DW4hIUUB.js +0 -12499
  947. package/lib/createServer-DW4hIUUB.js.map +0 -1
  948. package/lib/hook-ChlxzJwv.js +0 -247
  949. package/lib/hook-ChlxzJwv.js.map +0 -1
  950. package/lib/index-7FEjMkZ_.js +0 -1058
  951. package/lib/index-7FEjMkZ_.js.map +0 -1
  952. package/lib/index-CF3Ls1wd.js.map +0 -1
  953. package/lib/index-QwGs6inR.js +0 -3397
  954. package/lib/index-QwGs6inR.js.map +0 -1
  955. package/lib/index.esm-CdzlRw50.js +0 -1254
  956. package/lib/index.esm-CdzlRw50.js.map +0 -1
  957. package/lib/jsx-runtime-DywqP_6a.js.map +0 -1
  958. package/lib/useExposedProps-BH9aq4MD.js +0 -113
  959. package/lib/useExposedProps-BH9aq4MD.js.map +0 -1
  960. package/src/lib/plugins/openapi/playground/InlineInput.tsx +0 -6
  961. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.tsx +0 -36
  962. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.tsx +0 -25
  963. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.tsx +0 -42
@@ -0,0 +1,210 @@
1
+ import { j as e } from "./jsx-runtime-BzflLqGi.js";
2
+ import { s as H } from "./index-1TbL0HXQ.js";
3
+ import { H as R } from "./index.esm-DtzT_KoE.js";
4
+ import { CheckIcon as U, CopyIcon as _, ChevronDownIcon as $, Link2Icon as A, ExternalLinkIcon as q, EditIcon as B } from "lucide-react";
5
+ import { useState as F, useEffect as G } from "react";
6
+ import { a as V } from "./chunk-PVWAREVJ-ClM0m2aJ.js";
7
+ import { B as j } from "./Button-IOAeVaIH.js";
8
+ import { D as W, a as X, b as J, c as l } from "./DropdownMenu-C8SX_-S_.js";
9
+ import { C as K } from "./CategoryHeading-DhmodDcq.js";
10
+ import { T as O, H as f } from "./index-CboxZOVW.js";
11
+ import { T as Q } from "./Toc-D_Rj4jVx.js";
12
+ import { b as Y, j as Z, d as ee } from "./ZudokuContext-DNHMZfcP.js";
13
+ import { C as se, a as oe, P as ie } from "./ClaudeLogo-DgjivS8A.js";
14
+ import { u as ne } from "./index-DXXZDuSJ.js";
15
+ const ae = {
16
+ h2: ({ children: i, id: n }) => /* @__PURE__ */ e.jsx(f, { level: 2, id: n, registerNavigationAnchor: !0, children: i }),
17
+ h3: ({ children: i, id: n }) => /* @__PURE__ */ e.jsx(f, { level: 3, id: n, registerNavigationAnchor: !0, children: i })
18
+ }, ve = ({
19
+ mdxComponent: i,
20
+ basePath: n,
21
+ frontmatter: o = {},
22
+ defaultOptions: a,
23
+ __filepath: c,
24
+ tableOfContents: m,
25
+ excerpt: b
26
+ }) => {
27
+ const k = Y()?.categoryLabel, y = V(), [T, u] = F(!1), t = o.title, w = o.description ?? b, p = o.category ?? k, M = o.toc === !1 || a?.toc === !1, E = t ?? m.find((s) => s.depth === 1)?.value, I = o.disable_pager ?? o.disablePager ?? a?.disablePager ?? !1, v = o.showLastModified ?? a?.showLastModified ?? !0, r = o.lastModifiedTime ? new Date(o.lastModifiedTime) : null, d = o.suggestEdit !== !1 && (o.suggestEdit ?? a?.suggestEdit), x = d ? d.url.replaceAll("{filePath}", c) : null, L = d ? d.text || "Edit this page" : null, P = o.copyPage !== !1 && a?.copyPage !== !1, C = Z(n, `${y.pathname}.md`), z = async () => {
28
+ const s = await fetch(C);
29
+ if (!s.ok) throw new Error("Failed to fetch markdown");
30
+ const S = await s.text();
31
+ navigator.clipboard.writeText(S), u(!0), setTimeout(() => u(!1), 2e3);
32
+ }, N = m.find((s) => s.depth === 1)?.children ?? // if `title` is provided by frontmatter it does not appear in the table of contents
33
+ m.filter((s) => s.depth === 2), D = !M && N.length > 0, { prev: g, next: h } = ee();
34
+ return G(() => {
35
+ if (process.env.NODE_ENV === "development")
36
+ return window.__getReactRefreshIgnoredExports = ({ id: s }) => {
37
+ if (s.endsWith(c))
38
+ return ["frontmatter", "tableOfContents"];
39
+ }, () => {
40
+ window.__getReactRefreshIgnoredExports = void 0;
41
+ };
42
+ }, [c]), /* @__PURE__ */ e.jsxs(
43
+ "div",
44
+ {
45
+ className: "grid grid-cols-1 xl:grid-cols-(--sidecar-grid-cols) gap-8 justify-between",
46
+ "data-pagefind-filter": "section:markdown",
47
+ "data-pagefind-meta": "section:markdown",
48
+ children: [
49
+ /* @__PURE__ */ e.jsxs(R, { children: [
50
+ /* @__PURE__ */ e.jsx("title", { children: E }),
51
+ w && /* @__PURE__ */ e.jsx("meta", { name: "description", content: w })
52
+ ] }),
53
+ /* @__PURE__ */ e.jsxs(O, { className: "max-w-full xl:w-full xl:max-w-3xl flex-1 shrink pt-(--padding-content-top)", children: [
54
+ (p || t) && /* @__PURE__ */ e.jsxs("header", { className: "flex items-start justify-between gap-4", children: [
55
+ /* @__PURE__ */ e.jsxs("div", { className: "flex-1", children: [
56
+ p && /* @__PURE__ */ e.jsx(K, { children: p }),
57
+ t && /* @__PURE__ */ e.jsx(f, { level: 1, id: H(t), children: t })
58
+ ] }),
59
+ P && /* @__PURE__ */ e.jsxs("div", { className: "flex items-center border rounded-md", children: [
60
+ /* @__PURE__ */ e.jsxs(
61
+ j,
62
+ {
63
+ variant: "ghost",
64
+ size: "sm",
65
+ onClick: z,
66
+ className: "rounded-r-none border-r gap-2 h-7",
67
+ children: [
68
+ T ? /* @__PURE__ */ e.jsx(U, { size: 14, className: "text-emerald-600" }) : /* @__PURE__ */ e.jsx(_, { size: 14 }),
69
+ /* @__PURE__ */ e.jsx("span", { children: "Copy page" })
70
+ ]
71
+ }
72
+ ),
73
+ /* @__PURE__ */ e.jsxs(W, { children: [
74
+ /* @__PURE__ */ e.jsx(X, { asChild: !0, children: /* @__PURE__ */ e.jsx(
75
+ j,
76
+ {
77
+ variant: "ghost",
78
+ size: "icon-xs",
79
+ className: "rounded-l-none",
80
+ children: /* @__PURE__ */ e.jsx($, { size: 14 })
81
+ }
82
+ ) }),
83
+ /* @__PURE__ */ e.jsxs(J, { align: "end", children: [
84
+ /* @__PURE__ */ e.jsxs(
85
+ l,
86
+ {
87
+ className: "gap-2",
88
+ onClick: () => void navigator.clipboard.writeText(window.location.href),
89
+ children: [
90
+ /* @__PURE__ */ e.jsx(A, { className: "size-4" }),
91
+ "Copy link to page"
92
+ ]
93
+ }
94
+ ),
95
+ /* @__PURE__ */ e.jsx(l, { className: "gap-2", asChild: !0, children: /* @__PURE__ */ e.jsxs(
96
+ "a",
97
+ {
98
+ href: C,
99
+ target: "_blank",
100
+ rel: "noopener noreferrer",
101
+ children: [
102
+ /* @__PURE__ */ e.jsx(q, { className: "size-4" }),
103
+ "Open Markdown page"
104
+ ]
105
+ }
106
+ ) }),
107
+ /* @__PURE__ */ e.jsxs(
108
+ l,
109
+ {
110
+ className: "gap-2",
111
+ onClick: () => {
112
+ const s = encodeURIComponent(
113
+ `Help me understand this documentation page: ${window.location.href}`
114
+ );
115
+ window.open(
116
+ `https://claude.ai/new?q=${s}`,
117
+ "_blank"
118
+ );
119
+ },
120
+ children: [
121
+ /* @__PURE__ */ e.jsx(se, { className: "size-4" }),
122
+ "Open in Claude"
123
+ ]
124
+ }
125
+ ),
126
+ /* @__PURE__ */ e.jsxs(
127
+ l,
128
+ {
129
+ className: "gap-2",
130
+ onClick: () => {
131
+ const s = encodeURIComponent(
132
+ `Help me understand this documentation page: ${window.location.href}`
133
+ );
134
+ window.open(
135
+ `https://chatgpt.com/?q=${s}`,
136
+ "_blank"
137
+ );
138
+ },
139
+ children: [
140
+ /* @__PURE__ */ e.jsx(oe, { className: "size-4" }),
141
+ "Open in ChatGPT"
142
+ ]
143
+ }
144
+ )
145
+ ] })
146
+ ] })
147
+ ] })
148
+ ] }),
149
+ /* @__PURE__ */ e.jsx(
150
+ i,
151
+ {
152
+ components: { ...ne(), ...ae }
153
+ }
154
+ ),
155
+ /* @__PURE__ */ e.jsx("div", { className: "h-16" }),
156
+ v && r || x ? /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between text-xs text-muted-foreground ", children: [
157
+ /* @__PURE__ */ e.jsx("div", {}),
158
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2", children: [
159
+ /* @__PURE__ */ e.jsx("div", { children: x && /* @__PURE__ */ e.jsx(j, { asChild: !0, variant: "ghost", size: "sm", children: /* @__PURE__ */ e.jsxs(
160
+ "a",
161
+ {
162
+ href: x,
163
+ target: "_blank",
164
+ rel: "noopener noreferrer",
165
+ className: "flex items-center gap-1",
166
+ children: [
167
+ /* @__PURE__ */ e.jsx(B, { size: 12 }),
168
+ L
169
+ ]
170
+ }
171
+ ) }) }),
172
+ /* @__PURE__ */ e.jsx("div", { children: v && r && /* @__PURE__ */ e.jsxs(
173
+ "div",
174
+ {
175
+ title: r.toLocaleString(void 0, {
176
+ dateStyle: "full",
177
+ timeStyle: "medium"
178
+ }),
179
+ children: [
180
+ "Last modified on",
181
+ " ",
182
+ /* @__PURE__ */ e.jsx("time", { dateTime: r.toISOString(), children: r.toLocaleDateString("en-US", {
183
+ dateStyle: "long"
184
+ }) })
185
+ ]
186
+ }
187
+ ) })
188
+ ] })
189
+ ] }) : null,
190
+ !I && /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
191
+ /* @__PURE__ */ e.jsx("div", { className: "h-px bg-border mt-2 mb-6" }),
192
+ /* @__PURE__ */ e.jsx(
193
+ ie,
194
+ {
195
+ prev: g ? { to: g.id, label: g.label ?? "" } : void 0,
196
+ next: h ? { to: h.id, label: h.label ?? "" } : void 0,
197
+ className: "mb-10"
198
+ }
199
+ )
200
+ ] })
201
+ ] }),
202
+ /* @__PURE__ */ e.jsx("div", { className: "hidden xl:block", "data-pagefind-ignore": "all", children: D && /* @__PURE__ */ e.jsx(Q, { entries: N }) })
203
+ ]
204
+ }
205
+ );
206
+ };
207
+ export {
208
+ ve as MdxPage
209
+ };
210
+ //# sourceMappingURL=MdxPage-BL-HbZrv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MdxPage-BL-HbZrv.js","sources":["../src/lib/plugins/markdown/MdxPage.tsx"],"sourcesContent":["import { useMDXComponents } from \"@mdx-js/react\";\nimport slugify from \"@sindresorhus/slugify\";\nimport { Helmet } from \"@zudoku/react-helmet-async\";\nimport {\n CheckIcon,\n ChevronDownIcon,\n CopyIcon,\n EditIcon,\n ExternalLinkIcon,\n Link2Icon,\n} from \"lucide-react\";\nimport { type PropsWithChildren, useEffect, useState } from \"react\";\nimport { useLocation } from \"react-router\";\nimport { Button } from \"zudoku/ui/Button.js\";\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"zudoku/ui/DropdownMenu.js\";\nimport { CategoryHeading } from \"../../components/CategoryHeading.js\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { Toc } from \"../../components/navigation/Toc.js\";\nimport {\n useCurrentItem,\n usePrevNext,\n} from \"../../components/navigation/utils.js\";\nimport { Pagination } from \"../../components/Pagination.js\";\nimport { Typography } from \"../../components/Typography.js\";\nimport { joinUrl } from \"../../util/joinUrl.js\";\nimport type { MdxComponentsType } from \"../../util/MdxComponents.js\";\nimport { ChatGPTLogo } from \"./assets/ChatGPTLogo.js\";\nimport { ClaudeLogo } from \"./assets/ClaudeLogo.js\";\nimport type { MarkdownPluginDefaultOptions, MDXImport } from \"./index.js\";\n\ndeclare global {\n interface Window {\n __getReactRefreshIgnoredExports?: (args: {\n id: string;\n }) => string[] | undefined;\n }\n}\n\nconst MarkdownHeadings = {\n h2: ({ children, id }) => (\n <Heading level={2} id={id} registerNavigationAnchor>\n {children}\n </Heading>\n ),\n h3: ({ children, id }) => (\n <Heading level={3} id={id} registerNavigationAnchor>\n {children}\n </Heading>\n ),\n} satisfies MdxComponentsType;\n\nexport const MdxPage = ({\n mdxComponent: MdxComponent,\n basePath,\n frontmatter = {},\n defaultOptions,\n __filepath,\n tableOfContents,\n excerpt,\n}: PropsWithChildren<\n Omit<MDXImport, \"default\"> & {\n basePath: string;\n mdxComponent: MDXImport[\"default\"];\n defaultOptions?: MarkdownPluginDefaultOptions;\n }\n>) => {\n const categoryTitle = useCurrentItem()?.categoryLabel;\n const location = useLocation();\n const [isCopied, setIsCopied] = useState(false);\n\n const title = frontmatter.title;\n const description = frontmatter.description ?? excerpt;\n const category = frontmatter.category ?? categoryTitle;\n const hideToc = frontmatter.toc === false || defaultOptions?.toc === false;\n const pageTitle =\n title ?? tableOfContents.find((item) => item.depth === 1)?.value;\n const hidePager =\n frontmatter.disable_pager ??\n frontmatter.disablePager ??\n defaultOptions?.disablePager ??\n false;\n\n const showLastModified =\n frontmatter.showLastModified ?? defaultOptions?.showLastModified ?? true;\n\n const lastModifiedDate = frontmatter.lastModifiedTime\n ? new Date(frontmatter.lastModifiedTime)\n : null;\n\n const editConfig =\n frontmatter.suggestEdit !== false &&\n (frontmatter.suggestEdit ?? defaultOptions?.suggestEdit);\n\n const editUrl = editConfig\n ? editConfig.url.replaceAll(\"{filePath}\", __filepath)\n : null;\n const editText = editConfig ? editConfig.text || \"Edit this page\" : null;\n\n const copyMarkdownConfig =\n frontmatter.copyPage !== false && defaultOptions?.copyPage !== false;\n\n const markdownUrl = joinUrl(basePath, `${location.pathname}.md`);\n\n const handleCopyMarkdown = async () => {\n const response = await fetch(markdownUrl);\n if (!response.ok) throw new Error(\"Failed to fetch markdown\");\n const markdown = await response.text();\n void navigator.clipboard.writeText(markdown);\n setIsCopied(true);\n setTimeout(() => setIsCopied(false), 2000);\n };\n\n const tocEntries =\n tableOfContents.find((item) => item.depth === 1)?.children ??\n // if `title` is provided by frontmatter it does not appear in the table of contents\n tableOfContents.filter((item) => item.depth === 2);\n\n const showToc = !hideToc && tocEntries.length > 0;\n\n const { prev, next } = usePrevNext();\n\n useEffect(() => {\n if (process.env.NODE_ENV === \"development\") {\n window.__getReactRefreshIgnoredExports = ({ id }) => {\n if (!id.endsWith(__filepath)) return;\n\n return [\"frontmatter\", \"tableOfContents\"];\n };\n\n return () => {\n window.__getReactRefreshIgnoredExports = undefined;\n };\n }\n }, [__filepath]);\n\n return (\n <div\n className=\"grid grid-cols-1 xl:grid-cols-(--sidecar-grid-cols) gap-8 justify-between\"\n data-pagefind-filter=\"section:markdown\"\n data-pagefind-meta=\"section:markdown\"\n >\n <Helmet>\n <title>{pageTitle}</title>\n {description && <meta name=\"description\" content={description} />}\n </Helmet>\n <Typography className=\"max-w-full xl:w-full xl:max-w-3xl flex-1 shrink pt-(--padding-content-top)\">\n {(category || title) && (\n <header className=\"flex items-start justify-between gap-4\">\n <div className=\"flex-1\">\n {category && <CategoryHeading>{category}</CategoryHeading>}\n {title && (\n <Heading level={1} id={slugify(title)}>\n {title}\n </Heading>\n )}\n </div>\n {copyMarkdownConfig && (\n <div className=\"flex items-center border rounded-md\">\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={handleCopyMarkdown}\n className=\"rounded-r-none border-r gap-2 h-7\"\n >\n {isCopied ? (\n <CheckIcon size={14} className=\"text-emerald-600\" />\n ) : (\n <CopyIcon size={14} />\n )}\n <span>Copy page</span>\n </Button>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n variant=\"ghost\"\n size=\"icon-xs\"\n className=\"rounded-l-none\"\n >\n <ChevronDownIcon size={14} />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuItem\n className=\"gap-2\"\n onClick={() =>\n void navigator.clipboard.writeText(window.location.href)\n }\n >\n <Link2Icon className=\"size-4\" />\n Copy link to page\n </DropdownMenuItem>\n <DropdownMenuItem className=\"gap-2\" asChild>\n <a\n href={markdownUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <ExternalLinkIcon className=\"size-4\" />\n Open Markdown page\n </a>\n </DropdownMenuItem>\n <DropdownMenuItem\n className=\"gap-2\"\n onClick={() => {\n const prompt = encodeURIComponent(\n `Help me understand this documentation page: ${window.location.href}`,\n );\n window.open(\n `https://claude.ai/new?q=${prompt}`,\n \"_blank\",\n );\n }}\n >\n <ClaudeLogo className=\"size-4\" />\n Open in Claude\n </DropdownMenuItem>\n <DropdownMenuItem\n className=\"gap-2\"\n onClick={() => {\n const prompt = encodeURIComponent(\n `Help me understand this documentation page: ${window.location.href}`,\n );\n window.open(\n `https://chatgpt.com/?q=${prompt}`,\n \"_blank\",\n );\n }}\n >\n <ChatGPTLogo className=\"size-4\" />\n Open in ChatGPT\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n )}\n </header>\n )}\n\n <MdxComponent\n components={{ ...useMDXComponents(), ...MarkdownHeadings }}\n />\n <div className=\"h-16\" />\n {(showLastModified && lastModifiedDate) || editUrl ? (\n <div className=\"flex justify-between text-xs text-muted-foreground \">\n <div />\n <div className=\"flex items-center gap-2\">\n <div>\n {editUrl && (\n <Button asChild variant=\"ghost\" size=\"sm\">\n <a\n href={editUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"flex items-center gap-1\"\n >\n <EditIcon size={12} />\n {editText}\n </a>\n </Button>\n )}\n </div>\n <div>\n {showLastModified && lastModifiedDate && (\n <div\n title={lastModifiedDate.toLocaleString(undefined, {\n dateStyle: \"full\",\n timeStyle: \"medium\",\n })}\n >\n Last modified on{\" \"}\n <time dateTime={lastModifiedDate.toISOString()}>\n {lastModifiedDate.toLocaleDateString(\"en-US\", {\n dateStyle: \"long\",\n })}\n </time>\n </div>\n )}\n </div>\n </div>\n </div>\n ) : null}\n {!hidePager && (\n <>\n <div className=\"h-px bg-border mt-2 mb-6\" />\n <Pagination\n prev={prev ? { to: prev.id, label: prev.label ?? \"\" } : undefined}\n next={next ? { to: next.id, label: next.label ?? \"\" } : undefined}\n className=\"mb-10\"\n />\n </>\n )}\n </Typography>\n <div className=\"hidden xl:block\" data-pagefind-ignore=\"all\">\n {showToc && <Toc entries={tocEntries} />}\n </div>\n </div>\n );\n};\n"],"names":["MarkdownHeadings","children","id","jsx","Heading","MdxPage","MdxComponent","basePath","frontmatter","defaultOptions","__filepath","tableOfContents","excerpt","categoryTitle","useCurrentItem","location","useLocation","isCopied","setIsCopied","useState","title","description","category","hideToc","pageTitle","item","hidePager","showLastModified","lastModifiedDate","editConfig","editUrl","editText","copyMarkdownConfig","markdownUrl","joinUrl","handleCopyMarkdown","response","markdown","tocEntries","showToc","prev","next","usePrevNext","useEffect","jsxs","Helmet","Typography","CategoryHeading","slugify","Button","CheckIcon","CopyIcon","DropdownMenu","DropdownMenuTrigger","ChevronDownIcon","DropdownMenuContent","DropdownMenuItem","Link2Icon","ExternalLinkIcon","prompt","ClaudeLogo","ChatGPTLogo","useMDXComponents","EditIcon","Fragment","Pagination","Toc"],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import { j as r } from "./jsx-runtime-BzflLqGi.js";
2
+ import { f } from "./ZudokuContext-DNHMZfcP.js";
3
+ import { useId as p } from "react";
4
+ import { c as g } from "./index-DI5SPFK9.js";
5
+ import { c as i } from "./cn-dYga0KKN.js";
6
+ import { a as v } from "./index-DXXZDuSJ.js";
7
+ import { S as x } from "./Spinner-CI6bRyZw.js";
8
+ const h = g(
9
+ "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
10
+ {
11
+ variants: {
12
+ variant: {
13
+ default: "bg-card text-card-foreground",
14
+ destructive: "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90"
15
+ }
16
+ },
17
+ defaultVariants: {
18
+ variant: "default"
19
+ }
20
+ }
21
+ );
22
+ function w({
23
+ className: e,
24
+ variant: t,
25
+ ...a
26
+ }) {
27
+ return /* @__PURE__ */ r.jsx(
28
+ "div",
29
+ {
30
+ "data-slot": "alert",
31
+ role: "alert",
32
+ className: i(h({ variant: t }), e),
33
+ ...a
34
+ }
35
+ );
36
+ }
37
+ function y({ className: e, ...t }) {
38
+ return /* @__PURE__ */ r.jsx(
39
+ "div",
40
+ {
41
+ "data-slot": "alert-title",
42
+ className: i(
43
+ "col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",
44
+ e
45
+ ),
46
+ ...t
47
+ }
48
+ );
49
+ }
50
+ function j({
51
+ className: e,
52
+ ...t
53
+ }) {
54
+ return /* @__PURE__ */ r.jsx(
55
+ "div",
56
+ {
57
+ "data-slot": "alert-description",
58
+ className: i(
59
+ "text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
60
+ e
61
+ ),
62
+ ...t
63
+ }
64
+ );
65
+ }
66
+ let s = null;
67
+ const b = () => (s || (s = import("mermaid").then((e) => e.default).catch((e) => {
68
+ throw new Error(
69
+ "Mermaid is not installed. Please install it with: npm install mermaid",
70
+ { cause: e }
71
+ );
72
+ })), s), P = ({ chart: e, config: t, ...a }) => {
73
+ const d = p(), n = v(), {
74
+ data: m,
75
+ error: o,
76
+ isPending: c
77
+ } = f({
78
+ queryKey: ["mermaid", e, t, n.resolvedTheme],
79
+ queryFn: async () => {
80
+ const l = await b();
81
+ l.initialize({
82
+ theme: n.resolvedTheme === "dark" ? "dark" : "base",
83
+ ...t
84
+ });
85
+ const { svg: u } = await l.render(d, e);
86
+ return u;
87
+ },
88
+ enabled: typeof window < "u",
89
+ retry: !1
90
+ });
91
+ return o ? /* @__PURE__ */ r.jsxs(w, { className: "flex flex-col gap-2", variant: "destructive", children: [
92
+ /* @__PURE__ */ r.jsx(y, { children: "Mermaid Error" }),
93
+ /* @__PURE__ */ r.jsx(j, { className: "overflow-auto wrap-break-word whitespace-pre-wrap font-mono text-xs", children: o.message })
94
+ ] }) : c ? /* @__PURE__ */ r.jsx(x, {}) : /* @__PURE__ */ r.jsx("div", { ...a, dangerouslySetInnerHTML: { __html: m } });
95
+ };
96
+ export {
97
+ w as A,
98
+ P as M,
99
+ y as a,
100
+ j as b
101
+ };
102
+ //# sourceMappingURL=Mermaid-BjSczjLW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Mermaid-BjSczjLW.js","sources":["../src/lib/ui/Alert.tsx","../src/lib/components/Mermaid.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n {\n variants: {\n variant: {\n default: \"bg-card text-card-foreground\",\n destructive:\n \"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction Alert({\n className,\n variant,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariants>) {\n return (\n <div\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-title\"\n className={cn(\n \"col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDescription({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\n \"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertDescription, AlertTitle };\n","import { useQuery } from \"@tanstack/react-query\";\nimport type { MermaidConfig } from \"mermaid\";\nimport type { ComponentProps } from \"react\";\nimport { useId } from \"react\";\nimport { Alert, AlertDescription, AlertTitle } from \"zudoku/ui/Alert.js\";\nimport { useTheme } from \"../hooks/index.js\";\nimport { Spinner } from \"./Spinner.js\";\n\nexport type MermaidProps = {\n chart: string;\n config?: MermaidConfig;\n} & ComponentProps<\"div\">;\n\nlet mermaidPromise: Promise<typeof import(\"mermaid\").default> | null = null;\n\nconst loadMermaid = () => {\n if (!mermaidPromise) {\n mermaidPromise = import(\"mermaid\")\n .then((mod) => mod.default)\n .catch((error) => {\n throw new Error(\n \"Mermaid is not installed. Please install it with: npm install mermaid\",\n { cause: error },\n );\n });\n }\n return mermaidPromise;\n};\n\nexport const Mermaid = ({ chart, config, ...props }: MermaidProps) => {\n const id = useId();\n const theme = useTheme();\n\n const {\n data: svg,\n error,\n isPending,\n } = useQuery({\n queryKey: [\"mermaid\", chart, config, theme.resolvedTheme],\n queryFn: async () => {\n const mermaid = await loadMermaid();\n mermaid.initialize({\n theme: theme.resolvedTheme === \"dark\" ? \"dark\" : \"base\",\n ...config,\n });\n\n const { svg } = await mermaid.render(id, chart);\n return svg;\n },\n enabled: typeof window !== \"undefined\",\n retry: false,\n });\n\n if (error)\n return (\n <Alert className=\"flex flex-col gap-2\" variant=\"destructive\">\n <AlertTitle>Mermaid Error</AlertTitle>\n <AlertDescription className=\"overflow-auto wrap-break-word whitespace-pre-wrap font-mono text-xs\">\n {error.message}\n </AlertDescription>\n </Alert>\n );\n\n if (isPending) return <Spinner />;\n\n // biome-ignore lint/security/noDangerouslySetInnerHtml: Mermaid generates valid SVG\n return <div {...props} dangerouslySetInnerHTML={{ __html: svg }} />;\n};\n"],"names":["alertVariants","cva","Alert","className","variant","props","jsx","cn","AlertTitle","AlertDescription","mermaidPromise","loadMermaid","mod","error","Mermaid","chart","config","id","useId","theme","useTheme","svg","isPending","useQuery","mermaid","jsxs","Spinner"],"mappings":";;;;;;;AAIA,MAAMA,IAAgBC;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,aACE;AAAA,MAAA;AAAA,IACJ;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ;AAEA,SAASC,EAAM;AAAA,EACb,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,GAAGC;AACL,GAAqE;AACnE,SACEC,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,MAAK;AAAA,MACL,WAAWC,EAAGP,EAAc,EAAE,SAAAI,EAAA,CAAS,GAAGD,CAAS;AAAA,MAClD,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASG,EAAW,EAAE,WAAAL,GAAW,GAAGE,KAAsC;AACxE,SACEC,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASI,EAAiB;AAAA,EACxB,WAAAN;AAAA,EACA,GAAGE;AACL,GAAgC;AAC9B,SACEC,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;ACjDA,IAAIK,IAAmE;AAEvE,MAAMC,IAAc,OACbD,MACHA,IAAiB,OAAO,SAAS,EAC9B,KAAK,CAACE,MAAQA,EAAI,OAAO,EACzB,MAAM,CAACC,MAAU;AAChB,QAAM,IAAI;AAAA,IACR;AAAA,IACA,EAAE,OAAOA,EAAA;AAAA,EAAM;AAEnB,CAAC,IAEEH,IAGII,IAAU,CAAC,EAAE,OAAAC,GAAO,QAAAC,GAAQ,GAAGX,QAA0B;AACpE,QAAMY,IAAKC,EAAA,GACLC,IAAQC,EAAA,GAER;AAAA,IACJ,MAAMC;AAAA,IACN,OAAAR;AAAA,IACA,WAAAS;AAAA,EAAA,IACEC,EAAS;AAAA,IACX,UAAU,CAAC,WAAWR,GAAOC,GAAQG,EAAM,aAAa;AAAA,IACxD,SAAS,YAAY;AACnB,YAAMK,IAAU,MAAMb,EAAA;AACtB,MAAAa,EAAQ,WAAW;AAAA,QACjB,OAAOL,EAAM,kBAAkB,SAAS,SAAS;AAAA,QACjD,GAAGH;AAAA,MAAA,CACJ;AAED,YAAM,EAAE,KAAAK,EAAAA,IAAQ,MAAMG,EAAQ,OAAOP,GAAIF,CAAK;AAC9C,aAAOM;AAAAA,IACT;AAAA,IACA,SAAS,OAAO,SAAW;AAAA,IAC3B,OAAO;AAAA,EAAA,CACR;AAED,SAAIR,IAEAY,gBAAAA,EAAAA,KAACvB,GAAA,EAAM,WAAU,uBAAsB,SAAQ,eAC7C,UAAA;AAAA,IAAAI,gBAAAA,EAAAA,IAACE,KAAW,UAAA,gBAAA,CAAa;AAAA,IACzBF,gBAAAA,EAAAA,IAACG,GAAA,EAAiB,WAAU,uEACzB,YAAM,QAAA,CACT;AAAA,EAAA,GACF,IAGAa,IAAkBhB,gBAAAA,MAACoB,GAAA,CAAA,CAAQ,IAGxBpB,gBAAAA,EAAAA,IAAC,SAAK,GAAGD,GAAO,yBAAyB,EAAE,QAAQgB,KAAO;AACnE;"}
@@ -1,29 +1,28 @@
1
- import { j as e } from "./jsx-runtime-DywqP_6a.js";
2
- import { b as m, j as h } from "./ZudokuContext-3cqbu21w.js";
3
- import { e as g, L as y } from "./chunk-QMGIS6GS-DqecZ6nq.js";
4
- import { u as _ } from "./index-7FEjMkZ_.js";
5
- import { O as d } from "./errors-CQLQ5016.js";
6
- import { HomeIcon as v } from "lucide-react";
7
- import { H as f, T as o } from "./ErrorAlert-Diu_w5Po.js";
1
+ import { j as e } from "./jsx-runtime-BzflLqGi.js";
2
+ import { e as m, j as h } from "./ZudokuContext-DNHMZfcP.js";
3
+ import { N as g, L as y } from "./chunk-PVWAREVJ-ClM0m2aJ.js";
4
+ import { a as _, H as v, T as o } from "./index-CboxZOVW.js";
5
+ import { O as d } from "./errors-DliW1dED.js";
6
+ import { HomeIcon as f } from "lucide-react";
8
7
  import { Button as c } from "./ui/Button.js";
9
- import { a as x } from "./hook-ChlxzJwv.js";
8
+ import { u as x } from "./hook-CHw_R_xu.js";
10
9
  function w(r, i, n = "/") {
11
10
  return r.startsWith(i) ? n !== "/" && r.startsWith(i + n) ? r.slice(i.length + n.length) : r.slice(i.length) : r;
12
11
  }
13
- function U({
12
+ function S({
14
13
  handleCallback: r
15
14
  }) {
16
15
  const { options: i } = _(), n = m({
17
16
  retry: !1,
18
17
  queryKey: ["oauth-callback"],
19
18
  queryFn: async () => {
20
- const a = new URL(window.location.href), t = a.searchParams.get("error"), s = a.searchParams.get("error_description") ?? void 0, p = a.searchParams.get("error_uri") ?? void 0;
21
- if (t)
19
+ const a = new URL(window.location.href), s = a.searchParams.get("error"), t = a.searchParams.get("error_description") ?? void 0, p = a.searchParams.get("error_uri") ?? void 0;
20
+ if (s)
22
21
  throw new d(
23
- `OAuth error '${t}': ${s}`,
22
+ `OAuth error '${s}': ${t}`,
24
23
  {
25
- error: t,
26
- error_description: s,
24
+ error: s,
25
+ error_description: t,
27
26
  error_uri: p
28
27
  }
29
28
  );
@@ -90,28 +89,28 @@ const l = {
90
89
  message: "An unexpected error occurred during authentication. Please try again or contact support."
91
90
  }
92
91
  };
93
- function q({ error: r }) {
92
+ function U({ error: r }) {
94
93
  const { login: i } = x();
95
94
  if (!(r instanceof d))
96
95
  throw r;
97
- const a = r.error.error, t = l[a] ?? l.unknown_error;
96
+ const a = r.error.error, s = l[a] ?? l.unknown_error;
98
97
  return /* @__PURE__ */ e.jsx("div", { className: "min-h-[400px] flex items-center justify-center p-4", children: /* @__PURE__ */ e.jsxs("div", { className: "max-w-md w-full text-center space-y-6", children: [
99
98
  /* @__PURE__ */ e.jsxs("div", { className: "space-y-4 items-center", children: [
100
- /* @__PURE__ */ e.jsx(f, { level: 2, className: "text-2xl inline-block font-bold", children: k[a] || "Authentication Error" }),
101
- /* @__PURE__ */ e.jsx(o, { className: "text-gray-600 dark:text-gray-300 leading-relaxed", children: t?.message })
99
+ /* @__PURE__ */ e.jsx(v, { level: 2, className: "text-2xl inline-block font-bold", children: k[a] || "Authentication Error" }),
100
+ /* @__PURE__ */ e.jsx(o, { className: "text-gray-600 dark:text-gray-300 leading-relaxed", children: s?.message })
102
101
  ] }),
103
102
  /* @__PURE__ */ e.jsxs("div", { className: "space-y-3 pt-4", children: [
104
103
  /* @__PURE__ */ e.jsx("div", { className: "space-y-2", children: (a === "access_denied" || a === "invalid_grant" || a === "token_expired") && /* @__PURE__ */ e.jsx(
105
104
  c,
106
105
  {
107
- onClick: i,
106
+ onClick: () => i(),
108
107
  className: "w-full capitalize",
109
108
  variant: "default",
110
109
  children: "Sign in again"
111
110
  }
112
111
  ) }),
113
112
  /* @__PURE__ */ e.jsx("div", { className: "flex gap-2", children: /* @__PURE__ */ e.jsx(c, { asChild: !0, className: "flex-1", variant: "outline", children: /* @__PURE__ */ e.jsxs(y, { to: "/", children: [
114
- /* @__PURE__ */ e.jsx(v, { className: "w-4 h-4 mr-2" }),
113
+ /* @__PURE__ */ e.jsx(f, { className: "w-4 h-4 mr-2" }),
115
114
  "Go Home"
116
115
  ] }) }) })
117
116
  ] }),
@@ -144,7 +143,7 @@ const k = {
144
143
  temporarily_unavailable: "This is usually temporary. Try again in a few minutes."
145
144
  };
146
145
  export {
147
- U as C,
148
- q as O
146
+ S as C,
147
+ U as O
149
148
  };
150
- //# sourceMappingURL=OAuthErrorPage-BbI9XJWR.js.map
149
+ //# sourceMappingURL=OAuthErrorPage-DQtg28Go.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OAuthErrorPage-BbI9XJWR.js","sources":["../src/lib/util/url.ts","../src/lib/authentication/components/CallbackHandler.tsx","../src/lib/authentication/components/OAuthErrorPage.tsx"],"sourcesContent":["/**\n * Normalizes a redirect URL by removing the origin and optionally the root path\n */\nexport function normalizeRedirectUrl(\n redirectTo: string,\n origin: string,\n basePath: string = \"/\",\n): string {\n if (!redirectTo.startsWith(origin)) {\n return redirectTo;\n }\n\n if (basePath !== \"/\" && redirectTo.startsWith(origin + basePath)) {\n return redirectTo.slice(origin.length + basePath.length);\n }\n\n return redirectTo.slice(origin.length);\n}\n","import { useSuspenseQuery } from \"@tanstack/react-query\";\nimport { Navigate } from \"react-router\";\nimport { useZudoku } from \"zudoku/components\";\nimport { joinUrl } from \"../../util/joinUrl.js\";\nimport { normalizeRedirectUrl } from \"../../util/url.js\";\nimport { OAuthAuthorizationError, type OAuthErrorType } from \"../errors.js\";\n\nexport function CallbackHandler({\n handleCallback,\n}: {\n handleCallback: () => Promise<string>;\n}) {\n const { options } = useZudoku();\n const executeCallback = useSuspenseQuery({\n retry: false,\n queryKey: [\"oauth-callback\"],\n queryFn: async () => {\n const url = new URL(window.location.href);\n\n const errorParam = url.searchParams.get(\"error\");\n const errorDescription =\n url.searchParams.get(\"error_description\") ?? undefined;\n const errorUri = url.searchParams.get(\"error_uri\") ?? undefined;\n if (errorParam) {\n throw new OAuthAuthorizationError(\n `OAuth error '${errorParam}': ${errorDescription}`,\n {\n error: errorParam as OAuthErrorType,\n error_description: errorDescription,\n error_uri: errorUri,\n },\n );\n }\n return joinUrl(\n normalizeRedirectUrl(\n await handleCallback(),\n window.location.origin,\n options.basePath,\n ),\n );\n },\n });\n\n return <Navigate to={executeCallback.data} replace />;\n}\n","import { HomeIcon } from \"lucide-react\";\nimport { Link } from \"react-router\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { Typography } from \"../../components/Typography.js\";\nimport { Button } from \"../../ui/Button.js\";\nimport { OAuthAuthorizationError } from \"../errors.js\";\nimport { useAuth } from \"../hook.js\";\n\nconst errorDetailsMap: Record<string, { message: string }> = {\n invalid_request: {\n message:\n \"The authentication request was invalid. Please try signing in again.\",\n },\n unauthorized_client: {\n message:\n \"This application is not authorized to access your account. Please contact support.\",\n },\n access_denied: {\n message:\n \"You denied access to this application. To continue, please sign in and grant access.\",\n },\n unsupported_response_type: {\n message:\n \"The authentication method is not supported. Please contact support.\",\n },\n invalid_scope: {\n message: \"The requested permissions are invalid. Please contact support.\",\n },\n server_error: {\n message:\n \"The authentication server encountered an error. Please try again in a few moments.\",\n },\n temporarily_unavailable: {\n message:\n \"The authentication service is temporarily unavailable. Please try again in a few moments.\",\n },\n // Token errors\n invalid_client: {\n message: \"Invalid application credentials. Please contact support.\",\n },\n invalid_grant: {\n message:\n \"The authentication code has expired or is invalid. Please sign in again.\",\n },\n unsupported_grant_type: {\n message:\n \"The authentication method is not supported. Please contact support.\",\n },\n // Custom errors\n invalid_state: {\n message:\n \"Security validation failed. This may be due to a potential security attack. Please try signing in again.\",\n },\n missing_code_verifier: {\n message:\n \"Authentication security information is missing. Please clear your browser cache and try again.\",\n },\n network_error: {\n message:\n \"A network error occurred during authentication. Please check your connection and try again.\",\n },\n token_expired: {\n message: \"Your authentication session has expired. Please sign in again.\",\n },\n configuration_error: {\n message:\n \"There is an issue with the authentication configuration. Please contact support.\",\n },\n unknown_error: {\n message:\n \"An unexpected error occurred during authentication. Please try again or contact support.\",\n },\n};\n\nexport function OAuthErrorPage({ error }: { error: unknown }) {\n const { login } = useAuth();\n\n if (!(error instanceof OAuthAuthorizationError)) {\n throw error;\n }\n\n const oauthError = error.error;\n const type = oauthError.error;\n\n const details = errorDetailsMap[type] ?? errorDetailsMap.unknown_error;\n\n return (\n <div className=\"min-h-[400px] flex items-center justify-center p-4\">\n <div className=\"max-w-md w-full text-center space-y-6\">\n <div className=\"space-y-4 items-center\">\n <Heading level={2} className=\"text-2xl inline-block font-bold\">\n {titles[type] || \"Authentication Error\"}\n </Heading>\n\n <Typography className=\"text-gray-600 dark:text-gray-300 leading-relaxed\">\n {details?.message}\n </Typography>\n\n {/* Technical details for developers (only in development) */}\n </div>\n\n {/* Action Buttons */}\n <div className=\"space-y-3 pt-4\">\n <div className=\"space-y-2\">\n {(type === \"access_denied\" ||\n type === \"invalid_grant\" ||\n type === \"token_expired\") && (\n <Button\n onClick={login}\n className=\"w-full capitalize\"\n variant={\"default\"}\n >\n Sign in again\n </Button>\n )}\n </div>\n\n <div className=\"flex gap-2\">\n <Button asChild className=\"flex-1\" variant=\"outline\">\n <Link to=\"/\">\n <HomeIcon className=\"w-4 h-4 mr-2\" />\n Go Home\n </Link>\n </Button>\n </div>\n </div>\n\n {/* Additional Help */}\n {helpMessages[type] && (\n <Typography className=\"text-sm text-gray-500 dark:text-gray-400\">\n {helpMessages[type]}\n </Typography>\n )}\n </div>\n </div>\n );\n}\n\nconst titles: Record<string, string> = {\n access_denied: \"Access Denied\",\n invalid_request: \"Invalid Request\",\n unauthorized_client: \"Unauthorized Application\",\n unsupported_response_type: \"Unsupported Method\",\n invalid_scope: \"Invalid Permissions\",\n server_error: \"Server Error\",\n temporarily_unavailable: \"Service Unavailable\",\n invalid_client: \"Invalid Credentials\",\n invalid_grant: \"Authentication Expired\",\n unsupported_grant_type: \"Unsupported Authentication\",\n invalid_state: \"Security Check Failed\",\n missing_code_verifier: \"Security Information Missing\",\n network_error: \"Network Error\",\n token_expired: \"Session Expired\",\n configuration_error: \"Configuration Error\",\n unknown_error: \"Authentication Failed\",\n};\n\nconst helpMessages: Record<string, string> = {\n access_denied:\n \"If you changed your mind, you can try signing in again to grant access.\",\n invalid_state:\n \"This error can occur if you have multiple tabs open or if your session was compromised.\",\n missing_code_verifier:\n \"Try clearing your browser's cache and cookies for this site.\",\n network_error:\n \"Check your internet connection and ensure you can access other websites.\",\n server_error:\n \"The issue is on our end. Our team has been notified and is working to fix it.\",\n temporarily_unavailable:\n \"This is usually temporary. Try again in a few minutes.\",\n};\n"],"names":["normalizeRedirectUrl","redirectTo","origin","basePath","CallbackHandler","handleCallback","options","useZudoku","executeCallback","useSuspenseQuery","url","errorParam","errorDescription","errorUri","OAuthAuthorizationError","joinUrl","Navigate","errorDetailsMap","OAuthErrorPage","error","login","useAuth","type","details","jsxs","jsx","Heading","titles","Typography","Button","Link","HomeIcon","helpMessages"],"mappings":"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"}
1
+ {"version":3,"file":"OAuthErrorPage-DQtg28Go.js","sources":["../src/lib/util/url.ts","../src/lib/authentication/components/CallbackHandler.tsx","../src/lib/authentication/components/OAuthErrorPage.tsx"],"sourcesContent":["/**\n * Normalizes a redirect URL by removing the origin and optionally the root path\n */\nexport function normalizeRedirectUrl(\n redirectTo: string,\n origin: string,\n basePath: string = \"/\",\n): string {\n if (!redirectTo.startsWith(origin)) {\n return redirectTo;\n }\n\n if (basePath !== \"/\" && redirectTo.startsWith(origin + basePath)) {\n return redirectTo.slice(origin.length + basePath.length);\n }\n\n return redirectTo.slice(origin.length);\n}\n","import { useSuspenseQuery } from \"@tanstack/react-query\";\nimport { Navigate } from \"react-router\";\nimport { useZudoku } from \"zudoku/components\";\nimport { joinUrl } from \"../../util/joinUrl.js\";\nimport { normalizeRedirectUrl } from \"../../util/url.js\";\nimport { OAuthAuthorizationError, type OAuthErrorType } from \"../errors.js\";\n\nexport function CallbackHandler({\n handleCallback,\n}: {\n handleCallback: () => Promise<string>;\n}) {\n const { options } = useZudoku();\n const executeCallback = useSuspenseQuery({\n retry: false,\n queryKey: [\"oauth-callback\"],\n queryFn: async () => {\n const url = new URL(window.location.href);\n\n const errorParam = url.searchParams.get(\"error\");\n const errorDescription =\n url.searchParams.get(\"error_description\") ?? undefined;\n const errorUri = url.searchParams.get(\"error_uri\") ?? undefined;\n if (errorParam) {\n throw new OAuthAuthorizationError(\n `OAuth error '${errorParam}': ${errorDescription}`,\n {\n error: errorParam as OAuthErrorType,\n error_description: errorDescription,\n error_uri: errorUri,\n },\n );\n }\n return joinUrl(\n normalizeRedirectUrl(\n await handleCallback(),\n window.location.origin,\n options.basePath,\n ),\n );\n },\n });\n\n return <Navigate to={executeCallback.data} replace />;\n}\n","import { HomeIcon } from \"lucide-react\";\nimport { Link } from \"react-router\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { Typography } from \"../../components/Typography.js\";\nimport { Button } from \"../../ui/Button.js\";\nimport { OAuthAuthorizationError } from \"../errors.js\";\nimport { useAuth } from \"../hook.js\";\n\nconst errorDetailsMap: Record<string, { message: string }> = {\n invalid_request: {\n message:\n \"The authentication request was invalid. Please try signing in again.\",\n },\n unauthorized_client: {\n message:\n \"This application is not authorized to access your account. Please contact support.\",\n },\n access_denied: {\n message:\n \"You denied access to this application. To continue, please sign in and grant access.\",\n },\n unsupported_response_type: {\n message:\n \"The authentication method is not supported. Please contact support.\",\n },\n invalid_scope: {\n message: \"The requested permissions are invalid. Please contact support.\",\n },\n server_error: {\n message:\n \"The authentication server encountered an error. Please try again in a few moments.\",\n },\n temporarily_unavailable: {\n message:\n \"The authentication service is temporarily unavailable. Please try again in a few moments.\",\n },\n // Token errors\n invalid_client: {\n message: \"Invalid application credentials. Please contact support.\",\n },\n invalid_grant: {\n message:\n \"The authentication code has expired or is invalid. Please sign in again.\",\n },\n unsupported_grant_type: {\n message:\n \"The authentication method is not supported. Please contact support.\",\n },\n // Custom errors\n invalid_state: {\n message:\n \"Security validation failed. This may be due to a potential security attack. Please try signing in again.\",\n },\n missing_code_verifier: {\n message:\n \"Authentication security information is missing. Please clear your browser cache and try again.\",\n },\n network_error: {\n message:\n \"A network error occurred during authentication. Please check your connection and try again.\",\n },\n token_expired: {\n message: \"Your authentication session has expired. Please sign in again.\",\n },\n configuration_error: {\n message:\n \"There is an issue with the authentication configuration. Please contact support.\",\n },\n unknown_error: {\n message:\n \"An unexpected error occurred during authentication. Please try again or contact support.\",\n },\n};\n\nexport function OAuthErrorPage({ error }: { error: unknown }) {\n const { login } = useAuth();\n\n if (!(error instanceof OAuthAuthorizationError)) {\n throw error;\n }\n\n const oauthError = error.error;\n const type = oauthError.error;\n\n const details = errorDetailsMap[type] ?? errorDetailsMap.unknown_error;\n\n return (\n <div className=\"min-h-[400px] flex items-center justify-center p-4\">\n <div className=\"max-w-md w-full text-center space-y-6\">\n <div className=\"space-y-4 items-center\">\n <Heading level={2} className=\"text-2xl inline-block font-bold\">\n {titles[type] || \"Authentication Error\"}\n </Heading>\n\n <Typography className=\"text-gray-600 dark:text-gray-300 leading-relaxed\">\n {details?.message}\n </Typography>\n\n {/* Technical details for developers (only in development) */}\n </div>\n\n {/* Action Buttons */}\n <div className=\"space-y-3 pt-4\">\n <div className=\"space-y-2\">\n {(type === \"access_denied\" ||\n type === \"invalid_grant\" ||\n type === \"token_expired\") && (\n <Button\n onClick={() => login()}\n className=\"w-full capitalize\"\n variant={\"default\"}\n >\n Sign in again\n </Button>\n )}\n </div>\n\n <div className=\"flex gap-2\">\n <Button asChild className=\"flex-1\" variant=\"outline\">\n <Link to=\"/\">\n <HomeIcon className=\"w-4 h-4 mr-2\" />\n Go Home\n </Link>\n </Button>\n </div>\n </div>\n\n {/* Additional Help */}\n {helpMessages[type] && (\n <Typography className=\"text-sm text-gray-500 dark:text-gray-400\">\n {helpMessages[type]}\n </Typography>\n )}\n </div>\n </div>\n );\n}\n\nconst titles: Record<string, string> = {\n access_denied: \"Access Denied\",\n invalid_request: \"Invalid Request\",\n unauthorized_client: \"Unauthorized Application\",\n unsupported_response_type: \"Unsupported Method\",\n invalid_scope: \"Invalid Permissions\",\n server_error: \"Server Error\",\n temporarily_unavailable: \"Service Unavailable\",\n invalid_client: \"Invalid Credentials\",\n invalid_grant: \"Authentication Expired\",\n unsupported_grant_type: \"Unsupported Authentication\",\n invalid_state: \"Security Check Failed\",\n missing_code_verifier: \"Security Information Missing\",\n network_error: \"Network Error\",\n token_expired: \"Session Expired\",\n configuration_error: \"Configuration Error\",\n unknown_error: \"Authentication Failed\",\n};\n\nconst helpMessages: Record<string, string> = {\n access_denied:\n \"If you changed your mind, you can try signing in again to grant access.\",\n invalid_state:\n \"This error can occur if you have multiple tabs open or if your session was compromised.\",\n missing_code_verifier:\n \"Try clearing your browser's cache and cookies for this site.\",\n network_error:\n \"Check your internet connection and ensure you can access other websites.\",\n server_error:\n \"The issue is on our end. Our team has been notified and is working to fix it.\",\n temporarily_unavailable:\n \"This is usually temporary. Try again in a few minutes.\",\n};\n"],"names":["normalizeRedirectUrl","redirectTo","origin","basePath","CallbackHandler","handleCallback","options","useZudoku","executeCallback","useSuspenseQuery","url","errorParam","errorDescription","errorUri","OAuthAuthorizationError","joinUrl","Navigate","errorDetailsMap","OAuthErrorPage","error","login","useAuth","type","details","jsxs","jsx","Heading","titles","Typography","Button","Link","HomeIcon","helpMessages"],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { j as s } from "./jsx-runtime-BzflLqGi.js";
2
+ import { useMemo as v } from "react";
3
+ import { O as f } from "./chunk-PVWAREVJ-ClM0m2aJ.js";
4
+ import { j } from "./ZudokuContext-DNHMZfcP.js";
5
+ import { g as c, O as x, G as O } from "./index-9MxNUgg4.js";
6
+ const y = ({
7
+ basePath: e,
8
+ version: n,
9
+ config: r,
10
+ client: a
11
+ }) => {
12
+ const p = v(() => {
13
+ const { versions: i, labels: u } = c(r), o = n ?? i.at(0), m = Object.fromEntries(
14
+ i.map((t) => [
15
+ t,
16
+ { path: j(e, t), label: u[t] ?? t }
17
+ ])
18
+ );
19
+ return {
20
+ config: {
21
+ ...r,
22
+ version: o,
23
+ versions: m,
24
+ input: (() => {
25
+ if (!Array.isArray(r.input))
26
+ return r.input;
27
+ const t = o ? r.input.find((l) => l.path === o) : r.input[0];
28
+ if (!t)
29
+ throw new Error(`No input found for version: ${o}`);
30
+ return t.input;
31
+ })()
32
+ }
33
+ };
34
+ }, [r, e, n]);
35
+ return /* @__PURE__ */ s.jsx(x, { value: p, children: /* @__PURE__ */ s.jsx(O, { client: a, children: /* @__PURE__ */ s.jsx(f, {}) }) });
36
+ };
37
+ export {
38
+ y as OasProvider
39
+ };
40
+ //# sourceMappingURL=OasProvider--qcZwrKS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OasProvider--qcZwrKS.js","sources":["../src/lib/plugins/openapi/OasProvider.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { Outlet } from \"react-router\";\nimport { joinUrl } from \"../../util/joinUrl.js\";\nimport type { GraphQLClient } from \"./client/GraphQLClient.js\";\nimport { GraphQLProvider } from \"./client/GraphQLContext.js\";\nimport { OasConfigProvider } from \"./context.js\";\nimport type { OasPluginConfig } from \"./interfaces.js\";\nimport { getVersionMetadata } from \"./util/getRoutes.js\";\n\nexport const OasProvider = ({\n basePath,\n version,\n config,\n client,\n}: {\n basePath: string;\n version?: string;\n config: OasPluginConfig;\n client: GraphQLClient;\n}) => {\n const value = useMemo(() => {\n const { versions: availableVersions, labels } = getVersionMetadata(config);\n const currentVersion = version ?? availableVersions.at(0);\n\n const versionLinks = Object.fromEntries(\n availableVersions.map((id) => [\n id,\n { path: joinUrl(basePath, id), label: labels[id] ?? id },\n ]),\n );\n\n const resolveInput = (): string | (() => Promise<unknown>) => {\n if (!Array.isArray(config.input)) {\n return config.input;\n }\n\n const versionConfig = currentVersion\n ? config.input.find((v) => v.path === currentVersion)\n : config.input[0];\n\n if (!versionConfig) {\n throw new Error(`No input found for version: ${currentVersion}`);\n }\n\n return versionConfig.input;\n };\n\n return {\n config: {\n ...config,\n version: currentVersion,\n versions: versionLinks,\n input: resolveInput(),\n },\n };\n }, [config, basePath, version]);\n\n return (\n <OasConfigProvider value={value}>\n <GraphQLProvider client={client}>\n <Outlet />\n </GraphQLProvider>\n </OasConfigProvider>\n );\n};\n"],"names":["OasProvider","basePath","version","config","client","value","useMemo","availableVersions","labels","getVersionMetadata","currentVersion","versionLinks","id","joinUrl","versionConfig","v","jsx","OasConfigProvider","GraphQLProvider","Outlet"],"mappings":";;;;;AASO,MAAMA,IAAc,CAAC;AAAA,EAC1B,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AACF,MAKM;AACJ,QAAMC,IAAQC,EAAQ,MAAM;AAC1B,UAAM,EAAE,UAAUC,GAAmB,QAAAC,EAAA,IAAWC,EAAmBN,CAAM,GACnEO,IAAiBR,KAAWK,EAAkB,GAAG,CAAC,GAElDI,IAAe,OAAO;AAAA,MAC1BJ,EAAkB,IAAI,CAACK,MAAO;AAAA,QAC5BA;AAAA,QACA,EAAE,MAAMC,EAAQZ,GAAUW,CAAE,GAAG,OAAOJ,EAAOI,CAAE,KAAKA,EAAA;AAAA,MAAG,CACxD;AAAA,IAAA;AAmBH,WAAO;AAAA,MACL,QAAQ;AAAA,QACN,GAAGT;AAAA,QACH,SAASO;AAAA,QACT,UAAUC;AAAA,QACV,QArBiB,MAAyC;AAC5D,cAAI,CAAC,MAAM,QAAQR,EAAO,KAAK;AAC7B,mBAAOA,EAAO;AAGhB,gBAAMW,IAAgBJ,IAClBP,EAAO,MAAM,KAAK,CAACY,MAAMA,EAAE,SAASL,CAAc,IAClDP,EAAO,MAAM,CAAC;AAElB,cAAI,CAACW;AACH,kBAAM,IAAI,MAAM,+BAA+BJ,CAAc,EAAE;AAGjE,iBAAOI,EAAc;AAAA,QACvB,GAOW;AAAA,MAAa;AAAA,IACtB;AAAA,EAEJ,GAAG,CAACX,GAAQF,GAAUC,CAAO,CAAC;AAE9B,SACEc,gBAAAA,EAAAA,IAACC,KAAkB,OAAAZ,GACjB,UAAAW,gBAAAA,EAAAA,IAACE,KAAgB,QAAAd,GACf,UAAAY,gBAAAA,EAAAA,IAACG,GAAA,CAAA,CAAO,EAAA,CACV,EAAA,CACF;AAEJ;"}