@semiont/cli 0.4.14 → 0.4.15

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 (127) hide show
  1. package/dist/cli.mjs +15470 -4962
  2. package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-CMDe963r.js → ArrowsRightLeftIcon-BzLgl5o9.js} +2 -2
  3. package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-CMDe963r.js.map → ArrowsRightLeftIcon-BzLgl5o9.js.map} +1 -1
  4. package/dist/frontend/dist/assets/{ChevronLeftIcon-CMXd_XZQ.js → ChevronLeftIcon-BLyRNZuL.js} +2 -2
  5. package/dist/frontend/dist/assets/{ChevronLeftIcon-CMXd_XZQ.js.map → ChevronLeftIcon-BLyRNZuL.js.map} +1 -1
  6. package/dist/frontend/dist/assets/{CommandLineIcon-BBerq9Nd.js → CommandLineIcon-Ba4gpk8e.js} +2 -2
  7. package/dist/frontend/dist/assets/{CommandLineIcon-BBerq9Nd.js.map → CommandLineIcon-Ba4gpk8e.js.map} +1 -1
  8. package/dist/frontend/dist/assets/{CookiePreferences-Cbur0STI.js → CookiePreferences-CO_BNHwm.js} +2 -2
  9. package/dist/frontend/dist/assets/{CookiePreferences-Cbur0STI.js.map → CookiePreferences-CO_BNHwm.js.map} +1 -1
  10. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CHDCGQBR-BLaEAPe0.js +2 -0
  11. package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-CW6SKH2U-DIkAGn7X.js.map → PdfAnnotationCanvas.client-CHDCGQBR-BLaEAPe0.js.map} +1 -1
  12. package/dist/frontend/dist/assets/StreamStatusContext-BNiTXRfJ.js +2 -0
  13. package/dist/frontend/dist/assets/{StreamStatusContext-BuPATpTz.js.map → StreamStatusContext-BNiTXRfJ.js.map} +1 -1
  14. package/dist/frontend/dist/assets/ToolbarPanels-DRHyLUHl.js +2 -0
  15. package/dist/frontend/dist/assets/ToolbarPanels-DRHyLUHl.js.map +1 -0
  16. package/dist/frontend/dist/assets/{XMarkIcon-6m9KVFaj.js → XMarkIcon-KMKD47CF.js} +2 -2
  17. package/dist/frontend/dist/assets/{XMarkIcon-6m9KVFaj.js.map → XMarkIcon-KMKD47CF.js.map} +1 -1
  18. package/dist/frontend/dist/assets/{browser-ponyfill-DkbQZCyF.js → browser-ponyfill-D2ngVqWO.js} +2 -2
  19. package/dist/frontend/dist/assets/{browser-ponyfill-DkbQZCyF.js.map → browser-ponyfill-D2ngVqWO.js.map} +1 -1
  20. package/dist/frontend/dist/assets/client-RpFyflU_.js +2 -0
  21. package/dist/frontend/dist/assets/{client-BiL3eI7d.js.map → client-RpFyflU_.js.map} +1 -1
  22. package/dist/frontend/dist/assets/{client-BnL1es01.js → client-bqO7W1Xj.js} +2 -2
  23. package/dist/frontend/dist/assets/{client-BnL1es01.js.map → client-bqO7W1Xj.js.map} +1 -1
  24. package/dist/frontend/dist/assets/{client-DrQUcCJy.js → client-ekxuarKC.js} +2 -2
  25. package/dist/frontend/dist/assets/{client-DrQUcCJy.js.map → client-ekxuarKC.js.map} +1 -1
  26. package/dist/frontend/dist/assets/{client-BPbsU2tc.js → client-xJTgSko3.js} +2 -2
  27. package/dist/frontend/dist/assets/{client-BPbsU2tc.js.map → client-xJTgSko3.js.map} +1 -1
  28. package/dist/frontend/dist/assets/{i18n-BYxb14hm.js → i18n-BbpF47i1.js} +2 -2
  29. package/dist/frontend/dist/assets/{i18n-BYxb14hm.js.map → i18n-BbpF47i1.js.map} +1 -1
  30. package/dist/frontend/dist/assets/{index-CNb3PHS7.css → index-BUe9tsov.css} +1 -1
  31. package/dist/frontend/dist/assets/index-XWcEpo5a.js +159 -0
  32. package/dist/frontend/dist/assets/index-XWcEpo5a.js.map +1 -0
  33. package/dist/frontend/dist/assets/layout-BFanPfv_.js +2 -0
  34. package/dist/frontend/dist/assets/layout-BFanPfv_.js.map +1 -0
  35. package/dist/frontend/dist/assets/layout-BN0UEIdX.js +2 -0
  36. package/dist/frontend/dist/assets/layout-BN0UEIdX.js.map +1 -0
  37. package/dist/frontend/dist/assets/layout-ChyKFPPP.js +2 -0
  38. package/dist/frontend/dist/assets/layout-ChyKFPPP.js.map +1 -0
  39. package/dist/frontend/dist/assets/layout-DmjP6diV.js +2 -0
  40. package/dist/frontend/dist/assets/layout-DmjP6diV.js.map +1 -0
  41. package/dist/frontend/dist/assets/{not-found-CwWw1pZc.js → not-found-BboGygIW.js} +2 -2
  42. package/dist/frontend/dist/assets/{not-found-CwWw1pZc.js.map → not-found-BboGygIW.js.map} +1 -1
  43. package/dist/frontend/dist/assets/page-8F47gNEm.js +2 -0
  44. package/dist/frontend/dist/assets/page-8F47gNEm.js.map +1 -0
  45. package/dist/frontend/dist/assets/page-8x98ZAYe.js +2 -0
  46. package/dist/frontend/dist/assets/{page-iSL5E639.js.map → page-8x98ZAYe.js.map} +1 -1
  47. package/dist/frontend/dist/assets/page-BaqIbrus.js +2 -0
  48. package/dist/frontend/dist/assets/{page-Deep7E5d.js.map → page-BaqIbrus.js.map} +1 -1
  49. package/dist/frontend/dist/assets/page-BfhPRgzq.js +2 -0
  50. package/dist/frontend/dist/assets/{page-ZBwMTeR-.js.map → page-BfhPRgzq.js.map} +1 -1
  51. package/dist/frontend/dist/assets/page-Bht4dePL.js +5 -0
  52. package/dist/frontend/dist/assets/{page-CelRTchO.js.map → page-Bht4dePL.js.map} +1 -1
  53. package/dist/frontend/dist/assets/page-BtqPeWyh.js +2 -0
  54. package/dist/frontend/dist/assets/page-BtqPeWyh.js.map +1 -0
  55. package/dist/frontend/dist/assets/{page-Dv386AZD.js → page-CG7C0ib3.js} +3 -3
  56. package/dist/frontend/dist/assets/{page-Dv386AZD.js.map → page-CG7C0ib3.js.map} +1 -1
  57. package/dist/frontend/dist/assets/page-CJnfSnRg.js +2 -0
  58. package/dist/frontend/dist/assets/page-CJnfSnRg.js.map +1 -0
  59. package/dist/frontend/dist/assets/page-Cct5hwIU.js +8 -0
  60. package/dist/frontend/dist/assets/{page-E99MPOn5.js.map → page-Cct5hwIU.js.map} +1 -1
  61. package/dist/frontend/dist/assets/page-CnJVZMgv.js +2 -0
  62. package/dist/frontend/dist/assets/page-CnJVZMgv.js.map +1 -0
  63. package/dist/frontend/dist/assets/page-CpbZG7nR.js +2 -0
  64. package/dist/frontend/dist/assets/{page-C5bIvv1V.js.map → page-CpbZG7nR.js.map} +1 -1
  65. package/dist/frontend/dist/assets/{page-D_nHe9FT.js → page-CzvERJKF.js} +2 -2
  66. package/dist/frontend/dist/assets/{page-D_nHe9FT.js.map → page-CzvERJKF.js.map} +1 -1
  67. package/dist/frontend/dist/assets/page-DB8grXzl.js +2 -0
  68. package/dist/frontend/dist/assets/{page-Zq6ARIvg.js.map → page-DB8grXzl.js.map} +1 -1
  69. package/dist/frontend/dist/assets/page-DI1MUp4X.js +2 -0
  70. package/dist/frontend/dist/assets/{page-xdXYx3nl.js.map → page-DI1MUp4X.js.map} +1 -1
  71. package/dist/frontend/dist/assets/{page-CslYhbgz.js → page-Dhi8hP-S.js} +2 -2
  72. package/dist/frontend/dist/assets/{page-CslYhbgz.js.map → page-Dhi8hP-S.js.map} +1 -1
  73. package/dist/frontend/dist/assets/{page-BmHLf-7O.js → page-FovvpNWp.js} +2 -2
  74. package/dist/frontend/dist/assets/{page-BmHLf-7O.js.map → page-FovvpNWp.js.map} +1 -1
  75. package/dist/frontend/dist/assets/{page-KtkB4tEv.js → page-T424mvNp.js} +2 -2
  76. package/dist/frontend/dist/assets/{page-KtkB4tEv.js.map → page-T424mvNp.js.map} +1 -1
  77. package/dist/frontend/dist/assets/{page-1BwlyTUj.js → page-knhbwxzQ.js} +2 -2
  78. package/dist/frontend/dist/assets/{page-1BwlyTUj.js.map → page-knhbwxzQ.js.map} +1 -1
  79. package/dist/frontend/dist/assets/privacy-B5TeXaed.js +2 -0
  80. package/dist/frontend/dist/assets/{privacy-DO1oxJpM.js.map → privacy-B5TeXaed.js.map} +1 -1
  81. package/dist/frontend/dist/assets/{query-ATBhtd3K.js → query-B6BuIB0M.js} +3 -3
  82. package/dist/frontend/dist/assets/{query-ATBhtd3K.js.map → query-B6BuIB0M.js.map} +1 -1
  83. package/dist/frontend/dist/assets/{routing-DMdXWYXo.js → routing-By_4TZHr.js} +2 -2
  84. package/dist/frontend/dist/assets/{routing-DMdXWYXo.js.map → routing-By_4TZHr.js.map} +1 -1
  85. package/dist/frontend/dist/assets/{routing-tJ_HbFRP.js → routing-vcvYfuPO.js} +2 -2
  86. package/dist/frontend/dist/assets/{routing-tJ_HbFRP.js.map → routing-vcvYfuPO.js.map} +1 -1
  87. package/dist/frontend/dist/assets/{vendor-EnoIVk-c.js → vendor-DJo4KD8w.js} +2 -2
  88. package/dist/frontend/dist/assets/{vendor-EnoIVk-c.js.map → vendor-DJo4KD8w.js.map} +1 -1
  89. package/dist/frontend/dist/index.html +5 -5
  90. package/dist/frontend/package.json +1 -1
  91. package/package.json +9 -9
  92. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CW6SKH2U-DIkAGn7X.js +0 -2
  93. package/dist/frontend/dist/assets/StreamStatusContext-BuPATpTz.js +0 -2
  94. package/dist/frontend/dist/assets/ToolbarPanels-rN1MIRTV.js +0 -2
  95. package/dist/frontend/dist/assets/ToolbarPanels-rN1MIRTV.js.map +0 -1
  96. package/dist/frontend/dist/assets/client-BiL3eI7d.js +0 -2
  97. package/dist/frontend/dist/assets/en-IUV4ZXKH-BY1RKeLS.js +0 -135
  98. package/dist/frontend/dist/assets/en-IUV4ZXKH-BY1RKeLS.js.map +0 -1
  99. package/dist/frontend/dist/assets/index-DA31r_0s.js +0 -27
  100. package/dist/frontend/dist/assets/index-DA31r_0s.js.map +0 -1
  101. package/dist/frontend/dist/assets/layout-B8IinUdt.js +0 -2
  102. package/dist/frontend/dist/assets/layout-B8IinUdt.js.map +0 -1
  103. package/dist/frontend/dist/assets/layout-BjpW078f.js +0 -2
  104. package/dist/frontend/dist/assets/layout-BjpW078f.js.map +0 -1
  105. package/dist/frontend/dist/assets/layout-CDIjxs5a.js +0 -6
  106. package/dist/frontend/dist/assets/layout-CDIjxs5a.js.map +0 -1
  107. package/dist/frontend/dist/assets/layout-DKm9XdRr.js +0 -2
  108. package/dist/frontend/dist/assets/layout-DKm9XdRr.js.map +0 -1
  109. package/dist/frontend/dist/assets/page-BQ00VxR5.js +0 -2
  110. package/dist/frontend/dist/assets/page-BQ00VxR5.js.map +0 -1
  111. package/dist/frontend/dist/assets/page-C5bIvv1V.js +0 -2
  112. package/dist/frontend/dist/assets/page-CelRTchO.js +0 -5
  113. package/dist/frontend/dist/assets/page-Cf9cnqhC.js +0 -2
  114. package/dist/frontend/dist/assets/page-Cf9cnqhC.js.map +0 -1
  115. package/dist/frontend/dist/assets/page-DEjlNEY0.js +0 -2
  116. package/dist/frontend/dist/assets/page-DEjlNEY0.js.map +0 -1
  117. package/dist/frontend/dist/assets/page-DLtwpo78.js +0 -2
  118. package/dist/frontend/dist/assets/page-DLtwpo78.js.map +0 -1
  119. package/dist/frontend/dist/assets/page-Deep7E5d.js +0 -2
  120. package/dist/frontend/dist/assets/page-E99MPOn5.js +0 -8
  121. package/dist/frontend/dist/assets/page-ZBwMTeR-.js +0 -2
  122. package/dist/frontend/dist/assets/page-Zq6ARIvg.js +0 -2
  123. package/dist/frontend/dist/assets/page-iSL5E639.js +0 -2
  124. package/dist/frontend/dist/assets/page-xdXYx3nl.js +0 -2
  125. package/dist/frontend/dist/assets/privacy-DO1oxJpM.js +0 -2
  126. package/dist/frontend/dist/assets/useAuth-yUx5lBP5.js +0 -2
  127. package/dist/frontend/dist/assets/useAuth-yUx5lBP5.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"query-ATBhtd3K.js","sources":["../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/@tanstack/query-core/build/modern/subscribable.js","../../../../node_modules/@tanstack/query-core/build/modern/timeoutManager.js","../../../../node_modules/@tanstack/query-core/build/modern/utils.js","../../../../node_modules/@tanstack/query-core/build/modern/focusManager.js","../../../../node_modules/@tanstack/query-core/build/modern/thenable.js","../../../../node_modules/@tanstack/query-core/build/modern/notifyManager.js","../../../../node_modules/@tanstack/query-core/build/modern/onlineManager.js","../../../../node_modules/@tanstack/query-core/build/modern/retryer.js","../../../../node_modules/@tanstack/query-core/build/modern/removable.js","../../../../node_modules/@tanstack/query-core/build/modern/query.js","../../../../node_modules/@tanstack/query-core/build/modern/queryObserver.js","../../../../node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","../../../../node_modules/@tanstack/query-core/build/modern/mutation.js","../../../../node_modules/@tanstack/query-core/build/modern/mutationCache.js","../../../../node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../../../../node_modules/@tanstack/query-core/build/modern/queryCache.js","../../../../node_modules/@tanstack/query-core/build/modern/queryClient.js","../../../../node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js","../../../../node_modules/@tanstack/react-query/build/modern/IsRestoringProvider.js","../../../../node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js","../../../../node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js","../../../../node_modules/@tanstack/react-query/build/modern/suspense.js","../../../../node_modules/@tanstack/react-query/build/modern/useBaseQuery.js","../../../../node_modules/@tanstack/react-query/build/modern/useQuery.js","../../../../node_modules/@tanstack/react-query/build/modern/useMutation.js"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","// src/subscribable.ts\nvar Subscribable = class {\n constructor() {\n this.listeners = /* @__PURE__ */ new Set();\n this.subscribe = this.subscribe.bind(this);\n }\n subscribe(listener) {\n this.listeners.add(listener);\n this.onSubscribe();\n return () => {\n this.listeners.delete(listener);\n this.onUnsubscribe();\n };\n }\n hasListeners() {\n return this.listeners.size > 0;\n }\n onSubscribe() {\n }\n onUnsubscribe() {\n }\n};\nexport {\n Subscribable\n};\n//# sourceMappingURL=subscribable.js.map","// src/timeoutManager.ts\nvar defaultTimeoutProvider = {\n // We need the wrapper function syntax below instead of direct references to\n // global setTimeout etc.\n //\n // BAD: `setTimeout: setTimeout`\n // GOOD: `setTimeout: (cb, delay) => setTimeout(cb, delay)`\n //\n // If we use direct references here, then anything that wants to spy on or\n // replace the global setTimeout (like tests) won't work since we'll already\n // have a hard reference to the original implementation at the time when this\n // file was imported.\n setTimeout: (callback, delay) => setTimeout(callback, delay),\n clearTimeout: (timeoutId) => clearTimeout(timeoutId),\n setInterval: (callback, delay) => setInterval(callback, delay),\n clearInterval: (intervalId) => clearInterval(intervalId)\n};\nvar TimeoutManager = class {\n // We cannot have TimeoutManager<T> as we must instantiate it with a concrete\n // type at app boot; and if we leave that type, then any new timer provider\n // would need to support ReturnType<typeof setTimeout>, which is infeasible.\n //\n // We settle for type safety for the TimeoutProvider type, and accept that\n // this class is unsafe internally to allow for extension.\n #provider = defaultTimeoutProvider;\n #providerCalled = false;\n setTimeoutProvider(provider) {\n if (process.env.NODE_ENV !== \"production\") {\n if (this.#providerCalled && provider !== this.#provider) {\n console.error(\n `[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.`,\n { previous: this.#provider, provider }\n );\n }\n }\n this.#provider = provider;\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = false;\n }\n }\n setTimeout(callback, delay) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = true;\n }\n return this.#provider.setTimeout(callback, delay);\n }\n clearTimeout(timeoutId) {\n this.#provider.clearTimeout(timeoutId);\n }\n setInterval(callback, delay) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = true;\n }\n return this.#provider.setInterval(callback, delay);\n }\n clearInterval(intervalId) {\n this.#provider.clearInterval(intervalId);\n }\n};\nvar timeoutManager = new TimeoutManager();\nfunction systemSetTimeoutZero(callback) {\n setTimeout(callback, 0);\n}\nexport {\n TimeoutManager,\n defaultTimeoutProvider,\n systemSetTimeoutZero,\n timeoutManager\n};\n//# sourceMappingURL=timeoutManager.js.map","// src/utils.ts\nimport { timeoutManager } from \"./timeoutManager.js\";\nvar isServer = typeof window === \"undefined\" || \"Deno\" in globalThis;\nfunction noop() {\n}\nfunction functionalUpdate(updater, input) {\n return typeof updater === \"function\" ? updater(input) : updater;\n}\nfunction isValidTimeout(value) {\n return typeof value === \"number\" && value >= 0 && value !== Infinity;\n}\nfunction timeUntilStale(updatedAt, staleTime) {\n return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);\n}\nfunction resolveStaleTime(staleTime, query) {\n return typeof staleTime === \"function\" ? staleTime(query) : staleTime;\n}\nfunction resolveEnabled(enabled, query) {\n return typeof enabled === \"function\" ? enabled(query) : enabled;\n}\nfunction matchQuery(filters, query) {\n const {\n type = \"all\",\n exact,\n fetchStatus,\n predicate,\n queryKey,\n stale\n } = filters;\n if (queryKey) {\n if (exact) {\n if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {\n return false;\n }\n } else if (!partialMatchKey(query.queryKey, queryKey)) {\n return false;\n }\n }\n if (type !== \"all\") {\n const isActive = query.isActive();\n if (type === \"active\" && !isActive) {\n return false;\n }\n if (type === \"inactive\" && isActive) {\n return false;\n }\n }\n if (typeof stale === \"boolean\" && query.isStale() !== stale) {\n return false;\n }\n if (fetchStatus && fetchStatus !== query.state.fetchStatus) {\n return false;\n }\n if (predicate && !predicate(query)) {\n return false;\n }\n return true;\n}\nfunction matchMutation(filters, mutation) {\n const { exact, status, predicate, mutationKey } = filters;\n if (mutationKey) {\n if (!mutation.options.mutationKey) {\n return false;\n }\n if (exact) {\n if (hashKey(mutation.options.mutationKey) !== hashKey(mutationKey)) {\n return false;\n }\n } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {\n return false;\n }\n }\n if (status && mutation.state.status !== status) {\n return false;\n }\n if (predicate && !predicate(mutation)) {\n return false;\n }\n return true;\n}\nfunction hashQueryKeyByOptions(queryKey, options) {\n const hashFn = options?.queryKeyHashFn || hashKey;\n return hashFn(queryKey);\n}\nfunction hashKey(queryKey) {\n return JSON.stringify(\n queryKey,\n (_, val) => isPlainObject(val) ? Object.keys(val).sort().reduce((result, key) => {\n result[key] = val[key];\n return result;\n }, {}) : val\n );\n}\nfunction partialMatchKey(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (a && b && typeof a === \"object\" && typeof b === \"object\") {\n return Object.keys(b).every((key) => partialMatchKey(a[key], b[key]));\n }\n return false;\n}\nvar hasOwn = Object.prototype.hasOwnProperty;\nfunction replaceEqualDeep(a, b, depth = 0) {\n if (a === b) {\n return a;\n }\n if (depth > 500) return b;\n const array = isPlainArray(a) && isPlainArray(b);\n if (!array && !(isPlainObject(a) && isPlainObject(b))) return b;\n const aItems = array ? a : Object.keys(a);\n const aSize = aItems.length;\n const bItems = array ? b : Object.keys(b);\n const bSize = bItems.length;\n const copy = array ? new Array(bSize) : {};\n let equalItems = 0;\n for (let i = 0; i < bSize; i++) {\n const key = array ? i : bItems[i];\n const aItem = a[key];\n const bItem = b[key];\n if (aItem === bItem) {\n copy[key] = aItem;\n if (array ? i < aSize : hasOwn.call(a, key)) equalItems++;\n continue;\n }\n if (aItem === null || bItem === null || typeof aItem !== \"object\" || typeof bItem !== \"object\") {\n copy[key] = bItem;\n continue;\n }\n const v = replaceEqualDeep(aItem, bItem, depth + 1);\n copy[key] = v;\n if (v === aItem) equalItems++;\n }\n return aSize === bSize && equalItems === aSize ? a : copy;\n}\nfunction shallowEqualObjects(a, b) {\n if (!b || Object.keys(a).length !== Object.keys(b).length) {\n return false;\n }\n for (const key in a) {\n if (a[key] !== b[key]) {\n return false;\n }\n }\n return true;\n}\nfunction isPlainArray(value) {\n return Array.isArray(value) && value.length === Object.keys(value).length;\n}\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n const ctor = o.constructor;\n if (ctor === void 0) {\n return true;\n }\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n if (!prot.hasOwnProperty(\"isPrototypeOf\")) {\n return false;\n }\n if (Object.getPrototypeOf(o) !== Object.prototype) {\n return false;\n }\n return true;\n}\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === \"[object Object]\";\n}\nfunction sleep(timeout) {\n return new Promise((resolve) => {\n timeoutManager.setTimeout(resolve, timeout);\n });\n}\nfunction replaceData(prevData, data, options) {\n if (typeof options.structuralSharing === \"function\") {\n return options.structuralSharing(prevData, data);\n } else if (options.structuralSharing !== false) {\n if (process.env.NODE_ENV !== \"production\") {\n try {\n return replaceEqualDeep(prevData, data);\n } catch (error) {\n console.error(\n `Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${options.queryHash}]: ${error}`\n );\n throw error;\n }\n }\n return replaceEqualDeep(prevData, data);\n }\n return data;\n}\nfunction keepPreviousData(previousData) {\n return previousData;\n}\nfunction addToEnd(items, item, max = 0) {\n const newItems = [...items, item];\n return max && newItems.length > max ? newItems.slice(1) : newItems;\n}\nfunction addToStart(items, item, max = 0) {\n const newItems = [item, ...items];\n return max && newItems.length > max ? newItems.slice(0, -1) : newItems;\n}\nvar skipToken = /* @__PURE__ */ Symbol();\nfunction ensureQueryFn(options, fetchOptions) {\n if (process.env.NODE_ENV !== \"production\") {\n if (options.queryFn === skipToken) {\n console.error(\n `Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${options.queryHash}'`\n );\n }\n }\n if (!options.queryFn && fetchOptions?.initialPromise) {\n return () => fetchOptions.initialPromise;\n }\n if (!options.queryFn || options.queryFn === skipToken) {\n return () => Promise.reject(new Error(`Missing queryFn: '${options.queryHash}'`));\n }\n return options.queryFn;\n}\nfunction shouldThrowError(throwOnError, params) {\n if (typeof throwOnError === \"function\") {\n return throwOnError(...params);\n }\n return !!throwOnError;\n}\nfunction addConsumeAwareSignal(object, getSignal, onCancelled) {\n let consumed = false;\n let signal;\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n signal ??= getSignal();\n if (consumed) {\n return signal;\n }\n consumed = true;\n if (signal.aborted) {\n onCancelled();\n } else {\n signal.addEventListener(\"abort\", onCancelled, { once: true });\n }\n return signal;\n }\n });\n return object;\n}\nexport {\n addConsumeAwareSignal,\n addToEnd,\n addToStart,\n ensureQueryFn,\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n isPlainArray,\n isPlainObject,\n isServer,\n isValidTimeout,\n keepPreviousData,\n matchMutation,\n matchQuery,\n noop,\n partialMatchKey,\n replaceData,\n replaceEqualDeep,\n resolveEnabled,\n resolveStaleTime,\n shallowEqualObjects,\n shouldThrowError,\n skipToken,\n sleep,\n timeUntilStale\n};\n//# sourceMappingURL=utils.js.map","// src/focusManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar FocusManager = class extends Subscribable {\n #focused;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onFocus) => {\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus();\n window.addEventListener(\"visibilitychange\", listener, false);\n return () => {\n window.removeEventListener(\"visibilitychange\", listener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup((focused) => {\n if (typeof focused === \"boolean\") {\n this.setFocused(focused);\n } else {\n this.onFocus();\n }\n });\n }\n setFocused(focused) {\n const changed = this.#focused !== focused;\n if (changed) {\n this.#focused = focused;\n this.onFocus();\n }\n }\n onFocus() {\n const isFocused = this.isFocused();\n this.listeners.forEach((listener) => {\n listener(isFocused);\n });\n }\n isFocused() {\n if (typeof this.#focused === \"boolean\") {\n return this.#focused;\n }\n return globalThis.document?.visibilityState !== \"hidden\";\n }\n};\nvar focusManager = new FocusManager();\nexport {\n FocusManager,\n focusManager\n};\n//# sourceMappingURL=focusManager.js.map","// src/thenable.ts\nimport { noop } from \"./utils.js\";\nfunction pendingThenable() {\n let resolve;\n let reject;\n const thenable = new Promise((_resolve, _reject) => {\n resolve = _resolve;\n reject = _reject;\n });\n thenable.status = \"pending\";\n thenable.catch(() => {\n });\n function finalize(data) {\n Object.assign(thenable, data);\n delete thenable.resolve;\n delete thenable.reject;\n }\n thenable.resolve = (value) => {\n finalize({\n status: \"fulfilled\",\n value\n });\n resolve(value);\n };\n thenable.reject = (reason) => {\n finalize({\n status: \"rejected\",\n reason\n });\n reject(reason);\n };\n return thenable;\n}\nfunction tryResolveSync(promise) {\n let data;\n promise.then((result) => {\n data = result;\n return result;\n }, noop)?.catch(noop);\n if (data !== void 0) {\n return { data };\n }\n return void 0;\n}\nexport {\n pendingThenable,\n tryResolveSync\n};\n//# sourceMappingURL=thenable.js.map","// src/notifyManager.ts\nimport { systemSetTimeoutZero } from \"./timeoutManager.js\";\nvar defaultScheduler = systemSetTimeoutZero;\nfunction createNotifyManager() {\n let queue = [];\n let transactions = 0;\n let notifyFn = (callback) => {\n callback();\n };\n let batchNotifyFn = (callback) => {\n callback();\n };\n let scheduleFn = defaultScheduler;\n const schedule = (callback) => {\n if (transactions) {\n queue.push(callback);\n } else {\n scheduleFn(() => {\n notifyFn(callback);\n });\n }\n };\n const flush = () => {\n const originalQueue = queue;\n queue = [];\n if (originalQueue.length) {\n scheduleFn(() => {\n batchNotifyFn(() => {\n originalQueue.forEach((callback) => {\n notifyFn(callback);\n });\n });\n });\n }\n };\n return {\n batch: (callback) => {\n let result;\n transactions++;\n try {\n result = callback();\n } finally {\n transactions--;\n if (!transactions) {\n flush();\n }\n }\n return result;\n },\n /**\n * All calls to the wrapped function will be batched.\n */\n batchCalls: (callback) => {\n return (...args) => {\n schedule(() => {\n callback(...args);\n });\n };\n },\n schedule,\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n setNotifyFunction: (fn) => {\n notifyFn = fn;\n },\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n setBatchNotifyFunction: (fn) => {\n batchNotifyFn = fn;\n },\n setScheduler: (fn) => {\n scheduleFn = fn;\n }\n };\n}\nvar notifyManager = createNotifyManager();\nexport {\n createNotifyManager,\n defaultScheduler,\n notifyManager\n};\n//# sourceMappingURL=notifyManager.js.map","// src/onlineManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar OnlineManager = class extends Subscribable {\n #online = true;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onOnline) => {\n if (!isServer && window.addEventListener) {\n const onlineListener = () => onOnline(true);\n const offlineListener = () => onOnline(false);\n window.addEventListener(\"online\", onlineListener, false);\n window.addEventListener(\"offline\", offlineListener, false);\n return () => {\n window.removeEventListener(\"online\", onlineListener);\n window.removeEventListener(\"offline\", offlineListener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup(this.setOnline.bind(this));\n }\n setOnline(online) {\n const changed = this.#online !== online;\n if (changed) {\n this.#online = online;\n this.listeners.forEach((listener) => {\n listener(online);\n });\n }\n }\n isOnline() {\n return this.#online;\n }\n};\nvar onlineManager = new OnlineManager();\nexport {\n OnlineManager,\n onlineManager\n};\n//# sourceMappingURL=onlineManager.js.map","// src/retryer.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { pendingThenable } from \"./thenable.js\";\nimport { isServer, sleep } from \"./utils.js\";\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1e3 * 2 ** failureCount, 3e4);\n}\nfunction canFetch(networkMode) {\n return (networkMode ?? \"online\") === \"online\" ? onlineManager.isOnline() : true;\n}\nvar CancelledError = class extends Error {\n constructor(options) {\n super(\"CancelledError\");\n this.revert = options?.revert;\n this.silent = options?.silent;\n }\n};\nfunction isCancelledError(value) {\n return value instanceof CancelledError;\n}\nfunction createRetryer(config) {\n let isRetryCancelled = false;\n let failureCount = 0;\n let continueFn;\n const thenable = pendingThenable();\n const isResolved = () => thenable.status !== \"pending\";\n const cancel = (cancelOptions) => {\n if (!isResolved()) {\n const error = new CancelledError(cancelOptions);\n reject(error);\n config.onCancel?.(error);\n }\n };\n const cancelRetry = () => {\n isRetryCancelled = true;\n };\n const continueRetry = () => {\n isRetryCancelled = false;\n };\n const canContinue = () => focusManager.isFocused() && (config.networkMode === \"always\" || onlineManager.isOnline()) && config.canRun();\n const canStart = () => canFetch(config.networkMode) && config.canRun();\n const resolve = (value) => {\n if (!isResolved()) {\n continueFn?.();\n thenable.resolve(value);\n }\n };\n const reject = (value) => {\n if (!isResolved()) {\n continueFn?.();\n thenable.reject(value);\n }\n };\n const pause = () => {\n return new Promise((continueResolve) => {\n continueFn = (value) => {\n if (isResolved() || canContinue()) {\n continueResolve(value);\n }\n };\n config.onPause?.();\n }).then(() => {\n continueFn = void 0;\n if (!isResolved()) {\n config.onContinue?.();\n }\n });\n };\n const run = () => {\n if (isResolved()) {\n return;\n }\n let promiseOrValue;\n const initialPromise = failureCount === 0 ? config.initialPromise : void 0;\n try {\n promiseOrValue = initialPromise ?? config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n }\n Promise.resolve(promiseOrValue).then(resolve).catch((error) => {\n if (isResolved()) {\n return;\n }\n const retry = config.retry ?? (isServer ? 0 : 3);\n const retryDelay = config.retryDelay ?? defaultRetryDelay;\n const delay = typeof retryDelay === \"function\" ? retryDelay(failureCount, error) : retryDelay;\n const shouldRetry = retry === true || typeof retry === \"number\" && failureCount < retry || typeof retry === \"function\" && retry(failureCount, error);\n if (isRetryCancelled || !shouldRetry) {\n reject(error);\n return;\n }\n failureCount++;\n config.onFail?.(failureCount, error);\n sleep(delay).then(() => {\n return canContinue() ? void 0 : pause();\n }).then(() => {\n if (isRetryCancelled) {\n reject(error);\n } else {\n run();\n }\n });\n });\n };\n return {\n promise: thenable,\n status: () => thenable.status,\n cancel,\n continue: () => {\n continueFn?.();\n return thenable;\n },\n cancelRetry,\n continueRetry,\n canStart,\n start: () => {\n if (canStart()) {\n run();\n } else {\n pause().then(run);\n }\n return thenable;\n }\n };\n}\nexport {\n CancelledError,\n canFetch,\n createRetryer,\n isCancelledError\n};\n//# sourceMappingURL=retryer.js.map","// src/removable.ts\nimport { timeoutManager } from \"./timeoutManager.js\";\nimport { isServer, isValidTimeout } from \"./utils.js\";\nvar Removable = class {\n #gcTimeout;\n destroy() {\n this.clearGcTimeout();\n }\n scheduleGc() {\n this.clearGcTimeout();\n if (isValidTimeout(this.gcTime)) {\n this.#gcTimeout = timeoutManager.setTimeout(() => {\n this.optionalRemove();\n }, this.gcTime);\n }\n }\n updateGcTime(newGcTime) {\n this.gcTime = Math.max(\n this.gcTime || 0,\n newGcTime ?? (isServer ? Infinity : 5 * 60 * 1e3)\n );\n }\n clearGcTimeout() {\n if (this.#gcTimeout) {\n timeoutManager.clearTimeout(this.#gcTimeout);\n this.#gcTimeout = void 0;\n }\n }\n};\nexport {\n Removable\n};\n//# sourceMappingURL=removable.js.map","// src/query.ts\nimport {\n ensureQueryFn,\n noop,\n replaceData,\n resolveEnabled,\n resolveStaleTime,\n skipToken,\n timeUntilStale\n} from \"./utils.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { CancelledError, canFetch, createRetryer } from \"./retryer.js\";\nimport { Removable } from \"./removable.js\";\nvar Query = class extends Removable {\n #initialState;\n #revertState;\n #cache;\n #client;\n #retryer;\n #defaultOptions;\n #abortSignalConsumed;\n constructor(config) {\n super();\n this.#abortSignalConsumed = false;\n this.#defaultOptions = config.defaultOptions;\n this.setOptions(config.options);\n this.observers = [];\n this.#client = config.client;\n this.#cache = this.#client.getQueryCache();\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.#initialState = getDefaultState(this.options);\n this.state = config.state ?? this.#initialState;\n this.scheduleGc();\n }\n get meta() {\n return this.options.meta;\n }\n get promise() {\n return this.#retryer?.promise;\n }\n setOptions(options) {\n this.options = { ...this.#defaultOptions, ...options };\n this.updateGcTime(this.options.gcTime);\n if (this.state && this.state.data === void 0) {\n const defaultState = getDefaultState(this.options);\n if (defaultState.data !== void 0) {\n this.setState(\n successState(defaultState.data, defaultState.dataUpdatedAt)\n );\n this.#initialState = defaultState;\n }\n }\n }\n optionalRemove() {\n if (!this.observers.length && this.state.fetchStatus === \"idle\") {\n this.#cache.remove(this);\n }\n }\n setData(newData, options) {\n const data = replaceData(this.state.data, newData, this.options);\n this.#dispatch({\n data,\n type: \"success\",\n dataUpdatedAt: options?.updatedAt,\n manual: options?.manual\n });\n return data;\n }\n setState(state, setStateOptions) {\n this.#dispatch({ type: \"setState\", state, setStateOptions });\n }\n cancel(options) {\n const promise = this.#retryer?.promise;\n this.#retryer?.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n }\n destroy() {\n super.destroy();\n this.cancel({ silent: true });\n }\n reset() {\n this.destroy();\n this.setState(this.#initialState);\n }\n isActive() {\n return this.observers.some(\n (observer) => resolveEnabled(observer.options.enabled, this) !== false\n );\n }\n isDisabled() {\n if (this.getObserversCount() > 0) {\n return !this.isActive();\n }\n return this.options.queryFn === skipToken || this.state.dataUpdateCount + this.state.errorUpdateCount === 0;\n }\n isStatic() {\n if (this.getObserversCount() > 0) {\n return this.observers.some(\n (observer) => resolveStaleTime(observer.options.staleTime, this) === \"static\"\n );\n }\n return false;\n }\n isStale() {\n if (this.getObserversCount() > 0) {\n return this.observers.some(\n (observer) => observer.getCurrentResult().isStale\n );\n }\n return this.state.data === void 0 || this.state.isInvalidated;\n }\n isStaleByTime(staleTime = 0) {\n if (this.state.data === void 0) {\n return true;\n }\n if (staleTime === \"static\") {\n return false;\n }\n if (this.state.isInvalidated) {\n return true;\n }\n return !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n }\n onFocus() {\n const observer = this.observers.find((x) => x.shouldFetchOnWindowFocus());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n onOnline() {\n const observer = this.observers.find((x) => x.shouldFetchOnReconnect());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n addObserver(observer) {\n if (!this.observers.includes(observer)) {\n this.observers.push(observer);\n this.clearGcTimeout();\n this.#cache.notify({ type: \"observerAdded\", query: this, observer });\n }\n }\n removeObserver(observer) {\n if (this.observers.includes(observer)) {\n this.observers = this.observers.filter((x) => x !== observer);\n if (!this.observers.length) {\n if (this.#retryer) {\n if (this.#abortSignalConsumed) {\n this.#retryer.cancel({ revert: true });\n } else {\n this.#retryer.cancelRetry();\n }\n }\n this.scheduleGc();\n }\n this.#cache.notify({ type: \"observerRemoved\", query: this, observer });\n }\n }\n getObserversCount() {\n return this.observers.length;\n }\n invalidate() {\n if (!this.state.isInvalidated) {\n this.#dispatch({ type: \"invalidate\" });\n }\n }\n async fetch(options, fetchOptions) {\n if (this.state.fetchStatus !== \"idle\" && // If the promise in the retryer is already rejected, we have to definitely\n // re-start the fetch; there is a chance that the query is still in a\n // pending state when that happens\n this.#retryer?.status() !== \"rejected\") {\n if (this.state.data !== void 0 && fetchOptions?.cancelRefetch) {\n this.cancel({ silent: true });\n } else if (this.#retryer) {\n this.#retryer.continueRetry();\n return this.#retryer.promise;\n }\n }\n if (options) {\n this.setOptions(options);\n }\n if (!this.options.queryFn) {\n const observer = this.observers.find((x) => x.options.queryFn);\n if (observer) {\n this.setOptions(observer.options);\n }\n }\n if (process.env.NODE_ENV !== \"production\") {\n if (!Array.isArray(this.options.queryKey)) {\n console.error(\n `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']`\n );\n }\n }\n const abortController = new AbortController();\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n this.#abortSignalConsumed = true;\n return abortController.signal;\n }\n });\n };\n const fetchFn = () => {\n const queryFn = ensureQueryFn(this.options, fetchOptions);\n const createQueryFnContext = () => {\n const queryFnContext2 = {\n client: this.#client,\n queryKey: this.queryKey,\n meta: this.meta\n };\n addSignalProperty(queryFnContext2);\n return queryFnContext2;\n };\n const queryFnContext = createQueryFnContext();\n this.#abortSignalConsumed = false;\n if (this.options.persister) {\n return this.options.persister(\n queryFn,\n queryFnContext,\n this\n );\n }\n return queryFn(queryFnContext);\n };\n const createFetchContext = () => {\n const context2 = {\n fetchOptions,\n options: this.options,\n queryKey: this.queryKey,\n client: this.#client,\n state: this.state,\n fetchFn\n };\n addSignalProperty(context2);\n return context2;\n };\n const context = createFetchContext();\n this.options.behavior?.onFetch(context, this);\n this.#revertState = this.state;\n if (this.state.fetchStatus === \"idle\" || this.state.fetchMeta !== context.fetchOptions?.meta) {\n this.#dispatch({ type: \"fetch\", meta: context.fetchOptions?.meta });\n }\n this.#retryer = createRetryer({\n initialPromise: fetchOptions?.initialPromise,\n fn: context.fetchFn,\n onCancel: (error) => {\n if (error instanceof CancelledError && error.revert) {\n this.setState({\n ...this.#revertState,\n fetchStatus: \"idle\"\n });\n }\n abortController.abort();\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue: () => {\n this.#dispatch({ type: \"continue\" });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay,\n networkMode: context.options.networkMode,\n canRun: () => true\n });\n try {\n const data = await this.#retryer.start();\n if (data === void 0) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(\n `Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`\n );\n }\n throw new Error(`${this.queryHash} data is undefined`);\n }\n this.setData(data);\n this.#cache.config.onSuccess?.(data, this);\n this.#cache.config.onSettled?.(\n data,\n this.state.error,\n this\n );\n return data;\n } catch (error) {\n if (error instanceof CancelledError) {\n if (error.silent) {\n return this.#retryer.promise;\n } else if (error.revert) {\n if (this.state.data === void 0) {\n throw error;\n }\n return this.state.data;\n }\n }\n this.#dispatch({\n type: \"error\",\n error\n });\n this.#cache.config.onError?.(\n error,\n this\n );\n this.#cache.config.onSettled?.(\n this.state.data,\n error,\n this\n );\n throw error;\n } finally {\n this.scheduleGc();\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n fetchFailureCount: action.failureCount,\n fetchFailureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n fetchStatus: \"paused\"\n };\n case \"continue\":\n return {\n ...state,\n fetchStatus: \"fetching\"\n };\n case \"fetch\":\n return {\n ...state,\n ...fetchState(state.data, this.options),\n fetchMeta: action.meta ?? null\n };\n case \"success\":\n const newState = {\n ...state,\n ...successState(action.data, action.dataUpdatedAt),\n dataUpdateCount: state.dataUpdateCount + 1,\n ...!action.manual && {\n fetchStatus: \"idle\",\n fetchFailureCount: 0,\n fetchFailureReason: null\n }\n };\n this.#revertState = action.manual ? newState : void 0;\n return newState;\n case \"error\":\n const error = action.error;\n return {\n ...state,\n error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n fetchFailureReason: error,\n fetchStatus: \"idle\",\n status: \"error\",\n // flag existing data as invalidated if we get a background error\n // note that \"no data\" always means stale so we can set unconditionally here\n isInvalidated: true\n };\n case \"invalidate\":\n return {\n ...state,\n isInvalidated: true\n };\n case \"setState\":\n return {\n ...state,\n ...action.state\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.observers.forEach((observer) => {\n observer.onQueryUpdate();\n });\n this.#cache.notify({ query: this, type: \"updated\", action });\n });\n }\n};\nfunction fetchState(data, options) {\n return {\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchStatus: canFetch(options.networkMode) ? \"fetching\" : \"paused\",\n ...data === void 0 && {\n error: null,\n status: \"pending\"\n }\n };\n}\nfunction successState(data, dataUpdatedAt) {\n return {\n data,\n dataUpdatedAt: dataUpdatedAt ?? Date.now(),\n error: null,\n isInvalidated: false,\n status: \"success\"\n };\n}\nfunction getDefaultState(options) {\n const data = typeof options.initialData === \"function\" ? options.initialData() : options.initialData;\n const hasData = data !== void 0;\n const initialDataUpdatedAt = hasData ? typeof options.initialDataUpdatedAt === \"function\" ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n return {\n data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt ?? Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchMeta: null,\n isInvalidated: false,\n status: hasData ? \"success\" : \"pending\",\n fetchStatus: \"idle\"\n };\n}\nexport {\n Query,\n fetchState\n};\n//# sourceMappingURL=query.js.map","// src/queryObserver.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { fetchState } from \"./query.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { pendingThenable } from \"./thenable.js\";\nimport {\n isServer,\n isValidTimeout,\n noop,\n replaceData,\n resolveEnabled,\n resolveStaleTime,\n shallowEqualObjects,\n timeUntilStale\n} from \"./utils.js\";\nimport { timeoutManager } from \"./timeoutManager.js\";\nvar QueryObserver = class extends Subscribable {\n constructor(client, options) {\n super();\n this.options = options;\n this.#client = client;\n this.#selectError = null;\n this.#currentThenable = pendingThenable();\n this.bindMethods();\n this.setOptions(options);\n }\n #client;\n #currentQuery = void 0;\n #currentQueryInitialState = void 0;\n #currentResult = void 0;\n #currentResultState;\n #currentResultOptions;\n #currentThenable;\n #selectError;\n #selectFn;\n #selectResult;\n // This property keeps track of the last query with defined data.\n // It will be used to pass the previous data and query to the placeholder function between renders.\n #lastQueryWithDefinedData;\n #staleTimeoutId;\n #refetchIntervalId;\n #currentRefetchInterval;\n #trackedProps = /* @__PURE__ */ new Set();\n bindMethods() {\n this.refetch = this.refetch.bind(this);\n }\n onSubscribe() {\n if (this.listeners.size === 1) {\n this.#currentQuery.addObserver(this);\n if (shouldFetchOnMount(this.#currentQuery, this.options)) {\n this.#executeFetch();\n } else {\n this.updateResult();\n }\n this.#updateTimers();\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.destroy();\n }\n }\n shouldFetchOnReconnect() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnReconnect\n );\n }\n shouldFetchOnWindowFocus() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnWindowFocus\n );\n }\n destroy() {\n this.listeners = /* @__PURE__ */ new Set();\n this.#clearStaleTimeout();\n this.#clearRefetchInterval();\n this.#currentQuery.removeObserver(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n const prevQuery = this.#currentQuery;\n this.options = this.#client.defaultQueryOptions(options);\n if (this.options.enabled !== void 0 && typeof this.options.enabled !== \"boolean\" && typeof this.options.enabled !== \"function\" && typeof resolveEnabled(this.options.enabled, this.#currentQuery) !== \"boolean\") {\n throw new Error(\n \"Expected enabled to be a boolean or a callback that returns a boolean\"\n );\n }\n this.#updateQuery();\n this.#currentQuery.setOptions(this.options);\n if (prevOptions._defaulted && !shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getQueryCache().notify({\n type: \"observerOptionsUpdated\",\n query: this.#currentQuery,\n observer: this\n });\n }\n const mounted = this.hasListeners();\n if (mounted && shouldFetchOptionally(\n this.#currentQuery,\n prevQuery,\n this.options,\n prevOptions\n )) {\n this.#executeFetch();\n }\n this.updateResult();\n if (mounted && (this.#currentQuery !== prevQuery || resolveEnabled(this.options.enabled, this.#currentQuery) !== resolveEnabled(prevOptions.enabled, this.#currentQuery) || resolveStaleTime(this.options.staleTime, this.#currentQuery) !== resolveStaleTime(prevOptions.staleTime, this.#currentQuery))) {\n this.#updateStaleTimeout();\n }\n const nextRefetchInterval = this.#computeRefetchInterval();\n if (mounted && (this.#currentQuery !== prevQuery || resolveEnabled(this.options.enabled, this.#currentQuery) !== resolveEnabled(prevOptions.enabled, this.#currentQuery) || nextRefetchInterval !== this.#currentRefetchInterval)) {\n this.#updateRefetchInterval(nextRefetchInterval);\n }\n }\n getOptimisticResult(options) {\n const query = this.#client.getQueryCache().build(this.#client, options);\n const result = this.createResult(query, options);\n if (shouldAssignObserverCurrentProperties(this, result)) {\n this.#currentResult = result;\n this.#currentResultOptions = this.options;\n this.#currentResultState = this.#currentQuery.state;\n }\n return result;\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n trackResult(result, onPropTracked) {\n return new Proxy(result, {\n get: (target, key) => {\n this.trackProp(key);\n onPropTracked?.(key);\n if (key === \"promise\") {\n this.trackProp(\"data\");\n if (!this.options.experimental_prefetchInRender && this.#currentThenable.status === \"pending\") {\n this.#currentThenable.reject(\n new Error(\n \"experimental_prefetchInRender feature flag is not enabled\"\n )\n );\n }\n }\n return Reflect.get(target, key);\n }\n });\n }\n trackProp(key) {\n this.#trackedProps.add(key);\n }\n getCurrentQuery() {\n return this.#currentQuery;\n }\n refetch({ ...options } = {}) {\n return this.fetch({\n ...options\n });\n }\n fetchOptimistic(options) {\n const defaultedOptions = this.#client.defaultQueryOptions(options);\n const query = this.#client.getQueryCache().build(this.#client, defaultedOptions);\n return query.fetch().then(() => this.createResult(query, defaultedOptions));\n }\n fetch(fetchOptions) {\n return this.#executeFetch({\n ...fetchOptions,\n cancelRefetch: fetchOptions.cancelRefetch ?? true\n }).then(() => {\n this.updateResult();\n return this.#currentResult;\n });\n }\n #executeFetch(fetchOptions) {\n this.#updateQuery();\n let promise = this.#currentQuery.fetch(\n this.options,\n fetchOptions\n );\n if (!fetchOptions?.throwOnError) {\n promise = promise.catch(noop);\n }\n return promise;\n }\n #updateStaleTimeout() {\n this.#clearStaleTimeout();\n const staleTime = resolveStaleTime(\n this.options.staleTime,\n this.#currentQuery\n );\n if (isServer || this.#currentResult.isStale || !isValidTimeout(staleTime)) {\n return;\n }\n const time = timeUntilStale(this.#currentResult.dataUpdatedAt, staleTime);\n const timeout = time + 1;\n this.#staleTimeoutId = timeoutManager.setTimeout(() => {\n if (!this.#currentResult.isStale) {\n this.updateResult();\n }\n }, timeout);\n }\n #computeRefetchInterval() {\n return (typeof this.options.refetchInterval === \"function\" ? this.options.refetchInterval(this.#currentQuery) : this.options.refetchInterval) ?? false;\n }\n #updateRefetchInterval(nextInterval) {\n this.#clearRefetchInterval();\n this.#currentRefetchInterval = nextInterval;\n if (isServer || resolveEnabled(this.options.enabled, this.#currentQuery) === false || !isValidTimeout(this.#currentRefetchInterval) || this.#currentRefetchInterval === 0) {\n return;\n }\n this.#refetchIntervalId = timeoutManager.setInterval(() => {\n if (this.options.refetchIntervalInBackground || focusManager.isFocused()) {\n this.#executeFetch();\n }\n }, this.#currentRefetchInterval);\n }\n #updateTimers() {\n this.#updateStaleTimeout();\n this.#updateRefetchInterval(this.#computeRefetchInterval());\n }\n #clearStaleTimeout() {\n if (this.#staleTimeoutId) {\n timeoutManager.clearTimeout(this.#staleTimeoutId);\n this.#staleTimeoutId = void 0;\n }\n }\n #clearRefetchInterval() {\n if (this.#refetchIntervalId) {\n timeoutManager.clearInterval(this.#refetchIntervalId);\n this.#refetchIntervalId = void 0;\n }\n }\n createResult(query, options) {\n const prevQuery = this.#currentQuery;\n const prevOptions = this.options;\n const prevResult = this.#currentResult;\n const prevResultState = this.#currentResultState;\n const prevResultOptions = this.#currentResultOptions;\n const queryChange = query !== prevQuery;\n const queryInitialState = queryChange ? query.state : this.#currentQueryInitialState;\n const { state } = query;\n let newState = { ...state };\n let isPlaceholderData = false;\n let data;\n if (options._optimisticResults) {\n const mounted = this.hasListeners();\n const fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n const fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n if (fetchOnMount || fetchOptionally) {\n newState = {\n ...newState,\n ...fetchState(state.data, query.options)\n };\n }\n if (options._optimisticResults === \"isRestoring\") {\n newState.fetchStatus = \"idle\";\n }\n }\n let { error, errorUpdatedAt, status } = newState;\n data = newState.data;\n let skipSelect = false;\n if (options.placeholderData !== void 0 && data === void 0 && status === \"pending\") {\n let placeholderData;\n if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {\n placeholderData = prevResult.data;\n skipSelect = true;\n } else {\n placeholderData = typeof options.placeholderData === \"function\" ? options.placeholderData(\n this.#lastQueryWithDefinedData?.state.data,\n this.#lastQueryWithDefinedData\n ) : options.placeholderData;\n }\n if (placeholderData !== void 0) {\n status = \"success\";\n data = replaceData(\n prevResult?.data,\n placeholderData,\n options\n );\n isPlaceholderData = true;\n }\n }\n if (options.select && data !== void 0 && !skipSelect) {\n if (prevResult && data === prevResultState?.data && options.select === this.#selectFn) {\n data = this.#selectResult;\n } else {\n try {\n this.#selectFn = options.select;\n data = options.select(data);\n data = replaceData(prevResult?.data, data, options);\n this.#selectResult = data;\n this.#selectError = null;\n } catch (selectError) {\n this.#selectError = selectError;\n }\n }\n }\n if (this.#selectError) {\n error = this.#selectError;\n data = this.#selectResult;\n errorUpdatedAt = Date.now();\n status = \"error\";\n }\n const isFetching = newState.fetchStatus === \"fetching\";\n const isPending = status === \"pending\";\n const isError = status === \"error\";\n const isLoading = isPending && isFetching;\n const hasData = data !== void 0;\n const result = {\n status,\n fetchStatus: newState.fetchStatus,\n isPending,\n isSuccess: status === \"success\",\n isError,\n isInitialLoading: isLoading,\n isLoading,\n data,\n dataUpdatedAt: newState.dataUpdatedAt,\n error,\n errorUpdatedAt,\n failureCount: newState.fetchFailureCount,\n failureReason: newState.fetchFailureReason,\n errorUpdateCount: newState.errorUpdateCount,\n isFetched: newState.dataUpdateCount > 0 || newState.errorUpdateCount > 0,\n isFetchedAfterMount: newState.dataUpdateCount > queryInitialState.dataUpdateCount || newState.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching,\n isRefetching: isFetching && !isPending,\n isLoadingError: isError && !hasData,\n isPaused: newState.fetchStatus === \"paused\",\n isPlaceholderData,\n isRefetchError: isError && hasData,\n isStale: isStale(query, options),\n refetch: this.refetch,\n promise: this.#currentThenable,\n isEnabled: resolveEnabled(options.enabled, query) !== false\n };\n const nextResult = result;\n if (this.options.experimental_prefetchInRender) {\n const hasResultData = nextResult.data !== void 0;\n const isErrorWithoutData = nextResult.status === \"error\" && !hasResultData;\n const finalizeThenableIfPossible = (thenable) => {\n if (isErrorWithoutData) {\n thenable.reject(nextResult.error);\n } else if (hasResultData) {\n thenable.resolve(nextResult.data);\n }\n };\n const recreateThenable = () => {\n const pending = this.#currentThenable = nextResult.promise = pendingThenable();\n finalizeThenableIfPossible(pending);\n };\n const prevThenable = this.#currentThenable;\n switch (prevThenable.status) {\n case \"pending\":\n if (query.queryHash === prevQuery.queryHash) {\n finalizeThenableIfPossible(prevThenable);\n }\n break;\n case \"fulfilled\":\n if (isErrorWithoutData || nextResult.data !== prevThenable.value) {\n recreateThenable();\n }\n break;\n case \"rejected\":\n if (!isErrorWithoutData || nextResult.error !== prevThenable.reason) {\n recreateThenable();\n }\n break;\n }\n }\n return nextResult;\n }\n updateResult() {\n const prevResult = this.#currentResult;\n const nextResult = this.createResult(this.#currentQuery, this.options);\n this.#currentResultState = this.#currentQuery.state;\n this.#currentResultOptions = this.options;\n if (this.#currentResultState.data !== void 0) {\n this.#lastQueryWithDefinedData = this.#currentQuery;\n }\n if (shallowEqualObjects(nextResult, prevResult)) {\n return;\n }\n this.#currentResult = nextResult;\n const shouldNotifyListeners = () => {\n if (!prevResult) {\n return true;\n }\n const { notifyOnChangeProps } = this.options;\n const notifyOnChangePropsValue = typeof notifyOnChangeProps === \"function\" ? notifyOnChangeProps() : notifyOnChangeProps;\n if (notifyOnChangePropsValue === \"all\" || !notifyOnChangePropsValue && !this.#trackedProps.size) {\n return true;\n }\n const includedProps = new Set(\n notifyOnChangePropsValue ?? this.#trackedProps\n );\n if (this.options.throwOnError) {\n includedProps.add(\"error\");\n }\n return Object.keys(this.#currentResult).some((key) => {\n const typedKey = key;\n const changed = this.#currentResult[typedKey] !== prevResult[typedKey];\n return changed && includedProps.has(typedKey);\n });\n };\n this.#notify({ listeners: shouldNotifyListeners() });\n }\n #updateQuery() {\n const query = this.#client.getQueryCache().build(this.#client, this.options);\n if (query === this.#currentQuery) {\n return;\n }\n const prevQuery = this.#currentQuery;\n this.#currentQuery = query;\n this.#currentQueryInitialState = query.state;\n if (this.hasListeners()) {\n prevQuery?.removeObserver(this);\n query.addObserver(this);\n }\n }\n onQueryUpdate() {\n this.updateResult();\n if (this.hasListeners()) {\n this.#updateTimers();\n }\n }\n #notify(notifyOptions) {\n notifyManager.batch(() => {\n if (notifyOptions.listeners) {\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n }\n this.#client.getQueryCache().notify({\n query: this.#currentQuery,\n type: \"observerResultsUpdated\"\n });\n });\n }\n};\nfunction shouldLoadOnMount(query, options) {\n return resolveEnabled(options.enabled, query) !== false && query.state.data === void 0 && !(query.state.status === \"error\" && options.retryOnMount === false);\n}\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || query.state.data !== void 0 && shouldFetchOn(query, options, options.refetchOnMount);\n}\nfunction shouldFetchOn(query, options, field) {\n if (resolveEnabled(options.enabled, query) !== false && resolveStaleTime(options.staleTime, query) !== \"static\") {\n const value = typeof field === \"function\" ? field(query) : field;\n return value === \"always\" || value !== false && isStale(query, options);\n }\n return false;\n}\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return (query !== prevQuery || resolveEnabled(prevOptions.enabled, query) === false) && (!options.suspense || query.state.status !== \"error\") && isStale(query, options);\n}\nfunction isStale(query, options) {\n return resolveEnabled(options.enabled, query) !== false && query.isStaleByTime(resolveStaleTime(options.staleTime, query));\n}\nfunction shouldAssignObserverCurrentProperties(observer, optimisticResult) {\n if (!shallowEqualObjects(observer.getCurrentResult(), optimisticResult)) {\n return true;\n }\n return false;\n}\nexport {\n QueryObserver\n};\n//# sourceMappingURL=queryObserver.js.map","// src/infiniteQueryBehavior.ts\nimport {\n addConsumeAwareSignal,\n addToEnd,\n addToStart,\n ensureQueryFn\n} from \"./utils.js\";\nfunction infiniteQueryBehavior(pages) {\n return {\n onFetch: (context, query) => {\n const options = context.options;\n const direction = context.fetchOptions?.meta?.fetchMore?.direction;\n const oldPages = context.state.data?.pages || [];\n const oldPageParams = context.state.data?.pageParams || [];\n let result = { pages: [], pageParams: [] };\n let currentPage = 0;\n const fetchFn = async () => {\n let cancelled = false;\n const addSignalProperty = (object) => {\n addConsumeAwareSignal(\n object,\n () => context.signal,\n () => cancelled = true\n );\n };\n const queryFn = ensureQueryFn(context.options, context.fetchOptions);\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (param == null && data.pages.length) {\n return Promise.resolve(data);\n }\n const createQueryFnContext = () => {\n const queryFnContext2 = {\n client: context.client,\n queryKey: context.queryKey,\n pageParam: param,\n direction: previous ? \"backward\" : \"forward\",\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext2);\n return queryFnContext2;\n };\n const queryFnContext = createQueryFnContext();\n const page = await queryFn(queryFnContext);\n const { maxPages } = context.options;\n const addTo = previous ? addToStart : addToEnd;\n return {\n pages: addTo(data.pages, page, maxPages),\n pageParams: addTo(data.pageParams, param, maxPages)\n };\n };\n if (direction && oldPages.length) {\n const previous = direction === \"backward\";\n const pageParamFn = previous ? getPreviousPageParam : getNextPageParam;\n const oldData = {\n pages: oldPages,\n pageParams: oldPageParams\n };\n const param = pageParamFn(options, oldData);\n result = await fetchPage(oldData, param, previous);\n } else {\n const remainingPages = pages ?? oldPages.length;\n do {\n const param = currentPage === 0 ? oldPageParams[0] ?? options.initialPageParam : getNextPageParam(options, result);\n if (currentPage > 0 && param == null) {\n break;\n }\n result = await fetchPage(result, param);\n currentPage++;\n } while (currentPage < remainingPages);\n }\n return result;\n };\n if (context.options.persister) {\n context.fetchFn = () => {\n return context.options.persister?.(\n fetchFn,\n {\n client: context.client,\n queryKey: context.queryKey,\n meta: context.options.meta,\n signal: context.signal\n },\n query\n );\n };\n } else {\n context.fetchFn = fetchFn;\n }\n }\n };\n}\nfunction getNextPageParam(options, { pages, pageParams }) {\n const lastIndex = pages.length - 1;\n return pages.length > 0 ? options.getNextPageParam(\n pages[lastIndex],\n pages,\n pageParams[lastIndex],\n pageParams\n ) : void 0;\n}\nfunction getPreviousPageParam(options, { pages, pageParams }) {\n return pages.length > 0 ? options.getPreviousPageParam?.(pages[0], pages, pageParams[0], pageParams) : void 0;\n}\nfunction hasNextPage(options, data) {\n if (!data) return false;\n return getNextPageParam(options, data) != null;\n}\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam) return false;\n return getPreviousPageParam(options, data) != null;\n}\nexport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n};\n//# sourceMappingURL=infiniteQueryBehavior.js.map","// src/mutation.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Removable } from \"./removable.js\";\nimport { createRetryer } from \"./retryer.js\";\nvar Mutation = class extends Removable {\n #client;\n #observers;\n #mutationCache;\n #retryer;\n constructor(config) {\n super();\n this.#client = config.client;\n this.mutationId = config.mutationId;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.setOptions(config.options);\n this.scheduleGc();\n }\n setOptions(options) {\n this.options = options;\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#mutationCache.notify({\n type: \"observerAdded\",\n mutation: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n this.scheduleGc();\n this.#mutationCache.notify({\n type: \"observerRemoved\",\n mutation: this,\n observer\n });\n }\n optionalRemove() {\n if (!this.#observers.length) {\n if (this.state.status === \"pending\") {\n this.scheduleGc();\n } else {\n this.#mutationCache.remove(this);\n }\n }\n }\n continue() {\n return this.#retryer?.continue() ?? // continuing a mutation assumes that variables are set, mutation must have been dehydrated before\n this.execute(this.state.variables);\n }\n async execute(variables) {\n const onContinue = () => {\n this.#dispatch({ type: \"continue\" });\n };\n const mutationFnContext = {\n client: this.#client,\n meta: this.options.meta,\n mutationKey: this.options.mutationKey\n };\n this.#retryer = createRetryer({\n fn: () => {\n if (!this.options.mutationFn) {\n return Promise.reject(new Error(\"No mutationFn found\"));\n }\n return this.options.mutationFn(variables, mutationFnContext);\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue,\n retry: this.options.retry ?? 0,\n retryDelay: this.options.retryDelay,\n networkMode: this.options.networkMode,\n canRun: () => this.#mutationCache.canRun(this)\n });\n const restored = this.state.status === \"pending\";\n const isPaused = !this.#retryer.canStart();\n try {\n if (restored) {\n onContinue();\n } else {\n this.#dispatch({ type: \"pending\", variables, isPaused });\n if (this.#mutationCache.config.onMutate) {\n await this.#mutationCache.config.onMutate(\n variables,\n this,\n mutationFnContext\n );\n }\n const context = await this.options.onMutate?.(\n variables,\n mutationFnContext\n );\n if (context !== this.state.context) {\n this.#dispatch({\n type: \"pending\",\n context,\n variables,\n isPaused\n });\n }\n }\n const data = await this.#retryer.start();\n await this.#mutationCache.config.onSuccess?.(\n data,\n variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSuccess?.(\n data,\n variables,\n this.state.context,\n mutationFnContext\n );\n await this.#mutationCache.config.onSettled?.(\n data,\n null,\n this.state.variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSettled?.(\n data,\n null,\n variables,\n this.state.context,\n mutationFnContext\n );\n this.#dispatch({ type: \"success\", data });\n return data;\n } catch (error) {\n try {\n await this.#mutationCache.config.onError?.(\n error,\n variables,\n this.state.context,\n this,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n await this.options.onError?.(\n error,\n variables,\n this.state.context,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n await this.#mutationCache.config.onSettled?.(\n void 0,\n error,\n this.state.variables,\n this.state.context,\n this,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n await this.options.onSettled?.(\n void 0,\n error,\n variables,\n this.state.context,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n this.#dispatch({ type: \"error\", error });\n throw error;\n } finally {\n this.#mutationCache.runNext(this);\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n failureCount: action.failureCount,\n failureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n isPaused: true\n };\n case \"continue\":\n return {\n ...state,\n isPaused: false\n };\n case \"pending\":\n return {\n ...state,\n context: action.context,\n data: void 0,\n failureCount: 0,\n failureReason: null,\n error: null,\n isPaused: action.isPaused,\n status: \"pending\",\n variables: action.variables,\n submittedAt: Date.now()\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n failureCount: 0,\n failureReason: null,\n error: null,\n status: \"success\",\n isPaused: false\n };\n case \"error\":\n return {\n ...state,\n data: void 0,\n error: action.error,\n failureCount: state.failureCount + 1,\n failureReason: action.error,\n isPaused: false,\n status: \"error\"\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onMutationUpdate(action);\n });\n this.#mutationCache.notify({\n mutation: this,\n type: \"updated\",\n action\n });\n });\n }\n};\nfunction getDefaultState() {\n return {\n context: void 0,\n data: void 0,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: \"idle\",\n variables: void 0,\n submittedAt: 0\n };\n}\nexport {\n Mutation,\n getDefaultState\n};\n//# sourceMappingURL=mutation.js.map","// src/mutationCache.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Mutation } from \"./mutation.js\";\nimport { matchMutation, noop } from \"./utils.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar MutationCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = /* @__PURE__ */ new Set();\n this.#scopes = /* @__PURE__ */ new Map();\n this.#mutationId = 0;\n }\n #mutations;\n #scopes;\n #mutationId;\n build(client, options, state) {\n const mutation = new Mutation({\n client,\n mutationCache: this,\n mutationId: ++this.#mutationId,\n options: client.defaultMutationOptions(options),\n state\n });\n this.add(mutation);\n return mutation;\n }\n add(mutation) {\n this.#mutations.add(mutation);\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const scopedMutations = this.#scopes.get(scope);\n if (scopedMutations) {\n scopedMutations.push(mutation);\n } else {\n this.#scopes.set(scope, [mutation]);\n }\n }\n this.notify({ type: \"added\", mutation });\n }\n remove(mutation) {\n if (this.#mutations.delete(mutation)) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const scopedMutations = this.#scopes.get(scope);\n if (scopedMutations) {\n if (scopedMutations.length > 1) {\n const index = scopedMutations.indexOf(mutation);\n if (index !== -1) {\n scopedMutations.splice(index, 1);\n }\n } else if (scopedMutations[0] === mutation) {\n this.#scopes.delete(scope);\n }\n }\n }\n }\n this.notify({ type: \"removed\", mutation });\n }\n canRun(mutation) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const mutationsWithSameScope = this.#scopes.get(scope);\n const firstPendingMutation = mutationsWithSameScope?.find(\n (m) => m.state.status === \"pending\"\n );\n return !firstPendingMutation || firstPendingMutation === mutation;\n } else {\n return true;\n }\n }\n runNext(mutation) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const foundMutation = this.#scopes.get(scope)?.find((m) => m !== mutation && m.state.isPaused);\n return foundMutation?.continue() ?? Promise.resolve();\n } else {\n return Promise.resolve();\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.#mutations.forEach((mutation) => {\n this.notify({ type: \"removed\", mutation });\n });\n this.#mutations.clear();\n this.#scopes.clear();\n });\n }\n getAll() {\n return Array.from(this.#mutations);\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (mutation) => matchMutation(defaultedFilters, mutation)\n );\n }\n findAll(filters = {}) {\n return this.getAll().filter((mutation) => matchMutation(filters, mutation));\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n resumePausedMutations() {\n const pausedMutations = this.getAll().filter((x) => x.state.isPaused);\n return notifyManager.batch(\n () => Promise.all(\n pausedMutations.map((mutation) => mutation.continue().catch(noop))\n )\n );\n }\n};\nfunction scopeFor(mutation) {\n return mutation.options.scope?.id;\n}\nexport {\n MutationCache\n};\n//# sourceMappingURL=mutationCache.js.map","// src/mutationObserver.ts\nimport { getDefaultState } from \"./mutation.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { hashKey, shallowEqualObjects } from \"./utils.js\";\nvar MutationObserver = class extends Subscribable {\n #client;\n #currentResult = void 0;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\n bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n this.options = this.#client.defaultMutationOptions(options);\n if (!shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getMutationCache().notify({\n type: \"observerOptionsUpdated\",\n mutation: this.#currentMutation,\n observer: this\n });\n }\n if (prevOptions?.mutationKey && this.options.mutationKey && hashKey(prevOptions.mutationKey) !== hashKey(this.options.mutationKey)) {\n this.reset();\n } else if (this.#currentMutation?.state.status === \"pending\") {\n this.#currentMutation.setOptions(this.options);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#currentMutation?.removeObserver(this);\n }\n }\n onMutationUpdate(action) {\n this.#updateResult();\n this.#notify(action);\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n reset() {\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = void 0;\n this.#updateResult();\n this.#notify();\n }\n mutate(variables, options) {\n this.#mutateOptions = options;\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = this.#client.getMutationCache().build(this.#client, this.options);\n this.#currentMutation.addObserver(this);\n return this.#currentMutation.execute(variables);\n }\n #updateResult() {\n const state = this.#currentMutation?.state ?? getDefaultState();\n this.#currentResult = {\n ...state,\n isPending: state.status === \"pending\",\n isSuccess: state.status === \"success\",\n isError: state.status === \"error\",\n isIdle: state.status === \"idle\",\n mutate: this.mutate,\n reset: this.reset\n };\n }\n #notify(action) {\n notifyManager.batch(() => {\n if (this.#mutateOptions && this.hasListeners()) {\n const variables = this.#currentResult.variables;\n const onMutateResult = this.#currentResult.context;\n const context = {\n client: this.#client,\n meta: this.options.meta,\n mutationKey: this.options.mutationKey\n };\n if (action?.type === \"success\") {\n try {\n this.#mutateOptions.onSuccess?.(\n action.data,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n this.#mutateOptions.onSettled?.(\n action.data,\n null,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n } else if (action?.type === \"error\") {\n try {\n this.#mutateOptions.onError?.(\n action.error,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n this.#mutateOptions.onSettled?.(\n void 0,\n action.error,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n }\n }\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n });\n }\n};\nexport {\n MutationObserver\n};\n//# sourceMappingURL=mutationObserver.js.map","// src/queryCache.ts\nimport { hashQueryKeyByOptions, matchQuery } from \"./utils.js\";\nimport { Query } from \"./query.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar QueryCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = /* @__PURE__ */ new Map();\n }\n #queries;\n build(client, options, state) {\n const queryKey = options.queryKey;\n const queryHash = options.queryHash ?? hashQueryKeyByOptions(queryKey, options);\n let query = this.get(queryHash);\n if (!query) {\n query = new Query({\n client,\n queryKey,\n queryHash,\n options: client.defaultQueryOptions(options),\n state,\n defaultOptions: client.getQueryDefaults(queryKey)\n });\n this.add(query);\n }\n return query;\n }\n add(query) {\n if (!this.#queries.has(query.queryHash)) {\n this.#queries.set(query.queryHash, query);\n this.notify({\n type: \"added\",\n query\n });\n }\n }\n remove(query) {\n const queryInMap = this.#queries.get(query.queryHash);\n if (queryInMap) {\n query.destroy();\n if (queryInMap === query) {\n this.#queries.delete(query.queryHash);\n }\n this.notify({ type: \"removed\", query });\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n this.remove(query);\n });\n });\n }\n get(queryHash) {\n return this.#queries.get(queryHash);\n }\n getAll() {\n return [...this.#queries.values()];\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (query) => matchQuery(defaultedFilters, query)\n );\n }\n findAll(filters = {}) {\n const queries = this.getAll();\n return Object.keys(filters).length > 0 ? queries.filter((query) => matchQuery(filters, query)) : queries;\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n onFocus() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onFocus();\n });\n });\n }\n onOnline() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onOnline();\n });\n });\n }\n};\nexport {\n QueryCache\n};\n//# sourceMappingURL=queryCache.js.map","// src/queryClient.ts\nimport {\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n noop,\n partialMatchKey,\n resolveStaleTime,\n skipToken\n} from \"./utils.js\";\nimport { QueryCache } from \"./queryCache.js\";\nimport { MutationCache } from \"./mutationCache.js\";\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { infiniteQueryBehavior } from \"./infiniteQueryBehavior.js\";\nvar QueryClient = class {\n #queryCache;\n #mutationCache;\n #defaultOptions;\n #queryDefaults;\n #mutationDefaults;\n #mountCount;\n #unsubscribeFocus;\n #unsubscribeOnline;\n constructor(config = {}) {\n this.#queryCache = config.queryCache || new QueryCache();\n this.#mutationCache = config.mutationCache || new MutationCache();\n this.#defaultOptions = config.defaultOptions || {};\n this.#queryDefaults = /* @__PURE__ */ new Map();\n this.#mutationDefaults = /* @__PURE__ */ new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1) return;\n this.#unsubscribeFocus = focusManager.subscribe(async (focused) => {\n if (focused) {\n await this.resumePausedMutations();\n this.#queryCache.onFocus();\n }\n });\n this.#unsubscribeOnline = onlineManager.subscribe(async (online) => {\n if (online) {\n await this.resumePausedMutations();\n this.#queryCache.onOnline();\n }\n });\n }\n unmount() {\n this.#mountCount--;\n if (this.#mountCount !== 0) return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = void 0;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = void 0;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({ ...filters, fetchStatus: \"fetching\" }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({ ...filters, status: \"pending\" }).length;\n }\n /**\n * Imperative (non-reactive) way to retrieve data for a QueryKey.\n * Should only be used in callbacks or functions where reading the latest data is necessary, e.g. for optimistic updates.\n *\n * Hint: Do not use this function inside a component, because it won't receive updates.\n * Use `useQuery` to create a `QueryObserver` that subscribes to changes.\n */\n getQueryData(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(options.queryHash)?.state.data;\n }\n ensureQueryData(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n const query = this.#queryCache.build(this, defaultedOptions);\n const cachedData = query.state.data;\n if (cachedData === void 0) {\n return this.fetchQuery(options);\n }\n if (options.revalidateIfStale && query.isStaleByTime(resolveStaleTime(defaultedOptions.staleTime, query))) {\n void this.prefetchQuery(defaultedOptions);\n }\n return Promise.resolve(cachedData);\n }\n getQueriesData(filters) {\n return this.#queryCache.findAll(filters).map(({ queryKey, state }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const defaultedOptions = this.defaultQueryOptions({ queryKey });\n const query = this.#queryCache.get(\n defaultedOptions.queryHash\n );\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (data === void 0) {\n return void 0;\n }\n return this.#queryCache.build(this, defaultedOptions).setData(data, { ...options, manual: true });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(\n () => this.#queryCache.findAll(filters).map(({ queryKey }) => [\n queryKey,\n this.setQueryData(queryKey, updater, options)\n ])\n );\n }\n getQueryState(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(\n options.queryHash\n )?.state;\n }\n removeQueries(filters) {\n const queryCache = this.#queryCache;\n notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n queryCache.remove(query);\n });\n });\n }\n resetQueries(filters, options) {\n const queryCache = this.#queryCache;\n return notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n query.reset();\n });\n return this.refetchQueries(\n {\n type: \"active\",\n ...filters\n },\n options\n );\n });\n }\n cancelQueries(filters, cancelOptions = {}) {\n const defaultedCancelOptions = { revert: true, ...cancelOptions };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).map((query) => query.cancel(defaultedCancelOptions))\n );\n return Promise.all(promises).then(noop).catch(noop);\n }\n invalidateQueries(filters, options = {}) {\n return notifyManager.batch(() => {\n this.#queryCache.findAll(filters).forEach((query) => {\n query.invalidate();\n });\n if (filters?.refetchType === \"none\") {\n return Promise.resolve();\n }\n return this.refetchQueries(\n {\n ...filters,\n type: filters?.refetchType ?? filters?.type ?? \"active\"\n },\n options\n );\n });\n }\n refetchQueries(filters, options = {}) {\n const fetchOptions = {\n ...options,\n cancelRefetch: options.cancelRefetch ?? true\n };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).filter((query) => !query.isDisabled() && !query.isStatic()).map((query) => {\n let promise = query.fetch(void 0, fetchOptions);\n if (!fetchOptions.throwOnError) {\n promise = promise.catch(noop);\n }\n return query.state.fetchStatus === \"paused\" ? Promise.resolve() : promise;\n })\n );\n return Promise.all(promises).then(noop);\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n if (defaultedOptions.retry === void 0) {\n defaultedOptions.retry = false;\n }\n const query = this.#queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(\n resolveStaleTime(defaultedOptions.staleTime, query)\n ) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n }\n prefetchQuery(options) {\n return this.fetchQuery(options).then(noop).catch(noop);\n }\n fetchInfiniteQuery(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.fetchQuery(options);\n }\n prefetchInfiniteQuery(options) {\n return this.fetchInfiniteQuery(options).then(noop).catch(noop);\n }\n ensureInfiniteQueryData(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.ensureQueryData(options);\n }\n resumePausedMutations() {\n if (onlineManager.isOnline()) {\n return this.#mutationCache.resumePausedMutations();\n }\n return Promise.resolve();\n }\n getQueryCache() {\n return this.#queryCache;\n }\n getMutationCache() {\n return this.#mutationCache;\n }\n getDefaultOptions() {\n return this.#defaultOptions;\n }\n setDefaultOptions(options) {\n this.#defaultOptions = options;\n }\n setQueryDefaults(queryKey, options) {\n this.#queryDefaults.set(hashKey(queryKey), {\n queryKey,\n defaultOptions: options\n });\n }\n getQueryDefaults(queryKey) {\n const defaults = [...this.#queryDefaults.values()];\n const result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(queryKey, queryDefault.queryKey)) {\n Object.assign(result, queryDefault.defaultOptions);\n }\n });\n return result;\n }\n setMutationDefaults(mutationKey, options) {\n this.#mutationDefaults.set(hashKey(mutationKey), {\n mutationKey,\n defaultOptions: options\n });\n }\n getMutationDefaults(mutationKey) {\n const defaults = [...this.#mutationDefaults.values()];\n const result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(mutationKey, queryDefault.mutationKey)) {\n Object.assign(result, queryDefault.defaultOptions);\n }\n });\n return result;\n }\n defaultQueryOptions(options) {\n if (options._defaulted) {\n return options;\n }\n const defaultedOptions = {\n ...this.#defaultOptions.queries,\n ...this.getQueryDefaults(options.queryKey),\n ...options,\n _defaulted: true\n };\n if (!defaultedOptions.queryHash) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(\n defaultedOptions.queryKey,\n defaultedOptions\n );\n }\n if (defaultedOptions.refetchOnReconnect === void 0) {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== \"always\";\n }\n if (defaultedOptions.throwOnError === void 0) {\n defaultedOptions.throwOnError = !!defaultedOptions.suspense;\n }\n if (!defaultedOptions.networkMode && defaultedOptions.persister) {\n defaultedOptions.networkMode = \"offlineFirst\";\n }\n if (defaultedOptions.queryFn === skipToken) {\n defaultedOptions.enabled = false;\n }\n return defaultedOptions;\n }\n defaultMutationOptions(options) {\n if (options?._defaulted) {\n return options;\n }\n return {\n ...this.#defaultOptions.mutations,\n ...options?.mutationKey && this.getMutationDefaults(options.mutationKey),\n ...options,\n _defaulted: true\n };\n }\n clear() {\n this.#queryCache.clear();\n this.#mutationCache.clear();\n }\n};\nexport {\n QueryClient\n};\n//# sourceMappingURL=queryClient.js.map","\"use client\";\n\n// src/QueryClientProvider.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar QueryClientContext = React.createContext(\n void 0\n);\nvar useQueryClient = (queryClient) => {\n const client = React.useContext(QueryClientContext);\n if (queryClient) {\n return queryClient;\n }\n if (!client) {\n throw new Error(\"No QueryClient set, use QueryClientProvider to set one\");\n }\n return client;\n};\nvar QueryClientProvider = ({\n client,\n children\n}) => {\n React.useEffect(() => {\n client.mount();\n return () => {\n client.unmount();\n };\n }, [client]);\n return /* @__PURE__ */ jsx(QueryClientContext.Provider, { value: client, children });\n};\nexport {\n QueryClientContext,\n QueryClientProvider,\n useQueryClient\n};\n//# sourceMappingURL=QueryClientProvider.js.map","\"use client\";\n\n// src/IsRestoringProvider.ts\nimport * as React from \"react\";\nvar IsRestoringContext = React.createContext(false);\nvar useIsRestoring = () => React.useContext(IsRestoringContext);\nvar IsRestoringProvider = IsRestoringContext.Provider;\nexport {\n IsRestoringProvider,\n useIsRestoring\n};\n//# sourceMappingURL=IsRestoringProvider.js.map","\"use client\";\n\n// src/QueryErrorResetBoundary.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createValue() {\n let isReset = false;\n return {\n clearReset: () => {\n isReset = false;\n },\n reset: () => {\n isReset = true;\n },\n isReset: () => {\n return isReset;\n }\n };\n}\nvar QueryErrorResetBoundaryContext = React.createContext(createValue());\nvar useQueryErrorResetBoundary = () => React.useContext(QueryErrorResetBoundaryContext);\nvar QueryErrorResetBoundary = ({\n children\n}) => {\n const [value] = React.useState(() => createValue());\n return /* @__PURE__ */ jsx(QueryErrorResetBoundaryContext.Provider, { value, children: typeof children === \"function\" ? children(value) : children });\n};\nexport {\n QueryErrorResetBoundary,\n useQueryErrorResetBoundary\n};\n//# sourceMappingURL=QueryErrorResetBoundary.js.map","\"use client\";\n\n// src/errorBoundaryUtils.ts\nimport * as React from \"react\";\nimport { shouldThrowError } from \"@tanstack/query-core\";\nvar ensurePreventErrorBoundaryRetry = (options, errorResetBoundary, query) => {\n const throwOnError = query?.state.error && typeof options.throwOnError === \"function\" ? shouldThrowError(options.throwOnError, [query.state.error, query]) : options.throwOnError;\n if (options.suspense || options.experimental_prefetchInRender || throwOnError) {\n if (!errorResetBoundary.isReset()) {\n options.retryOnMount = false;\n }\n }\n};\nvar useClearResetErrorBoundary = (errorResetBoundary) => {\n React.useEffect(() => {\n errorResetBoundary.clearReset();\n }, [errorResetBoundary]);\n};\nvar getHasError = ({\n result,\n errorResetBoundary,\n throwOnError,\n query,\n suspense\n}) => {\n return result.isError && !errorResetBoundary.isReset() && !result.isFetching && query && (suspense && result.data === void 0 || shouldThrowError(throwOnError, [result.error, query]));\n};\nexport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n};\n//# sourceMappingURL=errorBoundaryUtils.js.map","// src/suspense.ts\nvar defaultThrowOnError = (_error, query) => query.state.data === void 0;\nvar ensureSuspenseTimers = (defaultedOptions) => {\n if (defaultedOptions.suspense) {\n const MIN_SUSPENSE_TIME_MS = 1e3;\n const clamp = (value) => value === \"static\" ? value : Math.max(value ?? MIN_SUSPENSE_TIME_MS, MIN_SUSPENSE_TIME_MS);\n const originalStaleTime = defaultedOptions.staleTime;\n defaultedOptions.staleTime = typeof originalStaleTime === \"function\" ? (...args) => clamp(originalStaleTime(...args)) : clamp(originalStaleTime);\n if (typeof defaultedOptions.gcTime === \"number\") {\n defaultedOptions.gcTime = Math.max(\n defaultedOptions.gcTime,\n MIN_SUSPENSE_TIME_MS\n );\n }\n }\n};\nvar willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;\nvar shouldSuspend = (defaultedOptions, result) => defaultedOptions?.suspense && result.isPending;\nvar fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).catch(() => {\n errorResetBoundary.clearReset();\n});\nexport {\n defaultThrowOnError,\n ensureSuspenseTimers,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n};\n//# sourceMappingURL=suspense.js.map","\"use client\";\n\n// src/useBaseQuery.ts\nimport * as React from \"react\";\nimport { isServer, noop, notifyManager } from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { useQueryErrorResetBoundary } from \"./QueryErrorResetBoundary.js\";\nimport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n} from \"./errorBoundaryUtils.js\";\nimport { useIsRestoring } from \"./IsRestoringProvider.js\";\nimport {\n ensureSuspenseTimers,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n} from \"./suspense.js\";\nfunction useBaseQuery(options, Observer, queryClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof options !== \"object\" || Array.isArray(options)) {\n throw new Error(\n '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'\n );\n }\n }\n const isRestoring = useIsRestoring();\n const errorResetBoundary = useQueryErrorResetBoundary();\n const client = useQueryClient(queryClient);\n const defaultedOptions = client.defaultQueryOptions(options);\n client.getDefaultOptions().queries?._experimental_beforeQuery?.(\n defaultedOptions\n );\n const query = client.getQueryCache().get(defaultedOptions.queryHash);\n if (process.env.NODE_ENV !== \"production\") {\n if (!defaultedOptions.queryFn) {\n console.error(\n `[${defaultedOptions.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`\n );\n }\n }\n defaultedOptions._optimisticResults = isRestoring ? \"isRestoring\" : \"optimistic\";\n ensureSuspenseTimers(defaultedOptions);\n ensurePreventErrorBoundaryRetry(defaultedOptions, errorResetBoundary, query);\n useClearResetErrorBoundary(errorResetBoundary);\n const isNewCacheEntry = !client.getQueryCache().get(defaultedOptions.queryHash);\n const [observer] = React.useState(\n () => new Observer(\n client,\n defaultedOptions\n )\n );\n const result = observer.getOptimisticResult(defaultedOptions);\n const shouldSubscribe = !isRestoring && options.subscribed !== false;\n React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => {\n const unsubscribe = shouldSubscribe ? observer.subscribe(notifyManager.batchCalls(onStoreChange)) : noop;\n observer.updateResult();\n return unsubscribe;\n },\n [observer, shouldSubscribe]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n React.useEffect(() => {\n observer.setOptions(defaultedOptions);\n }, [defaultedOptions, observer]);\n if (shouldSuspend(defaultedOptions, result)) {\n throw fetchOptimistic(defaultedOptions, observer, errorResetBoundary);\n }\n if (getHasError({\n result,\n errorResetBoundary,\n throwOnError: defaultedOptions.throwOnError,\n query,\n suspense: defaultedOptions.suspense\n })) {\n throw result.error;\n }\n ;\n client.getDefaultOptions().queries?._experimental_afterQuery?.(\n defaultedOptions,\n result\n );\n if (defaultedOptions.experimental_prefetchInRender && !isServer && willFetch(result, isRestoring)) {\n const promise = isNewCacheEntry ? (\n // Fetch immediately on render in order to ensure `.promise` is resolved even if the component is unmounted\n fetchOptimistic(defaultedOptions, observer, errorResetBoundary)\n ) : (\n // subscribe to the \"cache promise\" so that we can finalize the currentThenable once data comes in\n query?.promise\n );\n promise?.catch(noop).finally(() => {\n observer.updateResult();\n });\n }\n return !defaultedOptions.notifyOnChangeProps ? observer.trackResult(result) : result;\n}\nexport {\n useBaseQuery\n};\n//# sourceMappingURL=useBaseQuery.js.map","\"use client\";\n\n// src/useQuery.ts\nimport { QueryObserver } from \"@tanstack/query-core\";\nimport { useBaseQuery } from \"./useBaseQuery.js\";\nfunction useQuery(options, queryClient) {\n return useBaseQuery(options, QueryObserver, queryClient);\n}\nexport {\n useQuery\n};\n//# sourceMappingURL=useQuery.js.map","\"use client\";\n\n// src/useMutation.ts\nimport * as React from \"react\";\nimport {\n MutationObserver,\n noop,\n notifyManager,\n shouldThrowError\n} from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nfunction useMutation(options, queryClient) {\n const client = useQueryClient(queryClient);\n const [observer] = React.useState(\n () => new MutationObserver(\n client,\n options\n )\n );\n React.useEffect(() => {\n observer.setOptions(options);\n }, [observer, options]);\n const result = React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => observer.subscribe(notifyManager.batchCalls(onStoreChange)),\n [observer]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n const mutate = React.useCallback(\n (variables, mutateOptions) => {\n observer.mutate(variables, mutateOptions).catch(noop);\n },\n [observer]\n );\n if (result.error && shouldThrowError(observer.options.throwOnError, [result.error])) {\n throw result.error;\n }\n return { ...result, mutate, mutateAsync: result.mutate };\n}\nexport {\n useMutation\n};\n//# sourceMappingURL=useMutation.js.map"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","jsxRuntimeModule","require$$0","Subscribable","listener","defaultTimeoutProvider","callback","delay","timeoutId","intervalId","TimeoutManager","_a","__privateAdd","_provider","_providerCalled","provider","__privateSet","__privateGet","timeoutManager","systemSetTimeoutZero","isServer","noop","functionalUpdate","updater","input","isValidTimeout","value","timeUntilStale","updatedAt","staleTime","resolveStaleTime","query","resolveEnabled","enabled","matchQuery","filters","exact","fetchStatus","predicate","queryKey","stale","hashQueryKeyByOptions","partialMatchKey","isActive","matchMutation","mutation","status","mutationKey","hashKey","options","_","val","isPlainObject","result","a","b","hasOwn","replaceEqualDeep","depth","array","isPlainArray","aSize","bItems","bSize","copy","equalItems","i","aItem","bItem","v","shallowEqualObjects","o","hasObjectPrototype","ctor","prot","sleep","timeout","resolve","replaceData","prevData","data","addToEnd","items","item","max","newItems","addToStart","skipToken","ensureQueryFn","fetchOptions","shouldThrowError","throwOnError","params","addConsumeAwareSignal","object","getSignal","onCancelled","consumed","signal","FocusManager","_focused","_cleanup","_setup","onFocus","setup","focused","isFocused","focusManager","pendingThenable","reject","thenable","_resolve","_reject","finalize","reason","defaultScheduler","createNotifyManager","queue","transactions","notifyFn","batchNotifyFn","scheduleFn","schedule","flush","originalQueue","args","fn","notifyManager","OnlineManager","_online","onOnline","onlineListener","offlineListener","online","onlineManager","defaultRetryDelay","failureCount","canFetch","networkMode","CancelledError","createRetryer","isRetryCancelled","continueFn","isResolved","cancel","cancelOptions","error","cancelRetry","continueRetry","canContinue","canStart","pause","continueResolve","run","promiseOrValue","initialPromise","retry","retryDelay","shouldRetry","Removable","_gcTimeout","newGcTime","Query","_Query_instances","_initialState","_revertState","_cache","_client","_retryer","_defaultOptions","_abortSignalConsumed","getDefaultState","defaultState","successState","newData","__privateMethod","dispatch_fn","state","setStateOptions","promise","_b","observer","x","abortController","addSignalProperty","fetchFn","queryFn","queryFnContext","queryFnContext2","context","context2","_c","_d","_f","_e","_h","_g","_j","_i","_l","_k","action","reducer","fetchState","newState","dataUpdatedAt","hasData","initialDataUpdatedAt","QueryObserver","client","_QueryObserver_instances","_currentQuery","_currentQueryInitialState","_currentResult","_currentResultState","_currentResultOptions","_currentThenable","_selectError","_selectFn","_selectResult","_lastQueryWithDefinedData","_staleTimeoutId","_refetchIntervalId","_currentRefetchInterval","_trackedProps","shouldFetchOnMount","executeFetch_fn","updateTimers_fn","shouldFetchOn","clearStaleTimeout_fn","clearRefetchInterval_fn","prevOptions","prevQuery","updateQuery_fn","mounted","shouldFetchOptionally","updateStaleTimeout_fn","nextRefetchInterval","computeRefetchInterval_fn","updateRefetchInterval_fn","shouldAssignObserverCurrentProperties","onPropTracked","target","defaultedOptions","prevResult","prevResultState","prevResultOptions","queryInitialState","isPlaceholderData","fetchOnMount","fetchOptionally","errorUpdatedAt","skipSelect","placeholderData","selectError","isFetching","isPending","isError","isLoading","nextResult","isStale","hasResultData","isErrorWithoutData","finalizeThenableIfPossible","recreateThenable","pending","prevThenable","shouldNotifyListeners","notifyOnChangeProps","notifyOnChangePropsValue","includedProps","typedKey","notify_fn","nextInterval","notifyOptions","shouldLoadOnMount","field","optimisticResult","infiniteQueryBehavior","pages","direction","oldPages","oldPageParams","currentPage","cancelled","fetchPage","param","previous","page","maxPages","addTo","pageParamFn","getPreviousPageParam","getNextPageParam","oldData","remainingPages","pageParams","lastIndex","Mutation","_Mutation_instances","_observers","_mutationCache","variables","onContinue","mutationFnContext","restored","isPaused","e","_n","_m","_p","_o","_r","_q","MutationCache","_mutations","_scopes","_mutationId","__privateWrapper","scope","scopeFor","scopedMutations","index","mutationsWithSameScope","firstPendingMutation","m","foundMutation","defaultedFilters","event","pausedMutations","MutationObserver","_MutationObserver_instances","_currentMutation","_mutateOptions","updateResult_fn","onMutateResult","QueryCache","_queries","queryHash","queryInMap","queries","QueryClient","_queryCache","_queryDefaults","_mutationDefaults","_mountCount","_unsubscribeFocus","_unsubscribeOnline","cachedData","queryCache","defaultedCancelOptions","promises","defaults","queryDefault","QueryClientContext","React.createContext","useQueryClient","queryClient","React.useContext","QueryClientProvider","children","React.useEffect","jsx","IsRestoringContext","useIsRestoring","createValue","isReset","QueryErrorResetBoundaryContext","useQueryErrorResetBoundary","ensurePreventErrorBoundaryRetry","errorResetBoundary","useClearResetErrorBoundary","getHasError","suspense","ensureSuspenseTimers","clamp","originalStaleTime","willFetch","isRestoring","shouldSuspend","fetchOptimistic","useBaseQuery","Observer","isNewCacheEntry","React.useState","shouldSubscribe","React.useSyncExternalStore","React.useCallback","onStoreChange","unsubscribe","useQuery","useMutation","mutate","mutateOptions"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}
1
+ {"version":3,"file":"query-B6BuIB0M.js","sources":["../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/@tanstack/query-core/build/modern/subscribable.js","../../../../node_modules/@tanstack/query-core/build/modern/timeoutManager.js","../../../../node_modules/@tanstack/query-core/build/modern/utils.js","../../../../node_modules/@tanstack/query-core/build/modern/focusManager.js","../../../../node_modules/@tanstack/query-core/build/modern/thenable.js","../../../../node_modules/@tanstack/query-core/build/modern/notifyManager.js","../../../../node_modules/@tanstack/query-core/build/modern/onlineManager.js","../../../../node_modules/@tanstack/query-core/build/modern/retryer.js","../../../../node_modules/@tanstack/query-core/build/modern/removable.js","../../../../node_modules/@tanstack/query-core/build/modern/query.js","../../../../node_modules/@tanstack/query-core/build/modern/queryObserver.js","../../../../node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","../../../../node_modules/@tanstack/query-core/build/modern/mutation.js","../../../../node_modules/@tanstack/query-core/build/modern/mutationCache.js","../../../../node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../../../../node_modules/@tanstack/query-core/build/modern/queryCache.js","../../../../node_modules/@tanstack/query-core/build/modern/queryClient.js","../../../../node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js","../../../../node_modules/@tanstack/react-query/build/modern/IsRestoringProvider.js","../../../../node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js","../../../../node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js","../../../../node_modules/@tanstack/react-query/build/modern/suspense.js","../../../../node_modules/@tanstack/react-query/build/modern/useBaseQuery.js","../../../../node_modules/@tanstack/react-query/build/modern/useQuery.js","../../../../node_modules/@tanstack/react-query/build/modern/useMutation.js"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","// src/subscribable.ts\nvar Subscribable = class {\n constructor() {\n this.listeners = /* @__PURE__ */ new Set();\n this.subscribe = this.subscribe.bind(this);\n }\n subscribe(listener) {\n this.listeners.add(listener);\n this.onSubscribe();\n return () => {\n this.listeners.delete(listener);\n this.onUnsubscribe();\n };\n }\n hasListeners() {\n return this.listeners.size > 0;\n }\n onSubscribe() {\n }\n onUnsubscribe() {\n }\n};\nexport {\n Subscribable\n};\n//# sourceMappingURL=subscribable.js.map","// src/timeoutManager.ts\nvar defaultTimeoutProvider = {\n // We need the wrapper function syntax below instead of direct references to\n // global setTimeout etc.\n //\n // BAD: `setTimeout: setTimeout`\n // GOOD: `setTimeout: (cb, delay) => setTimeout(cb, delay)`\n //\n // If we use direct references here, then anything that wants to spy on or\n // replace the global setTimeout (like tests) won't work since we'll already\n // have a hard reference to the original implementation at the time when this\n // file was imported.\n setTimeout: (callback, delay) => setTimeout(callback, delay),\n clearTimeout: (timeoutId) => clearTimeout(timeoutId),\n setInterval: (callback, delay) => setInterval(callback, delay),\n clearInterval: (intervalId) => clearInterval(intervalId)\n};\nvar TimeoutManager = class {\n // We cannot have TimeoutManager<T> as we must instantiate it with a concrete\n // type at app boot; and if we leave that type, then any new timer provider\n // would need to support ReturnType<typeof setTimeout>, which is infeasible.\n //\n // We settle for type safety for the TimeoutProvider type, and accept that\n // this class is unsafe internally to allow for extension.\n #provider = defaultTimeoutProvider;\n #providerCalled = false;\n setTimeoutProvider(provider) {\n if (process.env.NODE_ENV !== \"production\") {\n if (this.#providerCalled && provider !== this.#provider) {\n console.error(\n `[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.`,\n { previous: this.#provider, provider }\n );\n }\n }\n this.#provider = provider;\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = false;\n }\n }\n setTimeout(callback, delay) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = true;\n }\n return this.#provider.setTimeout(callback, delay);\n }\n clearTimeout(timeoutId) {\n this.#provider.clearTimeout(timeoutId);\n }\n setInterval(callback, delay) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = true;\n }\n return this.#provider.setInterval(callback, delay);\n }\n clearInterval(intervalId) {\n this.#provider.clearInterval(intervalId);\n }\n};\nvar timeoutManager = new TimeoutManager();\nfunction systemSetTimeoutZero(callback) {\n setTimeout(callback, 0);\n}\nexport {\n TimeoutManager,\n defaultTimeoutProvider,\n systemSetTimeoutZero,\n timeoutManager\n};\n//# sourceMappingURL=timeoutManager.js.map","// src/utils.ts\nimport { timeoutManager } from \"./timeoutManager.js\";\nvar isServer = typeof window === \"undefined\" || \"Deno\" in globalThis;\nfunction noop() {\n}\nfunction functionalUpdate(updater, input) {\n return typeof updater === \"function\" ? updater(input) : updater;\n}\nfunction isValidTimeout(value) {\n return typeof value === \"number\" && value >= 0 && value !== Infinity;\n}\nfunction timeUntilStale(updatedAt, staleTime) {\n return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);\n}\nfunction resolveStaleTime(staleTime, query) {\n return typeof staleTime === \"function\" ? staleTime(query) : staleTime;\n}\nfunction resolveEnabled(enabled, query) {\n return typeof enabled === \"function\" ? enabled(query) : enabled;\n}\nfunction matchQuery(filters, query) {\n const {\n type = \"all\",\n exact,\n fetchStatus,\n predicate,\n queryKey,\n stale\n } = filters;\n if (queryKey) {\n if (exact) {\n if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {\n return false;\n }\n } else if (!partialMatchKey(query.queryKey, queryKey)) {\n return false;\n }\n }\n if (type !== \"all\") {\n const isActive = query.isActive();\n if (type === \"active\" && !isActive) {\n return false;\n }\n if (type === \"inactive\" && isActive) {\n return false;\n }\n }\n if (typeof stale === \"boolean\" && query.isStale() !== stale) {\n return false;\n }\n if (fetchStatus && fetchStatus !== query.state.fetchStatus) {\n return false;\n }\n if (predicate && !predicate(query)) {\n return false;\n }\n return true;\n}\nfunction matchMutation(filters, mutation) {\n const { exact, status, predicate, mutationKey } = filters;\n if (mutationKey) {\n if (!mutation.options.mutationKey) {\n return false;\n }\n if (exact) {\n if (hashKey(mutation.options.mutationKey) !== hashKey(mutationKey)) {\n return false;\n }\n } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {\n return false;\n }\n }\n if (status && mutation.state.status !== status) {\n return false;\n }\n if (predicate && !predicate(mutation)) {\n return false;\n }\n return true;\n}\nfunction hashQueryKeyByOptions(queryKey, options) {\n const hashFn = options?.queryKeyHashFn || hashKey;\n return hashFn(queryKey);\n}\nfunction hashKey(queryKey) {\n return JSON.stringify(\n queryKey,\n (_, val) => isPlainObject(val) ? Object.keys(val).sort().reduce((result, key) => {\n result[key] = val[key];\n return result;\n }, {}) : val\n );\n}\nfunction partialMatchKey(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (a && b && typeof a === \"object\" && typeof b === \"object\") {\n return Object.keys(b).every((key) => partialMatchKey(a[key], b[key]));\n }\n return false;\n}\nvar hasOwn = Object.prototype.hasOwnProperty;\nfunction replaceEqualDeep(a, b, depth = 0) {\n if (a === b) {\n return a;\n }\n if (depth > 500) return b;\n const array = isPlainArray(a) && isPlainArray(b);\n if (!array && !(isPlainObject(a) && isPlainObject(b))) return b;\n const aItems = array ? a : Object.keys(a);\n const aSize = aItems.length;\n const bItems = array ? b : Object.keys(b);\n const bSize = bItems.length;\n const copy = array ? new Array(bSize) : {};\n let equalItems = 0;\n for (let i = 0; i < bSize; i++) {\n const key = array ? i : bItems[i];\n const aItem = a[key];\n const bItem = b[key];\n if (aItem === bItem) {\n copy[key] = aItem;\n if (array ? i < aSize : hasOwn.call(a, key)) equalItems++;\n continue;\n }\n if (aItem === null || bItem === null || typeof aItem !== \"object\" || typeof bItem !== \"object\") {\n copy[key] = bItem;\n continue;\n }\n const v = replaceEqualDeep(aItem, bItem, depth + 1);\n copy[key] = v;\n if (v === aItem) equalItems++;\n }\n return aSize === bSize && equalItems === aSize ? a : copy;\n}\nfunction shallowEqualObjects(a, b) {\n if (!b || Object.keys(a).length !== Object.keys(b).length) {\n return false;\n }\n for (const key in a) {\n if (a[key] !== b[key]) {\n return false;\n }\n }\n return true;\n}\nfunction isPlainArray(value) {\n return Array.isArray(value) && value.length === Object.keys(value).length;\n}\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n const ctor = o.constructor;\n if (ctor === void 0) {\n return true;\n }\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n if (!prot.hasOwnProperty(\"isPrototypeOf\")) {\n return false;\n }\n if (Object.getPrototypeOf(o) !== Object.prototype) {\n return false;\n }\n return true;\n}\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === \"[object Object]\";\n}\nfunction sleep(timeout) {\n return new Promise((resolve) => {\n timeoutManager.setTimeout(resolve, timeout);\n });\n}\nfunction replaceData(prevData, data, options) {\n if (typeof options.structuralSharing === \"function\") {\n return options.structuralSharing(prevData, data);\n } else if (options.structuralSharing !== false) {\n if (process.env.NODE_ENV !== \"production\") {\n try {\n return replaceEqualDeep(prevData, data);\n } catch (error) {\n console.error(\n `Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${options.queryHash}]: ${error}`\n );\n throw error;\n }\n }\n return replaceEqualDeep(prevData, data);\n }\n return data;\n}\nfunction keepPreviousData(previousData) {\n return previousData;\n}\nfunction addToEnd(items, item, max = 0) {\n const newItems = [...items, item];\n return max && newItems.length > max ? newItems.slice(1) : newItems;\n}\nfunction addToStart(items, item, max = 0) {\n const newItems = [item, ...items];\n return max && newItems.length > max ? newItems.slice(0, -1) : newItems;\n}\nvar skipToken = /* @__PURE__ */ Symbol();\nfunction ensureQueryFn(options, fetchOptions) {\n if (process.env.NODE_ENV !== \"production\") {\n if (options.queryFn === skipToken) {\n console.error(\n `Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${options.queryHash}'`\n );\n }\n }\n if (!options.queryFn && fetchOptions?.initialPromise) {\n return () => fetchOptions.initialPromise;\n }\n if (!options.queryFn || options.queryFn === skipToken) {\n return () => Promise.reject(new Error(`Missing queryFn: '${options.queryHash}'`));\n }\n return options.queryFn;\n}\nfunction shouldThrowError(throwOnError, params) {\n if (typeof throwOnError === \"function\") {\n return throwOnError(...params);\n }\n return !!throwOnError;\n}\nfunction addConsumeAwareSignal(object, getSignal, onCancelled) {\n let consumed = false;\n let signal;\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n signal ??= getSignal();\n if (consumed) {\n return signal;\n }\n consumed = true;\n if (signal.aborted) {\n onCancelled();\n } else {\n signal.addEventListener(\"abort\", onCancelled, { once: true });\n }\n return signal;\n }\n });\n return object;\n}\nexport {\n addConsumeAwareSignal,\n addToEnd,\n addToStart,\n ensureQueryFn,\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n isPlainArray,\n isPlainObject,\n isServer,\n isValidTimeout,\n keepPreviousData,\n matchMutation,\n matchQuery,\n noop,\n partialMatchKey,\n replaceData,\n replaceEqualDeep,\n resolveEnabled,\n resolveStaleTime,\n shallowEqualObjects,\n shouldThrowError,\n skipToken,\n sleep,\n timeUntilStale\n};\n//# sourceMappingURL=utils.js.map","// src/focusManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar FocusManager = class extends Subscribable {\n #focused;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onFocus) => {\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus();\n window.addEventListener(\"visibilitychange\", listener, false);\n return () => {\n window.removeEventListener(\"visibilitychange\", listener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup((focused) => {\n if (typeof focused === \"boolean\") {\n this.setFocused(focused);\n } else {\n this.onFocus();\n }\n });\n }\n setFocused(focused) {\n const changed = this.#focused !== focused;\n if (changed) {\n this.#focused = focused;\n this.onFocus();\n }\n }\n onFocus() {\n const isFocused = this.isFocused();\n this.listeners.forEach((listener) => {\n listener(isFocused);\n });\n }\n isFocused() {\n if (typeof this.#focused === \"boolean\") {\n return this.#focused;\n }\n return globalThis.document?.visibilityState !== \"hidden\";\n }\n};\nvar focusManager = new FocusManager();\nexport {\n FocusManager,\n focusManager\n};\n//# sourceMappingURL=focusManager.js.map","// src/thenable.ts\nimport { noop } from \"./utils.js\";\nfunction pendingThenable() {\n let resolve;\n let reject;\n const thenable = new Promise((_resolve, _reject) => {\n resolve = _resolve;\n reject = _reject;\n });\n thenable.status = \"pending\";\n thenable.catch(() => {\n });\n function finalize(data) {\n Object.assign(thenable, data);\n delete thenable.resolve;\n delete thenable.reject;\n }\n thenable.resolve = (value) => {\n finalize({\n status: \"fulfilled\",\n value\n });\n resolve(value);\n };\n thenable.reject = (reason) => {\n finalize({\n status: \"rejected\",\n reason\n });\n reject(reason);\n };\n return thenable;\n}\nfunction tryResolveSync(promise) {\n let data;\n promise.then((result) => {\n data = result;\n return result;\n }, noop)?.catch(noop);\n if (data !== void 0) {\n return { data };\n }\n return void 0;\n}\nexport {\n pendingThenable,\n tryResolveSync\n};\n//# sourceMappingURL=thenable.js.map","// src/notifyManager.ts\nimport { systemSetTimeoutZero } from \"./timeoutManager.js\";\nvar defaultScheduler = systemSetTimeoutZero;\nfunction createNotifyManager() {\n let queue = [];\n let transactions = 0;\n let notifyFn = (callback) => {\n callback();\n };\n let batchNotifyFn = (callback) => {\n callback();\n };\n let scheduleFn = defaultScheduler;\n const schedule = (callback) => {\n if (transactions) {\n queue.push(callback);\n } else {\n scheduleFn(() => {\n notifyFn(callback);\n });\n }\n };\n const flush = () => {\n const originalQueue = queue;\n queue = [];\n if (originalQueue.length) {\n scheduleFn(() => {\n batchNotifyFn(() => {\n originalQueue.forEach((callback) => {\n notifyFn(callback);\n });\n });\n });\n }\n };\n return {\n batch: (callback) => {\n let result;\n transactions++;\n try {\n result = callback();\n } finally {\n transactions--;\n if (!transactions) {\n flush();\n }\n }\n return result;\n },\n /**\n * All calls to the wrapped function will be batched.\n */\n batchCalls: (callback) => {\n return (...args) => {\n schedule(() => {\n callback(...args);\n });\n };\n },\n schedule,\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n setNotifyFunction: (fn) => {\n notifyFn = fn;\n },\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n setBatchNotifyFunction: (fn) => {\n batchNotifyFn = fn;\n },\n setScheduler: (fn) => {\n scheduleFn = fn;\n }\n };\n}\nvar notifyManager = createNotifyManager();\nexport {\n createNotifyManager,\n defaultScheduler,\n notifyManager\n};\n//# sourceMappingURL=notifyManager.js.map","// src/onlineManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar OnlineManager = class extends Subscribable {\n #online = true;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onOnline) => {\n if (!isServer && window.addEventListener) {\n const onlineListener = () => onOnline(true);\n const offlineListener = () => onOnline(false);\n window.addEventListener(\"online\", onlineListener, false);\n window.addEventListener(\"offline\", offlineListener, false);\n return () => {\n window.removeEventListener(\"online\", onlineListener);\n window.removeEventListener(\"offline\", offlineListener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup(this.setOnline.bind(this));\n }\n setOnline(online) {\n const changed = this.#online !== online;\n if (changed) {\n this.#online = online;\n this.listeners.forEach((listener) => {\n listener(online);\n });\n }\n }\n isOnline() {\n return this.#online;\n }\n};\nvar onlineManager = new OnlineManager();\nexport {\n OnlineManager,\n onlineManager\n};\n//# sourceMappingURL=onlineManager.js.map","// src/retryer.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { pendingThenable } from \"./thenable.js\";\nimport { isServer, sleep } from \"./utils.js\";\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1e3 * 2 ** failureCount, 3e4);\n}\nfunction canFetch(networkMode) {\n return (networkMode ?? \"online\") === \"online\" ? onlineManager.isOnline() : true;\n}\nvar CancelledError = class extends Error {\n constructor(options) {\n super(\"CancelledError\");\n this.revert = options?.revert;\n this.silent = options?.silent;\n }\n};\nfunction isCancelledError(value) {\n return value instanceof CancelledError;\n}\nfunction createRetryer(config) {\n let isRetryCancelled = false;\n let failureCount = 0;\n let continueFn;\n const thenable = pendingThenable();\n const isResolved = () => thenable.status !== \"pending\";\n const cancel = (cancelOptions) => {\n if (!isResolved()) {\n const error = new CancelledError(cancelOptions);\n reject(error);\n config.onCancel?.(error);\n }\n };\n const cancelRetry = () => {\n isRetryCancelled = true;\n };\n const continueRetry = () => {\n isRetryCancelled = false;\n };\n const canContinue = () => focusManager.isFocused() && (config.networkMode === \"always\" || onlineManager.isOnline()) && config.canRun();\n const canStart = () => canFetch(config.networkMode) && config.canRun();\n const resolve = (value) => {\n if (!isResolved()) {\n continueFn?.();\n thenable.resolve(value);\n }\n };\n const reject = (value) => {\n if (!isResolved()) {\n continueFn?.();\n thenable.reject(value);\n }\n };\n const pause = () => {\n return new Promise((continueResolve) => {\n continueFn = (value) => {\n if (isResolved() || canContinue()) {\n continueResolve(value);\n }\n };\n config.onPause?.();\n }).then(() => {\n continueFn = void 0;\n if (!isResolved()) {\n config.onContinue?.();\n }\n });\n };\n const run = () => {\n if (isResolved()) {\n return;\n }\n let promiseOrValue;\n const initialPromise = failureCount === 0 ? config.initialPromise : void 0;\n try {\n promiseOrValue = initialPromise ?? config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n }\n Promise.resolve(promiseOrValue).then(resolve).catch((error) => {\n if (isResolved()) {\n return;\n }\n const retry = config.retry ?? (isServer ? 0 : 3);\n const retryDelay = config.retryDelay ?? defaultRetryDelay;\n const delay = typeof retryDelay === \"function\" ? retryDelay(failureCount, error) : retryDelay;\n const shouldRetry = retry === true || typeof retry === \"number\" && failureCount < retry || typeof retry === \"function\" && retry(failureCount, error);\n if (isRetryCancelled || !shouldRetry) {\n reject(error);\n return;\n }\n failureCount++;\n config.onFail?.(failureCount, error);\n sleep(delay).then(() => {\n return canContinue() ? void 0 : pause();\n }).then(() => {\n if (isRetryCancelled) {\n reject(error);\n } else {\n run();\n }\n });\n });\n };\n return {\n promise: thenable,\n status: () => thenable.status,\n cancel,\n continue: () => {\n continueFn?.();\n return thenable;\n },\n cancelRetry,\n continueRetry,\n canStart,\n start: () => {\n if (canStart()) {\n run();\n } else {\n pause().then(run);\n }\n return thenable;\n }\n };\n}\nexport {\n CancelledError,\n canFetch,\n createRetryer,\n isCancelledError\n};\n//# sourceMappingURL=retryer.js.map","// src/removable.ts\nimport { timeoutManager } from \"./timeoutManager.js\";\nimport { isServer, isValidTimeout } from \"./utils.js\";\nvar Removable = class {\n #gcTimeout;\n destroy() {\n this.clearGcTimeout();\n }\n scheduleGc() {\n this.clearGcTimeout();\n if (isValidTimeout(this.gcTime)) {\n this.#gcTimeout = timeoutManager.setTimeout(() => {\n this.optionalRemove();\n }, this.gcTime);\n }\n }\n updateGcTime(newGcTime) {\n this.gcTime = Math.max(\n this.gcTime || 0,\n newGcTime ?? (isServer ? Infinity : 5 * 60 * 1e3)\n );\n }\n clearGcTimeout() {\n if (this.#gcTimeout) {\n timeoutManager.clearTimeout(this.#gcTimeout);\n this.#gcTimeout = void 0;\n }\n }\n};\nexport {\n Removable\n};\n//# sourceMappingURL=removable.js.map","// src/query.ts\nimport {\n ensureQueryFn,\n noop,\n replaceData,\n resolveEnabled,\n resolveStaleTime,\n skipToken,\n timeUntilStale\n} from \"./utils.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { CancelledError, canFetch, createRetryer } from \"./retryer.js\";\nimport { Removable } from \"./removable.js\";\nvar Query = class extends Removable {\n #initialState;\n #revertState;\n #cache;\n #client;\n #retryer;\n #defaultOptions;\n #abortSignalConsumed;\n constructor(config) {\n super();\n this.#abortSignalConsumed = false;\n this.#defaultOptions = config.defaultOptions;\n this.setOptions(config.options);\n this.observers = [];\n this.#client = config.client;\n this.#cache = this.#client.getQueryCache();\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.#initialState = getDefaultState(this.options);\n this.state = config.state ?? this.#initialState;\n this.scheduleGc();\n }\n get meta() {\n return this.options.meta;\n }\n get promise() {\n return this.#retryer?.promise;\n }\n setOptions(options) {\n this.options = { ...this.#defaultOptions, ...options };\n this.updateGcTime(this.options.gcTime);\n if (this.state && this.state.data === void 0) {\n const defaultState = getDefaultState(this.options);\n if (defaultState.data !== void 0) {\n this.setState(\n successState(defaultState.data, defaultState.dataUpdatedAt)\n );\n this.#initialState = defaultState;\n }\n }\n }\n optionalRemove() {\n if (!this.observers.length && this.state.fetchStatus === \"idle\") {\n this.#cache.remove(this);\n }\n }\n setData(newData, options) {\n const data = replaceData(this.state.data, newData, this.options);\n this.#dispatch({\n data,\n type: \"success\",\n dataUpdatedAt: options?.updatedAt,\n manual: options?.manual\n });\n return data;\n }\n setState(state, setStateOptions) {\n this.#dispatch({ type: \"setState\", state, setStateOptions });\n }\n cancel(options) {\n const promise = this.#retryer?.promise;\n this.#retryer?.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n }\n destroy() {\n super.destroy();\n this.cancel({ silent: true });\n }\n reset() {\n this.destroy();\n this.setState(this.#initialState);\n }\n isActive() {\n return this.observers.some(\n (observer) => resolveEnabled(observer.options.enabled, this) !== false\n );\n }\n isDisabled() {\n if (this.getObserversCount() > 0) {\n return !this.isActive();\n }\n return this.options.queryFn === skipToken || this.state.dataUpdateCount + this.state.errorUpdateCount === 0;\n }\n isStatic() {\n if (this.getObserversCount() > 0) {\n return this.observers.some(\n (observer) => resolveStaleTime(observer.options.staleTime, this) === \"static\"\n );\n }\n return false;\n }\n isStale() {\n if (this.getObserversCount() > 0) {\n return this.observers.some(\n (observer) => observer.getCurrentResult().isStale\n );\n }\n return this.state.data === void 0 || this.state.isInvalidated;\n }\n isStaleByTime(staleTime = 0) {\n if (this.state.data === void 0) {\n return true;\n }\n if (staleTime === \"static\") {\n return false;\n }\n if (this.state.isInvalidated) {\n return true;\n }\n return !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n }\n onFocus() {\n const observer = this.observers.find((x) => x.shouldFetchOnWindowFocus());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n onOnline() {\n const observer = this.observers.find((x) => x.shouldFetchOnReconnect());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n addObserver(observer) {\n if (!this.observers.includes(observer)) {\n this.observers.push(observer);\n this.clearGcTimeout();\n this.#cache.notify({ type: \"observerAdded\", query: this, observer });\n }\n }\n removeObserver(observer) {\n if (this.observers.includes(observer)) {\n this.observers = this.observers.filter((x) => x !== observer);\n if (!this.observers.length) {\n if (this.#retryer) {\n if (this.#abortSignalConsumed) {\n this.#retryer.cancel({ revert: true });\n } else {\n this.#retryer.cancelRetry();\n }\n }\n this.scheduleGc();\n }\n this.#cache.notify({ type: \"observerRemoved\", query: this, observer });\n }\n }\n getObserversCount() {\n return this.observers.length;\n }\n invalidate() {\n if (!this.state.isInvalidated) {\n this.#dispatch({ type: \"invalidate\" });\n }\n }\n async fetch(options, fetchOptions) {\n if (this.state.fetchStatus !== \"idle\" && // If the promise in the retryer is already rejected, we have to definitely\n // re-start the fetch; there is a chance that the query is still in a\n // pending state when that happens\n this.#retryer?.status() !== \"rejected\") {\n if (this.state.data !== void 0 && fetchOptions?.cancelRefetch) {\n this.cancel({ silent: true });\n } else if (this.#retryer) {\n this.#retryer.continueRetry();\n return this.#retryer.promise;\n }\n }\n if (options) {\n this.setOptions(options);\n }\n if (!this.options.queryFn) {\n const observer = this.observers.find((x) => x.options.queryFn);\n if (observer) {\n this.setOptions(observer.options);\n }\n }\n if (process.env.NODE_ENV !== \"production\") {\n if (!Array.isArray(this.options.queryKey)) {\n console.error(\n `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']`\n );\n }\n }\n const abortController = new AbortController();\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n this.#abortSignalConsumed = true;\n return abortController.signal;\n }\n });\n };\n const fetchFn = () => {\n const queryFn = ensureQueryFn(this.options, fetchOptions);\n const createQueryFnContext = () => {\n const queryFnContext2 = {\n client: this.#client,\n queryKey: this.queryKey,\n meta: this.meta\n };\n addSignalProperty(queryFnContext2);\n return queryFnContext2;\n };\n const queryFnContext = createQueryFnContext();\n this.#abortSignalConsumed = false;\n if (this.options.persister) {\n return this.options.persister(\n queryFn,\n queryFnContext,\n this\n );\n }\n return queryFn(queryFnContext);\n };\n const createFetchContext = () => {\n const context2 = {\n fetchOptions,\n options: this.options,\n queryKey: this.queryKey,\n client: this.#client,\n state: this.state,\n fetchFn\n };\n addSignalProperty(context2);\n return context2;\n };\n const context = createFetchContext();\n this.options.behavior?.onFetch(context, this);\n this.#revertState = this.state;\n if (this.state.fetchStatus === \"idle\" || this.state.fetchMeta !== context.fetchOptions?.meta) {\n this.#dispatch({ type: \"fetch\", meta: context.fetchOptions?.meta });\n }\n this.#retryer = createRetryer({\n initialPromise: fetchOptions?.initialPromise,\n fn: context.fetchFn,\n onCancel: (error) => {\n if (error instanceof CancelledError && error.revert) {\n this.setState({\n ...this.#revertState,\n fetchStatus: \"idle\"\n });\n }\n abortController.abort();\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue: () => {\n this.#dispatch({ type: \"continue\" });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay,\n networkMode: context.options.networkMode,\n canRun: () => true\n });\n try {\n const data = await this.#retryer.start();\n if (data === void 0) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(\n `Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`\n );\n }\n throw new Error(`${this.queryHash} data is undefined`);\n }\n this.setData(data);\n this.#cache.config.onSuccess?.(data, this);\n this.#cache.config.onSettled?.(\n data,\n this.state.error,\n this\n );\n return data;\n } catch (error) {\n if (error instanceof CancelledError) {\n if (error.silent) {\n return this.#retryer.promise;\n } else if (error.revert) {\n if (this.state.data === void 0) {\n throw error;\n }\n return this.state.data;\n }\n }\n this.#dispatch({\n type: \"error\",\n error\n });\n this.#cache.config.onError?.(\n error,\n this\n );\n this.#cache.config.onSettled?.(\n this.state.data,\n error,\n this\n );\n throw error;\n } finally {\n this.scheduleGc();\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n fetchFailureCount: action.failureCount,\n fetchFailureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n fetchStatus: \"paused\"\n };\n case \"continue\":\n return {\n ...state,\n fetchStatus: \"fetching\"\n };\n case \"fetch\":\n return {\n ...state,\n ...fetchState(state.data, this.options),\n fetchMeta: action.meta ?? null\n };\n case \"success\":\n const newState = {\n ...state,\n ...successState(action.data, action.dataUpdatedAt),\n dataUpdateCount: state.dataUpdateCount + 1,\n ...!action.manual && {\n fetchStatus: \"idle\",\n fetchFailureCount: 0,\n fetchFailureReason: null\n }\n };\n this.#revertState = action.manual ? newState : void 0;\n return newState;\n case \"error\":\n const error = action.error;\n return {\n ...state,\n error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n fetchFailureReason: error,\n fetchStatus: \"idle\",\n status: \"error\",\n // flag existing data as invalidated if we get a background error\n // note that \"no data\" always means stale so we can set unconditionally here\n isInvalidated: true\n };\n case \"invalidate\":\n return {\n ...state,\n isInvalidated: true\n };\n case \"setState\":\n return {\n ...state,\n ...action.state\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.observers.forEach((observer) => {\n observer.onQueryUpdate();\n });\n this.#cache.notify({ query: this, type: \"updated\", action });\n });\n }\n};\nfunction fetchState(data, options) {\n return {\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchStatus: canFetch(options.networkMode) ? \"fetching\" : \"paused\",\n ...data === void 0 && {\n error: null,\n status: \"pending\"\n }\n };\n}\nfunction successState(data, dataUpdatedAt) {\n return {\n data,\n dataUpdatedAt: dataUpdatedAt ?? Date.now(),\n error: null,\n isInvalidated: false,\n status: \"success\"\n };\n}\nfunction getDefaultState(options) {\n const data = typeof options.initialData === \"function\" ? options.initialData() : options.initialData;\n const hasData = data !== void 0;\n const initialDataUpdatedAt = hasData ? typeof options.initialDataUpdatedAt === \"function\" ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n return {\n data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt ?? Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchMeta: null,\n isInvalidated: false,\n status: hasData ? \"success\" : \"pending\",\n fetchStatus: \"idle\"\n };\n}\nexport {\n Query,\n fetchState\n};\n//# sourceMappingURL=query.js.map","// src/queryObserver.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { fetchState } from \"./query.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { pendingThenable } from \"./thenable.js\";\nimport {\n isServer,\n isValidTimeout,\n noop,\n replaceData,\n resolveEnabled,\n resolveStaleTime,\n shallowEqualObjects,\n timeUntilStale\n} from \"./utils.js\";\nimport { timeoutManager } from \"./timeoutManager.js\";\nvar QueryObserver = class extends Subscribable {\n constructor(client, options) {\n super();\n this.options = options;\n this.#client = client;\n this.#selectError = null;\n this.#currentThenable = pendingThenable();\n this.bindMethods();\n this.setOptions(options);\n }\n #client;\n #currentQuery = void 0;\n #currentQueryInitialState = void 0;\n #currentResult = void 0;\n #currentResultState;\n #currentResultOptions;\n #currentThenable;\n #selectError;\n #selectFn;\n #selectResult;\n // This property keeps track of the last query with defined data.\n // It will be used to pass the previous data and query to the placeholder function between renders.\n #lastQueryWithDefinedData;\n #staleTimeoutId;\n #refetchIntervalId;\n #currentRefetchInterval;\n #trackedProps = /* @__PURE__ */ new Set();\n bindMethods() {\n this.refetch = this.refetch.bind(this);\n }\n onSubscribe() {\n if (this.listeners.size === 1) {\n this.#currentQuery.addObserver(this);\n if (shouldFetchOnMount(this.#currentQuery, this.options)) {\n this.#executeFetch();\n } else {\n this.updateResult();\n }\n this.#updateTimers();\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.destroy();\n }\n }\n shouldFetchOnReconnect() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnReconnect\n );\n }\n shouldFetchOnWindowFocus() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnWindowFocus\n );\n }\n destroy() {\n this.listeners = /* @__PURE__ */ new Set();\n this.#clearStaleTimeout();\n this.#clearRefetchInterval();\n this.#currentQuery.removeObserver(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n const prevQuery = this.#currentQuery;\n this.options = this.#client.defaultQueryOptions(options);\n if (this.options.enabled !== void 0 && typeof this.options.enabled !== \"boolean\" && typeof this.options.enabled !== \"function\" && typeof resolveEnabled(this.options.enabled, this.#currentQuery) !== \"boolean\") {\n throw new Error(\n \"Expected enabled to be a boolean or a callback that returns a boolean\"\n );\n }\n this.#updateQuery();\n this.#currentQuery.setOptions(this.options);\n if (prevOptions._defaulted && !shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getQueryCache().notify({\n type: \"observerOptionsUpdated\",\n query: this.#currentQuery,\n observer: this\n });\n }\n const mounted = this.hasListeners();\n if (mounted && shouldFetchOptionally(\n this.#currentQuery,\n prevQuery,\n this.options,\n prevOptions\n )) {\n this.#executeFetch();\n }\n this.updateResult();\n if (mounted && (this.#currentQuery !== prevQuery || resolveEnabled(this.options.enabled, this.#currentQuery) !== resolveEnabled(prevOptions.enabled, this.#currentQuery) || resolveStaleTime(this.options.staleTime, this.#currentQuery) !== resolveStaleTime(prevOptions.staleTime, this.#currentQuery))) {\n this.#updateStaleTimeout();\n }\n const nextRefetchInterval = this.#computeRefetchInterval();\n if (mounted && (this.#currentQuery !== prevQuery || resolveEnabled(this.options.enabled, this.#currentQuery) !== resolveEnabled(prevOptions.enabled, this.#currentQuery) || nextRefetchInterval !== this.#currentRefetchInterval)) {\n this.#updateRefetchInterval(nextRefetchInterval);\n }\n }\n getOptimisticResult(options) {\n const query = this.#client.getQueryCache().build(this.#client, options);\n const result = this.createResult(query, options);\n if (shouldAssignObserverCurrentProperties(this, result)) {\n this.#currentResult = result;\n this.#currentResultOptions = this.options;\n this.#currentResultState = this.#currentQuery.state;\n }\n return result;\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n trackResult(result, onPropTracked) {\n return new Proxy(result, {\n get: (target, key) => {\n this.trackProp(key);\n onPropTracked?.(key);\n if (key === \"promise\") {\n this.trackProp(\"data\");\n if (!this.options.experimental_prefetchInRender && this.#currentThenable.status === \"pending\") {\n this.#currentThenable.reject(\n new Error(\n \"experimental_prefetchInRender feature flag is not enabled\"\n )\n );\n }\n }\n return Reflect.get(target, key);\n }\n });\n }\n trackProp(key) {\n this.#trackedProps.add(key);\n }\n getCurrentQuery() {\n return this.#currentQuery;\n }\n refetch({ ...options } = {}) {\n return this.fetch({\n ...options\n });\n }\n fetchOptimistic(options) {\n const defaultedOptions = this.#client.defaultQueryOptions(options);\n const query = this.#client.getQueryCache().build(this.#client, defaultedOptions);\n return query.fetch().then(() => this.createResult(query, defaultedOptions));\n }\n fetch(fetchOptions) {\n return this.#executeFetch({\n ...fetchOptions,\n cancelRefetch: fetchOptions.cancelRefetch ?? true\n }).then(() => {\n this.updateResult();\n return this.#currentResult;\n });\n }\n #executeFetch(fetchOptions) {\n this.#updateQuery();\n let promise = this.#currentQuery.fetch(\n this.options,\n fetchOptions\n );\n if (!fetchOptions?.throwOnError) {\n promise = promise.catch(noop);\n }\n return promise;\n }\n #updateStaleTimeout() {\n this.#clearStaleTimeout();\n const staleTime = resolveStaleTime(\n this.options.staleTime,\n this.#currentQuery\n );\n if (isServer || this.#currentResult.isStale || !isValidTimeout(staleTime)) {\n return;\n }\n const time = timeUntilStale(this.#currentResult.dataUpdatedAt, staleTime);\n const timeout = time + 1;\n this.#staleTimeoutId = timeoutManager.setTimeout(() => {\n if (!this.#currentResult.isStale) {\n this.updateResult();\n }\n }, timeout);\n }\n #computeRefetchInterval() {\n return (typeof this.options.refetchInterval === \"function\" ? this.options.refetchInterval(this.#currentQuery) : this.options.refetchInterval) ?? false;\n }\n #updateRefetchInterval(nextInterval) {\n this.#clearRefetchInterval();\n this.#currentRefetchInterval = nextInterval;\n if (isServer || resolveEnabled(this.options.enabled, this.#currentQuery) === false || !isValidTimeout(this.#currentRefetchInterval) || this.#currentRefetchInterval === 0) {\n return;\n }\n this.#refetchIntervalId = timeoutManager.setInterval(() => {\n if (this.options.refetchIntervalInBackground || focusManager.isFocused()) {\n this.#executeFetch();\n }\n }, this.#currentRefetchInterval);\n }\n #updateTimers() {\n this.#updateStaleTimeout();\n this.#updateRefetchInterval(this.#computeRefetchInterval());\n }\n #clearStaleTimeout() {\n if (this.#staleTimeoutId) {\n timeoutManager.clearTimeout(this.#staleTimeoutId);\n this.#staleTimeoutId = void 0;\n }\n }\n #clearRefetchInterval() {\n if (this.#refetchIntervalId) {\n timeoutManager.clearInterval(this.#refetchIntervalId);\n this.#refetchIntervalId = void 0;\n }\n }\n createResult(query, options) {\n const prevQuery = this.#currentQuery;\n const prevOptions = this.options;\n const prevResult = this.#currentResult;\n const prevResultState = this.#currentResultState;\n const prevResultOptions = this.#currentResultOptions;\n const queryChange = query !== prevQuery;\n const queryInitialState = queryChange ? query.state : this.#currentQueryInitialState;\n const { state } = query;\n let newState = { ...state };\n let isPlaceholderData = false;\n let data;\n if (options._optimisticResults) {\n const mounted = this.hasListeners();\n const fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n const fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n if (fetchOnMount || fetchOptionally) {\n newState = {\n ...newState,\n ...fetchState(state.data, query.options)\n };\n }\n if (options._optimisticResults === \"isRestoring\") {\n newState.fetchStatus = \"idle\";\n }\n }\n let { error, errorUpdatedAt, status } = newState;\n data = newState.data;\n let skipSelect = false;\n if (options.placeholderData !== void 0 && data === void 0 && status === \"pending\") {\n let placeholderData;\n if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {\n placeholderData = prevResult.data;\n skipSelect = true;\n } else {\n placeholderData = typeof options.placeholderData === \"function\" ? options.placeholderData(\n this.#lastQueryWithDefinedData?.state.data,\n this.#lastQueryWithDefinedData\n ) : options.placeholderData;\n }\n if (placeholderData !== void 0) {\n status = \"success\";\n data = replaceData(\n prevResult?.data,\n placeholderData,\n options\n );\n isPlaceholderData = true;\n }\n }\n if (options.select && data !== void 0 && !skipSelect) {\n if (prevResult && data === prevResultState?.data && options.select === this.#selectFn) {\n data = this.#selectResult;\n } else {\n try {\n this.#selectFn = options.select;\n data = options.select(data);\n data = replaceData(prevResult?.data, data, options);\n this.#selectResult = data;\n this.#selectError = null;\n } catch (selectError) {\n this.#selectError = selectError;\n }\n }\n }\n if (this.#selectError) {\n error = this.#selectError;\n data = this.#selectResult;\n errorUpdatedAt = Date.now();\n status = \"error\";\n }\n const isFetching = newState.fetchStatus === \"fetching\";\n const isPending = status === \"pending\";\n const isError = status === \"error\";\n const isLoading = isPending && isFetching;\n const hasData = data !== void 0;\n const result = {\n status,\n fetchStatus: newState.fetchStatus,\n isPending,\n isSuccess: status === \"success\",\n isError,\n isInitialLoading: isLoading,\n isLoading,\n data,\n dataUpdatedAt: newState.dataUpdatedAt,\n error,\n errorUpdatedAt,\n failureCount: newState.fetchFailureCount,\n failureReason: newState.fetchFailureReason,\n errorUpdateCount: newState.errorUpdateCount,\n isFetched: newState.dataUpdateCount > 0 || newState.errorUpdateCount > 0,\n isFetchedAfterMount: newState.dataUpdateCount > queryInitialState.dataUpdateCount || newState.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching,\n isRefetching: isFetching && !isPending,\n isLoadingError: isError && !hasData,\n isPaused: newState.fetchStatus === \"paused\",\n isPlaceholderData,\n isRefetchError: isError && hasData,\n isStale: isStale(query, options),\n refetch: this.refetch,\n promise: this.#currentThenable,\n isEnabled: resolveEnabled(options.enabled, query) !== false\n };\n const nextResult = result;\n if (this.options.experimental_prefetchInRender) {\n const hasResultData = nextResult.data !== void 0;\n const isErrorWithoutData = nextResult.status === \"error\" && !hasResultData;\n const finalizeThenableIfPossible = (thenable) => {\n if (isErrorWithoutData) {\n thenable.reject(nextResult.error);\n } else if (hasResultData) {\n thenable.resolve(nextResult.data);\n }\n };\n const recreateThenable = () => {\n const pending = this.#currentThenable = nextResult.promise = pendingThenable();\n finalizeThenableIfPossible(pending);\n };\n const prevThenable = this.#currentThenable;\n switch (prevThenable.status) {\n case \"pending\":\n if (query.queryHash === prevQuery.queryHash) {\n finalizeThenableIfPossible(prevThenable);\n }\n break;\n case \"fulfilled\":\n if (isErrorWithoutData || nextResult.data !== prevThenable.value) {\n recreateThenable();\n }\n break;\n case \"rejected\":\n if (!isErrorWithoutData || nextResult.error !== prevThenable.reason) {\n recreateThenable();\n }\n break;\n }\n }\n return nextResult;\n }\n updateResult() {\n const prevResult = this.#currentResult;\n const nextResult = this.createResult(this.#currentQuery, this.options);\n this.#currentResultState = this.#currentQuery.state;\n this.#currentResultOptions = this.options;\n if (this.#currentResultState.data !== void 0) {\n this.#lastQueryWithDefinedData = this.#currentQuery;\n }\n if (shallowEqualObjects(nextResult, prevResult)) {\n return;\n }\n this.#currentResult = nextResult;\n const shouldNotifyListeners = () => {\n if (!prevResult) {\n return true;\n }\n const { notifyOnChangeProps } = this.options;\n const notifyOnChangePropsValue = typeof notifyOnChangeProps === \"function\" ? notifyOnChangeProps() : notifyOnChangeProps;\n if (notifyOnChangePropsValue === \"all\" || !notifyOnChangePropsValue && !this.#trackedProps.size) {\n return true;\n }\n const includedProps = new Set(\n notifyOnChangePropsValue ?? this.#trackedProps\n );\n if (this.options.throwOnError) {\n includedProps.add(\"error\");\n }\n return Object.keys(this.#currentResult).some((key) => {\n const typedKey = key;\n const changed = this.#currentResult[typedKey] !== prevResult[typedKey];\n return changed && includedProps.has(typedKey);\n });\n };\n this.#notify({ listeners: shouldNotifyListeners() });\n }\n #updateQuery() {\n const query = this.#client.getQueryCache().build(this.#client, this.options);\n if (query === this.#currentQuery) {\n return;\n }\n const prevQuery = this.#currentQuery;\n this.#currentQuery = query;\n this.#currentQueryInitialState = query.state;\n if (this.hasListeners()) {\n prevQuery?.removeObserver(this);\n query.addObserver(this);\n }\n }\n onQueryUpdate() {\n this.updateResult();\n if (this.hasListeners()) {\n this.#updateTimers();\n }\n }\n #notify(notifyOptions) {\n notifyManager.batch(() => {\n if (notifyOptions.listeners) {\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n }\n this.#client.getQueryCache().notify({\n query: this.#currentQuery,\n type: \"observerResultsUpdated\"\n });\n });\n }\n};\nfunction shouldLoadOnMount(query, options) {\n return resolveEnabled(options.enabled, query) !== false && query.state.data === void 0 && !(query.state.status === \"error\" && options.retryOnMount === false);\n}\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || query.state.data !== void 0 && shouldFetchOn(query, options, options.refetchOnMount);\n}\nfunction shouldFetchOn(query, options, field) {\n if (resolveEnabled(options.enabled, query) !== false && resolveStaleTime(options.staleTime, query) !== \"static\") {\n const value = typeof field === \"function\" ? field(query) : field;\n return value === \"always\" || value !== false && isStale(query, options);\n }\n return false;\n}\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return (query !== prevQuery || resolveEnabled(prevOptions.enabled, query) === false) && (!options.suspense || query.state.status !== \"error\") && isStale(query, options);\n}\nfunction isStale(query, options) {\n return resolveEnabled(options.enabled, query) !== false && query.isStaleByTime(resolveStaleTime(options.staleTime, query));\n}\nfunction shouldAssignObserverCurrentProperties(observer, optimisticResult) {\n if (!shallowEqualObjects(observer.getCurrentResult(), optimisticResult)) {\n return true;\n }\n return false;\n}\nexport {\n QueryObserver\n};\n//# sourceMappingURL=queryObserver.js.map","// src/infiniteQueryBehavior.ts\nimport {\n addConsumeAwareSignal,\n addToEnd,\n addToStart,\n ensureQueryFn\n} from \"./utils.js\";\nfunction infiniteQueryBehavior(pages) {\n return {\n onFetch: (context, query) => {\n const options = context.options;\n const direction = context.fetchOptions?.meta?.fetchMore?.direction;\n const oldPages = context.state.data?.pages || [];\n const oldPageParams = context.state.data?.pageParams || [];\n let result = { pages: [], pageParams: [] };\n let currentPage = 0;\n const fetchFn = async () => {\n let cancelled = false;\n const addSignalProperty = (object) => {\n addConsumeAwareSignal(\n object,\n () => context.signal,\n () => cancelled = true\n );\n };\n const queryFn = ensureQueryFn(context.options, context.fetchOptions);\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (param == null && data.pages.length) {\n return Promise.resolve(data);\n }\n const createQueryFnContext = () => {\n const queryFnContext2 = {\n client: context.client,\n queryKey: context.queryKey,\n pageParam: param,\n direction: previous ? \"backward\" : \"forward\",\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext2);\n return queryFnContext2;\n };\n const queryFnContext = createQueryFnContext();\n const page = await queryFn(queryFnContext);\n const { maxPages } = context.options;\n const addTo = previous ? addToStart : addToEnd;\n return {\n pages: addTo(data.pages, page, maxPages),\n pageParams: addTo(data.pageParams, param, maxPages)\n };\n };\n if (direction && oldPages.length) {\n const previous = direction === \"backward\";\n const pageParamFn = previous ? getPreviousPageParam : getNextPageParam;\n const oldData = {\n pages: oldPages,\n pageParams: oldPageParams\n };\n const param = pageParamFn(options, oldData);\n result = await fetchPage(oldData, param, previous);\n } else {\n const remainingPages = pages ?? oldPages.length;\n do {\n const param = currentPage === 0 ? oldPageParams[0] ?? options.initialPageParam : getNextPageParam(options, result);\n if (currentPage > 0 && param == null) {\n break;\n }\n result = await fetchPage(result, param);\n currentPage++;\n } while (currentPage < remainingPages);\n }\n return result;\n };\n if (context.options.persister) {\n context.fetchFn = () => {\n return context.options.persister?.(\n fetchFn,\n {\n client: context.client,\n queryKey: context.queryKey,\n meta: context.options.meta,\n signal: context.signal\n },\n query\n );\n };\n } else {\n context.fetchFn = fetchFn;\n }\n }\n };\n}\nfunction getNextPageParam(options, { pages, pageParams }) {\n const lastIndex = pages.length - 1;\n return pages.length > 0 ? options.getNextPageParam(\n pages[lastIndex],\n pages,\n pageParams[lastIndex],\n pageParams\n ) : void 0;\n}\nfunction getPreviousPageParam(options, { pages, pageParams }) {\n return pages.length > 0 ? options.getPreviousPageParam?.(pages[0], pages, pageParams[0], pageParams) : void 0;\n}\nfunction hasNextPage(options, data) {\n if (!data) return false;\n return getNextPageParam(options, data) != null;\n}\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam) return false;\n return getPreviousPageParam(options, data) != null;\n}\nexport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n};\n//# sourceMappingURL=infiniteQueryBehavior.js.map","// src/mutation.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Removable } from \"./removable.js\";\nimport { createRetryer } from \"./retryer.js\";\nvar Mutation = class extends Removable {\n #client;\n #observers;\n #mutationCache;\n #retryer;\n constructor(config) {\n super();\n this.#client = config.client;\n this.mutationId = config.mutationId;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.setOptions(config.options);\n this.scheduleGc();\n }\n setOptions(options) {\n this.options = options;\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#mutationCache.notify({\n type: \"observerAdded\",\n mutation: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n this.scheduleGc();\n this.#mutationCache.notify({\n type: \"observerRemoved\",\n mutation: this,\n observer\n });\n }\n optionalRemove() {\n if (!this.#observers.length) {\n if (this.state.status === \"pending\") {\n this.scheduleGc();\n } else {\n this.#mutationCache.remove(this);\n }\n }\n }\n continue() {\n return this.#retryer?.continue() ?? // continuing a mutation assumes that variables are set, mutation must have been dehydrated before\n this.execute(this.state.variables);\n }\n async execute(variables) {\n const onContinue = () => {\n this.#dispatch({ type: \"continue\" });\n };\n const mutationFnContext = {\n client: this.#client,\n meta: this.options.meta,\n mutationKey: this.options.mutationKey\n };\n this.#retryer = createRetryer({\n fn: () => {\n if (!this.options.mutationFn) {\n return Promise.reject(new Error(\"No mutationFn found\"));\n }\n return this.options.mutationFn(variables, mutationFnContext);\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue,\n retry: this.options.retry ?? 0,\n retryDelay: this.options.retryDelay,\n networkMode: this.options.networkMode,\n canRun: () => this.#mutationCache.canRun(this)\n });\n const restored = this.state.status === \"pending\";\n const isPaused = !this.#retryer.canStart();\n try {\n if (restored) {\n onContinue();\n } else {\n this.#dispatch({ type: \"pending\", variables, isPaused });\n if (this.#mutationCache.config.onMutate) {\n await this.#mutationCache.config.onMutate(\n variables,\n this,\n mutationFnContext\n );\n }\n const context = await this.options.onMutate?.(\n variables,\n mutationFnContext\n );\n if (context !== this.state.context) {\n this.#dispatch({\n type: \"pending\",\n context,\n variables,\n isPaused\n });\n }\n }\n const data = await this.#retryer.start();\n await this.#mutationCache.config.onSuccess?.(\n data,\n variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSuccess?.(\n data,\n variables,\n this.state.context,\n mutationFnContext\n );\n await this.#mutationCache.config.onSettled?.(\n data,\n null,\n this.state.variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSettled?.(\n data,\n null,\n variables,\n this.state.context,\n mutationFnContext\n );\n this.#dispatch({ type: \"success\", data });\n return data;\n } catch (error) {\n try {\n await this.#mutationCache.config.onError?.(\n error,\n variables,\n this.state.context,\n this,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n await this.options.onError?.(\n error,\n variables,\n this.state.context,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n await this.#mutationCache.config.onSettled?.(\n void 0,\n error,\n this.state.variables,\n this.state.context,\n this,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n await this.options.onSettled?.(\n void 0,\n error,\n variables,\n this.state.context,\n mutationFnContext\n );\n } catch (e) {\n void Promise.reject(e);\n }\n this.#dispatch({ type: \"error\", error });\n throw error;\n } finally {\n this.#mutationCache.runNext(this);\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n failureCount: action.failureCount,\n failureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n isPaused: true\n };\n case \"continue\":\n return {\n ...state,\n isPaused: false\n };\n case \"pending\":\n return {\n ...state,\n context: action.context,\n data: void 0,\n failureCount: 0,\n failureReason: null,\n error: null,\n isPaused: action.isPaused,\n status: \"pending\",\n variables: action.variables,\n submittedAt: Date.now()\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n failureCount: 0,\n failureReason: null,\n error: null,\n status: \"success\",\n isPaused: false\n };\n case \"error\":\n return {\n ...state,\n data: void 0,\n error: action.error,\n failureCount: state.failureCount + 1,\n failureReason: action.error,\n isPaused: false,\n status: \"error\"\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onMutationUpdate(action);\n });\n this.#mutationCache.notify({\n mutation: this,\n type: \"updated\",\n action\n });\n });\n }\n};\nfunction getDefaultState() {\n return {\n context: void 0,\n data: void 0,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: \"idle\",\n variables: void 0,\n submittedAt: 0\n };\n}\nexport {\n Mutation,\n getDefaultState\n};\n//# sourceMappingURL=mutation.js.map","// src/mutationCache.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Mutation } from \"./mutation.js\";\nimport { matchMutation, noop } from \"./utils.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar MutationCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = /* @__PURE__ */ new Set();\n this.#scopes = /* @__PURE__ */ new Map();\n this.#mutationId = 0;\n }\n #mutations;\n #scopes;\n #mutationId;\n build(client, options, state) {\n const mutation = new Mutation({\n client,\n mutationCache: this,\n mutationId: ++this.#mutationId,\n options: client.defaultMutationOptions(options),\n state\n });\n this.add(mutation);\n return mutation;\n }\n add(mutation) {\n this.#mutations.add(mutation);\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const scopedMutations = this.#scopes.get(scope);\n if (scopedMutations) {\n scopedMutations.push(mutation);\n } else {\n this.#scopes.set(scope, [mutation]);\n }\n }\n this.notify({ type: \"added\", mutation });\n }\n remove(mutation) {\n if (this.#mutations.delete(mutation)) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const scopedMutations = this.#scopes.get(scope);\n if (scopedMutations) {\n if (scopedMutations.length > 1) {\n const index = scopedMutations.indexOf(mutation);\n if (index !== -1) {\n scopedMutations.splice(index, 1);\n }\n } else if (scopedMutations[0] === mutation) {\n this.#scopes.delete(scope);\n }\n }\n }\n }\n this.notify({ type: \"removed\", mutation });\n }\n canRun(mutation) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const mutationsWithSameScope = this.#scopes.get(scope);\n const firstPendingMutation = mutationsWithSameScope?.find(\n (m) => m.state.status === \"pending\"\n );\n return !firstPendingMutation || firstPendingMutation === mutation;\n } else {\n return true;\n }\n }\n runNext(mutation) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const foundMutation = this.#scopes.get(scope)?.find((m) => m !== mutation && m.state.isPaused);\n return foundMutation?.continue() ?? Promise.resolve();\n } else {\n return Promise.resolve();\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.#mutations.forEach((mutation) => {\n this.notify({ type: \"removed\", mutation });\n });\n this.#mutations.clear();\n this.#scopes.clear();\n });\n }\n getAll() {\n return Array.from(this.#mutations);\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (mutation) => matchMutation(defaultedFilters, mutation)\n );\n }\n findAll(filters = {}) {\n return this.getAll().filter((mutation) => matchMutation(filters, mutation));\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n resumePausedMutations() {\n const pausedMutations = this.getAll().filter((x) => x.state.isPaused);\n return notifyManager.batch(\n () => Promise.all(\n pausedMutations.map((mutation) => mutation.continue().catch(noop))\n )\n );\n }\n};\nfunction scopeFor(mutation) {\n return mutation.options.scope?.id;\n}\nexport {\n MutationCache\n};\n//# sourceMappingURL=mutationCache.js.map","// src/mutationObserver.ts\nimport { getDefaultState } from \"./mutation.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { hashKey, shallowEqualObjects } from \"./utils.js\";\nvar MutationObserver = class extends Subscribable {\n #client;\n #currentResult = void 0;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\n bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n this.options = this.#client.defaultMutationOptions(options);\n if (!shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getMutationCache().notify({\n type: \"observerOptionsUpdated\",\n mutation: this.#currentMutation,\n observer: this\n });\n }\n if (prevOptions?.mutationKey && this.options.mutationKey && hashKey(prevOptions.mutationKey) !== hashKey(this.options.mutationKey)) {\n this.reset();\n } else if (this.#currentMutation?.state.status === \"pending\") {\n this.#currentMutation.setOptions(this.options);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#currentMutation?.removeObserver(this);\n }\n }\n onMutationUpdate(action) {\n this.#updateResult();\n this.#notify(action);\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n reset() {\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = void 0;\n this.#updateResult();\n this.#notify();\n }\n mutate(variables, options) {\n this.#mutateOptions = options;\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = this.#client.getMutationCache().build(this.#client, this.options);\n this.#currentMutation.addObserver(this);\n return this.#currentMutation.execute(variables);\n }\n #updateResult() {\n const state = this.#currentMutation?.state ?? getDefaultState();\n this.#currentResult = {\n ...state,\n isPending: state.status === \"pending\",\n isSuccess: state.status === \"success\",\n isError: state.status === \"error\",\n isIdle: state.status === \"idle\",\n mutate: this.mutate,\n reset: this.reset\n };\n }\n #notify(action) {\n notifyManager.batch(() => {\n if (this.#mutateOptions && this.hasListeners()) {\n const variables = this.#currentResult.variables;\n const onMutateResult = this.#currentResult.context;\n const context = {\n client: this.#client,\n meta: this.options.meta,\n mutationKey: this.options.mutationKey\n };\n if (action?.type === \"success\") {\n try {\n this.#mutateOptions.onSuccess?.(\n action.data,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n this.#mutateOptions.onSettled?.(\n action.data,\n null,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n } else if (action?.type === \"error\") {\n try {\n this.#mutateOptions.onError?.(\n action.error,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n try {\n this.#mutateOptions.onSettled?.(\n void 0,\n action.error,\n variables,\n onMutateResult,\n context\n );\n } catch (e) {\n void Promise.reject(e);\n }\n }\n }\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n });\n }\n};\nexport {\n MutationObserver\n};\n//# sourceMappingURL=mutationObserver.js.map","// src/queryCache.ts\nimport { hashQueryKeyByOptions, matchQuery } from \"./utils.js\";\nimport { Query } from \"./query.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar QueryCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = /* @__PURE__ */ new Map();\n }\n #queries;\n build(client, options, state) {\n const queryKey = options.queryKey;\n const queryHash = options.queryHash ?? hashQueryKeyByOptions(queryKey, options);\n let query = this.get(queryHash);\n if (!query) {\n query = new Query({\n client,\n queryKey,\n queryHash,\n options: client.defaultQueryOptions(options),\n state,\n defaultOptions: client.getQueryDefaults(queryKey)\n });\n this.add(query);\n }\n return query;\n }\n add(query) {\n if (!this.#queries.has(query.queryHash)) {\n this.#queries.set(query.queryHash, query);\n this.notify({\n type: \"added\",\n query\n });\n }\n }\n remove(query) {\n const queryInMap = this.#queries.get(query.queryHash);\n if (queryInMap) {\n query.destroy();\n if (queryInMap === query) {\n this.#queries.delete(query.queryHash);\n }\n this.notify({ type: \"removed\", query });\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n this.remove(query);\n });\n });\n }\n get(queryHash) {\n return this.#queries.get(queryHash);\n }\n getAll() {\n return [...this.#queries.values()];\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (query) => matchQuery(defaultedFilters, query)\n );\n }\n findAll(filters = {}) {\n const queries = this.getAll();\n return Object.keys(filters).length > 0 ? queries.filter((query) => matchQuery(filters, query)) : queries;\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n onFocus() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onFocus();\n });\n });\n }\n onOnline() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onOnline();\n });\n });\n }\n};\nexport {\n QueryCache\n};\n//# sourceMappingURL=queryCache.js.map","// src/queryClient.ts\nimport {\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n noop,\n partialMatchKey,\n resolveStaleTime,\n skipToken\n} from \"./utils.js\";\nimport { QueryCache } from \"./queryCache.js\";\nimport { MutationCache } from \"./mutationCache.js\";\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { infiniteQueryBehavior } from \"./infiniteQueryBehavior.js\";\nvar QueryClient = class {\n #queryCache;\n #mutationCache;\n #defaultOptions;\n #queryDefaults;\n #mutationDefaults;\n #mountCount;\n #unsubscribeFocus;\n #unsubscribeOnline;\n constructor(config = {}) {\n this.#queryCache = config.queryCache || new QueryCache();\n this.#mutationCache = config.mutationCache || new MutationCache();\n this.#defaultOptions = config.defaultOptions || {};\n this.#queryDefaults = /* @__PURE__ */ new Map();\n this.#mutationDefaults = /* @__PURE__ */ new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1) return;\n this.#unsubscribeFocus = focusManager.subscribe(async (focused) => {\n if (focused) {\n await this.resumePausedMutations();\n this.#queryCache.onFocus();\n }\n });\n this.#unsubscribeOnline = onlineManager.subscribe(async (online) => {\n if (online) {\n await this.resumePausedMutations();\n this.#queryCache.onOnline();\n }\n });\n }\n unmount() {\n this.#mountCount--;\n if (this.#mountCount !== 0) return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = void 0;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = void 0;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({ ...filters, fetchStatus: \"fetching\" }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({ ...filters, status: \"pending\" }).length;\n }\n /**\n * Imperative (non-reactive) way to retrieve data for a QueryKey.\n * Should only be used in callbacks or functions where reading the latest data is necessary, e.g. for optimistic updates.\n *\n * Hint: Do not use this function inside a component, because it won't receive updates.\n * Use `useQuery` to create a `QueryObserver` that subscribes to changes.\n */\n getQueryData(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(options.queryHash)?.state.data;\n }\n ensureQueryData(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n const query = this.#queryCache.build(this, defaultedOptions);\n const cachedData = query.state.data;\n if (cachedData === void 0) {\n return this.fetchQuery(options);\n }\n if (options.revalidateIfStale && query.isStaleByTime(resolveStaleTime(defaultedOptions.staleTime, query))) {\n void this.prefetchQuery(defaultedOptions);\n }\n return Promise.resolve(cachedData);\n }\n getQueriesData(filters) {\n return this.#queryCache.findAll(filters).map(({ queryKey, state }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const defaultedOptions = this.defaultQueryOptions({ queryKey });\n const query = this.#queryCache.get(\n defaultedOptions.queryHash\n );\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (data === void 0) {\n return void 0;\n }\n return this.#queryCache.build(this, defaultedOptions).setData(data, { ...options, manual: true });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(\n () => this.#queryCache.findAll(filters).map(({ queryKey }) => [\n queryKey,\n this.setQueryData(queryKey, updater, options)\n ])\n );\n }\n getQueryState(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(\n options.queryHash\n )?.state;\n }\n removeQueries(filters) {\n const queryCache = this.#queryCache;\n notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n queryCache.remove(query);\n });\n });\n }\n resetQueries(filters, options) {\n const queryCache = this.#queryCache;\n return notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n query.reset();\n });\n return this.refetchQueries(\n {\n type: \"active\",\n ...filters\n },\n options\n );\n });\n }\n cancelQueries(filters, cancelOptions = {}) {\n const defaultedCancelOptions = { revert: true, ...cancelOptions };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).map((query) => query.cancel(defaultedCancelOptions))\n );\n return Promise.all(promises).then(noop).catch(noop);\n }\n invalidateQueries(filters, options = {}) {\n return notifyManager.batch(() => {\n this.#queryCache.findAll(filters).forEach((query) => {\n query.invalidate();\n });\n if (filters?.refetchType === \"none\") {\n return Promise.resolve();\n }\n return this.refetchQueries(\n {\n ...filters,\n type: filters?.refetchType ?? filters?.type ?? \"active\"\n },\n options\n );\n });\n }\n refetchQueries(filters, options = {}) {\n const fetchOptions = {\n ...options,\n cancelRefetch: options.cancelRefetch ?? true\n };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).filter((query) => !query.isDisabled() && !query.isStatic()).map((query) => {\n let promise = query.fetch(void 0, fetchOptions);\n if (!fetchOptions.throwOnError) {\n promise = promise.catch(noop);\n }\n return query.state.fetchStatus === \"paused\" ? Promise.resolve() : promise;\n })\n );\n return Promise.all(promises).then(noop);\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n if (defaultedOptions.retry === void 0) {\n defaultedOptions.retry = false;\n }\n const query = this.#queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(\n resolveStaleTime(defaultedOptions.staleTime, query)\n ) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n }\n prefetchQuery(options) {\n return this.fetchQuery(options).then(noop).catch(noop);\n }\n fetchInfiniteQuery(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.fetchQuery(options);\n }\n prefetchInfiniteQuery(options) {\n return this.fetchInfiniteQuery(options).then(noop).catch(noop);\n }\n ensureInfiniteQueryData(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.ensureQueryData(options);\n }\n resumePausedMutations() {\n if (onlineManager.isOnline()) {\n return this.#mutationCache.resumePausedMutations();\n }\n return Promise.resolve();\n }\n getQueryCache() {\n return this.#queryCache;\n }\n getMutationCache() {\n return this.#mutationCache;\n }\n getDefaultOptions() {\n return this.#defaultOptions;\n }\n setDefaultOptions(options) {\n this.#defaultOptions = options;\n }\n setQueryDefaults(queryKey, options) {\n this.#queryDefaults.set(hashKey(queryKey), {\n queryKey,\n defaultOptions: options\n });\n }\n getQueryDefaults(queryKey) {\n const defaults = [...this.#queryDefaults.values()];\n const result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(queryKey, queryDefault.queryKey)) {\n Object.assign(result, queryDefault.defaultOptions);\n }\n });\n return result;\n }\n setMutationDefaults(mutationKey, options) {\n this.#mutationDefaults.set(hashKey(mutationKey), {\n mutationKey,\n defaultOptions: options\n });\n }\n getMutationDefaults(mutationKey) {\n const defaults = [...this.#mutationDefaults.values()];\n const result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(mutationKey, queryDefault.mutationKey)) {\n Object.assign(result, queryDefault.defaultOptions);\n }\n });\n return result;\n }\n defaultQueryOptions(options) {\n if (options._defaulted) {\n return options;\n }\n const defaultedOptions = {\n ...this.#defaultOptions.queries,\n ...this.getQueryDefaults(options.queryKey),\n ...options,\n _defaulted: true\n };\n if (!defaultedOptions.queryHash) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(\n defaultedOptions.queryKey,\n defaultedOptions\n );\n }\n if (defaultedOptions.refetchOnReconnect === void 0) {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== \"always\";\n }\n if (defaultedOptions.throwOnError === void 0) {\n defaultedOptions.throwOnError = !!defaultedOptions.suspense;\n }\n if (!defaultedOptions.networkMode && defaultedOptions.persister) {\n defaultedOptions.networkMode = \"offlineFirst\";\n }\n if (defaultedOptions.queryFn === skipToken) {\n defaultedOptions.enabled = false;\n }\n return defaultedOptions;\n }\n defaultMutationOptions(options) {\n if (options?._defaulted) {\n return options;\n }\n return {\n ...this.#defaultOptions.mutations,\n ...options?.mutationKey && this.getMutationDefaults(options.mutationKey),\n ...options,\n _defaulted: true\n };\n }\n clear() {\n this.#queryCache.clear();\n this.#mutationCache.clear();\n }\n};\nexport {\n QueryClient\n};\n//# sourceMappingURL=queryClient.js.map","\"use client\";\n\n// src/QueryClientProvider.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar QueryClientContext = React.createContext(\n void 0\n);\nvar useQueryClient = (queryClient) => {\n const client = React.useContext(QueryClientContext);\n if (queryClient) {\n return queryClient;\n }\n if (!client) {\n throw new Error(\"No QueryClient set, use QueryClientProvider to set one\");\n }\n return client;\n};\nvar QueryClientProvider = ({\n client,\n children\n}) => {\n React.useEffect(() => {\n client.mount();\n return () => {\n client.unmount();\n };\n }, [client]);\n return /* @__PURE__ */ jsx(QueryClientContext.Provider, { value: client, children });\n};\nexport {\n QueryClientContext,\n QueryClientProvider,\n useQueryClient\n};\n//# sourceMappingURL=QueryClientProvider.js.map","\"use client\";\n\n// src/IsRestoringProvider.ts\nimport * as React from \"react\";\nvar IsRestoringContext = React.createContext(false);\nvar useIsRestoring = () => React.useContext(IsRestoringContext);\nvar IsRestoringProvider = IsRestoringContext.Provider;\nexport {\n IsRestoringProvider,\n useIsRestoring\n};\n//# sourceMappingURL=IsRestoringProvider.js.map","\"use client\";\n\n// src/QueryErrorResetBoundary.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createValue() {\n let isReset = false;\n return {\n clearReset: () => {\n isReset = false;\n },\n reset: () => {\n isReset = true;\n },\n isReset: () => {\n return isReset;\n }\n };\n}\nvar QueryErrorResetBoundaryContext = React.createContext(createValue());\nvar useQueryErrorResetBoundary = () => React.useContext(QueryErrorResetBoundaryContext);\nvar QueryErrorResetBoundary = ({\n children\n}) => {\n const [value] = React.useState(() => createValue());\n return /* @__PURE__ */ jsx(QueryErrorResetBoundaryContext.Provider, { value, children: typeof children === \"function\" ? children(value) : children });\n};\nexport {\n QueryErrorResetBoundary,\n useQueryErrorResetBoundary\n};\n//# sourceMappingURL=QueryErrorResetBoundary.js.map","\"use client\";\n\n// src/errorBoundaryUtils.ts\nimport * as React from \"react\";\nimport { shouldThrowError } from \"@tanstack/query-core\";\nvar ensurePreventErrorBoundaryRetry = (options, errorResetBoundary, query) => {\n const throwOnError = query?.state.error && typeof options.throwOnError === \"function\" ? shouldThrowError(options.throwOnError, [query.state.error, query]) : options.throwOnError;\n if (options.suspense || options.experimental_prefetchInRender || throwOnError) {\n if (!errorResetBoundary.isReset()) {\n options.retryOnMount = false;\n }\n }\n};\nvar useClearResetErrorBoundary = (errorResetBoundary) => {\n React.useEffect(() => {\n errorResetBoundary.clearReset();\n }, [errorResetBoundary]);\n};\nvar getHasError = ({\n result,\n errorResetBoundary,\n throwOnError,\n query,\n suspense\n}) => {\n return result.isError && !errorResetBoundary.isReset() && !result.isFetching && query && (suspense && result.data === void 0 || shouldThrowError(throwOnError, [result.error, query]));\n};\nexport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n};\n//# sourceMappingURL=errorBoundaryUtils.js.map","// src/suspense.ts\nvar defaultThrowOnError = (_error, query) => query.state.data === void 0;\nvar ensureSuspenseTimers = (defaultedOptions) => {\n if (defaultedOptions.suspense) {\n const MIN_SUSPENSE_TIME_MS = 1e3;\n const clamp = (value) => value === \"static\" ? value : Math.max(value ?? MIN_SUSPENSE_TIME_MS, MIN_SUSPENSE_TIME_MS);\n const originalStaleTime = defaultedOptions.staleTime;\n defaultedOptions.staleTime = typeof originalStaleTime === \"function\" ? (...args) => clamp(originalStaleTime(...args)) : clamp(originalStaleTime);\n if (typeof defaultedOptions.gcTime === \"number\") {\n defaultedOptions.gcTime = Math.max(\n defaultedOptions.gcTime,\n MIN_SUSPENSE_TIME_MS\n );\n }\n }\n};\nvar willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;\nvar shouldSuspend = (defaultedOptions, result) => defaultedOptions?.suspense && result.isPending;\nvar fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).catch(() => {\n errorResetBoundary.clearReset();\n});\nexport {\n defaultThrowOnError,\n ensureSuspenseTimers,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n};\n//# sourceMappingURL=suspense.js.map","\"use client\";\n\n// src/useBaseQuery.ts\nimport * as React from \"react\";\nimport { isServer, noop, notifyManager } from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { useQueryErrorResetBoundary } from \"./QueryErrorResetBoundary.js\";\nimport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n} from \"./errorBoundaryUtils.js\";\nimport { useIsRestoring } from \"./IsRestoringProvider.js\";\nimport {\n ensureSuspenseTimers,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n} from \"./suspense.js\";\nfunction useBaseQuery(options, Observer, queryClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof options !== \"object\" || Array.isArray(options)) {\n throw new Error(\n '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'\n );\n }\n }\n const isRestoring = useIsRestoring();\n const errorResetBoundary = useQueryErrorResetBoundary();\n const client = useQueryClient(queryClient);\n const defaultedOptions = client.defaultQueryOptions(options);\n client.getDefaultOptions().queries?._experimental_beforeQuery?.(\n defaultedOptions\n );\n const query = client.getQueryCache().get(defaultedOptions.queryHash);\n if (process.env.NODE_ENV !== \"production\") {\n if (!defaultedOptions.queryFn) {\n console.error(\n `[${defaultedOptions.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`\n );\n }\n }\n defaultedOptions._optimisticResults = isRestoring ? \"isRestoring\" : \"optimistic\";\n ensureSuspenseTimers(defaultedOptions);\n ensurePreventErrorBoundaryRetry(defaultedOptions, errorResetBoundary, query);\n useClearResetErrorBoundary(errorResetBoundary);\n const isNewCacheEntry = !client.getQueryCache().get(defaultedOptions.queryHash);\n const [observer] = React.useState(\n () => new Observer(\n client,\n defaultedOptions\n )\n );\n const result = observer.getOptimisticResult(defaultedOptions);\n const shouldSubscribe = !isRestoring && options.subscribed !== false;\n React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => {\n const unsubscribe = shouldSubscribe ? observer.subscribe(notifyManager.batchCalls(onStoreChange)) : noop;\n observer.updateResult();\n return unsubscribe;\n },\n [observer, shouldSubscribe]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n React.useEffect(() => {\n observer.setOptions(defaultedOptions);\n }, [defaultedOptions, observer]);\n if (shouldSuspend(defaultedOptions, result)) {\n throw fetchOptimistic(defaultedOptions, observer, errorResetBoundary);\n }\n if (getHasError({\n result,\n errorResetBoundary,\n throwOnError: defaultedOptions.throwOnError,\n query,\n suspense: defaultedOptions.suspense\n })) {\n throw result.error;\n }\n ;\n client.getDefaultOptions().queries?._experimental_afterQuery?.(\n defaultedOptions,\n result\n );\n if (defaultedOptions.experimental_prefetchInRender && !isServer && willFetch(result, isRestoring)) {\n const promise = isNewCacheEntry ? (\n // Fetch immediately on render in order to ensure `.promise` is resolved even if the component is unmounted\n fetchOptimistic(defaultedOptions, observer, errorResetBoundary)\n ) : (\n // subscribe to the \"cache promise\" so that we can finalize the currentThenable once data comes in\n query?.promise\n );\n promise?.catch(noop).finally(() => {\n observer.updateResult();\n });\n }\n return !defaultedOptions.notifyOnChangeProps ? observer.trackResult(result) : result;\n}\nexport {\n useBaseQuery\n};\n//# sourceMappingURL=useBaseQuery.js.map","\"use client\";\n\n// src/useQuery.ts\nimport { QueryObserver } from \"@tanstack/query-core\";\nimport { useBaseQuery } from \"./useBaseQuery.js\";\nfunction useQuery(options, queryClient) {\n return useBaseQuery(options, QueryObserver, queryClient);\n}\nexport {\n useQuery\n};\n//# sourceMappingURL=useQuery.js.map","\"use client\";\n\n// src/useMutation.ts\nimport * as React from \"react\";\nimport {\n MutationObserver,\n noop,\n notifyManager,\n shouldThrowError\n} from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nfunction useMutation(options, queryClient) {\n const client = useQueryClient(queryClient);\n const [observer] = React.useState(\n () => new MutationObserver(\n client,\n options\n )\n );\n React.useEffect(() => {\n observer.setOptions(options);\n }, [observer, options]);\n const result = React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => observer.subscribe(notifyManager.batchCalls(onStoreChange)),\n [observer]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n const mutate = React.useCallback(\n (variables, mutateOptions) => {\n observer.mutate(variables, mutateOptions).catch(noop);\n },\n [observer]\n );\n if (result.error && shouldThrowError(observer.options.throwOnError, [result.error])) {\n throw result.error;\n }\n return { ...result, mutate, mutateAsync: result.mutate };\n}\nexport {\n useMutation\n};\n//# sourceMappingURL=useMutation.js.map"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","jsxRuntimeModule","require$$0","Subscribable","listener","defaultTimeoutProvider","callback","delay","timeoutId","intervalId","TimeoutManager","_a","__privateAdd","_provider","_providerCalled","provider","__privateSet","__privateGet","timeoutManager","systemSetTimeoutZero","isServer","noop","functionalUpdate","updater","input","isValidTimeout","value","timeUntilStale","updatedAt","staleTime","resolveStaleTime","query","resolveEnabled","enabled","matchQuery","filters","exact","fetchStatus","predicate","queryKey","stale","hashQueryKeyByOptions","partialMatchKey","isActive","matchMutation","mutation","status","mutationKey","hashKey","options","_","val","isPlainObject","result","a","b","hasOwn","replaceEqualDeep","depth","array","isPlainArray","aSize","bItems","bSize","copy","equalItems","i","aItem","bItem","v","shallowEqualObjects","o","hasObjectPrototype","ctor","prot","sleep","timeout","resolve","replaceData","prevData","data","addToEnd","items","item","max","newItems","addToStart","skipToken","ensureQueryFn","fetchOptions","shouldThrowError","throwOnError","params","addConsumeAwareSignal","object","getSignal","onCancelled","consumed","signal","FocusManager","_focused","_cleanup","_setup","onFocus","setup","focused","isFocused","focusManager","pendingThenable","reject","thenable","_resolve","_reject","finalize","reason","defaultScheduler","createNotifyManager","queue","transactions","notifyFn","batchNotifyFn","scheduleFn","schedule","flush","originalQueue","args","fn","notifyManager","OnlineManager","_online","onOnline","onlineListener","offlineListener","online","onlineManager","defaultRetryDelay","failureCount","canFetch","networkMode","CancelledError","createRetryer","isRetryCancelled","continueFn","isResolved","cancel","cancelOptions","error","cancelRetry","continueRetry","canContinue","canStart","pause","continueResolve","run","promiseOrValue","initialPromise","retry","retryDelay","shouldRetry","Removable","_gcTimeout","newGcTime","Query","_Query_instances","_initialState","_revertState","_cache","_client","_retryer","_defaultOptions","_abortSignalConsumed","getDefaultState","defaultState","successState","newData","__privateMethod","dispatch_fn","state","setStateOptions","promise","_b","observer","x","abortController","addSignalProperty","fetchFn","queryFn","queryFnContext","queryFnContext2","context","context2","_c","_d","_f","_e","_h","_g","_j","_i","_l","_k","action","reducer","fetchState","newState","dataUpdatedAt","hasData","initialDataUpdatedAt","QueryObserver","client","_QueryObserver_instances","_currentQuery","_currentQueryInitialState","_currentResult","_currentResultState","_currentResultOptions","_currentThenable","_selectError","_selectFn","_selectResult","_lastQueryWithDefinedData","_staleTimeoutId","_refetchIntervalId","_currentRefetchInterval","_trackedProps","shouldFetchOnMount","executeFetch_fn","updateTimers_fn","shouldFetchOn","clearStaleTimeout_fn","clearRefetchInterval_fn","prevOptions","prevQuery","updateQuery_fn","mounted","shouldFetchOptionally","updateStaleTimeout_fn","nextRefetchInterval","computeRefetchInterval_fn","updateRefetchInterval_fn","shouldAssignObserverCurrentProperties","onPropTracked","target","defaultedOptions","prevResult","prevResultState","prevResultOptions","queryInitialState","isPlaceholderData","fetchOnMount","fetchOptionally","errorUpdatedAt","skipSelect","placeholderData","selectError","isFetching","isPending","isError","isLoading","nextResult","isStale","hasResultData","isErrorWithoutData","finalizeThenableIfPossible","recreateThenable","pending","prevThenable","shouldNotifyListeners","notifyOnChangeProps","notifyOnChangePropsValue","includedProps","typedKey","notify_fn","nextInterval","notifyOptions","shouldLoadOnMount","field","optimisticResult","infiniteQueryBehavior","pages","direction","oldPages","oldPageParams","currentPage","cancelled","fetchPage","param","previous","page","maxPages","addTo","pageParamFn","getPreviousPageParam","getNextPageParam","oldData","remainingPages","pageParams","lastIndex","Mutation","_Mutation_instances","_observers","_mutationCache","variables","onContinue","mutationFnContext","restored","isPaused","e","_n","_m","_p","_o","_r","_q","MutationCache","_mutations","_scopes","_mutationId","__privateWrapper","scope","scopeFor","scopedMutations","index","mutationsWithSameScope","firstPendingMutation","m","foundMutation","defaultedFilters","event","pausedMutations","MutationObserver","_MutationObserver_instances","_currentMutation","_mutateOptions","updateResult_fn","onMutateResult","QueryCache","_queries","queryHash","queryInMap","queries","QueryClient","_queryCache","_queryDefaults","_mutationDefaults","_mountCount","_unsubscribeFocus","_unsubscribeOnline","cachedData","queryCache","defaultedCancelOptions","promises","defaults","queryDefault","QueryClientContext","React.createContext","useQueryClient","queryClient","React.useContext","QueryClientProvider","children","React.useEffect","jsx","IsRestoringContext","useIsRestoring","createValue","isReset","QueryErrorResetBoundaryContext","useQueryErrorResetBoundary","ensurePreventErrorBoundaryRetry","errorResetBoundary","useClearResetErrorBoundary","getHasError","suspense","ensureSuspenseTimers","clamp","originalStaleTime","willFetch","isRestoring","shouldSuspend","fetchOptimistic","useBaseQuery","Observer","isNewCacheEntry","React.useState","shouldSubscribe","React.useSyncExternalStore","React.useCallback","onStoreChange","unsubscribe","useQuery","useMutation","mutate","mutateOptions"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}