@cornerstonejs/tools 2.0.0-beta.1 → 2.0.0-beta.2

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 (425) hide show
  1. package/dist/cjs/drawingSvg/drawCircle.js +9 -5
  2. package/dist/cjs/drawingSvg/drawCircle.js.map +1 -1
  3. package/dist/cjs/drawingSvg/drawEllipse.js +4 -4
  4. package/dist/cjs/drawingSvg/drawEllipse.js.map +1 -1
  5. package/dist/cjs/drawingSvg/drawHandles.js +4 -4
  6. package/dist/cjs/drawingSvg/drawHandles.js.map +1 -1
  7. package/dist/cjs/drawingSvg/drawLine.js +4 -4
  8. package/dist/cjs/drawingSvg/drawLine.js.map +1 -1
  9. package/dist/cjs/drawingSvg/drawPolyline.js +4 -4
  10. package/dist/cjs/drawingSvg/drawPolyline.js.map +1 -1
  11. package/dist/cjs/drawingSvg/drawRect.js +4 -4
  12. package/dist/cjs/drawingSvg/drawRect.js.map +1 -1
  13. package/dist/cjs/drawingSvg/drawTextBox.js +4 -4
  14. package/dist/cjs/drawingSvg/drawTextBox.js.map +1 -1
  15. package/dist/cjs/drawingSvg/index.d.ts +3 -1
  16. package/dist/cjs/drawingSvg/index.js +5 -1
  17. package/dist/cjs/drawingSvg/index.js.map +1 -1
  18. package/dist/cjs/drawingSvg/setAttributesIfNecessary.d.ts +2 -0
  19. package/dist/cjs/drawingSvg/{_setAttributesIfNecessary.js → setAttributesIfNecessary.js} +5 -5
  20. package/dist/cjs/drawingSvg/setAttributesIfNecessary.js.map +1 -0
  21. package/dist/cjs/drawingSvg/setNewAttributesIfValid.d.ts +2 -0
  22. package/dist/cjs/drawingSvg/{_setNewAttributesIfValid.js → setNewAttributesIfValid.js} +5 -5
  23. package/dist/cjs/drawingSvg/setNewAttributesIfValid.js.map +1 -0
  24. package/dist/cjs/enums/Events.d.ts +1 -0
  25. package/dist/cjs/enums/Events.js +1 -0
  26. package/dist/cjs/enums/Events.js.map +1 -1
  27. package/dist/cjs/eventDispatchers/shared/getMouseModifier.js +10 -5
  28. package/dist/cjs/eventDispatchers/shared/getMouseModifier.js.map +1 -1
  29. package/dist/cjs/eventListeners/keyboard/keyDownListener.js +8 -0
  30. package/dist/cjs/eventListeners/keyboard/keyDownListener.js.map +1 -1
  31. package/dist/cjs/eventListeners/mouse/mouseDownListener.js +2 -1
  32. package/dist/cjs/eventListeners/mouse/mouseDownListener.js.map +1 -1
  33. package/dist/cjs/eventListeners/touch/touchStartListener.js +10 -5
  34. package/dist/cjs/eventListeners/touch/touchStartListener.js.map +1 -1
  35. package/dist/cjs/index.d.ts +2 -2
  36. package/dist/cjs/index.js +3 -2
  37. package/dist/cjs/index.js.map +1 -1
  38. package/dist/cjs/stateManagement/annotation/config/ToolStyle.js +1 -0
  39. package/dist/cjs/stateManagement/annotation/config/ToolStyle.js.map +1 -1
  40. package/dist/cjs/stateManagement/annotation/config/getState.js +6 -3
  41. package/dist/cjs/stateManagement/annotation/config/getState.js.map +1 -1
  42. package/dist/cjs/stateManagement/annotation/config/helpers.js +4 -2
  43. package/dist/cjs/stateManagement/annotation/config/helpers.js.map +1 -1
  44. package/dist/cjs/store/SynchronizerManager/Synchronizer.js +10 -2
  45. package/dist/cjs/store/SynchronizerManager/Synchronizer.js.map +1 -1
  46. package/dist/cjs/store/ToolGroupManager/ToolGroup.d.ts +3 -3
  47. package/dist/cjs/store/ToolGroupManager/ToolGroup.js +9 -2
  48. package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
  49. package/dist/cjs/store/ToolGroupManager/getToolGroupsWithToolName.js +2 -1
  50. package/dist/cjs/store/ToolGroupManager/getToolGroupsWithToolName.js.map +1 -1
  51. package/dist/cjs/synchronizers/callbacks/stackImageSyncCallback.js +25 -22
  52. package/dist/cjs/synchronizers/callbacks/stackImageSyncCallback.js.map +1 -1
  53. package/dist/cjs/synchronizers/callbacks/voiSyncCallback.js +1 -1
  54. package/dist/cjs/synchronizers/callbacks/voiSyncCallback.js.map +1 -1
  55. package/dist/cjs/tools/MIPJumpToClickTool.js +4 -2
  56. package/dist/cjs/tools/MIPJumpToClickTool.js.map +1 -1
  57. package/dist/cjs/tools/PlanarRotateTool.js +2 -1
  58. package/dist/cjs/tools/PlanarRotateTool.js.map +1 -1
  59. package/dist/cjs/tools/ReferenceCursors.js +58 -29
  60. package/dist/cjs/tools/ReferenceCursors.js.map +1 -1
  61. package/dist/cjs/tools/ScaleOverlayTool.js +2 -1
  62. package/dist/cjs/tools/ScaleOverlayTool.js.map +1 -1
  63. package/dist/cjs/tools/annotation/AngleTool.d.ts +0 -1
  64. package/dist/cjs/tools/annotation/AngleTool.js +31 -14
  65. package/dist/cjs/tools/annotation/AngleTool.js.map +1 -1
  66. package/dist/cjs/tools/annotation/ArrowAnnotateTool.js +15 -1
  67. package/dist/cjs/tools/annotation/ArrowAnnotateTool.js.map +1 -1
  68. package/dist/cjs/tools/annotation/BidirectionalTool.d.ts +0 -1
  69. package/dist/cjs/tools/annotation/BidirectionalTool.js +29 -14
  70. package/dist/cjs/tools/annotation/BidirectionalTool.js.map +1 -1
  71. package/dist/cjs/tools/annotation/CircleROITool.d.ts +0 -1
  72. package/dist/cjs/tools/annotation/CircleROITool.js +56 -53
  73. package/dist/cjs/tools/annotation/CircleROITool.js.map +1 -1
  74. package/dist/cjs/tools/annotation/CobbAngleTool.d.ts +0 -1
  75. package/dist/cjs/tools/annotation/CobbAngleTool.js +26 -11
  76. package/dist/cjs/tools/annotation/CobbAngleTool.js.map +1 -1
  77. package/dist/cjs/tools/annotation/DragProbeTool.js +13 -1
  78. package/dist/cjs/tools/annotation/DragProbeTool.js.map +1 -1
  79. package/dist/cjs/tools/annotation/EllipticalROITool.d.ts +0 -1
  80. package/dist/cjs/tools/annotation/EllipticalROITool.js +48 -46
  81. package/dist/cjs/tools/annotation/EllipticalROITool.js.map +1 -1
  82. package/dist/cjs/tools/annotation/LengthTool.d.ts +0 -1
  83. package/dist/cjs/tools/annotation/LengthTool.js +26 -11
  84. package/dist/cjs/tools/annotation/LengthTool.js.map +1 -1
  85. package/dist/cjs/tools/annotation/PlanarFreehandROITool.d.ts +0 -1
  86. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js +50 -51
  87. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  88. package/dist/cjs/tools/annotation/ProbeTool.d.ts +0 -1
  89. package/dist/cjs/tools/annotation/ProbeTool.js +18 -13
  90. package/dist/cjs/tools/annotation/ProbeTool.js.map +1 -1
  91. package/dist/cjs/tools/annotation/RectangleROITool.d.ts +0 -1
  92. package/dist/cjs/tools/annotation/RectangleROITool.js +46 -48
  93. package/dist/cjs/tools/annotation/RectangleROITool.js.map +1 -1
  94. package/dist/cjs/tools/base/AnnotationTool.d.ts +2 -1
  95. package/dist/cjs/tools/base/AnnotationTool.js +27 -16
  96. package/dist/cjs/tools/base/AnnotationTool.js.map +1 -1
  97. package/dist/cjs/tools/base/index.d.ts +2 -1
  98. package/dist/cjs/tools/base/index.js +3 -1
  99. package/dist/cjs/tools/base/index.js.map +1 -1
  100. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
  101. package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.js +3 -0
  102. package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.js.map +1 -1
  103. package/dist/cjs/tools/displayTools/SegmentationDisplayTool.js +5 -6
  104. package/dist/cjs/tools/displayTools/SegmentationDisplayTool.js.map +1 -1
  105. package/dist/cjs/tools/index.d.ts +2 -2
  106. package/dist/cjs/tools/index.js +2 -1
  107. package/dist/cjs/tools/index.js.map +1 -1
  108. package/dist/cjs/tools/segmentation/BrushTool.js +24 -17
  109. package/dist/cjs/tools/segmentation/BrushTool.js.map +1 -1
  110. package/dist/cjs/tools/segmentation/PaintFillTool.js +4 -2
  111. package/dist/cjs/tools/segmentation/PaintFillTool.js.map +1 -1
  112. package/dist/cjs/tools/segmentation/strategies/eraseSphere.d.ts +2 -0
  113. package/dist/cjs/tools/segmentation/strategies/eraseSphere.js.map +1 -1
  114. package/dist/cjs/tools/segmentation/strategies/fillCircle.js +5 -7
  115. package/dist/cjs/tools/segmentation/strategies/fillCircle.js.map +1 -1
  116. package/dist/cjs/tools/segmentation/strategies/fillSphere.d.ts +3 -0
  117. package/dist/cjs/tools/segmentation/strategies/fillSphere.js +38 -10
  118. package/dist/cjs/tools/segmentation/strategies/fillSphere.js.map +1 -1
  119. package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +3 -0
  120. package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js +10 -0
  121. package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -0
  122. package/dist/cjs/types/CINETypes.d.ts +2 -0
  123. package/dist/cjs/types/CalculatorTypes.d.ts +6 -0
  124. package/dist/cjs/types/CalculatorTypes.js +3 -0
  125. package/dist/cjs/types/CalculatorTypes.js.map +1 -0
  126. package/dist/cjs/types/EventTypes.d.ts +8 -1
  127. package/dist/cjs/types/ISetToolModeOptions.d.ts +2 -2
  128. package/dist/cjs/types/IToolGroup.d.ts +3 -2
  129. package/dist/cjs/types/ToolProps.d.ts +5 -1
  130. package/dist/cjs/types/index.d.ts +3 -2
  131. package/dist/cjs/utilities/cine/playClip.js +13 -3
  132. package/dist/cjs/utilities/cine/playClip.js.map +1 -1
  133. package/dist/cjs/utilities/dynamicVolume/getDataInTime.js +7 -4
  134. package/dist/cjs/utilities/dynamicVolume/getDataInTime.js.map +1 -1
  135. package/dist/cjs/utilities/getCalibratedUnits.js +10 -5
  136. package/dist/cjs/utilities/getCalibratedUnits.js.map +1 -1
  137. package/dist/cjs/utilities/math/basic/BasicStatsCalculator.d.ts +14 -0
  138. package/dist/cjs/utilities/math/basic/BasicStatsCalculator.js +44 -0
  139. package/dist/cjs/utilities/math/basic/BasicStatsCalculator.js.map +1 -0
  140. package/dist/cjs/utilities/math/basic/Calculator.d.ts +8 -0
  141. package/dist/cjs/utilities/math/basic/Calculator.js +6 -0
  142. package/dist/cjs/utilities/math/basic/Calculator.js.map +1 -0
  143. package/dist/cjs/utilities/math/basic/index.d.ts +3 -0
  144. package/dist/cjs/utilities/math/basic/index.js +11 -0
  145. package/dist/cjs/utilities/math/basic/index.js.map +1 -0
  146. package/dist/cjs/utilities/math/index.d.ts +2 -1
  147. package/dist/cjs/utilities/math/index.js +3 -1
  148. package/dist/cjs/utilities/math/index.js.map +1 -1
  149. package/dist/cjs/utilities/math/midPoint.js +2 -1
  150. package/dist/cjs/utilities/math/midPoint.js.map +1 -1
  151. package/dist/cjs/utilities/math/polyline/pointInPolyline.js +2 -1
  152. package/dist/cjs/utilities/math/polyline/pointInPolyline.js.map +1 -1
  153. package/dist/cjs/utilities/math/vec2/liangBarksyClip.d.ts +1 -1
  154. package/dist/cjs/utilities/math/vec2/liangBarksyClip.js +10 -5
  155. package/dist/cjs/utilities/math/vec2/liangBarksyClip.js.map +1 -1
  156. package/dist/cjs/utilities/pointInShapeCallback.d.ts +7 -1
  157. package/dist/cjs/utilities/pointInShapeCallback.js +6 -1
  158. package/dist/cjs/utilities/pointInShapeCallback.js.map +1 -1
  159. package/dist/cjs/utilities/roundNumber.js +4 -2
  160. package/dist/cjs/utilities/roundNumber.js.map +1 -1
  161. package/dist/cjs/utilities/segmentation/brushSizeForToolGroup.d.ts +2 -2
  162. package/dist/cjs/utilities/segmentation/brushSizeForToolGroup.js +4 -4
  163. package/dist/cjs/utilities/segmentation/brushSizeForToolGroup.js.map +1 -1
  164. package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.js +2 -1
  165. package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.js.map +1 -1
  166. package/dist/cjs/utilities/segmentation/utilities.d.ts +1 -2
  167. package/dist/cjs/utilities/segmentation/utilities.js +4 -1
  168. package/dist/cjs/utilities/segmentation/utilities.js.map +1 -1
  169. package/dist/cjs/utilities/stackPrefetch/stackPrefetch.js +4 -4
  170. package/dist/cjs/utilities/stackPrefetch/stackPrefetch.js.map +1 -1
  171. package/dist/esm/drawingSvg/drawCircle.js +9 -5
  172. package/dist/esm/drawingSvg/drawCircle.js.map +1 -1
  173. package/dist/esm/drawingSvg/drawEllipse.js +4 -4
  174. package/dist/esm/drawingSvg/drawEllipse.js.map +1 -1
  175. package/dist/esm/drawingSvg/drawHandles.js +4 -4
  176. package/dist/esm/drawingSvg/drawHandles.js.map +1 -1
  177. package/dist/esm/drawingSvg/drawLine.js +4 -4
  178. package/dist/esm/drawingSvg/drawLine.js.map +1 -1
  179. package/dist/esm/drawingSvg/drawPolyline.js +4 -4
  180. package/dist/esm/drawingSvg/drawPolyline.js.map +1 -1
  181. package/dist/esm/drawingSvg/drawRect.js +4 -4
  182. package/dist/esm/drawingSvg/drawRect.js.map +1 -1
  183. package/dist/esm/drawingSvg/drawTextBox.js +4 -4
  184. package/dist/esm/drawingSvg/drawTextBox.js.map +1 -1
  185. package/dist/esm/drawingSvg/index.d.ts +3 -1
  186. package/dist/esm/drawingSvg/index.js +3 -1
  187. package/dist/esm/drawingSvg/index.js.map +1 -1
  188. package/dist/esm/drawingSvg/setAttributesIfNecessary.d.ts +2 -0
  189. package/dist/esm/drawingSvg/{_setAttributesIfNecessary.js → setAttributesIfNecessary.js} +3 -3
  190. package/dist/esm/drawingSvg/setAttributesIfNecessary.js.map +1 -0
  191. package/dist/esm/drawingSvg/setNewAttributesIfValid.d.ts +2 -0
  192. package/dist/esm/drawingSvg/{_setNewAttributesIfValid.js → setNewAttributesIfValid.js} +3 -3
  193. package/dist/esm/drawingSvg/setNewAttributesIfValid.js.map +1 -0
  194. package/dist/esm/enums/Events.d.ts +1 -0
  195. package/dist/esm/enums/Events.js +1 -0
  196. package/dist/esm/enums/Events.js.map +1 -1
  197. package/dist/esm/eventDispatchers/shared/getMouseModifier.js +10 -5
  198. package/dist/esm/eventDispatchers/shared/getMouseModifier.js.map +1 -1
  199. package/dist/esm/eventListeners/keyboard/keyDownListener.js +8 -0
  200. package/dist/esm/eventListeners/keyboard/keyDownListener.js.map +1 -1
  201. package/dist/esm/eventListeners/mouse/mouseDownListener.js +2 -1
  202. package/dist/esm/eventListeners/mouse/mouseDownListener.js.map +1 -1
  203. package/dist/esm/eventListeners/touch/touchStartListener.js +10 -5
  204. package/dist/esm/eventListeners/touch/touchStartListener.js.map +1 -1
  205. package/dist/esm/index.d.ts +2 -2
  206. package/dist/esm/index.js +2 -2
  207. package/dist/esm/index.js.map +1 -1
  208. package/dist/esm/stateManagement/annotation/config/ToolStyle.js +1 -0
  209. package/dist/esm/stateManagement/annotation/config/ToolStyle.js.map +1 -1
  210. package/dist/esm/stateManagement/annotation/config/getState.js +6 -3
  211. package/dist/esm/stateManagement/annotation/config/getState.js.map +1 -1
  212. package/dist/esm/stateManagement/annotation/config/helpers.js +4 -2
  213. package/dist/esm/stateManagement/annotation/config/helpers.js.map +1 -1
  214. package/dist/esm/store/SynchronizerManager/Synchronizer.js +10 -2
  215. package/dist/esm/store/SynchronizerManager/Synchronizer.js.map +1 -1
  216. package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +3 -3
  217. package/dist/esm/store/ToolGroupManager/ToolGroup.js +10 -3
  218. package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
  219. package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.js +2 -1
  220. package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.js.map +1 -1
  221. package/dist/esm/synchronizers/callbacks/stackImageSyncCallback.js +26 -23
  222. package/dist/esm/synchronizers/callbacks/stackImageSyncCallback.js.map +1 -1
  223. package/dist/esm/synchronizers/callbacks/voiSyncCallback.js +1 -1
  224. package/dist/esm/synchronizers/callbacks/voiSyncCallback.js.map +1 -1
  225. package/dist/esm/tools/MIPJumpToClickTool.js +4 -2
  226. package/dist/esm/tools/MIPJumpToClickTool.js.map +1 -1
  227. package/dist/esm/tools/PlanarRotateTool.js +2 -1
  228. package/dist/esm/tools/PlanarRotateTool.js.map +1 -1
  229. package/dist/esm/tools/ReferenceCursors.js +58 -29
  230. package/dist/esm/tools/ReferenceCursors.js.map +1 -1
  231. package/dist/esm/tools/ScaleOverlayTool.js +2 -1
  232. package/dist/esm/tools/ScaleOverlayTool.js.map +1 -1
  233. package/dist/esm/tools/annotation/AngleTool.d.ts +0 -1
  234. package/dist/esm/tools/annotation/AngleTool.js +31 -14
  235. package/dist/esm/tools/annotation/AngleTool.js.map +1 -1
  236. package/dist/esm/tools/annotation/ArrowAnnotateTool.js +15 -1
  237. package/dist/esm/tools/annotation/ArrowAnnotateTool.js.map +1 -1
  238. package/dist/esm/tools/annotation/BidirectionalTool.d.ts +0 -1
  239. package/dist/esm/tools/annotation/BidirectionalTool.js +29 -14
  240. package/dist/esm/tools/annotation/BidirectionalTool.js.map +1 -1
  241. package/dist/esm/tools/annotation/CircleROITool.d.ts +0 -1
  242. package/dist/esm/tools/annotation/CircleROITool.js +55 -53
  243. package/dist/esm/tools/annotation/CircleROITool.js.map +1 -1
  244. package/dist/esm/tools/annotation/CobbAngleTool.d.ts +0 -1
  245. package/dist/esm/tools/annotation/CobbAngleTool.js +26 -11
  246. package/dist/esm/tools/annotation/CobbAngleTool.js.map +1 -1
  247. package/dist/esm/tools/annotation/DragProbeTool.js +13 -1
  248. package/dist/esm/tools/annotation/DragProbeTool.js.map +1 -1
  249. package/dist/esm/tools/annotation/EllipticalROITool.d.ts +0 -1
  250. package/dist/esm/tools/annotation/EllipticalROITool.js +47 -46
  251. package/dist/esm/tools/annotation/EllipticalROITool.js.map +1 -1
  252. package/dist/esm/tools/annotation/LengthTool.d.ts +0 -1
  253. package/dist/esm/tools/annotation/LengthTool.js +26 -11
  254. package/dist/esm/tools/annotation/LengthTool.js.map +1 -1
  255. package/dist/esm/tools/annotation/PlanarFreehandROITool.d.ts +0 -1
  256. package/dist/esm/tools/annotation/PlanarFreehandROITool.js +49 -51
  257. package/dist/esm/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  258. package/dist/esm/tools/annotation/ProbeTool.d.ts +0 -1
  259. package/dist/esm/tools/annotation/ProbeTool.js +18 -13
  260. package/dist/esm/tools/annotation/ProbeTool.js.map +1 -1
  261. package/dist/esm/tools/annotation/RectangleROITool.d.ts +0 -1
  262. package/dist/esm/tools/annotation/RectangleROITool.js +45 -48
  263. package/dist/esm/tools/annotation/RectangleROITool.js.map +1 -1
  264. package/dist/esm/tools/base/AnnotationTool.d.ts +2 -1
  265. package/dist/esm/tools/base/AnnotationTool.js +26 -16
  266. package/dist/esm/tools/base/AnnotationTool.js.map +1 -1
  267. package/dist/esm/tools/base/index.d.ts +2 -1
  268. package/dist/esm/tools/base/index.js +2 -1
  269. package/dist/esm/tools/base/index.js.map +1 -1
  270. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
  271. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js +4 -1
  272. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js.map +1 -1
  273. package/dist/esm/tools/displayTools/SegmentationDisplayTool.js +5 -6
  274. package/dist/esm/tools/displayTools/SegmentationDisplayTool.js.map +1 -1
  275. package/dist/esm/tools/index.d.ts +2 -2
  276. package/dist/esm/tools/index.js +2 -2
  277. package/dist/esm/tools/index.js.map +1 -1
  278. package/dist/esm/tools/segmentation/BrushTool.js +25 -18
  279. package/dist/esm/tools/segmentation/BrushTool.js.map +1 -1
  280. package/dist/esm/tools/segmentation/PaintFillTool.js +4 -2
  281. package/dist/esm/tools/segmentation/PaintFillTool.js.map +1 -1
  282. package/dist/esm/tools/segmentation/strategies/eraseSphere.d.ts +2 -0
  283. package/dist/esm/tools/segmentation/strategies/eraseSphere.js.map +1 -1
  284. package/dist/esm/tools/segmentation/strategies/fillCircle.js +1 -6
  285. package/dist/esm/tools/segmentation/strategies/fillCircle.js.map +1 -1
  286. package/dist/esm/tools/segmentation/strategies/fillSphere.d.ts +3 -0
  287. package/dist/esm/tools/segmentation/strategies/fillSphere.js +33 -9
  288. package/dist/esm/tools/segmentation/strategies/fillSphere.js.map +1 -1
  289. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +3 -0
  290. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js +8 -0
  291. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -0
  292. package/dist/esm/types/CINETypes.d.ts +2 -0
  293. package/dist/esm/types/CalculatorTypes.d.ts +6 -0
  294. package/dist/esm/types/CalculatorTypes.js +2 -0
  295. package/dist/esm/types/CalculatorTypes.js.map +1 -0
  296. package/dist/esm/types/EventTypes.d.ts +8 -1
  297. package/dist/esm/types/ISetToolModeOptions.d.ts +2 -2
  298. package/dist/esm/types/IToolGroup.d.ts +3 -2
  299. package/dist/esm/types/ToolProps.d.ts +5 -1
  300. package/dist/esm/types/index.d.ts +3 -2
  301. package/dist/esm/utilities/cine/playClip.js +13 -4
  302. package/dist/esm/utilities/cine/playClip.js.map +1 -1
  303. package/dist/esm/utilities/dynamicVolume/getDataInTime.js +7 -4
  304. package/dist/esm/utilities/dynamicVolume/getDataInTime.js.map +1 -1
  305. package/dist/esm/utilities/getCalibratedUnits.js +10 -5
  306. package/dist/esm/utilities/getCalibratedUnits.js.map +1 -1
  307. package/dist/esm/utilities/math/basic/BasicStatsCalculator.d.ts +14 -0
  308. package/dist/esm/utilities/math/basic/BasicStatsCalculator.js +36 -0
  309. package/dist/esm/utilities/math/basic/BasicStatsCalculator.js.map +1 -0
  310. package/dist/esm/utilities/math/basic/Calculator.d.ts +8 -0
  311. package/dist/esm/utilities/math/basic/Calculator.js +4 -0
  312. package/dist/esm/utilities/math/basic/Calculator.js.map +1 -0
  313. package/dist/esm/utilities/math/basic/index.d.ts +3 -0
  314. package/dist/esm/utilities/math/basic/index.js +4 -0
  315. package/dist/esm/utilities/math/basic/index.js.map +1 -0
  316. package/dist/esm/utilities/math/index.d.ts +2 -1
  317. package/dist/esm/utilities/math/index.js +2 -1
  318. package/dist/esm/utilities/math/index.js.map +1 -1
  319. package/dist/esm/utilities/math/midPoint.js +2 -1
  320. package/dist/esm/utilities/math/midPoint.js.map +1 -1
  321. package/dist/esm/utilities/math/polyline/pointInPolyline.js +2 -1
  322. package/dist/esm/utilities/math/polyline/pointInPolyline.js.map +1 -1
  323. package/dist/esm/utilities/math/vec2/liangBarksyClip.d.ts +1 -1
  324. package/dist/esm/utilities/math/vec2/liangBarksyClip.js +10 -5
  325. package/dist/esm/utilities/math/vec2/liangBarksyClip.js.map +1 -1
  326. package/dist/esm/utilities/pointInShapeCallback.d.ts +7 -1
  327. package/dist/esm/utilities/pointInShapeCallback.js +6 -1
  328. package/dist/esm/utilities/pointInShapeCallback.js.map +1 -1
  329. package/dist/esm/utilities/roundNumber.js +4 -2
  330. package/dist/esm/utilities/roundNumber.js.map +1 -1
  331. package/dist/esm/utilities/segmentation/brushSizeForToolGroup.d.ts +2 -2
  332. package/dist/esm/utilities/segmentation/brushSizeForToolGroup.js +4 -4
  333. package/dist/esm/utilities/segmentation/brushSizeForToolGroup.js.map +1 -1
  334. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +2 -1
  335. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js.map +1 -1
  336. package/dist/esm/utilities/segmentation/utilities.d.ts +1 -2
  337. package/dist/esm/utilities/segmentation/utilities.js +4 -1
  338. package/dist/esm/utilities/segmentation/utilities.js.map +1 -1
  339. package/dist/esm/utilities/stackPrefetch/stackPrefetch.js +4 -4
  340. package/dist/esm/utilities/stackPrefetch/stackPrefetch.js.map +1 -1
  341. package/dist/umd/index.js +1 -1
  342. package/dist/umd/index.js.map +1 -1
  343. package/package.json +3 -3
  344. package/src/drawingSvg/drawCircle.ts +17 -5
  345. package/src/drawingSvg/drawEllipse.ts +4 -4
  346. package/src/drawingSvg/drawHandles.ts +4 -4
  347. package/src/drawingSvg/drawLine.ts +4 -4
  348. package/src/drawingSvg/drawPolyline.ts +4 -4
  349. package/src/drawingSvg/drawRect.ts +4 -4
  350. package/src/drawingSvg/drawTextBox.ts +4 -4
  351. package/src/drawingSvg/index.ts +4 -0
  352. package/src/drawingSvg/{_setAttributesIfNecessary.ts → setAttributesIfNecessary.ts} +2 -2
  353. package/src/drawingSvg/{_setNewAttributesIfValid.ts → setNewAttributesIfValid.ts} +2 -2
  354. package/src/enums/Events.ts +13 -0
  355. package/src/eventDispatchers/shared/getMouseModifier.ts +15 -5
  356. package/src/eventListeners/keyboard/keyDownListener.ts +13 -0
  357. package/src/eventListeners/mouse/mouseDownListener.ts +3 -1
  358. package/src/eventListeners/touch/touchStartListener.ts +15 -5
  359. package/src/index.ts +2 -0
  360. package/src/stateManagement/annotation/config/ToolStyle.ts +1 -0
  361. package/src/stateManagement/annotation/config/getState.ts +7 -3
  362. package/src/stateManagement/annotation/config/helpers.ts +6 -2
  363. package/src/store/SynchronizerManager/Synchronizer.ts +16 -8
  364. package/src/store/ToolGroupManager/ToolGroup.ts +21 -5
  365. package/src/store/ToolGroupManager/getToolGroupsWithToolName.ts +3 -1
  366. package/src/synchronizers/callbacks/stackImageSyncCallback.ts +63 -68
  367. package/src/synchronizers/callbacks/voiSyncCallback.ts +1 -1
  368. package/src/tools/MIPJumpToClickTool.ts +6 -2
  369. package/src/tools/PlanarRotateTool.ts +3 -1
  370. package/src/tools/ReferenceCursors.ts +85 -29
  371. package/src/tools/ScaleOverlayTool.ts +3 -1
  372. package/src/tools/annotation/AngleTool.ts +38 -19
  373. package/src/tools/annotation/ArrowAnnotateTool.ts +16 -1
  374. package/src/tools/annotation/BidirectionalTool.ts +37 -23
  375. package/src/tools/annotation/CircleROITool.ts +83 -89
  376. package/src/tools/annotation/CobbAngleTool.ts +31 -16
  377. package/src/tools/annotation/DragProbeTool.ts +19 -1
  378. package/src/tools/annotation/EllipticalROITool.ts +63 -71
  379. package/src/tools/annotation/LengthTool.ts +32 -17
  380. package/src/tools/annotation/PlanarFreehandROITool.ts +56 -59
  381. package/src/tools/annotation/ProbeTool.ts +26 -19
  382. package/src/tools/annotation/RectangleROITool.ts +67 -75
  383. package/src/tools/base/AnnotationTool.ts +39 -17
  384. package/src/tools/base/index.ts +2 -1
  385. package/src/tools/displayTools/Labelmap/labelmapDisplay.ts +3 -0
  386. package/src/tools/displayTools/Labelmap/removeLabelmapFromElement.ts +6 -1
  387. package/src/tools/displayTools/SegmentationDisplayTool.ts +12 -18
  388. package/src/tools/index.ts +2 -1
  389. package/src/tools/segmentation/BrushTool.ts +42 -19
  390. package/src/tools/segmentation/PaintFillTool.ts +10 -3
  391. package/src/tools/segmentation/strategies/eraseSphere.ts +2 -0
  392. package/src/tools/segmentation/strategies/fillCircle.ts +1 -13
  393. package/src/tools/segmentation/strategies/fillSphere.ts +56 -8
  394. package/src/tools/segmentation/strategies/utils/isWithinThreshold.ts +16 -0
  395. package/src/types/CINETypes.ts +8 -2
  396. package/src/types/CalculatorTypes.ts +7 -0
  397. package/src/types/EventTypes.ts +20 -0
  398. package/src/types/ISetToolModeOptions.ts +2 -2
  399. package/src/types/IToolGroup.ts +6 -3
  400. package/src/types/ToolProps.ts +7 -1
  401. package/src/types/index.ts +9 -1
  402. package/src/utilities/cine/playClip.ts +20 -3
  403. package/src/utilities/dynamicVolume/getDataInTime.ts +9 -6
  404. package/src/utilities/getCalibratedUnits.ts +15 -5
  405. package/src/utilities/math/basic/BasicStatsCalculator.ts +60 -0
  406. package/src/utilities/math/basic/Calculator.ts +8 -0
  407. package/src/utilities/math/basic/index.ts +4 -0
  408. package/src/utilities/math/index.ts +10 -1
  409. package/src/utilities/math/midPoint.ts +3 -1
  410. package/src/utilities/math/polyline/pointInPolyline.ts +3 -1
  411. package/src/utilities/math/vec2/liangBarksyClip.ts +15 -5
  412. package/src/utilities/pointInShapeCallback.ts +15 -3
  413. package/src/utilities/roundNumber.ts +6 -2
  414. package/src/utilities/segmentation/brushSizeForToolGroup.ts +22 -4
  415. package/src/utilities/segmentation/thresholdVolumeByRange.ts +3 -1
  416. package/src/utilities/segmentation/utilities.ts +8 -1
  417. package/src/utilities/stackPrefetch/stackPrefetch.ts +10 -4
  418. package/dist/cjs/drawingSvg/_setAttributesIfNecessary.d.ts +0 -2
  419. package/dist/cjs/drawingSvg/_setAttributesIfNecessary.js.map +0 -1
  420. package/dist/cjs/drawingSvg/_setNewAttributesIfValid.d.ts +0 -2
  421. package/dist/cjs/drawingSvg/_setNewAttributesIfValid.js.map +0 -1
  422. package/dist/esm/drawingSvg/_setAttributesIfNecessary.d.ts +0 -2
  423. package/dist/esm/drawingSvg/_setAttributesIfNecessary.js.map +0 -1
  424. package/dist/esm/drawingSvg/_setNewAttributesIfValid.d.ts +0 -2
  425. package/dist/esm/drawingSvg/_setNewAttributesIfValid.js.map +0 -1
@@ -0,0 +1,14 @@
1
+ import { Statistics } from '../../../types';
2
+ import Calculator from './Calculator';
3
+ export default class BasicStatsCalculator extends Calculator {
4
+ private static max;
5
+ private static currentMax;
6
+ private static sum;
7
+ private static sumSquares;
8
+ private static squaredDiffSum;
9
+ private static count;
10
+ static statsCallback: ({ value: newValue }: {
11
+ value: any;
12
+ }) => void;
13
+ static getStatistics: () => Statistics[];
14
+ }
@@ -0,0 +1,36 @@
1
+ import Calculator from './Calculator';
2
+ export default class BasicStatsCalculator extends Calculator {
3
+ static { this.max = -Infinity; }
4
+ static { this.currentMax = 0; }
5
+ static { this.sum = 0; }
6
+ static { this.sumSquares = 0; }
7
+ static { this.squaredDiffSum = 0; }
8
+ static { this.count = 0; }
9
+ static { this.statsCallback = ({ value: newValue }) => {
10
+ if (newValue > this.max) {
11
+ this.max = newValue;
12
+ this.currentMax = newValue;
13
+ }
14
+ this.count += 1;
15
+ this.sum += newValue;
16
+ this.sumSquares += newValue ** 2;
17
+ this.squaredDiffSum += Math.pow(newValue - this.sum / this.count, 2);
18
+ }; }
19
+ static { this.getStatistics = () => {
20
+ const mean = this.sum / this.count;
21
+ const stdDev = Math.sqrt(this.squaredDiffSum / this.count);
22
+ const stdDevWithSumSquare = Math.sqrt(this.sumSquares / this.count - mean ** 2);
23
+ this.max = -Infinity;
24
+ this.sum = 0;
25
+ this.sumSquares = 0;
26
+ this.squaredDiffSum = 0;
27
+ this.count = 0;
28
+ return [
29
+ { name: 'max', value: this.currentMax, unit: null },
30
+ { name: 'mean', value: mean, unit: null },
31
+ { name: 'stdDev', value: stdDev, unit: null },
32
+ { name: 'stdDevWithSumSquare', value: stdDevWithSumSquare, unit: null },
33
+ ];
34
+ }; }
35
+ }
36
+ //# sourceMappingURL=BasicStatsCalculator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BasicStatsCalculator.js","sourceRoot":"","sources":["../../../../../src/utilities/math/basic/BasicStatsCalculator.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,UAAU;IAC1D,SAAe,QAAG,GAAG,CAAC,QAAQ,CAAC,EAAA;IAC/B,SAAe,eAAU,GAAG,CAAC,CAAC,EAAA;IAC9B,SAAe,QAAG,GAAG,CAAC,CAAC,EAAA;IACvB,SAAe,eAAU,GAAG,CAAC,CAAC,EAAA;IAC9B,SAAe,mBAAc,GAAG,CAAC,CAAC,EAAA;IAClC,SAAe,UAAK,GAAG,CAAC,CAAC,EAAA;IAOzB,SAAO,kBAAa,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAQ,EAAE;QACnD,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;YACvB,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;SAC5B;QAED,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAEhB,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC;QACrB,IAAI,CAAC,UAAU,IAAI,QAAQ,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,EAAA;IAYF,SAAO,kBAAa,GAAG,GAAiB,EAAE;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CACnC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CACzC,CAAC;QAEF,IAAI,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAEf,OAAO;YACL,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE;YACnD,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;YACzC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE;YAC7C,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE;SACxE,CAAC;IACJ,CAAC,CAAC,EAAA"}
@@ -0,0 +1,8 @@
1
+ import { Statistics } from '../../../types';
2
+ declare abstract class Calculator {
3
+ static run: ({ value }: {
4
+ value: any;
5
+ }) => void;
6
+ static getStatistics: () => Statistics[];
7
+ }
8
+ export default Calculator;
@@ -0,0 +1,4 @@
1
+ class Calculator {
2
+ }
3
+ export default Calculator;
4
+ //# sourceMappingURL=Calculator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Calculator.js","sourceRoot":"","sources":["../../../../../src/utilities/math/basic/Calculator.ts"],"names":[],"mappings":"AAEA,MAAe,UAAU;CAGxB;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ import BasicStatsCalculator from './BasicStatsCalculator';
2
+ import Calculator from './Calculator';
3
+ export { BasicStatsCalculator, Calculator };
@@ -0,0 +1,4 @@
1
+ import BasicStatsCalculator from './BasicStatsCalculator';
2
+ import Calculator from './Calculator';
3
+ export { BasicStatsCalculator, Calculator };
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/utilities/math/basic/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC"}
@@ -4,4 +4,5 @@ import * as lineSegment from './line';
4
4
  import * as rectangle from './rectangle';
5
5
  import * as polyline from './polyline';
6
6
  import * as point from './point';
7
- export { vec2, ellipse, lineSegment, rectangle, polyline, point };
7
+ import * as BasicStatsCalculator from './basic';
8
+ export { vec2, ellipse, lineSegment, rectangle, polyline, point, BasicStatsCalculator, };
@@ -4,5 +4,6 @@ import * as lineSegment from './line';
4
4
  import * as rectangle from './rectangle';
5
5
  import * as polyline from './polyline';
6
6
  import * as point from './point';
7
- export { vec2, ellipse, lineSegment, rectangle, polyline, point };
7
+ import * as BasicStatsCalculator from './basic';
8
+ export { vec2, ellipse, lineSegment, rectangle, polyline, point, BasicStatsCalculator, };
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utilities/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,WAAW,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utilities/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,WAAW,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,oBAAoB,MAAM,SAAS,CAAC;AAEhD,OAAO,EACL,IAAI,EACJ,OAAO,EACP,WAAW,EACX,SAAS,EACT,QAAQ,EACR,KAAK,EACL,oBAAoB,GACrB,CAAC"}
@@ -4,8 +4,9 @@ const midPoint = (...args) => {
4
4
  for (const arg of args) {
5
5
  ret[0] += arg[0] / len;
6
6
  ret[1] += arg[1] / len;
7
- if (ret.length === 3)
7
+ if (ret.length === 3) {
8
8
  ret[2] += arg[2] / len;
9
+ }
9
10
  }
10
11
  return ret;
11
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"midPoint.js","sourceRoot":"","sources":["../../../../src/utilities/math/midPoint.ts"],"names":[],"mappings":"AAKA,MAAM,QAAQ,GAAG,CACf,GAAG,IAAqC,EACX,EAAE;IAC/B,MAAM,GAAG,GACP,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACvB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACvB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;KAC9C;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,QAAqD,CAAC;AAExE,eAAe,QAAQ,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"midPoint.js","sourceRoot":"","sources":["../../../../src/utilities/math/midPoint.ts"],"names":[],"mappings":"AAKA,MAAM,QAAQ,GAAG,CACf,GAAG,IAAqC,EACX,EAAE;IAC/B,MAAM,GAAG,GACP,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACvB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACvB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;SACxB;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,QAAqD,CAAC;AAExE,eAAe,QAAQ,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -4,8 +4,9 @@ export default function pointInPolyline(points, point, pointEnd) {
4
4
  point[0],
5
5
  pointEnd[1],
6
6
  ]);
7
- if (intersections.length % 2 === 0)
7
+ if (intersections.length % 2 === 0) {
8
8
  return false;
9
+ }
9
10
  return true;
10
11
  }
11
12
  //# sourceMappingURL=pointInPolyline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pointInPolyline.js","sourceRoot":"","sources":["../../../../../src/utilities/math/polyline/pointInPolyline.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAEhF,MAAM,CAAC,OAAO,UAAU,eAAe,CACrC,MAAsB,EACtB,KAAmB,EACnB,QAAsB;IAEtB,MAAM,aAAa,GAAG,+BAA+B,CAAC,MAAM,EAAE,KAAK,EAAE;QACnE,KAAK,CAAC,CAAC,CAAC;QACR,QAAQ,CAAC,CAAC,CAAC;KACZ,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEjD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"pointInPolyline.js","sourceRoot":"","sources":["../../../../../src/utilities/math/polyline/pointInPolyline.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAEhF,MAAM,CAAC,OAAO,UAAU,eAAe,CACrC,MAAsB,EACtB,KAAmB,EACnB,QAAsB;IAEtB,MAAM,aAAa,GAAG,+BAA+B,CAAC,MAAM,EAAE,KAAK,EAAE;QACnE,KAAK,CAAC,CAAC,CAAC;QACR,QAAQ,CAAC,CAAC,CAAC;KACZ,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;QAClC,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1 +1 @@
1
- export default function clip(a: any, b: any, box: any, da?: any, db?: any): 1 | 0;
1
+ export default function clip(a: any, b: any, box: any, da?: any, db?: any): 0 | 1;
@@ -3,20 +3,25 @@ const INSIDE = 1;
3
3
  const OUTSIDE = 0;
4
4
  function clipT(num, denom, c) {
5
5
  const [tE, tL] = c;
6
- if (Math.abs(denom) < EPSILON)
6
+ if (Math.abs(denom) < EPSILON) {
7
7
  return num < 0;
8
+ }
8
9
  const t = num / denom;
9
10
  if (denom > 0) {
10
- if (t > tL)
11
+ if (t > tL) {
11
12
  return 0;
12
- if (t > tE)
13
+ }
14
+ if (t > tE) {
13
15
  c[0] = t;
16
+ }
14
17
  }
15
18
  else {
16
- if (t < tE)
19
+ if (t < tE) {
17
20
  return 0;
18
- if (t < tL)
21
+ }
22
+ if (t < tL) {
19
23
  c[1] = t;
24
+ }
20
25
  }
21
26
  return 1;
22
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"liangBarksyClip.js","sourceRoot":"","sources":["../../../../../src/utilities/math/vec2/liangBarksyClip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liangBarksyClip.js","sourceRoot":"","sources":["../../../../../src/utilities/math/vec2/liangBarksyClip.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,GAAG,IAAI,CAAC;AACrB,MAAM,MAAM,GAAG,CAAC,CAAC;AACjB,MAAM,OAAO,GAAG,CAAC,CAAC;AAElB,SAAS,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,EAAE;QAC7B,OAAO,GAAG,GAAG,CAAC,CAAC;KAChB;IACD,MAAM,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;IAEtB,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,IAAI,CAAC,GAAG,EAAE,EAAE;YACV,OAAO,CAAC,CAAC;SACV;QACD,IAAI,CAAC,GAAG,EAAE,EAAE;YACV,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACV;KACF;SAAM;QACL,IAAI,CAAC,GAAG,EAAE,EAAE;YACV,OAAO,CAAC,CAAC;SACV;QACD,IAAI,CAAC,GAAG,EAAE,EAAE;YACV,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACV;KACF;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAUD,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAG,EAAE,EAAG;IAC9C,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IACnB,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAEnB,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE;QACxC,EAAE,GAAG,CAAC,CAAC;QACP,EAAE,GAAG,CAAC,CAAC;KACR;SAAM;QACL,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACb,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACb,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACb,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KACd;IAED,IACE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO;QACtB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO;QACtB,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACZ,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACZ,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACZ,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,EACZ;QACA,OAAO,MAAM,CAAC;KACf;IAED,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjB,IACE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzB,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzB,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAC1B;QACA,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACnB,IAAI,EAAE,GAAG,CAAC,EAAE;YACV,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;YACrB,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;SACtB;QACD,IAAI,EAAE,GAAG,CAAC,EAAE;YACV,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC;YACjB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC;SAClB;QACD,OAAO,MAAM,CAAC;KACf;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,6 +1,12 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
2
  import type { vtkImageData } from '@kitware/vtk.js/Common/DataModel/ImageData';
3
3
  import BoundsIJK from '../types/BoundsIJK';
4
+ export declare type PointInShape = {
5
+ value: number;
6
+ index: number;
7
+ pointIJK: Types.Point3;
8
+ pointLPS: Types.Point3;
9
+ };
4
10
  export declare type PointInShapeCallback = ({ value, index, pointIJK, pointLPS, }: {
5
11
  value: number;
6
12
  index: number;
@@ -8,4 +14,4 @@ export declare type PointInShapeCallback = ({ value, index, pointIJK, pointLPS,
8
14
  pointLPS: Types.Point3;
9
15
  }) => void;
10
16
  export declare type ShapeFnCriteria = (pointIJK: Types.Point3, pointLPS: Types.Point3) => boolean;
11
- export default function pointInShapeCallback(imageData: vtkImageData | Types.CPUImageData, pointInShapeFn: ShapeFnCriteria, callback: PointInShapeCallback, boundsIJK?: BoundsIJK): void;
17
+ export default function pointInShapeCallback(imageData: vtkImageData | Types.CPUImageData, pointInShapeFn: ShapeFnCriteria, callback?: PointInShapeCallback, boundsIJK?: BoundsIJK): Array<PointInShape>;
@@ -36,6 +36,7 @@ export default function pointInShapeCallback(imageData, pointInShapeFn, callback
36
36
  const scanAxisStep = vec3.fromValues(scanAxisNormal[0] * scanAxisSpacing, scanAxisNormal[1] * scanAxisSpacing, scanAxisNormal[2] * scanAxisSpacing);
37
37
  const yMultiple = dimensions[0];
38
38
  const zMultiple = dimensions[0] * dimensions[1];
39
+ const pointsInShape = [];
39
40
  for (let k = kMin; k <= kMax; k++) {
40
41
  for (let j = jMin; j <= jMax; j++) {
41
42
  for (let i = iMin; i <= iMax; i++) {
@@ -61,10 +62,14 @@ export default function pointInShapeCallback(imageData, pointInShapeFn, callback
61
62
  if (pointInShapeFn(pointLPS, pointIJK)) {
62
63
  const index = k * zMultiple + j * yMultiple + i;
63
64
  const value = scalarData[index];
64
- callback({ value, index, pointIJK, pointLPS });
65
+ pointsInShape.push({ value, index, pointIJK, pointLPS });
66
+ if (callback !== null) {
67
+ callback({ value, index, pointIJK, pointLPS });
68
+ }
65
69
  }
66
70
  }
67
71
  }
68
72
  }
73
+ return pointsInShape;
69
74
  }
70
75
  //# sourceMappingURL=pointInShapeCallback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pointInShapeCallback.js","sourceRoot":"","sources":["../../../src/utilities/pointInShapeCallback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pointInShapeCallback.js","sourceRoot":"","sources":["../../../src/utilities/pointInShapeCallback.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  function roundNumber(value, precision = 2) {
2
- if (value === undefined || value === null || value === '')
2
+ if (value === undefined || value === null || value === '') {
3
3
  return 'NaN';
4
+ }
4
5
  value = Number(value);
5
- if (value < 0.0001)
6
+ if (value < 0.0001) {
6
7
  return `${value}`;
8
+ }
7
9
  const fixedPrecision = value >= 100
8
10
  ? precision - 2
9
11
  : value >= 10
@@ -1 +1 @@
1
- {"version":3,"file":"roundNumber.js","sourceRoot":"","sources":["../../../src/utilities/roundNumber.ts"],"names":[],"mappings":"AAYA,SAAS,WAAW,CAAC,KAAsB,EAAE,SAAS,GAAG,CAAC;IACxD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC;IACxE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,KAAK,GAAG,MAAM;QAAE,OAAO,GAAG,KAAK,EAAE,CAAC;IACtC,MAAM,cAAc,GAClB,KAAK,IAAI,GAAG;QACV,CAAC,CAAC,SAAS,GAAG,CAAC;QACf,CAAC,CAAC,KAAK,IAAI,EAAE;YACb,CAAC,CAAC,SAAS,GAAG,CAAC;YACf,CAAC,CAAC,KAAK,IAAI,CAAC;gBACZ,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,KAAK,IAAI,GAAG;oBACd,CAAC,CAAC,SAAS,GAAG,CAAC;oBACf,CAAC,CAAC,KAAK,IAAI,IAAI;wBACf,CAAC,CAAC,SAAS,GAAG,CAAC;wBACf,CAAC,CAAC,KAAK,IAAI,KAAK;4BAChB,CAAC,CAAC,SAAS,GAAG,CAAC;4BACf,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;IACpB,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AACvC,CAAC;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"roundNumber.js","sourceRoot":"","sources":["../../../src/utilities/roundNumber.ts"],"names":[],"mappings":"AAYA,SAAS,WAAW,CAAC,KAAsB,EAAE,SAAS,GAAG,CAAC;IACxD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;QACzD,OAAO,KAAK,CAAC;KACd;IACD,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,KAAK,GAAG,MAAM,EAAE;QAClB,OAAO,GAAG,KAAK,EAAE,CAAC;KACnB;IACD,MAAM,cAAc,GAClB,KAAK,IAAI,GAAG;QACV,CAAC,CAAC,SAAS,GAAG,CAAC;QACf,CAAC,CAAC,KAAK,IAAI,EAAE;YACb,CAAC,CAAC,SAAS,GAAG,CAAC;YACf,CAAC,CAAC,KAAK,IAAI,CAAC;gBACZ,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,KAAK,IAAI,GAAG;oBACd,CAAC,CAAC,SAAS,GAAG,CAAC;oBACf,CAAC,CAAC,KAAK,IAAI,IAAI;wBACf,CAAC,CAAC,SAAS,GAAG,CAAC;wBACf,CAAC,CAAC,KAAK,IAAI,KAAK;4BAChB,CAAC,CAAC,SAAS,GAAG,CAAC;4BACf,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;IACpB,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AACvC,CAAC;AAED,eAAe,WAAW,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare function setBrushSizeForToolGroup(toolGroupId: string, brushSize: number): void;
2
- export declare function getBrushSizeForToolGroup(toolGroupId: string): void;
1
+ export declare function setBrushSizeForToolGroup(toolGroupId: string, brushSize: number, toolName?: string): void;
2
+ export declare function getBrushSizeForToolGroup(toolGroupId: string, toolName?: string): void;
@@ -2,12 +2,12 @@ import { getToolGroup } from '../../store/ToolGroupManager';
2
2
  import triggerAnnotationRenderForViewportIds from '../triggerAnnotationRenderForViewportIds';
3
3
  import { getRenderingEngine } from '@cornerstonejs/core';
4
4
  import getBrushToolInstances from './utilities';
5
- export function setBrushSizeForToolGroup(toolGroupId, brushSize) {
5
+ export function setBrushSizeForToolGroup(toolGroupId, brushSize, toolName) {
6
6
  const toolGroup = getToolGroup(toolGroupId);
7
7
  if (toolGroup === undefined) {
8
8
  return;
9
9
  }
10
- const brushBasedToolInstances = getBrushToolInstances(toolGroupId);
10
+ const brushBasedToolInstances = getBrushToolInstances(toolGroupId, toolName);
11
11
  brushBasedToolInstances.forEach((tool) => {
12
12
  tool.configuration.brushSize = brushSize;
13
13
  tool.invalidateBrushCursor();
@@ -22,7 +22,7 @@ export function setBrushSizeForToolGroup(toolGroupId, brushSize) {
22
22
  const renderingEngine = getRenderingEngine(renderingEngineId);
23
23
  triggerAnnotationRenderForViewportIds(renderingEngine, viewportIds);
24
24
  }
25
- export function getBrushSizeForToolGroup(toolGroupId) {
25
+ export function getBrushSizeForToolGroup(toolGroupId, toolName) {
26
26
  const toolGroup = getToolGroup(toolGroupId);
27
27
  if (toolGroup === undefined) {
28
28
  return;
@@ -31,7 +31,7 @@ export function getBrushSizeForToolGroup(toolGroupId) {
31
31
  if (!Object.keys(toolInstances).length) {
32
32
  return;
33
33
  }
34
- const brushBasedToolInstances = getBrushToolInstances(toolGroupId);
34
+ const brushBasedToolInstances = getBrushToolInstances(toolGroupId, toolName);
35
35
  const brushToolInstance = brushBasedToolInstances[0];
36
36
  if (!brushToolInstance) {
37
37
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"brushSizeForToolGroup.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/brushSizeForToolGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,OAAO,qCAAqC,MAAM,0CAA0C,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,qBAAqB,MAAM,aAAa,CAAC;AAEhD,MAAM,UAAU,wBAAwB,CACtC,WAAmB,EACnB,SAAiB;IAEjB,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,OAAO;KACR;IAED,MAAM,uBAAuB,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAEnE,uBAAuB,CAAC,OAAO,CAAC,CAAC,IAAe,EAAE,EAAE;QAClD,IAAI,CAAC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QAGzC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAGH,MAAM,aAAa,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC;IAEnD,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CACvD,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAC5B,CAAC;IAEF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;QAC9B,OAAO;KACR;IAED,MAAM,EAAE,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAIpD,MAAM,WAAW,GAAG,SAAS,CAAC,cAAc,EAAE,CAAC;IAE/C,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAE9D,qCAAqC,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,WAAmB;IAC1D,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,OAAO;KACR;IAED,MAAM,aAAa,GAAG,SAAS,CAAC,cAAc,CAAC;IAE/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE;QACtC,OAAO;KACR;IAED,MAAM,uBAAuB,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAGnE,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAErD,IAAI,CAAC,iBAAiB,EAAE;QACtB,OAAO;KACR;IAGD,OAAO,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"brushSizeForToolGroup.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/brushSizeForToolGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,OAAO,qCAAqC,MAAM,0CAA0C,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,qBAAqB,MAAM,aAAa,CAAC;AAShD,MAAM,UAAU,wBAAwB,CACtC,WAAmB,EACnB,SAAiB,EACjB,QAAiB;IAEjB,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,OAAO;KACR;IAED,MAAM,uBAAuB,GAAG,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAE7E,uBAAuB,CAAC,OAAO,CAAC,CAAC,IAAe,EAAE,EAAE;QAClD,IAAI,CAAC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QAGzC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAGH,MAAM,aAAa,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC;IAEnD,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CACvD,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAC5B,CAAC;IAEF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;QAC9B,OAAO;KACR;IAED,MAAM,EAAE,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAIpD,MAAM,WAAW,GAAG,SAAS,CAAC,cAAc,EAAE,CAAC;IAE/C,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAE9D,qCAAqC,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;AACtE,CAAC;AASD,MAAM,UAAU,wBAAwB,CACtC,WAAmB,EACnB,QAAiB;IAEjB,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,OAAO;KACR;IAED,MAAM,aAAa,GAAG,SAAS,CAAC,cAAc,CAAC;IAE/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE;QACtC,OAAO;KACR;IAED,MAAM,uBAAuB,GAAG,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAG7E,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAErD,IAAI,CAAC,iBAAiB,EAAE;QACtB,OAAO;KACR;IAGD,OAAO,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC;AACnD,CAAC"}
@@ -59,8 +59,9 @@ function thresholdVolumeByRange(segmentationVolume, thresholdVolumeInformation,
59
59
  break;
60
60
  }
61
61
  }
62
- if (insert)
62
+ if (insert) {
63
63
  scalarData[index] = 1;
64
+ }
64
65
  };
65
66
  pointInShapeCallback(segmentationImageData, () => true, callback, boundsIJK);
66
67
  triggerSegmentationDataModified(segmentationVolume.volumeId);
@@ -1 +1 @@
1
- {"version":3,"file":"thresholdVolumeByRange.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/thresholdVolumeByRange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thresholdVolumeByRange.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/thresholdVolumeByRange.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,+BAA+B,EAAE,MAAM,8DAA8D,CAAC;AAE/G,OAAO,EACL,eAAe,EACf,cAAc,GAEf,MAAM,aAAa,CAAC;AA2BrB,SAAS,sBAAsB,CAC7B,kBAAsC,EACtC,0BAAkD,EAClD,OAA8B;IAE9B,MAAM,EAAE,SAAS,EAAE,qBAAqB,EAAE,GAAG,kBAAkB,CAAC;IAChE,MAAM,UAAU,GAAG,kBAAkB,CAAC,aAAa,EAAE,CAAC;IAEtD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACzC,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,CAAC,CAAC;IAG9C,IAAI,SAAS,EAAE;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACnB;KACF;IAED,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,cAAc,CACtD,kBAAkB,EAClB,0BAA0B,CAC3B,CAAC;IAGF,IAAI,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC;IAE3B,MAAM,gBAAgB,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE;QAMjE,MAAM,eAAe,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACpC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;YAClB,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE;gBAChD,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC;aACzB;QACH,CAAC,CAAC;QAEF,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC;QAE3D,MAAM,aAAa,GAAG,eAAe,CACnC,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,CACZ,CAAC;QAGF,KAAK,GAAG,CAAC,CAAC;QACV,QAAQ,GAAG,CAAC,CAAC;QACb,KAAK,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAEzB,IAAI,WAAW,GAAG,KAAK,CAAC;QAGxB,oBAAoB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;QAE5E,IAAI,WAAW,KAAK,CAAC,EAAE;YACrB,WAAW,GAAG,QAAQ,GAAG,CAAC,CAAC;SAC5B;aAAM,IAAI,WAAW,IAAI,CAAC,EAAE;YAC3B,WAAW,GAAG,QAAQ,KAAK,KAAK,CAAC;SAClC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAGF,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE;QACzC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC;QAChE,MAAM,MAAM,GAAG,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEtD,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,EAAE;YACpC,OAAO,KAAK,CAAC;SACd;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC,CAAC;IAOF,MAAM,QAAQ,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QACjD,IAAI,MAAM,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAE9C,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE;gBACtD,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;aACjD;iBAAM;gBAEL,MAAM,GAAG,gBAAgB,CACvB,cAAc,CAAC,CAAC,CAAC,EACjB,cAAc,CAAC,aAAa,CAAC,CAAC,OAAO,EACrC,QAAQ,CACT,CAAC;aACH;YACD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM;aACP;SACF;QAGD,IAAI,MAAM,EAAE;YACV,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACvB;IACH,CAAC,CAAC;IAEF,oBAAoB,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE7E,+BAA+B,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAE7D,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,eAAe,sBAAsB,CAAC"}
@@ -1,11 +1,10 @@
1
1
  import { Types } from '@cornerstonejs/core';
2
- import BrushTool from '../../tools/segmentation/BrushTool';
3
2
  export declare type ThresholdInformation = {
4
3
  volume: Types.IImageVolume;
5
4
  lower: number;
6
5
  upper: number;
7
6
  };
8
- export default function getBrushToolInstances(toolGroupId: any): BrushTool[];
7
+ export default function getBrushToolInstances(toolGroupId: string, toolName?: string): any[];
9
8
  export declare function getVoxelOverlap(imageData: any, dimensions: any, voxelSpacing: any, voxelCenter: any): [Types.Point2, Types.Point2, Types.Point2];
10
9
  export declare function processVolumes(segmentationVolume: Types.IImageVolume, thresholdVolumeInformation: ThresholdInformation[]): {
11
10
  volumeInfoList: any[];
@@ -2,7 +2,7 @@ import { utilities as csUtils } from '@cornerstonejs/core';
2
2
  import { getToolGroup } from '../../store/ToolGroupManager';
3
3
  import BrushTool from '../../tools/segmentation/BrushTool';
4
4
  import getBoundingBoxAroundShape from '../boundingBox/getBoundingBoxAroundShape';
5
- export default function getBrushToolInstances(toolGroupId) {
5
+ export default function getBrushToolInstances(toolGroupId, toolName) {
6
6
  const toolGroup = getToolGroup(toolGroupId);
7
7
  if (toolGroup === undefined) {
8
8
  return;
@@ -11,6 +11,9 @@ export default function getBrushToolInstances(toolGroupId) {
11
11
  if (!Object.keys(toolInstances).length) {
12
12
  return;
13
13
  }
14
+ if (toolName && toolInstances[toolName]) {
15
+ return [toolInstances[toolName]];
16
+ }
14
17
  const brushBasedToolInstances = Object.values(toolInstances).filter((toolInstance) => toolInstance instanceof BrushTool);
15
18
  return brushBasedToolInstances;
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/utilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/utilities.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ const priority = 0;
5
5
  const addToBeginning = true;
6
6
  let configuration = {
7
7
  maxImagesToPrefetch: Infinity,
8
- preserveExistingPool: false,
8
+ preserveExistingPool: true,
9
9
  };
10
10
  let resetPrefetchTimeout;
11
11
  const resetPrefetchDelay = 10;
@@ -163,8 +163,8 @@ function getPromiseRemovedHandler(element) {
163
163
  }
164
164
  const stackPrefetchData = getToolState(element);
165
165
  if (!stackPrefetchData ||
166
- !stackPrefetchData.data ||
167
- !stackPrefetchData.data.length) {
166
+ !stackPrefetchData.indicesToRequest ||
167
+ !stackPrefetchData.indicesToRequest.length) {
168
168
  return;
169
169
  }
170
170
  stackPrefetchData.indicesToRequest.push(imageIdIndex);
@@ -209,7 +209,7 @@ function disable(element) {
209
209
  const promiseRemovedHandler = getPromiseRemovedHandler(element);
210
210
  eventTarget.removeEventListener(Enums.Events.IMAGE_CACHE_IMAGE_REMOVED, promiseRemovedHandler);
211
211
  const stackPrefetchData = getToolState(element);
212
- if (stackPrefetchData && stackPrefetchData.data.length) {
212
+ if (stackPrefetchData && stackPrefetchData.indicesToRequest.length) {
213
213
  stackPrefetchData.enabled = false;
214
214
  imageLoadPoolManager.clearRequestStack(requestType);
215
215
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stackPrefetch.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetch.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,KAAK,EACL,WAAW,EACX,oBAAoB,EACpB,KAAK,EACL,gBAAgB,IAAI,oBAAoB,GACzC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAErD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC;AAC/C,MAAM,QAAQ,GAAG,CAAC,CAAC;AACnB,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,IAAI,aAAa,GAAG;IAClB,mBAAmB,EAAE,QAAQ;IAC7B,oBAAoB,EAAE,KAAK;CAC5B,CAAC;AAEF,IAAI,oBAAoB,CAAC;AACzB,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,SAAS,KAAK,CAAC,MAAM,EAAE,OAAO;IAG5B,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,IAAI,CAAC,GAAG,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC;IAE7B,IAAI,CAAC,IAAI,CAAC,EAAE;QACV,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,CAAC,EAAE,EAAE;QACV,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC;KACpB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CAAC,GAAG,EAAE,CAAC;IAG1B,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAE1B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACrB,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SAC1B;aAAM,IAAI,CAAC,GAAG,CAAC,EAAE;YAChB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAC5B;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AACvB,CAAC;AAED,SAAS,YAAY,CAAC,OAAO;IAC3B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAElD,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;KACH;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IAEpC,IAAI,CAAC,CAAC,QAAQ,YAAY,aAAa,CAAC,EAAE;QACxC,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;KACH;IAED,OAAO;QACL,mBAAmB,EAAE,QAAQ,CAAC,sBAAsB,EAAE;QACtD,QAAQ,EAAE,QAAQ,CAAC,WAAW,EAAE;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,OAAO;IAEvB,MAAM,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,CAAC,iBAAiB,EAAE;QACtB,OAAO;KACR;IAED,MAAM,aAAa,GAAG,iBAAiB,IAAI,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEpC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5D,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACpE,OAAO;KACR;IAGD,IACE,CAAC,aAAa,CAAC,gBAAgB;QAC/B,CAAC,aAAa,CAAC,gBAAgB,CAAC,MAAM,EACtC;QACA,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;KAC/B;IAGD,IAAI,aAAa,CAAC,OAAO,KAAK,KAAK,EAAE;QACnC,OAAO;KACR;IAID,SAAS,cAAc,CAAC,YAAY;QAClC,MAAM,KAAK,GAAG,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAEnE,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YAEd,aAAa,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SACjD;IACH,CAAC;IAID,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzD,MAAM,oBAAoB,GAAG,aAAa,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAEpE,oBAAoB,CAAC,OAAO,CAAC,UAAU,YAAY;QACjD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;SACR;QAED,MAAM,eAAe,GAAG,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAE1D,IAAI,eAAe,EAAE;YACnB,cAAc,CAAC,YAAY,CAAC,CAAC;SAC9B;IACH,CAAC,CAAC,CAAC;IAIH,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,MAAM,EAAE;QAC1C,OAAO;KACR;IAGD,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE;QACvC,oBAAoB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;KACrD;IAGD,MAAM,OAAO,GAAG,YAAY,CAC1B,aAAa,CAAC,gBAAgB,EAC9B,KAAK,CAAC,mBAAmB,CAC1B,CAAC;IAEF,IAAI,OAAO,CAAC;IACZ,IAAI,gBAAgB,CAAC;IACrB,MAAM,YAAY,GAAG,KAAK,CAAC;IAE3B,SAAS,YAAY,CAAC,KAAK;QACzB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE3D,cAAc,CAAC,YAAY,CAAC,CAAC;IAuB/B,CAAC;IAcD,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAC7B,IAAI,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/B,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAE9B,OACE,UAAU,IAAI,CAAC;QACf,WAAW,GAAG,aAAa,CAAC,gBAAgB,CAAC,MAAM,EACnD;QACA,MAAM,YAAY,GAAG,KAAK,CAAC,mBAAmB,CAAC;QAC/C,MAAM,eAAe,GACnB,YAAY,GAAG,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC;YACzD,aAAa,CAAC,mBAAmB,CAAC;QACpC,MAAM,gBAAgB,GACpB,aAAa,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG,YAAY;YAC1D,aAAa,CAAC,mBAAmB,CAAC;QAEpC,MAAM,eAAe,GAAG,CAAC,eAAe,IAAI,UAAU,IAAI,CAAC,CAAC;QAC5D,MAAM,gBAAgB,GACpB,CAAC,gBAAgB,IAAI,WAAW,GAAG,aAAa,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAE3E,IAAI,CAAC,gBAAgB,IAAI,CAAC,eAAe,EAAE;YACzC,MAAM;SACP;QAED,IAAI,eAAe,EAAE;YACnB,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC;YAChE,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAC3C,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAClC;QAED,IAAI,gBAAgB,EAAE;YACpB,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC;YACjE,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAC3C,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAClC;KACF;IAED,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CACrC,WAAW,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,EAAE,gBAAgB,EAAE,GAAG,oBAAoB,EAAE,CAAC,SAAS,CAAC;IAE9D,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAGrC,MAAM,OAAO,GAAG;YACd,YAAY,EAAE;gBACZ,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;aACpD;YACD,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;aACd;YACD,WAAW;SACZ,CAAC;QAEF,oBAAoB,CAAC,UAAU,CAC7B,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EACtC,WAAW,EAEX;YACE,OAAO;SACR,EACD,QAAQ,CAET,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAO;IACvC,OAAO,UAAU,CAAC;QAChB,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;QAK3B,IAAI,SAAS,CAAC;QAEd,IAAI;YAEF,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,OAAO;SACR;QAED,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACxE,OAAO;SACR;QAED,MAAM,KAAK,GAAG,SAAS,CAAC;QACxB,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAI/D,IAAI,YAAY,GAAG,CAAC,EAAE;YACpB,OAAO;SACR;QAED,MAAM,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAEhD,IACE,CAAC,iBAAiB;YAClB,CAAC,iBAAiB,CAAC,IAAI;YACvB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAC9B;YACA,OAAO;SACR;QAED,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,CAAC;IAGvB,YAAY,CAAC,oBAAoB,CAAC,CAAC;IACnC,oBAAoB,GAAG,UAAU,CAAC;QAChC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC;QAIzB,IAAI;YACF,QAAQ,CAAC,OAAO,CAAC,CAAC;SACnB;QAAC,OAAO,KAAK,EAAE;YACd,OAAO;SACR;IACH,CAAC,EAAE,kBAAkB,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,MAAM,CAAC,OAAO;IACrB,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEpC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5D,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACpE,OAAO;KACR;IAGD,MAAM,iBAAiB,GAAG;QACxB,gBAAgB,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACrD,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,CAAC;KACb,CAAC;IAGF,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,CACpE,KAAK,CAAC,mBAAmB,CAC1B,CAAC;IAEF,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;IAElE,YAAY,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAEzC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAElB,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IAC1E,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IAEvE,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAEhE,WAAW,CAAC,mBAAmB,CAC7B,KAAK,CAAC,MAAM,CAAC,yBAAyB,EACtC,qBAAqB,CACtB,CAAC;IACF,WAAW,CAAC,gBAAgB,CAC1B,KAAK,CAAC,MAAM,CAAC,yBAAyB,EACtC,qBAAqB,CACtB,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,OAAO;IACtB,YAAY,CAAC,oBAAoB,CAAC,CAAC;IACnC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IAE1E,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAEhE,WAAW,CAAC,mBAAmB,CAC7B,KAAK,CAAC,MAAM,CAAC,yBAAyB,EACtC,qBAAqB,CACtB,CAAC;IAEF,MAAM,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAGhD,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE;QACtD,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;QAGlC,oBAAoB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;KACrD;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAM;IAC9B,aAAa,GAAG,MAAM,CAAC;AACzB,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"stackPrefetch.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetch.ts"],"names":[],"mappings":"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"}