@openmrs/esm-app-shell 5.3.3-pre.1231 → 5.3.3-pre.1247

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.
Files changed (80) hide show
  1. package/.turbo/turbo-build.log +98 -98
  2. package/dist/9c276181fc6599f8.js.map +1 -0
  3. package/dist/d81faa62d5818f52.js.map +1 -0
  4. package/dist/index.html +1 -1
  5. package/dist/{openmrs.954886865de0b85a.js → openmrs.6213811dbd70a295.js} +2 -2
  6. package/dist/openmrs.6213811dbd70a295.js.map +1 -0
  7. package/dist/openmrs.c9c4fe7ea57e9920.css.map +1 -1
  8. package/dist/service-worker.js +1 -1
  9. package/dist/service-worker.js.map +1 -1
  10. package/lib/{3975decbab0164f3.js → 9b51c0739002f900.js} +1 -1
  11. package/lib/{f29978db163aaa3d.js → c074b9133e91fad3.js} +5 -5
  12. package/lib/esm-devtools-app/68.js.map +1 -1
  13. package/lib/esm-devtools-app/889.js +1 -1
  14. package/lib/esm-devtools-app/988.js.map +1 -1
  15. package/lib/esm-devtools-app/main.js +1 -1
  16. package/lib/esm-devtools-app/main.js.map +1 -1
  17. package/lib/esm-devtools-app/openmrs-esm-devtools-app.js +1 -1
  18. package/lib/esm-devtools-app/openmrs-esm-devtools-app.js.buildmanifest.json +5 -5
  19. package/lib/esm-devtools-app/routes.json +1 -1
  20. package/lib/esm-implementer-tools-app/426.js.map +1 -1
  21. package/lib/esm-implementer-tools-app/560.js +1 -1
  22. package/lib/esm-implementer-tools-app/560.js.map +1 -1
  23. package/lib/esm-implementer-tools-app/587.js.map +1 -1
  24. package/lib/esm-implementer-tools-app/727.js +1 -1
  25. package/lib/esm-implementer-tools-app/727.js.map +1 -1
  26. package/lib/esm-implementer-tools-app/main.js +1 -1
  27. package/lib/esm-implementer-tools-app/main.js.map +1 -1
  28. package/lib/esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js +1 -1
  29. package/lib/esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js.buildmanifest.json +13 -13
  30. package/lib/esm-implementer-tools-app/routes.json +1 -1
  31. package/lib/esm-login-app/370.js +1 -1
  32. package/lib/esm-login-app/370.js.map +1 -1
  33. package/lib/esm-login-app/main.js +1 -1
  34. package/lib/esm-login-app/main.js.map +1 -1
  35. package/lib/esm-login-app/openmrs-esm-login-app.js +1 -1
  36. package/lib/esm-login-app/openmrs-esm-login-app.js.buildmanifest.json +8 -8
  37. package/lib/esm-login-app/routes.json +1 -1
  38. package/lib/esm-offline-tools-app/102.js +1 -1
  39. package/lib/esm-offline-tools-app/102.js.map +1 -1
  40. package/lib/esm-offline-tools-app/main.js +1 -1
  41. package/lib/esm-offline-tools-app/main.js.map +1 -1
  42. package/lib/esm-offline-tools-app/openmrs-esm-offline-tools-app.js +1 -1
  43. package/lib/esm-offline-tools-app/openmrs-esm-offline-tools-app.js.buildmanifest.json +8 -8
  44. package/lib/esm-offline-tools-app/routes.json +1 -1
  45. package/lib/esm-primary-navigation-app/735.js +1 -1
  46. package/lib/esm-primary-navigation-app/735.js.map +1 -1
  47. package/lib/esm-primary-navigation-app/main.js +1 -1
  48. package/lib/esm-primary-navigation-app/main.js.map +1 -1
  49. package/lib/esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js +1 -1
  50. package/lib/esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js.buildmanifest.json +8 -8
  51. package/lib/esm-primary-navigation-app/routes.json +1 -1
  52. package/lib/index.html +1 -1
  53. package/lib/openmrs.js +135 -135
  54. package/lib/service-worker.js +9 -9
  55. package/package.json +3 -3
  56. package/src/apps.ts +32 -72
  57. package/src/declarations.d.ts +3 -6
  58. package/src/helpers.ts +2 -4
  59. package/src/index.ts +13 -15
  60. package/src/locale.ts +24 -34
  61. package/src/run.ts +53 -87
  62. package/src/service-worker/caching.ts +14 -22
  63. package/src/service-worker/constants.ts +8 -13
  64. package/src/service-worker/http-header-utils.ts +5 -15
  65. package/src/service-worker/import-map-utils.ts +14 -25
  66. package/src/service-worker/index.ts +8 -8
  67. package/src/service-worker/message.ts +9 -15
  68. package/src/service-worker/routing.ts +23 -50
  69. package/src/service-worker/storage.ts +5 -5
  70. package/src/service-worker/types.ts +1 -1
  71. package/src/ui/breadcrumbs.tsx +14 -29
  72. package/src/ui/index.ts +6 -6
  73. package/tools/helpers.js +3 -7
  74. package/webpack.config.js +95 -117
  75. package/dist/966c4dfec919951f.js.map +0 -1
  76. package/dist/fca8d09359d3b887.js.map +0 -1
  77. package/dist/openmrs.954886865de0b85a.js.map +0 -1
  78. /package/dist/{fca8d09359d3b887.js → 9c276181fc6599f8.js} +0 -0
  79. /package/dist/{966c4dfec919951f.js → d81faa62d5818f52.js} +0 -0
  80. /package/dist/{openmrs.954886865de0b85a.js.LICENSE.txt → openmrs.6213811dbd70a295.js.LICENSE.txt} +0 -0
@@ -576,7 +576,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
576
576
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
577
577
 
578
578
  "use strict";
579
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ retry: () => (/* binding */ retry)\n/* harmony export */ });\n/** @module @category Utility */ /**\n * Options for configuring the behavior of the {@link retry} function.\n */ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n/**\n * Executes the specified function and retries executing on failure with a custom backoff strategy\n * defined by the options.\n *\n * If not configured otherwise, this function uses the following default options:\n * * Retries 5 times beyond the initial attempt.\n * * Uses an exponential backoff starting with an initial delay of 1000ms.\n * @param fn The function to be executed and retried on failure.\n * @param options Additional options which configure the retry behavior.\n * @returns The result of successfully executing `fn`.\n * @throws Rethrows the final error of running `fn` when the function stops retrying.\n */ function retry(fn) {\n return _retry.apply(this, arguments);\n}\nfunction _retry() {\n _retry = _async_to_generator(function(fn) {\n var options, shouldRetry, getDelay, onError, attempt, lastError, e;\n var _arguments = arguments;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n options = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : {};\n shouldRetry = options.shouldRetry, getDelay = options.getDelay, onError = options.onError;\n shouldRetry = shouldRetry !== null && shouldRetry !== void 0 ? shouldRetry : function(attempt) {\n return limitAttempts(attempt, 5);\n };\n getDelay = getDelay !== null && getDelay !== void 0 ? getDelay : function(attempt) {\n return getExponentialDelay(attempt, 1000);\n };\n attempt = 0;\n lastError = undefined;\n _state.label = 1;\n case 1:\n _state.trys.push([\n 1,\n 4,\n ,\n 5\n ]);\n return [\n 4,\n delay(getDelay(attempt))\n ];\n case 2:\n _state.sent();\n return [\n 4,\n fn()\n ];\n case 3:\n return [\n 2,\n _state.sent()\n ];\n case 4:\n e = _state.sent();\n onError === null || onError === void 0 ? void 0 : onError(e, attempt);\n lastError = e;\n return [\n 3,\n 5\n ];\n case 5:\n if (shouldRetry(attempt++)) return [\n 3,\n 1\n ];\n _state.label = 6;\n case 6:\n // If we reach this fn errored and shouldn't retry anymore. Simply rethrow the final error as\n // a means of ending the retry process without a result.\n throw lastError;\n }\n });\n });\n return _retry.apply(this, arguments);\n}\nfunction limitAttempts(attempt, maxAttempts) {\n return attempt <= maxAttempts;\n}\nfunction getExponentialDelay(attempt, startingDelay) {\n var initialDelay = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n var exponent = initialDelay ? attempt + 1 : attempt;\n return startingDelay * Math.pow(2, exponent);\n}\nfunction delay(ms) {\n return _delay.apply(this, arguments);\n}\nfunction _delay() {\n _delay = _async_to_generator(function(ms) {\n return _ts_generator(this, function(_state) {\n if (ms <= 0) {\n return [\n 2\n ];\n }\n return [\n 2,\n new Promise(function(res) {\n return setTimeout(res, ms);\n })\n ];\n });\n });\n return _delay.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi4vLi4vZnJhbWV3b3JrL2VzbS11dGlscy9zcmMvcmV0cnkudHMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDhCQUE4QixHQUU5Qjs7Q0FFQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXVCRDs7Ozs7Ozs7Ozs7Q0FXQyxHQUNNLFNBQWVBLE1BQ3BCQyxFQUFvQjtXQURBRDtDQXdCckI7U0F4QnFCQTtJQUFBQSxTQUFmLDZCQUNMQyxFQUFvQixFQUVwQjtZQURBQyxTQUVNQyxhQUFhQyxVQUFVQyxTQUl6QkMsU0FDQUMsV0FNT0M7Ozs7O29CQWJYTixVQUFBQSxvRUFBd0IsQ0FBQyxDQUFDO29CQUVwQkMsY0FBbUNELFFBQW5DQyxhQUFhQyxXQUFzQkYsUUFBdEJFLFVBQVVDLFVBQVlILFFBQVpHO29CQUM3QkYsY0FBY0Esd0JBQUFBLHlCQUFBQSxjQUFnQixTQUFDRzsrQkFBWUcsY0FBY0gsU0FBUztxQkFBRztvQkFDckVGLFdBQVdBLHFCQUFBQSxzQkFBQUEsV0FBYSxTQUFDRTsrQkFBWUksb0JBQW9CSixTQUFTO3FCQUFNO29CQUVwRUEsVUFBVTtvQkFDVkMsWUFBaUJJOzs7Ozs7Ozs7b0JBSWpCOzt3QkFBTUMsTUFBTVIsU0FBU0U7OztvQkFBckI7b0JBQ087O3dCQUFNTDs7O29CQUFiOzt3QkFBTzs7O29CQUNBTztvQkFDUEgsb0JBQUFBLHFCQUFBQSxLQUFBQSxJQUFBQSxRQUFVRyxHQUFHRjtvQkFDYkMsWUFBWUM7Ozs7Ozt3QkFFUEwsWUFBWUcsWUFBWkg7Ozs7OztvQkFFVCw2RkFBNkY7b0JBQzdGLHdEQUF3RDtvQkFDeEQsTUFBTUksVUFBVTs7O0lBQ2xCO1dBeEJzQlA7O0FBMEJ0QixTQUFTUyxjQUFjSCxPQUFlLEVBQUVPLFdBQW1CLEVBQUU7SUFDM0QsT0FBT1AsV0FBV087QUFDcEI7QUFFQSxTQUFTSCxvQkFDUEosT0FBZSxFQUNmUSxhQUFxQixFQUVyQjtRQURBQyxlQUFBQSxpRUFBZSxLQUFLO0lBRXBCLElBQU1DLFdBQVdELGVBQWVULFVBQVUsSUFBSUEsT0FBTztJQUNyRCxPQUFPUSxnQkFBZ0JHLEtBQUtDLEdBQUcsQ0FBQyxHQUFHRjtBQUNyQztTQUVlSixNQUFNTyxFQUFVO1dBQWhCUDs7U0FBQUE7SUFBQUEsU0FBZiw2QkFBcUJPLEVBQVUsRUFBRTs7WUFDL0IsSUFBSUEsTUFBTSxHQUFHO2dCQUNYOzs7WUFDRixDQUFDO1lBRUQ7O2dCQUFPLElBQUlDLFFBQWMsU0FBQ0M7MkJBQVFDLFdBQVdELEtBQUtGOzs7O0lBQ3BEO1dBTmVQIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQG9wZW5tcnMvZXNtLWFwcC1zaGVsbC8uLi8uLi9mcmFtZXdvcmsvZXNtLXV0aWxzL3NyYy9yZXRyeS50cz80MjBjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAbW9kdWxlIEBjYXRlZ29yeSBVdGlsaXR5ICovXG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY29uZmlndXJpbmcgdGhlIGJlaGF2aW9yIG9mIHRoZSB7QGxpbmsgcmV0cnl9IGZ1bmN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJldHJ5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHJldHJ5IGZ1bmN0aW9uIHNob3VsZCByZXRyeSBleGVjdXRpbmcgdGhlIGZ1bmN0aW9uIGFmdGVyIGl0IGZhaWxlZFxuICAgKiB3aXRoIGFuIGVycm9yIG9uIHRoZSBjdXJyZW50IGF0dGVtcHQuXG4gICAqIEBwYXJhbSBhdHRlbXB0IFRoZSBjdXJyZW50ICh6ZXJvLWJhc2VkKSByZXRyeSBhdHRlbXB0LiBgMGAgaW5kaWNhdGVzIHRoZSBpbml0aWFsIGF0dGVtcHQuXG4gICAqL1xuICBzaG91bGRSZXRyeT8oYXR0ZW1wdDogbnVtYmVyKTtcbiAgLyoqXG4gICAqIENhbGN1bGF0ZXMgdGhlIG5leHQgZGVsYXkgKGluIG1pbGxpc2Vjb25kcykgYmVmb3JlIGEgcmV0cnkgYXR0ZW1wdC5cbiAgICogUmV0dXJuaW5nIGEgdmFsdWUgZm9yIHRoZSBpbml0YWwgYXR0ZW1wdCAoYDBgKSBkZWxheXMgdGhlIGluaXRpYWwgZnVuY3Rpb24gaW52b2NhdGlvbi5cbiAgICogQHBhcmFtIGF0dGVtcHQgVGhlIGN1cnJlbnQgKHplcm8tYmFzZWQpIHJldHJ5IGF0dGVtcHQuIGAwYCBpbmRpY2F0ZXMgdGhlIGluaXRpYWwgYXR0ZW1wdC5cbiAgICovXG4gIGdldERlbGF5PyhhdHRlbXB0OiBudW1iZXIpOiBudW1iZXI7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnZva2luZyB0aGUgZnVuY3Rpb24gcmVzdWx0ZWQgaW4gYW4gZXJyb3IuXG4gICAqIEFsbG93cyBydW5uaW5nIHNpZGUtZWZmZWN0cyBvbiBlcnJvcnMsIGUuZy4gbG9nZ2luZy5cbiAgICogQHBhcmFtIGUgVGhlIGVycm9yIHRocm93biBieSB0aGUgZnVuY3Rpb24uXG4gICAqIEBwYXJhbSBhdHRlbXB0IFRoZSBjdXJyZW50ICh6ZXJvLWJhc2VkKSByZXRyeSBhdHRlbXB0LiBgMGAgaW5kaWNhdGVzIHRoZSBpbml0aWFsIGF0dGVtcHQuXG4gICAqL1xuICBvbkVycm9yPyhlOiBhbnksIGF0dGVtcHQ6IG51bWJlcik6IHZvaWQ7XG59XG5cbi8qKlxuICogRXhlY3V0ZXMgdGhlIHNwZWNpZmllZCBmdW5jdGlvbiBhbmQgcmV0cmllcyBleGVjdXRpbmcgb24gZmFpbHVyZSB3aXRoIGEgY3VzdG9tIGJhY2tvZmYgc3RyYXRlZ3lcbiAqIGRlZmluZWQgYnkgdGhlIG9wdGlvbnMuXG4gKlxuICogSWYgbm90IGNvbmZpZ3VyZWQgb3RoZXJ3aXNlLCB0aGlzIGZ1bmN0aW9uIHVzZXMgdGhlIGZvbGxvd2luZyBkZWZhdWx0IG9wdGlvbnM6XG4gKiAqIFJldHJpZXMgNSB0aW1lcyBiZXlvbmQgdGhlIGluaXRpYWwgYXR0ZW1wdC5cbiAqICogVXNlcyBhbiBleHBvbmVudGlhbCBiYWNrb2ZmIHN0YXJ0aW5nIHdpdGggYW4gaW5pdGlhbCBkZWxheSBvZiAxMDAwbXMuXG4gKiBAcGFyYW0gZm4gVGhlIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkIGFuZCByZXRyaWVkIG9uIGZhaWx1cmUuXG4gKiBAcGFyYW0gb3B0aW9ucyBBZGRpdGlvbmFsIG9wdGlvbnMgd2hpY2ggY29uZmlndXJlIHRoZSByZXRyeSBiZWhhdmlvci5cbiAqIEByZXR1cm5zIFRoZSByZXN1bHQgb2Ygc3VjY2Vzc2Z1bGx5IGV4ZWN1dGluZyBgZm5gLlxuICogQHRocm93cyBSZXRocm93cyB0aGUgZmluYWwgZXJyb3Igb2YgcnVubmluZyBgZm5gIHdoZW4gdGhlIGZ1bmN0aW9uIHN0b3BzIHJldHJ5aW5nLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmV0cnk8VD4oXG4gIGZuOiAoKSA9PiBQcm9taXNlPFQ+LFxuICBvcHRpb25zOiBSZXRyeU9wdGlvbnMgPSB7fVxuKSB7XG4gIGxldCB7IHNob3VsZFJldHJ5LCBnZXREZWxheSwgb25FcnJvciB9ID0gb3B0aW9ucztcbiAgc2hvdWxkUmV0cnkgPSBzaG91bGRSZXRyeSA/PyAoKGF0dGVtcHQpID0+IGxpbWl0QXR0ZW1wdHMoYXR0ZW1wdCwgNSkpO1xuICBnZXREZWxheSA9IGdldERlbGF5ID8/ICgoYXR0ZW1wdCkgPT4gZ2V0RXhwb25lbnRpYWxEZWxheShhdHRlbXB0LCAxMDAwKSk7XG5cbiAgbGV0IGF0dGVtcHQgPSAwO1xuICBsZXQgbGFzdEVycm9yOiBhbnkgPSB1bmRlZmluZWQ7XG5cbiAgZG8ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBkZWxheShnZXREZWxheShhdHRlbXB0KSk7XG4gICAgICByZXR1cm4gYXdhaXQgZm4oKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBvbkVycm9yPy4oZSwgYXR0ZW1wdCk7XG4gICAgICBsYXN0RXJyb3IgPSBlO1xuICAgIH1cbiAgfSB3aGlsZSAoc2hvdWxkUmV0cnkoYXR0ZW1wdCsrKSk7XG5cbiAgLy8gSWYgd2UgcmVhY2ggdGhpcyBmbiBlcnJvcmVkIGFuZCBzaG91bGRuJ3QgcmV0cnkgYW55bW9yZS4gU2ltcGx5IHJldGhyb3cgdGhlIGZpbmFsIGVycm9yIGFzXG4gIC8vIGEgbWVhbnMgb2YgZW5kaW5nIHRoZSByZXRyeSBwcm9jZXNzIHdpdGhvdXQgYSByZXN1bHQuXG4gIHRocm93IGxhc3RFcnJvcjtcbn1cblxuZnVuY3Rpb24gbGltaXRBdHRlbXB0cyhhdHRlbXB0OiBudW1iZXIsIG1heEF0dGVtcHRzOiBudW1iZXIpIHtcbiAgcmV0dXJuIGF0dGVtcHQgPD0gbWF4QXR0ZW1wdHM7XG59XG5cbmZ1bmN0aW9uIGdldEV4cG9uZW50aWFsRGVsYXkoXG4gIGF0dGVtcHQ6IG51bWJlcixcbiAgc3RhcnRpbmdEZWxheTogbnVtYmVyLFxuICBpbml0aWFsRGVsYXkgPSBmYWxzZVxuKSB7XG4gIGNvbnN0IGV4cG9uZW50ID0gaW5pdGlhbERlbGF5ID8gYXR0ZW1wdCArIDEgOiBhdHRlbXB0O1xuICByZXR1cm4gc3RhcnRpbmdEZWxheSAqIE1hdGgucG93KDIsIGV4cG9uZW50KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZGVsYXkobXM6IG51bWJlcikge1xuICBpZiAobXMgPD0gMCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzKSA9PiBzZXRUaW1lb3V0KHJlcywgbXMpKTtcbn1cbiJdLCJuYW1lcyI6WyJyZXRyeSIsImZuIiwib3B0aW9ucyIsInNob3VsZFJldHJ5IiwiZ2V0RGVsYXkiLCJvbkVycm9yIiwiYXR0ZW1wdCIsImxhc3RFcnJvciIsImUiLCJsaW1pdEF0dGVtcHRzIiwiZ2V0RXhwb25lbnRpYWxEZWxheSIsInVuZGVmaW5lZCIsImRlbGF5IiwibWF4QXR0ZW1wdHMiLCJzdGFydGluZ0RlbGF5IiwiaW5pdGlhbERlbGF5IiwiZXhwb25lbnQiLCJNYXRoIiwicG93IiwibXMiLCJQcm9taXNlIiwicmVzIiwic2V0VGltZW91dCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///../../framework/esm-utils/src/retry.ts\n");
579
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ retry: () => (/* binding */ retry)\n/* harmony export */ });\n/** @module @category Utility */ /**\n * Options for configuring the behavior of the {@link retry} function.\n */ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n/**\n * Executes the specified function and retries executing on failure with a custom backoff strategy\n * defined by the options.\n *\n * If not configured otherwise, this function uses the following default options:\n * * Retries 5 times beyond the initial attempt.\n * * Uses an exponential backoff starting with an initial delay of 1000ms.\n * @param fn The function to be executed and retried on failure.\n * @param options Additional options which configure the retry behavior.\n * @returns The result of successfully executing `fn`.\n * @throws Rethrows the final error of running `fn` when the function stops retrying.\n */ function retry(fn) {\n return _retry.apply(this, arguments);\n}\nfunction _retry() {\n _retry = _async_to_generator(function(fn) {\n var options, shouldRetry, getDelay, onError, attempt, lastError, e;\n var _arguments = arguments;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n options = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : {};\n shouldRetry = options.shouldRetry, getDelay = options.getDelay, onError = options.onError;\n shouldRetry = shouldRetry !== null && shouldRetry !== void 0 ? shouldRetry : function(attempt) {\n return limitAttempts(attempt, 5);\n };\n getDelay = getDelay !== null && getDelay !== void 0 ? getDelay : function(attempt) {\n return getExponentialDelay(attempt, 1000);\n };\n attempt = 0;\n lastError = undefined;\n _state.label = 1;\n case 1:\n _state.trys.push([\n 1,\n 4,\n ,\n 5\n ]);\n return [\n 4,\n delay(getDelay(attempt))\n ];\n case 2:\n _state.sent();\n return [\n 4,\n fn()\n ];\n case 3:\n return [\n 2,\n _state.sent()\n ];\n case 4:\n e = _state.sent();\n onError === null || onError === void 0 ? void 0 : onError(e, attempt);\n lastError = e;\n return [\n 3,\n 5\n ];\n case 5:\n if (shouldRetry(attempt++)) return [\n 3,\n 1\n ];\n _state.label = 6;\n case 6:\n // If we reach this fn errored and shouldn't retry anymore. Simply rethrow the final error as\n // a means of ending the retry process without a result.\n throw lastError;\n }\n });\n });\n return _retry.apply(this, arguments);\n}\nfunction limitAttempts(attempt, maxAttempts) {\n return attempt <= maxAttempts;\n}\nfunction getExponentialDelay(attempt, startingDelay) {\n var initialDelay = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n var exponent = initialDelay ? attempt + 1 : attempt;\n return startingDelay * Math.pow(2, exponent);\n}\nfunction delay(ms) {\n return _delay.apply(this, arguments);\n}\nfunction _delay() {\n _delay = _async_to_generator(function(ms) {\n return _ts_generator(this, function(_state) {\n if (ms <= 0) {\n return [\n 2\n ];\n }\n return [\n 2,\n new Promise(function(res) {\n return setTimeout(res, ms);\n })\n ];\n });\n });\n return _delay.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi4vLi4vZnJhbWV3b3JrL2VzbS11dGlscy9zcmMvcmV0cnkudHMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDhCQUE4QixHQUU5Qjs7Q0FFQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXVCRDs7Ozs7Ozs7Ozs7Q0FXQyxHQUNNLFNBQWVBLE1BQVNDLEVBQW9CO1dBQTdCRDtDQXFCckI7U0FyQnFCQTtJQUFBQSxTQUFmLDZCQUF3QkMsRUFBb0IsRUFBOEI7WUFBNUJDLFNBQzdDQyxhQUFhQyxVQUFVQyxTQUl6QkMsU0FDQUMsV0FNT0M7Ozs7O29CQVp3Q04sVUFBQUEsb0VBQXdCLENBQUMsQ0FBQztvQkFDdkVDLGNBQW1DRCxRQUFuQ0MsYUFBYUMsV0FBc0JGLFFBQXRCRSxVQUFVQyxVQUFZSCxRQUFaRztvQkFDN0JGLGNBQWNBLHdCQUFBQSx5QkFBQUEsY0FBZ0IsU0FBQ0c7K0JBQVlHLGNBQWNILFNBQVM7cUJBQUc7b0JBQ3JFRixXQUFXQSxxQkFBQUEsc0JBQUFBLFdBQWEsU0FBQ0U7K0JBQVlJLG9CQUFvQkosU0FBUztxQkFBTTtvQkFFcEVBLFVBQVU7b0JBQ1ZDLFlBQWlCSTs7Ozs7Ozs7O29CQUlqQjs7d0JBQU1DLE1BQU1SLFNBQVNFOzs7b0JBQXJCO29CQUNPOzt3QkFBTUw7OztvQkFBYjs7d0JBQU87OztvQkFDQU87b0JBQ1BILG9CQUFBQSxxQkFBQUEsS0FBQUEsSUFBQUEsUUFBVUcsR0FBR0Y7b0JBQ2JDLFlBQVlDOzs7Ozs7d0JBRVBMLFlBQVlHLFlBQVpIOzs7Ozs7b0JBRVQsNkZBQTZGO29CQUM3Rix3REFBd0Q7b0JBQ3hELE1BQU1JLFVBQVU7OztJQUNsQjtXQXJCc0JQOztBQXVCdEIsU0FBU1MsY0FBY0gsT0FBZSxFQUFFTyxXQUFtQixFQUFFO0lBQzNELE9BQU9QLFdBQVdPO0FBQ3BCO0FBRUEsU0FBU0gsb0JBQW9CSixPQUFlLEVBQUVRLGFBQXFCLEVBQXdCO1FBQXRCQyxlQUFBQSxpRUFBZSxLQUFLO0lBQ3ZGLElBQU1DLFdBQVdELGVBQWVULFVBQVUsSUFBSUEsT0FBTztJQUNyRCxPQUFPUSxnQkFBZ0JHLEtBQUtDLEdBQUcsQ0FBQyxHQUFHRjtBQUNyQztTQUVlSixNQUFNTyxFQUFVO1dBQWhCUDs7U0FBQUE7SUFBQUEsU0FBZiw2QkFBcUJPLEVBQVUsRUFBRTs7WUFDL0IsSUFBSUEsTUFBTSxHQUFHO2dCQUNYOzs7WUFDRixDQUFDO1lBRUQ7O2dCQUFPLElBQUlDLFFBQWMsU0FBQ0M7MkJBQVFDLFdBQVdELEtBQUtGOzs7O0lBQ3BEO1dBTmVQIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQG9wZW5tcnMvZXNtLWFwcC1zaGVsbC8uLi8uLi9mcmFtZXdvcmsvZXNtLXV0aWxzL3NyYy9yZXRyeS50cz80MjBjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAbW9kdWxlIEBjYXRlZ29yeSBVdGlsaXR5ICovXG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY29uZmlndXJpbmcgdGhlIGJlaGF2aW9yIG9mIHRoZSB7QGxpbmsgcmV0cnl9IGZ1bmN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJldHJ5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHJldHJ5IGZ1bmN0aW9uIHNob3VsZCByZXRyeSBleGVjdXRpbmcgdGhlIGZ1bmN0aW9uIGFmdGVyIGl0IGZhaWxlZFxuICAgKiB3aXRoIGFuIGVycm9yIG9uIHRoZSBjdXJyZW50IGF0dGVtcHQuXG4gICAqIEBwYXJhbSBhdHRlbXB0IFRoZSBjdXJyZW50ICh6ZXJvLWJhc2VkKSByZXRyeSBhdHRlbXB0LiBgMGAgaW5kaWNhdGVzIHRoZSBpbml0aWFsIGF0dGVtcHQuXG4gICAqL1xuICBzaG91bGRSZXRyeT8oYXR0ZW1wdDogbnVtYmVyKTtcbiAgLyoqXG4gICAqIENhbGN1bGF0ZXMgdGhlIG5leHQgZGVsYXkgKGluIG1pbGxpc2Vjb25kcykgYmVmb3JlIGEgcmV0cnkgYXR0ZW1wdC5cbiAgICogUmV0dXJuaW5nIGEgdmFsdWUgZm9yIHRoZSBpbml0YWwgYXR0ZW1wdCAoYDBgKSBkZWxheXMgdGhlIGluaXRpYWwgZnVuY3Rpb24gaW52b2NhdGlvbi5cbiAgICogQHBhcmFtIGF0dGVtcHQgVGhlIGN1cnJlbnQgKHplcm8tYmFzZWQpIHJldHJ5IGF0dGVtcHQuIGAwYCBpbmRpY2F0ZXMgdGhlIGluaXRpYWwgYXR0ZW1wdC5cbiAgICovXG4gIGdldERlbGF5PyhhdHRlbXB0OiBudW1iZXIpOiBudW1iZXI7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnZva2luZyB0aGUgZnVuY3Rpb24gcmVzdWx0ZWQgaW4gYW4gZXJyb3IuXG4gICAqIEFsbG93cyBydW5uaW5nIHNpZGUtZWZmZWN0cyBvbiBlcnJvcnMsIGUuZy4gbG9nZ2luZy5cbiAgICogQHBhcmFtIGUgVGhlIGVycm9yIHRocm93biBieSB0aGUgZnVuY3Rpb24uXG4gICAqIEBwYXJhbSBhdHRlbXB0IFRoZSBjdXJyZW50ICh6ZXJvLWJhc2VkKSByZXRyeSBhdHRlbXB0LiBgMGAgaW5kaWNhdGVzIHRoZSBpbml0aWFsIGF0dGVtcHQuXG4gICAqL1xuICBvbkVycm9yPyhlOiBhbnksIGF0dGVtcHQ6IG51bWJlcik6IHZvaWQ7XG59XG5cbi8qKlxuICogRXhlY3V0ZXMgdGhlIHNwZWNpZmllZCBmdW5jdGlvbiBhbmQgcmV0cmllcyBleGVjdXRpbmcgb24gZmFpbHVyZSB3aXRoIGEgY3VzdG9tIGJhY2tvZmYgc3RyYXRlZ3lcbiAqIGRlZmluZWQgYnkgdGhlIG9wdGlvbnMuXG4gKlxuICogSWYgbm90IGNvbmZpZ3VyZWQgb3RoZXJ3aXNlLCB0aGlzIGZ1bmN0aW9uIHVzZXMgdGhlIGZvbGxvd2luZyBkZWZhdWx0IG9wdGlvbnM6XG4gKiAqIFJldHJpZXMgNSB0aW1lcyBiZXlvbmQgdGhlIGluaXRpYWwgYXR0ZW1wdC5cbiAqICogVXNlcyBhbiBleHBvbmVudGlhbCBiYWNrb2ZmIHN0YXJ0aW5nIHdpdGggYW4gaW5pdGlhbCBkZWxheSBvZiAxMDAwbXMuXG4gKiBAcGFyYW0gZm4gVGhlIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkIGFuZCByZXRyaWVkIG9uIGZhaWx1cmUuXG4gKiBAcGFyYW0gb3B0aW9ucyBBZGRpdGlvbmFsIG9wdGlvbnMgd2hpY2ggY29uZmlndXJlIHRoZSByZXRyeSBiZWhhdmlvci5cbiAqIEByZXR1cm5zIFRoZSByZXN1bHQgb2Ygc3VjY2Vzc2Z1bGx5IGV4ZWN1dGluZyBgZm5gLlxuICogQHRocm93cyBSZXRocm93cyB0aGUgZmluYWwgZXJyb3Igb2YgcnVubmluZyBgZm5gIHdoZW4gdGhlIGZ1bmN0aW9uIHN0b3BzIHJldHJ5aW5nLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmV0cnk8VD4oZm46ICgpID0+IFByb21pc2U8VD4sIG9wdGlvbnM6IFJldHJ5T3B0aW9ucyA9IHt9KSB7XG4gIGxldCB7IHNob3VsZFJldHJ5LCBnZXREZWxheSwgb25FcnJvciB9ID0gb3B0aW9ucztcbiAgc2hvdWxkUmV0cnkgPSBzaG91bGRSZXRyeSA/PyAoKGF0dGVtcHQpID0+IGxpbWl0QXR0ZW1wdHMoYXR0ZW1wdCwgNSkpO1xuICBnZXREZWxheSA9IGdldERlbGF5ID8/ICgoYXR0ZW1wdCkgPT4gZ2V0RXhwb25lbnRpYWxEZWxheShhdHRlbXB0LCAxMDAwKSk7XG5cbiAgbGV0IGF0dGVtcHQgPSAwO1xuICBsZXQgbGFzdEVycm9yOiBhbnkgPSB1bmRlZmluZWQ7XG5cbiAgZG8ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBkZWxheShnZXREZWxheShhdHRlbXB0KSk7XG4gICAgICByZXR1cm4gYXdhaXQgZm4oKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBvbkVycm9yPy4oZSwgYXR0ZW1wdCk7XG4gICAgICBsYXN0RXJyb3IgPSBlO1xuICAgIH1cbiAgfSB3aGlsZSAoc2hvdWxkUmV0cnkoYXR0ZW1wdCsrKSk7XG5cbiAgLy8gSWYgd2UgcmVhY2ggdGhpcyBmbiBlcnJvcmVkIGFuZCBzaG91bGRuJ3QgcmV0cnkgYW55bW9yZS4gU2ltcGx5IHJldGhyb3cgdGhlIGZpbmFsIGVycm9yIGFzXG4gIC8vIGEgbWVhbnMgb2YgZW5kaW5nIHRoZSByZXRyeSBwcm9jZXNzIHdpdGhvdXQgYSByZXN1bHQuXG4gIHRocm93IGxhc3RFcnJvcjtcbn1cblxuZnVuY3Rpb24gbGltaXRBdHRlbXB0cyhhdHRlbXB0OiBudW1iZXIsIG1heEF0dGVtcHRzOiBudW1iZXIpIHtcbiAgcmV0dXJuIGF0dGVtcHQgPD0gbWF4QXR0ZW1wdHM7XG59XG5cbmZ1bmN0aW9uIGdldEV4cG9uZW50aWFsRGVsYXkoYXR0ZW1wdDogbnVtYmVyLCBzdGFydGluZ0RlbGF5OiBudW1iZXIsIGluaXRpYWxEZWxheSA9IGZhbHNlKSB7XG4gIGNvbnN0IGV4cG9uZW50ID0gaW5pdGlhbERlbGF5ID8gYXR0ZW1wdCArIDEgOiBhdHRlbXB0O1xuICByZXR1cm4gc3RhcnRpbmdEZWxheSAqIE1hdGgucG93KDIsIGV4cG9uZW50KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZGVsYXkobXM6IG51bWJlcikge1xuICBpZiAobXMgPD0gMCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzKSA9PiBzZXRUaW1lb3V0KHJlcywgbXMpKTtcbn1cbiJdLCJuYW1lcyI6WyJyZXRyeSIsImZuIiwib3B0aW9ucyIsInNob3VsZFJldHJ5IiwiZ2V0RGVsYXkiLCJvbkVycm9yIiwiYXR0ZW1wdCIsImxhc3RFcnJvciIsImUiLCJsaW1pdEF0dGVtcHRzIiwiZ2V0RXhwb25lbnRpYWxEZWxheSIsInVuZGVmaW5lZCIsImRlbGF5IiwibWF4QXR0ZW1wdHMiLCJzdGFydGluZ0RlbGF5IiwiaW5pdGlhbERlbGF5IiwiZXhwb25lbnQiLCJNYXRoIiwicG93IiwibXMiLCJQcm9taXNlIiwicmVzIiwic2V0VGltZW91dCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///../../framework/esm-utils/src/retry.ts\n");
580
580
 
581
581
  /***/ }),
582
582
 
@@ -587,7 +587,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
587
587
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
588
588
 
589
589
  "use strict";
590
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addToOmrsCache: () => (/* binding */ addToOmrsCache),\n/* harmony export */ cacheImportMapReferences: () => (/* binding */ cacheImportMapReferences),\n/* harmony export */ precacheAppShell: () => (/* binding */ precacheAppShell)\n/* harmony export */ });\n/* harmony import */ var _openmrs_esm_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @openmrs/esm-utils */ \"../../framework/esm-utils/src/retry.ts\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n/* harmony import */ var _import_map_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./import-map-utils */ \"./src/service-worker/import-map-utils.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./storage */ \"./src/service-worker/storage.ts\");\n/* eslint-disable no-console */ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return(g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g);\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\n\n/**\n * Attempts to resolve cacheable files from the specified import map (files are retrieved via convention)\n * and, if successful, attempts to add them to the app cache.\n * @param importMap An import map object from which cacheable files should be extracted.\n */ function cacheImportMapReferences(importMap) {\n return _cacheImportMapReferences.apply(this, arguments);\n}\nfunction _cacheImportMapReferences() {\n _cacheImportMapReferences = _async_to_generator(function(importMap) {\n var urlsToCache;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n return [\n 4,\n (0,_import_map_utils__WEBPACK_IMPORTED_MODULE_1__.fetchUrlsToCacheFromImportMap)(importMap)\n ];\n case 1:\n urlsToCache = _state.sent();\n return [\n 4,\n invalidateObsoleteCacheEntries(urlsToCache)\n ];\n case 2:\n _state.sent();\n return [\n 4,\n addToOmrsCache(urlsToCache)\n ];\n case 3:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _cacheImportMapReferences.apply(this, arguments);\n}\n/**\n * Adds all static app shell files to the cache.\n * Only caches the \"raw\" app shell, not any MFs/any data coming from an import map.\n */ function precacheAppShell() {\n return addToOmrsCache(_constants__WEBPACK_IMPORTED_MODULE_0__.absoluteWbManifestUrls);\n}\n/**\n * Adds all of the given urls to the default app cache.\n * @param urls An array of URLs to be cached.\n */ function addToOmrsCache(urls) {\n return _addToOmrsCache.apply(this, arguments);\n}\nfunction _addToOmrsCache() {\n _addToOmrsCache = _async_to_generator(function(urls) {\n var cache, results, cached, failedToCache;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n if (urls.length === 0) {\n return [\n 2\n ];\n }\n return [\n 4,\n caches.open(_constants__WEBPACK_IMPORTED_MODULE_0__.omrsCacheName)\n ];\n case 1:\n cache = _state.sent();\n return [\n 4,\n Promise.all(urls.map(function() {\n var _ref = _async_to_generator(function(url) {\n var e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _state.trys.push([\n 0,\n 2,\n ,\n 3\n ]);\n return [\n 4,\n (0,_openmrs_esm_utils__WEBPACK_IMPORTED_MODULE_3__.retry)(function() {\n return cache.add(url);\n }, {\n onError: function(e, attempt) {\n return console.debug(\"[SW] Failure attempt \".concat(attempt, ' at caching \"').concat(url, '\". Error: '), e);\n }\n })\n ];\n case 1:\n _state.sent();\n return [\n 2,\n {\n url: url,\n success: true\n }\n ];\n case 2:\n e = _state.sent();\n return [\n 2,\n {\n url: url,\n success: false\n }\n ];\n case 3:\n return [\n 2\n ];\n }\n });\n });\n return function(url) {\n return _ref.apply(this, arguments);\n };\n }()))\n ];\n case 2:\n results = _state.sent();\n cached = results.filter(function(r) {\n return r.success;\n });\n failedToCache = results.filter(function(r) {\n return !r.success;\n });\n if (cached.length > 0) {\n console.debug(\"[SW] Successfully added \".concat(cached.length, \" URLs to the OMRS cache. URLs: \"), cached.map(function(r) {\n return r.url;\n }));\n }\n if (failedToCache.length > 0) {\n console.error(\"[SW] Failed to cache \".concat(failedToCache.length, \" URLs. URLs: \"), failedToCache.map(function(r) {\n return r.url;\n }));\n }\n return [\n 2\n ];\n }\n });\n });\n return _addToOmrsCache.apply(this, arguments);\n}\nfunction invalidateObsoleteCacheEntries(newImportMapUrls) {\n return _invalidateObsoleteCacheEntries.apply(this, arguments);\n}\nfunction _invalidateObsoleteCacheEntries() {\n _invalidateObsoleteCacheEntries = _async_to_generator(function(newImportMapUrls) {\n var cache, cachedUrls, dynamicRoutes, urlsToInvalidate;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n return [\n 4,\n caches.open(_constants__WEBPACK_IMPORTED_MODULE_0__.omrsCacheName)\n ];\n case 1:\n cache = _state.sent();\n return [\n 4,\n cache.keys()\n ];\n case 2:\n cachedUrls = _state.sent().map(function(x) {\n return x.url;\n });\n return [\n 4,\n new _storage__WEBPACK_IMPORTED_MODULE_2__.ServiceWorkerDb().dynamicRouteRegistrations.toArray()\n ];\n case 3:\n dynamicRoutes = _state.sent();\n urlsToInvalidate = cachedUrls.filter(function(cachedUrl) {\n return !_constants__WEBPACK_IMPORTED_MODULE_0__.absoluteWbManifestUrls.includes(cachedUrl) && !newImportMapUrls.includes(cachedUrl) && !dynamicRoutes.some(function(route) {\n return new RegExp(route.pattern).test(cachedUrl);\n });\n });\n console.info(\"[SW] Removing the following expired URLs from the cache: \", urlsToInvalidate);\n // eslint-disable-next-line no-console\n console.debug(\"[SW] The following URLs were known and not invalidated: \", _constants__WEBPACK_IMPORTED_MODULE_0__.absoluteWbManifestUrls, newImportMapUrls, dynamicRoutes);\n return [\n 4,\n Promise.all(urlsToInvalidate.map(function(url) {\n return cache.delete(url);\n }))\n ];\n case 4:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _invalidateObsoleteCacheEntries.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvY2FjaGluZy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsNkJBQTZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWM7QUFDeUI7QUFDRDtBQUN2QjtBQUU1Qzs7OztDQUlDLEdBQ00sU0FBZUsseUJBQXlCQyxTQUFvQjtXQUE3Q0Q7Q0FJckI7U0FKcUJBO0lBQUFBLDRCQUFmLDZCQUF3Q0MsU0FBb0IsRUFBRTtZQUM3REM7Ozs7b0JBQWM7O3dCQUFNSixnRkFBNkJBLENBQUNHOzs7b0JBQWxEQyxjQUFjO29CQUNwQjs7d0JBQU1DLCtCQUErQkQ7OztvQkFBckM7b0JBQ0E7O3dCQUFNRSxlQUFlRjs7O29CQUFyQjs7Ozs7O0lBQ0Y7V0FKc0JGOztBQU10Qjs7O0NBR0MsR0FDTSxTQUFTSyxtQkFBbUI7SUFDakMsT0FBT0QsZUFBZVIsOERBQXNCQTtBQUM5QyxDQUFDO0FBRUQ7OztDQUdDLEdBQ00sU0FBZVEsZUFBZUUsSUFBbUI7V0FBbENGO0NBNENyQjtTQTVDcUJBO0lBQUFBLGtCQUFmLDZCQUE4QkUsSUFBbUIsRUFBRTtZQVVsREMsT0FDQUMsU0FpQkFDLFFBQ0FDOzs7O29CQTVCTixJQUFJSixLQUFLSyxNQUFNLEtBQUssR0FBRzt3QkFDckI7OztvQkFDRixDQUFDO29CQU9hOzt3QkFBTUMsT0FBT0MsSUFBSSxDQUFDaEIscURBQWFBOzs7b0JBQXZDVSxRQUFRO29CQUNFOzt3QkFBTU8sUUFBUUMsR0FBRyxDQUMvQlQsS0FBS1UsR0FBRzt1Q0FBQyw2QkFBT0MsS0FBUTtvQ0FVYkM7Ozs7Ozs7Ozs7NENBUlA7O2dEQUFNdkIseURBQUtBLENBQUM7MkRBQU1ZLE1BQU1ZLEdBQUcsQ0FBQ0Y7bURBQU07b0RBQ2hDRyxTQUFTLFNBQUNGLEdBQUdHOytEQUNYQyxRQUFRQyxLQUFLLENBQ1gsd0JBQStDTixPQUF2QkksU0FBUSxpQkFBbUIsT0FBSkosS0FBSSxlQUNuREM7O2dEQUVOOzs7NENBTkE7NENBT0E7O2dEQUFPO29EQUFFRCxLQUFBQTtvREFBS08sU0FBUyxJQUFJO2dEQUFDOzs7NENBQ3JCTjs0Q0FDUDs7Z0RBQU87b0RBQUVELEtBQUFBO29EQUFLTyxTQUFTLEtBQUs7Z0RBQUM7Ozs7Ozs7OzRCQUVqQzs0Q0FiZ0JQOzs7Ozs7b0JBRFpULFVBQVU7b0JBaUJWQyxTQUFTRCxRQUFRaUIsTUFBTSxDQUFDLFNBQUNDOytCQUFNQSxFQUFFRixPQUFPOztvQkFDeENkLGdCQUFnQkYsUUFBUWlCLE1BQU0sQ0FBQyxTQUFDQzsrQkFBTSxDQUFDQSxFQUFFRixPQUFPOztvQkFFdEQsSUFBSWYsT0FBT0UsTUFBTSxHQUFHLEdBQUc7d0JBQ3JCVyxRQUFRQyxLQUFLLENBQ1gsMkJBQXlDLE9BQWRkLE9BQU9FLE1BQU0sRUFBQyxvQ0FDekNGLE9BQU9PLEdBQUcsQ0FBQyxTQUFDVTttQ0FBTUEsRUFBRVQsR0FBRzs7b0JBRTNCLENBQUM7b0JBRUQsSUFBSVAsY0FBY0MsTUFBTSxHQUFHLEdBQUc7d0JBQzVCVyxRQUFRSyxLQUFLLENBQ1gsd0JBQTZDLE9BQXJCakIsY0FBY0MsTUFBTSxFQUFDLGtCQUM3Q0QsY0FBY00sR0FBRyxDQUFDLFNBQUNVO21DQUFNQSxFQUFFVCxHQUFHOztvQkFFbEMsQ0FBQzs7Ozs7O0lBQ0g7V0E1Q3NCYjs7U0E4Q1BELCtCQUErQnlCLGdCQUErQjtXQUE5RHpCOztTQUFBQTtJQUFBQSxrQ0FBZiw2QkFBOEN5QixnQkFBK0IsRUFBRTtZQUN2RXJCLE9BQ0FzQixZQUNBQyxlQUdBQzs7OztvQkFMUTs7d0JBQU1uQixPQUFPQyxJQUFJLENBQUNoQixxREFBYUE7OztvQkFBdkNVLFFBQVE7b0JBQ007O3dCQUFNQSxNQUFNeUIsSUFBSTs7O29CQUE5QkgsYUFBYSxjQUFxQmIsR0FBRyxDQUFDLFNBQUNpQjsrQkFBTUEsRUFBRWhCLEdBQUc7O29CQUV0RDs7d0JBQU0sSUFBSWxCLHFEQUFlQSxHQUFHbUMseUJBQXlCLENBQUNDLE9BQU87OztvQkFEekRMLGdCQUNKO29CQUVJQyxtQkFBbUJGLFdBQVdKLE1BQU0sQ0FDeEMsU0FBQ1c7K0JBQ0MsQ0FBQ3hDLDhEQUFzQkEsQ0FBQ3lDLFFBQVEsQ0FBQ0QsY0FDakMsQ0FBQ1IsaUJBQWlCUyxRQUFRLENBQUNELGNBQzNCLENBQUNOLGNBQWNRLElBQUksQ0FBQyxTQUFDQzttQ0FBVSxJQUFJQyxPQUFPRCxNQUFNRSxPQUFPLEVBQUVDLElBQUksQ0FBQ047OztvQkFHbEVkLFFBQVFxQixJQUFJLENBQ1YsNkRBQ0FaO29CQUdGLHNDQUFzQztvQkFDdENULFFBQVFDLEtBQUssQ0FDWCw0REFDQTNCLDhEQUFzQkEsRUFDdEJnQyxrQkFDQUU7b0JBR0Y7O3dCQUFNaEIsUUFBUUMsR0FBRyxDQUFDZ0IsaUJBQWlCZixHQUFHLENBQUMsU0FBQ0M7bUNBQVFWLE1BQU1xQyxNQUFNLENBQUMzQjs7OztvQkFBN0Q7Ozs7OztJQUNGO1dBM0JlZCIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvY2FjaGluZy50cz80YjZjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCB0eXBlIHsgSW1wb3J0TWFwIH0gZnJvbSBcIkBvcGVubXJzL2VzbS1nbG9iYWxzXCI7XG5pbXBvcnQgeyByZXRyeSB9IGZyb20gXCJAb3Blbm1ycy9lc20tdXRpbHNcIjtcbmltcG9ydCB7IGFic29sdXRlV2JNYW5pZmVzdFVybHMsIG9tcnNDYWNoZU5hbWUgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGZldGNoVXJsc1RvQ2FjaGVGcm9tSW1wb3J0TWFwIH0gZnJvbSBcIi4vaW1wb3J0LW1hcC11dGlsc1wiO1xuaW1wb3J0IHsgU2VydmljZVdvcmtlckRiIH0gZnJvbSBcIi4vc3RvcmFnZVwiO1xuXG4vKipcbiAqIEF0dGVtcHRzIHRvIHJlc29sdmUgY2FjaGVhYmxlIGZpbGVzIGZyb20gdGhlIHNwZWNpZmllZCBpbXBvcnQgbWFwIChmaWxlcyBhcmUgcmV0cmlldmVkIHZpYSBjb252ZW50aW9uKVxuICogYW5kLCBpZiBzdWNjZXNzZnVsLCBhdHRlbXB0cyB0byBhZGQgdGhlbSB0byB0aGUgYXBwIGNhY2hlLlxuICogQHBhcmFtIGltcG9ydE1hcCBBbiBpbXBvcnQgbWFwIG9iamVjdCBmcm9tIHdoaWNoIGNhY2hlYWJsZSBmaWxlcyBzaG91bGQgYmUgZXh0cmFjdGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2FjaGVJbXBvcnRNYXBSZWZlcmVuY2VzKGltcG9ydE1hcDogSW1wb3J0TWFwKSB7XG4gIGNvbnN0IHVybHNUb0NhY2hlID0gYXdhaXQgZmV0Y2hVcmxzVG9DYWNoZUZyb21JbXBvcnRNYXAoaW1wb3J0TWFwKTtcbiAgYXdhaXQgaW52YWxpZGF0ZU9ic29sZXRlQ2FjaGVFbnRyaWVzKHVybHNUb0NhY2hlKTtcbiAgYXdhaXQgYWRkVG9PbXJzQ2FjaGUodXJsc1RvQ2FjaGUpO1xufVxuXG4vKipcbiAqIEFkZHMgYWxsIHN0YXRpYyBhcHAgc2hlbGwgZmlsZXMgdG8gdGhlIGNhY2hlLlxuICogT25seSBjYWNoZXMgdGhlIFwicmF3XCIgYXBwIHNoZWxsLCBub3QgYW55IE1Gcy9hbnkgZGF0YSBjb21pbmcgZnJvbSBhbiBpbXBvcnQgbWFwLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJlY2FjaGVBcHBTaGVsbCgpIHtcbiAgcmV0dXJuIGFkZFRvT21yc0NhY2hlKGFic29sdXRlV2JNYW5pZmVzdFVybHMpO1xufVxuXG4vKipcbiAqIEFkZHMgYWxsIG9mIHRoZSBnaXZlbiB1cmxzIHRvIHRoZSBkZWZhdWx0IGFwcCBjYWNoZS5cbiAqIEBwYXJhbSB1cmxzIEFuIGFycmF5IG9mIFVSTHMgdG8gYmUgY2FjaGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYWRkVG9PbXJzQ2FjaGUodXJsczogQXJyYXk8c3RyaW5nPikge1xuICBpZiAodXJscy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvLyBUaGUgZm9sbG93aW5nIGRvZXNuJ3Qgc2ltcGx5IHVzZSBjYWNoZS5hZGRBbGwgYmVjYXVzZSBpdCBhYm9ydHMgb24gdGhlIGZpcnN0IGZhaWx1cmUuXG4gIC8vIFdlIHdhbnQgdG8gY2FjaGUgYXMgbXVjaCBhcyBwb3NzaWJsZSBhbmQganVzdCBiZWNhdXNlLCBlLmcuLCBvbmUgc2luZ2xlIE1GIGNhbm5vdCBiZSBjYWNoZWRcbiAgLy8gd2UgZG9uJ3Qgd2FudCB0aGUgcmVzdCB0byBmYWlsLlxuICAvLyBJdCBmdXJ0aGVyIGFsbG93cyB1cyB0byBsb2cgbW9yZSBncmFudWxhcmx5ICp3aGljaCogVVJMIGNvdWxkbid0IGJlIGNhY2hlZCwgc28gZGVidWdnaW5nXG4gIC8vIGlzIGVhc2llci5cbiAgY29uc3QgY2FjaGUgPSBhd2FpdCBjYWNoZXMub3BlbihvbXJzQ2FjaGVOYW1lKTtcbiAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgIHVybHMubWFwKGFzeW5jICh1cmwpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHJldHJ5KCgpID0+IGNhY2hlLmFkZCh1cmwpLCB7XG4gICAgICAgICAgb25FcnJvcjogKGUsIGF0dGVtcHQpID0+XG4gICAgICAgICAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgICAgICAgICBgW1NXXSBGYWlsdXJlIGF0dGVtcHQgJHthdHRlbXB0fSBhdCBjYWNoaW5nIFwiJHt1cmx9XCIuIEVycm9yOiBgLFxuICAgICAgICAgICAgICBlXG4gICAgICAgICAgICApLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHsgdXJsLCBzdWNjZXNzOiB0cnVlIH07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHJldHVybiB7IHVybCwgc3VjY2VzczogZmFsc2UgfTtcbiAgICAgIH1cbiAgICB9KVxuICApO1xuXG4gIGNvbnN0IGNhY2hlZCA9IHJlc3VsdHMuZmlsdGVyKChyKSA9PiByLnN1Y2Nlc3MpO1xuICBjb25zdCBmYWlsZWRUb0NhY2hlID0gcmVzdWx0cy5maWx0ZXIoKHIpID0+ICFyLnN1Y2Nlc3MpO1xuXG4gIGlmIChjYWNoZWQubGVuZ3RoID4gMCkge1xuICAgIGNvbnNvbGUuZGVidWcoXG4gICAgICBgW1NXXSBTdWNjZXNzZnVsbHkgYWRkZWQgJHtjYWNoZWQubGVuZ3RofSBVUkxzIHRvIHRoZSBPTVJTIGNhY2hlLiBVUkxzOiBgLFxuICAgICAgY2FjaGVkLm1hcCgocikgPT4gci51cmwpXG4gICAgKTtcbiAgfVxuXG4gIGlmIChmYWlsZWRUb0NhY2hlLmxlbmd0aCA+IDApIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYFtTV10gRmFpbGVkIHRvIGNhY2hlICR7ZmFpbGVkVG9DYWNoZS5sZW5ndGh9IFVSTHMuIFVSTHM6IGAsXG4gICAgICBmYWlsZWRUb0NhY2hlLm1hcCgocikgPT4gci51cmwpXG4gICAgKTtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBpbnZhbGlkYXRlT2Jzb2xldGVDYWNoZUVudHJpZXMobmV3SW1wb3J0TWFwVXJsczogQXJyYXk8c3RyaW5nPikge1xuICBjb25zdCBjYWNoZSA9IGF3YWl0IGNhY2hlcy5vcGVuKG9tcnNDYWNoZU5hbWUpO1xuICBjb25zdCBjYWNoZWRVcmxzID0gKGF3YWl0IGNhY2hlLmtleXMoKSkubWFwKCh4KSA9PiB4LnVybCk7XG4gIGNvbnN0IGR5bmFtaWNSb3V0ZXMgPVxuICAgIGF3YWl0IG5ldyBTZXJ2aWNlV29ya2VyRGIoKS5keW5hbWljUm91dGVSZWdpc3RyYXRpb25zLnRvQXJyYXkoKTtcblxuICBjb25zdCB1cmxzVG9JbnZhbGlkYXRlID0gY2FjaGVkVXJscy5maWx0ZXIoXG4gICAgKGNhY2hlZFVybCkgPT5cbiAgICAgICFhYnNvbHV0ZVdiTWFuaWZlc3RVcmxzLmluY2x1ZGVzKGNhY2hlZFVybCkgJiZcbiAgICAgICFuZXdJbXBvcnRNYXBVcmxzLmluY2x1ZGVzKGNhY2hlZFVybCkgJiZcbiAgICAgICFkeW5hbWljUm91dGVzLnNvbWUoKHJvdXRlKSA9PiBuZXcgUmVnRXhwKHJvdXRlLnBhdHRlcm4pLnRlc3QoY2FjaGVkVXJsKSlcbiAgKTtcblxuICBjb25zb2xlLmluZm8oXG4gICAgXCJbU1ddIFJlbW92aW5nIHRoZSBmb2xsb3dpbmcgZXhwaXJlZCBVUkxzIGZyb20gdGhlIGNhY2hlOiBcIixcbiAgICB1cmxzVG9JbnZhbGlkYXRlXG4gICk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgY29uc29sZS5kZWJ1ZyhcbiAgICBcIltTV10gVGhlIGZvbGxvd2luZyBVUkxzIHdlcmUga25vd24gYW5kIG5vdCBpbnZhbGlkYXRlZDogXCIsXG4gICAgYWJzb2x1dGVXYk1hbmlmZXN0VXJscyxcbiAgICBuZXdJbXBvcnRNYXBVcmxzLFxuICAgIGR5bmFtaWNSb3V0ZXNcbiAgKTtcblxuICBhd2FpdCBQcm9taXNlLmFsbCh1cmxzVG9JbnZhbGlkYXRlLm1hcCgodXJsKSA9PiBjYWNoZS5kZWxldGUodXJsKSkpO1xufVxuIl0sIm5hbWVzIjpbInJldHJ5IiwiYWJzb2x1dGVXYk1hbmlmZXN0VXJscyIsIm9tcnNDYWNoZU5hbWUiLCJmZXRjaFVybHNUb0NhY2hlRnJvbUltcG9ydE1hcCIsIlNlcnZpY2VXb3JrZXJEYiIsImNhY2hlSW1wb3J0TWFwUmVmZXJlbmNlcyIsImltcG9ydE1hcCIsInVybHNUb0NhY2hlIiwiaW52YWxpZGF0ZU9ic29sZXRlQ2FjaGVFbnRyaWVzIiwiYWRkVG9PbXJzQ2FjaGUiLCJwcmVjYWNoZUFwcFNoZWxsIiwidXJscyIsImNhY2hlIiwicmVzdWx0cyIsImNhY2hlZCIsImZhaWxlZFRvQ2FjaGUiLCJsZW5ndGgiLCJjYWNoZXMiLCJvcGVuIiwiUHJvbWlzZSIsImFsbCIsIm1hcCIsInVybCIsImUiLCJhZGQiLCJvbkVycm9yIiwiYXR0ZW1wdCIsImNvbnNvbGUiLCJkZWJ1ZyIsInN1Y2Nlc3MiLCJmaWx0ZXIiLCJyIiwiZXJyb3IiLCJuZXdJbXBvcnRNYXBVcmxzIiwiY2FjaGVkVXJscyIsImR5bmFtaWNSb3V0ZXMiLCJ1cmxzVG9JbnZhbGlkYXRlIiwia2V5cyIsIngiLCJkeW5hbWljUm91dGVSZWdpc3RyYXRpb25zIiwidG9BcnJheSIsImNhY2hlZFVybCIsImluY2x1ZGVzIiwic29tZSIsInJvdXRlIiwiUmVnRXhwIiwicGF0dGVybiIsInRlc3QiLCJpbmZvIiwiZGVsZXRlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/service-worker/caching.ts\n");
590
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addToOmrsCache: () => (/* binding */ addToOmrsCache),\n/* harmony export */ cacheImportMapReferences: () => (/* binding */ cacheImportMapReferences),\n/* harmony export */ precacheAppShell: () => (/* binding */ precacheAppShell)\n/* harmony export */ });\n/* harmony import */ var _openmrs_esm_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @openmrs/esm-utils */ \"../../framework/esm-utils/src/retry.ts\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n/* harmony import */ var _import_map_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./import-map-utils */ \"./src/service-worker/import-map-utils.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./storage */ \"./src/service-worker/storage.ts\");\n/* eslint-disable no-console */ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return(g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g);\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\n\n/**\n * Attempts to resolve cacheable files from the specified import map (files are retrieved via convention)\n * and, if successful, attempts to add them to the app cache.\n * @param importMap An import map object from which cacheable files should be extracted.\n */ function cacheImportMapReferences(importMap) {\n return _cacheImportMapReferences.apply(this, arguments);\n}\nfunction _cacheImportMapReferences() {\n _cacheImportMapReferences = _async_to_generator(function(importMap) {\n var urlsToCache;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n return [\n 4,\n (0,_import_map_utils__WEBPACK_IMPORTED_MODULE_1__.fetchUrlsToCacheFromImportMap)(importMap)\n ];\n case 1:\n urlsToCache = _state.sent();\n return [\n 4,\n invalidateObsoleteCacheEntries(urlsToCache)\n ];\n case 2:\n _state.sent();\n return [\n 4,\n addToOmrsCache(urlsToCache)\n ];\n case 3:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _cacheImportMapReferences.apply(this, arguments);\n}\n/**\n * Adds all static app shell files to the cache.\n * Only caches the \"raw\" app shell, not any MFs/any data coming from an import map.\n */ function precacheAppShell() {\n return addToOmrsCache(_constants__WEBPACK_IMPORTED_MODULE_0__.absoluteWbManifestUrls);\n}\n/**\n * Adds all of the given urls to the default app cache.\n * @param urls An array of URLs to be cached.\n */ function addToOmrsCache(urls) {\n return _addToOmrsCache.apply(this, arguments);\n}\nfunction _addToOmrsCache() {\n _addToOmrsCache = _async_to_generator(function(urls) {\n var cache, results, cached, failedToCache;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n if (urls.length === 0) {\n return [\n 2\n ];\n }\n return [\n 4,\n caches.open(_constants__WEBPACK_IMPORTED_MODULE_0__.omrsCacheName)\n ];\n case 1:\n cache = _state.sent();\n return [\n 4,\n Promise.all(urls.map(function() {\n var _ref = _async_to_generator(function(url) {\n var e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _state.trys.push([\n 0,\n 2,\n ,\n 3\n ]);\n return [\n 4,\n (0,_openmrs_esm_utils__WEBPACK_IMPORTED_MODULE_3__.retry)(function() {\n return cache.add(url);\n }, {\n onError: function(e, attempt) {\n return console.debug(\"[SW] Failure attempt \".concat(attempt, ' at caching \"').concat(url, '\". Error: '), e);\n }\n })\n ];\n case 1:\n _state.sent();\n return [\n 2,\n {\n url: url,\n success: true\n }\n ];\n case 2:\n e = _state.sent();\n return [\n 2,\n {\n url: url,\n success: false\n }\n ];\n case 3:\n return [\n 2\n ];\n }\n });\n });\n return function(url) {\n return _ref.apply(this, arguments);\n };\n }()))\n ];\n case 2:\n results = _state.sent();\n cached = results.filter(function(r) {\n return r.success;\n });\n failedToCache = results.filter(function(r) {\n return !r.success;\n });\n if (cached.length > 0) {\n console.debug(\"[SW] Successfully added \".concat(cached.length, \" URLs to the OMRS cache. URLs: \"), cached.map(function(r) {\n return r.url;\n }));\n }\n if (failedToCache.length > 0) {\n console.error(\"[SW] Failed to cache \".concat(failedToCache.length, \" URLs. URLs: \"), failedToCache.map(function(r) {\n return r.url;\n }));\n }\n return [\n 2\n ];\n }\n });\n });\n return _addToOmrsCache.apply(this, arguments);\n}\nfunction invalidateObsoleteCacheEntries(newImportMapUrls) {\n return _invalidateObsoleteCacheEntries.apply(this, arguments);\n}\nfunction _invalidateObsoleteCacheEntries() {\n _invalidateObsoleteCacheEntries = _async_to_generator(function(newImportMapUrls) {\n var cache, cachedUrls, dynamicRoutes, urlsToInvalidate;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n return [\n 4,\n caches.open(_constants__WEBPACK_IMPORTED_MODULE_0__.omrsCacheName)\n ];\n case 1:\n cache = _state.sent();\n return [\n 4,\n cache.keys()\n ];\n case 2:\n cachedUrls = _state.sent().map(function(x) {\n return x.url;\n });\n return [\n 4,\n new _storage__WEBPACK_IMPORTED_MODULE_2__.ServiceWorkerDb().dynamicRouteRegistrations.toArray()\n ];\n case 3:\n dynamicRoutes = _state.sent();\n urlsToInvalidate = cachedUrls.filter(function(cachedUrl) {\n return !_constants__WEBPACK_IMPORTED_MODULE_0__.absoluteWbManifestUrls.includes(cachedUrl) && !newImportMapUrls.includes(cachedUrl) && !dynamicRoutes.some(function(route) {\n return new RegExp(route.pattern).test(cachedUrl);\n });\n });\n console.info(\"[SW] Removing the following expired URLs from the cache: \", urlsToInvalidate);\n // eslint-disable-next-line no-console\n console.debug(\"[SW] The following URLs were known and not invalidated: \", _constants__WEBPACK_IMPORTED_MODULE_0__.absoluteWbManifestUrls, newImportMapUrls, dynamicRoutes);\n return [\n 4,\n Promise.all(urlsToInvalidate.map(function(url) {\n return cache.delete(url);\n }))\n ];\n case 4:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _invalidateObsoleteCacheEntries.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvY2FjaGluZy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsNkJBQTZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWM7QUFDeUI7QUFDRDtBQUN2QjtBQUU1Qzs7OztDQUlDLEdBQ00sU0FBZUsseUJBQXlCQyxTQUFvQjtXQUE3Q0Q7Q0FJckI7U0FKcUJBO0lBQUFBLDRCQUFmLDZCQUF3Q0MsU0FBb0IsRUFBRTtZQUM3REM7Ozs7b0JBQWM7O3dCQUFNSixnRkFBNkJBLENBQUNHOzs7b0JBQWxEQyxjQUFjO29CQUNwQjs7d0JBQU1DLCtCQUErQkQ7OztvQkFBckM7b0JBQ0E7O3dCQUFNRSxlQUFlRjs7O29CQUFyQjs7Ozs7O0lBQ0Y7V0FKc0JGOztBQU10Qjs7O0NBR0MsR0FDTSxTQUFTSyxtQkFBbUI7SUFDakMsT0FBT0QsZUFBZVIsOERBQXNCQTtBQUM5QyxDQUFDO0FBRUQ7OztDQUdDLEdBQ00sU0FBZVEsZUFBZUUsSUFBbUI7V0FBbENGO0NBd0NyQjtTQXhDcUJBO0lBQUFBLGtCQUFmLDZCQUE4QkUsSUFBbUIsRUFBRTtZQVVsREMsT0FDQUMsU0FhQUMsUUFDQUM7Ozs7b0JBeEJOLElBQUlKLEtBQUtLLE1BQU0sS0FBSyxHQUFHO3dCQUNyQjs7O29CQUNGLENBQUM7b0JBT2E7O3dCQUFNQyxPQUFPQyxJQUFJLENBQUNoQixxREFBYUE7OztvQkFBdkNVLFFBQVE7b0JBQ0U7O3dCQUFNTyxRQUFRQyxHQUFHLENBQy9CVCxLQUFLVSxHQUFHO3VDQUFDLDZCQUFPQyxLQUFRO29DQU1iQzs7Ozs7Ozs7Ozs0Q0FKUDs7Z0RBQU12Qix5REFBS0EsQ0FBQzsyREFBTVksTUFBTVksR0FBRyxDQUFDRjttREFBTTtvREFDaENHLFNBQVMsU0FBQ0YsR0FBR0c7K0RBQVlDLFFBQVFDLEtBQUssQ0FBQyx3QkFBK0NOLE9BQXZCSSxTQUFRLGlCQUFtQixPQUFKSixLQUFJLGVBQWFDOztnREFDekc7Ozs0Q0FGQTs0Q0FHQTs7Z0RBQU87b0RBQUVELEtBQUFBO29EQUFLTyxTQUFTLElBQUk7Z0RBQUM7Ozs0Q0FDckJOOzRDQUNQOztnREFBTztvREFBRUQsS0FBQUE7b0RBQUtPLFNBQVMsS0FBSztnREFBQzs7Ozs7Ozs7NEJBRWpDOzRDQVRnQlA7Ozs7OztvQkFEWlQsVUFBVTtvQkFhVkMsU0FBU0QsUUFBUWlCLE1BQU0sQ0FBQyxTQUFDQzsrQkFBTUEsRUFBRUYsT0FBTzs7b0JBQ3hDZCxnQkFBZ0JGLFFBQVFpQixNQUFNLENBQUMsU0FBQ0M7K0JBQU0sQ0FBQ0EsRUFBRUYsT0FBTzs7b0JBRXRELElBQUlmLE9BQU9FLE1BQU0sR0FBRyxHQUFHO3dCQUNyQlcsUUFBUUMsS0FBSyxDQUNYLDJCQUF5QyxPQUFkZCxPQUFPRSxNQUFNLEVBQUMsb0NBQ3pDRixPQUFPTyxHQUFHLENBQUMsU0FBQ1U7bUNBQU1BLEVBQUVULEdBQUc7O29CQUUzQixDQUFDO29CQUVELElBQUlQLGNBQWNDLE1BQU0sR0FBRyxHQUFHO3dCQUM1QlcsUUFBUUssS0FBSyxDQUNYLHdCQUE2QyxPQUFyQmpCLGNBQWNDLE1BQU0sRUFBQyxrQkFDN0NELGNBQWNNLEdBQUcsQ0FBQyxTQUFDVTttQ0FBTUEsRUFBRVQsR0FBRzs7b0JBRWxDLENBQUM7Ozs7OztJQUNIO1dBeENzQmI7O1NBMENQRCwrQkFBK0J5QixnQkFBK0I7V0FBOUR6Qjs7U0FBQUE7SUFBQUEsa0NBQWYsNkJBQThDeUIsZ0JBQStCLEVBQUU7WUFDdkVyQixPQUNBc0IsWUFDQUMsZUFFQUM7Ozs7b0JBSlE7O3dCQUFNbkIsT0FBT0MsSUFBSSxDQUFDaEIscURBQWFBOzs7b0JBQXZDVSxRQUFRO29CQUNNOzt3QkFBTUEsTUFBTXlCLElBQUk7OztvQkFBOUJILGFBQWEsY0FBcUJiLEdBQUcsQ0FBQyxTQUFDaUI7K0JBQU1BLEVBQUVoQixHQUFHOztvQkFDbEM7O3dCQUFNLElBQUlsQixxREFBZUEsR0FBR21DLHlCQUF5QixDQUFDQyxPQUFPOzs7b0JBQTdFTCxnQkFBZ0I7b0JBRWhCQyxtQkFBbUJGLFdBQVdKLE1BQU0sQ0FDeEMsU0FBQ1c7K0JBQ0MsQ0FBQ3hDLDhEQUFzQkEsQ0FBQ3lDLFFBQVEsQ0FBQ0QsY0FDakMsQ0FBQ1IsaUJBQWlCUyxRQUFRLENBQUNELGNBQzNCLENBQUNOLGNBQWNRLElBQUksQ0FBQyxTQUFDQzttQ0FBVSxJQUFJQyxPQUFPRCxNQUFNRSxPQUFPLEVBQUVDLElBQUksQ0FBQ047OztvQkFHbEVkLFFBQVFxQixJQUFJLENBQUMsNkRBQTZEWjtvQkFFMUUsc0NBQXNDO29CQUN0Q1QsUUFBUUMsS0FBSyxDQUNYLDREQUNBM0IsOERBQXNCQSxFQUN0QmdDLGtCQUNBRTtvQkFHRjs7d0JBQU1oQixRQUFRQyxHQUFHLENBQUNnQixpQkFBaUJmLEdBQUcsQ0FBQyxTQUFDQzttQ0FBUVYsTUFBTXFDLE1BQU0sQ0FBQzNCOzs7O29CQUE3RDs7Ozs7O0lBQ0Y7V0F2QmVkIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQG9wZW5tcnMvZXNtLWFwcC1zaGVsbC8uL3NyYy9zZXJ2aWNlLXdvcmtlci9jYWNoaW5nLnRzPzRiNmMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0IHR5cGUgeyBJbXBvcnRNYXAgfSBmcm9tICdAb3Blbm1ycy9lc20tZ2xvYmFscyc7XG5pbXBvcnQgeyByZXRyeSB9IGZyb20gJ0BvcGVubXJzL2VzbS11dGlscyc7XG5pbXBvcnQgeyBhYnNvbHV0ZVdiTWFuaWZlc3RVcmxzLCBvbXJzQ2FjaGVOYW1lIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgZmV0Y2hVcmxzVG9DYWNoZUZyb21JbXBvcnRNYXAgfSBmcm9tICcuL2ltcG9ydC1tYXAtdXRpbHMnO1xuaW1wb3J0IHsgU2VydmljZVdvcmtlckRiIH0gZnJvbSAnLi9zdG9yYWdlJztcblxuLyoqXG4gKiBBdHRlbXB0cyB0byByZXNvbHZlIGNhY2hlYWJsZSBmaWxlcyBmcm9tIHRoZSBzcGVjaWZpZWQgaW1wb3J0IG1hcCAoZmlsZXMgYXJlIHJldHJpZXZlZCB2aWEgY29udmVudGlvbilcbiAqIGFuZCwgaWYgc3VjY2Vzc2Z1bCwgYXR0ZW1wdHMgdG8gYWRkIHRoZW0gdG8gdGhlIGFwcCBjYWNoZS5cbiAqIEBwYXJhbSBpbXBvcnRNYXAgQW4gaW1wb3J0IG1hcCBvYmplY3QgZnJvbSB3aGljaCBjYWNoZWFibGUgZmlsZXMgc2hvdWxkIGJlIGV4dHJhY3RlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNhY2hlSW1wb3J0TWFwUmVmZXJlbmNlcyhpbXBvcnRNYXA6IEltcG9ydE1hcCkge1xuICBjb25zdCB1cmxzVG9DYWNoZSA9IGF3YWl0IGZldGNoVXJsc1RvQ2FjaGVGcm9tSW1wb3J0TWFwKGltcG9ydE1hcCk7XG4gIGF3YWl0IGludmFsaWRhdGVPYnNvbGV0ZUNhY2hlRW50cmllcyh1cmxzVG9DYWNoZSk7XG4gIGF3YWl0IGFkZFRvT21yc0NhY2hlKHVybHNUb0NhY2hlKTtcbn1cblxuLyoqXG4gKiBBZGRzIGFsbCBzdGF0aWMgYXBwIHNoZWxsIGZpbGVzIHRvIHRoZSBjYWNoZS5cbiAqIE9ubHkgY2FjaGVzIHRoZSBcInJhd1wiIGFwcCBzaGVsbCwgbm90IGFueSBNRnMvYW55IGRhdGEgY29taW5nIGZyb20gYW4gaW1wb3J0IG1hcC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByZWNhY2hlQXBwU2hlbGwoKSB7XG4gIHJldHVybiBhZGRUb09tcnNDYWNoZShhYnNvbHV0ZVdiTWFuaWZlc3RVcmxzKTtcbn1cblxuLyoqXG4gKiBBZGRzIGFsbCBvZiB0aGUgZ2l2ZW4gdXJscyB0byB0aGUgZGVmYXVsdCBhcHAgY2FjaGUuXG4gKiBAcGFyYW0gdXJscyBBbiBhcnJheSBvZiBVUkxzIHRvIGJlIGNhY2hlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFkZFRvT21yc0NhY2hlKHVybHM6IEFycmF5PHN0cmluZz4pIHtcbiAgaWYgKHVybHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy8gVGhlIGZvbGxvd2luZyBkb2Vzbid0IHNpbXBseSB1c2UgY2FjaGUuYWRkQWxsIGJlY2F1c2UgaXQgYWJvcnRzIG9uIHRoZSBmaXJzdCBmYWlsdXJlLlxuICAvLyBXZSB3YW50IHRvIGNhY2hlIGFzIG11Y2ggYXMgcG9zc2libGUgYW5kIGp1c3QgYmVjYXVzZSwgZS5nLiwgb25lIHNpbmdsZSBNRiBjYW5ub3QgYmUgY2FjaGVkXG4gIC8vIHdlIGRvbid0IHdhbnQgdGhlIHJlc3QgdG8gZmFpbC5cbiAgLy8gSXQgZnVydGhlciBhbGxvd3MgdXMgdG8gbG9nIG1vcmUgZ3JhbnVsYXJseSAqd2hpY2gqIFVSTCBjb3VsZG4ndCBiZSBjYWNoZWQsIHNvIGRlYnVnZ2luZ1xuICAvLyBpcyBlYXNpZXIuXG4gIGNvbnN0IGNhY2hlID0gYXdhaXQgY2FjaGVzLm9wZW4ob21yc0NhY2hlTmFtZSk7XG4gIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICB1cmxzLm1hcChhc3luYyAodXJsKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCByZXRyeSgoKSA9PiBjYWNoZS5hZGQodXJsKSwge1xuICAgICAgICAgIG9uRXJyb3I6IChlLCBhdHRlbXB0KSA9PiBjb25zb2xlLmRlYnVnKGBbU1ddIEZhaWx1cmUgYXR0ZW1wdCAke2F0dGVtcHR9IGF0IGNhY2hpbmcgXCIke3VybH1cIi4gRXJyb3I6IGAsIGUpLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHsgdXJsLCBzdWNjZXNzOiB0cnVlIH07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHJldHVybiB7IHVybCwgc3VjY2VzczogZmFsc2UgfTtcbiAgICAgIH1cbiAgICB9KSxcbiAgKTtcblxuICBjb25zdCBjYWNoZWQgPSByZXN1bHRzLmZpbHRlcigocikgPT4gci5zdWNjZXNzKTtcbiAgY29uc3QgZmFpbGVkVG9DYWNoZSA9IHJlc3VsdHMuZmlsdGVyKChyKSA9PiAhci5zdWNjZXNzKTtcblxuICBpZiAoY2FjaGVkLmxlbmd0aCA+IDApIHtcbiAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgYFtTV10gU3VjY2Vzc2Z1bGx5IGFkZGVkICR7Y2FjaGVkLmxlbmd0aH0gVVJMcyB0byB0aGUgT01SUyBjYWNoZS4gVVJMczogYCxcbiAgICAgIGNhY2hlZC5tYXAoKHIpID0+IHIudXJsKSxcbiAgICApO1xuICB9XG5cbiAgaWYgKGZhaWxlZFRvQ2FjaGUubGVuZ3RoID4gMCkge1xuICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICBgW1NXXSBGYWlsZWQgdG8gY2FjaGUgJHtmYWlsZWRUb0NhY2hlLmxlbmd0aH0gVVJMcy4gVVJMczogYCxcbiAgICAgIGZhaWxlZFRvQ2FjaGUubWFwKChyKSA9PiByLnVybCksXG4gICAgKTtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBpbnZhbGlkYXRlT2Jzb2xldGVDYWNoZUVudHJpZXMobmV3SW1wb3J0TWFwVXJsczogQXJyYXk8c3RyaW5nPikge1xuICBjb25zdCBjYWNoZSA9IGF3YWl0IGNhY2hlcy5vcGVuKG9tcnNDYWNoZU5hbWUpO1xuICBjb25zdCBjYWNoZWRVcmxzID0gKGF3YWl0IGNhY2hlLmtleXMoKSkubWFwKCh4KSA9PiB4LnVybCk7XG4gIGNvbnN0IGR5bmFtaWNSb3V0ZXMgPSBhd2FpdCBuZXcgU2VydmljZVdvcmtlckRiKCkuZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucy50b0FycmF5KCk7XG5cbiAgY29uc3QgdXJsc1RvSW52YWxpZGF0ZSA9IGNhY2hlZFVybHMuZmlsdGVyKFxuICAgIChjYWNoZWRVcmwpID0+XG4gICAgICAhYWJzb2x1dGVXYk1hbmlmZXN0VXJscy5pbmNsdWRlcyhjYWNoZWRVcmwpICYmXG4gICAgICAhbmV3SW1wb3J0TWFwVXJscy5pbmNsdWRlcyhjYWNoZWRVcmwpICYmXG4gICAgICAhZHluYW1pY1JvdXRlcy5zb21lKChyb3V0ZSkgPT4gbmV3IFJlZ0V4cChyb3V0ZS5wYXR0ZXJuKS50ZXN0KGNhY2hlZFVybCkpLFxuICApO1xuXG4gIGNvbnNvbGUuaW5mbygnW1NXXSBSZW1vdmluZyB0aGUgZm9sbG93aW5nIGV4cGlyZWQgVVJMcyBmcm9tIHRoZSBjYWNoZTogJywgdXJsc1RvSW52YWxpZGF0ZSk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgY29uc29sZS5kZWJ1ZyhcbiAgICAnW1NXXSBUaGUgZm9sbG93aW5nIFVSTHMgd2VyZSBrbm93biBhbmQgbm90IGludmFsaWRhdGVkOiAnLFxuICAgIGFic29sdXRlV2JNYW5pZmVzdFVybHMsXG4gICAgbmV3SW1wb3J0TWFwVXJscyxcbiAgICBkeW5hbWljUm91dGVzLFxuICApO1xuXG4gIGF3YWl0IFByb21pc2UuYWxsKHVybHNUb0ludmFsaWRhdGUubWFwKCh1cmwpID0+IGNhY2hlLmRlbGV0ZSh1cmwpKSk7XG59XG4iXSwibmFtZXMiOlsicmV0cnkiLCJhYnNvbHV0ZVdiTWFuaWZlc3RVcmxzIiwib21yc0NhY2hlTmFtZSIsImZldGNoVXJsc1RvQ2FjaGVGcm9tSW1wb3J0TWFwIiwiU2VydmljZVdvcmtlckRiIiwiY2FjaGVJbXBvcnRNYXBSZWZlcmVuY2VzIiwiaW1wb3J0TWFwIiwidXJsc1RvQ2FjaGUiLCJpbnZhbGlkYXRlT2Jzb2xldGVDYWNoZUVudHJpZXMiLCJhZGRUb09tcnNDYWNoZSIsInByZWNhY2hlQXBwU2hlbGwiLCJ1cmxzIiwiY2FjaGUiLCJyZXN1bHRzIiwiY2FjaGVkIiwiZmFpbGVkVG9DYWNoZSIsImxlbmd0aCIsImNhY2hlcyIsIm9wZW4iLCJQcm9taXNlIiwiYWxsIiwibWFwIiwidXJsIiwiZSIsImFkZCIsIm9uRXJyb3IiLCJhdHRlbXB0IiwiY29uc29sZSIsImRlYnVnIiwic3VjY2VzcyIsImZpbHRlciIsInIiLCJlcnJvciIsIm5ld0ltcG9ydE1hcFVybHMiLCJjYWNoZWRVcmxzIiwiZHluYW1pY1JvdXRlcyIsInVybHNUb0ludmFsaWRhdGUiLCJrZXlzIiwieCIsImR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnMiLCJ0b0FycmF5IiwiY2FjaGVkVXJsIiwiaW5jbHVkZXMiLCJzb21lIiwicm91dGUiLCJSZWdFeHAiLCJwYXR0ZXJuIiwidGVzdCIsImluZm8iLCJkZWxldGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/service-worker/caching.ts\n");
591
591
 
592
592
  /***/ }),
593
593
 
@@ -598,7 +598,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
598
598
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
599
599
 
600
600
  "use strict";
601
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ absoluteWbManifestUrls: () => (/* binding */ absoluteWbManifestUrls),\n/* harmony export */ buildManifestSuffix: () => (/* binding */ buildManifestSuffix),\n/* harmony export */ indexUrl: () => (/* binding */ indexUrl),\n/* harmony export */ omrsCacheName: () => (/* binding */ omrsCacheName),\n/* harmony export */ omrsCachePrefix: () => (/* binding */ omrsCachePrefix),\n/* harmony export */ omrsOfflineCachingStrategyHttpHeaderName: () => (/* binding */ omrsOfflineCachingStrategyHttpHeaderName),\n/* harmony export */ omrsOfflineResponseBodyHttpHeaderName: () => (/* binding */ omrsOfflineResponseBodyHttpHeaderName),\n/* harmony export */ omrsOfflineResponseStatusHttpHeaderName: () => (/* binding */ omrsOfflineResponseStatusHttpHeaderName),\n/* harmony export */ wbManifest: () => (/* binding */ wbManifest)\n/* harmony export */ });\n/* harmony import */ var lodash_es_uniq__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash-es/uniq */ \"../../../node_modules/lodash-es/uniq.js\");\n\n// note that these constants are also defined in @openmrs/esm-offline\nvar omrsOfflineResponseBodyHttpHeaderName = \"x-omrs-offline-response-body\";\nvar omrsOfflineResponseStatusHttpHeaderName = \"x-omrs-offline-response-status\";\nvar omrsOfflineCachingStrategyHttpHeaderName = \"x-omrs-offline-caching-strategy\";\nvar omrsCachePrefix = \"omrs\";\nvar omrsCacheName = \"\".concat(omrsCachePrefix, \"-spa-cache-v1\");\nvar wbManifest = [{'revision':null,'url':'/openmrs/spa/importmap.json'},{'revision':null,'url':'/openmrs/spa/routes.registry.json'},{'revision':null,'url':'023bd53d342b7463.woff'},{'revision':null,'url':'02acc4469a2fe2e4.woff2'},{'revision':null,'url':'033e03f8663ab9b1.woff'},{'revision':null,'url':'052607e67da262ec.woff'},{'revision':null,'url':'081587ca0db8e63f.woff2'},{'revision':null,'url':'08cf53c4e5e71cf1.woff2'},{'revision':null,'url':'090b2bc014d24ea4.woff2'},{'revision':null,'url':'0a28cd0b47497b71.woff'},{'revision':null,'url':'0a9765a89ff0437d.woff'},{'revision':null,'url':'0ae92bcea615e948.woff2'},{'revision':null,'url':'0be8520d8945b3b7.woff2'},{'revision':null,'url':'0bf6b66a8b86b014.woff'},{'revision':null,'url':'0e7dd073cd8bb0ad.woff2'},{'revision':null,'url':'14869ac5d1830304.woff2'},{'revision':null,'url':'14aaceff85fc8b28.woff2'},{'revision':null,'url':'1590052e1cf8f28d.woff'},{'revision':null,'url':'16f443eed01776ca.woff2'},{'revision':null,'url':'183bae0e53a22182.woff2'},{'revision':null,'url':'19b239a0bb74b27e.woff'},{'revision':null,'url':'19c8f94ccd6289f5.woff2'},{'revision':null,'url':'1ae86565eab7451c.woff2'},{'revision':null,'url':'1c7bf8797e0a9be6.woff2'},{'revision':null,'url':'1d9aff9a93a3bb66.woff'},{'revision':null,'url':'1f266d3619b30f16.woff2'},{'revision':null,'url':'1f8c5a4087a524fd.woff2'},{'revision':null,'url':'20ba2b23c5c0cd0b.woff2'},{'revision':null,'url':'2269d45733c5cf8f.woff'},{'revision':null,'url':'258ecbd235953099.woff'},{'revision':null,'url':'295dd01a1fbfee6d.woff2'},{'revision':null,'url':'2d7f835ab7c7c764.woff'},{'revision':null,'url':'2f66cca99eeead63.woff'},{'revision':null,'url':'2f686985e26e7107.woff2'},{'revision':null,'url':'315eff729e4ccbd9.woff2'},{'revision':null,'url':'32f1e5aadf845e08.woff'},{'revision':null,'url':'338484e1c850669c.woff'},{'revision':null,'url':'33b7a82f1e295190.woff'},{'revision':null,'url':'3674d98ec4a9173d.woff'},{'revision':null,'url':'368d16e3259bf207.woff2'},{'revision':null,'url':'36c49aa341a7079a.woff2'},{'revision':null,'url':'36e1e0430475edee.woff2'},{'revision':null,'url':'3975decbab0164f3.js'},{'revision':null,'url':'3bc19662b8630ee9.woff2'},{'revision':null,'url':'3f645f473b3f8fba.woff2'},{'revision':null,'url':'4095df88acae9e98.woff'},{'revision':null,'url':'4218ac9901b9d36d.woff2'},{'revision':null,'url':'4680ba68412e4da9.woff2'},{'revision':null,'url':'47d7a8698d562a0e.woff'},{'revision':null,'url':'47ec6c9dffe776a0.woff'},{'revision':null,'url':'48e37bd7ebf85a1f.woff2'},{'revision':null,'url':'48edfdf51dfb3160.woff'},{'revision':null,'url':'49af280eabf5f1f5.js'},{'revision':null,'url':'4a35a2746c8ad7a5.woff'},{'revision':null,'url':'4e11b8a7c445255f.woff2'},{'revision':null,'url':'4ea1f5c3baf89fe3.woff'},{'revision':null,'url':'4ea99f41c896bf9d.woff'},{'revision':null,'url':'5005db1d1caf70c7.woff'},{'revision':null,'url':'528a8e7c1c141a31.woff'},{'revision':null,'url':'52ca12f5b516d4ea.woff'},{'revision':null,'url':'537ddd61c5c1fce2.woff2'},{'revision':null,'url':'5432f7541ec25c34.woff'},{'revision':null,'url':'54a95d73a9454ba3.woff'},{'revision':null,'url':'56c4118c0907f151.woff2'},{'revision':null,'url':'5938bc2ae7ec60c0.woff2'},{'revision':null,'url':'594306657c4e44e8.woff'},{'revision':null,'url':'5a538aa477a66067.woff'},{'revision':null,'url':'5c6586155f0d278a.woff2'},{'revision':null,'url':'60ec587649ba812a.woff2'},{'revision':null,'url':'616567cd947eb9dd.woff'},{'revision':null,'url':'65168b59f44caab4.woff'},{'revision':null,'url':'65c0982f98374864.woff'},{'revision':null,'url':'65e6511e035870e1.woff2'},{'revision':null,'url':'661425f6798cd16a.woff2'},{'revision':null,'url':'66b864fe213caf46.woff2'},{'revision':null,'url':'6775fee945132ef9.woff'},{'revision':null,'url':'68bbd362c8e4983b.woff'},{'revision':null,'url':'68d6deec87b6b604.woff'},{'revision':null,'url':'69a7e6d31d390296.woff'},{'revision':null,'url':'69d087d970ee9455.woff2'},{'revision':null,'url':'69fa3fc7363bbc04.woff'},{'revision':null,'url':'6a1f0178b45b2e9e.woff'},{'revision':null,'url':'6c6c45e66ff54281.woff2'},{'revision':null,'url':'6ffb9ed97b21fdc0.woff'},{'revision':null,'url':'7073a7323e92bd11.woff2'},{'revision':null,'url':'718c6cc31274ab1a.woff2'},{'revision':null,'url':'72cdbedfe04be9f9.woff2'},{'revision':null,'url':'7509c9f56fe9e532.woff2'},{'revision':null,'url':'75dc5c5b04adc8bf.woff2'},{'revision':null,'url':'76a7c256fc8b3490.woff'},{'revision':null,'url':'77b48bc05299ecca.woff2'},{'revision':null,'url':'787f56efa306ddbc.woff'},{'revision':null,'url':'7a0a0215c248c73d.woff2'},{'revision':null,'url':'7c4463d9c84f263a.woff'},{'revision':null,'url':'7d112a556b7670d2.woff'},{'revision':null,'url':'7d52d6014b5f2bbc.woff'},{'revision':null,'url':'7f00bebb24e40167.woff2'},{'revision':null,'url':'7f2c6ea3e740417e.woff'},{'revision':null,'url':'802c6176541eeed7.woff2'},{'revision':null,'url':'8080081b3379c637.woff2'},{'revision':null,'url':'8274cc1afc7619f1.woff'},{'revision':null,'url':'8605507b7a8487c4.woff2'},{'revision':null,'url':'8a83d654702f6534.woff2'},{'revision':null,'url':'8ccee65f6cf254ee.woff'},{'revision':null,'url':'8d82a082a4aba439.woff'},{'revision':null,'url':'8de04ae985937b56.woff'},{'revision':null,'url':'8fe71173a13fe571.woff2'},{'revision':null,'url':'90edccb224a51cee.woff'},{'revision':null,'url':'94b292fe87831a8b.woff'},{'revision':null,'url':'95dc66c1b88745f8.woff'},{'revision':null,'url':'95fb698be77c85ef.woff'},{'revision':null,'url':'9624cec0f9bdd81e.woff2'},{'revision':null,'url':'9662331fa31e3f20.woff'},{'revision':null,'url':'98a3af55a1698171.woff2'},{'revision':null,'url':'9ba85996af74c5ce.woff2'},{'revision':null,'url':'9bc133b1df25cb74.woff'},{'revision':null,'url':'9ddb22faa35006e7.woff2'},{'revision':null,'url':'9e97352380611b95.woff'},{'revision':null,'url':'a167fb2799dd741b.woff2'},{'revision':null,'url':'a2045a5cc4fdf94f.woff2'},{'revision':null,'url':'a246c73905a31c93.woff2'},{'revision':null,'url':'a401aa7939cb6e6f.woff2'},{'revision':null,'url':'a41a71258c38684d.woff'},{'revision':null,'url':'a60d94a72d615a8e.woff'},{'revision':null,'url':'a66764dd0c1fa213.woff'},{'revision':null,'url':'a6ed036f17a1ea29.woff2'},{'revision':null,'url':'a8f635129d660202.woff'},{'revision':null,'url':'a9f25ca430709a1a.woff2'},{'revision':null,'url':'ae14d98ad8a1212c.woff'},{'revision':null,'url':'aeec4f78084adf7f.woff'},{'revision':null,'url':'af11e94b0644eba5.woff'},{'revision':null,'url':'afa9121a49e95351.woff2'},{'revision':null,'url':'afcda12d9f805543.woff2'},{'revision':null,'url':'b09ded85a7da77f1.woff2'},{'revision':null,'url':'b2f4e9d1e821b71c.woff2'},{'revision':null,'url':'b30b06698dc369b2.woff'},{'revision':null,'url':'b4a074bf828bb757.woff2'},{'revision':null,'url':'b7f447da43f6e596.woff2'},{'revision':null,'url':'b7f633b871b84820.woff'},{'revision':null,'url':'bcca84a524572d10.woff2'},{'revision':null,'url':'be4d1f97b11d087c.woff2'},{'revision':null,'url':'be91def2232f6776.woff'},{'revision':null,'url':'bec14780d81164de.woff2'},{'revision':null,'url':'c285f4b15d11f172.woff'},{'revision':null,'url':'c4673617b80801f3.woff'},{'revision':null,'url':'c553f7e0199c5084.woff2'},{'revision':null,'url':'c8470ed2c145ace7.woff'},{'revision':null,'url':'c9d9ce9f465df4fe.woff2'},{'revision':null,'url':'ccb2870475da9fe8.woff'},{'revision':null,'url':'d04134fa33c2606d.woff'},{'revision':null,'url':'d11f9c5cd7d9ea16.woff'},{'revision':null,'url':'d188f7f036ac5779.woff2'},{'revision':null,'url':'d265d81c58525ae4.woff2'},{'revision':null,'url':'d5942cd81663e136.woff2'},{'revision':null,'url':'d6097a5c452acf6d.woff'},{'revision':null,'url':'d66b8ff73d95cabb.woff2'},{'revision':null,'url':'d77f5bf95de8edaa.woff'},{'revision':null,'url':'d8829a685af4f372.woff'},{'revision':null,'url':'d88899ef0fd16719.woff2'},{'revision':null,'url':'d9a5d958e69e058d.woff2'},{'revision':null,'url':'da65d9a514c628c8.woff'},{'revision':null,'url':'dac90d495be353a0.woff2'},{'revision':null,'url':'dd7071bc6306585c.woff'},{'revision':null,'url':'dd8ce598529c3fab.woff2'},{'revision':null,'url':'ddef6f2dd566c2b9.woff'},{'revision':null,'url':'de013f1be25103fa.woff2'},{'revision':null,'url':'dee2ff599db31e5b.woff'},{'revision':null,'url':'dee7c6b5dd954d9b.woff'},{'revision':null,'url':'df222fceeffca849.woff2'},{'revision':null,'url':'e0d2e5b12f028b5d.woff'},{'revision':null,'url':'e33e3db8e4f7559f.woff'},{'revision':null,'url':'e62b00b9199c1ac9.woff2'},{'revision':null,'url':'e696cef1407b2610.woff2'},{'revision':null,'url':'e89ca83b24959664.woff'},{'revision':null,'url':'eb8c0ae77ad55249.woff'},{'revision':null,'url':'ed0997bd7d221b8e.woff'},{'revision':null,'url':'eed48feba743e21c.woff2'},{'revision':'37aed2785e3d8110bad17a7aae9df8eb','url':'esm-devtools-app/68.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-devtools-app/68.js.LICENSE.txt'},{'revision':'7410b575eb3fa8e446652504f8491811','url':'esm-devtools-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-devtools-app/735.js.LICENSE.txt'},{'revision':'a346f6b030faaf4c381202af83f68d7c','url':'esm-devtools-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-devtools-app/889.js.LICENSE.txt'},{'revision':'7f8c147965b4046a9437e4bc21ac9d74','url':'esm-devtools-app/988.js'},{'revision':'e8fee3744d31a6c5f4d1eddf6f2d824e','url':'esm-devtools-app/main.js'},{'revision':'9a9e3928850c9644e272e4cefb9551c2','url':'esm-devtools-app/openmrs-esm-devtools-app.js'},{'revision':'fa574da05dd917eb8dc92f0482a170c1','url':'esm-devtools-app/openmrs-esm-devtools-app.js.buildmanifest.json'},{'revision':'bfde24097339ff619956cd735c95d116','url':'esm-devtools-app/routes.json'},{'revision':'33f9414270238ac18865a728f2060a83','url':'esm-implementer-tools-app/319.js'},{'revision':'1bc1f5f2a54d7bfc64341b3b5294ef5a','url':'esm-implementer-tools-app/329.js'},{'revision':'61baa3a5fc2eebeed7b52ce72e4992aa','url':'esm-implementer-tools-app/329.js.LICENSE.txt'},{'revision':'833c2175dfde1819917db8693b9d2108','url':'esm-implementer-tools-app/426.js'},{'revision':'1ddc673a91ca0a2702a98ef174c88a1b','url':'esm-implementer-tools-app/460.js'},{'revision':'4c902c2e4c29dbcb7565a6e5aebf2bea','url':'esm-implementer-tools-app/56.js'},{'revision':'31fdd799c36cc35ef3762e9ede8185cc','url':'esm-implementer-tools-app/560.js'},{'revision':'a4557c274e175127a937057305c8cd29','url':'esm-implementer-tools-app/574.js'},{'revision':'32ebbed892916d908287461d14000d75','url':'esm-implementer-tools-app/587.js'},{'revision':'50fd1e31f96c606d61590f2f75470aae','url':'esm-implementer-tools-app/620.js'},{'revision':'9686ec404915a5cd3724eb5256a48d74','url':'esm-implementer-tools-app/620.js.LICENSE.txt'},{'revision':'f587ed1b9cfd8f7c82677e31da7bc9af','url':'esm-implementer-tools-app/625.js'},{'revision':'d6e7bfaf645d6cc3975479ded60c7af3','url':'esm-implementer-tools-app/651.js'},{'revision':'ae7fdf217697afbca7cf73914695d557','url':'esm-implementer-tools-app/727.js'},{'revision':'f33d282215d78dfa9d41bfcd6cb75fc0','url':'esm-implementer-tools-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-implementer-tools-app/735.js.LICENSE.txt'},{'revision':'6d5c51d2501044c2b80cec83f36c38b0','url':'esm-implementer-tools-app/738.js'},{'revision':'be0b9393f5013ab64cc7250195c50770','url':'esm-implementer-tools-app/757.js'},{'revision':'de08264be2fd06897a2d430ffa9db77b','url':'esm-implementer-tools-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-implementer-tools-app/788.js.LICENSE.txt'},{'revision':'01434d4747a0bdad094ee76aa20ac1a1','url':'esm-implementer-tools-app/79.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-implementer-tools-app/79.js.LICENSE.txt'},{'revision':'4470624e760ec180b9596be3deaaad83','url':'esm-implementer-tools-app/807.js'},{'revision':'6130bdb5838c60e16ffa602c13ebfbd9','url':'esm-implementer-tools-app/833.js'},{'revision':'bbd8fb454e9b62c20b178ccc9df2bcd2','url':'esm-implementer-tools-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-implementer-tools-app/889.js.LICENSE.txt'},{'revision':'965b1fe6252b294a2aa58ae2e6403f0b','url':'esm-implementer-tools-app/main.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-implementer-tools-app/main.js.LICENSE.txt'},{'revision':'b596e84d63fe60aefb0162467234e3f1','url':'esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js'},{'revision':'140f589dfa29bed58a3098799500d8b7','url':'esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js.buildmanifest.json'},{'revision':'799eff6e34d729858d10d09b14ece1e9','url':'esm-implementer-tools-app/routes.json'},{'revision':'a36645f1b757149df1d5e2c825c765ca','url':'esm-login-app/111.js'},{'revision':'3078176cbf1eae99ed56ea4c2b063461','url':'esm-login-app/126.js'},{'revision':'61baa3a5fc2eebeed7b52ce72e4992aa','url':'esm-login-app/126.js.LICENSE.txt'},{'revision':'30f7968e0cd251468adcf7058564cf5b','url':'esm-login-app/173.js'},{'revision':'1d2f7efafd96286576306390585e25fa','url':'esm-login-app/224.js'},{'revision':'baa19e2c9bd1171e9431ec3b7298ce0c','url':'esm-login-app/236.js'},{'revision':'c0da7df4e2c938a83718d75afd356eee','url':'esm-login-app/240.js'},{'revision':'24434c1a6f00484c2248315a706dfcad','url':'esm-login-app/272.js'},{'revision':'044f26c447c11bdca2aa4d32ec02ff42','url':'esm-login-app/319.js'},{'revision':'26235d83933f96f01678652264b20b0a','url':'esm-login-app/336.js'},{'revision':'2d04dbe63760bd6648d25f5e6be1d497','url':'esm-login-app/370.js'},{'revision':'11343d2554fc61eb09eb75c60d91beae','url':'esm-login-app/460.js'},{'revision':'a32c34f8ca6dc0a5ca649b9985301eee','url':'esm-login-app/539.js'},{'revision':'8d77ca90d05bdbf69d133192053fe5b0','url':'esm-login-app/56.js'},{'revision':'3509d7f96dbba07a77443c0ec7c45116','url':'esm-login-app/574.js'},{'revision':'d81d865085999f334bbe163dc1ac70e2','url':'esm-login-app/625.js'},{'revision':'b8f731f7adc306974a1ac296195e533f','url':'esm-login-app/627.js'},{'revision':'2873614f71f534aee953ee6e5e4eeb25','url':'esm-login-app/63.js'},{'revision':'41d15f6ba9fe36eb6cd3043bad6c4548','url':'esm-login-app/63.js.LICENSE.txt'},{'revision':'01cd6ae9d4e499f38fd69633c4147531','url':'esm-login-app/644.js'},{'revision':'894dc9453600eaa9e035ae04aeaeb8e3','url':'esm-login-app/673.js'},{'revision':'aad508425a0e29ea8dcb91a5145d04ed','url':'esm-login-app/729.js'},{'revision':'51e446e0d4695c24e2f5ed5939f9fefc','url':'esm-login-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-login-app/735.js.LICENSE.txt'},{'revision':'20562191e3019d2cc0b76fbf83e291e7','url':'esm-login-app/757.js'},{'revision':'fafb30da7459470b01965f0c4ca3bedf','url':'esm-login-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-login-app/788.js.LICENSE.txt'},{'revision':'62e56fab73233e28294d91040835c2fc','url':'esm-login-app/807.js'},{'revision':'1069498616dc132d7f1b2c952a0e7db8','url':'esm-login-app/812.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-login-app/812.js.LICENSE.txt'},{'revision':'96d6c1dd96f902c996452acf8836fd5d','url':'esm-login-app/833.js'},{'revision':'d47e9fea23e0e22b9b41dd85b459cc65','url':'esm-login-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-login-app/889.js.LICENSE.txt'},{'revision':'98161f354b1b9d0f376921e1d1a4aa61','url':'esm-login-app/main.js'},{'revision':'27504acc7c5879b89bbe130a4a612c75','url':'esm-login-app/main.js.LICENSE.txt'},{'revision':'d54a2fa150669ff041f9c9644ea144e8','url':'esm-login-app/openmrs-esm-login-app.js'},{'revision':'5391ae391b4c55b74a23667147a1f263','url':'esm-login-app/openmrs-esm-login-app.js.buildmanifest.json'},{'revision':'1a3f153a59bc918e56c194b957df85a1','url':'esm-login-app/routes.json'},{'revision':'4906e6d5ef6e447ef1c4466bbc5efdfd','url':'esm-offline-tools-app/102.js'},{'revision':'cbc9366c0e23bc6694d6e83197d6af9b','url':'esm-offline-tools-app/1584c81d564cacde.svg'},{'revision':'9681eaba28e1e5a1124dcfd58ff383e6','url':'esm-offline-tools-app/193.js'},{'revision':'ba90e34929b35374a1efaf01752c2d08','url':'esm-offline-tools-app/193.js.LICENSE.txt'},{'revision':'fefc156993fb19a5da87c44abb646349','url':'esm-offline-tools-app/319.js'},{'revision':'e6ab13bd6a819e49674891c269531869','url':'esm-offline-tools-app/460.js'},{'revision':'9ec2f20455995bb2fe7f8bbc5e1e5f53','url':'esm-offline-tools-app/56.js'},{'revision':'608d54816bf5749c14cbf260dda593ba','url':'esm-offline-tools-app/574.js'},{'revision':'a6795f80404dfc5757711e1e8b196f8e','url':'esm-offline-tools-app/625.js'},{'revision':'1bee5698fd922636fe522923abefc702','url':'esm-offline-tools-app/63.js'},{'revision':'41d15f6ba9fe36eb6cd3043bad6c4548','url':'esm-offline-tools-app/63.js.LICENSE.txt'},{'revision':'0936b4e9ad2bd56dbf4d971175b822ac','url':'esm-offline-tools-app/729.js'},{'revision':'7529ec963ec6b4740837986094b97702','url':'esm-offline-tools-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-offline-tools-app/735.js.LICENSE.txt'},{'revision':'dc0d461f408c6235010017e0c5b56fc1','url':'esm-offline-tools-app/757.js'},{'revision':'330dcd098efa59843322e6b523e16135','url':'esm-offline-tools-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-offline-tools-app/788.js.LICENSE.txt'},{'revision':'f4181b4de9afbe6c33595b00dbb2a36c','url':'esm-offline-tools-app/807.js'},{'revision':'d838fe145159f629a451979b7e666700','url':'esm-offline-tools-app/833.js'},{'revision':'e68cda65f531a65db9ead0f2c996ca3a','url':'esm-offline-tools-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-offline-tools-app/889.js.LICENSE.txt'},{'revision':'ef0e9b156e8888f6e01dc0f5c45d6e99','url':'esm-offline-tools-app/main.js'},{'revision':'ba90e34929b35374a1efaf01752c2d08','url':'esm-offline-tools-app/main.js.LICENSE.txt'},{'revision':'438b3c3426ce98a01ac7c1c5fd02065f','url':'esm-offline-tools-app/openmrs-esm-offline-tools-app.js'},{'revision':'a7f94a47f54fb14150314bf1a18aa6c7','url':'esm-offline-tools-app/openmrs-esm-offline-tools-app.js.buildmanifest.json'},{'revision':'01e02fc32c3249086b0245f6d33b49e5','url':'esm-offline-tools-app/routes.json'},{'revision':'748f994ac510b6f443c99a44dfeedc00','url':'esm-primary-navigation-app/262.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-primary-navigation-app/262.js.LICENSE.txt'},{'revision':'baf92aca37b44660ed1e9ac6b5f83efe','url':'esm-primary-navigation-app/319.js'},{'revision':'660431f68b96d3068c564711ee5484c7','url':'esm-primary-navigation-app/460.js'},{'revision':'644f9a3a959b1e6e9d3dbc2a7ea1988d','url':'esm-primary-navigation-app/574.js'},{'revision':'c870e5f965c4bdc33edc1a484ae7be33','url':'esm-primary-navigation-app/625.js'},{'revision':'96199e9aa9c8776d84bfda5131fc1509','url':'esm-primary-navigation-app/63.js'},{'revision':'41d15f6ba9fe36eb6cd3043bad6c4548','url':'esm-primary-navigation-app/63.js.LICENSE.txt'},{'revision':'318998f0f6c86fc39e2ba97a50333ca4','url':'esm-primary-navigation-app/729.js'},{'revision':'bd350f83f4fa238bbcf38ae6d6bacabc','url':'esm-primary-navigation-app/735.js'},{'revision':'d880b3c2e37c8185d12b2854d16776d0','url':'esm-primary-navigation-app/757.js'},{'revision':'af334a681ef89584cce5bd7f5203d436','url':'esm-primary-navigation-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-primary-navigation-app/788.js.LICENSE.txt'},{'revision':'aadcd17179b34b9b03394d3b8a543eae','url':'esm-primary-navigation-app/807.js'},{'revision':'35323526ae5ce31104551d701bac8b6c','url':'esm-primary-navigation-app/833.js'},{'revision':'5f293a75d8258352eefa24a4f203377b','url':'esm-primary-navigation-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-primary-navigation-app/889.js.LICENSE.txt'},{'revision':'808b50a1bd24dd86ee5b378d9ee11c6a','url':'esm-primary-navigation-app/960.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-primary-navigation-app/960.js.LICENSE.txt'},{'revision':'9b2d6e118dc93417c9a77de69ef6832f','url':'esm-primary-navigation-app/main.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-primary-navigation-app/main.js.LICENSE.txt'},{'revision':'89d5c54a77c6542f5c2a6ce0788f145f','url':'esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js'},{'revision':'af86278e60596334e6acb1997d905111','url':'esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js.buildmanifest.json'},{'revision':'a732613de220cccc50b447aef64a450f','url':'esm-primary-navigation-app/routes.json'},{'revision':null,'url':'f280bda8a6e535a6.woff'},{'revision':null,'url':'f29978db163aaa3d.js'},{'revision':null,'url':'f543c88feb236d11.woff2'},{'revision':null,'url':'f591b0079faa93fe.woff2'},{'revision':null,'url':'f6ed27923769ad1d.woff2'},{'revision':null,'url':'f8803bebe640d99a.woff'},{'revision':'30de494bd9e73ae96c18fd0c06fa422b','url':'favicon.ico'},{'revision':null,'url':'fbebeb4336e67012.woff2'},{'revision':null,'url':'fd522cd7a5c646fe.woff'},{'revision':'2ec35e97f85466d9e089531ded9794af','url':'index.html'},{'revision':'6b758b31ea00150986994edcfb033a94','url':'logo-512.png'},{'revision':'b860db243392596e3b875bad9794b4e5','url':'logo.svg'},{'revision':'12f5c042067cd0a5e39a749404f71a43','url':'openmrs.js'}];\nvar indexUrl = prefixWithServiceWorkerLocationIfRelative(\"index.html\");\nvar absoluteWbManifestUrls = (0,lodash_es_uniq__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(wbManifest.map(function(param) {\n var url = param.url;\n return prefixWithServiceWorkerLocationIfRelative(url);\n}));\nvar buildManifestSuffix = \".buildmanifest.json\";\nfunction prefixWithServiceWorkerLocationIfRelative(path) {\n return new URL(path, self.location.href).href;\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvY29uc3RhbnRzLnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBa0M7QUFFbEMscUVBQXFFO0FBQzlELElBQU1DLHdDQUNYLCtCQUErQjtBQUMxQixJQUFNQywwQ0FDWCxpQ0FBaUM7QUFDNUIsSUFBTUMsMkNBQ1gsa0NBQWtDO0FBRTdCLElBQU1DLGtCQUFrQixPQUFPO0FBQy9CLElBQU1DLGdCQUFnQixHQUFtQixPQUFoQkQsaUJBQWdCLGlCQUFlO0FBRXhELElBQU1FLGFBQWFDLEtBQUtDLGFBQWEsQ0FBQztBQUN0QyxJQUFNQyxXQUFXQywwQ0FBMEMsY0FBYztBQUN6RSxJQUFNQyx5QkFBeUJYLDBEQUFJQSxDQUN4Q00sV0FBV00sR0FBRyxDQUFDO1FBQUdDLFlBQUFBO1dBQVVILDBDQUEwQ0c7SUFDdEU7QUFFSyxJQUFNQyxzQkFBc0Isc0JBQXNCO0FBRXpELFNBQVNKLDBDQUEwQ0ssSUFBWSxFQUFFO0lBQy9ELE9BQU8sSUFBSUMsSUFBSUQsTUFBTVIsS0FBS1UsUUFBUSxDQUFDQyxJQUFJLEVBQUVBLElBQUk7QUFDL0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL3NlcnZpY2Utd29ya2VyL2NvbnN0YW50cy50cz9lODExIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1bmlxIGZyb20gXCJsb2Rhc2gtZXMvdW5pcVwiO1xuXG4vLyBub3RlIHRoYXQgdGhlc2UgY29uc3RhbnRzIGFyZSBhbHNvIGRlZmluZWQgaW4gQG9wZW5tcnMvZXNtLW9mZmxpbmVcbmV4cG9ydCBjb25zdCBvbXJzT2ZmbGluZVJlc3BvbnNlQm9keUh0dHBIZWFkZXJOYW1lID1cbiAgXCJ4LW9tcnMtb2ZmbGluZS1yZXNwb25zZS1ib2R5XCI7XG5leHBvcnQgY29uc3Qgb21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0h0dHBIZWFkZXJOYW1lID1cbiAgXCJ4LW9tcnMtb2ZmbGluZS1yZXNwb25zZS1zdGF0dXNcIjtcbmV4cG9ydCBjb25zdCBvbXJzT2ZmbGluZUNhY2hpbmdTdHJhdGVneUh0dHBIZWFkZXJOYW1lID1cbiAgXCJ4LW9tcnMtb2ZmbGluZS1jYWNoaW5nLXN0cmF0ZWd5XCI7XG5cbmV4cG9ydCBjb25zdCBvbXJzQ2FjaGVQcmVmaXggPSBcIm9tcnNcIjtcbmV4cG9ydCBjb25zdCBvbXJzQ2FjaGVOYW1lID0gYCR7b21yc0NhY2hlUHJlZml4fS1zcGEtY2FjaGUtdjFgO1xuXG5leHBvcnQgY29uc3Qgd2JNYW5pZmVzdCA9IHNlbGYuX19XQl9NQU5JRkVTVDtcbmV4cG9ydCBjb25zdCBpbmRleFVybCA9IHByZWZpeFdpdGhTZXJ2aWNlV29ya2VyTG9jYXRpb25JZlJlbGF0aXZlKFwiaW5kZXguaHRtbFwiKTtcbmV4cG9ydCBjb25zdCBhYnNvbHV0ZVdiTWFuaWZlc3RVcmxzID0gdW5pcShcbiAgd2JNYW5pZmVzdC5tYXAoKHsgdXJsIH0pID0+IHByZWZpeFdpdGhTZXJ2aWNlV29ya2VyTG9jYXRpb25JZlJlbGF0aXZlKHVybCkpXG4pO1xuXG5leHBvcnQgY29uc3QgYnVpbGRNYW5pZmVzdFN1ZmZpeCA9IFwiLmJ1aWxkbWFuaWZlc3QuanNvblwiO1xuXG5mdW5jdGlvbiBwcmVmaXhXaXRoU2VydmljZVdvcmtlckxvY2F0aW9uSWZSZWxhdGl2ZShwYXRoOiBzdHJpbmcpIHtcbiAgcmV0dXJuIG5ldyBVUkwocGF0aCwgc2VsZi5sb2NhdGlvbi5ocmVmKS5ocmVmO1xufVxuIl0sIm5hbWVzIjpbInVuaXEiLCJvbXJzT2ZmbGluZVJlc3BvbnNlQm9keUh0dHBIZWFkZXJOYW1lIiwib21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0h0dHBIZWFkZXJOYW1lIiwib21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3lIdHRwSGVhZGVyTmFtZSIsIm9tcnNDYWNoZVByZWZpeCIsIm9tcnNDYWNoZU5hbWUiLCJ3Yk1hbmlmZXN0Iiwic2VsZiIsIl9fV0JfTUFOSUZFU1QiLCJpbmRleFVybCIsInByZWZpeFdpdGhTZXJ2aWNlV29ya2VyTG9jYXRpb25JZlJlbGF0aXZlIiwiYWJzb2x1dGVXYk1hbmlmZXN0VXJscyIsIm1hcCIsInVybCIsImJ1aWxkTWFuaWZlc3RTdWZmaXgiLCJwYXRoIiwiVVJMIiwibG9jYXRpb24iLCJocmVmIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/service-worker/constants.ts\n");
601
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ absoluteWbManifestUrls: () => (/* binding */ absoluteWbManifestUrls),\n/* harmony export */ buildManifestSuffix: () => (/* binding */ buildManifestSuffix),\n/* harmony export */ indexUrl: () => (/* binding */ indexUrl),\n/* harmony export */ omrsCacheName: () => (/* binding */ omrsCacheName),\n/* harmony export */ omrsCachePrefix: () => (/* binding */ omrsCachePrefix),\n/* harmony export */ omrsOfflineCachingStrategyHttpHeaderName: () => (/* binding */ omrsOfflineCachingStrategyHttpHeaderName),\n/* harmony export */ omrsOfflineResponseBodyHttpHeaderName: () => (/* binding */ omrsOfflineResponseBodyHttpHeaderName),\n/* harmony export */ omrsOfflineResponseStatusHttpHeaderName: () => (/* binding */ omrsOfflineResponseStatusHttpHeaderName),\n/* harmony export */ wbManifest: () => (/* binding */ wbManifest)\n/* harmony export */ });\n/* harmony import */ var lodash_es_uniq__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash-es/uniq */ \"../../../node_modules/lodash-es/uniq.js\");\n\n// note that these constants are also defined in @openmrs/esm-offline\nvar omrsOfflineResponseBodyHttpHeaderName = \"x-omrs-offline-response-body\";\nvar omrsOfflineResponseStatusHttpHeaderName = \"x-omrs-offline-response-status\";\nvar omrsOfflineCachingStrategyHttpHeaderName = \"x-omrs-offline-caching-strategy\";\nvar omrsCachePrefix = \"omrs\";\nvar omrsCacheName = \"\".concat(omrsCachePrefix, \"-spa-cache-v1\");\nvar wbManifest = [{'revision':null,'url':'/openmrs/spa/importmap.json'},{'revision':null,'url':'/openmrs/spa/routes.registry.json'},{'revision':null,'url':'023bd53d342b7463.woff'},{'revision':null,'url':'02acc4469a2fe2e4.woff2'},{'revision':null,'url':'033e03f8663ab9b1.woff'},{'revision':null,'url':'052607e67da262ec.woff'},{'revision':null,'url':'081587ca0db8e63f.woff2'},{'revision':null,'url':'08cf53c4e5e71cf1.woff2'},{'revision':null,'url':'090b2bc014d24ea4.woff2'},{'revision':null,'url':'0a28cd0b47497b71.woff'},{'revision':null,'url':'0a9765a89ff0437d.woff'},{'revision':null,'url':'0ae92bcea615e948.woff2'},{'revision':null,'url':'0be8520d8945b3b7.woff2'},{'revision':null,'url':'0bf6b66a8b86b014.woff'},{'revision':null,'url':'0e7dd073cd8bb0ad.woff2'},{'revision':null,'url':'14869ac5d1830304.woff2'},{'revision':null,'url':'14aaceff85fc8b28.woff2'},{'revision':null,'url':'1590052e1cf8f28d.woff'},{'revision':null,'url':'16f443eed01776ca.woff2'},{'revision':null,'url':'183bae0e53a22182.woff2'},{'revision':null,'url':'19b239a0bb74b27e.woff'},{'revision':null,'url':'19c8f94ccd6289f5.woff2'},{'revision':null,'url':'1ae86565eab7451c.woff2'},{'revision':null,'url':'1c7bf8797e0a9be6.woff2'},{'revision':null,'url':'1d9aff9a93a3bb66.woff'},{'revision':null,'url':'1f266d3619b30f16.woff2'},{'revision':null,'url':'1f8c5a4087a524fd.woff2'},{'revision':null,'url':'20ba2b23c5c0cd0b.woff2'},{'revision':null,'url':'2269d45733c5cf8f.woff'},{'revision':null,'url':'258ecbd235953099.woff'},{'revision':null,'url':'295dd01a1fbfee6d.woff2'},{'revision':null,'url':'2d7f835ab7c7c764.woff'},{'revision':null,'url':'2f66cca99eeead63.woff'},{'revision':null,'url':'2f686985e26e7107.woff2'},{'revision':null,'url':'315eff729e4ccbd9.woff2'},{'revision':null,'url':'32f1e5aadf845e08.woff'},{'revision':null,'url':'338484e1c850669c.woff'},{'revision':null,'url':'33b7a82f1e295190.woff'},{'revision':null,'url':'3674d98ec4a9173d.woff'},{'revision':null,'url':'368d16e3259bf207.woff2'},{'revision':null,'url':'36c49aa341a7079a.woff2'},{'revision':null,'url':'36e1e0430475edee.woff2'},{'revision':null,'url':'3bc19662b8630ee9.woff2'},{'revision':null,'url':'3f645f473b3f8fba.woff2'},{'revision':null,'url':'4095df88acae9e98.woff'},{'revision':null,'url':'4218ac9901b9d36d.woff2'},{'revision':null,'url':'4680ba68412e4da9.woff2'},{'revision':null,'url':'47d7a8698d562a0e.woff'},{'revision':null,'url':'47ec6c9dffe776a0.woff'},{'revision':null,'url':'48e37bd7ebf85a1f.woff2'},{'revision':null,'url':'48edfdf51dfb3160.woff'},{'revision':null,'url':'49af280eabf5f1f5.js'},{'revision':null,'url':'4a35a2746c8ad7a5.woff'},{'revision':null,'url':'4e11b8a7c445255f.woff2'},{'revision':null,'url':'4ea1f5c3baf89fe3.woff'},{'revision':null,'url':'4ea99f41c896bf9d.woff'},{'revision':null,'url':'5005db1d1caf70c7.woff'},{'revision':null,'url':'528a8e7c1c141a31.woff'},{'revision':null,'url':'52ca12f5b516d4ea.woff'},{'revision':null,'url':'537ddd61c5c1fce2.woff2'},{'revision':null,'url':'5432f7541ec25c34.woff'},{'revision':null,'url':'54a95d73a9454ba3.woff'},{'revision':null,'url':'56c4118c0907f151.woff2'},{'revision':null,'url':'5938bc2ae7ec60c0.woff2'},{'revision':null,'url':'594306657c4e44e8.woff'},{'revision':null,'url':'5a538aa477a66067.woff'},{'revision':null,'url':'5c6586155f0d278a.woff2'},{'revision':null,'url':'60ec587649ba812a.woff2'},{'revision':null,'url':'616567cd947eb9dd.woff'},{'revision':null,'url':'65168b59f44caab4.woff'},{'revision':null,'url':'65c0982f98374864.woff'},{'revision':null,'url':'65e6511e035870e1.woff2'},{'revision':null,'url':'661425f6798cd16a.woff2'},{'revision':null,'url':'66b864fe213caf46.woff2'},{'revision':null,'url':'6775fee945132ef9.woff'},{'revision':null,'url':'68bbd362c8e4983b.woff'},{'revision':null,'url':'68d6deec87b6b604.woff'},{'revision':null,'url':'69a7e6d31d390296.woff'},{'revision':null,'url':'69d087d970ee9455.woff2'},{'revision':null,'url':'69fa3fc7363bbc04.woff'},{'revision':null,'url':'6a1f0178b45b2e9e.woff'},{'revision':null,'url':'6c6c45e66ff54281.woff2'},{'revision':null,'url':'6ffb9ed97b21fdc0.woff'},{'revision':null,'url':'7073a7323e92bd11.woff2'},{'revision':null,'url':'718c6cc31274ab1a.woff2'},{'revision':null,'url':'72cdbedfe04be9f9.woff2'},{'revision':null,'url':'7509c9f56fe9e532.woff2'},{'revision':null,'url':'75dc5c5b04adc8bf.woff2'},{'revision':null,'url':'76a7c256fc8b3490.woff'},{'revision':null,'url':'77b48bc05299ecca.woff2'},{'revision':null,'url':'787f56efa306ddbc.woff'},{'revision':null,'url':'7a0a0215c248c73d.woff2'},{'revision':null,'url':'7c4463d9c84f263a.woff'},{'revision':null,'url':'7d112a556b7670d2.woff'},{'revision':null,'url':'7d52d6014b5f2bbc.woff'},{'revision':null,'url':'7f00bebb24e40167.woff2'},{'revision':null,'url':'7f2c6ea3e740417e.woff'},{'revision':null,'url':'802c6176541eeed7.woff2'},{'revision':null,'url':'8080081b3379c637.woff2'},{'revision':null,'url':'8274cc1afc7619f1.woff'},{'revision':null,'url':'8605507b7a8487c4.woff2'},{'revision':null,'url':'8a83d654702f6534.woff2'},{'revision':null,'url':'8ccee65f6cf254ee.woff'},{'revision':null,'url':'8d82a082a4aba439.woff'},{'revision':null,'url':'8de04ae985937b56.woff'},{'revision':null,'url':'8fe71173a13fe571.woff2'},{'revision':null,'url':'90edccb224a51cee.woff'},{'revision':null,'url':'94b292fe87831a8b.woff'},{'revision':null,'url':'95dc66c1b88745f8.woff'},{'revision':null,'url':'95fb698be77c85ef.woff'},{'revision':null,'url':'9624cec0f9bdd81e.woff2'},{'revision':null,'url':'9662331fa31e3f20.woff'},{'revision':null,'url':'98a3af55a1698171.woff2'},{'revision':null,'url':'9b51c0739002f900.js'},{'revision':null,'url':'9ba85996af74c5ce.woff2'},{'revision':null,'url':'9bc133b1df25cb74.woff'},{'revision':null,'url':'9ddb22faa35006e7.woff2'},{'revision':null,'url':'9e97352380611b95.woff'},{'revision':null,'url':'a167fb2799dd741b.woff2'},{'revision':null,'url':'a2045a5cc4fdf94f.woff2'},{'revision':null,'url':'a246c73905a31c93.woff2'},{'revision':null,'url':'a401aa7939cb6e6f.woff2'},{'revision':null,'url':'a41a71258c38684d.woff'},{'revision':null,'url':'a60d94a72d615a8e.woff'},{'revision':null,'url':'a66764dd0c1fa213.woff'},{'revision':null,'url':'a6ed036f17a1ea29.woff2'},{'revision':null,'url':'a8f635129d660202.woff'},{'revision':null,'url':'a9f25ca430709a1a.woff2'},{'revision':null,'url':'ae14d98ad8a1212c.woff'},{'revision':null,'url':'aeec4f78084adf7f.woff'},{'revision':null,'url':'af11e94b0644eba5.woff'},{'revision':null,'url':'afa9121a49e95351.woff2'},{'revision':null,'url':'afcda12d9f805543.woff2'},{'revision':null,'url':'b09ded85a7da77f1.woff2'},{'revision':null,'url':'b2f4e9d1e821b71c.woff2'},{'revision':null,'url':'b30b06698dc369b2.woff'},{'revision':null,'url':'b4a074bf828bb757.woff2'},{'revision':null,'url':'b7f447da43f6e596.woff2'},{'revision':null,'url':'b7f633b871b84820.woff'},{'revision':null,'url':'bcca84a524572d10.woff2'},{'revision':null,'url':'be4d1f97b11d087c.woff2'},{'revision':null,'url':'be91def2232f6776.woff'},{'revision':null,'url':'bec14780d81164de.woff2'},{'revision':null,'url':'c074b9133e91fad3.js'},{'revision':null,'url':'c285f4b15d11f172.woff'},{'revision':null,'url':'c4673617b80801f3.woff'},{'revision':null,'url':'c553f7e0199c5084.woff2'},{'revision':null,'url':'c8470ed2c145ace7.woff'},{'revision':null,'url':'c9d9ce9f465df4fe.woff2'},{'revision':null,'url':'ccb2870475da9fe8.woff'},{'revision':null,'url':'d04134fa33c2606d.woff'},{'revision':null,'url':'d11f9c5cd7d9ea16.woff'},{'revision':null,'url':'d188f7f036ac5779.woff2'},{'revision':null,'url':'d265d81c58525ae4.woff2'},{'revision':null,'url':'d5942cd81663e136.woff2'},{'revision':null,'url':'d6097a5c452acf6d.woff'},{'revision':null,'url':'d66b8ff73d95cabb.woff2'},{'revision':null,'url':'d77f5bf95de8edaa.woff'},{'revision':null,'url':'d8829a685af4f372.woff'},{'revision':null,'url':'d88899ef0fd16719.woff2'},{'revision':null,'url':'d9a5d958e69e058d.woff2'},{'revision':null,'url':'da65d9a514c628c8.woff'},{'revision':null,'url':'dac90d495be353a0.woff2'},{'revision':null,'url':'dd7071bc6306585c.woff'},{'revision':null,'url':'dd8ce598529c3fab.woff2'},{'revision':null,'url':'ddef6f2dd566c2b9.woff'},{'revision':null,'url':'de013f1be25103fa.woff2'},{'revision':null,'url':'dee2ff599db31e5b.woff'},{'revision':null,'url':'dee7c6b5dd954d9b.woff'},{'revision':null,'url':'df222fceeffca849.woff2'},{'revision':null,'url':'e0d2e5b12f028b5d.woff'},{'revision':null,'url':'e33e3db8e4f7559f.woff'},{'revision':null,'url':'e62b00b9199c1ac9.woff2'},{'revision':null,'url':'e696cef1407b2610.woff2'},{'revision':null,'url':'e89ca83b24959664.woff'},{'revision':null,'url':'eb8c0ae77ad55249.woff'},{'revision':null,'url':'ed0997bd7d221b8e.woff'},{'revision':null,'url':'eed48feba743e21c.woff2'},{'revision':'37aed2785e3d8110bad17a7aae9df8eb','url':'esm-devtools-app/68.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-devtools-app/68.js.LICENSE.txt'},{'revision':'7410b575eb3fa8e446652504f8491811','url':'esm-devtools-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-devtools-app/735.js.LICENSE.txt'},{'revision':'4c838a1c76f77c8268911d73ab42f021','url':'esm-devtools-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-devtools-app/889.js.LICENSE.txt'},{'revision':'7f8c147965b4046a9437e4bc21ac9d74','url':'esm-devtools-app/988.js'},{'revision':'f55a7064083c221e20cdb326019238ec','url':'esm-devtools-app/main.js'},{'revision':'949e3623e35ff8d9b1d4ed294da67043','url':'esm-devtools-app/openmrs-esm-devtools-app.js'},{'revision':'a8a21e161e7b0f8ab2c140c81b5248a1','url':'esm-devtools-app/openmrs-esm-devtools-app.js.buildmanifest.json'},{'revision':'d9d57fc850bf222f3905a7f6c8101cac','url':'esm-devtools-app/routes.json'},{'revision':'33f9414270238ac18865a728f2060a83','url':'esm-implementer-tools-app/319.js'},{'revision':'1bc1f5f2a54d7bfc64341b3b5294ef5a','url':'esm-implementer-tools-app/329.js'},{'revision':'61baa3a5fc2eebeed7b52ce72e4992aa','url':'esm-implementer-tools-app/329.js.LICENSE.txt'},{'revision':'833c2175dfde1819917db8693b9d2108','url':'esm-implementer-tools-app/426.js'},{'revision':'1ddc673a91ca0a2702a98ef174c88a1b','url':'esm-implementer-tools-app/460.js'},{'revision':'4c902c2e4c29dbcb7565a6e5aebf2bea','url':'esm-implementer-tools-app/56.js'},{'revision':'51d49d7b7d7b36643947cd60717398f3','url':'esm-implementer-tools-app/560.js'},{'revision':'a4557c274e175127a937057305c8cd29','url':'esm-implementer-tools-app/574.js'},{'revision':'32ebbed892916d908287461d14000d75','url':'esm-implementer-tools-app/587.js'},{'revision':'50fd1e31f96c606d61590f2f75470aae','url':'esm-implementer-tools-app/620.js'},{'revision':'9686ec404915a5cd3724eb5256a48d74','url':'esm-implementer-tools-app/620.js.LICENSE.txt'},{'revision':'f587ed1b9cfd8f7c82677e31da7bc9af','url':'esm-implementer-tools-app/625.js'},{'revision':'d6e7bfaf645d6cc3975479ded60c7af3','url':'esm-implementer-tools-app/651.js'},{'revision':'2a1f69189e36d60685b9353665f6f9fe','url':'esm-implementer-tools-app/727.js'},{'revision':'f33d282215d78dfa9d41bfcd6cb75fc0','url':'esm-implementer-tools-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-implementer-tools-app/735.js.LICENSE.txt'},{'revision':'6d5c51d2501044c2b80cec83f36c38b0','url':'esm-implementer-tools-app/738.js'},{'revision':'be0b9393f5013ab64cc7250195c50770','url':'esm-implementer-tools-app/757.js'},{'revision':'de08264be2fd06897a2d430ffa9db77b','url':'esm-implementer-tools-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-implementer-tools-app/788.js.LICENSE.txt'},{'revision':'01434d4747a0bdad094ee76aa20ac1a1','url':'esm-implementer-tools-app/79.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-implementer-tools-app/79.js.LICENSE.txt'},{'revision':'4470624e760ec180b9596be3deaaad83','url':'esm-implementer-tools-app/807.js'},{'revision':'6130bdb5838c60e16ffa602c13ebfbd9','url':'esm-implementer-tools-app/833.js'},{'revision':'bbd8fb454e9b62c20b178ccc9df2bcd2','url':'esm-implementer-tools-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-implementer-tools-app/889.js.LICENSE.txt'},{'revision':'77f83a34a356698674ca7370f50cb693','url':'esm-implementer-tools-app/main.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-implementer-tools-app/main.js.LICENSE.txt'},{'revision':'7c01f46a0300826d41cc4859559a26c7','url':'esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js'},{'revision':'8aa4818d487d3fa3db18e998edfd4dbe','url':'esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js.buildmanifest.json'},{'revision':'6af5079b4f0285555bd98f716634eb94','url':'esm-implementer-tools-app/routes.json'},{'revision':'a36645f1b757149df1d5e2c825c765ca','url':'esm-login-app/111.js'},{'revision':'3078176cbf1eae99ed56ea4c2b063461','url':'esm-login-app/126.js'},{'revision':'61baa3a5fc2eebeed7b52ce72e4992aa','url':'esm-login-app/126.js.LICENSE.txt'},{'revision':'30f7968e0cd251468adcf7058564cf5b','url':'esm-login-app/173.js'},{'revision':'1d2f7efafd96286576306390585e25fa','url':'esm-login-app/224.js'},{'revision':'baa19e2c9bd1171e9431ec3b7298ce0c','url':'esm-login-app/236.js'},{'revision':'c0da7df4e2c938a83718d75afd356eee','url':'esm-login-app/240.js'},{'revision':'24434c1a6f00484c2248315a706dfcad','url':'esm-login-app/272.js'},{'revision':'044f26c447c11bdca2aa4d32ec02ff42','url':'esm-login-app/319.js'},{'revision':'26235d83933f96f01678652264b20b0a','url':'esm-login-app/336.js'},{'revision':'54c07dc69a7c716330e13eddaf07f987','url':'esm-login-app/370.js'},{'revision':'11343d2554fc61eb09eb75c60d91beae','url':'esm-login-app/460.js'},{'revision':'a32c34f8ca6dc0a5ca649b9985301eee','url':'esm-login-app/539.js'},{'revision':'8d77ca90d05bdbf69d133192053fe5b0','url':'esm-login-app/56.js'},{'revision':'3509d7f96dbba07a77443c0ec7c45116','url':'esm-login-app/574.js'},{'revision':'d81d865085999f334bbe163dc1ac70e2','url':'esm-login-app/625.js'},{'revision':'b8f731f7adc306974a1ac296195e533f','url':'esm-login-app/627.js'},{'revision':'2873614f71f534aee953ee6e5e4eeb25','url':'esm-login-app/63.js'},{'revision':'41d15f6ba9fe36eb6cd3043bad6c4548','url':'esm-login-app/63.js.LICENSE.txt'},{'revision':'01cd6ae9d4e499f38fd69633c4147531','url':'esm-login-app/644.js'},{'revision':'894dc9453600eaa9e035ae04aeaeb8e3','url':'esm-login-app/673.js'},{'revision':'aad508425a0e29ea8dcb91a5145d04ed','url':'esm-login-app/729.js'},{'revision':'51e446e0d4695c24e2f5ed5939f9fefc','url':'esm-login-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-login-app/735.js.LICENSE.txt'},{'revision':'20562191e3019d2cc0b76fbf83e291e7','url':'esm-login-app/757.js'},{'revision':'fafb30da7459470b01965f0c4ca3bedf','url':'esm-login-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-login-app/788.js.LICENSE.txt'},{'revision':'62e56fab73233e28294d91040835c2fc','url':'esm-login-app/807.js'},{'revision':'1069498616dc132d7f1b2c952a0e7db8','url':'esm-login-app/812.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-login-app/812.js.LICENSE.txt'},{'revision':'96d6c1dd96f902c996452acf8836fd5d','url':'esm-login-app/833.js'},{'revision':'d47e9fea23e0e22b9b41dd85b459cc65','url':'esm-login-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-login-app/889.js.LICENSE.txt'},{'revision':'a1aa71d529436b6386598aee67bc04d0','url':'esm-login-app/main.js'},{'revision':'27504acc7c5879b89bbe130a4a612c75','url':'esm-login-app/main.js.LICENSE.txt'},{'revision':'189958312aae0a79a4a08e6b71698421','url':'esm-login-app/openmrs-esm-login-app.js'},{'revision':'c5fc0317c15b9783ec7f321583fc7551','url':'esm-login-app/openmrs-esm-login-app.js.buildmanifest.json'},{'revision':'c67fb25d99a7ace43c451dda4503668b','url':'esm-login-app/routes.json'},{'revision':'d2e39f9d9f83feba57302947af016cdb','url':'esm-offline-tools-app/102.js'},{'revision':'cbc9366c0e23bc6694d6e83197d6af9b','url':'esm-offline-tools-app/1584c81d564cacde.svg'},{'revision':'9681eaba28e1e5a1124dcfd58ff383e6','url':'esm-offline-tools-app/193.js'},{'revision':'ba90e34929b35374a1efaf01752c2d08','url':'esm-offline-tools-app/193.js.LICENSE.txt'},{'revision':'fefc156993fb19a5da87c44abb646349','url':'esm-offline-tools-app/319.js'},{'revision':'e6ab13bd6a819e49674891c269531869','url':'esm-offline-tools-app/460.js'},{'revision':'9ec2f20455995bb2fe7f8bbc5e1e5f53','url':'esm-offline-tools-app/56.js'},{'revision':'608d54816bf5749c14cbf260dda593ba','url':'esm-offline-tools-app/574.js'},{'revision':'a6795f80404dfc5757711e1e8b196f8e','url':'esm-offline-tools-app/625.js'},{'revision':'1bee5698fd922636fe522923abefc702','url':'esm-offline-tools-app/63.js'},{'revision':'41d15f6ba9fe36eb6cd3043bad6c4548','url':'esm-offline-tools-app/63.js.LICENSE.txt'},{'revision':'0936b4e9ad2bd56dbf4d971175b822ac','url':'esm-offline-tools-app/729.js'},{'revision':'7529ec963ec6b4740837986094b97702','url':'esm-offline-tools-app/735.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-offline-tools-app/735.js.LICENSE.txt'},{'revision':'dc0d461f408c6235010017e0c5b56fc1','url':'esm-offline-tools-app/757.js'},{'revision':'330dcd098efa59843322e6b523e16135','url':'esm-offline-tools-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-offline-tools-app/788.js.LICENSE.txt'},{'revision':'f4181b4de9afbe6c33595b00dbb2a36c','url':'esm-offline-tools-app/807.js'},{'revision':'d838fe145159f629a451979b7e666700','url':'esm-offline-tools-app/833.js'},{'revision':'e68cda65f531a65db9ead0f2c996ca3a','url':'esm-offline-tools-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-offline-tools-app/889.js.LICENSE.txt'},{'revision':'aa1385e31c6632e2411ec79e068cac49','url':'esm-offline-tools-app/main.js'},{'revision':'ba90e34929b35374a1efaf01752c2d08','url':'esm-offline-tools-app/main.js.LICENSE.txt'},{'revision':'b88bdfabed05b88738b8b7c376bea9f1','url':'esm-offline-tools-app/openmrs-esm-offline-tools-app.js'},{'revision':'fe772fcdbedce61012d4d87b009e8d31','url':'esm-offline-tools-app/openmrs-esm-offline-tools-app.js.buildmanifest.json'},{'revision':'8789d140a68338f040672551b296c8d9','url':'esm-offline-tools-app/routes.json'},{'revision':'748f994ac510b6f443c99a44dfeedc00','url':'esm-primary-navigation-app/262.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-primary-navigation-app/262.js.LICENSE.txt'},{'revision':'baf92aca37b44660ed1e9ac6b5f83efe','url':'esm-primary-navigation-app/319.js'},{'revision':'660431f68b96d3068c564711ee5484c7','url':'esm-primary-navigation-app/460.js'},{'revision':'644f9a3a959b1e6e9d3dbc2a7ea1988d','url':'esm-primary-navigation-app/574.js'},{'revision':'c870e5f965c4bdc33edc1a484ae7be33','url':'esm-primary-navigation-app/625.js'},{'revision':'96199e9aa9c8776d84bfda5131fc1509','url':'esm-primary-navigation-app/63.js'},{'revision':'41d15f6ba9fe36eb6cd3043bad6c4548','url':'esm-primary-navigation-app/63.js.LICENSE.txt'},{'revision':'318998f0f6c86fc39e2ba97a50333ca4','url':'esm-primary-navigation-app/729.js'},{'revision':'dae2284727c958c1ecc00eb2c5fa34b8','url':'esm-primary-navigation-app/735.js'},{'revision':'d880b3c2e37c8185d12b2854d16776d0','url':'esm-primary-navigation-app/757.js'},{'revision':'af334a681ef89584cce5bd7f5203d436','url':'esm-primary-navigation-app/788.js'},{'revision':'6973c4dc40d031fe098d652147281cf0','url':'esm-primary-navigation-app/788.js.LICENSE.txt'},{'revision':'aadcd17179b34b9b03394d3b8a543eae','url':'esm-primary-navigation-app/807.js'},{'revision':'35323526ae5ce31104551d701bac8b6c','url':'esm-primary-navigation-app/833.js'},{'revision':'5f293a75d8258352eefa24a4f203377b','url':'esm-primary-navigation-app/889.js'},{'revision':'f5e20cbfa3f4a704d14167ef3749a9ce','url':'esm-primary-navigation-app/889.js.LICENSE.txt'},{'revision':'808b50a1bd24dd86ee5b378d9ee11c6a','url':'esm-primary-navigation-app/960.js'},{'revision':'7167f42af12ff076e153f9028d4aa6bf','url':'esm-primary-navigation-app/960.js.LICENSE.txt'},{'revision':'ee98c5cff61d336b1a2713bed38918a8','url':'esm-primary-navigation-app/main.js'},{'revision':'f7b599e3f88bf94d2af5d3f60873a311','url':'esm-primary-navigation-app/main.js.LICENSE.txt'},{'revision':'87dc0a0fc29fd0916dd5e082cd660272','url':'esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js'},{'revision':'85c10a0d4398b2866a97965aa13ff77f','url':'esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js.buildmanifest.json'},{'revision':'3888676a2ba08551e30dfa79e73efc2e','url':'esm-primary-navigation-app/routes.json'},{'revision':null,'url':'f280bda8a6e535a6.woff'},{'revision':null,'url':'f543c88feb236d11.woff2'},{'revision':null,'url':'f591b0079faa93fe.woff2'},{'revision':null,'url':'f6ed27923769ad1d.woff2'},{'revision':null,'url':'f8803bebe640d99a.woff'},{'revision':'30de494bd9e73ae96c18fd0c06fa422b','url':'favicon.ico'},{'revision':null,'url':'fbebeb4336e67012.woff2'},{'revision':null,'url':'fd522cd7a5c646fe.woff'},{'revision':'a0b1abb770bc7f71d8d5491a9e5a4c3d','url':'index.html'},{'revision':'6b758b31ea00150986994edcfb033a94','url':'logo-512.png'},{'revision':'b860db243392596e3b875bad9794b4e5','url':'logo.svg'},{'revision':'7952c0777a89d815465a4c39377d1705','url':'openmrs.js'}];\nvar indexUrl = prefixWithServiceWorkerLocationIfRelative(\"index.html\");\nvar absoluteWbManifestUrls = (0,lodash_es_uniq__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(wbManifest.map(function(param) {\n var url = param.url;\n return prefixWithServiceWorkerLocationIfRelative(url);\n}));\nvar buildManifestSuffix = \".buildmanifest.json\";\nfunction prefixWithServiceWorkerLocationIfRelative(path) {\n return new URL(path, self.location.href).href;\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvY29uc3RhbnRzLnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBa0M7QUFFbEMscUVBQXFFO0FBQzlELElBQU1DLHdDQUF3QywrQkFBK0I7QUFDN0UsSUFBTUMsMENBQTBDLGlDQUFpQztBQUNqRixJQUFNQywyQ0FBMkMsa0NBQWtDO0FBRW5GLElBQU1DLGtCQUFrQixPQUFPO0FBQy9CLElBQU1DLGdCQUFnQixHQUFtQixPQUFoQkQsaUJBQWdCLGlCQUFlO0FBRXhELElBQU1FLGFBQWFDLEtBQUtDLGFBQWEsQ0FBQztBQUN0QyxJQUFNQyxXQUFXQywwQ0FBMEMsY0FBYztBQUN6RSxJQUFNQyx5QkFBeUJYLDBEQUFJQSxDQUFDTSxXQUFXTSxHQUFHLENBQUM7UUFBR0MsWUFBQUE7V0FBVUgsMENBQTBDRztJQUFPO0FBRWpILElBQU1DLHNCQUFzQixzQkFBc0I7QUFFekQsU0FBU0osMENBQTBDSyxJQUFZLEVBQUU7SUFDL0QsT0FBTyxJQUFJQyxJQUFJRCxNQUFNUixLQUFLVSxRQUFRLENBQUNDLElBQUksRUFBRUEsSUFBSTtBQUMvQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvY29uc3RhbnRzLnRzP2U4MTEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHVuaXEgZnJvbSAnbG9kYXNoLWVzL3VuaXEnO1xuXG4vLyBub3RlIHRoYXQgdGhlc2UgY29uc3RhbnRzIGFyZSBhbHNvIGRlZmluZWQgaW4gQG9wZW5tcnMvZXNtLW9mZmxpbmVcbmV4cG9ydCBjb25zdCBvbXJzT2ZmbGluZVJlc3BvbnNlQm9keUh0dHBIZWFkZXJOYW1lID0gJ3gtb21ycy1vZmZsaW5lLXJlc3BvbnNlLWJvZHknO1xuZXhwb3J0IGNvbnN0IG9tcnNPZmZsaW5lUmVzcG9uc2VTdGF0dXNIdHRwSGVhZGVyTmFtZSA9ICd4LW9tcnMtb2ZmbGluZS1yZXNwb25zZS1zdGF0dXMnO1xuZXhwb3J0IGNvbnN0IG9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5SHR0cEhlYWRlck5hbWUgPSAneC1vbXJzLW9mZmxpbmUtY2FjaGluZy1zdHJhdGVneSc7XG5cbmV4cG9ydCBjb25zdCBvbXJzQ2FjaGVQcmVmaXggPSAnb21ycyc7XG5leHBvcnQgY29uc3Qgb21yc0NhY2hlTmFtZSA9IGAke29tcnNDYWNoZVByZWZpeH0tc3BhLWNhY2hlLXYxYDtcblxuZXhwb3J0IGNvbnN0IHdiTWFuaWZlc3QgPSBzZWxmLl9fV0JfTUFOSUZFU1Q7XG5leHBvcnQgY29uc3QgaW5kZXhVcmwgPSBwcmVmaXhXaXRoU2VydmljZVdvcmtlckxvY2F0aW9uSWZSZWxhdGl2ZSgnaW5kZXguaHRtbCcpO1xuZXhwb3J0IGNvbnN0IGFic29sdXRlV2JNYW5pZmVzdFVybHMgPSB1bmlxKHdiTWFuaWZlc3QubWFwKCh7IHVybCB9KSA9PiBwcmVmaXhXaXRoU2VydmljZVdvcmtlckxvY2F0aW9uSWZSZWxhdGl2ZSh1cmwpKSk7XG5cbmV4cG9ydCBjb25zdCBidWlsZE1hbmlmZXN0U3VmZml4ID0gJy5idWlsZG1hbmlmZXN0Lmpzb24nO1xuXG5mdW5jdGlvbiBwcmVmaXhXaXRoU2VydmljZVdvcmtlckxvY2F0aW9uSWZSZWxhdGl2ZShwYXRoOiBzdHJpbmcpIHtcbiAgcmV0dXJuIG5ldyBVUkwocGF0aCwgc2VsZi5sb2NhdGlvbi5ocmVmKS5ocmVmO1xufVxuIl0sIm5hbWVzIjpbInVuaXEiLCJvbXJzT2ZmbGluZVJlc3BvbnNlQm9keUh0dHBIZWFkZXJOYW1lIiwib21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0h0dHBIZWFkZXJOYW1lIiwib21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3lIdHRwSGVhZGVyTmFtZSIsIm9tcnNDYWNoZVByZWZpeCIsIm9tcnNDYWNoZU5hbWUiLCJ3Yk1hbmlmZXN0Iiwic2VsZiIsIl9fV0JfTUFOSUZFU1QiLCJpbmRleFVybCIsInByZWZpeFdpdGhTZXJ2aWNlV29ya2VyTG9jYXRpb25JZlJlbGF0aXZlIiwiYWJzb2x1dGVXYk1hbmlmZXN0VXJscyIsIm1hcCIsInVybCIsImJ1aWxkTWFuaWZlc3RTdWZmaXgiLCJwYXRoIiwiVVJMIiwibG9jYXRpb24iLCJocmVmIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/service-worker/constants.ts\n");
602
602
 
603
603
  /***/ }),
604
604
 
@@ -609,7 +609,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
609
609
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
610
610
 
611
611
  "use strict";
612
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getOmrsHeader: () => (/* binding */ getOmrsHeader),\n/* harmony export */ headersToObject: () => (/* binding */ headersToObject),\n/* harmony export */ parseOmrsOfflineResponseBodyHeader: () => (/* binding */ parseOmrsOfflineResponseBodyHeader),\n/* harmony export */ parseOmrsOfflineResponseStatusHeader: () => (/* binding */ parseOmrsOfflineResponseStatusHeader)\n/* harmony export */ });\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n\nfunction parseOmrsOfflineResponseBodyHeader(headers) {\n var _getOmrsHeader;\n // The ?? undefined here is important as getOmrsHeader returns null by default when the header\n // is missing. undefined is different than null in this case since we want the body to be missing\n // if the header is not there (null is not missing).\n return (_getOmrsHeader = getOmrsHeader(headers, _constants__WEBPACK_IMPORTED_MODULE_0__.omrsOfflineResponseBodyHttpHeaderName)) !== null && _getOmrsHeader !== void 0 ? _getOmrsHeader : undefined;\n}\nfunction parseOmrsOfflineResponseStatusHeader(headers) {\n var _getOmrsHeader;\n var status = +((_getOmrsHeader = getOmrsHeader(headers, _constants__WEBPACK_IMPORTED_MODULE_0__.omrsOfflineResponseStatusHttpHeaderName)) !== null && _getOmrsHeader !== void 0 ? _getOmrsHeader : \"\");\n // The Response API requires the status to be in the 200-599 range and throws otherwise.\n return isNaN(status) || status < 200 || status > 599 ? 503 : status;\n}\nfunction getOmrsHeader(headers, name) {\n return headers.get(name);\n}\nfunction headersToObject(headers) {\n var result = {};\n headers.forEach(function(value, key) {\n return result[key] = value;\n });\n return result;\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvaHR0cC1oZWFkZXItdXRpbHMudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFPcUI7QUFFZCxTQUFTRSxtQ0FBbUNDLE9BQWdCLEVBQUU7UUFLakVDO0lBSkYsOEZBQThGO0lBQzlGLGlHQUFpRztJQUNqRyxvREFBb0Q7SUFDcEQsT0FDRUEsQ0FBQUEsaUJBQUFBLGNBQWNELFNBQVNILDZFQUFxQ0EsZUFBNURJLDRCQUFBQSxpQkFBaUVDLFNBQVM7QUFFOUUsQ0FBQztBQUVNLFNBQVNDLHFDQUFxQ0gsT0FBZ0IsRUFBRTtRQUVuRUM7SUFERixJQUFNRyxTQUFTLENBQ2JILENBQUFBLENBQUFBLGlCQUFBQSxjQUFjRCxTQUFTRiwrRUFBdUNBLGVBQTlERyw0QkFBQUEsaUJBQW1FLEVBQUU7SUFHdkUsd0ZBQXdGO0lBQ3hGLE9BQU9JLE1BQU1ELFdBQVdBLFNBQVMsT0FBT0EsU0FBUyxNQUFNLE1BQU1BLE1BQU07QUFDckUsQ0FBQztBQUVNLFNBQVNILGNBQ2RELE9BQWdCLEVBQ2hCTSxJQUFPLEVBQzJCO0lBQ2xDLE9BQU9OLFFBQVFPLEdBQUcsQ0FBQ0Q7QUFDckIsQ0FBQztBQUVNLFNBQVNFLGdCQUFnQlIsT0FBZ0IsRUFBRTtJQUNoRCxJQUFNUyxTQUFTLENBQUM7SUFDaEJULFFBQVFVLE9BQU8sQ0FBQyxTQUFDQyxPQUFPQztlQUFTSCxNQUFNLENBQUNHLElBQUksR0FBR0Q7O0lBQy9DLE9BQU9GO0FBQ1QsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvaHR0cC1oZWFkZXItdXRpbHMudHM/NWJjZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIE9tcnNPZmZsaW5lSHR0cEhlYWRlck5hbWVzLFxuICBPbXJzT2ZmbGluZUh0dHBIZWFkZXJzLFxufSBmcm9tIFwiQG9wZW5tcnMvZXNtLW9mZmxpbmVcIjtcbmltcG9ydCB7XG4gIG9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SHR0cEhlYWRlck5hbWUsXG4gIG9tcnNPZmZsaW5lUmVzcG9uc2VTdGF0dXNIdHRwSGVhZGVyTmFtZSxcbn0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZU9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SGVhZGVyKGhlYWRlcnM6IEhlYWRlcnMpIHtcbiAgLy8gVGhlID8/IHVuZGVmaW5lZCBoZXJlIGlzIGltcG9ydGFudCBhcyBnZXRPbXJzSGVhZGVyIHJldHVybnMgbnVsbCBieSBkZWZhdWx0IHdoZW4gdGhlIGhlYWRlclxuICAvLyBpcyBtaXNzaW5nLiB1bmRlZmluZWQgaXMgZGlmZmVyZW50IHRoYW4gbnVsbCBpbiB0aGlzIGNhc2Ugc2luY2Ugd2Ugd2FudCB0aGUgYm9keSB0byBiZSBtaXNzaW5nXG4gIC8vIGlmIHRoZSBoZWFkZXIgaXMgbm90IHRoZXJlIChudWxsIGlzIG5vdCBtaXNzaW5nKS5cbiAgcmV0dXJuIChcbiAgICBnZXRPbXJzSGVhZGVyKGhlYWRlcnMsIG9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SHR0cEhlYWRlck5hbWUpID8/IHVuZGVmaW5lZFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSGVhZGVyKGhlYWRlcnM6IEhlYWRlcnMpIHtcbiAgY29uc3Qgc3RhdHVzID0gKyhcbiAgICBnZXRPbXJzSGVhZGVyKGhlYWRlcnMsIG9tcnNPZmZsaW5lUmVzcG9uc2VTdGF0dXNIdHRwSGVhZGVyTmFtZSkgPz8gXCJcIlxuICApO1xuXG4gIC8vIFRoZSBSZXNwb25zZSBBUEkgcmVxdWlyZXMgdGhlIHN0YXR1cyB0byBiZSBpbiB0aGUgMjAwLTU5OSByYW5nZSBhbmQgdGhyb3dzIG90aGVyd2lzZS5cbiAgcmV0dXJuIGlzTmFOKHN0YXR1cykgfHwgc3RhdHVzIDwgMjAwIHx8IHN0YXR1cyA+IDU5OSA/IDUwMyA6IHN0YXR1cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9tcnNIZWFkZXI8VCBleHRlbmRzIE9tcnNPZmZsaW5lSHR0cEhlYWRlck5hbWVzPihcbiAgaGVhZGVyczogSGVhZGVycyxcbiAgbmFtZTogVFxuKTogT21yc09mZmxpbmVIdHRwSGVhZGVyc1tUXSB8IG51bGwge1xuICByZXR1cm4gaGVhZGVycy5nZXQobmFtZSkgYXMgT21yc09mZmxpbmVIdHRwSGVhZGVyc1tUXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhlYWRlcnNUb09iamVjdChoZWFkZXJzOiBIZWFkZXJzKSB7XG4gIGNvbnN0IHJlc3VsdCA9IHt9O1xuICBoZWFkZXJzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IChyZXN1bHRba2V5XSA9IHZhbHVlKSk7XG4gIHJldHVybiByZXN1bHQ7XG59XG4iXSwibmFtZXMiOlsib21yc09mZmxpbmVSZXNwb25zZUJvZHlIdHRwSGVhZGVyTmFtZSIsIm9tcnNPZmZsaW5lUmVzcG9uc2VTdGF0dXNIdHRwSGVhZGVyTmFtZSIsInBhcnNlT21yc09mZmxpbmVSZXNwb25zZUJvZHlIZWFkZXIiLCJoZWFkZXJzIiwiZ2V0T21yc0hlYWRlciIsInVuZGVmaW5lZCIsInBhcnNlT21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0hlYWRlciIsInN0YXR1cyIsImlzTmFOIiwibmFtZSIsImdldCIsImhlYWRlcnNUb09iamVjdCIsInJlc3VsdCIsImZvckVhY2giLCJ2YWx1ZSIsImtleSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/service-worker/http-header-utils.ts\n");
612
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getOmrsHeader: () => (/* binding */ getOmrsHeader),\n/* harmony export */ headersToObject: () => (/* binding */ headersToObject),\n/* harmony export */ parseOmrsOfflineResponseBodyHeader: () => (/* binding */ parseOmrsOfflineResponseBodyHeader),\n/* harmony export */ parseOmrsOfflineResponseStatusHeader: () => (/* binding */ parseOmrsOfflineResponseStatusHeader)\n/* harmony export */ });\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n\nfunction parseOmrsOfflineResponseBodyHeader(headers) {\n var _getOmrsHeader;\n // The ?? undefined here is important as getOmrsHeader returns null by default when the header\n // is missing. undefined is different than null in this case since we want the body to be missing\n // if the header is not there (null is not missing).\n return (_getOmrsHeader = getOmrsHeader(headers, _constants__WEBPACK_IMPORTED_MODULE_0__.omrsOfflineResponseBodyHttpHeaderName)) !== null && _getOmrsHeader !== void 0 ? _getOmrsHeader : undefined;\n}\nfunction parseOmrsOfflineResponseStatusHeader(headers) {\n var _getOmrsHeader;\n var status = +((_getOmrsHeader = getOmrsHeader(headers, _constants__WEBPACK_IMPORTED_MODULE_0__.omrsOfflineResponseStatusHttpHeaderName)) !== null && _getOmrsHeader !== void 0 ? _getOmrsHeader : \"\");\n // The Response API requires the status to be in the 200-599 range and throws otherwise.\n return isNaN(status) || status < 200 || status > 599 ? 503 : status;\n}\nfunction getOmrsHeader(headers, name) {\n return headers.get(name);\n}\nfunction headersToObject(headers) {\n var result = {};\n headers.forEach(function(value, key) {\n return result[key] = value;\n });\n return result;\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvaHR0cC1oZWFkZXItdXRpbHMudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFDNkc7QUFFdEcsU0FBU0UsbUNBQW1DQyxPQUFnQixFQUFFO1FBSTVEQztJQUhQLDhGQUE4RjtJQUM5RixpR0FBaUc7SUFDakcsb0RBQW9EO0lBQ3BELE9BQU9BLENBQUFBLGlCQUFBQSxjQUFjRCxTQUFTSCw2RUFBcUNBLGVBQTVESSw0QkFBQUEsaUJBQWlFQyxTQUFTO0FBQ25GLENBQUM7QUFFTSxTQUFTQyxxQ0FBcUNILE9BQWdCLEVBQUU7UUFDcERDO0lBQWpCLElBQU1HLFNBQVMsQ0FBRUgsQ0FBQUEsQ0FBQUEsaUJBQUFBLGNBQWNELFNBQVNGLCtFQUF1Q0EsZUFBOURHLDRCQUFBQSxpQkFBbUUsRUFBRTtJQUV0Rix3RkFBd0Y7SUFDeEYsT0FBT0ksTUFBTUQsV0FBV0EsU0FBUyxPQUFPQSxTQUFTLE1BQU0sTUFBTUEsTUFBTTtBQUNyRSxDQUFDO0FBRU0sU0FBU0gsY0FDZEQsT0FBZ0IsRUFDaEJNLElBQU8sRUFDMkI7SUFDbEMsT0FBT04sUUFBUU8sR0FBRyxDQUFDRDtBQUNyQixDQUFDO0FBRU0sU0FBU0UsZ0JBQWdCUixPQUFnQixFQUFFO0lBQ2hELElBQU1TLFNBQVMsQ0FBQztJQUNoQlQsUUFBUVUsT0FBTyxDQUFDLFNBQUNDLE9BQU9DO2VBQVNILE1BQU0sQ0FBQ0csSUFBSSxHQUFHRDs7SUFDL0MsT0FBT0Y7QUFDVCxDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQG9wZW5tcnMvZXNtLWFwcC1zaGVsbC8uL3NyYy9zZXJ2aWNlLXdvcmtlci9odHRwLWhlYWRlci11dGlscy50cz81YmNkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT21yc09mZmxpbmVIdHRwSGVhZGVyTmFtZXMsIE9tcnNPZmZsaW5lSHR0cEhlYWRlcnMgfSBmcm9tICdAb3Blbm1ycy9lc20tb2ZmbGluZSc7XG5pbXBvcnQgeyBvbXJzT2ZmbGluZVJlc3BvbnNlQm9keUh0dHBIZWFkZXJOYW1lLCBvbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSHR0cEhlYWRlck5hbWUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZU9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SGVhZGVyKGhlYWRlcnM6IEhlYWRlcnMpIHtcbiAgLy8gVGhlID8/IHVuZGVmaW5lZCBoZXJlIGlzIGltcG9ydGFudCBhcyBnZXRPbXJzSGVhZGVyIHJldHVybnMgbnVsbCBieSBkZWZhdWx0IHdoZW4gdGhlIGhlYWRlclxuICAvLyBpcyBtaXNzaW5nLiB1bmRlZmluZWQgaXMgZGlmZmVyZW50IHRoYW4gbnVsbCBpbiB0aGlzIGNhc2Ugc2luY2Ugd2Ugd2FudCB0aGUgYm9keSB0byBiZSBtaXNzaW5nXG4gIC8vIGlmIHRoZSBoZWFkZXIgaXMgbm90IHRoZXJlIChudWxsIGlzIG5vdCBtaXNzaW5nKS5cbiAgcmV0dXJuIGdldE9tcnNIZWFkZXIoaGVhZGVycywgb21yc09mZmxpbmVSZXNwb25zZUJvZHlIdHRwSGVhZGVyTmFtZSkgPz8gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSGVhZGVyKGhlYWRlcnM6IEhlYWRlcnMpIHtcbiAgY29uc3Qgc3RhdHVzID0gKyhnZXRPbXJzSGVhZGVyKGhlYWRlcnMsIG9tcnNPZmZsaW5lUmVzcG9uc2VTdGF0dXNIdHRwSGVhZGVyTmFtZSkgPz8gJycpO1xuXG4gIC8vIFRoZSBSZXNwb25zZSBBUEkgcmVxdWlyZXMgdGhlIHN0YXR1cyB0byBiZSBpbiB0aGUgMjAwLTU5OSByYW5nZSBhbmQgdGhyb3dzIG90aGVyd2lzZS5cbiAgcmV0dXJuIGlzTmFOKHN0YXR1cykgfHwgc3RhdHVzIDwgMjAwIHx8IHN0YXR1cyA+IDU5OSA/IDUwMyA6IHN0YXR1cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9tcnNIZWFkZXI8VCBleHRlbmRzIE9tcnNPZmZsaW5lSHR0cEhlYWRlck5hbWVzPihcbiAgaGVhZGVyczogSGVhZGVycyxcbiAgbmFtZTogVCxcbik6IE9tcnNPZmZsaW5lSHR0cEhlYWRlcnNbVF0gfCBudWxsIHtcbiAgcmV0dXJuIGhlYWRlcnMuZ2V0KG5hbWUpIGFzIE9tcnNPZmZsaW5lSHR0cEhlYWRlcnNbVF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoZWFkZXJzVG9PYmplY3QoaGVhZGVyczogSGVhZGVycykge1xuICBjb25zdCByZXN1bHQgPSB7fTtcbiAgaGVhZGVycy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiAocmVzdWx0W2tleV0gPSB2YWx1ZSkpO1xuICByZXR1cm4gcmVzdWx0O1xufVxuIl0sIm5hbWVzIjpbIm9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SHR0cEhlYWRlck5hbWUiLCJvbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSHR0cEhlYWRlck5hbWUiLCJwYXJzZU9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SGVhZGVyIiwiaGVhZGVycyIsImdldE9tcnNIZWFkZXIiLCJ1bmRlZmluZWQiLCJwYXJzZU9tcnNPZmZsaW5lUmVzcG9uc2VTdGF0dXNIZWFkZXIiLCJzdGF0dXMiLCJpc05hTiIsIm5hbWUiLCJnZXQiLCJoZWFkZXJzVG9PYmplY3QiLCJyZXN1bHQiLCJmb3JFYWNoIiwidmFsdWUiLCJrZXkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/service-worker/http-header-utils.ts\n");
613
613
 
614
614
  /***/ }),
615
615
 
@@ -620,7 +620,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
620
620
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
621
621
 
622
622
  "use strict";
623
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fetchUrlsToCacheFromImportMap: () => (/* binding */ fetchUrlsToCacheFromImportMap)\n/* harmony export */ });\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n/* harmony import */ var lodash_es_flatten__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash-es/flatten */ \"../../../node_modules/lodash-es/flatten.js\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self1 = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self1, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return(g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g);\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n/**\n * Given an import map object, resolves the URLs of all cacheable files defined in the import map.\n * Resolving relies on a build manifest file existing in the same location as the file referenced\n * in the import map.\n */ function fetchUrlsToCacheFromImportMap(_) {\n return _fetchUrlsToCacheFromImportMap.apply(this, arguments);\n}\nfunction _fetchUrlsToCacheFromImportMap() {\n _fetchUrlsToCacheFromImportMap = _async_to_generator(function(param) {\n var _param_imports, imports, importMapUrlAddresses, urlsToCache;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _param_imports = param.imports, imports = _param_imports === void 0 ? {} : _param_imports;\n importMapUrlAddresses = Object.values(imports);\n return [\n 4,\n Promise.all(importMapUrlAddresses.map(function() {\n var _ref = _async_to_generator(function(importMapAddress) {\n var buildManifestUrl, buildManifest;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n buildManifestUrl = getBuildManifestUrl(importMapAddress);\n return [\n 4,\n tryFetchBuildManifest(buildManifestUrl)\n ];\n case 1:\n buildManifest = _state.sent();\n return [\n 2,\n buildManifest ? getUrlsFromBuildManifests(importMapAddress, buildManifest) : []\n ];\n }\n });\n });\n return function(importMapAddress) {\n return _ref.apply(this, arguments);\n };\n }()))\n ];\n case 1:\n urlsToCache = _state.sent();\n return [\n 2,\n (0,lodash_es_flatten__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(urlsToCache)\n ];\n }\n });\n });\n return _fetchUrlsToCacheFromImportMap.apply(this, arguments);\n}\nfunction getBuildManifestUrl(importMapAddress) {\n return importMapAddress + _constants__WEBPACK_IMPORTED_MODULE_0__.buildManifestSuffix;\n}\nfunction tryFetchBuildManifest(buildManifestUrl) {\n return fetch(buildManifestUrl).then(function(res) {\n return res.json();\n }).catch(function() {\n return null;\n });\n}\nfunction getUrlsFromBuildManifests(importMapAddress, buildManifest) {\n // The try here guards against malformed JSON responses.\n // While we do expect the build manifest to have the correct format, we cannot *rely* on it.\n // Using a try/catch here seems better to me than doing defensive checks on every field/type in the response.\n try {\n var results = [];\n var baseUrlForFiles = getUrlOfFileParentDir(new URL(importMapAddress, self.location.href));\n var _buildManifest_chunks;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;\n try {\n for(var _iterator = ((_buildManifest_chunks = buildManifest.chunks) !== null && _buildManifest_chunks !== void 0 ? _buildManifest_chunks : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){\n var chunk = _step.value;\n var _chunk_files;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;\n try {\n for(var _iterator1 = ((_chunk_files = chunk.files) !== null && _chunk_files !== void 0 ? _chunk_files : [])[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){\n var file = _step1.value;\n results.push(new URL(file, baseUrlForFiles).toString());\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally{\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally{\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally{\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally{\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return results;\n } catch (e) {\n console.error(\"[SW] Failed to determine the dependencies of the module with the URL %s. Not precaching any of the module's assets. Error: \", importMapAddress, e);\n return [];\n }\n}\nfunction getUrlOfFileParentDir(url) {\n var fullPath = url.origin + url.pathname; // Removes params + hash.\n var parts = fullPath.split(\"/\");\n parts[parts.length - 1] = \"\";\n return parts.join(\"/\");\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1hcC11dGlscy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ2tEO0FBRVY7QUFFeEM7Ozs7Q0FJQyxHQUNNLFNBQWVFLDhCQUE4QixDQUV4QztXQUZVQTtDQWVyQjtTQWZxQkE7SUFBQUEsaUNBQWYsNkJBQTZDLEtBRXhDLEVBQUU7NEJBRFpDLFNBRU1DLHVCQUNBQzs7OztxQ0FKNEMsTUFDbERGLFNBQUFBLHNDQUFVLENBQUM7b0JBRUxDLHdCQUF3QkUsT0FBT0MsTUFBTSxDQUFDSjtvQkFDeEI7O3dCQUFNSyxRQUFRQyxHQUFHLENBQ25DTCxzQkFBc0JNLEdBQUc7dUNBQUMsNkJBQU9DLGtCQUFxQjtvQ0FDOUNDLGtCQUNBQzs7Ozs0Q0FEQUQsbUJBQW1CRSxvQkFBb0JIOzRDQUN2Qjs7Z0RBQU1JLHNCQUFzQkg7Ozs0Q0FBNUNDLGdCQUFnQjs0Q0FDdEI7O2dEQUFPQSxnQkFDSEcsMEJBQTBCTCxrQkFBa0JFLG1CQUMxQzs7Ozs0QkFDUjs0Q0FOaUNGOzs7Ozs7b0JBRDdCTixjQUFjO29CQVVwQjs7d0JBQU9KLDZEQUFPQSxDQUFDSTs7OztJQUNqQjtXQWZzQkg7O0FBaUJ0QixTQUFTWSxvQkFBb0JILGdCQUF3QixFQUFFO0lBQ3JELE9BQU9BLG1CQUFtQlgsMkRBQW1CQTtBQUMvQztBQUVBLFNBQVNlLHNCQUNQSCxnQkFBd0IsRUFDTztJQUMvQixPQUFPSyxNQUFNTCxrQkFDVk0sSUFBSSxDQUFDLFNBQUNDO2VBQVFBLElBQUlDLElBQUk7T0FDdEJDLEtBQUssQ0FBQztlQUFNLElBQUk7O0FBQ3JCO0FBRUEsU0FBU0wsMEJBQ1BMLGdCQUF3QixFQUN4QkUsYUFBNEIsRUFDNUI7SUFDQSx3REFBd0Q7SUFDeEQsNEZBQTRGO0lBQzVGLDZHQUE2RztJQUM3RyxJQUFJO1FBQ0YsSUFBTVMsVUFBeUIsRUFBRTtRQUNqQyxJQUFNQyxrQkFBa0JDLHNCQUN0QixJQUFJQyxJQUFJZCxrQkFBa0JlLEtBQUtDLFFBQVEsQ0FBQ0MsSUFBSTtZQUcxQmY7WUFBZjs7WUFBTCxRQUFLLFlBQWVBLENBQUFBLENBQUFBLHdCQUFBQSxjQUFjZ0IsTUFBTSxjQUFwQmhCLG1DQUFBQSx3QkFBd0IsRUFBRSxzQkFBekMsd0dBQTJDO2dCQUEzQyxJQUFNaUIsUUFBTjtvQkFDZ0JBO29CQUFkOztvQkFBTCxRQUFLLGFBQWNBLENBQUFBLENBQUFBLGVBQUFBLE1BQU1DLEtBQUssY0FBWEQsMEJBQUFBLGVBQWUsRUFBRSxzQkFBL0IsNkdBQWlDO3dCQUFqQyxJQUFNRSxPQUFOO3dCQUNIVixRQUFRVyxJQUFJLENBQUMsSUFBSVIsSUFBSU8sTUFBTVQsaUJBQWlCVyxRQUFRO29CQUN0RDs7b0JBRks7b0JBQUE7Ozs2QkFBQTs0QkFBQTs7OzRCQUFBO2tDQUFBOzs7O1lBR1A7O1lBSks7WUFBQTs7O3FCQUFBO29CQUFBOzs7b0JBQUE7MEJBQUE7Ozs7UUFNTCxPQUFPWjtJQUNULEVBQUUsT0FBT2EsR0FBRztRQUNWQyxRQUFRQyxLQUFLLENBQ1gsK0hBQ0ExQixrQkFDQXdCO1FBR0YsT0FBTyxFQUFFO0lBQ1g7QUFDRjtBQUVBLFNBQVNYLHNCQUFzQmMsR0FBUSxFQUFFO0lBQ3ZDLElBQU1DLFdBQVdELElBQUlFLE1BQU0sR0FBR0YsSUFBSUcsUUFBUSxFQUFFLHlCQUF5QjtJQUNyRSxJQUFNQyxRQUFRSCxTQUFTSSxLQUFLLENBQUM7SUFDN0JELEtBQUssQ0FBQ0EsTUFBTUUsTUFBTSxHQUFHLEVBQUUsR0FBRztJQUMxQixPQUFPRixNQUFNRyxJQUFJLENBQUM7QUFDcEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1tYXAtdXRpbHMudHM/MjIxYyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEltcG9ydE1hcCB9IGZyb20gXCJAb3Blbm1ycy9lc20tZ2xvYmFsc1wiO1xuaW1wb3J0IHsgYnVpbGRNYW5pZmVzdFN1ZmZpeCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQnVpbGRNYW5pZmVzdCB9IGZyb20gXCIuL3R5cGVzXCI7XG5pbXBvcnQgZmxhdHRlbiBmcm9tIFwibG9kYXNoLWVzL2ZsYXR0ZW5cIjtcblxuLyoqXG4gKiBHaXZlbiBhbiBpbXBvcnQgbWFwIG9iamVjdCwgcmVzb2x2ZXMgdGhlIFVSTHMgb2YgYWxsIGNhY2hlYWJsZSBmaWxlcyBkZWZpbmVkIGluIHRoZSBpbXBvcnQgbWFwLlxuICogUmVzb2x2aW5nIHJlbGllcyBvbiBhIGJ1aWxkIG1hbmlmZXN0IGZpbGUgZXhpc3RpbmcgaW4gdGhlIHNhbWUgbG9jYXRpb24gYXMgdGhlIGZpbGUgcmVmZXJlbmNlZFxuICogaW4gdGhlIGltcG9ydCBtYXAuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFVybHNUb0NhY2hlRnJvbUltcG9ydE1hcCh7XG4gIGltcG9ydHMgPSB7fSxcbn06IEltcG9ydE1hcCkge1xuICBjb25zdCBpbXBvcnRNYXBVcmxBZGRyZXNzZXMgPSBPYmplY3QudmFsdWVzKGltcG9ydHMpO1xuICBjb25zdCB1cmxzVG9DYWNoZSA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgIGltcG9ydE1hcFVybEFkZHJlc3Nlcy5tYXAoYXN5bmMgKGltcG9ydE1hcEFkZHJlc3MpID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkTWFuaWZlc3RVcmwgPSBnZXRCdWlsZE1hbmlmZXN0VXJsKGltcG9ydE1hcEFkZHJlc3MpO1xuICAgICAgY29uc3QgYnVpbGRNYW5pZmVzdCA9IGF3YWl0IHRyeUZldGNoQnVpbGRNYW5pZmVzdChidWlsZE1hbmlmZXN0VXJsKTtcbiAgICAgIHJldHVybiBidWlsZE1hbmlmZXN0XG4gICAgICAgID8gZ2V0VXJsc0Zyb21CdWlsZE1hbmlmZXN0cyhpbXBvcnRNYXBBZGRyZXNzLCBidWlsZE1hbmlmZXN0KVxuICAgICAgICA6IFtdO1xuICAgIH0pXG4gICk7XG5cbiAgcmV0dXJuIGZsYXR0ZW4odXJsc1RvQ2FjaGUpO1xufVxuXG5mdW5jdGlvbiBnZXRCdWlsZE1hbmlmZXN0VXJsKGltcG9ydE1hcEFkZHJlc3M6IHN0cmluZykge1xuICByZXR1cm4gaW1wb3J0TWFwQWRkcmVzcyArIGJ1aWxkTWFuaWZlc3RTdWZmaXg7XG59XG5cbmZ1bmN0aW9uIHRyeUZldGNoQnVpbGRNYW5pZmVzdChcbiAgYnVpbGRNYW5pZmVzdFVybDogc3RyaW5nXG4pOiBQcm9taXNlPEJ1aWxkTWFuaWZlc3QgfCBudWxsPiB7XG4gIHJldHVybiBmZXRjaChidWlsZE1hbmlmZXN0VXJsKVxuICAgIC50aGVuKChyZXMpID0+IHJlcy5qc29uKCkpXG4gICAgLmNhdGNoKCgpID0+IG51bGwpO1xufVxuXG5mdW5jdGlvbiBnZXRVcmxzRnJvbUJ1aWxkTWFuaWZlc3RzKFxuICBpbXBvcnRNYXBBZGRyZXNzOiBzdHJpbmcsXG4gIGJ1aWxkTWFuaWZlc3Q6IEJ1aWxkTWFuaWZlc3Rcbikge1xuICAvLyBUaGUgdHJ5IGhlcmUgZ3VhcmRzIGFnYWluc3QgbWFsZm9ybWVkIEpTT04gcmVzcG9uc2VzLlxuICAvLyBXaGlsZSB3ZSBkbyBleHBlY3QgdGhlIGJ1aWxkIG1hbmlmZXN0IHRvIGhhdmUgdGhlIGNvcnJlY3QgZm9ybWF0LCB3ZSBjYW5ub3QgKnJlbHkqIG9uIGl0LlxuICAvLyBVc2luZyBhIHRyeS9jYXRjaCBoZXJlIHNlZW1zIGJldHRlciB0byBtZSB0aGFuIGRvaW5nIGRlZmVuc2l2ZSBjaGVja3Mgb24gZXZlcnkgZmllbGQvdHlwZSBpbiB0aGUgcmVzcG9uc2UuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0czogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICAgIGNvbnN0IGJhc2VVcmxGb3JGaWxlcyA9IGdldFVybE9mRmlsZVBhcmVudERpcihcbiAgICAgIG5ldyBVUkwoaW1wb3J0TWFwQWRkcmVzcywgc2VsZi5sb2NhdGlvbi5ocmVmKVxuICAgICk7XG5cbiAgICBmb3IgKGNvbnN0IGNodW5rIG9mIGJ1aWxkTWFuaWZlc3QuY2h1bmtzID8/IFtdKSB7XG4gICAgICBmb3IgKGNvbnN0IGZpbGUgb2YgY2h1bmsuZmlsZXMgPz8gW10pIHtcbiAgICAgICAgcmVzdWx0cy5wdXNoKG5ldyBVUkwoZmlsZSwgYmFzZVVybEZvckZpbGVzKS50b1N0cmluZygpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0cztcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICBcIltTV10gRmFpbGVkIHRvIGRldGVybWluZSB0aGUgZGVwZW5kZW5jaWVzIG9mIHRoZSBtb2R1bGUgd2l0aCB0aGUgVVJMICVzLiBOb3QgcHJlY2FjaGluZyBhbnkgb2YgdGhlIG1vZHVsZSdzIGFzc2V0cy4gRXJyb3I6IFwiLFxuICAgICAgaW1wb3J0TWFwQWRkcmVzcyxcbiAgICAgIGVcbiAgICApO1xuXG4gICAgcmV0dXJuIFtdO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldFVybE9mRmlsZVBhcmVudERpcih1cmw6IFVSTCkge1xuICBjb25zdCBmdWxsUGF0aCA9IHVybC5vcmlnaW4gKyB1cmwucGF0aG5hbWU7IC8vIFJlbW92ZXMgcGFyYW1zICsgaGFzaC5cbiAgY29uc3QgcGFydHMgPSBmdWxsUGF0aC5zcGxpdChcIi9cIik7XG4gIHBhcnRzW3BhcnRzLmxlbmd0aCAtIDFdID0gXCJcIjtcbiAgcmV0dXJuIHBhcnRzLmpvaW4oXCIvXCIpO1xufVxuIl0sIm5hbWVzIjpbImJ1aWxkTWFuaWZlc3RTdWZmaXgiLCJmbGF0dGVuIiwiZmV0Y2hVcmxzVG9DYWNoZUZyb21JbXBvcnRNYXAiLCJpbXBvcnRzIiwiaW1wb3J0TWFwVXJsQWRkcmVzc2VzIiwidXJsc1RvQ2FjaGUiLCJPYmplY3QiLCJ2YWx1ZXMiLCJQcm9taXNlIiwiYWxsIiwibWFwIiwiaW1wb3J0TWFwQWRkcmVzcyIsImJ1aWxkTWFuaWZlc3RVcmwiLCJidWlsZE1hbmlmZXN0IiwiZ2V0QnVpbGRNYW5pZmVzdFVybCIsInRyeUZldGNoQnVpbGRNYW5pZmVzdCIsImdldFVybHNGcm9tQnVpbGRNYW5pZmVzdHMiLCJmZXRjaCIsInRoZW4iLCJyZXMiLCJqc29uIiwiY2F0Y2giLCJyZXN1bHRzIiwiYmFzZVVybEZvckZpbGVzIiwiZ2V0VXJsT2ZGaWxlUGFyZW50RGlyIiwiVVJMIiwic2VsZiIsImxvY2F0aW9uIiwiaHJlZiIsImNodW5rcyIsImNodW5rIiwiZmlsZXMiLCJmaWxlIiwicHVzaCIsInRvU3RyaW5nIiwiZSIsImNvbnNvbGUiLCJlcnJvciIsInVybCIsImZ1bGxQYXRoIiwib3JpZ2luIiwicGF0aG5hbWUiLCJwYXJ0cyIsInNwbGl0IiwibGVuZ3RoIiwiam9pbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/service-worker/import-map-utils.ts\n");
623
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fetchUrlsToCacheFromImportMap: () => (/* binding */ fetchUrlsToCacheFromImportMap)\n/* harmony export */ });\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n/* harmony import */ var lodash_es_flatten__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash-es/flatten */ \"../../../node_modules/lodash-es/flatten.js\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self1 = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self1, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return(g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g);\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n/**\n * Given an import map object, resolves the URLs of all cacheable files defined in the import map.\n * Resolving relies on a build manifest file existing in the same location as the file referenced\n * in the import map.\n */ function fetchUrlsToCacheFromImportMap(_) {\n return _fetchUrlsToCacheFromImportMap.apply(this, arguments);\n}\nfunction _fetchUrlsToCacheFromImportMap() {\n _fetchUrlsToCacheFromImportMap = _async_to_generator(function(param) {\n var _param_imports, imports, importMapUrlAddresses, urlsToCache;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _param_imports = param.imports, imports = _param_imports === void 0 ? {} : _param_imports;\n importMapUrlAddresses = Object.values(imports);\n return [\n 4,\n Promise.all(importMapUrlAddresses.map(function() {\n var _ref = _async_to_generator(function(importMapAddress) {\n var buildManifestUrl, buildManifest;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n buildManifestUrl = getBuildManifestUrl(importMapAddress);\n return [\n 4,\n tryFetchBuildManifest(buildManifestUrl)\n ];\n case 1:\n buildManifest = _state.sent();\n return [\n 2,\n buildManifest ? getUrlsFromBuildManifests(importMapAddress, buildManifest) : []\n ];\n }\n });\n });\n return function(importMapAddress) {\n return _ref.apply(this, arguments);\n };\n }()))\n ];\n case 1:\n urlsToCache = _state.sent();\n return [\n 2,\n (0,lodash_es_flatten__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(urlsToCache)\n ];\n }\n });\n });\n return _fetchUrlsToCacheFromImportMap.apply(this, arguments);\n}\nfunction getBuildManifestUrl(importMapAddress) {\n return importMapAddress + _constants__WEBPACK_IMPORTED_MODULE_0__.buildManifestSuffix;\n}\nfunction tryFetchBuildManifest(buildManifestUrl) {\n return fetch(buildManifestUrl).then(function(res) {\n return res.json();\n }).catch(function() {\n return null;\n });\n}\nfunction getUrlsFromBuildManifests(importMapAddress, buildManifest) {\n // The try here guards against malformed JSON responses.\n // While we do expect the build manifest to have the correct format, we cannot *rely* on it.\n // Using a try/catch here seems better to me than doing defensive checks on every field/type in the response.\n try {\n var results = [];\n var baseUrlForFiles = getUrlOfFileParentDir(new URL(importMapAddress, self.location.href));\n var _buildManifest_chunks;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;\n try {\n for(var _iterator = ((_buildManifest_chunks = buildManifest.chunks) !== null && _buildManifest_chunks !== void 0 ? _buildManifest_chunks : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){\n var chunk = _step.value;\n var _chunk_files;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;\n try {\n for(var _iterator1 = ((_chunk_files = chunk.files) !== null && _chunk_files !== void 0 ? _chunk_files : [])[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){\n var file = _step1.value;\n results.push(new URL(file, baseUrlForFiles).toString());\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally{\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally{\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally{\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally{\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return results;\n } catch (e) {\n console.error(\"[SW] Failed to determine the dependencies of the module with the URL %s. Not precaching any of the module's assets. Error: \", importMapAddress, e);\n return [];\n }\n}\nfunction getUrlOfFileParentDir(url) {\n var fullPath = url.origin + url.pathname; // Removes params + hash.\n var parts = fullPath.split(\"/\");\n parts[parts.length - 1] = \"\";\n return parts.join(\"/\");\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1hcC11dGlscy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ2tEO0FBRVY7QUFFeEM7Ozs7Q0FJQyxHQUNNLFNBQWVFLDhCQUE4QixDQUEyQjtXQUF6REE7Q0FXckI7U0FYcUJBO0lBQUFBLGlDQUFmLDZCQUE2QyxLQUEyQixFQUFFOzRCQUEzQkMsU0FDOUNDLHVCQUNBQzs7OztxQ0FGNEMsTUFBRUYsU0FBQUEsc0NBQVUsQ0FBQztvQkFDekRDLHdCQUF3QkUsT0FBT0MsTUFBTSxDQUFDSjtvQkFDeEI7O3dCQUFNSyxRQUFRQyxHQUFHLENBQ25DTCxzQkFBc0JNLEdBQUc7dUNBQUMsNkJBQU9DLGtCQUFxQjtvQ0FDOUNDLGtCQUNBQzs7Ozs0Q0FEQUQsbUJBQW1CRSxvQkFBb0JIOzRDQUN2Qjs7Z0RBQU1JLHNCQUFzQkg7Ozs0Q0FBNUNDLGdCQUFnQjs0Q0FDdEI7O2dEQUFPQSxnQkFBZ0JHLDBCQUEwQkwsa0JBQWtCRSxtQkFBbUI7Ozs7NEJBQ3hGOzRDQUppQ0Y7Ozs7OztvQkFEN0JOLGNBQWM7b0JBUXBCOzt3QkFBT0osNkRBQU9BLENBQUNJOzs7O0lBQ2pCO1dBWHNCSDs7QUFhdEIsU0FBU1ksb0JBQW9CSCxnQkFBd0IsRUFBRTtJQUNyRCxPQUFPQSxtQkFBbUJYLDJEQUFtQkE7QUFDL0M7QUFFQSxTQUFTZSxzQkFBc0JILGdCQUF3QixFQUFpQztJQUN0RixPQUFPSyxNQUFNTCxrQkFDVk0sSUFBSSxDQUFDLFNBQUNDO2VBQVFBLElBQUlDLElBQUk7T0FDdEJDLEtBQUssQ0FBQztlQUFNLElBQUk7O0FBQ3JCO0FBRUEsU0FBU0wsMEJBQTBCTCxnQkFBd0IsRUFBRUUsYUFBNEIsRUFBRTtJQUN6Rix3REFBd0Q7SUFDeEQsNEZBQTRGO0lBQzVGLDZHQUE2RztJQUM3RyxJQUFJO1FBQ0YsSUFBTVMsVUFBeUIsRUFBRTtRQUNqQyxJQUFNQyxrQkFBa0JDLHNCQUFzQixJQUFJQyxJQUFJZCxrQkFBa0JlLEtBQUtDLFFBQVEsQ0FBQ0MsSUFBSTtZQUV0RWY7WUFBZjs7WUFBTCxRQUFLLFlBQWVBLENBQUFBLENBQUFBLHdCQUFBQSxjQUFjZ0IsTUFBTSxjQUFwQmhCLG1DQUFBQSx3QkFBd0IsRUFBRSxzQkFBekMsd0dBQTJDO2dCQUEzQyxJQUFNaUIsUUFBTjtvQkFDZ0JBO29CQUFkOztvQkFBTCxRQUFLLGFBQWNBLENBQUFBLENBQUFBLGVBQUFBLE1BQU1DLEtBQUssY0FBWEQsMEJBQUFBLGVBQWUsRUFBRSxzQkFBL0IsNkdBQWlDO3dCQUFqQyxJQUFNRSxPQUFOO3dCQUNIVixRQUFRVyxJQUFJLENBQUMsSUFBSVIsSUFBSU8sTUFBTVQsaUJBQWlCVyxRQUFRO29CQUN0RDs7b0JBRks7b0JBQUE7Ozs2QkFBQTs0QkFBQTs7OzRCQUFBO2tDQUFBOzs7O1lBR1A7O1lBSks7WUFBQTs7O3FCQUFBO29CQUFBOzs7b0JBQUE7MEJBQUE7Ozs7UUFNTCxPQUFPWjtJQUNULEVBQUUsT0FBT2EsR0FBRztRQUNWQyxRQUFRQyxLQUFLLENBQ1gsK0hBQ0ExQixrQkFDQXdCO1FBR0YsT0FBTyxFQUFFO0lBQ1g7QUFDRjtBQUVBLFNBQVNYLHNCQUFzQmMsR0FBUSxFQUFFO0lBQ3ZDLElBQU1DLFdBQVdELElBQUlFLE1BQU0sR0FBR0YsSUFBSUcsUUFBUSxFQUFFLHlCQUF5QjtJQUNyRSxJQUFNQyxRQUFRSCxTQUFTSSxLQUFLLENBQUM7SUFDN0JELEtBQUssQ0FBQ0EsTUFBTUUsTUFBTSxHQUFHLEVBQUUsR0FBRztJQUMxQixPQUFPRixNQUFNRyxJQUFJLENBQUM7QUFDcEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1tYXAtdXRpbHMudHM/MjIxYyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEltcG9ydE1hcCB9IGZyb20gJ0BvcGVubXJzL2VzbS1nbG9iYWxzJztcbmltcG9ydCB7IGJ1aWxkTWFuaWZlc3RTdWZmaXggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBCdWlsZE1hbmlmZXN0IH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgZmxhdHRlbiBmcm9tICdsb2Rhc2gtZXMvZmxhdHRlbic7XG5cbi8qKlxuICogR2l2ZW4gYW4gaW1wb3J0IG1hcCBvYmplY3QsIHJlc29sdmVzIHRoZSBVUkxzIG9mIGFsbCBjYWNoZWFibGUgZmlsZXMgZGVmaW5lZCBpbiB0aGUgaW1wb3J0IG1hcC5cbiAqIFJlc29sdmluZyByZWxpZXMgb24gYSBidWlsZCBtYW5pZmVzdCBmaWxlIGV4aXN0aW5nIGluIHRoZSBzYW1lIGxvY2F0aW9uIGFzIHRoZSBmaWxlIHJlZmVyZW5jZWRcbiAqIGluIHRoZSBpbXBvcnQgbWFwLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hVcmxzVG9DYWNoZUZyb21JbXBvcnRNYXAoeyBpbXBvcnRzID0ge30gfTogSW1wb3J0TWFwKSB7XG4gIGNvbnN0IGltcG9ydE1hcFVybEFkZHJlc3NlcyA9IE9iamVjdC52YWx1ZXMoaW1wb3J0cyk7XG4gIGNvbnN0IHVybHNUb0NhY2hlID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgaW1wb3J0TWFwVXJsQWRkcmVzc2VzLm1hcChhc3luYyAoaW1wb3J0TWFwQWRkcmVzcykgPT4ge1xuICAgICAgY29uc3QgYnVpbGRNYW5pZmVzdFVybCA9IGdldEJ1aWxkTWFuaWZlc3RVcmwoaW1wb3J0TWFwQWRkcmVzcyk7XG4gICAgICBjb25zdCBidWlsZE1hbmlmZXN0ID0gYXdhaXQgdHJ5RmV0Y2hCdWlsZE1hbmlmZXN0KGJ1aWxkTWFuaWZlc3RVcmwpO1xuICAgICAgcmV0dXJuIGJ1aWxkTWFuaWZlc3QgPyBnZXRVcmxzRnJvbUJ1aWxkTWFuaWZlc3RzKGltcG9ydE1hcEFkZHJlc3MsIGJ1aWxkTWFuaWZlc3QpIDogW107XG4gICAgfSksXG4gICk7XG5cbiAgcmV0dXJuIGZsYXR0ZW4odXJsc1RvQ2FjaGUpO1xufVxuXG5mdW5jdGlvbiBnZXRCdWlsZE1hbmlmZXN0VXJsKGltcG9ydE1hcEFkZHJlc3M6IHN0cmluZykge1xuICByZXR1cm4gaW1wb3J0TWFwQWRkcmVzcyArIGJ1aWxkTWFuaWZlc3RTdWZmaXg7XG59XG5cbmZ1bmN0aW9uIHRyeUZldGNoQnVpbGRNYW5pZmVzdChidWlsZE1hbmlmZXN0VXJsOiBzdHJpbmcpOiBQcm9taXNlPEJ1aWxkTWFuaWZlc3QgfCBudWxsPiB7XG4gIHJldHVybiBmZXRjaChidWlsZE1hbmlmZXN0VXJsKVxuICAgIC50aGVuKChyZXMpID0+IHJlcy5qc29uKCkpXG4gICAgLmNhdGNoKCgpID0+IG51bGwpO1xufVxuXG5mdW5jdGlvbiBnZXRVcmxzRnJvbUJ1aWxkTWFuaWZlc3RzKGltcG9ydE1hcEFkZHJlc3M6IHN0cmluZywgYnVpbGRNYW5pZmVzdDogQnVpbGRNYW5pZmVzdCkge1xuICAvLyBUaGUgdHJ5IGhlcmUgZ3VhcmRzIGFnYWluc3QgbWFsZm9ybWVkIEpTT04gcmVzcG9uc2VzLlxuICAvLyBXaGlsZSB3ZSBkbyBleHBlY3QgdGhlIGJ1aWxkIG1hbmlmZXN0IHRvIGhhdmUgdGhlIGNvcnJlY3QgZm9ybWF0LCB3ZSBjYW5ub3QgKnJlbHkqIG9uIGl0LlxuICAvLyBVc2luZyBhIHRyeS9jYXRjaCBoZXJlIHNlZW1zIGJldHRlciB0byBtZSB0aGFuIGRvaW5nIGRlZmVuc2l2ZSBjaGVja3Mgb24gZXZlcnkgZmllbGQvdHlwZSBpbiB0aGUgcmVzcG9uc2UuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0czogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICAgIGNvbnN0IGJhc2VVcmxGb3JGaWxlcyA9IGdldFVybE9mRmlsZVBhcmVudERpcihuZXcgVVJMKGltcG9ydE1hcEFkZHJlc3MsIHNlbGYubG9jYXRpb24uaHJlZikpO1xuXG4gICAgZm9yIChjb25zdCBjaHVuayBvZiBidWlsZE1hbmlmZXN0LmNodW5rcyA/PyBbXSkge1xuICAgICAgZm9yIChjb25zdCBmaWxlIG9mIGNodW5rLmZpbGVzID8/IFtdKSB7XG4gICAgICAgIHJlc3VsdHMucHVzaChuZXcgVVJMKGZpbGUsIGJhc2VVcmxGb3JGaWxlcykudG9TdHJpbmcoKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgXCJbU1ddIEZhaWxlZCB0byBkZXRlcm1pbmUgdGhlIGRlcGVuZGVuY2llcyBvZiB0aGUgbW9kdWxlIHdpdGggdGhlIFVSTCAlcy4gTm90IHByZWNhY2hpbmcgYW55IG9mIHRoZSBtb2R1bGUncyBhc3NldHMuIEVycm9yOiBcIixcbiAgICAgIGltcG9ydE1hcEFkZHJlc3MsXG4gICAgICBlLFxuICAgICk7XG5cbiAgICByZXR1cm4gW107XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0VXJsT2ZGaWxlUGFyZW50RGlyKHVybDogVVJMKSB7XG4gIGNvbnN0IGZ1bGxQYXRoID0gdXJsLm9yaWdpbiArIHVybC5wYXRobmFtZTsgLy8gUmVtb3ZlcyBwYXJhbXMgKyBoYXNoLlxuICBjb25zdCBwYXJ0cyA9IGZ1bGxQYXRoLnNwbGl0KCcvJyk7XG4gIHBhcnRzW3BhcnRzLmxlbmd0aCAtIDFdID0gJyc7XG4gIHJldHVybiBwYXJ0cy5qb2luKCcvJyk7XG59XG4iXSwibmFtZXMiOlsiYnVpbGRNYW5pZmVzdFN1ZmZpeCIsImZsYXR0ZW4iLCJmZXRjaFVybHNUb0NhY2hlRnJvbUltcG9ydE1hcCIsImltcG9ydHMiLCJpbXBvcnRNYXBVcmxBZGRyZXNzZXMiLCJ1cmxzVG9DYWNoZSIsIk9iamVjdCIsInZhbHVlcyIsIlByb21pc2UiLCJhbGwiLCJtYXAiLCJpbXBvcnRNYXBBZGRyZXNzIiwiYnVpbGRNYW5pZmVzdFVybCIsImJ1aWxkTWFuaWZlc3QiLCJnZXRCdWlsZE1hbmlmZXN0VXJsIiwidHJ5RmV0Y2hCdWlsZE1hbmlmZXN0IiwiZ2V0VXJsc0Zyb21CdWlsZE1hbmlmZXN0cyIsImZldGNoIiwidGhlbiIsInJlcyIsImpzb24iLCJjYXRjaCIsInJlc3VsdHMiLCJiYXNlVXJsRm9yRmlsZXMiLCJnZXRVcmxPZkZpbGVQYXJlbnREaXIiLCJVUkwiLCJzZWxmIiwibG9jYXRpb24iLCJocmVmIiwiY2h1bmtzIiwiY2h1bmsiLCJmaWxlcyIsImZpbGUiLCJwdXNoIiwidG9TdHJpbmciLCJlIiwiY29uc29sZSIsImVycm9yIiwidXJsIiwiZnVsbFBhdGgiLCJvcmlnaW4iLCJwYXRobmFtZSIsInBhcnRzIiwic3BsaXQiLCJsZW5ndGgiLCJqb2luIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/service-worker/import-map-utils.ts\n");
624
624
 
625
625
  /***/ }),
626
626
 
@@ -631,7 +631,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
631
631
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
632
632
 
633
633
  "use strict";
634
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var workbox_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! workbox-core */ \"../../../node_modules/workbox-core/index.mjs\");\n/* harmony import */ var _message__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./message */ \"./src/service-worker/message.ts\");\n/* harmony import */ var _caching__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./caching */ \"./src/service-worker/caching.ts\");\n/* harmony import */ var _routing__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./routing */ \"./src/service-worker/routing.ts\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n\n\n\n\n\nself.__WB_DISABLE_DEV_LOGS = true;\n// Initial Workbox setup. Renaming its default cache prefix prevents conflicts with other dev envs on localhost.\n(0,workbox_core__WEBPACK_IMPORTED_MODULE_0__.setCacheNameDetails)({\n prefix: _constants__WEBPACK_IMPORTED_MODULE_4__.omrsCachePrefix\n});\n(0,_routing__WEBPACK_IMPORTED_MODULE_3__.registerAllOmrsRoutes)();\nself.addEventListener(\"message\", _message__WEBPACK_IMPORTED_MODULE_1__.handleMessage);\nself.addEventListener(\"install\", function(e) {\n self.skipWaiting();\n // The app shell files are special in the sense that they can immediately be cached during SW installation.\n // They also don't change in between builds which makes them safe to cache once only.\n // If they change *during* a build, the SW is updated as well which triggers a re-installation.\n e.waitUntil((0,_caching__WEBPACK_IMPORTED_MODULE_2__.precacheAppShell)());\n});\nself.addEventListener(\"activate\", function(e) {\n e.waitUntil(self.clients.claim());\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvaW5kZXgudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQW1EO0FBQ1Q7QUFDRztBQUNLO0FBQ0o7QUFFOUNLLEtBQUtDLHFCQUFxQixHQUFHLElBQUk7QUFFakMsZ0hBQWdIO0FBQ2hITixpRUFBbUJBLENBQUM7SUFBRU8sUUFBUUgsdURBQWVBO0FBQUM7QUFFOUNELCtEQUFxQkE7QUFFckJFLEtBQUtHLGdCQUFnQixDQUFDLFdBQVdQLG1EQUFhQTtBQUU5Q0ksS0FBS0csZ0JBQWdCLENBQUMsV0FBVyxTQUFDQyxHQUFNO0lBQ3RDSixLQUFLSyxXQUFXO0lBRWhCLDJHQUEyRztJQUMzRyxxRkFBcUY7SUFDckYsK0ZBQStGO0lBQy9GRCxFQUFFRSxTQUFTLENBQUNULDBEQUFnQkE7QUFDOUI7QUFFQUcsS0FBS0csZ0JBQWdCLENBQUMsWUFBWSxTQUFDQyxHQUFNO0lBQ3ZDQSxFQUFFRSxTQUFTLENBQUNOLEtBQUtPLE9BQU8sQ0FBQ0MsS0FBSztBQUNoQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvaW5kZXgudHM/NmJjYSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzZXRDYWNoZU5hbWVEZXRhaWxzIH0gZnJvbSBcIndvcmtib3gtY29yZVwiO1xuaW1wb3J0IHsgaGFuZGxlTWVzc2FnZSB9IGZyb20gXCIuL21lc3NhZ2VcIjtcbmltcG9ydCB7IHByZWNhY2hlQXBwU2hlbGwgfSBmcm9tIFwiLi9jYWNoaW5nXCI7XG5pbXBvcnQgeyByZWdpc3RlckFsbE9tcnNSb3V0ZXMgfSBmcm9tIFwiLi9yb3V0aW5nXCI7XG5pbXBvcnQgeyBvbXJzQ2FjaGVQcmVmaXggfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuc2VsZi5fX1dCX0RJU0FCTEVfREVWX0xPR1MgPSB0cnVlO1xuXG4vLyBJbml0aWFsIFdvcmtib3ggc2V0dXAuIFJlbmFtaW5nIGl0cyBkZWZhdWx0IGNhY2hlIHByZWZpeCBwcmV2ZW50cyBjb25mbGljdHMgd2l0aCBvdGhlciBkZXYgZW52cyBvbiBsb2NhbGhvc3QuXG5zZXRDYWNoZU5hbWVEZXRhaWxzKHsgcHJlZml4OiBvbXJzQ2FjaGVQcmVmaXggfSk7XG5cbnJlZ2lzdGVyQWxsT21yc1JvdXRlcygpO1xuXG5zZWxmLmFkZEV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsIGhhbmRsZU1lc3NhZ2UpO1xuXG5zZWxmLmFkZEV2ZW50TGlzdGVuZXIoXCJpbnN0YWxsXCIsIChlKSA9PiB7XG4gIHNlbGYuc2tpcFdhaXRpbmcoKTtcblxuICAvLyBUaGUgYXBwIHNoZWxsIGZpbGVzIGFyZSBzcGVjaWFsIGluIHRoZSBzZW5zZSB0aGF0IHRoZXkgY2FuIGltbWVkaWF0ZWx5IGJlIGNhY2hlZCBkdXJpbmcgU1cgaW5zdGFsbGF0aW9uLlxuICAvLyBUaGV5IGFsc28gZG9uJ3QgY2hhbmdlIGluIGJldHdlZW4gYnVpbGRzIHdoaWNoIG1ha2VzIHRoZW0gc2FmZSB0byBjYWNoZSBvbmNlIG9ubHkuXG4gIC8vIElmIHRoZXkgY2hhbmdlICpkdXJpbmcqIGEgYnVpbGQsIHRoZSBTVyBpcyB1cGRhdGVkIGFzIHdlbGwgd2hpY2ggdHJpZ2dlcnMgYSByZS1pbnN0YWxsYXRpb24uXG4gIGUud2FpdFVudGlsKHByZWNhY2hlQXBwU2hlbGwoKSk7XG59KTtcblxuc2VsZi5hZGRFdmVudExpc3RlbmVyKFwiYWN0aXZhdGVcIiwgKGUpID0+IHtcbiAgZS53YWl0VW50aWwoc2VsZi5jbGllbnRzLmNsYWltKCkpO1xufSk7XG4iXSwibmFtZXMiOlsic2V0Q2FjaGVOYW1lRGV0YWlscyIsImhhbmRsZU1lc3NhZ2UiLCJwcmVjYWNoZUFwcFNoZWxsIiwicmVnaXN0ZXJBbGxPbXJzUm91dGVzIiwib21yc0NhY2hlUHJlZml4Iiwic2VsZiIsIl9fV0JfRElTQUJMRV9ERVZfTE9HUyIsInByZWZpeCIsImFkZEV2ZW50TGlzdGVuZXIiLCJlIiwic2tpcFdhaXRpbmciLCJ3YWl0VW50aWwiLCJjbGllbnRzIiwiY2xhaW0iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/service-worker/index.ts\n");
634
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var workbox_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! workbox-core */ \"../../../node_modules/workbox-core/index.mjs\");\n/* harmony import */ var _message__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./message */ \"./src/service-worker/message.ts\");\n/* harmony import */ var _caching__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./caching */ \"./src/service-worker/caching.ts\");\n/* harmony import */ var _routing__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./routing */ \"./src/service-worker/routing.ts\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n\n\n\n\n\nself.__WB_DISABLE_DEV_LOGS = true;\n// Initial Workbox setup. Renaming its default cache prefix prevents conflicts with other dev envs on localhost.\n(0,workbox_core__WEBPACK_IMPORTED_MODULE_0__.setCacheNameDetails)({\n prefix: _constants__WEBPACK_IMPORTED_MODULE_4__.omrsCachePrefix\n});\n(0,_routing__WEBPACK_IMPORTED_MODULE_3__.registerAllOmrsRoutes)();\nself.addEventListener(\"message\", _message__WEBPACK_IMPORTED_MODULE_1__.handleMessage);\nself.addEventListener(\"install\", function(e) {\n self.skipWaiting();\n // The app shell files are special in the sense that they can immediately be cached during SW installation.\n // They also don't change in between builds which makes them safe to cache once only.\n // If they change *during* a build, the SW is updated as well which triggers a re-installation.\n e.waitUntil((0,_caching__WEBPACK_IMPORTED_MODULE_2__.precacheAppShell)());\n});\nself.addEventListener(\"activate\", function(e) {\n e.waitUntil(self.clients.claim());\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvaW5kZXgudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQW1EO0FBQ1Q7QUFDRztBQUNLO0FBQ0o7QUFFOUNLLEtBQUtDLHFCQUFxQixHQUFHLElBQUk7QUFFakMsZ0hBQWdIO0FBQ2hITixpRUFBbUJBLENBQUM7SUFBRU8sUUFBUUgsdURBQWVBO0FBQUM7QUFFOUNELCtEQUFxQkE7QUFFckJFLEtBQUtHLGdCQUFnQixDQUFDLFdBQVdQLG1EQUFhQTtBQUU5Q0ksS0FBS0csZ0JBQWdCLENBQUMsV0FBVyxTQUFDQyxHQUFNO0lBQ3RDSixLQUFLSyxXQUFXO0lBRWhCLDJHQUEyRztJQUMzRyxxRkFBcUY7SUFDckYsK0ZBQStGO0lBQy9GRCxFQUFFRSxTQUFTLENBQUNULDBEQUFnQkE7QUFDOUI7QUFFQUcsS0FBS0csZ0JBQWdCLENBQUMsWUFBWSxTQUFDQyxHQUFNO0lBQ3ZDQSxFQUFFRSxTQUFTLENBQUNOLEtBQUtPLE9BQU8sQ0FBQ0MsS0FBSztBQUNoQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvaW5kZXgudHM/NmJjYSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzZXRDYWNoZU5hbWVEZXRhaWxzIH0gZnJvbSAnd29ya2JveC1jb3JlJztcbmltcG9ydCB7IGhhbmRsZU1lc3NhZ2UgfSBmcm9tICcuL21lc3NhZ2UnO1xuaW1wb3J0IHsgcHJlY2FjaGVBcHBTaGVsbCB9IGZyb20gJy4vY2FjaGluZyc7XG5pbXBvcnQgeyByZWdpc3RlckFsbE9tcnNSb3V0ZXMgfSBmcm9tICcuL3JvdXRpbmcnO1xuaW1wb3J0IHsgb21yc0NhY2hlUHJlZml4IH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5zZWxmLl9fV0JfRElTQUJMRV9ERVZfTE9HUyA9IHRydWU7XG5cbi8vIEluaXRpYWwgV29ya2JveCBzZXR1cC4gUmVuYW1pbmcgaXRzIGRlZmF1bHQgY2FjaGUgcHJlZml4IHByZXZlbnRzIGNvbmZsaWN0cyB3aXRoIG90aGVyIGRldiBlbnZzIG9uIGxvY2FsaG9zdC5cbnNldENhY2hlTmFtZURldGFpbHMoeyBwcmVmaXg6IG9tcnNDYWNoZVByZWZpeCB9KTtcblxucmVnaXN0ZXJBbGxPbXJzUm91dGVzKCk7XG5cbnNlbGYuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGhhbmRsZU1lc3NhZ2UpO1xuXG5zZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2luc3RhbGwnLCAoZSkgPT4ge1xuICBzZWxmLnNraXBXYWl0aW5nKCk7XG5cbiAgLy8gVGhlIGFwcCBzaGVsbCBmaWxlcyBhcmUgc3BlY2lhbCBpbiB0aGUgc2Vuc2UgdGhhdCB0aGV5IGNhbiBpbW1lZGlhdGVseSBiZSBjYWNoZWQgZHVyaW5nIFNXIGluc3RhbGxhdGlvbi5cbiAgLy8gVGhleSBhbHNvIGRvbid0IGNoYW5nZSBpbiBiZXR3ZWVuIGJ1aWxkcyB3aGljaCBtYWtlcyB0aGVtIHNhZmUgdG8gY2FjaGUgb25jZSBvbmx5LlxuICAvLyBJZiB0aGV5IGNoYW5nZSAqZHVyaW5nKiBhIGJ1aWxkLCB0aGUgU1cgaXMgdXBkYXRlZCBhcyB3ZWxsIHdoaWNoIHRyaWdnZXJzIGEgcmUtaW5zdGFsbGF0aW9uLlxuICBlLndhaXRVbnRpbChwcmVjYWNoZUFwcFNoZWxsKCkpO1xufSk7XG5cbnNlbGYuYWRkRXZlbnRMaXN0ZW5lcignYWN0aXZhdGUnLCAoZSkgPT4ge1xuICBlLndhaXRVbnRpbChzZWxmLmNsaWVudHMuY2xhaW0oKSk7XG59KTtcbiJdLCJuYW1lcyI6WyJzZXRDYWNoZU5hbWVEZXRhaWxzIiwiaGFuZGxlTWVzc2FnZSIsInByZWNhY2hlQXBwU2hlbGwiLCJyZWdpc3RlckFsbE9tcnNSb3V0ZXMiLCJvbXJzQ2FjaGVQcmVmaXgiLCJzZWxmIiwiX19XQl9ESVNBQkxFX0RFVl9MT0dTIiwicHJlZml4IiwiYWRkRXZlbnRMaXN0ZW5lciIsImUiLCJza2lwV2FpdGluZyIsIndhaXRVbnRpbCIsImNsaWVudHMiLCJjbGFpbSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/service-worker/index.ts\n");
635
635
 
636
636
  /***/ }),
637
637
 
@@ -642,7 +642,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var work
642
642
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
643
643
 
644
644
  "use strict";
645
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ handleMessage: () => (/* binding */ handleMessage)\n/* harmony export */ });\n/* harmony import */ var lodash_es_escapeRegExp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash-es/escapeRegExp */ \"../../../node_modules/lodash-es/escapeRegExp.js\");\n/* harmony import */ var _caching__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./caching */ \"./src/service-worker/caching.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./storage */ \"./src/service-worker/storage.ts\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\nvar messageHandlers = {\n onImportMapChanged: onImportMapChanged,\n clearDynamicRoutes: clearDynamicRoutes,\n registerDynamicRoute: registerDynamicRoute\n};\nfunction onImportMapChanged(_) {\n return _onImportMapChanged.apply(this, arguments);\n}\nfunction _onImportMapChanged() {\n _onImportMapChanged = _async_to_generator(function(param) {\n var importMap;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n importMap = param.importMap;\n return [\n 4,\n (0,_caching__WEBPACK_IMPORTED_MODULE_0__.cacheImportMapReferences)(importMap)\n ];\n case 1:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _onImportMapChanged.apply(this, arguments);\n}\nfunction clearDynamicRoutes() {\n return _clearDynamicRoutes.apply(this, arguments);\n}\nfunction _clearDynamicRoutes() {\n _clearDynamicRoutes = _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n return [\n 4,\n new _storage__WEBPACK_IMPORTED_MODULE_1__.ServiceWorkerDb().dynamicRouteRegistrations.clear()\n ];\n case 1:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _clearDynamicRoutes.apply(this, arguments);\n}\nfunction registerDynamicRoute(_) {\n return _registerDynamicRoute.apply(this, arguments);\n}\nfunction _registerDynamicRoute() {\n _registerDynamicRoute = _async_to_generator(function(param) {\n var pattern, url, strategy, finalPattern, registration;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n pattern = param.pattern, url = param.url, strategy = param.strategy;\n finalPattern = pattern;\n if (!finalPattern && url) {\n finalPattern = \"^\".concat((0,lodash_es_escapeRegExp__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(url), \"$\");\n }\n if (!finalPattern) return [\n 3,\n 2\n ];\n registration = {\n pattern: finalPattern,\n strategy: strategy\n };\n return [\n 4,\n new _storage__WEBPACK_IMPORTED_MODULE_1__.ServiceWorkerDb().dynamicRouteRegistrations.put(registration)\n ];\n case 1:\n _state.sent();\n _state.label = 2;\n case 2:\n return [\n 2\n ];\n }\n });\n });\n return _registerDynamicRoute.apply(this, arguments);\n}\n/**\n * Invoked when the service worker receives a message.\n * Matches the message to a handler, invokes that handler and dispatches the result returned\n * by the handler back to the window.\n *\n * For this to work, the message needs to have a defined format.\n * @param event The event data containing the message dispatched to the Service Worker.\n */ function handleMessage(event) {\n return _handleMessage.apply(this, arguments);\n}\nfunction _handleMessage() {\n _handleMessage = _async_to_generator(function(event) {\n var _event_data, _event_data_type, _event_data_type_toString, handler, _event_data1, result, e, _e_message, _ref;\n function fail(error) {\n console.warn(\"[SW] Handling a message resulted in an error.\", error);\n resolve({\n success: false,\n error: error\n });\n }\n function resolve(result) {\n event.ports[0].postMessage(result !== null && result !== void 0 ? result : {});\n }\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n handler = messageHandlers[(_event_data_type_toString = (_event_data = event.data) === null || _event_data === void 0 ? void 0 : (_event_data_type = _event_data.type) === null || _event_data_type === void 0 ? void 0 : _event_data_type.toString()) !== null && _event_data_type_toString !== void 0 ? _event_data_type_toString : \"\"];\n if (!handler) {\n ;\n fail('Received an unknown message of type \"'.concat((_event_data1 = event.data) === null || _event_data1 === void 0 ? void 0 : _event_data1.type, \" which cannot be handled.\"));\n return [\n 2\n ];\n }\n _state.label = 1;\n case 1:\n _state.trys.push([\n 1,\n 3,\n ,\n 4\n ]);\n return [\n 4,\n handler(event.data)\n ];\n case 2:\n result = _state.sent();\n resolve({\n success: true,\n result: result\n });\n return [\n 3,\n 4\n ];\n case 3:\n e = _state.sent();\n fail((_ref = (_e_message = e === null || e === void 0 ? void 0 : e.message) !== null && _e_message !== void 0 ? _e_message : e === null || e === void 0 ? void 0 : e.toString()) !== null && _ref !== void 0 ? _ref : \"Unknown error.\");\n return [\n 3,\n 4\n ];\n case 4:\n return [\n 2\n ];\n }\n });\n });\n return _handleMessage.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvbWVzc2FnZS50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUtrRDtBQUNHO0FBQ2lCO0FBRXRFLElBQU1HLGtCQUFrQjtJQUN0QkMsb0JBQUFBO0lBQ0FDLG9CQUFBQTtJQUNBQyxzQkFBQUE7QUFDRjtTQUVlRixtQkFBbUIsQ0FBd0M7V0FBM0RBOztTQUFBQTtJQUFBQSxzQkFBZiw2QkFBa0MsS0FBd0MsRUFBRTtZQUF4Q0c7Ozs7b0JBQUFBLFlBQUYsTUFBRUE7b0JBQ2xDOzt3QkFBTU4sa0VBQXdCQSxDQUFDTTs7O29CQUEvQjs7Ozs7O0lBQ0Y7V0FGZUg7O1NBSUFDO1dBQUFBOztTQUFBQTtJQUFBQSxzQkFBZiwrQkFBb0M7Ozs7b0JBQ2xDOzt3QkFBTSxJQUFJSCxxREFBZUEsR0FBR00seUJBQXlCLENBQUNDLEtBQUs7OztvQkFBM0Q7Ozs7OztJQUNGO1dBRmVKOztTQUlBQyxxQkFBcUIsQ0FJTjtXQUpmQTs7U0FBQUE7SUFBQUEsd0JBQWYsNkJBQW9DLEtBSU4sRUFBRTtZQUg5QkksU0FDQUMsS0FDQUMsVUFFSUMsY0FNSUM7Ozs7b0JBVlJKLFVBRGtDLE1BQ2xDQSxTQUNBQyxNQUZrQyxNQUVsQ0EsS0FDQUMsV0FIa0MsTUFHbENBO29CQUVJQyxlQUFlSDtvQkFDbkIsSUFBSSxDQUFDRyxnQkFBZ0JGLEtBQUs7d0JBQ3hCRSxlQUFlLElBQXNCLE9BQWxCYixrRUFBWUEsQ0FBQ1csTUFBSztvQkFDdkMsQ0FBQzt5QkFFR0UsY0FBQUE7Ozs7b0JBQ0lDLGVBQXlDO3dCQUM3Q0osU0FBU0c7d0JBQ1RELFVBQUFBO29CQUNGO29CQUVBOzt3QkFBTSxJQUFJVixxREFBZUEsR0FBR00seUJBQXlCLENBQUNPLEdBQUcsQ0FBQ0Q7OztvQkFBMUQ7Ozs7Ozs7O0lBRUo7V0FsQmVSOztBQW9CZjs7Ozs7OztDQU9DLEdBQ00sU0FBZVUsY0FBY0MsS0FBNkI7V0FBM0NEO0NBK0JyQjtTQS9CcUJBO0lBQUFBLGlCQUFmLDZCQUE2QkMsS0FBNkIsRUFBRTtZQUNqQ0EsK0JBQUFBLDJCQUExQkMsU0FJc0NELGNBTXBDRSxRQUtDQyxHQUNGQSxZQUFBQTtRQUdQLFNBQVNDLEtBQUtDLEtBQWEsRUFBRTtZQUMzQkMsUUFBUUMsSUFBSSxDQUFDLGlEQUFpREY7WUFDOURHLFFBQVE7Z0JBQ05DLFNBQVMsS0FBSztnQkFDZEosT0FBQUE7WUFDRjtRQUNGO1FBRUEsU0FBU0csUUFBV04sTUFBcUMsRUFBRTtZQUN6REYsTUFBTVUsS0FBSyxDQUFDLEVBQUUsQ0FBQ0MsV0FBVyxDQUFDVCxtQkFBQUEsb0JBQUFBLFNBQVUsQ0FBQyxDQUFDO1FBQ3pDOzs7O29CQTdCTUQsVUFBVWYsZUFBZSxDQUFDYyxDQUFBQSw0QkFBQUEsQ0FBQUEsY0FBQUEsTUFBTVksSUFBSSxjQUFWWix5QkFBQUEsS0FBQUEsSUFBQUEsb0JBQUFBLFlBQVlhLGdEQUFaYixLQUFBQSxJQUFBQSxpQkFBa0JjLHdCQUFsQmQsdUNBQUFBLDRCQUFnQyxFQUFFLENBQUM7b0JBRW5FLElBQUksQ0FBQ0MsU0FBUzs7d0JBQ1pHLEtBQ0Usd0NBQXlELE9BQWpCSixDQUFBQSxlQUFBQSxNQUFNWSxJQUFJLGNBQVZaLDBCQUFBQSxLQUFBQSxJQUFBQSxhQUFZYSxJQUFJLEVBQUM7d0JBRTNEOzs7b0JBQ0YsQ0FBQzs7Ozs7Ozs7O29CQUdnQjs7d0JBQU1aLFFBQVFELE1BQU1ZLElBQUk7OztvQkFBakNWLFNBQVM7b0JBQ2ZNLFFBQVE7d0JBQ05DLFNBQVMsSUFBSTt3QkFDYlAsUUFBQUE7b0JBQ0Y7Ozs7OztvQkFDT0M7b0JBQ1BDLEtBQUtELENBQUFBLE9BQUFBLENBQUFBLGFBQUFBLGNBQUFBLGVBQUFBLEtBQUFBLElBQUFBLEVBQUdZLE9BQU8sY0FBVlosd0JBQUFBLGFBQWNBLGNBQUFBLGVBQUFBLEtBQUFBLElBQUFBLEVBQUdXLFFBQVEsRUFBRSxjQUEzQlgsa0JBQUFBLE9BQStCLGdCQUFnQjs7Ozs7Ozs7Ozs7SUFjeEQ7V0EvQnNCSiIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvbWVzc2FnZS50cz80ZTA1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgTWVzc2FnZVNlcnZpY2VXb3JrZXJSZXN1bHQsXG4gIE9uSW1wb3J0TWFwQ2hhbmdlZE1lc3NhZ2UsXG4gIFJlZ2lzdGVyRHluYW1pY1JvdXRlTWVzc2FnZSxcbn0gZnJvbSBcIkBvcGVubXJzL2VzbS1vZmZsaW5lXCI7XG5pbXBvcnQgZXNjYXBlUmVnRXhwIGZyb20gXCJsb2Rhc2gtZXMvZXNjYXBlUmVnRXhwXCI7XG5pbXBvcnQgeyBjYWNoZUltcG9ydE1hcFJlZmVyZW5jZXMgfSBmcm9tIFwiLi9jYWNoaW5nXCI7XG5pbXBvcnQgeyBEeW5hbWljUm91dGVSZWdpc3RyYXRpb24sIFNlcnZpY2VXb3JrZXJEYiB9IGZyb20gXCIuL3N0b3JhZ2VcIjtcblxuY29uc3QgbWVzc2FnZUhhbmRsZXJzID0ge1xuICBvbkltcG9ydE1hcENoYW5nZWQsXG4gIGNsZWFyRHluYW1pY1JvdXRlcyxcbiAgcmVnaXN0ZXJEeW5hbWljUm91dGUsXG59O1xuXG5hc3luYyBmdW5jdGlvbiBvbkltcG9ydE1hcENoYW5nZWQoeyBpbXBvcnRNYXAgfTogT25JbXBvcnRNYXBDaGFuZ2VkTWVzc2FnZSkge1xuICBhd2FpdCBjYWNoZUltcG9ydE1hcFJlZmVyZW5jZXMoaW1wb3J0TWFwKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gY2xlYXJEeW5hbWljUm91dGVzKCkge1xuICBhd2FpdCBuZXcgU2VydmljZVdvcmtlckRiKCkuZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucy5jbGVhcigpO1xufVxuXG5hc3luYyBmdW5jdGlvbiByZWdpc3RlckR5bmFtaWNSb3V0ZSh7XG4gIHBhdHRlcm4sXG4gIHVybCxcbiAgc3RyYXRlZ3ksXG59OiBSZWdpc3RlckR5bmFtaWNSb3V0ZU1lc3NhZ2UpIHtcbiAgbGV0IGZpbmFsUGF0dGVybiA9IHBhdHRlcm47XG4gIGlmICghZmluYWxQYXR0ZXJuICYmIHVybCkge1xuICAgIGZpbmFsUGF0dGVybiA9IGBeJHtlc2NhcGVSZWdFeHAodXJsKX0kYDtcbiAgfVxuXG4gIGlmIChmaW5hbFBhdHRlcm4pIHtcbiAgICBjb25zdCByZWdpc3RyYXRpb246IER5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbiA9IHtcbiAgICAgIHBhdHRlcm46IGZpbmFsUGF0dGVybixcbiAgICAgIHN0cmF0ZWd5LFxuICAgIH07XG5cbiAgICBhd2FpdCBuZXcgU2VydmljZVdvcmtlckRiKCkuZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucy5wdXQocmVnaXN0cmF0aW9uKTtcbiAgfVxufVxuXG4vKipcbiAqIEludm9rZWQgd2hlbiB0aGUgc2VydmljZSB3b3JrZXIgcmVjZWl2ZXMgYSBtZXNzYWdlLlxuICogTWF0Y2hlcyB0aGUgbWVzc2FnZSB0byBhIGhhbmRsZXIsIGludm9rZXMgdGhhdCBoYW5kbGVyIGFuZCBkaXNwYXRjaGVzIHRoZSByZXN1bHQgcmV0dXJuZWRcbiAqIGJ5IHRoZSBoYW5kbGVyIGJhY2sgdG8gdGhlIHdpbmRvdy5cbiAqXG4gKiBGb3IgdGhpcyB0byB3b3JrLCB0aGUgbWVzc2FnZSBuZWVkcyB0byBoYXZlIGEgZGVmaW5lZCBmb3JtYXQuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGV2ZW50IGRhdGEgY29udGFpbmluZyB0aGUgbWVzc2FnZSBkaXNwYXRjaGVkIHRvIHRoZSBTZXJ2aWNlIFdvcmtlci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZU1lc3NhZ2UoZXZlbnQ6IEV4dGVuZGFibGVNZXNzYWdlRXZlbnQpIHtcbiAgY29uc3QgaGFuZGxlciA9IG1lc3NhZ2VIYW5kbGVyc1tldmVudC5kYXRhPy50eXBlPy50b1N0cmluZygpID8/IFwiXCJdO1xuXG4gIGlmICghaGFuZGxlcikge1xuICAgIGZhaWwoXG4gICAgICBgUmVjZWl2ZWQgYW4gdW5rbm93biBtZXNzYWdlIG9mIHR5cGUgXCIke2V2ZW50LmRhdGE/LnR5cGV9IHdoaWNoIGNhbm5vdCBiZSBoYW5kbGVkLmBcbiAgICApO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaGFuZGxlcihldmVudC5kYXRhKTtcbiAgICByZXNvbHZlKHtcbiAgICAgIHN1Y2Nlc3M6IHRydWUsXG4gICAgICByZXN1bHQsXG4gICAgfSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBmYWlsKGU/Lm1lc3NhZ2UgPz8gZT8udG9TdHJpbmcoKSA/PyBcIlVua25vd24gZXJyb3IuXCIpO1xuICB9XG5cbiAgZnVuY3Rpb24gZmFpbChlcnJvcjogc3RyaW5nKSB7XG4gICAgY29uc29sZS53YXJuKFwiW1NXXSBIYW5kbGluZyBhIG1lc3NhZ2UgcmVzdWx0ZWQgaW4gYW4gZXJyb3IuXCIsIGVycm9yKTtcbiAgICByZXNvbHZlKHtcbiAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgZXJyb3IsXG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiByZXNvbHZlPFQ+KHJlc3VsdDogTWVzc2FnZVNlcnZpY2VXb3JrZXJSZXN1bHQ8VD4pIHtcbiAgICBldmVudC5wb3J0c1swXS5wb3N0TWVzc2FnZShyZXN1bHQgPz8ge30pO1xuICB9XG59XG4iXSwibmFtZXMiOlsiZXNjYXBlUmVnRXhwIiwiY2FjaGVJbXBvcnRNYXBSZWZlcmVuY2VzIiwiU2VydmljZVdvcmtlckRiIiwibWVzc2FnZUhhbmRsZXJzIiwib25JbXBvcnRNYXBDaGFuZ2VkIiwiY2xlYXJEeW5hbWljUm91dGVzIiwicmVnaXN0ZXJEeW5hbWljUm91dGUiLCJpbXBvcnRNYXAiLCJkeW5hbWljUm91dGVSZWdpc3RyYXRpb25zIiwiY2xlYXIiLCJwYXR0ZXJuIiwidXJsIiwic3RyYXRlZ3kiLCJmaW5hbFBhdHRlcm4iLCJyZWdpc3RyYXRpb24iLCJwdXQiLCJoYW5kbGVNZXNzYWdlIiwiZXZlbnQiLCJoYW5kbGVyIiwicmVzdWx0IiwiZSIsImZhaWwiLCJlcnJvciIsImNvbnNvbGUiLCJ3YXJuIiwicmVzb2x2ZSIsInN1Y2Nlc3MiLCJwb3J0cyIsInBvc3RNZXNzYWdlIiwiZGF0YSIsInR5cGUiLCJ0b1N0cmluZyIsIm1lc3NhZ2UiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/service-worker/message.ts\n");
645
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ handleMessage: () => (/* binding */ handleMessage)\n/* harmony export */ });\n/* harmony import */ var lodash_es_escapeRegExp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash-es/escapeRegExp */ \"../../../node_modules/lodash-es/escapeRegExp.js\");\n/* harmony import */ var _caching__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./caching */ \"./src/service-worker/caching.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./storage */ \"./src/service-worker/storage.ts\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\nvar messageHandlers = {\n onImportMapChanged: onImportMapChanged,\n clearDynamicRoutes: clearDynamicRoutes,\n registerDynamicRoute: registerDynamicRoute\n};\nfunction onImportMapChanged(_) {\n return _onImportMapChanged.apply(this, arguments);\n}\nfunction _onImportMapChanged() {\n _onImportMapChanged = _async_to_generator(function(param) {\n var importMap;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n importMap = param.importMap;\n return [\n 4,\n (0,_caching__WEBPACK_IMPORTED_MODULE_0__.cacheImportMapReferences)(importMap)\n ];\n case 1:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _onImportMapChanged.apply(this, arguments);\n}\nfunction clearDynamicRoutes() {\n return _clearDynamicRoutes.apply(this, arguments);\n}\nfunction _clearDynamicRoutes() {\n _clearDynamicRoutes = _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n return [\n 4,\n new _storage__WEBPACK_IMPORTED_MODULE_1__.ServiceWorkerDb().dynamicRouteRegistrations.clear()\n ];\n case 1:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return _clearDynamicRoutes.apply(this, arguments);\n}\nfunction registerDynamicRoute(_) {\n return _registerDynamicRoute.apply(this, arguments);\n}\nfunction _registerDynamicRoute() {\n _registerDynamicRoute = _async_to_generator(function(param) {\n var pattern, url, strategy, finalPattern, registration;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n pattern = param.pattern, url = param.url, strategy = param.strategy;\n finalPattern = pattern;\n if (!finalPattern && url) {\n finalPattern = \"^\".concat((0,lodash_es_escapeRegExp__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(url), \"$\");\n }\n if (!finalPattern) return [\n 3,\n 2\n ];\n registration = {\n pattern: finalPattern,\n strategy: strategy\n };\n return [\n 4,\n new _storage__WEBPACK_IMPORTED_MODULE_1__.ServiceWorkerDb().dynamicRouteRegistrations.put(registration)\n ];\n case 1:\n _state.sent();\n _state.label = 2;\n case 2:\n return [\n 2\n ];\n }\n });\n });\n return _registerDynamicRoute.apply(this, arguments);\n}\n/**\n * Invoked when the service worker receives a message.\n * Matches the message to a handler, invokes that handler and dispatches the result returned\n * by the handler back to the window.\n *\n * For this to work, the message needs to have a defined format.\n * @param event The event data containing the message dispatched to the Service Worker.\n */ function handleMessage(event) {\n return _handleMessage.apply(this, arguments);\n}\nfunction _handleMessage() {\n _handleMessage = _async_to_generator(function(event) {\n var _event_data, _event_data_type, _event_data_type_toString, handler, _event_data1, result, e, _e_message, _ref;\n function fail(error) {\n console.warn(\"[SW] Handling a message resulted in an error.\", error);\n resolve({\n success: false,\n error: error\n });\n }\n function resolve(result) {\n event.ports[0].postMessage(result !== null && result !== void 0 ? result : {});\n }\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n handler = messageHandlers[(_event_data_type_toString = (_event_data = event.data) === null || _event_data === void 0 ? void 0 : (_event_data_type = _event_data.type) === null || _event_data_type === void 0 ? void 0 : _event_data_type.toString()) !== null && _event_data_type_toString !== void 0 ? _event_data_type_toString : \"\"];\n if (!handler) {\n ;\n fail('Received an unknown message of type \"'.concat((_event_data1 = event.data) === null || _event_data1 === void 0 ? void 0 : _event_data1.type, \" which cannot be handled.\"));\n return [\n 2\n ];\n }\n _state.label = 1;\n case 1:\n _state.trys.push([\n 1,\n 3,\n ,\n 4\n ]);\n return [\n 4,\n handler(event.data)\n ];\n case 2:\n result = _state.sent();\n resolve({\n success: true,\n result: result\n });\n return [\n 3,\n 4\n ];\n case 3:\n e = _state.sent();\n fail((_ref = (_e_message = e === null || e === void 0 ? void 0 : e.message) !== null && _e_message !== void 0 ? _e_message : e === null || e === void 0 ? void 0 : e.toString()) !== null && _ref !== void 0 ? _ref : \"Unknown error.\");\n return [\n 3,\n 4\n ];\n case 4:\n return [\n 2\n ];\n }\n });\n });\n return _handleMessage.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvbWVzc2FnZS50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUtrRDtBQUNHO0FBQ2lCO0FBRXRFLElBQU1HLGtCQUFrQjtJQUN0QkMsb0JBQUFBO0lBQ0FDLG9CQUFBQTtJQUNBQyxzQkFBQUE7QUFDRjtTQUVlRixtQkFBbUIsQ0FBd0M7V0FBM0RBOztTQUFBQTtJQUFBQSxzQkFBZiw2QkFBa0MsS0FBd0MsRUFBRTtZQUF4Q0c7Ozs7b0JBQUFBLFlBQUYsTUFBRUE7b0JBQ2xDOzt3QkFBTU4sa0VBQXdCQSxDQUFDTTs7O29CQUEvQjs7Ozs7O0lBQ0Y7V0FGZUg7O1NBSUFDO1dBQUFBOztTQUFBQTtJQUFBQSxzQkFBZiwrQkFBb0M7Ozs7b0JBQ2xDOzt3QkFBTSxJQUFJSCxxREFBZUEsR0FBR00seUJBQXlCLENBQUNDLEtBQUs7OztvQkFBM0Q7Ozs7OztJQUNGO1dBRmVKOztTQUlBQyxxQkFBcUIsQ0FBdUQ7V0FBNUVBOztTQUFBQTtJQUFBQSx3QkFBZiw2QkFBb0MsS0FBdUQsRUFBRTtZQUF2REksU0FBU0MsS0FBS0MsVUFDOUNDLGNBTUlDOzs7O29CQVA0QkosVUFBRixNQUFFQSxTQUFTQyxNQUFYLE1BQVdBLEtBQUtDLFdBQWhCLE1BQWdCQTtvQkFDOUNDLGVBQWVIO29CQUNuQixJQUFJLENBQUNHLGdCQUFnQkYsS0FBSzt3QkFDeEJFLGVBQWUsSUFBc0IsT0FBbEJiLGtFQUFZQSxDQUFDVyxNQUFLO29CQUN2QyxDQUFDO3lCQUVHRSxjQUFBQTs7OztvQkFDSUMsZUFBeUM7d0JBQzdDSixTQUFTRzt3QkFDVEQsVUFBQUE7b0JBQ0Y7b0JBRUE7O3dCQUFNLElBQUlWLHFEQUFlQSxHQUFHTSx5QkFBeUIsQ0FBQ08sR0FBRyxDQUFDRDs7O29CQUExRDs7Ozs7Ozs7SUFFSjtXQWRlUjs7QUFnQmY7Ozs7Ozs7Q0FPQyxHQUNNLFNBQWVVLGNBQWNDLEtBQTZCO1dBQTNDRDtDQTZCckI7U0E3QnFCQTtJQUFBQSxpQkFBZiw2QkFBNkJDLEtBQTZCLEVBQUU7WUFDakNBLCtCQUFBQSwyQkFBMUJDLFNBR3lDRCxjQUt2Q0UsUUFLQ0MsR0FDRkEsWUFBQUE7UUFHUCxTQUFTQyxLQUFLQyxLQUFhLEVBQUU7WUFDM0JDLFFBQVFDLElBQUksQ0FBQyxpREFBaURGO1lBQzlERyxRQUFRO2dCQUNOQyxTQUFTLEtBQUs7Z0JBQ2RKLE9BQUFBO1lBQ0Y7UUFDRjtRQUVBLFNBQVNHLFFBQVdOLE1BQXFDLEVBQUU7WUFDekRGLE1BQU1VLEtBQUssQ0FBQyxFQUFFLENBQUNDLFdBQVcsQ0FBQ1QsbUJBQUFBLG9CQUFBQSxTQUFVLENBQUMsQ0FBQztRQUN6Qzs7OztvQkEzQk1ELFVBQVVmLGVBQWUsQ0FBQ2MsQ0FBQUEsNEJBQUFBLENBQUFBLGNBQUFBLE1BQU1ZLElBQUksY0FBVloseUJBQUFBLEtBQUFBLElBQUFBLG9CQUFBQSxZQUFZYSxnREFBWmIsS0FBQUEsSUFBQUEsaUJBQWtCYyx3QkFBbEJkLHVDQUFBQSw0QkFBZ0MsRUFBRSxDQUFDO29CQUVuRSxJQUFJLENBQUNDLFNBQVM7O3dCQUNaRyxLQUFLLHdDQUF5RCxPQUFqQkosQ0FBQUEsZUFBQUEsTUFBTVksSUFBSSxjQUFWWiwwQkFBQUEsS0FBQUEsSUFBQUEsYUFBWWEsSUFBSSxFQUFDO3dCQUM5RDs7O29CQUNGLENBQUM7Ozs7Ozs7OztvQkFHZ0I7O3dCQUFNWixRQUFRRCxNQUFNWSxJQUFJOzs7b0JBQWpDVixTQUFTO29CQUNmTSxRQUFRO3dCQUNOQyxTQUFTLElBQUk7d0JBQ2JQLFFBQUFBO29CQUNGOzs7Ozs7b0JBQ09DO29CQUNQQyxLQUFLRCxDQUFBQSxPQUFBQSxDQUFBQSxhQUFBQSxjQUFBQSxlQUFBQSxLQUFBQSxJQUFBQSxFQUFHWSxPQUFPLGNBQVZaLHdCQUFBQSxhQUFjQSxjQUFBQSxlQUFBQSxLQUFBQSxJQUFBQSxFQUFHVyxRQUFRLEVBQUUsY0FBM0JYLGtCQUFBQSxPQUErQixnQkFBZ0I7Ozs7Ozs7Ozs7O0lBY3hEO1dBN0JzQkoiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL3NlcnZpY2Utd29ya2VyL21lc3NhZ2UudHM/NGUwNSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIE1lc3NhZ2VTZXJ2aWNlV29ya2VyUmVzdWx0LFxuICBPbkltcG9ydE1hcENoYW5nZWRNZXNzYWdlLFxuICBSZWdpc3RlckR5bmFtaWNSb3V0ZU1lc3NhZ2UsXG59IGZyb20gJ0BvcGVubXJzL2VzbS1vZmZsaW5lJztcbmltcG9ydCBlc2NhcGVSZWdFeHAgZnJvbSAnbG9kYXNoLWVzL2VzY2FwZVJlZ0V4cCc7XG5pbXBvcnQgeyBjYWNoZUltcG9ydE1hcFJlZmVyZW5jZXMgfSBmcm9tICcuL2NhY2hpbmcnO1xuaW1wb3J0IHsgRHluYW1pY1JvdXRlUmVnaXN0cmF0aW9uLCBTZXJ2aWNlV29ya2VyRGIgfSBmcm9tICcuL3N0b3JhZ2UnO1xuXG5jb25zdCBtZXNzYWdlSGFuZGxlcnMgPSB7XG4gIG9uSW1wb3J0TWFwQ2hhbmdlZCxcbiAgY2xlYXJEeW5hbWljUm91dGVzLFxuICByZWdpc3RlckR5bmFtaWNSb3V0ZSxcbn07XG5cbmFzeW5jIGZ1bmN0aW9uIG9uSW1wb3J0TWFwQ2hhbmdlZCh7IGltcG9ydE1hcCB9OiBPbkltcG9ydE1hcENoYW5nZWRNZXNzYWdlKSB7XG4gIGF3YWl0IGNhY2hlSW1wb3J0TWFwUmVmZXJlbmNlcyhpbXBvcnRNYXApO1xufVxuXG5hc3luYyBmdW5jdGlvbiBjbGVhckR5bmFtaWNSb3V0ZXMoKSB7XG4gIGF3YWl0IG5ldyBTZXJ2aWNlV29ya2VyRGIoKS5keW5hbWljUm91dGVSZWdpc3RyYXRpb25zLmNsZWFyKCk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlZ2lzdGVyRHluYW1pY1JvdXRlKHsgcGF0dGVybiwgdXJsLCBzdHJhdGVneSB9OiBSZWdpc3RlckR5bmFtaWNSb3V0ZU1lc3NhZ2UpIHtcbiAgbGV0IGZpbmFsUGF0dGVybiA9IHBhdHRlcm47XG4gIGlmICghZmluYWxQYXR0ZXJuICYmIHVybCkge1xuICAgIGZpbmFsUGF0dGVybiA9IGBeJHtlc2NhcGVSZWdFeHAodXJsKX0kYDtcbiAgfVxuXG4gIGlmIChmaW5hbFBhdHRlcm4pIHtcbiAgICBjb25zdCByZWdpc3RyYXRpb246IER5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbiA9IHtcbiAgICAgIHBhdHRlcm46IGZpbmFsUGF0dGVybixcbiAgICAgIHN0cmF0ZWd5LFxuICAgIH07XG5cbiAgICBhd2FpdCBuZXcgU2VydmljZVdvcmtlckRiKCkuZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucy5wdXQocmVnaXN0cmF0aW9uKTtcbiAgfVxufVxuXG4vKipcbiAqIEludm9rZWQgd2hlbiB0aGUgc2VydmljZSB3b3JrZXIgcmVjZWl2ZXMgYSBtZXNzYWdlLlxuICogTWF0Y2hlcyB0aGUgbWVzc2FnZSB0byBhIGhhbmRsZXIsIGludm9rZXMgdGhhdCBoYW5kbGVyIGFuZCBkaXNwYXRjaGVzIHRoZSByZXN1bHQgcmV0dXJuZWRcbiAqIGJ5IHRoZSBoYW5kbGVyIGJhY2sgdG8gdGhlIHdpbmRvdy5cbiAqXG4gKiBGb3IgdGhpcyB0byB3b3JrLCB0aGUgbWVzc2FnZSBuZWVkcyB0byBoYXZlIGEgZGVmaW5lZCBmb3JtYXQuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGV2ZW50IGRhdGEgY29udGFpbmluZyB0aGUgbWVzc2FnZSBkaXNwYXRjaGVkIHRvIHRoZSBTZXJ2aWNlIFdvcmtlci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZU1lc3NhZ2UoZXZlbnQ6IEV4dGVuZGFibGVNZXNzYWdlRXZlbnQpIHtcbiAgY29uc3QgaGFuZGxlciA9IG1lc3NhZ2VIYW5kbGVyc1tldmVudC5kYXRhPy50eXBlPy50b1N0cmluZygpID8/ICcnXTtcblxuICBpZiAoIWhhbmRsZXIpIHtcbiAgICBmYWlsKGBSZWNlaXZlZCBhbiB1bmtub3duIG1lc3NhZ2Ugb2YgdHlwZSBcIiR7ZXZlbnQuZGF0YT8udHlwZX0gd2hpY2ggY2Fubm90IGJlIGhhbmRsZWQuYCk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBoYW5kbGVyKGV2ZW50LmRhdGEpO1xuICAgIHJlc29sdmUoe1xuICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgIHJlc3VsdCxcbiAgICB9KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGZhaWwoZT8ubWVzc2FnZSA/PyBlPy50b1N0cmluZygpID8/ICdVbmtub3duIGVycm9yLicpO1xuICB9XG5cbiAgZnVuY3Rpb24gZmFpbChlcnJvcjogc3RyaW5nKSB7XG4gICAgY29uc29sZS53YXJuKCdbU1ddIEhhbmRsaW5nIGEgbWVzc2FnZSByZXN1bHRlZCBpbiBhbiBlcnJvci4nLCBlcnJvcik7XG4gICAgcmVzb2x2ZSh7XG4gICAgICBzdWNjZXNzOiBmYWxzZSxcbiAgICAgIGVycm9yLFxuICAgIH0pO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVzb2x2ZTxUPihyZXN1bHQ6IE1lc3NhZ2VTZXJ2aWNlV29ya2VyUmVzdWx0PFQ+KSB7XG4gICAgZXZlbnQucG9ydHNbMF0ucG9zdE1lc3NhZ2UocmVzdWx0ID8/IHt9KTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbImVzY2FwZVJlZ0V4cCIsImNhY2hlSW1wb3J0TWFwUmVmZXJlbmNlcyIsIlNlcnZpY2VXb3JrZXJEYiIsIm1lc3NhZ2VIYW5kbGVycyIsIm9uSW1wb3J0TWFwQ2hhbmdlZCIsImNsZWFyRHluYW1pY1JvdXRlcyIsInJlZ2lzdGVyRHluYW1pY1JvdXRlIiwiaW1wb3J0TWFwIiwiZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucyIsImNsZWFyIiwicGF0dGVybiIsInVybCIsInN0cmF0ZWd5IiwiZmluYWxQYXR0ZXJuIiwicmVnaXN0cmF0aW9uIiwicHV0IiwiaGFuZGxlTWVzc2FnZSIsImV2ZW50IiwiaGFuZGxlciIsInJlc3VsdCIsImUiLCJmYWlsIiwiZXJyb3IiLCJjb25zb2xlIiwid2FybiIsInJlc29sdmUiLCJzdWNjZXNzIiwicG9ydHMiLCJwb3N0TWVzc2FnZSIsImRhdGEiLCJ0eXBlIiwidG9TdHJpbmciLCJtZXNzYWdlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/service-worker/message.ts\n");
646
646
 
647
647
  /***/ }),
648
648
 
@@ -653,7 +653,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
653
653
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
654
654
 
655
655
  "use strict";
656
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ registerAllOmrsRoutes: () => (/* binding */ registerAllOmrsRoutes)\n/* harmony export */ });\n/* harmony import */ var workbox_routing__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! workbox-routing */ \"../../../node_modules/workbox-routing/index.mjs\");\n/* harmony import */ var workbox_routing_utils_getOrCreateDefaultRouter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! workbox-routing/utils/getOrCreateDefaultRouter */ \"../../../node_modules/workbox-routing/utils/getOrCreateDefaultRouter.js\");\n/* harmony import */ var workbox_routing_utils_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! workbox-routing/utils/constants */ \"../../../node_modules/workbox-routing/utils/constants.js\");\n/* harmony import */ var workbox_strategies__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! workbox-strategies */ \"../../../node_modules/workbox-strategies/index.mjs\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./storage */ \"./src/service-worker/storage.ts\");\n/* harmony import */ var _http_header_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./http-header-utils */ \"./src/service-worker/http-header-utils.ts\");\n/* harmony import */ var lodash_es_uniq__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash-es/uniq */ \"../../../node_modules/lodash-es/uniq.js\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return(g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g);\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\n\n\n\n\n\nvar networkOnly = new workbox_strategies__WEBPACK_IMPORTED_MODULE_3__.NetworkOnly();\nvar cacheOnly = new workbox_strategies__WEBPACK_IMPORTED_MODULE_3__.CacheOnly({\n cacheName: _constants__WEBPACK_IMPORTED_MODULE_4__.omrsCacheName\n});\nvar networkFirst = new workbox_strategies__WEBPACK_IMPORTED_MODULE_3__.NetworkFirst({\n cacheName: _constants__WEBPACK_IMPORTED_MODULE_4__.omrsCacheName\n});\nvar defaultStrategy = \"network-only-or-cache-only\";\nvar _obj;\nvar knownStrategyHandlers = (_obj = {}, _define_property(_obj, \"network-first\", function(options) {\n return networkFirst.handle(options);\n}), _define_property(_obj, \"network-only-or-cache-only\", function() {\n var _ref = _async_to_generator(function(options) {\n var e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _state.trys.push([\n 0,\n 2,\n ,\n 4\n ]);\n return [\n 4,\n networkOnly.handle(options)\n ];\n case 1:\n return [\n 2,\n _state.sent()\n ];\n case 2:\n e = _state.sent();\n return [\n 4,\n cacheOnly.handle(options)\n ];\n case 3:\n return [\n 2,\n _state.sent()\n ];\n case 4:\n return [\n 2\n ];\n }\n });\n });\n return function(options) {\n return _ref.apply(this, arguments);\n };\n}()), _obj);\n/**\n * Registers required Workbox routes used by the service worker to provide offline functionality.\n */ function registerAllOmrsRoutes() {\n // Navigation requests are, when unresolvable via network (i.e. when offline), routed back\n // to the SPA's index (which should always be precached).\n // This ensures that the page loads correctly when a new navigation occurs to pages\n // like `/openmrs/spa/anything/nested`.\n (0,workbox_routing__WEBPACK_IMPORTED_MODULE_0__.registerRoute)(function(param) {\n var request = param.request;\n return request.mode === \"navigate\";\n }, navigationHandler);\n // Fallback routing behavior.\n // Checks if a dynamic route registration exists and, if so, handles it using a Network First approach.\n // Otherwise falls back to a NetworkOnly - CacheOnly behavior.\n //\n // The latter ensures that:\n // a) precached files (like the app shell and files resolved from the importmap) are returned when offline.\n // b) anything else (e.g. API requests) is not cached.\n var router = (0,workbox_routing_utils_getOrCreateDefaultRouter__WEBPACK_IMPORTED_MODULE_1__.getOrCreateDefaultRouter)();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;\n try {\n for(var _iterator = workbox_routing_utils_constants__WEBPACK_IMPORTED_MODULE_2__.validMethods[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){\n var method = _step.value;\n router.setDefaultHandler(defaultHandler, method);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally{\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally{\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nfunction navigationHandler(options) {\n return _navigationHandler.apply(this, arguments);\n}\nfunction _navigationHandler() {\n _navigationHandler = _async_to_generator(function(options) {\n var e, cache, response;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _state.trys.push([\n 0,\n 2,\n ,\n 5\n ]);\n return [\n 4,\n networkOnly.handle(options)\n ];\n case 1:\n return [\n 2,\n _state.sent()\n ];\n case 2:\n e = _state.sent();\n return [\n 4,\n caches.open(_constants__WEBPACK_IMPORTED_MODULE_4__.omrsCacheName)\n ];\n case 3:\n cache = _state.sent();\n return [\n 4,\n cache.match(_constants__WEBPACK_IMPORTED_MODULE_4__.indexUrl)\n ];\n case 4:\n response = _state.sent();\n return [\n 2,\n response !== null && response !== void 0 ? response : Response.error()\n ];\n case 5:\n return [\n 2\n ];\n }\n });\n });\n return _navigationHandler.apply(this, arguments);\n}\nfunction defaultHandler(options) {\n return _defaultHandler.apply(this, arguments);\n}\nfunction _defaultHandler() {\n _defaultHandler = _async_to_generator(function(options) {\n var request, handlerKey, _tmp, _knownStrategyHandlers_handlerKey, handler, e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n request = options.request;\n if (!(options.request.method === \"GET\")) return [\n 3,\n 2\n ];\n return [\n 4,\n getHandlerKey(options)\n ];\n case 1:\n _tmp = _state.sent();\n return [\n 3,\n 3\n ];\n case 2:\n _tmp = defaultStrategy;\n _state.label = 3;\n case 3:\n handlerKey = _tmp;\n handler = (_knownStrategyHandlers_handlerKey = knownStrategyHandlers[handlerKey]) !== null && _knownStrategyHandlers_handlerKey !== void 0 ? _knownStrategyHandlers_handlerKey : knownStrategyHandlers[defaultStrategy];\n _state.label = 4;\n case 4:\n _state.trys.push([\n 4,\n 6,\n ,\n 7\n ]);\n return [\n 4,\n handler(options)\n ];\n case 5:\n return [\n 2,\n _state.sent()\n ];\n case 6:\n e = _state.sent();\n console.warn(\"[SW] Could not handle the request to %s (using handler %s).\", request.url, handlerKey, e);\n return [\n 2,\n new Response((0,_http_header_utils__WEBPACK_IMPORTED_MODULE_6__.parseOmrsOfflineResponseBodyHeader)(request.headers), {\n status: (0,_http_header_utils__WEBPACK_IMPORTED_MODULE_6__.parseOmrsOfflineResponseStatusHeader)(request.headers)\n })\n ];\n case 7:\n return [\n 2\n ];\n }\n });\n });\n return _defaultHandler.apply(this, arguments);\n}\nfunction getHandlerKey(_) {\n return _getHandlerKey.apply(this, arguments);\n}\nfunction _getHandlerKey() {\n _getHandlerKey = _async_to_generator(function(param) {\n var request, _getHandlerKeyFromHeaders, _tmp;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n request = param.request;\n if (!((_getHandlerKeyFromHeaders = getHandlerKeyFromHeaders(request.headers)) !== null && _getHandlerKeyFromHeaders !== void 0)) return [\n 3,\n 1\n ];\n _tmp = _getHandlerKeyFromHeaders;\n return [\n 3,\n 3\n ];\n case 1:\n return [\n 4,\n getHandlerKeyFromDynamicRouteRegistrations(request.url)\n ];\n case 2:\n _tmp = _state.sent();\n _state.label = 3;\n case 3:\n return [\n 2,\n _tmp\n ];\n }\n });\n });\n return _getHandlerKey.apply(this, arguments);\n}\nfunction getHandlerKeyFromHeaders(headers) {\n return (0,_http_header_utils__WEBPACK_IMPORTED_MODULE_6__.getOmrsHeader)(headers, _constants__WEBPACK_IMPORTED_MODULE_4__.omrsOfflineCachingStrategyHttpHeaderName);\n}\nfunction getHandlerKeyFromDynamicRouteRegistrations(url) {\n return _getHandlerKeyFromDynamicRouteRegistrations.apply(this, arguments);\n}\nfunction _getHandlerKeyFromDynamicRouteRegistrations() {\n _getHandlerKeyFromDynamicRouteRegistrations = _async_to_generator(function(url) {\n var db, allDynamicRouteRegistrations, _route_strategy, strategies, priorities, _priorities_find;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n db = new _storage__WEBPACK_IMPORTED_MODULE_5__.ServiceWorkerDb();\n return [\n 4,\n db.dynamicRouteRegistrations.toArray()\n ];\n case 1:\n allDynamicRouteRegistrations = _state.sent();\n strategies = (0,lodash_es_uniq__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(allDynamicRouteRegistrations.filter(function(route) {\n return new RegExp(route.pattern).test(url);\n }).map(function(route) {\n return (_route_strategy = route.strategy) !== null && _route_strategy !== void 0 ? _route_strategy : \"network-first\";\n }));\n if (strategies.length <= 1) {\n return [\n 2,\n strategies[0]\n ];\n } else {\n priorities = [\n \"network-first\",\n \"network-only-or-cache-only\"\n ];\n ;\n return [\n 2,\n (_priorities_find = priorities.find(function(prioritizedStrategy) {\n return strategies.some(function(strategy) {\n return strategy === prioritizedStrategy;\n });\n })) !== null && _priorities_find !== void 0 ? _priorities_find : defaultStrategy\n ];\n }\n return [\n 2\n ];\n }\n });\n });\n return _getHandlerKeyFromDynamicRouteRegistrations.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvcm91dGluZy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNnRDtBQUMwQztBQUMzQjtBQUNXO0FBS3JEO0FBQ3VCO0FBS2Y7QUFFSztBQUVsQyxJQUFNYyxjQUFjLElBQUlULDJEQUFXQTtBQUNuQyxJQUFNVSxZQUFZLElBQUlaLHlEQUFTQSxDQUFDO0lBQUVhLFdBQVdULHFEQUFhQTtBQUFDO0FBQzNELElBQU1VLGVBQWUsSUFBSWIsNERBQVlBLENBQUM7SUFBRVksV0FBV1QscURBQWFBO0FBQUM7QUFFakUsSUFBTVcsa0JBQ0o7SUFJRTtBQUhKLElBQU1DLHlCQUdGLFdBQ0YsaUJBREUsTUFDRCxpQkFBa0IsU0FBQ0M7V0FBWUgsYUFBYUksTUFBTSxDQUFDRDtxQkFEbEQsTUFFRDtlQUErQiw2QkFDOUJBLFNBQ0c7WUFHTUU7Ozs7Ozs7Ozs7b0JBREE7O3dCQUFNUixZQUFZTyxNQUFNLENBQUNEOzs7b0JBQWhDOzt3QkFBTzs7O29CQUNBRTtvQkFDQTs7d0JBQU1QLFVBQVVNLE1BQU0sQ0FBQ0Q7OztvQkFBOUI7O3dCQUFPOzs7Ozs7OztJQUVYO29CQVBFQTs7O01BSEE7QUFhSjs7Q0FFQyxHQUNNLFNBQVNHLHdCQUF3QjtJQUN0QywwRkFBMEY7SUFDMUYseURBQXlEO0lBQ3pELG1GQUFtRjtJQUNuRix1Q0FBdUM7SUFDdkN2Qiw4REFBYUEsQ0FDWDtZQUFHd0IsZ0JBQUFBO2VBQWNBLFFBQVFDLElBQUksS0FBSztPQUNsQ0M7SUFHRiw2QkFBNkI7SUFDN0IsdUdBQXVHO0lBQ3ZHLDhEQUE4RDtJQUM5RCxFQUFFO0lBQ0YsMkJBQTJCO0lBQzNCLDJHQUEyRztJQUMzRyxzREFBc0Q7SUFDdEQsSUFBTUMsU0FBUzFCLHdHQUF3QkE7UUFDbEM7O1FBQUwsUUFBSyxZQUFnQkMseUVBQVlBLHFCQUE1Qix3R0FBOEI7WUFBOUIsSUFBTTBCLFNBQU47WUFDSEQsT0FBT0UsaUJBQWlCLENBQUNDLGdCQUFnQkY7UUFDM0M7O1FBRks7UUFBQTs7O2lCQUFBO2dCQUFBOzs7Z0JBQUE7c0JBQUE7Ozs7QUFHUCxDQUFDO1NBRWNGLGtCQUFrQk4sT0FBb0M7V0FBdERNOztTQUFBQTtJQUFBQSxxQkFBZiw2QkFBaUNOLE9BQW9DLEVBQUU7WUFHNURFLEdBQ0RTLE9BQ0FDOzs7Ozs7Ozs7O29CQUhDOzt3QkFBTWxCLFlBQVlPLE1BQU0sQ0FBQ0Q7OztvQkFBaEM7O3dCQUFPOzs7b0JBQ0FFO29CQUNPOzt3QkFBTVcsT0FBT0MsSUFBSSxDQUFDM0IscURBQWFBOzs7b0JBQXZDd0IsUUFBUTtvQkFDRzs7d0JBQU1BLE1BQU1JLEtBQUssQ0FBQzdCLGdEQUFRQTs7O29CQUFyQzBCLFdBQVc7b0JBQ2pCOzt3QkFBT0EscUJBQUFBLHNCQUFBQSxXQUFZSSxTQUFTQyxLQUFLLEVBQUU7Ozs7Ozs7O0lBRXZDO1dBUmVYOztTQVVBSSxlQUFlVixPQUFvQztXQUFuRFU7O1NBQUFBO0lBQUFBLGtCQUFmLDZCQUE4QlYsT0FBb0MsRUFBRTtZQUMxREksU0FDRmMsa0JBS0puQixtQ0FESW9CLFNBS0dqQjs7OztvQkFWREUsVUFBWUosUUFBWkk7eUJBRU5KLENBQUFBLFFBQVFJLE9BQU8sQ0FBQ0ksTUFBTSxLQUFLLEtBQUksR0FBL0JSOzs7O29CQUNJOzt3QkFBTW9CLGNBQWNwQjs7OzJCQUFwQjs7Ozs7OzJCQUNBRjs7O29CQUhBb0I7b0JBSUFDLFVBQ0pwQixDQUFBQSxvQ0FBQUEscUJBQXFCLENBQUNtQixXQUFXLGNBQWpDbkIsK0NBQUFBLG9DQUFxQ0EscUJBQXFCLENBQUNELGdCQUFnQjs7Ozs7Ozs7O29CQUdwRTs7d0JBQU1xQixRQUFRbkI7OztvQkFBckI7O3dCQUFPOzs7b0JBQ0FFO29CQUNQbUIsUUFBUUMsSUFBSSxDQUNWLCtEQUNBbEIsUUFBUW1CLEdBQUcsRUFDWEwsWUFDQWhCO29CQUdGOzt3QkFBTyxJQUFJYyxTQUFTekIsc0ZBQWtDQSxDQUFDYSxRQUFRb0IsT0FBTyxHQUFHOzRCQUN2RUMsUUFBUWpDLHdGQUFvQ0EsQ0FBQ1ksUUFBUW9CLE9BQU87d0JBQzlEOzs7Ozs7OztJQUVKO1dBdkJlZDs7U0F5QkFVLGNBQWMsQ0FBd0M7V0FBdERBOztTQUFBQTtJQUFBQSxpQkFBZiw2QkFBNkIsS0FBd0MsRUFBRTtZQUF4Q2hCLFNBRTNCc0I7Ozs7b0JBRjJCdEIsVUFBRixNQUFFQTsyQkFFM0JzQiw0QkFBQUEseUJBQXlCdEIsUUFBUW9CLE9BQU8sZUFBeENFOzs7OzJCQUFBQTs7Ozs7O29CQUNDOzt3QkFBTUMsMkNBQTJDdkIsUUFBUW1CLEdBQUc7OzsyQkFBNUQ7OztvQkFGSDs7Ozs7O0lBSUY7V0FMZUg7O0FBT2YsU0FBU00seUJBQXlCRixPQUFnQixFQUFFO0lBQ2xELE9BQU9sQyxpRUFBYUEsQ0FBQ2tDLFNBQVNwQyxnRkFBd0NBO0FBQ3hFO1NBRWV1QywyQ0FBMkNKLEdBQVc7V0FBdERJOztTQUFBQTtJQUFBQSw4Q0FBZiw2QkFBMERKLEdBQVcsRUFBRTtZQUMvREssSUFDQUMsOEJBS2NDLGlCQUhkQyxZQVdFQyxZQU1KQTs7OztvQkFwQkVKLEtBQUssSUFBSXZDLHFEQUFlQTtvQkFFNUI7O3dCQUFNdUMsR0FBR0sseUJBQXlCLENBQUNDLE9BQU87OztvQkFEdENMLCtCQUNKO29CQUNJRSxhQUFhdEMsMERBQUlBLENBQ3JCb0MsNkJBQ0dNLE1BQU0sQ0FBQyxTQUFDTDsrQkFBVSxJQUFJTSxPQUFPTixNQUFNTyxPQUFPLEVBQUVDLElBQUksQ0FBQ2Y7dUJBQ2pEZ0IsR0FBRyxDQUFDLFNBQUNUOytCQUFVQSxDQUFBQSxrQkFBQUEsTUFBTVUsUUFBUSxjQUFkViw2QkFBQUEsa0JBQWtCLGVBQWU7O29CQUdyRCxJQUFJQyxXQUFXVSxNQUFNLElBQUksR0FBRzt3QkFDMUI7OzRCQUFPVixVQUFVLENBQUMsRUFBRTs7b0JBQ3RCLE9BQU87d0JBR0NDOzRCQUNKOzRCQUNBOzs7d0JBR0Y7OzRCQUNFQSxDQUFBQSxtQkFBQUEsV0FBV1UsSUFBSSxDQUFDLFNBQUNDO3VDQUNmWixXQUFXYSxJQUFJLENBQUMsU0FBQ0o7MkNBQWFBLGFBQWFHOzs0Q0FEN0NYLDhCQUFBQSxtQkFFS2xDLGVBQWU7O29CQUV4QixDQUFDOzs7Ozs7SUFDSDtXQTFCZTZCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQG9wZW5tcnMvZXNtLWFwcC1zaGVsbC8uL3NyYy9zZXJ2aWNlLXdvcmtlci9yb3V0aW5nLnRzP2VjZGIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVIYW5kbGVyQ2FsbGJhY2tPcHRpb25zIH0gZnJvbSBcIndvcmtib3gtY29yZVwiO1xuaW1wb3J0IHsgcmVnaXN0ZXJSb3V0ZSB9IGZyb20gXCJ3b3JrYm94LXJvdXRpbmdcIjtcbmltcG9ydCB7IGdldE9yQ3JlYXRlRGVmYXVsdFJvdXRlciB9IGZyb20gXCJ3b3JrYm94LXJvdXRpbmcvdXRpbHMvZ2V0T3JDcmVhdGVEZWZhdWx0Um91dGVyXCI7XG5pbXBvcnQgeyB2YWxpZE1ldGhvZHMgfSBmcm9tIFwid29ya2JveC1yb3V0aW5nL3V0aWxzL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQ2FjaGVPbmx5LCBOZXR3b3JrRmlyc3QsIE5ldHdvcmtPbmx5IH0gZnJvbSBcIndvcmtib3gtc3RyYXRlZ2llc1wiO1xuaW1wb3J0IHtcbiAgaW5kZXhVcmwsXG4gIG9tcnNDYWNoZU5hbWUsXG4gIG9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5SHR0cEhlYWRlck5hbWUsXG59IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgU2VydmljZVdvcmtlckRiIH0gZnJvbSBcIi4vc3RvcmFnZVwiO1xuaW1wb3J0IHtcbiAgZ2V0T21yc0hlYWRlcixcbiAgcGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlQm9keUhlYWRlcixcbiAgcGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSGVhZGVyLFxufSBmcm9tIFwiLi9odHRwLWhlYWRlci11dGlsc1wiO1xuaW1wb3J0IHR5cGUgeyBPbXJzT2ZmbGluZUNhY2hpbmdTdHJhdGVneSB9IGZyb20gXCJAb3Blbm1ycy9lc20tb2ZmbGluZVwiO1xuaW1wb3J0IHVuaXEgZnJvbSBcImxvZGFzaC1lcy91bmlxXCI7XG5cbmNvbnN0IG5ldHdvcmtPbmx5ID0gbmV3IE5ldHdvcmtPbmx5KCk7XG5jb25zdCBjYWNoZU9ubHkgPSBuZXcgQ2FjaGVPbmx5KHsgY2FjaGVOYW1lOiBvbXJzQ2FjaGVOYW1lIH0pO1xuY29uc3QgbmV0d29ya0ZpcnN0ID0gbmV3IE5ldHdvcmtGaXJzdCh7IGNhY2hlTmFtZTogb21yc0NhY2hlTmFtZSB9KTtcblxuY29uc3QgZGVmYXVsdFN0cmF0ZWd5OiBPbXJzT2ZmbGluZUNhY2hpbmdTdHJhdGVneSA9XG4gIFwibmV0d29yay1vbmx5LW9yLWNhY2hlLW9ubHlcIjtcbmNvbnN0IGtub3duU3RyYXRlZ3lIYW5kbGVyczogUmVjb3JkPFxuICBPbXJzT2ZmbGluZUNhY2hpbmdTdHJhdGVneSxcbiAgKG9wdGlvbnM6IFJvdXRlSGFuZGxlckNhbGxiYWNrT3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZT5cbj4gPSB7XG4gIFtcIm5ldHdvcmstZmlyc3RcIl06IChvcHRpb25zKSA9PiBuZXR3b3JrRmlyc3QuaGFuZGxlKG9wdGlvbnMpLFxuICBbXCJuZXR3b3JrLW9ubHktb3ItY2FjaGUtb25seVwiXTogYXN5bmMgKFxuICAgIG9wdGlvbnM6IFJvdXRlSGFuZGxlckNhbGxiYWNrT3B0aW9uc1xuICApID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IG5ldHdvcmtPbmx5LmhhbmRsZShvcHRpb25zKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gYXdhaXQgY2FjaGVPbmx5LmhhbmRsZShvcHRpb25zKTtcbiAgICB9XG4gIH0sXG59O1xuXG4vKipcbiAqIFJlZ2lzdGVycyByZXF1aXJlZCBXb3JrYm94IHJvdXRlcyB1c2VkIGJ5IHRoZSBzZXJ2aWNlIHdvcmtlciB0byBwcm92aWRlIG9mZmxpbmUgZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyQWxsT21yc1JvdXRlcygpIHtcbiAgLy8gTmF2aWdhdGlvbiByZXF1ZXN0cyBhcmUsIHdoZW4gdW5yZXNvbHZhYmxlIHZpYSBuZXR3b3JrIChpLmUuIHdoZW4gb2ZmbGluZSksIHJvdXRlZCBiYWNrXG4gIC8vIHRvIHRoZSBTUEEncyBpbmRleCAod2hpY2ggc2hvdWxkIGFsd2F5cyBiZSBwcmVjYWNoZWQpLlxuICAvLyBUaGlzIGVuc3VyZXMgdGhhdCB0aGUgcGFnZSBsb2FkcyBjb3JyZWN0bHkgd2hlbiBhIG5ldyBuYXZpZ2F0aW9uIG9jY3VycyB0byBwYWdlc1xuICAvLyBsaWtlIGAvb3Blbm1ycy9zcGEvYW55dGhpbmcvbmVzdGVkYC5cbiAgcmVnaXN0ZXJSb3V0ZShcbiAgICAoeyByZXF1ZXN0IH0pID0+IHJlcXVlc3QubW9kZSA9PT0gXCJuYXZpZ2F0ZVwiLFxuICAgIG5hdmlnYXRpb25IYW5kbGVyXG4gICk7XG5cbiAgLy8gRmFsbGJhY2sgcm91dGluZyBiZWhhdmlvci5cbiAgLy8gQ2hlY2tzIGlmIGEgZHluYW1pYyByb3V0ZSByZWdpc3RyYXRpb24gZXhpc3RzIGFuZCwgaWYgc28sIGhhbmRsZXMgaXQgdXNpbmcgYSBOZXR3b3JrIEZpcnN0IGFwcHJvYWNoLlxuICAvLyBPdGhlcndpc2UgZmFsbHMgYmFjayB0byBhIE5ldHdvcmtPbmx5IC0gQ2FjaGVPbmx5IGJlaGF2aW9yLlxuICAvL1xuICAvLyBUaGUgbGF0dGVyIGVuc3VyZXMgdGhhdDpcbiAgLy8gYSkgcHJlY2FjaGVkIGZpbGVzIChsaWtlIHRoZSBhcHAgc2hlbGwgYW5kIGZpbGVzIHJlc29sdmVkIGZyb20gdGhlIGltcG9ydG1hcCkgYXJlIHJldHVybmVkIHdoZW4gb2ZmbGluZS5cbiAgLy8gYikgYW55dGhpbmcgZWxzZSAoZS5nLiBBUEkgcmVxdWVzdHMpIGlzIG5vdCBjYWNoZWQuXG4gIGNvbnN0IHJvdXRlciA9IGdldE9yQ3JlYXRlRGVmYXVsdFJvdXRlcigpO1xuICBmb3IgKGNvbnN0IG1ldGhvZCBvZiB2YWxpZE1ldGhvZHMpIHtcbiAgICByb3V0ZXIuc2V0RGVmYXVsdEhhbmRsZXIoZGVmYXVsdEhhbmRsZXIsIG1ldGhvZCk7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gbmF2aWdhdGlvbkhhbmRsZXIob3B0aW9uczogUm91dGVIYW5kbGVyQ2FsbGJhY2tPcHRpb25zKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IG5ldHdvcmtPbmx5LmhhbmRsZShvcHRpb25zKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnN0IGNhY2hlID0gYXdhaXQgY2FjaGVzLm9wZW4ob21yc0NhY2hlTmFtZSk7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjYWNoZS5tYXRjaChpbmRleFVybCk7XG4gICAgcmV0dXJuIHJlc3BvbnNlID8/IFJlc3BvbnNlLmVycm9yKCk7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gZGVmYXVsdEhhbmRsZXIob3B0aW9uczogUm91dGVIYW5kbGVyQ2FsbGJhY2tPcHRpb25zKSB7XG4gIGNvbnN0IHsgcmVxdWVzdCB9ID0gb3B0aW9ucztcbiAgY29uc3QgaGFuZGxlcktleSA9XG4gICAgb3B0aW9ucy5yZXF1ZXN0Lm1ldGhvZCA9PT0gXCJHRVRcIlxuICAgICAgPyBhd2FpdCBnZXRIYW5kbGVyS2V5KG9wdGlvbnMpXG4gICAgICA6IGRlZmF1bHRTdHJhdGVneTtcbiAgY29uc3QgaGFuZGxlciA9XG4gICAga25vd25TdHJhdGVneUhhbmRsZXJzW2hhbmRsZXJLZXldID8/IGtub3duU3RyYXRlZ3lIYW5kbGVyc1tkZWZhdWx0U3RyYXRlZ3ldO1xuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGhhbmRsZXIob3B0aW9ucyk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICBcIltTV10gQ291bGQgbm90IGhhbmRsZSB0aGUgcmVxdWVzdCB0byAlcyAodXNpbmcgaGFuZGxlciAlcykuXCIsXG4gICAgICByZXF1ZXN0LnVybCxcbiAgICAgIGhhbmRsZXJLZXksXG4gICAgICBlXG4gICAgKTtcblxuICAgIHJldHVybiBuZXcgUmVzcG9uc2UocGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlQm9keUhlYWRlcihyZXF1ZXN0LmhlYWRlcnMpLCB7XG4gICAgICBzdGF0dXM6IHBhcnNlT21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0hlYWRlcihyZXF1ZXN0LmhlYWRlcnMpLFxuICAgIH0pO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEhhbmRsZXJLZXkoeyByZXF1ZXN0IH06IFJvdXRlSGFuZGxlckNhbGxiYWNrT3B0aW9ucykge1xuICByZXR1cm4gKFxuICAgIGdldEhhbmRsZXJLZXlGcm9tSGVhZGVycyhyZXF1ZXN0LmhlYWRlcnMpID8/XG4gICAgKGF3YWl0IGdldEhhbmRsZXJLZXlGcm9tRHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucyhyZXF1ZXN0LnVybCkpXG4gICk7XG59XG5cbmZ1bmN0aW9uIGdldEhhbmRsZXJLZXlGcm9tSGVhZGVycyhoZWFkZXJzOiBIZWFkZXJzKSB7XG4gIHJldHVybiBnZXRPbXJzSGVhZGVyKGhlYWRlcnMsIG9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5SHR0cEhlYWRlck5hbWUpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRIYW5kbGVyS2V5RnJvbUR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnModXJsOiBzdHJpbmcpIHtcbiAgY29uc3QgZGIgPSBuZXcgU2VydmljZVdvcmtlckRiKCk7XG4gIGNvbnN0IGFsbER5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnMgPVxuICAgIGF3YWl0IGRiLmR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnMudG9BcnJheSgpO1xuICBjb25zdCBzdHJhdGVnaWVzID0gdW5pcShcbiAgICBhbGxEeW5hbWljUm91dGVSZWdpc3RyYXRpb25zXG4gICAgICAuZmlsdGVyKChyb3V0ZSkgPT4gbmV3IFJlZ0V4cChyb3V0ZS5wYXR0ZXJuKS50ZXN0KHVybCkpXG4gICAgICAubWFwKChyb3V0ZSkgPT4gcm91dGUuc3RyYXRlZ3kgPz8gXCJuZXR3b3JrLWZpcnN0XCIpXG4gICk7XG5cbiAgaWYgKHN0cmF0ZWdpZXMubGVuZ3RoIDw9IDEpIHtcbiAgICByZXR1cm4gc3RyYXRlZ2llc1swXTtcbiAgfSBlbHNlIHtcbiAgICAvLyBNdWx0aXBsZSByb3V0ZXMgY2FuIG1hdGNoIHRoZSBVUkwgKG11bHRpcGxlIFJlZ0V4cHMgY2FuIG1hdGNoKS5cbiAgICAvLyBJbiB0aGF0IGNhc2UsIHByaW9yaXRpemUgdGhlIGF2YWlsYWJsZSBzdHJhdGVnaWVzLiBXaGVuIGluIGRvdWJ0LCBjYWNoZSB0aGUgcmVzb3VyY2UgYWdhaW4uXG4gICAgY29uc3QgcHJpb3JpdGllczogQXJyYXk8T21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3k+ID0gW1xuICAgICAgXCJuZXR3b3JrLWZpcnN0XCIsXG4gICAgICBcIm5ldHdvcmstb25seS1vci1jYWNoZS1vbmx5XCIsXG4gICAgXTtcblxuICAgIHJldHVybiAoXG4gICAgICBwcmlvcml0aWVzLmZpbmQoKHByaW9yaXRpemVkU3RyYXRlZ3kpID0+XG4gICAgICAgIHN0cmF0ZWdpZXMuc29tZSgoc3RyYXRlZ3kpID0+IHN0cmF0ZWd5ID09PSBwcmlvcml0aXplZFN0cmF0ZWd5KVxuICAgICAgKSA/PyBkZWZhdWx0U3RyYXRlZ3lcbiAgICApO1xuICB9XG59XG4iXSwibmFtZXMiOlsicmVnaXN0ZXJSb3V0ZSIsImdldE9yQ3JlYXRlRGVmYXVsdFJvdXRlciIsInZhbGlkTWV0aG9kcyIsIkNhY2hlT25seSIsIk5ldHdvcmtGaXJzdCIsIk5ldHdvcmtPbmx5IiwiaW5kZXhVcmwiLCJvbXJzQ2FjaGVOYW1lIiwib21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3lIdHRwSGVhZGVyTmFtZSIsIlNlcnZpY2VXb3JrZXJEYiIsImdldE9tcnNIZWFkZXIiLCJwYXJzZU9tcnNPZmZsaW5lUmVzcG9uc2VCb2R5SGVhZGVyIiwicGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSGVhZGVyIiwidW5pcSIsIm5ldHdvcmtPbmx5IiwiY2FjaGVPbmx5IiwiY2FjaGVOYW1lIiwibmV0d29ya0ZpcnN0IiwiZGVmYXVsdFN0cmF0ZWd5Iiwia25vd25TdHJhdGVneUhhbmRsZXJzIiwib3B0aW9ucyIsImhhbmRsZSIsImUiLCJyZWdpc3RlckFsbE9tcnNSb3V0ZXMiLCJyZXF1ZXN0IiwibW9kZSIsIm5hdmlnYXRpb25IYW5kbGVyIiwicm91dGVyIiwibWV0aG9kIiwic2V0RGVmYXVsdEhhbmRsZXIiLCJkZWZhdWx0SGFuZGxlciIsImNhY2hlIiwicmVzcG9uc2UiLCJjYWNoZXMiLCJvcGVuIiwibWF0Y2giLCJSZXNwb25zZSIsImVycm9yIiwiaGFuZGxlcktleSIsImhhbmRsZXIiLCJnZXRIYW5kbGVyS2V5IiwiY29uc29sZSIsIndhcm4iLCJ1cmwiLCJoZWFkZXJzIiwic3RhdHVzIiwiZ2V0SGFuZGxlcktleUZyb21IZWFkZXJzIiwiZ2V0SGFuZGxlcktleUZyb21EeW5hbWljUm91dGVSZWdpc3RyYXRpb25zIiwiZGIiLCJhbGxEeW5hbWljUm91dGVSZWdpc3RyYXRpb25zIiwicm91dGUiLCJzdHJhdGVnaWVzIiwicHJpb3JpdGllcyIsImR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnMiLCJ0b0FycmF5IiwiZmlsdGVyIiwiUmVnRXhwIiwicGF0dGVybiIsInRlc3QiLCJtYXAiLCJzdHJhdGVneSIsImxlbmd0aCIsImZpbmQiLCJwcmlvcml0aXplZFN0cmF0ZWd5Iiwic29tZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/service-worker/routing.ts\n");
656
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ registerAllOmrsRoutes: () => (/* binding */ registerAllOmrsRoutes)\n/* harmony export */ });\n/* harmony import */ var workbox_routing__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! workbox-routing */ \"../../../node_modules/workbox-routing/index.mjs\");\n/* harmony import */ var workbox_routing_utils_getOrCreateDefaultRouter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! workbox-routing/utils/getOrCreateDefaultRouter */ \"../../../node_modules/workbox-routing/utils/getOrCreateDefaultRouter.js\");\n/* harmony import */ var workbox_routing_utils_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! workbox-routing/utils/constants */ \"../../../node_modules/workbox-routing/utils/constants.js\");\n/* harmony import */ var workbox_strategies__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! workbox-strategies */ \"../../../node_modules/workbox-strategies/index.mjs\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./constants */ \"./src/service-worker/constants.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./storage */ \"./src/service-worker/storage.ts\");\n/* harmony import */ var _http_header_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./http-header-utils */ \"./src/service-worker/http-header-utils.ts\");\n/* harmony import */ var lodash_es_uniq__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash-es/uniq */ \"../../../node_modules/lodash-es/uniq.js\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return(g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g);\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\n\n\n\n\n\nvar networkOnly = new workbox_strategies__WEBPACK_IMPORTED_MODULE_3__.NetworkOnly();\nvar cacheOnly = new workbox_strategies__WEBPACK_IMPORTED_MODULE_3__.CacheOnly({\n cacheName: _constants__WEBPACK_IMPORTED_MODULE_4__.omrsCacheName\n});\nvar networkFirst = new workbox_strategies__WEBPACK_IMPORTED_MODULE_3__.NetworkFirst({\n cacheName: _constants__WEBPACK_IMPORTED_MODULE_4__.omrsCacheName\n});\nvar defaultStrategy = \"network-only-or-cache-only\";\nvar _obj;\nvar knownStrategyHandlers = (_obj = {}, _define_property(_obj, \"network-first\", function(options) {\n return networkFirst.handle(options);\n}), _define_property(_obj, \"network-only-or-cache-only\", function() {\n var _ref = _async_to_generator(function(options) {\n var e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _state.trys.push([\n 0,\n 2,\n ,\n 4\n ]);\n return [\n 4,\n networkOnly.handle(options)\n ];\n case 1:\n return [\n 2,\n _state.sent()\n ];\n case 2:\n e = _state.sent();\n return [\n 4,\n cacheOnly.handle(options)\n ];\n case 3:\n return [\n 2,\n _state.sent()\n ];\n case 4:\n return [\n 2\n ];\n }\n });\n });\n return function(options) {\n return _ref.apply(this, arguments);\n };\n}()), _obj);\n/**\n * Registers required Workbox routes used by the service worker to provide offline functionality.\n */ function registerAllOmrsRoutes() {\n // Navigation requests are, when unresolvable via network (i.e. when offline), routed back\n // to the SPA's index (which should always be precached).\n // This ensures that the page loads correctly when a new navigation occurs to pages\n // like `/openmrs/spa/anything/nested`.\n (0,workbox_routing__WEBPACK_IMPORTED_MODULE_0__.registerRoute)(function(param) {\n var request = param.request;\n return request.mode === \"navigate\";\n }, navigationHandler);\n // Fallback routing behavior.\n // Checks if a dynamic route registration exists and, if so, handles it using a Network First approach.\n // Otherwise falls back to a NetworkOnly - CacheOnly behavior.\n //\n // The latter ensures that:\n // a) precached files (like the app shell and files resolved from the importmap) are returned when offline.\n // b) anything else (e.g. API requests) is not cached.\n var router = (0,workbox_routing_utils_getOrCreateDefaultRouter__WEBPACK_IMPORTED_MODULE_1__.getOrCreateDefaultRouter)();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;\n try {\n for(var _iterator = workbox_routing_utils_constants__WEBPACK_IMPORTED_MODULE_2__.validMethods[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){\n var method = _step.value;\n router.setDefaultHandler(defaultHandler, method);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally{\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally{\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nfunction navigationHandler(options) {\n return _navigationHandler.apply(this, arguments);\n}\nfunction _navigationHandler() {\n _navigationHandler = _async_to_generator(function(options) {\n var e, cache, response;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _state.trys.push([\n 0,\n 2,\n ,\n 5\n ]);\n return [\n 4,\n networkOnly.handle(options)\n ];\n case 1:\n return [\n 2,\n _state.sent()\n ];\n case 2:\n e = _state.sent();\n return [\n 4,\n caches.open(_constants__WEBPACK_IMPORTED_MODULE_4__.omrsCacheName)\n ];\n case 3:\n cache = _state.sent();\n return [\n 4,\n cache.match(_constants__WEBPACK_IMPORTED_MODULE_4__.indexUrl)\n ];\n case 4:\n response = _state.sent();\n return [\n 2,\n response !== null && response !== void 0 ? response : Response.error()\n ];\n case 5:\n return [\n 2\n ];\n }\n });\n });\n return _navigationHandler.apply(this, arguments);\n}\nfunction defaultHandler(options) {\n return _defaultHandler.apply(this, arguments);\n}\nfunction _defaultHandler() {\n _defaultHandler = _async_to_generator(function(options) {\n var request, handlerKey, _tmp, _knownStrategyHandlers_handlerKey, handler, e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n request = options.request;\n if (!(options.request.method === \"GET\")) return [\n 3,\n 2\n ];\n return [\n 4,\n getHandlerKey(options)\n ];\n case 1:\n _tmp = _state.sent();\n return [\n 3,\n 3\n ];\n case 2:\n _tmp = defaultStrategy;\n _state.label = 3;\n case 3:\n handlerKey = _tmp;\n handler = (_knownStrategyHandlers_handlerKey = knownStrategyHandlers[handlerKey]) !== null && _knownStrategyHandlers_handlerKey !== void 0 ? _knownStrategyHandlers_handlerKey : knownStrategyHandlers[defaultStrategy];\n _state.label = 4;\n case 4:\n _state.trys.push([\n 4,\n 6,\n ,\n 7\n ]);\n return [\n 4,\n handler(options)\n ];\n case 5:\n return [\n 2,\n _state.sent()\n ];\n case 6:\n e = _state.sent();\n console.warn(\"[SW] Could not handle the request to %s (using handler %s).\", request.url, handlerKey, e);\n return [\n 2,\n new Response((0,_http_header_utils__WEBPACK_IMPORTED_MODULE_6__.parseOmrsOfflineResponseBodyHeader)(request.headers), {\n status: (0,_http_header_utils__WEBPACK_IMPORTED_MODULE_6__.parseOmrsOfflineResponseStatusHeader)(request.headers)\n })\n ];\n case 7:\n return [\n 2\n ];\n }\n });\n });\n return _defaultHandler.apply(this, arguments);\n}\nfunction getHandlerKey(_) {\n return _getHandlerKey.apply(this, arguments);\n}\nfunction _getHandlerKey() {\n _getHandlerKey = _async_to_generator(function(param) {\n var request, _getHandlerKeyFromHeaders, _tmp;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n request = param.request;\n if (!((_getHandlerKeyFromHeaders = getHandlerKeyFromHeaders(request.headers)) !== null && _getHandlerKeyFromHeaders !== void 0)) return [\n 3,\n 1\n ];\n _tmp = _getHandlerKeyFromHeaders;\n return [\n 3,\n 3\n ];\n case 1:\n return [\n 4,\n getHandlerKeyFromDynamicRouteRegistrations(request.url)\n ];\n case 2:\n _tmp = _state.sent();\n _state.label = 3;\n case 3:\n return [\n 2,\n _tmp\n ];\n }\n });\n });\n return _getHandlerKey.apply(this, arguments);\n}\nfunction getHandlerKeyFromHeaders(headers) {\n return (0,_http_header_utils__WEBPACK_IMPORTED_MODULE_6__.getOmrsHeader)(headers, _constants__WEBPACK_IMPORTED_MODULE_4__.omrsOfflineCachingStrategyHttpHeaderName);\n}\nfunction getHandlerKeyFromDynamicRouteRegistrations(url) {\n return _getHandlerKeyFromDynamicRouteRegistrations.apply(this, arguments);\n}\nfunction _getHandlerKeyFromDynamicRouteRegistrations() {\n _getHandlerKeyFromDynamicRouteRegistrations = _async_to_generator(function(url) {\n var db, allDynamicRouteRegistrations, _route_strategy, strategies, priorities, _priorities_find;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n db = new _storage__WEBPACK_IMPORTED_MODULE_5__.ServiceWorkerDb();\n return [\n 4,\n db.dynamicRouteRegistrations.toArray()\n ];\n case 1:\n allDynamicRouteRegistrations = _state.sent();\n strategies = (0,lodash_es_uniq__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(allDynamicRouteRegistrations.filter(function(route) {\n return new RegExp(route.pattern).test(url);\n }).map(function(route) {\n return (_route_strategy = route.strategy) !== null && _route_strategy !== void 0 ? _route_strategy : \"network-first\";\n }));\n if (strategies.length <= 1) {\n return [\n 2,\n strategies[0]\n ];\n } else {\n priorities = [\n \"network-first\",\n \"network-only-or-cache-only\"\n ];\n ;\n return [\n 2,\n (_priorities_find = priorities.find(function(prioritizedStrategy) {\n return strategies.some(function(strategy) {\n return strategy === prioritizedStrategy;\n });\n })) !== null && _priorities_find !== void 0 ? _priorities_find : defaultStrategy\n ];\n }\n return [\n 2\n ];\n }\n });\n });\n return _getHandlerKeyFromDynamicRouteRegistrations.apply(this, arguments);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvcm91dGluZy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNnRDtBQUMwQztBQUMzQjtBQUNXO0FBQ3NCO0FBQ3BEO0FBS2Y7QUFFSztBQUVsQyxJQUFNYyxjQUFjLElBQUlULDJEQUFXQTtBQUNuQyxJQUFNVSxZQUFZLElBQUlaLHlEQUFTQSxDQUFDO0lBQUVhLFdBQVdULHFEQUFhQTtBQUFDO0FBQzNELElBQU1VLGVBQWUsSUFBSWIsNERBQVlBLENBQUM7SUFBRVksV0FBV1QscURBQWFBO0FBQUM7QUFFakUsSUFBTVcsa0JBQThDO0lBSWhEO0FBSEosSUFBTUMseUJBR0YsV0FDRixpQkFERSxNQUNELGlCQUFrQixTQUFDQztXQUFZSCxhQUFhSSxNQUFNLENBQUNEO3FCQURsRCxNQUVEO2VBQStCLDZCQUFPQSxTQUF5QztZQUdyRUU7Ozs7Ozs7Ozs7b0JBREE7O3dCQUFNUixZQUFZTyxNQUFNLENBQUNEOzs7b0JBQWhDOzt3QkFBTzs7O29CQUNBRTtvQkFDQTs7d0JBQU1QLFVBQVVNLE1BQU0sQ0FBQ0Q7OztvQkFBOUI7O3dCQUFPOzs7Ozs7OztJQUVYO29CQU51Q0E7OztNQUZyQztBQVdKOztDQUVDLEdBQ00sU0FBU0csd0JBQXdCO0lBQ3RDLDBGQUEwRjtJQUMxRix5REFBeUQ7SUFDekQsbUZBQW1GO0lBQ25GLHVDQUF1QztJQUN2Q3ZCLDhEQUFhQSxDQUFDO1lBQUd3QixnQkFBQUE7ZUFBY0EsUUFBUUMsSUFBSSxLQUFLO09BQVlDO0lBRTVELDZCQUE2QjtJQUM3Qix1R0FBdUc7SUFDdkcsOERBQThEO0lBQzlELEVBQUU7SUFDRiwyQkFBMkI7SUFDM0IsMkdBQTJHO0lBQzNHLHNEQUFzRDtJQUN0RCxJQUFNQyxTQUFTMUIsd0dBQXdCQTtRQUNsQzs7UUFBTCxRQUFLLFlBQWdCQyx5RUFBWUEscUJBQTVCLHdHQUE4QjtZQUE5QixJQUFNMEIsU0FBTjtZQUNIRCxPQUFPRSxpQkFBaUIsQ0FBQ0MsZ0JBQWdCRjtRQUMzQzs7UUFGSztRQUFBOzs7aUJBQUE7Z0JBQUE7OztnQkFBQTtzQkFBQTs7OztBQUdQLENBQUM7U0FFY0Ysa0JBQWtCTixPQUFvQztXQUF0RE07O1NBQUFBO0lBQUFBLHFCQUFmLDZCQUFpQ04sT0FBb0MsRUFBRTtZQUc1REUsR0FDRFMsT0FDQUM7Ozs7Ozs7Ozs7b0JBSEM7O3dCQUFNbEIsWUFBWU8sTUFBTSxDQUFDRDs7O29CQUFoQzs7d0JBQU87OztvQkFDQUU7b0JBQ087O3dCQUFNVyxPQUFPQyxJQUFJLENBQUMzQixxREFBYUE7OztvQkFBdkN3QixRQUFRO29CQUNHOzt3QkFBTUEsTUFBTUksS0FBSyxDQUFDN0IsZ0RBQVFBOzs7b0JBQXJDMEIsV0FBVztvQkFDakI7O3dCQUFPQSxxQkFBQUEsc0JBQUFBLFdBQVlJLFNBQVNDLEtBQUssRUFBRTs7Ozs7Ozs7SUFFdkM7V0FSZVg7O1NBVUFJLGVBQWVWLE9BQW9DO1dBQW5EVTs7U0FBQUE7SUFBQUEsa0JBQWYsNkJBQThCVixPQUFvQyxFQUFFO1lBQzFESSxTQUNGYyxrQkFDVW5CLG1DQUFWb0IsU0FJR2pCOzs7O29CQU5ERSxVQUFZSixRQUFaSTt5QkFDV0osQ0FBQUEsUUFBUUksT0FBTyxDQUFDSSxNQUFNLEtBQUssS0FBSSxHQUEvQlI7Ozs7b0JBQW1DOzt3QkFBTW9CLGNBQWNwQjs7OzJCQUFwQjs7Ozs7OzJCQUErQkY7OztvQkFBL0VvQjtvQkFDQUMsVUFBVXBCLENBQUFBLG9DQUFBQSxxQkFBcUIsQ0FBQ21CLFdBQVcsY0FBakNuQiwrQ0FBQUEsb0NBQXFDQSxxQkFBcUIsQ0FBQ0QsZ0JBQWdCOzs7Ozs7Ozs7b0JBR2xGOzt3QkFBTXFCLFFBQVFuQjs7O29CQUFyQjs7d0JBQU87OztvQkFDQUU7b0JBQ1BtQixRQUFRQyxJQUFJLENBQUMsK0RBQStEbEIsUUFBUW1CLEdBQUcsRUFBRUwsWUFBWWhCO29CQUVyRzs7d0JBQU8sSUFBSWMsU0FBU3pCLHNGQUFrQ0EsQ0FBQ2EsUUFBUW9CLE9BQU8sR0FBRzs0QkFDdkVDLFFBQVFqQyx3RkFBb0NBLENBQUNZLFFBQVFvQixPQUFPO3dCQUM5RDs7Ozs7Ozs7SUFFSjtXQWRlZDs7U0FnQkFVLGNBQWMsQ0FBd0M7V0FBdERBOztTQUFBQTtJQUFBQSxpQkFBZiw2QkFBNkIsS0FBd0MsRUFBRTtZQUF4Q2hCLFNBQ3RCc0I7Ozs7b0JBRHNCdEIsVUFBRixNQUFFQTsyQkFDdEJzQiw0QkFBQUEseUJBQXlCdEIsUUFBUW9CLE9BQU8sZUFBeENFOzs7OzJCQUFBQTs7Ozs7O29CQUE4Qzs7d0JBQU1DLDJDQUEyQ3ZCLFFBQVFtQixHQUFHOzs7MkJBQTVEOzs7b0JBQXJEOzs7Ozs7SUFDRjtXQUZlSDs7QUFJZixTQUFTTSx5QkFBeUJGLE9BQWdCLEVBQUU7SUFDbEQsT0FBT2xDLGlFQUFhQSxDQUFDa0MsU0FBU3BDLGdGQUF3Q0E7QUFDeEU7U0FFZXVDLDJDQUEyQ0osR0FBVztXQUF0REk7O1NBQUFBO0lBQUFBLDhDQUFmLDZCQUEwREosR0FBVyxFQUFFO1lBQy9ESyxJQUNBQyw4QkFJY0MsaUJBSGRDLFlBV0VDLFlBR0pBOzs7O29CQWhCRUosS0FBSyxJQUFJdkMscURBQWVBO29CQUNPOzt3QkFBTXVDLEdBQUdLLHlCQUF5QixDQUFDQyxPQUFPOzs7b0JBQXpFTCwrQkFBK0I7b0JBQy9CRSxhQUFhdEMsMERBQUlBLENBQ3JCb0MsNkJBQ0dNLE1BQU0sQ0FBQyxTQUFDTDsrQkFBVSxJQUFJTSxPQUFPTixNQUFNTyxPQUFPLEVBQUVDLElBQUksQ0FBQ2Y7dUJBQ2pEZ0IsR0FBRyxDQUFDLFNBQUNUOytCQUFVQSxDQUFBQSxrQkFBQUEsTUFBTVUsUUFBUSxjQUFkViw2QkFBQUEsa0JBQWtCLGVBQWU7O29CQUdyRCxJQUFJQyxXQUFXVSxNQUFNLElBQUksR0FBRzt3QkFDMUI7OzRCQUFPVixVQUFVLENBQUMsRUFBRTs7b0JBQ3RCLE9BQU87d0JBR0NDOzRCQUFpRDs0QkFBaUI7Ozt3QkFFeEU7OzRCQUNFQSxDQUFBQSxtQkFBQUEsV0FBV1UsSUFBSSxDQUFDLFNBQUNDO3VDQUF3QlosV0FBV2EsSUFBSSxDQUFDLFNBQUNKOzJDQUFhQSxhQUFhRzs7NENBQXBGWCw4QkFBQUEsbUJBQ0FsQyxlQUFlOztvQkFFbkIsQ0FBQzs7Ozs7O0lBQ0g7V0FyQmU2QiIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvcm91dGluZy50cz9lY2RiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlSGFuZGxlckNhbGxiYWNrT3B0aW9ucyB9IGZyb20gJ3dvcmtib3gtY29yZSc7XG5pbXBvcnQgeyByZWdpc3RlclJvdXRlIH0gZnJvbSAnd29ya2JveC1yb3V0aW5nJztcbmltcG9ydCB7IGdldE9yQ3JlYXRlRGVmYXVsdFJvdXRlciB9IGZyb20gJ3dvcmtib3gtcm91dGluZy91dGlscy9nZXRPckNyZWF0ZURlZmF1bHRSb3V0ZXInO1xuaW1wb3J0IHsgdmFsaWRNZXRob2RzIH0gZnJvbSAnd29ya2JveC1yb3V0aW5nL3V0aWxzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBDYWNoZU9ubHksIE5ldHdvcmtGaXJzdCwgTmV0d29ya09ubHkgfSBmcm9tICd3b3JrYm94LXN0cmF0ZWdpZXMnO1xuaW1wb3J0IHsgaW5kZXhVcmwsIG9tcnNDYWNoZU5hbWUsIG9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5SHR0cEhlYWRlck5hbWUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTZXJ2aWNlV29ya2VyRGIgfSBmcm9tICcuL3N0b3JhZ2UnO1xuaW1wb3J0IHtcbiAgZ2V0T21yc0hlYWRlcixcbiAgcGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlQm9keUhlYWRlcixcbiAgcGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlU3RhdHVzSGVhZGVyLFxufSBmcm9tICcuL2h0dHAtaGVhZGVyLXV0aWxzJztcbmltcG9ydCB0eXBlIHsgT21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3kgfSBmcm9tICdAb3Blbm1ycy9lc20tb2ZmbGluZSc7XG5pbXBvcnQgdW5pcSBmcm9tICdsb2Rhc2gtZXMvdW5pcSc7XG5cbmNvbnN0IG5ldHdvcmtPbmx5ID0gbmV3IE5ldHdvcmtPbmx5KCk7XG5jb25zdCBjYWNoZU9ubHkgPSBuZXcgQ2FjaGVPbmx5KHsgY2FjaGVOYW1lOiBvbXJzQ2FjaGVOYW1lIH0pO1xuY29uc3QgbmV0d29ya0ZpcnN0ID0gbmV3IE5ldHdvcmtGaXJzdCh7IGNhY2hlTmFtZTogb21yc0NhY2hlTmFtZSB9KTtcblxuY29uc3QgZGVmYXVsdFN0cmF0ZWd5OiBPbXJzT2ZmbGluZUNhY2hpbmdTdHJhdGVneSA9ICduZXR3b3JrLW9ubHktb3ItY2FjaGUtb25seSc7XG5jb25zdCBrbm93blN0cmF0ZWd5SGFuZGxlcnM6IFJlY29yZDxcbiAgT21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3ksXG4gIChvcHRpb25zOiBSb3V0ZUhhbmRsZXJDYWxsYmFja09wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2U+XG4+ID0ge1xuICBbJ25ldHdvcmstZmlyc3QnXTogKG9wdGlvbnMpID0+IG5ldHdvcmtGaXJzdC5oYW5kbGUob3B0aW9ucyksXG4gIFsnbmV0d29yay1vbmx5LW9yLWNhY2hlLW9ubHknXTogYXN5bmMgKG9wdGlvbnM6IFJvdXRlSGFuZGxlckNhbGxiYWNrT3B0aW9ucykgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgbmV0d29ya09ubHkuaGFuZGxlKG9wdGlvbnMpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBhd2FpdCBjYWNoZU9ubHkuaGFuZGxlKG9wdGlvbnMpO1xuICAgIH1cbiAgfSxcbn07XG5cbi8qKlxuICogUmVnaXN0ZXJzIHJlcXVpcmVkIFdvcmtib3ggcm91dGVzIHVzZWQgYnkgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHByb3ZpZGUgb2ZmbGluZSBmdW5jdGlvbmFsaXR5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJBbGxPbXJzUm91dGVzKCkge1xuICAvLyBOYXZpZ2F0aW9uIHJlcXVlc3RzIGFyZSwgd2hlbiB1bnJlc29sdmFibGUgdmlhIG5ldHdvcmsgKGkuZS4gd2hlbiBvZmZsaW5lKSwgcm91dGVkIGJhY2tcbiAgLy8gdG8gdGhlIFNQQSdzIGluZGV4ICh3aGljaCBzaG91bGQgYWx3YXlzIGJlIHByZWNhY2hlZCkuXG4gIC8vIFRoaXMgZW5zdXJlcyB0aGF0IHRoZSBwYWdlIGxvYWRzIGNvcnJlY3RseSB3aGVuIGEgbmV3IG5hdmlnYXRpb24gb2NjdXJzIHRvIHBhZ2VzXG4gIC8vIGxpa2UgYC9vcGVubXJzL3NwYS9hbnl0aGluZy9uZXN0ZWRgLlxuICByZWdpc3RlclJvdXRlKCh7IHJlcXVlc3QgfSkgPT4gcmVxdWVzdC5tb2RlID09PSAnbmF2aWdhdGUnLCBuYXZpZ2F0aW9uSGFuZGxlcik7XG5cbiAgLy8gRmFsbGJhY2sgcm91dGluZyBiZWhhdmlvci5cbiAgLy8gQ2hlY2tzIGlmIGEgZHluYW1pYyByb3V0ZSByZWdpc3RyYXRpb24gZXhpc3RzIGFuZCwgaWYgc28sIGhhbmRsZXMgaXQgdXNpbmcgYSBOZXR3b3JrIEZpcnN0IGFwcHJvYWNoLlxuICAvLyBPdGhlcndpc2UgZmFsbHMgYmFjayB0byBhIE5ldHdvcmtPbmx5IC0gQ2FjaGVPbmx5IGJlaGF2aW9yLlxuICAvL1xuICAvLyBUaGUgbGF0dGVyIGVuc3VyZXMgdGhhdDpcbiAgLy8gYSkgcHJlY2FjaGVkIGZpbGVzIChsaWtlIHRoZSBhcHAgc2hlbGwgYW5kIGZpbGVzIHJlc29sdmVkIGZyb20gdGhlIGltcG9ydG1hcCkgYXJlIHJldHVybmVkIHdoZW4gb2ZmbGluZS5cbiAgLy8gYikgYW55dGhpbmcgZWxzZSAoZS5nLiBBUEkgcmVxdWVzdHMpIGlzIG5vdCBjYWNoZWQuXG4gIGNvbnN0IHJvdXRlciA9IGdldE9yQ3JlYXRlRGVmYXVsdFJvdXRlcigpO1xuICBmb3IgKGNvbnN0IG1ldGhvZCBvZiB2YWxpZE1ldGhvZHMpIHtcbiAgICByb3V0ZXIuc2V0RGVmYXVsdEhhbmRsZXIoZGVmYXVsdEhhbmRsZXIsIG1ldGhvZCk7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gbmF2aWdhdGlvbkhhbmRsZXIob3B0aW9uczogUm91dGVIYW5kbGVyQ2FsbGJhY2tPcHRpb25zKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IG5ldHdvcmtPbmx5LmhhbmRsZShvcHRpb25zKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnN0IGNhY2hlID0gYXdhaXQgY2FjaGVzLm9wZW4ob21yc0NhY2hlTmFtZSk7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjYWNoZS5tYXRjaChpbmRleFVybCk7XG4gICAgcmV0dXJuIHJlc3BvbnNlID8/IFJlc3BvbnNlLmVycm9yKCk7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gZGVmYXVsdEhhbmRsZXIob3B0aW9uczogUm91dGVIYW5kbGVyQ2FsbGJhY2tPcHRpb25zKSB7XG4gIGNvbnN0IHsgcmVxdWVzdCB9ID0gb3B0aW9ucztcbiAgY29uc3QgaGFuZGxlcktleSA9IG9wdGlvbnMucmVxdWVzdC5tZXRob2QgPT09ICdHRVQnID8gYXdhaXQgZ2V0SGFuZGxlcktleShvcHRpb25zKSA6IGRlZmF1bHRTdHJhdGVneTtcbiAgY29uc3QgaGFuZGxlciA9IGtub3duU3RyYXRlZ3lIYW5kbGVyc1toYW5kbGVyS2V5XSA/PyBrbm93blN0cmF0ZWd5SGFuZGxlcnNbZGVmYXVsdFN0cmF0ZWd5XTtcblxuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCBoYW5kbGVyKG9wdGlvbnMpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS53YXJuKCdbU1ddIENvdWxkIG5vdCBoYW5kbGUgdGhlIHJlcXVlc3QgdG8gJXMgKHVzaW5nIGhhbmRsZXIgJXMpLicsIHJlcXVlc3QudXJsLCBoYW5kbGVyS2V5LCBlKTtcblxuICAgIHJldHVybiBuZXcgUmVzcG9uc2UocGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlQm9keUhlYWRlcihyZXF1ZXN0LmhlYWRlcnMpLCB7XG4gICAgICBzdGF0dXM6IHBhcnNlT21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0hlYWRlcihyZXF1ZXN0LmhlYWRlcnMpLFxuICAgIH0pO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEhhbmRsZXJLZXkoeyByZXF1ZXN0IH06IFJvdXRlSGFuZGxlckNhbGxiYWNrT3B0aW9ucykge1xuICByZXR1cm4gZ2V0SGFuZGxlcktleUZyb21IZWFkZXJzKHJlcXVlc3QuaGVhZGVycykgPz8gKGF3YWl0IGdldEhhbmRsZXJLZXlGcm9tRHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucyhyZXF1ZXN0LnVybCkpO1xufVxuXG5mdW5jdGlvbiBnZXRIYW5kbGVyS2V5RnJvbUhlYWRlcnMoaGVhZGVyczogSGVhZGVycykge1xuICByZXR1cm4gZ2V0T21yc0hlYWRlcihoZWFkZXJzLCBvbXJzT2ZmbGluZUNhY2hpbmdTdHJhdGVneUh0dHBIZWFkZXJOYW1lKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0SGFuZGxlcktleUZyb21EeW5hbWljUm91dGVSZWdpc3RyYXRpb25zKHVybDogc3RyaW5nKSB7XG4gIGNvbnN0IGRiID0gbmV3IFNlcnZpY2VXb3JrZXJEYigpO1xuICBjb25zdCBhbGxEeW5hbWljUm91dGVSZWdpc3RyYXRpb25zID0gYXdhaXQgZGIuZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucy50b0FycmF5KCk7XG4gIGNvbnN0IHN0cmF0ZWdpZXMgPSB1bmlxKFxuICAgIGFsbER5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnNcbiAgICAgIC5maWx0ZXIoKHJvdXRlKSA9PiBuZXcgUmVnRXhwKHJvdXRlLnBhdHRlcm4pLnRlc3QodXJsKSlcbiAgICAgIC5tYXAoKHJvdXRlKSA9PiByb3V0ZS5zdHJhdGVneSA/PyAnbmV0d29yay1maXJzdCcpLFxuICApO1xuXG4gIGlmIChzdHJhdGVnaWVzLmxlbmd0aCA8PSAxKSB7XG4gICAgcmV0dXJuIHN0cmF0ZWdpZXNbMF07XG4gIH0gZWxzZSB7XG4gICAgLy8gTXVsdGlwbGUgcm91dGVzIGNhbiBtYXRjaCB0aGUgVVJMIChtdWx0aXBsZSBSZWdFeHBzIGNhbiBtYXRjaCkuXG4gICAgLy8gSW4gdGhhdCBjYXNlLCBwcmlvcml0aXplIHRoZSBhdmFpbGFibGUgc3RyYXRlZ2llcy4gV2hlbiBpbiBkb3VidCwgY2FjaGUgdGhlIHJlc291cmNlIGFnYWluLlxuICAgIGNvbnN0IHByaW9yaXRpZXM6IEFycmF5PE9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5PiA9IFsnbmV0d29yay1maXJzdCcsICduZXR3b3JrLW9ubHktb3ItY2FjaGUtb25seSddO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIHByaW9yaXRpZXMuZmluZCgocHJpb3JpdGl6ZWRTdHJhdGVneSkgPT4gc3RyYXRlZ2llcy5zb21lKChzdHJhdGVneSkgPT4gc3RyYXRlZ3kgPT09IHByaW9yaXRpemVkU3RyYXRlZ3kpKSA/P1xuICAgICAgZGVmYXVsdFN0cmF0ZWd5XG4gICAgKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbInJlZ2lzdGVyUm91dGUiLCJnZXRPckNyZWF0ZURlZmF1bHRSb3V0ZXIiLCJ2YWxpZE1ldGhvZHMiLCJDYWNoZU9ubHkiLCJOZXR3b3JrRmlyc3QiLCJOZXR3b3JrT25seSIsImluZGV4VXJsIiwib21yc0NhY2hlTmFtZSIsIm9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5SHR0cEhlYWRlck5hbWUiLCJTZXJ2aWNlV29ya2VyRGIiLCJnZXRPbXJzSGVhZGVyIiwicGFyc2VPbXJzT2ZmbGluZVJlc3BvbnNlQm9keUhlYWRlciIsInBhcnNlT21yc09mZmxpbmVSZXNwb25zZVN0YXR1c0hlYWRlciIsInVuaXEiLCJuZXR3b3JrT25seSIsImNhY2hlT25seSIsImNhY2hlTmFtZSIsIm5ldHdvcmtGaXJzdCIsImRlZmF1bHRTdHJhdGVneSIsImtub3duU3RyYXRlZ3lIYW5kbGVycyIsIm9wdGlvbnMiLCJoYW5kbGUiLCJlIiwicmVnaXN0ZXJBbGxPbXJzUm91dGVzIiwicmVxdWVzdCIsIm1vZGUiLCJuYXZpZ2F0aW9uSGFuZGxlciIsInJvdXRlciIsIm1ldGhvZCIsInNldERlZmF1bHRIYW5kbGVyIiwiZGVmYXVsdEhhbmRsZXIiLCJjYWNoZSIsInJlc3BvbnNlIiwiY2FjaGVzIiwib3BlbiIsIm1hdGNoIiwiUmVzcG9uc2UiLCJlcnJvciIsImhhbmRsZXJLZXkiLCJoYW5kbGVyIiwiZ2V0SGFuZGxlcktleSIsImNvbnNvbGUiLCJ3YXJuIiwidXJsIiwiaGVhZGVycyIsInN0YXR1cyIsImdldEhhbmRsZXJLZXlGcm9tSGVhZGVycyIsImdldEhhbmRsZXJLZXlGcm9tRHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucyIsImRiIiwiYWxsRHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucyIsInJvdXRlIiwic3RyYXRlZ2llcyIsInByaW9yaXRpZXMiLCJkeW5hbWljUm91dGVSZWdpc3RyYXRpb25zIiwidG9BcnJheSIsImZpbHRlciIsIlJlZ0V4cCIsInBhdHRlcm4iLCJ0ZXN0IiwibWFwIiwic3RyYXRlZ3kiLCJsZW5ndGgiLCJmaW5kIiwicHJpb3JpdGl6ZWRTdHJhdGVneSIsInNvbWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/service-worker/routing.ts\n");
657
657
 
658
658
  /***/ }),
659
659
 
@@ -664,7 +664,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
664
664
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
665
665
 
666
666
  "use strict";
667
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ServiceWorkerDb: () => (/* binding */ ServiceWorkerDb)\n/* harmony export */ });\n/* harmony import */ var dexie__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dexie */ \"../../../node_modules/dexie/dist/modern/dexie.mjs\");\nfunction _assert_this_initialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _get_prototype_of(o) {\n _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _get_prototype_of(o);\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _set_prototype_of(subClass, superClass);\n}\nfunction _possible_constructor_return(self, call) {\n if (call && (_type_of(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n return _assert_this_initialized(self);\n}\nfunction _set_prototype_of(o, p) {\n _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _set_prototype_of(o, p);\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _is_native_reflect_construct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nfunction _create_super(Derived) {\n var hasNativeReflectConstruct = _is_native_reflect_construct();\n return function _createSuperInternal() {\n var Super = _get_prototype_of(Derived), result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _get_prototype_of(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possible_constructor_return(this, result);\n };\n}\n\n/**\n * Provides access to persistent data used by the Service Worker.\n */ var ServiceWorkerDb = /*#__PURE__*/ function(Dexie) {\n \"use strict\";\n _inherits(ServiceWorkerDb, Dexie);\n var _super = _create_super(ServiceWorkerDb);\n function ServiceWorkerDb() {\n _class_call_check(this, ServiceWorkerDb);\n var _this;\n _this = _super.call(this, \"ServiceWorker\");\n _define_property(_assert_this_initialized(_this), \"dynamicRouteRegistrations\", void 0);\n _this.version(1).stores({\n dynamicRouteRegistrations: \"++,&pattern\"\n });\n _this.dynamicRouteRegistrations = _this.table(\"dynamicRouteRegistrations\");\n return _this;\n }\n return ServiceWorkerDb;\n}(dexie__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvc3RvcmFnZS50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNxQztBQXNCckM7O0NBRUMsR0FDTTs7Y0FBTUM7K0JBQUFBO2FBQUFBO2dDQUFBQTs7a0NBSUg7UUFIUkMsa0RBQUFBLDZCQUFBQSxLQUFBQTtRQUlFLE1BQUtDLE9BQU8sQ0FBQyxHQUFHQyxNQUFNLENBQUM7WUFBRUYsMkJBQTJCO1FBQWM7UUFFbEUsTUFBS0EseUJBQXlCLEdBQUcsTUFBS0csS0FBSyxDQUFDOzs7V0FQbkNKO0VBQXdCRCw2Q0FBS0EsRUFTekMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL3NlcnZpY2Utd29ya2VyL3N0b3JhZ2UudHM/MTVjMiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5IH0gZnJvbSBcIkBvcGVubXJzL2VzbS1vZmZsaW5lXCI7XG5pbXBvcnQgRGV4aWUsIHsgVGFibGUgfSBmcm9tIFwiZGV4aWVcIjtcblxuLyoqXG4gKiBDb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCBkeW5hbWljIHJvdXRlIHJlZ2lzdHJhdGlvbnMuXG4gKiBEeW5hbWljIHJvdXRlIHJlZ2lzdHJhdGlvbnMgYXJlIHJvdXRlcyB3aGljaCBzaG91bGQgYmUga2VwdCBpbiB0aGUgY2FjaGUsXG4gKiBidXQgYXJlIG5vdCBieSBkZWZhdWx0IGtub3duIGJ5IHRoZSBTZXJ2aWNlIFdvcmtlci5cbiAqIFRoZXkgYXJlIHR5cGljYWxseSByZWdpc3RlcmQgYnkgdGhlIHRoZSB3aW5kb3cvYXBwIGF0IHJ1bnRpbWUgYXMgc29vbiBhcyB0aGV5IGFyZSBrbm93bi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEeW5hbWljUm91dGVSZWdpc3RyYXRpb24ge1xuICAvKipcbiAgICogQSByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggbWF0Y2hlcyBhZ2FpbnN0IGEgVVJMLlxuICAgKiBJZiBpdCBtYXRjaGVzLCB0aGUgVVJMIHNob3VsZCBiZSBjYWNoZWQgdXNpbmcgdGhlIGBzdHJhdGVneWAuXG4gICAqL1xuICBwYXR0ZXJuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgY2FjaGluZyBzdHJhdGVneSB0byBiZSB1c2VkIGZvciBjYWNoaW5nIG1hdGNoaW5nIFVSTHMuXG4gICAqIER1ZSB0byBoaXN0b3JpY2FsIHJlYXNvbnMsIHRoaXMgdmFsdWUgbWlnaHQgYmUgbWlzc2luZy5cbiAgICogSW4gc3VjaCBjYXNlcywgYG5ldHdvcmstZmlyc3RgIHNob3VsZCBiZSBhc3N1bWVkICh0aGUgaGlzdG9yaWNhbCBkZWZhdWx0KS5cbiAgICovXG4gIHN0cmF0ZWd5PzogT21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3k7XG59XG5cbi8qKlxuICogUHJvdmlkZXMgYWNjZXNzIHRvIHBlcnNpc3RlbnQgZGF0YSB1c2VkIGJ5IHRoZSBTZXJ2aWNlIFdvcmtlci5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlcnZpY2VXb3JrZXJEYiBleHRlbmRzIERleGllIHtcbiAgZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9uczogVGFibGU8RHluYW1pY1JvdXRlUmVnaXN0cmF0aW9uLCBudW1iZXI+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKFwiU2VydmljZVdvcmtlclwiKTtcbiAgICB0aGlzLnZlcnNpb24oMSkuc3RvcmVzKHsgZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9uczogXCIrKywmcGF0dGVyblwiIH0pO1xuXG4gICAgdGhpcy5keW5hbWljUm91dGVSZWdpc3RyYXRpb25zID0gdGhpcy50YWJsZShcImR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnNcIik7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJEZXhpZSIsIlNlcnZpY2VXb3JrZXJEYiIsImR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnMiLCJ2ZXJzaW9uIiwic3RvcmVzIiwidGFibGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/service-worker/storage.ts\n");
667
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ServiceWorkerDb: () => (/* binding */ ServiceWorkerDb)\n/* harmony export */ });\n/* harmony import */ var dexie__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dexie */ \"../../../node_modules/dexie/dist/modern/dexie.mjs\");\nfunction _assert_this_initialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _get_prototype_of(o) {\n _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _get_prototype_of(o);\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _set_prototype_of(subClass, superClass);\n}\nfunction _possible_constructor_return(self, call) {\n if (call && (_type_of(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n return _assert_this_initialized(self);\n}\nfunction _set_prototype_of(o, p) {\n _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _set_prototype_of(o, p);\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _is_native_reflect_construct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nfunction _create_super(Derived) {\n var hasNativeReflectConstruct = _is_native_reflect_construct();\n return function _createSuperInternal() {\n var Super = _get_prototype_of(Derived), result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _get_prototype_of(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possible_constructor_return(this, result);\n };\n}\n\n/**\n * Provides access to persistent data used by the Service Worker.\n */ var ServiceWorkerDb = /*#__PURE__*/ function(Dexie) {\n \"use strict\";\n _inherits(ServiceWorkerDb, Dexie);\n var _super = _create_super(ServiceWorkerDb);\n function ServiceWorkerDb() {\n _class_call_check(this, ServiceWorkerDb);\n var _this;\n _this = _super.call(this, \"ServiceWorker\");\n _define_property(_assert_this_initialized(_this), \"dynamicRouteRegistrations\", void 0);\n _this.version(1).stores({\n dynamicRouteRegistrations: \"++,&pattern\"\n });\n _this.dynamicRouteRegistrations = _this.table(\"dynamicRouteRegistrations\");\n return _this;\n }\n return ServiceWorkerDb;\n}(dexie__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZS13b3JrZXIvc3RvcmFnZS50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNxQztBQXNCckM7O0NBRUMsR0FDTSxvQ0ExQko7O2NBMEJVQzsrQkFBQUE7YUFBQUE7Z0NBQUFBOztrQ0FJSDtRQUhSQyxrREFBQUEsNkJBQUFBLEtBQUFBO1FBSUUsTUFBS0MsT0FBTyxDQUFDLEdBQUdDLE1BQU0sQ0FBQztZQUFFRiwyQkFBMkI7UUFBYztRQUVsRSxNQUFLQSx5QkFBeUIsR0FBRyxNQUFLRyxLQUFLLENBQUM7OztXQVBuQ0o7RUFBd0JELDZDQUFLQSxFQVN6QyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi9zcmMvc2VydmljZS13b3JrZXIvc3RvcmFnZS50cz8xNWMyIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT21yc09mZmxpbmVDYWNoaW5nU3RyYXRlZ3kgfSBmcm9tICdAb3Blbm1ycy9lc20tb2ZmbGluZSc7XG5pbXBvcnQgRGV4aWUsIHsgVGFibGUgfSBmcm9tICdkZXhpZSc7XG5cbi8qKlxuICogQ29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgZHluYW1pYyByb3V0ZSByZWdpc3RyYXRpb25zLlxuICogRHluYW1pYyByb3V0ZSByZWdpc3RyYXRpb25zIGFyZSByb3V0ZXMgd2hpY2ggc2hvdWxkIGJlIGtlcHQgaW4gdGhlIGNhY2hlLFxuICogYnV0IGFyZSBub3QgYnkgZGVmYXVsdCBrbm93biBieSB0aGUgU2VydmljZSBXb3JrZXIuXG4gKiBUaGV5IGFyZSB0eXBpY2FsbHkgcmVnaXN0ZXJkIGJ5IHRoZSB0aGUgd2luZG93L2FwcCBhdCBydW50aW1lIGFzIHNvb24gYXMgdGhleSBhcmUga25vd24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY1JvdXRlUmVnaXN0cmF0aW9uIHtcbiAgLyoqXG4gICAqIEEgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIG1hdGNoZXMgYWdhaW5zdCBhIFVSTC5cbiAgICogSWYgaXQgbWF0Y2hlcywgdGhlIFVSTCBzaG91bGQgYmUgY2FjaGVkIHVzaW5nIHRoZSBgc3RyYXRlZ3lgLlxuICAgKi9cbiAgcGF0dGVybjogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGNhY2hpbmcgc3RyYXRlZ3kgdG8gYmUgdXNlZCBmb3IgY2FjaGluZyBtYXRjaGluZyBVUkxzLlxuICAgKiBEdWUgdG8gaGlzdG9yaWNhbCByZWFzb25zLCB0aGlzIHZhbHVlIG1pZ2h0IGJlIG1pc3NpbmcuXG4gICAqIEluIHN1Y2ggY2FzZXMsIGBuZXR3b3JrLWZpcnN0YCBzaG91bGQgYmUgYXNzdW1lZCAodGhlIGhpc3RvcmljYWwgZGVmYXVsdCkuXG4gICAqL1xuICBzdHJhdGVneT86IE9tcnNPZmZsaW5lQ2FjaGluZ1N0cmF0ZWd5O1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGFjY2VzcyB0byBwZXJzaXN0ZW50IGRhdGEgdXNlZCBieSB0aGUgU2VydmljZSBXb3JrZXIuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlV29ya2VyRGIgZXh0ZW5kcyBEZXhpZSB7XG4gIGR5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbnM6IFRhYmxlPER5bmFtaWNSb3V0ZVJlZ2lzdHJhdGlvbiwgbnVtYmVyPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignU2VydmljZVdvcmtlcicpO1xuICAgIHRoaXMudmVyc2lvbigxKS5zdG9yZXMoeyBkeW5hbWljUm91dGVSZWdpc3RyYXRpb25zOiAnKyssJnBhdHRlcm4nIH0pO1xuXG4gICAgdGhpcy5keW5hbWljUm91dGVSZWdpc3RyYXRpb25zID0gdGhpcy50YWJsZSgnZHluYW1pY1JvdXRlUmVnaXN0cmF0aW9ucycpO1xuICB9XG59XG4iXSwibmFtZXMiOlsiRGV4aWUiLCJTZXJ2aWNlV29ya2VyRGIiLCJkeW5hbWljUm91dGVSZWdpc3RyYXRpb25zIiwidmVyc2lvbiIsInN0b3JlcyIsInRhYmxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/service-worker/storage.ts\n");
668
668
 
669
669
  /***/ }),
670
670