@ohif/app 3.12.0-beta.68 → 3.12.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 (35) hide show
  1. package/dist/{1447.bundle.42a201eb7cfb535dbb27.js → 1447.bundle.0e8117bd9e72c339bd04.js} +2 -2
  2. package/dist/{2518.bundle.80f6f53d5a171288d177.js → 2518.bundle.bdbd870da5355fdf502a.js} +2 -2
  3. package/dist/{3613.bundle.f54ec42efcfa4f83656c.js → 3613.bundle.14721af2527117f720b0.js} +7 -4
  4. package/dist/{4019.bundle.2f21e5bc490fc3b743a8.js → 4019.bundle.acd0f85d0467cb10d86a.js} +8 -7
  5. package/dist/{4113.bundle.4a27d08881e8e8726cdc.js → 4113.bundle.cdb5aabbb16c44b3937d.js} +7 -11
  6. package/dist/{5400.bundle.c287bffc0f21bc857c12.js → 5400.bundle.eb0f5866140b5db31518.js} +4 -8
  7. package/dist/{7412.bundle.930910a9ad29b9d44d34.js → 7412.bundle.a8aa0b243b2a05031789.js} +42 -6
  8. package/dist/{9892.bundle.36238ff727cb3bba26e4.js → 9892.bundle.7a23896727af274e8c43.js} +41 -11
  9. package/dist/{app.bundle.0d5d24cd2914cba3684d.js → app.bundle.fb405f7159a5d06049af.js} +11 -3
  10. package/dist/{compute.bundle.a63e807a357d03539511.js → compute.bundle.5d0df54f99d2a555a02a.js} +1 -1
  11. package/dist/index.html +1 -1
  12. package/dist/{polySeg.bundle.75dd3439f4989f634f98.js → polySeg.bundle.eb47d9d9105dcfbb56fc.js} +1 -1
  13. package/dist/sw.js +1 -1
  14. package/package.json +21 -21
  15. /package/dist/{1459.bundle.95bf19211e4a0cc6eb85.js → 1459.bundle.6d1fa1c8fdbb81f0f359.js} +0 -0
  16. /package/dist/{1604.bundle.d8d092c4b7f0752f1795.js → 1604.bundle.47f2f0635a91795b3c49.js} +0 -0
  17. /package/dist/{1807.bundle.4b36d85142830705cc73.js → 1807.bundle.68fc01f6cad9998763ea.js} +0 -0
  18. /package/dist/{1919.bundle.58198149cd016af5c240.js → 1919.bundle.1931c96cc842a6098baa.js} +0 -0
  19. /package/dist/{213.bundle.ed0a3b64ad066e7fe2aa.js → 213.bundle.f9c868b449c1a68b6f35.js} +0 -0
  20. /package/dist/{2243.bundle.1b13d9c823fa58c47dd2.js → 2243.bundle.2e464ef173f36231cf06.js} +0 -0
  21. /package/dist/{2424.bundle.7a57d8210c8644e83d61.js → 2424.bundle.a9eecc0e2aeb8699f135.js} +0 -0
  22. /package/dist/{3409.bundle.fc5d04563e48e2d9509c.js → 3409.bundle.2d77e2bddb2a19e798ed.js} +0 -0
  23. /package/dist/{414.bundle.647df2f6e756c8adf1bc.js → 414.bundle.46f922eb0a1911124a73.js} +0 -0
  24. /package/dist/{5457.bundle.650c3a9b81d8d3fafaee.js → 5457.bundle.ee43997565093fa2caec.js} +0 -0
  25. /package/dist/{5485.bundle.dff6dd53d1d533b0d00f.js → 5485.bundle.a15a2f530189848c31ee.js} +0 -0
  26. /package/dist/{6027.bundle.9ba3ec82debbfbd24227.js → 6027.bundle.8971d7d4eec7b0b4cfb7.js} +0 -0
  27. /package/dist/{6201.bundle.1268f4b25e533d6e5752.js → 6201.bundle.cc73f3d377cacd418cb0.js} +0 -0
  28. /package/dist/{6991.bundle.fa5072b6f1712784344f.js → 6991.bundle.77f5d56a53a04f524bc3.js} +0 -0
  29. /package/dist/{7197.bundle.d3f79fce26514955231c.js → 7197.bundle.364e03cf01a6b56217f9.js} +0 -0
  30. /package/dist/{7639.bundle.47232f936255859feba8.js → 7639.bundle.e6024d8f644419db89ff.js} +0 -0
  31. /package/dist/{810.bundle.41459c511a763f328524.js → 810.bundle.0806263ecf7902133c17.js} +0 -0
  32. /package/dist/{85.bundle.284a0d47f14a7969112c.js → 85.bundle.de54be0dcfcc960c45a0.js} +0 -0
  33. /package/dist/{8558.bundle.465dd596983d518dc10c.js → 8558.bundle.29e3ea8a442b8a40e89d.js} +0 -0
  34. /package/dist/{8815.bundle.eb855e3a55f5bcd0ede4.js → 8815.bundle.4fe4069d6c0a8d9b95cb.js} +0 -0
  35. /package/dist/{934.bundle.90f33b73332a588bafa8.js → 934.bundle.5aef917dada6d51ac96b.js} +0 -0
@@ -10394,8 +10394,8 @@ function AboutModalDefault() {
10394
10394
  name
10395
10395
  } = (0,browser_detect_es5/* default */.A)();
10396
10396
  const browser = `${name[0].toUpperCase()}${name.substr(1)} ${version}`;
10397
- const versionNumber = "3.12.0-beta.68";
10398
- const commitHash = "170e860aa1b786ab6056cf31076804302a2bc462";
10397
+ const versionNumber = "3.12.0-beta.69";
10398
+ const commitHash = "503780247ce7228c602a539fd88ea374e7d0d42f";
10399
10399
  const [main, beta] = versionNumber.split('-');
10400
10400
  return /*#__PURE__*/react.createElement(ui_next_src/* AboutModal */.VTU, {
10401
10401
  className: "w-[400px]"
@@ -3730,9 +3730,9 @@ class MeasurementReport_MeasurementReport {
3730
3730
  } = SCOORDGroup.ContentSequence;
3731
3731
  const {
3732
3732
  ReferencedSOPInstanceUID,
3733
- ReferencedFrameNumber
3733
+ ReferencedFrameNumber = 1
3734
3734
  } = ReferencedSOPSequence;
3735
- const referencedImageId = sopInstanceUIDToImageIdMap[ReferencedSOPInstanceUID];
3735
+ const referencedImageId = sopInstanceUIDToImageIdMap[`${ReferencedSOPInstanceUID}:${ReferencedFrameNumber}`];
3736
3736
  const imagePlaneModule = metadata.get("imagePlaneModule", referencedImageId);
3737
3737
  const annotationUID = MeasurementReport_DicomMetaDictionary.uid();
3738
3738
  return {
@@ -19456,6 +19456,7 @@ class ImageVolume {
19456
19456
  dimensions,
19457
19457
  imageIds,
19458
19458
  numberOfComponents,
19459
+ id: volumeId,
19459
19460
  });
19460
19461
  this.numVoxels =
19461
19462
  this.dimensions[0] * this.dimensions[1] * this.dimensions[2];
@@ -34390,7 +34391,7 @@ function uuidv4() {
34390
34391
 
34391
34392
  "use strict";
34392
34393
  /* unused harmony export version */
34393
- const version = '4.5.13';
34394
+ const version = '4.5.19';
34394
34395
 
34395
34396
 
34396
34397
  /***/ }),
@@ -41600,18 +41601,20 @@ function cleanupPolylines(polylines) {
41600
41601
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
41601
41602
  /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
41602
41603
  /* harmony export */ });
41604
+ /* unused harmony export calculatePerimeter */
41605
+ /* harmony import */ var gl_matrix__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3823);
41606
+
41603
41607
  function calculatePerimeter(polyline, closed) {
41604
41608
  let perimeter = 0;
41605
41609
  for (let i = 0; i < polyline.length - 1; i++) {
41606
41610
  const point1 = polyline[i];
41607
41611
  const point2 = polyline[i + 1];
41608
- perimeter += Math.sqrt(Math.pow(point2[0] - point1[0], 2) + Math.pow(point2[1] - point1[1], 2));
41612
+ perimeter += gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.dist */ .eR.dist(point1, point2);
41609
41613
  }
41610
41614
  if (closed) {
41611
41615
  const firstPoint = polyline[0];
41612
41616
  const lastPoint = polyline[polyline.length - 1];
41613
- perimeter += Math.sqrt(Math.pow(lastPoint[0] - firstPoint[0], 2) +
41614
- Math.pow(lastPoint[1] - firstPoint[1], 2));
41617
+ perimeter += gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.dist */ .eR.dist(firstPoint, lastPoint);
41615
41618
  }
41616
41619
  return perimeter;
41617
41620
  }
@@ -5130,19 +5130,20 @@ function filterAnnotationsWithinSlice(annotations, camera, spacingInNormalDirect
5130
5130
  const { focalPoint } = camera;
5131
5131
  const annotationsWithinSlice = [];
5132
5132
  for (const annotation of annotationsWithParallelNormals) {
5133
- const data = annotation.data;
5134
- const point = data.handles.points[0] || data.contour?.polyline[0];
5135
- if (!annotation.isVisible) {
5133
+ const { data, metadata, isVisible } = annotation;
5134
+ if (!isVisible) {
5136
5135
  continue;
5137
5136
  }
5138
- const dir = gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.create */ .eR.create();
5137
+ const point = metadata.planeRestriction?.point ||
5138
+ data.handles.points[0] ||
5139
+ data.contour?.polyline[0];
5139
5140
  if (!point) {
5140
5141
  annotationsWithinSlice.push(annotation);
5141
5142
  continue;
5142
5143
  }
5143
- gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.sub */ .eR.sub(dir, focalPoint, point);
5144
- const dot = gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.dot */ .eR.dot(dir, viewPlaneNormal);
5145
- if (Math.abs(dot) < halfSpacingInNormalDirection) {
5144
+ const dir = gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.sub */ .eR.sub(gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.create */ .eR.create(), focalPoint, point);
5145
+ const dot = Math.abs(gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.dot */ .eR.dot(dir, viewPlaneNormal));
5146
+ if (dot < halfSpacingInNormalDirection) {
5146
5147
  annotationsWithinSlice.push(annotation);
5147
5148
  }
5148
5149
  }
@@ -1367,19 +1367,15 @@ function hydrateStructuredReport({
1367
1367
  }
1368
1368
  const instance = src/* DicomMetadataStore */.H8.getInstance(displaySet.StudyInstanceUID, displaySet.SeriesInstanceUID, displaySet.SOPInstanceUID);
1369
1369
  const sopInstanceUIDToImageId = {};
1370
- const imageIdsForToolState = {};
1371
1370
  displaySet.measurements.forEach(measurement => {
1372
1371
  const {
1373
1372
  ReferencedSOPInstanceUID,
1374
1373
  imageId,
1375
- frameNumber
1374
+ frameNumber = 1
1376
1375
  } = measurement;
1377
- if (!sopInstanceUIDToImageId[ReferencedSOPInstanceUID]) {
1378
- sopInstanceUIDToImageId[ReferencedSOPInstanceUID] = imageId;
1379
- imageIdsForToolState[ReferencedSOPInstanceUID] = [];
1380
- }
1381
- if (!imageIdsForToolState[ReferencedSOPInstanceUID][frameNumber]) {
1382
- imageIdsForToolState[ReferencedSOPInstanceUID][frameNumber] = imageId;
1376
+ const key = `${ReferencedSOPInstanceUID}:${frameNumber}`;
1377
+ if (!sopInstanceUIDToImageId[key]) {
1378
+ sopInstanceUIDToImageId[key] = imageId;
1383
1379
  }
1384
1380
  });
1385
1381
 
@@ -1421,8 +1417,8 @@ function hydrateStructuredReport({
1421
1417
  // dcmjs and Cornerstone3D has structural defect in supporting multi-frame
1422
1418
  // files, and looking up the imageId from sopInstanceUIDToImageId results
1423
1419
  // in the wrong value.
1424
- const frameNumber = toolData.annotation.data && toolData.annotation.data.frameNumber || 1;
1425
- const imageId = imageIdsForToolState[toolData.sopInstanceUid][frameNumber] || sopInstanceUIDToImageId[toolData.sopInstanceUid];
1420
+ const frameNumber = toolData.annotation.data?.frameNumber || 1;
1421
+ const imageId = sopInstanceUIDToImageId[`${toolData.sopInstanceUid}:${frameNumber}`];
1426
1422
  if (!imageIds.includes(imageId)) {
1427
1423
  imageIds.push(imageId);
1428
1424
  }
@@ -1459,7 +1455,7 @@ function hydrateStructuredReport({
1459
1455
  // files, and looking up the imageId from sopInstanceUIDToImageId results
1460
1456
  // in the wrong value.
1461
1457
  const frameNumber = toolData.annotation.data && toolData.annotation.data.frameNumber || 1;
1462
- const imageId = imageIdsForToolState[toolData.sopInstanceUid][frameNumber] || sopInstanceUIDToImageId[toolData.sopInstanceUid];
1458
+ const imageId = sopInstanceUIDToImageId[`${toolData.sopInstanceUid}:${frameNumber}`];
1463
1459
  if (!imageId) {
1464
1460
  return getReferenceData3D(toolData, servicesManager);
1465
1461
  }
@@ -891,13 +891,11 @@ class PlanarFreehandROITool extends _base_ContourSegmentationBaseTool__WEBPACK_I
891
891
  else {
892
892
  this.updateOpenCachedStats({
893
893
  metadata,
894
- canvasCoordinates,
895
894
  targetId,
896
895
  cachedStats,
897
896
  modalityUnit,
898
897
  calibratedScale,
899
- deltaInX,
900
- deltaInY,
898
+ points,
901
899
  });
902
900
  }
903
901
  }
@@ -1150,8 +1148,7 @@ class PlanarFreehandROITool extends _base_ContourSegmentationBaseTool__WEBPACK_I
1150
1148
  worldPosIndex2[2] = Math.floor(worldPosIndex2[2]);
1151
1149
  let area = _utilities_math__WEBPACK_IMPORTED_MODULE_4__.polyline.getArea(canvasCoordinates) / scale / scale;
1152
1150
  area *= deltaInX * deltaInY;
1153
- let perimeter = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(canvasCoordinates, closed) / scale;
1154
- perimeter *= Math.sqrt(Math.pow(deltaInX, 2) + Math.pow(deltaInY, 2));
1151
+ const perimeter = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(points, closed) / scale;
1155
1152
  const iDelta = 0.01 * (iMax - iMin);
1156
1153
  const jDelta = 0.01 * (jMax - jMin);
1157
1154
  const kDelta = 0.01 * (kMax - kMin);
@@ -1221,10 +1218,9 @@ class PlanarFreehandROITool extends _base_ContourSegmentationBaseTool__WEBPACK_I
1221
1218
  unit,
1222
1219
  };
1223
1220
  }
1224
- updateOpenCachedStats({ targetId, metadata, canvasCoordinates, cachedStats, modalityUnit, calibratedScale, deltaInX, deltaInY, }) {
1221
+ updateOpenCachedStats({ targetId, metadata, cachedStats, modalityUnit, calibratedScale, points, }) {
1225
1222
  const { scale, unit } = calibratedScale;
1226
- let length = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(canvasCoordinates, closed) / scale;
1227
- length *= Math.sqrt(Math.pow(deltaInX, 2) + Math.pow(deltaInY, 2));
1223
+ const length = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(points, closed) / scale;
1228
1224
  cachedStats[targetId] = {
1229
1225
  Modality: metadata.Modality,
1230
1226
  length,
@@ -10063,6 +10063,7 @@ AnnotationEraserTool.toolName = 'Eraser';
10063
10063
 
10064
10064
 
10065
10065
 
10066
+
10066
10067
  const { RENDERING_DEFAULTS } = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_4__.CONSTANTS;
10067
10068
  function defaultReferenceLineColor() {
10068
10069
  return 'rgb(0, 200, 0)';
@@ -11232,9 +11233,42 @@ class CrosshairsTool extends _base__WEBPACK_IMPORTED_MODULE_3__/* .AnnotationToo
11232
11233
  });
11233
11234
  }
11234
11235
  setToolCenter(toolCenter, suppressEvents = false) {
11235
- this.toolCenter = toolCenter;
11236
11236
  const viewportsInfo = this._getViewportsInfo();
11237
- (0,_utilities_triggerAnnotationRenderForViewportIds__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(viewportsInfo.map(({ viewportId }) => viewportId));
11237
+ viewportsInfo.map(({ renderingEngineId, viewportId }) => {
11238
+ const renderingEngine = (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_4__.getRenderingEngine)(renderingEngineId);
11239
+ const viewport = renderingEngine.getViewport(viewportId);
11240
+ const camera = viewport.getCamera();
11241
+ const { focalPoint, position, viewPlaneNormal } = camera;
11242
+ const delta = [
11243
+ toolCenter[0] - focalPoint[0],
11244
+ toolCenter[1] - focalPoint[1],
11245
+ toolCenter[2] - focalPoint[2],
11246
+ ];
11247
+ const scroll = delta[0] * viewPlaneNormal[0] +
11248
+ delta[1] * viewPlaneNormal[1] +
11249
+ delta[2] * viewPlaneNormal[2];
11250
+ const scrollDelta = [
11251
+ scroll * viewPlaneNormal[0],
11252
+ scroll * viewPlaneNormal[1],
11253
+ scroll * viewPlaneNormal[2],
11254
+ ];
11255
+ const newFocalPoint = [
11256
+ focalPoint[0] + scrollDelta[0],
11257
+ focalPoint[1] + scrollDelta[1],
11258
+ focalPoint[2] + scrollDelta[2],
11259
+ ];
11260
+ const newPosition = [
11261
+ position[0] + scrollDelta[0],
11262
+ position[1] + scrollDelta[1],
11263
+ position[2] + scrollDelta[2],
11264
+ ];
11265
+ viewport.setCamera({
11266
+ focalPoint: newFocalPoint,
11267
+ position: newPosition,
11268
+ });
11269
+ viewport.render();
11270
+ });
11271
+ this.toolCenter = toolCenter;
11238
11272
  if (!suppressEvents) {
11239
11273
  (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_4__.triggerEvent)(_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_4__.eventTarget, _enums__WEBPACK_IMPORTED_MODULE_9__.Events.CROSSHAIR_TOOL_CENTER_CHANGED, {
11240
11274
  toolGroupId: this.toolGroupId,
@@ -36365,18 +36399,20 @@ function cleanupPolylines(polylines) {
36365
36399
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
36366
36400
  /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
36367
36401
  /* harmony export */ });
36402
+ /* unused harmony export calculatePerimeter */
36403
+ /* harmony import */ var gl_matrix__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3823);
36404
+
36368
36405
  function calculatePerimeter(polyline, closed) {
36369
36406
  let perimeter = 0;
36370
36407
  for (let i = 0; i < polyline.length - 1; i++) {
36371
36408
  const point1 = polyline[i];
36372
36409
  const point2 = polyline[i + 1];
36373
- perimeter += Math.sqrt(Math.pow(point2[0] - point1[0], 2) + Math.pow(point2[1] - point1[1], 2));
36410
+ perimeter += gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.dist */ .eR.dist(point1, point2);
36374
36411
  }
36375
36412
  if (closed) {
36376
36413
  const firstPoint = polyline[0];
36377
36414
  const lastPoint = polyline[polyline.length - 1];
36378
- perimeter += Math.sqrt(Math.pow(lastPoint[0] - firstPoint[0], 2) +
36379
- Math.pow(lastPoint[1] - firstPoint[1], 2));
36415
+ perimeter += gl_matrix__WEBPACK_IMPORTED_MODULE_0__/* .vec3.dist */ .eR.dist(firstPoint, lastPoint);
36380
36416
  }
36381
36417
  return perimeter;
36382
36418
  }
@@ -44268,7 +44304,7 @@ __webpack_require__.r(__webpack_exports__);
44268
44304
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
44269
44305
  /* harmony export */ r: () => (/* binding */ version)
44270
44306
  /* harmony export */ });
44271
- const version = '4.5.13';
44307
+ const version = '4.5.19';
44272
44308
 
44273
44309
 
44274
44310
  /***/ }),
@@ -6918,7 +6918,7 @@ var COLOR_LUT = __webpack_require__(93952);
6918
6918
 
6919
6919
 
6920
6920
  ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/version.js
6921
- const version = '4.5.13';
6921
+ const version = '4.5.19';
6922
6922
 
6923
6923
  ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/synchronizers/callbacks/cameraSyncCallback.js
6924
6924
 
@@ -13894,6 +13894,7 @@ var MatrixBuilder = __webpack_require__(89265);
13894
13894
 
13895
13895
 
13896
13896
 
13897
+
13897
13898
  const { RENDERING_DEFAULTS: CrosshairsTool_RENDERING_DEFAULTS } = esm.CONSTANTS;
13898
13899
  function CrosshairsTool_defaultReferenceLineColor() {
13899
13900
  return 'rgb(0, 200, 0)';
@@ -15063,9 +15064,42 @@ class CrosshairsTool extends base/* AnnotationTool */.EC {
15063
15064
  });
15064
15065
  }
15065
15066
  setToolCenter(toolCenter, suppressEvents = false) {
15066
- this.toolCenter = toolCenter;
15067
15067
  const viewportsInfo = this._getViewportsInfo();
15068
- (0,triggerAnnotationRenderForViewportIds/* default */.A)(viewportsInfo.map(({ viewportId }) => viewportId));
15068
+ viewportsInfo.map(({ renderingEngineId, viewportId }) => {
15069
+ const renderingEngine = (0,esm.getRenderingEngine)(renderingEngineId);
15070
+ const viewport = renderingEngine.getViewport(viewportId);
15071
+ const camera = viewport.getCamera();
15072
+ const { focalPoint, position, viewPlaneNormal } = camera;
15073
+ const delta = [
15074
+ toolCenter[0] - focalPoint[0],
15075
+ toolCenter[1] - focalPoint[1],
15076
+ toolCenter[2] - focalPoint[2],
15077
+ ];
15078
+ const scroll = delta[0] * viewPlaneNormal[0] +
15079
+ delta[1] * viewPlaneNormal[1] +
15080
+ delta[2] * viewPlaneNormal[2];
15081
+ const scrollDelta = [
15082
+ scroll * viewPlaneNormal[0],
15083
+ scroll * viewPlaneNormal[1],
15084
+ scroll * viewPlaneNormal[2],
15085
+ ];
15086
+ const newFocalPoint = [
15087
+ focalPoint[0] + scrollDelta[0],
15088
+ focalPoint[1] + scrollDelta[1],
15089
+ focalPoint[2] + scrollDelta[2],
15090
+ ];
15091
+ const newPosition = [
15092
+ position[0] + scrollDelta[0],
15093
+ position[1] + scrollDelta[1],
15094
+ position[2] + scrollDelta[2],
15095
+ ];
15096
+ viewport.setCamera({
15097
+ focalPoint: newFocalPoint,
15098
+ position: newPosition,
15099
+ });
15100
+ viewport.render();
15101
+ });
15102
+ this.toolCenter = toolCenter;
15069
15103
  if (!suppressEvents) {
15070
15104
  (0,esm.triggerEvent)(esm.eventTarget, enums.Events.CROSSHAIR_TOOL_CENTER_CHANGED, {
15071
15105
  toolGroupId: this.toolGroupId,
@@ -35383,13 +35417,11 @@ class PlanarFreehandROITool extends _base_ContourSegmentationBaseTool__WEBPACK_I
35383
35417
  else {
35384
35418
  this.updateOpenCachedStats({
35385
35419
  metadata,
35386
- canvasCoordinates,
35387
35420
  targetId,
35388
35421
  cachedStats,
35389
35422
  modalityUnit,
35390
35423
  calibratedScale,
35391
- deltaInX,
35392
- deltaInY,
35424
+ points,
35393
35425
  });
35394
35426
  }
35395
35427
  }
@@ -35642,8 +35674,7 @@ class PlanarFreehandROITool extends _base_ContourSegmentationBaseTool__WEBPACK_I
35642
35674
  worldPosIndex2[2] = Math.floor(worldPosIndex2[2]);
35643
35675
  let area = _utilities_math__WEBPACK_IMPORTED_MODULE_4__.polyline.getArea(canvasCoordinates) / scale / scale;
35644
35676
  area *= deltaInX * deltaInY;
35645
- let perimeter = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(canvasCoordinates, closed) / scale;
35646
- perimeter *= Math.sqrt(Math.pow(deltaInX, 2) + Math.pow(deltaInY, 2));
35677
+ const perimeter = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(points, closed) / scale;
35647
35678
  const iDelta = 0.01 * (iMax - iMin);
35648
35679
  const jDelta = 0.01 * (jMax - jMin);
35649
35680
  const kDelta = 0.01 * (kMax - kMin);
@@ -35713,10 +35744,9 @@ class PlanarFreehandROITool extends _base_ContourSegmentationBaseTool__WEBPACK_I
35713
35744
  unit,
35714
35745
  };
35715
35746
  }
35716
- updateOpenCachedStats({ targetId, metadata, canvasCoordinates, cachedStats, modalityUnit, calibratedScale, deltaInX, deltaInY, }) {
35747
+ updateOpenCachedStats({ targetId, metadata, cachedStats, modalityUnit, calibratedScale, points, }) {
35717
35748
  const { scale, unit } = calibratedScale;
35718
- let length = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(canvasCoordinates, closed) / scale;
35719
- length *= Math.sqrt(Math.pow(deltaInX, 2) + Math.pow(deltaInY, 2));
35749
+ const length = (0,_utilities_contours_calculatePerimeter__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(points, closed) / scale;
35720
35750
  cachedStats[targetId] = {
35721
35751
  Modality: metadata.Modality,
35722
35752
  length,
@@ -23349,6 +23349,7 @@ class ImageVolume {
23349
23349
  dimensions,
23350
23350
  imageIds,
23351
23351
  numberOfComponents,
23352
+ id: volumeId,
23352
23353
  });
23353
23354
  this.numVoxels =
23354
23355
  this.dimensions[0] * this.dimensions[1] * this.dimensions[2];
@@ -44216,7 +44217,7 @@ function toLowHighRange(windowWidth, windowCenter, voiLUTFunction = _enums_VOILU
44216
44217
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
44217
44218
  /* harmony export */ r: () => (/* binding */ version)
44218
44219
  /* harmony export */ });
44219
- const version = '4.5.13';
44220
+ const version = '4.5.19';
44220
44221
 
44221
44222
 
44222
44223
  /***/ }),
@@ -46763,10 +46764,16 @@ function metadataForDataset(type, imageId, dataSet) {
46763
46764
  const sliceThickness = extractSliceThicknessFromDataset(dataSet);
46764
46765
  let columnPixelSpacing = null;
46765
46766
  let rowPixelSpacing = null;
46767
+ let usingDefaultValues = false;
46766
46768
  if (pixelSpacing) {
46767
46769
  rowPixelSpacing = pixelSpacing[0];
46768
46770
  columnPixelSpacing = pixelSpacing[1];
46769
46771
  }
46772
+ else {
46773
+ usingDefaultValues = true;
46774
+ rowPixelSpacing = 1;
46775
+ columnPixelSpacing = 1;
46776
+ }
46770
46777
  let rowCosines = null;
46771
46778
  let columnCosines = null;
46772
46779
  if (imageOrientationPatient) {
@@ -46794,6 +46801,7 @@ function metadataForDataset(type, imageId, dataSet) {
46794
46801
  pixelSpacing,
46795
46802
  rowPixelSpacing,
46796
46803
  columnPixelSpacing,
46804
+ usingDefaultValues,
46797
46805
  };
46798
46806
  }
46799
46807
  if (type === MetadataModules.CINE) {
@@ -135445,7 +135453,7 @@ const detectionOptions = {
135445
135453
  }
135446
135454
  });
135447
135455
  ;// ../../i18n/package.json
135448
- const package_namespaceObject = /*#__PURE__*/JSON.parse('{"rE":"3.12.0-beta.67"}');
135456
+ const package_namespaceObject = /*#__PURE__*/JSON.parse('{"rE":"3.12.0-beta.68"}');
135449
135457
  ;// ../../i18n/src/utils.js
135450
135458
  const languagesMap = {
135451
135459
  ar: 'Arabic',
@@ -386166,7 +386174,7 @@ function __rewriteRelativeImportExtension(path, preserveJsx) {
386166
386174
  /******/ // This function allow to reference async chunks
386167
386175
  /******/ __webpack_require__.u = (chunkId) => {
386168
386176
  /******/ // return url for filenames based on template
386169
- /******/ return "" + ({"572":"polySeg","2007":"interpolation","3054":"histogram-worker","3694":"compute"}[chunkId] || chunkId) + ".bundle." + {"85":"284a0d47f14a7969112c","147":"23cc8fbbd94c0b65d337","213":"ed0a3b64ad066e7fe2aa","319":"cd9383a345b9da2ba840","414":"647df2f6e756c8adf1bc","572":"75dd3439f4989f634f98","732":"6978ac30a1e36abf06db","810":"41459c511a763f328524","934":"90f33b73332a588bafa8","1447":"42a201eb7cfb535dbb27","1459":"95bf19211e4a0cc6eb85","1604":"d8d092c4b7f0752f1795","1807":"4b36d85142830705cc73","1919":"58198149cd016af5c240","1927":"8941122be98d6aea153c","2007":"f58dd6d3d25dd22cfefd","2108":"e84aa8d858d8c4f2413e","2243":"1b13d9c823fa58c47dd2","2424":"7a57d8210c8644e83d61","2518":"80f6f53d5a171288d177","2701":"4c715c1d9bb7828886d8","2974":"a90a9df917b90bc02c69","3054":"b7bb02c6cd9273c422f5","3409":"fc5d04563e48e2d9509c","3694":"a63e807a357d03539511","4019":"2f21e5bc490fc3b743a8","4113":"4a27d08881e8e8726cdc","4202":"1cef28d8aec1155d35d1","4759":"c3bfca952eea20a0d6f9","5261":"6e1a017f8f1027557f5b","5349":"14d76a9cb0f587c90614","5400":"c287bffc0f21bc857c12","5457":"650c3a9b81d8d3fafaee","5485":"dff6dd53d1d533b0d00f","5674":"8c34228471ff9e53b8c3","5802":"48e7f1324fc9e4486603","6027":"9ba3ec82debbfbd24227","6201":"1268f4b25e533d6e5752","6939":"41fbdef87597b5172ec6","6991":"fa5072b6f1712784344f","7159":"a472333e58e930b53e22","7197":"d3f79fce26514955231c","7412":"930910a9ad29b9d44d34","7431":"6dee1ec831da974a7433","7639":"47232f936255859feba8","8094":"5c44190a325ac23e3e5c","8402":"edb924cd47cd168f621c","8558":"465dd596983d518dc10c","8740":"39b40ee21a873e824ce8","8815":"eb855e3a55f5bcd0ede4","9862":"dc627e5f01fc4698a00f"}[chunkId] + ".js";
386177
+ /******/ return "" + ({"572":"polySeg","2007":"interpolation","3054":"histogram-worker","3694":"compute"}[chunkId] || chunkId) + ".bundle." + {"85":"de54be0dcfcc960c45a0","147":"23cc8fbbd94c0b65d337","213":"f9c868b449c1a68b6f35","319":"cd9383a345b9da2ba840","414":"46f922eb0a1911124a73","572":"eb47d9d9105dcfbb56fc","732":"6978ac30a1e36abf06db","810":"0806263ecf7902133c17","934":"5aef917dada6d51ac96b","1447":"0e8117bd9e72c339bd04","1459":"6d1fa1c8fdbb81f0f359","1604":"47f2f0635a91795b3c49","1807":"68fc01f6cad9998763ea","1919":"1931c96cc842a6098baa","1927":"8941122be98d6aea153c","2007":"f58dd6d3d25dd22cfefd","2108":"e84aa8d858d8c4f2413e","2243":"2e464ef173f36231cf06","2424":"a9eecc0e2aeb8699f135","2518":"bdbd870da5355fdf502a","2701":"4c715c1d9bb7828886d8","2974":"a90a9df917b90bc02c69","3054":"b7bb02c6cd9273c422f5","3409":"2d77e2bddb2a19e798ed","3694":"5d0df54f99d2a555a02a","4019":"acd0f85d0467cb10d86a","4113":"cdb5aabbb16c44b3937d","4202":"1cef28d8aec1155d35d1","4759":"c3bfca952eea20a0d6f9","5261":"6e1a017f8f1027557f5b","5349":"14d76a9cb0f587c90614","5400":"eb0f5866140b5db31518","5457":"ee43997565093fa2caec","5485":"a15a2f530189848c31ee","5674":"8c34228471ff9e53b8c3","5802":"48e7f1324fc9e4486603","6027":"8971d7d4eec7b0b4cfb7","6201":"cc73f3d377cacd418cb0","6939":"41fbdef87597b5172ec6","6991":"77f5d56a53a04f524bc3","7159":"a472333e58e930b53e22","7197":"364e03cf01a6b56217f9","7412":"a8aa0b243b2a05031789","7431":"6dee1ec831da974a7433","7639":"e6024d8f644419db89ff","8094":"5c44190a325ac23e3e5c","8402":"edb924cd47cd168f621c","8558":"29e3ea8a442b8a40e89d","8740":"39b40ee21a873e824ce8","8815":"4fe4069d6c0a8d9b95cb","9862":"dc627e5f01fc4698a00f"}[chunkId] + ".js";
386170
386178
  /******/ };
386171
386179
  /******/ })();
386172
386180
  /******/
@@ -136,7 +136,7 @@
136
136
  /******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
137
137
  /******/ __webpack_require__.u = (chunkId) => {
138
138
  /******/ // return url for filenames based on template
139
- /******/ return "" + (chunkId === 3694 ? "compute" : chunkId) + ".bundle." + {"573":"a00b1c9a43f933c220ec","3613":"f54ec42efcfa4f83656c","3694":"a63e807a357d03539511","4019":"2f21e5bc490fc3b743a8","5400":"c287bffc0f21bc857c12","9856":"31827ec7e09a8978744c"}[chunkId] + ".js";
139
+ /******/ return "" + (chunkId === 3694 ? "compute" : chunkId) + ".bundle." + {"573":"a00b1c9a43f933c220ec","3613":"14721af2527117f720b0","3694":"5d0df54f99d2a555a02a","4019":"acd0f85d0467cb10d86a","5400":"eb0f5866140b5db31518","9856":"31827ec7e09a8978744c"}[chunkId] + ".js";
140
140
  /******/ };
141
141
  /******/ })();
142
142
  /******/
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.0d5d24cd2914cba3684d.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.fb405f7159a5d06049af.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>
@@ -136,7 +136,7 @@
136
136
  /******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
137
137
  /******/ __webpack_require__.u = (chunkId) => {
138
138
  /******/ // return url for filenames based on template
139
- /******/ return "" + (chunkId === 3694 ? "compute" : chunkId) + ".bundle." + {"319":"cd9383a345b9da2ba840","573":"a00b1c9a43f933c220ec","3613":"f54ec42efcfa4f83656c","3694":"a63e807a357d03539511","4019":"2f21e5bc490fc3b743a8","7758":"c8d106364298e7d288f0","9892":"36238ff727cb3bba26e4"}[chunkId] + ".js";
139
+ /******/ return "" + (chunkId === 3694 ? "compute" : chunkId) + ".bundle." + {"319":"cd9383a345b9da2ba840","573":"a00b1c9a43f933c220ec","3613":"14721af2527117f720b0","3694":"5d0df54f99d2a555a02a","4019":"acd0f85d0467cb10d86a","7758":"c8d106364298e7d288f0","9892":"7a23896727af274e8c43"}[chunkId] + ".js";
140
140
  /******/ };
141
141
  /******/ })();
142
142
  /******/
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':'/031089e563a18ada8441.wasm'},{'revision':null,'url':'/1447.bundle.42a201eb7cfb535dbb27.js'},{'revision':null,'url':'/1459.bundle.95bf19211e4a0cc6eb85.js'},{'revision':null,'url':'/147.bundle.23cc8fbbd94c0b65d337.js'},{'revision':'e0cfcadcf2c2fbc1f117196b9f62bf3e','url':'/147.css'},{'revision':null,'url':'/1604.bundle.d8d092c4b7f0752f1795.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/1604.css'},{'revision':null,'url':'/17dd54813d5acc10bf8f.wasm'},{'revision':null,'url':'/1807.bundle.4b36d85142830705cc73.js'},{'revision':null,'url':'/1919.bundle.58198149cd016af5c240.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/1919.css'},{'revision':null,'url':'/1927.bundle.8941122be98d6aea153c.js'},{'revision':null,'url':'/2108.bundle.e84aa8d858d8c4f2413e.js'},{'revision':null,'url':'/213.bundle.ed0a3b64ad066e7fe2aa.js'},{'revision':null,'url':'/2243.bundle.1b13d9c823fa58c47dd2.js'},{'revision':null,'url':'/2424.bundle.7a57d8210c8644e83d61.js'},{'revision':null,'url':'/2516.bundle.1ea0988d309a757bb6da.js'},{'revision':null,'url':'/2518.bundle.80f6f53d5a171288d177.js'},{'revision':null,'url':'/2701.bundle.4c715c1d9bb7828886d8.js'},{'revision':null,'url':'/2974.bundle.a90a9df917b90bc02c69.js'},{'revision':null,'url':'/319.bundle.cd9383a345b9da2ba840.js'},{'revision':null,'url':'/31fb9346313fc3740d7b.woff2'},{'revision':null,'url':'/3353.bundle.17c72a3af46917166980.js'},{'revision':null,'url':'/3409.bundle.fc5d04563e48e2d9509c.js'},{'revision':null,'url':'/3613.bundle.f54ec42efcfa4f83656c.js'},{'revision':null,'url':'/4019.bundle.2f21e5bc490fc3b743a8.js'},{'revision':null,'url':'/4113.bundle.4a27d08881e8e8726cdc.js'},{'revision':null,'url':'/414.bundle.647df2f6e756c8adf1bc.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/414.css'},{'revision':null,'url':'/4202.bundle.1cef28d8aec1155d35d1.js'},{'revision':null,'url':'/4759.bundle.c3bfca952eea20a0d6f9.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/4759.css'},{'revision':null,'url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/5261.bundle.6e1a017f8f1027557f5b.js'},{'revision':null,'url':'/5349.bundle.14d76a9cb0f587c90614.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/5349.css'},{'revision':null,'url':'/5400.bundle.c287bffc0f21bc857c12.js'},{'revision':null,'url':'/5457.bundle.650c3a9b81d8d3fafaee.js'},{'revision':null,'url':'/5485.bundle.dff6dd53d1d533b0d00f.js'},{'revision':null,'url':'/5674.bundle.8c34228471ff9e53b8c3.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/5674.css'},{'revision':null,'url':'/573.bundle.a00b1c9a43f933c220ec.js'},{'revision':null,'url':'/5802.bundle.48e7f1324fc9e4486603.js'},{'revision':'78c6e381862b3f33316bcffadde4ccd6','url':'/5802.css'},{'revision':null,'url':'/5830.bundle.b073c265c4fcea1afff3.js'},{'revision':null,'url':'/6027.bundle.9ba3ec82debbfbd24227.js'},{'revision':null,'url':'/6201.bundle.1268f4b25e533d6e5752.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/6201.css'},{'revision':null,'url':'/6376.bundle.272e755bdcbb5615a44e.js'},{'revision':null,'url':'/6939.bundle.41fbdef87597b5172ec6.js'},{'revision':null,'url':'/6991.bundle.fa5072b6f1712784344f.js'},{'revision':null,'url':'/7159.bundle.a472333e58e930b53e22.js'},{'revision':'20a92cf14c2d8be6cd580f68780cc7fa','url':'/7159.css'},{'revision':null,'url':'/7190.bundle.d731ae6cf6e933a2c408.js'},{'revision':null,'url':'/7197.bundle.d3f79fce26514955231c.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/7197.css'},{'revision':null,'url':'/732.bundle.6978ac30a1e36abf06db.js'},{'revision':null,'url':'/7412.bundle.930910a9ad29b9d44d34.js'},{'revision':null,'url':'/7431.bundle.6dee1ec831da974a7433.js'},{'revision':null,'url':'/7639.bundle.47232f936255859feba8.js'},{'revision':null,'url':'/7758.bundle.c8d106364298e7d288f0.js'},{'revision':null,'url':'/8094.bundle.5c44190a325ac23e3e5c.js'},{'revision':null,'url':'/810.bundle.41459c511a763f328524.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/810.css'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/8402.css'},{'revision':null,'url':'/85.bundle.284a0d47f14a7969112c.js'},{'revision':null,'url':'/8558.bundle.465dd596983d518dc10c.js'},{'revision':null,'url':'/8740.bundle.39b40ee21a873e824ce8.js'},{'revision':'185e5e0a10fa6ab2fc7b3c38e63d550b','url':'/8740.css'},{'revision':null,'url':'/8815.bundle.eb855e3a55f5bcd0ede4.js'},{'revision':null,'url':'/934.bundle.90f33b73332a588bafa8.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/934.css'},{'revision':null,'url':'/9742.bundle.b6a8307f0fe8be2aae1e.js'},{'revision':null,'url':'/9856.bundle.31827ec7e09a8978744c.js'},{'revision':null,'url':'/9862.bundle.dc627e5f01fc4698a00f.js'},{'revision':null,'url':'/9892.bundle.36238ff727cb3bba26e4.js'},{'revision':'d41d8cd98f00b204e9800998ecf8427e','url':'/_headers'},{'revision':'e3bf0f3e9c34f51ad59836ae8e8eaf43','url':'/_redirects'},{'revision':null,'url':'/a957c5cd315f89b6feb1.wasm'},{'revision':'c11dc68cde4925f1ce47ab53247b4c97','url':'/app-config.js'},{'revision':null,'url':'/app.bundle.0d5d24cd2914cba3684d.js'},{'revision':'1dd4af7d2d314cc71174056b94010bcd','url':'/app.bundle.css'},{'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.a63e807a357d03539511.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':'7c294f8c09330616edfe79446cbf63d8','url':'/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js'},{'revision':'8c4deac68531aea6527f05d3d30dd597','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.b7bb02c6cd9273c422f5.js'},{'revision':'0cd162f8107b2a750e9c9d4d2de0a049','url':'/index.html'},{'revision':'31c0367ca4160b2c6373e905739c5719','url':'/init-service-worker.js'},{'revision':null,'url':'/interpolation.bundle.f58dd6d3d25dd22cfefd.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.75dd3439f4989f634f98.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':'/031089e563a18ada8441.wasm'},{'revision':null,'url':'/1447.bundle.0e8117bd9e72c339bd04.js'},{'revision':null,'url':'/1459.bundle.6d1fa1c8fdbb81f0f359.js'},{'revision':null,'url':'/147.bundle.23cc8fbbd94c0b65d337.js'},{'revision':'e0cfcadcf2c2fbc1f117196b9f62bf3e','url':'/147.css'},{'revision':null,'url':'/1604.bundle.47f2f0635a91795b3c49.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/1604.css'},{'revision':null,'url':'/17dd54813d5acc10bf8f.wasm'},{'revision':null,'url':'/1807.bundle.68fc01f6cad9998763ea.js'},{'revision':null,'url':'/1919.bundle.1931c96cc842a6098baa.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/1919.css'},{'revision':null,'url':'/1927.bundle.8941122be98d6aea153c.js'},{'revision':null,'url':'/2108.bundle.e84aa8d858d8c4f2413e.js'},{'revision':null,'url':'/213.bundle.f9c868b449c1a68b6f35.js'},{'revision':null,'url':'/2243.bundle.2e464ef173f36231cf06.js'},{'revision':null,'url':'/2424.bundle.a9eecc0e2aeb8699f135.js'},{'revision':null,'url':'/2516.bundle.1ea0988d309a757bb6da.js'},{'revision':null,'url':'/2518.bundle.bdbd870da5355fdf502a.js'},{'revision':null,'url':'/2701.bundle.4c715c1d9bb7828886d8.js'},{'revision':null,'url':'/2974.bundle.a90a9df917b90bc02c69.js'},{'revision':null,'url':'/319.bundle.cd9383a345b9da2ba840.js'},{'revision':null,'url':'/31fb9346313fc3740d7b.woff2'},{'revision':null,'url':'/3353.bundle.17c72a3af46917166980.js'},{'revision':null,'url':'/3409.bundle.2d77e2bddb2a19e798ed.js'},{'revision':null,'url':'/3613.bundle.14721af2527117f720b0.js'},{'revision':null,'url':'/4019.bundle.acd0f85d0467cb10d86a.js'},{'revision':null,'url':'/4113.bundle.cdb5aabbb16c44b3937d.js'},{'revision':null,'url':'/414.bundle.46f922eb0a1911124a73.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/414.css'},{'revision':null,'url':'/4202.bundle.1cef28d8aec1155d35d1.js'},{'revision':null,'url':'/4759.bundle.c3bfca952eea20a0d6f9.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/4759.css'},{'revision':null,'url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/5261.bundle.6e1a017f8f1027557f5b.js'},{'revision':null,'url':'/5349.bundle.14d76a9cb0f587c90614.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/5349.css'},{'revision':null,'url':'/5400.bundle.eb0f5866140b5db31518.js'},{'revision':null,'url':'/5457.bundle.ee43997565093fa2caec.js'},{'revision':null,'url':'/5485.bundle.a15a2f530189848c31ee.js'},{'revision':null,'url':'/5674.bundle.8c34228471ff9e53b8c3.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/5674.css'},{'revision':null,'url':'/573.bundle.a00b1c9a43f933c220ec.js'},{'revision':null,'url':'/5802.bundle.48e7f1324fc9e4486603.js'},{'revision':'78c6e381862b3f33316bcffadde4ccd6','url':'/5802.css'},{'revision':null,'url':'/5830.bundle.b073c265c4fcea1afff3.js'},{'revision':null,'url':'/6027.bundle.8971d7d4eec7b0b4cfb7.js'},{'revision':null,'url':'/6201.bundle.cc73f3d377cacd418cb0.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/6201.css'},{'revision':null,'url':'/6376.bundle.272e755bdcbb5615a44e.js'},{'revision':null,'url':'/6939.bundle.41fbdef87597b5172ec6.js'},{'revision':null,'url':'/6991.bundle.77f5d56a53a04f524bc3.js'},{'revision':null,'url':'/7159.bundle.a472333e58e930b53e22.js'},{'revision':'20a92cf14c2d8be6cd580f68780cc7fa','url':'/7159.css'},{'revision':null,'url':'/7190.bundle.d731ae6cf6e933a2c408.js'},{'revision':null,'url':'/7197.bundle.364e03cf01a6b56217f9.js'},{'revision':'27c847594562926775c007c401b4fe98','url':'/7197.css'},{'revision':null,'url':'/732.bundle.6978ac30a1e36abf06db.js'},{'revision':null,'url':'/7412.bundle.a8aa0b243b2a05031789.js'},{'revision':null,'url':'/7431.bundle.6dee1ec831da974a7433.js'},{'revision':null,'url':'/7639.bundle.e6024d8f644419db89ff.js'},{'revision':null,'url':'/7758.bundle.c8d106364298e7d288f0.js'},{'revision':null,'url':'/8094.bundle.5c44190a325ac23e3e5c.js'},{'revision':null,'url':'/810.bundle.0806263ecf7902133c17.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/810.css'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/8402.css'},{'revision':null,'url':'/85.bundle.de54be0dcfcc960c45a0.js'},{'revision':null,'url':'/8558.bundle.29e3ea8a442b8a40e89d.js'},{'revision':null,'url':'/8740.bundle.39b40ee21a873e824ce8.js'},{'revision':'185e5e0a10fa6ab2fc7b3c38e63d550b','url':'/8740.css'},{'revision':null,'url':'/8815.bundle.4fe4069d6c0a8d9b95cb.js'},{'revision':null,'url':'/934.bundle.5aef917dada6d51ac96b.js'},{'revision':'d7105275684db58e6dd8f9f6ed8f85ad','url':'/934.css'},{'revision':null,'url':'/9742.bundle.b6a8307f0fe8be2aae1e.js'},{'revision':null,'url':'/9856.bundle.31827ec7e09a8978744c.js'},{'revision':null,'url':'/9862.bundle.dc627e5f01fc4698a00f.js'},{'revision':null,'url':'/9892.bundle.7a23896727af274e8c43.js'},{'revision':'d41d8cd98f00b204e9800998ecf8427e','url':'/_headers'},{'revision':'e3bf0f3e9c34f51ad59836ae8e8eaf43','url':'/_redirects'},{'revision':null,'url':'/a957c5cd315f89b6feb1.wasm'},{'revision':'c11dc68cde4925f1ce47ab53247b4c97','url':'/app-config.js'},{'revision':'1dd4af7d2d314cc71174056b94010bcd','url':'/app.bundle.css'},{'revision':null,'url':'/app.bundle.fb405f7159a5d06049af.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.5d0df54f99d2a555a02a.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':'7c294f8c09330616edfe79446cbf63d8','url':'/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js'},{'revision':'8c4deac68531aea6527f05d3d30dd597','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.b7bb02c6cd9273c422f5.js'},{'revision':'a6ed805f850bb9441d7cd275287320d2','url':'/index.html'},{'revision':'31c0367ca4160b2c6373e905739c5719','url':'/init-service-worker.js'},{'revision':null,'url':'/interpolation.bundle.f58dd6d3d25dd22cfefd.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.eb47d9d9105dcfbb56fc.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.12.0-beta.68",
3
+ "version": "3.12.0-beta.69",
4
4
  "productVersion": "3.4.0",
5
5
  "description": "OHIF Viewer",
6
6
  "author": "OHIF Contributors",
@@ -53,27 +53,27 @@
53
53
  "@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
54
54
  "@cornerstonejs/codec-openjpeg": "1.2.4",
55
55
  "@cornerstonejs/codec-openjph": "2.4.7",
56
- "@cornerstonejs/dicom-image-loader": "4.5.13",
56
+ "@cornerstonejs/dicom-image-loader": "4.5.19",
57
57
  "@emotion/serialize": "1.3.3",
58
- "@ohif/core": "3.12.0-beta.68",
59
- "@ohif/extension-cornerstone": "3.12.0-beta.68",
60
- "@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.68",
61
- "@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.68",
62
- "@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.68",
63
- "@ohif/extension-default": "3.12.0-beta.68",
64
- "@ohif/extension-dicom-microscopy": "3.12.0-beta.68",
65
- "@ohif/extension-dicom-pdf": "3.12.0-beta.68",
66
- "@ohif/extension-dicom-video": "3.12.0-beta.68",
67
- "@ohif/extension-test": "3.12.0-beta.68",
68
- "@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.68",
69
- "@ohif/i18n": "3.12.0-beta.68",
70
- "@ohif/mode-basic-dev-mode": "3.12.0-beta.68",
71
- "@ohif/mode-longitudinal": "3.12.0-beta.68",
72
- "@ohif/mode-microscopy": "3.12.0-beta.68",
73
- "@ohif/mode-test": "3.12.0-beta.68",
74
- "@ohif/mode-ultrasound-pleura-bline": "3.12.0-beta.68",
75
- "@ohif/ui": "3.12.0-beta.68",
76
- "@ohif/ui-next": "3.12.0-beta.68",
58
+ "@ohif/core": "3.12.0-beta.69",
59
+ "@ohif/extension-cornerstone": "3.12.0-beta.69",
60
+ "@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.69",
61
+ "@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.69",
62
+ "@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.69",
63
+ "@ohif/extension-default": "3.12.0-beta.69",
64
+ "@ohif/extension-dicom-microscopy": "3.12.0-beta.69",
65
+ "@ohif/extension-dicom-pdf": "3.12.0-beta.69",
66
+ "@ohif/extension-dicom-video": "3.12.0-beta.69",
67
+ "@ohif/extension-test": "3.12.0-beta.69",
68
+ "@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.69",
69
+ "@ohif/i18n": "3.12.0-beta.69",
70
+ "@ohif/mode-basic-dev-mode": "3.12.0-beta.69",
71
+ "@ohif/mode-longitudinal": "3.12.0-beta.69",
72
+ "@ohif/mode-microscopy": "3.12.0-beta.69",
73
+ "@ohif/mode-test": "3.12.0-beta.69",
74
+ "@ohif/mode-ultrasound-pleura-bline": "3.12.0-beta.69",
75
+ "@ohif/ui": "3.12.0-beta.69",
76
+ "@ohif/ui-next": "3.12.0-beta.69",
77
77
  "@svgr/webpack": "8.1.0",
78
78
  "@types/react": "18.3.23",
79
79
  "classnames": "2.5.1",