todoApp/node_modules/.vite/deps/ra-data-local-forage.js

2757 lines
74 KiB
JavaScript

import {
require_localforage
} from "./chunk-CPGX2YFR.js";
import {
require_arrayMap,
require_baseUnset,
require_flatRest,
require_get,
require_isIndex,
require_isSymbol
} from "./chunk-ZPUNMYDO.js";
import {
__commonJS,
__toESM
} from "./chunk-SNAQBZPT.js";
// node_modules/lodash/_baseAt.js
var require_baseAt = __commonJS({
"node_modules/lodash/_baseAt.js"(exports, module) {
var get = require_get();
function baseAt(object, paths) {
var index = -1, length = paths.length, result = Array(length), skip = object == null;
while (++index < length) {
result[index] = skip ? void 0 : get(object, paths[index]);
}
return result;
}
module.exports = baseAt;
}
});
// node_modules/lodash/_basePullAt.js
var require_basePullAt = __commonJS({
"node_modules/lodash/_basePullAt.js"(exports, module) {
var baseUnset = require_baseUnset();
var isIndex = require_isIndex();
var arrayProto = Array.prototype;
var splice = arrayProto.splice;
function basePullAt(array, indexes) {
var length = array ? indexes.length : 0, lastIndex = length - 1;
while (length--) {
var index = indexes[length];
if (length == lastIndex || index !== previous) {
var previous = index;
if (isIndex(index)) {
splice.call(array, index, 1);
} else {
baseUnset(array, index);
}
}
}
return array;
}
module.exports = basePullAt;
}
});
// node_modules/lodash/_compareAscending.js
var require_compareAscending = __commonJS({
"node_modules/lodash/_compareAscending.js"(exports, module) {
var isSymbol = require_isSymbol();
function compareAscending(value, other) {
if (value !== other) {
var valIsDefined = value !== void 0, valIsNull = value === null, valIsReflexive = value === value, valIsSymbol = isSymbol(value);
var othIsDefined = other !== void 0, othIsNull = other === null, othIsReflexive = other === other, othIsSymbol = isSymbol(other);
if (!othIsNull && !othIsSymbol && !valIsSymbol && value > other || valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol || valIsNull && othIsDefined && othIsReflexive || !valIsDefined && othIsReflexive || !valIsReflexive) {
return 1;
}
if (!valIsNull && !valIsSymbol && !othIsSymbol && value < other || othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol || othIsNull && valIsDefined && valIsReflexive || !othIsDefined && valIsReflexive || !othIsReflexive) {
return -1;
}
}
return 0;
}
module.exports = compareAscending;
}
});
// node_modules/lodash/pullAt.js
var require_pullAt = __commonJS({
"node_modules/lodash/pullAt.js"(exports, module) {
var arrayMap = require_arrayMap();
var baseAt = require_baseAt();
var basePullAt = require_basePullAt();
var compareAscending = require_compareAscending();
var flatRest = require_flatRest();
var isIndex = require_isIndex();
var pullAt2 = flatRest(function(array, indexes) {
var length = array == null ? 0 : array.length, result = baseAt(array, indexes);
basePullAt(array, arrayMap(indexes, function(index) {
return isIndex(index, length) ? +index : index;
}).sort(compareAscending));
return result;
});
module.exports = pullAt2;
}
});
// node_modules/fakerest/dist/fakerest.min.js
var Ht = Object.defineProperty;
var qt = (t, e, r) => e in t ? Ht(t, e, { enumerable: true, configurable: true, writable: true, value: r }) : t[e] = r;
var p = (t, e, r) => qt(t, typeof e != "symbol" ? e + "" : e, r);
var B = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
function oe(t) {
return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
}
var zt = Array.isArray;
var O = zt;
var Vt = typeof B == "object" && B && B.Object === Object && B;
var ut = Vt;
var Jt = ut;
var Qt = typeof self == "object" && self && self.Object === Object && self;
var Wt = Jt || Qt || Function("return this")();
var A = Wt;
var Yt = A;
var Xt = Yt.Symbol;
var L = Xt;
var we = L;
var ft = Object.prototype;
var Zt = ft.hasOwnProperty;
var kt = ft.toString;
var M = we ? we.toStringTag : void 0;
function er(t) {
var e = Zt.call(t, M), r = t[M];
try {
t[M] = void 0;
var a = true;
} catch {
}
var n = kt.call(t);
return a && (e ? t[M] = r : delete t[M]), n;
}
var tr = er;
var rr = Object.prototype;
var ar = rr.toString;
function nr(t) {
return ar.call(t);
}
var sr = nr;
var Te = L;
var ir = tr;
var or = sr;
var cr = "[object Null]";
var lr = "[object Undefined]";
var Oe = Te ? Te.toStringTag : void 0;
function ur(t) {
return t == null ? t === void 0 ? lr : cr : Oe && Oe in Object(t) ? ir(t) : or(t);
}
var R = ur;
function fr(t) {
return t != null && typeof t == "object";
}
var C = fr;
var dr = R;
var hr = C;
var gr = "[object Symbol]";
function pr(t) {
return typeof t == "symbol" || hr(t) && dr(t) == gr;
}
var ce = pr;
var yr = O;
var br = ce;
var vr = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/;
var $r = /^\w*$/;
function _r(t, e) {
if (yr(t))
return false;
var r = typeof t;
return r == "number" || r == "symbol" || r == "boolean" || t == null || br(t) ? true : $r.test(t) || !vr.test(t) || e != null && t in Object(e);
}
var mr = _r;
function Ar(t) {
var e = typeof t;
return t != null && (e == "object" || e == "function");
}
var E = Ar;
var wr = R;
var Tr = E;
var Or = "[object AsyncFunction]";
var Cr = "[object Function]";
var Sr = "[object GeneratorFunction]";
var Er = "[object Proxy]";
function jr(t) {
if (!Tr(t))
return false;
var e = wr(t);
return e == Cr || e == Sr || e == Or || e == Er;
}
var dt = jr;
var Ir = A;
var Pr = Ir["__core-js_shared__"];
var xr = Pr;
var k = xr;
var Ce = function() {
var t = /[^.]+$/.exec(k && k.keys && k.keys.IE_PROTO || "");
return t ? "Symbol(src)_1." + t : "";
}();
function Nr(t) {
return !!Ce && Ce in t;
}
var Mr = Nr;
var Lr = Function.prototype;
var Rr = Lr.toString;
function Dr(t) {
if (t != null) {
try {
return Rr.call(t);
} catch {
}
try {
return t + "";
} catch {
}
}
return "";
}
var ht = Dr;
var Fr = dt;
var Br = Mr;
var Ur = E;
var Gr = ht;
var Kr = /[\\^$.*+?()[\]{}|]/g;
var Hr = /^\[object .+?Constructor\]$/;
var qr = Function.prototype;
var zr = Object.prototype;
var Vr = qr.toString;
var Jr = zr.hasOwnProperty;
var Qr = RegExp(
"^" + Vr.call(Jr).replace(Kr, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
);
function Wr(t) {
if (!Ur(t) || Br(t))
return false;
var e = Fr(t) ? Qr : Hr;
return e.test(Gr(t));
}
var Yr = Wr;
function Xr(t, e) {
return t == null ? void 0 : t[e];
}
var Zr = Xr;
var kr = Yr;
var ea = Zr;
function ta(t, e) {
var r = ea(t, e);
return kr(r) ? r : void 0;
}
var S = ta;
var ra = S;
var aa = ra(Object, "create");
var V = aa;
var Se = V;
function na() {
this.__data__ = Se ? Se(null) : {}, this.size = 0;
}
var sa = na;
function ia(t) {
var e = this.has(t) && delete this.__data__[t];
return this.size -= e ? 1 : 0, e;
}
var oa = ia;
var ca = V;
var la = "__lodash_hash_undefined__";
var ua = Object.prototype;
var fa = ua.hasOwnProperty;
function da(t) {
var e = this.__data__;
if (ca) {
var r = e[t];
return r === la ? void 0 : r;
}
return fa.call(e, t) ? e[t] : void 0;
}
var ha = da;
var ga = V;
var pa = Object.prototype;
var ya = pa.hasOwnProperty;
function ba(t) {
var e = this.__data__;
return ga ? e[t] !== void 0 : ya.call(e, t);
}
var va = ba;
var $a = V;
var _a = "__lodash_hash_undefined__";
function ma(t, e) {
var r = this.__data__;
return this.size += this.has(t) ? 0 : 1, r[t] = $a && e === void 0 ? _a : e, this;
}
var Aa = ma;
var wa = sa;
var Ta = oa;
var Oa = ha;
var Ca = va;
var Sa = Aa;
function j(t) {
var e = -1, r = t == null ? 0 : t.length;
for (this.clear(); ++e < r; ) {
var a = t[e];
this.set(a[0], a[1]);
}
}
j.prototype.clear = wa;
j.prototype.delete = Ta;
j.prototype.get = Oa;
j.prototype.has = Ca;
j.prototype.set = Sa;
var Ea = j;
function ja() {
this.__data__ = [], this.size = 0;
}
var Ia = ja;
function Pa(t, e) {
return t === e || t !== t && e !== e;
}
var le = Pa;
var xa = le;
function Na(t, e) {
for (var r = t.length; r--; )
if (xa(t[r][0], e))
return r;
return -1;
}
var J = Na;
var Ma = J;
var La = Array.prototype;
var Ra = La.splice;
function Da(t) {
var e = this.__data__, r = Ma(e, t);
if (r < 0)
return false;
var a = e.length - 1;
return r == a ? e.pop() : Ra.call(e, r, 1), --this.size, true;
}
var Fa = Da;
var Ba = J;
function Ua(t) {
var e = this.__data__, r = Ba(e, t);
return r < 0 ? void 0 : e[r][1];
}
var Ga = Ua;
var Ka = J;
function Ha(t) {
return Ka(this.__data__, t) > -1;
}
var qa = Ha;
var za = J;
function Va(t, e) {
var r = this.__data__, a = za(r, t);
return a < 0 ? (++this.size, r.push([t, e])) : r[a][1] = e, this;
}
var Ja = Va;
var Qa = Ia;
var Wa = Fa;
var Ya = Ga;
var Xa = qa;
var Za = Ja;
function I(t) {
var e = -1, r = t == null ? 0 : t.length;
for (this.clear(); ++e < r; ) {
var a = t[e];
this.set(a[0], a[1]);
}
}
I.prototype.clear = Qa;
I.prototype.delete = Wa;
I.prototype.get = Ya;
I.prototype.has = Xa;
I.prototype.set = Za;
var Q = I;
var ka = S;
var en = A;
var tn = ka(en, "Map");
var ue = tn;
var Ee = Ea;
var rn = Q;
var an = ue;
function nn() {
this.size = 0, this.__data__ = {
hash: new Ee(),
map: new (an || rn)(),
string: new Ee()
};
}
var sn = nn;
function on(t) {
var e = typeof t;
return e == "string" || e == "number" || e == "symbol" || e == "boolean" ? t !== "__proto__" : t === null;
}
var cn = on;
var ln = cn;
function un(t, e) {
var r = t.__data__;
return ln(e) ? r[typeof e == "string" ? "string" : "hash"] : r.map;
}
var W = un;
var fn = W;
function dn(t) {
var e = fn(this, t).delete(t);
return this.size -= e ? 1 : 0, e;
}
var hn = dn;
var gn = W;
function pn(t) {
return gn(this, t).get(t);
}
var yn = pn;
var bn = W;
function vn(t) {
return bn(this, t).has(t);
}
var $n = vn;
var _n = W;
function mn(t, e) {
var r = _n(this, t), a = r.size;
return r.set(t, e), this.size += r.size == a ? 0 : 1, this;
}
var An = mn;
var wn = sn;
var Tn = hn;
var On = yn;
var Cn = $n;
var Sn = An;
function P(t) {
var e = -1, r = t == null ? 0 : t.length;
for (this.clear(); ++e < r; ) {
var a = t[e];
this.set(a[0], a[1]);
}
}
P.prototype.clear = wn;
P.prototype.delete = Tn;
P.prototype.get = On;
P.prototype.has = Cn;
P.prototype.set = Sn;
var fe = P;
var gt = fe;
var En = "Expected a function";
function de(t, e) {
if (typeof t != "function" || e != null && typeof e != "function")
throw new TypeError(En);
var r = function() {
var a = arguments, n = e ? e.apply(this, a) : a[0], s = r.cache;
if (s.has(n))
return s.get(n);
var i = t.apply(this, a);
return r.cache = s.set(n, i) || s, i;
};
return r.cache = new (de.Cache || gt)(), r;
}
de.Cache = gt;
var jn = de;
var In = jn;
var Pn = 500;
function xn(t) {
var e = In(t, function(a) {
return r.size === Pn && r.clear(), a;
}), r = e.cache;
return e;
}
var Nn = xn;
var Mn = Nn;
var Ln = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
var Rn = /\\(\\)?/g;
var Dn = Mn(function(t) {
var e = [];
return t.charCodeAt(0) === 46 && e.push(""), t.replace(Ln, function(r, a, n, s) {
e.push(n ? s.replace(Rn, "$1") : a || r);
}), e;
});
var Fn = Dn;
function Bn(t, e) {
for (var r = -1, a = t == null ? 0 : t.length, n = Array(a); ++r < a; )
n[r] = e(t[r], r, t);
return n;
}
var Un = Bn;
var je = L;
var Gn = Un;
var Kn = O;
var Hn = ce;
var qn = 1 / 0;
var Ie = je ? je.prototype : void 0;
var Pe = Ie ? Ie.toString : void 0;
function pt(t) {
if (typeof t == "string")
return t;
if (Kn(t))
return Gn(t, pt) + "";
if (Hn(t))
return Pe ? Pe.call(t) : "";
var e = t + "";
return e == "0" && 1 / t == -qn ? "-0" : e;
}
var zn = pt;
var Vn = zn;
function Jn(t) {
return t == null ? "" : Vn(t);
}
var Qn = Jn;
var Wn = O;
var Yn = mr;
var Xn = Fn;
var Zn = Qn;
function kn(t, e) {
return Wn(t) ? t : Yn(t, e) ? [t] : Xn(Zn(t));
}
var es = kn;
var ts = ce;
var rs = 1 / 0;
function as(t) {
if (typeof t == "string" || ts(t))
return t;
var e = t + "";
return e == "0" && 1 / t == -rs ? "-0" : e;
}
var ns = as;
var ss = es;
var is = ns;
function os(t, e) {
e = ss(e, t);
for (var r = 0, a = e.length; t != null && r < a; )
t = t[is(e[r++])];
return r && r == a ? t : void 0;
}
var cs = os;
var ls = cs;
function us(t, e, r) {
var a = t == null ? void 0 : ls(t, e);
return a === void 0 ? r : a;
}
var fs = us;
var y = oe(fs);
var ds = Q;
function hs() {
this.__data__ = new ds(), this.size = 0;
}
var gs = hs;
function ps(t) {
var e = this.__data__, r = e.delete(t);
return this.size = e.size, r;
}
var ys = ps;
function bs(t) {
return this.__data__.get(t);
}
var vs = bs;
function $s(t) {
return this.__data__.has(t);
}
var _s = $s;
var ms = Q;
var As = ue;
var ws = fe;
var Ts = 200;
function Os(t, e) {
var r = this.__data__;
if (r instanceof ms) {
var a = r.__data__;
if (!As || a.length < Ts - 1)
return a.push([t, e]), this.size = ++r.size, this;
r = this.__data__ = new ws(a);
}
return r.set(t, e), this.size = r.size, this;
}
var Cs = Os;
var Ss = Q;
var Es = gs;
var js = ys;
var Is = vs;
var Ps = _s;
var xs = Cs;
function x(t) {
var e = this.__data__ = new Ss(t);
this.size = e.size;
}
x.prototype.clear = Es;
x.prototype.delete = js;
x.prototype.get = Is;
x.prototype.has = Ps;
x.prototype.set = xs;
var he = x;
function Ns(t, e) {
for (var r = -1, a = t == null ? 0 : t.length; ++r < a && e(t[r], r, t) !== false; )
;
return t;
}
var Ms = Ns;
var Ls = S;
var Rs = function() {
try {
var t = Ls(Object, "defineProperty");
return t({}, "", {}), t;
} catch {
}
}();
var Ds = Rs;
var xe = Ds;
function Fs(t, e, r) {
e == "__proto__" && xe ? xe(t, e, {
configurable: true,
enumerable: true,
value: r,
writable: true
}) : t[e] = r;
}
var yt = Fs;
var Bs = yt;
var Us = le;
var Gs = Object.prototype;
var Ks = Gs.hasOwnProperty;
function Hs(t, e, r) {
var a = t[e];
(!(Ks.call(t, e) && Us(a, r)) || r === void 0 && !(e in t)) && Bs(t, e, r);
}
var bt = Hs;
var qs = bt;
var zs = yt;
function Vs(t, e, r, a) {
var n = !r;
r || (r = {});
for (var s = -1, i = e.length; ++s < i; ) {
var o = e[s], c = a ? a(r[o], t[o], o, r, t) : void 0;
c === void 0 && (c = t[o]), n ? zs(r, o, c) : qs(r, o, c);
}
return r;
}
var Y = Vs;
function Js(t, e) {
for (var r = -1, a = Array(t); ++r < t; )
a[r] = e(r);
return a;
}
var Qs = Js;
var Ws = R;
var Ys = C;
var Xs = "[object Arguments]";
function Zs(t) {
return Ys(t) && Ws(t) == Xs;
}
var ks = Zs;
var Ne = ks;
var ei = C;
var vt = Object.prototype;
var ti = vt.hasOwnProperty;
var ri = vt.propertyIsEnumerable;
var ai = Ne(/* @__PURE__ */ function() {
return arguments;
}()) ? Ne : function(t) {
return ei(t) && ti.call(t, "callee") && !ri.call(t, "callee");
};
var ni = ai;
var K = { exports: {} };
function si() {
return false;
}
var ii = si;
K.exports;
(function(t, e) {
var r = A, a = ii, n = e && !e.nodeType && e, s = n && true && t && !t.nodeType && t, i = s && s.exports === n, o = i ? r.Buffer : void 0, c = o ? o.isBuffer : void 0, l = c || a;
t.exports = l;
})(K, K.exports);
var ge = K.exports;
var oi = 9007199254740991;
var ci = /^(?:0|[1-9]\d*)$/;
function li(t, e) {
var r = typeof t;
return e = e ?? oi, !!e && (r == "number" || r != "symbol" && ci.test(t)) && t > -1 && t % 1 == 0 && t < e;
}
var ui = li;
var fi = 9007199254740991;
function di(t) {
return typeof t == "number" && t > -1 && t % 1 == 0 && t <= fi;
}
var $t = di;
var hi = R;
var gi = $t;
var pi = C;
var yi = "[object Arguments]";
var bi = "[object Array]";
var vi = "[object Boolean]";
var $i = "[object Date]";
var _i = "[object Error]";
var mi = "[object Function]";
var Ai = "[object Map]";
var wi = "[object Number]";
var Ti = "[object Object]";
var Oi = "[object RegExp]";
var Ci = "[object Set]";
var Si = "[object String]";
var Ei = "[object WeakMap]";
var ji = "[object ArrayBuffer]";
var Ii = "[object DataView]";
var Pi = "[object Float32Array]";
var xi = "[object Float64Array]";
var Ni = "[object Int8Array]";
var Mi = "[object Int16Array]";
var Li = "[object Int32Array]";
var Ri = "[object Uint8Array]";
var Di = "[object Uint8ClampedArray]";
var Fi = "[object Uint16Array]";
var Bi = "[object Uint32Array]";
var g = {};
g[Pi] = g[xi] = g[Ni] = g[Mi] = g[Li] = g[Ri] = g[Di] = g[Fi] = g[Bi] = true;
g[yi] = g[bi] = g[ji] = g[vi] = g[Ii] = g[$i] = g[_i] = g[mi] = g[Ai] = g[wi] = g[Ti] = g[Oi] = g[Ci] = g[Si] = g[Ei] = false;
function Ui(t) {
return pi(t) && gi(t.length) && !!g[hi(t)];
}
var Gi = Ui;
function Ki(t) {
return function(e) {
return t(e);
};
}
var pe = Ki;
var H = { exports: {} };
H.exports;
(function(t, e) {
var r = ut, a = e && !e.nodeType && e, n = a && true && t && !t.nodeType && t, s = n && n.exports === a, i = s && r.process, o = function() {
try {
var c = n && n.require && n.require("util").types;
return c || i && i.binding && i.binding("util");
} catch {
}
}();
t.exports = o;
})(H, H.exports);
var ye = H.exports;
var Hi = Gi;
var qi = pe;
var Me = ye;
var Le = Me && Me.isTypedArray;
var zi = Le ? qi(Le) : Hi;
var _t = zi;
var Vi = Qs;
var Ji = ni;
var Qi = O;
var Wi = ge;
var Yi = ui;
var Xi = _t;
var Zi = Object.prototype;
var ki = Zi.hasOwnProperty;
function eo(t, e) {
var r = Qi(t), a = !r && Ji(t), n = !r && !a && Wi(t), s = !r && !a && !n && Xi(t), i = r || a || n || s, o = i ? Vi(t.length, String) : [], c = o.length;
for (var l in t)
(e || ki.call(t, l)) && !(i && // Safari 9 has enumerable `arguments.length` in strict mode.
(l == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
n && (l == "offset" || l == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
s && (l == "buffer" || l == "byteLength" || l == "byteOffset") || // Skip index properties.
Yi(l, c))) && o.push(l);
return o;
}
var mt = eo;
var to = Object.prototype;
function ro(t) {
var e = t && t.constructor, r = typeof e == "function" && e.prototype || to;
return t === r;
}
var be = ro;
function ao(t, e) {
return function(r) {
return t(e(r));
};
}
var At = ao;
var no = At;
var so = no(Object.keys, Object);
var io = so;
var oo = be;
var co = io;
var lo = Object.prototype;
var uo = lo.hasOwnProperty;
function fo(t) {
if (!oo(t))
return co(t);
var e = [];
for (var r in Object(t))
uo.call(t, r) && r != "constructor" && e.push(r);
return e;
}
var ho = fo;
var go = dt;
var po = $t;
function yo(t) {
return t != null && po(t.length) && !go(t);
}
var wt = yo;
var bo = mt;
var vo = ho;
var $o = wt;
function _o(t) {
return $o(t) ? bo(t) : vo(t);
}
var X = _o;
var mo = Y;
var Ao = X;
function wo(t, e) {
return t && mo(e, Ao(e), t);
}
var To = wo;
function Oo(t) {
var e = [];
if (t != null)
for (var r in Object(t))
e.push(r);
return e;
}
var Co = Oo;
var So = E;
var Eo = be;
var jo = Co;
var Io = Object.prototype;
var Po = Io.hasOwnProperty;
function xo(t) {
if (!So(t))
return jo(t);
var e = Eo(t), r = [];
for (var a in t)
a == "constructor" && (e || !Po.call(t, a)) || r.push(a);
return r;
}
var No = xo;
var Mo = mt;
var Lo = No;
var Ro = wt;
function Do(t) {
return Ro(t) ? Mo(t, true) : Lo(t);
}
var ve = Do;
var Fo = Y;
var Bo = ve;
function Uo(t, e) {
return t && Fo(e, Bo(e), t);
}
var Go = Uo;
var q = { exports: {} };
q.exports;
(function(t, e) {
var r = A, a = e && !e.nodeType && e, n = a && true && t && !t.nodeType && t, s = n && n.exports === a, i = s ? r.Buffer : void 0, o = i ? i.allocUnsafe : void 0;
function c(l, u) {
if (u)
return l.slice();
var f = l.length, d = o ? o(f) : new l.constructor(f);
return l.copy(d), d;
}
t.exports = c;
})(q, q.exports);
var Ko = q.exports;
function Ho(t, e) {
var r = -1, a = t.length;
for (e || (e = Array(a)); ++r < a; )
e[r] = t[r];
return e;
}
var qo = Ho;
function zo(t, e) {
for (var r = -1, a = t == null ? 0 : t.length, n = 0, s = []; ++r < a; ) {
var i = t[r];
e(i, r, t) && (s[n++] = i);
}
return s;
}
var Vo = zo;
function Jo() {
return [];
}
var Tt = Jo;
var Qo = Vo;
var Wo = Tt;
var Yo = Object.prototype;
var Xo = Yo.propertyIsEnumerable;
var Re = Object.getOwnPropertySymbols;
var Zo = Re ? function(t) {
return t == null ? [] : (t = Object(t), Qo(Re(t), function(e) {
return Xo.call(t, e);
}));
} : Wo;
var $e = Zo;
var ko = Y;
var ec = $e;
function tc(t, e) {
return ko(t, ec(t), e);
}
var rc = tc;
function ac(t, e) {
for (var r = -1, a = e.length, n = t.length; ++r < a; )
t[n + r] = e[r];
return t;
}
var Ot = ac;
var nc = At;
var sc = nc(Object.getPrototypeOf, Object);
var Ct = sc;
var ic = Ot;
var oc = Ct;
var cc = $e;
var lc = Tt;
var uc = Object.getOwnPropertySymbols;
var fc = uc ? function(t) {
for (var e = []; t; )
ic(e, cc(t)), t = oc(t);
return e;
} : lc;
var St = fc;
var dc = Y;
var hc = St;
function gc(t, e) {
return dc(t, hc(t), e);
}
var pc = gc;
var yc = Ot;
var bc = O;
function vc(t, e, r) {
var a = e(t);
return bc(t) ? a : yc(a, r(t));
}
var Et = vc;
var $c = Et;
var _c = $e;
var mc = X;
function Ac(t) {
return $c(t, mc, _c);
}
var jt = Ac;
var wc = Et;
var Tc = St;
var Oc = ve;
function Cc(t) {
return wc(t, Oc, Tc);
}
var Sc = Cc;
var Ec = S;
var jc = A;
var Ic = Ec(jc, "DataView");
var Pc = Ic;
var xc = S;
var Nc = A;
var Mc = xc(Nc, "Promise");
var Lc = Mc;
var Rc = S;
var Dc = A;
var Fc = Rc(Dc, "Set");
var Bc = Fc;
var Uc = S;
var Gc = A;
var Kc = Uc(Gc, "WeakMap");
var Hc = Kc;
var re = Pc;
var ae = ue;
var ne = Lc;
var se = Bc;
var ie = Hc;
var It = R;
var N = ht;
var De = "[object Map]";
var qc = "[object Object]";
var Fe = "[object Promise]";
var Be = "[object Set]";
var Ue = "[object WeakMap]";
var Ge = "[object DataView]";
var zc = N(re);
var Vc = N(ae);
var Jc = N(ne);
var Qc = N(se);
var Wc = N(ie);
var T = It;
(re && T(new re(new ArrayBuffer(1))) != Ge || ae && T(new ae()) != De || ne && T(ne.resolve()) != Fe || se && T(new se()) != Be || ie && T(new ie()) != Ue) && (T = function(t) {
var e = It(t), r = e == qc ? t.constructor : void 0, a = r ? N(r) : "";
if (a)
switch (a) {
case zc:
return Ge;
case Vc:
return De;
case Jc:
return Fe;
case Qc:
return Be;
case Wc:
return Ue;
}
return e;
});
var Z = T;
var Yc = Object.prototype;
var Xc = Yc.hasOwnProperty;
function Zc(t) {
var e = t.length, r = new t.constructor(e);
return e && typeof t[0] == "string" && Xc.call(t, "index") && (r.index = t.index, r.input = t.input), r;
}
var kc = Zc;
var el = A;
var tl = el.Uint8Array;
var Pt = tl;
var Ke = Pt;
function rl(t) {
var e = new t.constructor(t.byteLength);
return new Ke(e).set(new Ke(t)), e;
}
var _e = rl;
var al = _e;
function nl(t, e) {
var r = e ? al(t.buffer) : t.buffer;
return new t.constructor(r, t.byteOffset, t.byteLength);
}
var sl = nl;
var il = /\w*$/;
function ol(t) {
var e = new t.constructor(t.source, il.exec(t));
return e.lastIndex = t.lastIndex, e;
}
var cl = ol;
var He = L;
var qe = He ? He.prototype : void 0;
var ze = qe ? qe.valueOf : void 0;
function ll(t) {
return ze ? Object(ze.call(t)) : {};
}
var ul = ll;
var fl = _e;
function dl(t, e) {
var r = e ? fl(t.buffer) : t.buffer;
return new t.constructor(r, t.byteOffset, t.length);
}
var hl = dl;
var gl = _e;
var pl = sl;
var yl = cl;
var bl = ul;
var vl = hl;
var $l = "[object Boolean]";
var _l = "[object Date]";
var ml = "[object Map]";
var Al = "[object Number]";
var wl = "[object RegExp]";
var Tl = "[object Set]";
var Ol = "[object String]";
var Cl = "[object Symbol]";
var Sl = "[object ArrayBuffer]";
var El = "[object DataView]";
var jl = "[object Float32Array]";
var Il = "[object Float64Array]";
var Pl = "[object Int8Array]";
var xl = "[object Int16Array]";
var Nl = "[object Int32Array]";
var Ml = "[object Uint8Array]";
var Ll = "[object Uint8ClampedArray]";
var Rl = "[object Uint16Array]";
var Dl = "[object Uint32Array]";
function Fl(t, e, r) {
var a = t.constructor;
switch (e) {
case Sl:
return gl(t);
case $l:
case _l:
return new a(+t);
case El:
return pl(t, r);
case jl:
case Il:
case Pl:
case xl:
case Nl:
case Ml:
case Ll:
case Rl:
case Dl:
return vl(t, r);
case ml:
return new a();
case Al:
case Ol:
return new a(t);
case wl:
return yl(t);
case Tl:
return new a();
case Cl:
return bl(t);
}
}
var Bl = Fl;
var Ul = E;
var Ve = Object.create;
var Gl = /* @__PURE__ */ function() {
function t() {
}
return function(e) {
if (!Ul(e))
return {};
if (Ve)
return Ve(e);
t.prototype = e;
var r = new t();
return t.prototype = void 0, r;
};
}();
var Kl = Gl;
var Hl = Kl;
var ql = Ct;
var zl = be;
function Vl(t) {
return typeof t.constructor == "function" && !zl(t) ? Hl(ql(t)) : {};
}
var Jl = Vl;
var Ql = Z;
var Wl = C;
var Yl = "[object Map]";
function Xl(t) {
return Wl(t) && Ql(t) == Yl;
}
var Zl = Xl;
var kl = Zl;
var eu = pe;
var Je = ye;
var Qe = Je && Je.isMap;
var tu = Qe ? eu(Qe) : kl;
var ru = tu;
var au = Z;
var nu = C;
var su = "[object Set]";
function iu(t) {
return nu(t) && au(t) == su;
}
var ou = iu;
var cu = ou;
var lu = pe;
var We = ye;
var Ye = We && We.isSet;
var uu = Ye ? lu(Ye) : cu;
var fu = uu;
var du = he;
var hu = Ms;
var gu = bt;
var pu = To;
var yu = Go;
var bu = Ko;
var vu = qo;
var $u = rc;
var _u = pc;
var mu = jt;
var Au = Sc;
var wu = Z;
var Tu = kc;
var Ou = Bl;
var Cu = Jl;
var Su = O;
var Eu = ge;
var ju = ru;
var Iu = E;
var Pu = fu;
var xu = X;
var Nu = ve;
var Mu = 1;
var Lu = 2;
var Ru = 4;
var xt = "[object Arguments]";
var Du = "[object Array]";
var Fu = "[object Boolean]";
var Bu = "[object Date]";
var Uu = "[object Error]";
var Nt = "[object Function]";
var Gu = "[object GeneratorFunction]";
var Ku = "[object Map]";
var Hu = "[object Number]";
var Mt = "[object Object]";
var qu = "[object RegExp]";
var zu = "[object Set]";
var Vu = "[object String]";
var Ju = "[object Symbol]";
var Qu = "[object WeakMap]";
var Wu = "[object ArrayBuffer]";
var Yu = "[object DataView]";
var Xu = "[object Float32Array]";
var Zu = "[object Float64Array]";
var ku = "[object Int8Array]";
var ef = "[object Int16Array]";
var tf = "[object Int32Array]";
var rf = "[object Uint8Array]";
var af = "[object Uint8ClampedArray]";
var nf = "[object Uint16Array]";
var sf = "[object Uint32Array]";
var h = {};
h[xt] = h[Du] = h[Wu] = h[Yu] = h[Fu] = h[Bu] = h[Xu] = h[Zu] = h[ku] = h[ef] = h[tf] = h[Ku] = h[Hu] = h[Mt] = h[qu] = h[zu] = h[Vu] = h[Ju] = h[rf] = h[af] = h[nf] = h[sf] = true;
h[Uu] = h[Nt] = h[Qu] = false;
function G(t, e, r, a, n, s) {
var i, o = e & Mu, c = e & Lu, l = e & Ru;
if (r && (i = n ? r(t, a, n, s) : r(t)), i !== void 0)
return i;
if (!Iu(t))
return t;
var u = Su(t);
if (u) {
if (i = Tu(t), !o)
return vu(t, i);
} else {
var f = wu(t), d = f == Nt || f == Gu;
if (Eu(t))
return bu(t, o);
if (f == Mt || f == xt || d && !n) {
if (i = c || d ? {} : Cu(t), !o)
return c ? _u(t, yu(i, t)) : $u(t, pu(i, t));
} else {
if (!h[f])
return n ? t : {};
i = Ou(t, f, o);
}
}
s || (s = new du());
var m = s.get(t);
if (m)
return m;
s.set(t, i), Pu(t) ? t.forEach(function(b) {
i.add(G(b, e, r, b, t, s));
}) : ju(t) && t.forEach(function(b, v) {
i.set(v, G(b, e, r, v, t, s));
});
var $ = l ? c ? Au : mu : c ? Nu : xu, _ = u ? void 0 : $(t);
return hu(_ || t, function(b, v) {
_ && (v = b, b = t[v]), gu(i, v, G(b, e, r, v, t, s));
}), i;
}
var Lt = G;
var of = "__lodash_hash_undefined__";
function cf(t) {
return this.__data__.set(t, of), this;
}
var lf = cf;
function uf(t) {
return this.__data__.has(t);
}
var ff = uf;
var df = fe;
var hf = lf;
var gf = ff;
function z(t) {
var e = -1, r = t == null ? 0 : t.length;
for (this.__data__ = new df(); ++e < r; )
this.add(t[e]);
}
z.prototype.add = z.prototype.push = hf;
z.prototype.has = gf;
var pf = z;
function yf(t, e) {
for (var r = -1, a = t == null ? 0 : t.length; ++r < a; )
if (e(t[r], r, t))
return true;
return false;
}
var bf = yf;
function vf(t, e) {
return t.has(e);
}
var $f = vf;
var _f = pf;
var mf = bf;
var Af = $f;
var wf = 1;
var Tf = 2;
function Of(t, e, r, a, n, s) {
var i = r & wf, o = t.length, c = e.length;
if (o != c && !(i && c > o))
return false;
var l = s.get(t), u = s.get(e);
if (l && u)
return l == e && u == t;
var f = -1, d = true, m = r & Tf ? new _f() : void 0;
for (s.set(t, e), s.set(e, t); ++f < o; ) {
var $ = t[f], _ = e[f];
if (a)
var b = i ? a(_, $, f, e, t, s) : a($, _, f, t, e, s);
if (b !== void 0) {
if (b)
continue;
d = false;
break;
}
if (m) {
if (!mf(e, function(v, w) {
if (!Af(m, w) && ($ === v || n($, v, r, a, s)))
return m.push(w);
})) {
d = false;
break;
}
} else if (!($ === _ || n($, _, r, a, s))) {
d = false;
break;
}
}
return s.delete(t), s.delete(e), d;
}
var Rt = Of;
function Cf(t) {
var e = -1, r = Array(t.size);
return t.forEach(function(a, n) {
r[++e] = [n, a];
}), r;
}
var Sf = Cf;
function Ef(t) {
var e = -1, r = Array(t.size);
return t.forEach(function(a) {
r[++e] = a;
}), r;
}
var jf = Ef;
var Xe = L;
var Ze = Pt;
var If = le;
var Pf = Rt;
var xf = Sf;
var Nf = jf;
var Mf = 1;
var Lf = 2;
var Rf = "[object Boolean]";
var Df = "[object Date]";
var Ff = "[object Error]";
var Bf = "[object Map]";
var Uf = "[object Number]";
var Gf = "[object RegExp]";
var Kf = "[object Set]";
var Hf = "[object String]";
var qf = "[object Symbol]";
var zf = "[object ArrayBuffer]";
var Vf = "[object DataView]";
var ke = Xe ? Xe.prototype : void 0;
var ee = ke ? ke.valueOf : void 0;
function Jf(t, e, r, a, n, s, i) {
switch (r) {
case Vf:
if (t.byteLength != e.byteLength || t.byteOffset != e.byteOffset)
return false;
t = t.buffer, e = e.buffer;
case zf:
return !(t.byteLength != e.byteLength || !s(new Ze(t), new Ze(e)));
case Rf:
case Df:
case Uf:
return If(+t, +e);
case Ff:
return t.name == e.name && t.message == e.message;
case Gf:
case Hf:
return t == e + "";
case Bf:
var o = xf;
case Kf:
var c = a & Mf;
if (o || (o = Nf), t.size != e.size && !c)
return false;
var l = i.get(t);
if (l)
return l == e;
a |= Lf, i.set(t, e);
var u = Pf(o(t), o(e), a, n, s, i);
return i.delete(t), u;
case qf:
if (ee)
return ee.call(t) == ee.call(e);
}
return false;
}
var Qf = Jf;
var et = jt;
var Wf = 1;
var Yf = Object.prototype;
var Xf = Yf.hasOwnProperty;
function Zf(t, e, r, a, n, s) {
var i = r & Wf, o = et(t), c = o.length, l = et(e), u = l.length;
if (c != u && !i)
return false;
for (var f = c; f--; ) {
var d = o[f];
if (!(i ? d in e : Xf.call(e, d)))
return false;
}
var m = s.get(t), $ = s.get(e);
if (m && $)
return m == e && $ == t;
var _ = true;
s.set(t, e), s.set(e, t);
for (var b = i; ++f < c; ) {
d = o[f];
var v = t[d], w = e[d];
if (a)
var Ae = i ? a(w, v, d, e, t, s) : a(v, w, d, t, e, s);
if (!(Ae === void 0 ? v === w || n(v, w, r, a, s) : Ae)) {
_ = false;
break;
}
b || (b = d == "constructor");
}
if (_ && !b) {
var D = t.constructor, F = e.constructor;
D != F && "constructor" in t && "constructor" in e && !(typeof D == "function" && D instanceof D && typeof F == "function" && F instanceof F) && (_ = false);
}
return s.delete(t), s.delete(e), _;
}
var kf = Zf;
var te = he;
var ed = Rt;
var td = Qf;
var rd = kf;
var tt = Z;
var rt = O;
var at = ge;
var ad = _t;
var nd = 1;
var nt = "[object Arguments]";
var st = "[object Array]";
var U = "[object Object]";
var sd = Object.prototype;
var it = sd.hasOwnProperty;
function id(t, e, r, a, n, s) {
var i = rt(t), o = rt(e), c = i ? st : tt(t), l = o ? st : tt(e);
c = c == nt ? U : c, l = l == nt ? U : l;
var u = c == U, f = l == U, d = c == l;
if (d && at(t)) {
if (!at(e))
return false;
i = true, u = false;
}
if (d && !u)
return s || (s = new te()), i || ad(t) ? ed(t, e, r, a, n, s) : td(t, e, c, r, a, n, s);
if (!(r & nd)) {
var m = u && it.call(t, "__wrapped__"), $ = f && it.call(e, "__wrapped__");
if (m || $) {
var _ = m ? t.value() : t, b = $ ? e.value() : e;
return s || (s = new te()), n(_, b, r, a, s);
}
}
return d ? (s || (s = new te()), rd(t, e, r, a, n, s)) : false;
}
var od = id;
var cd = od;
var ot = C;
function Dt(t, e, r, a, n) {
return t === e ? true : t == null || e == null || !ot(t) && !ot(e) ? t !== t && e !== e : cd(t, e, r, a, Dt, n);
}
var ld = Dt;
var ud = he;
var fd = ld;
var dd = 1;
var hd = 2;
function gd(t, e, r, a) {
var n = r.length, s = n, i = !a;
if (t == null)
return !s;
for (t = Object(t); n--; ) {
var o = r[n];
if (i && o[2] ? o[1] !== t[o[0]] : !(o[0] in t))
return false;
}
for (; ++n < s; ) {
o = r[n];
var c = o[0], l = t[c], u = o[1];
if (i && o[2]) {
if (l === void 0 && !(c in t))
return false;
} else {
var f = new ud();
if (a)
var d = a(l, u, c, t, e, f);
if (!(d === void 0 ? fd(u, l, dd | hd, a, f) : d))
return false;
}
}
return true;
}
var pd = gd;
var yd = E;
function bd(t) {
return t === t && !yd(t);
}
var vd = bd;
var $d = vd;
var _d = X;
function md(t) {
for (var e = _d(t), r = e.length; r--; ) {
var a = e[r], n = t[a];
e[r] = [a, n, $d(n)];
}
return e;
}
var Ad = md;
function wd(t, e) {
return function(r) {
return r == null ? false : r[t] === e && (e !== void 0 || t in Object(r));
};
}
var Td = wd;
var Od = pd;
var Cd = Ad;
var Sd = Td;
function Ed(t) {
var e = Cd(t);
return e.length == 1 && e[0][2] ? Sd(e[0][0], e[0][1]) : function(r) {
return r === t || Od(r, t, e);
};
}
var jd = Ed;
var Id = Lt;
var Pd = jd;
var xd = 1;
function Nd(t) {
return Pd(Id(t, xd));
}
var Md = Nd;
var Ld = oe(Md);
var Rd = Lt;
var Dd = 1;
var Fd = 4;
function Bd(t) {
return Rd(t, Dd | Fd);
}
var Ud = Bd;
var Ft = oe(Ud);
var ct = class {
constructor({
items: e = [],
identifierName: r = "id",
getNewId: a
} = {}) {
p(this, "sequence", 0);
p(this, "items", []);
p(this, "database", null);
p(this, "name", null);
p(this, "identifierName", "id");
p(this, "getNewId");
if (!Array.isArray(e))
throw new Error(
"Can't initialize a Collection with anything else than an array of items"
);
this.identifierName = r, this.getNewId = a || this.getNewIdFromSequence, e.map(this.addOne.bind(this));
}
/**
* A Collection may need to access other collections (e.g. for embedding references)
* This is done through a reference to the parent database.
*/
setDatabase(e) {
this.database = e;
}
setName(e) {
this.name = e;
}
/**
* Get a one to many embedder function for a given resource name
*
* @example embed posts for an author
*
* authorsCollection._oneToManyEmbedder('posts')
*
* @returns Function item => item
*/
_oneToManyEmbedder(e) {
if (this.name == null)
throw new Error("Can't embed references without a collection name");
const a = `${this.name.slice(0, -1)}_id`;
return (n) => {
if (this.database == null)
throw new Error("Can't embed references without a database");
const s = this.database.collections[e];
if (!s)
throw new Error(
`Can't embed a non-existing collection ${e}`
);
return Array.isArray(n[e]) ? n[e] = s.getAll({
filter: (i) => n[e].indexOf(
i[s.identifierName]
) !== -1
}) : n[e] = s.getAll({
filter: (i) => i[a] === n[this.identifierName]
}), n;
};
}
/**
* Get a many to one embedder function for a given resource name
*
* @example embed author for a post
*
* postsCollection._manyToOneEmbedder('author')
*
* @returns Function item => item
*/
_manyToOneEmbedder(e) {
const r = `${e}s`, a = `${e}_id`;
return (n) => {
if (this.database == null)
throw new Error("Can't embed references without a database");
const s = this.database.collections[r];
if (!s)
throw new Error(
`Can't embed a non-existing collection ${e}`
);
try {
n[e] = s.getOne(
n[a]
);
} catch {
}
return n;
};
}
/**
* @param String[] An array of resource names, e.g. ['books', 'country']
* @returns Function item => item
*/
_itemEmbedder(e) {
const a = (Array.isArray(e) ? e : [e]).map(
(n) => n.endsWith("s") ? this._oneToManyEmbedder(n) : this._manyToOneEmbedder(n)
);
return (n) => a.reduce(
(s, i) => i(s),
n
);
}
getCount(e) {
return this.getAll(e).length;
}
getAll(e) {
let r = this.items.slice(0);
return e && (e.filter && (r = Bt(r, e.filter)), e.sort && (r = qd(r, e.sort)), e.range && (r = zd(r, e.range)), r = r.map((a) => Object.assign({}, a)), e.embed && this.database && (r = r.map(this._itemEmbedder(e.embed)))), r;
}
getIndex(e) {
return this.items.findIndex(
// biome-ignore lint/suspicious/noDoubleEquals: we want implicit type coercion
(r) => r[this.identifierName] == e
);
}
getOne(e, r) {
const a = this.getIndex(e);
if (a === -1)
throw new Error(`No item with identifier ${e}`);
let n = this.items[a];
return n = Object.assign({}, n), r != null && r.embed && this.database && (n = this._itemEmbedder(r.embed)(n)), n;
}
getNewIdFromSequence() {
return this.sequence++;
}
addOne(e) {
const r = Ft(e), a = r[this.identifierName];
if (a != null) {
if (this.getIndex(a) !== -1)
throw new Error(
`An item with the identifier ${a} already exists`
);
typeof a == "number" && (this.sequence = Math.max(this.sequence, a) + 1);
} else
r[this.identifierName] = this.getNewId();
return this.items.push(r), r;
}
updateOne(e, r) {
const a = this.getIndex(e);
if (a === -1)
throw new Error(`No item with identifier ${e}`);
for (const n in r)
this.items[a][n] = r[n];
return Object.assign({}, this.items[a]);
}
removeOne(e) {
const r = this.getIndex(e);
if (r === -1)
throw new Error(`No item with identifier ${e}`);
const a = this.items[r];
return this.items.splice(r, 1), typeof e == "number" && e == this.sequence - 1 && this.sequence--, a;
}
};
var Gd = (t, e) => t.reduce((r, a) => r && e(a), true);
var Kd = (t, e) => t.reduce((r, a) => r || e(a), false);
var Hd = (t, e) => t.reduce(
(r, a, n) => {
if (r != null)
return r;
const s = t.slice(0, n + 1).join("."), i = t.slice(n + 1).join("."), o = y(e, s);
return Array.isArray(o) && n < t.length - 1 ? [s, i] : void 0;
},
void 0
);
var lt = (t, e) => {
if (t.indexOf("_q") !== -1) {
const r = t.replace(/(_q)$/, ""), a = new RegExp(e.toString(), "i");
return (n) => {
var s;
return ((s = y(n, r)) == null ? void 0 : s.toString().match(a)) !== null;
};
}
if (t.indexOf("_lte") !== -1) {
const r = t.replace(/(_lte)$/, "");
return (a) => y(a, r) <= e;
}
if (t.indexOf("_gte") !== -1) {
const r = t.replace(/(_gte)$/, "");
return (a) => y(a, r) >= e;
}
if (t.indexOf("_lt") !== -1) {
const r = t.replace(/(_lt)$/, "");
return (a) => y(a, r) < e;
}
if (t.indexOf("_gt") !== -1) {
const r = t.replace(/(_gt)$/, "");
return (a) => y(a, r) > e;
}
if (t.indexOf("_neq_any") !== -1) {
const r = t.replace(/(_neq_any)$/, ""), a = Array.isArray(e) ? e : [e];
return (n) => a.every((s) => y(n, r) != s);
}
if (t.indexOf("_neq") !== -1) {
const r = t.replace(/(_neq)$/, "");
return (a) => y(a, r) != e;
}
if (t.indexOf("_eq_any") !== -1) {
const r = t.replace(/(_eq_any)$/, ""), a = Array.isArray(e) ? e : [e];
return (n) => a.some((s) => y(n, r) == s);
}
if (t.indexOf("_eq") !== -1) {
const r = t.replace(/(_eq)$/, "");
return (a) => y(a, r) == e;
}
if (t.indexOf("_inc_any") !== -1) {
const r = t.replace(/(_inc_any)$/, ""), a = Array.isArray(e) ? e : [e];
return (n) => a.some((s) => {
const i = y(n, r);
return Array.isArray(i) || typeof i == "string" ? i.includes(s) : false;
});
}
if (t.indexOf("_inc") !== -1) {
const r = t.replace(/(_inc)$/, ""), a = Array.isArray(e) ? e : [e];
return (n) => a.every((s) => {
const i = y(n, r);
return Array.isArray(i) || typeof i == "string" ? i.includes(s) : false;
});
}
if (t.indexOf("_ninc_any") !== -1) {
const r = t.replace(/(_ninc_any)$/, ""), a = Array.isArray(e) ? e : [e];
return (n) => a.every((s) => {
const i = y(n, r);
return Array.isArray(i) || typeof i == "string" ? !i.includes(s) : false;
});
}
return Array.isArray(e) ? (r) => Array.isArray(y(r, t)) ? Gd(e, (a) => {
const n = y(r, t);
return Array.isArray(n) ? Kd(n, (s) => s == a) : false;
}) : e.filter((a) => a == y(r, t)).length > 0 : typeof e == "object" ? (r) => Ld(e)(y(r, t)) : (r) => {
const a = y(r, t);
return Array.isArray(a) && typeof e == "string" ? a.indexOf(e) !== -1 : typeof a == "boolean" && typeof e == "string" ? a === (e === "true") : a == e;
};
};
function Bt(t, e) {
if (typeof e == "function")
return t.filter(e);
if (e instanceof Object) {
const r = Object.keys(e).map((a) => {
if (a === "q" && typeof e.q == "string") {
const i = Vd(e.q), o = (c) => {
for (const l in c) {
const u = c[l];
if (typeof u == "object" && o(u) || u && typeof u == "string" && u.match && u.match(i) !== null)
return true;
}
return false;
};
return o;
}
const n = a.split("."), s = e[a];
return n.length > 1 ? (i) => {
const o = Hd(
n,
i
);
if (o) {
const [c, l] = o, u = y(i, c);
return Array.isArray(u) ? Bt(u, {
[l]: s
}).length > 0 : false;
}
return lt(a, s)(i);
} : lt(a, s);
});
return t.filter(
(a) => r.reduce(
(n, s) => n && s(a),
true
)
);
}
throw new Error("Unsupported filter type");
}
function qd(t, e) {
if (typeof e == "function")
return t.sort(e);
if (typeof e == "string")
return t.sort((r, a) => r[e] > a[e] ? 1 : r[e] < a[e] ? -1 : 0);
if (Array.isArray(e)) {
const r = e[0], a = e[1].toLowerCase() === "asc" ? 1 : -1;
return t.sort((n, s) => n[r] > s[r] ? a : n[r] < s[r] ? -1 * a : 0);
}
throw new Error("Unsupported sort type");
}
function zd(t, e) {
if (Array.isArray(e))
return t.slice(
e[0],
e[1] !== void 0 ? e[1] + 1 : void 0
);
throw new Error("Unsupported range type");
}
function Vd(t) {
const n = t.trim().replace(/[.*+?^${}()|[\]\\]/g, "\\$&").split(" ").map((i) => `(${i})`).join("|");
return new RegExp(n, "i");
}
var Jd = class {
constructor(e) {
p(this, "obj", null);
p(this, "database", null);
p(this, "name", null);
if (!(e instanceof Object))
throw new Error(
"Can't initialize a Single with anything except an object"
);
this.obj = Ft(e);
}
/**
* A Single may need to access other collections (e.g. for embedded
* references) This is done through a reference to the parent database.
*/
setDatabase(e) {
this.database = e;
}
setName(e) {
this.name = e;
}
// No need to embed Singles, since they are by their nature top-level
// No need to worry about remote references, (i.e. mysingleton_id=1) since
// it is by definition a singleton
_oneToManyEmbedder(e) {
return (r) => {
if (this.database == null)
throw new Error("Can't embed references without a database");
const a = this.database.collections[e];
if (!a)
throw new Error(
`Can't embed a non-existing collection ${e}`
);
return r[e] = a.getAll({
filter: (n) => r[e].indexOf(
n[a.identifierName]
) !== -1
}), r;
};
}
_manyToOneEmbedder(e) {
const r = `${e}s`, a = `${e}_id`;
return (n) => {
if (this.database == null)
throw new Error("Can't embed references without a database");
const s = this.database.collections[r];
if (!s)
throw new Error(
`Can't embed a non-existing collection ${e}`
);
try {
n[e] = s.getOne(
n[a]
);
} catch {
}
return n;
};
}
_itemEmbedder(e) {
const a = (Array.isArray(e) ? e : [e]).map(
(n) => n.endsWith("s") ? this._oneToManyEmbedder(n) : this._manyToOneEmbedder(n)
);
return (n) => a.reduce(
(s, i) => i(s),
n
);
}
getOnly(e) {
let r = this.obj;
return e != null && e.embed && this.database && (r = Object.assign({}, r), r = this._itemEmbedder(e.embed)(r)), r;
}
updateOnly(e) {
if (this.obj == null)
throw new Error("Can't update a non-existing object");
for (const r in e)
this.obj[r] = e[r];
return this.obj;
}
};
var Qd = class {
constructor({
data: e,
identifierName: r = "id",
getNewId: a
} = {}) {
p(this, "identifierName", "id");
p(this, "collections", {});
p(this, "singles", {});
p(this, "getNewId");
this.getNewId = a, this.identifierName = r, e && this.init(e);
}
/**
* Shortcut for adding several collections if identifierName is always the same
*/
init(e) {
for (const r in e) {
const a = e[r];
Array.isArray(a) ? this.addCollection(
r,
new ct({
items: a,
identifierName: this.identifierName,
getNewId: this.getNewId
})
) : this.addSingle(r, new Jd(a));
}
}
addCollection(e, r) {
this.collections[e] = r, r.setDatabase(this), r.setName(e);
}
getCollection(e) {
return this.collections[e];
}
getCollectionNames() {
return Object.keys(this.collections);
}
addSingle(e, r) {
this.singles[e] = r, r.setDatabase(this), r.setName(e);
}
getSingle(e) {
return this.singles[e];
}
getSingleNames() {
return Object.keys(this.singles);
}
/**
* @param {string} name
* @param {string} params As decoded from the query string, e.g. { sort: "name", filter: {enabled:true}, slice: [10, 20] }
*/
getCount(e, r) {
return this.collections[e].getCount(r);
}
/**
* @param {string} name
* @param {string} params As decoded from the query string, e.g. { sort: "name", filter: {enabled:true}, slice: [10, 20] }
*/
getAll(e, r) {
return this.collections[e].getAll(r);
}
getOne(e, r, a) {
return this.collections[e].getOne(r, a);
}
addOne(e, r) {
return Object.prototype.hasOwnProperty.call(this.collections, e) || this.addCollection(
e,
new ct({
items: [],
identifierName: this.identifierName,
getNewId: this.getNewId
})
), this.collections[e].addOne(r);
}
updateOne(e, r, a) {
return this.collections[e].updateOne(r, a);
}
removeOne(e, r) {
return this.collections[e].removeOne(r);
}
getOnly(e, r) {
return this.singles[e].getOnly();
}
updateOnly(e, r) {
return this.singles[e].updateOnly(r);
}
};
// node_modules/ra-data-fakerest/dist/esm/index.js
var __extends = /* @__PURE__ */ function() {
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
d2.__proto__ = b2;
} || function(d2, b2) {
for (var p2 in b2) if (Object.prototype.hasOwnProperty.call(b2, p2)) d2[p2] = b2[p2];
};
return extendStatics(d, b);
};
return function(d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() {
this.constructor = d;
}
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
}();
var __assign = function() {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p2 in s) if (Object.prototype.hasOwnProperty.call(s, p2))
t[p2] = s[p2];
}
return t;
};
return __assign.apply(this, arguments);
};
var __awaiter = function(thisArg, _arguments, P2, generator) {
function adopt(value) {
return value instanceof P2 ? value : new P2(function(resolve) {
resolve(value);
});
}
return new (P2 || (P2 = Promise))(function(resolve, reject) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e) {
reject(e);
}
}
function step(result) {
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = function(thisArg, body) {
var _ = { label: 0, sent: function() {
if (t[0] & 1) throw t[1];
return t[1];
}, trys: [], ops: [] }, f, y2, t, g2;
return g2 = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g2[Symbol.iterator] = function() {
return this;
}), g2;
function verb(n) {
return function(v) {
return step([n, v]);
};
}
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (g2 && (g2 = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y2 && (t = op[0] & 2 ? y2["return"] : op[0] ? y2["throw"] || ((t = y2["return"]) && t.call(y2), 0) : y2.next) && !(t = t.call(y2, op[1])).done) return t;
if (y2 = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0:
case 1:
t = op;
break;
case 4:
_.label++;
return { value: op[1], done: false };
case 5:
_.label++;
y2 = op[1];
op = [0];
continue;
case 7:
op = _.ops.pop();
_.trys.pop();
continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
_ = 0;
continue;
}
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
_.label = op[1];
break;
}
if (op[0] === 6 && _.label < t[1]) {
_.label = t[1];
t = op;
break;
}
if (t && _.label < t[2]) {
_.label = t[2];
_.ops.push(op);
break;
}
if (t[2]) _.ops.pop();
_.trys.pop();
continue;
}
op = body.call(thisArg, _);
} catch (e) {
op = [6, e];
y2 = 0;
} finally {
f = t = 0;
}
if (op[0] & 5) throw op[1];
return { value: op[0] ? op[1] : void 0, done: true };
}
};
var __rest = function(s, e) {
var t = {};
for (var p2 in s) if (Object.prototype.hasOwnProperty.call(s, p2) && e.indexOf(p2) < 0)
t[p2] = s[p2];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p2 = Object.getOwnPropertySymbols(s); i < p2.length; i++) {
if (e.indexOf(p2[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p2[i]))
t[p2[i]] = s[p2[i]];
}
return t;
};
function log(type, resource, params, response) {
if (console.group) {
console.groupCollapsed(type, resource, JSON.stringify(params));
console.log(response);
console.groupEnd();
} else {
console.log("FakeRest request ", type, resource, params);
console.log("FakeRest response", response);
}
}
function delayed(response, delay) {
return delay ? new Promise(function(resolve) {
setTimeout(function() {
return resolve(response);
}, delay);
}) : response;
}
var esm_default = function(data, loggingEnabled, delay) {
if (loggingEnabled === void 0) {
loggingEnabled = false;
}
var database = new Qd({ data });
if (typeof window !== "undefined") {
window._database = database;
}
function getResponse(type, resource, params) {
var _a2;
var _b, _c2, _d2, _e2, _f2, _g, _h, _j, _k, _l2, _m, _o2, _p, _q, _r2, _s2, _t2, _u2;
switch (type) {
case "getList": {
var _v = params.pagination, page = _v.page, perPage = _v.perPage;
var _w = params.sort, field = _w.field, order = _w.order;
var query = {
sort: [field, order],
range: [(page - 1) * perPage, page * perPage - 1],
filter: params.filter,
embed: getEmbedParam((_b = params.meta) === null || _b === void 0 ? void 0 : _b.embed, (_c2 = params.meta) === null || _c2 === void 0 ? void 0 : _c2.prefetch)
};
var data_1 = database.getAll(resource, query);
var prefetched = getPrefetchedData(data_1, (_d2 = params.meta) === null || _d2 === void 0 ? void 0 : _d2.prefetch);
return delayed({
data: removePrefetchedData(data_1, (_e2 = params.meta) === null || _e2 === void 0 ? void 0 : _e2.prefetch),
total: database.getCount(resource, {
filter: params.filter
}),
meta: ((_f2 = params.meta) === null || _f2 === void 0 ? void 0 : _f2.prefetch) ? { prefetched } : void 0
}, delay);
}
case "getOne": {
var data_2 = database.getOne(resource, params.id, __assign(__assign({}, params), { embed: getEmbedParam((_g = params.meta) === null || _g === void 0 ? void 0 : _g.embed, (_h = params.meta) === null || _h === void 0 ? void 0 : _h.prefetch) }));
var prefetched = getPrefetchedData(data_2, (_j = params.meta) === null || _j === void 0 ? void 0 : _j.prefetch);
return delayed({
data: removePrefetchedData(data_2, (_k = params.meta) === null || _k === void 0 ? void 0 : _k.prefetch),
meta: ((_l2 = params.meta) === null || _l2 === void 0 ? void 0 : _l2.prefetch) ? { prefetched } : void 0
}, delay);
}
case "getMany": {
var data_3 = params.ids.map(function(id2) {
var _a3, _b2;
return database.getOne(resource, id2, __assign(__assign({}, params), { embed: getEmbedParam((_a3 = params.meta) === null || _a3 === void 0 ? void 0 : _a3.embed, (_b2 = params.meta) === null || _b2 === void 0 ? void 0 : _b2.prefetch) }));
});
var prefetched = getPrefetchedData(data_3, (_m = params.meta) === null || _m === void 0 ? void 0 : _m.prefetch);
return delayed({
data: removePrefetchedData(data_3, (_o2 = params.meta) === null || _o2 === void 0 ? void 0 : _o2.prefetch),
meta: ((_p = params.meta) === null || _p === void 0 ? void 0 : _p.prefetch) ? { prefetched } : void 0
}, delay);
}
case "getManyReference": {
var _x = params.pagination, page = _x.page, perPage = _x.perPage;
var _y = params.sort, field = _y.field, order = _y.order;
var query = {
sort: [field, order],
range: [(page - 1) * perPage, page * perPage - 1],
filter: __assign(__assign({}, params.filter), (_a2 = {}, _a2[params.target] = params.id, _a2)),
embed: getEmbedParam((_q = params.meta) === null || _q === void 0 ? void 0 : _q.embed, (_r2 = params.meta) === null || _r2 === void 0 ? void 0 : _r2.prefetch)
};
var data_4 = database.getAll(resource, query);
var prefetched = getPrefetchedData(data_4, (_s2 = params.meta) === null || _s2 === void 0 ? void 0 : _s2.prefetch);
return delayed({
data: removePrefetchedData(data_4, (_t2 = params.meta) === null || _t2 === void 0 ? void 0 : _t2.prefetch),
total: database.getCount(resource, {
filter: query.filter
}),
meta: ((_u2 = params.meta) === null || _u2 === void 0 ? void 0 : _u2.prefetch) ? { prefetched } : void 0
}, delay);
}
case "update":
return delayed({
data: database.updateOne(resource, params.id, cleanupData(params.data))
}, delay);
case "updateMany":
params.ids.forEach(function(id2) {
return database.updateOne(resource, id2, cleanupData(params.data));
});
return delayed({ data: params.ids }, delay);
case "create":
return delayed({
data: database.addOne(resource, cleanupData(params.data))
}, delay);
case "delete":
return delayed({ data: database.removeOne(resource, params.id) }, delay);
case "deleteMany":
params.ids.forEach(function(id2) {
return database.removeOne(resource, id2);
});
return delayed({ data: params.ids }, delay);
default:
return false;
}
}
var handle = function(type, resource, params) {
return __awaiter(void 0, void 0, void 0, function() {
var collection, error, response, error_1, signal, paramsWithoutSignal;
return __generator(this, function(_a2) {
switch (_a2.label) {
case 0:
collection = database.getCollection(resource);
if (!collection && type !== "create") {
error = new UndefinedResourceError('Undefined collection "'.concat(resource, '"'));
error.code = 1;
throw error;
}
_a2.label = 1;
case 1:
_a2.trys.push([1, 3, , 4]);
return [4, getResponse(type, resource, params)];
case 2:
response = _a2.sent();
return [3, 4];
case 3:
error_1 = _a2.sent();
console.error(error_1);
throw error_1;
case 4:
if (loggingEnabled) {
signal = params.signal, paramsWithoutSignal = __rest(params, ["signal"]);
log(type, resource, paramsWithoutSignal, response);
}
return [2, response];
}
});
});
};
return {
getList: function(resource, params) {
return handle("getList", resource, params);
},
getOne: function(resource, params) {
return handle("getOne", resource, params);
},
getMany: function(resource, params) {
return handle("getMany", resource, params);
},
getManyReference: function(resource, params) {
return handle("getManyReference", resource, params);
},
update: function(resource, params) {
return handle("update", resource, params);
},
updateMany: function(resource, params) {
return handle("updateMany", resource, params);
},
create: function(resource, params) {
return handle("create", resource, params);
},
delete: function(resource, params) {
return handle("delete", resource, params);
},
deleteMany: function(resource, params) {
return handle("deleteMany", resource, params);
}
};
};
function getEmbedParam(embed, prefetch) {
if (!embed && !prefetch)
return;
var param = /* @__PURE__ */ new Set();
if (embed)
embed.forEach(function(e) {
return param.add(e);
});
if (prefetch)
prefetch.forEach(function(e) {
return param.add(e);
});
return Array.from(param);
}
var getPrefetchedData = function(data, prefetchParam) {
if (!prefetchParam)
return void 0;
var prefetched = {};
var dataArray = Array.isArray(data) ? data : [data];
prefetchParam.forEach(function(name) {
var resource = name.endsWith("s") ? name : "".concat(name, "s");
dataArray.forEach(function(record) {
if (!prefetched[resource]) {
prefetched[resource] = [];
}
if (prefetched[resource].some(function(r) {
return r.id === record[name].id;
})) {
return;
}
prefetched[resource].push(record[name]);
});
});
return prefetched;
};
var removePrefetchedData = function(data, prefetchParam) {
if (!prefetchParam)
return data;
var dataArray = Array.isArray(data) ? data : [data];
var newDataArray = dataArray.map(function(record) {
var newRecord = {};
for (var key in record) {
if (!prefetchParam.includes(key)) {
newRecord[key] = record[key];
}
}
return newRecord;
});
return Array.isArray(data) ? newDataArray : newDataArray[0];
};
var cleanupData = function(data) {
return JSON.parse(JSON.stringify(data));
};
var UndefinedResourceError = (
/** @class */
function(_super) {
__extends(UndefinedResourceError2, _super);
function UndefinedResourceError2() {
return _super !== null && _super.apply(this, arguments) || this;
}
return UndefinedResourceError2;
}(Error)
);
// node_modules/ra-data-local-forage/dist/esm/index.js
var import_pullAt = __toESM(require_pullAt());
var import_localforage = __toESM(require_localforage());
var __assign2 = function() {
__assign2 = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p2 in s) if (Object.prototype.hasOwnProperty.call(s, p2))
t[p2] = s[p2];
}
return t;
};
return __assign2.apply(this, arguments);
};
var __awaiter2 = function(thisArg, _arguments, P2, generator) {
function adopt(value) {
return value instanceof P2 ? value : new P2(function(resolve) {
resolve(value);
});
}
return new (P2 || (P2 = Promise))(function(resolve, reject) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e) {
reject(e);
}
}
function step(result) {
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator2 = function(thisArg, body) {
var _ = { label: 0, sent: function() {
if (t[0] & 1) throw t[1];
return t[1];
}, trys: [], ops: [] }, f, y2, t, g2;
return g2 = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g2[Symbol.iterator] = function() {
return this;
}), g2;
function verb(n) {
return function(v) {
return step([n, v]);
};
}
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (g2 && (g2 = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y2 && (t = op[0] & 2 ? y2["return"] : op[0] ? y2["throw"] || ((t = y2["return"]) && t.call(y2), 0) : y2.next) && !(t = t.call(y2, op[1])).done) return t;
if (y2 = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0:
case 1:
t = op;
break;
case 4:
_.label++;
return { value: op[1], done: false };
case 5:
_.label++;
y2 = op[1];
op = [0];
continue;
case 7:
op = _.ops.pop();
_.trys.pop();
continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
_ = 0;
continue;
}
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
_.label = op[1];
break;
}
if (op[0] === 6 && _.label < t[1]) {
_.label = t[1];
t = op;
break;
}
if (t && _.label < t[2]) {
_.label = t[2];
_.ops.push(op);
break;
}
if (t[2]) _.ops.pop();
_.trys.pop();
continue;
}
op = body.call(thisArg, _);
} catch (e) {
op = [6, e];
y2 = 0;
} finally {
f = t = 0;
}
if (op[0] & 5) throw op[1];
return { value: op[0] ? op[1] : void 0, done: true };
}
};
var esm_default2 = function(params) {
var _a2 = params || {}, _b = _a2.defaultData, defaultData = _b === void 0 ? {} : _b, _c2 = _a2.prefixLocalForageKey, prefixLocalForageKey = _c2 === void 0 ? "ra-data-local-forage-" : _c2, _d2 = _a2.loggingEnabled, loggingEnabled = _d2 === void 0 ? false : _d2;
var data;
var baseDataProvider;
var initializePromise;
var getLocalForageData = function() {
return __awaiter2(void 0, void 0, void 0, function() {
var keys, keyFiltered, localForageData, _i2, keyFiltered_1, key, keyWithoutPrefix, res;
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, import_localforage.default.keys()];
case 1:
keys = _a3.sent();
keyFiltered = keys.filter(function(key2) {
return key2.includes(prefixLocalForageKey);
});
if (keyFiltered.length === 0) {
return [2, void 0];
}
localForageData = {};
_i2 = 0, keyFiltered_1 = keyFiltered;
_a3.label = 2;
case 2:
if (!(_i2 < keyFiltered_1.length)) return [3, 5];
key = keyFiltered_1[_i2];
keyWithoutPrefix = key.replace(prefixLocalForageKey, "");
return [4, import_localforage.default.getItem(key)];
case 3:
res = _a3.sent();
localForageData[keyWithoutPrefix] = res || [];
_a3.label = 4;
case 4:
_i2++;
return [3, 2];
case 5:
return [2, localForageData];
}
});
});
};
var initialize = function() {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
if (!initializePromise) {
initializePromise = initializeProvider();
}
return [2, initializePromise];
});
});
};
var initializeProvider = function() {
return __awaiter2(void 0, void 0, void 0, function() {
var localForageData;
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, getLocalForageData()];
case 1:
localForageData = _a3.sent();
data = localForageData !== null && localForageData !== void 0 ? localForageData : defaultData;
baseDataProvider = esm_default(data, loggingEnabled);
return [
2
/*return*/
];
}
});
});
};
var updateLocalForage = function(resource) {
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
import_localforage.default.setItem("".concat(prefixLocalForageKey).concat(resource), data[resource]);
};
return {
// read methods are just proxies to FakeRest
getList: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
return [2, baseDataProvider.getList(resource, params2).catch(function(error) {
if (error.code === 1) {
return { data: [], total: 0 };
} else {
throw error;
}
})];
}
});
});
},
getOne: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
return [2, baseDataProvider.getOne(resource, params2)];
}
});
});
},
getMany: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
return [2, baseDataProvider.getMany(resource, params2)];
}
});
});
},
getManyReference: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
return [2, baseDataProvider.getManyReference(resource, params2).catch(function(error) {
if (error.code === 1) {
return { data: [], total: 0 };
} else {
throw error;
}
})];
}
});
});
},
// update methods need to persist changes in localForage
update: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
var index;
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
index = data[resource].findIndex(function(record) {
return record.id === params2.id;
});
data[resource][index] = __assign2(__assign2({}, data[resource][index]), params2.data);
updateLocalForage(resource);
return [2, baseDataProvider.update(resource, params2)];
}
});
});
},
updateMany: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
params2.ids.forEach(function(id2) {
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
var index = data[resource].findIndex(function(record) {
return record.id === id2;
});
data[resource][index] = __assign2(__assign2({}, data[resource][index]), params2.data);
});
updateLocalForage(resource);
return [2, baseDataProvider.updateMany(resource, params2)];
}
});
});
},
create: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
return [2, baseDataProvider.create(resource, params2).then(function(response) {
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
if (!data.hasOwnProperty(resource)) {
data[resource] = [];
}
data[resource].push(response.data);
updateLocalForage(resource);
return response;
})];
}
});
});
},
delete: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
var index;
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
index = data[resource].findIndex(function(record) {
return record.id === params2.id;
});
(0, import_pullAt.default)(data[resource], [index]);
updateLocalForage(resource);
return [2, baseDataProvider.delete(resource, params2)];
}
});
});
},
deleteMany: function(resource, params2) {
return __awaiter2(void 0, void 0, void 0, function() {
var indexes;
return __generator2(this, function(_a3) {
switch (_a3.label) {
case 0:
return [4, initialize()];
case 1:
_a3.sent();
if (!baseDataProvider) {
throw new Error("The dataProvider is not initialized.");
}
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
indexes = params2.ids.map(function(id2) {
if (!data) {
throw new Error("The dataProvider is not initialized.");
}
return data[resource].findIndex(function(record) {
return record.id === id2;
});
});
(0, import_pullAt.default)(data[resource], indexes);
updateLocalForage(resource);
return [2, baseDataProvider.deleteMany(resource, params2)];
}
});
});
}
};
};
export {
esm_default2 as default
};
//# sourceMappingURL=ra-data-local-forage.js.map