@cornerstonejs/tools 1.56.1 → 1.56.2

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 (81) hide show
  1. package/dist/cjs/eventListeners/annotations/annotationRemovedListener.d.ts +2 -0
  2. package/dist/cjs/eventListeners/annotations/annotationRemovedListener.js +35 -0
  3. package/dist/cjs/eventListeners/annotations/annotationRemovedListener.js.map +1 -0
  4. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +27 -19
  5. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js.map +1 -1
  6. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.d.ts +2 -0
  7. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.js +9 -0
  8. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.js.map +1 -0
  9. package/dist/cjs/eventListeners/annotations/contourSegmentation/index.d.ts +1 -0
  10. package/dist/cjs/eventListeners/annotations/contourSegmentation/index.js +3 -1
  11. package/dist/cjs/eventListeners/annotations/contourSegmentation/index.js.map +1 -1
  12. package/dist/cjs/eventListeners/annotations/index.d.ts +2 -1
  13. package/dist/cjs/eventListeners/annotations/index.js +3 -1
  14. package/dist/cjs/eventListeners/annotations/index.js.map +1 -1
  15. package/dist/cjs/eventListeners/index.d.ts +2 -2
  16. package/dist/cjs/eventListeners/index.js +2 -1
  17. package/dist/cjs/eventListeners/index.js.map +1 -1
  18. package/dist/cjs/init.js +1 -0
  19. package/dist/cjs/init.js.map +1 -1
  20. package/dist/cjs/tools/annotation/PlanarFreehandContourSegmentationTool.d.ts +2 -0
  21. package/dist/cjs/tools/annotation/PlanarFreehandContourSegmentationTool.js +11 -0
  22. package/dist/cjs/tools/annotation/PlanarFreehandContourSegmentationTool.js.map +1 -1
  23. package/dist/cjs/types/ContourSegmentationAnnotation.d.ts +1 -1
  24. package/dist/cjs/utilities/getViewportForAnnotation.js +6 -13
  25. package/dist/cjs/utilities/getViewportForAnnotation.js.map +1 -1
  26. package/dist/cjs/utilities/getViewportsForAnnotation.d.ts +2 -0
  27. package/dist/cjs/utilities/getViewportsForAnnotation.js +20 -0
  28. package/dist/cjs/utilities/getViewportsForAnnotation.js.map +1 -0
  29. package/dist/esm/eventListeners/annotations/annotationRemovedListener.js +9 -0
  30. package/dist/esm/eventListeners/annotations/annotationRemovedListener.js.map +1 -0
  31. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +25 -20
  32. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js.map +1 -1
  33. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.js +6 -0
  34. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.js.map +1 -0
  35. package/dist/esm/eventListeners/annotations/contourSegmentation/index.js +1 -0
  36. package/dist/esm/eventListeners/annotations/contourSegmentation/index.js.map +1 -1
  37. package/dist/esm/eventListeners/annotations/index.js +2 -1
  38. package/dist/esm/eventListeners/annotations/index.js.map +1 -1
  39. package/dist/esm/eventListeners/index.js +2 -2
  40. package/dist/esm/eventListeners/index.js.map +1 -1
  41. package/dist/esm/init.js +2 -1
  42. package/dist/esm/init.js.map +1 -1
  43. package/dist/esm/tools/annotation/PlanarFreehandContourSegmentationTool.js +11 -0
  44. package/dist/esm/tools/annotation/PlanarFreehandContourSegmentationTool.js.map +1 -1
  45. package/dist/esm/utilities/getViewportForAnnotation.js +3 -13
  46. package/dist/esm/utilities/getViewportForAnnotation.js.map +1 -1
  47. package/dist/esm/utilities/getViewportsForAnnotation.js +17 -0
  48. package/dist/esm/utilities/getViewportsForAnnotation.js.map +1 -0
  49. package/dist/types/eventListeners/annotations/annotationRemovedListener.d.ts +3 -0
  50. package/dist/types/eventListeners/annotations/annotationRemovedListener.d.ts.map +1 -0
  51. package/dist/types/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts.map +1 -1
  52. package/dist/types/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.d.ts +3 -0
  53. package/dist/types/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.d.ts.map +1 -0
  54. package/dist/types/eventListeners/annotations/contourSegmentation/index.d.ts +1 -0
  55. package/dist/types/eventListeners/annotations/contourSegmentation/index.d.ts.map +1 -1
  56. package/dist/types/eventListeners/annotations/index.d.ts +2 -1
  57. package/dist/types/eventListeners/annotations/index.d.ts.map +1 -1
  58. package/dist/types/eventListeners/index.d.ts +2 -2
  59. package/dist/types/eventListeners/index.d.ts.map +1 -1
  60. package/dist/types/init.d.ts.map +1 -1
  61. package/dist/types/tools/annotation/PlanarFreehandContourSegmentationTool.d.ts +2 -0
  62. package/dist/types/tools/annotation/PlanarFreehandContourSegmentationTool.d.ts.map +1 -1
  63. package/dist/types/types/ContourSegmentationAnnotation.d.ts +1 -1
  64. package/dist/types/types/ContourSegmentationAnnotation.d.ts.map +1 -1
  65. package/dist/types/utilities/getViewportForAnnotation.d.ts.map +1 -1
  66. package/dist/types/utilities/getViewportsForAnnotation.d.ts +3 -0
  67. package/dist/types/utilities/getViewportsForAnnotation.d.ts.map +1 -0
  68. package/dist/umd/index.js +1 -1
  69. package/dist/umd/index.js.map +1 -1
  70. package/package.json +3 -3
  71. package/src/eventListeners/annotations/annotationRemovedListener.ts +13 -0
  72. package/src/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.ts +42 -24
  73. package/src/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.ts +11 -0
  74. package/src/eventListeners/annotations/contourSegmentation/index.ts +1 -0
  75. package/src/eventListeners/annotations/index.ts +2 -0
  76. package/src/eventListeners/index.ts +2 -0
  77. package/src/init.ts +6 -0
  78. package/src/tools/annotation/PlanarFreehandContourSegmentationTool.ts +25 -0
  79. package/src/types/ContourSegmentationAnnotation.ts +1 -1
  80. package/src/utilities/getViewportForAnnotation.ts +4 -16
  81. package/src/utilities/getViewportsForAnnotation.ts +31 -0
@@ -0,0 +1,2 @@
1
+ import { AnnotationRemovedEventType } from '../../types/EventTypes';
2
+ export default function annotationRemovedListener(evt: AnnotationRemovedEventType): void;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const contourSegUtils = __importStar(require("../../utilities/contourSegmentation"));
27
+ const contourSegmentation_1 = require("./contourSegmentation");
28
+ function annotationRemovedListener(evt) {
29
+ const annotation = evt.detail.annotation;
30
+ if (contourSegUtils.isContourSegmentationAnnotation(annotation)) {
31
+ (0, contourSegmentation_1.contourSegmentationRemoved)(evt);
32
+ }
33
+ }
34
+ exports.default = annotationRemovedListener;
35
+ //# sourceMappingURL=annotationRemovedListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotationRemovedListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/annotations/annotationRemovedListener.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,qFAAuE;AACvE,+DAAmE;AAEnE,SAAwB,yBAAyB,CAC/C,GAA+B;IAE/B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;IAEzC,IAAI,eAAe,CAAC,+BAA+B,CAAC,UAAU,CAAC,EAAE;QAC/D,IAAA,gDAA0B,EAAC,GAAG,CAAC,CAAC;KACjC;AACH,CAAC;AARD,4CAQC"}
@@ -31,8 +31,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
31
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
32
32
  });
33
33
  };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
34
37
  Object.defineProperty(exports, "__esModule", { value: true });
35
38
  const core_1 = require("@cornerstonejs/core");
39
+ const getViewportsForAnnotation_1 = __importDefault(require("../../../utilities/getViewportsForAnnotation"));
36
40
  const utilities_1 = require("../../../utilities");
37
41
  const viewportFilters_1 = require("../../../utilities/viewportFilters");
38
42
  const annotationState_1 = require("../../../stateManagement/annotation/annotationState");
@@ -49,7 +53,7 @@ function contourSegmentationCompletedListener(evt) {
49
53
  if (!contourSegUtils.isContourSegmentationAnnotation(sourceAnnotation)) {
50
54
  return;
51
55
  }
52
- const viewport = (0, utilities_1.getViewportForAnnotation)(sourceAnnotation);
56
+ const viewport = getViewport(sourceAnnotation);
53
57
  const contourSegmentationAnnotations = getValidContourSegmentationAnnotations(sourceAnnotation);
54
58
  if (!contourSegmentationAnnotations.length) {
55
59
  return;
@@ -59,9 +63,6 @@ function contourSegmentationCompletedListener(evt) {
59
63
  if (!targetAnnotationInfo) {
60
64
  return;
61
65
  }
62
- if (!isFreehandContourSegToolRegistered(viewport)) {
63
- return;
64
- }
65
66
  const { targetAnnotation, targetPolyline, isContourHole } = targetAnnotationInfo;
66
67
  if (isContourHole) {
67
68
  const { contourHoleProcessingEnabled = false } = evt.detail;
@@ -76,22 +77,25 @@ function contourSegmentationCompletedListener(evt) {
76
77
  });
77
78
  }
78
79
  exports.default = contourSegmentationCompletedListener;
79
- function isFreehandContourSegToolRegistered(viewport) {
80
+ function isFreehandContourSegToolRegisteredForViewport(viewport, silent = false) {
80
81
  const { toolName } = tools_1.PlanarFreehandContourSegmentationTool;
81
- if (!(0, store_1.hasTool)(tools_1.PlanarFreehandContourSegmentationTool)) {
82
- console.warn(`${toolName} is not registered in cornerstone`);
83
- return false;
84
- }
85
82
  const toolGroup = store_1.ToolGroupManager.getToolGroupForViewport(viewport.id, viewport.renderingEngineId);
83
+ let errorMessage;
86
84
  if (!toolGroup.hasTool(toolName)) {
87
- console.warn(`Tool ${toolName} not added to ${toolGroup.id} toolGroup`);
88
- return false;
85
+ errorMessage = `Tool ${toolName} not added to ${toolGroup.id} toolGroup`;
86
+ }
87
+ else if (!toolGroup.getToolOptions(toolName)) {
88
+ errorMessage = `Tool ${toolName} must be in active/passive state`;
89
89
  }
90
- if (!toolGroup.getToolOptions(toolName)) {
91
- console.warn(`Tool ${toolName} must be in active/passive state`);
92
- return false;
90
+ if (errorMessage && !silent) {
91
+ console.warn(errorMessage);
93
92
  }
94
- return true;
93
+ return !errorMessage;
94
+ }
95
+ function getViewport(annotation) {
96
+ const viewports = (0, getViewportsForAnnotation_1.default)(annotation);
97
+ const viewportWithToolRegistered = viewports.find((viewport) => isFreehandContourSegToolRegisteredForViewport(viewport, true));
98
+ return viewportWithToolRegistered !== null && viewportWithToolRegistered !== void 0 ? viewportWithToolRegistered : viewports[0];
95
99
  }
96
100
  function convertContourPolylineToCanvasSpace(polyline, viewport) {
97
101
  const numPoints = polyline.length;
@@ -103,10 +107,6 @@ function convertContourPolylineToCanvasSpace(polyline, viewport) {
103
107
  }
104
108
  function getValidContourSegmentationAnnotations(sourceAnnotation) {
105
109
  const { annotationUID: sourceAnnotationUID } = sourceAnnotation;
106
- const { FrameOfReferenceUID } = sourceAnnotation.metadata;
107
- if (!FrameOfReferenceUID) {
108
- return [];
109
- }
110
110
  const allAnnotations = (0, annotationState_1.getAllAnnotations)();
111
111
  return allAnnotations.filter((targetAnnotation) => targetAnnotation.annotationUID &&
112
112
  targetAnnotation.annotationUID !== sourceAnnotationUID &&
@@ -160,6 +160,13 @@ function getContourHolesData(viewport, annotation) {
160
160
  }
161
161
  function combinePolylines(viewport, targetAnnotation, targetPolyline, sourceAnnotation, sourcePolyline) {
162
162
  var _a;
163
+ if (!(0, store_1.hasTool)(tools_1.PlanarFreehandContourSegmentationTool)) {
164
+ console.warn(`${tools_1.PlanarFreehandContourSegmentationTool.toolName} is not registered in cornerstone`);
165
+ return;
166
+ }
167
+ if (!isFreehandContourSegToolRegisteredForViewport(viewport)) {
168
+ return;
169
+ }
163
170
  const sourceStartPoint = sourcePolyline[0];
164
171
  const mergePolylines = utilities_1.math.polyline.containsPoint(targetPolyline, sourceStartPoint);
165
172
  const contourHolesData = getContourHolesData(viewport, targetAnnotation);
@@ -231,6 +238,7 @@ function combinePolylines(viewport, targetAnnotation, targetPolyline, sourceAnno
231
238
  targetWindingDirection: ContourAnnotation_1.ContourWindingDirection.Clockwise,
232
239
  }, viewport);
233
240
  (0, annotationState_1.addAnnotation)(newAnnotation, element);
241
+ contourSegUtils.addContourSegmentationAnnotation(newAnnotation);
234
242
  (_a = reassignedContourHolesMap
235
243
  .get(polyline)) === null || _a === void 0 ? void 0 : _a.forEach((holeData) => (0, annotationState_1.addChildAnnotation)(newAnnotation, holeData.annotation));
236
244
  }
@@ -1 +1 @@
1
- {"version":3,"file":"contourSegmentationCompleted.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contourSegmentationCompleted.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { AnnotationRemovedEventType } from '../../../types/EventTypes';
2
+ export default function contourSegmentationRemovedListener(evt: AnnotationRemovedEventType): void;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const contourSegmentation_1 = require("../../../utilities/contourSegmentation");
4
+ function contourSegmentationRemovedListener(evt) {
5
+ const annotation = evt.detail.annotation;
6
+ (0, contourSegmentation_1.removeContourSegmentationAnnotation)(annotation);
7
+ }
8
+ exports.default = contourSegmentationRemovedListener;
9
+ //# sourceMappingURL=contourSegmentationRemoved.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contourSegmentationRemoved.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.ts"],"names":[],"mappings":";;AAEA,gFAA6F;AAE7F,SAAwB,kCAAkC,CACxD,GAA+B;IAE/B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,UAA2C,CAAC;IAE1E,IAAA,yDAAmC,EAAC,UAAU,CAAC,CAAC;AAClD,CAAC;AAND,qDAMC"}
@@ -1 +1,2 @@
1
1
  export { default as contourSegmentationCompleted } from './contourSegmentationCompleted';
2
+ export { default as contourSegmentationRemoved } from './contourSegmentationRemoved';
@@ -3,7 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.contourSegmentationCompleted = void 0;
6
+ exports.contourSegmentationRemoved = exports.contourSegmentationCompleted = void 0;
7
7
  var contourSegmentationCompleted_1 = require("./contourSegmentationCompleted");
8
8
  Object.defineProperty(exports, "contourSegmentationCompleted", { enumerable: true, get: function () { return __importDefault(contourSegmentationCompleted_1).default; } });
9
+ var contourSegmentationRemoved_1 = require("./contourSegmentationRemoved");
10
+ Object.defineProperty(exports, "contourSegmentationRemoved", { enumerable: true, get: function () { return __importDefault(contourSegmentationRemoved_1).default; } });
9
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/index.ts"],"names":[],"mappings":";;;;;;AAAA,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/index.ts"],"names":[],"mappings":";;;;;;AAAA,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B"}
@@ -1,4 +1,5 @@
1
1
  import annotationCompletedListener from './annotationCompletedListener';
2
2
  import annotationSelectionListener from './annotationSelectionListener';
3
3
  import annotationModifiedListener from './annotationModifiedListener';
4
- export { annotationCompletedListener, annotationSelectionListener, annotationModifiedListener, };
4
+ import annotationRemovedListener from './annotationRemovedListener';
5
+ export { annotationCompletedListener, annotationSelectionListener, annotationModifiedListener, annotationRemovedListener, };
@@ -3,11 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.annotationModifiedListener = exports.annotationSelectionListener = exports.annotationCompletedListener = void 0;
6
+ exports.annotationRemovedListener = exports.annotationModifiedListener = exports.annotationSelectionListener = exports.annotationCompletedListener = void 0;
7
7
  const annotationCompletedListener_1 = __importDefault(require("./annotationCompletedListener"));
8
8
  exports.annotationCompletedListener = annotationCompletedListener_1.default;
9
9
  const annotationSelectionListener_1 = __importDefault(require("./annotationSelectionListener"));
10
10
  exports.annotationSelectionListener = annotationSelectionListener_1.default;
11
11
  const annotationModifiedListener_1 = __importDefault(require("./annotationModifiedListener"));
12
12
  exports.annotationModifiedListener = annotationModifiedListener_1.default;
13
+ const annotationRemovedListener_1 = __importDefault(require("./annotationRemovedListener"));
14
+ exports.annotationRemovedListener = annotationRemovedListener_1.default;
13
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eventListeners/annotations/index.ts"],"names":[],"mappings":";;;;;;AAAA,gGAAwE;AAKtE,sCALK,qCAA2B,CAKL;AAJ7B,gGAAwE;AAKtE,sCALK,qCAA2B,CAKL;AAJ7B,8FAAsE;AAKpE,qCALK,oCAA0B,CAKL"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eventListeners/annotations/index.ts"],"names":[],"mappings":";;;;;;AAAA,gGAAwE;AAMtE,sCANK,qCAA2B,CAML;AAL7B,gGAAwE;AAMtE,sCANK,qCAA2B,CAML;AAL7B,8FAAsE;AAMpE,qCANK,oCAA0B,CAML;AAL5B,4FAAoE;AAMlE,oCANK,mCAAyB,CAML"}
@@ -3,5 +3,5 @@ import touchEventListeners from './touch';
3
3
  import wheelEventListener from './wheel';
4
4
  import keyEventListener from './keyboard';
5
5
  import { segmentationDataModifiedEventListener, segmentationRepresentationModifiedEventListener, segmentationRepresentationRemovedEventListener, segmentationModifiedListener, imageChangeEventListener } from './segmentation';
6
- import { annotationCompletedListener, annotationSelectionListener, annotationModifiedListener } from './annotations';
7
- export { mouseEventListeners, touchEventListeners, wheelEventListener, keyEventListener, segmentationRepresentationModifiedEventListener, segmentationModifiedListener, segmentationRepresentationRemovedEventListener, segmentationDataModifiedEventListener, imageChangeEventListener, annotationCompletedListener, annotationSelectionListener, annotationModifiedListener, };
6
+ import { annotationCompletedListener, annotationSelectionListener, annotationModifiedListener, annotationRemovedListener } from './annotations';
7
+ export { mouseEventListeners, touchEventListeners, wheelEventListener, keyEventListener, segmentationRepresentationModifiedEventListener, segmentationModifiedListener, segmentationRepresentationRemovedEventListener, segmentationDataModifiedEventListener, imageChangeEventListener, annotationCompletedListener, annotationSelectionListener, annotationModifiedListener, annotationRemovedListener, };
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.annotationModifiedListener = exports.annotationSelectionListener = exports.annotationCompletedListener = exports.imageChangeEventListener = exports.segmentationDataModifiedEventListener = exports.segmentationRepresentationRemovedEventListener = exports.segmentationModifiedListener = exports.segmentationRepresentationModifiedEventListener = exports.keyEventListener = exports.wheelEventListener = exports.touchEventListeners = exports.mouseEventListeners = void 0;
6
+ exports.annotationRemovedListener = exports.annotationModifiedListener = exports.annotationSelectionListener = exports.annotationCompletedListener = exports.imageChangeEventListener = exports.segmentationDataModifiedEventListener = exports.segmentationRepresentationRemovedEventListener = exports.segmentationModifiedListener = exports.segmentationRepresentationModifiedEventListener = exports.keyEventListener = exports.wheelEventListener = exports.touchEventListeners = exports.mouseEventListeners = void 0;
7
7
  const mouse_1 = __importDefault(require("./mouse"));
8
8
  exports.mouseEventListeners = mouse_1.default;
9
9
  const touch_1 = __importDefault(require("./touch"));
@@ -22,4 +22,5 @@ const annotations_1 = require("./annotations");
22
22
  Object.defineProperty(exports, "annotationCompletedListener", { enumerable: true, get: function () { return annotations_1.annotationCompletedListener; } });
23
23
  Object.defineProperty(exports, "annotationSelectionListener", { enumerable: true, get: function () { return annotations_1.annotationSelectionListener; } });
24
24
  Object.defineProperty(exports, "annotationModifiedListener", { enumerable: true, get: function () { return annotations_1.annotationModifiedListener; } });
25
+ Object.defineProperty(exports, "annotationRemovedListener", { enumerable: true, get: function () { return annotations_1.annotationRemovedListener; } });
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/eventListeners/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA0C;AAmBxC,8BAnBK,eAAmB,CAmBL;AAlBrB,oDAA0C;AAmBxC,8BAnBK,eAAmB,CAmBL;AAlBrB,oDAAyC;AAmBvC,6BAnBK,eAAkB,CAmBL;AAlBpB,0DAA0C;AAmBxC,2BAnBK,kBAAgB,CAmBL;AAlBlB,iDAMwB;AAgBtB,sHArBA,oDAAqC,OAqBA;AAHrC,gIAjBA,8DAA+C,OAiBA;AAE/C,+HAlBA,6DAA8C,OAkBA;AAD9C,6GAhBA,2CAA4B,OAgBA;AAG5B,yGAlBA,uCAAwB,OAkBA;AAhB1B,+CAIuB;AAarB,4GAhBA,yCAA2B,OAgBA;AAC3B,4GAhBA,yCAA2B,OAgBA;AAC3B,2GAhBA,wCAA0B,OAgBA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/eventListeners/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA0C;AAoBxC,8BApBK,eAAmB,CAoBL;AAnBrB,oDAA0C;AAoBxC,8BApBK,eAAmB,CAoBL;AAnBrB,oDAAyC;AAoBvC,6BApBK,eAAkB,CAoBL;AAnBpB,0DAA0C;AAoBxC,2BApBK,kBAAgB,CAoBL;AAnBlB,iDAMwB;AAiBtB,sHAtBA,oDAAqC,OAsBA;AAHrC,gIAlBA,8DAA+C,OAkBA;AAE/C,+HAnBA,6DAA8C,OAmBA;AAD9C,6GAjBA,2CAA4B,OAiBA;AAG5B,yGAnBA,uCAAwB,OAmBA;AAjB1B,+CAKuB;AAarB,4GAjBA,yCAA2B,OAiBA;AAC3B,4GAjBA,yCAA2B,OAiBA;AAC3B,2GAjBA,wCAA0B,OAiBA;AAC1B,0GAjBA,uCAAyB,OAiBA"}
package/dist/cjs/init.js CHANGED
@@ -76,6 +76,7 @@ function _addCornerstoneToolsEventListeners() {
76
76
  core_1.eventTarget.addEventListener(enums_1.Events.ANNOTATION_MODIFIED, eventListeners_1.annotationModifiedListener);
77
77
  core_1.eventTarget.addEventListener(enums_1.Events.ANNOTATION_SELECTION_CHANGE, eventListeners_1.annotationSelectionListener);
78
78
  core_1.eventTarget.addEventListener(enums_1.Events.ANNOTATION_SELECTION_CHANGE, eventListeners_1.annotationSelectionListener);
79
+ core_1.eventTarget.addEventListener(enums_1.Events.ANNOTATION_REMOVED, eventListeners_1.annotationRemovedListener);
79
80
  core_1.eventTarget.addEventListener(enums_1.Events.SEGMENTATION_MODIFIED, eventListeners_1.segmentationModifiedListener);
80
81
  core_1.eventTarget.addEventListener(enums_1.Events.SEGMENTATION_DATA_MODIFIED, eventListeners_1.segmentationDataModifiedEventListener);
81
82
  core_1.eventTarget.addEventListener(enums_1.Events.SEGMENTATION_REPRESENTATION_MODIFIED, eventListeners_1.segmentationRepresentationModifiedEventListener);
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAyD;AACzD,kFAAoF;AACpF,wFAAsG;AACtG,mCAAiD;AACjD,mCAAkE;AAClE,yCAA2D;AAC3D,qDAS0B;AAC1B,yDAA4E;AAE5E,2EAA6D;AAE7D,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAQ/B,SAAgB,IAAI,CAAC,oBAAoB,GAAG,EAAE;IAC5C,IAAI,kBAAkB,EAAE;QACtB,OAAO;KACR;IAED,6BAA6B,EAAE,CAAC;IAChC,kCAAkC,EAAE,CAAC;IAErC,kBAAkB,GAAG,IAAI,CAAC;AAC5B,CAAC;AATD,oBASC;AAOD,SAAgB,OAAO;IACrB,gCAAgC,EAAE,CAAC;IACnC,qCAAqC,EAAE,CAAC;IAIxC,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAG3B,IAAA,kCAA0B,GAAE,CAAC;IAG7B,MAAM,iBAAiB,GAAG,IAAA,sCAAoB,GAAE,CAAC;IACjD,MAAM,wBAAwB,GAAG,IAAA,sDAAkC,GAAE,CAAC;IAEtE,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACzC,wBAAwB,CAAC,UAAU,EAAE,CAAC;IACtC,kBAAkB,GAAG,KAAK,CAAC;AAC7B,CAAC;AAlBD,0BAkBC;AAQD,SAAS,6BAA6B;IAEpC,gCAAgC,EAAE,CAAC;IAEnC,MAAM,mBAAmB,GAAG,YAAK,CAAC,MAAM,CAAC,eAAe,CAAC;IACzD,MAAM,oBAAoB,GAAG,YAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC;IAE3D,kBAAW,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,yBAAiB,CAAC,CAAC;IACrE,kBAAW,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,4BAAoB,CAAC,CAAC;IACzE,yDAAsC,CAAC,MAAM,EAAE,CAAC;AAClD,CAAC;AAOD,SAAS,gCAAgC;IACvC,MAAM,mBAAmB,GAAG,YAAK,CAAC,MAAM,CAAC,eAAe,CAAC;IACzD,MAAM,oBAAoB,GAAG,YAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC;IAE3D,kBAAW,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,yBAAiB,CAAC,CAAC;IACxE,kBAAW,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,4BAAoB,CAAC,CAAC;IAC5E,yDAAsC,CAAC,OAAO,EAAE,CAAC;AACnD,CAAC;AAMD,SAAS,kCAAkC;IAEzC,qCAAqC,EAAE,CAAC;IAKxC,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,oBAAoB,EACjC,4CAA2B,CAC5B,CAAC;IAEF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,mBAAmB,EAChC,2CAA0B,CAC3B,CAAC;IAEF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,2BAA2B,EACxC,4CAA2B,CAC5B,CAAC;IAEF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,2BAA2B,EACxC,4CAA2B,CAC5B,CAAC;IAEF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,kBAAkB,EAC/B,0CAAyB,CAC1B,CAAC;IAKF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,qBAAqB,EAClC,6CAA4B,CAC7B,CAAC;IAEF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,0BAA0B,EACvC,sDAAqC,CACtC,CAAC;IACF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,oCAAoC,EACjD,gEAA+C,CAChD,CAAC;IAEF,kBAAW,CAAC,gBAAgB,CAC1B,cAAY,CAAC,mCAAmC,EAChD,+DAA8C,CAC/C,CAAC;AACJ,CAAC;AAKD,SAAS,qCAAqC;IAI5C,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,oBAAoB,EACjC,4CAA2B,CAC5B,CAAC;IAEF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,mBAAmB,EAChC,2CAA0B,CAC3B,CAAC;IAEF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,2BAA2B,EACxC,4CAA2B,CAC5B,CAAC;IAEF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,2BAA2B,EACxC,4CAA2B,CAC5B,CAAC;IAMF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,qBAAqB,EAClC,6CAA4B,CAC7B,CAAC;IAEF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,0BAA0B,EACvC,sDAAqC,CACtC,CAAC;IACF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,oCAAoC,EACjD,gEAA+C,CAChD,CAAC;IAEF,kBAAW,CAAC,mBAAmB,CAC7B,cAAY,CAAC,mCAAmC,EAChD,+DAA8C,CAC/C,CAAC;AACJ,CAAC;AAED,kBAAe,IAAI,CAAC"}
@@ -1,8 +1,10 @@
1
1
  import type { PublicToolProps } from '../../types';
2
+ import type { AnnotationRenderContext } from '../../types';
2
3
  import PlanarFreehandROITool from './PlanarFreehandROITool';
3
4
  declare class PlanarFreehandContourSegmentationTool extends PlanarFreehandROITool {
4
5
  static toolName: any;
5
6
  constructor(toolProps: PublicToolProps);
6
7
  protected isContourSegmentationTool(): boolean;
8
+ protected renderAnnotationInstance(renderContext: AnnotationRenderContext): boolean;
7
9
  }
8
10
  export default PlanarFreehandContourSegmentationTool;
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const core_1 = require("@cornerstonejs/core");
7
+ const triggerSegmentationEvents_1 = require("../../stateManagement/segmentation/triggerSegmentationEvents");
7
8
  const PlanarFreehandROITool_1 = __importDefault(require("./PlanarFreehandROITool"));
8
9
  class PlanarFreehandContourSegmentationTool extends PlanarFreehandROITool_1.default {
9
10
  constructor(toolProps) {
@@ -18,6 +19,16 @@ class PlanarFreehandContourSegmentationTool extends PlanarFreehandROITool_1.defa
18
19
  isContourSegmentationTool() {
19
20
  return true;
20
21
  }
22
+ renderAnnotationInstance(renderContext) {
23
+ const annotation = renderContext.annotation;
24
+ const { invalidated } = annotation;
25
+ const renderResult = super.renderAnnotationInstance(renderContext);
26
+ if (invalidated) {
27
+ const { segmentationId } = annotation.data.segmentation;
28
+ (0, triggerSegmentationEvents_1.triggerSegmentationDataModified)(segmentationId);
29
+ }
30
+ return renderResult;
31
+ }
21
32
  }
22
33
  PlanarFreehandContourSegmentationTool.toolName =
23
34
  'PlanarFreehandContourSegmentationTool';
@@ -1 +1 @@
1
- {"version":3,"file":"PlanarFreehandContourSegmentationTool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/PlanarFreehandContourSegmentationTool.ts"],"names":[],"mappings":";;;;;AAAA,8CAAgD;AAEhD,oFAA4D;AAE5D,MAAM,qCAAsC,SAAQ,+BAAqB;IAGvE,YAAY,SAA0B;QACpC,MAAM,YAAY,GAAG,gBAAS,CAAC,SAAS,CACtC;YACE,aAAa,EAAE;gBACb,cAAc,EAAE,KAAK;gBAMrB,iBAAiB,EAAE,KAAK;aACzB;SACF,EACD,SAAS,CACV,CAAC;QAEF,KAAK,CAAC,YAAY,CAAC,CAAC;IACtB,CAAC;IAES,yBAAyB;QAEjC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,qCAAqC,CAAC,QAAQ;IAC5C,uCAAuC,CAAC;AAE1C,kBAAe,qCAAqC,CAAC"}
1
+ {"version":3,"file":"PlanarFreehandContourSegmentationTool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/PlanarFreehandContourSegmentationTool.ts"],"names":[],"mappings":";;;;;AAAA,8CAAgD;AAIhD,4GAA+G;AAC/G,oFAA4D;AAE5D,MAAM,qCAAsC,SAAQ,+BAAqB;IAGvE,YAAY,SAA0B;QACpC,MAAM,YAAY,GAAG,gBAAS,CAAC,SAAS,CACtC;YACE,aAAa,EAAE;gBACb,cAAc,EAAE,KAAK;gBAMrB,iBAAiB,EAAE,KAAK;aACzB;SACF,EACD,SAAS,CACV,CAAC;QAEF,KAAK,CAAC,YAAY,CAAC,CAAC;IACtB,CAAC;IAES,yBAAyB;QAEjC,OAAO,IAAI,CAAC;IACd,CAAC;IAES,wBAAwB,CAChC,aAAsC;QAEtC,MAAM,UAAU,GACd,aAAa,CAAC,UAAyD,CAAC;QAC1E,MAAM,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;QAGnC,MAAM,YAAY,GAAG,KAAK,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;QAEnE,IAAI,WAAW,EAAE;YACf,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;YAKxD,IAAA,2DAA+B,EAAC,cAAc,CAAC,CAAC;SACjD;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAED,qCAAqC,CAAC,QAAQ;IAC5C,uCAAuC,CAAC;AAE1C,kBAAe,qCAAqC,CAAC"}
@@ -11,7 +11,7 @@ export declare type ContourSegmentationAnnotationData = {
11
11
  originalPolyline?: Types.Point3[];
12
12
  };
13
13
  };
14
- handles: {
14
+ handles?: {
15
15
  interpolationSources?: Types.PointsManager<Types.Point3>[];
16
16
  };
17
17
  onInterpolationComplete?: (annotation: ContourSegmentationAnnotation) => unknown;
@@ -1,19 +1,12 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const core_1 = require("@cornerstonejs/core");
4
- const { isEqual } = core_1.utilities;
6
+ const getViewportsForAnnotation_1 = __importDefault(require("./getViewportsForAnnotation"));
5
7
  function getViewportForAnnotation(annotation) {
6
- const { metadata } = annotation;
7
- const enabledElement = (0, core_1.getEnabledElements)().find((enabledElement) => {
8
- if (enabledElement.FrameOfReferenceUID === metadata.FrameOfReferenceUID) {
9
- const viewport = enabledElement.viewport;
10
- const { viewPlaneNormal, viewUp } = viewport.getCamera();
11
- return (isEqual(viewPlaneNormal, metadata.viewPlaneNormal) &&
12
- (!metadata.viewUp || isEqual(viewUp, metadata.viewUp)));
13
- }
14
- return;
15
- });
16
- return enabledElement === null || enabledElement === void 0 ? void 0 : enabledElement.viewport;
8
+ const viewports = (0, getViewportsForAnnotation_1.default)(annotation);
9
+ return viewports.length ? viewports[0] : undefined;
17
10
  }
18
11
  exports.default = getViewportForAnnotation;
19
12
  //# sourceMappingURL=getViewportForAnnotation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getViewportForAnnotation.js","sourceRoot":"","sources":["../../../src/utilities/getViewportForAnnotation.ts"],"names":[],"mappings":";;AAAA,8CAA+E;AAG/E,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAO,CAAC;AAW5B,SAAwB,wBAAwB,CAAC,UAAsB;IACrE,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;IAChC,MAAM,cAAc,GAAG,IAAA,yBAAkB,GAAE,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE;QAClE,IAAI,cAAc,CAAC,mBAAmB,KAAK,QAAQ,CAAC,mBAAmB,EAAE;YACvE,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;YACzC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YACzD,OAAO,CACL,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC;gBAClD,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CACvD,CAAC;SACH;QACD,OAAO;IACT,CAAC,CAAC,CAAC;IACH,OAAO,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,QAAQ,CAAC;AAClC,CAAC;AAdD,2CAcC"}
1
+ {"version":3,"file":"getViewportForAnnotation.js","sourceRoot":"","sources":["../../../src/utilities/getViewportForAnnotation.ts"],"names":[],"mappings":";;;;;AACA,4FAAoE;AAWpE,SAAwB,wBAAwB,CAAC,UAAsB;IACrE,MAAM,SAAS,GAAG,IAAA,mCAAyB,EAAC,UAAU,CAAC,CAAC;IAExD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrD,CAAC;AAJD,2CAIC"}
@@ -0,0 +1,2 @@
1
+ import type { Annotation } from '../types';
2
+ export default function getViewportsForAnnotation(annotation: Annotation): (import("packages/core/dist/types/types").IVolumeViewport | import("packages/core/dist/types/types").IStackViewport)[];
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@cornerstonejs/core");
4
+ const { isEqual } = core_1.utilities;
5
+ function getViewportsForAnnotation(annotation) {
6
+ const { metadata } = annotation;
7
+ return (0, core_1.getEnabledElements)()
8
+ .filter((enabledElement) => {
9
+ if (enabledElement.FrameOfReferenceUID === metadata.FrameOfReferenceUID) {
10
+ const viewport = enabledElement.viewport;
11
+ const { viewPlaneNormal, viewUp } = viewport.getCamera();
12
+ return (isEqual(viewPlaneNormal, metadata.viewPlaneNormal) &&
13
+ (!metadata.viewUp || isEqual(viewUp, metadata.viewUp)));
14
+ }
15
+ return;
16
+ })
17
+ .map((enabledElement) => enabledElement.viewport);
18
+ }
19
+ exports.default = getViewportsForAnnotation;
20
+ //# sourceMappingURL=getViewportsForAnnotation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getViewportsForAnnotation.js","sourceRoot":"","sources":["../../../src/utilities/getViewportsForAnnotation.ts"],"names":[],"mappings":";;AAAA,8CAA+E;AAG/E,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAO,CAAC;AAW5B,SAAwB,yBAAyB,CAAC,UAAsB;IACtE,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;IAEhC,OAAO,IAAA,yBAAkB,GAAE;SACxB,MAAM,CAAC,CAAC,cAAc,EAAE,EAAE;QACzB,IAAI,cAAc,CAAC,mBAAmB,KAAK,QAAQ,CAAC,mBAAmB,EAAE;YACvE,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;YACzC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YACzD,OAAO,CACL,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC;gBAClD,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CACvD,CAAC;SACH;QACD,OAAO;IACT,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;AACtD,CAAC;AAhBD,4CAgBC"}
@@ -0,0 +1,9 @@
1
+ import * as contourSegUtils from '../../utilities/contourSegmentation';
2
+ import { contourSegmentationRemoved } from './contourSegmentation';
3
+ export default function annotationRemovedListener(evt) {
4
+ const annotation = evt.detail.annotation;
5
+ if (contourSegUtils.isContourSegmentationAnnotation(annotation)) {
6
+ contourSegmentationRemoved(evt);
7
+ }
8
+ }
9
+ //# sourceMappingURL=annotationRemovedListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotationRemovedListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/annotations/annotationRemovedListener.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAC/C,GAA+B;IAE/B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;IAEzC,IAAI,eAAe,CAAC,+BAA+B,CAAC,UAAU,CAAC,EAAE;QAC/D,0BAA0B,CAAC,GAAG,CAAC,CAAC;KACjC;AACH,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { getEnabledElement, utilities as csUtils, } from '@cornerstonejs/core';
2
- import { getViewportForAnnotation, math, triggerAnnotationRenderForViewportIds, } from '../../../utilities';
2
+ import getViewportsForAnnotation from '../../../utilities/getViewportsForAnnotation';
3
+ import { math, triggerAnnotationRenderForViewportIds, } from '../../../utilities';
3
4
  import { getViewportIdsWithToolToRender } from '../../../utilities/viewportFilters';
4
5
  import { addAnnotation, removeAnnotation, getAllAnnotations, getChildAnnotations, addChildAnnotation, clearParentAnnotation, } from '../../../stateManagement/annotation/annotationState';
5
6
  import * as contourUtils from '../../../utilities/contours';
@@ -14,7 +15,7 @@ export default async function contourSegmentationCompletedListener(evt) {
14
15
  if (!contourSegUtils.isContourSegmentationAnnotation(sourceAnnotation)) {
15
16
  return;
16
17
  }
17
- const viewport = getViewportForAnnotation(sourceAnnotation);
18
+ const viewport = getViewport(sourceAnnotation);
18
19
  const contourSegmentationAnnotations = getValidContourSegmentationAnnotations(sourceAnnotation);
19
20
  if (!contourSegmentationAnnotations.length) {
20
21
  return;
@@ -24,9 +25,6 @@ export default async function contourSegmentationCompletedListener(evt) {
24
25
  if (!targetAnnotationInfo) {
25
26
  return;
26
27
  }
27
- if (!isFreehandContourSegToolRegistered(viewport)) {
28
- return;
29
- }
30
28
  const { targetAnnotation, targetPolyline, isContourHole } = targetAnnotationInfo;
31
29
  if (isContourHole) {
32
30
  const { contourHoleProcessingEnabled = false } = evt.detail;
@@ -39,22 +37,25 @@ export default async function contourSegmentationCompletedListener(evt) {
39
37
  combinePolylines(viewport, targetAnnotation, targetPolyline, sourceAnnotation, sourcePolyline);
40
38
  }
41
39
  }
42
- function isFreehandContourSegToolRegistered(viewport) {
40
+ function isFreehandContourSegToolRegisteredForViewport(viewport, silent = false) {
43
41
  const { toolName } = PlanarFreehandContourSegmentationTool;
44
- if (!cstHasTool(PlanarFreehandContourSegmentationTool)) {
45
- console.warn(`${toolName} is not registered in cornerstone`);
46
- return false;
47
- }
48
42
  const toolGroup = ToolGroupManager.getToolGroupForViewport(viewport.id, viewport.renderingEngineId);
43
+ let errorMessage;
49
44
  if (!toolGroup.hasTool(toolName)) {
50
- console.warn(`Tool ${toolName} not added to ${toolGroup.id} toolGroup`);
51
- return false;
45
+ errorMessage = `Tool ${toolName} not added to ${toolGroup.id} toolGroup`;
46
+ }
47
+ else if (!toolGroup.getToolOptions(toolName)) {
48
+ errorMessage = `Tool ${toolName} must be in active/passive state`;
52
49
  }
53
- if (!toolGroup.getToolOptions(toolName)) {
54
- console.warn(`Tool ${toolName} must be in active/passive state`);
55
- return false;
50
+ if (errorMessage && !silent) {
51
+ console.warn(errorMessage);
56
52
  }
57
- return true;
53
+ return !errorMessage;
54
+ }
55
+ function getViewport(annotation) {
56
+ const viewports = getViewportsForAnnotation(annotation);
57
+ const viewportWithToolRegistered = viewports.find((viewport) => isFreehandContourSegToolRegisteredForViewport(viewport, true));
58
+ return viewportWithToolRegistered ?? viewports[0];
58
59
  }
59
60
  function convertContourPolylineToCanvasSpace(polyline, viewport) {
60
61
  const numPoints = polyline.length;
@@ -66,10 +67,6 @@ function convertContourPolylineToCanvasSpace(polyline, viewport) {
66
67
  }
67
68
  function getValidContourSegmentationAnnotations(sourceAnnotation) {
68
69
  const { annotationUID: sourceAnnotationUID } = sourceAnnotation;
69
- const { FrameOfReferenceUID } = sourceAnnotation.metadata;
70
- if (!FrameOfReferenceUID) {
71
- return [];
72
- }
73
70
  const allAnnotations = getAllAnnotations();
74
71
  return allAnnotations.filter((targetAnnotation) => targetAnnotation.annotationUID &&
75
72
  targetAnnotation.annotationUID !== sourceAnnotationUID &&
@@ -122,6 +119,13 @@ function getContourHolesData(viewport, annotation) {
122
119
  });
123
120
  }
124
121
  function combinePolylines(viewport, targetAnnotation, targetPolyline, sourceAnnotation, sourcePolyline) {
122
+ if (!cstHasTool(PlanarFreehandContourSegmentationTool)) {
123
+ console.warn(`${PlanarFreehandContourSegmentationTool.toolName} is not registered in cornerstone`);
124
+ return;
125
+ }
126
+ if (!isFreehandContourSegToolRegisteredForViewport(viewport)) {
127
+ return;
128
+ }
125
129
  const sourceStartPoint = sourcePolyline[0];
126
130
  const mergePolylines = math.polyline.containsPoint(targetPolyline, sourceStartPoint);
127
131
  const contourHolesData = getContourHolesData(viewport, targetAnnotation);
@@ -198,6 +202,7 @@ function combinePolylines(viewport, targetAnnotation, targetPolyline, sourceAnno
198
202
  targetWindingDirection: ContourWindingDirection.Clockwise,
199
203
  }, viewport);
200
204
  addAnnotation(newAnnotation, element);
205
+ contourSegUtils.addContourSegmentationAnnotation(newAnnotation);
201
206
  reassignedContourHolesMap
202
207
  .get(polyline)
203
208
  ?.forEach((holeData) => addChildAnnotation(newAnnotation, holeData.annotation));
@@ -1 +1 @@
1
- {"version":3,"file":"contourSegmentationCompleted.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,SAAS,IAAI,OAAO,GAErB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,wBAAwB,EACxB,IAAI,EACJ,qCAAqC,GACtC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,qDAAqD,CAAC;AAK7D,OAAO,KAAK,YAAY,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,eAAe,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,qCAAqC,EAAE,MAAM,gBAAgB,CAAC;AAEvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAE3E,MAAM,4BAA4B,GAAG,uCAAuC,CAAC;AAE7E,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,oCAAoC,CAChE,GAAiC;IAEjC,MAAM,gBAAgB,GAAG,GAAG,CAAC,MAAM;SAChC,UAA2C,CAAC;IAE/C,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC,gBAAgB,CAAC,EAAE;QACtE,OAAO;KACR;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IAC5D,MAAM,8BAA8B,GAClC,sCAAsC,CAAC,gBAAgB,CAAC,CAAC;IAE3D,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE;QAC1C,OAAO;KACR;IAED,MAAM,cAAc,GAAG,mCAAmC,CACxD,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EACtC,QAAQ,CACT,CAAC;IAEF,MAAM,oBAAoB,GAAG,uBAAuB,CAClD,QAAQ,EACR,cAAc,EACd,8BAA8B,CAC/B,CAAC;IAEF,IAAI,CAAC,oBAAoB,EAAE;QACzB,OAAO;KACR;IAED,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,EAAE;QACjD,OAAO;KACR;IAED,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,GACvD,oBAAoB,CAAC;IAEvB,IAAI,aAAa,EAAE;QACjB,MAAM,EAAE,4BAA4B,GAAG,KAAK,EAAE,GAC5C,GAAG,CAAC,MAA+C,CAAC;QAGtD,IAAI,CAAC,4BAA4B,EAAE;YACjC,OAAO;SACR;QAED,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;KAClE;SAAM;QACL,gBAAgB,CACd,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,cAAc,CACf,CAAC;KACH;AACH,CAAC;AAED,SAAS,kCAAkC,CAAC,QAAyB;IACnE,MAAM,EAAE,QAAQ,EAAE,GAAG,qCAAqC,CAAC;IAE3D,IAAI,CAAC,UAAU,CAAC,qCAAqC,CAAC,EAAE;QACtD,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,mCAAmC,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC;KACd;IAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,uBAAuB,CACxD,QAAQ,CAAC,EAAE,EACX,QAAQ,CAAC,iBAAiB,CAC3B,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChC,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,iBAAiB,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;KACd;IAED,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;QACvC,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,kCAAkC,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mCAAmC,CAC1C,QAAwB,EACxB,QAAyB;IAEzB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC;IAClC,MAAM,iBAAiB,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAE/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;QAClC,iBAAiB,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5D;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,SAAS,sCAAsC,CAC7C,gBAA+C;IAE/C,MAAM,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,CAAC;IAChE,MAAM,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,CAAC,QAAQ,CAAC;IAE1D,IAAI,CAAC,mBAAmB,EAAE;QACxB,OAAO,EAAE,CAAC;KACX;IAGD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,OAAO,cAAc,CAAC,MAAM,CAC1B,CAAC,gBAAgB,EAAE,EAAE,CACnB,gBAAgB,CAAC,aAAa;QAC9B,gBAAgB,CAAC,aAAa,KAAK,mBAAmB;QACtD,eAAe,CAAC,+BAA+B,CAAC,gBAAgB,CAAC;QACjE,eAAe,CAAC,cAAc,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;QAClE,YAAY,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CACpC,CAAC;AACvC,CAAC;AAED,SAAS,uBAAuB,CAC9B,QAAyB,EACzB,cAA8B,EAC9B,8BAA+D;IAM/D,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,8BAA8B,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC9D,MAAM,gBAAgB,GAAG,8BAA8B,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAG,mCAAmC,CACxD,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EACtC,QAAQ,CACT,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACtE,MAAM,qBAAqB,GACzB,aAAa;YACb,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAClE,MAAM,aAAa,GACjB,aAAa;YACb,CAAC,qBAAqB;YACtB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAE/D,IAAI,qBAAqB,IAAI,aAAa,EAAE;YAC1C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;SAC5D;KACF;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAyB,EACzB,gBAA+C,EAC/C,cAA6C;IAE7C,MAAM,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,GAChD,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;IAChC,MAAM,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,GAC9C,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;IAK9B,IAAI,sBAAsB,KAAK,oBAAoB,EAAE;QACnD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC/C,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,sBAAsB,GAAG,CAAC,CAAC,CAAC;KAC5E;IAED,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IAErD,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAC7B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;IAG3C,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;QAC/B,4BAA4B;QAC5B,gBAAgB,CAAC,QAAQ,CAAC,QAAQ;QAClC,cAAc,CAAC,QAAQ,CAAC,QAAQ;KACjC,CAAC,CAAC;IAEH,KAAK,MAAM,QAAQ,IAAI,gBAAgB,CAAC,MAAM,EAAE,EAAE;QAChD,MAAM,mBAAmB,GAAG,8BAA8B,CACxD,OAAO,EACP,QAAQ,CACT,CAAC;QACF,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;KAC7E;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAyB,EACzB,UAA6B;IAE7B,OAAO,mBAAmB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;QAC5D,MAAM,QAAQ,GAAG,mCAAmC,CAClD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EACpC,QAAQ,CACT,CAAC;QAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CACvB,QAAyB,EACzB,gBAA+C,EAC/C,cAA8B,EAC9B,gBAA+C,EAC/C,cAA8B;IAE9B,MAAM,gBAAgB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAChD,cAAc,EACd,gBAAgB,CACjB,CAAC;IAEF,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IACzE,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5D,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAE,CAAC;IAC5C,MAAM,oBAAoB,GAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,EAAE;QACxD,IAAI,KAAK,GAAG,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAE1D,IAAI,CAAC,KAAK,EAAE;YACV,KAAK,GAAG,EAAE,CAAC;YACX,yBAAyB,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;SACtD;QAED,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrB,yBAAyB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,EAAE,CAAC;IAExB,IAAI,cAAc,EAAE;QAClB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CACjD,cAAc,EACd,cAAc,CACf,CAAC;QAEF,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAIlC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAChE,oBAAoB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAC/C,CAAC;KACH;SAAM;QACL,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CACzD,cAAc,EACd,cAAc,CACf,CAAC;QAEF,mBAAmB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;YAC1C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE/B,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAChE,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAC/C,WAAW,EACX,QAAQ,CAAC,QAAQ,CAClB,CAAC;gBAEF,IAAI,YAAY,EAAE;oBAChB,oBAAoB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAC5C,yBAAyB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;iBAC5C;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;IAID,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CACpD,CAAC,qBAAqB,EAAE,EAAE,CACxB,qBAAqB,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE,CAChD,qBAAqB,CAAC,eAAe,CAAC,UAAU,CAAC,CAClD,CACJ,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAC7B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC;IAC5C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACjD,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAEjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC5C,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,aAAa,GAAsB;YACvC,QAAQ,EAAE;gBACR,GAAG,QAAQ;gBACX,QAAQ,EAAE,4BAA4B;aACvC;YACD,IAAI,EAAE;gBACJ,WAAW,EAAE,EAAE;gBACf,OAAO,EAAE;oBACP,MAAM,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC;oBAC9B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;iBAC9C;gBACD,OAAO,EAAE;oBACP,QAAQ,EAAE,EAAE;oBACZ,MAAM,EAAE,IAAI;iBACb;gBACD,YAAY,EAAE;oBACZ,GAAG,YAAY;iBAChB;aACF;YACD,aAAa,EAAE,OAAO,CAAC,MAAM,EAAY;YACzC,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,SAAS;SACrB,CAAC;QAIF,YAAY,CAAC,qBAAqB,CAChC,aAAa,EACb;YACE,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,IAAI;YACZ,sBAAsB,EAAE,uBAAuB,CAAC,SAAS;SAC1D,EACD,QAAQ,CACT,CAAC;QAEF,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAEtC,yBAAyB;aACtB,GAAG,CAAC,QAAQ,CAAC;YACd,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrB,kBAAkB,CAAC,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,CACvD,CAAC;KACL;IAED,eAAe,CAAC,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,eAAe,CAAC,cAAc,EAAE,gBAAgB,EAAE,gBAAgB;IACzE,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IACpC,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAC7B,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;IAE3C,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;QAChC,4BAA4B;QAC5B,gBAAgB,CAAC,QAAQ,CAAC,QAAQ;QAClC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ;KACnC,CAAC,CAAC;IAEH,KAAK,MAAM,QAAQ,IAAI,iBAAiB,CAAC,MAAM,EAAE,EAAE;QACjD,MAAM,mBAAmB,GAAG,8BAA8B,CACxD,OAAO,EACP,QAAQ,CACT,CAAC;QACF,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;KAC7E;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;AACzE,CAAC"}
1
+ {"version":3,"file":"contourSegmentationCompleted.js","sourceRoot":"","sources":["../../../../../src/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.ts"],"names":[],"mappings":"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"}