var R=Symbol.for("immer-nothing"),N=Symbol.for("immer-draftable"),u=Symbol.for("immer-state");function h(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var z=Object.getPrototypeOf;function M(e){return!!e&&!!e[u]}function A(e){return e?le(e)||Array.isArray(e)||!!e[N]||!!e.constructor?.[N]||j(e)||k(e):!1}var Pe=Object.prototype.constructor.toString(),ye=new WeakMap;function le(e){if(!e||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;let r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if(typeof r!="function")return!1;let n=ye.get(r);return n===void 0&&(n=Function.toString.call(r),ye.set(r,n)),n===Pe}function xe(e){return M(e)||h(15,e),e[u].t}function _(e,t,r=!0){C(e)===0?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((n,i)=>t(i,n,e))}function C(e){let t=e[u];return t?t.o:Array.isArray(e)?1:j(e)?2:k(e)?3:0}function v(e,t){return C(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function X(e,t){return C(e)===2?e.get(t):e[t]}function Q(e,t,r){let n=C(e);n===2?e.set(t,r):n===3?e.add(r):e[t]=r}function pe(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function j(e){return e instanceof Map}function k(e){return e instanceof Set}function I(e){return e.e||e.t}function G(e,t){if(j(e))return new Map(e);if(k(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);let r=le(e);if(t===!0||t==="class_only"&&!r){let n=Object.getOwnPropertyDescriptors(e);delete n[u];let i=Reflect.ownKeys(n);for(let c=0;c1&&Object.defineProperties(e,{set:J,add:J,clear:J,delete:J}),Object.freeze(e),t&&Object.values(e).forEach(r=>B(r,!0))),e}function be(){h(2)}var J={value:be};function H(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var ne={};function w(e){let t=ne[e];return t||h(0,e),t}function Y(e,t){ne[e]||(ne[e]=t)}var L;function K(){return L}function ge(e,t){return{a:[],i:e,f:t,P:!0,d:0}}function ae(e,t){t&&(w("Patches"),e.u=[],e.h=[],e.I=t)}function q(e){Z(e),e.a.forEach(Ie),e.a=null}function Z(e){e===L&&(L=e.i)}function oe(e){return L=ge(L,e)}function Ie(e){let t=e[u];t.o===0||t.o===1?t.x():t.m=!0}function ie(e,t){t.d=t.a.length;let r=t.a[0];return e!==void 0&&e!==r?(r[u].s&&(q(t),h(4)),A(e)&&(e=ee(t,e),t.i||te(t,e)),t.u&&w("Patches").T(r[u].t,e,t.u,t.h)):e=ee(t,r,[]),q(t),t.u&&t.I(t.u,t.h),e!==R?e:void 0}function ee(e,t,r){if(H(t))return t;let n=e.f.shouldUseStrictIteration(),i=t[u];if(!i)return _(t,(c,y)=>de(e,i,t,c,y,r),n),t;if(i.n!==e)return t;if(!i.s)return te(e,i.t,!0),i.t;if(!i.c){i.c=!0,i.n.d--;let c=i.e,y=c,s=!1;i.o===3&&(y=new Set(c),c.clear(),s=!0),_(y,(g,a)=>de(e,i,c,g,a,r,s),n),te(e,c,!1),r&&e.u&&w("Patches").g(i,r,e.u,e.h)}return i.e}function de(e,t,r,n,i,c,y){if(i==null||typeof i!="object"&&!y)return;let s=H(i);if(!(s&&!y)){if(M(i)){let g=c&&t&&t.o!==3&&!v(t.r,n)?c.concat(n):void 0,a=ee(e,i,g);if(Q(r,n,a),M(a))e.P=!1;else return}else y&&r.add(i);if(A(i)&&!s){if(!e.f.y&&e.d<1||t&&t.t&&t.t[n]===i&&s)return;ee(e,i),(!t||!t.n.i)&&typeof n!="symbol"&&(j(r)?r.has(n):Object.prototype.propertyIsEnumerable.call(r,n))&&te(e,i)}}}function te(e,t,r=!1){!e.i&&e.f.y&&e.P&&B(t,r)}function he(e,t){let r=Array.isArray(e),n={o:r?1:0,n:t?t.n:K(),s:!1,c:!1,r:{},i:t,t:e,p:null,e:null,x:null,l:!1},i=n,c=fe;r&&(i=[n],c=V);let{revoke:y,proxy:s}=Proxy.revocable(i,c);return n.p=s,n.x=y,s}var fe={get(e,t){if(t===u)return e;let r=I(e);if(!v(r,t))return Te(e,r,t);let n=r[t];return e.c||!A(n)?n:n===se(e.t,t)?(ce(e),e.e[t]=U(n,e)):n},has(e,t){return t in I(e)},ownKeys(e){return Reflect.ownKeys(I(e))},set(e,t,r){let n=me(I(e),t);if(n?.set)return n.set.call(e.p,r),!0;if(!e.s){let i=se(I(e),t),c=i?.[u];if(c&&c.t===r)return e.e[t]=r,e.r[t]=!1,!0;if(pe(r,i)&&(r!==void 0||v(e.t,t)))return!0;ce(e),E(e)}return e.e[t]===r&&(r!==void 0||t in e.e)||Number.isNaN(r)&&Number.isNaN(e.e[t])||(e.e[t]=r,e.r[t]=!0),!0},deleteProperty(e,t){return se(e.t,t)!==void 0||t in e.t?(e.r[t]=!1,ce(e),E(e)):delete e.r[t],e.e&&delete e.e[t],!0},getOwnPropertyDescriptor(e,t){let r=I(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.o!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty(){h(11)},getPrototypeOf(e){return z(e.t)},setPrototypeOf(){h(12)}},V={};_(fe,(e,t)=>{V[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});V.deleteProperty=function(e,t){return V.set.call(this,e,t,void 0)};V.set=function(e,t,r){return fe.set.call(this,e[0],t,r,e[0])};function se(e,t){let r=e[u];return(r?I(r):e)[t]}function Te(e,t,r){let n=me(t,r);return n?"value"in n?n.value:n.get?.call(e.p):void 0}function me(e,t){if(!(t in e))return;let r=z(e);for(;r;){let n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=z(r)}}function E(e){e.s||(e.s=!0,e.i&&E(e.i))}function ce(e){e.e||(e.e=G(e.t,e.n.f.S))}var re=class{constructor(t){this.y=!0;this.S=!1;this.b=!0;this.produce=(t,r,n)=>{if(typeof t=="function"&&typeof r!="function"){let c=r;r=t;let y=this;return function(g=c,...a){return y.produce(g,o=>r.call(this,o,...a))}}typeof r!="function"&&h(6),n!==void 0&&typeof n!="function"&&h(7);let i;if(A(t)){let c=oe(this),y=U(t,void 0),s=!0;try{i=r(y),s=!1}finally{s?q(c):Z(c)}return ae(c,n),ie(i,c)}else if(!t||typeof t!="object"){if(i=r(t),i===void 0&&(i=t),i===R&&(i=void 0),this.y&&B(i,!0),n){let c=[],y=[];w("Patches").T(t,i,c,y),n(c,y)}return i}else h(1,t)};this.produceWithPatches=(t,r)=>{if(typeof t=="function")return(y,...s)=>this.produceWithPatches(y,g=>t(g,...s));let n,i;return[this.produce(t,r,(y,s)=>{n=y,i=s}),n,i]};typeof t?.autoFreeze=="boolean"&&this.setAutoFreeze(t.autoFreeze),typeof t?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),typeof t?.useStrictIteration=="boolean"&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){A(t)||h(8),M(t)&&(t=ue(t));let r=oe(this),n=U(t,void 0);return n[u].l=!0,Z(r),n}finishDraft(t,r){let n=t&&t[u];(!n||!n.l)&&h(9);let{n:i}=n;return ae(i,r),ie(void 0,i)}setAutoFreeze(t){this.y=t}setUseStrictShallowCopy(t){this.S=t}setUseStrictIteration(t){this.b=t}shouldUseStrictIteration(){return this.b}applyPatches(t,r){let n;for(n=r.length-1;n>=0;n--){let c=r[n];if(c.path.length===0&&c.op==="replace"){t=c.value;break}}n>-1&&(r=r.slice(n+1));let i=w("Patches").A;return M(t)?i(t,r):this.produce(t,c=>i(c,r))}};function U(e,t){let r=j(e)?w("MapSet").D(e,t):k(e)?w("MapSet").R(e,t):he(e,t);return(t?t.n:K()).a.push(r),r}function ue(e){return M(e)||h(10,e),Se(e)}function Se(e){if(!A(e)||H(e))return e;let t=e[u],r,n=!0;if(t){if(!t.s)return t.t;t.c=!0,r=G(e,t.n.f.S),n=t.n.f.shouldUseStrictIteration()}else r=G(e,!0);return _(r,(i,c)=>{Q(r,i,Se(c))},n),t&&(t.c=!1),r}function Ae(){let t="replace",r="add",n="remove";function i(f,S,m,x){switch(f.o){case 0:case 2:return y(f,S,m,x);case 1:return c(f,S,m,x);case 3:return s(f,S,m,x)}}function c(f,S,m,x){let{t:T,r:P}=f,b=f.e;b.length{let d=X(T,b),W=X(P,b),F=l?v(T,b)?t:r:n;if(d===W&&F===t)return;let O=S.concat(b);m.push(F===n?{op:F,path:O}:{op:F,path:O,value:W}),x.push(F===r?{op:n,path:O}:F===n?{op:r,path:O,value:p(d)}:{op:t,path:O,value:p(d)})})}function s(f,S,m,x){let{t:T,e:P}=f,b=0;T.forEach(l=>{if(!P.has(l)){let d=S.concat([b]);m.push({op:n,path:d,value:l}),x.unshift({op:r,path:d,value:l})}b++}),b=0,P.forEach(l=>{if(!T.has(l)){let d=S.concat([b]);m.push({op:r,path:d,value:l}),x.unshift({op:n,path:d,value:l})}b++})}function g(f,S,m,x){m.push({op:t,path:[],value:S===R?void 0:S}),x.push({op:t,path:[],value:f})}function a(f,S){return S.forEach(m=>{let{path:x,op:T}=m,P=f;for(let W=0;W[m,o(x)]));if(k(f))return new Set(Array.from(f).map(o));let S=Object.create(z(f));for(let m in f)S[m]=o(f[m]);return v(f,N)&&(S[N]=f[N]),S}function p(f){return M(f)?o(f):f}Y("Patches",{A:a,g:i,T:g})}function De(){class e extends Map{constructor(a,o){super();this[u]={o:2,i:o,n:o?o.n:K(),s:!1,c:!1,e:void 0,r:void 0,t:a,p:this,l:!1,m:!1}}get size(){return I(this[u]).size}has(a){return I(this[u]).has(a)}set(a,o){let p=this[u];return y(p),(!I(p).has(a)||I(p).get(a)!==o)&&(r(p),E(p),p.r.set(a,!0),p.e.set(a,o),p.r.set(a,!0)),this}delete(a){if(!this.has(a))return!1;let o=this[u];return y(o),r(o),E(o),o.t.has(a)?o.r.set(a,!1):o.r.delete(a),o.e.delete(a),!0}clear(){let a=this[u];y(a),I(a).size&&(r(a),E(a),a.r=new Map,_(a.t,o=>{a.r.set(o,!1)}),a.e.clear())}forEach(a,o){let p=this[u];I(p).forEach((f,S,m)=>{a.call(o,this.get(S),S,this)})}get(a){let o=this[u];y(o);let p=I(o).get(a);if(o.c||!A(p)||p!==o.t.get(a))return p;let f=U(p,o);return r(o),o.e.set(a,f),f}keys(){return I(this[u]).keys()}values(){let a=this.keys();return{[Symbol.iterator]:()=>this.values(),next:()=>{let o=a.next();return o.done?o:{done:!1,value:this.get(o.value)}}}}entries(){let a=this.keys();return{[Symbol.iterator]:()=>this.entries(),next:()=>{let o=a.next();if(o.done)return o;let p=this.get(o.value);return{done:!1,value:[o.value,p]}}}}[(u,Symbol.iterator)](){return this.entries()}}function t(s,g){return new e(s,g)}function r(s){s.e||(s.r=new Map,s.e=new Map(s.t))}class n extends Set{constructor(a,o){super();this[u]={o:3,i:o,n:o?o.n:K(),s:!1,c:!1,e:void 0,t:a,p:this,a:new Map,m:!1,l:!1}}get size(){return I(this[u]).size}has(a){let o=this[u];return y(o),o.e?!!(o.e.has(a)||o.a.has(a)&&o.e.has(o.a.get(a))):o.t.has(a)}add(a){let o=this[u];return y(o),this.has(a)||(c(o),E(o),o.e.add(a)),this}delete(a){if(!this.has(a))return!1;let o=this[u];return y(o),c(o),E(o),o.e.delete(a)||(o.a.has(a)?o.e.delete(o.a.get(a)):!1)}clear(){let a=this[u];y(a),I(a).size&&(c(a),E(a),a.e.clear())}values(){let a=this[u];return y(a),c(a),a.e.values()}entries(){let a=this[u];return y(a),c(a),a.e.entries()}keys(){return this.values()}[(u,Symbol.iterator)](){return this.values()}forEach(a,o){let p=this.values(),f=p.next();for(;!f.done;)a.call(o,f.value,f.value,this),f=p.next()}}function i(s,g){return new n(s,g)}function c(s){s.e||(s.e=new Set,s.t.forEach(g=>{if(A(g)){let a=U(g,s);s.a.set(g,a),s.e.add(a)}else s.e.add(g)}))}function y(s){s.m&&h(3,JSON.stringify(I(s)))}Y("MapSet",{D:t,R:i})}var D=new re,Xt=D.produce,Qt=D.produceWithPatches.bind(D),Yt=D.setAutoFreeze.bind(D),Zt=D.setUseStrictShallowCopy.bind(D),er=D.setUseStrictIteration.bind(D),tr=D.applyPatches.bind(D),rr=D.createDraft.bind(D),nr=D.finishDraft.bind(D);function ar(e){return e}function or(e){return e}export{re as Immer,tr as applyPatches,ar as castDraft,or as castImmutable,rr as createDraft,ue as current,De as enableMapSet,Ae as enablePatches,nr as finishDraft,B as freeze,N as immerable,M as isDraft,A as isDraftable,R as nothing,xe as original,Xt as produce,Qt as produceWithPatches,Yt as setAutoFreeze,er as setUseStrictIteration,Zt as setUseStrictShallowCopy}; //# sourceMappingURL=immer.production.mjs.map