@converse/skeletor 3.1.0 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).skeletor={})}(this,function(t){var e=Object.prototype;function r(t){var r=t&&t.constructor;return t===("function"==typeof r&&r.prototype||e)}function n(t,e){return function(r){return t(e(r))}}var o=n(Object.keys,Object),i=Object.prototype.hasOwnProperty;function s(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}var a="object"==typeof global&&global&&global.Object===Object&&global,u="object"==typeof self&&self&&self.Object===Object&&self,c=a||u||Function("return this")(),l=c.Symbol,f=Object.prototype,h=f.hasOwnProperty,d=f.toString,v=l?l.toStringTag:void 0;var p=Object.prototype.toString;var y=l?l.toStringTag:void 0;function g(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":y&&y in Object(t)?function(t){var e=h.call(t,v),r=t[v];try{t[v]=void 0;var n=!0}catch(t){}var o=d.call(t);return n&&(e?t[v]=r:delete t[v]),o}(t):function(t){return p.call(t)}(t)}function b(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function m(t){if(!b(t))return!1;var e=g(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var _,w=c["__core-js_shared__"],j=(_=/[^.]+$/.exec(w&&w.keys&&w.keys.IE_PROTO||""))?"Symbol(src)_1."+_:"";var S=Function.prototype.toString;function I(t){if(null!=t){try{return S.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var O=/^\[object .+?Constructor\]$/,A=Function.prototype,E=Object.prototype,x=A.toString,k=E.hasOwnProperty,N=RegExp("^"+x.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function P(t){return!(!b(t)||(e=t,j&&j in e))&&(m(t)?N:O).test(I(t));var e}function R(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return P(r)?r:void 0}var z=R(c,"DataView"),B=R(c,"Map"),T=R(c,"Promise"),D=R(c,"Set"),C=R(c,"WeakMap"),M="[object Map]",F="[object Promise]",L="[object Set]",U="[object WeakMap]",W="[object DataView]",q=I(z),J=I(B),K=I(T),V=I(D),Q=I(C),$=g;function G(t){return null!=t&&"object"==typeof t}(z&&$(new z(new ArrayBuffer(1)))!=W||B&&$(new B)!=M||T&&$(T.resolve())!=F||D&&$(new D)!=L||C&&$(new C)!=U)&&($=function(t){var e=g(t),r="[object Object]"==e?t.constructor:void 0,n=r?I(r):"";if(n)switch(n){case q:return W;case J:return M;case K:return F;case V:return L;case Q:return U}return e});function H(t){return G(t)&&"[object Arguments]"==g(t)}var X=Object.prototype,Y=X.hasOwnProperty,Z=X.propertyIsEnumerable,tt=H(function(){return arguments}())?H:function(t){return G(t)&&Y.call(t,"callee")&&!Z.call(t,"callee")},et=Array.isArray;function rt(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function nt(t){return null!=t&&rt(t.length)&&!m(t)}var ot="object"==typeof t&&t&&!t.nodeType&&t,it=ot&&"object"==typeof module&&module&&!module.nodeType&&module,st=it&&it.exports===ot?c.Buffer:void 0,at=(st?st.isBuffer:void 0)||function(){return!1},ut={};function ct(t){return function(e){return t(e)}}ut["[object Float32Array]"]=ut["[object Float64Array]"]=ut["[object Int8Array]"]=ut["[object Int16Array]"]=ut["[object Int32Array]"]=ut["[object Uint8Array]"]=ut["[object Uint8ClampedArray]"]=ut["[object Uint16Array]"]=ut["[object Uint32Array]"]=!0,ut["[object Arguments]"]=ut["[object Array]"]=ut["[object ArrayBuffer]"]=ut["[object Boolean]"]=ut["[object DataView]"]=ut["[object Date]"]=ut["[object Error]"]=ut["[object Function]"]=ut["[object Map]"]=ut["[object Number]"]=ut["[object Object]"]=ut["[object RegExp]"]=ut["[object Set]"]=ut["[object String]"]=ut["[object WeakMap]"]=!1;var lt="object"==typeof t&&t&&!t.nodeType&&t,ft=lt&&"object"==typeof module&&module&&!module.nodeType&&module,ht=ft&&ft.exports===lt&&a.process,dt=function(){try{var t=ft&&ft.require&&ft.require("util").types;return t||ht&&ht.binding&&ht.binding("util")}catch(t){}}(),vt=dt&&dt.isTypedArray,pt=vt?ct(vt):function(t){return G(t)&&rt(t.length)&&!!ut[g(t)]},yt=Object.prototype.hasOwnProperty;function gt(t){if(null==t)return!0;if(nt(t)&&(et(t)||"string"==typeof t||"function"==typeof t.splice||at(t)||pt(t)||tt(t)))return!t.length;var e=$(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if(r(t))return!s(t).length;for(var n in t)if(yt.call(t,n))return!1;return!0}var bt=/^(?:0|[1-9]\d*)$/;function mt(t,e){var r=typeof t;return!!(e=e??9007199254740991)&&("number"==r||"symbol"!=r&&bt.test(t))&&t>-1&&t%1==0&&t<e}var _t=Object.prototype.hasOwnProperty;function wt(t,e){var r=et(t),n=!r&&tt(t),o=!r&&!n&&at(t),i=!r&&!n&&!o&&pt(t),s=r||n||o||i,a=s?function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}(t.length,String):[],u=a.length;for(var c in t)!e&&!_t.call(t,c)||s&&("length"==c||o&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||mt(c,u))||a.push(c);return a}function jt(t){return nt(t)?wt(t):s(t)}function St(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r<n;)o[r]=e(t[r],r,t);return o}function It(t){return"symbol"==typeof t||G(t)&&"[object Symbol]"==g(t)}var Ot=l?l.prototype:void 0,At=Ot?Ot.toString:void 0;function Et(t){if("string"==typeof t)return t;if(et(t))return St(t,Et)+"";if(It(t))return At?At.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function xt(t){return null==t?"":Et(t)}var kt=0;function Nt(t){var e=++kt;return xt(t)+e}var Pt=/\s/;var Rt=/^\s+/;function zt(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&Pt.test(t.charAt(e)););return e}(t)+1).replace(Rt,""):t}var Bt=/^[-+]0x[0-9a-f]+$/i,Tt=/^0b[01]+$/i,Dt=/^0o[0-7]+$/i,Ct=parseInt;var Mt=1/0;function Ft(t){return t?(t=function(t){if("number"==typeof t)return t;if(It(t))return NaN;if(b(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=b(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=zt(t);var r=Tt.test(t);return r||Dt.test(t)?Ct(t.slice(2),r?2:8):Bt.test(t)?NaN:+t}(t))===Mt||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function Lt(t,e){var r;if("function"!=typeof e)throw new TypeError("Expected a function");return t=function(t){var e=Ft(t),r=e%1;return e==e?r?e-r:e:0}(t),function(){return--t>0&&(r=e.apply(this,arguments)),t<=1&&(e=void 0),r}}const Ut=/\s+/;function Wt(t,e,r,n,o){let i,s=0;if(r&&"object"==typeof r){void 0!==n&&"context"in o&&void 0===o.context&&(o.context=n);for(i=Object.keys(r);s<i.length;s++)e=Wt(t,e,i[s],r[i[s]],o)}else if(r&&"string"==typeof r&&Ut.test(r))for(i=r.split(Ut);s<i.length;s++){const r=t(e,i[s],n,o);void 0!==r&&(e=r)}else e=t(e,r,n,o);return e}function qt(t,e,r,n){if(r){const o=t[e]||(t[e]=[]),i=n.context,s=n.ctx,a=n.listening;a&&a.count++,o.push({callback:r,context:i,ctx:i||s,listening:a})}return t}function Jt(t,e,r,n){if(!t)return;const o=n.context,i=n.listeners;let s,a=0;if(e||o||r){for(s=e?[e]:Object.keys(t);a<s.length;a++){const e=s[a],n=t[e];if(!n)continue;const i=[];for(let t=0;t<n.length;t++){const s=n[t];if(r&&r!==s.callback&&r!==s.callback._callback||o&&o!==s.context)i.push(s);else{const t=s.listening;t&&t.stop(e,r)}}i.length?t[e]=i:delete t[e]}return t}if(i)for(s=Object.keys(i);a<s.length;a++)i[s[a]].cleanup()}function Kt(t,e,r,n){if(r){const o=Lt(2,function(...t){n(e,o),r.apply(this,t)});t[e]=o,o._callback=r}return t}function Vt(t,e,r,n){if(t){const r=t[e];let o=t.all;r&&o&&(o=o.slice()),r&&Qt(r,n),o&&Qt(o,[e].concat(n))}return t}function Qt(t,e){let r,n=-1;const o=t.length,i=e[0],s=e[1],a=e[2];switch(e.length){case 0:for(;++n<o;)(r=t[n]).callback.call(r.ctx);return;case 1:for(;++n<o;)(r=t[n]).callback.call(r.ctx,i);return;case 2:for(;++n<o;)(r=t[n]).callback.call(r.ctx,i,s);return;case 3:for(;++n<o;)(r=t[n]).callback.call(r.ctx,i,s,a);return;default:for(;++n<o;)(r=t[n]).callback.apply(r.ctx,e);return}}class $t{constructor(t,e){this.id=t._listenId,this.listener=t,this.obj=e,this.interop=!0,this.count=0,this._events=void 0}start(t,e,r,n){const o={context:this.obj,ctx:r,listening:n};if(this._events=Wt(qt,this._events||{},t,e,o),n){(this.obj._listeners||(this.obj._listeners={}))[this.id]=this,this.interop=!1}return this}stop(t,e){let r;this.interop?(this._events=Wt(Jt,this._events,t,e,{context:void 0,listeners:void 0}),r=!this._events):(this.count--,r=0===this.count),r&&this.cleanup()}cleanup(){this.listener._listeningTo&&delete this.listener._listeningTo[this.obj._listenId],!this.interop&&this.obj._listeners&&delete this.obj._listeners[this.id]}}
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).skeletor={})}(this,function(t){var e=Object.prototype;function r(t){var r=t&&t.constructor;return t===("function"==typeof r&&r.prototype||e)}function n(t,e){return function(r){return t(e(r))}}var o=n(Object.keys,Object),i=Object.prototype.hasOwnProperty;function s(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}var a="object"==typeof global&&global&&global.Object===Object&&global,u="object"==typeof self&&self&&self.Object===Object&&self,c=a||u||Function("return this")(),l=c.Symbol,f=Object.prototype,h=f.hasOwnProperty,d=f.toString,v=l?l.toStringTag:void 0;var p=Object.prototype.toString;var y=l?l.toStringTag:void 0;function g(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":y&&y in Object(t)?function(t){var e=h.call(t,v),r=t[v];try{t[v]=void 0;var n=!0}catch(t){}var o=d.call(t);return n&&(e?t[v]=r:delete t[v]),o}(t):function(t){return p.call(t)}(t)}function b(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function m(t){if(!b(t))return!1;var e=g(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var _,w=c["__core-js_shared__"],j=(_=/[^.]+$/.exec(w&&w.keys&&w.keys.IE_PROTO||""))?"Symbol(src)_1."+_:"";var S=Function.prototype.toString;function I(t){if(null!=t){try{return S.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var O=/^\[object .+?Constructor\]$/,A=Function.prototype,E=Object.prototype,x=A.toString,k=E.hasOwnProperty,N=RegExp("^"+x.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function P(t){return!(!b(t)||(e=t,j&&j in e))&&(m(t)?N:O).test(I(t));var e}function R(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return P(r)?r:void 0}var z=R(c,"DataView"),B=R(c,"Map"),T=R(c,"Promise"),D=R(c,"Set"),C=R(c,"WeakMap"),M="[object Map]",F="[object Promise]",L="[object Set]",U="[object WeakMap]",W="[object DataView]",q=I(z),J=I(B),K=I(T),V=I(D),$=I(C),Q=g;function G(t){return null!=t&&"object"==typeof t}(z&&Q(new z(new ArrayBuffer(1)))!=W||B&&Q(new B)!=M||T&&Q(T.resolve())!=F||D&&Q(new D)!=L||C&&Q(new C)!=U)&&(Q=function(t){var e=g(t),r="[object Object]"==e?t.constructor:void 0,n=r?I(r):"";if(n)switch(n){case q:return W;case J:return M;case K:return F;case V:return L;case $:return U}return e});function H(t){return G(t)&&"[object Arguments]"==g(t)}var X=Object.prototype,Y=X.hasOwnProperty,Z=X.propertyIsEnumerable,tt=H(function(){return arguments}())?H:function(t){return G(t)&&Y.call(t,"callee")&&!Z.call(t,"callee")},et=Array.isArray;function rt(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function nt(t){return null!=t&&rt(t.length)&&!m(t)}var ot="object"==typeof t&&t&&!t.nodeType&&t,it=ot&&"object"==typeof module&&module&&!module.nodeType&&module,st=it&&it.exports===ot?c.Buffer:void 0,at=(st?st.isBuffer:void 0)||function(){return!1},ut={};function ct(t){return function(e){return t(e)}}ut["[object Float32Array]"]=ut["[object Float64Array]"]=ut["[object Int8Array]"]=ut["[object Int16Array]"]=ut["[object Int32Array]"]=ut["[object Uint8Array]"]=ut["[object Uint8ClampedArray]"]=ut["[object Uint16Array]"]=ut["[object Uint32Array]"]=!0,ut["[object Arguments]"]=ut["[object Array]"]=ut["[object ArrayBuffer]"]=ut["[object Boolean]"]=ut["[object DataView]"]=ut["[object Date]"]=ut["[object Error]"]=ut["[object Function]"]=ut["[object Map]"]=ut["[object Number]"]=ut["[object Object]"]=ut["[object RegExp]"]=ut["[object Set]"]=ut["[object String]"]=ut["[object WeakMap]"]=!1;var lt="object"==typeof t&&t&&!t.nodeType&&t,ft=lt&&"object"==typeof module&&module&&!module.nodeType&&module,ht=ft&&ft.exports===lt&&a.process,dt=function(){try{var t=ft&&ft.require&&ft.require("util").types;return t||ht&&ht.binding&&ht.binding("util")}catch(t){}}(),vt=dt&&dt.isTypedArray,pt=vt?ct(vt):function(t){return G(t)&&rt(t.length)&&!!ut[g(t)]},yt=Object.prototype.hasOwnProperty;function gt(t){if(null==t)return!0;if(nt(t)&&(et(t)||"string"==typeof t||"function"==typeof t.splice||at(t)||pt(t)||tt(t)))return!t.length;var e=Q(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if(r(t))return!s(t).length;for(var n in t)if(yt.call(t,n))return!1;return!0}var bt=/^(?:0|[1-9]\d*)$/;function mt(t,e){var r=typeof t;return!!(e=e??9007199254740991)&&("number"==r||"symbol"!=r&&bt.test(t))&&t>-1&&t%1==0&&t<e}var _t=Object.prototype.hasOwnProperty;function wt(t,e){var r=et(t),n=!r&&tt(t),o=!r&&!n&&at(t),i=!r&&!n&&!o&&pt(t),s=r||n||o||i,a=s?function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}(t.length,String):[],u=a.length;for(var c in t)!e&&!_t.call(t,c)||s&&("length"==c||o&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||mt(c,u))||a.push(c);return a}function jt(t){return nt(t)?wt(t):s(t)}function St(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r<n;)o[r]=e(t[r],r,t);return o}function It(t){return"symbol"==typeof t||G(t)&&"[object Symbol]"==g(t)}var Ot=l?l.prototype:void 0,At=Ot?Ot.toString:void 0;function Et(t){if("string"==typeof t)return t;if(et(t))return St(t,Et)+"";if(It(t))return At?At.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function xt(t){return null==t?"":Et(t)}var kt=0;function Nt(t){var e=++kt;return xt(t)+e}var Pt=/\s/;var Rt=/^\s+/;function zt(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&Pt.test(t.charAt(e)););return e}(t)+1).replace(Rt,""):t}var Bt=/^[-+]0x[0-9a-f]+$/i,Tt=/^0b[01]+$/i,Dt=/^0o[0-7]+$/i,Ct=parseInt;var Mt=1/0;function Ft(t){return t?(t=function(t){if("number"==typeof t)return t;if(It(t))return NaN;if(b(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=b(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=zt(t);var r=Tt.test(t);return r||Dt.test(t)?Ct(t.slice(2),r?2:8):Bt.test(t)?NaN:+t}(t))===Mt||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function Lt(t,e){var r;if("function"!=typeof e)throw new TypeError("Expected a function");return t=function(t){var e=Ft(t),r=e%1;return e==e?r?e-r:e:0}(t),function(){return--t>0&&(r=e.apply(this,arguments)),t<=1&&(e=void 0),r}}const Ut=/\s+/;function Wt(t,e,r,n,o){let i,s=0;if(r&&"object"==typeof r){void 0!==n&&"context"in o&&void 0===o.context&&(o.context=n);for(i=Object.keys(r);s<i.length;s++)e=Wt(t,e,i[s],r[i[s]],o)}else if(r&&"string"==typeof r&&Ut.test(r))for(i=r.split(Ut);s<i.length;s++){const r=t(e,i[s],n,o);void 0!==r&&(e=r)}else e=t(e,r,n,o);return e}function qt(t,e,r,n){if(r){const o=t[e]||(t[e]=[]),i=n.context,s=n.ctx,a=n.listening;a&&a.count++,o.push({callback:r,context:i,ctx:i||s,listening:a})}return t}function Jt(t,e,r,n){if(!t)return;const o=n.context,i=n.listeners;let s,a=0;if(e||o||r){for(s=e?[e]:Object.keys(t);a<s.length;a++){const e=s[a],n=t[e];if(!n)continue;const i=[];for(let t=0;t<n.length;t++){const s=n[t];if(r&&r!==s.callback&&r!==s.callback._callback||o&&o!==s.context)i.push(s);else{const t=s.listening;t&&t.stop(e,r)}}i.length?t[e]=i:delete t[e]}return t}if(i)for(s=Object.keys(i);a<s.length;a++)i[s[a]].cleanup()}function Kt(t,e,r,n){if(r){const o=Lt(2,function(...t){n(e,o),r.apply(this,t)});t[e]=o,o._callback=r}return t}function Vt(t,e,r,n){if(t){const r=t[e];let o=t.all;r&&o&&(o=o.slice()),r&&$t(r,n),o&&$t(o,[e].concat(n))}return t}function $t(t,e){let r,n=-1;const o=t.length,i=e[0],s=e[1],a=e[2];switch(e.length){case 0:for(;++n<o;)(r=t[n]).callback.call(r.ctx);return;case 1:for(;++n<o;)(r=t[n]).callback.call(r.ctx,i);return;case 2:for(;++n<o;)(r=t[n]).callback.call(r.ctx,i,s);return;case 3:for(;++n<o;)(r=t[n]).callback.call(r.ctx,i,s,a);return;default:for(;++n<o;)(r=t[n]).callback.apply(r.ctx,e);return}}class Qt{constructor(t,e){this.id=t._listenId,this.listener=t,this.obj=e,this.interop=!0,this.count=0,this._events=void 0}start(t,e,r,n){const o={context:this.obj,ctx:r,listening:n};if(this._events=Wt(qt,this._events||{},t,e,o),n){(this.obj._listeners||(this.obj._listeners={}))[this.id]=this,this.interop=!1}return this}stop(t,e){let r;this.interop?(this._events=Wt(Jt,this._events,t,e,{context:void 0,listeners:void 0}),r=!this._events):(this.count--,r=0===this.count),r&&this.cleanup()}cleanup(){this.listener._listeningTo&&delete this.listener._listeningTo[this.obj._listenId],!this.interop&&this.obj._listeners&&delete this.obj._listeners[this.id]}}
2
2
  /**
3
3
  * @copyright 2010-2019 Jeremy Ashkenas and DocumentCloud
4
4
  * @copyright 2023 JC Brand
5
- */let Gt;function Ht(t){return class extends t{on(t,e,r){if(this._events=Wt(qt,this._events||{},t,e,{context:r,ctx:this,listening:Gt}),Gt){(this._listeners||(this._listeners={}))[Gt.id]=Gt,Gt.interop=!1}return this}listenTo(t,e,r){if(!t)return this;const n=t._listenId||(t._listenId=Nt("l")),o=this._listeningTo||(this._listeningTo={});let i=Gt=o[n];i||(this._listenId||(this._listenId=Nt("l")),i=Gt=o[n]=new $t(this,t));const s=function(t,e,r,n){try{t.on(e,r,n)}catch(t){return t}}(t,e,r,this);if(Gt=void 0,s)throw s;return i.interop&&i.start(e,r,this,Gt),this}off(t,e,r){return this._events?(this._events=Wt(Jt,this._events,t,e,{context:r,listeners:this._listeners}),this):this}stopListening(t,e,r){const n=this._listeningTo;if(!n)return this;const o=t?[t._listenId]:jt(n);for(let t=0;t<o.length;t++){const i=n[o[t]];if(!i)break;i.obj.off(e,r,this),i.interop&&i.stop(e,r)}return gt(n)&&(this._listeningTo=void 0),this}once(t,e,r){const n=Wt(Kt,{},t,e,this.off.bind(this));return"string"==typeof t&&null==r&&(e=void 0),this.on(n,e,r)}listenToOnce(t,e,r){const n=Wt(Kt,{},e,r,this.stopListening.bind(this,t));return this.listenTo(t,n)}trigger(t,...e){return this._events?(Wt(Vt,this._events,t,void 0,e),this):this}subscribe(t,e,r){return this.on(t,e,r),()=>this.off(t,e,r)}}}const Xt=Ht(Object);function Yt(t,e,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof e?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(t):n?n.value:e.get(t)}function Zt(t,e,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof e?t!==e||!o:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(t,r):o?o.value=r:e.set(t,r),r}"function"==typeof SuppressedError&&SuppressedError;var te=/^~~local_forage_type~([^~]+)~/,ee=Object.prototype.toString;function re(t){var e=.75*t.length,r=t.length;"="===t[t.length-1]&&(e--,"="===t[t.length-2]&&e--);for(var n=new ArrayBuffer(e),o=new Uint8Array(n),i=0,s=0;i<r;i+=4){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i]),u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i+1]),c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i+2]),l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i+3]);o[s++]=a<<2|u>>4,o[s++]=(15&u)<<4|c>>2,o[s++]=(3&c)<<6|63&l}return n}function ne(t){for(var e=new Uint8Array(t),r="",n=0;n<e.length;n+=3)r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[e[n]>>2],r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(3&e[n])<<4|e[n+1]>>4],r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(15&e[n+1])<<2|e[n+2]>>6],r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[63&e[n+2]];return e.length%3==2?r=r.substring(0,r.length-1)+"=":e.length%3==1&&(r=r.substring(0,r.length-2)+"=="),r}function oe(t){var e,r;if(null===t||"object"!=typeof t||"isActiveClone"in t)return t;var n=t instanceof Date?new Date(t):t.constructor();try{for(var o=function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}(Object.keys(t)),i=o.next();!i.done;i=o.next()){var s=i.value;Object.prototype.hasOwnProperty.call(t,s)&&(t.isActiveClone=null,n[s]=oe(t[s]),delete t.isActiveClone)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return n}function ie(t,e){return(t.name||e.name)+"/"+(t.storeName||e.storeName)+"/"}function se(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function ae(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}function ue(t,e){var r=this;if(e=ae.apply(this,arguments),!(t="function"!=typeof t&&t||{}).name){var n=this.config();t.name=t.name||n.name,t.storeName=t.storeName||n.storeName}return{promise:t.name?new Promise(function(e){t.storeName?e(ie(t,r._defaultConfig)):e(t.name+"/")}):Promise.reject("Invalid arguments"),callback:e}}function ce(t){return"string"!=typeof t&&(console.warn(t+" used as a key, but it is not a string."),t=String(t)),t}var le={bufferToString:ne,deserialize:function(t){if("__lfsc__:"!==t.substring(0,9))return JSON.parse(t);var e,r=t.substring(13),n=t.substring(9,13);if("blob"===n&&te.test(r)){var o=r.match(te);e=o[1],r=r.substring(o[0].length)}var i=re(r);switch(n){case"arbf":return i;case"blob":
5
+ */let Gt;function Ht(t){return class extends t{on(t,e,r){if(this._events=Wt(qt,this._events||{},t,e,{context:r,ctx:this,listening:Gt}),Gt){(this._listeners||(this._listeners={}))[Gt.id]=Gt,Gt.interop=!1}return this}listenTo(t,e,r){if(!t)return this;const n=t._listenId||(t._listenId=Nt("l")),o=this._listeningTo||(this._listeningTo={});let i=Gt=o[n];i||(this._listenId||(this._listenId=Nt("l")),i=Gt=o[n]=new Qt(this,t));const s=function(t,e,r,n){try{t.on(e,r,n)}catch(t){return t}}(t,e,r,this);if(Gt=void 0,s)throw s;return i.interop&&i.start(e,r,this,Gt),this}off(t,e,r){return this._events?(this._events=Wt(Jt,this._events,t,e,{context:r,listeners:this._listeners}),this):this}stopListening(t,e,r){const n=this._listeningTo;if(!n)return this;const o=t?[t._listenId]:jt(n);for(let t=0;t<o.length;t++){const i=n[o[t]];if(!i)break;i.obj.off(e,r,this),i.interop&&i.stop(e,r)}return gt(n)&&(this._listeningTo=void 0),this}once(t,e,r){const n=Wt(Kt,{},t,e,this.off.bind(this));return"string"==typeof t&&null==r&&(e=void 0),this.on(n,e,r)}listenToOnce(t,e,r){const n=Wt(Kt,{},e,r,this.stopListening.bind(this,t));return this.listenTo(t,n)}trigger(t,...e){return this._events?(Wt(Vt,this._events,t,void 0,e),this):this}subscribe(t,e,r){return this.on(t,e,r),()=>this.off(t,e,r)}}}const Xt=Ht(Object);function Yt(t,e,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof e?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(t):n?n.value:e.get(t)}function Zt(t,e,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof e?t!==e||!o:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(t,r):o?o.value=r:e.set(t,r),r}"function"==typeof SuppressedError&&SuppressedError;var te=/^~~local_forage_type~([^~]+)~/,ee=Object.prototype.toString;function re(t){var e=.75*t.length,r=t.length;"="===t[t.length-1]&&(e--,"="===t[t.length-2]&&e--);for(var n=new ArrayBuffer(e),o=new Uint8Array(n),i=0,s=0;i<r;i+=4){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i]),u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i+1]),c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i+2]),l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(t[i+3]);o[s++]=a<<2|u>>4,o[s++]=(15&u)<<4|c>>2,o[s++]=(3&c)<<6|63&l}return n}function ne(t){for(var e=new Uint8Array(t),r="",n=0;n<e.length;n+=3)r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[e[n]>>2],r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(3&e[n])<<4|e[n+1]>>4],r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(15&e[n+1])<<2|e[n+2]>>6],r+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[63&e[n+2]];return e.length%3==2?r=r.substring(0,r.length-1)+"=":e.length%3==1&&(r=r.substring(0,r.length-2)+"=="),r}function oe(t){var e,r;if(null===t||"object"!=typeof t||"isActiveClone"in t)return t;var n=t instanceof Date?new Date(t):t.constructor();try{for(var o=function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}(Object.keys(t)),i=o.next();!i.done;i=o.next()){var s=i.value;Object.prototype.hasOwnProperty.call(t,s)&&(t.isActiveClone=null,n[s]=oe(t[s]),delete t.isActiveClone)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return n}function ie(t,e){return(t.name||e.name)+"/"+(t.storeName||e.storeName)+"/"}function se(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function ae(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}function ue(t,e){var r=this;if(e=ae.apply(this,arguments),!(t="function"!=typeof t&&t||{}).name){var n=this.config();t.name=t.name||n.name,t.storeName=t.storeName||n.storeName}return{promise:t.name?new Promise(function(e){t.storeName?e(ie(t,r._defaultConfig)):e(t.name+"/")}):Promise.reject("Invalid arguments"),callback:e}}function ce(t){return"string"!=typeof t&&(console.warn(t+" used as a key, but it is not a string."),t=String(t)),t}var le={bufferToString:ne,deserialize:function(t){if("__lfsc__:"!==t.substring(0,9))return JSON.parse(t);var e,r=t.substring(13),n=t.substring(9,13);if("blob"===n&&te.test(r)){var o=r.match(te);e=o[1],r=r.substring(o[0].length)}var i=re(r);switch(n){case"arbf":return i;case"blob":
6
6
  /*!
7
7
  MIT License
8
8
 
@@ -51,11 +51,11 @@ return function(t,e){t=t||[],e=e||{};try{return new Blob(t,e)}catch(o){if("TypeE
51
51
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
52
52
  SOFTWARE.
53
53
 
54
- */var ve=Object.freeze({__proto__:null,_driver:fe,_initStorage:function(t){var e=t?oe(t):{},r=ie(e,this._defaultConfig),n=de.resolve(r);return this._dbInfo=e,this._dbInfo.serializer=le,this._dbInfo.keyPrefix=r,this._dbInfo.mStore=n,Promise.resolve()},_support:!0,clear:function(t){var e=this,r=this.ready().then(function(){e._dbInfo.mStore.clear()});return se(r,t),r},dropInstance:function(t,e){var r=ue.apply(this,arguments),n=r.promise,o=r.callback;return se(n.then(function(t){de.resolve(t).drop()}),o),n},getItem:function(t,e){var r=this;t=ce(t);var n=this.ready().then(function(){var e=r._dbInfo.mStore.get(t);return null==e?null:r._dbInfo.serializer.deserialize(e)});return se(n,e),n},iterate:function(t,e){var r=this,n=this.ready().then(function(){for(var e=r._dbInfo.mStore,n=e.keys(),o=0;o<n.length;o++){var i=e.get(n[o]);if(i&&(i=r._dbInfo.serializer.deserialize(i)),void 0!==(i=t(i,n[o],o+1)))return i}});return se(n,e),n},key:function(t,e){var r=this,n=this.ready().then(function(){var e;try{void 0===(e=r._dbInfo.mStore.key(t))&&(e=null)}catch(t){e=null}return e});return se(n,e),n},keys:function(t){var e=this,r=this.ready().then(function(){return e._dbInfo.mStore.keys()});return se(r,t),r},length:function(t){var e=this.keys().then(function(t){return t.length});return se(e,t),e},removeItem:function(t,e){var r=this;t=ce(t);var n=this.ready().then(function(){r._dbInfo.mStore.rm(t)});return se(n,e),n},setItem:function(t,e,r){var n=this;t=ce(t);var o=this.ready().then(function(){void 0===e&&(e=null);var r=e;return new Promise(function(o,i){n._dbInfo.serializer.serialize(e,function(e,s){if(s)i(s);else try{n._dbInfo.mStore.set(t,e),o(r)}catch(t){i(t)}})})});return se(o,r),o}});function pe(t,e){return t===e||t!=t&&e!=e}function ye(t,e){for(var r=t.length;r--;)if(pe(t[r][0],e))return r;return-1}var ge=Array.prototype.splice;function be(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}be.prototype.clear=function(){this.__data__=[],this.size=0},be.prototype.delete=function(t){var e=this.__data__,r=ye(e,t);return!(r<0)&&(r==e.length-1?e.pop():ge.call(e,r,1),--this.size,!0)},be.prototype.get=function(t){var e=this.__data__,r=ye(e,t);return r<0?void 0:e[r][1]},be.prototype.has=function(t){return ye(this.__data__,t)>-1},be.prototype.set=function(t,e){var r=this.__data__,n=ye(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var me=R(Object,"create");var _e=Object.prototype.hasOwnProperty;var we=Object.prototype.hasOwnProperty;function je(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function Se(t,e){var r,n,o=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof e?"string":"hash"]:o.map}function Ie(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}je.prototype.clear=function(){this.__data__=me?me(null):{},this.size=0},je.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},je.prototype.get=function(t){var e=this.__data__;if(me){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return _e.call(e,t)?e[t]:void 0},je.prototype.has=function(t){var e=this.__data__;return me?void 0!==e[t]:we.call(e,t)},je.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=me&&void 0===e?"__lodash_hash_undefined__":e,this},Ie.prototype.clear=function(){this.size=0,this.__data__={hash:new je,map:new(B||be),string:new je}},Ie.prototype.delete=function(t){var e=Se(this,t).delete(t);return this.size-=e?1:0,e},Ie.prototype.get=function(t){return Se(this,t).get(t)},Ie.prototype.has=function(t){return Se(this,t).has(t)},Ie.prototype.set=function(t,e){var r=Se(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this};function Oe(t){var e=this.__data__=new be(t);this.size=e.size}Oe.prototype.clear=function(){this.__data__=new be,this.size=0},Oe.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Oe.prototype.get=function(t){return this.__data__.get(t)},Oe.prototype.has=function(t){return this.__data__.has(t)},Oe.prototype.set=function(t,e){var r=this.__data__;if(r instanceof be){var n=r.__data__;if(!B||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ie(n)}return r.set(t,e),this.size=r.size,this};var Ae=function(){try{var t=R(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();function Ee(t,e,r){"__proto__"==e&&Ae?Ae(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var xe=Object.prototype.hasOwnProperty;function ke(t,e,r){var n=t[e];xe.call(t,e)&&pe(n,r)&&(void 0!==r||e in t)||Ee(t,e,r)}function Ne(t,e,r,n){var o=!r;r||(r={});for(var i=-1,s=e.length;++i<s;){var a=e[i],u=void 0;void 0===u&&(u=t[a]),o?Ee(r,a,u):ke(r,a,u)}return r}var Pe=Object.prototype.hasOwnProperty;function Re(t){if(!b(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=r(t),n=[];for(var o in t)("constructor"!=o||!e&&Pe.call(t,o))&&n.push(o);return n}function ze(t){return nt(t)?wt(t,!0):Re(t)}var Be="object"==typeof t&&t&&!t.nodeType&&t,Te=Be&&"object"==typeof module&&module&&!module.nodeType&&module,De=Te&&Te.exports===Be?c.Buffer:void 0,Ce=De?De.allocUnsafe:void 0;function Me(t,e){if(e)return t.slice();var r=t.length,n=Ce?Ce(r):new t.constructor(r);return t.copy(n),n}function Fe(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}function Le(){return[]}var Ue=Object.prototype.propertyIsEnumerable,We=Object.getOwnPropertySymbols,qe=We?function(t){return null==t?[]:(t=Object(t),function(t,e){for(var r=-1,n=null==t?0:t.length,o=0,i=[];++r<n;){var s=t[r];e(s,r,t)&&(i[o++]=s)}return i}(We(t),function(e){return Ue.call(t,e)}))}:Le;function Je(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}var Ke=n(Object.getPrototypeOf,Object),Ve=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)Je(e,qe(t)),t=Ke(t);return e}:Le;function Qe(t,e,r){var n=e(t);return et(t)?n:Je(n,r(t))}function $e(t){return Qe(t,jt,qe)}function Ge(t){return Qe(t,ze,Ve)}var He=Object.prototype.hasOwnProperty;var Xe=c.Uint8Array;function Ye(t){var e=new t.constructor(t.byteLength);return new Xe(e).set(new Xe(t)),e}var Ze=/\w*$/;var tr=l?l.prototype:void 0,er=tr?tr.valueOf:void 0;function rr(t,e){var r=e?Ye(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function nr(t,e,r){var n,o=t.constructor;switch(e){case"[object ArrayBuffer]":return Ye(t);case"[object Boolean]":case"[object Date]":return new o(+t);case"[object DataView]":return function(t,e){var r=e?Ye(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return rr(t,r);case"[object Map]":case"[object Set]":return new o;case"[object Number]":case"[object String]":return new o(t);case"[object RegExp]":return function(t){var e=new t.constructor(t.source,Ze.exec(t));return e.lastIndex=t.lastIndex,e}(t);case"[object Symbol]":return n=t,er?Object(er.call(n)):{}}}var or=Object.create,ir=function(){function t(){}return function(e){if(!b(e))return{};if(or)return or(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();function sr(t){return"function"!=typeof t.constructor||r(t)?{}:ir(Ke(t))}var ar=dt&&dt.isMap,ur=ar?ct(ar):function(t){return G(t)&&"[object Map]"==$(t)};var cr=dt&&dt.isSet,lr=cr?ct(cr):function(t){return G(t)&&"[object Set]"==$(t)},fr="[object Arguments]",hr="[object Function]",dr="[object Object]",vr={};function pr(t,e,r,n,o,i){var s,a=1&e,u=2&e,c=4&e;if(r&&(s=o?r(t,n,o,i):r(t)),void 0!==s)return s;if(!b(t))return t;var l=et(t);if(l){if(s=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&He.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!a)return Fe(t,s)}else{var f=$(t),h=f==hr||"[object GeneratorFunction]"==f;if(at(t))return Me(t,a);if(f==dr||f==fr||h&&!o){if(s=u||h?{}:sr(t),!a)return u?function(t,e){return Ne(t,Ve(t),e)}(t,function(t,e){return t&&Ne(e,ze(e),t)}(s,t)):function(t,e){return Ne(t,qe(t),e)}(t,function(t,e){return t&&Ne(e,jt(e),t)}(s,t))}else{if(!vr[f])return o?t:{};s=nr(t,f,a)}}i||(i=new Oe);var d=i.get(t);if(d)return d;i.set(t,s),lr(t)?t.forEach(function(n){s.add(pr(n,e,r,n,t,i))}):ur(t)&&t.forEach(function(n,o){s.set(o,pr(n,e,r,o,t,i))});var v=l?void 0:(c?u?Ge:$e:u?ze:jt)(t);return function(t,e){for(var r=-1,n=null==t?0:t.length;++r<n&&!1!==e(t[r],r,t););}(v||t,function(n,o){v&&(n=t[o=n]),ke(s,o,pr(n,e,r,o,t,i))}),s}vr[fr]=vr["[object Array]"]=vr["[object ArrayBuffer]"]=vr["[object DataView]"]=vr["[object Boolean]"]=vr["[object Date]"]=vr["[object Float32Array]"]=vr["[object Float64Array]"]=vr["[object Int8Array]"]=vr["[object Int16Array]"]=vr["[object Int32Array]"]=vr["[object Map]"]=vr["[object Number]"]=vr[dr]=vr["[object RegExp]"]=vr["[object Set]"]=vr["[object String]"]=vr["[object Symbol]"]=vr["[object Uint8Array]"]=vr["[object Uint8ClampedArray]"]=vr["[object Uint16Array]"]=vr["[object Uint32Array]"]=!0,vr["[object Error]"]=vr[hr]=vr["[object WeakMap]"]=!1;function yr(t){return"string"==typeof t||!et(t)&&G(t)&&"[object String]"==g(t)}var gr="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function br(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function mr(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _r,wr={exports:{}};
54
+ */var ve=Object.freeze({__proto__:null,_driver:fe,_initStorage:function(t){var e=t?oe(t):{},r=ie(e,this._defaultConfig),n=de.resolve(r);return this._dbInfo=e,this._dbInfo.serializer=le,this._dbInfo.keyPrefix=r,this._dbInfo.mStore=n,Promise.resolve()},_support:!0,clear:function(t){var e=this,r=this.ready().then(function(){e._dbInfo.mStore.clear()});return se(r,t),r},dropInstance:function(t,e){var r=ue.apply(this,arguments),n=r.promise,o=r.callback;return se(n.then(function(t){de.resolve(t).drop()}),o),n},getItem:function(t,e){var r=this;t=ce(t);var n=this.ready().then(function(){var e=r._dbInfo.mStore.get(t);return null==e?null:r._dbInfo.serializer.deserialize(e)});return se(n,e),n},iterate:function(t,e){var r=this,n=this.ready().then(function(){for(var e=r._dbInfo.mStore,n=e.keys(),o=0;o<n.length;o++){var i=e.get(n[o]);if(i&&(i=r._dbInfo.serializer.deserialize(i)),void 0!==(i=t(i,n[o],o+1)))return i}});return se(n,e),n},key:function(t,e){var r=this,n=this.ready().then(function(){var e;try{void 0===(e=r._dbInfo.mStore.key(t))&&(e=null)}catch(t){e=null}return e});return se(n,e),n},keys:function(t){var e=this,r=this.ready().then(function(){return e._dbInfo.mStore.keys()});return se(r,t),r},length:function(t){var e=this.keys().then(function(t){return t.length});return se(e,t),e},removeItem:function(t,e){var r=this;t=ce(t);var n=this.ready().then(function(){r._dbInfo.mStore.rm(t)});return se(n,e),n},setItem:function(t,e,r){var n=this;t=ce(t);var o=this.ready().then(function(){void 0===e&&(e=null);var r=e;return new Promise(function(o,i){n._dbInfo.serializer.serialize(e,function(e,s){if(s)i(s);else try{n._dbInfo.mStore.set(t,e),o(r)}catch(t){i(t)}})})});return se(o,r),o}});function pe(t,e){return t===e||t!=t&&e!=e}function ye(t,e){for(var r=t.length;r--;)if(pe(t[r][0],e))return r;return-1}var ge=Array.prototype.splice;function be(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}be.prototype.clear=function(){this.__data__=[],this.size=0},be.prototype.delete=function(t){var e=this.__data__,r=ye(e,t);return!(r<0)&&(r==e.length-1?e.pop():ge.call(e,r,1),--this.size,!0)},be.prototype.get=function(t){var e=this.__data__,r=ye(e,t);return r<0?void 0:e[r][1]},be.prototype.has=function(t){return ye(this.__data__,t)>-1},be.prototype.set=function(t,e){var r=this.__data__,n=ye(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var me=R(Object,"create");var _e=Object.prototype.hasOwnProperty;var we=Object.prototype.hasOwnProperty;function je(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function Se(t,e){var r,n,o=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof e?"string":"hash"]:o.map}function Ie(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}je.prototype.clear=function(){this.__data__=me?me(null):{},this.size=0},je.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},je.prototype.get=function(t){var e=this.__data__;if(me){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return _e.call(e,t)?e[t]:void 0},je.prototype.has=function(t){var e=this.__data__;return me?void 0!==e[t]:we.call(e,t)},je.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=me&&void 0===e?"__lodash_hash_undefined__":e,this},Ie.prototype.clear=function(){this.size=0,this.__data__={hash:new je,map:new(B||be),string:new je}},Ie.prototype.delete=function(t){var e=Se(this,t).delete(t);return this.size-=e?1:0,e},Ie.prototype.get=function(t){return Se(this,t).get(t)},Ie.prototype.has=function(t){return Se(this,t).has(t)},Ie.prototype.set=function(t,e){var r=Se(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this};function Oe(t){var e=this.__data__=new be(t);this.size=e.size}Oe.prototype.clear=function(){this.__data__=new be,this.size=0},Oe.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Oe.prototype.get=function(t){return this.__data__.get(t)},Oe.prototype.has=function(t){return this.__data__.has(t)},Oe.prototype.set=function(t,e){var r=this.__data__;if(r instanceof be){var n=r.__data__;if(!B||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ie(n)}return r.set(t,e),this.size=r.size,this};var Ae=function(){try{var t=R(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();function Ee(t,e,r){"__proto__"==e&&Ae?Ae(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var xe=Object.prototype.hasOwnProperty;function ke(t,e,r){var n=t[e];xe.call(t,e)&&pe(n,r)&&(void 0!==r||e in t)||Ee(t,e,r)}function Ne(t,e,r,n){var o=!r;r||(r={});for(var i=-1,s=e.length;++i<s;){var a=e[i],u=void 0;void 0===u&&(u=t[a]),o?Ee(r,a,u):ke(r,a,u)}return r}var Pe=Object.prototype.hasOwnProperty;function Re(t){if(!b(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=r(t),n=[];for(var o in t)("constructor"!=o||!e&&Pe.call(t,o))&&n.push(o);return n}function ze(t){return nt(t)?wt(t,!0):Re(t)}var Be="object"==typeof t&&t&&!t.nodeType&&t,Te=Be&&"object"==typeof module&&module&&!module.nodeType&&module,De=Te&&Te.exports===Be?c.Buffer:void 0,Ce=De?De.allocUnsafe:void 0;function Me(t,e){if(e)return t.slice();var r=t.length,n=Ce?Ce(r):new t.constructor(r);return t.copy(n),n}function Fe(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}function Le(){return[]}var Ue=Object.prototype.propertyIsEnumerable,We=Object.getOwnPropertySymbols,qe=We?function(t){return null==t?[]:(t=Object(t),function(t,e){for(var r=-1,n=null==t?0:t.length,o=0,i=[];++r<n;){var s=t[r];e(s,r,t)&&(i[o++]=s)}return i}(We(t),function(e){return Ue.call(t,e)}))}:Le;function Je(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}var Ke=n(Object.getPrototypeOf,Object),Ve=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)Je(e,qe(t)),t=Ke(t);return e}:Le;function $e(t,e,r){var n=e(t);return et(t)?n:Je(n,r(t))}function Qe(t){return $e(t,jt,qe)}function Ge(t){return $e(t,ze,Ve)}var He=Object.prototype.hasOwnProperty;var Xe=c.Uint8Array;function Ye(t){var e=new t.constructor(t.byteLength);return new Xe(e).set(new Xe(t)),e}var Ze=/\w*$/;var tr=l?l.prototype:void 0,er=tr?tr.valueOf:void 0;function rr(t,e){var r=e?Ye(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function nr(t,e,r){var n,o=t.constructor;switch(e){case"[object ArrayBuffer]":return Ye(t);case"[object Boolean]":case"[object Date]":return new o(+t);case"[object DataView]":return function(t,e){var r=e?Ye(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return rr(t,r);case"[object Map]":case"[object Set]":return new o;case"[object Number]":case"[object String]":return new o(t);case"[object RegExp]":return function(t){var e=new t.constructor(t.source,Ze.exec(t));return e.lastIndex=t.lastIndex,e}(t);case"[object Symbol]":return n=t,er?Object(er.call(n)):{}}}var or=Object.create,ir=function(){function t(){}return function(e){if(!b(e))return{};if(or)return or(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();function sr(t){return"function"!=typeof t.constructor||r(t)?{}:ir(Ke(t))}var ar=dt&&dt.isMap,ur=ar?ct(ar):function(t){return G(t)&&"[object Map]"==Q(t)};var cr=dt&&dt.isSet,lr=cr?ct(cr):function(t){return G(t)&&"[object Set]"==Q(t)},fr="[object Arguments]",hr="[object Function]",dr="[object Object]",vr={};function pr(t,e,r,n,o,i){var s,a=1&e,u=2&e,c=4&e;if(r&&(s=o?r(t,n,o,i):r(t)),void 0!==s)return s;if(!b(t))return t;var l=et(t);if(l){if(s=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&He.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!a)return Fe(t,s)}else{var f=Q(t),h=f==hr||"[object GeneratorFunction]"==f;if(at(t))return Me(t,a);if(f==dr||f==fr||h&&!o){if(s=u||h?{}:sr(t),!a)return u?function(t,e){return Ne(t,Ve(t),e)}(t,function(t,e){return t&&Ne(e,ze(e),t)}(s,t)):function(t,e){return Ne(t,qe(t),e)}(t,function(t,e){return t&&Ne(e,jt(e),t)}(s,t))}else{if(!vr[f])return o?t:{};s=nr(t,f,a)}}i||(i=new Oe);var d=i.get(t);if(d)return d;i.set(t,s),lr(t)?t.forEach(function(n){s.add(pr(n,e,r,n,t,i))}):ur(t)&&t.forEach(function(n,o){s.set(o,pr(n,e,r,o,t,i))});var v=l?void 0:(c?u?Ge:Qe:u?ze:jt)(t);return function(t,e){for(var r=-1,n=null==t?0:t.length;++r<n&&!1!==e(t[r],r,t););}(v||t,function(n,o){v&&(n=t[o=n]),ke(s,o,pr(n,e,r,o,t,i))}),s}vr[fr]=vr["[object Array]"]=vr["[object ArrayBuffer]"]=vr["[object DataView]"]=vr["[object Boolean]"]=vr["[object Date]"]=vr["[object Float32Array]"]=vr["[object Float64Array]"]=vr["[object Int8Array]"]=vr["[object Int16Array]"]=vr["[object Int32Array]"]=vr["[object Map]"]=vr["[object Number]"]=vr[dr]=vr["[object RegExp]"]=vr["[object Set]"]=vr["[object String]"]=vr["[object Symbol]"]=vr["[object Uint8Array]"]=vr["[object Uint8ClampedArray]"]=vr["[object Uint16Array]"]=vr["[object Uint32Array]"]=!0,vr["[object Error]"]=vr[hr]=vr["[object WeakMap]"]=!1;function yr(t){return"string"==typeof t||!et(t)&&G(t)&&"[object String]"==g(t)}var gr="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function br(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function mr(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _r,wr={exports:{}};
55
55
  /*!
56
56
  localForage -- Offline Storage, Improved
57
57
  Version 1.10.0
58
58
  https://localforage.github.io/localForage
59
59
  (c) 2013-2017 Mozilla, Apache License 2.0
60
- */function jr(){return _r||(_r=1,function(t){t.exports=function t(e,r,n){function o(s,a){if(!r[s]){if(!e[s]){if(!a&&mr)return mr(s);if(i)return i(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var c=r[s]={exports:{}};e[s][0].call(c.exports,function(t){var r=e[s][1][t];return o(r||t)},c,c.exports,t,e,r,n)}return r[s].exports}for(var i=mr,s=0;s<n.length;s++)o(n[s]);return o}({1:[function(t,e,r){(function(t){var r,n,o=t.MutationObserver||t.WebKitMutationObserver;if(o){var i=0,s=new o(l),a=t.document.createTextNode("");s.observe(a,{characterData:!0}),r=function(){a.data=i=++i%2}}else if(t.setImmediate||void 0===t.MessageChannel)r="document"in t&&"onreadystatechange"in t.document.createElement("script")?function(){var e=t.document.createElement("script");e.onreadystatechange=function(){l(),e.onreadystatechange=null,e.parentNode.removeChild(e),e=null},t.document.documentElement.appendChild(e)}:function(){setTimeout(l,0)};else{var u=new t.MessageChannel;u.port1.onmessage=l,r=function(){u.port2.postMessage(0)}}var c=[];function l(){var t,e;n=!0;for(var r=c.length;r;){for(e=c,c=[],t=-1;++t<r;)e[t]();r=c.length}n=!1}function f(t){1!==c.push(t)||n||r()}e.exports=f}).call(this,void 0!==gr?gr:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(t,e,r){var n=t(1);function o(){}var i={},s=["REJECTED"],a=["FULFILLED"],u=["PENDING"];function c(t){if("function"!=typeof t)throw new TypeError("resolver must be a function");this.state=u,this.queue=[],this.outcome=void 0,t!==o&&d(this,t)}function l(t,e,r){this.promise=t,"function"==typeof e&&(this.onFulfilled=e,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function f(t,e,r){n(function(){var n;try{n=e(r)}catch(e){return i.reject(t,e)}n===t?i.reject(t,new TypeError("Cannot resolve promise with itself")):i.resolve(t,n)})}function h(t){var e=t&&t.then;if(t&&("object"==typeof t||"function"==typeof t)&&"function"==typeof e)return function(){e.apply(t,arguments)}}function d(t,e){var r=!1;function n(e){r||(r=!0,i.reject(t,e))}function o(e){r||(r=!0,i.resolve(t,e))}function s(){e(o,n)}var a=v(s);"error"===a.status&&n(a.value)}function v(t,e){var r={};try{r.value=t(e),r.status="success"}catch(t){r.status="error",r.value=t}return r}function p(t){return t instanceof this?t:i.resolve(new this(o),t)}function y(t){var e=new this(o);return i.reject(e,t)}function g(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,n=!1;if(!r)return this.resolve([]);for(var s=new Array(r),a=0,u=-1,c=new this(o);++u<r;)l(t[u],u);return c;function l(t,o){function u(t){s[o]=t,++a!==r||n||(n=!0,i.resolve(c,s))}e.resolve(t).then(u,function(t){n||(n=!0,i.reject(c,t))})}}function b(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,n=!1;if(!r)return this.resolve([]);for(var s=-1,a=new this(o);++s<r;)u(t[s]);return a;function u(t){e.resolve(t).then(function(t){n||(n=!0,i.resolve(a,t))},function(t){n||(n=!0,i.reject(a,t))})}}e.exports=c,c.prototype.catch=function(t){return this.then(null,t)},c.prototype.then=function(t,e){if("function"!=typeof t&&this.state===a||"function"!=typeof e&&this.state===s)return this;var r=new this.constructor(o);return this.state!==u?f(r,this.state===a?t:e,this.outcome):this.queue.push(new l(r,t,e)),r},l.prototype.callFulfilled=function(t){i.resolve(this.promise,t)},l.prototype.otherCallFulfilled=function(t){f(this.promise,this.onFulfilled,t)},l.prototype.callRejected=function(t){i.reject(this.promise,t)},l.prototype.otherCallRejected=function(t){f(this.promise,this.onRejected,t)},i.resolve=function(t,e){var r=v(h,e);if("error"===r.status)return i.reject(t,r.value);var n=r.value;if(n)d(t,n);else{t.state=a,t.outcome=e;for(var o=-1,s=t.queue.length;++o<s;)t.queue[o].callFulfilled(e)}return t},i.reject=function(t,e){t.state=s,t.outcome=e;for(var r=-1,n=t.queue.length;++r<n;)t.queue[r].callRejected(e);return t},c.resolve=p,c.reject=y,c.all=g,c.race=b},{1:1}],3:[function(t,e,r){(function(e){"function"!=typeof e.Promise&&(e.Promise=t(2))}).call(this,void 0!==gr?gr:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2}],4:[function(t,e,r){var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(t){return}}var s=i();function a(){try{if(!s||!s.open)return!1;var t="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),e="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!t||e)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(t){return!1}}function u(t,e){t=t||[],e=e||{};try{return new Blob(t,e)}catch(o){if("TypeError"!==o.name)throw o;for(var r=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),n=0;n<t.length;n+=1)r.append(t[n]);return r.getBlob(e.type)}}"undefined"==typeof Promise&&t(3);var c=Promise;function l(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function f(t,e,r){"function"==typeof e&&t.then(e),"function"==typeof r&&t.catch(r)}function h(t){return"string"!=typeof t&&(console.warn(t+" used as a key, but it is not a string."),t=String(t)),t}function d(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}var v="local-forage-detect-blob-support",p=void 0,y={},g=Object.prototype.toString,b="readonly",m="readwrite";function _(t){for(var e=t.length,r=new ArrayBuffer(e),n=new Uint8Array(r),o=0;o<e;o++)n[o]=t.charCodeAt(o);return r}function w(t){return new c(function(e){var r=t.transaction(v,m),n=u([""]);r.objectStore(v).put(n,"key"),r.onabort=function(t){t.preventDefault(),t.stopPropagation(),e(!1)},r.oncomplete=function(){var t=navigator.userAgent.match(/Chrome\/(\d+)/),r=navigator.userAgent.match(/Edge\//);e(r||!t||parseInt(t[1],10)>=43)}}).catch(function(){return!1})}function j(t){return"boolean"==typeof p?c.resolve(p):w(t).then(function(t){return p=t})}function S(t){var e=y[t.name],r={};r.promise=new c(function(t,e){r.resolve=t,r.reject=e}),e.deferredOperations.push(r),e.dbReady?e.dbReady=e.dbReady.then(function(){return r.promise}):e.dbReady=r.promise}function I(t){var e=y[t.name].deferredOperations.pop();if(e)return e.resolve(),e.promise}function O(t,e){var r=y[t.name].deferredOperations.pop();if(r)return r.reject(e),r.promise}function A(t,e){return new c(function(r,n){if(y[t.name]=y[t.name]||D(),t.db){if(!e)return r(t.db);S(t),t.db.close()}var o=[t.name];e&&o.push(t.version);var i=s.open.apply(s,o);e&&(i.onupgradeneeded=function(e){var r=i.result;try{r.createObjectStore(t.storeName),e.oldVersion<=1&&r.createObjectStore(v)}catch(r){if("ConstraintError"!==r.name)throw r;console.warn('The database "'+t.name+'" has been upgraded from version '+e.oldVersion+" to version "+e.newVersion+', but the storage "'+t.storeName+'" already exists.')}}),i.onerror=function(t){t.preventDefault(),n(i.error)},i.onsuccess=function(){var e=i.result;e.onversionchange=function(t){t.target.close()},r(e),I(t)}})}function E(t){return A(t,!1)}function x(t){return A(t,!0)}function k(t,e){if(!t.db)return!0;var r=!t.db.objectStoreNames.contains(t.storeName),n=t.version<t.db.version,o=t.version>t.db.version;if(n&&(t.version!==e&&console.warn('The database "'+t.name+"\" can't be downgraded from version "+t.db.version+" to version "+t.version+"."),t.version=t.db.version),o||r){if(r){var i=t.db.version+1;i>t.version&&(t.version=i)}return!0}return!1}function N(t){return new c(function(e,r){var n=new FileReader;n.onerror=r,n.onloadend=function(r){var n=btoa(r.target.result||"");e({__local_forage_encoded_blob:!0,data:n,type:t.type})},n.readAsBinaryString(t)})}function P(t){return u([_(atob(t.data))],{type:t.type})}function R(t){return t&&t.__local_forage_encoded_blob}function z(t){var e=this,r=e._initReady().then(function(){var t=y[e._dbInfo.name];if(t&&t.dbReady)return t.dbReady});return f(r,t,t),r}function B(t){S(t);for(var e=y[t.name],r=e.forages,n=0;n<r.length;n++){var o=r[n];o._dbInfo.db&&(o._dbInfo.db.close(),o._dbInfo.db=null)}return t.db=null,E(t).then(function(e){return t.db=e,k(t)?x(t):e}).then(function(n){t.db=e.db=n;for(var o=0;o<r.length;o++)r[o]._dbInfo.db=n}).catch(function(e){throw O(t,e),e})}function T(t,e,r,n){void 0===n&&(n=1);try{var o=t.db.transaction(t.storeName,e);r(null,o)}catch(o){if(n>0&&(!t.db||"InvalidStateError"===o.name||"NotFoundError"===o.name))return c.resolve().then(function(){if(!t.db||"NotFoundError"===o.name&&!t.db.objectStoreNames.contains(t.storeName)&&t.version<=t.db.version)return t.db&&(t.version=t.db.version+1),x(t)}).then(function(){return B(t).then(function(){T(t,e,r,n-1)})}).catch(r);r(o)}}function D(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function C(t){var e=this,r={db:null};if(t)for(var n in t)r[n]=t[n];var o=y[r.name];o||(o=D(),y[r.name]=o),o.forages.push(e),e._initReady||(e._initReady=e.ready,e.ready=z);var i=[];function s(){return c.resolve()}for(var a=0;a<o.forages.length;a++){var u=o.forages[a];u!==e&&i.push(u._initReady().catch(s))}var l=o.forages.slice(0);return c.all(i).then(function(){return r.db=o.db,E(r)}).then(function(t){return r.db=t,k(r,e._defaultConfig.version)?x(r):t}).then(function(t){r.db=o.db=t,e._dbInfo=r;for(var n=0;n<l.length;n++){var i=l[n];i!==e&&(i._dbInfo.db=r.db,i._dbInfo.version=r.version)}})}function M(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){T(r._dbInfo,b,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName).get(t);s.onsuccess=function(){var t=s.result;void 0===t&&(t=null),R(t)&&(t=P(t)),e(t)},s.onerror=function(){n(s.error)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function F(t,e){var r=this,n=new c(function(e,n){r.ready().then(function(){T(r._dbInfo,b,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName).openCursor(),a=1;s.onsuccess=function(){var r=s.result;if(r){var n=r.value;R(n)&&(n=P(n));var o=t(n,r.key,a++);void 0!==o?e(o):r.continue()}else e()},s.onerror=function(){n(s.error)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function L(t,e,r){var n=this;t=h(t);var o=new c(function(r,o){var i;n.ready().then(function(){return i=n._dbInfo,"[object Blob]"===g.call(e)?j(i.db).then(function(t){return t?e:N(e)}):e}).then(function(e){T(n._dbInfo,m,function(i,s){if(i)return o(i);try{var a=s.objectStore(n._dbInfo.storeName);null===e&&(e=void 0);var u=a.put(e,t);s.oncomplete=function(){void 0===e&&(e=null),r(e)},s.onabort=s.onerror=function(){var t=u.error?u.error:u.transaction.error;o(t)}}catch(t){o(t)}})}).catch(o)});return l(o,r),o}function U(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){T(r._dbInfo,m,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName).delete(t);i.oncomplete=function(){e()},i.onerror=function(){n(s.error)},i.onabort=function(){var t=s.error?s.error:s.transaction.error;n(t)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function W(t){var e=this,r=new c(function(t,r){e.ready().then(function(){T(e._dbInfo,m,function(n,o){if(n)return r(n);try{var i=o.objectStore(e._dbInfo.storeName).clear();o.oncomplete=function(){t()},o.onabort=o.onerror=function(){var t=i.error?i.error:i.transaction.error;r(t)}}catch(t){r(t)}})}).catch(r)});return l(r,t),r}function q(t){var e=this,r=new c(function(t,r){e.ready().then(function(){T(e._dbInfo,b,function(n,o){if(n)return r(n);try{var i=o.objectStore(e._dbInfo.storeName).count();i.onsuccess=function(){t(i.result)},i.onerror=function(){r(i.error)}}catch(t){r(t)}})}).catch(r)});return l(r,t),r}function J(t,e){var r=this,n=new c(function(e,n){t<0?e(null):r.ready().then(function(){T(r._dbInfo,b,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName),a=!1,u=s.openKeyCursor();u.onsuccess=function(){var r=u.result;r?0===t||a?e(r.key):(a=!0,r.advance(t)):e(null)},u.onerror=function(){n(u.error)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function K(t){var e=this,r=new c(function(t,r){e.ready().then(function(){T(e._dbInfo,b,function(n,o){if(n)return r(n);try{var i=o.objectStore(e._dbInfo.storeName).openKeyCursor(),s=[];i.onsuccess=function(){var e=i.result;e?(s.push(e.key),e.continue()):t(s)},i.onerror=function(){r(i.error)}}catch(t){r(t)}})}).catch(r)});return l(r,t),r}function V(t,e){e=d.apply(this,arguments);var r=this.config();(t="function"!=typeof t&&t||{}).name||(t.name=t.name||r.name,t.storeName=t.storeName||r.storeName);var n,o=this;if(t.name){var i=t.name===r.name&&o._dbInfo.db?c.resolve(o._dbInfo.db):E(t).then(function(e){var r=y[t.name],n=r.forages;r.db=e;for(var o=0;o<n.length;o++)n[o]._dbInfo.db=e;return e});n=t.storeName?i.then(function(e){if(e.objectStoreNames.contains(t.storeName)){var r=e.version+1;S(t);var n=y[t.name],o=n.forages;e.close();for(var i=0;i<o.length;i++){var a=o[i];a._dbInfo.db=null,a._dbInfo.version=r}var u=new c(function(e,n){var o=s.open(t.name,r);o.onerror=function(t){o.result.close(),n(t)},o.onupgradeneeded=function(){o.result.deleteObjectStore(t.storeName)},o.onsuccess=function(){var t=o.result;t.close(),e(t)}});return u.then(function(t){n.db=t;for(var e=0;e<o.length;e++){var r=o[e];r._dbInfo.db=t,I(r._dbInfo)}}).catch(function(e){throw(O(t,e)||c.resolve()).catch(function(){}),e})}}):i.then(function(e){S(t);var r=y[t.name],n=r.forages;e.close();for(var o=0;o<n.length;o++)n[o]._dbInfo.db=null;var i=new c(function(e,r){var n=s.deleteDatabase(t.name);n.onerror=function(){var t=n.result;t&&t.close(),r(n.error)},n.onblocked=function(){console.warn('dropInstance blocked for database "'+t.name+'" until all open connections are closed')},n.onsuccess=function(){var t=n.result;t&&t.close(),e(t)}});return i.then(function(t){r.db=t;for(var e=0;e<n.length;e++)I(n[e]._dbInfo)}).catch(function(e){throw(O(t,e)||c.resolve()).catch(function(){}),e})})}else n=c.reject("Invalid arguments");return l(n,e),n}var Q={_driver:"asyncStorage",_initStorage:C,_support:a(),iterate:F,getItem:M,setItem:L,removeItem:U,clear:W,length:q,key:J,keys:K,dropInstance:V};function $(){return"function"==typeof openDatabase}var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",H="~~local_forage_type~",X=/^~~local_forage_type~([^~]+)~/,Y="__lfsc__:",Z=Y.length,tt="arbf",et="blob",rt="si08",nt="ui08",ot="uic8",it="si16",st="si32",at="ur16",ut="ui32",ct="fl32",lt="fl64",ft=Z+tt.length,ht=Object.prototype.toString;function dt(t){var e,r,n,o,i,s=.75*t.length,a=t.length,u=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var c=new ArrayBuffer(s),l=new Uint8Array(c);for(e=0;e<a;e+=4)r=G.indexOf(t[e]),n=G.indexOf(t[e+1]),o=G.indexOf(t[e+2]),i=G.indexOf(t[e+3]),l[u++]=r<<2|n>>4,l[u++]=(15&n)<<4|o>>2,l[u++]=(3&o)<<6|63&i;return c}function vt(t){var e,r=new Uint8Array(t),n="";for(e=0;e<r.length;e+=3)n+=G[r[e]>>2],n+=G[(3&r[e])<<4|r[e+1]>>4],n+=G[(15&r[e+1])<<2|r[e+2]>>6],n+=G[63&r[e+2]];return r.length%3==2?n=n.substring(0,n.length-1)+"=":r.length%3==1&&(n=n.substring(0,n.length-2)+"=="),n}function pt(t,e){var r="";if(t&&(r=ht.call(t)),t&&("[object ArrayBuffer]"===r||t.buffer&&"[object ArrayBuffer]"===ht.call(t.buffer))){var n,o=Y;t instanceof ArrayBuffer?(n=t,o+=tt):(n=t.buffer,"[object Int8Array]"===r?o+=rt:"[object Uint8Array]"===r?o+=nt:"[object Uint8ClampedArray]"===r?o+=ot:"[object Int16Array]"===r?o+=it:"[object Uint16Array]"===r?o+=at:"[object Int32Array]"===r?o+=st:"[object Uint32Array]"===r?o+=ut:"[object Float32Array]"===r?o+=ct:"[object Float64Array]"===r?o+=lt:e(new Error("Failed to get type for BinaryArray"))),e(o+vt(n))}else if("[object Blob]"===r){var i=new FileReader;i.onload=function(){var r=H+t.type+"~"+vt(this.result);e(Y+et+r)},i.readAsArrayBuffer(t)}else try{e(JSON.stringify(t))}catch(r){console.error("Couldn't convert value into a JSON string: ",t),e(null,r)}}function yt(t){if(t.substring(0,Z)!==Y)return JSON.parse(t);var e,r=t.substring(ft),n=t.substring(Z,ft);if(n===et&&X.test(r)){var o=r.match(X);e=o[1],r=r.substring(o[0].length)}var i=dt(r);switch(n){case tt:return i;case et:return u([i],{type:e});case rt:return new Int8Array(i);case nt:return new Uint8Array(i);case ot:return new Uint8ClampedArray(i);case it:return new Int16Array(i);case at:return new Uint16Array(i);case st:return new Int32Array(i);case ut:return new Uint32Array(i);case ct:return new Float32Array(i);case lt:return new Float64Array(i);default:throw new Error("Unkown type: "+n)}}var gt={serialize:pt,deserialize:yt,stringToBuffer:dt,bufferToString:vt};function bt(t,e,r,n){t.executeSql("CREATE TABLE IF NOT EXISTS "+e.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,n)}function mt(t){var e=this,r={db:null};if(t)for(var n in t)r[n]="string"!=typeof t[n]?t[n].toString():t[n];var o=new c(function(t,n){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(t){return n(t)}r.db.transaction(function(o){bt(o,r,function(){e._dbInfo=r,t()},function(t,e){n(e)})},n)});return r.serializer=gt,o}function _t(t,e,r,n,o,i){t.executeSql(r,n,o,function(t,s){s.code===s.SYNTAX_ERR?t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[e.storeName],function(t,a){a.rows.length?i(t,s):bt(t,e,function(){t.executeSql(r,n,o,i)},i)},i):i(t,s)},i)}function wt(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"SELECT * FROM "+o.storeName+" WHERE key = ? LIMIT 1",[t],function(t,r){var n=r.rows.length?r.rows.item(0).value:null;n&&(n=o.serializer.deserialize(n)),e(n)},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function jt(t,e){var r=this,n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"SELECT * FROM "+o.storeName,[],function(r,n){for(var i=n.rows,s=i.length,a=0;a<s;a++){var u=i.item(a),c=u.value;if(c&&(c=o.serializer.deserialize(c)),void 0!==(c=t(c,u.key,a+1)))return void e(c)}e()},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function St(t,e,r,n){var o=this;t=h(t);var i=new c(function(i,s){o.ready().then(function(){void 0===e&&(e=null);var a=e,u=o._dbInfo;u.serializer.serialize(e,function(e,c){c?s(c):u.db.transaction(function(r){_t(r,u,"INSERT OR REPLACE INTO "+u.storeName+" (key, value) VALUES (?, ?)",[t,e],function(){i(a)},function(t,e){s(e)})},function(e){if(e.code===e.QUOTA_ERR){if(n>0)return void i(St.apply(o,[t,a,r,n-1]));s(e)}})})}).catch(s)});return l(i,r),i}function It(t,e,r){return St.apply(this,[t,e,r,1])}function Ot(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"DELETE FROM "+o.storeName+" WHERE key = ?",[t],function(){e()},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function At(t){var e=this,r=new c(function(t,r){e.ready().then(function(){var n=e._dbInfo;n.db.transaction(function(e){_t(e,n,"DELETE FROM "+n.storeName,[],function(){t()},function(t,e){r(e)})})}).catch(r)});return l(r,t),r}function Et(t){var e=this,r=new c(function(t,r){e.ready().then(function(){var n=e._dbInfo;n.db.transaction(function(e){_t(e,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(e,r){var n=r.rows.item(0).c;t(n)},function(t,e){r(e)})})}).catch(r)});return l(r,t),r}function xt(t,e){var r=this,n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"SELECT key FROM "+o.storeName+" WHERE id = ? LIMIT 1",[t+1],function(t,r){var n=r.rows.length?r.rows.item(0).key:null;e(n)},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function kt(t){var e=this,r=new c(function(t,r){e.ready().then(function(){var n=e._dbInfo;n.db.transaction(function(e){_t(e,n,"SELECT key FROM "+n.storeName,[],function(e,r){for(var n=[],o=0;o<r.rows.length;o++)n.push(r.rows.item(o).key);t(n)},function(t,e){r(e)})})}).catch(r)});return l(r,t),r}function Nt(t){return new c(function(e,r){t.transaction(function(n){n.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(r,n){for(var o=[],i=0;i<n.rows.length;i++)o.push(n.rows.item(i).name);e({db:t,storeNames:o})},function(t,e){r(e)})},function(t){r(t)})})}function Pt(t,e){e=d.apply(this,arguments);var r=this.config();(t="function"!=typeof t&&t||{}).name||(t.name=t.name||r.name,t.storeName=t.storeName||r.storeName);var n,o=this;return l(n=t.name?new c(function(e){var n;n=t.name===r.name?o._dbInfo.db:openDatabase(t.name,"","",0),t.storeName?e({db:n,storeNames:[t.storeName]}):e(Nt(n))}).then(function(t){return new c(function(e,r){t.db.transaction(function(n){function o(t){return new c(function(e,r){n.executeSql("DROP TABLE IF EXISTS "+t,[],function(){e()},function(t,e){r(e)})})}for(var i=[],s=0,a=t.storeNames.length;s<a;s++)i.push(o(t.storeNames[s]));c.all(i).then(function(){e()}).catch(function(t){r(t)})},function(t){r(t)})})}):c.reject("Invalid arguments"),e),n}var Rt={_driver:"webSQLStorage",_initStorage:mt,_support:$(),iterate:jt,getItem:wt,setItem:It,removeItem:Ot,clear:At,length:Et,key:xt,keys:kt,dropInstance:Pt};function zt(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(t){return!1}}function Bt(t,e){var r=t.name+"/";return t.storeName!==e.storeName&&(r+=t.storeName+"/"),r}function Tt(){var t="_localforage_support_test";try{return localStorage.setItem(t,!0),localStorage.removeItem(t),!1}catch(t){return!0}}function Dt(){return!Tt()||localStorage.length>0}function Ct(t){var e=this,r={};if(t)for(var n in t)r[n]=t[n];return r.keyPrefix=Bt(t,e._defaultConfig),Dt()?(e._dbInfo=r,r.serializer=gt,c.resolve()):c.reject()}function Mt(t){var e=this,r=e.ready().then(function(){for(var t=e._dbInfo.keyPrefix,r=localStorage.length-1;r>=0;r--){var n=localStorage.key(r);0===n.indexOf(t)&&localStorage.removeItem(n)}});return l(r,t),r}function Ft(t,e){var r=this;t=h(t);var n=r.ready().then(function(){var e=r._dbInfo,n=localStorage.getItem(e.keyPrefix+t);return n&&(n=e.serializer.deserialize(n)),n});return l(n,e),n}function Lt(t,e){var r=this,n=r.ready().then(function(){for(var e=r._dbInfo,n=e.keyPrefix,o=n.length,i=localStorage.length,s=1,a=0;a<i;a++){var u=localStorage.key(a);if(0===u.indexOf(n)){var c=localStorage.getItem(u);if(c&&(c=e.serializer.deserialize(c)),void 0!==(c=t(c,u.substring(o),s++)))return c}}});return l(n,e),n}function Ut(t,e){var r=this,n=r.ready().then(function(){var e,n=r._dbInfo;try{e=localStorage.key(t)}catch(t){e=null}return e&&(e=e.substring(n.keyPrefix.length)),e});return l(n,e),n}function Wt(t){var e=this,r=e.ready().then(function(){for(var t=e._dbInfo,r=localStorage.length,n=[],o=0;o<r;o++){var i=localStorage.key(o);0===i.indexOf(t.keyPrefix)&&n.push(i.substring(t.keyPrefix.length))}return n});return l(r,t),r}function qt(t){var e=this.keys().then(function(t){return t.length});return l(e,t),e}function Jt(t,e){var r=this;t=h(t);var n=r.ready().then(function(){var e=r._dbInfo;localStorage.removeItem(e.keyPrefix+t)});return l(n,e),n}function Kt(t,e,r){var n=this;t=h(t);var o=n.ready().then(function(){void 0===e&&(e=null);var r=e;return new c(function(o,i){var s=n._dbInfo;s.serializer.serialize(e,function(e,n){if(n)i(n);else try{localStorage.setItem(s.keyPrefix+t,e),o(r)}catch(t){"QuotaExceededError"!==t.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==t.name||i(t),i(t)}})})});return l(o,r),o}function Vt(t,e){if(e=d.apply(this,arguments),!(t="function"!=typeof t&&t||{}).name){var r=this.config();t.name=t.name||r.name,t.storeName=t.storeName||r.storeName}var n,o=this;return n=t.name?new c(function(e){t.storeName?e(Bt(t,o._defaultConfig)):e(t.name+"/")}).then(function(t){for(var e=localStorage.length-1;e>=0;e--){var r=localStorage.key(e);0===r.indexOf(t)&&localStorage.removeItem(r)}}):c.reject("Invalid arguments"),l(n,e),n}var Qt={_driver:"localStorageWrapper",_initStorage:Ct,_support:zt(),iterate:Lt,getItem:Ft,setItem:Kt,removeItem:Jt,clear:Mt,length:qt,key:Ut,keys:Wt,dropInstance:Vt},$t=function(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)},Gt=function(t,e){for(var r=t.length,n=0;n<r;){if($t(t[n],e))return!0;n++}return!1},Ht=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},Xt={},Yt={},Zt={INDEXEDDB:Q,WEBSQL:Rt,LOCALSTORAGE:Qt},te=[Zt.INDEXEDDB._driver,Zt.WEBSQL._driver,Zt.LOCALSTORAGE._driver],ee=["dropInstance"],re=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(ee),ne={description:"",driver:te.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function oe(t,e){t[e]=function(){var r=arguments;return t.ready().then(function(){return t[e].apply(t,r)})}}function ie(){for(var t=1;t<arguments.length;t++){var e=arguments[t];if(e)for(var r in e)e.hasOwnProperty(r)&&(Ht(e[r])?arguments[0][r]=e[r].slice():arguments[0][r]=e[r])}return arguments[0]}var se=function(){function t(e){for(var r in o(this,t),Zt)if(Zt.hasOwnProperty(r)){var n=Zt[r],i=n._driver;this[r]=i,Xt[i]||this.defineDriver(n)}this._defaultConfig=ie({},ne),this._config=ie({},this._defaultConfig,e),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return t.prototype.config=function(t){if("object"===(void 0===t?"undefined":n(t))){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var e in t){if("storeName"===e&&(t[e]=t[e].replace(/\W/g,"_")),"version"===e&&"number"!=typeof t[e])return new Error("Database version must be a number.");this._config[e]=t[e]}return!("driver"in t)||!t.driver||this.setDriver(this._config.driver)}return"string"==typeof t?this._config[t]:this._config},t.prototype.defineDriver=function(t,e,r){var n=new c(function(e,r){try{var n=t._driver,o=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!t._driver)return void r(o);for(var i=re.concat("_initStorage"),s=0,a=i.length;s<a;s++){var u=i[s];if((!Gt(ee,u)||t[u])&&"function"!=typeof t[u])return void r(o)}var f=function(){for(var e=function(t){return function(){var e=new Error("Method "+t+" is not implemented by the current driver"),r=c.reject(e);return l(r,arguments[arguments.length-1]),r}},r=0,n=ee.length;r<n;r++){var o=ee[r];t[o]||(t[o]=e(o))}};f();var h=function(r){Xt[n]&&console.info("Redefining LocalForage driver: "+n),Xt[n]=t,Yt[n]=r,e()};"_support"in t?t._support&&"function"==typeof t._support?t._support().then(h,r):h(!!t._support):h(!0)}catch(t){r(t)}});return f(n,e,r),n},t.prototype.driver=function(){return this._driver||null},t.prototype.getDriver=function(t,e,r){var n=Xt[t]?c.resolve(Xt[t]):c.reject(new Error("Driver not found."));return f(n,e,r),n},t.prototype.getSerializer=function(t){var e=c.resolve(gt);return f(e,t),e},t.prototype.ready=function(t){var e=this,r=e._driverSet.then(function(){return null===e._ready&&(e._ready=e._initDriver()),e._ready});return f(r,t,t),r},t.prototype.setDriver=function(t,e,r){var n=this;Ht(t)||(t=[t]);var o=this._getSupportedDrivers(t);function i(){n._config.driver=n.driver()}function s(t){return n._extend(t),i(),n._ready=n._initStorage(n._config),n._ready}function a(t){return function(){var e=0;function r(){for(;e<t.length;){var o=t[e];return e++,n._dbInfo=null,n._ready=null,n.getDriver(o).then(s).catch(r)}i();var a=new Error("No available storage method found.");return n._driverSet=c.reject(a),n._driverSet}return r()}}var u=null!==this._driverSet?this._driverSet.catch(function(){return c.resolve()}):c.resolve();return this._driverSet=u.then(function(){var t=o[0];return n._dbInfo=null,n._ready=null,n.getDriver(t).then(function(t){n._driver=t._driver,i(),n._wrapLibraryMethodsWithReady(),n._initDriver=a(o)})}).catch(function(){i();var t=new Error("No available storage method found.");return n._driverSet=c.reject(t),n._driverSet}),f(this._driverSet,e,r),this._driverSet},t.prototype.supports=function(t){return!!Yt[t]},t.prototype._extend=function(t){ie(this,t)},t.prototype._getSupportedDrivers=function(t){for(var e=[],r=0,n=t.length;r<n;r++){var o=t[r];this.supports(o)&&e.push(o)}return e},t.prototype._wrapLibraryMethodsWithReady=function(){for(var t=0,e=re.length;t<e;t++)oe(this,re[t])},t.prototype.createInstance=function(e){return new t(e)},t}(),ae=new se;e.exports=ae},{3:3}]},{},[4])(4)}(wr)),wr.exports}var Sr=br(jr());function Ir(t,e,r){(void 0!==r&&!pe(t[e],r)||void 0===r&&!(e in t))&&Ee(t,e,r)}var Or=function(t,e,r){for(var n=-1,o=Object(t),i=r(t),s=i.length;s--;){var a=i[++n];if(!1===e(o[a],a,o))break}return t};var Ar=Function.prototype,Er=Object.prototype,xr=Ar.toString,kr=Er.hasOwnProperty,Nr=xr.call(Object);function Pr(t){if(!G(t)||"[object Object]"!=g(t))return!1;var e=Ke(t);if(null===e)return!0;var r=kr.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&xr.call(r)==Nr}function Rr(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}function zr(t,e,r,n,o,i,s){var a=Rr(t,r),u=Rr(e,r),c=s.get(u);if(c)Ir(t,r,c);else{var l,f=i?i(a,u,r+"",t,e,s):void 0,h=void 0===f;if(h){var d=et(u),v=!d&&at(u),p=!d&&!v&&pt(u);f=u,d||v||p?et(a)?f=a:G(l=a)&&nt(l)?f=Fe(a):v?(h=!1,f=Me(u,!0)):p?(h=!1,f=rr(u,!0)):f=[]:Pr(u)||tt(u)?(f=a,tt(a)?f=function(t){return Ne(t,ze(t))}(a):b(a)&&!m(a)||(f=sr(u))):h=!1}h&&(s.set(u,f),o(f,u,n,i,s),s.delete(u)),Ir(t,r,f)}}function Br(t,e,r,n,o){t!==e&&Or(e,function(i,s){if(o||(o=new Oe),b(i))zr(t,e,s,r,Br,n,o);else{var a=n?n(Rr(t,s),i,s+"",t,e,o):void 0;void 0===a&&(a=i),Ir(t,s,a)}},ze)}function Tr(t){return t}var Dr=Math.max;function Cr(t,e,r){return e=Dr(void 0===e?t.length-1:e,0),function(){for(var n=arguments,o=-1,i=Dr(n.length-e,0),s=Array(i);++o<i;)s[o]=n[e+o];o=-1;for(var a=Array(e+1);++o<e;)a[o]=n[o];return a[e]=r(s),function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}(t,this,a)}}function Mr(t){return function(){return t}}var Fr=Ae?function(t,e){return Ae(t,"toString",{configurable:!0,enumerable:!1,value:Mr(e),writable:!0})}:Tr,Lr=Date.now;var Ur,Wr,qr,Jr=(Ur=Fr,Wr=0,qr=0,function(){var t=Lr(),e=16-(t-qr);if(qr=t,e>0){if(++Wr>=800)return arguments[0]}else Wr=0;return Ur.apply(void 0,arguments)});function Kr(t,e){return Jr(Cr(t,e,Tr),t+"")}function Vr(t,e,r){if(!b(r))return!1;var n=typeof e;return!!("number"==n?nt(r)&&mt(e,r.length):"string"==n&&e in r)&&pe(r[e],t)}function Qr(t){return Kr(function(e,r){var n=-1,o=r.length,i=o>1?r[o-1]:void 0,s=o>2?r[2]:void 0;for(i=t.length>3&&"function"==typeof i?(o--,i):void 0,s&&Vr(r[0],r[1],s)&&(i=o<3?void 0:i,o=1),e=Object(e);++n<o;){var a=r[n];a&&t(e,a,n,i)}return e})}var $r=Qr(function(t,e,r){Br(t,e,r)}),Gr=Qr(function(t,e,r,n){Br(t,e,r,n)});function Hr(){let t,e=()=>{},r=()=>{};if("function"==typeof Promise.withResolvers){const{promise:n,resolve:o,reject:i}=Promise.withResolvers();t=n,e=o,r=i}else t=new Promise((t,n)=>{e=t,r=n});return Object.assign(t,{isResolved:!1,isPending:!0,isRejected:!1,resolve:e,reject:r}),t.then(e=>(t.isResolved=!0,t.isPending=!1,t.isRejected=!1,e),e=>{throw t.isResolved=!1,t.isPending=!1,t.isRejected=!0,e}),t}const Xr=Math.max,Yr=Math.min;function Zr(t){if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return isNaN(e)?0:e}return 0}function tn(t,e,r={}){let n,o,i,s,a,u,c=0,l=!1,f=r.promise?Hr():null;if("function"!=typeof t)throw new TypeError("Expected a function");function h(e){const i=n,a=o,u=f;return n=o=void 0,c=e,s=t.apply(a,i),r.promise&&(u.resolve(s),f=Hr()),r.promise?u:s}function d(t){const r=t-u;return void 0===u||r>=e||r<0||l&&t-c>=i}function v(){const t=Date.now();if(d(t))return p(t);a=setTimeout(v,function(t){const r=e-(t-u);return l?Yr(r,i-(t-c)):r}(t))}function p(t){return a=void 0,n?h(t):(n=o=void 0,r.promise?f:s)}function y(t,e){if(Array.isArray(t)&&Array.isArray(e))return r?.dedupeArrays?t.concat(e.filter(e=>-1===t.indexOf(e))):t.concat(e)}function g(){const t=Date.now(),i=d(t);var p;if(p=Array.from(arguments),n=n?.length?p.length?r?.concatArrays||r?.dedupeArrays?Gr(n,p,y):$r(n,p):n:p||[],o=this,u=t,i){if(void 0===a)return function(t){return c=t,a=setTimeout(v,e),r.promise?f:s}(u);if(l)return clearTimeout(a),a=setTimeout(v,e),h(u)}return void 0===a&&(a=setTimeout(v,e)),r.promise?f:s}return e=Zr(e)||0,function(t){const e=typeof t;return null!=t&&("object"===e||"function"===e)}(r)&&(l="maxWait"in r,i=l?Xr(Zr(r.maxWait)||0,e):i),g.cancel=function(){void 0!==a&&clearTimeout(a),c=0,n=u=o=a=void 0},g.flush=function(){return void 0===a?s:p(Date.now())},g}function en(t,e){e&&t.then(t=>e(null,t),t=>e(t))}function rn(t){return"string"!=typeof t&&(console.warn(`${t} used as a key, but it is not a string.`),t=String(t)),t}function nn(t,e){let r=t.name+"/";return t.storeName!==e.storeName&&(r+=t.storeName+"/"),r}const on={keyPrefix:"",serializer:{serialize:function(t,e){try{e(function(t){return JSON.stringify(t,(t,e)=>e instanceof Date?e.toISOString():e)}(t),null)}catch(t){e("",t)}},deserialize:function(t){return JSON.parse(t)}}};const sn={_driver:"sessionStorageWrapper",_initStorage:function(t){if(on.keyPrefix=nn(t,this._defaultConfig),t)for(const e in t)on[e]=t[e]},_support:function(){try{if(sessionStorage&&"setItem"in sessionStorage)return!0}catch(t){console.log(t)}return!1}(),iterate:function(t,e){const r=this.ready().then(function(){const e=on.keyPrefix,r=e.length,n=sessionStorage.length;let o=1;for(let i=0;i<n;i++){const n=sessionStorage.key(i);if(!n||0!==n.indexOf(e))continue;const s=sessionStorage.getItem(n),a=s?on.serializer.deserialize(s):s,u=t(a,n.substring(r),o++);if(void 0!==u)return u}});return en(r,e),r},getItem:function(t,e){t=rn(t);const r=this.ready().then(function(){const e=sessionStorage.getItem(on.keyPrefix+t);return e?on.serializer.deserialize(e):null});return en(r,e),r},setItem:async function(t,e,r){t=rn(t),await this.ready();const n=e=e??null;return new Promise((o,i)=>{on.serializer.serialize(e,(e,s)=>{if(s)return i(s),void en(Promise.reject(s),r);try{sessionStorage.setItem(on.keyPrefix+t,e),o(n),en(Promise.resolve(n),r)}catch(t){"QuotaExceededError"!==t.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==t.name||console.error("Your sessionStorage capacity is used up."),i(t),en(Promise.reject(t),r)}})})},removeItem:function(t,e){t=rn(t);const r=this.ready().then(function(){sessionStorage.removeItem(on.keyPrefix+t)});return en(r,e),r},clear:function(t){const e=this.ready().then(function(){const t=on.keyPrefix;for(let e=sessionStorage.length-1;e>=0;e--){const r=sessionStorage.key(e);r&&0===r.indexOf(t)&&sessionStorage.removeItem(r)}});return en(e,t),e},length:function(t){const e=this.keys().then(function(t){return t.length});return en(e,t),e},key:function(t,e){const r=this.ready().then(function(){let e;try{e=sessionStorage.key(t)}catch(t){e=null}return e&&(e=e.substring(on.keyPrefix.length)),e});return en(r,e),r},keys:function(t){const e=this.ready().then(function(){const t=sessionStorage.length,e=[];for(let r=0;r<t;r++){const t=sessionStorage.key(r);t&&0===t.indexOf(on.keyPrefix)&&e.push(t.substring(on.keyPrefix.length))}return e});return en(e,t),e},dropInstance:function(...t){const e=function(...t){if(t.length&&"function"==typeof t[t.length-1])return t[t.length-1]}(...t);let r="function"!=typeof t[0]&&t[0]||{};if(!r.name){const t=this.config();r.name=r.name||t.name,r.storeName=r.storeName||t.storeName}const n=this;let o;return o=r.name?new Promise(function(t){r.storeName?t(nn(r,n._defaultConfig)):t(`${r.name}/`)}).then(function(t){for(let e=sessionStorage.length-1;e>=0;e--){const r=sessionStorage.key(e);r&&0===r.indexOf(t)&&sessionStorage.removeItem(r)}}):Promise.reject(new Error("Invalid arguments")),en(o,e),o}};var an,un={exports:{}};var cn=(an||(an=1,function(t,e){!function(t,e){function r(t){return r.result?r.result:t&&"function"==typeof t.getSerializer?(r.result=t.getSerializer(),r.result):Promise.reject(new Error("localforage.getSerializer() was not available! localforage v1.4+ is required!"))}function n(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function o(t,e,r,n){function o(t,e){var r=t||e;return t&&"function"==typeof t||"string"!=typeof r||(t=function(t){return t[r]}),t}var i=[];if("[object Array]"===Object.prototype.toString.call(t)){e=o(e,"key"),r=o(r,"value");for(var s=0,a=t.length;s<a;s++){var u=t[s];i.push(n(e(u),r(u)))}}else for(var c in t)t.hasOwnProperty(c)&&i.push(n(c,t[c]));return i}function i(t,e,r,i){var s=this,a=s.ready().then(function(){return new Promise(function(n,i){var a,u=s._dbInfo,c=u.db.transaction(u.storeName,"readwrite"),l=c.objectStore(u.storeName);function f(t){var e=t.target||this;a=e.error||e.transaction.error,i(a)}c.oncomplete=function(){n(t)},c.onabort=c.onerror=function(t){i(a||t.target)},o(t,e,r,function(t,e){null===e&&(e=void 0),l.put(e,t).onerror=f})})});return n(a,i),a}function s(t,e,i,s){var a=this,u=new Promise(function(n,s){a.ready().then(function(){return r(a)}).then(function(r){var u=a._dbInfo;u.db.transaction(function(a){var c="INSERT OR REPLACE INTO "+u.storeName+" (key, value) VALUES (?, ?)",l=o(t,e,i,function(t,e){return new Promise(function(n,o){r.serialize(e,function(e,r){r?o(r):a.executeSql(c,[t,e],function(){n()},function(t,e){o(e)})})})});Promise.all(l).then(function(){n(t)},s)},function(t){s(t)})}).catch(s)});return n(u,s),u}function a(t,e,r,i){var s=this,a=o(t,e,r,function(t,e){return s.setItem(t,e)}),u=Promise.all(a);return n(u,i),u}function u(t,e,r,n){var o=this,u=o.driver();return u===o.INDEXEDDB?i.call(o,t,e,r,n):u===o.WEBSQL?s.call(o,t,e,r,n):a.call(o,t,e,r,n)}function c(t){var e=Object.getPrototypeOf(t);e&&(e.setItems=u,e.setItems.indexedDB=function(){return i.apply(this,arguments)},e.setItems.websql=function(){return s.apply(this,arguments)},e.setItems.generic=function(){return a.apply(this,arguments)})}var l=c(e="default"in e?e.default:e);t.setItemsGeneric=a,t.localforageSetItems=u,t.extendPrototype=c,t.extendPrototypeResult=l,Object.defineProperty(t,"__esModule",{value:!0})}(e,jr())}(0,un.exports)),un.exports);function ln(t){return ln.result?ln.result:t&&"function"==typeof t.getSerializer?(ln.result=t.getSerializer(),ln.result):Promise.reject(new Error("localforage.getSerializer() was not available! localforage v1.4+ is required!"))}function fn(t,e){return e&&t.then(function(t){e(null,t)},function(t){e(t)}),t}function hn(t,e){var r=this.getItem(t).then(function(e){return{key:t,value:e}});return fn(r,e),r}function dn(t){var e=this,r=new Promise(function(r,n){for(var o=[],i=0,s=t.length;i<s;i++)o.push(hn.call(e,t[i]));Promise.all(o).then(function(t){for(var e={},n=0,o=t.length;n<o;n++){var i=t[n];e[i.key]=i.value}r(e)}).catch(n)});return r}function vn(){var t={};return this.iterate(function(e,r){t[r]=e}).then(function(){return t})}var pn="undefined"!=typeof IDBKeyRange?IDBKeyRange:"undefined"!=typeof webkitIDBKeyRange?webkitIDBKeyRange:"undefined"!=typeof mozIDBKeyRange?mozIDBKeyRange:void 0;function yn(t){t=t.slice();var e=this;function r(t,e){return t<e?-1:t>e?1:0}var n=new Promise(function(n,o){e.ready().then(function(){var i,s=e._dbInfo,a=s.db.transaction(s.storeName,"readonly").objectStore(s.storeName),u=t.sort(r),c=pn.bound(t[0],t[t.length-1],!1,!1);if("getAll"in a)(i=a.getAll(c)).onsuccess=function(){var t=i.result;void 0===t&&(t=null),n(t)};else{i=a.openCursor(c);var l={},f=0;i.onsuccess=function(){var t=i.result;if(t){for(var e=t.key;e>u[f];)if(++f===u.length)return void n(l);if(e===u[f]){var r=t.value;void 0===r&&(r=null),l[e]=r,t.continue()}else t.continue(u[f])}else n(l)}}i.onerror=function(){o(i.error)}}).catch(o)});return n}function gn(t){var e=this,r=new Promise(function(r,n){e.ready().then(function(){return ln(e)}).then(function(o){var i=e._dbInfo;i.db.transaction(function(e){for(var s=new Array(t.length),a=0,u=t.length;a<u;a++)s[a]="?";e.executeSql("SELECT * FROM "+i.storeName+" WHERE (key IN ("+s.join(",")+"))",t,function(t,e){for(var n={},i=e.rows,s=0,a=i.length;s<a;s++){var u=i.item(s),c=u.value;c&&(c=o.deserialize(c)),n[u.key]=c}r(n)},function(t,e){n(e)})})}).catch(n)});return r}function bn(t,e){var r,n=this;if(arguments.length&&null!==t){var o=n.driver();r=o===n.INDEXEDDB?yn.apply(n,arguments):o===n.WEBSQL?gn.apply(n,arguments):dn.apply(n,arguments)}else r=vn.apply(n);return fn(r,e),r}function mn(t){var e=Object.getPrototypeOf(t);e&&(e.getItems=bn,e.getItems.indexedDB=function(){return yn.apply(this,arguments)},e.getItems.websql=function(){return gn.apply(this,arguments)},e.getItems.generic=function(){return dn.apply(this,arguments)})}mn(Sr);var _n=Object.prototype.hasOwnProperty;function wn(t,e){return null!=t&&_n.call(t,e)}var jn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Sn=/^\w*$/;function In(t,e){if(et(t))return!1;var r=typeof t;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=t&&!It(t))||(Sn.test(t)||!jn.test(t)||null!=e&&t in Object(e))}function On(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var n=arguments,o=e?e.apply(this,n):n[0],i=r.cache;if(i.has(o))return i.get(o);var s=t.apply(this,n);return r.cache=i.set(o,s)||i,s};return r.cache=new(On.Cache||Ie),r}On.Cache=Ie;var An=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,En=/\\(\\)?/g,xn=function(t){var e=On(t,function(t){return 500===r.size&&r.clear(),t}),r=e.cache;return e}(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(An,function(t,r,n,o){e.push(n?o.replace(En,"$1"):r||t)}),e});function kn(t,e){return et(t)?t:In(t,e)?[t]:xn(xt(t))}function Nn(t){if("string"==typeof t||It(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Pn(t,e,r){for(var n=-1,o=(e=kn(e,t)).length,i=!1;++n<o;){var s=Nn(e[n]);if(!(i=null!=t&&r(t,s)))break;t=t[s]}return i||++n!=o?i:!!(o=null==t?0:t.length)&&rt(o)&&mt(s,o)&&(et(t)||tt(t))}function Rn(t,e,r){var n=-1,o=(e=kn(e,t)).length;for(o||(o=1,t=void 0);++n<o;){var i=null==t?void 0:t[Nn(e[n])];void 0===i&&(n=o,i=r),t=m(i)?i.call(t):i}return t}function zn(){return(65536*(1+Math.random())|0).toString(16).substring(1)}function Bn(){const t={isResolved:!1,isPending:!0,isRejected:!1,resolve:null,reject:null},e=new Promise((e,r)=>{t.resolve=e,t.reject=r});return Object.assign(e,t),e.then(function(){e.isResolved=!0,e.isPending=!1,e.isRejected=!1},function(){e.isResolved=!1,e.isPending=!1,e.isRejected=!0}),e}function Tn(){throw new Error('A "url" property or function must be specified')}function Dn(t,e,r){const n=e.error;e.error=function(o){n&&n.call(e.context,t,o,e),t.trigger("error",t,o,e),r&&r.reject&&r.reject(o)}}const Cn={create:"POST",update:"PUT",patch:"PATCH",delete:"DELETE",read:"GET"},Mn=new WeakSet;function Fn(t){const e=t?.constructor;if(!e||Mn.has(e))return;Mn.add(e);const r=e.name;console.warn(`Skeletor: \`browserStorage\` is deprecated and will be removed in a future major version; use \`storage\` instead${r?` (on \`${r}\`)`:""}.`)}function Ln(t){if(!t)return;const e=Rn(t,"storage");if(null!=e)return e;const r=Rn(t,"browserStorage");return null!=r&&Fn(t),r}function Un(t){const e=Ln(t)||Ln(t.collection);return e?e.sync():Wn}function Wn(t,e,r={}){let n=r.data;null!=n||!e||"create"!==t&&"update"!==t&&"patch"!==t||(n=r.attrs||e.toJSON());const o={method:Cn[t],body:n?JSON.stringify(n):"",headers:{"Content-Type":"application/json"},success:r.success,error:r.error},i=r.url||Rn(e,"url")||Tn(),s=fetch(i,o);return r&&(r.xhr=s),e.trigger("request",e,s,{...o,xhr:s}),s}const qn=fe;Sr.defineDriver(ve),cn.extendPrototype(Sr),mn(Sr);const Jn=new Set,Kn=new WeakSet;class Vn{static register(t){Kn.has(t)||(Kn.add(t),Jn.add(new WeakRef(t)))}static flushAll(){for(const t of Jn){const e=t.deref();e?e.flush():Jn.delete(t)}}constructor(t,e,r=!1){if(this.storeReady=!1,this.name=t,"local"===e&&"undefined"!=typeof window&&!window.localStorage)throw new Error("Skeletor.storage: Environment does not support localStorage.");if("session"===e&&"undefined"!=typeof window&&!window.sessionStorage)throw new Error("Skeletor.storage: Environment does not support sessionStorage.");yr(e)?this.storeInitialized=this.initStore(e,r):(this.store=e,r&&(this.store.debouncedSetItems=tn(t=>this.store.setItems(t),50,{promise:!0})),this.storeInitialized=Promise.resolve()),this.storeInitialized.then(()=>this.storeReady=!0).catch(()=>{})}async initStore(t,e){if("session"===t)await Sr.setDriver(sn._driver);else if("local"===t)await Sr.config({driver:Sr.LOCALSTORAGE});else if("in_memory"===t)await Sr.config({driver:qn});else{if("node"===t){const{NodeSQLiteStorage:t}=await import("./drivers/nodeSQLiteStorage");return this.store=new t(this.name),void(e&&(this.store.debouncedSetItems=tn(t=>this.store.setItems(t),50,{promise:!0})))}if("indexed"!==t)throw new Error("Skeletor.storage: No storage type was specified")}this.store=Sr,e&&(this.store.debouncedSetItems=tn(t=>this.store.setItems(t),50,{promise:!0}))}flush(){this.store.debouncedSetItems&&"function"==typeof this.store.debouncedSetItems.flush&&this.store.debouncedSetItems.flush()}async clear(){await this.storeInitialized,await this.store.removeItem(this.name).catch(t=>console.error(t));const t=new RegExp(`^${this.name}-`),e=(await this.store.keys()).filter(e=>t.test(e));await Promise.all(e.map(t=>this.store.removeItem(t).catch(t=>console.error(t))))}sync(){const t=this;async function e(e,r,n){let o,i,s,a;const u=n.collection??r.collection;["patch","update"].includes(e)&&(a=pr(r.attributes,5)),t.storeReady||await t.storeInitialized;try{const i=r.attributes;switch(e){case"read":o=void 0!==r.id?await t.find(r):await t.findAll();break;case"create":o=await t.create(r,n);break;case"patch":case"update":n.wait&&(r.attributes=a),s=t.update(r),n.wait&&(r.attributes=i),o=await s;break;case"delete":o=await t.destroy(r,u)}}catch(e){const r=await t.getStorageSize();i=22===e.code&&0===r?"Private browsing is unsupported":e.message}if(o){if(n&&n.success){const t="read"===e?o:null;n.success(t,n)}}else i=i||"Record Not Found",n&&n.error&&n.error(i)}return e.__name__="localSync",e}removeCollectionReference(t,e){if(!e)return;const r=e.filter(e=>e.id!==t.id).map(t=>this.getItemName(t.id));return this.store.setItem(this.name,r)}addCollectionReference(t,e){if(!e)return;const r=e.map(t=>this.getItemName(t.id)),n=this.getItemName(t.id);return r.includes(n)||r.push(n),this.store.setItem(this.name,r)}getCollectionReferenceData(t){if(!t.collection)return{};const e=t.collection.map(t=>this.getItemName(t.id)),r=this.getItemName(t.id);e.includes(r)||e.push(r);const n={};return n[this.name]=e,n}async save(t){if(this.store.setItems){const e={};return e[this.getItemName(t.id)]=t.toJSON(),Object.assign(e,this.getCollectionReferenceData(t)),this.store.debouncedSetItems?this.store.debouncedSetItems(e):this.store.setItems(e)}{const e=this.getItemName(t.id),r=await this.store.setItem(e,t.toJSON());return await this.addCollectionReference(t,t.collection),r}}create(t,e){return t.id||(t.id=zn()+zn()+"-"+zn()+"-"+zn()+"-"+zn()+"-"+zn()+zn()+zn(),t.set(t.idAttribute,t.id,e)),this.save(t)}update(t){return this.save(t)}find(t){return this.store.getItem(this.getItemName(t.id))}async findAll(){const t=await this.store.getItem(this.name);if(t?.length){const e=await this.store.getItems(t);return Object.values(e)}return[]}async destroy(t,e){return await this.flush(),await this.store.removeItem(this.getItemName(t.id)),await this.removeCollectionReference(t,e),t}async getStorageSize(){return await this.store.length()}getItemName(t){return this.name+"-"+t}}Vn.sessionStorageInitialized=Sr.defineDriver(sn),Vn.localForage=Sr;function Qn(t){return pr(t,4)}function $n(t,e,r,n){for(var o=-1,i=null==t?0:t.length;++o<i;){var s=t[o];e(n,s,r(s),t)}return n}function Gn(t,e){return t&&Or(t,e,jt)}var Hn,Xn=(Hn=Gn,function(t,e){if(null==t)return t;if(!nt(t))return Hn(t,e);for(var r=t.length,n=-1,o=Object(t);++n<r&&!1!==e(o[n],n,o););return t});function Yn(t,e,r,n){return Xn(t,function(t,o,i){e(n,t,r(t),i)}),n}function Zn(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new Ie;++e<r;)this.add(t[e])}function to(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function eo(t,e){return t.has(e)}Zn.prototype.add=Zn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Zn.prototype.has=function(t){return this.__data__.has(t)};function ro(t,e,r,n,o,i){var s=1&r,a=t.length,u=e.length;if(a!=u&&!(s&&u>a))return!1;var c=i.get(t),l=i.get(e);if(c&&l)return c==e&&l==t;var f=-1,h=!0,d=2&r?new Zn:void 0;for(i.set(t,e),i.set(e,t);++f<a;){var v=t[f],p=e[f];if(n)var y=s?n(p,v,f,e,t,i):n(v,p,f,t,e,i);if(void 0!==y){if(y)continue;h=!1;break}if(d){if(!to(e,function(t,e){if(!eo(d,e)&&(v===t||o(v,t,r,n,i)))return d.push(e)})){h=!1;break}}else if(v!==p&&!o(v,p,r,n,i)){h=!1;break}}return i.delete(t),i.delete(e),h}function no(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function oo(t){var e=-1,r=Array(t.size);return t.forEach(function(t){r[++e]=t}),r}var io=l?l.prototype:void 0,so=io?io.valueOf:void 0;var ao=Object.prototype.hasOwnProperty;var uo="[object Arguments]",co="[object Array]",lo="[object Object]",fo=Object.prototype.hasOwnProperty;function ho(t,e,r,n,o,i){var s=et(t),a=et(e),u=s?co:$(t),c=a?co:$(e),l=(u=u==uo?lo:u)==lo,f=(c=c==uo?lo:c)==lo,h=u==c;if(h&&at(t)){if(!at(e))return!1;s=!0,l=!1}if(h&&!l)return i||(i=new Oe),s||pt(t)?ro(t,e,r,n,o,i):function(t,e,r,n,o,i,s){switch(r){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!i(new Xe(t),new Xe(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return pe(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var a=no;case"[object Set]":var u=1&n;if(a||(a=oo),t.size!=e.size&&!u)return!1;var c=s.get(t);if(c)return c==e;n|=2,s.set(t,e);var l=ro(a(t),a(e),n,o,i,s);return s.delete(t),l;case"[object Symbol]":if(so)return so.call(t)==so.call(e)}return!1}(t,e,u,r,n,o,i);if(!(1&r)){var d=l&&fo.call(t,"__wrapped__"),v=f&&fo.call(e,"__wrapped__");if(d||v){var p=d?t.value():t,y=v?e.value():e;return i||(i=new Oe),o(p,y,r,n,i)}}return!!h&&(i||(i=new Oe),function(t,e,r,n,o,i){var s=1&r,a=$e(t),u=a.length;if(u!=$e(e).length&&!s)return!1;for(var c=u;c--;){var l=a[c];if(!(s?l in e:ao.call(e,l)))return!1}var f=i.get(t),h=i.get(e);if(f&&h)return f==e&&h==t;var d=!0;i.set(t,e),i.set(e,t);for(var v=s;++c<u;){var p=t[l=a[c]],y=e[l];if(n)var g=s?n(y,p,l,e,t,i):n(p,y,l,t,e,i);if(!(void 0===g?p===y||o(p,y,r,n,i):g)){d=!1;break}v||(v="constructor"==l)}if(d&&!v){var b=t.constructor,m=e.constructor;b==m||!("constructor"in t)||!("constructor"in e)||"function"==typeof b&&b instanceof b&&"function"==typeof m&&m instanceof m||(d=!1)}return i.delete(t),i.delete(e),d}(t,e,r,n,o,i))}function vo(t,e,r,n,o){return t===e||(null==t||null==e||!G(t)&&!G(e)?t!=t&&e!=e:ho(t,e,r,n,vo,o))}function po(t){return t==t&&!b(t)}function yo(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}function go(t){var e=function(t){for(var e=jt(t),r=e.length;r--;){var n=e[r],o=t[n];e[r]=[n,o,po(o)]}return e}(t);return 1==e.length&&e[0][2]?yo(e[0][0],e[0][1]):function(r){return r===t||function(t,e,r,n){var o=r.length,i=o;if(null==t)return!i;for(t=Object(t);o--;){var s=r[o];if(s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++o<i;){var a=(s=r[o])[0],u=t[a],c=s[1];if(s[2]){if(void 0===u&&!(a in t))return!1}else if(!vo(c,u,3,n,new Oe))return!1}return!0}(r,0,e)}}function bo(t,e){for(var r=0,n=(e=kn(e,t)).length;null!=t&&r<n;)t=t[Nn(e[r++])];return r&&r==n?t:void 0}function mo(t,e){return null!=t&&e in Object(t)}function _o(t,e){return null!=t&&Pn(t,e,mo)}function wo(t,e){return In(t)&&po(e)?yo(Nn(t),e):function(r){var n=function(t,e,r){var n=null==t?void 0:bo(t,e);return void 0===n?r:n}(r,t);return void 0===n&&n===e?_o(r,t):vo(e,n,3)}}function jo(t){return In(t)?function(t){return function(e){return null==e?void 0:e[t]}}(Nn(t)):function(t){return function(e){return bo(e,t)}}(t)}function So(t){return"function"==typeof t?t:null==t?Tr:"object"==typeof t?et(t)?wo(t[0],t[1]):go(t):jo(t)}function Io(t,e){return function(e,r){return(et(e)?$n:Yn)(e,t,So(r),{})}}var Oo=Object.prototype.hasOwnProperty,Ao=Io(function(t,e,r){Oo.call(t,r)?++t[r]:Ee(t,r,1)}),Eo=Object.prototype.hasOwnProperty,xo=Io(function(t,e,r){Eo.call(t,r)?t[r].push(e):Ee(t,r,[e])}),ko=Io(function(t,e,r){Ee(t,r,e)}),No=l?l.isConcatSpreadable:void 0;function Po(t){return et(t)||tt(t)||!!(No&&t&&t[No])}function Ro(t,e,r,n,o){var i=-1,s=t.length;for(r||(r=Po),o||(o=[]);++i<s;){var a=t[i];r(a)?Je(o,a):o[o.length]=a}return o}function zo(t,e){if(t!==e){var r=void 0!==t,n=null===t,o=t==t,i=It(t),s=void 0!==e,a=null===e,u=e==e,c=It(e);if(!a&&!c&&!i&&t>e||i&&s&&u&&!a&&!c||n&&s&&u||!r&&u||!o)return 1;if(!n&&!i&&!c&&t<e||c&&r&&o&&!n&&!i||a&&r&&o||!s&&o||!u)return-1}return 0}function Bo(t,e,r){e=e.length?St(e,function(t){return et(t)?function(e){return bo(e,1===t.length?t[0]:t)}:t}):[Tr];var n=-1;e=St(e,ct(So));var o=function(t,e){var r=-1,n=nt(t)?Array(t.length):[];return Xn(t,function(t,o,i){n[++r]=e(t,o,i)}),n}(t,function(t,r,o){var i=St(e,function(e){return e(t)});return{criteria:i,index:++n,value:t}});return function(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}(o,function(t,e){return function(t,e,r){for(var n=-1,o=t.criteria,i=e.criteria,s=o.length,a=r.length;++n<s;){var u=zo(o[n],i[n]);if(u)return n>=a?u:u*("desc"==r[n]?-1:1)}return t.index-e.index}(t,e,r)})}var To=Kr(function(t,e){if(null==t)return[];var r=e.length;return r>1&&Vr(t,e[0],e[1])?e=[]:r>2&&Vr(e[0],e[1],e[2])&&(e=[e[0]]),Bo(t,Ro(e),[])});const Do=new Map,Co=new Set,Mo=new Map;let Fo=!1;function Lo(t,e){const r=Promise.resolve(e()).catch(e=>{console.error("Skeletor autoSync save error:",e),t?.trigger?.("error",t,e)});let n;Co.add(r),t&&(n=Mo.get(t),n||(n=new Set,Mo.set(t,n)),n.add(r)),r.finally(()=>{Co.delete(r),n&&(n.delete(r),0===n.size&&Mo.delete(t))})}function Uo(t){if(Fo||"undefined"==typeof window)return;Fo=!0;const e=()=>function({storage:t,wait:e=!1}={}){for(const[t,{timerId:e,run:r}]of Do.entries())clearTimeout(e),Lo(t,r);if(Do.clear(),t&&t.flushAll(),e)return Promise.all([...Co]).then(()=>{})}({storage:t});window.addEventListener("pagehide",e),window.addEventListener("visibilitychange",()=>{"hidden"===document.visibilityState&&e()})}var Wo=Object.prototype,qo=Wo.hasOwnProperty,Jo=Kr(function(t,e){t=Object(t);var r=-1,n=e.length,o=n>2?e[2]:void 0;for(o&&Vr(e[0],e[1],o)&&(n=1);++r<n;)for(var i=e[r],s=ze(i),a=-1,u=s.length;++a<u;){var c=s[a],l=t[c];(void 0===l||pe(l,Wo[c])&&!qo.call(t,c))&&(t[c]=i[c])}return t});var Ko=Kr(function(t,e){return function(t,e,r){if("function"!=typeof t)throw new TypeError("Expected a function");return setTimeout(function(){t.apply(void 0,r)},e)}(t,1,e)});var Vo,Qo,$o=Object.prototype.toString,Go=(Vo=function(t,e,r){null!=e&&"function"!=typeof e.toString&&(e=$o.call(e)),t[e]=r},Qo=Mr(Tr),function(t,e){return function(t,e,r,n){return Gn(t,function(t,o,i){e(n,r(t),o,i)}),n}(t,Vo,Qo(e),{})});function Ho(t,e){return vo(t,e)}function Xo(t,e){return e.length<2?t:bo(t,function(t,e,r){var n=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(r=r>o?o:r)<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;for(var i=Array(o);++n<o;)i[n]=t[n+e];return i}(e,0,-1))}var Yo=Object.prototype.hasOwnProperty;function Zo(t,e){var r=-1,n=(e=kn(e,t)).length;if(!n)return!0;for(;++r<n;){var o=Nn(e[r]);if("__proto__"===o&&!Yo.call(t,"__proto__"))return!1;if(("constructor"===o||"prototype"===o)&&r<n-1)return!1}var i=Xo(t,e);return null==i||delete i[Nn(function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}(e))]}function ti(t){return Pr(t)?void 0:t}function ei(t){return(null==t?0:t.length)?Ro(t):[]}function ri(t){return Jr(Cr(t,void 0,ei),t+"")}var ni=ri(function(t,e){var r={};if(null==t)return r;var n=!1;e=St(e,function(e){return e=kn(e,t),n||(n=e.length>1),e}),Ne(t,Ge(t),r),n&&(r=pr(r,7,ti));for(var o=e.length;o--;)Zo(r,e[o]);return r});function oi(t,e,r,n){if(!b(t))return t;for(var o=-1,i=(e=kn(e,t)).length,s=i-1,a=t;null!=a&&++o<i;){var u=Nn(e[o]),c=r;if("__proto__"===u||"constructor"===u||"prototype"===u)return t;if(o!=s){var l=a[u];void 0===(c=void 0)&&(c=b(l)?l:mt(e[o+1])?[]:{})}ke(a,u,c),a=a[u]}return t}function ii(t,e){return function(t,e,r){for(var n=-1,o=e.length,i={};++n<o;){var s=e[n],a=bo(t,s);r(a,s)&&oi(i,kn(s,t),a)}return i}(t,e,function(e,r){return _o(t,r)})}var si,ai,ui,ci,li,fi,hi,di,vi,pi,yi,gi=ri(function(t,e){return null==t?{}:ii(t,e)});class bi extends Xt{constructor(t,e){super(),si.add(this),ai.set(this,void 0),ui.set(this,void 0),ci.set(this,"constructing"),this._changing=!1,this._pending=!1,this._url="",this.changed={},this.validationError=null;let r=t||{};e=e||{},this.preinitialize.apply(this,arguments),this.cid=Nt(this.cidPrefix),this.attributes={},e.collection&&(this.collection=e.collection),e.parse&&(r=this.parse(r,e)||{});const n=Rn(this,"defaults");r=Jo(Object.assign({},n,r),n),this.set(r,e),Yt(this,si,"m",di).call(this),this.attrs=new Proxy(this.attributes,{get:(t,e)=>"symbol"!=typeof e&&Yt(this,ai,"f")&&e in Yt(this,ai,"f")?Yt(this,ai,"f")[e]:this.attributes[e],set:(t,e,r)=>(this.set(e,r),!0)}),this.initialize.apply(this,arguments),this.changed={},this.autoSync?Ln(this)&&!this.isNew()?(Zt(this,ci,"hydrating","f"),this.initialized=Yt(this,si,"m",li).call(this)):(Zt(this,ci,"ready","f"),this.initialized=Promise.resolve()):Zt(this,ci,"ready","f")}get storage(){return this._storage}set storage(t){this._storage=t,Vn.register(t)}get browserStorage(){return this._storage}set browserStorage(t){Fn(this),this.storage=t}get autoSync(){return!1}get autoSyncDelay(){return 100}get idAttribute(){return"id"}get cidPrefix(){return"c"}preinitialize(...t){}initialize(t,e){}validate(t,e){return null}defaults(){return{}}get computed(){return{}}toJSON(){return Qn(this.attributes)}sync(t,e,r){return Un(e)(t,e,r)}get(t){return Yt(this,ai,"f")&&t in Yt(this,ai,"f")?Yt(this,ai,"f")[t]:this.attributes[t]}keys(){return Object.keys(this.attributes)}values(){return Object.values(this.attributes)}pairs(){return this.entries()}entries(){return Object.entries(this.attributes)}invert(){return Go(this.attributes)}pick(...t){return 1===t.length&&Array.isArray(t[0])&&(t=t[0]),gi(this.attributes,t)}omit(...t){return 1===t.length&&Array.isArray(t[0])&&(t=t[0]),ni(this.attributes,t)}isEmpty(){return gt(this.attributes)}has(t){return null!=this.get(t)}matches(t){return!!function(t){return So("function"==typeof t?t:pr(t,1))}(t)(this.attributes)}set(t,e,r){if(null==t)return this;let n;if("object"==typeof t?(n=t,r=e):(n={},n[t]=e),r=r||{},this.autoSync&&"hydrating"===Yt(this,ci,"f")&&!r.fromStorage)throw new Error("Skeletor: set() called on an autoSync model before initialized resolved. Await model.initialized first.");if(!this._validate(n,r))return null;const o=r.unset,i=r.silent,s=[],a=this._changing;this._changing=!0,a||(this._previousAttributes=Qn(this.attributes),this.changed={});const u=this.attributes,c=this.changed,l=this._previousAttributes;for(const t in n)e=n[t],Ho(u[t],e)||s.push(t),Ho(l[t],e)?delete c[t]:c[t]=e,o?delete u[t]:u[t]=e;if(this.idAttribute in n&&(this.id=this.get(this.idAttribute)),!i){s.length&&(this._pending=r);for(let t=0;t<s.length;t++)this.trigger("change:"+s[t],this,u[s[t]],r)}if(s.length&&Yt(this,ui,"f"))for(const[t,e]of Object.entries(Yt(this,ui,"f")))e.deps.some(t=>s.includes(t))&&Yt(this,si,"m",hi).call(this,t,e,i,r);if(a)return this;if(!i)for(;this._pending;)r=this._pending,this._pending=!1,this.trigger("change",this,r);return this._pending=!1,this._changing=!1,"ready"===Yt(this,ci,"f")&&this.autoSync&&Ln(this)&&s.length&&!r.fromStorage&&!r.noAutoSave&&function(t,e,r){const n=Do.get(t);n&&clearTimeout(n.timerId);const o=setTimeout(()=>{Do.delete(t),Lo(t,e)},r);Do.set(t,{timerId:o,run:e})}(this,()=>Yt(this,si,"m",fi).call(this),this.autoSyncDelay),this}unset(t,e){return this.set(t,void 0,Object.assign({},e,{unset:!0}))}clear(t){const e={};for(const t in this.attributes)e[t]=void 0;return this.set(e,Object.assign({},t,{unset:!0}))}hasChanged(t){return null==t?!gt(this.changed):(e=this.changed,r=t,null!=e&&Pn(e,r,wn));var e,r}changedAttributes(t){if(!t)return!!this.hasChanged()&&Qn(this.changed);const e=this._changing?this._previousAttributes:this.attributes,r={};let n=!1;for(const o in t){const i=t[o];Ho(e[o],i)||(r[o]=i,n=!0)}return!!n&&r}previous(t){return null!=t&&this._previousAttributes?this._previousAttributes[t]:null}previousAttributes(){return this._previousAttributes?Qn(this._previousAttributes):void 0}fetch(t={}){const e=(t=Object.assign({parse:!0},t)).success,r=t.promise?Bn():void 0;let n=!1;if(t.success=o=>{n=!0;const i=t.parse?this.parse(o,t):o;if(!this.set(i,Object.assign({},t,{fromStorage:!0})))return!1;e&&e.call(t.context,this,o,t),this.trigger("sync",this,o,t),r&&r.resolve(o)},Dn(this,t,r),r){const e=t.error;t.error=t=>{n=!0,e(t)}}const o=this.sync("read",this,t);return r?(Promise.resolve(o).then(e=>{n||t.success(e)},t=>r.reject(t)),r):o}save(t,e,r){let n;null==t||"object"==typeof t?(n=t,r=e):(n={},n[t]=e);const o=(r=Object.assign({validate:!0,parse:!0},r)).wait,i=r.promise,s=i&&Bn();if(n&&!o){if(!this.set(n,r))return!1}else if(!this._validate(n||{},r))return!1;const a=r.success,u=r.error,c=this.attributes;r.success=t=>{this.attributes=c;let e=r.parse?this.parse(t,r):t;if(o&&(e=Object.assign({},n,e)),e&&!this.set(e,r))return!1;a&&a.call(r.context,this,t,r),this.trigger("sync",this,t,r),i&&s.resolve()},r.error=(t,e,r)=>{u&&u.call(r.context,t,e,r),i&&s.reject(e)},Dn(this,r),n&&o&&(this.attributes=Object.assign({},c,n));const l=this.isNew()?"create":r.patch?"patch":"update";"patch"!==l||r.attrs||(r.attrs=n);const f=this.sync(l,this,r);return this.attributes=c,i?s:f}destroy(t){!function(t){const e=Do.get(t);e&&(clearTimeout(e.timerId),Do.delete(t))}(this);const e=(t=t?Qn(t):{}).success,r=t.wait,n=()=>{this.stopListening(),this.trigger("destroy",this,this.collection,t)};t.success=o=>{r&&n(),e&&e.call(t.context,this,o,t),this.isNew()||this.trigger("sync",this,o,t)};const o=function(t){const e=Mo.get(t);return e&&0!==e.size?Promise.all([...e]).then(()=>{}):null}(this);o&&this.collection&&(t.collection=this.collection);let i=!1;return this.isNew()?Ko(t.success):(Dn(this,t),i=o?o.then(()=>this.sync("delete",this,t)):this.sync("delete",this,t)),r||n(),i}get urlRoot(){return this._urlRoot}set urlRoot(t){this._urlRoot=t}get url(){if(this._url)return this._url;const t=Rn(this,"urlRoot")||Rn(this.collection,"url")||Tn();if(this.isNew())return t;const e=this.get(this.idAttribute);return t.replace(/[^\/]$/,"$&/")+encodeURIComponent(String(e))}set url(t){this._url=t}parse(t,e){return t}isNew(){return!this.has(this.idAttribute)}isValid(t){return this._validate({},Object.assign({},t,{validate:!0}))}subscribe(t,e,r){if("function"==typeof t){const e=e=>t(e,this.changed);return this.on("change",e),()=>this.off("change",e)}return super.subscribe(t,e,r)}_validate(t,e){if(!e?.validate||!this.validate)return!0;t=Object.assign({},this.attributes,t);const r=this.validationError=this.validate(t,e)||null;return!r||(this.trigger("invalid",this,r,Object.assign(e,{validationError:r})),!1)}}ai=new WeakMap,ui=new WeakMap,ci=new WeakMap,si=new WeakSet,li=async function(){Uo(Vn);try{await this.fetch({fromStorage:!0,promise:!0})}catch(t){if("Record Not Found"!==t)throw t}finally{Zt(this,ci,"ready","f")}},fi=function(){return this.save(null,{noAutoSave:!0})},hi=function(t,e,r,n){const o=e.fn(this);Ho(Yt(this,ai,"f")[t],o)||(Yt(this,ai,"f")[t]=o,r||(this.changed[t]=o,this.trigger("change:"+t,this,o,n)))},di=function(){const t=Rn(this,"computed");if(t&&!gt(t)){Zt(this,ui,t,"f"),Zt(this,ai,{},"f");for(const[e,r]of Object.entries(t))Yt(this,ai,"f")[e]=r.fn(this)}};const mi={add:!0,remove:!0,merge:!0},_i={add:!0,remove:!1};class wi extends Xt{constructor(t,e){super(),vi.add(this),this._url="",this[yi]=this.values,e=e||{},this.preinitialize.apply(this,arguments),e.model&&(this._model=e.model),void 0!==e.comparator&&(this.comparator=e.comparator),this._reset(),this.initialize.apply(this,arguments),t&&this.reset(t,Object.assign({silent:!0},e)),this[Symbol.iterator]=this.values,this.autoSync&&(this.initialized=Ln(this)?Yt(this,vi,"m",pi).call(this):Promise.resolve())}get comparator(){return this._comparator}set comparator(t){this._comparator=t}get storage(){return this._storage}set storage(t){this._storage=t,Vn.register(t)}get browserStorage(){return this._storage}set browserStorage(t){Fn(this),this.storage=t}get autoSync(){return!1}get model(){return this._model??bi}set model(t){this._model=t}get length(){return this.models.length}get url(){return this._url}set url(t){this._url=t}preinitialize(...t){}initialize(...t){}toJSON(){return this.map(function(t){return t.toJSON()})}sync(t,e,r){return Un(this)(t,e,r)}add(t,e){return this.set(t,Object.assign({merge:!1},e,_i))}remove(t,e){e=Object.assign({},e);const r=!Array.isArray(t),n=r?[t]:t.slice(),o=this._removeModels(n,e);return!e.silent&&o.length&&(e.changes={added:[],merged:[],removed:o},this.trigger("update",this,e)),r?o[0]:o}set(t,e){if(null==t)return;(e=Object.assign({},mi,e)).parse&&!this._isModel(t)&&(t=this.parse(t,e)||[]);const r=!Array.isArray(t);t=r?[t]:t.slice();let n=e.at;null!=n&&(n=+n),n>this.length&&(n=this.length),n<0&&(n+=this.length+1);const o=[],i=[],s=[],a=[],u={},c=e.add,l=e.merge,f=e.remove;let h=!1;const d=this.comparator&&null==n&&!1!==e.sort,v=yr(this.comparator)?this.comparator:null;let p,y;for(y=0;y<t.length;y++){p=t[y];const r=this.get(p);if(r){if(l&&p!==r){let t=this._isModel(p)?p.attributes:p;e.parse&&(t=r.parse(t,e)),r.set(t,e),s.push(r),d&&!h&&(h=r.hasChanged(v))}u[r.cid]||(u[r.cid]=!0,o.push(r)),t[y]=r}else c&&(p=t[y]=this._prepareModel(p,e),p&&(i.push(p),this._addReference(p,e),u[p.cid]=!0,o.push(p)))}if(f){for(y=0;y<this.length;y++)p=this.models[y],u[p.cid]||a.push(p);a.length&&this._removeModels(a,e)}let g=!1;const b=!d&&c&&f;if(o.length&&b)g=this.length!==o.length||this.models.some((t,e)=>t!==o[e]),this.models.length=0,this.models.splice(0,0,...o);else if(i.length){d&&(h=!0);let t=n??this.length;t=Math.min(Math.max(t,0),this.models.length),this.models.splice(t,0,...i)}if(h&&this.sort({silent:!0}),!e.silent){for(y=0;y<i.length;y++)null!=n&&(e.index=n+y),p=i[y],p.trigger("add",p,this,e);(h||g)&&this.trigger("sort",this,e),(i.length||a.length||s.length)&&(e.changes={added:i,removed:a,merged:s},this.trigger("update",this,e))}return r?t[0]:t}async clearStore(t={},e=()=>!0){await Promise.all(this.models.filter(e).map(e=>new Promise(r=>{e.destroy(Object.assign(t,{success:r,error:(t,e)=>{console.error(e),r()}}))}))),await(Ln(this)?.clear()),this.reset()}reset(t,e){e=e?Qn(e):{};for(let t=0;t<this.models.length;t++)this._removeReference(this.models[t],e);return e.previousModels=this.models,this._reset(),t=this.add(t,Object.assign({silent:!0},e)),e.silent||this.trigger("reset",this,e),t}push(t,e){return this.add(t,Object.assign({at:this.length},e))}pop(t){const e=this.at(this.length-1);return this.remove(e,t)}unshift(t,e){return this.add(t,Object.assign({at:0},e))}shift(t){const e=this.at(0);return this.remove(e,t)}slice(t,e){return this.models.slice(t,e)}filter(t,e){return this.models.filter(m(t)?t:e=>e.matches(t),e)}every(t){return m(t)?this.models.map(t=>t.attributes).every(t):this.models.every(e=>e.matches(t))}difference(t){return this.models.filter(e=>!t.includes(e))}max(){return Math.max.apply(Math,this.models)}min(){return Math.min.apply(Math,this.models)}drop(t=1){return this.models.slice(t)}some(t){return m(t)?this.models.map(t=>t.attributes).some(t):this.models.some(e=>e.matches(t))}sortBy(t){return To(this.models,m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}isEmpty(){return!this.models.length}keyBy(t){return ko(this.models,t)}each(t,e){return this.forEach(t,e)}forEach(t,e){return this.models.forEach(t,e)}includes(t){return this.models.includes(t)}size(){return this.models.length}countBy(t){return Ao(this.models,m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}groupBy(t){return xo(this.models,m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}indexOf(t,e){return this.models.indexOf(t,e)}findLastIndex(t,e){return this.models.findLastIndex(m(t)?t:e=>yr(t)?e.get(t):e.matches(t),e)}lastIndexOf(t,e){return this.models.lastIndexOf(t,e)}findIndex(t){return this.models.findIndex(m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}last(){const t=null==this.models?0:this.models.length;return t?this.models[t-1]:void 0}head(){return this.models[0]}first(){return this.head()}map(t,e){return this.models.map(m(t)?t:e=>yr(t)?e.get(t):e.matches(t),e)}reduce(t,e){return this.models.reduce(t,e||this.models[0])}reduceRight(t,e){return this.models.reduceRight(t,e||this.models[0])}toArray(){return Array.from(this.models)}get(t){if(null!=t)return this._byId[t]||this._byId[this.modelId(this._isModel(t)?t.attributes:t)]||t.cid&&this._byId[t.cid]}has(t){return null!=this.get(t)}at(t){return t<0&&(t+=this.length),this.models[t]}where(t,e){return this[e?"find":"filter"](t)}findWhere(t){return this.where(t,!0)}find(t,e){const r=m(t)?t:e=>e.matches(t);return this.models.find(r,e)}sort(t){let e=this.comparator;if(!e)throw new Error("Cannot sort a set without a comparator");t=t||{};const r=m(e)?e.length:0;return m(e)&&(e=e.bind(this)),1===r||yr(e)?this.models=this.sortBy(e):this.models.sort(e),t.silent||this.trigger("sort",this,t),this}pluck(t){return this.map(t+"")}fetch(t){const e=(t=Object.assign({parse:!0},t)).success,r=this,n=t.promise?Bn():void 0;let o=!1;if(t.success=function(i){o=!0;const s=t.reset?"reset":"set";r[s](i,Object.assign({},t,{fromStorage:!0})),e&&e.call(t.context,r,i,t),n&&n.resolve(),r.trigger("sync",r,i,t)},Dn(this,t,n),n){const e=t.error;t.error=t=>{o=!0,e(t)}}const i=this.sync("read",this,t);return n?(Promise.resolve(i).then(e=>{o||t.success(e)},t=>n.reject(t)),n):i}create(t,e){const r=(e=e?Qn(e):{}).wait,n=e.promise,o=n&&Bn(),i=this._prepareModel(t,e);if(!i)return null;r||this.add(i,e);const s=this,a=e.success,u=e.error;return e.success=function(t,e,i){r&&s.add(t,i),a&&a.call(i.context,t,e,i),n&&o.resolve(t)},e.error=function(t,e,r){u&&u.call(r.context,t,e,r),n&&o.reject(e)},i.save(null,Object.assign(e,{promise:!1})),n?o:i}subscribe(t,e,r){if("function"==typeof t){const e=()=>t(this);return this.on("update reset sort",e),()=>this.off("update reset sort",e)}return super.subscribe(t,e,r)}parse(t,e){return t}modelId(t){return t[this.model.prototype?.idAttribute||"id"]}values(){return new Oi(this,ji)}keys(){return new Oi(this,Si)}entries(){return new Oi(this,Ii)}_reset(){this.models=[],this._byId={}}createModel(t,e){return new(0,this.model)(t,e)}_prepareModel(t,e){if(this._isModel(t))return t.collection||(t.collection=this),t;(e=e?Qn(e):{}).collection=this;const r=this.createModel(t,e);return r.validationError?(this.trigger("invalid",this,r.validationError,e),null):r}_removeModels(t,e){const r=[];for(let n=0;n<t.length;n++){const o=this.get(t[n]);if(!o)continue;const i=this.indexOf(o);this.models.splice(i,1),delete this._byId[o.cid];const s=this.modelId(o.attributes);null!=s&&delete this._byId[s],e?.silent||((e=e||{}).index=i,o.trigger("remove",o,this,e)),r.push(o),this._removeReference(o,e)}return r}_isModel(t){return t instanceof bi}_addReference(t,e){this._byId[t.cid]=t;const r=this.modelId(t.attributes);null!=r&&(this._byId[r]=t),t.on("all",this._onModelEvent,this)}_removeReference(t,e){delete this._byId[t.cid];const r=this.modelId(t.attributes);null!=r&&delete this._byId[r],this===t.collection&&delete t.collection,t.off("all",this._onModelEvent,this)}_onModelEvent(t,e,r,n){if(e){if(("add"===t||"remove"===t)&&r!==this)return;if("destroy"===t&&this.remove(e,n),"change"===t){const t=this.modelId(e.previousAttributes()),r=this.modelId(e.attributes);t!==r&&(null!=t&&delete this._byId[t],null!=r&&(this._byId[r]=e))}}this.trigger.apply(this,arguments)}}vi=new WeakSet,pi=async function(){Uo(Vn),await this.fetch({fromStorage:!0,promise:!0})},yi=Symbol.iterator;const ji=1,Si=2,Ii=3;class Oi{constructor(t,e){this._collection=t,this._kind=e,this._index=0}next(){if(this._collection){if(this._index<this._collection.length){const t=this._collection.at(this._index);if(this._index++,!t)return{value:void 0,done:!0};let e;if(this._kind===ji)e=t;else{const r=this._collection.modelId(t.attributes);e=this._kind===Si?r:[r,t]}return{value:e,done:!1}}this._collection=void 0}return{value:void 0,done:!0}}[Symbol.iterator](){return this}}const Ai={Collection:wi,EventEmitter:Ht,Model:bi,sync:Wn},Ei="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global;Ai.VERSION="0.0.1";const xi=Ei.Skeletor;function ki(){return Ei.Skeletor=xi,this}Ai.noConflict=ki,Ei.Skeletor=Ai;const Ni=Vn;t.BrowserStorage=Ni,t.Collection=wi,t.EventEmitter=Ht,t.Model=bi,t.PersistentStorage=Vn,t.default=Ai,t.getStorage=Ln,t.noConflict=ki,t.sync=Wn,Object.defineProperty(t,"__esModule",{value:!0})});
60
+ */function jr(){return _r||(_r=1,function(t){t.exports=function t(e,r,n){function o(s,a){if(!r[s]){if(!e[s]){if(!a&&mr)return mr(s);if(i)return i(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var c=r[s]={exports:{}};e[s][0].call(c.exports,function(t){var r=e[s][1][t];return o(r||t)},c,c.exports,t,e,r,n)}return r[s].exports}for(var i=mr,s=0;s<n.length;s++)o(n[s]);return o}({1:[function(t,e,r){(function(t){var r,n,o=t.MutationObserver||t.WebKitMutationObserver;if(o){var i=0,s=new o(l),a=t.document.createTextNode("");s.observe(a,{characterData:!0}),r=function(){a.data=i=++i%2}}else if(t.setImmediate||void 0===t.MessageChannel)r="document"in t&&"onreadystatechange"in t.document.createElement("script")?function(){var e=t.document.createElement("script");e.onreadystatechange=function(){l(),e.onreadystatechange=null,e.parentNode.removeChild(e),e=null},t.document.documentElement.appendChild(e)}:function(){setTimeout(l,0)};else{var u=new t.MessageChannel;u.port1.onmessage=l,r=function(){u.port2.postMessage(0)}}var c=[];function l(){var t,e;n=!0;for(var r=c.length;r;){for(e=c,c=[],t=-1;++t<r;)e[t]();r=c.length}n=!1}function f(t){1!==c.push(t)||n||r()}e.exports=f}).call(this,void 0!==gr?gr:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(t,e,r){var n=t(1);function o(){}var i={},s=["REJECTED"],a=["FULFILLED"],u=["PENDING"];function c(t){if("function"!=typeof t)throw new TypeError("resolver must be a function");this.state=u,this.queue=[],this.outcome=void 0,t!==o&&d(this,t)}function l(t,e,r){this.promise=t,"function"==typeof e&&(this.onFulfilled=e,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function f(t,e,r){n(function(){var n;try{n=e(r)}catch(e){return i.reject(t,e)}n===t?i.reject(t,new TypeError("Cannot resolve promise with itself")):i.resolve(t,n)})}function h(t){var e=t&&t.then;if(t&&("object"==typeof t||"function"==typeof t)&&"function"==typeof e)return function(){e.apply(t,arguments)}}function d(t,e){var r=!1;function n(e){r||(r=!0,i.reject(t,e))}function o(e){r||(r=!0,i.resolve(t,e))}function s(){e(o,n)}var a=v(s);"error"===a.status&&n(a.value)}function v(t,e){var r={};try{r.value=t(e),r.status="success"}catch(t){r.status="error",r.value=t}return r}function p(t){return t instanceof this?t:i.resolve(new this(o),t)}function y(t){var e=new this(o);return i.reject(e,t)}function g(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,n=!1;if(!r)return this.resolve([]);for(var s=new Array(r),a=0,u=-1,c=new this(o);++u<r;)l(t[u],u);return c;function l(t,o){function u(t){s[o]=t,++a!==r||n||(n=!0,i.resolve(c,s))}e.resolve(t).then(u,function(t){n||(n=!0,i.reject(c,t))})}}function b(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,n=!1;if(!r)return this.resolve([]);for(var s=-1,a=new this(o);++s<r;)u(t[s]);return a;function u(t){e.resolve(t).then(function(t){n||(n=!0,i.resolve(a,t))},function(t){n||(n=!0,i.reject(a,t))})}}e.exports=c,c.prototype.catch=function(t){return this.then(null,t)},c.prototype.then=function(t,e){if("function"!=typeof t&&this.state===a||"function"!=typeof e&&this.state===s)return this;var r=new this.constructor(o);return this.state!==u?f(r,this.state===a?t:e,this.outcome):this.queue.push(new l(r,t,e)),r},l.prototype.callFulfilled=function(t){i.resolve(this.promise,t)},l.prototype.otherCallFulfilled=function(t){f(this.promise,this.onFulfilled,t)},l.prototype.callRejected=function(t){i.reject(this.promise,t)},l.prototype.otherCallRejected=function(t){f(this.promise,this.onRejected,t)},i.resolve=function(t,e){var r=v(h,e);if("error"===r.status)return i.reject(t,r.value);var n=r.value;if(n)d(t,n);else{t.state=a,t.outcome=e;for(var o=-1,s=t.queue.length;++o<s;)t.queue[o].callFulfilled(e)}return t},i.reject=function(t,e){t.state=s,t.outcome=e;for(var r=-1,n=t.queue.length;++r<n;)t.queue[r].callRejected(e);return t},c.resolve=p,c.reject=y,c.all=g,c.race=b},{1:1}],3:[function(t,e,r){(function(e){"function"!=typeof e.Promise&&(e.Promise=t(2))}).call(this,void 0!==gr?gr:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2}],4:[function(t,e,r){var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(t){return}}var s=i();function a(){try{if(!s||!s.open)return!1;var t="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),e="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!t||e)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(t){return!1}}function u(t,e){t=t||[],e=e||{};try{return new Blob(t,e)}catch(o){if("TypeError"!==o.name)throw o;for(var r=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),n=0;n<t.length;n+=1)r.append(t[n]);return r.getBlob(e.type)}}"undefined"==typeof Promise&&t(3);var c=Promise;function l(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function f(t,e,r){"function"==typeof e&&t.then(e),"function"==typeof r&&t.catch(r)}function h(t){return"string"!=typeof t&&(console.warn(t+" used as a key, but it is not a string."),t=String(t)),t}function d(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}var v="local-forage-detect-blob-support",p=void 0,y={},g=Object.prototype.toString,b="readonly",m="readwrite";function _(t){for(var e=t.length,r=new ArrayBuffer(e),n=new Uint8Array(r),o=0;o<e;o++)n[o]=t.charCodeAt(o);return r}function w(t){return new c(function(e){var r=t.transaction(v,m),n=u([""]);r.objectStore(v).put(n,"key"),r.onabort=function(t){t.preventDefault(),t.stopPropagation(),e(!1)},r.oncomplete=function(){var t=navigator.userAgent.match(/Chrome\/(\d+)/),r=navigator.userAgent.match(/Edge\//);e(r||!t||parseInt(t[1],10)>=43)}}).catch(function(){return!1})}function j(t){return"boolean"==typeof p?c.resolve(p):w(t).then(function(t){return p=t})}function S(t){var e=y[t.name],r={};r.promise=new c(function(t,e){r.resolve=t,r.reject=e}),e.deferredOperations.push(r),e.dbReady?e.dbReady=e.dbReady.then(function(){return r.promise}):e.dbReady=r.promise}function I(t){var e=y[t.name].deferredOperations.pop();if(e)return e.resolve(),e.promise}function O(t,e){var r=y[t.name].deferredOperations.pop();if(r)return r.reject(e),r.promise}function A(t,e){return new c(function(r,n){if(y[t.name]=y[t.name]||D(),t.db){if(!e)return r(t.db);S(t),t.db.close()}var o=[t.name];e&&o.push(t.version);var i=s.open.apply(s,o);e&&(i.onupgradeneeded=function(e){var r=i.result;try{r.createObjectStore(t.storeName),e.oldVersion<=1&&r.createObjectStore(v)}catch(r){if("ConstraintError"!==r.name)throw r;console.warn('The database "'+t.name+'" has been upgraded from version '+e.oldVersion+" to version "+e.newVersion+', but the storage "'+t.storeName+'" already exists.')}}),i.onerror=function(t){t.preventDefault(),n(i.error)},i.onsuccess=function(){var e=i.result;e.onversionchange=function(t){t.target.close()},r(e),I(t)}})}function E(t){return A(t,!1)}function x(t){return A(t,!0)}function k(t,e){if(!t.db)return!0;var r=!t.db.objectStoreNames.contains(t.storeName),n=t.version<t.db.version,o=t.version>t.db.version;if(n&&(t.version!==e&&console.warn('The database "'+t.name+"\" can't be downgraded from version "+t.db.version+" to version "+t.version+"."),t.version=t.db.version),o||r){if(r){var i=t.db.version+1;i>t.version&&(t.version=i)}return!0}return!1}function N(t){return new c(function(e,r){var n=new FileReader;n.onerror=r,n.onloadend=function(r){var n=btoa(r.target.result||"");e({__local_forage_encoded_blob:!0,data:n,type:t.type})},n.readAsBinaryString(t)})}function P(t){return u([_(atob(t.data))],{type:t.type})}function R(t){return t&&t.__local_forage_encoded_blob}function z(t){var e=this,r=e._initReady().then(function(){var t=y[e._dbInfo.name];if(t&&t.dbReady)return t.dbReady});return f(r,t,t),r}function B(t){S(t);for(var e=y[t.name],r=e.forages,n=0;n<r.length;n++){var o=r[n];o._dbInfo.db&&(o._dbInfo.db.close(),o._dbInfo.db=null)}return t.db=null,E(t).then(function(e){return t.db=e,k(t)?x(t):e}).then(function(n){t.db=e.db=n;for(var o=0;o<r.length;o++)r[o]._dbInfo.db=n}).catch(function(e){throw O(t,e),e})}function T(t,e,r,n){void 0===n&&(n=1);try{var o=t.db.transaction(t.storeName,e);r(null,o)}catch(o){if(n>0&&(!t.db||"InvalidStateError"===o.name||"NotFoundError"===o.name))return c.resolve().then(function(){if(!t.db||"NotFoundError"===o.name&&!t.db.objectStoreNames.contains(t.storeName)&&t.version<=t.db.version)return t.db&&(t.version=t.db.version+1),x(t)}).then(function(){return B(t).then(function(){T(t,e,r,n-1)})}).catch(r);r(o)}}function D(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function C(t){var e=this,r={db:null};if(t)for(var n in t)r[n]=t[n];var o=y[r.name];o||(o=D(),y[r.name]=o),o.forages.push(e),e._initReady||(e._initReady=e.ready,e.ready=z);var i=[];function s(){return c.resolve()}for(var a=0;a<o.forages.length;a++){var u=o.forages[a];u!==e&&i.push(u._initReady().catch(s))}var l=o.forages.slice(0);return c.all(i).then(function(){return r.db=o.db,E(r)}).then(function(t){return r.db=t,k(r,e._defaultConfig.version)?x(r):t}).then(function(t){r.db=o.db=t,e._dbInfo=r;for(var n=0;n<l.length;n++){var i=l[n];i!==e&&(i._dbInfo.db=r.db,i._dbInfo.version=r.version)}})}function M(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){T(r._dbInfo,b,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName).get(t);s.onsuccess=function(){var t=s.result;void 0===t&&(t=null),R(t)&&(t=P(t)),e(t)},s.onerror=function(){n(s.error)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function F(t,e){var r=this,n=new c(function(e,n){r.ready().then(function(){T(r._dbInfo,b,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName).openCursor(),a=1;s.onsuccess=function(){var r=s.result;if(r){var n=r.value;R(n)&&(n=P(n));var o=t(n,r.key,a++);void 0!==o?e(o):r.continue()}else e()},s.onerror=function(){n(s.error)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function L(t,e,r){var n=this;t=h(t);var o=new c(function(r,o){var i;n.ready().then(function(){return i=n._dbInfo,"[object Blob]"===g.call(e)?j(i.db).then(function(t){return t?e:N(e)}):e}).then(function(e){T(n._dbInfo,m,function(i,s){if(i)return o(i);try{var a=s.objectStore(n._dbInfo.storeName);null===e&&(e=void 0);var u=a.put(e,t);s.oncomplete=function(){void 0===e&&(e=null),r(e)},s.onabort=s.onerror=function(){var t=u.error?u.error:u.transaction.error;o(t)}}catch(t){o(t)}})}).catch(o)});return l(o,r),o}function U(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){T(r._dbInfo,m,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName).delete(t);i.oncomplete=function(){e()},i.onerror=function(){n(s.error)},i.onabort=function(){var t=s.error?s.error:s.transaction.error;n(t)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function W(t){var e=this,r=new c(function(t,r){e.ready().then(function(){T(e._dbInfo,m,function(n,o){if(n)return r(n);try{var i=o.objectStore(e._dbInfo.storeName).clear();o.oncomplete=function(){t()},o.onabort=o.onerror=function(){var t=i.error?i.error:i.transaction.error;r(t)}}catch(t){r(t)}})}).catch(r)});return l(r,t),r}function q(t){var e=this,r=new c(function(t,r){e.ready().then(function(){T(e._dbInfo,b,function(n,o){if(n)return r(n);try{var i=o.objectStore(e._dbInfo.storeName).count();i.onsuccess=function(){t(i.result)},i.onerror=function(){r(i.error)}}catch(t){r(t)}})}).catch(r)});return l(r,t),r}function J(t,e){var r=this,n=new c(function(e,n){t<0?e(null):r.ready().then(function(){T(r._dbInfo,b,function(o,i){if(o)return n(o);try{var s=i.objectStore(r._dbInfo.storeName),a=!1,u=s.openKeyCursor();u.onsuccess=function(){var r=u.result;r?0===t||a?e(r.key):(a=!0,r.advance(t)):e(null)},u.onerror=function(){n(u.error)}}catch(t){n(t)}})}).catch(n)});return l(n,e),n}function K(t){var e=this,r=new c(function(t,r){e.ready().then(function(){T(e._dbInfo,b,function(n,o){if(n)return r(n);try{var i=o.objectStore(e._dbInfo.storeName).openKeyCursor(),s=[];i.onsuccess=function(){var e=i.result;e?(s.push(e.key),e.continue()):t(s)},i.onerror=function(){r(i.error)}}catch(t){r(t)}})}).catch(r)});return l(r,t),r}function V(t,e){e=d.apply(this,arguments);var r=this.config();(t="function"!=typeof t&&t||{}).name||(t.name=t.name||r.name,t.storeName=t.storeName||r.storeName);var n,o=this;if(t.name){var i=t.name===r.name&&o._dbInfo.db?c.resolve(o._dbInfo.db):E(t).then(function(e){var r=y[t.name],n=r.forages;r.db=e;for(var o=0;o<n.length;o++)n[o]._dbInfo.db=e;return e});n=t.storeName?i.then(function(e){if(e.objectStoreNames.contains(t.storeName)){var r=e.version+1;S(t);var n=y[t.name],o=n.forages;e.close();for(var i=0;i<o.length;i++){var a=o[i];a._dbInfo.db=null,a._dbInfo.version=r}var u=new c(function(e,n){var o=s.open(t.name,r);o.onerror=function(t){o.result.close(),n(t)},o.onupgradeneeded=function(){o.result.deleteObjectStore(t.storeName)},o.onsuccess=function(){var t=o.result;t.close(),e(t)}});return u.then(function(t){n.db=t;for(var e=0;e<o.length;e++){var r=o[e];r._dbInfo.db=t,I(r._dbInfo)}}).catch(function(e){throw(O(t,e)||c.resolve()).catch(function(){}),e})}}):i.then(function(e){S(t);var r=y[t.name],n=r.forages;e.close();for(var o=0;o<n.length;o++)n[o]._dbInfo.db=null;var i=new c(function(e,r){var n=s.deleteDatabase(t.name);n.onerror=function(){var t=n.result;t&&t.close(),r(n.error)},n.onblocked=function(){console.warn('dropInstance blocked for database "'+t.name+'" until all open connections are closed')},n.onsuccess=function(){var t=n.result;t&&t.close(),e(t)}});return i.then(function(t){r.db=t;for(var e=0;e<n.length;e++)I(n[e]._dbInfo)}).catch(function(e){throw(O(t,e)||c.resolve()).catch(function(){}),e})})}else n=c.reject("Invalid arguments");return l(n,e),n}var $={_driver:"asyncStorage",_initStorage:C,_support:a(),iterate:F,getItem:M,setItem:L,removeItem:U,clear:W,length:q,key:J,keys:K,dropInstance:V};function Q(){return"function"==typeof openDatabase}var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",H="~~local_forage_type~",X=/^~~local_forage_type~([^~]+)~/,Y="__lfsc__:",Z=Y.length,tt="arbf",et="blob",rt="si08",nt="ui08",ot="uic8",it="si16",st="si32",at="ur16",ut="ui32",ct="fl32",lt="fl64",ft=Z+tt.length,ht=Object.prototype.toString;function dt(t){var e,r,n,o,i,s=.75*t.length,a=t.length,u=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var c=new ArrayBuffer(s),l=new Uint8Array(c);for(e=0;e<a;e+=4)r=G.indexOf(t[e]),n=G.indexOf(t[e+1]),o=G.indexOf(t[e+2]),i=G.indexOf(t[e+3]),l[u++]=r<<2|n>>4,l[u++]=(15&n)<<4|o>>2,l[u++]=(3&o)<<6|63&i;return c}function vt(t){var e,r=new Uint8Array(t),n="";for(e=0;e<r.length;e+=3)n+=G[r[e]>>2],n+=G[(3&r[e])<<4|r[e+1]>>4],n+=G[(15&r[e+1])<<2|r[e+2]>>6],n+=G[63&r[e+2]];return r.length%3==2?n=n.substring(0,n.length-1)+"=":r.length%3==1&&(n=n.substring(0,n.length-2)+"=="),n}function pt(t,e){var r="";if(t&&(r=ht.call(t)),t&&("[object ArrayBuffer]"===r||t.buffer&&"[object ArrayBuffer]"===ht.call(t.buffer))){var n,o=Y;t instanceof ArrayBuffer?(n=t,o+=tt):(n=t.buffer,"[object Int8Array]"===r?o+=rt:"[object Uint8Array]"===r?o+=nt:"[object Uint8ClampedArray]"===r?o+=ot:"[object Int16Array]"===r?o+=it:"[object Uint16Array]"===r?o+=at:"[object Int32Array]"===r?o+=st:"[object Uint32Array]"===r?o+=ut:"[object Float32Array]"===r?o+=ct:"[object Float64Array]"===r?o+=lt:e(new Error("Failed to get type for BinaryArray"))),e(o+vt(n))}else if("[object Blob]"===r){var i=new FileReader;i.onload=function(){var r=H+t.type+"~"+vt(this.result);e(Y+et+r)},i.readAsArrayBuffer(t)}else try{e(JSON.stringify(t))}catch(r){console.error("Couldn't convert value into a JSON string: ",t),e(null,r)}}function yt(t){if(t.substring(0,Z)!==Y)return JSON.parse(t);var e,r=t.substring(ft),n=t.substring(Z,ft);if(n===et&&X.test(r)){var o=r.match(X);e=o[1],r=r.substring(o[0].length)}var i=dt(r);switch(n){case tt:return i;case et:return u([i],{type:e});case rt:return new Int8Array(i);case nt:return new Uint8Array(i);case ot:return new Uint8ClampedArray(i);case it:return new Int16Array(i);case at:return new Uint16Array(i);case st:return new Int32Array(i);case ut:return new Uint32Array(i);case ct:return new Float32Array(i);case lt:return new Float64Array(i);default:throw new Error("Unkown type: "+n)}}var gt={serialize:pt,deserialize:yt,stringToBuffer:dt,bufferToString:vt};function bt(t,e,r,n){t.executeSql("CREATE TABLE IF NOT EXISTS "+e.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,n)}function mt(t){var e=this,r={db:null};if(t)for(var n in t)r[n]="string"!=typeof t[n]?t[n].toString():t[n];var o=new c(function(t,n){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(t){return n(t)}r.db.transaction(function(o){bt(o,r,function(){e._dbInfo=r,t()},function(t,e){n(e)})},n)});return r.serializer=gt,o}function _t(t,e,r,n,o,i){t.executeSql(r,n,o,function(t,s){s.code===s.SYNTAX_ERR?t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[e.storeName],function(t,a){a.rows.length?i(t,s):bt(t,e,function(){t.executeSql(r,n,o,i)},i)},i):i(t,s)},i)}function wt(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"SELECT * FROM "+o.storeName+" WHERE key = ? LIMIT 1",[t],function(t,r){var n=r.rows.length?r.rows.item(0).value:null;n&&(n=o.serializer.deserialize(n)),e(n)},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function jt(t,e){var r=this,n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"SELECT * FROM "+o.storeName,[],function(r,n){for(var i=n.rows,s=i.length,a=0;a<s;a++){var u=i.item(a),c=u.value;if(c&&(c=o.serializer.deserialize(c)),void 0!==(c=t(c,u.key,a+1)))return void e(c)}e()},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function St(t,e,r,n){var o=this;t=h(t);var i=new c(function(i,s){o.ready().then(function(){void 0===e&&(e=null);var a=e,u=o._dbInfo;u.serializer.serialize(e,function(e,c){c?s(c):u.db.transaction(function(r){_t(r,u,"INSERT OR REPLACE INTO "+u.storeName+" (key, value) VALUES (?, ?)",[t,e],function(){i(a)},function(t,e){s(e)})},function(e){if(e.code===e.QUOTA_ERR){if(n>0)return void i(St.apply(o,[t,a,r,n-1]));s(e)}})})}).catch(s)});return l(i,r),i}function It(t,e,r){return St.apply(this,[t,e,r,1])}function Ot(t,e){var r=this;t=h(t);var n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"DELETE FROM "+o.storeName+" WHERE key = ?",[t],function(){e()},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function At(t){var e=this,r=new c(function(t,r){e.ready().then(function(){var n=e._dbInfo;n.db.transaction(function(e){_t(e,n,"DELETE FROM "+n.storeName,[],function(){t()},function(t,e){r(e)})})}).catch(r)});return l(r,t),r}function Et(t){var e=this,r=new c(function(t,r){e.ready().then(function(){var n=e._dbInfo;n.db.transaction(function(e){_t(e,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(e,r){var n=r.rows.item(0).c;t(n)},function(t,e){r(e)})})}).catch(r)});return l(r,t),r}function xt(t,e){var r=this,n=new c(function(e,n){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(r){_t(r,o,"SELECT key FROM "+o.storeName+" WHERE id = ? LIMIT 1",[t+1],function(t,r){var n=r.rows.length?r.rows.item(0).key:null;e(n)},function(t,e){n(e)})})}).catch(n)});return l(n,e),n}function kt(t){var e=this,r=new c(function(t,r){e.ready().then(function(){var n=e._dbInfo;n.db.transaction(function(e){_t(e,n,"SELECT key FROM "+n.storeName,[],function(e,r){for(var n=[],o=0;o<r.rows.length;o++)n.push(r.rows.item(o).key);t(n)},function(t,e){r(e)})})}).catch(r)});return l(r,t),r}function Nt(t){return new c(function(e,r){t.transaction(function(n){n.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(r,n){for(var o=[],i=0;i<n.rows.length;i++)o.push(n.rows.item(i).name);e({db:t,storeNames:o})},function(t,e){r(e)})},function(t){r(t)})})}function Pt(t,e){e=d.apply(this,arguments);var r=this.config();(t="function"!=typeof t&&t||{}).name||(t.name=t.name||r.name,t.storeName=t.storeName||r.storeName);var n,o=this;return l(n=t.name?new c(function(e){var n;n=t.name===r.name?o._dbInfo.db:openDatabase(t.name,"","",0),t.storeName?e({db:n,storeNames:[t.storeName]}):e(Nt(n))}).then(function(t){return new c(function(e,r){t.db.transaction(function(n){function o(t){return new c(function(e,r){n.executeSql("DROP TABLE IF EXISTS "+t,[],function(){e()},function(t,e){r(e)})})}for(var i=[],s=0,a=t.storeNames.length;s<a;s++)i.push(o(t.storeNames[s]));c.all(i).then(function(){e()}).catch(function(t){r(t)})},function(t){r(t)})})}):c.reject("Invalid arguments"),e),n}var Rt={_driver:"webSQLStorage",_initStorage:mt,_support:Q(),iterate:jt,getItem:wt,setItem:It,removeItem:Ot,clear:At,length:Et,key:xt,keys:kt,dropInstance:Pt};function zt(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(t){return!1}}function Bt(t,e){var r=t.name+"/";return t.storeName!==e.storeName&&(r+=t.storeName+"/"),r}function Tt(){var t="_localforage_support_test";try{return localStorage.setItem(t,!0),localStorage.removeItem(t),!1}catch(t){return!0}}function Dt(){return!Tt()||localStorage.length>0}function Ct(t){var e=this,r={};if(t)for(var n in t)r[n]=t[n];return r.keyPrefix=Bt(t,e._defaultConfig),Dt()?(e._dbInfo=r,r.serializer=gt,c.resolve()):c.reject()}function Mt(t){var e=this,r=e.ready().then(function(){for(var t=e._dbInfo.keyPrefix,r=localStorage.length-1;r>=0;r--){var n=localStorage.key(r);0===n.indexOf(t)&&localStorage.removeItem(n)}});return l(r,t),r}function Ft(t,e){var r=this;t=h(t);var n=r.ready().then(function(){var e=r._dbInfo,n=localStorage.getItem(e.keyPrefix+t);return n&&(n=e.serializer.deserialize(n)),n});return l(n,e),n}function Lt(t,e){var r=this,n=r.ready().then(function(){for(var e=r._dbInfo,n=e.keyPrefix,o=n.length,i=localStorage.length,s=1,a=0;a<i;a++){var u=localStorage.key(a);if(0===u.indexOf(n)){var c=localStorage.getItem(u);if(c&&(c=e.serializer.deserialize(c)),void 0!==(c=t(c,u.substring(o),s++)))return c}}});return l(n,e),n}function Ut(t,e){var r=this,n=r.ready().then(function(){var e,n=r._dbInfo;try{e=localStorage.key(t)}catch(t){e=null}return e&&(e=e.substring(n.keyPrefix.length)),e});return l(n,e),n}function Wt(t){var e=this,r=e.ready().then(function(){for(var t=e._dbInfo,r=localStorage.length,n=[],o=0;o<r;o++){var i=localStorage.key(o);0===i.indexOf(t.keyPrefix)&&n.push(i.substring(t.keyPrefix.length))}return n});return l(r,t),r}function qt(t){var e=this.keys().then(function(t){return t.length});return l(e,t),e}function Jt(t,e){var r=this;t=h(t);var n=r.ready().then(function(){var e=r._dbInfo;localStorage.removeItem(e.keyPrefix+t)});return l(n,e),n}function Kt(t,e,r){var n=this;t=h(t);var o=n.ready().then(function(){void 0===e&&(e=null);var r=e;return new c(function(o,i){var s=n._dbInfo;s.serializer.serialize(e,function(e,n){if(n)i(n);else try{localStorage.setItem(s.keyPrefix+t,e),o(r)}catch(t){"QuotaExceededError"!==t.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==t.name||i(t),i(t)}})})});return l(o,r),o}function Vt(t,e){if(e=d.apply(this,arguments),!(t="function"!=typeof t&&t||{}).name){var r=this.config();t.name=t.name||r.name,t.storeName=t.storeName||r.storeName}var n,o=this;return n=t.name?new c(function(e){t.storeName?e(Bt(t,o._defaultConfig)):e(t.name+"/")}).then(function(t){for(var e=localStorage.length-1;e>=0;e--){var r=localStorage.key(e);0===r.indexOf(t)&&localStorage.removeItem(r)}}):c.reject("Invalid arguments"),l(n,e),n}var $t={_driver:"localStorageWrapper",_initStorage:Ct,_support:zt(),iterate:Lt,getItem:Ft,setItem:Kt,removeItem:Jt,clear:Mt,length:qt,key:Ut,keys:Wt,dropInstance:Vt},Qt=function(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)},Gt=function(t,e){for(var r=t.length,n=0;n<r;){if(Qt(t[n],e))return!0;n++}return!1},Ht=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},Xt={},Yt={},Zt={INDEXEDDB:$,WEBSQL:Rt,LOCALSTORAGE:$t},te=[Zt.INDEXEDDB._driver,Zt.WEBSQL._driver,Zt.LOCALSTORAGE._driver],ee=["dropInstance"],re=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(ee),ne={description:"",driver:te.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function oe(t,e){t[e]=function(){var r=arguments;return t.ready().then(function(){return t[e].apply(t,r)})}}function ie(){for(var t=1;t<arguments.length;t++){var e=arguments[t];if(e)for(var r in e)e.hasOwnProperty(r)&&(Ht(e[r])?arguments[0][r]=e[r].slice():arguments[0][r]=e[r])}return arguments[0]}var se=function(){function t(e){for(var r in o(this,t),Zt)if(Zt.hasOwnProperty(r)){var n=Zt[r],i=n._driver;this[r]=i,Xt[i]||this.defineDriver(n)}this._defaultConfig=ie({},ne),this._config=ie({},this._defaultConfig,e),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return t.prototype.config=function(t){if("object"===(void 0===t?"undefined":n(t))){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var e in t){if("storeName"===e&&(t[e]=t[e].replace(/\W/g,"_")),"version"===e&&"number"!=typeof t[e])return new Error("Database version must be a number.");this._config[e]=t[e]}return!("driver"in t)||!t.driver||this.setDriver(this._config.driver)}return"string"==typeof t?this._config[t]:this._config},t.prototype.defineDriver=function(t,e,r){var n=new c(function(e,r){try{var n=t._driver,o=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!t._driver)return void r(o);for(var i=re.concat("_initStorage"),s=0,a=i.length;s<a;s++){var u=i[s];if((!Gt(ee,u)||t[u])&&"function"!=typeof t[u])return void r(o)}var f=function(){for(var e=function(t){return function(){var e=new Error("Method "+t+" is not implemented by the current driver"),r=c.reject(e);return l(r,arguments[arguments.length-1]),r}},r=0,n=ee.length;r<n;r++){var o=ee[r];t[o]||(t[o]=e(o))}};f();var h=function(r){Xt[n]&&console.info("Redefining LocalForage driver: "+n),Xt[n]=t,Yt[n]=r,e()};"_support"in t?t._support&&"function"==typeof t._support?t._support().then(h,r):h(!!t._support):h(!0)}catch(t){r(t)}});return f(n,e,r),n},t.prototype.driver=function(){return this._driver||null},t.prototype.getDriver=function(t,e,r){var n=Xt[t]?c.resolve(Xt[t]):c.reject(new Error("Driver not found."));return f(n,e,r),n},t.prototype.getSerializer=function(t){var e=c.resolve(gt);return f(e,t),e},t.prototype.ready=function(t){var e=this,r=e._driverSet.then(function(){return null===e._ready&&(e._ready=e._initDriver()),e._ready});return f(r,t,t),r},t.prototype.setDriver=function(t,e,r){var n=this;Ht(t)||(t=[t]);var o=this._getSupportedDrivers(t);function i(){n._config.driver=n.driver()}function s(t){return n._extend(t),i(),n._ready=n._initStorage(n._config),n._ready}function a(t){return function(){var e=0;function r(){for(;e<t.length;){var o=t[e];return e++,n._dbInfo=null,n._ready=null,n.getDriver(o).then(s).catch(r)}i();var a=new Error("No available storage method found.");return n._driverSet=c.reject(a),n._driverSet}return r()}}var u=null!==this._driverSet?this._driverSet.catch(function(){return c.resolve()}):c.resolve();return this._driverSet=u.then(function(){var t=o[0];return n._dbInfo=null,n._ready=null,n.getDriver(t).then(function(t){n._driver=t._driver,i(),n._wrapLibraryMethodsWithReady(),n._initDriver=a(o)})}).catch(function(){i();var t=new Error("No available storage method found.");return n._driverSet=c.reject(t),n._driverSet}),f(this._driverSet,e,r),this._driverSet},t.prototype.supports=function(t){return!!Yt[t]},t.prototype._extend=function(t){ie(this,t)},t.prototype._getSupportedDrivers=function(t){for(var e=[],r=0,n=t.length;r<n;r++){var o=t[r];this.supports(o)&&e.push(o)}return e},t.prototype._wrapLibraryMethodsWithReady=function(){for(var t=0,e=re.length;t<e;t++)oe(this,re[t])},t.prototype.createInstance=function(e){return new t(e)},t}(),ae=new se;e.exports=ae},{3:3}]},{},[4])(4)}(wr)),wr.exports}var Sr=br(jr());function Ir(t,e,r){(void 0!==r&&!pe(t[e],r)||void 0===r&&!(e in t))&&Ee(t,e,r)}var Or=function(t,e,r){for(var n=-1,o=Object(t),i=r(t),s=i.length;s--;){var a=i[++n];if(!1===e(o[a],a,o))break}return t};var Ar=Function.prototype,Er=Object.prototype,xr=Ar.toString,kr=Er.hasOwnProperty,Nr=xr.call(Object);function Pr(t){if(!G(t)||"[object Object]"!=g(t))return!1;var e=Ke(t);if(null===e)return!0;var r=kr.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&xr.call(r)==Nr}function Rr(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}function zr(t,e,r,n,o,i,s){var a=Rr(t,r),u=Rr(e,r),c=s.get(u);if(c)Ir(t,r,c);else{var l,f=i?i(a,u,r+"",t,e,s):void 0,h=void 0===f;if(h){var d=et(u),v=!d&&at(u),p=!d&&!v&&pt(u);f=u,d||v||p?et(a)?f=a:G(l=a)&&nt(l)?f=Fe(a):v?(h=!1,f=Me(u,!0)):p?(h=!1,f=rr(u,!0)):f=[]:Pr(u)||tt(u)?(f=a,tt(a)?f=function(t){return Ne(t,ze(t))}(a):b(a)&&!m(a)||(f=sr(u))):h=!1}h&&(s.set(u,f),o(f,u,n,i,s),s.delete(u)),Ir(t,r,f)}}function Br(t,e,r,n,o){t!==e&&Or(e,function(i,s){if(o||(o=new Oe),b(i))zr(t,e,s,r,Br,n,o);else{var a=n?n(Rr(t,s),i,s+"",t,e,o):void 0;void 0===a&&(a=i),Ir(t,s,a)}},ze)}function Tr(t){return t}var Dr=Math.max;function Cr(t,e,r){return e=Dr(void 0===e?t.length-1:e,0),function(){for(var n=arguments,o=-1,i=Dr(n.length-e,0),s=Array(i);++o<i;)s[o]=n[e+o];o=-1;for(var a=Array(e+1);++o<e;)a[o]=n[o];return a[e]=r(s),function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}(t,this,a)}}function Mr(t){return function(){return t}}var Fr=Ae?function(t,e){return Ae(t,"toString",{configurable:!0,enumerable:!1,value:Mr(e),writable:!0})}:Tr,Lr=Date.now;var Ur,Wr,qr,Jr=(Ur=Fr,Wr=0,qr=0,function(){var t=Lr(),e=16-(t-qr);if(qr=t,e>0){if(++Wr>=800)return arguments[0]}else Wr=0;return Ur.apply(void 0,arguments)});function Kr(t,e){return Jr(Cr(t,e,Tr),t+"")}function Vr(t,e,r){if(!b(r))return!1;var n=typeof e;return!!("number"==n?nt(r)&&mt(e,r.length):"string"==n&&e in r)&&pe(r[e],t)}function $r(t){return Kr(function(e,r){var n=-1,o=r.length,i=o>1?r[o-1]:void 0,s=o>2?r[2]:void 0;for(i=t.length>3&&"function"==typeof i?(o--,i):void 0,s&&Vr(r[0],r[1],s)&&(i=o<3?void 0:i,o=1),e=Object(e);++n<o;){var a=r[n];a&&t(e,a,n,i)}return e})}var Qr=$r(function(t,e,r){Br(t,e,r)}),Gr=$r(function(t,e,r,n){Br(t,e,r,n)});function Hr(){let t,e=()=>{},r=()=>{};if("function"==typeof Promise.withResolvers){const{promise:n,resolve:o,reject:i}=Promise.withResolvers();t=n,e=o,r=i}else t=new Promise((t,n)=>{e=t,r=n});return Object.assign(t,{isResolved:!1,isPending:!0,isRejected:!1,resolve:e,reject:r}),t.then(e=>(t.isResolved=!0,t.isPending=!1,t.isRejected=!1,e),e=>{throw t.isResolved=!1,t.isPending=!1,t.isRejected=!0,e}),t}const Xr=Math.max,Yr=Math.min;function Zr(t){if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return isNaN(e)?0:e}return 0}function tn(t,e,r={}){let n,o,i,s,a,u,c=0,l=!1,f=r.promise?Hr():null;if("function"!=typeof t)throw new TypeError("Expected a function");function h(e){const i=n,a=o,u=f;return n=o=void 0,c=e,s=t.apply(a,i),r.promise&&(u.resolve(s),f=Hr()),r.promise?u:s}function d(t){const r=t-u;return void 0===u||r>=e||r<0||l&&t-c>=i}function v(){const t=Date.now();if(d(t))return p(t);a=setTimeout(v,function(t){const r=e-(t-u);return l?Yr(r,i-(t-c)):r}(t))}function p(t){return a=void 0,n?h(t):(n=o=void 0,r.promise?f:s)}function y(t,e){if(Array.isArray(t)&&Array.isArray(e))return r?.dedupeArrays?t.concat(e.filter(e=>-1===t.indexOf(e))):t.concat(e)}function g(){const t=Date.now(),i=d(t);var p;if(p=Array.from(arguments),n=n?.length?p.length?r?.concatArrays||r?.dedupeArrays?Gr(n,p,y):Qr(n,p):n:p||[],o=this,u=t,i){if(void 0===a)return function(t){return c=t,a=setTimeout(v,e),r.promise?f:s}(u);if(l)return clearTimeout(a),a=setTimeout(v,e),h(u)}return void 0===a&&(a=setTimeout(v,e)),r.promise?f:s}return e=Zr(e)||0,function(t){const e=typeof t;return null!=t&&("object"===e||"function"===e)}(r)&&(l="maxWait"in r,i=l?Xr(Zr(r.maxWait)||0,e):i),g.cancel=function(){void 0!==a&&clearTimeout(a),c=0,n=u=o=a=void 0},g.flush=function(){return void 0===a?s:p(Date.now())},g}function en(t,e){e&&t.then(t=>e(null,t),t=>e(t))}function rn(t){return"string"!=typeof t&&(console.warn(`${t} used as a key, but it is not a string.`),t=String(t)),t}function nn(t,e){let r=t.name+"/";return t.storeName!==e.storeName&&(r+=t.storeName+"/"),r}const on={keyPrefix:"",serializer:{serialize:function(t,e){try{e(function(t){return JSON.stringify(t,(t,e)=>e instanceof Date?e.toISOString():e)}(t),null)}catch(t){e("",t)}},deserialize:function(t){return JSON.parse(t)}}};const sn={_driver:"sessionStorageWrapper",_initStorage:function(t){if(on.keyPrefix=nn(t,this._defaultConfig),t)for(const e in t)on[e]=t[e]},_support:function(){try{if(sessionStorage&&"setItem"in sessionStorage)return!0}catch(t){console.log(t)}return!1}(),iterate:function(t,e){const r=this.ready().then(function(){const e=on.keyPrefix,r=e.length,n=sessionStorage.length;let o=1;for(let i=0;i<n;i++){const n=sessionStorage.key(i);if(!n||0!==n.indexOf(e))continue;const s=sessionStorage.getItem(n),a=s?on.serializer.deserialize(s):s,u=t(a,n.substring(r),o++);if(void 0!==u)return u}});return en(r,e),r},getItem:function(t,e){t=rn(t);const r=this.ready().then(function(){const e=sessionStorage.getItem(on.keyPrefix+t);return e?on.serializer.deserialize(e):null});return en(r,e),r},setItem:async function(t,e,r){t=rn(t),await this.ready();const n=e=e??null;return new Promise((o,i)=>{on.serializer.serialize(e,(e,s)=>{if(s)return i(s),void en(Promise.reject(s),r);try{sessionStorage.setItem(on.keyPrefix+t,e),o(n),en(Promise.resolve(n),r)}catch(t){"QuotaExceededError"!==t.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==t.name||console.error("Your sessionStorage capacity is used up."),i(t),en(Promise.reject(t),r)}})})},removeItem:function(t,e){t=rn(t);const r=this.ready().then(function(){sessionStorage.removeItem(on.keyPrefix+t)});return en(r,e),r},clear:function(t){const e=this.ready().then(function(){const t=on.keyPrefix;for(let e=sessionStorage.length-1;e>=0;e--){const r=sessionStorage.key(e);r&&0===r.indexOf(t)&&sessionStorage.removeItem(r)}});return en(e,t),e},length:function(t){const e=this.keys().then(function(t){return t.length});return en(e,t),e},key:function(t,e){const r=this.ready().then(function(){let e;try{e=sessionStorage.key(t)}catch(t){e=null}return e&&(e=e.substring(on.keyPrefix.length)),e});return en(r,e),r},keys:function(t){const e=this.ready().then(function(){const t=sessionStorage.length,e=[];for(let r=0;r<t;r++){const t=sessionStorage.key(r);t&&0===t.indexOf(on.keyPrefix)&&e.push(t.substring(on.keyPrefix.length))}return e});return en(e,t),e},dropInstance:function(...t){const e=function(...t){if(t.length&&"function"==typeof t[t.length-1])return t[t.length-1]}(...t);let r="function"!=typeof t[0]&&t[0]||{};if(!r.name){const t=this.config();r.name=r.name||t.name,r.storeName=r.storeName||t.storeName}const n=this;let o;return o=r.name?new Promise(function(t){r.storeName?t(nn(r,n._defaultConfig)):t(`${r.name}/`)}).then(function(t){for(let e=sessionStorage.length-1;e>=0;e--){const r=sessionStorage.key(e);r&&0===r.indexOf(t)&&sessionStorage.removeItem(r)}}):Promise.reject(new Error("Invalid arguments")),en(o,e),o}};var an,un={exports:{}};var cn=(an||(an=1,function(t,e){!function(t,e){function r(t){return r.result?r.result:t&&"function"==typeof t.getSerializer?(r.result=t.getSerializer(),r.result):Promise.reject(new Error("localforage.getSerializer() was not available! localforage v1.4+ is required!"))}function n(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function o(t,e,r,n){function o(t,e){var r=t||e;return t&&"function"==typeof t||"string"!=typeof r||(t=function(t){return t[r]}),t}var i=[];if("[object Array]"===Object.prototype.toString.call(t)){e=o(e,"key"),r=o(r,"value");for(var s=0,a=t.length;s<a;s++){var u=t[s];i.push(n(e(u),r(u)))}}else for(var c in t)t.hasOwnProperty(c)&&i.push(n(c,t[c]));return i}function i(t,e,r,i){var s=this,a=s.ready().then(function(){return new Promise(function(n,i){var a,u=s._dbInfo,c=u.db.transaction(u.storeName,"readwrite"),l=c.objectStore(u.storeName);function f(t){var e=t.target||this;a=e.error||e.transaction.error,i(a)}c.oncomplete=function(){n(t)},c.onabort=c.onerror=function(t){i(a||t.target)},o(t,e,r,function(t,e){null===e&&(e=void 0),l.put(e,t).onerror=f})})});return n(a,i),a}function s(t,e,i,s){var a=this,u=new Promise(function(n,s){a.ready().then(function(){return r(a)}).then(function(r){var u=a._dbInfo;u.db.transaction(function(a){var c="INSERT OR REPLACE INTO "+u.storeName+" (key, value) VALUES (?, ?)",l=o(t,e,i,function(t,e){return new Promise(function(n,o){r.serialize(e,function(e,r){r?o(r):a.executeSql(c,[t,e],function(){n()},function(t,e){o(e)})})})});Promise.all(l).then(function(){n(t)},s)},function(t){s(t)})}).catch(s)});return n(u,s),u}function a(t,e,r,i){var s=this,a=o(t,e,r,function(t,e){return s.setItem(t,e)}),u=Promise.all(a);return n(u,i),u}function u(t,e,r,n){var o=this,u=o.driver();return u===o.INDEXEDDB?i.call(o,t,e,r,n):u===o.WEBSQL?s.call(o,t,e,r,n):a.call(o,t,e,r,n)}function c(t){var e=Object.getPrototypeOf(t);e&&(e.setItems=u,e.setItems.indexedDB=function(){return i.apply(this,arguments)},e.setItems.websql=function(){return s.apply(this,arguments)},e.setItems.generic=function(){return a.apply(this,arguments)})}var l=c(e="default"in e?e.default:e);t.setItemsGeneric=a,t.localforageSetItems=u,t.extendPrototype=c,t.extendPrototypeResult=l,Object.defineProperty(t,"__esModule",{value:!0})}(e,jr())}(0,un.exports)),un.exports);function ln(t){return ln.result?ln.result:t&&"function"==typeof t.getSerializer?(ln.result=t.getSerializer(),ln.result):Promise.reject(new Error("localforage.getSerializer() was not available! localforage v1.4+ is required!"))}function fn(t,e){return e&&t.then(function(t){e(null,t)},function(t){e(t)}),t}function hn(t,e){var r=this.getItem(t).then(function(e){return{key:t,value:e}});return fn(r,e),r}function dn(t){var e=this,r=new Promise(function(r,n){for(var o=[],i=0,s=t.length;i<s;i++)o.push(hn.call(e,t[i]));Promise.all(o).then(function(t){for(var e={},n=0,o=t.length;n<o;n++){var i=t[n];e[i.key]=i.value}r(e)}).catch(n)});return r}function vn(){var t={};return this.iterate(function(e,r){t[r]=e}).then(function(){return t})}var pn="undefined"!=typeof IDBKeyRange?IDBKeyRange:"undefined"!=typeof webkitIDBKeyRange?webkitIDBKeyRange:"undefined"!=typeof mozIDBKeyRange?mozIDBKeyRange:void 0;function yn(t){t=t.slice();var e=this;function r(t,e){return t<e?-1:t>e?1:0}var n=new Promise(function(n,o){e.ready().then(function(){var i,s=e._dbInfo,a=s.db.transaction(s.storeName,"readonly").objectStore(s.storeName),u=t.sort(r),c=pn.bound(t[0],t[t.length-1],!1,!1);if("getAll"in a)(i=a.getAll(c)).onsuccess=function(){var t=i.result;void 0===t&&(t=null),n(t)};else{i=a.openCursor(c);var l={},f=0;i.onsuccess=function(){var t=i.result;if(t){for(var e=t.key;e>u[f];)if(++f===u.length)return void n(l);if(e===u[f]){var r=t.value;void 0===r&&(r=null),l[e]=r,t.continue()}else t.continue(u[f])}else n(l)}}i.onerror=function(){o(i.error)}}).catch(o)});return n}function gn(t){var e=this,r=new Promise(function(r,n){e.ready().then(function(){return ln(e)}).then(function(o){var i=e._dbInfo;i.db.transaction(function(e){for(var s=new Array(t.length),a=0,u=t.length;a<u;a++)s[a]="?";e.executeSql("SELECT * FROM "+i.storeName+" WHERE (key IN ("+s.join(",")+"))",t,function(t,e){for(var n={},i=e.rows,s=0,a=i.length;s<a;s++){var u=i.item(s),c=u.value;c&&(c=o.deserialize(c)),n[u.key]=c}r(n)},function(t,e){n(e)})})}).catch(n)});return r}function bn(t,e){var r,n=this;if(arguments.length&&null!==t){var o=n.driver();r=o===n.INDEXEDDB?yn.apply(n,arguments):o===n.WEBSQL?gn.apply(n,arguments):dn.apply(n,arguments)}else r=vn.apply(n);return fn(r,e),r}function mn(t){var e=Object.getPrototypeOf(t);e&&(e.getItems=bn,e.getItems.indexedDB=function(){return yn.apply(this,arguments)},e.getItems.websql=function(){return gn.apply(this,arguments)},e.getItems.generic=function(){return dn.apply(this,arguments)})}mn(Sr);var _n=Object.prototype.hasOwnProperty;function wn(t,e){return null!=t&&_n.call(t,e)}var jn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Sn=/^\w*$/;function In(t,e){if(et(t))return!1;var r=typeof t;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=t&&!It(t))||(Sn.test(t)||!jn.test(t)||null!=e&&t in Object(e))}function On(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var n=arguments,o=e?e.apply(this,n):n[0],i=r.cache;if(i.has(o))return i.get(o);var s=t.apply(this,n);return r.cache=i.set(o,s)||i,s};return r.cache=new(On.Cache||Ie),r}On.Cache=Ie;var An=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,En=/\\(\\)?/g,xn=function(t){var e=On(t,function(t){return 500===r.size&&r.clear(),t}),r=e.cache;return e}(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(An,function(t,r,n,o){e.push(n?o.replace(En,"$1"):r||t)}),e});function kn(t,e){return et(t)?t:In(t,e)?[t]:xn(xt(t))}function Nn(t){if("string"==typeof t||It(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Pn(t,e,r){for(var n=-1,o=(e=kn(e,t)).length,i=!1;++n<o;){var s=Nn(e[n]);if(!(i=null!=t&&r(t,s)))break;t=t[s]}return i||++n!=o?i:!!(o=null==t?0:t.length)&&rt(o)&&mt(s,o)&&(et(t)||tt(t))}function Rn(t,e,r){var n=-1,o=(e=kn(e,t)).length;for(o||(o=1,t=void 0);++n<o;){var i=null==t?void 0:t[Nn(e[n])];void 0===i&&(n=o,i=r),t=m(i)?i.call(t):i}return t}function zn(){return(65536*(1+Math.random())|0).toString(16).substring(1)}function Bn(){const t={isResolved:!1,isPending:!0,isRejected:!1,resolve:null,reject:null},e=new Promise((e,r)=>{t.resolve=e,t.reject=r});return Object.assign(e,t),e.then(function(){e.isResolved=!0,e.isPending=!1,e.isRejected=!1},function(){e.isResolved=!1,e.isPending=!1,e.isRejected=!0}),e}function Tn(){throw new Error('A "url" property or function must be specified')}function Dn(t,e,r){const n=e.error;e.error=function(o){n&&n.call(e.context,t,o,e),t.trigger("error",t,o,e),r&&r.reject&&r.reject(o)}}const Cn={create:"POST",update:"PUT",patch:"PATCH",delete:"DELETE",read:"GET"},Mn=new WeakSet;function Fn(t){const e=t?.constructor;if(!e||Mn.has(e))return;Mn.add(e);const r=e.name;console.warn(`Skeletor: \`browserStorage\` is deprecated and will be removed in a future major version; use \`storage\` instead${r?` (on \`${r}\`)`:""}.`)}function Ln(t){if(!t)return;const e=Rn(t,"storage");if(null!=e)return e;const r=Rn(t,"browserStorage");return null!=r&&Fn(t),r}function Un(t){const e=Ln(t)||Ln(t.collection);return e?e.sync():Wn}function Wn(t,e,r={}){let n=r.data;null!=n||!e||"create"!==t&&"update"!==t&&"patch"!==t||(n=r.attrs||e.toJSON());const o={method:Cn[t],body:n?JSON.stringify(n):"",headers:{"Content-Type":"application/json"},success:r.success,error:r.error},i=r.url||Rn(e,"url")||Tn(),s=fetch(i,o);return r&&(r.xhr=s),e.trigger("request",e,s,{...o,xhr:s}),s}const qn=fe;Sr.defineDriver(ve),cn.extendPrototype(Sr),mn(Sr);const Jn=new Set,Kn=new WeakSet;class Vn{static register(t){Kn.has(t)||(Kn.add(t),Jn.add(new WeakRef(t)))}static flushAll(){for(const t of Jn){const e=t.deref();e?e.flush():Jn.delete(t)}}constructor(t,e,r=!1){if(this.storeReady=!1,this.name=t,"local"===e&&"undefined"!=typeof window&&!window.localStorage)throw new Error("Skeletor.storage: Environment does not support localStorage.");if("session"===e&&"undefined"!=typeof window&&!window.sessionStorage)throw new Error("Skeletor.storage: Environment does not support sessionStorage.");yr(e)?this.storeInitialized=this.initStore(e,r):(this.store=e,r&&(this.store.debouncedSetItems=tn(t=>this.store.setItems(t),50,{promise:!0})),this.storeInitialized=Promise.resolve()),this.storeInitialized.then(()=>this.storeReady=!0).catch(()=>{})}async initStore(t,e){if("session"===t)await Sr.setDriver(sn._driver);else if("local"===t)await Sr.config({driver:Sr.LOCALSTORAGE});else if("in_memory"===t)await Sr.config({driver:qn});else{if("node"===t){const t=Vn.nodeStorage;if(!t)throw new Error("Skeletor.storage: the 'node' storage type is only available in Node.js builds. Import from '@converse/skeletor/node' instead of '@converse/skeletor'.");return this.store=new t(this.name),void(e&&(this.store.debouncedSetItems=tn(t=>this.store.setItems(t),50,{promise:!0})))}if("indexed"!==t)throw new Error("Skeletor.storage: No storage type was specified")}this.store=Sr,e&&(this.store.debouncedSetItems=tn(t=>this.store.setItems(t),50,{promise:!0}))}flush(){this.store.debouncedSetItems&&"function"==typeof this.store.debouncedSetItems.flush&&this.store.debouncedSetItems.flush()}async clear(){await this.storeInitialized,await this.store.removeItem(this.name).catch(t=>console.error(t));const t=new RegExp(`^${this.name}-`),e=(await this.store.keys()).filter(e=>t.test(e));await Promise.all(e.map(t=>this.store.removeItem(t).catch(t=>console.error(t))))}sync(){const t=this;async function e(e,r,n){let o,i,s,a;const u=n.collection??r.collection;["patch","update"].includes(e)&&(a=pr(r.attributes,5)),t.storeReady||await t.storeInitialized;try{const i=r.attributes;switch(e){case"read":o=void 0!==r.id?await t.find(r):await t.findAll();break;case"create":o=await t.create(r,n);break;case"patch":case"update":n.wait&&(r.attributes=a),s=t.update(r),n.wait&&(r.attributes=i),o=await s;break;case"delete":o=await t.destroy(r,u)}}catch(e){const r=await t.getStorageSize();i=22===e.code&&0===r?"Private browsing is unsupported":e.message}if(o){if(n&&n.success){const t="read"===e?o:null;n.success(t,n)}}else i=i||"Record Not Found",n&&n.error&&n.error(i)}return e.__name__="localSync",e}removeCollectionReference(t,e){if(!e)return;const r=e.filter(e=>e.id!==t.id).map(t=>this.getItemName(t.id));return this.store.setItem(this.name,r)}addCollectionReference(t,e){if(!e)return;const r=e.map(t=>this.getItemName(t.id)),n=this.getItemName(t.id);return r.includes(n)||r.push(n),this.store.setItem(this.name,r)}getCollectionReferenceData(t){if(!t.collection)return{};const e=t.collection.map(t=>this.getItemName(t.id)),r=this.getItemName(t.id);e.includes(r)||e.push(r);const n={};return n[this.name]=e,n}async save(t){if(this.store.setItems){const e={};return e[this.getItemName(t.id)]=t.toJSON(),Object.assign(e,this.getCollectionReferenceData(t)),this.store.debouncedSetItems?this.store.debouncedSetItems(e):this.store.setItems(e)}{const e=this.getItemName(t.id),r=await this.store.setItem(e,t.toJSON());return await this.addCollectionReference(t,t.collection),r}}create(t,e){return t.id||(t.id=zn()+zn()+"-"+zn()+"-"+zn()+"-"+zn()+"-"+zn()+zn()+zn(),t.set(t.idAttribute,t.id,e)),this.save(t)}update(t){return this.save(t)}find(t){return this.store.getItem(this.getItemName(t.id))}async findAll(){const t=await this.store.getItem(this.name);if(t?.length){const e=await this.store.getItems(t);return Object.values(e)}return[]}async destroy(t,e){return await this.flush(),await this.store.removeItem(this.getItemName(t.id)),await this.removeCollectionReference(t,e),t}async getStorageSize(){return await this.store.length()}getItemName(t){return this.name+"-"+t}}Vn.nodeStorage=null,Vn.sessionStorageInitialized=Sr.defineDriver(sn),Vn.localForage=Sr;function $n(t){return pr(t,4)}function Qn(t,e,r,n){for(var o=-1,i=null==t?0:t.length;++o<i;){var s=t[o];e(n,s,r(s),t)}return n}function Gn(t,e){return t&&Or(t,e,jt)}var Hn,Xn=(Hn=Gn,function(t,e){if(null==t)return t;if(!nt(t))return Hn(t,e);for(var r=t.length,n=-1,o=Object(t);++n<r&&!1!==e(o[n],n,o););return t});function Yn(t,e,r,n){return Xn(t,function(t,o,i){e(n,t,r(t),i)}),n}function Zn(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new Ie;++e<r;)this.add(t[e])}function to(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function eo(t,e){return t.has(e)}Zn.prototype.add=Zn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Zn.prototype.has=function(t){return this.__data__.has(t)};function ro(t,e,r,n,o,i){var s=1&r,a=t.length,u=e.length;if(a!=u&&!(s&&u>a))return!1;var c=i.get(t),l=i.get(e);if(c&&l)return c==e&&l==t;var f=-1,h=!0,d=2&r?new Zn:void 0;for(i.set(t,e),i.set(e,t);++f<a;){var v=t[f],p=e[f];if(n)var y=s?n(p,v,f,e,t,i):n(v,p,f,t,e,i);if(void 0!==y){if(y)continue;h=!1;break}if(d){if(!to(e,function(t,e){if(!eo(d,e)&&(v===t||o(v,t,r,n,i)))return d.push(e)})){h=!1;break}}else if(v!==p&&!o(v,p,r,n,i)){h=!1;break}}return i.delete(t),i.delete(e),h}function no(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function oo(t){var e=-1,r=Array(t.size);return t.forEach(function(t){r[++e]=t}),r}var io=l?l.prototype:void 0,so=io?io.valueOf:void 0;var ao=Object.prototype.hasOwnProperty;var uo="[object Arguments]",co="[object Array]",lo="[object Object]",fo=Object.prototype.hasOwnProperty;function ho(t,e,r,n,o,i){var s=et(t),a=et(e),u=s?co:Q(t),c=a?co:Q(e),l=(u=u==uo?lo:u)==lo,f=(c=c==uo?lo:c)==lo,h=u==c;if(h&&at(t)){if(!at(e))return!1;s=!0,l=!1}if(h&&!l)return i||(i=new Oe),s||pt(t)?ro(t,e,r,n,o,i):function(t,e,r,n,o,i,s){switch(r){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!i(new Xe(t),new Xe(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return pe(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var a=no;case"[object Set]":var u=1&n;if(a||(a=oo),t.size!=e.size&&!u)return!1;var c=s.get(t);if(c)return c==e;n|=2,s.set(t,e);var l=ro(a(t),a(e),n,o,i,s);return s.delete(t),l;case"[object Symbol]":if(so)return so.call(t)==so.call(e)}return!1}(t,e,u,r,n,o,i);if(!(1&r)){var d=l&&fo.call(t,"__wrapped__"),v=f&&fo.call(e,"__wrapped__");if(d||v){var p=d?t.value():t,y=v?e.value():e;return i||(i=new Oe),o(p,y,r,n,i)}}return!!h&&(i||(i=new Oe),function(t,e,r,n,o,i){var s=1&r,a=Qe(t),u=a.length;if(u!=Qe(e).length&&!s)return!1;for(var c=u;c--;){var l=a[c];if(!(s?l in e:ao.call(e,l)))return!1}var f=i.get(t),h=i.get(e);if(f&&h)return f==e&&h==t;var d=!0;i.set(t,e),i.set(e,t);for(var v=s;++c<u;){var p=t[l=a[c]],y=e[l];if(n)var g=s?n(y,p,l,e,t,i):n(p,y,l,t,e,i);if(!(void 0===g?p===y||o(p,y,r,n,i):g)){d=!1;break}v||(v="constructor"==l)}if(d&&!v){var b=t.constructor,m=e.constructor;b==m||!("constructor"in t)||!("constructor"in e)||"function"==typeof b&&b instanceof b&&"function"==typeof m&&m instanceof m||(d=!1)}return i.delete(t),i.delete(e),d}(t,e,r,n,o,i))}function vo(t,e,r,n,o){return t===e||(null==t||null==e||!G(t)&&!G(e)?t!=t&&e!=e:ho(t,e,r,n,vo,o))}function po(t){return t==t&&!b(t)}function yo(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}function go(t){var e=function(t){for(var e=jt(t),r=e.length;r--;){var n=e[r],o=t[n];e[r]=[n,o,po(o)]}return e}(t);return 1==e.length&&e[0][2]?yo(e[0][0],e[0][1]):function(r){return r===t||function(t,e,r,n){var o=r.length,i=o;if(null==t)return!i;for(t=Object(t);o--;){var s=r[o];if(s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++o<i;){var a=(s=r[o])[0],u=t[a],c=s[1];if(s[2]){if(void 0===u&&!(a in t))return!1}else if(!vo(c,u,3,n,new Oe))return!1}return!0}(r,0,e)}}function bo(t,e){for(var r=0,n=(e=kn(e,t)).length;null!=t&&r<n;)t=t[Nn(e[r++])];return r&&r==n?t:void 0}function mo(t,e){return null!=t&&e in Object(t)}function _o(t,e){return null!=t&&Pn(t,e,mo)}function wo(t,e){return In(t)&&po(e)?yo(Nn(t),e):function(r){var n=function(t,e,r){var n=null==t?void 0:bo(t,e);return void 0===n?r:n}(r,t);return void 0===n&&n===e?_o(r,t):vo(e,n,3)}}function jo(t){return In(t)?function(t){return function(e){return null==e?void 0:e[t]}}(Nn(t)):function(t){return function(e){return bo(e,t)}}(t)}function So(t){return"function"==typeof t?t:null==t?Tr:"object"==typeof t?et(t)?wo(t[0],t[1]):go(t):jo(t)}function Io(t,e){return function(e,r){return(et(e)?Qn:Yn)(e,t,So(r),{})}}var Oo=Object.prototype.hasOwnProperty,Ao=Io(function(t,e,r){Oo.call(t,r)?++t[r]:Ee(t,r,1)}),Eo=Object.prototype.hasOwnProperty,xo=Io(function(t,e,r){Eo.call(t,r)?t[r].push(e):Ee(t,r,[e])}),ko=Io(function(t,e,r){Ee(t,r,e)}),No=l?l.isConcatSpreadable:void 0;function Po(t){return et(t)||tt(t)||!!(No&&t&&t[No])}function Ro(t,e,r,n,o){var i=-1,s=t.length;for(r||(r=Po),o||(o=[]);++i<s;){var a=t[i];r(a)?Je(o,a):o[o.length]=a}return o}function zo(t,e){if(t!==e){var r=void 0!==t,n=null===t,o=t==t,i=It(t),s=void 0!==e,a=null===e,u=e==e,c=It(e);if(!a&&!c&&!i&&t>e||i&&s&&u&&!a&&!c||n&&s&&u||!r&&u||!o)return 1;if(!n&&!i&&!c&&t<e||c&&r&&o&&!n&&!i||a&&r&&o||!s&&o||!u)return-1}return 0}function Bo(t,e,r){e=e.length?St(e,function(t){return et(t)?function(e){return bo(e,1===t.length?t[0]:t)}:t}):[Tr];var n=-1;e=St(e,ct(So));var o=function(t,e){var r=-1,n=nt(t)?Array(t.length):[];return Xn(t,function(t,o,i){n[++r]=e(t,o,i)}),n}(t,function(t,r,o){var i=St(e,function(e){return e(t)});return{criteria:i,index:++n,value:t}});return function(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}(o,function(t,e){return function(t,e,r){for(var n=-1,o=t.criteria,i=e.criteria,s=o.length,a=r.length;++n<s;){var u=zo(o[n],i[n]);if(u)return n>=a?u:u*("desc"==r[n]?-1:1)}return t.index-e.index}(t,e,r)})}var To=Kr(function(t,e){if(null==t)return[];var r=e.length;return r>1&&Vr(t,e[0],e[1])?e=[]:r>2&&Vr(e[0],e[1],e[2])&&(e=[e[0]]),Bo(t,Ro(e),[])});const Do=new Map,Co=new Set,Mo=new Map;let Fo=!1;function Lo(t,e){const r=Promise.resolve(e()).catch(e=>{console.error("Skeletor autoSync save error:",e),t?.trigger?.("error",t,e)});let n;Co.add(r),t&&(n=Mo.get(t),n||(n=new Set,Mo.set(t,n)),n.add(r)),r.finally(()=>{Co.delete(r),n&&(n.delete(r),0===n.size&&Mo.delete(t))})}function Uo(t){if(Fo||"undefined"==typeof window)return;Fo=!0;const e=()=>function({storage:t,wait:e=!1}={}){for(const[t,{timerId:e,run:r}]of Do.entries())clearTimeout(e),Lo(t,r);if(Do.clear(),t&&t.flushAll(),e)return Promise.all([...Co]).then(()=>{})}({storage:t});window.addEventListener("pagehide",e),window.addEventListener("visibilitychange",()=>{"hidden"===document.visibilityState&&e()})}var Wo=Object.prototype,qo=Wo.hasOwnProperty,Jo=Kr(function(t,e){t=Object(t);var r=-1,n=e.length,o=n>2?e[2]:void 0;for(o&&Vr(e[0],e[1],o)&&(n=1);++r<n;)for(var i=e[r],s=ze(i),a=-1,u=s.length;++a<u;){var c=s[a],l=t[c];(void 0===l||pe(l,Wo[c])&&!qo.call(t,c))&&(t[c]=i[c])}return t});var Ko=Kr(function(t,e){return function(t,e,r){if("function"!=typeof t)throw new TypeError("Expected a function");return setTimeout(function(){t.apply(void 0,r)},e)}(t,1,e)});var Vo,$o,Qo=Object.prototype.toString,Go=(Vo=function(t,e,r){null!=e&&"function"!=typeof e.toString&&(e=Qo.call(e)),t[e]=r},$o=Mr(Tr),function(t,e){return function(t,e,r,n){return Gn(t,function(t,o,i){e(n,r(t),o,i)}),n}(t,Vo,$o(e),{})});function Ho(t,e){return vo(t,e)}function Xo(t,e){return e.length<2?t:bo(t,function(t,e,r){var n=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(r=r>o?o:r)<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;for(var i=Array(o);++n<o;)i[n]=t[n+e];return i}(e,0,-1))}var Yo=Object.prototype.hasOwnProperty;function Zo(t,e){var r=-1,n=(e=kn(e,t)).length;if(!n)return!0;for(;++r<n;){var o=Nn(e[r]);if("__proto__"===o&&!Yo.call(t,"__proto__"))return!1;if(("constructor"===o||"prototype"===o)&&r<n-1)return!1}var i=Xo(t,e);return null==i||delete i[Nn(function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}(e))]}function ti(t){return Pr(t)?void 0:t}function ei(t){return(null==t?0:t.length)?Ro(t):[]}function ri(t){return Jr(Cr(t,void 0,ei),t+"")}var ni=ri(function(t,e){var r={};if(null==t)return r;var n=!1;e=St(e,function(e){return e=kn(e,t),n||(n=e.length>1),e}),Ne(t,Ge(t),r),n&&(r=pr(r,7,ti));for(var o=e.length;o--;)Zo(r,e[o]);return r});function oi(t,e,r,n){if(!b(t))return t;for(var o=-1,i=(e=kn(e,t)).length,s=i-1,a=t;null!=a&&++o<i;){var u=Nn(e[o]),c=r;if("__proto__"===u||"constructor"===u||"prototype"===u)return t;if(o!=s){var l=a[u];void 0===(c=void 0)&&(c=b(l)?l:mt(e[o+1])?[]:{})}ke(a,u,c),a=a[u]}return t}function ii(t,e){return function(t,e,r){for(var n=-1,o=e.length,i={};++n<o;){var s=e[n],a=bo(t,s);r(a,s)&&oi(i,kn(s,t),a)}return i}(t,e,function(e,r){return _o(t,r)})}var si,ai,ui,ci,li,fi,hi,di,vi,pi,yi,gi=ri(function(t,e){return null==t?{}:ii(t,e)});class bi extends Xt{constructor(t,e){super(),si.add(this),ai.set(this,void 0),ui.set(this,void 0),ci.set(this,"constructing"),this._changing=!1,this._pending=!1,this._url="",this.changed={},this.validationError=null;let r=t||{};e=e||{},this.preinitialize.apply(this,arguments),this.cid=Nt(this.cidPrefix),this.attributes={},e.collection&&(this.collection=e.collection),e.parse&&(r=this.parse(r,e)||{});const n=Rn(this,"defaults");r=Jo(Object.assign({},n,r),n),this.set(r,e),Yt(this,si,"m",di).call(this),this.attrs=new Proxy(this.attributes,{get:(t,e)=>"symbol"!=typeof e&&Yt(this,ai,"f")&&e in Yt(this,ai,"f")?Yt(this,ai,"f")[e]:this.attributes[e],set:(t,e,r)=>(this.set(e,r),!0)}),this.initialize.apply(this,arguments),this.changed={},this.autoSync?Ln(this)&&!this.isNew()?(Zt(this,ci,"hydrating","f"),this.initialized=Yt(this,si,"m",li).call(this)):(Zt(this,ci,"ready","f"),this.initialized=Promise.resolve()):Zt(this,ci,"ready","f")}get storage(){return this._storage}set storage(t){this._storage=t,Vn.register(t)}get browserStorage(){return this._storage}set browserStorage(t){Fn(this),this.storage=t}get autoSync(){return!1}get autoSyncDelay(){return 100}get idAttribute(){return"id"}get cidPrefix(){return"c"}preinitialize(...t){}initialize(t,e){}validate(t,e){return null}defaults(){return{}}get computed(){return{}}toJSON(){return $n(this.attributes)}sync(t,e,r){return Un(e)(t,e,r)}get(t){return Yt(this,ai,"f")&&t in Yt(this,ai,"f")?Yt(this,ai,"f")[t]:this.attributes[t]}keys(){return Object.keys(this.attributes)}values(){return Object.values(this.attributes)}pairs(){return this.entries()}entries(){return Object.entries(this.attributes)}invert(){return Go(this.attributes)}pick(...t){return 1===t.length&&Array.isArray(t[0])&&(t=t[0]),gi(this.attributes,t)}omit(...t){return 1===t.length&&Array.isArray(t[0])&&(t=t[0]),ni(this.attributes,t)}isEmpty(){return gt(this.attributes)}has(t){return null!=this.get(t)}matches(t){return!!function(t){return So("function"==typeof t?t:pr(t,1))}(t)(this.attributes)}set(t,e,r){if(null==t)return this;let n;if("object"==typeof t?(n=t,r=e):(n={},n[t]=e),r=r||{},this.autoSync&&"hydrating"===Yt(this,ci,"f")&&!r.fromStorage)throw new Error("Skeletor: set() called on an autoSync model before initialized resolved. Await model.initialized first.");if(!this._validate(n,r))return null;const o=r.unset,i=r.silent,s=[],a=this._changing;this._changing=!0,a||(this._previousAttributes=$n(this.attributes),this.changed={});const u=this.attributes,c=this.changed,l=this._previousAttributes;for(const t in n)e=n[t],Ho(u[t],e)||s.push(t),Ho(l[t],e)?delete c[t]:c[t]=e,o?delete u[t]:u[t]=e;if(this.idAttribute in n&&(this.id=this.get(this.idAttribute)),!i){s.length&&(this._pending=r);for(let t=0;t<s.length;t++)this.trigger("change:"+s[t],this,u[s[t]],r)}if(s.length&&Yt(this,ui,"f"))for(const[t,e]of Object.entries(Yt(this,ui,"f")))e.deps.some(t=>s.includes(t))&&Yt(this,si,"m",hi).call(this,t,e,i,r);if(a)return this;if(!i)for(;this._pending;)r=this._pending,this._pending=!1,this.trigger("change",this,r);return this._pending=!1,this._changing=!1,"ready"===Yt(this,ci,"f")&&this.autoSync&&Ln(this)&&s.length&&!r.fromStorage&&!r.noAutoSave&&function(t,e,r){const n=Do.get(t);n&&clearTimeout(n.timerId);const o=setTimeout(()=>{Do.delete(t),Lo(t,e)},r);Do.set(t,{timerId:o,run:e})}(this,()=>Yt(this,si,"m",fi).call(this),this.autoSyncDelay),this}unset(t,e){return this.set(t,void 0,Object.assign({},e,{unset:!0}))}clear(t){const e={};for(const t in this.attributes)e[t]=void 0;return this.set(e,Object.assign({},t,{unset:!0}))}hasChanged(t){return null==t?!gt(this.changed):(e=this.changed,r=t,null!=e&&Pn(e,r,wn));var e,r}changedAttributes(t){if(!t)return!!this.hasChanged()&&$n(this.changed);const e=this._changing?this._previousAttributes:this.attributes,r={};let n=!1;for(const o in t){const i=t[o];Ho(e[o],i)||(r[o]=i,n=!0)}return!!n&&r}previous(t){return null!=t&&this._previousAttributes?this._previousAttributes[t]:null}previousAttributes(){return this._previousAttributes?$n(this._previousAttributes):void 0}fetch(t={}){const e=(t=Object.assign({parse:!0},t)).success,r=t.promise?Bn():void 0;let n=!1;if(t.success=o=>{n=!0;const i=t.parse?this.parse(o,t):o;if(!this.set(i,Object.assign({},t,{fromStorage:!0})))return!1;e&&e.call(t.context,this,o,t),this.trigger("sync",this,o,t),r&&r.resolve(o)},Dn(this,t,r),r){const e=t.error;t.error=t=>{n=!0,e(t)}}const o=this.sync("read",this,t);return r?(Promise.resolve(o).then(e=>{n||t.success(e)},t=>r.reject(t)),r):o}save(t,e,r){let n;null==t||"object"==typeof t?(n=t,r=e):(n={},n[t]=e);const o=(r=Object.assign({validate:!0,parse:!0},r)).wait,i=r.promise,s=i&&Bn();if(n&&!o){if(!this.set(n,r))return!1}else if(!this._validate(n||{},r))return!1;const a=r.success,u=r.error,c=this.attributes;r.success=t=>{this.attributes=c;let e=r.parse?this.parse(t,r):t;if(o&&(e=Object.assign({},n,e)),e&&!this.set(e,r))return!1;a&&a.call(r.context,this,t,r),this.trigger("sync",this,t,r),i&&s.resolve()},r.error=(t,e,r)=>{u&&u.call(r.context,t,e,r),i&&s.reject(e)},Dn(this,r),n&&o&&(this.attributes=Object.assign({},c,n));const l=this.isNew()?"create":r.patch?"patch":"update";"patch"!==l||r.attrs||(r.attrs=n);const f=this.sync(l,this,r);return this.attributes=c,i?s:f}destroy(t){!function(t){const e=Do.get(t);e&&(clearTimeout(e.timerId),Do.delete(t))}(this);const e=(t=t?$n(t):{}).success,r=t.wait,n=()=>{this.stopListening(),this.trigger("destroy",this,this.collection,t)};t.success=o=>{r&&n(),e&&e.call(t.context,this,o,t),this.isNew()||this.trigger("sync",this,o,t)};const o=function(t){const e=Mo.get(t);return e&&0!==e.size?Promise.all([...e]).then(()=>{}):null}(this);o&&this.collection&&(t.collection=this.collection);let i=!1;return this.isNew()?Ko(t.success):(Dn(this,t),i=o?o.then(()=>this.sync("delete",this,t)):this.sync("delete",this,t)),r||n(),i}get urlRoot(){return this._urlRoot}set urlRoot(t){this._urlRoot=t}get url(){if(this._url)return this._url;const t=Rn(this,"urlRoot")||Rn(this.collection,"url")||Tn();if(this.isNew())return t;const e=this.get(this.idAttribute);return t.replace(/[^\/]$/,"$&/")+encodeURIComponent(String(e))}set url(t){this._url=t}parse(t,e){return t}isNew(){return!this.has(this.idAttribute)}isValid(t){return this._validate({},Object.assign({},t,{validate:!0}))}subscribe(t,e,r){if("function"==typeof t){const e=e=>t(e,this.changed);return this.on("change",e),()=>this.off("change",e)}return super.subscribe(t,e,r)}_validate(t,e){if(!e?.validate||!this.validate)return!0;t=Object.assign({},this.attributes,t);const r=this.validationError=this.validate(t,e)||null;return!r||(this.trigger("invalid",this,r,Object.assign(e,{validationError:r})),!1)}}ai=new WeakMap,ui=new WeakMap,ci=new WeakMap,si=new WeakSet,li=async function(){Uo(Vn);try{await this.fetch({fromStorage:!0,promise:!0})}catch(t){if("Record Not Found"!==t)throw t}finally{Zt(this,ci,"ready","f")}},fi=function(){return this.save(null,{noAutoSave:!0})},hi=function(t,e,r,n){const o=e.fn(this);Ho(Yt(this,ai,"f")[t],o)||(Yt(this,ai,"f")[t]=o,r||(this.changed[t]=o,this.trigger("change:"+t,this,o,n)))},di=function(){const t=Rn(this,"computed");if(t&&!gt(t)){Zt(this,ui,t,"f"),Zt(this,ai,{},"f");for(const[e,r]of Object.entries(t))Yt(this,ai,"f")[e]=r.fn(this)}};const mi={add:!0,remove:!0,merge:!0},_i={add:!0,remove:!1};class wi extends Xt{constructor(t,e){super(),vi.add(this),this._url="",this[yi]=this.values,e=e||{},this.preinitialize.apply(this,arguments),e.model&&(this._model=e.model),void 0!==e.comparator&&(this.comparator=e.comparator),this._reset(),this.initialize.apply(this,arguments),t&&this.reset(t,Object.assign({silent:!0},e)),this[Symbol.iterator]=this.values,this.autoSync&&(this.initialized=Ln(this)?Yt(this,vi,"m",pi).call(this):Promise.resolve())}get comparator(){return this._comparator}set comparator(t){this._comparator=t}get storage(){return this._storage}set storage(t){this._storage=t,Vn.register(t)}get browserStorage(){return this._storage}set browserStorage(t){Fn(this),this.storage=t}get autoSync(){return!1}get model(){return this._model??bi}set model(t){this._model=t}get length(){return this.models.length}get url(){return this._url}set url(t){this._url=t}preinitialize(...t){}initialize(...t){}toJSON(){return this.map(function(t){return t.toJSON()})}sync(t,e,r){return Un(this)(t,e,r)}add(t,e){return this.set(t,Object.assign({merge:!1},e,_i))}remove(t,e){e=Object.assign({},e);const r=!Array.isArray(t),n=r?[t]:t.slice(),o=this._removeModels(n,e);return!e.silent&&o.length&&(e.changes={added:[],merged:[],removed:o},this.trigger("update",this,e)),r?o[0]:o}set(t,e){if(null==t)return;(e=Object.assign({},mi,e)).parse&&!this._isModel(t)&&(t=this.parse(t,e)||[]);const r=!Array.isArray(t);t=r?[t]:t.slice();let n=e.at;null!=n&&(n=+n),n>this.length&&(n=this.length),n<0&&(n+=this.length+1);const o=[],i=[],s=[],a=[],u={},c=e.add,l=e.merge,f=e.remove;let h=!1;const d=this.comparator&&null==n&&!1!==e.sort,v=yr(this.comparator)?this.comparator:null;let p,y;for(y=0;y<t.length;y++){p=t[y];const r=this.get(p);if(r){if(l&&p!==r){let t=this._isModel(p)?p.attributes:p;e.parse&&(t=r.parse(t,e)),r.set(t,e),s.push(r),d&&!h&&(h=r.hasChanged(v))}u[r.cid]||(u[r.cid]=!0,o.push(r)),t[y]=r}else c&&(p=t[y]=this._prepareModel(p,e),p&&(i.push(p),this._addReference(p,e),u[p.cid]=!0,o.push(p)))}if(f){for(y=0;y<this.length;y++)p=this.models[y],u[p.cid]||a.push(p);a.length&&this._removeModels(a,e)}let g=!1;const b=!d&&c&&f;if(o.length&&b)g=this.length!==o.length||this.models.some((t,e)=>t!==o[e]),this.models.length=0,this.models.splice(0,0,...o);else if(i.length){d&&(h=!0);let t=n??this.length;t=Math.min(Math.max(t,0),this.models.length),this.models.splice(t,0,...i)}if(h&&this.sort({silent:!0}),!e.silent){for(y=0;y<i.length;y++)null!=n&&(e.index=n+y),p=i[y],p.trigger("add",p,this,e);(h||g)&&this.trigger("sort",this,e),(i.length||a.length||s.length)&&(e.changes={added:i,removed:a,merged:s},this.trigger("update",this,e))}return r?t[0]:t}async clearStore(t={},e=()=>!0){await Promise.all(this.models.filter(e).map(e=>new Promise(r=>{e.destroy(Object.assign(t,{success:r,error:(t,e)=>{console.error(e),r()}}))}))),await(Ln(this)?.clear()),this.reset()}reset(t,e){e=e?$n(e):{};for(let t=0;t<this.models.length;t++)this._removeReference(this.models[t],e);return e.previousModels=this.models,this._reset(),t=this.add(t,Object.assign({silent:!0},e)),e.silent||this.trigger("reset",this,e),t}push(t,e){return this.add(t,Object.assign({at:this.length},e))}pop(t){const e=this.at(this.length-1);return this.remove(e,t)}unshift(t,e){return this.add(t,Object.assign({at:0},e))}shift(t){const e=this.at(0);return this.remove(e,t)}slice(t,e){return this.models.slice(t,e)}filter(t,e){return this.models.filter(m(t)?t:e=>e.matches(t),e)}every(t){return m(t)?this.models.map(t=>t.attributes).every(t):this.models.every(e=>e.matches(t))}difference(t){return this.models.filter(e=>!t.includes(e))}max(){return Math.max.apply(Math,this.models)}min(){return Math.min.apply(Math,this.models)}drop(t=1){return this.models.slice(t)}some(t){return m(t)?this.models.map(t=>t.attributes).some(t):this.models.some(e=>e.matches(t))}sortBy(t){return To(this.models,m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}isEmpty(){return!this.models.length}keyBy(t){return ko(this.models,t)}each(t,e){return this.forEach(t,e)}forEach(t,e){return this.models.forEach(t,e)}includes(t){return this.models.includes(t)}size(){return this.models.length}countBy(t){return Ao(this.models,m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}groupBy(t){return xo(this.models,m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}indexOf(t,e){return this.models.indexOf(t,e)}findLastIndex(t,e){return this.models.findLastIndex(m(t)?t:e=>yr(t)?e.get(t):e.matches(t),e)}lastIndexOf(t,e){return this.models.lastIndexOf(t,e)}findIndex(t){return this.models.findIndex(m(t)?t:e=>yr(t)?e.get(t):e.matches(t))}last(){const t=null==this.models?0:this.models.length;return t?this.models[t-1]:void 0}head(){return this.models[0]}first(){return this.head()}map(t,e){return this.models.map(m(t)?t:e=>yr(t)?e.get(t):e.matches(t),e)}reduce(t,e){return this.models.reduce(t,e||this.models[0])}reduceRight(t,e){return this.models.reduceRight(t,e||this.models[0])}toArray(){return Array.from(this.models)}get(t){if(null!=t)return this._byId[t]||this._byId[this.modelId(this._isModel(t)?t.attributes:t)]||t.cid&&this._byId[t.cid]}has(t){return null!=this.get(t)}at(t){return t<0&&(t+=this.length),this.models[t]}where(t,e){return this[e?"find":"filter"](t)}findWhere(t){return this.where(t,!0)}find(t,e){const r=m(t)?t:e=>e.matches(t);return this.models.find(r,e)}sort(t){let e=this.comparator;if(!e)throw new Error("Cannot sort a set without a comparator");t=t||{};const r=m(e)?e.length:0;return m(e)&&(e=e.bind(this)),1===r||yr(e)?this.models=this.sortBy(e):this.models.sort(e),t.silent||this.trigger("sort",this,t),this}pluck(t){return this.map(t+"")}fetch(t){const e=(t=Object.assign({parse:!0},t)).success,r=this,n=t.promise?Bn():void 0;let o=!1;if(t.success=function(i){o=!0;const s=t.reset?"reset":"set";r[s](i,Object.assign({},t,{fromStorage:!0})),e&&e.call(t.context,r,i,t),n&&n.resolve(),r.trigger("sync",r,i,t)},Dn(this,t,n),n){const e=t.error;t.error=t=>{o=!0,e(t)}}const i=this.sync("read",this,t);return n?(Promise.resolve(i).then(e=>{o||t.success(e)},t=>n.reject(t)),n):i}create(t,e){const r=(e=e?$n(e):{}).wait,n=e.promise,o=n&&Bn(),i=this._prepareModel(t,e);if(!i)return null;r||this.add(i,e);const s=this,a=e.success,u=e.error;return e.success=function(t,e,i){r&&s.add(t,i),a&&a.call(i.context,t,e,i),n&&o.resolve(t)},e.error=function(t,e,r){u&&u.call(r.context,t,e,r),n&&o.reject(e)},i.save(null,Object.assign(e,{promise:!1})),n?o:i}subscribe(t,e,r){if("function"==typeof t){const e=()=>t(this);return this.on("update reset sort",e),()=>this.off("update reset sort",e)}return super.subscribe(t,e,r)}parse(t,e){return t}modelId(t){return t[this.model.prototype?.idAttribute||"id"]}values(){return new Oi(this,ji)}keys(){return new Oi(this,Si)}entries(){return new Oi(this,Ii)}_reset(){this.models=[],this._byId={}}createModel(t,e){return new(0,this.model)(t,e)}_prepareModel(t,e){if(this._isModel(t))return t.collection||(t.collection=this),t;(e=e?$n(e):{}).collection=this;const r=this.createModel(t,e);return r.validationError?(this.trigger("invalid",this,r.validationError,e),null):r}_removeModels(t,e){const r=[];for(let n=0;n<t.length;n++){const o=this.get(t[n]);if(!o)continue;const i=this.indexOf(o);this.models.splice(i,1),delete this._byId[o.cid];const s=this.modelId(o.attributes);null!=s&&delete this._byId[s],e?.silent||((e=e||{}).index=i,o.trigger("remove",o,this,e)),r.push(o),this._removeReference(o,e)}return r}_isModel(t){return t instanceof bi}_addReference(t,e){this._byId[t.cid]=t;const r=this.modelId(t.attributes);null!=r&&(this._byId[r]=t),t.on("all",this._onModelEvent,this)}_removeReference(t,e){delete this._byId[t.cid];const r=this.modelId(t.attributes);null!=r&&delete this._byId[r],this===t.collection&&delete t.collection,t.off("all",this._onModelEvent,this)}_onModelEvent(t,e,r,n){if(e){if(("add"===t||"remove"===t)&&r!==this)return;if("destroy"===t&&this.remove(e,n),"change"===t){const t=this.modelId(e.previousAttributes()),r=this.modelId(e.attributes);t!==r&&(null!=t&&delete this._byId[t],null!=r&&(this._byId[r]=e))}}this.trigger.apply(this,arguments)}}vi=new WeakSet,pi=async function(){Uo(Vn),await this.fetch({fromStorage:!0,promise:!0})},yi=Symbol.iterator;const ji=1,Si=2,Ii=3;class Oi{constructor(t,e){this._collection=t,this._kind=e,this._index=0}next(){if(this._collection){if(this._index<this._collection.length){const t=this._collection.at(this._index);if(this._index++,!t)return{value:void 0,done:!0};let e;if(this._kind===ji)e=t;else{const r=this._collection.modelId(t.attributes);e=this._kind===Si?r:[r,t]}return{value:e,done:!1}}this._collection=void 0}return{value:void 0,done:!0}}[Symbol.iterator](){return this}}const Ai={Collection:wi,EventEmitter:Ht,Model:bi,sync:Wn},Ei="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global;Ai.VERSION="0.0.1";const xi=Ei.Skeletor;function ki(){return Ei.Skeletor=xi,this}Ai.noConflict=ki,Ei.Skeletor=Ai;const Ni=Vn;t.BrowserStorage=Ni,t.Collection=wi,t.EventEmitter=Ht,t.Model=bi,t.PersistentStorage=Vn,t.default=Ai,t.getStorage=Ln,t.noConflict=ki,t.sync=Wn,Object.defineProperty(t,"__esModule",{value:!0})});
61
61
  //# sourceMappingURL=skeletor.min.js.map