@depup/reduxjs__toolkit 2.12.0-depup.29 → 2.13.0-depup.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.
Files changed (93) hide show
  1. package/README.md +2 -2
  2. package/changes.json +1 -1
  3. package/dist/cjs/redux-toolkit.development.cjs +1755 -2247
  4. package/dist/cjs/redux-toolkit.development.cjs.map +1 -1
  5. package/dist/cjs/redux-toolkit.production.min.cjs +1 -2
  6. package/dist/cjs/redux-toolkit.production.min.cjs.map +1 -1
  7. package/dist/index.d.mts +1496 -1525
  8. package/dist/index.d.ts +1496 -1525
  9. package/dist/query/cjs/rtk-query.development.cjs +2059 -2990
  10. package/dist/query/cjs/rtk-query.development.cjs.map +1 -1
  11. package/dist/query/cjs/rtk-query.production.min.cjs +1 -1
  12. package/dist/query/cjs/rtk-query.production.min.cjs.map +1 -1
  13. package/dist/query/index.d.mts +2300 -2308
  14. package/dist/query/index.d.ts +2300 -2308
  15. package/dist/query/react/cjs/rtk-query-react.development.cjs +609 -714
  16. package/dist/query/react/cjs/rtk-query-react.development.cjs.map +1 -1
  17. package/dist/query/react/cjs/rtk-query-react.production.min.cjs +1 -1
  18. package/dist/query/react/cjs/rtk-query-react.production.min.cjs.map +1 -1
  19. package/dist/query/react/index.d.mts +516 -523
  20. package/dist/query/react/index.d.ts +516 -523
  21. package/dist/query/react/rtk-query-react.browser.mjs +1 -1
  22. package/dist/query/react/rtk-query-react.browser.mjs.map +1 -1
  23. package/dist/query/react/rtk-query-react.legacy-esm.js +672 -714
  24. package/dist/query/react/rtk-query-react.legacy-esm.js.map +1 -1
  25. package/dist/query/react/rtk-query-react.modern.mjs +586 -679
  26. package/dist/query/react/rtk-query-react.modern.mjs.map +1 -1
  27. package/dist/query/rtk-query.browser.mjs +1 -1
  28. package/dist/query/rtk-query.browser.mjs.map +1 -1
  29. package/dist/query/rtk-query.legacy-esm.js +2175 -3014
  30. package/dist/query/rtk-query.legacy-esm.js.map +1 -1
  31. package/dist/query/rtk-query.modern.mjs +2052 -2949
  32. package/dist/query/rtk-query.modern.mjs.map +1 -1
  33. package/dist/react/cjs/redux-toolkit-react.development.cjs +30 -51
  34. package/dist/react/cjs/redux-toolkit-react.development.cjs.map +1 -1
  35. package/dist/react/cjs/redux-toolkit-react.production.min.cjs +1 -1
  36. package/dist/react/cjs/redux-toolkit-react.production.min.cjs.map +1 -1
  37. package/dist/react/index.d.mts +12 -15
  38. package/dist/react/index.d.ts +12 -15
  39. package/dist/react/redux-toolkit-react.browser.mjs +1 -1
  40. package/dist/react/redux-toolkit-react.browser.mjs.map +1 -1
  41. package/dist/react/redux-toolkit-react.legacy-esm.js +83 -44
  42. package/dist/react/redux-toolkit-react.legacy-esm.js.map +1 -1
  43. package/dist/react/redux-toolkit-react.modern.mjs +23 -25
  44. package/dist/react/redux-toolkit-react.modern.mjs.map +1 -1
  45. package/dist/redux-toolkit.browser.mjs +1 -2
  46. package/dist/redux-toolkit.browser.mjs.map +1 -1
  47. package/dist/redux-toolkit.legacy-esm.js +1748 -2201
  48. package/dist/redux-toolkit.legacy-esm.js.map +1 -1
  49. package/dist/redux-toolkit.modern.mjs +1670 -2171
  50. package/dist/redux-toolkit.modern.mjs.map +1 -1
  51. package/package.json +13 -29
  52. package/skills/build-modern-redux-apps/modern-redux/SKILL.md +23 -14
  53. package/skills/build-modern-redux-apps/modern-redux/references/store-lifetime.md +6 -6
  54. package/skills/build-modern-redux-apps/redux-dataflow/SKILL.md +13 -10
  55. package/skills/evolve-and-diagnose-redux-apps/debug-redux-toolkit-apps/SKILL.md +6 -6
  56. package/skills/evolve-and-diagnose-redux-apps/migrate-to-modern-redux/SKILL.md +7 -8
  57. package/skills/manage-server-data/adopt-rtk-query/SKILL.md +13 -11
  58. package/skills/model-redux-state/build-slices-and-selectors/SKILL.md +26 -14
  59. package/skills/model-redux-state/design-state-ownership/SKILL.md +11 -12
  60. package/skills/model-redux-state/design-state-ownership/references/state-ownership.md +6 -6
  61. package/skills/orchestrate-side-effects/handle-side-effects/SKILL.md +27 -23
  62. package/skills/orchestrate-side-effects/handle-side-effects/references/listener-workflows.md +4 -4
  63. package/src/autoBatchEnhancer.ts +5 -3
  64. package/src/combineSlices.ts +5 -5
  65. package/src/createAction.ts +11 -6
  66. package/src/createAsyncThunk.ts +14 -2
  67. package/src/createReducer.ts +1 -1
  68. package/src/createSlice.ts +9 -4
  69. package/src/dynamicMiddleware/index.ts +21 -5
  70. package/src/entities/models.ts +2 -1
  71. package/src/entities/sorted_state_adapter.ts +35 -24
  72. package/src/entities/unsorted_state_adapter.ts +1 -1
  73. package/src/immutableStateInvariantMiddleware.ts +34 -5
  74. package/src/listenerMiddleware/types.ts +10 -10
  75. package/src/mapBuilders.ts +2 -5
  76. package/src/matchers.ts +7 -1
  77. package/src/query/core/apiState.ts +1 -1
  78. package/src/query/core/buildInitiate.ts +19 -15
  79. package/src/query/core/buildMiddleware/cacheLifecycle.ts +3 -1
  80. package/src/query/core/buildMiddleware/index.ts +1 -1
  81. package/src/query/core/buildMiddleware/invalidationByTags.ts +4 -1
  82. package/src/query/core/buildMiddleware/polling.ts +12 -3
  83. package/src/query/core/buildMiddleware/types.ts +5 -2
  84. package/src/query/core/buildSlice.ts +2 -2
  85. package/src/query/core/buildThunks.ts +19 -0
  86. package/src/query/core/module.ts +9 -3
  87. package/src/query/createApi.ts +4 -1
  88. package/src/query/endpointDefinitions.ts +15 -9
  89. package/src/query/fetchBaseQuery.ts +1 -1
  90. package/src/query/react/buildHooks.ts +54 -51
  91. package/src/query/react/namedHooks.ts +28 -24
  92. package/src/query/utils/isAbsoluteUrl.ts +8 -3
  93. package/src/serializableStateInvariantMiddleware.ts +1 -1
@@ -1,2 +1,2 @@
1
- import{buildCreateApi as ue,coreModule as ye,copyWithStructuralSharing as oe,setupListeners as pe,QueryStatus as fe,skipToken as b}from"@reduxjs/toolkit/query";import"@reduxjs/toolkit";import{batch as Ce,useDispatch as Le,useSelector as Ne,useStore as He}from"react-redux";import{createSelector as ze}from"reselect";function _(e){return e.replace(e[0],e[0].toUpperCase())}var he="query",Ue="mutation",Ie="infinitequery";function Qe(e){return e.type===he}function ce(e){return e.type===Ue}function $(e){return e.type===Ie}function z(e,...c){return Object.assign(e,...c)}import{formatProdErrorMessage as be,formatProdErrorMessage as Ee}from"@reduxjs/toolkit";var j=Symbol();import{useEffect as x,useRef as U,useMemo as R,useContext as de,useCallback as k,useDebugValue as G,useLayoutEffect as le,useState as ne}from"react";import{shallowEqual as w,Provider as Re,ReactReduxContext as ge}from"react-redux";function Z(e){let c=U(e),g=R(()=>oe(c.current,e),[e]);return x(()=>{c.current!==g&&(c.current=g)},[g]),g}function v(e){let c=U(e);return x(()=>{w(c.current,e)||(c.current=e)},[e]),w(c.current,e)?c.current:e}var ke=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Oe=ke(),Me=()=>typeof navigator<"u"&&navigator.product==="ReactNative",Fe=Me(),we=()=>Oe||Fe?le:x,ve=we(),Te=e=>e.isUninitialized?{...e,isUninitialized:!1,isFetching:!0,isLoading:e.data===void 0,status:fe.pending}:e;function re(e,...c){let g={};return c.forEach(P=>{g[P]=e[P]}),g}var ie=["data","status","isLoading","isSuccess","isError","error"];function De({api:e,moduleOptions:{batch:c,hooks:{useDispatch:g,useSelector:P,useStore:W},unstable__sideEffectsInRender:I,createSelector:C},serializeQueryArgs:E,context:L}){let O=I?t=>t():x,N=t=>t.current?.unsubscribe?.(),q=L.endpointDefinitions;return{buildQueryHooks:ee,buildInfiniteQueryHooks:Se,buildMutationHook:Be,usePrefetch:K};function J(t,i,p){if(i?.endpointName&&t.isUninitialized){let{endpointName:a}=i,y=q[a];p!==b&&E({queryArgs:i.originalArgs,endpointDefinition:y,endpointName:a})===E({queryArgs:p,endpointDefinition:y,endpointName:a})&&(i=void 0)}let u=t.isSuccess?t.data:i?.data;u===void 0&&(u=t.data);let s=u!==void 0,n=t.isLoading,r=(!i||i.isLoading||i.isUninitialized)&&!s&&n,o=t.isSuccess||s&&(n&&!i?.isError||t.isUninitialized);return{...t,data:u,currentData:t.data,isFetching:n,isLoading:r,isSuccess:o}}function m(t,i,p){if(i?.endpointName&&t.isUninitialized){let{endpointName:a}=i,y=q[a];p!==b&&E({queryArgs:i.originalArgs,endpointDefinition:y,endpointName:a})===E({queryArgs:p,endpointDefinition:y,endpointName:a})&&(i=void 0)}let u=t.isSuccess?t.data:i?.data;u===void 0&&(u=t.data);let s=u!==void 0,n=t.isLoading,r=(!i||i.isLoading||i.isUninitialized)&&!s&&n,o=t.isSuccess||s&&(n&&!i?.isError||t.isUninitialized);return{...t,data:u,currentData:t.data,isFetching:n,isLoading:r,isSuccess:o}}function K(t,i){let p=g(),u=v(i);return k((s,n)=>p(e.util.prefetch(t,s,{...u,...n})),[t,p,u])}function h(t,i,{refetchOnReconnect:p,refetchOnFocus:u,refetchOnMountOrArgChange:s,skip:n=!1,pollingInterval:r=0,skipPollingIfUnfocused:o=!1,...a}={}){let{initiate:y}=e.endpoints[t],d=g(),S=U(void 0);if(!S.current){let F=d(e.internalActions.internal_getRTKQSubscriptions());S.current=F}let f=Z(n?b:i),Q=v({refetchOnReconnect:p,refetchOnFocus:u,pollingInterval:r,skipPollingIfUnfocused:o}),T=a.initialPageParam,l=v(T),B=a.refetchCachedPages,A=v(B),D=U(void 0),{queryCacheKey:V,requestId:se}=D.current||{},ae=!1;V&&se&&(ae=S.current.isRequestSubscribed(V,se));let te=!ae&&D.current!==void 0;return O(()=>{te&&(D.current=void 0)},[te]),O(()=>{let F=D.current;if(f===b){F?.unsubscribe(),D.current=void 0;return}let Ae=D.current?.subscriptionOptions;if(!F||F.arg!==f){F?.unsubscribe();let Pe=d(y(f,{subscriptionOptions:Q,forceRefetch:s,...$(q[t])?{initialPageParam:l,refetchCachedPages:A}:{}}));D.current=Pe}else Q!==Ae&&F.updateSubscriptionOptions(Q)},[d,y,s,f,Q,te,l,A,t]),[D,d,y,Q]}function M(t,i){return(u,{skip:s=!1,selectFromResult:n}={})=>{let{select:r}=e.endpoints[t],o=Z(s?b:u),a=U(void 0),y=R(()=>C([r(o),(T,l)=>l,T=>o],i,{memoizeOptions:{resultEqualityCheck:w}}),[r,o]),d=R(()=>n?C([y],n,{devModeChecks:{identityFunctionCheck:"never"}}):y,[y,n]),S=P(T=>d(T,a.current),w),f=W(),Q=y(f.getState(),a.current);return ve(()=>{a.current=Q},[Q]),S}}function H(t){x(()=>()=>{N(t),t.current=void 0},[t])}function X(t){if(!t.current)throw new Error(be(38));return t.current.refetch()}function ee(t){let i=(s,n={})=>{let[r]=h(t,s,n);return H(r),R(()=>({refetch:()=>X(r)}),[r])},p=({refetchOnReconnect:s,refetchOnFocus:n,pollingInterval:r=0,skipPollingIfUnfocused:o=!1}={})=>{let{initiate:a}=e.endpoints[t],y=g(),[d,S]=ne(j),f=U(void 0),Q=v({refetchOnReconnect:s,refetchOnFocus:n,pollingInterval:r,skipPollingIfUnfocused:o});O(()=>{let A=f.current?.subscriptionOptions;Q!==A&&f.current?.updateSubscriptionOptions(Q)},[Q]);let T=U(Q);O(()=>{T.current=Q},[Q]);let l=k(function(A,D=!1){let V;return c(()=>{N(f),f.current=V=y(a(A,{subscriptionOptions:T.current,forceRefetch:!D})),S(A)}),V},[y,a]),B=k(()=>{f.current?.queryCacheKey&&y(e.internalActions.removeQueryResult({queryCacheKey:f.current?.queryCacheKey}))},[y]);return x(()=>()=>{N(f)},[]),x(()=>{d!==j&&!f.current&&l(d,!0)},[d,l]),R(()=>[l,d,{reset:B}],[l,d,B])},u=M(t,J);return{useQueryState:u,useQuerySubscription:i,useLazyQuerySubscription:p,useLazyQuery(s){let[n,r,{reset:o}]=p(s),a=u(r,{...s,skip:r===j}),y=R(()=>({lastArg:r}),[r]);return R(()=>[n,{...a,reset:o},y],[n,a,o,y])},useQuery(s,n){let r=i(s,n),o=u(s,{selectFromResult:s===b||n?.skip?void 0:Te,...n}),a=re(o,...ie);return G(a),R(()=>({...o,...r}),[o,r])}}}function Se(t){let i=(u,s={})=>{let[n,r,o,a]=h(t,u,s),y=U(a);O(()=>{y.current=a},[a]);let d=s.refetchCachedPages,S=v(d),f=k(function(l,B){let A;return c(()=>{N(n),n.current=A=r(o(l,{subscriptionOptions:y.current,direction:B}))}),A},[n,r,o]);H(n);let Q=Z(s.skip?b:u),T=k(l=>{if(!n.current)throw new Error(Ee(38));let B={refetchCachedPages:l?.refetchCachedPages??S};return n.current.refetch(B)},[n,S]);return R(()=>({trigger:f,refetch:T,fetchNextPage:()=>f(Q,"forward"),fetchPreviousPage:()=>f(Q,"backward")}),[T,f,Q])},p=M(t,m);return{useInfiniteQueryState:p,useInfiniteQuerySubscription:i,useInfiniteQuery(u,s){let{refetch:n,fetchNextPage:r,fetchPreviousPage:o}=i(u,s),a=p(u,{selectFromResult:u===b||s?.skip?void 0:Te,...s}),y=re(a,...ie,"hasNextPage","hasPreviousPage");return G(y),R(()=>({...a,fetchNextPage:r,fetchPreviousPage:o,refetch:n}),[a,r,o,n])}}}function Be(t){return({selectFromResult:i,fixedCacheKey:p}={})=>{let{select:u,initiate:s}=e.endpoints[t],n=g(),[r,o]=ne();x(()=>()=>{r?.arg.fixedCacheKey||r?.reset()},[r]);let a=k(function(A){let D=n(s(A,{fixedCacheKey:p}));return o(D),D},[n,s,p]),{requestId:y}=r||{},d=R(()=>u({fixedCacheKey:p,requestId:r?.requestId}),[p,r,u]),S=R(()=>i?C([d],i):d,[i,d]),f=P(S,w),Q=p==null?r?.arg.originalArgs:void 0,T=k(()=>{c(()=>{r&&o(void 0),p&&n(e.internalActions.removeMutationResult({requestId:y,fixedCacheKey:p}))})},[n,p,r,y]),l=re(f,...ie,"endpointName");G(l);let B=R(()=>({...f,originalArgs:Q,reset:T}),[f,Q,T]);return R(()=>[a,B],[a,B])}}}var xe=Symbol(),me=({batch:e=Ce,hooks:c={useDispatch:Le,useSelector:Ne,useStore:He},createSelector:g=ze,unstable__sideEffectsInRender:P=!1,...W}={})=>({name:xe,init(I,{serializeQueryArgs:C},E){let L=I,{buildQueryHooks:O,buildInfiniteQueryHooks:N,buildMutationHook:q,usePrefetch:J}=De({api:I,moduleOptions:{batch:e,hooks:c,unstable__sideEffectsInRender:P,createSelector:g},serializeQueryArgs:C,context:E});return z(L,{usePrefetch:J}),z(E,{batch:e}),{injectEndpoint(m,K){if(Qe(K)){let{useQuery:h,useLazyQuery:M,useLazyQuerySubscription:H,useQueryState:X,useQuerySubscription:ee}=O(m);z(L.endpoints[m],{useQuery:h,useLazyQuery:M,useLazyQuerySubscription:H,useQueryState:X,useQuerySubscription:ee}),I[`use${_(m)}Query`]=h,I[`useLazy${_(m)}Query`]=M}if(ce(K)){let h=q(m);z(L.endpoints[m],{useMutation:h}),I[`use${_(m)}Mutation`]=h}else if($(K)){let{useInfiniteQuery:h,useInfiniteQuerySubscription:M,useInfiniteQueryState:H}=N(m);z(L.endpoints[m],{useInfiniteQuery:h,useInfiniteQuerySubscription:M,useInfiniteQueryState:H}),I[`use${_(m)}InfiniteQuery`]=h}}}}});export*from"@reduxjs/toolkit/query";import{configureStore as qe,formatProdErrorMessage as Ke}from"@reduxjs/toolkit";import*as Y from"react";function Ve(e){let c=e.context||ge;if(de(c))throw new Error(Ke(35));let[P]=Y.useState(()=>qe({reducer:{[e.api.reducerPath]:e.api.reducer},middleware:W=>W().concat(e.api.middleware)}));return x(()=>e.setupListeners===!1?void 0:pe(P.dispatch,e.setupListeners),[e.setupListeners,P.dispatch]),Y.createElement(Re,{store:P,context:c},e.children)}var Ft=ue(ye(),me());export{Ve as ApiProvider,j as UNINITIALIZED_VALUE,Ft as createApi,me as reactHooksModule,xe as reactHooksModuleName};
1
+ import{QueryStatus as e,buildCreateApi as t,copyWithStructuralSharing as n,coreModule as r,setupListeners as i,skipToken as a}from"@reduxjs/toolkit/query";import{configureStore as o,formatProdErrorMessage as s}from"@reduxjs/toolkit";import{Provider as c,ReactReduxContext as l,batch as u,shallowEqual as d,useDispatch as f,useSelector as p,useStore as m}from"react-redux";import{createSelector as h}from"reselect";import*as g from"react";import{useCallback as _,useContext as v,useDebugValue as y,useEffect as b,useLayoutEffect as x,useMemo as S,useRef as C,useState as w}from"react";export*from"@reduxjs/toolkit/query";function T(e){return e.replace(e[0],e[0].toUpperCase())}function E(e){return e.type===`query`}function D(e){return e.type===`mutation`}function O(e){return e.type===`infinitequery`}function k(e,...t){return Object.assign(e,...t)}const A=Symbol();function j(e){let t=C(e),r=S(()=>n(t.current,e),[e]);return b(()=>{t.current!==r&&(t.current=r)},[r]),r}function M(e){let t=C(e);return b(()=>{d(t.current,e)||(t.current=e)},[e]),d(t.current,e)?t.current:e}const N=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,P=typeof navigator<`u`&&navigator.product===`ReactNative`,F=N||P?x:b,I=t=>t.isUninitialized?{...t,isUninitialized:!1,isFetching:!0,isLoading:t.data===void 0,status:e.pending}:t;function L(e,...t){let n={};return t.forEach(t=>{n[t]=e[t]}),n}const R=[`data`,`status`,`isLoading`,`isSuccess`,`isError`,`error`];function z({api:e,moduleOptions:{batch:t,hooks:{useDispatch:n,useSelector:r},unstable__sideEffectsInRender:i,createSelector:o},serializeQueryArgs:c,context:l}){let u=i?e=>e():b,f=e=>{e.current?.unsubscribe?.(),e.current=void 0},p=l.endpointDefinitions;return{buildQueryHooks:D,buildInfiniteQueryHooks:k,buildMutationHook:N,usePrefetch:g};function m(e,t,n){if(t?.endpointName&&e.isUninitialized){let{endpointName:e}=t,r=p[e];n!==a&&c({queryArgs:t.originalArgs,endpointDefinition:r,endpointName:e})===c({queryArgs:n,endpointDefinition:r,endpointName:e})&&(t=void 0)}let r=e.data;r===void 0&&(r=t?.data);let i=r!==void 0,o=e.isLoading,s=(!t||t.isLoading||t.isUninitialized)&&!i&&o,l=e.isSuccess||i&&(o&&e.error===void 0||e.isUninitialized);return{...e,data:r,currentData:e.data,isFetching:o,isLoading:s,isSuccess:l}}function h(e,t,n){if(t?.endpointName&&e.isUninitialized){let{endpointName:e}=t,r=p[e];n!==a&&c({queryArgs:t.originalArgs,endpointDefinition:r,endpointName:e})===c({queryArgs:n,endpointDefinition:r,endpointName:e})&&(t=void 0)}let r=e.data;r===void 0&&(r=t?.data);let i=r!==void 0,o=e.isLoading,s=(!t||t.isLoading||t.isUninitialized)&&!i&&o,l=e.isSuccess||i&&(o&&e.error===void 0||e.isUninitialized);return{...e,data:r,currentData:e.data,isFetching:o,isLoading:s,isSuccess:l}}function g(t,r){let i=n(),a=M(r);return _((n,r)=>i(e.util.prefetch(t,n,{...a,...r})),[t,i,a])}function v(t,r,{refetchOnReconnect:i,refetchOnFocus:o,refetchOnMountOrArgChange:s,skip:c=!1,pollingInterval:l=0,skipPollingIfUnfocused:d=!1,...f}={}){let{initiate:m}=e.endpoints[t],h=n(),g=C(void 0);g.current||=h(e.internalActions.internal_getRTKQSubscriptions());let _=j(c?a:r),v=M({refetchOnReconnect:i,refetchOnFocus:o,pollingInterval:l,skipPollingIfUnfocused:d}),y=f.initialPageParam,b=M(y),x=f.refetchCachedPages,S=M(x),w=C(void 0),{queryCacheKey:T,requestId:E}=w.current||{},D=!1;T&&E&&(D=g.current.isRequestSubscribed(T,E));let k=!D&&w.current!==void 0;return u(()=>{k&&(w.current=void 0)},[k]),u(()=>{let e=w.current;if(_===a){e?.unsubscribe(),w.current=void 0;return}let n=w.current?.subscriptionOptions;if(!e||e.arg!==_){e?.unsubscribe();let n=h(m(_,{subscriptionOptions:v,forceRefetch:s,...O(p[t])?{initialPageParam:b,refetchCachedPages:S}:{}}));w.current=n}else v!==n&&e.updateSubscriptionOptions(v)},[h,m,s,_,v,k,b,S,t]),[w,h,m,v]}function x(t,n){return(i,{skip:s=!1,selectFromResult:c}={})=>{let{select:l}=e.endpoints[t],u=j(s?a:i),f=C(void 0),p=C(void 0),m=S(()=>o([l(u),(e,t)=>t,e=>u],n,{memoizeOptions:{resultEqualityCheck:d}}),[l,u]),h=r(S(()=>{let e=c?o([m],c,{devModeChecks:{identityFunctionCheck:`never`}}):m;return t=>{let n=f.current,r=e(t,n);return p.current=m(t,n),r}},[m,c]),d);return F(()=>{f.current=p.current}),h}}function T(e){b(()=>()=>{f(e)},[e])}function E(e){if(!e.current)throw Error(s(38));return e.current.refetch()}function D(r){let i=(e,t={})=>{let[n]=v(r,e,t);return T(n),S(()=>({refetch:()=>E(n)}),[n])},o=({refetchOnReconnect:i,refetchOnFocus:a,pollingInterval:o=0,skipPollingIfUnfocused:s=!1}={})=>{let{initiate:c}=e.endpoints[r],l=n(),[d,p]=w(A),m=C(void 0),h=M({refetchOnReconnect:i,refetchOnFocus:a,pollingInterval:o,skipPollingIfUnfocused:s});u(()=>{let e=m.current?.subscriptionOptions;h!==e&&m.current?.updateSubscriptionOptions(h)},[h]);let g=C(h);u(()=>{g.current=h},[h]);let v=_(function(e,n=!1){let r;return t(()=>{f(m),m.current=r=l(c(e,{subscriptionOptions:g.current,forceRefetch:!n})),p(e)}),r},[l,c]),y=_(()=>{m.current?.queryCacheKey&&l(e.internalActions.removeQueryResult({queryCacheKey:m.current?.queryCacheKey}))},[l]);return b(()=>()=>{f(m)},[]),b(()=>{d!==A&&!m.current&&v(d,!0)},[d,v]),S(()=>[v,d,{reset:y}],[v,d,y])},s=x(r,m);return{useQueryState:s,useQuerySubscription:i,useLazyQuerySubscription:o,useLazyQuery(e){let[t,n,{reset:r}]=o(e),i=s(n,{...e,skip:n===A}),a=S(()=>({lastArg:n}),[n]);return S(()=>[t,{...i,reset:r},a],[t,i,r,a])},useQuery(e,t){let n=i(e,t),r=s(e,{selectFromResult:e===a||t?.skip?void 0:I,...t}),o=L(r,...R);return y(o),S(()=>({...r,...n}),[r,n])}}}function k(e){let n=(n,r={})=>{let[i,o,c,l]=v(e,n,r),d=C(l);u(()=>{d.current=l},[l]);let p=r.refetchCachedPages,m=M(p),h=_(function(e,n){let r;return t(()=>{f(i),i.current=r=o(c(e,{subscriptionOptions:d.current,direction:n}))}),r},[i,o,c]);T(i);let g=j(r.skip?a:n),y=_(e=>{if(!i.current)throw Error(s(38));let t={refetchCachedPages:e?.refetchCachedPages??m};return i.current.refetch(t)},[i,m]);return S(()=>({trigger:h,refetch:y,fetchNextPage:()=>h(g,`forward`),fetchPreviousPage:()=>h(g,`backward`)}),[y,h,g])},r=x(e,h);return{useInfiniteQueryState:r,useInfiniteQuerySubscription:n,useInfiniteQuery(e,t){let{refetch:i,fetchNextPage:o,fetchPreviousPage:s}=n(e,t),c=r(e,{selectFromResult:e===a||t?.skip?void 0:I,...t}),l=L(c,...R,`hasNextPage`,`hasPreviousPage`);return y(l),S(()=>({...c,fetchNextPage:o,fetchPreviousPage:s,refetch:i}),[c,o,s,i])}}}function N(i){return({selectFromResult:a,fixedCacheKey:s}={})=>{let{select:c,initiate:l}=e.endpoints[i],u=n(),[f,p]=w();b(()=>()=>{f?.arg.fixedCacheKey||f?.reset()},[f]);let m=_(function(e){let t=u(l(e,{fixedCacheKey:s}));return p(t),t},[u,l,s]),{requestId:h}=f||{},g=S(()=>c({fixedCacheKey:s,requestId:f?.requestId}),[s,f,c]),v=r(S(()=>a?o([g],a):g,[a,g]),d),x=s==null?f?.arg.originalArgs:void 0,C=_(()=>{t(()=>{f&&p(void 0),s&&u(e.internalActions.removeMutationResult({requestId:h,fixedCacheKey:s}))})},[u,s,f,h]),T=L(v,...R,`endpointName`);y(T);let E=S(()=>({...v,originalArgs:x,reset:C}),[v,x,C]);return S(()=>[m,E],[m,E])}}}const B=Symbol(),V=({batch:e=u,hooks:t={useDispatch:f,useSelector:p,useStore:m},createSelector:n=h,unstable__sideEffectsInRender:r=!1,...i}={})=>({name:B,init(i,{serializeQueryArgs:a},o){let s=i,{buildQueryHooks:c,buildInfiniteQueryHooks:l,buildMutationHook:u,usePrefetch:d}=z({api:i,moduleOptions:{batch:e,hooks:t,unstable__sideEffectsInRender:r,createSelector:n},serializeQueryArgs:a,context:o});return k(s,{usePrefetch:d}),k(o,{batch:e}),{injectEndpoint(e,t){if(E(t)){let{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:a,useQuerySubscription:o}=c(e);k(s.endpoints[e],{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:a,useQuerySubscription:o}),i[`use${T(e)}Query`]=t,i[`useLazy${T(e)}Query`]=n}if(D(t)){let t=u(e);k(s.endpoints[e],{useMutation:t}),i[`use${T(e)}Mutation`]=t}else if(O(t)){let{useInfiniteQuery:t,useInfiniteQuerySubscription:n,useInfiniteQueryState:r}=l(e);k(s.endpoints[e],{useInfiniteQuery:t,useInfiniteQuerySubscription:n,useInfiniteQueryState:r}),i[`use${T(e)}InfiniteQuery`]=t}}}}});function H(e){let t=e.context||l;if(v(t))throw Error(s(35));let[n]=g.useState(()=>o({reducer:{[e.api.reducerPath]:e.api.reducer},middleware:t=>t().concat(e.api.middleware)}));return b(()=>e.setupListeners===!1?void 0:i(n.dispatch,e.setupListeners),[e.setupListeners,n.dispatch]),g.createElement(c,{store:n,context:t},e.children)}const U=t(r(),V());export{H as ApiProvider,A as UNINITIALIZED_VALUE,U as createApi,V as reactHooksModule,B as reactHooksModuleName};
2
2
  //# sourceMappingURL=rtk-query-react.browser.mjs.map