zudoku 0.0.0-fix-firebase-export.f8270825 → 0.0.0-monetization-standalone.zd1543a39

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 (410) hide show
  1. package/dist/app/main.d.ts +6 -6
  2. package/dist/cli/common/version-check.js +12 -3
  3. package/dist/cli/common/version-check.js.map +1 -1
  4. package/dist/config/create-plugin.d.ts +2 -0
  5. package/dist/config/create-plugin.js +53 -0
  6. package/dist/config/create-plugin.js.map +1 -0
  7. package/dist/config/loader.js +3 -1
  8. package/dist/config/loader.js.map +1 -1
  9. package/dist/config/validators/InputNavigationSchema.d.ts +77 -75
  10. package/dist/config/validators/InputNavigationSchema.js +1 -0
  11. package/dist/config/validators/InputNavigationSchema.js.map +1 -1
  12. package/dist/config/validators/NavigationSchema.js +6 -1
  13. package/dist/config/validators/NavigationSchema.js.map +1 -1
  14. package/dist/config/validators/ProtectedRoutesSchema.d.ts +1 -1
  15. package/dist/config/validators/validate.d.ts +61 -13
  16. package/dist/config/validators/validate.js +9 -4
  17. package/dist/config/validators/validate.js.map +1 -1
  18. package/dist/flat-config.d.ts +29 -26
  19. package/dist/index.d.ts +3 -1
  20. package/dist/index.js +3 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/lib/auth/issuer.js +1 -1
  23. package/dist/lib/auth/issuer.js.map +1 -1
  24. package/dist/lib/authentication/authentication.d.ts +3 -2
  25. package/dist/lib/authentication/components/CallbackHandler.js +1 -1
  26. package/dist/lib/authentication/components/CallbackHandler.js.map +1 -1
  27. package/dist/lib/authentication/components/SignIn.js +4 -2
  28. package/dist/lib/authentication/components/SignIn.js.map +1 -1
  29. package/dist/lib/authentication/components/SignUp.js +4 -2
  30. package/dist/lib/authentication/components/SignUp.js.map +1 -1
  31. package/dist/lib/authentication/hook.d.ts +2 -0
  32. package/dist/lib/authentication/hook.js +10 -0
  33. package/dist/lib/authentication/hook.js.map +1 -1
  34. package/dist/lib/authentication/providers/auth0.js +11 -7
  35. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  36. package/dist/lib/authentication/providers/clerk.js +0 -22
  37. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  38. package/dist/lib/authentication/providers/firebase.js +67 -9
  39. package/dist/lib/authentication/providers/firebase.js.map +1 -1
  40. package/dist/lib/authentication/providers/supabase.js +6 -15
  41. package/dist/lib/authentication/providers/supabase.js.map +1 -1
  42. package/dist/lib/authentication/ui/EmailVerificationUi.d.ts +4 -0
  43. package/dist/lib/authentication/ui/EmailVerificationUi.js +34 -0
  44. package/dist/lib/authentication/ui/EmailVerificationUi.js.map +1 -0
  45. package/dist/lib/authentication/ui/ZudokuAuthUi.d.ts +7 -2
  46. package/dist/lib/authentication/ui/ZudokuAuthUi.js +43 -11
  47. package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -1
  48. package/dist/lib/authentication/utils/relativeRedirectUrl.d.ts +1 -0
  49. package/dist/lib/authentication/utils/relativeRedirectUrl.js +8 -0
  50. package/dist/lib/authentication/utils/relativeRedirectUrl.js.map +1 -0
  51. package/dist/lib/components/Bootstrap.js +1 -2
  52. package/dist/lib/components/Bootstrap.js.map +1 -1
  53. package/dist/lib/components/Pagination.js +2 -2
  54. package/dist/lib/components/Pagination.js.map +1 -1
  55. package/dist/lib/components/Zudoku.js +2 -5
  56. package/dist/lib/components/Zudoku.js.map +1 -1
  57. package/dist/lib/components/context/ZudokuContext.d.ts +2 -4
  58. package/dist/lib/components/context/ZudokuContext.js +2 -2
  59. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  60. package/dist/lib/components/context/ZudokuProvider.js +1 -1
  61. package/dist/lib/components/context/ZudokuProvider.js.map +1 -1
  62. package/dist/lib/components/context/ZudokuReactContext.d.ts +11 -0
  63. package/dist/lib/components/context/ZudokuReactContext.js +4 -0
  64. package/dist/lib/components/context/ZudokuReactContext.js.map +1 -0
  65. package/dist/lib/components/index.d.ts +5 -0
  66. package/dist/lib/components/index.js +4 -0
  67. package/dist/lib/components/index.js.map +1 -1
  68. package/dist/lib/components/navigation/NavigationItem.js +2 -2
  69. package/dist/lib/components/navigation/NavigationItem.js.map +1 -1
  70. package/dist/lib/core/RouteGuard.js +12 -7
  71. package/dist/lib/core/RouteGuard.js.map +1 -1
  72. package/dist/lib/core/plugins.d.ts +11 -1
  73. package/dist/lib/core/plugins.js +1 -0
  74. package/dist/lib/core/plugins.js.map +1 -1
  75. package/dist/lib/core/react-query.d.ts +1 -0
  76. package/dist/lib/core/react-query.js +2 -0
  77. package/dist/lib/core/react-query.js.map +1 -0
  78. package/dist/lib/core/transform-config.d.ts +2 -0
  79. package/dist/lib/core/transform-config.js +22 -0
  80. package/dist/lib/core/transform-config.js.map +1 -0
  81. package/dist/lib/errors/ErrorAlert.js +1 -2
  82. package/dist/lib/errors/ErrorAlert.js.map +1 -1
  83. package/dist/lib/errors/ErrorMessage.d.ts +3 -0
  84. package/dist/lib/errors/ErrorMessage.js +16 -0
  85. package/dist/lib/errors/ErrorMessage.js.map +1 -0
  86. package/dist/lib/hooks/index.d.ts +2 -0
  87. package/dist/lib/oas/graphql/circular.d.ts +2 -0
  88. package/dist/lib/oas/graphql/circular.js +32 -10
  89. package/dist/lib/oas/graphql/circular.js.map +1 -1
  90. package/dist/lib/oas/graphql/circular.test.d.ts +1 -0
  91. package/dist/lib/oas/graphql/circular.test.js +152 -0
  92. package/dist/lib/oas/graphql/circular.test.js.map +1 -0
  93. package/dist/lib/oas/graphql/index.js +7 -3
  94. package/dist/lib/oas/graphql/index.js.map +1 -1
  95. package/dist/lib/plugins/api-keys/SettingsApiKeys.js +9 -172
  96. package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -1
  97. package/dist/lib/plugins/api-keys/index.d.ts +11 -4
  98. package/dist/lib/plugins/api-keys/index.js +36 -22
  99. package/dist/lib/plugins/api-keys/index.js.map +1 -1
  100. package/dist/lib/plugins/api-keys/settings/ApiKeyItem.d.ts +12 -0
  101. package/dist/lib/plugins/api-keys/settings/ApiKeyItem.js +133 -0
  102. package/dist/lib/plugins/api-keys/settings/ApiKeyItem.js.map +1 -0
  103. package/dist/lib/plugins/api-keys/settings/ApiKeyList.d.ts +4 -0
  104. package/dist/lib/plugins/api-keys/settings/ApiKeyList.js +33 -0
  105. package/dist/lib/plugins/api-keys/settings/ApiKeyList.js.map +1 -0
  106. package/dist/lib/plugins/api-keys/settings/RevealApiKey.d.ts +6 -0
  107. package/dist/lib/plugins/api-keys/settings/RevealApiKey.js +39 -0
  108. package/dist/lib/plugins/api-keys/settings/RevealApiKey.js.map +1 -0
  109. package/dist/lib/plugins/openapi/OasProvider.js +6 -2
  110. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -1
  111. package/dist/lib/plugins/openapi/OperationList.js +4 -4
  112. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  113. package/dist/lib/plugins/openapi/ParamInfos.js +1 -0
  114. package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -1
  115. package/dist/lib/plugins/openapi/Sidecar.js +3 -2
  116. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  117. package/dist/lib/plugins/openapi/interfaces.d.ts +3 -0
  118. package/dist/lib/plugins/openapi/schema/SchemaView.js +1 -1
  119. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  120. package/dist/lib/plugins/openapi/schema/utils.js +11 -3
  121. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  122. package/dist/lib/plugins/openapi/util/createHttpSnippet.js +24 -1
  123. package/dist/lib/plugins/openapi/util/createHttpSnippet.js.map +1 -1
  124. package/dist/lib/plugins/openapi/util/getRoutes.d.ts +3 -0
  125. package/dist/lib/plugins/openapi/util/getRoutes.js +2 -1
  126. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  127. package/dist/lib/ui/Button.js +1 -1
  128. package/dist/lib/ui/Button.js.map +1 -1
  129. package/dist/lib/ui/Command.d.ts +3 -3
  130. package/dist/lib/ui/Secret.js +2 -2
  131. package/dist/lib/ui/Secret.js.map +1 -1
  132. package/dist/lib/util/invariant.d.ts +1 -1
  133. package/dist/lib/util/invariant.js +2 -2
  134. package/dist/lib/util/invariant.js.map +1 -1
  135. package/dist/vite/api/SchemaManager.d.ts +12 -1
  136. package/dist/vite/api/SchemaManager.js +31 -14
  137. package/dist/vite/api/SchemaManager.js.map +1 -1
  138. package/dist/vite/api/SchemaManager.test.js +44 -0
  139. package/dist/vite/api/SchemaManager.test.js.map +1 -1
  140. package/dist/vite/config.js +10 -4
  141. package/dist/vite/config.js.map +1 -1
  142. package/dist/vite/error-handler.js +1 -5
  143. package/dist/vite/error-handler.js.map +1 -1
  144. package/dist/vite/mdx/remark-link-rewrite.js +1 -1
  145. package/dist/vite/plugin-api-keys.js +5 -1
  146. package/dist/vite/plugin-api-keys.js.map +1 -1
  147. package/dist/vite/plugin-api.js +5 -3
  148. package/dist/vite/plugin-api.js.map +1 -1
  149. package/dist/vite/plugin-markdown-export.js +1 -1
  150. package/dist/vite/plugin-markdown-export.js.map +1 -1
  151. package/dist/vite/plugin-theme.js +2 -1
  152. package/dist/vite/plugin-theme.js.map +1 -1
  153. package/dist/vite/prerender/utils.js +9 -3
  154. package/dist/vite/prerender/utils.js.map +1 -1
  155. package/dist/vite/prerender/worker.js +3 -0
  156. package/dist/vite/prerender/worker.js.map +1 -1
  157. package/dist/vite/zuplo.d.ts +13 -0
  158. package/dist/vite/zuplo.js +15 -0
  159. package/dist/vite/zuplo.js.map +1 -0
  160. package/lib/{ActionButton-DUgvSylL.js → ActionButton-B0CXL1Lq.js} +3 -3
  161. package/lib/{ActionButton-DUgvSylL.js.map → ActionButton-B0CXL1Lq.js.map} +1 -1
  162. package/lib/{Button-CynVW1JV.js → Button-GUVe7pmt.js} +8 -7
  163. package/lib/{Button-CynVW1JV.js.map → Button-GUVe7pmt.js.map} +1 -1
  164. package/lib/{Card-KFniaZn5.js → Card-DCdq37aA.js} +2 -2
  165. package/lib/{Card-KFniaZn5.js.map → Card-DCdq37aA.js.map} +1 -1
  166. package/lib/{ClaudeLogo-B4Xxt-x_.js → ClaudeLogo-CUaQXKLK.js} +22 -22
  167. package/lib/ClaudeLogo-CUaQXKLK.js.map +1 -0
  168. package/lib/{Command-BpT1iBE6.js → Command-N6VujV30.js} +3 -3
  169. package/lib/{Command-BpT1iBE6.js.map → Command-N6VujV30.js.map} +1 -1
  170. package/lib/{Dialog-BQciPiHN.js → Dialog-hlvmmQ_c.js} +2 -2
  171. package/lib/{Dialog-BQciPiHN.js.map → Dialog-hlvmmQ_c.js.map} +1 -1
  172. package/lib/{Drawer-Ci7XwhqT.js → Drawer-Ch7927PF.js} +7 -7
  173. package/lib/{Drawer-Ci7XwhqT.js.map → Drawer-Ch7927PF.js.map} +1 -1
  174. package/lib/{DropdownMenu-C8SX_-S_.js → DropdownMenu-DN0jNrjj.js} +2 -2
  175. package/lib/{DropdownMenu-C8SX_-S_.js.map → DropdownMenu-DN0jNrjj.js.map} +1 -1
  176. package/lib/Frame-DKlOmSkU.js +205 -0
  177. package/lib/Frame-DKlOmSkU.js.map +1 -0
  178. package/lib/HydrationBoundary-CNF2ZV3E.js +601 -0
  179. package/lib/HydrationBoundary-CNF2ZV3E.js.map +1 -0
  180. package/lib/{IndexingDialog-B5zCiUKr.js → IndexingDialog-D0YdGfbn.js} +3 -3
  181. package/lib/{IndexingDialog-B5zCiUKr.js.map → IndexingDialog-D0YdGfbn.js.map} +1 -1
  182. package/lib/Input-Cx-GeKoF.js +22 -0
  183. package/lib/Input-Cx-GeKoF.js.map +1 -0
  184. package/lib/{MdxPage-BagO2c-n.js → MdxPage-BiAVpP8K.js} +11 -11
  185. package/lib/{MdxPage-BagO2c-n.js.map → MdxPage-BiAVpP8K.js.map} +1 -1
  186. package/lib/{Mermaid-D_VSX7_Q.js → Mermaid-DEztDKFw.js} +4 -4
  187. package/lib/{Mermaid-D_VSX7_Q.js.map → Mermaid-DEztDKFw.js.map} +1 -1
  188. package/lib/{OAuthErrorPage-Fq54RLgt.js → OAuthErrorPage-DhJo-O2B.js} +15 -15
  189. package/lib/OAuthErrorPage-DhJo-O2B.js.map +1 -0
  190. package/lib/OasProvider-DFMZwyNn.js +48 -0
  191. package/lib/OasProvider-DFMZwyNn.js.map +1 -0
  192. package/lib/{OperationList-C0jiEaG5.js → OperationList-CnmLfOuu.js} +1560 -1545
  193. package/lib/{OperationList-C0jiEaG5.js.map → OperationList-CnmLfOuu.js.map} +1 -1
  194. package/lib/RouteGuard-CZuPjknT.js +77 -0
  195. package/lib/RouteGuard-CZuPjknT.js.map +1 -0
  196. package/lib/{SchemaList-BU0zCHn9.js → SchemaList-B5ikunUd.js} +9 -9
  197. package/lib/{SchemaList-BU0zCHn9.js.map → SchemaList-B5ikunUd.js.map} +1 -1
  198. package/lib/SchemaView-rjji7zMf.js +438 -0
  199. package/lib/SchemaView-rjji7zMf.js.map +1 -0
  200. package/lib/{Select-CkxXP5I7.js → Secret-BE7V0Vb5.js} +159 -139
  201. package/lib/Secret-BE7V0Vb5.js.map +1 -0
  202. package/lib/{Separator-CTPSeW1S.js → Separator-BXt1LYnm.js} +2 -2
  203. package/lib/{Separator-CTPSeW1S.js.map → Separator-BXt1LYnm.js.map} +1 -1
  204. package/lib/SignUp-DHWDXat-.js +50 -0
  205. package/lib/SignUp-DHWDXat-.js.map +1 -0
  206. package/lib/{SyntaxHighlight-Kdyskw3C.js → SyntaxHighlight-paLQ8NP8.js} +1751 -1725
  207. package/lib/SyntaxHighlight-paLQ8NP8.js.map +1 -0
  208. package/lib/{Toc-DJxFPfcS.js → Toc-vMbSQCkj.js} +3 -3
  209. package/lib/{Toc-DJxFPfcS.js.map → Toc-vMbSQCkj.js.map} +1 -1
  210. package/lib/ZudokuContext-CnEI8jPU.js +389 -0
  211. package/lib/ZudokuContext-CnEI8jPU.js.map +1 -0
  212. package/lib/{___vite-browser-external_commonjs-proxy-Cga3HsWk.js → ___vite-browser-external_commonjs-proxy-BttVsNON.js} +2 -2
  213. package/lib/___vite-browser-external_commonjs-proxy-BttVsNON.js.map +1 -0
  214. package/lib/chunk-EPOLDU6W-C6C8jAwd.js +8558 -0
  215. package/lib/chunk-EPOLDU6W-C6C8jAwd.js.map +1 -0
  216. package/lib/{circular-CzWF1hj5.js → circular-CLhJAE3S.js} +771 -749
  217. package/lib/{circular-CzWF1hj5.js.map → circular-CLhJAE3S.js.map} +1 -1
  218. package/lib/{cn-dYga0KKN.js → cn-5-Gd1Dss.js} +531 -498
  219. package/lib/cn-5-Gd1Dss.js.map +1 -0
  220. package/lib/{createServer-BIr2_tGn.js → createServer-BYtu5Pcr.js} +12 -12
  221. package/lib/{createServer-BIr2_tGn.js.map → createServer-BYtu5Pcr.js.map} +1 -1
  222. package/lib/createVariantComponent-Dc0vtOvr.js +18 -0
  223. package/lib/createVariantComponent-Dc0vtOvr.js.map +1 -0
  224. package/lib/{errors-Bs4duWDy.js → errors-DkJIl45d.js} +3 -3
  225. package/lib/{errors-Bs4duWDy.js.map → errors-DkJIl45d.js.map} +1 -1
  226. package/lib/{firebase-qUdSEL1p.js → firebase-CmsW0j7-.js} +1590 -1342
  227. package/lib/firebase-CmsW0j7-.js.map +1 -0
  228. package/lib/hook-Da8QTnPd.js +52 -0
  229. package/lib/hook-Da8QTnPd.js.map +1 -0
  230. package/lib/{index-Css56y3F.js → index-Ba6RP577.js} +4 -4
  231. package/lib/{index-Css56y3F.js.map → index-Ba6RP577.js.map} +1 -1
  232. package/lib/index-CrcNWbel.js.map +1 -1
  233. package/lib/{index-Bh-MffiL.js → index-D35F-SCL.js} +2 -2
  234. package/lib/{index-Bh-MffiL.js.map → index-D35F-SCL.js.map} +1 -1
  235. package/lib/{index-0oT9beQN.js → index-k0PVZBYl.js} +155 -151
  236. package/lib/{index-0oT9beQN.js.map → index-k0PVZBYl.js.map} +1 -1
  237. package/lib/{ErrorAlert-DrOR8w3f.js → index-ofqkdEjL.js} +5457 -4444
  238. package/lib/index-ofqkdEjL.js.map +1 -0
  239. package/lib/index.esm-BYObtETB.js.map +1 -1
  240. package/lib/{index.esm-DtzT_KoE.js → index.esm-B_0dvNjB.js} +2 -2
  241. package/lib/{index.esm-DtzT_KoE.js.map → index.esm-B_0dvNjB.js.map} +1 -1
  242. package/lib/{index.esm-kW-Utcsi.js → index.esm-DFzsB75P.js} +16 -14
  243. package/lib/index.esm-DFzsB75P.js.map +1 -0
  244. package/lib/{invariant-CGOLuIIz.js → invariant-BJAl77rw.js} +4 -4
  245. package/lib/invariant-BJAl77rw.js.map +1 -0
  246. package/lib/jsx-runtime-BzflLqGi.js.map +1 -1
  247. package/lib/{mutation-BoVlx8yA.js → mutation-BISOc7OM.js} +70 -44
  248. package/lib/mutation-BISOc7OM.js.map +1 -0
  249. package/lib/ui/Accordion.js +1 -1
  250. package/lib/ui/ActionButton.js +2 -2
  251. package/lib/ui/Alert.js +1 -1
  252. package/lib/ui/AlertDialog.js +1 -1
  253. package/lib/ui/Badge.js +1 -1
  254. package/lib/ui/Breadcrumb.js +1 -1
  255. package/lib/ui/Button.js +7 -6
  256. package/lib/ui/Button.js.map +1 -1
  257. package/lib/ui/ButtonGroup.js +1 -1
  258. package/lib/ui/Callout.js +1 -1
  259. package/lib/ui/Card.js +1 -1
  260. package/lib/ui/Carousel.js +1 -1
  261. package/lib/ui/Carousel.js.map +1 -1
  262. package/lib/ui/Checkbox.js +1 -1
  263. package/lib/ui/CodeBlock.js +1 -1
  264. package/lib/ui/Command.js +2 -2
  265. package/lib/ui/Dialog.js +1 -1
  266. package/lib/ui/Drawer.js +3 -3
  267. package/lib/ui/DropdownMenu.js +1 -1
  268. package/lib/ui/EmbeddedCodeBlock.js +1 -1
  269. package/lib/ui/Form.js +1 -1
  270. package/lib/ui/Frame.js +1 -1
  271. package/lib/ui/HoverCard.js +1 -1
  272. package/lib/ui/Input.js +1 -1
  273. package/lib/ui/Item.js +1 -1
  274. package/lib/ui/Label.js +1 -1
  275. package/lib/ui/NativeSelect.js +1 -1
  276. package/lib/ui/Pagination.js +1 -1
  277. package/lib/ui/Popover.js +1 -1
  278. package/lib/ui/Progress.js +1 -1
  279. package/lib/ui/RadioGroup.js +1 -1
  280. package/lib/ui/ScrollArea.js +1 -1
  281. package/lib/ui/Secret.js +3 -3
  282. package/lib/ui/Secret.js.map +1 -1
  283. package/lib/ui/Separator.js +1 -1
  284. package/lib/ui/Skeleton.js +1 -1
  285. package/lib/ui/Slider.js +1 -1
  286. package/lib/ui/Switch.js +1 -1
  287. package/lib/ui/SyntaxHighlight.js +3 -3
  288. package/lib/ui/Tabs.js +1 -1
  289. package/lib/ui/Textarea.js +1 -1
  290. package/lib/ui/Toggle.js +1 -1
  291. package/lib/ui/ToggleGroup.js +1 -1
  292. package/lib/ui/Value.js +1 -1
  293. package/lib/ui/util.js +1 -1
  294. package/lib/{useMutation-C6RqWmTS.js → useMutation-CFMGlAMW.js} +39 -17
  295. package/lib/useMutation-CFMGlAMW.js.map +1 -0
  296. package/lib/useSuspenseQuery-CSB_rVek.js +1226 -0
  297. package/lib/useSuspenseQuery-CSB_rVek.js.map +1 -0
  298. package/lib/zudoku.__internal.js +826 -1325
  299. package/lib/zudoku.__internal.js.map +1 -1
  300. package/lib/zudoku.auth-auth0.js +16 -16
  301. package/lib/zudoku.auth-auth0.js.map +1 -1
  302. package/lib/zudoku.auth-azureb2c.js +4 -4
  303. package/lib/zudoku.auth-clerk.js +52 -75
  304. package/lib/zudoku.auth-clerk.js.map +1 -1
  305. package/lib/zudoku.auth-firebase.js +6 -5
  306. package/lib/zudoku.auth-firebase.js.map +1 -1
  307. package/lib/zudoku.auth-openid.js +5 -5
  308. package/lib/zudoku.auth-supabase.js +31 -40
  309. package/lib/zudoku.auth-supabase.js.map +1 -1
  310. package/lib/zudoku.components.js +23 -21
  311. package/lib/zudoku.hooks.js +3 -3
  312. package/lib/zudoku.mermaid.js +3 -3
  313. package/lib/zudoku.plugin-api-catalog.js +8 -8
  314. package/lib/zudoku.plugin-api-keys.js +607 -552
  315. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  316. package/lib/zudoku.plugin-custom-pages.js +1 -1
  317. package/lib/zudoku.plugin-markdown.js +1 -1
  318. package/lib/zudoku.plugin-openapi.js +3 -3
  319. package/lib/zudoku.plugin-redirect.js +1 -1
  320. package/lib/zudoku.plugin-search-pagefind.js +30 -29
  321. package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
  322. package/lib/zudoku.plugins.js +9 -8
  323. package/lib/zudoku.plugins.js.map +1 -1
  324. package/lib/zudoku.react-query.js +440 -0
  325. package/lib/zudoku.react-query.js.map +1 -0
  326. package/lib/zudoku.router.js +1130 -1404
  327. package/lib/zudoku.router.js.map +1 -1
  328. package/package.json +36 -22
  329. package/src/lib/auth/issuer.ts +1 -1
  330. package/src/lib/authentication/authentication.ts +8 -2
  331. package/src/lib/authentication/components/CallbackHandler.tsx +1 -1
  332. package/src/lib/authentication/components/SignIn.tsx +5 -2
  333. package/src/lib/authentication/components/SignUp.tsx +5 -2
  334. package/src/lib/authentication/hook.ts +16 -0
  335. package/src/lib/authentication/providers/auth0.tsx +15 -9
  336. package/src/lib/authentication/providers/clerk.tsx +0 -26
  337. package/src/lib/authentication/providers/firebase.tsx +98 -6
  338. package/src/lib/authentication/providers/supabase.tsx +6 -15
  339. package/src/lib/authentication/ui/EmailVerificationUi.tsx +129 -0
  340. package/src/lib/authentication/ui/ZudokuAuthUi.tsx +170 -38
  341. package/src/lib/authentication/utils/relativeRedirectUrl.ts +12 -0
  342. package/src/lib/components/Bootstrap.tsx +1 -4
  343. package/src/lib/components/Pagination.tsx +4 -5
  344. package/src/lib/components/Zudoku.tsx +5 -11
  345. package/src/lib/components/context/ZudokuContext.ts +2 -6
  346. package/src/lib/components/context/ZudokuProvider.tsx +1 -1
  347. package/src/lib/components/context/ZudokuReactContext.tsx +17 -0
  348. package/src/lib/components/index.ts +4 -0
  349. package/src/lib/components/navigation/NavigationItem.tsx +9 -3
  350. package/src/lib/core/RouteGuard.tsx +30 -24
  351. package/src/lib/core/plugins.ts +21 -1
  352. package/src/lib/core/react-query.ts +1 -0
  353. package/src/lib/core/transform-config.ts +29 -0
  354. package/src/lib/errors/ErrorAlert.tsx +1 -6
  355. package/src/lib/errors/ErrorMessage.tsx +38 -0
  356. package/src/lib/oas/graphql/circular.test.ts +186 -0
  357. package/src/lib/oas/graphql/circular.ts +49 -10
  358. package/src/lib/oas/graphql/index.ts +7 -3
  359. package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +36 -476
  360. package/src/lib/plugins/api-keys/index.tsx +76 -32
  361. package/src/lib/plugins/api-keys/settings/ApiKeyItem.tsx +342 -0
  362. package/src/lib/plugins/api-keys/settings/ApiKeyList.tsx +67 -0
  363. package/src/lib/plugins/api-keys/settings/RevealApiKey.tsx +124 -0
  364. package/src/lib/plugins/openapi/OasProvider.tsx +10 -2
  365. package/src/lib/plugins/openapi/OperationList.tsx +4 -4
  366. package/src/lib/plugins/openapi/ParamInfos.tsx +1 -0
  367. package/src/lib/plugins/openapi/Sidecar.tsx +3 -2
  368. package/src/lib/plugins/openapi/interfaces.ts +6 -1
  369. package/src/lib/plugins/openapi/schema/SchemaView.tsx +6 -4
  370. package/src/lib/plugins/openapi/schema/utils.ts +15 -4
  371. package/src/lib/plugins/openapi/util/createHttpSnippet.ts +29 -1
  372. package/src/lib/plugins/openapi/util/getRoutes.tsx +4 -1
  373. package/src/lib/ui/Button.tsx +1 -0
  374. package/src/lib/ui/Secret.tsx +2 -2
  375. package/src/lib/util/invariant.ts +2 -1
  376. package/src/shiki/langs/c3.js +1 -0
  377. package/src/shiki/langs/gn.js +1 -0
  378. package/src/shiki/langs/moonbit.js +1 -0
  379. package/lib/ClaudeLogo-B4Xxt-x_.js.map +0 -1
  380. package/lib/ErrorAlert-DrOR8w3f.js.map +0 -1
  381. package/lib/OAuthErrorPage-Fq54RLgt.js.map +0 -1
  382. package/lib/OasProvider-DPH8mwDa.js +0 -40
  383. package/lib/OasProvider-DPH8mwDa.js.map +0 -1
  384. package/lib/RouteGuard-9wjejsKm.js +0 -77
  385. package/lib/RouteGuard-9wjejsKm.js.map +0 -1
  386. package/lib/RouterError-DSLXagd5.js +0 -42
  387. package/lib/RouterError-DSLXagd5.js.map +0 -1
  388. package/lib/SchemaView-DVae4RO2.js +0 -597
  389. package/lib/SchemaView-DVae4RO2.js.map +0 -1
  390. package/lib/Select-CkxXP5I7.js.map +0 -1
  391. package/lib/SignUp-BjS4ozA7.js +0 -50
  392. package/lib/SignUp-BjS4ozA7.js.map +0 -1
  393. package/lib/SyntaxHighlight-Kdyskw3C.js.map +0 -1
  394. package/lib/ZudokuContext-BXldanA8.js +0 -1508
  395. package/lib/ZudokuContext-BXldanA8.js.map +0 -1
  396. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js.map +0 -1
  397. package/lib/chunk-PVWAREVJ-dLIqswPy.js +0 -7965
  398. package/lib/chunk-PVWAREVJ-dLIqswPy.js.map +0 -1
  399. package/lib/cn-dYga0KKN.js.map +0 -1
  400. package/lib/createVariantComponent-B9_dVBvu.js +0 -35
  401. package/lib/createVariantComponent-B9_dVBvu.js.map +0 -1
  402. package/lib/firebase-qUdSEL1p.js.map +0 -1
  403. package/lib/hook-BNxidGQq.js +0 -40
  404. package/lib/hook-BNxidGQq.js.map +0 -1
  405. package/lib/index-CCmMJp02.js +0 -1059
  406. package/lib/index-CCmMJp02.js.map +0 -1
  407. package/lib/index.esm-kW-Utcsi.js.map +0 -1
  408. package/lib/invariant-CGOLuIIz.js.map +0 -1
  409. package/lib/mutation-BoVlx8yA.js.map +0 -1
  410. package/lib/useMutation-C6RqWmTS.js.map +0 -1
@@ -1,1508 +0,0 @@
1
- import * as w from "react";
2
- import k, { useCallback as wt, createContext as Rt, useContext as Ot, useEffect as Ct } from "react";
3
- import { j as Et } from "./jsx-runtime-BzflLqGi.js";
4
- import { a as q, m as Y } from "./chunk-PVWAREVJ-dLIqswPy.js";
5
- import { c as Ft } from "./index-DI5SPFK9.js";
6
- var G = class {
7
- constructor() {
8
- this.listeners = /* @__PURE__ */ new Set(), this.subscribe = this.subscribe.bind(this);
9
- }
10
- subscribe(t) {
11
- return this.listeners.add(t), this.onSubscribe(), () => {
12
- this.listeners.delete(t), this.onUnsubscribe();
13
- };
14
- }
15
- hasListeners() {
16
- return this.listeners.size > 0;
17
- }
18
- onSubscribe() {
19
- }
20
- onUnsubscribe() {
21
- }
22
- }, F = typeof window > "u" || "Deno" in globalThis;
23
- function I() {
24
- }
25
- function Se(t, e) {
26
- return typeof t == "function" ? t(e) : t;
27
- }
28
- function Q(t) {
29
- return typeof t == "number" && t >= 0 && t !== 1 / 0;
30
- }
31
- function it(t, e) {
32
- return Math.max(t + (e || 0) - Date.now(), 0);
33
- }
34
- function x(t, e) {
35
- return typeof t == "function" ? t(e) : t;
36
- }
37
- function S(t, e) {
38
- return typeof t == "function" ? t(e) : t;
39
- }
40
- function we(t, e) {
41
- const {
42
- type: s = "all",
43
- exact: r,
44
- fetchStatus: n,
45
- predicate: a,
46
- queryKey: o,
47
- stale: i
48
- } = t;
49
- if (o) {
50
- if (r) {
51
- if (e.queryHash !== It(o, e.options))
52
- return !1;
53
- } else if (!V(e.queryKey, o))
54
- return !1;
55
- }
56
- if (s !== "all") {
57
- const u = e.isActive();
58
- if (s === "active" && !u || s === "inactive" && u)
59
- return !1;
60
- }
61
- return !(typeof i == "boolean" && e.isStale() !== i || n && n !== e.state.fetchStatus || a && !a(e));
62
- }
63
- function Re(t, e) {
64
- const { exact: s, status: r, predicate: n, mutationKey: a } = t;
65
- if (a) {
66
- if (!e.options.mutationKey)
67
- return !1;
68
- if (s) {
69
- if (U(e.options.mutationKey) !== U(a))
70
- return !1;
71
- } else if (!V(e.options.mutationKey, a))
72
- return !1;
73
- }
74
- return !(r && e.state.status !== r || n && !n(e));
75
- }
76
- function It(t, e) {
77
- return (e?.queryKeyHashFn || U)(t);
78
- }
79
- function U(t) {
80
- return JSON.stringify(
81
- t,
82
- (e, s) => M(s) ? Object.keys(s).sort().reduce((r, n) => (r[n] = s[n], r), {}) : s
83
- );
84
- }
85
- function V(t, e) {
86
- return t === e ? !0 : typeof t != typeof e ? !1 : t && e && typeof t == "object" && typeof e == "object" ? Object.keys(e).every((s) => V(t[s], e[s])) : !1;
87
- }
88
- function N(t, e) {
89
- if (t === e)
90
- return t;
91
- const s = X(t) && X(e);
92
- if (s || M(t) && M(e)) {
93
- const r = s ? t : Object.keys(t), n = r.length, a = s ? e : Object.keys(e), o = a.length, i = s ? [] : {}, u = new Set(r);
94
- let l = 0;
95
- for (let h = 0; h < o; h++) {
96
- const d = s ? h : a[h];
97
- (!s && u.has(d) || s) && t[d] === void 0 && e[d] === void 0 ? (i[d] = void 0, l++) : (i[d] = N(t[d], e[d]), i[d] === t[d] && t[d] !== void 0 && l++);
98
- }
99
- return n === o && l === n ? t : i;
100
- }
101
- return e;
102
- }
103
- function L(t, e) {
104
- if (!e || Object.keys(t).length !== Object.keys(e).length)
105
- return !1;
106
- for (const s in t)
107
- if (t[s] !== e[s])
108
- return !1;
109
- return !0;
110
- }
111
- function X(t) {
112
- return Array.isArray(t) && t.length === Object.keys(t).length;
113
- }
114
- function M(t) {
115
- if (!tt(t))
116
- return !1;
117
- const e = t.constructor;
118
- if (e === void 0)
119
- return !0;
120
- const s = e.prototype;
121
- return !(!tt(s) || !s.hasOwnProperty("isPrototypeOf") || Object.getPrototypeOf(t) !== Object.prototype);
122
- }
123
- function tt(t) {
124
- return Object.prototype.toString.call(t) === "[object Object]";
125
- }
126
- function Pt(t) {
127
- return new Promise((e) => {
128
- setTimeout(e, t);
129
- });
130
- }
131
- function _(t, e, s) {
132
- if (typeof s.structuralSharing == "function")
133
- return s.structuralSharing(t, e);
134
- if (s.structuralSharing !== !1) {
135
- if (process.env.NODE_ENV !== "production")
136
- try {
137
- return N(t, e);
138
- } catch (r) {
139
- throw console.error(
140
- `Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${s.queryHash}]: ${r}`
141
- ), r;
142
- }
143
- return N(t, e);
144
- }
145
- return e;
146
- }
147
- function Oe(t) {
148
- return t;
149
- }
150
- function Ce(t, e, s = 0) {
151
- const r = [...t, e];
152
- return s && r.length > s ? r.slice(1) : r;
153
- }
154
- function Ee(t, e, s = 0) {
155
- const r = [e, ...t];
156
- return s && r.length > s ? r.slice(0, -1) : r;
157
- }
158
- var j = Symbol();
159
- function Tt(t, e) {
160
- return process.env.NODE_ENV !== "production" && t.queryFn === j && console.error(
161
- `Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${t.queryHash}'`
162
- ), !t.queryFn && e?.initialPromise ? () => e.initialPromise : !t.queryFn || t.queryFn === j ? () => Promise.reject(new Error(`Missing queryFn: '${t.queryHash}'`)) : t.queryFn;
163
- }
164
- function xt(t, e) {
165
- return typeof t == "function" ? t(...e) : !!t;
166
- }
167
- var Dt = class extends G {
168
- #e;
169
- #t;
170
- #s;
171
- constructor() {
172
- super(), this.#s = (t) => {
173
- if (!F && window.addEventListener) {
174
- const e = () => t();
175
- return window.addEventListener("visibilitychange", e, !1), () => {
176
- window.removeEventListener("visibilitychange", e);
177
- };
178
- }
179
- };
180
- }
181
- onSubscribe() {
182
- this.#t || this.setEventListener(this.#s);
183
- }
184
- onUnsubscribe() {
185
- this.hasListeners() || (this.#t?.(), this.#t = void 0);
186
- }
187
- setEventListener(t) {
188
- this.#s = t, this.#t?.(), this.#t = t((e) => {
189
- typeof e == "boolean" ? this.setFocused(e) : this.onFocus();
190
- });
191
- }
192
- setFocused(t) {
193
- this.#e !== t && (this.#e = t, this.onFocus());
194
- }
195
- onFocus() {
196
- const t = this.isFocused();
197
- this.listeners.forEach((e) => {
198
- e(t);
199
- });
200
- }
201
- isFocused() {
202
- return typeof this.#e == "boolean" ? this.#e : globalThis.document?.visibilityState !== "hidden";
203
- }
204
- }, at = new Dt(), At = class extends G {
205
- #e = !0;
206
- #t;
207
- #s;
208
- constructor() {
209
- super(), this.#s = (t) => {
210
- if (!F && window.addEventListener) {
211
- const e = () => t(!0), s = () => t(!1);
212
- return window.addEventListener("online", e, !1), window.addEventListener("offline", s, !1), () => {
213
- window.removeEventListener("online", e), window.removeEventListener("offline", s);
214
- };
215
- }
216
- };
217
- }
218
- onSubscribe() {
219
- this.#t || this.setEventListener(this.#s);
220
- }
221
- onUnsubscribe() {
222
- this.hasListeners() || (this.#t?.(), this.#t = void 0);
223
- }
224
- setEventListener(t) {
225
- this.#s = t, this.#t?.(), this.#t = t(this.setOnline.bind(this));
226
- }
227
- setOnline(t) {
228
- this.#e !== t && (this.#e = t, this.listeners.forEach((s) => {
229
- s(t);
230
- }));
231
- }
232
- isOnline() {
233
- return this.#e;
234
- }
235
- }, ot = new At();
236
- function H() {
237
- let t, e;
238
- const s = new Promise((n, a) => {
239
- t = n, e = a;
240
- });
241
- s.status = "pending", s.catch(() => {
242
- });
243
- function r(n) {
244
- Object.assign(s, n), delete s.resolve, delete s.reject;
245
- }
246
- return s.resolve = (n) => {
247
- r({
248
- status: "fulfilled",
249
- value: n
250
- }), t(n);
251
- }, s.reject = (n) => {
252
- r({
253
- status: "rejected",
254
- reason: n
255
- }), e(n);
256
- }, s;
257
- }
258
- function Fe(t) {
259
- let e;
260
- if (t.then((s) => (e = s, s), I)?.catch(I), e !== void 0)
261
- return { data: e };
262
- }
263
- function kt(t) {
264
- return Math.min(1e3 * 2 ** t, 3e4);
265
- }
266
- function ut(t) {
267
- return (t ?? "online") === "online" ? ot.isOnline() : !0;
268
- }
269
- var ct = class extends Error {
270
- constructor(t) {
271
- super("CancelledError"), this.revert = t?.revert, this.silent = t?.silent;
272
- }
273
- };
274
- function jt(t) {
275
- let e = !1, s = 0, r;
276
- const n = H(), a = () => n.status !== "pending", o = (c) => {
277
- a() || (f(new ct(c)), t.abort?.());
278
- }, i = () => {
279
- e = !0;
280
- }, u = () => {
281
- e = !1;
282
- }, l = () => at.isFocused() && (t.networkMode === "always" || ot.isOnline()) && t.canRun(), h = () => ut(t.networkMode) && t.canRun(), d = (c) => {
283
- a() || (r?.(), n.resolve(c));
284
- }, f = (c) => {
285
- a() || (r?.(), n.reject(c));
286
- }, m = () => new Promise((c) => {
287
- r = (g) => {
288
- (a() || l()) && c(g);
289
- }, t.onPause?.();
290
- }).then(() => {
291
- r = void 0, a() || t.onContinue?.();
292
- }), O = () => {
293
- if (a())
294
- return;
295
- let c;
296
- const g = s === 0 ? t.initialPromise : void 0;
297
- try {
298
- c = g ?? t.fn();
299
- } catch (v) {
300
- c = Promise.reject(v);
301
- }
302
- Promise.resolve(c).then(d).catch((v) => {
303
- if (a())
304
- return;
305
- const p = t.retry ?? (F ? 0 : 3), y = t.retryDelay ?? kt, C = typeof y == "function" ? y(s, v) : y, P = p === !0 || typeof p == "number" && s < p || typeof p == "function" && p(s, v);
306
- if (e || !P) {
307
- f(v);
308
- return;
309
- }
310
- s++, t.onFail?.(s, v), Pt(C).then(() => l() ? void 0 : m()).then(() => {
311
- e ? f(v) : O();
312
- });
313
- });
314
- };
315
- return {
316
- promise: n,
317
- status: () => n.status,
318
- cancel: o,
319
- continue: () => (r?.(), n),
320
- cancelRetry: i,
321
- continueRetry: u,
322
- canStart: h,
323
- start: () => (h() ? O() : m().then(O), n)
324
- };
325
- }
326
- var qt = (t) => setTimeout(t, 0);
327
- function Qt() {
328
- let t = [], e = 0, s = (i) => {
329
- i();
330
- }, r = (i) => {
331
- i();
332
- }, n = qt;
333
- const a = (i) => {
334
- e ? t.push(i) : n(() => {
335
- s(i);
336
- });
337
- }, o = () => {
338
- const i = t;
339
- t = [], i.length && n(() => {
340
- r(() => {
341
- i.forEach((u) => {
342
- s(u);
343
- });
344
- });
345
- });
346
- };
347
- return {
348
- batch: (i) => {
349
- let u;
350
- e++;
351
- try {
352
- u = i();
353
- } finally {
354
- e--, e || o();
355
- }
356
- return u;
357
- },
358
- /**
359
- * All calls to the wrapped function will be batched.
360
- */
361
- batchCalls: (i) => (...u) => {
362
- a(() => {
363
- i(...u);
364
- });
365
- },
366
- schedule: a,
367
- /**
368
- * Use this method to set a custom notify function.
369
- * This can be used to for example wrap notifications with `React.act` while running tests.
370
- */
371
- setNotifyFunction: (i) => {
372
- s = i;
373
- },
374
- /**
375
- * Use this method to set a custom function to batch notifications together into a single tick.
376
- * By default React Query will use the batch function provided by ReactDOM or React Native.
377
- */
378
- setBatchNotifyFunction: (i) => {
379
- r = i;
380
- },
381
- setScheduler: (i) => {
382
- n = i;
383
- }
384
- };
385
- }
386
- var $ = Qt(), Ut = class {
387
- #e;
388
- destroy() {
389
- this.clearGcTimeout();
390
- }
391
- scheduleGc() {
392
- this.clearGcTimeout(), Q(this.gcTime) && (this.#e = setTimeout(() => {
393
- this.optionalRemove();
394
- }, this.gcTime));
395
- }
396
- updateGcTime(t) {
397
- this.gcTime = Math.max(
398
- this.gcTime || 0,
399
- t ?? (F ? 1 / 0 : 300 * 1e3)
400
- );
401
- }
402
- clearGcTimeout() {
403
- this.#e && (clearTimeout(this.#e), this.#e = void 0);
404
- }
405
- }, Ie = class extends Ut {
406
- #e;
407
- #t;
408
- #s;
409
- #n;
410
- #r;
411
- #o;
412
- #a;
413
- constructor(t) {
414
- super(), this.#a = !1, this.#o = t.defaultOptions, this.setOptions(t.options), this.observers = [], this.#n = t.client, this.#s = this.#n.getQueryCache(), this.queryKey = t.queryKey, this.queryHash = t.queryHash, this.#e = Nt(this.options), this.state = t.state ?? this.#e, this.scheduleGc();
415
- }
416
- get meta() {
417
- return this.options.meta;
418
- }
419
- get promise() {
420
- return this.#r?.promise;
421
- }
422
- setOptions(t) {
423
- this.options = { ...this.#o, ...t }, this.updateGcTime(this.options.gcTime);
424
- }
425
- optionalRemove() {
426
- !this.observers.length && this.state.fetchStatus === "idle" && this.#s.remove(this);
427
- }
428
- setData(t, e) {
429
- const s = _(this.state.data, t, this.options);
430
- return this.#i({
431
- data: s,
432
- type: "success",
433
- dataUpdatedAt: e?.updatedAt,
434
- manual: e?.manual
435
- }), s;
436
- }
437
- setState(t, e) {
438
- this.#i({ type: "setState", state: t, setStateOptions: e });
439
- }
440
- cancel(t) {
441
- const e = this.#r?.promise;
442
- return this.#r?.cancel(t), e ? e.then(I).catch(I) : Promise.resolve();
443
- }
444
- destroy() {
445
- super.destroy(), this.cancel({ silent: !0 });
446
- }
447
- reset() {
448
- this.destroy(), this.setState(this.#e);
449
- }
450
- isActive() {
451
- return this.observers.some(
452
- (t) => S(t.options.enabled, this) !== !1
453
- );
454
- }
455
- isDisabled() {
456
- return this.getObserversCount() > 0 ? !this.isActive() : this.options.queryFn === j || this.state.dataUpdateCount + this.state.errorUpdateCount === 0;
457
- }
458
- isStatic() {
459
- return this.getObserversCount() > 0 ? this.observers.some(
460
- (t) => x(t.options.staleTime, this) === "static"
461
- ) : !1;
462
- }
463
- isStale() {
464
- return this.getObserversCount() > 0 ? this.observers.some(
465
- (t) => t.getCurrentResult().isStale
466
- ) : this.state.data === void 0 || this.state.isInvalidated;
467
- }
468
- isStaleByTime(t = 0) {
469
- return this.state.data === void 0 ? !0 : t === "static" ? !1 : this.state.isInvalidated ? !0 : !it(this.state.dataUpdatedAt, t);
470
- }
471
- onFocus() {
472
- this.observers.find((e) => e.shouldFetchOnWindowFocus())?.refetch({ cancelRefetch: !1 }), this.#r?.continue();
473
- }
474
- onOnline() {
475
- this.observers.find((e) => e.shouldFetchOnReconnect())?.refetch({ cancelRefetch: !1 }), this.#r?.continue();
476
- }
477
- addObserver(t) {
478
- this.observers.includes(t) || (this.observers.push(t), this.clearGcTimeout(), this.#s.notify({ type: "observerAdded", query: this, observer: t }));
479
- }
480
- removeObserver(t) {
481
- this.observers.includes(t) && (this.observers = this.observers.filter((e) => e !== t), this.observers.length || (this.#r && (this.#a ? this.#r.cancel({ revert: !0 }) : this.#r.cancelRetry()), this.scheduleGc()), this.#s.notify({ type: "observerRemoved", query: this, observer: t }));
482
- }
483
- getObserversCount() {
484
- return this.observers.length;
485
- }
486
- invalidate() {
487
- this.state.isInvalidated || this.#i({ type: "invalidate" });
488
- }
489
- async fetch(t, e) {
490
- if (this.state.fetchStatus !== "idle" && // If the promise in the retyer is already rejected, we have to definitely
491
- // re-start the fetch; there is a chance that the query is still in a
492
- // pending state when that happens
493
- this.#r?.status() !== "rejected") {
494
- if (this.state.data !== void 0 && e?.cancelRefetch)
495
- this.cancel({ silent: !0 });
496
- else if (this.#r)
497
- return this.#r.continueRetry(), this.#r.promise;
498
- }
499
- if (t && this.setOptions(t), !this.options.queryFn) {
500
- const i = this.observers.find((u) => u.options.queryFn);
501
- i && this.setOptions(i.options);
502
- }
503
- process.env.NODE_ENV !== "production" && (Array.isArray(this.options.queryKey) || console.error(
504
- "As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']"
505
- ));
506
- const s = new AbortController(), r = (i) => {
507
- Object.defineProperty(i, "signal", {
508
- enumerable: !0,
509
- get: () => (this.#a = !0, s.signal)
510
- });
511
- }, n = () => {
512
- const i = Tt(this.options, e), l = (() => {
513
- const h = {
514
- client: this.#n,
515
- queryKey: this.queryKey,
516
- meta: this.meta
517
- };
518
- return r(h), h;
519
- })();
520
- return this.#a = !1, this.options.persister ? this.options.persister(
521
- i,
522
- l,
523
- this
524
- ) : i(l);
525
- }, o = (() => {
526
- const i = {
527
- fetchOptions: e,
528
- options: this.options,
529
- queryKey: this.queryKey,
530
- client: this.#n,
531
- state: this.state,
532
- fetchFn: n
533
- };
534
- return r(i), i;
535
- })();
536
- this.options.behavior?.onFetch(o, this), this.#t = this.state, (this.state.fetchStatus === "idle" || this.state.fetchMeta !== o.fetchOptions?.meta) && this.#i({ type: "fetch", meta: o.fetchOptions?.meta }), this.#r = jt({
537
- initialPromise: e?.initialPromise,
538
- fn: o.fetchFn,
539
- abort: s.abort.bind(s),
540
- onFail: (i, u) => {
541
- this.#i({ type: "failed", failureCount: i, error: u });
542
- },
543
- onPause: () => {
544
- this.#i({ type: "pause" });
545
- },
546
- onContinue: () => {
547
- this.#i({ type: "continue" });
548
- },
549
- retry: o.options.retry,
550
- retryDelay: o.options.retryDelay,
551
- networkMode: o.options.networkMode,
552
- canRun: () => !0
553
- });
554
- try {
555
- const i = await this.#r.start();
556
- if (i === void 0)
557
- throw process.env.NODE_ENV !== "production" && console.error(
558
- `Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`
559
- ), new Error(`${this.queryHash} data is undefined`);
560
- return this.setData(i), this.#s.config.onSuccess?.(i, this), this.#s.config.onSettled?.(
561
- i,
562
- this.state.error,
563
- this
564
- ), i;
565
- } catch (i) {
566
- if (i instanceof ct) {
567
- if (i.silent)
568
- return this.#r.promise;
569
- if (i.revert) {
570
- if (this.setState({
571
- ...this.#t,
572
- fetchStatus: "idle"
573
- }), this.state.data === void 0)
574
- throw i;
575
- return this.state.data;
576
- }
577
- }
578
- throw this.#i({
579
- type: "error",
580
- error: i
581
- }), this.#s.config.onError?.(
582
- i,
583
- this
584
- ), this.#s.config.onSettled?.(
585
- this.state.data,
586
- i,
587
- this
588
- ), i;
589
- } finally {
590
- this.scheduleGc();
591
- }
592
- }
593
- #i(t) {
594
- const e = (s) => {
595
- switch (t.type) {
596
- case "failed":
597
- return {
598
- ...s,
599
- fetchFailureCount: t.failureCount,
600
- fetchFailureReason: t.error
601
- };
602
- case "pause":
603
- return {
604
- ...s,
605
- fetchStatus: "paused"
606
- };
607
- case "continue":
608
- return {
609
- ...s,
610
- fetchStatus: "fetching"
611
- };
612
- case "fetch":
613
- return {
614
- ...s,
615
- ...ht(s.data, this.options),
616
- fetchMeta: t.meta ?? null
617
- };
618
- case "success":
619
- const r = {
620
- ...s,
621
- data: t.data,
622
- dataUpdateCount: s.dataUpdateCount + 1,
623
- dataUpdatedAt: t.dataUpdatedAt ?? Date.now(),
624
- error: null,
625
- isInvalidated: !1,
626
- status: "success",
627
- ...!t.manual && {
628
- fetchStatus: "idle",
629
- fetchFailureCount: 0,
630
- fetchFailureReason: null
631
- }
632
- };
633
- return this.#t = t.manual ? r : void 0, r;
634
- case "error":
635
- const n = t.error;
636
- return {
637
- ...s,
638
- error: n,
639
- errorUpdateCount: s.errorUpdateCount + 1,
640
- errorUpdatedAt: Date.now(),
641
- fetchFailureCount: s.fetchFailureCount + 1,
642
- fetchFailureReason: n,
643
- fetchStatus: "idle",
644
- status: "error"
645
- };
646
- case "invalidate":
647
- return {
648
- ...s,
649
- isInvalidated: !0
650
- };
651
- case "setState":
652
- return {
653
- ...s,
654
- ...t.state
655
- };
656
- }
657
- };
658
- this.state = e(this.state), $.batch(() => {
659
- this.observers.forEach((s) => {
660
- s.onQueryUpdate();
661
- }), this.#s.notify({ query: this, type: "updated", action: t });
662
- });
663
- }
664
- };
665
- function ht(t, e) {
666
- return {
667
- fetchFailureCount: 0,
668
- fetchFailureReason: null,
669
- fetchStatus: ut(e.networkMode) ? "fetching" : "paused",
670
- ...t === void 0 && {
671
- error: null,
672
- status: "pending"
673
- }
674
- };
675
- }
676
- function Nt(t) {
677
- const e = typeof t.initialData == "function" ? t.initialData() : t.initialData, s = e !== void 0, r = s ? typeof t.initialDataUpdatedAt == "function" ? t.initialDataUpdatedAt() : t.initialDataUpdatedAt : 0;
678
- return {
679
- data: e,
680
- dataUpdateCount: 0,
681
- dataUpdatedAt: s ? r ?? Date.now() : 0,
682
- error: null,
683
- errorUpdateCount: 0,
684
- errorUpdatedAt: 0,
685
- fetchFailureCount: 0,
686
- fetchFailureReason: null,
687
- fetchMeta: null,
688
- isInvalidated: !1,
689
- status: s ? "success" : "pending",
690
- fetchStatus: "idle"
691
- };
692
- }
693
- var lt = class extends G {
694
- constructor(t, e) {
695
- super(), this.options = e, this.#e = t, this.#i = null, this.#a = H(), this.bindMethods(), this.setOptions(e);
696
- }
697
- #e;
698
- #t = void 0;
699
- #s = void 0;
700
- #n = void 0;
701
- #r;
702
- #o;
703
- #a;
704
- #i;
705
- #y;
706
- #f;
707
- // This property keeps track of the last query with defined data.
708
- // It will be used to pass the previous data and query to the placeholder function between renders.
709
- #d;
710
- #c;
711
- #h;
712
- #u;
713
- #p = /* @__PURE__ */ new Set();
714
- bindMethods() {
715
- this.refetch = this.refetch.bind(this);
716
- }
717
- onSubscribe() {
718
- this.listeners.size === 1 && (this.#t.addObserver(this), et(this.#t, this.options) ? this.#l() : this.updateResult(), this.#b());
719
- }
720
- onUnsubscribe() {
721
- this.hasListeners() || this.destroy();
722
- }
723
- shouldFetchOnReconnect() {
724
- return K(
725
- this.#t,
726
- this.options,
727
- this.options.refetchOnReconnect
728
- );
729
- }
730
- shouldFetchOnWindowFocus() {
731
- return K(
732
- this.#t,
733
- this.options,
734
- this.options.refetchOnWindowFocus
735
- );
736
- }
737
- destroy() {
738
- this.listeners = /* @__PURE__ */ new Set(), this.#S(), this.#w(), this.#t.removeObserver(this);
739
- }
740
- setOptions(t) {
741
- const e = this.options, s = this.#t;
742
- if (this.options = this.#e.defaultQueryOptions(t), this.options.enabled !== void 0 && typeof this.options.enabled != "boolean" && typeof this.options.enabled != "function" && typeof S(this.options.enabled, this.#t) != "boolean")
743
- throw new Error(
744
- "Expected enabled to be a boolean or a callback that returns a boolean"
745
- );
746
- this.#R(), this.#t.setOptions(this.options), e._defaulted && !L(this.options, e) && this.#e.getQueryCache().notify({
747
- type: "observerOptionsUpdated",
748
- query: this.#t,
749
- observer: this
750
- });
751
- const r = this.hasListeners();
752
- r && st(
753
- this.#t,
754
- s,
755
- this.options,
756
- e
757
- ) && this.#l(), this.updateResult(), r && (this.#t !== s || S(this.options.enabled, this.#t) !== S(e.enabled, this.#t) || x(this.options.staleTime, this.#t) !== x(e.staleTime, this.#t)) && this.#v();
758
- const n = this.#m();
759
- r && (this.#t !== s || S(this.options.enabled, this.#t) !== S(e.enabled, this.#t) || n !== this.#u) && this.#g(n);
760
- }
761
- getOptimisticResult(t) {
762
- const e = this.#e.getQueryCache().build(this.#e, t), s = this.createResult(e, t);
763
- return Mt(this, s) && (this.#n = s, this.#o = this.options, this.#r = this.#t.state), s;
764
- }
765
- getCurrentResult() {
766
- return this.#n;
767
- }
768
- trackResult(t, e) {
769
- return new Proxy(t, {
770
- get: (s, r) => (this.trackProp(r), e?.(r), r === "promise" && !this.options.experimental_prefetchInRender && this.#a.status === "pending" && this.#a.reject(
771
- new Error(
772
- "experimental_prefetchInRender feature flag is not enabled"
773
- )
774
- ), Reflect.get(s, r))
775
- });
776
- }
777
- trackProp(t) {
778
- this.#p.add(t);
779
- }
780
- getCurrentQuery() {
781
- return this.#t;
782
- }
783
- refetch({ ...t } = {}) {
784
- return this.fetch({
785
- ...t
786
- });
787
- }
788
- fetchOptimistic(t) {
789
- const e = this.#e.defaultQueryOptions(t), s = this.#e.getQueryCache().build(this.#e, e);
790
- return s.fetch().then(() => this.createResult(s, e));
791
- }
792
- fetch(t) {
793
- return this.#l({
794
- ...t,
795
- cancelRefetch: t.cancelRefetch ?? !0
796
- }).then(() => (this.updateResult(), this.#n));
797
- }
798
- #l(t) {
799
- this.#R();
800
- let e = this.#t.fetch(
801
- this.options,
802
- t
803
- );
804
- return t?.throwOnError || (e = e.catch(I)), e;
805
- }
806
- #v() {
807
- this.#S();
808
- const t = x(
809
- this.options.staleTime,
810
- this.#t
811
- );
812
- if (F || this.#n.isStale || !Q(t))
813
- return;
814
- const s = it(this.#n.dataUpdatedAt, t) + 1;
815
- this.#c = setTimeout(() => {
816
- this.#n.isStale || this.updateResult();
817
- }, s);
818
- }
819
- #m() {
820
- return (typeof this.options.refetchInterval == "function" ? this.options.refetchInterval(this.#t) : this.options.refetchInterval) ?? !1;
821
- }
822
- #g(t) {
823
- this.#w(), this.#u = t, !(F || S(this.options.enabled, this.#t) === !1 || !Q(this.#u) || this.#u === 0) && (this.#h = setInterval(() => {
824
- (this.options.refetchIntervalInBackground || at.isFocused()) && this.#l();
825
- }, this.#u));
826
- }
827
- #b() {
828
- this.#v(), this.#g(this.#m());
829
- }
830
- #S() {
831
- this.#c && (clearTimeout(this.#c), this.#c = void 0);
832
- }
833
- #w() {
834
- this.#h && (clearInterval(this.#h), this.#h = void 0);
835
- }
836
- createResult(t, e) {
837
- const s = this.#t, r = this.options, n = this.#n, a = this.#r, o = this.#o, u = t !== s ? t.state : this.#s, { state: l } = t;
838
- let h = { ...l }, d = !1, f;
839
- if (e._optimisticResults) {
840
- const b = this.hasListeners(), D = !b && et(t, e), T = b && st(t, s, e, r);
841
- (D || T) && (h = {
842
- ...h,
843
- ...ht(l.data, t.options)
844
- }), e._optimisticResults === "isRestoring" && (h.fetchStatus = "idle");
845
- }
846
- let { error: m, errorUpdatedAt: O, status: c } = h;
847
- f = h.data;
848
- let g = !1;
849
- if (e.placeholderData !== void 0 && f === void 0 && c === "pending") {
850
- let b;
851
- n?.isPlaceholderData && e.placeholderData === o?.placeholderData ? (b = n.data, g = !0) : b = typeof e.placeholderData == "function" ? e.placeholderData(
852
- this.#d?.state.data,
853
- this.#d
854
- ) : e.placeholderData, b !== void 0 && (c = "success", f = _(
855
- n?.data,
856
- b,
857
- e
858
- ), d = !0);
859
- }
860
- if (e.select && f !== void 0 && !g)
861
- if (n && f === a?.data && e.select === this.#y)
862
- f = this.#f;
863
- else
864
- try {
865
- this.#y = e.select, f = e.select(f), f = _(n?.data, f, e), this.#f = f, this.#i = null;
866
- } catch (b) {
867
- this.#i = b;
868
- }
869
- this.#i && (m = this.#i, f = this.#f, O = Date.now(), c = "error");
870
- const v = h.fetchStatus === "fetching", p = c === "pending", y = c === "error", C = p && v, P = f !== void 0, R = {
871
- status: c,
872
- fetchStatus: h.fetchStatus,
873
- isPending: p,
874
- isSuccess: c === "success",
875
- isError: y,
876
- isInitialLoading: C,
877
- isLoading: C,
878
- data: f,
879
- dataUpdatedAt: h.dataUpdatedAt,
880
- error: m,
881
- errorUpdatedAt: O,
882
- failureCount: h.fetchFailureCount,
883
- failureReason: h.fetchFailureReason,
884
- errorUpdateCount: h.errorUpdateCount,
885
- isFetched: h.dataUpdateCount > 0 || h.errorUpdateCount > 0,
886
- isFetchedAfterMount: h.dataUpdateCount > u.dataUpdateCount || h.errorUpdateCount > u.errorUpdateCount,
887
- isFetching: v,
888
- isRefetching: v && !p,
889
- isLoadingError: y && !P,
890
- isPaused: h.fetchStatus === "paused",
891
- isPlaceholderData: d,
892
- isRefetchError: y && P,
893
- isStale: J(t, e),
894
- refetch: this.refetch,
895
- promise: this.#a,
896
- isEnabled: S(e.enabled, t) !== !1
897
- };
898
- if (this.options.experimental_prefetchInRender) {
899
- const b = (A) => {
900
- R.status === "error" ? A.reject(R.error) : R.data !== void 0 && A.resolve(R.data);
901
- }, D = () => {
902
- const A = this.#a = R.promise = H();
903
- b(A);
904
- }, T = this.#a;
905
- switch (T.status) {
906
- case "pending":
907
- t.queryHash === s.queryHash && b(T);
908
- break;
909
- case "fulfilled":
910
- (R.status === "error" || R.data !== T.value) && D();
911
- break;
912
- case "rejected":
913
- (R.status !== "error" || R.error !== T.reason) && D();
914
- break;
915
- }
916
- }
917
- return R;
918
- }
919
- updateResult() {
920
- const t = this.#n, e = this.createResult(this.#t, this.options);
921
- if (this.#r = this.#t.state, this.#o = this.options, this.#r.data !== void 0 && (this.#d = this.#t), L(e, t))
922
- return;
923
- this.#n = e;
924
- const s = () => {
925
- if (!t)
926
- return !0;
927
- const { notifyOnChangeProps: r } = this.options, n = typeof r == "function" ? r() : r;
928
- if (n === "all" || !n && !this.#p.size)
929
- return !0;
930
- const a = new Set(
931
- n ?? this.#p
932
- );
933
- return this.options.throwOnError && a.add("error"), Object.keys(this.#n).some((o) => {
934
- const i = o;
935
- return this.#n[i] !== t[i] && a.has(i);
936
- });
937
- };
938
- this.#O({ listeners: s() });
939
- }
940
- #R() {
941
- const t = this.#e.getQueryCache().build(this.#e, this.options);
942
- if (t === this.#t)
943
- return;
944
- const e = this.#t;
945
- this.#t = t, this.#s = t.state, this.hasListeners() && (e?.removeObserver(this), t.addObserver(this));
946
- }
947
- onQueryUpdate() {
948
- this.updateResult(), this.hasListeners() && this.#b();
949
- }
950
- #O(t) {
951
- $.batch(() => {
952
- t.listeners && this.listeners.forEach((e) => {
953
- e(this.#n);
954
- }), this.#e.getQueryCache().notify({
955
- query: this.#t,
956
- type: "observerResultsUpdated"
957
- });
958
- });
959
- }
960
- };
961
- function Lt(t, e) {
962
- return S(e.enabled, t) !== !1 && t.state.data === void 0 && !(t.state.status === "error" && e.retryOnMount === !1);
963
- }
964
- function et(t, e) {
965
- return Lt(t, e) || t.state.data !== void 0 && K(t, e, e.refetchOnMount);
966
- }
967
- function K(t, e, s) {
968
- if (S(e.enabled, t) !== !1 && x(e.staleTime, t) !== "static") {
969
- const r = typeof s == "function" ? s(t) : s;
970
- return r === "always" || r !== !1 && J(t, e);
971
- }
972
- return !1;
973
- }
974
- function st(t, e, s, r) {
975
- return (t !== e || S(r.enabled, t) === !1) && (!s.suspense || t.state.status !== "error") && J(t, s);
976
- }
977
- function J(t, e) {
978
- return S(e.enabled, t) !== !1 && t.isStaleByTime(x(e.staleTime, t));
979
- }
980
- function Mt(t, e) {
981
- return !L(t.getCurrentResult(), e);
982
- }
983
- var ft = w.createContext(
984
- void 0
985
- ), dt = (t) => {
986
- const e = w.useContext(ft);
987
- if (t)
988
- return t;
989
- if (!e)
990
- throw new Error("No QueryClient set, use QueryClientProvider to set one");
991
- return e;
992
- }, Pe = ({
993
- client: t,
994
- children: e
995
- }) => (w.useEffect(() => (t.mount(), () => {
996
- t.unmount();
997
- }), [t]), /* @__PURE__ */ Et.jsx(ft.Provider, { value: t, children: e })), pt = w.createContext(!1), _t = () => w.useContext(pt);
998
- pt.Provider;
999
- function Ht() {
1000
- let t = !1;
1001
- return {
1002
- clearReset: () => {
1003
- t = !1;
1004
- },
1005
- reset: () => {
1006
- t = !0;
1007
- },
1008
- isReset: () => t
1009
- };
1010
- }
1011
- var Kt = w.createContext(Ht()), Bt = () => w.useContext(Kt), zt = (t, e) => {
1012
- (t.suspense || t.throwOnError || t.experimental_prefetchInRender) && (e.isReset() || (t.retryOnMount = !1));
1013
- }, Gt = (t) => {
1014
- w.useEffect(() => {
1015
- t.clearReset();
1016
- }, [t]);
1017
- }, Vt = ({
1018
- result: t,
1019
- errorResetBoundary: e,
1020
- throwOnError: s,
1021
- query: r,
1022
- suspense: n
1023
- }) => t.isError && !e.isReset() && !t.isFetching && r && (n && t.data === void 0 || xt(s, [t.error, r])), $t = (t, e) => e.state.data === void 0, Jt = (t) => {
1024
- if (t.suspense) {
1025
- const e = (r) => r === "static" ? r : Math.max(r ?? 1e3, 1e3), s = t.staleTime;
1026
- t.staleTime = typeof s == "function" ? (...r) => e(s(...r)) : e(s), typeof t.gcTime == "number" && (t.gcTime = Math.max(t.gcTime, 1e3));
1027
- }
1028
- }, Zt = (t, e) => t.isLoading && t.isFetching && !e, Wt = (t, e) => t?.suspense && e.isPending, rt = (t, e, s) => e.fetchOptimistic(t).catch(() => {
1029
- s.clearReset();
1030
- });
1031
- function yt(t, e, s) {
1032
- if (process.env.NODE_ENV !== "production" && (typeof t != "object" || Array.isArray(t)))
1033
- throw new Error(
1034
- 'Bad argument type. Starting with v5, only the "Object" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object'
1035
- );
1036
- const r = _t(), n = Bt(), a = dt(s), o = a.defaultQueryOptions(t);
1037
- a.getDefaultOptions().queries?._experimental_beforeQuery?.(
1038
- o
1039
- ), process.env.NODE_ENV !== "production" && (o.queryFn || console.error(
1040
- `[${o.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`
1041
- )), o._optimisticResults = r ? "isRestoring" : "optimistic", Jt(o), zt(o, n), Gt(n);
1042
- const i = !a.getQueryCache().get(o.queryHash), [u] = w.useState(
1043
- () => new e(
1044
- a,
1045
- o
1046
- )
1047
- ), l = u.getOptimisticResult(o), h = !r && t.subscribed !== !1;
1048
- if (w.useSyncExternalStore(
1049
- w.useCallback(
1050
- (d) => {
1051
- const f = h ? u.subscribe($.batchCalls(d)) : I;
1052
- return u.updateResult(), f;
1053
- },
1054
- [u, h]
1055
- ),
1056
- () => u.getCurrentResult(),
1057
- () => u.getCurrentResult()
1058
- ), w.useEffect(() => {
1059
- u.setOptions(o);
1060
- }, [o, u]), Wt(o, l))
1061
- throw rt(o, u, n);
1062
- if (Vt({
1063
- result: l,
1064
- errorResetBoundary: n,
1065
- throwOnError: o.throwOnError,
1066
- query: a.getQueryCache().get(o.queryHash),
1067
- suspense: o.suspense
1068
- }))
1069
- throw l.error;
1070
- return a.getDefaultOptions().queries?._experimental_afterQuery?.(
1071
- o,
1072
- l
1073
- ), o.experimental_prefetchInRender && !F && Zt(l, r) && (i ? (
1074
- // Fetch immediately on render in order to ensure `.promise` is resolved even if the component is unmounted
1075
- rt(o, u, n)
1076
- ) : (
1077
- // subscribe to the "cache promise" so that we can finalize the currentThenable once data comes in
1078
- a.getQueryCache().get(o.queryHash)?.promise
1079
- ))?.catch(I).finally(() => {
1080
- u.updateResult();
1081
- }), o.notifyOnChangeProps ? l : u.trackResult(l);
1082
- }
1083
- function Yt(t, e) {
1084
- return yt(t, lt, e);
1085
- }
1086
- function Xt(t, e) {
1087
- return process.env.NODE_ENV !== "production" && t.queryFn === j && console.error("skipToken is not allowed for useSuspenseQuery"), yt(
1088
- {
1089
- ...t,
1090
- enabled: !0,
1091
- suspense: !0,
1092
- throwOnError: $t,
1093
- placeholderData: void 0
1094
- },
1095
- lt,
1096
- e
1097
- );
1098
- }
1099
- const nt = (t) => {
1100
- let e;
1101
- const s = /* @__PURE__ */ new Set(), r = (l, h) => {
1102
- const d = typeof l == "function" ? l(e) : l;
1103
- if (!Object.is(d, e)) {
1104
- const f = e;
1105
- e = h ?? (typeof d != "object" || d === null) ? d : Object.assign({}, e, d), s.forEach((m) => m(e, f));
1106
- }
1107
- }, n = () => e, i = { setState: r, getState: n, getInitialState: () => u, subscribe: (l) => (s.add(l), () => s.delete(l)) }, u = e = t(r, n, i);
1108
- return i;
1109
- }, te = ((t) => t ? nt(t) : nt), ee = (t) => t;
1110
- function se(t, e = ee) {
1111
- const s = k.useSyncExternalStore(
1112
- t.subscribe,
1113
- k.useCallback(() => e(t.getState()), [t, e]),
1114
- k.useCallback(() => e(t.getInitialState()), [t, e])
1115
- );
1116
- return k.useDebugValue(s), s;
1117
- }
1118
- const re = (t) => {
1119
- const e = te(t), s = (r) => se(e, r);
1120
- return Object.assign(s, e), s;
1121
- }, ne = ((t) => re);
1122
- function vt(t, e) {
1123
- let s;
1124
- try {
1125
- s = t();
1126
- } catch {
1127
- return;
1128
- }
1129
- return {
1130
- getItem: (n) => {
1131
- var a;
1132
- const o = (u) => u === null ? null : JSON.parse(u, void 0), i = (a = s.getItem(n)) != null ? a : null;
1133
- return i instanceof Promise ? i.then(o) : o(i);
1134
- },
1135
- setItem: (n, a) => s.setItem(n, JSON.stringify(a, void 0)),
1136
- removeItem: (n) => s.removeItem(n)
1137
- };
1138
- }
1139
- const B = (t) => (e) => {
1140
- try {
1141
- const s = t(e);
1142
- return s instanceof Promise ? s : {
1143
- then(r) {
1144
- return B(r)(s);
1145
- },
1146
- catch(r) {
1147
- return this;
1148
- }
1149
- };
1150
- } catch (s) {
1151
- return {
1152
- then(r) {
1153
- return this;
1154
- },
1155
- catch(r) {
1156
- return B(r)(s);
1157
- }
1158
- };
1159
- }
1160
- }, ie = (t, e) => (s, r, n) => {
1161
- let a = {
1162
- storage: vt(() => localStorage),
1163
- partialize: (c) => c,
1164
- version: 0,
1165
- merge: (c, g) => ({
1166
- ...g,
1167
- ...c
1168
- }),
1169
- ...e
1170
- }, o = !1;
1171
- const i = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set();
1172
- let l = a.storage;
1173
- if (!l)
1174
- return t(
1175
- (...c) => {
1176
- console.warn(
1177
- `[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`
1178
- ), s(...c);
1179
- },
1180
- r,
1181
- n
1182
- );
1183
- const h = () => {
1184
- const c = a.partialize({ ...r() });
1185
- return l.setItem(a.name, {
1186
- state: c,
1187
- version: a.version
1188
- });
1189
- }, d = n.setState;
1190
- n.setState = (c, g) => (d(c, g), h());
1191
- const f = t(
1192
- (...c) => (s(...c), h()),
1193
- r,
1194
- n
1195
- );
1196
- n.getInitialState = () => f;
1197
- let m;
1198
- const O = () => {
1199
- var c, g;
1200
- if (!l) return;
1201
- o = !1, i.forEach((p) => {
1202
- var y;
1203
- return p((y = r()) != null ? y : f);
1204
- });
1205
- const v = ((g = a.onRehydrateStorage) == null ? void 0 : g.call(a, (c = r()) != null ? c : f)) || void 0;
1206
- return B(l.getItem.bind(l))(a.name).then((p) => {
1207
- if (p)
1208
- if (typeof p.version == "number" && p.version !== a.version) {
1209
- if (a.migrate) {
1210
- const y = a.migrate(
1211
- p.state,
1212
- p.version
1213
- );
1214
- return y instanceof Promise ? y.then((C) => [!0, C]) : [!0, y];
1215
- }
1216
- console.error(
1217
- "State loaded from storage couldn't be migrated since no migrate function was provided"
1218
- );
1219
- } else
1220
- return [!1, p.state];
1221
- return [!1, void 0];
1222
- }).then((p) => {
1223
- var y;
1224
- const [C, P] = p;
1225
- if (m = a.merge(
1226
- P,
1227
- (y = r()) != null ? y : f
1228
- ), s(m, !0), C)
1229
- return h();
1230
- }).then(() => {
1231
- v?.(m, void 0), m = r(), o = !0, u.forEach((p) => p(m));
1232
- }).catch((p) => {
1233
- v?.(void 0, p);
1234
- });
1235
- };
1236
- return n.persist = {
1237
- setOptions: (c) => {
1238
- a = {
1239
- ...a,
1240
- ...c
1241
- }, c.storage && (l = c.storage);
1242
- },
1243
- clearStorage: () => {
1244
- l?.removeItem(a.name);
1245
- },
1246
- getOptions: () => a,
1247
- rehydrate: () => O(),
1248
- hasHydrated: () => o,
1249
- onHydrate: (c) => (i.add(c), () => {
1250
- i.delete(c);
1251
- }),
1252
- onFinishHydration: (c) => (u.add(c), () => {
1253
- u.delete(c);
1254
- })
1255
- }, a.skipHydration || O(), m || f;
1256
- }, ae = ie, oe = (t) => {
1257
- const e = (s) => {
1258
- s.key === t.persist.getOptions().name && s.newValue && t.persist.rehydrate();
1259
- };
1260
- if (!(typeof window > "u"))
1261
- return window.addEventListener("storage", e), () => {
1262
- window.removeEventListener("storage", e);
1263
- };
1264
- }, mt = ne()(
1265
- ae(
1266
- (t) => ({
1267
- isAuthenticated: !1,
1268
- isPending: !0,
1269
- profile: null,
1270
- providerData: null,
1271
- setAuthenticationPending: () => t(() => ({
1272
- isAuthenticated: !1,
1273
- isPending: !1,
1274
- profile: null,
1275
- providerData: null
1276
- })),
1277
- setLoggedOut: () => t(() => ({
1278
- isAuthenticated: !1,
1279
- isPending: !1,
1280
- profile: null,
1281
- providerData: null
1282
- })),
1283
- setLoggedIn: ({
1284
- profile: e,
1285
- providerData: s
1286
- }) => t(() => ({
1287
- isAuthenticated: !0,
1288
- isPending: !1,
1289
- profile: e,
1290
- providerData: s
1291
- }))
1292
- }),
1293
- {
1294
- merge: (t, e) => ({
1295
- ...e,
1296
- isPending: !1,
1297
- ...typeof t == "object" ? t : {}
1298
- }),
1299
- name: "auth-state",
1300
- storage: vt(() => localStorage)
1301
- }
1302
- )
1303
- );
1304
- oe(mt);
1305
- const ue = /^(\w+:\/\/[^/?]+)?([^?]*)(\?.*)?$/, ce = (t) => t.filter(
1306
- (e) => e != null && e !== !1 && (typeof e == "string" || typeof e == "number")
1307
- ).map((e) => `${e}`).filter((e) => e), he = (t) => {
1308
- const e = t.join("/"), [, s = "", r = ""] = e.match(ue) ?? [];
1309
- return {
1310
- prefix: s,
1311
- pathname: r.split("/").filter((n) => n !== "")
1312
- };
1313
- }, le = (t) => {
1314
- const { prefix: e, pathname: s } = t;
1315
- let r = e;
1316
- return s.length > 0 ? (r ? r += "/" : r = "/", r += s.join("/")) : r || (r = "/"), r;
1317
- }, E = (...t) => {
1318
- const e = ce(t), s = he(e);
1319
- return le(s);
1320
- }, gt = Object.freeze({
1321
- API_IDENTITIES: ["api-identities"]
1322
- }), fe = () => {
1323
- const t = dt();
1324
- return { invalidateCache: wt(
1325
- (s) => t.invalidateQueries({ queryKey: gt[s] }),
1326
- [t]
1327
- ) };
1328
- }, Te = "no-dehydrate", Z = (t, e) => {
1329
- for (const s of t) {
1330
- const r = W(s, e);
1331
- if (r !== void 0) return r;
1332
- }
1333
- }, W = (t, e, s = []) => {
1334
- const r = e(t, s);
1335
- if (r !== void 0) return r;
1336
- if (t.type === "category")
1337
- for (const n of t.items) {
1338
- const a = W(n, e, [
1339
- ...s,
1340
- t
1341
- ]);
1342
- if (a !== void 0) return a;
1343
- }
1344
- }, xe = () => {
1345
- const t = q(), { navigation: e } = St();
1346
- return Z(e, (s) => {
1347
- if (s.type === "doc" && E(s.path) === t.pathname)
1348
- return s;
1349
- });
1350
- }, De = (t) => {
1351
- const e = q();
1352
- return W(t, (s) => {
1353
- switch (s.type) {
1354
- case "category":
1355
- return s.link && E(s.link.path) === e.pathname ? !0 : void 0;
1356
- case "custom-page":
1357
- case "doc":
1358
- return E(s.path) === e.pathname ? !0 : void 0;
1359
- default:
1360
- return;
1361
- }
1362
- });
1363
- }, Ae = () => {
1364
- const t = q().pathname, { navigation: e } = St();
1365
- let s, r, n = !1;
1366
- return Z(e, (a) => {
1367
- const o = a.type === "doc" ? E(a.path) : a.type === "category" && a.link ? E(a.link.path) : void 0;
1368
- if (o) {
1369
- if (n)
1370
- return r = { label: a.label, id: o }, !0;
1371
- t === o ? n = !0 : s = { label: a.label, id: o };
1372
- }
1373
- }), { prev: s, next: r };
1374
- }, ke = Ft(
1375
- "relative flex items-center gap-2 px-(--padding-nav-item) my-0.5 py-1.5 rounded-lg hover:bg-accent tabular-nums",
1376
- {
1377
- variants: {
1378
- isActive: {
1379
- true: "bg-accent font-medium",
1380
- false: "text-foreground/80"
1381
- },
1382
- isMuted: {
1383
- true: "text-foreground/30",
1384
- false: ""
1385
- },
1386
- isPending: {
1387
- true: "bg-accent animate-pulse",
1388
- false: ""
1389
- }
1390
- },
1391
- defaultVariants: {
1392
- isActive: !1
1393
- }
1394
- }
1395
- ), je = (t, e) => (s) => typeof s.display == "function" ? s.display({ context: e, auth: t }) : s.display === "hide" || !s.label ? !1 : s.display === "auth" && t.isAuthenticated || s.display === "anon" && !t.isAuthenticated || !s.display || s.display === "always", de = Rt(
1396
- void 0
1397
- ), bt = () => {
1398
- const t = Ot(de);
1399
- if (!t)
1400
- throw new Error("useZudoku must be used within a ZudokuProvider.");
1401
- return t;
1402
- }, qe = () => {
1403
- const { getApiIdentities: t } = bt(), { isAuthenticated: e } = mt(), { invalidateCache: s } = fe();
1404
- return Ct(() => {
1405
- e || s("API_IDENTITIES");
1406
- }, [e, s]), Yt({
1407
- queryFn: t,
1408
- queryKey: gt.API_IDENTITIES
1409
- });
1410
- }, z = (t) => {
1411
- switch (t.type) {
1412
- case "doc":
1413
- return E(t.path);
1414
- case "category":
1415
- return t.link ? E(t.link.path) : void 0;
1416
- case "link":
1417
- return t.to;
1418
- case "custom-page":
1419
- return E(t.path);
1420
- default:
1421
- return;
1422
- }
1423
- }, pe = (t) => {
1424
- const e = /* @__PURE__ */ new Set(), s = (r) => {
1425
- for (const n of r) {
1426
- const a = z(n)?.split("?").at(0)?.split("#").at(0);
1427
- a && e.add(a), n.type === "category" && s(n.items);
1428
- }
1429
- };
1430
- return s(t), [...e];
1431
- }, St = () => {
1432
- const { getPluginNavigation: t, navigation: e } = bt(), s = q(), r = Z(e, (o, i) => {
1433
- if (z(o) === s.pathname)
1434
- return i.at(0) ?? o;
1435
- }), { data: n } = Xt({
1436
- queryFn: () => t(s.pathname),
1437
- queryKey: ["plugin-navigation", s.pathname]
1438
- });
1439
- let a = r;
1440
- if (!r && n.length > 0) {
1441
- const o = pe(n);
1442
- a = e.flatMap((i) => {
1443
- const u = z(i);
1444
- return u ? [{ item: i, path: u }] : [];
1445
- }).sort((i, u) => u.path.length - i.path.length).find(({ path: i }) => o.some(
1446
- (u) => Y({ path: i, end: !1 }, u) ?? Y({ path: u, end: !1 }, i)
1447
- ))?.item;
1448
- }
1449
- return {
1450
- navigation: [
1451
- ...r?.type === "category" ? r.items : [],
1452
- ...n
1453
- ],
1454
- topNavItem: a
1455
- };
1456
- };
1457
- export {
1458
- at as A,
1459
- ot as B,
1460
- gt as C,
1461
- x as D,
1462
- Se as E,
1463
- V as F,
1464
- j as G,
1465
- Fe as H,
1466
- Pe as I,
1467
- ne as J,
1468
- ae as K,
1469
- vt as L,
1470
- oe as M,
1471
- Te as N,
1472
- qe as O,
1473
- De as P,
1474
- Ie as Q,
1475
- Ut as R,
1476
- G as S,
1477
- ke as T,
1478
- te as U,
1479
- se as V,
1480
- de as Z,
1481
- bt as a,
1482
- xe as b,
1483
- jt as c,
1484
- Ae as d,
1485
- Xt as e,
1486
- dt as f,
1487
- I as g,
1488
- U as h,
1489
- xt as i,
1490
- E as j,
1491
- Yt as k,
1492
- Oe as l,
1493
- fe as m,
1494
- $ as n,
1495
- je as o,
1496
- St as p,
1497
- W as q,
1498
- It as r,
1499
- L as s,
1500
- Z as t,
1501
- mt as u,
1502
- we as v,
1503
- Re as w,
1504
- Tt as x,
1505
- Ee as y,
1506
- Ce as z
1507
- };
1508
- //# sourceMappingURL=ZudokuContext-BXldanA8.js.map