@ohif/app 3.12.0-beta.86 → 3.12.0-beta.88

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 (43) hide show
  1. package/dist/{1037.bundle.c5b7e110bee6ca994e4a.js → 1037.bundle.87a5adb8c92bd5bf53f5.js} +165 -51
  2. package/dist/{1214.bundle.01574d45655d4aed6d97.js → 1214.bundle.0015f63bce964b6ef47e.js} +170 -20
  3. package/dist/{1927.bundle.da6db325e08bacb0bca0.js → 1927.bundle.019331c266d306772371.js} +1 -1
  4. package/dist/{2518.bundle.4fd28150fb5a21d423e6.js → 2518.bundle.644302643ac0790e7374.js} +9 -1
  5. package/dist/{306.bundle.c671a09e1eacf6bcfc84.js → 306.bundle.f9faa2b3cdd7e86b5869.js} +114 -5
  6. package/dist/{4113.bundle.e5f1621632eca8b1aa53.js → 3461.bundle.801efcb1108297c5bc55.js} +17 -262
  7. package/dist/{3613.bundle.0231451edf6a513eb34a.js → 3613.bundle.6157004e0592003c0800.js} +41 -12
  8. package/dist/{4019.bundle.210bc6108a0656fc35ec.js → 4019.bundle.1be1cdd0805ad2c59d65.js} +16 -43
  9. package/dist/{414.bundle.f669e66c20b7ea2b7530.js → 414.bundle.bcb93cfec4662384fc24.js} +2 -2
  10. package/dist/{5400.bundle.3ebba479fc068cd8c700.js → 5400.bundle.c3a3fe8867efa2edfa94.js} +7 -9
  11. package/dist/{5858.bundle.99a6b9de04c621694ffd.js → 5858.bundle.d5f4bf849aaeebf5025c.js} +1 -1
  12. package/dist/{7412.bundle.9c3066742e534aaabb61.js → 7412.bundle.34fe5e72833e857edc0a.js} +202 -52
  13. package/dist/{9548.bundle.b91ebbc3a8ad7206b3aa.js → 9548.bundle.dc1d2a51c2834260179f.js} +2 -2
  14. package/dist/{app.bundle.5d10f23b4da5b116a61b.js → app.bundle.8a2402eedcc45ffb3249.js} +47 -25
  15. package/dist/app.bundle.css +1 -1
  16. package/dist/{compute.bundle.ce909c29a2b66706341f.js → compute.bundle.f3ca9fb0e7ce9e885b9c.js} +1 -1
  17. package/dist/index.html +1 -1
  18. package/dist/{polySeg.bundle.ed1926b3f492983b8ced.js → polySeg.bundle.7b8d1bb21d442a48da1d.js} +1 -1
  19. package/dist/sw.js +1 -1
  20. package/package.json +21 -21
  21. /package/dist/{1459.bundle.d44f5e52da6fb19aecc6.js → 1459.bundle.7f578dc1846aed55941a.js} +0 -0
  22. /package/dist/{147.bundle.b1edd4ebd4f25f286183.js → 147.bundle.6fc65a239d1ae1c6a918.js} +0 -0
  23. /package/dist/{1604.bundle.c31a11dc0ff99454545e.js → 1604.bundle.0dbceba7e533dc8a5538.js} +0 -0
  24. /package/dist/{1919.bundle.4ca5fe01d2f7c5a62792.js → 1919.bundle.ddc7b254b294a01071ef.js} +0 -0
  25. /package/dist/{2018.bundle.8c8676df1bfcdb0e7c7c.js → 2018.bundle.3c6b2f7616f910ecd841.js} +0 -0
  26. /package/dist/{213.bundle.d8bc7e6e70680f236847.js → 213.bundle.434cf325826eea706aaa.js} +0 -0
  27. /package/dist/{2243.bundle.1e9358b9d772507c02be.js → 2243.bundle.57ff620e2177cd42c600.js} +0 -0
  28. /package/dist/{2424.bundle.42ad0c57d8a5120b8ed5.js → 2424.bundle.c493683b794a0b640f2d.js} +0 -0
  29. /package/dist/{319.bundle.f5adcbbef5767dedc45d.js → 319.bundle.4ea0dbcfeb553c900206.js} +0 -0
  30. /package/dist/{4092.bundle.ca6b0bb4d15e5e45d891.js → 4092.bundle.65bdae18b174487c1676.js} +0 -0
  31. /package/dist/{5457.bundle.12df550c4148fda9fd19.js → 5457.bundle.e5d677b16d724b4cbf26.js} +0 -0
  32. /package/dist/{5485.bundle.f5dd3dd6313f57cf9053.js → 5485.bundle.9b70beea7330a4af35d9.js} +0 -0
  33. /package/dist/{6027.bundle.6db4480e70d0f23b1dec.js → 6027.bundle.54bcbe0f98f17755ec15.js} +0 -0
  34. /package/dist/{6201.bundle.60af9e41cfe5d1397946.js → 6201.bundle.5755b32632202c3dc29a.js} +0 -0
  35. /package/dist/{6991.bundle.e989d70e0872071c671c.js → 6991.bundle.3e77f988fa5a44852896.js} +0 -0
  36. /package/dist/{7431.bundle.cb629cddc7beedb366c8.js → 7431.bundle.55dd86000e66bee467e2.js} +0 -0
  37. /package/dist/{7639.bundle.57c8bea585ffef6ffcc0.js → 7639.bundle.33544dd89caced2b2a41.js} +0 -0
  38. /package/dist/{810.bundle.d18a4893fd961ed12dd4.js → 810.bundle.cd396218c3cbf1e10add.js} +0 -0
  39. /package/dist/{85.bundle.a4d3f7930554511f9392.js → 85.bundle.f10f07e444c16e578e69.js} +0 -0
  40. /package/dist/{8558.bundle.1e748fff1c13f0d6e6e1.js → 8558.bundle.f15f34e8139e38b1af01.js} +0 -0
  41. /package/dist/{934.bundle.9ae41e2c3feaffdf108c.js → 934.bundle.78a16ab84358c9848c26.js} +0 -0
  42. /package/dist/{9862.bundle.9f27703ec23c9c8f4cea.js → 9862.bundle.fa2e1ca195f94ef376de.js} +0 -0
  43. /package/dist/{9927.bundle.f6b0fde3f41ba52254fc.js → 9927.bundle.7ee83699e0036c10ebdc.js} +0 -0
@@ -6935,7 +6935,7 @@ var COLOR_LUT = __webpack_require__(93952);
6935
6935
 
6936
6936
 
6937
6937
  ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/version.js
6938
- const version = '4.9.1';
6938
+ const version = '4.11.2';
6939
6939
 
6940
6940
  ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/synchronizers/callbacks/cameraSyncCallback.js
6941
6941
 
@@ -31905,14 +31905,18 @@ function annotationRemovedListener(evt) {
31905
31905
  /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15327);
31906
31906
  /* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(99737);
31907
31907
  /* harmony import */ var _enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(18682);
31908
- /* harmony import */ var _getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(93210);
31909
- /* harmony import */ var _tools_displayTools_Surface_surfaceDisplay__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(67014);
31910
- /* harmony import */ var _tools_displayTools_Contour_contourDisplay__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25894);
31911
- /* harmony import */ var _tools_displayTools_Labelmap_labelmapDisplay__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(684);
31912
- /* harmony import */ var _store_addTool__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(68040);
31913
- /* harmony import */ var _store_state__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(85204);
31914
- /* harmony import */ var _tools_annotation_PlanarFreehandContourSegmentationTool__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(37590);
31915
- /* harmony import */ var _store_ToolGroupManager__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(77609);
31908
+ /* harmony import */ var _getSegmentation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(33283);
31909
+ /* harmony import */ var _getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(93210);
31910
+ /* harmony import */ var _tools_displayTools_Surface_surfaceDisplay__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(67014);
31911
+ /* harmony import */ var _tools_displayTools_Contour_contourDisplay__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(25894);
31912
+ /* harmony import */ var _tools_displayTools_Labelmap_labelmapDisplay__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(684);
31913
+ /* harmony import */ var _store_addTool__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(68040);
31914
+ /* harmony import */ var _store_state__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(85204);
31915
+ /* harmony import */ var _tools_annotation_PlanarFreehandContourSegmentationTool__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(37590);
31916
+ /* harmony import */ var _store_ToolGroupManager__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(77609);
31917
+ /* harmony import */ var _segmentationEventManager__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(10692);
31918
+
31919
+
31916
31920
 
31917
31921
 
31918
31922
 
@@ -31925,11 +31929,11 @@ function annotationRemovedListener(evt) {
31925
31929
 
31926
31930
 
31927
31931
  const renderers = {
31928
- [_enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.Labelmap]: _tools_displayTools_Labelmap_labelmapDisplay__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Ay,
31929
- [_enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.Contour]: _tools_displayTools_Contour_contourDisplay__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A,
31930
- [_enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.Surface]: _tools_displayTools_Surface_surfaceDisplay__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Ay,
31932
+ [_enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.Labelmap]: _tools_displayTools_Labelmap_labelmapDisplay__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Ay,
31933
+ [_enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.Contour]: _tools_displayTools_Contour_contourDisplay__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A,
31934
+ [_enums_SegmentationRepresentations__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.Surface]: _tools_displayTools_Surface_surfaceDisplay__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Ay,
31931
31935
  };
31932
- const planarContourToolName = _tools_annotation_PlanarFreehandContourSegmentationTool__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A.toolName;
31936
+ const planarContourToolName = _tools_annotation_PlanarFreehandContourSegmentationTool__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A.toolName;
31933
31937
  class SegmentationRenderingEngine {
31934
31938
  constructor() {
31935
31939
  this._needsRender = new Set();
@@ -31973,13 +31977,13 @@ class SegmentationRenderingEngine {
31973
31977
  for (const viewport of viewports) {
31974
31978
  const viewportId = viewport.id;
31975
31979
  if (segmentationId) {
31976
- const segmentationRepresentations = (0,_getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_3__/* .getSegmentationRepresentations */ .r$)(viewportId, { segmentationId });
31980
+ const segmentationRepresentations = (0,_getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_4__/* .getSegmentationRepresentations */ .r$)(viewportId, { segmentationId });
31977
31981
  if (segmentationRepresentations?.length > 0) {
31978
31982
  viewportIds.push(viewportId);
31979
31983
  }
31980
31984
  }
31981
31985
  else {
31982
- const segmentationRepresentations = (0,_getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_3__/* .getSegmentationRepresentations */ .r$)(viewportId);
31986
+ const segmentationRepresentations = (0,_getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_4__/* .getSegmentationRepresentations */ .r$)(viewportId);
31983
31987
  if (segmentationRepresentations?.length > 0) {
31984
31988
  viewportIds.push(viewportId);
31985
31989
  }
@@ -32009,7 +32013,7 @@ class SegmentationRenderingEngine {
32009
32013
  }
32010
32014
  }
32011
32015
  _triggerRender(viewportId) {
32012
- const segmentationRepresentations = (0,_getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_3__/* .getSegmentationRepresentations */ .r$)(viewportId);
32016
+ const segmentationRepresentations = (0,_getSegmentationRepresentation__WEBPACK_IMPORTED_MODULE_4__/* .getSegmentationRepresentations */ .r$)(viewportId);
32013
32017
  if (!segmentationRepresentations?.length) {
32014
32018
  return;
32015
32019
  }
@@ -32017,15 +32021,19 @@ class SegmentationRenderingEngine {
32017
32021
  if (!viewport) {
32018
32022
  return;
32019
32023
  }
32020
- const viewportRenderList = [];
32021
32024
  const segmentationRenderList = segmentationRepresentations.map((representation) => {
32022
32025
  if (representation.type === _enums__WEBPACK_IMPORTED_MODULE_1__.SegmentationRepresentations.Contour) {
32023
32026
  this._addPlanarFreeHandToolIfAbsent(viewport);
32024
32027
  }
32025
32028
  const display = renderers[representation.type];
32029
+ const segmentation = (0,_getSegmentation__WEBPACK_IMPORTED_MODULE_3__/* .getSegmentation */ .T)(representation.segmentationId);
32030
+ const existingRepresentation = segmentation.representationData[representation.type] !== undefined;
32026
32031
  try {
32027
- const viewportId = display.render(viewport, representation);
32028
- viewportRenderList.push(viewportId);
32032
+ display.render(viewport, representation).then(() => {
32033
+ if (!existingRepresentation) {
32034
+ (0,_segmentationEventManager__WEBPACK_IMPORTED_MODULE_12__/* .addDefaultSegmentationListener */ .Np)(viewport, representation.segmentationId, representation.type);
32035
+ }
32036
+ });
32029
32037
  }
32030
32038
  catch (error) {
32031
32039
  console.error(error);
@@ -32059,10 +32067,10 @@ class SegmentationRenderingEngine {
32059
32067
  });
32060
32068
  }
32061
32069
  _addPlanarFreeHandToolIfAbsent(viewport) {
32062
- if (!(planarContourToolName in _store_state__WEBPACK_IMPORTED_MODULE_8__/* .state */ .wk.tools)) {
32063
- (0,_store_addTool__WEBPACK_IMPORTED_MODULE_7__/* .addTool */ .Gx)(_tools_annotation_PlanarFreehandContourSegmentationTool__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A);
32070
+ if (!(planarContourToolName in _store_state__WEBPACK_IMPORTED_MODULE_9__/* .state */ .wk.tools)) {
32071
+ (0,_store_addTool__WEBPACK_IMPORTED_MODULE_8__/* .addTool */ .Gx)(_tools_annotation_PlanarFreehandContourSegmentationTool__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A);
32064
32072
  }
32065
- const toolGroup = (0,_store_ToolGroupManager__WEBPACK_IMPORTED_MODULE_10__.getToolGroupForViewport)(viewport.id);
32073
+ const toolGroup = (0,_store_ToolGroupManager__WEBPACK_IMPORTED_MODULE_11__.getToolGroupForViewport)(viewport.id);
32066
32074
  if (!toolGroup.hasTool(planarContourToolName)) {
32067
32075
  toolGroup.addTool(planarContourToolName);
32068
32076
  toolGroup.setToolPassive(planarContourToolName);
@@ -32637,21 +32645,19 @@ class SegmentationStyle {
32637
32645
  viewportsStyle: {},
32638
32646
  };
32639
32647
  }
32640
- setStyle(specifier, styles) {
32648
+ setStyle(specifier, styles, merge = true) {
32641
32649
  const { viewportId, segmentationId, type, segmentIndex } = specifier;
32642
32650
  const currentStyles = this.getStyle(specifier);
32651
+ const mergedStyles = merge ? { ...currentStyles, ...styles } : styles;
32643
32652
  let updatedStyles;
32644
32653
  if (!viewportId && !segmentationId) {
32645
- updatedStyles = {
32646
- ...currentStyles,
32647
- ...styles,
32648
- };
32654
+ updatedStyles = mergedStyles;
32655
+ }
32656
+ else if (merge) {
32657
+ updatedStyles = this.copyActiveToInactiveIfNotProvided(mergedStyles, type);
32649
32658
  }
32650
32659
  else {
32651
- updatedStyles = this.copyActiveToInactiveIfNotProvided({
32652
- ...currentStyles,
32653
- ...styles,
32654
- }, type);
32660
+ updatedStyles = mergedStyles;
32655
32661
  }
32656
32662
  if (!type) {
32657
32663
  throw new Error('Type is required to set a style');
@@ -33422,7 +33428,7 @@ __webpack_require__.d(__webpack_exports__, {
33422
33428
  state: () => (/* reexport */ segmentationState)
33423
33429
  });
33424
33430
 
33425
- // UNUSED EXPORTS: addContourRepresentationToViewportMap, addLabelmapRepresentationToViewport, addLabelmapRepresentationToViewportMap, addSegmentations, addSurfaceRepresentationToViewport, addSurfaceRepresentationToViewportMap, defaultSegmentationStateManager, getCurrentLabelmapImageIdsForViewport, getLabelmapImageIds, getLabelmapImageIdsForImageId, helpers, removeAllSegmentationRepresentations, removeAllSegmentations, removeContourRepresentation, removeLabelmapRepresentation, removeSegment, removeSegmentation, removeSegmentationRepresentation, removeSegmentationRepresentations, removeSurfaceRepresentation, segmentationStyle, strategies, triggerSegmentationEvents, updateSegmentations, utilities
33431
+ // UNUSED EXPORTS: addContourRepresentationToViewportMap, addDefaultSegmentationListener, addLabelmapRepresentationToViewport, addLabelmapRepresentationToViewportMap, addSegmentationListener, addSegmentations, addSurfaceRepresentationToViewport, addSurfaceRepresentationToViewportMap, defaultSegmentationStateManager, getCurrentLabelmapImageIdsForViewport, getLabelmapImageIds, getLabelmapImageIdsForImageId, helpers, removeAllSegmentationListeners, removeAllSegmentationRepresentations, removeAllSegmentations, removeContourRepresentation, removeLabelmapRepresentation, removeSegment, removeSegmentation, removeSegmentationListener, removeSegmentationRepresentation, removeSegmentationRepresentations, removeSurfaceRepresentation, segmentationStyle, strategies, triggerSegmentationEvents, updateSegmentations, utilities
33426
33432
 
33427
33433
  // NAMESPACE OBJECT: ../../../node_modules/@cornerstonejs/tools/dist/esm/stateManagement/segmentation/config/index.js
33428
33434
  var config_namespaceObject = {};
@@ -33546,8 +33552,8 @@ var SegmentationStyle = __webpack_require__(92686);
33546
33552
  function getStyle(specifier) {
33547
33553
  return segmentationStyle.getStyle(specifier);
33548
33554
  }
33549
- function setStyle(specifier, style) {
33550
- segmentationStyle.setStyle(specifier, style);
33555
+ function setStyle(specifier, style, merge) {
33556
+ segmentationStyle.setStyle(specifier, style, merge);
33551
33557
  if (!specifier.viewportId && !specifier.segmentationId) {
33552
33558
  const segmentations = getSegmentations();
33553
33559
  segmentations.forEach((segmentation) => {
@@ -33735,6 +33741,8 @@ var removeSegmentation = __webpack_require__(63427);
33735
33741
  var getCurrentLabelmapImageIdForViewport = __webpack_require__(97577);
33736
33742
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/stateManagement/segmentation/getActiveSegmentation.js
33737
33743
  var getActiveSegmentation = __webpack_require__(67165);
33744
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/stateManagement/segmentation/segmentationEventManager.js
33745
+ var segmentationEventManager = __webpack_require__(10692);
33738
33746
  ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/stateManagement/segmentation/index.js
33739
33747
 
33740
33748
 
@@ -33758,6 +33766,7 @@ var getActiveSegmentation = __webpack_require__(67165);
33758
33766
 
33759
33767
 
33760
33768
 
33769
+
33761
33770
 
33762
33771
 
33763
33772
  const helpers = {
@@ -33823,13 +33832,17 @@ function internalAddRepresentationData({ segmentationId, type, data, }) {
33823
33832
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
33824
33833
  /* harmony export */ U: () => (/* binding */ internalAddSegmentationRepresentation)
33825
33834
  /* harmony export */ });
33826
- /* harmony import */ var _constants_COLOR_LUT__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(93952);
33827
- /* harmony import */ var _utilities_triggerAnnotationRenderForViewportIds__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(58640);
33828
- /* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(99737);
33829
- /* harmony import */ var _triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(49906);
33830
- /* harmony import */ var _addColorLUT__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(4714);
33831
- /* harmony import */ var _SegmentationStateManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(59475);
33832
- /* harmony import */ var _segmentIndex__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(70930);
33835
+ /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15327);
33836
+ /* harmony import */ var _constants_COLOR_LUT__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(93952);
33837
+ /* harmony import */ var _utilities_triggerAnnotationRenderForViewportIds__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(58640);
33838
+ /* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(99737);
33839
+ /* harmony import */ var _triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(49906);
33840
+ /* harmony import */ var _addColorLUT__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4714);
33841
+ /* harmony import */ var _SegmentationStateManager__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(59475);
33842
+ /* harmony import */ var _segmentationEventManager__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(10692);
33843
+ /* harmony import */ var _segmentIndex__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(70930);
33844
+
33845
+
33833
33846
 
33834
33847
 
33835
33848
 
@@ -33843,27 +33856,34 @@ function internalAddSegmentationRepresentation(viewportId, representationInput)
33843
33856
  colorLUTIndex: getColorLUTIndex(config),
33844
33857
  ...config,
33845
33858
  };
33846
- _SegmentationStateManager__WEBPACK_IMPORTED_MODULE_5__/* .defaultSegmentationStateManager */ ._6.addSegmentationRepresentation(viewportId, segmentationId, representationInput.type, renderingConfig);
33847
- if (!(0,_segmentIndex__WEBPACK_IMPORTED_MODULE_6__.getActiveSegmentIndex)(segmentationId)) {
33859
+ _SegmentationStateManager__WEBPACK_IMPORTED_MODULE_6__/* .defaultSegmentationStateManager */ ._6.addSegmentationRepresentation(viewportId, segmentationId, representationInput.type, renderingConfig);
33860
+ const { viewport } = (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.getEnabledElementByViewportId)(viewportId) || {};
33861
+ if (viewport) {
33862
+ (0,_segmentationEventManager__WEBPACK_IMPORTED_MODULE_7__/* .addDefaultSegmentationListener */ .Np)(viewport, segmentationId, representationInput.type);
33863
+ }
33864
+ if (!(0,_segmentIndex__WEBPACK_IMPORTED_MODULE_8__.getActiveSegmentIndex)(segmentationId)) {
33848
33865
  let firstSegmentIndex = 1;
33849
- const segmentation = _SegmentationStateManager__WEBPACK_IMPORTED_MODULE_5__/* .defaultSegmentationStateManager */ ._6.getSegmentation(segmentationId);
33866
+ const segmentation = _SegmentationStateManager__WEBPACK_IMPORTED_MODULE_6__/* .defaultSegmentationStateManager */ ._6.getSegmentation(segmentationId);
33850
33867
  if (segmentation) {
33851
33868
  const segmentKeys = Object.keys(segmentation.segments);
33852
33869
  if (segmentKeys.length > 0) {
33853
33870
  firstSegmentIndex = segmentKeys.map((k) => Number(k)).sort()[0];
33854
33871
  }
33855
- (0,_segmentIndex__WEBPACK_IMPORTED_MODULE_6__.setActiveSegmentIndex)(segmentationId, firstSegmentIndex);
33872
+ (0,_segmentIndex__WEBPACK_IMPORTED_MODULE_8__.setActiveSegmentIndex)(segmentationId, firstSegmentIndex);
33856
33873
  }
33857
33874
  }
33858
- if (representationInput.type === _enums__WEBPACK_IMPORTED_MODULE_2__.SegmentationRepresentations.Contour) {
33859
- (0,_utilities_triggerAnnotationRenderForViewportIds__WEBPACK_IMPORTED_MODULE_1__/* .triggerAnnotationRenderForViewportIds */ .t)([viewportId]);
33875
+ if (representationInput.type === _enums__WEBPACK_IMPORTED_MODULE_3__.SegmentationRepresentations.Contour) {
33876
+ (0,_utilities_triggerAnnotationRenderForViewportIds__WEBPACK_IMPORTED_MODULE_2__/* .triggerAnnotationRenderForViewportIds */ .t)([viewportId]);
33877
+ }
33878
+ if (representationInput.type === _enums__WEBPACK_IMPORTED_MODULE_3__.SegmentationRepresentations.Surface) {
33879
+ (0,_triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_4__.triggerSegmentationDataModified)(segmentationId);
33860
33880
  }
33861
- (0,_triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_3__.triggerSegmentationModified)(segmentationId);
33881
+ (0,_triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_4__.triggerSegmentationModified)(segmentationId);
33862
33882
  }
33863
33883
  function getColorLUTIndex(config) {
33864
33884
  const { colorLUTOrIndex } = config || {};
33865
33885
  if (colorLUTOrIndex === undefined) {
33866
- const index = (0,_addColorLUT__WEBPACK_IMPORTED_MODULE_4__/* .addColorLUT */ .u)(JSON.parse(JSON.stringify(_constants_COLOR_LUT__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)));
33886
+ const index = (0,_addColorLUT__WEBPACK_IMPORTED_MODULE_5__/* .addColorLUT */ .u)(JSON.parse(JSON.stringify(_constants_COLOR_LUT__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)));
33867
33887
  return index;
33868
33888
  }
33869
33889
  if (typeof colorLUTOrIndex === 'number') {
@@ -33871,10 +33891,10 @@ function getColorLUTIndex(config) {
33871
33891
  }
33872
33892
  if (Array.isArray(colorLUTOrIndex) &&
33873
33893
  colorLUTOrIndex.every((item) => Array.isArray(item) && item.length === 4)) {
33874
- const index = (0,_addColorLUT__WEBPACK_IMPORTED_MODULE_4__/* .addColorLUT */ .u)(colorLUTOrIndex);
33894
+ const index = (0,_addColorLUT__WEBPACK_IMPORTED_MODULE_5__/* .addColorLUT */ .u)(colorLUTOrIndex);
33875
33895
  return index;
33876
33896
  }
33877
- const index = (0,_addColorLUT__WEBPACK_IMPORTED_MODULE_4__/* .addColorLUT */ .u)(JSON.parse(JSON.stringify(_constants_COLOR_LUT__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)));
33897
+ const index = (0,_addColorLUT__WEBPACK_IMPORTED_MODULE_5__/* .addColorLUT */ .u)(JSON.parse(JSON.stringify(_constants_COLOR_LUT__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)));
33878
33898
  return index;
33879
33899
  }
33880
33900
 
@@ -33954,6 +33974,8 @@ var surfaceDisplay = __webpack_require__(67014);
33954
33974
 
33955
33975
 
33956
33976
 
33977
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/stateManagement/segmentation/segmentationEventManager.js
33978
+ var segmentationEventManager = __webpack_require__(10692);
33957
33979
  ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.js
33958
33980
 
33959
33981
 
@@ -33962,6 +33984,7 @@ var surfaceDisplay = __webpack_require__(67014);
33962
33984
 
33963
33985
 
33964
33986
 
33987
+
33965
33988
  function removeSegmentationRepresentation(viewportId, specifier, immediate) {
33966
33989
  return _removeSegmentationRepresentations(viewportId, specifier, immediate);
33967
33990
  }
@@ -34021,6 +34044,7 @@ function _removeRepresentationObject(viewportId, segmentationId, type, immediate
34021
34044
  else if (representation.type === SegmentationRepresentations/* default */.A.Surface) {
34022
34045
  surfaceDisplay/* default */.Ay.removeRepresentation(viewportId, representation.segmentationId, immediate);
34023
34046
  }
34047
+ (0,segmentationEventManager/* removeSegmentationListener */.L8)(representation.segmentationId, representation.type);
34024
34048
  });
34025
34049
  const { viewport } = (0,esm.getEnabledElementByViewportId)(viewportId) || {};
34026
34050
  if (viewport) {
@@ -34163,6 +34187,96 @@ function getLockedSegmentIndices(segmentationId) {
34163
34187
 
34164
34188
 
34165
34189
 
34190
+ /***/ }),
34191
+
34192
+ /***/ 10692:
34193
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
34194
+
34195
+ "use strict";
34196
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
34197
+ /* harmony export */ L8: () => (/* binding */ removeSegmentationListener),
34198
+ /* harmony export */ Np: () => (/* binding */ addDefaultSegmentationListener)
34199
+ /* harmony export */ });
34200
+ /* unused harmony exports addSegmentationListener, removeAllSegmentationListeners */
34201
+ /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15327);
34202
+ /* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(99737);
34203
+ /* harmony import */ var _triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(49906);
34204
+ /* harmony import */ var _utilities_debounce__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(52905);
34205
+ /* harmony import */ var _tools_displayTools_Surface_surfaceDisplay__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(67014);
34206
+ /* harmony import */ var _tools_displayTools_Contour_contourDisplay__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25894);
34207
+ /* harmony import */ var _tools_displayTools_Labelmap_labelmapDisplay__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(684);
34208
+ /* harmony import */ var _getSegmentation__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33283);
34209
+
34210
+
34211
+
34212
+
34213
+
34214
+
34215
+
34216
+
34217
+ const renderers = {
34218
+ [_enums__WEBPACK_IMPORTED_MODULE_1__.SegmentationRepresentations.Labelmap]: _tools_displayTools_Labelmap_labelmapDisplay__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Ay,
34219
+ [_enums__WEBPACK_IMPORTED_MODULE_1__.SegmentationRepresentations.Contour]: _tools_displayTools_Contour_contourDisplay__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A,
34220
+ [_enums__WEBPACK_IMPORTED_MODULE_1__.SegmentationRepresentations.Surface]: _tools_displayTools_Surface_surfaceDisplay__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Ay,
34221
+ };
34222
+ const segmentationListeners = new Map();
34223
+ function addDefaultSegmentationListener(viewport, segmentationId, representationType) {
34224
+ const updateFunction = renderers[representationType].getUpdateFunction(viewport);
34225
+ if (updateFunction) {
34226
+ addSegmentationListener(segmentationId, representationType, updateFunction);
34227
+ }
34228
+ }
34229
+ function addSegmentationListener(segmentationId, representationType, updateFunction) {
34230
+ if (!segmentationListeners.has(segmentationId)) {
34231
+ segmentationListeners.set(segmentationId, new Map());
34232
+ }
34233
+ const listenerMap = segmentationListeners.get(segmentationId);
34234
+ if (listenerMap.has(representationType)) {
34235
+ removeSegmentationListener(segmentationId, representationType);
34236
+ }
34237
+ const listener = createDebouncedSegmentationListener(segmentationId, representationType, updateFunction);
34238
+ _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.eventTarget.addEventListener(_enums__WEBPACK_IMPORTED_MODULE_1__.Events.SEGMENTATION_DATA_MODIFIED, listener);
34239
+ listenerMap.set(representationType, listener);
34240
+ }
34241
+ function removeSegmentationListener(segmentationId, representationType) {
34242
+ const listenerMap = segmentationListeners.get(segmentationId);
34243
+ if (!listenerMap) {
34244
+ return;
34245
+ }
34246
+ const listener = listenerMap.get(representationType);
34247
+ if (!listener) {
34248
+ return;
34249
+ }
34250
+ _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.eventTarget.removeEventListener(_enums__WEBPACK_IMPORTED_MODULE_1__.Events.SEGMENTATION_DATA_MODIFIED, listener);
34251
+ listenerMap.delete(representationType);
34252
+ }
34253
+ function removeAllSegmentationListeners(segmentationId) {
34254
+ const listenerMap = segmentationListeners.get(segmentationId);
34255
+ if (!listenerMap) {
34256
+ return;
34257
+ }
34258
+ for (const listener of listenerMap.values()) {
34259
+ eventTarget.removeEventListener(Events.SEGMENTATION_DATA_MODIFIED, listener);
34260
+ }
34261
+ segmentationListeners.delete(segmentationId);
34262
+ }
34263
+ function createDebouncedSegmentationListener(segmentationId, representationType, updateFunction) {
34264
+ const debouncedHandler = (0,_utilities_debounce__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)((event) => {
34265
+ const eventSegmentationId = event.detail?.segmentationId;
34266
+ const segmentation = (0,_getSegmentation__WEBPACK_IMPORTED_MODULE_7__/* .getSegmentation */ .T)(eventSegmentationId);
34267
+ if (eventSegmentationId === segmentationId &&
34268
+ !!segmentation?.representationData?.[representationType]) {
34269
+ updateFunction(segmentationId);
34270
+ (0,_triggerSegmentationEvents__WEBPACK_IMPORTED_MODULE_2__.triggerSegmentationModified)(segmentationId);
34271
+ }
34272
+ }, 300);
34273
+ return ((event) => {
34274
+ debouncedHandler(event);
34275
+ });
34276
+ }
34277
+
34278
+
34279
+
34166
34280
  /***/ }),
34167
34281
 
34168
34282
  /***/ 98870: