@studiolambda/query 1.3.0 → 1.4.0
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.
- package/dist/query.cjs +1 -1
- package/dist/query.cjs.map +1 -1
- package/dist/query.js +147 -123
- package/dist/query.js.map +1 -1
- package/dist/query_react.cjs +21 -1
- package/dist/query_react.cjs.map +1 -1
- package/dist/query_react.js +395 -304
- package/dist/query_react.js.map +1 -1
- package/dist/src/react/components/QueryPrefetch.d.ts +1 -1
- package/package.json +23 -18
- package/dist/src/react/_internal.d.ts +0 -1
package/dist/query_react.cjs
CHANGED
|
@@ -1,2 +1,22 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";var oe=Object.defineProperty;var s=(t,e)=>oe(t,"name",{value:e,configurable:!0});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),T=require("react/jsx-runtime"),ue=require("./query.cjs"),I=o.createContext({query:void 0,clearOnForget:void 0,ignoreTransitionContext:void 0});function A(){return o.useDebugValue("useQueryContext"),o.use(I)}s(A,"useQueryContext");function E(t){o.useDebugValue("useQueryInstance");const{query:e}=A(),{query:r}=t??{};return o.useMemo(function(){const n=r??e;if(!n)throw new Error("No query instance was found. Please provide one via the resource options or the query context.");return n},[r,e])}s(E,"useQueryInstance");function U(t,e){o.useDebugValue("useQueryActions");const{expiration:r,fetcher:n,stale:u,removeOnError:i,fresh:a}=e??{},{query:c,mutate:f,forget:l}=E(e),d=o.useCallback(function(g){return c(t,{stale:u??!1,expiration:r,fetcher:n,removeOnError:i,fresh:a,...g})},[c,t,r,n,u,i,a]),m=o.useCallback(function(g,v){return f(t,g,v)},[f,t]),h=o.useCallback(async function(){await l(t)},[l,t]);return o.useMemo(function(){return{refetch:d,mutate:m,forget:h}},[d,m,h])}s(U,"useQueryActions");function B(t,e){o.useDebugValue("useQueryStatus");const{expiration:r,subscribe:n}=E(e),[u,i]=o.useState(()=>r(t)??new Date),[a,c]=o.useState(()=>Date.now()>u.getTime()),[f,l]=o.useState(!1),[d,m]=o.useState(!1);return o.useEffect(function(){function h(){c(!0)}s(h,"handler");const g=setTimeout(h,u.getTime()-Date.now());return function(){clearTimeout(g)}},[u]),o.useEffect(function(){function h(){m(!0)}s(h,"onMutating");function g(){m(!1),i(r(t)??new Date)}s(g,"onMutated");function v(){i(r(t)??new Date)}s(v,"onHydrated");function C(){i(r(t)??new Date),l(!1)}s(C,"onResolved");function D(){i(r(t)??new Date)}s(D,"onForgotten");function x(){l(!0)}s(x,"onRefetching");function y(){l(!1),m(!1)}s(y,"onError");const Q=n(t,"mutating",h),b=n(t,"mutated",g),_=n(t,"hydrated",v),S=n(t,"resolved",C),O=n(t,"forgotten",D),R=n(t,"refetching",x),N=n(t,"error",y);return function(){Q(),b(),_(),S(),O(),R(),N()}},[t,n,r,i]),o.useMemo(function(){return{expiresAt:u,isExpired:a,isRefetching:f,isMutating:d}},[u,a,f,d])}s(B,"useQueryStatus");const H=o.createContext({isPending:void 0,startTransition:void 0});function Y(){return o.useDebugValue("useQueryTransitionContext"),o.use(H)}s(Y,"useQueryTransitionContext");function G(t,e){o.useDebugValue("useQueryBasic");const{clearOnForget:r,ignoreTransitionContext:n}=A(),{clearOnForget:u,ignoreTransitionContext:i,expiration:a,fetcher:c,stale:f,removeOnError:l,fresh:d}=e??{},{isPending:m,startTransition:h}=Y(),[g,v]=o.useTransition(),{query:C,expiration:D,subscribe:x}=E(e),y=o.useMemo(function(){return i??n??!1},[i,n]),Q=o.useMemo(function(){return y?g:m??g},[m,g,y]),b=o.useMemo(function(){return y?v:h??v},[h,v,y]),_=o.useMemo(function(){return u??r??!1},[u,r]),S=o.useMemo(function(){return C(t,{expiration:a,fetcher:c,stale:f,removeOnError:l,fresh:d})},[C,t,a,c,f,l,d]),[O,R]=o.useState(o.use(S));return o.useEffect(function(){function N(p){b(function(){R(p.detail)})}s(N,"onResolved");function W(p){b(async function(){const P=await p.detail;b(function(){R(P)})})}s(W,"onMutating");function z(p){b(function(){R(p.detail)})}s(z,"onMutated");function J(p){b(function(){R(p.detail)})}s(J,"onHydrated");function K(p){b(async function(){const P=await p.detail;b(function(){R(P)})})}s(K,"onRefetching");function X(){_&&b(async function(){const p=await C(t,{expiration:a,fetcher:c,stale:f,removeOnError:l,fresh:d});b(function(){R(p)})})}s(X,"onForgotten");const Z=x(t,"resolved",N),k=x(t,"mutating",W),ee=x(t,"mutated",z),te=x(t,"hydrated",J),ne=x(t,"refetching",K),re=x(t,"forgotten",X);return function(){Z(),k(),ee(),te(),ne(),re()}},[C,D,x,t,_,a,c,f,l,d,b]),o.useMemo(function(){return{data:O,isPending:Q}},[O,Q])}s(G,"useQueryBasic");function se(t,e){o.useDebugValue("useQuery");const r=G(t,e),n=U(t,e),u=B(t,e);return o.useMemo(function(){return{...r,...n,...u}},[r,n,u])}s(se,"useQuery");function V(t,e){o.useDebugValue("useQueryPrefetch");const{query:r}=E(e);o.useEffect(function(){for(const n of t)r(n)},[r,t])}s(V,"useQueryPrefetch");var M={exports:{}},w={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react-compiler-runtime.production.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var $;function ie(){if($)return w;$=1;var t=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;return w.c=function(e){return t.H.useMemoCache(e)},w}s(ie,"requireReactCompilerRuntime_production");var F={};/**
|
|
10
|
+
* @license React
|
|
11
|
+
* react-compiler-runtime.development.js
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/var j;function ce(){return j||(j=1,process.env.NODE_ENV!=="production"&&(function(){var t=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;F.c=function(e){var r=t.H;return r===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
|
|
18
|
+
1. You might have mismatching versions of React and the renderer (such as React DOM)
|
|
19
|
+
2. You might be breaking the Rules of Hooks
|
|
20
|
+
3. You might have more than one copy of React in the same app
|
|
21
|
+
See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),r.useMemoCache(e)}})()),F}s(ce,"requireReactCompilerRuntime_development");var L;function ae(){return L||(L=1,process.env.NODE_ENV==="production"?M.exports=ie():M.exports=ce()),M.exports}s(ae,"requireCompilerRuntime");var q=ae();function fe(t){const e=q.c(12),{children:r,clearOnForget:n,ignoreTransitionContext:u,query:i}=t;let a;e[0]!==i?(a=i??ue.createQuery(),e[0]=i,e[1]=a):a=e[1];const c=a;let f,l;e[2]!==c?(f=s(function(){const g=new BroadcastChannel("query");c.configure({broadcast:g});const v=c.subscribeBroadcast();return function(){v(),g.close()}},"t2"),l=[c],e[2]=c,e[3]=f,e[4]=l):(f=e[3],l=e[4]),o.useEffect(f,l);let d;e[5]!==n||e[6]!==u||e[7]!==c?(d={query:c,clearOnForget:n,ignoreTransitionContext:u},e[5]=n,e[6]=u,e[7]=c,e[8]=d):d=e[8];const m=d;let h;return e[9]!==r||e[10]!==m?(h=T.jsx(I,{value:m,children:r}),e[9]=r,e[10]=m,e[11]=h):h=e[11],h}s(fe,"QueryProvider");function le(t){const e=q.c(6),{children:r,startTransition:n,isPending:u}=t;let i;e[0]!==u||e[1]!==n?(i={startTransition:n,isPending:u},e[0]=u,e[1]=n,e[2]=i):i=e[2];const a=i;let c;return e[3]!==r||e[4]!==a?(c=T.jsx(H,{value:a,children:r}),e[3]=r,e[4]=a,e[5]=c):c=e[5],c}s(le,"QueryTransition");function de(t){const e=q.c(2),{keys:r,query:n,children:u}=t;let i;return e[0]!==n?(i={query:n},e[0]=n,e[1]=i):i=e[1],V(r,i),u}s(de,"QueryPrefetch");function he(t){const e=q.c(12);let r,n,u;e[0]!==t?({keys:n,children:r,...u}=t,e[0]=t,e[1]=r,e[2]=n,e[3]=u):(r=e[1],n=e[2],u=e[3]),V(n,u);let i;if(e[4]!==n||e[5]!==u){let f;e[7]!==u?(f=s(l=>T.jsx("link",{rel:"preload",href:l,as:"fetch",...u}),"t22"),e[7]=u,e[8]=f):f=e[8],i=n.map(f),e[4]=n,e[5]=u,e[6]=i}else i=e[6];const a=i;let c;return e[9]!==r||e[10]!==a?(c=T.jsxs(T.Fragment,{children:[a,r]}),e[9]=r,e[10]=a,e[11]=c):c=e[11],c}s(he,"QueryPrefetchTags");exports.Context=I;exports.QueryPrefetch=de;exports.QueryPrefetchTags=he;exports.QueryProvider=fe;exports.QueryTransition=le;exports.TransitionContext=H;exports.useQuery=se;exports.useQueryActions=U;exports.useQueryBasic=G;exports.useQueryContext=A;exports.useQueryInstance=E;exports.useQueryPrefetch=V;exports.useQueryStatus=B;exports.useQueryTransitionContext=Y;
|
|
2
22
|
//# sourceMappingURL=query_react.cjs.map
|
package/dist/query_react.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query_react.cjs","sources":["../src/react/context.ts","../src/react/hooks/useQueryContext.ts","../src/react/hooks/useQueryInstance.ts","../src/react/hooks/useQueryActions.ts","../src/react/hooks/useQueryStatus.ts","../src/react/transition.ts","../src/react/hooks/useQueryTransitionContext.ts","../src/react/hooks/useQueryBasic.ts","../src/react/hooks/useQuery.ts","../src/react/_internal.ts","../src/react/hooks/useQueryPrefetch.ts","../src/react/components/QueryProvider.tsx","../src/react/components/QueryTransition.tsx","../src/react/components/QueryPrefetch.tsx","../src/react/components/QueryPrefetchTags.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { type QueryInstance } from './hooks/useQueryInstance'\n\nexport interface ContextValue extends QueryInstance {\n readonly clearOnForget?: boolean\n readonly ignoreTransitionContext?: boolean\n}\n\nexport const Context = createContext<ContextValue>({\n query: undefined,\n clearOnForget: undefined,\n ignoreTransitionContext: undefined,\n})\n","import { Context, type ContextValue } from 'query/react:context'\nimport { use, useDebugValue } from 'react'\n\nexport function useQueryContext(): ContextValue {\n useDebugValue('useQueryContext')\n\n return use(Context)\n}\n","import { type Query } from 'query:index'\nimport { useQueryContext } from 'query/react:hooks/useQueryContext'\nimport { useDebugValue, useMemo } from 'react'\n\nexport interface QueryInstance {\n readonly query?: Query\n}\n\nexport function useQueryInstance(options?: QueryInstance): Query {\n useDebugValue('useQueryInstance')\n\n const { query: cQuery } = useQueryContext()\n const { query: oQuery } = options ?? {}\n\n function query() {\n const instance = oQuery ?? cQuery\n\n if (!instance) {\n throw new Error(\n 'No query instance was found. Please provide one via the resource options or the query context.'\n )\n }\n\n return instance\n }\n\n return useMemo(query, [oQuery, cQuery])\n}\n","import { type MutateOptions, type MutationValue, type Options } from 'query:index'\nimport { useCallback, useDebugValue, useMemo } from 'react'\nimport { useQueryInstance, type QueryInstance } from './useQueryInstance'\n\nexport interface QueryActions<T = unknown> {\n readonly refetch: (refetchOptions?: Options<T>) => Promise<T>\n readonly mutate: (value: MutationValue<T>, options?: MutateOptions<T>) => Promise<T>\n readonly forget: () => void\n}\n\nexport type QueryActionsOptions<T = unknown> = Options<T> & QueryInstance\n\nexport function useQueryActions<T = unknown>(\n key: string,\n options?: QueryActionsOptions<T>\n): QueryActions<T> {\n useDebugValue('useQueryActions')\n\n const {\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n } = options ?? {}\n\n const { query, mutate, forget } = useQueryInstance(options)\n\n function refetchHandler(refetchOptions?: Options<T>) {\n return query<T>(key, {\n stale: oStale ?? false,\n expiration: oExpiration,\n fetcher: oFetcher,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n ...refetchOptions,\n })\n }\n\n const refetch = useCallback(refetchHandler, [\n query,\n key,\n oExpiration,\n oFetcher,\n oStale,\n oRemoveOnError,\n oFresh,\n ])\n\n function mutateHandler<T = unknown>(value: MutationValue<T>, options?: MutateOptions<T>) {\n return mutate(key, value, options)\n }\n\n const localMutate = useCallback(mutateHandler, [mutate, key])\n\n async function forgetHandler() {\n await forget(key)\n }\n\n const localForget = useCallback(forgetHandler, [forget, key])\n\n function actionsHandler() {\n return { refetch, mutate: localMutate, forget: localForget }\n }\n\n return useMemo(actionsHandler, [refetch, localMutate, localForget])\n}\n","import { useDebugValue, useEffect, useMemo, useState } from 'react'\nimport { useQueryInstance, type QueryInstance } from './useQueryInstance'\n\nexport interface Status {\n readonly expiresAt: Date\n readonly isExpired: boolean\n readonly isRefetching: boolean\n readonly isMutating: boolean\n}\n\nexport function useQueryStatus(key: string, options?: QueryInstance): Status {\n useDebugValue('useQueryStatus')\n\n const { expiration, subscribe } = useQueryInstance(options)\n const [expiresAt, setExpiresAt] = useState<Date>(expiration(key) ?? new Date())\n const [isExpired, setIsExpired] = useState(Date.now() > expiresAt.getTime())\n const [isRefetching, setIsRefetching] = useState(false)\n const [isMutating, setIsMutating] = useState(false)\n\n function expirationHandler() {\n if (Date.now() >= expiresAt.getTime()) {\n setIsExpired(true)\n return\n }\n\n setIsExpired(false)\n\n function handler() {\n setIsExpired(true)\n }\n\n const id = setTimeout(handler, expiresAt.getTime() - Date.now())\n\n return function () {\n clearTimeout(id)\n }\n }\n\n useEffect(expirationHandler, [expiresAt])\n\n function subscribeHandler() {\n function onMutating() {\n setIsMutating(true)\n }\n\n function onMutated() {\n setIsMutating(false)\n setExpiresAt(expiration(key) ?? new Date())\n }\n\n function onHydrated() {\n setExpiresAt(expiration(key) ?? new Date())\n }\n\n function onResolved() {\n setExpiresAt(expiration(key) ?? new Date())\n setIsRefetching(false)\n }\n\n function onForgotten() {\n setExpiresAt(expiration(key) ?? new Date())\n }\n\n function onRefetching() {\n setIsRefetching(true)\n }\n\n function onError() {\n setIsRefetching(false)\n setIsMutating(false)\n }\n\n const unsubscribeMutating = subscribe(key, 'mutating', onMutating)\n const unsubscribeMutated = subscribe(key, 'mutated', onMutated)\n const unsubscribeHydrated = subscribe(key, 'hydrated', onHydrated)\n const unsubscribeResolved = subscribe(key, 'resolved', onResolved)\n const unsubscribeForgotten = subscribe(key, 'forgotten', onForgotten)\n const unsubscribeRefetching = subscribe(key, 'refetching', onRefetching)\n const unsubscribeError = subscribe(key, 'error', onError)\n\n return function () {\n unsubscribeMutating()\n unsubscribeMutated()\n unsubscribeHydrated()\n unsubscribeResolved()\n unsubscribeForgotten()\n unsubscribeRefetching()\n unsubscribeError()\n }\n }\n\n useEffect(subscribeHandler, [key, subscribe, expiration, setExpiresAt])\n\n function statusHandler() {\n return { expiresAt, isExpired, isRefetching, isMutating }\n }\n\n return useMemo(statusHandler, [expiresAt, isExpired, isRefetching, isMutating])\n}\n","import { createContext, type TransitionStartFunction } from 'react'\n\nexport interface QueryTransitionContextValue {\n readonly isPending?: boolean\n readonly startTransition?: TransitionStartFunction\n}\n\nexport const TransitionContext = createContext<QueryTransitionContextValue>({\n isPending: undefined,\n startTransition: undefined,\n})\n","import { TransitionContext, type QueryTransitionContextValue } from 'query/react:transition'\nimport { use, useDebugValue } from 'react'\n\nexport function useQueryTransitionContext(): QueryTransitionContextValue {\n useDebugValue('useQueryTransitionContext')\n\n return use(TransitionContext)\n}\n","import { useEffect, use, useState, useMemo, useDebugValue, useTransition } from 'react'\nimport { type ContextValue } from 'query/react:context'\nimport { type Options } from 'query:index'\nimport { useQueryContext } from './useQueryContext'\nimport { useQueryInstance, type QueryInstance } from './useQueryInstance'\nimport { useQueryTransitionContext } from './useQueryTransitionContext'\n\nexport interface BasicResource<T = unknown> {\n data: T\n isPending: boolean\n}\n\nexport type BasicResourceOptions<T = unknown> = ContextValue & Options<T> & QueryInstance\n\nexport function useQueryBasic<T = unknown>(\n key: string,\n options?: BasicResourceOptions<T>\n): BasicResource<T> {\n useDebugValue('useQueryBasic')\n\n const { clearOnForget: cClearOnForget, ignoreTransitionContext: cIgnoreTransitionContext } =\n useQueryContext()\n\n const {\n clearOnForget: oClearOnForget,\n ignoreTransitionContext: oIgnoreTransitionContext,\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n } = options ?? {}\n\n const { isPending: isContextPending, startTransition: startContextTransition } =\n useQueryTransitionContext()\n\n const [isLocalPending, startLocalTransition] = useTransition()\n const { query, expiration, subscribe } = useQueryInstance(options)\n\n function ignoreTransitionContextHandler() {\n return oIgnoreTransitionContext ?? cIgnoreTransitionContext ?? false\n }\n\n const ignoreTransitionContext = useMemo(ignoreTransitionContextHandler, [\n oIgnoreTransitionContext,\n cIgnoreTransitionContext,\n ])\n\n function isPendingHandler() {\n if (ignoreTransitionContext) {\n return isLocalPending\n }\n\n return isContextPending ?? isLocalPending\n }\n\n const isPending = useMemo(isPendingHandler, [\n isContextPending,\n isLocalPending,\n ignoreTransitionContext,\n ])\n\n function startTransitionHandler() {\n if (ignoreTransitionContext) {\n return startLocalTransition\n }\n\n return startContextTransition ?? startLocalTransition\n }\n\n const startTransition = useMemo(startTransitionHandler, [\n startContextTransition,\n startLocalTransition,\n ignoreTransitionContext,\n ])\n\n function clearOnForgetHandler() {\n return oClearOnForget ?? cClearOnForget ?? false\n }\n\n const clearOnForget = useMemo(clearOnForgetHandler, [oClearOnForget, cClearOnForget])\n\n function promiseHandler() {\n return query<T>(key, {\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n })\n }\n\n const promise = useMemo(promiseHandler, [\n query,\n key,\n oExpiration,\n oFetcher,\n oStale,\n oRemoveOnError,\n oFresh,\n ])\n\n const [data, setData] = useState<T>(use(promise))\n\n function subscribeHandler() {\n function onResolved(event: CustomEventInit<T>) {\n startTransition(function () {\n setData(event.detail as T)\n })\n }\n\n function onMutating(event: CustomEventInit<Promise<T>>) {\n startTransition(async function () {\n const value = await (event.detail as Promise<T>)\n\n startTransition(function () {\n setData(value)\n })\n })\n }\n\n function onMutated(event: CustomEventInit<T>) {\n startTransition(function () {\n setData(event.detail as T)\n })\n }\n\n function onHydrated(event: CustomEventInit<T>) {\n startTransition(function () {\n setData(event.detail as T)\n })\n }\n\n function onRefetching(event: CustomEventInit<Promise<T>>) {\n startTransition(async function () {\n const value = await (event.detail as Promise<T>)\n\n startTransition(function () {\n setData(value)\n })\n })\n }\n\n function onForgotten() {\n if (clearOnForget) {\n startTransition(async function () {\n const data = await query<T>(key, {\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n })\n\n startTransition(function () {\n setData(data)\n })\n })\n }\n }\n\n const unsubscribeResolved = subscribe(key, 'resolved', onResolved)\n const unsubscribeMutating = subscribe(key, 'mutating', onMutating)\n const unsubscribeMutated = subscribe(key, 'mutated', onMutated)\n const unsubscribeHydrated = subscribe(key, 'hydrated', onHydrated)\n const unsubscribeRefetching = subscribe(key, 'refetching', onRefetching)\n const unsubscribeForgotten = subscribe(key, 'forgotten', onForgotten)\n\n return function () {\n unsubscribeResolved()\n unsubscribeMutating()\n unsubscribeMutated()\n unsubscribeHydrated()\n unsubscribeRefetching()\n unsubscribeForgotten()\n }\n }\n\n useEffect(subscribeHandler, [\n query,\n expiration,\n subscribe,\n key,\n clearOnForget,\n oExpiration,\n oFetcher,\n oStale,\n oRemoveOnError,\n oFresh,\n startTransition,\n ])\n\n function resourceHandler(): BasicResource<T> {\n return { data, isPending }\n }\n\n return useMemo(resourceHandler, [data, isPending])\n}\n","import { useMemo, useDebugValue } from 'react'\nimport { type ContextValue } from 'query/react:context'\nimport { type Options } from 'query:index'\nimport { type QueryInstance } from './useQueryInstance'\nimport { useQueryActions, type QueryActions } from './useQueryActions'\nimport { useQueryStatus, type Status } from './useQueryStatus'\nimport { useQueryBasic, type BasicResource } from './useQueryBasic'\n\ntype AdditionalHooks<T> = QueryActions<T> & BasicResource<T> & Status\n\nexport interface Resource<T = unknown> extends AdditionalHooks<T> {\n data: T\n isPending: boolean\n}\n\nexport type ResourceOptions<T = unknown> = ContextValue & Options<T> & QueryInstance\n\nexport function useQuery<T = unknown>(key: string, options?: ResourceOptions<T>): Resource<T> {\n useDebugValue('useQuery')\n\n const basic = useQueryBasic<T>(key, options)\n const actions = useQueryActions<T>(key, options)\n const status = useQueryStatus(key, options)\n\n function resourceHandler(): Resource<T> {\n return { ...basic, ...actions, ...status }\n }\n\n return useMemo(resourceHandler, [basic, actions, status])\n}\n","import { useMemo, useRef } from 'react'\n\nfunction keysEqual<T>(arr1: T[], arr2: T[]): boolean {\n if (arr1.length !== arr2.length) {\n return false\n }\n\n return arr1.every((value, index) => value === arr2[index])\n}\n\nexport function useStableKeys(keys: string[]) {\n const prevKeysRef = useRef<string[]>([])\n\n function stableKeysHandler() {\n if (!keysEqual(prevKeysRef.current, keys)) {\n prevKeysRef.current = keys\n }\n\n return prevKeysRef.current\n }\n\n return useMemo(stableKeysHandler, [keys])\n}\n","import { useDebugValue, useMemo } from 'react'\nimport { QueryInstance, useQueryInstance } from './useQueryInstance'\nimport { useStableKeys } from 'query/react:_internal'\n\nexport function useQueryPrefetch(keys: string[], options?: QueryInstance) {\n useDebugValue('useQueryPrefetch')\n\n const stableKeys = useStableKeys(keys)\n const { query } = useQueryInstance(options)\n\n void useMemo(() => stableKeys.map((key) => query(key)), [query, stableKeys])\n}\n","import { useEffect, useMemo, type ReactNode } from 'react'\nimport { Context, type ContextValue } from 'query/react:context'\nimport { createQuery, type Query } from 'query:index'\n\nexport interface QueryProviderProps extends ContextValue {\n children?: ReactNode\n}\n\nexport function QueryProvider({\n children,\n clearOnForget,\n ignoreTransitionContext,\n query,\n}: QueryProviderProps) {\n function queryInstance() {\n return query ?? createQuery()\n }\n\n const localQuery = useMemo<Query>(queryInstance, [query])\n\n function broadcastCleanup() {\n if (localQuery.broadcast()) {\n const unsubscribe = localQuery.subscribeBroadcast()\n\n return function () {\n unsubscribe()\n }\n }\n\n const channel = new BroadcastChannel('query')\n\n localQuery.configure({ broadcast: channel })\n const unsubscribe = localQuery.subscribeBroadcast()\n\n return function () {\n unsubscribe()\n channel.close()\n }\n }\n\n useEffect(broadcastCleanup, [localQuery])\n\n function valueHandler(): ContextValue {\n return { query, clearOnForget, ignoreTransitionContext }\n }\n\n const value = useMemo(valueHandler, [query, clearOnForget, ignoreTransitionContext])\n\n return <Context value={value}>{children}</Context>\n}\n","import { TransitionContext, type QueryTransitionContextValue } from 'query/react:transition'\nimport { useMemo, type ReactNode, type TransitionStartFunction } from 'react'\n\nexport interface QueryTransitionProps {\n isPending: boolean\n startTransition: TransitionStartFunction\n children?: ReactNode\n}\n\nexport function QueryTransition({ children, startTransition, isPending }: QueryTransitionProps) {\n function valueHandler(): QueryTransitionContextValue {\n return { startTransition, isPending }\n }\n\n const value = useMemo(valueHandler, [startTransition, isPending])\n\n return <TransitionContext value={value}>{children}</TransitionContext>\n}\n","import type { QueryInstance } from 'query/react:hooks/useQueryInstance'\nimport { useQueryPrefetch } from 'query/react:hooks/useQueryPrefetch'\nimport { ReactNode } from 'react'\n\nexport interface QueryPrefetchProps extends QueryInstance {\n keys: string[]\n children?: ReactNode\n}\n\nexport function QueryPrefetch({ keys, query, children }: QueryPrefetchProps) {\n useQueryPrefetch(keys, { query })\n\n return children\n}\n","import { useStableKeys } from 'query/react:_internal'\nimport type { QueryInstance } from 'query/react:hooks/useQueryInstance'\nimport { useQueryPrefetch } from 'query/react:hooks/useQueryPrefetch'\nimport { ReactNode, useMemo, LinkHTMLAttributes } from 'react'\n\ntype Additional = LinkHTMLAttributes<HTMLLinkElement> & QueryInstance\n\nexport interface QueryPrefetchTagsProps extends Additional {\n keys: string[]\n children?: ReactNode\n}\n\nexport function QueryPrefetchTags({ keys, children, ...options }: QueryPrefetchTagsProps) {\n useQueryPrefetch(keys, options)\n\n const stableKeys = useStableKeys(keys)\n\n function tagsHandler() {\n return stableKeys.map((key) => <link rel=\"preload\" href={key} as=\"fetch\" {...options} />)\n }\n\n const tags = useMemo(tagsHandler, [stableKeys, options])\n\n return (\n <>\n {tags}\n {children}\n </>\n )\n}\n"],"names":["Context","createContext","useQueryContext","useDebugValue","use","useQueryInstance","options","cQuery","oQuery","query","instance","useMemo","useQueryActions","key","oExpiration","oFetcher","oStale","oRemoveOnError","oFresh","mutate","forget","refetchHandler","refetchOptions","refetch","useCallback","mutateHandler","value","localMutate","forgetHandler","localForget","actionsHandler","useQueryStatus","expiration","subscribe","expiresAt","setExpiresAt","useState","isExpired","setIsExpired","isRefetching","setIsRefetching","isMutating","setIsMutating","expirationHandler","handler","id","useEffect","subscribeHandler","onMutating","onMutated","onHydrated","onResolved","onForgotten","onRefetching","onError","unsubscribeMutating","unsubscribeMutated","unsubscribeHydrated","unsubscribeResolved","unsubscribeForgotten","unsubscribeRefetching","unsubscribeError","statusHandler","TransitionContext","useQueryTransitionContext","useQueryBasic","cClearOnForget","cIgnoreTransitionContext","oClearOnForget","oIgnoreTransitionContext","isContextPending","startContextTransition","isLocalPending","startLocalTransition","useTransition","ignoreTransitionContextHandler","ignoreTransitionContext","isPendingHandler","isPending","startTransitionHandler","startTransition","clearOnForgetHandler","clearOnForget","promiseHandler","promise","data","setData","event","resourceHandler","useQuery","basic","actions","status","keysEqual","arr1","arr2","index","useStableKeys","keys","prevKeysRef","useRef","stableKeysHandler","useQueryPrefetch","stableKeys","QueryProvider","children","queryInstance","createQuery","localQuery","broadcastCleanup","unsubscribe","channel","valueHandler","jsx","QueryTransition","QueryPrefetch","QueryPrefetchTags","tagsHandler","tags","jsxs","Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query_react.cjs","sources":["../src/react/context.ts","../src/react/hooks/useQueryContext.ts","../src/react/hooks/useQueryInstance.ts","../src/react/hooks/useQueryActions.ts","../src/react/hooks/useQueryStatus.ts","../src/react/transition.ts","../src/react/hooks/useQueryTransitionContext.ts","../src/react/hooks/useQueryBasic.ts","../src/react/hooks/useQuery.ts","../src/react/hooks/useQueryPrefetch.ts","../node_modules/react/cjs/react-compiler-runtime.production.js","../node_modules/react/cjs/react-compiler-runtime.development.js","../node_modules/react/compiler-runtime.js","../src/react/components/QueryProvider.tsx","../src/react/components/QueryTransition.tsx","../src/react/components/QueryPrefetch.tsx","../src/react/components/QueryPrefetchTags.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { type QueryInstance } from './hooks/useQueryInstance'\n\nexport interface ContextValue extends QueryInstance {\n readonly clearOnForget?: boolean\n readonly ignoreTransitionContext?: boolean\n}\n\nexport const Context = createContext<ContextValue>({\n query: undefined,\n clearOnForget: undefined,\n ignoreTransitionContext: undefined,\n})\n","import { Context, type ContextValue } from 'query/react:context'\nimport { use, useDebugValue } from 'react'\n\nexport function useQueryContext(): ContextValue {\n useDebugValue('useQueryContext')\n\n return use(Context)\n}\n","import { type Query } from 'query:index'\nimport { useQueryContext } from 'query/react:hooks/useQueryContext'\nimport { useDebugValue, useMemo } from 'react'\n\nexport interface QueryInstance {\n readonly query?: Query\n}\n\nexport function useQueryInstance(options?: QueryInstance): Query {\n useDebugValue('useQueryInstance')\n\n const { query: cQuery } = useQueryContext()\n const { query: oQuery } = options ?? {}\n\n return useMemo(\n function () {\n const instance = oQuery ?? cQuery\n\n if (!instance) {\n throw new Error(\n 'No query instance was found. Please provide one via the resource options or the query context.'\n )\n }\n\n return instance\n },\n [oQuery, cQuery]\n )\n}\n","import { type MutateOptions, type MutationValue, type Options } from 'query:index'\nimport { useCallback, useDebugValue, useMemo } from 'react'\nimport { useQueryInstance, type QueryInstance } from './useQueryInstance'\n\nexport interface QueryActions<T = unknown> {\n readonly refetch: (refetchOptions?: Options<T>) => Promise<T>\n readonly mutate: (value: MutationValue<T>, options?: MutateOptions<T>) => Promise<T>\n readonly forget: () => void\n}\n\nexport type QueryActionsOptions<T = unknown> = Options<T> & QueryInstance\n\nexport function useQueryActions<T = unknown>(\n key: string,\n options?: QueryActionsOptions<T>\n): QueryActions<T> {\n useDebugValue('useQueryActions')\n\n const {\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n } = options ?? {}\n\n const { query, mutate, forget } = useQueryInstance(options)\n\n const refetch = useCallback(\n function (refetchOptions?: Options<T>) {\n return query<T>(key, {\n stale: oStale ?? false,\n expiration: oExpiration,\n fetcher: oFetcher,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n ...refetchOptions,\n })\n },\n [query, key, oExpiration, oFetcher, oStale, oRemoveOnError, oFresh]\n )\n\n const localMutate = useCallback(\n function <T = unknown>(value: MutationValue<T>, options?: MutateOptions<T>) {\n return mutate(key, value, options)\n },\n [mutate, key]\n )\n\n const localForget = useCallback(\n async function () {\n await forget(key)\n },\n [forget, key]\n )\n\n return useMemo(\n function () {\n return { refetch, mutate: localMutate, forget: localForget }\n },\n [refetch, localMutate, localForget]\n )\n}\n","import { useDebugValue, useEffect, useMemo, useState } from 'react'\nimport { useQueryInstance, type QueryInstance } from './useQueryInstance'\n\nexport interface Status {\n readonly expiresAt: Date\n readonly isExpired: boolean\n readonly isRefetching: boolean\n readonly isMutating: boolean\n}\n\nexport function useQueryStatus(key: string, options?: QueryInstance): Status {\n useDebugValue('useQueryStatus')\n\n const { expiration, subscribe } = useQueryInstance(options)\n const [expiresAt, setExpiresAt] = useState<Date>(() => expiration(key) ?? new Date())\n const [isExpired, setIsExpired] = useState(() => Date.now() > expiresAt.getTime())\n const [isRefetching, setIsRefetching] = useState(false)\n const [isMutating, setIsMutating] = useState(false)\n\n useEffect(\n function () {\n function handler() {\n setIsExpired(true)\n }\n\n const id = setTimeout(handler, expiresAt.getTime() - Date.now())\n\n return function () {\n clearTimeout(id)\n }\n },\n [expiresAt]\n )\n\n useEffect(\n function () {\n function onMutating() {\n setIsMutating(true)\n }\n\n function onMutated() {\n setIsMutating(false)\n setExpiresAt(expiration(key) ?? new Date())\n }\n\n function onHydrated() {\n setExpiresAt(expiration(key) ?? new Date())\n }\n\n function onResolved() {\n setExpiresAt(expiration(key) ?? new Date())\n setIsRefetching(false)\n }\n\n function onForgotten() {\n setExpiresAt(expiration(key) ?? new Date())\n }\n\n function onRefetching() {\n setIsRefetching(true)\n }\n\n function onError() {\n setIsRefetching(false)\n setIsMutating(false)\n }\n\n const unsubscribeMutating = subscribe(key, 'mutating', onMutating)\n const unsubscribeMutated = subscribe(key, 'mutated', onMutated)\n const unsubscribeHydrated = subscribe(key, 'hydrated', onHydrated)\n const unsubscribeResolved = subscribe(key, 'resolved', onResolved)\n const unsubscribeForgotten = subscribe(key, 'forgotten', onForgotten)\n const unsubscribeRefetching = subscribe(key, 'refetching', onRefetching)\n const unsubscribeError = subscribe(key, 'error', onError)\n\n return function () {\n unsubscribeMutating()\n unsubscribeMutated()\n unsubscribeHydrated()\n unsubscribeResolved()\n unsubscribeForgotten()\n unsubscribeRefetching()\n unsubscribeError()\n }\n },\n [key, subscribe, expiration, setExpiresAt]\n )\n\n return useMemo(\n function () {\n return { expiresAt, isExpired, isRefetching, isMutating }\n },\n [expiresAt, isExpired, isRefetching, isMutating]\n )\n}\n","import { createContext, type TransitionStartFunction } from 'react'\n\nexport interface QueryTransitionContextValue {\n readonly isPending?: boolean\n readonly startTransition?: TransitionStartFunction\n}\n\nexport const TransitionContext = createContext<QueryTransitionContextValue>({\n isPending: undefined,\n startTransition: undefined,\n})\n","import { TransitionContext, type QueryTransitionContextValue } from 'query/react:transition'\nimport { use, useDebugValue } from 'react'\n\nexport function useQueryTransitionContext(): QueryTransitionContextValue {\n useDebugValue('useQueryTransitionContext')\n\n return use(TransitionContext)\n}\n","import { useEffect, use, useState, useMemo, useDebugValue, useTransition } from 'react'\nimport { type ContextValue } from 'query/react:context'\nimport { type Options } from 'query:index'\nimport { useQueryContext } from './useQueryContext'\nimport { useQueryInstance, type QueryInstance } from './useQueryInstance'\nimport { useQueryTransitionContext } from './useQueryTransitionContext'\n\nexport interface BasicResource<T = unknown> {\n data: T\n isPending: boolean\n}\n\nexport type BasicResourceOptions<T = unknown> = ContextValue & Options<T> & QueryInstance\n\nexport function useQueryBasic<T = unknown>(\n key: string,\n options?: BasicResourceOptions<T>\n): BasicResource<T> {\n useDebugValue('useQueryBasic')\n\n const { clearOnForget: cClearOnForget, ignoreTransitionContext: cIgnoreTransitionContext } =\n useQueryContext()\n\n const {\n clearOnForget: oClearOnForget,\n ignoreTransitionContext: oIgnoreTransitionContext,\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n } = options ?? {}\n\n const { isPending: isContextPending, startTransition: startContextTransition } =\n useQueryTransitionContext()\n\n const [isLocalPending, startLocalTransition] = useTransition()\n const { query, expiration, subscribe } = useQueryInstance(options)\n\n const ignoreTransitionContext = useMemo(\n function () {\n return oIgnoreTransitionContext ?? cIgnoreTransitionContext ?? false\n },\n [oIgnoreTransitionContext, cIgnoreTransitionContext]\n )\n\n const isPending = useMemo(\n function () {\n if (ignoreTransitionContext) {\n return isLocalPending\n }\n\n return isContextPending ?? isLocalPending\n },\n [isContextPending, isLocalPending, ignoreTransitionContext]\n )\n\n const startTransition = useMemo(\n function () {\n if (ignoreTransitionContext) {\n return startLocalTransition\n }\n\n return startContextTransition ?? startLocalTransition\n },\n [startContextTransition, startLocalTransition, ignoreTransitionContext]\n )\n\n const clearOnForget = useMemo(\n function () {\n return oClearOnForget ?? cClearOnForget ?? false\n },\n [oClearOnForget, cClearOnForget]\n )\n\n const promise = useMemo(\n function () {\n return query<T>(key, {\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n })\n },\n [query, key, oExpiration, oFetcher, oStale, oRemoveOnError, oFresh]\n )\n\n const [data, setData] = useState<T>(use(promise))\n\n useEffect(\n function () {\n function onResolved(event: CustomEventInit<T>) {\n startTransition(function () {\n setData(event.detail as T)\n })\n }\n\n function onMutating(event: CustomEventInit<Promise<T>>) {\n startTransition(async function () {\n const value = await (event.detail as Promise<T>)\n\n startTransition(function () {\n setData(value)\n })\n })\n }\n\n function onMutated(event: CustomEventInit<T>) {\n startTransition(function () {\n setData(event.detail as T)\n })\n }\n\n function onHydrated(event: CustomEventInit<T>) {\n startTransition(function () {\n setData(event.detail as T)\n })\n }\n\n function onRefetching(event: CustomEventInit<Promise<T>>) {\n startTransition(async function () {\n const value = await (event.detail as Promise<T>)\n\n startTransition(function () {\n setData(value)\n })\n })\n }\n\n function onForgotten() {\n if (clearOnForget) {\n startTransition(async function () {\n const data = await query<T>(key, {\n expiration: oExpiration,\n fetcher: oFetcher,\n stale: oStale,\n removeOnError: oRemoveOnError,\n fresh: oFresh,\n })\n\n startTransition(function () {\n setData(data)\n })\n })\n }\n }\n\n const unsubscribeResolved = subscribe(key, 'resolved', onResolved)\n const unsubscribeMutating = subscribe(key, 'mutating', onMutating)\n const unsubscribeMutated = subscribe(key, 'mutated', onMutated)\n const unsubscribeHydrated = subscribe(key, 'hydrated', onHydrated)\n const unsubscribeRefetching = subscribe(key, 'refetching', onRefetching)\n const unsubscribeForgotten = subscribe(key, 'forgotten', onForgotten)\n\n return function () {\n unsubscribeResolved()\n unsubscribeMutating()\n unsubscribeMutated()\n unsubscribeHydrated()\n unsubscribeRefetching()\n unsubscribeForgotten()\n }\n },\n [\n query,\n expiration,\n subscribe,\n key,\n clearOnForget,\n oExpiration,\n oFetcher,\n oStale,\n oRemoveOnError,\n oFresh,\n startTransition,\n ]\n )\n\n return useMemo(\n function (): BasicResource<T> {\n return { data, isPending }\n },\n [data, isPending]\n )\n}\n","import { useMemo, useDebugValue } from 'react'\nimport { type ContextValue } from 'query/react:context'\nimport { type Options } from 'query:index'\nimport { type QueryInstance } from './useQueryInstance'\nimport { useQueryActions, type QueryActions } from './useQueryActions'\nimport { useQueryStatus, type Status } from './useQueryStatus'\nimport { useQueryBasic, type BasicResource } from './useQueryBasic'\n\ntype AdditionalHooks<T> = QueryActions<T> & BasicResource<T> & Status\n\nexport interface Resource<T = unknown> extends AdditionalHooks<T> {\n data: T\n isPending: boolean\n}\n\nexport type ResourceOptions<T = unknown> = ContextValue & Options<T> & QueryInstance\n\nexport function useQuery<T = unknown>(key: string, options?: ResourceOptions<T>): Resource<T> {\n useDebugValue('useQuery')\n\n const basic = useQueryBasic<T>(key, options)\n const actions = useQueryActions<T>(key, options)\n const status = useQueryStatus(key, options)\n\n return useMemo(\n function (): Resource<T> {\n return { ...basic, ...actions, ...status }\n },\n [basic, actions, status]\n )\n}\n","import { useDebugValue, useEffect } from 'react'\nimport { QueryInstance, useQueryInstance } from './useQueryInstance'\n\nexport function useQueryPrefetch(keys: string[], options?: QueryInstance) {\n useDebugValue('useQueryPrefetch')\n\n const { query } = useQueryInstance(options)\n\n useEffect(\n function () {\n for (const key of keys) {\n void query(key)\n }\n },\n [query, keys]\n )\n}\n","/**\n * @license React\n * react-compiler-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 ReactSharedInternals =\n require(\"react\").__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\nexports.c = function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n};\n","/**\n * @license React\n * react-compiler-runtime.development.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\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n var ReactSharedInternals =\n require(\"react\").__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\n exports.c = function (size) {\n var dispatcher = ReactSharedInternals.H;\n null === dispatcher &&\n console.error(\n \"Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.\"\n );\n return dispatcher.useMemoCache(size);\n };\n })();\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';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-compiler-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-compiler-runtime.development.js');\n}\n","import { useEffect, useMemo, type ReactNode } from 'react'\nimport { Context, type ContextValue } from 'query/react:context'\nimport { createQuery, type Query } from 'query:index'\n\nexport interface QueryProviderProps extends ContextValue {\n children?: ReactNode\n}\n\nexport function QueryProvider({\n children,\n clearOnForget,\n ignoreTransitionContext,\n query,\n}: QueryProviderProps) {\n const localQuery = useMemo<Query>(\n function () {\n return query ?? createQuery()\n },\n [query]\n )\n\n useEffect(\n function () {\n const broadcast = new BroadcastChannel('query')\n\n localQuery.configure({ broadcast })\n\n const unsubscribe = localQuery.subscribeBroadcast()\n\n return function () {\n unsubscribe()\n broadcast.close()\n }\n },\n [localQuery]\n )\n\n const value = useMemo(\n function (): ContextValue {\n return { query: localQuery, clearOnForget, ignoreTransitionContext }\n },\n [localQuery, clearOnForget, ignoreTransitionContext]\n )\n\n return <Context value={value}>{children}</Context>\n}\n","import { TransitionContext, type QueryTransitionContextValue } from 'query/react:transition'\nimport { useMemo, type ReactNode, type TransitionStartFunction } from 'react'\n\nexport interface QueryTransitionProps {\n isPending: boolean\n startTransition: TransitionStartFunction\n children?: ReactNode\n}\n\nexport function QueryTransition({ children, startTransition, isPending }: QueryTransitionProps) {\n const value = useMemo(\n function (): QueryTransitionContextValue {\n return { startTransition, isPending }\n },\n [startTransition, isPending]\n )\n\n return <TransitionContext value={value}>{children}</TransitionContext>\n}\n","import { type ReactNode } from 'react'\nimport { type QueryInstance } from 'query/react:hooks/useQueryInstance'\nimport { useQueryPrefetch } from 'query/react:hooks/useQueryPrefetch'\n\nexport interface QueryPrefetchProps extends QueryInstance {\n keys: string[]\n children?: ReactNode\n}\n\nexport function QueryPrefetch({ keys, query, children }: QueryPrefetchProps) {\n useQueryPrefetch(keys, { query })\n\n return children\n}\n","import type { QueryInstance } from 'query/react:hooks/useQueryInstance'\nimport type { ReactNode, LinkHTMLAttributes } from 'react'\nimport { useMemo } from 'react'\nimport { useQueryPrefetch } from 'query/react:hooks/useQueryPrefetch'\n\ntype Additional = LinkHTMLAttributes<HTMLLinkElement> & QueryInstance\n\nexport interface QueryPrefetchTagsProps extends Additional {\n keys: string[]\n children?: ReactNode\n}\n\nexport function QueryPrefetchTags({ keys, children, ...options }: QueryPrefetchTagsProps) {\n useQueryPrefetch(keys, options)\n\n const tags = useMemo(\n function () {\n return keys.map((key) => <link rel=\"preload\" href={key} as=\"fetch\" {...options} />)\n },\n [keys, options]\n )\n\n return (\n <>\n {tags}\n {children}\n </>\n )\n}\n"],"names":["Context","createContext","useQueryContext","useDebugValue","use","__name","useQueryInstance","options","cQuery","oQuery","useMemo","instance","useQueryActions","key","oExpiration","oFetcher","oStale","oRemoveOnError","oFresh","query","mutate","forget","refetch","useCallback","refetchOptions","localMutate","value","localForget","useQueryStatus","expiration","subscribe","expiresAt","setExpiresAt","useState","isExpired","setIsExpired","isRefetching","setIsRefetching","isMutating","setIsMutating","useEffect","handler","id","onMutating","onMutated","onHydrated","onResolved","onForgotten","onRefetching","onError","unsubscribeMutating","unsubscribeMutated","unsubscribeHydrated","unsubscribeResolved","unsubscribeForgotten","unsubscribeRefetching","unsubscribeError","TransitionContext","useQueryTransitionContext","useQueryBasic","cClearOnForget","cIgnoreTransitionContext","oClearOnForget","oIgnoreTransitionContext","isContextPending","startContextTransition","isLocalPending","startLocalTransition","useTransition","ignoreTransitionContext","isPending","startTransition","clearOnForget","promise","data","setData","event","useQuery","basic","actions","status","useQueryPrefetch","keys","ReactSharedInternals","require$$0","reactCompilerRuntime_production","size","reactCompilerRuntime_development","dispatcher","compilerRuntimeModule","require$$1","QueryProvider","t0","$","_c","children","t1","createQuery","localQuery","t2","t3","broadcast","BroadcastChannel","configure","unsubscribe","subscribeBroadcast","close","t4","t5","jsx","QueryTransition","QueryPrefetch","QueryPrefetchTags","map","tags","jsxs","Fragment"],"mappings":"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","x_google_ignoreList":[10,11,12]}
|