@kitware/vtk.js 28.10.1 → 28.11.0

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 (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +778 -903
  12. package/Common/Core/Math.d.ts +14 -0
  13. package/Common/Core/Math.js +2 -4
  14. package/Common/Core/MatrixBuilder.js +99 -151
  15. package/Common/Core/Points.js +43 -43
  16. package/Common/Core/PriorityQueue.js +30 -28
  17. package/Common/Core/ProgressHandler.js +31 -32
  18. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  19. package/Common/Core/ScalarsToColors.js +196 -253
  20. package/Common/Core/StringArray.js +48 -73
  21. package/Common/Core/URLExtract.js +10 -29
  22. package/Common/Core/VariantArray.js +48 -73
  23. package/Common/Core.js +11 -11
  24. package/Common/DataModel/AbstractPointLocator.js +19 -17
  25. package/Common/DataModel/BoundingBox.js +322 -490
  26. package/Common/DataModel/Box.js +46 -63
  27. package/Common/DataModel/CardinalSpline1D.js +92 -102
  28. package/Common/DataModel/Cell.js +41 -61
  29. package/Common/DataModel/CellLinks.js +91 -127
  30. package/Common/DataModel/CellTypes/Constants.js +7 -6
  31. package/Common/DataModel/CellTypes.js +55 -74
  32. package/Common/DataModel/Collection.js +45 -61
  33. package/Common/DataModel/Cone.js +28 -20
  34. package/Common/DataModel/Cylinder.js +41 -35
  35. package/Common/DataModel/DataSet/Constants.js +11 -5
  36. package/Common/DataModel/DataSet.js +37 -25
  37. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  38. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  39. package/Common/DataModel/DataSetAttributes.js +96 -138
  40. package/Common/DataModel/EdgeLocator.js +45 -70
  41. package/Common/DataModel/ITKHelper.js +67 -137
  42. package/Common/DataModel/ImageData.js +115 -172
  43. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  44. package/Common/DataModel/ImplicitBoolean.js +66 -96
  45. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  46. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  47. package/Common/DataModel/KochanekSpline1D.js +78 -81
  48. package/Common/DataModel/Line/Constants.js +2 -2
  49. package/Common/DataModel/Line.js +82 -105
  50. package/Common/DataModel/Locator.js +17 -10
  51. package/Common/DataModel/Molecule.js +26 -17
  52. package/Common/DataModel/PiecewiseFunction.js +218 -239
  53. package/Common/DataModel/Plane.js +90 -113
  54. package/Common/DataModel/PointSet.js +30 -26
  55. package/Common/DataModel/PolyData/Constants.js +2 -2
  56. package/Common/DataModel/PolyData.js +95 -120
  57. package/Common/DataModel/PolyLine.js +44 -61
  58. package/Common/DataModel/Polygon/Constants.js +4 -4
  59. package/Common/DataModel/Polygon.js +128 -169
  60. package/Common/DataModel/Quad/Constants.js +2 -2
  61. package/Common/DataModel/Quad.js +61 -100
  62. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  63. package/Common/DataModel/SelectionNode.js +25 -21
  64. package/Common/DataModel/Sphere.js +40 -35
  65. package/Common/DataModel/Spline1D/Constants.js +3 -2
  66. package/Common/DataModel/Spline1D.js +34 -18
  67. package/Common/DataModel/Spline3D/Constants.js +2 -2
  68. package/Common/DataModel/Spline3D.js +46 -41
  69. package/Common/DataModel/StructuredData/Constants.js +2 -2
  70. package/Common/DataModel/StructuredData.js +9 -20
  71. package/Common/DataModel/Triangle.js +207 -250
  72. package/Common/DataModel.js +19 -19
  73. package/Common/System/MobileVR.js +56 -61
  74. package/Common/System/TimerLog.js +1 -1
  75. package/Common/System.js +2 -2
  76. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  77. package/Common/Transform/LandmarkTransform.js +133 -117
  78. package/Common/Transform/Transform.js +42 -57
  79. package/Common/Transform.js +2 -2
  80. package/Common/index.js +4 -4
  81. package/Filters/Core/Cutter.js +134 -146
  82. package/Filters/Core/PolyDataNormals.js +44 -50
  83. package/Filters/Core.js +2 -2
  84. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  85. package/Filters/Cornerstone.js +1 -1
  86. package/Filters/General/AppendPolyData.js +84 -100
  87. package/Filters/General/Calculator.js +95 -163
  88. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  89. package/Filters/General/ClipClosedSurface.js +341 -416
  90. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  91. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  92. package/Filters/General/ContourTriangulator/helper.js +684 -812
  93. package/Filters/General/ContourTriangulator.js +92 -89
  94. package/Filters/General/ImageCropFilter.js +77 -78
  95. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  96. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  97. package/Filters/General/ImageMarchingCubes.js +99 -112
  98. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  99. package/Filters/General/ImageMarchingSquares.js +93 -118
  100. package/Filters/General/ImageOutlineFilter.js +53 -54
  101. package/Filters/General/ImageSliceFilter.js +39 -30
  102. package/Filters/General/ImageStreamline.js +107 -124
  103. package/Filters/General/LineFilter.js +26 -15
  104. package/Filters/General/MoleculeToRepresentation.js +136 -149
  105. package/Filters/General/OBBTree/OBBNode.js +36 -34
  106. package/Filters/General/OBBTree/helper.js +19 -24
  107. package/Filters/General/OBBTree.js +396 -488
  108. package/Filters/General/OutlineFilter.js +52 -34
  109. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  110. package/Filters/General/PaintFilter.js +150 -162
  111. package/Filters/General/ScalarToRGBA.js +38 -33
  112. package/Filters/General/TriangleFilter.js +65 -62
  113. package/Filters/General/TubeFilter/Constants.js +4 -4
  114. package/Filters/General/TubeFilter.js +376 -496
  115. package/Filters/General/WarpScalar.js +58 -60
  116. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  117. package/Filters/General.js +21 -21
  118. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  119. package/Filters/Sources/Arrow2DSource.js +56 -56
  120. package/Filters/Sources/ArrowSource.js +39 -29
  121. package/Filters/Sources/CircleSource.js +43 -43
  122. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  123. package/Filters/Sources/ConeSource.js +51 -42
  124. package/Filters/Sources/CubeSource.js +75 -96
  125. package/Filters/Sources/Cursor3D.js +94 -109
  126. package/Filters/Sources/CylinderSource.js +90 -90
  127. package/Filters/Sources/ImageGridSource.js +43 -43
  128. package/Filters/Sources/LineSource.js +49 -39
  129. package/Filters/Sources/PlaneSource.js +97 -104
  130. package/Filters/Sources/PointSource.js +46 -37
  131. package/Filters/Sources/RTAnalyticSource.js +50 -48
  132. package/Filters/Sources/SLICSource.js +63 -73
  133. package/Filters/Sources/SphereSource.js +88 -78
  134. package/Filters/Sources/ViewFinderSource.js +26 -23
  135. package/Filters/Sources.js +14 -14
  136. package/Filters/Texture/TextureMapToPlane.js +95 -97
  137. package/Filters/Texture/TextureMapToSphere.js +46 -54
  138. package/Filters/Texture.js +2 -2
  139. package/Filters/index.js +5 -5
  140. package/IO/Core/BinaryHelper.js +12 -18
  141. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  142. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  143. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  144. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  145. package/IO/Core/DataAccessHelper.js +6 -6
  146. package/IO/Core/HttpDataSetReader.js +136 -139
  147. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  148. package/IO/Core/HttpSceneLoader.js +130 -179
  149. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  150. package/IO/Core/ImageStream/ViewStream.js +100 -103
  151. package/IO/Core/ImageStream.js +62 -54
  152. package/IO/Core/ResourceLoader.js +10 -9
  153. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  154. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  155. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  156. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  157. package/IO/Core/Serializer.js +6 -13
  158. package/IO/Core/WSLinkClient.js +90 -76
  159. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  160. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  161. package/IO/Core.js +7 -7
  162. package/IO/Geometry/DracoReader.js +118 -121
  163. package/IO/Geometry/PLYReader.js +163 -223
  164. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  165. package/IO/Geometry/PLYWriter.js +139 -154
  166. package/IO/Geometry/STLReader.js +123 -146
  167. package/IO/Geometry/STLWriter/Constants.js +2 -2
  168. package/IO/Geometry/STLWriter.js +83 -82
  169. package/IO/Geometry.js +5 -5
  170. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  171. package/IO/Legacy/PolyDataReader.js +48 -36
  172. package/IO/Legacy.js +2 -2
  173. package/IO/Misc/ElevationReader.js +67 -60
  174. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  175. package/IO/Misc/ITKImageReader.js +58 -45
  176. package/IO/Misc/ITKPolyDataReader.js +50 -38
  177. package/IO/Misc/JSONNucleoReader.js +49 -42
  178. package/IO/Misc/JSONReader.js +38 -33
  179. package/IO/Misc/MTLReader.js +74 -119
  180. package/IO/Misc/OBJReader.js +153 -206
  181. package/IO/Misc/PDBReader.js +70 -68
  182. package/IO/Misc/SkyboxReader.js +77 -82
  183. package/IO/Misc.js +9 -9
  184. package/IO/XML/XMLImageDataReader.js +36 -38
  185. package/IO/XML/XMLImageDataWriter.js +28 -21
  186. package/IO/XML/XMLPolyDataReader.js +49 -46
  187. package/IO/XML/XMLPolyDataWriter.js +43 -42
  188. package/IO/XML/XMLReader.js +262 -304
  189. package/IO/XML/XMLWriter/Constants.js +3 -3
  190. package/IO/XML/XMLWriter.js +70 -84
  191. package/IO/XML.js +6 -6
  192. package/IO/index.js +5 -5
  193. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  194. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  195. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  196. package/Imaging/Core/ImageInterpolator.js +201 -252
  197. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  198. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  199. package/Imaging/Core/ImageReslice.js +327 -464
  200. package/Imaging/Core.js +4 -4
  201. package/Imaging/Hybrid/SampleFunction.js +58 -51
  202. package/Imaging/Hybrid.js +1 -1
  203. package/Imaging/index.js +2 -2
  204. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  205. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  206. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  207. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  208. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  209. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  210. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  211. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  212. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  213. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  214. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  215. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  216. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  217. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  218. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  219. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  221. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  222. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  223. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  224. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  225. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  226. package/Interaction/Manipulators.js +21 -21
  227. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  228. package/Interaction/Misc.js +1 -1
  229. package/Interaction/Style/InteractorStyleImage.js +101 -121
  230. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  231. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  232. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  233. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  234. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  235. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  236. package/Interaction/Style.js +5 -5
  237. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  238. package/Interaction/UI/CornerAnnotation.js +65 -48
  239. package/Interaction/UI/FPSMonitor.js +104 -105
  240. package/Interaction/UI/Icons.js +1 -1
  241. package/Interaction/UI/Slider/Constants.js +2 -2
  242. package/Interaction/UI/Slider.js +78 -95
  243. package/Interaction/UI/VolumeController.js +104 -97
  244. package/Interaction/UI.js +5 -5
  245. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  246. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  247. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  248. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  249. package/Interaction/Widgets.js +2 -2
  250. package/Interaction/index.js +5 -5
  251. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  252. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  253. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  254. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  255. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  256. package/Proxy/Core/LookupTableProxy.js +49 -52
  257. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  258. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  259. package/Proxy/Core/ProxyManager/core.js +83 -106
  260. package/Proxy/Core/ProxyManager/properties.js +53 -76
  261. package/Proxy/Core/ProxyManager/state.js +100 -110
  262. package/Proxy/Core/ProxyManager/view.js +45 -55
  263. package/Proxy/Core/ProxyManager.js +16 -8
  264. package/Proxy/Core/SourceProxy.js +41 -38
  265. package/Proxy/Core/View2DProxy.js +143 -199
  266. package/Proxy/Core/ViewProxy.js +223 -269
  267. package/Proxy/Core.js +7 -7
  268. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  269. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  270. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  271. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  272. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  273. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  274. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  275. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  276. package/Proxy/Representations.js +7 -7
  277. package/Proxy/index.js +2 -2
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +92 -170
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +193 -257
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +444 -609
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +41 -39
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +134 -210
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +90 -117
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,75 +1,66 @@
1
1
  import { strFromU8, decompressSync } from 'fflate';
2
- import macro from '../../../macros.js';
2
+ import { m as macro } from '../../../macros2.js';
3
3
  import Base64 from '../../../Common/Core/Base64.js';
4
4
  import Endian from '../../../Common/Core/Endian.js';
5
5
  import { DataTypeByteSize } from '../../../Common/Core/DataArray/Constants.js';
6
6
  import { registerType } from '../DataAccessHelper.js';
7
7
 
8
- var vtkErrorMacro = macro.vtkErrorMacro,
9
- vtkDebugMacro = macro.vtkDebugMacro;
10
- var requestCount = 0;
11
-
8
+ const {
9
+ vtkErrorMacro,
10
+ vtkDebugMacro
11
+ } = macro;
12
+ let requestCount = 0;
12
13
  function getContent(url) {
13
- var el = document.querySelector(".webResource[data-url=\"".concat(url, "\"]"));
14
+ const el = document.querySelector(`.webResource[data-url="${url}"]`);
14
15
  return el ? el.innerHTML : null;
15
16
  }
16
-
17
17
  function getElement(url) {
18
- return document.querySelector(".webResource[data-url=\"".concat(url, "\"]"));
18
+ return document.querySelector(`.webResource[data-url="${url}"]`);
19
19
  }
20
-
21
20
  function removeLeadingSlash(str) {
22
21
  return str[0] === '/' ? str.substr(1) : str;
23
22
  }
24
-
25
23
  function fetchText(instance, url) {
26
- return new Promise(function (resolve, reject) {
27
- var txt = getContent(url);
28
-
24
+ return new Promise((resolve, reject) => {
25
+ const txt = getContent(url);
29
26
  if (txt === null) {
30
- reject(new Error("No such text ".concat(url)));
27
+ reject(new Error(`No such text ${url}`));
31
28
  } else {
32
29
  resolve(txt);
33
30
  }
34
31
  });
35
32
  }
36
-
37
33
  function fetchJSON(instance, url) {
38
- return new Promise(function (resolve, reject) {
39
- var txt = getContent(removeLeadingSlash(url));
40
-
34
+ return new Promise((resolve, reject) => {
35
+ const txt = getContent(removeLeadingSlash(url));
41
36
  if (txt === null) {
42
- reject(new Error("No such JSON ".concat(url)));
37
+ reject(new Error(`No such JSON ${url}`));
43
38
  } else {
44
39
  resolve(JSON.parse(txt));
45
40
  }
46
41
  });
47
42
  }
48
-
49
43
  function fetchArray(instance, baseURL, array) {
50
- var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
51
- return new Promise(function (resolve, reject) {
52
- var url = removeLeadingSlash([baseURL, array.ref.basepath, options.compression ? "".concat(array.ref.id, ".gz") : array.ref.id].join('/'));
53
- var txt = getContent(url);
54
-
44
+ let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
45
+ return new Promise((resolve, reject) => {
46
+ const url = removeLeadingSlash([baseURL, array.ref.basepath, options.compression ? `${array.ref.id}.gz` : array.ref.id].join('/'));
47
+ const txt = getContent(url);
55
48
  if (txt === null) {
56
- reject(new Error("No such array ".concat(url)));
49
+ reject(new Error(`No such array ${url}`));
57
50
  } else {
58
51
  if (array.dataType === 'string') {
59
- var bText = atob(txt);
60
-
52
+ let bText = atob(txt);
61
53
  if (options.compression) {
62
54
  bText = strFromU8(decompressSync(bText));
63
55
  }
64
-
65
56
  array.values = JSON.parse(bText);
66
57
  } else {
67
- var uint8array = new Uint8Array(Base64.toArrayBuffer(txt));
68
- array.buffer = new ArrayBuffer(uint8array.length); // copy uint8array to buffer
58
+ const uint8array = new Uint8Array(Base64.toArrayBuffer(txt));
59
+ array.buffer = new ArrayBuffer(uint8array.length);
69
60
 
70
- var view = new Uint8Array(array.buffer);
61
+ // copy uint8array to buffer
62
+ const view = new Uint8Array(array.buffer);
71
63
  view.set(uint8array);
72
-
73
64
  if (options.compression) {
74
65
  if (array.dataType === 'string' || array.dataType === 'JSON') {
75
66
  array.buffer = strFromU8(decompressSync(new Uint8Array(array.buffer)));
@@ -77,62 +68,55 @@ function fetchArray(instance, baseURL, array) {
77
68
  array.buffer = decompressSync(new Uint8Array(array.buffer)).buffer;
78
69
  }
79
70
  }
80
-
81
71
  if (array.ref.encode === 'JSON') {
82
72
  array.values = JSON.parse(array.buffer);
83
73
  } else {
84
74
  if (Endian.ENDIANNESS !== array.ref.encode && Endian.ENDIANNESS) {
85
75
  // Need to swap bytes
86
- vtkDebugMacro("Swap bytes of ".concat(array.name));
76
+ vtkDebugMacro(`Swap bytes of ${array.name}`);
87
77
  Endian.swapBytes(array.buffer, DataTypeByteSize[array.dataType]);
88
78
  }
89
-
90
79
  array.values = macro.newTypedArray(array.dataType, array.buffer);
91
80
  }
92
-
93
81
  if (array.values.length !== array.size) {
94
- vtkErrorMacro("Error in FetchArray: ".concat(array.name, " does not have the proper array size. Got ").concat(array.values.length, ", instead of ").concat(array.size));
82
+ vtkErrorMacro(`Error in FetchArray: ${array.name} does not have the proper array size. Got ${array.values.length}, instead of ${array.size}`);
95
83
  }
96
- } // Done with the ref and work
97
-
84
+ }
98
85
 
86
+ // Done with the ref and work
99
87
  delete array.ref;
100
-
101
- if (--requestCount === 0 && instance !== null && instance !== void 0 && instance.invokeBusy) {
88
+ if (--requestCount === 0 && instance?.invokeBusy) {
102
89
  instance.invokeBusy(false);
103
90
  }
104
-
105
- if (instance !== null && instance !== void 0 && instance.modified) {
91
+ if (instance?.modified) {
106
92
  instance.modified();
107
93
  }
108
-
109
94
  resolve(array);
110
95
  }
111
96
  });
112
- } // ----------------------------------------------------------------------------
97
+ }
113
98
 
99
+ // ----------------------------------------------------------------------------
114
100
 
115
101
  function fetchImage(instance, url) {
116
- return new Promise(function (resolve, reject) {
117
- var img = getElement(url);
118
-
102
+ return new Promise((resolve, reject) => {
103
+ const img = getElement(url);
119
104
  if (img) {
120
105
  resolve(img);
121
106
  } else {
122
- reject(new Error("No such image ".concat(url)));
107
+ reject(new Error(`No such image ${url}`));
123
108
  }
124
109
  });
125
- } // ----------------------------------------------------------------------------
110
+ }
126
111
 
112
+ // ----------------------------------------------------------------------------
127
113
 
128
- var HtmlDataAccessHelper = {
129
- fetchJSON: fetchJSON,
130
- fetchText: fetchText,
131
- fetchArray: fetchArray,
132
- fetchImage: fetchImage
114
+ const HtmlDataAccessHelper = {
115
+ fetchJSON,
116
+ fetchText,
117
+ fetchArray,
118
+ fetchImage
133
119
  };
134
- registerType('html', function (options) {
135
- return HtmlDataAccessHelper;
136
- }); // Export fetch methods
120
+ registerType('html', options => HtmlDataAccessHelper);
137
121
 
138
122
  export { HtmlDataAccessHelper as default };
@@ -1,50 +1,41 @@
1
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
1
  import { decompressSync, strFromU8 } from 'fflate';
3
- import macro from '../../../macros.js';
2
+ import { m as macro } from '../../../macros2.js';
4
3
  import Endian from '../../../Common/Core/Endian.js';
5
4
  import { DataTypeByteSize } from '../../../Common/Core/DataArray/Constants.js';
6
5
  import { registerType } from '../DataAccessHelper.js';
7
6
 
8
- var vtkErrorMacro = macro.vtkErrorMacro,
9
- vtkDebugMacro = macro.vtkDebugMacro;
10
- /* eslint-disable prefer-promise-reject-errors */
7
+ const {
8
+ vtkErrorMacro,
9
+ vtkDebugMacro
10
+ } = macro;
11
11
 
12
- var requestCount = 0;
12
+ /* eslint-disable prefer-promise-reject-errors */
13
13
 
14
+ let requestCount = 0;
14
15
  function openAsyncXHR(method, url) {
15
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
16
- var xhr = new XMLHttpRequest();
16
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
17
+ const xhr = new XMLHttpRequest();
17
18
  xhr.open(method, url, true);
18
-
19
19
  if (options.headers) {
20
- Object.entries(options.headers).forEach(function (_ref) {
21
- var _ref2 = _slicedToArray(_ref, 2),
22
- key = _ref2[0],
23
- value = _ref2[1];
24
-
20
+ Object.entries(options.headers).forEach(_ref => {
21
+ let [key, value] = _ref;
25
22
  return xhr.setRequestHeader(key, value);
26
23
  });
27
24
  }
28
-
29
25
  if (options.progressCallback) {
30
26
  xhr.addEventListener('progress', options.progressCallback);
31
27
  }
32
-
33
28
  return xhr;
34
29
  }
35
-
36
30
  function fetchBinary(url) {
37
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
38
-
31
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
39
32
  if (options && options.compression && options.compression !== 'gz') {
40
33
  vtkErrorMacro('Supported algorithms are: [gz]');
41
- vtkErrorMacro("Unkown compression algorithm: ".concat(options.compression));
34
+ vtkErrorMacro(`Unkown compression algorithm: ${options.compression}`);
42
35
  }
43
-
44
- return new Promise(function (resolve, reject) {
45
- var xhr = openAsyncXHR('GET', url, options);
46
-
47
- xhr.onreadystatechange = function (e) {
36
+ return new Promise((resolve, reject) => {
37
+ const xhr = openAsyncXHR('GET', url, options);
38
+ xhr.onreadystatechange = e => {
48
39
  if (xhr.readyState === 4) {
49
40
  if (xhr.status === 200 || xhr.status === 0) {
50
41
  if (options.compression) {
@@ -54,49 +45,40 @@ function fetchBinary(url) {
54
45
  }
55
46
  } else {
56
47
  reject({
57
- xhr: xhr,
58
- e: e
48
+ xhr,
49
+ e
59
50
  });
60
51
  }
61
52
  }
62
- }; // Make request
63
-
53
+ };
64
54
 
55
+ // Make request
65
56
  xhr.responseType = 'arraybuffer';
66
57
  xhr.send();
67
58
  });
68
59
  }
69
-
70
60
  function fetchArray(instance, baseURL, array) {
71
- var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
72
-
61
+ let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
73
62
  if (array.ref && !array.ref.pending) {
74
- return new Promise(function (resolve, reject) {
75
- var url = null;
76
-
63
+ return new Promise((resolve, reject) => {
64
+ let url = null;
77
65
  if (array.ref.url) {
78
66
  url = array.ref.url;
79
67
  } else {
80
- url = [baseURL, array.ref.basepath, options.compression ? "".concat(array.ref.id, ".gz") : array.ref.id].join('/');
68
+ url = [baseURL, array.ref.basepath, options.compression ? `${array.ref.id}.gz` : array.ref.id].join('/');
81
69
  }
82
-
83
- var xhr = openAsyncXHR('GET', url, options);
84
-
85
- xhr.onreadystatechange = function (e) {
70
+ const xhr = openAsyncXHR('GET', url, options);
71
+ xhr.onreadystatechange = e => {
86
72
  if (xhr.readyState === 1) {
87
73
  array.ref.pending = true;
88
-
89
- if (++requestCount === 1 && instance !== null && instance !== void 0 && instance.invokeBusy) {
74
+ if (++requestCount === 1 && instance?.invokeBusy) {
90
75
  instance.invokeBusy(true);
91
76
  }
92
77
  }
93
-
94
78
  if (xhr.readyState === 4) {
95
79
  array.ref.pending = false;
96
-
97
80
  if (xhr.status === 200 || xhr.status === 0) {
98
81
  array.buffer = xhr.response;
99
-
100
82
  if (options.compression) {
101
83
  if (array.dataType === 'string' || array.dataType === 'JSON') {
102
84
  array.buffer = strFromU8(decompressSync(new Uint8Array(array.buffer)));
@@ -104,71 +86,62 @@ function fetchArray(instance, baseURL, array) {
104
86
  array.buffer = decompressSync(new Uint8Array(array.buffer)).buffer;
105
87
  }
106
88
  }
107
-
108
89
  if (array.ref.encode === 'JSON') {
109
90
  array.values = JSON.parse(array.buffer);
110
91
  } else {
111
92
  if (Endian.ENDIANNESS !== array.ref.encode && Endian.ENDIANNESS) {
112
93
  // Need to swap bytes
113
- vtkDebugMacro("Swap bytes of ".concat(array.name));
94
+ vtkDebugMacro(`Swap bytes of ${array.name}`);
114
95
  Endian.swapBytes(array.buffer, DataTypeByteSize[array.dataType]);
115
96
  }
116
-
117
97
  array.values = macro.newTypedArray(array.dataType, array.buffer);
118
98
  }
119
-
120
99
  if (array.values.length !== array.size) {
121
- vtkErrorMacro("Error in FetchArray: ".concat(array.name, ", does not have the proper array size. Got ").concat(array.values.length, ", instead of ").concat(array.size));
122
- } // Done with the ref and work
123
-
100
+ vtkErrorMacro(`Error in FetchArray: ${array.name}, does not have the proper array size. Got ${array.values.length}, instead of ${array.size}`);
101
+ }
124
102
 
103
+ // Done with the ref and work
125
104
  delete array.ref;
126
-
127
- if (--requestCount === 0 && instance !== null && instance !== void 0 && instance.invokeBusy) {
105
+ if (--requestCount === 0 && instance?.invokeBusy) {
128
106
  instance.invokeBusy(false);
129
107
  }
130
-
131
- if (instance !== null && instance !== void 0 && instance.modified) {
108
+ if (instance?.modified) {
132
109
  instance.modified();
133
110
  }
134
-
135
111
  resolve(array);
136
112
  } else {
137
113
  reject({
138
- xhr: xhr,
139
- e: e
114
+ xhr,
115
+ e
140
116
  });
141
117
  }
142
118
  }
143
- }; // Make request
144
-
119
+ };
145
120
 
121
+ // Make request
146
122
  xhr.responseType = options.compression || array.dataType !== 'string' ? 'arraybuffer' : 'text';
147
123
  xhr.send();
148
124
  });
149
125
  }
150
-
151
126
  return Promise.resolve(array);
152
- } // ----------------------------------------------------------------------------
127
+ }
153
128
 
129
+ // ----------------------------------------------------------------------------
154
130
 
155
131
  function fetchJSON(instance, url) {
156
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
157
- return new Promise(function (resolve, reject) {
158
- var xhr = openAsyncXHR('GET', url, options);
159
-
160
- xhr.onreadystatechange = function (e) {
132
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
133
+ return new Promise((resolve, reject) => {
134
+ const xhr = openAsyncXHR('GET', url, options);
135
+ xhr.onreadystatechange = e => {
161
136
  if (xhr.readyState === 1) {
162
- if (++requestCount === 1 && instance !== null && instance !== void 0 && instance.invokeBusy) {
137
+ if (++requestCount === 1 && instance?.invokeBusy) {
163
138
  instance.invokeBusy(true);
164
139
  }
165
140
  }
166
-
167
141
  if (xhr.readyState === 4) {
168
- if (--requestCount === 0 && instance !== null && instance !== void 0 && instance.invokeBusy) {
142
+ if (--requestCount === 0 && instance?.invokeBusy) {
169
143
  instance.invokeBusy(false);
170
144
  }
171
-
172
145
  if (xhr.status === 200 || xhr.status === 0) {
173
146
  if (options.compression) {
174
147
  resolve(JSON.parse(strFromU8(decompressSync(new Uint8Array(xhr.response)))));
@@ -177,43 +150,39 @@ function fetchJSON(instance, url) {
177
150
  }
178
151
  } else {
179
152
  reject({
180
- xhr: xhr,
181
- e: e
153
+ xhr,
154
+ e
182
155
  });
183
156
  }
184
157
  }
185
- }; // Make request
186
-
158
+ };
187
159
 
160
+ // Make request
188
161
  xhr.responseType = options.compression ? 'arraybuffer' : 'text';
189
162
  xhr.send();
190
163
  });
191
- } // ----------------------------------------------------------------------------
164
+ }
192
165
 
166
+ // ----------------------------------------------------------------------------
193
167
 
194
168
  function fetchText(instance, url) {
195
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
196
-
169
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
197
170
  if (options && options.compression && options.compression !== 'gz') {
198
171
  vtkErrorMacro('Supported algorithms are: [gz]');
199
- vtkErrorMacro("Unkown compression algorithm: ".concat(options.compression));
172
+ vtkErrorMacro(`Unkown compression algorithm: ${options.compression}`);
200
173
  }
201
-
202
- return new Promise(function (resolve, reject) {
203
- var xhr = openAsyncXHR('GET', url, options);
204
-
205
- xhr.onreadystatechange = function (e) {
174
+ return new Promise((resolve, reject) => {
175
+ const xhr = openAsyncXHR('GET', url, options);
176
+ xhr.onreadystatechange = e => {
206
177
  if (xhr.readyState === 1) {
207
- if (++requestCount === 1 && instance !== null && instance !== void 0 && instance.invokeBusy) {
178
+ if (++requestCount === 1 && instance?.invokeBusy) {
208
179
  instance.invokeBusy(true);
209
180
  }
210
181
  }
211
-
212
182
  if (xhr.readyState === 4) {
213
- if (--requestCount === 0 && instance !== null && instance !== void 0 && instance.invokeBusy) {
183
+ if (--requestCount === 0 && instance?.invokeBusy) {
214
184
  instance.invokeBusy(false);
215
185
  }
216
-
217
186
  if (xhr.status === 200 || xhr.status === 0) {
218
187
  if (options.compression) {
219
188
  resolve(strFromU8(decompressSync(new Uint8Array(xhr.response))));
@@ -222,51 +191,45 @@ function fetchText(instance, url) {
222
191
  }
223
192
  } else {
224
193
  reject({
225
- xhr: xhr,
226
- e: e
194
+ xhr,
195
+ e
227
196
  });
228
197
  }
229
198
  }
230
- }; // Make request
231
-
199
+ };
232
200
 
201
+ // Make request
233
202
  xhr.responseType = options.compression ? 'arraybuffer' : 'text';
234
203
  xhr.send();
235
204
  });
236
- } // ----------------------------------------------------------------------------
205
+ }
237
206
 
207
+ // ----------------------------------------------------------------------------
238
208
 
239
209
  function fetchImage(instance, url) {
240
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
241
- return new Promise(function (resolve, reject) {
242
- var img = new Image();
243
-
210
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
211
+ return new Promise((resolve, reject) => {
212
+ const img = new Image();
244
213
  if (options.crossOrigin) {
245
214
  img.crossOrigin = options.crossOrigin;
246
215
  }
247
-
248
- img.onload = function () {
249
- return resolve(img);
250
- };
251
-
216
+ img.onload = () => resolve(img);
252
217
  img.onerror = reject;
253
218
  img.src = url;
254
219
  });
255
220
  }
256
221
  /* eslint-enable prefer-promise-reject-errors */
257
- // ----------------------------------------------------------------------------
258
222
 
223
+ // ----------------------------------------------------------------------------
259
224
 
260
- var HttpDataAccessHelper = {
261
- fetchArray: fetchArray,
262
- fetchJSON: fetchJSON,
263
- fetchText: fetchText,
264
- fetchBinary: fetchBinary,
225
+ const HttpDataAccessHelper = {
226
+ fetchArray,
227
+ fetchJSON,
228
+ fetchText,
229
+ fetchBinary,
265
230
  // Only for HTTP
266
- fetchImage: fetchImage
231
+ fetchImage
267
232
  };
268
- registerType('http', function (options) {
269
- return HttpDataAccessHelper;
270
- });
233
+ registerType('http', options => HttpDataAccessHelper);
271
234
 
272
235
  export { HttpDataAccessHelper as default };