@ohif/app 3.13.0-beta.116 → 3.13.0-beta.117

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 (47) hide show
  1. package/dist/{1206.bundle.47f070e2254d128c.js → 1206.bundle.e04ca1efe6f987ba.js} +1 -1
  2. package/dist/1483.bundle.ab1e3a882b58eb79.js +470 -0
  3. package/dist/{1602.bundle.097ec19e8e61516f.js → 1602.bundle.ea4c1b43123dd2b3.js} +2 -2
  4. package/dist/{7701.bundle.945445d6681ddd20.js → 2343.bundle.48839e1b3fa4505e.js} +990 -7
  5. package/dist/{3500.bundle.1e063b7b4910d6cf.js → 3500.bundle.da69a02594beccc8.js} +1 -1
  6. package/dist/{3760.bundle.6c7eeb4b7f1583ca.js → 3760.bundle.e406b1c3fadf2a3b.js} +2 -2
  7. package/dist/{5448.bundle.1e50777e4c4e122a.js → 5448.bundle.5686ebb99c379f64.js} +1 -1
  8. package/dist/{5696.bundle.9f0366ad867385bc.js → 5696.bundle.4e44ce1f590134eb.js} +7 -4
  9. package/dist/{5910.bundle.5561806884c95754.js → 5910.bundle.0f19608f3e76859b.js} +2 -2
  10. package/dist/{419.bundle.9d0e6a72e1e3a17b.js → 6749.bundle.8c3dd9258f09df24.js} +288 -62
  11. package/dist/{7248.bundle.f761b21f343d4b9f.js → 7248.bundle.11ec7ee7e10b0a34.js} +2 -2
  12. package/dist/{7295.bundle.4d4b6de4d2bb8856.js → 7499.bundle.0f065214db09a60b.js} +502 -5
  13. package/dist/{781.bundle.efb0a6981676cebb.js → 781.bundle.3c1a02ca26d4565a.js} +2 -2
  14. package/dist/{8423.bundle.5d1b3092bc9562c9.js → 8423.bundle.f8e7d0f1eba7e178.js} +2 -2
  15. package/dist/8492.bundle.de58afbc98ce7972.js +504 -0
  16. package/dist/8595.css +2 -0
  17. package/dist/{899.bundle.e786f8dfb66d74ca.js → 899.bundle.50c16f860acbc848.js} +2 -2
  18. package/dist/{9068.bundle.cd36fcb4e15a153e.js → 9068.bundle.95f1e638ef694ea9.js} +2 -2
  19. package/dist/{9402.bundle.6549cc304496cd5c.js → 9402.bundle.6a8a324e963b4099.js} +2 -2
  20. package/dist/{9415.bundle.2a970c71de4014bf.js → 9415.bundle.20fee612b3b3dbfd.js} +2 -2
  21. package/dist/{9437.bundle.0fff227a859992ea.js → 9437.bundle.f3f5aff637471ac4.js} +107 -123
  22. package/dist/app-config.js +1 -1
  23. package/dist/{app.bundle.55057e411d635dc3.js → app.bundle.a73ad7e598640adf.js} +203 -36
  24. package/dist/customizations/index.html +400 -0
  25. package/dist/customizations/segmentation/segmentationAnnotationTools.jsonc +48 -0
  26. package/dist/customizations/segmentation/segmentationEditing.jsonc +59 -0
  27. package/dist/customizations/{ctPresets.jsonc → tools/ctPresets.jsonc} +1 -1
  28. package/dist/customizations/{measurementLabels.jsonc → tools/measurementLabels.jsonc} +1 -1
  29. package/dist/customizations/{smoothRotate.jsonc → tools/smoothRotate.jsonc} +1 -1
  30. package/dist/customizations/veterinary/veterinary.jsonc +5 -0
  31. package/dist/customizations/{veterinaryOverlay.jsonc → veterinary/veterinaryOverlay.jsonc} +3 -3
  32. package/dist/customizations/{patientBirthDate.jsonc → worklist/patientBirthDate.jsonc} +2 -2
  33. package/dist/index.html +1 -1
  34. package/dist/sw.js +1 -1
  35. package/package.json +5 -5
  36. package/dist/4834.bundle.a91450199d0f45e4.js +0 -900
  37. package/dist/6001.bundle.0789789db5410764.js +0 -1529
  38. package/dist/customizations/veterinary.jsonc +0 -5
  39. /package/dist/{100.bundle.ac04a425c0851574.js → 100.bundle.ec5ee3b5f479a217.js} +0 -0
  40. /package/dist/{1180.bundle.c19c443fe8d26719.js → 1180.bundle.9bed26c1a1e75389.js} +0 -0
  41. /package/dist/{2779.bundle.dca036a18399be96.js → 2779.bundle.2a225a69fb65c30d.js} +0 -0
  42. /package/dist/{4556.bundle.b705ab15473128c7.js → 4556.bundle.735ccc9efdad0052.js} +0 -0
  43. /package/dist/{4683.bundle.5d12928efa9f70f4.js → 4683.bundle.e5d3182f0f4347af.js} +0 -0
  44. /package/dist/{7295.css → 8492.css} +0 -0
  45. /package/dist/{8832.bundle.ede981706cac8e15.js → 8832.bundle.1cb57aab32daeab8.js} +0 -0
  46. /package/dist/{9116.bundle.225e003c28c550c1.js → 9116.bundle.fffb2ff349a3c452.js} +0 -0
  47. /package/dist/{9290.bundle.a18c40b82772a3c6.js → 9290.bundle.82cf4e74ab3fa20a.js} +0 -0
@@ -7,12 +7,16 @@ __webpack_require__.d(__webpack_exports__, {
7
7
  "default": () => (/* binding */ basic_test_mode_src)
8
8
  });
9
9
 
10
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 1 modules
11
- var esm = __webpack_require__(88479);
12
- // EXTERNAL MODULE: ../../core/src/index.ts + 75 modules
13
- var src = __webpack_require__(50679);
10
+ // UNUSED EXPORTS: basicTestLayout, basicTestRoute, initToolGroups, modeInstance
11
+
14
12
  // EXTERNAL MODULE: ../../../node_modules/i18next/dist/esm/i18next.js + 22 modules
15
13
  var i18next = __webpack_require__(26104);
14
+ // EXTERNAL MODULE: ../../core/src/index.ts + 75 modules
15
+ var src = __webpack_require__(50679);
16
+ // EXTERNAL MODULE: ../../../modes/basic/src/index.tsx + 4 modules
17
+ var basic_src = __webpack_require__(69932);
18
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 1 modules
19
+ var esm = __webpack_require__(88479);
16
20
  ;// CONCATENATED MODULE: ../../../modes/basic-test-mode/src/toolbarButtons.ts
17
21
  // TODO: torn, can either bake this here; or have to create a whole new button type
18
22
  // Only ways that you can pass in a custom React component for render :l
@@ -868,7 +872,11 @@ function initVolume3DToolGroup(extensionManager, toolGroupService) {
868
872
  };
869
873
  toolGroupService.createToolGroupAndAddTools('volume3d', tools);
870
874
  }
871
- function initToolGroups(extensionManager, toolGroupService, commandsManager) {
875
+ function initToolGroups({
876
+ extensionManager,
877
+ toolGroupService,
878
+ commandsManager
879
+ }) {
872
880
  initDefaultToolGroup(extensionManager, toolGroupService, commandsManager, 'default');
873
881
  initSRToolGroup(extensionManager, toolGroupService, commandsManager);
874
882
  initMPRToolGroup(extensionManager, toolGroupService, commandsManager);
@@ -881,6 +889,11 @@ function initToolGroups(extensionManager, toolGroupService, commandsManager) {
881
889
 
882
890
 
883
891
 
892
+
893
+ const {
894
+ TOOLBAR_SECTIONS
895
+ } = src/* .ToolbarService */.hx;
896
+
884
897
  // Allow this mode by excluding non-imaging modalities such as SR, SEG
885
898
  // Also, SM is not a simple imaging modalities, so exclude it.
886
899
  const NON_IMAGE_MODALITIES = ['ECG', 'SR', 'SEG', 'RTSTRUCT'];
@@ -933,133 +946,104 @@ const extensionDependencies = {
933
946
  '@ohif/extension-dicom-video': '^3.0.1',
934
947
  '@ohif/extension-test': '^0.0.1'
935
948
  };
936
- function modeFactory() {
937
- return {
938
- id: id,
939
- routeName: 'basic-test',
940
- displayName: i18next/* ["default"].t */.A.t('Modes:Basic Test Mode'),
941
- /**
942
- * Lifecycle hooks
943
- */
944
- onModeEnter: ({
945
- servicesManager,
946
- extensionManager,
947
- commandsManager
948
- }) => {
949
- const {
950
- measurementService,
951
- toolbarService,
952
- toolGroupService,
953
- customizationService
954
- } = servicesManager.services;
955
- measurementService.clearMeasurements();
956
-
957
- // Init Default and SR ToolGroups
958
- src_initToolGroups(extensionManager, toolGroupService, commandsManager);
959
949
 
960
- // init customizations
961
- customizationService.setCustomizations(['@ohif/extension-test.customizationModule.custom-context-menu']);
962
- toolbarService.register(src_toolbarButtons);
963
- console.debug('toolbarButtons', src_toolbarButtons);
964
- toolbarService.updateSection(toolbarService.sections.primary, ['MeasurementTools', 'Zoom', 'WindowLevelGroup', 'Pan', 'Capture', 'Layout', 'MPR', 'Crosshairs', 'MoreTools']);
965
- toolbarService.updateSection('WindowLevelGroup', ['WindowLevel', 'Soft tissue', 'Lung', 'Liver', 'Bone', 'Brain']);
966
- toolbarService.updateSection(toolbarService.sections.viewportActionMenu.topLeft, ['orientationMenu', 'dataOverlayMenu']);
967
- toolbarService.updateSection(toolbarService.sections.viewportActionMenu.bottomMiddle, ['AdvancedRenderingControls']);
968
- toolbarService.updateSection('AdvancedRenderingControls', ['voiManualControlMenu', 'Colorbar', 'opacityMenu', 'thresholdMenu']);
969
- toolbarService.updateSection(toolbarService.sections.viewportActionMenu.topRight, ['modalityLoadBadge', 'trackingStatus', 'navigationComponent']);
970
- toolbarService.updateSection(toolbarService.sections.viewportActionMenu.bottomLeft, ['windowLevelMenu']);
971
- toolbarService.updateSection('WindowLevelGroup', ['WindowLevel', 'Soft tissue', 'Lung', 'Liver', 'Bone', 'Brain']);
972
- toolbarService.updateSection('MeasurementTools', ['Length', 'Bidirectional', 'ArrowAnnotate', 'EllipticalROI', 'CircleROI', 'PlanarFreehandROI', 'SplineROI', 'LivewireContour']);
973
- toolbarService.updateSection('MoreTools', ['Reset', 'rotate-right', 'flipHorizontal', 'ImageSliceSync', 'ReferenceLines', 'ImageOverlayViewer', 'StackScroll', 'invert', 'Probe', 'Cine', 'Angle', 'CobbAngle', 'Magnify', 'RectangleROI', 'CalibrationLine', 'TagBrowser', 'AdvancedMagnify', 'UltrasoundDirectionalTool', 'WindowLevelRegion']);
974
- customizationService.setCustomizations({
975
- 'ohif.hotkeyBindings': {
976
- $push: [{
977
- commandName: 'undo',
978
- label: 'Undo',
979
- keys: ['ctrl+z'],
980
- isEditable: true
981
- }]
982
- }
983
- }, 'mode');
984
- },
985
- onModeExit: ({
986
- servicesManager
987
- }) => {
988
- const {
989
- toolGroupService,
990
- syncGroupService,
991
- segmentationService,
992
- cornerstoneViewportService,
993
- uiDialogService,
994
- uiModalService
995
- } = servicesManager.services;
996
- uiDialogService.hideAll();
997
- uiModalService.hide();
998
- toolGroupService.destroy();
999
- syncGroupService.destroy();
1000
- segmentationService.destroy();
1001
- cornerstoneViewportService.destroy();
1002
- },
1003
- validationTags: {
1004
- study: [],
1005
- series: []
1006
- },
1007
- isValidMode: function ({
1008
- modalities
1009
- }) {
1010
- const modalities_list = modalities.split('\\');
950
+ /**
951
+ * The test mode's toolbar layout, supplied as literal values rather than
952
+ * `{ $reference }` capability-pack markers (the composition is resolved the
953
+ * same way either — literals pass through untouched).
954
+ */
955
+ const toolbarSections = {
956
+ [TOOLBAR_SECTIONS.primary]: ['MeasurementTools', 'Zoom', 'WindowLevelGroup', 'Pan', 'Capture', 'Layout', 'MPR', 'Crosshairs', 'MoreTools'],
957
+ WindowLevelGroup: ['WindowLevel', 'Soft tissue', 'Lung', 'Liver', 'Bone', 'Brain'],
958
+ [TOOLBAR_SECTIONS.viewportActionMenu.topLeft]: ['orientationMenu', 'dataOverlayMenu'],
959
+ [TOOLBAR_SECTIONS.viewportActionMenu.bottomMiddle]: ['AdvancedRenderingControls'],
960
+ AdvancedRenderingControls: ['voiManualControlMenu', 'Colorbar', 'opacityMenu', 'thresholdMenu'],
961
+ [TOOLBAR_SECTIONS.viewportActionMenu.topRight]: ['modalityLoadBadge', 'trackingStatus', 'navigationComponent'],
962
+ [TOOLBAR_SECTIONS.viewportActionMenu.bottomLeft]: ['windowLevelMenu'],
963
+ MeasurementTools: ['Length', 'Bidirectional', 'ArrowAnnotate', 'EllipticalROI', 'CircleROI', 'PlanarFreehandROI', 'SplineROI', 'LivewireContour'],
964
+ MoreTools: ['Reset', 'rotate-right', 'flipHorizontal', 'ImageSliceSync', 'ReferenceLines', 'ImageOverlayViewer', 'StackScroll', 'invert', 'Probe', 'Cine', 'Angle', 'CobbAngle', 'Magnify', 'RectangleROI', 'CalibrationLine', 'TagBrowser', 'AdvancedMagnify', 'UltrasoundDirectionalTool', 'WindowLevelRegion']
965
+ };
966
+ const basicTestLayout = {
967
+ id: ohif.layout,
968
+ props: {
969
+ // Literal panel lists; the shared layout template also accepts
970
+ // customization names here.
971
+ leftPanels: [tracked.thumbnailList],
972
+ leftPanelResizable: true,
973
+ rightPanels: [cornerstone.panel, tracked.measurements, testExtension.measurements],
974
+ rightPanelResizable: true,
975
+ viewports: [{
976
+ namespace: tracked.viewport,
977
+ displaySetsToDisplay: [ohif.sopClassHandler, dicomvideo.sopClassHandler, ohif.wsiSopClassHandler]
978
+ }, {
979
+ namespace: dicomsr.viewport,
980
+ displaySetsToDisplay: [dicomsr.sopClassHandler, dicomsr.sopClassHandler3D]
981
+ }, {
982
+ namespace: dicompdf.viewport,
983
+ displaySetsToDisplay: [dicompdf.sopClassHandler]
984
+ }, {
985
+ namespace: dicomSeg.viewport,
986
+ displaySetsToDisplay: [dicomSeg.sopClassHandler]
987
+ }, {
988
+ namespace: dicomPmap.viewport,
989
+ displaySetsToDisplay: [dicomPmap.sopClassHandler]
990
+ }]
991
+ }
992
+ };
993
+ const basicTestRoute = {
994
+ path: 'basic-test',
995
+ layoutTemplate: basic_src/* .layoutTemplate */.ZM,
996
+ layoutInstance: basicTestLayout
997
+ };
1011
998
 
1012
- // Exclude non-image modalities
1013
- return {
1014
- valid: !!modalities_list.filter(modality => NON_IMAGE_MODALITIES.indexOf(modality) === -1).length,
1015
- description: 'The mode does not support studies that ONLY include the following modalities: SM, ECG, SR, SEG'
1016
- };
1017
- },
1018
- routes: [{
1019
- path: 'basic-test',
1020
- layoutTemplate: () => {
1021
- return {
1022
- id: ohif.layout,
1023
- props: {
1024
- leftPanels: [tracked.thumbnailList],
1025
- leftPanelResizable: true,
1026
- rightPanels: [cornerstone.panel, tracked.measurements, testExtension.measurements],
1027
- rightPanelResizable: true,
1028
- viewports: [{
1029
- namespace: tracked.viewport,
1030
- displaySetsToDisplay: [ohif.sopClassHandler, dicomvideo.sopClassHandler, ohif.wsiSopClassHandler]
1031
- }, {
1032
- namespace: dicomsr.viewport,
1033
- displaySetsToDisplay: [dicomsr.sopClassHandler, dicomsr.sopClassHandler3D]
1034
- }, {
1035
- namespace: dicompdf.viewport,
1036
- displaySetsToDisplay: [dicompdf.sopClassHandler]
1037
- }, {
1038
- namespace: dicomSeg.viewport,
1039
- displaySetsToDisplay: [dicomSeg.sopClassHandler]
1040
- }, {
1041
- namespace: dicomPmap.viewport,
1042
- displaySetsToDisplay: [dicomPmap.sopClassHandler]
1043
- }]
1044
- }
1045
- };
1046
- }
1047
- }],
1048
- extensions: extensionDependencies,
1049
- hangingProtocol: 'default',
1050
- sopClassHandlers: [dicomvideo.sopClassHandler, dicomSeg.sopClassHandler, ohif.wsiSopClassHandler, ohif.sopClassHandler, dicompdf.sopClassHandler, dicomsr.sopClassHandler, dicomsr.sopClassHandler3D],
1051
- hotkeys: {
1052
- name: 'basic-test-hotkeys'
999
+ /**
1000
+ * Extends the basic mode instance: the shared onModeEnter/onModeExit are
1001
+ * inherited, and the test specifics (toolbar layout, tool groups, test
1002
+ * customizations) are supplied as instance data.
1003
+ */
1004
+ const modeInstance = {
1005
+ ...basic_src/* .modeInstance */.dw,
1006
+ id: id,
1007
+ routeName: 'basic-test',
1008
+ displayName: i18next/* ["default"].t */.A.t('Modes:Basic Test Mode'),
1009
+ // Literal toolbar values instead of the basic mode's customization names.
1010
+ toolbarButtons: src_toolbarButtons,
1011
+ toolbarSections,
1012
+ // Tool group setup used by the shared onModeEnter.
1013
+ initToolGroups: src_initToolGroups,
1014
+ // The mode's own customizations, applied by the mode route as the bottom
1015
+ // layer of the mode scope: the test extension's custom context menu, plus
1016
+ // the undo hotkey used by the E2E tests. Given as a literal here; modes may
1017
+ // also reference a registered block by name (see `basicModeCustomizations`).
1018
+ modeCustomizations: ['@ohif/extension-test.customizationModule.custom-context-menu', {
1019
+ 'ohif.hotkeyBindings': {
1020
+ $push: [{
1021
+ commandName: 'undo',
1022
+ label: 'Undo',
1023
+ keys: ['ctrl+z'],
1024
+ isEditable: true
1025
+ }]
1053
1026
  }
1054
- };
1055
- }
1027
+ }],
1028
+ isValidMode: basic_src/* .isValidMode */.ur,
1029
+ nonModeModalities: NON_IMAGE_MODALITIES,
1030
+ routes: [basicTestRoute],
1031
+ extensions: extensionDependencies,
1032
+ hangingProtocol: 'default',
1033
+ sopClassHandlers: [dicomvideo.sopClassHandler, dicomSeg.sopClassHandler, ohif.wsiSopClassHandler, ohif.sopClassHandler, dicompdf.sopClassHandler, dicomsr.sopClassHandler, dicomsr.sopClassHandler3D],
1034
+ hotkeys: {
1035
+ name: 'basic-test-hotkeys'
1036
+ }
1037
+ };
1056
1038
  const mode = {
1057
1039
  id: id,
1058
- modeFactory,
1040
+ modeFactory: basic_src/* .modeFactory */.U1,
1041
+ modeInstance,
1059
1042
  extensionDependencies
1060
1043
  };
1061
1044
  /* export default */ const basic_test_mode_src = (mode);
1062
1045
 
1046
+
1063
1047
  },
1064
1048
 
1065
1049
  }]);
@@ -33,7 +33,7 @@ window.config = {
33
33
  // are never executed. Example (left disabled here on purpose):
34
34
  //
35
35
  // customizationUrlPrefixes: {
36
- // default: './customizations/', // ?customization=ctPresets
36
+ // default: './customizations/', // ?customization=tools/ctPresets
37
37
  // '/remote/': 'https://cdn.example.com/ohif-custom/', // ?customization=/remote/siteA
38
38
  // },
39
39
  // ----------------------------------------------------------------------------