@woosh/meep-engine 2.106.1 → 2.107.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 (587) hide show
  1. package/build/meep.cjs +1990 -2364
  2. package/build/meep.min.js +1 -1
  3. package/build/meep.module.js +1990 -2364
  4. package/editor/Editor.js +55 -60
  5. package/editor/SelectionVisualizer.js +111 -109
  6. package/editor/actions/concrete/ComponentAddAction.js +0 -3
  7. package/editor/actions/concrete/ComponentRemoveAction.js +0 -4
  8. package/editor/actions/concrete/EntityCreateAction.js +0 -3
  9. package/editor/actions/concrete/EntityRemoveAction.js +0 -4
  10. package/editor/actions/concrete/SelectionAddAction.js +0 -3
  11. package/editor/actions/concrete/SelectionClearAction.js +0 -3
  12. package/editor/actions/concrete/SelectionRemoveAction.js +0 -3
  13. package/editor/ecs/EditorEntity.js +8 -6
  14. package/editor/tools/SelectionTool.js +0 -5
  15. package/editor/tools/TopDownCameraControlTool.js +2 -5
  16. package/editor/tools/TransformTool.js +137 -136
  17. package/editor/tools/engine/Tool.js +1 -6
  18. package/editor/tools/engine/ToolEngine.js +145 -148
  19. package/editor/tools/v2/TransformControls.js +25 -24
  20. package/editor/view/EditorView.js +0 -5
  21. package/editor/view/ecs/ComponentControlFactory.js +37 -40
  22. package/editor/view/ecs/EntityEditor.js +0 -3
  23. package/editor/view/ecs/EntityList.js +6 -11
  24. package/editor/view/ecs/components/MeshController.js +4 -7
  25. package/editor/view/ecs/components/TransformController.js +3 -9
  26. package/editor/view/tools/ToolView.js +2 -8
  27. package/package.json +1 -1
  28. package/src/core/IdPool.d.ts.map +1 -1
  29. package/src/core/IdPool.js +0 -5
  30. package/src/core/UUID.d.ts.map +1 -1
  31. package/src/core/UUID.js +0 -4
  32. package/src/core/binary/BitSet.d.ts +17 -14
  33. package/src/core/binary/BitSet.d.ts.map +1 -1
  34. package/src/core/binary/BitSet.js +411 -412
  35. package/src/core/binary/type/Field.d.ts +0 -8
  36. package/src/core/binary/type/Field.d.ts.map +1 -1
  37. package/src/core/binary/type/Field.js +16 -19
  38. package/src/core/binary/type/MultiplicityType.js +0 -4
  39. package/src/core/binary/type/PrimitiveTypes.d.ts.map +1 -1
  40. package/src/core/binary/type/PrimitiveTypes.js +0 -4
  41. package/src/core/binary/type/Type.d.ts +0 -6
  42. package/src/core/binary/type/Type.d.ts.map +1 -1
  43. package/src/core/binary/type/Type.js +63 -64
  44. package/src/core/binary/type/TypeBuilder.d.ts +0 -1
  45. package/src/core/binary/type/TypeBuilder.d.ts.map +1 -1
  46. package/src/core/binary/type/TypeBuilder.js +15 -18
  47. package/src/core/binary/type/TypeRegistry.d.ts +6 -4
  48. package/src/core/binary/type/TypeRegistry.d.ts.map +1 -1
  49. package/src/core/binary/type/TypeRegistry.js +38 -42
  50. package/src/core/bvh2/visual/BVHGeometry.d.ts.map +1 -1
  51. package/src/core/bvh2/visual/BVHGeometry.js +0 -3
  52. package/src/core/codegen/LineBuilder.d.ts.map +1 -1
  53. package/src/core/codegen/LineBuilder.js +0 -5
  54. package/src/core/collection/set/ArraySet.d.ts.map +1 -1
  55. package/src/core/collection/set/ArraySet.js +1 -5
  56. package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
  57. package/src/core/collection/table/RowFirstTable.js +0 -5
  58. package/src/core/color/parse_color.d.ts.map +1 -1
  59. package/src/core/color/parse_color.js +1 -5
  60. package/src/core/geom/2d/Rectangle.d.ts.map +1 -1
  61. package/src/core/geom/2d/Rectangle.js +0 -4
  62. package/src/core/geom/2d/aabb/AABB2.d.ts.map +1 -1
  63. package/src/core/geom/2d/aabb/AABB2.js +0 -6
  64. package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
  65. package/src/core/geom/3d/aabb/AABB3.js +0 -5
  66. package/src/core/geom/3d/morton/Morton.d.ts.map +1 -1
  67. package/src/core/geom/3d/morton/Morton.js +0 -3
  68. package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.js +11 -11
  69. package/src/core/geom/Quaternion.d.ts.map +1 -1
  70. package/src/core/geom/Quaternion.js +0 -5
  71. package/src/core/geom/Vector4.d.ts.map +1 -1
  72. package/src/core/geom/Vector4.js +0 -4
  73. package/src/core/graph/Edge.d.ts.map +1 -1
  74. package/src/core/graph/Edge.js +0 -5
  75. package/src/core/graph/WeightedEdge.d.ts.map +1 -1
  76. package/src/core/json/JsonUtils.d.ts.map +1 -1
  77. package/src/core/json/JsonUtils.js +0 -4
  78. package/src/core/math/random/MersenneTwister.d.ts +1 -2
  79. package/src/core/math/random/MersenneTwister.d.ts.map +1 -1
  80. package/src/core/math/random/MersenneTwister.js +134 -133
  81. package/src/core/model/BooleanVector3.d.ts.map +1 -1
  82. package/src/core/model/BooleanVector3.js +108 -108
  83. package/src/core/model/BoundedValue.d.ts +116 -0
  84. package/src/core/model/BoundedValue.d.ts.map +1 -0
  85. package/src/core/model/BoundedValue.js +214 -217
  86. package/src/core/model/LinearValue.d.ts +84 -0
  87. package/src/core/model/LinearValue.d.ts.map +1 -0
  88. package/src/core/model/LinearValue.js +116 -117
  89. package/src/core/model/ObservedEnum.d.ts.map +1 -1
  90. package/src/core/model/ObservedEnum.js +82 -80
  91. package/src/core/model/ObservedValue.d.ts +10 -17
  92. package/src/core/model/ObservedValue.d.ts.map +1 -1
  93. package/src/core/model/ObservedValue.js +85 -88
  94. package/src/core/model/object/ObjectPoolFactory.d.ts +1 -9
  95. package/src/core/model/object/ObjectPoolFactory.d.ts.map +1 -1
  96. package/src/core/model/object/ObjectPoolFactory.js +73 -73
  97. package/src/core/model/scheme/Schema.d.ts +0 -6
  98. package/src/core/model/scheme/Schema.d.ts.map +1 -1
  99. package/src/core/model/scheme/Schema.js +50 -48
  100. package/src/core/model/scheme/SchemeRegistry.d.ts +6 -1
  101. package/src/core/model/scheme/SchemeRegistry.d.ts.map +1 -1
  102. package/src/core/model/scheme/SchemeRegistry.js +46 -44
  103. package/src/core/process/Future.d.ts +14 -9
  104. package/src/core/process/Future.d.ts.map +1 -1
  105. package/src/core/process/Future.js +96 -98
  106. package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
  107. package/src/core/process/executor/ConcurrentExecutor.js +0 -3
  108. package/src/core/process/task/Task.d.ts.map +1 -1
  109. package/src/core/process/task/Task.js +0 -5
  110. package/src/core/process/task/TaskGroup.d.ts.map +1 -1
  111. package/src/core/process/task/TaskGroup.js +178 -180
  112. package/src/core/process/task/TaskSignal.d.ts.map +1 -1
  113. package/src/core/process/task/TaskSignal.js +0 -5
  114. package/src/core/process/task/TaskState.d.ts.map +1 -1
  115. package/src/core/process/task/TaskState.js +0 -4
  116. package/src/core/process/worker/WorkerBuilder.d.ts.map +1 -1
  117. package/src/core/process/worker/WorkerBuilder.js +0 -5
  118. package/src/core/process/worker/WorkerProxy.d.ts.map +1 -1
  119. package/src/core/process/worker/WorkerProxy.js +0 -5
  120. package/src/engine/Clock.d.ts.map +1 -1
  121. package/src/engine/Clock.js +0 -5
  122. package/src/engine/Engine.js +4 -4
  123. package/src/engine/EntityCreator.d.ts.map +1 -1
  124. package/src/engine/EntityCreator.js +7 -10
  125. package/src/engine/animation/AnimatedActions.d.ts.map +1 -1
  126. package/src/engine/animation/AnimatedActions.js +0 -5
  127. package/src/engine/animation/Animations.d.ts.map +1 -1
  128. package/src/engine/animation/Animations.js +1 -6
  129. package/src/engine/animation/EntityAnimation.js +1 -4
  130. package/src/engine/animation/Tween.js +1 -4
  131. package/src/engine/animation/keyed2/AnimationTrack.d.ts +0 -6
  132. package/src/engine/animation/keyed2/AnimationTrack.d.ts.map +1 -1
  133. package/src/engine/animation/keyed2/AnimationTrack.js +154 -152
  134. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +0 -10
  135. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
  136. package/src/engine/animation/keyed2/AnimationTrackPlayback.js +173 -171
  137. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  138. package/src/engine/asset/AssetManager.js +0 -5
  139. package/src/engine/asset/preloader/AssetLevel.js +0 -3
  140. package/src/engine/ecs/EntityManager.d.ts.map +1 -1
  141. package/src/engine/ecs/EntityManager.js +0 -4
  142. package/src/engine/ecs/System.d.ts.map +1 -1
  143. package/src/engine/ecs/System.js +0 -5
  144. package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
  145. package/src/engine/ecs/animation/Animation.js +1 -19
  146. package/src/engine/ecs/components/Motion.d.ts.map +1 -1
  147. package/src/engine/ecs/components/Motion.js +0 -5
  148. package/src/engine/ecs/components/PropertySet.d.ts +8 -1
  149. package/src/engine/ecs/components/PropertySet.d.ts.map +1 -1
  150. package/src/engine/ecs/components/PropertySet.js +87 -83
  151. package/src/engine/ecs/components/Script.d.ts +0 -16
  152. package/src/engine/ecs/components/Script.d.ts.map +1 -1
  153. package/src/engine/ecs/components/Script.js +14 -18
  154. package/src/engine/ecs/components/Tag.d.ts.map +1 -1
  155. package/src/engine/ecs/components/Tag.js +4 -5
  156. package/src/engine/ecs/components/Timer.d.ts +0 -5
  157. package/src/engine/ecs/components/Timer.d.ts.map +1 -1
  158. package/src/engine/ecs/components/Timer.js +0 -5
  159. package/src/engine/ecs/grid/HeightMap2NormalMap.d.ts.map +1 -1
  160. package/src/engine/ecs/grid/HeightMap2NormalMap.js +2 -6
  161. package/src/engine/ecs/grid/HeightSampler2NormalSamplerSoft.d.ts.map +1 -1
  162. package/src/engine/ecs/grid/HeightSampler2NormalSamplerSoft.js +0 -3
  163. package/src/engine/ecs/grid/NormalMap2AOMap.d.ts.map +1 -1
  164. package/src/engine/ecs/grid/NormalMap2AOMap.js +3 -8
  165. package/src/engine/ecs/gui/GUIElement.d.ts.map +1 -1
  166. package/src/engine/ecs/gui/GUIElement.js +0 -3
  167. package/src/engine/ecs/gui/GUIElementSystem.d.ts.map +1 -1
  168. package/src/engine/ecs/gui/GUIElementSystem.js +0 -4
  169. package/src/engine/ecs/gui/hud/HeadsUpDisplay.d.ts.map +1 -1
  170. package/src/engine/ecs/gui/hud/HeadsUpDisplay.js +0 -7
  171. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.d.ts.map +1 -1
  172. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.js +0 -5
  173. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts.map +1 -1
  174. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.js +5 -8
  175. package/src/engine/ecs/gui/position/ViewportPosition.d.ts.map +1 -1
  176. package/src/engine/ecs/gui/position/ViewportPosition.js +0 -4
  177. package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts +1 -2
  178. package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts.map +1 -1
  179. package/src/engine/ecs/gui/position/ViewportPositionSystem.js +6 -10
  180. package/src/engine/ecs/ik/IKProblem.d.ts +1 -2
  181. package/src/engine/ecs/ik/IKProblem.d.ts.map +1 -1
  182. package/src/engine/ecs/renderable/RenderSystem.d.ts.map +1 -1
  183. package/src/engine/ecs/renderable/RenderSystem.js +0 -3
  184. package/src/engine/ecs/renderable/Renderable.d.ts.map +1 -1
  185. package/src/engine/ecs/renderable/Renderable.js +0 -5
  186. package/src/engine/ecs/systems/AnimationSystem.d.ts.map +1 -1
  187. package/src/engine/ecs/systems/AnimationSystem.js +9 -17
  188. package/src/engine/ecs/systems/MotionSystem.d.ts.map +1 -1
  189. package/src/engine/ecs/systems/MotionSystem.js +1 -6
  190. package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
  191. package/src/engine/ecs/systems/ScriptSystem.js +1 -6
  192. package/src/engine/ecs/systems/TimerSystem.d.ts.map +1 -1
  193. package/src/engine/ecs/systems/TimerSystem.js +1 -6
  194. package/src/engine/ecs/team/Team.d.ts.map +1 -1
  195. package/src/engine/ecs/team/Team.js +0 -3
  196. package/src/engine/ecs/terrain/BufferedGeometryArraysBuilder.d.ts.map +1 -1
  197. package/src/engine/ecs/terrain/BufferedGeometryArraysBuilder.js +0 -5
  198. package/src/engine/ecs/terrain/TerrainClouds.d.ts.map +1 -1
  199. package/src/engine/ecs/terrain/TerrainClouds.js +0 -5
  200. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  201. package/src/engine/ecs/terrain/ecs/Terrain.js +0 -5
  202. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrain.d.ts.map +1 -1
  203. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrain.js +0 -3
  204. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.d.ts.map +1 -1
  205. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.js +11 -14
  206. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts.map +1 -1
  207. package/src/engine/ecs/terrain/overlay/TerrainOverlay.js +0 -5
  208. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
  209. package/src/engine/ecs/terrain/tiles/TerrainTile.js +0 -5
  210. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +1 -1
  211. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
  212. package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +0 -3
  213. package/src/engine/ecs/terrain/tiles/TileBuildWorker.js +0 -4
  214. package/src/engine/ecs/transform/Transform.d.ts.map +1 -1
  215. package/src/engine/ecs/transform/Transform.js +0 -4
  216. package/src/engine/google/gapi.js +0 -4
  217. package/src/engine/graphics/FrameThrottle.d.ts +0 -4
  218. package/src/engine/graphics/FrameThrottle.d.ts.map +1 -1
  219. package/src/engine/graphics/FrameThrottle.js +0 -5
  220. package/src/engine/graphics/GraphicsEngine.d.ts.map +1 -1
  221. package/src/engine/graphics/GraphicsEngine.js +1 -6
  222. package/src/engine/graphics/composit/LayerCompositer.d.ts.map +1 -1
  223. package/src/engine/graphics/composit/LayerCompositer.js +2 -5
  224. package/src/engine/graphics/ecs/animation/AnimationController.d.ts.map +1 -1
  225. package/src/engine/graphics/ecs/animation/AnimationController.js +0 -5
  226. package/src/engine/graphics/ecs/animation/AnimationControllerSystem.d.ts.map +1 -1
  227. package/src/engine/graphics/ecs/animation/AnimationControllerSystem.js +2 -7
  228. package/src/engine/graphics/ecs/animation/AnimationRule.d.ts +0 -1
  229. package/src/engine/graphics/ecs/animation/AnimationRule.d.ts.map +1 -1
  230. package/src/engine/graphics/ecs/animation/AnimationRule.js +70 -66
  231. package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
  232. package/src/engine/graphics/ecs/camera/Camera.js +0 -5
  233. package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +1 -1
  234. package/src/engine/graphics/ecs/camera/CameraSystem.js +0 -5
  235. package/src/engine/graphics/ecs/camera/FrustumProjector.d.ts.map +1 -1
  236. package/src/engine/graphics/ecs/camera/FrustumProjector.js +0 -5
  237. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts.map +1 -1
  238. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.js +4 -9
  239. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
  240. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.js +3 -8
  241. package/src/engine/graphics/ecs/highlight/Highlight.d.ts.map +1 -1
  242. package/src/engine/graphics/ecs/highlight/Highlight.js +0 -3
  243. package/src/engine/graphics/ecs/highlight/system/MeshHighlightSystem.d.ts.map +1 -1
  244. package/src/engine/graphics/ecs/highlight/system/MeshHighlightSystem.js +3 -8
  245. package/src/engine/graphics/ecs/light/Light.d.ts.map +1 -1
  246. package/src/engine/graphics/ecs/light/Light.js +2 -6
  247. package/src/engine/graphics/ecs/light/LightSystem.d.ts.map +1 -1
  248. package/src/engine/graphics/ecs/light/LightSystem.js +0 -5
  249. package/src/engine/graphics/ecs/mesh/Mesh.d.ts.map +1 -1
  250. package/src/engine/graphics/ecs/mesh/Mesh.js +0 -3
  251. package/src/engine/graphics/ecs/mesh/MeshSystem.d.ts.map +1 -1
  252. package/src/engine/graphics/ecs/mesh/MeshSystem.js +0 -5
  253. package/src/engine/graphics/ecs/trail2d/Trail2D.d.ts.map +1 -1
  254. package/src/engine/graphics/ecs/trail2d/Trail2D.js +0 -5
  255. package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts.map +1 -1
  256. package/src/engine/graphics/ecs/trail2d/Trail2DSystem.js +0 -5
  257. package/src/engine/graphics/ecs/water/Water.d.ts.map +1 -1
  258. package/src/engine/graphics/ecs/water/Water.js +0 -5
  259. package/src/engine/graphics/ecs/water/WaterSystem.d.ts.map +1 -1
  260. package/src/engine/graphics/ecs/water/WaterSystem.js +0 -3
  261. package/src/engine/graphics/filter/ImageFilter.d.ts.map +1 -1
  262. package/src/engine/graphics/filter/ImageFilter.js +0 -5
  263. package/src/engine/graphics/geometry/BufferGeometryWrap.js +1 -3
  264. package/src/engine/graphics/geometry/buffered/ComputeNormals.d.ts.map +1 -1
  265. package/src/engine/graphics/geometry/buffered/ComputeNormals.js +0 -5
  266. package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts.map +1 -1
  267. package/src/engine/graphics/geometry/ribbon/Ribbon.js +1 -4
  268. package/src/engine/graphics/material/SplatMaterial.d.ts.map +1 -1
  269. package/src/engine/graphics/material/SplatMaterial.js +0 -3
  270. package/src/engine/graphics/material/WaterMaterial.d.ts.map +1 -1
  271. package/src/engine/graphics/material/WaterMaterial.js +0 -3
  272. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts +0 -5
  273. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts.map +1 -1
  274. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.js +114 -114
  275. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts +0 -1
  276. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts.map +1 -1
  277. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.js +347 -348
  278. package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts +1 -3
  279. package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts.map +1 -1
  280. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts +0 -1
  281. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts.map +1 -1
  282. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.js +110 -111
  283. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.d.ts +0 -9
  284. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.d.ts.map +1 -1
  285. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.js +70 -66
  286. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.d.ts +0 -5
  287. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.d.ts.map +1 -1
  288. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.js +82 -82
  289. package/src/engine/graphics/particles/particular/group/Operation.d.ts +0 -7
  290. package/src/engine/graphics/particles/particular/group/Operation.d.ts.map +1 -1
  291. package/src/engine/graphics/particles/particular/group/Operation.js +16 -14
  292. package/src/engine/graphics/particles/particular/group/ParticleAttribute.d.ts +0 -9
  293. package/src/engine/graphics/particles/particular/group/ParticleAttribute.d.ts.map +1 -1
  294. package/src/engine/graphics/particles/particular/group/ParticleAttribute.js +23 -21
  295. package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts +2 -10
  296. package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts.map +1 -1
  297. package/src/engine/graphics/particles/particular/group/ParticleGroup.js +463 -464
  298. package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts +0 -2
  299. package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts.map +1 -1
  300. package/src/engine/graphics/particles/particular/group/ParticleSpecification.js +39 -33
  301. package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts +6 -1
  302. package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts.map +1 -1
  303. package/src/engine/graphics/render/buffer/FrameBufferManager.js +166 -163
  304. package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
  305. package/src/engine/graphics/render/layers/RenderLayer.js +0 -5
  306. package/src/engine/graphics/shaders/AlphaBlendShader.js +1 -3
  307. package/src/engine/graphics/shaders/AmbientOcclusionShader.d.ts.map +1 -1
  308. package/src/engine/graphics/shaders/AmbientOcclusionShader.js +0 -3
  309. package/src/engine/graphics/shaders/ClearShader.js +1 -3
  310. package/src/engine/graphics/shaders/CopyShader.d.ts +0 -3
  311. package/src/engine/graphics/shaders/CopyShader.d.ts.map +1 -1
  312. package/src/engine/graphics/shaders/CopyShader.js +1 -3
  313. package/src/engine/graphics/shaders/NormalMapShader2.d.ts.map +1 -1
  314. package/src/engine/graphics/shaders/NormalMapShader2.js +0 -5
  315. package/src/engine/graphics/shaders/TerrainShader.js +0 -4
  316. package/src/engine/graphics/shaders/WaterShader.js +0 -3
  317. package/src/engine/graphics/shaders/lib/ShaderChunks.js +1 -3
  318. package/src/engine/graphics/texture/Canvas2Sampler2D.d.ts.map +1 -1
  319. package/src/engine/graphics/texture/Canvas2Sampler2D.js +1 -4
  320. package/src/engine/graphics/texture/CheckersTexture.d.ts.map +1 -1
  321. package/src/engine/graphics/texture/CheckersTexture.js +0 -3
  322. package/src/engine/graphics/texture/CheckersTextureURI.js +1 -3
  323. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
  324. package/src/engine/graphics/texture/sampler/Sampler2D.js +0 -5
  325. package/src/engine/graphics/texture/sampler/Sampler2D2Canvas.d.ts.map +1 -1
  326. package/src/engine/graphics/texture/sampler/Sampler2D2Canvas.js +0 -5
  327. package/src/engine/graphics/texture/sampler/Sampler2D2Texture.d.ts.map +1 -1
  328. package/src/engine/graphics/texture/sampler/Sampler2D2Texture.js +0 -3
  329. package/src/engine/graphics/three/ThreeFactory.d.ts.map +1 -1
  330. package/src/engine/graphics/three/ThreeFactory.js +0 -5
  331. package/src/engine/grid/grid2transform/GridPosition2Transform.d.ts.map +1 -1
  332. package/src/engine/grid/grid2transform/GridPosition2Transform.js +0 -4
  333. package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts.map +1 -1
  334. package/src/engine/grid/grid2transform/GridPosition2TransformSystem.js +4 -7
  335. package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
  336. package/src/engine/grid/obstacle/GridObstacle.js +0 -5
  337. package/src/engine/grid/position/GridPosition.d.ts.map +1 -1
  338. package/src/engine/grid/position/GridPosition.js +0 -4
  339. package/src/engine/grid/position/GridPositionSystem.d.ts.map +1 -1
  340. package/src/engine/grid/position/GridPositionSystem.js +1 -4
  341. package/src/engine/input/devices/KeyCodes.d.ts.map +1 -1
  342. package/src/engine/input/devices/KeyCodes.js +3 -4
  343. package/src/engine/input/devices/KeyboardDevice.d.ts.map +1 -1
  344. package/src/engine/input/devices/KeyboardDevice.js +0 -4
  345. package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
  346. package/src/engine/input/devices/PointerDevice.js +0 -3
  347. package/src/engine/input/ecs/components/InputController.d.ts.map +1 -1
  348. package/src/engine/input/ecs/components/InputController.js +1 -5
  349. package/src/engine/input/ecs/controllers/KeyboardCameraController.d.ts.map +1 -1
  350. package/src/engine/input/ecs/controllers/KeyboardCameraController.js +5 -10
  351. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
  352. package/src/engine/input/ecs/systems/InputControllerSystem.js +78 -78
  353. package/src/engine/input/ecs/util/TopDownCameraControllerHelper.d.ts.map +1 -1
  354. package/src/engine/input/ecs/util/TopDownCameraControllerHelper.js +3 -6
  355. package/src/engine/intelligence/mcts/MonteCarlo.spec.js +78 -76
  356. package/src/engine/navigation/ecs/components/Path.d.ts.map +1 -1
  357. package/src/engine/navigation/ecs/components/Path.js +0 -5
  358. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts.map +1 -1
  359. package/src/engine/navigation/ecs/path_following/PathFollower.js +1 -6
  360. package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts.map +1 -1
  361. package/src/engine/navigation/ecs/path_following/PathFollowingSystem.js +5 -12
  362. package/src/engine/network/DataChannel.js +284 -284
  363. package/src/engine/network/xhr.d.ts +0 -3
  364. package/src/engine/network/xhr.d.ts.map +1 -1
  365. package/src/engine/network/xhr.js +0 -3
  366. package/src/engine/notify/Notification.d.ts +1 -1
  367. package/src/engine/notify/Notification.d.ts.map +1 -1
  368. package/src/engine/notify/Notification.js +1 -6
  369. package/src/engine/notify/NotificationLog.d.ts.map +1 -1
  370. package/src/engine/notify/NotificationLog.js +0 -5
  371. package/src/engine/options/OptionsView.d.ts.map +1 -1
  372. package/src/engine/options/OptionsView.js +1 -6
  373. package/src/engine/physics/ammo/Body.js +0 -3
  374. package/src/engine/physics/ammo/PhysicsWorker.d.ts.map +1 -1
  375. package/src/engine/physics/ammo/PhysicsWorker.js +1 -3
  376. package/src/engine/physics/ammo/World.d.ts +68 -0
  377. package/src/engine/physics/ammo/World.d.ts.map +1 -0
  378. package/src/engine/physics/ammo/World.js +277 -278
  379. package/src/engine/physics/ammo/shapes/BoxShape.js +0 -3
  380. package/src/engine/physics/ammo/shapes/CapsuleShape.js +0 -3
  381. package/src/engine/physics/ammo/shapes/MeshShape.js +0 -3
  382. package/src/engine/physics/ammo/shapes/PlaneShape.js +0 -3
  383. package/src/engine/physics/ammo/shapes/Shape.js +1 -3
  384. package/src/engine/physics/ammo/shapes/SphereShape.js +0 -3
  385. package/src/engine/physics/cannon/CannonJSPhysicsSystem.d.ts.map +1 -1
  386. package/src/engine/physics/cannon/CannonJSPhysicsSystem.js +3 -6
  387. package/src/engine/save/GameStateLoader.d.ts.map +1 -1
  388. package/src/engine/save/GameStateLoader.js +1 -5
  389. package/src/engine/save/Storage.d.ts.map +1 -1
  390. package/src/engine/save/Storage.js +0 -7
  391. package/src/engine/scene/Scene.d.ts.map +1 -1
  392. package/src/engine/scene/Scene.js +2 -7
  393. package/src/engine/scene/SceneManager.d.ts.map +1 -1
  394. package/src/engine/scene/SceneManager.js +1 -4
  395. package/src/engine/simulation/DormandPrince.d.ts +0 -1
  396. package/src/engine/simulation/DormandPrince.d.ts.map +1 -1
  397. package/src/engine/simulation/DormandPrince.js +5 -5
  398. package/src/engine/simulation/Ticker.d.ts.map +1 -1
  399. package/src/engine/simulation/Ticker.js +0 -3
  400. package/src/engine/sound/ecs/SoundController.d.ts +0 -7
  401. package/src/engine/sound/ecs/SoundController.d.ts.map +1 -1
  402. package/src/engine/sound/ecs/SoundController.js +118 -119
  403. package/src/engine/sound/ecs/SoundControllerSystem.d.ts.map +1 -1
  404. package/src/engine/sound/ecs/SoundControllerSystem.js +3 -8
  405. package/src/engine/sound/ecs/SoundListener.d.ts +0 -1
  406. package/src/engine/sound/ecs/SoundListener.d.ts.map +1 -1
  407. package/src/engine/sound/ecs/SoundListener.js +26 -29
  408. package/src/engine/sound/ecs/SoundListenerSystem.d.ts.map +1 -1
  409. package/src/engine/sound/ecs/SoundListenerSystem.js +0 -5
  410. package/src/engine/sound/ecs/emitter/SoundEmitter.d.ts.map +1 -1
  411. package/src/engine/sound/ecs/emitter/SoundEmitter.js +0 -5
  412. package/src/engine/sound/ecs/emitter/SoundEmitterSystem.d.ts.map +1 -1
  413. package/src/engine/sound/ecs/emitter/SoundEmitterSystem.js +0 -7
  414. package/src/engine/ui/GUIEngine.d.ts.map +1 -1
  415. package/src/engine/ui/GUIEngine.js +0 -5
  416. package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
  417. package/src/engine/ui/tiles2d/TileGrid.js +1 -4
  418. package/src/generation/markers/debug/visualizeMarkers.js +10 -10
  419. package/src/view/DOM.js +1 -3
  420. package/src/view/SVG.d.ts +0 -3
  421. package/src/view/SVG.d.ts.map +1 -1
  422. package/src/view/SVG.js +0 -4
  423. package/src/view/asset/PreloaderView.d.ts.map +1 -1
  424. package/src/view/asset/PreloaderView.js +0 -3
  425. package/src/view/common/LabelView.d.ts +1 -6
  426. package/src/view/common/LabelView.d.ts.map +1 -1
  427. package/src/view/common/LabelView.js +24 -33
  428. package/src/view/common/ListView.d.ts.map +1 -1
  429. package/src/view/common/ListView.js +0 -6
  430. package/src/view/common/MeshView.js +3 -6
  431. package/src/view/common/VirtualListView.d.ts.map +1 -1
  432. package/src/view/common/VirtualListView.js +0 -5
  433. package/src/view/common/dnd/DragAndDropContext.d.ts +1 -2
  434. package/src/view/common/dnd/DragAndDropContext.d.ts.map +1 -1
  435. package/src/view/common/dnd/DragAndDropContext.js +107 -110
  436. package/src/view/controller/GuiController.d.ts.map +1 -1
  437. package/src/view/controller/GuiController.js +1 -6
  438. package/src/view/controller/controls/BooleanVector3Control.d.ts +1 -1
  439. package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
  440. package/src/view/controller/controls/GuiControl.js +2 -7
  441. package/src/view/controller/controls/Vector1Control.d.ts +1 -1
  442. package/src/view/controller/controls/Vector1Control.d.ts.map +1 -1
  443. package/src/view/controller/controls/Vector1Control.js +2 -7
  444. package/src/view/controller/controls/Vector2Control.d.ts.map +1 -1
  445. package/src/view/controller/controls/Vector2Control.js +0 -4
  446. package/src/view/controller/controls/Vector3Control.d.ts.map +1 -1
  447. package/src/view/controller/controls/Vector3Control.js +0 -3
  448. package/src/view/elements/ConfirmationDialogView.d.ts.map +1 -1
  449. package/src/view/elements/ConfirmationDialogView.js +1 -6
  450. package/src/view/elements/DropDownSelectionView.d.ts.map +1 -1
  451. package/src/view/elements/DropDownSelectionView.js +0 -5
  452. package/src/view/elements/EmptyView.d.ts.map +1 -1
  453. package/src/view/elements/EmptyView.js +0 -4
  454. package/src/view/elements/Group.d.ts.map +1 -1
  455. package/src/view/elements/Group.js +0 -3
  456. package/src/view/elements/MeshPreview.d.ts.map +1 -1
  457. package/src/view/elements/MeshPreview.js +5 -8
  458. package/src/view/elements/SimpleWindow.d.ts +1 -1
  459. package/src/view/elements/SimpleWindow.d.ts.map +1 -1
  460. package/src/view/elements/SimpleWindow.js +5 -11
  461. package/src/view/elements/button/ButtonView.d.ts.map +1 -1
  462. package/src/view/elements/button/ButtonView.js +1 -5
  463. package/src/view/elements/image/ImageView.d.ts.map +1 -1
  464. package/src/view/elements/image/ImageView.js +0 -4
  465. package/src/view/elements/image/SvgImageView.d.ts.map +1 -1
  466. package/src/view/elements/image/SvgImageView.js +2 -7
  467. package/src/view/elements/label/LabeledValueView.d.ts.map +1 -1
  468. package/src/view/elements/label/LabeledValueView.js +3 -8
  469. package/src/view/elements/navigation/ViewStack.d.ts +0 -7
  470. package/src/view/elements/navigation/ViewStack.d.ts.map +1 -1
  471. package/src/view/elements/navigation/ViewStack.js +17 -19
  472. package/src/view/elements/notify/NotificationView.js +1 -4
  473. package/src/view/elements/notify/ToastLogView.d.ts.map +1 -1
  474. package/src/view/elements/notify/ToastLogView.js +0 -3
  475. package/src/view/elements/progress/SmoothProgressBar.d.ts +72 -0
  476. package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -0
  477. package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
  478. package/src/view/elements/radial/RadialMenu.js +1 -6
  479. package/src/view/elements/radial/RadialMenuElement.d.ts.map +1 -1
  480. package/src/view/elements/radial/RadialMenuElement.js +1 -4
  481. package/src/view/elements/radial/RadialProgressView.d.ts +1 -1
  482. package/src/view/elements/radial/RadialProgressView.d.ts.map +1 -1
  483. package/src/view/elements/radial/RadialProgressView.js +4 -9
  484. package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
  485. package/src/view/elements/tiles2d/Tile.js +3 -6
  486. package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
  487. package/src/view/elements/tiles2d/TileGrid.js +0 -5
  488. package/src/view/minimap/Minimap.d.ts.map +1 -1
  489. package/src/view/minimap/Minimap.js +11 -16
  490. package/src/view/minimap/dom/MinimapCameraView.d.ts +1 -2
  491. package/src/view/minimap/dom/MinimapCameraView.d.ts.map +1 -1
  492. package/src/view/minimap/dom/MinimapTerrainView.d.ts +1 -1
  493. package/src/view/minimap/dom/MinimapTerrainView.d.ts.map +1 -1
  494. package/src/view/minimap/gl/MarkerGL.d.ts +2 -12
  495. package/src/view/minimap/gl/MarkerGL.d.ts.map +1 -1
  496. package/src/view/minimap/gl/MarkerGL.js +60 -56
  497. package/src/view/minimap/gl/MinimapMarkersGL.d.ts +1 -1
  498. package/src/view/minimap/gl/MinimapMarkersGL.d.ts.map +1 -1
  499. package/src/view/minimap/gl/MinimapTerrainGL.d.ts +1 -2
  500. package/src/view/minimap/gl/MinimapTerrainGL.d.ts.map +1 -1
  501. package/src/view/renderModel.d.ts.map +1 -1
  502. package/src/view/renderModel.js +3 -7
  503. package/src/view/task/TaskProgressView.d.ts.map +1 -1
  504. package/src/view/task/TaskProgressView.js +0 -5
  505. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.d.ts +0 -9
  506. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.d.ts.map +0 -1
  507. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.js +0 -105
  508. package/src/engine/graphics/geometry/decimation/SimplifyModifier.d.ts +0 -117
  509. package/src/engine/graphics/geometry/decimation/SimplifyModifier.d.ts.map +0 -1
  510. package/src/engine/graphics/geometry/decimation/SimplifyModifier.js +0 -971
  511. package/src/engine/graphics/loader/threejs/GLTFLoader.js +0 -3179
  512. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.d.ts +0 -6
  513. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.d.ts.map +0 -1
  514. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.js +0 -845
  515. package/src/engine/graphics/postprocess/Postprocess.js +0 -284
  516. package/src/engine/graphics/postprocess/threejs/Mirror.js +0 -330
  517. package/src/engine/graphics/postprocess/threejs/WaterShader.js +0 -306
  518. package/src/engine/graphics/postprocess/threejs/postprocessing/AdaptiveToneMappingPass.js +0 -338
  519. package/src/engine/graphics/postprocess/threejs/postprocessing/BloomPass.js +0 -132
  520. package/src/engine/graphics/postprocess/threejs/postprocessing/BokehPass.js +0 -115
  521. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.d.ts +0 -4
  522. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.d.ts.map +0 -1
  523. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.js +0 -23
  524. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.d.ts +0 -1
  525. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.d.ts.map +0 -1
  526. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.js +0 -60
  527. package/src/engine/graphics/postprocess/threejs/postprocessing/EffectComposer.js +0 -150
  528. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.d.ts +0 -1
  529. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.d.ts.map +0 -1
  530. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.js +0 -61
  531. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.d.ts +0 -1
  532. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.d.ts.map +0 -1
  533. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.js +0 -117
  534. package/src/engine/graphics/postprocess/threejs/postprocessing/RenderPass.js +0 -63
  535. package/src/engine/graphics/postprocess/threejs/postprocessing/SMAAPass.js +0 -187
  536. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.d.ts +0 -1
  537. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.d.ts.map +0 -1
  538. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.js +0 -67
  539. package/src/engine/graphics/postprocess/threejs/postprocessing/TexturePass.js +0 -50
  540. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.d.ts +0 -42
  541. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.d.ts.map +0 -1
  542. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.js +0 -117
  543. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.d.ts +0 -30
  544. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.d.ts.map +0 -1
  545. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.js +0 -106
  546. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.d.ts +0 -19
  547. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.d.ts.map +0 -1
  548. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.js +0 -90
  549. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.d.ts +0 -12
  550. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.d.ts.map +0 -1
  551. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.js +0 -52
  552. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.d.ts +0 -12
  553. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.d.ts.map +0 -1
  554. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.js +0 -51
  555. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.d.ts +0 -76
  556. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.d.ts.map +0 -1
  557. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.js +0 -468
  558. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.d.ts +0 -61
  559. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.d.ts.map +0 -1
  560. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.js +0 -230
  561. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.d.ts +0 -36
  562. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.d.ts.map +0 -1
  563. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.js +0 -76
  564. package/src/engine/graphics/shaders/GaussianBlurShader.d.ts +0 -22
  565. package/src/engine/graphics/shaders/GaussianBlurShader.d.ts.map +0 -1
  566. package/src/engine/graphics/shaders/GaussianBlurShader.js +0 -79
  567. package/src/engine/graphics/shaders/GaussianGlowShader.d.ts +0 -26
  568. package/src/engine/graphics/shaders/GaussianGlowShader.d.ts.map +0 -1
  569. package/src/engine/graphics/shaders/GaussianGlowShader.js +0 -83
  570. package/src/engine/graphics/shaders/NormalMapShader.d.ts +0 -33
  571. package/src/engine/graphics/shaders/NormalMapShader.d.ts.map +0 -1
  572. package/src/engine/graphics/shaders/NormalMapShader.js +0 -62
  573. package/src/engine/graphics/shaders/SoftOutlineShader.d.ts +0 -3
  574. package/src/engine/graphics/shaders/SoftOutlineShader.d.ts.map +0 -1
  575. package/src/engine/graphics/shaders/SoftOutlineShader.js +0 -111
  576. package/src/engine/graphics/three/Reflector.d.ts +0 -12
  577. package/src/engine/graphics/three/Reflector.d.ts.map +0 -1
  578. package/src/engine/graphics/three/Reflector.js +0 -281
  579. package/src/engine/graphics/three/Refractor.d.ts +0 -11
  580. package/src/engine/graphics/three/Refractor.d.ts.map +0 -1
  581. package/src/engine/graphics/three/Refractor.js +0 -352
  582. package/src/engine/navigation/ecs/components/PathFinder.d.ts +0 -14
  583. package/src/engine/navigation/ecs/components/PathFinder.d.ts.map +0 -1
  584. package/src/engine/navigation/ecs/components/PathFinder.js +0 -11
  585. package/src/view/elements/navigation/NavigationMenu.d.ts +0 -13
  586. package/src/view/elements/navigation/NavigationMenu.d.ts.map +0 -1
  587. package/src/view/elements/navigation/NavigationMenu.js +0 -27
@@ -1,6 +1,4 @@
1
- /**
2
- * Created by Alex on 06/05/2015.
3
- */
1
+
4
2
  const DataChannel = function (channel, extras) {
5
3
  if (channel) this.automatic = true;
6
4
  this.channel = channel || location.href.replace(/\/|:|#|%|\.|\[|\]/g, '');
@@ -268,359 +266,361 @@ const DataChannel = function (channel, extras) {
268
266
  }
269
267
  };
270
268
 
271
- function DataConnector(root, config) {
272
- const self = {};
273
- const that = this;
274
-
275
- self.userToken = root.userid = root.userid || uniqueToken();
276
- self.sockets = [];
277
- self.socketObjects = {};
278
-
279
- let channels = '--';
280
- let isbroadcaster;
281
- let isGetNewRoom = true,
282
- RTCDataChannels = [];
283
-
284
- function newPrivateSocket(_config) {
285
- const socketConfig = {
286
- channel: _config.channel,
287
- onmessage: socketResponse,
288
- onopen: function () {
289
- if (isofferer && !peer) initPeer();
290
-
291
- _config.socketIndex = socket.index = self.sockets.length;
292
- self.socketObjects[socketConfig.channel] = socket;
293
- self.sockets[_config.socketIndex] = socket;
294
- }
295
- };
269
+ class DataConnector {
270
+ constructor(root, config) {
271
+ const self = {};
272
+ const that = this;
273
+
274
+ self.userToken = root.userid = root.userid || uniqueToken();
275
+ self.sockets = [];
276
+ self.socketObjects = {};
277
+
278
+ let channels = '--';
279
+ let isbroadcaster;
280
+ let isGetNewRoom = true,
281
+ RTCDataChannels = [];
282
+
283
+ function newPrivateSocket(_config) {
284
+ const socketConfig = {
285
+ channel: _config.channel,
286
+ onmessage: socketResponse,
287
+ onopen: function () {
288
+ if (isofferer && !peer) initPeer();
289
+
290
+ _config.socketIndex = socket.index = self.sockets.length;
291
+ self.socketObjects[socketConfig.channel] = socket;
292
+ self.sockets[_config.socketIndex] = socket;
293
+ }
294
+ };
296
295
 
297
- socketConfig.callback = function (_socket) {
298
- socket = _socket;
299
- socketConfig.onopen();
300
- };
296
+ socketConfig.callback = function (_socket) {
297
+ socket = _socket;
298
+ socketConfig.onopen();
299
+ };
301
300
 
302
- let socket = root.openSignalingChannel(socketConfig),
303
- isofferer = _config.isofferer;
304
- let gotstream;
305
- const inner = {};
306
- let peer;
301
+ let socket = root.openSignalingChannel(socketConfig),
302
+ isofferer = _config.isofferer;
303
+ let gotstream;
304
+ const inner = {};
305
+ let peer;
306
+
307
+ const peerConfig = {
308
+ onICE: function (candidate) {
309
+ socket && socket.send({
310
+ userToken: self.userToken,
311
+ candidate: {
312
+ sdpMLineIndex: candidate.sdpMLineIndex,
313
+ candidate: JSON.stringify(candidate.candidate)
314
+ }
315
+ });
316
+ },
317
+ onopen: onChannelOpened,
318
+ onmessage: function (event) {
319
+ config.onmessage(event.data, _config.userid);
320
+ },
321
+ onclose: config.onclose,
322
+ onerror: root.onerror,
323
+ preferSCTP: root.preferSCTP
324
+ };
307
325
 
308
- const peerConfig = {
309
- onICE: function (candidate) {
310
- socket && socket.send({
311
- userToken: self.userToken,
312
- candidate: {
313
- sdpMLineIndex: candidate.sdpMLineIndex,
314
- candidate: JSON.stringify(candidate.candidate)
315
- }
316
- });
317
- },
318
- onopen: onChannelOpened,
319
- onmessage: function (event) {
320
- config.onmessage(event.data, _config.userid);
321
- },
322
- onclose: config.onclose,
323
- onerror: root.onerror,
324
- preferSCTP: root.preferSCTP
325
- };
326
+ function initPeer(offerSDP) {
327
+ if (root.direction === 'one-to-one' && window.isFirstConnectionOpened) return;
326
328
 
327
- function initPeer(offerSDP) {
328
- if (root.direction === 'one-to-one' && window.isFirstConnectionOpened) return;
329
+ if (!offerSDP) peerConfig.onOfferSDP = sendsdp;
330
+ else {
331
+ peerConfig.offerSDP = offerSDP;
332
+ peerConfig.onAnswerSDP = sendsdp;
333
+ }
329
334
 
330
- if (!offerSDP) peerConfig.onOfferSDP = sendsdp;
331
- else {
332
- peerConfig.offerSDP = offerSDP;
333
- peerConfig.onAnswerSDP = sendsdp;
335
+ peer = RTCPeerConnection(peerConfig);
334
336
  }
335
337
 
336
- peer = RTCPeerConnection(peerConfig);
337
- }
338
+ function onChannelOpened(channel) {
339
+ channel.peer = peer.peer;
340
+ RTCDataChannels.push(channel);
338
341
 
339
- function onChannelOpened(channel) {
340
- channel.peer = peer.peer;
341
- RTCDataChannels.push(channel);
342
+ config.onopen(_config.userid, channel);
342
343
 
343
- config.onopen(_config.userid, channel);
344
+ if (root.direction === 'many-to-many' && isbroadcaster && channels.split('--').length > 3) {
345
+ defaultSocket && defaultSocket.send({
346
+ newParticipant: socket.channel,
347
+ userToken: self.userToken
348
+ });
349
+ }
344
350
 
345
- if (root.direction === 'many-to-many' && isbroadcaster && channels.split('--').length > 3) {
346
- defaultSocket && defaultSocket.send({
347
- newParticipant: socket.channel,
348
- userToken: self.userToken
349
- });
351
+ window.isFirstConnectionOpened = gotstream = true;
350
352
  }
351
353
 
352
- window.isFirstConnectionOpened = gotstream = true;
353
- }
354
+ function sendsdp(sdp) {
355
+ sdp = JSON.stringify(sdp);
356
+ const part = parseInt(sdp.length / 3);
354
357
 
355
- function sendsdp(sdp) {
356
- sdp = JSON.stringify(sdp);
357
- const part = parseInt(sdp.length / 3);
358
+ const firstPart = sdp.slice(0, part);
359
+ let secondPart = sdp.slice(part, sdp.length - 1),
360
+ thirdPart = '';
358
361
 
359
- const firstPart = sdp.slice(0, part);
360
- let secondPart = sdp.slice(part, sdp.length - 1),
361
- thirdPart = '';
362
+ if (sdp.length > part + part) {
363
+ secondPart = sdp.slice(part, part + part);
364
+ thirdPart = sdp.slice(part + part, sdp.length);
365
+ }
362
366
 
363
- if (sdp.length > part + part) {
364
- secondPart = sdp.slice(part, part + part);
365
- thirdPart = sdp.slice(part + part, sdp.length);
366
- }
367
+ socket.send({
368
+ userToken: self.userToken,
369
+ firstPart: firstPart
370
+ });
367
371
 
368
- socket.send({
369
- userToken: self.userToken,
370
- firstPart: firstPart
371
- });
372
+ socket.send({
373
+ userToken: self.userToken,
374
+ secondPart: secondPart
375
+ });
372
376
 
373
- socket.send({
374
- userToken: self.userToken,
375
- secondPart: secondPart
376
- });
377
+ socket.send({
378
+ userToken: self.userToken,
379
+ thirdPart: thirdPart
380
+ });
381
+ }
377
382
 
378
- socket.send({
379
- userToken: self.userToken,
380
- thirdPart: thirdPart
381
- });
382
- }
383
+ function socketResponse(response) {
384
+ if (response.userToken == self.userToken) return;
383
385
 
384
- function socketResponse(response) {
385
- if (response.userToken == self.userToken) return;
386
+ if (response.firstPart || response.secondPart || response.thirdPart) {
387
+ if (response.firstPart) {
388
+ // sdp sender's user id passed over "onopen" method
389
+ _config.userid = response.userToken;
386
390
 
387
- if (response.firstPart || response.secondPart || response.thirdPart) {
388
- if (response.firstPart) {
389
- // sdp sender's user id passed over "onopen" method
390
- _config.userid = response.userToken;
391
+ inner.firstPart = response.firstPart;
392
+ if (inner.secondPart && inner.thirdPart) selfInvoker();
393
+ }
394
+ if (response.secondPart) {
395
+ inner.secondPart = response.secondPart;
396
+ if (inner.firstPart && inner.thirdPart) selfInvoker();
397
+ }
391
398
 
392
- inner.firstPart = response.firstPart;
393
- if (inner.secondPart && inner.thirdPart) selfInvoker();
394
- }
395
- if (response.secondPart) {
396
- inner.secondPart = response.secondPart;
397
- if (inner.firstPart && inner.thirdPart) selfInvoker();
399
+ if (response.thirdPart) {
400
+ inner.thirdPart = response.thirdPart;
401
+ if (inner.firstPart && inner.secondPart) selfInvoker();
402
+ }
398
403
  }
399
404
 
400
- if (response.thirdPart) {
401
- inner.thirdPart = response.thirdPart;
402
- if (inner.firstPart && inner.secondPart) selfInvoker();
403
- }
404
- }
405
+ if (response.candidate && !gotstream) {
406
+ peer && peer.addICE({
407
+ sdpMLineIndex: response.candidate.sdpMLineIndex,
408
+ candidate: JSON.parse(response.candidate.candidate)
409
+ });
405
410
 
406
- if (response.candidate && !gotstream) {
407
- peer && peer.addICE({
408
- sdpMLineIndex: response.candidate.sdpMLineIndex,
409
- candidate: JSON.parse(response.candidate.candidate)
410
- });
411
+ console.debug('ice candidate', response.candidate.candidate);
412
+ }
411
413
 
412
- console.debug('ice candidate', response.candidate.candidate);
413
- }
414
+ if (response.left) {
415
+ if (peer && peer.peer) {
416
+ peer.peer.close();
417
+ peer.peer = null;
418
+ }
414
419
 
415
- if (response.left) {
416
- if (peer && peer.peer) {
417
- peer.peer.close();
418
- peer.peer = null;
419
- }
420
+ if (response.closeEntireSession) leaveChannels();
421
+ else if (socket) {
422
+ socket.send({
423
+ left: true,
424
+ userToken: self.userToken
425
+ });
426
+ socket = null;
427
+ }
420
428
 
421
- if (response.closeEntireSession) leaveChannels();
422
- else if (socket) {
423
- socket.send({
424
- left: true,
425
- userToken: self.userToken
426
- });
427
- socket = null;
429
+ root.onleave(response.userToken);
428
430
  }
429
431
 
430
- root.onleave(response.userToken);
432
+ if (response.playRoleOfBroadcaster)
433
+ setTimeout(function () {
434
+ self.roomToken = response.roomToken;
435
+ root.open(self.roomToken);
436
+ self.sockets = swap(self.sockets);
437
+ }, 600);
431
438
  }
432
439
 
433
- if (response.playRoleOfBroadcaster)
434
- setTimeout(function () {
435
- self.roomToken = response.roomToken;
436
- root.open(self.roomToken);
437
- self.sockets = swap(self.sockets);
438
- }, 600);
439
- }
440
+ let invokedOnce = false;
440
441
 
441
- let invokedOnce = false;
442
+ function selfInvoker() {
443
+ if (invokedOnce) return;
442
444
 
443
- function selfInvoker() {
444
- if (invokedOnce) return;
445
+ invokedOnce = true;
446
+ inner.sdp = JSON.parse(inner.firstPart + inner.secondPart + inner.thirdPart);
445
447
 
446
- invokedOnce = true;
447
- inner.sdp = JSON.parse(inner.firstPart + inner.secondPart + inner.thirdPart);
448
+ if (isofferer) peer.addAnswerSDP(inner.sdp);
449
+ else initPeer(inner.sdp);
448
450
 
449
- if (isofferer) peer.addAnswerSDP(inner.sdp);
450
- else initPeer(inner.sdp);
451
-
452
- console.debug('sdp', inner.sdp.sdp);
451
+ console.debug('sdp', inner.sdp.sdp);
452
+ }
453
453
  }
454
- }
455
454
 
456
- function onNewParticipant(channel) {
457
- if (!channel || channels.indexOf(channel) != -1 || channel == self.userToken) return;
458
- channels += channel + '--';
455
+ function onNewParticipant(channel) {
456
+ if (!channel || channels.indexOf(channel) != -1 || channel == self.userToken) return;
457
+ channels += channel + '--';
459
458
 
460
- const new_channel = uniqueToken();
459
+ const new_channel = uniqueToken();
461
460
 
462
- newPrivateSocket({
463
- channel: new_channel,
464
- closeSocket: true
465
- });
461
+ newPrivateSocket({
462
+ channel: new_channel,
463
+ closeSocket: true
464
+ });
466
465
 
467
- defaultSocket && defaultSocket.send({
468
- participant: true,
469
- userToken: self.userToken,
470
- joinUser: channel,
471
- channel: new_channel
472
- });
473
- }
466
+ defaultSocket && defaultSocket.send({
467
+ participant: true,
468
+ userToken: self.userToken,
469
+ joinUser: channel,
470
+ channel: new_channel
471
+ });
472
+ }
474
473
 
475
- function uniqueToken() {
476
- return Math.round(Math.random() * 60535) + 5000000;
477
- }
474
+ function uniqueToken() {
475
+ return Math.round(Math.random() * 60535) + 5000000;
476
+ }
478
477
 
479
- function leaveChannels(channel) {
480
- const alert = {
481
- left: true,
482
- userToken: self.userToken
483
- };
478
+ function leaveChannels(channel) {
479
+ const alert = {
480
+ left: true,
481
+ userToken: self.userToken
482
+ };
484
483
 
485
- // if room initiator is leaving the room; close the entire session
486
- if (isbroadcaster) {
487
- if (root.autoCloseEntireSession) alert.closeEntireSession = true;
488
- else
489
- self.sockets[0].send({
490
- playRoleOfBroadcaster: true,
491
- userToken: self.userToken,
492
- roomToken: self.roomToken
493
- });
494
- }
484
+ // if room initiator is leaving the room; close the entire session
485
+ if (isbroadcaster) {
486
+ if (root.autoCloseEntireSession) alert.closeEntireSession = true;
487
+ else
488
+ self.sockets[0].send({
489
+ playRoleOfBroadcaster: true,
490
+ userToken: self.userToken,
491
+ roomToken: self.roomToken
492
+ });
493
+ }
495
494
 
496
- if (!channel) {
497
- // closing all sockets
498
- const sockets = self.sockets,
499
- length = sockets.length;
495
+ if (!channel) {
496
+ // closing all sockets
497
+ const sockets = self.sockets,
498
+ length = sockets.length;
500
499
 
501
- for (let i = 0; i < length; i++) {
502
- const socket = sockets[i];
503
- if (socket) {
504
- socket.send(alert);
500
+ for (let i = 0; i < length; i++) {
501
+ const socket = sockets[i];
502
+ if (socket) {
503
+ socket.send(alert);
505
504
 
506
- if (self.socketObjects[socket.channel])
507
- delete self.socketObjects[socket.channel];
505
+ if (self.socketObjects[socket.channel])
506
+ delete self.socketObjects[socket.channel];
508
507
 
509
- delete sockets[i];
508
+ delete sockets[i];
509
+ }
510
510
  }
511
- }
512
511
 
513
- that.left = true;
514
- }
512
+ that.left = true;
513
+ }
515
514
 
516
- // eject a specific user!
517
- if (channel) {
518
- socket = self.socketObjects[channel];
519
- if (socket) {
520
- socket.send(alert);
515
+ // eject a specific user!
516
+ if (channel) {
517
+ socket = self.socketObjects[channel];
518
+ if (socket) {
519
+ socket.send(alert);
521
520
 
522
- if (self.sockets[socket.index])
523
- delete self.sockets[socket.index];
521
+ if (self.sockets[socket.index])
522
+ delete self.sockets[socket.index];
524
523
 
525
- delete self.socketObjects[channel];
524
+ delete self.socketObjects[channel];
525
+ }
526
526
  }
527
+ self.sockets = swap(self.sockets);
527
528
  }
528
- self.sockets = swap(self.sockets);
529
- }
530
529
 
531
- window.addEventListener('beforeunload', function () {
532
- leaveChannels();
533
- }, false);
534
-
535
- window.addEventListener('keydown', function (e) {
536
- if (e.keyCode == 116)
530
+ window.addEventListener('beforeunload', function () {
537
531
  leaveChannels();
538
- }, false);
532
+ }, false);
539
533
 
540
- let defaultSocket = root.openSignalingChannel({
541
- onmessage: function (response) {
542
- if (response.userToken == self.userToken) return;
543
- if (isGetNewRoom && response.roomToken && response.broadcaster) config.ondatachannel(response);
534
+ window.addEventListener('keydown', function (e) {
535
+ if (e.keyCode == 116)
536
+ leaveChannels();
537
+ }, false);
544
538
 
545
- if (response.newParticipant) onNewParticipant(response.newParticipant);
539
+ let defaultSocket = root.openSignalingChannel({
540
+ onmessage: function (response) {
541
+ if (response.userToken == self.userToken) return;
542
+ if (isGetNewRoom && response.roomToken && response.broadcaster) config.ondatachannel(response);
546
543
 
547
- if (response.userToken && response.joinUser == self.userToken && response.participant && channels.indexOf(response.userToken) == -1) {
548
- channels += response.userToken + '--';
544
+ if (response.newParticipant) onNewParticipant(response.newParticipant);
549
545
 
550
- console.debug('Data connection is being opened between you and', response.userToken || response.channel);
551
- newPrivateSocket({
552
- isofferer: true,
553
- channel: response.channel || response.userToken,
554
- closeSocket: true
555
- });
546
+ if (response.userToken && response.joinUser == self.userToken && response.participant && channels.indexOf(response.userToken) == -1) {
547
+ channels += response.userToken + '--';
548
+
549
+ console.debug('Data connection is being opened between you and', response.userToken || response.channel);
550
+ newPrivateSocket({
551
+ isofferer: true,
552
+ channel: response.channel || response.userToken,
553
+ closeSocket: true
554
+ });
555
+ }
556
+ },
557
+ callback: function (socket) {
558
+ defaultSocket = socket;
556
559
  }
557
- },
558
- callback: function (socket) {
559
- defaultSocket = socket;
560
- }
561
- });
560
+ });
562
561
 
563
- return {
564
- createRoom: function (roomToken) {
565
- self.roomToken = roomToken || uniqueToken();
562
+ return {
563
+ createRoom: function (roomToken) {
564
+ self.roomToken = roomToken || uniqueToken();
566
565
 
567
- isbroadcaster = true;
568
- isGetNewRoom = false;
566
+ isbroadcaster = true;
567
+ isGetNewRoom = false;
569
568
 
570
- (function transmit() {
571
- defaultSocket && defaultSocket.send({
572
- roomToken: self.roomToken,
573
- broadcaster: self.userToken
574
- });
569
+ (function transmit() {
570
+ defaultSocket && defaultSocket.send({
571
+ roomToken: self.roomToken,
572
+ broadcaster: self.userToken
573
+ });
575
574
 
576
- if (!root.transmitRoomOnce && !that.leaving) {
577
- if (root.direction === 'one-to-one') {
578
- if (!window.isFirstConnectionOpened) setTimeout(transmit, 3000);
579
- } else setTimeout(transmit, 3000);
580
- }
581
- })();
582
- },
583
- joinRoom: function (_config) {
584
- self.roomToken = _config.roomToken;
585
- isGetNewRoom = false;
575
+ if (!root.transmitRoomOnce && !that.leaving) {
576
+ if (root.direction === 'one-to-one') {
577
+ if (!window.isFirstConnectionOpened) setTimeout(transmit, 3000);
578
+ } else setTimeout(transmit, 3000);
579
+ }
580
+ })();
581
+ },
582
+ joinRoom: function (_config) {
583
+ self.roomToken = _config.roomToken;
584
+ isGetNewRoom = false;
586
585
 
587
- newPrivateSocket({
588
- channel: self.userToken
589
- });
586
+ newPrivateSocket({
587
+ channel: self.userToken
588
+ });
590
589
 
591
- defaultSocket.send({
592
- participant: true,
593
- userToken: self.userToken,
594
- joinUser: _config.joinUser
595
- });
596
- },
597
- send: function (message, _channel) {
598
- const _channels = RTCDataChannels;
599
- let data, length = _channels.length;
600
- if (!length) return;
590
+ defaultSocket.send({
591
+ participant: true,
592
+ userToken: self.userToken,
593
+ joinUser: _config.joinUser
594
+ });
595
+ },
596
+ send: function (message, _channel) {
597
+ const _channels = RTCDataChannels;
598
+ let data, length = _channels.length;
599
+ if (!length) return;
601
600
 
602
- data = JSON.stringify(message);
601
+ data = JSON.stringify(message);
603
602
 
604
- if (_channel) {
605
- if (_channel.readyState == 'open') {
606
- _channel.send(data);
607
- }
608
- } else
609
- for (let i = 0; i < length; i++) {
610
- if (_channels[i].readyState == 'open') {
611
- _channels[i].send(data);
603
+ if (_channel) {
604
+ if (_channel.readyState == 'open') {
605
+ _channel.send(data);
606
+ }
607
+ } else
608
+ for (let i = 0; i < length; i++) {
609
+ if (_channels[i].readyState == 'open') {
610
+ _channels[i].send(data);
611
+ }
612
612
  }
613
+ },
614
+ leave: function (userid, autoCloseEntireSession) {
615
+ if (autoCloseEntireSession) root.autoCloseEntireSession = true;
616
+ leaveChannels(userid);
617
+ if (!userid) {
618
+ self.joinedARoom = isbroadcaster = false;
619
+ isGetNewRoom = true;
613
620
  }
614
- },
615
- leave: function (userid, autoCloseEntireSession) {
616
- if (autoCloseEntireSession) root.autoCloseEntireSession = true;
617
- leaveChannels(userid);
618
- if (!userid) {
619
- self.joinedARoom = isbroadcaster = false;
620
- isGetNewRoom = true;
621
621
  }
622
- }
623
- };
622
+ };
623
+ }
624
624
  }
625
625
 
626
626
  function SocketConnector(_channel, config) {
@@ -1,6 +1,3 @@
1
1
  export default xhr;
2
- /**
3
- * Created by Alex on 26/04/2015.
4
- */
5
2
  declare function xhr(path: any, success: any, error: any): void;
6
3
  //# sourceMappingURL=xhr.d.ts.map