@ohif/app 3.7.0-beta.9 → 3.7.0-beta.91

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 (66) hide show
  1. package/dist/{917.bundle.0edb40e9d9467dd3a189.js → 12.bundle.e8d2ae45df74384fd980.js} +6 -6
  2. package/dist/{295.bundle.957b1159fec14b9199a1.js → 125.bundle.253395f320b72180da63.js} +6 -6
  3. package/dist/{351.bundle.0742237651aef9694a65.js → 181.bundle.73fc96c6b3ab1fabedc8.js} +226 -204
  4. package/dist/{351.css → 181.css} +1 -1
  5. package/dist/{744.bundle.c459c690581bc8a522d8.js → 19.bundle.839e1ef2a3468da3ae6e.js} +240 -375
  6. package/dist/{606.bundle.5d876f5f3dd8287f0a28.js → 202.bundle.96bbb4547a346fe3921f.js} +1420 -750
  7. package/dist/{926.bundle.dbc9d0e591cb9217fda2.js → 220.bundle.f7e1c96c94245e70f2be.js} +990 -400
  8. package/dist/221.bundle.39ad5abb775af5702ddb.js +1723 -0
  9. package/dist/221.css +2 -0
  10. package/dist/{664.bundle.09abae984223969d1bde.js → 23.bundle.e008ad788170f2ed5569.js} +5 -6
  11. package/dist/{976.bundle.3f8bfb620791f4508420.js → 236.bundle.a24efa76d228c38e56d0.js} +88 -104
  12. package/dist/{55.bundle.550a823e75eb608e8d5e.js → 250.bundle.4bebed43526c7e06344f.js} +52 -36
  13. package/dist/{973.bundle.5aa91607481865ead93f.js → 281.bundle.b50f5766fb3f79b2ed9d.js} +18 -14
  14. package/dist/{82.bundle.978be6f7595202cd342b.js → 342.bundle.40cf206d7cddf20933eb.js} +1765 -476
  15. package/dist/{404.bundle.83acdec604ed84f4b772.js → 359.bundle.b13a62377d68750cbf34.js} +46 -131
  16. package/dist/{192.bundle.655fc9c5aeff41110aa9.js → 370.bundle.f25928b95a42ac10c7a7.js} +113 -99
  17. package/dist/{790.bundle.08e37fd3b64af8dd8e78.js → 410.bundle.cc5008512de45d69e1cb.js} +11 -9
  18. package/dist/{151.bundle.31ea35044218837bf73f.js → 417.bundle.af0a207c29b109f84159.js} +49 -17
  19. package/dist/{569.bundle.c8e771a8d28e237b32be.js → 451.bundle.1c714bfb8b66d3a5adfb.js} +86 -106
  20. package/dist/{581.bundle.dc6197189f7c88c27d4c.js → 471.bundle.4aaec34d87b0c93687c1.js} +78 -99
  21. package/dist/{199.bundle.251f86c6e2eee85c49a5.js → 506.bundle.817e9b84a97639aa147d.js} +11 -9
  22. package/dist/{531.bundle.2a82fb1d69e5b57cc72b.js → 530.bundle.a03b6f942ace3e1baa1e.js} +726 -447
  23. package/dist/579.css +1 -0
  24. package/dist/{935.bundle.deeffff0e4f7b528e3c3.js → 604.bundle.a51f83e64004bca5f497.js} +2 -3
  25. package/dist/613.bundle.37227666b898dfdfe9c1.js +532 -0
  26. package/dist/{984.bundle.0c8b7d8388a662ad5ebc.js → 663.bundle.73495b93aa8cb540241c.js} +68 -38
  27. package/dist/{205.bundle.b5a473c200dcf2bbcdb4.js → 686.bundle.dccef1f36e4bc79bcc48.js} +6 -6
  28. package/dist/{50.bundle.bec52570fe00c2ccced8.js → 687.bundle.3d415b0f43c3e19ef6ef.js} +218 -9
  29. package/dist/{331.bundle.bd0c13931a21d53086c9.js → 743.bundle.4bfe6e562ffb2c22708f.js} +26281 -21326
  30. package/dist/{728.bundle.d13856835357400fef82.js → 774.bundle.7528cba56a1407357144.js} +95 -64
  31. package/dist/{381.bundle.0905e683605fcbc0895f.js → 775.bundle.2285e7e0e67878948c0d.js} +16 -16
  32. package/dist/{283.bundle.b43e001c27e02b0199aa.js → 782.bundle.4bf97e067cf8067f2239.js} +117 -67
  33. package/dist/{642.bundle.1ab1e9ea67caeaedb189.js → 814.bundle.9d5edb8094787e02f22f.js} +6 -6
  34. package/dist/{799.bundle.758558e64147e5aad612.js → 822.bundle.00de6455c18be0307b41.js} +81 -34
  35. package/dist/831.bundle.83658f62fcc769043605.js +16700 -0
  36. package/dist/{707.bundle.9622c314b0ea3488d69a.js → 877.bundle.b83c182be6ee497d2df7.js} +1022 -708
  37. package/dist/{953.bundle.3b0189ebc11cf0946f18.js → 886.bundle.7324d84913daffb6a4c4.js} +34 -29
  38. package/dist/945.min.worker.js +1 -1
  39. package/dist/945.min.worker.js.map +1 -1
  40. package/dist/{270.bundle.4564621556b0f963a004.js → 957.bundle.8c09a01840ab8aa32734.js} +7093 -987
  41. package/dist/{208.bundle.05451122c341d80d3c22.js → 99.bundle.e6844ea7f331fd2ae35a.js} +85 -104
  42. package/dist/_redirects +1 -1
  43. package/dist/app-config.js +35 -17
  44. package/dist/{app.bundle.d2ebd2fcc8b88864ebeb.js → app.bundle.6c7d9f72689fc7c05040.js} +71939 -66734
  45. package/dist/app.bundle.css +13 -12
  46. package/dist/assets/yandex-browser-manifest.json +1 -1
  47. package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
  48. package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
  49. package/dist/{dicom-microscopy-viewer.bundle.aa60bdf008c32c39cfd7.js → dicom-microscopy-viewer.bundle.2c146384eb9466d02ff8.js} +5 -4
  50. package/dist/es6-shim.min.js +3569 -2
  51. package/dist/google.js +8 -7
  52. package/dist/index.html +1 -1
  53. package/dist/{index.worker.1c69152d710fa7b84bce.worker.js → index.worker.e62ecca63f1a2e124230.worker.js} +2 -2
  54. package/dist/index.worker.e62ecca63f1a2e124230.worker.js.map +1 -0
  55. package/dist/init-service-worker.js +3 -5
  56. package/dist/oidc-client.min.js +10857 -39
  57. package/dist/polyfill.min.js +184 -1
  58. package/dist/silent-refresh.html +18 -9
  59. package/dist/sw.js +1 -1
  60. package/package.json +20 -22
  61. package/dist/616.bundle.d0581701281977bea39b.js +0 -685
  62. package/dist/780.bundle.fd0f13dc92e9caa0581e.js +0 -4769
  63. package/dist/index.worker.1c69152d710fa7b84bce.worker.js.map +0 -1
  64. /package/dist/{806.css → 19.css} +0 -0
  65. /package/dist/{55.css → 250.css} +0 -0
  66. /package/dist/{707.css → 877.css} +0 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[404],{
2
+ (self["webpackChunk"] = self["webpackChunk"] || []).push([[359],{
3
3
 
4
- /***/ 92404:
4
+ /***/ 22359:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -12,10 +12,10 @@ __webpack_require__.d(__webpack_exports__, {
12
12
  "default": () => (/* binding */ tmtv_src)
13
13
  });
14
14
 
15
- // EXTERNAL MODULE: ../../core/src/index.ts + 101 modules
16
- var src = __webpack_require__(48501);
17
- // EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
18
- var ui_src = __webpack_require__(28619);
15
+ // EXTERNAL MODULE: ../../core/src/index.ts + 64 modules
16
+ var src = __webpack_require__(67869);
17
+ // EXTERNAL MODULE: ../../ui/src/index.js + 485 modules
18
+ var ui_src = __webpack_require__(71783);
19
19
  ;// CONCATENATED MODULE: ../../../modes/tmtv/src/initToolGroups.js
20
20
  const toolGroupIds = {
21
21
  CT: 'ctToolGroup',
@@ -50,7 +50,20 @@ function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
50
50
  passive: [{
51
51
  toolName: toolNames.Length
52
52
  }, {
53
- toolName: toolNames.ArrowAnnotate
53
+ toolName: toolNames.ArrowAnnotate,
54
+ configuration: {
55
+ getTextCallback: (callback, eventDetails) => {
56
+ commandsManager.runCommand('arrowTextCallback', {
57
+ callback,
58
+ eventDetails
59
+ });
60
+ },
61
+ changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
62
+ callback,
63
+ data,
64
+ eventDetails
65
+ })
66
+ }
54
67
  }, {
55
68
  toolName: toolNames.Bidirectional
56
69
  }, {
@@ -74,32 +87,17 @@ function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
74
87
  toolName: toolNames.SegmentationDisplay
75
88
  }],
76
89
  disabled: [{
77
- toolName: toolNames.Crosshairs
78
- }]
79
- };
80
- const toolsConfig = {
81
- [toolNames.Crosshairs]: {
82
- viewportIndicators: false,
83
- autoPan: {
84
- enabled: false,
85
- panSize: 10
90
+ toolName: toolNames.Crosshairs,
91
+ configuration: {
92
+ viewportIndicators: false,
93
+ autoPan: {
94
+ enabled: false,
95
+ panSize: 10
96
+ }
86
97
  }
87
- },
88
- [toolNames.ArrowAnnotate]: {
89
- getTextCallback: (callback, eventDetails) => {
90
- commandsManager.runCommand('arrowTextCallback', {
91
- callback,
92
- eventDetails
93
- });
94
- },
95
- changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
96
- callback,
97
- data,
98
- eventDetails
99
- })
100
- }
98
+ }]
101
99
  };
102
- toolGroupService.createToolGroupAndAddTools(toolGroupIds.CT, tools, toolsConfig);
100
+ toolGroupService.createToolGroupAndAddTools(toolGroupIds.CT, tools);
103
101
  toolGroupService.createToolGroupAndAddTools(toolGroupIds.PT, {
104
102
  active: tools.active,
105
103
  passive: [...tools.passive, {
@@ -107,14 +105,20 @@ function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
107
105
  }],
108
106
  enabled: tools.enabled,
109
107
  disabled: tools.disabled
110
- }, toolsConfig);
111
- toolGroupService.createToolGroupAndAddTools(toolGroupIds.Fusion, tools, toolsConfig);
112
- toolGroupService.createToolGroupAndAddTools(toolGroupIds.default, tools, toolsConfig);
108
+ });
109
+ toolGroupService.createToolGroupAndAddTools(toolGroupIds.Fusion, tools);
110
+ toolGroupService.createToolGroupAndAddTools(toolGroupIds.default, tools);
113
111
  const mipTools = {
114
112
  active: [{
115
- toolName: toolNames.VolumeRotateMouseWheel
113
+ toolName: toolNames.VolumeRotateMouseWheel,
114
+ configuration: {
115
+ rotateIncrementDegrees: 0.1
116
+ }
116
117
  }, {
117
118
  toolName: toolNames.MipJumpToClick,
119
+ configuration: {
120
+ toolGroupId: toolGroupIds.PT
121
+ },
118
122
  bindings: [{
119
123
  mouseButton: Enums.MouseBindings.Primary
120
124
  }]
@@ -123,93 +127,11 @@ function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
123
127
  toolName: toolNames.SegmentationDisplay
124
128
  }]
125
129
  };
126
- const mipToolsConfig = {
127
- [toolNames.VolumeRotateMouseWheel]: {
128
- rotateIncrementDegrees: 0.1
129
- },
130
- [toolNames.MipJumpToClick]: {
131
- targetViewportIds: ['ptAXIAL', 'ptCORONAL', 'ptSAGITTAL']
132
- }
133
- };
134
- toolGroupService.createToolGroupAndAddTools(toolGroupIds.MIP, mipTools, mipToolsConfig);
135
- }
136
- function initMPRToolGroup(toolNames, Enums, toolGroupService, commandsManager) {
137
- const tools = {
138
- active: [{
139
- toolName: toolNames.WindowLevel,
140
- bindings: [{
141
- mouseButton: Enums.MouseBindings.Primary
142
- }]
143
- }, {
144
- toolName: toolNames.Pan,
145
- bindings: [{
146
- mouseButton: Enums.MouseBindings.Auxiliary
147
- }]
148
- }, {
149
- toolName: toolNames.Zoom,
150
- bindings: [{
151
- mouseButton: Enums.MouseBindings.Secondary
152
- }]
153
- }, {
154
- toolName: toolNames.StackScrollMouseWheel,
155
- bindings: []
156
- }],
157
- passive: [{
158
- toolName: toolNames.Length
159
- }, {
160
- toolName: toolNames.ArrowAnnotate
161
- }, {
162
- toolName: toolNames.Bidirectional
163
- }, {
164
- toolName: toolNames.DragProbe
165
- }, {
166
- toolName: toolNames.EllipticalROI
167
- }, {
168
- toolName: toolNames.RectangleROI
169
- }, {
170
- toolName: toolNames.StackScroll
171
- }, {
172
- toolName: toolNames.Angle
173
- }, {
174
- toolName: toolNames.CobbAngle
175
- }, {
176
- toolName: toolNames.SegmentationDisplay
177
- }],
178
- disabled: [{
179
- toolName: toolNames.Crosshairs
180
- }]
181
-
182
- // enabled
183
- // disabled
184
- };
185
-
186
- const toolsConfig = {
187
- [toolNames.Crosshairs]: {
188
- viewportIndicators: false,
189
- autoPan: {
190
- enabled: false,
191
- panSize: 10
192
- }
193
- },
194
- [toolNames.ArrowAnnotate]: {
195
- getTextCallback: (callback, eventDetails) => commandsManager.runCommand('arrowTextCallback', {
196
- callback,
197
- eventDetails
198
- }),
199
- changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
200
- callback,
201
- data,
202
- eventDetails
203
- })
204
- }
205
- };
206
- toolGroupService.createToolGroupAndAddTools('mpr', tools, toolsConfig);
130
+ toolGroupService.createToolGroupAndAddTools(toolGroupIds.MIP, mipTools);
207
131
  }
208
132
  function initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
209
133
  _initToolGroups(toolNames, Enums, toolGroupService, commandsManager);
210
- // initMPRToolGroup(toolNames, Enums, toolGroupService, commandsManager);
211
134
  }
212
-
213
135
  /* harmony default export */ const src_initToolGroups = (initToolGroups);
214
136
  ;// CONCATENATED MODULE: ../../../modes/tmtv/src/toolbarButtons.js
215
137
  // TODO: torn, can either bake this here; or have to create a whole new button type
@@ -239,9 +161,8 @@ function _createButton(type, id, icon, label, commands, tooltip) {
239
161
  }
240
162
  function _createColormap(label, colormap) {
241
163
  return {
242
- id: label.toString(),
243
- title: label,
244
- subtitle: label,
164
+ id: label,
165
+ label,
245
166
  type: 'action',
246
167
  commands: [{
247
168
  commandName: 'setFusionPTColormap',
@@ -249,12 +170,6 @@ function _createColormap(label, colormap) {
249
170
  toolGroupId: toolGroupIds.Fusion,
250
171
  colormap
251
172
  }
252
- }, {
253
- commandName: 'setFusionPTColormap',
254
- commandOptions: {
255
- toolGroupId: toolGroupIds.Fusion,
256
- colormap
257
- }
258
173
  }]
259
174
  };
260
175
  }
@@ -433,7 +348,6 @@ const toolbarButtons = [
433
348
  },
434
349
  isAction: true,
435
350
  // ?
436
- renderer: ui_src/* WindowLevelMenuItem */.eJ,
437
351
  items: [_createColormap('HSV', 'hsv'), _createColormap('Hot Iron', 'hot_iron'), _createColormap('S PET', 's_pet'), _createColormap('Red Hot', 'red_hot'), _createColormap('Perfusion', 'perfusion'), _createColormap('Rainbow', 'rainbow_2'), _createColormap('SUV', 'suv'), _createColormap('GE 256', 'ge_256'), _createColormap('GE', 'ge'), _createColormap('Siemens', 'siemens')]
438
352
  }
439
353
  }];
@@ -559,7 +473,6 @@ function modeFactory(_ref) {
559
473
  const setWindowLevelActive = () => {
560
474
  toolbarService.recordInteraction({
561
475
  groupId: 'WindowLevel',
562
- itemId: 'WindowLevel',
563
476
  interactionType: 'tool',
564
477
  commands: [{
565
478
  commandName: 'setToolActive',
@@ -678,7 +591,8 @@ function modeFactory(_ref) {
678
591
  return {
679
592
  id: ohif.layout,
680
593
  props: {
681
- // leftPanels: [ohif.thumbnailList],
594
+ leftPanels: [ohif.thumbnailList],
595
+ leftPanelDefaultClosed: true,
682
596
  rightPanels: [tmtv.ROIThresholdPanel, tmtv.petSUV],
683
597
  viewports: [{
684
598
  namespace: cs3d.viewport,
@@ -691,7 +605,8 @@ function modeFactory(_ref) {
691
605
  extensions: extensionDependencies,
692
606
  hangingProtocol: tmtv.hangingProtocol,
693
607
  sopClassHandlers: [ohif.sopClassHandler],
694
- hotkeys: [...src/* hotkeys */.dD.defaults.hotkeyBindings]
608
+ hotkeys: [...src/* hotkeys */.dD.defaults.hotkeyBindings],
609
+ ...modeConfiguration
695
610
  };
696
611
  }
697
612
  const mode = {
@@ -1,9 +1,9 @@
1
- "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[192],{
1
+ (self["webpackChunk"] = self["webpackChunk"] || []).push([[370],{
3
2
 
4
- /***/ 6192:
3
+ /***/ 71522:
5
4
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
5
 
6
+ "use strict";
7
7
  // ESM COMPAT FLAG
8
8
  __webpack_require__.r(__webpack_exports__);
9
9
 
@@ -14,39 +14,24 @@ __webpack_require__.d(__webpack_exports__, {
14
14
  toolbarButtons: () => (/* reexport */ src_toolbarButtons)
15
15
  });
16
16
 
17
- // EXTERNAL MODULE: ../../core/src/index.ts + 101 modules
18
- var src = __webpack_require__(48501);
19
- // EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
20
- var ui_src = __webpack_require__(28619);
21
- ;// CONCATENATED MODULE: ../../../modes/longitudinal/src/toolbarButtons.js
17
+ // EXTERNAL MODULE: ../../core/src/index.ts + 64 modules
18
+ var src = __webpack_require__(67869);
19
+ // EXTERNAL MODULE: ../../ui/src/index.js + 485 modules
20
+ var ui_src = __webpack_require__(71783);
21
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 331 modules
22
+ var esm = __webpack_require__(3743);
23
+ ;// CONCATENATED MODULE: ../../../modes/longitudinal/src/toolbarButtons.ts
22
24
  // TODO: torn, can either bake this here; or have to create a whole new button type
23
25
  // Only ways that you can pass in a custom React component for render :l
24
26
 
25
27
 
28
+
26
29
  const {
27
30
  windowLevelPresets
28
31
  } = src.defaults;
29
- /**
30
- *
31
- * @param {*} type - 'tool' | 'action' | 'toggle'
32
- * @param {*} id
33
- * @param {*} icon
34
- * @param {*} label
35
- */
36
- function _createButton(type, id, icon, label, commands, tooltip, uiType) {
37
- return {
38
- id,
39
- icon,
40
- label,
41
- type,
42
- commands,
43
- tooltip,
44
- uiType
45
- };
46
- }
47
- const _createActionButton = _createButton.bind(null, 'action');
48
- const _createToggleButton = _createButton.bind(null, 'toggle');
49
- const _createToolButton = _createButton.bind(null, 'tool');
32
+ const _createActionButton = src/* ToolbarService */.Ok._createButton.bind(null, 'action');
33
+ const _createToggleButton = src/* ToolbarService */.Ok._createButton.bind(null, 'toggle');
34
+ const _createToolButton = src/* ToolbarService */.Ok._createButton.bind(null, 'tool');
50
35
 
51
36
  /**
52
37
  *
@@ -88,6 +73,16 @@ function _createSetToolActiveCommands(toolName) {
88
73
  }));
89
74
  return temp;
90
75
  }
76
+ const ReferenceLinesCommands = [{
77
+ commandName: 'setSourceViewportForReferenceLinesTool',
78
+ context: 'CORNERSTONE'
79
+ }, {
80
+ commandName: 'setToolActive',
81
+ commandOptions: {
82
+ toolName: 'ReferenceLines'
83
+ },
84
+ context: 'CORNERSTONE'
85
+ }];
91
86
  const toolbarButtons = [
92
87
  // Measurement
93
88
  {
@@ -318,16 +313,32 @@ const toolbarButtons = [
318
313
  commandOptions: {},
319
314
  context: 'CORNERSTONE'
320
315
  }], 'Flip Horizontal'), _createToggleButton('StackImageSync', 'link', 'Stack Image Sync', [{
321
- commandName: 'toggleStackImageSync',
322
- commandOptions: {},
323
- context: 'CORNERSTONE'
324
- }]), _createToggleButton('ReferenceLines', 'tool-referenceLines',
316
+ commandName: 'toggleStackImageSync'
317
+ }], 'Enable position synchronization on stack viewports', {
318
+ listeners: {
319
+ [esm.EVENTS.STACK_VIEWPORT_NEW_STACK]: {
320
+ commandName: 'toggleStackImageSync',
321
+ commandOptions: {
322
+ toggledState: true
323
+ }
324
+ }
325
+ }
326
+ }), _createToggleButton('ReferenceLines', 'tool-referenceLines',
325
327
  // change this with the new icon
326
- 'Reference Lines', [{
327
- commandName: 'toggleReferenceLines',
328
- commandOptions: {},
328
+ 'Reference Lines', ReferenceLinesCommands, 'Show Reference Lines', {
329
+ listeners: {
330
+ [esm.EVENTS.STACK_VIEWPORT_NEW_STACK]: ReferenceLinesCommands,
331
+ [esm.EVENTS.ACTIVE_VIEWPORT_ID_CHANGED]: ReferenceLinesCommands
332
+ }
333
+ }), _createToggleButton('ImageOverlayViewer', 'toggle-dicom-overlay', 'Image Overlay', [{
334
+ commandName: 'setToolActive',
335
+ commandOptions: {
336
+ toolName: 'ImageOverlayViewer'
337
+ },
329
338
  context: 'CORNERSTONE'
330
- }]), _createToolButton('StackScroll', 'tool-stack-scroll', 'Stack Scroll', [{
339
+ }], 'Image Overlay', {
340
+ isActive: true
341
+ }), _createToolButton('StackScroll', 'tool-stack-scroll', 'Stack Scroll', [{
331
342
  commandName: 'setToolActive',
332
343
  commandOptions: {
333
344
  toolName: 'StackScroll'
@@ -446,7 +457,18 @@ function initDefaultToolGroup(extensionManager, toolGroupService, commandsManage
446
457
  passive: [{
447
458
  toolName: toolNames.Length
448
459
  }, {
449
- toolName: toolNames.ArrowAnnotate
460
+ toolName: toolNames.ArrowAnnotate,
461
+ configuration: {
462
+ getTextCallback: (callback, eventDetails) => commandsManager.runCommand('arrowTextCallback', {
463
+ callback,
464
+ eventDetails
465
+ }),
466
+ changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
467
+ callback,
468
+ data,
469
+ eventDetails
470
+ })
471
+ }
450
472
  }, {
451
473
  toolName: toolNames.Bidirectional
452
474
  }, {
@@ -473,28 +495,21 @@ function initDefaultToolGroup(extensionManager, toolGroupService, commandsManage
473
495
  toolName: toolNames.CalibrationLine
474
496
  }],
475
497
  // enabled
498
+ enabled: [{
499
+ toolName: toolNames.ImageOverlayViewer
500
+ }],
476
501
  // disabled
477
502
  disabled: [{
478
503
  toolName: toolNames.ReferenceLines
479
504
  }]
480
505
  };
481
- const toolsConfig = {
482
- [toolNames.ArrowAnnotate]: {
483
- getTextCallback: (callback, eventDetails) => commandsManager.runCommand('arrowTextCallback', {
484
- callback,
485
- eventDetails
486
- }),
487
- changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
488
- callback,
489
- data,
490
- eventDetails
491
- })
492
- }
493
- };
494
- toolGroupService.createToolGroupAndAddTools(toolGroupId, tools, toolsConfig);
506
+ toolGroupService.createToolGroupAndAddTools(toolGroupId, tools);
495
507
  }
496
508
  function initSRToolGroup(extensionManager, toolGroupService, commandsManager) {
497
509
  const SRUtilityModule = extensionManager.getModuleEntry('@ohif/extension-cornerstone-dicom-sr.utilityModule.tools');
510
+ if (!SRUtilityModule) {
511
+ return;
512
+ }
498
513
  const CS3DUtilityModule = extensionManager.getModuleEntry('@ohif/extension-cornerstone.utilityModule.tools');
499
514
  const {
500
515
  toolNames: SRToolNames
@@ -541,21 +556,8 @@ function initSRToolGroup(extensionManager, toolGroupService, commandsManager) {
541
556
  // disabled
542
557
  };
543
558
 
544
- const toolsConfig = {
545
- [toolNames.ArrowAnnotate]: {
546
- getTextCallback: (callback, eventDetails) => commandsManager.runCommand('arrowTextCallback', {
547
- callback,
548
- eventDetails
549
- }),
550
- changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
551
- callback,
552
- data,
553
- eventDetails
554
- })
555
- }
556
- };
557
559
  const toolGroupId = 'SRToolGroup';
558
- toolGroupService.createToolGroupAndAddTools(toolGroupId, tools, toolsConfig);
560
+ toolGroupService.createToolGroupAndAddTools(toolGroupId, tools);
559
561
  }
560
562
  function initMPRToolGroup(extensionManager, toolGroupService, commandsManager) {
561
563
  const utilityModule = extensionManager.getModuleEntry('@ohif/extension-cornerstone.utilityModule.tools');
@@ -586,7 +588,18 @@ function initMPRToolGroup(extensionManager, toolGroupService, commandsManager) {
586
588
  passive: [{
587
589
  toolName: toolNames.Length
588
590
  }, {
589
- toolName: toolNames.ArrowAnnotate
591
+ toolName: toolNames.ArrowAnnotate,
592
+ configuration: {
593
+ getTextCallback: (callback, eventDetails) => commandsManager.runCommand('arrowTextCallback', {
594
+ callback,
595
+ eventDetails
596
+ }),
597
+ changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
598
+ callback,
599
+ data,
600
+ eventDetails
601
+ })
602
+ }
590
603
  }, {
591
604
  toolName: toolNames.Bidirectional
592
605
  }, {
@@ -609,7 +622,14 @@ function initMPRToolGroup(extensionManager, toolGroupService, commandsManager) {
609
622
  toolName: toolNames.SegmentationDisplay
610
623
  }],
611
624
  disabled: [{
612
- toolName: toolNames.Crosshairs
625
+ toolName: toolNames.Crosshairs,
626
+ configuration: {
627
+ viewportIndicators: false,
628
+ autoPan: {
629
+ enabled: false,
630
+ panSize: 10
631
+ }
632
+ }
613
633
  }, {
614
634
  toolName: toolNames.ReferenceLines
615
635
  }]
@@ -618,27 +638,7 @@ function initMPRToolGroup(extensionManager, toolGroupService, commandsManager) {
618
638
  // disabled
619
639
  };
620
640
 
621
- const toolsConfig = {
622
- [toolNames.Crosshairs]: {
623
- viewportIndicators: false,
624
- autoPan: {
625
- enabled: false,
626
- panSize: 10
627
- }
628
- },
629
- [toolNames.ArrowAnnotate]: {
630
- getTextCallback: (callback, eventDetails) => commandsManager.runCommand('arrowTextCallback', {
631
- callback,
632
- eventDetails
633
- }),
634
- changeTextCallback: (data, eventDetails, callback) => commandsManager.runCommand('arrowTextCallback', {
635
- callback,
636
- data,
637
- eventDetails
638
- })
639
- }
640
- };
641
- toolGroupService.createToolGroupAndAddTools('mpr', tools, toolsConfig);
641
+ toolGroupService.createToolGroupAndAddTools('mpr', tools);
642
642
  }
643
643
  function initVolume3DToolGroup(extensionManager, toolGroupService) {
644
644
  const utilityModule = extensionManager.getModuleEntry('@ohif/extension-cornerstone.utilityModule.tools');
@@ -724,7 +724,10 @@ const extensionDependencies = {
724
724
  '@ohif/extension-dicom-pdf': '^3.0.1',
725
725
  '@ohif/extension-dicom-video': '^3.0.1'
726
726
  };
727
- function modeFactory() {
727
+ function modeFactory(_ref) {
728
+ let {
729
+ modeConfiguration
730
+ } = _ref;
728
731
  let _activatePanelTriggersSubscriptions = [];
729
732
  return {
730
733
  // TODO: We're using this as a route segment
@@ -735,18 +738,18 @@ function modeFactory() {
735
738
  /**
736
739
  * Lifecycle hooks
737
740
  */
738
- onModeEnter: _ref => {
741
+ onModeEnter: _ref2 => {
739
742
  let {
740
743
  servicesManager,
741
744
  extensionManager,
742
745
  commandsManager
743
- } = _ref;
746
+ } = _ref2;
744
747
  const {
745
748
  measurementService,
746
749
  toolbarService,
747
750
  toolGroupService,
748
751
  panelService,
749
- segmentationService
752
+ customizationService
750
753
  } = servicesManager.services;
751
754
  measurementService.clearMeasurements();
752
755
 
@@ -756,7 +759,6 @@ function modeFactory() {
756
759
  const activateTool = () => {
757
760
  toolbarService.recordInteraction({
758
761
  groupId: 'WindowLevel',
759
- itemId: 'WindowLevel',
760
762
  interactionType: 'tool',
761
763
  commands: [{
762
764
  commandName: 'setToolActive',
@@ -780,6 +782,10 @@ function modeFactory() {
780
782
  toolbarService.init(extensionManager);
781
783
  toolbarService.addButtons(src_toolbarButtons);
782
784
  toolbarService.createButtonSection('primary', ['MeasurementTools', 'Zoom', 'WindowLevel', 'Pan', 'Capture', 'Layout', 'MPR', 'Crosshairs', 'MoreTools']);
785
+ customizationService.addModeCustomizations([{
786
+ id: 'segmentation.disableEditing',
787
+ value: true
788
+ }]);
783
789
 
784
790
  // // ActivatePanel event trigger for when a segmentation or measurement is added.
785
791
  // // Do not force activation so as to respect the state the user may have left the UI in.
@@ -804,10 +810,10 @@ function modeFactory() {
804
810
  // ];
805
811
  },
806
812
 
807
- onModeExit: _ref2 => {
813
+ onModeExit: _ref3 => {
808
814
  let {
809
815
  servicesManager
810
- } = _ref2;
816
+ } = _ref3;
811
817
  const {
812
818
  toolGroupService,
813
819
  syncGroupService,
@@ -826,10 +832,10 @@ function modeFactory() {
826
832
  study: [],
827
833
  series: []
828
834
  },
829
- isValidMode: function (_ref3) {
835
+ isValidMode: function (_ref4) {
830
836
  let {
831
837
  modalities
832
- } = _ref3;
838
+ } = _ref4;
833
839
  const modalities_list = modalities.split('\\');
834
840
 
835
841
  // Exclude non-image modalities
@@ -878,7 +884,8 @@ function modeFactory() {
878
884
  // general handler needs to come last. For this case, the dicomvideo must
879
885
  // come first to remove video transfer syntax before ohif uses images
880
886
  sopClassHandlers: [dicomvideo.sopClassHandler, dicomSeg.sopClassHandler, ohif.sopClassHandler, dicompdf.sopClassHandler, dicomsr.sopClassHandler, dicomRt.sopClassHandler],
881
- hotkeys: [...src/* hotkeys */.dD.defaults.hotkeyBindings]
887
+ hotkeys: [...src/* hotkeys */.dD.defaults.hotkeyBindings],
888
+ ...modeConfiguration
882
889
  };
883
890
  }
884
891
  const mode = {
@@ -889,6 +896,13 @@ const mode = {
889
896
  /* harmony default export */ const longitudinal_src = (mode);
890
897
 
891
898
 
899
+ /***/ }),
900
+
901
+ /***/ 78753:
902
+ /***/ (() => {
903
+
904
+ /* (ignored) */
905
+
892
906
  /***/ })
893
907
 
894
908
  }]);
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[790],{
2
+ (self["webpackChunk"] = self["webpackChunk"] || []).push([[410],{
3
3
 
4
- /***/ 17790:
4
+ /***/ 15410:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -12,10 +12,10 @@ __webpack_require__.d(__webpack_exports__, {
12
12
  "default": () => (/* binding */ basic_dev_mode_src)
13
13
  });
14
14
 
15
- // EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
16
- var src = __webpack_require__(28619);
17
- // EXTERNAL MODULE: ../../core/src/index.ts + 101 modules
18
- var core_src = __webpack_require__(48501);
15
+ // EXTERNAL MODULE: ../../ui/src/index.js + 485 modules
16
+ var src = __webpack_require__(71783);
17
+ // EXTERNAL MODULE: ../../core/src/index.ts + 64 modules
18
+ var core_src = __webpack_require__(67869);
19
19
  ;// CONCATENATED MODULE: ../../../modes/basic-dev-mode/src/toolbarButtons.js
20
20
  // TODO: torn, can either bake this here; or have to create a whole new button type
21
21
  // Only ways that you can pass in a custom React component for render :l
@@ -346,18 +346,20 @@ function modeFactory(_ref) {
346
346
  toolName: toolNames.StackScroll
347
347
  }, {
348
348
  toolName: toolNames.CalibrationLine
349
- }]
349
+ }],
350
350
  // enabled
351
+ enabled: [{
352
+ toolName: toolNames.ImageOverlayViewer
353
+ }]
351
354
  // disabled
352
355
  };
353
356
 
354
357
  const toolGroupId = 'default';
355
- toolGroupService.createToolGroupAndAddTools(toolGroupId, tools, configs);
358
+ toolGroupService.createToolGroupAndAddTools(toolGroupId, tools);
356
359
  let unsubscribe;
357
360
  const activateTool = () => {
358
361
  toolbarService.recordInteraction({
359
362
  groupId: 'WindowLevel',
360
- itemId: 'WindowLevel',
361
363
  interactionType: 'tool',
362
364
  commands: [{
363
365
  commandName: 'setToolActive',