@ohif/app 3.13.0-beta.6 → 3.13.0-beta.61

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 (72) hide show
  1. package/dist/{1459.bundle.075e535250e3d4779923.js → 1459.bundle.4ad39e2c21e35cb2be1c.js} +5 -6
  2. package/dist/{1608.bundle.0687c661f1c9edfb3b8a.js → 1608.bundle.26306ea38618db59eff7.js} +12 -12
  3. package/dist/{1927.bundle.3050588e95f43cf57cdd.js → 1927.bundle.be67b3aafe238ca9f191.js} +27 -38
  4. package/dist/{1933.bundle.317997210b6a51079753.js → 1933.bundle.82822511235016082da4.js} +32 -27
  5. package/dist/{2018.bundle.31d14d6f9fb764b51bda.js → 2018.bundle.6f06faf8d0a5c91f5e7c.js} +18 -19
  6. package/dist/{6409.bundle.b36048896cb11c8571fb.js → 2075.bundle.23265b8e7597c398db4f.js} +327 -256
  7. package/dist/{2108.bundle.e84aa8d858d8c4f2413e.js → 2108.bundle.aea8d3b39486dd5ab39e.js} +569 -558
  8. package/dist/{213.bundle.363f9a3eb6c0d33e3921.js → 213.bundle.d8a8ffeec432cd8363c0.js} +3 -5
  9. package/dist/{2424.bundle.aa7f4df6cba71b817c87.js → 2424.bundle.c602ad458e7902f7f555.js} +3 -5
  10. package/dist/{2516.bundle.1ea0988d309a757bb6da.js → 2516.bundle.f62228e9a800de8d4b31.js} +6 -6
  11. package/dist/{2701.bundle.12bd01a80a9f8ea4cd94.js → 2701.bundle.6873805ddfdccc7a8b1e.js} +10 -10
  12. package/dist/{9195.bundle.adf6a548b6f7ae279c09.js → 2851.bundle.123d7f6fa1186ac1308a.js} +384 -169
  13. package/dist/{1730.bundle.1d137db2556d538263fb.js → 3138.bundle.bc81953147e0c5f3b23f.js} +16 -310
  14. package/dist/{3461.bundle.7024d5e66d12b4069031.js → 3461.bundle.f65494e79c37a14bc206.js} +131 -107
  15. package/dist/{147.bundle.37d627289453cb6c3937.js → 3754.bundle.fd4b67c2a29c4bc4a840.js} +486 -49
  16. package/dist/{4202.bundle.5a0f8e4004c5d8a68548.js → 4202.bundle.4fcd0de412907efd5b53.js} +6 -6
  17. package/dist/{4019.bundle.83a604779f7da0101ced.js → 4287.bundle.b7840e7b94cbbc102236.js} +348 -237
  18. package/dist/{5462.bundle.21beddaca145b7465c72.js → 4406.bundle.573d234b4641d23cf8db.js} +1083 -1308
  19. package/dist/{1403.bundle.40baf30d503370ce52c9.js → 4507.bundle.75bf28fe32a927130dec.js} +10 -305
  20. package/dist/{6347.bundle.784c48912700f281de1d.js → 4579.bundle.0a6b2f49a7e136a79e37.js} +561 -649
  21. package/dist/{4819.bundle.0c37918802ef7805586f.js → 4819.bundle.23965159795eaeb1ca1b.js} +39 -39
  22. package/dist/{4775.bundle.5d6203a2991902544266.js → 5015.bundle.54d7fda0f8e819aaa578.js} +29 -333
  23. package/dist/{5028.bundle.2cd4d2253b47845e6634.js → 5028.bundle.b806370179a0f878527b.js} +11 -13
  24. package/dist/{5261.bundle.6e1a017f8f1027557f5b.js → 5261.bundle.2655560097e9250eac44.js} +412 -345
  25. package/dist/{5457.bundle.15d4adb3ca43c45b044d.js → 5457.bundle.d1e9be8eab20c1620624.js} +16 -23
  26. package/dist/{5485.bundle.b9764a7846d57ee5710d.js → 5485.bundle.7de6ed76c9bf762fd395.js} +20 -32
  27. package/dist/{5491.bundle.2e01dd7ad29e4cc01bc1.js → 5491.bundle.4866d2ecb20dd089e071.js} +54 -51
  28. package/dist/{5802.bundle.3bf5e6b3ab330a594a47.js → 5802.bundle.26f84db0ff8851532c36.js} +79 -20
  29. package/dist/5802.css +1 -1
  30. package/dist/{5830.bundle.b073c265c4fcea1afff3.js → 5830.bundle.791019deddd536980a11.js} +3 -3
  31. package/dist/{5858.bundle.ff6b340cf7457db76a1a.js → 5858.bundle.466e58128de344ab53f3.js} +90 -86
  32. package/dist/{6027.bundle.55f4bf16015381255f33.js → 6027.bundle.11c8ba4581dca8a82b91.js} +3 -5
  33. package/dist/{6354.bundle.c387737dc09c9cab4ff2.js → 6354.bundle.929febcf6d326e582e00.js} +151 -140
  34. package/dist/{6376.bundle.9cb74d7bc08476e2f1a7.js → 6376.bundle.738c873196491232acb6.js} +6 -6
  35. package/dist/{2842.bundle.860b9f10fcdd9656947a.js → 6386.bundle.5d82d1f41d1c37a0358d.js} +904 -2298
  36. package/dist/6939.bundle.41fbdef87597b5172ec6.js +3 -3
  37. package/dist/{7159.bundle.a5991a5d4f0dd8f1c95f.js → 7159.bundle.fb9df255868960f69765.js} +7 -5
  38. package/dist/{3081.bundle.f0df1c7d93ef4be29102.js → 7166.bundle.6334b7a549c8d1f58bfd.js} +825 -410
  39. package/dist/{7190.bundle.e8f0193e0e06472f795c.js → 7190.bundle.3738008038e70525764f.js} +1129 -821
  40. package/dist/{732.bundle.6978ac30a1e36abf06db.js → 732.bundle.ea6f9d8504e37e01a208.js} +5 -13
  41. package/dist/{7431.bundle.b01791d10e6cf9f503b0.js → 7431.bundle.5e14641f2c71e852abe7.js} +28 -28
  42. package/dist/{4410.bundle.c5224cd7d6238a7d4660.js → 7537.bundle.1726a7f7a4c378296085.js} +5216 -2238
  43. package/dist/{7639.bundle.9057c381d5f455997d60.js → 7639.bundle.d7571b9b1bdd3c712fa7.js} +3 -5
  44. package/dist/7758.bundle.c8d106364298e7d288f0.js +3 -3
  45. package/dist/{8094.bundle.5c44190a325ac23e3e5c.js → 8094.bundle.148a66619607e37cbf19.js} +3 -4
  46. package/dist/{8305.bundle.2a215d860aa3bb1984f6.js → 8305.bundle.7ff9f067007c6fc02eff.js} +71 -66
  47. package/dist/{6163.bundle.18484c031c76e3835a71.js → 8499.bundle.b0d3892bff3f3163f747.js} +7 -302
  48. package/dist/8499.css +2 -0
  49. package/dist/{85.bundle.173a5ab4b47890e2f013.js → 85.bundle.203f56fd4f235891345a.js} +3 -5
  50. package/dist/{8558.bundle.52d7001a86845c8a91b8.js → 8558.bundle.ae26725ef258ef186524.js} +15 -309
  51. package/dist/{8583.bundle.e899badfa6f91f22b2f3.js → 8583.bundle.f56d7ead5b46d8d6f294.js} +24 -27
  52. package/dist/{997.bundle.822b33e561263084e18c.js → 9039.bundle.7afa93b103c3b26d4855.js} +3965 -2984
  53. package/dist/{7412.bundle.fab1742191b7fe937330.js → 9205.bundle.315c3b56464a7590235a.js} +6071 -3305
  54. package/dist/{3584.bundle.8cc0750425513433e9cc.js → 9567.bundle.be350438bed4e656f278.js} +3422 -2880
  55. package/dist/{9845.bundle.255e7c7f7a88193b4e47.js → 9845.bundle.8c450e8d65a78a5afcd3.js} +10 -10
  56. package/dist/{9862.bundle.3a8958a82c572015d25d.js → 9862.bundle.a5f7925840868fa4ecdb.js} +8 -6
  57. package/dist/{9927.bundle.0e4c7a7682b7acad3060.js → 9927.bundle.ceb2c44737524314f168.js} +4 -6
  58. package/dist/app-config.js +12 -0
  59. package/dist/{app.bundle.62d84a3df6ec149a44a6.js → app.bundle.97f04c5d27e5017d698b.js} +100613 -97645
  60. package/dist/app.bundle.css +3 -3
  61. package/dist/{polySeg.bundle.a5aa9130b4191253c410.js → compute.bundle.a41ec0ba4f935200ab93.js} +8 -20
  62. package/dist/{histogram-worker.bundle.d4e40a8018d2698b072e.js → histogram-worker.bundle.a2a50c4674d99c619ca7.js} +11 -23
  63. package/dist/index.html +1 -1
  64. package/dist/{interpolation.bundle.c70cb95d164dc494e6dc.js → interpolation.bundle.2559b710030605fc2bc6.js} +14 -26
  65. package/dist/{compute.bundle.64280c7af19ff567465f.js → polySeg.bundle.be57af5b834dd833a418.js} +10 -22
  66. package/dist/sw.js +1 -1
  67. package/package.json +23 -22
  68. package/dist/3343.bundle.d7578ce8f75d158c0bab.js +0 -297
  69. /package/dist/{1730.css → 3138.css} +0 -0
  70. /package/dist/{147.css → 3754.css} +0 -0
  71. /package/dist/{3343.css → 4972.css} +0 -0
  72. /package/dist/{6163.css → 7829.css} +0 -0
@@ -1,7 +1,7 @@
1
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[6347],{
1
+ (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[4579],{
2
2
 
3
- /***/ 22031:
4
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3
+ /***/ 64579
4
+ (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
5
5
 
6
6
  "use strict";
7
7
 
@@ -12,11 +12,10 @@ __webpack_require__.d(__webpack_exports__, {
12
12
  X6: () => (/* reexport */ adaptersPMAP),
13
13
  f_: () => (/* reexport */ adaptersRT),
14
14
  ql: () => (/* reexport */ adaptersSEG),
15
- QX: () => (/* reexport */ adaptersSR),
16
- _$: () => (/* reexport */ helpers_namespaceObject)
15
+ QX: () => (/* reexport */ adaptersSR)
17
16
  });
18
17
 
19
- // UNUSED EXPORTS: utilities
18
+ // UNUSED EXPORTS: helpers, utilities
20
19
 
21
20
  // NAMESPACE OBJECT: ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/Cornerstone/Segmentation.js
22
21
  var Segmentation_namespaceObject = {};
@@ -63,13 +62,6 @@ __webpack_require__.d(enums_namespaceObject, {
63
62
  s: () => (Events)
64
63
  });
65
64
 
66
- // NAMESPACE OBJECT: ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/helpers/index.js
67
- var helpers_namespaceObject = {};
68
- __webpack_require__.r(helpers_namespaceObject);
69
- __webpack_require__.d(helpers_namespaceObject, {
70
- vk: () => (downloadDICOMData)
71
- });
72
-
73
65
  // EXTERNAL MODULE: ../../../node_modules/dcmjs/build/dcmjs.es.js
74
66
  var dcmjs_es = __webpack_require__(5842);
75
67
  ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/helpers/toArray.js
@@ -342,7 +334,7 @@ class MeasurementReport {
342
334
  const toolClass = hooks.getToolClass ? hooks.getToolClass(measurementGroup, dataset, registeredToolClasses) : registeredToolClasses.find(tc => tc.isValidCornerstoneTrackingIdentifier(TrackingIdentifierValue));
343
335
  if (toolClass) {
344
336
  const measurement = toolClass.getMeasurementData(measurementGroup);
345
- console.log(`=== ${toolClass.toolType} ===`);
337
+ console.log("=== ".concat(toolClass.toolType, " ==="));
346
338
  console.log(measurement);
347
339
  measurementData[toolClass.toolType].push(measurement);
348
340
  }
@@ -364,6 +356,8 @@ MeasurementReport.CORNERSTONE_TOOL_CLASSES_BY_TOOL_TYPE = {};
364
356
 
365
357
 
366
358
 
359
+ // EXTERNAL MODULE: ../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js
360
+ var defineProperty = __webpack_require__(36111);
367
361
  ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/Cornerstone/cornerstone4Tag.js
368
362
  var CORNERSTONE_4_TAG = 'cornerstoneTools@^4.0.0';
369
363
 
@@ -374,6 +368,9 @@ var CORNERSTONE_4_TAG = 'cornerstoneTools@^4.0.0';
374
368
 
375
369
 
376
370
 
371
+
372
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
373
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
377
374
  const {
378
375
  Length: TID300Length
379
376
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -386,8 +383,7 @@ class Length {
386
383
  NUMGroup,
387
384
  SCOORDGroup
388
385
  } = MeasurementReport.getSetupMeasurementData(MeasurementGroup);
389
- const state = {
390
- ...defaultState,
386
+ const state = _objectSpread(_objectSpread({}, defaultState), {}, {
391
387
  length: NUMGroup.MeasuredValueSequence.NumericValue,
392
388
  toolType: Length.toolType,
393
389
  handles: {
@@ -401,7 +397,7 @@ class Length {
401
397
  hasBoundingBox: true
402
398
  }
403
399
  }
404
- };
400
+ });
405
401
  [state.handles.start.x, state.handles.start.y, state.handles.end.x, state.handles.end.y] = SCOORDGroup.GraphicData;
406
402
  return state;
407
403
  }
@@ -447,6 +443,9 @@ MeasurementReport.registerTool(Length);
447
443
 
448
444
 
449
445
 
446
+
447
+ function FreehandRoi_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
448
+ function FreehandRoi_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? FreehandRoi_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : FreehandRoi_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
450
449
  const {
451
450
  Polyline: TID300Polyline
452
451
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -457,8 +456,7 @@ class FreehandRoi {
457
456
  SCOORDGroup,
458
457
  NUMGroup
459
458
  } = MeasurementReport.getSetupMeasurementData(MeasurementGroup);
460
- const state = {
461
- ...defaultState,
459
+ const state = FreehandRoi_objectSpread(FreehandRoi_objectSpread({}, defaultState), {}, {
462
460
  toolType: FreehandRoi.toolType,
463
461
  handles: {
464
462
  points: [],
@@ -476,7 +474,7 @@ class FreehandRoi {
476
474
  },
477
475
  color: undefined,
478
476
  invalidated: true
479
- };
477
+ });
480
478
  const {
481
479
  GraphicData
482
480
  } = SCOORDGroup;
@@ -691,6 +689,9 @@ MeasurementReport.registerTool(Bidirectional);
691
689
 
692
690
 
693
691
 
692
+
693
+ function EllipticalRoi_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
694
+ function EllipticalRoi_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? EllipticalRoi_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : EllipticalRoi_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
694
695
  const {
695
696
  Ellipse: TID300Ellipse
696
697
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -741,8 +742,7 @@ class EllipticalRoi {
741
742
  x: majorAxis[1].x - minorAxisDirection.x * halfMinorAxisLength,
742
743
  y: majorAxis[1].y - minorAxisDirection.y * halfMinorAxisLength
743
744
  };
744
- const state = {
745
- ...defaultState,
745
+ const state = EllipticalRoi_objectSpread(EllipticalRoi_objectSpread({}, defaultState), {}, {
746
746
  toolType: EllipticalRoi.toolType,
747
747
  active: false,
748
748
  cachedStats: {
@@ -772,7 +772,7 @@ class EllipticalRoi {
772
772
  },
773
773
  invalidated: true,
774
774
  visible: true
775
- };
775
+ });
776
776
  return state;
777
777
  }
778
778
  static getTID300RepresentationArguments(tool) {
@@ -869,6 +869,9 @@ MeasurementReport.registerTool(EllipticalRoi);
869
869
 
870
870
 
871
871
 
872
+
873
+ function CircleRoi_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
874
+ function CircleRoi_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? CircleRoi_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : CircleRoi_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
872
875
  const {
873
876
  Circle: TID300Circle
874
877
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -892,8 +895,7 @@ class CircleRoi {
892
895
  x: GraphicData[2],
893
896
  y: GraphicData[3]
894
897
  };
895
- const state = {
896
- ...defaultState,
898
+ const state = CircleRoi_objectSpread(CircleRoi_objectSpread({}, defaultState), {}, {
897
899
  toolType: CircleRoi.toolType,
898
900
  active: false,
899
901
  cachedStats: {
@@ -903,17 +905,15 @@ class CircleRoi {
903
905
  perimeter: 0
904
906
  },
905
907
  handles: {
906
- end: {
907
- ...end,
908
+ end: CircleRoi_objectSpread(CircleRoi_objectSpread({}, end), {}, {
908
909
  highlight: false,
909
910
  active: false
910
- },
911
+ }),
911
912
  initialRotation: 0,
912
- start: {
913
- ...center,
913
+ start: CircleRoi_objectSpread(CircleRoi_objectSpread({}, center), {}, {
914
914
  highlight: false,
915
915
  active: false
916
- },
916
+ }),
917
917
  textBox: {
918
918
  hasMoved: false,
919
919
  movesIndependently: false,
@@ -924,7 +924,7 @@ class CircleRoi {
924
924
  },
925
925
  invalidated: true,
926
926
  visible: true
927
- };
927
+ });
928
928
  return state;
929
929
  }
930
930
 
@@ -987,6 +987,9 @@ MeasurementReport.registerTool(CircleRoi);
987
987
 
988
988
 
989
989
 
990
+
991
+ function ArrowAnnotate_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
992
+ function ArrowAnnotate_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ArrowAnnotate_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ArrowAnnotate_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
990
993
  const {
991
994
  Point: TID300Point
992
995
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -1002,8 +1005,7 @@ class ArrowAnnotate {
1002
1005
  const {
1003
1006
  GraphicData
1004
1007
  } = SCOORDGroup;
1005
- const state = {
1006
- ...defaultState,
1008
+ const state = ArrowAnnotate_objectSpread(ArrowAnnotate_objectSpread({}, defaultState), {}, {
1007
1009
  toolType: ArrowAnnotate.toolType,
1008
1010
  active: false,
1009
1011
  handles: {
@@ -1031,7 +1033,7 @@ class ArrowAnnotate {
1031
1033
  },
1032
1034
  invalidated: true,
1033
1035
  visible: true
1034
- };
1036
+ });
1035
1037
  return state;
1036
1038
  }
1037
1039
  static getTID300RepresentationArguments(tool) {
@@ -1044,7 +1046,7 @@ class ArrowAnnotate {
1044
1046
  } = tool;
1045
1047
  const TID300RepresentationArguments = {
1046
1048
  points,
1047
- trackingIdentifierTextValue: `cornerstoneTools@^4.0.0:ArrowAnnotate`,
1049
+ trackingIdentifierTextValue: "cornerstoneTools@^4.0.0:ArrowAnnotate",
1048
1050
  findingSites: findingSites || []
1049
1051
  };
1050
1052
 
@@ -1082,6 +1084,9 @@ MeasurementReport.registerTool(ArrowAnnotate);
1082
1084
 
1083
1085
 
1084
1086
 
1087
+
1088
+ function CobbAngle_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1089
+ function CobbAngle_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? CobbAngle_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : CobbAngle_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1085
1090
  const {
1086
1091
  CobbAngle: TID300CobbAngle
1087
1092
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -1094,8 +1099,7 @@ class CobbAngle {
1094
1099
  NUMGroup,
1095
1100
  SCOORDGroup
1096
1101
  } = MeasurementReport.getSetupMeasurementData(MeasurementGroup);
1097
- const state = {
1098
- ...defaultState,
1102
+ const state = CobbAngle_objectSpread(CobbAngle_objectSpread({}, defaultState), {}, {
1099
1103
  rAngle: NUMGroup.MeasuredValueSequence.NumericValue,
1100
1104
  toolType: CobbAngle.toolType,
1101
1105
  handles: {
@@ -1117,7 +1121,7 @@ class CobbAngle {
1117
1121
  hasBoundingBox: true
1118
1122
  }
1119
1123
  }
1120
- };
1124
+ });
1121
1125
  [state.handles.start.x, state.handles.start.y, state.handles.end.x, state.handles.end.y, state.handles.start2.x, state.handles.start2.y, state.handles.end2.x, state.handles.end2.y] = SCOORDGroup.GraphicData;
1122
1126
  return state;
1123
1127
  }
@@ -1167,6 +1171,9 @@ MeasurementReport.registerTool(CobbAngle);
1167
1171
 
1168
1172
 
1169
1173
 
1174
+
1175
+ function Angle_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1176
+ function Angle_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Angle_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Angle_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1170
1177
  const {
1171
1178
  Angle: TID300Angle
1172
1179
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -1181,8 +1188,7 @@ class Angle {
1181
1188
  NUMGroup,
1182
1189
  SCOORDGroup
1183
1190
  } = MeasurementReport.getSetupMeasurementData(MeasurementGroup);
1184
- const state = {
1185
- ...defaultState,
1191
+ const state = Angle_objectSpread(Angle_objectSpread({}, defaultState), {}, {
1186
1192
  rAngle: NUMGroup.MeasuredValueSequence.NumericValue,
1187
1193
  toolType: Angle.toolType,
1188
1194
  handles: {
@@ -1197,7 +1203,7 @@ class Angle {
1197
1203
  hasBoundingBox: true
1198
1204
  }
1199
1205
  }
1200
- };
1206
+ });
1201
1207
  [state.handles.start.x, state.handles.start.y, state.handles.middle.x, state.handles.middle.y, state.handles.middle.x, state.handles.middle.y, state.handles.end.x, state.handles.end.y] = SCOORDGroup.GraphicData;
1202
1208
  return state;
1203
1209
  }
@@ -1247,6 +1253,9 @@ MeasurementReport.registerTool(Angle);
1247
1253
 
1248
1254
 
1249
1255
 
1256
+
1257
+ function RectangleRoi_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1258
+ function RectangleRoi_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? RectangleRoi_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : RectangleRoi_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1250
1259
  const {
1251
1260
  Polyline: RectangleRoi_TID300Polyline
1252
1261
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -1257,8 +1266,7 @@ class RectangleRoi {
1257
1266
  SCOORDGroup,
1258
1267
  NUMGroup
1259
1268
  } = MeasurementReport.getSetupMeasurementData(MeasurementGroup);
1260
- const state = {
1261
- ...defaultState,
1269
+ const state = RectangleRoi_objectSpread(RectangleRoi_objectSpread({}, defaultState), {}, {
1262
1270
  toolType: RectangleRoi.toolType,
1263
1271
  handles: {
1264
1272
  start: {},
@@ -1278,7 +1286,7 @@ class RectangleRoi {
1278
1286
  },
1279
1287
  color: undefined,
1280
1288
  invalidated: true
1281
- };
1289
+ });
1282
1290
  const intermediate = {};
1283
1291
  [state.handles.start.x, state.handles.start.y, intermediate.x, intermediate.y, state.handles.end.x, state.handles.end.y] = SCOORDGroup.GraphicData;
1284
1292
  return state;
@@ -1365,7 +1373,7 @@ function getDatasetsFromImages(images, isMultiframe, options) {
1365
1373
  datasets.push(dataset);
1366
1374
  }
1367
1375
  }
1368
- if (options?.SpecificCharacterSet) {
1376
+ if (options !== null && options !== void 0 && options.SpecificCharacterSet) {
1369
1377
  datasets.forEach(dataset => dataset.SpecificCharacterSet = options.SpecificCharacterSet);
1370
1378
  }
1371
1379
  return getDatasetsFromImages_Normalizer.normalizeToDataset(datasets);
@@ -1818,12 +1826,12 @@ function checkOrientation(multiframe, validOrientations, sourceDataDimensions, t
1818
1826
  const iop = sharedImageOrientationPatient || PerFrameFunctionalGroups.PlaneOrientationSequence.ImageOrientationPatient;
1819
1827
  const inPlane = validOrientations.some(operation => esm.utilities.isEqual(iop, operation, tolerance));
1820
1828
  if (inPlane) {
1821
- return "Planar";
1829
+ return 'Planar';
1822
1830
  }
1823
1831
  if (checkIfPerpendicular(iop, validOrientations[0], tolerance) && sourceDataDimensions.includes(multiframe.Rows) && sourceDataDimensions.includes(multiframe.Columns)) {
1824
- return "Perpendicular";
1832
+ return 'Perpendicular';
1825
1833
  }
1826
- return "Oblique";
1834
+ return 'Oblique';
1827
1835
  }
1828
1836
 
1829
1837
 
@@ -2746,22 +2754,22 @@ function getImageIdOfSourceImageBySourceImageSequence(SourceImageSequence, sopUI
2746
2754
  } = SourceImageSequence;
2747
2755
  const baseImageId = sopUIDImageIdIndexMap[ReferencedSOPInstanceUID];
2748
2756
  if (!baseImageId) {
2749
- console.warn(`No imageId found for SOPInstanceUID: ${ReferencedSOPInstanceUID}`);
2757
+ console.warn("No imageId found for SOPInstanceUID: ".concat(ReferencedSOPInstanceUID));
2750
2758
  return undefined;
2751
2759
  }
2752
2760
  if (ReferencedFrameNumber !== undefined) {
2753
2761
  if (baseImageId.includes('frames/')) {
2754
- return baseImageId.replace(/frames\/\d+/, `frames/${ReferencedFrameNumber}`);
2762
+ return baseImageId.replace(/frames\/\d+/, "frames/".concat(ReferencedFrameNumber));
2755
2763
  } else if (baseImageId.includes('dicomfile:')) {
2756
2764
  // dicomfile base 1, despite having frame=
2757
- return baseImageId.replace(/frame=\d+/, `frame=${ReferencedFrameNumber}`);
2765
+ return baseImageId.replace(/frame=\d+/, "frame=".concat(ReferencedFrameNumber));
2758
2766
  } else if (baseImageId.includes('frame=')) {
2759
- return baseImageId.replace(/frame=\d+/, `frame=${ReferencedFrameNumber - 1}`);
2767
+ return baseImageId.replace(/frame=\d+/, "frame=".concat(ReferencedFrameNumber - 1));
2760
2768
  } else {
2761
2769
  if (baseImageId.includes('wadors:')) {
2762
- return `${baseImageId}/frames/${ReferencedFrameNumber}`;
2770
+ return "".concat(baseImageId, "/frames/").concat(ReferencedFrameNumber);
2763
2771
  } else {
2764
- return `${baseImageId}?frame=${ReferencedFrameNumber - 1}`;
2772
+ return "".concat(baseImageId, "?frame=").concat(ReferencedFrameNumber - 1);
2765
2773
  }
2766
2774
  }
2767
2775
  }
@@ -2792,7 +2800,8 @@ function isMultiframeImage(imageMetadata) {
2792
2800
  * @return {String} The corresponding imageId.
2793
2801
  */
2794
2802
  function getImageIdOfSourceImagebyGeometry(ReferencedSeriesInstanceUID, FrameOfReferenceUID, PerFrameFunctionalGroup, imageIds, metadataProvider, tolerance) {
2795
- if (!ReferencedSeriesInstanceUID || !PerFrameFunctionalGroup.PlanePositionSequence?.[0]?.ImagePositionPatient) {
2803
+ var _PerFrameFunctionalGr;
2804
+ if (!ReferencedSeriesInstanceUID || !((_PerFrameFunctionalGr = PerFrameFunctionalGroup.PlanePositionSequence) !== null && _PerFrameFunctionalGr !== void 0 && (_PerFrameFunctionalGr = _PerFrameFunctionalGr[0]) !== null && _PerFrameFunctionalGr !== void 0 && _PerFrameFunctionalGr.ImagePositionPatient)) {
2796
2805
  return undefined;
2797
2806
  }
2798
2807
  const segFramePosition = PerFrameFunctionalGroup.PlanePositionSequence[0].ImagePositionPatient;
@@ -2808,7 +2817,8 @@ function getImageIdOfSourceImagebyGeometry(ReferencedSeriesInstanceUID, FrameOfR
2808
2817
 
2809
2818
  // For multiframe images, check each frame's position
2810
2819
  if (isMultiframe) {
2811
- const framePosition = metadataProvider.get('imagePlaneModule', imageId)?.imagePositionPatient;
2820
+ var _metadataProvider$get;
2821
+ const framePosition = (_metadataProvider$get = metadataProvider.get('imagePlaneModule', imageId)) === null || _metadataProvider$get === void 0 ? void 0 : _metadataProvider$get.imagePositionPatient;
2812
2822
  if (framePosition && esm.utilities.isEqual(segFramePosition, framePosition, tolerance)) {
2813
2823
  return imageId;
2814
2824
  }
@@ -3057,7 +3067,7 @@ function Segmentation_generateSegmentation(images, labelmaps3DorBrushData) {
3057
3067
  if (cornerstoneToolsVersion === 3) {
3058
3068
  return Segmentation.generateSegmentation(images, labelmaps3DorBrushData, options);
3059
3069
  }
3060
- console.warn(`No generateSegmentation adapter for cornerstone version ${cornerstoneToolsVersion}, exiting.`);
3070
+ console.warn("No generateSegmentation adapter for cornerstone version ".concat(cornerstoneToolsVersion, ", exiting."));
3061
3071
  }
3062
3072
 
3063
3073
  /**
@@ -3084,7 +3094,7 @@ function Segmentation_generateToolState(imageIds, arrayBuffer, metadataProvider)
3084
3094
  if (cornerstoneToolsVersion === 3) {
3085
3095
  return Segmentation.generateToolState(imageIds, arrayBuffer, metadataProvider);
3086
3096
  }
3087
- console.warn(`No generateToolState adapter for cornerstone version ${cornerstoneToolsVersion}, exiting.`);
3097
+ console.warn("No generateToolState adapter for cornerstone version ".concat(cornerstoneToolsVersion, ", exiting."));
3088
3098
  }
3089
3099
 
3090
3100
  /**
@@ -3103,7 +3113,7 @@ function Segmentation_fillSegmentation(segmentation, inputLabelmaps3D) {
3103
3113
  if (cornerstoneToolsVersion === 4) {
3104
3114
  return Segmentation_4X_Segmentation.fillSegmentation(segmentation, inputLabelmaps3D, options);
3105
3115
  }
3106
- console.warn(`No generateSegmentation adapter for cornerstone version ${cornerstoneToolsVersion}, exiting.`);
3116
+ console.warn("No generateSegmentation adapter for cornerstone version ".concat(cornerstoneToolsVersion, ", exiting."));
3107
3117
  }
3108
3118
 
3109
3119
 
@@ -3126,9 +3136,9 @@ async function ParametricMap_generateToolState(imageIds, arrayBuffer, metadataPr
3126
3136
  const dataset = ParametricMap_DicomMetaDictionary.naturalizeDataset(dicomData.dict);
3127
3137
  dataset._meta = ParametricMap_DicomMetaDictionary.namifyDataset(dicomData.meta);
3128
3138
  const multiframe = ParametricMap_Normalizer.normalizeToDataset([dataset]);
3129
- const imagePlaneModule = metadataProvider.get("imagePlaneModule", imageIds[0]);
3139
+ const imagePlaneModule = metadataProvider.get('imagePlaneModule', imageIds[0]);
3130
3140
  if (!imagePlaneModule) {
3131
- console.warn("Insufficient metadata, imagePlaneModule missing.");
3141
+ console.warn('Insufficient metadata, imagePlaneModule missing.');
3132
3142
  }
3133
3143
  const ImageOrientationPatient = Array.isArray(imagePlaneModule.rowCosines) ? [...imagePlaneModule.rowCosines, ...imagePlaneModule.columnCosines] : [imagePlaneModule.rowCosines.x, imagePlaneModule.rowCosines.y, imagePlaneModule.rowCosines.z, imagePlaneModule.columnCosines.x, imagePlaneModule.columnCosines.y, imagePlaneModule.columnCosines.z];
3134
3144
  const validOrientations = [ImageOrientationPatient];
@@ -3137,20 +3147,20 @@ async function ParametricMap_generateToolState(imageIds, arrayBuffer, metadataPr
3137
3147
  const sopUIDImageIdIndexMap = imageIds.reduce((acc, imageId) => {
3138
3148
  const {
3139
3149
  sopInstanceUID
3140
- } = metadataProvider.get("generalImageModule", imageId);
3150
+ } = metadataProvider.get('generalImageModule', imageId);
3141
3151
  acc[sopInstanceUID] = imageId;
3142
3152
  return acc;
3143
3153
  }, {});
3144
- if (orientation !== "Planar") {
3154
+ if (orientation !== 'Planar') {
3145
3155
  const orientationText = {
3146
- Perpendicular: "orthogonal",
3147
- Oblique: "oblique"
3156
+ Perpendicular: 'orthogonal',
3157
+ Oblique: 'oblique'
3148
3158
  };
3149
- throw new Error(`Parametric maps ${orientationText[orientation]} to the acquisition plane of the source data are not yet supported.`);
3159
+ throw new Error("Parametric maps ".concat(orientationText[orientation], " to the acquisition plane of the source data are not yet supported."));
3150
3160
  }
3151
3161
  const imageIdMaps = imageIds.reduce((acc, curr, index) => {
3152
3162
  acc.indices[curr] = index;
3153
- acc.metadata[curr] = metadataProvider.get("instance", curr);
3163
+ acc.metadata[curr] = metadataProvider.get('instance', curr);
3154
3164
  return acc;
3155
3165
  }, {
3156
3166
  indices: {},
@@ -3174,12 +3184,12 @@ function ParametricMap_insertPixelDataPlanar(sourcePixelData, multiframe, imageI
3174
3184
  const sourceSliceDataView = new sourcePixelData.constructor(sourcePixelData.buffer, i * sliceLength, sliceLength);
3175
3185
  const imageId = ParametricMap_findReferenceSourceImageId(multiframe, i, imageIds, metadataProvider, tolerance, sopUIDImageIdIndexMap);
3176
3186
  if (!imageId) {
3177
- console.warn("Image not present in stack, can't import frame : " + i + ".");
3187
+ console.warn("Image not present in stack, can't import frame : " + i + '.');
3178
3188
  continue;
3179
3189
  }
3180
3190
  const sourceImageMetadata = imageIdMaps.metadata[imageId];
3181
3191
  if (Rows !== sourceImageMetadata.Rows || Columns !== sourceImageMetadata.Columns) {
3182
- throw new Error("Parametric map have different geometry dimensions (Rows and Columns) " + "respect to the source image reference frame. This is not yet supported.");
3192
+ throw new Error('Parametric map have different geometry dimensions (Rows and Columns) ' + 'respect to the source image reference frame. This is not yet supported.');
3183
3193
  }
3184
3194
  const imageIdIndex = imageIdMaps.indices[imageId];
3185
3195
  const byteOffset = sliceLength * imageIdIndex * targetPixelData.BYTES_PER_ELEMENT;
@@ -3192,8 +3202,9 @@ function getPixelData(multiframe) {
3192
3202
  let TypedArrayClass;
3193
3203
  let data;
3194
3204
  if (multiframe.PixelData) {
3205
+ var _multiframe$PixelRepr;
3195
3206
  const validTypedArrays = multiframe.BitsAllocated === 16 ? [Uint16Array, Int16Array] : [Uint32Array, Int32Array];
3196
- TypedArrayClass = validTypedArrays[multiframe.PixelRepresentation ?? 0];
3207
+ TypedArrayClass = validTypedArrays[(_multiframe$PixelRepr = multiframe.PixelRepresentation) !== null && _multiframe$PixelRepr !== void 0 ? _multiframe$PixelRepr : 0];
3197
3208
  data = multiframe.PixelData;
3198
3209
  } else if (multiframe.FloatPixelData) {
3199
3210
  TypedArrayClass = Float32Array;
@@ -3203,7 +3214,7 @@ function getPixelData(multiframe) {
3203
3214
  data = multiframe.DoubleFloatPixelData;
3204
3215
  }
3205
3216
  if (data === undefined) {
3206
- dcmjs_es/* log */.Rm.error("This parametric map pixel data is undefined.");
3217
+ dcmjs_es/* log */.Rm.error('This parametric map pixel data is undefined.');
3207
3218
  }
3208
3219
  if (Array.isArray(data)) {
3209
3220
  data = data[0];
@@ -3249,7 +3260,7 @@ function ParametricMap_findReferenceSourceImageId(multiframe, frameSegment, imag
3249
3260
  }
3250
3261
  }
3251
3262
  } else if (SourceImageSequence && SourceImageSequence.length !== 0) {
3252
- console.warn("DerivationImageSequence not present, using SourceImageSequence assuming SEG has the same geometry as the source image.");
3263
+ console.warn('DerivationImageSequence not present, using SourceImageSequence assuming SEG has the same geometry as the source image.');
3253
3264
  frameSourceImageSequence = SourceImageSequence[frameSegment];
3254
3265
  }
3255
3266
  if (frameSourceImageSequence) {
@@ -3274,7 +3285,7 @@ function ParametricMap_getImageIdOfSourceImagebyGeometry(ReferencedSeriesInstanc
3274
3285
  return undefined;
3275
3286
  }
3276
3287
  for (let imageIdsIndex = 0; imageIdsIndex < imageIds.length; ++imageIdsIndex) {
3277
- const sourceImageMetadata = metadataProvider.get("instance", imageIds[imageIdsIndex]);
3288
+ const sourceImageMetadata = metadataProvider.get('instance', imageIds[imageIdsIndex]);
3278
3289
  if (sourceImageMetadata === undefined || sourceImageMetadata.ImagePositionPatient === undefined || sourceImageMetadata.FrameOfReferenceUID !== FrameOfReferenceUID || sourceImageMetadata.SeriesInstanceUID !== ReferencedSeriesInstanceUID) {
3279
3290
  continue;
3280
3291
  }
@@ -3288,7 +3299,7 @@ function ParametricMap_getImageIdOfReferencedFrame(sopInstanceUid, frameNumber,
3288
3299
  if (!imageId) {
3289
3300
  return;
3290
3301
  }
3291
- const imageIdFrameNumber = Number(imageId.split("frame=")[1]);
3302
+ const imageIdFrameNumber = Number(imageId.split('frame=')[1]);
3292
3303
  return imageIdFrameNumber === frameNumber - 1 ? imageId : undefined;
3293
3304
  }
3294
3305
  const ParametricMapObj = {
@@ -3411,14 +3422,14 @@ function scoordToWorld(_ref, scoord) {
3411
3422
  ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/helpers/toPoint3.js
3412
3423
  function toPoint3(flatPoints) {
3413
3424
  const points = [];
3414
- if (!flatPoints?.length) {
3425
+ if (!(flatPoints !== null && flatPoints !== void 0 && flatPoints.length)) {
3415
3426
  return points;
3416
3427
  }
3417
3428
  const {
3418
3429
  length: n
3419
3430
  } = flatPoints;
3420
3431
  if (n % 3 !== 0) {
3421
- throw new Error(`Points array should be divisible by 3 for SCOORD3D, but contents are: ${JSON.stringify(flatPoints)} of length ${n}`);
3432
+ throw new Error("Points array should be divisible by 3 for SCOORD3D, but contents are: ".concat(JSON.stringify(flatPoints), " of length ").concat(n));
3422
3433
  }
3423
3434
  for (let i = 0; i < n; i += 3) {
3424
3435
  points.push([flatPoints[i], flatPoints[i + 1], flatPoints[i + 2]]);
@@ -3446,6 +3457,10 @@ const CodingScheme = {
3446
3457
 
3447
3458
 
3448
3459
  ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/Cornerstone3D/constants/index.js
3460
+
3461
+
3462
+ function constants_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3463
+ function constants_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? constants_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : constants_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3449
3464
  const NO_IMAGE_ID = 'none';
3450
3465
  const CS3D_DESIGNATOR = '99CS3D';
3451
3466
  const TEXT_ANNOTATION_POSITION = {
@@ -3453,6 +3468,16 @@ const TEXT_ANNOTATION_POSITION = {
3453
3468
  meaning: 'Text Annotation Position',
3454
3469
  value: 'TextPosition'
3455
3470
  };
3471
+ const CONTROL_POINTS_CODE = {
3472
+ schemeDesignator: CS3D_DESIGNATOR,
3473
+ meaning: 'Control Points',
3474
+ value: 'ControlPoints'
3475
+ };
3476
+ const SPLINE_TYPE_CODE = {
3477
+ schemeDesignator: CS3D_DESIGNATOR,
3478
+ meaning: 'Spline Type',
3479
+ value: 'SplineType'
3480
+ };
3456
3481
  const COMMENT_CODE = {
3457
3482
  schemeDesignator: 'DCM',
3458
3483
  meaning: 'Comment',
@@ -3484,13 +3509,12 @@ const metaSRAnnotation = {
3484
3509
  vr: 'SH'
3485
3510
  }
3486
3511
  };
3487
- const metaRTSSContour = {
3488
- ...metaSRAnnotation,
3512
+ const metaRTSSContour = constants_objectSpread(constants_objectSpread({}, metaSRAnnotation), {}, {
3489
3513
  ImplementationClassUID: {
3490
3514
  Value: [ImplementationClassRtssContours],
3491
3515
  vr: 'UI'
3492
3516
  }
3493
- };
3517
+ });
3494
3518
 
3495
3519
 
3496
3520
 
@@ -3551,7 +3575,9 @@ class LabelData {
3551
3575
  this.ReferencedSOPSequence = tid300Item.ReferencedSOPSequence;
3552
3576
  }
3553
3577
  contentItem() {
3578
+ var _handles$textBox;
3554
3579
  const contentEntries = this.tid300Item.contentItem();
3580
+ this.fixScoordRelationships(contentEntries);
3555
3581
  const {
3556
3582
  label,
3557
3583
  handles
@@ -3560,11 +3586,29 @@ class LabelData {
3560
3586
  contentEntries.push(this.createQualitativeLabel(label));
3561
3587
  this.filterCornerstoneFreeText(contentEntries);
3562
3588
  }
3563
- if (handles?.textBox?.hasMoved) {
3589
+ if (handles !== null && handles !== void 0 && (_handles$textBox = handles.textBox) !== null && _handles$textBox !== void 0 && _handles$textBox.hasMoved) {
3564
3590
  contentEntries.push(this.createQualitativeLabelPosition(this.annotation));
3565
3591
  }
3566
3592
  return contentEntries;
3567
3593
  }
3594
+ fixScoordRelationships(contentEntries) {
3595
+ const INFERRED_FROM = valueTypes.RelationshipTypes.INFERRED_FROM;
3596
+ for (const entry of contentEntries) {
3597
+ const item = entry;
3598
+ const contentSeq = item.ContentSequence;
3599
+ const children = this.normalizeContentSequence(contentSeq);
3600
+ for (const child of children) {
3601
+ if ((child.ValueType === 'SCOORD' || child.ValueType === 'SCOORD3D') && (child.RelationshipType === 'CONTAINS' || child.RelationshipType === 'Contains')) {
3602
+ child.RelationshipType = INFERRED_FROM;
3603
+ }
3604
+ }
3605
+ }
3606
+ }
3607
+ normalizeContentSequence(contentSeq) {
3608
+ if (!contentSeq) return [];
3609
+ if (Array.isArray(contentSeq)) return contentSeq;
3610
+ return [contentSeq];
3611
+ }
3568
3612
  filterCornerstoneFreeText(contentEntries) {
3569
3613
  const {
3570
3614
  codeValues
@@ -3650,7 +3694,10 @@ class LabelData {
3650
3694
 
3651
3695
 
3652
3696
 
3697
+
3653
3698
  var _MeasurementReport;
3699
+ function MeasurementReport_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3700
+ function MeasurementReport_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? MeasurementReport_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : MeasurementReport_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3654
3701
  const {
3655
3702
  MetadataModules
3656
3703
  } = esm.Enums;
@@ -3683,6 +3730,10 @@ const COMMENT_POSITION = {
3683
3730
  CodingSchemeDesignator: TEXT_ANNOTATION_POSITION.schemeDesignator,
3684
3731
  CodeValue: TEXT_ANNOTATION_POSITION.value
3685
3732
  };
3733
+ const CONTROL_POINTS = {
3734
+ CodingSchemeDesignator: CONTROL_POINTS_CODE.schemeDesignator,
3735
+ CodeValue: CONTROL_POINTS_CODE.value
3736
+ };
3686
3737
  const MeasurementReport_FINDING_SITE = {
3687
3738
  CodingSchemeDesignator: 'SCT',
3688
3739
  CodeValue: '363698007'
@@ -3691,6 +3742,14 @@ const MeasurementReport_FINDING_SITE_OLD = {
3691
3742
  CodingSchemeDesignator: 'SRT',
3692
3743
  CodeValue: 'G-C0E3'
3693
3744
  };
3745
+ function isSecondaryScoordGroup(group) {
3746
+ if (group.ValueType !== 'SCOORD' && group.ValueType !== 'SCOORD3D') {
3747
+ return false;
3748
+ }
3749
+ const conceptNameCodeSequence = group.ConceptNameCodeSequence;
3750
+ const conceptCode = Array.isArray(conceptNameCodeSequence) ? conceptNameCodeSequence[0] : conceptNameCodeSequence;
3751
+ return !!conceptCode && conceptCode.CodingSchemeDesignator === CONTROL_POINTS.CodingSchemeDesignator && conceptCode.CodeValue === CONTROL_POINTS.CodeValue;
3752
+ }
3694
3753
  class MeasurementReport_MeasurementReport {
3695
3754
  static getTID300ContentItem(tool, ReferencedSOPSequence, toolClass, is3DMeasurement) {
3696
3755
  const args = toolClass.getTID300RepresentationArguments(tool, is3DMeasurement);
@@ -3719,7 +3778,7 @@ class MeasurementReport_MeasurementReport {
3719
3778
  finding,
3720
3779
  commentGroup
3721
3780
  } = defaultState;
3722
- if (commentGroup?.TextValue) {
3781
+ if (commentGroup !== null && commentGroup !== void 0 && commentGroup.TextValue) {
3723
3782
  return commentGroup.TextValue;
3724
3783
  }
3725
3784
  const cornersoneFreeTextCodingValue = CodingScheme.codeValues.CORNERSTONEFREETEXT;
@@ -3748,7 +3807,7 @@ class MeasurementReport_MeasurementReport {
3748
3807
  ReferencedSOPInstanceUID,
3749
3808
  ReferencedFrameNumber = 1
3750
3809
  } = ReferencedSOPSequence;
3751
- const referencedImageId = sopInstanceUIDToImageIdMap[`${ReferencedSOPInstanceUID}:${ReferencedFrameNumber}`];
3810
+ const referencedImageId = sopInstanceUIDToImageIdMap["".concat(ReferencedSOPInstanceUID, ":").concat(ReferencedFrameNumber)];
3752
3811
  const imagePlaneModule = metadata.get('imagePlaneModule', referencedImageId);
3753
3812
  const annotationUID = MeasurementReport_DicomMetaDictionary.uid();
3754
3813
  return {
@@ -3815,6 +3874,7 @@ class MeasurementReport_MeasurementReport {
3815
3874
  return toolData;
3816
3875
  }
3817
3876
  static getSpatialCoordinatesState(_ref3) {
3877
+ var _contentSequenceArr$f, _contentSequenceArr$f2;
3818
3878
  let {
3819
3879
  NUMGroup,
3820
3880
  sopInstanceUIDToImageIdMap,
@@ -3822,8 +3882,8 @@ class MeasurementReport_MeasurementReport {
3822
3882
  toolType
3823
3883
  } = _ref3;
3824
3884
  const contentSequenceArr = toArray(NUMGroup.ContentSequence);
3825
- const SCOORDGroup = contentSequenceArr.find(group => group.ValueType === 'SCOORD');
3826
- const SCOORD3DGroup = contentSequenceArr.find(group => group.ValueType === 'SCOORD3D');
3885
+ const SCOORDGroup = (_contentSequenceArr$f = contentSequenceArr.find(group => group.ValueType === 'SCOORD' && !isSecondaryScoordGroup(group))) !== null && _contentSequenceArr$f !== void 0 ? _contentSequenceArr$f : contentSequenceArr.find(group => group.ValueType === 'SCOORD');
3886
+ const SCOORD3DGroup = (_contentSequenceArr$f2 = contentSequenceArr.find(group => group.ValueType === 'SCOORD3D' && !isSecondaryScoordGroup(group))) !== null && _contentSequenceArr$f2 !== void 0 ? _contentSequenceArr$f2 : contentSequenceArr.find(group => group.ValueType === 'SCOORD3D');
3827
3887
  const result = SCOORD3DGroup && this.processSCOORD3DGroup({
3828
3888
  SCOORD3DGroup,
3829
3889
  toolType
@@ -3847,6 +3907,7 @@ class MeasurementReport_MeasurementReport {
3847
3907
  findingSiteGroups,
3848
3908
  commentGroup,
3849
3909
  commentPositionGroup,
3910
+ controlPointsGroup,
3850
3911
  toolType
3851
3912
  } = _ref4;
3852
3913
  const {
@@ -3880,6 +3941,13 @@ class MeasurementReport_MeasurementReport {
3880
3941
  worldPosition: textBoxCoords[0]
3881
3942
  };
3882
3943
  }
3944
+ if (controlPointsGroup) {
3945
+ const controlPoints = scoordToWorld({
3946
+ is3DMeasurement: !referencedImageId,
3947
+ referencedImageId
3948
+ }, controlPointsGroup);
3949
+ state.annotation.data.handles.points = controlPoints;
3950
+ }
3883
3951
  state.finding = finding;
3884
3952
  state.findingSites = findingSites;
3885
3953
  state.commentGroup = commentGroup;
@@ -3911,8 +3979,13 @@ class MeasurementReport_MeasurementReport {
3911
3979
  const findingGroup = contentSequenceArr.find(group => this.codeValueMatch(group, MeasurementReport_FINDING));
3912
3980
  const commentGroup = contentSequenceArr.find(group => this.codeValueMatch(group, COMMENT));
3913
3981
  const commentPositionGroup = contentSequenceArr.find(group => this.codeValueMatch(group, COMMENT_POSITION));
3982
+ let controlPointsGroup = contentSequenceArr.find(group => this.codeValueMatch(group, CONTROL_POINTS));
3983
+ const NUMGroupForLookup = contentSequenceArr.find(group => group.ValueType === 'NUM');
3984
+ if (!controlPointsGroup && NUMGroupForLookup !== null && NUMGroupForLookup !== void 0 && NUMGroupForLookup.ContentSequence) {
3985
+ controlPointsGroup = toArray(NUMGroupForLookup.ContentSequence).find(item => this.codeValueMatch(item, CONTROL_POINTS));
3986
+ }
3914
3987
  const findingSiteGroups = contentSequenceArr.filter(group => this.codeValueMatch(group, MeasurementReport_FINDING_SITE, MeasurementReport_FINDING_SITE_OLD)) || [];
3915
- const NUMGroup = contentSequenceArr.find(group => group.ValueType === 'NUM') || {
3988
+ const NUMGroup = NUMGroupForLookup || {
3916
3989
  ContentSequence: contentSequenceArr.filter(group => group.ValueType === 'SCOORD' || group.ValueType === 'SCOORD3D')
3917
3990
  };
3918
3991
  const spatialGroup = this.processSpatialCoordinatesGroup({
@@ -3923,6 +3996,7 @@ class MeasurementReport_MeasurementReport {
3923
3996
  findingSiteGroups,
3924
3997
  commentGroup,
3925
3998
  commentPositionGroup,
3999
+ controlPointsGroup,
3926
4000
  toolType
3927
4001
  });
3928
4002
  const {
@@ -3935,13 +4009,12 @@ class MeasurementReport_MeasurementReport {
3935
4009
  };
3936
4010
  const scoord = spatialGroup.SCOORD3DGroup || spatialGroup.SCOORDGroup;
3937
4011
  const worldCoords = scoordToWorld(scoordArgs, scoord);
3938
- return {
3939
- ...spatialGroup,
4012
+ return MeasurementReport_objectSpread(MeasurementReport_objectSpread({}, spatialGroup), {}, {
3940
4013
  is3DMeasurement,
3941
4014
  scoordArgs,
3942
4015
  scoord,
3943
4016
  worldCoords
3944
- };
4017
+ });
3945
4018
  }
3946
4019
  static generateReferencedSOPSequence(_ref5) {
3947
4020
  let {
@@ -3982,20 +4055,22 @@ class MeasurementReport_MeasurementReport {
3982
4055
  return ReferencedSOPSequence;
3983
4056
  }
3984
4057
  static getImageIdFromVolume(_ref6) {
4058
+ var _toolData$toolTypes$, _referenceToolData$me;
3985
4059
  let {
3986
4060
  toolData,
3987
4061
  toolTypes
3988
4062
  } = _ref6;
3989
- const referenceToolData = toolData?.[toolTypes?.[0]]?.data?.[0];
3990
- const volumeId = referenceToolData?.metadata?.volumeId;
4063
+ const referenceToolData = toolData === null || toolData === void 0 || (_toolData$toolTypes$ = toolData[toolTypes === null || toolTypes === void 0 ? void 0 : toolTypes[0]]) === null || _toolData$toolTypes$ === void 0 || (_toolData$toolTypes$ = _toolData$toolTypes$.data) === null || _toolData$toolTypes$ === void 0 ? void 0 : _toolData$toolTypes$[0];
4064
+ const volumeId = referenceToolData === null || referenceToolData === void 0 || (_referenceToolData$me = referenceToolData.metadata) === null || _referenceToolData$me === void 0 ? void 0 : _referenceToolData$me.volumeId;
3991
4065
  const volume = esm.cache.getVolume(volumeId);
3992
4066
  if (!volume) {
3993
- throw new Error(`No volume found for ${volumeId}`);
4067
+ throw new Error("No volume found for ".concat(volumeId));
3994
4068
  }
3995
4069
  const imageId = volume.imageIds[0];
3996
4070
  return imageId;
3997
4071
  }
3998
4072
  static generateReport(toolState, metadataProvider, options) {
4073
+ var _report$dataset;
3999
4074
  let allMeasurementGroups = [];
4000
4075
  const sopInstanceUIDsToSeriesInstanceUIDMap = {};
4001
4076
  const derivationSourceDatasets = [];
@@ -4029,21 +4104,20 @@ class MeasurementReport_MeasurementReport {
4029
4104
  TID1501MeasurementGroups: allMeasurementGroups
4030
4105
  }, options);
4031
4106
  const report = new MeasurementReport_StructuredReport(derivationSourceDatasets, options);
4032
- const contentItem = tid1500MeasurementReport.contentItem(derivationSourceDatasets, {
4033
- ...options,
4107
+ const contentItem = tid1500MeasurementReport.contentItem(derivationSourceDatasets, MeasurementReport_objectSpread(MeasurementReport_objectSpread({}, options), {}, {
4034
4108
  sopInstanceUIDsToSeriesInstanceUIDMap
4035
- });
4109
+ }));
4036
4110
  report.dataset = Object.assign(report.dataset, contentItem);
4037
4111
  report.dataset._meta = _meta;
4038
4112
  report.SpecificCharacterSet = 'ISO_IR 192';
4039
- report.dataset.InstanceNumber ||= options.InstanceNumber || 1;
4113
+ (_report$dataset = report.dataset).InstanceNumber || (_report$dataset.InstanceNumber = options.InstanceNumber || 1);
4040
4114
  if (options.predecessorImageId) {
4041
4115
  Object.assign(report.dataset, metadataProvider.get(MetadataModules.PREDECESSOR_SEQUENCE, options.predecessorImageId));
4042
4116
  }
4043
4117
  if (is3DSR) {
4044
4118
  report.dataset.SOPClassUID = MeasurementReport_DicomMetaDictionary.sopClassUIDsByName.Comprehensive3DSR;
4045
4119
  if (!report.dataset.SOPClassUID) {
4046
- throw new Error(`NO sop class defined for Comprehensive3DSR in ${JSON.stringify(MeasurementReport_DicomMetaDictionary.sopClassUIDsByName)}`);
4120
+ throw new Error("NO sop class defined for Comprehensive3DSR in ".concat(JSON.stringify(MeasurementReport_DicomMetaDictionary.sopClassUIDsByName)));
4047
4121
  }
4048
4122
  }
4049
4123
  return report;
@@ -4064,21 +4138,23 @@ class MeasurementReport_MeasurementReport {
4064
4138
  const measurementData = {};
4065
4139
  measurementGroups.forEach(measurementGroup => {
4066
4140
  try {
4141
+ var _hooks$getToolClass;
4067
4142
  const measurementGroupContentSequence = toArray(measurementGroup.ContentSequence);
4068
4143
  const trackingIdentifierGroup = measurementGroupContentSequence.find(contentItem => contentItem.ConceptNameCodeSequence.CodeMeaning === TRACKING_IDENTIFIER);
4069
4144
  const {
4070
4145
  TextValue: trackingIdentifierValue
4071
4146
  } = trackingIdentifierGroup;
4072
4147
  const trackingUniqueIdentifierGroup = measurementGroupContentSequence.find(contentItem => contentItem.ConceptNameCodeSequence.CodeMeaning === TRACKING_UNIQUE_IDENTIFIER);
4073
- const trackingUniqueIdentifierValue = trackingUniqueIdentifierGroup?.UID;
4074
- const toolAdapter = hooks?.getToolClass?.(measurementGroup, dataset, this.measurementAdapterByToolType) || this.getAdapterForTrackingIdentifier(trackingIdentifierValue) || this.getAdapterForCodeType(measurementGroup);
4148
+ const trackingUniqueIdentifierValue = trackingUniqueIdentifierGroup === null || trackingUniqueIdentifierGroup === void 0 ? void 0 : trackingUniqueIdentifierGroup.UID;
4149
+ const toolAdapter = (hooks === null || hooks === void 0 || (_hooks$getToolClass = hooks.getToolClass) === null || _hooks$getToolClass === void 0 ? void 0 : _hooks$getToolClass.call(hooks, measurementGroup, dataset, this.measurementAdapterByToolType)) || this.getAdapterForTrackingIdentifier(trackingIdentifierValue) || this.getAdapterForCodeType(measurementGroup);
4075
4150
  if (toolAdapter) {
4151
+ var _toolAdapter$toolType;
4076
4152
  const measurement = toolAdapter.getMeasurementData(measurementGroup, sopInstanceUIDToImageIdMap, metadata, trackingIdentifierValue);
4077
4153
  measurement.TrackingUniqueIdentifier = trackingUniqueIdentifierValue;
4078
4154
  measurement.predecessorImageId = predecessorImageId;
4079
- console.log(`=== ${toolAdapter.toolType} ===`);
4155
+ console.log("=== ".concat(toolAdapter.toolType, " ==="));
4080
4156
  console.log(measurement);
4081
- measurementData[toolAdapter.toolType] ||= [];
4157
+ measurementData[_toolAdapter$toolType = toolAdapter.toolType] || (measurementData[_toolAdapter$toolType] = []);
4082
4158
  measurementData[toolAdapter.toolType].push(measurement);
4083
4159
  }
4084
4160
  } catch (e) {
@@ -4092,7 +4168,7 @@ class MeasurementReport_MeasurementReport {
4092
4168
  const registerName = toolAdapter.toolType;
4093
4169
  if (this.measurementAdapterByToolType.has(registerName)) {
4094
4170
  if (!replace) {
4095
- throw new Error(`The registered tool name ${registerName} already exists in adapters, use a different toolType or use replace`);
4171
+ throw new Error("The registered tool name ".concat(registerName, " already exists in adapters, use a different toolType or use replace"));
4096
4172
  }
4097
4173
  if (typeof replace === 'function') {
4098
4174
  replace(this.measurementAdapterByToolType.get(registerName));
@@ -4144,8 +4220,8 @@ class MeasurementReport_MeasurementReport {
4144
4220
  }
4145
4221
  static getAdaptersForTypes(graphicCode, graphicType, pointCount) {
4146
4222
  const adapters = [];
4147
- appendList(adapters, this.measurementAdaptersByType.get(`${graphicCode}-${graphicType}-${pointCount}`));
4148
- appendList(adapters, this.measurementAdaptersByType.get(`${graphicCode}-${graphicType}`));
4223
+ appendList(adapters, this.measurementAdaptersByType.get("".concat(graphicCode, "-").concat(graphicType, "-").concat(pointCount)));
4224
+ appendList(adapters, this.measurementAdaptersByType.get("".concat(graphicCode, "-").concat(graphicType)));
4149
4225
  appendList(adapters, this.measurementAdaptersByType.get(graphicCode));
4150
4226
  appendList(adapters, this.measurementAdaptersByType.get(graphicType));
4151
4227
  return adapters;
@@ -4163,22 +4239,23 @@ _MeasurementReport.codeValueMatch = (group, code, oldCode) => {
4163
4239
  if (!ConceptNameCodeSequence) {
4164
4240
  return;
4165
4241
  }
4242
+ const seq = Array.isArray(ConceptNameCodeSequence) ? ConceptNameCodeSequence[0] : ConceptNameCodeSequence;
4243
+ if (!seq) {
4244
+ return;
4245
+ }
4166
4246
  const {
4167
4247
  CodingSchemeDesignator,
4168
4248
  CodeValue
4169
- } = ConceptNameCodeSequence;
4249
+ } = seq;
4170
4250
  return CodingSchemeDesignator == code.CodingSchemeDesignator && CodeValue == code.CodeValue || oldCode && CodingSchemeDesignator == oldCode.CodingSchemeDesignator && CodeValue == oldCode.CodeValue;
4171
4251
  };
4172
4252
  _MeasurementReport.generateDerivationSourceDataset = instance => {
4173
4253
  const studyTags = copyStudyTags(instance);
4174
4254
  const seriesTags = copySeriesTags(instance);
4175
- return {
4176
- ...studyTags,
4177
- ...seriesTags
4178
- };
4255
+ return MeasurementReport_objectSpread(MeasurementReport_objectSpread({}, studyTags), seriesTags);
4179
4256
  };
4180
4257
  function appendList(list, appendList) {
4181
- if (!appendList?.length) {
4258
+ if (!(appendList !== null && appendList !== void 0 && appendList.length)) {
4182
4259
  return;
4183
4260
  }
4184
4261
  list.push(...appendList);
@@ -4195,25 +4272,25 @@ function appendList(list, appendList) {
4195
4272
 
4196
4273
  class BaseAdapter3D {
4197
4274
  static registerType() {
4198
- let code = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
4199
- let type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
4275
+ let code = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
4276
+ let type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
4200
4277
  let count = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
4201
4278
  let key = code;
4202
4279
  if (type) {
4203
- key = `${key}${key.length ? "-" : ""}${type}`;
4280
+ key = "".concat(key).concat(key.length ? '-' : '').concat(type);
4204
4281
  }
4205
4282
  if (count) {
4206
- key = `${key}${key.length ? "-" : ""}${count}`;
4283
+ key = "".concat(key).concat(key.length ? '-' : '').concat(count);
4207
4284
  }
4208
4285
  MeasurementReport_MeasurementReport.registerAdapterTypes(this, key);
4209
4286
  }
4210
4287
  static getPointsCount(graphicItem) {
4211
- const is3DMeasurement = graphicItem.ValueType === "SCOORD3D";
4288
+ const is3DMeasurement = graphicItem.ValueType === 'SCOORD3D';
4212
4289
  const pointSize = is3DMeasurement ? 3 : 2;
4213
4290
  return graphicItem.GraphicData.length / pointSize;
4214
4291
  }
4215
4292
  static getGraphicItems(measurementGroup, filter) {
4216
- const items = measurementGroup.ContentSequence.filter(group => group.ValueType === "SCOORD" || group.ValueType === "SCOORD3D");
4293
+ const items = measurementGroup.ContentSequence.filter(group => group.ValueType === 'SCOORD' || group.ValueType === 'SCOORD3D');
4217
4294
  return filter ? items.filter(filter) : items;
4218
4295
  }
4219
4296
  static getGraphicItem(measurementGroup) {
@@ -4230,7 +4307,7 @@ class BaseAdapter3D {
4230
4307
  CodeValue: graphicValue,
4231
4308
  CodingSchemeDesignator: graphicDesignator
4232
4309
  } = conceptNameItem;
4233
- return `${graphicDesignator}:${graphicValue}`;
4310
+ return "".concat(graphicDesignator, ":").concat(graphicValue);
4234
4311
  }
4235
4312
  static getGraphicType(graphicItem) {
4236
4313
  return graphicItem.GraphicType;
@@ -4241,23 +4318,23 @@ class BaseAdapter3D {
4241
4318
  static init(toolType, representation, options) {
4242
4319
  this.toolType = toolType;
4243
4320
  if (BaseAdapter3D.toolType) {
4244
- throw new Error(`Base adapter tool type set to ${this.toolType} while setting ${toolType}`);
4321
+ throw new Error("Base adapter tool type set to ".concat(this.toolType, " while setting ").concat(toolType));
4245
4322
  }
4246
- this.parentType = options?.parentType;
4323
+ this.parentType = options === null || options === void 0 ? void 0 : options.parentType;
4247
4324
  this.trackingIdentifiers = new Set();
4248
4325
  this.TID300Representation = representation;
4249
4326
  if (this.parentType) {
4250
- this.trackingIdentifierTextValue = `${CORNERSTONE_3D_TAG}:${this.parentType}:${this.toolType}`;
4251
- const alternateTrackingIdentifier = `${CORNERSTONE_3D_TAG}:${this.toolType}`;
4327
+ this.trackingIdentifierTextValue = "".concat(CORNERSTONE_3D_TAG, ":").concat(this.parentType, ":").concat(this.toolType);
4328
+ const alternateTrackingIdentifier = "".concat(CORNERSTONE_3D_TAG, ":").concat(this.toolType);
4252
4329
  this.trackingIdentifiers.add(alternateTrackingIdentifier);
4253
4330
  } else {
4254
- this.trackingIdentifierTextValue = `${CORNERSTONE_3D_TAG}:${toolType}`;
4331
+ this.trackingIdentifierTextValue = "".concat(CORNERSTONE_3D_TAG, ":").concat(toolType);
4255
4332
  }
4256
4333
  this.trackingIdentifiers.add(this.trackingIdentifierTextValue);
4257
4334
  MeasurementReport_MeasurementReport.registerTool(this);
4258
4335
  }
4259
4336
  static registerLegacy() {
4260
- this.trackingIdentifiers.add(`cornerstoneTools@^4.0.0:${this.toolType}`);
4337
+ this.trackingIdentifiers.add("cornerstoneTools@^4.0.0:".concat(this.toolType));
4261
4338
  }
4262
4339
  static registerSubType(adapter, toolType, replace) {
4263
4340
  const subAdapter = Object.create(adapter);
@@ -4271,7 +4348,7 @@ class BaseAdapter3D {
4271
4348
  if (this.trackingIdentifiers.has(trackingIdentifier)) {
4272
4349
  return true;
4273
4350
  }
4274
- if (!trackingIdentifier.includes(":")) {
4351
+ if (!trackingIdentifier.includes(':')) {
4275
4352
  return false;
4276
4353
  }
4277
4354
  return trackingIdentifier.startsWith(this.trackingIdentifierTextValue);
@@ -4284,7 +4361,7 @@ class BaseAdapter3D {
4284
4361
  state.annotation.data = {
4285
4362
  cachedStats: {},
4286
4363
  frameNumber: ReferencedFrameNumber,
4287
- seriesLevel: trackingIdentifier?.indexOf(":Series") > 0
4364
+ seriesLevel: (trackingIdentifier === null || trackingIdentifier === void 0 ? void 0 : trackingIdentifier.indexOf(':Series')) > 0
4288
4365
  };
4289
4366
  return state;
4290
4367
  }
@@ -4325,7 +4402,10 @@ class BaseAdapter3D {
4325
4402
 
4326
4403
 
4327
4404
 
4405
+
4328
4406
  var _ArrowAnnotate;
4407
+ function Cornerstone3D_ArrowAnnotate_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4408
+ function Cornerstone3D_ArrowAnnotate_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Cornerstone3D_ArrowAnnotate_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Cornerstone3D_ArrowAnnotate_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4329
4409
  const {
4330
4410
  ArrowAnnotate: TID300ArrowAnnotate
4331
4411
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -4343,7 +4423,7 @@ class ArrowAnnotate_ArrowAnnotate extends BaseAdapter3D {
4343
4423
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, this.toolType);
4344
4424
  const text = state.annotation.data.label;
4345
4425
  if (worldCoords.length === 1 && SCOORDGroup) {
4346
- const imagePixelModule = metadata.get("imagePixelModule", referencedImageId);
4426
+ const imagePixelModule = metadata.get('imagePixelModule', referencedImageId);
4347
4427
  let xOffset = 10;
4348
4428
  let yOffset = 10;
4349
4429
  if (imagePixelModule) {
@@ -4360,16 +4440,14 @@ class ArrowAnnotate_ArrowAnnotate extends BaseAdapter3D {
4360
4440
  const secondPoint = ArrowAnnotate_imageToWorldCoords(referencedImageId, [GraphicData[0] + xOffset, GraphicData[1] + yOffset]);
4361
4441
  worldCoords.push(secondPoint);
4362
4442
  }
4363
- state.annotation.data = {
4364
- ...state.annotation.data,
4443
+ state.annotation.data = Cornerstone3D_ArrowAnnotate_objectSpread(Cornerstone3D_ArrowAnnotate_objectSpread({}, state.annotation.data), {}, {
4365
4444
  text,
4366
- handles: {
4367
- ...state.annotation.data.handles,
4445
+ handles: Cornerstone3D_ArrowAnnotate_objectSpread(Cornerstone3D_ArrowAnnotate_objectSpread({}, state.annotation.data.handles), {}, {
4368
4446
  arrowFirst: true,
4369
4447
  points: worldCoords
4370
- },
4448
+ }),
4371
4449
  frameNumber: ReferencedFrameNumber
4372
- };
4450
+ });
4373
4451
  return state;
4374
4452
  }
4375
4453
  static getTID300RepresentationArguments(tool) {
@@ -4410,7 +4488,7 @@ class ArrowAnnotate_ArrowAnnotate extends BaseAdapter3D {
4410
4488
  }
4411
4489
  _ArrowAnnotate = ArrowAnnotate_ArrowAnnotate;
4412
4490
  (() => {
4413
- _ArrowAnnotate.init("ArrowAnnotate", TID300ArrowAnnotate);
4491
+ _ArrowAnnotate.init('ArrowAnnotate', TID300ArrowAnnotate);
4414
4492
  _ArrowAnnotate.registerLegacy();
4415
4493
  })();
4416
4494
 
@@ -4424,12 +4502,15 @@ _ArrowAnnotate = ArrowAnnotate_ArrowAnnotate;
4424
4502
 
4425
4503
 
4426
4504
 
4505
+
4427
4506
  var _Bidirectional;
4507
+ function Bidirectional_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4508
+ function Bidirectional_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Bidirectional_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Bidirectional_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4428
4509
  const {
4429
4510
  Bidirectional: Bidirectional_TID300Bidirectional
4430
4511
  } = dcmjs_es/* utilities */.BF.TID300;
4431
- const Bidirectional_LONG_AXIS = "Long Axis";
4432
- const Bidirectional_SHORT_AXIS = "Short Axis";
4512
+ const Bidirectional_LONG_AXIS = 'Long Axis';
4513
+ const Bidirectional_SHORT_AXIS = 'Short Axis';
4433
4514
  class Bidirectional_Bidirectional extends BaseAdapter3D {
4434
4515
  static getMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata) {
4435
4516
  const {
@@ -4443,22 +4524,20 @@ class Bidirectional_Bidirectional extends BaseAdapter3D {
4443
4524
  } = MeasurementGroup;
4444
4525
  const longAxisNUMGroup = toArray(ContentSequence).find(group => group.ConceptNameCodeSequence.CodeMeaning === Bidirectional_LONG_AXIS);
4445
4526
  const shortAxisNUMGroup = toArray(ContentSequence).find(group => group.ConceptNameCodeSequence.CodeMeaning === Bidirectional_SHORT_AXIS);
4446
- const longAxisScoordGroup = toArray(longAxisNUMGroup.ContentSequence).find(group => group.ValueType === "SCOORD3D" || group.ValueType === "SCOORD");
4447
- const shortAxisScoordGroup = toArray(shortAxisNUMGroup.ContentSequence).find(group => group.ValueType === "SCOORD3D" || group.ValueType === "SCOORD");
4527
+ const longAxisScoordGroup = toArray(longAxisNUMGroup.ContentSequence).find(group => group.ValueType === 'SCOORD3D' || group.ValueType === 'SCOORD');
4528
+ const shortAxisScoordGroup = toArray(shortAxisNUMGroup.ContentSequence).find(group => group.ValueType === 'SCOORD3D' || group.ValueType === 'SCOORD');
4448
4529
  const worldCoords = [];
4449
4530
  worldCoords.push(...scoordToWorld(scoordArgs, longAxisScoordGroup));
4450
4531
  worldCoords.push(...scoordToWorld(scoordArgs, shortAxisScoordGroup));
4451
- state.annotation.data = {
4452
- ...state.annotation.data,
4453
- handles: {
4454
- ...state.annotation.data.handles,
4532
+ state.annotation.data = Bidirectional_objectSpread(Bidirectional_objectSpread({}, state.annotation.data), {}, {
4533
+ handles: Bidirectional_objectSpread(Bidirectional_objectSpread({}, state.annotation.data.handles), {}, {
4455
4534
  points: [worldCoords[0], worldCoords[1], worldCoords[2], worldCoords[3]]
4456
- },
4535
+ }),
4457
4536
  frameNumber: ReferencedFrameNumber
4458
- };
4537
+ });
4459
4538
  if (referencedImageId) {
4460
4539
  state.annotation.data.cachedStats = {
4461
- [`imageId:${referencedImageId}`]: {
4540
+ ["imageId:".concat(referencedImageId)]: {
4462
4541
  length: longAxisNUMGroup.MeasuredValueSequence.NumericValue,
4463
4542
  width: shortAxisNUMGroup.MeasuredValueSequence.NumericValue,
4464
4543
  unit: longAxisNUMGroup.MeasuredValueSequence.MeasurementUnitsCodeSequence.CodeValue,
@@ -4511,7 +4590,7 @@ class Bidirectional_Bidirectional extends BaseAdapter3D {
4511
4590
  length,
4512
4591
  width,
4513
4592
  unit
4514
- } = cachedStats[`imageId:${referencedImageId}`] || {};
4593
+ } = cachedStats["imageId:".concat(referencedImageId)] || {};
4515
4594
  return {
4516
4595
  longAxis: {
4517
4596
  point1: longAxisStartImage,
@@ -4534,7 +4613,7 @@ class Bidirectional_Bidirectional extends BaseAdapter3D {
4534
4613
  }
4535
4614
  _Bidirectional = Bidirectional_Bidirectional;
4536
4615
  (() => {
4537
- _Bidirectional.init("Bidirectional", Bidirectional_TID300Bidirectional);
4616
+ _Bidirectional.init('Bidirectional', Bidirectional_TID300Bidirectional);
4538
4617
  _Bidirectional.registerLegacy();
4539
4618
  })();
4540
4619
 
@@ -4547,7 +4626,10 @@ _Bidirectional = Bidirectional_Bidirectional;
4547
4626
 
4548
4627
 
4549
4628
 
4629
+
4550
4630
  var _Angle;
4631
+ function Cornerstone3D_Angle_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4632
+ function Cornerstone3D_Angle_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Cornerstone3D_Angle_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Cornerstone3D_Angle_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4551
4633
  const {
4552
4634
  CobbAngle: Angle_TID300CobbAngle
4553
4635
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -4561,22 +4643,21 @@ class Angle_Angle extends BaseAdapter3D {
4561
4643
  ReferencedFrameNumber
4562
4644
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, this.toolType);
4563
4645
  const cachedStats = referencedImageId ? {
4564
- [`imageId:${referencedImageId}`]: {
4646
+ ["imageId:".concat(referencedImageId)]: {
4565
4647
  angle: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : null
4566
4648
  }
4567
4649
  } : {};
4568
- state.annotation.data = {
4569
- ...state.annotation.data,
4570
- handles: {
4571
- ...state.annotation.data.handles,
4650
+ state.annotation.data = Cornerstone3D_Angle_objectSpread(Cornerstone3D_Angle_objectSpread({}, state.annotation.data), {}, {
4651
+ handles: Cornerstone3D_Angle_objectSpread(Cornerstone3D_Angle_objectSpread({}, state.annotation.data.handles), {}, {
4572
4652
  points: [worldCoords[0], worldCoords[1], worldCoords[3]]
4573
- },
4653
+ }),
4574
4654
  cachedStats,
4575
4655
  frameNumber: ReferencedFrameNumber
4576
- };
4656
+ });
4577
4657
  return state;
4578
4658
  }
4579
4659
  static getTID300RepresentationArguments(tool) {
4660
+ var _cachedStats;
4580
4661
  let is3DMeasurement = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
4581
4662
  const {
4582
4663
  data,
@@ -4599,7 +4680,7 @@ class Angle_Angle extends BaseAdapter3D {
4599
4680
  const point2 = toScoord(scoordProps, handles.points[1]);
4600
4681
  const point3 = toScoord(scoordProps, handles.points[1]);
4601
4682
  const point4 = toScoord(scoordProps, handles.points[2]);
4602
- const angle = cachedStats[`imageId:${referencedImageId}`]?.angle;
4683
+ const angle = (_cachedStats = cachedStats["imageId:".concat(referencedImageId)]) === null || _cachedStats === void 0 ? void 0 : _cachedStats.angle;
4603
4684
  return {
4604
4685
  point1,
4605
4686
  point2,
@@ -4616,7 +4697,7 @@ class Angle_Angle extends BaseAdapter3D {
4616
4697
  }
4617
4698
  _Angle = Angle_Angle;
4618
4699
  (() => {
4619
- _Angle.init("Angle", Angle_TID300CobbAngle);
4700
+ _Angle.init('Angle', Angle_TID300CobbAngle);
4620
4701
  _Angle.registerLegacy();
4621
4702
  })();
4622
4703
 
@@ -4629,7 +4710,10 @@ _Angle = Angle_Angle;
4629
4710
 
4630
4711
 
4631
4712
 
4713
+
4632
4714
  var _CobbAngle;
4715
+ function Cornerstone3D_CobbAngle_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4716
+ function Cornerstone3D_CobbAngle_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Cornerstone3D_CobbAngle_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Cornerstone3D_CobbAngle_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4633
4717
  const {
4634
4718
  CobbAngle: CobbAngle_TID300CobbAngle
4635
4719
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -4642,17 +4726,15 @@ class CobbAngle_CobbAngle extends BaseAdapter3D {
4642
4726
  worldCoords,
4643
4727
  ReferencedFrameNumber
4644
4728
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, CobbAngle_CobbAngle.toolType);
4645
- state.annotation.data = {
4646
- ...state.annotation.data,
4647
- handles: {
4648
- ...state.annotation.data.handles,
4729
+ state.annotation.data = Cornerstone3D_CobbAngle_objectSpread(Cornerstone3D_CobbAngle_objectSpread({}, state.annotation.data), {}, {
4730
+ handles: Cornerstone3D_CobbAngle_objectSpread(Cornerstone3D_CobbAngle_objectSpread({}, state.annotation.data.handles), {}, {
4649
4731
  points: [worldCoords[0], worldCoords[1], worldCoords[2], worldCoords[3]]
4650
- },
4732
+ }),
4651
4733
  frameNumber: ReferencedFrameNumber
4652
- };
4734
+ });
4653
4735
  if (referencedImageId) {
4654
4736
  state.annotation.data.cachedStats = {
4655
- [`imageId:${referencedImageId}`]: {
4737
+ ["imageId:".concat(referencedImageId)]: {
4656
4738
  angle: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : null
4657
4739
  }
4658
4740
  };
@@ -4682,7 +4764,7 @@ class CobbAngle_CobbAngle extends BaseAdapter3D {
4682
4764
  const [point1, point2, point3, point4] = points;
4683
4765
  const {
4684
4766
  angle
4685
- } = cachedStats[`imageId:${referencedImageId}`] || {};
4767
+ } = cachedStats["imageId:".concat(referencedImageId)] || {};
4686
4768
  return {
4687
4769
  point1,
4688
4770
  point2,
@@ -4699,7 +4781,7 @@ class CobbAngle_CobbAngle extends BaseAdapter3D {
4699
4781
  }
4700
4782
  _CobbAngle = CobbAngle_CobbAngle;
4701
4783
  (() => {
4702
- _CobbAngle.init("CobbAngle", CobbAngle_TID300CobbAngle);
4784
+ _CobbAngle.init('CobbAngle', CobbAngle_TID300CobbAngle);
4703
4785
  _CobbAngle.registerLegacy();
4704
4786
  })();
4705
4787
 
@@ -4710,17 +4792,18 @@ function extractAllNUMGroups(MeasurementGroup, referencedSOPInstanceUID) {
4710
4792
  const numGroupsBySOPInstanceUID = {};
4711
4793
  if (MeasurementGroup.ContentSequence) {
4712
4794
  MeasurementGroup.ContentSequence.forEach(item => {
4713
- if (item.ValueType === "NUM" && item.ConceptNameCodeSequence) {
4795
+ if (item.ValueType === 'NUM' && item.ConceptNameCodeSequence) {
4796
+ var _item$MeasuredValueSe, _item$MeasuredValueSe2;
4714
4797
  const codeMeaning = item.ConceptNameCodeSequence.CodeMeaning;
4715
- const numericValue = item.MeasuredValueSequence?.NumericValue;
4716
- const unitCode = item.MeasuredValueSequence?.MeasurementUnitsCodeSequence?.CodeValue;
4798
+ const numericValue = (_item$MeasuredValueSe = item.MeasuredValueSequence) === null || _item$MeasuredValueSe === void 0 ? void 0 : _item$MeasuredValueSe.NumericValue;
4799
+ const unitCode = (_item$MeasuredValueSe2 = item.MeasuredValueSequence) === null || _item$MeasuredValueSe2 === void 0 || (_item$MeasuredValueSe2 = _item$MeasuredValueSe2.MeasurementUnitsCodeSequence) === null || _item$MeasuredValueSe2 === void 0 ? void 0 : _item$MeasuredValueSe2.CodeValue;
4717
4800
  if (numericValue !== undefined && referencedSOPInstanceUID) {
4718
4801
  if (!numGroupsBySOPInstanceUID[referencedSOPInstanceUID]) {
4719
4802
  numGroupsBySOPInstanceUID[referencedSOPInstanceUID] = {};
4720
4803
  }
4721
4804
  numGroupsBySOPInstanceUID[referencedSOPInstanceUID][codeMeaning] = {
4722
4805
  value: numericValue,
4723
- unit: unitCode || ""
4806
+ unit: unitCode || ''
4724
4807
  };
4725
4808
  }
4726
4809
  }
@@ -4730,22 +4813,22 @@ function extractAllNUMGroups(MeasurementGroup, referencedSOPInstanceUID) {
4730
4813
  }
4731
4814
  function restoreAdditionalMetrics(numGroups) {
4732
4815
  const additionalMetrics = {};
4733
- let modalityUnit = "";
4816
+ let modalityUnit = '';
4734
4817
  const metricMapping = {
4735
- Mean: "mean",
4736
- "Standard Deviation": "stdDev",
4737
- Maximum: "max",
4738
- Minimum: "min",
4739
- Area: "area",
4740
- Radius: "radius",
4741
- Perimeter: "perimeter",
4742
- Length: "length",
4743
- Width: "width"
4818
+ Mean: 'mean',
4819
+ 'Standard Deviation': 'stdDev',
4820
+ Maximum: 'max',
4821
+ Minimum: 'min',
4822
+ Area: 'area',
4823
+ Radius: 'radius',
4824
+ Perimeter: 'perimeter',
4825
+ Length: 'length',
4826
+ Width: 'width'
4744
4827
  };
4745
4828
  const unitCategory = {
4746
- area: "areaUnit",
4747
- radius: "radiusUnit",
4748
- width: "widthUnit"
4829
+ area: 'areaUnit',
4830
+ radius: 'radiusUnit',
4831
+ width: 'widthUnit'
4749
4832
  };
4750
4833
  for (const [codeMeaning, metricKey] of Object.entries(metricMapping)) {
4751
4834
  const group = numGroups[codeMeaning];
@@ -4772,7 +4855,7 @@ function restoreAdditionalMetrics(numGroups) {
4772
4855
  additionalMetrics[category] = unit;
4773
4856
  }
4774
4857
  } else {
4775
- additionalMetrics[`${metricKey}Unit`] = unit;
4858
+ additionalMetrics["".concat(metricKey, "Unit")] = unit;
4776
4859
  }
4777
4860
  }
4778
4861
  additionalMetrics.modalityUnit = modalityUnit;
@@ -4789,7 +4872,10 @@ function restoreAdditionalMetrics(numGroups) {
4789
4872
 
4790
4873
 
4791
4874
 
4875
+
4792
4876
  var _CircleROI;
4877
+ function CircleROI_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4878
+ function CircleROI_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? CircleROI_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : CircleROI_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4793
4879
  const {
4794
4880
  Circle: CircleROI_TID300Circle
4795
4881
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -4805,22 +4891,19 @@ class CircleROI extends BaseAdapter3D {
4805
4891
  const referencedSOPInstanceUID = state.sopInstanceUid;
4806
4892
  const allNUMGroups = extractAllNUMGroups(MeasurementGroup, referencedSOPInstanceUID);
4807
4893
  const measurementNUMGroups = allNUMGroups[referencedSOPInstanceUID] || {};
4808
- state.annotation.data = {
4809
- ...state.annotation.data,
4810
- handles: {
4811
- ...state.annotation.data.handles,
4894
+ state.annotation.data = CircleROI_objectSpread(CircleROI_objectSpread({}, state.annotation.data), {}, {
4895
+ handles: CircleROI_objectSpread(CircleROI_objectSpread({}, state.annotation.data.handles), {}, {
4812
4896
  points: worldCoords
4813
- },
4897
+ }),
4814
4898
  frameNumber: ReferencedFrameNumber
4815
- };
4899
+ });
4816
4900
  if (referencedImageId) {
4817
4901
  state.annotation.data.cachedStats = {
4818
- [`imageId:${referencedImageId}`]: {
4902
+ ["imageId:".concat(referencedImageId)]: CircleROI_objectSpread({
4819
4903
  area: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : 0,
4820
4904
  radius: 0,
4821
- perimeter: 0,
4822
- ...restoreAdditionalMetrics(measurementNUMGroups)
4823
- }
4905
+ perimeter: 0
4906
+ }, restoreAdditionalMetrics(measurementNUMGroups))
4824
4907
  };
4825
4908
  }
4826
4909
  return state;
@@ -4856,7 +4939,7 @@ class CircleROI extends BaseAdapter3D {
4856
4939
  modalityUnit,
4857
4940
  radiusUnit,
4858
4941
  areaUnit
4859
- } = cachedStats[`imageId:${referencedImageId}`] || {};
4942
+ } = cachedStats["imageId:".concat(referencedImageId)] || {};
4860
4943
  const perimeter = 2 * Math.PI * radius;
4861
4944
  return {
4862
4945
  area,
@@ -4880,7 +4963,7 @@ class CircleROI extends BaseAdapter3D {
4880
4963
  }
4881
4964
  _CircleROI = CircleROI;
4882
4965
  (() => {
4883
- _CircleROI.init("CircleROI", CircleROI_TID300Circle);
4966
+ _CircleROI.init('CircleROI', CircleROI_TID300Circle);
4884
4967
  _CircleROI.registerLegacy();
4885
4968
  })();
4886
4969
 
@@ -4894,7 +4977,10 @@ _CircleROI = CircleROI;
4894
4977
 
4895
4978
 
4896
4979
 
4980
+
4897
4981
  var _EllipticalROI;
4982
+ function EllipticalROI_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4983
+ function EllipticalROI_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? EllipticalROI_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : EllipticalROI_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4898
4984
  const {
4899
4985
  Ellipse: EllipticalROI_TID300Ellipse
4900
4986
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -4910,19 +4996,16 @@ class EllipticalROI extends BaseAdapter3D {
4910
4996
  const referencedSOPInstanceUID = state.sopInstanceUid;
4911
4997
  const allNUMGroups = extractAllNUMGroups(MeasurementGroup, referencedSOPInstanceUID);
4912
4998
  const measurementNUMGroups = allNUMGroups[referencedSOPInstanceUID] || {};
4913
- state.annotation.data = {
4914
- ...state.annotation.data,
4915
- handles: {
4916
- ...state.annotation.data.handles,
4999
+ state.annotation.data = EllipticalROI_objectSpread(EllipticalROI_objectSpread({}, state.annotation.data), {}, {
5000
+ handles: EllipticalROI_objectSpread(EllipticalROI_objectSpread({}, state.annotation.data.handles), {}, {
4917
5001
  points: worldCoords
4918
- },
5002
+ }),
4919
5003
  frameNumber: ReferencedFrameNumber
4920
- };
5004
+ });
4921
5005
  state.annotation.data.cachedStats = referencedImageId ? {
4922
- [`imageId:${referencedImageId}`]: {
4923
- area: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : 0,
4924
- ...restoreAdditionalMetrics(measurementNUMGroups)
4925
- }
5006
+ ["imageId:".concat(referencedImageId)]: EllipticalROI_objectSpread({
5007
+ area: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : 0
5008
+ }, restoreAdditionalMetrics(measurementNUMGroups))
4926
5009
  } : {};
4927
5010
  return state;
4928
5011
  }
@@ -4974,7 +5057,7 @@ class EllipticalROI extends BaseAdapter3D {
4974
5057
  stdDev,
4975
5058
  modalityUnit,
4976
5059
  areaUnit
4977
- } = cachedStats[`imageId:${referencedImageId}`] || {};
5060
+ } = cachedStats["imageId:".concat(referencedImageId)] || {};
4978
5061
  const convertedPoints = points.map(point => toScoord(scoordProps, point));
4979
5062
  return {
4980
5063
  area,
@@ -4994,7 +5077,7 @@ class EllipticalROI extends BaseAdapter3D {
4994
5077
  }
4995
5078
  }
4996
5079
  _EllipticalROI = EllipticalROI;
4997
- _EllipticalROI.init("EllipticalROI", EllipticalROI_TID300Ellipse);
5080
+ _EllipticalROI.init('EllipticalROI', EllipticalROI_TID300Ellipse);
4998
5081
 
4999
5082
 
5000
5083
 
@@ -5006,7 +5089,10 @@ _EllipticalROI.init("EllipticalROI", EllipticalROI_TID300Ellipse);
5006
5089
 
5007
5090
 
5008
5091
 
5092
+
5009
5093
  var _RectangleROI;
5094
+ function RectangleROI_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5095
+ function RectangleROI_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? RectangleROI_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : RectangleROI_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5010
5096
  const {
5011
5097
  Polyline: RectangleROI_TID300Polyline
5012
5098
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -5014,9 +5100,10 @@ class RectangleROI extends BaseAdapter3D {
5014
5100
  static isValidMeasurement(measurement) {
5015
5101
  const graphicItem = this.getGraphicItem(measurement);
5016
5102
  const pointsCount = this.getPointsCount(graphicItem);
5017
- return this.getGraphicType(graphicItem) === "POLYLINE" && (pointsCount === 4 || pointsCount === 5);
5103
+ return this.getGraphicType(graphicItem) === 'POLYLINE' && (pointsCount === 4 || pointsCount === 5);
5018
5104
  }
5019
5105
  static getMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata) {
5106
+ var _areaGroup$MeasuredVa, _areaGroup$MeasuredVa2;
5020
5107
  const {
5021
5108
  state,
5022
5109
  worldCoords,
@@ -5024,26 +5111,24 @@ class RectangleROI extends BaseAdapter3D {
5024
5111
  ReferencedFrameNumber
5025
5112
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, this.toolType);
5026
5113
  const points = worldCoords.length === 5 ? worldCoords.slice(0, 4) : worldCoords;
5027
- const areaGroup = MeasurementGroup.ContentSequence.find(g => g.ValueType === "NUM" && g.ConceptNameCodeSequence[0].CodeMeaning === "Area");
5114
+ const areaGroup = MeasurementGroup.ContentSequence.find(g => g.ValueType === 'NUM' && g.ConceptNameCodeSequence.CodeMeaning === 'Area');
5028
5115
  const referencedSOPInstanceUID = state.sopInstanceUid;
5029
5116
  const allNUMGroups = extractAllNUMGroups(MeasurementGroup, referencedSOPInstanceUID);
5030
5117
  const measurementNUMGroups = allNUMGroups[referencedSOPInstanceUID] || {};
5031
5118
  const cachedStats = referencedImageId ? {
5032
- [`imageId:${referencedImageId}`]: {
5033
- area: areaGroup?.MeasuredValueSequence?.[0]?.NumericValue || 0,
5034
- areaUnit: areaGroup?.MeasuredValueSequence?.[0]?.MeasurementUnitsCodeSequence?.CodeValue,
5035
- ...restoreAdditionalMetrics(measurementNUMGroups)
5036
- }
5119
+ ["imageId:".concat(referencedImageId)]: RectangleROI_objectSpread({
5120
+ area: (areaGroup === null || areaGroup === void 0 || (_areaGroup$MeasuredVa = areaGroup.MeasuredValueSequence) === null || _areaGroup$MeasuredVa === void 0 || (_areaGroup$MeasuredVa = _areaGroup$MeasuredVa[0]) === null || _areaGroup$MeasuredVa === void 0 ? void 0 : _areaGroup$MeasuredVa.NumericValue) || 0,
5121
+ areaUnit: areaGroup === null || areaGroup === void 0 || (_areaGroup$MeasuredVa2 = areaGroup.MeasuredValueSequence) === null || _areaGroup$MeasuredVa2 === void 0 || (_areaGroup$MeasuredVa2 = _areaGroup$MeasuredVa2[0]) === null || _areaGroup$MeasuredVa2 === void 0 || (_areaGroup$MeasuredVa2 = _areaGroup$MeasuredVa2.MeasurementUnitsCodeSequence) === null || _areaGroup$MeasuredVa2 === void 0 ? void 0 : _areaGroup$MeasuredVa2.CodeValue
5122
+ }, restoreAdditionalMetrics(measurementNUMGroups))
5037
5123
  } : {};
5038
- state.annotation.data = {
5039
- ...state.annotation.data,
5040
- handles: {
5041
- ...state.annotation.data.handles,
5042
- points: [points[0], points[1], points[3], points[2]]
5043
- },
5124
+ const handlesPoints = [points[0], points[1], points[3], points[2]];
5125
+ state.annotation.data = RectangleROI_objectSpread(RectangleROI_objectSpread({}, state.annotation.data), {}, {
5126
+ handles: RectangleROI_objectSpread(RectangleROI_objectSpread({}, state.annotation.data.handles), {}, {
5127
+ points: handlesPoints
5128
+ }),
5044
5129
  cachedStats,
5045
5130
  frameNumber: ReferencedFrameNumber
5046
- };
5131
+ });
5047
5132
  return state;
5048
5133
  }
5049
5134
  static getTID300RepresentationArguments(tool) {
@@ -5070,7 +5155,7 @@ class RectangleROI extends BaseAdapter3D {
5070
5155
  stdDev,
5071
5156
  areaUnit,
5072
5157
  modalityUnit
5073
- } = data.cachedStats[`imageId:${referencedImageId}`] || {};
5158
+ } = data.cachedStats["imageId:".concat(referencedImageId)] || {};
5074
5159
  return {
5075
5160
  points: [corners[0], corners[1], corners[3], corners[2], corners[0]],
5076
5161
  area,
@@ -5089,10 +5174,10 @@ class RectangleROI extends BaseAdapter3D {
5089
5174
  }
5090
5175
  _RectangleROI = RectangleROI;
5091
5176
  (() => {
5092
- _RectangleROI.init("RectangleROI", RectangleROI_TID300Polyline);
5177
+ _RectangleROI.init('RectangleROI', RectangleROI_TID300Polyline);
5093
5178
  _RectangleROI.registerLegacy();
5094
- _RectangleROI.registerType("DCM:111030", "POLYLINE", 4);
5095
- _RectangleROI.registerType("DCM:111030", "POLYLINE", 5);
5179
+ _RectangleROI.registerType('DCM:111030', 'POLYLINE', 4);
5180
+ _RectangleROI.registerType('DCM:111030', 'POLYLINE', 5);
5096
5181
  })();
5097
5182
 
5098
5183
 
@@ -5104,11 +5189,14 @@ _RectangleROI = RectangleROI;
5104
5189
 
5105
5190
 
5106
5191
 
5192
+
5107
5193
  var _Length;
5194
+ function Length_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5195
+ function Length_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Length_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Length_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5108
5196
  const {
5109
5197
  Length: Length_TID300Length
5110
5198
  } = dcmjs_es/* utilities */.BF.TID300;
5111
- const Length_LENGTH = "Length";
5199
+ const Length_LENGTH = 'Length';
5112
5200
  class Length_Length extends BaseAdapter3D {
5113
5201
  static getMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata) {
5114
5202
  const {
@@ -5119,21 +5207,19 @@ class Length_Length extends BaseAdapter3D {
5119
5207
  ReferencedFrameNumber
5120
5208
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, this.toolType);
5121
5209
  const cachedStats = referencedImageId ? {
5122
- [`imageId:${referencedImageId}`]: {
5210
+ ["imageId:".concat(referencedImageId)]: {
5123
5211
  length: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : 0,
5124
5212
  unit: NUMGroup.MeasuredValueSequence.MeasurementUnitsCodeSequence.CodeValue
5125
5213
  }
5126
5214
  } : {};
5127
- state.annotation.data = {
5128
- ...state.annotation.data,
5129
- handles: {
5130
- ...state.annotation.data.handles,
5215
+ state.annotation.data = Length_objectSpread(Length_objectSpread({}, state.annotation.data), {}, {
5216
+ handles: Length_objectSpread(Length_objectSpread({}, state.annotation.data.handles), {}, {
5131
5217
  points: [worldCoords[0], worldCoords[1]],
5132
5218
  activeHandleIndex: 0
5133
- },
5219
+ }),
5134
5220
  cachedStats,
5135
5221
  frameNumber: ReferencedFrameNumber
5136
- };
5222
+ });
5137
5223
  return state;
5138
5224
  }
5139
5225
  static getTID300RepresentationArguments(tool) {
@@ -5159,7 +5245,7 @@ class Length_Length extends BaseAdapter3D {
5159
5245
  const point2 = toScoord(scoordProps, handles.points[1]);
5160
5246
  const {
5161
5247
  length: distance
5162
- } = cachedStats[`imageId:${referencedImageId}`] || {};
5248
+ } = cachedStats["imageId:".concat(referencedImageId)] || {};
5163
5249
  return {
5164
5250
  point1,
5165
5251
  point2,
@@ -5181,6 +5267,100 @@ _Length = Length_Length;
5181
5267
 
5182
5268
  // EXTERNAL MODULE: ../../../node_modules/gl-matrix/esm/index.js + 1 modules
5183
5269
  var gl_matrix_esm = __webpack_require__(3823);
5270
+ ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/Cornerstone3D/ControlPointPolyline.js
5271
+
5272
+
5273
+
5274
+ const {
5275
+ valueTypes: ControlPointPolyline_valueTypes
5276
+ } = dcmjs_es.sr;
5277
+ const {
5278
+ Polyline: ControlPointPolyline_TID300Polyline
5279
+ } = dcmjs_es/* utilities */.BF.TID300;
5280
+ class ControlPointPolyline extends ControlPointPolyline_TID300Polyline {
5281
+ contentItem() {
5282
+ const contentEntries = super.contentItem();
5283
+ const self = this;
5284
+ const {
5285
+ controlPoints,
5286
+ use3DSpatialCoordinates,
5287
+ ReferencedSOPSequence,
5288
+ ReferencedFrameOfReferenceUID,
5289
+ use3DSpatialCoordinates: is3DMeasurement
5290
+ } = self.props;
5291
+ if (!(controlPoints !== null && controlPoints !== void 0 && controlPoints.length)) {
5292
+ return contentEntries;
5293
+ }
5294
+ const GraphicData = self.flattenPoints({
5295
+ points: controlPoints,
5296
+ use3DSpatialCoordinates
5297
+ });
5298
+ const GraphicType = ControlPointPolyline_valueTypes.GraphicTypes.MULTIPOINT;
5299
+ const scoordPlain = is3DMeasurement ? {
5300
+ RelationshipType: ControlPointPolyline_valueTypes.RelationshipTypes.CONTAINS,
5301
+ ValueType: 'SCOORD3D',
5302
+ ConceptNameCodeSequence: [{
5303
+ CodeValue: CONTROL_POINTS_CODE.value,
5304
+ CodingSchemeDesignator: CONTROL_POINTS_CODE.schemeDesignator,
5305
+ CodeMeaning: CONTROL_POINTS_CODE.meaning
5306
+ }],
5307
+ GraphicType,
5308
+ GraphicData,
5309
+ ReferencedFrameOfReferenceUID,
5310
+ ContentSequence: [{
5311
+ RelationshipType: ControlPointPolyline_valueTypes.RelationshipTypes.SELECTED_FROM,
5312
+ ValueType: ControlPointPolyline_valueTypes.ValueTypes.IMAGE,
5313
+ ReferencedSOPSequence
5314
+ }]
5315
+ } : {
5316
+ RelationshipType: ControlPointPolyline_valueTypes.RelationshipTypes.CONTAINS,
5317
+ ValueType: 'SCOORD',
5318
+ ConceptNameCodeSequence: [{
5319
+ CodeValue: CONTROL_POINTS_CODE.value,
5320
+ CodingSchemeDesignator: CONTROL_POINTS_CODE.schemeDesignator,
5321
+ CodeMeaning: CONTROL_POINTS_CODE.meaning
5322
+ }],
5323
+ GraphicType,
5324
+ GraphicData,
5325
+ ContentSequence: [{
5326
+ RelationshipType: ControlPointPolyline_valueTypes.RelationshipTypes.SELECTED_FROM,
5327
+ ValueType: ControlPointPolyline_valueTypes.ValueTypes.IMAGE,
5328
+ ReferencedSOPSequence
5329
+ }]
5330
+ };
5331
+ const {
5332
+ splineType
5333
+ } = self.props;
5334
+ const entries = contentEntries;
5335
+ const numEntry = entries.find(e => e.ValueType === 'NUM');
5336
+ if (numEntry) {
5337
+ const inner = numEntry.ContentSequence;
5338
+ const innerArray = Array.isArray(inner) ? inner : inner ? [inner] : [];
5339
+ numEntry.ContentSequence = [...innerArray, scoordPlain];
5340
+ } else {
5341
+ entries.push(scoordPlain);
5342
+ }
5343
+ if (splineType) {
5344
+ const splineTypeObsContext = {
5345
+ RelationshipType: ControlPointPolyline_valueTypes.RelationshipTypes.HAS_OBS_CONTEXT,
5346
+ ValueType: 'TEXT',
5347
+ ConceptNameCodeSequence: {
5348
+ CodeValue: SPLINE_TYPE_CODE.value,
5349
+ CodingSchemeDesignator: SPLINE_TYPE_CODE.schemeDesignator,
5350
+ CodeMeaning: SPLINE_TYPE_CODE.meaning
5351
+ },
5352
+ TextValue: splineType
5353
+ };
5354
+ const hasObsContextIndex = entries.findIndex(e => e.RelationshipType === ControlPointPolyline_valueTypes.RelationshipTypes.HAS_OBS_CONTEXT);
5355
+ const insertIndex = hasObsContextIndex >= 0 ? hasObsContextIndex + 2 : 2;
5356
+ entries.splice(insertIndex, 0, splineTypeObsContext);
5357
+ }
5358
+ return entries;
5359
+ }
5360
+ }
5361
+
5362
+
5363
+
5184
5364
  ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/Cornerstone3D/PlanarFreehandROI.js
5185
5365
 
5186
5366
 
@@ -5190,12 +5370,16 @@ var gl_matrix_esm = __webpack_require__(3823);
5190
5370
 
5191
5371
 
5192
5372
 
5373
+
5374
+
5375
+
5376
+
5193
5377
  var _PlanarFreehandROI;
5194
- const {
5195
- Polyline: PlanarFreehandROI_TID300Polyline
5196
- } = dcmjs_es/* utilities */.BF.TID300;
5378
+ function PlanarFreehandROI_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5379
+ function PlanarFreehandROI_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? PlanarFreehandROI_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : PlanarFreehandROI_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5197
5380
  class PlanarFreehandROI extends BaseAdapter3D {
5198
5381
  static getMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata) {
5382
+ var _state$annotation$dat, _state$annotation$dat2, _numSeq$find;
5199
5383
  const {
5200
5384
  state,
5201
5385
  NUMGroup,
@@ -5209,36 +5393,45 @@ class PlanarFreehandROI extends BaseAdapter3D {
5209
5393
  worldCoords.pop();
5210
5394
  isOpenContour = false;
5211
5395
  }
5212
- const points = [];
5213
- if (isOpenContour) {
5214
- points.push(worldCoords[0], worldCoords[worldCoords.length - 1]);
5396
+ let points = (_state$annotation$dat = (_state$annotation$dat2 = state.annotation.data.handles) === null || _state$annotation$dat2 === void 0 ? void 0 : _state$annotation$dat2.points) !== null && _state$annotation$dat !== void 0 ? _state$annotation$dat : [];
5397
+ if (isOpenContour && points.length === 0) {
5398
+ points = [worldCoords[0], worldCoords[worldCoords.length - 1]];
5215
5399
  }
5216
5400
  const referencedSOPInstanceUID = state.sopInstanceUid;
5217
5401
  const allNUMGroups = extractAllNUMGroups(MeasurementGroup, referencedSOPInstanceUID);
5218
5402
  const measurementNUMGroups = allNUMGroups[referencedSOPInstanceUID] || {};
5219
- state.annotation.data = {
5220
- ...state.annotation.data,
5403
+ const SPLINE_TYPE = {
5404
+ CodingSchemeDesignator: SPLINE_TYPE_CODE.schemeDesignator,
5405
+ CodeValue: SPLINE_TYPE_CODE.value
5406
+ };
5407
+ const numSeq = NUMGroup ? toArray(NUMGroup.ContentSequence) : [];
5408
+ const mgContentSeq = toArray(MeasurementGroup.ContentSequence);
5409
+ const splineTypeItem = (_numSeq$find = numSeq.find(item => MeasurementReport_MeasurementReport.codeValueMatch(item, SPLINE_TYPE))) !== null && _numSeq$find !== void 0 ? _numSeq$find : mgContentSeq.find(item => MeasurementReport_MeasurementReport.codeValueMatch(item, SPLINE_TYPE));
5410
+ state.annotation.data = PlanarFreehandROI_objectSpread(PlanarFreehandROI_objectSpread({}, state.annotation.data), {}, {
5221
5411
  contour: {
5222
5412
  polyline: worldCoords,
5223
5413
  closed: !isOpenContour
5224
5414
  },
5225
- handles: {
5226
- ...state.annotation.data.handles,
5415
+ handles: PlanarFreehandROI_objectSpread(PlanarFreehandROI_objectSpread({}, state.annotation.data.handles), {}, {
5227
5416
  points
5228
- },
5417
+ }),
5229
5418
  frameNumber: ReferencedFrameNumber
5230
- };
5419
+ }, splineTypeItem && {
5420
+ spline: {
5421
+ type: splineTypeItem.TextValue
5422
+ }
5423
+ });
5231
5424
  if (referencedImageId) {
5232
5425
  state.annotation.data.cachedStats = {
5233
- [`imageId:${referencedImageId}`]: {
5234
- area: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : null,
5235
- ...restoreAdditionalMetrics(measurementNUMGroups)
5236
- }
5426
+ ["imageId:".concat(referencedImageId)]: PlanarFreehandROI_objectSpread({
5427
+ area: NUMGroup ? NUMGroup.MeasuredValueSequence.NumericValue : null
5428
+ }, restoreAdditionalMetrics(measurementNUMGroups))
5237
5429
  };
5238
5430
  }
5239
5431
  return state;
5240
5432
  }
5241
5433
  static getTID300RepresentationArguments(tool) {
5434
+ var _handles$points, _data$spline;
5242
5435
  let is3DMeasurement = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
5243
5436
  const {
5244
5437
  data,
@@ -5246,6 +5439,9 @@ class PlanarFreehandROI extends BaseAdapter3D {
5246
5439
  findingSites,
5247
5440
  metadata
5248
5441
  } = tool;
5442
+ const {
5443
+ handles
5444
+ } = data;
5249
5445
  const {
5250
5446
  polyline,
5251
5447
  closed
@@ -5263,6 +5459,7 @@ class PlanarFreehandROI extends BaseAdapter3D {
5263
5459
  const firstPoint = points[0];
5264
5460
  points.push(firstPoint);
5265
5461
  }
5462
+ const controlPoints = (handles === null || handles === void 0 || (_handles$points = handles.points) === null || _handles$points === void 0 ? void 0 : _handles$points.length) && toScoords(scoordProps, handles.points);
5266
5463
  const {
5267
5464
  area,
5268
5465
  areaUnit,
@@ -5272,16 +5469,18 @@ class PlanarFreehandROI extends BaseAdapter3D {
5272
5469
  max,
5273
5470
  stdDev,
5274
5471
  length
5275
- } = data.cachedStats[`imageId:${referencedImageId}`] || {};
5472
+ } = data.cachedStats["imageId:".concat(referencedImageId)] || {};
5276
5473
  return {
5277
5474
  points,
5475
+ controlPoints,
5278
5476
  area,
5279
5477
  areaUnit,
5280
- perimeter: perimeter ?? length,
5478
+ perimeter: perimeter !== null && perimeter !== void 0 ? perimeter : length,
5281
5479
  modalityUnit,
5282
5480
  mean,
5283
5481
  max,
5284
5482
  stdDev,
5483
+ splineType: (_data$spline = data.spline) === null || _data$spline === void 0 ? void 0 : _data$spline.type,
5285
5484
  trackingIdentifierTextValue: this.trackingIdentifierTextValue,
5286
5485
  finding,
5287
5486
  findingSites: findingSites || [],
@@ -5292,7 +5491,11 @@ class PlanarFreehandROI extends BaseAdapter3D {
5292
5491
  }
5293
5492
  _PlanarFreehandROI = PlanarFreehandROI;
5294
5493
  _PlanarFreehandROI.closedContourThreshold = 1e-5;
5295
- _PlanarFreehandROI.init("PlanarFreehandROI", PlanarFreehandROI_TID300Polyline);
5494
+ (() => {
5495
+ _PlanarFreehandROI.init('PlanarFreehandROI', ControlPointPolyline);
5496
+ _PlanarFreehandROI.registerSubType(_PlanarFreehandROI, 'LivewireContour');
5497
+ _PlanarFreehandROI.registerSubType(_PlanarFreehandROI, 'SplineROI');
5498
+ })();
5296
5499
 
5297
5500
 
5298
5501
 
@@ -5303,16 +5506,20 @@ _PlanarFreehandROI.init("PlanarFreehandROI", PlanarFreehandROI_TID300Polyline);
5303
5506
 
5304
5507
 
5305
5508
 
5509
+
5306
5510
  var _Probe;
5511
+ function Probe_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5512
+ function Probe_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Probe_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Probe_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5307
5513
  const {
5308
5514
  Point: Probe_TID300Point
5309
5515
  } = dcmjs_es/* utilities */.BF.TID300;
5310
5516
  class Probe extends BaseAdapter3D {
5311
5517
  static isValidMeasurement(measurement) {
5312
5518
  const graphicItem = this.getGraphicItem(measurement);
5313
- return this.getGraphicType(graphicItem) === "POINT" && this.getPointsCount(graphicItem) <= 2;
5519
+ return this.getGraphicType(graphicItem) === 'POINT' && this.getPointsCount(graphicItem) <= 2;
5314
5520
  }
5315
5521
  static getMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, _trackingIdentifier) {
5522
+ var _NUMGroup$MeasuredVal, _NUMGroup$MeasuredVal2;
5316
5523
  const {
5317
5524
  state,
5318
5525
  NUMGroup,
@@ -5321,20 +5528,18 @@ class Probe extends BaseAdapter3D {
5321
5528
  ReferencedFrameNumber
5322
5529
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(MeasurementGroup, sopInstanceUIDToImageIdMap, metadata, this.toolType);
5323
5530
  const cachedStats = referencedImageId ? {
5324
- [`imageId:${referencedImageId}`]: {
5325
- value: NUMGroup?.MeasuredValueSequence?.NumericValue ?? null
5531
+ ["imageId:".concat(referencedImageId)]: {
5532
+ value: (_NUMGroup$MeasuredVal = NUMGroup === null || NUMGroup === void 0 || (_NUMGroup$MeasuredVal2 = NUMGroup.MeasuredValueSequence) === null || _NUMGroup$MeasuredVal2 === void 0 ? void 0 : _NUMGroup$MeasuredVal2.NumericValue) !== null && _NUMGroup$MeasuredVal !== void 0 ? _NUMGroup$MeasuredVal : null
5326
5533
  }
5327
5534
  } : {};
5328
- state.annotation.data = {
5329
- ...state.annotation.data,
5330
- handles: {
5331
- ...state.annotation.data.handles,
5535
+ state.annotation.data = Probe_objectSpread(Probe_objectSpread({}, state.annotation.data), {}, {
5536
+ handles: Probe_objectSpread(Probe_objectSpread({}, state.annotation.data.handles), {}, {
5332
5537
  points: worldCoords
5333
- },
5538
+ }),
5334
5539
  cachedStats,
5335
5540
  frameNumber: ReferencedFrameNumber,
5336
5541
  invalidated: true
5337
- };
5542
+ });
5338
5543
  return state;
5339
5544
  }
5340
5545
  static getTID300RepresentationArguments(tool) {
@@ -5372,10 +5577,10 @@ class Probe extends BaseAdapter3D {
5372
5577
  }
5373
5578
  _Probe = Probe;
5374
5579
  (() => {
5375
- _Probe.init("Probe", Probe_TID300Point);
5580
+ _Probe.init('Probe', Probe_TID300Point);
5376
5581
  _Probe.registerLegacy();
5377
- _Probe.registerType("DCM:111030", "POINT", 1);
5378
- _Probe.registerType("DCM:111030", "POINT", 2);
5582
+ _Probe.registerType('DCM:111030', 'POINT', 1);
5583
+ _Probe.registerType('DCM:111030', 'POINT', 2);
5379
5584
  })();
5380
5585
 
5381
5586
 
@@ -5386,7 +5591,10 @@ _Probe = Probe;
5386
5591
 
5387
5592
 
5388
5593
 
5594
+
5389
5595
  var _UltrasoundDirectional;
5596
+ function UltrasoundDirectional_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5597
+ function UltrasoundDirectional_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? UltrasoundDirectional_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : UltrasoundDirectional_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5390
5598
  const {
5391
5599
  Length: UltrasoundDirectional_TID300Length
5392
5600
  } = dcmjs_es/* utilities */.BF.TID300;
@@ -5400,14 +5608,12 @@ class UltrasoundDirectional extends BaseAdapter3D {
5400
5608
  worldCoords,
5401
5609
  ReferencedFrameNumber
5402
5610
  } = MeasurementReport_MeasurementReport.getSetupMeasurementData(measurementGroup, sopInstanceUIDToImageIdMap, metadata, this.toolType);
5403
- state.annotation.data = {
5404
- ...state.annotation.data,
5405
- handles: {
5406
- ...state.annotation.data.handles,
5611
+ state.annotation.data = UltrasoundDirectional_objectSpread(UltrasoundDirectional_objectSpread({}, state.annotation.data), {}, {
5612
+ handles: UltrasoundDirectional_objectSpread(UltrasoundDirectional_objectSpread({}, state.annotation.data.handles), {}, {
5407
5613
  points: worldCoords
5408
- },
5614
+ }),
5409
5615
  frameNumber: ReferencedFrameNumber
5410
- };
5616
+ });
5411
5617
  return state;
5412
5618
  }
5413
5619
  static getTID300RepresentationArguments(tool, is3DMeasurement) {
@@ -5424,7 +5630,7 @@ class UltrasoundDirectional extends BaseAdapter3D {
5424
5630
  referencedImageId
5425
5631
  } = metadata;
5426
5632
  if (!referencedImageId) {
5427
- throw new Error("UltrasoundDirectionalTool.getTID300RepresentationArguments: referencedImageId is not defined");
5633
+ throw new Error('UltrasoundDirectionalTool.getTID300RepresentationArguments: referencedImageId is not defined');
5428
5634
  }
5429
5635
  const start = worldToImageCoords(referencedImageId, handles.points[0]);
5430
5636
  const end = worldToImageCoords(referencedImageId, handles.points[1]);
@@ -5446,7 +5652,7 @@ class UltrasoundDirectional extends BaseAdapter3D {
5446
5652
  }
5447
5653
  }
5448
5654
  _UltrasoundDirectional = UltrasoundDirectional;
5449
- _UltrasoundDirectional.init("UltrasoundDirectionalTool", UltrasoundDirectional_TID300Length);
5655
+ _UltrasoundDirectional.init('UltrasoundDirectionalTool', UltrasoundDirectional_TID300Length);
5450
5656
 
5451
5657
 
5452
5658
 
@@ -5455,6 +5661,9 @@ _UltrasoundDirectional.init("UltrasoundDirectionalTool", UltrasoundDirectional_T
5455
5661
 
5456
5662
 
5457
5663
 
5664
+
5665
+ function generateSegmentation_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5666
+ function generateSegmentation_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? generateSegmentation_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : generateSegmentation_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5458
5667
  const {
5459
5668
  MetadataModules: generateSegmentation_MetadataModules
5460
5669
  } = esm.Enums;
@@ -5468,7 +5677,7 @@ function generateSegmentation_generateSegmentation(images, labelmaps, metadata)
5468
5677
  let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
5469
5678
  const segmentation = _createMultiframeSegmentationFromReferencedImages(images, metadata, options);
5470
5679
  const segmentationResult = fillSegmentation(segmentation, labelmaps, options);
5471
- const predecessorImageId = options?.predecessorImageId;
5680
+ const predecessorImageId = options === null || options === void 0 ? void 0 : options.predecessorImageId;
5472
5681
  if (predecessorImageId) {
5473
5682
  const predecessor = metadata.get(generateSegmentation_MetadataModules.PREDECESSOR_SEQUENCE, predecessorImageId);
5474
5683
  Object.assign(segmentationResult, predecessor);
@@ -5476,7 +5685,7 @@ function generateSegmentation_generateSegmentation(images, labelmaps, metadata)
5476
5685
  return segmentationResult;
5477
5686
  }
5478
5687
  function _createMultiframeSegmentationFromReferencedImages(images, metadata, options) {
5479
- const studyImageId = options?.predecessorImageId || images[0].imageId;
5688
+ const studyImageId = (options === null || options === void 0 ? void 0 : options.predecessorImageId) || images[0].imageId;
5480
5689
  const studyData = metadata.get(generateSegmentation_MetadataModules.STUDY_DATA, studyImageId);
5481
5690
  const datasets = images.map(image => {
5482
5691
  const {
@@ -5484,17 +5693,14 @@ function _createMultiframeSegmentationFromReferencedImages(images, metadata, opt
5484
5693
  } = image;
5485
5694
  const seriesData = metadata.get(generateSegmentation_MetadataModules.SERIES_DATA, imageId);
5486
5695
  const imageData = metadata.get(generateSegmentation_MetadataModules.IMAGE_DATA, imageId);
5487
- return {
5488
- ...studyData,
5489
- ...seriesData,
5490
- ...imageData,
5696
+ return generateSegmentation_objectSpread(generateSegmentation_objectSpread(generateSegmentation_objectSpread(generateSegmentation_objectSpread({}, studyData), seriesData), imageData), {}, {
5491
5697
  PixelData: image.voxelManager.getScalarData(),
5492
5698
  BitsAllocated: 16,
5493
5699
  _vrMap: {
5494
5700
  PixelData: 'OW'
5495
5701
  },
5496
5702
  _meta: {}
5497
- };
5703
+ });
5498
5704
  });
5499
5705
  const isSingleNonMultiFrame = datasets.length === 1 && !(datasets[0].NumberOfFrames > 1);
5500
5706
  if (isSingleNonMultiFrame) {
@@ -5508,14 +5714,15 @@ function _createMultiframeSegmentationFromReferencedImages(images, metadata, opt
5508
5714
  if (!multiframe) {
5509
5715
  throw new Error('Failed to normalize the multiframe dataset, the data is not multi-frame.');
5510
5716
  }
5511
- multiframe.SharedFunctionalGroupsSequence ||= {};
5717
+ multiframe.SharedFunctionalGroupsSequence || (multiframe.SharedFunctionalGroupsSequence = {});
5512
5718
  multiframe.SharedFunctionalGroupsSequence.PixelMeasuresSequence = {};
5513
- multiframe.PerFrameFunctionalGroupsSequence ||= [];
5719
+ multiframe.PerFrameFunctionalGroupsSequence || (multiframe.PerFrameFunctionalGroupsSequence = []);
5514
5720
  for (let index = 0; index < images.length; index++) {
5515
- multiframe.PerFrameFunctionalGroupsSequence[index] ||= {
5721
+ var _multiframe$PerFrameF, _index;
5722
+ (_multiframe$PerFrameF = multiframe.PerFrameFunctionalGroupsSequence)[_index = index] || (_multiframe$PerFrameF[_index] = {
5516
5723
  PlanePositionSequence: {},
5517
5724
  PlaneOrientationSequence: {}
5518
- };
5725
+ });
5519
5726
  }
5520
5727
  if (isSingleNonMultiFrame) {
5521
5728
  multiframe.PerFrameFunctionalGroupsSequence = [multiframe.PerFrameFunctionalGroupsSequence[0]];
@@ -5700,11 +5907,11 @@ async function createLabelmapsFromBufferInternal(referencedImageIds, arrayBuffer
5700
5907
  const dataset = labelmapImagesFromBuffer_DicomMetaDictionary.naturalizeDataset(dicomData.dict);
5701
5908
  dataset._meta = labelmapImagesFromBuffer_DicomMetaDictionary.namifyDataset(dicomData.meta);
5702
5909
  const multiframe = labelmapImagesFromBuffer_Normalizer.normalizeToDataset([dataset]);
5703
- const imagePlaneModule = metadataProvider.get("imagePlaneModule", referencedImageIds[0]);
5704
- const generalSeriesModule = metadataProvider.get("generalSeriesModule", referencedImageIds[0]);
5910
+ const imagePlaneModule = metadataProvider.get('imagePlaneModule', referencedImageIds[0]);
5911
+ const generalSeriesModule = metadataProvider.get('generalSeriesModule', referencedImageIds[0]);
5705
5912
  const SeriesInstanceUID = generalSeriesModule.seriesInstanceUID;
5706
5913
  if (!imagePlaneModule) {
5707
- console.warn("Insufficient metadata, imagePlaneModule missing.");
5914
+ console.warn('Insufficient metadata, imagePlaneModule missing.');
5708
5915
  }
5709
5916
  const ImageOrientationPatient = Array.isArray(imagePlaneModule.rowCosines) ? [...imagePlaneModule.rowCosines, ...imagePlaneModule.columnCosines] : [imagePlaneModule.rowCosines.x, imagePlaneModule.rowCosines.y, imagePlaneModule.rowCosines.z, imagePlaneModule.columnCosines.x, imagePlaneModule.columnCosines.y, imagePlaneModule.columnCosines.z];
5710
5917
  const validOrientations = Segmentation_4X_getValidOrientations(ImageOrientationPatient);
@@ -5712,11 +5919,11 @@ async function createLabelmapsFromBufferInternal(referencedImageIds, arrayBuffer
5712
5919
  const TransferSyntaxUID = multiframe._meta.TransferSyntaxUID.Value[0];
5713
5920
  let pixelData;
5714
5921
  let pixelDataChunks;
5715
- if (TransferSyntaxUID === "1.2.840.10008.1.2.5") {
5922
+ if (TransferSyntaxUID === '1.2.840.10008.1.2.5') {
5716
5923
  const rleEncodedFrames = Array.isArray(multiframe.PixelData) ? multiframe.PixelData : [multiframe.PixelData];
5717
5924
  pixelData = labelmapImagesFromBuffer_decode(rleEncodedFrames, multiframe.Rows, multiframe.Columns);
5718
5925
  if (multiframe.BitsStored === 1) {
5719
- console.warn("No implementation for rle + bit packing.");
5926
+ console.warn('No implementation for rle + bit packing.');
5720
5927
  return;
5721
5928
  }
5722
5929
  pixelDataChunks = [pixelData];
@@ -5725,26 +5932,26 @@ async function createLabelmapsFromBufferInternal(referencedImageIds, arrayBuffer
5725
5932
  maxBytesPerChunk
5726
5933
  });
5727
5934
  if (!pixelDataChunks) {
5728
- throw new Error("Fractional segmentations are not yet supported");
5935
+ throw new Error('Fractional segmentations are not yet supported');
5729
5936
  }
5730
5937
  }
5731
5938
  const orientation = checkOrientation(multiframe, validOrientations, [imagePlaneModule.rows, imagePlaneModule.columns, referencedImageIds.length], tolerance);
5732
5939
  const sopUIDImageIdIndexMap = referencedImageIds.reduce((acc, imageId) => {
5733
5940
  const {
5734
5941
  sopInstanceUID
5735
- } = metadataProvider.get("generalImageModule", imageId);
5942
+ } = metadataProvider.get('generalImageModule', imageId);
5736
5943
  acc[sopInstanceUID] = imageId;
5737
5944
  return acc;
5738
5945
  }, {});
5739
5946
  let insertFunction;
5740
5947
  switch (orientation) {
5741
- case "Planar":
5948
+ case 'Planar':
5742
5949
  insertFunction = labelmapImagesFromBuffer_insertPixelDataPlanar;
5743
5950
  break;
5744
- case "Perpendicular":
5745
- throw new Error("Segmentations orthogonal to the acquisition plane of the source data are not yet supported.");
5746
- case "Oblique":
5747
- throw new Error("Segmentations oblique to the acquisition plane of the source data are not yet supported.");
5951
+ case 'Perpendicular':
5952
+ throw new Error('Segmentations orthogonal to the acquisition plane of the source data are not yet supported.');
5953
+ case 'Oblique':
5954
+ throw new Error('Segmentations oblique to the acquisition plane of the source data are not yet supported.');
5748
5955
  }
5749
5956
  const segmentsOnFrame = [];
5750
5957
  const imageIdMaps = {
@@ -5755,7 +5962,7 @@ async function createLabelmapsFromBufferInternal(referencedImageIds, arrayBuffer
5755
5962
  for (let i = 0; i < referencedImageIds.length; i++) {
5756
5963
  const referenceImageId = referencedImageIds[i];
5757
5964
  imageIdMaps.indices[referenceImageId] = i;
5758
- imageIdMaps.metadata[referenceImageId] = metadataProvider.get("instance", referenceImageId);
5965
+ imageIdMaps.metadata[referenceImageId] = metadataProvider.get('instance', referenceImageId);
5759
5966
  const labelMapImage = esm.imageLoader.createAndCacheDerivedLabelmapImage(referenceImageId);
5760
5967
  labelMapImages.push(labelMapImage);
5761
5968
  }
@@ -5830,23 +6037,23 @@ function labelmapImagesFromBuffer_insertPixelDataPlanar(_ref4) {
5830
6037
  const pixelDataI2D = ndarray_default()(view, [Rows, Columns]);
5831
6038
  const alignedPixelDataI = Segmentation_4X_alignPixelDataWithSourceData(pixelDataI2D, ImageOrientationPatientI, validOrientations, tolerance);
5832
6039
  if (!alignedPixelDataI) {
5833
- throw new Error("Individual SEG frames are out of plane with respect to the first SEG frame. " + "This is not yet supported. Aborting segmentation loading.");
6040
+ throw new Error('Individual SEG frames are out of plane with respect to the first SEG frame. ' + 'This is not yet supported. Aborting segmentation loading.');
5834
6041
  }
5835
6042
  const segmentIndex = getSegmentIndex(multiframe, i);
5836
6043
  if (segmentIndex === undefined) {
5837
- throw new Error("Could not retrieve the segment index. Aborting segmentation loading.");
6044
+ throw new Error('Could not retrieve the segment index. Aborting segmentation loading.');
5838
6045
  }
5839
6046
  if (!segmentsPixelIndices.has(segmentIndex)) {
5840
6047
  segmentsPixelIndices.set(segmentIndex, {});
5841
6048
  }
5842
6049
  const imageId = findReferenceSourceImageId(multiframe, i, referencedImageIds, metadataProvider, tolerance, sopUIDImageIdIndexMap);
5843
6050
  if (!imageId) {
5844
- console.warn("Image not present in stack, can't import frame : " + i + ".");
6051
+ console.warn("Image not present in stack, can't import frame : " + i + '.');
5845
6052
  return;
5846
6053
  }
5847
6054
  const sourceImageMetadata = imageIdMaps.metadata[imageId];
5848
6055
  if (Rows !== sourceImageMetadata.Rows || Columns !== sourceImageMetadata.Columns) {
5849
- throw new Error("Individual SEG frames have different geometry dimensions (Rows and Columns) " + "respect to the source image reference frame. This is not yet supported. " + "Aborting segmentation loading. ");
6056
+ throw new Error('Individual SEG frames have different geometry dimensions (Rows and Columns) ' + 'respect to the source image reference frame. This is not yet supported. ' + 'Aborting segmentation loading. ');
5850
6057
  }
5851
6058
  const imageIdIndex = imageIdMaps.indices[imageId];
5852
6059
  const labelmapImage = labelMapImages[imageIdIndex];
@@ -5905,8 +6112,9 @@ function labelmapImagesFromBuffer_insertPixelDataPlanar(_ref4) {
5905
6112
  }
5906
6113
  };
5907
6114
  const processLabelmapChunk = firstIndex => {
6115
+ var _multiframe$SharedFun;
5908
6116
  const pfSeq = multiframe.PerFrameFunctionalGroupsSequence;
5909
- const sharedPlaneOrientation = multiframe.SharedFunctionalGroupsSequence.PlaneOrientationSequence?.ImageOrientationPatient;
6117
+ const sharedPlaneOrientation = (_multiframe$SharedFun = multiframe.SharedFunctionalGroupsSequence.PlaneOrientationSequence) === null || _multiframe$SharedFun === void 0 ? void 0 : _multiframe$SharedFun.ImageOrientationPatient;
5910
6118
  for (let i = firstIndex; i < firstIndex + imagesPerChunk && i < groupsLen; i++) {
5911
6119
  const PerFrameFunctionalGroups = pfSeq[i];
5912
6120
  const ImageOrientationPatientI = sharedPlaneOrientation || PerFrameFunctionalGroups.PlaneOrientationSequence.ImageOrientationPatient;
@@ -5914,16 +6122,16 @@ function labelmapImagesFromBuffer_insertPixelDataPlanar(_ref4) {
5914
6122
  const pixelDataI2D = ndarray_default()(view, [Rows, Columns]);
5915
6123
  const alignedPixelDataI = Segmentation_4X_alignPixelDataWithSourceData(pixelDataI2D, ImageOrientationPatientI, validOrientations, tolerance);
5916
6124
  if (!alignedPixelDataI) {
5917
- throw new Error("Individual Labelmap SEG frames are out of plane with respect to the first SEG frame. " + "This is not yet supported. Aborting segmentation loading.");
6125
+ throw new Error('Individual Labelmap SEG frames are out of plane with respect to the first SEG frame. ' + 'This is not yet supported. Aborting segmentation loading.');
5918
6126
  }
5919
6127
  const imageId = findReferenceSourceImageId(multiframe, i, referencedImageIds, metadataProvider, tolerance, sopUIDImageIdIndexMap);
5920
6128
  if (!imageId) {
5921
- console.warn(`Image not present in stack, can't import frame : ${i}.`);
6129
+ console.warn("Image not present in stack, can't import frame : ".concat(i, "."));
5922
6130
  continue;
5923
6131
  }
5924
6132
  const sourceImageMetadata = imageIdMaps.metadata[imageId];
5925
6133
  if (Rows !== sourceImageMetadata.Rows || Columns !== sourceImageMetadata.Columns) {
5926
- throw new Error("Individual Labelmap SEG frames have different geometry dimensions (Rows and Columns) " + "respect to the source image reference frame. This is not yet supported. " + "Aborting segmentation loading. ");
6134
+ throw new Error('Individual Labelmap SEG frames have different geometry dimensions (Rows and Columns) ' + 'respect to the source image reference frame. This is not yet supported. ' + 'Aborting segmentation loading. ');
5927
6135
  }
5928
6136
  const imageIdIndex = imageIdMaps.indices[imageId];
5929
6137
  const labelmapImage = labelMapImages[imageIdIndex];
@@ -5965,7 +6173,7 @@ function labelmapImagesFromBuffer_insertPixelDataPlanar(_ref4) {
5965
6173
  });
5966
6174
  }
5967
6175
  };
5968
- if (multiframe.SegmentationType === "LABELMAP") {
6176
+ if (multiframe.SegmentationType === 'LABELMAP') {
5969
6177
  processLabelmapChunk(0);
5970
6178
  } else {
5971
6179
  processChunk(0);
@@ -5989,7 +6197,7 @@ const getAlignedPixelData = _ref5 => {
5989
6197
  const pixelDataI2D = ndarray_default()(view, [Rows, Columns]);
5990
6198
  const alignedPixelDataI = Segmentation_4X_alignPixelDataWithSourceData(pixelDataI2D, ImageOrientationPatientI, validOrientations, tolerance);
5991
6199
  if (!alignedPixelDataI) {
5992
- throw new Error("Individual SEG frames are out of plane with respect to the first SEG frame. " + "This is not yet supported. Aborting segmentation loading.");
6200
+ throw new Error('Individual SEG frames are out of plane with respect to the first SEG frame. ' + 'This is not yet supported. Aborting segmentation loading.');
5993
6201
  }
5994
6202
  return alignedPixelDataI;
5995
6203
  };
@@ -6000,9 +6208,9 @@ const checkImageDimensions = _ref6 => {
6000
6208
  Rows,
6001
6209
  Columns
6002
6210
  } = _ref6;
6003
- const sourceImageMetadata = metadataProvider.get("instance", imageId);
6211
+ const sourceImageMetadata = metadataProvider.get('instance', imageId);
6004
6212
  if (Rows !== sourceImageMetadata.Rows || Columns !== sourceImageMetadata.Columns) {
6005
- throw new Error("Individual SEG frames have different geometry dimensions (Rows and Columns) " + "respect to the source image reference frame. This is not yet supported. " + "Aborting segmentation loading. ");
6213
+ throw new Error('Individual SEG frames have different geometry dimensions (Rows and Columns) ' + 'respect to the source image reference frame. This is not yet supported. ' + 'Aborting segmentation loading. ');
6006
6214
  }
6007
6215
  };
6008
6216
  const getArrayOfLabelMapImagesWithSegmentData = _ref7 => {
@@ -6265,7 +6473,7 @@ function getReferencedFrameOfReferenceSequence(referencedFrameOfReferenceSequenc
6265
6473
  const {
6266
6474
  FrameOfReferenceUID
6267
6475
  } = metadata;
6268
- referencedFrameOfReferenceSequence ||= [];
6476
+ referencedFrameOfReferenceSequence || (referencedFrameOfReferenceSequence = []);
6269
6477
  let referencedItem = referencedFrameOfReferenceSequence.find(it => it.FrameOfReferenceUID === FrameOfReferenceUID);
6270
6478
  if (!referencedItem) {
6271
6479
  referencedItem = {
@@ -6285,12 +6493,12 @@ const {
6285
6493
  MetadataModules: getReferencedSeriesSequence_MetadataModules
6286
6494
  } = esm.Enums;
6287
6495
  function getReferencedSeriesSequence(referencedSeriesSequence, metadata, options) {
6288
- const metadataProvider = options?.metadataProvider || esm.metaData;
6496
+ const metadataProvider = (options === null || options === void 0 ? void 0 : options.metadataProvider) || esm.metaData;
6289
6497
  const {
6290
6498
  referencedImageId: imageId
6291
6499
  } = metadata;
6292
6500
  const newReferenceSeq = metadataProvider.get(getReferencedSeriesSequence_MetadataModules.REFERENCED_SERIES_REFERENCE, imageId);
6293
- referencedSeriesSequence ||= [];
6501
+ referencedSeriesSequence || (referencedSeriesSequence = []);
6294
6502
  if (newReferenceSeq) {
6295
6503
  const {
6296
6504
  ReferencedSeriesInstanceUID: newSeriesUid,
@@ -6316,11 +6524,12 @@ function getReferencedSeriesSequence(referencedSeriesSequence, metadata, options
6316
6524
 
6317
6525
  ;// ../../../node_modules/@cornerstonejs/adapters/dist/esm/adapters/Cornerstone3D/RTStruct/utilities/getRTROIObservationsSequence.js
6318
6526
  function getRTROIObservationsSequence(segment, index, options) {
6527
+ var _segment$segmentIndex;
6319
6528
  return {
6320
6529
  ObservationNumber: index + 1,
6321
- ReferencedROINumber: segment.segmentIndex ?? index + 1,
6322
- RTROIInterpretedType: options?.interpretedType || 'ORGAN',
6323
- ROIInterpreter: options?.observerName || ''
6530
+ ReferencedROINumber: (_segment$segmentIndex = segment.segmentIndex) !== null && _segment$segmentIndex !== void 0 ? _segment$segmentIndex : index + 1,
6531
+ RTROIInterpretedType: (options === null || options === void 0 ? void 0 : options.interpretedType) || 'ORGAN',
6532
+ ROIInterpreter: (options === null || options === void 0 ? void 0 : options.observerName) || ''
6324
6533
  };
6325
6534
  }
6326
6535
 
@@ -6347,6 +6556,9 @@ function getStructureSetModule(contour, segment) {
6347
6556
 
6348
6557
 
6349
6558
 
6559
+
6560
+ function referencedMetadataProvider_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6561
+ function referencedMetadataProvider_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? referencedMetadataProvider_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : referencedMetadataProvider_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6350
6562
  const {
6351
6563
  DicomMetaDictionary: referencedMetadataProvider_DicomMetaDictionary
6352
6564
  } = dcmjs_es/* default.data */.Ay.data;
@@ -6358,7 +6570,8 @@ const SERIES_MODULES = [referencedMetadataProvider_MetadataModules.GENERAL_SERIE
6358
6570
  const IMAGE_MODULES = [referencedMetadataProvider_MetadataModules.GENERAL_IMAGE, referencedMetadataProvider_MetadataModules.IMAGE_PLANE, referencedMetadataProvider_MetadataModules.CINE, referencedMetadataProvider_MetadataModules.VOI_LUT, referencedMetadataProvider_MetadataModules.MODALITY_LUT, referencedMetadataProvider_MetadataModules.SOP_COMMON];
6359
6571
  const metadataProvider = {
6360
6572
  get: function (type, imageId, options) {
6361
- return metadataProvider[type]?.(imageId, options);
6573
+ var _metadataProvider$typ;
6574
+ return (_metadataProvider$typ = metadataProvider[type]) === null || _metadataProvider$typ === void 0 ? void 0 : _metadataProvider$typ.call(metadataProvider, imageId, options);
6362
6575
  },
6363
6576
  [referencedMetadataProvider_MetadataModules.IMAGE_SOP_INSTANCE_REFERENCE]: function (imageId) {
6364
6577
  const frameModule = esm.metaData.get(referencedMetadataProvider_MetadataModules.FRAME_MODULE, imageId);
@@ -6392,9 +6605,7 @@ const metadataProvider = {
6392
6605
  };
6393
6606
  },
6394
6607
  [referencedMetadataProvider_MetadataModules.PREDECESSOR_SEQUENCE]: imageId => {
6395
- const result = {
6396
- ...esm.metaData.get(referencedMetadataProvider_MetadataModules.SERIES_DATA, imageId)
6397
- };
6608
+ const result = referencedMetadataProvider_objectSpread({}, esm.metaData.get(referencedMetadataProvider_MetadataModules.SERIES_DATA, imageId));
6398
6609
  const generalImage = esm.metaData.get(referencedMetadataProvider_MetadataModules.GENERAL_IMAGE, imageId);
6399
6610
  const study = esm.metaData.get(referencedMetadataProvider_MetadataModules.GENERAL_STUDY, imageId);
6400
6611
  result.InstanceNumber = 1 + Number(generalImage.instanceNumber);
@@ -6421,8 +6632,7 @@ const metadataProvider = {
6421
6632
  },
6422
6633
  [referencedMetadataProvider_MetadataModules.RTSS_INSTANCE_DATA]: imageId => {
6423
6634
  const newInstanceData = esm.metaData.get(referencedMetadataProvider_MetadataModules.NEW_INSTANCE_DATA, imageId);
6424
- return {
6425
- ...newInstanceData,
6635
+ return referencedMetadataProvider_objectSpread(referencedMetadataProvider_objectSpread({}, newInstanceData), {}, {
6426
6636
  SeriesNumber: '3201',
6427
6637
  StructureSetROISequence: [],
6428
6638
  ROIContourSequence: [],
@@ -6435,12 +6645,11 @@ const metadataProvider = {
6435
6645
  StructureSetName: '',
6436
6646
  StructureSetDate: referencedMetadataProvider_DicomMetaDictionary.date(),
6437
6647
  StructureSetTime: referencedMetadataProvider_DicomMetaDictionary.time()
6438
- };
6648
+ });
6439
6649
  },
6440
6650
  [referencedMetadataProvider_MetadataModules.NEW_INSTANCE_DATA]: imageId => {
6441
6651
  const studyData = esm.metaData.get(referencedMetadataProvider_MetadataModules.STUDY_DATA, imageId);
6442
- return {
6443
- ...studyData,
6652
+ return referencedMetadataProvider_objectSpread(referencedMetadataProvider_objectSpread({}, studyData), {}, {
6444
6653
  SeriesNumber: '50000',
6445
6654
  InstanceNumber: '1',
6446
6655
  OperatorsName: '',
@@ -6449,7 +6658,7 @@ const metadataProvider = {
6449
6658
  Manufacturer: 'cs3d',
6450
6659
  SOPInstanceUID: referencedMetadataProvider_DicomMetaDictionary.uid(),
6451
6660
  SeriesInstanceUID: referencedMetadataProvider_DicomMetaDictionary.uid()
6452
- };
6661
+ });
6453
6662
  },
6454
6663
  [referencedMetadataProvider_MetadataModules.RTSS_CONTOUR]: () => metaRTSSContour,
6455
6664
  [referencedMetadataProvider_MetadataModules.SR_ANNOTATION]: () => metaSRAnnotation
@@ -6472,7 +6681,7 @@ function assignDefined(dest, source, options) {
6472
6681
  if (value === undefined) {
6473
6682
  continue;
6474
6683
  }
6475
- if (dest[key] === undefined && options?.requireDestinationKey) {
6684
+ if (dest[key] === undefined && options !== null && options !== void 0 && options.requireDestinationKey) {
6476
6685
  continue;
6477
6686
  }
6478
6687
  dest[key] = value;
@@ -6509,6 +6718,9 @@ function createInstance(instanceKey, studyExemplarImageId, base, options) {
6509
6718
 
6510
6719
 
6511
6720
 
6721
+
6722
+ function RTSS_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6723
+ function RTSS_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? RTSS_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : RTSS_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6512
6724
  const {
6513
6725
  generateContourSetsFromLabelmap,
6514
6726
  AnnotationToPointData
@@ -6523,6 +6735,7 @@ function generateRTSSFromSegmentations(segmentation, metadataProvider, _DicomMet
6523
6735
  });
6524
6736
  }
6525
6737
  async function generateRTSSFromLabelmap(segmentations, options) {
6738
+ var _dataset$ReferencedFr;
6526
6739
  const {
6527
6740
  metadataProvider = esm.metaData
6528
6741
  } = options;
@@ -6555,7 +6768,7 @@ async function generateRTSSFromLabelmap(segmentations, options) {
6555
6768
  });
6556
6769
  });
6557
6770
  });
6558
- const segLabel = contourSet.label || `Segment ${segIndex + 1}`;
6771
+ const segLabel = contourSet.label || "Segment ".concat(segIndex + 1);
6559
6772
  const ROIContour = {
6560
6773
  name: segLabel,
6561
6774
  description: segLabel,
@@ -6580,12 +6793,13 @@ async function generateRTSSFromLabelmap(segmentations, options) {
6580
6793
  dataset.ReferencedSeriesSequence = getReferencedSeriesSequence(dataset.ReferencedSeriesSequence, contour.metadata, options);
6581
6794
  dataset.ReferencedFrameOfReferenceSequence = getReferencedFrameOfReferenceSequence(dataset.ReferencedFrameOfReferenceSequence, contour.metadata);
6582
6795
  });
6583
- if (dataset.ReferencedFrameOfReferenceSequence?.length === 1) {
6796
+ if (((_dataset$ReferencedFr = dataset.ReferencedFrameOfReferenceSequence) === null || _dataset$ReferencedFr === void 0 ? void 0 : _dataset$ReferencedFr.length) === 1) {
6584
6797
  dataset.FrameOfReferenceUID = dataset.ReferencedFrameOfReferenceSequence[0].FrameOfReferenceUID;
6585
6798
  }
6586
6799
  return dataset;
6587
6800
  }
6588
6801
  function generateRTSSFromAnnotations(segmentations, annotations, options) {
6802
+ var _dataset$ReferencedFr2;
6589
6803
  const dataset = _initializeDataset(segmentations, annotations[0].metadata, options);
6590
6804
  const segmentsContour = new Map();
6591
6805
  annotations.forEach((annotation, index) => {
@@ -6602,20 +6816,19 @@ function generateRTSSFromAnnotations(segmentations, annotations, options) {
6602
6816
  segmentationId,
6603
6817
  segmentIndex
6604
6818
  } = segmentation;
6605
- const key = `${segmentationId}:${segmentIndex}`;
6819
+ const key = "".concat(segmentationId, ":").concat(segmentIndex);
6606
6820
  let segmentAnnotation = segmentsContour.get(key);
6607
6821
  if (!segmentAnnotation) {
6608
6822
  const segment = segmentations.segments[segmentIndex];
6609
6823
  const structureSetModule = getStructureSetModule(annotation, segment);
6610
6824
  dataset.StructureSetROISequence.push(structureSetModule);
6611
6825
  dataset.RTROIObservationsSequence.push(getRTROIObservationsSequence(segment, index, options));
6612
- segmentAnnotation = {
6613
- ...segmentation,
6826
+ segmentAnnotation = RTSS_objectSpread(RTSS_objectSpread({}, segmentation), {}, {
6614
6827
  annotations: [],
6615
6828
  structureSetModule,
6616
6829
  segment,
6617
6830
  roiContourSequence: null
6618
- };
6831
+ });
6619
6832
  segmentsContour.set(key, segmentAnnotation);
6620
6833
  }
6621
6834
  const roiContourSequence = AnnotationToPointData.convert(annotation, segmentAnnotation.segment, esm.metaData);
@@ -6628,7 +6841,7 @@ function generateRTSSFromAnnotations(segmentations, annotations, options) {
6628
6841
  dataset.ReferencedSeriesSequence = getReferencedSeriesSequence(dataset.ReferencedSeriesSequence, annotation.metadata, options);
6629
6842
  dataset.ReferencedFrameOfReferenceSequence = getReferencedFrameOfReferenceSequence(dataset.ReferencedFrameOfReferenceSequence, annotation.metadata);
6630
6843
  });
6631
- if (dataset.ReferencedFrameOfReferenceSequence?.length === 1) {
6844
+ if (((_dataset$ReferencedFr2 = dataset.ReferencedFrameOfReferenceSequence) === null || _dataset$ReferencedFr2 === void 0 ? void 0 : _dataset$ReferencedFr2.length) === 1) {
6632
6845
  dataset.FrameOfReferenceUID = dataset.ReferencedFrameOfReferenceSequence[0].FrameOfReferenceUID;
6633
6846
  }
6634
6847
  return dataset;
@@ -6669,7 +6882,7 @@ function generateRTSSFromRepresentation(segmentations) {
6669
6882
  if (segmentations.representationData.Contour) {
6670
6883
  return generateRTSSFromContour(segmentations, options);
6671
6884
  }
6672
- throw new Error(`No representation available to save to RTSS: ${Object.keys(segmentations.representationData)}`);
6885
+ throw new Error("No representation available to save to RTSS: ".concat(Object.keys(segmentations.representationData)));
6673
6886
  }
6674
6887
 
6675
6888
 
@@ -6698,7 +6911,7 @@ class KeyImage extends Probe {
6698
6911
  const {
6699
6912
  data
6700
6913
  } = baseData.annotation;
6701
- data.isPoint = trackingIdentifier.indexOf("Point") !== -1;
6914
+ data.isPoint = trackingIdentifier.indexOf('Point') !== -1;
6702
6915
  return baseData;
6703
6916
  }
6704
6917
  static getTID300RepresentationArguments(tool) {
@@ -6726,12 +6939,12 @@ class KeyImage extends Probe {
6726
6939
  }
6727
6940
  }
6728
6941
  _KeyImage = KeyImage;
6729
- _KeyImage.init("KeyImage", KeyImage_TID300Point, {
6942
+ _KeyImage.init('KeyImage', KeyImage_TID300Point, {
6730
6943
  parentType: Probe.toolType
6731
6944
  });
6732
- _KeyImage.trackingSeriesIdentifier = `${_KeyImage.trackingIdentifierTextValue}:Series`;
6733
- _KeyImage.trackingPointIdentifier = `${_KeyImage.trackingIdentifierTextValue}:Point`;
6734
- _KeyImage.trackingSeriesPointIdentifier = `${_KeyImage.trackingIdentifierTextValue}:SeriesPoint`;
6945
+ _KeyImage.trackingSeriesIdentifier = "".concat(_KeyImage.trackingIdentifierTextValue, ":Series");
6946
+ _KeyImage.trackingPointIdentifier = "".concat(_KeyImage.trackingIdentifierTextValue, ":Point");
6947
+ _KeyImage.trackingSeriesPointIdentifier = "".concat(_KeyImage.trackingIdentifierTextValue, ":SeriesPoint");
6735
6948
 
6736
6949
 
6737
6950
 
@@ -7073,311 +7286,10 @@ function downloadDICOMData(bufferOrDataset, filename) {
7073
7286
 
7074
7287
 
7075
7288
 
7076
- /***/ }),
7077
-
7078
- /***/ 75183:
7079
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7080
-
7081
- "use strict";
7082
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7083
- /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
7084
- /* harmony export */ });
7085
- var ChangeTypes;
7086
- (function (ChangeTypes) {
7087
- ChangeTypes["Interaction"] = "Interaction";
7088
- ChangeTypes["HandlesUpdated"] = "HandlesUpdated";
7089
- ChangeTypes["StatsUpdated"] = "StatsUpdated";
7090
- ChangeTypes["InitialSetup"] = "InitialSetup";
7091
- ChangeTypes["Completed"] = "Completed";
7092
- ChangeTypes["InterpolationUpdated"] = "InterpolationUpdated";
7093
- ChangeTypes["History"] = "History";
7094
- ChangeTypes["MetadataReferenceModified"] = "MetadataReferenceModified";
7095
- ChangeTypes["LabelChange"] = "LabelChange";
7096
- })(ChangeTypes || (ChangeTypes = {}));
7097
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ChangeTypes);
7098
-
7099
-
7100
- /***/ }),
7101
-
7102
- /***/ 94021:
7103
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7104
-
7105
- "use strict";
7106
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7107
- /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
7108
- /* harmony export */ });
7109
- var Events;
7110
- (function (Events) {
7111
- Events["TOOL_ACTIVATED"] = "CORNERSTONE_TOOLS_TOOL_ACTIVATED";
7112
- Events["TOOLGROUP_VIEWPORT_ADDED"] = "CORNERSTONE_TOOLS_TOOLGROUP_VIEWPORT_ADDED";
7113
- Events["TOOLGROUP_VIEWPORT_REMOVED"] = "CORNERSTONE_TOOLS_TOOLGROUP_VIEWPORT_REMOVED";
7114
- Events["TOOL_MODE_CHANGED"] = "CORNERSTONE_TOOLS_TOOL_MODE_CHANGED";
7115
- Events["CROSSHAIR_TOOL_CENTER_CHANGED"] = "CORNERSTONE_TOOLS_CROSSHAIR_TOOL_CENTER_CHANGED";
7116
- Events["VOLUMECROPPINGCONTROL_TOOL_CHANGED"] = "CORNERSTONE_TOOLS_VOLUMECROPPINGCONTROL_TOOL_CHANGED";
7117
- Events["VOLUMECROPPING_TOOL_CHANGED"] = "CORNERSTONE_TOOLS_VOLUMECROPPING_TOOL_CHANGED";
7118
- Events["STACK_PREFETCH_COMPLETE"] = "CORNERSTONE_TOOLS_STACK_PREFETCH_COMPLETE";
7119
- Events["ANNOTATION_ADDED"] = "CORNERSTONE_TOOLS_ANNOTATION_ADDED";
7120
- Events["ANNOTATION_COMPLETED"] = "CORNERSTONE_TOOLS_ANNOTATION_COMPLETED";
7121
- Events["ANNOTATION_MODIFIED"] = "CORNERSTONE_TOOLS_ANNOTATION_MODIFIED";
7122
- Events["ANNOTATION_REMOVED"] = "CORNERSTONE_TOOLS_ANNOTATION_REMOVED";
7123
- Events["ANNOTATION_SELECTION_CHANGE"] = "CORNERSTONE_TOOLS_ANNOTATION_SELECTION_CHANGE";
7124
- Events["ANNOTATION_LOCK_CHANGE"] = "CORNERSTONE_TOOLS_ANNOTATION_LOCK_CHANGE";
7125
- Events["ANNOTATION_VISIBILITY_CHANGE"] = "CORNERSTONE_TOOLS_ANNOTATION_VISIBILITY_CHANGE";
7126
- Events["ANNOTATION_RENDERED"] = "CORNERSTONE_TOOLS_ANNOTATION_RENDERED";
7127
- Events["ANNOTATION_CUT_MERGE_PROCESS_COMPLETED"] = "CORNERSTONE_TOOLS_ANNOTATION_CUT_MERGE_PROCESS_COMPLETED";
7128
- Events["ANNOTATION_INTERPOLATION_PROCESS_COMPLETED"] = "CORNERSTONE_TOOLS_ANNOTATION_INTERPOLATION_PROCESS_COMPLETED";
7129
- Events["INTERPOLATED_ANNOTATIONS_REMOVED"] = "CORNERSTONE_TOOLS_INTERPOLATED_ANNOTATIONS_REMOVED";
7130
- Events["SEGMENTATION_MODIFIED"] = "CORNERSTONE_TOOLS_SEGMENTATION_MODIFIED";
7131
- Events["SEGMENTATION_RENDERED"] = "CORNERSTONE_TOOLS_SEGMENTATION_RENDERED";
7132
- Events["SEGMENTATION_REPRESENTATION_ADDED"] = "CORNERSTONE_TOOLS_SEGMENTATION_REPRESENTATION_ADDED";
7133
- Events["SEGMENTATION_ADDED"] = "CORNERSTONE_TOOLS_SEGMENTATION_ADDED";
7134
- Events["SEGMENTATION_REPRESENTATION_MODIFIED"] = "CORNERSTONE_TOOLS_SEGMENTATION_REPRESENTATION_MODIFIED";
7135
- Events["SEGMENTATION_REMOVED"] = "CORNERSTONE_TOOLS_SEGMENTATION_REMOVED";
7136
- Events["SEGMENTATION_REPRESENTATION_REMOVED"] = "CORNERSTONE_TOOLS_SEGMENTATION_REPRESENTATION_REMOVED";
7137
- Events["SEGMENTATION_DATA_MODIFIED"] = "CORNERSTONE_TOOLS_SEGMENTATION_DATA_MODIFIED";
7138
- Events["HISTORY_UNDO"] = "CORNERSTONE_TOOLS_HISTORY_UNDO";
7139
- Events["HISTORY_REDO"] = "CORNERSTONE_TOOLS_HISTORY_REDO";
7140
- Events["KEY_DOWN"] = "CORNERSTONE_TOOLS_KEY_DOWN";
7141
- Events["KEY_UP"] = "CORNERSTONE_TOOLS_KEY_UP";
7142
- Events["MOUSE_DOWN"] = "CORNERSTONE_TOOLS_MOUSE_DOWN";
7143
- Events["MOUSE_UP"] = "CORNERSTONE_TOOLS_MOUSE_UP";
7144
- Events["MOUSE_DOWN_ACTIVATE"] = "CORNERSTONE_TOOLS_MOUSE_DOWN_ACTIVATE";
7145
- Events["MOUSE_DRAG"] = "CORNERSTONE_TOOLS_MOUSE_DRAG";
7146
- Events["MOUSE_MOVE"] = "CORNERSTONE_TOOLS_MOUSE_MOVE";
7147
- Events["MOUSE_CLICK"] = "CORNERSTONE_TOOLS_MOUSE_CLICK";
7148
- Events["MOUSE_DOUBLE_CLICK"] = "CORNERSTONE_TOOLS_MOUSE_DOUBLE_CLICK";
7149
- Events["MOUSE_WHEEL"] = "CORNERSTONE_TOOLS_MOUSE_WHEEL";
7150
- Events["TOUCH_START"] = "CORNERSTONE_TOOLS_TOUCH_START";
7151
- Events["TOUCH_START_ACTIVATE"] = "CORNERSTONE_TOOLS_TOUCH_START_ACTIVATE";
7152
- Events["TOUCH_PRESS"] = "CORNERSTONE_TOOLS_TOUCH_PRESS";
7153
- Events["TOUCH_DRAG"] = "CORNERSTONE_TOOLS_TOUCH_DRAG";
7154
- Events["TOUCH_END"] = "CORNERSTONE_TOOLS_TOUCH_END";
7155
- Events["TOUCH_TAP"] = "CORNERSTONE_TOOLS_TAP";
7156
- Events["TOUCH_SWIPE"] = "CORNERSTONE_TOOLS_SWIPE";
7157
- })(Events || (Events = {}));
7158
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Events);
7159
-
7160
-
7161
- /***/ }),
7162
-
7163
- /***/ 18682:
7164
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7165
-
7166
- "use strict";
7167
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7168
- /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
7169
- /* harmony export */ });
7170
- var SegmentationRepresentations;
7171
- (function (SegmentationRepresentations) {
7172
- SegmentationRepresentations["Labelmap"] = "Labelmap";
7173
- SegmentationRepresentations["Contour"] = "Contour";
7174
- SegmentationRepresentations["Surface"] = "Surface";
7175
- })(SegmentationRepresentations || (SegmentationRepresentations = {}));
7176
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SegmentationRepresentations);
7177
-
7178
-
7179
- /***/ }),
7180
-
7181
- /***/ 84093:
7182
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7183
-
7184
- "use strict";
7185
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7186
- /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
7187
- /* harmony export */ });
7188
- var StrategyCallbacks;
7189
- (function (StrategyCallbacks) {
7190
- StrategyCallbacks["CalculateCursorGeometry"] = "calculateCursorGeometry";
7191
- StrategyCallbacks["RenderCursor"] = "renderCursor";
7192
- StrategyCallbacks["OnInteractionStart"] = "onInteractionStart";
7193
- StrategyCallbacks["OnInteractionEnd"] = "onInteractionEnd";
7194
- StrategyCallbacks["Preview"] = "preview";
7195
- StrategyCallbacks["RejectPreview"] = "rejectPreview";
7196
- StrategyCallbacks["AcceptPreview"] = "acceptPreview";
7197
- StrategyCallbacks["Fill"] = "fill";
7198
- StrategyCallbacks["Interpolate"] = "interpolate";
7199
- StrategyCallbacks["StrategyFunction"] = "strategyFunction";
7200
- StrategyCallbacks["CreateIsInThreshold"] = "createIsInThreshold";
7201
- StrategyCallbacks["Initialize"] = "initialize";
7202
- StrategyCallbacks["INTERNAL_setValue"] = "setValue";
7203
- StrategyCallbacks["AddPreview"] = "addPreview";
7204
- StrategyCallbacks["ComputeInnerCircleRadius"] = "computeInnerCircleRadius";
7205
- StrategyCallbacks["GetStatistics"] = "getStatistics";
7206
- StrategyCallbacks["EnsureImageVolumeFor3DManipulation"] = "ensureImageVolumeFor3DManipulation";
7207
- StrategyCallbacks["EnsureSegmentationVolumeFor3DManipulation"] = "ensureSegmentationVolumeFor3DManipulation";
7208
- })(StrategyCallbacks || (StrategyCallbacks = {}));
7209
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StrategyCallbacks);
7210
-
7211
-
7212
- /***/ }),
7213
-
7214
- /***/ 66452:
7215
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7216
-
7217
- "use strict";
7218
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7219
- /* harmony export */ i: () => (/* binding */ MouseBindings),
7220
- /* harmony export */ q: () => (/* binding */ KeyboardBindings)
7221
- /* harmony export */ });
7222
- var MouseBindings;
7223
- (function (MouseBindings) {
7224
- MouseBindings[MouseBindings["Primary"] = 1] = "Primary";
7225
- MouseBindings[MouseBindings["Secondary"] = 2] = "Secondary";
7226
- MouseBindings[MouseBindings["Primary_And_Secondary"] = 3] = "Primary_And_Secondary";
7227
- MouseBindings[MouseBindings["Auxiliary"] = 4] = "Auxiliary";
7228
- MouseBindings[MouseBindings["Primary_And_Auxiliary"] = 5] = "Primary_And_Auxiliary";
7229
- MouseBindings[MouseBindings["Secondary_And_Auxiliary"] = 6] = "Secondary_And_Auxiliary";
7230
- MouseBindings[MouseBindings["Primary_And_Secondary_And_Auxiliary"] = 7] = "Primary_And_Secondary_And_Auxiliary";
7231
- MouseBindings[MouseBindings["Fourth_Button"] = 8] = "Fourth_Button";
7232
- MouseBindings[MouseBindings["Fifth_Button"] = 16] = "Fifth_Button";
7233
- MouseBindings[MouseBindings["Wheel"] = 524288] = "Wheel";
7234
- MouseBindings[MouseBindings["Wheel_Primary"] = 524289] = "Wheel_Primary";
7235
- })(MouseBindings || (MouseBindings = {}));
7236
- var KeyboardBindings;
7237
- (function (KeyboardBindings) {
7238
- KeyboardBindings[KeyboardBindings["Shift"] = 16] = "Shift";
7239
- KeyboardBindings[KeyboardBindings["Ctrl"] = 17] = "Ctrl";
7240
- KeyboardBindings[KeyboardBindings["Alt"] = 18] = "Alt";
7241
- KeyboardBindings[KeyboardBindings["Meta"] = 91] = "Meta";
7242
- KeyboardBindings[KeyboardBindings["ShiftCtrl"] = 1617] = "ShiftCtrl";
7243
- KeyboardBindings[KeyboardBindings["ShiftAlt"] = 1618] = "ShiftAlt";
7244
- KeyboardBindings[KeyboardBindings["ShiftMeta"] = 1691] = "ShiftMeta";
7245
- KeyboardBindings[KeyboardBindings["CtrlAlt"] = 1718] = "CtrlAlt";
7246
- KeyboardBindings[KeyboardBindings["CtrlMeta"] = 1791] = "CtrlMeta";
7247
- KeyboardBindings[KeyboardBindings["AltMeta"] = 1891] = "AltMeta";
7248
- })(KeyboardBindings || (KeyboardBindings = {}));
7249
-
7250
-
7251
-
7252
- /***/ }),
7253
-
7254
- /***/ 49892:
7255
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7256
-
7257
- "use strict";
7258
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7259
- /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
7260
- /* harmony export */ });
7261
- var ToolModes;
7262
- (function (ToolModes) {
7263
- ToolModes["Active"] = "Active";
7264
- ToolModes["Passive"] = "Passive";
7265
- ToolModes["Enabled"] = "Enabled";
7266
- ToolModes["Disabled"] = "Disabled";
7267
- })(ToolModes || (ToolModes = {}));
7268
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ToolModes);
7269
-
7270
-
7271
- /***/ }),
7272
-
7273
- /***/ 10401:
7274
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7275
-
7276
- "use strict";
7277
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7278
- /* harmony export */ H: () => (/* binding */ Swipe)
7279
- /* harmony export */ });
7280
- var Swipe;
7281
- (function (Swipe) {
7282
- Swipe["UP"] = "UP";
7283
- Swipe["DOWN"] = "DOWN";
7284
- Swipe["LEFT"] = "LEFT";
7285
- Swipe["RIGHT"] = "RIGHT";
7286
- })(Swipe || (Swipe = {}));
7287
-
7288
-
7289
-
7290
- /***/ }),
7291
-
7292
- /***/ 29857:
7293
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7294
-
7295
- "use strict";
7296
- // ESM COMPAT FLAG
7297
- __webpack_require__.r(__webpack_exports__);
7298
-
7299
- // EXPORTS
7300
- __webpack_require__.d(__webpack_exports__, {
7301
- AnnotationStyleStates: () => (/* reexport */ enums_AnnotationStyleStates),
7302
- ChangeTypes: () => (/* reexport */ ChangeTypes/* default */.A),
7303
- Events: () => (/* reexport */ Events/* default */.A),
7304
- KeyboardBindings: () => (/* reexport */ ToolBindings/* KeyboardBindings */.q),
7305
- MeasurementType: () => (/* reexport */ MeasurementType),
7306
- MouseBindings: () => (/* reexport */ ToolBindings/* MouseBindings */.i),
7307
- SegmentationRepresentations: () => (/* reexport */ SegmentationRepresentations/* default */.A),
7308
- StrategyCallbacks: () => (/* reexport */ StrategyCallbacks/* default */.A),
7309
- Swipe: () => (/* reexport */ Touch/* Swipe */.H),
7310
- ToolModes: () => (/* reexport */ ToolModes/* default */.A),
7311
- WorkerTypes: () => (/* reexport */ WorkerTypes)
7312
- });
7313
-
7314
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/ToolBindings.js
7315
- var ToolBindings = __webpack_require__(66452);
7316
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/ToolModes.js
7317
- var ToolModes = __webpack_require__(49892);
7318
- ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/AnnotationStyleStates.js
7319
- var AnnotationStyleStates;
7320
- (function (AnnotationStyleStates) {
7321
- AnnotationStyleStates["Default"] = "";
7322
- AnnotationStyleStates["Highlighted"] = "Highlighted";
7323
- AnnotationStyleStates["Selected"] = "Selected";
7324
- AnnotationStyleStates["Locked"] = "Locked";
7325
- AnnotationStyleStates["AutoGenerated"] = "AutoGenerated";
7326
- })(AnnotationStyleStates || (AnnotationStyleStates = {}));
7327
- /* harmony default export */ const enums_AnnotationStyleStates = (AnnotationStyleStates);
7328
-
7329
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/Events.js
7330
- var Events = __webpack_require__(94021);
7331
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/SegmentationRepresentations.js
7332
- var SegmentationRepresentations = __webpack_require__(18682);
7333
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/Touch.js
7334
- var Touch = __webpack_require__(10401);
7335
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/StrategyCallbacks.js
7336
- var StrategyCallbacks = __webpack_require__(84093);
7337
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/ChangeTypes.js
7338
- var ChangeTypes = __webpack_require__(75183);
7339
- ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/WorkerTypes.js
7340
- var WorkerTypes_ChangeTypes;
7341
- (function (ChangeTypes) {
7342
- ChangeTypes["POLYSEG_CONTOUR_TO_LABELMAP"] = "Converting Contour to Labelmap";
7343
- ChangeTypes["POLYSEG_SURFACE_TO_LABELMAP"] = "Converting Surfaces to Labelmap";
7344
- ChangeTypes["POLYSEG_CONTOUR_TO_SURFACE"] = "Converting Contour to Surface";
7345
- ChangeTypes["POLYSEG_LABELMAP_TO_SURFACE"] = "Converting Labelmap to Surface";
7346
- ChangeTypes["SURFACE_CLIPPING"] = "Clipping Surfaces";
7347
- ChangeTypes["COMPUTE_STATISTICS"] = "Computing Statistics";
7348
- ChangeTypes["INTERPOLATE_LABELMAP"] = "Interpolating Labelmap";
7349
- ChangeTypes["COMPUTE_LARGEST_BIDIRECTIONAL"] = "Computing Largest Bidirectional";
7350
- ChangeTypes["GENERATE_CONTOUR_SETS"] = "Generating Contour Sets";
7351
- })(WorkerTypes_ChangeTypes || (WorkerTypes_ChangeTypes = {}));
7352
- /* harmony default export */ const WorkerTypes = (WorkerTypes_ChangeTypes);
7353
-
7354
- ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/MeasurementType.js
7355
- var MeasurementType;
7356
- (function (MeasurementType) {
7357
- MeasurementType["Linear"] = "Linear";
7358
- MeasurementType["Area"] = "Area";
7359
- MeasurementType["Volume"] = "Volume";
7360
- MeasurementType["Pixel"] = "Pixel";
7361
- })(MeasurementType || (MeasurementType = {}));
7362
-
7363
- ;// ../../../node_modules/@cornerstonejs/tools/dist/esm/enums/index.js
7364
-
7365
-
7366
-
7367
-
7368
-
7369
-
7370
-
7371
-
7372
-
7373
-
7374
-
7375
-
7376
-
7377
- /***/ }),
7289
+ /***/ },
7378
7290
 
7379
- /***/ 26337:
7380
- /***/ ((module) => {
7291
+ /***/ 26337
7292
+ (module) {
7381
7293
 
7382
7294
  "use strict";
7383
7295
 
@@ -7392,10 +7304,10 @@ function iota(n) {
7392
7304
 
7393
7305
  module.exports = iota
7394
7306
 
7395
- /***/ }),
7307
+ /***/ },
7396
7308
 
7397
- /***/ 11604:
7398
- /***/ ((module) => {
7309
+ /***/ 11604
7310
+ (module) {
7399
7311
 
7400
7312
  /*!
7401
7313
  * Determine if an object is a Buffer
@@ -7420,10 +7332,10 @@ function isSlowBuffer (obj) {
7420
7332
  }
7421
7333
 
7422
7334
 
7423
- /***/ }),
7335
+ /***/ },
7424
7336
 
7425
- /***/ 3293:
7426
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7337
+ /***/ 3293
7338
+ (module, __unused_webpack_exports, __webpack_require__) {
7427
7339
 
7428
7340
  var iota = __webpack_require__(26337)
7429
7341
  var isBuffer = __webpack_require__(11604)
@@ -7776,6 +7688,6 @@ function wrappedNDArrayCtor(data, shape, stride, offset) {
7776
7688
  module.exports = wrappedNDArrayCtor
7777
7689
 
7778
7690
 
7779
- /***/ })
7691
+ /***/ }
7780
7692
 
7781
7693
  }]);