zudoku 0.0.0-e5be921 → 0.0.0-e614aaa

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 (903) hide show
  1. package/cli.js +3 -0
  2. package/dist/app/demo.js +1 -2
  3. package/dist/app/demo.js.map +1 -1
  4. package/dist/app/entry.client.d.ts +5 -0
  5. package/dist/app/entry.client.js +2 -15
  6. package/dist/app/entry.client.js.map +1 -1
  7. package/dist/app/entry.server.d.ts +1 -1
  8. package/dist/app/entry.server.js +1 -2
  9. package/dist/app/entry.server.js.map +1 -1
  10. package/dist/app/main.d.ts +2 -2
  11. package/dist/app/main.js +19 -9
  12. package/dist/app/main.js.map +1 -1
  13. package/dist/app/sentry.js +1 -1
  14. package/dist/app/sentry.js.map +1 -1
  15. package/dist/app/standalone.js +1 -2
  16. package/dist/app/standalone.js.map +1 -1
  17. package/dist/app/tailwind.js +6 -0
  18. package/dist/app/tailwind.js.map +1 -1
  19. package/dist/cli/build/handler.d.ts +1 -3
  20. package/dist/cli/build/handler.js +7 -0
  21. package/dist/cli/build/handler.js.map +1 -1
  22. package/dist/cli/cli.js +5 -0
  23. package/dist/cli/cli.js.map +1 -1
  24. package/dist/cli/cmds/build.d.ts +11 -3
  25. package/dist/cli/cmds/build.js +21 -13
  26. package/dist/cli/cmds/build.js.map +1 -1
  27. package/dist/cli/cmds/dev.js +5 -0
  28. package/dist/cli/cmds/dev.js.map +1 -1
  29. package/dist/cli/cmds/preview.d.ts +16 -0
  30. package/dist/cli/cmds/preview.js +25 -0
  31. package/dist/cli/cmds/preview.js.map +1 -0
  32. package/dist/cli/common/output.js.map +1 -1
  33. package/dist/cli/common/utils/ports.d.ts +1 -1
  34. package/dist/cli/common/utils/ports.js +16 -15
  35. package/dist/cli/common/utils/ports.js.map +1 -1
  36. package/dist/cli/dev/handler.d.ts +1 -0
  37. package/dist/cli/dev/handler.js +14 -12
  38. package/dist/cli/dev/handler.js.map +1 -1
  39. package/dist/cli/preview/handler.d.ts +3 -0
  40. package/dist/cli/preview/handler.js +37 -0
  41. package/dist/cli/preview/handler.js.map +1 -0
  42. package/dist/config/common.d.ts +5 -2
  43. package/dist/config/config.d.ts +3 -7
  44. package/dist/config/loader.d.ts +4 -4
  45. package/dist/config/loader.js +11 -5
  46. package/dist/config/loader.js.map +1 -1
  47. package/dist/config/validators/InputSidebarSchema.d.ts +32 -17
  48. package/dist/config/validators/InputSidebarSchema.js +11 -1
  49. package/dist/config/validators/InputSidebarSchema.js.map +1 -1
  50. package/dist/config/validators/common.d.ts +821 -194
  51. package/dist/config/validators/common.js +71 -16
  52. package/dist/config/validators/common.js.map +1 -1
  53. package/dist/config/validators/icon-types.d.ts +1 -1
  54. package/dist/config/validators/validate.d.ts +378 -131
  55. package/dist/index.d.ts +1 -0
  56. package/dist/index.js +1 -0
  57. package/dist/index.js.map +1 -1
  58. package/dist/lib/MissingIcon.d.ts +2 -0
  59. package/dist/lib/MissingIcon.js +7 -0
  60. package/dist/lib/MissingIcon.js.map +1 -0
  61. package/dist/lib/authentication/components/CallbackHandler.js +1 -1
  62. package/dist/lib/authentication/components/CallbackHandler.js.map +1 -1
  63. package/dist/lib/authentication/components/SignIn.js +1 -1
  64. package/dist/lib/authentication/components/SignIn.js.map +1 -1
  65. package/dist/lib/authentication/components/SignOut.js +2 -2
  66. package/dist/lib/authentication/components/SignOut.js.map +1 -1
  67. package/dist/lib/authentication/providers/auth0.d.ts +2 -2
  68. package/dist/lib/authentication/providers/auth0.js +2 -1
  69. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  70. package/dist/lib/authentication/providers/clerk.js +35 -12
  71. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  72. package/dist/lib/authentication/providers/openid.d.ts +11 -3
  73. package/dist/lib/authentication/providers/openid.js +17 -9
  74. package/dist/lib/authentication/providers/openid.js.map +1 -1
  75. package/dist/lib/authentication/state.d.ts +9 -0
  76. package/dist/lib/authentication/state.js +19 -2
  77. package/dist/lib/authentication/state.js.map +1 -1
  78. package/dist/lib/components/AnchorLink.d.ts +1 -1
  79. package/dist/lib/components/AnchorLink.js +6 -3
  80. package/dist/lib/components/AnchorLink.js.map +1 -1
  81. package/dist/lib/components/Autocomplete.d.ts +13 -0
  82. package/dist/lib/components/Autocomplete.js +47 -0
  83. package/dist/lib/components/Autocomplete.js.map +1 -0
  84. package/dist/lib/components/Banner.js +1 -1
  85. package/dist/lib/components/Banner.js.map +1 -1
  86. package/dist/lib/components/Bootstrap.d.ts +1 -2
  87. package/dist/lib/components/Bootstrap.js +3 -3
  88. package/dist/lib/components/Bootstrap.js.map +1 -1
  89. package/dist/lib/components/Header.js +15 -15
  90. package/dist/lib/components/Header.js.map +1 -1
  91. package/dist/lib/components/Heading.d.ts +2 -2
  92. package/dist/lib/components/Layout.js +2 -2
  93. package/dist/lib/components/Layout.js.map +1 -1
  94. package/dist/lib/components/Markdown.d.ts +2 -2
  95. package/dist/lib/components/Markdown.js +3 -1
  96. package/dist/lib/components/Markdown.js.map +1 -1
  97. package/dist/lib/components/MobileTopNavigation.js +1 -1
  98. package/dist/lib/components/NotFoundPage.js +1 -1
  99. package/dist/lib/components/NotFoundPage.js.map +1 -1
  100. package/dist/lib/components/PathRenderer.d.ts +11 -0
  101. package/dist/lib/components/PathRenderer.js +28 -0
  102. package/dist/lib/components/PathRenderer.js.map +1 -0
  103. package/dist/lib/components/SlotletProvider.d.ts +2 -2
  104. package/dist/lib/components/StatusPage.d.ts +7 -0
  105. package/dist/lib/components/StatusPage.js +71 -0
  106. package/dist/lib/components/StatusPage.js.map +1 -0
  107. package/dist/lib/components/ThemeSwitch.js +8 -5
  108. package/dist/lib/components/ThemeSwitch.js.map +1 -1
  109. package/dist/lib/components/TopNavigation.js +5 -4
  110. package/dist/lib/components/TopNavigation.js.map +1 -1
  111. package/dist/lib/components/Zudoku.d.ts +1 -1
  112. package/dist/lib/components/Zudoku.js +8 -7
  113. package/dist/lib/components/Zudoku.js.map +1 -1
  114. package/dist/lib/components/cache.d.ts +6 -0
  115. package/dist/lib/components/cache.js +13 -0
  116. package/dist/lib/components/cache.js.map +1 -0
  117. package/dist/lib/components/context/RouterEventsEmitter.d.ts +1 -0
  118. package/dist/lib/components/context/RouterEventsEmitter.js +17 -0
  119. package/dist/lib/components/context/RouterEventsEmitter.js.map +1 -0
  120. package/dist/lib/components/context/ViewportAnchorContext.js +16 -4
  121. package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
  122. package/dist/lib/components/context/ZudokuContext.d.ts +1 -1
  123. package/dist/lib/components/context/ZudokuContext.js +11 -4
  124. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  125. package/dist/lib/components/index.d.ts +32 -15
  126. package/dist/lib/components/index.js +17 -4
  127. package/dist/lib/components/index.js.map +1 -1
  128. package/dist/lib/components/navigation/Sidebar.js +7 -2
  129. package/dist/lib/components/navigation/Sidebar.js.map +1 -1
  130. package/dist/lib/components/navigation/SidebarBadge.d.ts +6 -3
  131. package/dist/lib/components/navigation/SidebarBadge.js +13 -11
  132. package/dist/lib/components/navigation/SidebarBadge.js.map +1 -1
  133. package/dist/lib/components/navigation/SidebarCategory.js +18 -16
  134. package/dist/lib/components/navigation/SidebarCategory.js.map +1 -1
  135. package/dist/lib/components/navigation/SidebarItem.js +4 -3
  136. package/dist/lib/components/navigation/SidebarItem.js.map +1 -1
  137. package/dist/lib/components/navigation/SidebarWrapper.js +1 -1
  138. package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -1
  139. package/dist/lib/components/navigation/utils.js +1 -1
  140. package/dist/lib/components/navigation/utils.js.map +1 -1
  141. package/dist/lib/core/RouteGuard.d.ts +1 -0
  142. package/dist/lib/core/RouteGuard.js +45 -0
  143. package/dist/lib/core/RouteGuard.js.map +1 -0
  144. package/dist/lib/core/ZudokuContext.d.ts +15 -3
  145. package/dist/lib/core/ZudokuContext.js +26 -8
  146. package/dist/lib/core/ZudokuContext.js.map +1 -1
  147. package/dist/lib/core/plugins.d.ts +13 -7
  148. package/dist/lib/core/plugins.js +3 -0
  149. package/dist/lib/core/plugins.js.map +1 -1
  150. package/dist/lib/errors/RouterError.js +1 -1
  151. package/dist/lib/errors/RouterError.js.map +1 -1
  152. package/dist/lib/hooks/index.d.ts +3 -0
  153. package/dist/lib/hooks/index.js +5 -0
  154. package/dist/lib/hooks/index.js.map +1 -0
  155. package/dist/lib/hooks/useEvent.d.ts +11 -0
  156. package/dist/lib/hooks/useEvent.js +19 -0
  157. package/dist/lib/hooks/useEvent.js.map +1 -0
  158. package/dist/lib/hooks/useEvent.test.d.ts +1 -0
  159. package/dist/lib/hooks/useEvent.test.js +100 -0
  160. package/dist/lib/hooks/useEvent.test.js.map +1 -0
  161. package/dist/lib/icons.d.ts +1 -0
  162. package/dist/lib/icons.js +1 -0
  163. package/dist/lib/icons.js.map +1 -1
  164. package/dist/lib/oas/graphql/circular.d.ts +3 -0
  165. package/dist/lib/oas/graphql/circular.js +38 -0
  166. package/dist/lib/oas/graphql/circular.js.map +1 -0
  167. package/dist/lib/oas/graphql/index.d.ts +11 -0
  168. package/dist/lib/oas/graphql/index.js +93 -59
  169. package/dist/lib/oas/graphql/index.js.map +1 -1
  170. package/dist/lib/oas/parser/dereference/index.js +6 -3
  171. package/dist/lib/oas/parser/dereference/index.js.map +1 -1
  172. package/dist/lib/oas/parser/upgrade/index.js +19 -4
  173. package/dist/lib/oas/parser/upgrade/index.js.map +1 -1
  174. package/dist/lib/plugins/api-catalog/Catalog.d.ts +3 -5
  175. package/dist/lib/plugins/api-catalog/Catalog.js +23 -26
  176. package/dist/lib/plugins/api-catalog/Catalog.js.map +1 -1
  177. package/dist/lib/plugins/api-catalog/index.d.ts +9 -1
  178. package/dist/lib/plugins/api-catalog/index.js +37 -8
  179. package/dist/lib/plugins/api-catalog/index.js.map +1 -1
  180. package/dist/lib/plugins/api-keys/CreateApiKey.js +8 -4
  181. package/dist/lib/plugins/api-keys/CreateApiKey.js.map +1 -1
  182. package/dist/lib/plugins/api-keys/ProtectedRoute.js +1 -1
  183. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
  184. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +1 -1
  185. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -1
  186. package/dist/lib/plugins/api-keys/index.d.ts +1 -0
  187. package/dist/lib/plugins/api-keys/index.js +1 -0
  188. package/dist/lib/plugins/api-keys/index.js.map +1 -1
  189. package/dist/lib/plugins/markdown/MdxPage.js +8 -2
  190. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  191. package/dist/lib/plugins/markdown/index.d.ts +1 -0
  192. package/dist/lib/plugins/markdown/index.js.map +1 -1
  193. package/dist/lib/plugins/markdown/resolver.d.ts +0 -6
  194. package/dist/lib/plugins/markdown/resolver.js +0 -29
  195. package/dist/lib/plugins/markdown/resolver.js.map +1 -1
  196. package/dist/lib/plugins/openapi/CollapsibleCode.js +2 -1
  197. package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -1
  198. package/dist/lib/plugins/openapi/ColorizedParam.d.ts +10 -2
  199. package/dist/lib/plugins/openapi/ColorizedParam.js +18 -7
  200. package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
  201. package/dist/lib/plugins/openapi/Endpoint.d.ts +1 -1
  202. package/dist/lib/plugins/openapi/Endpoint.js +8 -7
  203. package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
  204. package/dist/lib/plugins/openapi/OasProvider.d.ts +8 -0
  205. package/dist/lib/plugins/openapi/OasProvider.js +29 -0
  206. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -0
  207. package/dist/lib/plugins/openapi/OperationList.d.ts +5 -2
  208. package/dist/lib/plugins/openapi/OperationList.js +39 -49
  209. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  210. package/dist/lib/plugins/openapi/OperationListItem.d.ts +4 -2
  211. package/dist/lib/plugins/openapi/OperationListItem.js +16 -5
  212. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  213. package/dist/lib/plugins/openapi/ParameterList.d.ts +2 -1
  214. package/dist/lib/plugins/openapi/ParameterList.js +3 -2
  215. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  216. package/dist/lib/plugins/openapi/ParameterListItem.js +3 -2
  217. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  218. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.d.ts +4 -2
  219. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +10 -3
  220. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
  221. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +3 -4
  222. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +5 -13
  223. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  224. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +7 -13
  225. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  226. package/dist/lib/plugins/openapi/Sidecar.js +22 -34
  227. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  228. package/dist/lib/plugins/openapi/SidecarBox.js +4 -4
  229. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  230. package/dist/lib/plugins/openapi/SidecarExamples.d.ts +9 -0
  231. package/dist/lib/plugins/openapi/SidecarExamples.js +68 -0
  232. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -0
  233. package/dist/lib/plugins/openapi/client/GraphQLClient.d.ts +1 -1
  234. package/dist/lib/plugins/openapi/client/GraphQLClient.js +22 -93
  235. package/dist/lib/plugins/openapi/client/GraphQLClient.js.map +1 -1
  236. package/dist/lib/plugins/openapi/client/createServer.d.ts +2 -1
  237. package/dist/lib/plugins/openapi/client/createServer.js +5 -2
  238. package/dist/lib/plugins/openapi/client/createServer.js.map +1 -1
  239. package/dist/lib/plugins/openapi/client/useCreateQuery.d.ts +1 -1
  240. package/dist/lib/plugins/openapi/client/useCreateQuery.js +2 -4
  241. package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -1
  242. package/dist/lib/plugins/openapi/context.d.ts +3 -3
  243. package/dist/lib/plugins/openapi/graphql/gql.d.ts +6 -2
  244. package/dist/lib/plugins/openapi/graphql/gql.js +3 -13
  245. package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
  246. package/dist/lib/plugins/openapi/graphql/graphql.d.ts +66 -29
  247. package/dist/lib/plugins/openapi/graphql/graphql.js +33 -15
  248. package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
  249. package/dist/lib/plugins/openapi/index.d.ts +10 -1
  250. package/dist/lib/plugins/openapi/index.js +84 -84
  251. package/dist/lib/plugins/openapi/index.js.map +1 -1
  252. package/dist/lib/plugins/openapi/interfaces.d.ts +29 -2
  253. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.d.ts +6 -0
  254. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +12 -0
  255. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -0
  256. package/dist/lib/plugins/openapi/playground/Headers.d.ts +4 -4
  257. package/dist/lib/plugins/openapi/playground/Headers.js +84 -5
  258. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  259. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +9 -0
  260. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +5 -0
  261. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -0
  262. package/dist/lib/plugins/openapi/playground/PathParams.d.ts +3 -2
  263. package/dist/lib/plugins/openapi/playground/PathParams.js +5 -7
  264. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  265. package/dist/lib/plugins/openapi/playground/Playground.d.ts +26 -2
  266. package/dist/lib/plugins/openapi/playground/Playground.js +64 -56
  267. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  268. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +1 -1
  269. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  270. package/dist/lib/plugins/openapi/playground/QueryParams.js +24 -18
  271. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  272. package/dist/lib/plugins/openapi/playground/SubmitButton.d.ts +7 -0
  273. package/dist/lib/plugins/openapi/playground/SubmitButton.js +22 -0
  274. package/dist/lib/plugins/openapi/playground/SubmitButton.js.map +1 -0
  275. package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.d.ts +7 -0
  276. package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js +11 -0
  277. package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js.map +1 -0
  278. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.d.ts +8 -0
  279. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +95 -0
  280. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -0
  281. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +7 -0
  282. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +16 -0
  283. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -0
  284. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.d.ts +10 -0
  285. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js +32 -0
  286. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js.map +1 -0
  287. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.d.ts +1 -0
  288. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.js +56 -0
  289. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.js.map +1 -0
  290. package/dist/lib/plugins/openapi/post-processors/removeExtensions.d.ts +2 -1
  291. package/dist/lib/plugins/openapi/post-processors/removeExtensions.js +5 -3
  292. package/dist/lib/plugins/openapi/post-processors/removeExtensions.js.map +1 -1
  293. package/dist/lib/plugins/openapi/post-processors/removeExtensions.test.js +49 -0
  294. package/dist/lib/plugins/openapi/post-processors/removeExtensions.test.js.map +1 -1
  295. package/dist/lib/plugins/openapi/post-processors/removeParameters.d.ts +10 -0
  296. package/dist/lib/plugins/openapi/post-processors/removeParameters.js +66 -0
  297. package/dist/lib/plugins/openapi/post-processors/removeParameters.js.map +1 -0
  298. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.d.ts +1 -0
  299. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.js +131 -0
  300. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.js.map +1 -0
  301. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +37 -0
  302. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -0
  303. package/dist/lib/plugins/openapi/schema/SchemaView.js +1 -1
  304. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  305. package/dist/lib/plugins/openapi/schema/utils.d.ts +1 -0
  306. package/dist/lib/plugins/openapi/schema/utils.js +2 -0
  307. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  308. package/dist/lib/plugins/openapi/util/createSidebarCategory.d.ts +9 -0
  309. package/dist/lib/plugins/openapi/util/createSidebarCategory.js +25 -0
  310. package/dist/lib/plugins/openapi/util/createSidebarCategory.js.map +1 -0
  311. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +19 -11
  312. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  313. package/dist/lib/plugins/openapi/util/getRoutes.d.ts +10 -0
  314. package/dist/lib/plugins/openapi/util/getRoutes.js +74 -0
  315. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -0
  316. package/dist/lib/plugins/openapi/util/methodColorMap.d.ts +2 -0
  317. package/dist/lib/plugins/openapi/util/methodColorMap.js +10 -0
  318. package/dist/lib/plugins/openapi/util/methodColorMap.js.map +1 -0
  319. package/dist/lib/plugins/openapi/util/methodToColor.d.ts +20 -0
  320. package/dist/lib/plugins/openapi/util/methodToColor.js +24 -0
  321. package/dist/lib/plugins/openapi/util/methodToColor.js.map +1 -0
  322. package/dist/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.d.ts +1 -0
  323. package/dist/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.js +27 -0
  324. package/dist/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.js.map +1 -0
  325. package/dist/lib/plugins/redirect/index.js +1 -1
  326. package/dist/lib/plugins/redirect/index.js.map +1 -1
  327. package/dist/lib/plugins/search-inkeep/index.js +21 -7
  328. package/dist/lib/plugins/search-inkeep/index.js.map +1 -1
  329. package/dist/lib/plugins/search-pagefind/PagefindSearch.d.ts +6 -0
  330. package/dist/lib/plugins/search-pagefind/PagefindSearch.js +67 -0
  331. package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -0
  332. package/dist/lib/plugins/search-pagefind/ResultList.d.ts +7 -0
  333. package/dist/lib/plugins/search-pagefind/ResultList.js +30 -0
  334. package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -0
  335. package/dist/lib/plugins/search-pagefind/get-results.d.ts +3 -0
  336. package/dist/lib/plugins/search-pagefind/get-results.js +37 -0
  337. package/dist/lib/plugins/search-pagefind/get-results.js.map +1 -0
  338. package/dist/lib/plugins/search-pagefind/index.d.ts +6 -0
  339. package/dist/lib/plugins/search-pagefind/index.js +9 -0
  340. package/dist/lib/plugins/search-pagefind/index.js.map +1 -0
  341. package/dist/lib/plugins/search-pagefind/types.d.ts +85 -0
  342. package/dist/lib/plugins/search-pagefind/types.js +2 -0
  343. package/dist/lib/plugins/search-pagefind/types.js.map +1 -0
  344. package/dist/lib/ui/Badge.d.ts +1 -1
  345. package/dist/lib/ui/Badge.js +2 -1
  346. package/dist/lib/ui/Badge.js.map +1 -1
  347. package/dist/lib/ui/Button.d.ts +1 -1
  348. package/dist/lib/ui/Card.js +1 -1
  349. package/dist/lib/ui/Card.js.map +1 -1
  350. package/dist/lib/ui/Checkbox.d.ts +8 -2
  351. package/dist/lib/ui/Checkbox.js +13 -1
  352. package/dist/lib/ui/Checkbox.js.map +1 -1
  353. package/dist/lib/ui/Command.d.ts +17 -3
  354. package/dist/lib/ui/Command.js +7 -3
  355. package/dist/lib/ui/Command.js.map +1 -1
  356. package/dist/lib/ui/Input.d.ts +1 -2
  357. package/dist/lib/ui/Input.js.map +1 -1
  358. package/dist/lib/ui/Select.js +2 -2
  359. package/dist/lib/ui/Select.js.map +1 -1
  360. package/dist/lib/ui/Stepper.d.ts +4 -0
  361. package/dist/lib/ui/Stepper.js +7 -0
  362. package/dist/lib/ui/Stepper.js.map +1 -0
  363. package/dist/lib/ui/SyntaxHighlight.d.ts +14 -0
  364. package/dist/lib/{components → ui}/SyntaxHighlight.js +9 -6
  365. package/dist/lib/ui/SyntaxHighlight.js.map +1 -0
  366. package/dist/lib/ui/util.d.ts +2 -0
  367. package/dist/lib/ui/util.js +3 -0
  368. package/dist/lib/ui/util.js.map +1 -0
  369. package/dist/lib/util/MdxComponents.d.ts +19 -17
  370. package/dist/lib/util/MdxComponents.js +7 -6
  371. package/dist/lib/util/MdxComponents.js.map +1 -1
  372. package/dist/lib/util/createVariantComponent.d.ts +2 -2
  373. package/dist/lib/util/joinUrl.d.ts +1 -0
  374. package/dist/lib/util/joinUrl.js +40 -0
  375. package/dist/lib/util/joinUrl.js.map +1 -0
  376. package/dist/lib/util/joinUrl.test.d.ts +1 -0
  377. package/dist/lib/util/joinUrl.test.js +43 -0
  378. package/dist/lib/util/joinUrl.test.js.map +1 -0
  379. package/dist/lib/util/scrollIntoViewIfNeeded.d.ts +1 -0
  380. package/dist/lib/util/scrollIntoViewIfNeeded.js +14 -0
  381. package/dist/lib/util/scrollIntoViewIfNeeded.js.map +1 -0
  382. package/dist/lib/util/traverse.d.ts +8 -1
  383. package/dist/lib/util/traverse.js +7 -3
  384. package/dist/lib/util/traverse.js.map +1 -1
  385. package/dist/lib/util/useExposedProps.js +1 -1
  386. package/dist/lib/util/useExposedProps.js.map +1 -1
  387. package/dist/lib/util/useLatest.d.ts +1 -0
  388. package/dist/lib/util/useLatest.js +15 -0
  389. package/dist/lib/util/useLatest.js.map +1 -0
  390. package/dist/lib/util/useOnScreen.d.ts +1 -1
  391. package/dist/lib/util/useScrollToAnchor.d.ts +1 -0
  392. package/dist/lib/util/useScrollToAnchor.js +26 -29
  393. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  394. package/dist/lib/util/useScrollToTop.js +7 -5
  395. package/dist/lib/util/useScrollToTop.js.map +1 -1
  396. package/dist/vite/api/schema-codegen.d.ts +12 -0
  397. package/dist/vite/api/schema-codegen.js +62 -0
  398. package/dist/vite/api/schema-codegen.js.map +1 -0
  399. package/dist/vite/api/schema-codegen.test.d.ts +1 -0
  400. package/dist/vite/api/schema-codegen.test.js +247 -0
  401. package/dist/vite/api/schema-codegen.test.js.map +1 -0
  402. package/dist/vite/build.js +41 -25
  403. package/dist/vite/build.js.map +1 -1
  404. package/dist/vite/config.d.ts +2 -5
  405. package/dist/vite/config.js +69 -61
  406. package/dist/vite/config.js.map +1 -1
  407. package/dist/vite/config.test.js +5 -1
  408. package/dist/vite/config.test.js.map +1 -1
  409. package/dist/vite/css/collect.d.ts +2 -0
  410. package/dist/vite/css/collect.js +27 -0
  411. package/dist/vite/css/collect.js.map +1 -0
  412. package/dist/vite/css/plugin.d.ts +5 -0
  413. package/dist/vite/css/plugin.js +79 -0
  414. package/dist/vite/css/plugin.js.map +1 -0
  415. package/dist/vite/dev-server.d.ts +5 -2
  416. package/dist/vite/dev-server.js +52 -11
  417. package/dist/vite/dev-server.js.map +1 -1
  418. package/dist/vite/error-handler.d.ts +1 -1
  419. package/dist/vite/error-handler.js +1 -1
  420. package/dist/vite/error-handler.js.map +1 -1
  421. package/dist/vite/output.d.ts +14 -2
  422. package/dist/vite/output.js +12 -14
  423. package/dist/vite/output.js.map +1 -1
  424. package/dist/vite/pagefind.d.ts +4 -0
  425. package/dist/vite/pagefind.js +15 -0
  426. package/dist/vite/pagefind.js.map +1 -0
  427. package/dist/vite/plugin-api-keys.d.ts +2 -2
  428. package/dist/vite/plugin-api-keys.js +5 -5
  429. package/dist/vite/plugin-api-keys.js.map +1 -1
  430. package/dist/vite/plugin-api.d.ts +2 -2
  431. package/dist/vite/plugin-api.js +175 -59
  432. package/dist/vite/plugin-api.js.map +1 -1
  433. package/dist/vite/plugin-auth.d.ts +2 -2
  434. package/dist/vite/plugin-auth.js +7 -4
  435. package/dist/vite/plugin-auth.js.map +1 -1
  436. package/dist/vite/plugin-component.d.ts +2 -2
  437. package/dist/vite/plugin-component.js +7 -3
  438. package/dist/vite/plugin-component.js.map +1 -1
  439. package/dist/vite/plugin-config-reload.d.ts +4 -3
  440. package/dist/vite/plugin-config-reload.js +11 -5
  441. package/dist/vite/plugin-config-reload.js.map +1 -1
  442. package/dist/vite/plugin-config.d.ts +2 -2
  443. package/dist/vite/plugin-config.js +9 -5
  444. package/dist/vite/plugin-config.js.map +1 -1
  445. package/dist/vite/plugin-custom-pages.d.ts +2 -2
  446. package/dist/vite/plugin-custom-pages.js +3 -3
  447. package/dist/vite/plugin-custom-pages.js.map +1 -1
  448. package/dist/vite/plugin-docs.d.ts +2 -2
  449. package/dist/vite/plugin-docs.js +5 -5
  450. package/dist/vite/plugin-docs.js.map +1 -1
  451. package/dist/vite/plugin-frontmatter.d.ts +2 -2
  452. package/dist/vite/plugin-frontmatter.js +5 -4
  453. package/dist/vite/plugin-frontmatter.js.map +1 -1
  454. package/dist/vite/plugin-mdx.d.ts +2 -2
  455. package/dist/vite/plugin-mdx.js +34 -16
  456. package/dist/vite/plugin-mdx.js.map +1 -1
  457. package/dist/vite/plugin-redirect.d.ts +2 -2
  458. package/dist/vite/plugin-redirect.js +3 -3
  459. package/dist/vite/plugin-redirect.js.map +1 -1
  460. package/dist/vite/plugin-search.d.ts +2 -2
  461. package/dist/vite/plugin-search.js +5 -1
  462. package/dist/vite/plugin-search.js.map +1 -1
  463. package/dist/vite/plugin-sidebar.d.ts +2 -2
  464. package/dist/vite/plugin-sidebar.js +13 -4
  465. package/dist/vite/plugin-sidebar.js.map +1 -1
  466. package/dist/vite/plugin-theme-css.d.ts +2 -2
  467. package/dist/vite/plugin-theme-css.js +57 -2
  468. package/dist/vite/plugin-theme-css.js.map +1 -1
  469. package/dist/vite/plugin.d.ts +2 -2
  470. package/dist/vite/plugin.js +4 -0
  471. package/dist/vite/plugin.js.map +1 -1
  472. package/dist/vite/{prerender.d.ts → prerender/FileWritingResponse.d.ts} +8 -9
  473. package/dist/vite/prerender/FileWritingResponse.js +51 -0
  474. package/dist/vite/prerender/FileWritingResponse.js.map +1 -0
  475. package/dist/vite/prerender/prerender.d.ts +14 -0
  476. package/dist/vite/prerender/prerender.js +84 -0
  477. package/dist/vite/prerender/prerender.js.map +1 -0
  478. package/dist/vite/prerender/worker.d.ts +13 -0
  479. package/dist/vite/prerender/worker.js +32 -0
  480. package/dist/vite/prerender/worker.js.map +1 -0
  481. package/dist/vite/reporter.d.ts +3 -0
  482. package/dist/vite/reporter.js +33 -0
  483. package/dist/vite/reporter.js.map +1 -0
  484. package/dist/vite/sitemap.js +2 -1
  485. package/dist/vite/sitemap.js.map +1 -1
  486. package/dist/zuplo/enrich-with-zuplo.d.ts +5 -0
  487. package/dist/zuplo/enrich-with-zuplo.js +184 -0
  488. package/dist/zuplo/enrich-with-zuplo.js.map +1 -0
  489. package/dist/zuplo/env.d.ts +1 -0
  490. package/dist/zuplo/env.js +3 -0
  491. package/dist/zuplo/env.js.map +1 -1
  492. package/dist/zuplo/policy-types.d.ts +33 -0
  493. package/dist/zuplo/policy-types.js +8 -0
  494. package/dist/zuplo/policy-types.js.map +1 -0
  495. package/dist/zuplo/with-zuplo-processors.d.ts +3 -0
  496. package/dist/zuplo/with-zuplo-processors.js +26 -0
  497. package/dist/zuplo/with-zuplo-processors.js.map +1 -0
  498. package/dist/zuplo/with-zuplo.d.ts +1 -1
  499. package/dist/zuplo/with-zuplo.js +7 -26
  500. package/dist/zuplo/with-zuplo.js.map +1 -1
  501. package/lib/AuthenticationPlugin-CiO1FM6Q.js +58 -0
  502. package/lib/AuthenticationPlugin-CiO1FM6Q.js.map +1 -0
  503. package/lib/{CategoryHeading-Bb9dqxD3.js → CategoryHeading-DpB47wvk.js} +3 -3
  504. package/lib/{CategoryHeading-Bb9dqxD3.js.map → CategoryHeading-DpB47wvk.js.map} +1 -1
  505. package/lib/ClientOnly-E7hGysn1.js.map +1 -1
  506. package/lib/{Dialog-k70Qfukb.js → Dialog-DIKGQxQc.js} +36 -20
  507. package/lib/{Dialog-k70Qfukb.js.map → Dialog-DIKGQxQc.js.map} +1 -1
  508. package/lib/{Markdown-CRsmPPfY.js → Markdown-DePfm7oQ.js} +5972 -5888
  509. package/lib/Markdown-DePfm7oQ.js.map +1 -0
  510. package/lib/MdxPage-BN6l6zXL.js +201 -0
  511. package/lib/MdxPage-BN6l6zXL.js.map +1 -0
  512. package/lib/OasProvider-BSuptFK-.js +34 -0
  513. package/lib/OasProvider-BSuptFK-.js.map +1 -0
  514. package/lib/OperationList-DOcfDmJP.js +5217 -0
  515. package/lib/OperationList-DOcfDmJP.js.map +1 -0
  516. package/lib/{Select-O9ZM3ZgX.js → Select-Dqtcn53H.js} +49 -49
  517. package/lib/Select-Dqtcn53H.js.map +1 -0
  518. package/lib/SlotletProvider-DdtIOUi6.js +221 -0
  519. package/lib/SlotletProvider-DdtIOUi6.js.map +1 -0
  520. package/lib/{Button-jK0EsymC.js → Spinner-1KrEmx1V.js} +17 -14
  521. package/lib/Spinner-1KrEmx1V.js.map +1 -0
  522. package/lib/chunk-IR6S3I6Y-D_3UmFIn.js +1821 -0
  523. package/lib/chunk-IR6S3I6Y-D_3UmFIn.js.map +1 -0
  524. package/lib/circular-v7K6lDDh.js +15409 -0
  525. package/lib/circular-v7K6lDDh.js.map +1 -0
  526. package/lib/{cn-BmFQLtkS.js → cn-qaFjX9_3.js} +2 -2
  527. package/lib/cn-qaFjX9_3.js.map +1 -0
  528. package/lib/{context-D1nXWxm7.js → context-DLCwaMXN.js} +2 -2
  529. package/lib/context-DLCwaMXN.js.map +1 -0
  530. package/lib/createServer-DmusVVsi.js +12728 -0
  531. package/lib/createServer-DmusVVsi.js.map +1 -0
  532. package/lib/hook-CN__aZIt.js +1464 -0
  533. package/lib/hook-CN__aZIt.js.map +1 -0
  534. package/lib/index-BTbP6Lgf.js +2103 -0
  535. package/lib/index-BTbP6Lgf.js.map +1 -0
  536. package/lib/index-CPNSgwSb.js +36 -0
  537. package/lib/index-CPNSgwSb.js.map +1 -0
  538. package/lib/{index-CkwDvuPt.js → index-Dl3Yl0yb.js} +303 -286
  539. package/lib/index-Dl3Yl0yb.js.map +1 -0
  540. package/lib/index-DwT-v3zK.js +86 -0
  541. package/lib/index-DwT-v3zK.js.map +1 -0
  542. package/lib/index-LNp6rxyU.js.map +1 -1
  543. package/lib/index-gQD2h1wX.js +447 -0
  544. package/lib/index-gQD2h1wX.js.map +1 -0
  545. package/lib/index.esm--gIChbWs.js +1207 -0
  546. package/lib/index.esm--gIChbWs.js.map +1 -0
  547. package/lib/index.esm-CQHE3GEU.js +691 -0
  548. package/lib/{index.esm-Bm8pj-bc.js.map → index.esm-CQHE3GEU.js.map} +1 -1
  549. package/lib/invariant-Caa8-XvF.js.map +1 -1
  550. package/lib/joinUrl-10po2Jdj.js +20 -0
  551. package/lib/joinUrl-10po2Jdj.js.map +1 -0
  552. package/lib/jsx-runtime-CYK1ROHF.js +446 -0
  553. package/lib/jsx-runtime-CYK1ROHF.js.map +1 -0
  554. package/lib/{hook-hEqe7fPB.js → mutation-EclmI0is.js} +39 -58
  555. package/lib/mutation-EclmI0is.js.map +1 -0
  556. package/lib/objectEntries-yMIkr2mI.js +5 -0
  557. package/lib/objectEntries-yMIkr2mI.js.map +1 -0
  558. package/lib/post-processors/removeExtensions.js +7 -7
  559. package/lib/post-processors/removeExtensions.js.map +1 -1
  560. package/lib/post-processors/removeParameters.js +48 -0
  561. package/lib/post-processors/removeParameters.js.map +1 -0
  562. package/lib/post-processors/removePaths.js.map +1 -1
  563. package/lib/post-processors/traverse.js +11 -8
  564. package/lib/post-processors/traverse.js.map +1 -1
  565. package/lib/{prism-bash.min-DadFsM4Z.js → prism-bash.min-HHIMdNJ_.js} +4 -4
  566. package/lib/{prism-bash.min-DadFsM4Z.js.map → prism-bash.min-HHIMdNJ_.js.map} +1 -1
  567. package/lib/prism-csharp.min-bQAo2pmx.js +63 -0
  568. package/lib/{prism-csharp.min-Yizuc34Y.js.map → prism-csharp.min-bQAo2pmx.js.map} +1 -1
  569. package/lib/prism-java.min-BpvsOuIa.js +35 -0
  570. package/lib/{prism-java.min-d5iT_mOd.js.map → prism-java.min-BpvsOuIa.js.map} +1 -1
  571. package/lib/{prism-markdown.min-F3U-vPBi.js → prism-markdown.min-C0Qn0m-5.js} +30 -30
  572. package/lib/{prism-markdown.min-F3U-vPBi.js.map → prism-markdown.min-C0Qn0m-5.js.map} +1 -1
  573. package/lib/prism-markup-BNGj0Tvm.js.map +1 -1
  574. package/lib/prism-ruby.min-Dx9KO9ds.js +38 -0
  575. package/lib/{prism-ruby.min-C7LwcKyz.js.map → prism-ruby.min-Dx9KO9ds.js.map} +1 -1
  576. package/lib/prism-typescript.min-CD7H2IYQ.js +34 -0
  577. package/lib/{prism-typescript.min-oSVeWCAd.js.map → prism-typescript.min-CD7H2IYQ.js.map} +1 -1
  578. package/lib/ui/Accordion.js +2 -2
  579. package/lib/ui/Accordion.js.map +1 -1
  580. package/lib/ui/ActionButton.js +10 -11
  581. package/lib/ui/ActionButton.js.map +1 -1
  582. package/lib/ui/Alert.js +3 -3
  583. package/lib/ui/Alert.js.map +1 -1
  584. package/lib/ui/AlertDialog.js +2 -2
  585. package/lib/ui/AlertDialog.js.map +1 -1
  586. package/lib/ui/Badge.js +5 -4
  587. package/lib/ui/Badge.js.map +1 -1
  588. package/lib/ui/Breadcrumb.js +5 -5
  589. package/lib/ui/Breadcrumb.js.map +1 -1
  590. package/lib/ui/Button.js +3 -3
  591. package/lib/ui/Button.js.map +1 -1
  592. package/lib/ui/Callout.js +5 -5
  593. package/lib/ui/Callout.js.map +1 -1
  594. package/lib/ui/Card.js +9 -9
  595. package/lib/ui/Card.js.map +1 -1
  596. package/lib/ui/Carousel.js +408 -402
  597. package/lib/ui/Carousel.js.map +1 -1
  598. package/lib/ui/Checkbox.js +26 -15
  599. package/lib/ui/Checkbox.js.map +1 -1
  600. package/lib/ui/Command.js +114 -508
  601. package/lib/ui/Command.js.map +1 -1
  602. package/lib/ui/Dialog.js +2 -2
  603. package/lib/ui/Dialog.js.map +1 -1
  604. package/lib/ui/Drawer.js +357 -378
  605. package/lib/ui/Drawer.js.map +1 -1
  606. package/lib/ui/DropdownMenu.js +2 -2
  607. package/lib/ui/DropdownMenu.js.map +1 -1
  608. package/lib/ui/Form.js +6 -6
  609. package/lib/ui/Form.js.map +1 -1
  610. package/lib/ui/HoverCard.js +2 -2
  611. package/lib/ui/Input.js +2 -2
  612. package/lib/ui/Input.js.map +1 -1
  613. package/lib/ui/Label.js +3 -3
  614. package/lib/ui/Pagination.js +5 -5
  615. package/lib/ui/Pagination.js.map +1 -1
  616. package/lib/ui/Popover.js +2 -2
  617. package/lib/ui/Popover.js.map +1 -1
  618. package/lib/ui/Progress.js +2 -2
  619. package/lib/ui/Progress.js.map +1 -1
  620. package/lib/ui/RadioGroup.js +2 -2
  621. package/lib/ui/RadioGroup.js.map +1 -1
  622. package/lib/ui/ScrollArea.js +2 -2
  623. package/lib/ui/ScrollArea.js.map +1 -1
  624. package/lib/ui/Select.js +4 -4
  625. package/lib/ui/Select.js.map +1 -1
  626. package/lib/ui/Skeleton.js +2 -2
  627. package/lib/ui/Skeleton.js.map +1 -1
  628. package/lib/ui/Slider.js +2 -2
  629. package/lib/ui/Stepper.js +6 -0
  630. package/lib/ui/Stepper.js.map +1 -0
  631. package/lib/ui/Switch.js +2 -2
  632. package/lib/ui/Switch.js.map +1 -1
  633. package/lib/{SyntaxHighlight-C31iouiO.js → ui/SyntaxHighlight.js} +460 -536
  634. package/lib/ui/SyntaxHighlight.js.map +1 -0
  635. package/lib/ui/Tabs.js +2 -2
  636. package/lib/ui/Textarea.js +2 -2
  637. package/lib/ui/Textarea.js.map +1 -1
  638. package/lib/ui/Toggle.js +3 -3
  639. package/lib/ui/Toggle.js.map +1 -1
  640. package/lib/ui/ToggleGroup.js +2 -2
  641. package/lib/ui/ToggleGroup.js.map +1 -1
  642. package/lib/ui/Tooltip.js +2 -2
  643. package/lib/ui/util.js +6 -0
  644. package/lib/ui/util.js.map +1 -0
  645. package/lib/useExposedProps-RIvey2Oy.js +9 -0
  646. package/lib/useExposedProps-RIvey2Oy.js.map +1 -0
  647. package/lib/useScrollToAnchor-RyqO3lj4.js +290 -0
  648. package/lib/useScrollToAnchor-RyqO3lj4.js.map +1 -0
  649. package/lib/zudoku.auth-auth0.js +19 -20
  650. package/lib/zudoku.auth-auth0.js.map +1 -1
  651. package/lib/zudoku.auth-clerk.js +81 -53
  652. package/lib/zudoku.auth-clerk.js.map +1 -1
  653. package/lib/zudoku.auth-openid.js +379 -410
  654. package/lib/zudoku.auth-openid.js.map +1 -1
  655. package/lib/zudoku.components.js +1003 -1263
  656. package/lib/zudoku.components.js.map +1 -1
  657. package/lib/zudoku.css +1 -0
  658. package/lib/zudoku.hooks.js +19 -0
  659. package/lib/zudoku.hooks.js.map +1 -0
  660. package/lib/zudoku.icons.js +10 -0
  661. package/lib/zudoku.icons.js.map +1 -1
  662. package/lib/zudoku.plugin-api-catalog.js +109 -109
  663. package/lib/zudoku.plugin-api-catalog.js.map +1 -1
  664. package/lib/zudoku.plugin-api-keys.js +108 -107
  665. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  666. package/lib/zudoku.plugin-custom-pages.js +4 -4
  667. package/lib/zudoku.plugin-custom-pages.js.map +1 -1
  668. package/lib/zudoku.plugin-markdown.js +23 -44
  669. package/lib/zudoku.plugin-markdown.js.map +1 -1
  670. package/lib/zudoku.plugin-openapi.js +8 -6
  671. package/lib/zudoku.plugin-openapi.js.map +1 -1
  672. package/lib/zudoku.plugin-redirect.js +1 -1
  673. package/lib/zudoku.plugin-redirect.js.map +1 -1
  674. package/lib/zudoku.plugin-search-inkeep.js +34 -26
  675. package/lib/zudoku.plugin-search-inkeep.js.map +1 -1
  676. package/lib/zudoku.plugins.js +14 -0
  677. package/lib/zudoku.plugins.js.map +1 -0
  678. package/package.json +104 -89
  679. package/src/app/demo-cdn.html +31 -31
  680. package/src/app/demo.tsx +1 -2
  681. package/src/app/entry.client.tsx +9 -15
  682. package/src/app/entry.server.tsx +3 -3
  683. package/src/app/main.css +59 -45
  684. package/src/app/main.tsx +33 -10
  685. package/src/app/sentry.ts +1 -1
  686. package/src/app/standalone.tsx +1 -2
  687. package/src/app/tailwind.ts +6 -0
  688. package/src/lib/MissingIcon.tsx +22 -0
  689. package/src/lib/authentication/components/CallbackHandler.tsx +1 -1
  690. package/src/lib/authentication/components/SignIn.tsx +1 -1
  691. package/src/lib/authentication/components/SignOut.tsx +3 -2
  692. package/src/lib/authentication/providers/auth0.tsx +4 -6
  693. package/src/lib/authentication/providers/clerk.tsx +48 -13
  694. package/src/lib/authentication/providers/openid.tsx +32 -15
  695. package/src/lib/authentication/state.ts +26 -2
  696. package/src/lib/components/AnchorLink.tsx +6 -3
  697. package/src/lib/components/Autocomplete.tsx +113 -0
  698. package/src/lib/components/Banner.tsx +1 -0
  699. package/src/lib/components/Bootstrap.tsx +4 -6
  700. package/src/lib/components/Header.tsx +14 -10
  701. package/src/lib/components/Heading.tsx +1 -1
  702. package/src/lib/components/Layout.tsx +4 -3
  703. package/src/lib/components/Markdown.tsx +14 -15
  704. package/src/lib/components/MobileTopNavigation.tsx +1 -1
  705. package/src/lib/components/NotFoundPage.tsx +1 -1
  706. package/src/lib/components/PathRenderer.tsx +61 -0
  707. package/src/lib/components/SlotletProvider.tsx +1 -1
  708. package/src/lib/components/StatusPage.tsx +91 -0
  709. package/src/lib/components/ThemeSwitch.tsx +29 -9
  710. package/src/lib/components/TopNavigation.tsx +15 -11
  711. package/src/lib/components/Zudoku.tsx +10 -6
  712. package/src/lib/components/cache.ts +15 -0
  713. package/src/lib/components/context/RouterEventsEmitter.tsx +19 -0
  714. package/src/lib/components/context/ViewportAnchorContext.tsx +20 -6
  715. package/src/lib/components/context/ZudokuContext.ts +17 -4
  716. package/src/lib/components/index.ts +22 -5
  717. package/src/lib/components/navigation/Sidebar.tsx +8 -2
  718. package/src/lib/components/navigation/SidebarBadge.tsx +17 -12
  719. package/src/lib/components/navigation/SidebarCategory.tsx +46 -47
  720. package/src/lib/components/navigation/SidebarItem.tsx +4 -2
  721. package/src/lib/components/navigation/SidebarWrapper.tsx +3 -2
  722. package/src/lib/components/navigation/utils.ts +1 -1
  723. package/src/lib/core/RouteGuard.tsx +73 -0
  724. package/src/lib/core/ZudokuContext.ts +41 -9
  725. package/src/lib/core/plugins.ts +27 -9
  726. package/src/lib/errors/RouterError.tsx +1 -1
  727. package/src/lib/hooks/index.ts +5 -0
  728. package/src/lib/hooks/useEvent.test.tsx +149 -0
  729. package/src/lib/hooks/useEvent.ts +41 -0
  730. package/src/lib/icons.ts +1 -0
  731. package/src/lib/oas/graphql/circular.ts +50 -0
  732. package/src/lib/oas/graphql/index.ts +135 -92
  733. package/src/lib/oas/parser/dereference/index.ts +8 -4
  734. package/src/lib/oas/parser/upgrade/index.ts +21 -5
  735. package/src/lib/plugins/api-catalog/Catalog.tsx +62 -110
  736. package/src/lib/plugins/api-catalog/index.tsx +69 -9
  737. package/src/lib/plugins/api-keys/CreateApiKey.tsx +8 -4
  738. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +1 -1
  739. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +1 -1
  740. package/src/lib/plugins/api-keys/index.tsx +4 -1
  741. package/src/lib/plugins/custom-pages/index.tsx +1 -1
  742. package/src/lib/plugins/markdown/MdxPage.tsx +15 -3
  743. package/src/lib/plugins/markdown/index.tsx +2 -1
  744. package/src/lib/plugins/markdown/resolver.ts +0 -33
  745. package/src/lib/plugins/openapi/CollapsibleCode.tsx +10 -7
  746. package/src/lib/plugins/openapi/ColorizedParam.tsx +29 -12
  747. package/src/lib/plugins/openapi/Endpoint.tsx +14 -12
  748. package/src/lib/plugins/openapi/OasProvider.tsx +51 -0
  749. package/src/lib/plugins/openapi/OperationList.tsx +106 -67
  750. package/src/lib/plugins/openapi/OperationListItem.tsx +48 -6
  751. package/src/lib/plugins/openapi/ParameterList.tsx +4 -0
  752. package/src/lib/plugins/openapi/ParameterListItem.tsx +7 -8
  753. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +14 -2
  754. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +15 -38
  755. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +46 -63
  756. package/src/lib/plugins/openapi/Sidecar.tsx +44 -60
  757. package/src/lib/plugins/openapi/SidecarBox.tsx +4 -16
  758. package/src/lib/plugins/openapi/SidecarExamples.tsx +162 -0
  759. package/src/lib/plugins/openapi/client/GraphQLClient.tsx +28 -120
  760. package/src/lib/plugins/openapi/client/createServer.ts +6 -2
  761. package/src/lib/plugins/openapi/client/useCreateQuery.ts +2 -5
  762. package/src/lib/plugins/openapi/context.tsx +2 -2
  763. package/src/lib/plugins/openapi/graphql/gql.ts +21 -5
  764. package/src/lib/plugins/openapi/graphql/graphql.ts +92 -45
  765. package/src/lib/plugins/openapi/index.tsx +130 -97
  766. package/src/lib/plugins/openapi/interfaces.ts +27 -2
  767. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +54 -0
  768. package/src/lib/plugins/openapi/playground/Headers.tsx +166 -36
  769. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +13 -0
  770. package/src/lib/plugins/openapi/playground/PathParams.tsx +39 -65
  771. package/src/lib/plugins/openapi/playground/Playground.tsx +288 -235
  772. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +6 -3
  773. package/src/lib/plugins/openapi/playground/QueryParams.tsx +87 -88
  774. package/src/lib/plugins/openapi/playground/SubmitButton.tsx +75 -0
  775. package/src/lib/plugins/openapi/playground/result-panel/RequestTab.tsx +73 -0
  776. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +210 -0
  777. package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +101 -0
  778. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.test.ts +64 -0
  779. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +36 -0
  780. package/src/lib/plugins/openapi/post-processors/removeExtensions.test.ts +58 -0
  781. package/src/lib/plugins/openapi/post-processors/removeExtensions.ts +7 -4
  782. package/src/lib/plugins/openapi/post-processors/removeParameters.test.ts +148 -0
  783. package/src/lib/plugins/openapi/post-processors/removeParameters.ts +101 -0
  784. package/src/lib/plugins/openapi/schema/{SchemaComponents.tsx → SchemaPropertyItem.tsx} +34 -9
  785. package/src/lib/plugins/openapi/schema/SchemaView.tsx +4 -1
  786. package/src/lib/plugins/openapi/schema/utils.ts +4 -0
  787. package/src/lib/plugins/openapi/util/createSidebarCategory.tsx +39 -0
  788. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +26 -11
  789. package/src/lib/plugins/openapi/util/getRoutes.tsx +123 -0
  790. package/src/lib/plugins/openapi/util/methodColorMap.tsx +11 -0
  791. package/src/lib/plugins/openapi/util/methodToColor.ts +27 -0
  792. package/src/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.tsx +32 -0
  793. package/src/lib/plugins/redirect/index.tsx +1 -1
  794. package/src/lib/plugins/search-inkeep/index.tsx +27 -8
  795. package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +139 -0
  796. package/src/lib/plugins/search-pagefind/ResultList.tsx +98 -0
  797. package/src/lib/plugins/search-pagefind/get-results.tsx +54 -0
  798. package/src/lib/plugins/search-pagefind/index.tsx +21 -0
  799. package/src/lib/plugins/search-pagefind/types.ts +118 -0
  800. package/src/lib/ui/Badge.tsx +2 -1
  801. package/src/lib/ui/Card.tsx +1 -1
  802. package/src/lib/ui/Checkbox.tsx +24 -7
  803. package/src/lib/ui/Command.tsx +45 -3
  804. package/src/lib/ui/Input.tsx +1 -2
  805. package/src/lib/ui/Select.tsx +1 -1
  806. package/src/lib/ui/Stepper.css +43 -0
  807. package/src/lib/ui/Stepper.tsx +8 -0
  808. package/src/lib/{components → ui}/SyntaxHighlight.tsx +37 -8
  809. package/src/lib/ui/util.tsx +3 -0
  810. package/src/lib/util/MdxComponents.tsx +8 -6
  811. package/src/lib/util/createVariantComponent.tsx +2 -2
  812. package/src/lib/util/joinUrl.test.ts +62 -0
  813. package/src/lib/util/joinUrl.ts +57 -0
  814. package/src/lib/util/scrollIntoViewIfNeeded.ts +18 -0
  815. package/src/lib/util/traverse.ts +15 -5
  816. package/src/lib/util/useExposedProps.tsx +1 -1
  817. package/src/lib/util/useLatest.ts +18 -0
  818. package/src/lib/util/useScrollToAnchor.ts +33 -34
  819. package/src/lib/util/useScrollToTop.ts +9 -4
  820. package/dist/lib/components/SyntaxHighlight.d.ts +0 -11
  821. package/dist/lib/components/SyntaxHighlight.js.map +0 -1
  822. package/dist/lib/plugins/openapi/Route.d.ts +0 -6
  823. package/dist/lib/plugins/openapi/Route.js +0 -6
  824. package/dist/lib/plugins/openapi/Route.js.map +0 -1
  825. package/dist/lib/plugins/openapi/client/worker.d.ts +0 -4
  826. package/dist/lib/plugins/openapi/client/worker.js +0 -29
  827. package/dist/lib/plugins/openapi/client/worker.js.map +0 -1
  828. package/dist/lib/plugins/openapi/playground/ResponseTab.d.ts +0 -4
  829. package/dist/lib/plugins/openapi/playground/ResponseTab.js +0 -42
  830. package/dist/lib/plugins/openapi/playground/ResponseTab.js.map +0 -1
  831. package/dist/lib/plugins/openapi/schema/SchemaComponents.js +0 -28
  832. package/dist/lib/plugins/openapi/schema/SchemaComponents.js.map +0 -1
  833. package/dist/lib/plugins/openapi-worker.d.ts +0 -1
  834. package/dist/lib/plugins/openapi-worker.js +0 -8
  835. package/dist/lib/plugins/openapi-worker.js.map +0 -1
  836. package/dist/vite/prerender.js +0 -89
  837. package/dist/vite/prerender.js.map +0 -1
  838. package/lib/AnchorLink-BR0MvI7n.js +0 -35
  839. package/lib/AnchorLink-BR0MvI7n.js.map +0 -1
  840. package/lib/AuthenticationPlugin-D0Em0SwR.js +0 -59
  841. package/lib/AuthenticationPlugin-D0Em0SwR.js.map +0 -1
  842. package/lib/Button-jK0EsymC.js.map +0 -1
  843. package/lib/Markdown-CRsmPPfY.js.map +0 -1
  844. package/lib/MdxPage-Wp8QU0-q.js +0 -188
  845. package/lib/MdxPage-Wp8QU0-q.js.map +0 -1
  846. package/lib/OperationList-u8xHU9-b.js +0 -4706
  847. package/lib/OperationList-u8xHU9-b.js.map +0 -1
  848. package/lib/Route-DlG_HTMu.js +0 -11
  849. package/lib/Route-DlG_HTMu.js.map +0 -1
  850. package/lib/Select-O9ZM3ZgX.js.map +0 -1
  851. package/lib/SidebarBadge-DxFJcJ6V.js +0 -51
  852. package/lib/SidebarBadge-DxFJcJ6V.js.map +0 -1
  853. package/lib/SlotletProvider-BgvYIPQe.js +0 -252
  854. package/lib/SlotletProvider-BgvYIPQe.js.map +0 -1
  855. package/lib/Spinner-3cQDBVGr.js +0 -7
  856. package/lib/Spinner-3cQDBVGr.js.map +0 -1
  857. package/lib/SyntaxHighlight-C31iouiO.js.map +0 -1
  858. package/lib/__vite-browser-external-BYRIRx8p.js +0 -9
  859. package/lib/__vite-browser-external-BYRIRx8p.js.map +0 -1
  860. package/lib/assets/index-B_Jk_Yzp.js +0 -4820
  861. package/lib/assets/index-B_Jk_Yzp.js.map +0 -1
  862. package/lib/assets/worker-C_2va8B8.js +0 -18200
  863. package/lib/assets/worker-C_2va8B8.js.map +0 -1
  864. package/lib/cn-BmFQLtkS.js.map +0 -1
  865. package/lib/context-D1nXWxm7.js.map +0 -1
  866. package/lib/createServer-BCAHdrpE.js +0 -15302
  867. package/lib/createServer-BCAHdrpE.js.map +0 -1
  868. package/lib/hook-hEqe7fPB.js.map +0 -1
  869. package/lib/index-BuAyrJe3.js +0 -46
  870. package/lib/index-BuAyrJe3.js.map +0 -1
  871. package/lib/index-CkwDvuPt.js.map +0 -1
  872. package/lib/index-CmdLGbbk.js +0 -1279
  873. package/lib/index-CmdLGbbk.js.map +0 -1
  874. package/lib/index-Czzd9rjU.js +0 -899
  875. package/lib/index-Czzd9rjU.js.map +0 -1
  876. package/lib/index-Yn8c3UWE.js +0 -921
  877. package/lib/index-Yn8c3UWE.js.map +0 -1
  878. package/lib/index.esm-Bm8pj-bc.js +0 -675
  879. package/lib/index.esm-C5mr_sKO.js +0 -1193
  880. package/lib/index.esm-C5mr_sKO.js.map +0 -1
  881. package/lib/jsx-runtime-B6kdoens.js +0 -635
  882. package/lib/jsx-runtime-B6kdoens.js.map +0 -1
  883. package/lib/object_hash-CvlLgU-M.js +0 -785
  884. package/lib/object_hash-CvlLgU-M.js.map +0 -1
  885. package/lib/prism-csharp.min-Yizuc34Y.js +0 -35
  886. package/lib/prism-java.min-d5iT_mOd.js +0 -7
  887. package/lib/prism-ruby.min-C7LwcKyz.js +0 -10
  888. package/lib/prism-typescript.min-oSVeWCAd.js +0 -6
  889. package/lib/router-lfyopgBI.js +0 -3024
  890. package/lib/router-lfyopgBI.js.map +0 -1
  891. package/lib/state-tsXBLONe.js +0 -203
  892. package/lib/state-tsXBLONe.js.map +0 -1
  893. package/lib/useExposedProps-CTPtylCV.js +0 -10
  894. package/lib/useExposedProps-CTPtylCV.js.map +0 -1
  895. package/lib/utils-DcpDOncX.js +0 -1218
  896. package/lib/utils-DcpDOncX.js.map +0 -1
  897. package/lib/zudoku.openapi-worker.js +0 -15
  898. package/lib/zudoku.openapi-worker.js.map +0 -1
  899. package/src/lib/plugins/openapi/Route.tsx +0 -19
  900. package/src/lib/plugins/openapi/client/worker.ts +0 -44
  901. package/src/lib/plugins/openapi/playground/ResponseTab.tsx +0 -76
  902. package/src/lib/plugins/openapi-worker.ts +0 -11
  903. /package/dist/lib/plugins/openapi/schema/{SchemaComponents.d.ts → SchemaPropertyItem.d.ts} +0 -0
@@ -0,0 +1,1821 @@
1
+ import * as i from "react";
2
+ var _ = {}, ue;
3
+ function Ae() {
4
+ if (ue) return _;
5
+ ue = 1, Object.defineProperty(_, "__esModule", { value: !0 }), _.parse = c, _.serialize = s;
6
+ const e = /^[\u0021-\u003A\u003C\u003E-\u007E]+$/, t = /^[\u0021-\u003A\u003C-\u007E]*$/, n = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i, a = /^[\u0020-\u003A\u003D-\u007E]*$/, r = Object.prototype.toString, o = /* @__PURE__ */ (() => {
7
+ const d = function() {
8
+ };
9
+ return d.prototype = /* @__PURE__ */ Object.create(null), d;
10
+ })();
11
+ function c(d, m) {
12
+ const f = new o(), E = d.length;
13
+ if (E < 2)
14
+ return f;
15
+ const g = (m == null ? void 0 : m.decode) || h;
16
+ let v = 0;
17
+ do {
18
+ const y = d.indexOf("=", v);
19
+ if (y === -1)
20
+ break;
21
+ const w = d.indexOf(";", v), R = w === -1 ? E : w;
22
+ if (y > R) {
23
+ v = d.lastIndexOf(";", y - 1) + 1;
24
+ continue;
25
+ }
26
+ const x = u(d, v, y), C = l(d, y, x), $ = d.slice(x, C);
27
+ if (f[$] === void 0) {
28
+ let P = u(d, y + 1, R), S = l(d, R, P);
29
+ const D = g(d.slice(P, S));
30
+ f[$] = D;
31
+ }
32
+ v = R + 1;
33
+ } while (v < E);
34
+ return f;
35
+ }
36
+ function u(d, m, f) {
37
+ do {
38
+ const E = d.charCodeAt(m);
39
+ if (E !== 32 && E !== 9)
40
+ return m;
41
+ } while (++m < f);
42
+ return f;
43
+ }
44
+ function l(d, m, f) {
45
+ for (; m > f; ) {
46
+ const E = d.charCodeAt(--m);
47
+ if (E !== 32 && E !== 9)
48
+ return m + 1;
49
+ }
50
+ return f;
51
+ }
52
+ function s(d, m, f) {
53
+ const E = (f == null ? void 0 : f.encode) || encodeURIComponent;
54
+ if (!e.test(d))
55
+ throw new TypeError(`argument name is invalid: ${d}`);
56
+ const g = E(m);
57
+ if (!t.test(g))
58
+ throw new TypeError(`argument val is invalid: ${m}`);
59
+ let v = d + "=" + g;
60
+ if (!f)
61
+ return v;
62
+ if (f.maxAge !== void 0) {
63
+ if (!Number.isInteger(f.maxAge))
64
+ throw new TypeError(`option maxAge is invalid: ${f.maxAge}`);
65
+ v += "; Max-Age=" + f.maxAge;
66
+ }
67
+ if (f.domain) {
68
+ if (!n.test(f.domain))
69
+ throw new TypeError(`option domain is invalid: ${f.domain}`);
70
+ v += "; Domain=" + f.domain;
71
+ }
72
+ if (f.path) {
73
+ if (!a.test(f.path))
74
+ throw new TypeError(`option path is invalid: ${f.path}`);
75
+ v += "; Path=" + f.path;
76
+ }
77
+ if (f.expires) {
78
+ if (!p(f.expires) || !Number.isFinite(f.expires.valueOf()))
79
+ throw new TypeError(`option expires is invalid: ${f.expires}`);
80
+ v += "; Expires=" + f.expires.toUTCString();
81
+ }
82
+ if (f.httpOnly && (v += "; HttpOnly"), f.secure && (v += "; Secure"), f.partitioned && (v += "; Partitioned"), f.priority)
83
+ switch (typeof f.priority == "string" ? f.priority.toLowerCase() : void 0) {
84
+ case "low":
85
+ v += "; Priority=Low";
86
+ break;
87
+ case "medium":
88
+ v += "; Priority=Medium";
89
+ break;
90
+ case "high":
91
+ v += "; Priority=High";
92
+ break;
93
+ default:
94
+ throw new TypeError(`option priority is invalid: ${f.priority}`);
95
+ }
96
+ if (f.sameSite)
97
+ switch (typeof f.sameSite == "string" ? f.sameSite.toLowerCase() : f.sameSite) {
98
+ case !0:
99
+ case "strict":
100
+ v += "; SameSite=Strict";
101
+ break;
102
+ case "lax":
103
+ v += "; SameSite=Lax";
104
+ break;
105
+ case "none":
106
+ v += "; SameSite=None";
107
+ break;
108
+ default:
109
+ throw new TypeError(`option sameSite is invalid: ${f.sameSite}`);
110
+ }
111
+ return v;
112
+ }
113
+ function h(d) {
114
+ if (d.indexOf("%") === -1)
115
+ return d;
116
+ try {
117
+ return decodeURIComponent(d);
118
+ } catch {
119
+ return d;
120
+ }
121
+ }
122
+ function p(d) {
123
+ return r.call(d) === "[object Date]";
124
+ }
125
+ return _;
126
+ }
127
+ Ae();
128
+ /**
129
+ * react-router v7.1.5
130
+ *
131
+ * Copyright (c) Remix Software Inc.
132
+ *
133
+ * This source code is licensed under the MIT license found in the
134
+ * LICENSE.md file in the root directory of this source tree.
135
+ *
136
+ * @license MIT
137
+ */
138
+ function b(e, t) {
139
+ if (e === !1 || e === null || typeof e > "u")
140
+ throw new Error(t);
141
+ }
142
+ function L(e, t) {
143
+ if (!e) {
144
+ typeof console < "u" && console.warn(t);
145
+ try {
146
+ throw new Error(t);
147
+ } catch {
148
+ }
149
+ }
150
+ }
151
+ function B({
152
+ pathname: e = "/",
153
+ search: t = "",
154
+ hash: n = ""
155
+ }) {
156
+ return t && t !== "?" && (e += t.charAt(0) === "?" ? t : "?" + t), n && n !== "#" && (e += n.charAt(0) === "#" ? n : "#" + n), e;
157
+ }
158
+ function Y(e) {
159
+ let t = {};
160
+ if (e) {
161
+ let n = e.indexOf("#");
162
+ n >= 0 && (t.hash = e.substring(n), e = e.substring(0, n));
163
+ let a = e.indexOf("?");
164
+ a >= 0 && (t.search = e.substring(a), e = e.substring(0, a)), e && (t.pathname = e);
165
+ }
166
+ return t;
167
+ }
168
+ function pe(e, t, n = "/") {
169
+ return De(e, t, n, !1);
170
+ }
171
+ function De(e, t, n, a) {
172
+ let r = typeof t == "string" ? Y(t) : t, o = I(r.pathname || "/", n);
173
+ if (o == null)
174
+ return null;
175
+ let c = ve(e);
176
+ Ie(c);
177
+ let u = null;
178
+ for (let l = 0; u == null && l < c.length; ++l) {
179
+ let s = ye(o);
180
+ u = ze(
181
+ c[l],
182
+ s,
183
+ a
184
+ );
185
+ }
186
+ return u;
187
+ }
188
+ function ve(e, t = [], n = [], a = "") {
189
+ let r = (o, c, u) => {
190
+ let l = {
191
+ relativePath: u === void 0 ? o.path || "" : u,
192
+ caseSensitive: o.caseSensitive === !0,
193
+ childrenIndex: c,
194
+ route: o
195
+ };
196
+ l.relativePath.startsWith("/") && (b(
197
+ l.relativePath.startsWith(a),
198
+ `Absolute route path "${l.relativePath}" nested under path "${a}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`
199
+ ), l.relativePath = l.relativePath.slice(a.length));
200
+ let s = A([a, l.relativePath]), h = n.concat(l);
201
+ o.children && o.children.length > 0 && (b(
202
+ // Our types know better, but runtime JS may not!
203
+ // @ts-expect-error
204
+ o.index !== !0,
205
+ `Index routes must not have child routes. Please remove all child routes from route path "${s}".`
206
+ ), ve(o.children, t, h, s)), !(o.path == null && !o.index) && t.push({
207
+ path: s,
208
+ score: He(s, o.index),
209
+ routesMeta: h
210
+ });
211
+ };
212
+ return e.forEach((o, c) => {
213
+ var u;
214
+ if (o.path === "" || !((u = o.path) != null && u.includes("?")))
215
+ r(o, c);
216
+ else
217
+ for (let l of ge(o.path))
218
+ r(o, c, l);
219
+ }), t;
220
+ }
221
+ function ge(e) {
222
+ let t = e.split("/");
223
+ if (t.length === 0) return [];
224
+ let [n, ...a] = t, r = n.endsWith("?"), o = n.replace(/\?$/, "");
225
+ if (a.length === 0)
226
+ return r ? [o, ""] : [o];
227
+ let c = ge(a.join("/")), u = [];
228
+ return u.push(
229
+ ...c.map(
230
+ (l) => l === "" ? o : [o, l].join("/")
231
+ )
232
+ ), r && u.push(...c), u.map(
233
+ (l) => e.startsWith("/") && l === "" ? "/" : l
234
+ );
235
+ }
236
+ function Ie(e) {
237
+ e.sort(
238
+ (t, n) => t.score !== n.score ? n.score - t.score : We(
239
+ t.routesMeta.map((a) => a.childrenIndex),
240
+ n.routesMeta.map((a) => a.childrenIndex)
241
+ )
242
+ );
243
+ }
244
+ var Oe = /^:[\w-]+$/, Me = 3, Fe = 2, _e = 1, Ue = 10, Be = -2, ce = (e) => e === "*";
245
+ function He(e, t) {
246
+ let n = e.split("/"), a = n.length;
247
+ return n.some(ce) && (a += Be), t && (a += Fe), n.filter((r) => !ce(r)).reduce(
248
+ (r, o) => r + (Oe.test(o) ? Me : o === "" ? _e : Ue),
249
+ a
250
+ );
251
+ }
252
+ function We(e, t) {
253
+ return e.length === t.length && e.slice(0, -1).every((a, r) => a === t[r]) ? (
254
+ // If two routes are siblings, we should try to match the earlier sibling
255
+ // first. This allows people to have fine-grained control over the matching
256
+ // behavior by simply putting routes with identical paths in the order they
257
+ // want them tried.
258
+ e[e.length - 1] - t[t.length - 1]
259
+ ) : (
260
+ // Otherwise, it doesn't really make sense to rank non-siblings by index,
261
+ // so they sort equally.
262
+ 0
263
+ );
264
+ }
265
+ function ze(e, t, n = !1) {
266
+ let { routesMeta: a } = e, r = {}, o = "/", c = [];
267
+ for (let u = 0; u < a.length; ++u) {
268
+ let l = a[u], s = u === a.length - 1, h = o === "/" ? t : t.slice(o.length) || "/", p = H(
269
+ { path: l.relativePath, caseSensitive: l.caseSensitive, end: s },
270
+ h
271
+ ), d = l.route;
272
+ if (!p && s && n && !a[a.length - 1].route.index && (p = H(
273
+ {
274
+ path: l.relativePath,
275
+ caseSensitive: l.caseSensitive,
276
+ end: !1
277
+ },
278
+ h
279
+ )), !p)
280
+ return null;
281
+ Object.assign(r, p.params), c.push({
282
+ // TODO: Can this as be avoided?
283
+ params: r,
284
+ pathname: A([o, p.pathname]),
285
+ pathnameBase: Ke(
286
+ A([o, p.pathnameBase])
287
+ ),
288
+ route: d
289
+ }), p.pathnameBase !== "/" && (o = A([o, p.pathnameBase]));
290
+ }
291
+ return c;
292
+ }
293
+ function H(e, t) {
294
+ typeof e == "string" && (e = { path: e, caseSensitive: !1, end: !0 });
295
+ let [n, a] = Ve(
296
+ e.path,
297
+ e.caseSensitive,
298
+ e.end
299
+ ), r = t.match(n);
300
+ if (!r) return null;
301
+ let o = r[0], c = o.replace(/(.)\/+$/, "$1"), u = r.slice(1);
302
+ return {
303
+ params: a.reduce(
304
+ (s, { paramName: h, isOptional: p }, d) => {
305
+ if (h === "*") {
306
+ let f = u[d] || "";
307
+ c = o.slice(0, o.length - f.length).replace(/(.)\/+$/, "$1");
308
+ }
309
+ const m = u[d];
310
+ return p && !m ? s[h] = void 0 : s[h] = (m || "").replace(/%2F/g, "/"), s;
311
+ },
312
+ {}
313
+ ),
314
+ pathname: o,
315
+ pathnameBase: c,
316
+ pattern: e
317
+ };
318
+ }
319
+ function Ve(e, t = !1, n = !0) {
320
+ L(
321
+ e === "*" || !e.endsWith("*") || e.endsWith("/*"),
322
+ `Route path "${e}" will be treated as if it were "${e.replace(/\*$/, "/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/, "/*")}".`
323
+ );
324
+ let a = [], r = "^" + e.replace(/\/*\*?$/, "").replace(/^\/*/, "/").replace(/[\\.*+^${}|()[\]]/g, "\\$&").replace(
325
+ /\/:([\w-]+)(\?)?/g,
326
+ (c, u, l) => (a.push({ paramName: u, isOptional: l != null }), l ? "/?([^\\/]+)?" : "/([^\\/]+)")
327
+ );
328
+ return e.endsWith("*") ? (a.push({ paramName: "*" }), r += e === "*" || e === "/*" ? "(.*)$" : "(?:\\/(.+)|\\/*)$") : n ? r += "\\/*$" : e !== "" && e !== "/" && (r += "(?:(?=\\/|$))"), [new RegExp(r, t ? void 0 : "i"), a];
329
+ }
330
+ function ye(e) {
331
+ try {
332
+ return e.split("/").map((t) => decodeURIComponent(t).replace(/\//g, "%2F")).join("/");
333
+ } catch (t) {
334
+ return L(
335
+ !1,
336
+ `The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`
337
+ ), e;
338
+ }
339
+ }
340
+ function I(e, t) {
341
+ if (t === "/") return e;
342
+ if (!e.toLowerCase().startsWith(t.toLowerCase()))
343
+ return null;
344
+ let n = t.endsWith("/") ? t.length - 1 : t.length, a = e.charAt(n);
345
+ return a && a !== "/" ? null : e.slice(n) || "/";
346
+ }
347
+ function je(e, t = "/") {
348
+ let {
349
+ pathname: n,
350
+ search: a = "",
351
+ hash: r = ""
352
+ } = typeof e == "string" ? Y(e) : e;
353
+ return {
354
+ pathname: n ? n.startsWith("/") ? n : Ye(n, t) : t,
355
+ search: qe(a),
356
+ hash: Ge(r)
357
+ };
358
+ }
359
+ function Ye(e, t) {
360
+ let n = t.replace(/\/+$/, "").split("/");
361
+ return e.split("/").forEach((r) => {
362
+ r === ".." ? n.length > 1 && n.pop() : r !== "." && n.push(r);
363
+ }), n.length > 1 ? n.join("/") : "/";
364
+ }
365
+ function G(e, t, n, a) {
366
+ return `Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(
367
+ a
368
+ )}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`;
369
+ }
370
+ function Je(e) {
371
+ return e.filter(
372
+ (t, n) => n === 0 || t.route.path && t.route.path.length > 0
373
+ );
374
+ }
375
+ function Z(e) {
376
+ let t = Je(e);
377
+ return t.map(
378
+ (n, a) => a === t.length - 1 ? n.pathname : n.pathnameBase
379
+ );
380
+ }
381
+ function ee(e, t, n, a = !1) {
382
+ let r;
383
+ typeof e == "string" ? r = Y(e) : (r = { ...e }, b(
384
+ !r.pathname || !r.pathname.includes("?"),
385
+ G("?", "pathname", "search", r)
386
+ ), b(
387
+ !r.pathname || !r.pathname.includes("#"),
388
+ G("#", "pathname", "hash", r)
389
+ ), b(
390
+ !r.search || !r.search.includes("#"),
391
+ G("#", "search", "hash", r)
392
+ ));
393
+ let o = e === "" || r.pathname === "", c = o ? "/" : r.pathname, u;
394
+ if (c == null)
395
+ u = n;
396
+ else {
397
+ let p = t.length - 1;
398
+ if (!a && c.startsWith("..")) {
399
+ let d = c.split("/");
400
+ for (; d[0] === ".."; )
401
+ d.shift(), p -= 1;
402
+ r.pathname = d.join("/");
403
+ }
404
+ u = p >= 0 ? t[p] : "/";
405
+ }
406
+ let l = je(r, u), s = c && c !== "/" && c.endsWith("/"), h = (o || c === ".") && n.endsWith("/");
407
+ return !l.pathname.endsWith("/") && (s || h) && (l.pathname += "/"), l;
408
+ }
409
+ var A = (e) => e.join("/").replace(/\/\/+/g, "/"), Ke = (e) => e.replace(/\/+$/, "").replace(/^\/*/, "/"), qe = (e) => !e || e === "?" ? "" : e.startsWith("?") ? e : "?" + e, Ge = (e) => !e || e === "#" ? "" : e.startsWith("#") ? e : "#" + e, an = (e, t = 302) => {
410
+ let n = t;
411
+ typeof n == "number" ? n = { status: n } : typeof n.status > "u" && (n.status = 302);
412
+ let a = new Headers(n.headers);
413
+ return a.set("Location", e), new Response(null, { ...n, headers: a });
414
+ };
415
+ function we(e) {
416
+ return e != null && typeof e.status == "number" && typeof e.statusText == "string" && typeof e.internal == "boolean" && "data" in e;
417
+ }
418
+ var Ee = [
419
+ "POST",
420
+ "PUT",
421
+ "PATCH",
422
+ "DELETE"
423
+ ];
424
+ new Set(
425
+ Ee
426
+ );
427
+ var Xe = [
428
+ "GET",
429
+ ...Ee
430
+ ];
431
+ new Set(Xe);
432
+ var O = i.createContext(null);
433
+ O.displayName = "DataRouter";
434
+ var F = i.createContext(null);
435
+ F.displayName = "DataRouterState";
436
+ var J = i.createContext({
437
+ isTransitioning: !1
438
+ });
439
+ J.displayName = "ViewTransition";
440
+ var te = i.createContext(
441
+ /* @__PURE__ */ new Map()
442
+ );
443
+ te.displayName = "Fetchers";
444
+ var Qe = i.createContext(null);
445
+ Qe.displayName = "Await";
446
+ var T = i.createContext(
447
+ null
448
+ );
449
+ T.displayName = "Navigation";
450
+ var K = i.createContext(
451
+ null
452
+ );
453
+ K.displayName = "Location";
454
+ var k = i.createContext({
455
+ outlet: null,
456
+ matches: [],
457
+ isDataRoute: !1
458
+ });
459
+ k.displayName = "Route";
460
+ var ne = i.createContext(null);
461
+ ne.displayName = "RouteError";
462
+ function Ze(e, { relative: t } = {}) {
463
+ b(
464
+ M(),
465
+ // TODO: This error is probably because they somehow have 2 versions of the
466
+ // router loaded. We can help them understand how to avoid that.
467
+ "useHref() may be used only in the context of a <Router> component."
468
+ );
469
+ let { basename: n, navigator: a } = i.useContext(T), { hash: r, pathname: o, search: c } = W(e, { relative: t }), u = o;
470
+ return n !== "/" && (u = o === "/" ? n : A([n, o])), a.createHref({ pathname: u, search: c, hash: r });
471
+ }
472
+ function M() {
473
+ return i.useContext(K) != null;
474
+ }
475
+ function N() {
476
+ return b(
477
+ M(),
478
+ // TODO: This error is probably because they somehow have 2 versions of the
479
+ // router loaded. We can help them understand how to avoid that.
480
+ "useLocation() may be used only in the context of a <Router> component."
481
+ ), i.useContext(K).location;
482
+ }
483
+ function on(e) {
484
+ b(
485
+ M(),
486
+ // TODO: This error is probably because they somehow have 2 versions of the
487
+ // router loaded. We can help them understand how to avoid that.
488
+ "useMatch() may be used only in the context of a <Router> component."
489
+ );
490
+ let { pathname: t } = N();
491
+ return i.useMemo(
492
+ () => H(e, ye(t)),
493
+ [t, e]
494
+ );
495
+ }
496
+ var xe = "You should call navigate() in a React.useEffect(), not when your component is first rendered.";
497
+ function Re(e) {
498
+ i.useContext(T).static || i.useLayoutEffect(e);
499
+ }
500
+ function re() {
501
+ let { isDataRoute: e } = i.useContext(k);
502
+ return e ? dt() : et();
503
+ }
504
+ function et() {
505
+ b(
506
+ M(),
507
+ // TODO: This error is probably because they somehow have 2 versions of the
508
+ // router loaded. We can help them understand how to avoid that.
509
+ "useNavigate() may be used only in the context of a <Router> component."
510
+ );
511
+ let e = i.useContext(O), { basename: t, navigator: n } = i.useContext(T), { matches: a } = i.useContext(k), { pathname: r } = N(), o = JSON.stringify(Z(a)), c = i.useRef(!1);
512
+ return Re(() => {
513
+ c.current = !0;
514
+ }), i.useCallback(
515
+ (l, s = {}) => {
516
+ if (L(c.current, xe), !c.current) return;
517
+ if (typeof l == "number") {
518
+ n.go(l);
519
+ return;
520
+ }
521
+ let h = ee(
522
+ l,
523
+ JSON.parse(o),
524
+ r,
525
+ s.relative === "path"
526
+ );
527
+ e == null && t !== "/" && (h.pathname = h.pathname === "/" ? t : A([t, h.pathname])), (s.replace ? n.replace : n.push)(
528
+ h,
529
+ s.state,
530
+ s
531
+ );
532
+ },
533
+ [
534
+ t,
535
+ n,
536
+ o,
537
+ r,
538
+ e
539
+ ]
540
+ );
541
+ }
542
+ var tt = i.createContext(null);
543
+ function nt(e) {
544
+ let t = i.useContext(k).outlet;
545
+ return t && /* @__PURE__ */ i.createElement(tt.Provider, { value: e }, t);
546
+ }
547
+ function ln() {
548
+ let { matches: e } = i.useContext(k), t = e[e.length - 1];
549
+ return t ? t.params : {};
550
+ }
551
+ function W(e, { relative: t } = {}) {
552
+ let { matches: n } = i.useContext(k), { pathname: a } = N(), r = JSON.stringify(Z(n));
553
+ return i.useMemo(
554
+ () => ee(
555
+ e,
556
+ JSON.parse(r),
557
+ a,
558
+ t === "path"
559
+ ),
560
+ [e, r, a, t]
561
+ );
562
+ }
563
+ function be(e, t, n, a) {
564
+ b(
565
+ M(),
566
+ // TODO: This error is probably because they somehow have 2 versions of the
567
+ // router loaded. We can help them understand how to avoid that.
568
+ "useRoutes() may be used only in the context of a <Router> component."
569
+ );
570
+ let { navigator: r, static: o } = i.useContext(T), { matches: c } = i.useContext(k), u = c[c.length - 1], l = u ? u.params : {}, s = u ? u.pathname : "/", h = u ? u.pathnameBase : "/", p = u && u.route;
571
+ {
572
+ let y = p && p.path || "";
573
+ Pe(
574
+ s,
575
+ !p || y.endsWith("*") || y.endsWith("*?"),
576
+ `You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${y}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
577
+
578
+ Please change the parent <Route path="${y}"> to <Route path="${y === "/" ? "*" : `${y}/*`}">.`
579
+ );
580
+ }
581
+ let d = N(), m;
582
+ m = d;
583
+ let f = m.pathname || "/", E = f;
584
+ if (h !== "/") {
585
+ let y = h.replace(/^\//, "").split("/");
586
+ E = "/" + f.replace(/^\//, "").split("/").slice(y.length).join("/");
587
+ }
588
+ let g = !o && n && n.matches && n.matches.length > 0 ? n.matches : pe(e, { pathname: E });
589
+ return L(
590
+ p || g != null,
591
+ `No routes matched location "${m.pathname}${m.search}${m.hash}" `
592
+ ), L(
593
+ g == null || g[g.length - 1].route.element !== void 0 || g[g.length - 1].route.Component !== void 0 || g[g.length - 1].route.lazy !== void 0,
594
+ `Matched leaf route at location "${m.pathname}${m.search}${m.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`
595
+ ), lt(
596
+ g && g.map(
597
+ (y) => Object.assign({}, y, {
598
+ params: Object.assign({}, l, y.params),
599
+ pathname: A([
600
+ h,
601
+ // Re-encode pathnames that were decoded inside matchRoutes
602
+ r.encodeLocation ? r.encodeLocation(y.pathname).pathname : y.pathname
603
+ ]),
604
+ pathnameBase: y.pathnameBase === "/" ? h : A([
605
+ h,
606
+ // Re-encode pathnames that were decoded inside matchRoutes
607
+ r.encodeLocation ? r.encodeLocation(y.pathnameBase).pathname : y.pathnameBase
608
+ ])
609
+ })
610
+ ),
611
+ c,
612
+ n,
613
+ a
614
+ );
615
+ }
616
+ function rt() {
617
+ let e = ft(), t = we(e) ? `${e.status} ${e.statusText}` : e instanceof Error ? e.message : JSON.stringify(e), n = e instanceof Error ? e.stack : null, a = "rgba(200,200,200, 0.5)", r = { padding: "0.5rem", backgroundColor: a }, o = { padding: "2px 4px", backgroundColor: a }, c = null;
618
+ return console.error(
619
+ "Error handled by React Router default ErrorBoundary:",
620
+ e
621
+ ), c = /* @__PURE__ */ i.createElement(i.Fragment, null, /* @__PURE__ */ i.createElement("p", null, "💿 Hey developer 👋"), /* @__PURE__ */ i.createElement("p", null, "You can provide a way better UX than this when your app throws errors by providing your own ", /* @__PURE__ */ i.createElement("code", { style: o }, "ErrorBoundary"), " or", " ", /* @__PURE__ */ i.createElement("code", { style: o }, "errorElement"), " prop on your route.")), /* @__PURE__ */ i.createElement(i.Fragment, null, /* @__PURE__ */ i.createElement("h2", null, "Unexpected Application Error!"), /* @__PURE__ */ i.createElement("h3", { style: { fontStyle: "italic" } }, t), n ? /* @__PURE__ */ i.createElement("pre", { style: r }, n) : null, c);
622
+ }
623
+ var at = /* @__PURE__ */ i.createElement(rt, null), it = class extends i.Component {
624
+ constructor(e) {
625
+ super(e), this.state = {
626
+ location: e.location,
627
+ revalidation: e.revalidation,
628
+ error: e.error
629
+ };
630
+ }
631
+ static getDerivedStateFromError(e) {
632
+ return { error: e };
633
+ }
634
+ static getDerivedStateFromProps(e, t) {
635
+ return t.location !== e.location || t.revalidation !== "idle" && e.revalidation === "idle" ? {
636
+ error: e.error,
637
+ location: e.location,
638
+ revalidation: e.revalidation
639
+ } : {
640
+ error: e.error !== void 0 ? e.error : t.error,
641
+ location: t.location,
642
+ revalidation: e.revalidation || t.revalidation
643
+ };
644
+ }
645
+ componentDidCatch(e, t) {
646
+ console.error(
647
+ "React Router caught the following error during render",
648
+ e,
649
+ t
650
+ );
651
+ }
652
+ render() {
653
+ return this.state.error !== void 0 ? /* @__PURE__ */ i.createElement(k.Provider, { value: this.props.routeContext }, /* @__PURE__ */ i.createElement(
654
+ ne.Provider,
655
+ {
656
+ value: this.state.error,
657
+ children: this.props.component
658
+ }
659
+ )) : this.props.children;
660
+ }
661
+ };
662
+ function ot({ routeContext: e, match: t, children: n }) {
663
+ let a = i.useContext(O);
664
+ return a && a.static && a.staticContext && (t.route.errorElement || t.route.ErrorBoundary) && (a.staticContext._deepestRenderedBoundaryId = t.route.id), /* @__PURE__ */ i.createElement(k.Provider, { value: e }, n);
665
+ }
666
+ function lt(e, t = [], n = null, a = null) {
667
+ if (e == null) {
668
+ if (!n)
669
+ return null;
670
+ if (n.errors)
671
+ e = n.matches;
672
+ else if (t.length === 0 && !n.initialized && n.matches.length > 0)
673
+ e = n.matches;
674
+ else
675
+ return null;
676
+ }
677
+ let r = e, o = n == null ? void 0 : n.errors;
678
+ if (o != null) {
679
+ let l = r.findIndex(
680
+ (s) => s.route.id && (o == null ? void 0 : o[s.route.id]) !== void 0
681
+ );
682
+ b(
683
+ l >= 0,
684
+ `Could not find a matching route for errors on route IDs: ${Object.keys(
685
+ o
686
+ ).join(",")}`
687
+ ), r = r.slice(
688
+ 0,
689
+ Math.min(r.length, l + 1)
690
+ );
691
+ }
692
+ let c = !1, u = -1;
693
+ if (n)
694
+ for (let l = 0; l < r.length; l++) {
695
+ let s = r[l];
696
+ if ((s.route.HydrateFallback || s.route.hydrateFallbackElement) && (u = l), s.route.id) {
697
+ let { loaderData: h, errors: p } = n, d = s.route.loader && !h.hasOwnProperty(s.route.id) && (!p || p[s.route.id] === void 0);
698
+ if (s.route.lazy || d) {
699
+ c = !0, u >= 0 ? r = r.slice(0, u + 1) : r = [r[0]];
700
+ break;
701
+ }
702
+ }
703
+ }
704
+ return r.reduceRight((l, s, h) => {
705
+ let p, d = !1, m = null, f = null;
706
+ n && (p = o && s.route.id ? o[s.route.id] : void 0, m = s.route.errorElement || at, c && (u < 0 && h === 0 ? (Pe(
707
+ "route-fallback",
708
+ !1,
709
+ "No `HydrateFallback` element provided to render during initial hydration"
710
+ ), d = !0, f = null) : u === h && (d = !0, f = s.route.hydrateFallbackElement || null)));
711
+ let E = t.concat(r.slice(0, h + 1)), g = () => {
712
+ let v;
713
+ return p ? v = m : d ? v = f : s.route.Component ? v = /* @__PURE__ */ i.createElement(s.route.Component, null) : s.route.element ? v = s.route.element : v = l, /* @__PURE__ */ i.createElement(
714
+ ot,
715
+ {
716
+ match: s,
717
+ routeContext: {
718
+ outlet: l,
719
+ matches: E,
720
+ isDataRoute: n != null
721
+ },
722
+ children: v
723
+ }
724
+ );
725
+ };
726
+ return n && (s.route.ErrorBoundary || s.route.errorElement || h === 0) ? /* @__PURE__ */ i.createElement(
727
+ it,
728
+ {
729
+ location: n.location,
730
+ revalidation: n.revalidation,
731
+ component: m,
732
+ error: p,
733
+ children: g(),
734
+ routeContext: { outlet: null, matches: E, isDataRoute: !0 }
735
+ }
736
+ ) : g();
737
+ }, null);
738
+ }
739
+ function ae(e) {
740
+ return `${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`;
741
+ }
742
+ function st(e) {
743
+ let t = i.useContext(O);
744
+ return b(t, ae(e)), t;
745
+ }
746
+ function Ce(e) {
747
+ let t = i.useContext(F);
748
+ return b(t, ae(e)), t;
749
+ }
750
+ function ut(e) {
751
+ let t = i.useContext(k);
752
+ return b(t, ae(e)), t;
753
+ }
754
+ function ie(e) {
755
+ let t = ut(e), n = t.matches[t.matches.length - 1];
756
+ return b(
757
+ n.route.id,
758
+ `${e} can only be used on routes that contain a unique "id"`
759
+ ), n.route.id;
760
+ }
761
+ function ct() {
762
+ return ie(
763
+ "useRouteId"
764
+ /* UseRouteId */
765
+ );
766
+ }
767
+ function sn() {
768
+ return Ce(
769
+ "useNavigation"
770
+ /* UseNavigation */
771
+ ).navigation;
772
+ }
773
+ function ft() {
774
+ var a;
775
+ let e = i.useContext(ne), t = Ce(
776
+ "useRouteError"
777
+ /* UseRouteError */
778
+ ), n = ie(
779
+ "useRouteError"
780
+ /* UseRouteError */
781
+ );
782
+ return e !== void 0 ? e : (a = t.errors) == null ? void 0 : a[n];
783
+ }
784
+ function dt() {
785
+ let { router: e } = st(
786
+ "useNavigate"
787
+ /* UseNavigateStable */
788
+ ), t = ie(
789
+ "useNavigate"
790
+ /* UseNavigateStable */
791
+ ), n = i.useRef(!1);
792
+ return Re(() => {
793
+ n.current = !0;
794
+ }), i.useCallback(
795
+ async (r, o = {}) => {
796
+ L(n.current, xe), n.current && (typeof r == "number" ? e.navigate(r) : await e.navigate(r, { fromRouteId: t, ...o }));
797
+ },
798
+ [e, t]
799
+ );
800
+ }
801
+ var fe = {};
802
+ function Pe(e, t, n) {
803
+ !t && !fe[e] && (fe[e] = !0, L(!1, n));
804
+ }
805
+ var de = {};
806
+ function he(e, t) {
807
+ !e && !de[t] && (de[t] = !0, console.warn(t));
808
+ }
809
+ var ht = class {
810
+ constructor() {
811
+ this.status = "pending", this.promise = new Promise((e, t) => {
812
+ this.resolve = (n) => {
813
+ this.status === "pending" && (this.status = "resolved", e(n));
814
+ }, this.reject = (n) => {
815
+ this.status === "pending" && (this.status = "rejected", t(n));
816
+ };
817
+ });
818
+ }
819
+ };
820
+ function un({
821
+ router: e,
822
+ flushSync: t
823
+ }) {
824
+ let [n, a] = i.useState(e.state), [r, o] = i.useState(), [c, u] = i.useState({
825
+ isTransitioning: !1
826
+ }), [l, s] = i.useState(), [h, p] = i.useState(), [d, m] = i.useState(), f = i.useRef(/* @__PURE__ */ new Map()), E = i.useCallback(
827
+ (w, { deletedFetchers: R, flushSync: x, viewTransitionOpts: C }) => {
828
+ w.fetchers.forEach((P, S) => {
829
+ P.data !== void 0 && f.current.set(S, P.data);
830
+ }), R.forEach((P) => f.current.delete(P)), he(
831
+ x === !1 || t != null,
832
+ 'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.'
833
+ );
834
+ let $ = e.window != null && e.window.document != null && typeof e.window.document.startViewTransition == "function";
835
+ if (he(
836
+ C == null || $,
837
+ "You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."
838
+ ), !C || !$) {
839
+ t && x ? t(() => a(w)) : i.startTransition(() => a(w));
840
+ return;
841
+ }
842
+ if (t && x) {
843
+ t(() => {
844
+ h && (l && l.resolve(), h.skipTransition()), u({
845
+ isTransitioning: !0,
846
+ flushSync: !0,
847
+ currentLocation: C.currentLocation,
848
+ nextLocation: C.nextLocation
849
+ });
850
+ });
851
+ let P = e.window.document.startViewTransition(() => {
852
+ t(() => a(w));
853
+ });
854
+ P.finished.finally(() => {
855
+ t(() => {
856
+ s(void 0), p(void 0), o(void 0), u({ isTransitioning: !1 });
857
+ });
858
+ }), t(() => p(P));
859
+ return;
860
+ }
861
+ h ? (l && l.resolve(), h.skipTransition(), m({
862
+ state: w,
863
+ currentLocation: C.currentLocation,
864
+ nextLocation: C.nextLocation
865
+ })) : (o(w), u({
866
+ isTransitioning: !0,
867
+ flushSync: !1,
868
+ currentLocation: C.currentLocation,
869
+ nextLocation: C.nextLocation
870
+ }));
871
+ },
872
+ [e.window, t, h, l]
873
+ );
874
+ i.useLayoutEffect(() => e.subscribe(E), [e, E]), i.useEffect(() => {
875
+ c.isTransitioning && !c.flushSync && s(new ht());
876
+ }, [c]), i.useEffect(() => {
877
+ if (l && r && e.window) {
878
+ let w = r, R = l.promise, x = e.window.document.startViewTransition(async () => {
879
+ i.startTransition(() => a(w)), await R;
880
+ });
881
+ x.finished.finally(() => {
882
+ s(void 0), p(void 0), o(void 0), u({ isTransitioning: !1 });
883
+ }), p(x);
884
+ }
885
+ }, [r, l, e.window]), i.useEffect(() => {
886
+ l && r && n.location.key === r.location.key && l.resolve();
887
+ }, [l, h, n.location, r]), i.useEffect(() => {
888
+ !c.isTransitioning && d && (o(d.state), u({
889
+ isTransitioning: !0,
890
+ flushSync: !1,
891
+ currentLocation: d.currentLocation,
892
+ nextLocation: d.nextLocation
893
+ }), m(void 0));
894
+ }, [c.isTransitioning, d]);
895
+ let g = i.useMemo(() => ({
896
+ createHref: e.createHref,
897
+ encodeLocation: e.encodeLocation,
898
+ go: (w) => e.navigate(w),
899
+ push: (w, R, x) => e.navigate(w, {
900
+ state: R,
901
+ preventScrollReset: x == null ? void 0 : x.preventScrollReset
902
+ }),
903
+ replace: (w, R, x) => e.navigate(w, {
904
+ replace: !0,
905
+ state: R,
906
+ preventScrollReset: x == null ? void 0 : x.preventScrollReset
907
+ })
908
+ }), [e]), v = e.basename || "/", y = i.useMemo(
909
+ () => ({
910
+ router: e,
911
+ navigator: g,
912
+ static: !1,
913
+ basename: v
914
+ }),
915
+ [e, g, v]
916
+ );
917
+ return /* @__PURE__ */ i.createElement(i.Fragment, null, /* @__PURE__ */ i.createElement(O.Provider, { value: y }, /* @__PURE__ */ i.createElement(F.Provider, { value: n }, /* @__PURE__ */ i.createElement(te.Provider, { value: f.current }, /* @__PURE__ */ i.createElement(J.Provider, { value: c }, /* @__PURE__ */ i.createElement(
918
+ Se,
919
+ {
920
+ basename: v,
921
+ location: n.location,
922
+ navigationType: n.historyAction,
923
+ navigator: g
924
+ },
925
+ /* @__PURE__ */ i.createElement(
926
+ mt,
927
+ {
928
+ routes: e.routes,
929
+ future: e.future,
930
+ state: n
931
+ }
932
+ )
933
+ ))))), null);
934
+ }
935
+ var mt = i.memo(pt);
936
+ function pt({
937
+ routes: e,
938
+ future: t,
939
+ state: n
940
+ }) {
941
+ return be(e, void 0, n, t);
942
+ }
943
+ function cn({
944
+ to: e,
945
+ replace: t,
946
+ state: n,
947
+ relative: a
948
+ }) {
949
+ b(
950
+ M(),
951
+ // TODO: This error is probably because they somehow have 2 versions of
952
+ // the router loaded. We can help them understand how to avoid that.
953
+ "<Navigate> may be used only in the context of a <Router> component."
954
+ );
955
+ let { static: r } = i.useContext(T);
956
+ L(
957
+ !r,
958
+ "<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change."
959
+ );
960
+ let { matches: o } = i.useContext(k), { pathname: c } = N(), u = re(), l = ee(
961
+ e,
962
+ Z(o),
963
+ c,
964
+ a === "path"
965
+ ), s = JSON.stringify(l);
966
+ return i.useEffect(() => {
967
+ u(JSON.parse(s), { replace: t, state: n, relative: a });
968
+ }, [u, s, a, t, n]), null;
969
+ }
970
+ function fn(e) {
971
+ return nt(e.context);
972
+ }
973
+ function Se({
974
+ basename: e = "/",
975
+ children: t = null,
976
+ location: n,
977
+ navigationType: a = "POP",
978
+ navigator: r,
979
+ static: o = !1
980
+ }) {
981
+ b(
982
+ !M(),
983
+ "You cannot render a <Router> inside another <Router>. You should never have more than one in your app."
984
+ );
985
+ let c = e.replace(/^\/*/, "/"), u = i.useMemo(
986
+ () => ({
987
+ basename: c,
988
+ navigator: r,
989
+ static: o,
990
+ future: {}
991
+ }),
992
+ [c, r, o]
993
+ );
994
+ typeof n == "string" && (n = Y(n));
995
+ let {
996
+ pathname: l = "/",
997
+ search: s = "",
998
+ hash: h = "",
999
+ state: p = null,
1000
+ key: d = "default"
1001
+ } = n, m = i.useMemo(() => {
1002
+ let f = I(l, c);
1003
+ return f == null ? null : {
1004
+ location: {
1005
+ pathname: f,
1006
+ search: s,
1007
+ hash: h,
1008
+ state: p,
1009
+ key: d
1010
+ },
1011
+ navigationType: a
1012
+ };
1013
+ }, [c, l, s, h, p, d, a]);
1014
+ return L(
1015
+ m != null,
1016
+ `<Router basename="${c}"> is not able to match the URL "${l}${s}${h}" because it does not start with the basename, so the <Router> won't render anything.`
1017
+ ), m == null ? null : /* @__PURE__ */ i.createElement(T.Provider, { value: u }, /* @__PURE__ */ i.createElement(K.Provider, { children: t, value: m }));
1018
+ }
1019
+ var V = "get", j = "application/x-www-form-urlencoded";
1020
+ function q(e) {
1021
+ return e != null && typeof e.tagName == "string";
1022
+ }
1023
+ function vt(e) {
1024
+ return q(e) && e.tagName.toLowerCase() === "button";
1025
+ }
1026
+ function gt(e) {
1027
+ return q(e) && e.tagName.toLowerCase() === "form";
1028
+ }
1029
+ function yt(e) {
1030
+ return q(e) && e.tagName.toLowerCase() === "input";
1031
+ }
1032
+ function wt(e) {
1033
+ return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);
1034
+ }
1035
+ function Et(e, t) {
1036
+ return e.button === 0 && // Ignore everything but left clicks
1037
+ (!t || t === "_self") && // Let browser handle "target=_blank" etc.
1038
+ !wt(e);
1039
+ }
1040
+ function Q(e = "") {
1041
+ return new URLSearchParams(
1042
+ typeof e == "string" || Array.isArray(e) || e instanceof URLSearchParams ? e : Object.keys(e).reduce((t, n) => {
1043
+ let a = e[n];
1044
+ return t.concat(
1045
+ Array.isArray(a) ? a.map((r) => [n, r]) : [[n, a]]
1046
+ );
1047
+ }, [])
1048
+ );
1049
+ }
1050
+ function xt(e, t) {
1051
+ let n = Q(e);
1052
+ return t && t.forEach((a, r) => {
1053
+ n.has(r) || t.getAll(r).forEach((o) => {
1054
+ n.append(r, o);
1055
+ });
1056
+ }), n;
1057
+ }
1058
+ var z = null;
1059
+ function Rt() {
1060
+ if (z === null)
1061
+ try {
1062
+ new FormData(
1063
+ document.createElement("form"),
1064
+ // @ts-expect-error if FormData supports the submitter parameter, this will throw
1065
+ 0
1066
+ ), z = !1;
1067
+ } catch {
1068
+ z = !0;
1069
+ }
1070
+ return z;
1071
+ }
1072
+ var bt = /* @__PURE__ */ new Set([
1073
+ "application/x-www-form-urlencoded",
1074
+ "multipart/form-data",
1075
+ "text/plain"
1076
+ ]);
1077
+ function X(e) {
1078
+ return e != null && !bt.has(e) ? (L(
1079
+ !1,
1080
+ `"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${j}"`
1081
+ ), null) : e;
1082
+ }
1083
+ function Ct(e, t) {
1084
+ let n, a, r, o, c;
1085
+ if (gt(e)) {
1086
+ let u = e.getAttribute("action");
1087
+ a = u ? I(u, t) : null, n = e.getAttribute("method") || V, r = X(e.getAttribute("enctype")) || j, o = new FormData(e);
1088
+ } else if (vt(e) || yt(e) && (e.type === "submit" || e.type === "image")) {
1089
+ let u = e.form;
1090
+ if (u == null)
1091
+ throw new Error(
1092
+ 'Cannot submit a <button> or <input type="submit"> without a <form>'
1093
+ );
1094
+ let l = e.getAttribute("formaction") || u.getAttribute("action");
1095
+ if (a = l ? I(l, t) : null, n = e.getAttribute("formmethod") || u.getAttribute("method") || V, r = X(e.getAttribute("formenctype")) || X(u.getAttribute("enctype")) || j, o = new FormData(u, e), !Rt()) {
1096
+ let { name: s, type: h, value: p } = e;
1097
+ if (h === "image") {
1098
+ let d = s ? `${s}.` : "";
1099
+ o.append(`${d}x`, "0"), o.append(`${d}y`, "0");
1100
+ } else s && o.append(s, p);
1101
+ }
1102
+ } else {
1103
+ if (q(e))
1104
+ throw new Error(
1105
+ 'Cannot submit element that is not <form>, <button>, or <input type="submit|image">'
1106
+ );
1107
+ n = V, a = null, r = j, c = e;
1108
+ }
1109
+ return o && r === "text/plain" && (c = o, o = void 0), { action: a, method: n.toLowerCase(), encType: r, formData: o, body: c };
1110
+ }
1111
+ function oe(e, t) {
1112
+ if (e === !1 || e === null || typeof e > "u")
1113
+ throw new Error(t);
1114
+ }
1115
+ async function Pt(e, t) {
1116
+ if (e.id in t)
1117
+ return t[e.id];
1118
+ try {
1119
+ let n = await import(
1120
+ /* @vite-ignore */
1121
+ /* webpackIgnore: true */
1122
+ e.module
1123
+ );
1124
+ return t[e.id] = n, n;
1125
+ } catch (n) {
1126
+ return console.error(
1127
+ `Error loading route module \`${e.module}\`, reloading page...`
1128
+ ), console.error(n), window.__reactRouterContext && window.__reactRouterContext.isSpaMode, window.location.reload(), new Promise(() => {
1129
+ });
1130
+ }
1131
+ }
1132
+ function St(e) {
1133
+ return e == null ? !1 : e.href == null ? e.rel === "preload" && typeof e.imageSrcSet == "string" && typeof e.imageSizes == "string" : typeof e.rel == "string" && typeof e.href == "string";
1134
+ }
1135
+ async function Lt(e, t, n) {
1136
+ let a = await Promise.all(
1137
+ e.map(async (r) => {
1138
+ let o = t.routes[r.route.id];
1139
+ if (o) {
1140
+ let c = await Pt(o, n);
1141
+ return c.links ? c.links() : [];
1142
+ }
1143
+ return [];
1144
+ })
1145
+ );
1146
+ return Nt(
1147
+ a.flat(1).filter(St).filter((r) => r.rel === "stylesheet" || r.rel === "preload").map(
1148
+ (r) => r.rel === "stylesheet" ? { ...r, rel: "prefetch", as: "style" } : { ...r, rel: "prefetch" }
1149
+ )
1150
+ );
1151
+ }
1152
+ function me(e, t, n, a, r, o) {
1153
+ let c = (l, s) => n[s] ? l.route.id !== n[s].route.id : !0, u = (l, s) => {
1154
+ var h;
1155
+ return (
1156
+ // param change, /users/123 -> /users/456
1157
+ n[s].pathname !== l.pathname || // splat param changed, which is not present in match.path
1158
+ // e.g. /files/images/avatar.jpg -> files/finances.xls
1159
+ ((h = n[s].route.path) == null ? void 0 : h.endsWith("*")) && n[s].params["*"] !== l.params["*"]
1160
+ );
1161
+ };
1162
+ return o === "assets" ? t.filter(
1163
+ (l, s) => c(l, s) || u(l, s)
1164
+ ) : o === "data" ? t.filter((l, s) => {
1165
+ var p;
1166
+ let h = a.routes[l.route.id];
1167
+ if (!h || !h.hasLoader)
1168
+ return !1;
1169
+ if (c(l, s) || u(l, s))
1170
+ return !0;
1171
+ if (l.route.shouldRevalidate) {
1172
+ let d = l.route.shouldRevalidate({
1173
+ currentUrl: new URL(
1174
+ r.pathname + r.search + r.hash,
1175
+ window.origin
1176
+ ),
1177
+ currentParams: ((p = n[0]) == null ? void 0 : p.params) || {},
1178
+ nextUrl: new URL(e, window.origin),
1179
+ nextParams: l.params,
1180
+ defaultShouldRevalidate: !0
1181
+ });
1182
+ if (typeof d == "boolean")
1183
+ return d;
1184
+ }
1185
+ return !0;
1186
+ }) : [];
1187
+ }
1188
+ function kt(e, t) {
1189
+ return $t(
1190
+ e.map((n) => {
1191
+ let a = t.routes[n.route.id];
1192
+ if (!a) return [];
1193
+ let r = [a.module];
1194
+ return a.imports && (r = r.concat(a.imports)), r;
1195
+ }).flat(1)
1196
+ );
1197
+ }
1198
+ function $t(e) {
1199
+ return [...new Set(e)];
1200
+ }
1201
+ function Tt(e) {
1202
+ let t = {}, n = Object.keys(e).sort();
1203
+ for (let a of n)
1204
+ t[a] = e[a];
1205
+ return t;
1206
+ }
1207
+ function Nt(e, t) {
1208
+ let n = /* @__PURE__ */ new Set();
1209
+ return new Set(t), e.reduce((a, r) => {
1210
+ let o = JSON.stringify(Tt(r));
1211
+ return n.has(o) || (n.add(o), a.push({ key: o, link: r })), a;
1212
+ }, []);
1213
+ }
1214
+ function At(e) {
1215
+ let t = typeof e == "string" ? new URL(
1216
+ e,
1217
+ // This can be called during the SSR flow via PrefetchPageLinksImpl so
1218
+ // don't assume window is available
1219
+ typeof window > "u" ? "server://singlefetch/" : window.location.origin
1220
+ ) : e;
1221
+ return t.pathname === "/" ? t.pathname = "_root.data" : t.pathname = `${t.pathname.replace(/\/$/, "")}.data`, t;
1222
+ }
1223
+ function Dt() {
1224
+ let e = i.useContext(O);
1225
+ return oe(
1226
+ e,
1227
+ "You must render this element inside a <DataRouterContext.Provider> element"
1228
+ ), e;
1229
+ }
1230
+ function It() {
1231
+ let e = i.useContext(F);
1232
+ return oe(
1233
+ e,
1234
+ "You must render this element inside a <DataRouterStateContext.Provider> element"
1235
+ ), e;
1236
+ }
1237
+ var le = i.createContext(void 0);
1238
+ le.displayName = "FrameworkContext";
1239
+ function Le() {
1240
+ let e = i.useContext(le);
1241
+ return oe(
1242
+ e,
1243
+ "You must render this element inside a <HydratedRouter> element"
1244
+ ), e;
1245
+ }
1246
+ function Ot(e, t) {
1247
+ let n = i.useContext(le), [a, r] = i.useState(!1), [o, c] = i.useState(!1), { onFocus: u, onBlur: l, onMouseEnter: s, onMouseLeave: h, onTouchStart: p } = t, d = i.useRef(null);
1248
+ i.useEffect(() => {
1249
+ if (e === "render" && c(!0), e === "viewport") {
1250
+ let E = (v) => {
1251
+ v.forEach((y) => {
1252
+ c(y.isIntersecting);
1253
+ });
1254
+ }, g = new IntersectionObserver(E, { threshold: 0.5 });
1255
+ return d.current && g.observe(d.current), () => {
1256
+ g.disconnect();
1257
+ };
1258
+ }
1259
+ }, [e]), i.useEffect(() => {
1260
+ if (a) {
1261
+ let E = setTimeout(() => {
1262
+ c(!0);
1263
+ }, 100);
1264
+ return () => {
1265
+ clearTimeout(E);
1266
+ };
1267
+ }
1268
+ }, [a]);
1269
+ let m = () => {
1270
+ r(!0);
1271
+ }, f = () => {
1272
+ r(!1), c(!1);
1273
+ };
1274
+ return n ? e !== "intent" ? [o, d, {}] : [
1275
+ o,
1276
+ d,
1277
+ {
1278
+ onFocus: U(u, m),
1279
+ onBlur: U(l, f),
1280
+ onMouseEnter: U(s, m),
1281
+ onMouseLeave: U(h, f),
1282
+ onTouchStart: U(p, m)
1283
+ }
1284
+ ] : [!1, d, {}];
1285
+ }
1286
+ function U(e, t) {
1287
+ return (n) => {
1288
+ e && e(n), n.defaultPrevented || t(n);
1289
+ };
1290
+ }
1291
+ function Mt({
1292
+ page: e,
1293
+ ...t
1294
+ }) {
1295
+ let { router: n } = Dt(), a = i.useMemo(
1296
+ () => pe(n.routes, e, n.basename),
1297
+ [n.routes, e, n.basename]
1298
+ );
1299
+ return a ? /* @__PURE__ */ i.createElement(_t, { page: e, matches: a, ...t }) : null;
1300
+ }
1301
+ function Ft(e) {
1302
+ let { manifest: t, routeModules: n } = Le(), [a, r] = i.useState([]);
1303
+ return i.useEffect(() => {
1304
+ let o = !1;
1305
+ return Lt(e, t, n).then(
1306
+ (c) => {
1307
+ o || r(c);
1308
+ }
1309
+ ), () => {
1310
+ o = !0;
1311
+ };
1312
+ }, [e, t, n]), a;
1313
+ }
1314
+ function _t({
1315
+ page: e,
1316
+ matches: t,
1317
+ ...n
1318
+ }) {
1319
+ let a = N(), { manifest: r, routeModules: o } = Le(), { loaderData: c, matches: u } = It(), l = i.useMemo(
1320
+ () => me(
1321
+ e,
1322
+ t,
1323
+ u,
1324
+ r,
1325
+ a,
1326
+ "data"
1327
+ ),
1328
+ [e, t, u, r, a]
1329
+ ), s = i.useMemo(
1330
+ () => me(
1331
+ e,
1332
+ t,
1333
+ u,
1334
+ r,
1335
+ a,
1336
+ "assets"
1337
+ ),
1338
+ [e, t, u, r, a]
1339
+ ), h = i.useMemo(() => {
1340
+ if (e === a.pathname + a.search + a.hash)
1341
+ return [];
1342
+ let m = /* @__PURE__ */ new Set(), f = !1;
1343
+ if (t.forEach((g) => {
1344
+ var y;
1345
+ let v = r.routes[g.route.id];
1346
+ !v || !v.hasLoader || (!l.some((w) => w.route.id === g.route.id) && g.route.id in c && ((y = o[g.route.id]) != null && y.shouldRevalidate) || v.hasClientLoader ? f = !0 : m.add(g.route.id));
1347
+ }), m.size === 0)
1348
+ return [];
1349
+ let E = At(e);
1350
+ return f && m.size > 0 && E.searchParams.set(
1351
+ "_routes",
1352
+ t.filter((g) => m.has(g.route.id)).map((g) => g.route.id).join(",")
1353
+ ), [E.pathname + E.search];
1354
+ }, [
1355
+ c,
1356
+ a,
1357
+ r,
1358
+ l,
1359
+ t,
1360
+ e,
1361
+ o
1362
+ ]), p = i.useMemo(
1363
+ () => kt(s, r),
1364
+ [s, r]
1365
+ ), d = Ft(s);
1366
+ return /* @__PURE__ */ i.createElement(i.Fragment, null, h.map((m) => /* @__PURE__ */ i.createElement("link", { key: m, rel: "prefetch", as: "fetch", href: m, ...n })), p.map((m) => /* @__PURE__ */ i.createElement("link", { key: m, rel: "modulepreload", href: m, ...n })), d.map(({ key: m, link: f }) => (
1367
+ // these don't spread `linkProps` because they are full link descriptors
1368
+ // already with their own props
1369
+ /* @__PURE__ */ i.createElement("link", { key: m, ...f })
1370
+ )));
1371
+ }
1372
+ function Ut(...e) {
1373
+ return (t) => {
1374
+ e.forEach((n) => {
1375
+ typeof n == "function" ? n(t) : n != null && (n.current = t);
1376
+ });
1377
+ };
1378
+ }
1379
+ var ke = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u";
1380
+ try {
1381
+ ke && (window.__reactRouterVersion = "7.1.5");
1382
+ } catch {
1383
+ }
1384
+ var $e = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i, Te = i.forwardRef(
1385
+ function({
1386
+ onClick: t,
1387
+ discover: n = "render",
1388
+ prefetch: a = "none",
1389
+ relative: r,
1390
+ reloadDocument: o,
1391
+ replace: c,
1392
+ state: u,
1393
+ target: l,
1394
+ to: s,
1395
+ preventScrollReset: h,
1396
+ viewTransition: p,
1397
+ ...d
1398
+ }, m) {
1399
+ let { basename: f } = i.useContext(T), E = typeof s == "string" && $e.test(s), g, v = !1;
1400
+ if (typeof s == "string" && E && (g = s, ke))
1401
+ try {
1402
+ let S = new URL(window.location.href), D = s.startsWith("//") ? new URL(S.protocol + s) : new URL(s), se = I(D.pathname, f);
1403
+ D.origin === S.origin && se != null ? s = se + D.search + D.hash : v = !0;
1404
+ } catch {
1405
+ L(
1406
+ !1,
1407
+ `<Link to="${s}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`
1408
+ );
1409
+ }
1410
+ let y = Ze(s, { relative: r }), [w, R, x] = Ot(
1411
+ a,
1412
+ d
1413
+ ), C = zt(s, {
1414
+ replace: c,
1415
+ state: u,
1416
+ target: l,
1417
+ preventScrollReset: h,
1418
+ relative: r,
1419
+ viewTransition: p
1420
+ });
1421
+ function $(S) {
1422
+ t && t(S), S.defaultPrevented || C(S);
1423
+ }
1424
+ let P = (
1425
+ // eslint-disable-next-line jsx-a11y/anchor-has-content
1426
+ /* @__PURE__ */ i.createElement(
1427
+ "a",
1428
+ {
1429
+ ...d,
1430
+ ...x,
1431
+ href: g || y,
1432
+ onClick: v || o ? t : $,
1433
+ ref: Ut(m, R),
1434
+ target: l,
1435
+ "data-discover": !E && n === "render" ? "true" : void 0
1436
+ }
1437
+ )
1438
+ );
1439
+ return w && !E ? /* @__PURE__ */ i.createElement(i.Fragment, null, P, /* @__PURE__ */ i.createElement(Mt, { page: y })) : P;
1440
+ }
1441
+ );
1442
+ Te.displayName = "Link";
1443
+ var Bt = i.forwardRef(
1444
+ function({
1445
+ "aria-current": t = "page",
1446
+ caseSensitive: n = !1,
1447
+ className: a = "",
1448
+ end: r = !1,
1449
+ style: o,
1450
+ to: c,
1451
+ viewTransition: u,
1452
+ children: l,
1453
+ ...s
1454
+ }, h) {
1455
+ let p = W(c, { relative: s.relative }), d = N(), m = i.useContext(F), { navigator: f, basename: E } = i.useContext(T), g = m != null && // Conditional usage is OK here because the usage of a data router is static
1456
+ // eslint-disable-next-line react-hooks/rules-of-hooks
1457
+ Kt(p) && u === !0, v = f.encodeLocation ? f.encodeLocation(p).pathname : p.pathname, y = d.pathname, w = m && m.navigation && m.navigation.location ? m.navigation.location.pathname : null;
1458
+ n || (y = y.toLowerCase(), w = w ? w.toLowerCase() : null, v = v.toLowerCase()), w && E && (w = I(w, E) || w);
1459
+ const R = v !== "/" && v.endsWith("/") ? v.length - 1 : v.length;
1460
+ let x = y === v || !r && y.startsWith(v) && y.charAt(R) === "/", C = w != null && (w === v || !r && w.startsWith(v) && w.charAt(v.length) === "/"), $ = {
1461
+ isActive: x,
1462
+ isPending: C,
1463
+ isTransitioning: g
1464
+ }, P = x ? t : void 0, S;
1465
+ typeof a == "function" ? S = a($) : S = [
1466
+ a,
1467
+ x ? "active" : null,
1468
+ C ? "pending" : null,
1469
+ g ? "transitioning" : null
1470
+ ].filter(Boolean).join(" ");
1471
+ let D = typeof o == "function" ? o($) : o;
1472
+ return /* @__PURE__ */ i.createElement(
1473
+ Te,
1474
+ {
1475
+ ...s,
1476
+ "aria-current": P,
1477
+ className: S,
1478
+ ref: h,
1479
+ style: D,
1480
+ to: c,
1481
+ viewTransition: u
1482
+ },
1483
+ typeof l == "function" ? l($) : l
1484
+ );
1485
+ }
1486
+ );
1487
+ Bt.displayName = "NavLink";
1488
+ var Ht = i.forwardRef(
1489
+ ({
1490
+ discover: e = "render",
1491
+ fetcherKey: t,
1492
+ navigate: n,
1493
+ reloadDocument: a,
1494
+ replace: r,
1495
+ state: o,
1496
+ method: c = V,
1497
+ action: u,
1498
+ onSubmit: l,
1499
+ relative: s,
1500
+ preventScrollReset: h,
1501
+ viewTransition: p,
1502
+ ...d
1503
+ }, m) => {
1504
+ let f = Yt(), E = Jt(u, { relative: s }), g = c.toLowerCase() === "get" ? "get" : "post", v = typeof u == "string" && $e.test(u), y = (w) => {
1505
+ if (l && l(w), w.defaultPrevented) return;
1506
+ w.preventDefault();
1507
+ let R = w.nativeEvent.submitter, x = (R == null ? void 0 : R.getAttribute("formmethod")) || c;
1508
+ f(R || w.currentTarget, {
1509
+ fetcherKey: t,
1510
+ method: x,
1511
+ navigate: n,
1512
+ replace: r,
1513
+ state: o,
1514
+ relative: s,
1515
+ preventScrollReset: h,
1516
+ viewTransition: p
1517
+ });
1518
+ };
1519
+ return /* @__PURE__ */ i.createElement(
1520
+ "form",
1521
+ {
1522
+ ref: m,
1523
+ method: g,
1524
+ action: E,
1525
+ onSubmit: a ? l : y,
1526
+ ...d,
1527
+ "data-discover": !v && e === "render" ? "true" : void 0
1528
+ }
1529
+ );
1530
+ }
1531
+ );
1532
+ Ht.displayName = "Form";
1533
+ function Wt(e) {
1534
+ return `${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`;
1535
+ }
1536
+ function Ne(e) {
1537
+ let t = i.useContext(O);
1538
+ return b(t, Wt(e)), t;
1539
+ }
1540
+ function zt(e, {
1541
+ target: t,
1542
+ replace: n,
1543
+ state: a,
1544
+ preventScrollReset: r,
1545
+ relative: o,
1546
+ viewTransition: c
1547
+ } = {}) {
1548
+ let u = re(), l = N(), s = W(e, { relative: o });
1549
+ return i.useCallback(
1550
+ (h) => {
1551
+ if (Et(h, t)) {
1552
+ h.preventDefault();
1553
+ let p = n !== void 0 ? n : B(l) === B(s);
1554
+ u(e, {
1555
+ replace: p,
1556
+ state: a,
1557
+ preventScrollReset: r,
1558
+ relative: o,
1559
+ viewTransition: c
1560
+ });
1561
+ }
1562
+ },
1563
+ [
1564
+ l,
1565
+ u,
1566
+ s,
1567
+ n,
1568
+ a,
1569
+ t,
1570
+ e,
1571
+ r,
1572
+ o,
1573
+ c
1574
+ ]
1575
+ );
1576
+ }
1577
+ function dn(e) {
1578
+ L(
1579
+ typeof URLSearchParams < "u",
1580
+ "You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params."
1581
+ );
1582
+ let t = i.useRef(Q(e)), n = i.useRef(!1), a = N(), r = i.useMemo(
1583
+ () => (
1584
+ // Only merge in the defaults if we haven't yet called setSearchParams.
1585
+ // Once we call that we want those to take precedence, otherwise you can't
1586
+ // remove a param with setSearchParams({}) if it has an initial value
1587
+ xt(
1588
+ a.search,
1589
+ n.current ? null : t.current
1590
+ )
1591
+ ),
1592
+ [a.search]
1593
+ ), o = re(), c = i.useCallback(
1594
+ (u, l) => {
1595
+ const s = Q(
1596
+ typeof u == "function" ? u(r) : u
1597
+ );
1598
+ n.current = !0, o("?" + s, l);
1599
+ },
1600
+ [o, r]
1601
+ );
1602
+ return [r, c];
1603
+ }
1604
+ var Vt = 0, jt = () => `__${String(++Vt)}__`;
1605
+ function Yt() {
1606
+ let { router: e } = Ne(
1607
+ "useSubmit"
1608
+ /* UseSubmit */
1609
+ ), { basename: t } = i.useContext(T), n = ct();
1610
+ return i.useCallback(
1611
+ async (a, r = {}) => {
1612
+ let { action: o, method: c, encType: u, formData: l, body: s } = Ct(
1613
+ a,
1614
+ t
1615
+ );
1616
+ if (r.navigate === !1) {
1617
+ let h = r.fetcherKey || jt();
1618
+ await e.fetch(h, n, r.action || o, {
1619
+ preventScrollReset: r.preventScrollReset,
1620
+ formData: l,
1621
+ body: s,
1622
+ formMethod: r.method || c,
1623
+ formEncType: r.encType || u,
1624
+ flushSync: r.flushSync
1625
+ });
1626
+ } else
1627
+ await e.navigate(r.action || o, {
1628
+ preventScrollReset: r.preventScrollReset,
1629
+ formData: l,
1630
+ body: s,
1631
+ formMethod: r.method || c,
1632
+ formEncType: r.encType || u,
1633
+ replace: r.replace,
1634
+ state: r.state,
1635
+ fromRouteId: n,
1636
+ flushSync: r.flushSync,
1637
+ viewTransition: r.viewTransition
1638
+ });
1639
+ },
1640
+ [e, t, n]
1641
+ );
1642
+ }
1643
+ function Jt(e, { relative: t } = {}) {
1644
+ let { basename: n } = i.useContext(T), a = i.useContext(k);
1645
+ b(a, "useFormAction must be used inside a RouteContext");
1646
+ let [r] = a.matches.slice(-1), o = { ...W(e || ".", { relative: t }) }, c = N();
1647
+ if (e == null) {
1648
+ o.search = c.search;
1649
+ let u = new URLSearchParams(o.search), l = u.getAll("index");
1650
+ if (l.some((h) => h === "")) {
1651
+ u.delete("index"), l.filter((p) => p).forEach((p) => u.append("index", p));
1652
+ let h = u.toString();
1653
+ o.search = h ? `?${h}` : "";
1654
+ }
1655
+ }
1656
+ return (!e || e === ".") && r.route.index && (o.search = o.search ? o.search.replace(/^\?/, "?index&") : "?index"), n !== "/" && (o.pathname = o.pathname === "/" ? n : A([n, o.pathname])), B(o);
1657
+ }
1658
+ function Kt(e, t = {}) {
1659
+ let n = i.useContext(J);
1660
+ b(
1661
+ n != null,
1662
+ "`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"
1663
+ );
1664
+ let { basename: a } = Ne(
1665
+ "useViewTransitionState"
1666
+ /* useViewTransitionState */
1667
+ ), r = W(e, { relative: t.relative });
1668
+ if (!n.isTransitioning)
1669
+ return !1;
1670
+ let o = I(n.currentLocation.pathname, a) || n.currentLocation.pathname, c = I(n.nextLocation.pathname, a) || n.nextLocation.pathname;
1671
+ return H(r.pathname, c) != null || H(r.pathname, o) != null;
1672
+ }
1673
+ function hn({
1674
+ context: e,
1675
+ router: t,
1676
+ hydrate: n = !0,
1677
+ nonce: a
1678
+ }) {
1679
+ b(
1680
+ t && e,
1681
+ "You must provide `router` and `context` to <StaticRouterProvider>"
1682
+ );
1683
+ let r = {
1684
+ router: t,
1685
+ navigator: Xt(),
1686
+ static: !0,
1687
+ staticContext: e,
1688
+ basename: e.basename || "/"
1689
+ }, o = /* @__PURE__ */ new Map(), c = "";
1690
+ if (n !== !1) {
1691
+ let l = {
1692
+ loaderData: e.loaderData,
1693
+ actionData: e.actionData,
1694
+ errors: Gt(e.errors)
1695
+ };
1696
+ c = `window.__staticRouterHydrationData = JSON.parse(${rn(JSON.stringify(JSON.stringify(l)))});`;
1697
+ }
1698
+ let { state: u } = r.router;
1699
+ return /* @__PURE__ */ i.createElement(i.Fragment, null, /* @__PURE__ */ i.createElement(O.Provider, { value: r }, /* @__PURE__ */ i.createElement(F.Provider, { value: u }, /* @__PURE__ */ i.createElement(te.Provider, { value: o }, /* @__PURE__ */ i.createElement(J.Provider, { value: { isTransitioning: !1 } }, /* @__PURE__ */ i.createElement(
1700
+ Se,
1701
+ {
1702
+ basename: r.basename,
1703
+ location: u.location,
1704
+ navigationType: u.historyAction,
1705
+ navigator: r.navigator,
1706
+ static: r.static
1707
+ },
1708
+ /* @__PURE__ */ i.createElement(
1709
+ qt,
1710
+ {
1711
+ routes: t.routes,
1712
+ future: t.future,
1713
+ state: u
1714
+ }
1715
+ )
1716
+ ))))), c ? /* @__PURE__ */ i.createElement(
1717
+ "script",
1718
+ {
1719
+ suppressHydrationWarning: !0,
1720
+ nonce: a,
1721
+ dangerouslySetInnerHTML: { __html: c }
1722
+ }
1723
+ ) : null);
1724
+ }
1725
+ function qt({
1726
+ routes: e,
1727
+ future: t,
1728
+ state: n
1729
+ }) {
1730
+ return be(e, void 0, n, t);
1731
+ }
1732
+ function Gt(e) {
1733
+ if (!e) return null;
1734
+ let t = Object.entries(e), n = {};
1735
+ for (let [a, r] of t)
1736
+ we(r) ? n[a] = { ...r, __type: "RouteErrorResponse" } : r instanceof Error ? n[a] = {
1737
+ message: r.message,
1738
+ __type: "Error",
1739
+ // If this is a subclass (i.e., ReferenceError), send up the type so we
1740
+ // can re-create the same type during hydration.
1741
+ ...r.name !== "Error" ? {
1742
+ __subType: r.name
1743
+ } : {}
1744
+ } : n[a] = r;
1745
+ return n;
1746
+ }
1747
+ function Xt() {
1748
+ return {
1749
+ createHref: Qt,
1750
+ encodeLocation: Zt,
1751
+ push(e) {
1752
+ throw new Error(
1753
+ `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(e)})\` somewhere in your app.`
1754
+ );
1755
+ },
1756
+ replace(e) {
1757
+ throw new Error(
1758
+ `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(e)}, { replace: true })\` somewhere in your app.`
1759
+ );
1760
+ },
1761
+ go(e) {
1762
+ throw new Error(
1763
+ `You cannot use navigator.go() on the server because it is a stateless environment. This error was probably triggered when you did a \`navigate(${e})\` somewhere in your app.`
1764
+ );
1765
+ },
1766
+ back() {
1767
+ throw new Error(
1768
+ "You cannot use navigator.back() on the server because it is a stateless environment."
1769
+ );
1770
+ },
1771
+ forward() {
1772
+ throw new Error(
1773
+ "You cannot use navigator.forward() on the server because it is a stateless environment."
1774
+ );
1775
+ }
1776
+ };
1777
+ }
1778
+ function Qt(e) {
1779
+ return typeof e == "string" ? e : B(e);
1780
+ }
1781
+ function Zt(e) {
1782
+ let t = typeof e == "string" ? e : B(e);
1783
+ t = t.replace(/ $/, "%20");
1784
+ let n = en.test(t) ? new URL(t) : new URL(t, "http://localhost");
1785
+ return {
1786
+ pathname: n.pathname,
1787
+ search: n.search,
1788
+ hash: n.hash
1789
+ };
1790
+ }
1791
+ var en = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i, tn = {
1792
+ "&": "\\u0026",
1793
+ ">": "\\u003e",
1794
+ "<": "\\u003c",
1795
+ "\u2028": "\\u2028",
1796
+ "\u2029": "\\u2029"
1797
+ }, nn = /[&><\u2028\u2029]/g;
1798
+ function rn(e) {
1799
+ return e.replace(nn, (t) => tn[t]);
1800
+ }
1801
+ new TextEncoder();
1802
+ export {
1803
+ Te as L,
1804
+ cn as N,
1805
+ fn as O,
1806
+ un as R,
1807
+ hn as S,
1808
+ re as a,
1809
+ dn as b,
1810
+ ln as c,
1811
+ on as d,
1812
+ Ze as e,
1813
+ Bt as f,
1814
+ ft as g,
1815
+ sn as h,
1816
+ we as i,
1817
+ H as m,
1818
+ an as r,
1819
+ N as u
1820
+ };
1821
+ //# sourceMappingURL=chunk-IR6S3I6Y-D_3UmFIn.js.map