@ohif/app 3.7.0-beta.79 → 3.7.0-beta.80

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 (40) hide show
  1. package/dist/{128.bundle.d4536952e6eda267cb5a.js → 128.bundle.5198a2266456afecd420.js} +37 -55
  2. package/dist/{181.bundle.9a76ce585a7139d4862f.js → 181.bundle.fa57199595cf28f44c7b.js} +3 -3
  3. package/dist/{30.bundle.16bfc3a374fc4eda5ffc.js → 19.bundle.75ec1ec14786e136b7b3.js} +114 -260
  4. package/dist/19.css +1 -0
  5. package/dist/{202.bundle.6c3b5e9f37d88388e5c8.js → 202.bundle.96bbb4547a346fe3921f.js} +3 -3
  6. package/dist/221.bundle.8a81cea315fa7697c0e0.js +1722 -0
  7. package/dist/221.css +2 -0
  8. package/dist/{236.bundle.2386ed58739fdbdd53f8.js → 236.bundle.d2da6d1991e1229bf913.js} +11 -16
  9. package/dist/{250.bundle.77985c008fc579308ca9.js → 250.bundle.36909d7bc681d66087d1.js} +4 -4
  10. package/dist/{90.bundle.1d113c4a201e850c98c0.js → 342.bundle.70da5239bd664aa5d41a.js} +408 -152
  11. package/dist/{348.bundle.343c39a8c96a044b0fe2.js → 348.bundle.8c5b950d30e5aa992290.js} +45 -56
  12. package/dist/{359.bundle.2618db789083f7d3007d.js → 359.bundle.d2a3abe1a5cd3ca3cd8e.js} +36 -115
  13. package/dist/{410.bundle.5cc4909f3c608350a71e.js → 410.bundle.be538faa9c7fad92189b.js} +3 -4
  14. package/dist/{451.bundle.aaabf094eb8fa67da819.js → 451.bundle.dc0d14c3724464cca2bf.js} +27 -19
  15. package/dist/{471.bundle.953dacdccd46028efba7.js → 471.bundle.2206d4c0ac2ad0df2362.js} +26 -19
  16. package/dist/{506.bundle.c0258b1d7299fdb7628e.js → 506.bundle.97e53732423192fee818.js} +1 -75
  17. package/dist/{677.bundle.ec5f2b4707db33bd4d8e.js → 530.bundle.a03b6f942ace3e1baa1e.js} +5 -10
  18. package/dist/613.bundle.549d71231abfed24a2dc.js +532 -0
  19. package/dist/{754.bundle.6618bdd7f648b532c682.js → 754.bundle.e3ce6855d8d4d187f224.js} +36 -46
  20. package/dist/{777.bundle.82a7cc23a7b6a8bd12fa.js → 777.bundle.ae3fdb8a470caecc0c6a.js} +2 -2
  21. package/dist/{782.bundle.6fa60a24d3d4ad76c8db.js → 782.bundle.ee8dba2e8582b55cb38d.js} +7 -7
  22. package/dist/{822.bundle.4767349eb43b79145b3e.js → 822.bundle.5fca45a4f40f5259aec5.js} +2 -2
  23. package/dist/831.bundle.83658f62fcc769043605.js +16700 -0
  24. package/dist/{886.bundle.7ee671b1d5656455d067.js → 886.bundle.a9de117c3a42b7907cf6.js} +2 -2
  25. package/dist/{967.bundle.ab062b0b325bed3b9af9.js → 967.bundle.cce1d004b2ff178b1a8e.js} +242 -101
  26. package/dist/app-config.js +1 -5
  27. package/dist/{app.bundle.adf312c193d56262fa41.js → app.bundle.681f66ab37cef811e68b.js} +21839 -18707
  28. package/dist/app.bundle.css +8 -7
  29. package/dist/index.html +1 -1
  30. package/dist/sw.js +1 -1
  31. package/package.json +19 -19
  32. package/dist/150.bundle.1fff6b0c3496b6367f58.js +0 -742
  33. /package/dist/{12.bundle.653904a1682368c34d6b.js → 12.bundle.4a052141b46dec16862d.js} +0 -0
  34. /package/dist/{125.bundle.aeaad798561853bf6939.js → 125.bundle.253395f320b72180da63.js} +0 -0
  35. /package/dist/{281.bundle.fbb8c83b343a6903d529.js → 281.bundle.21a9e3178ddebe01b958.js} +0 -0
  36. /package/dist/{417.bundle.6cadc61b8a455776de31.js → 417.bundle.af0a207c29b109f84159.js} +0 -0
  37. /package/dist/{663.bundle.5175469e25c5196a739c.js → 663.bundle.b0f98b6e7221b1b9cf6a.js} +0 -0
  38. /package/dist/{686.bundle.b3dbf84eefbef768843f.js → 686.bundle.dccef1f36e4bc79bcc48.js} +0 -0
  39. /package/dist/{687.bundle.60d3856e6e77c027c174.js → 687.bundle.ab0ffdccae4610b00224.js} +0 -0
  40. /package/dist/{814.bundle.ba4f6267b43f8dbc803f.js → 814.bundle.eec4458e893e6055f0fc.js} +0 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (self["webpackChunk"] = self["webpackChunk"] || []).push([[30],{
2
+ (self["webpackChunk"] = self["webpackChunk"] || []).push([[19,579],{
3
3
 
4
- /***/ 1053:
4
+ /***/ 41832:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
 
@@ -18,10 +18,10 @@ var prop_types = __webpack_require__(3827);
18
18
  var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
19
19
  // EXTERNAL MODULE: ../../../node_modules/xstate/es/index.js + 22 modules
20
20
  var es = __webpack_require__(261);
21
- // EXTERNAL MODULE: ../../../node_modules/@xstate/react/es/index.js + 9 modules
22
- var react_es = __webpack_require__(59677);
23
- // EXTERNAL MODULE: ../../ui/src/index.js + 458 modules
24
- var src = __webpack_require__(88344);
21
+ // EXTERNAL MODULE: ../../../node_modules/@xstate/react/es/index.js + 8 modules
22
+ var react_es = __webpack_require__(44530);
23
+ // EXTERNAL MODULE: ../../ui/src/index.js + 485 modules
24
+ var src = __webpack_require__(71783);
25
25
  ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/contexts/TrackedMeasurementsContext/measurementTrackingMachine.js
26
26
 
27
27
  const RESPONSE = {
@@ -37,6 +37,7 @@ const machineConfiguration = {
37
37
  id: 'measurementTracking',
38
38
  initial: 'idle',
39
39
  context: {
40
+ activeViewportId: null,
40
41
  trackedStudy: '',
41
42
  trackedSeries: [],
42
43
  ignoredSeries: [],
@@ -66,7 +67,12 @@ const machineConfiguration = {
66
67
  cond: 'hasNotIgnoredSRSeriesForHydration'
67
68
  },
68
69
  RESTORE_PROMPT_HYDRATE_SR: 'promptHydrateStructuredReport',
69
- HYDRATE_SR: 'hydrateStructuredReport'
70
+ HYDRATE_SR: 'hydrateStructuredReport',
71
+ UPDATE_ACTIVE_VIEWPORT_ID: {
72
+ actions: (0,es/* assign */.f0)({
73
+ activeViewportId: (_, event) => event.activeViewportId
74
+ })
75
+ }
70
76
  }
71
77
  },
72
78
  promptBeginTracking: {
@@ -381,17 +387,17 @@ function _askTrackMeasurements(uiViewportDialogService, viewportId) {
381
387
  const message = 'Track measurements for this series?';
382
388
  const actions = [{
383
389
  id: 'prompt-begin-tracking-cancel',
384
- type: src/* ButtonEnums.type */.LZ.U.secondary,
390
+ type: src/* ButtonEnums.type */.LZ.dt.secondary,
385
391
  text: 'No',
386
392
  value: promptBeginTracking_RESPONSE.CANCEL
387
393
  }, {
388
394
  id: 'prompt-begin-tracking-no-do-not-ask-again',
389
- type: src/* ButtonEnums.type */.LZ.U.secondary,
395
+ type: src/* ButtonEnums.type */.LZ.dt.secondary,
390
396
  text: 'No, do not ask again',
391
397
  value: promptBeginTracking_RESPONSE.NO_NEVER
392
398
  }, {
393
399
  id: 'prompt-begin-tracking-yes',
394
- type: src/* ButtonEnums.type */.LZ.U.primary,
400
+ type: src/* ButtonEnums.type */.LZ.dt.primary,
395
401
  text: 'Yes',
396
402
  value: promptBeginTracking_RESPONSE.SET_STUDY_AND_SERIES
397
403
  }];
@@ -455,15 +461,15 @@ function _askShouldAddMeasurements(uiViewportDialogService, viewportId) {
455
461
  return new Promise(function (resolve, reject) {
456
462
  const message = 'Do you want to add this measurement to the existing report?';
457
463
  const actions = [{
458
- type: src/* ButtonEnums.type */.LZ.U.secondary,
464
+ type: src/* ButtonEnums.type */.LZ.dt.secondary,
459
465
  text: 'Cancel',
460
466
  value: promptTrackNewSeries_RESPONSE.CANCEL
461
467
  }, {
462
- type: src/* ButtonEnums.type */.LZ.U.primary,
468
+ type: src/* ButtonEnums.type */.LZ.dt.primary,
463
469
  text: 'Create new report',
464
470
  value: promptTrackNewSeries_RESPONSE.CREATE_REPORT
465
471
  }, {
466
- type: src/* ButtonEnums.type */.LZ.U.primary,
472
+ type: src/* ButtonEnums.type */.LZ.dt.primary,
467
473
  text: 'Add to existing report',
468
474
  value: promptTrackNewSeries_RESPONSE.ADD_SERIES
469
475
  }];
@@ -621,70 +627,17 @@ function promptTrackNewStudy_askSaveDiscardOrCancel(UIViewportDialogService, vie
621
627
  });
622
628
  }
623
629
  /* harmony default export */ const TrackedMeasurementsContext_promptTrackNewStudy = (promptTrackNewStudy);
624
- // EXTERNAL MODULE: ../../core/src/index.ts + 75 modules
625
- var core_src = __webpack_require__(34491);
626
- ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/_shared/createReportAsync.tsx
627
-
628
-
629
-
630
- /**
631
- *
632
- * @param {*} servicesManager
633
- * @param {*} dataSource
634
- * @param {*} measurements
635
- * @param {*} options
636
- * @returns {string[]} displaySetInstanceUIDs
637
- */
638
- async function createReportAsync(servicesManager, commandsManager, dataSource, measurements, options) {
639
- const {
640
- displaySetService,
641
- uiNotificationService,
642
- uiDialogService
643
- } = servicesManager.services;
644
- const loadingDialogId = uiDialogService.create({
645
- showOverlay: true,
646
- isDraggable: false,
647
- centralize: true,
648
- // TODO: Create a loading indicator component + zeplin design?
649
- content: Loading
650
- });
651
- try {
652
- const naturalizedReport = await commandsManager.runCommand('storeMeasurements', {
653
- measurementData: measurements,
654
- dataSource,
655
- additionalFindingTypes: ['ArrowAnnotate'],
656
- options
657
- }, 'CORNERSTONE_STRUCTURED_REPORT');
658
-
659
- // The "Mode" route listens for DicomMetadataStore changes
660
- // When a new instance is added, it listens and
661
- // automatically calls makeDisplaySets
662
- core_src.DicomMetadataStore.addInstances([naturalizedReport], true);
663
- const displaySetInstanceUID = displaySetService.getMostRecentDisplaySet();
664
- uiNotificationService.show({
665
- title: 'Create Report',
666
- message: 'Measurements saved successfully',
667
- type: 'success'
668
- });
669
- return [displaySetInstanceUID];
670
- } catch (error) {
671
- uiNotificationService.show({
672
- title: 'Create Report',
673
- message: error.message || 'Failed to store measurements',
674
- type: 'error'
675
- });
676
- } finally {
677
- uiDialogService.dismiss({
678
- id: loadingDialogId
679
- });
680
- }
681
- }
682
- function Loading() {
683
- return /*#__PURE__*/react.createElement("div", {
684
- className: "text-primary-active"
685
- }, "Loading...");
630
+ // EXTERNAL MODULE: ../../../extensions/default/src/index.ts + 76 modules
631
+ var default_src = __webpack_require__(56342);
632
+ ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/_shared/getNextSRSeriesNumber.js
633
+ const MIN_SR_SERIES_NUMBER = 4700;
634
+ function getNextSRSeriesNumber(displaySetService) {
635
+ const activeDisplaySets = displaySetService.getActiveDisplaySets();
636
+ const srDisplaySets = activeDisplaySets.filter(ds => ds.Modality === 'SR');
637
+ const srSeriesNumbers = srDisplaySets.map(ds => ds.SeriesNumber);
638
+ const maxSeriesNumber = Math.max(...srSeriesNumbers, MIN_SR_SERIES_NUMBER);
639
+ return maxSeriesNumber + 1;
686
640
  }
687
- /* harmony default export */ const _shared_createReportAsync = (createReportAsync);
688
641
  ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/_shared/PROMPT_RESPONSES.js
689
642
  const PROMPT_RESPONSES_RESPONSE = {
690
643
  NO_NEVER: -1,
@@ -695,138 +648,10 @@ const PROMPT_RESPONSES_RESPONSE = {
695
648
  NO_NOT_FOR_SERIES: 4
696
649
  };
697
650
  /* harmony default export */ const PROMPT_RESPONSES = (PROMPT_RESPONSES_RESPONSE);
698
- ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/_shared/createReportDialogPrompt.tsx
699
- /* eslint-disable react/display-name */
700
-
701
-
702
-
703
- function createReportDialogPrompt(uiDialogService) {
704
- return new Promise(function (resolve, reject) {
705
- let dialogId = undefined;
706
- const _handleClose = () => {
707
- // Dismiss dialog
708
- uiDialogService.dismiss({
709
- id: dialogId
710
- });
711
- // Notify of cancel action
712
- resolve({
713
- action: PROMPT_RESPONSES.CANCEL,
714
- value: undefined
715
- });
716
- };
717
-
718
- /**
719
- *
720
- * @param {string} param0.action - value of action performed
721
- * @param {string} param0.value - value from input field
722
- */
723
- const _handleFormSubmit = _ref => {
724
- let {
725
- action,
726
- value
727
- } = _ref;
728
- switch (action.id) {
729
- case 'save':
730
- // Only save if description is not blank otherwise ignore
731
- if (value.label && value.label.trim() !== '') {
732
- resolve({
733
- action: PROMPT_RESPONSES.CREATE_REPORT,
734
- value: value.label.trim()
735
- });
736
- uiDialogService.dismiss({
737
- id: dialogId
738
- });
739
- }
740
- break;
741
- case 'cancel':
742
- uiDialogService.dismiss({
743
- id: dialogId
744
- });
745
- resolve({
746
- action: PROMPT_RESPONSES.CANCEL,
747
- value: undefined
748
- });
749
- break;
750
- }
751
- };
752
- dialogId = uiDialogService.create({
753
- centralize: true,
754
- isDraggable: false,
755
- content: src/* Dialog */.Vq,
756
- useLastPosition: false,
757
- showOverlay: true,
758
- contentProps: {
759
- title: 'Create Report',
760
- value: {
761
- label: ''
762
- },
763
- noCloseButton: true,
764
- onClose: _handleClose,
765
- actions: [{
766
- id: 'cancel',
767
- text: 'Cancel',
768
- type: src/* ButtonEnums.type */.LZ.U.secondary
769
- }, {
770
- id: 'save',
771
- text: 'Save',
772
- type: src/* ButtonEnums.type */.LZ.U.primary
773
- }],
774
- // TODO: Should be on button press...
775
- onSubmit: _handleFormSubmit,
776
- body: _ref2 => {
777
- let {
778
- value,
779
- setValue
780
- } = _ref2;
781
- const onChangeHandler = event => {
782
- event.persist();
783
- setValue(value => ({
784
- ...value,
785
- label: event.target.value
786
- }));
787
- };
788
- const onKeyPressHandler = event => {
789
- if (event.key === 'Enter') {
790
- // Trigger form submit
791
- _handleFormSubmit({
792
- action: {
793
- id: 'save'
794
- },
795
- value
796
- });
797
- }
798
- };
799
- return /*#__PURE__*/react.createElement("div", {
800
- className: ""
801
- }, /*#__PURE__*/react.createElement(src/* Input */.II, {
802
- label: "Enter the report name",
803
- labelClassName: "text-white grow leading-[1.2] text-[14px]",
804
- autoFocus: true,
805
- className: "border-primary-main grow bg-black",
806
- type: "text",
807
- value: value.label,
808
- onChange: onChangeHandler,
809
- onKeyPress: onKeyPressHandler
810
- }));
811
- }
812
- }
813
- });
814
- });
815
- }
816
- ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/_shared/getNextSRSeriesNumber.js
817
- const MIN_SR_SERIES_NUMBER = 4700;
818
- function getNextSRSeriesNumber(displaySetService) {
819
- const activeDisplaySets = displaySetService.getActiveDisplaySets();
820
- const srDisplaySets = activeDisplaySets.filter(ds => ds.Modality === 'SR');
821
- const srSeriesNumbers = srDisplaySets.map(ds => ds.SeriesNumber);
822
- const maxSeriesNumber = Math.max(...srSeriesNumbers, MIN_SR_SERIES_NUMBER);
823
- return maxSeriesNumber + 1;
824
- }
825
651
  ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/contexts/TrackedMeasurementsContext/promptSaveReport.js
826
652
 
827
653
 
828
654
 
829
-
830
655
  function promptSaveReport(_ref, ctx, evt) {
831
656
  let {
832
657
  servicesManager,
@@ -849,7 +674,9 @@ function promptSaveReport(_ref, ctx, evt) {
849
674
  let displaySetInstanceUIDs;
850
675
  return new Promise(async function (resolve, reject) {
851
676
  // TODO: Fallback if (uiDialogService) {
852
- const promptResult = await createReportDialogPrompt(uiDialogService);
677
+ const promptResult = await (0,default_src.createReportDialogPrompt)(uiDialogService, {
678
+ extensionManager
679
+ });
853
680
  if (promptResult.action === PROMPT_RESPONSES.CREATE_REPORT) {
854
681
  const dataSources = extensionManager.getDataSources();
855
682
  const dataSource = dataSources[0];
@@ -861,9 +688,20 @@ function promptSaveReport(_ref, ctx, evt) {
861
688
  : promptResult.value; // provided value
862
689
 
863
690
  const SeriesNumber = getNextSRSeriesNumber(displaySetService);
864
- displaySetInstanceUIDs = await _shared_createReportAsync(servicesManager, commandsManager, dataSource, trackedMeasurements, {
865
- SeriesDescription,
866
- SeriesNumber
691
+ const getReport = async () => {
692
+ return commandsManager.runCommand('storeMeasurements', {
693
+ measurementData: trackedMeasurements,
694
+ dataSource,
695
+ additionalFindingTypes: ['ArrowAnnotate'],
696
+ options: {
697
+ SeriesDescription,
698
+ SeriesNumber
699
+ }
700
+ }, 'CORNERSTONE_STRUCTURED_REPORT');
701
+ };
702
+ displaySetInstanceUIDs = await (0,default_src.createReportAsync)({
703
+ servicesManager,
704
+ getReport
867
705
  });
868
706
  } else if (promptResult.action === PROMPT_RESPONSES.CANCEL) {
869
707
  // Do nothing
@@ -937,11 +775,11 @@ function promptHydrateStructuredReport_askTrackMeasurements(uiViewportDialogServ
937
775
  return new Promise(function (resolve, reject) {
938
776
  const message = 'Do you want to continue tracking measurements for this study?';
939
777
  const actions = [{
940
- type: src/* ButtonEnums.type */.LZ.U.secondary,
778
+ type: src/* ButtonEnums.type */.LZ.dt.secondary,
941
779
  text: 'No',
942
780
  value: promptHydrateStructuredReport_RESPONSE.CANCEL
943
781
  }, {
944
- type: src/* ButtonEnums.type */.LZ.U.primary,
782
+ type: src/* ButtonEnums.type */.LZ.dt.primary,
945
783
  text: 'Yes',
946
784
  value: promptHydrateStructuredReport_RESPONSE.HYDRATE_REPORT
947
785
  }];
@@ -1046,11 +884,12 @@ _ref2 // Component props
1046
884
  jumpToFirstMeasurementInActiveViewport: (ctx, evt) => {
1047
885
  const {
1048
886
  trackedStudy,
1049
- trackedSeries
887
+ trackedSeries,
888
+ activeViewportId
1050
889
  } = ctx;
1051
890
  const measurements = measurementService.getMeasurements();
1052
891
  const trackedMeasurements = measurements.filter(m => trackedStudy === m.referenceStudyUID && trackedSeries.includes(m.referenceSeriesUID));
1053
- console.log('jumping to measurement reset viewport', viewportGrid.activeViewportId, trackedMeasurements[0]);
892
+ console.log('jumping to measurement reset viewport', activeViewportId, trackedMeasurements[0]);
1054
893
  const referencedDisplaySetUID = trackedMeasurements[0].displaySetInstanceUID;
1055
894
  const referencedDisplaySet = displaySetService.getDisplaySetByUID(referencedDisplaySetUID);
1056
895
  const referencedImages = referencedDisplaySet.images;
@@ -1070,7 +909,7 @@ _ref2 // Component props
1070
909
  }
1071
910
  }
1072
911
  viewportGridService.setDisplaySetsForViewport({
1073
- viewportId: viewportGrid.activeViewportId,
912
+ viewportId: activeViewportId,
1074
913
  displaySetInstanceUIDs: [referencedDisplaySetUID],
1075
914
  viewportOptions: {
1076
915
  initialImageOptions: {
@@ -1081,7 +920,7 @@ _ref2 // Component props
1081
920
  },
1082
921
  showStructuredReportDisplaySetInActiveViewport: (ctx, evt) => {
1083
922
  if (evt.data.createdDisplaySetInstanceUIDs.length > 0) {
1084
- const StructuredReportDisplaySetInstanceUID = evt.data.createdDisplaySetInstanceUIDs[0].displaySetInstanceUID;
923
+ const StructuredReportDisplaySetInstanceUID = evt.data.createdDisplaySetInstanceUIDs[0];
1085
924
  viewportGridService.setDisplaySetsForViewport({
1086
925
  viewportId: evt.data.viewportId,
1087
926
  displaySetInstanceUIDs: [StructuredReportDisplaySetInstanceUID]
@@ -1149,6 +988,12 @@ _ref2 // Component props
1149
988
 
1150
989
  const measurementTrackingMachine = (0,es/* Machine */.J)(machineConfiguration, machineOptions);
1151
990
  const [trackedMeasurements, sendTrackedMeasurementsEvent] = (0,react_es/* useMachine */.eO)(measurementTrackingMachine);
991
+ (0,react.useEffect)(() => {
992
+ // Update the state machine with the active viewport ID
993
+ sendTrackedMeasurementsEvent('UPDATE_ACTIVE_VIEWPORT_ID', {
994
+ activeViewportId
995
+ });
996
+ }, [activeViewportId, sendTrackedMeasurementsEvent]);
1152
997
 
1153
998
  // ~~ Listen for changes to ViewportGrid for potential SRs hung in panes when idle
1154
999
  (0,react.useEffect)(() => {
@@ -1248,8 +1093,8 @@ __webpack_require__.d(__webpack_exports__, {
1248
1093
  "default": () => (/* binding */ measurement_tracking_src)
1249
1094
  });
1250
1095
 
1251
- // EXTERNAL MODULE: ../../../extensions/measurement-tracking/src/getContextModule.tsx + 14 modules
1252
- var getContextModule = __webpack_require__(1053);
1096
+ // EXTERNAL MODULE: ../../../extensions/measurement-tracking/src/getContextModule.tsx + 12 modules
1097
+ var getContextModule = __webpack_require__(41832);
1253
1098
  // EXTERNAL MODULE: ../../../node_modules/react/index.js
1254
1099
  var react = __webpack_require__(43001);
1255
1100
  // EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
@@ -1261,8 +1106,8 @@ var dist = __webpack_require__(62474);
1261
1106
  var es = __webpack_require__(69190);
1262
1107
  // EXTERNAL MODULE: ../../core/src/index.ts + 75 modules
1263
1108
  var src = __webpack_require__(34491);
1264
- // EXTERNAL MODULE: ../../ui/src/index.js + 458 modules
1265
- var ui_src = __webpack_require__(88344);
1109
+ // EXTERNAL MODULE: ../../ui/src/index.js + 485 modules
1110
+ var ui_src = __webpack_require__(71783);
1266
1111
  ;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/panels/PanelStudyBrowserTracking/PanelStudyBrowserTracking.tsx
1267
1112
 
1268
1113
 
@@ -1393,17 +1238,18 @@ function PanelStudyBrowserTracking(_ref) {
1393
1238
  const imageIds = dataSource.getImageIdsForDisplaySet(displaySet);
1394
1239
  const imageId = imageIds[Math.floor(imageIds.length / 2)];
1395
1240
 
1396
- // TODO: Is it okay that imageIds are not returned here for SR displaysets?
1397
- if (imageId && !displaySet?.unsupported) {
1398
- // When the image arrives, render it and store the result in the thumbnailImgSrcMap
1399
- newImageSrcEntry[dSet.displaySetInstanceUID] = await getImageSrc(imageId);
1400
- setThumbnailImageSrcMap(prevState => {
1401
- return {
1402
- ...prevState,
1403
- ...newImageSrcEntry
1404
- };
1405
- });
1241
+ // TODO: Is it okay that imageIds are not returned here for SR displaySets?
1242
+ if (!imageId || displaySet?.unsupported) {
1243
+ return;
1406
1244
  }
1245
+ // When the image arrives, render it and store the result in the thumbnailImgSrcMap
1246
+ newImageSrcEntry[dSet.displaySetInstanceUID] = await getImageSrc(imageId);
1247
+ setThumbnailImageSrcMap(prevState => {
1248
+ return {
1249
+ ...prevState,
1250
+ ...newImageSrcEntry
1251
+ };
1252
+ });
1407
1253
  });
1408
1254
  }, [displaySetService, dataSource, getImageSrc]);
1409
1255
 
@@ -1430,28 +1276,36 @@ function PanelStudyBrowserTracking(_ref) {
1430
1276
  const displaySetInstanceUID = dSet.displaySetInstanceUID;
1431
1277
  const newImageSrcEntry = {};
1432
1278
  const displaySet = displaySetService.getDisplaySetByUID(displaySetInstanceUID);
1433
- if (!displaySet?.unsupported) {
1434
- if (options.madeInClient) {
1435
- setJumpToDisplaySet(displaySetInstanceUID);
1436
- }
1437
- const imageIds = dataSource.getImageIdsForDisplaySet(displaySet);
1438
- const imageId = imageIds[Math.floor(imageIds.length / 2)];
1439
-
1440
- // TODO: Is it okay that imageIds are not returned here for SR displaysets?
1441
- if (imageId) {
1442
- // When the image arrives, render it and store the result in the thumbnailImgSrcMap
1443
- newImageSrcEntry[displaySetInstanceUID] = await getImageSrc(imageId);
1444
- setThumbnailImageSrcMap(prevState => {
1445
- return {
1446
- ...prevState,
1447
- ...newImageSrcEntry
1448
- };
1449
- });
1450
- }
1279
+ if (displaySet?.unsupported) {
1280
+ return;
1451
1281
  }
1282
+ if (options.madeInClient) {
1283
+ setJumpToDisplaySet(displaySetInstanceUID);
1284
+ }
1285
+ const imageIds = dataSource.getImageIdsForDisplaySet(displaySet);
1286
+ const imageId = imageIds[Math.floor(imageIds.length / 2)];
1287
+
1288
+ // TODO: Is it okay that imageIds are not returned here for SR displaysets?
1289
+ if (!imageId) {
1290
+ return;
1291
+ }
1292
+
1293
+ // When the image arrives, render it and store the result in the thumbnailImgSrcMap
1294
+ newImageSrcEntry[displaySetInstanceUID] = await getImageSrc(imageId);
1295
+ setThumbnailImageSrcMap(prevState => {
1296
+ return {
1297
+ ...prevState,
1298
+ ...newImageSrcEntry
1299
+ };
1300
+ });
1452
1301
  });
1453
1302
  });
1454
-
1303
+ return () => {
1304
+ SubscriptionDisplaySetsAdded.unsubscribe();
1305
+ };
1306
+ // eslint-disable-next-line react-hooks/exhaustive-deps
1307
+ }, [displaySetService, dataSource, getImageSrc, thumbnailImageSrcMap, trackedSeries, viewports]);
1308
+ (0,react.useEffect)(() => {
1455
1309
  // TODO: Will this always hold _all_ the displaySets we care about?
1456
1310
  // DISPLAY_SETS_CHANGED returns `DisplaySerService.activeDisplaySets`
1457
1311
  const SubscriptionDisplaySetsChanged = displaySetService.subscribe(displaySetService.EVENTS.DISPLAY_SETS_CHANGED, changedDisplaySets => {
@@ -1463,12 +1317,10 @@ function PanelStudyBrowserTracking(_ref) {
1463
1317
  setDisplaySets(mappedDisplaySets);
1464
1318
  });
1465
1319
  return () => {
1466
- SubscriptionDisplaySetsAdded.unsubscribe();
1467
1320
  SubscriptionDisplaySetsChanged.unsubscribe();
1468
1321
  SubscriptionDisplaySetMetaDataInvalidated.unsubscribe();
1469
1322
  };
1470
- // eslint-disable-next-line react-hooks/exhaustive-deps
1471
- }, [displaySetService, dataSource, getImageSrc, thumbnailImageSrcMap, trackedSeries, viewports]);
1323
+ }, [thumbnailImageSrcMap, trackedSeries, viewports, dataSource, displaySetService]);
1472
1324
  const tabs = _createStudyBrowserTabs(StudyInstanceUIDs, studyDisplayList, displaySets, hangingProtocolService);
1473
1325
 
1474
1326
  // TODO: Should not fire this on "close"
@@ -1628,15 +1480,17 @@ viewportGridService, dataSource, displaySetService, uiDialogService, uiNotificat
1628
1480
  title: 'Delete Report',
1629
1481
  body: () => /*#__PURE__*/react.createElement("div", {
1630
1482
  className: "bg-primary-dark p-4 text-white"
1631
- }, /*#__PURE__*/react.createElement("p", null, "Are you sure you want to delete this report?"), /*#__PURE__*/react.createElement("p", null, "This action cannot be undone.")),
1483
+ }, /*#__PURE__*/react.createElement("p", null, "Are you sure you want to delete this report?"), /*#__PURE__*/react.createElement("p", {
1484
+ className: "mt-2"
1485
+ }, "This action cannot be undone.")),
1632
1486
  actions: [{
1633
1487
  id: 'cancel',
1634
1488
  text: 'Cancel',
1635
- type: ui_src/* ButtonEnums.type */.LZ.U.secondary
1489
+ type: ui_src/* ButtonEnums.type */.LZ.dt.secondary
1636
1490
  }, {
1637
1491
  id: 'yes',
1638
1492
  text: 'Yes',
1639
- type: ui_src/* ButtonEnums.type */.LZ.U.primary,
1493
+ type: ui_src/* ButtonEnums.type */.LZ.dt.primary,
1640
1494
  classes: ['reject-yes-button']
1641
1495
  }],
1642
1496
  onClose: () => uiDialogService.dismiss({
@@ -1910,13 +1764,13 @@ function ActionButtons(_ref) {
1910
1764
  return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
1911
1765
  onClick: onExportClick,
1912
1766
  disabled: disabled,
1913
- type: ui_src/* ButtonEnums.type */.LZ.U.secondary,
1914
- size: ui_src/* ButtonEnums.size */.LZ.d.small
1767
+ type: ui_src/* ButtonEnums.type */.LZ.dt.secondary,
1768
+ size: ui_src/* ButtonEnums.size */.LZ.dp.small
1915
1769
  }, t('Export')), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
1916
1770
  className: "ml-2",
1917
1771
  onClick: onCreateReportClick,
1918
- type: ui_src/* ButtonEnums.type */.LZ.U.secondary,
1919
- size: ui_src/* ButtonEnums.size */.LZ.d.small,
1772
+ type: ui_src/* ButtonEnums.type */.LZ.dt.secondary,
1773
+ size: ui_src/* ButtonEnums.size */.LZ.dp.small,
1920
1774
  disabled: disabled
1921
1775
  }, t('Create Report')));
1922
1776
  }
@@ -2143,11 +1997,11 @@ function PanelMeasurementTableTracking(_ref) {
2143
1997
  actions: [{
2144
1998
  id: 'cancel',
2145
1999
  text: 'Cancel',
2146
- type: ui_src/* ButtonEnums.type */.LZ.U.secondary
2000
+ type: ui_src/* ButtonEnums.type */.LZ.dt.secondary
2147
2001
  }, {
2148
2002
  id: 'save',
2149
2003
  text: 'Save',
2150
- type: ui_src/* ButtonEnums.type */.LZ.U.primary
2004
+ type: ui_src/* ButtonEnums.type */.LZ.dt.primary
2151
2005
  }],
2152
2006
  onSubmit: onSubmitHandler
2153
2007
  }
@@ -2284,7 +2138,7 @@ function getPanelModule(_ref) {
2284
2138
  } = _ref;
2285
2139
  return [{
2286
2140
  name: 'seriesList',
2287
- iconName: 'group-layers',
2141
+ iconName: 'tab-studies',
2288
2142
  iconLabel: 'Studies',
2289
2143
  label: 'Studies',
2290
2144
  component: panels_PanelStudyBrowserTracking.bind(null, {
package/dist/19.css ADDED
@@ -0,0 +1 @@
1
+ .dicom-tag-browser-table{margin-left:auto;margin-right:auto}.dicom-tag-browser-table-wrapper{overflow-x:scroll}.dicom-tag-browser-table tr{border-top:1px solid #ddd;color:#fff;padding-left:10px;padding-right:10px;white-space:nowrap}.stick{overflow:clip;position:sticky}.dicom-tag-browser-content{overflow:hidden;padding-bottom:50px;width:100%}.dicom-tag-browser-instance-range .range{height:20px}.dicom-tag-browser-instance-range{padding:20px 0}.dicom-tag-browser-table td.dicom-tag-browser-table-center{text-align:center}.dicom-tag-browser-table th{color:"#20A5D6";padding-left:10px;padding-right:10px;text-align:center}.dicom-tag-browser-table th.dicom-tag-browser-table-left{text-align:left}
@@ -5,11 +5,11 @@
5
5
 
6
6
  "use strict";
7
7
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
8
- /* harmony export */ Yb: () => (/* binding */ index),
8
+ /* harmony export */ Y: () => (/* binding */ index),
9
+ /* harmony export */ adaptersSEG: () => (/* binding */ adaptersSEG),
9
10
  /* harmony export */ adaptersSR: () => (/* binding */ adaptersSR),
10
- /* harmony export */ ok: () => (/* binding */ adaptersSEG)
11
+ /* harmony export */ helpers: () => (/* binding */ index$1)
11
12
  /* harmony export */ });
12
- /* unused harmony export helpers */
13
13
  /* harmony import */ var dcmjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67540);
14
14
  /* harmony import */ var buffer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(58955);
15
15
  /* harmony import */ var ndarray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(87513);