@ohif/app 3.13.0-beta.68 → 3.13.0-beta.69

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 (30) hide show
  1. package/dist/{2851.bundle.2f84126ab3178c254a4f.js → 2851.bundle.d13bb9fdd21d896df73d.js} +2 -2
  2. package/dist/{6376.bundle.738c873196491232acb6.js → 6376.bundle.527820a5cb1eece2a8d2.js} +1 -1
  3. package/dist/{7190.bundle.3738008038e70525764f.js → 7190.bundle.479332d662ffe08d1f92.js} +169 -104
  4. package/dist/{app.bundle.e17934d4a3852b1a27ec.js → app.bundle.e5ebf5742695ab738d6d.js} +2 -2
  5. package/dist/index.html +1 -1
  6. package/dist/{interpolation.bundle.2559b710030605fc2bc6.js → interpolation.bundle.829844ff3f72f5645f29.js} +1 -1
  7. package/dist/sw.js +1 -1
  8. package/package.json +20 -20
  9. /package/dist/{1459.bundle.0c057bb5c04111972c6e.js → 1459.bundle.4441b0daff1e7d1e475b.js} +0 -0
  10. /package/dist/{1933.bundle.8581959ebb842668939a.js → 1933.bundle.5f85010474c1a26d5b2c.js} +0 -0
  11. /package/dist/{2018.bundle.b42d4f0cd572dbc49b73.js → 2018.bundle.e758b183c56ccd7677f4.js} +0 -0
  12. /package/dist/{213.bundle.93c244de852eef5b325e.js → 213.bundle.090350c45f9d6b691fad.js} +0 -0
  13. /package/dist/{2424.bundle.9547d598346ee5fbcc3f.js → 2424.bundle.67e7eb608cce3af35b92.js} +0 -0
  14. /package/dist/{3138.bundle.2d1c32b62a3b4db64881.js → 3138.bundle.d7f49154c5d6271c9f24.js} +0 -0
  15. /package/dist/{3461.bundle.d8f093cd878b23ca4de5.js → 3461.bundle.9f7098f3ea722176acf6.js} +0 -0
  16. /package/dist/{4507.bundle.73b4e47b069392708b4a.js → 4507.bundle.e964cd8ebfa78f345b34.js} +0 -0
  17. /package/dist/{4819.bundle.5b8250b9781d7b195c8b.js → 4819.bundle.60695cca9169bb3010f6.js} +0 -0
  18. /package/dist/{5015.bundle.2d52fb8a7607c0f5f2bc.js → 5015.bundle.6470ea8212884be78cbc.js} +0 -0
  19. /package/dist/{5028.bundle.d6b587cec8eca4994f23.js → 5028.bundle.52628ca9cb97df509a06.js} +0 -0
  20. /package/dist/{5457.bundle.c05cbb69ee35ed35c125.js → 5457.bundle.708c1cd4969fe0167956.js} +0 -0
  21. /package/dist/{5485.bundle.b2de6b5aee00e1366dbf.js → 5485.bundle.648fe26db2f1f24faace.js} +0 -0
  22. /package/dist/{6027.bundle.ea9fabbfc1fa5be21bd3.js → 6027.bundle.0a9936fc1cf3af4e9841.js} +0 -0
  23. /package/dist/{7166.bundle.a446247d3420500ebf08.js → 7166.bundle.09a58966db6c16ea7b49.js} +0 -0
  24. /package/dist/{7639.bundle.c78c9a319dde07c862cd.js → 7639.bundle.8fd93608aa841bda067b.js} +0 -0
  25. /package/dist/{8305.bundle.15c446a807f52ad6870f.js → 8305.bundle.11c24bdac62073fdf9b5.js} +0 -0
  26. /package/dist/{8499.bundle.207ce16931b41d14154f.js → 8499.bundle.1433b326d312ac8d8b1f.js} +0 -0
  27. /package/dist/{85.bundle.1d2b51aa3d4e6ff61247.js → 85.bundle.69ed0f5cd48a2416a0a7.js} +0 -0
  28. /package/dist/{8558.bundle.7509744a9f460f73e6ad.js → 8558.bundle.d9d0faa6b079173a1de5.js} +0 -0
  29. /package/dist/{8583.bundle.1b1c0ed7620c6cfe2447.js → 8583.bundle.2ac4f7476f2b3e026260.js} +0 -0
  30. /package/dist/{9927.bundle.57766e5471d115426d9f.js → 9927.bundle.a112e60a246078248216.js} +0 -0
@@ -10612,8 +10612,8 @@ function AboutModalDefault() {
10612
10612
  name
10613
10613
  } = (0,browser_detect_es5/* default */.A)();
10614
10614
  const browser = `${name[0].toUpperCase()}${name.substr(1)} ${version}`;
10615
- const versionNumber = "3.13.0-beta.68";
10616
- const commitHash = "979d619f7ccb426beb75d59721b01c98175d5241";
10615
+ const versionNumber = "3.13.0-beta.69";
10616
+ const commitHash = "5e624f13870cdb63300b82285b46d4b21b9d47c3";
10617
10617
  const [main, beta] = versionNumber.split('-');
10618
10618
  return /*#__PURE__*/react.createElement(ui_next_src/* AboutModal */.VTU, {
10619
10619
  className: "w-[400px]"
@@ -683,7 +683,7 @@ expose(workerOperations);
683
683
  /******/ // This function allow to reference async chunks and chunks that the entrypoint depends on
684
684
  /******/ __webpack_require__.u = (chunkId) => {
685
685
  /******/ // return url for filenames based on template
686
- /******/ return "" + chunkId + ".bundle." + "3738008038e70525764f" + ".js";
686
+ /******/ return "" + chunkId + ".bundle." + "479332d662ffe08d1f92" + ".js";
687
687
  /******/ };
688
688
  /******/ })();
689
689
  /******/
@@ -2375,16 +2375,16 @@ const G = getGlobal();
2375
2375
  const FormDataCtor = typeof G.FormData !== 'undefined' ? G.FormData : undefined;
2376
2376
 
2377
2377
  const isFormData = (thing) => {
2378
- let kind;
2379
- return thing && (
2380
- (FormDataCtor && thing instanceof FormDataCtor) || (
2381
- isFunction(thing.append) && (
2382
- (kind = kindOf(thing)) === 'formdata' ||
2383
- // detect form-data instance
2384
- (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')
2385
- )
2386
- )
2387
- );
2378
+ if (!thing) return false;
2379
+ if (FormDataCtor && thing instanceof FormDataCtor) return true;
2380
+ // Reject plain objects inheriting directly from Object.prototype so prototype-pollution gadgets can't spoof FormData (GHSA-6chq-wfr3-2hj9).
2381
+ const proto = getPrototypeOf(thing);
2382
+ if (!proto || proto === Object.prototype) return false;
2383
+ if (!isFunction(thing.append)) return false;
2384
+ const kind = kindOf(thing);
2385
+ return kind === 'formdata' ||
2386
+ // detect form-data instance
2387
+ (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]');
2388
2388
  };
2389
2389
 
2390
2390
  /**
@@ -3056,40 +3056,40 @@ class AxiosError extends Error {
3056
3056
  return axiosError;
3057
3057
  }
3058
3058
 
3059
- /**
3060
- * Create an Error with the specified message, config, error code, request and response.
3061
- *
3062
- * @param {string} message The error message.
3063
- * @param {string} [code] The error code (for example, 'ECONNABORTED').
3064
- * @param {Object} [config] The config.
3065
- * @param {Object} [request] The request.
3066
- * @param {Object} [response] The response.
3067
- *
3068
- * @returns {Error} The created error.
3069
- */
3070
- constructor(message, code, config, request, response) {
3071
- super(message);
3072
-
3073
- // Make message enumerable to maintain backward compatibility
3074
- // The native Error constructor sets message as non-enumerable,
3075
- // but axios < v1.13.3 had it as enumerable
3076
- Object.defineProperty(this, 'message', {
3077
- value: message,
3078
- enumerable: true,
3079
- writable: true,
3080
- configurable: true
3081
- });
3082
-
3083
- this.name = 'AxiosError';
3084
- this.isAxiosError = true;
3085
- code && (this.code = code);
3086
- config && (this.config = config);
3087
- request && (this.request = request);
3088
- if (response) {
3089
- this.response = response;
3090
- this.status = response.status;
3091
- }
3059
+ /**
3060
+ * Create an Error with the specified message, config, error code, request and response.
3061
+ *
3062
+ * @param {string} message The error message.
3063
+ * @param {string} [code] The error code (for example, 'ECONNABORTED').
3064
+ * @param {Object} [config] The config.
3065
+ * @param {Object} [request] The request.
3066
+ * @param {Object} [response] The response.
3067
+ *
3068
+ * @returns {Error} The created error.
3069
+ */
3070
+ constructor(message, code, config, request, response) {
3071
+ super(message);
3072
+
3073
+ // Make message enumerable to maintain backward compatibility
3074
+ // The native Error constructor sets message as non-enumerable,
3075
+ // but axios < v1.13.3 had it as enumerable
3076
+ Object.defineProperty(this, 'message', {
3077
+ value: message,
3078
+ enumerable: true,
3079
+ writable: true,
3080
+ configurable: true,
3081
+ });
3082
+
3083
+ this.name = 'AxiosError';
3084
+ this.isAxiosError = true;
3085
+ code && (this.code = code);
3086
+ config && (this.config = config);
3087
+ request && (this.request = request);
3088
+ if (response) {
3089
+ this.response = response;
3090
+ this.status = response.status;
3092
3091
  }
3092
+ }
3093
3093
 
3094
3094
  toJSON() {
3095
3095
  return {
@@ -3125,6 +3125,7 @@ AxiosError.ERR_BAD_REQUEST = 'ERR_BAD_REQUEST';
3125
3125
  AxiosError.ERR_CANCELED = 'ERR_CANCELED';
3126
3126
  AxiosError.ERR_NOT_SUPPORT = 'ERR_NOT_SUPPORT';
3127
3127
  AxiosError.ERR_INVALID_URL = 'ERR_INVALID_URL';
3128
+ AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED = 'ERR_FORM_DATA_DEPTH_EXCEEDED';
3128
3129
 
3129
3130
  /* harmony default export */ const core_AxiosError = (AxiosError);
3130
3131
 
@@ -3251,6 +3252,7 @@ function toFormData(obj, formData, options) {
3251
3252
  const dots = options.dots;
3252
3253
  const indexes = options.indexes;
3253
3254
  const _Blob = options.Blob || (typeof Blob !== 'undefined' && Blob);
3255
+ const maxDepth = options.maxDepth === undefined ? 100 : options.maxDepth;
3254
3256
  const useBlob = _Blob && utils.isSpecCompliantForm(formData);
3255
3257
 
3256
3258
  if (!utils.isFunction(visitor)) {
@@ -3343,9 +3345,16 @@ function toFormData(obj, formData, options) {
3343
3345
  isVisitable,
3344
3346
  });
3345
3347
 
3346
- function build(value, path) {
3348
+ function build(value, path, depth = 0) {
3347
3349
  if (utils.isUndefined(value)) return;
3348
3350
 
3351
+ if (depth > maxDepth) {
3352
+ throw new core_AxiosError(
3353
+ 'Object is too deeply nested (' + depth + ' levels). Max depth: ' + maxDepth,
3354
+ core_AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED
3355
+ );
3356
+ }
3357
+
3349
3358
  if (stack.indexOf(value) !== -1) {
3350
3359
  throw Error('Circular reference detected in ' + path.join('.'));
3351
3360
  }
@@ -3358,7 +3367,7 @@ function toFormData(obj, formData, options) {
3358
3367
  visitor.call(formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers);
3359
3368
 
3360
3369
  if (result === true) {
3361
- build(el, path ? path.concat(key) : [key]);
3370
+ build(el, path ? path.concat(key) : [key], depth + 1);
3362
3371
  }
3363
3372
  });
3364
3373
 
@@ -3397,9 +3406,8 @@ function encode(str) {
3397
3406
  ')': '%29',
3398
3407
  '~': '%7E',
3399
3408
  '%20': '+',
3400
- '%00': '\x00',
3401
3409
  };
3402
- return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {
3410
+ return encodeURIComponent(str).replace(/[!'()~]|%20/g, function replacer(match) {
3403
3411
  return charMap[match];
3404
3412
  });
3405
3413
  }
@@ -3762,7 +3770,9 @@ function formDataToJSON(formData) {
3762
3770
 
3763
3771
  if (isLast) {
3764
3772
  if (utils.hasOwnProp(target, name)) {
3765
- target[name] = [target[name], value];
3773
+ target[name] = utils.isArray(target[name])
3774
+ ? target[name].concat(value)
3775
+ : [target[name], value];
3766
3776
  } else {
3767
3777
  target[name] = value;
3768
3778
  }
@@ -3809,6 +3819,8 @@ function formDataToJSON(formData) {
3809
3819
 
3810
3820
 
3811
3821
 
3822
+ const own = (obj, key) => (obj != null && utils.hasOwnProp(obj, key) ? obj[key] : undefined);
3823
+
3812
3824
  /**
3813
3825
  * It takes a string, tries to parse it, and if it fails, it returns the stringified version
3814
3826
  * of the input
@@ -3876,20 +3888,22 @@ const defaults = {
3876
3888
  let isFileList;
3877
3889
 
3878
3890
  if (isObjectPayload) {
3891
+ const formSerializer = own(this, 'formSerializer');
3879
3892
  if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {
3880
- return toURLEncodedForm(data, this.formSerializer).toString();
3893
+ return toURLEncodedForm(data, formSerializer).toString();
3881
3894
  }
3882
3895
 
3883
3896
  if (
3884
3897
  (isFileList = utils.isFileList(data)) ||
3885
3898
  contentType.indexOf('multipart/form-data') > -1
3886
3899
  ) {
3887
- const _FormData = this.env && this.env.FormData;
3900
+ const env = own(this, 'env');
3901
+ const _FormData = env && env.FormData;
3888
3902
 
3889
3903
  return helpers_toFormData(
3890
3904
  isFileList ? { 'files[]': data } : data,
3891
3905
  _FormData && new _FormData(),
3892
- this.formSerializer
3906
+ formSerializer
3893
3907
  );
3894
3908
  }
3895
3909
  }
@@ -3905,9 +3919,10 @@ const defaults = {
3905
3919
 
3906
3920
  transformResponse: [
3907
3921
  function transformResponse(data) {
3908
- const transitional = this.transitional || defaults.transitional;
3922
+ const transitional = own(this, 'transitional') || defaults.transitional;
3909
3923
  const forcedJSONParsing = transitional && transitional.forcedJSONParsing;
3910
- const JSONRequested = this.responseType === 'json';
3924
+ const responseType = own(this, 'responseType');
3925
+ const JSONRequested = responseType === 'json';
3911
3926
 
3912
3927
  if (utils.isResponse(data) || utils.isReadableStream(data)) {
3913
3928
  return data;
@@ -3916,17 +3931,17 @@ const defaults = {
3916
3931
  if (
3917
3932
  data &&
3918
3933
  utils.isString(data) &&
3919
- ((forcedJSONParsing && !this.responseType) || JSONRequested)
3934
+ ((forcedJSONParsing && !responseType) || JSONRequested)
3920
3935
  ) {
3921
3936
  const silentJSONParsing = transitional && transitional.silentJSONParsing;
3922
3937
  const strictJSONParsing = !silentJSONParsing && JSONRequested;
3923
3938
 
3924
3939
  try {
3925
- return JSON.parse(data, this.parseReviver);
3940
+ return JSON.parse(data, own(this, 'parseReviver'));
3926
3941
  } catch (e) {
3927
3942
  if (strictJSONParsing) {
3928
3943
  if (e.name === 'SyntaxError') {
3929
- throw core_AxiosError.from(e, core_AxiosError.ERR_BAD_RESPONSE, this, null, this.response);
3944
+ throw core_AxiosError.from(e, core_AxiosError.ERR_BAD_RESPONSE, this, null, own(this, 'response'));
3930
3945
  }
3931
3946
  throw e;
3932
3947
  }
@@ -4051,41 +4066,41 @@ const ignoreDuplicateOf = utils.toObjectSet([
4051
4066
 
4052
4067
  const $internals = Symbol('internals');
4053
4068
 
4054
- const isValidHeaderValue = (value) => !/[\r\n]/.test(value);
4069
+ const INVALID_HEADER_VALUE_CHARS_RE = /[^\x09\x20-\x7E\x80-\xFF]/g;
4055
4070
 
4056
- function assertValidHeaderValue(value, header) {
4057
- if (value === false || value == null) {
4058
- return;
4059
- }
4071
+ function trimSPorHTAB(str) {
4072
+ let start = 0;
4073
+ let end = str.length;
4060
4074
 
4061
- if (utils.isArray(value)) {
4062
- value.forEach((v) => assertValidHeaderValue(v, header));
4063
- return;
4064
- }
4075
+ while (start < end) {
4076
+ const code = str.charCodeAt(start);
4065
4077
 
4066
- if (!isValidHeaderValue(String(value))) {
4067
- throw new Error(`Invalid character in header content ["${header}"]`);
4068
- }
4069
- }
4070
-
4071
- function normalizeHeader(header) {
4072
- return header && String(header).trim().toLowerCase();
4073
- }
4078
+ if (code !== 0x09 && code !== 0x20) {
4079
+ break;
4080
+ }
4074
4081
 
4075
- function stripTrailingCRLF(str) {
4076
- let end = str.length;
4082
+ start += 1;
4083
+ }
4077
4084
 
4078
- while (end > 0) {
4079
- const charCode = str.charCodeAt(end - 1);
4085
+ while (end > start) {
4086
+ const code = str.charCodeAt(end - 1);
4080
4087
 
4081
- if (charCode !== 10 && charCode !== 13) {
4088
+ if (code !== 0x09 && code !== 0x20) {
4082
4089
  break;
4083
4090
  }
4084
4091
 
4085
4092
  end -= 1;
4086
4093
  }
4087
4094
 
4088
- return end === str.length ? str : str.slice(0, end);
4095
+ return start === 0 && end === str.length ? str : str.slice(start, end);
4096
+ }
4097
+
4098
+ function normalizeHeader(header) {
4099
+ return header && String(header).trim().toLowerCase();
4100
+ }
4101
+
4102
+ function sanitizeHeaderValue(str) {
4103
+ return trimSPorHTAB(str.replace(INVALID_HEADER_VALUE_CHARS_RE, ''));
4089
4104
  }
4090
4105
 
4091
4106
  function normalizeValue(value) {
@@ -4093,7 +4108,7 @@ function normalizeValue(value) {
4093
4108
  return value;
4094
4109
  }
4095
4110
 
4096
- return utils.isArray(value) ? value.map(normalizeValue) : stripTrailingCRLF(String(value));
4111
+ return utils.isArray(value) ? value.map(normalizeValue) : sanitizeHeaderValue(String(value));
4097
4112
  }
4098
4113
 
4099
4114
  function parseTokens(str) {
@@ -4175,7 +4190,6 @@ class AxiosHeaders {
4175
4190
  _rewrite === true ||
4176
4191
  (_rewrite === undefined && self[key] !== false)
4177
4192
  ) {
4178
- assertValidHeaderValue(_value, _header);
4179
4193
  self[key || _header] = normalizeValue(_value);
4180
4194
  }
4181
4195
  }
@@ -4638,13 +4652,13 @@ const progressEventReducer = (listener, isDownloadStream, freq = 3) => {
4638
4652
  const _speedometer = helpers_speedometer(50, 250);
4639
4653
 
4640
4654
  return helpers_throttle((e) => {
4641
- const loaded = e.loaded;
4655
+ const rawLoaded = e.loaded;
4642
4656
  const total = e.lengthComputable ? e.total : undefined;
4643
- const progressBytes = loaded - bytesNotified;
4657
+ const loaded = total != null ? Math.min(rawLoaded, total) : rawLoaded;
4658
+ const progressBytes = Math.max(0, loaded - bytesNotified);
4644
4659
  const rate = _speedometer(progressBytes);
4645
- const inRange = loaded <= total;
4646
4660
 
4647
- bytesNotified = loaded;
4661
+ bytesNotified = Math.max(bytesNotified, loaded);
4648
4662
 
4649
4663
  const data = {
4650
4664
  loaded,
@@ -4652,7 +4666,7 @@ const progressEventReducer = (listener, isDownloadStream, freq = 3) => {
4652
4666
  progress: total ? loaded / total : undefined,
4653
4667
  bytes: progressBytes,
4654
4668
  rate: rate ? rate : undefined,
4655
- estimated: rate && total && inRange ? (total - loaded) / rate : undefined,
4669
+ estimated: rate && total ? (total - loaded) / rate : undefined,
4656
4670
  event: e,
4657
4671
  lengthComputable: total != null,
4658
4672
  [isDownloadStream ? 'download' : 'upload']: true,
@@ -4805,7 +4819,7 @@ function combineURLs(baseURL, relativeURL) {
4805
4819
  */
4806
4820
  function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {
4807
4821
  let isRelativeUrl = !isAbsoluteURL(requestedURL);
4808
- if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) {
4822
+ if (baseURL && (isRelativeUrl || allowAbsoluteUrls === false)) {
4809
4823
  return combineURLs(baseURL, requestedURL);
4810
4824
  }
4811
4825
  return requestedURL;
@@ -4831,7 +4845,18 @@ const headersToObject = (thing) => (thing instanceof core_AxiosHeaders ? { ...th
4831
4845
  function mergeConfig(config1, config2) {
4832
4846
  // eslint-disable-next-line no-param-reassign
4833
4847
  config2 = config2 || {};
4834
- const config = {};
4848
+
4849
+ // Use a null-prototype object so that downstream reads such as `config.auth`
4850
+ // or `config.baseURL` cannot inherit polluted values from Object.prototype
4851
+ // (see GHSA-q8qp-cvcw-x6jj). `hasOwnProperty` is restored as a non-enumerable
4852
+ // own slot to preserve ergonomics for user code that relies on it.
4853
+ const config = Object.create(null);
4854
+ Object.defineProperty(config, 'hasOwnProperty', {
4855
+ value: Object.prototype.hasOwnProperty,
4856
+ enumerable: false,
4857
+ writable: true,
4858
+ configurable: true,
4859
+ });
4835
4860
 
4836
4861
  function getMergedValue(target, source, prop, caseless) {
4837
4862
  if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
@@ -4870,9 +4895,9 @@ function mergeConfig(config1, config2) {
4870
4895
 
4871
4896
  // eslint-disable-next-line consistent-return
4872
4897
  function mergeDirectKeys(a, b, prop) {
4873
- if (prop in config2) {
4898
+ if (utils.hasOwnProp(config2, prop)) {
4874
4899
  return getMergedValue(a, b);
4875
- } else if (prop in config1) {
4900
+ } else if (utils.hasOwnProp(config1, prop)) {
4876
4901
  return getMergedValue(undefined, a);
4877
4902
  }
4878
4903
  }
@@ -4904,6 +4929,7 @@ function mergeConfig(config1, config2) {
4904
4929
  httpsAgent: defaultToConfig2,
4905
4930
  cancelToken: defaultToConfig2,
4906
4931
  socketPath: defaultToConfig2,
4932
+ allowedSocketPaths: defaultToConfig2,
4907
4933
  responseEncoding: defaultToConfig2,
4908
4934
  validateStatus: mergeDirectKeys,
4909
4935
  headers: (a, b, prop) =>
@@ -4913,7 +4939,9 @@ function mergeConfig(config1, config2) {
4913
4939
  utils.forEach(Object.keys({ ...config1, ...config2 }), function computeConfigValue(prop) {
4914
4940
  if (prop === '__proto__' || prop === 'constructor' || prop === 'prototype') return;
4915
4941
  const merge = utils.hasOwnProp(mergeMap, prop) ? mergeMap[prop] : mergeDeepProperties;
4916
- const configValue = merge(config1[prop], config2[prop], prop);
4942
+ const a = utils.hasOwnProp(config1, prop) ? config1[prop] : undefined;
4943
+ const b = utils.hasOwnProp(config2, prop) ? config2[prop] : undefined;
4944
+ const configValue = merge(a, b, prop);
4917
4945
  (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);
4918
4946
  });
4919
4947
 
@@ -4933,12 +4961,24 @@ function mergeConfig(config1, config2) {
4933
4961
  /* harmony default export */ const resolveConfig = ((config) => {
4934
4962
  const newConfig = mergeConfig({}, config);
4935
4963
 
4936
- let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig;
4964
+ // Read only own properties to prevent prototype pollution gadgets
4965
+ // (e.g. Object.prototype.baseURL = 'https://evil.com'). See GHSA-q8qp-cvcw-x6jj.
4966
+ const own = (key) => (utils.hasOwnProp(newConfig, key) ? newConfig[key] : undefined);
4967
+
4968
+ const data = own('data');
4969
+ let withXSRFToken = own('withXSRFToken');
4970
+ const xsrfHeaderName = own('xsrfHeaderName');
4971
+ const xsrfCookieName = own('xsrfCookieName');
4972
+ let headers = own('headers');
4973
+ const auth = own('auth');
4974
+ const baseURL = own('baseURL');
4975
+ const allowAbsoluteUrls = own('allowAbsoluteUrls');
4976
+ const url = own('url');
4937
4977
 
4938
4978
  newConfig.headers = headers = core_AxiosHeaders.from(headers);
4939
4979
 
4940
4980
  newConfig.url = buildURL(
4941
- buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls),
4981
+ buildFullPath(baseURL, url, allowAbsoluteUrls),
4942
4982
  config.params,
4943
4983
  config.paramsSerializer
4944
4984
  );
@@ -4977,10 +5017,18 @@ function mergeConfig(config1, config2) {
4977
5017
  // Specifically not if we're in a web worker, or react-native.
4978
5018
 
4979
5019
  if (platform.hasStandardBrowserEnv) {
4980
- withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));
5020
+ if (utils.isFunction(withXSRFToken)) {
5021
+ withXSRFToken = withXSRFToken(newConfig);
5022
+ }
4981
5023
 
4982
- if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {
4983
- // Add xsrf header
5024
+ // Strict boolean check prevents proto-pollution gadgets (e.g. Object.prototype.withXSRFToken = 1)
5025
+ // and misconfigurations (e.g. "false") from short-circuiting the same-origin check and leaking
5026
+ // the XSRF token cross-origin. See GHSA-xx6v-rp6x-q39c.
5027
+ const shouldSendXSRF =
5028
+ withXSRFToken === true ||
5029
+ (withXSRFToken == null && isURLSameOrigin(newConfig.url));
5030
+
5031
+ if (shouldSendXSRF) {
4984
5032
  const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);
4985
5033
 
4986
5034
  if (xsrfValue) {
@@ -5430,18 +5478,20 @@ const factory = (env) => {
5430
5478
  test(() => {
5431
5479
  let duplexAccessed = false;
5432
5480
 
5433
- const body = new fetch_ReadableStream();
5434
-
5435
- const hasContentType = new Request(platform.origin, {
5436
- body,
5481
+ const request = new Request(platform.origin, {
5482
+ body: new fetch_ReadableStream(),
5437
5483
  method: 'POST',
5438
5484
  get duplex() {
5439
5485
  duplexAccessed = true;
5440
5486
  return 'half';
5441
5487
  },
5442
- }).headers.has('Content-Type');
5488
+ });
5443
5489
 
5444
- body.cancel();
5490
+ const hasContentType = request.headers.has('Content-Type');
5491
+
5492
+ if (request.body != null) {
5493
+ request.body.cancel();
5494
+ }
5445
5495
 
5446
5496
  return duplexAccessed && !hasContentType;
5447
5497
  });
@@ -5585,6 +5635,19 @@ const factory = (env) => {
5585
5635
  // see https://github.com/cloudflare/workerd/issues/902
5586
5636
  const isCredentialsSupported = isRequestSupported && 'credentials' in Request.prototype;
5587
5637
 
5638
+ // If data is FormData and Content-Type is multipart/form-data without boundary,
5639
+ // delete it so fetch can set it correctly with the boundary
5640
+ if (utils.isFormData(data)) {
5641
+ const contentType = headers.getContentType();
5642
+ if (
5643
+ contentType &&
5644
+ /^multipart\/form-data/i.test(contentType) &&
5645
+ !/boundary=/i.test(contentType)
5646
+ ) {
5647
+ headers.delete('content-type');
5648
+ }
5649
+ }
5650
+
5588
5651
  const resolvedOptions = {
5589
5652
  ...fetchOptions,
5590
5653
  signal: composedSignal,
@@ -5913,7 +5976,7 @@ function dispatchRequest(config) {
5913
5976
  }
5914
5977
 
5915
5978
  ;// ../../../node_modules/axios/lib/env/data.js
5916
- const VERSION = "1.15.0";
5979
+ const VERSION = "1.15.2";
5917
5980
  ;// ../../../node_modules/axios/lib/helpers/validator.js
5918
5981
 
5919
5982
 
@@ -6003,7 +6066,9 @@ function assertOptions(options, schema, allowUnknown) {
6003
6066
  let i = keys.length;
6004
6067
  while (i-- > 0) {
6005
6068
  const opt = keys[i];
6006
- const validator = schema[opt];
6069
+ // Use hasOwnProperty so a polluted Object.prototype.<opt> cannot supply
6070
+ // a non-function validator and cause a TypeError. See GHSA-q8qp-cvcw-x6jj.
6071
+ const validator = Object.prototype.hasOwnProperty.call(schema, opt) ? schema[opt] : undefined;
6007
6072
  if (validator) {
6008
6073
  const value = options[opt];
6009
6074
  const result = value === undefined || validator(value, opt, options);
@@ -80777,7 +80777,7 @@ const detectionOptions = {
80777
80777
  }
80778
80778
  });
80779
80779
  ;// ../../i18n/package.json
80780
- const package_namespaceObject = /*#__PURE__*/JSON.parse('{"rE":"3.13.0-beta.67"}');
80780
+ const package_namespaceObject = /*#__PURE__*/JSON.parse('{"rE":"3.13.0-beta.68"}');
80781
80781
  ;// ../../i18n/src/utils.js
80782
80782
  const languagesMap = {
80783
80783
  ar: 'Arabic',
@@ -397615,7 +397615,7 @@ function __rewriteRelativeImportExtension(path, preserveJsx) {
397615
397615
  /******/ // This function allow to reference async chunks
397616
397616
  /******/ __webpack_require__.u = (chunkId) => {
397617
397617
  /******/ // return url for filenames based on template
397618
- /******/ return "" + ({"572":"polySeg","2007":"interpolation","3054":"histogram-worker","3694":"compute"}[chunkId] || chunkId) + ".bundle." + {"85":"1d2b51aa3d4e6ff61247","213":"93c244de852eef5b325e","572":"e1f6f05d81ea1352bef3","732":"ea6f9d8504e37e01a208","1459":"0c057bb5c04111972c6e","1608":"26306ea38618db59eff7","1927":"be67b3aafe238ca9f191","1933":"8581959ebb842668939a","2007":"2559b710030605fc2bc6","2018":"b42d4f0cd572dbc49b73","2075":"23265b8e7597c398db4f","2108":"aea8d3b39486dd5ab39e","2424":"9547d598346ee5fbcc3f","2701":"6873805ddfdccc7a8b1e","2851":"2f84126ab3178c254a4f","3054":"a2a50c4674d99c619ca7","3138":"2d1c32b62a3b4db64881","3461":"d8f093cd878b23ca4de5","3694":"b7c2ea55f1a69f4a736b","3754":"fd4b67c2a29c4bc4a840","4202":"4fcd0de412907efd5b53","4287":"b7840e7b94cbbc102236","4406":"573d234b4641d23cf8db","4507":"73b4e47b069392708b4a","4579":"0a6b2f49a7e136a79e37","4819":"5b8250b9781d7b195c8b","5015":"2d52fb8a7607c0f5f2bc","5028":"d6b587cec8eca4994f23","5261":"2655560097e9250eac44","5457":"c05cbb69ee35ed35c125","5485":"b2de6b5aee00e1366dbf","5802":"26f84db0ff8851532c36","6027":"ea9fabbfc1fa5be21bd3","6939":"41fbdef87597b5172ec6","7159":"fb9df255868960f69765","7166":"a446247d3420500ebf08","7431":"5e14641f2c71e852abe7","7639":"c78c9a319dde07c862cd","8094":"148a66619607e37cbf19","8305":"15c446a807f52ad6870f","8499":"207ce16931b41d14154f","8558":"7509744a9f460f73e6ad","8583":"1b1c0ed7620c6cfe2447","9205":"ed7bce8436a7a431955e","9567":"ff782480a4c66e306027","9845":"8c450e8d65a78a5afcd3","9862":"a5f7925840868fa4ecdb","9927":"57766e5471d115426d9f"}[chunkId] + ".js";
397618
+ /******/ return "" + ({"572":"polySeg","2007":"interpolation","3054":"histogram-worker","3694":"compute"}[chunkId] || chunkId) + ".bundle." + {"85":"69ed0f5cd48a2416a0a7","213":"090350c45f9d6b691fad","572":"e1f6f05d81ea1352bef3","732":"ea6f9d8504e37e01a208","1459":"4441b0daff1e7d1e475b","1608":"26306ea38618db59eff7","1927":"be67b3aafe238ca9f191","1933":"5f85010474c1a26d5b2c","2007":"829844ff3f72f5645f29","2018":"e758b183c56ccd7677f4","2075":"23265b8e7597c398db4f","2108":"aea8d3b39486dd5ab39e","2424":"67e7eb608cce3af35b92","2701":"6873805ddfdccc7a8b1e","2851":"d13bb9fdd21d896df73d","3054":"a2a50c4674d99c619ca7","3138":"d7f49154c5d6271c9f24","3461":"9f7098f3ea722176acf6","3694":"b7c2ea55f1a69f4a736b","3754":"fd4b67c2a29c4bc4a840","4202":"4fcd0de412907efd5b53","4287":"b7840e7b94cbbc102236","4406":"573d234b4641d23cf8db","4507":"e964cd8ebfa78f345b34","4579":"0a6b2f49a7e136a79e37","4819":"60695cca9169bb3010f6","5015":"6470ea8212884be78cbc","5028":"52628ca9cb97df509a06","5261":"2655560097e9250eac44","5457":"708c1cd4969fe0167956","5485":"648fe26db2f1f24faace","5802":"26f84db0ff8851532c36","6027":"0a9936fc1cf3af4e9841","6939":"41fbdef87597b5172ec6","7159":"fb9df255868960f69765","7166":"09a58966db6c16ea7b49","7431":"5e14641f2c71e852abe7","7639":"8fd93608aa841bda067b","8094":"148a66619607e37cbf19","8305":"11c24bdac62073fdf9b5","8499":"1433b326d312ac8d8b1f","8558":"d9d0faa6b079173a1de5","8583":"2ac4f7476f2b3e026260","9205":"ed7bce8436a7a431955e","9567":"ff782480a4c66e306027","9845":"8c450e8d65a78a5afcd3","9862":"a5f7925840868fa4ecdb","9927":"a112e60a246078248216"}[chunkId] + ".js";
397619
397619
  /******/ };
397620
397620
  /******/ })();
397621
397621
  /******/
package/dist/index.html CHANGED
@@ -3,4 +3,4 @@
3
3
  return import(moduleId);
4
4
  }
5
5
 
6
- window.PUBLIC_URL = '/';</script><script defer="defer" src="/app.bundle.e17934d4a3852b1a27ec.js"></script><link href="/app.bundle.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="react-portal"></div><div id="root"></div></body></html>
6
+ window.PUBLIC_URL = '/';</script><script defer="defer" src="/app.bundle.e5ebf5742695ab738d6d.js"></script><link href="/app.bundle.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="react-portal"></div><div id="root"></div></body></html>
@@ -637,7 +637,7 @@ function generateUUID() {
637
637
  /******/ // This function allow to reference async chunks and chunks that the entrypoint depends on
638
638
  /******/ __webpack_require__.u = (chunkId) => {
639
639
  /******/ // return url for filenames based on template
640
- /******/ return "" + chunkId + ".bundle." + {"2516":"f62228e9a800de8d4b31","5491":"4866d2ecb20dd089e071","5830":"791019deddd536980a11","6354":"929febcf6d326e582e00","6376":"738c873196491232acb6","7190":"3738008038e70525764f"}[chunkId] + ".js";
640
+ /******/ return "" + chunkId + ".bundle." + {"2516":"f62228e9a800de8d4b31","5491":"4866d2ecb20dd089e071","5830":"791019deddd536980a11","6354":"929febcf6d326e582e00","6376":"527820a5cb1eece2a8d2","7190":"479332d662ffe08d1f92"}[chunkId] + ".js";
641
641
  /******/ };
642
642
  /******/ })();
643
643
  /******/
package/dist/sw.js CHANGED
@@ -50,7 +50,7 @@ self.addEventListener('message', event => {
50
50
  }
51
51
  }
52
52
  });
53
- workbox.precaching.precacheAndRoute([{'revision':null,'url':'/1459.bundle.0c057bb5c04111972c6e.js'},{'revision':null,'url':'/1608.bundle.26306ea38618db59eff7.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/1608.css'},{'revision':null,'url':'/17dd54813d5acc10bf8f.wasm'},{'revision':null,'url':'/1927.bundle.be67b3aafe238ca9f191.js'},{'revision':null,'url':'/1933.bundle.8581959ebb842668939a.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/1933.css'},{'revision':null,'url':'/2018.bundle.b42d4f0cd572dbc49b73.js'},{'revision':null,'url':'/2075.bundle.23265b8e7597c398db4f.js'},{'revision':null,'url':'/2108.bundle.aea8d3b39486dd5ab39e.js'},{'revision':null,'url':'/213.bundle.93c244de852eef5b325e.js'},{'revision':null,'url':'/2424.bundle.9547d598346ee5fbcc3f.js'},{'revision':null,'url':'/2516.bundle.f62228e9a800de8d4b31.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/2591.css'},{'revision':null,'url':'/2701.bundle.6873805ddfdccc7a8b1e.js'},{'revision':null,'url':'/2851.bundle.2f84126ab3178c254a4f.js'},{'revision':null,'url':'/3138.bundle.2d1c32b62a3b4db64881.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/3138.css'},{'revision':null,'url':'/31fb9346313fc3740d7b.woff2'},{'revision':null,'url':'/3461.bundle.d8f093cd878b23ca4de5.js'},{'revision':null,'url':'/3754.bundle.fd4b67c2a29c4bc4a840.js'},{'revision':'e0cfcadcf2c2fbc1f117196b9f62bf3e','url':'/3754.css'},{'revision':null,'url':'/4202.bundle.4fcd0de412907efd5b53.js'},{'revision':null,'url':'/4287.bundle.b7840e7b94cbbc102236.js'},{'revision':null,'url':'/4406.bundle.573d234b4641d23cf8db.js'},{'revision':null,'url':'/4507.bundle.73b4e47b069392708b4a.js'},{'revision':null,'url':'/4579.bundle.0a6b2f49a7e136a79e37.js'},{'revision':null,'url':'/4819.bundle.5b8250b9781d7b195c8b.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/4819.css'},{'revision':'27c847594562926775c007c401b4fe98','url':'/4972.css'},{'revision':null,'url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/5015.bundle.2d52fb8a7607c0f5f2bc.js'},{'revision':null,'url':'/5028.bundle.d6b587cec8eca4994f23.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/5028.css'},{'revision':null,'url':'/5261.bundle.2655560097e9250eac44.js'},{'revision':null,'url':'/5457.bundle.c05cbb69ee35ed35c125.js'},{'revision':null,'url':'/5485.bundle.b2de6b5aee00e1366dbf.js'},{'revision':null,'url':'/5491.bundle.4866d2ecb20dd089e071.js'},{'revision':null,'url':'/5802.bundle.26f84db0ff8851532c36.js'},{'revision':'db90dfc1361c5dfac355bf8067ab4371','url':'/5802.css'},{'revision':null,'url':'/5830.bundle.791019deddd536980a11.js'},{'revision':null,'url':'/5858.bundle.466e58128de344ab53f3.js'},{'revision':null,'url':'/6027.bundle.ea9fabbfc1fa5be21bd3.js'},{'revision':null,'url':'/6354.bundle.929febcf6d326e582e00.js'},{'revision':null,'url':'/6376.bundle.738c873196491232acb6.js'},{'revision':null,'url':'/6386.bundle.5d82d1f41d1c37a0358d.js'},{'revision':null,'url':'/6939.bundle.41fbdef87597b5172ec6.js'},{'revision':null,'url':'/7159.bundle.fb9df255868960f69765.js'},{'revision':'20a92cf14c2d8be6cd580f68780cc7fa','url':'/7159.css'},{'revision':null,'url':'/7166.bundle.a446247d3420500ebf08.js'},{'revision':null,'url':'/7190.bundle.3738008038e70525764f.js'},{'revision':null,'url':'/732.bundle.ea6f9d8504e37e01a208.js'},{'revision':null,'url':'/7431.bundle.5e14641f2c71e852abe7.js'},{'revision':null,'url':'/7537.bundle.889ba5f2707418c6fd88.js'},{'revision':null,'url':'/7639.bundle.c78c9a319dde07c862cd.js'},{'revision':null,'url':'/7758.bundle.c8d106364298e7d288f0.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/7829.css'},{'revision':null,'url':'/8094.bundle.148a66619607e37cbf19.js'},{'revision':null,'url':'/8305.bundle.15c446a807f52ad6870f.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/8305.css'},{'revision':null,'url':'/8499.bundle.207ce16931b41d14154f.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/8499.css'},{'revision':null,'url':'/85.bundle.1d2b51aa3d4e6ff61247.js'},{'revision':null,'url':'/8558.bundle.7509744a9f460f73e6ad.js'},{'revision':null,'url':'/8583.bundle.1b1c0ed7620c6cfe2447.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/8583.css'},{'revision':null,'url':'/9039.bundle.f72736f47fedeff521e2.js'},{'revision':null,'url':'/9205.bundle.ed7bce8436a7a431955e.js'},{'revision':null,'url':'/9567.bundle.ff782480a4c66e306027.js'},{'revision':null,'url':'/982b0633e475d94949df.wasm'},{'revision':null,'url':'/9845.bundle.8c450e8d65a78a5afcd3.js'},{'revision':null,'url':'/9862.bundle.a5f7925840868fa4ecdb.js'},{'revision':null,'url':'/9927.bundle.57766e5471d115426d9f.js'},{'revision':'d41d8cd98f00b204e9800998ecf8427e','url':'/_headers'},{'revision':'e3bf0f3e9c34f51ad59836ae8e8eaf43','url':'/_redirects'},{'revision':null,'url':'/a957c5cd315f89b6feb1.wasm'},{'revision':'2f872a596b09e1b1de398d253a78fba2','url':'/app-config.js'},{'revision':'fbc043c8371e8cc579d47c6b9439691b','url':'/app.bundle.css'},{'revision':null,'url':'/app.bundle.e17934d4a3852b1a27ec.js'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/android-chrome-144x144.png'},{'revision':'5cde390de8a619ebe55a669d2ac3effd','url':'/assets/android-chrome-192x192.png'},{'revision':'e7466a67e90471de05401e53b8fe20be','url':'/assets/android-chrome-256x256.png'},{'revision':'9bbe9b80156e930d19a4e1725aa9ddae','url':'/assets/android-chrome-36x36.png'},{'revision':'5698b2ac0c82fe06d84521fc5482df04','url':'/assets/android-chrome-384x384.png'},{'revision':'56bef3fceec344d9747f8abe9c0bba27','url':'/assets/android-chrome-48x48.png'},{'revision':'3e8b8a01290992e82c242557417b0596','url':'/assets/android-chrome-512x512.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/android-chrome-72x72.png'},{'revision':'4c3289bc690f8519012686888e08da71','url':'/assets/android-chrome-96x96.png'},{'revision':'cf464289183184df09292f581df0fb4f','url':'/assets/apple-touch-icon-1024x1024.png'},{'revision':'0857c5282c594e4900e8b31e3bade912','url':'/assets/apple-touch-icon-114x114.png'},{'revision':'4208f41a28130a67e9392a9dfcee6011','url':'/assets/apple-touch-icon-120x120.png'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/apple-touch-icon-144x144.png'},{'revision':'977d293982af7e9064ba20806b45cf35','url':'/assets/apple-touch-icon-152x152.png'},{'revision':'6de91b4d2a30600b410758405cb567b4','url':'/assets/apple-touch-icon-167x167.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-180x180.png'},{'revision':'647386c34e75f1213830ea9a38913525','url':'/assets/apple-touch-icon-57x57.png'},{'revision':'0c200fe83953738b330ea431083e7a86','url':'/assets/apple-touch-icon-60x60.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/apple-touch-icon-72x72.png'},{'revision':'c9989a807bb18633f6dcf254b5b56124','url':'/assets/apple-touch-icon-76x76.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-precomposed.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon.png'},{'revision':'05fa74ea9c1c0c3931ba96467999081d','url':'/assets/apple-touch-startup-image-1182x2208.png'},{'revision':'9e2cd03e1e6fd0520eea6846f4278018','url':'/assets/apple-touch-startup-image-1242x2148.png'},{'revision':'5591e3a1822cbc8439b99c1a40d53425','url':'/assets/apple-touch-startup-image-1496x2048.png'},{'revision':'337de578c5ca04bd7d2be19d24d83821','url':'/assets/apple-touch-startup-image-1536x2008.png'},{'revision':'cafb4ab4eafe6ef946bd229a1d88e7de','url':'/assets/apple-touch-startup-image-320x460.png'},{'revision':'d9bb9e558d729eeac5efb8be8d6111cc','url':'/assets/apple-touch-startup-image-640x1096.png'},{'revision':'038b5b02bac8b82444bf9a87602ac216','url':'/assets/apple-touch-startup-image-640x920.png'},{'revision':'2177076eb07b1d64d663d7c03268be00','url':'/assets/apple-touch-startup-image-748x1024.png'},{'revision':'4fc097443815fe92503584c4bd73c630','url':'/assets/apple-touch-startup-image-750x1294.png'},{'revision':'2e29914062dce5c5141ab47eea2fc5d9','url':'/assets/apple-touch-startup-image-768x1004.png'},{'revision':'f692ec286b3a332c17985f4ed38b1076','url':'/assets/browserconfig.xml'},{'revision':'f3d9a3b647853c45b0e132e4acd0cc4a','url':'/assets/coast-228x228.png'},{'revision':'ad6e1def5c66193d649a31474bbfe45d','url':'/assets/favicon-16x16.png'},{'revision':'84d1dcdb6cdfa55e2f46be0c80fa5698','url':'/assets/favicon-32x32.png'},{'revision':'95fb44c4998a46109e49d724c060db24','url':'/assets/favicon.ico'},{'revision':'5df2a5b0cee399ac0bc40af74ba3c2cb','url':'/assets/firefox_app_128x128.png'},{'revision':'11fd9098c4b07c8a07e1d2a1e309e046','url':'/assets/firefox_app_512x512.png'},{'revision':'27cddfc922dca3bfa27b4a00fc2f5e36','url':'/assets/firefox_app_60x60.png'},{'revision':'2547879ee2928a5fd56dca483bcbd967','url':'/assets/images/CT-AAA.png'},{'revision':'245628fb9d18d6c5cd529615079f8e86','url':'/assets/images/CT-AAA2.png'},{'revision':'997a9c8b57e7b4e46d8f01fb49d078c6','url':'/assets/images/CT-Air.png'},{'revision':'e7ed89711f63348d49898da3a2b73ab9','url':'/assets/images/CT-Bone.png'},{'revision':'09d1dc6efebb10a60cdf85ed74a10214','url':'/assets/images/CT-Bones.png'},{'revision':'f8ae9bafd3b90ba3efbdcbe8901db187','url':'/assets/images/CT-Cardiac.png'},{'revision':'ed0cc538aba90d6a1c029923ca9b47db','url':'/assets/images/CT-Cardiac2.png'},{'revision':'dfdaf4e4889aefbf09514545f45726bb','url':'/assets/images/CT-Cardiac3.png'},{'revision':'5d4b9a331136a1a5d7ce7ccf7dfcca36','url':'/assets/images/CT-Chest-Contrast-Enhanced.png'},{'revision':'5fb264499a5bb42487663b00e42d1513','url':'/assets/images/CT-Chest-Vessels.png'},{'revision':'ab8f0e569c972388ddaaa61b92449fac','url':'/assets/images/CT-Coronary-Arteries-2.png'},{'revision':'e4e7e2e3cc09bc8c4fb03b6441bd2845','url':'/assets/images/CT-Coronary-Arteries-3.png'},{'revision':'79a2962a2d3cbe4bd3b675b5ca83c659','url':'/assets/images/CT-Coronary-Arteries.png'},{'revision':'6502a6bdab1c70e2188c3bf12ce5d4e4','url':'/assets/images/CT-Cropped-Volume-Bone.png'},{'revision':'e28ad3cf5ed2006fc5a7cffd602736fc','url':'/assets/images/CT-Fat.png'},{'revision':'ca1c5be76053edee27e68ffbf9105101','url':'/assets/images/CT-Liver-Vasculature.png'},{'revision':'d6c9ab857ed2ad19f1ff20bea02b6655','url':'/assets/images/CT-Lung.png'},{'revision':'ddb599c6a163bdf28ece8de1a337470a','url':'/assets/images/CT-MIP.png'},{'revision':'0b0dcf7940a555e2a9a0900f7f84d4d3','url':'/assets/images/CT-Muscle.png'},{'revision':'6082d383f9ce375a5873e2a00fc4d372','url':'/assets/images/CT-Pulmonary-Arteries.png'},{'revision':'b317366149ee2607bec95d63eb4d7661','url':'/assets/images/CT-Soft-Tissue.png'},{'revision':'4b0cd5a673ebb71da22a91ed608d6695','url':'/assets/images/DTI-FA-Brain.png'},{'revision':'3ea1cbee022af5b94710b73726308832','url':'/assets/images/MR-Angio.png'},{'revision':'bd25ca7b166193547f34950eed440e5c','url':'/assets/images/MR-Default.png'},{'revision':'2e50a49b859aeb316a1c23f911fce9ad','url':'/assets/images/MR-MIP.png'},{'revision':'6ba74de6961e08652ff9e2f1871b473d','url':'/assets/images/MR-T2-Brain.png'},{'revision':'42406bb474f0f87cf04a5afbbcd5e389','url':'/assets/images/VolumeRendering.png'},{'revision':'2017d95fae79dcf34b5a5b52586d4763','url':'/assets/manifest.webapp'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/mstile-144x144.png'},{'revision':'334895225e16a7777e45d81964725a97','url':'/assets/mstile-150x150.png'},{'revision':'e295cca4af6ed0365cf7b014d91b0e9d','url':'/assets/mstile-310x150.png'},{'revision':'cbefa8c42250e5f2443819fe2c69d91e','url':'/assets/mstile-310x310.png'},{'revision':'aa411a69df2b33a1362fa38d1257fa9d','url':'/assets/mstile-70x70.png'},{'revision':'5609af4f69e40e33471aee770ea1d802','url':'/assets/yandex-browser-50x50.png'},{'revision':'dd001f21b3970d5a7f3e245cc10d21df','url':'/assets/yandex-browser-manifest.json'},{'revision':null,'url':'/c22b37c3488e1d6c3aa4.wasm'},{'revision':null,'url':'/compute.bundle.b7c2ea55f1a69f4a736b.js'},{'revision':'c377e1f5fe4a207d270c3f7a8dd3e3ca','url':'/dicom-microscopy-viewer/charlswasm_decode.wasm'},{'revision':'9214592a1edd456ad2ef69772201398e','url':'/dicom-microscopy-viewer/dataLoader.worker.min.js'},{'revision':'813dee9adb3a3478dedc6dfe1479e15b','url':'/dicom-microscopy-viewer/dataLoader.worker.min.js.map'},{'revision':'fb088ddc5ec5de63aa6095f70baa2d45','url':'/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js'},{'revision':'cdf943673c34e8dd6be85b026bdffc70','url':'/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js.map'},{'revision':'52b9a07fe0541fe8c313d9788550bf51','url':'/dicom-microscopy-viewer/dicomiccwasm.wasm'},{'revision':'7edb59d2be7c993050cb31ded36afa31','url':'/dicom-microscopy-viewer/libjpegturbowasm_decode.wasm'},{'revision':'54a25d82a224dfd401569baffc8b478d','url':'/dicom-microscopy-viewer/openjpegwasm_decode.wasm'},{'revision':'4acdd19a35d759ec2669f1ba9490937d','url':'/es6-shim.min.js'},{'revision':'92b01d0a387d59841e02cc3a4c994657','url':'/google.js'},{'revision':null,'url':'/histogram-worker.bundle.a2a50c4674d99c619ca7.js'},{'revision':'79e25bcd9321bab467ee5198bfafaa77','url':'/index.html'},{'revision':'31c0367ca4160b2c6373e905739c5719','url':'/init-service-worker.js'},{'revision':null,'url':'/interpolation.bundle.2559b710030605fc2bc6.js'},{'revision':'74fc9658b62903be2048c1f82a22b4d4','url':'/manifest.json'},{'revision':'3fa71aa0af3e34b4ebd9a71eee0f4bdd','url':'/ohif-logo-light.svg'},{'revision':'7e81da785c63e75650101db6c5d7560e','url':'/ohif-logo.svg'},{'revision':'eadf8bf1d85032a029e2c0df4b8938b0','url':'/oidc-client.min.js'},{'revision':'242abae066a3d4717e09f218703f1923','url':'/ort/cjs/ort.all.min.js'},{'revision':'039ea411b3b655094035e85bb2e245d4','url':'/ort/cjs/ort.all.min.js.map'},{'revision':'fb509ab752acf788c3cc25459ae72e62','url':'/ort/cjs/ort.min.js'},{'revision':'30087ad61fc31272eb6094962e3a0451','url':'/ort/cjs/ort.min.js.map'},{'revision':'0fad6d8ca65291350ca8a1751659a536','url':'/ort/cjs/ort.training.wasm.min.js'},{'revision':'da692fb2cd7f67223b92a90955b87cb3','url':'/ort/cjs/ort.training.wasm.min.js.map'},{'revision':'f471b605fb03df54c63d5bc77a32226b','url':'/ort/cjs/ort.wasm-core.min.js'},{'revision':'cc4475faebff69233b4fdc1a78eb0399','url':'/ort/cjs/ort.wasm-core.min.js.map'},{'revision':'d228221765171d0a4cf3cb3909dd0be3','url':'/ort/cjs/ort.wasm.min.js'},{'revision':'6d132c02e5eeadf4da54c8bcc0c15200','url':'/ort/cjs/ort.wasm.min.js.map'},{'revision':'9a463e37f9550d7a23f5a47076b6b3d8','url':'/ort/cjs/ort.webgl.min.js'},{'revision':'26e251b6aee08c91a3d6e1af1410659d','url':'/ort/cjs/ort.webgl.min.js.map'},{'revision':'5cd623012201d7c5ddbbdb57224ac26d','url':'/ort/cjs/ort.webgpu.min.js'},{'revision':'e53c54f9663a5d7573b66dd3d25fb93a','url':'/ort/cjs/ort.webgpu.min.js.map'},{'revision':'a6b7eb31b5dcf3835a90ea0d201f21e3','url':'/ort/cjs/package.json'},{'revision':'2ccbe0c4397149108dd0d7ced00b5879','url':'/ort/esm/ort.all.min.js'},{'revision':'2b2ff793ba11a59563a504067aa1e469','url':'/ort/esm/ort.all.min.js.map'},{'revision':'978e978337e66e848c2351da61fd7e8e','url':'/ort/esm/ort.min.js'},{'revision':'add9f88f20194b214c8a97b200c4eac0','url':'/ort/esm/ort.min.js.map'},{'revision':'61471773b94ac06d0d814b49cf619233','url':'/ort/esm/ort.training.wasm.min.js'},{'revision':'60057feb2e9c1d39d7e52b165e450e72','url':'/ort/esm/ort.training.wasm.min.js.map'},{'revision':'12635093e14a67921565de89f678c470','url':'/ort/esm/ort.wasm-core.min.js'},{'revision':'1d2c905465e8b47dc023beaf715bb6ae','url':'/ort/esm/ort.wasm-core.min.js.map'},{'revision':'f2780d73ea108c5728b4c4fb6bd1e8df','url':'/ort/esm/ort.wasm.min.js'},{'revision':'e1af0f0e8befaa973a9192cdc1a882fb','url':'/ort/esm/ort.wasm.min.js.map'},{'revision':'c5a2e8ed939ccfb0211336d8b385d81a','url':'/ort/esm/ort.webgl.min.js'},{'revision':'9e0198bc10517578066aed6c8baef1a3','url':'/ort/esm/ort.webgl.min.js.map'},{'revision':'0c96a22438d8ffdf94f13b1693dbed8b','url':'/ort/esm/ort.webgpu.min.js'},{'revision':'24126f825e1c2dd678b4b85cde6c4e3a','url':'/ort/esm/ort.webgpu.min.js.map'},{'revision':'b305354b5d3207dc798e87449005a1de','url':'/ort/esm/package.json'},{'revision':'10ba4d1a5289405cff7d9b5f453b60b4','url':'/ort/ort-training-wasm-simd.wasm'},{'revision':'f7380fb5928344460bac0e5833ee4a82','url':'/ort/ort-wasm-simd-threaded.jsep.wasm'},{'revision':'068e15f5aba004197782c011a782c500','url':'/ort/ort-wasm-simd-threaded.wasm'},{'revision':'8a468bda81bfb9e375907f0b6da8ffee','url':'/ort/ort-wasm-simd.jsep.wasm'},{'revision':'27a8292511e77fc50ced64326875ca4a','url':'/ort/ort-wasm-simd.wasm'},{'revision':'c9cf2d09cfabe6ea517c87620091a2fb','url':'/ort/ort-wasm-threaded.wasm'},{'revision':'88cb0475e8c4228b29dd201646223f0c','url':'/ort/ort-wasm.wasm'},{'revision':'708def774c211a2b036384d9e14dbfe7','url':'/ort/ort.all.js'},{'revision':'32e292212f5767983e5433f0a88d3425','url':'/ort/ort.all.min.js'},{'revision':'c4a4b66af400491c83591ab732dac868','url':'/ort/ort.all.min.js.map'},{'revision':'5d78ec66bcab8a26756d43b8c63a8f1e','url':'/ort/ort.js'},{'revision':'d552a78742409520bd30fb824a88a266','url':'/ort/ort.min.js'},{'revision':'a1fdb4abef4a6130f72148fe469ca114','url':'/ort/ort.min.js.map'},{'revision':'e3b420cb98f192d8755934dde7c014db','url':'/ort/ort.node.min.js'},{'revision':'9b0c2098e6c9b0f6d6e54e8cb434ed76','url':'/ort/ort.node.min.js.map'},{'revision':'722dabcfbb18772ca80ef96ef9b9a036','url':'/ort/ort.training.wasm.min.js'},{'revision':'de35b3d2e302163bdcb80d3e20c84266','url':'/ort/ort.training.wasm.min.js.map'},{'revision':'f92b62229fc36d346f720b2410e63576','url':'/ort/ort.wasm-core.min.js'},{'revision':'8f56640956155afecadc318d8a32e0f6','url':'/ort/ort.wasm-core.min.js.map'},{'revision':'5ac1ffe964e3bd1f0d2e6a3a18a5a1ba','url':'/ort/ort.wasm.min.js'},{'revision':'9b0a74e48529a07b61428b1a48233b39','url':'/ort/ort.wasm.min.js.map'},{'revision':'4591c9c641ab0151b9a8cdc1ce110286','url':'/ort/ort.webgl.min.js'},{'revision':'77e632e10b98c8d10e17bb3071d5cba4','url':'/ort/ort.webgl.min.js.map'},{'revision':'027aca68552f5081e90a08f7fb064fb7','url':'/ort/ort.webgpu.min.js'},{'revision':'12dc9d5c577bac166f0f74590e4d27dd','url':'/ort/ort.webgpu.min.js.map'},{'revision':null,'url':'/polySeg.bundle.e1f6f05d81ea1352bef3.js'},{'revision':'a1aef5311245f5864315443d12246c37','url':'/polyfill.min.js'},{'revision':'981ac7f7543b8330e3826aff72c33382','url':'/serve.json'},{'revision':'b1e488d9955b62bd2858874df11d5223','url':'/silent-refresh.html'}]);
53
+ workbox.precaching.precacheAndRoute([{'revision':null,'url':'/1459.bundle.4441b0daff1e7d1e475b.js'},{'revision':null,'url':'/1608.bundle.26306ea38618db59eff7.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/1608.css'},{'revision':null,'url':'/17dd54813d5acc10bf8f.wasm'},{'revision':null,'url':'/1927.bundle.be67b3aafe238ca9f191.js'},{'revision':null,'url':'/1933.bundle.5f85010474c1a26d5b2c.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/1933.css'},{'revision':null,'url':'/2018.bundle.e758b183c56ccd7677f4.js'},{'revision':null,'url':'/2075.bundle.23265b8e7597c398db4f.js'},{'revision':null,'url':'/2108.bundle.aea8d3b39486dd5ab39e.js'},{'revision':null,'url':'/213.bundle.090350c45f9d6b691fad.js'},{'revision':null,'url':'/2424.bundle.67e7eb608cce3af35b92.js'},{'revision':null,'url':'/2516.bundle.f62228e9a800de8d4b31.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/2591.css'},{'revision':null,'url':'/2701.bundle.6873805ddfdccc7a8b1e.js'},{'revision':null,'url':'/2851.bundle.d13bb9fdd21d896df73d.js'},{'revision':null,'url':'/3138.bundle.d7f49154c5d6271c9f24.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/3138.css'},{'revision':null,'url':'/31fb9346313fc3740d7b.woff2'},{'revision':null,'url':'/3461.bundle.9f7098f3ea722176acf6.js'},{'revision':null,'url':'/3754.bundle.fd4b67c2a29c4bc4a840.js'},{'revision':'e0cfcadcf2c2fbc1f117196b9f62bf3e','url':'/3754.css'},{'revision':null,'url':'/4202.bundle.4fcd0de412907efd5b53.js'},{'revision':null,'url':'/4287.bundle.b7840e7b94cbbc102236.js'},{'revision':null,'url':'/4406.bundle.573d234b4641d23cf8db.js'},{'revision':null,'url':'/4507.bundle.e964cd8ebfa78f345b34.js'},{'revision':null,'url':'/4579.bundle.0a6b2f49a7e136a79e37.js'},{'revision':null,'url':'/4819.bundle.60695cca9169bb3010f6.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/4819.css'},{'revision':'27c847594562926775c007c401b4fe98','url':'/4972.css'},{'revision':null,'url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/5015.bundle.6470ea8212884be78cbc.js'},{'revision':null,'url':'/5028.bundle.52628ca9cb97df509a06.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/5028.css'},{'revision':null,'url':'/5261.bundle.2655560097e9250eac44.js'},{'revision':null,'url':'/5457.bundle.708c1cd4969fe0167956.js'},{'revision':null,'url':'/5485.bundle.648fe26db2f1f24faace.js'},{'revision':null,'url':'/5491.bundle.4866d2ecb20dd089e071.js'},{'revision':null,'url':'/5802.bundle.26f84db0ff8851532c36.js'},{'revision':'db90dfc1361c5dfac355bf8067ab4371','url':'/5802.css'},{'revision':null,'url':'/5830.bundle.791019deddd536980a11.js'},{'revision':null,'url':'/5858.bundle.466e58128de344ab53f3.js'},{'revision':null,'url':'/6027.bundle.0a9936fc1cf3af4e9841.js'},{'revision':null,'url':'/6354.bundle.929febcf6d326e582e00.js'},{'revision':null,'url':'/6376.bundle.527820a5cb1eece2a8d2.js'},{'revision':null,'url':'/6386.bundle.5d82d1f41d1c37a0358d.js'},{'revision':null,'url':'/6939.bundle.41fbdef87597b5172ec6.js'},{'revision':null,'url':'/7159.bundle.fb9df255868960f69765.js'},{'revision':'20a92cf14c2d8be6cd580f68780cc7fa','url':'/7159.css'},{'revision':null,'url':'/7166.bundle.09a58966db6c16ea7b49.js'},{'revision':null,'url':'/7190.bundle.479332d662ffe08d1f92.js'},{'revision':null,'url':'/732.bundle.ea6f9d8504e37e01a208.js'},{'revision':null,'url':'/7431.bundle.5e14641f2c71e852abe7.js'},{'revision':null,'url':'/7537.bundle.889ba5f2707418c6fd88.js'},{'revision':null,'url':'/7639.bundle.8fd93608aa841bda067b.js'},{'revision':null,'url':'/7758.bundle.c8d106364298e7d288f0.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/7829.css'},{'revision':null,'url':'/8094.bundle.148a66619607e37cbf19.js'},{'revision':null,'url':'/8305.bundle.11c24bdac62073fdf9b5.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/8305.css'},{'revision':null,'url':'/8499.bundle.1433b326d312ac8d8b1f.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/8499.css'},{'revision':null,'url':'/85.bundle.69ed0f5cd48a2416a0a7.js'},{'revision':null,'url':'/8558.bundle.d9d0faa6b079173a1de5.js'},{'revision':null,'url':'/8583.bundle.2ac4f7476f2b3e026260.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/8583.css'},{'revision':null,'url':'/9039.bundle.f72736f47fedeff521e2.js'},{'revision':null,'url':'/9205.bundle.ed7bce8436a7a431955e.js'},{'revision':null,'url':'/9567.bundle.ff782480a4c66e306027.js'},{'revision':null,'url':'/982b0633e475d94949df.wasm'},{'revision':null,'url':'/9845.bundle.8c450e8d65a78a5afcd3.js'},{'revision':null,'url':'/9862.bundle.a5f7925840868fa4ecdb.js'},{'revision':null,'url':'/9927.bundle.a112e60a246078248216.js'},{'revision':'d41d8cd98f00b204e9800998ecf8427e','url':'/_headers'},{'revision':'e3bf0f3e9c34f51ad59836ae8e8eaf43','url':'/_redirects'},{'revision':null,'url':'/a957c5cd315f89b6feb1.wasm'},{'revision':'2f872a596b09e1b1de398d253a78fba2','url':'/app-config.js'},{'revision':'fbc043c8371e8cc579d47c6b9439691b','url':'/app.bundle.css'},{'revision':null,'url':'/app.bundle.e5ebf5742695ab738d6d.js'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/android-chrome-144x144.png'},{'revision':'5cde390de8a619ebe55a669d2ac3effd','url':'/assets/android-chrome-192x192.png'},{'revision':'e7466a67e90471de05401e53b8fe20be','url':'/assets/android-chrome-256x256.png'},{'revision':'9bbe9b80156e930d19a4e1725aa9ddae','url':'/assets/android-chrome-36x36.png'},{'revision':'5698b2ac0c82fe06d84521fc5482df04','url':'/assets/android-chrome-384x384.png'},{'revision':'56bef3fceec344d9747f8abe9c0bba27','url':'/assets/android-chrome-48x48.png'},{'revision':'3e8b8a01290992e82c242557417b0596','url':'/assets/android-chrome-512x512.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/android-chrome-72x72.png'},{'revision':'4c3289bc690f8519012686888e08da71','url':'/assets/android-chrome-96x96.png'},{'revision':'cf464289183184df09292f581df0fb4f','url':'/assets/apple-touch-icon-1024x1024.png'},{'revision':'0857c5282c594e4900e8b31e3bade912','url':'/assets/apple-touch-icon-114x114.png'},{'revision':'4208f41a28130a67e9392a9dfcee6011','url':'/assets/apple-touch-icon-120x120.png'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/apple-touch-icon-144x144.png'},{'revision':'977d293982af7e9064ba20806b45cf35','url':'/assets/apple-touch-icon-152x152.png'},{'revision':'6de91b4d2a30600b410758405cb567b4','url':'/assets/apple-touch-icon-167x167.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-180x180.png'},{'revision':'647386c34e75f1213830ea9a38913525','url':'/assets/apple-touch-icon-57x57.png'},{'revision':'0c200fe83953738b330ea431083e7a86','url':'/assets/apple-touch-icon-60x60.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/apple-touch-icon-72x72.png'},{'revision':'c9989a807bb18633f6dcf254b5b56124','url':'/assets/apple-touch-icon-76x76.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-precomposed.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon.png'},{'revision':'05fa74ea9c1c0c3931ba96467999081d','url':'/assets/apple-touch-startup-image-1182x2208.png'},{'revision':'9e2cd03e1e6fd0520eea6846f4278018','url':'/assets/apple-touch-startup-image-1242x2148.png'},{'revision':'5591e3a1822cbc8439b99c1a40d53425','url':'/assets/apple-touch-startup-image-1496x2048.png'},{'revision':'337de578c5ca04bd7d2be19d24d83821','url':'/assets/apple-touch-startup-image-1536x2008.png'},{'revision':'cafb4ab4eafe6ef946bd229a1d88e7de','url':'/assets/apple-touch-startup-image-320x460.png'},{'revision':'d9bb9e558d729eeac5efb8be8d6111cc','url':'/assets/apple-touch-startup-image-640x1096.png'},{'revision':'038b5b02bac8b82444bf9a87602ac216','url':'/assets/apple-touch-startup-image-640x920.png'},{'revision':'2177076eb07b1d64d663d7c03268be00','url':'/assets/apple-touch-startup-image-748x1024.png'},{'revision':'4fc097443815fe92503584c4bd73c630','url':'/assets/apple-touch-startup-image-750x1294.png'},{'revision':'2e29914062dce5c5141ab47eea2fc5d9','url':'/assets/apple-touch-startup-image-768x1004.png'},{'revision':'f692ec286b3a332c17985f4ed38b1076','url':'/assets/browserconfig.xml'},{'revision':'f3d9a3b647853c45b0e132e4acd0cc4a','url':'/assets/coast-228x228.png'},{'revision':'ad6e1def5c66193d649a31474bbfe45d','url':'/assets/favicon-16x16.png'},{'revision':'84d1dcdb6cdfa55e2f46be0c80fa5698','url':'/assets/favicon-32x32.png'},{'revision':'95fb44c4998a46109e49d724c060db24','url':'/assets/favicon.ico'},{'revision':'5df2a5b0cee399ac0bc40af74ba3c2cb','url':'/assets/firefox_app_128x128.png'},{'revision':'11fd9098c4b07c8a07e1d2a1e309e046','url':'/assets/firefox_app_512x512.png'},{'revision':'27cddfc922dca3bfa27b4a00fc2f5e36','url':'/assets/firefox_app_60x60.png'},{'revision':'2547879ee2928a5fd56dca483bcbd967','url':'/assets/images/CT-AAA.png'},{'revision':'245628fb9d18d6c5cd529615079f8e86','url':'/assets/images/CT-AAA2.png'},{'revision':'997a9c8b57e7b4e46d8f01fb49d078c6','url':'/assets/images/CT-Air.png'},{'revision':'e7ed89711f63348d49898da3a2b73ab9','url':'/assets/images/CT-Bone.png'},{'revision':'09d1dc6efebb10a60cdf85ed74a10214','url':'/assets/images/CT-Bones.png'},{'revision':'f8ae9bafd3b90ba3efbdcbe8901db187','url':'/assets/images/CT-Cardiac.png'},{'revision':'ed0cc538aba90d6a1c029923ca9b47db','url':'/assets/images/CT-Cardiac2.png'},{'revision':'dfdaf4e4889aefbf09514545f45726bb','url':'/assets/images/CT-Cardiac3.png'},{'revision':'5d4b9a331136a1a5d7ce7ccf7dfcca36','url':'/assets/images/CT-Chest-Contrast-Enhanced.png'},{'revision':'5fb264499a5bb42487663b00e42d1513','url':'/assets/images/CT-Chest-Vessels.png'},{'revision':'ab8f0e569c972388ddaaa61b92449fac','url':'/assets/images/CT-Coronary-Arteries-2.png'},{'revision':'e4e7e2e3cc09bc8c4fb03b6441bd2845','url':'/assets/images/CT-Coronary-Arteries-3.png'},{'revision':'79a2962a2d3cbe4bd3b675b5ca83c659','url':'/assets/images/CT-Coronary-Arteries.png'},{'revision':'6502a6bdab1c70e2188c3bf12ce5d4e4','url':'/assets/images/CT-Cropped-Volume-Bone.png'},{'revision':'e28ad3cf5ed2006fc5a7cffd602736fc','url':'/assets/images/CT-Fat.png'},{'revision':'ca1c5be76053edee27e68ffbf9105101','url':'/assets/images/CT-Liver-Vasculature.png'},{'revision':'d6c9ab857ed2ad19f1ff20bea02b6655','url':'/assets/images/CT-Lung.png'},{'revision':'ddb599c6a163bdf28ece8de1a337470a','url':'/assets/images/CT-MIP.png'},{'revision':'0b0dcf7940a555e2a9a0900f7f84d4d3','url':'/assets/images/CT-Muscle.png'},{'revision':'6082d383f9ce375a5873e2a00fc4d372','url':'/assets/images/CT-Pulmonary-Arteries.png'},{'revision':'b317366149ee2607bec95d63eb4d7661','url':'/assets/images/CT-Soft-Tissue.png'},{'revision':'4b0cd5a673ebb71da22a91ed608d6695','url':'/assets/images/DTI-FA-Brain.png'},{'revision':'3ea1cbee022af5b94710b73726308832','url':'/assets/images/MR-Angio.png'},{'revision':'bd25ca7b166193547f34950eed440e5c','url':'/assets/images/MR-Default.png'},{'revision':'2e50a49b859aeb316a1c23f911fce9ad','url':'/assets/images/MR-MIP.png'},{'revision':'6ba74de6961e08652ff9e2f1871b473d','url':'/assets/images/MR-T2-Brain.png'},{'revision':'42406bb474f0f87cf04a5afbbcd5e389','url':'/assets/images/VolumeRendering.png'},{'revision':'2017d95fae79dcf34b5a5b52586d4763','url':'/assets/manifest.webapp'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/mstile-144x144.png'},{'revision':'334895225e16a7777e45d81964725a97','url':'/assets/mstile-150x150.png'},{'revision':'e295cca4af6ed0365cf7b014d91b0e9d','url':'/assets/mstile-310x150.png'},{'revision':'cbefa8c42250e5f2443819fe2c69d91e','url':'/assets/mstile-310x310.png'},{'revision':'aa411a69df2b33a1362fa38d1257fa9d','url':'/assets/mstile-70x70.png'},{'revision':'5609af4f69e40e33471aee770ea1d802','url':'/assets/yandex-browser-50x50.png'},{'revision':'dd001f21b3970d5a7f3e245cc10d21df','url':'/assets/yandex-browser-manifest.json'},{'revision':null,'url':'/c22b37c3488e1d6c3aa4.wasm'},{'revision':null,'url':'/compute.bundle.b7c2ea55f1a69f4a736b.js'},{'revision':'c377e1f5fe4a207d270c3f7a8dd3e3ca','url':'/dicom-microscopy-viewer/charlswasm_decode.wasm'},{'revision':'9214592a1edd456ad2ef69772201398e','url':'/dicom-microscopy-viewer/dataLoader.worker.min.js'},{'revision':'813dee9adb3a3478dedc6dfe1479e15b','url':'/dicom-microscopy-viewer/dataLoader.worker.min.js.map'},{'revision':'fb088ddc5ec5de63aa6095f70baa2d45','url':'/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js'},{'revision':'cdf943673c34e8dd6be85b026bdffc70','url':'/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js.map'},{'revision':'52b9a07fe0541fe8c313d9788550bf51','url':'/dicom-microscopy-viewer/dicomiccwasm.wasm'},{'revision':'7edb59d2be7c993050cb31ded36afa31','url':'/dicom-microscopy-viewer/libjpegturbowasm_decode.wasm'},{'revision':'54a25d82a224dfd401569baffc8b478d','url':'/dicom-microscopy-viewer/openjpegwasm_decode.wasm'},{'revision':'4acdd19a35d759ec2669f1ba9490937d','url':'/es6-shim.min.js'},{'revision':'92b01d0a387d59841e02cc3a4c994657','url':'/google.js'},{'revision':null,'url':'/histogram-worker.bundle.a2a50c4674d99c619ca7.js'},{'revision':'785f67e29f9cf279ccda2cb494fc904d','url':'/index.html'},{'revision':'31c0367ca4160b2c6373e905739c5719','url':'/init-service-worker.js'},{'revision':null,'url':'/interpolation.bundle.829844ff3f72f5645f29.js'},{'revision':'74fc9658b62903be2048c1f82a22b4d4','url':'/manifest.json'},{'revision':'3fa71aa0af3e34b4ebd9a71eee0f4bdd','url':'/ohif-logo-light.svg'},{'revision':'7e81da785c63e75650101db6c5d7560e','url':'/ohif-logo.svg'},{'revision':'eadf8bf1d85032a029e2c0df4b8938b0','url':'/oidc-client.min.js'},{'revision':'242abae066a3d4717e09f218703f1923','url':'/ort/cjs/ort.all.min.js'},{'revision':'039ea411b3b655094035e85bb2e245d4','url':'/ort/cjs/ort.all.min.js.map'},{'revision':'fb509ab752acf788c3cc25459ae72e62','url':'/ort/cjs/ort.min.js'},{'revision':'30087ad61fc31272eb6094962e3a0451','url':'/ort/cjs/ort.min.js.map'},{'revision':'0fad6d8ca65291350ca8a1751659a536','url':'/ort/cjs/ort.training.wasm.min.js'},{'revision':'da692fb2cd7f67223b92a90955b87cb3','url':'/ort/cjs/ort.training.wasm.min.js.map'},{'revision':'f471b605fb03df54c63d5bc77a32226b','url':'/ort/cjs/ort.wasm-core.min.js'},{'revision':'cc4475faebff69233b4fdc1a78eb0399','url':'/ort/cjs/ort.wasm-core.min.js.map'},{'revision':'d228221765171d0a4cf3cb3909dd0be3','url':'/ort/cjs/ort.wasm.min.js'},{'revision':'6d132c02e5eeadf4da54c8bcc0c15200','url':'/ort/cjs/ort.wasm.min.js.map'},{'revision':'9a463e37f9550d7a23f5a47076b6b3d8','url':'/ort/cjs/ort.webgl.min.js'},{'revision':'26e251b6aee08c91a3d6e1af1410659d','url':'/ort/cjs/ort.webgl.min.js.map'},{'revision':'5cd623012201d7c5ddbbdb57224ac26d','url':'/ort/cjs/ort.webgpu.min.js'},{'revision':'e53c54f9663a5d7573b66dd3d25fb93a','url':'/ort/cjs/ort.webgpu.min.js.map'},{'revision':'a6b7eb31b5dcf3835a90ea0d201f21e3','url':'/ort/cjs/package.json'},{'revision':'2ccbe0c4397149108dd0d7ced00b5879','url':'/ort/esm/ort.all.min.js'},{'revision':'2b2ff793ba11a59563a504067aa1e469','url':'/ort/esm/ort.all.min.js.map'},{'revision':'978e978337e66e848c2351da61fd7e8e','url':'/ort/esm/ort.min.js'},{'revision':'add9f88f20194b214c8a97b200c4eac0','url':'/ort/esm/ort.min.js.map'},{'revision':'61471773b94ac06d0d814b49cf619233','url':'/ort/esm/ort.training.wasm.min.js'},{'revision':'60057feb2e9c1d39d7e52b165e450e72','url':'/ort/esm/ort.training.wasm.min.js.map'},{'revision':'12635093e14a67921565de89f678c470','url':'/ort/esm/ort.wasm-core.min.js'},{'revision':'1d2c905465e8b47dc023beaf715bb6ae','url':'/ort/esm/ort.wasm-core.min.js.map'},{'revision':'f2780d73ea108c5728b4c4fb6bd1e8df','url':'/ort/esm/ort.wasm.min.js'},{'revision':'e1af0f0e8befaa973a9192cdc1a882fb','url':'/ort/esm/ort.wasm.min.js.map'},{'revision':'c5a2e8ed939ccfb0211336d8b385d81a','url':'/ort/esm/ort.webgl.min.js'},{'revision':'9e0198bc10517578066aed6c8baef1a3','url':'/ort/esm/ort.webgl.min.js.map'},{'revision':'0c96a22438d8ffdf94f13b1693dbed8b','url':'/ort/esm/ort.webgpu.min.js'},{'revision':'24126f825e1c2dd678b4b85cde6c4e3a','url':'/ort/esm/ort.webgpu.min.js.map'},{'revision':'b305354b5d3207dc798e87449005a1de','url':'/ort/esm/package.json'},{'revision':'10ba4d1a5289405cff7d9b5f453b60b4','url':'/ort/ort-training-wasm-simd.wasm'},{'revision':'f7380fb5928344460bac0e5833ee4a82','url':'/ort/ort-wasm-simd-threaded.jsep.wasm'},{'revision':'068e15f5aba004197782c011a782c500','url':'/ort/ort-wasm-simd-threaded.wasm'},{'revision':'8a468bda81bfb9e375907f0b6da8ffee','url':'/ort/ort-wasm-simd.jsep.wasm'},{'revision':'27a8292511e77fc50ced64326875ca4a','url':'/ort/ort-wasm-simd.wasm'},{'revision':'c9cf2d09cfabe6ea517c87620091a2fb','url':'/ort/ort-wasm-threaded.wasm'},{'revision':'88cb0475e8c4228b29dd201646223f0c','url':'/ort/ort-wasm.wasm'},{'revision':'708def774c211a2b036384d9e14dbfe7','url':'/ort/ort.all.js'},{'revision':'32e292212f5767983e5433f0a88d3425','url':'/ort/ort.all.min.js'},{'revision':'c4a4b66af400491c83591ab732dac868','url':'/ort/ort.all.min.js.map'},{'revision':'5d78ec66bcab8a26756d43b8c63a8f1e','url':'/ort/ort.js'},{'revision':'d552a78742409520bd30fb824a88a266','url':'/ort/ort.min.js'},{'revision':'a1fdb4abef4a6130f72148fe469ca114','url':'/ort/ort.min.js.map'},{'revision':'e3b420cb98f192d8755934dde7c014db','url':'/ort/ort.node.min.js'},{'revision':'9b0c2098e6c9b0f6d6e54e8cb434ed76','url':'/ort/ort.node.min.js.map'},{'revision':'722dabcfbb18772ca80ef96ef9b9a036','url':'/ort/ort.training.wasm.min.js'},{'revision':'de35b3d2e302163bdcb80d3e20c84266','url':'/ort/ort.training.wasm.min.js.map'},{'revision':'f92b62229fc36d346f720b2410e63576','url':'/ort/ort.wasm-core.min.js'},{'revision':'8f56640956155afecadc318d8a32e0f6','url':'/ort/ort.wasm-core.min.js.map'},{'revision':'5ac1ffe964e3bd1f0d2e6a3a18a5a1ba','url':'/ort/ort.wasm.min.js'},{'revision':'9b0a74e48529a07b61428b1a48233b39','url':'/ort/ort.wasm.min.js.map'},{'revision':'4591c9c641ab0151b9a8cdc1ce110286','url':'/ort/ort.webgl.min.js'},{'revision':'77e632e10b98c8d10e17bb3071d5cba4','url':'/ort/ort.webgl.min.js.map'},{'revision':'027aca68552f5081e90a08f7fb064fb7','url':'/ort/ort.webgpu.min.js'},{'revision':'12dc9d5c577bac166f0f74590e4d27dd','url':'/ort/ort.webgpu.min.js.map'},{'revision':null,'url':'/polySeg.bundle.e1f6f05d81ea1352bef3.js'},{'revision':'a1aef5311245f5864315443d12246c37','url':'/polyfill.min.js'},{'revision':'981ac7f7543b8330e3826aff72c33382','url':'/serve.json'},{'revision':'b1e488d9955b62bd2858874df11d5223','url':'/silent-refresh.html'}]);
54
54
 
55
55
  // TODO: Cache API
56
56
  // https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/cache-api
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ohif/app",
3
- "version": "3.13.0-beta.68",
3
+ "version": "3.13.0-beta.69",
4
4
  "productVersion": "3.4.0",
5
5
  "description": "OHIF Viewer",
6
6
  "author": "OHIF Contributors",
@@ -56,25 +56,25 @@
56
56
  "@cornerstonejs/codec-openjph": "2.4.7",
57
57
  "@cornerstonejs/dicom-image-loader": "4.22.3",
58
58
  "@emotion/serialize": "1.3.3",
59
- "@ohif/core": "3.13.0-beta.68",
60
- "@ohif/extension-cornerstone": "3.13.0-beta.68",
61
- "@ohif/extension-cornerstone-dicom-rt": "3.13.0-beta.68",
62
- "@ohif/extension-cornerstone-dicom-seg": "3.13.0-beta.68",
63
- "@ohif/extension-cornerstone-dicom-sr": "3.13.0-beta.68",
64
- "@ohif/extension-default": "3.13.0-beta.68",
65
- "@ohif/extension-dicom-microscopy": "3.13.0-beta.68",
66
- "@ohif/extension-dicom-pdf": "3.13.0-beta.68",
67
- "@ohif/extension-dicom-video": "3.13.0-beta.68",
68
- "@ohif/extension-test": "3.13.0-beta.68",
69
- "@ohif/extension-ultrasound-pleura-bline": "3.13.0-beta.68",
70
- "@ohif/i18n": "3.13.0-beta.68",
71
- "@ohif/mode-basic-dev-mode": "3.13.0-beta.68",
72
- "@ohif/mode-longitudinal": "3.13.0-beta.68",
73
- "@ohif/mode-microscopy": "3.13.0-beta.68",
74
- "@ohif/mode-test": "3.13.0-beta.68",
75
- "@ohif/mode-ultrasound-pleura-bline": "3.13.0-beta.68",
76
- "@ohif/ui": "3.13.0-beta.68",
77
- "@ohif/ui-next": "3.13.0-beta.68",
59
+ "@ohif/core": "3.13.0-beta.69",
60
+ "@ohif/extension-cornerstone": "3.13.0-beta.69",
61
+ "@ohif/extension-cornerstone-dicom-rt": "3.13.0-beta.69",
62
+ "@ohif/extension-cornerstone-dicom-seg": "3.13.0-beta.69",
63
+ "@ohif/extension-cornerstone-dicom-sr": "3.13.0-beta.69",
64
+ "@ohif/extension-default": "3.13.0-beta.69",
65
+ "@ohif/extension-dicom-microscopy": "3.13.0-beta.69",
66
+ "@ohif/extension-dicom-pdf": "3.13.0-beta.69",
67
+ "@ohif/extension-dicom-video": "3.13.0-beta.69",
68
+ "@ohif/extension-test": "3.13.0-beta.69",
69
+ "@ohif/extension-ultrasound-pleura-bline": "3.13.0-beta.69",
70
+ "@ohif/i18n": "3.13.0-beta.69",
71
+ "@ohif/mode-basic-dev-mode": "3.13.0-beta.69",
72
+ "@ohif/mode-longitudinal": "3.13.0-beta.69",
73
+ "@ohif/mode-microscopy": "3.13.0-beta.69",
74
+ "@ohif/mode-test": "3.13.0-beta.69",
75
+ "@ohif/mode-ultrasound-pleura-bline": "3.13.0-beta.69",
76
+ "@ohif/ui": "3.13.0-beta.69",
77
+ "@ohif/ui-next": "3.13.0-beta.69",
78
78
  "@svgr/webpack": "8.1.0",
79
79
  "@types/react": "18.3.23",
80
80
  "classnames": "2.5.1",