@studiolambda/query 1.0.0 → 1.1.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.
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),V=require("react/jsx-runtime"),Z=require("./query.cjs"),P=n.createContext({query:void 0,additional:void 0});function F(){return n.useDebugValue("useQueryContext"),n.use(P)}function h(e){n.useDebugValue("useQueryInstance");const t=F();function u(){const r=(e==null?void 0:e.query)??t.query;if(!r)throw new Error("No query instance was found. Please provide one via the resource options or the query context.");return r}return n.useMemo(u,[e,t])}const I=n.createContext({isPending:void 0,startTransition:void 0});function A(){return n.useDebugValue("useQueryTransitionContext"),n.use(I)}function O(e,t){n.useDebugValue("useQueryActions");const{query:u,mutate:r,forget:o}=h(t);function s(x){return u(e,{stale:!1,...t,...x})}const i=n.useCallback(s,[u,e,t]);function l(x,m){return r(e,x,m)}const d=n.useCallback(l,[r,e]);function c(){o(e)}const g=n.useCallback(c,[o,e]);function b(){return{refetch:i,mutate:d,forget:g}}return n.useMemo(b,[i,d,g])}function j(e){n.useDebugValue("useQueryStatus");const{expiration:t,subscribe:u}=h(),[r,o]=n.useState(t(e)??new Date),[s,i]=n.useState(Date.now()>r.getTime()),[l,d]=n.useState(!1),[c,g]=n.useState(!1);function b(){if(Date.now()>=r.getTime()){i(!0);return}i(!1);function m(){i(!0)}const C=setTimeout(m,r.getTime()-Date.now());return function(){clearTimeout(C)}}n.useEffect(b,[r]);function x(){function m(){g(!0)}function C(){g(!1),o(t(e)??new Date)}function a(){o(t(e)??new Date)}function w(){o(t(e)??new Date),d(!1)}function Q(){o(t(e)??new Date)}function q(){d(!0)}function D(){d(!1),g(!1)}const M=u(e,"mutating",m),T=u(e,"mutated",C),v=u(e,"hydrated",a),R=u(e,"resolved",w),H=u(e,"forgotten",Q),y=u(e,"refetching",q),E=u(e,"error",D);return function(){M(),T(),v(),R(),H(),y(),E()}}return n.useEffect(x,[e,u,t,o]),{expiresAt:r,isExpired:s,isRefetching:l,isMutating:c}}function _(e,t){n.useDebugValue("useQuery");const{additional:u}=F(),{isPending:r,startTransition:o}=A(),[s,i]=n.useTransition(),{query:l,expiration:d,subscribe:c}=h(t);function g(){return(t==null?void 0:t.ignoreTransitionContext)??(u==null?void 0:u.ignoreTransitionContext)??!1}const b=n.useMemo(g,[t,u]);function x(){return b?s:r??s}const m=n.useMemo(x,[r,s,b]);function C(){return b?i:o??i}const a=n.useMemo(C,[o,i,b]);function w(){return(t==null?void 0:t.clearOnForget)??(u==null?void 0:u.clearOnForget)??!1}const Q=n.useMemo(w,[t,u]);async function q(){return await l(e,t)}const D=n.useMemo(q,[l,e,t]),M=n.useRef(void 0);M.current===void 0&&(M.current=n.use(D));const[T,v]=n.useState(M.current);function R(){function B(f){a(function(){v(f.detail)})}function L(f){a(async function(){const S=await f.detail;a(function(){v(S)})})}function N(f){a(function(){v(f.detail)})}function $(f){a(function(){v(f.detail)})}function z(f){a(async function(){const S=await f.detail;a(function(){v(S)})})}function G(){Q&&a(async function(){const f=await l(e,t);a(function(){v(f)})})}const J=c(e,"resolved",B),K=c(e,"mutating",L),U=c(e,"mutated",N),W=c(e,"hydrated",$),X=c(e,"refetching",z),Y=c(e,"forgotten",G);return function(){J(),K(),U(),W(),X(),Y()}}n.useEffect(R,[l,d,c,e,Q,t,a]);const H=O(e,t),y=j(e);function E(){return{data:T,isPending:m,...H,...y}}return n.useMemo(E,[T,m,H,y])}function p({children:e,clearOnForget:t,broadcast:u,...r}){function o(){return Z.createQuery({broadcast:u,...r})}const[s]=n.useState(o);function i(){s.configure(r)}n.useEffect(i,[s,r]);function l(){if(u){s.configure({broadcast:u});const C=s.subscribeBroadcast();return function(){C()}}const x=new BroadcastChannel("query");s.configure({broadcast:x});const m=s.subscribeBroadcast();return function(){m(),x.close()}}n.useEffect(l,[s,u]);function d(){return{clearOnForget:t}}const c=n.useMemo(d,[t]);function g(){return{query:s,additional:c}}const b=n.useMemo(g,[s,c]);return V.jsx(P,{value:b,children:e})}function k({children:e,startTransition:t,isPending:u}){function r(){return{startTransition:t,isPending:u}}const o=n.useMemo(r,[t,u]);return V.jsx(I,{value:o,children:e})}exports.Context=P;exports.QueryProvider=p;exports.QueryTransition=k;exports.TransitionContext=I;exports.useQuery=_;exports.useQueryActions=O;exports.useQueryContext=F;exports.useQueryInstance=h;exports.useQueryStatus=j;exports.useQueryTransitionContext=A;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),L=require("react/jsx-runtime"),oe=require("./query.cjs"),I=n.createContext({query:void 0,clearOnForget:void 0,ignoreTransitionContext:void 0});function P(){return n.useDebugValue("useQueryContext"),n.use(I)}function w(e){n.useDebugValue("useQueryInstance");const{query:u}=P(),{query:r}=e??{};function t(){const o=r??u;if(!o)throw new Error("No query instance was found. Please provide one via the resource options or the query context.");return o}return n.useMemo(t,[r,u])}const V=n.createContext({isPending:void 0,startTransition:void 0});function N(){return n.useDebugValue("useQueryTransitionContext"),n.use(V)}function z(e,u){n.useDebugValue("useQueryActions");const{expiration:r,fetcher:t,stale:o,removeOnError:s,fresh:f}=u??{},{query:c,mutate:l,forget:i}=w(u);function b(a){return c(e,{stale:o??!1,expiration:r,fetcher:t,removeOnError:s,fresh:f,...a})}const g=n.useCallback(b,[c,e,r,t,o,s,f]);function T(a,y){return l(e,a,y)}const h=n.useCallback(T,[l,e]);async function C(){await i(e)}const x=n.useCallback(C,[i,e]);function Q(){return{refetch:g,mutate:h,forget:x}}return n.useMemo(Q,[g,h,x])}function G(e,u){n.useDebugValue("useQueryStatus");const{expiration:r,subscribe:t}=w(u),[o,s]=n.useState(r(e)??new Date),[f,c]=n.useState(Date.now()>o.getTime()),[l,i]=n.useState(!1),[b,g]=n.useState(!1);function T(){if(Date.now()>=o.getTime()){c(!0);return}c(!1);function x(){c(!0)}const Q=setTimeout(x,o.getTime()-Date.now());return function(){clearTimeout(Q)}}n.useEffect(T,[o]);function h(){function x(){g(!0)}function Q(){g(!1),s(r(e)??new Date)}function a(){s(r(e)??new Date)}function y(){s(r(e)??new Date),i(!1)}function v(){s(r(e)??new Date)}function D(){i(!0)}function E(){i(!1),g(!1)}const F=t(e,"mutating",x),d=t(e,"mutated",Q),O=t(e,"hydrated",a),p=t(e,"resolved",y),R=t(e,"forgotten",v),q=t(e,"refetching",D),H=t(e,"error",E);return function(){F(),d(),O(),p(),R(),q(),H()}}n.useEffect(h,[e,t,r,s]);function C(){return{expiresAt:o,isExpired:f,isRefetching:l,isMutating:b}}return n.useMemo(C,[o,f,l,b])}function ue(e,u){n.useDebugValue("useQuery");const{clearOnForget:r,ignoreTransitionContext:t}=P(),{clearOnForget:o,ignoreTransitionContext:s,expiration:f,fetcher:c,stale:l,removeOnError:i,fresh:b}=u??{},{isPending:g,startTransition:T}=N(),[h,C]=n.useTransition(),{query:x,expiration:Q,subscribe:a}=w(u);function y(){return s??t??!1}const v=n.useMemo(y,[s,t]);function D(){return v?h:g??h}const E=n.useMemo(D,[g,h,v]);function F(){return v?C:T??C}const d=n.useMemo(F,[T,C,v]);function O(){return o??r??!1}const p=n.useMemo(O,[o,r]);function R(){return x(e,{expiration:f,fetcher:c,stale:l,removeOnError:i,fresh:b})}const q=n.useMemo(R,[x,e,f,c,l,i,b]),H=n.useRef(void 0);H.current===void 0&&(H.current=n.use(q));const[A,M]=n.useState(H.current);function J(){function U(m){d(function(){M(m.detail)})}function W(m){d(async function(){const S=await m.detail;d(function(){M(S)})})}function X(m){d(function(){M(m.detail)})}function Y(m){d(function(){M(m.detail)})}function Z(m){d(async function(){const S=await m.detail;d(function(){M(S)})})}function _(){p&&d(async function(){const m=await x(e,{expiration:f,fetcher:c,stale:l,removeOnError:i,fresh:b});d(function(){M(m)})})}const $=a(e,"resolved",U),k=a(e,"mutating",W),ee=a(e,"mutated",X),ne=a(e,"hydrated",Y),te=a(e,"refetching",Z),re=a(e,"forgotten",_);return function(){$(),k(),ee(),ne(),te(),re()}}n.useEffect(J,[x,Q,a,e,p,f,c,l,i,b,d]);const j=z(e,u),B=G(e,u);function K(){return{data:A,isPending:E,...j,...B}}return n.useMemo(K,[A,E,j,B])}function se({children:e,clearOnForget:u,ignoreTransitionContext:r,query:t}){function o(){return t??oe.createQuery()}const s=n.useMemo(o,[t]);function f(){if(s.broadcast()){const g=s.subscribeBroadcast();return function(){g()}}const i=new BroadcastChannel("query");s.configure({broadcast:i});const b=s.subscribeBroadcast();return function(){b(),i.close()}}n.useEffect(f,[s]);function c(){return{query:t,clearOnForget:u,ignoreTransitionContext:r}}const l=n.useMemo(c,[t,u,r]);return L.jsx(I,{value:l,children:e})}function ie({children:e,startTransition:u,isPending:r}){function t(){return{startTransition:u,isPending:r}}const o=n.useMemo(t,[u,r]);return L.jsx(V,{value:o,children:e})}exports.Context=I;exports.QueryProvider=se;exports.QueryTransition=ie;exports.TransitionContext=V;exports.useQuery=ue;exports.useQueryActions=z;exports.useQueryContext=P;exports.useQueryInstance=w;exports.useQueryStatus=G;exports.useQueryTransitionContext=N;
2
2
  //# sourceMappingURL=query_react.cjs.map
@@ -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/transition.ts","../src/react/hooks/useQueryTransitionContext.ts","../src/react/hooks/useQueryActions.ts","../src/react/hooks/useQueryStatus.ts","../src/react/hooks/useQuery.ts","../src/react/components/QueryProvider.tsx","../src/react/components/QueryTransition.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { Query } from 'query:index'\n\nexport interface ContextOptions {\n readonly clearOnForget?: boolean\n readonly ignoreTransitionContext?: boolean\n}\n\nexport interface ContextValue {\n readonly query?: Query\n readonly additional?: ContextOptions\n}\n\nexport const Context = createContext<ContextValue>({\n query: undefined,\n additional: 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 contextOptions = useQueryContext()\n\n function query() {\n const instance = options?.query ?? contextOptions.query\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, [options, contextOptions])\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 { MutateOptions, MutationValue, Options } from 'query:index'\nimport { useCallback, useDebugValue, useMemo } from 'react'\nimport { QueryInstance, useQueryInstance } 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 { query, mutate, forget } = useQueryInstance(options)\n\n function refetchHandler(refetchOptions?: Options<T>) {\n return query<T>(key, {\n stale: false,\n ...options,\n ...refetchOptions,\n })\n }\n\n const refetch = useCallback(refetchHandler, [query, key, options])\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 function forgetHandler() {\n 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, useState } from 'react'\nimport { useQueryInstance } 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): Status {\n useDebugValue('useQueryStatus')\n\n const { expiration, subscribe } = useQueryInstance()\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 return { expiresAt, isExpired, isRefetching, isMutating }\n}\n","import { useEffect, use, useState, useMemo, useDebugValue, useTransition, useRef } from 'react'\nimport { ContextOptions as ContextOptions } from 'query/react:context'\nimport { Options } from 'query:index'\nimport { useQueryContext } from './useQueryContext'\nimport { QueryInstance, useQueryInstance } from './useQueryInstance'\nimport { useQueryTransitionContext } from './useQueryTransitionContext'\nimport { QueryActions, useQueryActions } from './useQueryActions'\nimport { useQueryStatus, type Status } from './useQueryStatus'\n\ntype AdditionalHooks<T> = QueryActions<T> & Status\n\nexport interface Resource<T = unknown> extends AdditionalHooks<T> {\n data: T\n isPending: boolean\n}\n\nexport type ResourceOptions<T = unknown> = ContextOptions & Options<T> & QueryInstance\n\nexport function useQuery<T = unknown>(key: string, options?: ResourceOptions<T>): Resource<T> {\n useDebugValue('useQuery')\n\n const { additional } = useQueryContext()\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 options?.ignoreTransitionContext ?? additional?.ignoreTransitionContext ?? false\n }\n\n const ignoreTransitionContext = useMemo(ignoreTransitionContextHandler, [options, additional])\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 options?.clearOnForget ?? additional?.clearOnForget ?? false\n }\n\n const clearOnForget = useMemo(clearOnForgetHandler, [options, additional])\n\n async function promiseHandler() {\n return await query<T>(key, options)\n }\n\n const promise = useMemo(promiseHandler, [query, key, options])\n const initial = useRef<T>(undefined)\n\n if (initial.current === undefined) {\n initial.current = use(promise)\n }\n\n const [data, setData] = useState(initial.current)\n\n function subscribeHandler() {\n function onResolved(event: Event) {\n startTransition(function () {\n setData((event as CustomEvent<T>).detail)\n })\n }\n\n function onMutating(event: Event) {\n startTransition(async function () {\n const value = await (event as CustomEvent<Promise<T>>).detail\n\n startTransition(function () {\n setData(value)\n })\n })\n }\n\n function onMutated(event: Event) {\n startTransition(function () {\n setData((event as CustomEvent<T>).detail)\n })\n }\n\n function onHydrated(event: Event) {\n startTransition(function () {\n setData((event as CustomEvent<T>).detail)\n })\n }\n\n function onRefetching(event: Event) {\n startTransition(async function () {\n const value = await (event as CustomEvent<Promise<T>>).detail\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, options)\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 options,\n startTransition,\n ])\n\n const actions = useQueryActions<T>(key, options)\n const status = useQueryStatus(key)\n\n function resourceHandler(): Resource<T> {\n return { data, isPending, ...actions, ...status }\n }\n\n return useMemo(resourceHandler, [data, isPending, actions, status])\n}\n","import { useEffect, useMemo, useState, type ReactNode } from 'react'\nimport { Context, ContextValue, type ContextOptions } from 'query/react:context'\nimport { createQuery, Query, type Configuration } from 'query:index'\n\ntype OtherProps = Configuration & ContextOptions\n\nexport interface QueryProviderProps extends OtherProps {\n children?: ReactNode\n}\n\nexport function QueryProvider({\n children,\n clearOnForget,\n broadcast,\n ...options\n}: QueryProviderProps) {\n function initial() {\n return createQuery({ broadcast, ...options })\n }\n\n const [query] = useState<Query>(initial)\n\n function reconfigure() {\n query.configure(options)\n }\n\n useEffect(reconfigure, [query, options])\n\n function broadcastCleanup() {\n if (broadcast) {\n query.configure({ broadcast })\n const unsubscribe = query.subscribeBroadcast()\n\n return function () {\n unsubscribe()\n }\n }\n\n const channel = new BroadcastChannel('query')\n\n query.configure({ broadcast: channel })\n const unsubscribe = query.subscribeBroadcast()\n\n return function () {\n unsubscribe()\n channel.close()\n }\n }\n\n useEffect(broadcastCleanup, [query, broadcast])\n\n function additionalHandler() {\n return { clearOnForget }\n }\n\n const additional = useMemo(additionalHandler, [clearOnForget])\n\n function valueHandler(): ContextValue {\n return { query, additional }\n }\n\n const value = useMemo(valueHandler, [query, additional])\n\n return <Context value={value}>{children}</Context>\n}\n","import { TransitionContext, 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"],"names":["Context","createContext","useQueryContext","useDebugValue","use","useQueryInstance","options","contextOptions","query","instance","useMemo","TransitionContext","useQueryTransitionContext","useQueryActions","key","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","useQuery","additional","isContextPending","startContextTransition","isLocalPending","startLocalTransition","useTransition","ignoreTransitionContextHandler","ignoreTransitionContext","isPendingHandler","isPending","startTransitionHandler","startTransition","clearOnForgetHandler","clearOnForget","promiseHandler","promise","initial","useRef","data","setData","event","actions","status","resourceHandler","QueryProvider","children","broadcast","createQuery","reconfigure","broadcastCleanup","unsubscribe","channel","additionalHandler","valueHandler","jsx","QueryTransition"],"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/transition.ts","../src/react/hooks/useQueryTransitionContext.ts","../src/react/hooks/useQueryActions.ts","../src/react/hooks/useQueryStatus.ts","../src/react/hooks/useQuery.ts","../src/react/components/QueryProvider.tsx","../src/react/components/QueryTransition.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { 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 { 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 { MutateOptions, MutationValue, Options } from 'query:index'\nimport { useCallback, useDebugValue, useMemo } from 'react'\nimport { QueryInstance, useQueryInstance } 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 { QueryInstance, useQueryInstance } 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 { useEffect, use, useState, useMemo, useDebugValue, useTransition, useRef } from 'react'\nimport { ContextValue } from 'query/react:context'\nimport { Options } from 'query:index'\nimport { useQueryContext } from './useQueryContext'\nimport { QueryInstance, useQueryInstance } from './useQueryInstance'\nimport { useQueryTransitionContext } from './useQueryTransitionContext'\nimport { QueryActions, useQueryActions } from './useQueryActions'\nimport { useQueryStatus, type Status } from './useQueryStatus'\n\ntype AdditionalHooks<T> = QueryActions<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 { 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 initial = useRef<T>(undefined)\n\n if (initial.current === undefined) {\n initial.current = use(promise)\n }\n\n const [data, setData] = useState(initial.current)\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 const actions = useQueryActions<T>(key, options)\n const status = useQueryStatus(key, options)\n\n function resourceHandler(): Resource<T> {\n return { data, isPending, ...actions, ...status }\n }\n\n return useMemo(resourceHandler, [data, isPending, actions, status])\n}\n","import { useEffect, useMemo, type ReactNode } from 'react'\nimport { Context, ContextValue } from 'query/react:context'\nimport { createQuery, 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, 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"],"names":["Context","createContext","useQueryContext","useDebugValue","use","useQueryInstance","options","cQuery","oQuery","query","instance","useMemo","TransitionContext","useQueryTransitionContext","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","useQuery","cClearOnForget","cIgnoreTransitionContext","oClearOnForget","oIgnoreTransitionContext","isContextPending","startContextTransition","isLocalPending","startLocalTransition","useTransition","ignoreTransitionContextHandler","ignoreTransitionContext","isPendingHandler","isPending","startTransitionHandler","startTransition","clearOnForgetHandler","clearOnForget","promiseHandler","promise","initial","useRef","data","setData","event","actions","status","resourceHandler","QueryProvider","children","queryInstance","createQuery","localQuery","broadcastCleanup","unsubscribe","channel","valueHandler","jsx","QueryTransition"],"mappings":"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"}
@@ -1,254 +1,302 @@
1
- import { createContext as S, useDebugValue as h, use as O, useMemo as f, useCallback as A, useState as T, useEffect as C, useTransition as k, useRef as nn } from "react";
2
- import { jsx as L } from "react/jsx-runtime";
3
- import { createQuery as tn } from "./query.js";
4
- const j = S({
1
+ import { createContext as z, useDebugValue as Q, use as B, useMemo as l, useCallback as A, useState as F, useEffect as M, useTransition as cn, useRef as an } from "react";
2
+ import { jsx as G } from "react/jsx-runtime";
3
+ import { createQuery as fn } from "./query.js";
4
+ const J = z({
5
5
  query: void 0,
6
- additional: void 0
6
+ clearOnForget: void 0,
7
+ ignoreTransitionContext: void 0
7
8
  });
8
- function N() {
9
- return h("useQueryContext"), O(j);
9
+ function K() {
10
+ return Q("useQueryContext"), B(J);
10
11
  }
11
- function B(n) {
12
- h("useQueryInstance");
13
- const t = N();
14
- function e() {
15
- const r = (n == null ? void 0 : n.query) ?? t.query;
12
+ function L(n) {
13
+ Q("useQueryInstance");
14
+ const { query: o } = K(), { query: e } = n ?? {};
15
+ function t() {
16
+ const r = e ?? o;
16
17
  if (!r)
17
18
  throw new Error(
18
19
  "No query instance was found. Please provide one via the resource options or the query context."
19
20
  );
20
21
  return r;
21
22
  }
22
- return f(e, [n, t]);
23
+ return l(t, [e, o]);
23
24
  }
24
- const V = S({
25
+ const U = z({
25
26
  isPending: void 0,
26
27
  startTransition: void 0
27
28
  });
28
- function en() {
29
- return h("useQueryTransitionContext"), O(V);
29
+ function dn() {
30
+ return Q("useQueryTransitionContext"), B(U);
30
31
  }
31
- function rn(n, t) {
32
- h("useQueryActions");
33
- const { query: e, mutate: r, forget: o } = B(t);
34
- function u(x) {
35
- return e(n, {
36
- stale: !1,
37
- ...t,
38
- ...x
32
+ function ln(n, o) {
33
+ Q("useQueryActions");
34
+ const {
35
+ expiration: e,
36
+ fetcher: t,
37
+ stale: r,
38
+ removeOnError: u,
39
+ fresh: a
40
+ } = o ?? {}, { query: i, mutate: f, forget: s } = L(o);
41
+ function g(c) {
42
+ return i(n, {
43
+ stale: r ?? !1,
44
+ expiration: e,
45
+ fetcher: t,
46
+ removeOnError: u,
47
+ fresh: a,
48
+ ...c
39
49
  });
40
50
  }
41
- const i = A(u, [e, n, t]);
42
- function d(x, m) {
43
- return r(n, x, m);
51
+ const b = A(g, [
52
+ i,
53
+ n,
54
+ e,
55
+ t,
56
+ r,
57
+ u,
58
+ a
59
+ ]);
60
+ function C(c, w) {
61
+ return f(n, c, w);
44
62
  }
45
- const l = A(d, [r, n]);
46
- function c() {
47
- o(n);
63
+ const m = A(C, [f, n]);
64
+ async function v() {
65
+ await s(n);
48
66
  }
49
- const g = A(c, [o, n]);
50
- function b() {
51
- return { refetch: i, mutate: l, forget: g };
67
+ const h = A(v, [s, n]);
68
+ function T() {
69
+ return { refetch: b, mutate: m, forget: h };
52
70
  }
53
- return f(b, [i, l, g]);
71
+ return l(T, [b, m, h]);
54
72
  }
55
- function un(n) {
56
- h("useQueryStatus");
57
- const { expiration: t, subscribe: e } = B(), [r, o] = T(t(n) ?? /* @__PURE__ */ new Date()), [u, i] = T(Date.now() > r.getTime()), [d, l] = T(!1), [c, g] = T(!1);
58
- function b() {
73
+ function gn(n, o) {
74
+ Q("useQueryStatus");
75
+ const { expiration: e, subscribe: t } = L(o), [r, u] = F(e(n) ?? /* @__PURE__ */ new Date()), [a, i] = F(Date.now() > r.getTime()), [f, s] = F(!1), [g, b] = F(!1);
76
+ function C() {
59
77
  if (Date.now() >= r.getTime()) {
60
78
  i(!0);
61
79
  return;
62
80
  }
63
81
  i(!1);
64
- function m() {
82
+ function h() {
65
83
  i(!0);
66
84
  }
67
- const H = setTimeout(m, r.getTime() - Date.now());
85
+ const T = setTimeout(h, r.getTime() - Date.now());
68
86
  return function() {
69
- clearTimeout(H);
87
+ clearTimeout(T);
70
88
  };
71
89
  }
72
- C(b, [r]);
73
- function x() {
74
- function m() {
75
- g(!0);
90
+ M(C, [r]);
91
+ function m() {
92
+ function h() {
93
+ b(!0);
76
94
  }
77
- function H() {
78
- g(!1), o(t(n) ?? /* @__PURE__ */ new Date());
95
+ function T() {
96
+ b(!1), u(e(n) ?? /* @__PURE__ */ new Date());
79
97
  }
80
- function s() {
81
- o(t(n) ?? /* @__PURE__ */ new Date());
98
+ function c() {
99
+ u(e(n) ?? /* @__PURE__ */ new Date());
82
100
  }
83
- function D() {
84
- o(t(n) ?? /* @__PURE__ */ new Date()), l(!1);
101
+ function w() {
102
+ u(e(n) ?? /* @__PURE__ */ new Date()), s(!1);
85
103
  }
86
- function Q() {
87
- o(t(n) ?? /* @__PURE__ */ new Date());
104
+ function H() {
105
+ u(e(n) ?? /* @__PURE__ */ new Date());
88
106
  }
89
- function F() {
90
- l(!0);
107
+ function D() {
108
+ s(!0);
91
109
  }
92
- function y() {
93
- l(!1), g(!1);
110
+ function O() {
111
+ s(!1), b(!1);
94
112
  }
95
- const w = e(n, "mutating", m), M = e(n, "mutated", H), v = e(n, "hydrated", s), E = e(n, "resolved", D), R = e(n, "forgotten", Q), q = e(n, "refetching", F), P = e(n, "error", y);
113
+ const I = t(n, "mutating", h), d = t(n, "mutated", T), q = t(n, "hydrated", c), R = t(n, "resolved", w), y = t(n, "forgotten", H), P = t(n, "refetching", D), E = t(n, "error", O);
96
114
  return function() {
97
- w(), M(), v(), E(), R(), q(), P();
115
+ I(), d(), q(), R(), y(), P(), E();
98
116
  };
99
117
  }
100
- return C(x, [n, e, t, o]), { expiresAt: r, isExpired: u, isRefetching: d, isMutating: c };
101
- }
102
- function an(n, t) {
103
- h("useQuery");
104
- const { additional: e } = N(), { isPending: r, startTransition: o } = en(), [u, i] = k(), { query: d, expiration: l, subscribe: c } = B(t);
105
- function g() {
106
- return (t == null ? void 0 : t.ignoreTransitionContext) ?? (e == null ? void 0 : e.ignoreTransitionContext) ?? !1;
118
+ M(m, [n, t, e, u]);
119
+ function v() {
120
+ return { expiresAt: r, isExpired: a, isRefetching: f, isMutating: g };
107
121
  }
108
- const b = f(g, [t, e]);
109
- function x() {
110
- return b ? u : r ?? u;
122
+ return l(v, [r, a, f, g]);
123
+ }
124
+ function mn(n, o) {
125
+ Q("useQuery");
126
+ const { clearOnForget: e, ignoreTransitionContext: t } = K(), {
127
+ clearOnForget: r,
128
+ ignoreTransitionContext: u,
129
+ expiration: a,
130
+ fetcher: i,
131
+ stale: f,
132
+ removeOnError: s,
133
+ fresh: g
134
+ } = o ?? {}, { isPending: b, startTransition: C } = dn(), [m, v] = cn(), { query: h, expiration: T, subscribe: c } = L(o);
135
+ function w() {
136
+ return u ?? t ?? !1;
111
137
  }
112
- const m = f(x, [
113
- r,
138
+ const H = l(w, [
114
139
  u,
115
- b
140
+ t
116
141
  ]);
117
- function H() {
118
- return b ? i : o ?? i;
142
+ function D() {
143
+ return H ? m : b ?? m;
119
144
  }
120
- const s = f(H, [
121
- o,
122
- i,
123
- b
145
+ const O = l(D, [
146
+ b,
147
+ m,
148
+ H
124
149
  ]);
125
- function D() {
126
- return (t == null ? void 0 : t.clearOnForget) ?? (e == null ? void 0 : e.clearOnForget) ?? !1;
127
- }
128
- const Q = f(D, [t, e]);
129
- async function F() {
130
- return await d(n, t);
131
- }
132
- const y = f(F, [d, n, t]), w = nn(void 0);
133
- w.current === void 0 && (w.current = O(y));
134
- const [M, v] = T(w.current);
135
- function E() {
136
- function z(a) {
137
- s(function() {
138
- v(a.detail);
150
+ function I() {
151
+ return H ? v : C ?? v;
152
+ }
153
+ const d = l(I, [
154
+ C,
155
+ v,
156
+ H
157
+ ]);
158
+ function q() {
159
+ return r ?? e ?? !1;
160
+ }
161
+ const R = l(q, [r, e]);
162
+ function y() {
163
+ return h(n, {
164
+ expiration: a,
165
+ fetcher: i,
166
+ stale: f,
167
+ removeOnError: s,
168
+ fresh: g
169
+ });
170
+ }
171
+ const P = l(y, [
172
+ h,
173
+ n,
174
+ a,
175
+ i,
176
+ f,
177
+ s,
178
+ g
179
+ ]), E = an(void 0);
180
+ E.current === void 0 && (E.current = B(P));
181
+ const [j, p] = F(E.current);
182
+ function W() {
183
+ function Y(x) {
184
+ d(function() {
185
+ p(x.detail);
139
186
  });
140
187
  }
141
- function G(a) {
142
- s(async function() {
143
- const I = await a.detail;
144
- s(function() {
145
- v(I);
188
+ function Z(x) {
189
+ d(async function() {
190
+ const S = await x.detail;
191
+ d(function() {
192
+ p(S);
146
193
  });
147
194
  });
148
195
  }
149
- function J(a) {
150
- s(function() {
151
- v(a.detail);
196
+ function _(x) {
197
+ d(function() {
198
+ p(x.detail);
152
199
  });
153
200
  }
154
- function K(a) {
155
- s(function() {
156
- v(a.detail);
201
+ function $(x) {
202
+ d(function() {
203
+ p(x.detail);
157
204
  });
158
205
  }
159
- function U(a) {
160
- s(async function() {
161
- const I = await a.detail;
162
- s(function() {
163
- v(I);
206
+ function k(x) {
207
+ d(async function() {
208
+ const S = await x.detail;
209
+ d(function() {
210
+ p(S);
164
211
  });
165
212
  });
166
213
  }
167
- function W() {
168
- Q && s(async function() {
169
- const a = await d(n, t);
170
- s(function() {
171
- v(a);
214
+ function nn() {
215
+ R && d(async function() {
216
+ const x = await h(n, {
217
+ expiration: a,
218
+ fetcher: i,
219
+ stale: f,
220
+ removeOnError: s,
221
+ fresh: g
222
+ });
223
+ d(function() {
224
+ p(x);
172
225
  });
173
226
  });
174
227
  }
175
- const X = c(n, "resolved", z), Y = c(n, "mutating", G), Z = c(n, "mutated", J), _ = c(n, "hydrated", K), $ = c(n, "refetching", U), p = c(n, "forgotten", W);
228
+ const tn = c(n, "resolved", Y), en = c(n, "mutating", Z), rn = c(n, "mutated", _), on = c(n, "hydrated", $), un = c(n, "refetching", k), sn = c(n, "forgotten", nn);
176
229
  return function() {
177
- X(), Y(), Z(), _(), $(), p();
230
+ tn(), en(), rn(), on(), un(), sn();
178
231
  };
179
232
  }
180
- C(E, [
181
- d,
182
- l,
233
+ M(W, [
234
+ h,
235
+ T,
183
236
  c,
184
237
  n,
185
- Q,
186
- t,
187
- s
238
+ R,
239
+ a,
240
+ i,
241
+ f,
242
+ s,
243
+ g,
244
+ d
188
245
  ]);
189
- const R = rn(n, t), q = un(n);
190
- function P() {
191
- return { data: M, isPending: m, ...R, ...q };
246
+ const N = ln(n, o), V = gn(n, o);
247
+ function X() {
248
+ return { data: j, isPending: O, ...N, ...V };
192
249
  }
193
- return f(P, [M, m, R, q]);
250
+ return l(X, [j, O, N, V]);
194
251
  }
195
- function fn({
252
+ function vn({
196
253
  children: n,
197
- clearOnForget: t,
198
- broadcast: e,
199
- ...r
254
+ clearOnForget: o,
255
+ ignoreTransitionContext: e,
256
+ query: t
200
257
  }) {
201
- function o() {
202
- return tn({ broadcast: e, ...r });
203
- }
204
- const [u] = T(o);
205
- function i() {
206
- u.configure(r);
258
+ function r() {
259
+ return t ?? fn();
207
260
  }
208
- C(i, [u, r]);
209
- function d() {
210
- if (e) {
211
- u.configure({ broadcast: e });
212
- const H = u.subscribeBroadcast();
261
+ const u = l(r, [t]);
262
+ function a() {
263
+ if (u.broadcast()) {
264
+ const b = u.subscribeBroadcast();
213
265
  return function() {
214
- H();
266
+ b();
215
267
  };
216
268
  }
217
- const x = new BroadcastChannel("query");
218
- u.configure({ broadcast: x });
219
- const m = u.subscribeBroadcast();
269
+ const s = new BroadcastChannel("query");
270
+ u.configure({ broadcast: s });
271
+ const g = u.subscribeBroadcast();
220
272
  return function() {
221
- m(), x.close();
273
+ g(), s.close();
222
274
  };
223
275
  }
224
- C(d, [u, e]);
225
- function l() {
226
- return { clearOnForget: t };
227
- }
228
- const c = f(l, [t]);
229
- function g() {
230
- return { query: u, additional: c };
276
+ M(a, [u]);
277
+ function i() {
278
+ return { query: t, clearOnForget: o, ignoreTransitionContext: e };
231
279
  }
232
- const b = f(g, [u, c]);
233
- return /* @__PURE__ */ L(j, { value: b, children: n });
280
+ const f = l(i, [t, o, e]);
281
+ return /* @__PURE__ */ G(J, { value: f, children: n });
234
282
  }
235
- function dn({ children: n, startTransition: t, isPending: e }) {
236
- function r() {
237
- return { startTransition: t, isPending: e };
283
+ function Tn({ children: n, startTransition: o, isPending: e }) {
284
+ function t() {
285
+ return { startTransition: o, isPending: e };
238
286
  }
239
- const o = f(r, [t, e]);
240
- return /* @__PURE__ */ L(V, { value: o, children: n });
287
+ const r = l(t, [o, e]);
288
+ return /* @__PURE__ */ G(U, { value: r, children: n });
241
289
  }
242
290
  export {
243
- j as Context,
244
- fn as QueryProvider,
245
- dn as QueryTransition,
246
- V as TransitionContext,
247
- an as useQuery,
248
- rn as useQueryActions,
249
- N as useQueryContext,
250
- B as useQueryInstance,
251
- un as useQueryStatus,
252
- en as useQueryTransitionContext
291
+ J as Context,
292
+ vn as QueryProvider,
293
+ Tn as QueryTransition,
294
+ U as TransitionContext,
295
+ mn as useQuery,
296
+ ln as useQueryActions,
297
+ K as useQueryContext,
298
+ L as useQueryInstance,
299
+ gn as useQueryStatus,
300
+ dn as useQueryTransitionContext
253
301
  };
254
302
  //# sourceMappingURL=query_react.js.map