@ohif/app 3.8.0-beta.92 → 3.8.0-beta.93

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 (37) hide show
  1. package/dist/{117.bundle.a18b236cfb25b1daa254.js → 117.bundle.77cc4e62d0de5d843e2e.js} +3 -3
  2. package/dist/{164.bundle.0860b89ac7bde6ee83b0.js → 164.bundle.b101cb64d04a22453984.js} +7 -4
  3. package/dist/{206.bundle.7b4b08331eec7dcc259b.js → 206.bundle.167521fec17384ca82bf.js} +2 -2
  4. package/dist/{236.bundle.7c88c873c95bac8610f3.js → 236.bundle.f774cdc955890e6cdac9.js} +4 -1
  5. package/dist/{321.bundle.506a5b5c6b8f5fb72014.js → 321.bundle.2a5d0ec994ec8d68685d.js} +49 -27
  6. package/dist/{416.bundle.a043517360b314eff829.js → 416.bundle.9b0d7559344fd02c9e08.js} +389 -223
  7. package/dist/{473.bundle.f6804e7ac014a561eff8.js → 473.bundle.11f707c8170ade2eb56a.js} +4 -1
  8. package/dist/{574.bundle.a17af135ea650e98d81c.js → 574.bundle.4b059c95cd34efdc9cb3.js} +18 -4
  9. package/dist/{633.bundle.e0dd840d8f1dae9f9d24.js → 633.bundle.cfdc3e0d026d42ec02ac.js} +8 -20
  10. package/dist/{699.bundle.9d8f7ac047524db16187.js → 699.bundle.33cb12a34f86ed7f7c80.js} +11 -19
  11. package/dist/{724.bundle.a56489507de343782981.js → 724.bundle.f24477fbbedb55f4a79b.js} +0 -12
  12. package/dist/{94.bundle.78374907fe8caf9aa3f8.js → 94.bundle.409068694ec9449ad313.js} +0 -12
  13. package/dist/{app.bundle.1771c17053a9d31620f5.js → app.bundle.2fbf30e7580d827a9588.js} +533 -248
  14. package/dist/app.bundle.css +1 -1
  15. package/dist/index.html +1 -1
  16. package/dist/{polySeg.bundle.59eaa458d4cdb967e0d4.js → polySeg.bundle.4442dd3318266fddf4d0.js} +1 -1
  17. package/dist/{suv-peak-worker.bundle.426c2e139a25c02d2451.js → suv-peak-worker.bundle.348c016f7f973d05f2d2.js} +1 -1
  18. package/dist/sw.js +1 -1
  19. package/package.json +18 -18
  20. /package/dist/{188.bundle.e92f9feb82ac5a007ed9.js → 188.bundle.0ac4a3cc5fe776803e7b.js} +0 -0
  21. /package/dist/{203.bundle.846a90d1ede185c941b0.js → 203.bundle.3581da3a32a0b720d3a7.js} +0 -0
  22. /package/dist/{325.bundle.425742d4a926c9611bbc.js → 325.bundle.6a21e6669ba356c10db3.js} +0 -0
  23. /package/dist/{41.bundle.20a35c0c178c2eb2932b.js → 41.bundle.973e2ac247f8ce68d557.js} +0 -0
  24. /package/dist/{448.bundle.2cc5f694c2b649f71da4.js → 448.bundle.d3684e8fe6e589241663.js} +0 -0
  25. /package/dist/{483.bundle.9263b25c34b349aae80e.js → 483.bundle.581b242d7b90866fdfb9.js} +0 -0
  26. /package/dist/{487.bundle.fb1b06e3df4fceba34da.js → 487.bundle.47d5719b6292b25fe08f.js} +0 -0
  27. /package/dist/{544.bundle.1b6998bb61d6f8f88da9.js → 544.bundle.3542927ec15c3f688c8d.js} +0 -0
  28. /package/dist/{594.bundle.cea96199bc0c0d1f3788.js → 594.bundle.d5c4c9d86ad885067f4c.js} +0 -0
  29. /package/dist/{669.bundle.fdb4bc855d3928c611f5.js → 669.bundle.d9800c500db3c7506923.js} +0 -0
  30. /package/dist/{7.bundle.6217bd76d0e172d6c2ec.js → 7.bundle.43265474d1b1e3a2e807.js} +0 -0
  31. /package/dist/{722.bundle.05e8759e64d484f4554d.js → 722.bundle.52eb61926d08a08793fe.js} +0 -0
  32. /package/dist/{783.bundle.7f3178f6834b10682c37.js → 783.bundle.8801ce765a23c521603e.js} +0 -0
  33. /package/dist/{862.bundle.4be5d148c2b1adf4dbf3.js → 862.bundle.9897a9b748078d53f9ab.js} +0 -0
  34. /package/dist/{889.bundle.466a8946346a3092ecb9.js → 889.bundle.e5576c74f9e3be4735c3.js} +0 -0
  35. /package/dist/{905.bundle.7d33a9d6baed122cde34.js → 905.bundle.922f97dd2430233ca0df.js} +0 -0
  36. /package/dist/{907.bundle.32f72275dcb472f13dc9.js → 907.bundle.2036aa494fadddd85254.js} +0 -0
  37. /package/dist/{961.bundle.d8feb064efc2f3f474d9.js → 961.bundle.91bc4c2b3f412147e127.js} +0 -0
@@ -563,7 +563,7 @@ __webpack_require__.r(__webpack_exports__);
563
563
  /* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13320);
564
564
  /* harmony import */ var _enums_Events__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(11731);
565
565
  /* harmony import */ var _eventTarget__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(51884);
566
- /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(42781);
566
+ /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(35678);
567
567
  /* harmony import */ var _requestPool_imageLoadPoolManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(775);
568
568
  /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(92136);
569
569
 
@@ -833,7 +833,7 @@ __webpack_require__.r(__webpack_exports__);
833
833
  /* harmony import */ var _utilities_triggerEvent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(13292);
834
834
  /* harmony import */ var lodash_clonedeep__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(48463);
835
835
  /* harmony import */ var lodash_clonedeep__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_clonedeep__WEBPACK_IMPORTED_MODULE_8__);
836
- /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(42781);
836
+ /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(35678);
837
837
  /* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(71702);
838
838
  /* harmony import */ var _utilities_cacheUtils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(51631);
839
839
 
@@ -1221,7 +1221,7 @@ imageLoadPoolManager.setMaxSimultaneousRequests(_enums_RequestType__WEBPACK_IMPO
1221
1221
  /* harmony export */ R: () => (/* binding */ RequestPoolManager)
1222
1222
  /* harmony export */ });
1223
1223
  /* harmony import */ var _enums_RequestType__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15453);
1224
- /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(42781);
1224
+ /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(35678);
1225
1225
 
1226
1226
 
1227
1227
  class RequestPoolManager {
@@ -556,7 +556,7 @@ __webpack_require__.r(__webpack_exports__);
556
556
  /* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13320);
557
557
  /* harmony import */ var _enums_Events__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(11731);
558
558
  /* harmony import */ var _eventTarget__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(51884);
559
- /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(42781);
559
+ /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(35678);
560
560
  /* harmony import */ var _requestPool_imageLoadPoolManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(775);
561
561
  /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(92136);
562
562
 
@@ -825,7 +825,7 @@ __webpack_require__.r(__webpack_exports__);
825
825
  /* harmony import */ var _utilities_triggerEvent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(13292);
826
826
  /* harmony import */ var lodash_clonedeep__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(48463);
827
827
  /* harmony import */ var lodash_clonedeep__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_clonedeep__WEBPACK_IMPORTED_MODULE_8__);
828
- /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(42781);
828
+ /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(35678);
829
829
  /* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(71702);
830
830
  /* harmony import */ var _utilities_cacheUtils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(51631);
831
831
 
@@ -1210,7 +1210,7 @@ imageLoadPoolManager.setMaxSimultaneousRequests(_enums_RequestType__WEBPACK_IMPO
1210
1210
  /* harmony export */ R: () => (/* binding */ RequestPoolManager)
1211
1211
  /* harmony export */ });
1212
1212
  /* harmony import */ var _enums_RequestType__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15453);
1213
- /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(42781);
1213
+ /* harmony import */ var _utilities__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(35678);
1214
1214
 
1215
1215
 
1216
1216
  class RequestPoolManager {
@@ -10019,12 +10019,15 @@ class ViewportColorbar extends _Colorbar__WEBPACK_IMPORTED_MODULE_1__/* .Colorba
10019
10019
  this.imageRange = ViewportColorbar._getImageRange(element, volumeId);
10020
10020
  };
10021
10021
  this._viewportVOIModifiedCallback = (evt) => {
10022
- const { viewportId, volumeId, range: voiRange } = evt.detail;
10022
+ const { viewportId, volumeId, range: voiRange, colormap } = evt.detail;
10023
10023
  const { viewport } = this.enabledElement;
10024
10024
  if (viewportId !== viewport.id || volumeId !== this._volumeId) {
10025
10025
  return;
10026
10026
  }
10027
10027
  this.voiRange = voiRange;
10028
+ if (colormap) {
10029
+ this.activeColormapName = colormap.name;
10030
+ }
10028
10031
  this.showAndAutoHideTicks();
10029
10032
  };
10030
10033
  this._viewportColormapModifiedCallback = (evt) => {
@@ -2750,8 +2750,8 @@ function ViewerHeader({
2750
2750
  hotkeyDefinitions,
2751
2751
  hotkeyDefaults
2752
2752
  } = hotkeysManager;
2753
- const versionNumber = "3.8.0-beta.92";
2754
- const commitHash = "c09311d3b7df05fcd00a9f36a7233e9d7e5589d0";
2753
+ const versionNumber = "3.8.0-beta.93";
2754
+ const commitHash = "f1a736d1934733a434cb87b2c284907a3122403f";
2755
2755
  const menuOptions = [{
2756
2756
  title: t('Header:About'),
2757
2757
  icon: 'info',
@@ -11756,7 +11756,10 @@ class TrackballRotateTool extends _base__WEBPACK_IMPORTED_MODULE_4__/* .BaseTool
11756
11756
  const viewportsInfo = this._getViewportsInfo();
11757
11757
  viewportsInfo.forEach(({ viewportId, renderingEngineId }) => {
11758
11758
  if (!this._resizeObservers.has(viewportId)) {
11759
- const { viewport } = (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_2__.getEnabledElementByIds)(viewportId, renderingEngineId);
11759
+ const { viewport } = (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_2__.getEnabledElementByIds)(viewportId, renderingEngineId) || { viewport: null };
11760
+ if (!viewport) {
11761
+ return;
11762
+ }
11760
11763
  const { element } = viewport;
11761
11764
  const resizeObserver = new ResizeObserver(() => {
11762
11765
  const element = (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_2__.getEnabledElementByIds)(viewportId, renderingEngineId);
@@ -2585,6 +2585,7 @@ function RectangleROI_getMappedAnnotations(annotation, DisplaySetService) {
2585
2585
  unit: modalityUnit,
2586
2586
  mean,
2587
2587
  stdDev,
2588
+ metadata,
2588
2589
  max,
2589
2590
  area,
2590
2591
  areaUnit
@@ -8315,6 +8316,7 @@ function getToolbarModule({
8315
8316
  }) {
8316
8317
  const {
8317
8318
  toolGroupService,
8319
+ toolbarService,
8318
8320
  syncGroupService,
8319
8321
  cornerstoneViewportService,
8320
8322
  hangingProtocolService,
@@ -8329,21 +8331,22 @@ function getToolbarModule({
8329
8331
  evaluate: ({
8330
8332
  viewportId,
8331
8333
  button,
8334
+ toolNames,
8332
8335
  disabledText
8333
8336
  }) => {
8334
8337
  const toolGroup = toolGroupService.getToolGroupForViewport(viewportId);
8335
8338
  if (!toolGroup) {
8336
8339
  return;
8337
8340
  }
8338
- const toolName = getToolNameForButton(button);
8339
- if (!toolGroup || !toolGroup.hasTool(toolName)) {
8341
+ const toolName = toolbarService.getToolNameForButton(button);
8342
+ if (!toolGroup || !toolGroup.hasTool(toolName) && !toolNames) {
8340
8343
  return {
8341
8344
  disabled: true,
8342
8345
  className: '!text-common-bright ohif-disabled',
8343
8346
  disabledText: disabledText ?? 'Not available on the current viewport'
8344
8347
  };
8345
8348
  }
8346
- const isPrimaryActive = toolGroup.getActivePrimaryMouseButtonTool() === toolName;
8349
+ const isPrimaryActive = toolNames ? toolNames.includes(toolGroup.getActivePrimaryMouseButtonTool()) : toolGroup.getActivePrimaryMouseButtonTool() === toolName;
8347
8350
  return {
8348
8351
  disabled: false,
8349
8352
  className: isPrimaryActive ? '!text-black bg-primary-light rounded' : '!text-common-bright hover:!bg-primary-dark hover:!text-primary-light rounded',
@@ -8375,7 +8378,7 @@ function getToolbarModule({
8375
8378
  // check if the active toolName is part of the items then we need
8376
8379
  // to move it to the primary button
8377
8380
  const activeToolIndex = items.findIndex(item => {
8378
- const toolName = getToolNameForButton(item);
8381
+ const toolName = toolbarService.getToolNameForButton(item);
8379
8382
  return toolName === activeToolName;
8380
8383
  });
8381
8384
 
@@ -8420,6 +8423,7 @@ function getToolbarModule({
8420
8423
  }) => _evaluateToggle({
8421
8424
  viewportId,
8422
8425
  button,
8426
+ toolbarService,
8423
8427
  disabledText,
8424
8428
  offModes: [dist_esm.Enums.ToolModes.Disabled],
8425
8429
  toolGroupService
@@ -8433,6 +8437,7 @@ function getToolbarModule({
8433
8437
  }) => _evaluateToggle({
8434
8438
  viewportId,
8435
8439
  button,
8440
+ toolbarService,
8436
8441
  disabledText,
8437
8442
  offModes: [dist_esm.Enums.ToolModes.Disabled, dist_esm.Enums.ToolModes.Passive],
8438
8443
  toolGroupService
@@ -8561,6 +8566,7 @@ function getToolbarModule({
8561
8566
  }
8562
8567
  function _evaluateToggle({
8563
8568
  viewportId,
8569
+ toolbarService,
8564
8570
  button,
8565
8571
  disabledText,
8566
8572
  offModes,
@@ -8570,7 +8576,7 @@ function _evaluateToggle({
8570
8576
  if (!toolGroup) {
8571
8577
  return;
8572
8578
  }
8573
- const toolName = getToolNameForButton(button);
8579
+ const toolName = toolbarService.getToolNameForButton(button);
8574
8580
  if (!toolGroup.hasTool(toolName)) {
8575
8581
  return {
8576
8582
  disabled: true,
@@ -8583,22 +8589,6 @@ function _evaluateToggle({
8583
8589
  className: getToggledClassName(!isOff)
8584
8590
  };
8585
8591
  }
8586
-
8587
- // Todo: this is duplicate, we should move it to a shared location
8588
- function getToolNameForButton(button) {
8589
- const {
8590
- props
8591
- } = button;
8592
- const commands = props?.commands || button.commands;
8593
- const commandsArray = Array.isArray(commands) ? commands : [commands];
8594
- const firstCommand = commandsArray[0];
8595
- if (firstCommand?.commandOptions) {
8596
- return firstCommand.commandOptions.toolName ?? props?.id ?? button.id;
8597
- }
8598
-
8599
- // use id as a fallback for toolName
8600
- return props?.id ?? button.id;
8601
- }
8602
8592
  ;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/services/ToolGroupService/ToolGroupService.ts
8603
8593
  var _ToolGroupService;
8604
8594
 
@@ -10993,13 +10983,29 @@ const DEFAULT_TOOLGROUP_ID = 'default';
10993
10983
 
10994
10984
  // Return true if the data contains the given display set UID OR the imageId
10995
10985
  // if it is a composite object.
10996
- const dataContains = (data, displaySetUID, imageId) => {
10997
- if (data.displaySetInstanceUID === displaySetUID) {
10998
- return true;
10999
- }
10986
+ const dataContains = ({
10987
+ data,
10988
+ displaySetUID,
10989
+ imageId,
10990
+ viewport
10991
+ }) => {
11000
10992
  if (imageId && data.isCompositeStack && data.imageIds) {
11001
10993
  return !!data.imageIds.find(dataId => dataId === imageId);
11002
10994
  }
10995
+ if (imageId && (data.volumeId || viewport instanceof esm.VolumeViewport)) {
10996
+ const isAcquisition = !!viewport.getCurrentImageId();
10997
+ if (!isAcquisition) {
10998
+ return false;
10999
+ }
11000
+ const imageURI = esm.utilities.imageIdToURI(imageId);
11001
+ const hasImageId = viewport.hasImageURI(imageURI);
11002
+ if (hasImageId) {
11003
+ return true;
11004
+ }
11005
+ }
11006
+ if (data.displaySetInstanceUID === displaySetUID) {
11007
+ return true;
11008
+ }
11003
11009
  return false;
11004
11010
  };
11005
11011
  class ViewportInfo {
@@ -11029,10 +11035,23 @@ class ViewportInfo {
11029
11035
  if (!this.viewportData?.data) {
11030
11036
  return false;
11031
11037
  }
11038
+ const {
11039
+ viewport
11040
+ } = (0,esm.getEnabledElementByViewportId)(this.viewportId) || {};
11032
11041
  if (this.viewportData.data.length) {
11033
- return !!this.viewportData.data.find(data => dataContains(data, displaySetUID, imageId));
11042
+ return !!this.viewportData.data.find(data => dataContains({
11043
+ data,
11044
+ displaySetUID,
11045
+ imageId,
11046
+ viewport
11047
+ }));
11034
11048
  }
11035
- return dataContains(this.viewportData.data, displaySetUID, imageId);
11049
+ return dataContains({
11050
+ data: this.viewportData.data,
11051
+ displaySetUID,
11052
+ imageId,
11053
+ viewport
11054
+ });
11036
11055
  }
11037
11056
  setRenderingEngineId(renderingEngineId) {
11038
11057
  this.renderingEngineId = renderingEngineId;
@@ -11657,6 +11676,9 @@ class CornerstoneViewportService extends src/* PubSubService */.Rc {
11657
11676
  */
11658
11677
  getViewportIdToJump(activeViewportId, displaySetInstanceUID, cameraProps) {
11659
11678
  const viewportInfo = this.getViewportInfo(activeViewportId);
11679
+ if (viewportInfo.getViewportType() === esm.Enums.ViewportType.VOLUME_3D) {
11680
+ return null;
11681
+ }
11660
11682
  const {
11661
11683
  referencedImageId
11662
11684
  } = cameraProps;