@kitware/vtk.js 28.10.2 → 28.11.1

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 +193 -277
  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 +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/README.md +1 -1
  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 +85 -144
  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 +192 -256
  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 +443 -608
  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 +40 -38
  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 +133 -209
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  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 };