UNPKG

@reduxjs/toolkit

Version:

The official, opinionated, batteries-included toolset for efficient Redux development

2 lines • 9.85 kB
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));let c=require("@reduxjs/toolkit"),l=require("react-redux"),u=require("reselect"),d=require("react");d=s(d);let f=require("@reduxjs/toolkit/query");function p(e){return e.replace(e[0],e[0].toUpperCase())}function m(e){return e.type===`query`}function h(e){return e.type===`mutation`}function g(e){return e.type===`infinitequery`}function _(e,...t){return Object.assign(e,...t)}const v=Symbol();function y(e){let t=(0,d.useRef)(e),n=(0,d.useMemo)(()=>(0,f.copyWithStructuralSharing)(t.current,e),[e]);return(0,d.useEffect)(()=>{t.current!==n&&(t.current=n)},[n]),n}function b(e){let t=(0,d.useRef)(e);return(0,d.useEffect)(()=>{(0,l.shallowEqual)(t.current,e)||(t.current=e)},[e]),(0,l.shallowEqual)(t.current,e)?t.current:e}const x=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,S=typeof navigator<`u`&&navigator.product===`ReactNative`,C=x||S?d.useLayoutEffect:d.useEffect,w=e=>e.isUninitialized?{...e,isUninitialized:!1,isFetching:!0,isLoading:e.data===void 0,status:f.QueryStatus.pending}:e;function T(e,...t){let n={};return t.forEach(t=>{n[t]=e[t]}),n}const E=[`data`,`status`,`isLoading`,`isSuccess`,`isError`,`error`];function D({api:e,moduleOptions:{batch:t,hooks:{useDispatch:n,useSelector:r},unstable__sideEffectsInRender:i,createSelector:a},serializeQueryArgs:o,context:s}){let u=i?e=>e():d.useEffect,p=e=>{e.current?.unsubscribe?.(),e.current=void 0},m=s.endpointDefinitions;return{buildQueryHooks:A,buildInfiniteQueryHooks:j,buildMutationHook:M,usePrefetch:x};function h(e,t,n){if(t?.endpointName&&e.isUninitialized){let{endpointName:e}=t,r=m[e];n!==f.skipToken&&o({queryArgs:t.originalArgs,endpointDefinition:r,endpointName:e})===o({queryArgs:n,endpointDefinition:r,endpointName:e})&&(t=void 0)}let r=e.data;r===void 0&&(r=t?.data);let i=r!==void 0,a=e.isLoading,s=(!t||t.isLoading||t.isUninitialized)&&!i&&a,c=e.isSuccess||i&&(a&&e.error===void 0||e.isUninitialized);return{...e,data:r,currentData:e.data,isFetching:a,isLoading:s,isSuccess:c}}function _(e,t,n){if(t?.endpointName&&e.isUninitialized){let{endpointName:e}=t,r=m[e];n!==f.skipToken&&o({queryArgs:t.originalArgs,endpointDefinition:r,endpointName:e})===o({queryArgs:n,endpointDefinition:r,endpointName:e})&&(t=void 0)}let r=e.data;r===void 0&&(r=t?.data);let i=r!==void 0,a=e.isLoading,s=(!t||t.isLoading||t.isUninitialized)&&!i&&a,c=e.isSuccess||i&&(a&&e.error===void 0||e.isUninitialized);return{...e,data:r,currentData:e.data,isFetching:a,isLoading:s,isSuccess:c}}function x(t,r){let i=n(),a=b(r);return(0,d.useCallback)((n,r)=>i(e.util.prefetch(t,n,{...a,...r})),[t,i,a])}function S(t,r,{refetchOnReconnect:i,refetchOnFocus:a,refetchOnMountOrArgChange:o,skip:s=!1,pollingInterval:c=0,skipPollingIfUnfocused:l=!1,...p}={}){let{initiate:h}=e.endpoints[t],_=n(),v=(0,d.useRef)(void 0);v.current||=_(e.internalActions.internal_getRTKQSubscriptions());let x=y(s?f.skipToken:r),S=b({refetchOnReconnect:i,refetchOnFocus:a,pollingInterval:c,skipPollingIfUnfocused:l}),C=p.initialPageParam,w=b(C),T=p.refetchCachedPages,E=b(T),D=(0,d.useRef)(void 0),{queryCacheKey:O,requestId:k}=D.current||{},A=!1;O&&k&&(A=v.current.isRequestSubscribed(O,k));let j=!A&&D.current!==void 0;return u(()=>{j&&(D.current=void 0)},[j]),u(()=>{let e=D.current;if(x===f.skipToken){e?.unsubscribe(),D.current=void 0;return}let n=D.current?.subscriptionOptions;if(!e||e.arg!==x){e?.unsubscribe();let n=_(h(x,{subscriptionOptions:S,forceRefetch:o,...g(m[t])?{initialPageParam:w,refetchCachedPages:E}:{}}));D.current=n}else S!==n&&e.updateSubscriptionOptions(S)},[_,h,o,x,S,j,w,E,t]),[D,_,h,S]}function D(t,n){return(i,{skip:o=!1,selectFromResult:s}={})=>{let{select:c}=e.endpoints[t],u=y(o?f.skipToken:i),p=(0,d.useRef)(void 0),m=(0,d.useRef)(void 0),h=(0,d.useMemo)(()=>a([c(u),(e,t)=>t,e=>u],n,{memoizeOptions:{resultEqualityCheck:l.shallowEqual}}),[c,u]),g=r((0,d.useMemo)(()=>{let e=s?a([h],s,{devModeChecks:{identityFunctionCheck:`never`}}):h;return t=>{let n=p.current,r=e(t,n);return m.current=h(t,n),r}},[h,s]),l.shallowEqual);return C(()=>{p.current=m.current}),g}}function O(e){(0,d.useEffect)(()=>()=>{p(e)},[e])}function k(e){if(!e.current)throw Error((0,c.formatProdErrorMessage)(38));return e.current.refetch()}function A(r){let i=(e,t={})=>{let[n]=S(r,e,t);return O(n),(0,d.useMemo)(()=>({refetch:()=>k(n)}),[n])},a=({refetchOnReconnect:i,refetchOnFocus:a,pollingInterval:o=0,skipPollingIfUnfocused:s=!1}={})=>{let{initiate:c}=e.endpoints[r],l=n(),[f,m]=(0,d.useState)(v),h=(0,d.useRef)(void 0),g=b({refetchOnReconnect:i,refetchOnFocus:a,pollingInterval:o,skipPollingIfUnfocused:s});u(()=>{let e=h.current?.subscriptionOptions;g!==e&&h.current?.updateSubscriptionOptions(g)},[g]);let _=(0,d.useRef)(g);u(()=>{_.current=g},[g]);let y=(0,d.useCallback)(function(e,n=!1){let r;return t(()=>{p(h),h.current=r=l(c(e,{subscriptionOptions:_.current,forceRefetch:!n})),m(e)}),r},[l,c]),x=(0,d.useCallback)(()=>{h.current?.queryCacheKey&&l(e.internalActions.removeQueryResult({queryCacheKey:h.current?.queryCacheKey}))},[l]);return(0,d.useEffect)(()=>()=>{p(h)},[]),(0,d.useEffect)(()=>{f!==v&&!h.current&&y(f,!0)},[f,y]),(0,d.useMemo)(()=>[y,f,{reset:x}],[y,f,x])},o=D(r,h);return{useQueryState:o,useQuerySubscription:i,useLazyQuerySubscription:a,useLazyQuery(e){let[t,n,{reset:r}]=a(e),i=o(n,{...e,skip:n===v}),s=(0,d.useMemo)(()=>({lastArg:n}),[n]);return(0,d.useMemo)(()=>[t,{...i,reset:r},s],[t,i,r,s])},useQuery(e,t){let n=i(e,t),r=o(e,{selectFromResult:e===f.skipToken||t?.skip?void 0:w,...t}),a=T(r,...E);return(0,d.useDebugValue)(a),(0,d.useMemo)(()=>({...r,...n}),[r,n])}}}function j(e){let n=(n,r={})=>{let[i,a,o,s]=S(e,n,r),l=(0,d.useRef)(s);u(()=>{l.current=s},[s]);let m=r.refetchCachedPages,h=b(m),g=(0,d.useCallback)(function(e,n){let r;return t(()=>{p(i),i.current=r=a(o(e,{subscriptionOptions:l.current,direction:n}))}),r},[i,a,o]);O(i);let _=y(r.skip?f.skipToken:n),v=(0,d.useCallback)(e=>{if(!i.current)throw Error((0,c.formatProdErrorMessage)(38));let t={refetchCachedPages:e?.refetchCachedPages??h};return i.current.refetch(t)},[i,h]);return(0,d.useMemo)(()=>({trigger:g,refetch:v,fetchNextPage:()=>g(_,`forward`),fetchPreviousPage:()=>g(_,`backward`)}),[v,g,_])},r=D(e,_);return{useInfiniteQueryState:r,useInfiniteQuerySubscription:n,useInfiniteQuery(e,t){let{refetch:i,fetchNextPage:a,fetchPreviousPage:o}=n(e,t),s=r(e,{selectFromResult:e===f.skipToken||t?.skip?void 0:w,...t}),c=T(s,...E,`hasNextPage`,`hasPreviousPage`);return(0,d.useDebugValue)(c),(0,d.useMemo)(()=>({...s,fetchNextPage:a,fetchPreviousPage:o,refetch:i}),[s,a,o,i])}}}function M(i){return({selectFromResult:o,fixedCacheKey:s}={})=>{let{select:c,initiate:u}=e.endpoints[i],f=n(),[p,m]=(0,d.useState)();(0,d.useEffect)(()=>()=>{p?.arg.fixedCacheKey||p?.reset()},[p]);let h=(0,d.useCallback)(function(e){let t=f(u(e,{fixedCacheKey:s}));return m(t),t},[f,u,s]),{requestId:g}=p||{},_=(0,d.useMemo)(()=>c({fixedCacheKey:s,requestId:p?.requestId}),[s,p,c]),v=r((0,d.useMemo)(()=>o?a([_],o):_,[o,_]),l.shallowEqual),y=s==null?p?.arg.originalArgs:void 0,b=(0,d.useCallback)(()=>{t(()=>{p&&m(void 0),s&&f(e.internalActions.removeMutationResult({requestId:g,fixedCacheKey:s}))})},[f,s,p,g]),x=T(v,...E,`endpointName`);(0,d.useDebugValue)(x);let S=(0,d.useMemo)(()=>({...v,originalArgs:y,reset:b}),[v,y,b]);return(0,d.useMemo)(()=>[h,S],[h,S])}}}const O=Symbol(),k=({batch:e=l.batch,hooks:t={useDispatch:l.useDispatch,useSelector:l.useSelector,useStore:l.useStore},createSelector:n=u.createSelector,unstable__sideEffectsInRender:r=!1,...i}={})=>({name:O,init(i,{serializeQueryArgs:a},o){let s=i,{buildQueryHooks:c,buildInfiniteQueryHooks:l,buildMutationHook:u,usePrefetch:d}=D({api:i,moduleOptions:{batch:e,hooks:t,unstable__sideEffectsInRender:r,createSelector:n},serializeQueryArgs:a,context:o});return _(s,{usePrefetch:d}),_(o,{batch:e}),{injectEndpoint(e,t){if(m(t)){let{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:a,useQuerySubscription:o}=c(e);_(s.endpoints[e],{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:a,useQuerySubscription:o}),i[`use${p(e)}Query`]=t,i[`useLazy${p(e)}Query`]=n}if(h(t)){let t=u(e);_(s.endpoints[e],{useMutation:t}),i[`use${p(e)}Mutation`]=t}else if(g(t)){let{useInfiniteQuery:t,useInfiniteQuerySubscription:n,useInfiniteQueryState:r}=l(e);_(s.endpoints[e],{useInfiniteQuery:t,useInfiniteQuerySubscription:n,useInfiniteQueryState:r}),i[`use${p(e)}InfiniteQuery`]=t}}}}});function A(e){let t=e.context||l.ReactReduxContext;if((0,d.useContext)(t))throw Error((0,c.formatProdErrorMessage)(35));let[n]=d.useState(()=>(0,c.configureStore)({reducer:{[e.api.reducerPath]:e.api.reducer},middleware:t=>t().concat(e.api.middleware)}));return(0,d.useEffect)(()=>e.setupListeners===!1?void 0:(0,f.setupListeners)(n.dispatch,e.setupListeners),[e.setupListeners,n.dispatch]),d.createElement(l.Provider,{store:n,context:t},e.children)}const j=(0,f.buildCreateApi)((0,f.coreModule)(),k());exports.ApiProvider=A,exports.UNINITIALIZED_VALUE=v,exports.createApi=j,exports.reactHooksModule=k,exports.reactHooksModuleName=O,Object.keys(f).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return f[e]}})}); //# sourceMappingURL=rtk-query-react.production.min.cjs.map