UNPKG

134 kBJavaScriptView Raw
1(function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
3 typeof define === 'function' && define.amd ? define(['exports'], factory) :
4 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.RTK = {}));
5})(this, (function (exports) { 'use strict';
6
7 var __extends = (undefined && undefined.__extends) || (function () {
8 var extendStatics = function (d, b) {
9 extendStatics = Object.setPrototypeOf ||
10 ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
11 function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
12 return extendStatics(d, b);
13 };
14 return function (d, b) {
15 if (typeof b !== "function" && b !== null)
16 throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
17 extendStatics(d, b);
18 function __() { this.constructor = d; }
19 d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
20 };
21 })();
22 var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
23 var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24 return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25 function verb(n) { return function (v) { return step([n, v]); }; }
26 function step(op) {
27 if (f) throw new TypeError("Generator is already executing.");
28 while (_) try {
29 if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30 if (y = 0, t) op = [op[0] & 2, t.value];
31 switch (op[0]) {
32 case 0: case 1: t = op; break;
33 case 4: _.label++; return { value: op[1], done: false };
34 case 5: _.label++; y = op[1]; op = [0]; continue;
35 case 7: op = _.ops.pop(); _.trys.pop(); continue;
36 default:
37 if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38 if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39 if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40 if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41 if (t[2]) _.ops.pop();
42 _.trys.pop(); continue;
43 }
44 op = body.call(thisArg, _);
45 } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46 if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47 }
48 };
49 var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from) {
50 for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
51 to[j] = from[i];
52 return to;
53 };
54 var __defProp = Object.defineProperty;
55 var __defProps = Object.defineProperties;
56 var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
57 var __getOwnPropSymbols = Object.getOwnPropertySymbols;
58 var __hasOwnProp = Object.prototype.hasOwnProperty;
59 var __propIsEnum = Object.prototype.propertyIsEnumerable;
60 var __defNormalProp = function (obj, key, value) { return key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value: value }) : obj[key] = value; };
61 var __spreadValues = function (a2, b2) {
62 for (var prop in b2 || (b2 = {}))
63 if (__hasOwnProp.call(b2, prop))
64 __defNormalProp(a2, prop, b2[prop]);
65 if (__getOwnPropSymbols)
66 for (var _c = 0, _d = __getOwnPropSymbols(b2); _c < _d.length; _c++) {
67 var prop = _d[_c];
68 if (__propIsEnum.call(b2, prop))
69 __defNormalProp(a2, prop, b2[prop]);
70 }
71 return a2;
72 };
73 var __spreadProps = function (a2, b2) { return __defProps(a2, __getOwnPropDescs(b2)); };
74 var __async = function (__this, __arguments, generator) {
75 return new Promise(function (resolve, reject) {
76 var fulfilled = function (value) {
77 try {
78 step(generator.next(value));
79 }
80 catch (e2) {
81 reject(e2);
82 }
83 };
84 var rejected = function (value) {
85 try {
86 step(generator.throw(value));
87 }
88 catch (e2) {
89 reject(e2);
90 }
91 };
92 var step = function (x2) { return x2.done ? resolve(x2.value) : Promise.resolve(x2.value).then(fulfilled, rejected); };
93 step((generator = generator.apply(__this, __arguments)).next());
94 });
95 };
96 // ../../node_modules/immer/dist/immer.esm.js
97 function n(n2) {
98 for (var t2 = arguments.length, r2 = Array(t2 > 1 ? t2 - 1 : 0), e2 = 1; e2 < t2; e2++)
99 r2[e2 - 1] = arguments[e2];
100 {
101 var i2 = Y[n2], o2 = i2 ? typeof i2 == "function" ? i2.apply(null, r2) : i2 : "unknown error nr: " + n2;
102 throw Error("[Immer] " + o2);
103 }
104 }
105 function t(n2) {
106 return !!n2 && !!n2[Q];
107 }
108 function r(n2) {
109 return !!n2 && (function (n3) {
110 if (!n3 || typeof n3 != "object")
111 return false;
112 var t2 = Object.getPrototypeOf(n3);
113 if (t2 === null)
114 return true;
115 var r2 = Object.hasOwnProperty.call(t2, "constructor") && t2.constructor;
116 return r2 === Object || typeof r2 == "function" && Function.toString.call(r2) === Z;
117 }(n2) || Array.isArray(n2) || !!n2[L] || !!n2.constructor[L] || s(n2) || v(n2));
118 }
119 function e(r2) {
120 return t(r2) || n(23, r2), r2[Q].t;
121 }
122 function i(n2, t2, r2) {
123 r2 === void 0 && (r2 = false), o(n2) === 0 ? (r2 ? Object.keys : nn)(n2).forEach(function (e2) {
124 r2 && typeof e2 == "symbol" || t2(e2, n2[e2], n2);
125 }) : n2.forEach(function (r3, e2) {
126 return t2(e2, r3, n2);
127 });
128 }
129 function o(n2) {
130 var t2 = n2[Q];
131 return t2 ? t2.i > 3 ? t2.i - 4 : t2.i : Array.isArray(n2) ? 1 : s(n2) ? 2 : v(n2) ? 3 : 0;
132 }
133 function u(n2, t2) {
134 return o(n2) === 2 ? n2.has(t2) : Object.prototype.hasOwnProperty.call(n2, t2);
135 }
136 function a(n2, t2) {
137 return o(n2) === 2 ? n2.get(t2) : n2[t2];
138 }
139 function f(n2, t2, r2) {
140 var e2 = o(n2);
141 e2 === 2 ? n2.set(t2, r2) : e2 === 3 ? (n2.delete(t2), n2.add(r2)) : n2[t2] = r2;
142 }
143 function c(n2, t2) {
144 return n2 === t2 ? n2 !== 0 || 1 / n2 == 1 / t2 : n2 != n2 && t2 != t2;
145 }
146 function s(n2) {
147 return X && n2 instanceof Map;
148 }
149 function v(n2) {
150 return q && n2 instanceof Set;
151 }
152 function p(n2) {
153 return n2.o || n2.t;
154 }
155 function l(n2) {
156 if (Array.isArray(n2))
157 return Array.prototype.slice.call(n2);
158 var t2 = tn(n2);
159 delete t2[Q];
160 for (var r2 = nn(t2), e2 = 0; e2 < r2.length; e2++) {
161 var i2 = r2[e2], o2 = t2[i2];
162 o2.writable === false && (o2.writable = true, o2.configurable = true), (o2.get || o2.set) && (t2[i2] = { configurable: true, writable: true, enumerable: o2.enumerable, value: n2[i2] });
163 }
164 return Object.create(Object.getPrototypeOf(n2), t2);
165 }
166 function d(n2, e2) {
167 return e2 === void 0 && (e2 = false), y(n2) || t(n2) || !r(n2) ? n2 : (o(n2) > 1 && (n2.set = n2.add = n2.clear = n2.delete = h), Object.freeze(n2), e2 && i(n2, function (n3, t2) {
168 return d(t2, true);
169 }, true), n2);
170 }
171 function h() {
172 n(2);
173 }
174 function y(n2) {
175 return n2 == null || typeof n2 != "object" || Object.isFrozen(n2);
176 }
177 function b(t2) {
178 var r2 = rn[t2];
179 return r2 || n(18, t2), r2;
180 }
181 function m(n2, t2) {
182 rn[n2] || (rn[n2] = t2);
183 }
184 function _() {
185 return U || n(0), U;
186 }
187 function j(n2, t2) {
188 t2 && (b("Patches"), n2.u = [], n2.s = [], n2.v = t2);
189 }
190 function O(n2) {
191 g(n2), n2.p.forEach(S), n2.p = null;
192 }
193 function g(n2) {
194 n2 === U && (U = n2.l);
195 }
196 function w(n2) {
197 return U = { p: [], l: U, h: n2, m: true, _: 0 };
198 }
199 function S(n2) {
200 var t2 = n2[Q];
201 t2.i === 0 || t2.i === 1 ? t2.j() : t2.O = true;
202 }
203 function P(t2, e2) {
204 e2._ = e2.p.length;
205 var i2 = e2.p[0], o2 = t2 !== void 0 && t2 !== i2;
206 return e2.h.g || b("ES5").S(e2, t2, o2), o2 ? (i2[Q].P && (O(e2), n(4)), r(t2) && (t2 = M(e2, t2), e2.l || x(e2, t2)), e2.u && b("Patches").M(i2[Q], t2, e2.u, e2.s)) : t2 = M(e2, i2, []), O(e2), e2.u && e2.v(e2.u, e2.s), t2 !== H ? t2 : void 0;
207 }
208 function M(n2, t2, r2) {
209 if (y(t2))
210 return t2;
211 var e2 = t2[Q];
212 if (!e2)
213 return i(t2, function (i2, o3) {
214 return A(n2, e2, t2, i2, o3, r2);
215 }, true), t2;
216 if (e2.A !== n2)
217 return t2;
218 if (!e2.P)
219 return x(n2, e2.t, true), e2.t;
220 if (!e2.I) {
221 e2.I = true, e2.A._--;
222 var o2 = e2.i === 4 || e2.i === 5 ? e2.o = l(e2.k) : e2.o;
223 i(e2.i === 3 ? new Set(o2) : o2, function (t3, i2) {
224 return A(n2, e2, o2, t3, i2, r2);
225 }), x(n2, o2, false), r2 && n2.u && b("Patches").R(e2, r2, n2.u, n2.s);
226 }
227 return e2.o;
228 }
229 function A(e2, i2, o2, a2, c2, s2) {
230 if (c2 === o2 && n(5), t(c2)) {
231 var v2 = M(e2, c2, s2 && i2 && i2.i !== 3 && !u(i2.D, a2) ? s2.concat(a2) : void 0);
232 if (f(o2, a2, v2), !t(v2))
233 return;
234 e2.m = false;
235 }
236 if (r(c2) && !y(c2)) {
237 if (!e2.h.F && e2._ < 1)
238 return;
239 M(e2, c2), i2 && i2.A.l || x(e2, c2);
240 }
241 }
242 function x(n2, t2, r2) {
243 r2 === void 0 && (r2 = false), n2.h.F && n2.m && d(t2, r2);
244 }
245 function z(n2, t2) {
246 var r2 = n2[Q];
247 return (r2 ? p(r2) : n2)[t2];
248 }
249 function I(n2, t2) {
250 if (t2 in n2)
251 for (var r2 = Object.getPrototypeOf(n2); r2;) {
252 var e2 = Object.getOwnPropertyDescriptor(r2, t2);
253 if (e2)
254 return e2;
255 r2 = Object.getPrototypeOf(r2);
256 }
257 }
258 function k(n2) {
259 n2.P || (n2.P = true, n2.l && k(n2.l));
260 }
261 function E(n2) {
262 n2.o || (n2.o = l(n2.t));
263 }
264 function R(n2, t2, r2) {
265 var e2 = s(t2) ? b("MapSet").N(t2, r2) : v(t2) ? b("MapSet").T(t2, r2) : n2.g ? function (n3, t3) {
266 var r3 = Array.isArray(n3), e3 = { i: r3 ? 1 : 0, A: t3 ? t3.A : _(), P: false, I: false, D: {}, l: t3, t: n3, k: null, o: null, j: null, C: false }, i2 = e3, o2 = en;
267 r3 && (i2 = [e3], o2 = on);
268 var u2 = Proxy.revocable(i2, o2), a2 = u2.revoke, f2 = u2.proxy;
269 return e3.k = f2, e3.j = a2, f2;
270 }(t2, r2) : b("ES5").J(t2, r2);
271 return (r2 ? r2.A : _()).p.push(e2), e2;
272 }
273 function D(e2) {
274 return t(e2) || n(22, e2), function n2(t2) {
275 if (!r(t2))
276 return t2;
277 var e3, u2 = t2[Q], c2 = o(t2);
278 if (u2) {
279 if (!u2.P && (u2.i < 4 || !b("ES5").K(u2)))
280 return u2.t;
281 u2.I = true, e3 = F(t2, c2), u2.I = false;
282 }
283 else
284 e3 = F(t2, c2);
285 return i(e3, function (t3, r2) {
286 u2 && a(u2.t, t3) === r2 || f(e3, t3, n2(r2));
287 }), c2 === 3 ? new Set(e3) : e3;
288 }(e2);
289 }
290 function F(n2, t2) {
291 switch (t2) {
292 case 2:
293 return new Map(n2);
294 case 3:
295 return Array.from(n2);
296 }
297 return l(n2);
298 }
299 function N() {
300 function r2(n2, t2) {
301 var r3 = s2[n2];
302 return r3 ? r3.enumerable = t2 : s2[n2] = r3 = { configurable: true, enumerable: t2, get: function () {
303 var t3 = this[Q];
304 return f2(t3), en.get(t3, n2);
305 }, set: function (t3) {
306 var r4 = this[Q];
307 f2(r4), en.set(r4, n2, t3);
308 } }, r3;
309 }
310 function e2(n2) {
311 for (var t2 = n2.length - 1; t2 >= 0; t2--) {
312 var r3 = n2[t2][Q];
313 if (!r3.P)
314 switch (r3.i) {
315 case 5:
316 a2(r3) && k(r3);
317 break;
318 case 4:
319 o2(r3) && k(r3);
320 }
321 }
322 }
323 function o2(n2) {
324 for (var t2 = n2.t, r3 = n2.k, e3 = nn(r3), i2 = e3.length - 1; i2 >= 0; i2--) {
325 var o3 = e3[i2];
326 if (o3 !== Q) {
327 var a3 = t2[o3];
328 if (a3 === void 0 && !u(t2, o3))
329 return true;
330 var f3 = r3[o3], s3 = f3 && f3[Q];
331 if (s3 ? s3.t !== a3 : !c(f3, a3))
332 return true;
333 }
334 }
335 var v2 = !!t2[Q];
336 return e3.length !== nn(t2).length + (v2 ? 0 : 1);
337 }
338 function a2(n2) {
339 var t2 = n2.k;
340 if (t2.length !== n2.t.length)
341 return true;
342 var r3 = Object.getOwnPropertyDescriptor(t2, t2.length - 1);
343 return !(!r3 || r3.get);
344 }
345 function f2(t2) {
346 t2.O && n(3, JSON.stringify(p(t2)));
347 }
348 var s2 = {};
349 m("ES5", { J: function (n2, t2) {
350 var e3 = Array.isArray(n2), i2 = function (n3, t3) {
351 if (n3) {
352 for (var e4 = Array(t3.length), i3 = 0; i3 < t3.length; i3++)
353 Object.defineProperty(e4, "" + i3, r2(i3, true));
354 return e4;
355 }
356 var o4 = tn(t3);
357 delete o4[Q];
358 for (var u2 = nn(o4), a3 = 0; a3 < u2.length; a3++) {
359 var f3 = u2[a3];
360 o4[f3] = r2(f3, n3 || !!o4[f3].enumerable);
361 }
362 return Object.create(Object.getPrototypeOf(t3), o4);
363 }(e3, n2), o3 = { i: e3 ? 5 : 4, A: t2 ? t2.A : _(), P: false, I: false, D: {}, l: t2, t: n2, k: i2, o: null, O: false, C: false };
364 return Object.defineProperty(i2, Q, { value: o3, writable: true }), i2;
365 }, S: function (n2, r3, o3) {
366 o3 ? t(r3) && r3[Q].A === n2 && e2(n2.p) : (n2.u && function n3(t2) {
367 if (t2 && typeof t2 == "object") {
368 var r4 = t2[Q];
369 if (r4) {
370 var e3 = r4.t, o4 = r4.k, f3 = r4.D, c2 = r4.i;
371 if (c2 === 4)
372 i(o4, function (t3) {
373 t3 !== Q && (e3[t3] !== void 0 || u(e3, t3) ? f3[t3] || n3(o4[t3]) : (f3[t3] = true, k(r4)));
374 }), i(e3, function (n4) {
375 o4[n4] !== void 0 || u(o4, n4) || (f3[n4] = false, k(r4));
376 });
377 else if (c2 === 5) {
378 if (a2(r4) && (k(r4), f3.length = true), o4.length < e3.length)
379 for (var s3 = o4.length; s3 < e3.length; s3++)
380 f3[s3] = false;
381 else
382 for (var v2 = e3.length; v2 < o4.length; v2++)
383 f3[v2] = true;
384 for (var p2 = Math.min(o4.length, e3.length), l2 = 0; l2 < p2; l2++)
385 f3[l2] === void 0 && n3(o4[l2]);
386 }
387 }
388 }
389 }(n2.p[0]), e2(n2.p));
390 }, K: function (n2) {
391 return n2.i === 4 ? o2(n2) : a2(n2);
392 } });
393 }
394 var G;
395 var U;
396 var W = typeof Symbol != "undefined" && typeof Symbol("x") == "symbol";
397 var X = typeof Map != "undefined";
398 var q = typeof Set != "undefined";
399 var B = typeof Proxy != "undefined" && Proxy.revocable !== void 0 && typeof Reflect != "undefined";
400 var H = W ? Symbol.for("immer-nothing") : ((G = {})["immer-nothing"] = true, G);
401 var L = W ? Symbol.for("immer-draftable") : "__$immer_draftable";
402 var Q = W ? Symbol.for("immer-state") : "__$immer_state";
403 var Y = { 0: "Illegal state", 1: "Immer drafts cannot have computed properties", 2: "This object has been frozen and should not be mutated", 3: function (n2) {
404 return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? " + n2;
405 }, 4: "An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.", 5: "Immer forbids circular references", 6: "The first or second argument to `produce` must be a function", 7: "The third argument to `produce` must be a function or undefined", 8: "First argument to `createDraft` must be a plain object, an array, or an immerable object", 9: "First argument to `finishDraft` must be a draft returned by `createDraft`", 10: "The given draft is already finalized", 11: "Object.defineProperty() cannot be used on an Immer draft", 12: "Object.setPrototypeOf() cannot be used on an Immer draft", 13: "Immer only supports deleting array indices", 14: "Immer only supports setting array indices and the 'length' property", 15: function (n2) {
406 return "Cannot apply patch, path doesn't resolve: " + n2;
407 }, 16: 'Sets cannot have "replace" patches.', 17: function (n2) {
408 return "Unsupported patch operation: " + n2;
409 }, 18: function (n2) {
410 return "The plugin for '" + n2 + "' has not been loaded into Immer. To enable the plugin, import and call `enable" + n2 + "()` when initializing your application.";
411 }, 20: "Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available", 21: function (n2) {
412 return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '" + n2 + "'";
413 }, 22: function (n2) {
414 return "'current' expects a draft, got: " + n2;
415 }, 23: function (n2) {
416 return "'original' expects a draft, got: " + n2;
417 }, 24: "Patching reserved attributes like __proto__, prototype and constructor is not allowed" };
418 var Z = "" + Object.prototype.constructor;
419 var nn = typeof Reflect != "undefined" && Reflect.ownKeys ? Reflect.ownKeys : Object.getOwnPropertySymbols !== void 0 ? function (n2) {
420 return Object.getOwnPropertyNames(n2).concat(Object.getOwnPropertySymbols(n2));
421 } : Object.getOwnPropertyNames;
422 var tn = Object.getOwnPropertyDescriptors || function (n2) {
423 var t2 = {};
424 return nn(n2).forEach(function (r2) {
425 t2[r2] = Object.getOwnPropertyDescriptor(n2, r2);
426 }), t2;
427 };
428 var rn = {};
429 var en = { get: function (n2, t2) {
430 if (t2 === Q)
431 return n2;
432 var e2 = p(n2);
433 if (!u(e2, t2))
434 return function (n3, t3, r2) {
435 var e3, i3 = I(t3, r2);
436 return i3 ? "value" in i3 ? i3.value : (e3 = i3.get) === null || e3 === void 0 ? void 0 : e3.call(n3.k) : void 0;
437 }(n2, e2, t2);
438 var i2 = e2[t2];
439 return n2.I || !r(i2) ? i2 : i2 === z(n2.t, t2) ? (E(n2), n2.o[t2] = R(n2.A.h, i2, n2)) : i2;
440 }, has: function (n2, t2) {
441 return t2 in p(n2);
442 }, ownKeys: function (n2) {
443 return Reflect.ownKeys(p(n2));
444 }, set: function (n2, t2, r2) {
445 var e2 = I(p(n2), t2);
446 if (e2 == null ? void 0 : e2.set)
447 return e2.set.call(n2.k, r2), true;
448 if (!n2.P) {
449 var i2 = z(p(n2), t2), o2 = i2 == null ? void 0 : i2[Q];
450 if (o2 && o2.t === r2)
451 return n2.o[t2] = r2, n2.D[t2] = false, true;
452 if (c(r2, i2) && (r2 !== void 0 || u(n2.t, t2)))
453 return true;
454 E(n2), k(n2);
455 }
456 return n2.o[t2] === r2 && typeof r2 != "number" && (r2 !== void 0 || t2 in n2.o) || (n2.o[t2] = r2, n2.D[t2] = true, true);
457 }, deleteProperty: function (n2, t2) {
458 return z(n2.t, t2) !== void 0 || t2 in n2.t ? (n2.D[t2] = false, E(n2), k(n2)) : delete n2.D[t2], n2.o && delete n2.o[t2], true;
459 }, getOwnPropertyDescriptor: function (n2, t2) {
460 var r2 = p(n2), e2 = Reflect.getOwnPropertyDescriptor(r2, t2);
461 return e2 ? { writable: true, configurable: n2.i !== 1 || t2 !== "length", enumerable: e2.enumerable, value: r2[t2] } : e2;
462 }, defineProperty: function () {
463 n(11);
464 }, getPrototypeOf: function (n2) {
465 return Object.getPrototypeOf(n2.t);
466 }, setPrototypeOf: function () {
467 n(12);
468 } };
469 var on = {};
470 i(en, function (n2, t2) {
471 on[n2] = function () {
472 return arguments[0] = arguments[0][0], t2.apply(this, arguments);
473 };
474 }), on.deleteProperty = function (t2, r2) {
475 return isNaN(parseInt(r2)) && n(13), en.deleteProperty.call(this, t2[0], r2);
476 }, on.set = function (t2, r2, e2) {
477 return r2 !== "length" && isNaN(parseInt(r2)) && n(14), en.set.call(this, t2[0], r2, e2, t2[0]);
478 };
479 var un = function () {
480 function e2(t2) {
481 var e3 = this;
482 this.g = B, this.F = true, this.produce = function (t3, i3, o2) {
483 if (typeof t3 == "function" && typeof i3 != "function") {
484 var u2 = i3;
485 i3 = t3;
486 var a2 = e3;
487 return function (n2) {
488 var t4 = this;
489 n2 === void 0 && (n2 = u2);
490 for (var r2 = arguments.length, e4 = Array(r2 > 1 ? r2 - 1 : 0), o3 = 1; o3 < r2; o3++)
491 e4[o3 - 1] = arguments[o3];
492 return a2.produce(n2, function (n3) {
493 var r3;
494 return (r3 = i3).call.apply(r3, [t4, n3].concat(e4));
495 });
496 };
497 }
498 var f2;
499 if (typeof i3 != "function" && n(6), o2 !== void 0 && typeof o2 != "function" && n(7), r(t3)) {
500 var c2 = w(e3), s2 = R(e3, t3, void 0), v2 = true;
501 try {
502 f2 = i3(s2), v2 = false;
503 }
504 finally {
505 v2 ? O(c2) : g(c2);
506 }
507 return typeof Promise != "undefined" && f2 instanceof Promise ? f2.then(function (n2) {
508 return j(c2, o2), P(n2, c2);
509 }, function (n2) {
510 throw O(c2), n2;
511 }) : (j(c2, o2), P(f2, c2));
512 }
513 if (!t3 || typeof t3 != "object") {
514 if ((f2 = i3(t3)) === H)
515 return;
516 return f2 === void 0 && (f2 = t3), e3.F && d(f2, true), f2;
517 }
518 n(21, t3);
519 }, this.produceWithPatches = function (n2, t3) {
520 return typeof n2 == "function" ? function (t4) {
521 for (var r3 = arguments.length, i4 = Array(r3 > 1 ? r3 - 1 : 0), o2 = 1; o2 < r3; o2++)
522 i4[o2 - 1] = arguments[o2];
523 return e3.produceWithPatches(t4, function (t5) {
524 return n2.apply(void 0, [t5].concat(i4));
525 });
526 } : [e3.produce(n2, t3, function (n3, t4) {
527 r2 = n3, i3 = t4;
528 }), r2, i3];
529 var r2, i3;
530 }, typeof (t2 == null ? void 0 : t2.useProxies) == "boolean" && this.setUseProxies(t2.useProxies), typeof (t2 == null ? void 0 : t2.autoFreeze) == "boolean" && this.setAutoFreeze(t2.autoFreeze);
531 }
532 var i2 = e2.prototype;
533 return i2.createDraft = function (e3) {
534 r(e3) || n(8), t(e3) && (e3 = D(e3));
535 var i3 = w(this), o2 = R(this, e3, void 0);
536 return o2[Q].C = true, g(i3), o2;
537 }, i2.finishDraft = function (t2, r2) {
538 var e3 = t2 && t2[Q];
539 e3 && e3.C || n(9), e3.I && n(10);
540 var i3 = e3.A;
541 return j(i3, r2), P(void 0, i3);
542 }, i2.setAutoFreeze = function (n2) {
543 this.F = n2;
544 }, i2.setUseProxies = function (t2) {
545 t2 && !B && n(20), this.g = t2;
546 }, i2.applyPatches = function (n2, r2) {
547 var e3;
548 for (e3 = r2.length - 1; e3 >= 0; e3--) {
549 var i3 = r2[e3];
550 if (i3.path.length === 0 && i3.op === "replace") {
551 n2 = i3.value;
552 break;
553 }
554 }
555 e3 > -1 && (r2 = r2.slice(e3 + 1));
556 var o2 = b("Patches").$;
557 return t(n2) ? o2(n2, r2) : this.produce(n2, function (n3) {
558 return o2(n3, r2);
559 });
560 }, e2;
561 }();
562 var an = new un();
563 var fn = an.produce;
564 an.produceWithPatches.bind(an);
565 an.setAutoFreeze.bind(an);
566 an.setUseProxies.bind(an);
567 an.applyPatches.bind(an);
568 an.createDraft.bind(an);
569 an.finishDraft.bind(an);
570 var immer_esm_default = fn;
571 // ../../node_modules/@babel/runtime/helpers/esm/defineProperty.js
572 function _defineProperty(obj, key, value) {
573 if (key in obj) {
574 Object.defineProperty(obj, key, {
575 value: value,
576 enumerable: true,
577 configurable: true,
578 writable: true
579 });
580 }
581 else {
582 obj[key] = value;
583 }
584 return obj;
585 }
586 // ../../node_modules/@babel/runtime/helpers/esm/objectSpread2.js
587 function ownKeys(object, enumerableOnly) {
588 var keys = Object.keys(object);
589 if (Object.getOwnPropertySymbols) {
590 var symbols = Object.getOwnPropertySymbols(object);
591 enumerableOnly && (symbols = symbols.filter(function (sym) {
592 return Object.getOwnPropertyDescriptor(object, sym).enumerable;
593 })), keys.push.apply(keys, symbols);
594 }
595 return keys;
596 }
597 function _objectSpread2(target) {
598 for (var i2 = 1; i2 < arguments.length; i2++) {
599 var source = arguments[i2] != null ? arguments[i2] : {};
600 i2 % 2 ? ownKeys(Object(source), true).forEach(function (key) {
601 _defineProperty(target, key, source[key]);
602 }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
603 Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
604 });
605 }
606 return target;
607 }
608 // ../../node_modules/redux/es/redux.js
609 var $$observable = function () {
610 return typeof Symbol === "function" && Symbol.observable || "@@observable";
611 }();
612 var randomString = function randomString2() {
613 return Math.random().toString(36).substring(7).split("").join(".");
614 };
615 var ActionTypes = {
616 INIT: "@@redux/INIT" + randomString(),
617 REPLACE: "@@redux/REPLACE" + randomString(),
618 PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {
619 return "@@redux/PROBE_UNKNOWN_ACTION" + randomString();
620 }
621 };
622 function isPlainObject(obj) {
623 if (typeof obj !== "object" || obj === null)
624 return false;
625 var proto = obj;
626 while (Object.getPrototypeOf(proto) !== null) {
627 proto = Object.getPrototypeOf(proto);
628 }
629 return Object.getPrototypeOf(obj) === proto;
630 }
631 function miniKindOf(val) {
632 if (val === void 0)
633 return "undefined";
634 if (val === null)
635 return "null";
636 var type = typeof val;
637 switch (type) {
638 case "boolean":
639 case "string":
640 case "number":
641 case "symbol":
642 case "function": {
643 return type;
644 }
645 }
646 if (Array.isArray(val))
647 return "array";
648 if (isDate(val))
649 return "date";
650 if (isError(val))
651 return "error";
652 var constructorName = ctorName(val);
653 switch (constructorName) {
654 case "Symbol":
655 case "Promise":
656 case "WeakMap":
657 case "WeakSet":
658 case "Map":
659 case "Set":
660 return constructorName;
661 }
662 return type.slice(8, -1).toLowerCase().replace(/\s/g, "");
663 }
664 function ctorName(val) {
665 return typeof val.constructor === "function" ? val.constructor.name : null;
666 }
667 function isError(val) {
668 return val instanceof Error || typeof val.message === "string" && val.constructor && typeof val.constructor.stackTraceLimit === "number";
669 }
670 function isDate(val) {
671 if (val instanceof Date)
672 return true;
673 return typeof val.toDateString === "function" && typeof val.getDate === "function" && typeof val.setDate === "function";
674 }
675 function kindOf(val) {
676 var typeOfVal = typeof val;
677 {
678 typeOfVal = miniKindOf(val);
679 }
680 return typeOfVal;
681 }
682 function createStore(reducer, preloadedState, enhancer) {
683 var _ref2;
684 if (typeof preloadedState === "function" && typeof enhancer === "function" || typeof enhancer === "function" && typeof arguments[3] === "function") {
685 throw new Error("It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.");
686 }
687 if (typeof preloadedState === "function" && typeof enhancer === "undefined") {
688 enhancer = preloadedState;
689 preloadedState = void 0;
690 }
691 if (typeof enhancer !== "undefined") {
692 if (typeof enhancer !== "function") {
693 throw new Error("Expected the enhancer to be a function. Instead, received: '" + kindOf(enhancer) + "'");
694 }
695 return enhancer(createStore)(reducer, preloadedState);
696 }
697 if (typeof reducer !== "function") {
698 throw new Error("Expected the root reducer to be a function. Instead, received: '" + kindOf(reducer) + "'");
699 }
700 var currentReducer = reducer;
701 var currentState = preloadedState;
702 var currentListeners = [];
703 var nextListeners = currentListeners;
704 var isDispatching = false;
705 function ensureCanMutateNextListeners() {
706 if (nextListeners === currentListeners) {
707 nextListeners = currentListeners.slice();
708 }
709 }
710 function getState() {
711 if (isDispatching) {
712 throw new Error("You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");
713 }
714 return currentState;
715 }
716 function subscribe(listener2) {
717 if (typeof listener2 !== "function") {
718 throw new Error("Expected the listener to be a function. Instead, received: '" + kindOf(listener2) + "'");
719 }
720 if (isDispatching) {
721 throw new Error("You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api/store#subscribelistener for more details.");
722 }
723 var isSubscribed = true;
724 ensureCanMutateNextListeners();
725 nextListeners.push(listener2);
726 return function unsubscribe() {
727 if (!isSubscribed) {
728 return;
729 }
730 if (isDispatching) {
731 throw new Error("You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api/store#subscribelistener for more details.");
732 }
733 isSubscribed = false;
734 ensureCanMutateNextListeners();
735 var index = nextListeners.indexOf(listener2);
736 nextListeners.splice(index, 1);
737 currentListeners = null;
738 };
739 }
740 function dispatch(action) {
741 if (!isPlainObject(action)) {
742 throw new Error("Actions must be plain objects. Instead, the actual type was: '" + kindOf(action) + "'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.");
743 }
744 if (typeof action.type === "undefined") {
745 throw new Error('Actions may not have an undefined "type" property. You may have misspelled an action type string constant.');
746 }
747 if (isDispatching) {
748 throw new Error("Reducers may not dispatch actions.");
749 }
750 try {
751 isDispatching = true;
752 currentState = currentReducer(currentState, action);
753 }
754 finally {
755 isDispatching = false;
756 }
757 var listeners = currentListeners = nextListeners;
758 for (var i2 = 0; i2 < listeners.length; i2++) {
759 var listener2 = listeners[i2];
760 listener2();
761 }
762 return action;
763 }
764 function replaceReducer(nextReducer) {
765 if (typeof nextReducer !== "function") {
766 throw new Error("Expected the nextReducer to be a function. Instead, received: '" + kindOf(nextReducer));
767 }
768 currentReducer = nextReducer;
769 dispatch({
770 type: ActionTypes.REPLACE
771 });
772 }
773 function observable() {
774 var _ref;
775 var outerSubscribe = subscribe;
776 return _ref = {
777 subscribe: function subscribe2(observer) {
778 if (typeof observer !== "object" || observer === null) {
779 throw new Error("Expected the observer to be an object. Instead, received: '" + kindOf(observer) + "'");
780 }
781 function observeState() {
782 if (observer.next) {
783 observer.next(getState());
784 }
785 }
786 observeState();
787 var unsubscribe = outerSubscribe(observeState);
788 return {
789 unsubscribe: unsubscribe
790 };
791 }
792 }, _ref[$$observable] = function () {
793 return this;
794 }, _ref;
795 }
796 dispatch({
797 type: ActionTypes.INIT
798 });
799 return _ref2 = {
800 dispatch: dispatch,
801 subscribe: subscribe,
802 getState: getState,
803 replaceReducer: replaceReducer
804 }, _ref2[$$observable] = observable, _ref2;
805 }
806 function warning(message) {
807 if (typeof console !== "undefined" && typeof console.error === "function") {
808 console.error(message);
809 }
810 try {
811 throw new Error(message);
812 }
813 catch (e2) {
814 }
815 }
816 function getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {
817 var reducerKeys = Object.keys(reducers);
818 var argumentName = action && action.type === ActionTypes.INIT ? "preloadedState argument passed to createStore" : "previous state received by the reducer";
819 if (reducerKeys.length === 0) {
820 return "Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.";
821 }
822 if (!isPlainObject(inputState)) {
823 return "The " + argumentName + ' has unexpected type of "' + kindOf(inputState) + '". Expected argument to be an object with the following ' + ('keys: "' + reducerKeys.join('", "') + '"');
824 }
825 var unexpectedKeys = Object.keys(inputState).filter(function (key) {
826 return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];
827 });
828 unexpectedKeys.forEach(function (key) {
829 unexpectedKeyCache[key] = true;
830 });
831 if (action && action.type === ActionTypes.REPLACE)
832 return;
833 if (unexpectedKeys.length > 0) {
834 return "Unexpected " + (unexpectedKeys.length > 1 ? "keys" : "key") + " " + ('"' + unexpectedKeys.join('", "') + '" found in ' + argumentName + ". ") + "Expected to find one of the known reducer keys instead: " + ('"' + reducerKeys.join('", "') + '". Unexpected keys will be ignored.');
835 }
836 }
837 function assertReducerShape(reducers) {
838 Object.keys(reducers).forEach(function (key) {
839 var reducer = reducers[key];
840 var initialState = reducer(void 0, {
841 type: ActionTypes.INIT
842 });
843 if (typeof initialState === "undefined") {
844 throw new Error('The slice reducer for key "' + key + "\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.");
845 }
846 if (typeof reducer(void 0, {
847 type: ActionTypes.PROBE_UNKNOWN_ACTION()
848 }) === "undefined") {
849 throw new Error('The slice reducer for key "' + key + '" returned undefined when probed with a random type. ' + ("Don't try to handle '" + ActionTypes.INIT + "' or other actions in \"redux/*\" ") + "namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.");
850 }
851 });
852 }
853 function combineReducers(reducers) {
854 var reducerKeys = Object.keys(reducers);
855 var finalReducers = {};
856 for (var i2 = 0; i2 < reducerKeys.length; i2++) {
857 var key = reducerKeys[i2];
858 {
859 if (typeof reducers[key] === "undefined") {
860 warning('No reducer provided for key "' + key + '"');
861 }
862 }
863 if (typeof reducers[key] === "function") {
864 finalReducers[key] = reducers[key];
865 }
866 }
867 var finalReducerKeys = Object.keys(finalReducers);
868 var unexpectedKeyCache;
869 {
870 unexpectedKeyCache = {};
871 }
872 var shapeAssertionError;
873 try {
874 assertReducerShape(finalReducers);
875 }
876 catch (e2) {
877 shapeAssertionError = e2;
878 }
879 return function combination(state, action) {
880 if (state === void 0) {
881 state = {};
882 }
883 if (shapeAssertionError) {
884 throw shapeAssertionError;
885 }
886 {
887 var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);
888 if (warningMessage) {
889 warning(warningMessage);
890 }
891 }
892 var hasChanged = false;
893 var nextState = {};
894 for (var _i = 0; _i < finalReducerKeys.length; _i++) {
895 var _key = finalReducerKeys[_i];
896 var reducer = finalReducers[_key];
897 var previousStateForKey = state[_key];
898 var nextStateForKey = reducer(previousStateForKey, action);
899 if (typeof nextStateForKey === "undefined") {
900 var actionType = action && action.type;
901 throw new Error("When called with an action of type " + (actionType ? '"' + String(actionType) + '"' : "(unknown type)") + ', the slice reducer for key "' + _key + '" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.');
902 }
903 nextState[_key] = nextStateForKey;
904 hasChanged = hasChanged || nextStateForKey !== previousStateForKey;
905 }
906 hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;
907 return hasChanged ? nextState : state;
908 };
909 }
910 function bindActionCreator(actionCreator, dispatch) {
911 return function () {
912 return dispatch(actionCreator.apply(this, arguments));
913 };
914 }
915 function bindActionCreators(actionCreators, dispatch) {
916 if (typeof actionCreators === "function") {
917 return bindActionCreator(actionCreators, dispatch);
918 }
919 if (typeof actionCreators !== "object" || actionCreators === null) {
920 throw new Error("bindActionCreators expected an object or a function, but instead received: '" + kindOf(actionCreators) + "'. Did you write \"import ActionCreators from\" instead of \"import * as ActionCreators from\"?");
921 }
922 var boundActionCreators = {};
923 for (var key in actionCreators) {
924 var actionCreator = actionCreators[key];
925 if (typeof actionCreator === "function") {
926 boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);
927 }
928 }
929 return boundActionCreators;
930 }
931 function compose() {
932 for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {
933 funcs[_key] = arguments[_key];
934 }
935 if (funcs.length === 0) {
936 return function (arg) {
937 return arg;
938 };
939 }
940 if (funcs.length === 1) {
941 return funcs[0];
942 }
943 return funcs.reduce(function (a2, b2) {
944 return function () {
945 return a2(b2.apply(void 0, arguments));
946 };
947 });
948 }
949 function applyMiddleware() {
950 for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {
951 middlewares[_key] = arguments[_key];
952 }
953 return function (createStore2) {
954 return function () {
955 var store = createStore2.apply(void 0, arguments);
956 var _dispatch = function dispatch() {
957 throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.");
958 };
959 var middlewareAPI = {
960 getState: store.getState,
961 dispatch: function dispatch() {
962 return _dispatch.apply(void 0, arguments);
963 }
964 };
965 var chain = middlewares.map(function (middleware) {
966 return middleware(middlewareAPI);
967 });
968 _dispatch = compose.apply(void 0, chain)(store.dispatch);
969 return _objectSpread2(_objectSpread2({}, store), {}, {
970 dispatch: _dispatch
971 });
972 };
973 };
974 }
975 function isCrushed() {
976 }
977 if (typeof isCrushed.name === "string" && isCrushed.name !== "isCrushed") {
978 warning('You are currently using minified code outside of NODE_ENV === "production". This means that you are running a slower development build of Redux. You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) to ensure you have the correct code for your production build.');
979 }
980 // ../../node_modules/reselect/es/defaultMemoize.js
981 var NOT_FOUND = "NOT_FOUND";
982 function createSingletonCache(equals) {
983 var entry;
984 return {
985 get: function get(key) {
986 if (entry && equals(entry.key, key)) {
987 return entry.value;
988 }
989 return NOT_FOUND;
990 },
991 put: function put(key, value) {
992 entry = {
993 key: key,
994 value: value
995 };
996 },
997 getEntries: function getEntries() {
998 return entry ? [entry] : [];
999 },
1000 clear: function clear() {
1001 entry = void 0;
1002 }
1003 };
1004 }
1005 function createLruCache(maxSize, equals) {
1006 var entries = [];
1007 function get(key) {
1008 var cacheIndex = entries.findIndex(function (entry2) {
1009 return equals(key, entry2.key);
1010 });
1011 if (cacheIndex > -1) {
1012 var entry = entries[cacheIndex];
1013 if (cacheIndex > 0) {
1014 entries.splice(cacheIndex, 1);
1015 entries.unshift(entry);
1016 }
1017 return entry.value;
1018 }
1019 return NOT_FOUND;
1020 }
1021 function put(key, value) {
1022 if (get(key) === NOT_FOUND) {
1023 entries.unshift({
1024 key: key,
1025 value: value
1026 });
1027 if (entries.length > maxSize) {
1028 entries.pop();
1029 }
1030 }
1031 }
1032 function getEntries() {
1033 return entries;
1034 }
1035 function clear() {
1036 entries = [];
1037 }
1038 return {
1039 get: get,
1040 put: put,
1041 getEntries: getEntries,
1042 clear: clear
1043 };
1044 }
1045 var defaultEqualityCheck = function defaultEqualityCheck2(a2, b2) {
1046 return a2 === b2;
1047 };
1048 function createCacheKeyComparator(equalityCheck) {
1049 return function areArgumentsShallowlyEqual(prev, next) {
1050 if (prev === null || next === null || prev.length !== next.length) {
1051 return false;
1052 }
1053 var length = prev.length;
1054 for (var i2 = 0; i2 < length; i2++) {
1055 if (!equalityCheck(prev[i2], next[i2])) {
1056 return false;
1057 }
1058 }
1059 return true;
1060 };
1061 }
1062 function defaultMemoize(func, equalityCheckOrOptions) {
1063 var providedOptions = typeof equalityCheckOrOptions === "object" ? equalityCheckOrOptions : {
1064 equalityCheck: equalityCheckOrOptions
1065 };
1066 var _providedOptions$equa = providedOptions.equalityCheck, equalityCheck = _providedOptions$equa === void 0 ? defaultEqualityCheck : _providedOptions$equa, _providedOptions$maxS = providedOptions.maxSize, maxSize = _providedOptions$maxS === void 0 ? 1 : _providedOptions$maxS, resultEqualityCheck = providedOptions.resultEqualityCheck;
1067 var comparator = createCacheKeyComparator(equalityCheck);
1068 var cache = maxSize === 1 ? createSingletonCache(comparator) : createLruCache(maxSize, comparator);
1069 function memoized() {
1070 var value = cache.get(arguments);
1071 if (value === NOT_FOUND) {
1072 value = func.apply(null, arguments);
1073 if (resultEqualityCheck) {
1074 var entries = cache.getEntries();
1075 var matchingEntry = entries.find(function (entry) {
1076 return resultEqualityCheck(entry.value, value);
1077 });
1078 if (matchingEntry) {
1079 value = matchingEntry.value;
1080 }
1081 }
1082 cache.put(arguments, value);
1083 }
1084 return value;
1085 }
1086 memoized.clearCache = function () {
1087 return cache.clear();
1088 };
1089 return memoized;
1090 }
1091 // ../../node_modules/reselect/es/index.js
1092 function getDependencies(funcs) {
1093 var dependencies = Array.isArray(funcs[0]) ? funcs[0] : funcs;
1094 if (!dependencies.every(function (dep) {
1095 return typeof dep === "function";
1096 })) {
1097 var dependencyTypes = dependencies.map(function (dep) {
1098 return typeof dep === "function" ? "function " + (dep.name || "unnamed") + "()" : typeof dep;
1099 }).join(", ");
1100 throw new Error("createSelector expects all input-selectors to be functions, but received the following types: [" + dependencyTypes + "]");
1101 }
1102 return dependencies;
1103 }
1104 function createSelectorCreator(memoize) {
1105 for (var _len = arguments.length, memoizeOptionsFromArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1106 memoizeOptionsFromArgs[_key - 1] = arguments[_key];
1107 }
1108 var createSelector2 = function createSelector3() {
1109 for (var _len2 = arguments.length, funcs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1110 funcs[_key2] = arguments[_key2];
1111 }
1112 var _recomputations = 0;
1113 var _lastResult;
1114 var directlyPassedOptions = {
1115 memoizeOptions: void 0
1116 };
1117 var resultFunc = funcs.pop();
1118 if (typeof resultFunc === "object") {
1119 directlyPassedOptions = resultFunc;
1120 resultFunc = funcs.pop();
1121 }
1122 if (typeof resultFunc !== "function") {
1123 throw new Error("createSelector expects an output function after the inputs, but received: [" + typeof resultFunc + "]");
1124 }
1125 var _directlyPassedOption = directlyPassedOptions, _directlyPassedOption2 = _directlyPassedOption.memoizeOptions, memoizeOptions = _directlyPassedOption2 === void 0 ? memoizeOptionsFromArgs : _directlyPassedOption2;
1126 var finalMemoizeOptions = Array.isArray(memoizeOptions) ? memoizeOptions : [memoizeOptions];
1127 var dependencies = getDependencies(funcs);
1128 var memoizedResultFunc = memoize.apply(void 0, [function () {
1129 _recomputations++;
1130 return resultFunc.apply(null, arguments);
1131 }].concat(finalMemoizeOptions));
1132 var selector = memoize(function () {
1133 var params = [];
1134 var length = dependencies.length;
1135 for (var i2 = 0; i2 < length; i2++) {
1136 params.push(dependencies[i2].apply(null, arguments));
1137 }
1138 _lastResult = memoizedResultFunc.apply(null, params);
1139 return _lastResult;
1140 });
1141 Object.assign(selector, {
1142 resultFunc: resultFunc,
1143 memoizedResultFunc: memoizedResultFunc,
1144 dependencies: dependencies,
1145 lastResult: function lastResult() {
1146 return _lastResult;
1147 },
1148 recomputations: function recomputations() {
1149 return _recomputations;
1150 },
1151 resetRecomputations: function resetRecomputations() {
1152 return _recomputations = 0;
1153 }
1154 });
1155 return selector;
1156 };
1157 return createSelector2;
1158 }
1159 var createSelector = /* @__PURE__ */ createSelectorCreator(defaultMemoize);
1160 // src/createDraftSafeSelector.ts
1161 var createDraftSafeSelector = function () {
1162 var args = [];
1163 for (var _c = 0; _c < arguments.length; _c++) {
1164 args[_c] = arguments[_c];
1165 }
1166 var selector = createSelector.apply(void 0, args);
1167 var wrappedSelector = function (value) {
1168 var rest = [];
1169 for (var _c = 1; _c < arguments.length; _c++) {
1170 rest[_c - 1] = arguments[_c];
1171 }
1172 return selector.apply(void 0, __spreadArray([t(value) ? D(value) : value], rest));
1173 };
1174 return wrappedSelector;
1175 };
1176 // src/devtoolsExtension.ts
1177 var composeWithDevTools = typeof window !== "undefined" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : function () {
1178 if (arguments.length === 0)
1179 return void 0;
1180 if (typeof arguments[0] === "object")
1181 return compose;
1182 return compose.apply(null, arguments);
1183 };
1184 // src/isPlainObject.ts
1185 function isPlainObject2(value) {
1186 if (typeof value !== "object" || value === null)
1187 return false;
1188 var proto = Object.getPrototypeOf(value);
1189 if (proto === null)
1190 return true;
1191 var baseProto = proto;
1192 while (Object.getPrototypeOf(baseProto) !== null) {
1193 baseProto = Object.getPrototypeOf(baseProto);
1194 }
1195 return proto === baseProto;
1196 }
1197 // ../../node_modules/redux-thunk/es/index.js
1198 function createThunkMiddleware(extraArgument) {
1199 var middleware = function middleware2(_ref) {
1200 var dispatch = _ref.dispatch, getState = _ref.getState;
1201 return function (next) {
1202 return function (action) {
1203 if (typeof action === "function") {
1204 return action(dispatch, getState, extraArgument);
1205 }
1206 return next(action);
1207 };
1208 };
1209 };
1210 return middleware;
1211 }
1212 var thunk = createThunkMiddleware();
1213 thunk.withExtraArgument = createThunkMiddleware;
1214 var es_default = thunk;
1215 // src/utils.ts
1216 function getTimeMeasureUtils(maxDelay, fnName) {
1217 var elapsed = 0;
1218 return {
1219 measureTime: function (fn2) {
1220 var started = Date.now();
1221 try {
1222 return fn2();
1223 }
1224 finally {
1225 var finished = Date.now();
1226 elapsed += finished - started;
1227 }
1228 },
1229 warnIfExceeded: function () {
1230 if (elapsed > maxDelay) {
1231 console.warn(fnName + " took " + elapsed + "ms, which is more than the warning threshold of " + maxDelay + "ms. \nIf your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.\nIt is disabled in production builds, so you don't need to worry about that.");
1232 }
1233 }
1234 };
1235 }
1236 var MiddlewareArray = /** @class */ (function (_super) {
1237 __extends(MiddlewareArray, _super);
1238 function MiddlewareArray() {
1239 var args = [];
1240 for (var _c = 0; _c < arguments.length; _c++) {
1241 args[_c] = arguments[_c];
1242 }
1243 var _this = _super.apply(this, args) || this;
1244 Object.setPrototypeOf(_this, MiddlewareArray.prototype);
1245 return _this;
1246 }
1247 Object.defineProperty(MiddlewareArray, Symbol.species, {
1248 get: function () {
1249 return MiddlewareArray;
1250 },
1251 enumerable: false,
1252 configurable: true
1253 });
1254 MiddlewareArray.prototype.concat = function () {
1255 var arr = [];
1256 for (var _c = 0; _c < arguments.length; _c++) {
1257 arr[_c] = arguments[_c];
1258 }
1259 return _super.prototype.concat.apply(this, arr);
1260 };
1261 MiddlewareArray.prototype.prepend = function () {
1262 var arr = [];
1263 for (var _c = 0; _c < arguments.length; _c++) {
1264 arr[_c] = arguments[_c];
1265 }
1266 if (arr.length === 1 && Array.isArray(arr[0])) {
1267 return new (MiddlewareArray.bind.apply(MiddlewareArray, __spreadArray([void 0], arr[0].concat(this))))();
1268 }
1269 return new (MiddlewareArray.bind.apply(MiddlewareArray, __spreadArray([void 0], arr.concat(this))))();
1270 };
1271 return MiddlewareArray;
1272 }(Array));
1273 function freezeDraftable(val) {
1274 return r(val) ? immer_esm_default(val, function () {
1275 }) : val;
1276 }
1277 var prefix = "Invariant failed";
1278 function invariant(condition, message) {
1279 if (condition) {
1280 return;
1281 }
1282 throw new Error(prefix + ": " + (message || ""));
1283 }
1284 function stringify(obj, serializer, indent, decycler) {
1285 return JSON.stringify(obj, getSerialize(serializer, decycler), indent);
1286 }
1287 function getSerialize(serializer, decycler) {
1288 var stack = [], keys = [];
1289 if (!decycler)
1290 decycler = function (_2, value) {
1291 if (stack[0] === value)
1292 return "[Circular ~]";
1293 return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]";
1294 };
1295 return function (key, value) {
1296 if (stack.length > 0) {
1297 var thisPos = stack.indexOf(this);
1298 ~thisPos ? stack.splice(thisPos + 1) : stack.push(this);
1299 ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);
1300 if (~stack.indexOf(value))
1301 value = decycler.call(this, key, value);
1302 }
1303 else
1304 stack.push(value);
1305 return serializer == null ? value : serializer.call(this, key, value);
1306 };
1307 }
1308 function isImmutableDefault(value) {
1309 return typeof value !== "object" || value === null || typeof value === "undefined" || Object.isFrozen(value);
1310 }
1311 function trackForMutations(isImmutable, ignorePaths, obj) {
1312 var trackedProperties = trackProperties(isImmutable, ignorePaths, obj);
1313 return {
1314 detectMutations: function () {
1315 return detectMutations(isImmutable, ignorePaths, trackedProperties, obj);
1316 }
1317 };
1318 }
1319 function trackProperties(isImmutable, ignorePaths, obj, path) {
1320 if (ignorePaths === void 0) { ignorePaths = []; }
1321 if (path === void 0) { path = ""; }
1322 var tracked = { value: obj };
1323 if (!isImmutable(obj)) {
1324 tracked.children = {};
1325 for (var key in obj) {
1326 var childPath = path ? path + "." + key : key;
1327 if (ignorePaths.length && ignorePaths.indexOf(childPath) !== -1) {
1328 continue;
1329 }
1330 tracked.children[key] = trackProperties(isImmutable, ignorePaths, obj[key], childPath);
1331 }
1332 }
1333 return tracked;
1334 }
1335 function detectMutations(isImmutable, ignorePaths, trackedProperty, obj, sameParentRef, path) {
1336 if (ignorePaths === void 0) { ignorePaths = []; }
1337 if (sameParentRef === void 0) { sameParentRef = false; }
1338 if (path === void 0) { path = ""; }
1339 var prevObj = trackedProperty ? trackedProperty.value : void 0;
1340 var sameRef = prevObj === obj;
1341 if (sameParentRef && !sameRef && !Number.isNaN(obj)) {
1342 return { wasMutated: true, path: path };
1343 }
1344 if (isImmutable(prevObj) || isImmutable(obj)) {
1345 return { wasMutated: false };
1346 }
1347 var keysToDetect = {};
1348 for (var key in trackedProperty.children) {
1349 keysToDetect[key] = true;
1350 }
1351 for (var key in obj) {
1352 keysToDetect[key] = true;
1353 }
1354 for (var key in keysToDetect) {
1355 var childPath = path ? path + "." + key : key;
1356 if (ignorePaths.length && ignorePaths.indexOf(childPath) !== -1) {
1357 continue;
1358 }
1359 var result = detectMutations(isImmutable, ignorePaths, trackedProperty.children[key], obj[key], sameRef, childPath);
1360 if (result.wasMutated) {
1361 return result;
1362 }
1363 }
1364 return { wasMutated: false };
1365 }
1366 function createImmutableStateInvariantMiddleware(options) {
1367 if (options === void 0) { options = {}; }
1368 var _c = options.isImmutable, isImmutable = _c === void 0 ? isImmutableDefault : _c, ignoredPaths = options.ignoredPaths, _d = options.warnAfter, warnAfter = _d === void 0 ? 32 : _d, ignore = options.ignore;
1369 ignoredPaths = ignoredPaths || ignore;
1370 var track = trackForMutations.bind(null, isImmutable, ignoredPaths);
1371 return function (_c) {
1372 var getState = _c.getState;
1373 var state = getState();
1374 var tracker = track(state);
1375 var result;
1376 return function (next) { return function (action) {
1377 var measureUtils = getTimeMeasureUtils(warnAfter, "ImmutableStateInvariantMiddleware");
1378 measureUtils.measureTime(function () {
1379 state = getState();
1380 result = tracker.detectMutations();
1381 tracker = track(state);
1382 invariant(!result.wasMutated, "A state mutation was detected between dispatches, in the path '" + (result.path || "") + "'. This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)");
1383 });
1384 var dispatchedAction = next(action);
1385 measureUtils.measureTime(function () {
1386 state = getState();
1387 result = tracker.detectMutations();
1388 tracker = track(state);
1389 result.wasMutated && invariant(!result.wasMutated, "A state mutation was detected inside a dispatch, in the path: " + (result.path || "") + ". Take a look at the reducer(s) handling the action " + stringify(action) + ". (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)");
1390 });
1391 measureUtils.warnIfExceeded();
1392 return dispatchedAction;
1393 }; };
1394 };
1395 }
1396 // src/serializableStateInvariantMiddleware.ts
1397 function isPlain(val) {
1398 var type = typeof val;
1399 return type === "undefined" || val === null || type === "string" || type === "boolean" || type === "number" || Array.isArray(val) || isPlainObject2(val);
1400 }
1401 function findNonSerializableValue(value, path, isSerializable, getEntries, ignoredPaths) {
1402 if (path === void 0) { path = ""; }
1403 if (isSerializable === void 0) { isSerializable = isPlain; }
1404 if (ignoredPaths === void 0) { ignoredPaths = []; }
1405 var foundNestedSerializable;
1406 if (!isSerializable(value)) {
1407 return {
1408 keyPath: path || "<root>",
1409 value: value
1410 };
1411 }
1412 if (typeof value !== "object" || value === null) {
1413 return false;
1414 }
1415 var entries = getEntries != null ? getEntries(value) : Object.entries(value);
1416 var hasIgnoredPaths = ignoredPaths.length > 0;
1417 for (var _c = 0, entries_1 = entries; _c < entries_1.length; _c++) {
1418 var _d = entries_1[_c], key = _d[0], nestedValue = _d[1];
1419 var nestedPath = path ? path + "." + key : key;
1420 if (hasIgnoredPaths && ignoredPaths.indexOf(nestedPath) >= 0) {
1421 continue;
1422 }
1423 if (!isSerializable(nestedValue)) {
1424 return {
1425 keyPath: nestedPath,
1426 value: nestedValue
1427 };
1428 }
1429 if (typeof nestedValue === "object") {
1430 foundNestedSerializable = findNonSerializableValue(nestedValue, nestedPath, isSerializable, getEntries, ignoredPaths);
1431 if (foundNestedSerializable) {
1432 return foundNestedSerializable;
1433 }
1434 }
1435 }
1436 return false;
1437 }
1438 function createSerializableStateInvariantMiddleware(options) {
1439 if (options === void 0) { options = {}; }
1440 var _c = options.isSerializable, isSerializable = _c === void 0 ? isPlain : _c, getEntries = options.getEntries, _d = options.ignoredActions, ignoredActions = _d === void 0 ? [] : _d, _e = options.ignoredActionPaths, ignoredActionPaths = _e === void 0 ? ["meta.arg", "meta.baseQueryMeta"] : _e, _f = options.ignoredPaths, ignoredPaths = _f === void 0 ? [] : _f, _g = options.warnAfter, warnAfter = _g === void 0 ? 32 : _g, _h = options.ignoreState, ignoreState = _h === void 0 ? false : _h, _j = options.ignoreActions, ignoreActions = _j === void 0 ? false : _j;
1441 return function (storeAPI) { return function (next) { return function (action) {
1442 var result = next(action);
1443 var measureUtils = getTimeMeasureUtils(warnAfter, "SerializableStateInvariantMiddleware");
1444 if (!ignoreActions && !(ignoredActions.length && ignoredActions.indexOf(action.type) !== -1)) {
1445 measureUtils.measureTime(function () {
1446 var foundActionNonSerializableValue = findNonSerializableValue(action, "", isSerializable, getEntries, ignoredActionPaths);
1447 if (foundActionNonSerializableValue) {
1448 var keyPath = foundActionNonSerializableValue.keyPath, value = foundActionNonSerializableValue.value;
1449 console.error("A non-serializable value was detected in an action, in the path: `" + keyPath + "`. Value:", value, "\nTake a look at the logic that dispatched this action: ", action, "\n(See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)", "\n(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)");
1450 }
1451 });
1452 }
1453 if (!ignoreState) {
1454 measureUtils.measureTime(function () {
1455 var state = storeAPI.getState();
1456 var foundStateNonSerializableValue = findNonSerializableValue(state, "", isSerializable, getEntries, ignoredPaths);
1457 if (foundStateNonSerializableValue) {
1458 var keyPath = foundStateNonSerializableValue.keyPath, value = foundStateNonSerializableValue.value;
1459 console.error("A non-serializable value was detected in the state, in the path: `" + keyPath + "`. Value:", value, "\nTake a look at the reducer(s) handling this action type: " + action.type + ".\n(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)");
1460 }
1461 });
1462 measureUtils.warnIfExceeded();
1463 }
1464 return result;
1465 }; }; };
1466 }
1467 // src/getDefaultMiddleware.ts
1468 function isBoolean(x2) {
1469 return typeof x2 === "boolean";
1470 }
1471 function curryGetDefaultMiddleware() {
1472 return function curriedGetDefaultMiddleware(options) {
1473 return getDefaultMiddleware(options);
1474 };
1475 }
1476 function getDefaultMiddleware(options) {
1477 if (options === void 0) { options = {}; }
1478 var _c = options.thunk, thunk2 = _c === void 0 ? true : _c, _d = options.immutableCheck, immutableCheck = _d === void 0 ? true : _d, _e = options.serializableCheck, serializableCheck = _e === void 0 ? true : _e;
1479 var middlewareArray = new MiddlewareArray();
1480 if (thunk2) {
1481 if (isBoolean(thunk2)) {
1482 middlewareArray.push(es_default);
1483 }
1484 else {
1485 middlewareArray.push(es_default.withExtraArgument(thunk2.extraArgument));
1486 }
1487 }
1488 {
1489 if (immutableCheck) {
1490 var immutableOptions = {};
1491 if (!isBoolean(immutableCheck)) {
1492 immutableOptions = immutableCheck;
1493 }
1494 middlewareArray.unshift(createImmutableStateInvariantMiddleware(immutableOptions));
1495 }
1496 if (serializableCheck) {
1497 var serializableOptions = {};
1498 if (!isBoolean(serializableCheck)) {
1499 serializableOptions = serializableCheck;
1500 }
1501 middlewareArray.push(createSerializableStateInvariantMiddleware(serializableOptions));
1502 }
1503 }
1504 return middlewareArray;
1505 }
1506 // src/configureStore.ts
1507 var IS_PRODUCTION = false;
1508 function configureStore(options) {
1509 var curriedGetDefaultMiddleware = curryGetDefaultMiddleware();
1510 var _c = options || {}, _d = _c.reducer, reducer = _d === void 0 ? void 0 : _d, _e = _c.middleware, middleware = _e === void 0 ? curriedGetDefaultMiddleware() : _e, _f = _c.devTools, devTools = _f === void 0 ? true : _f, _g = _c.preloadedState, preloadedState = _g === void 0 ? void 0 : _g, _h = _c.enhancers, enhancers = _h === void 0 ? void 0 : _h;
1511 var rootReducer;
1512 if (typeof reducer === "function") {
1513 rootReducer = reducer;
1514 }
1515 else if (isPlainObject2(reducer)) {
1516 rootReducer = combineReducers(reducer);
1517 }
1518 else {
1519 throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');
1520 }
1521 var finalMiddleware = middleware;
1522 if (typeof finalMiddleware === "function") {
1523 finalMiddleware = finalMiddleware(curriedGetDefaultMiddleware);
1524 if (!Array.isArray(finalMiddleware)) {
1525 throw new Error("when using a middleware builder function, an array of middleware must be returned");
1526 }
1527 }
1528 if (finalMiddleware.some(function (item) { return typeof item !== "function"; })) {
1529 throw new Error("each middleware provided to configureStore must be a function");
1530 }
1531 var middlewareEnhancer = applyMiddleware.apply(void 0, finalMiddleware);
1532 var finalCompose = compose;
1533 if (devTools) {
1534 finalCompose = composeWithDevTools(__spreadValues({
1535 trace: !IS_PRODUCTION
1536 }, typeof devTools === "object" && devTools));
1537 }
1538 var storeEnhancers = [middlewareEnhancer];
1539 if (Array.isArray(enhancers)) {
1540 storeEnhancers = __spreadArray([middlewareEnhancer], enhancers);
1541 }
1542 else if (typeof enhancers === "function") {
1543 storeEnhancers = enhancers(storeEnhancers);
1544 }
1545 var composedEnhancer = finalCompose.apply(void 0, storeEnhancers);
1546 return createStore(rootReducer, preloadedState, composedEnhancer);
1547 }
1548 // src/createAction.ts
1549 function createAction(type, prepareAction) {
1550 function actionCreator() {
1551 var args = [];
1552 for (var _c = 0; _c < arguments.length; _c++) {
1553 args[_c] = arguments[_c];
1554 }
1555 if (prepareAction) {
1556 var prepared = prepareAction.apply(void 0, args);
1557 if (!prepared) {
1558 throw new Error("prepareAction did not return an object");
1559 }
1560 return __spreadValues(__spreadValues({
1561 type: type,
1562 payload: prepared.payload
1563 }, "meta" in prepared && { meta: prepared.meta }), "error" in prepared && { error: prepared.error });
1564 }
1565 return { type: type, payload: args[0] };
1566 }
1567 actionCreator.toString = function () { return "" + type; };
1568 actionCreator.type = type;
1569 actionCreator.match = function (action) { return action.type === type; };
1570 return actionCreator;
1571 }
1572 function isFSA(action) {
1573 return isPlainObject2(action) && typeof action.type === "string" && Object.keys(action).every(isValidKey);
1574 }
1575 function isValidKey(key) {
1576 return ["type", "payload", "error", "meta"].indexOf(key) > -1;
1577 }
1578 function getType(actionCreator) {
1579 return "" + actionCreator;
1580 }
1581 // src/mapBuilders.ts
1582 function executeReducerBuilderCallback(builderCallback) {
1583 var actionsMap = {};
1584 var actionMatchers = [];
1585 var defaultCaseReducer;
1586 var builder = {
1587 addCase: function (typeOrActionCreator, reducer) {
1588 {
1589 if (actionMatchers.length > 0) {
1590 throw new Error("`builder.addCase` should only be called before calling `builder.addMatcher`");
1591 }
1592 if (defaultCaseReducer) {
1593 throw new Error("`builder.addCase` should only be called before calling `builder.addDefaultCase`");
1594 }
1595 }
1596 var type = typeof typeOrActionCreator === "string" ? typeOrActionCreator : typeOrActionCreator.type;
1597 if (type in actionsMap) {
1598 throw new Error("addCase cannot be called with two reducers for the same action type");
1599 }
1600 actionsMap[type] = reducer;
1601 return builder;
1602 },
1603 addMatcher: function (matcher, reducer) {
1604 {
1605 if (defaultCaseReducer) {
1606 throw new Error("`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");
1607 }
1608 }
1609 actionMatchers.push({ matcher: matcher, reducer: reducer });
1610 return builder;
1611 },
1612 addDefaultCase: function (reducer) {
1613 {
1614 if (defaultCaseReducer) {
1615 throw new Error("`builder.addDefaultCase` can only be called once");
1616 }
1617 }
1618 defaultCaseReducer = reducer;
1619 return builder;
1620 }
1621 };
1622 builderCallback(builder);
1623 return [actionsMap, actionMatchers, defaultCaseReducer];
1624 }
1625 // src/createReducer.ts
1626 function isStateFunction(x2) {
1627 return typeof x2 === "function";
1628 }
1629 function createReducer(initialState, mapOrBuilderCallback, actionMatchers, defaultCaseReducer) {
1630 if (actionMatchers === void 0) { actionMatchers = []; }
1631 var _c = typeof mapOrBuilderCallback === "function" ? executeReducerBuilderCallback(mapOrBuilderCallback) : [mapOrBuilderCallback, actionMatchers, defaultCaseReducer], actionsMap = _c[0], finalActionMatchers = _c[1], finalDefaultCaseReducer = _c[2];
1632 var getInitialState;
1633 if (isStateFunction(initialState)) {
1634 getInitialState = function () { return freezeDraftable(initialState()); };
1635 }
1636 else {
1637 var frozenInitialState_1 = freezeDraftable(initialState);
1638 getInitialState = function () { return frozenInitialState_1; };
1639 }
1640 function reducer(state, action) {
1641 if (state === void 0) { state = getInitialState(); }
1642 var caseReducers = __spreadArray([
1643 actionsMap[action.type]
1644 ], finalActionMatchers.filter(function (_c) {
1645 var matcher = _c.matcher;
1646 return matcher(action);
1647 }).map(function (_c) {
1648 var reducer2 = _c.reducer;
1649 return reducer2;
1650 }));
1651 if (caseReducers.filter(function (cr) { return !!cr; }).length === 0) {
1652 caseReducers = [finalDefaultCaseReducer];
1653 }
1654 return caseReducers.reduce(function (previousState, caseReducer) {
1655 if (caseReducer) {
1656 if (t(previousState)) {
1657 var draft = previousState;
1658 var result = caseReducer(draft, action);
1659 if (typeof result === "undefined") {
1660 return previousState;
1661 }
1662 return result;
1663 }
1664 else if (!r(previousState)) {
1665 var result = caseReducer(previousState, action);
1666 if (typeof result === "undefined") {
1667 if (previousState === null) {
1668 return previousState;
1669 }
1670 throw Error("A case reducer on a non-draftable value must not return undefined");
1671 }
1672 return result;
1673 }
1674 else {
1675 return immer_esm_default(previousState, function (draft) {
1676 return caseReducer(draft, action);
1677 });
1678 }
1679 }
1680 return previousState;
1681 }, state);
1682 }
1683 reducer.getInitialState = getInitialState;
1684 return reducer;
1685 }
1686 // src/createSlice.ts
1687 function getType2(slice, actionKey) {
1688 return slice + "/" + actionKey;
1689 }
1690 function createSlice(options) {
1691 var name = options.name;
1692 if (!name) {
1693 throw new Error("`name` is a required option for createSlice");
1694 }
1695 if (typeof process !== "undefined" && true) {
1696 if (options.initialState === void 0) {
1697 console.error("You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`");
1698 }
1699 }
1700 var initialState = typeof options.initialState == "function" ? options.initialState : freezeDraftable(options.initialState);
1701 var reducers = options.reducers || {};
1702 var reducerNames = Object.keys(reducers);
1703 var sliceCaseReducersByName = {};
1704 var sliceCaseReducersByType = {};
1705 var actionCreators = {};
1706 reducerNames.forEach(function (reducerName) {
1707 var maybeReducerWithPrepare = reducers[reducerName];
1708 var type = getType2(name, reducerName);
1709 var caseReducer;
1710 var prepareCallback;
1711 if ("reducer" in maybeReducerWithPrepare) {
1712 caseReducer = maybeReducerWithPrepare.reducer;
1713 prepareCallback = maybeReducerWithPrepare.prepare;
1714 }
1715 else {
1716 caseReducer = maybeReducerWithPrepare;
1717 }
1718 sliceCaseReducersByName[reducerName] = caseReducer;
1719 sliceCaseReducersByType[type] = caseReducer;
1720 actionCreators[reducerName] = prepareCallback ? createAction(type, prepareCallback) : createAction(type);
1721 });
1722 function buildReducer() {
1723 var _c = typeof options.extraReducers === "function" ? executeReducerBuilderCallback(options.extraReducers) : [options.extraReducers], _d = _c[0], extraReducers = _d === void 0 ? {} : _d, _e = _c[1], actionMatchers = _e === void 0 ? [] : _e, _f = _c[2], defaultCaseReducer = _f === void 0 ? void 0 : _f;
1724 var finalCaseReducers = __spreadValues(__spreadValues({}, extraReducers), sliceCaseReducersByType);
1725 return createReducer(initialState, finalCaseReducers, actionMatchers, defaultCaseReducer);
1726 }
1727 var _reducer;
1728 return {
1729 name: name,
1730 reducer: function (state, action) {
1731 if (!_reducer)
1732 _reducer = buildReducer();
1733 return _reducer(state, action);
1734 },
1735 actions: actionCreators,
1736 caseReducers: sliceCaseReducersByName,
1737 getInitialState: function () {
1738 if (!_reducer)
1739 _reducer = buildReducer();
1740 return _reducer.getInitialState();
1741 }
1742 };
1743 }
1744 // src/entities/entity_state.ts
1745 function getInitialEntityState() {
1746 return {
1747 ids: [],
1748 entities: {}
1749 };
1750 }
1751 function createInitialStateFactory() {
1752 function getInitialState(additionalState) {
1753 if (additionalState === void 0) { additionalState = {}; }
1754 return Object.assign(getInitialEntityState(), additionalState);
1755 }
1756 return { getInitialState: getInitialState };
1757 }
1758 // src/entities/state_selectors.ts
1759 function createSelectorsFactory() {
1760 function getSelectors(selectState) {
1761 var selectIds = function (state) { return state.ids; };
1762 var selectEntities = function (state) { return state.entities; };
1763 var selectAll = createDraftSafeSelector(selectIds, selectEntities, function (ids, entities) { return ids.map(function (id) { return entities[id]; }); });
1764 var selectId = function (_2, id) { return id; };
1765 var selectById = function (entities, id) { return entities[id]; };
1766 var selectTotal = createDraftSafeSelector(selectIds, function (ids) { return ids.length; });
1767 if (!selectState) {
1768 return {
1769 selectIds: selectIds,
1770 selectEntities: selectEntities,
1771 selectAll: selectAll,
1772 selectTotal: selectTotal,
1773 selectById: createDraftSafeSelector(selectEntities, selectId, selectById)
1774 };
1775 }
1776 var selectGlobalizedEntities = createDraftSafeSelector(selectState, selectEntities);
1777 return {
1778 selectIds: createDraftSafeSelector(selectState, selectIds),
1779 selectEntities: selectGlobalizedEntities,
1780 selectAll: createDraftSafeSelector(selectState, selectAll),
1781 selectTotal: createDraftSafeSelector(selectState, selectTotal),
1782 selectById: createDraftSafeSelector(selectGlobalizedEntities, selectId, selectById)
1783 };
1784 }
1785 return { getSelectors: getSelectors };
1786 }
1787 // src/entities/state_adapter.ts
1788 function createSingleArgumentStateOperator(mutator) {
1789 var operator = createStateOperator(function (_2, state) { return mutator(state); });
1790 return function operation(state) {
1791 return operator(state, void 0);
1792 };
1793 }
1794 function createStateOperator(mutator) {
1795 return function operation(state, arg) {
1796 function isPayloadActionArgument(arg2) {
1797 return isFSA(arg2);
1798 }
1799 var runMutator = function (draft) {
1800 if (isPayloadActionArgument(arg)) {
1801 mutator(arg.payload, draft);
1802 }
1803 else {
1804 mutator(arg, draft);
1805 }
1806 };
1807 if (t(state)) {
1808 runMutator(state);
1809 return state;
1810 }
1811 else {
1812 return immer_esm_default(state, runMutator);
1813 }
1814 };
1815 }
1816 // src/entities/utils.ts
1817 function selectIdValue(entity, selectId) {
1818 var key = selectId(entity);
1819 if (key === void 0) {
1820 console.warn("The entity passed to the `selectId` implementation returned undefined.", "You should probably provide your own `selectId` implementation.", "The entity that was passed:", entity, "The `selectId` implementation:", selectId.toString());
1821 }
1822 return key;
1823 }
1824 function ensureEntitiesArray(entities) {
1825 if (!Array.isArray(entities)) {
1826 entities = Object.values(entities);
1827 }
1828 return entities;
1829 }
1830 function splitAddedUpdatedEntities(newEntities, selectId, state) {
1831 newEntities = ensureEntitiesArray(newEntities);
1832 var added = [];
1833 var updated = [];
1834 for (var _c = 0, newEntities_1 = newEntities; _c < newEntities_1.length; _c++) {
1835 var entity = newEntities_1[_c];
1836 var id = selectIdValue(entity, selectId);
1837 if (id in state.entities) {
1838 updated.push({ id: id, changes: entity });
1839 }
1840 else {
1841 added.push(entity);
1842 }
1843 }
1844 return [added, updated];
1845 }
1846 // src/entities/unsorted_state_adapter.ts
1847 function createUnsortedStateAdapter(selectId) {
1848 function addOneMutably(entity, state) {
1849 var key = selectIdValue(entity, selectId);
1850 if (key in state.entities) {
1851 return;
1852 }
1853 state.ids.push(key);
1854 state.entities[key] = entity;
1855 }
1856 function addManyMutably(newEntities, state) {
1857 newEntities = ensureEntitiesArray(newEntities);
1858 for (var _c = 0, newEntities_2 = newEntities; _c < newEntities_2.length; _c++) {
1859 var entity = newEntities_2[_c];
1860 addOneMutably(entity, state);
1861 }
1862 }
1863 function setOneMutably(entity, state) {
1864 var key = selectIdValue(entity, selectId);
1865 if (!(key in state.entities)) {
1866 state.ids.push(key);
1867 }
1868 state.entities[key] = entity;
1869 }
1870 function setManyMutably(newEntities, state) {
1871 newEntities = ensureEntitiesArray(newEntities);
1872 for (var _c = 0, newEntities_3 = newEntities; _c < newEntities_3.length; _c++) {
1873 var entity = newEntities_3[_c];
1874 setOneMutably(entity, state);
1875 }
1876 }
1877 function setAllMutably(newEntities, state) {
1878 newEntities = ensureEntitiesArray(newEntities);
1879 state.ids = [];
1880 state.entities = {};
1881 addManyMutably(newEntities, state);
1882 }
1883 function removeOneMutably(key, state) {
1884 return removeManyMutably([key], state);
1885 }
1886 function removeManyMutably(keys, state) {
1887 var didMutate = false;
1888 keys.forEach(function (key) {
1889 if (key in state.entities) {
1890 delete state.entities[key];
1891 didMutate = true;
1892 }
1893 });
1894 if (didMutate) {
1895 state.ids = state.ids.filter(function (id) { return id in state.entities; });
1896 }
1897 }
1898 function removeAllMutably(state) {
1899 Object.assign(state, {
1900 ids: [],
1901 entities: {}
1902 });
1903 }
1904 function takeNewKey(keys, update, state) {
1905 var original = state.entities[update.id];
1906 var updated = Object.assign({}, original, update.changes);
1907 var newKey = selectIdValue(updated, selectId);
1908 var hasNewKey = newKey !== update.id;
1909 if (hasNewKey) {
1910 keys[update.id] = newKey;
1911 delete state.entities[update.id];
1912 }
1913 state.entities[newKey] = updated;
1914 return hasNewKey;
1915 }
1916 function updateOneMutably(update, state) {
1917 return updateManyMutably([update], state);
1918 }
1919 function updateManyMutably(updates, state) {
1920 var newKeys = {};
1921 var updatesPerEntity = {};
1922 updates.forEach(function (update) {
1923 if (update.id in state.entities) {
1924 updatesPerEntity[update.id] = {
1925 id: update.id,
1926 changes: __spreadValues(__spreadValues({}, updatesPerEntity[update.id] ? updatesPerEntity[update.id].changes : null), update.changes)
1927 };
1928 }
1929 });
1930 updates = Object.values(updatesPerEntity);
1931 var didMutateEntities = updates.length > 0;
1932 if (didMutateEntities) {
1933 var didMutateIds = updates.filter(function (update) { return takeNewKey(newKeys, update, state); }).length > 0;
1934 if (didMutateIds) {
1935 state.ids = state.ids.map(function (id) { return newKeys[id] || id; });
1936 }
1937 }
1938 }
1939 function upsertOneMutably(entity, state) {
1940 return upsertManyMutably([entity], state);
1941 }
1942 function upsertManyMutably(newEntities, state) {
1943 var _c = splitAddedUpdatedEntities(newEntities, selectId, state), added = _c[0], updated = _c[1];
1944 updateManyMutably(updated, state);
1945 addManyMutably(added, state);
1946 }
1947 return {
1948 removeAll: createSingleArgumentStateOperator(removeAllMutably),
1949 addOne: createStateOperator(addOneMutably),
1950 addMany: createStateOperator(addManyMutably),
1951 setOne: createStateOperator(setOneMutably),
1952 setMany: createStateOperator(setManyMutably),
1953 setAll: createStateOperator(setAllMutably),
1954 updateOne: createStateOperator(updateOneMutably),
1955 updateMany: createStateOperator(updateManyMutably),
1956 upsertOne: createStateOperator(upsertOneMutably),
1957 upsertMany: createStateOperator(upsertManyMutably),
1958 removeOne: createStateOperator(removeOneMutably),
1959 removeMany: createStateOperator(removeManyMutably)
1960 };
1961 }
1962 // src/entities/sorted_state_adapter.ts
1963 function createSortedStateAdapter(selectId, sort) {
1964 var _c = createUnsortedStateAdapter(selectId), removeOne = _c.removeOne, removeMany = _c.removeMany, removeAll = _c.removeAll;
1965 function addOneMutably(entity, state) {
1966 return addManyMutably([entity], state);
1967 }
1968 function addManyMutably(newEntities, state) {
1969 newEntities = ensureEntitiesArray(newEntities);
1970 var models = newEntities.filter(function (model) { return !(selectIdValue(model, selectId) in state.entities); });
1971 if (models.length !== 0) {
1972 merge(models, state);
1973 }
1974 }
1975 function setOneMutably(entity, state) {
1976 return setManyMutably([entity], state);
1977 }
1978 function setManyMutably(newEntities, state) {
1979 newEntities = ensureEntitiesArray(newEntities);
1980 if (newEntities.length !== 0) {
1981 merge(newEntities, state);
1982 }
1983 }
1984 function setAllMutably(newEntities, state) {
1985 newEntities = ensureEntitiesArray(newEntities);
1986 state.entities = {};
1987 state.ids = [];
1988 addManyMutably(newEntities, state);
1989 }
1990 function updateOneMutably(update, state) {
1991 return updateManyMutably([update], state);
1992 }
1993 function updateManyMutably(updates, state) {
1994 var appliedUpdates = false;
1995 for (var _c = 0, updates_1 = updates; _c < updates_1.length; _c++) {
1996 var update = updates_1[_c];
1997 var entity = state.entities[update.id];
1998 if (!entity) {
1999 continue;
2000 }
2001 appliedUpdates = true;
2002 Object.assign(entity, update.changes);
2003 var newId = selectId(entity);
2004 if (update.id !== newId) {
2005 delete state.entities[update.id];
2006 state.entities[newId] = entity;
2007 }
2008 }
2009 if (appliedUpdates) {
2010 resortEntities(state);
2011 }
2012 }
2013 function upsertOneMutably(entity, state) {
2014 return upsertManyMutably([entity], state);
2015 }
2016 function upsertManyMutably(newEntities, state) {
2017 var _c = splitAddedUpdatedEntities(newEntities, selectId, state), added = _c[0], updated = _c[1];
2018 updateManyMutably(updated, state);
2019 addManyMutably(added, state);
2020 }
2021 function areArraysEqual(a2, b2) {
2022 if (a2.length !== b2.length) {
2023 return false;
2024 }
2025 for (var i2 = 0; i2 < a2.length && i2 < b2.length; i2++) {
2026 if (a2[i2] === b2[i2]) {
2027 continue;
2028 }
2029 return false;
2030 }
2031 return true;
2032 }
2033 function merge(models, state) {
2034 models.forEach(function (model) {
2035 state.entities[selectId(model)] = model;
2036 });
2037 resortEntities(state);
2038 }
2039 function resortEntities(state) {
2040 var allEntities = Object.values(state.entities);
2041 allEntities.sort(sort);
2042 var newSortedIds = allEntities.map(selectId);
2043 var ids = state.ids;
2044 if (!areArraysEqual(ids, newSortedIds)) {
2045 state.ids = newSortedIds;
2046 }
2047 }
2048 return {
2049 removeOne: removeOne,
2050 removeMany: removeMany,
2051 removeAll: removeAll,
2052 addOne: createStateOperator(addOneMutably),
2053 updateOne: createStateOperator(updateOneMutably),
2054 upsertOne: createStateOperator(upsertOneMutably),
2055 setOne: createStateOperator(setOneMutably),
2056 setMany: createStateOperator(setManyMutably),
2057 setAll: createStateOperator(setAllMutably),
2058 addMany: createStateOperator(addManyMutably),
2059 updateMany: createStateOperator(updateManyMutably),
2060 upsertMany: createStateOperator(upsertManyMutably)
2061 };
2062 }
2063 // src/entities/create_adapter.ts
2064 function createEntityAdapter(options) {
2065 if (options === void 0) { options = {}; }
2066 var _c = __spreadValues({
2067 sortComparer: false,
2068 selectId: function (instance) { return instance.id; }
2069 }, options), selectId = _c.selectId, sortComparer = _c.sortComparer;
2070 var stateFactory = createInitialStateFactory();
2071 var selectorsFactory = createSelectorsFactory();
2072 var stateAdapter = sortComparer ? createSortedStateAdapter(selectId, sortComparer) : createUnsortedStateAdapter(selectId);
2073 return __spreadValues(__spreadValues(__spreadValues({
2074 selectId: selectId,
2075 sortComparer: sortComparer
2076 }, stateFactory), selectorsFactory), stateAdapter);
2077 }
2078 // src/nanoid.ts
2079 var urlAlphabet = "ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW";
2080 var nanoid = function (size) {
2081 if (size === void 0) { size = 21; }
2082 var id = "";
2083 var i2 = size;
2084 while (i2--) {
2085 id += urlAlphabet[Math.random() * 64 | 0];
2086 }
2087 return id;
2088 };
2089 // src/createAsyncThunk.ts
2090 var commonProperties = [
2091 "name",
2092 "message",
2093 "stack",
2094 "code"
2095 ];
2096 var RejectWithValue = /** @class */ (function () {
2097 function RejectWithValue(payload, meta) {
2098 this.payload = payload;
2099 this.meta = meta;
2100 }
2101 return RejectWithValue;
2102 }());
2103 var FulfillWithMeta = /** @class */ (function () {
2104 function FulfillWithMeta(payload, meta) {
2105 this.payload = payload;
2106 this.meta = meta;
2107 }
2108 return FulfillWithMeta;
2109 }());
2110 var miniSerializeError = function (value) {
2111 if (typeof value === "object" && value !== null) {
2112 var simpleError = {};
2113 for (var _c = 0, commonProperties_1 = commonProperties; _c < commonProperties_1.length; _c++) {
2114 var property = commonProperties_1[_c];
2115 if (typeof value[property] === "string") {
2116 simpleError[property] = value[property];
2117 }
2118 }
2119 return simpleError;
2120 }
2121 return { message: String(value) };
2122 };
2123 function createAsyncThunk(typePrefix, payloadCreator, options) {
2124 var fulfilled = createAction(typePrefix + "/fulfilled", function (payload, requestId, arg, meta) { return ({
2125 payload: payload,
2126 meta: __spreadProps(__spreadValues({}, meta || {}), {
2127 arg: arg,
2128 requestId: requestId,
2129 requestStatus: "fulfilled"
2130 })
2131 }); });
2132 var pending = createAction(typePrefix + "/pending", function (requestId, arg, meta) { return ({
2133 payload: void 0,
2134 meta: __spreadProps(__spreadValues({}, meta || {}), {
2135 arg: arg,
2136 requestId: requestId,
2137 requestStatus: "pending"
2138 })
2139 }); });
2140 var rejected = createAction(typePrefix + "/rejected", function (error, requestId, arg, payload, meta) { return ({
2141 payload: payload,
2142 error: (options && options.serializeError || miniSerializeError)(error || "Rejected"),
2143 meta: __spreadProps(__spreadValues({}, meta || {}), {
2144 arg: arg,
2145 requestId: requestId,
2146 rejectedWithValue: !!payload,
2147 requestStatus: "rejected",
2148 aborted: (error == null ? void 0 : error.name) === "AbortError",
2149 condition: (error == null ? void 0 : error.name) === "ConditionError"
2150 })
2151 }); });
2152 var displayedWarning = false;
2153 var AC = typeof AbortController !== "undefined" ? AbortController : /** @class */ (function () {
2154 function class_1() {
2155 this.signal = {
2156 aborted: false,
2157 addEventListener: function () {
2158 },
2159 dispatchEvent: function () {
2160 return false;
2161 },
2162 onabort: function () {
2163 },
2164 removeEventListener: function () {
2165 },
2166 reason: void 0,
2167 throwIfAborted: function () {
2168 }
2169 };
2170 }
2171 class_1.prototype.abort = function () {
2172 {
2173 if (!displayedWarning) {
2174 displayedWarning = true;
2175 console.info("This platform does not implement AbortController. \nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.");
2176 }
2177 }
2178 };
2179 return class_1;
2180 }());
2181 function actionCreator(arg) {
2182 return function (dispatch, getState, extra) {
2183 var requestId = (options == null ? void 0 : options.idGenerator) ? options.idGenerator(arg) : nanoid();
2184 var abortController = new AC();
2185 var abortReason;
2186 var abortedPromise = new Promise(function (_2, reject) { return abortController.signal.addEventListener("abort", function () { return reject({ name: "AbortError", message: abortReason || "Aborted" }); }); });
2187 var started = false;
2188 function abort(reason) {
2189 if (started) {
2190 abortReason = reason;
2191 abortController.abort();
2192 }
2193 }
2194 var promise = function () {
2195 return __async(this, null, function () {
2196 var _a, _b, finalAction, conditionResult, err_1, skipDispatch;
2197 return __generator(this, function (_c) {
2198 switch (_c.label) {
2199 case 0:
2200 _c.trys.push([0, 4, , 5]);
2201 conditionResult = (_a = options == null ? void 0 : options.condition) == null ? void 0 : _a.call(options, arg, { getState: getState, extra: extra });
2202 if (!isThenable(conditionResult)) return [3 /*break*/, 2];
2203 return [4 /*yield*/, conditionResult];
2204 case 1:
2205 conditionResult = _c.sent();
2206 _c.label = 2;
2207 case 2:
2208 if (conditionResult === false) {
2209 throw {
2210 name: "ConditionError",
2211 message: "Aborted due to condition callback returning false."
2212 };
2213 }
2214 started = true;
2215 dispatch(pending(requestId, arg, (_b = options == null ? void 0 : options.getPendingMeta) == null ? void 0 : _b.call(options, { requestId: requestId, arg: arg }, { getState: getState, extra: extra })));
2216 return [4 /*yield*/, Promise.race([
2217 abortedPromise,
2218 Promise.resolve(payloadCreator(arg, {
2219 dispatch: dispatch,
2220 getState: getState,
2221 extra: extra,
2222 requestId: requestId,
2223 signal: abortController.signal,
2224 rejectWithValue: function (value, meta) {
2225 return new RejectWithValue(value, meta);
2226 },
2227 fulfillWithValue: function (value, meta) {
2228 return new FulfillWithMeta(value, meta);
2229 }
2230 })).then(function (result) {
2231 if (result instanceof RejectWithValue) {
2232 throw result;
2233 }
2234 if (result instanceof FulfillWithMeta) {
2235 return fulfilled(result.payload, requestId, arg, result.meta);
2236 }
2237 return fulfilled(result, requestId, arg);
2238 })
2239 ])];
2240 case 3:
2241 finalAction = _c.sent();
2242 return [3 /*break*/, 5];
2243 case 4:
2244 err_1 = _c.sent();
2245 finalAction = err_1 instanceof RejectWithValue ? rejected(null, requestId, arg, err_1.payload, err_1.meta) : rejected(err_1, requestId, arg);
2246 return [3 /*break*/, 5];
2247 case 5:
2248 skipDispatch = options && !options.dispatchConditionRejection && rejected.match(finalAction) && finalAction.meta.condition;
2249 if (!skipDispatch) {
2250 dispatch(finalAction);
2251 }
2252 return [2 /*return*/, finalAction];
2253 }
2254 });
2255 });
2256 }();
2257 return Object.assign(promise, {
2258 abort: abort,
2259 requestId: requestId,
2260 arg: arg,
2261 unwrap: function () {
2262 return promise.then(unwrapResult);
2263 }
2264 });
2265 };
2266 }
2267 return Object.assign(actionCreator, {
2268 pending: pending,
2269 rejected: rejected,
2270 fulfilled: fulfilled,
2271 typePrefix: typePrefix
2272 });
2273 }
2274 function unwrapResult(action) {
2275 if (action.meta && action.meta.rejectedWithValue) {
2276 throw action.payload;
2277 }
2278 if (action.error) {
2279 throw action.error;
2280 }
2281 return action.payload;
2282 }
2283 function isThenable(value) {
2284 return value !== null && typeof value === "object" && typeof value.then === "function";
2285 }
2286 // src/tsHelpers.ts
2287 var hasMatchFunction = function (v2) {
2288 return v2 && typeof v2.match === "function";
2289 };
2290 // src/matchers.ts
2291 var matches = function (matcher, action) {
2292 if (hasMatchFunction(matcher)) {
2293 return matcher.match(action);
2294 }
2295 else {
2296 return matcher(action);
2297 }
2298 };
2299 function isAnyOf() {
2300 var matchers = [];
2301 for (var _c = 0; _c < arguments.length; _c++) {
2302 matchers[_c] = arguments[_c];
2303 }
2304 return function (action) {
2305 return matchers.some(function (matcher) { return matches(matcher, action); });
2306 };
2307 }
2308 function isAllOf() {
2309 var matchers = [];
2310 for (var _c = 0; _c < arguments.length; _c++) {
2311 matchers[_c] = arguments[_c];
2312 }
2313 return function (action) {
2314 return matchers.every(function (matcher) { return matches(matcher, action); });
2315 };
2316 }
2317 function hasExpectedRequestMetadata(action, validStatus) {
2318 if (!action || !action.meta)
2319 return false;
2320 var hasValidRequestId = typeof action.meta.requestId === "string";
2321 var hasValidRequestStatus = validStatus.indexOf(action.meta.requestStatus) > -1;
2322 return hasValidRequestId && hasValidRequestStatus;
2323 }
2324 function isAsyncThunkArray(a2) {
2325 return typeof a2[0] === "function" && "pending" in a2[0] && "fulfilled" in a2[0] && "rejected" in a2[0];
2326 }
2327 function isPending() {
2328 var asyncThunks = [];
2329 for (var _c = 0; _c < arguments.length; _c++) {
2330 asyncThunks[_c] = arguments[_c];
2331 }
2332 if (asyncThunks.length === 0) {
2333 return function (action) { return hasExpectedRequestMetadata(action, ["pending"]); };
2334 }
2335 if (!isAsyncThunkArray(asyncThunks)) {
2336 return isPending()(asyncThunks[0]);
2337 }
2338 return function (action) {
2339 var matchers = asyncThunks.map(function (asyncThunk) { return asyncThunk.pending; });
2340 var combinedMatcher = isAnyOf.apply(void 0, matchers);
2341 return combinedMatcher(action);
2342 };
2343 }
2344 function isRejected() {
2345 var asyncThunks = [];
2346 for (var _c = 0; _c < arguments.length; _c++) {
2347 asyncThunks[_c] = arguments[_c];
2348 }
2349 if (asyncThunks.length === 0) {
2350 return function (action) { return hasExpectedRequestMetadata(action, ["rejected"]); };
2351 }
2352 if (!isAsyncThunkArray(asyncThunks)) {
2353 return isRejected()(asyncThunks[0]);
2354 }
2355 return function (action) {
2356 var matchers = asyncThunks.map(function (asyncThunk) { return asyncThunk.rejected; });
2357 var combinedMatcher = isAnyOf.apply(void 0, matchers);
2358 return combinedMatcher(action);
2359 };
2360 }
2361 function isRejectedWithValue() {
2362 var asyncThunks = [];
2363 for (var _c = 0; _c < arguments.length; _c++) {
2364 asyncThunks[_c] = arguments[_c];
2365 }
2366 var hasFlag = function (action) {
2367 return action && action.meta && action.meta.rejectedWithValue;
2368 };
2369 if (asyncThunks.length === 0) {
2370 return function (action) {
2371 var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);
2372 return combinedMatcher(action);
2373 };
2374 }
2375 if (!isAsyncThunkArray(asyncThunks)) {
2376 return isRejectedWithValue()(asyncThunks[0]);
2377 }
2378 return function (action) {
2379 var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);
2380 return combinedMatcher(action);
2381 };
2382 }
2383 function isFulfilled() {
2384 var asyncThunks = [];
2385 for (var _c = 0; _c < arguments.length; _c++) {
2386 asyncThunks[_c] = arguments[_c];
2387 }
2388 if (asyncThunks.length === 0) {
2389 return function (action) { return hasExpectedRequestMetadata(action, ["fulfilled"]); };
2390 }
2391 if (!isAsyncThunkArray(asyncThunks)) {
2392 return isFulfilled()(asyncThunks[0]);
2393 }
2394 return function (action) {
2395 var matchers = asyncThunks.map(function (asyncThunk) { return asyncThunk.fulfilled; });
2396 var combinedMatcher = isAnyOf.apply(void 0, matchers);
2397 return combinedMatcher(action);
2398 };
2399 }
2400 function isAsyncThunkAction() {
2401 var asyncThunks = [];
2402 for (var _c = 0; _c < arguments.length; _c++) {
2403 asyncThunks[_c] = arguments[_c];
2404 }
2405 if (asyncThunks.length === 0) {
2406 return function (action) { return hasExpectedRequestMetadata(action, ["pending", "fulfilled", "rejected"]); };
2407 }
2408 if (!isAsyncThunkArray(asyncThunks)) {
2409 return isAsyncThunkAction()(asyncThunks[0]);
2410 }
2411 return function (action) {
2412 var matchers = [];
2413 for (var _c = 0, asyncThunks_1 = asyncThunks; _c < asyncThunks_1.length; _c++) {
2414 var asyncThunk = asyncThunks_1[_c];
2415 matchers.push(asyncThunk.pending, asyncThunk.rejected, asyncThunk.fulfilled);
2416 }
2417 var combinedMatcher = isAnyOf.apply(void 0, matchers);
2418 return combinedMatcher(action);
2419 };
2420 }
2421 // src/listenerMiddleware/utils.ts
2422 var assertFunction = function (func, expected) {
2423 if (typeof func !== "function") {
2424 throw new TypeError(expected + " is not a function");
2425 }
2426 };
2427 var noop = function () {
2428 };
2429 var catchRejection = function (promise, onError) {
2430 if (onError === void 0) { onError = noop; }
2431 promise.catch(onError);
2432 return promise;
2433 };
2434 var addAbortSignalListener = function (abortSignal, callback) {
2435 abortSignal.addEventListener("abort", callback, { once: true });
2436 };
2437 var abortControllerWithReason = function (abortController, reason) {
2438 var signal = abortController.signal;
2439 if (signal.aborted) {
2440 return;
2441 }
2442 if (!("reason" in signal)) {
2443 Object.defineProperty(signal, "reason", {
2444 enumerable: true,
2445 value: reason,
2446 configurable: true,
2447 writable: true
2448 });
2449 }
2450 abortController.abort(reason);
2451 };
2452 // src/listenerMiddleware/exceptions.ts
2453 var task = "task";
2454 var listener = "listener";
2455 var completed = "completed";
2456 var cancelled = "cancelled";
2457 var taskCancelled = "task-" + cancelled;
2458 var taskCompleted = "task-" + completed;
2459 var listenerCancelled = listener + "-" + cancelled;
2460 var listenerCompleted = listener + "-" + completed;
2461 var TaskAbortError = /** @class */ (function () {
2462 function TaskAbortError(code) {
2463 this.code = code;
2464 this.name = "TaskAbortError";
2465 this.message = task + " " + cancelled + " (reason: " + code + ")";
2466 }
2467 return TaskAbortError;
2468 }());
2469 // src/listenerMiddleware/task.ts
2470 var validateActive = function (signal) {
2471 if (signal.aborted) {
2472 throw new TaskAbortError(signal.reason);
2473 }
2474 };
2475 var promisifyAbortSignal = function (signal) {
2476 return catchRejection(new Promise(function (_2, reject) {
2477 var notifyRejection = function () { return reject(new TaskAbortError(signal.reason)); };
2478 if (signal.aborted) {
2479 notifyRejection();
2480 }
2481 else {
2482 addAbortSignalListener(signal, notifyRejection);
2483 }
2484 }));
2485 };
2486 var runTask = function (task2, cleanUp) { return __async(void 0, null, function () {
2487 var value, error_1;
2488 return __generator(this, function (_c) {
2489 switch (_c.label) {
2490 case 0:
2491 _c.trys.push([0, 3, 4, 5]);
2492 return [4 /*yield*/, Promise.resolve()];
2493 case 1:
2494 _c.sent();
2495 return [4 /*yield*/, task2()];
2496 case 2:
2497 value = _c.sent();
2498 return [2 /*return*/, {
2499 status: "ok",
2500 value: value
2501 }];
2502 case 3:
2503 error_1 = _c.sent();
2504 return [2 /*return*/, {
2505 status: error_1 instanceof TaskAbortError ? "cancelled" : "rejected",
2506 error: error_1
2507 }];
2508 case 4:
2509 cleanUp == null ? void 0 : cleanUp();
2510 return [7 /*endfinally*/];
2511 case 5: return [2 /*return*/];
2512 }
2513 });
2514 }); };
2515 var createPause = function (signal) {
2516 return function (promise) {
2517 return catchRejection(Promise.race([promisifyAbortSignal(signal), promise]).then(function (output) {
2518 validateActive(signal);
2519 return output;
2520 }));
2521 };
2522 };
2523 var createDelay = function (signal) {
2524 var pause = createPause(signal);
2525 return function (timeoutMs) {
2526 return pause(new Promise(function (resolve) { return setTimeout(resolve, timeoutMs); }));
2527 };
2528 };
2529 // src/listenerMiddleware/index.ts
2530 var assign = Object.assign;
2531 var INTERNAL_NIL_TOKEN = {};
2532 var alm = "listenerMiddleware";
2533 var createFork = function (parentAbortSignal) {
2534 var linkControllers = function (controller) { return addAbortSignalListener(parentAbortSignal, function () { return abortControllerWithReason(controller, parentAbortSignal.reason); }); };
2535 return function (taskExecutor) {
2536 assertFunction(taskExecutor, "taskExecutor");
2537 var childAbortController = new AbortController();
2538 linkControllers(childAbortController);
2539 var result = runTask(function () { return __async(void 0, null, function () {
2540 var result2;
2541 return __generator(this, function (_c) {
2542 switch (_c.label) {
2543 case 0:
2544 validateActive(parentAbortSignal);
2545 validateActive(childAbortController.signal);
2546 return [4 /*yield*/, taskExecutor({
2547 pause: createPause(childAbortController.signal),
2548 delay: createDelay(childAbortController.signal),
2549 signal: childAbortController.signal
2550 })];
2551 case 1:
2552 result2 = _c.sent();
2553 validateActive(childAbortController.signal);
2554 return [2 /*return*/, result2];
2555 }
2556 });
2557 }); }, function () { return abortControllerWithReason(childAbortController, taskCompleted); });
2558 return {
2559 result: createPause(parentAbortSignal)(result),
2560 cancel: function () {
2561 abortControllerWithReason(childAbortController, taskCancelled);
2562 }
2563 };
2564 };
2565 };
2566 var createTakePattern = function (startListening, signal) {
2567 var take = function (predicate, timeout) { return __async(void 0, null, function () {
2568 var unsubscribe, tuplePromise, promises, output;
2569 return __generator(this, function (_c) {
2570 switch (_c.label) {
2571 case 0:
2572 validateActive(signal);
2573 unsubscribe = function () {
2574 };
2575 tuplePromise = new Promise(function (resolve) {
2576 unsubscribe = startListening({
2577 predicate: predicate,
2578 effect: function (action, listenerApi) {
2579 listenerApi.unsubscribe();
2580 resolve([
2581 action,
2582 listenerApi.getState(),
2583 listenerApi.getOriginalState()
2584 ]);
2585 }
2586 });
2587 });
2588 promises = [
2589 promisifyAbortSignal(signal),
2590 tuplePromise
2591 ];
2592 if (timeout != null) {
2593 promises.push(new Promise(function (resolve) { return setTimeout(resolve, timeout, null); }));
2594 }
2595 _c.label = 1;
2596 case 1:
2597 _c.trys.push([1, , 3, 4]);
2598 return [4 /*yield*/, Promise.race(promises)];
2599 case 2:
2600 output = _c.sent();
2601 validateActive(signal);
2602 return [2 /*return*/, output];
2603 case 3:
2604 unsubscribe();
2605 return [7 /*endfinally*/];
2606 case 4: return [2 /*return*/];
2607 }
2608 });
2609 }); };
2610 return function (predicate, timeout) { return catchRejection(take(predicate, timeout)); };
2611 };
2612 var getListenerEntryPropsFrom = function (options) {
2613 var type = options.type, actionCreator = options.actionCreator, matcher = options.matcher, predicate = options.predicate, effect = options.effect;
2614 if (type) {
2615 predicate = createAction(type).match;
2616 }
2617 else if (actionCreator) {
2618 type = actionCreator.type;
2619 predicate = actionCreator.match;
2620 }
2621 else if (matcher) {
2622 predicate = matcher;
2623 }
2624 else if (predicate) ;
2625 else {
2626 throw new Error("Creating or removing a listener requires one of the known fields for matching an action");
2627 }
2628 assertFunction(effect, "options.listener");
2629 return { predicate: predicate, type: type, effect: effect };
2630 };
2631 var createListenerEntry = function (options) {
2632 var _c = getListenerEntryPropsFrom(options), type = _c.type, predicate = _c.predicate, effect = _c.effect;
2633 var id = nanoid();
2634 var entry = {
2635 id: id,
2636 effect: effect,
2637 type: type,
2638 predicate: predicate,
2639 pending: new Set(),
2640 unsubscribe: function () {
2641 throw new Error("Unsubscribe not initialized");
2642 }
2643 };
2644 return entry;
2645 };
2646 var createClearListenerMiddleware = function (listenerMap) {
2647 return function () {
2648 listenerMap.forEach(cancelActiveListeners);
2649 listenerMap.clear();
2650 };
2651 };
2652 var safelyNotifyError = function (errorHandler, errorToNotify, errorInfo) {
2653 try {
2654 errorHandler(errorToNotify, errorInfo);
2655 }
2656 catch (errorHandlerError) {
2657 setTimeout(function () {
2658 throw errorHandlerError;
2659 }, 0);
2660 }
2661 };
2662 var addListener = createAction(alm + "/add");
2663 var clearAllListeners = createAction(alm + "/removeAll");
2664 var removeListener = createAction(alm + "/remove");
2665 var defaultErrorHandler = function () {
2666 var args = [];
2667 for (var _c = 0; _c < arguments.length; _c++) {
2668 args[_c] = arguments[_c];
2669 }
2670 console.error.apply(console, __spreadArray([alm + "/error"], args));
2671 };
2672 var cancelActiveListeners = function (entry) {
2673 entry.pending.forEach(function (controller) {
2674 abortControllerWithReason(controller, listenerCancelled);
2675 });
2676 };
2677 function createListenerMiddleware(middlewareOptions) {
2678 var _this = this;
2679 if (middlewareOptions === void 0) { middlewareOptions = {}; }
2680 var listenerMap = new Map();
2681 var extra = middlewareOptions.extra, _c = middlewareOptions.onError, onError = _c === void 0 ? defaultErrorHandler : _c;
2682 assertFunction(onError, "onError");
2683 var insertEntry = function (entry) {
2684 entry.unsubscribe = function () { return listenerMap.delete(entry.id); };
2685 listenerMap.set(entry.id, entry);
2686 return function (cancelOptions) {
2687 entry.unsubscribe();
2688 if (cancelOptions == null ? void 0 : cancelOptions.cancelActive) {
2689 cancelActiveListeners(entry);
2690 }
2691 };
2692 };
2693 var findListenerEntry = function (comparator) {
2694 for (var _c = 0, _d = Array.from(listenerMap.values()); _c < _d.length; _c++) {
2695 var entry = _d[_c];
2696 if (comparator(entry)) {
2697 return entry;
2698 }
2699 }
2700 return void 0;
2701 };
2702 var startListening = function (options) {
2703 var entry = findListenerEntry(function (existingEntry) { return existingEntry.effect === options.effect; });
2704 if (!entry) {
2705 entry = createListenerEntry(options);
2706 }
2707 return insertEntry(entry);
2708 };
2709 var stopListening = function (options) {
2710 var _c = getListenerEntryPropsFrom(options), type = _c.type, effect = _c.effect, predicate = _c.predicate;
2711 var entry = findListenerEntry(function (entry2) {
2712 var matchPredicateOrType = typeof type === "string" ? entry2.type === type : entry2.predicate === predicate;
2713 return matchPredicateOrType && entry2.effect === effect;
2714 });
2715 if (entry) {
2716 entry.unsubscribe();
2717 if (options.cancelActive) {
2718 cancelActiveListeners(entry);
2719 }
2720 }
2721 return !!entry;
2722 };
2723 var notifyListener = function (entry, action, api, getOriginalState) { return __async(_this, null, function () {
2724 var internalTaskController, take, listenerError_1;
2725 return __generator(this, function (_c) {
2726 switch (_c.label) {
2727 case 0:
2728 internalTaskController = new AbortController();
2729 take = createTakePattern(startListening, internalTaskController.signal);
2730 _c.label = 1;
2731 case 1:
2732 _c.trys.push([1, 3, 4, 5]);
2733 entry.pending.add(internalTaskController);
2734 return [4 /*yield*/, Promise.resolve(entry.effect(action, assign({}, api, {
2735 getOriginalState: getOriginalState,
2736 condition: function (predicate, timeout) { return take(predicate, timeout).then(Boolean); },
2737 take: take,
2738 delay: createDelay(internalTaskController.signal),
2739 pause: createPause(internalTaskController.signal),
2740 extra: extra,
2741 signal: internalTaskController.signal,
2742 fork: createFork(internalTaskController.signal),
2743 unsubscribe: entry.unsubscribe,
2744 subscribe: function () {
2745 listenerMap.set(entry.id, entry);
2746 },
2747 cancelActiveListeners: function () {
2748 entry.pending.forEach(function (controller, _2, set) {
2749 if (controller !== internalTaskController) {
2750 abortControllerWithReason(controller, listenerCancelled);
2751 set.delete(controller);
2752 }
2753 });
2754 }
2755 })))];
2756 case 2:
2757 _c.sent();
2758 return [3 /*break*/, 5];
2759 case 3:
2760 listenerError_1 = _c.sent();
2761 if (!(listenerError_1 instanceof TaskAbortError)) {
2762 safelyNotifyError(onError, listenerError_1, {
2763 raisedBy: "effect"
2764 });
2765 }
2766 return [3 /*break*/, 5];
2767 case 4:
2768 abortControllerWithReason(internalTaskController, listenerCompleted);
2769 entry.pending.delete(internalTaskController);
2770 return [7 /*endfinally*/];
2771 case 5: return [2 /*return*/];
2772 }
2773 });
2774 }); };
2775 var clearListenerMiddleware = createClearListenerMiddleware(listenerMap);
2776 var middleware = function (api) { return function (next) { return function (action) {
2777 if (addListener.match(action)) {
2778 return startListening(action.payload);
2779 }
2780 if (clearAllListeners.match(action)) {
2781 clearListenerMiddleware();
2782 return;
2783 }
2784 if (removeListener.match(action)) {
2785 return stopListening(action.payload);
2786 }
2787 var originalState = api.getState();
2788 var getOriginalState = function () {
2789 if (originalState === INTERNAL_NIL_TOKEN) {
2790 throw new Error(alm + ": getOriginalState can only be called synchronously");
2791 }
2792 return originalState;
2793 };
2794 var result;
2795 try {
2796 result = next(action);
2797 if (listenerMap.size > 0) {
2798 var currentState = api.getState();
2799 var listenerEntries = Array.from(listenerMap.values());
2800 for (var _c = 0, listenerEntries_1 = listenerEntries; _c < listenerEntries_1.length; _c++) {
2801 var entry = listenerEntries_1[_c];
2802 var runListener = false;
2803 try {
2804 runListener = entry.predicate(action, currentState, originalState);
2805 }
2806 catch (predicateError) {
2807 runListener = false;
2808 safelyNotifyError(onError, predicateError, {
2809 raisedBy: "predicate"
2810 });
2811 }
2812 if (!runListener) {
2813 continue;
2814 }
2815 notifyListener(entry, action, api, getOriginalState);
2816 }
2817 }
2818 }
2819 finally {
2820 originalState = INTERNAL_NIL_TOKEN;
2821 }
2822 return result;
2823 }; }; };
2824 return {
2825 middleware: middleware,
2826 startListening: startListening,
2827 stopListening: stopListening,
2828 clearListeners: clearListenerMiddleware
2829 };
2830 }
2831 // src/index.ts
2832 N();
2833
2834 exports.MiddlewareArray = MiddlewareArray;
2835 exports.TaskAbortError = TaskAbortError;
2836 exports.__DO_NOT_USE__ActionTypes = ActionTypes;
2837 exports.addListener = addListener;
2838 exports.applyMiddleware = applyMiddleware;
2839 exports.bindActionCreators = bindActionCreators;
2840 exports.clearAllListeners = clearAllListeners;
2841 exports.combineReducers = combineReducers;
2842 exports.compose = compose;
2843 exports.configureStore = configureStore;
2844 exports.createAction = createAction;
2845 exports.createAsyncThunk = createAsyncThunk;
2846 exports.createDraftSafeSelector = createDraftSafeSelector;
2847 exports.createEntityAdapter = createEntityAdapter;
2848 exports.createImmutableStateInvariantMiddleware = createImmutableStateInvariantMiddleware;
2849 exports.createListenerMiddleware = createListenerMiddleware;
2850 exports.createNextState = immer_esm_default;
2851 exports.createReducer = createReducer;
2852 exports.createSelector = createSelector;
2853 exports.createSerializableStateInvariantMiddleware = createSerializableStateInvariantMiddleware;
2854 exports.createSlice = createSlice;
2855 exports.createStore = createStore;
2856 exports.current = D;
2857 exports.findNonSerializableValue = findNonSerializableValue;
2858 exports.freeze = d;
2859 exports.getDefaultMiddleware = getDefaultMiddleware;
2860 exports.getType = getType;
2861 exports.isAllOf = isAllOf;
2862 exports.isAnyOf = isAnyOf;
2863 exports.isAsyncThunkAction = isAsyncThunkAction;
2864 exports.isDraft = t;
2865 exports.isFulfilled = isFulfilled;
2866 exports.isImmutableDefault = isImmutableDefault;
2867 exports.isPending = isPending;
2868 exports.isPlain = isPlain;
2869 exports.isPlainObject = isPlainObject2;
2870 exports.isRejected = isRejected;
2871 exports.isRejectedWithValue = isRejectedWithValue;
2872 exports.miniSerializeError = miniSerializeError;
2873 exports.nanoid = nanoid;
2874 exports.original = e;
2875 exports.removeListener = removeListener;
2876 exports.unwrapResult = unwrapResult;
2877
2878 Object.defineProperty(exports, '__esModule', { value: true });
2879
2880}));
2881//# sourceMappingURL=redux-toolkit.umd.js.map