UNPKG

@reduxjs/toolkit

Version:

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

2 lines • 22.7 kB
import{applyMiddleware as e,combineReducers as t,combineReducers as n,compose as r,createStore as i,isAction as a,isPlainObject as o}from"redux";import{current as s,freeze as c,isDraft as l,isDraftable as u,original as d,produce as f}from"immer";import{createSelector as p,createSelectorCreator as m,lruMemoize as h,weakMapMemoize as g}from"reselect";import{thunk as _,withExtraArgument as ee}from"redux-thunk";export*from"redux";const v=(...e)=>{let t=m(...e),n=Object.assign((...e)=>{let n=t(...e),r=(e,...t)=>n(l(e)?s(e):e,...t);return Object.assign(r,n),r},{withTypes:()=>n});return n},te=v(g),ne=typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]==`object`?r:r.apply(null,arguments)};typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__;const y=e=>e&&typeof e.match==`function`;function b(e,t){function n(...n){if(t){let r=t(...n);if(!r)throw Error($(0));return{type:e,payload:r.payload,...`meta`in r&&{meta:r.meta},...`error`in r&&{error:r.error}}}return{type:e,payload:n[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=t=>a(t)&&t.type===e,n}function re(e){return typeof e==`function`&&`type`in e&&y(e)}function ie(e){return a(e)&&Object.keys(e).every(ae)}function ae(e){return[`type`,`payload`,`error`,`meta`].indexOf(e)>-1}function oe(e={}){return()=>e=>t=>e(t)}var x=class e extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(...e){return super.concat.apply(this,e)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new e(...t[0].concat(this)):new e(...t.concat(this))}};function S(e){return u(e)?f(e,()=>{}):e}function C(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function se(e){return typeof e!=`object`||!e||Object.isFrozen(e)}function ce(e={}){return()=>e=>t=>e(t)}function le(e){let t=typeof e;return e==null||t===`string`||t===`boolean`||t===`number`||Array.isArray(e)||o(e)}function ue(e,t=``,n=le,r,i=[],a){let o;if(!n(e))return{keyPath:t||`<root>`,value:e};if(typeof e!=`object`||!e||a?.has(e))return!1;let s=r==null?Object.entries(e):r(e),c=i.length>0;for(let[e,l]of s){let s=t?t+`.`+e:e;if(!(c&&i.some(e=>e instanceof RegExp?e.test(s):s===e))){if(!n(l))return{keyPath:s,value:l};if(typeof l==`object`&&(o=ue(l,s,n,r,i,a),o))return o}}return a&&de(e)&&a.add(e),!1}function de(e){if(!Object.isFrozen(e))return!1;for(let t of Object.values(e))if(!(typeof t!=`object`||!t)&&!de(t))return!1;return!0}function fe(e={}){return()=>e=>t=>e(t)}function pe(e){return typeof e==`boolean`}const me=()=>function(e){let{thunk:t=!0,immutableCheck:n=!0,serializableCheck:r=!0,actionCreatorCheck:i=!0}=e??{},a=new x;return t&&(pe(t)?a.push(_):a.push(ee(t.extraArgument))),a},w=`RTK_autoBatch`,he=()=>e=>({payload:e,meta:{[w]:!0}}),ge=e=>t=>{setTimeout(t,e)},_e=(e,t)=>n=>{let r=!1,i,a,o=()=>{r||(r=!0,cancelAnimationFrame(i),clearTimeout(a),n())};i=e(o),a=setTimeout(o,t)},ve=(e={type:`raf`})=>t=>(...n)=>{let r=t(...n),i=!0,a=!1,o=!1,s=new Set,c=e.type===`tick`?queueMicrotask:e.type===`raf`?typeof window<`u`&&window.requestAnimationFrame?_e(window.requestAnimationFrame,100):ge(10):e.type===`callback`?e.queueNotification:ge(e.timeout),l=()=>{o=!1,a&&(a=!1,s.forEach(e=>e()))};return Object.assign({},r,{subscribe(e){let t=r.subscribe(()=>i&&e());return s.add(e),()=>{t(),s.delete(e)}},dispatch(e){try{return i=!e?.meta?.[w],a=!i,a&&(o||(o=!0,c(l))),r.dispatch(e)}finally{i=!0}}})},ye=e=>function(t){let{autoBatch:n=!0}=t??{},r=new x(e);return n&&r.push(ve(typeof n==`object`?n:void 0)),r};function be(t){let a=me(),{reducer:s=void 0,middleware:c,devTools:l=!0,duplicateMiddlewareCheck:u=!0,preloadedState:d=void 0,enhancers:f=void 0}=t||{},p;if(typeof s==`function`)p=s;else if(o(s))p=n(s);else throw Error($(1));let m;m=typeof c==`function`?c(a):a();let h=r;l&&(h=ne({trace:!1,...typeof l==`object`&&l}));let g=e(...m),_=ye(g),ee=typeof f==`function`?f(_):_(),v=h(...ee);return i(p,d,v)}function xe(e){let t={},n=[],r,i={addCase(e,n){let r=typeof e==`string`?e:e.type;if(!r)throw Error($(28));if(r in t)throw Error($(29));return t[r]=n,i},addAsyncThunk(e,r){return r.pending&&(t[e.pending.type]=r.pending),r.rejected&&(t[e.rejected.type]=r.rejected),r.fulfilled&&(t[e.fulfilled.type]=r.fulfilled),r.settled&&n.push({matcher:e.settled,reducer:r.settled}),i},addMatcher(e,t){return n.push({matcher:e,reducer:t}),i},addDefaultCase(e){return r=e,i}};return e(i),[t,n,r]}function Se(e){return typeof e==`function`}function Ce(e,t){let[n,r,i]=xe(t),a;if(Se(e))a=()=>S(e());else{let t=S(e);a=()=>t}function o(e=a(),t){let o=[n[t.type],...r.filter(({matcher:e})=>e(t)).map(({reducer:e})=>e)];return o.filter(e=>!!e).length===0&&(o=[i]),o.reduce((e,n)=>{if(n){if(l(e)){let r=n(e,t);return r===void 0?e:r}if(u(e))return f(e,e=>n(e,t));{let r=n(e,t);if(r===void 0){if(e===null)return e;throw Error($(9))}return r}}return e},e)}return o.getInitialState=a,o}const we=(e,t)=>y(e)?e.match(t):e(t);function T(...e){return t=>e.some(e=>we(e,t))}function E(...e){return t=>e.every(e=>we(e,t))}function D(e,t){if(!e||!e.meta)return!1;let n=typeof e.meta.requestId==`string`,r=t.indexOf(e.meta.requestStatus)>-1;return n&&r}function O(e){return typeof e[0]==`function`&&`pending`in e[0]&&`fulfilled`in e[0]&&`rejected`in e[0]}function Te(...e){return e.length===0?e=>D(e,[`pending`]):O(e)?T(...e.map(e=>e.pending)):Te()(e[0])}function k(...e){return e.length===0?e=>D(e,[`rejected`]):O(e)?T(...e.map(e=>e.rejected)):k()(e[0])}function Ee(...e){let t=e=>e&&e.meta&&e.meta.rejectedWithValue;return e.length===0||O(e)?E(k(...e),t):Ee()(e[0])}function De(...e){return e.length===0?e=>D(e,[`fulfilled`]):O(e)?T(...e.map(e=>e.fulfilled)):De()(e[0])}function Oe(...e){return e.length===0?e=>D(e,[`pending`,`fulfilled`,`rejected`]):O(e)?T(...e.flatMap(e=>[e.pending,e.rejected,e.fulfilled])):Oe()(e[0])}let A=(e=21)=>{let t=``,n=e;for(;n--;)t+=`ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW`[Math.random()*64|0];return t};const ke=[`name`,`message`,`stack`,`code`];var j=class{payload;meta;_type;constructor(e,t){this.payload=e,this.meta=t}},Ae=class{payload;meta;_type;constructor(e,t){this.payload=e,this.meta=t}};const je=e=>{if(typeof e==`object`&&e){let t={};for(let n of ke)typeof e[n]==`string`&&(t[n]=e[n]);return t}return{message:String(e)}},Me=`External signal was aborted`,Ne=(()=>{function e(e,t,n){let r=b(e+`/fulfilled`,(e,t,n,r)=>({payload:e,meta:{...r||{},arg:n,requestId:t,requestStatus:`fulfilled`}})),i=b(e+`/pending`,(e,t,n)=>({payload:void 0,meta:{...n||{},arg:t,requestId:e,requestStatus:`pending`}})),a=b(e+`/rejected`,(e,t,r,i,a)=>({payload:i,error:(n&&n.serializeError||je)(e||`Rejected`),meta:{...a||{},arg:r,requestId:t,rejectedWithValue:i!==void 0,requestStatus:`rejected`,aborted:e?.name===`AbortError`,condition:e?.name===`ConditionError`}}));function o(e,{signal:o}={}){return(s,c,l)=>{let u=n?.idGenerator?n.idGenerator(e):A(),d=new AbortController,f,p;function m(e){p=e,d.abort()}o&&(o.aborted?m(Me):o.addEventListener(`abort`,()=>m(Me),{once:!0}));let h=async function(){let o;try{let a=n?.condition?.(e,{getState:c,extra:l});if(Fe(a)&&(a=await a),a===!1)throw{name:`ConditionError`,message:`Aborted due to condition callback returning false.`};if(d.signal.aborted)throw{name:`AbortError`,message:p||`Aborted`};let h=new Promise((e,t)=>{f=()=>{t({name:`AbortError`,message:p||`Aborted`})},d.signal.addEventListener(`abort`,f,{once:!0})});s(i(u,e,n?.getPendingMeta?.({requestId:u,arg:e},{getState:c,extra:l}))),o=await Promise.race([h,Promise.resolve(t(e,{dispatch:s,getState:c,extra:l,requestId:u,signal:d.signal,abort:m,rejectWithValue:((e,t)=>new j(e,t)),fulfillWithValue:((e,t)=>new Ae(e,t))})).then(t=>{if(t instanceof j)throw t;return t instanceof Ae?r(t.payload,u,e,t.meta):r(t,u,e)})])}catch(t){o=t instanceof j?a(null,u,e,t.payload,t.meta):a(t,u,e)}finally{f&&d.signal.removeEventListener(`abort`,f)}return n&&!n.dispatchConditionRejection&&a.match(o)&&o.meta.condition||s(o),o}();return Object.assign(h,{abort:m,requestId:u,arg:e,unwrap(){return h.then(Pe)}})}}return Object.assign(o,{pending:i,rejected:a,fulfilled:r,settled:T(a,r),typePrefix:e})}return e.withTypes=()=>e,e})();function Pe(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}function Fe(e){return typeof e==`object`&&!!e&&typeof e.then==`function`}const M=Symbol.for(`rtk-slice-createasyncthunk`),Ie={[M]:Ne};let Le=function(e){return e.reducer=`reducer`,e.reducerWithPrepare=`reducerWithPrepare`,e.asyncThunk=`asyncThunk`,e}({});function Re(e,t){return`${e}/${t}`}function N({creators:e}={}){let t=e?.asyncThunk?.[M];return function(e){let{name:n,reducerPath:r=n}=e;if(!n)throw Error($(11));let i=(typeof e.reducers==`function`?e.reducers(Ve()):e.reducers)||{},a=Object.keys(i),o={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},s={addCase(e,t){let n=typeof e==`string`?e:e.type;if(!n)throw Error($(12));if(n in o.sliceCaseReducersByType)throw Error($(13));return o.sliceCaseReducersByType[n]=t,s},addMatcher(e,t){return o.sliceMatchers.push({matcher:e,reducer:t}),s},exposeAction(e,t){return o.actionCreators[e]=t,s},exposeCaseReducer(e,t){return o.sliceCaseReducersByName[e]=t,s}};a.forEach(r=>{let a=i[r],o={reducerName:r,type:Re(n,r),createNotation:typeof e.reducers==`function`};Ue(a)?Ge(o,a,s,t):He(o,a,s)});function c(){let[t={},n=[],r=void 0]=typeof e.extraReducers==`function`?xe(e.extraReducers):[e.extraReducers],i={...t,...o.sliceCaseReducersByType};return Ce(e.initialState,e=>{for(let t in i)e.addCase(t,i[t]);for(let t of o.sliceMatchers)e.addMatcher(t.matcher,t.reducer);for(let t of n)e.addMatcher(t.matcher,t.reducer);r&&e.addDefaultCase(r)})}let l=e=>e,u=new Map,d=new WeakMap,f;function p(e,t){return f||=c(),f(e,t)}function m(){return f||=c(),f.getInitialState()}function h(t,n=!1){function r(e){let i=e[t];return i===void 0&&n&&(i=C(d,r,m)),i}function i(t=l){return C(C(u,n,()=>new WeakMap),t,()=>{let r={};for(let[i,a]of Object.entries(e.selectors??{}))r[i]=ze(a,t,()=>C(d,t,m),n);return r})}return{reducerPath:t,getSelectors:i,get selectors(){return i(r)},selectSlice:r}}let g={name:n,reducer:p,actions:o.actionCreators,caseReducers:o.sliceCaseReducersByName,getInitialState:m,...h(r),injectInto(e,{reducerPath:t,...n}={}){let i=t??r;return e.inject({reducerPath:i,reducer:p},n),{...g,...h(i,!0)}}};return g}}function ze(e,t,n,r){function i(i,...a){let o=t(i);return o===void 0&&r&&(o=n()),e(o,...a)}return i.unwrapped=e,i}const Be=N();function Ve(){function e(e,t){return{_reducerDefinitionType:`asyncThunk`,payloadCreator:e,...t}}return e.withTypes=()=>e,{reducer(e){return Object.assign({[e.name](...t){return e(...t)}}[e.name],{_reducerDefinitionType:`reducer`})},preparedReducer(e,t){return{_reducerDefinitionType:`reducerWithPrepare`,prepare:e,reducer:t}},asyncThunk:e}}function He({type:e,reducerName:t,createNotation:n},r,i){let a,o;if(`reducer`in r){if(n&&!We(r))throw Error($(17));a=r.reducer,o=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,o?b(e,o):b(e))}function Ue(e){return e._reducerDefinitionType===`asyncThunk`}function We(e){return e._reducerDefinitionType===`reducerWithPrepare`}function Ge({type:e,reducerName:t},n,r,i){if(!i)throw Error($(18));let{payloadCreator:a,fulfilled:o,pending:s,rejected:c,settled:l,options:u}=n,d=i(e,a,u);r.exposeAction(t,d),o&&r.addCase(d.fulfilled,o),s&&r.addCase(d.pending,s),c&&r.addCase(d.rejected,c),l&&r.addMatcher(d.settled,l),r.exposeCaseReducer(t,{fulfilled:o||P,pending:s||P,rejected:c||P,settled:l||P})}function P(){}function Ke(){return{ids:[],entities:{}}}function qe(e){function t(t={},n){let r=Object.assign(Ke(),t);return n?e.setAll(r,n):r}return{getInitialState:t}}function Je(){function e(e,t={}){let{createSelector:n=te}=t,r=e=>e.ids,i=e=>e.entities,a=n(r,i,(e,t)=>e.map(e=>t[e])),o=(e,t)=>t,s=(e,t)=>e[t],c=n(r,e=>e.length);if(!e)return{selectIds:r,selectEntities:i,selectAll:a,selectTotal:c,selectById:n(i,o,s)};let l=n(e,i);return{selectIds:n(e,r),selectEntities:l,selectAll:n(e,a),selectTotal:n(e,c),selectById:n(l,o,s)}}return{getSelectors:e}}const Ye=l;function Xe(e){let t=F((t,n)=>e(n));return function(e){return t(e,void 0)}}function F(e){return function(t,n){function r(e){return ie(e)}let i=t=>{r(n)?e(n.payload,t):e(n,t)};return Ye(t)?(i(t),t):f(t,i)}}function I(e,t){return t(e)}function L(e){return Array.isArray(e)||(e=Object.values(e)),e}function R(e){return l(e)?s(e):e}function Ze(e,t,n){e=L(e);let r=R(n.ids),i=new Set(r),a=[],o=new Set([]),s=[];for(let n of e){let e=I(n,t);i.has(e)||o.has(e)?s.push({id:e,changes:n}):(o.add(e),a.push(n))}return[a,s,r]}function Qe(e){function t(t,n){let r=I(t,e);r in n.entities||(n.ids.push(r),n.entities[r]=t)}function n(e,n){e=L(e);for(let r of e)t(r,n)}function r(t,n){let r=I(t,e);r in n.entities||n.ids.push(r),n.entities[r]=t}function i(e,t){e=L(e);for(let n of e)r(n,t)}function a(e,t){e=L(e),t.ids=[],t.entities={},i(e,t)}function o(e,t){return s([e],t)}function s(e,t){let n=!1;e.forEach(e=>{e in t.entities&&(delete t.entities[e],n=!0)}),n&&(t.ids=t.ids.filter(e=>e in t.entities))}function c(e){Object.assign(e,{ids:[],entities:{}})}function l(t,n,r){let i=r.entities[n.id];if(i===void 0)return!1;let a=Object.assign({},i,n.changes),o=I(a,e),s=o!==n.id;return s&&(t[n.id]=o,delete r.entities[n.id]),r.entities[o]=a,s}function u(e,t){return d([e],t)}function d(t,n){let r={},i={};t.forEach(e=>{e.id in n.entities&&(i[e.id]={id:e.id,changes:{...i[e.id]?.changes,...e.changes}})}),t=Object.values(i),t.length>0&&t.filter(e=>l(r,e,n)).length>0&&(n.ids=Object.values(n.entities).map(t=>I(t,e)))}function f(e,t){return p([e],t)}function p(t,r){let[i,a]=Ze(t,e,r);n(i,r),d(a,r)}return{removeAll:Xe(c),addOne:F(t),addMany:F(n),setOne:F(r),setMany:F(i),setAll:F(a),updateOne:F(u),updateMany:F(d),upsertOne:F(f),upsertMany:F(p),removeOne:F(o),removeMany:F(s)}}function $e(e,t,n){let r=0,i=e.length;for(;r<i;){let a=r+i>>>1,o=e[a];n(t,o)>=0?r=a+1:i=a}return r}function et(e,t,n){let r=$e(e,t,n);return e.splice(r,0,t),e}function tt(e,t){let{removeOne:n,removeMany:r,removeAll:i}=Qe(e);function a(e,t){return o([e],t)}function o(t,n,r){t=L(t);let i=new Set(r??R(n.ids)),a=new Set,o=t.filter(t=>{let n=I(t,e),r=!a.has(n);return r&&a.add(n),!i.has(n)&&r});o.length!==0&&h(n,o)}function s(e,t){return c([e],t)}function c(t,n){let r={};if(t=L(t),t.length!==0){for(let i of t){let t=e(i);r[t]=i,delete n.entities[t]}t=L(r),h(n,t)}}function l(e,t){e=L(e),t.entities={},t.ids=[],c(e,t)}function u(e,t){return d([e],t)}function d(t,n){let r=!1,i=!1,a={};for(let e of t)e.id in n.entities&&(a[e.id]={id:e.id,changes:{...a[e.id]?.changes,...e.changes}});for(let t of Object.values(a)){let a=n.entities[t.id];if(!a)continue;r=!0,Object.assign(a,t.changes);let o=e(a);if(t.id!==o){i=!0,delete n.entities[t.id];let e=n.ids.indexOf(t.id);n.ids[e]=o,n.entities[o]=a}}r&&h(n,[],r,i)}function f(e,t){return p([e],t)}function p(t,n){let[r,i,a]=Ze(t,e,n);r.length&&o(r,n,a),i.length&&d(i,n)}function m(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function h(n,r,i,a){let o=R(n.entities),s=R(n.ids),c=n.entities,l=s;a&&(l=new Set(s));let u=[];for(let e of l){let t=o[e];t&&u.push(t)}let d=u.length===0;for(let n of r)c[e(n)]=n,d||et(u,n,t);d?u=r.slice().sort(t):i&&u.sort(t);let f=u.map(e);m(s,f)||(n.ids=f)}return{removeOne:n,removeMany:r,removeAll:i,addOne:F(a),updateOne:F(u),upsertOne:F(f),setOne:F(s),setMany:F(c),setAll:F(l),addMany:F(o),updateMany:F(d),upsertMany:F(p)}}function nt(e={}){let{selectId:t,sortComparer:n}={sortComparer:!1,selectId:e=>e.id,...e},r=n?tt(t,n):Qe(t),i=qe(r),a=Je();return{selectId:t,sortComparer:n,...i,...a,...r}}const rt=`listener`,it=`completed`,z=`cancelled`,at=`task-${z}`,ot=`task-${it}`,B=`${rt}-${z}`,st=`${rt}-${it}`;var V=class{code;name=`TaskAbortError`;message;constructor(e){this.code=e,this.message=`task ${z} (reason: ${e})`}};const H=(e,t)=>{if(typeof e!=`function`)throw TypeError($(32))},U=()=>{},ct=(e,t=U)=>(e.catch(t),e),lt=(e,t)=>(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)),W=e=>{if(e.aborted)throw new V(e.reason)};function ut(e,t){let n=U;return new Promise((r,i)=>{let a=()=>i(new V(e.reason));if(e.aborted){a();return}n=lt(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=U})}const dt=async(e,t)=>{try{return await Promise.resolve(),{status:`ok`,value:await e()}}catch(e){return{status:e instanceof V?`cancelled`:`rejected`,error:e}}finally{t?.()}},G=e=>t=>ct(ut(e,t).then(t=>(W(e),t))),ft=e=>{let t=G(e);return e=>t(new Promise(t=>setTimeout(t,e)))},{assign:K}=Object,pt={},q=`listenerMiddleware`,mt=(e,t)=>{let n=t=>lt(e,()=>t.abort(e.reason));return(r,i)=>{H(r,`taskExecutor`);let a=new AbortController;n(a);let o=dt(async()=>{W(e),W(a.signal);let t=await r({pause:G(a.signal),delay:ft(a.signal),signal:a.signal});return W(a.signal),t},()=>a.abort(ot));return i?.autoJoin&&t.push(o.catch(U)),{result:G(e)(o),cancel(){a.abort(at)}}}},ht=(e,t)=>{let n=async(n,r)=>{W(t);let i=()=>{},a=[new Promise((t,r)=>{let a=e({predicate:n,effect:(e,n)=>{n.unsubscribe(),t([e,n.getState(),n.getOriginalState()])}});i=()=>{a(),r()}})];r!=null&&a.push(new Promise(e=>setTimeout(e,r,null)));try{let e=await ut(t,Promise.race(a));return W(t),e}finally{i()}};return((e,t)=>ct(n(e,t)))},gt=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=b(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw Error($(21));return H(a,`options.listener`),{predicate:i,type:t,effect:a}},_t=K(e=>{let{type:t,predicate:n,effect:r}=gt(e);return{id:A(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw Error($(22))}}},{withTypes:()=>_t}),J=(e,t)=>{let{type:n,effect:r,predicate:i}=gt(t);return Array.from(e.values()).find(e=>(typeof n==`string`?e.type===n:e.predicate===i)&&e.effect===r)},Y=e=>{e.pending.forEach(e=>{e.abort(B)})},vt=(e,t)=>()=>{for(let e of t.keys())Y(e);e.clear()},yt=(e,t,n)=>{try{e(t,n)}catch(e){setTimeout(()=>{throw e},0)}},X=K(b(`${q}/add`),{withTypes:()=>X}),bt=b(`${q}/removeAll`),Z=K(b(`${q}/remove`),{withTypes:()=>Z}),xt=(...e)=>{console.error(`${q}/error`,...e)},St=(e={})=>{let t=new Map,n=new Map,r=e=>{let t=n.get(e)??0;n.set(e,t+1)},i=e=>{let t=n.get(e)??1;t===1?n.delete(e):n.set(e,t-1)},{extra:o,onError:s=xt}=e;H(s,`onError`);let c=e=>(e.unsubscribe=()=>t.delete(e.id),t.set(e.id,e),t=>{e.unsubscribe(),t?.cancelActive&&Y(e)}),l=(e=>{let n=J(t,e)??_t(e);return c(n)});K(l,{withTypes:()=>l});let u=e=>{let n=J(t,e);return n&&(n.unsubscribe(),e.cancelActive&&Y(n)),!!n};K(u,{withTypes:()=>u});let d=async(e,n,a,c)=>{let u=new AbortController,d=ht(l,u.signal),f=[];try{e.pending.add(u),r(e),await Promise.resolve(e.effect(n,K({},a,{getOriginalState:c,condition:(e,t)=>d(e,t).then(Boolean),take:d,delay:ft(u.signal),pause:G(u.signal),extra:o,signal:u.signal,fork:mt(u.signal,f),unsubscribe:e.unsubscribe,subscribe:()=>{t.set(e.id,e)},cancelActiveListeners:()=>{e.pending.forEach((e,t,n)=>{e!==u&&(e.abort(B),n.delete(e))})},cancel:()=>{u.abort(B),e.pending.delete(u)},throwIfCancelled:()=>{W(u.signal)}})))}catch(e){e instanceof V||yt(s,e,{raisedBy:`effect`})}finally{await Promise.all(f),u.abort(st),i(e),e.pending.delete(u)}},f=vt(t,n);return{middleware:e=>n=>r=>{if(!a(r))return n(r);if(X.match(r))return l(r.payload);if(bt.match(r)){f();return}if(Z.match(r))return u(r.payload);let i=e.getState(),o=()=>{if(i===pt)throw Error($(23));return i},c;try{if(c=n(r),t.size>0){let n=e.getState(),a=Array.from(t.values());for(let t of a){let a=!1;try{a=t.predicate(r,n,i)}catch(e){a=!1,yt(s,e,{raisedBy:`predicate`})}a&&d(t,r,e,o)}}}finally{i=pt}return c},startListening:l,stopListening:u,clearListeners:f}},Ct=e=>({middleware:e,applied:new Map}),wt=e=>t=>t?.meta?.instanceId===e,Tt=()=>{let e=A(),t=new Map,n=0,i=Object.assign(b(`dynamicMiddleware/add`,(...t)=>({payload:t,meta:{instanceId:e}})),{withTypes:()=>i}),a=Object.assign(function(...e){let r=t.size;e.forEach(e=>{C(t,e,Ct)}),t.size!==r&&n++},{withTypes:()=>a}),o=e=>{let n=Array.from(t.values()).map(t=>C(t.applied,e,t.middleware));return r(...n)},s=E(i,wt(e));return{middleware:e=>t=>{let r=-1,i=t;return c=>s(c)?(a(...c.payload),e.dispatch):(r!==n&&(i=o(e)(t),r=n),i(c))},addMiddleware:a,withMiddleware:i,instanceId:e}},Et=e=>`reducerPath`in e&&typeof e.reducerPath==`string`,Dt=e=>e.flatMap(e=>Et(e)?[[e.reducerPath,e.reducer]]:Object.entries(e)),Q=Symbol.for(`rtk-state-proxy-original`),Ot=e=>!!e&&!!e[Q],kt=(e,t,n,r)=>C(e,t,()=>new Proxy(t,{get:(e,t,i)=>{if(t===Q)return e;let a=Reflect.get(e,t,i);if(a===void 0){let e=r[t];if(e!==void 0)return e;let i=n[t];if(i){let e=i(void 0,{type:A()});if(e===void 0)throw Error($(24));return r[t]=e,e}}return a}})),At=e=>{if(!Ot(e))throw Error($(25));return e[Q]},jt={},Mt=(e=jt)=>e;function Nt(...e){let n=new WeakMap,r=Object.fromEntries(Dt(e)),i=()=>Object.keys(r).length?t(r):Mt,a=i();function o(e,t){return a(e,t)}o.withLazyLoadedSlices=()=>o;let s={},c=(e,t={})=>{let{reducerPath:n,reducer:c}=e,l=r[n];return!t.overrideExisting&&l&&l!==c?o:(t.overrideExisting&&l!==c&&delete s[n],r[n]=c,a=i(),o)},l=Object.assign(function(e,t){return function(i,...a){return e(kt(n,t?t(i,...a):i,r,s),...a)}},{original:At});return Object.assign(o,{inject:c,selector:l})}function $(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}export{Le as ReducerType,w as SHOULD_AUTOBATCH,V as TaskAbortError,x as Tuple,X as addListener,Ie as asyncThunkCreator,ve as autoBatchEnhancer,N as buildCreateSlice,bt as clearAllListeners,Nt as combineSlices,be as configureStore,b as createAction,oe as createActionCreatorInvariantMiddleware,Ne as createAsyncThunk,te as createDraftSafeSelector,v as createDraftSafeSelectorCreator,Tt as createDynamicMiddleware,nt as createEntityAdapter,ce as createImmutableStateInvariantMiddleware,St as createListenerMiddleware,f as createNextState,Ce as createReducer,p as createSelector,m as createSelectorCreator,fe as createSerializableStateInvariantMiddleware,Be as createSlice,s as current,ue as findNonSerializableValue,$ as formatProdErrorMessage,c as freeze,re as isActionCreator,E as isAllOf,T as isAnyOf,Oe as isAsyncThunkAction,l as isDraft,ie as isFluxStandardAction,De as isFulfilled,se as isImmutableDefault,Te as isPending,le as isPlain,k as isRejected,Ee as isRejectedWithValue,h as lruMemoize,je as miniSerializeError,A as nanoid,d as original,he as prepareAutoBatched,Z as removeListener,Pe as unwrapResult,g as weakMapMemoize}; //# sourceMappingURL=redux-toolkit.browser.mjs.map