@openmrs/esm-offline 3.3.2-pre.1188 → 3.3.2-pre.1211

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,2 +1,2 @@
1
- System.register(["@openmrs/esm-api","@openmrs/esm-state"],(function(e,t){var n={},r={};return{setters:[function(e){n.getLoggedInUser=e.getLoggedInUser},function(e){r.createGlobalStore=e.createGlobalStore}],execute:function(){e((()=>{var e={602:e=>{var t=function(e){"use strict";var t,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var o=t&&t.prototype instanceof m?t:m,i=Object.create(o.prototype),a=new j(r||[]);return i._invoke=function(e,t,n){var r=h;return function(o,i){if(r===d)throw new Error("Generator is already running");if(r===p){if("throw"===o)throw i;return I()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=E(a,n);if(s){if(s===y)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===h)throw r=p,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var u=l(e,t,n);if("normal"===u.type){if(r=n.done?p:f,u.arg===y)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r=p,n.method="throw",n.arg=u.arg)}}}(e,n,a),i}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var h="suspendedStart",f="suspendedYield",d="executing",p="completed",y={};function m(){}function v(){}function g(){}var b={};u(b,i,(function(){return this}));var w=Object.getPrototypeOf,_=w&&w(w(A([])));_&&_!==n&&r.call(_,i)&&(b=_);var x=g.prototype=m.prototype=Object.create(b);function k(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function n(o,i,a,s){var u=l(e[o],e,i);if("throw"!==u.type){var c=u.arg,h=c.value;return h&&"object"==typeof h&&r.call(h,"__await")?t.resolve(h.__await).then((function(e){n("next",e,a,s)}),(function(e){n("throw",e,a,s)})):t.resolve(h).then((function(e){c.value=e,a(c)}),(function(e){return n("throw",e,a,s)}))}s(u.arg)}var o;this._invoke=function(e,r){function i(){return new t((function(t,o){n(e,r,t,o)}))}return o=o?o.then(i,i):i()}}function E(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,E(e,n),"throw"===n.method))return y;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return y}var o=l(r,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,y;var i=o.arg;return i?i.done?(n[e.resultName]=i.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,y):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,y)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function A(e){if(e){var n=e[i];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function n(){for(;++o<e.length;)if(r.call(e,o))return n.value=e[o],n.done=!1,n;return n.value=t,n.done=!0,n};return a.next=a}}return{next:I}}function I(){return{value:t,done:!0}}return v.prototype=g,u(x,"constructor",g),u(g,"constructor",v),v.displayName=u(g,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,u(e,s,"GeneratorFunction")),e.prototype=Object.create(x),e},e.awrap=function(e){return{__await:e}},k(S.prototype),u(S.prototype,a,(function(){return this})),e.AsyncIterator=S,e.async=function(t,n,r,o,i){void 0===i&&(i=Promise);var a=new S(c(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(x),u(x,s,"Generator"),u(x,i,(function(){return this})),u(x,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=A,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(P),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function o(r,o){return s.type="throw",s.arg=e,n.next=r,o&&(n.method="next",n.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,y):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;P(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:A(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),y}},e}(e.exports);try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}},968:(e,t,n)=>{const r=n(577).R;t.s=function(e){if(e||(e=1),!n.y.meta||!n.y.meta.url)throw console.error("__system_context__",n.y),Error("systemjs-webpack-interop was provided an unknown SystemJS context. Expected context.meta.url, but none was provided");n.p=r(n.y.meta.url,e)}},577:(e,t,n)=>{t.R=function(e,t){var n=document.createElement("a");n.href=e;for(var r="/"===n.pathname[0]?n.pathname:"/"+n.pathname,o=0,i=r.length;o!==t&&i>=0;)"/"===r[--i]&&o++;if(o!==t)throw Error("systemjs-webpack-interop: rootDirectoryLevel ("+t+") is greater than the number of directories ("+o+") in the URL path "+e);var a=r.slice(0,i+1);return n.protocol+"//"+n.host+a};Number.isInteger},766:e=>{"use strict";e.exports=n},685:e=>{"use strict";e.exports=r}},o={};function i(t){var n=o[t];if(void 0!==n)return n.exports;var r=o[t]={exports:{}};return e[t](r,r.exports,i),r.exports}i.y=t,i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})();var a={};return(0,i(968).s)(1),(()=>{"use strict";i.r(a),i.d(a,{activateOfflineCapability:()=>L,beginEditSynchronizationItem:()=>bo,canBeginEditSynchronizationItemsOfType:()=>go,deleteSynchronizationItem:()=>_o,generateOfflineUuid:()=>Co,getCurrentOfflineMode:()=>N,getFullSynchronizationItems:()=>po,getFullSynchronizationItemsFor:()=>co,getOfflineDb:()=>Vr,getOfflinePatientDataStore:()=>Vo,getOfflineSynchronizationStore:()=>Qr,getOmrsServiceWorker:()=>y,getSynchronizationItem:()=>mo,getSynchronizationItems:()=>ho,getSynchronizationItemsFor:()=>so,isOfflineUuid:()=>Do,loadPersistedPatientDataSyncState:()=>Zo,messageOmrsServiceWorker:()=>S,offlineUuidPrefix:()=>Ko,omrsOfflineCachingStrategyHttpHeaderName:()=>g,omrsOfflineResponseBodyHttpHeaderName:()=>m,omrsOfflineResponseStatusHttpHeaderName:()=>v,queueSynchronizationItem:()=>io,queueSynchronizationItemFor:()=>ro,registerOfflinePatientHandler:()=>Go,registerOmrsServiceWorker:()=>p,runSynchronization:()=>Xr,setCurrentOfflineMode:()=>M,setupOfflineSync:()=>ko,syncOfflinePatientData:()=>Yo});try{self["workbox:window:6.5.1"]&&_()}catch(e){}function e(e,t){return new Promise((function(n){var r=new MessageChannel;r.port1.onmessage=function(e){n(e.data)},e.postMessage(t,[r.port2])}))}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function n(e,n){var r;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(r=function(e,n){if(e){if("string"==typeof e)return t(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?t(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){r&&(e=r);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(r=e[Symbol.iterator]()).next.bind(r)}try{self["workbox:core:6.5.1"]&&_()}catch(e){}var r=function(){var e=this;this.promise=new Promise((function(t,n){e.resolve=t,e.reject=n}))};function o(e,t){var n=location.href;return new URL(e,n).href===new URL(t,n).href}var s=function(e,t){this.type=e,Object.assign(this,t)};function u(e,t,n){return n?t?t(e):e:(e&&e.then||(e=Promise.resolve(e)),t?e.then(t):e)}function c(){}var l={type:"SKIP_WAITING"};function h(e,t){if(!t)return e&&e.then?e.then(c):Promise.resolve()}var f=function(t){var n,i;function a(e,n){var i,a;return void 0===n&&(n={}),(i=t.call(this)||this).nn={},i.tn=0,i.rn=new r,i.en=new r,i.on=new r,i.un=0,i.an=new Set,i.cn=function(){var e=i.fn,t=e.installing;i.tn>0||!o(t.scriptURL,i.sn.toString())||performance.now()>i.un+6e4?(i.vn=t,e.removeEventListener("updatefound",i.cn)):(i.hn=t,i.an.add(t),i.rn.resolve(t)),++i.tn,t.addEventListener("statechange",i.ln)},i.ln=function(e){var t=i.fn,n=e.target,r=n.state,o=n===i.vn,a={sw:n,isExternal:o,originalEvent:e};!o&&i.mn&&(a.isUpdate=!0),i.dispatchEvent(new s(r,a)),"installed"===r?i.wn=self.setTimeout((function(){"installed"===r&&t.waiting===n&&i.dispatchEvent(new s("waiting",a))}),200):"activating"===r&&(clearTimeout(i.wn),o||i.en.resolve(n))},i.dn=function(e){var t=i.hn,n=t!==navigator.serviceWorker.controller;i.dispatchEvent(new s("controlling",{isExternal:n,originalEvent:e,sw:t,isUpdate:i.mn})),n||i.on.resolve(t)},i.gn=(a=function(e){var t=e.data,n=e.ports,r=e.source;return u(i.getSW(),(function(){i.an.has(r)&&i.dispatchEvent(new s("message",{data:t,originalEvent:e,ports:n,sw:r}))}))},function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];try{return Promise.resolve(a.apply(this,e))}catch(e){return Promise.reject(e)}}),i.sn=e,i.nn=n,navigator.serviceWorker.addEventListener("message",i.gn),i}i=t,(n=a).prototype=Object.create(i.prototype),n.prototype.constructor=n,n.__proto__=i;var c,f=a.prototype;return f.register=function(e){var t=(void 0===e?{}:e).immediate,n=void 0!==t&&t;try{var r=this;return function(e,t){var n=e();return n&&n.then?n.then(t):t()}((function(){if(!n&&"complete"!==document.readyState)return h(new Promise((function(e){return window.addEventListener("load",e)})))}),(function(){return r.mn=Boolean(navigator.serviceWorker.controller),r.yn=r.pn(),u(r.bn(),(function(e){r.fn=e,r.yn&&(r.hn=r.yn,r.en.resolve(r.yn),r.on.resolve(r.yn),r.yn.addEventListener("statechange",r.ln,{once:!0}));var t=r.fn.waiting;return t&&o(t.scriptURL,r.sn.toString())&&(r.hn=t,Promise.resolve().then((function(){r.dispatchEvent(new s("waiting",{sw:t,wasWaitingBeforeRegister:!0}))})).then((function(){}))),r.hn&&(r.rn.resolve(r.hn),r.an.add(r.hn)),r.fn.addEventListener("updatefound",r.cn),navigator.serviceWorker.addEventListener("controllerchange",r.dn),r.fn}))}))}catch(e){return Promise.reject(e)}},f.update=function(){try{return this.fn?h(this.fn.update()):void 0}catch(e){return Promise.reject(e)}},f.getSW=function(){return void 0!==this.hn?Promise.resolve(this.hn):this.rn.promise},f.messageSW=function(t){try{return u(this.getSW(),(function(n){return e(n,t)}))}catch(e){return Promise.reject(e)}},f.messageSkipWaiting=function(){this.fn&&this.fn.waiting&&e(this.fn.waiting,l)},f.pn=function(){var e=navigator.serviceWorker.controller;return e&&o(e.scriptURL,this.sn.toString())?e:void 0},f.bn=function(){try{var e=this;return function(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}((function(){return u(navigator.serviceWorker.register(e.sn,e.nn),(function(t){return e.un=performance.now(),t}))}),(function(e){throw e}))}catch(e){return Promise.reject(e)}},(c=[{key:"active",get:function(){return this.en.promise}},{key:"controlling",get:function(){return this.on.promise}}])&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(a.prototype,c),a}(function(){function e(){this.Pn=new Map}var t=e.prototype;return t.addEventListener=function(e,t){this.Sn(e).add(t)},t.removeEventListener=function(e,t){this.Sn(e).delete(t)},t.dispatchEvent=function(e){e.target=this;for(var t,r=n(this.Sn(e.type));!(t=r()).done;)(0,t.value)(e)},t.Sn=function(e){return this.Pn.has(e)||this.Pn.set(e,new Set),this.Pn.get(e)},e}()),d=void 0;function p(e,t){if(void 0!==d)return console.warn("The application's Service Worker has already been registered. The new service worker at ".concat(e," will not be registered.")),d;if(!("serviceWorker"in navigator))throw new Error("Registering the Service Worker is not possible due to missing browser capabilities.");var n=new f(e,t);return d=n.register().then((function(){return n}))}function y(){return null!=d?d:Promise.resolve(void 0)}var m="x-omrs-offline-response-body",v="x-omrs-offline-response-status",g="x-omrs-offline-caching-strategy",b=i(602),w=i.n(b);function x(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function k(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){x(i,r,o,a,s,"next",e)}function s(e){x(i,r,o,a,s,"throw",e)}a(void 0)}))}}function S(e){return E.apply(this,arguments)}function E(){return(E=k(w().mark((function e(t){var n;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y();case 2:if(!(n=e.sent)){e.next=9;break}return e.next=6,n.messageSW(t);case 6:e.t0=e.sent,e.next=10;break;case 9:e.t0={success:!1,result:void 0,error:"No service worker has been registered. This is typically the case when the application has been built without offline-related features."};case 10:return e.abrupt("return",e.t0);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function O(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function P(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){O(i,r,o,a,s,"next",e)}function s(e){O(i,r,o,a,s,"throw",e)}a(void 0)}))}}function j(){return A.apply(this,arguments)}function A(){return(A=P(w().mark((function e(){var t;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=window.sessionStorage,e.prev=1,t.setItem("someKeyHere","test"),t.removeItem("someKeyHere"),e.next=10;break;case 6:if(e.prev=6,e.t0=e.catch(1),e.t0.code!==DOMException.QUOTA_EXCEEDED_ERR||0!==t.length){e.next=10;break}return e.abrupt("return",!0);case 10:return e.abrupt("return",!1);case 11:case"end":return e.stop()}}),e,null,[[1,6]])})))).apply(this,arguments)}function I(){return K.apply(this,arguments)}function K(){return(K=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",!window.indexedDB);case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function C(){return D.apply(this,arguments)}function D(){return D=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){var t=indexedDB.open("test");t.onerror=function(){return e(!0)},t.onsuccess=function(){return e(!1)}})));case 1:case"end":return e.stop()}}),e)}))),D.apply(this,arguments)}function T(){return R.apply(this,arguments)}function R(){return(R=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C();case 2:if(e.t1=e.sent,e.t1){e.next=7;break}return e.next=6,I();case 6:e.t1=e.sent;case 7:if(e.t0=e.t1,e.t0){e.next=12;break}return e.next=11,j();case 11:e.t0=e.sent;case 12:return e.abrupt("return",e.t0);case 13:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var B="openmrs3:offline-mode",F="unavailable";function N(){return{current:F,notAvailable:"unavailable"===F,active:"on"===F}}function M(e){"unavailable"!==F&&"unavailable"!==e&&(localStorage.setItem(B,"on"===e?"active":"disabled"),F=e)}function L(){return q.apply(this,arguments)}function q(){return(q=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T();case 2:e.sent||(F="active"===localStorage.getItem(B)?"on":"off"),navigator.onLine;case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}const U="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,$=Object.keys,W=Array.isArray;function z(e,t){return"object"!=typeof t||$(t).forEach((function(n){e[n]=t[n]})),e}"undefined"==typeof Promise||U.Promise||(U.Promise=Promise);const H=Object.getPrototypeOf,V={}.hasOwnProperty;function G(e,t){return V.call(e,t)}function Y(e,t){"function"==typeof t&&(t=t(H(e))),("undefined"==typeof Reflect?$:Reflect.ownKeys)(t).forEach((n=>{X(e,n,t[n])}))}const Q=Object.defineProperty;function X(e,t,n,r){Q(e,t,z(n&&G(n,"get")&&"function"==typeof n.get?{get:n.get,set:n.set,configurable:!0}:{value:n,configurable:!0,writable:!0},r))}function J(e){return{from:function(t){return e.prototype=Object.create(t.prototype),X(e.prototype,"constructor",e),{extend:Y.bind(null,e.prototype)}}}}const Z=Object.getOwnPropertyDescriptor;function ee(e,t){let n;return Z(e,t)||(n=H(e))&&ee(n,t)}const te=[].slice;function ne(e,t,n){return te.call(e,t,n)}function re(e,t){return t(e)}function oe(e){if(!e)throw new Error("Assertion Failed")}function ie(e){U.setImmediate?setImmediate(e):setTimeout(e,0)}function ae(e,t){return e.reduce(((e,n,r)=>{var o=t(n,r);return o&&(e[o[0]]=o[1]),e}),{})}function se(e,t){if(G(e,t))return e[t];if(!t)return e;if("string"!=typeof t){for(var n=[],r=0,o=t.length;r<o;++r){var i=se(e,t[r]);n.push(i)}return n}var a=t.indexOf(".");if(-1!==a){var s=e[t.substr(0,a)];return void 0===s?void 0:se(s,t.substr(a+1))}}function ue(e,t,n){if(e&&void 0!==t&&(!("isFrozen"in Object)||!Object.isFrozen(e)))if("string"!=typeof t&&"length"in t){oe("string"!=typeof n&&"length"in n);for(var r=0,o=t.length;r<o;++r)ue(e,t[r],n[r])}else{var i=t.indexOf(".");if(-1!==i){var a=t.substr(0,i),s=t.substr(i+1);if(""===s)void 0===n?W(e)&&!isNaN(parseInt(a))?e.splice(a,1):delete e[a]:e[a]=n;else{var u=e[a];u||(u=e[a]={}),ue(u,s,n)}}else void 0===n?W(e)&&!isNaN(parseInt(t))?e.splice(t,1):delete e[t]:e[t]=n}}function ce(e){var t={};for(var n in e)G(e,n)&&(t[n]=e[n]);return t}const le=[].concat;function he(e){return le.apply([],e)}const fe="Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey".split(",").concat(he([8,16,32,64].map((e=>["Int","Uint","Float"].map((t=>t+e+"Array")))))).filter((e=>U[e])),de=fe.map((e=>U[e]));ae(fe,(e=>[e,!0]));let pe=null;function ye(e){pe="undefined"!=typeof WeakMap&&new WeakMap;const t=me(e);return pe=null,t}function me(e){if(!e||"object"!=typeof e)return e;let t=pe&&pe.get(e);if(t)return t;if(W(e)){t=[],pe&&pe.set(e,t);for(var n=0,r=e.length;n<r;++n)t.push(me(e[n]))}else if(de.indexOf(e.constructor)>=0)t=e;else{const n=H(e);for(var o in t=n===Object.prototype?{}:Object.create(n),pe&&pe.set(e,t),e)G(e,o)&&(t[o]=me(e[o]))}return t}const{toString:ve}={};function ge(e){return ve.call(e).slice(8,-1)}const be="undefined"!=typeof Symbol?Symbol.iterator:"@@iterator",we="symbol"==typeof be?function(e){var t;return null!=e&&(t=e[be])&&t.apply(e)}:function(){return null},_e={};function xe(e){var t,n,r,o;if(1===arguments.length){if(W(e))return e.slice();if(this===_e&&"string"==typeof e)return[e];if(o=we(e)){for(n=[];!(r=o.next()).done;)n.push(r.value);return n}if(null==e)return[e];if("number"==typeof(t=e.length)){for(n=new Array(t);t--;)n[t]=e[t];return n}return[e]}for(t=arguments.length,n=new Array(t);t--;)n[t]=arguments[t];return n}const ke="undefined"!=typeof Symbol?e=>"AsyncFunction"===e[Symbol.toStringTag]:()=>!1;var Se="undefined"!=typeof location&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function Ee(e,t){Se=e,Oe=t}var Oe=()=>!0;const Pe=!new Error("").stack;function je(){if(Pe)try{throw je.arguments,new Error}catch(e){return e}return new Error}function Ae(e,t){var n=e.stack;return n?(t=t||0,0===n.indexOf(e.name)&&(t+=(e.name+e.message).split("\n").length),n.split("\n").slice(t).filter(Oe).map((e=>"\n"+e)).join("")):""}var Ie=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],Ke=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"].concat(Ie),Ce={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function De(e,t){this._e=je(),this.name=e,this.message=t}function Te(e,t){return e+". Errors: "+Object.keys(t).map((e=>t[e].toString())).filter(((e,t,n)=>n.indexOf(e)===t)).join("\n")}function Re(e,t,n,r){this._e=je(),this.failures=t,this.failedKeys=r,this.successCount=n,this.message=Te(e,t)}function Be(e,t){this._e=je(),this.name="BulkError",this.failures=Object.keys(t).map((e=>t[e])),this.failuresByPos=t,this.message=Te(e,t)}J(De).from(Error).extend({stack:{get:function(){return this._stack||(this._stack=this.name+": "+this.message+Ae(this._e,2))}},toString:function(){return this.name+": "+this.message}}),J(Re).from(De),J(Be).from(De);var Fe=Ke.reduce(((e,t)=>(e[t]=t+"Error",e)),{});const Ne=De;var Me=Ke.reduce(((e,t)=>{var n=t+"Error";function r(e,r){this._e=je(),this.name=n,e?"string"==typeof e?(this.message=`${e}${r?"\n "+r:""}`,this.inner=r||null):"object"==typeof e&&(this.message=`${e.name} ${e.message}`,this.inner=e):(this.message=Ce[t]||n,this.inner=null)}return J(r).from(Ne),e[t]=r,e}),{});Me.Syntax=SyntaxError,Me.Type=TypeError,Me.Range=RangeError;var Le=Ie.reduce(((e,t)=>(e[t+"Error"]=Me[t],e)),{}),qe=Ke.reduce(((e,t)=>(-1===["Syntax","Type","Range"].indexOf(t)&&(e[t+"Error"]=Me[t]),e)),{});function Ue(){}function $e(e){return e}function We(e,t){return null==e||e===$e?t:function(n){return t(e(n))}}function ze(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function He(e,t){return e===Ue?t:function(){var n=e.apply(this,arguments);void 0!==n&&(arguments[0]=n);var r=this.onsuccess,o=this.onerror;this.onsuccess=null,this.onerror=null;var i=t.apply(this,arguments);return r&&(this.onsuccess=this.onsuccess?ze(r,this.onsuccess):r),o&&(this.onerror=this.onerror?ze(o,this.onerror):o),void 0!==i?i:n}}function Ve(e,t){return e===Ue?t:function(){e.apply(this,arguments);var n=this.onsuccess,r=this.onerror;this.onsuccess=this.onerror=null,t.apply(this,arguments),n&&(this.onsuccess=this.onsuccess?ze(n,this.onsuccess):n),r&&(this.onerror=this.onerror?ze(r,this.onerror):r)}}function Ge(e,t){return e===Ue?t:function(n){var r=e.apply(this,arguments);z(n,r);var o=this.onsuccess,i=this.onerror;this.onsuccess=null,this.onerror=null;var a=t.apply(this,arguments);return o&&(this.onsuccess=this.onsuccess?ze(o,this.onsuccess):o),i&&(this.onerror=this.onerror?ze(i,this.onerror):i),void 0===r?void 0===a?void 0:a:z(r,a)}}function Ye(e,t){return e===Ue?t:function(){return!1!==t.apply(this,arguments)&&e.apply(this,arguments)}}function Qe(e,t){return e===Ue?t:function(){var n=e.apply(this,arguments);if(n&&"function"==typeof n.then){for(var r=this,o=arguments.length,i=new Array(o);o--;)i[o]=arguments[o];return n.then((function(){return t.apply(r,i)}))}return t.apply(this,arguments)}}qe.ModifyError=Re,qe.DexieError=De,qe.BulkError=Be;var Xe={};const[Je,Ze,et]="undefined"==typeof Promise?[]:(()=>{let e=Promise.resolve();if("undefined"==typeof crypto||!crypto.subtle)return[e,H(e),e];const t=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[t,H(t),e]})(),tt=Ze&&Ze.then,nt=Je&&Je.constructor,rt=!!et;var ot=!1,it=et?()=>{et.then(jt)}:U.setImmediate?setImmediate.bind(null,jt):U.MutationObserver?()=>{var e=document.createElement("div");new MutationObserver((()=>{jt(),e=null})).observe(e,{attributes:!0}),e.setAttribute("i","1")}:()=>{setTimeout(jt,0)},at=function(e,t){yt.push([e,t]),ut&&(it(),ut=!1)},st=!0,ut=!0,ct=[],lt=[],ht=null,ft=$e,dt={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:Jt,pgp:!1,env:{},finalize:function(){this.unhandleds.forEach((e=>{try{Jt(e[0],e[1])}catch(e){}}))}},pt=dt,yt=[],mt=0,vt=[];function gt(e){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");this._listeners=[],this.onuncatched=Ue,this._lib=!1;var t=this._PSD=pt;if(Se&&(this._stackHolder=je(),this._prev=null,this._numPrev=0),"function"!=typeof e){if(e!==Xe)throw new TypeError("Not a function");return this._state=arguments[1],this._value=arguments[2],void(!1===this._state&&xt(this,this._value))}this._state=null,this._value=null,++t.ref,_t(this,e)}const bt={get:function(){var e=pt,t=Nt;function n(n,r){var o=!e.global&&(e!==pt||t!==Nt);const i=o&&!Ut();var a=new gt(((t,a)=>{St(this,new wt(Qt(n,e,o,i),Qt(r,e,o,i),t,a,e))}));return Se&&Pt(a,this),a}return n.prototype=Xe,n},set:function(e){X(this,"then",e&&e.prototype===Xe?bt:{get:function(){return e},set:bt.set})}};function wt(e,t,n,r,o){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.resolve=n,this.reject=r,this.psd=o}function _t(e,t){try{t((t=>{if(null===e._state){if(t===e)throw new TypeError("A promise cannot be resolved with itself.");var n=e._lib&&At();t&&"function"==typeof t.then?_t(e,((e,n)=>{t instanceof gt?t._then(e,n):t.then(e,n)})):(e._state=!0,e._value=t,kt(e)),n&&It()}}),xt.bind(null,e))}catch(t){xt(e,t)}}function xt(e,t){if(lt.push(t),null===e._state){var n=e._lib&&At();t=ft(t),e._state=!1,e._value=t,Se&&null!==t&&"object"==typeof t&&!t._promise&&function(e,t,n){try{e.apply(null,void 0)}catch(e){}}((()=>{var n=ee(t,"stack");t._promise=e,X(t,"stack",{get:()=>ot?n&&(n.get?n.get.apply(t):n.value):e.stack})})),function(e){ct.some((t=>t._value===e._value))||ct.push(e)}(e),kt(e),n&&It()}}function kt(e){var t=e._listeners;e._listeners=[];for(var n=0,r=t.length;n<r;++n)St(e,t[n]);var o=e._PSD;--o.ref||o.finalize(),0===mt&&(++mt,at((()=>{0==--mt&&Kt()}),[]))}function St(e,t){if(null!==e._state){var n=e._state?t.onFulfilled:t.onRejected;if(null===n)return(e._state?t.resolve:t.reject)(e._value);++t.psd.ref,++mt,at(Et,[n,e,t])}else e._listeners.push(t)}function Et(e,t,n){try{ht=t;var r,o=t._value;t._state?r=e(o):(lt.length&&(lt=[]),r=e(o),-1===lt.indexOf(o)&&function(e){for(var t=ct.length;t;)if(ct[--t]._value===e._value)return void ct.splice(t,1)}(t)),n.resolve(r)}catch(e){n.reject(e)}finally{ht=null,0==--mt&&Kt(),--n.psd.ref||n.psd.finalize()}}function Ot(e,t,n){if(t.length===n)return t;var r="";if(!1===e._state){var o,i,a=e._value;null!=a?(o=a.name||"Error",i=a.message||a,r=Ae(a,0)):(o=a,i=""),t.push(o+(i?": "+i:"")+r)}return Se&&((r=Ae(e._stackHolder,2))&&-1===t.indexOf(r)&&t.push(r),e._prev&&Ot(e._prev,t,n)),t}function Pt(e,t){var n=t?t._numPrev+1:0;n<100&&(e._prev=t,e._numPrev=n)}function jt(){At()&&It()}function At(){var e=st;return st=!1,ut=!1,e}function It(){var e,t,n;do{for(;yt.length>0;)for(e=yt,yt=[],n=e.length,t=0;t<n;++t){var r=e[t];r[0].apply(null,r[1])}}while(yt.length>0);st=!0,ut=!0}function Kt(){var e=ct;ct=[],e.forEach((e=>{e._PSD.onunhandled.call(null,e._value,e)}));for(var t=vt.slice(0),n=t.length;n;)t[--n]()}function Ct(e){return new gt(Xe,!1,e)}function Dt(e,t){var n=pt;return function(){var r=At(),o=pt;try{return Ht(n,!0),e.apply(this,arguments)}catch(e){t&&t(e)}finally{Ht(o,!1),r&&It()}}}Y(gt.prototype,{then:bt,_then:function(e,t){St(this,new wt(null,null,e,t,pt))},catch:function(e){if(1===arguments.length)return this.then(null,e);var t=arguments[0],n=arguments[1];return"function"==typeof t?this.then(null,(e=>e instanceof t?n(e):Ct(e))):this.then(null,(e=>e&&e.name===t?n(e):Ct(e)))},finally:function(e){return this.then((t=>(e(),t)),(t=>(e(),Ct(t))))},stack:{get:function(){if(this._stack)return this._stack;try{ot=!0;var e=Ot(this,[],20).join("\nFrom previous: ");return null!==this._state&&(this._stack=e),e}finally{ot=!1}}},timeout:function(e,t){return e<1/0?new gt(((n,r)=>{var o=setTimeout((()=>r(new Me.Timeout(t))),e);this.then(n,r).finally(clearTimeout.bind(null,o))})):this}}),"undefined"!=typeof Symbol&&Symbol.toStringTag&&X(gt.prototype,Symbol.toStringTag,"Dexie.Promise"),dt.env=Vt(),Y(gt,{all:function(){var e=xe.apply(null,arguments).map($t);return new gt((function(t,n){0===e.length&&t([]);var r=e.length;e.forEach(((o,i)=>gt.resolve(o).then((n=>{e[i]=n,--r||t(e)}),n)))}))},resolve:e=>{if(e instanceof gt)return e;if(e&&"function"==typeof e.then)return new gt(((t,n)=>{e.then(t,n)}));var t=new gt(Xe,!0,e);return Pt(t,ht),t},reject:Ct,race:function(){var e=xe.apply(null,arguments).map($t);return new gt(((t,n)=>{e.map((e=>gt.resolve(e).then(t,n)))}))},PSD:{get:()=>pt,set:e=>pt=e},totalEchoes:{get:()=>Nt},newPSD:Lt,usePSD:Gt,scheduler:{get:()=>at,set:e=>{at=e}},rejectionMapper:{get:()=>ft,set:e=>{ft=e}},follow:(e,t)=>new gt(((n,r)=>Lt(((t,n)=>{var r=pt;r.unhandleds=[],r.onunhandled=n,r.finalize=ze((function(){!function(e){vt.push((function t(){e(),vt.splice(vt.indexOf(t),1)})),++mt,at((()=>{0==--mt&&Kt()}),[])}((()=>{0===this.unhandleds.length?t():n(this.unhandleds[0])}))}),r.finalize),e()}),t,n,r)))}),nt&&(nt.allSettled&&X(gt,"allSettled",(function(){const e=xe.apply(null,arguments).map($t);return new gt((t=>{0===e.length&&t([]);let n=e.length;const r=new Array(n);e.forEach(((e,o)=>gt.resolve(e).then((e=>r[o]={status:"fulfilled",value:e}),(e=>r[o]={status:"rejected",reason:e})).then((()=>--n||t(r)))))}))})),nt.any&&"undefined"!=typeof AggregateError&&X(gt,"any",(function(){const e=xe.apply(null,arguments).map($t);return new gt(((t,n)=>{0===e.length&&n(new AggregateError([]));let r=e.length;const o=new Array(r);e.forEach(((e,i)=>gt.resolve(e).then((e=>t(e)),(e=>{o[i]=e,--r||n(new AggregateError(o))}))))}))})));const Tt={awaits:0,echoes:0,id:0};var Rt=0,Bt=[],Ft=0,Nt=0,Mt=0;function Lt(e,t,n,r){var o=pt,i=Object.create(o);i.parent=o,i.ref=0,i.global=!1,i.id=++Mt;var a=dt.env;i.env=rt?{Promise:gt,PromiseProp:{value:gt,configurable:!0,writable:!0},all:gt.all,race:gt.race,allSettled:gt.allSettled,any:gt.any,resolve:gt.resolve,reject:gt.reject,nthen:Xt(a.nthen,i),gthen:Xt(a.gthen,i)}:{},t&&z(i,t),++o.ref,i.finalize=function(){--this.parent.ref||this.parent.finalize()};var s=Gt(i,e,n,r);return 0===i.ref&&i.finalize(),s}function qt(){return Tt.id||(Tt.id=++Rt),++Tt.awaits,Tt.echoes+=100,Tt.id}function Ut(){return!!Tt.awaits&&(0==--Tt.awaits&&(Tt.id=0),Tt.echoes=100*Tt.awaits,!0)}function $t(e){return Tt.echoes&&e&&e.constructor===nt?(qt(),e.then((e=>(Ut(),e)),(e=>(Ut(),Zt(e))))):e}function Wt(e){++Nt,Tt.echoes&&0!=--Tt.echoes||(Tt.echoes=Tt.id=0),Bt.push(pt),Ht(e,!0)}function zt(){var e=Bt[Bt.length-1];Bt.pop(),Ht(e,!1)}function Ht(e,t){var n=pt;if((t?!Tt.echoes||Ft++&&e===pt:!Ft||--Ft&&e===pt)||Yt(t?Wt.bind(null,e):zt),e!==pt&&(pt=e,n===dt&&(dt.env=Vt()),rt)){var r=dt.env.Promise,o=e.env;Ze.then=o.nthen,r.prototype.then=o.gthen,(n.global||e.global)&&(Object.defineProperty(U,"Promise",o.PromiseProp),r.all=o.all,r.race=o.race,r.resolve=o.resolve,r.reject=o.reject,o.allSettled&&(r.allSettled=o.allSettled),o.any&&(r.any=o.any))}}function Vt(){var e=U.Promise;return rt?{Promise:e,PromiseProp:Object.getOwnPropertyDescriptor(U,"Promise"),all:e.all,race:e.race,allSettled:e.allSettled,any:e.any,resolve:e.resolve,reject:e.reject,nthen:Ze.then,gthen:e.prototype.then}:{}}function Gt(e,t,n,r,o){var i=pt;try{return Ht(e,!0),t(n,r,o)}finally{Ht(i,!1)}}function Yt(e){tt.call(Je,e)}function Qt(e,t,n,r){return"function"!=typeof e?e:function(){var o=pt;n&&qt(),Ht(t,!0);try{return e.apply(this,arguments)}finally{Ht(o,!1),r&&Yt(Ut)}}}function Xt(e,t){return function(n,r){return e.call(this,Qt(n,t),Qt(r,t))}}function Jt(e,t){var n;try{n=t.onuncatched(e)}catch(e){}if(!1!==n)try{var r,o={promise:t,reason:e};if(U.document&&document.createEvent?((r=document.createEvent("Event")).initEvent("unhandledrejection",!0,!0),z(r,o)):U.CustomEvent&&z(r=new CustomEvent("unhandledrejection",{detail:o}),o),r&&U.dispatchEvent&&(dispatchEvent(r),!U.PromiseRejectionEvent&&U.onunhandledrejection))try{U.onunhandledrejection(r)}catch(e){}Se&&r&&!r.defaultPrevented&&console.warn(`Unhandled rejection: ${e.stack||e}`)}catch(e){}}-1===(""+tt).indexOf("[native code]")&&(qt=Ut=Ue);var Zt=gt.reject;function en(e,t,n,r){if(e.idbdb&&(e._state.openComplete||pt.letThrough||e._vip)){var o=e._createTransaction(t,n,e._dbSchema);try{o.create(),e._state.PR1398_maxLoop=3}catch(o){return o.name===Fe.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),e._close(),e.open().then((()=>en(e,t,n,r)))):Zt(o)}return o._promise(t,((e,t)=>Lt((()=>(pt.trans=o,r(e,t,o)))))).then((e=>o._completion.then((()=>e))))}if(e._state.openComplete)return Zt(new Me.DatabaseClosed(e._state.dbOpenError));if(!e._state.isBeingOpened){if(!e._options.autoOpen)return Zt(new Me.DatabaseClosed);e.open().catch(Ue)}return e._state.dbReadyPromise.then((()=>en(e,t,n,r)))}const tn=String.fromCharCode(65535),nn="Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",rn=[],on="undefined"!=typeof navigator&&/(MSIE|Trident|Edge)/.test(navigator.userAgent),an=on,sn=on,un=e=>!/(dexie\.js|dexie\.min\.js)/.test(e);function cn(e,t){return e?t?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:e:t}const ln={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function hn(e){return"string"!=typeof e||/\./.test(e)?e=>e:t=>(void 0===t[e]&&e in t&&delete(t=ye(t))[e],t)}class fn{_trans(e,t,n){const r=this._tx||pt.trans,o=this.name;function i(e,n,r){if(!r.schema[o])throw new Me.NotFound("Table "+o+" not part of transaction");return t(r.idbtrans,r)}const a=At();try{return r&&r.db===this.db?r===pt.trans?r._promise(e,i,n):Lt((()=>r._promise(e,i,n)),{trans:r,transless:pt.transless||pt}):en(this.db,e,[this.name],i)}finally{a&&It()}}get(e,t){return e&&e.constructor===Object?this.where(e).first(t):this._trans("readonly",(t=>this.core.get({trans:t,key:e}).then((e=>this.hook.reading.fire(e))))).then(t)}where(e){if("string"==typeof e)return new this.db.WhereClause(this,e);if(W(e))return new this.db.WhereClause(this,`[${e.join("+")}]`);const t=$(e);if(1===t.length)return this.where(t[0]).equals(e[t[0]]);const n=this.schema.indexes.concat(this.schema.primKey).filter((e=>e.compound&&t.every((t=>e.keyPath.indexOf(t)>=0))&&e.keyPath.every((e=>t.indexOf(e)>=0))))[0];if(n&&this.db._maxKey!==tn)return this.where(n.name).equals(n.keyPath.map((t=>e[t])));!n&&Se&&console.warn(`The query ${JSON.stringify(e)} on ${this.name} would benefit of a compound index [${t.join("+")}]`);const{idxByName:r}=this.schema,o=this.db._deps.indexedDB;function i(e,t){try{return 0===o.cmp(e,t)}catch(e){return!1}}const[a,s]=t.reduce((([t,n],o)=>{const a=r[o],s=e[o];return[t||a,t||!a?cn(n,a&&a.multi?e=>{const t=se(e,o);return W(t)&&t.some((e=>i(s,e)))}:e=>i(s,se(e,o))):n]}),[null,null]);return a?this.where(a.name).equals(e[a.keyPath]).filter(s):n?this.filter(s):this.where(t).equals("")}filter(e){return this.toCollection().and(e)}count(e){return this.toCollection().count(e)}offset(e){return this.toCollection().offset(e)}limit(e){return this.toCollection().limit(e)}each(e){return this.toCollection().each(e)}toArray(e){return this.toCollection().toArray(e)}toCollection(){return new this.db.Collection(new this.db.WhereClause(this))}orderBy(e){return new this.db.Collection(new this.db.WhereClause(this,W(e)?`[${e.join("+")}]`:e))}reverse(){return this.toCollection().reverse()}mapToClass(e){this.schema.mappedClass=e;const t=t=>{if(!t)return t;const n=Object.create(e.prototype);for(var r in t)if(G(t,r))try{n[r]=t[r]}catch(e){}return n};return this.schema.readHook&&this.hook.reading.unsubscribe(this.schema.readHook),this.schema.readHook=t,this.hook("reading",t),e}defineClass(){return this.mapToClass((function(e){z(this,e)}))}add(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let o=e;return r&&n&&(o=hn(r)(e)),this._trans("readwrite",(e=>this.core.mutate({trans:e,type:"add",keys:null!=t?[t]:null,values:[o]}))).then((e=>e.numFailures?gt.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{ue(e,r,t)}catch(e){}return t}))}update(e,t){if("object"!=typeof e||W(e))return this.where(":id").equals(e).modify(t);{const n=se(e,this.schema.primKey.keyPath);if(void 0===n)return Zt(new Me.InvalidArgument("Given object does not contain its primary key"));try{"function"!=typeof t?$(t).forEach((n=>{ue(e,n,t[n])})):t(e,{value:e,primKey:n})}catch(e){}return this.where(":id").equals(n).modify(t)}}put(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let o=e;return r&&n&&(o=hn(r)(e)),this._trans("readwrite",(e=>this.core.mutate({trans:e,type:"put",values:[o],keys:null!=t?[t]:null}))).then((e=>e.numFailures?gt.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{ue(e,r,t)}catch(e){}return t}))}delete(e){return this._trans("readwrite",(t=>this.core.mutate({trans:t,type:"delete",keys:[e]}))).then((e=>e.numFailures?gt.reject(e.failures[0]):void 0))}clear(){return this._trans("readwrite",(e=>this.core.mutate({trans:e,type:"deleteRange",range:ln}))).then((e=>e.numFailures?gt.reject(e.failures[0]):void 0))}bulkGet(e){return this._trans("readonly",(t=>this.core.getMany({keys:e,trans:t}).then((e=>e.map((e=>this.hook.reading.fire(e)))))))}bulkAdd(e,t,n){const r=Array.isArray(t)?t:void 0,o=(n=n||(r?void 0:t))?n.allKeys:void 0;return this._trans("readwrite",(t=>{const{auto:n,keyPath:i}=this.schema.primKey;if(i&&r)throw new Me.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");if(r&&r.length!==e.length)throw new Me.InvalidArgument("Arguments objects and keys must have the same length");const a=e.length;let s=i&&n?e.map(hn(i)):e;return this.core.mutate({trans:t,type:"add",keys:r,values:s,wantResults:o}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return o?t:n;throw new Be(`${this.name}.bulkAdd(): ${e} of ${a} operations failed`,r)}))}))}bulkPut(e,t,n){const r=Array.isArray(t)?t:void 0,o=(n=n||(r?void 0:t))?n.allKeys:void 0;return this._trans("readwrite",(t=>{const{auto:n,keyPath:i}=this.schema.primKey;if(i&&r)throw new Me.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");if(r&&r.length!==e.length)throw new Me.InvalidArgument("Arguments objects and keys must have the same length");const a=e.length;let s=i&&n?e.map(hn(i)):e;return this.core.mutate({trans:t,type:"put",keys:r,values:s,wantResults:o}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return o?t:n;throw new Be(`${this.name}.bulkPut(): ${e} of ${a} operations failed`,r)}))}))}bulkDelete(e){const t=e.length;return this._trans("readwrite",(t=>this.core.mutate({trans:t,type:"delete",keys:e}))).then((({numFailures:e,lastResult:n,failures:r})=>{if(0===e)return n;throw new Be(`${this.name}.bulkDelete(): ${e} of ${t} operations failed`,r)}))}}function dn(e){var t={},n=function(n,r){if(r){for(var o=arguments.length,i=new Array(o-1);--o;)i[o-1]=arguments[o];return t[n].subscribe.apply(null,i),e}if("string"==typeof n)return t[n]};n.addEventType=i;for(var r=1,o=arguments.length;r<o;++r)i(arguments[r]);return n;function i(e,r,o){if("object"==typeof e)return a(e);r||(r=Ye),o||(o=Ue);var i={subscribers:[],fire:o,subscribe:function(e){-1===i.subscribers.indexOf(e)&&(i.subscribers.push(e),i.fire=r(i.fire,e))},unsubscribe:function(e){i.subscribers=i.subscribers.filter((function(t){return t!==e})),i.fire=i.subscribers.reduce(r,o)}};return t[e]=n[e]=i,i}function a(e){$(e).forEach((function(t){var n=e[t];if(W(n))i(t,e[t][0],e[t][1]);else{if("asap"!==n)throw new Me.InvalidArgument("Invalid event config");var r=i(t,$e,(function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];r.subscribers.forEach((function(e){ie((function(){e.apply(null,t)}))}))}))}}))}}function pn(e,t){return J(t).from({prototype:e}),t}function yn(e,t){return!(e.filter||e.algorithm||e.or)&&(t?e.justLimit:!e.replayFilter)}function mn(e,t){e.filter=cn(e.filter,t)}function vn(e,t,n){var r=e.replayFilter;e.replayFilter=r?()=>cn(r(),t()):t,e.justLimit=n&&!r}function gn(e,t){if(e.isPrimKey)return t.primaryKey;const n=t.getIndexByKeyPath(e.index);if(!n)throw new Me.Schema("KeyPath "+e.index+" on object store "+t.name+" is not indexed");return n}function bn(e,t,n){const r=gn(e,t.schema);return t.openCursor({trans:n,values:!e.keysOnly,reverse:"prev"===e.dir,unique:!!e.unique,query:{index:r,range:e.range}})}function wn(e,t,n,r){const o=e.replayFilter?cn(e.filter,e.replayFilter()):e.filter;if(e.or){const i={},a=(e,n,r)=>{if(!o||o(n,r,(e=>n.stop(e)),(e=>n.fail(e)))){var a=n.primaryKey,s=""+a;"[object ArrayBuffer]"===s&&(s=""+new Uint8Array(a)),G(i,s)||(i[s]=!0,t(e,n,r))}};return Promise.all([e.or._iterate(a,n),_n(bn(e,r,n),e.algorithm,a,!e.keysOnly&&e.valueMapper)])}return _n(bn(e,r,n),cn(e.algorithm,o),t,!e.keysOnly&&e.valueMapper)}function _n(e,t,n,r){var o=Dt(r?(e,t,o)=>n(r(e),t,o):n);return e.then((e=>{if(e)return e.start((()=>{var n=()=>e.continue();t&&!t(e,(e=>n=e),(t=>{e.stop(t),n=Ue}),(t=>{e.fail(t),n=Ue}))||o(e.value,e,(e=>n=e)),n()}))}))}function xn(e,t){try{const n=kn(e),r=kn(t);if(n!==r)return"Array"===n?1:"Array"===r?-1:"binary"===n?1:"binary"===r?-1:"string"===n?1:"string"===r?-1:"Date"===n?1:"Date"!==r?NaN:-1;switch(n){case"number":case"Date":case"string":return e>t?1:e<t?-1:0;case"binary":return function(e,t){const n=e.length,r=t.length,o=n<r?n:r;for(let n=0;n<o;++n)if(e[n]!==t[n])return e[n]<t[n]?-1:1;return n===r?0:n<r?-1:1}(Sn(e),Sn(t));case"Array":return function(e,t){const n=e.length,r=t.length,o=n<r?n:r;for(let n=0;n<o;++n){const r=xn(e[n],t[n]);if(0!==r)return r}return n===r?0:n<r?-1:1}(e,t)}}catch(e){}return NaN}function kn(e){const t=typeof e;if("object"!==t)return t;if(ArrayBuffer.isView(e))return"binary";const n=ge(e);return"ArrayBuffer"===n?"binary":n}function Sn(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e)}class En{_read(e,t){var n=this._ctx;return n.error?n.table._trans(null,Zt.bind(null,n.error)):n.table._trans("readonly",e).then(t)}_write(e){var t=this._ctx;return t.error?t.table._trans(null,Zt.bind(null,t.error)):t.table._trans("readwrite",e,"locked")}_addAlgorithm(e){var t=this._ctx;t.algorithm=cn(t.algorithm,e)}_iterate(e,t){return wn(this._ctx,e,t,this._ctx.table.core)}clone(e){var t=Object.create(this.constructor.prototype),n=Object.create(this._ctx);return e&&z(n,e),t._ctx=n,t}raw(){return this._ctx.valueMapper=null,this}each(e){var t=this._ctx;return this._read((n=>wn(t,e,n,t.table.core)))}count(e){return this._read((e=>{const t=this._ctx,n=t.table.core;if(yn(t,!0))return n.count({trans:e,query:{index:gn(t,n.schema),range:t.range}}).then((e=>Math.min(e,t.limit)));var r=0;return wn(t,(()=>(++r,!1)),e,n).then((()=>r))})).then(e)}sortBy(e,t){const n=e.split(".").reverse(),r=n[0],o=n.length-1;function i(e,t){return t?i(e[n[t]],t-1):e[r]}var a="next"===this._ctx.dir?1:-1;function s(e,t){var n=i(e,o),r=i(t,o);return n<r?-a:n>r?a:0}return this.toArray((function(e){return e.sort(s)})).then(t)}toArray(e){return this._read((e=>{var t=this._ctx;if("next"===t.dir&&yn(t,!0)&&t.limit>0){const{valueMapper:n}=t,r=gn(t,t.table.core.schema);return t.table.core.query({trans:e,limit:t.limit,values:!0,query:{index:r,range:t.range}}).then((({result:e})=>n?e.map(n):e))}{const n=[];return wn(t,(e=>n.push(e)),e,t.table.core).then((()=>n))}}),e)}offset(e){var t=this._ctx;return e<=0||(t.offset+=e,yn(t)?vn(t,(()=>{var t=e;return(e,n)=>0===t||(1===t?(--t,!1):(n((()=>{e.advance(t),t=0})),!1))})):vn(t,(()=>{var t=e;return()=>--t<0}))),this}limit(e){return this._ctx.limit=Math.min(this._ctx.limit,e),vn(this._ctx,(()=>{var t=e;return function(e,n,r){return--t<=0&&n(r),t>=0}}),!0),this}until(e,t){return mn(this._ctx,(function(n,r,o){return!e(n.value)||(r(o),t)})),this}first(e){return this.limit(1).toArray((function(e){return e[0]})).then(e)}last(e){return this.reverse().first(e)}filter(e){var t,n;return mn(this._ctx,(function(t){return e(t.value)})),t=this._ctx,n=e,t.isMatch=cn(t.isMatch,n),this}and(e){return this.filter(e)}or(e){return new this.db.WhereClause(this._ctx.table,e,this)}reverse(){return this._ctx.dir="prev"===this._ctx.dir?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this}desc(){return this.reverse()}eachKey(e){var t=this._ctx;return t.keysOnly=!t.isMatch,this.each((function(t,n){e(n.key,n)}))}eachUniqueKey(e){return this._ctx.unique="unique",this.eachKey(e)}eachPrimaryKey(e){var t=this._ctx;return t.keysOnly=!t.isMatch,this.each((function(t,n){e(n.primaryKey,n)}))}keys(e){var t=this._ctx;t.keysOnly=!t.isMatch;var n=[];return this.each((function(e,t){n.push(t.key)})).then((function(){return n})).then(e)}primaryKeys(e){var t=this._ctx;if("next"===t.dir&&yn(t,!0)&&t.limit>0)return this._read((e=>{var n=gn(t,t.table.core.schema);return t.table.core.query({trans:e,values:!1,limit:t.limit,query:{index:n,range:t.range}})})).then((({result:e})=>e)).then(e);t.keysOnly=!t.isMatch;var n=[];return this.each((function(e,t){n.push(t.primaryKey)})).then((function(){return n})).then(e)}uniqueKeys(e){return this._ctx.unique="unique",this.keys(e)}firstKey(e){return this.limit(1).keys((function(e){return e[0]})).then(e)}lastKey(e){return this.reverse().firstKey(e)}distinct(){var e=this._ctx,t=e.index&&e.table.schema.idxByName[e.index];if(!t||!t.multi)return this;var n={};return mn(this._ctx,(function(e){var t=e.primaryKey.toString(),r=G(n,t);return n[t]=!0,!r})),this}modify(e){var t=this._ctx;return this._write((n=>{var r;if("function"==typeof e)r=e;else{var o=$(e),i=o.length;r=function(t){for(var n=!1,r=0;r<i;++r){var a=o[r],s=e[a];se(t,a)!==s&&(ue(t,a,s),n=!0)}return n}}const a=t.table.core,{outbound:s,extractKey:u}=a.schema.primaryKey,c=this.db._options.modifyChunkSize||200,l=[];let h=0;const f=[],d=(e,t)=>{const{failures:n,numFailures:r}=t;h+=e-r;for(let e of $(n))l.push(n[e])};return this.clone().primaryKeys().then((o=>{const i=l=>{const h=Math.min(c,o.length-l);return a.getMany({trans:n,keys:o.slice(l,l+h),cache:"immutable"}).then((f=>{const p=[],y=[],m=s?[]:null,v=[];for(let e=0;e<h;++e){const t=f[e],n={value:ye(t),primKey:o[l+e]};!1!==r.call(n,n.value,n)&&(null==n.value?v.push(o[l+e]):s||0===xn(u(t),u(n.value))?(y.push(n.value),s&&m.push(o[l+e])):(v.push(o[l+e]),p.push(n.value)))}const g=yn(t)&&t.limit===1/0&&("function"!=typeof e||e===On)&&{index:t.index,range:t.range};return Promise.resolve(p.length>0&&a.mutate({trans:n,type:"add",values:p}).then((e=>{for(let t in e.failures)v.splice(parseInt(t),1);d(p.length,e)}))).then((()=>(y.length>0||g&&"object"==typeof e)&&a.mutate({trans:n,type:"put",keys:m,values:y,criteria:g,changeSpec:"function"!=typeof e&&e}).then((e=>d(y.length,e))))).then((()=>(v.length>0||g&&e===On)&&a.mutate({trans:n,type:"delete",keys:v,criteria:g}).then((e=>d(v.length,e))))).then((()=>o.length>l+h&&i(l+c)))}))};return i(0).then((()=>{if(l.length>0)throw new Re("Error modifying one or more objects",l,h,f);return o.length}))}))}))}delete(){var e=this._ctx,t=e.range;return yn(e)&&(e.isPrimKey&&!sn||3===t.type)?this._write((n=>{const{primaryKey:r}=e.table.core.schema,o=t;return e.table.core.count({trans:n,query:{index:r,range:o}}).then((t=>e.table.core.mutate({trans:n,type:"deleteRange",range:o}).then((({failures:e,lastResult:n,results:r,numFailures:o})=>{if(o)throw new Re("Could not delete some values",Object.keys(e).map((t=>e[t])),t-o);return t-o}))))})):this.modify(On)}}const On=(e,t)=>t.value=null;function Pn(e,t){return e<t?-1:e===t?0:1}function jn(e,t){return e>t?-1:e===t?0:1}function An(e,t,n){var r=e instanceof Rn?new e.Collection(e):e;return r._ctx.error=n?new n(t):new TypeError(t),r}function In(e){return new e.Collection(e,(()=>Tn(""))).limit(0)}function Kn(e,t,n,r,o,i){for(var a=Math.min(e.length,r.length),s=-1,u=0;u<a;++u){var c=t[u];if(c!==r[u])return o(e[u],n[u])<0?e.substr(0,u)+n[u]+n.substr(u+1):o(e[u],r[u])<0?e.substr(0,u)+r[u]+n.substr(u+1):s>=0?e.substr(0,s)+t[s]+n.substr(s+1):null;o(e[u],c)<0&&(s=u)}return a<r.length&&"next"===i?e+n.substr(e.length):a<e.length&&"prev"===i?e.substr(0,n.length):s<0?null:e.substr(0,s)+r[s]+n.substr(s+1)}function Cn(e,t,n,r){var o,i,a,s,u,c,l,h=n.length;if(!n.every((e=>"string"==typeof e)))return An(e,"String expected.");function f(e){o=function(e){return"next"===e?e=>e.toUpperCase():e=>e.toLowerCase()}(e),i=function(e){return"next"===e?e=>e.toLowerCase():e=>e.toUpperCase()}(e),a="next"===e?Pn:jn;var t=n.map((function(e){return{lower:i(e),upper:o(e)}})).sort((function(e,t){return a(e.lower,t.lower)}));s=t.map((function(e){return e.upper})),u=t.map((function(e){return e.lower})),c=e,l="next"===e?"":r}f("next");var d=new e.Collection(e,(()=>Dn(s[0],u[h-1]+r)));d._ondirectionchange=function(e){f(e)};var p=0;return d._addAlgorithm((function(e,n,r){var o=e.key;if("string"!=typeof o)return!1;var f=i(o);if(t(f,u,p))return!0;for(var d=null,y=p;y<h;++y){var m=Kn(o,f,s[y],u[y],a,c);null===m&&null===d?p=y+1:(null===d||a(d,m)>0)&&(d=m)}return n(null!==d?function(){e.continue(d+l)}:r),!1})),d}function Dn(e,t,n,r){return{type:2,lower:e,upper:t,lowerOpen:n,upperOpen:r}}function Tn(e){return{type:1,lower:e,upper:e}}class Rn{get Collection(){return this._ctx.table.db.Collection}between(e,t,n,r){n=!1!==n,r=!0===r;try{return this._cmp(e,t)>0||0===this._cmp(e,t)&&(n||r)&&(!n||!r)?In(this):new this.Collection(this,(()=>Dn(e,t,!n,!r)))}catch(e){return An(this,nn)}}equals(e){return null==e?An(this,nn):new this.Collection(this,(()=>Tn(e)))}above(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(e,void 0,!0)))}aboveOrEqual(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(e,void 0,!1)))}below(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(void 0,e,!1,!0)))}belowOrEqual(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(void 0,e)))}startsWith(e){return"string"!=typeof e?An(this,"String expected."):this.between(e,e+tn,!0,!0)}startsWithIgnoreCase(e){return""===e?this.startsWith(e):Cn(this,((e,t)=>0===e.indexOf(t[0])),[e],tn)}equalsIgnoreCase(e){return Cn(this,((e,t)=>e===t[0]),[e],"")}anyOfIgnoreCase(){var e=xe.apply(_e,arguments);return 0===e.length?In(this):Cn(this,((e,t)=>-1!==t.indexOf(e)),e,"")}startsWithAnyOfIgnoreCase(){var e=xe.apply(_e,arguments);return 0===e.length?In(this):Cn(this,((e,t)=>t.some((t=>0===e.indexOf(t)))),e,tn)}anyOf(){const e=xe.apply(_e,arguments);let t=this._cmp;try{e.sort(t)}catch(e){return An(this,nn)}if(0===e.length)return In(this);const n=new this.Collection(this,(()=>Dn(e[0],e[e.length-1])));n._ondirectionchange=n=>{t="next"===n?this._ascending:this._descending,e.sort(t)};let r=0;return n._addAlgorithm(((n,o,i)=>{const a=n.key;for(;t(a,e[r])>0;)if(++r,r===e.length)return o(i),!1;return 0===t(a,e[r])||(o((()=>{n.continue(e[r])})),!1)})),n}notEqual(e){return this.inAnyRange([[-1/0,e],[e,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})}noneOf(){const e=xe.apply(_e,arguments);if(0===e.length)return new this.Collection(this);try{e.sort(this._ascending)}catch(e){return An(this,nn)}const t=e.reduce(((e,t)=>e?e.concat([[e[e.length-1][1],t]]):[[-1/0,t]]),null);return t.push([e[e.length-1],this.db._maxKey]),this.inAnyRange(t,{includeLowers:!1,includeUppers:!1})}inAnyRange(e,t){const n=this._cmp,r=this._ascending,o=this._descending,i=this._min,a=this._max;if(0===e.length)return In(this);if(!e.every((e=>void 0!==e[0]&&void 0!==e[1]&&r(e[0],e[1])<=0)))return An(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",Me.InvalidArgument);const s=!t||!1!==t.includeLowers,u=t&&!0===t.includeUppers;let c,l=r;function h(e,t){return l(e[0],t[0])}try{c=e.reduce((function(e,t){let r=0,o=e.length;for(;r<o;++r){const o=e[r];if(n(t[0],o[1])<0&&n(t[1],o[0])>0){o[0]=i(o[0],t[0]),o[1]=a(o[1],t[1]);break}}return r===o&&e.push(t),e}),[]),c.sort(h)}catch(e){return An(this,nn)}let f=0;const d=u?e=>r(e,c[f][1])>0:e=>r(e,c[f][1])>=0,p=s?e=>o(e,c[f][0])>0:e=>o(e,c[f][0])>=0;let y=d;const m=new this.Collection(this,(()=>Dn(c[0][0],c[c.length-1][1],!s,!u)));return m._ondirectionchange=e=>{"next"===e?(y=d,l=r):(y=p,l=o),c.sort(h)},m._addAlgorithm(((e,t,n)=>{for(var o=e.key;y(o);)if(++f,f===c.length)return t(n),!1;return!!function(e){return!d(e)&&!p(e)}(o)||(0===this._cmp(o,c[f][1])||0===this._cmp(o,c[f][0])||t((()=>{l===r?e.continue(c[f][0]):e.continue(c[f][1])})),!1)})),m}startsWithAnyOf(){const e=xe.apply(_e,arguments);return e.every((e=>"string"==typeof e))?0===e.length?In(this):this.inAnyRange(e.map((e=>[e,e+tn]))):An(this,"startsWithAnyOf() only works with strings")}}function Bn(e){return Dt((function(t){return Fn(t),e(t.target.error),!1}))}function Fn(e){e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault()}const Nn=dn(null,"storagemutated");class Mn{_lock(){return oe(!pt.global),++this._reculock,1!==this._reculock||pt.global||(pt.lockOwnerFor=this),this}_unlock(){if(oe(!pt.global),0==--this._reculock)for(pt.global||(pt.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var e=this._blockedFuncs.shift();try{Gt(e[1],e[0])}catch(e){}}return this}_locked(){return this._reculock&&pt.lockOwnerFor!==this}create(e){if(!this.mode)return this;const t=this.db.idbdb,n=this.db._state.dbOpenError;if(oe(!this.idbtrans),!e&&!t)switch(n&&n.name){case"DatabaseClosedError":throw new Me.DatabaseClosed(n);case"MissingAPIError":throw new Me.MissingAPI(n.message,n);default:throw new Me.OpenFailed(n)}if(!this.active)throw new Me.TransactionInactive;return oe(null===this._completion._state),(e=this.idbtrans=e||(this.db.core?this.db.core.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}):t.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}))).onerror=Dt((t=>{Fn(t),this._reject(e.error)})),e.onabort=Dt((t=>{Fn(t),this.active&&this._reject(new Me.Abort(e.error)),this.active=!1,this.on("abort").fire(t)})),e.oncomplete=Dt((()=>{this.active=!1,this._resolve(),"mutatedParts"in e&&Nn.storagemutated.fire(e.mutatedParts)})),this}_promise(e,t,n){if("readwrite"===e&&"readwrite"!==this.mode)return Zt(new Me.ReadOnly("Transaction is readonly"));if(!this.active)return Zt(new Me.TransactionInactive);if(this._locked())return new gt(((r,o)=>{this._blockedFuncs.push([()=>{this._promise(e,t,n).then(r,o)},pt])}));if(n)return Lt((()=>{var e=new gt(((e,n)=>{this._lock();const r=t(e,n,this);r&&r.then&&r.then(e,n)}));return e.finally((()=>this._unlock())),e._lib=!0,e}));var r=new gt(((e,n)=>{var r=t(e,n,this);r&&r.then&&r.then(e,n)}));return r._lib=!0,r}_root(){return this.parent?this.parent._root():this}waitFor(e){var t=this._root();const n=gt.resolve(e);if(t._waitingFor)t._waitingFor=t._waitingFor.then((()=>n));else{t._waitingFor=n,t._waitingQueue=[];var r=t.idbtrans.objectStore(t.storeNames[0]);!function e(){for(++t._spinCount;t._waitingQueue.length;)t._waitingQueue.shift()();t._waitingFor&&(r.get(-1/0).onsuccess=e)}()}var o=t._waitingFor;return new gt(((e,r)=>{n.then((n=>t._waitingQueue.push(Dt(e.bind(null,n)))),(e=>t._waitingQueue.push(Dt(r.bind(null,e))))).finally((()=>{t._waitingFor===o&&(t._waitingFor=null)}))}))}abort(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new Me.Abort))}table(e){const t=this._memoizedTables||(this._memoizedTables={});if(G(t,e))return t[e];const n=this.schema[e];if(!n)throw new Me.NotFound("Table "+e+" not part of transaction");const r=new this.db.Table(e,n,this);return r.core=this.db.core.table(e),t[e]=r,r}}function Ln(e,t,n,r,o,i,a){return{name:e,keyPath:t,unique:n,multi:r,auto:o,compound:i,src:(n&&!a?"&":"")+(r?"*":"")+(o?"++":"")+qn(t)}}function qn(e){return"string"==typeof e?e:e?"["+[].join.call(e,"+")+"]":""}function Un(e,t,n){return{name:e,primKey:t,indexes:n,mappedClass:null,idxByName:ae(n,(e=>[e.name,e]))}}let $n=e=>{try{return e.only([[]]),$n=()=>[[]],[[]]}catch(e){return $n=()=>tn,tn}};function Wn(e){return null==e?()=>{}:"string"==typeof e?function(e){return 1===e.split(".").length?t=>t[e]:t=>se(t,e)}(e):t=>se(t,e)}function zn(e){return[].slice.call(e)}let Hn=0;function Vn(e){return null==e?":id":"string"==typeof e?e:`[${e.join("+")}]`}function Gn({_novip:e},t){const n=t.db,r=function(e,t,{IDBKeyRange:n,indexedDB:r},o){const i=function(e,t){return t.reduce(((e,{create:t})=>({...e,...t(e)})),e)}(function(e,t,n){function r(e){if(3===e.type)return null;if(4===e.type)throw new Error("Cannot convert never type to IDBKeyRange");const{lower:n,upper:r,lowerOpen:o,upperOpen:i}=e;return void 0===n?void 0===r?null:t.upperBound(r,!!i):void 0===r?t.lowerBound(n,!!o):t.bound(n,r,!!o,!!i)}const{schema:o,hasGetAll:i}=function(e,t){const n=zn(e.objectStoreNames);return{schema:{name:e.name,tables:n.map((e=>t.objectStore(e))).map((e=>{const{keyPath:t,autoIncrement:n}=e,r=W(t),o=null==t,i={},a={name:e.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:o,compound:r,keyPath:t,autoIncrement:n,unique:!0,extractKey:Wn(t)},indexes:zn(e.indexNames).map((t=>e.index(t))).map((e=>{const{name:t,unique:n,multiEntry:r,keyPath:o}=e,a={name:t,compound:W(o),keyPath:o,unique:n,multiEntry:r,extractKey:Wn(o)};return i[Vn(o)]=a,a})),getIndexByKeyPath:e=>i[Vn(e)]};return i[":id"]=a.primaryKey,null!=t&&(i[Vn(t)]=a.primaryKey),a}))},hasGetAll:n.length>0&&"getAll"in t.objectStore(n[0])&&!("undefined"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604)}}(e,n),a=o.tables.map((e=>function(e){const t=e.name;return{name:t,schema:e,mutate:function({trans:e,type:n,keys:o,values:i,range:a}){return new Promise(((s,u)=>{s=Dt(s);const c=e.objectStore(t),l=null==c.keyPath,h="put"===n||"add"===n;if(!h&&"delete"!==n&&"deleteRange"!==n)throw new Error("Invalid operation type: "+n);const{length:f}=o||i||{length:1};if(o&&i&&o.length!==i.length)throw new Error("Given keys array must have same length as given values array.");if(0===f)return s({numFailures:0,failures:{},results:[],lastResult:void 0});let d;const p=[],y=[];let m=0;const v=e=>{++m,Fn(e)};if("deleteRange"===n){if(4===a.type)return s({numFailures:m,failures:y,results:[],lastResult:void 0});3===a.type?p.push(d=c.clear()):p.push(d=c.delete(r(a)))}else{const[e,t]=h?l?[i,o]:[i,null]:[o,null];if(h)for(let r=0;r<f;++r)p.push(d=t&&void 0!==t[r]?c[n](e[r],t[r]):c[n](e[r])),d.onerror=v;else for(let t=0;t<f;++t)p.push(d=c[n](e[t])),d.onerror=v}const g=e=>{const t=e.target.result;p.forEach(((e,t)=>null!=e.error&&(y[t]=e.error))),s({numFailures:m,failures:y,results:"delete"===n?o:p.map((e=>e.result)),lastResult:t})};d.onerror=e=>{v(e),g(e)},d.onsuccess=g}))},getMany:({trans:e,keys:n})=>new Promise(((r,o)=>{r=Dt(r);const i=e.objectStore(t),a=n.length,s=new Array(a);let u,c=0,l=0;const h=e=>{const t=e.target;s[t._pos]=t.result,++l===c&&r(s)},f=Bn(o);for(let e=0;e<a;++e)null!=n[e]&&(u=i.get(n[e]),u._pos=e,u.onsuccess=h,u.onerror=f,++c);0===c&&r(s)})),get:({trans:e,key:n})=>new Promise(((r,o)=>{r=Dt(r);const i=e.objectStore(t).get(n);i.onsuccess=e=>r(e.target.result),i.onerror=Bn(o)})),query:function(e){return n=>new Promise(((o,i)=>{o=Dt(o);const{trans:a,values:s,limit:u,query:c}=n,l=u===1/0?void 0:u,{index:h,range:f}=c,d=a.objectStore(t),p=h.isPrimaryKey?d:d.index(h.name),y=r(f);if(0===u)return o({result:[]});if(e){const e=s?p.getAll(y,l):p.getAllKeys(y,l);e.onsuccess=e=>o({result:e.target.result}),e.onerror=Bn(i)}else{let e=0;const t=s||!("openKeyCursor"in p)?p.openCursor(y):p.openKeyCursor(y),n=[];t.onsuccess=r=>{const i=t.result;return i?(n.push(s?i.value:i.primaryKey),++e===u?o({result:n}):void i.continue()):o({result:n})},t.onerror=Bn(i)}}))}(i),openCursor:function({trans:e,values:n,query:o,reverse:i,unique:a}){return new Promise(((s,u)=>{s=Dt(s);const{index:c,range:l}=o,h=e.objectStore(t),f=c.isPrimaryKey?h:h.index(c.name),d=i?a?"prevunique":"prev":a?"nextunique":"next",p=n||!("openKeyCursor"in f)?f.openCursor(r(l),d):f.openKeyCursor(r(l),d);p.onerror=Bn(u),p.onsuccess=Dt((t=>{const n=p.result;if(!n)return void s(null);n.___id=++Hn,n.done=!1;const r=n.continue.bind(n);let o=n.continuePrimaryKey;o&&(o=o.bind(n));const i=n.advance.bind(n),a=()=>{throw new Error("Cursor not stopped")};n.trans=e,n.stop=n.continue=n.continuePrimaryKey=n.advance=()=>{throw new Error("Cursor not started")},n.fail=Dt(u),n.next=function(){let e=1;return this.start((()=>e--?this.continue():this.stop())).then((()=>this))},n.start=e=>{const t=new Promise(((e,t)=>{e=Dt(e),p.onerror=Bn(t),n.fail=t,n.stop=t=>{n.stop=n.continue=n.continuePrimaryKey=n.advance=a,e(t)}})),s=()=>{if(p.result)try{e()}catch(e){n.fail(e)}else n.done=!0,n.start=()=>{throw new Error("Cursor behind last entry")},n.stop()};return p.onsuccess=Dt((e=>{p.onsuccess=s,s()})),n.continue=r,n.continuePrimaryKey=o,n.advance=i,s(),t},s(n)}),u)}))},count({query:e,trans:n}){const{index:o,range:i}=e;return new Promise(((e,a)=>{const s=n.objectStore(t),u=o.isPrimaryKey?s:s.index(o.name),c=r(i),l=c?u.count(c):u.count();l.onsuccess=Dt((t=>e(t.target.result))),l.onerror=Bn(a)}))}}}(e))),s={};return a.forEach((e=>s[e.name]=e)),{stack:"dbcore",transaction:e.transaction.bind(e),table(e){if(!s[e])throw new Error(`Table '${e}' not found`);return s[e]},MIN_KEY:-1/0,MAX_KEY:$n(t),schema:o}}(t,n,o),e.dbcore);return{dbcore:i}}(e._middlewares,n,e._deps,t);e.core=r.dbcore,e.tables.forEach((t=>{const n=t.name;e.core.schema.tables.some((e=>e.name===n))&&(t.core=e.core.table(n),e[n]instanceof e.Table&&(e[n].core=t.core))}))}function Yn({_novip:e},t,n,r){n.forEach((n=>{const o=r[n];t.forEach((t=>{const r=ee(t,n);(!r||"value"in r&&void 0===r.value)&&(t===e.Transaction.prototype||t instanceof e.Transaction?X(t,n,{get(){return this.table(n)},set(e){Q(this,n,{value:e,writable:!0,configurable:!0,enumerable:!0})}}):t[n]=new e.Table(n,o))}))}))}function Qn({_novip:e},t){t.forEach((t=>{for(let n in t)t[n]instanceof e.Table&&delete t[n]}))}function Xn(e,t){return e._cfg.version-t._cfg.version}function Jn(e,t){const n={del:[],add:[],change:[]};let r;for(r in e)t[r]||n.del.push(r);for(r in t){const o=e[r],i=t[r];if(o){const e={name:r,def:i,recreate:!1,del:[],add:[],change:[]};if(""+(o.primKey.keyPath||"")!=""+(i.primKey.keyPath||"")||o.primKey.auto!==i.primKey.auto&&!on)e.recreate=!0,n.change.push(e);else{const t=o.idxByName,r=i.idxByName;let a;for(a in t)r[a]||e.del.push(a);for(a in r){const n=t[a],o=r[a];n?n.src!==o.src&&e.change.push(o):e.add.push(o)}(e.del.length>0||e.add.length>0||e.change.length>0)&&n.change.push(e)}}else n.add.push([r,i])}return n}function Zn(e,t,n,r){const o=e.db.createObjectStore(t,n.keyPath?{keyPath:n.keyPath,autoIncrement:n.auto}:{autoIncrement:n.auto});return r.forEach((e=>er(o,e))),o}function er(e,t){e.createIndex(t.name,t.keyPath,{unique:t.unique,multiEntry:t.multi})}function tr(e,t,n){const r={};return ne(t.objectStoreNames,0).forEach((e=>{const t=n.objectStore(e);let o=t.keyPath;const i=Ln(qn(o),o||"",!1,!1,!!t.autoIncrement,o&&"string"!=typeof o,!0),a=[];for(let e=0;e<t.indexNames.length;++e){const n=t.index(t.indexNames[e]);o=n.keyPath;var s=Ln(n.name,o,!!n.unique,!!n.multiEntry,!1,o&&"string"!=typeof o,!1);a.push(s)}r[e]=Un(e,i,a)})),r}function nr({_novip:e},t,n){const r=n.db.objectStoreNames;for(let o=0;o<r.length;++o){const i=r[o],a=n.objectStore(i);e._hasGetAll="getAll"in a;for(let e=0;e<a.indexNames.length;++e){const n=a.indexNames[e],r=a.index(n).keyPath,o="string"==typeof r?r:"["+ne(r).join("+")+"]";if(t[i]){const e=t[i].idxByName[o];e&&(e.name=n,delete t[i].idxByName[o],t[i].idxByName[n]=e)}}}"undefined"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&U.WorkerGlobalScope&&U instanceof U.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604&&(e._hasGetAll=!1)}class rr{_parseStoresSpec(e,t){$(e).forEach((n=>{if(null!==e[n]){var r=e[n].split(",").map(((e,t)=>{const n=(e=e.trim()).replace(/([&*]|\+\+)/g,""),r=/^\[/.test(n)?n.match(/^\[(.*)\]$/)[1].split("+"):n;return Ln(n,r||null,/\&/.test(e),/\*/.test(e),/\+\+/.test(e),W(r),0===t)})),o=r.shift();if(o.multi)throw new Me.Schema("Primary key cannot be multi-valued");r.forEach((e=>{if(e.auto)throw new Me.Schema("Only primary key can be marked as autoIncrement (++)");if(!e.keyPath)throw new Me.Schema("Index must have a name and cannot be an empty string")})),t[n]=Un(n,o,r)}}))}stores(e){const t=this.db;this._cfg.storesSource=this._cfg.storesSource?z(this._cfg.storesSource,e):e;const n=t._versions,r={};let o={};return n.forEach((e=>{z(r,e._cfg.storesSource),o=e._cfg.dbschema={},e._parseStoresSpec(r,o)})),t._dbSchema=o,Qn(t,[t._allTables,t,t.Transaction.prototype]),Yn(t,[t._allTables,t,t.Transaction.prototype,this._cfg.tables],$(o),o),t._storeNames=$(o),this}upgrade(e){return this._cfg.contentUpgrade=Qe(this._cfg.contentUpgrade||Ue,e),this}}function or(e,t){let n=e._dbNamesDB;return n||(n=e._dbNamesDB=new Er("__dbnames",{addons:[],indexedDB:e,IDBKeyRange:t}),n.version(1).stores({dbnames:"name"})),n.table("dbnames")}function ir(e){return e&&"function"==typeof e.databases}function ar(e){return Lt((function(){return pt.letThrough=!0,e()}))}function sr(){var e;return!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise((function(t){var n=function(){return indexedDB.databases().finally(t)};e=setInterval(n,100),n()})).finally((function(){return clearInterval(e)})):Promise.resolve()}function ur(e){var t=t=>e.next(t),n=o(t),r=o((t=>e.throw(t)));function o(e){return t=>{var o=e(t),i=o.value;return o.done?i:i&&"function"==typeof i.then?i.then(n,r):W(i)?Promise.all(i).then(n,r):n(i)}}return o(t)()}function cr(e,t,n){var r=arguments.length;if(r<2)throw new Me.InvalidArgument("Too few arguments");for(var o=new Array(r-1);--r;)o[r-1]=arguments[r];n=o.pop();var i=he(o);return[e,i,n]}function lr(e,t,n,r,o){return gt.resolve().then((()=>{const i=pt.transless||pt,a=e._createTransaction(t,n,e._dbSchema,r),s={trans:a,transless:i};if(r)a.idbtrans=r.idbtrans;else try{a.create(),e._state.PR1398_maxLoop=3}catch(r){return r.name===Fe.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),e._close(),e.open().then((()=>lr(e,t,n,null,o)))):Zt(r)}const u=ke(o);let c;u&&qt();const l=gt.follow((()=>{if(c=o.call(a,a),c)if(u){var e=Ut.bind(null,null);c.then(e,e)}else"function"==typeof c.next&&"function"==typeof c.throw&&(c=ur(c))}),s);return(c&&"function"==typeof c.then?gt.resolve(c).then((e=>a.active?e:Zt(new Me.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn")))):l.then((()=>c))).then((e=>(r&&a._resolve(),a._completion.then((()=>e))))).catch((e=>(a._reject(e),Zt(e))))}))}function hr(e,t,n){const r=W(e)?e.slice():[e];for(let e=0;e<n;++e)r.push(t);return r}const fr={stack:"dbcore",name:"VirtualIndexMiddleware",level:1,create:function(e){return{...e,table(t){const n=e.table(t),{schema:r}=n,o={},i=[];function a(e,t,n){const r=Vn(e),s=o[r]=o[r]||[],u=null==e?0:"string"==typeof e?1:e.length,c=t>0,l={...n,isVirtual:c,keyTail:t,keyLength:u,extractKey:Wn(e),unique:!c&&n.unique};return s.push(l),l.isPrimaryKey||i.push(l),u>1&&a(2===u?e[0]:e.slice(0,u-1),t+1,n),s.sort(((e,t)=>e.keyTail-t.keyTail)),l}const s=a(r.primaryKey.keyPath,0,r.primaryKey);o[":id"]=[s];for(const e of r.indexes)a(e.keyPath,0,e);function u(t){const n=t.query.index;return n.isVirtual?{...t,query:{index:n,range:(r=t.query.range,o=n.keyTail,{type:1===r.type?2:r.type,lower:hr(r.lower,r.lowerOpen?e.MAX_KEY:e.MIN_KEY,o),lowerOpen:!0,upper:hr(r.upper,r.upperOpen?e.MIN_KEY:e.MAX_KEY,o),upperOpen:!0})}}:t;var r,o}const c={...n,schema:{...r,primaryKey:s,indexes:i,getIndexByKeyPath:function(e){const t=o[Vn(e)];return t&&t[0]}},count:e=>n.count(u(e)),query:e=>n.query(u(e)),openCursor(t){const{keyTail:r,isVirtual:o,keyLength:i}=t.query.index;return o?n.openCursor(u(t)).then((n=>n&&function(n){const o=Object.create(n,{continue:{value:function(o){null!=o?n.continue(hr(o,t.reverse?e.MAX_KEY:e.MIN_KEY,r)):t.unique?n.continue(n.key.slice(0,i).concat(t.reverse?e.MIN_KEY:e.MAX_KEY,r)):n.continue()}},continuePrimaryKey:{value(t,o){n.continuePrimaryKey(hr(t,e.MAX_KEY,r),o)}},primaryKey:{get:()=>n.primaryKey},key:{get(){const e=n.key;return 1===i?e[0]:e.slice(0,i)}},value:{get:()=>n.value}});return o}(n))):n.openCursor(t)}};return c}}}};function dr(e,t,n,r){return n=n||{},r=r||"",$(e).forEach((o=>{if(G(t,o)){var i=e[o],a=t[o];if("object"==typeof i&&"object"==typeof a&&i&&a){const e=ge(i);e!==ge(a)?n[r+o]=t[o]:"Object"===e?dr(i,a,n,r+o+"."):i!==a&&(n[r+o]=t[o])}else i!==a&&(n[r+o]=t[o])}else n[r+o]=void 0})),$(t).forEach((o=>{G(e,o)||(n[r+o]=t[o])})),n}const pr={stack:"dbcore",name:"HooksMiddleware",level:2,create:e=>({...e,table(t){const n=e.table(t),{primaryKey:r}=n.schema,o={...n,mutate(e){const o=pt.trans,{deleting:i,creating:a,updating:s}=o.table(t).hook;switch(e.type){case"add":if(a.fire===Ue)break;return o._promise("readwrite",(()=>u(e)),!0);case"put":if(a.fire===Ue&&s.fire===Ue)break;return o._promise("readwrite",(()=>u(e)),!0);case"delete":if(i.fire===Ue)break;return o._promise("readwrite",(()=>u(e)),!0);case"deleteRange":if(i.fire===Ue)break;return o._promise("readwrite",(()=>function(e){return c(e.trans,e.range,1e4)}(e)),!0)}return n.mutate(e);function u(e){const t=pt.trans,o=e.keys||function(e,t){return"delete"===t.type?t.keys:t.keys||t.values.map(e.extractKey)}(r,e);if(!o)throw new Error("Keys missing");return"delete"!==(e="add"===e.type||"put"===e.type?{...e,keys:o}:{...e}).type&&(e.values=[...e.values]),e.keys&&(e.keys=[...e.keys]),function(e,t,n){return"add"===t.type?Promise.resolve([]):e.getMany({trans:t.trans,keys:n,cache:"immutable"})}(n,e,o).then((u=>{const c=o.map(((n,o)=>{const c=u[o],l={onerror:null,onsuccess:null};if("delete"===e.type)i.fire.call(l,n,c,t);else if("add"===e.type||void 0===c){const i=a.fire.call(l,n,e.values[o],t);null==n&&null!=i&&(n=i,e.keys[o]=n,r.outbound||ue(e.values[o],r.keyPath,n))}else{const r=dr(c,e.values[o]),i=s.fire.call(l,r,n,c,t);if(i){const t=e.values[o];Object.keys(i).forEach((e=>{G(t,e)?t[e]=i[e]:ue(t,e,i[e])}))}}return l}));return n.mutate(e).then((({failures:t,results:n,numFailures:r,lastResult:i})=>{for(let r=0;r<o.length;++r){const i=n?n[r]:o[r],a=c[r];null==i?a.onerror&&a.onerror(t[r]):a.onsuccess&&a.onsuccess("put"===e.type&&u[r]?e.values[r]:i)}return{failures:t,results:n,numFailures:r,lastResult:i}})).catch((e=>(c.forEach((t=>t.onerror&&t.onerror(e))),Promise.reject(e))))}))}function c(e,t,o){return n.query({trans:e,values:!1,query:{index:r,range:t},limit:o}).then((({result:n})=>u({type:"delete",keys:n,trans:e}).then((r=>r.numFailures>0?Promise.reject(r.failures[0]):n.length<o?{failures:[],numFailures:0,lastResult:void 0}:c(e,{...t,lower:n[n.length-1],lowerOpen:!0},o)))))}}};return o}})};function yr(e,t,n){try{if(!t)return null;if(t.keys.length<e.length)return null;const r=[];for(let o=0,i=0;o<t.keys.length&&i<e.length;++o)0===xn(t.keys[o],e[i])&&(r.push(n?ye(t.values[o]):t.values[o]),++i);return r.length===e.length?r:null}catch(e){return null}}const mr={stack:"dbcore",level:-1,create:e=>({table:t=>{const n=e.table(t);return{...n,getMany:e=>{if(!e.cache)return n.getMany(e);const t=yr(e.keys,e.trans._cache,"clone"===e.cache);return t?gt.resolve(t):n.getMany(e).then((t=>(e.trans._cache={keys:e.keys,values:"clone"===e.cache?ye(t):t},t)))},mutate:e=>("add"!==e.type&&(e.trans._cache=null),n.mutate(e))}}})};function vr(e){return!("from"in e)}const gr=function(e,t){if(!this){const t=new gr;return e&&"d"in e&&z(t,e),t}z(this,arguments.length?{d:1,from:e,to:arguments.length>1?t:e}:{d:0})};function br(e,t,n){const r=xn(t,n);if(isNaN(r))return;if(r>0)throw RangeError();if(vr(e))return z(e,{from:t,to:n,d:1});const o=e.l,i=e.r;if(xn(n,e.from)<0)return o?br(o,t,n):e.l={from:t,to:n,d:1,l:null,r:null},xr(e);if(xn(t,e.to)>0)return i?br(i,t,n):e.r={from:t,to:n,d:1,l:null,r:null},xr(e);xn(t,e.from)<0&&(e.from=t,e.l=null,e.d=i?i.d+1:1),xn(n,e.to)>0&&(e.to=n,e.r=null,e.d=e.l?e.l.d+1:1);const a=!e.r;o&&!e.l&&wr(e,o),i&&a&&wr(e,i)}function wr(e,t){vr(t)||function e(t,{from:n,to:r,l:o,r:i}){br(t,n,r),o&&e(t,o),i&&e(t,i)}(e,t)}function _r(e){let t=vr(e)?null:{s:0,n:e};return{next(e){const n=arguments.length>0;for(;t;)switch(t.s){case 0:if(t.s=1,n)for(;t.n.l&&xn(e,t.n.from)<0;)t={up:t,n:t.n.l,s:1};else for(;t.n.l;)t={up:t,n:t.n.l,s:1};case 1:if(t.s=2,!n||xn(e,t.n.to)<=0)return{value:t.n,done:!1};case 2:if(t.n.r){t.s=3,t={up:t,n:t.n.r,s:0};continue}case 3:t=t.up}return{done:!0}}}}function xr(e){var t,n;const r=((null===(t=e.r)||void 0===t?void 0:t.d)||0)-((null===(n=e.l)||void 0===n?void 0:n.d)||0),o=r>1?"r":r<-1?"l":"";if(o){const t="r"===o?"l":"r",n={...e},r=e[o];e.from=r.from,e.to=r.to,e[o]=r[o],n[o]=r[t],e[t]=n,n.d=kr(n)}e.d=kr(e)}function kr({r:e,l:t}){return(e?t?Math.max(e.d,t.d):e.d:t?t.d:0)+1}Y(gr.prototype,{add(e){return wr(this,e),this},addKey(e){return br(this,e,e),this},addKeys(e){return e.forEach((e=>br(this,e,e))),this},[be](){return _r(this)}});const Sr={stack:"dbcore",level:0,create:e=>{const t=e.schema.name,n=new gr(e.MIN_KEY,e.MAX_KEY);return{...e,table:r=>{const o=e.table(r),{schema:i}=o,{primaryKey:a}=i,{extractKey:s,outbound:u}=a,c={...o,mutate:e=>{const a=e.trans,s=a.mutatedParts||(a.mutatedParts={}),u=e=>{const n=`idb://${t}/${r}/${e}`;return s[n]||(s[n]=new gr)},c=u(""),l=u(":dels"),{type:h}=e;let[f,d]="deleteRange"===e.type?[e.range]:"delete"===e.type?[e.keys]:e.values.length<50?[[],e.values]:[];const p=e.trans._cache;return o.mutate(e).then((e=>{if(W(f)){"delete"!==h&&(f=e.results),c.addKeys(f);const t=yr(f,p);t||"add"===h||l.addKeys(f),(t||d)&&function(e,t,n,r){t.indexes.forEach((function(t){const o=e(t.name||"");function i(e){return null!=e?t.extractKey(e):null}const a=e=>t.multiEntry&&W(e)?e.forEach((e=>o.addKey(e))):o.addKey(e);(n||r).forEach(((e,t)=>{const o=n&&i(n[t]),s=r&&i(r[t]);0!==xn(o,s)&&(null!=o&&a(o),null!=s&&a(s))}))}))}(u,i,t,d)}else if(f){const e={from:f.lower,to:f.upper};l.add(e),c.add(e)}else c.add(n),l.add(n),i.indexes.forEach((e=>u(e.name).add(n)));return e}))}},l=({query:{index:t,range:n}})=>{var r,o;return[t,new gr(null!==(r=n.lower)&&void 0!==r?r:e.MIN_KEY,null!==(o=n.upper)&&void 0!==o?o:e.MAX_KEY)]},h={get:e=>[a,new gr(e.key)],getMany:e=>[a,(new gr).addKeys(e.keys)],count:l,query:l,openCursor:l};return $(h).forEach((e=>{c[e]=function(i){const{subscr:a}=pt;if(a){const c=e=>{const n=`idb://${t}/${r}/${e}`;return a[n]||(a[n]=new gr)},l=c(""),f=c(":dels"),[d,p]=h[e](i);if(c(d.name||"").add(p),!d.isPrimaryKey){if("count"!==e){const t="query"===e&&u&&i.values&&o.query({...i,values:!1});return o[e].apply(this,arguments).then((n=>{if("query"===e){if(u&&i.values)return t.then((({result:e})=>(l.addKeys(e),n)));const e=i.values?n.result.map(s):n.result;i.values?l.addKeys(e):f.addKeys(e)}else if("openCursor"===e){const e=n,t=i.values;return e&&Object.create(e,{key:{get:()=>(f.addKey(e.primaryKey),e.key)},primaryKey:{get(){const t=e.primaryKey;return f.addKey(t),t}},value:{get:()=>(t&&l.addKey(e.primaryKey),e.value)}})}return n}))}f.add(n)}}return o[e].apply(this,arguments)}})),c}}}};class Er{constructor(e,t){this._middlewares={},this.verno=0;const n=Er.dependencies;this._options=t={addons:Er.addons,autoOpen:!0,indexedDB:n.indexedDB,IDBKeyRange:n.IDBKeyRange,...t},this._deps={indexedDB:t.indexedDB,IDBKeyRange:t.IDBKeyRange};const{addons:r}=t;this._dbSchema={},this._versions=[],this._storeNames=[],this._allTables={},this.idbdb=null,this._novip=this;const o={dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:Ue,dbReadyPromise:null,cancelOpen:Ue,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3};var i;o.dbReadyPromise=new gt((e=>{o.dbReadyResolve=e})),o.openCanceller=new gt(((e,t)=>{o.cancelOpen=t})),this._state=o,this.name=e,this.on=dn(this,"populate","blocked","versionchange","close",{ready:[Qe,Ue]}),this.on.ready.subscribe=re(this.on.ready.subscribe,(e=>(t,n)=>{Er.vip((()=>{const r=this._state;if(r.openComplete)r.dbOpenError||gt.resolve().then(t),n&&e(t);else if(r.onReadyBeingFired)r.onReadyBeingFired.push(t),n&&e(t);else{e(t);const r=this;n||e((function e(){r.on.ready.unsubscribe(t),r.on.ready.unsubscribe(e)}))}}))})),this.Collection=(i=this,pn(En.prototype,(function(e,t){this.db=i;let n=ln,r=null;if(t)try{n=t()}catch(e){r=e}const o=e._ctx,a=o.table,s=a.hook.reading.fire;this._ctx={table:a,index:o.index,isPrimKey:!o.index||a.schema.primKey.keyPath&&o.index===a.schema.primKey.name,range:n,keysOnly:!1,dir:"next",unique:"",algorithm:null,filter:null,replayFilter:null,justLimit:!0,isMatch:null,offset:0,limit:1/0,error:r,or:o.or,valueMapper:s!==$e?s:null}}))),this.Table=function(e){return pn(fn.prototype,(function(t,n,r){this.db=e,this._tx=r,this.name=t,this.schema=n,this.hook=e._allTables[t]?e._allTables[t].hook:dn(null,{creating:[He,Ue],reading:[We,$e],updating:[Ge,Ue],deleting:[Ve,Ue]})}))}(this),this.Transaction=function(e){return pn(Mn.prototype,(function(t,n,r,o,i){this.db=e,this.mode=t,this.storeNames=n,this.schema=r,this.chromeTransactionDurability=o,this.idbtrans=null,this.on=dn(this,"complete","error","abort"),this.parent=i||null,this.active=!0,this._reculock=0,this._blockedFuncs=[],this._resolve=null,this._reject=null,this._waitingFor=null,this._waitingQueue=null,this._spinCount=0,this._completion=new gt(((e,t)=>{this._resolve=e,this._reject=t})),this._completion.then((()=>{this.active=!1,this.on.complete.fire()}),(e=>{var t=this.active;return this.active=!1,this.on.error.fire(e),this.parent?this.parent._reject(e):t&&this.idbtrans&&this.idbtrans.abort(),Zt(e)}))}))}(this),this.Version=function(e){return pn(rr.prototype,(function(t){this.db=e,this._cfg={version:t,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}}))}(this),this.WhereClause=function(e){return pn(Rn.prototype,(function(t,n,r){this.db=e,this._ctx={table:t,index:":id"===n?null:n,or:r};const o=e._deps.indexedDB;if(!o)throw new Me.MissingAPI;this._cmp=this._ascending=o.cmp.bind(o),this._descending=(e,t)=>o.cmp(t,e),this._max=(e,t)=>o.cmp(e,t)>0?e:t,this._min=(e,t)=>o.cmp(e,t)<0?e:t,this._IDBKeyRange=e._deps.IDBKeyRange}))}(this),this.on("versionchange",(e=>{e.newVersion>0?console.warn(`Another connection wants to upgrade database '${this.name}'. Closing db now to resume the upgrade.`):console.warn(`Another connection wants to delete database '${this.name}'. Closing db now to resume the delete request.`),this.close()})),this.on("blocked",(e=>{!e.newVersion||e.newVersion<e.oldVersion?console.warn(`Dexie.delete('${this.name}') was blocked`):console.warn(`Upgrade '${this.name}' blocked by other connection holding version ${e.oldVersion/10}`)})),this._maxKey=$n(t.IDBKeyRange),this._createTransaction=(e,t,n,r)=>new this.Transaction(e,t,n,this._options.chromeTransactionDurability,r),this._fireOnBlocked=e=>{this.on("blocked").fire(e),rn.filter((e=>e.name===this.name&&e!==this&&!e._state.vcFired)).map((t=>t.on("versionchange").fire(e)))},this.use(fr),this.use(pr),this.use(Sr),this.use(mr),this.vip=Object.create(this,{_vip:{value:!0}}),r.forEach((e=>e(this)))}version(e){if(isNaN(e)||e<.1)throw new Me.Type("Given version is not a positive number");if(e=Math.round(10*e)/10,this.idbdb||this._state.isBeingOpened)throw new Me.Schema("Cannot add version when database is open");this.verno=Math.max(this.verno,e);const t=this._versions;var n=t.filter((t=>t._cfg.version===e))[0];return n||(n=new this.Version(e),t.push(n),t.sort(Xn),n.stores({}),this._state.autoSchema=!1,n)}_whenReady(e){return this.idbdb&&(this._state.openComplete||pt.letThrough||this._vip)?e():new gt(((e,t)=>{if(this._state.openComplete)return t(new Me.DatabaseClosed(this._state.dbOpenError));if(!this._state.isBeingOpened){if(!this._options.autoOpen)return void t(new Me.DatabaseClosed);this.open().catch(Ue)}this._state.dbReadyPromise.then(e,t)})).then(e)}use({stack:e,create:t,level:n,name:r}){r&&this.unuse({stack:e,name:r});const o=this._middlewares[e]||(this._middlewares[e]=[]);return o.push({stack:e,create:t,level:null==n?10:n,name:r}),o.sort(((e,t)=>e.level-t.level)),this}unuse({stack:e,name:t,create:n}){return e&&this._middlewares[e]&&(this._middlewares[e]=this._middlewares[e].filter((e=>n?e.create!==n:!!t&&e.name!==t))),this}open(){return function(e){const t=e._state,{indexedDB:n}=e._deps;if(t.isBeingOpened||e.idbdb)return t.dbReadyPromise.then((()=>t.dbOpenError?Zt(t.dbOpenError):e));Se&&(t.openCanceller._stackHolder=je()),t.isBeingOpened=!0,t.dbOpenError=null,t.openComplete=!1;const r=t.openCanceller;function o(){if(t.openCanceller!==r)throw new Me.DatabaseClosed("db.open() was cancelled")}let i=t.dbReadyResolve,a=null,s=!1;return gt.race([r,("undefined"==typeof navigator?gt.resolve():sr()).then((()=>new gt(((r,i)=>{if(o(),!n)throw new Me.MissingAPI;const u=e.name,c=t.autoSchema?n.open(u):n.open(u,Math.round(10*e.verno));if(!c)throw new Me.MissingAPI;c.onerror=Bn(i),c.onblocked=Dt(e._fireOnBlocked),c.onupgradeneeded=Dt((r=>{if(a=c.transaction,t.autoSchema&&!e._options.allowEmptyDB){c.onerror=Fn,a.abort(),c.result.close();const e=n.deleteDatabase(u);e.onsuccess=e.onerror=Dt((()=>{i(new Me.NoSuchDatabase(`Database ${u} doesnt exist`))}))}else{a.onerror=Bn(i);var o=r.oldVersion>Math.pow(2,62)?0:r.oldVersion;s=o<1,e._novip.idbdb=c.result,function(e,t,n,r){const o=e._dbSchema,i=e._createTransaction("readwrite",e._storeNames,o);i.create(n),i._completion.catch(r);const a=i._reject.bind(i),s=pt.transless||pt;Lt((()=>{pt.trans=i,pt.transless=s,0===t?($(o).forEach((e=>{Zn(n,e,o[e].primKey,o[e].indexes)})),Gn(e,n),gt.follow((()=>e.on.populate.fire(i))).catch(a)):function({_novip:e},t,n,r){const o=[],i=e._versions;let a=e._dbSchema=tr(0,e.idbdb,r),s=!1;return i.filter((e=>e._cfg.version>=t)).forEach((i=>{o.push((()=>{const o=a,u=i._cfg.dbschema;nr(e,o,r),nr(e,u,r),a=e._dbSchema=u;const c=Jn(o,u);c.add.forEach((e=>{Zn(r,e[0],e[1].primKey,e[1].indexes)})),c.change.forEach((e=>{if(e.recreate)throw new Me.Upgrade("Not yet support for changing primary key");{const t=r.objectStore(e.name);e.add.forEach((e=>er(t,e))),e.change.forEach((e=>{t.deleteIndex(e.name),er(t,e)})),e.del.forEach((e=>t.deleteIndex(e)))}}));const l=i._cfg.contentUpgrade;if(l&&i._cfg.version>t){Gn(e,r),n._memoizedTables={},s=!0;let t=ce(u);c.del.forEach((e=>{t[e]=o[e]})),Qn(e,[e.Transaction.prototype]),Yn(e,[e.Transaction.prototype],$(t),t),n.schema=t;const i=ke(l);let a;i&&qt();const h=gt.follow((()=>{if(a=l(n),a&&i){var e=Ut.bind(null,null);a.then(e,e)}}));return a&&"function"==typeof a.then?gt.resolve(a):h.then((()=>a))}})),o.push((t=>{s&&an||function(e,t){[].slice.call(t.db.objectStoreNames).forEach((n=>null==e[n]&&t.db.deleteObjectStore(n)))}(i._cfg.dbschema,t),Qn(e,[e.Transaction.prototype]),Yn(e,[e.Transaction.prototype],e._storeNames,e._dbSchema),n.schema=e._dbSchema}))})),function e(){return o.length?gt.resolve(o.shift()(n.idbtrans)).then(e):gt.resolve()}().then((()=>{var e,t;t=r,$(e=a).forEach((n=>{t.db.objectStoreNames.contains(n)||Zn(t,n,e[n].primKey,e[n].indexes)}))}))}(e,t,i,n).catch(a)}))}(e,o/10,a,i)}}),i),c.onsuccess=Dt((()=>{a=null;const n=e._novip.idbdb=c.result,o=ne(n.objectStoreNames);if(o.length>0)try{const r=n.transaction(1===(i=o).length?i[0]:i,"readonly");t.autoSchema?function({_novip:e},t,n){e.verno=t.version/10;const r=e._dbSchema=tr(0,t,n);e._storeNames=ne(t.objectStoreNames,0),Yn(e,[e._allTables],$(r),r)}(e,n,r):(nr(e,e._dbSchema,r),function(e,t){const n=Jn(tr(0,e.idbdb,t),e._dbSchema);return!(n.add.length||n.change.some((e=>e.add.length||e.change.length)))}(e,r)||console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Some queries may fail.")),Gn(e,r)}catch(e){}var i;rn.push(e),n.onversionchange=Dt((n=>{t.vcFired=!0,e.on("versionchange").fire(n)})),n.onclose=Dt((t=>{e.on("close").fire(t)})),s&&function({indexedDB:e,IDBKeyRange:t},n){!ir(e)&&"__dbnames"!==n&&or(e,t).put({name:n}).catch(Ue)}(e._deps,u),r()}),i)}))))]).then((()=>(o(),t.onReadyBeingFired=[],gt.resolve(ar((()=>e.on.ready.fire(e.vip)))).then((function n(){if(t.onReadyBeingFired.length>0){let r=t.onReadyBeingFired.reduce(Qe,Ue);return t.onReadyBeingFired=[],gt.resolve(ar((()=>r(e.vip)))).then(n)}}))))).finally((()=>{t.onReadyBeingFired=null,t.isBeingOpened=!1})).then((()=>e)).catch((n=>{t.dbOpenError=n;try{a&&a.abort()}catch(e){}return r===t.openCanceller&&e._close(),Zt(n)})).finally((()=>{t.openComplete=!0,i()}))}(this)}_close(){const e=this._state,t=rn.indexOf(this);if(t>=0&&rn.splice(t,1),this.idbdb){try{this.idbdb.close()}catch(e){}this._novip.idbdb=null}e.dbReadyPromise=new gt((t=>{e.dbReadyResolve=t})),e.openCanceller=new gt(((t,n)=>{e.cancelOpen=n}))}close(){this._close();const e=this._state;this._options.autoOpen=!1,e.dbOpenError=new Me.DatabaseClosed,e.isBeingOpened&&e.cancelOpen(e.dbOpenError)}delete(){const e=arguments.length>0,t=this._state;return new gt(((n,r)=>{const o=()=>{this.close();var e=this._deps.indexedDB.deleteDatabase(this.name);e.onsuccess=Dt((()=>{!function({indexedDB:e,IDBKeyRange:t},n){!ir(e)&&"__dbnames"!==n&&or(e,t).delete(n).catch(Ue)}(this._deps,this.name),n()})),e.onerror=Bn(r),e.onblocked=this._fireOnBlocked};if(e)throw new Me.InvalidArgument("Arguments not allowed in db.delete()");t.isBeingOpened?t.dbReadyPromise.then(o):o()}))}backendDB(){return this.idbdb}isOpen(){return null!==this.idbdb}hasBeenClosed(){const e=this._state.dbOpenError;return e&&"DatabaseClosed"===e.name}hasFailed(){return null!==this._state.dbOpenError}dynamicallyOpened(){return this._state.autoSchema}get tables(){return $(this._allTables).map((e=>this._allTables[e]))}transaction(){const e=cr.apply(this,arguments);return this._transaction.apply(this,e)}_transaction(e,t,n){let r=pt.trans;r&&r.db===this&&-1===e.indexOf("!")||(r=null);const o=-1!==e.indexOf("?");let i,a;e=e.replace("!","").replace("?","");try{if(a=t.map((e=>{var t=e instanceof this.Table?e.name:e;if("string"!=typeof t)throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return t})),"r"==e||"readonly"===e)i="readonly";else{if("rw"!=e&&"readwrite"!=e)throw new Me.InvalidArgument("Invalid transaction mode: "+e);i="readwrite"}if(r){if("readonly"===r.mode&&"readwrite"===i){if(!o)throw new Me.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");r=null}r&&a.forEach((e=>{if(r&&-1===r.storeNames.indexOf(e)){if(!o)throw new Me.SubTransaction("Table "+e+" not included in parent transaction.");r=null}})),o&&r&&!r.active&&(r=null)}}catch(e){return r?r._promise(null,((t,n)=>{n(e)})):Zt(e)}const s=lr.bind(null,this,i,a,r,n);return r?r._promise(i,s,"lock"):pt.trans?Gt(pt.transless,(()=>this._whenReady(s))):this._whenReady(s)}table(e){if(!G(this._allTables,e))throw new Me.InvalidTable(`Table ${e} does not exist`);return this._allTables[e]}}const Or="undefined"!=typeof Symbol&&"observable"in Symbol?Symbol.observable:"@@observable";class Pr{constructor(e){this._subscribe=e}subscribe(e,t,n){return this._subscribe(e&&"function"!=typeof e?e:{next:e,error:t,complete:n})}[Or](){return this}}function jr(e,t){return $(t).forEach((n=>{wr(e[n]||(e[n]=new gr),t[n])})),e}let Ar;try{Ar={indexedDB:U.indexedDB||U.mozIndexedDB||U.webkitIndexedDB||U.msIndexedDB,IDBKeyRange:U.IDBKeyRange||U.webkitIDBKeyRange}}catch(n){Ar={indexedDB:null,IDBKeyRange:null}}const Ir=Er;function Kr(e){let t=Cr;try{Cr=!0,Nn.storagemutated.fire(e)}finally{Cr=t}}Y(Ir,{...qe,delete:e=>new Ir(e,{addons:[]}).delete(),exists:e=>new Ir(e,{addons:[]}).open().then((e=>(e.close(),!0))).catch("NoSuchDatabaseError",(()=>!1)),getDatabaseNames(e){try{return function({indexedDB:e,IDBKeyRange:t}){return ir(e)?Promise.resolve(e.databases()).then((e=>e.map((e=>e.name)).filter((e=>"__dbnames"!==e)))):or(e,t).toCollection().primaryKeys()}(Ir.dependencies).then(e)}catch(e){return Zt(new Me.MissingAPI)}},defineClass:()=>function(e){z(this,e)},ignoreTransaction:e=>pt.trans?Gt(pt.transless,e):e(),vip:ar,async:function(e){return function(){try{var t=ur(e.apply(this,arguments));return t&&"function"==typeof t.then?t:gt.resolve(t)}catch(e){return Zt(e)}}},spawn:function(e,t,n){try{var r=ur(e.apply(n,t||[]));return r&&"function"==typeof r.then?r:gt.resolve(r)}catch(e){return Zt(e)}},currentTransaction:{get:()=>pt.trans||null},waitFor:function(e,t){const n=gt.resolve("function"==typeof e?Ir.ignoreTransaction(e):e).timeout(t||6e4);return pt.trans?pt.trans.waitFor(n):n},Promise:gt,debug:{get:()=>Se,set:e=>{Ee(e,"dexie"===e?()=>!0:un)}},derive:J,extend:z,props:Y,override:re,Events:dn,on:Nn,liveQuery:function(e){return new Pr((t=>{const n=ke(e);let r=!1,o={},i={};const a={get closed(){return r},unsubscribe:()=>{r=!0,Nn.storagemutated.unsubscribe(l)}};t.start&&t.start(a);let s=!1,u=!1;function c(){return $(i).some((e=>o[e]&&function(e,t){const n=_r(t);let r=n.next();if(r.done)return!1;let o=r.value;const i=_r(e);let a=i.next(o.from),s=a.value;for(;!r.done&&!a.done;){if(xn(s.from,o.to)<=0&&xn(s.to,o.from)>=0)return!0;xn(o.from,s.from)<0?o=(r=n.next(s.from)).value:s=(a=i.next(o.from)).value}return!1}(o[e],i[e])))}const l=e=>{jr(o,e),c()&&h()},h=()=>{if(s||r)return;o={};const f={},d=function(t){n&&qt();const r=()=>Lt(e,{subscr:t,trans:null}),o=pt.trans?Gt(pt.transless,r):r();return n&&o.then(Ut,Ut),o}(f);u||(Nn("storagemutated",l),u=!0),s=!0,Promise.resolve(d).then((e=>{s=!1,r||(c()?h():(o={},i=f,t.next&&t.next(e)))}),(e=>{s=!1,t.error&&t.error(e),a.unsubscribe()}))};return h(),a}))},extendObservabilitySet:jr,getByKeyPath:se,setByKeyPath:ue,delByKeyPath:function(e,t){"string"==typeof t?ue(e,t,void 0):"length"in t&&[].map.call(t,(function(t){ue(e,t,void 0)}))},shallowClone:ce,deepClone:ye,getObjectDiff:dr,cmp:xn,asap:ie,minKey:-1/0,addons:[],connections:rn,errnames:Fe,dependencies:Ar,semVer:"3.2.1",version:"3.2.1".split(".").map((e=>parseInt(e))).reduce(((e,t,n)=>e+t/Math.pow(10,2*n)))}),Ir.maxKey=$n(Ir.dependencies.IDBKeyRange),"undefined"!=typeof dispatchEvent&&"undefined"!=typeof addEventListener&&(Nn("storagemutated",(e=>{if(!Cr){let t;on?(t=document.createEvent("CustomEvent"),t.initCustomEvent("x-storagemutated-1",!0,!0,e)):t=new CustomEvent("x-storagemutated-1",{detail:e}),Cr=!0,dispatchEvent(t),Cr=!1}})),addEventListener("x-storagemutated-1",(({detail:e})=>{Cr||Kr(e)})));let Cr=!1;if("undefined"!=typeof BroadcastChannel){const e=new BroadcastChannel("x-storagemutated-1");Nn("storagemutated",(t=>{Cr||e.postMessage(t)})),e.onmessage=e=>{e.data&&Kr(e.data)}}else if("undefined"!=typeof self&&"undefined"!=typeof navigator){Nn("storagemutated",(e=>{try{Cr||("undefined"!=typeof localStorage&&localStorage.setItem("x-storagemutated-1",JSON.stringify({trig:Math.random(),changedParts:e})),"object"==typeof self.clients&&[...self.clients.matchAll({includeUncontrolled:!0})].forEach((t=>t.postMessage({type:"x-storagemutated-1",changedParts:e}))))}catch(e){}})),addEventListener("storage",(e=>{if("x-storagemutated-1"===e.key){const t=JSON.parse(e.newValue);t&&Kr(t.changedParts)}}));const e=self.document&&navigator.serviceWorker;e&&e.addEventListener("message",(function({data:e}){e&&"x-storagemutated-1"===e.type&&Kr(e.changedParts)}))}gt.rejectionMapper=function(e,t){if(!e||e instanceof De||e instanceof TypeError||e instanceof SyntaxError||!e.name||!Le[e.name])return e;var n=new Le[e.name](t||e.message,e);return"stack"in e&&X(n,"stack",{get:function(){return this.inner.stack}}),n},Ee(Se,un);var Dr=i(766),Tr=i(685);function Rr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Br(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function Fr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Br(i,r,o,a,s,"next",e)}function s(e){Br(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Nr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Mr(e){return Mr=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Mr(e)}function Lr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Nr(e,t,n[t])}))}return e}function qr(e,t){return!t||"object"!==Wr(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ur(e,t){return Ur=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Ur(e,t)}function $r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Rr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Rr(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var Wr=function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};var zr=new(function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ur(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=Mr(t);if(n){var o=Mr(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return qr(this,e)});function o(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(e=r.call(this,"EsmOffline")).version(3).stores({syncQueue:"++id,userId,type,[userId+type]"}),e.syncQueue=e.table("syncQueue"),e}return o}(Er)),Hr={};function Vr(){return zr}var Gr,Yr=(0,Tr.createGlobalStore)("offline-synchronization",{});function Qr(){return Yr}function Xr(){return Jr.apply(this,arguments)}function Jr(){return Jr=Fr(w().mark((function e(){var t,n,r,o,i,a,s,u,c,l,h,f,d;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Yr.getState().synchronization){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,zr.syncQueue.count();case 4:t=e.sent,n={},r=Object.entries(Hr),o=r.length,i={},a=new AbortController,s=function(){var e=Yr.getState().synchronization;Yr.setState({synchronization:Lr({},e,{pendingCount:e.pendingCount-1})})},e.prev=11,Yr.setState({synchronization:{totalCount:t,pendingCount:t,abortController:a}}),u=0;case 14:if(!(u<o&&r.length>0)){e.next=30;break}c=r.length;case 16:if(!c--){e.next=27;break}if(l=$r(r[c],2),h=l[0],f=l[1],!(d=f.dependsOn.map((function(e){return n[e]}))).every(Boolean)){e.next=25;break}return i[h]={},e.next=23,Promise.all(d);case 23:n[h]=Zr(f,i,a,s),r.splice(c,1);case 25:e.next=16;break;case 27:u++,e.next=14;break;case 30:return e.next=32,Promise.allSettled(Object.values(n));case 32:return e.prev=32,Yr.setState({synchronization:void 0}),e.finish(32);case 35:case"end":return e.stop()}}),e,null,[[11,,32,35]])}))),Jr.apply(this,arguments)}function Zr(e,t,n,r){return eo.apply(this,arguments)}function eo(){return eo=Fr(w().mark((function e(t,n,r,o){var i,a,s,u,c,l,h,f,d,p,y,m,v,g,b,_,x;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t.type,a=t.dependsOn,s=t.process,u=zr.syncQueue,c=[],l=[],e.next=6,to();case 6:return h=e.sent,e.next=9,u.where({type:i,userId:h}).each((function(e,t){c.push([t.primaryKey,e.content,e.descriptor]),l.push(e.content)}));case 9:f=0;case 10:if(!(f<c.length)){e.next=32;break}return d=$r(c[f],3),p=d[0],y=d[1],m=d[2],v=m.id,g=m.dependencies,b=void 0===g?[]:g,e.prev=12,e.next=15,s(y,{abort:r,index:f,items:l,userId:h,dependencies:b.map((function(e){var t=e.id,r=e.type;return a.includes(r)?n[r][t]:void 0}))});case 15:return _=e.sent,void 0!==v&&(n[i][v]=_),e.next=19,u.delete(p);case 19:e.next=26;break;case 21:return e.prev=21,e.t0=e.catch(12),e.next=26,u.update(p,{lastError:{name:null===e.t0||void 0===e.t0?void 0:e.t0.name,message:null!==(x=null===e.t0||void 0===e.t0?void 0:e.t0.message)&&void 0!==x?x:null===e.t0||void 0===e.t0?void 0:e.t0.toString()}});case 26:return e.prev=26,o(),e.finish(26);case 29:f++,e.next=10;break;case 32:case"end":return e.stop()}}),e,null,[[12,21,26,29]])}))),eo.apply(this,arguments)}function to(){return no.apply(this,arguments)}function no(){return(no=Fr(w().mark((function e(){var t;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,Dr.getLoggedInUser)();case 2:return t=e.sent,e.abrupt("return",(null==t?void 0:t.uuid)||"*");case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ro(e,t,n,r){return oo.apply(this,arguments)}function oo(){return(oo=Fr(w().mark((function e(t,n,r,o){var i,a,s;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=zr.syncQueue,void 0===(a=o&&o.id)){e.next=5;break}return e.next=5,i.where({type:n,userId:t}).filter((function(e){return(null==e?void 0:e.descriptor.id)===a})).delete();case 5:return e.next=7,i.add({type:n,content:r,userId:t,descriptor:o||{},createdOn:new Date});case 7:return s=e.sent,e.abrupt("return",s);case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function io(e,t,n){return ao.apply(this,arguments)}function ao(){return(ao=Fr(w().mark((function e(t,n,r){var o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,to();case 2:return o=e.sent,e.next=5,ro(o,t,n,r);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function so(e,t){return uo.apply(this,arguments)}function uo(){return(uo=Fr(w().mark((function e(t,n){var r;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,co(t,n);case 2:return r=e.sent,e.abrupt("return",r.map((function(e){return e.content})));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function co(e,t){return lo.apply(this,arguments)}function lo(){return(lo=Fr(w().mark((function e(t,n){var r,o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=zr.syncQueue,o=[],e.next=4,r.where({type:n,userId:t}).each((function(e){o.push(e)}));case 4:return e.abrupt("return",o);case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ho(e){return fo.apply(this,arguments)}function fo(){return(fo=Fr(w().mark((function e(t){var n;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,to();case 2:return n=e.sent,e.next=5,so(n,t);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function po(e){return yo.apply(this,arguments)}function yo(){return(yo=Fr(w().mark((function e(t){var n;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,to();case 2:return n=e.sent,e.next=5,co(n,t);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function mo(e){return vo.apply(this,arguments)}function vo(){return(vo=Fr(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,zr.syncQueue.get(t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function go(e){var t;return!!(null===(t=Hr[e])||void 0===t?void 0:t.options.onBeginEditSyncItem)}function bo(e){return wo.apply(this,arguments)}function wo(){return(wo=Fr(w().mark((function e(t){var n,r,o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=3,mo(t);case 3:if(r=e.sent){e.next=6;break}throw new Error("No sync item with the ID ".concat(t," exists."));case 6:if(o=null===(n=Hr[r.type])||void 0===n?void 0:n.options.onBeginEditSyncItem){e.next=9;break}throw new Error("A sync item with the ID ".concat(t,' exists, but the associated handler (if one exists) doesn\'t support editing the item. You can avoid this error by either verifying that sync items of this type can be edited via the "canEditSynchronizationItemsOfType(type: string)" function or alternatively ensure that the synchronizaton handler for sync items of type "').concat(r.type,'" supports editing items.'));case 9:o(r);case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function _o(e){return xo.apply(this,arguments)}function xo(){return(xo=Fr(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,zr.syncQueue.delete(t);case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ko(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};Hr[e]={type:e,dependsOn:t,process:n,options:r}}var So=new Uint8Array(16);function Eo(){if(!Gr&&!(Gr="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Gr(So)}const Oo=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Po=function(e){return"string"==typeof e&&Oo.test(e)};for(var jo=[],Ao=0;Ao<256;++Ao)jo.push((Ao+256).toString(16).substr(1));const Io=function(e,t,n){var r=(e=e||{}).random||(e.rng||Eo)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,t){n=n||0;for(var o=0;o<16;++o)t[n+o]=r[o];return t}return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=(jo[e[t+0]]+jo[e[t+1]]+jo[e[t+2]]+jo[e[t+3]]+"-"+jo[e[t+4]]+jo[e[t+5]]+"-"+jo[e[t+6]]+jo[e[t+7]]+"-"+jo[e[t+8]]+jo[e[t+9]]+"-"+jo[e[t+10]]+jo[e[t+11]]+jo[e[t+12]]+jo[e[t+13]]+jo[e[t+14]]+jo[e[t+15]]).toLowerCase();if(!Po(n))throw TypeError("Stringified UUID is invalid");return n}(r)};var Ko="OFFLINE+";function Co(){return Ko+Io()}function Do(e){return e.startsWith(Ko)}function To(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ro(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function Bo(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ro(i,r,o,a,s,"next",e)}function s(e){Ro(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Fo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function No(e){return No=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},No(e)}function Mo(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Fo(e,t,n[t])}))}return e}function Lo(e,t){return!t||"object"!==Wo(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function qo(e,t){return qo=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},qo(e,t)}function Uo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}}(e,t)||zo(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $o(e){return function(e){if(Array.isArray(e))return To(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||zo(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var Wo=function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};function zo(e,t){if(e){if("string"==typeof e)return To(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?To(e,t):void 0}}var Ho=(0,Tr.createGlobalStore)("offline-patients",{offlinePatientDataSyncState:{},handlers:{}});function Vo(){return Ho}function Go(e,t){var n=Ho.getState();Ho.setState({handlers:Mo({},n.handlers,Fo({},e,t))})}function Yo(e){return Qo.apply(this,arguments)}function Qo(){return Qo=Bo(w().mark((function e(t){var n,r,o,i,a,s;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Object.entries(Ho.getState().handlers),r=n.map((function(e){return Uo(e,1)[0]})),o=[],i=[],a={},s=new AbortController,e.next=8,Xo(t,{timestamp:new Date,syncingHandlers:r,syncedHandlers:o,failedHandlers:i,errors:a,abort:function(){return s.abort(),!0}});case 8:return e.next=10,Promise.all(n.map(function(){var e=Bo(w().mark((function e(n){var r,u,c,l,h;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Uo(n,2),u=r[0],c=r[1],e.prev=1,e.next=4,c.onOfflinePatientAdded({patientUuid:t,signal:s.signal});case 4:console.debug("Offline patient handler ".concat(u," successfully synchronized patient data.")),o.push(u),e.next=14;break;case 8:e.prev=8,e.t0=e.catch(1),console.error("Offline patient handler ".concat(u," failed. Error: "),e.t0),i.push(u),a[u]=null!==(h=null!==(l=null===e.t0||void 0===e.t0?void 0:e.t0.message)&&void 0!==l?l:null===e.t0||void 0===e.t0?void 0:e.t0.toString())&&void 0!==h?h:"";case 14:case"end":return e.stop()}}),e,null,[[1,8]])})));return function(t){return e.apply(this,arguments)}}()));case 10:return e.next=12,Xo(t,{timestamp:new Date,syncingHandlers:[],syncedHandlers:o,failedHandlers:i,errors:a,abort:function(){return!1}});case 12:case"end":return e.stop()}}),e)}))),Qo.apply(this,arguments)}function Xo(e,t){return Jo.apply(this,arguments)}function Jo(){return Jo=Bo(w().mark((function e(t,n){var r,o,i,a;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Ho.getState(),Ho.setState({offlinePatientDataSyncState:Mo({},r.offlinePatientDataSyncState,Fo({},t,n))}),o=new ti,e.next=5,o.offlinePatientDataSyncStates.get({patientUuid:t});case 5:return i=e.sent,a={id:null==i?void 0:i.id,patientUuid:t,state:{timestamp:n.timestamp,syncedHandlers:n.syncedHandlers,failedHandlers:$o(n.failedHandlers).concat($o(n.syncingHandlers)),errors:n.errors}},e.next=9,o.offlinePatientDataSyncStates.put(a);case 9:case"end":return e.stop()}}),e)}))),Jo.apply(this,arguments)}function Zo(){return ei.apply(this,arguments)}function ei(){return ei=Bo(w().mark((function e(){var t,n,r,o,i,a,s,u,c;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=new ti,e.next=3,t.offlinePatientDataSyncStates.toArray();case 3:for(n=e.sent,r=Ho.getState().offlinePatientDataSyncState,o=!0,i=!1,a=void 0,e.prev=6,s=n[Symbol.iterator]();!(o=(u=s.next()).done);o=!0)c=u.value,r[c.patientUuid]=Mo({},c.state,{syncingHandlers:[],abort:function(){return!1}});e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),i=!0,a=e.t0;case 14:e.prev=14,e.prev=15,o||null==s.return||s.return();case 17:if(e.prev=17,!i){e.next=20;break}throw a;case 20:return e.finish(17);case 21:return e.finish(14);case 22:Ho.setState({offlinePatientDataSyncState:r});case 23:case"end":return e.stop()}}),e,null,[[6,10,14,22],[15,,17,21]])}))),ei.apply(this,arguments)}var ti=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&qo(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=No(t);if(n){var o=No(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Lo(this,e)});function o(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(e=r.call(this,"EsmOfflinePatientData")).version(1).stores({offlinePatientDataSyncStates:"++id,&patientUuid"}),e.offlinePatientDataSyncStates=e.table("offlinePatientDataSyncStates"),e}return o}(Er)})(),a})())}}}));
1
+ System.register(["@openmrs/esm-api","@openmrs/esm-state"],(function(e,t){var n={},r={};return{setters:[function(e){n.getLoggedInUser=e.getLoggedInUser},function(e){r.createGlobalStore=e.createGlobalStore}],execute:function(){e((()=>{var e={602:e=>{var t=function(e){"use strict";var t,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var o=t&&t.prototype instanceof m?t:m,i=Object.create(o.prototype),a=new j(r||[]);return i._invoke=function(e,t,n){var r=h;return function(o,i){if(r===d)throw new Error("Generator is already running");if(r===p){if("throw"===o)throw i;return C()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=E(a,n);if(s){if(s===y)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===h)throw r=p,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var u=l(e,t,n);if("normal"===u.type){if(r=n.done?p:f,u.arg===y)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r=p,n.method="throw",n.arg=u.arg)}}}(e,n,a),i}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var h="suspendedStart",f="suspendedYield",d="executing",p="completed",y={};function m(){}function v(){}function g(){}var b={};u(b,i,(function(){return this}));var w=Object.getPrototypeOf,_=w&&w(w(A([])));_&&_!==n&&r.call(_,i)&&(b=_);var x=g.prototype=m.prototype=Object.create(b);function k(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function n(o,i,a,s){var u=l(e[o],e,i);if("throw"!==u.type){var c=u.arg,h=c.value;return h&&"object"==typeof h&&r.call(h,"__await")?t.resolve(h.__await).then((function(e){n("next",e,a,s)}),(function(e){n("throw",e,a,s)})):t.resolve(h).then((function(e){c.value=e,a(c)}),(function(e){return n("throw",e,a,s)}))}s(u.arg)}var o;this._invoke=function(e,r){function i(){return new t((function(t,o){n(e,r,t,o)}))}return o=o?o.then(i,i):i()}}function E(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,E(e,n),"throw"===n.method))return y;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return y}var o=l(r,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,y;var i=o.arg;return i?i.done?(n[e.resultName]=i.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,y):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,y)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function A(e){if(e){var n=e[i];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function n(){for(;++o<e.length;)if(r.call(e,o))return n.value=e[o],n.done=!1,n;return n.value=t,n.done=!0,n};return a.next=a}}return{next:C}}function C(){return{value:t,done:!0}}return v.prototype=g,u(x,"constructor",g),u(g,"constructor",v),v.displayName=u(g,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,u(e,s,"GeneratorFunction")),e.prototype=Object.create(x),e},e.awrap=function(e){return{__await:e}},k(S.prototype),u(S.prototype,a,(function(){return this})),e.AsyncIterator=S,e.async=function(t,n,r,o,i){void 0===i&&(i=Promise);var a=new S(c(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(x),u(x,s,"Generator"),u(x,i,(function(){return this})),u(x,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=A,j.prototype={constructor:j,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(P),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function o(r,o){return s.type="throw",s.arg=e,n.next=r,o&&(n.method="next",n.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,y):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;P(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:A(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),y}},e}(e.exports);try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}},968:(e,t,n)=>{const r=n(577).R;t.s=function(e){if(e||(e=1),!n.y.meta||!n.y.meta.url)throw console.error("__system_context__",n.y),Error("systemjs-webpack-interop was provided an unknown SystemJS context. Expected context.meta.url, but none was provided");n.p=r(n.y.meta.url,e)}},577:(e,t,n)=>{t.R=function(e,t){var n=document.createElement("a");n.href=e;for(var r="/"===n.pathname[0]?n.pathname:"/"+n.pathname,o=0,i=r.length;o!==t&&i>=0;)"/"===r[--i]&&o++;if(o!==t)throw Error("systemjs-webpack-interop: rootDirectoryLevel ("+t+") is greater than the number of directories ("+o+") in the URL path "+e);var a=r.slice(0,i+1);return n.protocol+"//"+n.host+a};Number.isInteger},766:e=>{"use strict";e.exports=n},685:e=>{"use strict";e.exports=r}},o={};function i(t){var n=o[t];if(void 0!==n)return n.exports;var r=o[t]={exports:{}};return e[t](r,r.exports,i),r.exports}i.y=t,i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})();var a={};return(0,i(968).s)(1),(()=>{"use strict";i.r(a),i.d(a,{activateOfflineCapability:()=>L,beginEditSynchronizationItem:()=>bo,canBeginEditSynchronizationItemsOfType:()=>go,deleteSynchronizationItem:()=>_o,generateOfflineUuid:()=>Ko,getCurrentOfflineMode:()=>N,getFullSynchronizationItems:()=>po,getFullSynchronizationItemsFor:()=>co,getOfflineDb:()=>Vr,getOfflinePatientDataStore:()=>Vo,getOfflineSynchronizationStore:()=>Yr,getOmrsServiceWorker:()=>y,getSynchronizationItem:()=>mo,getSynchronizationItems:()=>ho,getSynchronizationItemsFor:()=>so,isOfflineUuid:()=>Do,loadPersistedPatientDataSyncState:()=>Zo,messageOmrsServiceWorker:()=>S,offlineUuidPrefix:()=>Io,omrsOfflineCachingStrategyHttpHeaderName:()=>g,omrsOfflineResponseBodyHttpHeaderName:()=>m,omrsOfflineResponseStatusHttpHeaderName:()=>v,queueSynchronizationItem:()=>io,queueSynchronizationItemFor:()=>ro,registerOfflinePatientHandler:()=>Go,registerOmrsServiceWorker:()=>p,runSynchronization:()=>Xr,setCurrentOfflineMode:()=>M,setupOfflineSync:()=>ko,syncOfflinePatientData:()=>Qo});try{self["workbox:window:6.5.1"]&&_()}catch(e){}function e(e,t){return new Promise((function(n){var r=new MessageChannel;r.port1.onmessage=function(e){n(e.data)},e.postMessage(t,[r.port2])}))}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function n(e,n){var r;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(r=function(e,n){if(e){if("string"==typeof e)return t(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?t(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){r&&(e=r);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(r=e[Symbol.iterator]()).next.bind(r)}try{self["workbox:core:6.5.1"]&&_()}catch(e){}var r=function(){var e=this;this.promise=new Promise((function(t,n){e.resolve=t,e.reject=n}))};function o(e,t){var n=location.href;return new URL(e,n).href===new URL(t,n).href}var s=function(e,t){this.type=e,Object.assign(this,t)};function u(e,t,n){return n?t?t(e):e:(e&&e.then||(e=Promise.resolve(e)),t?e.then(t):e)}function c(){}var l={type:"SKIP_WAITING"};function h(e,t){if(!t)return e&&e.then?e.then(c):Promise.resolve()}var f=function(t){var n,i;function a(e,n){var i,a;return void 0===n&&(n={}),(i=t.call(this)||this).nn={},i.tn=0,i.rn=new r,i.en=new r,i.on=new r,i.un=0,i.an=new Set,i.cn=function(){var e=i.fn,t=e.installing;i.tn>0||!o(t.scriptURL,i.sn.toString())||performance.now()>i.un+6e4?(i.vn=t,e.removeEventListener("updatefound",i.cn)):(i.hn=t,i.an.add(t),i.rn.resolve(t)),++i.tn,t.addEventListener("statechange",i.ln)},i.ln=function(e){var t=i.fn,n=e.target,r=n.state,o=n===i.vn,a={sw:n,isExternal:o,originalEvent:e};!o&&i.mn&&(a.isUpdate=!0),i.dispatchEvent(new s(r,a)),"installed"===r?i.wn=self.setTimeout((function(){"installed"===r&&t.waiting===n&&i.dispatchEvent(new s("waiting",a))}),200):"activating"===r&&(clearTimeout(i.wn),o||i.en.resolve(n))},i.dn=function(e){var t=i.hn,n=t!==navigator.serviceWorker.controller;i.dispatchEvent(new s("controlling",{isExternal:n,originalEvent:e,sw:t,isUpdate:i.mn})),n||i.on.resolve(t)},i.gn=(a=function(e){var t=e.data,n=e.ports,r=e.source;return u(i.getSW(),(function(){i.an.has(r)&&i.dispatchEvent(new s("message",{data:t,originalEvent:e,ports:n,sw:r}))}))},function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];try{return Promise.resolve(a.apply(this,e))}catch(e){return Promise.reject(e)}}),i.sn=e,i.nn=n,navigator.serviceWorker.addEventListener("message",i.gn),i}i=t,(n=a).prototype=Object.create(i.prototype),n.prototype.constructor=n,n.__proto__=i;var c,f=a.prototype;return f.register=function(e){var t=(void 0===e?{}:e).immediate,n=void 0!==t&&t;try{var r=this;return function(e,t){var n=e();return n&&n.then?n.then(t):t()}((function(){if(!n&&"complete"!==document.readyState)return h(new Promise((function(e){return window.addEventListener("load",e)})))}),(function(){return r.mn=Boolean(navigator.serviceWorker.controller),r.yn=r.pn(),u(r.bn(),(function(e){r.fn=e,r.yn&&(r.hn=r.yn,r.en.resolve(r.yn),r.on.resolve(r.yn),r.yn.addEventListener("statechange",r.ln,{once:!0}));var t=r.fn.waiting;return t&&o(t.scriptURL,r.sn.toString())&&(r.hn=t,Promise.resolve().then((function(){r.dispatchEvent(new s("waiting",{sw:t,wasWaitingBeforeRegister:!0}))})).then((function(){}))),r.hn&&(r.rn.resolve(r.hn),r.an.add(r.hn)),r.fn.addEventListener("updatefound",r.cn),navigator.serviceWorker.addEventListener("controllerchange",r.dn),r.fn}))}))}catch(e){return Promise.reject(e)}},f.update=function(){try{return this.fn?h(this.fn.update()):void 0}catch(e){return Promise.reject(e)}},f.getSW=function(){return void 0!==this.hn?Promise.resolve(this.hn):this.rn.promise},f.messageSW=function(t){try{return u(this.getSW(),(function(n){return e(n,t)}))}catch(e){return Promise.reject(e)}},f.messageSkipWaiting=function(){this.fn&&this.fn.waiting&&e(this.fn.waiting,l)},f.pn=function(){var e=navigator.serviceWorker.controller;return e&&o(e.scriptURL,this.sn.toString())?e:void 0},f.bn=function(){try{var e=this;return function(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}((function(){return u(navigator.serviceWorker.register(e.sn,e.nn),(function(t){return e.un=performance.now(),t}))}),(function(e){throw e}))}catch(e){return Promise.reject(e)}},(c=[{key:"active",get:function(){return this.en.promise}},{key:"controlling",get:function(){return this.on.promise}}])&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(a.prototype,c),a}(function(){function e(){this.Pn=new Map}var t=e.prototype;return t.addEventListener=function(e,t){this.Sn(e).add(t)},t.removeEventListener=function(e,t){this.Sn(e).delete(t)},t.dispatchEvent=function(e){e.target=this;for(var t,r=n(this.Sn(e.type));!(t=r()).done;)(0,t.value)(e)},t.Sn=function(e){return this.Pn.has(e)||this.Pn.set(e,new Set),this.Pn.get(e)},e}()),d=void 0;function p(e,t){if(void 0!==d)return console.warn("The application's Service Worker has already been registered. The new service worker at ".concat(e," will not be registered.")),d;if(!("serviceWorker"in navigator))throw new Error("Registering the Service Worker is not possible due to missing browser capabilities.");var n=new f(e,t);return d=n.register().then((function(){return n}))}function y(){return null!=d?d:Promise.resolve(void 0)}var m="x-omrs-offline-response-body",v="x-omrs-offline-response-status",g="x-omrs-offline-caching-strategy",b=i(602),w=i.n(b);function x(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function k(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){x(i,r,o,a,s,"next",e)}function s(e){x(i,r,o,a,s,"throw",e)}a(void 0)}))}}function S(e){return E.apply(this,arguments)}function E(){return(E=k(w().mark((function e(t){var n;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y();case 2:if(!(n=e.sent)){e.next=9;break}return e.next=6,n.messageSW(t);case 6:e.t0=e.sent,e.next=10;break;case 9:e.t0={success:!1,result:void 0,error:"No service worker has been registered. This is typically the case when the application has been built without offline-related features."};case 10:return e.abrupt("return",e.t0);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function O(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function P(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){O(i,r,o,a,s,"next",e)}function s(e){O(i,r,o,a,s,"throw",e)}a(void 0)}))}}function j(){return A.apply(this,arguments)}function A(){return(A=P(w().mark((function e(){var t;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=window.sessionStorage,e.prev=1,t.setItem("someKeyHere","test"),t.removeItem("someKeyHere"),e.next=10;break;case 6:if(e.prev=6,e.t0=e.catch(1),e.t0.code!==DOMException.QUOTA_EXCEEDED_ERR||0!==t.length){e.next=10;break}return e.abrupt("return",!0);case 10:return e.abrupt("return",!1);case 11:case"end":return e.stop()}}),e,null,[[1,6]])})))).apply(this,arguments)}function C(){return I.apply(this,arguments)}function I(){return(I=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",!window.indexedDB);case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function K(){return D.apply(this,arguments)}function D(){return D=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){var t=indexedDB.open("test");t.onerror=function(){return e(!0)},t.onsuccess=function(){return e(!1)}})));case 1:case"end":return e.stop()}}),e)}))),D.apply(this,arguments)}function T(){return R.apply(this,arguments)}function R(){return(R=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,K();case 2:if(e.t1=e.sent,e.t1){e.next=7;break}return e.next=6,C();case 6:e.t1=e.sent;case 7:if(e.t0=e.t1,e.t0){e.next=12;break}return e.next=11,j();case 11:e.t0=e.sent;case 12:return e.abrupt("return",e.t0);case 13:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var B="openmrs3:offline-mode",F="unavailable";function N(){return{current:F,notAvailable:"unavailable"===F,active:"on"===F}}function M(e){"unavailable"!==F&&"unavailable"!==e&&(localStorage.setItem(B,"on"===e?"active":"disabled"),F=e)}function L(){return q.apply(this,arguments)}function q(){return(q=P(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T();case 2:e.sent||(F="active"===localStorage.getItem(B)?"on":"off"),navigator.onLine;case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}const U="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,$=Object.keys,W=Array.isArray;function z(e,t){return"object"!=typeof t||$(t).forEach((function(n){e[n]=t[n]})),e}"undefined"==typeof Promise||U.Promise||(U.Promise=Promise);const H=Object.getPrototypeOf,V={}.hasOwnProperty;function G(e,t){return V.call(e,t)}function Q(e,t){"function"==typeof t&&(t=t(H(e))),("undefined"==typeof Reflect?$:Reflect.ownKeys)(t).forEach((n=>{X(e,n,t[n])}))}const Y=Object.defineProperty;function X(e,t,n,r){Y(e,t,z(n&&G(n,"get")&&"function"==typeof n.get?{get:n.get,set:n.set,configurable:!0}:{value:n,configurable:!0,writable:!0},r))}function J(e){return{from:function(t){return e.prototype=Object.create(t.prototype),X(e.prototype,"constructor",e),{extend:Q.bind(null,e.prototype)}}}}const Z=Object.getOwnPropertyDescriptor;function ee(e,t){let n;return Z(e,t)||(n=H(e))&&ee(n,t)}const te=[].slice;function ne(e,t,n){return te.call(e,t,n)}function re(e,t){return t(e)}function oe(e){if(!e)throw new Error("Assertion Failed")}function ie(e){U.setImmediate?setImmediate(e):setTimeout(e,0)}function ae(e,t){return e.reduce(((e,n,r)=>{var o=t(n,r);return o&&(e[o[0]]=o[1]),e}),{})}function se(e,t){if(G(e,t))return e[t];if(!t)return e;if("string"!=typeof t){for(var n=[],r=0,o=t.length;r<o;++r){var i=se(e,t[r]);n.push(i)}return n}var a=t.indexOf(".");if(-1!==a){var s=e[t.substr(0,a)];return void 0===s?void 0:se(s,t.substr(a+1))}}function ue(e,t,n){if(e&&void 0!==t&&(!("isFrozen"in Object)||!Object.isFrozen(e)))if("string"!=typeof t&&"length"in t){oe("string"!=typeof n&&"length"in n);for(var r=0,o=t.length;r<o;++r)ue(e,t[r],n[r])}else{var i=t.indexOf(".");if(-1!==i){var a=t.substr(0,i),s=t.substr(i+1);if(""===s)void 0===n?W(e)&&!isNaN(parseInt(a))?e.splice(a,1):delete e[a]:e[a]=n;else{var u=e[a];u||(u=e[a]={}),ue(u,s,n)}}else void 0===n?W(e)&&!isNaN(parseInt(t))?e.splice(t,1):delete e[t]:e[t]=n}}function ce(e){var t={};for(var n in e)G(e,n)&&(t[n]=e[n]);return t}const le=[].concat;function he(e){return le.apply([],e)}const fe="Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey".split(",").concat(he([8,16,32,64].map((e=>["Int","Uint","Float"].map((t=>t+e+"Array")))))).filter((e=>U[e])),de=fe.map((e=>U[e]));ae(fe,(e=>[e,!0]));let pe=null;function ye(e){pe="undefined"!=typeof WeakMap&&new WeakMap;const t=me(e);return pe=null,t}function me(e){if(!e||"object"!=typeof e)return e;let t=pe&&pe.get(e);if(t)return t;if(W(e)){t=[],pe&&pe.set(e,t);for(var n=0,r=e.length;n<r;++n)t.push(me(e[n]))}else if(de.indexOf(e.constructor)>=0)t=e;else{const n=H(e);for(var o in t=n===Object.prototype?{}:Object.create(n),pe&&pe.set(e,t),e)G(e,o)&&(t[o]=me(e[o]))}return t}const{toString:ve}={};function ge(e){return ve.call(e).slice(8,-1)}const be="undefined"!=typeof Symbol?Symbol.iterator:"@@iterator",we="symbol"==typeof be?function(e){var t;return null!=e&&(t=e[be])&&t.apply(e)}:function(){return null},_e={};function xe(e){var t,n,r,o;if(1===arguments.length){if(W(e))return e.slice();if(this===_e&&"string"==typeof e)return[e];if(o=we(e)){for(n=[];!(r=o.next()).done;)n.push(r.value);return n}if(null==e)return[e];if("number"==typeof(t=e.length)){for(n=new Array(t);t--;)n[t]=e[t];return n}return[e]}for(t=arguments.length,n=new Array(t);t--;)n[t]=arguments[t];return n}const ke="undefined"!=typeof Symbol?e=>"AsyncFunction"===e[Symbol.toStringTag]:()=>!1;var Se="undefined"!=typeof location&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function Ee(e,t){Se=e,Oe=t}var Oe=()=>!0;const Pe=!new Error("").stack;function je(){if(Pe)try{throw je.arguments,new Error}catch(e){return e}return new Error}function Ae(e,t){var n=e.stack;return n?(t=t||0,0===n.indexOf(e.name)&&(t+=(e.name+e.message).split("\n").length),n.split("\n").slice(t).filter(Oe).map((e=>"\n"+e)).join("")):""}var Ce=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],Ie=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"].concat(Ce),Ke={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function De(e,t){this._e=je(),this.name=e,this.message=t}function Te(e,t){return e+". Errors: "+Object.keys(t).map((e=>t[e].toString())).filter(((e,t,n)=>n.indexOf(e)===t)).join("\n")}function Re(e,t,n,r){this._e=je(),this.failures=t,this.failedKeys=r,this.successCount=n,this.message=Te(e,t)}function Be(e,t){this._e=je(),this.name="BulkError",this.failures=Object.keys(t).map((e=>t[e])),this.failuresByPos=t,this.message=Te(e,t)}J(De).from(Error).extend({stack:{get:function(){return this._stack||(this._stack=this.name+": "+this.message+Ae(this._e,2))}},toString:function(){return this.name+": "+this.message}}),J(Re).from(De),J(Be).from(De);var Fe=Ie.reduce(((e,t)=>(e[t]=t+"Error",e)),{});const Ne=De;var Me=Ie.reduce(((e,t)=>{var n=t+"Error";function r(e,r){this._e=je(),this.name=n,e?"string"==typeof e?(this.message=`${e}${r?"\n "+r:""}`,this.inner=r||null):"object"==typeof e&&(this.message=`${e.name} ${e.message}`,this.inner=e):(this.message=Ke[t]||n,this.inner=null)}return J(r).from(Ne),e[t]=r,e}),{});Me.Syntax=SyntaxError,Me.Type=TypeError,Me.Range=RangeError;var Le=Ce.reduce(((e,t)=>(e[t+"Error"]=Me[t],e)),{}),qe=Ie.reduce(((e,t)=>(-1===["Syntax","Type","Range"].indexOf(t)&&(e[t+"Error"]=Me[t]),e)),{});function Ue(){}function $e(e){return e}function We(e,t){return null==e||e===$e?t:function(n){return t(e(n))}}function ze(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function He(e,t){return e===Ue?t:function(){var n=e.apply(this,arguments);void 0!==n&&(arguments[0]=n);var r=this.onsuccess,o=this.onerror;this.onsuccess=null,this.onerror=null;var i=t.apply(this,arguments);return r&&(this.onsuccess=this.onsuccess?ze(r,this.onsuccess):r),o&&(this.onerror=this.onerror?ze(o,this.onerror):o),void 0!==i?i:n}}function Ve(e,t){return e===Ue?t:function(){e.apply(this,arguments);var n=this.onsuccess,r=this.onerror;this.onsuccess=this.onerror=null,t.apply(this,arguments),n&&(this.onsuccess=this.onsuccess?ze(n,this.onsuccess):n),r&&(this.onerror=this.onerror?ze(r,this.onerror):r)}}function Ge(e,t){return e===Ue?t:function(n){var r=e.apply(this,arguments);z(n,r);var o=this.onsuccess,i=this.onerror;this.onsuccess=null,this.onerror=null;var a=t.apply(this,arguments);return o&&(this.onsuccess=this.onsuccess?ze(o,this.onsuccess):o),i&&(this.onerror=this.onerror?ze(i,this.onerror):i),void 0===r?void 0===a?void 0:a:z(r,a)}}function Qe(e,t){return e===Ue?t:function(){return!1!==t.apply(this,arguments)&&e.apply(this,arguments)}}function Ye(e,t){return e===Ue?t:function(){var n=e.apply(this,arguments);if(n&&"function"==typeof n.then){for(var r=this,o=arguments.length,i=new Array(o);o--;)i[o]=arguments[o];return n.then((function(){return t.apply(r,i)}))}return t.apply(this,arguments)}}qe.ModifyError=Re,qe.DexieError=De,qe.BulkError=Be;var Xe={};const[Je,Ze,et]="undefined"==typeof Promise?[]:(()=>{let e=Promise.resolve();if("undefined"==typeof crypto||!crypto.subtle)return[e,H(e),e];const t=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[t,H(t),e]})(),tt=Ze&&Ze.then,nt=Je&&Je.constructor,rt=!!et;var ot=!1,it=et?()=>{et.then(jt)}:U.setImmediate?setImmediate.bind(null,jt):U.MutationObserver?()=>{var e=document.createElement("div");new MutationObserver((()=>{jt(),e=null})).observe(e,{attributes:!0}),e.setAttribute("i","1")}:()=>{setTimeout(jt,0)},at=function(e,t){yt.push([e,t]),ut&&(it(),ut=!1)},st=!0,ut=!0,ct=[],lt=[],ht=null,ft=$e,dt={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:Jt,pgp:!1,env:{},finalize:function(){this.unhandleds.forEach((e=>{try{Jt(e[0],e[1])}catch(e){}}))}},pt=dt,yt=[],mt=0,vt=[];function gt(e){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");this._listeners=[],this.onuncatched=Ue,this._lib=!1;var t=this._PSD=pt;if(Se&&(this._stackHolder=je(),this._prev=null,this._numPrev=0),"function"!=typeof e){if(e!==Xe)throw new TypeError("Not a function");return this._state=arguments[1],this._value=arguments[2],void(!1===this._state&&xt(this,this._value))}this._state=null,this._value=null,++t.ref,_t(this,e)}const bt={get:function(){var e=pt,t=Nt;function n(n,r){var o=!e.global&&(e!==pt||t!==Nt);const i=o&&!Ut();var a=new gt(((t,a)=>{St(this,new wt(Yt(n,e,o,i),Yt(r,e,o,i),t,a,e))}));return Se&&Pt(a,this),a}return n.prototype=Xe,n},set:function(e){X(this,"then",e&&e.prototype===Xe?bt:{get:function(){return e},set:bt.set})}};function wt(e,t,n,r,o){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.resolve=n,this.reject=r,this.psd=o}function _t(e,t){try{t((t=>{if(null===e._state){if(t===e)throw new TypeError("A promise cannot be resolved with itself.");var n=e._lib&&At();t&&"function"==typeof t.then?_t(e,((e,n)=>{t instanceof gt?t._then(e,n):t.then(e,n)})):(e._state=!0,e._value=t,kt(e)),n&&Ct()}}),xt.bind(null,e))}catch(t){xt(e,t)}}function xt(e,t){if(lt.push(t),null===e._state){var n=e._lib&&At();t=ft(t),e._state=!1,e._value=t,Se&&null!==t&&"object"==typeof t&&!t._promise&&function(e,t,n){try{e.apply(null,void 0)}catch(e){}}((()=>{var n=ee(t,"stack");t._promise=e,X(t,"stack",{get:()=>ot?n&&(n.get?n.get.apply(t):n.value):e.stack})})),function(e){ct.some((t=>t._value===e._value))||ct.push(e)}(e),kt(e),n&&Ct()}}function kt(e){var t=e._listeners;e._listeners=[];for(var n=0,r=t.length;n<r;++n)St(e,t[n]);var o=e._PSD;--o.ref||o.finalize(),0===mt&&(++mt,at((()=>{0==--mt&&It()}),[]))}function St(e,t){if(null!==e._state){var n=e._state?t.onFulfilled:t.onRejected;if(null===n)return(e._state?t.resolve:t.reject)(e._value);++t.psd.ref,++mt,at(Et,[n,e,t])}else e._listeners.push(t)}function Et(e,t,n){try{ht=t;var r,o=t._value;t._state?r=e(o):(lt.length&&(lt=[]),r=e(o),-1===lt.indexOf(o)&&function(e){for(var t=ct.length;t;)if(ct[--t]._value===e._value)return void ct.splice(t,1)}(t)),n.resolve(r)}catch(e){n.reject(e)}finally{ht=null,0==--mt&&It(),--n.psd.ref||n.psd.finalize()}}function Ot(e,t,n){if(t.length===n)return t;var r="";if(!1===e._state){var o,i,a=e._value;null!=a?(o=a.name||"Error",i=a.message||a,r=Ae(a,0)):(o=a,i=""),t.push(o+(i?": "+i:"")+r)}return Se&&((r=Ae(e._stackHolder,2))&&-1===t.indexOf(r)&&t.push(r),e._prev&&Ot(e._prev,t,n)),t}function Pt(e,t){var n=t?t._numPrev+1:0;n<100&&(e._prev=t,e._numPrev=n)}function jt(){At()&&Ct()}function At(){var e=st;return st=!1,ut=!1,e}function Ct(){var e,t,n;do{for(;yt.length>0;)for(e=yt,yt=[],n=e.length,t=0;t<n;++t){var r=e[t];r[0].apply(null,r[1])}}while(yt.length>0);st=!0,ut=!0}function It(){var e=ct;ct=[],e.forEach((e=>{e._PSD.onunhandled.call(null,e._value,e)}));for(var t=vt.slice(0),n=t.length;n;)t[--n]()}function Kt(e){return new gt(Xe,!1,e)}function Dt(e,t){var n=pt;return function(){var r=At(),o=pt;try{return Ht(n,!0),e.apply(this,arguments)}catch(e){t&&t(e)}finally{Ht(o,!1),r&&Ct()}}}Q(gt.prototype,{then:bt,_then:function(e,t){St(this,new wt(null,null,e,t,pt))},catch:function(e){if(1===arguments.length)return this.then(null,e);var t=arguments[0],n=arguments[1];return"function"==typeof t?this.then(null,(e=>e instanceof t?n(e):Kt(e))):this.then(null,(e=>e&&e.name===t?n(e):Kt(e)))},finally:function(e){return this.then((t=>(e(),t)),(t=>(e(),Kt(t))))},stack:{get:function(){if(this._stack)return this._stack;try{ot=!0;var e=Ot(this,[],20).join("\nFrom previous: ");return null!==this._state&&(this._stack=e),e}finally{ot=!1}}},timeout:function(e,t){return e<1/0?new gt(((n,r)=>{var o=setTimeout((()=>r(new Me.Timeout(t))),e);this.then(n,r).finally(clearTimeout.bind(null,o))})):this}}),"undefined"!=typeof Symbol&&Symbol.toStringTag&&X(gt.prototype,Symbol.toStringTag,"Dexie.Promise"),dt.env=Vt(),Q(gt,{all:function(){var e=xe.apply(null,arguments).map($t);return new gt((function(t,n){0===e.length&&t([]);var r=e.length;e.forEach(((o,i)=>gt.resolve(o).then((n=>{e[i]=n,--r||t(e)}),n)))}))},resolve:e=>{if(e instanceof gt)return e;if(e&&"function"==typeof e.then)return new gt(((t,n)=>{e.then(t,n)}));var t=new gt(Xe,!0,e);return Pt(t,ht),t},reject:Kt,race:function(){var e=xe.apply(null,arguments).map($t);return new gt(((t,n)=>{e.map((e=>gt.resolve(e).then(t,n)))}))},PSD:{get:()=>pt,set:e=>pt=e},totalEchoes:{get:()=>Nt},newPSD:Lt,usePSD:Gt,scheduler:{get:()=>at,set:e=>{at=e}},rejectionMapper:{get:()=>ft,set:e=>{ft=e}},follow:(e,t)=>new gt(((n,r)=>Lt(((t,n)=>{var r=pt;r.unhandleds=[],r.onunhandled=n,r.finalize=ze((function(){!function(e){vt.push((function t(){e(),vt.splice(vt.indexOf(t),1)})),++mt,at((()=>{0==--mt&&It()}),[])}((()=>{0===this.unhandleds.length?t():n(this.unhandleds[0])}))}),r.finalize),e()}),t,n,r)))}),nt&&(nt.allSettled&&X(gt,"allSettled",(function(){const e=xe.apply(null,arguments).map($t);return new gt((t=>{0===e.length&&t([]);let n=e.length;const r=new Array(n);e.forEach(((e,o)=>gt.resolve(e).then((e=>r[o]={status:"fulfilled",value:e}),(e=>r[o]={status:"rejected",reason:e})).then((()=>--n||t(r)))))}))})),nt.any&&"undefined"!=typeof AggregateError&&X(gt,"any",(function(){const e=xe.apply(null,arguments).map($t);return new gt(((t,n)=>{0===e.length&&n(new AggregateError([]));let r=e.length;const o=new Array(r);e.forEach(((e,i)=>gt.resolve(e).then((e=>t(e)),(e=>{o[i]=e,--r||n(new AggregateError(o))}))))}))})));const Tt={awaits:0,echoes:0,id:0};var Rt=0,Bt=[],Ft=0,Nt=0,Mt=0;function Lt(e,t,n,r){var o=pt,i=Object.create(o);i.parent=o,i.ref=0,i.global=!1,i.id=++Mt;var a=dt.env;i.env=rt?{Promise:gt,PromiseProp:{value:gt,configurable:!0,writable:!0},all:gt.all,race:gt.race,allSettled:gt.allSettled,any:gt.any,resolve:gt.resolve,reject:gt.reject,nthen:Xt(a.nthen,i),gthen:Xt(a.gthen,i)}:{},t&&z(i,t),++o.ref,i.finalize=function(){--this.parent.ref||this.parent.finalize()};var s=Gt(i,e,n,r);return 0===i.ref&&i.finalize(),s}function qt(){return Tt.id||(Tt.id=++Rt),++Tt.awaits,Tt.echoes+=100,Tt.id}function Ut(){return!!Tt.awaits&&(0==--Tt.awaits&&(Tt.id=0),Tt.echoes=100*Tt.awaits,!0)}function $t(e){return Tt.echoes&&e&&e.constructor===nt?(qt(),e.then((e=>(Ut(),e)),(e=>(Ut(),Zt(e))))):e}function Wt(e){++Nt,Tt.echoes&&0!=--Tt.echoes||(Tt.echoes=Tt.id=0),Bt.push(pt),Ht(e,!0)}function zt(){var e=Bt[Bt.length-1];Bt.pop(),Ht(e,!1)}function Ht(e,t){var n=pt;if((t?!Tt.echoes||Ft++&&e===pt:!Ft||--Ft&&e===pt)||Qt(t?Wt.bind(null,e):zt),e!==pt&&(pt=e,n===dt&&(dt.env=Vt()),rt)){var r=dt.env.Promise,o=e.env;Ze.then=o.nthen,r.prototype.then=o.gthen,(n.global||e.global)&&(Object.defineProperty(U,"Promise",o.PromiseProp),r.all=o.all,r.race=o.race,r.resolve=o.resolve,r.reject=o.reject,o.allSettled&&(r.allSettled=o.allSettled),o.any&&(r.any=o.any))}}function Vt(){var e=U.Promise;return rt?{Promise:e,PromiseProp:Object.getOwnPropertyDescriptor(U,"Promise"),all:e.all,race:e.race,allSettled:e.allSettled,any:e.any,resolve:e.resolve,reject:e.reject,nthen:Ze.then,gthen:e.prototype.then}:{}}function Gt(e,t,n,r,o){var i=pt;try{return Ht(e,!0),t(n,r,o)}finally{Ht(i,!1)}}function Qt(e){tt.call(Je,e)}function Yt(e,t,n,r){return"function"!=typeof e?e:function(){var o=pt;n&&qt(),Ht(t,!0);try{return e.apply(this,arguments)}finally{Ht(o,!1),r&&Qt(Ut)}}}function Xt(e,t){return function(n,r){return e.call(this,Yt(n,t),Yt(r,t))}}function Jt(e,t){var n;try{n=t.onuncatched(e)}catch(e){}if(!1!==n)try{var r,o={promise:t,reason:e};if(U.document&&document.createEvent?((r=document.createEvent("Event")).initEvent("unhandledrejection",!0,!0),z(r,o)):U.CustomEvent&&z(r=new CustomEvent("unhandledrejection",{detail:o}),o),r&&U.dispatchEvent&&(dispatchEvent(r),!U.PromiseRejectionEvent&&U.onunhandledrejection))try{U.onunhandledrejection(r)}catch(e){}Se&&r&&!r.defaultPrevented&&console.warn(`Unhandled rejection: ${e.stack||e}`)}catch(e){}}-1===(""+tt).indexOf("[native code]")&&(qt=Ut=Ue);var Zt=gt.reject;function en(e,t,n,r){if(e.idbdb&&(e._state.openComplete||pt.letThrough||e._vip)){var o=e._createTransaction(t,n,e._dbSchema);try{o.create(),e._state.PR1398_maxLoop=3}catch(o){return o.name===Fe.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),e._close(),e.open().then((()=>en(e,t,n,r)))):Zt(o)}return o._promise(t,((e,t)=>Lt((()=>(pt.trans=o,r(e,t,o)))))).then((e=>o._completion.then((()=>e))))}if(e._state.openComplete)return Zt(new Me.DatabaseClosed(e._state.dbOpenError));if(!e._state.isBeingOpened){if(!e._options.autoOpen)return Zt(new Me.DatabaseClosed);e.open().catch(Ue)}return e._state.dbReadyPromise.then((()=>en(e,t,n,r)))}const tn=String.fromCharCode(65535),nn="Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",rn=[],on="undefined"!=typeof navigator&&/(MSIE|Trident|Edge)/.test(navigator.userAgent),an=on,sn=on,un=e=>!/(dexie\.js|dexie\.min\.js)/.test(e);function cn(e,t){return e?t?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:e:t}const ln={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function hn(e){return"string"!=typeof e||/\./.test(e)?e=>e:t=>(void 0===t[e]&&e in t&&delete(t=ye(t))[e],t)}class fn{_trans(e,t,n){const r=this._tx||pt.trans,o=this.name;function i(e,n,r){if(!r.schema[o])throw new Me.NotFound("Table "+o+" not part of transaction");return t(r.idbtrans,r)}const a=At();try{return r&&r.db===this.db?r===pt.trans?r._promise(e,i,n):Lt((()=>r._promise(e,i,n)),{trans:r,transless:pt.transless||pt}):en(this.db,e,[this.name],i)}finally{a&&Ct()}}get(e,t){return e&&e.constructor===Object?this.where(e).first(t):this._trans("readonly",(t=>this.core.get({trans:t,key:e}).then((e=>this.hook.reading.fire(e))))).then(t)}where(e){if("string"==typeof e)return new this.db.WhereClause(this,e);if(W(e))return new this.db.WhereClause(this,`[${e.join("+")}]`);const t=$(e);if(1===t.length)return this.where(t[0]).equals(e[t[0]]);const n=this.schema.indexes.concat(this.schema.primKey).filter((e=>e.compound&&t.every((t=>e.keyPath.indexOf(t)>=0))&&e.keyPath.every((e=>t.indexOf(e)>=0))))[0];if(n&&this.db._maxKey!==tn)return this.where(n.name).equals(n.keyPath.map((t=>e[t])));!n&&Se&&console.warn(`The query ${JSON.stringify(e)} on ${this.name} would benefit of a compound index [${t.join("+")}]`);const{idxByName:r}=this.schema,o=this.db._deps.indexedDB;function i(e,t){try{return 0===o.cmp(e,t)}catch(e){return!1}}const[a,s]=t.reduce((([t,n],o)=>{const a=r[o],s=e[o];return[t||a,t||!a?cn(n,a&&a.multi?e=>{const t=se(e,o);return W(t)&&t.some((e=>i(s,e)))}:e=>i(s,se(e,o))):n]}),[null,null]);return a?this.where(a.name).equals(e[a.keyPath]).filter(s):n?this.filter(s):this.where(t).equals("")}filter(e){return this.toCollection().and(e)}count(e){return this.toCollection().count(e)}offset(e){return this.toCollection().offset(e)}limit(e){return this.toCollection().limit(e)}each(e){return this.toCollection().each(e)}toArray(e){return this.toCollection().toArray(e)}toCollection(){return new this.db.Collection(new this.db.WhereClause(this))}orderBy(e){return new this.db.Collection(new this.db.WhereClause(this,W(e)?`[${e.join("+")}]`:e))}reverse(){return this.toCollection().reverse()}mapToClass(e){this.schema.mappedClass=e;const t=t=>{if(!t)return t;const n=Object.create(e.prototype);for(var r in t)if(G(t,r))try{n[r]=t[r]}catch(e){}return n};return this.schema.readHook&&this.hook.reading.unsubscribe(this.schema.readHook),this.schema.readHook=t,this.hook("reading",t),e}defineClass(){return this.mapToClass((function(e){z(this,e)}))}add(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let o=e;return r&&n&&(o=hn(r)(e)),this._trans("readwrite",(e=>this.core.mutate({trans:e,type:"add",keys:null!=t?[t]:null,values:[o]}))).then((e=>e.numFailures?gt.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{ue(e,r,t)}catch(e){}return t}))}update(e,t){if("object"!=typeof e||W(e))return this.where(":id").equals(e).modify(t);{const n=se(e,this.schema.primKey.keyPath);if(void 0===n)return Zt(new Me.InvalidArgument("Given object does not contain its primary key"));try{"function"!=typeof t?$(t).forEach((n=>{ue(e,n,t[n])})):t(e,{value:e,primKey:n})}catch(e){}return this.where(":id").equals(n).modify(t)}}put(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let o=e;return r&&n&&(o=hn(r)(e)),this._trans("readwrite",(e=>this.core.mutate({trans:e,type:"put",values:[o],keys:null!=t?[t]:null}))).then((e=>e.numFailures?gt.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{ue(e,r,t)}catch(e){}return t}))}delete(e){return this._trans("readwrite",(t=>this.core.mutate({trans:t,type:"delete",keys:[e]}))).then((e=>e.numFailures?gt.reject(e.failures[0]):void 0))}clear(){return this._trans("readwrite",(e=>this.core.mutate({trans:e,type:"deleteRange",range:ln}))).then((e=>e.numFailures?gt.reject(e.failures[0]):void 0))}bulkGet(e){return this._trans("readonly",(t=>this.core.getMany({keys:e,trans:t}).then((e=>e.map((e=>this.hook.reading.fire(e)))))))}bulkAdd(e,t,n){const r=Array.isArray(t)?t:void 0,o=(n=n||(r?void 0:t))?n.allKeys:void 0;return this._trans("readwrite",(t=>{const{auto:n,keyPath:i}=this.schema.primKey;if(i&&r)throw new Me.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");if(r&&r.length!==e.length)throw new Me.InvalidArgument("Arguments objects and keys must have the same length");const a=e.length;let s=i&&n?e.map(hn(i)):e;return this.core.mutate({trans:t,type:"add",keys:r,values:s,wantResults:o}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return o?t:n;throw new Be(`${this.name}.bulkAdd(): ${e} of ${a} operations failed`,r)}))}))}bulkPut(e,t,n){const r=Array.isArray(t)?t:void 0,o=(n=n||(r?void 0:t))?n.allKeys:void 0;return this._trans("readwrite",(t=>{const{auto:n,keyPath:i}=this.schema.primKey;if(i&&r)throw new Me.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");if(r&&r.length!==e.length)throw new Me.InvalidArgument("Arguments objects and keys must have the same length");const a=e.length;let s=i&&n?e.map(hn(i)):e;return this.core.mutate({trans:t,type:"put",keys:r,values:s,wantResults:o}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return o?t:n;throw new Be(`${this.name}.bulkPut(): ${e} of ${a} operations failed`,r)}))}))}bulkDelete(e){const t=e.length;return this._trans("readwrite",(t=>this.core.mutate({trans:t,type:"delete",keys:e}))).then((({numFailures:e,lastResult:n,failures:r})=>{if(0===e)return n;throw new Be(`${this.name}.bulkDelete(): ${e} of ${t} operations failed`,r)}))}}function dn(e){var t={},n=function(n,r){if(r){for(var o=arguments.length,i=new Array(o-1);--o;)i[o-1]=arguments[o];return t[n].subscribe.apply(null,i),e}if("string"==typeof n)return t[n]};n.addEventType=i;for(var r=1,o=arguments.length;r<o;++r)i(arguments[r]);return n;function i(e,r,o){if("object"==typeof e)return a(e);r||(r=Qe),o||(o=Ue);var i={subscribers:[],fire:o,subscribe:function(e){-1===i.subscribers.indexOf(e)&&(i.subscribers.push(e),i.fire=r(i.fire,e))},unsubscribe:function(e){i.subscribers=i.subscribers.filter((function(t){return t!==e})),i.fire=i.subscribers.reduce(r,o)}};return t[e]=n[e]=i,i}function a(e){$(e).forEach((function(t){var n=e[t];if(W(n))i(t,e[t][0],e[t][1]);else{if("asap"!==n)throw new Me.InvalidArgument("Invalid event config");var r=i(t,$e,(function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];r.subscribers.forEach((function(e){ie((function(){e.apply(null,t)}))}))}))}}))}}function pn(e,t){return J(t).from({prototype:e}),t}function yn(e,t){return!(e.filter||e.algorithm||e.or)&&(t?e.justLimit:!e.replayFilter)}function mn(e,t){e.filter=cn(e.filter,t)}function vn(e,t,n){var r=e.replayFilter;e.replayFilter=r?()=>cn(r(),t()):t,e.justLimit=n&&!r}function gn(e,t){if(e.isPrimKey)return t.primaryKey;const n=t.getIndexByKeyPath(e.index);if(!n)throw new Me.Schema("KeyPath "+e.index+" on object store "+t.name+" is not indexed");return n}function bn(e,t,n){const r=gn(e,t.schema);return t.openCursor({trans:n,values:!e.keysOnly,reverse:"prev"===e.dir,unique:!!e.unique,query:{index:r,range:e.range}})}function wn(e,t,n,r){const o=e.replayFilter?cn(e.filter,e.replayFilter()):e.filter;if(e.or){const i={},a=(e,n,r)=>{if(!o||o(n,r,(e=>n.stop(e)),(e=>n.fail(e)))){var a=n.primaryKey,s=""+a;"[object ArrayBuffer]"===s&&(s=""+new Uint8Array(a)),G(i,s)||(i[s]=!0,t(e,n,r))}};return Promise.all([e.or._iterate(a,n),_n(bn(e,r,n),e.algorithm,a,!e.keysOnly&&e.valueMapper)])}return _n(bn(e,r,n),cn(e.algorithm,o),t,!e.keysOnly&&e.valueMapper)}function _n(e,t,n,r){var o=Dt(r?(e,t,o)=>n(r(e),t,o):n);return e.then((e=>{if(e)return e.start((()=>{var n=()=>e.continue();t&&!t(e,(e=>n=e),(t=>{e.stop(t),n=Ue}),(t=>{e.fail(t),n=Ue}))||o(e.value,e,(e=>n=e)),n()}))}))}function xn(e,t){try{const n=kn(e),r=kn(t);if(n!==r)return"Array"===n?1:"Array"===r?-1:"binary"===n?1:"binary"===r?-1:"string"===n?1:"string"===r?-1:"Date"===n?1:"Date"!==r?NaN:-1;switch(n){case"number":case"Date":case"string":return e>t?1:e<t?-1:0;case"binary":return function(e,t){const n=e.length,r=t.length,o=n<r?n:r;for(let n=0;n<o;++n)if(e[n]!==t[n])return e[n]<t[n]?-1:1;return n===r?0:n<r?-1:1}(Sn(e),Sn(t));case"Array":return function(e,t){const n=e.length,r=t.length,o=n<r?n:r;for(let n=0;n<o;++n){const r=xn(e[n],t[n]);if(0!==r)return r}return n===r?0:n<r?-1:1}(e,t)}}catch(e){}return NaN}function kn(e){const t=typeof e;if("object"!==t)return t;if(ArrayBuffer.isView(e))return"binary";const n=ge(e);return"ArrayBuffer"===n?"binary":n}function Sn(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e)}class En{_read(e,t){var n=this._ctx;return n.error?n.table._trans(null,Zt.bind(null,n.error)):n.table._trans("readonly",e).then(t)}_write(e){var t=this._ctx;return t.error?t.table._trans(null,Zt.bind(null,t.error)):t.table._trans("readwrite",e,"locked")}_addAlgorithm(e){var t=this._ctx;t.algorithm=cn(t.algorithm,e)}_iterate(e,t){return wn(this._ctx,e,t,this._ctx.table.core)}clone(e){var t=Object.create(this.constructor.prototype),n=Object.create(this._ctx);return e&&z(n,e),t._ctx=n,t}raw(){return this._ctx.valueMapper=null,this}each(e){var t=this._ctx;return this._read((n=>wn(t,e,n,t.table.core)))}count(e){return this._read((e=>{const t=this._ctx,n=t.table.core;if(yn(t,!0))return n.count({trans:e,query:{index:gn(t,n.schema),range:t.range}}).then((e=>Math.min(e,t.limit)));var r=0;return wn(t,(()=>(++r,!1)),e,n).then((()=>r))})).then(e)}sortBy(e,t){const n=e.split(".").reverse(),r=n[0],o=n.length-1;function i(e,t){return t?i(e[n[t]],t-1):e[r]}var a="next"===this._ctx.dir?1:-1;function s(e,t){var n=i(e,o),r=i(t,o);return n<r?-a:n>r?a:0}return this.toArray((function(e){return e.sort(s)})).then(t)}toArray(e){return this._read((e=>{var t=this._ctx;if("next"===t.dir&&yn(t,!0)&&t.limit>0){const{valueMapper:n}=t,r=gn(t,t.table.core.schema);return t.table.core.query({trans:e,limit:t.limit,values:!0,query:{index:r,range:t.range}}).then((({result:e})=>n?e.map(n):e))}{const n=[];return wn(t,(e=>n.push(e)),e,t.table.core).then((()=>n))}}),e)}offset(e){var t=this._ctx;return e<=0||(t.offset+=e,yn(t)?vn(t,(()=>{var t=e;return(e,n)=>0===t||(1===t?(--t,!1):(n((()=>{e.advance(t),t=0})),!1))})):vn(t,(()=>{var t=e;return()=>--t<0}))),this}limit(e){return this._ctx.limit=Math.min(this._ctx.limit,e),vn(this._ctx,(()=>{var t=e;return function(e,n,r){return--t<=0&&n(r),t>=0}}),!0),this}until(e,t){return mn(this._ctx,(function(n,r,o){return!e(n.value)||(r(o),t)})),this}first(e){return this.limit(1).toArray((function(e){return e[0]})).then(e)}last(e){return this.reverse().first(e)}filter(e){var t,n;return mn(this._ctx,(function(t){return e(t.value)})),t=this._ctx,n=e,t.isMatch=cn(t.isMatch,n),this}and(e){return this.filter(e)}or(e){return new this.db.WhereClause(this._ctx.table,e,this)}reverse(){return this._ctx.dir="prev"===this._ctx.dir?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this}desc(){return this.reverse()}eachKey(e){var t=this._ctx;return t.keysOnly=!t.isMatch,this.each((function(t,n){e(n.key,n)}))}eachUniqueKey(e){return this._ctx.unique="unique",this.eachKey(e)}eachPrimaryKey(e){var t=this._ctx;return t.keysOnly=!t.isMatch,this.each((function(t,n){e(n.primaryKey,n)}))}keys(e){var t=this._ctx;t.keysOnly=!t.isMatch;var n=[];return this.each((function(e,t){n.push(t.key)})).then((function(){return n})).then(e)}primaryKeys(e){var t=this._ctx;if("next"===t.dir&&yn(t,!0)&&t.limit>0)return this._read((e=>{var n=gn(t,t.table.core.schema);return t.table.core.query({trans:e,values:!1,limit:t.limit,query:{index:n,range:t.range}})})).then((({result:e})=>e)).then(e);t.keysOnly=!t.isMatch;var n=[];return this.each((function(e,t){n.push(t.primaryKey)})).then((function(){return n})).then(e)}uniqueKeys(e){return this._ctx.unique="unique",this.keys(e)}firstKey(e){return this.limit(1).keys((function(e){return e[0]})).then(e)}lastKey(e){return this.reverse().firstKey(e)}distinct(){var e=this._ctx,t=e.index&&e.table.schema.idxByName[e.index];if(!t||!t.multi)return this;var n={};return mn(this._ctx,(function(e){var t=e.primaryKey.toString(),r=G(n,t);return n[t]=!0,!r})),this}modify(e){var t=this._ctx;return this._write((n=>{var r;if("function"==typeof e)r=e;else{var o=$(e),i=o.length;r=function(t){for(var n=!1,r=0;r<i;++r){var a=o[r],s=e[a];se(t,a)!==s&&(ue(t,a,s),n=!0)}return n}}const a=t.table.core,{outbound:s,extractKey:u}=a.schema.primaryKey,c=this.db._options.modifyChunkSize||200,l=[];let h=0;const f=[],d=(e,t)=>{const{failures:n,numFailures:r}=t;h+=e-r;for(let e of $(n))l.push(n[e])};return this.clone().primaryKeys().then((o=>{const i=l=>{const h=Math.min(c,o.length-l);return a.getMany({trans:n,keys:o.slice(l,l+h),cache:"immutable"}).then((f=>{const p=[],y=[],m=s?[]:null,v=[];for(let e=0;e<h;++e){const t=f[e],n={value:ye(t),primKey:o[l+e]};!1!==r.call(n,n.value,n)&&(null==n.value?v.push(o[l+e]):s||0===xn(u(t),u(n.value))?(y.push(n.value),s&&m.push(o[l+e])):(v.push(o[l+e]),p.push(n.value)))}const g=yn(t)&&t.limit===1/0&&("function"!=typeof e||e===On)&&{index:t.index,range:t.range};return Promise.resolve(p.length>0&&a.mutate({trans:n,type:"add",values:p}).then((e=>{for(let t in e.failures)v.splice(parseInt(t),1);d(p.length,e)}))).then((()=>(y.length>0||g&&"object"==typeof e)&&a.mutate({trans:n,type:"put",keys:m,values:y,criteria:g,changeSpec:"function"!=typeof e&&e}).then((e=>d(y.length,e))))).then((()=>(v.length>0||g&&e===On)&&a.mutate({trans:n,type:"delete",keys:v,criteria:g}).then((e=>d(v.length,e))))).then((()=>o.length>l+h&&i(l+c)))}))};return i(0).then((()=>{if(l.length>0)throw new Re("Error modifying one or more objects",l,h,f);return o.length}))}))}))}delete(){var e=this._ctx,t=e.range;return yn(e)&&(e.isPrimKey&&!sn||3===t.type)?this._write((n=>{const{primaryKey:r}=e.table.core.schema,o=t;return e.table.core.count({trans:n,query:{index:r,range:o}}).then((t=>e.table.core.mutate({trans:n,type:"deleteRange",range:o}).then((({failures:e,lastResult:n,results:r,numFailures:o})=>{if(o)throw new Re("Could not delete some values",Object.keys(e).map((t=>e[t])),t-o);return t-o}))))})):this.modify(On)}}const On=(e,t)=>t.value=null;function Pn(e,t){return e<t?-1:e===t?0:1}function jn(e,t){return e>t?-1:e===t?0:1}function An(e,t,n){var r=e instanceof Rn?new e.Collection(e):e;return r._ctx.error=n?new n(t):new TypeError(t),r}function Cn(e){return new e.Collection(e,(()=>Tn(""))).limit(0)}function In(e,t,n,r,o,i){for(var a=Math.min(e.length,r.length),s=-1,u=0;u<a;++u){var c=t[u];if(c!==r[u])return o(e[u],n[u])<0?e.substr(0,u)+n[u]+n.substr(u+1):o(e[u],r[u])<0?e.substr(0,u)+r[u]+n.substr(u+1):s>=0?e.substr(0,s)+t[s]+n.substr(s+1):null;o(e[u],c)<0&&(s=u)}return a<r.length&&"next"===i?e+n.substr(e.length):a<e.length&&"prev"===i?e.substr(0,n.length):s<0?null:e.substr(0,s)+r[s]+n.substr(s+1)}function Kn(e,t,n,r){var o,i,a,s,u,c,l,h=n.length;if(!n.every((e=>"string"==typeof e)))return An(e,"String expected.");function f(e){o=function(e){return"next"===e?e=>e.toUpperCase():e=>e.toLowerCase()}(e),i=function(e){return"next"===e?e=>e.toLowerCase():e=>e.toUpperCase()}(e),a="next"===e?Pn:jn;var t=n.map((function(e){return{lower:i(e),upper:o(e)}})).sort((function(e,t){return a(e.lower,t.lower)}));s=t.map((function(e){return e.upper})),u=t.map((function(e){return e.lower})),c=e,l="next"===e?"":r}f("next");var d=new e.Collection(e,(()=>Dn(s[0],u[h-1]+r)));d._ondirectionchange=function(e){f(e)};var p=0;return d._addAlgorithm((function(e,n,r){var o=e.key;if("string"!=typeof o)return!1;var f=i(o);if(t(f,u,p))return!0;for(var d=null,y=p;y<h;++y){var m=In(o,f,s[y],u[y],a,c);null===m&&null===d?p=y+1:(null===d||a(d,m)>0)&&(d=m)}return n(null!==d?function(){e.continue(d+l)}:r),!1})),d}function Dn(e,t,n,r){return{type:2,lower:e,upper:t,lowerOpen:n,upperOpen:r}}function Tn(e){return{type:1,lower:e,upper:e}}class Rn{get Collection(){return this._ctx.table.db.Collection}between(e,t,n,r){n=!1!==n,r=!0===r;try{return this._cmp(e,t)>0||0===this._cmp(e,t)&&(n||r)&&(!n||!r)?Cn(this):new this.Collection(this,(()=>Dn(e,t,!n,!r)))}catch(e){return An(this,nn)}}equals(e){return null==e?An(this,nn):new this.Collection(this,(()=>Tn(e)))}above(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(e,void 0,!0)))}aboveOrEqual(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(e,void 0,!1)))}below(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(void 0,e,!1,!0)))}belowOrEqual(e){return null==e?An(this,nn):new this.Collection(this,(()=>Dn(void 0,e)))}startsWith(e){return"string"!=typeof e?An(this,"String expected."):this.between(e,e+tn,!0,!0)}startsWithIgnoreCase(e){return""===e?this.startsWith(e):Kn(this,((e,t)=>0===e.indexOf(t[0])),[e],tn)}equalsIgnoreCase(e){return Kn(this,((e,t)=>e===t[0]),[e],"")}anyOfIgnoreCase(){var e=xe.apply(_e,arguments);return 0===e.length?Cn(this):Kn(this,((e,t)=>-1!==t.indexOf(e)),e,"")}startsWithAnyOfIgnoreCase(){var e=xe.apply(_e,arguments);return 0===e.length?Cn(this):Kn(this,((e,t)=>t.some((t=>0===e.indexOf(t)))),e,tn)}anyOf(){const e=xe.apply(_e,arguments);let t=this._cmp;try{e.sort(t)}catch(e){return An(this,nn)}if(0===e.length)return Cn(this);const n=new this.Collection(this,(()=>Dn(e[0],e[e.length-1])));n._ondirectionchange=n=>{t="next"===n?this._ascending:this._descending,e.sort(t)};let r=0;return n._addAlgorithm(((n,o,i)=>{const a=n.key;for(;t(a,e[r])>0;)if(++r,r===e.length)return o(i),!1;return 0===t(a,e[r])||(o((()=>{n.continue(e[r])})),!1)})),n}notEqual(e){return this.inAnyRange([[-1/0,e],[e,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})}noneOf(){const e=xe.apply(_e,arguments);if(0===e.length)return new this.Collection(this);try{e.sort(this._ascending)}catch(e){return An(this,nn)}const t=e.reduce(((e,t)=>e?e.concat([[e[e.length-1][1],t]]):[[-1/0,t]]),null);return t.push([e[e.length-1],this.db._maxKey]),this.inAnyRange(t,{includeLowers:!1,includeUppers:!1})}inAnyRange(e,t){const n=this._cmp,r=this._ascending,o=this._descending,i=this._min,a=this._max;if(0===e.length)return Cn(this);if(!e.every((e=>void 0!==e[0]&&void 0!==e[1]&&r(e[0],e[1])<=0)))return An(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",Me.InvalidArgument);const s=!t||!1!==t.includeLowers,u=t&&!0===t.includeUppers;let c,l=r;function h(e,t){return l(e[0],t[0])}try{c=e.reduce((function(e,t){let r=0,o=e.length;for(;r<o;++r){const o=e[r];if(n(t[0],o[1])<0&&n(t[1],o[0])>0){o[0]=i(o[0],t[0]),o[1]=a(o[1],t[1]);break}}return r===o&&e.push(t),e}),[]),c.sort(h)}catch(e){return An(this,nn)}let f=0;const d=u?e=>r(e,c[f][1])>0:e=>r(e,c[f][1])>=0,p=s?e=>o(e,c[f][0])>0:e=>o(e,c[f][0])>=0;let y=d;const m=new this.Collection(this,(()=>Dn(c[0][0],c[c.length-1][1],!s,!u)));return m._ondirectionchange=e=>{"next"===e?(y=d,l=r):(y=p,l=o),c.sort(h)},m._addAlgorithm(((e,t,n)=>{for(var o=e.key;y(o);)if(++f,f===c.length)return t(n),!1;return!!function(e){return!d(e)&&!p(e)}(o)||(0===this._cmp(o,c[f][1])||0===this._cmp(o,c[f][0])||t((()=>{l===r?e.continue(c[f][0]):e.continue(c[f][1])})),!1)})),m}startsWithAnyOf(){const e=xe.apply(_e,arguments);return e.every((e=>"string"==typeof e))?0===e.length?Cn(this):this.inAnyRange(e.map((e=>[e,e+tn]))):An(this,"startsWithAnyOf() only works with strings")}}function Bn(e){return Dt((function(t){return Fn(t),e(t.target.error),!1}))}function Fn(e){e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault()}const Nn=dn(null,"storagemutated");class Mn{_lock(){return oe(!pt.global),++this._reculock,1!==this._reculock||pt.global||(pt.lockOwnerFor=this),this}_unlock(){if(oe(!pt.global),0==--this._reculock)for(pt.global||(pt.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var e=this._blockedFuncs.shift();try{Gt(e[1],e[0])}catch(e){}}return this}_locked(){return this._reculock&&pt.lockOwnerFor!==this}create(e){if(!this.mode)return this;const t=this.db.idbdb,n=this.db._state.dbOpenError;if(oe(!this.idbtrans),!e&&!t)switch(n&&n.name){case"DatabaseClosedError":throw new Me.DatabaseClosed(n);case"MissingAPIError":throw new Me.MissingAPI(n.message,n);default:throw new Me.OpenFailed(n)}if(!this.active)throw new Me.TransactionInactive;return oe(null===this._completion._state),(e=this.idbtrans=e||(this.db.core?this.db.core.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}):t.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}))).onerror=Dt((t=>{Fn(t),this._reject(e.error)})),e.onabort=Dt((t=>{Fn(t),this.active&&this._reject(new Me.Abort(e.error)),this.active=!1,this.on("abort").fire(t)})),e.oncomplete=Dt((()=>{this.active=!1,this._resolve(),"mutatedParts"in e&&Nn.storagemutated.fire(e.mutatedParts)})),this}_promise(e,t,n){if("readwrite"===e&&"readwrite"!==this.mode)return Zt(new Me.ReadOnly("Transaction is readonly"));if(!this.active)return Zt(new Me.TransactionInactive);if(this._locked())return new gt(((r,o)=>{this._blockedFuncs.push([()=>{this._promise(e,t,n).then(r,o)},pt])}));if(n)return Lt((()=>{var e=new gt(((e,n)=>{this._lock();const r=t(e,n,this);r&&r.then&&r.then(e,n)}));return e.finally((()=>this._unlock())),e._lib=!0,e}));var r=new gt(((e,n)=>{var r=t(e,n,this);r&&r.then&&r.then(e,n)}));return r._lib=!0,r}_root(){return this.parent?this.parent._root():this}waitFor(e){var t=this._root();const n=gt.resolve(e);if(t._waitingFor)t._waitingFor=t._waitingFor.then((()=>n));else{t._waitingFor=n,t._waitingQueue=[];var r=t.idbtrans.objectStore(t.storeNames[0]);!function e(){for(++t._spinCount;t._waitingQueue.length;)t._waitingQueue.shift()();t._waitingFor&&(r.get(-1/0).onsuccess=e)}()}var o=t._waitingFor;return new gt(((e,r)=>{n.then((n=>t._waitingQueue.push(Dt(e.bind(null,n)))),(e=>t._waitingQueue.push(Dt(r.bind(null,e))))).finally((()=>{t._waitingFor===o&&(t._waitingFor=null)}))}))}abort(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new Me.Abort))}table(e){const t=this._memoizedTables||(this._memoizedTables={});if(G(t,e))return t[e];const n=this.schema[e];if(!n)throw new Me.NotFound("Table "+e+" not part of transaction");const r=new this.db.Table(e,n,this);return r.core=this.db.core.table(e),t[e]=r,r}}function Ln(e,t,n,r,o,i,a){return{name:e,keyPath:t,unique:n,multi:r,auto:o,compound:i,src:(n&&!a?"&":"")+(r?"*":"")+(o?"++":"")+qn(t)}}function qn(e){return"string"==typeof e?e:e?"["+[].join.call(e,"+")+"]":""}function Un(e,t,n){return{name:e,primKey:t,indexes:n,mappedClass:null,idxByName:ae(n,(e=>[e.name,e]))}}let $n=e=>{try{return e.only([[]]),$n=()=>[[]],[[]]}catch(e){return $n=()=>tn,tn}};function Wn(e){return null==e?()=>{}:"string"==typeof e?function(e){return 1===e.split(".").length?t=>t[e]:t=>se(t,e)}(e):t=>se(t,e)}function zn(e){return[].slice.call(e)}let Hn=0;function Vn(e){return null==e?":id":"string"==typeof e?e:`[${e.join("+")}]`}function Gn({_novip:e},t){const n=t.db,r=function(e,t,{IDBKeyRange:n,indexedDB:r},o){const i=function(e,t){return t.reduce(((e,{create:t})=>({...e,...t(e)})),e)}(function(e,t,n){function r(e){if(3===e.type)return null;if(4===e.type)throw new Error("Cannot convert never type to IDBKeyRange");const{lower:n,upper:r,lowerOpen:o,upperOpen:i}=e;return void 0===n?void 0===r?null:t.upperBound(r,!!i):void 0===r?t.lowerBound(n,!!o):t.bound(n,r,!!o,!!i)}const{schema:o,hasGetAll:i}=function(e,t){const n=zn(e.objectStoreNames);return{schema:{name:e.name,tables:n.map((e=>t.objectStore(e))).map((e=>{const{keyPath:t,autoIncrement:n}=e,r=W(t),o=null==t,i={},a={name:e.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:o,compound:r,keyPath:t,autoIncrement:n,unique:!0,extractKey:Wn(t)},indexes:zn(e.indexNames).map((t=>e.index(t))).map((e=>{const{name:t,unique:n,multiEntry:r,keyPath:o}=e,a={name:t,compound:W(o),keyPath:o,unique:n,multiEntry:r,extractKey:Wn(o)};return i[Vn(o)]=a,a})),getIndexByKeyPath:e=>i[Vn(e)]};return i[":id"]=a.primaryKey,null!=t&&(i[Vn(t)]=a.primaryKey),a}))},hasGetAll:n.length>0&&"getAll"in t.objectStore(n[0])&&!("undefined"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604)}}(e,n),a=o.tables.map((e=>function(e){const t=e.name;return{name:t,schema:e,mutate:function({trans:e,type:n,keys:o,values:i,range:a}){return new Promise(((s,u)=>{s=Dt(s);const c=e.objectStore(t),l=null==c.keyPath,h="put"===n||"add"===n;if(!h&&"delete"!==n&&"deleteRange"!==n)throw new Error("Invalid operation type: "+n);const{length:f}=o||i||{length:1};if(o&&i&&o.length!==i.length)throw new Error("Given keys array must have same length as given values array.");if(0===f)return s({numFailures:0,failures:{},results:[],lastResult:void 0});let d;const p=[],y=[];let m=0;const v=e=>{++m,Fn(e)};if("deleteRange"===n){if(4===a.type)return s({numFailures:m,failures:y,results:[],lastResult:void 0});3===a.type?p.push(d=c.clear()):p.push(d=c.delete(r(a)))}else{const[e,t]=h?l?[i,o]:[i,null]:[o,null];if(h)for(let r=0;r<f;++r)p.push(d=t&&void 0!==t[r]?c[n](e[r],t[r]):c[n](e[r])),d.onerror=v;else for(let t=0;t<f;++t)p.push(d=c[n](e[t])),d.onerror=v}const g=e=>{const t=e.target.result;p.forEach(((e,t)=>null!=e.error&&(y[t]=e.error))),s({numFailures:m,failures:y,results:"delete"===n?o:p.map((e=>e.result)),lastResult:t})};d.onerror=e=>{v(e),g(e)},d.onsuccess=g}))},getMany:({trans:e,keys:n})=>new Promise(((r,o)=>{r=Dt(r);const i=e.objectStore(t),a=n.length,s=new Array(a);let u,c=0,l=0;const h=e=>{const t=e.target;s[t._pos]=t.result,++l===c&&r(s)},f=Bn(o);for(let e=0;e<a;++e)null!=n[e]&&(u=i.get(n[e]),u._pos=e,u.onsuccess=h,u.onerror=f,++c);0===c&&r(s)})),get:({trans:e,key:n})=>new Promise(((r,o)=>{r=Dt(r);const i=e.objectStore(t).get(n);i.onsuccess=e=>r(e.target.result),i.onerror=Bn(o)})),query:function(e){return n=>new Promise(((o,i)=>{o=Dt(o);const{trans:a,values:s,limit:u,query:c}=n,l=u===1/0?void 0:u,{index:h,range:f}=c,d=a.objectStore(t),p=h.isPrimaryKey?d:d.index(h.name),y=r(f);if(0===u)return o({result:[]});if(e){const e=s?p.getAll(y,l):p.getAllKeys(y,l);e.onsuccess=e=>o({result:e.target.result}),e.onerror=Bn(i)}else{let e=0;const t=s||!("openKeyCursor"in p)?p.openCursor(y):p.openKeyCursor(y),n=[];t.onsuccess=r=>{const i=t.result;return i?(n.push(s?i.value:i.primaryKey),++e===u?o({result:n}):void i.continue()):o({result:n})},t.onerror=Bn(i)}}))}(i),openCursor:function({trans:e,values:n,query:o,reverse:i,unique:a}){return new Promise(((s,u)=>{s=Dt(s);const{index:c,range:l}=o,h=e.objectStore(t),f=c.isPrimaryKey?h:h.index(c.name),d=i?a?"prevunique":"prev":a?"nextunique":"next",p=n||!("openKeyCursor"in f)?f.openCursor(r(l),d):f.openKeyCursor(r(l),d);p.onerror=Bn(u),p.onsuccess=Dt((t=>{const n=p.result;if(!n)return void s(null);n.___id=++Hn,n.done=!1;const r=n.continue.bind(n);let o=n.continuePrimaryKey;o&&(o=o.bind(n));const i=n.advance.bind(n),a=()=>{throw new Error("Cursor not stopped")};n.trans=e,n.stop=n.continue=n.continuePrimaryKey=n.advance=()=>{throw new Error("Cursor not started")},n.fail=Dt(u),n.next=function(){let e=1;return this.start((()=>e--?this.continue():this.stop())).then((()=>this))},n.start=e=>{const t=new Promise(((e,t)=>{e=Dt(e),p.onerror=Bn(t),n.fail=t,n.stop=t=>{n.stop=n.continue=n.continuePrimaryKey=n.advance=a,e(t)}})),s=()=>{if(p.result)try{e()}catch(e){n.fail(e)}else n.done=!0,n.start=()=>{throw new Error("Cursor behind last entry")},n.stop()};return p.onsuccess=Dt((e=>{p.onsuccess=s,s()})),n.continue=r,n.continuePrimaryKey=o,n.advance=i,s(),t},s(n)}),u)}))},count({query:e,trans:n}){const{index:o,range:i}=e;return new Promise(((e,a)=>{const s=n.objectStore(t),u=o.isPrimaryKey?s:s.index(o.name),c=r(i),l=c?u.count(c):u.count();l.onsuccess=Dt((t=>e(t.target.result))),l.onerror=Bn(a)}))}}}(e))),s={};return a.forEach((e=>s[e.name]=e)),{stack:"dbcore",transaction:e.transaction.bind(e),table(e){if(!s[e])throw new Error(`Table '${e}' not found`);return s[e]},MIN_KEY:-1/0,MAX_KEY:$n(t),schema:o}}(t,n,o),e.dbcore);return{dbcore:i}}(e._middlewares,n,e._deps,t);e.core=r.dbcore,e.tables.forEach((t=>{const n=t.name;e.core.schema.tables.some((e=>e.name===n))&&(t.core=e.core.table(n),e[n]instanceof e.Table&&(e[n].core=t.core))}))}function Qn({_novip:e},t,n,r){n.forEach((n=>{const o=r[n];t.forEach((t=>{const r=ee(t,n);(!r||"value"in r&&void 0===r.value)&&(t===e.Transaction.prototype||t instanceof e.Transaction?X(t,n,{get(){return this.table(n)},set(e){Y(this,n,{value:e,writable:!0,configurable:!0,enumerable:!0})}}):t[n]=new e.Table(n,o))}))}))}function Yn({_novip:e},t){t.forEach((t=>{for(let n in t)t[n]instanceof e.Table&&delete t[n]}))}function Xn(e,t){return e._cfg.version-t._cfg.version}function Jn(e,t){const n={del:[],add:[],change:[]};let r;for(r in e)t[r]||n.del.push(r);for(r in t){const o=e[r],i=t[r];if(o){const e={name:r,def:i,recreate:!1,del:[],add:[],change:[]};if(""+(o.primKey.keyPath||"")!=""+(i.primKey.keyPath||"")||o.primKey.auto!==i.primKey.auto&&!on)e.recreate=!0,n.change.push(e);else{const t=o.idxByName,r=i.idxByName;let a;for(a in t)r[a]||e.del.push(a);for(a in r){const n=t[a],o=r[a];n?n.src!==o.src&&e.change.push(o):e.add.push(o)}(e.del.length>0||e.add.length>0||e.change.length>0)&&n.change.push(e)}}else n.add.push([r,i])}return n}function Zn(e,t,n,r){const o=e.db.createObjectStore(t,n.keyPath?{keyPath:n.keyPath,autoIncrement:n.auto}:{autoIncrement:n.auto});return r.forEach((e=>er(o,e))),o}function er(e,t){e.createIndex(t.name,t.keyPath,{unique:t.unique,multiEntry:t.multi})}function tr(e,t,n){const r={};return ne(t.objectStoreNames,0).forEach((e=>{const t=n.objectStore(e);let o=t.keyPath;const i=Ln(qn(o),o||"",!1,!1,!!t.autoIncrement,o&&"string"!=typeof o,!0),a=[];for(let e=0;e<t.indexNames.length;++e){const n=t.index(t.indexNames[e]);o=n.keyPath;var s=Ln(n.name,o,!!n.unique,!!n.multiEntry,!1,o&&"string"!=typeof o,!1);a.push(s)}r[e]=Un(e,i,a)})),r}function nr({_novip:e},t,n){const r=n.db.objectStoreNames;for(let o=0;o<r.length;++o){const i=r[o],a=n.objectStore(i);e._hasGetAll="getAll"in a;for(let e=0;e<a.indexNames.length;++e){const n=a.indexNames[e],r=a.index(n).keyPath,o="string"==typeof r?r:"["+ne(r).join("+")+"]";if(t[i]){const e=t[i].idxByName[o];e&&(e.name=n,delete t[i].idxByName[o],t[i].idxByName[n]=e)}}}"undefined"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&U.WorkerGlobalScope&&U instanceof U.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604&&(e._hasGetAll=!1)}class rr{_parseStoresSpec(e,t){$(e).forEach((n=>{if(null!==e[n]){var r=e[n].split(",").map(((e,t)=>{const n=(e=e.trim()).replace(/([&*]|\+\+)/g,""),r=/^\[/.test(n)?n.match(/^\[(.*)\]$/)[1].split("+"):n;return Ln(n,r||null,/\&/.test(e),/\*/.test(e),/\+\+/.test(e),W(r),0===t)})),o=r.shift();if(o.multi)throw new Me.Schema("Primary key cannot be multi-valued");r.forEach((e=>{if(e.auto)throw new Me.Schema("Only primary key can be marked as autoIncrement (++)");if(!e.keyPath)throw new Me.Schema("Index must have a name and cannot be an empty string")})),t[n]=Un(n,o,r)}}))}stores(e){const t=this.db;this._cfg.storesSource=this._cfg.storesSource?z(this._cfg.storesSource,e):e;const n=t._versions,r={};let o={};return n.forEach((e=>{z(r,e._cfg.storesSource),o=e._cfg.dbschema={},e._parseStoresSpec(r,o)})),t._dbSchema=o,Yn(t,[t._allTables,t,t.Transaction.prototype]),Qn(t,[t._allTables,t,t.Transaction.prototype,this._cfg.tables],$(o),o),t._storeNames=$(o),this}upgrade(e){return this._cfg.contentUpgrade=Ye(this._cfg.contentUpgrade||Ue,e),this}}function or(e,t){let n=e._dbNamesDB;return n||(n=e._dbNamesDB=new Er("__dbnames",{addons:[],indexedDB:e,IDBKeyRange:t}),n.version(1).stores({dbnames:"name"})),n.table("dbnames")}function ir(e){return e&&"function"==typeof e.databases}function ar(e){return Lt((function(){return pt.letThrough=!0,e()}))}function sr(){var e;return!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise((function(t){var n=function(){return indexedDB.databases().finally(t)};e=setInterval(n,100),n()})).finally((function(){return clearInterval(e)})):Promise.resolve()}function ur(e){var t=t=>e.next(t),n=o(t),r=o((t=>e.throw(t)));function o(e){return t=>{var o=e(t),i=o.value;return o.done?i:i&&"function"==typeof i.then?i.then(n,r):W(i)?Promise.all(i).then(n,r):n(i)}}return o(t)()}function cr(e,t,n){var r=arguments.length;if(r<2)throw new Me.InvalidArgument("Too few arguments");for(var o=new Array(r-1);--r;)o[r-1]=arguments[r];n=o.pop();var i=he(o);return[e,i,n]}function lr(e,t,n,r,o){return gt.resolve().then((()=>{const i=pt.transless||pt,a=e._createTransaction(t,n,e._dbSchema,r),s={trans:a,transless:i};if(r)a.idbtrans=r.idbtrans;else try{a.create(),e._state.PR1398_maxLoop=3}catch(r){return r.name===Fe.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),e._close(),e.open().then((()=>lr(e,t,n,null,o)))):Zt(r)}const u=ke(o);let c;u&&qt();const l=gt.follow((()=>{if(c=o.call(a,a),c)if(u){var e=Ut.bind(null,null);c.then(e,e)}else"function"==typeof c.next&&"function"==typeof c.throw&&(c=ur(c))}),s);return(c&&"function"==typeof c.then?gt.resolve(c).then((e=>a.active?e:Zt(new Me.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn")))):l.then((()=>c))).then((e=>(r&&a._resolve(),a._completion.then((()=>e))))).catch((e=>(a._reject(e),Zt(e))))}))}function hr(e,t,n){const r=W(e)?e.slice():[e];for(let e=0;e<n;++e)r.push(t);return r}const fr={stack:"dbcore",name:"VirtualIndexMiddleware",level:1,create:function(e){return{...e,table(t){const n=e.table(t),{schema:r}=n,o={},i=[];function a(e,t,n){const r=Vn(e),s=o[r]=o[r]||[],u=null==e?0:"string"==typeof e?1:e.length,c=t>0,l={...n,isVirtual:c,keyTail:t,keyLength:u,extractKey:Wn(e),unique:!c&&n.unique};return s.push(l),l.isPrimaryKey||i.push(l),u>1&&a(2===u?e[0]:e.slice(0,u-1),t+1,n),s.sort(((e,t)=>e.keyTail-t.keyTail)),l}const s=a(r.primaryKey.keyPath,0,r.primaryKey);o[":id"]=[s];for(const e of r.indexes)a(e.keyPath,0,e);function u(t){const n=t.query.index;return n.isVirtual?{...t,query:{index:n,range:(r=t.query.range,o=n.keyTail,{type:1===r.type?2:r.type,lower:hr(r.lower,r.lowerOpen?e.MAX_KEY:e.MIN_KEY,o),lowerOpen:!0,upper:hr(r.upper,r.upperOpen?e.MIN_KEY:e.MAX_KEY,o),upperOpen:!0})}}:t;var r,o}const c={...n,schema:{...r,primaryKey:s,indexes:i,getIndexByKeyPath:function(e){const t=o[Vn(e)];return t&&t[0]}},count:e=>n.count(u(e)),query:e=>n.query(u(e)),openCursor(t){const{keyTail:r,isVirtual:o,keyLength:i}=t.query.index;return o?n.openCursor(u(t)).then((n=>n&&function(n){const o=Object.create(n,{continue:{value:function(o){null!=o?n.continue(hr(o,t.reverse?e.MAX_KEY:e.MIN_KEY,r)):t.unique?n.continue(n.key.slice(0,i).concat(t.reverse?e.MIN_KEY:e.MAX_KEY,r)):n.continue()}},continuePrimaryKey:{value(t,o){n.continuePrimaryKey(hr(t,e.MAX_KEY,r),o)}},primaryKey:{get:()=>n.primaryKey},key:{get(){const e=n.key;return 1===i?e[0]:e.slice(0,i)}},value:{get:()=>n.value}});return o}(n))):n.openCursor(t)}};return c}}}};function dr(e,t,n,r){return n=n||{},r=r||"",$(e).forEach((o=>{if(G(t,o)){var i=e[o],a=t[o];if("object"==typeof i&&"object"==typeof a&&i&&a){const e=ge(i);e!==ge(a)?n[r+o]=t[o]:"Object"===e?dr(i,a,n,r+o+"."):i!==a&&(n[r+o]=t[o])}else i!==a&&(n[r+o]=t[o])}else n[r+o]=void 0})),$(t).forEach((o=>{G(e,o)||(n[r+o]=t[o])})),n}const pr={stack:"dbcore",name:"HooksMiddleware",level:2,create:e=>({...e,table(t){const n=e.table(t),{primaryKey:r}=n.schema,o={...n,mutate(e){const o=pt.trans,{deleting:i,creating:a,updating:s}=o.table(t).hook;switch(e.type){case"add":if(a.fire===Ue)break;return o._promise("readwrite",(()=>u(e)),!0);case"put":if(a.fire===Ue&&s.fire===Ue)break;return o._promise("readwrite",(()=>u(e)),!0);case"delete":if(i.fire===Ue)break;return o._promise("readwrite",(()=>u(e)),!0);case"deleteRange":if(i.fire===Ue)break;return o._promise("readwrite",(()=>function(e){return c(e.trans,e.range,1e4)}(e)),!0)}return n.mutate(e);function u(e){const t=pt.trans,o=e.keys||function(e,t){return"delete"===t.type?t.keys:t.keys||t.values.map(e.extractKey)}(r,e);if(!o)throw new Error("Keys missing");return"delete"!==(e="add"===e.type||"put"===e.type?{...e,keys:o}:{...e}).type&&(e.values=[...e.values]),e.keys&&(e.keys=[...e.keys]),function(e,t,n){return"add"===t.type?Promise.resolve([]):e.getMany({trans:t.trans,keys:n,cache:"immutable"})}(n,e,o).then((u=>{const c=o.map(((n,o)=>{const c=u[o],l={onerror:null,onsuccess:null};if("delete"===e.type)i.fire.call(l,n,c,t);else if("add"===e.type||void 0===c){const i=a.fire.call(l,n,e.values[o],t);null==n&&null!=i&&(n=i,e.keys[o]=n,r.outbound||ue(e.values[o],r.keyPath,n))}else{const r=dr(c,e.values[o]),i=s.fire.call(l,r,n,c,t);if(i){const t=e.values[o];Object.keys(i).forEach((e=>{G(t,e)?t[e]=i[e]:ue(t,e,i[e])}))}}return l}));return n.mutate(e).then((({failures:t,results:n,numFailures:r,lastResult:i})=>{for(let r=0;r<o.length;++r){const i=n?n[r]:o[r],a=c[r];null==i?a.onerror&&a.onerror(t[r]):a.onsuccess&&a.onsuccess("put"===e.type&&u[r]?e.values[r]:i)}return{failures:t,results:n,numFailures:r,lastResult:i}})).catch((e=>(c.forEach((t=>t.onerror&&t.onerror(e))),Promise.reject(e))))}))}function c(e,t,o){return n.query({trans:e,values:!1,query:{index:r,range:t},limit:o}).then((({result:n})=>u({type:"delete",keys:n,trans:e}).then((r=>r.numFailures>0?Promise.reject(r.failures[0]):n.length<o?{failures:[],numFailures:0,lastResult:void 0}:c(e,{...t,lower:n[n.length-1],lowerOpen:!0},o)))))}}};return o}})};function yr(e,t,n){try{if(!t)return null;if(t.keys.length<e.length)return null;const r=[];for(let o=0,i=0;o<t.keys.length&&i<e.length;++o)0===xn(t.keys[o],e[i])&&(r.push(n?ye(t.values[o]):t.values[o]),++i);return r.length===e.length?r:null}catch(e){return null}}const mr={stack:"dbcore",level:-1,create:e=>({table:t=>{const n=e.table(t);return{...n,getMany:e=>{if(!e.cache)return n.getMany(e);const t=yr(e.keys,e.trans._cache,"clone"===e.cache);return t?gt.resolve(t):n.getMany(e).then((t=>(e.trans._cache={keys:e.keys,values:"clone"===e.cache?ye(t):t},t)))},mutate:e=>("add"!==e.type&&(e.trans._cache=null),n.mutate(e))}}})};function vr(e){return!("from"in e)}const gr=function(e,t){if(!this){const t=new gr;return e&&"d"in e&&z(t,e),t}z(this,arguments.length?{d:1,from:e,to:arguments.length>1?t:e}:{d:0})};function br(e,t,n){const r=xn(t,n);if(isNaN(r))return;if(r>0)throw RangeError();if(vr(e))return z(e,{from:t,to:n,d:1});const o=e.l,i=e.r;if(xn(n,e.from)<0)return o?br(o,t,n):e.l={from:t,to:n,d:1,l:null,r:null},xr(e);if(xn(t,e.to)>0)return i?br(i,t,n):e.r={from:t,to:n,d:1,l:null,r:null},xr(e);xn(t,e.from)<0&&(e.from=t,e.l=null,e.d=i?i.d+1:1),xn(n,e.to)>0&&(e.to=n,e.r=null,e.d=e.l?e.l.d+1:1);const a=!e.r;o&&!e.l&&wr(e,o),i&&a&&wr(e,i)}function wr(e,t){vr(t)||function e(t,{from:n,to:r,l:o,r:i}){br(t,n,r),o&&e(t,o),i&&e(t,i)}(e,t)}function _r(e){let t=vr(e)?null:{s:0,n:e};return{next(e){const n=arguments.length>0;for(;t;)switch(t.s){case 0:if(t.s=1,n)for(;t.n.l&&xn(e,t.n.from)<0;)t={up:t,n:t.n.l,s:1};else for(;t.n.l;)t={up:t,n:t.n.l,s:1};case 1:if(t.s=2,!n||xn(e,t.n.to)<=0)return{value:t.n,done:!1};case 2:if(t.n.r){t.s=3,t={up:t,n:t.n.r,s:0};continue}case 3:t=t.up}return{done:!0}}}}function xr(e){var t,n;const r=((null===(t=e.r)||void 0===t?void 0:t.d)||0)-((null===(n=e.l)||void 0===n?void 0:n.d)||0),o=r>1?"r":r<-1?"l":"";if(o){const t="r"===o?"l":"r",n={...e},r=e[o];e.from=r.from,e.to=r.to,e[o]=r[o],n[o]=r[t],e[t]=n,n.d=kr(n)}e.d=kr(e)}function kr({r:e,l:t}){return(e?t?Math.max(e.d,t.d):e.d:t?t.d:0)+1}Q(gr.prototype,{add(e){return wr(this,e),this},addKey(e){return br(this,e,e),this},addKeys(e){return e.forEach((e=>br(this,e,e))),this},[be](){return _r(this)}});const Sr={stack:"dbcore",level:0,create:e=>{const t=e.schema.name,n=new gr(e.MIN_KEY,e.MAX_KEY);return{...e,table:r=>{const o=e.table(r),{schema:i}=o,{primaryKey:a}=i,{extractKey:s,outbound:u}=a,c={...o,mutate:e=>{const a=e.trans,s=a.mutatedParts||(a.mutatedParts={}),u=e=>{const n=`idb://${t}/${r}/${e}`;return s[n]||(s[n]=new gr)},c=u(""),l=u(":dels"),{type:h}=e;let[f,d]="deleteRange"===e.type?[e.range]:"delete"===e.type?[e.keys]:e.values.length<50?[[],e.values]:[];const p=e.trans._cache;return o.mutate(e).then((e=>{if(W(f)){"delete"!==h&&(f=e.results),c.addKeys(f);const t=yr(f,p);t||"add"===h||l.addKeys(f),(t||d)&&function(e,t,n,r){t.indexes.forEach((function(t){const o=e(t.name||"");function i(e){return null!=e?t.extractKey(e):null}const a=e=>t.multiEntry&&W(e)?e.forEach((e=>o.addKey(e))):o.addKey(e);(n||r).forEach(((e,t)=>{const o=n&&i(n[t]),s=r&&i(r[t]);0!==xn(o,s)&&(null!=o&&a(o),null!=s&&a(s))}))}))}(u,i,t,d)}else if(f){const e={from:f.lower,to:f.upper};l.add(e),c.add(e)}else c.add(n),l.add(n),i.indexes.forEach((e=>u(e.name).add(n)));return e}))}},l=({query:{index:t,range:n}})=>{var r,o;return[t,new gr(null!==(r=n.lower)&&void 0!==r?r:e.MIN_KEY,null!==(o=n.upper)&&void 0!==o?o:e.MAX_KEY)]},h={get:e=>[a,new gr(e.key)],getMany:e=>[a,(new gr).addKeys(e.keys)],count:l,query:l,openCursor:l};return $(h).forEach((e=>{c[e]=function(i){const{subscr:a}=pt;if(a){const c=e=>{const n=`idb://${t}/${r}/${e}`;return a[n]||(a[n]=new gr)},l=c(""),f=c(":dels"),[d,p]=h[e](i);if(c(d.name||"").add(p),!d.isPrimaryKey){if("count"!==e){const t="query"===e&&u&&i.values&&o.query({...i,values:!1});return o[e].apply(this,arguments).then((n=>{if("query"===e){if(u&&i.values)return t.then((({result:e})=>(l.addKeys(e),n)));const e=i.values?n.result.map(s):n.result;i.values?l.addKeys(e):f.addKeys(e)}else if("openCursor"===e){const e=n,t=i.values;return e&&Object.create(e,{key:{get:()=>(f.addKey(e.primaryKey),e.key)},primaryKey:{get(){const t=e.primaryKey;return f.addKey(t),t}},value:{get:()=>(t&&l.addKey(e.primaryKey),e.value)}})}return n}))}f.add(n)}}return o[e].apply(this,arguments)}})),c}}}};class Er{constructor(e,t){this._middlewares={},this.verno=0;const n=Er.dependencies;this._options=t={addons:Er.addons,autoOpen:!0,indexedDB:n.indexedDB,IDBKeyRange:n.IDBKeyRange,...t},this._deps={indexedDB:t.indexedDB,IDBKeyRange:t.IDBKeyRange};const{addons:r}=t;this._dbSchema={},this._versions=[],this._storeNames=[],this._allTables={},this.idbdb=null,this._novip=this;const o={dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:Ue,dbReadyPromise:null,cancelOpen:Ue,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3};var i;o.dbReadyPromise=new gt((e=>{o.dbReadyResolve=e})),o.openCanceller=new gt(((e,t)=>{o.cancelOpen=t})),this._state=o,this.name=e,this.on=dn(this,"populate","blocked","versionchange","close",{ready:[Ye,Ue]}),this.on.ready.subscribe=re(this.on.ready.subscribe,(e=>(t,n)=>{Er.vip((()=>{const r=this._state;if(r.openComplete)r.dbOpenError||gt.resolve().then(t),n&&e(t);else if(r.onReadyBeingFired)r.onReadyBeingFired.push(t),n&&e(t);else{e(t);const r=this;n||e((function e(){r.on.ready.unsubscribe(t),r.on.ready.unsubscribe(e)}))}}))})),this.Collection=(i=this,pn(En.prototype,(function(e,t){this.db=i;let n=ln,r=null;if(t)try{n=t()}catch(e){r=e}const o=e._ctx,a=o.table,s=a.hook.reading.fire;this._ctx={table:a,index:o.index,isPrimKey:!o.index||a.schema.primKey.keyPath&&o.index===a.schema.primKey.name,range:n,keysOnly:!1,dir:"next",unique:"",algorithm:null,filter:null,replayFilter:null,justLimit:!0,isMatch:null,offset:0,limit:1/0,error:r,or:o.or,valueMapper:s!==$e?s:null}}))),this.Table=function(e){return pn(fn.prototype,(function(t,n,r){this.db=e,this._tx=r,this.name=t,this.schema=n,this.hook=e._allTables[t]?e._allTables[t].hook:dn(null,{creating:[He,Ue],reading:[We,$e],updating:[Ge,Ue],deleting:[Ve,Ue]})}))}(this),this.Transaction=function(e){return pn(Mn.prototype,(function(t,n,r,o,i){this.db=e,this.mode=t,this.storeNames=n,this.schema=r,this.chromeTransactionDurability=o,this.idbtrans=null,this.on=dn(this,"complete","error","abort"),this.parent=i||null,this.active=!0,this._reculock=0,this._blockedFuncs=[],this._resolve=null,this._reject=null,this._waitingFor=null,this._waitingQueue=null,this._spinCount=0,this._completion=new gt(((e,t)=>{this._resolve=e,this._reject=t})),this._completion.then((()=>{this.active=!1,this.on.complete.fire()}),(e=>{var t=this.active;return this.active=!1,this.on.error.fire(e),this.parent?this.parent._reject(e):t&&this.idbtrans&&this.idbtrans.abort(),Zt(e)}))}))}(this),this.Version=function(e){return pn(rr.prototype,(function(t){this.db=e,this._cfg={version:t,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}}))}(this),this.WhereClause=function(e){return pn(Rn.prototype,(function(t,n,r){this.db=e,this._ctx={table:t,index:":id"===n?null:n,or:r};const o=e._deps.indexedDB;if(!o)throw new Me.MissingAPI;this._cmp=this._ascending=o.cmp.bind(o),this._descending=(e,t)=>o.cmp(t,e),this._max=(e,t)=>o.cmp(e,t)>0?e:t,this._min=(e,t)=>o.cmp(e,t)<0?e:t,this._IDBKeyRange=e._deps.IDBKeyRange}))}(this),this.on("versionchange",(e=>{e.newVersion>0?console.warn(`Another connection wants to upgrade database '${this.name}'. Closing db now to resume the upgrade.`):console.warn(`Another connection wants to delete database '${this.name}'. Closing db now to resume the delete request.`),this.close()})),this.on("blocked",(e=>{!e.newVersion||e.newVersion<e.oldVersion?console.warn(`Dexie.delete('${this.name}') was blocked`):console.warn(`Upgrade '${this.name}' blocked by other connection holding version ${e.oldVersion/10}`)})),this._maxKey=$n(t.IDBKeyRange),this._createTransaction=(e,t,n,r)=>new this.Transaction(e,t,n,this._options.chromeTransactionDurability,r),this._fireOnBlocked=e=>{this.on("blocked").fire(e),rn.filter((e=>e.name===this.name&&e!==this&&!e._state.vcFired)).map((t=>t.on("versionchange").fire(e)))},this.use(fr),this.use(pr),this.use(Sr),this.use(mr),this.vip=Object.create(this,{_vip:{value:!0}}),r.forEach((e=>e(this)))}version(e){if(isNaN(e)||e<.1)throw new Me.Type("Given version is not a positive number");if(e=Math.round(10*e)/10,this.idbdb||this._state.isBeingOpened)throw new Me.Schema("Cannot add version when database is open");this.verno=Math.max(this.verno,e);const t=this._versions;var n=t.filter((t=>t._cfg.version===e))[0];return n||(n=new this.Version(e),t.push(n),t.sort(Xn),n.stores({}),this._state.autoSchema=!1,n)}_whenReady(e){return this.idbdb&&(this._state.openComplete||pt.letThrough||this._vip)?e():new gt(((e,t)=>{if(this._state.openComplete)return t(new Me.DatabaseClosed(this._state.dbOpenError));if(!this._state.isBeingOpened){if(!this._options.autoOpen)return void t(new Me.DatabaseClosed);this.open().catch(Ue)}this._state.dbReadyPromise.then(e,t)})).then(e)}use({stack:e,create:t,level:n,name:r}){r&&this.unuse({stack:e,name:r});const o=this._middlewares[e]||(this._middlewares[e]=[]);return o.push({stack:e,create:t,level:null==n?10:n,name:r}),o.sort(((e,t)=>e.level-t.level)),this}unuse({stack:e,name:t,create:n}){return e&&this._middlewares[e]&&(this._middlewares[e]=this._middlewares[e].filter((e=>n?e.create!==n:!!t&&e.name!==t))),this}open(){return function(e){const t=e._state,{indexedDB:n}=e._deps;if(t.isBeingOpened||e.idbdb)return t.dbReadyPromise.then((()=>t.dbOpenError?Zt(t.dbOpenError):e));Se&&(t.openCanceller._stackHolder=je()),t.isBeingOpened=!0,t.dbOpenError=null,t.openComplete=!1;const r=t.openCanceller;function o(){if(t.openCanceller!==r)throw new Me.DatabaseClosed("db.open() was cancelled")}let i=t.dbReadyResolve,a=null,s=!1;return gt.race([r,("undefined"==typeof navigator?gt.resolve():sr()).then((()=>new gt(((r,i)=>{if(o(),!n)throw new Me.MissingAPI;const u=e.name,c=t.autoSchema?n.open(u):n.open(u,Math.round(10*e.verno));if(!c)throw new Me.MissingAPI;c.onerror=Bn(i),c.onblocked=Dt(e._fireOnBlocked),c.onupgradeneeded=Dt((r=>{if(a=c.transaction,t.autoSchema&&!e._options.allowEmptyDB){c.onerror=Fn,a.abort(),c.result.close();const e=n.deleteDatabase(u);e.onsuccess=e.onerror=Dt((()=>{i(new Me.NoSuchDatabase(`Database ${u} doesnt exist`))}))}else{a.onerror=Bn(i);var o=r.oldVersion>Math.pow(2,62)?0:r.oldVersion;s=o<1,e._novip.idbdb=c.result,function(e,t,n,r){const o=e._dbSchema,i=e._createTransaction("readwrite",e._storeNames,o);i.create(n),i._completion.catch(r);const a=i._reject.bind(i),s=pt.transless||pt;Lt((()=>{pt.trans=i,pt.transless=s,0===t?($(o).forEach((e=>{Zn(n,e,o[e].primKey,o[e].indexes)})),Gn(e,n),gt.follow((()=>e.on.populate.fire(i))).catch(a)):function({_novip:e},t,n,r){const o=[],i=e._versions;let a=e._dbSchema=tr(0,e.idbdb,r),s=!1;return i.filter((e=>e._cfg.version>=t)).forEach((i=>{o.push((()=>{const o=a,u=i._cfg.dbschema;nr(e,o,r),nr(e,u,r),a=e._dbSchema=u;const c=Jn(o,u);c.add.forEach((e=>{Zn(r,e[0],e[1].primKey,e[1].indexes)})),c.change.forEach((e=>{if(e.recreate)throw new Me.Upgrade("Not yet support for changing primary key");{const t=r.objectStore(e.name);e.add.forEach((e=>er(t,e))),e.change.forEach((e=>{t.deleteIndex(e.name),er(t,e)})),e.del.forEach((e=>t.deleteIndex(e)))}}));const l=i._cfg.contentUpgrade;if(l&&i._cfg.version>t){Gn(e,r),n._memoizedTables={},s=!0;let t=ce(u);c.del.forEach((e=>{t[e]=o[e]})),Yn(e,[e.Transaction.prototype]),Qn(e,[e.Transaction.prototype],$(t),t),n.schema=t;const i=ke(l);let a;i&&qt();const h=gt.follow((()=>{if(a=l(n),a&&i){var e=Ut.bind(null,null);a.then(e,e)}}));return a&&"function"==typeof a.then?gt.resolve(a):h.then((()=>a))}})),o.push((t=>{s&&an||function(e,t){[].slice.call(t.db.objectStoreNames).forEach((n=>null==e[n]&&t.db.deleteObjectStore(n)))}(i._cfg.dbschema,t),Yn(e,[e.Transaction.prototype]),Qn(e,[e.Transaction.prototype],e._storeNames,e._dbSchema),n.schema=e._dbSchema}))})),function e(){return o.length?gt.resolve(o.shift()(n.idbtrans)).then(e):gt.resolve()}().then((()=>{var e,t;t=r,$(e=a).forEach((n=>{t.db.objectStoreNames.contains(n)||Zn(t,n,e[n].primKey,e[n].indexes)}))}))}(e,t,i,n).catch(a)}))}(e,o/10,a,i)}}),i),c.onsuccess=Dt((()=>{a=null;const n=e._novip.idbdb=c.result,o=ne(n.objectStoreNames);if(o.length>0)try{const r=n.transaction(1===(i=o).length?i[0]:i,"readonly");t.autoSchema?function({_novip:e},t,n){e.verno=t.version/10;const r=e._dbSchema=tr(0,t,n);e._storeNames=ne(t.objectStoreNames,0),Qn(e,[e._allTables],$(r),r)}(e,n,r):(nr(e,e._dbSchema,r),function(e,t){const n=Jn(tr(0,e.idbdb,t),e._dbSchema);return!(n.add.length||n.change.some((e=>e.add.length||e.change.length)))}(e,r)||console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Some queries may fail.")),Gn(e,r)}catch(e){}var i;rn.push(e),n.onversionchange=Dt((n=>{t.vcFired=!0,e.on("versionchange").fire(n)})),n.onclose=Dt((t=>{e.on("close").fire(t)})),s&&function({indexedDB:e,IDBKeyRange:t},n){!ir(e)&&"__dbnames"!==n&&or(e,t).put({name:n}).catch(Ue)}(e._deps,u),r()}),i)}))))]).then((()=>(o(),t.onReadyBeingFired=[],gt.resolve(ar((()=>e.on.ready.fire(e.vip)))).then((function n(){if(t.onReadyBeingFired.length>0){let r=t.onReadyBeingFired.reduce(Ye,Ue);return t.onReadyBeingFired=[],gt.resolve(ar((()=>r(e.vip)))).then(n)}}))))).finally((()=>{t.onReadyBeingFired=null,t.isBeingOpened=!1})).then((()=>e)).catch((n=>{t.dbOpenError=n;try{a&&a.abort()}catch(e){}return r===t.openCanceller&&e._close(),Zt(n)})).finally((()=>{t.openComplete=!0,i()}))}(this)}_close(){const e=this._state,t=rn.indexOf(this);if(t>=0&&rn.splice(t,1),this.idbdb){try{this.idbdb.close()}catch(e){}this._novip.idbdb=null}e.dbReadyPromise=new gt((t=>{e.dbReadyResolve=t})),e.openCanceller=new gt(((t,n)=>{e.cancelOpen=n}))}close(){this._close();const e=this._state;this._options.autoOpen=!1,e.dbOpenError=new Me.DatabaseClosed,e.isBeingOpened&&e.cancelOpen(e.dbOpenError)}delete(){const e=arguments.length>0,t=this._state;return new gt(((n,r)=>{const o=()=>{this.close();var e=this._deps.indexedDB.deleteDatabase(this.name);e.onsuccess=Dt((()=>{!function({indexedDB:e,IDBKeyRange:t},n){!ir(e)&&"__dbnames"!==n&&or(e,t).delete(n).catch(Ue)}(this._deps,this.name),n()})),e.onerror=Bn(r),e.onblocked=this._fireOnBlocked};if(e)throw new Me.InvalidArgument("Arguments not allowed in db.delete()");t.isBeingOpened?t.dbReadyPromise.then(o):o()}))}backendDB(){return this.idbdb}isOpen(){return null!==this.idbdb}hasBeenClosed(){const e=this._state.dbOpenError;return e&&"DatabaseClosed"===e.name}hasFailed(){return null!==this._state.dbOpenError}dynamicallyOpened(){return this._state.autoSchema}get tables(){return $(this._allTables).map((e=>this._allTables[e]))}transaction(){const e=cr.apply(this,arguments);return this._transaction.apply(this,e)}_transaction(e,t,n){let r=pt.trans;r&&r.db===this&&-1===e.indexOf("!")||(r=null);const o=-1!==e.indexOf("?");let i,a;e=e.replace("!","").replace("?","");try{if(a=t.map((e=>{var t=e instanceof this.Table?e.name:e;if("string"!=typeof t)throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return t})),"r"==e||"readonly"===e)i="readonly";else{if("rw"!=e&&"readwrite"!=e)throw new Me.InvalidArgument("Invalid transaction mode: "+e);i="readwrite"}if(r){if("readonly"===r.mode&&"readwrite"===i){if(!o)throw new Me.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");r=null}r&&a.forEach((e=>{if(r&&-1===r.storeNames.indexOf(e)){if(!o)throw new Me.SubTransaction("Table "+e+" not included in parent transaction.");r=null}})),o&&r&&!r.active&&(r=null)}}catch(e){return r?r._promise(null,((t,n)=>{n(e)})):Zt(e)}const s=lr.bind(null,this,i,a,r,n);return r?r._promise(i,s,"lock"):pt.trans?Gt(pt.transless,(()=>this._whenReady(s))):this._whenReady(s)}table(e){if(!G(this._allTables,e))throw new Me.InvalidTable(`Table ${e} does not exist`);return this._allTables[e]}}const Or="undefined"!=typeof Symbol&&"observable"in Symbol?Symbol.observable:"@@observable";class Pr{constructor(e){this._subscribe=e}subscribe(e,t,n){return this._subscribe(e&&"function"!=typeof e?e:{next:e,error:t,complete:n})}[Or](){return this}}function jr(e,t){return $(t).forEach((n=>{wr(e[n]||(e[n]=new gr),t[n])})),e}let Ar;try{Ar={indexedDB:U.indexedDB||U.mozIndexedDB||U.webkitIndexedDB||U.msIndexedDB,IDBKeyRange:U.IDBKeyRange||U.webkitIDBKeyRange}}catch(n){Ar={indexedDB:null,IDBKeyRange:null}}const Cr=Er;function Ir(e){let t=Kr;try{Kr=!0,Nn.storagemutated.fire(e)}finally{Kr=t}}Q(Cr,{...qe,delete:e=>new Cr(e,{addons:[]}).delete(),exists:e=>new Cr(e,{addons:[]}).open().then((e=>(e.close(),!0))).catch("NoSuchDatabaseError",(()=>!1)),getDatabaseNames(e){try{return function({indexedDB:e,IDBKeyRange:t}){return ir(e)?Promise.resolve(e.databases()).then((e=>e.map((e=>e.name)).filter((e=>"__dbnames"!==e)))):or(e,t).toCollection().primaryKeys()}(Cr.dependencies).then(e)}catch(e){return Zt(new Me.MissingAPI)}},defineClass:()=>function(e){z(this,e)},ignoreTransaction:e=>pt.trans?Gt(pt.transless,e):e(),vip:ar,async:function(e){return function(){try{var t=ur(e.apply(this,arguments));return t&&"function"==typeof t.then?t:gt.resolve(t)}catch(e){return Zt(e)}}},spawn:function(e,t,n){try{var r=ur(e.apply(n,t||[]));return r&&"function"==typeof r.then?r:gt.resolve(r)}catch(e){return Zt(e)}},currentTransaction:{get:()=>pt.trans||null},waitFor:function(e,t){const n=gt.resolve("function"==typeof e?Cr.ignoreTransaction(e):e).timeout(t||6e4);return pt.trans?pt.trans.waitFor(n):n},Promise:gt,debug:{get:()=>Se,set:e=>{Ee(e,"dexie"===e?()=>!0:un)}},derive:J,extend:z,props:Q,override:re,Events:dn,on:Nn,liveQuery:function(e){return new Pr((t=>{const n=ke(e);let r=!1,o={},i={};const a={get closed(){return r},unsubscribe:()=>{r=!0,Nn.storagemutated.unsubscribe(l)}};t.start&&t.start(a);let s=!1,u=!1;function c(){return $(i).some((e=>o[e]&&function(e,t){const n=_r(t);let r=n.next();if(r.done)return!1;let o=r.value;const i=_r(e);let a=i.next(o.from),s=a.value;for(;!r.done&&!a.done;){if(xn(s.from,o.to)<=0&&xn(s.to,o.from)>=0)return!0;xn(o.from,s.from)<0?o=(r=n.next(s.from)).value:s=(a=i.next(o.from)).value}return!1}(o[e],i[e])))}const l=e=>{jr(o,e),c()&&h()},h=()=>{if(s||r)return;o={};const f={},d=function(t){n&&qt();const r=()=>Lt(e,{subscr:t,trans:null}),o=pt.trans?Gt(pt.transless,r):r();return n&&o.then(Ut,Ut),o}(f);u||(Nn("storagemutated",l),u=!0),s=!0,Promise.resolve(d).then((e=>{s=!1,r||(c()?h():(o={},i=f,t.next&&t.next(e)))}),(e=>{s=!1,t.error&&t.error(e),a.unsubscribe()}))};return h(),a}))},extendObservabilitySet:jr,getByKeyPath:se,setByKeyPath:ue,delByKeyPath:function(e,t){"string"==typeof t?ue(e,t,void 0):"length"in t&&[].map.call(t,(function(t){ue(e,t,void 0)}))},shallowClone:ce,deepClone:ye,getObjectDiff:dr,cmp:xn,asap:ie,minKey:-1/0,addons:[],connections:rn,errnames:Fe,dependencies:Ar,semVer:"3.2.1",version:"3.2.1".split(".").map((e=>parseInt(e))).reduce(((e,t,n)=>e+t/Math.pow(10,2*n)))}),Cr.maxKey=$n(Cr.dependencies.IDBKeyRange),"undefined"!=typeof dispatchEvent&&"undefined"!=typeof addEventListener&&(Nn("storagemutated",(e=>{if(!Kr){let t;on?(t=document.createEvent("CustomEvent"),t.initCustomEvent("x-storagemutated-1",!0,!0,e)):t=new CustomEvent("x-storagemutated-1",{detail:e}),Kr=!0,dispatchEvent(t),Kr=!1}})),addEventListener("x-storagemutated-1",(({detail:e})=>{Kr||Ir(e)})));let Kr=!1;if("undefined"!=typeof BroadcastChannel){const e=new BroadcastChannel("x-storagemutated-1");Nn("storagemutated",(t=>{Kr||e.postMessage(t)})),e.onmessage=e=>{e.data&&Ir(e.data)}}else if("undefined"!=typeof self&&"undefined"!=typeof navigator){Nn("storagemutated",(e=>{try{Kr||("undefined"!=typeof localStorage&&localStorage.setItem("x-storagemutated-1",JSON.stringify({trig:Math.random(),changedParts:e})),"object"==typeof self.clients&&[...self.clients.matchAll({includeUncontrolled:!0})].forEach((t=>t.postMessage({type:"x-storagemutated-1",changedParts:e}))))}catch(e){}})),addEventListener("storage",(e=>{if("x-storagemutated-1"===e.key){const t=JSON.parse(e.newValue);t&&Ir(t.changedParts)}}));const e=self.document&&navigator.serviceWorker;e&&e.addEventListener("message",(function({data:e}){e&&"x-storagemutated-1"===e.type&&Ir(e.changedParts)}))}gt.rejectionMapper=function(e,t){if(!e||e instanceof De||e instanceof TypeError||e instanceof SyntaxError||!e.name||!Le[e.name])return e;var n=new Le[e.name](t||e.message,e);return"stack"in e&&X(n,"stack",{get:function(){return this.inner.stack}}),n},Ee(Se,un);var Dr=i(766),Tr=i(685);function Rr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Br(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function Fr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Br(i,r,o,a,s,"next",e)}function s(e){Br(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Nr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Mr(e){return Mr=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Mr(e)}function Lr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Nr(e,t,n[t])}))}return e}function qr(e,t){return!t||"object"!==Wr(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ur(e,t){return Ur=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Ur(e,t)}function $r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Rr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Rr(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var Wr=function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};var zr=new(function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ur(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=Mr(t);if(n){var o=Mr(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return qr(this,e)});function o(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(e=r.call(this,"EsmOffline")).version(3).stores({syncQueue:"++id,userId,type,[userId+type]"}),e.syncQueue=e.table("syncQueue"),e}return o}(Er)),Hr={};function Vr(){return zr}var Gr,Qr=(0,Tr.createGlobalStore)("offline-synchronization",{});function Yr(){return Qr}function Xr(){return Jr.apply(this,arguments)}function Jr(){return Jr=Fr(w().mark((function e(){var t,n,r,o,i,a,s,u,c,l,h,f,d;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Qr.getState().synchronization){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,zr.syncQueue.count();case 4:t=e.sent,n={},r=Object.entries(Hr),o=r.length,i={},a=new AbortController,s=function(){var e=Qr.getState().synchronization;Qr.setState({synchronization:Lr({},e,{pendingCount:e.pendingCount-1})})},e.prev=11,Qr.setState({synchronization:{totalCount:t,pendingCount:t,abortController:a}}),u=0;case 14:if(!(u<o&&r.length>0)){e.next=30;break}c=r.length;case 16:if(!c--){e.next=27;break}if(l=$r(r[c],2),h=l[0],f=l[1],!(d=f.dependsOn.map((function(e){return n[e]}))).every(Boolean)){e.next=25;break}return i[h]={},e.next=23,Promise.all(d);case 23:n[h]=Zr(f,i,a,s),r.splice(c,1);case 25:e.next=16;break;case 27:u++,e.next=14;break;case 30:return e.next=32,Promise.allSettled(Object.values(n));case 32:return e.prev=32,Qr.setState({synchronization:void 0}),e.finish(32);case 35:case"end":return e.stop()}}),e,null,[[11,,32,35]])}))),Jr.apply(this,arguments)}function Zr(e,t,n,r){return eo.apply(this,arguments)}function eo(){return eo=Fr(w().mark((function e(t,n,r,o){var i,a,s,u,c,l,h,f,d,p,y,m,v,g,b,_;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t.type,a=t.dependsOn,s=t.process,u=[],c=[],e.next=5,to();case 5:return l=e.sent,e.next=8,zr.syncQueue.where({type:i,userId:l}).each((function(e,t){u.push([t.primaryKey,e.content,e.descriptor]),c.push(e.content)}));case 8:h=0;case 9:if(!(h<u.length)){e.next=31;break}return f=$r(u[h],3),d=f[0],p=f[1],y=f[2],m=y.id,v=y.dependencies,g=void 0===v?[]:v,e.prev=11,e.next=14,s(p,{abort:r,index:h,items:c,userId:l,dependencies:g.map((function(e){var t=e.id,r=e.type;return a.includes(r)?n[r][t]:void 0}))});case 14:return b=e.sent,void 0!==m&&(n[i][m]=b),e.next=18,zr.syncQueue.delete(d);case 18:e.next=25;break;case 20:return e.prev=20,e.t0=e.catch(11),e.next=25,zr.syncQueue.update(d,{lastError:{name:null===e.t0||void 0===e.t0?void 0:e.t0.name,message:null!==(_=null===e.t0||void 0===e.t0?void 0:e.t0.message)&&void 0!==_?_:null===e.t0||void 0===e.t0?void 0:e.t0.toString()}});case 25:return e.prev=25,o(),e.finish(25);case 28:h++,e.next=9;break;case 31:case"end":return e.stop()}}),e,null,[[11,20,25,28]])}))),eo.apply(this,arguments)}function to(){return no.apply(this,arguments)}function no(){return(no=Fr(w().mark((function e(){var t;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,Dr.getLoggedInUser)();case 2:return t=e.sent,e.abrupt("return",(null==t?void 0:t.uuid)||"*");case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ro(e,t,n,r){return oo.apply(this,arguments)}function oo(){return(oo=Fr(w().mark((function e(t,n,r,o){var i,a;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0===(i=o&&o.id)){e.next=4;break}return e.next=4,zr.syncQueue.where({type:n,userId:t}).filter((function(e){return(null==e?void 0:e.descriptor.id)===i})).delete().catch(Er.errnames.DatabaseClosed);case 4:return e.next=6,zr.syncQueue.add({type:n,content:r,userId:t,descriptor:o||{},createdOn:new Date}).catch(Er.errnames.DatabaseClosed,(function(){return-1}));case 6:return a=e.sent,e.abrupt("return",a);case 8:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function io(e,t,n){return ao.apply(this,arguments)}function ao(){return(ao=Fr(w().mark((function e(t,n,r){var o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,to();case 2:return o=e.sent,e.next=5,ro(o,t,n,r);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function so(e,t){return uo.apply(this,arguments)}function uo(){return(uo=Fr(w().mark((function e(t,n){var r;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,co(t,n);case 2:return r=e.sent,e.abrupt("return",r.map((function(e){return e.content})));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function co(e,t){return lo.apply(this,arguments)}function lo(){return(lo=Fr(w().mark((function e(t,n){var r;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n?{type:n,userId:t}:{userId:t},e.next=3,zr.syncQueue.where(r).toArray().catch(Er.errnames.DatabaseClosed,(function(){return[]}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ho(e){return fo.apply(this,arguments)}function fo(){return(fo=Fr(w().mark((function e(t){var n;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,to();case 2:return n=e.sent,e.next=5,so(n,t);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function po(e){return yo.apply(this,arguments)}function yo(){return(yo=Fr(w().mark((function e(t){var n;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,to();case 2:return n=e.sent,e.next=5,co(n,t);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function mo(e){return vo.apply(this,arguments)}function vo(){return(vo=Fr(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,zr.syncQueue.get(t).catch(Er.errnames.DatabaseClosed,(function(){}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function go(e){var t;return!!(null===(t=Hr[e])||void 0===t?void 0:t.options.onBeginEditSyncItem)}function bo(e){return wo.apply(this,arguments)}function wo(){return(wo=Fr(w().mark((function e(t){var n,r,o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=3,mo(t);case 3:if(r=e.sent){e.next=6;break}throw new Error("No sync item with the ID ".concat(t," exists."));case 6:if(o=null===(n=Hr[r.type])||void 0===n?void 0:n.options.onBeginEditSyncItem){e.next=9;break}throw new Error("A sync item with the ID ".concat(t,' exists, but the associated handler (if one exists) doesn\'t support editing the item. You can avoid this error by either verifying that sync items of this type can be edited via the "canEditSynchronizationItemsOfType(type: string)" function or alternatively ensure that the synchronizaton handler for sync items of type "').concat(r.type,'" supports editing items.'));case 9:o(r);case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function _o(e){return xo.apply(this,arguments)}function xo(){return(xo=Fr(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,zr.syncQueue.delete(t).catch(Er.errnames.DatabaseClosed);case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ko(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};Hr[e]={type:e,dependsOn:t,process:n,options:r}}var So=new Uint8Array(16);function Eo(){if(!Gr&&!(Gr="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Gr(So)}const Oo=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Po=function(e){return"string"==typeof e&&Oo.test(e)};for(var jo=[],Ao=0;Ao<256;++Ao)jo.push((Ao+256).toString(16).substr(1));const Co=function(e,t,n){var r=(e=e||{}).random||(e.rng||Eo)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,t){n=n||0;for(var o=0;o<16;++o)t[n+o]=r[o];return t}return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=(jo[e[t+0]]+jo[e[t+1]]+jo[e[t+2]]+jo[e[t+3]]+"-"+jo[e[t+4]]+jo[e[t+5]]+"-"+jo[e[t+6]]+jo[e[t+7]]+"-"+jo[e[t+8]]+jo[e[t+9]]+"-"+jo[e[t+10]]+jo[e[t+11]]+jo[e[t+12]]+jo[e[t+13]]+jo[e[t+14]]+jo[e[t+15]]).toLowerCase();if(!Po(n))throw TypeError("Stringified UUID is invalid");return n}(r)};var Io="OFFLINE+";function Ko(){return Io+Co()}function Do(e){return e.startsWith(Io)}function To(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ro(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function Bo(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ro(i,r,o,a,s,"next",e)}function s(e){Ro(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Fo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function No(e){return No=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},No(e)}function Mo(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Fo(e,t,n[t])}))}return e}function Lo(e,t){return!t||"object"!==Wo(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function qo(e,t){return qo=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},qo(e,t)}function Uo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}}(e,t)||zo(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $o(e){return function(e){if(Array.isArray(e))return To(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||zo(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var Wo=function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};function zo(e,t){if(e){if("string"==typeof e)return To(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?To(e,t):void 0}}var Ho=(0,Tr.createGlobalStore)("offline-patients",{offlinePatientDataSyncState:{},handlers:{}});function Vo(){return Ho}function Go(e,t){var n=Ho.getState();Ho.setState({handlers:Mo({},n.handlers,Fo({},e,t))})}function Qo(e){return Yo.apply(this,arguments)}function Yo(){return Yo=Bo(w().mark((function e(t){var n,r,o,i,a,s;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Object.entries(Ho.getState().handlers),r=n.map((function(e){return Uo(e,1)[0]})),o=[],i=[],a={},s=new AbortController,e.next=8,Xo(t,{timestamp:new Date,syncingHandlers:r,syncedHandlers:o,failedHandlers:i,errors:a,abort:function(){return s.abort(),!0}});case 8:return e.next=10,Promise.all(n.map(function(){var e=Bo(w().mark((function e(n){var r,u,c,l,h;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Uo(n,2),u=r[0],c=r[1],e.prev=1,e.next=4,c.onOfflinePatientAdded({patientUuid:t,signal:s.signal});case 4:console.debug("Offline patient handler ".concat(u," successfully synchronized patient data.")),o.push(u),e.next=14;break;case 8:e.prev=8,e.t0=e.catch(1),console.error("Offline patient handler ".concat(u," failed. Error: "),e.t0),i.push(u),a[u]=null!==(h=null!==(l=null===e.t0||void 0===e.t0?void 0:e.t0.message)&&void 0!==l?l:null===e.t0||void 0===e.t0?void 0:e.t0.toString())&&void 0!==h?h:"";case 14:case"end":return e.stop()}}),e,null,[[1,8]])})));return function(t){return e.apply(this,arguments)}}()));case 10:return e.next=12,Xo(t,{timestamp:new Date,syncingHandlers:[],syncedHandlers:o,failedHandlers:i,errors:a,abort:function(){return!1}});case 12:case"end":return e.stop()}}),e)}))),Yo.apply(this,arguments)}function Xo(e,t){return Jo.apply(this,arguments)}function Jo(){return Jo=Bo(w().mark((function e(t,n){var r,o,i,a;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Ho.getState(),Ho.setState({offlinePatientDataSyncState:Mo({},r.offlinePatientDataSyncState,Fo({},t,n))}),o=new ti,e.next=5,o.offlinePatientDataSyncStates.get({patientUuid:t});case 5:return i=e.sent,a={id:null==i?void 0:i.id,patientUuid:t,state:{timestamp:n.timestamp,syncedHandlers:n.syncedHandlers,failedHandlers:$o(n.failedHandlers).concat($o(n.syncingHandlers)),errors:n.errors}},e.next=9,o.offlinePatientDataSyncStates.put(a);case 9:case"end":return e.stop()}}),e)}))),Jo.apply(this,arguments)}function Zo(){return ei.apply(this,arguments)}function ei(){return ei=Bo(w().mark((function e(){var t,n,r,o,i,a,s,u,c;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=new ti,e.next=3,t.offlinePatientDataSyncStates.toArray();case 3:for(n=e.sent,r=Ho.getState().offlinePatientDataSyncState,o=!0,i=!1,a=void 0,e.prev=6,s=n[Symbol.iterator]();!(o=(u=s.next()).done);o=!0)c=u.value,r[c.patientUuid]=Mo({},c.state,{syncingHandlers:[],abort:function(){return!1}});e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),i=!0,a=e.t0;case 14:e.prev=14,e.prev=15,o||null==s.return||s.return();case 17:if(e.prev=17,!i){e.next=20;break}throw a;case 20:return e.finish(17);case 21:return e.finish(14);case 22:Ho.setState({offlinePatientDataSyncState:r});case 23:case"end":return e.stop()}}),e,null,[[6,10,14,22],[15,,17,21]])}))),ei.apply(this,arguments)}var ti=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&qo(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=No(t);if(n){var o=No(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Lo(this,e)});function o(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(e=r.call(this,"EsmOfflinePatientData")).version(1).stores({offlinePatientDataSyncStates:"++id,&patientUuid"}),e.offlinePatientDataSyncStates=e.table("offlinePatientDataSyncStates"),e}return o}(Er)})(),a})())}}}));
2
2
  //# sourceMappingURL=openmrs-esm-offline.js.map