@openmrs/esm-offline 3.2.1-pre.1094 → 3.2.1-pre.1102
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.
- package/dist/openmrs-esm-offline.js.map +1 -1
- package/package.json +6 -6
- package/src/mode.ts +2 -0
- package/src/offline-patient-data.ts +1 -0
- package/src/public.ts +18 -0
- package/src/service-worker-http-headers.ts +2 -0
- package/src/service-worker-messaging.ts +1 -0
- package/src/sync.ts +1 -0
- package/src/uuid.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openmrs-esm-offline.js","mappings":"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","sources":["webpack://@openmrs/esm-offline/../../../node_modules/systemjs-webpack-interop/auto-public-path/auto-public-path.js","webpack://@openmrs/esm-offline/../../../node_modules/systemjs-webpack-interop/public-path.js","webpack://@openmrs/esm-offline/external system \"@openmrs/esm-api\"","webpack://@openmrs/esm-offline/external system \"@openmrs/esm-state\"","webpack://@openmrs/esm-offline/webpack/bootstrap","webpack://@openmrs/esm-offline/webpack/runtime/__system_context__","webpack://@openmrs/esm-offline/webpack/runtime/define property getters","webpack://@openmrs/esm-offline/webpack/runtime/global","webpack://@openmrs/esm-offline/webpack/runtime/hasOwnProperty shorthand","webpack://@openmrs/esm-offline/webpack/runtime/make namespace object","webpack://@openmrs/esm-offline/webpack/runtime/publicPath","webpack://@openmrs/esm-offline/../../../node_modules/systemjs-webpack-interop/auto-public-path/1.js","webpack://@openmrs/esm-offline/../../../node_modules/workbox-window/build/workbox-window.prod.es5.mjs","webpack://@openmrs/esm-offline/./src/service-worker.ts","webpack://@openmrs/esm-offline/./src/service-worker-http-headers.ts","webpack://@openmrs/esm-offline/./src/service-worker-messaging.ts","webpack://@openmrs/esm-offline/./src/mode.ts","webpack://@openmrs/esm-offline/../../../node_modules/dexie/dist/modern/dexie.min.mjs","webpack://@openmrs/esm-offline/./src/sync.ts","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/rng.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/regex.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/validate.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/stringify.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/v4.js","webpack://@openmrs/esm-offline/./src/uuid.ts","webpack://@openmrs/esm-offline/./src/offline-patient-data.ts"],"sourcesContent":["const resolveDirectory = require(\"../public-path\").resolveDirectory;\n\nexports.autoPublicPath = function autoPublicPath(rootDirLevel) {\n if (!rootDirLevel) {\n rootDirLevel = 1;\n }\n\n if (typeof __webpack_public_path__ !== \"undefined\") {\n if (typeof __system_context__ === \"undefined\") {\n throw Error(\n \"systemjs-webpack-interop requires webpack@>=5.0.0-beta.15 and output.libraryTarget set to 'system'\"\n );\n }\n\n if (!__system_context__.meta || !__system_context__.meta.url) {\n console.error(\"__system_context__\", __system_context__);\n throw Error(\n \"systemjs-webpack-interop was provided an unknown SystemJS context. Expected context.meta.url, but none was provided\"\n );\n }\n\n __webpack_public_path__ = resolveDirectory(\n __system_context__.meta.url,\n rootDirLevel\n );\n }\n};\n","exports.setPublicPath = function setPublicPath(\n systemjsModuleName,\n rootDirectoryLevel\n) {\n if (!rootDirectoryLevel) {\n rootDirectoryLevel = 1;\n }\n if (\n typeof systemjsModuleName !== \"string\" ||\n systemjsModuleName.trim().length === 0\n ) {\n throw Error(\n \"systemjs-webpack-interop: setPublicPath(systemjsModuleName) must be called with a non-empty string 'systemjsModuleName'\"\n );\n }\n\n if (\n typeof rootDirectoryLevel !== \"number\" ||\n rootDirectoryLevel <= 0 ||\n isNaN(rootDirectoryLevel) ||\n !isInteger(rootDirectoryLevel)\n ) {\n throw Error(\n \"systemjs-webpack-interop: setPublicPath(systemjsModuleName, rootDirectoryLevel) must be called with a positive integer 'rootDirectoryLevel'\"\n );\n }\n\n var moduleUrl;\n try {\n moduleUrl = window.System.resolve(systemjsModuleName);\n if (!moduleUrl) {\n throw Error();\n }\n } catch (err) {\n throw Error(\n \"systemjs-webpack-interop: There is no such module '\" +\n systemjsModuleName +\n \"' in the SystemJS registry. Did you misspell the name of your module?\"\n );\n }\n\n __webpack_public_path__ = resolveDirectory(moduleUrl, rootDirectoryLevel);\n};\n\nfunction resolveDirectory(urlString, rootDirectoryLevel) {\n // Our friend IE11 doesn't support new URL()\n // https://github.com/single-spa/single-spa/issues/612\n // https://gist.github.com/jlong/2428561\n\n var a = document.createElement(\"a\");\n a.href = urlString;\n\n var pathname = a.pathname[0] === \"/\" ? a.pathname : \"/\" + a.pathname;\n var numDirsProcessed = 0,\n index = pathname.length;\n while (numDirsProcessed !== rootDirectoryLevel && index >= 0) {\n var char = pathname[--index];\n if (char === \"/\") {\n numDirsProcessed++;\n }\n }\n\n if (numDirsProcessed !== rootDirectoryLevel) {\n throw Error(\n \"systemjs-webpack-interop: rootDirectoryLevel (\" +\n rootDirectoryLevel +\n \") is greater than the number of directories (\" +\n numDirsProcessed +\n \") in the URL path \" +\n urlString\n );\n }\n\n var finalPath = pathname.slice(0, index + 1);\n\n return a.protocol + \"//\" + a.host + finalPath;\n}\n\nexports.resolveDirectory = resolveDirectory;\n\n// borrowed from https://github.com/parshap/js-is-integer/blob/master/index.js\nvar isInteger =\n Number.isInteger ||\n function isInteger(val) {\n return typeof val === \"number\" && isFinite(val) && Math.floor(val) === val;\n };\n","module.exports = __WEBPACK_EXTERNAL_MODULE__766__;","module.exports = __WEBPACK_EXTERNAL_MODULE__685__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.y = __system_context__;","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) scriptUrl = scripts[scripts.length - 1].src\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","const autoPublicPath = require(\"./auto-public-path\").autoPublicPath;\n\nautoPublicPath(1);\n","try{self[\"workbox:window:6.5.1\"]&&_()}catch(n){}function n(n,t){return new Promise((function(r){var e=new MessageChannel;e.port1.onmessage=function(n){r(n.data)},n.postMessage(t,[e.port2])}))}function t(n,t){for(var r=0;r<t.length;r++){var e=t[r];e.enumerable=e.enumerable||!1,e.configurable=!0,\"value\"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}function r(n,t){(null==t||t>n.length)&&(t=n.length);for(var r=0,e=new Array(t);r<t;r++)e[r]=n[r];return e}function e(n,t){var e;if(\"undefined\"==typeof Symbol||null==n[Symbol.iterator]){if(Array.isArray(n)||(e=function(n,t){if(n){if(\"string\"==typeof n)return r(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);return\"Object\"===e&&n.constructor&&(e=n.constructor.name),\"Map\"===e||\"Set\"===e?Array.from(n):\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?r(n,t):void 0}}(n))||t&&n&&\"number\"==typeof n.length){e&&(n=e);var i=0;return function(){return i>=n.length?{done:!0}:{done:!1,value:n[i++]}}}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(e=n[Symbol.iterator]()).next.bind(e)}try{self[\"workbox:core:6.5.1\"]&&_()}catch(n){}var i=function(){var n=this;this.promise=new Promise((function(t,r){n.resolve=t,n.reject=r}))};function o(n,t){var r=location.href;return new URL(n,r).href===new URL(t,r).href}var u=function(n,t){this.type=n,Object.assign(this,t)};function a(n,t,r){return r?t?t(n):n:(n&&n.then||(n=Promise.resolve(n)),t?n.then(t):n)}function c(){}var f={type:\"SKIP_WAITING\"};function s(n,t){if(!t)return n&&n.then?n.then(c):Promise.resolve()}var v=function(r){var e,c;function v(n,t){var e,c;return void 0===t&&(t={}),(e=r.call(this)||this).nn={},e.tn=0,e.rn=new i,e.en=new i,e.on=new i,e.un=0,e.an=new Set,e.cn=function(){var n=e.fn,t=n.installing;e.tn>0||!o(t.scriptURL,e.sn.toString())||performance.now()>e.un+6e4?(e.vn=t,n.removeEventListener(\"updatefound\",e.cn)):(e.hn=t,e.an.add(t),e.rn.resolve(t)),++e.tn,t.addEventListener(\"statechange\",e.ln)},e.ln=function(n){var t=e.fn,r=n.target,i=r.state,o=r===e.vn,a={sw:r,isExternal:o,originalEvent:n};!o&&e.mn&&(a.isUpdate=!0),e.dispatchEvent(new u(i,a)),\"installed\"===i?e.wn=self.setTimeout((function(){\"installed\"===i&&t.waiting===r&&e.dispatchEvent(new u(\"waiting\",a))}),200):\"activating\"===i&&(clearTimeout(e.wn),o||e.en.resolve(r))},e.dn=function(n){var t=e.hn,r=t!==navigator.serviceWorker.controller;e.dispatchEvent(new u(\"controlling\",{isExternal:r,originalEvent:n,sw:t,isUpdate:e.mn})),r||e.on.resolve(t)},e.gn=(c=function(n){var t=n.data,r=n.ports,i=n.source;return a(e.getSW(),(function(){e.an.has(i)&&e.dispatchEvent(new u(\"message\",{data:t,originalEvent:n,ports:r,sw:i}))}))},function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];try{return Promise.resolve(c.apply(this,n))}catch(n){return Promise.reject(n)}}),e.sn=n,e.nn=t,navigator.serviceWorker.addEventListener(\"message\",e.gn),e}c=r,(e=v).prototype=Object.create(c.prototype),e.prototype.constructor=e,e.__proto__=c;var h,l,m,w=v.prototype;return w.register=function(n){var t=(void 0===n?{}:n).immediate,r=void 0!==t&&t;try{var e=this;return function(n,t){var r=n();if(r&&r.then)return r.then(t);return t(r)}((function(){if(!r&&\"complete\"!==document.readyState)return s(new Promise((function(n){return window.addEventListener(\"load\",n)})))}),(function(){return e.mn=Boolean(navigator.serviceWorker.controller),e.yn=e.pn(),a(e.bn(),(function(n){e.fn=n,e.yn&&(e.hn=e.yn,e.en.resolve(e.yn),e.on.resolve(e.yn),e.yn.addEventListener(\"statechange\",e.ln,{once:!0}));var t=e.fn.waiting;return t&&o(t.scriptURL,e.sn.toString())&&(e.hn=t,Promise.resolve().then((function(){e.dispatchEvent(new u(\"waiting\",{sw:t,wasWaitingBeforeRegister:!0}))})).then((function(){}))),e.hn&&(e.rn.resolve(e.hn),e.an.add(e.hn)),e.fn.addEventListener(\"updatefound\",e.cn),navigator.serviceWorker.addEventListener(\"controllerchange\",e.dn),e.fn}))}))}catch(n){return Promise.reject(n)}},w.update=function(){try{return this.fn?s(this.fn.update()):void 0}catch(n){return Promise.reject(n)}},w.getSW=function(){return void 0!==this.hn?Promise.resolve(this.hn):this.rn.promise},w.messageSW=function(t){try{return a(this.getSW(),(function(r){return n(r,t)}))}catch(n){return Promise.reject(n)}},w.messageSkipWaiting=function(){this.fn&&this.fn.waiting&&n(this.fn.waiting,f)},w.pn=function(){var n=navigator.serviceWorker.controller;return n&&o(n.scriptURL,this.sn.toString())?n:void 0},w.bn=function(){try{var n=this;return function(n,t){try{var r=n()}catch(n){return t(n)}if(r&&r.then)return r.then(void 0,t);return r}((function(){return a(navigator.serviceWorker.register(n.sn,n.nn),(function(t){return n.un=performance.now(),t}))}),(function(n){throw n}))}catch(n){return Promise.reject(n)}},h=v,(l=[{key:\"active\",get:function(){return this.en.promise}},{key:\"controlling\",get:function(){return this.on.promise}}])&&t(h.prototype,l),m&&t(h,m),v}(function(){function n(){this.Pn=new Map}var t=n.prototype;return t.addEventListener=function(n,t){this.Sn(n).add(t)},t.removeEventListener=function(n,t){this.Sn(n).delete(t)},t.dispatchEvent=function(n){n.target=this;for(var t,r=e(this.Sn(n.type));!(t=r()).done;){(0,t.value)(n)}},t.Sn=function(n){return this.Pn.has(n)||this.Pn.set(n,new Set),this.Pn.get(n)},n}());export{v as Workbox,u as WorkboxEvent,n as messageSW};\n//# sourceMappingURL=workbox-window.prod.es5.mjs.map\n","import { Workbox } from \"workbox-window\";\n\nlet workboxRegistration: Promise<Workbox> | undefined = undefined;\n\n/**\n * If not yet registered, registers the application's global Service Worker.\n * Throws if registration is not possible.\n * @param scriptURL The service worker script associated with this instance.\n * @param [registerOptions] The service worker options associated with this instance.\n * @returns A promise which resolves to the registered {@link Workbox} instance which manages the SW.\n */\nexport function registerOmrsServiceWorker(\n scriptUrl: string,\n registerOptions?: object\n) {\n if (workboxRegistration !== undefined) {\n console.warn(\n `The application's Service Worker has already been registered. The new service worker at ${scriptUrl} will not be registered.`\n );\n return workboxRegistration;\n }\n\n if (!(\"serviceWorker\" in navigator)) {\n throw new Error(\n \"Registering the Service Worker is not possible due to missing browser capabilities.\"\n );\n }\n\n const wb = new Workbox(scriptUrl, registerOptions);\n workboxRegistration = wb.register().then(() => wb);\n return workboxRegistration;\n}\n\n/**\n * If a service worker has been registered, returns a promise that resolves to a {@link Workbox}\n * instance which is used by the application to manage that service worker.\n *\n * If no service worker has been registered (e.g. when the application is built without offline specific features),\n * returns a promise which immediately resolves to `undefined`.\n * @returns A promise which either resolves to `undefined` or to the app's {@link Workbox} instance.\n */\nexport function getOmrsServiceWorker(): Promise<Workbox | undefined> {\n return workboxRegistration ?? Promise.resolve(undefined);\n}\n","export const omrsOfflineResponseBodyHttpHeaderName =\n \"x-omrs-offline-response-body\";\nexport const omrsOfflineResponseStatusHttpHeaderName =\n \"x-omrs-offline-response-status\";\nexport const omrsOfflineCachingStrategyHttpHeaderName =\n \"x-omrs-offline-caching-strategy\";\n\n/**\n *\n *\n * * `cache-or-network`: The default strategy, equal to the absence of this header.\n * The SW attempts to resolve the request via the network, but falls back to the cache if required.\n * The service worker decides the strategy to be used.\n * * `network-first`: See https://developers.google.com/web/tools/workbox/modules/workbox-strategies#network_first_network_falling_back_to_cache.\n */\nexport type OmrsOfflineCachingStrategy =\n | \"network-only-or-cache-only\"\n | \"network-first\";\n\n/**\n * Defines the keys of the custom headers which can be appended to an HTTP request.\n * HTTP requests with these headers are handled in a special way by the SPA's service worker.\n */\nexport type OmrsOfflineHttpHeaders = {\n /**\n * If the client is offline and the request cannot be read from the cache (i.e. if there is no way\n * to receive any kind of data for this request), the service worker will return a response with\n * the body in this header.\n */\n [omrsOfflineResponseBodyHttpHeaderName]?: string;\n /**\n * If the client is offline and the request cannot be read from the cache (i.e. if there is no way\n * to receive any kind of data for this request), the service worker will return a response with\n * the status code defined in this header.\n */\n [omrsOfflineResponseStatusHttpHeaderName]?: `${number}`;\n /**\n * Instructs the service worker to use a specific caching strategy for this request.\n */\n [omrsOfflineCachingStrategyHttpHeaderName]?: OmrsOfflineCachingStrategy;\n};\n\nexport type OmrsOfflineHttpHeaderNames = keyof OmrsOfflineHttpHeaders;\n","import type { ImportMap } from \"@openmrs/esm-globals\";\nimport { OmrsOfflineCachingStrategy } from \"./service-worker-http-headers\";\nimport { getOmrsServiceWorker } from \"./service-worker\";\n\n/**\n * Sends the specified message to the application's service worker.\n * @param message The message to be sent.\n * @returns A promise which completes when the message has been successfully processed by the Service Worker.\n */\nexport async function messageOmrsServiceWorker(\n message: KnownOmrsServiceWorkerMessages\n): Promise<MessageServiceWorkerResult<any>> {\n const sw = await getOmrsServiceWorker();\n return sw\n ? await sw.messageSW(message)\n : {\n success: false,\n result: undefined,\n error:\n \"No service worker has been registered. This is typically the case when the application has been built without offline-related features.\",\n };\n}\n\nexport interface OmrsServiceWorkerMessage<\n MessageTypeTypeIdentifier extends string\n> {\n type: MessageTypeTypeIdentifier;\n}\n\nexport interface OnImportMapChangedMessage\n extends OmrsServiceWorkerMessage<\"onImportMapChanged\"> {\n importMap: ImportMap;\n}\n\nexport interface ClearDynamicRoutesMessage\n extends OmrsServiceWorkerMessage<\"clearDynamicRoutes\"> {}\n\nexport interface RegisterDynamicRouteMessage\n extends OmrsServiceWorkerMessage<\"registerDynamicRoute\"> {\n pattern?: string;\n url?: string;\n strategy?: OmrsOfflineCachingStrategy;\n}\n\nexport type KnownOmrsServiceWorkerMessages =\n | OnImportMapChangedMessage\n | ClearDynamicRoutesMessage\n | RegisterDynamicRouteMessage;\n\nexport interface MessageServiceWorkerResult<T> {\n success: boolean;\n result?: T;\n error?: string;\n}\n","async function isSafariPrivateBrowsing() {\n const storage = window.sessionStorage;\n\n try {\n storage.setItem(\"someKeyHere\", \"test\");\n storage.removeItem(\"someKeyHere\");\n } catch (e) {\n if (e.code === DOMException.QUOTA_EXCEEDED_ERR && storage.length === 0) {\n return true;\n }\n }\n\n return false;\n}\n\nasync function isEdgePrivateBrowsing() {\n return !window.indexedDB;\n}\n\nasync function isFirefoxPrivateBrowsing() {\n return new Promise<boolean>((resolve) => {\n const db = indexedDB.open(\"test\");\n db.onerror = () => resolve(true);\n db.onsuccess = () => resolve(false);\n });\n}\n\nasync function isPrivateBrowsing() {\n return (\n (await isFirefoxPrivateBrowsing()) ||\n (await isEdgePrivateBrowsing()) ||\n (await isSafariPrivateBrowsing())\n );\n}\n\nexport type OfflineMode = \"on\" | \"off\" | \"unavailable\";\n\nexport interface OfflineModeResult {\n current: OfflineMode;\n notAvailable: boolean;\n active: boolean;\n}\n\nconst offlineModeStorageKey = \"openmrs3:offline-mode\";\nlet offlineMode: OfflineMode = \"unavailable\";\n\nexport function getCurrentOfflineMode(): OfflineModeResult {\n return {\n current: offlineMode,\n notAvailable: offlineMode === \"unavailable\",\n active: offlineMode === \"on\",\n };\n}\n\nexport function setCurrentOfflineMode(mode: OfflineMode) {\n if (offlineMode !== \"unavailable\" && mode !== \"unavailable\") {\n localStorage.setItem(\n offlineModeStorageKey,\n mode === \"on\" ? \"active\" : \"disabled\"\n );\n offlineMode = mode;\n }\n}\n\nexport async function activateOfflineCapability() {\n const isPrivate = await isPrivateBrowsing();\n\n if (!isPrivate) {\n if (localStorage.getItem(offlineModeStorageKey) === \"active\") {\n offlineMode = \"on\";\n } else {\n offlineMode = \"off\";\n }\n }\n\n if (navigator.onLine && offlineMode === \"on\") {\n //TODO trigger here --> update cycle\n }\n}\n","const e=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:global,t=Object.keys,n=Array.isArray;function r(e,n){return\"object\"!=typeof n||t(n).forEach((function(t){e[t]=n[t]})),e}\"undefined\"==typeof Promise||e.Promise||(e.Promise=Promise);const s=Object.getPrototypeOf,i={}.hasOwnProperty;function o(e,t){return i.call(e,t)}function a(e,n){\"function\"==typeof n&&(n=n(s(e))),(\"undefined\"==typeof Reflect?t:Reflect.ownKeys)(n).forEach((t=>{l(e,t,n[t])}))}const u=Object.defineProperty;function l(e,t,n,s){u(e,t,r(n&&o(n,\"get\")&&\"function\"==typeof n.get?{get:n.get,set:n.set,configurable:!0}:{value:n,configurable:!0,writable:!0},s))}function c(e){return{from:function(t){return e.prototype=Object.create(t.prototype),l(e.prototype,\"constructor\",e),{extend:a.bind(null,e.prototype)}}}}const h=Object.getOwnPropertyDescriptor;function d(e,t){let n;return h(e,t)||(n=s(e))&&d(n,t)}const f=[].slice;function p(e,t,n){return f.call(e,t,n)}function y(e,t){return t(e)}function m(e){if(!e)throw new Error(\"Assertion Failed\")}function v(t){e.setImmediate?setImmediate(t):setTimeout(t,0)}function g(e,t){return e.reduce(((e,n,r)=>{var s=t(n,r);return s&&(e[s[0]]=s[1]),e}),{})}function b(e,t){if(o(e,t))return e[t];if(!t)return e;if(\"string\"!=typeof t){for(var n=[],r=0,s=t.length;r<s;++r){var i=b(e,t[r]);n.push(i)}return n}var a=t.indexOf(\".\");if(-1!==a){var u=e[t.substr(0,a)];return void 0===u?void 0:b(u,t.substr(a+1))}}function _(e,t,r){if(e&&void 0!==t&&(!(\"isFrozen\"in Object)||!Object.isFrozen(e)))if(\"string\"!=typeof t&&\"length\"in t){m(\"string\"!=typeof r&&\"length\"in r);for(var s=0,i=t.length;s<i;++s)_(e,t[s],r[s])}else{var o=t.indexOf(\".\");if(-1!==o){var a=t.substr(0,o),u=t.substr(o+1);if(\"\"===u)void 0===r?n(e)&&!isNaN(parseInt(a))?e.splice(a,1):delete e[a]:e[a]=r;else{var l=e[a];l||(l=e[a]={}),_(l,u,r)}}else void 0===r?n(e)&&!isNaN(parseInt(t))?e.splice(t,1):delete e[t]:e[t]=r}}function w(e){var t={};for(var n in e)o(e,n)&&(t[n]=e[n]);return t}const x=[].concat;function k(e){return x.apply([],e)}const E=\"Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey\".split(\",\").concat(k([8,16,32,64].map((e=>[\"Int\",\"Uint\",\"Float\"].map((t=>t+e+\"Array\")))))).filter((t=>e[t])),P=E.map((t=>e[t]));g(E,(e=>[e,!0]));let K=null;function O(e){K=\"undefined\"!=typeof WeakMap&&new WeakMap;const t=S(e);return K=null,t}function S(e){if(!e||\"object\"!=typeof e)return e;let t=K&&K.get(e);if(t)return t;if(n(e)){t=[],K&&K.set(e,t);for(var r=0,i=e.length;r<i;++r)t.push(S(e[r]))}else if(P.indexOf(e.constructor)>=0)t=e;else{const n=s(e);for(var a in t=n===Object.prototype?{}:Object.create(n),K&&K.set(e,t),e)o(e,a)&&(t[a]=S(e[a]))}return t}const{toString:A}={};function C(e){return A.call(e).slice(8,-1)}const j=\"undefined\"!=typeof Symbol?Symbol.iterator:\"@@iterator\",D=\"symbol\"==typeof j?function(e){var t;return null!=e&&(t=e[j])&&t.apply(e)}:function(){return null},I={};function B(e){var t,r,s,i;if(1===arguments.length){if(n(e))return e.slice();if(this===I&&\"string\"==typeof e)return[e];if(i=D(e)){for(r=[];!(s=i.next()).done;)r.push(s.value);return r}if(null==e)return[e];if(\"number\"==typeof(t=e.length)){for(r=new Array(t);t--;)r[t]=e[t];return r}return[e]}for(t=arguments.length,r=new Array(t);t--;)r[t]=arguments[t];return r}const T=\"undefined\"!=typeof Symbol?e=>\"AsyncFunction\"===e[Symbol.toStringTag]:()=>!1;var R=\"undefined\"!=typeof location&&/^(http|https):\\/\\/(localhost|127\\.0\\.0\\.1)/.test(location.href);function F(e,t){R=e,M=t}var M=()=>!0;const N=!new Error(\"\").stack;function q(){if(N)try{throw q.arguments,new Error}catch(e){return e}return new Error}function $(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(M).map((e=>\"\\n\"+e)).join(\"\")):\"\"}var U=[\"Unknown\",\"Constraint\",\"Data\",\"TransactionInactive\",\"ReadOnly\",\"Version\",\"NotFound\",\"InvalidState\",\"InvalidAccess\",\"Abort\",\"Timeout\",\"QuotaExceeded\",\"Syntax\",\"DataClone\"],L=[\"Modify\",\"Bulk\",\"OpenFailed\",\"VersionChange\",\"Schema\",\"Upgrade\",\"InvalidTable\",\"MissingAPI\",\"NoSuchDatabase\",\"InvalidArgument\",\"SubTransaction\",\"Unsupported\",\"Internal\",\"DatabaseClosed\",\"PrematureCommit\",\"ForeignAwait\"].concat(U),V={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 W(e,t){this._e=q(),this.name=e,this.message=t}function Y(e,t){return e+\". Errors: \"+Object.keys(t).map((e=>t[e].toString())).filter(((e,t,n)=>n.indexOf(e)===t)).join(\"\\n\")}function z(e,t,n,r){this._e=q(),this.failures=t,this.failedKeys=r,this.successCount=n,this.message=Y(e,t)}function G(e,t){this._e=q(),this.name=\"BulkError\",this.failures=Object.keys(t).map((e=>t[e])),this.failuresByPos=t,this.message=Y(e,t)}c(W).from(Error).extend({stack:{get:function(){return this._stack||(this._stack=this.name+\": \"+this.message+$(this._e,2))}},toString:function(){return this.name+\": \"+this.message}}),c(z).from(W),c(G).from(W);var H=L.reduce(((e,t)=>(e[t]=t+\"Error\",e)),{});const Q=W;var X=L.reduce(((e,t)=>{var n=t+\"Error\";function r(e,r){this._e=q(),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=V[t]||n,this.inner=null)}return c(r).from(Q),e[t]=r,e}),{});X.Syntax=SyntaxError,X.Type=TypeError,X.Range=RangeError;var J=U.reduce(((e,t)=>(e[t+\"Error\"]=X[t],e)),{});var Z=L.reduce(((e,t)=>(-1===[\"Syntax\",\"Type\",\"Range\"].indexOf(t)&&(e[t+\"Error\"]=X[t]),e)),{});function ee(){}function te(e){return e}function ne(e,t){return null==e||e===te?t:function(n){return t(e(n))}}function re(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function se(e,t){return e===ee?t:function(){var n=e.apply(this,arguments);void 0!==n&&(arguments[0]=n);var r=this.onsuccess,s=this.onerror;this.onsuccess=null,this.onerror=null;var i=t.apply(this,arguments);return r&&(this.onsuccess=this.onsuccess?re(r,this.onsuccess):r),s&&(this.onerror=this.onerror?re(s,this.onerror):s),void 0!==i?i:n}}function ie(e,t){return e===ee?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?re(n,this.onsuccess):n),r&&(this.onerror=this.onerror?re(r,this.onerror):r)}}function oe(e,t){return e===ee?t:function(n){var s=e.apply(this,arguments);r(n,s);var i=this.onsuccess,o=this.onerror;this.onsuccess=null,this.onerror=null;var a=t.apply(this,arguments);return i&&(this.onsuccess=this.onsuccess?re(i,this.onsuccess):i),o&&(this.onerror=this.onerror?re(o,this.onerror):o),void 0===s?void 0===a?void 0:a:r(s,a)}}function ae(e,t){return e===ee?t:function(){return!1!==t.apply(this,arguments)&&e.apply(this,arguments)}}function ue(e,t){return e===ee?t:function(){var n=e.apply(this,arguments);if(n&&\"function\"==typeof n.then){for(var r=this,s=arguments.length,i=new Array(s);s--;)i[s]=arguments[s];return n.then((function(){return t.apply(r,i)}))}return t.apply(this,arguments)}}Z.ModifyError=z,Z.DexieError=W,Z.BulkError=G;var le={};const[ce,he,de]=\"undefined\"==typeof Promise?[]:(()=>{let e=Promise.resolve();if(\"undefined\"==typeof crypto||!crypto.subtle)return[e,s(e),e];const t=crypto.subtle.digest(\"SHA-512\",new Uint8Array([0]));return[t,s(t),e]})(),fe=he&&he.then,pe=ce&&ce.constructor,ye=!!de;var me=!1,ve=de?()=>{de.then(qe)}:e.setImmediate?setImmediate.bind(null,qe):e.MutationObserver?()=>{var e=document.createElement(\"div\");new MutationObserver((()=>{qe(),e=null})).observe(e,{attributes:!0}),e.setAttribute(\"i\",\"1\")}:()=>{setTimeout(qe,0)},ge=function(e,t){Oe.push([e,t]),_e&&(ve(),_e=!1)},be=!0,_e=!0,we=[],xe=[],ke=null,Ee=te,Pe={id:\"global\",global:!0,ref:0,unhandleds:[],onunhandled:ct,pgp:!1,env:{},finalize:function(){this.unhandleds.forEach((e=>{try{ct(e[0],e[1])}catch(e){}}))}},Ke=Pe,Oe=[],Se=0,Ae=[];function Ce(e){if(\"object\"!=typeof this)throw new TypeError(\"Promises must be constructed via new\");this._listeners=[],this.onuncatched=ee,this._lib=!1;var t=this._PSD=Ke;if(R&&(this._stackHolder=q(),this._prev=null,this._numPrev=0),\"function\"!=typeof e){if(e!==le)throw new TypeError(\"Not a function\");return this._state=arguments[1],this._value=arguments[2],void(!1===this._state&&Be(this,this._value))}this._state=null,this._value=null,++t.ref,Ie(this,e)}const je={get:function(){var e=Ke,t=Qe;function n(n,r){var s=!e.global&&(e!==Ke||t!==Qe);const i=s&&!et();var o=new Ce(((t,o)=>{Re(this,new De(ut(n,e,s,i),ut(r,e,s,i),t,o,e))}));return R&&Ne(o,this),o}return n.prototype=le,n},set:function(e){l(this,\"then\",e&&e.prototype===le?je:{get:function(){return e},set:je.set})}};function De(e,t,n,r,s){this.onFulfilled=\"function\"==typeof e?e:null,this.onRejected=\"function\"==typeof t?t:null,this.resolve=n,this.reject=r,this.psd=s}function Ie(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&&$e();t&&\"function\"==typeof t.then?Ie(e,((e,n)=>{t instanceof Ce?t._then(e,n):t.then(e,n)})):(e._state=!0,e._value=t,Te(e)),n&&Ue()}}),Be.bind(null,e))}catch(t){Be(e,t)}}function Be(e,t){if(xe.push(t),null===e._state){var n=e._lib&&$e();t=Ee(t),e._state=!1,e._value=t,R&&null!==t&&\"object\"==typeof t&&!t._promise&&function(e,t,n){try{e.apply(null,n)}catch(e){t&&t(e)}}((()=>{var n=d(t,\"stack\");t._promise=e,l(t,\"stack\",{get:()=>me?n&&(n.get?n.get.apply(t):n.value):e.stack})})),function(e){we.some((t=>t._value===e._value))||we.push(e)}(e),Te(e),n&&Ue()}}function Te(e){var t=e._listeners;e._listeners=[];for(var n=0,r=t.length;n<r;++n)Re(e,t[n]);var s=e._PSD;--s.ref||s.finalize(),0===Se&&(++Se,ge((()=>{0==--Se&&Le()}),[]))}function Re(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,++Se,ge(Fe,[n,e,t])}else e._listeners.push(t)}function Fe(e,t,n){try{ke=t;var r,s=t._value;t._state?r=e(s):(xe.length&&(xe=[]),r=e(s),-1===xe.indexOf(s)&&function(e){var t=we.length;for(;t;)if(we[--t]._value===e._value)return void we.splice(t,1)}(t)),n.resolve(r)}catch(e){n.reject(e)}finally{ke=null,0==--Se&&Le(),--n.psd.ref||n.psd.finalize()}}function Me(e,t,n){if(t.length===n)return t;var r=\"\";if(!1===e._state){var s,i,o=e._value;null!=o?(s=o.name||\"Error\",i=o.message||o,r=$(o,0)):(s=o,i=\"\"),t.push(s+(i?\": \"+i:\"\")+r)}return R&&((r=$(e._stackHolder,2))&&-1===t.indexOf(r)&&t.push(r),e._prev&&Me(e._prev,t,n)),t}function Ne(e,t){var n=t?t._numPrev+1:0;n<100&&(e._prev=t,e._numPrev=n)}function qe(){$e()&&Ue()}function $e(){var e=be;return be=!1,_e=!1,e}function Ue(){var e,t,n;do{for(;Oe.length>0;)for(e=Oe,Oe=[],n=e.length,t=0;t<n;++t){var r=e[t];r[0].apply(null,r[1])}}while(Oe.length>0);be=!0,_e=!0}function Le(){var e=we;we=[],e.forEach((e=>{e._PSD.onunhandled.call(null,e._value,e)}));for(var t=Ae.slice(0),n=t.length;n;)t[--n]()}function Ve(e){return new Ce(le,!1,e)}function We(e,t){var n=Ke;return function(){var r=$e(),s=Ke;try{return st(n,!0),e.apply(this,arguments)}catch(e){t&&t(e)}finally{st(s,!1),r&&Ue()}}}a(Ce.prototype,{then:je,_then:function(e,t){Re(this,new De(null,null,e,t,Ke))},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):Ve(e))):this.then(null,(e=>e&&e.name===t?n(e):Ve(e)))},finally:function(e){return this.then((t=>(e(),t)),(t=>(e(),Ve(t))))},stack:{get:function(){if(this._stack)return this._stack;try{me=!0;var e=Me(this,[],20).join(\"\\nFrom previous: \");return null!==this._state&&(this._stack=e),e}finally{me=!1}}},timeout:function(e,t){return e<1/0?new Ce(((n,r)=>{var s=setTimeout((()=>r(new X.Timeout(t))),e);this.then(n,r).finally(clearTimeout.bind(null,s))})):this}}),\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&l(Ce.prototype,Symbol.toStringTag,\"Dexie.Promise\"),Pe.env=it(),a(Ce,{all:function(){var e=B.apply(null,arguments).map(tt);return new Ce((function(t,n){0===e.length&&t([]);var r=e.length;e.forEach(((s,i)=>Ce.resolve(s).then((n=>{e[i]=n,--r||t(e)}),n)))}))},resolve:e=>{if(e instanceof Ce)return e;if(e&&\"function\"==typeof e.then)return new Ce(((t,n)=>{e.then(t,n)}));var t=new Ce(le,!0,e);return Ne(t,ke),t},reject:Ve,race:function(){var e=B.apply(null,arguments).map(tt);return new Ce(((t,n)=>{e.map((e=>Ce.resolve(e).then(t,n)))}))},PSD:{get:()=>Ke,set:e=>Ke=e},totalEchoes:{get:()=>Qe},newPSD:Je,usePSD:ot,scheduler:{get:()=>ge,set:e=>{ge=e}},rejectionMapper:{get:()=>Ee,set:e=>{Ee=e}},follow:(e,t)=>new Ce(((n,r)=>Je(((t,n)=>{var r=Ke;r.unhandleds=[],r.onunhandled=n,r.finalize=re((function(){!function(e){function t(){e(),Ae.splice(Ae.indexOf(t),1)}Ae.push(t),++Se,ge((()=>{0==--Se&&Le()}),[])}((()=>{0===this.unhandleds.length?t():n(this.unhandleds[0])}))}),r.finalize),e()}),t,n,r)))}),pe&&(pe.allSettled&&l(Ce,\"allSettled\",(function(){const e=B.apply(null,arguments).map(tt);return new Ce((t=>{0===e.length&&t([]);let n=e.length;const r=new Array(n);e.forEach(((e,s)=>Ce.resolve(e).then((e=>r[s]={status:\"fulfilled\",value:e}),(e=>r[s]={status:\"rejected\",reason:e})).then((()=>--n||t(r)))))}))})),pe.any&&\"undefined\"!=typeof AggregateError&&l(Ce,\"any\",(function(){const e=B.apply(null,arguments).map(tt);return new Ce(((t,n)=>{0===e.length&&n(new AggregateError([]));let r=e.length;const s=new Array(r);e.forEach(((e,i)=>Ce.resolve(e).then((e=>t(e)),(e=>{s[i]=e,--r||n(new AggregateError(s))}))))}))})));const Ye={awaits:0,echoes:0,id:0};var ze=0,Ge=[],He=0,Qe=0,Xe=0;function Je(e,t,n,s){var i=Ke,o=Object.create(i);o.parent=i,o.ref=0,o.global=!1,o.id=++Xe;var a=Pe.env;o.env=ye?{Promise:Ce,PromiseProp:{value:Ce,configurable:!0,writable:!0},all:Ce.all,race:Ce.race,allSettled:Ce.allSettled,any:Ce.any,resolve:Ce.resolve,reject:Ce.reject,nthen:lt(a.nthen,o),gthen:lt(a.gthen,o)}:{},t&&r(o,t),++i.ref,o.finalize=function(){--this.parent.ref||this.parent.finalize()};var u=ot(o,e,n,s);return 0===o.ref&&o.finalize(),u}function Ze(){return Ye.id||(Ye.id=++ze),++Ye.awaits,Ye.echoes+=100,Ye.id}function et(){return!!Ye.awaits&&(0==--Ye.awaits&&(Ye.id=0),Ye.echoes=100*Ye.awaits,!0)}function tt(e){return Ye.echoes&&e&&e.constructor===pe?(Ze(),e.then((e=>(et(),e)),(e=>(et(),ht(e))))):e}function nt(e){++Qe,Ye.echoes&&0!=--Ye.echoes||(Ye.echoes=Ye.id=0),Ge.push(Ke),st(e,!0)}function rt(){var e=Ge[Ge.length-1];Ge.pop(),st(e,!1)}function st(t,n){var r=Ke;if((n?!Ye.echoes||He++&&t===Ke:!He||--He&&t===Ke)||at(n?nt.bind(null,t):rt),t!==Ke&&(Ke=t,r===Pe&&(Pe.env=it()),ye)){var s=Pe.env.Promise,i=t.env;he.then=i.nthen,s.prototype.then=i.gthen,(r.global||t.global)&&(Object.defineProperty(e,\"Promise\",i.PromiseProp),s.all=i.all,s.race=i.race,s.resolve=i.resolve,s.reject=i.reject,i.allSettled&&(s.allSettled=i.allSettled),i.any&&(s.any=i.any))}}function it(){var t=e.Promise;return ye?{Promise:t,PromiseProp:Object.getOwnPropertyDescriptor(e,\"Promise\"),all:t.all,race:t.race,allSettled:t.allSettled,any:t.any,resolve:t.resolve,reject:t.reject,nthen:he.then,gthen:t.prototype.then}:{}}function ot(e,t,n,r,s){var i=Ke;try{return st(e,!0),t(n,r,s)}finally{st(i,!1)}}function at(e){fe.call(ce,e)}function ut(e,t,n,r){return\"function\"!=typeof e?e:function(){var s=Ke;n&&Ze(),st(t,!0);try{return e.apply(this,arguments)}finally{st(s,!1),r&&at(et)}}}function lt(e,t){return function(n,r){return e.call(this,ut(n,t),ut(r,t))}}-1===(\"\"+fe).indexOf(\"[native code]\")&&(Ze=et=ee);function ct(t,n){var s;try{s=n.onuncatched(t)}catch(e){}if(!1!==s)try{var i,o={promise:n,reason:t};if(e.document&&document.createEvent?((i=document.createEvent(\"Event\")).initEvent(\"unhandledrejection\",!0,!0),r(i,o)):e.CustomEvent&&r(i=new CustomEvent(\"unhandledrejection\",{detail:o}),o),i&&e.dispatchEvent&&(dispatchEvent(i),!e.PromiseRejectionEvent&&e.onunhandledrejection))try{e.onunhandledrejection(i)}catch(e){}R&&i&&!i.defaultPrevented&&console.warn(`Unhandled rejection: ${t.stack||t}`)}catch(e){}}var ht=Ce.reject;function dt(e,t,n,r){if(e.idbdb&&(e._state.openComplete||Ke.letThrough||e._vip)){var s=e._createTransaction(t,n,e._dbSchema);try{s.create(),e._state.PR1398_maxLoop=3}catch(s){return s.name===H.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn(\"Dexie: Need to reopen db\"),e._close(),e.open().then((()=>dt(e,t,n,r)))):ht(s)}return s._promise(t,((e,t)=>Je((()=>(Ke.trans=s,r(e,t,s)))))).then((e=>s._completion.then((()=>e))))}if(e._state.openComplete)return ht(new X.DatabaseClosed(e._state.dbOpenError));if(!e._state.isBeingOpened){if(!e._options.autoOpen)return ht(new X.DatabaseClosed);e.open().catch(ee)}return e._state.dbReadyPromise.then((()=>dt(e,t,n,r)))}const ft=String.fromCharCode(65535),pt=\"Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.\",yt=[],mt=\"undefined\"!=typeof navigator&&/(MSIE|Trident|Edge)/.test(navigator.userAgent),vt=mt,gt=mt,bt=e=>!/(dexie\\.js|dexie\\.min\\.js)/.test(e);function _t(e,t){return e?t?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:e:t}const wt={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function xt(e){return\"string\"!=typeof e||/\\./.test(e)?e=>e:t=>(void 0===t[e]&&e in t&&delete(t=O(t))[e],t)}class kt{_trans(e,t,n){const r=this._tx||Ke.trans,s=this.name;function i(e,n,r){if(!r.schema[s])throw new X.NotFound(\"Table \"+s+\" not part of transaction\");return t(r.idbtrans,r)}const o=$e();try{return r&&r.db===this.db?r===Ke.trans?r._promise(e,i,n):Je((()=>r._promise(e,i,n)),{trans:r,transless:Ke.transless||Ke}):dt(this.db,e,[this.name],i)}finally{o&&Ue()}}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(n(e))return new this.db.WhereClause(this,`[${e.join(\"+\")}]`);const r=t(e);if(1===r.length)return this.where(r[0]).equals(e[r[0]]);const s=this.schema.indexes.concat(this.schema.primKey).filter((e=>e.compound&&r.every((t=>e.keyPath.indexOf(t)>=0))&&e.keyPath.every((e=>r.indexOf(e)>=0))))[0];if(s&&this.db._maxKey!==ft)return this.where(s.name).equals(s.keyPath.map((t=>e[t])));!s&&R&&console.warn(`The query ${JSON.stringify(e)} on ${this.name} would benefit of a compound index [${r.join(\"+\")}]`);const{idxByName:i}=this.schema,o=this.db._deps.indexedDB;function a(e,t){try{return 0===o.cmp(e,t)}catch(e){return!1}}const[u,l]=r.reduce((([t,r],s)=>{const o=i[s],u=e[s];return[t||o,t||!o?_t(r,o&&o.multi?e=>{const t=b(e,s);return n(t)&&t.some((e=>a(u,e)))}:e=>a(u,b(e,s))):r]}),[null,null]);return u?this.where(u.name).equals(e[u.keyPath]).filter(l):s?this.filter(l):this.where(r).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,n(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(o(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){r(this,e)}))}add(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let s=e;return r&&n&&(s=xt(r)(e)),this._trans(\"readwrite\",(e=>this.core.mutate({trans:e,type:\"add\",keys:null!=t?[t]:null,values:[s]}))).then((e=>e.numFailures?Ce.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{_(e,r,t)}catch(e){}return t}))}update(e,r){if(\"object\"!=typeof e||n(e))return this.where(\":id\").equals(e).modify(r);{const n=b(e,this.schema.primKey.keyPath);if(void 0===n)return ht(new X.InvalidArgument(\"Given object does not contain its primary key\"));try{\"function\"!=typeof r?t(r).forEach((t=>{_(e,t,r[t])})):r(e,{value:e,primKey:n})}catch(e){}return this.where(\":id\").equals(n).modify(r)}}put(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let s=e;return r&&n&&(s=xt(r)(e)),this._trans(\"readwrite\",(e=>this.core.mutate({trans:e,type:\"put\",values:[s],keys:null!=t?[t]:null}))).then((e=>e.numFailures?Ce.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{_(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?Ce.reject(e.failures[0]):void 0))}clear(){return this._trans(\"readwrite\",(e=>this.core.mutate({trans:e,type:\"deleteRange\",range:wt}))).then((e=>e.numFailures?Ce.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,s=(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 X.InvalidArgument(\"bulkAdd(): keys argument invalid on tables with inbound keys\");if(r&&r.length!==e.length)throw new X.InvalidArgument(\"Arguments objects and keys must have the same length\");const o=e.length;let a=i&&n?e.map(xt(i)):e;return this.core.mutate({trans:t,type:\"add\",keys:r,values:a,wantResults:s}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return s?t:n;throw new G(`${this.name}.bulkAdd(): ${e} of ${o} operations failed`,r)}))}))}bulkPut(e,t,n){const r=Array.isArray(t)?t:void 0,s=(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 X.InvalidArgument(\"bulkPut(): keys argument invalid on tables with inbound keys\");if(r&&r.length!==e.length)throw new X.InvalidArgument(\"Arguments objects and keys must have the same length\");const o=e.length;let a=i&&n?e.map(xt(i)):e;return this.core.mutate({trans:t,type:\"put\",keys:r,values:a,wantResults:s}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return s?t:n;throw new G(`${this.name}.bulkPut(): ${e} of ${o} 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 G(`${this.name}.bulkDelete(): ${e} of ${t} operations failed`,r)}))}}function Et(e){var r={},s=function(t,n){if(n){for(var s=arguments.length,i=new Array(s-1);--s;)i[s-1]=arguments[s];return r[t].subscribe.apply(null,i),e}if(\"string\"==typeof t)return r[t]};s.addEventType=a;for(var i=1,o=arguments.length;i<o;++i)a(arguments[i]);return s;function a(e,t,n){if(\"object\"==typeof e)return u(e);t||(t=ae),n||(n=ee);var i={subscribers:[],fire:n,subscribe:function(e){-1===i.subscribers.indexOf(e)&&(i.subscribers.push(e),i.fire=t(i.fire,e))},unsubscribe:function(e){i.subscribers=i.subscribers.filter((function(t){return t!==e})),i.fire=i.subscribers.reduce(t,n)}};return r[e]=s[e]=i,i}function u(e){t(e).forEach((function(t){var r=e[t];if(n(r))a(t,e[t][0],e[t][1]);else{if(\"asap\"!==r)throw new X.InvalidArgument(\"Invalid event config\");var s=a(t,te,(function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];s.subscribers.forEach((function(e){v((function(){e.apply(null,t)}))}))}))}}))}}function Pt(e,t){return c(t).from({prototype:e}),t}function Kt(e,t){return!(e.filter||e.algorithm||e.or)&&(t?e.justLimit:!e.replayFilter)}function Ot(e,t){e.filter=_t(e.filter,t)}function St(e,t,n){var r=e.replayFilter;e.replayFilter=r?()=>_t(r(),t()):t,e.justLimit=n&&!r}function At(e,t){if(e.isPrimKey)return t.primaryKey;const n=t.getIndexByKeyPath(e.index);if(!n)throw new X.Schema(\"KeyPath \"+e.index+\" on object store \"+t.name+\" is not indexed\");return n}function Ct(e,t,n){const r=At(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 jt(e,t,n,r){const s=e.replayFilter?_t(e.filter,e.replayFilter()):e.filter;if(e.or){const i={},a=(e,n,r)=>{if(!s||s(n,r,(e=>n.stop(e)),(e=>n.fail(e)))){var a=n.primaryKey,u=\"\"+a;\"[object ArrayBuffer]\"===u&&(u=\"\"+new Uint8Array(a)),o(i,u)||(i[u]=!0,t(e,n,r))}};return Promise.all([e.or._iterate(a,n),Dt(Ct(e,r,n),e.algorithm,a,!e.keysOnly&&e.valueMapper)])}return Dt(Ct(e,r,n),_t(e.algorithm,s),t,!e.keysOnly&&e.valueMapper)}function Dt(e,t,n,r){var s=We(r?(e,t,s)=>n(r(e),t,s):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=ee}),(t=>{e.fail(t),n=ee}))||s(e.value,e,(e=>n=e)),n()}))}))}function It(e,t){try{const n=Bt(e),r=Bt(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,s=n<r?n:r;for(let n=0;n<s;++n)if(e[n]!==t[n])return e[n]<t[n]?-1:1;return n===r?0:n<r?-1:1}(Tt(e),Tt(t));case\"Array\":return function(e,t){const n=e.length,r=t.length,s=n<r?n:r;for(let n=0;n<s;++n){const r=It(e[n],t[n]);if(0!==r)return r}return n===r?0:n<r?-1:1}(e,t)}}catch(e){}return NaN}function Bt(e){const t=typeof e;if(\"object\"!==t)return t;if(ArrayBuffer.isView(e))return\"binary\";const n=C(e);return\"ArrayBuffer\"===n?\"binary\":n}function Tt(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e)}class Rt{_read(e,t){var n=this._ctx;return n.error?n.table._trans(null,ht.bind(null,n.error)):n.table._trans(\"readonly\",e).then(t)}_write(e){var t=this._ctx;return t.error?t.table._trans(null,ht.bind(null,t.error)):t.table._trans(\"readwrite\",e,\"locked\")}_addAlgorithm(e){var t=this._ctx;t.algorithm=_t(t.algorithm,e)}_iterate(e,t){return jt(this._ctx,e,t,this._ctx.table.core)}clone(e){var t=Object.create(this.constructor.prototype),n=Object.create(this._ctx);return e&&r(n,e),t._ctx=n,t}raw(){return this._ctx.valueMapper=null,this}each(e){var t=this._ctx;return this._read((n=>jt(t,e,n,t.table.core)))}count(e){return this._read((e=>{const t=this._ctx,n=t.table.core;if(Kt(t,!0))return n.count({trans:e,query:{index:At(t,n.schema),range:t.range}}).then((e=>Math.min(e,t.limit)));var r=0;return jt(t,(()=>(++r,!1)),e,n).then((()=>r))})).then(e)}sortBy(e,t){const n=e.split(\".\").reverse(),r=n[0],s=n.length-1;function i(e,t){return t?i(e[n[t]],t-1):e[r]}var o=\"next\"===this._ctx.dir?1:-1;function a(e,t){var n=i(e,s),r=i(t,s);return n<r?-o:n>r?o:0}return this.toArray((function(e){return e.sort(a)})).then(t)}toArray(e){return this._read((e=>{var t=this._ctx;if(\"next\"===t.dir&&Kt(t,!0)&&t.limit>0){const{valueMapper:n}=t,r=At(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 jt(t,(e=>n.push(e)),e,t.table.core).then((()=>n))}}),e)}offset(e){var t=this._ctx;return e<=0||(t.offset+=e,Kt(t)?St(t,(()=>{var t=e;return(e,n)=>0===t||(1===t?(--t,!1):(n((()=>{e.advance(t),t=0})),!1))})):St(t,(()=>{var t=e;return()=>--t<0}))),this}limit(e){return this._ctx.limit=Math.min(this._ctx.limit,e),St(this._ctx,(()=>{var t=e;return function(e,n,r){return--t<=0&&n(r),t>=0}}),!0),this}until(e,t){return Ot(this._ctx,(function(n,r,s){return!e(n.value)||(r(s),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 Ot(this._ctx,(function(t){return e(t.value)})),t=this._ctx,n=e,t.isMatch=_t(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&&Kt(t,!0)&&t.limit>0)return this._read((e=>{var n=At(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 Ot(this._ctx,(function(e){var t=e.primaryKey.toString(),r=o(n,t);return n[t]=!0,!r})),this}modify(e){var n=this._ctx;return this._write((r=>{var s;if(\"function\"==typeof e)s=e;else{var i=t(e),o=i.length;s=function(t){for(var n=!1,r=0;r<o;++r){var s=i[r],a=e[s];b(t,s)!==a&&(_(t,s,a),n=!0)}return n}}const a=n.table.core,{outbound:u,extractKey:l}=a.schema.primaryKey,c=this.db._options.modifyChunkSize||200,h=[];let d=0;const f=[],p=(e,n)=>{const{failures:r,numFailures:s}=n;d+=e-s;for(let e of t(r))h.push(r[e])};return this.clone().primaryKeys().then((t=>{const i=o=>{const h=Math.min(c,t.length-o);return a.getMany({trans:r,keys:t.slice(o,o+h),cache:\"immutable\"}).then((d=>{const f=[],y=[],m=u?[]:null,v=[];for(let e=0;e<h;++e){const n=d[e],r={value:O(n),primKey:t[o+e]};!1!==s.call(r,r.value,r)&&(null==r.value?v.push(t[o+e]):u||0===It(l(n),l(r.value))?(y.push(r.value),u&&m.push(t[o+e])):(v.push(t[o+e]),f.push(r.value)))}const g=Kt(n)&&n.limit===1/0&&(\"function\"!=typeof e||e===Ft)&&{index:n.index,range:n.range};return Promise.resolve(f.length>0&&a.mutate({trans:r,type:\"add\",values:f}).then((e=>{for(let t in e.failures)v.splice(parseInt(t),1);p(f.length,e)}))).then((()=>(y.length>0||g&&\"object\"==typeof e)&&a.mutate({trans:r,type:\"put\",keys:m,values:y,criteria:g,changeSpec:\"function\"!=typeof e&&e}).then((e=>p(y.length,e))))).then((()=>(v.length>0||g&&e===Ft)&&a.mutate({trans:r,type:\"delete\",keys:v,criteria:g}).then((e=>p(v.length,e))))).then((()=>t.length>o+h&&i(o+c)))}))};return i(0).then((()=>{if(h.length>0)throw new z(\"Error modifying one or more objects\",h,d,f);return t.length}))}))}))}delete(){var e=this._ctx,t=e.range;return Kt(e)&&(e.isPrimKey&&!gt||3===t.type)?this._write((n=>{const{primaryKey:r}=e.table.core.schema,s=t;return e.table.core.count({trans:n,query:{index:r,range:s}}).then((t=>e.table.core.mutate({trans:n,type:\"deleteRange\",range:s}).then((({failures:e,lastResult:n,results:r,numFailures:s})=>{if(s)throw new z(\"Could not delete some values\",Object.keys(e).map((t=>e[t])),t-s);return t-s}))))})):this.modify(Ft)}}const Ft=(e,t)=>t.value=null;function Mt(e,t){return e<t?-1:e===t?0:1}function Nt(e,t){return e>t?-1:e===t?0:1}function qt(e,t,n){var r=e instanceof Yt?new e.Collection(e):e;return r._ctx.error=n?new n(t):new TypeError(t),r}function $t(e){return new e.Collection(e,(()=>Wt(\"\"))).limit(0)}function Ut(e,t,n,r,s,i){for(var o=Math.min(e.length,r.length),a=-1,u=0;u<o;++u){var l=t[u];if(l!==r[u])return s(e[u],n[u])<0?e.substr(0,u)+n[u]+n.substr(u+1):s(e[u],r[u])<0?e.substr(0,u)+r[u]+n.substr(u+1):a>=0?e.substr(0,a)+t[a]+n.substr(a+1):null;s(e[u],l)<0&&(a=u)}return o<r.length&&\"next\"===i?e+n.substr(e.length):o<e.length&&\"prev\"===i?e.substr(0,n.length):a<0?null:e.substr(0,a)+r[a]+n.substr(a+1)}function Lt(e,t,n,r){var s,i,o,a,u,l,c,h=n.length;if(!n.every((e=>\"string\"==typeof e)))return qt(e,\"String expected.\");function d(e){s=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),o=\"next\"===e?Mt:Nt;var t=n.map((function(e){return{lower:i(e),upper:s(e)}})).sort((function(e,t){return o(e.lower,t.lower)}));a=t.map((function(e){return e.upper})),u=t.map((function(e){return e.lower})),l=e,c=\"next\"===e?\"\":r}d(\"next\");var f=new e.Collection(e,(()=>Vt(a[0],u[h-1]+r)));f._ondirectionchange=function(e){d(e)};var p=0;return f._addAlgorithm((function(e,n,r){var s=e.key;if(\"string\"!=typeof s)return!1;var d=i(s);if(t(d,u,p))return!0;for(var f=null,y=p;y<h;++y){var m=Ut(s,d,a[y],u[y],o,l);null===m&&null===f?p=y+1:(null===f||o(f,m)>0)&&(f=m)}return n(null!==f?function(){e.continue(f+c)}:r),!1})),f}function Vt(e,t,n,r){return{type:2,lower:e,upper:t,lowerOpen:n,upperOpen:r}}function Wt(e){return{type:1,lower:e,upper:e}}class Yt{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)?$t(this):new this.Collection(this,(()=>Vt(e,t,!n,!r)))}catch(e){return qt(this,pt)}}equals(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Wt(e)))}above(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(e,void 0,!0)))}aboveOrEqual(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(e,void 0,!1)))}below(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(void 0,e,!1,!0)))}belowOrEqual(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(void 0,e)))}startsWith(e){return\"string\"!=typeof e?qt(this,\"String expected.\"):this.between(e,e+ft,!0,!0)}startsWithIgnoreCase(e){return\"\"===e?this.startsWith(e):Lt(this,((e,t)=>0===e.indexOf(t[0])),[e],ft)}equalsIgnoreCase(e){return Lt(this,((e,t)=>e===t[0]),[e],\"\")}anyOfIgnoreCase(){var e=B.apply(I,arguments);return 0===e.length?$t(this):Lt(this,((e,t)=>-1!==t.indexOf(e)),e,\"\")}startsWithAnyOfIgnoreCase(){var e=B.apply(I,arguments);return 0===e.length?$t(this):Lt(this,((e,t)=>t.some((t=>0===e.indexOf(t)))),e,ft)}anyOf(){const e=B.apply(I,arguments);let t=this._cmp;try{e.sort(t)}catch(e){return qt(this,pt)}if(0===e.length)return $t(this);const n=new this.Collection(this,(()=>Vt(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,s,i)=>{const o=n.key;for(;t(o,e[r])>0;)if(++r,r===e.length)return s(i),!1;return 0===t(o,e[r])||(s((()=>{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=B.apply(I,arguments);if(0===e.length)return new this.Collection(this);try{e.sort(this._ascending)}catch(e){return qt(this,pt)}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,s=this._descending,i=this._min,o=this._max;if(0===e.length)return $t(this);if(!e.every((e=>void 0!==e[0]&&void 0!==e[1]&&r(e[0],e[1])<=0)))return qt(this,\"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower\",X.InvalidArgument);const a=!t||!1!==t.includeLowers,u=t&&!0===t.includeUppers;let l,c=r;function h(e,t){return c(e[0],t[0])}try{l=e.reduce((function(e,t){let r=0,s=e.length;for(;r<s;++r){const s=e[r];if(n(t[0],s[1])<0&&n(t[1],s[0])>0){s[0]=i(s[0],t[0]),s[1]=o(s[1],t[1]);break}}return r===s&&e.push(t),e}),[]),l.sort(h)}catch(e){return qt(this,pt)}let d=0;const f=u?e=>r(e,l[d][1])>0:e=>r(e,l[d][1])>=0,p=a?e=>s(e,l[d][0])>0:e=>s(e,l[d][0])>=0;let y=f;const m=new this.Collection(this,(()=>Vt(l[0][0],l[l.length-1][1],!a,!u)));return m._ondirectionchange=e=>{\"next\"===e?(y=f,c=r):(y=p,c=s),l.sort(h)},m._addAlgorithm(((e,t,n)=>{for(var s=e.key;y(s);)if(++d,d===l.length)return t(n),!1;return!!function(e){return!f(e)&&!p(e)}(s)||(0===this._cmp(s,l[d][1])||0===this._cmp(s,l[d][0])||t((()=>{c===r?e.continue(l[d][0]):e.continue(l[d][1])})),!1)})),m}startsWithAnyOf(){const e=B.apply(I,arguments);return e.every((e=>\"string\"==typeof e))?0===e.length?$t(this):this.inAnyRange(e.map((e=>[e,e+ft]))):qt(this,\"startsWithAnyOf() only works with strings\")}}function zt(e){return We((function(t){return Gt(t),e(t.target.error),!1}))}function Gt(e){e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault()}const Ht=Et(null,\"storagemutated\");class Qt{_lock(){return m(!Ke.global),++this._reculock,1!==this._reculock||Ke.global||(Ke.lockOwnerFor=this),this}_unlock(){if(m(!Ke.global),0==--this._reculock)for(Ke.global||(Ke.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var e=this._blockedFuncs.shift();try{ot(e[1],e[0])}catch(e){}}return this}_locked(){return this._reculock&&Ke.lockOwnerFor!==this}create(e){if(!this.mode)return this;const t=this.db.idbdb,n=this.db._state.dbOpenError;if(m(!this.idbtrans),!e&&!t)switch(n&&n.name){case\"DatabaseClosedError\":throw new X.DatabaseClosed(n);case\"MissingAPIError\":throw new X.MissingAPI(n.message,n);default:throw new X.OpenFailed(n)}if(!this.active)throw new X.TransactionInactive;return m(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=We((t=>{Gt(t),this._reject(e.error)})),e.onabort=We((t=>{Gt(t),this.active&&this._reject(new X.Abort(e.error)),this.active=!1,this.on(\"abort\").fire(t)})),e.oncomplete=We((()=>{this.active=!1,this._resolve(),\"mutatedParts\"in e&&Ht.storagemutated.fire(e.mutatedParts)})),this}_promise(e,t,n){if(\"readwrite\"===e&&\"readwrite\"!==this.mode)return ht(new X.ReadOnly(\"Transaction is readonly\"));if(!this.active)return ht(new X.TransactionInactive);if(this._locked())return new Ce(((r,s)=>{this._blockedFuncs.push([()=>{this._promise(e,t,n).then(r,s)},Ke])}));if(n)return Je((()=>{var e=new Ce(((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 Ce(((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=Ce.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 s=t._waitingFor;return new Ce(((e,r)=>{n.then((n=>t._waitingQueue.push(We(e.bind(null,n)))),(e=>t._waitingQueue.push(We(r.bind(null,e))))).finally((()=>{t._waitingFor===s&&(t._waitingFor=null)}))}))}abort(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new X.Abort))}table(e){const t=this._memoizedTables||(this._memoizedTables={});if(o(t,e))return t[e];const n=this.schema[e];if(!n)throw new X.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 Xt(e,t,n,r,s,i,o){return{name:e,keyPath:t,unique:n,multi:r,auto:s,compound:i,src:(n&&!o?\"&\":\"\")+(r?\"*\":\"\")+(s?\"++\":\"\")+Jt(t)}}function Jt(e){return\"string\"==typeof e?e:e?\"[\"+[].join.call(e,\"+\")+\"]\":\"\"}function Zt(e,t,n){return{name:e,primKey:t,indexes:n,mappedClass:null,idxByName:g(n,(e=>[e.name,e]))}}let en=e=>{try{return e.only([[]]),en=()=>[[]],[[]]}catch(e){return en=()=>ft,ft}};function tn(e){return null==e?()=>{}:\"string\"==typeof e?function(e){return 1===e.split(\".\").length?t=>t[e]:t=>b(t,e)}(e):t=>b(t,e)}function nn(e){return[].slice.call(e)}let rn=0;function sn(e){return null==e?\":id\":\"string\"==typeof e?e:`[${e.join(\"+\")}]`}function on(e,t,r){function s(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:s,upperOpen:i}=e;return void 0===n?void 0===r?null:t.upperBound(r,!!i):void 0===r?t.lowerBound(n,!!s):t.bound(n,r,!!s,!!i)}const{schema:i,hasGetAll:o}=function(e,t){const r=nn(e.objectStoreNames);return{schema:{name:e.name,tables:r.map((e=>t.objectStore(e))).map((e=>{const{keyPath:t,autoIncrement:r}=e,s=n(t),i=null==t,o={},a={name:e.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:i,compound:s,keyPath:t,autoIncrement:r,unique:!0,extractKey:tn(t)},indexes:nn(e.indexNames).map((t=>e.index(t))).map((e=>{const{name:t,unique:r,multiEntry:s,keyPath:i}=e,a={name:t,compound:n(i),keyPath:i,unique:r,multiEntry:s,extractKey:tn(i)};return o[sn(i)]=a,a})),getIndexByKeyPath:e=>o[sn(e)]};return o[\":id\"]=a.primaryKey,null!=t&&(o[sn(t)]=a.primaryKey),a}))},hasGetAll:r.length>0&&\"getAll\"in t.objectStore(r[0])&&!(\"undefined\"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\\/|Edge\\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\\/(\\d*)/))[1]<604)}}(e,r),a=i.tables.map((e=>function(e){const t=e.name;return{name:t,schema:e,mutate:function({trans:e,type:n,keys:r,values:i,range:o}){return new Promise(((a,u)=>{a=We(a);const l=e.objectStore(t),c=null==l.keyPath,h=\"put\"===n||\"add\"===n;if(!h&&\"delete\"!==n&&\"deleteRange\"!==n)throw new Error(\"Invalid operation type: \"+n);const{length:d}=r||i||{length:1};if(r&&i&&r.length!==i.length)throw new Error(\"Given keys array must have same length as given values array.\");if(0===d)return a({numFailures:0,failures:{},results:[],lastResult:void 0});let f;const p=[],y=[];let m=0;const v=e=>{++m,Gt(e)};if(\"deleteRange\"===n){if(4===o.type)return a({numFailures:m,failures:y,results:[],lastResult:void 0});3===o.type?p.push(f=l.clear()):p.push(f=l.delete(s(o)))}else{const[e,t]=h?c?[i,r]:[i,null]:[r,null];if(h)for(let r=0;r<d;++r)p.push(f=t&&void 0!==t[r]?l[n](e[r],t[r]):l[n](e[r])),f.onerror=v;else for(let t=0;t<d;++t)p.push(f=l[n](e[t])),f.onerror=v}const g=e=>{const t=e.target.result;p.forEach(((e,t)=>null!=e.error&&(y[t]=e.error))),a({numFailures:m,failures:y,results:\"delete\"===n?r:p.map((e=>e.result)),lastResult:t})};f.onerror=e=>{v(e),g(e)},f.onsuccess=g}))},getMany:({trans:e,keys:n})=>new Promise(((r,s)=>{r=We(r);const i=e.objectStore(t),o=n.length,a=new Array(o);let u,l=0,c=0;const h=e=>{const t=e.target;a[t._pos]=t.result,++c===l&&r(a)},d=zt(s);for(let e=0;e<o;++e)null!=n[e]&&(u=i.get(n[e]),u._pos=e,u.onsuccess=h,u.onerror=d,++l);0===l&&r(a)})),get:({trans:e,key:n})=>new Promise(((r,s)=>{r=We(r);const i=e.objectStore(t).get(n);i.onsuccess=e=>r(e.target.result),i.onerror=zt(s)})),query:function(e){return n=>new Promise(((r,i)=>{r=We(r);const{trans:o,values:a,limit:u,query:l}=n,c=u===1/0?void 0:u,{index:h,range:d}=l,f=o.objectStore(t),p=h.isPrimaryKey?f:f.index(h.name),y=s(d);if(0===u)return r({result:[]});if(e){const e=a?p.getAll(y,c):p.getAllKeys(y,c);e.onsuccess=e=>r({result:e.target.result}),e.onerror=zt(i)}else{let e=0;const t=a||!(\"openKeyCursor\"in p)?p.openCursor(y):p.openKeyCursor(y),n=[];t.onsuccess=s=>{const i=t.result;return i?(n.push(a?i.value:i.primaryKey),++e===u?r({result:n}):void i.continue()):r({result:n})},t.onerror=zt(i)}}))}(o),openCursor:function({trans:e,values:n,query:r,reverse:i,unique:o}){return new Promise(((a,u)=>{a=We(a);const{index:l,range:c}=r,h=e.objectStore(t),d=l.isPrimaryKey?h:h.index(l.name),f=i?o?\"prevunique\":\"prev\":o?\"nextunique\":\"next\",p=n||!(\"openKeyCursor\"in d)?d.openCursor(s(c),f):d.openKeyCursor(s(c),f);p.onerror=zt(u),p.onsuccess=We((t=>{const n=p.result;if(!n)return void a(null);n.___id=++rn,n.done=!1;const r=n.continue.bind(n);let s=n.continuePrimaryKey;s&&(s=s.bind(n));const i=n.advance.bind(n),o=()=>{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=We(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=We(e),p.onerror=zt(t),n.fail=t,n.stop=t=>{n.stop=n.continue=n.continuePrimaryKey=n.advance=o,e(t)}})),a=()=>{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=We((e=>{p.onsuccess=a,a()})),n.continue=r,n.continuePrimaryKey=s,n.advance=i,a(),t},a(n)}),u)}))},count({query:e,trans:n}){const{index:r,range:i}=e;return new Promise(((e,o)=>{const a=n.objectStore(t),u=r.isPrimaryKey?a:a.index(r.name),l=s(i),c=l?u.count(l):u.count();c.onsuccess=We((t=>e(t.target.result))),c.onerror=zt(o)}))}}}(e))),u={};return a.forEach((e=>u[e.name]=e)),{stack:\"dbcore\",transaction:e.transaction.bind(e),table(e){if(!u[e])throw new Error(`Table '${e}' not found`);return u[e]},MIN_KEY:-1/0,MAX_KEY:en(t),schema:i}}function an({_novip:e},t){const n=t.db,r=function(e,t,{IDBKeyRange:n,indexedDB:r},s){const i=function(e,t){return t.reduce(((e,{create:t})=>({...e,...t(e)})),e)}(on(t,n,s),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 un({_novip:e},t,n,r){n.forEach((n=>{const s=r[n];t.forEach((t=>{const r=d(t,n);(!r||\"value\"in r&&void 0===r.value)&&(t===e.Transaction.prototype||t instanceof e.Transaction?l(t,n,{get(){return this.table(n)},set(e){u(this,n,{value:e,writable:!0,configurable:!0,enumerable:!0})}}):t[n]=new e.Table(n,s))}))}))}function ln({_novip:e},t){t.forEach((t=>{for(let n in t)t[n]instanceof e.Table&&delete t[n]}))}function cn(e,t){return e._cfg.version-t._cfg.version}function hn(e,n,r,s){const i=e._dbSchema,o=e._createTransaction(\"readwrite\",e._storeNames,i);o.create(r),o._completion.catch(s);const a=o._reject.bind(o),u=Ke.transless||Ke;Je((()=>{Ke.trans=o,Ke.transless=u,0===n?(t(i).forEach((e=>{fn(r,e,i[e].primKey,i[e].indexes)})),an(e,r),Ce.follow((()=>e.on.populate.fire(o))).catch(a)):function({_novip:e},n,r,s){const i=[],o=e._versions;let a=e._dbSchema=yn(e,e.idbdb,s),u=!1;function l(){return i.length?Ce.resolve(i.shift()(r.idbtrans)).then(l):Ce.resolve()}return o.filter((e=>e._cfg.version>=n)).forEach((o=>{i.push((()=>{const i=a,l=o._cfg.dbschema;mn(e,i,s),mn(e,l,s),a=e._dbSchema=l;const c=dn(i,l);c.add.forEach((e=>{fn(s,e[0],e[1].primKey,e[1].indexes)})),c.change.forEach((e=>{if(e.recreate)throw new X.Upgrade(\"Not yet support for changing primary key\");{const t=s.objectStore(e.name);e.add.forEach((e=>pn(t,e))),e.change.forEach((e=>{t.deleteIndex(e.name),pn(t,e)})),e.del.forEach((e=>t.deleteIndex(e)))}}));const h=o._cfg.contentUpgrade;if(h&&o._cfg.version>n){an(e,s),r._memoizedTables={},u=!0;let n=w(l);c.del.forEach((e=>{n[e]=i[e]})),ln(e,[e.Transaction.prototype]),un(e,[e.Transaction.prototype],t(n),n),r.schema=n;const o=T(h);let a;o&&Ze();const d=Ce.follow((()=>{if(a=h(r),a&&o){var e=et.bind(null,null);a.then(e,e)}}));return a&&\"function\"==typeof a.then?Ce.resolve(a):d.then((()=>a))}})),i.push((t=>{if(!u||!vt){!function(e,t){[].slice.call(t.db.objectStoreNames).forEach((n=>null==e[n]&&t.db.deleteObjectStore(n)))}(o._cfg.dbschema,t)}ln(e,[e.Transaction.prototype]),un(e,[e.Transaction.prototype],e._storeNames,e._dbSchema),r.schema=e._dbSchema}))})),l().then((()=>{var e,n;n=s,t(e=a).forEach((t=>{n.db.objectStoreNames.contains(t)||fn(n,t,e[t].primKey,e[t].indexes)}))}))}(e,n,o,r).catch(a)}))}function dn(e,t){const n={del:[],add:[],change:[]};let r;for(r in e)t[r]||n.del.push(r);for(r in t){const s=e[r],i=t[r];if(s){const e={name:r,def:i,recreate:!1,del:[],add:[],change:[]};if(\"\"+(s.primKey.keyPath||\"\")!=\"\"+(i.primKey.keyPath||\"\")||s.primKey.auto!==i.primKey.auto&&!mt)e.recreate=!0,n.change.push(e);else{const t=s.idxByName,r=i.idxByName;let o;for(o in t)r[o]||e.del.push(o);for(o in r){const n=t[o],s=r[o];n?n.src!==s.src&&e.change.push(s):e.add.push(s)}(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 fn(e,t,n,r){const s=e.db.createObjectStore(t,n.keyPath?{keyPath:n.keyPath,autoIncrement:n.auto}:{autoIncrement:n.auto});return r.forEach((e=>pn(s,e))),s}function pn(e,t){e.createIndex(t.name,t.keyPath,{unique:t.unique,multiEntry:t.multi})}function yn(e,t,n){const r={};return p(t.objectStoreNames,0).forEach((e=>{const t=n.objectStore(e);let s=t.keyPath;const i=Xt(Jt(s),s||\"\",!1,!1,!!t.autoIncrement,s&&\"string\"!=typeof s,!0),o=[];for(let e=0;e<t.indexNames.length;++e){const n=t.index(t.indexNames[e]);s=n.keyPath;var a=Xt(n.name,s,!!n.unique,!!n.multiEntry,!1,s&&\"string\"!=typeof s,!1);o.push(a)}r[e]=Zt(e,i,o)})),r}function mn({_novip:t},n,r){const s=r.db.objectStoreNames;for(let e=0;e<s.length;++e){const i=s[e],o=r.objectStore(i);t._hasGetAll=\"getAll\"in o;for(let e=0;e<o.indexNames.length;++e){const t=o.indexNames[e],r=o.index(t).keyPath,s=\"string\"==typeof r?r:\"[\"+p(r).join(\"+\")+\"]\";if(n[i]){const e=n[i].idxByName[s];e&&(e.name=t,delete n[i].idxByName[s],n[i].idxByName[t]=e)}}}\"undefined\"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\\/|Edge\\/)/.test(navigator.userAgent)&&e.WorkerGlobalScope&&e instanceof e.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\\/(\\d*)/))[1]<604&&(t._hasGetAll=!1)}class vn{_parseStoresSpec(e,r){t(e).forEach((t=>{if(null!==e[t]){var s=e[t].split(\",\").map(((e,t)=>{const r=(e=e.trim()).replace(/([&*]|\\+\\+)/g,\"\"),s=/^\\[/.test(r)?r.match(/^\\[(.*)\\]$/)[1].split(\"+\"):r;return Xt(r,s||null,/\\&/.test(e),/\\*/.test(e),/\\+\\+/.test(e),n(s),0===t)})),i=s.shift();if(i.multi)throw new X.Schema(\"Primary key cannot be multi-valued\");s.forEach((e=>{if(e.auto)throw new X.Schema(\"Only primary key can be marked as autoIncrement (++)\");if(!e.keyPath)throw new X.Schema(\"Index must have a name and cannot be an empty string\")})),r[t]=Zt(t,i,s)}}))}stores(e){const n=this.db;this._cfg.storesSource=this._cfg.storesSource?r(this._cfg.storesSource,e):e;const s=n._versions,i={};let o={};return s.forEach((e=>{r(i,e._cfg.storesSource),o=e._cfg.dbschema={},e._parseStoresSpec(i,o)})),n._dbSchema=o,ln(n,[n._allTables,n,n.Transaction.prototype]),un(n,[n._allTables,n,n.Transaction.prototype,this._cfg.tables],t(o),o),n._storeNames=t(o),this}upgrade(e){return this._cfg.contentUpgrade=ue(this._cfg.contentUpgrade||ee,e),this}}function gn(e,t){let n=e._dbNamesDB;return n||(n=e._dbNamesDB=new $n(\"__dbnames\",{addons:[],indexedDB:e,IDBKeyRange:t}),n.version(1).stores({dbnames:\"name\"})),n.table(\"dbnames\")}function bn(e){return e&&\"function\"==typeof e.databases}function _n(e){return Je((function(){return Ke.letThrough=!0,e()}))}function wn(){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 xn(e){const n=e._state,{indexedDB:r}=e._deps;if(n.isBeingOpened||e.idbdb)return n.dbReadyPromise.then((()=>n.dbOpenError?ht(n.dbOpenError):e));R&&(n.openCanceller._stackHolder=q()),n.isBeingOpened=!0,n.dbOpenError=null,n.openComplete=!1;const s=n.openCanceller;function i(){if(n.openCanceller!==s)throw new X.DatabaseClosed(\"db.open() was cancelled\")}let o=n.dbReadyResolve,a=null,u=!1;return Ce.race([s,(\"undefined\"==typeof navigator?Ce.resolve():wn()).then((()=>new Ce(((s,o)=>{if(i(),!r)throw new X.MissingAPI;const l=e.name,c=n.autoSchema?r.open(l):r.open(l,Math.round(10*e.verno));if(!c)throw new X.MissingAPI;c.onerror=zt(o),c.onblocked=We(e._fireOnBlocked),c.onupgradeneeded=We((t=>{if(a=c.transaction,n.autoSchema&&!e._options.allowEmptyDB){c.onerror=Gt,a.abort(),c.result.close();const e=r.deleteDatabase(l);e.onsuccess=e.onerror=We((()=>{o(new X.NoSuchDatabase(`Database ${l} doesnt exist`))}))}else{a.onerror=zt(o);var s=t.oldVersion>Math.pow(2,62)?0:t.oldVersion;u=s<1,e._novip.idbdb=c.result,hn(e,s/10,a,o)}}),o),c.onsuccess=We((()=>{a=null;const r=e._novip.idbdb=c.result,i=p(r.objectStoreNames);if(i.length>0)try{const s=r.transaction(1===(o=i).length?o[0]:o,\"readonly\");n.autoSchema?function({_novip:e},n,r){e.verno=n.version/10;const s=e._dbSchema=yn(0,n,r);e._storeNames=p(n.objectStoreNames,0),un(e,[e._allTables],t(s),s)}(e,r,s):(mn(e,e._dbSchema,s),function(e,t){const n=dn(yn(0,e.idbdb,t),e._dbSchema);return!(n.add.length||n.change.some((e=>e.add.length||e.change.length)))}(e,s)||console.warn(\"Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Some queries may fail.\")),an(e,s)}catch(e){}var o;yt.push(e),r.onversionchange=We((t=>{n.vcFired=!0,e.on(\"versionchange\").fire(t)})),r.onclose=We((t=>{e.on(\"close\").fire(t)})),u&&function({indexedDB:e,IDBKeyRange:t},n){!bn(e)&&\"__dbnames\"!==n&&gn(e,t).put({name:n}).catch(ee)}(e._deps,l),s()}),o)}))))]).then((()=>(i(),n.onReadyBeingFired=[],Ce.resolve(_n((()=>e.on.ready.fire(e.vip)))).then((function t(){if(n.onReadyBeingFired.length>0){let r=n.onReadyBeingFired.reduce(ue,ee);return n.onReadyBeingFired=[],Ce.resolve(_n((()=>r(e.vip)))).then(t)}}))))).finally((()=>{n.onReadyBeingFired=null,n.isBeingOpened=!1})).then((()=>e)).catch((t=>{n.dbOpenError=t;try{a&&a.abort()}catch(e){}return s===n.openCanceller&&e._close(),ht(t)})).finally((()=>{n.openComplete=!0,o()}))}function kn(e){var t=t=>e.next(t),r=i(t),s=i((t=>e.throw(t)));function i(e){return t=>{var i=e(t),o=i.value;return i.done?o:o&&\"function\"==typeof o.then?o.then(r,s):n(o)?Promise.all(o).then(r,s):r(o)}}return i(t)()}function En(e,t,n){var r=arguments.length;if(r<2)throw new X.InvalidArgument(\"Too few arguments\");for(var s=new Array(r-1);--r;)s[r-1]=arguments[r];n=s.pop();var i=k(s);return[e,i,n]}function Pn(e,t,n,r,s){return Ce.resolve().then((()=>{const i=Ke.transless||Ke,o=e._createTransaction(t,n,e._dbSchema,r),a={trans:o,transless:i};if(r)o.idbtrans=r.idbtrans;else try{o.create(),e._state.PR1398_maxLoop=3}catch(r){return r.name===H.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn(\"Dexie: Need to reopen db\"),e._close(),e.open().then((()=>Pn(e,t,n,null,s)))):ht(r)}const u=T(s);let l;u&&Ze();const c=Ce.follow((()=>{if(l=s.call(o,o),l)if(u){var e=et.bind(null,null);l.then(e,e)}else\"function\"==typeof l.next&&\"function\"==typeof l.throw&&(l=kn(l))}),a);return(l&&\"function\"==typeof l.then?Ce.resolve(l).then((e=>o.active?e:ht(new X.PrematureCommit(\"Transaction committed too early. See http://bit.ly/2kdckMn\")))):c.then((()=>l))).then((e=>(r&&o._resolve(),o._completion.then((()=>e))))).catch((e=>(o._reject(e),ht(e))))}))}function Kn(e,t,r){const s=n(e)?e.slice():[e];for(let e=0;e<r;++e)s.push(t);return s}const On={stack:\"dbcore\",name:\"VirtualIndexMiddleware\",level:1,create:function(e){return{...e,table(t){const n=e.table(t),{schema:r}=n,s={},i=[];function o(e,t,n){const r=sn(e),a=s[r]=s[r]||[],u=null==e?0:\"string\"==typeof e?1:e.length,l=t>0,c={...n,isVirtual:l,keyTail:t,keyLength:u,extractKey:tn(e),unique:!l&&n.unique};if(a.push(c),c.isPrimaryKey||i.push(c),u>1){o(2===u?e[0]:e.slice(0,u-1),t+1,n)}return a.sort(((e,t)=>e.keyTail-t.keyTail)),c}const a=o(r.primaryKey.keyPath,0,r.primaryKey);s[\":id\"]=[a];for(const e of r.indexes)o(e.keyPath,0,e);function u(t){const n=t.query.index;return n.isVirtual?{...t,query:{index:n,range:(r=t.query.range,s=n.keyTail,{type:1===r.type?2:r.type,lower:Kn(r.lower,r.lowerOpen?e.MAX_KEY:e.MIN_KEY,s),lowerOpen:!0,upper:Kn(r.upper,r.upperOpen?e.MIN_KEY:e.MAX_KEY,s),upperOpen:!0})}}:t;var r,s}const l={...n,schema:{...r,primaryKey:a,indexes:i,getIndexByKeyPath:function(e){const t=s[sn(e)];return t&&t[0]}},count:e=>n.count(u(e)),query:e=>n.query(u(e)),openCursor(t){const{keyTail:r,isVirtual:s,keyLength:i}=t.query.index;if(!s)return n.openCursor(t);return n.openCursor(u(t)).then((n=>n&&function(n){const s=Object.create(n,{continue:{value:function(s){null!=s?n.continue(Kn(s,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,s){n.continuePrimaryKey(Kn(t,e.MAX_KEY,r),s)}},primaryKey:{get:()=>n.primaryKey},key:{get(){const e=n.key;return 1===i?e[0]:e.slice(0,i)}},value:{get:()=>n.value}});return s}(n)))}};return l}}}};function Sn(e,n,r,s){return r=r||{},s=s||\"\",t(e).forEach((t=>{if(o(n,t)){var i=e[t],a=n[t];if(\"object\"==typeof i&&\"object\"==typeof a&&i&&a){const e=C(i);e!==C(a)?r[s+t]=n[t]:\"Object\"===e?Sn(i,a,r,s+t+\".\"):i!==a&&(r[s+t]=n[t])}else i!==a&&(r[s+t]=n[t])}else r[s+t]=void 0})),t(n).forEach((t=>{o(e,t)||(r[s+t]=n[t])})),r}const An={stack:\"dbcore\",name:\"HooksMiddleware\",level:2,create:e=>({...e,table(t){const n=e.table(t),{primaryKey:r}=n.schema,s={...n,mutate(e){const s=Ke.trans,{deleting:i,creating:a,updating:u}=s.table(t).hook;switch(e.type){case\"add\":if(a.fire===ee)break;return s._promise(\"readwrite\",(()=>l(e)),!0);case\"put\":if(a.fire===ee&&u.fire===ee)break;return s._promise(\"readwrite\",(()=>l(e)),!0);case\"delete\":if(i.fire===ee)break;return s._promise(\"readwrite\",(()=>l(e)),!0);case\"deleteRange\":if(i.fire===ee)break;return s._promise(\"readwrite\",(()=>function(e){return c(e.trans,e.range,1e4)}(e)),!0)}return n.mutate(e);function l(e){const t=Ke.trans,s=e.keys||function(e,t){return\"delete\"===t.type?t.keys:t.keys||t.values.map(e.extractKey)}(r,e);if(!s)throw new Error(\"Keys missing\");return\"delete\"!==(e=\"add\"===e.type||\"put\"===e.type?{...e,keys:s}:{...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,s).then((l=>{const c=s.map(((n,s)=>{const c=l[s],h={onerror:null,onsuccess:null};if(\"delete\"===e.type)i.fire.call(h,n,c,t);else if(\"add\"===e.type||void 0===c){const i=a.fire.call(h,n,e.values[s],t);null==n&&null!=i&&(n=i,e.keys[s]=n,r.outbound||_(e.values[s],r.keyPath,n))}else{const r=Sn(c,e.values[s]),i=u.fire.call(h,r,n,c,t);if(i){const t=e.values[s];Object.keys(i).forEach((e=>{o(t,e)?t[e]=i[e]:_(t,e,i[e])}))}}return h}));return n.mutate(e).then((({failures:t,results:n,numFailures:r,lastResult:i})=>{for(let r=0;r<s.length;++r){const i=n?n[r]:s[r],o=c[r];null==i?o.onerror&&o.onerror(t[r]):o.onsuccess&&o.onsuccess(\"put\"===e.type&&l[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,s){return n.query({trans:e,values:!1,query:{index:r,range:t},limit:s}).then((({result:n})=>l({type:\"delete\",keys:n,trans:e}).then((r=>r.numFailures>0?Promise.reject(r.failures[0]):n.length<s?{failures:[],numFailures:0,lastResult:void 0}:c(e,{...t,lower:n[n.length-1],lowerOpen:!0},s)))))}}};return s}})};function Cn(e,t,n){try{if(!t)return null;if(t.keys.length<e.length)return null;const r=[];for(let s=0,i=0;s<t.keys.length&&i<e.length;++s)0===It(t.keys[s],e[i])&&(r.push(n?O(t.values[s]):t.values[s]),++i);return r.length===e.length?r:null}catch(e){return null}}const jn={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=Cn(e.keys,e.trans._cache,\"clone\"===e.cache);return t?Ce.resolve(t):n.getMany(e).then((t=>(e.trans._cache={keys:e.keys,values:\"clone\"===e.cache?O(t):t},t)))},mutate:e=>(\"add\"!==e.type&&(e.trans._cache=null),n.mutate(e))}}})};function Dn(e){return!(\"from\"in e)}const In=function(e,t){if(!this){const t=new In;return e&&\"d\"in e&&r(t,e),t}r(this,arguments.length?{d:1,from:e,to:arguments.length>1?t:e}:{d:0})};function Bn(e,t,n){const s=It(t,n);if(isNaN(s))return;if(s>0)throw RangeError();if(Dn(e))return r(e,{from:t,to:n,d:1});const i=e.l,o=e.r;if(It(n,e.from)<0)return i?Bn(i,t,n):e.l={from:t,to:n,d:1,l:null,r:null},Mn(e);if(It(t,e.to)>0)return o?Bn(o,t,n):e.r={from:t,to:n,d:1,l:null,r:null},Mn(e);It(t,e.from)<0&&(e.from=t,e.l=null,e.d=o?o.d+1:1),It(n,e.to)>0&&(e.to=n,e.r=null,e.d=e.l?e.l.d+1:1);const a=!e.r;i&&!e.l&&Tn(e,i),o&&a&&Tn(e,o)}function Tn(e,t){Dn(t)||function e(t,{from:n,to:r,l:s,r:i}){Bn(t,n,r),s&&e(t,s),i&&e(t,i)}(e,t)}function Rn(e,t){const n=Fn(t);let r=n.next();if(r.done)return!1;let s=r.value;const i=Fn(e);let o=i.next(s.from),a=o.value;for(;!r.done&&!o.done;){if(It(a.from,s.to)<=0&&It(a.to,s.from)>=0)return!0;It(s.from,a.from)<0?s=(r=n.next(a.from)).value:a=(o=i.next(s.from)).value}return!1}function Fn(e){let t=Dn(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&&It(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||It(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 Mn(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),s=r>1?\"r\":r<-1?\"l\":\"\";if(s){const t=\"r\"===s?\"l\":\"r\",n={...e},r=e[s];e.from=r.from,e.to=r.to,e[s]=r[s],n[s]=r[t],e[t]=n,n.d=Nn(n)}e.d=Nn(e)}function Nn({r:e,l:t}){return(e?t?Math.max(e.d,t.d):e.d:t?t.d:0)+1}a(In.prototype,{add(e){return Tn(this,e),this},addKey(e){return Bn(this,e,e),this},addKeys(e){return e.forEach((e=>Bn(this,e,e))),this},[j](){return Fn(this)}});const qn={stack:\"dbcore\",level:0,create:e=>{const r=e.schema.name,s=new In(e.MIN_KEY,e.MAX_KEY);return{...e,table:i=>{const o=e.table(i),{schema:a}=o,{primaryKey:u}=a,{extractKey:l,outbound:c}=u,h={...o,mutate:e=>{const t=e.trans,u=t.mutatedParts||(t.mutatedParts={}),l=e=>{const t=`idb://${r}/${i}/${e}`;return u[t]||(u[t]=new In)},c=l(\"\"),h=l(\":dels\"),{type:d}=e;let[f,p]=\"deleteRange\"===e.type?[e.range]:\"delete\"===e.type?[e.keys]:e.values.length<50?[[],e.values]:[];const y=e.trans._cache;return o.mutate(e).then((e=>{if(n(f)){\"delete\"!==d&&(f=e.results),c.addKeys(f);const t=Cn(f,y);t||\"add\"===d||h.addKeys(f),(t||p)&&function(e,t,r,s){function i(t){const i=e(t.name||\"\");function o(e){return null!=e?t.extractKey(e):null}const a=e=>t.multiEntry&&n(e)?e.forEach((e=>i.addKey(e))):i.addKey(e);(r||s).forEach(((e,t)=>{const n=r&&o(r[t]),i=s&&o(s[t]);0!==It(n,i)&&(null!=n&&a(n),null!=i&&a(i))}))}t.indexes.forEach(i)}(l,a,t,p)}else if(f){const e={from:f.lower,to:f.upper};h.add(e),c.add(e)}else c.add(s),h.add(s),a.indexes.forEach((e=>l(e.name).add(s)));return e}))}},d=({query:{index:t,range:n}})=>{var r,s;return[t,new In(null!==(r=n.lower)&&void 0!==r?r:e.MIN_KEY,null!==(s=n.upper)&&void 0!==s?s:e.MAX_KEY)]},f={get:e=>[u,new In(e.key)],getMany:e=>[u,(new In).addKeys(e.keys)],count:d,query:d,openCursor:d};return t(f).forEach((e=>{h[e]=function(t){const{subscr:n}=Ke;if(n){const a=e=>{const t=`idb://${r}/${i}/${e}`;return n[t]||(n[t]=new In)},u=a(\"\"),h=a(\":dels\"),[d,p]=f[e](t);if(a(d.name||\"\").add(p),!d.isPrimaryKey){if(\"count\"!==e){const n=\"query\"===e&&c&&t.values&&o.query({...t,values:!1});return o[e].apply(this,arguments).then((r=>{if(\"query\"===e){if(c&&t.values)return n.then((({result:e})=>(u.addKeys(e),r)));const e=t.values?r.result.map(l):r.result;t.values?u.addKeys(e):h.addKeys(e)}else if(\"openCursor\"===e){const e=r,n=t.values;return e&&Object.create(e,{key:{get:()=>(h.addKey(e.primaryKey),e.key)},primaryKey:{get(){const t=e.primaryKey;return h.addKey(t),t}},value:{get:()=>(n&&u.addKey(e.primaryKey),e.value)}})}return r}))}h.add(s)}}return o[e].apply(this,arguments)}})),h}}}};class $n{constructor(e,t){this._middlewares={},this.verno=0;const n=$n.dependencies;this._options=t={addons:$n.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 s={dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:ee,dbReadyPromise:null,cancelOpen:ee,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3};var i;s.dbReadyPromise=new Ce((e=>{s.dbReadyResolve=e})),s.openCanceller=new Ce(((e,t)=>{s.cancelOpen=t})),this._state=s,this.name=e,this.on=Et(this,\"populate\",\"blocked\",\"versionchange\",\"close\",{ready:[ue,ee]}),this.on.ready.subscribe=y(this.on.ready.subscribe,(e=>(t,n)=>{$n.vip((()=>{const r=this._state;if(r.openComplete)r.dbOpenError||Ce.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,Pt(Rt.prototype,(function(e,t){this.db=i;let n=wt,r=null;if(t)try{n=t()}catch(e){r=e}const s=e._ctx,o=s.table,a=o.hook.reading.fire;this._ctx={table:o,index:s.index,isPrimKey:!s.index||o.schema.primKey.keyPath&&s.index===o.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:s.or,valueMapper:a!==te?a:null}}))),this.Table=function(e){return Pt(kt.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:Et(null,{creating:[se,ee],reading:[ne,te],updating:[oe,ee],deleting:[ie,ee]})}))}(this),this.Transaction=function(e){return Pt(Qt.prototype,(function(t,n,r,s,i){this.db=e,this.mode=t,this.storeNames=n,this.schema=r,this.chromeTransactionDurability=s,this.idbtrans=null,this.on=Et(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 Ce(((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(),ht(e)}))}))}(this),this.Version=function(e){return Pt(vn.prototype,(function(t){this.db=e,this._cfg={version:t,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}}))}(this),this.WhereClause=function(e){return Pt(Yt.prototype,(function(t,n,r){this.db=e,this._ctx={table:t,index:\":id\"===n?null:n,or:r};const s=e._deps.indexedDB;if(!s)throw new X.MissingAPI;this._cmp=this._ascending=s.cmp.bind(s),this._descending=(e,t)=>s.cmp(t,e),this._max=(e,t)=>s.cmp(e,t)>0?e:t,this._min=(e,t)=>s.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=en(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),yt.filter((e=>e.name===this.name&&e!==this&&!e._state.vcFired)).map((t=>t.on(\"versionchange\").fire(e)))},this.use(On),this.use(An),this.use(qn),this.use(jn),this.vip=Object.create(this,{_vip:{value:!0}}),r.forEach((e=>e(this)))}version(e){if(isNaN(e)||e<.1)throw new X.Type(\"Given version is not a positive number\");if(e=Math.round(10*e)/10,this.idbdb||this._state.isBeingOpened)throw new X.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(cn),n.stores({}),this._state.autoSchema=!1,n)}_whenReady(e){return this.idbdb&&(this._state.openComplete||Ke.letThrough||this._vip)?e():new Ce(((e,t)=>{if(this._state.openComplete)return t(new X.DatabaseClosed(this._state.dbOpenError));if(!this._state.isBeingOpened){if(!this._options.autoOpen)return void t(new X.DatabaseClosed);this.open().catch(ee)}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 s=this._middlewares[e]||(this._middlewares[e]=[]);return s.push({stack:e,create:t,level:null==n?10:n,name:r}),s.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 xn(this)}_close(){const e=this._state,t=yt.indexOf(this);if(t>=0&&yt.splice(t,1),this.idbdb){try{this.idbdb.close()}catch(e){}this._novip.idbdb=null}e.dbReadyPromise=new Ce((t=>{e.dbReadyResolve=t})),e.openCanceller=new Ce(((t,n)=>{e.cancelOpen=n}))}close(){this._close();const e=this._state;this._options.autoOpen=!1,e.dbOpenError=new X.DatabaseClosed,e.isBeingOpened&&e.cancelOpen(e.dbOpenError)}delete(){const e=arguments.length>0,t=this._state;return new Ce(((n,r)=>{const s=()=>{this.close();var e=this._deps.indexedDB.deleteDatabase(this.name);e.onsuccess=We((()=>{!function({indexedDB:e,IDBKeyRange:t},n){!bn(e)&&\"__dbnames\"!==n&&gn(e,t).delete(n).catch(ee)}(this._deps,this.name),n()})),e.onerror=zt(r),e.onblocked=this._fireOnBlocked};if(e)throw new X.InvalidArgument(\"Arguments not allowed in db.delete()\");t.isBeingOpened?t.dbReadyPromise.then(s):s()}))}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 t(this._allTables).map((e=>this._allTables[e]))}transaction(){const e=En.apply(this,arguments);return this._transaction.apply(this,e)}_transaction(e,t,n){let r=Ke.trans;r&&r.db===this&&-1===e.indexOf(\"!\")||(r=null);const s=-1!==e.indexOf(\"?\");let i,o;e=e.replace(\"!\",\"\").replace(\"?\",\"\");try{if(o=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 X.InvalidArgument(\"Invalid transaction mode: \"+e);i=\"readwrite\"}if(r){if(\"readonly\"===r.mode&&\"readwrite\"===i){if(!s)throw new X.SubTransaction(\"Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY\");r=null}r&&o.forEach((e=>{if(r&&-1===r.storeNames.indexOf(e)){if(!s)throw new X.SubTransaction(\"Table \"+e+\" not included in parent transaction.\");r=null}})),s&&r&&!r.active&&(r=null)}}catch(e){return r?r._promise(null,((t,n)=>{n(e)})):ht(e)}const a=Pn.bind(null,this,i,o,r,n);return r?r._promise(i,a,\"lock\"):Ke.trans?ot(Ke.transless,(()=>this._whenReady(a))):this._whenReady(a)}table(e){if(!o(this._allTables,e))throw new X.InvalidTable(`Table ${e} does not exist`);return this._allTables[e]}}const Un=\"undefined\"!=typeof Symbol&&\"observable\"in Symbol?Symbol.observable:\"@@observable\";class Ln{constructor(e){this._subscribe=e}subscribe(e,t,n){return this._subscribe(e&&\"function\"!=typeof e?e:{next:e,error:t,complete:n})}[Un](){return this}}function Vn(e,n){return t(n).forEach((t=>{Tn(e[t]||(e[t]=new In),n[t])})),e}function Wn(e){return new Ln((n=>{const r=T(e);let s=!1,i={},o={};const a={get closed(){return s},unsubscribe:()=>{s=!0,Ht.storagemutated.unsubscribe(h)}};n.start&&n.start(a);let u=!1,l=!1;function c(){return t(o).some((e=>i[e]&&Rn(i[e],o[e])))}const h=e=>{Vn(i,e),c()&&d()},d=()=>{if(u||s)return;i={};const t={},f=function(t){r&&Ze();const n=()=>Je(e,{subscr:t,trans:null}),s=Ke.trans?ot(Ke.transless,n):n();return r&&s.then(et,et),s}(t);l||(Ht(\"storagemutated\",h),l=!0),u=!0,Promise.resolve(f).then((e=>{u=!1,s||(c()?d():(i={},o=t,n.next&&n.next(e)))}),(e=>{u=!1,n.error&&n.error(e),a.unsubscribe()}))};return d(),a}))}let Yn;try{Yn={indexedDB:e.indexedDB||e.mozIndexedDB||e.webkitIndexedDB||e.msIndexedDB,IDBKeyRange:e.IDBKeyRange||e.webkitIDBKeyRange}}catch(e){Yn={indexedDB:null,IDBKeyRange:null}}const zn=$n;function Gn(e){let t=Hn;try{Hn=!0,Ht.storagemutated.fire(e)}finally{Hn=t}}a(zn,{...Z,delete:e=>new zn(e,{addons:[]}).delete(),exists:e=>new zn(e,{addons:[]}).open().then((e=>(e.close(),!0))).catch(\"NoSuchDatabaseError\",(()=>!1)),getDatabaseNames(e){try{return function({indexedDB:e,IDBKeyRange:t}){return bn(e)?Promise.resolve(e.databases()).then((e=>e.map((e=>e.name)).filter((e=>\"__dbnames\"!==e)))):gn(e,t).toCollection().primaryKeys()}(zn.dependencies).then(e)}catch(e){return ht(new X.MissingAPI)}},defineClass:()=>function(e){r(this,e)},ignoreTransaction:e=>Ke.trans?ot(Ke.transless,e):e(),vip:_n,async:function(e){return function(){try{var t=kn(e.apply(this,arguments));return t&&\"function\"==typeof t.then?t:Ce.resolve(t)}catch(e){return ht(e)}}},spawn:function(e,t,n){try{var r=kn(e.apply(n,t||[]));return r&&\"function\"==typeof r.then?r:Ce.resolve(r)}catch(e){return ht(e)}},currentTransaction:{get:()=>Ke.trans||null},waitFor:function(e,t){const n=Ce.resolve(\"function\"==typeof e?zn.ignoreTransaction(e):e).timeout(t||6e4);return Ke.trans?Ke.trans.waitFor(n):n},Promise:Ce,debug:{get:()=>R,set:e=>{F(e,\"dexie\"===e?()=>!0:bt)}},derive:c,extend:r,props:a,override:y,Events:Et,on:Ht,liveQuery:Wn,extendObservabilitySet:Vn,getByKeyPath:b,setByKeyPath:_,delByKeyPath:function(e,t){\"string\"==typeof t?_(e,t,void 0):\"length\"in t&&[].map.call(t,(function(t){_(e,t,void 0)}))},shallowClone:w,deepClone:O,getObjectDiff:Sn,cmp:It,asap:v,minKey:-(1/0),addons:[],connections:yt,errnames:H,dependencies:Yn,semVer:\"3.2.1\",version:\"3.2.1\".split(\".\").map((e=>parseInt(e))).reduce(((e,t,n)=>e+t/Math.pow(10,2*n)))}),zn.maxKey=en(zn.dependencies.IDBKeyRange),\"undefined\"!=typeof dispatchEvent&&\"undefined\"!=typeof addEventListener&&(Ht(\"storagemutated\",(e=>{if(!Hn){let t;mt?(t=document.createEvent(\"CustomEvent\"),t.initCustomEvent(\"x-storagemutated-1\",!0,!0,e)):t=new CustomEvent(\"x-storagemutated-1\",{detail:e}),Hn=!0,dispatchEvent(t),Hn=!1}})),addEventListener(\"x-storagemutated-1\",(({detail:e})=>{Hn||Gn(e)})));let Hn=!1;if(\"undefined\"!=typeof BroadcastChannel){const e=new BroadcastChannel(\"x-storagemutated-1\");Ht(\"storagemutated\",(t=>{Hn||e.postMessage(t)})),e.onmessage=e=>{e.data&&Gn(e.data)}}else if(\"undefined\"!=typeof self&&\"undefined\"!=typeof navigator){Ht(\"storagemutated\",(e=>{try{Hn||(\"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&&Gn(t.changedParts)}}));const e=self.document&&navigator.serviceWorker;e&&e.addEventListener(\"message\",(function({data:e}){e&&\"x-storagemutated-1\"===e.type&&Gn(e.changedParts)}))}Ce.rejectionMapper=function(e,t){if(!e||e instanceof W||e instanceof TypeError||e instanceof SyntaxError||!e.name||!J[e.name])return e;var n=new J[e.name](t||e.message,e);return\"stack\"in e&&l(n,\"stack\",{get:function(){return this.inner.stack}}),n},F(R,bt);export{$n as Dexie,In as RangeSet,$n as default,Wn as liveQuery,Tn as mergeRanges,Rn as rangesOverlap};","import Dexie, { Table } from \"dexie\";\nimport { getLoggedInUser } from \"@openmrs/esm-api\";\nimport { createGlobalStore } from \"@openmrs/esm-state\";\n\n/**\n * Defines an item queued up in the offline synchronization queue.\n * A `SyncItem` contains both meta information about the item in the sync queue, as well as the\n * actual data to be synchronized (i.e. the item's `content`).\n */\nexport interface SyncItem<T = any> {\n id?: number;\n userId: string;\n type: string;\n content: T;\n createdOn: Date;\n descriptor: QueueItemDescriptor;\n lastError?: {\n name?: string;\n message?: string;\n };\n}\n\n/**\n * Contains information about the sync item which has been provided externally by the caller\n * who added the item to the queue.\n * This information is all optional, but, when provided while enqueuing the item, can be used in other\n * locations to better represent the sync item, e.g. in the UI.\n */\nexport interface QueueItemDescriptor {\n id?: string;\n dependencies?: Array<{\n id: string;\n type: string;\n }>;\n patientUuid?: string;\n displayName?: string;\n}\n\n/**\n * A function which, when invoked, performs the actual client-server synchronization of the given\n * `item` (which is the actual data to be synchronized).\n * The function receives additional `options` which provide additional data that can be used\n * for synchronizing.\n */\nexport type ProcessSyncItem<T> = (\n item: T,\n options: SyncProcessOptions<T>\n) => Promise<any>;\n\n/**\n * Additional data which can be used for synchronizing data in a {@link ProcessSyncItem} function.\n */\nexport interface SyncProcessOptions<T> {\n abort: AbortController;\n userId: string;\n index: number;\n items: Array<T>;\n dependencies: Array<any>;\n}\n\n/**\n * Defines additional options which can optionally be provided when setting up a synchronization callback\n * for a specific synchronization item type.\n * These are not required, but, when set, allow further\n */\ninterface SetupOfflineSyncOptions<T> {\n /**\n * Invoked when the user requests to edit a sync item.\n * The typical behavior for such a callback is to launch a UI which allows editing the content\n * encapsulated by the sync item.\n * @param syncItem The sync item to be edited.\n */\n onBeginEditSyncItem?(syncItem: SyncItem<T>): void;\n}\n\n/**\n * Represents a synchronization handler which has been globally registered by the\n * {@link setupOfflineSync} function.\n * These handlers are used for synchronizing queued data.\n */\ninterface SyncHandler {\n readonly type: string;\n readonly dependsOn: ReadonlyArray<string>;\n readonly process: ProcessSyncItem<unknown>;\n readonly options: Readonly<SetupOfflineSyncOptions<any>>;\n}\n\n/**\n * Represents the data inside the global offline synchronization store.\n * Provides information about a currently ongoing synchronization.\n */\nexport interface OfflineSynchronizationStore {\n synchronization?: {\n totalCount: number;\n pendingCount: number;\n abortController: AbortController;\n };\n}\n\ninterface SyncResultBag {\n [type: string]: Record<string, any>;\n}\n\nclass OfflineDb extends Dexie {\n syncQueue: Table<SyncItem, number>;\n\n constructor() {\n super(\"EsmOffline\");\n\n this.version(3).stores({\n syncQueue: \"++id,userId,type,[userId+type]\",\n });\n\n this.syncQueue = this.table(\"syncQueue\");\n }\n}\n\nconst db = new OfflineDb();\nconst handlers: Record<string, SyncHandler> = {};\n\n/**\n * @internal Temporarily added for esm-offline-tools-app. Please don't use elsewhere.\n */\nexport function getOfflineDb() {\n return db;\n}\n\nconst syncStore = createGlobalStore<OfflineSynchronizationStore>(\n \"offline-synchronization\",\n {}\n);\n\nexport function getOfflineSynchronizationStore() {\n return syncStore;\n}\n\n/**\n * Runs a full synchronization of **all** queued synchronization items.\n */\nexport async function runSynchronization() {\n if (syncStore.getState().synchronization) {\n return;\n }\n\n const totalCount = await db.syncQueue.count();\n const promises: Record<string, Promise<void>> = {};\n const handlerQueue = Object.entries(handlers);\n const maxIter = handlerQueue.length;\n const results: SyncResultBag = {};\n const abortController = new AbortController();\n const notifySyncProgress = () => {\n const synchronization = syncStore.getState().synchronization!;\n\n syncStore.setState({\n synchronization: {\n ...synchronization,\n pendingCount: synchronization!.pendingCount - 1,\n },\n });\n };\n\n try {\n syncStore.setState({\n synchronization: {\n totalCount,\n pendingCount: totalCount,\n abortController,\n },\n });\n\n // we try until the queue is depleted, but no more than queue.length tries.\n for (let iter = 0; iter < maxIter && handlerQueue.length > 0; iter++) {\n for (let i = handlerQueue.length; i--; ) {\n const [name, handler] = handlerQueue[i];\n const deps = handler.dependsOn.map((dep) => promises[dep]);\n\n if (deps.every(Boolean)) {\n results[name] = {};\n await Promise.all(deps);\n\n promises[name] = processHandler(\n handler,\n results,\n abortController,\n notifySyncProgress\n );\n handlerQueue.splice(i, 1);\n }\n }\n }\n\n await Promise.allSettled(Object.values(promises));\n } finally {\n syncStore.setState({ synchronization: undefined });\n }\n}\n\nasync function processHandler(\n { type, dependsOn, process }: SyncHandler,\n results: SyncResultBag,\n abortController: AbortController,\n notifySyncProgress: () => void\n) {\n const table = db.syncQueue;\n const items: Array<[number, unknown, QueueItemDescriptor]> = [];\n const contents: Array<unknown> = [];\n const userId = await getUserId();\n\n await table.where({ type, userId }).each((item, cursor) => {\n items.push([cursor.primaryKey, item.content, item.descriptor]);\n contents.push(item.content);\n });\n\n for (let i = 0; i < items.length; i++) {\n const [key, item, { id, dependencies = [] }] = items[i];\n\n try {\n const result = await process(item, {\n abort: abortController,\n index: i,\n items: contents,\n userId,\n dependencies: dependencies.map(({ id, type }) =>\n dependsOn.includes(type) ? results[type][id] : undefined\n ),\n });\n\n if (id !== undefined) {\n results[type][id] = result;\n }\n\n await table.delete(key);\n } catch (e) {\n await table.update(key, {\n lastError: {\n name: e?.name,\n message: e?.message ?? e?.toString(),\n },\n });\n } finally {\n notifySyncProgress();\n }\n }\n}\n\nasync function getUserId() {\n const user = await getLoggedInUser();\n return user?.uuid || \"*\";\n}\n\n/**\n * Enqueues a new item in the sync queue for a specific user.\n * @param userId The user with whom the sync item should be associated with.\n * @param type The identifying type of the synchronization item.\n * @param content The actual data to be synchronized.\n * @param descriptor An optional descriptor providing additional metadata about the sync item.\n */\nexport async function queueSynchronizationItemFor<T>(\n userId: string,\n type: string,\n content: T,\n descriptor?: QueueItemDescriptor\n) {\n const table = db.syncQueue;\n const targetId = descriptor && descriptor.id;\n\n if (targetId !== undefined) {\n // in case of replacement (i.e., used same ID) we just remove the existing item\n await table\n .where({ type, userId })\n .filter((item) => item?.descriptor.id === targetId)\n .delete();\n }\n\n const id = await table.add({\n type,\n content,\n userId,\n descriptor: descriptor || {},\n createdOn: new Date(),\n });\n\n return id;\n}\n\n/**\n * Enqueues a new item in the sync queue and associates the item with the currently signed in user.\n * @param type The identifying type of the synchronization item.\n * @param content The actual data to be synchronized.\n * @param descriptor An optional descriptor providing additional metadata about the sync item.\n */\nexport async function queueSynchronizationItem<T>(\n type: string,\n content: T,\n descriptor?: QueueItemDescriptor\n) {\n const userId = await getUserId();\n return await queueSynchronizationItemFor(userId, type, content, descriptor);\n}\n\n/**\n * Returns all currently queued up sync items of a given user.\n * @param userId The ID of the user whose synchronization items should be returned.\n * @param type The identifying type of the synchronization items to be returned..\n */\nexport async function getSynchronizationItemsFor<T>(\n userId: string,\n type: string\n) {\n const table = db.syncQueue;\n const items: Array<T> = [];\n\n await table.where({ type, userId }).each((item) => {\n items.push(item.content);\n });\n\n return items;\n}\n\n/**\n * Returns all currently queued up sync items of the currently signed in user.\n * @param type The identifying type of the synchronization items to be returned.\n */\nexport async function getSynchronizationItems<T>(type: string) {\n const userId = await getUserId();\n return await getSynchronizationItemsFor<T>(userId, type);\n}\n\n/**\n * Returns a queued sync item with the given ID or `undefined` if no such item exists.\n * @param id The ID of the requested sync item.\n */\nexport async function getSynchronizationItem<T = any>(\n id: number\n): Promise<SyncItem<T> | undefined> {\n return await db.syncQueue.get(id);\n}\n\n/**\n * Returns whether editing synchronization items of the given type is supported by the currently\n * registered synchronization handlers.\n * @param type The identifying type of the synchronization item which should be edited.\n */\nexport function canBeginEditSynchronizationItemsOfType(type: string) {\n // Editing an item can be requested as long as callback for this flow exists on the associated handler.\n return !!handlers[type]?.options.onBeginEditSyncItem;\n}\n\n/**\n * Triggers an edit flow for the given synchronization item.\n * If this is not possible, throws an error.\n * @param id The ID of the synchronization item to be edited.\n */\nexport async function beginEditSynchronizationItem(id: number) {\n const item = await getSynchronizationItem(id);\n if (!item) {\n throw new Error(`No sync item with the ID ${id} exists.`);\n }\n\n const editCallback = handlers[item.type]?.options.onBeginEditSyncItem;\n if (!editCallback) {\n throw new Error(\n `A sync item with the ID ${id} 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 \"${item.type}\" supports editing items.`\n );\n }\n\n editCallback(item);\n}\n\n/**\n * Deletes a queued up sync item with the given ID.\n * @param id The ID of the synchronization item to be deleted.\n */\nexport async function deleteSynchronizationItem(id: number) {\n await db.syncQueue.delete(id);\n}\n\n/**\n * Registers a new synchronization handler which is able to synchronize data of a specific type.\n * @param type The identifying type of the synchronization items which can be handled by this handler.\n * @param dependsOn An array of other sync item types which must be synchronized before this handler\n * can synchronize its own data. Items of these types are effectively dependencies of the data\n * synchronized by this handler.\n * @param process A function which, when invoked, performs the actual client-server synchronization of the given\n * `item` (which is the actual data to be synchronized).\n * @param options Additional options which can optionally be provided when setting up a synchronization callback\n * for a specific synchronization item type.\n */\nexport function setupOfflineSync<T>(\n type: string,\n dependsOn: Array<string>,\n process: ProcessSyncItem<T>,\n options: SetupOfflineSyncOptions<T> = {}\n) {\n handlers[type] = {\n type,\n dependsOn,\n process,\n options,\n };\n}\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[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;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","import { v4 } from \"uuid\";\n\nexport const offlineUuidPrefix = \"OFFLINE+\";\n\n/** Generates a UUID-like string which is used for uniquely identifying objects while offline. */\nexport function generateOfflineUuid() {\n return offlineUuidPrefix + v4();\n}\n\n/** Checks whether the given string has the format of an offline UUID generated by {@link generateOfflineUuid} */\nexport function isOfflineUuid(uuid: string) {\n return uuid.startsWith(offlineUuidPrefix);\n}\n","import Dexie, { Table } from \"dexie\";\nimport { createGlobalStore } from \"@openmrs/esm-state\";\n\nexport interface OfflinePatientDataSyncStore {\n /**\n * For each patient ID of the patients whose data is currently made available offline, provides\n * the current data synchronizaton state.\n */\n offlinePatientDataSyncState: Record<string, OfflinePatientDataSyncState>;\n /**\n * Holds the list of currently registered handlers which deal with patients that should be available offline.\n * The key is a unique identifier which, once defined, should never change as it gives identity to\n * the handler registration.\n */\n handlers: Record<string, OfflinePatientDataSyncHandler>;\n}\n\nexport interface OfflinePatientDataSyncState {\n /**\n * The time when this state snapshot was initially created.\n */\n readonly timestamp: Date;\n /**\n * A list of the data sync handler registration identifiers which are still in the process\n * of synchronizing the patient's data.\n */\n readonly syncingHandlers: Array<string>;\n /**\n * A list of the data sync handler registration identifiers which successfully synchronized the\n * patient's data.\n */\n readonly syncedHandlers: Array<string>;\n /**\n * A list of the data sync handler registration identifiers which failed to synchronize the\n * patient's data.\n */\n readonly failedHandlers: Array<string>;\n /**\n * A set of error messages associated with the identifers of the failed handlers.\n */\n readonly errors: Record<string, string>;\n /**\n * Aborts the process of downloading data.\n * @returns `true` if the cancellation could be triggered (that is, if there were any syncing handlers);\n * `false` if not.\n */\n abort(): boolean;\n}\n\nexport interface OfflinePatientDataSyncHandler {\n /**\n * A name of the handler registration which can be displayed to the user.\n * This is ideally translated.\n */\n readonly displayName: string;\n /**\n * A function which is invoked when a patient is added to the app's offline patient cache.\n * Signals to the handler that the patient's data must be made available offline.\n * @param args Arguments which provide data about the patient to be made available offline.\n * @returns A promise which should resolve if all data could be cached and reject when there was an issue\n * caching the data.\n */\n onOfflinePatientAdded(args: OfflinePatientArgs): Promise<void>;\n}\n\nexport interface OfflinePatientArgs {\n /**\n * The UUID of the patient that should be made available offline.\n */\n patientUuid: string;\n /**\n * An {@link AbortSignal} which notifies about the cancellation of the operation.\n */\n signal: AbortSignal;\n}\n\nconst store = createGlobalStore<OfflinePatientDataSyncStore>(\n \"offline-patients\",\n {\n offlinePatientDataSyncState: {},\n handlers: {},\n }\n);\n\nexport function getOfflinePatientDataStore() {\n return store;\n}\n\n/**\n * Attempts to add the specified patient handler registration to the list of offline patient handlers.\n * @param identifier A key which uniquely identifies the registration.\n * @param handler The patient handler registration to be registered.\n * @returns `true` if the registration was successfully made; `false` if another registration with\n * the same identifier has already been registered before.\n */\nexport function registerOfflinePatientHandler(\n identifier: string,\n handler: OfflinePatientDataSyncHandler\n) {\n const state = store.getState();\n store.setState({\n handlers: { ...state.handlers, [identifier]: handler },\n });\n}\n\n/**\n * Notifies all registered offline patient handlers that a new patient must be made available offline.\n * @param args Arguments which provide data about the patient to be made available offline.\n * @returns A promise which resolves once all registered handlers have finished synchronizing.\n */\nexport async function syncOfflinePatientData(patientUuid: string) {\n const handlers = Object.entries(store.getState().handlers);\n const handlerIdentifiers = handlers.map(([identifier]) => identifier);\n const syncedHandlers: Array<string> = [];\n const failedHandlers: Array<string> = [];\n const errors = {};\n const abortController = new AbortController();\n\n await setPatientDataSyncState(patientUuid, {\n timestamp: new Date(),\n syncingHandlers: handlerIdentifiers,\n syncedHandlers,\n failedHandlers,\n errors,\n abort: () => {\n abortController.abort();\n return true;\n },\n });\n\n await Promise.all(\n handlers.map(async ([identifier, handler]) => {\n try {\n await handler.onOfflinePatientAdded({\n patientUuid,\n signal: abortController.signal,\n });\n // eslint-disable-next-line no-console\n console.debug(\n `Offline patient handler ${identifier} successfully synchronized patient data.`\n );\n\n syncedHandlers.push(identifier);\n } catch (e) {\n console.error(\n `Offline patient handler ${identifier} failed. Error: `,\n e\n );\n\n failedHandlers.push(identifier);\n errors[identifier] = e?.message ?? e?.toString() ?? \"\";\n }\n })\n );\n\n await setPatientDataSyncState(patientUuid, {\n timestamp: new Date(),\n syncingHandlers: [],\n syncedHandlers,\n failedHandlers,\n errors,\n abort: () => false,\n });\n}\n\nasync function setPatientDataSyncState(\n patientUuid: string,\n nextState: OfflinePatientDataSyncState\n) {\n const state = store.getState();\n store.setState({\n offlinePatientDataSyncState: {\n ...state.offlinePatientDataSyncState,\n [patientUuid]: nextState,\n },\n });\n\n const db = new OfflinePatientDataDb();\n const existingEntry = await db.offlinePatientDataSyncStates.get({\n patientUuid,\n });\n const nextEntry: OfflinePatientDataSyncStateEntry = {\n id: existingEntry?.id,\n patientUuid,\n state: {\n timestamp: nextState.timestamp,\n syncedHandlers: nextState.syncedHandlers,\n failedHandlers: [\n ...nextState.failedHandlers,\n ...nextState.syncingHandlers,\n ],\n errors: nextState.errors,\n },\n };\n\n await db.offlinePatientDataSyncStates.put(nextEntry);\n}\n\nexport async function loadPersistedPatientDataSyncState() {\n const db = new OfflinePatientDataDb();\n const persistedStates = await db.offlinePatientDataSyncStates.toArray();\n const nextState = store.getState().offlinePatientDataSyncState;\n\n for (const entry of persistedStates) {\n nextState[entry.patientUuid] = {\n ...entry.state,\n syncingHandlers: [],\n abort: () => false,\n };\n }\n\n store.setState({ offlinePatientDataSyncState: nextState });\n}\n\nclass OfflinePatientDataDb extends Dexie {\n offlinePatientDataSyncStates: Table<OfflinePatientDataSyncStateEntry, number>;\n\n constructor() {\n super(\"EsmOfflinePatientData\");\n\n this.version(1).stores({\n offlinePatientDataSyncStates: \"++id,&patientUuid\",\n });\n\n this.offlinePatientDataSyncStates = this.table(\n \"offlinePatientDataSyncStates\"\n );\n }\n}\n\ntype PersistedOfflinePatientDataSyncState = Omit<\n Omit<OfflinePatientDataSyncState, \"syncingHandlers\">,\n \"abort\"\n>;\n\ninterface OfflinePatientDataSyncStateEntry {\n id?: number;\n patientUuid: string;\n state: PersistedOfflinePatientDataSyncState;\n}\n"],"names":["resolveDirectory","exports","rootDirLevel","meta","url","console","error","Error","urlString","rootDirectoryLevel","a","document","createElement","href","pathname","numDirsProcessed","index","length","finalPath","slice","protocol","host","Number","isInteger","module","__WEBPACK_EXTERNAL_MODULE__766__","__WEBPACK_EXTERNAL_MODULE__685__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","y","__system_context__","d","definition","key","o","Object","defineProperty","enumerable","get","g","globalThis","this","Function","e","window","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","scriptUrl","importScripts","location","currentScript","src","scripts","getElementsByTagName","replace","p","autoPublicPath","self","_","n","t","Promise","MessageChannel","port1","onmessage","data","postMessage","port2","Array","iterator","isArray","toString","constructor","name","from","test","i","done","TypeError","next","bind","promise","resolve","reject","URL","u","type","assign","then","c","f","s","v","nn","tn","rn","en","on","un","an","Set","cn","fn","installing","scriptURL","sn","performance","now","vn","removeEventListener","hn","add","addEventListener","ln","target","state","sw","isExternal","originalEvent","mn","isUpdate","dispatchEvent","wn","setTimeout","waiting","clearTimeout","dn","navigator","serviceWorker","controller","gn","ports","source","getSW","has","arguments","apply","create","__proto__","l","w","register","immediate","readyState","Boolean","yn","pn","bn","once","wasWaitingBeforeRegister","update","messageSW","messageSkipWaiting","configurable","writable","Pn","Map","Sn","delete","set","workboxRegistration","registerOmrsServiceWorker","registerOptions","warn","wb","Workbox","getOmrsServiceWorker","omrsOfflineResponseBodyHttpHeaderName","omrsOfflineResponseStatusHttpHeaderName","omrsOfflineCachingStrategyHttpHeaderName","async","messageOmrsServiceWorker","message","success","result","offlineModeStorageKey","offlineMode","getCurrentOfflineMode","current","notAvailable","active","setCurrentOfflineMode","mode","localStorage","setItem","activateOfflineCapability","db","indexedDB","open","onerror","onsuccess","isFirefoxPrivateBrowsing","isEdgePrivateBrowsing","storage","sessionStorage","removeItem","code","DOMException","QUOTA_EXCEEDED_ERR","isSafariPrivateBrowsing","isPrivateBrowsing","getItem","onLine","global","keys","forEach","getPrototypeOf","Reflect","ownKeys","extend","h","getOwnPropertyDescriptor","m","setImmediate","reduce","b","push","indexOf","substr","isFrozen","isNaN","parseInt","splice","x","concat","k","E","split","map","filter","P","K","O","WeakMap","S","A","C","j","D","I","B","T","R","F","M","N","stack","q","$","join","U","L","V","VersionChanged","DatabaseClosed","Abort","TransactionInactive","MissingAPI","W","_e","Y","z","failures","failedKeys","successCount","G","failuresByPos","_stack","H","Q","X","inner","Syntax","SyntaxError","Type","Range","RangeError","J","Z","ee","te","ne","re","se","ie","oe","ae","ue","ModifyError","DexieError","BulkError","le","ce","he","de","crypto","subtle","digest","Uint8Array","fe","pe","ye","me","ve","qe","MutationObserver","observe","attributes","setAttribute","ge","Oe","be","we","xe","ke","Ee","Pe","id","ref","unhandleds","onunhandled","ct","pgp","env","finalize","Ke","Se","Ae","Ce","_listeners","onuncatched","_lib","_PSD","_stackHolder","_prev","_numPrev","_state","_value","Be","Ie","je","Qe","et","Re","De","ut","Ne","onFulfilled","onRejected","psd","$e","_then","Te","Ue","_promise","some","Le","Fe","Me","Ve","We","st","catch","finally","timeout","Timeout","it","all","tt","race","PSD","totalEchoes","newPSD","Je","usePSD","ot","scheduler","rejectionMapper","follow","allSettled","status","reason","any","AggregateError","Ye","awaits","echoes","ze","Ge","He","Xe","parent","PromiseProp","nthen","lt","gthen","Ze","ht","nt","rt","pop","at","createEvent","initEvent","CustomEvent","detail","PromiseRejectionEvent","onunhandledrejection","defaultPrevented","dt","idbdb","openComplete","letThrough","_vip","_createTransaction","_dbSchema","PR1398_maxLoop","InvalidState","isOpen","_close","trans","_completion","dbOpenError","isBeingOpened","_options","autoOpen","dbReadyPromise","ft","String","fromCharCode","pt","yt","mt","userAgent","vt","gt","bt","_t","wt","lower","lowerOpen","upper","upperOpen","xt","kt","_trans","_tx","schema","NotFound","idbtrans","transless","where","first","core","hook","reading","fire","WhereClause","equals","indexes","primKey","compound","every","keyPath","_maxKey","JSON","stringify","idxByName","_deps","cmp","multi","toCollection","and","count","offset","limit","each","toArray","Collection","orderBy","reverse","mapToClass","mappedClass","readHook","unsubscribe","defineClass","auto","mutate","values","numFailures","lastResult","modify","InvalidArgument","put","clear","range","bulkGet","getMany","bulkAdd","allKeys","wantResults","results","bulkPut","bulkDelete","Et","subscribe","addEventType","subscribers","Pt","Kt","algorithm","or","justLimit","replayFilter","Ot","St","At","isPrimKey","primaryKey","getIndexByKeyPath","Schema","Ct","openCursor","keysOnly","dir","unique","query","jt","stop","fail","_iterate","Dt","valueMapper","start","continue","It","Bt","NaN","Tt","ArrayBuffer","isView","buffer","byteOffset","byteLength","Rt","_read","_ctx","table","_write","_addAlgorithm","clone","raw","Math","min","sortBy","sort","advance","until","last","isMatch","_ondirectionchange","desc","eachKey","eachUniqueKey","eachPrimaryKey","primaryKeys","uniqueKeys","firstKey","lastKey","distinct","outbound","extractKey","modifyChunkSize","cache","Ft","criteria","changeSpec","Mt","Nt","qt","Yt","$t","Wt","Ut","Lt","toUpperCase","toLowerCase","Vt","between","_cmp","above","aboveOrEqual","below","belowOrEqual","startsWith","startsWithIgnoreCase","equalsIgnoreCase","anyOfIgnoreCase","startsWithAnyOfIgnoreCase","anyOf","_ascending","_descending","notEqual","inAnyRange","includeLowers","includeUppers","noneOf","_min","_max","startsWithAnyOf","zt","Gt","stopPropagation","preventDefault","Ht","Qt","_lock","_reculock","lockOwnerFor","_unlock","_blockedFuncs","_locked","shift","OpenFailed","transaction","storeNames","durability","chromeTransactionDurability","_reject","onabort","oncomplete","_resolve","storagemutated","mutatedParts","ReadOnly","_root","waitFor","_waitingFor","_waitingQueue","objectStore","_spinCount","abort","_memoizedTables","Table","Xt","Jt","Zt","only","_novip","IDBKeyRange","upperBound","lowerBound","bound","hasGetAll","objectStoreNames","tables","autoIncrement","isPrimaryKey","indexNames","multiEntry","match","_pos","getAll","getAllKeys","openKeyCursor","___id","continuePrimaryKey","MIN_KEY","MAX_KEY","dbcore","_middlewares","Transaction","_cfg","version","del","change","def","recreate","createObjectStore","createIndex","_hasGetAll","WorkerGlobalScope","_parseStoresSpec","trim","stores","storesSource","_versions","dbschema","_allTables","_storeNames","upgrade","contentUpgrade","_dbNamesDB","$n","addons","dbnames","databases","_n","userAgentData","setInterval","clearInterval","kn","throw","En","PrematureCommit","Kn","On","level","isVirtual","keyTail","keyLength","An","deleting","creating","updating","Cn","jn","_cache","Dn","In","to","Bn","Mn","Tn","Fn","up","Nn","max","addKey","addKeys","qn","subscr","verno","dependencies","onReadyBeingFired","dbReadyResolve","cancelOpen","openCanceller","autoSchema","ready","vip","complete","Version","_IDBKeyRange","newVersion","close","oldVersion","_fireOnBlocked","vcFired","use","round","_whenReady","unuse","onblocked","onupgradeneeded","allowEmptyDB","deleteDatabase","NoSuchDatabase","pow","populate","Upgrade","deleteIndex","deleteObjectStore","contains","onversionchange","onclose","xn","backendDB","hasBeenClosed","hasFailed","dynamicallyOpened","_transaction","SubTransaction","InvalidTable","Un","observable","Ln","_subscribe","Vn","Yn","mozIndexedDB","webkitIndexedDB","msIndexedDB","webkitIDBKeyRange","zn","Gn","Hn","exists","getDatabaseNames","ignoreTransaction","spawn","currentTransaction","debug","derive","props","override","Events","liveQuery","closed","Rn","extendObservabilitySet","getByKeyPath","setByKeyPath","delByKeyPath","shallowClone","deepClone","getObjectDiff","asap","minKey","connections","errnames","semVer","maxKey","initCustomEvent","BroadcastChannel","trig","random","changedParts","clients","matchAll","includeUncontrolled","parse","newValue","Dexie","super","syncQueue","handlers","getOfflineDb","syncStore","createGlobalStore","getOfflineSynchronizationStore","runSynchronization","getState","synchronization","totalCount","promises","handlerQueue","entries","maxIter","abortController","AbortController","notifySyncProgress","setState","pendingCount","iter","handler","deps","dependsOn","dep","processHandler","process","items","contents","userId","getUserId","item","cursor","content","descriptor","includes","lastError","getLoggedInUser","uuid","queueSynchronizationItemFor","targetId","createdOn","Date","queueSynchronizationItem","getSynchronizationItemsFor","getSynchronizationItems","getSynchronizationItem","canBeginEditSynchronizationItemsOfType","options","onBeginEditSyncItem","beginEditSynchronizationItem","editCallback","deleteSynchronizationItem","setupOfflineSync","getRandomValues","rnds8","rng","msCrypto","byteToHex","buf","rnds","arr","offlineUuidPrefix","generateOfflineUuid","v4","isOfflineUuid","store","offlinePatientDataSyncState","getOfflinePatientDataStore","registerOfflinePatientHandler","identifier","syncOfflinePatientData","patientUuid","handlerIdentifiers","syncedHandlers","failedHandlers","errors","setPatientDataSyncState","timestamp","syncingHandlers","onOfflinePatientAdded","signal","nextState","OfflinePatientDataDb","nextEntry","offlinePatientDataSyncStates","loadPersistedPatientDataSyncState","persistedStates","entry"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"openmrs-esm-offline.js","mappings":"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","sources":["webpack://@openmrs/esm-offline/../../../node_modules/systemjs-webpack-interop/auto-public-path/auto-public-path.js","webpack://@openmrs/esm-offline/../../../node_modules/systemjs-webpack-interop/public-path.js","webpack://@openmrs/esm-offline/external system \"@openmrs/esm-api\"","webpack://@openmrs/esm-offline/external system \"@openmrs/esm-state\"","webpack://@openmrs/esm-offline/webpack/bootstrap","webpack://@openmrs/esm-offline/webpack/runtime/__system_context__","webpack://@openmrs/esm-offline/webpack/runtime/define property getters","webpack://@openmrs/esm-offline/webpack/runtime/global","webpack://@openmrs/esm-offline/webpack/runtime/hasOwnProperty shorthand","webpack://@openmrs/esm-offline/webpack/runtime/make namespace object","webpack://@openmrs/esm-offline/webpack/runtime/publicPath","webpack://@openmrs/esm-offline/../../../node_modules/systemjs-webpack-interop/auto-public-path/1.js","webpack://@openmrs/esm-offline/../../../node_modules/workbox-window/build/workbox-window.prod.es5.mjs","webpack://@openmrs/esm-offline/./src/service-worker.ts","webpack://@openmrs/esm-offline/./src/service-worker-http-headers.ts","webpack://@openmrs/esm-offline/./src/service-worker-messaging.ts","webpack://@openmrs/esm-offline/./src/mode.ts","webpack://@openmrs/esm-offline/../../../node_modules/dexie/dist/modern/dexie.min.mjs","webpack://@openmrs/esm-offline/./src/sync.ts","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/rng.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/regex.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/validate.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/stringify.js","webpack://@openmrs/esm-offline/./node_modules/uuid/dist/esm-browser/v4.js","webpack://@openmrs/esm-offline/./src/uuid.ts","webpack://@openmrs/esm-offline/./src/offline-patient-data.ts"],"sourcesContent":["const resolveDirectory = require(\"../public-path\").resolveDirectory;\n\nexports.autoPublicPath = function autoPublicPath(rootDirLevel) {\n if (!rootDirLevel) {\n rootDirLevel = 1;\n }\n\n if (typeof __webpack_public_path__ !== \"undefined\") {\n if (typeof __system_context__ === \"undefined\") {\n throw Error(\n \"systemjs-webpack-interop requires webpack@>=5.0.0-beta.15 and output.libraryTarget set to 'system'\"\n );\n }\n\n if (!__system_context__.meta || !__system_context__.meta.url) {\n console.error(\"__system_context__\", __system_context__);\n throw Error(\n \"systemjs-webpack-interop was provided an unknown SystemJS context. Expected context.meta.url, but none was provided\"\n );\n }\n\n __webpack_public_path__ = resolveDirectory(\n __system_context__.meta.url,\n rootDirLevel\n );\n }\n};\n","exports.setPublicPath = function setPublicPath(\n systemjsModuleName,\n rootDirectoryLevel\n) {\n if (!rootDirectoryLevel) {\n rootDirectoryLevel = 1;\n }\n if (\n typeof systemjsModuleName !== \"string\" ||\n systemjsModuleName.trim().length === 0\n ) {\n throw Error(\n \"systemjs-webpack-interop: setPublicPath(systemjsModuleName) must be called with a non-empty string 'systemjsModuleName'\"\n );\n }\n\n if (\n typeof rootDirectoryLevel !== \"number\" ||\n rootDirectoryLevel <= 0 ||\n isNaN(rootDirectoryLevel) ||\n !isInteger(rootDirectoryLevel)\n ) {\n throw Error(\n \"systemjs-webpack-interop: setPublicPath(systemjsModuleName, rootDirectoryLevel) must be called with a positive integer 'rootDirectoryLevel'\"\n );\n }\n\n var moduleUrl;\n try {\n moduleUrl = window.System.resolve(systemjsModuleName);\n if (!moduleUrl) {\n throw Error();\n }\n } catch (err) {\n throw Error(\n \"systemjs-webpack-interop: There is no such module '\" +\n systemjsModuleName +\n \"' in the SystemJS registry. Did you misspell the name of your module?\"\n );\n }\n\n __webpack_public_path__ = resolveDirectory(moduleUrl, rootDirectoryLevel);\n};\n\nfunction resolveDirectory(urlString, rootDirectoryLevel) {\n // Our friend IE11 doesn't support new URL()\n // https://github.com/single-spa/single-spa/issues/612\n // https://gist.github.com/jlong/2428561\n\n var a = document.createElement(\"a\");\n a.href = urlString;\n\n var pathname = a.pathname[0] === \"/\" ? a.pathname : \"/\" + a.pathname;\n var numDirsProcessed = 0,\n index = pathname.length;\n while (numDirsProcessed !== rootDirectoryLevel && index >= 0) {\n var char = pathname[--index];\n if (char === \"/\") {\n numDirsProcessed++;\n }\n }\n\n if (numDirsProcessed !== rootDirectoryLevel) {\n throw Error(\n \"systemjs-webpack-interop: rootDirectoryLevel (\" +\n rootDirectoryLevel +\n \") is greater than the number of directories (\" +\n numDirsProcessed +\n \") in the URL path \" +\n urlString\n );\n }\n\n var finalPath = pathname.slice(0, index + 1);\n\n return a.protocol + \"//\" + a.host + finalPath;\n}\n\nexports.resolveDirectory = resolveDirectory;\n\n// borrowed from https://github.com/parshap/js-is-integer/blob/master/index.js\nvar isInteger =\n Number.isInteger ||\n function isInteger(val) {\n return typeof val === \"number\" && isFinite(val) && Math.floor(val) === val;\n };\n","module.exports = __WEBPACK_EXTERNAL_MODULE__766__;","module.exports = __WEBPACK_EXTERNAL_MODULE__685__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.y = __system_context__;","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) scriptUrl = scripts[scripts.length - 1].src\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","const autoPublicPath = require(\"./auto-public-path\").autoPublicPath;\n\nautoPublicPath(1);\n","try{self[\"workbox:window:6.5.1\"]&&_()}catch(n){}function n(n,t){return new Promise((function(r){var e=new MessageChannel;e.port1.onmessage=function(n){r(n.data)},n.postMessage(t,[e.port2])}))}function t(n,t){for(var r=0;r<t.length;r++){var e=t[r];e.enumerable=e.enumerable||!1,e.configurable=!0,\"value\"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}function r(n,t){(null==t||t>n.length)&&(t=n.length);for(var r=0,e=new Array(t);r<t;r++)e[r]=n[r];return e}function e(n,t){var e;if(\"undefined\"==typeof Symbol||null==n[Symbol.iterator]){if(Array.isArray(n)||(e=function(n,t){if(n){if(\"string\"==typeof n)return r(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);return\"Object\"===e&&n.constructor&&(e=n.constructor.name),\"Map\"===e||\"Set\"===e?Array.from(n):\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?r(n,t):void 0}}(n))||t&&n&&\"number\"==typeof n.length){e&&(n=e);var i=0;return function(){return i>=n.length?{done:!0}:{done:!1,value:n[i++]}}}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(e=n[Symbol.iterator]()).next.bind(e)}try{self[\"workbox:core:6.5.1\"]&&_()}catch(n){}var i=function(){var n=this;this.promise=new Promise((function(t,r){n.resolve=t,n.reject=r}))};function o(n,t){var r=location.href;return new URL(n,r).href===new URL(t,r).href}var u=function(n,t){this.type=n,Object.assign(this,t)};function a(n,t,r){return r?t?t(n):n:(n&&n.then||(n=Promise.resolve(n)),t?n.then(t):n)}function c(){}var f={type:\"SKIP_WAITING\"};function s(n,t){if(!t)return n&&n.then?n.then(c):Promise.resolve()}var v=function(r){var e,c;function v(n,t){var e,c;return void 0===t&&(t={}),(e=r.call(this)||this).nn={},e.tn=0,e.rn=new i,e.en=new i,e.on=new i,e.un=0,e.an=new Set,e.cn=function(){var n=e.fn,t=n.installing;e.tn>0||!o(t.scriptURL,e.sn.toString())||performance.now()>e.un+6e4?(e.vn=t,n.removeEventListener(\"updatefound\",e.cn)):(e.hn=t,e.an.add(t),e.rn.resolve(t)),++e.tn,t.addEventListener(\"statechange\",e.ln)},e.ln=function(n){var t=e.fn,r=n.target,i=r.state,o=r===e.vn,a={sw:r,isExternal:o,originalEvent:n};!o&&e.mn&&(a.isUpdate=!0),e.dispatchEvent(new u(i,a)),\"installed\"===i?e.wn=self.setTimeout((function(){\"installed\"===i&&t.waiting===r&&e.dispatchEvent(new u(\"waiting\",a))}),200):\"activating\"===i&&(clearTimeout(e.wn),o||e.en.resolve(r))},e.dn=function(n){var t=e.hn,r=t!==navigator.serviceWorker.controller;e.dispatchEvent(new u(\"controlling\",{isExternal:r,originalEvent:n,sw:t,isUpdate:e.mn})),r||e.on.resolve(t)},e.gn=(c=function(n){var t=n.data,r=n.ports,i=n.source;return a(e.getSW(),(function(){e.an.has(i)&&e.dispatchEvent(new u(\"message\",{data:t,originalEvent:n,ports:r,sw:i}))}))},function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];try{return Promise.resolve(c.apply(this,n))}catch(n){return Promise.reject(n)}}),e.sn=n,e.nn=t,navigator.serviceWorker.addEventListener(\"message\",e.gn),e}c=r,(e=v).prototype=Object.create(c.prototype),e.prototype.constructor=e,e.__proto__=c;var h,l,m,w=v.prototype;return w.register=function(n){var t=(void 0===n?{}:n).immediate,r=void 0!==t&&t;try{var e=this;return function(n,t){var r=n();if(r&&r.then)return r.then(t);return t(r)}((function(){if(!r&&\"complete\"!==document.readyState)return s(new Promise((function(n){return window.addEventListener(\"load\",n)})))}),(function(){return e.mn=Boolean(navigator.serviceWorker.controller),e.yn=e.pn(),a(e.bn(),(function(n){e.fn=n,e.yn&&(e.hn=e.yn,e.en.resolve(e.yn),e.on.resolve(e.yn),e.yn.addEventListener(\"statechange\",e.ln,{once:!0}));var t=e.fn.waiting;return t&&o(t.scriptURL,e.sn.toString())&&(e.hn=t,Promise.resolve().then((function(){e.dispatchEvent(new u(\"waiting\",{sw:t,wasWaitingBeforeRegister:!0}))})).then((function(){}))),e.hn&&(e.rn.resolve(e.hn),e.an.add(e.hn)),e.fn.addEventListener(\"updatefound\",e.cn),navigator.serviceWorker.addEventListener(\"controllerchange\",e.dn),e.fn}))}))}catch(n){return Promise.reject(n)}},w.update=function(){try{return this.fn?s(this.fn.update()):void 0}catch(n){return Promise.reject(n)}},w.getSW=function(){return void 0!==this.hn?Promise.resolve(this.hn):this.rn.promise},w.messageSW=function(t){try{return a(this.getSW(),(function(r){return n(r,t)}))}catch(n){return Promise.reject(n)}},w.messageSkipWaiting=function(){this.fn&&this.fn.waiting&&n(this.fn.waiting,f)},w.pn=function(){var n=navigator.serviceWorker.controller;return n&&o(n.scriptURL,this.sn.toString())?n:void 0},w.bn=function(){try{var n=this;return function(n,t){try{var r=n()}catch(n){return t(n)}if(r&&r.then)return r.then(void 0,t);return r}((function(){return a(navigator.serviceWorker.register(n.sn,n.nn),(function(t){return n.un=performance.now(),t}))}),(function(n){throw n}))}catch(n){return Promise.reject(n)}},h=v,(l=[{key:\"active\",get:function(){return this.en.promise}},{key:\"controlling\",get:function(){return this.on.promise}}])&&t(h.prototype,l),m&&t(h,m),v}(function(){function n(){this.Pn=new Map}var t=n.prototype;return t.addEventListener=function(n,t){this.Sn(n).add(t)},t.removeEventListener=function(n,t){this.Sn(n).delete(t)},t.dispatchEvent=function(n){n.target=this;for(var t,r=e(this.Sn(n.type));!(t=r()).done;){(0,t.value)(n)}},t.Sn=function(n){return this.Pn.has(n)||this.Pn.set(n,new Set),this.Pn.get(n)},n}());export{v as Workbox,u as WorkboxEvent,n as messageSW};\n//# sourceMappingURL=workbox-window.prod.es5.mjs.map\n","import { Workbox } from \"workbox-window\";\n\nlet workboxRegistration: Promise<Workbox> | undefined = undefined;\n\n/**\n * If not yet registered, registers the application's global Service Worker.\n * Throws if registration is not possible.\n * @param scriptURL The service worker script associated with this instance.\n * @param [registerOptions] The service worker options associated with this instance.\n * @returns A promise which resolves to the registered {@link Workbox} instance which manages the SW.\n */\nexport function registerOmrsServiceWorker(\n scriptUrl: string,\n registerOptions?: object\n) {\n if (workboxRegistration !== undefined) {\n console.warn(\n `The application's Service Worker has already been registered. The new service worker at ${scriptUrl} will not be registered.`\n );\n return workboxRegistration;\n }\n\n if (!(\"serviceWorker\" in navigator)) {\n throw new Error(\n \"Registering the Service Worker is not possible due to missing browser capabilities.\"\n );\n }\n\n const wb = new Workbox(scriptUrl, registerOptions);\n workboxRegistration = wb.register().then(() => wb);\n return workboxRegistration;\n}\n\n/**\n * If a service worker has been registered, returns a promise that resolves to a {@link Workbox}\n * instance which is used by the application to manage that service worker.\n *\n * If no service worker has been registered (e.g. when the application is built without offline specific features),\n * returns a promise which immediately resolves to `undefined`.\n * @returns A promise which either resolves to `undefined` or to the app's {@link Workbox} instance.\n */\nexport function getOmrsServiceWorker(): Promise<Workbox | undefined> {\n return workboxRegistration ?? Promise.resolve(undefined);\n}\n","/** @module @category Offline */\n\nexport const omrsOfflineResponseBodyHttpHeaderName =\n \"x-omrs-offline-response-body\";\nexport const omrsOfflineResponseStatusHttpHeaderName =\n \"x-omrs-offline-response-status\";\nexport const omrsOfflineCachingStrategyHttpHeaderName =\n \"x-omrs-offline-caching-strategy\";\n\n/**\n *\n *\n * * `cache-or-network`: The default strategy, equal to the absence of this header.\n * The SW attempts to resolve the request via the network, but falls back to the cache if required.\n * The service worker decides the strategy to be used.\n * * `network-first`: See https://developers.google.com/web/tools/workbox/modules/workbox-strategies#network_first_network_falling_back_to_cache.\n */\nexport type OmrsOfflineCachingStrategy =\n | \"network-only-or-cache-only\"\n | \"network-first\";\n\n/**\n * Defines the keys of the custom headers which can be appended to an HTTP request.\n * HTTP requests with these headers are handled in a special way by the SPA's service worker.\n */\nexport type OmrsOfflineHttpHeaders = {\n /**\n * If the client is offline and the request cannot be read from the cache (i.e. if there is no way\n * to receive any kind of data for this request), the service worker will return a response with\n * the body in this header.\n */\n [omrsOfflineResponseBodyHttpHeaderName]?: string;\n /**\n * If the client is offline and the request cannot be read from the cache (i.e. if there is no way\n * to receive any kind of data for this request), the service worker will return a response with\n * the status code defined in this header.\n */\n [omrsOfflineResponseStatusHttpHeaderName]?: `${number}`;\n /**\n * Instructs the service worker to use a specific caching strategy for this request.\n */\n [omrsOfflineCachingStrategyHttpHeaderName]?: OmrsOfflineCachingStrategy;\n};\n\nexport type OmrsOfflineHttpHeaderNames = keyof OmrsOfflineHttpHeaders;\n","/** @module @category Offline */\nimport type { ImportMap } from \"@openmrs/esm-globals\";\nimport { OmrsOfflineCachingStrategy } from \"./service-worker-http-headers\";\nimport { getOmrsServiceWorker } from \"./service-worker\";\n\n/**\n * Sends the specified message to the application's service worker.\n * @param message The message to be sent.\n * @returns A promise which completes when the message has been successfully processed by the Service Worker.\n */\nexport async function messageOmrsServiceWorker(\n message: KnownOmrsServiceWorkerMessages\n): Promise<MessageServiceWorkerResult<any>> {\n const sw = await getOmrsServiceWorker();\n return sw\n ? await sw.messageSW(message)\n : {\n success: false,\n result: undefined,\n error:\n \"No service worker has been registered. This is typically the case when the application has been built without offline-related features.\",\n };\n}\n\nexport interface OmrsServiceWorkerMessage<\n MessageTypeTypeIdentifier extends string\n> {\n type: MessageTypeTypeIdentifier;\n}\n\nexport interface OnImportMapChangedMessage\n extends OmrsServiceWorkerMessage<\"onImportMapChanged\"> {\n importMap: ImportMap;\n}\n\nexport interface ClearDynamicRoutesMessage\n extends OmrsServiceWorkerMessage<\"clearDynamicRoutes\"> {}\n\nexport interface RegisterDynamicRouteMessage\n extends OmrsServiceWorkerMessage<\"registerDynamicRoute\"> {\n pattern?: string;\n url?: string;\n strategy?: OmrsOfflineCachingStrategy;\n}\n\nexport type KnownOmrsServiceWorkerMessages =\n | OnImportMapChangedMessage\n | ClearDynamicRoutesMessage\n | RegisterDynamicRouteMessage;\n\nexport interface MessageServiceWorkerResult<T> {\n success: boolean;\n result?: T;\n error?: string;\n}\n","/** @module @category Offline */\n\nasync function isSafariPrivateBrowsing() {\n const storage = window.sessionStorage;\n\n try {\n storage.setItem(\"someKeyHere\", \"test\");\n storage.removeItem(\"someKeyHere\");\n } catch (e) {\n if (e.code === DOMException.QUOTA_EXCEEDED_ERR && storage.length === 0) {\n return true;\n }\n }\n\n return false;\n}\n\nasync function isEdgePrivateBrowsing() {\n return !window.indexedDB;\n}\n\nasync function isFirefoxPrivateBrowsing() {\n return new Promise<boolean>((resolve) => {\n const db = indexedDB.open(\"test\");\n db.onerror = () => resolve(true);\n db.onsuccess = () => resolve(false);\n });\n}\n\nasync function isPrivateBrowsing() {\n return (\n (await isFirefoxPrivateBrowsing()) ||\n (await isEdgePrivateBrowsing()) ||\n (await isSafariPrivateBrowsing())\n );\n}\n\nexport type OfflineMode = \"on\" | \"off\" | \"unavailable\";\n\nexport interface OfflineModeResult {\n current: OfflineMode;\n notAvailable: boolean;\n active: boolean;\n}\n\nconst offlineModeStorageKey = \"openmrs3:offline-mode\";\nlet offlineMode: OfflineMode = \"unavailable\";\n\nexport function getCurrentOfflineMode(): OfflineModeResult {\n return {\n current: offlineMode,\n notAvailable: offlineMode === \"unavailable\",\n active: offlineMode === \"on\",\n };\n}\n\nexport function setCurrentOfflineMode(mode: OfflineMode) {\n if (offlineMode !== \"unavailable\" && mode !== \"unavailable\") {\n localStorage.setItem(\n offlineModeStorageKey,\n mode === \"on\" ? \"active\" : \"disabled\"\n );\n offlineMode = mode;\n }\n}\n\nexport async function activateOfflineCapability() {\n const isPrivate = await isPrivateBrowsing();\n\n if (!isPrivate) {\n if (localStorage.getItem(offlineModeStorageKey) === \"active\") {\n offlineMode = \"on\";\n } else {\n offlineMode = \"off\";\n }\n }\n\n if (navigator.onLine && offlineMode === \"on\") {\n //TODO trigger here --> update cycle\n }\n}\n","const e=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:global,t=Object.keys,n=Array.isArray;function r(e,n){return\"object\"!=typeof n||t(n).forEach((function(t){e[t]=n[t]})),e}\"undefined\"==typeof Promise||e.Promise||(e.Promise=Promise);const s=Object.getPrototypeOf,i={}.hasOwnProperty;function o(e,t){return i.call(e,t)}function a(e,n){\"function\"==typeof n&&(n=n(s(e))),(\"undefined\"==typeof Reflect?t:Reflect.ownKeys)(n).forEach((t=>{l(e,t,n[t])}))}const u=Object.defineProperty;function l(e,t,n,s){u(e,t,r(n&&o(n,\"get\")&&\"function\"==typeof n.get?{get:n.get,set:n.set,configurable:!0}:{value:n,configurable:!0,writable:!0},s))}function c(e){return{from:function(t){return e.prototype=Object.create(t.prototype),l(e.prototype,\"constructor\",e),{extend:a.bind(null,e.prototype)}}}}const h=Object.getOwnPropertyDescriptor;function d(e,t){let n;return h(e,t)||(n=s(e))&&d(n,t)}const f=[].slice;function p(e,t,n){return f.call(e,t,n)}function y(e,t){return t(e)}function m(e){if(!e)throw new Error(\"Assertion Failed\")}function v(t){e.setImmediate?setImmediate(t):setTimeout(t,0)}function g(e,t){return e.reduce(((e,n,r)=>{var s=t(n,r);return s&&(e[s[0]]=s[1]),e}),{})}function b(e,t){if(o(e,t))return e[t];if(!t)return e;if(\"string\"!=typeof t){for(var n=[],r=0,s=t.length;r<s;++r){var i=b(e,t[r]);n.push(i)}return n}var a=t.indexOf(\".\");if(-1!==a){var u=e[t.substr(0,a)];return void 0===u?void 0:b(u,t.substr(a+1))}}function _(e,t,r){if(e&&void 0!==t&&(!(\"isFrozen\"in Object)||!Object.isFrozen(e)))if(\"string\"!=typeof t&&\"length\"in t){m(\"string\"!=typeof r&&\"length\"in r);for(var s=0,i=t.length;s<i;++s)_(e,t[s],r[s])}else{var o=t.indexOf(\".\");if(-1!==o){var a=t.substr(0,o),u=t.substr(o+1);if(\"\"===u)void 0===r?n(e)&&!isNaN(parseInt(a))?e.splice(a,1):delete e[a]:e[a]=r;else{var l=e[a];l||(l=e[a]={}),_(l,u,r)}}else void 0===r?n(e)&&!isNaN(parseInt(t))?e.splice(t,1):delete e[t]:e[t]=r}}function w(e){var t={};for(var n in e)o(e,n)&&(t[n]=e[n]);return t}const x=[].concat;function k(e){return x.apply([],e)}const E=\"Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey\".split(\",\").concat(k([8,16,32,64].map((e=>[\"Int\",\"Uint\",\"Float\"].map((t=>t+e+\"Array\")))))).filter((t=>e[t])),P=E.map((t=>e[t]));g(E,(e=>[e,!0]));let K=null;function O(e){K=\"undefined\"!=typeof WeakMap&&new WeakMap;const t=S(e);return K=null,t}function S(e){if(!e||\"object\"!=typeof e)return e;let t=K&&K.get(e);if(t)return t;if(n(e)){t=[],K&&K.set(e,t);for(var r=0,i=e.length;r<i;++r)t.push(S(e[r]))}else if(P.indexOf(e.constructor)>=0)t=e;else{const n=s(e);for(var a in t=n===Object.prototype?{}:Object.create(n),K&&K.set(e,t),e)o(e,a)&&(t[a]=S(e[a]))}return t}const{toString:A}={};function C(e){return A.call(e).slice(8,-1)}const j=\"undefined\"!=typeof Symbol?Symbol.iterator:\"@@iterator\",D=\"symbol\"==typeof j?function(e){var t;return null!=e&&(t=e[j])&&t.apply(e)}:function(){return null},I={};function B(e){var t,r,s,i;if(1===arguments.length){if(n(e))return e.slice();if(this===I&&\"string\"==typeof e)return[e];if(i=D(e)){for(r=[];!(s=i.next()).done;)r.push(s.value);return r}if(null==e)return[e];if(\"number\"==typeof(t=e.length)){for(r=new Array(t);t--;)r[t]=e[t];return r}return[e]}for(t=arguments.length,r=new Array(t);t--;)r[t]=arguments[t];return r}const T=\"undefined\"!=typeof Symbol?e=>\"AsyncFunction\"===e[Symbol.toStringTag]:()=>!1;var R=\"undefined\"!=typeof location&&/^(http|https):\\/\\/(localhost|127\\.0\\.0\\.1)/.test(location.href);function F(e,t){R=e,M=t}var M=()=>!0;const N=!new Error(\"\").stack;function q(){if(N)try{throw q.arguments,new Error}catch(e){return e}return new Error}function $(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(M).map((e=>\"\\n\"+e)).join(\"\")):\"\"}var U=[\"Unknown\",\"Constraint\",\"Data\",\"TransactionInactive\",\"ReadOnly\",\"Version\",\"NotFound\",\"InvalidState\",\"InvalidAccess\",\"Abort\",\"Timeout\",\"QuotaExceeded\",\"Syntax\",\"DataClone\"],L=[\"Modify\",\"Bulk\",\"OpenFailed\",\"VersionChange\",\"Schema\",\"Upgrade\",\"InvalidTable\",\"MissingAPI\",\"NoSuchDatabase\",\"InvalidArgument\",\"SubTransaction\",\"Unsupported\",\"Internal\",\"DatabaseClosed\",\"PrematureCommit\",\"ForeignAwait\"].concat(U),V={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 W(e,t){this._e=q(),this.name=e,this.message=t}function Y(e,t){return e+\". Errors: \"+Object.keys(t).map((e=>t[e].toString())).filter(((e,t,n)=>n.indexOf(e)===t)).join(\"\\n\")}function z(e,t,n,r){this._e=q(),this.failures=t,this.failedKeys=r,this.successCount=n,this.message=Y(e,t)}function G(e,t){this._e=q(),this.name=\"BulkError\",this.failures=Object.keys(t).map((e=>t[e])),this.failuresByPos=t,this.message=Y(e,t)}c(W).from(Error).extend({stack:{get:function(){return this._stack||(this._stack=this.name+\": \"+this.message+$(this._e,2))}},toString:function(){return this.name+\": \"+this.message}}),c(z).from(W),c(G).from(W);var H=L.reduce(((e,t)=>(e[t]=t+\"Error\",e)),{});const Q=W;var X=L.reduce(((e,t)=>{var n=t+\"Error\";function r(e,r){this._e=q(),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=V[t]||n,this.inner=null)}return c(r).from(Q),e[t]=r,e}),{});X.Syntax=SyntaxError,X.Type=TypeError,X.Range=RangeError;var J=U.reduce(((e,t)=>(e[t+\"Error\"]=X[t],e)),{});var Z=L.reduce(((e,t)=>(-1===[\"Syntax\",\"Type\",\"Range\"].indexOf(t)&&(e[t+\"Error\"]=X[t]),e)),{});function ee(){}function te(e){return e}function ne(e,t){return null==e||e===te?t:function(n){return t(e(n))}}function re(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function se(e,t){return e===ee?t:function(){var n=e.apply(this,arguments);void 0!==n&&(arguments[0]=n);var r=this.onsuccess,s=this.onerror;this.onsuccess=null,this.onerror=null;var i=t.apply(this,arguments);return r&&(this.onsuccess=this.onsuccess?re(r,this.onsuccess):r),s&&(this.onerror=this.onerror?re(s,this.onerror):s),void 0!==i?i:n}}function ie(e,t){return e===ee?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?re(n,this.onsuccess):n),r&&(this.onerror=this.onerror?re(r,this.onerror):r)}}function oe(e,t){return e===ee?t:function(n){var s=e.apply(this,arguments);r(n,s);var i=this.onsuccess,o=this.onerror;this.onsuccess=null,this.onerror=null;var a=t.apply(this,arguments);return i&&(this.onsuccess=this.onsuccess?re(i,this.onsuccess):i),o&&(this.onerror=this.onerror?re(o,this.onerror):o),void 0===s?void 0===a?void 0:a:r(s,a)}}function ae(e,t){return e===ee?t:function(){return!1!==t.apply(this,arguments)&&e.apply(this,arguments)}}function ue(e,t){return e===ee?t:function(){var n=e.apply(this,arguments);if(n&&\"function\"==typeof n.then){for(var r=this,s=arguments.length,i=new Array(s);s--;)i[s]=arguments[s];return n.then((function(){return t.apply(r,i)}))}return t.apply(this,arguments)}}Z.ModifyError=z,Z.DexieError=W,Z.BulkError=G;var le={};const[ce,he,de]=\"undefined\"==typeof Promise?[]:(()=>{let e=Promise.resolve();if(\"undefined\"==typeof crypto||!crypto.subtle)return[e,s(e),e];const t=crypto.subtle.digest(\"SHA-512\",new Uint8Array([0]));return[t,s(t),e]})(),fe=he&&he.then,pe=ce&&ce.constructor,ye=!!de;var me=!1,ve=de?()=>{de.then(qe)}:e.setImmediate?setImmediate.bind(null,qe):e.MutationObserver?()=>{var e=document.createElement(\"div\");new MutationObserver((()=>{qe(),e=null})).observe(e,{attributes:!0}),e.setAttribute(\"i\",\"1\")}:()=>{setTimeout(qe,0)},ge=function(e,t){Oe.push([e,t]),_e&&(ve(),_e=!1)},be=!0,_e=!0,we=[],xe=[],ke=null,Ee=te,Pe={id:\"global\",global:!0,ref:0,unhandleds:[],onunhandled:ct,pgp:!1,env:{},finalize:function(){this.unhandleds.forEach((e=>{try{ct(e[0],e[1])}catch(e){}}))}},Ke=Pe,Oe=[],Se=0,Ae=[];function Ce(e){if(\"object\"!=typeof this)throw new TypeError(\"Promises must be constructed via new\");this._listeners=[],this.onuncatched=ee,this._lib=!1;var t=this._PSD=Ke;if(R&&(this._stackHolder=q(),this._prev=null,this._numPrev=0),\"function\"!=typeof e){if(e!==le)throw new TypeError(\"Not a function\");return this._state=arguments[1],this._value=arguments[2],void(!1===this._state&&Be(this,this._value))}this._state=null,this._value=null,++t.ref,Ie(this,e)}const je={get:function(){var e=Ke,t=Qe;function n(n,r){var s=!e.global&&(e!==Ke||t!==Qe);const i=s&&!et();var o=new Ce(((t,o)=>{Re(this,new De(ut(n,e,s,i),ut(r,e,s,i),t,o,e))}));return R&&Ne(o,this),o}return n.prototype=le,n},set:function(e){l(this,\"then\",e&&e.prototype===le?je:{get:function(){return e},set:je.set})}};function De(e,t,n,r,s){this.onFulfilled=\"function\"==typeof e?e:null,this.onRejected=\"function\"==typeof t?t:null,this.resolve=n,this.reject=r,this.psd=s}function Ie(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&&$e();t&&\"function\"==typeof t.then?Ie(e,((e,n)=>{t instanceof Ce?t._then(e,n):t.then(e,n)})):(e._state=!0,e._value=t,Te(e)),n&&Ue()}}),Be.bind(null,e))}catch(t){Be(e,t)}}function Be(e,t){if(xe.push(t),null===e._state){var n=e._lib&&$e();t=Ee(t),e._state=!1,e._value=t,R&&null!==t&&\"object\"==typeof t&&!t._promise&&function(e,t,n){try{e.apply(null,n)}catch(e){t&&t(e)}}((()=>{var n=d(t,\"stack\");t._promise=e,l(t,\"stack\",{get:()=>me?n&&(n.get?n.get.apply(t):n.value):e.stack})})),function(e){we.some((t=>t._value===e._value))||we.push(e)}(e),Te(e),n&&Ue()}}function Te(e){var t=e._listeners;e._listeners=[];for(var n=0,r=t.length;n<r;++n)Re(e,t[n]);var s=e._PSD;--s.ref||s.finalize(),0===Se&&(++Se,ge((()=>{0==--Se&&Le()}),[]))}function Re(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,++Se,ge(Fe,[n,e,t])}else e._listeners.push(t)}function Fe(e,t,n){try{ke=t;var r,s=t._value;t._state?r=e(s):(xe.length&&(xe=[]),r=e(s),-1===xe.indexOf(s)&&function(e){var t=we.length;for(;t;)if(we[--t]._value===e._value)return void we.splice(t,1)}(t)),n.resolve(r)}catch(e){n.reject(e)}finally{ke=null,0==--Se&&Le(),--n.psd.ref||n.psd.finalize()}}function Me(e,t,n){if(t.length===n)return t;var r=\"\";if(!1===e._state){var s,i,o=e._value;null!=o?(s=o.name||\"Error\",i=o.message||o,r=$(o,0)):(s=o,i=\"\"),t.push(s+(i?\": \"+i:\"\")+r)}return R&&((r=$(e._stackHolder,2))&&-1===t.indexOf(r)&&t.push(r),e._prev&&Me(e._prev,t,n)),t}function Ne(e,t){var n=t?t._numPrev+1:0;n<100&&(e._prev=t,e._numPrev=n)}function qe(){$e()&&Ue()}function $e(){var e=be;return be=!1,_e=!1,e}function Ue(){var e,t,n;do{for(;Oe.length>0;)for(e=Oe,Oe=[],n=e.length,t=0;t<n;++t){var r=e[t];r[0].apply(null,r[1])}}while(Oe.length>0);be=!0,_e=!0}function Le(){var e=we;we=[],e.forEach((e=>{e._PSD.onunhandled.call(null,e._value,e)}));for(var t=Ae.slice(0),n=t.length;n;)t[--n]()}function Ve(e){return new Ce(le,!1,e)}function We(e,t){var n=Ke;return function(){var r=$e(),s=Ke;try{return st(n,!0),e.apply(this,arguments)}catch(e){t&&t(e)}finally{st(s,!1),r&&Ue()}}}a(Ce.prototype,{then:je,_then:function(e,t){Re(this,new De(null,null,e,t,Ke))},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):Ve(e))):this.then(null,(e=>e&&e.name===t?n(e):Ve(e)))},finally:function(e){return this.then((t=>(e(),t)),(t=>(e(),Ve(t))))},stack:{get:function(){if(this._stack)return this._stack;try{me=!0;var e=Me(this,[],20).join(\"\\nFrom previous: \");return null!==this._state&&(this._stack=e),e}finally{me=!1}}},timeout:function(e,t){return e<1/0?new Ce(((n,r)=>{var s=setTimeout((()=>r(new X.Timeout(t))),e);this.then(n,r).finally(clearTimeout.bind(null,s))})):this}}),\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&l(Ce.prototype,Symbol.toStringTag,\"Dexie.Promise\"),Pe.env=it(),a(Ce,{all:function(){var e=B.apply(null,arguments).map(tt);return new Ce((function(t,n){0===e.length&&t([]);var r=e.length;e.forEach(((s,i)=>Ce.resolve(s).then((n=>{e[i]=n,--r||t(e)}),n)))}))},resolve:e=>{if(e instanceof Ce)return e;if(e&&\"function\"==typeof e.then)return new Ce(((t,n)=>{e.then(t,n)}));var t=new Ce(le,!0,e);return Ne(t,ke),t},reject:Ve,race:function(){var e=B.apply(null,arguments).map(tt);return new Ce(((t,n)=>{e.map((e=>Ce.resolve(e).then(t,n)))}))},PSD:{get:()=>Ke,set:e=>Ke=e},totalEchoes:{get:()=>Qe},newPSD:Je,usePSD:ot,scheduler:{get:()=>ge,set:e=>{ge=e}},rejectionMapper:{get:()=>Ee,set:e=>{Ee=e}},follow:(e,t)=>new Ce(((n,r)=>Je(((t,n)=>{var r=Ke;r.unhandleds=[],r.onunhandled=n,r.finalize=re((function(){!function(e){function t(){e(),Ae.splice(Ae.indexOf(t),1)}Ae.push(t),++Se,ge((()=>{0==--Se&&Le()}),[])}((()=>{0===this.unhandleds.length?t():n(this.unhandleds[0])}))}),r.finalize),e()}),t,n,r)))}),pe&&(pe.allSettled&&l(Ce,\"allSettled\",(function(){const e=B.apply(null,arguments).map(tt);return new Ce((t=>{0===e.length&&t([]);let n=e.length;const r=new Array(n);e.forEach(((e,s)=>Ce.resolve(e).then((e=>r[s]={status:\"fulfilled\",value:e}),(e=>r[s]={status:\"rejected\",reason:e})).then((()=>--n||t(r)))))}))})),pe.any&&\"undefined\"!=typeof AggregateError&&l(Ce,\"any\",(function(){const e=B.apply(null,arguments).map(tt);return new Ce(((t,n)=>{0===e.length&&n(new AggregateError([]));let r=e.length;const s=new Array(r);e.forEach(((e,i)=>Ce.resolve(e).then((e=>t(e)),(e=>{s[i]=e,--r||n(new AggregateError(s))}))))}))})));const Ye={awaits:0,echoes:0,id:0};var ze=0,Ge=[],He=0,Qe=0,Xe=0;function Je(e,t,n,s){var i=Ke,o=Object.create(i);o.parent=i,o.ref=0,o.global=!1,o.id=++Xe;var a=Pe.env;o.env=ye?{Promise:Ce,PromiseProp:{value:Ce,configurable:!0,writable:!0},all:Ce.all,race:Ce.race,allSettled:Ce.allSettled,any:Ce.any,resolve:Ce.resolve,reject:Ce.reject,nthen:lt(a.nthen,o),gthen:lt(a.gthen,o)}:{},t&&r(o,t),++i.ref,o.finalize=function(){--this.parent.ref||this.parent.finalize()};var u=ot(o,e,n,s);return 0===o.ref&&o.finalize(),u}function Ze(){return Ye.id||(Ye.id=++ze),++Ye.awaits,Ye.echoes+=100,Ye.id}function et(){return!!Ye.awaits&&(0==--Ye.awaits&&(Ye.id=0),Ye.echoes=100*Ye.awaits,!0)}function tt(e){return Ye.echoes&&e&&e.constructor===pe?(Ze(),e.then((e=>(et(),e)),(e=>(et(),ht(e))))):e}function nt(e){++Qe,Ye.echoes&&0!=--Ye.echoes||(Ye.echoes=Ye.id=0),Ge.push(Ke),st(e,!0)}function rt(){var e=Ge[Ge.length-1];Ge.pop(),st(e,!1)}function st(t,n){var r=Ke;if((n?!Ye.echoes||He++&&t===Ke:!He||--He&&t===Ke)||at(n?nt.bind(null,t):rt),t!==Ke&&(Ke=t,r===Pe&&(Pe.env=it()),ye)){var s=Pe.env.Promise,i=t.env;he.then=i.nthen,s.prototype.then=i.gthen,(r.global||t.global)&&(Object.defineProperty(e,\"Promise\",i.PromiseProp),s.all=i.all,s.race=i.race,s.resolve=i.resolve,s.reject=i.reject,i.allSettled&&(s.allSettled=i.allSettled),i.any&&(s.any=i.any))}}function it(){var t=e.Promise;return ye?{Promise:t,PromiseProp:Object.getOwnPropertyDescriptor(e,\"Promise\"),all:t.all,race:t.race,allSettled:t.allSettled,any:t.any,resolve:t.resolve,reject:t.reject,nthen:he.then,gthen:t.prototype.then}:{}}function ot(e,t,n,r,s){var i=Ke;try{return st(e,!0),t(n,r,s)}finally{st(i,!1)}}function at(e){fe.call(ce,e)}function ut(e,t,n,r){return\"function\"!=typeof e?e:function(){var s=Ke;n&&Ze(),st(t,!0);try{return e.apply(this,arguments)}finally{st(s,!1),r&&at(et)}}}function lt(e,t){return function(n,r){return e.call(this,ut(n,t),ut(r,t))}}-1===(\"\"+fe).indexOf(\"[native code]\")&&(Ze=et=ee);function ct(t,n){var s;try{s=n.onuncatched(t)}catch(e){}if(!1!==s)try{var i,o={promise:n,reason:t};if(e.document&&document.createEvent?((i=document.createEvent(\"Event\")).initEvent(\"unhandledrejection\",!0,!0),r(i,o)):e.CustomEvent&&r(i=new CustomEvent(\"unhandledrejection\",{detail:o}),o),i&&e.dispatchEvent&&(dispatchEvent(i),!e.PromiseRejectionEvent&&e.onunhandledrejection))try{e.onunhandledrejection(i)}catch(e){}R&&i&&!i.defaultPrevented&&console.warn(`Unhandled rejection: ${t.stack||t}`)}catch(e){}}var ht=Ce.reject;function dt(e,t,n,r){if(e.idbdb&&(e._state.openComplete||Ke.letThrough||e._vip)){var s=e._createTransaction(t,n,e._dbSchema);try{s.create(),e._state.PR1398_maxLoop=3}catch(s){return s.name===H.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn(\"Dexie: Need to reopen db\"),e._close(),e.open().then((()=>dt(e,t,n,r)))):ht(s)}return s._promise(t,((e,t)=>Je((()=>(Ke.trans=s,r(e,t,s)))))).then((e=>s._completion.then((()=>e))))}if(e._state.openComplete)return ht(new X.DatabaseClosed(e._state.dbOpenError));if(!e._state.isBeingOpened){if(!e._options.autoOpen)return ht(new X.DatabaseClosed);e.open().catch(ee)}return e._state.dbReadyPromise.then((()=>dt(e,t,n,r)))}const ft=String.fromCharCode(65535),pt=\"Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.\",yt=[],mt=\"undefined\"!=typeof navigator&&/(MSIE|Trident|Edge)/.test(navigator.userAgent),vt=mt,gt=mt,bt=e=>!/(dexie\\.js|dexie\\.min\\.js)/.test(e);function _t(e,t){return e?t?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:e:t}const wt={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function xt(e){return\"string\"!=typeof e||/\\./.test(e)?e=>e:t=>(void 0===t[e]&&e in t&&delete(t=O(t))[e],t)}class kt{_trans(e,t,n){const r=this._tx||Ke.trans,s=this.name;function i(e,n,r){if(!r.schema[s])throw new X.NotFound(\"Table \"+s+\" not part of transaction\");return t(r.idbtrans,r)}const o=$e();try{return r&&r.db===this.db?r===Ke.trans?r._promise(e,i,n):Je((()=>r._promise(e,i,n)),{trans:r,transless:Ke.transless||Ke}):dt(this.db,e,[this.name],i)}finally{o&&Ue()}}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(n(e))return new this.db.WhereClause(this,`[${e.join(\"+\")}]`);const r=t(e);if(1===r.length)return this.where(r[0]).equals(e[r[0]]);const s=this.schema.indexes.concat(this.schema.primKey).filter((e=>e.compound&&r.every((t=>e.keyPath.indexOf(t)>=0))&&e.keyPath.every((e=>r.indexOf(e)>=0))))[0];if(s&&this.db._maxKey!==ft)return this.where(s.name).equals(s.keyPath.map((t=>e[t])));!s&&R&&console.warn(`The query ${JSON.stringify(e)} on ${this.name} would benefit of a compound index [${r.join(\"+\")}]`);const{idxByName:i}=this.schema,o=this.db._deps.indexedDB;function a(e,t){try{return 0===o.cmp(e,t)}catch(e){return!1}}const[u,l]=r.reduce((([t,r],s)=>{const o=i[s],u=e[s];return[t||o,t||!o?_t(r,o&&o.multi?e=>{const t=b(e,s);return n(t)&&t.some((e=>a(u,e)))}:e=>a(u,b(e,s))):r]}),[null,null]);return u?this.where(u.name).equals(e[u.keyPath]).filter(l):s?this.filter(l):this.where(r).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,n(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(o(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){r(this,e)}))}add(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let s=e;return r&&n&&(s=xt(r)(e)),this._trans(\"readwrite\",(e=>this.core.mutate({trans:e,type:\"add\",keys:null!=t?[t]:null,values:[s]}))).then((e=>e.numFailures?Ce.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{_(e,r,t)}catch(e){}return t}))}update(e,r){if(\"object\"!=typeof e||n(e))return this.where(\":id\").equals(e).modify(r);{const n=b(e,this.schema.primKey.keyPath);if(void 0===n)return ht(new X.InvalidArgument(\"Given object does not contain its primary key\"));try{\"function\"!=typeof r?t(r).forEach((t=>{_(e,t,r[t])})):r(e,{value:e,primKey:n})}catch(e){}return this.where(\":id\").equals(n).modify(r)}}put(e,t){const{auto:n,keyPath:r}=this.schema.primKey;let s=e;return r&&n&&(s=xt(r)(e)),this._trans(\"readwrite\",(e=>this.core.mutate({trans:e,type:\"put\",values:[s],keys:null!=t?[t]:null}))).then((e=>e.numFailures?Ce.reject(e.failures[0]):e.lastResult)).then((t=>{if(r)try{_(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?Ce.reject(e.failures[0]):void 0))}clear(){return this._trans(\"readwrite\",(e=>this.core.mutate({trans:e,type:\"deleteRange\",range:wt}))).then((e=>e.numFailures?Ce.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,s=(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 X.InvalidArgument(\"bulkAdd(): keys argument invalid on tables with inbound keys\");if(r&&r.length!==e.length)throw new X.InvalidArgument(\"Arguments objects and keys must have the same length\");const o=e.length;let a=i&&n?e.map(xt(i)):e;return this.core.mutate({trans:t,type:\"add\",keys:r,values:a,wantResults:s}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return s?t:n;throw new G(`${this.name}.bulkAdd(): ${e} of ${o} operations failed`,r)}))}))}bulkPut(e,t,n){const r=Array.isArray(t)?t:void 0,s=(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 X.InvalidArgument(\"bulkPut(): keys argument invalid on tables with inbound keys\");if(r&&r.length!==e.length)throw new X.InvalidArgument(\"Arguments objects and keys must have the same length\");const o=e.length;let a=i&&n?e.map(xt(i)):e;return this.core.mutate({trans:t,type:\"put\",keys:r,values:a,wantResults:s}).then((({numFailures:e,results:t,lastResult:n,failures:r})=>{if(0===e)return s?t:n;throw new G(`${this.name}.bulkPut(): ${e} of ${o} 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 G(`${this.name}.bulkDelete(): ${e} of ${t} operations failed`,r)}))}}function Et(e){var r={},s=function(t,n){if(n){for(var s=arguments.length,i=new Array(s-1);--s;)i[s-1]=arguments[s];return r[t].subscribe.apply(null,i),e}if(\"string\"==typeof t)return r[t]};s.addEventType=a;for(var i=1,o=arguments.length;i<o;++i)a(arguments[i]);return s;function a(e,t,n){if(\"object\"==typeof e)return u(e);t||(t=ae),n||(n=ee);var i={subscribers:[],fire:n,subscribe:function(e){-1===i.subscribers.indexOf(e)&&(i.subscribers.push(e),i.fire=t(i.fire,e))},unsubscribe:function(e){i.subscribers=i.subscribers.filter((function(t){return t!==e})),i.fire=i.subscribers.reduce(t,n)}};return r[e]=s[e]=i,i}function u(e){t(e).forEach((function(t){var r=e[t];if(n(r))a(t,e[t][0],e[t][1]);else{if(\"asap\"!==r)throw new X.InvalidArgument(\"Invalid event config\");var s=a(t,te,(function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];s.subscribers.forEach((function(e){v((function(){e.apply(null,t)}))}))}))}}))}}function Pt(e,t){return c(t).from({prototype:e}),t}function Kt(e,t){return!(e.filter||e.algorithm||e.or)&&(t?e.justLimit:!e.replayFilter)}function Ot(e,t){e.filter=_t(e.filter,t)}function St(e,t,n){var r=e.replayFilter;e.replayFilter=r?()=>_t(r(),t()):t,e.justLimit=n&&!r}function At(e,t){if(e.isPrimKey)return t.primaryKey;const n=t.getIndexByKeyPath(e.index);if(!n)throw new X.Schema(\"KeyPath \"+e.index+\" on object store \"+t.name+\" is not indexed\");return n}function Ct(e,t,n){const r=At(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 jt(e,t,n,r){const s=e.replayFilter?_t(e.filter,e.replayFilter()):e.filter;if(e.or){const i={},a=(e,n,r)=>{if(!s||s(n,r,(e=>n.stop(e)),(e=>n.fail(e)))){var a=n.primaryKey,u=\"\"+a;\"[object ArrayBuffer]\"===u&&(u=\"\"+new Uint8Array(a)),o(i,u)||(i[u]=!0,t(e,n,r))}};return Promise.all([e.or._iterate(a,n),Dt(Ct(e,r,n),e.algorithm,a,!e.keysOnly&&e.valueMapper)])}return Dt(Ct(e,r,n),_t(e.algorithm,s),t,!e.keysOnly&&e.valueMapper)}function Dt(e,t,n,r){var s=We(r?(e,t,s)=>n(r(e),t,s):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=ee}),(t=>{e.fail(t),n=ee}))||s(e.value,e,(e=>n=e)),n()}))}))}function It(e,t){try{const n=Bt(e),r=Bt(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,s=n<r?n:r;for(let n=0;n<s;++n)if(e[n]!==t[n])return e[n]<t[n]?-1:1;return n===r?0:n<r?-1:1}(Tt(e),Tt(t));case\"Array\":return function(e,t){const n=e.length,r=t.length,s=n<r?n:r;for(let n=0;n<s;++n){const r=It(e[n],t[n]);if(0!==r)return r}return n===r?0:n<r?-1:1}(e,t)}}catch(e){}return NaN}function Bt(e){const t=typeof e;if(\"object\"!==t)return t;if(ArrayBuffer.isView(e))return\"binary\";const n=C(e);return\"ArrayBuffer\"===n?\"binary\":n}function Tt(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e)}class Rt{_read(e,t){var n=this._ctx;return n.error?n.table._trans(null,ht.bind(null,n.error)):n.table._trans(\"readonly\",e).then(t)}_write(e){var t=this._ctx;return t.error?t.table._trans(null,ht.bind(null,t.error)):t.table._trans(\"readwrite\",e,\"locked\")}_addAlgorithm(e){var t=this._ctx;t.algorithm=_t(t.algorithm,e)}_iterate(e,t){return jt(this._ctx,e,t,this._ctx.table.core)}clone(e){var t=Object.create(this.constructor.prototype),n=Object.create(this._ctx);return e&&r(n,e),t._ctx=n,t}raw(){return this._ctx.valueMapper=null,this}each(e){var t=this._ctx;return this._read((n=>jt(t,e,n,t.table.core)))}count(e){return this._read((e=>{const t=this._ctx,n=t.table.core;if(Kt(t,!0))return n.count({trans:e,query:{index:At(t,n.schema),range:t.range}}).then((e=>Math.min(e,t.limit)));var r=0;return jt(t,(()=>(++r,!1)),e,n).then((()=>r))})).then(e)}sortBy(e,t){const n=e.split(\".\").reverse(),r=n[0],s=n.length-1;function i(e,t){return t?i(e[n[t]],t-1):e[r]}var o=\"next\"===this._ctx.dir?1:-1;function a(e,t){var n=i(e,s),r=i(t,s);return n<r?-o:n>r?o:0}return this.toArray((function(e){return e.sort(a)})).then(t)}toArray(e){return this._read((e=>{var t=this._ctx;if(\"next\"===t.dir&&Kt(t,!0)&&t.limit>0){const{valueMapper:n}=t,r=At(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 jt(t,(e=>n.push(e)),e,t.table.core).then((()=>n))}}),e)}offset(e){var t=this._ctx;return e<=0||(t.offset+=e,Kt(t)?St(t,(()=>{var t=e;return(e,n)=>0===t||(1===t?(--t,!1):(n((()=>{e.advance(t),t=0})),!1))})):St(t,(()=>{var t=e;return()=>--t<0}))),this}limit(e){return this._ctx.limit=Math.min(this._ctx.limit,e),St(this._ctx,(()=>{var t=e;return function(e,n,r){return--t<=0&&n(r),t>=0}}),!0),this}until(e,t){return Ot(this._ctx,(function(n,r,s){return!e(n.value)||(r(s),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 Ot(this._ctx,(function(t){return e(t.value)})),t=this._ctx,n=e,t.isMatch=_t(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&&Kt(t,!0)&&t.limit>0)return this._read((e=>{var n=At(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 Ot(this._ctx,(function(e){var t=e.primaryKey.toString(),r=o(n,t);return n[t]=!0,!r})),this}modify(e){var n=this._ctx;return this._write((r=>{var s;if(\"function\"==typeof e)s=e;else{var i=t(e),o=i.length;s=function(t){for(var n=!1,r=0;r<o;++r){var s=i[r],a=e[s];b(t,s)!==a&&(_(t,s,a),n=!0)}return n}}const a=n.table.core,{outbound:u,extractKey:l}=a.schema.primaryKey,c=this.db._options.modifyChunkSize||200,h=[];let d=0;const f=[],p=(e,n)=>{const{failures:r,numFailures:s}=n;d+=e-s;for(let e of t(r))h.push(r[e])};return this.clone().primaryKeys().then((t=>{const i=o=>{const h=Math.min(c,t.length-o);return a.getMany({trans:r,keys:t.slice(o,o+h),cache:\"immutable\"}).then((d=>{const f=[],y=[],m=u?[]:null,v=[];for(let e=0;e<h;++e){const n=d[e],r={value:O(n),primKey:t[o+e]};!1!==s.call(r,r.value,r)&&(null==r.value?v.push(t[o+e]):u||0===It(l(n),l(r.value))?(y.push(r.value),u&&m.push(t[o+e])):(v.push(t[o+e]),f.push(r.value)))}const g=Kt(n)&&n.limit===1/0&&(\"function\"!=typeof e||e===Ft)&&{index:n.index,range:n.range};return Promise.resolve(f.length>0&&a.mutate({trans:r,type:\"add\",values:f}).then((e=>{for(let t in e.failures)v.splice(parseInt(t),1);p(f.length,e)}))).then((()=>(y.length>0||g&&\"object\"==typeof e)&&a.mutate({trans:r,type:\"put\",keys:m,values:y,criteria:g,changeSpec:\"function\"!=typeof e&&e}).then((e=>p(y.length,e))))).then((()=>(v.length>0||g&&e===Ft)&&a.mutate({trans:r,type:\"delete\",keys:v,criteria:g}).then((e=>p(v.length,e))))).then((()=>t.length>o+h&&i(o+c)))}))};return i(0).then((()=>{if(h.length>0)throw new z(\"Error modifying one or more objects\",h,d,f);return t.length}))}))}))}delete(){var e=this._ctx,t=e.range;return Kt(e)&&(e.isPrimKey&&!gt||3===t.type)?this._write((n=>{const{primaryKey:r}=e.table.core.schema,s=t;return e.table.core.count({trans:n,query:{index:r,range:s}}).then((t=>e.table.core.mutate({trans:n,type:\"deleteRange\",range:s}).then((({failures:e,lastResult:n,results:r,numFailures:s})=>{if(s)throw new z(\"Could not delete some values\",Object.keys(e).map((t=>e[t])),t-s);return t-s}))))})):this.modify(Ft)}}const Ft=(e,t)=>t.value=null;function Mt(e,t){return e<t?-1:e===t?0:1}function Nt(e,t){return e>t?-1:e===t?0:1}function qt(e,t,n){var r=e instanceof Yt?new e.Collection(e):e;return r._ctx.error=n?new n(t):new TypeError(t),r}function $t(e){return new e.Collection(e,(()=>Wt(\"\"))).limit(0)}function Ut(e,t,n,r,s,i){for(var o=Math.min(e.length,r.length),a=-1,u=0;u<o;++u){var l=t[u];if(l!==r[u])return s(e[u],n[u])<0?e.substr(0,u)+n[u]+n.substr(u+1):s(e[u],r[u])<0?e.substr(0,u)+r[u]+n.substr(u+1):a>=0?e.substr(0,a)+t[a]+n.substr(a+1):null;s(e[u],l)<0&&(a=u)}return o<r.length&&\"next\"===i?e+n.substr(e.length):o<e.length&&\"prev\"===i?e.substr(0,n.length):a<0?null:e.substr(0,a)+r[a]+n.substr(a+1)}function Lt(e,t,n,r){var s,i,o,a,u,l,c,h=n.length;if(!n.every((e=>\"string\"==typeof e)))return qt(e,\"String expected.\");function d(e){s=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),o=\"next\"===e?Mt:Nt;var t=n.map((function(e){return{lower:i(e),upper:s(e)}})).sort((function(e,t){return o(e.lower,t.lower)}));a=t.map((function(e){return e.upper})),u=t.map((function(e){return e.lower})),l=e,c=\"next\"===e?\"\":r}d(\"next\");var f=new e.Collection(e,(()=>Vt(a[0],u[h-1]+r)));f._ondirectionchange=function(e){d(e)};var p=0;return f._addAlgorithm((function(e,n,r){var s=e.key;if(\"string\"!=typeof s)return!1;var d=i(s);if(t(d,u,p))return!0;for(var f=null,y=p;y<h;++y){var m=Ut(s,d,a[y],u[y],o,l);null===m&&null===f?p=y+1:(null===f||o(f,m)>0)&&(f=m)}return n(null!==f?function(){e.continue(f+c)}:r),!1})),f}function Vt(e,t,n,r){return{type:2,lower:e,upper:t,lowerOpen:n,upperOpen:r}}function Wt(e){return{type:1,lower:e,upper:e}}class Yt{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)?$t(this):new this.Collection(this,(()=>Vt(e,t,!n,!r)))}catch(e){return qt(this,pt)}}equals(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Wt(e)))}above(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(e,void 0,!0)))}aboveOrEqual(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(e,void 0,!1)))}below(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(void 0,e,!1,!0)))}belowOrEqual(e){return null==e?qt(this,pt):new this.Collection(this,(()=>Vt(void 0,e)))}startsWith(e){return\"string\"!=typeof e?qt(this,\"String expected.\"):this.between(e,e+ft,!0,!0)}startsWithIgnoreCase(e){return\"\"===e?this.startsWith(e):Lt(this,((e,t)=>0===e.indexOf(t[0])),[e],ft)}equalsIgnoreCase(e){return Lt(this,((e,t)=>e===t[0]),[e],\"\")}anyOfIgnoreCase(){var e=B.apply(I,arguments);return 0===e.length?$t(this):Lt(this,((e,t)=>-1!==t.indexOf(e)),e,\"\")}startsWithAnyOfIgnoreCase(){var e=B.apply(I,arguments);return 0===e.length?$t(this):Lt(this,((e,t)=>t.some((t=>0===e.indexOf(t)))),e,ft)}anyOf(){const e=B.apply(I,arguments);let t=this._cmp;try{e.sort(t)}catch(e){return qt(this,pt)}if(0===e.length)return $t(this);const n=new this.Collection(this,(()=>Vt(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,s,i)=>{const o=n.key;for(;t(o,e[r])>0;)if(++r,r===e.length)return s(i),!1;return 0===t(o,e[r])||(s((()=>{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=B.apply(I,arguments);if(0===e.length)return new this.Collection(this);try{e.sort(this._ascending)}catch(e){return qt(this,pt)}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,s=this._descending,i=this._min,o=this._max;if(0===e.length)return $t(this);if(!e.every((e=>void 0!==e[0]&&void 0!==e[1]&&r(e[0],e[1])<=0)))return qt(this,\"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower\",X.InvalidArgument);const a=!t||!1!==t.includeLowers,u=t&&!0===t.includeUppers;let l,c=r;function h(e,t){return c(e[0],t[0])}try{l=e.reduce((function(e,t){let r=0,s=e.length;for(;r<s;++r){const s=e[r];if(n(t[0],s[1])<0&&n(t[1],s[0])>0){s[0]=i(s[0],t[0]),s[1]=o(s[1],t[1]);break}}return r===s&&e.push(t),e}),[]),l.sort(h)}catch(e){return qt(this,pt)}let d=0;const f=u?e=>r(e,l[d][1])>0:e=>r(e,l[d][1])>=0,p=a?e=>s(e,l[d][0])>0:e=>s(e,l[d][0])>=0;let y=f;const m=new this.Collection(this,(()=>Vt(l[0][0],l[l.length-1][1],!a,!u)));return m._ondirectionchange=e=>{\"next\"===e?(y=f,c=r):(y=p,c=s),l.sort(h)},m._addAlgorithm(((e,t,n)=>{for(var s=e.key;y(s);)if(++d,d===l.length)return t(n),!1;return!!function(e){return!f(e)&&!p(e)}(s)||(0===this._cmp(s,l[d][1])||0===this._cmp(s,l[d][0])||t((()=>{c===r?e.continue(l[d][0]):e.continue(l[d][1])})),!1)})),m}startsWithAnyOf(){const e=B.apply(I,arguments);return e.every((e=>\"string\"==typeof e))?0===e.length?$t(this):this.inAnyRange(e.map((e=>[e,e+ft]))):qt(this,\"startsWithAnyOf() only works with strings\")}}function zt(e){return We((function(t){return Gt(t),e(t.target.error),!1}))}function Gt(e){e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault()}const Ht=Et(null,\"storagemutated\");class Qt{_lock(){return m(!Ke.global),++this._reculock,1!==this._reculock||Ke.global||(Ke.lockOwnerFor=this),this}_unlock(){if(m(!Ke.global),0==--this._reculock)for(Ke.global||(Ke.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var e=this._blockedFuncs.shift();try{ot(e[1],e[0])}catch(e){}}return this}_locked(){return this._reculock&&Ke.lockOwnerFor!==this}create(e){if(!this.mode)return this;const t=this.db.idbdb,n=this.db._state.dbOpenError;if(m(!this.idbtrans),!e&&!t)switch(n&&n.name){case\"DatabaseClosedError\":throw new X.DatabaseClosed(n);case\"MissingAPIError\":throw new X.MissingAPI(n.message,n);default:throw new X.OpenFailed(n)}if(!this.active)throw new X.TransactionInactive;return m(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=We((t=>{Gt(t),this._reject(e.error)})),e.onabort=We((t=>{Gt(t),this.active&&this._reject(new X.Abort(e.error)),this.active=!1,this.on(\"abort\").fire(t)})),e.oncomplete=We((()=>{this.active=!1,this._resolve(),\"mutatedParts\"in e&&Ht.storagemutated.fire(e.mutatedParts)})),this}_promise(e,t,n){if(\"readwrite\"===e&&\"readwrite\"!==this.mode)return ht(new X.ReadOnly(\"Transaction is readonly\"));if(!this.active)return ht(new X.TransactionInactive);if(this._locked())return new Ce(((r,s)=>{this._blockedFuncs.push([()=>{this._promise(e,t,n).then(r,s)},Ke])}));if(n)return Je((()=>{var e=new Ce(((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 Ce(((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=Ce.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 s=t._waitingFor;return new Ce(((e,r)=>{n.then((n=>t._waitingQueue.push(We(e.bind(null,n)))),(e=>t._waitingQueue.push(We(r.bind(null,e))))).finally((()=>{t._waitingFor===s&&(t._waitingFor=null)}))}))}abort(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new X.Abort))}table(e){const t=this._memoizedTables||(this._memoizedTables={});if(o(t,e))return t[e];const n=this.schema[e];if(!n)throw new X.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 Xt(e,t,n,r,s,i,o){return{name:e,keyPath:t,unique:n,multi:r,auto:s,compound:i,src:(n&&!o?\"&\":\"\")+(r?\"*\":\"\")+(s?\"++\":\"\")+Jt(t)}}function Jt(e){return\"string\"==typeof e?e:e?\"[\"+[].join.call(e,\"+\")+\"]\":\"\"}function Zt(e,t,n){return{name:e,primKey:t,indexes:n,mappedClass:null,idxByName:g(n,(e=>[e.name,e]))}}let en=e=>{try{return e.only([[]]),en=()=>[[]],[[]]}catch(e){return en=()=>ft,ft}};function tn(e){return null==e?()=>{}:\"string\"==typeof e?function(e){return 1===e.split(\".\").length?t=>t[e]:t=>b(t,e)}(e):t=>b(t,e)}function nn(e){return[].slice.call(e)}let rn=0;function sn(e){return null==e?\":id\":\"string\"==typeof e?e:`[${e.join(\"+\")}]`}function on(e,t,r){function s(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:s,upperOpen:i}=e;return void 0===n?void 0===r?null:t.upperBound(r,!!i):void 0===r?t.lowerBound(n,!!s):t.bound(n,r,!!s,!!i)}const{schema:i,hasGetAll:o}=function(e,t){const r=nn(e.objectStoreNames);return{schema:{name:e.name,tables:r.map((e=>t.objectStore(e))).map((e=>{const{keyPath:t,autoIncrement:r}=e,s=n(t),i=null==t,o={},a={name:e.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:i,compound:s,keyPath:t,autoIncrement:r,unique:!0,extractKey:tn(t)},indexes:nn(e.indexNames).map((t=>e.index(t))).map((e=>{const{name:t,unique:r,multiEntry:s,keyPath:i}=e,a={name:t,compound:n(i),keyPath:i,unique:r,multiEntry:s,extractKey:tn(i)};return o[sn(i)]=a,a})),getIndexByKeyPath:e=>o[sn(e)]};return o[\":id\"]=a.primaryKey,null!=t&&(o[sn(t)]=a.primaryKey),a}))},hasGetAll:r.length>0&&\"getAll\"in t.objectStore(r[0])&&!(\"undefined\"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\\/|Edge\\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\\/(\\d*)/))[1]<604)}}(e,r),a=i.tables.map((e=>function(e){const t=e.name;return{name:t,schema:e,mutate:function({trans:e,type:n,keys:r,values:i,range:o}){return new Promise(((a,u)=>{a=We(a);const l=e.objectStore(t),c=null==l.keyPath,h=\"put\"===n||\"add\"===n;if(!h&&\"delete\"!==n&&\"deleteRange\"!==n)throw new Error(\"Invalid operation type: \"+n);const{length:d}=r||i||{length:1};if(r&&i&&r.length!==i.length)throw new Error(\"Given keys array must have same length as given values array.\");if(0===d)return a({numFailures:0,failures:{},results:[],lastResult:void 0});let f;const p=[],y=[];let m=0;const v=e=>{++m,Gt(e)};if(\"deleteRange\"===n){if(4===o.type)return a({numFailures:m,failures:y,results:[],lastResult:void 0});3===o.type?p.push(f=l.clear()):p.push(f=l.delete(s(o)))}else{const[e,t]=h?c?[i,r]:[i,null]:[r,null];if(h)for(let r=0;r<d;++r)p.push(f=t&&void 0!==t[r]?l[n](e[r],t[r]):l[n](e[r])),f.onerror=v;else for(let t=0;t<d;++t)p.push(f=l[n](e[t])),f.onerror=v}const g=e=>{const t=e.target.result;p.forEach(((e,t)=>null!=e.error&&(y[t]=e.error))),a({numFailures:m,failures:y,results:\"delete\"===n?r:p.map((e=>e.result)),lastResult:t})};f.onerror=e=>{v(e),g(e)},f.onsuccess=g}))},getMany:({trans:e,keys:n})=>new Promise(((r,s)=>{r=We(r);const i=e.objectStore(t),o=n.length,a=new Array(o);let u,l=0,c=0;const h=e=>{const t=e.target;a[t._pos]=t.result,++c===l&&r(a)},d=zt(s);for(let e=0;e<o;++e)null!=n[e]&&(u=i.get(n[e]),u._pos=e,u.onsuccess=h,u.onerror=d,++l);0===l&&r(a)})),get:({trans:e,key:n})=>new Promise(((r,s)=>{r=We(r);const i=e.objectStore(t).get(n);i.onsuccess=e=>r(e.target.result),i.onerror=zt(s)})),query:function(e){return n=>new Promise(((r,i)=>{r=We(r);const{trans:o,values:a,limit:u,query:l}=n,c=u===1/0?void 0:u,{index:h,range:d}=l,f=o.objectStore(t),p=h.isPrimaryKey?f:f.index(h.name),y=s(d);if(0===u)return r({result:[]});if(e){const e=a?p.getAll(y,c):p.getAllKeys(y,c);e.onsuccess=e=>r({result:e.target.result}),e.onerror=zt(i)}else{let e=0;const t=a||!(\"openKeyCursor\"in p)?p.openCursor(y):p.openKeyCursor(y),n=[];t.onsuccess=s=>{const i=t.result;return i?(n.push(a?i.value:i.primaryKey),++e===u?r({result:n}):void i.continue()):r({result:n})},t.onerror=zt(i)}}))}(o),openCursor:function({trans:e,values:n,query:r,reverse:i,unique:o}){return new Promise(((a,u)=>{a=We(a);const{index:l,range:c}=r,h=e.objectStore(t),d=l.isPrimaryKey?h:h.index(l.name),f=i?o?\"prevunique\":\"prev\":o?\"nextunique\":\"next\",p=n||!(\"openKeyCursor\"in d)?d.openCursor(s(c),f):d.openKeyCursor(s(c),f);p.onerror=zt(u),p.onsuccess=We((t=>{const n=p.result;if(!n)return void a(null);n.___id=++rn,n.done=!1;const r=n.continue.bind(n);let s=n.continuePrimaryKey;s&&(s=s.bind(n));const i=n.advance.bind(n),o=()=>{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=We(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=We(e),p.onerror=zt(t),n.fail=t,n.stop=t=>{n.stop=n.continue=n.continuePrimaryKey=n.advance=o,e(t)}})),a=()=>{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=We((e=>{p.onsuccess=a,a()})),n.continue=r,n.continuePrimaryKey=s,n.advance=i,a(),t},a(n)}),u)}))},count({query:e,trans:n}){const{index:r,range:i}=e;return new Promise(((e,o)=>{const a=n.objectStore(t),u=r.isPrimaryKey?a:a.index(r.name),l=s(i),c=l?u.count(l):u.count();c.onsuccess=We((t=>e(t.target.result))),c.onerror=zt(o)}))}}}(e))),u={};return a.forEach((e=>u[e.name]=e)),{stack:\"dbcore\",transaction:e.transaction.bind(e),table(e){if(!u[e])throw new Error(`Table '${e}' not found`);return u[e]},MIN_KEY:-1/0,MAX_KEY:en(t),schema:i}}function an({_novip:e},t){const n=t.db,r=function(e,t,{IDBKeyRange:n,indexedDB:r},s){const i=function(e,t){return t.reduce(((e,{create:t})=>({...e,...t(e)})),e)}(on(t,n,s),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 un({_novip:e},t,n,r){n.forEach((n=>{const s=r[n];t.forEach((t=>{const r=d(t,n);(!r||\"value\"in r&&void 0===r.value)&&(t===e.Transaction.prototype||t instanceof e.Transaction?l(t,n,{get(){return this.table(n)},set(e){u(this,n,{value:e,writable:!0,configurable:!0,enumerable:!0})}}):t[n]=new e.Table(n,s))}))}))}function ln({_novip:e},t){t.forEach((t=>{for(let n in t)t[n]instanceof e.Table&&delete t[n]}))}function cn(e,t){return e._cfg.version-t._cfg.version}function hn(e,n,r,s){const i=e._dbSchema,o=e._createTransaction(\"readwrite\",e._storeNames,i);o.create(r),o._completion.catch(s);const a=o._reject.bind(o),u=Ke.transless||Ke;Je((()=>{Ke.trans=o,Ke.transless=u,0===n?(t(i).forEach((e=>{fn(r,e,i[e].primKey,i[e].indexes)})),an(e,r),Ce.follow((()=>e.on.populate.fire(o))).catch(a)):function({_novip:e},n,r,s){const i=[],o=e._versions;let a=e._dbSchema=yn(e,e.idbdb,s),u=!1;function l(){return i.length?Ce.resolve(i.shift()(r.idbtrans)).then(l):Ce.resolve()}return o.filter((e=>e._cfg.version>=n)).forEach((o=>{i.push((()=>{const i=a,l=o._cfg.dbschema;mn(e,i,s),mn(e,l,s),a=e._dbSchema=l;const c=dn(i,l);c.add.forEach((e=>{fn(s,e[0],e[1].primKey,e[1].indexes)})),c.change.forEach((e=>{if(e.recreate)throw new X.Upgrade(\"Not yet support for changing primary key\");{const t=s.objectStore(e.name);e.add.forEach((e=>pn(t,e))),e.change.forEach((e=>{t.deleteIndex(e.name),pn(t,e)})),e.del.forEach((e=>t.deleteIndex(e)))}}));const h=o._cfg.contentUpgrade;if(h&&o._cfg.version>n){an(e,s),r._memoizedTables={},u=!0;let n=w(l);c.del.forEach((e=>{n[e]=i[e]})),ln(e,[e.Transaction.prototype]),un(e,[e.Transaction.prototype],t(n),n),r.schema=n;const o=T(h);let a;o&&Ze();const d=Ce.follow((()=>{if(a=h(r),a&&o){var e=et.bind(null,null);a.then(e,e)}}));return a&&\"function\"==typeof a.then?Ce.resolve(a):d.then((()=>a))}})),i.push((t=>{if(!u||!vt){!function(e,t){[].slice.call(t.db.objectStoreNames).forEach((n=>null==e[n]&&t.db.deleteObjectStore(n)))}(o._cfg.dbschema,t)}ln(e,[e.Transaction.prototype]),un(e,[e.Transaction.prototype],e._storeNames,e._dbSchema),r.schema=e._dbSchema}))})),l().then((()=>{var e,n;n=s,t(e=a).forEach((t=>{n.db.objectStoreNames.contains(t)||fn(n,t,e[t].primKey,e[t].indexes)}))}))}(e,n,o,r).catch(a)}))}function dn(e,t){const n={del:[],add:[],change:[]};let r;for(r in e)t[r]||n.del.push(r);for(r in t){const s=e[r],i=t[r];if(s){const e={name:r,def:i,recreate:!1,del:[],add:[],change:[]};if(\"\"+(s.primKey.keyPath||\"\")!=\"\"+(i.primKey.keyPath||\"\")||s.primKey.auto!==i.primKey.auto&&!mt)e.recreate=!0,n.change.push(e);else{const t=s.idxByName,r=i.idxByName;let o;for(o in t)r[o]||e.del.push(o);for(o in r){const n=t[o],s=r[o];n?n.src!==s.src&&e.change.push(s):e.add.push(s)}(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 fn(e,t,n,r){const s=e.db.createObjectStore(t,n.keyPath?{keyPath:n.keyPath,autoIncrement:n.auto}:{autoIncrement:n.auto});return r.forEach((e=>pn(s,e))),s}function pn(e,t){e.createIndex(t.name,t.keyPath,{unique:t.unique,multiEntry:t.multi})}function yn(e,t,n){const r={};return p(t.objectStoreNames,0).forEach((e=>{const t=n.objectStore(e);let s=t.keyPath;const i=Xt(Jt(s),s||\"\",!1,!1,!!t.autoIncrement,s&&\"string\"!=typeof s,!0),o=[];for(let e=0;e<t.indexNames.length;++e){const n=t.index(t.indexNames[e]);s=n.keyPath;var a=Xt(n.name,s,!!n.unique,!!n.multiEntry,!1,s&&\"string\"!=typeof s,!1);o.push(a)}r[e]=Zt(e,i,o)})),r}function mn({_novip:t},n,r){const s=r.db.objectStoreNames;for(let e=0;e<s.length;++e){const i=s[e],o=r.objectStore(i);t._hasGetAll=\"getAll\"in o;for(let e=0;e<o.indexNames.length;++e){const t=o.indexNames[e],r=o.index(t).keyPath,s=\"string\"==typeof r?r:\"[\"+p(r).join(\"+\")+\"]\";if(n[i]){const e=n[i].idxByName[s];e&&(e.name=t,delete n[i].idxByName[s],n[i].idxByName[t]=e)}}}\"undefined\"!=typeof navigator&&/Safari/.test(navigator.userAgent)&&!/(Chrome\\/|Edge\\/)/.test(navigator.userAgent)&&e.WorkerGlobalScope&&e instanceof e.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\\/(\\d*)/))[1]<604&&(t._hasGetAll=!1)}class vn{_parseStoresSpec(e,r){t(e).forEach((t=>{if(null!==e[t]){var s=e[t].split(\",\").map(((e,t)=>{const r=(e=e.trim()).replace(/([&*]|\\+\\+)/g,\"\"),s=/^\\[/.test(r)?r.match(/^\\[(.*)\\]$/)[1].split(\"+\"):r;return Xt(r,s||null,/\\&/.test(e),/\\*/.test(e),/\\+\\+/.test(e),n(s),0===t)})),i=s.shift();if(i.multi)throw new X.Schema(\"Primary key cannot be multi-valued\");s.forEach((e=>{if(e.auto)throw new X.Schema(\"Only primary key can be marked as autoIncrement (++)\");if(!e.keyPath)throw new X.Schema(\"Index must have a name and cannot be an empty string\")})),r[t]=Zt(t,i,s)}}))}stores(e){const n=this.db;this._cfg.storesSource=this._cfg.storesSource?r(this._cfg.storesSource,e):e;const s=n._versions,i={};let o={};return s.forEach((e=>{r(i,e._cfg.storesSource),o=e._cfg.dbschema={},e._parseStoresSpec(i,o)})),n._dbSchema=o,ln(n,[n._allTables,n,n.Transaction.prototype]),un(n,[n._allTables,n,n.Transaction.prototype,this._cfg.tables],t(o),o),n._storeNames=t(o),this}upgrade(e){return this._cfg.contentUpgrade=ue(this._cfg.contentUpgrade||ee,e),this}}function gn(e,t){let n=e._dbNamesDB;return n||(n=e._dbNamesDB=new $n(\"__dbnames\",{addons:[],indexedDB:e,IDBKeyRange:t}),n.version(1).stores({dbnames:\"name\"})),n.table(\"dbnames\")}function bn(e){return e&&\"function\"==typeof e.databases}function _n(e){return Je((function(){return Ke.letThrough=!0,e()}))}function wn(){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 xn(e){const n=e._state,{indexedDB:r}=e._deps;if(n.isBeingOpened||e.idbdb)return n.dbReadyPromise.then((()=>n.dbOpenError?ht(n.dbOpenError):e));R&&(n.openCanceller._stackHolder=q()),n.isBeingOpened=!0,n.dbOpenError=null,n.openComplete=!1;const s=n.openCanceller;function i(){if(n.openCanceller!==s)throw new X.DatabaseClosed(\"db.open() was cancelled\")}let o=n.dbReadyResolve,a=null,u=!1;return Ce.race([s,(\"undefined\"==typeof navigator?Ce.resolve():wn()).then((()=>new Ce(((s,o)=>{if(i(),!r)throw new X.MissingAPI;const l=e.name,c=n.autoSchema?r.open(l):r.open(l,Math.round(10*e.verno));if(!c)throw new X.MissingAPI;c.onerror=zt(o),c.onblocked=We(e._fireOnBlocked),c.onupgradeneeded=We((t=>{if(a=c.transaction,n.autoSchema&&!e._options.allowEmptyDB){c.onerror=Gt,a.abort(),c.result.close();const e=r.deleteDatabase(l);e.onsuccess=e.onerror=We((()=>{o(new X.NoSuchDatabase(`Database ${l} doesnt exist`))}))}else{a.onerror=zt(o);var s=t.oldVersion>Math.pow(2,62)?0:t.oldVersion;u=s<1,e._novip.idbdb=c.result,hn(e,s/10,a,o)}}),o),c.onsuccess=We((()=>{a=null;const r=e._novip.idbdb=c.result,i=p(r.objectStoreNames);if(i.length>0)try{const s=r.transaction(1===(o=i).length?o[0]:o,\"readonly\");n.autoSchema?function({_novip:e},n,r){e.verno=n.version/10;const s=e._dbSchema=yn(0,n,r);e._storeNames=p(n.objectStoreNames,0),un(e,[e._allTables],t(s),s)}(e,r,s):(mn(e,e._dbSchema,s),function(e,t){const n=dn(yn(0,e.idbdb,t),e._dbSchema);return!(n.add.length||n.change.some((e=>e.add.length||e.change.length)))}(e,s)||console.warn(\"Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Some queries may fail.\")),an(e,s)}catch(e){}var o;yt.push(e),r.onversionchange=We((t=>{n.vcFired=!0,e.on(\"versionchange\").fire(t)})),r.onclose=We((t=>{e.on(\"close\").fire(t)})),u&&function({indexedDB:e,IDBKeyRange:t},n){!bn(e)&&\"__dbnames\"!==n&&gn(e,t).put({name:n}).catch(ee)}(e._deps,l),s()}),o)}))))]).then((()=>(i(),n.onReadyBeingFired=[],Ce.resolve(_n((()=>e.on.ready.fire(e.vip)))).then((function t(){if(n.onReadyBeingFired.length>0){let r=n.onReadyBeingFired.reduce(ue,ee);return n.onReadyBeingFired=[],Ce.resolve(_n((()=>r(e.vip)))).then(t)}}))))).finally((()=>{n.onReadyBeingFired=null,n.isBeingOpened=!1})).then((()=>e)).catch((t=>{n.dbOpenError=t;try{a&&a.abort()}catch(e){}return s===n.openCanceller&&e._close(),ht(t)})).finally((()=>{n.openComplete=!0,o()}))}function kn(e){var t=t=>e.next(t),r=i(t),s=i((t=>e.throw(t)));function i(e){return t=>{var i=e(t),o=i.value;return i.done?o:o&&\"function\"==typeof o.then?o.then(r,s):n(o)?Promise.all(o).then(r,s):r(o)}}return i(t)()}function En(e,t,n){var r=arguments.length;if(r<2)throw new X.InvalidArgument(\"Too few arguments\");for(var s=new Array(r-1);--r;)s[r-1]=arguments[r];n=s.pop();var i=k(s);return[e,i,n]}function Pn(e,t,n,r,s){return Ce.resolve().then((()=>{const i=Ke.transless||Ke,o=e._createTransaction(t,n,e._dbSchema,r),a={trans:o,transless:i};if(r)o.idbtrans=r.idbtrans;else try{o.create(),e._state.PR1398_maxLoop=3}catch(r){return r.name===H.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(console.warn(\"Dexie: Need to reopen db\"),e._close(),e.open().then((()=>Pn(e,t,n,null,s)))):ht(r)}const u=T(s);let l;u&&Ze();const c=Ce.follow((()=>{if(l=s.call(o,o),l)if(u){var e=et.bind(null,null);l.then(e,e)}else\"function\"==typeof l.next&&\"function\"==typeof l.throw&&(l=kn(l))}),a);return(l&&\"function\"==typeof l.then?Ce.resolve(l).then((e=>o.active?e:ht(new X.PrematureCommit(\"Transaction committed too early. See http://bit.ly/2kdckMn\")))):c.then((()=>l))).then((e=>(r&&o._resolve(),o._completion.then((()=>e))))).catch((e=>(o._reject(e),ht(e))))}))}function Kn(e,t,r){const s=n(e)?e.slice():[e];for(let e=0;e<r;++e)s.push(t);return s}const On={stack:\"dbcore\",name:\"VirtualIndexMiddleware\",level:1,create:function(e){return{...e,table(t){const n=e.table(t),{schema:r}=n,s={},i=[];function o(e,t,n){const r=sn(e),a=s[r]=s[r]||[],u=null==e?0:\"string\"==typeof e?1:e.length,l=t>0,c={...n,isVirtual:l,keyTail:t,keyLength:u,extractKey:tn(e),unique:!l&&n.unique};if(a.push(c),c.isPrimaryKey||i.push(c),u>1){o(2===u?e[0]:e.slice(0,u-1),t+1,n)}return a.sort(((e,t)=>e.keyTail-t.keyTail)),c}const a=o(r.primaryKey.keyPath,0,r.primaryKey);s[\":id\"]=[a];for(const e of r.indexes)o(e.keyPath,0,e);function u(t){const n=t.query.index;return n.isVirtual?{...t,query:{index:n,range:(r=t.query.range,s=n.keyTail,{type:1===r.type?2:r.type,lower:Kn(r.lower,r.lowerOpen?e.MAX_KEY:e.MIN_KEY,s),lowerOpen:!0,upper:Kn(r.upper,r.upperOpen?e.MIN_KEY:e.MAX_KEY,s),upperOpen:!0})}}:t;var r,s}const l={...n,schema:{...r,primaryKey:a,indexes:i,getIndexByKeyPath:function(e){const t=s[sn(e)];return t&&t[0]}},count:e=>n.count(u(e)),query:e=>n.query(u(e)),openCursor(t){const{keyTail:r,isVirtual:s,keyLength:i}=t.query.index;if(!s)return n.openCursor(t);return n.openCursor(u(t)).then((n=>n&&function(n){const s=Object.create(n,{continue:{value:function(s){null!=s?n.continue(Kn(s,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,s){n.continuePrimaryKey(Kn(t,e.MAX_KEY,r),s)}},primaryKey:{get:()=>n.primaryKey},key:{get(){const e=n.key;return 1===i?e[0]:e.slice(0,i)}},value:{get:()=>n.value}});return s}(n)))}};return l}}}};function Sn(e,n,r,s){return r=r||{},s=s||\"\",t(e).forEach((t=>{if(o(n,t)){var i=e[t],a=n[t];if(\"object\"==typeof i&&\"object\"==typeof a&&i&&a){const e=C(i);e!==C(a)?r[s+t]=n[t]:\"Object\"===e?Sn(i,a,r,s+t+\".\"):i!==a&&(r[s+t]=n[t])}else i!==a&&(r[s+t]=n[t])}else r[s+t]=void 0})),t(n).forEach((t=>{o(e,t)||(r[s+t]=n[t])})),r}const An={stack:\"dbcore\",name:\"HooksMiddleware\",level:2,create:e=>({...e,table(t){const n=e.table(t),{primaryKey:r}=n.schema,s={...n,mutate(e){const s=Ke.trans,{deleting:i,creating:a,updating:u}=s.table(t).hook;switch(e.type){case\"add\":if(a.fire===ee)break;return s._promise(\"readwrite\",(()=>l(e)),!0);case\"put\":if(a.fire===ee&&u.fire===ee)break;return s._promise(\"readwrite\",(()=>l(e)),!0);case\"delete\":if(i.fire===ee)break;return s._promise(\"readwrite\",(()=>l(e)),!0);case\"deleteRange\":if(i.fire===ee)break;return s._promise(\"readwrite\",(()=>function(e){return c(e.trans,e.range,1e4)}(e)),!0)}return n.mutate(e);function l(e){const t=Ke.trans,s=e.keys||function(e,t){return\"delete\"===t.type?t.keys:t.keys||t.values.map(e.extractKey)}(r,e);if(!s)throw new Error(\"Keys missing\");return\"delete\"!==(e=\"add\"===e.type||\"put\"===e.type?{...e,keys:s}:{...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,s).then((l=>{const c=s.map(((n,s)=>{const c=l[s],h={onerror:null,onsuccess:null};if(\"delete\"===e.type)i.fire.call(h,n,c,t);else if(\"add\"===e.type||void 0===c){const i=a.fire.call(h,n,e.values[s],t);null==n&&null!=i&&(n=i,e.keys[s]=n,r.outbound||_(e.values[s],r.keyPath,n))}else{const r=Sn(c,e.values[s]),i=u.fire.call(h,r,n,c,t);if(i){const t=e.values[s];Object.keys(i).forEach((e=>{o(t,e)?t[e]=i[e]:_(t,e,i[e])}))}}return h}));return n.mutate(e).then((({failures:t,results:n,numFailures:r,lastResult:i})=>{for(let r=0;r<s.length;++r){const i=n?n[r]:s[r],o=c[r];null==i?o.onerror&&o.onerror(t[r]):o.onsuccess&&o.onsuccess(\"put\"===e.type&&l[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,s){return n.query({trans:e,values:!1,query:{index:r,range:t},limit:s}).then((({result:n})=>l({type:\"delete\",keys:n,trans:e}).then((r=>r.numFailures>0?Promise.reject(r.failures[0]):n.length<s?{failures:[],numFailures:0,lastResult:void 0}:c(e,{...t,lower:n[n.length-1],lowerOpen:!0},s)))))}}};return s}})};function Cn(e,t,n){try{if(!t)return null;if(t.keys.length<e.length)return null;const r=[];for(let s=0,i=0;s<t.keys.length&&i<e.length;++s)0===It(t.keys[s],e[i])&&(r.push(n?O(t.values[s]):t.values[s]),++i);return r.length===e.length?r:null}catch(e){return null}}const jn={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=Cn(e.keys,e.trans._cache,\"clone\"===e.cache);return t?Ce.resolve(t):n.getMany(e).then((t=>(e.trans._cache={keys:e.keys,values:\"clone\"===e.cache?O(t):t},t)))},mutate:e=>(\"add\"!==e.type&&(e.trans._cache=null),n.mutate(e))}}})};function Dn(e){return!(\"from\"in e)}const In=function(e,t){if(!this){const t=new In;return e&&\"d\"in e&&r(t,e),t}r(this,arguments.length?{d:1,from:e,to:arguments.length>1?t:e}:{d:0})};function Bn(e,t,n){const s=It(t,n);if(isNaN(s))return;if(s>0)throw RangeError();if(Dn(e))return r(e,{from:t,to:n,d:1});const i=e.l,o=e.r;if(It(n,e.from)<0)return i?Bn(i,t,n):e.l={from:t,to:n,d:1,l:null,r:null},Mn(e);if(It(t,e.to)>0)return o?Bn(o,t,n):e.r={from:t,to:n,d:1,l:null,r:null},Mn(e);It(t,e.from)<0&&(e.from=t,e.l=null,e.d=o?o.d+1:1),It(n,e.to)>0&&(e.to=n,e.r=null,e.d=e.l?e.l.d+1:1);const a=!e.r;i&&!e.l&&Tn(e,i),o&&a&&Tn(e,o)}function Tn(e,t){Dn(t)||function e(t,{from:n,to:r,l:s,r:i}){Bn(t,n,r),s&&e(t,s),i&&e(t,i)}(e,t)}function Rn(e,t){const n=Fn(t);let r=n.next();if(r.done)return!1;let s=r.value;const i=Fn(e);let o=i.next(s.from),a=o.value;for(;!r.done&&!o.done;){if(It(a.from,s.to)<=0&&It(a.to,s.from)>=0)return!0;It(s.from,a.from)<0?s=(r=n.next(a.from)).value:a=(o=i.next(s.from)).value}return!1}function Fn(e){let t=Dn(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&&It(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||It(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 Mn(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),s=r>1?\"r\":r<-1?\"l\":\"\";if(s){const t=\"r\"===s?\"l\":\"r\",n={...e},r=e[s];e.from=r.from,e.to=r.to,e[s]=r[s],n[s]=r[t],e[t]=n,n.d=Nn(n)}e.d=Nn(e)}function Nn({r:e,l:t}){return(e?t?Math.max(e.d,t.d):e.d:t?t.d:0)+1}a(In.prototype,{add(e){return Tn(this,e),this},addKey(e){return Bn(this,e,e),this},addKeys(e){return e.forEach((e=>Bn(this,e,e))),this},[j](){return Fn(this)}});const qn={stack:\"dbcore\",level:0,create:e=>{const r=e.schema.name,s=new In(e.MIN_KEY,e.MAX_KEY);return{...e,table:i=>{const o=e.table(i),{schema:a}=o,{primaryKey:u}=a,{extractKey:l,outbound:c}=u,h={...o,mutate:e=>{const t=e.trans,u=t.mutatedParts||(t.mutatedParts={}),l=e=>{const t=`idb://${r}/${i}/${e}`;return u[t]||(u[t]=new In)},c=l(\"\"),h=l(\":dels\"),{type:d}=e;let[f,p]=\"deleteRange\"===e.type?[e.range]:\"delete\"===e.type?[e.keys]:e.values.length<50?[[],e.values]:[];const y=e.trans._cache;return o.mutate(e).then((e=>{if(n(f)){\"delete\"!==d&&(f=e.results),c.addKeys(f);const t=Cn(f,y);t||\"add\"===d||h.addKeys(f),(t||p)&&function(e,t,r,s){function i(t){const i=e(t.name||\"\");function o(e){return null!=e?t.extractKey(e):null}const a=e=>t.multiEntry&&n(e)?e.forEach((e=>i.addKey(e))):i.addKey(e);(r||s).forEach(((e,t)=>{const n=r&&o(r[t]),i=s&&o(s[t]);0!==It(n,i)&&(null!=n&&a(n),null!=i&&a(i))}))}t.indexes.forEach(i)}(l,a,t,p)}else if(f){const e={from:f.lower,to:f.upper};h.add(e),c.add(e)}else c.add(s),h.add(s),a.indexes.forEach((e=>l(e.name).add(s)));return e}))}},d=({query:{index:t,range:n}})=>{var r,s;return[t,new In(null!==(r=n.lower)&&void 0!==r?r:e.MIN_KEY,null!==(s=n.upper)&&void 0!==s?s:e.MAX_KEY)]},f={get:e=>[u,new In(e.key)],getMany:e=>[u,(new In).addKeys(e.keys)],count:d,query:d,openCursor:d};return t(f).forEach((e=>{h[e]=function(t){const{subscr:n}=Ke;if(n){const a=e=>{const t=`idb://${r}/${i}/${e}`;return n[t]||(n[t]=new In)},u=a(\"\"),h=a(\":dels\"),[d,p]=f[e](t);if(a(d.name||\"\").add(p),!d.isPrimaryKey){if(\"count\"!==e){const n=\"query\"===e&&c&&t.values&&o.query({...t,values:!1});return o[e].apply(this,arguments).then((r=>{if(\"query\"===e){if(c&&t.values)return n.then((({result:e})=>(u.addKeys(e),r)));const e=t.values?r.result.map(l):r.result;t.values?u.addKeys(e):h.addKeys(e)}else if(\"openCursor\"===e){const e=r,n=t.values;return e&&Object.create(e,{key:{get:()=>(h.addKey(e.primaryKey),e.key)},primaryKey:{get(){const t=e.primaryKey;return h.addKey(t),t}},value:{get:()=>(n&&u.addKey(e.primaryKey),e.value)}})}return r}))}h.add(s)}}return o[e].apply(this,arguments)}})),h}}}};class $n{constructor(e,t){this._middlewares={},this.verno=0;const n=$n.dependencies;this._options=t={addons:$n.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 s={dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:ee,dbReadyPromise:null,cancelOpen:ee,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3};var i;s.dbReadyPromise=new Ce((e=>{s.dbReadyResolve=e})),s.openCanceller=new Ce(((e,t)=>{s.cancelOpen=t})),this._state=s,this.name=e,this.on=Et(this,\"populate\",\"blocked\",\"versionchange\",\"close\",{ready:[ue,ee]}),this.on.ready.subscribe=y(this.on.ready.subscribe,(e=>(t,n)=>{$n.vip((()=>{const r=this._state;if(r.openComplete)r.dbOpenError||Ce.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,Pt(Rt.prototype,(function(e,t){this.db=i;let n=wt,r=null;if(t)try{n=t()}catch(e){r=e}const s=e._ctx,o=s.table,a=o.hook.reading.fire;this._ctx={table:o,index:s.index,isPrimKey:!s.index||o.schema.primKey.keyPath&&s.index===o.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:s.or,valueMapper:a!==te?a:null}}))),this.Table=function(e){return Pt(kt.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:Et(null,{creating:[se,ee],reading:[ne,te],updating:[oe,ee],deleting:[ie,ee]})}))}(this),this.Transaction=function(e){return Pt(Qt.prototype,(function(t,n,r,s,i){this.db=e,this.mode=t,this.storeNames=n,this.schema=r,this.chromeTransactionDurability=s,this.idbtrans=null,this.on=Et(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 Ce(((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(),ht(e)}))}))}(this),this.Version=function(e){return Pt(vn.prototype,(function(t){this.db=e,this._cfg={version:t,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}}))}(this),this.WhereClause=function(e){return Pt(Yt.prototype,(function(t,n,r){this.db=e,this._ctx={table:t,index:\":id\"===n?null:n,or:r};const s=e._deps.indexedDB;if(!s)throw new X.MissingAPI;this._cmp=this._ascending=s.cmp.bind(s),this._descending=(e,t)=>s.cmp(t,e),this._max=(e,t)=>s.cmp(e,t)>0?e:t,this._min=(e,t)=>s.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=en(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),yt.filter((e=>e.name===this.name&&e!==this&&!e._state.vcFired)).map((t=>t.on(\"versionchange\").fire(e)))},this.use(On),this.use(An),this.use(qn),this.use(jn),this.vip=Object.create(this,{_vip:{value:!0}}),r.forEach((e=>e(this)))}version(e){if(isNaN(e)||e<.1)throw new X.Type(\"Given version is not a positive number\");if(e=Math.round(10*e)/10,this.idbdb||this._state.isBeingOpened)throw new X.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(cn),n.stores({}),this._state.autoSchema=!1,n)}_whenReady(e){return this.idbdb&&(this._state.openComplete||Ke.letThrough||this._vip)?e():new Ce(((e,t)=>{if(this._state.openComplete)return t(new X.DatabaseClosed(this._state.dbOpenError));if(!this._state.isBeingOpened){if(!this._options.autoOpen)return void t(new X.DatabaseClosed);this.open().catch(ee)}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 s=this._middlewares[e]||(this._middlewares[e]=[]);return s.push({stack:e,create:t,level:null==n?10:n,name:r}),s.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 xn(this)}_close(){const e=this._state,t=yt.indexOf(this);if(t>=0&&yt.splice(t,1),this.idbdb){try{this.idbdb.close()}catch(e){}this._novip.idbdb=null}e.dbReadyPromise=new Ce((t=>{e.dbReadyResolve=t})),e.openCanceller=new Ce(((t,n)=>{e.cancelOpen=n}))}close(){this._close();const e=this._state;this._options.autoOpen=!1,e.dbOpenError=new X.DatabaseClosed,e.isBeingOpened&&e.cancelOpen(e.dbOpenError)}delete(){const e=arguments.length>0,t=this._state;return new Ce(((n,r)=>{const s=()=>{this.close();var e=this._deps.indexedDB.deleteDatabase(this.name);e.onsuccess=We((()=>{!function({indexedDB:e,IDBKeyRange:t},n){!bn(e)&&\"__dbnames\"!==n&&gn(e,t).delete(n).catch(ee)}(this._deps,this.name),n()})),e.onerror=zt(r),e.onblocked=this._fireOnBlocked};if(e)throw new X.InvalidArgument(\"Arguments not allowed in db.delete()\");t.isBeingOpened?t.dbReadyPromise.then(s):s()}))}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 t(this._allTables).map((e=>this._allTables[e]))}transaction(){const e=En.apply(this,arguments);return this._transaction.apply(this,e)}_transaction(e,t,n){let r=Ke.trans;r&&r.db===this&&-1===e.indexOf(\"!\")||(r=null);const s=-1!==e.indexOf(\"?\");let i,o;e=e.replace(\"!\",\"\").replace(\"?\",\"\");try{if(o=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 X.InvalidArgument(\"Invalid transaction mode: \"+e);i=\"readwrite\"}if(r){if(\"readonly\"===r.mode&&\"readwrite\"===i){if(!s)throw new X.SubTransaction(\"Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY\");r=null}r&&o.forEach((e=>{if(r&&-1===r.storeNames.indexOf(e)){if(!s)throw new X.SubTransaction(\"Table \"+e+\" not included in parent transaction.\");r=null}})),s&&r&&!r.active&&(r=null)}}catch(e){return r?r._promise(null,((t,n)=>{n(e)})):ht(e)}const a=Pn.bind(null,this,i,o,r,n);return r?r._promise(i,a,\"lock\"):Ke.trans?ot(Ke.transless,(()=>this._whenReady(a))):this._whenReady(a)}table(e){if(!o(this._allTables,e))throw new X.InvalidTable(`Table ${e} does not exist`);return this._allTables[e]}}const Un=\"undefined\"!=typeof Symbol&&\"observable\"in Symbol?Symbol.observable:\"@@observable\";class Ln{constructor(e){this._subscribe=e}subscribe(e,t,n){return this._subscribe(e&&\"function\"!=typeof e?e:{next:e,error:t,complete:n})}[Un](){return this}}function Vn(e,n){return t(n).forEach((t=>{Tn(e[t]||(e[t]=new In),n[t])})),e}function Wn(e){return new Ln((n=>{const r=T(e);let s=!1,i={},o={};const a={get closed(){return s},unsubscribe:()=>{s=!0,Ht.storagemutated.unsubscribe(h)}};n.start&&n.start(a);let u=!1,l=!1;function c(){return t(o).some((e=>i[e]&&Rn(i[e],o[e])))}const h=e=>{Vn(i,e),c()&&d()},d=()=>{if(u||s)return;i={};const t={},f=function(t){r&&Ze();const n=()=>Je(e,{subscr:t,trans:null}),s=Ke.trans?ot(Ke.transless,n):n();return r&&s.then(et,et),s}(t);l||(Ht(\"storagemutated\",h),l=!0),u=!0,Promise.resolve(f).then((e=>{u=!1,s||(c()?d():(i={},o=t,n.next&&n.next(e)))}),(e=>{u=!1,n.error&&n.error(e),a.unsubscribe()}))};return d(),a}))}let Yn;try{Yn={indexedDB:e.indexedDB||e.mozIndexedDB||e.webkitIndexedDB||e.msIndexedDB,IDBKeyRange:e.IDBKeyRange||e.webkitIDBKeyRange}}catch(e){Yn={indexedDB:null,IDBKeyRange:null}}const zn=$n;function Gn(e){let t=Hn;try{Hn=!0,Ht.storagemutated.fire(e)}finally{Hn=t}}a(zn,{...Z,delete:e=>new zn(e,{addons:[]}).delete(),exists:e=>new zn(e,{addons:[]}).open().then((e=>(e.close(),!0))).catch(\"NoSuchDatabaseError\",(()=>!1)),getDatabaseNames(e){try{return function({indexedDB:e,IDBKeyRange:t}){return bn(e)?Promise.resolve(e.databases()).then((e=>e.map((e=>e.name)).filter((e=>\"__dbnames\"!==e)))):gn(e,t).toCollection().primaryKeys()}(zn.dependencies).then(e)}catch(e){return ht(new X.MissingAPI)}},defineClass:()=>function(e){r(this,e)},ignoreTransaction:e=>Ke.trans?ot(Ke.transless,e):e(),vip:_n,async:function(e){return function(){try{var t=kn(e.apply(this,arguments));return t&&\"function\"==typeof t.then?t:Ce.resolve(t)}catch(e){return ht(e)}}},spawn:function(e,t,n){try{var r=kn(e.apply(n,t||[]));return r&&\"function\"==typeof r.then?r:Ce.resolve(r)}catch(e){return ht(e)}},currentTransaction:{get:()=>Ke.trans||null},waitFor:function(e,t){const n=Ce.resolve(\"function\"==typeof e?zn.ignoreTransaction(e):e).timeout(t||6e4);return Ke.trans?Ke.trans.waitFor(n):n},Promise:Ce,debug:{get:()=>R,set:e=>{F(e,\"dexie\"===e?()=>!0:bt)}},derive:c,extend:r,props:a,override:y,Events:Et,on:Ht,liveQuery:Wn,extendObservabilitySet:Vn,getByKeyPath:b,setByKeyPath:_,delByKeyPath:function(e,t){\"string\"==typeof t?_(e,t,void 0):\"length\"in t&&[].map.call(t,(function(t){_(e,t,void 0)}))},shallowClone:w,deepClone:O,getObjectDiff:Sn,cmp:It,asap:v,minKey:-(1/0),addons:[],connections:yt,errnames:H,dependencies:Yn,semVer:\"3.2.1\",version:\"3.2.1\".split(\".\").map((e=>parseInt(e))).reduce(((e,t,n)=>e+t/Math.pow(10,2*n)))}),zn.maxKey=en(zn.dependencies.IDBKeyRange),\"undefined\"!=typeof dispatchEvent&&\"undefined\"!=typeof addEventListener&&(Ht(\"storagemutated\",(e=>{if(!Hn){let t;mt?(t=document.createEvent(\"CustomEvent\"),t.initCustomEvent(\"x-storagemutated-1\",!0,!0,e)):t=new CustomEvent(\"x-storagemutated-1\",{detail:e}),Hn=!0,dispatchEvent(t),Hn=!1}})),addEventListener(\"x-storagemutated-1\",(({detail:e})=>{Hn||Gn(e)})));let Hn=!1;if(\"undefined\"!=typeof BroadcastChannel){const e=new BroadcastChannel(\"x-storagemutated-1\");Ht(\"storagemutated\",(t=>{Hn||e.postMessage(t)})),e.onmessage=e=>{e.data&&Gn(e.data)}}else if(\"undefined\"!=typeof self&&\"undefined\"!=typeof navigator){Ht(\"storagemutated\",(e=>{try{Hn||(\"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&&Gn(t.changedParts)}}));const e=self.document&&navigator.serviceWorker;e&&e.addEventListener(\"message\",(function({data:e}){e&&\"x-storagemutated-1\"===e.type&&Gn(e.changedParts)}))}Ce.rejectionMapper=function(e,t){if(!e||e instanceof W||e instanceof TypeError||e instanceof SyntaxError||!e.name||!J[e.name])return e;var n=new J[e.name](t||e.message,e);return\"stack\"in e&&l(n,\"stack\",{get:function(){return this.inner.stack}}),n},F(R,bt);export{$n as Dexie,In as RangeSet,$n as default,Wn as liveQuery,Tn as mergeRanges,Rn as rangesOverlap};","/** @module @category Offline */\nimport Dexie, { Table } from \"dexie\";\nimport { getLoggedInUser } from \"@openmrs/esm-api\";\nimport { createGlobalStore } from \"@openmrs/esm-state\";\n\n/**\n * Defines an item queued up in the offline synchronization queue.\n * A `SyncItem` contains both meta information about the item in the sync queue, as well as the\n * actual data to be synchronized (i.e. the item's `content`).\n */\nexport interface SyncItem<T = any> {\n id?: number;\n userId: string;\n type: string;\n content: T;\n createdOn: Date;\n descriptor: QueueItemDescriptor;\n lastError?: {\n name?: string;\n message?: string;\n };\n}\n\n/**\n * Contains information about the sync item which has been provided externally by the caller\n * who added the item to the queue.\n * This information is all optional, but, when provided while enqueuing the item, can be used in other\n * locations to better represent the sync item, e.g. in the UI.\n */\nexport interface QueueItemDescriptor {\n id?: string;\n dependencies?: Array<{\n id: string;\n type: string;\n }>;\n patientUuid?: string;\n displayName?: string;\n}\n\n/**\n * A function which, when invoked, performs the actual client-server synchronization of the given\n * `item` (which is the actual data to be synchronized).\n * The function receives additional `options` which provide additional data that can be used\n * for synchronizing.\n */\nexport type ProcessSyncItem<T> = (\n item: T,\n options: SyncProcessOptions<T>\n) => Promise<any>;\n\n/**\n * Additional data which can be used for synchronizing data in a {@link ProcessSyncItem} function.\n */\nexport interface SyncProcessOptions<T> {\n abort: AbortController;\n userId: string;\n index: number;\n items: Array<T>;\n dependencies: Array<any>;\n}\n\n/**\n * Defines additional options which can optionally be provided when setting up a synchronization callback\n * for a specific synchronization item type.\n * These are not required, but, when set, allow further\n */\ninterface SetupOfflineSyncOptions<T> {\n /**\n * Invoked when the user requests to edit a sync item.\n * The typical behavior for such a callback is to launch a UI which allows editing the content\n * encapsulated by the sync item.\n * @param syncItem The sync item to be edited.\n */\n onBeginEditSyncItem?(syncItem: SyncItem<T>): void;\n}\n\n/**\n * Represents a synchronization handler which has been globally registered by the\n * {@link setupOfflineSync} function.\n * These handlers are used for synchronizing queued data.\n */\ninterface SyncHandler {\n readonly type: string;\n readonly dependsOn: ReadonlyArray<string>;\n readonly process: ProcessSyncItem<unknown>;\n readonly options: Readonly<SetupOfflineSyncOptions<any>>;\n}\n\n/**\n * Represents the data inside the global offline synchronization store.\n * Provides information about a currently ongoing synchronization.\n */\nexport interface OfflineSynchronizationStore {\n synchronization?: {\n totalCount: number;\n pendingCount: number;\n abortController: AbortController;\n };\n}\n\ninterface SyncResultBag {\n [type: string]: Record<string, any>;\n}\n\nclass OfflineDb extends Dexie {\n syncQueue: Table<SyncItem, number>;\n\n constructor() {\n super(\"EsmOffline\");\n\n this.version(3).stores({\n syncQueue: \"++id,userId,type,[userId+type]\",\n });\n\n this.syncQueue = this.table(\"syncQueue\");\n }\n}\n\nconst db = new OfflineDb();\nconst handlers: Record<string, SyncHandler> = {};\n\n/**\n * @internal Temporarily added for esm-offline-tools-app. Please don't use elsewhere.\n */\nexport function getOfflineDb() {\n return db;\n}\n\nconst syncStore = createGlobalStore<OfflineSynchronizationStore>(\n \"offline-synchronization\",\n {}\n);\n\nexport function getOfflineSynchronizationStore() {\n return syncStore;\n}\n\n/**\n * Runs a full synchronization of **all** queued synchronization items.\n */\nexport async function runSynchronization() {\n if (syncStore.getState().synchronization) {\n return;\n }\n\n const totalCount = await db.syncQueue.count();\n const promises: Record<string, Promise<void>> = {};\n const handlerQueue = Object.entries(handlers);\n const maxIter = handlerQueue.length;\n const results: SyncResultBag = {};\n const abortController = new AbortController();\n const notifySyncProgress = () => {\n const synchronization = syncStore.getState().synchronization!;\n\n syncStore.setState({\n synchronization: {\n ...synchronization,\n pendingCount: synchronization!.pendingCount - 1,\n },\n });\n };\n\n try {\n syncStore.setState({\n synchronization: {\n totalCount,\n pendingCount: totalCount,\n abortController,\n },\n });\n\n // we try until the queue is depleted, but no more than queue.length tries.\n for (let iter = 0; iter < maxIter && handlerQueue.length > 0; iter++) {\n for (let i = handlerQueue.length; i--; ) {\n const [name, handler] = handlerQueue[i];\n const deps = handler.dependsOn.map((dep) => promises[dep]);\n\n if (deps.every(Boolean)) {\n results[name] = {};\n await Promise.all(deps);\n\n promises[name] = processHandler(\n handler,\n results,\n abortController,\n notifySyncProgress\n );\n handlerQueue.splice(i, 1);\n }\n }\n }\n\n await Promise.allSettled(Object.values(promises));\n } finally {\n syncStore.setState({ synchronization: undefined });\n }\n}\n\nasync function processHandler(\n { type, dependsOn, process }: SyncHandler,\n results: SyncResultBag,\n abortController: AbortController,\n notifySyncProgress: () => void\n) {\n const table = db.syncQueue;\n const items: Array<[number, unknown, QueueItemDescriptor]> = [];\n const contents: Array<unknown> = [];\n const userId = await getUserId();\n\n await table.where({ type, userId }).each((item, cursor) => {\n items.push([cursor.primaryKey, item.content, item.descriptor]);\n contents.push(item.content);\n });\n\n for (let i = 0; i < items.length; i++) {\n const [key, item, { id, dependencies = [] }] = items[i];\n\n try {\n const result = await process(item, {\n abort: abortController,\n index: i,\n items: contents,\n userId,\n dependencies: dependencies.map(({ id, type }) =>\n dependsOn.includes(type) ? results[type][id] : undefined\n ),\n });\n\n if (id !== undefined) {\n results[type][id] = result;\n }\n\n await table.delete(key);\n } catch (e) {\n await table.update(key, {\n lastError: {\n name: e?.name,\n message: e?.message ?? e?.toString(),\n },\n });\n } finally {\n notifySyncProgress();\n }\n }\n}\n\nasync function getUserId() {\n const user = await getLoggedInUser();\n return user?.uuid || \"*\";\n}\n\n/**\n * Enqueues a new item in the sync queue for a specific user.\n * @param userId The user with whom the sync item should be associated with.\n * @param type The identifying type of the synchronization item.\n * @param content The actual data to be synchronized.\n * @param descriptor An optional descriptor providing additional metadata about the sync item.\n */\nexport async function queueSynchronizationItemFor<T>(\n userId: string,\n type: string,\n content: T,\n descriptor?: QueueItemDescriptor\n) {\n const table = db.syncQueue;\n const targetId = descriptor && descriptor.id;\n\n if (targetId !== undefined) {\n // in case of replacement (i.e., used same ID) we just remove the existing item\n await table\n .where({ type, userId })\n .filter((item) => item?.descriptor.id === targetId)\n .delete();\n }\n\n const id = await table.add({\n type,\n content,\n userId,\n descriptor: descriptor || {},\n createdOn: new Date(),\n });\n\n return id;\n}\n\n/**\n * Enqueues a new item in the sync queue and associates the item with the currently signed in user.\n * @param type The identifying type of the synchronization item.\n * @param content The actual data to be synchronized.\n * @param descriptor An optional descriptor providing additional metadata about the sync item.\n */\nexport async function queueSynchronizationItem<T>(\n type: string,\n content: T,\n descriptor?: QueueItemDescriptor\n) {\n const userId = await getUserId();\n return await queueSynchronizationItemFor(userId, type, content, descriptor);\n}\n\n/**\n * Returns all currently queued up sync items of a given user.\n * @param userId The ID of the user whose synchronization items should be returned.\n * @param type The identifying type of the synchronization items to be returned..\n */\nexport async function getSynchronizationItemsFor<T>(\n userId: string,\n type: string\n) {\n const table = db.syncQueue;\n const items: Array<T> = [];\n\n await table.where({ type, userId }).each((item) => {\n items.push(item.content);\n });\n\n return items;\n}\n\n/**\n * Returns all currently queued up sync items of the currently signed in user.\n * @param type The identifying type of the synchronization items to be returned.\n */\nexport async function getSynchronizationItems<T>(type: string) {\n const userId = await getUserId();\n return await getSynchronizationItemsFor<T>(userId, type);\n}\n\n/**\n * Returns a queued sync item with the given ID or `undefined` if no such item exists.\n * @param id The ID of the requested sync item.\n */\nexport async function getSynchronizationItem<T = any>(\n id: number\n): Promise<SyncItem<T> | undefined> {\n return await db.syncQueue.get(id);\n}\n\n/**\n * Returns whether editing synchronization items of the given type is supported by the currently\n * registered synchronization handlers.\n * @param type The identifying type of the synchronization item which should be edited.\n */\nexport function canBeginEditSynchronizationItemsOfType(type: string) {\n // Editing an item can be requested as long as callback for this flow exists on the associated handler.\n return !!handlers[type]?.options.onBeginEditSyncItem;\n}\n\n/**\n * Triggers an edit flow for the given synchronization item.\n * If this is not possible, throws an error.\n * @param id The ID of the synchronization item to be edited.\n */\nexport async function beginEditSynchronizationItem(id: number) {\n const item = await getSynchronizationItem(id);\n if (!item) {\n throw new Error(`No sync item with the ID ${id} exists.`);\n }\n\n const editCallback = handlers[item.type]?.options.onBeginEditSyncItem;\n if (!editCallback) {\n throw new Error(\n `A sync item with the ID ${id} 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 \"${item.type}\" supports editing items.`\n );\n }\n\n editCallback(item);\n}\n\n/**\n * Deletes a queued up sync item with the given ID.\n * @param id The ID of the synchronization item to be deleted.\n */\nexport async function deleteSynchronizationItem(id: number) {\n await db.syncQueue.delete(id);\n}\n\n/**\n * Registers a new synchronization handler which is able to synchronize data of a specific type.\n * @param type The identifying type of the synchronization items which can be handled by this handler.\n * @param dependsOn An array of other sync item types which must be synchronized before this handler\n * can synchronize its own data. Items of these types are effectively dependencies of the data\n * synchronized by this handler.\n * @param process A function which, when invoked, performs the actual client-server synchronization of the given\n * `item` (which is the actual data to be synchronized).\n * @param options Additional options which can optionally be provided when setting up a synchronization callback\n * for a specific synchronization item type.\n */\nexport function setupOfflineSync<T>(\n type: string,\n dependsOn: Array<string>,\n process: ProcessSyncItem<T>,\n options: SetupOfflineSyncOptions<T> = {}\n) {\n handlers[type] = {\n type,\n dependsOn,\n process,\n options,\n };\n}\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[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;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","/** @module @category Offline */\nimport { v4 } from \"uuid\";\n\nexport const offlineUuidPrefix = \"OFFLINE+\";\n\n/** Generates a UUID-like string which is used for uniquely identifying objects while offline. */\nexport function generateOfflineUuid() {\n return offlineUuidPrefix + v4();\n}\n\n/** Checks whether the given string has the format of an offline UUID generated by {@link generateOfflineUuid} */\nexport function isOfflineUuid(uuid: string) {\n return uuid.startsWith(offlineUuidPrefix);\n}\n","/** @module @category Offline */\nimport Dexie, { Table } from \"dexie\";\nimport { createGlobalStore } from \"@openmrs/esm-state\";\n\nexport interface OfflinePatientDataSyncStore {\n /**\n * For each patient ID of the patients whose data is currently made available offline, provides\n * the current data synchronizaton state.\n */\n offlinePatientDataSyncState: Record<string, OfflinePatientDataSyncState>;\n /**\n * Holds the list of currently registered handlers which deal with patients that should be available offline.\n * The key is a unique identifier which, once defined, should never change as it gives identity to\n * the handler registration.\n */\n handlers: Record<string, OfflinePatientDataSyncHandler>;\n}\n\nexport interface OfflinePatientDataSyncState {\n /**\n * The time when this state snapshot was initially created.\n */\n readonly timestamp: Date;\n /**\n * A list of the data sync handler registration identifiers which are still in the process\n * of synchronizing the patient's data.\n */\n readonly syncingHandlers: Array<string>;\n /**\n * A list of the data sync handler registration identifiers which successfully synchronized the\n * patient's data.\n */\n readonly syncedHandlers: Array<string>;\n /**\n * A list of the data sync handler registration identifiers which failed to synchronize the\n * patient's data.\n */\n readonly failedHandlers: Array<string>;\n /**\n * A set of error messages associated with the identifers of the failed handlers.\n */\n readonly errors: Record<string, string>;\n /**\n * Aborts the process of downloading data.\n * @returns `true` if the cancellation could be triggered (that is, if there were any syncing handlers);\n * `false` if not.\n */\n abort(): boolean;\n}\n\nexport interface OfflinePatientDataSyncHandler {\n /**\n * A name of the handler registration which can be displayed to the user.\n * This is ideally translated.\n */\n readonly displayName: string;\n /**\n * A function which is invoked when a patient is added to the app's offline patient cache.\n * Signals to the handler that the patient's data must be made available offline.\n * @param args Arguments which provide data about the patient to be made available offline.\n * @returns A promise which should resolve if all data could be cached and reject when there was an issue\n * caching the data.\n */\n onOfflinePatientAdded(args: OfflinePatientArgs): Promise<void>;\n}\n\nexport interface OfflinePatientArgs {\n /**\n * The UUID of the patient that should be made available offline.\n */\n patientUuid: string;\n /**\n * An {@link AbortSignal} which notifies about the cancellation of the operation.\n */\n signal: AbortSignal;\n}\n\nconst store = createGlobalStore<OfflinePatientDataSyncStore>(\n \"offline-patients\",\n {\n offlinePatientDataSyncState: {},\n handlers: {},\n }\n);\n\nexport function getOfflinePatientDataStore() {\n return store;\n}\n\n/**\n * Attempts to add the specified patient handler registration to the list of offline patient handlers.\n * @param identifier A key which uniquely identifies the registration.\n * @param handler The patient handler registration to be registered.\n * @returns `true` if the registration was successfully made; `false` if another registration with\n * the same identifier has already been registered before.\n */\nexport function registerOfflinePatientHandler(\n identifier: string,\n handler: OfflinePatientDataSyncHandler\n) {\n const state = store.getState();\n store.setState({\n handlers: { ...state.handlers, [identifier]: handler },\n });\n}\n\n/**\n * Notifies all registered offline patient handlers that a new patient must be made available offline.\n * @param args Arguments which provide data about the patient to be made available offline.\n * @returns A promise which resolves once all registered handlers have finished synchronizing.\n */\nexport async function syncOfflinePatientData(patientUuid: string) {\n const handlers = Object.entries(store.getState().handlers);\n const handlerIdentifiers = handlers.map(([identifier]) => identifier);\n const syncedHandlers: Array<string> = [];\n const failedHandlers: Array<string> = [];\n const errors = {};\n const abortController = new AbortController();\n\n await setPatientDataSyncState(patientUuid, {\n timestamp: new Date(),\n syncingHandlers: handlerIdentifiers,\n syncedHandlers,\n failedHandlers,\n errors,\n abort: () => {\n abortController.abort();\n return true;\n },\n });\n\n await Promise.all(\n handlers.map(async ([identifier, handler]) => {\n try {\n await handler.onOfflinePatientAdded({\n patientUuid,\n signal: abortController.signal,\n });\n // eslint-disable-next-line no-console\n console.debug(\n `Offline patient handler ${identifier} successfully synchronized patient data.`\n );\n\n syncedHandlers.push(identifier);\n } catch (e) {\n console.error(\n `Offline patient handler ${identifier} failed. Error: `,\n e\n );\n\n failedHandlers.push(identifier);\n errors[identifier] = e?.message ?? e?.toString() ?? \"\";\n }\n })\n );\n\n await setPatientDataSyncState(patientUuid, {\n timestamp: new Date(),\n syncingHandlers: [],\n syncedHandlers,\n failedHandlers,\n errors,\n abort: () => false,\n });\n}\n\nasync function setPatientDataSyncState(\n patientUuid: string,\n nextState: OfflinePatientDataSyncState\n) {\n const state = store.getState();\n store.setState({\n offlinePatientDataSyncState: {\n ...state.offlinePatientDataSyncState,\n [patientUuid]: nextState,\n },\n });\n\n const db = new OfflinePatientDataDb();\n const existingEntry = await db.offlinePatientDataSyncStates.get({\n patientUuid,\n });\n const nextEntry: OfflinePatientDataSyncStateEntry = {\n id: existingEntry?.id,\n patientUuid,\n state: {\n timestamp: nextState.timestamp,\n syncedHandlers: nextState.syncedHandlers,\n failedHandlers: [\n ...nextState.failedHandlers,\n ...nextState.syncingHandlers,\n ],\n errors: nextState.errors,\n },\n };\n\n await db.offlinePatientDataSyncStates.put(nextEntry);\n}\n\nexport async function loadPersistedPatientDataSyncState() {\n const db = new OfflinePatientDataDb();\n const persistedStates = await db.offlinePatientDataSyncStates.toArray();\n const nextState = store.getState().offlinePatientDataSyncState;\n\n for (const entry of persistedStates) {\n nextState[entry.patientUuid] = {\n ...entry.state,\n syncingHandlers: [],\n abort: () => false,\n };\n }\n\n store.setState({ offlinePatientDataSyncState: nextState });\n}\n\nclass OfflinePatientDataDb extends Dexie {\n offlinePatientDataSyncStates: Table<OfflinePatientDataSyncStateEntry, number>;\n\n constructor() {\n super(\"EsmOfflinePatientData\");\n\n this.version(1).stores({\n offlinePatientDataSyncStates: \"++id,&patientUuid\",\n });\n\n this.offlinePatientDataSyncStates = this.table(\n \"offlinePatientDataSyncStates\"\n );\n }\n}\n\ntype PersistedOfflinePatientDataSyncState = Omit<\n Omit<OfflinePatientDataSyncState, \"syncingHandlers\">,\n \"abort\"\n>;\n\ninterface OfflinePatientDataSyncStateEntry {\n id?: number;\n patientUuid: string;\n state: PersistedOfflinePatientDataSyncState;\n}\n"],"names":["resolveDirectory","exports","rootDirLevel","meta","url","console","error","Error","urlString","rootDirectoryLevel","a","document","createElement","href","pathname","numDirsProcessed","index","length","finalPath","slice","protocol","host","Number","isInteger","module","__WEBPACK_EXTERNAL_MODULE__766__","__WEBPACK_EXTERNAL_MODULE__685__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","y","__system_context__","d","definition","key","o","Object","defineProperty","enumerable","get","g","globalThis","this","Function","e","window","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","scriptUrl","importScripts","location","currentScript","src","scripts","getElementsByTagName","replace","p","autoPublicPath","self","_","n","t","Promise","MessageChannel","port1","onmessage","data","postMessage","port2","Array","iterator","isArray","toString","constructor","name","from","test","i","done","TypeError","next","bind","promise","resolve","reject","URL","u","type","assign","then","c","f","s","v","nn","tn","rn","en","on","un","an","Set","cn","fn","installing","scriptURL","sn","performance","now","vn","removeEventListener","hn","add","addEventListener","ln","target","state","sw","isExternal","originalEvent","mn","isUpdate","dispatchEvent","wn","setTimeout","waiting","clearTimeout","dn","navigator","serviceWorker","controller","gn","ports","source","getSW","has","arguments","apply","create","__proto__","l","w","register","immediate","readyState","Boolean","yn","pn","bn","once","wasWaitingBeforeRegister","update","messageSW","messageSkipWaiting","configurable","writable","Pn","Map","Sn","delete","set","workboxRegistration","registerOmrsServiceWorker","registerOptions","warn","wb","Workbox","getOmrsServiceWorker","omrsOfflineResponseBodyHttpHeaderName","omrsOfflineResponseStatusHttpHeaderName","omrsOfflineCachingStrategyHttpHeaderName","async","messageOmrsServiceWorker","message","success","result","offlineModeStorageKey","offlineMode","getCurrentOfflineMode","current","notAvailable","active","setCurrentOfflineMode","mode","localStorage","setItem","activateOfflineCapability","db","indexedDB","open","onerror","onsuccess","isFirefoxPrivateBrowsing","isEdgePrivateBrowsing","storage","sessionStorage","removeItem","code","DOMException","QUOTA_EXCEEDED_ERR","isSafariPrivateBrowsing","isPrivateBrowsing","getItem","onLine","global","keys","forEach","getPrototypeOf","Reflect","ownKeys","extend","h","getOwnPropertyDescriptor","m","setImmediate","reduce","b","push","indexOf","substr","isFrozen","isNaN","parseInt","splice","x","concat","k","E","split","map","filter","P","K","O","WeakMap","S","A","C","j","D","I","B","T","R","F","M","N","stack","q","$","join","U","L","V","VersionChanged","DatabaseClosed","Abort","TransactionInactive","MissingAPI","W","_e","Y","z","failures","failedKeys","successCount","G","failuresByPos","_stack","H","Q","X","inner","Syntax","SyntaxError","Type","Range","RangeError","J","Z","ee","te","ne","re","se","ie","oe","ae","ue","ModifyError","DexieError","BulkError","le","ce","he","de","crypto","subtle","digest","Uint8Array","fe","pe","ye","me","ve","qe","MutationObserver","observe","attributes","setAttribute","ge","Oe","be","we","xe","ke","Ee","Pe","id","ref","unhandleds","onunhandled","ct","pgp","env","finalize","Ke","Se","Ae","Ce","_listeners","onuncatched","_lib","_PSD","_stackHolder","_prev","_numPrev","_state","_value","Be","Ie","je","Qe","et","Re","De","ut","Ne","onFulfilled","onRejected","psd","$e","_then","Te","Ue","_promise","some","Le","Fe","Me","Ve","We","st","catch","finally","timeout","Timeout","it","all","tt","race","PSD","totalEchoes","newPSD","Je","usePSD","ot","scheduler","rejectionMapper","follow","allSettled","status","reason","any","AggregateError","Ye","awaits","echoes","ze","Ge","He","Xe","parent","PromiseProp","nthen","lt","gthen","Ze","ht","nt","rt","pop","at","createEvent","initEvent","CustomEvent","detail","PromiseRejectionEvent","onunhandledrejection","defaultPrevented","dt","idbdb","openComplete","letThrough","_vip","_createTransaction","_dbSchema","PR1398_maxLoop","InvalidState","isOpen","_close","trans","_completion","dbOpenError","isBeingOpened","_options","autoOpen","dbReadyPromise","ft","String","fromCharCode","pt","yt","mt","userAgent","vt","gt","bt","_t","wt","lower","lowerOpen","upper","upperOpen","xt","kt","_trans","_tx","schema","NotFound","idbtrans","transless","where","first","core","hook","reading","fire","WhereClause","equals","indexes","primKey","compound","every","keyPath","_maxKey","JSON","stringify","idxByName","_deps","cmp","multi","toCollection","and","count","offset","limit","each","toArray","Collection","orderBy","reverse","mapToClass","mappedClass","readHook","unsubscribe","defineClass","auto","mutate","values","numFailures","lastResult","modify","InvalidArgument","put","clear","range","bulkGet","getMany","bulkAdd","allKeys","wantResults","results","bulkPut","bulkDelete","Et","subscribe","addEventType","subscribers","Pt","Kt","algorithm","or","justLimit","replayFilter","Ot","St","At","isPrimKey","primaryKey","getIndexByKeyPath","Schema","Ct","openCursor","keysOnly","dir","unique","query","jt","stop","fail","_iterate","Dt","valueMapper","start","continue","It","Bt","NaN","Tt","ArrayBuffer","isView","buffer","byteOffset","byteLength","Rt","_read","_ctx","table","_write","_addAlgorithm","clone","raw","Math","min","sortBy","sort","advance","until","last","isMatch","_ondirectionchange","desc","eachKey","eachUniqueKey","eachPrimaryKey","primaryKeys","uniqueKeys","firstKey","lastKey","distinct","outbound","extractKey","modifyChunkSize","cache","Ft","criteria","changeSpec","Mt","Nt","qt","Yt","$t","Wt","Ut","Lt","toUpperCase","toLowerCase","Vt","between","_cmp","above","aboveOrEqual","below","belowOrEqual","startsWith","startsWithIgnoreCase","equalsIgnoreCase","anyOfIgnoreCase","startsWithAnyOfIgnoreCase","anyOf","_ascending","_descending","notEqual","inAnyRange","includeLowers","includeUppers","noneOf","_min","_max","startsWithAnyOf","zt","Gt","stopPropagation","preventDefault","Ht","Qt","_lock","_reculock","lockOwnerFor","_unlock","_blockedFuncs","_locked","shift","OpenFailed","transaction","storeNames","durability","chromeTransactionDurability","_reject","onabort","oncomplete","_resolve","storagemutated","mutatedParts","ReadOnly","_root","waitFor","_waitingFor","_waitingQueue","objectStore","_spinCount","abort","_memoizedTables","Table","Xt","Jt","Zt","only","_novip","IDBKeyRange","upperBound","lowerBound","bound","hasGetAll","objectStoreNames","tables","autoIncrement","isPrimaryKey","indexNames","multiEntry","match","_pos","getAll","getAllKeys","openKeyCursor","___id","continuePrimaryKey","MIN_KEY","MAX_KEY","dbcore","_middlewares","Transaction","_cfg","version","del","change","def","recreate","createObjectStore","createIndex","_hasGetAll","WorkerGlobalScope","_parseStoresSpec","trim","stores","storesSource","_versions","dbschema","_allTables","_storeNames","upgrade","contentUpgrade","_dbNamesDB","$n","addons","dbnames","databases","_n","userAgentData","setInterval","clearInterval","kn","throw","En","PrematureCommit","Kn","On","level","isVirtual","keyTail","keyLength","An","deleting","creating","updating","Cn","jn","_cache","Dn","In","to","Bn","Mn","Tn","Fn","up","Nn","max","addKey","addKeys","qn","subscr","verno","dependencies","onReadyBeingFired","dbReadyResolve","cancelOpen","openCanceller","autoSchema","ready","vip","complete","Version","_IDBKeyRange","newVersion","close","oldVersion","_fireOnBlocked","vcFired","use","round","_whenReady","unuse","onblocked","onupgradeneeded","allowEmptyDB","deleteDatabase","NoSuchDatabase","pow","populate","Upgrade","deleteIndex","deleteObjectStore","contains","onversionchange","onclose","xn","backendDB","hasBeenClosed","hasFailed","dynamicallyOpened","_transaction","SubTransaction","InvalidTable","Un","observable","Ln","_subscribe","Vn","Yn","mozIndexedDB","webkitIndexedDB","msIndexedDB","webkitIDBKeyRange","zn","Gn","Hn","exists","getDatabaseNames","ignoreTransaction","spawn","currentTransaction","debug","derive","props","override","Events","liveQuery","closed","Rn","extendObservabilitySet","getByKeyPath","setByKeyPath","delByKeyPath","shallowClone","deepClone","getObjectDiff","asap","minKey","connections","errnames","semVer","maxKey","initCustomEvent","BroadcastChannel","trig","random","changedParts","clients","matchAll","includeUncontrolled","parse","newValue","Dexie","super","syncQueue","handlers","getOfflineDb","syncStore","createGlobalStore","getOfflineSynchronizationStore","runSynchronization","getState","synchronization","totalCount","promises","handlerQueue","entries","maxIter","abortController","AbortController","notifySyncProgress","setState","pendingCount","iter","handler","deps","dependsOn","dep","processHandler","process","items","contents","userId","getUserId","item","cursor","content","descriptor","includes","lastError","getLoggedInUser","uuid","queueSynchronizationItemFor","targetId","createdOn","Date","queueSynchronizationItem","getSynchronizationItemsFor","getSynchronizationItems","getSynchronizationItem","canBeginEditSynchronizationItemsOfType","options","onBeginEditSyncItem","beginEditSynchronizationItem","editCallback","deleteSynchronizationItem","setupOfflineSync","getRandomValues","rnds8","rng","msCrypto","byteToHex","buf","rnds","arr","offlineUuidPrefix","generateOfflineUuid","v4","isOfflineUuid","store","offlinePatientDataSyncState","getOfflinePatientDataStore","registerOfflinePatientHandler","identifier","syncOfflinePatientData","patientUuid","handlerIdentifiers","syncedHandlers","failedHandlers","errors","setPatientDataSyncState","timestamp","syncingHandlers","onOfflinePatientAdded","signal","nextState","OfflinePatientDataDb","nextEntry","offlinePatientDataSyncStates","loadPersistedPatientDataSyncState","persistedStates","entry"],"sourceRoot":""}
|