@ohif/app 3.9.0-beta.76 → 3.9.0-beta.78

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 (44) hide show
  1. package/dist/{1169.bundle.a3d3d310f1d8d7e335bf.js → 1169.bundle.d32f38ab5aa329346850.js} +46 -106
  2. package/dist/{1202.bundle.1468f0e71fea0c593081.js → 1202.bundle.55f140afb05e1ad5512c.js} +503 -153
  3. package/dist/{2568.css → 1540.css} +1 -0
  4. package/dist/{1994.bundle.d347a831c1be751d0627.js → 1994.bundle.083fb36bc0648f2dbda6.js} +3 -3
  5. package/dist/{9824.bundle.e16a5ef35eedfa74b3be.js → 2119.bundle.3446480f91f1200cd45c.js} +4 -4
  6. package/dist/{9824.css → 2119.css} +1 -0
  7. package/dist/{2650.bundle.1f7d90198b9e361dfb9c.js → 2650.bundle.feb3b241748314884ae4.js} +57 -35
  8. package/dist/{3117.bundle.c83d0f403d17104a7c4c.js → 3117.bundle.463d5fa4671a93939d36.js} +8 -7
  9. package/dist/{4210.bundle.fb376c67d110f8177eea.js → 4210.bundle.38eb5056ac41a0b04d21.js} +2 -2
  10. package/dist/{4842.bundle.619edd60983634d9f8dd.js → 4842.bundle.0427b8aa1b52aa050ed2.js} +12 -8
  11. package/dist/{5888.bundle.91227a2efe569869fdd0.js → 5888.bundle.ebca6329037cf353968f.js} +14 -7
  12. package/dist/{2417.bundle.4a0334c8c4047005979e.js → 5898.bundle.be696e0b355efc1c7f05.js} +1947 -1
  13. package/dist/{2281.bundle.216a0d86eaed7f4870ae.js → 655.bundle.28f107410332c62993a3.js} +170 -66
  14. package/dist/{6591.bundle.ace15b11ac7df3edf1bb.js → 6591.bundle.92a28f98c3f45ac3b3f1.js} +15 -1
  15. package/dist/{7502.bundle.abf1ade64f101ba01596.js → 7502.bundle.550aee57ecd221eab7c1.js} +4 -6
  16. package/dist/{3424.bundle.1b6101d721148c04242b.js → 79.bundle.b03daeeef3e6faf9dca3.js} +5 -47
  17. package/dist/{8993.bundle.256bb3c84d2564a5f3cf.js → 8993.bundle.23cd5f8560800a97d798.js} +39 -32
  18. package/dist/{2065.bundle.5d8f4c26b1fa393e26a4.js → 8999.bundle.e23beb310b14ca9ded76.js} +13 -133
  19. package/dist/{9579.bundle.7212d7a737a71bb61502.js → 9579.bundle.f9c9be0c5ab6cddbde3d.js} +8 -7
  20. package/dist/{5516.bundle.074fac92088b103bf0e3.js → 962.bundle.04afab064299df16f869.js} +408 -179
  21. package/dist/app-config.js +1 -0
  22. package/dist/{app.bundle.016cbb7783086e131b26.js → app.bundle.53faac5b01b67714fad2.js} +658 -352
  23. package/dist/index.html +1 -1
  24. package/dist/{polySeg.bundle.40b9a8c9006bb15691ee.js → polySeg.bundle.0a70e65fe89169ec7508.js} +1 -1
  25. package/dist/{suv-peak-worker.bundle.a70e70b9ef87c18b896c.js → suv-peak-worker.bundle.54d68bc1808ad3d77994.js} +1 -1
  26. package/dist/sw.js +1 -1
  27. package/package.json +18 -18
  28. package/dist/7604.bundle.42d3f08efb3a9eae4581.js +0 -1950
  29. package/dist/{1498.bundle.d8f5281952d09c57ef87.js → 1498.bundle.a2d05ac1f27d0c2d2c9f.js} +0 -0
  30. package/dist/{153.bundle.35f9f8c81db7a40221cf.js → 153.bundle.3ba838ef3c08a266ae35.js} +0 -0
  31. package/dist/{2791.bundle.29069810b8cf85d6aa0f.js → 2791.bundle.cfa27e4347069ab301b7.js} +0 -0
  32. package/dist/{3497.bundle.a04a2444975bf50fddf8.js → 3497.bundle.512610422a2862584c55.js} +0 -0
  33. package/dist/{3962.bundle.9a463bda1035e46ebbba.js → 3962.bundle.31bfadcde7f5a2dd8932.js} +0 -0
  34. package/dist/{4353.bundle.ac8577aa909c2c56db16.js → 4353.bundle.c13a0c72c607850ea3c0.js} +0 -0
  35. package/dist/{4978.bundle.19b43e91a7fe302599c6.js → 4978.bundle.655344cfd52d9f0641e5.js} +0 -0
  36. package/dist/{5793.bundle.eed3fe9019c31999efff.js → 5793.bundle.d1b4e887564bbb98752d.js} +0 -0
  37. package/dist/{6904.bundle.27abf08c0f2e4fe5e06d.js → 6904.bundle.da0d83fcd48a48cfaac1.js} +0 -0
  38. package/dist/{7246.bundle.11a6fa77c63c0df329bc.js → 7246.bundle.f1cbdd5ec9387bb6f8fe.js} +0 -0
  39. package/dist/{7360.bundle.114b1294460b2d9bfeb9.js → 7360.bundle.d0bdb43af1494bccc433.js} +0 -0
  40. package/dist/{7376.bundle.e9fea4789985d4409171.js → 7376.bundle.d6b445de2d468ab2e8b3.js} +0 -0
  41. package/dist/{3424.css → 79.css} +1 -1
  42. /package/dist/{7913.bundle.dc45c449f89985c7dd7c.js → 7913.bundle.353baac2e2a5b4bb330d.js} +0 -0
  43. /package/dist/{818.bundle.b64fae7e982e16a82ca2.js → 818.bundle.b6027359846cc90e32ff.js} +0 -0
  44. /package/dist/{8944.bundle.a3cecebcc7b2ca3c7259.js → 8944.bundle.29926bb653a467c7e7d8.js} +0 -0
@@ -10047,8 +10047,8 @@ class OrientationMarkerTool extends _base__WEBPACK_IMPORTED_MODULE_7__/* .BaseTo
10047
10047
  overlayConfiguration: {
10048
10048
  [OrientationMarkerTool.OVERLAY_MARKER_TYPES.ANNOTATED_CUBE]: {
10049
10049
  faceProperties: {
10050
- xPlus: { text: 'R', faceColor: '#ffff00', faceRotation: 90 },
10051
- xMinus: { text: 'L', faceColor: '#ffff00', faceRotation: 270 },
10050
+ xPlus: { text: 'L', faceColor: '#ffff00', faceRotation: 90 },
10051
+ xMinus: { text: 'R', faceColor: '#ffff00', faceRotation: 270 },
10052
10052
  yPlus: {
10053
10053
  text: 'P',
10054
10054
  faceColor: '#00ffff',
@@ -12186,7 +12186,10 @@ class StackScrollMouseWheelTool extends _base__WEBPACK_IMPORTED_MODULE_1__/* .Ba
12186
12186
  const { invert } = this.configuration;
12187
12187
  const { viewport } = (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.getEnabledElement)(element);
12188
12188
  const delta = direction * (invert ? -1 : 1);
12189
- const volumeId = this.getTargetVolumeId(viewport);
12189
+ let volumeId;
12190
+ if (viewport instanceof _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.BaseVolumeViewport) {
12191
+ volumeId = this.getTargetVolumeId(viewport);
12192
+ }
12190
12193
  (0,_utilities_scroll__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(viewport, {
12191
12194
  delta,
12192
12195
  debounceLoading: this.configuration.debounceIfNotLoaded,
@@ -12869,7 +12872,7 @@ class WindowLevelTool extends _base__WEBPACK_IMPORTED_MODULE_0__/* .BaseTool */
12869
12872
  scalarData = imageData.getScalarData();
12870
12873
  }
12871
12874
  else {
12872
- scalarData = imageData.getPointData().getScalars();
12875
+ scalarData = imageData.getPointData().getScalars().getData();
12873
12876
  }
12874
12877
  if (dimensions[2] !== 1) {
12875
12878
  return this._getImageDynamicRangeFromMiddleSlice(scalarData, dimensions);
@@ -12924,8 +12927,8 @@ class ZoomTool extends _base__WEBPACK_IMPORTED_MODULE_3__/* .BaseTool */ .ml {
12924
12927
  supportedInteractionTypes: ['Mouse', 'Touch'],
12925
12928
  configuration: {
12926
12929
  zoomToCenter: false,
12927
- minZoomScale: 0.1,
12928
- maxZoomScale: 30,
12930
+ minZoomScale: 0.001,
12931
+ maxZoomScale: 3000,
12929
12932
  pinchToZoom: true,
12930
12933
  pan: true,
12931
12934
  invert: false,
@@ -22460,11 +22463,6 @@ class RectangleROIStartEndThresholdTool extends RectangleROITool/* default */.Z
22460
22463
  this.configuration.preventHandleOutsideImage) {
22461
22464
  (0,stateManagement/* removeAnnotation */._x)(annotation.annotationUID);
22462
22465
  }
22463
- const targetId = this.getTargetId(enabledElement.viewport);
22464
- const imageVolume = esm.cache.getVolume(targetId.split(/volumeId:|\?/)[1]);
22465
- if (this.configuration.calculatePointsInsideVolume) {
22466
- this._computePointsInsideVolume(annotation, targetId, imageVolume, enabledElement);
22467
- }
22468
22466
  (0,triggerAnnotationRenderForViewportIds/* default */.Z)(enabledElement.renderingEngine, viewportIdsToRender);
22469
22467
  if (newAnnotation) {
22470
22468
  (0,state/* triggerAnnotationCompleted */.F$)(annotation);
@@ -22499,9 +22497,12 @@ class RectangleROIStartEndThresholdTool extends RectangleROITool/* default */.Z
22499
22497
  let endCoord = endCoordinate;
22500
22498
  if (Array.isArray(startCoordinate)) {
22501
22499
  startCoord = this._getCoordinateForViewplaneNormal(startCoord, viewplaneNormal);
22500
+ data.startCoordinate = startCoord;
22501
+ data.handles.points[0][this._getIndexOfCoordinatesForViewplaneNormal(viewplaneNormal)] = startCoord;
22502
22502
  }
22503
22503
  if (Array.isArray(endCoordinate)) {
22504
22504
  endCoord = this._getCoordinateForViewplaneNormal(endCoord, viewplaneNormal);
22505
+ data.endCoordinate = endCoord;
22505
22506
  }
22506
22507
  const roundedStartCoord = esm.utilities.roundToPrecision(startCoord);
22507
22508
  const roundedEndCoord = esm.utilities.roundToPrecision(endCoord);
@@ -22701,6 +22702,9 @@ class RectangleROIStartEndThresholdTool extends RectangleROITool/* default */.Z
22701
22702
  const targetId = this.getTargetId(viewport);
22702
22703
  const imageVolume = esm.cache.getVolume(targetId.split(/volumeId:|\?/)[1]);
22703
22704
  this._computeProjectionPoints(annotation, imageVolume);
22705
+ if (this.configuration.calculatePointsInsideVolume) {
22706
+ this._computePointsInsideVolume(annotation, targetId, imageVolume, enabledElement);
22707
+ }
22704
22708
  annotation.invalidated = false;
22705
22709
  (0,state/* triggerAnnotationModified */.hg)(annotation, viewport.element);
22706
22710
  return cachedStats;
@@ -23456,11 +23460,6 @@ class CircleROIStartEndThresholdTool extends _annotation_CircleROITool__WEBPACK_
23456
23460
  this.configuration.preventHandleOutsideImage) {
23457
23461
  (0,_stateManagement_annotation_annotationState__WEBPACK_IMPORTED_MODULE_2__.removeAnnotation)(annotation.annotationUID);
23458
23462
  }
23459
- const targetId = this.getTargetId(enabledElement.viewport);
23460
- const imageVolume = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.cache.getVolume(targetId.split(/volumeId:|\?/)[1]);
23461
- if (this.configuration.calculatePointsInsideVolume) {
23462
- this._computePointsInsideVolume(annotation, imageVolume, targetId, enabledElement);
23463
- }
23464
23463
  (0,_utilities_triggerAnnotationRenderForViewportIds__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z)(enabledElement.renderingEngine, viewportIdsToRender);
23465
23464
  if (newAnnotation) {
23466
23465
  (0,_stateManagement_annotation_helpers_state__WEBPACK_IMPORTED_MODULE_12__/* .triggerAnnotationCompleted */ .F$)(annotation);
@@ -23495,30 +23494,35 @@ class CircleROIStartEndThresholdTool extends _annotation_CircleROITool__WEBPACK_
23495
23494
  const canvasCorners = (0,_utilities_math_circle__WEBPACK_IMPORTED_MODULE_14__/* .getCanvasCircleCorners */ .$)(canvasCoordinates);
23496
23495
  const focalPoint = viewport.getCamera().focalPoint;
23497
23496
  const viewplaneNormal = viewport.getCamera().viewPlaneNormal;
23498
- let startCoord = startCoordinate;
23499
- let endCoord = endCoordinate;
23497
+ let tempStartCoordinate = startCoordinate;
23498
+ let tempEndCoordinate = endCoordinate;
23500
23499
  if (Array.isArray(startCoordinate)) {
23501
- startCoord = this._getCoordinateForViewplaneNormal(startCoord, viewplaneNormal);
23500
+ tempStartCoordinate = this._getCoordinateForViewplaneNormal(tempStartCoordinate, viewplaneNormal);
23501
+ data.startCoordinate = tempStartCoordinate;
23502
23502
  }
23503
23503
  if (Array.isArray(endCoordinate)) {
23504
- endCoord = this._getCoordinateForViewplaneNormal(endCoord, viewplaneNormal);
23505
- }
23506
- const roundedStartCoord = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision(startCoord);
23507
- const roundedEndCoord = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision(endCoord);
23508
- const coord = this._getCoordinateForViewplaneNormal(focalPoint, viewplaneNormal);
23509
- const roundedCoord = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision(coord);
23510
- if (roundedCoord < Math.min(roundedStartCoord, roundedEndCoord) ||
23511
- roundedCoord > Math.max(roundedStartCoord, roundedEndCoord)) {
23504
+ tempEndCoordinate = this._getCoordinateForViewplaneNormal(tempEndCoordinate, viewplaneNormal);
23505
+ data.endCoordinate = tempEndCoordinate;
23506
+ }
23507
+ const roundedStartCoordinate = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision(data.startCoordinate);
23508
+ const roundedEndCoordinate = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision(data.endCoordinate);
23509
+ const cameraCoordinate = this._getCoordinateForViewplaneNormal(focalPoint, viewplaneNormal);
23510
+ const roundedCameraCoordinate = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision(cameraCoordinate);
23511
+ if (roundedCameraCoordinate <
23512
+ Math.min(roundedStartCoordinate, roundedEndCoordinate) ||
23513
+ roundedCameraCoordinate >
23514
+ Math.max(roundedStartCoordinate, roundedEndCoordinate)) {
23512
23515
  continue;
23513
23516
  }
23514
- if (annotation.invalidated) {
23515
- this._throttledCalculateCachedStats(annotation, enabledElement);
23516
- }
23517
- const middleCoord = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision((startCoord + endCoord) / 2);
23517
+ const middleCoordinate = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.utilities.roundToPrecision((data.startCoordinate + data.endCoordinate) / 2);
23518
23518
  let isMiddleSlice = false;
23519
- if (roundedCoord === middleCoord) {
23519
+ if (roundedCameraCoordinate === middleCoordinate) {
23520
23520
  isMiddleSlice = true;
23521
23521
  }
23522
+ data.handles.points[0][this._getIndexOfCoordinatesForViewplaneNormal(viewplaneNormal)] = middleCoordinate;
23523
+ if (annotation.invalidated) {
23524
+ this._throttledCalculateCachedStats(annotation, enabledElement);
23525
+ }
23522
23526
  if (!viewport.getRenderingEngine()) {
23523
23527
  console.warn('Rendering Engine has been destroyed');
23524
23528
  return renderStatus;
@@ -23739,6 +23743,9 @@ class CircleROIStartEndThresholdTool extends _annotation_CircleROITool__WEBPACK_
23739
23743
  const targetId = this.getTargetId(viewport);
23740
23744
  const imageVolume = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.cache.getVolume(targetId.split(/volumeId:|\?/)[1]);
23741
23745
  this._computeProjectionPoints(annotation, imageVolume);
23746
+ if (this.configuration.calculatePointsInsideVolume) {
23747
+ this._computePointsInsideVolume(annotation, imageVolume, targetId, enabledElement);
23748
+ }
23742
23749
  annotation.invalidated = false;
23743
23750
  (0,_stateManagement_annotation_helpers_state__WEBPACK_IMPORTED_MODULE_12__/* .triggerAnnotationModified */ .hg)(annotation, viewport.element);
23744
23751
  return cachedStats;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[2065],{
2
+ (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[8999],{
3
3
 
4
- /***/ 82065:
4
+ /***/ 38999:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -2183,115 +2183,6 @@ function getCommandsModule({
2183
2183
  defaultContext: 'MICROSCOPY'
2184
2184
  };
2185
2185
  }
2186
- ;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/DicomMicroscopySopClassHandler.js
2187
-
2188
- const {
2189
- utils
2190
- } = core_src["default"];
2191
- const SOP_CLASS_UIDS = {
2192
- VL_WHOLE_SLIDE_MICROSCOPY_IMAGE_STORAGE: '1.2.840.10008.5.1.4.1.1.77.1.6'
2193
- };
2194
- const SOPClassHandlerId = '@ohif/extension-dicom-microscopy.sopClassHandlerModule.DicomMicroscopySopClassHandler';
2195
- function _getDisplaySetsFromSeries(instances, servicesManager, extensionManager) {
2196
- // If the series has no instances, stop here
2197
- if (!instances || !instances.length) {
2198
- throw new Error('No instances were provided');
2199
- }
2200
- const instance = instances[0];
2201
- let singleFrameInstance = instance;
2202
- let currentFrames = +singleFrameInstance.NumberOfFrames || 1;
2203
- for (const instanceI of instances) {
2204
- const framesI = +instanceI.NumberOfFrames || 1;
2205
- if (framesI < currentFrames) {
2206
- singleFrameInstance = instanceI;
2207
- currentFrames = framesI;
2208
- }
2209
- }
2210
- let imageIdForThumbnail = null;
2211
- if (singleFrameInstance) {
2212
- if (currentFrames == 1) {
2213
- // Not all DICOM server implementations support thumbnail service,
2214
- // So if we have a single-frame image, we will prefer it.
2215
- imageIdForThumbnail = singleFrameInstance.imageId;
2216
- }
2217
- if (!imageIdForThumbnail) {
2218
- // use the thumbnail service provided by DICOM server
2219
- const dataSource = extensionManager.getActiveDataSource()[0];
2220
- imageIdForThumbnail = dataSource.getImageIdsForInstance({
2221
- instance: singleFrameInstance,
2222
- thumbnail: true
2223
- });
2224
- }
2225
- }
2226
- const {
2227
- FrameOfReferenceUID,
2228
- SeriesDescription,
2229
- ContentDate,
2230
- ContentTime,
2231
- SeriesNumber,
2232
- StudyInstanceUID,
2233
- SeriesInstanceUID,
2234
- SOPInstanceUID,
2235
- SOPClassUID
2236
- } = instance;
2237
- instances = instances.map(inst => {
2238
- // NOTE: According to DICOM standard a series should have a FrameOfReferenceUID
2239
- // When the Microscopy file was built by certain tool from multiple image files,
2240
- // each instance's FrameOfReferenceUID is sometimes different.
2241
- // Even though this means the file was not well formatted DICOM VL Whole Slide Microscopy Image,
2242
- // the case is so often, so let's override this value manually here.
2243
- //
2244
- // https://dicom.nema.org/medical/dicom/current/output/chtml/part03/sect_C.7.4.html#sect_C.7.4.1.1.1
2245
-
2246
- inst.FrameOfReferenceUID = instance.FrameOfReferenceUID;
2247
- return inst;
2248
- });
2249
- const othersFrameOfReferenceUID = instances.filter(v => v).map(inst => inst.FrameOfReferenceUID).filter((value, index, array) => array.indexOf(value) === index);
2250
- if (othersFrameOfReferenceUID.length > 1) {
2251
- console.warn('Expected FrameOfReferenceUID of difference instances within a series to be the same, found multiple different values', othersFrameOfReferenceUID);
2252
- }
2253
- const displaySet = {
2254
- plugin: 'microscopy',
2255
- Modality: 'SM',
2256
- altImageText: 'Microscopy',
2257
- displaySetInstanceUID: utils.guid(),
2258
- SOPInstanceUID,
2259
- SeriesInstanceUID,
2260
- StudyInstanceUID,
2261
- FrameOfReferenceUID,
2262
- SOPClassHandlerId,
2263
- SOPClassUID,
2264
- SeriesDescription: SeriesDescription || 'Microscopy Data',
2265
- // Map ContentDate/Time to SeriesTime for series list sorting.
2266
- SeriesDate: ContentDate,
2267
- SeriesTime: ContentTime,
2268
- SeriesNumber,
2269
- firstInstance: singleFrameInstance,
2270
- // top level instance in the image Pyramid
2271
- instance,
2272
- numImageFrames: 0,
2273
- numInstances: 1,
2274
- imageIdForThumbnail,
2275
- // thumbnail image
2276
- others: instances,
2277
- // all other level instances in the image Pyramid
2278
- othersFrameOfReferenceUID
2279
- };
2280
- return [displaySet];
2281
- }
2282
- function getDicomMicroscopySopClassHandler({
2283
- servicesManager,
2284
- extensionManager
2285
- }) {
2286
- const getDisplaySetsFromSeries = instances => {
2287
- return _getDisplaySetsFromSeries(instances, servicesManager, extensionManager);
2288
- };
2289
- return {
2290
- name: 'DicomMicroscopySopClassHandler',
2291
- sopClassUids: [SOP_CLASS_UIDS.VL_WHOLE_SLIDE_MICROSCOPY_IMAGE_STORAGE],
2292
- getDisplaySetsFromSeries
2293
- };
2294
- }
2295
2186
  ;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/utils/dcmCodeValues.js
2296
2187
  const DCM_CODE_VALUES = {
2297
2188
  IMAGING_MEASUREMENTS: '126010',
@@ -2485,12 +2376,12 @@ function getSourceDisplaySet(allDisplaySets, microscopySRDisplaySet) {
2485
2376
 
2486
2377
 
2487
2378
  const {
2488
- utils: DicomMicroscopySRSopClassHandler_utils
2379
+ utils
2489
2380
  } = core_src["default"];
2490
- const DicomMicroscopySRSopClassHandler_SOP_CLASS_UIDS = {
2381
+ const SOP_CLASS_UIDS = {
2491
2382
  COMPREHENSIVE_3D_SR: '1.2.840.10008.5.1.4.1.1.88.34'
2492
2383
  };
2493
- const DicomMicroscopySRSopClassHandler_SOPClassHandlerId = '@ohif/extension-dicom-microscopy.sopClassHandlerModule.DicomMicroscopySRSopClassHandler';
2384
+ const SOPClassHandlerId = '@ohif/extension-dicom-microscopy.sopClassHandlerModule.DicomMicroscopySRSopClassHandler';
2494
2385
  function _getReferencedFrameOfReferenceUID(naturalizedDataset) {
2495
2386
  const {
2496
2387
  ContentSequence
@@ -2500,7 +2391,7 @@ function _getReferencedFrameOfReferenceUID(naturalizedDataset) {
2500
2391
  const imageRegionContentItem = toArray(firstMeasurementGroupContentItem.ContentSequence).find(ci => ci.ConceptNameCodeSequence.CodeValue === dcmCodeValues.IMAGE_REGION);
2501
2392
  return imageRegionContentItem.ReferencedFrameOfReferenceUID;
2502
2393
  }
2503
- function DicomMicroscopySRSopClassHandler_getDisplaySetsFromSeries(instances, servicesManager, extensionManager) {
2394
+ function _getDisplaySetsFromSeries(instances, servicesManager, extensionManager) {
2504
2395
  // If the series has no instances, stop here
2505
2396
  if (!instances || !instances.length) {
2506
2397
  throw new Error('No instances were provided');
@@ -2530,12 +2421,12 @@ function DicomMicroscopySRSopClassHandler_getDisplaySetsFromSeries(instances, se
2530
2421
  plugin: 'microscopy',
2531
2422
  Modality: 'SR',
2532
2423
  altImageText: 'Microscopy SR',
2533
- displaySetInstanceUID: DicomMicroscopySRSopClassHandler_utils.guid(),
2424
+ displaySetInstanceUID: utils.guid(),
2534
2425
  SOPInstanceUID,
2535
2426
  SeriesInstanceUID,
2536
2427
  StudyInstanceUID,
2537
2428
  ReferencedFrameOfReferenceUID,
2538
- SOPClassHandlerId: DicomMicroscopySRSopClassHandler_SOPClassHandlerId,
2429
+ SOPClassHandlerId,
2539
2430
  SOPClassUID,
2540
2431
  SeriesDescription,
2541
2432
  // Map the content date/time to the series date/time, these are only used for filtering.
@@ -2572,11 +2463,11 @@ function getDicomMicroscopySRSopClassHandler({
2572
2463
  extensionManager
2573
2464
  }) {
2574
2465
  const getDisplaySetsFromSeries = instances => {
2575
- return DicomMicroscopySRSopClassHandler_getDisplaySetsFromSeries(instances, servicesManager, extensionManager);
2466
+ return _getDisplaySetsFromSeries(instances, servicesManager, extensionManager);
2576
2467
  };
2577
2468
  return {
2578
2469
  name: 'DicomMicroscopySRSopClassHandler',
2579
- sopClassUids: [DicomMicroscopySRSopClassHandler_SOP_CLASS_UIDS.COMPREHENSIVE_3D_SR],
2470
+ sopClassUids: [SOP_CLASS_UIDS.COMPREHENSIVE_3D_SR],
2580
2471
  getDisplaySetsFromSeries
2581
2472
  };
2582
2473
  }
@@ -2596,9 +2487,8 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
2596
2487
 
2597
2488
 
2598
2489
 
2599
-
2600
2490
  const Component = /*#__PURE__*/react.lazy(() => {
2601
- return Promise.all(/* import() */[__webpack_require__.e(6904), __webpack_require__.e(818), __webpack_require__.e(3497), __webpack_require__.e(8993), __webpack_require__.e(7604), __webpack_require__.e(2417), __webpack_require__.e(2281), __webpack_require__.e(3424)]).then(__webpack_require__.bind(__webpack_require__, 3094));
2491
+ return Promise.all(/* import() */[__webpack_require__.e(6904), __webpack_require__.e(818), __webpack_require__.e(3497), __webpack_require__.e(8993), __webpack_require__.e(5898), __webpack_require__.e(655), __webpack_require__.e(79)]).then(__webpack_require__.bind(__webpack_require__, 30365));
2602
2492
  });
2603
2493
  const MicroscopyViewport = props => {
2604
2494
  return /*#__PURE__*/react.createElement(react.Suspense, {
@@ -2729,18 +2619,8 @@ const extension = {
2729
2619
  * Each sop class handler is defined by a { name, sopClassUids, getDisplaySetsFromSeries}.
2730
2620
  * Examples include the default sop class handler provided by the default extension
2731
2621
  */
2732
- getSopClassHandlerModule({
2733
- servicesManager,
2734
- commandsManager,
2735
- extensionManager
2736
- }) {
2737
- return [getDicomMicroscopySopClassHandler({
2738
- servicesManager,
2739
- extensionManager
2740
- }), getDicomMicroscopySRSopClassHandler({
2741
- servicesManager,
2742
- extensionManager
2743
- })];
2622
+ getSopClassHandlerModule(params) {
2623
+ return [getDicomMicroscopySRSopClassHandler(params)];
2744
2624
  },
2745
2625
  getPanelModule: getPanelModule,
2746
2626
  getCommandsModule: getCommandsModule
@@ -237,7 +237,7 @@ class VideoViewport extends _Viewport__WEBPACK_IMPORTED_MODULE_5__/* ["default"]
237
237
  };
238
238
  }
239
239
  setDataIds(imageIds, options) {
240
- this.setVideo(imageIds[0], options?.viewReference?.sliceIndex || 1);
240
+ this.setVideo(imageIds[0], (options?.viewReference?.sliceIndex || 0) + 1);
241
241
  }
242
242
  setVideo(imageId, frameNumber) {
243
243
  this.imageId = Array.isArray(imageId) ? imageId[0] : imageId;
@@ -3641,7 +3641,7 @@ __webpack_require__.d(__webpack_exports__, {
3641
3641
  volumeLoader: () => (/* reexport */ volumeLoader)
3642
3642
  });
3643
3643
 
3644
- // UNUSED EXPORTS: ImageVolume, ProgressiveRetrieveImages, RenderingEngine, Surface, VideoViewport, Viewport, WSIViewport, canRenderFloatTextures, createVolumeActor, createVolumeMapper, getOrCreateCanvas, getShouldUseCPURendering, getShouldUseSharedArrayBuffer, imageRetrievalPoolManager, init, isCornerstoneInitialized, peerImport, registerImageLoader, requestPoolManager, resetUseCPURendering, resetUseSharedArrayBuffer, setConfiguration, setPreferSizeOverAccuracy, setUseCPURendering, setUseSharedArrayBuffer, setVolumesForViewports
3644
+ // UNUSED EXPORTS: ImageVolume, ProgressiveRetrieveImages, RenderingEngine, Surface, VideoViewport, Viewport, WSIViewport, canRenderFloatTextures, createVolumeActor, createVolumeMapper, getOrCreateCanvas, getShouldUseCPURendering, getShouldUseSharedArrayBuffer, imageRetrievalPoolManager, init, isCornerstoneInitialized, peerImport, registerImageLoader, requestPoolManager, resetInitialization, resetUseCPURendering, resetUseSharedArrayBuffer, setConfiguration, setPreferSizeOverAccuracy, setUseCPURendering, setUseSharedArrayBuffer, setVolumesForViewports
3645
3645
 
3646
3646
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/enums/index.js + 4 modules
3647
3647
  var enums = __webpack_require__(7187);
@@ -7184,11 +7184,6 @@ class RectangleROIStartEndThresholdTool extends RectangleROITool/* default */.Z
7184
7184
  this.configuration.preventHandleOutsideImage) {
7185
7185
  (0,stateManagement/* removeAnnotation */._x)(annotation.annotationUID);
7186
7186
  }
7187
- const targetId = this.getTargetId(enabledElement.viewport);
7188
- const imageVolume = esm.cache.getVolume(targetId.split(/volumeId:|\?/)[1]);
7189
- if (this.configuration.calculatePointsInsideVolume) {
7190
- this._computePointsInsideVolume(annotation, targetId, imageVolume, enabledElement);
7191
- }
7192
7187
  (0,triggerAnnotationRenderForViewportIds/* default */.Z)(enabledElement.renderingEngine, viewportIdsToRender);
7193
7188
  if (newAnnotation) {
7194
7189
  (0,state/* triggerAnnotationCompleted */.F$)(annotation);
@@ -7223,9 +7218,12 @@ class RectangleROIStartEndThresholdTool extends RectangleROITool/* default */.Z
7223
7218
  let endCoord = endCoordinate;
7224
7219
  if (Array.isArray(startCoordinate)) {
7225
7220
  startCoord = this._getCoordinateForViewplaneNormal(startCoord, viewplaneNormal);
7221
+ data.startCoordinate = startCoord;
7222
+ data.handles.points[0][this._getIndexOfCoordinatesForViewplaneNormal(viewplaneNormal)] = startCoord;
7226
7223
  }
7227
7224
  if (Array.isArray(endCoordinate)) {
7228
7225
  endCoord = this._getCoordinateForViewplaneNormal(endCoord, viewplaneNormal);
7226
+ data.endCoordinate = endCoord;
7229
7227
  }
7230
7228
  const roundedStartCoord = esm.utilities.roundToPrecision(startCoord);
7231
7229
  const roundedEndCoord = esm.utilities.roundToPrecision(endCoord);
@@ -7425,6 +7423,9 @@ class RectangleROIStartEndThresholdTool extends RectangleROITool/* default */.Z
7425
7423
  const targetId = this.getTargetId(viewport);
7426
7424
  const imageVolume = esm.cache.getVolume(targetId.split(/volumeId:|\?/)[1]);
7427
7425
  this._computeProjectionPoints(annotation, imageVolume);
7426
+ if (this.configuration.calculatePointsInsideVolume) {
7427
+ this._computePointsInsideVolume(annotation, targetId, imageVolume, enabledElement);
7428
+ }
7428
7429
  annotation.invalidated = false;
7429
7430
  (0,state/* triggerAnnotationModified */.hg)(annotation, viewport.element);
7430
7431
  return cachedStats;