zudoku 0.0.0-ff3751f → 0.0.0-fix-display-option-navigation-items.4bdfe991

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 (1841) hide show
  1. package/README.md +3 -3
  2. package/cli.js +9 -0
  3. package/dist/app/ZuploBuildConfig.d.ts +45 -0
  4. package/dist/app/ZuploBuildConfig.js +29 -0
  5. package/dist/app/ZuploBuildConfig.js.map +1 -0
  6. package/dist/app/demo.js +22 -9
  7. package/dist/app/demo.js.map +1 -1
  8. package/dist/app/entry.client.d.ts +6 -2
  9. package/dist/app/entry.client.js +51 -3
  10. package/dist/app/entry.client.js.map +1 -1
  11. package/dist/app/entry.server.d.ts +9 -8
  12. package/dist/app/entry.server.js +18 -16
  13. package/dist/app/entry.server.js.map +1 -1
  14. package/dist/app/env.d.ts +33 -0
  15. package/dist/app/env.js +37 -0
  16. package/dist/app/env.js.map +1 -0
  17. package/dist/app/main.d.ts +4 -3
  18. package/dist/app/main.js +44 -43
  19. package/dist/app/main.js.map +1 -1
  20. package/dist/app/sentry.d.ts +3 -0
  21. package/dist/app/sentry.js +19 -0
  22. package/dist/app/sentry.js.map +1 -0
  23. package/dist/app/standalone.js +8 -10
  24. package/dist/app/standalone.js.map +1 -1
  25. package/dist/cli/build/handler.d.ts +1 -3
  26. package/dist/cli/build/handler.js +18 -2
  27. package/dist/cli/build/handler.js.map +1 -1
  28. package/dist/cli/cli.js +17 -3
  29. package/dist/cli/cli.js.map +1 -1
  30. package/dist/cli/cmds/build.d.ts +11 -3
  31. package/dist/cli/cmds/build.js +21 -13
  32. package/dist/cli/cmds/build.js.map +1 -1
  33. package/dist/cli/cmds/dev.d.ts +1 -1
  34. package/dist/cli/cmds/dev.js +5 -0
  35. package/dist/cli/cmds/dev.js.map +1 -1
  36. package/dist/cli/cmds/preview.d.ts +16 -0
  37. package/dist/cli/cmds/preview.js +25 -0
  38. package/dist/cli/cmds/preview.js.map +1 -0
  39. package/dist/cli/common/logger.js +9 -0
  40. package/dist/cli/common/logger.js.map +1 -1
  41. package/dist/cli/common/machine-id/lib.js +1 -0
  42. package/dist/cli/common/machine-id/lib.js.map +1 -1
  43. package/dist/cli/common/outdated.js +2 -1
  44. package/dist/cli/common/outdated.js.map +1 -1
  45. package/dist/cli/common/output.js.map +1 -1
  46. package/dist/cli/common/utils/ports.d.ts +1 -1
  47. package/dist/cli/common/utils/ports.js +16 -15
  48. package/dist/cli/common/utils/ports.js.map +1 -1
  49. package/dist/cli/dev/handler.d.ts +1 -0
  50. package/dist/cli/dev/handler.js +15 -12
  51. package/dist/cli/dev/handler.js.map +1 -1
  52. package/dist/cli/preview/handler.d.ts +3 -0
  53. package/dist/cli/preview/handler.js +35 -0
  54. package/dist/cli/preview/handler.js.map +1 -0
  55. package/dist/codegen.d.ts +3 -0
  56. package/dist/codegen.js +45 -0
  57. package/dist/codegen.js.map +1 -0
  58. package/dist/config/config.d.ts +28 -13
  59. package/dist/config/file-exists.d.ts +1 -0
  60. package/dist/config/file-exists.js +5 -0
  61. package/dist/config/file-exists.js.map +1 -0
  62. package/dist/config/loader.d.ts +21 -0
  63. package/dist/config/loader.js +141 -0
  64. package/dist/config/loader.js.map +1 -0
  65. package/dist/config/validators/BuildSchema.d.ts +36 -0
  66. package/dist/config/validators/BuildSchema.js +25 -0
  67. package/dist/config/validators/BuildSchema.js.map +1 -0
  68. package/dist/config/validators/InputNavigationSchema.d.ts +7460 -0
  69. package/dist/config/validators/InputNavigationSchema.js +74 -0
  70. package/dist/config/validators/InputNavigationSchema.js.map +1 -0
  71. package/dist/config/validators/InputNavigationSchema.test-d.js +145 -0
  72. package/dist/config/validators/InputNavigationSchema.test-d.js.map +1 -0
  73. package/dist/config/validators/NavigationSchema.d.ts +44 -0
  74. package/dist/config/validators/NavigationSchema.js +96 -0
  75. package/dist/config/validators/NavigationSchema.js.map +1 -0
  76. package/dist/config/validators/ProtectedRoutesSchema.d.ts +12 -0
  77. package/dist/config/validators/ProtectedRoutesSchema.js +19 -0
  78. package/dist/config/validators/ProtectedRoutesSchema.js.map +1 -0
  79. package/dist/config/validators/icon-types.d.ts +2 -0
  80. package/dist/config/validators/icon-types.js +1830 -0
  81. package/dist/config/validators/icon-types.js.map +1 -0
  82. package/dist/config/validators/validate.d.ts +655 -1564
  83. package/dist/config/validators/validate.js +345 -145
  84. package/dist/config/validators/validate.js.map +1 -1
  85. package/dist/config/validators/validate.test.js +141 -0
  86. package/dist/config/validators/validate.test.js.map +1 -0
  87. package/dist/index.d.ts +9 -5
  88. package/dist/index.js +5 -1
  89. package/dist/index.js.map +1 -1
  90. package/dist/lib/MissingIcon.d.ts +2 -0
  91. package/dist/lib/MissingIcon.js +7 -0
  92. package/dist/lib/MissingIcon.js.map +1 -0
  93. package/dist/lib/auth/issuer.d.ts +2 -0
  94. package/dist/lib/auth/issuer.js +37 -0
  95. package/dist/lib/auth/issuer.js.map +1 -0
  96. package/dist/lib/auth/issuer.test.js +94 -0
  97. package/dist/lib/auth/issuer.test.js.map +1 -0
  98. package/dist/lib/authentication/AuthenticationPlugin.d.ts +6 -4
  99. package/dist/lib/authentication/AuthenticationPlugin.js +4 -1
  100. package/dist/lib/authentication/AuthenticationPlugin.js.map +1 -1
  101. package/dist/lib/authentication/authentication.d.ts +6 -5
  102. package/dist/lib/authentication/components/CallbackHandler.js +17 -11
  103. package/dist/lib/authentication/components/CallbackHandler.js.map +1 -1
  104. package/dist/lib/authentication/components/OAuthErrorPage.d.ts +3 -0
  105. package/dist/lib/authentication/components/OAuthErrorPage.js +99 -0
  106. package/dist/lib/authentication/components/OAuthErrorPage.js.map +1 -0
  107. package/dist/lib/authentication/components/SignIn.d.ts +1 -1
  108. package/dist/lib/authentication/components/SignIn.js +6 -2
  109. package/dist/lib/authentication/components/SignIn.js.map +1 -1
  110. package/dist/lib/authentication/components/SignOut.js +2 -2
  111. package/dist/lib/authentication/components/SignOut.js.map +1 -1
  112. package/dist/lib/authentication/components/SignUp.d.ts +1 -1
  113. package/dist/lib/authentication/components/SignUp.js +4 -1
  114. package/dist/lib/authentication/components/SignUp.js.map +1 -1
  115. package/dist/lib/authentication/errors.d.ts +6 -12
  116. package/dist/lib/authentication/errors.js +2 -1
  117. package/dist/lib/authentication/errors.js.map +1 -1
  118. package/dist/lib/authentication/hook.d.ts +13 -4
  119. package/dist/lib/authentication/hook.js +12 -4
  120. package/dist/lib/authentication/hook.js.map +1 -1
  121. package/dist/lib/authentication/providers/auth0.d.ts +2 -2
  122. package/dist/lib/authentication/providers/auth0.js +16 -14
  123. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  124. package/dist/lib/authentication/providers/azureb2c.d.ts +28 -0
  125. package/dist/lib/authentication/providers/azureb2c.js +147 -0
  126. package/dist/lib/authentication/providers/azureb2c.js.map +1 -0
  127. package/dist/lib/authentication/providers/clerk.d.ts +2 -2
  128. package/dist/lib/authentication/providers/clerk.js +108 -48
  129. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  130. package/dist/lib/authentication/providers/openid.d.ts +26 -21
  131. package/dist/lib/authentication/providers/openid.js +112 -73
  132. package/dist/lib/authentication/providers/openid.js.map +1 -1
  133. package/dist/lib/authentication/providers/supabase.d.ts +4 -0
  134. package/dist/lib/authentication/providers/supabase.js +108 -0
  135. package/dist/lib/authentication/providers/supabase.js.map +1 -0
  136. package/dist/lib/authentication/state.d.ts +24 -19
  137. package/dist/lib/authentication/state.js +47 -7
  138. package/dist/lib/authentication/state.js.map +1 -1
  139. package/dist/lib/authentication/use-broadcast/shared.d.ts +48 -0
  140. package/dist/lib/authentication/use-broadcast/shared.js +243 -0
  141. package/dist/lib/authentication/use-broadcast/shared.js.map +1 -0
  142. package/dist/lib/authentication/use-broadcast/useBroadcast.d.ts +24 -0
  143. package/dist/lib/authentication/use-broadcast/useBroadcast.js +106 -0
  144. package/dist/lib/authentication/use-broadcast/useBroadcast.js.map +1 -0
  145. package/dist/lib/components/AnchorLink.d.ts +2 -2
  146. package/dist/lib/components/AnchorLink.js +9 -5
  147. package/dist/lib/components/AnchorLink.js.map +1 -1
  148. package/dist/lib/components/Autocomplete.d.ts +13 -0
  149. package/dist/lib/components/Autocomplete.js +47 -0
  150. package/dist/lib/components/Autocomplete.js.map +1 -0
  151. package/dist/lib/components/Banner.js +2 -2
  152. package/dist/lib/components/Banner.js.map +1 -1
  153. package/dist/lib/components/Bootstrap.d.ts +5 -3
  154. package/dist/lib/components/Bootstrap.js +13 -6
  155. package/dist/lib/components/Bootstrap.js.map +1 -1
  156. package/dist/lib/components/BuildCheck.d.ts +4 -0
  157. package/dist/lib/components/BuildCheck.js +38 -0
  158. package/dist/lib/components/BuildCheck.js.map +1 -0
  159. package/dist/lib/components/CategoryHeading.js +1 -1
  160. package/dist/lib/components/CategoryHeading.js.map +1 -1
  161. package/dist/lib/components/ClientOnly.d.ts +4 -2
  162. package/dist/lib/components/ClientOnly.js +1 -1
  163. package/dist/lib/components/ClientOnly.js.map +1 -1
  164. package/dist/lib/components/DeveloperHint.js +2 -1
  165. package/dist/lib/components/DeveloperHint.js.map +1 -1
  166. package/dist/lib/components/ErrorPage.js +2 -2
  167. package/dist/lib/components/ErrorPage.js.map +1 -1
  168. package/dist/lib/components/Footer.d.ts +1 -0
  169. package/dist/lib/components/Footer.js +32 -0
  170. package/dist/lib/components/Footer.js.map +1 -0
  171. package/dist/lib/components/Framed.d.ts +7 -0
  172. package/dist/lib/components/Framed.js +26 -0
  173. package/dist/lib/components/Framed.js.map +1 -0
  174. package/dist/lib/components/Header.js +32 -17
  175. package/dist/lib/components/Header.js.map +1 -1
  176. package/dist/lib/components/Heading.d.ts +10 -6
  177. package/dist/lib/components/Heading.js +7 -2
  178. package/dist/lib/components/Heading.js.map +1 -1
  179. package/dist/lib/components/InlineCode.d.ts +2 -1
  180. package/dist/lib/components/InlineCode.js +2 -9
  181. package/dist/lib/components/InlineCode.js.map +1 -1
  182. package/dist/lib/components/Layout.js +10 -21
  183. package/dist/lib/components/Layout.js.map +1 -1
  184. package/dist/lib/components/Main.d.ts +2 -0
  185. package/dist/lib/components/Main.js +18 -0
  186. package/dist/lib/components/Main.js.map +1 -0
  187. package/dist/lib/components/Markdown.d.ts +4 -3
  188. package/dist/lib/components/Markdown.js +14 -14
  189. package/dist/lib/components/Markdown.js.map +1 -1
  190. package/dist/lib/components/MobileTopNavigation.js +18 -9
  191. package/dist/lib/components/MobileTopNavigation.js.map +1 -1
  192. package/dist/lib/components/NotFoundPage.js +3 -3
  193. package/dist/lib/components/NotFoundPage.js.map +1 -1
  194. package/dist/lib/components/PageProgress.d.ts +1 -0
  195. package/dist/lib/components/PageProgress.js +20 -0
  196. package/dist/lib/components/PageProgress.js.map +1 -0
  197. package/dist/lib/components/Pagination.d.ts +11 -0
  198. package/dist/lib/components/Pagination.js +10 -0
  199. package/dist/lib/components/Pagination.js.map +1 -0
  200. package/dist/lib/components/PathRenderer.d.ts +11 -0
  201. package/dist/lib/components/PathRenderer.js +28 -0
  202. package/dist/lib/components/PathRenderer.js.map +1 -0
  203. package/dist/lib/components/ReactMarkdown.d.ts +29 -0
  204. package/dist/lib/components/ReactMarkdown.js +182 -0
  205. package/dist/lib/components/ReactMarkdown.js.map +1 -0
  206. package/dist/lib/components/Search.d.ts +3 -1
  207. package/dist/lib/components/Search.js +9 -3
  208. package/dist/lib/components/Search.js.map +1 -1
  209. package/dist/lib/components/Slot.d.ts +17 -0
  210. package/dist/lib/components/Slot.js +24 -0
  211. package/dist/lib/components/Slot.js.map +1 -0
  212. package/dist/lib/components/Slot.test.d.ts +1 -0
  213. package/dist/lib/components/Slot.test.js +168 -0
  214. package/dist/lib/components/Slot.test.js.map +1 -0
  215. package/dist/lib/components/StatusPage.d.ts +7 -0
  216. package/dist/lib/components/StatusPage.js +75 -0
  217. package/dist/lib/components/StatusPage.js.map +1 -0
  218. package/dist/lib/components/ThemeSwitch.d.ts +1 -0
  219. package/dist/lib/components/ThemeSwitch.js +16 -0
  220. package/dist/lib/components/ThemeSwitch.js.map +1 -0
  221. package/dist/lib/components/TopNavigation.d.ts +7 -3
  222. package/dist/lib/components/TopNavigation.js +55 -37
  223. package/dist/lib/components/TopNavigation.js.map +1 -1
  224. package/dist/lib/components/Typography.d.ts +5 -0
  225. package/dist/lib/components/Typography.js +8 -0
  226. package/dist/lib/components/Typography.js.map +1 -0
  227. package/dist/lib/components/Zudoku.d.ts +7 -0
  228. package/dist/lib/components/Zudoku.js +58 -0
  229. package/dist/lib/components/Zudoku.js.map +1 -0
  230. package/dist/lib/components/cache.d.ts +13 -0
  231. package/dist/lib/components/cache.js +20 -0
  232. package/dist/lib/components/cache.js.map +1 -0
  233. package/dist/lib/components/context/BypassProtectedRoutesContext.d.ts +1 -0
  234. package/dist/lib/components/context/BypassProtectedRoutesContext.js +3 -0
  235. package/dist/lib/components/context/BypassProtectedRoutesContext.js.map +1 -0
  236. package/dist/lib/components/context/RouterEventsEmitter.d.ts +1 -0
  237. package/dist/lib/components/context/RouterEventsEmitter.js +17 -0
  238. package/dist/lib/components/context/RouterEventsEmitter.js.map +1 -0
  239. package/dist/lib/components/context/SlotProvider.d.ts +26 -0
  240. package/dist/lib/components/context/SlotProvider.js +83 -0
  241. package/dist/lib/components/context/SlotProvider.js.map +1 -0
  242. package/dist/lib/components/context/ViewportAnchorContext.d.ts +2 -4
  243. package/dist/lib/components/context/ViewportAnchorContext.js +29 -23
  244. package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
  245. package/dist/lib/components/context/ZudokuContext.d.ts +9 -13
  246. package/dist/lib/components/context/ZudokuContext.js +64 -31
  247. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  248. package/dist/lib/components/context/ZudokuProvider.d.ts +2 -2
  249. package/dist/lib/components/context/ZudokuProvider.js +2 -1
  250. package/dist/lib/components/context/ZudokuProvider.js.map +1 -1
  251. package/dist/lib/components/index.d.ts +69 -20
  252. package/dist/lib/components/index.js +31 -9
  253. package/dist/lib/components/index.js.map +1 -1
  254. package/dist/lib/components/navigation/Navigation.d.ts +5 -0
  255. package/dist/lib/components/navigation/Navigation.js +12 -0
  256. package/dist/lib/components/navigation/Navigation.js.map +1 -0
  257. package/dist/lib/components/navigation/NavigationBadge.d.ts +26 -0
  258. package/dist/lib/components/navigation/NavigationBadge.js +26 -0
  259. package/dist/lib/components/navigation/NavigationBadge.js.map +1 -0
  260. package/dist/lib/components/navigation/NavigationCategory.d.ts +5 -0
  261. package/dist/lib/components/navigation/NavigationCategory.js +61 -0
  262. package/dist/lib/components/navigation/NavigationCategory.js.map +1 -0
  263. package/dist/lib/components/navigation/NavigationItem.d.ts +6 -0
  264. package/dist/lib/components/navigation/NavigationItem.js +54 -0
  265. package/dist/lib/components/navigation/NavigationItem.js.map +1 -0
  266. package/dist/lib/components/navigation/NavigationWrapper.d.ts +7 -0
  267. package/dist/lib/components/navigation/NavigationWrapper.js +21 -0
  268. package/dist/lib/components/navigation/NavigationWrapper.js.map +1 -0
  269. package/dist/lib/components/navigation/PoweredByZudoku.d.ts +3 -0
  270. package/dist/lib/components/navigation/PoweredByZudoku.js +7 -0
  271. package/dist/lib/components/navigation/PoweredByZudoku.js.map +1 -0
  272. package/dist/lib/components/navigation/Toc.js +46 -0
  273. package/dist/lib/components/navigation/Toc.js.map +1 -0
  274. package/dist/lib/components/navigation/ZudokuLogo.d.ts +6 -0
  275. package/dist/lib/components/navigation/ZudokuLogo.js +5 -0
  276. package/dist/lib/components/navigation/ZudokuLogo.js.map +1 -0
  277. package/dist/lib/components/navigation/ZuploLogo.d.ts +3 -0
  278. package/dist/lib/components/navigation/ZuploLogo.js +4 -0
  279. package/dist/lib/components/navigation/ZuploLogo.js.map +1 -0
  280. package/dist/lib/components/navigation/utils.d.ts +14 -6
  281. package/dist/lib/components/navigation/utils.js +50 -19
  282. package/dist/lib/components/navigation/utils.js.map +1 -1
  283. package/dist/lib/core/RouteGuard.d.ts +2 -0
  284. package/dist/lib/core/RouteGuard.js +52 -0
  285. package/dist/lib/core/RouteGuard.js.map +1 -0
  286. package/dist/lib/core/ZudokuContext.d.ts +113 -0
  287. package/dist/lib/core/ZudokuContext.js +93 -0
  288. package/dist/lib/core/ZudokuContext.js.map +1 -0
  289. package/dist/lib/core/plugins.d.ts +37 -19
  290. package/dist/lib/core/plugins.js +4 -0
  291. package/dist/lib/core/plugins.js.map +1 -1
  292. package/dist/lib/errors/ErrorAlert.js +5 -1
  293. package/dist/lib/errors/ErrorAlert.js.map +1 -1
  294. package/dist/lib/errors/RouterError.js +1 -1
  295. package/dist/lib/errors/RouterError.js.map +1 -1
  296. package/dist/lib/hooks/index.d.ts +28 -0
  297. package/dist/lib/hooks/index.js +16 -0
  298. package/dist/lib/hooks/index.js.map +1 -0
  299. package/dist/lib/hooks/useEvent.d.ts +11 -0
  300. package/dist/lib/hooks/useEvent.js +19 -0
  301. package/dist/lib/hooks/useEvent.js.map +1 -0
  302. package/dist/lib/hooks/useEvent.test.d.ts +1 -0
  303. package/dist/lib/hooks/useEvent.test.js +102 -0
  304. package/dist/lib/hooks/useEvent.test.js.map +1 -0
  305. package/dist/lib/hooks/useHotkey.d.ts +4 -0
  306. package/dist/lib/hooks/useHotkey.js +58 -0
  307. package/dist/lib/hooks/useHotkey.js.map +1 -0
  308. package/dist/lib/icons.d.ts +1 -0
  309. package/dist/lib/icons.js +1 -0
  310. package/dist/lib/icons.js.map +1 -1
  311. package/dist/lib/oas/graphql/circular.d.ts +3 -0
  312. package/dist/lib/oas/graphql/circular.js +43 -0
  313. package/dist/lib/oas/graphql/circular.js.map +1 -0
  314. package/dist/lib/oas/graphql/index.d.ts +25 -1
  315. package/dist/lib/oas/graphql/index.js +216 -69
  316. package/dist/lib/oas/graphql/index.js.map +1 -1
  317. package/dist/lib/oas/parser/dereference/index.js +8 -3
  318. package/dist/lib/oas/parser/dereference/index.js.map +1 -1
  319. package/dist/lib/oas/parser/index.d.ts +8 -3
  320. package/dist/lib/oas/parser/index.js +7 -23
  321. package/dist/lib/oas/parser/index.js.map +1 -1
  322. package/dist/lib/oas/parser/upgrade/index.d.ts +3 -2
  323. package/dist/lib/oas/parser/upgrade/index.js +83 -31
  324. package/dist/lib/oas/parser/upgrade/index.js.map +1 -1
  325. package/dist/lib/plugins/api-catalog/Catalog.d.ts +4 -0
  326. package/dist/lib/plugins/api-catalog/Catalog.js +26 -0
  327. package/dist/lib/plugins/api-catalog/Catalog.js.map +1 -0
  328. package/dist/lib/plugins/api-catalog/index.d.ts +31 -0
  329. package/dist/lib/plugins/api-catalog/index.js +46 -0
  330. package/dist/lib/plugins/api-catalog/index.js.map +1 -0
  331. package/dist/lib/plugins/api-keys/CreateApiKey.d.ts +3 -2
  332. package/dist/lib/plugins/api-keys/CreateApiKey.js +15 -7
  333. package/dist/lib/plugins/api-keys/CreateApiKey.js.map +1 -1
  334. package/dist/lib/plugins/api-keys/ProtectedRoute.js +1 -1
  335. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
  336. package/dist/lib/plugins/api-keys/SettingsApiKeys.d.ts +1 -1
  337. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +151 -28
  338. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -1
  339. package/dist/lib/plugins/api-keys/index.d.ts +25 -15
  340. package/dist/lib/plugins/api-keys/index.js +68 -30
  341. package/dist/lib/plugins/api-keys/index.js.map +1 -1
  342. package/dist/lib/plugins/custom-pages/index.d.ts +4 -6
  343. package/dist/lib/plugins/custom-pages/index.js +15 -10
  344. package/dist/lib/plugins/custom-pages/index.js.map +1 -1
  345. package/dist/lib/plugins/markdown/MdxPage.d.ts +9 -2
  346. package/dist/lib/plugins/markdown/MdxPage.js +43 -10
  347. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  348. package/dist/lib/plugins/markdown/index.d.ts +14 -4
  349. package/dist/lib/plugins/markdown/index.js +9 -26
  350. package/dist/lib/plugins/markdown/index.js.map +1 -1
  351. package/dist/lib/plugins/openapi/CollapsibleCode.d.ts +5 -0
  352. package/dist/lib/plugins/openapi/CollapsibleCode.js +25 -0
  353. package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -0
  354. package/dist/lib/plugins/openapi/ColorizedParam.d.ts +10 -2
  355. package/dist/lib/plugins/openapi/ColorizedParam.js +29 -14
  356. package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
  357. package/dist/lib/plugins/openapi/Endpoint.js +13 -16
  358. package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
  359. package/dist/lib/plugins/openapi/OasProvider.d.ts +8 -0
  360. package/dist/lib/plugins/openapi/OasProvider.js +29 -0
  361. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -0
  362. package/dist/lib/plugins/openapi/OperationList.d.ts +6 -3
  363. package/dist/lib/plugins/openapi/OperationList.js +109 -29
  364. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  365. package/dist/lib/plugins/openapi/OperationListItem.d.ts +5 -3
  366. package/dist/lib/plugins/openapi/OperationListItem.js +13 -7
  367. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  368. package/dist/lib/plugins/openapi/ParamInfos.d.ts +6 -0
  369. package/dist/lib/plugins/openapi/ParamInfos.js +45 -0
  370. package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -0
  371. package/dist/lib/plugins/openapi/ParameterList.d.ts +2 -1
  372. package/dist/lib/plugins/openapi/ParameterList.js +3 -2
  373. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  374. package/dist/lib/plugins/openapi/ParameterListItem.js +19 -1
  375. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  376. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.d.ts +4 -2
  377. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +17 -4
  378. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
  379. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +3 -4
  380. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +5 -9
  381. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  382. package/dist/lib/plugins/openapi/ResponsesSidecarBox.d.ts +2 -4
  383. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +4 -6
  384. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  385. package/dist/lib/plugins/openapi/SchemaList.d.ts +1 -0
  386. package/dist/lib/plugins/openapi/SchemaList.js +52 -0
  387. package/dist/lib/plugins/openapi/SchemaList.js.map +1 -0
  388. package/dist/lib/plugins/openapi/Sidecar.d.ts +1 -1
  389. package/dist/lib/plugins/openapi/Sidecar.js +87 -118
  390. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  391. package/dist/lib/plugins/openapi/SidecarBox.js +4 -4
  392. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  393. package/dist/lib/plugins/openapi/SidecarExamples.d.ts +9 -0
  394. package/dist/lib/plugins/openapi/SidecarExamples.js +76 -0
  395. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -0
  396. package/dist/lib/plugins/openapi/SimpleSelect.js +1 -1
  397. package/dist/lib/plugins/openapi/SimpleSelect.js.map +1 -1
  398. package/dist/lib/plugins/openapi/client/GraphQLClient.d.ts +8 -0
  399. package/dist/lib/plugins/openapi/client/GraphQLClient.js +43 -0
  400. package/dist/lib/plugins/openapi/client/GraphQLClient.js.map +1 -0
  401. package/dist/lib/plugins/openapi/client/GraphQLContext.d.ts +7 -0
  402. package/dist/lib/plugins/openapi/client/GraphQLContext.js +5 -0
  403. package/dist/lib/plugins/openapi/client/GraphQLContext.js.map +1 -0
  404. package/dist/lib/plugins/openapi/client/createServer.d.ts +3 -1
  405. package/dist/lib/plugins/openapi/client/createServer.js +5 -2
  406. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -1
  407. package/dist/lib/plugins/openapi/client/useCreateQuery.d.ts +14 -0
  408. package/dist/lib/plugins/openapi/client/useCreateQuery.js +20 -0
  409. package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -0
  410. package/dist/lib/plugins/openapi/components/ConstValue.d.ts +5 -0
  411. package/dist/lib/plugins/openapi/components/ConstValue.js +6 -0
  412. package/dist/lib/plugins/openapi/components/ConstValue.js.map +1 -0
  413. package/dist/lib/plugins/openapi/components/EnumValues.d.ts +5 -0
  414. package/dist/lib/plugins/openapi/components/EnumValues.js +15 -0
  415. package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -0
  416. package/dist/lib/plugins/openapi/components/ResponseContent.d.ts +12 -0
  417. package/dist/lib/plugins/openapi/components/ResponseContent.js +21 -0
  418. package/dist/lib/plugins/openapi/components/ResponseContent.js.map +1 -0
  419. package/dist/lib/plugins/openapi/components/SelectOnClick.d.ts +5 -0
  420. package/dist/lib/plugins/openapi/components/SelectOnClick.js +16 -0
  421. package/dist/lib/plugins/openapi/components/SelectOnClick.js.map +1 -0
  422. package/dist/lib/plugins/openapi/context.d.ts +3 -3
  423. package/dist/lib/plugins/openapi/graphql/fragment-masking.d.ts +3 -3
  424. package/dist/lib/plugins/openapi/graphql/fragment-masking.js +3 -4
  425. package/dist/lib/plugins/openapi/graphql/fragment-masking.js.map +1 -1
  426. package/dist/lib/plugins/openapi/graphql/gql.d.ts +8 -46
  427. package/dist/lib/plugins/openapi/graphql/gql.js +6 -13
  428. package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
  429. package/dist/lib/plugins/openapi/graphql/graphql.d.ts +142 -25
  430. package/dist/lib/plugins/openapi/graphql/graphql.js +239 -662
  431. package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
  432. package/dist/lib/plugins/openapi/index.d.ts +11 -8
  433. package/dist/lib/plugins/openapi/index.js +106 -104
  434. package/dist/lib/plugins/openapi/index.js.map +1 -1
  435. package/dist/lib/plugins/openapi/interfaces.d.ts +58 -4
  436. package/dist/lib/plugins/openapi/playground/BodyPanel.d.ts +5 -0
  437. package/dist/lib/plugins/openapi/playground/BodyPanel.js +26 -0
  438. package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -0
  439. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.d.ts +8 -0
  440. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +11 -0
  441. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -0
  442. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.d.ts +6 -0
  443. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +9 -0
  444. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -0
  445. package/dist/lib/plugins/openapi/playground/Headers.d.ts +5 -4
  446. package/dist/lib/plugins/openapi/playground/Headers.js +108 -7
  447. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  448. package/dist/lib/plugins/openapi/playground/IdentityDialog.d.ts +11 -0
  449. package/dist/lib/plugins/openapi/playground/IdentityDialog.js +15 -0
  450. package/dist/lib/plugins/openapi/playground/IdentityDialog.js.map +1 -0
  451. package/dist/lib/plugins/openapi/playground/IdentitySelector.d.ts +7 -0
  452. package/dist/lib/plugins/openapi/playground/IdentitySelector.js +7 -0
  453. package/dist/lib/plugins/openapi/playground/IdentitySelector.js.map +1 -0
  454. package/dist/lib/plugins/openapi/playground/InlineInput.js +1 -1
  455. package/dist/lib/plugins/openapi/playground/InlineInput.js.map +1 -1
  456. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +9 -0
  457. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +5 -0
  458. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -0
  459. package/dist/lib/plugins/openapi/playground/PathParams.d.ts +3 -2
  460. package/dist/lib/plugins/openapi/playground/PathParams.js +4 -7
  461. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  462. package/dist/lib/plugins/openapi/playground/Playground.d.ts +32 -2
  463. package/dist/lib/plugins/openapi/playground/Playground.js +168 -84
  464. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  465. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +1 -1
  466. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  467. package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +3 -3
  468. package/dist/lib/plugins/openapi/playground/QueryParams.js +43 -22
  469. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  470. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.d.ts +7 -0
  471. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js +8 -0
  472. package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js.map +1 -0
  473. package/dist/lib/plugins/openapi/playground/Spinner.d.ts +2 -0
  474. package/dist/lib/plugins/openapi/playground/Spinner.js +63 -0
  475. package/dist/lib/plugins/openapi/playground/Spinner.js.map +1 -0
  476. package/dist/lib/plugins/openapi/playground/fileUtils.d.ts +2 -0
  477. package/dist/lib/plugins/openapi/playground/fileUtils.js +22 -0
  478. package/dist/lib/plugins/openapi/playground/fileUtils.js.map +1 -0
  479. package/dist/lib/plugins/openapi/playground/rememberedIdentity.d.ts +17 -0
  480. package/dist/lib/plugins/openapi/playground/rememberedIdentity.js +11 -0
  481. package/dist/lib/plugins/openapi/playground/rememberedIdentity.js.map +1 -0
  482. package/dist/lib/plugins/openapi/playground/request-panel/UrlPath.d.ts +3 -0
  483. package/dist/lib/plugins/openapi/playground/request-panel/UrlPath.js +13 -0
  484. package/dist/lib/plugins/openapi/playground/request-panel/UrlPath.js.map +1 -0
  485. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.d.ts +1 -0
  486. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +12 -0
  487. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -0
  488. package/dist/lib/plugins/openapi/playground/result-panel/Highlight.d.ts +12 -0
  489. package/dist/lib/plugins/openapi/playground/result-panel/Highlight.js +11 -0
  490. package/dist/lib/plugins/openapi/playground/result-panel/Highlight.js.map +1 -0
  491. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.d.ts +8 -0
  492. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js +69 -0
  493. package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js.map +1 -0
  494. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.d.ts +14 -0
  495. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +103 -0
  496. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -0
  497. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +11 -0
  498. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +15 -0
  499. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -0
  500. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.d.ts +10 -0
  501. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js +32 -0
  502. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js.map +1 -0
  503. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.d.ts +1 -0
  504. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.js +56 -0
  505. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.js.map +1 -0
  506. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.d.ts +16 -0
  507. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js +10 -0
  508. package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js.map +1 -0
  509. package/dist/lib/plugins/openapi/processors/removeExtensions.d.ts +8 -0
  510. package/dist/lib/plugins/openapi/processors/removeExtensions.js +16 -0
  511. package/dist/lib/plugins/openapi/processors/removeExtensions.js.map +1 -0
  512. package/dist/lib/plugins/openapi/processors/removeExtensions.test.d.ts +1 -0
  513. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js +194 -0
  514. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js.map +1 -0
  515. package/dist/lib/plugins/openapi/processors/removeParameters.d.ts +12 -0
  516. package/dist/lib/plugins/openapi/processors/removeParameters.js +66 -0
  517. package/dist/lib/plugins/openapi/processors/removeParameters.js.map +1 -0
  518. package/dist/lib/plugins/openapi/processors/removeParameters.test.d.ts +1 -0
  519. package/dist/lib/plugins/openapi/processors/removeParameters.test.js +159 -0
  520. package/dist/lib/plugins/openapi/processors/removeParameters.test.js.map +1 -0
  521. package/dist/lib/plugins/openapi/processors/removePaths.d.ts +13 -0
  522. package/dist/lib/plugins/openapi/processors/removePaths.js +33 -0
  523. package/dist/lib/plugins/openapi/processors/removePaths.js.map +1 -0
  524. package/dist/lib/plugins/openapi/processors/removePaths.test.d.ts +1 -0
  525. package/dist/lib/plugins/openapi/processors/removePaths.test.js +144 -0
  526. package/dist/lib/plugins/openapi/processors/removePaths.test.js.map +1 -0
  527. package/dist/lib/plugins/openapi/processors/traverse.d.ts +1 -0
  528. package/dist/lib/plugins/openapi/processors/traverse.js +2 -0
  529. package/dist/lib/plugins/openapi/processors/traverse.js.map +1 -0
  530. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.d.ts +1 -2
  531. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js +2 -2
  532. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js.map +1 -1
  533. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.d.ts +2 -1
  534. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.js +2 -2
  535. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.js.map +1 -1
  536. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.d.ts +0 -1
  537. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js +1 -1
  538. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js.map +1 -1
  539. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.d.ts +4 -0
  540. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +15 -0
  541. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -0
  542. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.d.ts +11 -0
  543. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +44 -0
  544. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -0
  545. package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +2 -2
  546. package/dist/lib/plugins/openapi/schema/SchemaView.js +40 -51
  547. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  548. package/dist/lib/plugins/openapi/schema/utils.d.ts +8 -1
  549. package/dist/lib/plugins/openapi/schema/utils.js +16 -4
  550. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  551. package/dist/lib/plugins/openapi/state.d.ts +25 -0
  552. package/dist/lib/plugins/openapi/state.js +18 -0
  553. package/dist/lib/plugins/openapi/state.js.map +1 -0
  554. package/dist/lib/plugins/openapi/util/createHttpSnippet.d.ts +11 -0
  555. package/dist/lib/plugins/openapi/util/createHttpSnippet.js +89 -0
  556. package/dist/lib/plugins/openapi/util/createHttpSnippet.js.map +1 -0
  557. package/dist/lib/plugins/openapi/util/createNavigationCategory.d.ts +9 -0
  558. package/dist/lib/plugins/openapi/util/createNavigationCategory.js +24 -0
  559. package/dist/lib/plugins/openapi/util/createNavigationCategory.js.map +1 -0
  560. package/dist/lib/plugins/openapi/util/generateSchemaExample.d.ts +1 -2
  561. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +80 -39
  562. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  563. package/dist/lib/plugins/openapi/util/getRoutes.d.ts +10 -0
  564. package/dist/lib/plugins/openapi/util/getRoutes.js +117 -0
  565. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -0
  566. package/dist/lib/plugins/openapi/util/methodColorMap.d.ts +2 -0
  567. package/dist/lib/plugins/openapi/util/methodColorMap.js +10 -0
  568. package/dist/lib/plugins/openapi/util/methodColorMap.js.map +1 -0
  569. package/dist/lib/plugins/openapi/util/methodToColor.d.ts +20 -0
  570. package/dist/lib/plugins/openapi/util/methodToColor.js +24 -0
  571. package/dist/lib/plugins/openapi/util/methodToColor.js.map +1 -0
  572. package/dist/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.d.ts +1 -0
  573. package/dist/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.js +27 -0
  574. package/dist/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.js.map +1 -0
  575. package/dist/lib/plugins/redirect/index.d.ts +3 -3
  576. package/dist/lib/plugins/redirect/index.js +1 -1
  577. package/dist/lib/plugins/redirect/index.js.map +1 -1
  578. package/dist/lib/plugins/search-inkeep/index.d.ts +8 -6
  579. package/dist/lib/plugins/search-inkeep/index.js +49 -7
  580. package/dist/lib/plugins/search-inkeep/index.js.map +1 -1
  581. package/dist/lib/plugins/search-inkeep/inkeep.d.ts +2 -19
  582. package/dist/lib/plugins/search-inkeep/inkeep.js +10 -19
  583. package/dist/lib/plugins/search-inkeep/inkeep.js.map +1 -1
  584. package/dist/lib/plugins/search-pagefind/PagefindSearch.d.ts +6 -0
  585. package/dist/lib/plugins/search-pagefind/PagefindSearch.js +80 -0
  586. package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -0
  587. package/dist/lib/plugins/search-pagefind/ResultList.d.ts +8 -0
  588. package/dist/lib/plugins/search-pagefind/ResultList.js +39 -0
  589. package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -0
  590. package/dist/lib/plugins/search-pagefind/get-results.d.ts +10 -0
  591. package/dist/lib/plugins/search-pagefind/get-results.js +42 -0
  592. package/dist/lib/plugins/search-pagefind/get-results.js.map +1 -0
  593. package/dist/lib/plugins/search-pagefind/index.d.ts +6 -0
  594. package/dist/lib/plugins/search-pagefind/index.js +9 -0
  595. package/dist/lib/plugins/search-pagefind/index.js.map +1 -0
  596. package/dist/lib/plugins/search-pagefind/types.d.ts +85 -0
  597. package/dist/lib/plugins/search-pagefind/types.js +2 -0
  598. package/dist/lib/plugins/search-pagefind/types.js.map +1 -0
  599. package/dist/lib/shiki.d.ts +31 -0
  600. package/dist/lib/shiki.js +101 -0
  601. package/dist/lib/shiki.js.map +1 -0
  602. package/dist/lib/ui/ActionButton.d.ts +4 -0
  603. package/dist/lib/ui/ActionButton.js +10 -0
  604. package/dist/lib/ui/ActionButton.js.map +1 -0
  605. package/dist/lib/ui/Alert.d.ts +6 -5
  606. package/dist/lib/ui/Alert.js +12 -10
  607. package/dist/lib/ui/Alert.js.map +1 -1
  608. package/dist/lib/ui/Badge.d.ts +2 -2
  609. package/dist/lib/ui/Badge.js +2 -1
  610. package/dist/lib/ui/Badge.js.map +1 -1
  611. package/dist/lib/ui/Button.d.ts +3 -3
  612. package/dist/lib/ui/Button.js +9 -6
  613. package/dist/lib/ui/Button.js.map +1 -1
  614. package/dist/lib/ui/Callout.d.ts +2 -1
  615. package/dist/lib/ui/Callout.js +3 -2
  616. package/dist/lib/ui/Callout.js.map +1 -1
  617. package/dist/lib/ui/Card.js +1 -1
  618. package/dist/lib/ui/Card.js.map +1 -1
  619. package/dist/lib/ui/Checkbox.js +1 -1
  620. package/dist/lib/ui/Checkbox.js.map +1 -1
  621. package/dist/lib/ui/CodeBlock.d.ts +15 -0
  622. package/dist/lib/ui/CodeBlock.js +17 -0
  623. package/dist/lib/ui/CodeBlock.js.map +1 -0
  624. package/dist/lib/ui/Command.d.ts +17 -3
  625. package/dist/lib/ui/Command.js +9 -5
  626. package/dist/lib/ui/Command.js.map +1 -1
  627. package/dist/lib/ui/Dialog.d.ts +3 -1
  628. package/dist/lib/ui/Dialog.js +2 -2
  629. package/dist/lib/ui/Dialog.js.map +1 -1
  630. package/dist/lib/ui/DropdownMenu.js +4 -4
  631. package/dist/lib/ui/DropdownMenu.js.map +1 -1
  632. package/dist/lib/ui/EmbeddedCodeBlock.d.ts +15 -0
  633. package/dist/lib/ui/EmbeddedCodeBlock.js +18 -0
  634. package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -0
  635. package/dist/lib/ui/Form.d.ts +1 -1
  636. package/dist/lib/ui/HoverCard.js +1 -1
  637. package/dist/lib/ui/HoverCard.js.map +1 -1
  638. package/dist/lib/ui/Input.d.ts +1 -2
  639. package/dist/lib/ui/Input.js +1 -1
  640. package/dist/lib/ui/Input.js.map +1 -1
  641. package/dist/lib/ui/Popover.js +1 -1
  642. package/dist/lib/ui/Popover.js.map +1 -1
  643. package/dist/lib/ui/RadioGroup.js +1 -1
  644. package/dist/lib/ui/RadioGroup.js.map +1 -1
  645. package/dist/lib/ui/Select.js +4 -4
  646. package/dist/lib/ui/Select.js.map +1 -1
  647. package/dist/lib/ui/Slider.js +1 -1
  648. package/dist/lib/ui/Slider.js.map +1 -1
  649. package/dist/lib/ui/Stepper.d.ts +3 -0
  650. package/dist/lib/ui/Stepper.js +7 -0
  651. package/dist/lib/ui/Stepper.js.map +1 -0
  652. package/dist/lib/ui/Switch.js +1 -1
  653. package/dist/lib/ui/Switch.js.map +1 -1
  654. package/dist/lib/ui/SyntaxHighlight.d.ts +12 -0
  655. package/dist/lib/ui/SyntaxHighlight.js +15 -0
  656. package/dist/lib/ui/SyntaxHighlight.js.map +1 -0
  657. package/dist/lib/ui/Tabs.js +2 -2
  658. package/dist/lib/ui/Tabs.js.map +1 -1
  659. package/dist/lib/ui/Textarea.js +1 -1
  660. package/dist/lib/ui/Textarea.js.map +1 -1
  661. package/dist/lib/ui/Toggle.js +1 -1
  662. package/dist/lib/ui/Toggle.js.map +1 -1
  663. package/dist/lib/ui/Tooltip.d.ts +2 -1
  664. package/dist/lib/ui/Tooltip.js +2 -1
  665. package/dist/lib/ui/Tooltip.js.map +1 -1
  666. package/dist/lib/ui/util.d.ts +2 -0
  667. package/dist/lib/ui/util.js +3 -0
  668. package/dist/lib/ui/util.js.map +1 -0
  669. package/dist/lib/util/MdxComponents.d.ts +38 -21
  670. package/dist/lib/util/MdxComponents.js +21 -17
  671. package/dist/lib/util/MdxComponents.js.map +1 -1
  672. package/dist/lib/util/createVariantComponent.d.ts +2 -2
  673. package/dist/lib/util/detectOS.d.ts +1 -0
  674. package/dist/lib/util/detectOS.js +11 -0
  675. package/dist/lib/util/detectOS.js.map +1 -0
  676. package/dist/lib/util/ensureArray.d.ts +1 -0
  677. package/dist/lib/util/ensureArray.js +2 -0
  678. package/dist/lib/util/ensureArray.js.map +1 -0
  679. package/dist/lib/util/humanFileSize.d.ts +6 -0
  680. package/dist/lib/util/humanFileSize.js +14 -0
  681. package/dist/lib/util/humanFileSize.js.map +1 -0
  682. package/dist/lib/util/humanFileSize.test.d.ts +1 -0
  683. package/dist/lib/util/humanFileSize.test.js +22 -0
  684. package/dist/lib/util/humanFileSize.test.js.map +1 -0
  685. package/dist/lib/util/invariant.d.ts +6 -5
  686. package/dist/lib/util/invariant.js +1 -1
  687. package/dist/lib/util/invariant.js.map +1 -1
  688. package/dist/lib/util/joinPath.d.ts +3 -0
  689. package/dist/lib/util/joinPath.js +3 -0
  690. package/dist/lib/util/joinPath.js.map +1 -1
  691. package/dist/lib/util/joinUrl.d.ts +1 -0
  692. package/dist/lib/util/joinUrl.js +40 -0
  693. package/dist/lib/util/joinUrl.js.map +1 -0
  694. package/dist/lib/util/joinUrl.test.d.ts +1 -0
  695. package/dist/lib/util/joinUrl.test.js +43 -0
  696. package/dist/lib/util/joinUrl.test.js.map +1 -0
  697. package/dist/lib/util/os.d.ts +2 -0
  698. package/dist/lib/util/os.js +21 -0
  699. package/dist/lib/util/os.js.map +1 -0
  700. package/dist/lib/util/scrollIntoViewIfNeeded.d.ts +1 -0
  701. package/dist/lib/util/scrollIntoViewIfNeeded.js +14 -0
  702. package/dist/lib/util/scrollIntoViewIfNeeded.js.map +1 -0
  703. package/dist/lib/util/traverse.d.ts +3 -0
  704. package/dist/lib/util/traverse.js +23 -0
  705. package/dist/lib/util/traverse.js.map +1 -0
  706. package/dist/lib/util/types.d.ts +7 -0
  707. package/dist/lib/util/types.js +2 -0
  708. package/dist/lib/util/types.js.map +1 -0
  709. package/dist/lib/util/url.d.ts +4 -0
  710. package/dist/lib/util/url.js +13 -0
  711. package/dist/lib/util/url.js.map +1 -0
  712. package/dist/lib/util/url.test.d.ts +1 -0
  713. package/dist/lib/util/url.test.js +26 -0
  714. package/dist/lib/util/url.test.js.map +1 -0
  715. package/dist/lib/util/useCopyToClipboard.d.ts +1 -0
  716. package/dist/lib/util/useCopyToClipboard.js +11 -0
  717. package/dist/lib/util/useCopyToClipboard.js.map +1 -0
  718. package/dist/lib/util/useExposedProps.d.ts +8 -1
  719. package/dist/lib/util/useExposedProps.js +1 -1
  720. package/dist/lib/util/useExposedProps.js.map +1 -1
  721. package/dist/lib/util/useIsomorphicLayoutEffect.d.ts +3 -0
  722. package/dist/lib/util/useIsomorphicLayoutEffect.js +4 -0
  723. package/dist/lib/util/useIsomorphicLayoutEffect.js.map +1 -0
  724. package/dist/lib/util/useLatest.d.ts +1 -0
  725. package/dist/lib/util/useLatest.js +15 -0
  726. package/dist/lib/util/useLatest.js.map +1 -0
  727. package/dist/lib/util/useOnScreen.d.ts +5 -0
  728. package/dist/lib/util/useOnScreen.js +19 -0
  729. package/dist/lib/util/useOnScreen.js.map +1 -0
  730. package/dist/lib/util/useScrollToAnchor.d.ts +1 -0
  731. package/dist/lib/util/useScrollToAnchor.js +43 -38
  732. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  733. package/dist/lib/util/useScrollToTop.js +7 -5
  734. package/dist/lib/util/useScrollToTop.js.map +1 -1
  735. package/dist/vite/api/SchemaManager.d.ts +36 -0
  736. package/dist/vite/api/SchemaManager.js +141 -0
  737. package/dist/vite/api/SchemaManager.js.map +1 -0
  738. package/dist/vite/api/SchemaManager.test.d.ts +1 -0
  739. package/dist/vite/api/SchemaManager.test.js +106 -0
  740. package/dist/vite/api/SchemaManager.test.js.map +1 -0
  741. package/dist/vite/api/schema-codegen.d.ts +12 -0
  742. package/dist/vite/api/schema-codegen.js +116 -0
  743. package/dist/vite/api/schema-codegen.js.map +1 -0
  744. package/dist/vite/api/schema-codegen.test.d.ts +1 -0
  745. package/dist/vite/api/schema-codegen.test.js +395 -0
  746. package/dist/vite/api/schema-codegen.test.js.map +1 -0
  747. package/dist/vite/build.js +58 -18
  748. package/dist/vite/build.js.map +1 -1
  749. package/dist/vite/config.d.ts +2 -10
  750. package/dist/vite/config.js +115 -112
  751. package/dist/vite/config.js.map +1 -1
  752. package/dist/vite/config.test.js +12 -6
  753. package/dist/vite/config.test.js.map +1 -1
  754. package/dist/vite/create-pagefind-index.d.ts +4 -0
  755. package/dist/vite/create-pagefind-index.js +12 -0
  756. package/dist/vite/create-pagefind-index.js.map +1 -0
  757. package/dist/vite/css/collect.d.ts +2 -0
  758. package/dist/vite/css/collect.js +27 -0
  759. package/dist/vite/css/collect.js.map +1 -0
  760. package/dist/vite/css/plugin.d.ts +4 -0
  761. package/dist/vite/css/plugin.js +91 -0
  762. package/dist/vite/css/plugin.js.map +1 -0
  763. package/dist/vite/dev-server.d.ts +5 -3
  764. package/dist/vite/dev-server.js +81 -22
  765. package/dist/vite/dev-server.js.map +1 -1
  766. package/dist/vite/error-handler.d.ts +1 -1
  767. package/dist/vite/error-handler.js +1 -1
  768. package/dist/vite/error-handler.js.map +1 -1
  769. package/dist/vite/html.d.ts +7 -3
  770. package/dist/vite/html.js +15 -11
  771. package/dist/vite/html.js.map +1 -1
  772. package/dist/vite/mdx/remark-last-modified.d.ts +3 -0
  773. package/dist/vite/mdx/remark-last-modified.js +29 -0
  774. package/dist/vite/mdx/remark-last-modified.js.map +1 -0
  775. package/dist/vite/mdx/utils.d.ts +2 -0
  776. package/dist/vite/mdx/utils.js +31 -0
  777. package/dist/vite/mdx/utils.js.map +1 -0
  778. package/dist/vite/output.d.ts +15 -3
  779. package/dist/vite/output.js +46 -16
  780. package/dist/vite/output.js.map +1 -1
  781. package/dist/vite/plugin-api-keys.d.ts +1 -2
  782. package/dist/vite/plugin-api-keys.js +13 -7
  783. package/dist/vite/plugin-api-keys.js.map +1 -1
  784. package/dist/vite/plugin-api.d.ts +1 -2
  785. package/dist/vite/plugin-api.js +146 -32
  786. package/dist/vite/plugin-api.js.map +1 -1
  787. package/dist/vite/plugin-auth.d.ts +1 -2
  788. package/dist/vite/plugin-auth.js +10 -6
  789. package/dist/vite/plugin-auth.js.map +1 -1
  790. package/dist/vite/plugin-component.d.ts +1 -2
  791. package/dist/vite/plugin-component.js +23 -22
  792. package/dist/vite/plugin-component.js.map +1 -1
  793. package/dist/vite/plugin-config-reload.d.ts +3 -4
  794. package/dist/vite/plugin-config-reload.js +31 -23
  795. package/dist/vite/plugin-config-reload.js.map +1 -1
  796. package/dist/vite/plugin-config.d.ts +1 -2
  797. package/dist/vite/plugin-config.js +27 -2
  798. package/dist/vite/plugin-config.js.map +1 -1
  799. package/dist/vite/plugin-custom-pages.d.ts +1 -2
  800. package/dist/vite/plugin-custom-pages.js +7 -6
  801. package/dist/vite/plugin-custom-pages.js.map +1 -1
  802. package/dist/vite/plugin-docs.d.ts +2 -3
  803. package/dist/vite/plugin-docs.js +73 -46
  804. package/dist/vite/plugin-docs.js.map +1 -1
  805. package/dist/vite/plugin-frontmatter.d.ts +1 -2
  806. package/dist/vite/plugin-frontmatter.js +13 -7
  807. package/dist/vite/plugin-frontmatter.js.map +1 -1
  808. package/dist/vite/plugin-mdx.d.ts +1 -8
  809. package/dist/vite/plugin-mdx.js +72 -26
  810. package/dist/vite/plugin-mdx.js.map +1 -1
  811. package/dist/vite/plugin-navigation.d.ts +4 -0
  812. package/dist/vite/plugin-navigation.js +64 -0
  813. package/dist/vite/plugin-navigation.js.map +1 -0
  814. package/dist/vite/plugin-redirect.d.ts +1 -2
  815. package/dist/vite/plugin-redirect.js +6 -5
  816. package/dist/vite/plugin-redirect.js.map +1 -1
  817. package/dist/vite/plugin-search.d.ts +1 -2
  818. package/dist/vite/plugin-search.js +8 -3
  819. package/dist/vite/plugin-search.js.map +1 -1
  820. package/dist/vite/plugin-shiki-register.d.ts +2 -0
  821. package/dist/vite/plugin-shiki-register.js +39 -0
  822. package/dist/vite/plugin-shiki-register.js.map +1 -0
  823. package/dist/vite/plugin-theme.d.ts +8 -0
  824. package/dist/vite/plugin-theme.js +274 -0
  825. package/dist/vite/plugin-theme.js.map +1 -0
  826. package/dist/vite/plugin-theme.test.d.ts +1 -0
  827. package/dist/vite/plugin-theme.test.js +312 -0
  828. package/dist/vite/plugin-theme.test.js.map +1 -0
  829. package/dist/vite/plugin.d.ts +1 -3
  830. package/dist/vite/plugin.js +24 -21
  831. package/dist/vite/plugin.js.map +1 -1
  832. package/dist/vite/prerender/FileWritingResponse.d.ts +25 -0
  833. package/dist/vite/prerender/FileWritingResponse.js +51 -0
  834. package/dist/vite/prerender/FileWritingResponse.js.map +1 -0
  835. package/dist/vite/prerender/InMemoryResponse.d.ts +16 -0
  836. package/dist/vite/prerender/InMemoryResponse.js +32 -0
  837. package/dist/vite/prerender/InMemoryResponse.js.map +1 -0
  838. package/dist/vite/prerender/PrerenderResponse.d.ts +10 -0
  839. package/dist/vite/prerender/PrerenderResponse.js +2 -0
  840. package/dist/vite/prerender/PrerenderResponse.js.map +1 -0
  841. package/dist/vite/prerender/prerender.d.ts +15 -0
  842. package/dist/vite/prerender/prerender.js +109 -0
  843. package/dist/vite/prerender/prerender.js.map +1 -0
  844. package/dist/vite/prerender/worker.d.ts +13 -0
  845. package/dist/vite/prerender/worker.js +63 -0
  846. package/dist/vite/prerender/worker.js.map +1 -0
  847. package/dist/vite/remarkStaticGeneration.d.ts +3 -0
  848. package/dist/vite/remarkStaticGeneration.js +125 -0
  849. package/dist/vite/remarkStaticGeneration.js.map +1 -0
  850. package/dist/vite/reporter.d.ts +3 -0
  851. package/dist/vite/reporter.js +33 -0
  852. package/dist/vite/reporter.js.map +1 -0
  853. package/dist/vite/shadcn-registry.d.ts +45 -0
  854. package/dist/vite/shadcn-registry.js +29 -0
  855. package/dist/vite/shadcn-registry.js.map +1 -0
  856. package/dist/vite/sitemap.d.ts +1 -1
  857. package/dist/vite/sitemap.js +2 -1
  858. package/dist/vite/sitemap.js.map +1 -1
  859. package/dist/zuplo/enrich-with-zuplo.d.ts +5 -0
  860. package/dist/zuplo/enrich-with-zuplo.js +185 -0
  861. package/dist/zuplo/enrich-with-zuplo.js.map +1 -0
  862. package/dist/zuplo/policy-types.d.ts +33 -0
  863. package/dist/zuplo/policy-types.js +8 -0
  864. package/dist/zuplo/policy-types.js.map +1 -0
  865. package/dist/zuplo/with-zuplo-processors.d.ts +3 -0
  866. package/dist/zuplo/with-zuplo-processors.js +26 -0
  867. package/dist/zuplo/with-zuplo-processors.js.map +1 -0
  868. package/dist/zuplo/with-zuplo.d.ts +6 -0
  869. package/dist/zuplo/with-zuplo.js +10 -0
  870. package/dist/zuplo/with-zuplo.js.map +1 -0
  871. package/lib/Alert-De-0F8I9.js +161 -0
  872. package/lib/Alert-De-0F8I9.js.map +1 -0
  873. package/lib/Button-B3o-2Xdf.js +51 -0
  874. package/lib/Button-B3o-2Xdf.js.map +1 -0
  875. package/lib/Card-CMDQUPM4.js +61 -0
  876. package/lib/Card-CMDQUPM4.js.map +1 -0
  877. package/lib/ClientOnly-E7hGysn1.js +11 -0
  878. package/lib/ClientOnly-E7hGysn1.js.map +1 -0
  879. package/lib/CodeBlock-B-G0eKtw.js +85 -0
  880. package/lib/CodeBlock-B-G0eKtw.js.map +1 -0
  881. package/lib/Command-C9AC5cf-.js +140 -0
  882. package/lib/Command-C9AC5cf-.js.map +1 -0
  883. package/lib/Dialog-DMWw1doX.js +99 -0
  884. package/lib/Dialog-DMWw1doX.js.map +1 -0
  885. package/lib/Drawer-DJ05s2pH.js +1133 -0
  886. package/lib/Drawer-DJ05s2pH.js.map +1 -0
  887. package/lib/MdxPage-Cipn_ReM.js +110 -0
  888. package/lib/MdxPage-Cipn_ReM.js.map +1 -0
  889. package/lib/OAuthErrorPage-DpNmpL61.js +150 -0
  890. package/lib/OAuthErrorPage-DpNmpL61.js.map +1 -0
  891. package/lib/OasProvider-6hriUaZr.js +35 -0
  892. package/lib/OasProvider-6hriUaZr.js.map +1 -0
  893. package/lib/OperationList-o1tnXlAi.js +5167 -0
  894. package/lib/OperationList-o1tnXlAi.js.map +1 -0
  895. package/lib/Pagination-BtZ4LBGC.js +37 -0
  896. package/lib/Pagination-BtZ4LBGC.js.map +1 -0
  897. package/lib/RouteGuard-BxsRhHRt.js +738 -0
  898. package/lib/RouteGuard-BxsRhHRt.js.map +1 -0
  899. package/lib/SchemaList-XZWLQ9Iu.js +149 -0
  900. package/lib/SchemaList-XZWLQ9Iu.js.map +1 -0
  901. package/lib/SchemaView-CnCipUNH.js +366 -0
  902. package/lib/SchemaView-CnCipUNH.js.map +1 -0
  903. package/lib/SignUp-CEKqv066.js +56 -0
  904. package/lib/SignUp-CEKqv066.js.map +1 -0
  905. package/lib/Slot-DAyXieeZ.js +15726 -0
  906. package/lib/Slot-DAyXieeZ.js.map +1 -0
  907. package/lib/Spinner-mNLZ6awP.js +7 -0
  908. package/lib/Spinner-mNLZ6awP.js.map +1 -0
  909. package/lib/SyntaxHighlight-BMKR4pl6.js +10306 -0
  910. package/lib/SyntaxHighlight-BMKR4pl6.js.map +1 -0
  911. package/lib/Toc-BKDRCQzU.js +92 -0
  912. package/lib/Toc-BKDRCQzU.js.map +1 -0
  913. package/lib/ZudokuContext-CLl5w57E.js +1278 -0
  914. package/lib/ZudokuContext-CLl5w57E.js.map +1 -0
  915. package/lib/chunk-QMGIS6GS-CEOk3lro.js +1839 -0
  916. package/lib/chunk-QMGIS6GS-CEOk3lro.js.map +1 -0
  917. package/lib/circular-NO6Ikm3k.js +14934 -0
  918. package/lib/circular-NO6Ikm3k.js.map +1 -0
  919. package/lib/clsx-OuTLNxxd.js +17 -0
  920. package/lib/clsx-OuTLNxxd.js.map +1 -0
  921. package/lib/cn-dYga0KKN.js +2731 -0
  922. package/lib/cn-dYga0KKN.js.map +1 -0
  923. package/lib/createServer-CSgplJuR.js +12505 -0
  924. package/lib/createServer-CSgplJuR.js.map +1 -0
  925. package/lib/errors-D036swsq.js +45 -0
  926. package/lib/errors-D036swsq.js.map +1 -0
  927. package/lib/hook-DbUCLQNg.js +247 -0
  928. package/lib/hook-DbUCLQNg.js.map +1 -0
  929. package/lib/index-BdJ_3lZe.js +3500 -0
  930. package/lib/index-BdJ_3lZe.js.map +1 -0
  931. package/lib/index-BkW9tJ6j.js +2094 -0
  932. package/lib/index-BkW9tJ6j.js.map +1 -0
  933. package/lib/index-Bm35Tkgf.js +107 -0
  934. package/lib/index-Bm35Tkgf.js.map +1 -0
  935. package/lib/index-BtBsh6LU.js +4081 -0
  936. package/lib/index-BtBsh6LU.js.map +1 -0
  937. package/lib/index-CrcNWbel.js +316 -0
  938. package/lib/index-CrcNWbel.js.map +1 -0
  939. package/lib/index-DI5SPFK9.js +36 -0
  940. package/lib/index-DI5SPFK9.js.map +1 -0
  941. package/lib/index-DmNq2fbN.js +4827 -0
  942. package/lib/index-DmNq2fbN.js.map +1 -0
  943. package/lib/index.esm-CpVp4hQq.js +1254 -0
  944. package/lib/index.esm-CpVp4hQq.js.map +1 -0
  945. package/lib/invariant-Bm-FVUQE.js +44 -0
  946. package/lib/invariant-Bm-FVUQE.js.map +1 -0
  947. package/lib/jsx-runtime-C5mzlN2N.js +285 -0
  948. package/lib/jsx-runtime-C5mzlN2N.js.map +1 -0
  949. package/lib/processors/removeExtensions.js +11 -0
  950. package/lib/processors/removeExtensions.js.map +1 -0
  951. package/lib/processors/removeParameters.js +47 -0
  952. package/lib/processors/removeParameters.js.map +1 -0
  953. package/lib/processors/removePaths.js +28 -0
  954. package/lib/processors/removePaths.js.map +1 -0
  955. package/lib/processors/traverse.js +17 -0
  956. package/lib/processors/traverse.js.map +1 -0
  957. package/lib/ui/Accordion.js +2 -2
  958. package/lib/ui/Accordion.js.map +1 -1
  959. package/lib/ui/ActionButton.js +25 -0
  960. package/lib/ui/ActionButton.js.map +1 -0
  961. package/lib/ui/Alert.js +55 -39
  962. package/lib/ui/Alert.js.map +1 -1
  963. package/lib/ui/AlertDialog.js +2 -2
  964. package/lib/ui/AlertDialog.js.map +1 -1
  965. package/lib/ui/Badge.js +5 -4
  966. package/lib/ui/Badge.js.map +1 -1
  967. package/lib/ui/Breadcrumb.js +5 -5
  968. package/lib/ui/Breadcrumb.js.map +1 -1
  969. package/lib/ui/Button.js +22 -19
  970. package/lib/ui/Button.js.map +1 -1
  971. package/lib/ui/Callout.js +40 -20
  972. package/lib/ui/Callout.js.map +1 -1
  973. package/lib/ui/Card.js +3 -3
  974. package/lib/ui/Card.js.map +1 -1
  975. package/lib/ui/Carousel.js +552 -546
  976. package/lib/ui/Carousel.js.map +1 -1
  977. package/lib/ui/Checkbox.js +14 -13
  978. package/lib/ui/Checkbox.js.map +1 -1
  979. package/lib/ui/CodeBlock.js +9 -0
  980. package/lib/ui/CodeBlock.js.map +1 -0
  981. package/lib/ui/Command.js +116 -510
  982. package/lib/ui/Command.js.map +1 -1
  983. package/lib/ui/Dialog.js +41 -41
  984. package/lib/ui/Dialog.js.map +1 -1
  985. package/lib/ui/Drawer.js +14 -1150
  986. package/lib/ui/Drawer.js.map +1 -1
  987. package/lib/ui/DropdownMenu.js +35 -35
  988. package/lib/ui/DropdownMenu.js.map +1 -1
  989. package/lib/ui/EmbeddedCodeBlock.js +80 -0
  990. package/lib/ui/EmbeddedCodeBlock.js.map +1 -0
  991. package/lib/ui/Form.js +6 -6
  992. package/lib/ui/Form.js.map +1 -1
  993. package/lib/ui/HoverCard.js +6 -6
  994. package/lib/ui/HoverCard.js.map +1 -1
  995. package/lib/ui/Input.js +3 -3
  996. package/lib/ui/Input.js.map +1 -1
  997. package/lib/ui/Label.js +3 -3
  998. package/lib/ui/Label.js.map +1 -1
  999. package/lib/ui/Pagination.js +5 -5
  1000. package/lib/ui/Pagination.js.map +1 -1
  1001. package/lib/ui/Popover.js +3 -3
  1002. package/lib/ui/Popover.js.map +1 -1
  1003. package/lib/ui/Progress.js +2 -2
  1004. package/lib/ui/Progress.js.map +1 -1
  1005. package/lib/ui/RadioGroup.js +11 -11
  1006. package/lib/ui/RadioGroup.js.map +1 -1
  1007. package/lib/ui/ScrollArea.js +2 -2
  1008. package/lib/ui/ScrollArea.js.map +1 -1
  1009. package/lib/ui/Select.js +34 -34
  1010. package/lib/ui/Select.js.map +1 -1
  1011. package/lib/ui/Skeleton.js +2 -2
  1012. package/lib/ui/Skeleton.js.map +1 -1
  1013. package/lib/ui/Slider.js +6 -6
  1014. package/lib/ui/Slider.js.map +1 -1
  1015. package/lib/ui/Stepper.js +6 -0
  1016. package/lib/ui/Stepper.js.map +1 -0
  1017. package/lib/ui/Switch.js +6 -6
  1018. package/lib/ui/Switch.js.map +1 -1
  1019. package/lib/ui/SyntaxHighlight.js +11 -0
  1020. package/lib/ui/SyntaxHighlight.js.map +1 -0
  1021. package/lib/ui/Tabs.js +17 -17
  1022. package/lib/ui/Tabs.js.map +1 -1
  1023. package/lib/ui/Textarea.js +6 -6
  1024. package/lib/ui/Textarea.js.map +1 -1
  1025. package/lib/ui/Toggle.js +8 -8
  1026. package/lib/ui/Toggle.js.map +1 -1
  1027. package/lib/ui/ToggleGroup.js +2 -2
  1028. package/lib/ui/ToggleGroup.js.map +1 -1
  1029. package/lib/ui/Tooltip.js +15 -8
  1030. package/lib/ui/Tooltip.js.map +1 -1
  1031. package/lib/ui/util.js +6 -0
  1032. package/lib/ui/util.js.map +1 -0
  1033. package/lib/useExposedProps-KcgXHKeE.js +9 -0
  1034. package/lib/useExposedProps-KcgXHKeE.js.map +1 -0
  1035. package/lib/zudoku.auth-auth0.js +32 -30
  1036. package/lib/zudoku.auth-auth0.js.map +1 -1
  1037. package/lib/zudoku.auth-azureb2c.js +137 -0
  1038. package/lib/zudoku.auth-azureb2c.js.map +1 -0
  1039. package/lib/zudoku.auth-clerk.js +108 -60
  1040. package/lib/zudoku.auth-clerk.js.map +1 -1
  1041. package/lib/zudoku.auth-openid.js +600 -623
  1042. package/lib/zudoku.auth-openid.js.map +1 -1
  1043. package/lib/zudoku.auth-supabase.js +97 -0
  1044. package/lib/zudoku.auth-supabase.js.map +1 -0
  1045. package/lib/zudoku.components.js +34 -1464
  1046. package/lib/zudoku.components.js.map +1 -1
  1047. package/lib/zudoku.hooks.js +28 -0
  1048. package/lib/zudoku.hooks.js.map +1 -0
  1049. package/lib/zudoku.icons.js +10 -0
  1050. package/lib/zudoku.icons.js.map +1 -1
  1051. package/lib/zudoku.plugin-api-catalog.js +118 -0
  1052. package/lib/zudoku.plugin-api-catalog.js.map +1 -0
  1053. package/lib/zudoku.plugin-api-keys.js +560 -204
  1054. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  1055. package/lib/zudoku.plugin-custom-pages.js +12 -18
  1056. package/lib/zudoku.plugin-custom-pages.js.map +1 -1
  1057. package/lib/zudoku.plugin-markdown.js +20 -93
  1058. package/lib/zudoku.plugin-markdown.js.map +1 -1
  1059. package/lib/zudoku.plugin-openapi.js +8 -10
  1060. package/lib/zudoku.plugin-openapi.js.map +1 -1
  1061. package/lib/zudoku.plugin-redirect.js +1 -1
  1062. package/lib/zudoku.plugin-redirect.js.map +1 -1
  1063. package/lib/zudoku.plugin-search-inkeep.js +61 -36
  1064. package/lib/zudoku.plugin-search-inkeep.js.map +1 -1
  1065. package/lib/zudoku.plugin-search-pagefind.js +325 -0
  1066. package/lib/zudoku.plugin-search-pagefind.js.map +1 -0
  1067. package/lib/zudoku.plugins.js +15 -0
  1068. package/lib/zudoku.plugins.js.map +1 -0
  1069. package/package.json +187 -101
  1070. package/src/app/ZuploBuildConfig.ts +33 -0
  1071. package/src/app/defaultTheme.css +73 -0
  1072. package/src/app/demo-cdn.html +31 -31
  1073. package/src/app/demo.html +1 -1
  1074. package/src/app/demo.tsx +25 -11
  1075. package/src/app/entry.client.tsx +67 -3
  1076. package/src/app/entry.server.tsx +80 -65
  1077. package/src/app/env.ts +43 -0
  1078. package/src/app/font.geist.css +73 -0
  1079. package/src/app/main.css +177 -130
  1080. package/src/app/main.tsx +72 -50
  1081. package/src/app/sentry.ts +24 -0
  1082. package/src/app/standalone.tsx +8 -11
  1083. package/src/lib/MissingIcon.tsx +22 -0
  1084. package/src/lib/auth/issuer.test.ts +120 -0
  1085. package/src/lib/auth/issuer.ts +41 -0
  1086. package/src/lib/authentication/AuthenticationPlugin.tsx +8 -5
  1087. package/src/lib/authentication/authentication.ts +7 -8
  1088. package/src/lib/authentication/components/CallbackHandler.tsx +29 -12
  1089. package/src/lib/authentication/components/OAuthErrorPage.tsx +171 -0
  1090. package/src/lib/authentication/components/SignIn.tsx +28 -2
  1091. package/src/lib/authentication/components/SignOut.tsx +3 -2
  1092. package/src/lib/authentication/components/SignUp.tsx +35 -1
  1093. package/src/lib/authentication/errors.ts +27 -13
  1094. package/src/lib/authentication/hook.ts +15 -4
  1095. package/src/lib/authentication/providers/auth0.tsx +29 -19
  1096. package/src/lib/authentication/providers/azureb2c.tsx +201 -0
  1097. package/src/lib/authentication/providers/clerk.tsx +127 -53
  1098. package/src/lib/authentication/providers/openid.tsx +169 -88
  1099. package/src/lib/authentication/providers/supabase.tsx +150 -0
  1100. package/src/lib/authentication/state.ts +86 -25
  1101. package/src/lib/authentication/use-broadcast/LICENSE.md +9 -0
  1102. package/src/lib/authentication/use-broadcast/shared.ts +372 -0
  1103. package/src/lib/authentication/use-broadcast/useBroadcast.ts +146 -0
  1104. package/src/lib/components/AnchorLink.tsx +13 -8
  1105. package/src/lib/components/Autocomplete.tsx +114 -0
  1106. package/src/lib/components/Banner.tsx +3 -3
  1107. package/src/lib/components/Bootstrap.tsx +43 -16
  1108. package/src/lib/components/BuildCheck.tsx +75 -0
  1109. package/src/lib/components/CategoryHeading.tsx +4 -1
  1110. package/src/lib/components/ClientOnly.tsx +6 -3
  1111. package/src/lib/components/DeveloperHint.tsx +6 -1
  1112. package/src/lib/components/ErrorPage.tsx +3 -3
  1113. package/src/lib/components/Footer.tsx +136 -0
  1114. package/src/lib/components/Framed.tsx +51 -0
  1115. package/src/lib/components/Header.tsx +119 -80
  1116. package/src/lib/components/Heading.tsx +26 -18
  1117. package/src/lib/components/InlineCode.tsx +13 -16
  1118. package/src/lib/components/Layout.tsx +36 -60
  1119. package/src/lib/components/Main.tsx +51 -0
  1120. package/src/lib/components/Markdown.tsx +42 -30
  1121. package/src/lib/components/MobileTopNavigation.tsx +96 -32
  1122. package/src/lib/components/NotFoundPage.tsx +7 -6
  1123. package/src/lib/components/PageProgress.tsx +28 -0
  1124. package/src/lib/components/Pagination.tsx +45 -0
  1125. package/src/lib/components/PathRenderer.tsx +61 -0
  1126. package/src/lib/components/ReactMarkdown.license.txt +21 -0
  1127. package/src/lib/components/ReactMarkdown.tsx +264 -0
  1128. package/src/lib/components/Search.tsx +18 -7
  1129. package/src/lib/components/Slot.test.tsx +465 -0
  1130. package/src/lib/components/Slot.tsx +64 -0
  1131. package/src/lib/components/StatusPage.tsx +96 -0
  1132. package/src/lib/components/ThemeSwitch.tsx +46 -0
  1133. package/src/lib/components/TopNavigation.tsx +91 -61
  1134. package/src/lib/components/Typography.tsx +14 -0
  1135. package/src/lib/components/Zudoku.tsx +119 -0
  1136. package/src/lib/components/cache.ts +23 -0
  1137. package/src/lib/components/context/BypassProtectedRoutesContext.ts +3 -0
  1138. package/src/lib/components/context/RouterEventsEmitter.tsx +19 -0
  1139. package/src/lib/components/context/SlotProvider.tsx +149 -0
  1140. package/src/lib/components/context/ViewportAnchorContext.tsx +34 -36
  1141. package/src/lib/components/context/ZudokuContext.ts +79 -38
  1142. package/src/lib/components/context/ZudokuProvider.tsx +4 -3
  1143. package/src/lib/components/index.ts +37 -13
  1144. package/src/lib/components/navigation/Navigation.tsx +50 -0
  1145. package/src/lib/components/navigation/NavigationBadge.tsx +48 -0
  1146. package/src/lib/components/navigation/NavigationCategory.tsx +146 -0
  1147. package/src/lib/components/navigation/NavigationItem.tsx +159 -0
  1148. package/src/lib/components/navigation/NavigationWrapper.tsx +49 -0
  1149. package/src/lib/components/navigation/PoweredByZudoku.tsx +33 -0
  1150. package/src/lib/components/navigation/Toc.tsx +126 -0
  1151. package/src/lib/components/navigation/ZudokuLogo.tsx +25 -0
  1152. package/src/lib/components/navigation/ZuploLogo.tsx +14 -0
  1153. package/src/lib/components/navigation/utils.ts +70 -29
  1154. package/src/lib/core/RouteGuard.tsx +96 -0
  1155. package/src/lib/core/ZudokuContext.ts +227 -0
  1156. package/src/lib/core/plugins.ts +55 -24
  1157. package/src/lib/errors/ErrorAlert.tsx +18 -18
  1158. package/src/lib/errors/RouterError.tsx +1 -1
  1159. package/src/lib/hooks/index.ts +16 -0
  1160. package/src/lib/hooks/useEvent.test.tsx +151 -0
  1161. package/src/lib/hooks/useEvent.ts +41 -0
  1162. package/src/lib/hooks/useHotkey.ts +70 -0
  1163. package/src/lib/icons.ts +1 -0
  1164. package/src/lib/oas/graphql/circular.ts +58 -0
  1165. package/src/lib/oas/graphql/index.ts +298 -104
  1166. package/src/lib/oas/parser/dereference/index.ts +10 -4
  1167. package/src/lib/oas/parser/index.ts +14 -30
  1168. package/src/lib/oas/parser/upgrade/index.ts +103 -38
  1169. package/src/lib/plugins/api-catalog/Catalog.tsx +73 -0
  1170. package/src/lib/plugins/api-catalog/index.tsx +115 -0
  1171. package/src/lib/plugins/api-keys/CreateApiKey.tsx +61 -45
  1172. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +1 -1
  1173. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +464 -116
  1174. package/src/lib/plugins/api-keys/index.tsx +141 -62
  1175. package/src/lib/plugins/custom-pages/index.tsx +22 -17
  1176. package/src/lib/plugins/markdown/MdxPage.tsx +111 -54
  1177. package/src/lib/plugins/markdown/index.tsx +33 -43
  1178. package/src/lib/plugins/openapi/CollapsibleCode.tsx +86 -0
  1179. package/src/lib/plugins/openapi/ColorizedParam.tsx +49 -23
  1180. package/src/lib/plugins/openapi/Endpoint.tsx +19 -22
  1181. package/src/lib/plugins/openapi/OasProvider.tsx +51 -0
  1182. package/src/lib/plugins/openapi/OperationList.tsx +234 -72
  1183. package/src/lib/plugins/openapi/OperationListItem.tsx +123 -94
  1184. package/src/lib/plugins/openapi/ParamInfos.tsx +90 -0
  1185. package/src/lib/plugins/openapi/ParameterList.tsx +4 -0
  1186. package/src/lib/plugins/openapi/ParameterListItem.tsx +84 -31
  1187. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +28 -3
  1188. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +15 -33
  1189. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +36 -59
  1190. package/src/lib/plugins/openapi/SchemaList.tsx +157 -0
  1191. package/src/lib/plugins/openapi/Sidecar.tsx +154 -172
  1192. package/src/lib/plugins/openapi/SidecarBox.tsx +4 -16
  1193. package/src/lib/plugins/openapi/SidecarExamples.tsx +169 -0
  1194. package/src/lib/plugins/openapi/SimpleSelect.tsx +1 -1
  1195. package/src/lib/plugins/openapi/client/GraphQLClient.tsx +65 -0
  1196. package/src/lib/plugins/openapi/client/GraphQLContext.tsx +16 -0
  1197. package/src/lib/plugins/openapi/client/createServer.ts +8 -2
  1198. package/src/lib/plugins/openapi/client/useCreateQuery.ts +45 -0
  1199. package/src/lib/plugins/openapi/components/ConstValue.tsx +24 -0
  1200. package/src/lib/plugins/openapi/components/EnumValues.tsx +58 -0
  1201. package/src/lib/plugins/openapi/components/ResponseContent.tsx +104 -0
  1202. package/src/lib/plugins/openapi/components/SelectOnClick.tsx +29 -0
  1203. package/src/lib/plugins/openapi/context.tsx +2 -2
  1204. package/src/lib/plugins/openapi/graphql/fragment-masking.ts +11 -18
  1205. package/src/lib/plugins/openapi/graphql/gql.ts +38 -30
  1206. package/src/lib/plugins/openapi/graphql/graphql.ts +388 -682
  1207. package/src/lib/plugins/openapi/index.tsx +161 -134
  1208. package/src/lib/plugins/openapi/interfaces.ts +59 -4
  1209. package/src/lib/plugins/openapi/playground/BodyPanel.tsx +55 -0
  1210. package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +47 -0
  1211. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +59 -0
  1212. package/src/lib/plugins/openapi/playground/Headers.tsx +284 -53
  1213. package/src/lib/plugins/openapi/playground/IdentityDialog.tsx +75 -0
  1214. package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +38 -0
  1215. package/src/lib/plugins/openapi/playground/InlineInput.tsx +1 -1
  1216. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +13 -0
  1217. package/src/lib/plugins/openapi/playground/PathParams.tsx +38 -64
  1218. package/src/lib/plugins/openapi/playground/Playground.tsx +405 -288
  1219. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +7 -3
  1220. package/src/lib/plugins/openapi/playground/QueryParams.tsx +134 -90
  1221. package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +51 -0
  1222. package/src/lib/plugins/openapi/playground/Spinner.tsx +87 -0
  1223. package/src/lib/plugins/openapi/playground/fileUtils.ts +32 -0
  1224. package/src/lib/plugins/openapi/playground/rememberedIdentity.ts +26 -0
  1225. package/src/lib/plugins/openapi/playground/request-panel/UrlPath.tsx +31 -0
  1226. package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +25 -0
  1227. package/src/lib/plugins/openapi/playground/result-panel/Highlight.tsx +26 -0
  1228. package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +115 -0
  1229. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +271 -0
  1230. package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +102 -0
  1231. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.test.ts +64 -0
  1232. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +36 -0
  1233. package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +20 -0
  1234. package/src/lib/plugins/openapi/processors/removeExtensions.test.ts +222 -0
  1235. package/src/lib/plugins/openapi/processors/removeExtensions.ts +29 -0
  1236. package/src/lib/plugins/openapi/processors/removeParameters.test.ts +182 -0
  1237. package/src/lib/plugins/openapi/processors/removeParameters.ts +103 -0
  1238. package/src/lib/plugins/openapi/processors/removePaths.test.ts +167 -0
  1239. package/src/lib/plugins/openapi/processors/removePaths.ts +57 -0
  1240. package/src/lib/plugins/openapi/processors/traverse.ts +1 -0
  1241. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.tsx +1 -8
  1242. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.tsx +3 -0
  1243. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.tsx +6 -3
  1244. package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +39 -0
  1245. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +159 -0
  1246. package/src/lib/plugins/openapi/schema/SchemaView.tsx +103 -141
  1247. package/src/lib/plugins/openapi/schema/utils.ts +33 -5
  1248. package/src/lib/plugins/openapi/state.ts +36 -0
  1249. package/src/lib/plugins/openapi/util/createHttpSnippet.ts +107 -0
  1250. package/src/lib/plugins/openapi/util/createNavigationCategory.tsx +38 -0
  1251. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +95 -44
  1252. package/src/lib/plugins/openapi/util/getRoutes.tsx +198 -0
  1253. package/src/lib/plugins/openapi/util/methodColorMap.tsx +11 -0
  1254. package/src/lib/plugins/openapi/util/methodToColor.ts +27 -0
  1255. package/src/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.tsx +32 -0
  1256. package/src/lib/plugins/redirect/index.tsx +4 -4
  1257. package/src/lib/plugins/search-inkeep/index.tsx +83 -32
  1258. package/src/lib/plugins/search-inkeep/inkeep.ts +15 -23
  1259. package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +165 -0
  1260. package/src/lib/plugins/search-pagefind/ResultList.tsx +114 -0
  1261. package/src/lib/plugins/search-pagefind/get-results.tsx +75 -0
  1262. package/src/lib/plugins/search-pagefind/index.tsx +21 -0
  1263. package/src/lib/plugins/search-pagefind/types.ts +118 -0
  1264. package/src/lib/shiki.ts +132 -0
  1265. package/src/lib/ui/ActionButton.tsx +30 -0
  1266. package/src/lib/ui/Alert.tsx +45 -39
  1267. package/src/lib/ui/Badge.tsx +3 -2
  1268. package/src/lib/ui/Button.tsx +12 -7
  1269. package/src/lib/ui/Callout.tsx +30 -10
  1270. package/src/lib/ui/Card.tsx +1 -1
  1271. package/src/lib/ui/Checkbox.tsx +2 -1
  1272. package/src/lib/ui/CodeBlock.tsx +88 -0
  1273. package/src/lib/ui/Command.tsx +47 -5
  1274. package/src/lib/ui/Dialog.tsx +11 -7
  1275. package/src/lib/ui/DropdownMenu.tsx +4 -4
  1276. package/src/lib/ui/EmbeddedCodeBlock.tsx +94 -0
  1277. package/src/lib/ui/HoverCard.tsx +1 -1
  1278. package/src/lib/ui/Input.tsx +2 -3
  1279. package/src/lib/ui/Popover.tsx +1 -1
  1280. package/src/lib/ui/RadioGroup.tsx +1 -1
  1281. package/src/lib/ui/Select.tsx +4 -4
  1282. package/src/lib/ui/Slider.tsx +1 -1
  1283. package/src/lib/ui/Stepper.tsx +8 -0
  1284. package/src/lib/ui/Switch.tsx +1 -1
  1285. package/src/lib/ui/SyntaxHighlight.tsx +35 -0
  1286. package/src/lib/ui/Tabs.tsx +2 -2
  1287. package/src/lib/ui/Textarea.tsx +1 -1
  1288. package/src/lib/ui/Toggle.tsx +1 -1
  1289. package/src/lib/ui/Tooltip.tsx +16 -1
  1290. package/src/lib/ui/util.tsx +3 -0
  1291. package/src/lib/util/MdxComponents.tsx +50 -25
  1292. package/src/lib/util/createVariantComponent.tsx +2 -2
  1293. package/src/lib/util/detectOS.ts +9 -0
  1294. package/src/lib/util/ensureArray.ts +3 -0
  1295. package/src/lib/util/humanFileSize.test.ts +24 -0
  1296. package/src/lib/util/humanFileSize.ts +16 -0
  1297. package/src/lib/util/invariant.ts +7 -5
  1298. package/src/lib/util/joinPath.tsx +3 -0
  1299. package/src/lib/util/joinUrl.test.ts +62 -0
  1300. package/src/lib/util/joinUrl.ts +57 -0
  1301. package/src/lib/util/os.ts +18 -0
  1302. package/src/lib/util/scrollIntoViewIfNeeded.ts +18 -0
  1303. package/src/lib/util/traverse.ts +34 -0
  1304. package/src/lib/util/types.ts +7 -0
  1305. package/src/lib/util/url.test.ts +51 -0
  1306. package/src/lib/util/url.ts +18 -0
  1307. package/src/lib/util/useCopyToClipboard.ts +17 -0
  1308. package/src/lib/util/useExposedProps.tsx +13 -2
  1309. package/src/lib/util/useIsomorphicLayoutEffect.ts +5 -0
  1310. package/src/lib/util/useLatest.ts +18 -0
  1311. package/src/lib/util/useOnScreen.ts +34 -0
  1312. package/src/lib/util/useScrollToAnchor.ts +49 -40
  1313. package/src/lib/util/useScrollToTop.ts +9 -4
  1314. package/src/shiki/langs/abap.js +1 -0
  1315. package/src/shiki/langs/actionscript-3.js +1 -0
  1316. package/src/shiki/langs/ada.js +1 -0
  1317. package/src/shiki/langs/angular-expression.js +1 -0
  1318. package/src/shiki/langs/angular-html.js +1 -0
  1319. package/src/shiki/langs/angular-inline-style.js +1 -0
  1320. package/src/shiki/langs/angular-inline-template.js +1 -0
  1321. package/src/shiki/langs/angular-let-declaration.js +1 -0
  1322. package/src/shiki/langs/angular-template-blocks.js +1 -0
  1323. package/src/shiki/langs/angular-template.js +1 -0
  1324. package/src/shiki/langs/angular-ts.js +1 -0
  1325. package/src/shiki/langs/apache.js +1 -0
  1326. package/src/shiki/langs/apex.js +1 -0
  1327. package/src/shiki/langs/apl.js +1 -0
  1328. package/src/shiki/langs/applescript.js +1 -0
  1329. package/src/shiki/langs/ara.js +1 -0
  1330. package/src/shiki/langs/asciidoc.js +1 -0
  1331. package/src/shiki/langs/asm.js +1 -0
  1332. package/src/shiki/langs/astro.js +1 -0
  1333. package/src/shiki/langs/awk.js +1 -0
  1334. package/src/shiki/langs/ballerina.js +1 -0
  1335. package/src/shiki/langs/bat.js +1 -0
  1336. package/src/shiki/langs/beancount.js +1 -0
  1337. package/src/shiki/langs/berry.js +1 -0
  1338. package/src/shiki/langs/bibtex.js +1 -0
  1339. package/src/shiki/langs/bicep.js +1 -0
  1340. package/src/shiki/langs/blade.js +1 -0
  1341. package/src/shiki/langs/bsl.js +1 -0
  1342. package/src/shiki/langs/c.js +1 -0
  1343. package/src/shiki/langs/cadence.js +1 -0
  1344. package/src/shiki/langs/cairo.js +1 -0
  1345. package/src/shiki/langs/clarity.js +1 -0
  1346. package/src/shiki/langs/clojure.js +1 -0
  1347. package/src/shiki/langs/cmake.js +1 -0
  1348. package/src/shiki/langs/cobol.js +1 -0
  1349. package/src/shiki/langs/codeowners.js +1 -0
  1350. package/src/shiki/langs/codeql.js +1 -0
  1351. package/src/shiki/langs/coffee.js +1 -0
  1352. package/src/shiki/langs/common-lisp.js +1 -0
  1353. package/src/shiki/langs/coq.js +1 -0
  1354. package/src/shiki/langs/cpp-macro.js +1 -0
  1355. package/src/shiki/langs/cpp.js +1 -0
  1356. package/src/shiki/langs/crystal.js +1 -0
  1357. package/src/shiki/langs/csharp.js +1 -0
  1358. package/src/shiki/langs/css.js +1 -0
  1359. package/src/shiki/langs/csv.js +1 -0
  1360. package/src/shiki/langs/cue.js +1 -0
  1361. package/src/shiki/langs/cypher.js +1 -0
  1362. package/src/shiki/langs/d.js +1 -0
  1363. package/src/shiki/langs/dart.js +1 -0
  1364. package/src/shiki/langs/dax.js +1 -0
  1365. package/src/shiki/langs/desktop.js +1 -0
  1366. package/src/shiki/langs/diff.js +1 -0
  1367. package/src/shiki/langs/docker.js +1 -0
  1368. package/src/shiki/langs/dotenv.js +1 -0
  1369. package/src/shiki/langs/dream-maker.js +1 -0
  1370. package/src/shiki/langs/edge.js +1 -0
  1371. package/src/shiki/langs/elixir.js +1 -0
  1372. package/src/shiki/langs/elm.js +1 -0
  1373. package/src/shiki/langs/emacs-lisp.js +1 -0
  1374. package/src/shiki/langs/erb.js +1 -0
  1375. package/src/shiki/langs/erlang.js +1 -0
  1376. package/src/shiki/langs/es-tag-css.js +1 -0
  1377. package/src/shiki/langs/es-tag-glsl.js +1 -0
  1378. package/src/shiki/langs/es-tag-html.js +1 -0
  1379. package/src/shiki/langs/es-tag-sql.js +1 -0
  1380. package/src/shiki/langs/es-tag-xml.js +1 -0
  1381. package/src/shiki/langs/fennel.js +1 -0
  1382. package/src/shiki/langs/fish.js +1 -0
  1383. package/src/shiki/langs/fluent.js +1 -0
  1384. package/src/shiki/langs/fortran-fixed-form.js +1 -0
  1385. package/src/shiki/langs/fortran-free-form.js +1 -0
  1386. package/src/shiki/langs/fsharp.js +1 -0
  1387. package/src/shiki/langs/gdresource.js +1 -0
  1388. package/src/shiki/langs/gdscript.js +1 -0
  1389. package/src/shiki/langs/gdshader.js +1 -0
  1390. package/src/shiki/langs/genie.js +1 -0
  1391. package/src/shiki/langs/gherkin.js +1 -0
  1392. package/src/shiki/langs/git-commit.js +1 -0
  1393. package/src/shiki/langs/git-rebase.js +1 -0
  1394. package/src/shiki/langs/gleam.js +1 -0
  1395. package/src/shiki/langs/glimmer-js.js +1 -0
  1396. package/src/shiki/langs/glimmer-ts.js +1 -0
  1397. package/src/shiki/langs/glsl.js +1 -0
  1398. package/src/shiki/langs/gnuplot.js +1 -0
  1399. package/src/shiki/langs/go.js +1 -0
  1400. package/src/shiki/langs/graphql.js +1 -0
  1401. package/src/shiki/langs/groovy.js +1 -0
  1402. package/src/shiki/langs/hack.js +1 -0
  1403. package/src/shiki/langs/haml.js +1 -0
  1404. package/src/shiki/langs/handlebars.js +1 -0
  1405. package/src/shiki/langs/haskell.js +1 -0
  1406. package/src/shiki/langs/haxe.js +1 -0
  1407. package/src/shiki/langs/hcl.js +1 -0
  1408. package/src/shiki/langs/hjson.js +1 -0
  1409. package/src/shiki/langs/hlsl.js +1 -0
  1410. package/src/shiki/langs/html-derivative.js +1 -0
  1411. package/src/shiki/langs/html.js +1 -0
  1412. package/src/shiki/langs/http.js +1 -0
  1413. package/src/shiki/langs/hxml.js +1 -0
  1414. package/src/shiki/langs/hy.js +1 -0
  1415. package/src/shiki/langs/imba.js +1 -0
  1416. package/src/shiki/langs/ini.js +1 -0
  1417. package/src/shiki/langs/java.js +1 -0
  1418. package/src/shiki/langs/javascript.js +1 -0
  1419. package/src/shiki/langs/jinja-html.js +1 -0
  1420. package/src/shiki/langs/jinja.js +1 -0
  1421. package/src/shiki/langs/jison.js +1 -0
  1422. package/src/shiki/langs/json.js +1 -0
  1423. package/src/shiki/langs/json5.js +1 -0
  1424. package/src/shiki/langs/jsonc.js +1 -0
  1425. package/src/shiki/langs/jsonl.js +1 -0
  1426. package/src/shiki/langs/jsonnet.js +1 -0
  1427. package/src/shiki/langs/jssm.js +1 -0
  1428. package/src/shiki/langs/jsx.js +1 -0
  1429. package/src/shiki/langs/julia.js +1 -0
  1430. package/src/shiki/langs/kotlin.js +1 -0
  1431. package/src/shiki/langs/kusto.js +1 -0
  1432. package/src/shiki/langs/latex.js +1 -0
  1433. package/src/shiki/langs/lean.js +1 -0
  1434. package/src/shiki/langs/less.js +1 -0
  1435. package/src/shiki/langs/liquid.js +1 -0
  1436. package/src/shiki/langs/llvm.js +1 -0
  1437. package/src/shiki/langs/log.js +1 -0
  1438. package/src/shiki/langs/logo.js +1 -0
  1439. package/src/shiki/langs/lua.js +1 -0
  1440. package/src/shiki/langs/luau.js +1 -0
  1441. package/src/shiki/langs/make.js +1 -0
  1442. package/src/shiki/langs/markdown-vue.js +1 -0
  1443. package/src/shiki/langs/markdown.js +1 -0
  1444. package/src/shiki/langs/marko.js +1 -0
  1445. package/src/shiki/langs/matlab.js +1 -0
  1446. package/src/shiki/langs/mdc.js +1 -0
  1447. package/src/shiki/langs/mdx.js +1 -0
  1448. package/src/shiki/langs/mermaid.js +1 -0
  1449. package/src/shiki/langs/mipsasm.js +1 -0
  1450. package/src/shiki/langs/mojo.js +1 -0
  1451. package/src/shiki/langs/move.js +1 -0
  1452. package/src/shiki/langs/narrat.js +1 -0
  1453. package/src/shiki/langs/nextflow.js +1 -0
  1454. package/src/shiki/langs/nginx.js +1 -0
  1455. package/src/shiki/langs/nim.js +1 -0
  1456. package/src/shiki/langs/nix.js +1 -0
  1457. package/src/shiki/langs/nushell.js +1 -0
  1458. package/src/shiki/langs/objective-c.js +1 -0
  1459. package/src/shiki/langs/objective-cpp.js +1 -0
  1460. package/src/shiki/langs/ocaml.js +1 -0
  1461. package/src/shiki/langs/pascal.js +1 -0
  1462. package/src/shiki/langs/perl.js +1 -0
  1463. package/src/shiki/langs/php.js +1 -0
  1464. package/src/shiki/langs/plsql.js +1 -0
  1465. package/src/shiki/langs/po.js +1 -0
  1466. package/src/shiki/langs/polar.js +1 -0
  1467. package/src/shiki/langs/postcss.js +1 -0
  1468. package/src/shiki/langs/powerquery.js +1 -0
  1469. package/src/shiki/langs/powershell.js +1 -0
  1470. package/src/shiki/langs/prisma.js +1 -0
  1471. package/src/shiki/langs/prolog.js +1 -0
  1472. package/src/shiki/langs/proto.js +1 -0
  1473. package/src/shiki/langs/pug.js +1 -0
  1474. package/src/shiki/langs/puppet.js +1 -0
  1475. package/src/shiki/langs/purescript.js +1 -0
  1476. package/src/shiki/langs/python.js +1 -0
  1477. package/src/shiki/langs/qml.js +1 -0
  1478. package/src/shiki/langs/qmldir.js +1 -0
  1479. package/src/shiki/langs/qss.js +1 -0
  1480. package/src/shiki/langs/r.js +1 -0
  1481. package/src/shiki/langs/racket.js +1 -0
  1482. package/src/shiki/langs/raku.js +1 -0
  1483. package/src/shiki/langs/razor.js +1 -0
  1484. package/src/shiki/langs/reg.js +1 -0
  1485. package/src/shiki/langs/regexp.js +1 -0
  1486. package/src/shiki/langs/rel.js +1 -0
  1487. package/src/shiki/langs/riscv.js +1 -0
  1488. package/src/shiki/langs/rst.js +1 -0
  1489. package/src/shiki/langs/ruby.js +1 -0
  1490. package/src/shiki/langs/rust.js +1 -0
  1491. package/src/shiki/langs/sas.js +1 -0
  1492. package/src/shiki/langs/sass.js +1 -0
  1493. package/src/shiki/langs/scala.js +1 -0
  1494. package/src/shiki/langs/scheme.js +1 -0
  1495. package/src/shiki/langs/scss.js +1 -0
  1496. package/src/shiki/langs/sdbl.js +1 -0
  1497. package/src/shiki/langs/shaderlab.js +1 -0
  1498. package/src/shiki/langs/shellscript.js +1 -0
  1499. package/src/shiki/langs/shellsession.js +1 -0
  1500. package/src/shiki/langs/smalltalk.js +1 -0
  1501. package/src/shiki/langs/solidity.js +1 -0
  1502. package/src/shiki/langs/soy.js +1 -0
  1503. package/src/shiki/langs/sparql.js +1 -0
  1504. package/src/shiki/langs/splunk.js +1 -0
  1505. package/src/shiki/langs/sql.js +1 -0
  1506. package/src/shiki/langs/ssh-config.js +1 -0
  1507. package/src/shiki/langs/stata.js +1 -0
  1508. package/src/shiki/langs/stylus.js +1 -0
  1509. package/src/shiki/langs/svelte.js +1 -0
  1510. package/src/shiki/langs/swift.js +1 -0
  1511. package/src/shiki/langs/system-verilog.js +1 -0
  1512. package/src/shiki/langs/systemd.js +1 -0
  1513. package/src/shiki/langs/talonscript.js +1 -0
  1514. package/src/shiki/langs/tasl.js +1 -0
  1515. package/src/shiki/langs/tcl.js +1 -0
  1516. package/src/shiki/langs/templ.js +1 -0
  1517. package/src/shiki/langs/terraform.js +1 -0
  1518. package/src/shiki/langs/tex.js +1 -0
  1519. package/src/shiki/langs/toml.js +1 -0
  1520. package/src/shiki/langs/ts-tags.js +1 -0
  1521. package/src/shiki/langs/tsv.js +1 -0
  1522. package/src/shiki/langs/tsx.js +1 -0
  1523. package/src/shiki/langs/turtle.js +1 -0
  1524. package/src/shiki/langs/twig.js +1 -0
  1525. package/src/shiki/langs/typescript.js +1 -0
  1526. package/src/shiki/langs/typespec.js +1 -0
  1527. package/src/shiki/langs/typst.js +1 -0
  1528. package/src/shiki/langs/v.js +1 -0
  1529. package/src/shiki/langs/vala.js +1 -0
  1530. package/src/shiki/langs/vb.js +1 -0
  1531. package/src/shiki/langs/verilog.js +1 -0
  1532. package/src/shiki/langs/vhdl.js +1 -0
  1533. package/src/shiki/langs/viml.js +1 -0
  1534. package/src/shiki/langs/vue-directives.js +1 -0
  1535. package/src/shiki/langs/vue-html.js +1 -0
  1536. package/src/shiki/langs/vue-interpolations.js +1 -0
  1537. package/src/shiki/langs/vue-sfc-style-variable-injection.js +1 -0
  1538. package/src/shiki/langs/vue.js +1 -0
  1539. package/src/shiki/langs/vyper.js +1 -0
  1540. package/src/shiki/langs/wasm.js +1 -0
  1541. package/src/shiki/langs/wenyan.js +1 -0
  1542. package/src/shiki/langs/wgsl.js +1 -0
  1543. package/src/shiki/langs/wikitext.js +1 -0
  1544. package/src/shiki/langs/wit.js +1 -0
  1545. package/src/shiki/langs/wolfram.js +1 -0
  1546. package/src/shiki/langs/xml.js +1 -0
  1547. package/src/shiki/langs/xsl.js +1 -0
  1548. package/src/shiki/langs/yaml.js +1 -0
  1549. package/src/shiki/langs/zenscript.js +1 -0
  1550. package/src/shiki/langs/zig.js +1 -0
  1551. package/src/shiki/themes/andromeeda.js +1 -0
  1552. package/src/shiki/themes/aurora-x.js +1 -0
  1553. package/src/shiki/themes/ayu-dark.js +1 -0
  1554. package/src/shiki/themes/catppuccin-frappe.js +1 -0
  1555. package/src/shiki/themes/catppuccin-latte.js +1 -0
  1556. package/src/shiki/themes/catppuccin-macchiato.js +1 -0
  1557. package/src/shiki/themes/catppuccin-mocha.js +1 -0
  1558. package/src/shiki/themes/dark-plus.js +1 -0
  1559. package/src/shiki/themes/dracula-soft.js +1 -0
  1560. package/src/shiki/themes/dracula.js +1 -0
  1561. package/src/shiki/themes/everforest-dark.js +1 -0
  1562. package/src/shiki/themes/everforest-light.js +1 -0
  1563. package/src/shiki/themes/github-dark-default.js +1 -0
  1564. package/src/shiki/themes/github-dark-dimmed.js +1 -0
  1565. package/src/shiki/themes/github-dark-high-contrast.js +1 -0
  1566. package/src/shiki/themes/github-dark.js +1 -0
  1567. package/src/shiki/themes/github-light-default.js +1 -0
  1568. package/src/shiki/themes/github-light-high-contrast.js +1 -0
  1569. package/src/shiki/themes/github-light.js +1 -0
  1570. package/src/shiki/themes/gruvbox-dark-hard.js +1 -0
  1571. package/src/shiki/themes/gruvbox-dark-medium.js +1 -0
  1572. package/src/shiki/themes/gruvbox-dark-soft.js +1 -0
  1573. package/src/shiki/themes/gruvbox-light-hard.js +1 -0
  1574. package/src/shiki/themes/gruvbox-light-medium.js +1 -0
  1575. package/src/shiki/themes/gruvbox-light-soft.js +1 -0
  1576. package/src/shiki/themes/houston.js +1 -0
  1577. package/src/shiki/themes/kanagawa-dragon.js +1 -0
  1578. package/src/shiki/themes/kanagawa-lotus.js +1 -0
  1579. package/src/shiki/themes/kanagawa-wave.js +1 -0
  1580. package/src/shiki/themes/laserwave.js +1 -0
  1581. package/src/shiki/themes/light-plus.js +1 -0
  1582. package/src/shiki/themes/material-theme-darker.js +1 -0
  1583. package/src/shiki/themes/material-theme-lighter.js +1 -0
  1584. package/src/shiki/themes/material-theme-ocean.js +1 -0
  1585. package/src/shiki/themes/material-theme-palenight.js +1 -0
  1586. package/src/shiki/themes/material-theme.js +1 -0
  1587. package/src/shiki/themes/min-dark.js +1 -0
  1588. package/src/shiki/themes/min-light.js +1 -0
  1589. package/src/shiki/themes/monokai.js +1 -0
  1590. package/src/shiki/themes/night-owl.js +1 -0
  1591. package/src/shiki/themes/nord.js +1 -0
  1592. package/src/shiki/themes/one-dark-pro.js +1 -0
  1593. package/src/shiki/themes/one-light.js +1 -0
  1594. package/src/shiki/themes/plastic.js +1 -0
  1595. package/src/shiki/themes/poimandres.js +1 -0
  1596. package/src/shiki/themes/red.js +1 -0
  1597. package/src/shiki/themes/rose-pine-dawn.js +1 -0
  1598. package/src/shiki/themes/rose-pine-moon.js +1 -0
  1599. package/src/shiki/themes/rose-pine.js +1 -0
  1600. package/src/shiki/themes/slack-dark.js +1 -0
  1601. package/src/shiki/themes/slack-ochin.js +1 -0
  1602. package/src/shiki/themes/snazzy-light.js +1 -0
  1603. package/src/shiki/themes/solarized-dark.js +1 -0
  1604. package/src/shiki/themes/solarized-light.js +1 -0
  1605. package/src/shiki/themes/synthwave-84.js +1 -0
  1606. package/src/shiki/themes/tokyo-night.js +1 -0
  1607. package/src/shiki/themes/vesper.js +1 -0
  1608. package/src/shiki/themes/vitesse-black.js +1 -0
  1609. package/src/shiki/themes/vitesse-dark.js +1 -0
  1610. package/src/shiki/themes/vitesse-light.js +1 -0
  1611. package/LICENSE.md +0 -9
  1612. package/client.d.ts +0 -1
  1613. package/dist/app/tailwind.d.ts +0 -3
  1614. package/dist/app/tailwind.js +0 -65
  1615. package/dist/app/tailwind.js.map +0 -1
  1616. package/dist/config/validators/InputSidebarSchema.d.ts +0 -201
  1617. package/dist/config/validators/InputSidebarSchema.js +0 -52
  1618. package/dist/config/validators/InputSidebarSchema.js.map +0 -1
  1619. package/dist/config/validators/SidebarSchema.d.ts +0 -46
  1620. package/dist/config/validators/SidebarSchema.js +0 -118
  1621. package/dist/config/validators/SidebarSchema.js.map +0 -1
  1622. package/dist/lib/components/DevPortal.d.ts +0 -7
  1623. package/dist/lib/components/DevPortal.js +0 -54
  1624. package/dist/lib/components/DevPortal.js.map +0 -1
  1625. package/dist/lib/components/SlotletProvider.d.ts +0 -17
  1626. package/dist/lib/components/SlotletProvider.js +0 -18
  1627. package/dist/lib/components/SlotletProvider.js.map +0 -1
  1628. package/dist/lib/components/SyntaxHighlight.d.ts +0 -11
  1629. package/dist/lib/components/SyntaxHighlight.js +0 -53
  1630. package/dist/lib/components/SyntaxHighlight.js.map +0 -1
  1631. package/dist/lib/components/context/PluginSystem.js +0 -2
  1632. package/dist/lib/components/context/PluginSystem.js.map +0 -1
  1633. package/dist/lib/components/context/ThemeContext.d.ts +0 -2
  1634. package/dist/lib/components/context/ThemeContext.js +0 -7
  1635. package/dist/lib/components/context/ThemeContext.js.map +0 -1
  1636. package/dist/lib/components/context/ThemeProvider.d.ts +0 -4
  1637. package/dist/lib/components/context/ThemeProvider.js +0 -23
  1638. package/dist/lib/components/context/ThemeProvider.js.map +0 -1
  1639. package/dist/lib/components/navigation/Sidebar.d.ts +0 -1
  1640. package/dist/lib/components/navigation/Sidebar.js +0 -14
  1641. package/dist/lib/components/navigation/Sidebar.js.map +0 -1
  1642. package/dist/lib/components/navigation/SidebarBadge.d.ts +0 -23
  1643. package/dist/lib/components/navigation/SidebarBadge.js +0 -24
  1644. package/dist/lib/components/navigation/SidebarBadge.js.map +0 -1
  1645. package/dist/lib/components/navigation/SidebarCategory.d.ts +0 -5
  1646. package/dist/lib/components/navigation/SidebarCategory.js +0 -50
  1647. package/dist/lib/components/navigation/SidebarCategory.js.map +0 -1
  1648. package/dist/lib/components/navigation/SidebarItem.d.ts +0 -12
  1649. package/dist/lib/components/navigation/SidebarItem.js +0 -48
  1650. package/dist/lib/components/navigation/SidebarItem.js.map +0 -1
  1651. package/dist/lib/components/navigation/SidebarWrapper.d.ts +0 -6
  1652. package/dist/lib/components/navigation/SidebarWrapper.js +0 -6
  1653. package/dist/lib/components/navigation/SidebarWrapper.js.map +0 -1
  1654. package/dist/lib/core/DevPortalContext.d.ts +0 -75
  1655. package/dist/lib/core/DevPortalContext.js +0 -49
  1656. package/dist/lib/core/DevPortalContext.js.map +0 -1
  1657. package/dist/lib/plugins/custom-pages/CustomPage.d.ts +0 -2
  1658. package/dist/lib/plugins/custom-pages/CustomPage.js +0 -11
  1659. package/dist/lib/plugins/custom-pages/CustomPage.js.map +0 -1
  1660. package/dist/lib/plugins/markdown/Toc.js +0 -48
  1661. package/dist/lib/plugins/markdown/Toc.js.map +0 -1
  1662. package/dist/lib/plugins/markdown/resolver.d.ts +0 -38
  1663. package/dist/lib/plugins/markdown/resolver.js +0 -75
  1664. package/dist/lib/plugins/markdown/resolver.js.map +0 -1
  1665. package/dist/lib/plugins/openapi/Route.d.ts +0 -6
  1666. package/dist/lib/plugins/openapi/Route.js +0 -8
  1667. package/dist/lib/plugins/openapi/Route.js.map +0 -1
  1668. package/dist/lib/plugins/openapi/client/createMemoryClient.d.ts +0 -12
  1669. package/dist/lib/plugins/openapi/client/createMemoryClient.js +0 -46
  1670. package/dist/lib/plugins/openapi/client/createMemoryClient.js.map +0 -1
  1671. package/dist/lib/plugins/openapi/client/createWorkerClient.d.ts +0 -10
  1672. package/dist/lib/plugins/openapi/client/createWorkerClient.js +0 -61
  1673. package/dist/lib/plugins/openapi/client/createWorkerClient.js.map +0 -1
  1674. package/dist/lib/plugins/openapi/client/interfaces.d.ts +0 -4
  1675. package/dist/lib/plugins/openapi/client/interfaces.js +0 -2
  1676. package/dist/lib/plugins/openapi/client/interfaces.js.map +0 -1
  1677. package/dist/lib/plugins/openapi/client/worker.js +0 -20
  1678. package/dist/lib/plugins/openapi/client/worker.js.map +0 -1
  1679. package/dist/lib/plugins/openapi/playground/ResponseTab.d.ts +0 -4
  1680. package/dist/lib/plugins/openapi/playground/ResponseTab.js +0 -42
  1681. package/dist/lib/plugins/openapi/playground/ResponseTab.js.map +0 -1
  1682. package/dist/lib/plugins/openapi/playground/UrlDisplay.d.ts +0 -4
  1683. package/dist/lib/plugins/openapi/playground/UrlDisplay.js +0 -22
  1684. package/dist/lib/plugins/openapi/playground/UrlDisplay.js.map +0 -1
  1685. package/dist/lib/plugins/openapi/schema/SchemaComponents.d.ts +0 -13
  1686. package/dist/lib/plugins/openapi/schema/SchemaComponents.js +0 -28
  1687. package/dist/lib/plugins/openapi/schema/SchemaComponents.js.map +0 -1
  1688. package/dist/lib/plugins/openapi-worker.d.ts +0 -1
  1689. package/dist/lib/plugins/openapi-worker.js +0 -2
  1690. package/dist/lib/plugins/openapi-worker.js.map +0 -1
  1691. package/dist/lib/plugins/search-inkeep/InkeepCustomTrigger.d.ts +0 -2
  1692. package/dist/lib/plugins/search-inkeep/InkeepCustomTrigger.js +0 -3
  1693. package/dist/lib/plugins/search-inkeep/InkeepCustomTrigger.js.map +0 -1
  1694. package/dist/lib/themeToggle.d.ts +0 -1
  1695. package/dist/lib/themeToggle.js +0 -7
  1696. package/dist/lib/themeToggle.js.map +0 -1
  1697. package/dist/lib/util/createWaitForNotify.d.ts +0 -1
  1698. package/dist/lib/util/createWaitForNotify.js +0 -15
  1699. package/dist/lib/util/createWaitForNotify.js.map +0 -1
  1700. package/dist/vite/plugin-custom-css.d.ts +0 -6
  1701. package/dist/vite/plugin-custom-css.js +0 -55
  1702. package/dist/vite/plugin-custom-css.js.map +0 -1
  1703. package/dist/vite/plugin-docs.test.js +0 -30
  1704. package/dist/vite/plugin-docs.test.js.map +0 -1
  1705. package/dist/vite/plugin-html-transform.d.ts +0 -2
  1706. package/dist/vite/plugin-html-transform.js +0 -15
  1707. package/dist/vite/plugin-html-transform.js.map +0 -1
  1708. package/dist/vite/plugin-sidebar.d.ts +0 -3
  1709. package/dist/vite/plugin-sidebar.js +0 -47
  1710. package/dist/vite/plugin-sidebar.js.map +0 -1
  1711. package/dist/vite/prerender.d.ts +0 -21
  1712. package/dist/vite/prerender.js +0 -88
  1713. package/dist/vite/prerender.js.map +0 -1
  1714. package/lib/AnchorLink-BbB2q-jx.js +0 -705
  1715. package/lib/AnchorLink-BbB2q-jx.js.map +0 -1
  1716. package/lib/AuthenticationPlugin-C9BHGXlE.js +0 -55
  1717. package/lib/AuthenticationPlugin-C9BHGXlE.js.map +0 -1
  1718. package/lib/CategoryHeading-Bb9dqxD3.js +0 -10
  1719. package/lib/CategoryHeading-Bb9dqxD3.js.map +0 -1
  1720. package/lib/ClientOnly-CVN6leDu.js +0 -11
  1721. package/lib/ClientOnly-CVN6leDu.js.map +0 -1
  1722. package/lib/DeveloperHint-DHdLXGHA.js +0 -16
  1723. package/lib/DeveloperHint-DHdLXGHA.js.map +0 -1
  1724. package/lib/Dialog-k70Qfukb.js +0 -67
  1725. package/lib/Dialog-k70Qfukb.js.map +0 -1
  1726. package/lib/InkeepCustomTrigger-CE5-K5ex.js +0 -6
  1727. package/lib/InkeepCustomTrigger-CE5-K5ex.js.map +0 -1
  1728. package/lib/Markdown-BDcCAWwm.js +0 -18059
  1729. package/lib/Markdown-BDcCAWwm.js.map +0 -1
  1730. package/lib/MdxPage-DKMH_t0f.js +0 -174
  1731. package/lib/MdxPage-DKMH_t0f.js.map +0 -1
  1732. package/lib/OperationList-Tj7ubW_t.js +0 -604
  1733. package/lib/OperationList-Tj7ubW_t.js.map +0 -1
  1734. package/lib/Route-C3DGB6OS.js +0 -13
  1735. package/lib/Route-C3DGB6OS.js.map +0 -1
  1736. package/lib/Select-Bagt3Bme.js +0 -223
  1737. package/lib/Select-Bagt3Bme.js.map +0 -1
  1738. package/lib/SlotletProvider-Da7eFgd2.js +0 -241
  1739. package/lib/SlotletProvider-Da7eFgd2.js.map +0 -1
  1740. package/lib/Spinner-C6zroowC.js +0 -40
  1741. package/lib/Spinner-C6zroowC.js.map +0 -1
  1742. package/lib/StaggeredRender-DDHSzQKE.js +0 -17
  1743. package/lib/StaggeredRender-DDHSzQKE.js.map +0 -1
  1744. package/lib/ZudokuContext-BKXGJTmu.js +0 -1222
  1745. package/lib/ZudokuContext-BKXGJTmu.js.map +0 -1
  1746. package/lib/__vite-browser-external-BYRIRx8p.js +0 -9
  1747. package/lib/__vite-browser-external-BYRIRx8p.js.map +0 -1
  1748. package/lib/_commonjsHelpers-BkfeUUK-.js +0 -29
  1749. package/lib/_commonjsHelpers-BkfeUUK-.js.map +0 -1
  1750. package/lib/assets/index-B_Jk_Yzp.js +0 -4820
  1751. package/lib/assets/index-B_Jk_Yzp.js.map +0 -1
  1752. package/lib/assets/worker-Bf8vjASY.js +0 -18197
  1753. package/lib/assets/worker-Bf8vjASY.js.map +0 -1
  1754. package/lib/cn-BmFQLtkS.js +0 -2279
  1755. package/lib/cn-BmFQLtkS.js.map +0 -1
  1756. package/lib/hook-sn0zMTkE.js +0 -229
  1757. package/lib/hook-sn0zMTkE.js.map +0 -1
  1758. package/lib/index-AjWCJNGC.js +0 -5690
  1759. package/lib/index-AjWCJNGC.js.map +0 -1
  1760. package/lib/index-Bn6Lc9tq.js +0 -9
  1761. package/lib/index-Bn6Lc9tq.js.map +0 -1
  1762. package/lib/index-BuAyrJe3.js +0 -46
  1763. package/lib/index-BuAyrJe3.js.map +0 -1
  1764. package/lib/index-CRo94sKK.js +0 -1783
  1765. package/lib/index-CRo94sKK.js.map +0 -1
  1766. package/lib/index-CkwDvuPt.js +0 -4820
  1767. package/lib/index-CkwDvuPt.js.map +0 -1
  1768. package/lib/index-LNp6rxyU.js +0 -2094
  1769. package/lib/index-LNp6rxyU.js.map +0 -1
  1770. package/lib/index.esm-C5mr_sKO.js +0 -1193
  1771. package/lib/index.esm-C5mr_sKO.js.map +0 -1
  1772. package/lib/invariant-Caa8-XvF.js +0 -26
  1773. package/lib/invariant-Caa8-XvF.js.map +0 -1
  1774. package/lib/jsx-runtime-B6kdoens.js +0 -635
  1775. package/lib/jsx-runtime-B6kdoens.js.map +0 -1
  1776. package/lib/prism-bash.min-DadFsM4Z.js +0 -7
  1777. package/lib/prism-bash.min-DadFsM4Z.js.map +0 -1
  1778. package/lib/prism-csharp.min-Yizuc34Y.js +0 -35
  1779. package/lib/prism-csharp.min-Yizuc34Y.js.map +0 -1
  1780. package/lib/prism-java.min-d5iT_mOd.js +0 -7
  1781. package/lib/prism-java.min-d5iT_mOd.js.map +0 -1
  1782. package/lib/prism-javascript.min-CEqHqgbm.js +0 -9
  1783. package/lib/prism-javascript.min-CEqHqgbm.js.map +0 -1
  1784. package/lib/prism-json.min-B1GJqK1k.js +0 -2
  1785. package/lib/prism-json.min-B1GJqK1k.js.map +0 -1
  1786. package/lib/prism-markdown.min-F3U-vPBi.js +0 -61
  1787. package/lib/prism-markdown.min-F3U-vPBi.js.map +0 -1
  1788. package/lib/prism-markup-BNGj0Tvm.js +0 -174
  1789. package/lib/prism-markup-BNGj0Tvm.js.map +0 -1
  1790. package/lib/prism-markup-templating-DZrrEs0A.js +0 -62
  1791. package/lib/prism-markup-templating-DZrrEs0A.js.map +0 -1
  1792. package/lib/prism-objectivec.min-BXSWqpJJ.js +0 -2
  1793. package/lib/prism-objectivec.min-BXSWqpJJ.js.map +0 -1
  1794. package/lib/prism-php.min-o7FpoMP_.js +0 -11
  1795. package/lib/prism-php.min-o7FpoMP_.js.map +0 -1
  1796. package/lib/prism-ruby.min-C7LwcKyz.js +0 -10
  1797. package/lib/prism-ruby.min-C7LwcKyz.js.map +0 -1
  1798. package/lib/prism-typescript.min-oSVeWCAd.js +0 -6
  1799. package/lib/prism-typescript.min-oSVeWCAd.js.map +0 -1
  1800. package/lib/router-BsfSoK2j.js +0 -3024
  1801. package/lib/router-BsfSoK2j.js.map +0 -1
  1802. package/lib/state-CsuHT8ZO.js +0 -183
  1803. package/lib/state-CsuHT8ZO.js.map +0 -1
  1804. package/lib/urql-core-KJnLL26g.js +0 -1455
  1805. package/lib/urql-core-KJnLL26g.js.map +0 -1
  1806. package/lib/useExposedProps-ChOIUaS4.js +0 -9
  1807. package/lib/useExposedProps-ChOIUaS4.js.map +0 -1
  1808. package/lib/zudoku.openapi-worker.js +0 -16341
  1809. package/lib/zudoku.openapi-worker.js.map +0 -1
  1810. package/src/app/tailwind.ts +0 -68
  1811. package/src/lib/components/DevPortal.tsx +0 -111
  1812. package/src/lib/components/SlotletProvider.tsx +0 -55
  1813. package/src/lib/components/SyntaxHighlight.tsx +0 -126
  1814. package/src/lib/components/context/PluginSystem.ts +0 -0
  1815. package/src/lib/components/context/ThemeContext.tsx +0 -8
  1816. package/src/lib/components/context/ThemeProvider.tsx +0 -27
  1817. package/src/lib/components/navigation/Sidebar.tsx +0 -39
  1818. package/src/lib/components/navigation/SidebarBadge.tsx +0 -43
  1819. package/src/lib/components/navigation/SidebarCategory.tsx +0 -137
  1820. package/src/lib/components/navigation/SidebarItem.tsx +0 -127
  1821. package/src/lib/components/navigation/SidebarWrapper.tsx +0 -26
  1822. package/src/lib/core/DevPortalContext.ts +0 -136
  1823. package/src/lib/plugins/custom-pages/CustomPage.tsx +0 -18
  1824. package/src/lib/plugins/markdown/Toc.tsx +0 -135
  1825. package/src/lib/plugins/markdown/resolver.ts +0 -92
  1826. package/src/lib/plugins/openapi/Route.tsx +0 -20
  1827. package/src/lib/plugins/openapi/client/createMemoryClient.ts +0 -51
  1828. package/src/lib/plugins/openapi/client/createWorkerClient.ts +0 -75
  1829. package/src/lib/plugins/openapi/client/interfaces.ts +0 -5
  1830. package/src/lib/plugins/openapi/client/worker.ts +0 -30
  1831. package/src/lib/plugins/openapi/playground/ResponseTab.tsx +0 -76
  1832. package/src/lib/plugins/openapi/playground/UrlDisplay.tsx +0 -32
  1833. package/src/lib/plugins/openapi/schema/SchemaComponents.tsx +0 -126
  1834. package/src/lib/plugins/openapi-worker.ts +0 -1
  1835. package/src/lib/plugins/search-inkeep/InkeepCustomTrigger.tsx +0 -3
  1836. package/src/lib/themeToggle.ts +0 -7
  1837. package/src/lib/util/createWaitForNotify.ts +0 -18
  1838. /package/dist/{lib/components/context/PluginSystem.d.ts → config/validators/InputNavigationSchema.test-d.d.ts} +0 -0
  1839. /package/dist/{lib/plugins/openapi/client/worker.d.ts → config/validators/validate.test.d.ts} +0 -0
  1840. /package/dist/{vite/plugin-docs.test.d.ts → lib/auth/issuer.test.d.ts} +0 -0
  1841. /package/dist/lib/{plugins/markdown → components/navigation}/Toc.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"zudoku.components.js","sources":["../src/lib/errors/ServerError.tsx","../../../node_modules/.pnpm/react-router-dom@6.27.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/react-router-dom/server.js","../src/lib/components/Bootstrap.tsx","../../../node_modules/.pnpm/@tanstack+query-core@5.59.13/node_modules/@tanstack/query-core/build/modern/queryCache.js","../../../node_modules/.pnpm/@tanstack+query-core@5.59.13/node_modules/@tanstack/query-core/build/modern/mutationCache.js","../../../node_modules/.pnpm/@tanstack+query-core@5.59.13/node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","../../../node_modules/.pnpm/@tanstack+query-core@5.59.13/node_modules/@tanstack/query-core/build/modern/queryClient.js","../../../node_modules/.pnpm/react-error-boundary@4.1.2_react@18.3.1/node_modules/react-error-boundary/dist/react-error-boundary.esm.js","../src/lib/core/plugins.ts","../src/lib/core/DevPortalContext.ts","../src/lib/errors/TopLevelError.tsx","../src/lib/util/requestIdleCallbackPolyfill.ts","../src/lib/components/Banner.tsx","../src/lib/components/Search.tsx","../src/lib/components/TopNavigation.tsx","../src/lib/components/MobileTopNavigation.tsx","../src/lib/components/Header.tsx","../src/lib/components/context/ComponentsContext.tsx","../src/lib/components/context/ThemeProvider.tsx","../src/lib/components/context/ZudokuProvider.tsx","../src/lib/components/DevPortal.tsx","../src/lib/components/navigation/SidebarCategory.tsx","../src/lib/components/navigation/SidebarItem.tsx","../src/lib/util/useScrollToAnchor.ts","../src/lib/util/useScrollToTop.ts","../src/lib/components/navigation/SidebarWrapper.tsx","../src/lib/components/navigation/Sidebar.tsx","../src/lib/components/Layout.tsx","../src/lib/components/index.ts"],"sourcesContent":["import { ErrorAlert } from \"./ErrorAlert.js\";\n\nexport function ServerError({ error }: { error: unknown }) {\n return <ErrorAlert error={error} />;\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar React = require('react');\nvar router = require('@remix-run/router');\nvar reactRouter = require('react-router');\nvar reactRouterDom = require('react-router-dom');\n\nfunction _interopNamespace(e) {\n if (e && e.__esModule) return e;\n var n = Object.create(null);\n if (e) {\n Object.keys(e).forEach(function (k) {\n if (k !== 'default') {\n var d = Object.getOwnPropertyDescriptor(e, k);\n Object.defineProperty(n, k, d.get ? d : {\n enumerable: true,\n get: function () { return e[k]; }\n });\n }\n });\n }\n n[\"default\"] = e;\n return Object.freeze(n);\n}\n\nvar React__namespace = /*#__PURE__*/_interopNamespace(React);\n\n/**\n * A `<Router>` that may not navigate to any other location. This is useful\n * on the server where there is no stateful UI.\n */\nfunction StaticRouter({\n basename,\n children,\n location: locationProp = \"/\",\n future\n}) {\n if (typeof locationProp === \"string\") {\n locationProp = reactRouterDom.parsePath(locationProp);\n }\n let action = router.Action.Pop;\n let location = {\n pathname: locationProp.pathname || \"/\",\n search: locationProp.search || \"\",\n hash: locationProp.hash || \"\",\n state: locationProp.state != null ? locationProp.state : null,\n key: locationProp.key || \"default\"\n };\n let staticNavigator = getStatelessNavigator();\n return /*#__PURE__*/React__namespace.createElement(reactRouterDom.Router, {\n basename: basename,\n children: children,\n location: location,\n navigationType: action,\n navigator: staticNavigator,\n future: future,\n static: true\n });\n}\n/**\n * A Data Router that may not navigate to any other location. This is useful\n * on the server where there is no stateful UI.\n */\nfunction StaticRouterProvider({\n context,\n router: router$1,\n hydrate = true,\n nonce\n}) {\n !(router$1 && context) ? process.env.NODE_ENV !== \"production\" ? router.UNSAFE_invariant(false, \"You must provide `router` and `context` to <StaticRouterProvider>\") : router.UNSAFE_invariant(false) : void 0;\n let dataRouterContext = {\n router: router$1,\n navigator: getStatelessNavigator(),\n static: true,\n staticContext: context,\n basename: context.basename || \"/\"\n };\n let fetchersContext = new Map();\n let hydrateScript = \"\";\n if (hydrate !== false) {\n let data = {\n loaderData: context.loaderData,\n actionData: context.actionData,\n errors: serializeErrors(context.errors)\n };\n // Use JSON.parse here instead of embedding a raw JS object here to speed\n // up parsing on the client. Dual-stringify is needed to ensure all quotes\n // are properly escaped in the resulting string. See:\n // https://v8.dev/blog/cost-of-javascript-2019#json\n let json = htmlEscape(JSON.stringify(JSON.stringify(data)));\n hydrateScript = `window.__staticRouterHydrationData = JSON.parse(${json});`;\n }\n let {\n state\n } = dataRouterContext.router;\n return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(reactRouterDom.UNSAFE_DataRouterContext.Provider, {\n value: dataRouterContext\n }, /*#__PURE__*/React__namespace.createElement(reactRouterDom.UNSAFE_DataRouterStateContext.Provider, {\n value: state\n }, /*#__PURE__*/React__namespace.createElement(reactRouterDom.UNSAFE_FetchersContext.Provider, {\n value: fetchersContext\n }, /*#__PURE__*/React__namespace.createElement(reactRouterDom.UNSAFE_ViewTransitionContext.Provider, {\n value: {\n isTransitioning: false\n }\n }, /*#__PURE__*/React__namespace.createElement(reactRouterDom.Router, {\n basename: dataRouterContext.basename,\n location: state.location,\n navigationType: state.historyAction,\n navigator: dataRouterContext.navigator,\n static: dataRouterContext.static,\n future: {\n v7_relativeSplatPath: router$1.future.v7_relativeSplatPath\n }\n }, /*#__PURE__*/React__namespace.createElement(DataRoutes, {\n routes: router$1.routes,\n future: router$1.future,\n state: state\n })))))), hydrateScript ? /*#__PURE__*/React__namespace.createElement(\"script\", {\n suppressHydrationWarning: true,\n nonce: nonce,\n dangerouslySetInnerHTML: {\n __html: hydrateScript\n }\n }) : null);\n}\nfunction DataRoutes({\n routes,\n future,\n state\n}) {\n return reactRouter.UNSAFE_useRoutesImpl(routes, undefined, state, future);\n}\nfunction serializeErrors(errors) {\n if (!errors) return null;\n let entries = Object.entries(errors);\n let serialized = {};\n for (let [key, val] of entries) {\n // Hey you! If you change this, please change the corresponding logic in\n // deserializeErrors in react-router-dom/index.tsx :)\n if (router.isRouteErrorResponse(val)) {\n serialized[key] = {\n ...val,\n __type: \"RouteErrorResponse\"\n };\n } else if (val instanceof Error) {\n // Do not serialize stack traces from SSR for security reasons\n serialized[key] = {\n message: val.message,\n __type: \"Error\",\n // If this is a subclass (i.e., ReferenceError), send up the type so we\n // can re-create the same type during hydration.\n ...(val.name !== \"Error\" ? {\n __subType: val.name\n } : {})\n };\n } else {\n serialized[key] = val;\n }\n }\n return serialized;\n}\nfunction getStatelessNavigator() {\n return {\n createHref,\n encodeLocation,\n push(to) {\n throw new Error(`You cannot use navigator.push() on the server because it is a stateless ` + `environment. This error was probably triggered when you did a ` + `\\`navigate(${JSON.stringify(to)})\\` somewhere in your app.`);\n },\n replace(to) {\n throw new Error(`You cannot use navigator.replace() on the server because it is a stateless ` + `environment. This error was probably triggered when you did a ` + `\\`navigate(${JSON.stringify(to)}, { replace: true })\\` somewhere ` + `in your app.`);\n },\n go(delta) {\n throw new Error(`You cannot use navigator.go() on the server because it is a stateless ` + `environment. This error was probably triggered when you did a ` + `\\`navigate(${delta})\\` somewhere in your app.`);\n },\n back() {\n throw new Error(`You cannot use navigator.back() on the server because it is a stateless ` + `environment.`);\n },\n forward() {\n throw new Error(`You cannot use navigator.forward() on the server because it is a stateless ` + `environment.`);\n }\n };\n}\nfunction createStaticHandler(routes, opts) {\n return router.createStaticHandler(routes, {\n ...opts,\n mapRouteProperties: reactRouter.UNSAFE_mapRouteProperties\n });\n}\nfunction createStaticRouter(routes, context, opts = {}) {\n let manifest = {};\n let dataRoutes = router.UNSAFE_convertRoutesToDataRoutes(routes, reactRouter.UNSAFE_mapRouteProperties, undefined, manifest);\n // Because our context matches may be from a framework-agnostic set of\n // routes passed to createStaticHandler(), we update them here with our\n // newly created/enhanced data routes\n let matches = context.matches.map(match => {\n let route = manifest[match.route.id] || match.route;\n return {\n ...match,\n route\n };\n });\n let msg = method => `You cannot use router.${method}() on the server because it is a stateless environment`;\n return {\n get basename() {\n return context.basename;\n },\n get future() {\n return {\n v7_fetcherPersist: false,\n v7_normalizeFormMethod: false,\n v7_partialHydration: opts.future?.v7_partialHydration === true,\n v7_prependBasename: false,\n v7_relativeSplatPath: opts.future?.v7_relativeSplatPath === true,\n v7_skipActionErrorRevalidation: false\n };\n },\n get state() {\n return {\n historyAction: router.Action.Pop,\n location: context.location,\n matches,\n loaderData: context.loaderData,\n actionData: context.actionData,\n errors: context.errors,\n initialized: true,\n navigation: router.IDLE_NAVIGATION,\n restoreScrollPosition: null,\n preventScrollReset: false,\n revalidation: \"idle\",\n fetchers: new Map(),\n blockers: new Map()\n };\n },\n get routes() {\n return dataRoutes;\n },\n get window() {\n return undefined;\n },\n initialize() {\n throw msg(\"initialize\");\n },\n subscribe() {\n throw msg(\"subscribe\");\n },\n enableScrollRestoration() {\n throw msg(\"enableScrollRestoration\");\n },\n navigate() {\n throw msg(\"navigate\");\n },\n fetch() {\n throw msg(\"fetch\");\n },\n revalidate() {\n throw msg(\"revalidate\");\n },\n createHref,\n encodeLocation,\n getFetcher() {\n return router.IDLE_FETCHER;\n },\n deleteFetcher() {\n throw msg(\"deleteFetcher\");\n },\n dispose() {\n throw msg(\"dispose\");\n },\n getBlocker() {\n return router.IDLE_BLOCKER;\n },\n deleteBlocker() {\n throw msg(\"deleteBlocker\");\n },\n patchRoutes() {\n throw msg(\"patchRoutes\");\n },\n _internalFetchControllers: new Map(),\n _internalActiveDeferreds: new Map(),\n _internalSetRoutes() {\n throw msg(\"_internalSetRoutes\");\n }\n };\n}\nfunction createHref(to) {\n return typeof to === \"string\" ? to : reactRouterDom.createPath(to);\n}\nfunction encodeLocation(to) {\n let href = typeof to === \"string\" ? to : reactRouterDom.createPath(to);\n // Treating this as a full URL will strip any trailing spaces so we need to\n // pre-encode them since they might be part of a matching splat param from\n // an ancestor route\n href = href.replace(/ $/, \"%20\");\n let encoded = ABSOLUTE_URL_REGEX.test(href) ? new URL(href) : new URL(href, \"http://localhost\");\n return {\n pathname: encoded.pathname,\n search: encoded.search,\n hash: encoded.hash\n };\n}\nconst ABSOLUTE_URL_REGEX = /^(?:[a-z][a-z0-9+.-]*:|\\/\\/)/i;\n// This utility is based on https://github.com/zertosh/htmlescape\n// License: https://github.com/zertosh/htmlescape/blob/0527ca7156a524d256101bb310a9f970f63078ad/LICENSE\nconst ESCAPE_LOOKUP = {\n \"&\": \"\\\\u0026\",\n \">\": \"\\\\u003e\",\n \"<\": \"\\\\u003c\",\n \"\\u2028\": \"\\\\u2028\",\n \"\\u2029\": \"\\\\u2029\"\n};\nconst ESCAPE_REGEX = /[&><\\u2028\\u2029]/g;\nfunction htmlEscape(str) {\n return str.replace(ESCAPE_REGEX, match => ESCAPE_LOOKUP[match]);\n}\n\nexports.StaticRouter = StaticRouter;\nexports.StaticRouterProvider = StaticRouterProvider;\nexports.createStaticHandler = createStaticHandler;\nexports.createStaticRouter = createStaticRouter;\n","import { type HelmetData, HelmetProvider } from \"@zudoku/react-helmet-async\";\nimport { StrictMode } from \"react\";\nimport { type createBrowserRouter, RouterProvider } from \"react-router-dom\";\nimport {\n type createStaticRouter,\n type StaticHandlerContext,\n StaticRouterProvider,\n} from \"react-router-dom/server.js\";\nimport { StaggeredRenderContext } from \"../plugins/openapi/StaggeredRender.js\";\n\nconst Bootstrap = ({\n router,\n hydrate = false,\n}: {\n hydrate?: boolean;\n router: ReturnType<typeof createBrowserRouter>;\n}) => {\n return (\n <StrictMode>\n <HelmetProvider>\n <StaggeredRenderContext.Provider value={{ stagger: !hydrate }}>\n <RouterProvider router={router} />\n </StaggeredRenderContext.Provider>\n </HelmetProvider>\n </StrictMode>\n );\n};\n\nconst BootstrapStatic = ({\n router,\n context,\n helmetContext,\n}: {\n helmetContext: HelmetData[\"context\"];\n context: StaticHandlerContext;\n router: ReturnType<typeof createStaticRouter>;\n}) => (\n <StrictMode>\n <HelmetProvider context={helmetContext}>\n <StaticRouterProvider router={router} context={context} />\n </HelmetProvider>\n </StrictMode>\n);\n\nexport { Bootstrap, BootstrapStatic };\n","// src/queryCache.ts\nimport { hashQueryKeyByOptions, matchQuery } from \"./utils.js\";\nimport { Query } from \"./query.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar QueryCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = /* @__PURE__ */ new Map();\n }\n #queries;\n build(client, options, state) {\n const queryKey = options.queryKey;\n const queryHash = options.queryHash ?? hashQueryKeyByOptions(queryKey, options);\n let query = this.get(queryHash);\n if (!query) {\n query = new Query({\n cache: this,\n queryKey,\n queryHash,\n options: client.defaultQueryOptions(options),\n state,\n defaultOptions: client.getQueryDefaults(queryKey)\n });\n this.add(query);\n }\n return query;\n }\n add(query) {\n if (!this.#queries.has(query.queryHash)) {\n this.#queries.set(query.queryHash, query);\n this.notify({\n type: \"added\",\n query\n });\n }\n }\n remove(query) {\n const queryInMap = this.#queries.get(query.queryHash);\n if (queryInMap) {\n query.destroy();\n if (queryInMap === query) {\n this.#queries.delete(query.queryHash);\n }\n this.notify({ type: \"removed\", query });\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n this.remove(query);\n });\n });\n }\n get(queryHash) {\n return this.#queries.get(queryHash);\n }\n getAll() {\n return [...this.#queries.values()];\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (query) => matchQuery(defaultedFilters, query)\n );\n }\n findAll(filters = {}) {\n const queries = this.getAll();\n return Object.keys(filters).length > 0 ? queries.filter((query) => matchQuery(filters, query)) : queries;\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n onFocus() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onFocus();\n });\n });\n }\n onOnline() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onOnline();\n });\n });\n }\n};\nexport {\n QueryCache\n};\n//# sourceMappingURL=queryCache.js.map","// src/mutationCache.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Mutation } from \"./mutation.js\";\nimport { matchMutation, noop } from \"./utils.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar MutationCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = /* @__PURE__ */ new Map();\n this.#mutationId = Date.now();\n }\n #mutations;\n #mutationId;\n build(client, options, state) {\n const mutation = new Mutation({\n mutationCache: this,\n mutationId: ++this.#mutationId,\n options: client.defaultMutationOptions(options),\n state\n });\n this.add(mutation);\n return mutation;\n }\n add(mutation) {\n const scope = scopeFor(mutation);\n const mutations = this.#mutations.get(scope) ?? [];\n mutations.push(mutation);\n this.#mutations.set(scope, mutations);\n this.notify({ type: \"added\", mutation });\n }\n remove(mutation) {\n const scope = scopeFor(mutation);\n if (this.#mutations.has(scope)) {\n const mutations = this.#mutations.get(scope)?.filter((x) => x !== mutation);\n if (mutations) {\n if (mutations.length === 0) {\n this.#mutations.delete(scope);\n } else {\n this.#mutations.set(scope, mutations);\n }\n }\n }\n this.notify({ type: \"removed\", mutation });\n }\n canRun(mutation) {\n const firstPendingMutation = this.#mutations.get(scopeFor(mutation))?.find((m) => m.state.status === \"pending\");\n return !firstPendingMutation || firstPendingMutation === mutation;\n }\n runNext(mutation) {\n const foundMutation = this.#mutations.get(scopeFor(mutation))?.find((m) => m !== mutation && m.state.isPaused);\n return foundMutation?.continue() ?? Promise.resolve();\n }\n clear() {\n notifyManager.batch(() => {\n this.getAll().forEach((mutation) => {\n this.remove(mutation);\n });\n });\n }\n getAll() {\n return [...this.#mutations.values()].flat();\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (mutation) => matchMutation(defaultedFilters, mutation)\n );\n }\n findAll(filters = {}) {\n return this.getAll().filter((mutation) => matchMutation(filters, mutation));\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n resumePausedMutations() {\n const pausedMutations = this.getAll().filter((x) => x.state.isPaused);\n return notifyManager.batch(\n () => Promise.all(\n pausedMutations.map((mutation) => mutation.continue().catch(noop))\n )\n );\n }\n};\nfunction scopeFor(mutation) {\n return mutation.options.scope?.id ?? String(mutation.mutationId);\n}\nexport {\n MutationCache\n};\n//# sourceMappingURL=mutationCache.js.map","// src/infiniteQueryBehavior.ts\nimport { addToEnd, addToStart, ensureQueryFn } from \"./utils.js\";\nfunction infiniteQueryBehavior(pages) {\n return {\n onFetch: (context, query) => {\n const options = context.options;\n const direction = context.fetchOptions?.meta?.fetchMore?.direction;\n const oldPages = context.state.data?.pages || [];\n const oldPageParams = context.state.data?.pageParams || [];\n let result = { pages: [], pageParams: [] };\n let currentPage = 0;\n const fetchFn = async () => {\n let cancelled = false;\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n if (context.signal.aborted) {\n cancelled = true;\n } else {\n context.signal.addEventListener(\"abort\", () => {\n cancelled = true;\n });\n }\n return context.signal;\n }\n });\n };\n const queryFn = ensureQueryFn(context.options, context.fetchOptions);\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (param == null && data.pages.length) {\n return Promise.resolve(data);\n }\n const queryFnContext = {\n queryKey: context.queryKey,\n pageParam: param,\n direction: previous ? \"backward\" : \"forward\",\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext);\n const page = await queryFn(\n queryFnContext\n );\n const { maxPages } = context.options;\n const addTo = previous ? addToStart : addToEnd;\n return {\n pages: addTo(data.pages, page, maxPages),\n pageParams: addTo(data.pageParams, param, maxPages)\n };\n };\n if (direction && oldPages.length) {\n const previous = direction === \"backward\";\n const pageParamFn = previous ? getPreviousPageParam : getNextPageParam;\n const oldData = {\n pages: oldPages,\n pageParams: oldPageParams\n };\n const param = pageParamFn(options, oldData);\n result = await fetchPage(oldData, param, previous);\n } else {\n const remainingPages = pages ?? oldPages.length;\n do {\n const param = currentPage === 0 ? oldPageParams[0] ?? options.initialPageParam : getNextPageParam(options, result);\n if (currentPage > 0 && param == null) {\n break;\n }\n result = await fetchPage(result, param);\n currentPage++;\n } while (currentPage < remainingPages);\n }\n return result;\n };\n if (context.options.persister) {\n context.fetchFn = () => {\n return context.options.persister?.(\n fetchFn,\n {\n queryKey: context.queryKey,\n meta: context.options.meta,\n signal: context.signal\n },\n query\n );\n };\n } else {\n context.fetchFn = fetchFn;\n }\n }\n };\n}\nfunction getNextPageParam(options, { pages, pageParams }) {\n const lastIndex = pages.length - 1;\n return pages.length > 0 ? options.getNextPageParam(\n pages[lastIndex],\n pages,\n pageParams[lastIndex],\n pageParams\n ) : void 0;\n}\nfunction getPreviousPageParam(options, { pages, pageParams }) {\n return pages.length > 0 ? options.getPreviousPageParam?.(pages[0], pages, pageParams[0], pageParams) : void 0;\n}\nfunction hasNextPage(options, data) {\n if (!data)\n return false;\n return getNextPageParam(options, data) != null;\n}\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam)\n return false;\n return getPreviousPageParam(options, data) != null;\n}\nexport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n};\n//# sourceMappingURL=infiniteQueryBehavior.js.map","// src/queryClient.ts\nimport {\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n noop,\n partialMatchKey,\n resolveStaleTime,\n skipToken\n} from \"./utils.js\";\nimport { QueryCache } from \"./queryCache.js\";\nimport { MutationCache } from \"./mutationCache.js\";\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { infiniteQueryBehavior } from \"./infiniteQueryBehavior.js\";\nvar QueryClient = class {\n #queryCache;\n #mutationCache;\n #defaultOptions;\n #queryDefaults;\n #mutationDefaults;\n #mountCount;\n #unsubscribeFocus;\n #unsubscribeOnline;\n constructor(config = {}) {\n this.#queryCache = config.queryCache || new QueryCache();\n this.#mutationCache = config.mutationCache || new MutationCache();\n this.#defaultOptions = config.defaultOptions || {};\n this.#queryDefaults = /* @__PURE__ */ new Map();\n this.#mutationDefaults = /* @__PURE__ */ new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1)\n return;\n this.#unsubscribeFocus = focusManager.subscribe(async (focused) => {\n if (focused) {\n await this.resumePausedMutations();\n this.#queryCache.onFocus();\n }\n });\n this.#unsubscribeOnline = onlineManager.subscribe(async (online) => {\n if (online) {\n await this.resumePausedMutations();\n this.#queryCache.onOnline();\n }\n });\n }\n unmount() {\n this.#mountCount--;\n if (this.#mountCount !== 0)\n return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = void 0;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = void 0;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({ ...filters, fetchStatus: \"fetching\" }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({ ...filters, status: \"pending\" }).length;\n }\n getQueryData(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(options.queryHash)?.state.data;\n }\n ensureQueryData(options) {\n const cachedData = this.getQueryData(options.queryKey);\n if (cachedData === void 0)\n return this.fetchQuery(options);\n else {\n const defaultedOptions = this.defaultQueryOptions(options);\n const query = this.#queryCache.build(this, defaultedOptions);\n if (options.revalidateIfStale && query.isStaleByTime(resolveStaleTime(defaultedOptions.staleTime, query))) {\n void this.prefetchQuery(defaultedOptions);\n }\n return Promise.resolve(cachedData);\n }\n }\n getQueriesData(filters) {\n return this.#queryCache.findAll(filters).map(({ queryKey, state }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const defaultedOptions = this.defaultQueryOptions({ queryKey });\n const query = this.#queryCache.get(\n defaultedOptions.queryHash\n );\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (data === void 0) {\n return void 0;\n }\n return this.#queryCache.build(this, defaultedOptions).setData(data, { ...options, manual: true });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(\n () => this.#queryCache.findAll(filters).map(({ queryKey }) => [\n queryKey,\n this.setQueryData(queryKey, updater, options)\n ])\n );\n }\n getQueryState(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(options.queryHash)?.state;\n }\n removeQueries(filters) {\n const queryCache = this.#queryCache;\n notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n queryCache.remove(query);\n });\n });\n }\n resetQueries(filters, options) {\n const queryCache = this.#queryCache;\n const refetchFilters = {\n type: \"active\",\n ...filters\n };\n return notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n query.reset();\n });\n return this.refetchQueries(refetchFilters, options);\n });\n }\n cancelQueries(filters = {}, cancelOptions = {}) {\n const defaultedCancelOptions = { revert: true, ...cancelOptions };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).map((query) => query.cancel(defaultedCancelOptions))\n );\n return Promise.all(promises).then(noop).catch(noop);\n }\n invalidateQueries(filters = {}, options = {}) {\n return notifyManager.batch(() => {\n this.#queryCache.findAll(filters).forEach((query) => {\n query.invalidate();\n });\n if (filters.refetchType === \"none\") {\n return Promise.resolve();\n }\n const refetchFilters = {\n ...filters,\n type: filters.refetchType ?? filters.type ?? \"active\"\n };\n return this.refetchQueries(refetchFilters, options);\n });\n }\n refetchQueries(filters = {}, options) {\n const fetchOptions = {\n ...options,\n cancelRefetch: options?.cancelRefetch ?? true\n };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).filter((query) => !query.isDisabled()).map((query) => {\n let promise = query.fetch(void 0, fetchOptions);\n if (!fetchOptions.throwOnError) {\n promise = promise.catch(noop);\n }\n return query.state.fetchStatus === \"paused\" ? Promise.resolve() : promise;\n })\n );\n return Promise.all(promises).then(noop);\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n if (defaultedOptions.retry === void 0) {\n defaultedOptions.retry = false;\n }\n const query = this.#queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(\n resolveStaleTime(defaultedOptions.staleTime, query)\n ) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n }\n prefetchQuery(options) {\n return this.fetchQuery(options).then(noop).catch(noop);\n }\n fetchInfiniteQuery(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.fetchQuery(options);\n }\n prefetchInfiniteQuery(options) {\n return this.fetchInfiniteQuery(options).then(noop).catch(noop);\n }\n ensureInfiniteQueryData(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.ensureQueryData(options);\n }\n resumePausedMutations() {\n if (onlineManager.isOnline()) {\n return this.#mutationCache.resumePausedMutations();\n }\n return Promise.resolve();\n }\n getQueryCache() {\n return this.#queryCache;\n }\n getMutationCache() {\n return this.#mutationCache;\n }\n getDefaultOptions() {\n return this.#defaultOptions;\n }\n setDefaultOptions(options) {\n this.#defaultOptions = options;\n }\n setQueryDefaults(queryKey, options) {\n this.#queryDefaults.set(hashKey(queryKey), {\n queryKey,\n defaultOptions: options\n });\n }\n getQueryDefaults(queryKey) {\n const defaults = [...this.#queryDefaults.values()];\n let result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(queryKey, queryDefault.queryKey)) {\n result = { ...result, ...queryDefault.defaultOptions };\n }\n });\n return result;\n }\n setMutationDefaults(mutationKey, options) {\n this.#mutationDefaults.set(hashKey(mutationKey), {\n mutationKey,\n defaultOptions: options\n });\n }\n getMutationDefaults(mutationKey) {\n const defaults = [...this.#mutationDefaults.values()];\n let result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(mutationKey, queryDefault.mutationKey)) {\n result = { ...result, ...queryDefault.defaultOptions };\n }\n });\n return result;\n }\n defaultQueryOptions(options) {\n if (options._defaulted) {\n return options;\n }\n const defaultedOptions = {\n ...this.#defaultOptions.queries,\n ...this.getQueryDefaults(options.queryKey),\n ...options,\n _defaulted: true\n };\n if (!defaultedOptions.queryHash) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(\n defaultedOptions.queryKey,\n defaultedOptions\n );\n }\n if (defaultedOptions.refetchOnReconnect === void 0) {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== \"always\";\n }\n if (defaultedOptions.throwOnError === void 0) {\n defaultedOptions.throwOnError = !!defaultedOptions.suspense;\n }\n if (!defaultedOptions.networkMode && defaultedOptions.persister) {\n defaultedOptions.networkMode = \"offlineFirst\";\n }\n if (defaultedOptions.enabled !== true && defaultedOptions.queryFn === skipToken) {\n defaultedOptions.enabled = false;\n }\n return defaultedOptions;\n }\n defaultMutationOptions(options) {\n if (options?._defaulted) {\n return options;\n }\n return {\n ...this.#defaultOptions.mutations,\n ...options?.mutationKey && this.getMutationDefaults(options.mutationKey),\n ...options,\n _defaulted: true\n };\n }\n clear() {\n this.#queryCache.clear();\n this.#mutationCache.clear();\n }\n};\nexport {\n QueryClient\n};\n//# sourceMappingURL=queryClient.js.map","'use client';\nimport { createContext, Component, createElement, useContext, useState, useMemo, forwardRef } from 'react';\n\nconst ErrorBoundaryContext = createContext(null);\n\nconst initialState = {\n didCatch: false,\n error: null\n};\nclass ErrorBoundary extends Component {\n constructor(props) {\n super(props);\n this.resetErrorBoundary = this.resetErrorBoundary.bind(this);\n this.state = initialState;\n }\n static getDerivedStateFromError(error) {\n return {\n didCatch: true,\n error\n };\n }\n resetErrorBoundary() {\n const {\n error\n } = this.state;\n if (error !== null) {\n var _this$props$onReset, _this$props;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n (_this$props$onReset = (_this$props = this.props).onReset) === null || _this$props$onReset === void 0 ? void 0 : _this$props$onReset.call(_this$props, {\n args,\n reason: \"imperative-api\"\n });\n this.setState(initialState);\n }\n }\n componentDidCatch(error, info) {\n var _this$props$onError, _this$props2;\n (_this$props$onError = (_this$props2 = this.props).onError) === null || _this$props$onError === void 0 ? void 0 : _this$props$onError.call(_this$props2, error, info);\n }\n componentDidUpdate(prevProps, prevState) {\n const {\n didCatch\n } = this.state;\n const {\n resetKeys\n } = this.props;\n\n // There's an edge case where if the thing that triggered the error happens to *also* be in the resetKeys array,\n // we'd end up resetting the error boundary immediately.\n // This would likely trigger a second error to be thrown.\n // So we make sure that we don't check the resetKeys on the first call of cDU after the error is set.\n\n if (didCatch && prevState.error !== null && hasArrayChanged(prevProps.resetKeys, resetKeys)) {\n var _this$props$onReset2, _this$props3;\n (_this$props$onReset2 = (_this$props3 = this.props).onReset) === null || _this$props$onReset2 === void 0 ? void 0 : _this$props$onReset2.call(_this$props3, {\n next: resetKeys,\n prev: prevProps.resetKeys,\n reason: \"keys\"\n });\n this.setState(initialState);\n }\n }\n render() {\n const {\n children,\n fallbackRender,\n FallbackComponent,\n fallback\n } = this.props;\n const {\n didCatch,\n error\n } = this.state;\n let childToRender = children;\n if (didCatch) {\n const props = {\n error,\n resetErrorBoundary: this.resetErrorBoundary\n };\n if (typeof fallbackRender === \"function\") {\n childToRender = fallbackRender(props);\n } else if (FallbackComponent) {\n childToRender = createElement(FallbackComponent, props);\n } else if (fallback !== undefined) {\n childToRender = fallback;\n } else {\n throw error;\n }\n }\n return createElement(ErrorBoundaryContext.Provider, {\n value: {\n didCatch,\n error,\n resetErrorBoundary: this.resetErrorBoundary\n }\n }, childToRender);\n }\n}\nfunction hasArrayChanged() {\n let a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n let b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return a.length !== b.length || a.some((item, index) => !Object.is(item, b[index]));\n}\n\nfunction assertErrorBoundaryContext(value) {\n if (value == null || typeof value.didCatch !== \"boolean\" || typeof value.resetErrorBoundary !== \"function\") {\n throw new Error(\"ErrorBoundaryContext not found\");\n }\n}\n\nfunction useErrorBoundary() {\n const context = useContext(ErrorBoundaryContext);\n assertErrorBoundaryContext(context);\n const [state, setState] = useState({\n error: null,\n hasError: false\n });\n const memoized = useMemo(() => ({\n resetBoundary: () => {\n context.resetErrorBoundary();\n setState({\n error: null,\n hasError: false\n });\n },\n showBoundary: error => setState({\n error,\n hasError: true\n })\n }), [context.resetErrorBoundary]);\n if (state.hasError) {\n throw state.error;\n }\n return memoized;\n}\n\nfunction withErrorBoundary(component, errorBoundaryProps) {\n const Wrapped = forwardRef((props, ref) => createElement(ErrorBoundary, errorBoundaryProps, createElement(component, {\n ...props,\n ref\n })));\n\n // Format for display in DevTools\n const name = component.displayName || component.name || \"Unknown\";\n Wrapped.displayName = \"withErrorBoundary(\".concat(name, \")\");\n return Wrapped;\n}\n\nexport { ErrorBoundary, ErrorBoundaryContext, useErrorBoundary, withErrorBoundary };\n","import { type ReactElement } from \"react\";\nimport { type RouteObject } from \"react-router-dom\";\nimport type { Sidebar } from \"../../config/validators/SidebarSchema.js\";\nimport { MdxComponentsType } from \"../util/MdxComponents.js\";\nimport { DevPortalContext, type ApiIdentity } from \"./DevPortalContext.js\";\n\nexport type DevPortalPlugin =\n | CommonPlugin\n | ProfileMenuPlugin\n | NavigationPlugin\n | ApiIdentityPlugin\n | SearchProviderPlugin;\n\nexport type { RouteObject };\n\nexport interface NavigationPlugin {\n getRoutes: () => RouteObject[];\n getSidebar?: (path: string) => Promise<Sidebar>;\n}\n\nexport interface ApiIdentityPlugin {\n getIdentities: (context: DevPortalContext) => Promise<ApiIdentity[]>;\n}\n\nexport interface SearchProviderPlugin {\n renderSearch: (o: {\n isOpen: boolean;\n onClose: () => void;\n }) => React.JSX.Element | null;\n}\n\nexport interface ProfileMenuPlugin {\n getProfileMenuItems: (context: DevPortalContext) => ProfileNavigationItem[];\n}\n\nexport type ProfileNavigationItem = {\n label: string;\n path?: string;\n children?: ProfileNavigationItem[];\n};\n\nexport interface CommonPlugin {\n initialize?: (\n context: DevPortalContext,\n ) => Promise<void | boolean> | void | boolean;\n getHead?: () => ReactElement | undefined;\n getMdxComponents?: () => MdxComponentsType;\n}\n\nexport const isProfileMenuPlugin = (\n obj: DevPortalPlugin,\n): obj is ProfileMenuPlugin =>\n \"getProfileMenuItems\" in obj && typeof obj.getProfileMenuItems === \"function\";\n\nexport const isNavigationPlugin = (\n obj: DevPortalPlugin,\n): obj is NavigationPlugin =>\n \"getRoutes\" in obj && typeof obj.getRoutes === \"function\";\n\nexport const isSearchPlugin = (\n obj: DevPortalPlugin,\n): obj is SearchProviderPlugin =>\n \"renderSearch\" in obj && typeof obj.renderSearch === \"function\";\n\nexport const needsInitialization = (\n obj: DevPortalPlugin,\n): obj is CommonPlugin =>\n \"initialize\" in obj && typeof obj.initialize === \"function\";\n\nexport const hasHead = (obj: DevPortalPlugin): obj is CommonPlugin =>\n \"getHead\" in obj && typeof obj.getHead === \"function\";\n\nexport const isMdxProviderPlugin = (\n obj: DevPortalPlugin,\n): obj is CommonPlugin =>\n \"getMdxComponents\" in obj && typeof obj.getMdxComponents === \"function\";\n\nexport const isApiIdentityPlugin = (\n obj: DevPortalPlugin,\n): obj is ApiIdentityPlugin =>\n \"getIdentities\" in obj && typeof obj.getIdentities === \"function\";\n","import { QueryClient } from \"@tanstack/react-query\";\nimport { ReactNode } from \"react\";\nimport type { SidebarConfig } from \"../../config/validators/SidebarSchema.js\";\nimport { TopNavigationItem } from \"../../config/validators/validate.js\";\nimport { type AuthenticationProvider } from \"../authentication/authentication.js\";\nimport type { ComponentsContextType } from \"../components/context/ComponentsContext.js\";\nimport { Slotlets } from \"../components/SlotletProvider.js\";\nimport { joinPath } from \"../util/joinPath.js\";\nimport type { MdxComponentsType } from \"../util/MdxComponents.js\";\nimport {\n type DevPortalPlugin,\n isApiIdentityPlugin,\n isNavigationPlugin,\n type NavigationPlugin,\n needsInitialization,\n} from \"./plugins.js\";\n\nexport interface ApiIdentity {\n authorizeRequest: (request: Request) => Request;\n label: string;\n id: string;\n}\n\nexport const queryClient = new QueryClient();\n\nexport type ApiKeyCache = \"api-keys\";\nexport type DevPortalCacheKey = ApiKeyCache | string;\n\ntype Metadata = Partial<{\n title: string;\n description: string;\n logo: string;\n favicon: string;\n generator: string;\n applicationName: string;\n referrer: string;\n keywords: string[];\n authors: string[];\n creator: string;\n publisher: string;\n}>;\n\ntype Page = Partial<{\n pageTitle?: string;\n logo?: {\n src: {\n light: string;\n dark: string;\n };\n width?: string;\n alt?: string;\n };\n banner?: {\n message: ReactNode;\n color?: \"note\" | \"tip\" | \"info\" | \"caution\" | \"danger\" | (string & {});\n dismissible?: boolean;\n };\n}>;\n\nexport type ZudokuContextOptions = {\n metadata?: Metadata;\n page?: Page;\n authentication?: AuthenticationProvider;\n topNavigation?: TopNavigationItem[];\n sidebars?: SidebarConfig;\n plugins?: DevPortalPlugin[];\n slotlets?: Slotlets;\n mdx?: {\n components?: MdxComponentsType;\n };\n overrides?: ComponentsContextType;\n};\n\nexport class DevPortalContext {\n public plugins: NonNullable<ZudokuContextOptions[\"plugins\"]>;\n public sidebars: SidebarConfig;\n public topNavigation: NonNullable<ZudokuContextOptions[\"topNavigation\"]>;\n public meta: ZudokuContextOptions[\"metadata\"];\n public page: ZudokuContextOptions[\"page\"];\n public authentication?: ZudokuContextOptions[\"authentication\"];\n private navigationPlugins: NavigationPlugin[];\n\n constructor(config: ZudokuContextOptions) {\n this.plugins = config.plugins ?? [];\n this.topNavigation = config.topNavigation ?? [];\n this.sidebars = config.sidebars ?? {};\n this.navigationPlugins = this.plugins.filter(isNavigationPlugin);\n this.authentication = config.authentication;\n this.meta = config.metadata;\n this.page = config.page;\n }\n\n initialize = async (): Promise<void> => {\n await Promise.all(\n this.plugins\n .filter(needsInitialization)\n .map((plugin) => plugin.initialize?.(this)),\n );\n };\n\n invalidateCache = async (key: DevPortalCacheKey[]) => {\n await queryClient.invalidateQueries({ queryKey: key });\n };\n\n getApiIdentities = async () => {\n const keys = await Promise.all(\n this.plugins\n .filter(isApiIdentityPlugin)\n .map((plugin) => plugin.getIdentities(this)),\n );\n\n return keys.flat();\n };\n\n getPluginSidebar = async (path: string) => {\n const navigations = await Promise.all(\n this.navigationPlugins.map((plugin) =>\n plugin.getSidebar?.(joinPath(path)),\n ),\n );\n\n return navigations.flatMap((nav) => nav ?? []);\n };\n\n signRequest = async (request: Request) => {\n if (!this.authentication) {\n throw new Error(\"No authentication provider configured\");\n }\n\n const accessToken = await this.authentication.getAccessToken();\n\n request.headers.set(\"Authorization\", `Bearer ${accessToken}`);\n\n return request;\n };\n}\n","import { FallbackProps } from \"react-error-boundary\";\nimport { ErrorAlert } from \"./ErrorAlert.js\";\n\nexport function TopLevelError({ error, resetErrorBoundary }: FallbackProps) {\n // Call resetErrorBoundary() to reset the error boundary and retry the render.\n\n return <ErrorAlert error={error} />;\n}\n","const root = globalThis;\n\nif (!root.requestIdleCallback || !root.cancelIdleCallback) {\n root.requestIdleCallback = (cb: IdleRequestCallback) => setTimeout(cb, 1);\n root.cancelIdleCallback = clearTimeout;\n}\n","import { CircleXIcon } from \"lucide-react\";\nimport { useState } from \"react\";\nimport { cn } from \"../util/cn.js\";\nimport { useZudoku } from \"./context/ZudokuContext.js\";\n\nconst COLOR_MAP = {\n info: \"bg-blue-500\",\n note: \"bg-gray-500\",\n tip: \"bg-green-600\",\n caution: \"bg-orange-500\",\n danger: \"bg-rose-500\",\n} as const;\n\nexport const Banner = () => {\n const { page } = useZudoku();\n const [isBannerOpen, setIsBannerOpen] = useState(true);\n\n if (!page?.banner || !isBannerOpen) {\n return <style>{`:root { --banner-height: 0px; }`}</style>;\n }\n\n const mappedColor =\n page.banner.color && page.banner.color in COLOR_MAP\n ? COLOR_MAP[page.banner.color as keyof typeof COLOR_MAP]\n : !page.banner.color\n ? \"bg-primary\"\n : undefined;\n\n const style = !mappedColor ? { backgroundColor: page.banner.color } : {};\n\n return (\n <div\n className={cn(\n \"relative text-primary-foreground text-sm font-medium px-4 py-2 flex gap-2 items-center\",\n mappedColor,\n )}\n style={style}\n >\n <div className=\"w-full\">{page.banner.message}</div>\n {page.banner.dismissible && (\n <button\n type=\"button\"\n className=\"md:absolute md:right-4 -m-1.5 p-1.5 hover:bg-accent-foreground/10 rounded-md\"\n onClick={() => setIsBannerOpen(false)}\n >\n <CircleXIcon size={16} />\n </button>\n )}\n </div>\n );\n};\n","import { SearchIcon } from \"lucide-react\";\nimport { Suspense, useCallback, useEffect, useState } from \"react\";\nimport { isSearchPlugin } from \"../core/plugins.js\";\nimport { useZudoku } from \"./context/ZudokuContext.js\";\n\nexport const Search = () => {\n const ctx = useZudoku();\n const [isOpen, setIsOpen] = useState(false);\n\n const onClose = useCallback(() => setIsOpen(false), []);\n\n useEffect(() => {\n if (isOpen) {\n return;\n }\n\n function onKeyDown(event: KeyboardEvent) {\n if (event.key === \"k\" && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n setIsOpen(true);\n }\n }\n\n window.addEventListener(\"keydown\", onKeyDown);\n\n return () => {\n window.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [isOpen, setIsOpen]);\n\n const searchPlugin = ctx.plugins.find(isSearchPlugin);\n\n if (!searchPlugin) {\n return null;\n }\n\n return (\n <>\n <button\n type=\"button\"\n onClick={() => setIsOpen(true)}\n className=\"flex items-center border border-input hover:bg-accent hover:text-accent-foreground p-4 relative h-8 justify-start rounded-lg bg-background text-sm text-muted-foreground shadow-none w-full sm:w-72\"\n >\n <div className=\"flex items-center gap-2 flex-grow\">\n <SearchIcon size={14} />\n Search\n </div>\n <kbd className=\"absolute right-[0.3rem] top-[0.3rem] hidden h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[11px] font-medium opacity-100 sm:flex\">\n ⌘K\n </kbd>\n </button>\n <Suspense fallback={null}>\n {searchPlugin.renderSearch({\n isOpen,\n onClose,\n })}\n </Suspense>\n </>\n );\n};\n","import { cx } from \"class-variance-authority\";\nimport { Suspense } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { useAuth } from \"../authentication/hook.js\";\nimport { TopNavigationItem } from \"../../config/validators/validate.js\";\nimport { joinPath } from \"../util/joinPath.js\";\nimport { useCurrentNavigation, useZudoku } from \"./context/ZudokuContext.js\";\nimport { traverseSidebar } from \"./navigation/utils.js\";\n\nexport const isHiddenItem =\n (isAuthenticated?: boolean) =>\n (item: { display?: \"auth\" | \"anon\" | \"always\" }) => {\n return (\n (item.display === \"auth\" && isAuthenticated) ||\n (item.display === \"anon\" && !isAuthenticated) ||\n !item.display ||\n item.display === \"always\"\n );\n };\n\nexport const TopNavigation = () => {\n const { topNavigation } = useZudoku();\n const { isAuthenticated } = useAuth();\n\n // Hide top nav if there is only one item\n if (topNavigation.length <= 1) {\n return <style>{`:root { --top-nav-height: 0px; }`}</style>;\n }\n\n return (\n <Suspense>\n <nav className=\"hidden lg:block border-b text-sm px-12 h-[--top-nav-height]\">\n <ul className=\"flex flex-row items-center gap-8\">\n {topNavigation.filter(isHiddenItem(isAuthenticated)).map((item) => (\n <li key={item.id}>\n <TopNavItem {...item} />\n </li>\n ))}\n </ul>\n </nav>\n </Suspense>\n );\n};\n\nconst TopNavItem = ({ id, label, default: defaultLink }: TopNavigationItem) => {\n const { sidebars } = useZudoku();\n const nav = useCurrentNavigation();\n const currentSidebar = sidebars[id];\n\n // TODO: This is a bit of a hack to get the first link in the sidebar\n // We should really process this when we load the config so we can validate\n // that the sidebar is actually set. In this case we just fall back to linking\n // to the id if we can't resolve a sidebar.\n const first =\n defaultLink ??\n (currentSidebar\n ? traverseSidebar(currentSidebar, (item) => {\n if (item.type === \"doc\") return joinPath(item.id);\n })\n : joinPath(id));\n\n if (!first) {\n throw new Error(\n `No links found in top navigation for top navigation '${id}'. Check that the sidebar isn't empty or that a default link set.`,\n );\n }\n\n // Manually set the active sidebar based on our logic of what is active\n const isActive = nav.data.topNavItem?.id === id;\n\n return (\n <Link\n className={cx(\n \"block py-3.5 font-medium -mb-px border-b-2\",\n isActive\n ? \"border-primary text-foreground\"\n : \"border-transparent text-foreground/75 hover:text-foreground hover:border-accent-foreground/25\",\n )}\n to={first}\n >\n {label}\n </Link>\n );\n};\n","import { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\nimport { cx } from \"class-variance-authority\";\nimport { MenuIcon } from \"lucide-react\";\nimport { NavLink } from \"react-router-dom\";\nimport { useAuth } from \"../authentication/hook.js\";\nimport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerTitle,\n DrawerTrigger,\n} from \"../ui/Drawer.js\";\nimport { useZudoku } from \"./context/ZudokuContext.js\";\nimport { Search } from \"./Search.js\";\nimport { isHiddenItem } from \"./TopNavigation.js\";\n\nexport const MobileTopNavigation = () => {\n const { topNavigation } = useZudoku();\n const { isAuthenticated } = useAuth();\n\n return (\n <Drawer direction=\"right\">\n <div className=\"flex lg:hidden justify-self-end\">\n <DrawerTrigger className=\"lg:hidden\">\n <MenuIcon size={22} />\n </DrawerTrigger>\n </div>\n <DrawerContent\n className=\"lg:hidden h-screen right-0 left-auto w-[320px] rounded-none overflow-auto\"\n aria-describedby={undefined}\n >\n <VisuallyHidden>\n <DrawerTitle>Navigation</DrawerTitle>\n </VisuallyHidden>\n <div className=\"flex p-4\">\n <Search />\n </div>\n <ul className=\"flex flex-col items-center gap-4 p-4\">\n {topNavigation.filter(isHiddenItem(isAuthenticated)).map((item) => (\n <li key={item.label}>\n <NavLink\n className={({ isActive }) =>\n cx(\n \"block font-medium border-b-2\",\n isActive\n ? \"border-primary text-foreground\"\n : \"border-transparent text-foreground/75 hover:text-foreground hover:border-accent-foreground/25\",\n )\n }\n to={item.id}\n >\n <DrawerClose>{item.label}</DrawerClose>\n </NavLink>\n </li>\n ))}\n </ul>\n </DrawerContent>\n </Drawer>\n );\n};\n","import { MoonStarIcon, SunIcon } from \"lucide-react\";\nimport { memo } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { useAuth } from \"../authentication/hook.js\";\nimport { isProfileMenuPlugin, ProfileNavigationItem } from \"../core/plugins.js\";\nimport { Button } from \"../ui/Button.js\";\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuSeparator,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"../ui/DropdownMenu.js\";\nimport { cn } from \"../util/cn.js\";\nimport { joinPath } from \"../util/joinPath.js\";\nimport { Banner } from \"./Banner.js\";\nimport { useTheme } from \"./context/ThemeContext.js\";\nimport { useZudoku } from \"./context/ZudokuContext.js\";\nimport { MobileTopNavigation } from \"./MobileTopNavigation.js\";\nimport { Search } from \"./Search.js\";\nimport { Slotlet } from \"./SlotletProvider.js\";\nimport { TopNavigation } from \"./TopNavigation.js\";\n\nconst RecursiveMenu = ({ item }: { item: ProfileNavigationItem }) => {\n return item.children ? (\n <DropdownMenuSub key={item.label}>\n <DropdownMenuSubTrigger>{item.label}</DropdownMenuSubTrigger>\n <DropdownMenuPortal>\n <DropdownMenuSubContent>\n {item.children.map((item, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <RecursiveMenu key={i} item={item} />\n ))}\n </DropdownMenuSubContent>\n </DropdownMenuPortal>\n </DropdownMenuSub>\n ) : (\n <Link to={item.path ?? \"\"}>\n <DropdownMenuItem key={item.label}>{item.label}</DropdownMenuItem>\n </Link>\n );\n};\n\nexport const Header = memo(function HeaderInner() {\n const auth = useAuth();\n const [isDark, toggleTheme] = useTheme();\n const { isAuthenticated, profile, isAuthEnabled } = useAuth();\n const context = useZudoku();\n const { page, plugins } = context;\n\n const accountItems = plugins\n .filter((p) => isProfileMenuPlugin(p))\n .flatMap((p) => p.getProfileMenuItems(context))\n .map((i) => <RecursiveMenu key={i.label} item={i} />);\n\n const ThemeIcon = isDark ? MoonStarIcon : SunIcon;\n\n return (\n <header className=\"sticky lg:top-0 z-10 bg-background/80 backdrop-blur w-full\">\n <Banner />\n <div className=\"max-w-screen-2xl mx-auto\">\n <div className=\"grid grid-cols-2 lg:grid-cols-[calc(var(--side-nav-width))_1fr] lg:gap-12 items-center border-b px-10 lg:px-12 h-[--top-header-height]\">\n <div className=\"flex\">\n <Link to=\"/\">\n <div className=\"flex items-center gap-3.5\">\n {page?.logo && (\n <>\n <img\n src={\n /https?:\\/\\//.test(page.logo.src.light)\n ? page.logo.src.light\n : joinPath(\n import.meta.env.BASE_URL,\n page.logo.src.light,\n )\n }\n alt={page.logo.alt ?? page.pageTitle}\n style={{ width: page.logo.width }}\n className={cn(\"h-10\", isDark && \"hidden\")}\n loading=\"lazy\"\n />\n <img\n src={\n /https?:\\/\\//.test(page.logo.src.dark)\n ? page.logo.src.dark\n : joinPath(\n import.meta.env.BASE_URL,\n page.logo.src.dark,\n )\n }\n alt={page.logo.alt ?? page.pageTitle}\n style={{ width: page.logo.width }}\n className={cn(\"h-10\", !isDark && \"hidden\")}\n loading=\"lazy\"\n />\n </>\n )}\n <span className=\"font-bold text-2xl text-foreground/85 tracking-wide\">\n {page?.pageTitle}\n </span>\n </div>\n </Link>\n </div>\n <div className=\"grid grid-cols-1 lg:grid-cols-[--sidecar-grid-cols] items-center gap-8\">\n <div className=\"w-full justify-center hidden lg:flex\">\n <Search />\n </div>\n\n <MobileTopNavigation />\n <div className=\"hidden lg:flex items-center justify-self-end text-sm gap-2\">\n <Slotlet name=\"head-navigation-start\" />\n {isAuthEnabled && !isAuthenticated ? (\n <Button variant=\"ghost\" onClick={() => auth.login()}>\n Login\n </Button>\n ) : (\n accountItems.length > 0 && (\n <DropdownMenu modal={false}>\n <DropdownMenuTrigger asChild>\n <Button variant=\"ghost\">\n {profile?.email ? `${profile.email}` : \"My Account\"}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent className=\"w-56\">\n <DropdownMenuLabel>My Account</DropdownMenuLabel>\n <DropdownMenuSeparator />\n {accountItems}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n )}\n <button\n type=\"button\"\n aria-label={\n isDark ? \"Switch to light mode\" : \"Switch to dark mode\"\n }\n className=\"cursor-pointer hover:bg-secondary p-2.5 -m-2.5 rounded-full\"\n onClick={toggleTheme}\n >\n <ThemeIcon size={18} />\n </button>\n <Slotlet name=\"head-navigation-end\" />\n </div>\n </div>\n </div>\n <Slotlet name=\"top-navigation-before\" />\n <TopNavigation />\n <Slotlet name=\"top-navigation-after\" />\n </div>\n </header>\n );\n});\n","import {\n createContext,\n useContext,\n type ComponentProps,\n type ComponentType,\n} from \"react\";\nimport { Header } from \"../Header.js\";\n\nexport const DEFAULT_COMPONENTS = {\n Header,\n};\n\nexport type ComponentsContextType = {\n Header?: ComponentType<ComponentProps<typeof Header>>;\n};\n\nconst ComponentsContext =\n createContext<Required<ComponentsContextType>>(DEFAULT_COMPONENTS);\n\nexport const ComponentsProvider = ComponentsContext.Provider;\n\nexport const useComponents = () => {\n return useContext(ComponentsContext);\n};\n","import { ReactNode, useCallback, useEffect, useState } from \"react\";\nimport { ThemeContext } from \"./ThemeContext.js\";\n\nexport const ThemeProvider = (props: { children: ReactNode }) => {\n const [dark, setDark] = useState(false);\n\n // On mount, read the preferred theme from the persistence\n useEffect(() => {\n const theme = localStorage.getItem(\"theme\");\n const prefersDark = window.matchMedia(\"(prefers-color-scheme: dark)\");\n const isDark = theme === \"dark\" || (!theme && prefersDark.matches);\n\n setDark(isDark);\n }, [dark]);\n\n // To toggle between dark and light modes\n const toggle = useCallback(() => {\n const toggled = !dark;\n document.documentElement.classList.toggle(\"dark\", toggled);\n localStorage.setItem(\"theme\", toggled ? \"dark\" : \"light\");\n setDark(toggled);\n }, [dark]);\n\n const value = [dark, toggle] as const;\n\n return <ThemeContext.Provider value={value} {...props} />;\n};\n","import { useSuspenseQuery } from \"@tanstack/react-query\";\nimport type { PropsWithChildren } from \"react\";\nimport { DevPortalContext } from \"../../core/DevPortalContext.js\";\nimport { ZudokuReactContext } from \"./ZudokuContext.js\";\n\nexport const ZudokuProvider = ({\n children,\n context,\n}: PropsWithChildren<{ context: DevPortalContext }>) => {\n useSuspenseQuery({\n queryFn: async () => {\n await context.initialize();\n return true;\n },\n queryKey: [\"zudoku-initialize\"],\n });\n\n return (\n <ZudokuReactContext.Provider value={context}>\n {children}\n </ZudokuReactContext.Provider>\n );\n};\n","import { MDXProvider } from \"@mdx-js/react\";\nimport { QueryClientProvider } from \"@tanstack/react-query\";\nimport { Helmet } from \"@zudoku/react-helmet-async\";\nimport {\n Fragment,\n memo,\n type PropsWithChildren,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { Outlet, useNavigation } from \"react-router-dom\";\nimport {\n DevPortalContext,\n queryClient,\n ZudokuContextOptions,\n} from \"../core/DevPortalContext.js\";\nimport { hasHead, isMdxProviderPlugin } from \"../core/plugins.js\";\nimport { TopLevelError } from \"../errors/TopLevelError.js\";\nimport { StaggeredRenderContext } from \"../plugins/openapi/StaggeredRender.js\";\nimport { MdxComponents } from \"../util/MdxComponents.js\";\nimport \"../util/requestIdleCallbackPolyfill.js\";\nimport {\n ComponentsProvider,\n DEFAULT_COMPONENTS,\n} from \"./context/ComponentsContext.js\";\nimport { ThemeProvider } from \"./context/ThemeProvider.js\";\nimport { ViewportAnchorProvider } from \"./context/ViewportAnchorContext.js\";\nimport { ZudokuProvider } from \"./context/ZudokuProvider.js\";\nimport { SlotletProvider } from \"./SlotletProvider.js\";\n\nconst DevPortalInner = ({\n children,\n ...props\n}: PropsWithChildren<ZudokuContextOptions>) => {\n const components = useMemo(\n () => ({ ...DEFAULT_COMPONENTS, ...props.overrides }),\n [props.overrides],\n );\n\n const mdxComponents = useMemo(() => {\n const componentsFromPlugins = (props.plugins ?? [])\n .filter(isMdxProviderPlugin)\n .flatMap((plugin) =>\n plugin.getMdxComponents ? [plugin.getMdxComponents()] : [],\n );\n\n return {\n ...componentsFromPlugins.reduce((acc, curr) => ({ ...acc, ...curr }), {}),\n ...MdxComponents,\n ...props.mdx?.components,\n };\n }, [props.mdx?.components, props.plugins]);\n const { stagger } = useContext(StaggeredRenderContext);\n const [didNavigate, setDidNavigate] = useState(false);\n const staggeredValue = useMemo(\n () => (didNavigate ? { stagger: true } : { stagger }),\n [stagger, didNavigate],\n );\n const navigation = useNavigation();\n\n useEffect(() => {\n if (didNavigate) {\n return;\n }\n setDidNavigate(true);\n }, [didNavigate, navigation.location]);\n\n const [devPortalContext] = useState(() => new DevPortalContext(props));\n\n const heads = props.plugins\n ?.filter(hasHead)\n // eslint-disable-next-line react/no-array-index-key\n .map((plugin, i) => <Fragment key={i}>{plugin.getHead?.()}</Fragment>);\n\n return (\n <QueryClientProvider client={queryClient}>\n <Helmet>{heads}</Helmet>\n <StaggeredRenderContext.Provider value={staggeredValue}>\n <ZudokuProvider context={devPortalContext}>\n <MDXProvider components={mdxComponents}>\n <ThemeProvider>\n <ComponentsProvider value={components}>\n <SlotletProvider slotlets={props.slotlets}>\n <ViewportAnchorProvider>\n {children ?? <Outlet />}\n </ViewportAnchorProvider>\n </SlotletProvider>\n </ComponentsProvider>\n </ThemeProvider>\n </MDXProvider>\n </ZudokuProvider>\n </StaggeredRenderContext.Provider>\n </QueryClientProvider>\n );\n};\n\nconst Inner = memo(DevPortalInner);\n\nconst DevPortal = (props: ZudokuContextOptions) => {\n return (\n <ErrorBoundary FallbackComponent={TopLevelError}>\n <Inner {...props} />\n </ErrorBoundary>\n );\n};\nDevPortal.displayName = \"DevPortal\";\n\nexport { DevPortal };\n","import * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { ChevronRightIcon } from \"lucide-react\";\nimport { useEffect, useState } from \"react\";\nimport { NavLink, useMatch } from \"react-router-dom\";\nimport type { SidebarItemCategory } from \"../../../config/validators/SidebarSchema.js\";\nimport { cn } from \"../../util/cn.js\";\nimport { joinPath } from \"../../util/joinPath.js\";\nimport { navigationListItem, SidebarItem } from \"./SidebarItem.js\";\nimport { useIsCategoryOpen } from \"./utils.js\";\n\nexport const SidebarCategory = ({\n category,\n level,\n}: {\n category: SidebarItemCategory;\n level: number;\n}) => {\n const isCategoryOpen = useIsCategoryOpen(category);\n const [hasInteracted, setHasInteracted] = useState(false);\n\n const isCollapsible = category.collapsible ?? true;\n const isCollapsed = category.collapsed ?? true;\n const isDefaultOpen = Boolean(\n !isCollapsible || !isCollapsed || isCategoryOpen,\n );\n const [open, setOpen] = useState(isDefaultOpen);\n const isActive = useMatch(category.link?.id ?? \"\");\n\n useEffect(() => {\n // this is triggered when an item from the sidebar is clicked\n // and the sidebar, enclosing this item, is not opened\n if (isCategoryOpen) {\n setOpen(true);\n }\n }, [isCategoryOpen]);\n\n const ToggleButton = isCollapsible && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.preventDefault();\n setOpen((prev) => !prev);\n setHasInteracted(true);\n }}\n >\n <ChevronRightIcon\n size={16}\n className={cn(\n hasInteracted && \"transition\",\n \"shrink-0 group-data-[state=open]:rotate-90\",\n )}\n />\n </button>\n );\n\n return (\n <Collapsible.Root\n className=\"flex flex-col\"\n defaultOpen={isDefaultOpen}\n open={open}\n onOpenChange={() => setOpen(true)}\n >\n <Collapsible.Trigger className=\"group\" asChild disabled={!isCollapsible}>\n <div\n onClick={() => setHasInteracted(true)}\n className={navigationListItem({\n isActive: false,\n isTopLevel: level === 0,\n className: [\n \"text-start\",\n isCollapsible\n ? \"cursor-pointer\"\n : \"cursor-default hover:bg-transparent\",\n ],\n })}\n >\n {category.icon && (\n <category.icon\n size={16}\n className={cn(\n \"align-[-0.125em] -translate-x-1\",\n isActive && \"text-primary\",\n )}\n />\n )}\n {category.link?.type === \"doc\" ? (\n <NavLink\n to={joinPath(category.link.id)}\n className=\"flex-1\"\n onClick={() => {\n // if it is the current path and closed then open it because there's no path change to trigger the open\n if (isActive && !open) {\n setOpen(true);\n }\n }}\n >\n <div\n className={cn(\n \"flex items-center gap-2 justify-between w-full\",\n isActive ? \"text-primary\" : \"text-foreground/80\",\n )}\n >\n <div className=\"truncate\">{category.label}</div>\n {ToggleButton}\n </div>\n </NavLink>\n ) : (\n <div className=\"flex items-center justify-between w-full\">\n <div className=\"flex gap-2 truncate w-full\">{category.label}</div>\n {ToggleButton}\n </div>\n )}\n </div>\n </Collapsible.Trigger>\n <Collapsible.Content\n className={cn(\n // CollapsibleContent class is used to animate and it should only be applied when the user has triggered the toggle\n hasInteracted && \"CollapsibleContent\",\n )}\n >\n <ul className=\"mt-1 border-l ms-0.5\">\n {category.items.map((item) => (\n <SidebarItem\n key={\n (\"id\" in item ? item.id : \"\") +\n (\"href\" in item ? item.href : \"\") +\n item.label\n }\n level={level + 1}\n item={item}\n />\n ))}\n </ul>\n </Collapsible.Content>\n </Collapsible.Root>\n );\n};\n","import { cva } from \"class-variance-authority\";\nimport { ExternalLinkIcon } from \"lucide-react\";\nimport { NavLink, useSearchParams } from \"react-router-dom\";\n\nimport type { SidebarItem as SidebarItemType } from \"../../../config/validators/SidebarSchema.js\";\nimport { joinPath } from \"../../util/joinPath.js\";\nimport { AnchorLink } from \"../AnchorLink.js\";\nimport { useViewportAnchor } from \"../context/ViewportAnchorContext.js\";\nimport { SidebarBadge } from \"./SidebarBadge.js\";\nimport { SidebarCategory } from \"./SidebarCategory.js\";\n\nexport const navigationListItem = cva(\n \"flex items-center gap-2 px-[--padding-nav-item] py-1.5 rounded-lg hover:bg-accent transition-colors duration-300\",\n {\n variants: {\n isTopLevel: {\n true: \"font-medium -mx-[--padding-nav-item]\",\n false: \"-mr-[--padding-nav-item] ml-[--padding-nav-item]\",\n },\n isActive: {\n true: \"text-primary font-medium\",\n false: \"text-foreground/80\",\n },\n isMuted: {\n true: \"text-foreground/30\",\n false: \"\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n },\n);\n\nexport const DATA_ANCHOR_ATTR = \"data-anchor\";\n\nexport const SidebarItem = ({\n item,\n level = 0,\n}: {\n item: SidebarItemType;\n basePath?: string;\n level?: number;\n}) => {\n const { activeAnchor } = useViewportAnchor();\n const [searchParams] = useSearchParams();\n\n switch (item.type) {\n case \"category\":\n return <SidebarCategory category={item} level={level} />;\n case \"doc\":\n return (\n <NavLink\n className={({ isActive }) =>\n navigationListItem({ isActive, isTopLevel: level === 0 })\n }\n to={joinPath(item.id)}\n >\n {item.icon && <item.icon size={16} className=\"align-[-0.125em]\" />}\n {item.badge ? (\n <>\n <span className=\"truncate flex-1\" title={item.label}>\n {item.label}\n </span>\n <SidebarBadge {...item.badge} />\n </>\n ) : (\n item.label\n )}\n </NavLink>\n );\n case \"link\":\n return item.href.startsWith(\"#\") ? (\n <AnchorLink\n to={{ hash: item.href, search: searchParams.toString() }}\n {...{ [DATA_ANCHOR_ATTR]: item.href.slice(1) }}\n className={navigationListItem({\n isActive: item.href.slice(1) === activeAnchor,\n isTopLevel: level === 0,\n className: item.badge?.placement !== \"start\" && \"justify-between\",\n })}\n >\n {item.badge ? (\n <>\n <span className=\"truncate\" title={item.label}>\n {item.label}\n </span>\n <SidebarBadge {...item.badge} />\n </>\n ) : (\n <span className=\"break-all\">{item.label}</span>\n )}\n </AnchorLink>\n ) : !item.href.startsWith(\"http\") ? (\n <NavLink\n className={navigationListItem({\n className: item.badge?.placement !== \"start\" && \"justify-between\",\n })}\n to={item.href}\n >\n {item.badge ? (\n <>\n <span className=\"truncate\" title={item.label}>\n {item.label}\n </span>\n <SidebarBadge {...item.badge} />\n </>\n ) : (\n <span className=\"break-all\">{item.label}</span>\n )}\n </NavLink>\n ) : (\n <a\n className={navigationListItem({ isTopLevel: level === 0 })}\n href={item.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <span className=\"whitespace-normal\">{item.label}</span>\n {/* This prevents that the icon would be positioned in its own line if the text fills a line entirely */}\n <span className=\"whitespace-nowrap\">\n <ExternalLinkIcon className=\"inline -translate-y-0.5\" size={12} />\n </span>\n </a>\n );\n }\n};\n","import { useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { useViewportAnchor } from \"../components/context/ViewportAnchorContext.js\";\nimport { DATA_ANCHOR_ATTR } from \"../components/navigation/SidebarItem.js\";\n\nconst scrollIntoViewIfNeeded = (\n element: Element | null,\n options: ScrollIntoViewOptions = { block: \"center\" },\n) => {\n if (!element) return;\n\n const rect = element.getBoundingClientRect();\n const isInView =\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <=\n (window.innerHeight || document.documentElement.clientHeight) &&\n rect.right <= (window.innerWidth || document.documentElement.clientWidth);\n\n if (isInView) return;\n\n element.scrollIntoView(options);\n};\n\nexport const useScrollToAnchor = () => {\n const location = useLocation();\n const { setActiveAnchor } = useViewportAnchor();\n\n useEffect(() => {\n if (!location.hash) return;\n\n const hash = decodeURIComponent(location.hash.split(\"/\")[0]!.slice(1));\n\n const scrollToElement = () => {\n const element = document.getElementById(hash);\n const link = document.querySelector(`[${DATA_ANCHOR_ATTR}=\"${hash}\"]`);\n\n if (element) {\n element.scrollIntoView();\n scrollIntoViewIfNeeded(link);\n requestIdleCallback(() => setActiveAnchor(hash));\n return true;\n }\n\n return false;\n };\n\n if (!scrollToElement()) {\n const observer = new MutationObserver((_, obs) => {\n if (!scrollToElement()) return;\n obs.disconnect();\n });\n\n observer.observe(document.body, { childList: true, subtree: true });\n\n return () => observer.disconnect();\n }\n }, [location.hash, setActiveAnchor]);\n};\n","import { useEffect, useRef } from \"react\";\nimport { useLocation } from \"react-router-dom\";\n\nexport const useScrollToTop = () => {\n const location = useLocation();\n const previousPath = useRef(location.pathname);\n\n useEffect(() => {\n if (previousPath.current === location.pathname) return;\n window.scrollTo(0, 0);\n previousPath.current = location.pathname;\n }, [location.pathname]);\n};\n","import { forwardRef, type PropsWithChildren } from \"react\";\nimport { cn } from \"../../util/cn.js\";\n\nexport const SidebarWrapper = forwardRef<\n HTMLDivElement,\n PropsWithChildren<{ pushMainContent?: boolean; className?: string }>\n>(({ children, className, pushMainContent }, ref) => (\n <nav\n // this data attribute is used in `Layout.tsx` to determine if side navigation\n // is present for the current page so the main content is pushed to the right\n // it's also important to set `peer` class here.\n // maybe this could be simplified by adjusting the layout\n data-navigation={String(pushMainContent)}\n className={cn(\n \"scrollbar peer hidden lg:flex flex-col fixed text-sm overflow-y-auto shrink-0\",\n \"px-[--padding-nav-item] -mx-[--padding-nav-item] pb-20 mt-[--padding-content-top]\",\n \"w-[--side-nav-width] h-[calc(100%-var(--header-height))] scroll-pt-2 gap-2\",\n className,\n )}\n ref={ref}\n >\n {children}\n </nav>\n));\n\nSidebarWrapper.displayName = \"SidebarWrapper\";\n","import { useRef } from \"react\";\n\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\nimport { DrawerContent, DrawerTitle } from \"../../ui/Drawer.js\";\nimport { useCurrentNavigation } from \"../context/ZudokuContext.js\";\nimport { Slotlet } from \"../SlotletProvider.js\";\nimport { SidebarItem } from \"./SidebarItem.js\";\nimport { SidebarWrapper } from \"./SidebarWrapper.js\";\n\nexport const Sidebar = () => {\n const navRef = useRef<HTMLDivElement | null>(null);\n const navigation = useCurrentNavigation();\n\n return (\n <>\n <SidebarWrapper\n ref={navRef}\n pushMainContent={navigation.data.sidebar.length > 0}\n >\n <Slotlet name=\"zudoku-before-navigation\" />\n {navigation.data.sidebar.map((item) => (\n <SidebarItem key={item.label} item={item} />\n ))}\n <Slotlet name=\"zudoku-after-navigation\" />\n </SidebarWrapper>\n <DrawerContent\n className=\"lg:hidden h-screen left-0 p-6 w-[320px] rounded-none overflow-auto\"\n aria-describedby={undefined}\n >\n <VisuallyHidden>\n <DrawerTitle>Sidebar</DrawerTitle>\n </VisuallyHidden>\n {navigation.data.sidebar.map((item) => (\n <SidebarItem key={item.label} item={item} />\n ))}\n </DrawerContent>\n </>\n );\n};\n","import { Helmet } from \"@zudoku/react-helmet-async\";\nimport { PanelLeftIcon } from \"lucide-react\";\nimport { Suspense, useEffect, useRef, type ReactNode } from \"react\";\nimport { Outlet, useLocation } from \"react-router-dom\";\nimport { Drawer, DrawerTrigger } from \"../ui/Drawer.js\";\nimport { cn } from \"../util/cn.js\";\nimport { useScrollToAnchor } from \"../util/useScrollToAnchor.js\";\nimport { useScrollToTop } from \"../util/useScrollToTop.js\";\nimport { useViewportAnchor } from \"./context/ViewportAnchorContext.js\";\nimport { useZudoku } from \"./context/ZudokuContext.js\";\nimport { Header } from \"./Header.js\";\nimport { Sidebar } from \"./navigation/Sidebar.js\";\nimport { Slotlet } from \"./SlotletProvider.js\";\nimport { Spinner } from \"./Spinner.js\";\n\nexport const Layout = ({ children }: { children?: ReactNode }) => {\n const location = useLocation();\n const { setActiveAnchor } = useViewportAnchor();\n const { meta, authentication } = useZudoku();\n\n useScrollToAnchor();\n useScrollToTop();\n\n const previousLocationPath = useRef(location.pathname);\n\n useEffect(() => {\n // Initialize the authentication plugin\n authentication?.pageLoad?.();\n }, [authentication]);\n\n useEffect(() => {\n // always reset on location change\n if (location.pathname !== previousLocationPath.current) {\n setActiveAnchor(\"\");\n }\n previousLocationPath.current = location.pathname;\n }, [location.pathname, setActiveAnchor]);\n\n return (\n <>\n {import.meta.env.MODE === \"standalone\" && (\n <style>{`:root { --top-nav-height: 0px; }`}</style>\n )}\n <Helmet titleTemplate={meta?.title}>\n {meta?.description && (\n <meta name=\"description\" content={meta.description} />\n )}\n {meta?.favicon && <link rel=\"icon\" href={meta.favicon} />}\n </Helmet>\n <Slotlet name=\"layout-before-head\" />\n <Header />\n <Slotlet name=\"layout-after-head\" />\n\n <div className=\"w-full max-w-screen-2xl mx-auto px-10 lg:px-12\">\n <Suspense\n fallback={\n <main className=\"grid h-[calc(100vh-var(--header-height))] place-items-center\">\n <Spinner />\n </main>\n }\n >\n <Drawer direction=\"left\">\n <Sidebar />\n <div\n className={cn(\n \"lg:hidden -mx-10 px-10 py-2 sticky bg-background/80 backdrop-blur z-10 top-0 left-0 right-0 border-b\",\n \"peer-data-[navigation=false]:hidden\",\n )}\n >\n <DrawerTrigger className=\"flex items-center gap-2\">\n <PanelLeftIcon size={16} strokeWidth={1.5} />\n <span className=\"text-sm\">Menu</span>\n </DrawerTrigger>\n </div>\n <main\n className={cn(\n \"h-full dark:border-white/10 translate-x-0\",\n \"lg:overflow-visible\",\n // This works in tandem with the `SidebarWrapper` component\n \"lg:peer-data-[navigation=true]:w-[calc(100%-var(--side-nav-width))]\",\n \"lg:peer-data-[navigation=true]:translate-x-[--side-nav-width] lg:peer-data-[navigation=true]:pl-12\",\n )}\n >\n <Slotlet name=\"zudoku-before-content\" />\n {children ?? <Outlet />}\n <Slotlet name=\"zudoku-after-content\" />\n </main>\n </Drawer>\n </Suspense>\n </div>\n </>\n );\n};\n","import { useMDXComponents as useMDXComponentsImport } from \"@mdx-js/react\";\nimport { Helmet } from \"@zudoku/react-helmet-async\";\nimport { Link as LinkImport } from \"react-router-dom\";\nimport { useAuthState } from \"../authentication/state.js\";\nimport { RouterError as RouterErrorImport } from \"../errors/RouterError.js\";\nimport { ServerError as ServerErrorImport } from \"../errors/ServerError.js\";\nimport { Button as ButtonImport } from \"../ui/Button.js\";\nimport { Callout as CalloutImport } from \"../ui/Callout.js\";\nimport {\n Bootstrap as BootstrapImport,\n BootstrapStatic as BootstrapStaticImport,\n} from \"./Bootstrap.js\";\nimport { ClientOnly as ClientOnlyImport } from \"./ClientOnly.js\";\nimport { DevPortal as DevPortalImport } from \"./DevPortal.js\";\nimport { Layout as LayoutImport } from \"./Layout.js\";\nimport { useZudoku as useZudokuImport } from \"./context/ZudokuContext.js\";\nexport const useMDXComponents = /*@__PURE__*/ useMDXComponentsImport;\nexport const DevPortal = /*@__PURE__*/ DevPortalImport;\nexport const Layout = /*@__PURE__*/ LayoutImport;\nexport const RouterError = /*@__PURE__*/ RouterErrorImport;\nexport const ServerError = /*@__PURE__*/ ServerErrorImport;\nexport const Bootstrap = /*@__PURE__*/ BootstrapImport;\nexport const BootstrapStatic = /*@__PURE__*/ BootstrapStaticImport;\n\nexport const Head = /*@__PURE__*/ Helmet;\n\nexport const useZudoku = /*@__PURE__*/ useZudokuImport;\nexport const useAuth = /*@__PURE__*/ useAuthState;\nexport const Zudoku = /*@__PURE__*/ DevPortalImport;\n\nexport const Callout = /*@__PURE__*/ CalloutImport;\nexport const ClientOnly = /*@__PURE__*/ ClientOnlyImport;\nexport const Button = /*@__PURE__*/ ButtonImport;\nexport const Link: typeof LinkImport = /*@__PURE__*/ LinkImport;\n"],"names":["ServerError","error","jsx","ErrorAlert","server","React","require$$0","router","require$$1","reactRouter","require$$2","reactRouterDom","require$$3","_interopNamespace","e","n","k","d","React__namespace","StaticRouter","basename","children","locationProp","future","action","location","staticNavigator","getStatelessNavigator","StaticRouterProvider","context","router$1","hydrate","nonce","dataRouterContext","fetchersContext","hydrateScript","data","serializeErrors","htmlEscape","state","DataRoutes","routes","errors","entries","serialized","key","val","createHref","encodeLocation","to","delta","createStaticHandler","opts","createStaticRouter","manifest","dataRoutes","matches","match","route","msg","method","_a","_b","href","encoded","ABSOLUTE_URL_REGEX","ESCAPE_LOOKUP","ESCAPE_REGEX","str","StaticRouterProvider_1","Bootstrap","StrictMode","HelmetProvider","StaggeredRenderContext","RouterProvider","BootstrapStatic","helmetContext","QueryCache","Subscribable","config","__privateAdd","_queries","__privateSet","client","options","queryKey","queryHash","hashQueryKeyByOptions","query","Query","__privateGet","queryInMap","notifyManager","filters","defaultedFilters","matchQuery","queries","event","listener","MutationCache","_mutations","_mutationId","mutation","Mutation","__privateWrapper","scope","scopeFor","mutations","x","firstPendingMutation","m","foundMutation","matchMutation","pausedMutations","noop","infiniteQueryBehavior","pages","direction","_c","oldPages","_d","oldPageParams","_e","result","currentPage","fetchFn","cancelled","addSignalProperty","object","queryFn","ensureQueryFn","fetchPage","param","previous","queryFnContext","page","maxPages","addTo","addToStart","addToEnd","pageParamFn","getPreviousPageParam","getNextPageParam","oldData","remainingPages","pageParams","lastIndex","QueryClient","_queryCache","_mutationCache","_defaultOptions","_queryDefaults","_mutationDefaults","_mountCount","_unsubscribeFocus","_unsubscribeOnline","focusManager","focused","onlineManager","online","cachedData","defaultedOptions","resolveStaleTime","updater","prevData","functionalUpdate","queryCache","refetchFilters","cancelOptions","defaultedCancelOptions","promises","fetchOptions","promise","hashKey","defaults","queryDefault","partialMatchKey","mutationKey","skipToken","ErrorBoundaryContext","createContext","initialState","ErrorBoundary","Component","props","_this$props$onReset","_this$props","_len","args","_key","info","_this$props$onError","_this$props2","prevProps","prevState","didCatch","resetKeys","hasArrayChanged","_this$props$onReset2","_this$props3","fallbackRender","FallbackComponent","fallback","childToRender","createElement","a","b","item","index","isProfileMenuPlugin","obj","isNavigationPlugin","isSearchPlugin","needsInitialization","hasHead","isMdxProviderPlugin","isApiIdentityPlugin","queryClient","DevPortalContext","__publicField","plugin","path","joinPath","nav","request","accessToken","TopLevelError","resetErrorBoundary","root","cb","COLOR_MAP","Banner","useZudoku","isBannerOpen","setIsBannerOpen","useState","mappedColor","style","jsxs","cn","CircleXIcon","Search","ctx","isOpen","setIsOpen","onClose","useCallback","useEffect","onKeyDown","searchPlugin","Fragment","SearchIcon","Suspense","isHiddenItem","isAuthenticated","TopNavigation","topNavigation","useAuth","TopNavItem","id","label","defaultLink","sidebars","useCurrentNavigation","currentSidebar","first","traverseSidebar","isActive","Link","cx","MobileTopNavigation","Drawer","DrawerTrigger","MenuIcon","DrawerContent","VisuallyHidden","DrawerTitle","NavLink","DrawerClose","RecursiveMenu","DropdownMenuSub","DropdownMenuSubTrigger","DropdownMenuPortal","DropdownMenuSubContent","i","DropdownMenuItem","Header","memo","auth","isDark","toggleTheme","useTheme","profile","isAuthEnabled","plugins","accountItems","ThemeIcon","MoonStarIcon","SunIcon","Slotlet","Button","DropdownMenu","DropdownMenuTrigger","DropdownMenuContent","DropdownMenuLabel","DropdownMenuSeparator","DEFAULT_COMPONENTS","ComponentsContext","ComponentsProvider","ThemeProvider","dark","setDark","theme","prefersDark","toggle","toggled","value","ThemeContext","ZudokuProvider","useSuspenseQuery","ZudokuReactContext","DevPortalInner","components","useMemo","mdxComponents","acc","curr","MdxComponents","stagger","useContext","didNavigate","setDidNavigate","staggeredValue","navigation","useNavigation","devPortalContext","heads","QueryClientProvider","Helmet","MDXProvider","SlotletProvider","ViewportAnchorProvider","Outlet","Inner","DevPortal","SidebarCategory","category","level","isCategoryOpen","useIsCategoryOpen","hasInteracted","setHasInteracted","isCollapsible","isCollapsed","isDefaultOpen","open","setOpen","useMatch","ToggleButton","prev","ChevronRightIcon","Collapsible","navigationListItem","SidebarItem","cva","DATA_ANCHOR_ATTR","activeAnchor","useViewportAnchor","searchParams","useSearchParams","SidebarBadge","AnchorLink","ExternalLinkIcon","scrollIntoViewIfNeeded","element","rect","useScrollToAnchor","useLocation","setActiveAnchor","hash","scrollToElement","link","observer","_","obs","useScrollToTop","previousPath","useRef","SidebarWrapper","forwardRef","className","pushMainContent","ref","Sidebar","navRef","Layout","meta","authentication","previousLocationPath","Spinner","PanelLeftIcon","useMDXComponents","useMDXComponentsImport","DevPortalImport","LayoutImport","RouterError","RouterErrorImport","ServerErrorImport","BootstrapImport","BootstrapStaticImport","Head","useZudokuImport","useAuthState","Zudoku","Callout","CalloutImport","ClientOnly","ClientOnlyImport","ButtonImport","LinkImport"],"mappings":"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","x_google_ignoreList":[1,3,4,5,6,7]}
1
+ {"version":3,"file":"zudoku.components.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -0,0 +1,28 @@
1
+ import { z as p, u as a } from "./index-Bm35Tkgf.js";
2
+ import { a as c } from "./hook-DbUCLQNg.js";
3
+ import { c as n, d as f } from "./ZudokuContext-CLl5w57E.js";
4
+ import { C as H } from "./ZudokuContext-CLl5w57E.js";
5
+ import { u as d } from "./useExposedProps-KcgXHKeE.js";
6
+ import { useState as i, useEffect as E } from "react";
7
+ function C(e, s) {
8
+ const t = n(), [r, o] = i();
9
+ return E(() => t.addEventListener(e, (...u) => {
10
+ if (s) {
11
+ const m = s(...u);
12
+ o(m);
13
+ } else
14
+ o(u);
15
+ }), [t, e, s]), r;
16
+ }
17
+ const v = C, z = p, L = d, M = a, P = c, S = n, X = f;
18
+ export {
19
+ H as CACHE_KEYS,
20
+ P as useAuth,
21
+ X as useCache,
22
+ v as useEvent,
23
+ L as useExposedProps,
24
+ M as useMDXComponents,
25
+ z as useTheme,
26
+ S as useZudoku
27
+ };
28
+ //# sourceMappingURL=zudoku.hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zudoku.hooks.js","sources":["../src/lib/hooks/useEvent.ts","../src/lib/hooks/index.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useZudoku } from \"../components/context/ZudokuContext.js\";\nimport type { ZudokuEvents } from \"../core/ZudokuContext.js\";\n\ntype EventParameters<Event extends keyof ZudokuEvents> = Parameters<\n ZudokuEvents[Event]\n>;\n\n/**\n * Hook to subscribe to Zudoku events with automatic cleanup\n * @param event The event to subscribe to\n * @param callback Optional callback to be called when the event is emitted\n * @returns The latest event data if no callback is provided, or the callback's return value if it returns something\n */\nexport function useEvent<E extends keyof ZudokuEvents>(\n event: E,\n): EventParameters<E>;\nexport function useEvent<E extends keyof ZudokuEvents, R>(\n event: E,\n callback: (...args: EventParameters<E>) => R,\n): R;\nexport function useEvent<E extends keyof ZudokuEvents, R>(\n event: E,\n callback?: (...args: EventParameters<E>) => R,\n) {\n const zudoku = useZudoku();\n const [latestData, setLatestData] = useState<R | EventParameters<E>>();\n\n useEffect(() => {\n return zudoku.addEventListener(event, ((...args: EventParameters<E>) => {\n if (callback) {\n const result = callback(...args);\n setLatestData(result);\n } else {\n setLatestData(args);\n }\n }) as ZudokuEvents[E]);\n }, [zudoku, event, callback]);\n\n return latestData;\n}\n","import { useMDXComponents as useMDXComponentsImport } from \"@mdx-js/react\";\nimport { useTheme as useThemeImport } from \"next-themes\";\nimport { useAuth as useAuthImport } from \"../authentication/hook.js\";\nimport { CACHE_KEYS, useCache as useCacheImport } from \"../components/cache.js\";\nimport { useZudoku as useZudokuImport } from \"../components/context/ZudokuContext.js\";\nimport { useExposedProps as useExposedPropsImport } from \"../util/useExposedProps.js\";\nimport { useEvent as useEventImport } from \"./useEvent.js\";\n\nexport const useEvent = /*@__PURE__*/ useEventImport;\nexport const useTheme = /*@__PURE__*/ useThemeImport;\nexport const useExposedProps = /*@__PURE__*/ useExposedPropsImport;\nexport const useMDXComponents = /*@__PURE__*/ useMDXComponentsImport;\nexport const useAuth = /*@__PURE__*/ useAuthImport;\nexport const useZudoku = /*@__PURE__*/ useZudokuImport;\nexport const useCache = /*@__PURE__*/ useCacheImport;\nexport { CACHE_KEYS };\n"],"names":["useEvent","event","callback","zudoku","useZudoku","latestData","setLatestData","useState","useEffect","args","result","useEventImport","useTheme","useThemeImport","useExposedProps","useExposedPropsImport","useMDXComponents","useMDXComponentsImport","useAuth","useAuthImport","useZudokuImport","useCache","useCacheImport"],"mappings":";;;;;;AAqBO,SAASA,EACdC,GACAC,GACA;AACA,QAAMC,IAASC,EAAA,GACT,CAACC,GAAYC,CAAa,IAAIC,EAAA;AAEpC,SAAAC,EAAU,MACDL,EAAO,iBAAiBF,GAAQ,IAAIQ,MAA6B;AACtE,QAAIP,GAAU;AACZ,YAAMQ,IAASR,EAAS,GAAGO,CAAI;AAC/B,MAAAH,EAAcI,CAAM;AAAA,IACtB;AACE,MAAAJ,EAAcG,CAAI;AAAA,EAEtB,CAAqB,GACpB,CAACN,GAAQF,GAAOC,CAAQ,CAAC,GAErBG;AACT;AChCO,MAAML,IAAyBW,GACzBC,IAAyBC,GACzBC,IAAgCC,GAChCC,IAAiCC,GACjCC,IAAwBC,GACxBf,IAA0BgB,GAC1BC,IAAyBC;"}
@@ -1,2 +1,12 @@
1
+ import { CircleDashed as e } from "lucide-react";
1
2
  export * from "lucide-react";
3
+ import { j as o } from "./jsx-runtime-C5mzlN2N.js";
4
+ import { TooltipProvider as t, Tooltip as i, TooltipTrigger as s, TooltipContent as n } from "./ui/Tooltip.js";
5
+ const d = (r) => /* @__PURE__ */ o.jsx(t, { children: /* @__PURE__ */ o.jsxs(i, { children: [
6
+ /* @__PURE__ */ o.jsx(s, { className: "text-red-500", children: /* @__PURE__ */ o.jsx(e, { ...r }) }),
7
+ /* @__PURE__ */ o.jsx(n, { children: "Icon not found, see: https://lucide.dev/icons/" })
8
+ ] }) });
9
+ export {
10
+ d as MissingIcon
11
+ };
2
12
  //# sourceMappingURL=zudoku.icons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zudoku.icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"zudoku.icons.js","sources":["../src/lib/MissingIcon.tsx"],"sourcesContent":["import { CircleDashed, LucideProps } from \"lucide-react\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"./ui/Tooltip.js\";\n\nexport const MissingIcon = (props: LucideProps) => {\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger className=\"text-red-500\">\n <CircleDashed {...props} />\n </TooltipTrigger>\n <TooltipContent>\n Icon not found, see: https://lucide.dev/icons/\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n};\n"],"names":["MissingIcon","props","jsx","TooltipProvider","jsxs","Tooltip","TooltipTrigger","CircleDashed","TooltipContent"],"mappings":";;;;AAQO,MAAMA,IAAc,CAACC,MAExBC,gBAAAA,EAAAA,IAACC,GAAA,EACC,UAAAC,gBAAAA,EAAAA,KAACC,GAAA,EACC,UAAA;AAAA,EAAAH,gBAAAA,EAAAA,IAACI,KAAe,WAAU,gBACxB,gCAACC,GAAA,EAAc,GAAGN,GAAO,EAAA,CAC3B;AAAA,EACAC,gBAAAA,EAAAA,IAACM,KAAe,UAAA,iDAAA,CAEhB;AAAA,EAAA,CACF,EAAA,CACF;"}
@@ -0,0 +1,118 @@
1
+ import { j as t } from "./jsx-runtime-C5mzlN2N.js";
2
+ import { s as f } from "./index-BkW9tJ6j.js";
3
+ import { d as b, m as j } from "./chunk-QMGIS6GS-CEOk3lro.js";
4
+ import { b as x, j as d } from "./ZudokuContext-CLl5w57E.js";
5
+ import { H as v } from "./RouteGuard-BxsRhHRt.js";
6
+ import { L as y } from "./index-BtBsh6LU.js";
7
+ import { u as N } from "./hook-DbUCLQNg.js";
8
+ import { H as k, M as S } from "./Slot-DAyXieeZ.js";
9
+ const w = ({
10
+ items: o,
11
+ filterCatalogItems: r = (n) => n,
12
+ label: c = "API Library",
13
+ categoryLabel: s
14
+ }) => {
15
+ const n = N(), a = b({ path: "/catalog/:category" })?.params.category, l = x({
16
+ queryFn: () => r(o, { auth: n }),
17
+ queryKey: ["catalogItems", n]
18
+ }), m = a ? { "data-pagefind-ignore": "all" } : {};
19
+ return /* @__PURE__ */ t.jsxs("section", { className: "pt-(--padding-content-top)", ...m, children: [
20
+ /* @__PURE__ */ t.jsx(v, { children: /* @__PURE__ */ t.jsxs("title", { children: [
21
+ s ? `${s} - ` : "",
22
+ c
23
+ ] }) }),
24
+ /* @__PURE__ */ t.jsxs("div", { className: "grid gap-4", children: [
25
+ /* @__PURE__ */ t.jsxs(k, { level: 2, children: [
26
+ c,
27
+ s && ` - ${s}`
28
+ ] }),
29
+ /* @__PURE__ */ t.jsx("div", { className: "grid grid-cols-2 gap-4", children: l.data.filter(
30
+ (e) => !a || e.categories.find(
31
+ (i) => i.tags.find((g) => h(i.label, g) === a)
32
+ )
33
+ ).map((e) => /* @__PURE__ */ t.jsx(
34
+ y,
35
+ {
36
+ to: d(e.path),
37
+ className: "no-underline hover:!text-foreground",
38
+ children: /* @__PURE__ */ t.jsxs("div", { className: "border h-full rounded-lg p-4 flex flex-col gap-2 cursor-pointer hover:bg-border/20 font-normal", children: [
39
+ /* @__PURE__ */ t.jsx("span", { className: "font-semibold", children: e.label }),
40
+ /* @__PURE__ */ t.jsx(
41
+ S,
42
+ {
43
+ className: "text-sm whitespace-pre-wrap mb-6 line-clamp-2",
44
+ content: e.description
45
+ }
46
+ )
47
+ ] })
48
+ },
49
+ e.path
50
+ )) })
51
+ ] })
52
+ ] });
53
+ }, h = (o, r) => f(`${o}-${r}`), A = ({
54
+ path: o,
55
+ items: r,
56
+ label: c,
57
+ categories: s = [],
58
+ filterCatalogItems: n
59
+ }) => {
60
+ const p = Object.fromEntries(
61
+ s.flatMap(
62
+ (a) => [void 0, ...a.tags].map((l) => [
63
+ d(o, l ? h(a.label, l) : void 0),
64
+ l
65
+ ])
66
+ )
67
+ );
68
+ return {
69
+ getNavigation: async (a) => {
70
+ if (!Object.keys(p).some(
71
+ (e) => j(e, a)
72
+ ))
73
+ return [];
74
+ const m = s.map((e) => ({
75
+ type: "category",
76
+ label: e.label,
77
+ collapsible: !1,
78
+ items: e.tags.map((i) => ({
79
+ type: "link",
80
+ to: d(o, h(e.label, i)),
81
+ label: i,
82
+ badge: {
83
+ label: String(
84
+ r.filter(
85
+ (g) => g.categories.find((u) => u.tags.includes(i))
86
+ ).length
87
+ ),
88
+ color: "outline"
89
+ }
90
+ }))
91
+ }));
92
+ return m.unshift({
93
+ type: "link",
94
+ to: d(o),
95
+ label: "Overview",
96
+ badge: { label: String(r.length), color: "outline" }
97
+ }), m;
98
+ },
99
+ getRoutes: () => Object.entries(p).map(([a, l]) => ({
100
+ path: a,
101
+ element: /* @__PURE__ */ t.jsx(
102
+ w,
103
+ {
104
+ label: c,
105
+ categoryLabel: l,
106
+ items: r,
107
+ filterCatalogItems: n,
108
+ categories: s
109
+ }
110
+ )
111
+ }))
112
+ };
113
+ };
114
+ export {
115
+ A as apiCatalogPlugin,
116
+ h as getKey
117
+ };
118
+ //# sourceMappingURL=zudoku.plugin-api-catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zudoku.plugin-api-catalog.js","sources":["../src/lib/plugins/api-catalog/Catalog.tsx","../src/lib/plugins/api-catalog/index.tsx"],"sourcesContent":["import { useSuspenseQuery } from \"@tanstack/react-query\";\nimport { Helmet } from \"@zudoku/react-helmet-async\";\nimport { useMatch } from \"react-router\";\nimport { Link } from \"zudoku/components\";\nimport { useAuthState } from \"../../authentication/state.js\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { Markdown } from \"../../components/Markdown.js\";\nimport { joinUrl } from \"../../util/joinUrl.js\";\nimport { type ApiCatalogPluginOptions, getKey } from \"./index.js\";\n\nexport const Catalog = ({\n items,\n filterCatalogItems = (items) => items,\n label = \"API Library\",\n categoryLabel,\n}: Omit<ApiCatalogPluginOptions, \"path\"> & {\n categoryLabel?: string;\n}) => {\n const auth = useAuthState();\n const match = useMatch({ path: \"/catalog/:category\" });\n const activeCategory = match?.params.category;\n\n const catalogItems = useSuspenseQuery({\n queryFn: () => filterCatalogItems(items, { auth }),\n queryKey: [\"catalogItems\", auth],\n });\n\n // Only index the overview page, ignore the rest\n const dataSet = activeCategory ? { \"data-pagefind-ignore\": \"all\" } : {};\n\n return (\n <section className=\"pt-(--padding-content-top)\" {...dataSet}>\n <Helmet>\n <title>\n {categoryLabel ? `${categoryLabel} - ` : \"\"}\n {label}\n </title>\n </Helmet>\n <div className=\"grid gap-4\">\n <Heading level={2}>\n {label}\n {categoryLabel && ` - ${categoryLabel}`}\n </Heading>\n\n <div className=\"grid grid-cols-2 gap-4\">\n {catalogItems.data\n .filter(\n (api) =>\n !activeCategory ||\n api.categories.find((c) =>\n c.tags.find((t) => getKey(c.label, t) === activeCategory),\n ),\n )\n .map((api) => (\n <Link\n to={joinUrl(api.path)}\n className=\"no-underline hover:!text-foreground\"\n key={api.path}\n >\n <div className=\"border h-full rounded-lg p-4 flex flex-col gap-2 cursor-pointer hover:bg-border/20 font-normal\">\n <span className=\"font-semibold\">{api.label}</span>\n <Markdown\n className=\"text-sm whitespace-pre-wrap mb-6 line-clamp-2\"\n content={api.description}\n />\n </div>\n </Link>\n ))}\n </div>\n </div>\n </section>\n );\n};\n","import slugify from \"@sindresorhus/slugify\";\nimport { matchPath } from \"react-router\";\nimport type { NavigationItem } from \"../../../config/validators/NavigationSchema.js\";\nimport type { AuthState } from \"../../authentication/state.js\";\nimport type { ZudokuPlugin } from \"../../core/plugins.js\";\nimport { joinUrl } from \"../../util/joinUrl.js\";\nimport { Catalog } from \"./Catalog.js\";\n\nexport const getKey = (category: string, tag: string) =>\n slugify(`${category}-${tag}`);\n\nexport type ApiCatalogItem = {\n path: string;\n label: string;\n description: string;\n categories: CatalogCategory[];\n};\n\nexport type CatalogCategory = {\n label: string;\n tags: string[];\n};\n\nexport type ApiCatalogPluginOptions = {\n path: string;\n label: string;\n categories?: CatalogCategory[];\n items: ApiCatalogItem[];\n filterCatalogItems?: FilterCatalogItemsFn;\n};\n\nexport type CatalogContext<ProviderData = unknown> = {\n auth: AuthState<ProviderData>;\n};\n\nexport type FilterCatalogItemsFn<ProviderData = unknown> = (\n items: ApiCatalogItem[],\n { auth }: CatalogContext<ProviderData>,\n) => ApiCatalogItem[];\n\nexport const apiCatalogPlugin = ({\n path,\n items,\n label,\n categories = [],\n filterCatalogItems,\n}: {\n path: string;\n label: string;\n categories?: CatalogCategory[];\n items: ApiCatalogItem[];\n filterCatalogItems?: FilterCatalogItemsFn;\n}): ZudokuPlugin => {\n const paths = Object.fromEntries(\n categories.flatMap((category) =>\n [undefined, ...category.tags].map((tag) => [\n joinUrl(path, tag ? getKey(category.label, tag) : undefined),\n tag,\n ]),\n ),\n );\n\n return {\n getNavigation: async (currentPath) => {\n const matches = Object.keys(paths).some((path) =>\n matchPath(path, currentPath),\n );\n\n if (!matches) {\n return [];\n }\n\n const navigation: NavigationItem[] = categories.map((category) => ({\n type: \"category\",\n label: category.label,\n collapsible: false,\n items: category.tags.map((tag) => ({\n type: \"link\",\n to: joinUrl(path, getKey(category.label, tag)),\n label: tag,\n badge: {\n label: String(\n items.filter((api) =>\n api.categories.find((c) => c.tags.includes(tag)),\n ).length,\n ),\n color: \"outline\",\n },\n })),\n }));\n\n navigation.unshift({\n type: \"link\",\n to: joinUrl(path),\n label: \"Overview\",\n badge: { label: String(items.length), color: \"outline\" },\n });\n\n return navigation;\n },\n getRoutes: () =>\n Object.entries(paths).map(([path, tag]) => ({\n path,\n element: (\n <Catalog\n label={label}\n categoryLabel={tag}\n items={items}\n filterCatalogItems={filterCatalogItems}\n categories={categories}\n />\n ),\n })),\n };\n};\n"],"names":["Catalog","items","filterCatalogItems","label","categoryLabel","auth","useAuthState","activeCategory","useMatch","catalogItems","useSuspenseQuery","dataSet","jsxs","jsx","Helmet","Heading","api","c","t","getKey","Link","joinUrl","Markdown","category","tag","slugify","apiCatalogPlugin","path","categories","paths","currentPath","matchPath","navigation"],"mappings":"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"}