@hellpig/anarchy-engine 22.0.5 → 22.0.7

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 (1044) hide show
  1. package/dist/Abstract/Entities/AbstractEntity.d.ts +2 -2
  2. package/dist/Abstract/Entities/AbstractEntity.js.map +1 -1
  3. package/dist/Abstract/Factories/AbstractFactory.d.ts +2 -2
  4. package/dist/Abstract/Factories/AbstractFactory.js.map +1 -1
  5. package/dist/Abstract/Factories/ReactiveFactory.d.ts +2 -2
  6. package/dist/Abstract/Factories/ReactiveFactory.js.map +1 -1
  7. package/dist/Abstract/Loaders/AbstractLoader.d.ts +2 -2
  8. package/dist/Abstract/Loaders/AbstractLoader.js.map +1 -1
  9. package/dist/Abstract/Mixins/WithWrapperIdMixin.d.ts +1 -1
  10. package/dist/Abstract/Mixins/WithWrapperIdMixin.js.map +1 -1
  11. package/dist/Abstract/Models/TAbstractAsyncEntityRegistry.d.ts +2 -2
  12. package/dist/Abstract/Models/TAbstractEntity.d.ts +1 -1
  13. package/dist/Abstract/Models/TAbstractEntityRegistry.d.ts +2 -2
  14. package/dist/Abstract/Models/TAbstractLoader.d.ts +2 -2
  15. package/dist/Abstract/Models/TAbstractLoop.d.ts +1 -1
  16. package/dist/Abstract/Models/TAbstractResourceAsyncRegistry.d.ts +1 -1
  17. package/dist/Abstract/Models/TAbstractResourceConfig.d.ts +1 -1
  18. package/dist/Abstract/Models/TAbstractService.d.ts +1 -1
  19. package/dist/Abstract/Models/TAbstractSimpleRegistry.d.ts +2 -2
  20. package/dist/Abstract/Models/TAbstractWatcher.d.ts +2 -2
  21. package/dist/Abstract/Models/TAbstractWrapper.d.ts +1 -1
  22. package/dist/Abstract/Models/TEntity.d.ts +1 -1
  23. package/dist/Abstract/Models/TEntityParams.d.ts +1 -1
  24. package/dist/Abstract/Models/TFactory.d.ts +2 -2
  25. package/dist/Abstract/Models/THtmlElementStyleDeclaration.d.ts +4 -4
  26. package/dist/Abstract/Models/TMultitonWatcher.d.ts +1 -1
  27. package/dist/Abstract/Models/TMultitonWatcherWithState.d.ts +1 -1
  28. package/dist/Abstract/Models/TReactiveFactory.d.ts +1 -1
  29. package/dist/Abstract/Models/TSerializableEntitiesService.d.ts +1 -1
  30. package/dist/Abstract/Models/TWatcher.d.ts +1 -1
  31. package/dist/Abstract/Models/TWrapper.d.ts +1 -1
  32. package/dist/Abstract/Registries/AbstractEntityAsyncRegistry.d.ts +3 -3
  33. package/dist/Abstract/Registries/AbstractEntityAsyncRegistry.js.map +1 -1
  34. package/dist/Abstract/Registries/AbstractEntityRegistry.d.ts +3 -3
  35. package/dist/Abstract/Registries/AbstractEntityRegistry.js.map +1 -1
  36. package/dist/Abstract/Registries/AbstractResourceAsyncRegistry.d.ts +2 -2
  37. package/dist/Abstract/Registries/AbstractResourceAsyncRegistry.js.map +1 -1
  38. package/dist/Abstract/Registries/AbstractSimpleRegistry.d.ts +2 -2
  39. package/dist/Abstract/Registries/AbstractSimpleRegistry.js.map +1 -1
  40. package/dist/Abstract/Registries/AbstractWatcherRegistry.d.ts +2 -2
  41. package/dist/Abstract/Registries/AbstractWatcherRegistry.js.map +1 -1
  42. package/dist/Abstract/Registries/Mixin/Registry/WithBaseAccessorsRegistry.d.ts +1 -1
  43. package/dist/Abstract/Registries/Mixin/Registry/WithBaseAccessorsRegistry.js.map +1 -1
  44. package/dist/Abstract/Registries/Mixin/Registry/WithReactiveRegistry.d.ts +2 -2
  45. package/dist/Abstract/Registries/Mixin/Registry/WithReactiveRegistry.js.map +1 -1
  46. package/dist/Abstract/Registries/ValidateRegistryOriginalsTestSuite.d.ts +1 -1
  47. package/dist/Abstract/Services/AbstractService.d.ts +2 -2
  48. package/dist/Abstract/Services/AbstractService.js.map +1 -1
  49. package/dist/Abstract/Watchers/AbstractWatcher.d.ts +2 -2
  50. package/dist/Abstract/Watchers/AbstractWatcher.js.map +1 -1
  51. package/dist/Abstract/Watchers/AbstractWatcherWithState.d.ts +2 -2
  52. package/dist/Abstract/Watchers/AbstractWatcherWithState.js.map +1 -1
  53. package/dist/Abstract/Wrappers/AbstractWrapper.d.ts +4 -4
  54. package/dist/Abstract/Wrappers/AbstractWrapper.js.map +1 -1
  55. package/dist/Actor/Adapters/ConfigToParams.d.ts +1 -1
  56. package/dist/Actor/Adapters/ConfigToParams.js.map +1 -1
  57. package/dist/Actor/Adapters/EntityToConfig.d.ts +1 -1
  58. package/dist/Actor/Adapters/EntityToConfig.js.map +1 -1
  59. package/dist/Actor/Adapters/Helpers/ActorStatesConfigToParams.d.ts +1 -1
  60. package/dist/Actor/Adapters/Helpers/ActorStatesConfigToParams.js.map +1 -1
  61. package/dist/Actor/Adapters/Helpers/Model3dSettingsConfigToParams.d.ts +1 -1
  62. package/dist/Actor/Adapters/Helpers/Model3dSettingsConfigToParams.js.map +1 -1
  63. package/dist/Actor/Entities/Actor/Actor.d.ts +1 -1
  64. package/dist/Actor/Entities/Actor/Actor.js.map +1 -1
  65. package/dist/Actor/Factories/ActorFactory.d.ts +1 -1
  66. package/dist/Actor/Factories/ActorFactory.js.map +1 -1
  67. package/dist/Actor/Mixins/WithActorStates.d.ts +1 -1
  68. package/dist/Actor/Mixins/WithActorStates.js.map +1 -1
  69. package/dist/Actor/Models/TActor.d.ts +2 -2
  70. package/dist/Actor/Models/TActorConfig.d.ts +4 -4
  71. package/dist/Actor/Models/TActorConfigToParamsDependencies.d.ts +4 -4
  72. package/dist/Actor/Models/TActorDependencies.d.ts +7 -7
  73. package/dist/Actor/Models/TActorEntities.d.ts +4 -4
  74. package/dist/Actor/Models/TActorEntityToConfigDependencies.d.ts +1 -1
  75. package/dist/Actor/Models/TActorFactory.d.ts +1 -1
  76. package/dist/Actor/Models/TActorModel3dSettingsConfig.d.ts +1 -1
  77. package/dist/Actor/Models/TActorParams.d.ts +8 -8
  78. package/dist/Actor/Models/TActorRegistry.d.ts +1 -1
  79. package/dist/Actor/Models/TActorService.d.ts +2 -2
  80. package/dist/Actor/Models/TActorStates.d.ts +1 -1
  81. package/dist/Actor/Models/TActorTransformAgents.d.ts +1 -1
  82. package/dist/Actor/Models/TActorTransformDrive.d.ts +1 -1
  83. package/dist/Actor/Models/TAnimationsFsmSource.d.ts +1 -1
  84. package/dist/Actor/Models/TModel3dToActorConnectionRegistry.d.ts +2 -2
  85. package/dist/Actor/Models/TParamsFromConfigActor.d.ts +1 -1
  86. package/dist/Actor/Models/TWithActorStates.d.ts +1 -1
  87. package/dist/Actor/Registries/ActorRegistry.d.ts +1 -1
  88. package/dist/Actor/Registries/ActorRegistry.js.map +1 -1
  89. package/dist/Actor/Registries/Model3dToActorConnectionRegistry.d.ts +1 -1
  90. package/dist/Actor/Registries/Model3dToActorConnectionRegistry.js.map +1 -1
  91. package/dist/Actor/Services/ActorService.d.ts +2 -2
  92. package/dist/Actor/Services/ActorService.js.map +1 -1
  93. package/dist/Actor/TransformDrive/ActorTransformDrive.d.ts +1 -1
  94. package/dist/Actor/TransformDrive/ActorTransformDrive.js.map +1 -1
  95. package/dist/Actor/Utils/ActorUtils.d.ts +2 -2
  96. package/dist/Actor/Utils/ActorUtils.js.map +1 -1
  97. package/dist/Animations/Adapters/EntityToConfig.d.ts +1 -1
  98. package/dist/Animations/Adapters/EntityToConfig.js.map +1 -1
  99. package/dist/Animations/Loader/AnimationsLoader.d.ts +3 -3
  100. package/dist/Animations/Loader/AnimationsLoader.js.map +1 -1
  101. package/dist/Animations/Models/TAnimationActionsPack.d.ts +1 -1
  102. package/dist/Animations/Models/TAnimationsLoader.d.ts +1 -1
  103. package/dist/Animations/Models/TAnimationsMetaInfoRegistry.d.ts +1 -1
  104. package/dist/Animations/Models/TAnimationsResourceAsyncRegistry.d.ts +1 -1
  105. package/dist/Animations/Models/TAnimationsResourceConfig.d.ts +1 -1
  106. package/dist/Animations/Models/TAnimationsService.d.ts +4 -4
  107. package/dist/Animations/Registries/AnimationsMetaInfoRegistry.d.ts +1 -1
  108. package/dist/Animations/Registries/AnimationsMetaInfoRegistry.js.map +1 -1
  109. package/dist/Animations/Registries/AnimationsResourceAsyncRegistry.d.ts +1 -1
  110. package/dist/Animations/Registries/AnimationsResourceAsyncRegistry.js.map +1 -1
  111. package/dist/Animations/Services/AnimationsService.d.ts +3 -3
  112. package/dist/Animations/Services/AnimationsService.js.map +1 -1
  113. package/dist/Animations/Utils/SerializationUtils.d.ts +1 -1
  114. package/dist/Animations/Utils/SerializationUtils.js.map +1 -1
  115. package/dist/Audio/Adapters/AudioConfigToParams.d.ts +1 -1
  116. package/dist/Audio/Adapters/AudioConfigToParams.js.map +1 -1
  117. package/dist/Audio/Adapters/EntityToConfig.d.ts +1 -1
  118. package/dist/Audio/Adapters/EntityToConfig.js.map +1 -1
  119. package/dist/Audio/Factories/AudioFactory.d.ts +1 -1
  120. package/dist/Audio/Factories/AudioFactory.js.map +1 -1
  121. package/dist/Audio/Loader/AudioLoader.d.ts +2 -2
  122. package/dist/Audio/Loader/AudioLoader.js.map +1 -1
  123. package/dist/Audio/Models/TAbstractAudioWrapper.d.ts +1 -1
  124. package/dist/Audio/Models/TAudio3dParams.d.ts +1 -1
  125. package/dist/Audio/Models/TAudio3dPerformanceOptions.d.ts +1 -1
  126. package/dist/Audio/Models/TAudio3dTransformAgents.d.ts +2 -2
  127. package/dist/Audio/Models/TAudio3dTransformDrive.d.ts +1 -1
  128. package/dist/Audio/Models/TAudio3dWrapper.d.ts +1 -1
  129. package/dist/Audio/Models/TAudioConfig.d.ts +1 -1
  130. package/dist/Audio/Models/TAudioFactory.d.ts +1 -1
  131. package/dist/Audio/Models/TAudioListenersRegistry.d.ts +1 -1
  132. package/dist/Audio/Models/TAudioLoader.d.ts +1 -1
  133. package/dist/Audio/Models/TAudioLoop.d.ts +1 -1
  134. package/dist/Audio/Models/TAudioMetaInfoRegistry.d.ts +1 -1
  135. package/dist/Audio/Models/TAudioParams.d.ts +2 -2
  136. package/dist/Audio/Models/TAudioPerformanceOptions.d.ts +1 -1
  137. package/dist/Audio/Models/TAudioRegistry.d.ts +1 -1
  138. package/dist/Audio/Models/TAudioResourceAsyncRegistry.d.ts +1 -1
  139. package/dist/Audio/Models/TAudioResourceConfig.d.ts +1 -1
  140. package/dist/Audio/Models/TAudioService.d.ts +2 -2
  141. package/dist/Audio/Models/TAudioServiceDependencies.d.ts +1 -1
  142. package/dist/Audio/Models/TAudioWrapperDependencies.d.ts +1 -1
  143. package/dist/Audio/Registries/AudioListenersRegistry.d.ts +1 -1
  144. package/dist/Audio/Registries/AudioListenersRegistry.js.map +1 -1
  145. package/dist/Audio/Registries/AudioMetaInfoRegistry.d.ts +1 -1
  146. package/dist/Audio/Registries/AudioMetaInfoRegistry.js.map +1 -1
  147. package/dist/Audio/Registries/AudioRegistry.d.ts +1 -1
  148. package/dist/Audio/Registries/AudioRegistry.js.map +1 -1
  149. package/dist/Audio/Registries/AudioResourceAsyncRegistry.d.ts +1 -1
  150. package/dist/Audio/Registries/AudioResourceAsyncRegistry.js.map +1 -1
  151. package/dist/Audio/Services/AudioService.d.ts +3 -3
  152. package/dist/Audio/Services/AudioService.js.map +1 -1
  153. package/dist/Audio/TransformDrive/Audio3dTransformDrive.d.ts +1 -1
  154. package/dist/Audio/TransformDrive/Audio3dTransformDrive.js.map +1 -1
  155. package/dist/Audio/Utils/AudioUtils.d.ts +2 -2
  156. package/dist/Audio/Utils/AudioUtils.js.map +1 -1
  157. package/dist/Audio/Utils/DebugAudioRenderer.d.ts +3 -3
  158. package/dist/Audio/Utils/DebugAudioRenderer.js.map +1 -1
  159. package/dist/Audio/Wrappers/AbstractAudioWrapper.d.ts +1 -1
  160. package/dist/Audio/Wrappers/AbstractAudioWrapper.js.map +1 -1
  161. package/dist/Audio/Wrappers/Audio3dWrapper.d.ts +1 -1
  162. package/dist/Audio/Wrappers/Audio3dWrapper.js.map +1 -1
  163. package/dist/Audio/Wrappers/AudioWrapper.d.ts +1 -1
  164. package/dist/Audio/Wrappers/AudioWrapper.js.map +1 -1
  165. package/dist/Camera/Adapters/ConfigToParams.d.ts +2 -2
  166. package/dist/Camera/Adapters/ConfigToParams.js.map +1 -1
  167. package/dist/Camera/Adapters/EntityToConfig.d.ts +3 -3
  168. package/dist/Camera/Adapters/EntityToConfig.js.map +1 -1
  169. package/dist/Camera/Factories/CameraFactory.d.ts +1 -1
  170. package/dist/Camera/Factories/CameraFactory.js.map +1 -1
  171. package/dist/Camera/Models/TAbstractCameraRegistry.d.ts +1 -1
  172. package/dist/Camera/Models/TCameraFactory.d.ts +1 -1
  173. package/dist/Camera/Models/TCameraService.d.ts +2 -2
  174. package/dist/Camera/Models/TCameraServiceDependencies.d.ts +3 -3
  175. package/dist/Camera/Models/TCameraTransformAgents.d.ts +2 -2
  176. package/dist/Camera/Models/TCameraTransformDrive.d.ts +1 -1
  177. package/dist/Camera/Models/TCameraWrapper.d.ts +4 -4
  178. package/dist/Camera/Models/TCameraWrapperDependencies.d.ts +3 -3
  179. package/dist/Camera/Models/TCommonCameraConfig.d.ts +2 -2
  180. package/dist/Camera/Models/TCommonCameraParams.d.ts +4 -4
  181. package/dist/Camera/Models/TOrthographicCameraWrapper.d.ts +1 -1
  182. package/dist/Camera/Models/TPerspectiveCameraWrapper.d.ts +1 -1
  183. package/dist/Camera/Models/index.d.ts +1 -0
  184. package/dist/Camera/Registries/AbstractCameraRegistry.d.ts +1 -1
  185. package/dist/Camera/Registries/AbstractCameraRegistry.js.map +1 -1
  186. package/dist/Camera/Services/CameraService.d.ts +2 -2
  187. package/dist/Camera/Services/CameraService.js.map +1 -1
  188. package/dist/Camera/TransformDrive/CameraTransformDrive.d.ts +1 -1
  189. package/dist/Camera/TransformDrive/CameraTransformDrive.js.map +1 -1
  190. package/dist/Camera/Utils/CameraUtils.d.ts +2 -2
  191. package/dist/Camera/Utils/CameraUtils.js.map +1 -1
  192. package/dist/Camera/Wrappers/Accessors.d.ts +1 -1
  193. package/dist/Camera/Wrappers/Accessors.js.map +1 -1
  194. package/dist/Camera/Wrappers/OrthographicCameraWrapper.d.ts +1 -1
  195. package/dist/Camera/Wrappers/OrthographicCameraWrapper.js.map +1 -1
  196. package/dist/Camera/Wrappers/PerspectiveCameraWrapper.d.ts +1 -1
  197. package/dist/Camera/Wrappers/PerspectiveCameraWrapper.js.map +1 -1
  198. package/dist/Collisions/Mixins/WithCollisions.d.ts +2 -2
  199. package/dist/Collisions/Mixins/WithCollisions.js.map +1 -1
  200. package/dist/Collisions/Models/TBvhService.d.ts +3 -3
  201. package/dist/Collisions/Models/TCollisionCheckResult.d.ts +1 -1
  202. package/dist/Collisions/Models/TCollisionsData.d.ts +1 -1
  203. package/dist/Collisions/Models/TCollisionsLoop.d.ts +1 -1
  204. package/dist/Collisions/Models/TCollisionsMethods.d.ts +2 -2
  205. package/dist/Collisions/Models/TCollisionsService.d.ts +2 -2
  206. package/dist/Collisions/Models/TWithCollisions.d.ts +1 -1
  207. package/dist/Collisions/Services/BvhService.d.ts +1 -1
  208. package/dist/Collisions/Services/BvhService.js.map +1 -1
  209. package/dist/Collisions/Services/CollisionsService.d.ts +1 -1
  210. package/dist/Collisions/Services/CollisionsService.js.map +1 -1
  211. package/dist/Color/Adapters/EntityToConfig.d.ts +1 -1
  212. package/dist/Color/Adapters/EntityToConfig.js.map +1 -1
  213. package/dist/Color/Models/TColorWrapper.d.ts +1 -1
  214. package/dist/Color/Wrappers/ColorWrapper.d.ts +1 -1
  215. package/dist/Color/Wrappers/ColorWrapper.js.map +1 -1
  216. package/dist/Context/AmbientContext/AmbientContext.js.map +1 -1
  217. package/dist/Context/AmbientContext/Models/TAmbientContext.d.ts +1 -1
  218. package/dist/Controls/Adapters/ConfigToParams.d.ts +2 -2
  219. package/dist/Controls/Adapters/ConfigToParams.js.map +1 -1
  220. package/dist/Controls/Adapters/EntityToConfig.d.ts +1 -1
  221. package/dist/Controls/Adapters/EntityToConfig.js.map +1 -1
  222. package/dist/Controls/Factories/ControlsFactory.d.ts +1 -1
  223. package/dist/Controls/Factories/ControlsFactory.js.map +1 -1
  224. package/dist/Controls/Loop/ControlsLoopEffect.d.ts +1 -1
  225. package/dist/Controls/Loop/ControlsLoopEffect.js.map +1 -1
  226. package/dist/Controls/Models/TAdditionalControlsConfigParams.d.ts +2 -2
  227. package/dist/Controls/Models/TBaseControlsParams.d.ts +2 -2
  228. package/dist/Controls/Models/TControlService.d.ts +2 -2
  229. package/dist/Controls/Models/TControlsFactory.d.ts +1 -1
  230. package/dist/Controls/Models/TControlsLoop.d.ts +1 -1
  231. package/dist/Controls/Models/TControlsRegistry.d.ts +1 -1
  232. package/dist/Controls/Models/TControlsServiceDependencies.d.ts +1 -1
  233. package/dist/Controls/Models/TFpsControlsParams.d.ts +2 -2
  234. package/dist/Controls/Models/TFpsControlsWrapper.d.ts +5 -5
  235. package/dist/Controls/Models/TOrbitControlsAccessors.d.ts +1 -1
  236. package/dist/Controls/Models/TOrbitControlsParams.d.ts +2 -2
  237. package/dist/Controls/Models/TOrbitControlsWrapper.d.ts +6 -6
  238. package/dist/Controls/Registries/ControlsRegistry.d.ts +1 -1
  239. package/dist/Controls/Registries/ControlsRegistry.js.map +1 -1
  240. package/dist/Controls/Services/ControlsService.d.ts +2 -2
  241. package/dist/Controls/Services/ControlsService.js.map +1 -1
  242. package/dist/Controls/Utils/ControlsUtils.d.ts +2 -2
  243. package/dist/Controls/Utils/ControlsUtils.js.map +1 -1
  244. package/dist/Controls/Wrappers/FpsControls/FpsControlsAccessors.d.ts +1 -1
  245. package/dist/Controls/Wrappers/FpsControls/FpsControlsAccessors.js.map +1 -1
  246. package/dist/Controls/Wrappers/FpsControls/FpsControlsWrapper.d.ts +1 -1
  247. package/dist/Controls/Wrappers/FpsControls/FpsControlsWrapper.js.map +1 -1
  248. package/dist/Controls/Wrappers/FpsControls/FpsControlsWrapperHelper.d.ts +1 -1
  249. package/dist/Controls/Wrappers/FpsControls/FpsControlsWrapperHelper.js.map +1 -1
  250. package/dist/Controls/Wrappers/OrbitControls/OrbitControlsAccessors.d.ts +1 -1
  251. package/dist/Controls/Wrappers/OrbitControls/OrbitControlsAccessors.js.map +1 -1
  252. package/dist/Controls/Wrappers/OrbitControls/OrbitControlsWrapper.d.ts +1 -1
  253. package/dist/Controls/Wrappers/OrbitControls/OrbitControlsWrapper.js.map +1 -1
  254. package/dist/Controls/Wrappers/OrbitControls/OrbitControlsWrapperHelper.d.ts +1 -1
  255. package/dist/Controls/Wrappers/OrbitControls/OrbitControlsWrapperHelper.js.map +1 -1
  256. package/dist/Distance/Utils/DistanceUtils.d.ts +1 -1
  257. package/dist/Distance/Utils/DistanceUtils.js.map +1 -1
  258. package/dist/EnvMap/Adapters/ConfigToParams.d.ts +1 -1
  259. package/dist/EnvMap/Adapters/ConfigToParams.js.map +1 -1
  260. package/dist/EnvMap/Adapters/EntityToConfig.d.ts +1 -1
  261. package/dist/EnvMap/Adapters/EntityToConfig.js.map +1 -1
  262. package/dist/EnvMap/Factories/EnvMapFactory.d.ts +1 -1
  263. package/dist/EnvMap/Factories/EnvMapFactory.js.map +1 -1
  264. package/dist/EnvMap/Loader/EnvMapLoader.d.ts +2 -2
  265. package/dist/EnvMap/Loader/EnvMapLoader.js.map +1 -1
  266. package/dist/EnvMap/Models/TEnvMapFactory.d.ts +1 -1
  267. package/dist/EnvMap/Models/TEnvMapLoader.d.ts +1 -1
  268. package/dist/EnvMap/Models/TEnvMapMetaInfoRegistry.d.ts +1 -1
  269. package/dist/EnvMap/Models/TEnvMapParams.d.ts +1 -1
  270. package/dist/EnvMap/Models/TEnvMapRegistry.d.ts +2 -2
  271. package/dist/EnvMap/Models/TEnvMapResourceConfig.d.ts +1 -1
  272. package/dist/EnvMap/Models/TEnvMapService.d.ts +3 -3
  273. package/dist/EnvMap/Models/TEnvMapTextureAsyncRegistry.d.ts +2 -2
  274. package/dist/EnvMap/Models/TEnvMapTextureOptions.d.ts +1 -1
  275. package/dist/EnvMap/Models/TEnvMapWrapper.d.ts +2 -2
  276. package/dist/EnvMap/Registries/EnvMapMetaInfoRegistry.d.ts +1 -1
  277. package/dist/EnvMap/Registries/EnvMapMetaInfoRegistry.js.map +1 -1
  278. package/dist/EnvMap/Registries/EnvMapRegistry.d.ts +1 -1
  279. package/dist/EnvMap/Registries/EnvMapRegistry.js.map +1 -1
  280. package/dist/EnvMap/Registries/EnvMapTextureAsyncRegistry.d.ts +1 -1
  281. package/dist/EnvMap/Registries/EnvMapTextureAsyncRegistry.js.map +1 -1
  282. package/dist/EnvMap/Services/EnvMapService.d.ts +3 -3
  283. package/dist/EnvMap/Services/EnvMapService.js.map +1 -1
  284. package/dist/EnvMap/Wrappers/EnvMapWrapper.d.ts +1 -1
  285. package/dist/EnvMap/Wrappers/EnvMapWrapper.js.map +1 -1
  286. package/dist/Fog/Adapters/ConfigToParams.d.ts +1 -1
  287. package/dist/Fog/Adapters/ConfigToParams.js.map +1 -1
  288. package/dist/Fog/Adapters/EntityToConfig.d.ts +1 -1
  289. package/dist/Fog/Adapters/EntityToConfig.js.map +1 -1
  290. package/dist/Fog/Factories/FogFactory.d.ts +1 -1
  291. package/dist/Fog/Factories/FogFactory.js.map +1 -1
  292. package/dist/Fog/Models/TFogFactory.d.ts +1 -1
  293. package/dist/Fog/Models/TFogParams.d.ts +1 -1
  294. package/dist/Fog/Models/TFogRegistry.d.ts +1 -1
  295. package/dist/Fog/Models/TFogService.d.ts +2 -2
  296. package/dist/Fog/Models/TFogWrapper.d.ts +2 -2
  297. package/dist/Fog/Registries/FogRegistry.d.ts +1 -1
  298. package/dist/Fog/Registries/FogRegistry.js.map +1 -1
  299. package/dist/Fog/Services/FogService.d.ts +2 -2
  300. package/dist/Fog/Services/FogService.js.map +1 -1
  301. package/dist/Fog/Wrappers/FogWrapper.d.ts +1 -1
  302. package/dist/Fog/Wrappers/FogWrapper.js.map +1 -1
  303. package/dist/Fsm/Adapters/ConfigToParams.d.ts +1 -1
  304. package/dist/Fsm/Adapters/ConfigToParams.js.map +1 -1
  305. package/dist/Fsm/Adapters/EntityToConfig.d.ts +1 -1
  306. package/dist/Fsm/Adapters/EntityToConfig.js.map +1 -1
  307. package/dist/Fsm/Entities/FsmSource.d.ts +1 -1
  308. package/dist/Fsm/Entities/FsmSource.js.map +1 -1
  309. package/dist/Fsm/Factories/FsmInstanceFactory.d.ts +1 -1
  310. package/dist/Fsm/Factories/FsmInstanceFactory.js.map +1 -1
  311. package/dist/Fsm/Factories/FsmSourceFactory.d.ts +1 -1
  312. package/dist/Fsm/Factories/FsmSourceFactory.js.map +1 -1
  313. package/dist/Fsm/Models/TFsmInstanceFactory.d.ts +2 -2
  314. package/dist/Fsm/Models/TFsmInstanceRegistry.d.ts +1 -1
  315. package/dist/Fsm/Models/TFsmInstanceService.d.ts +2 -2
  316. package/dist/Fsm/Models/TFsmParams.d.ts +2 -2
  317. package/dist/Fsm/Models/TFsmService.d.ts +4 -4
  318. package/dist/Fsm/Models/TFsmSource.d.ts +1 -1
  319. package/dist/Fsm/Models/TFsmSourceFactory.d.ts +2 -2
  320. package/dist/Fsm/Models/TFsmSourceRegistry.d.ts +1 -1
  321. package/dist/Fsm/Models/TFsmSourceService.d.ts +2 -2
  322. package/dist/Fsm/Models/TFsmWrapper.d.ts +3 -3
  323. package/dist/Fsm/Registries/FsmInstanceRegistry.d.ts +1 -1
  324. package/dist/Fsm/Registries/FsmInstanceRegistry.js.map +1 -1
  325. package/dist/Fsm/Registries/FsmSourceRegistry.d.ts +1 -1
  326. package/dist/Fsm/Registries/FsmSourceRegistry.js.map +1 -1
  327. package/dist/Fsm/Services/FsmInstanceService.d.ts +2 -2
  328. package/dist/Fsm/Services/FsmInstanceService.js.map +1 -1
  329. package/dist/Fsm/Services/FsmService.d.ts +1 -1
  330. package/dist/Fsm/Services/FsmService.js.map +1 -1
  331. package/dist/Fsm/Services/FsmSourceService.d.ts +1 -1
  332. package/dist/Fsm/Services/FsmSourceService.js.map +1 -1
  333. package/dist/Fsm/Wrappers/FsmWrapper.d.ts +1 -1
  334. package/dist/Fsm/Wrappers/FsmWrapper.js.map +1 -1
  335. package/dist/Global/Decorators/ContainerDecorator.d.ts +1 -1
  336. package/dist/Global/Decorators/ContainerDecorator.js.map +1 -1
  337. package/dist/Global/Models/TContainerDecorator.d.ts +2 -2
  338. package/dist/Global/Utils/ContainerUtils.d.ts +1 -1
  339. package/dist/Global/Utils/ContainerUtils.js.map +1 -1
  340. package/dist/Intersections/Adapters/ConfigToParams.d.ts +5 -5
  341. package/dist/Intersections/Adapters/ConfigToParams.js.map +1 -1
  342. package/dist/Intersections/Adapters/EntityToConfig.d.ts +2 -2
  343. package/dist/Intersections/Adapters/EntityToConfig.js.map +1 -1
  344. package/dist/Intersections/Factories/IntersectionsWatcherFactory.d.ts +1 -1
  345. package/dist/Intersections/Factories/IntersectionsWatcherFactory.js.map +1 -1
  346. package/dist/Intersections/Models/TAbstractIntersectionsWatcher.d.ts +3 -3
  347. package/dist/Intersections/Models/TAbstractIntersectionsWatcherParams.d.ts +2 -2
  348. package/dist/Intersections/Models/TIntersectionsCameraWatcher.d.ts +1 -1
  349. package/dist/Intersections/Models/TIntersectionsCameraWatcherParams.d.ts +1 -1
  350. package/dist/Intersections/Models/TIntersectionsDirectionWatcher.d.ts +2 -2
  351. package/dist/Intersections/Models/TIntersectionsDirectionWatcherParams.d.ts +1 -1
  352. package/dist/Intersections/Models/TIntersectionsLoop.d.ts +1 -1
  353. package/dist/Intersections/Models/TIntersectionsWatcherFactory.d.ts +5 -5
  354. package/dist/Intersections/Models/TIntersectionsWatcherRegistry.d.ts +1 -1
  355. package/dist/Intersections/Models/TIntersectionsWatcherService.d.ts +6 -6
  356. package/dist/Intersections/Registries/IntersectionsWatcherRegistry.d.ts +1 -1
  357. package/dist/Intersections/Registries/IntersectionsWatcherRegistry.js.map +1 -1
  358. package/dist/Intersections/Services/IntersectionsWatcherService.d.ts +1 -1
  359. package/dist/Intersections/Services/IntersectionsWatcherService.js.map +1 -1
  360. package/dist/Intersections/Utils/IntersectionsWatcherUtils.d.ts +2 -2
  361. package/dist/Intersections/Utils/IntersectionsWatcherUtils.js.map +1 -1
  362. package/dist/Intersections/Watchers/AbstractIntersectionsWatcher.d.ts +1 -1
  363. package/dist/Intersections/Watchers/AbstractIntersectionsWatcher.js.map +1 -1
  364. package/dist/Intersections/Watchers/IntersectionsCameraWatcher.d.ts +1 -1
  365. package/dist/Intersections/Watchers/IntersectionsCameraWatcher.js.map +1 -1
  366. package/dist/Intersections/Watchers/IntersectionsDirectionWatcher.d.ts +1 -1
  367. package/dist/Intersections/Watchers/IntersectionsDirectionWatcher.js.map +1 -1
  368. package/dist/Keyboard/Factories/KeyWatcherFactory.d.ts +1 -1
  369. package/dist/Keyboard/Factories/KeyWatcherFactory.js.map +1 -1
  370. package/dist/Keyboard/Models/TGameKey.d.ts +1 -1
  371. package/dist/Keyboard/Models/TKeyComboWatcher.d.ts +1 -1
  372. package/dist/Keyboard/Models/TKeyWatcher.d.ts +1 -1
  373. package/dist/Keyboard/Models/TKeyWatcherFactory.d.ts +1 -1
  374. package/dist/Keyboard/Models/TKeyWatcherParams.d.ts +3 -3
  375. package/dist/Keyboard/Models/TKeyWatcherRegistry.d.ts +1 -1
  376. package/dist/Keyboard/Models/TKeyboardService.d.ts +2 -2
  377. package/dist/Keyboard/Registries/KeyWatcherRegistry.d.ts +1 -1
  378. package/dist/Keyboard/Registries/KeyWatcherRegistry.js.map +1 -1
  379. package/dist/Keyboard/Services/KeyboardService.d.ts +2 -2
  380. package/dist/Keyboard/Services/KeyboardService.js.map +1 -1
  381. package/dist/Keyboard/Utils/KeysRxJsUtils.d.ts +1 -1
  382. package/dist/Keyboard/Utils/KeysRxJsUtils.js.map +1 -1
  383. package/dist/Keyboard/Utils/KeysUtils.d.ts +1 -1
  384. package/dist/Keyboard/Utils/KeysUtils.js.map +1 -1
  385. package/dist/Keyboard/Watchers/KeyComboWatcher.d.ts +1 -1
  386. package/dist/Keyboard/Watchers/KeyComboWatcher.js.map +1 -1
  387. package/dist/Keyboard/Watchers/KeyPressWatcher.d.ts +1 -1
  388. package/dist/Keyboard/Watchers/KeyPressWatcher.js.map +1 -1
  389. package/dist/Keyboard/Watchers/KeyReleaseWatcher.d.ts +1 -1
  390. package/dist/Keyboard/Watchers/KeyReleaseWatcher.js.map +1 -1
  391. package/dist/Kinematic/Adapters/ConfigToParams.d.ts +1 -1
  392. package/dist/Kinematic/Adapters/ConfigToParams.js.map +1 -1
  393. package/dist/Kinematic/Adapters/EntityToConfig.d.ts +2 -2
  394. package/dist/Kinematic/Adapters/EntityToConfig.js.map +1 -1
  395. package/dist/Kinematic/Constants/KinematicConstants.d.ts +2 -2
  396. package/dist/Kinematic/Constants/KinematicConstants.js.map +1 -1
  397. package/dist/Kinematic/Models/TKinematicLoop.d.ts +1 -1
  398. package/dist/Kinematic/Models/TKinematicMethods.d.ts +4 -4
  399. package/dist/Kinematic/Models/TKinematicState.d.ts +3 -3
  400. package/dist/Kinematic/Utils/KinematicUtils.d.ts +1 -1
  401. package/dist/Kinematic/Utils/KinematicUtils.js.map +1 -1
  402. package/dist/Light/Adapters/ConfigToParams.d.ts +1 -1
  403. package/dist/Light/Adapters/ConfigToParams.js.map +1 -1
  404. package/dist/Light/Adapters/EntityToConfig.d.ts +1 -1
  405. package/dist/Light/Adapters/EntityToConfig.js.map +1 -1
  406. package/dist/Light/Factories/LightFactory.d.ts +1 -1
  407. package/dist/Light/Factories/LightFactory.js.map +1 -1
  408. package/dist/Light/Models/TAbstractLightParams.d.ts +4 -4
  409. package/dist/Light/Models/TAbstractLightWrapper.d.ts +4 -4
  410. package/dist/Light/Models/TLightConfig.d.ts +2 -2
  411. package/dist/Light/Models/TLightFactory.d.ts +2 -2
  412. package/dist/Light/Models/TLightRegistry.d.ts +2 -2
  413. package/dist/Light/Models/TLightService.d.ts +2 -2
  414. package/dist/Light/Models/TLightServiceDependencies.d.ts +1 -1
  415. package/dist/Light/Models/TLightTransformAgents.d.ts +2 -2
  416. package/dist/Light/Models/TLightTransformDrive.d.ts +1 -1
  417. package/dist/Light/Models/TShadowCameraConfig.d.ts +1 -1
  418. package/dist/Light/Models/TShadowCameraParams.d.ts +1 -1
  419. package/dist/Light/Registries/LightRegistry.d.ts +1 -1
  420. package/dist/Light/Registries/LightRegistry.js.map +1 -1
  421. package/dist/Light/Services/LightService.d.ts +2 -2
  422. package/dist/Light/Services/LightService.js.map +1 -1
  423. package/dist/Light/TransformDrive/LightTransformDrive.d.ts +1 -1
  424. package/dist/Light/TransformDrive/LightTransformDrive.js.map +1 -1
  425. package/dist/Light/Utils/Utils.d.ts +2 -2
  426. package/dist/Light/Utils/Utils.js.map +1 -1
  427. package/dist/Light/Wrappers/AbstractLightWrapper.d.ts +1 -1
  428. package/dist/Light/Wrappers/AbstractLightWrapper.js.map +1 -1
  429. package/dist/Light/Wrappers/AmbientLightWrapper.d.ts +1 -1
  430. package/dist/Light/Wrappers/AmbientLightWrapper.js.map +1 -1
  431. package/dist/Light/Wrappers/DirectionalLightWrapper.d.ts +1 -1
  432. package/dist/Light/Wrappers/DirectionalLightWrapper.js.map +1 -1
  433. package/dist/Light/Wrappers/HemisphereLightWrapper.d.ts +1 -1
  434. package/dist/Light/Wrappers/HemisphereLightWrapper.js.map +1 -1
  435. package/dist/Light/Wrappers/LightWrapperHelper.d.ts +1 -1
  436. package/dist/Light/Wrappers/LightWrapperHelper.js.map +1 -1
  437. package/dist/Light/Wrappers/PointLightWrapper.d.ts +1 -1
  438. package/dist/Light/Wrappers/PointLightWrapper.js.map +1 -1
  439. package/dist/Light/Wrappers/RectAreaLightWrapper.d.ts +1 -1
  440. package/dist/Light/Wrappers/RectAreaLightWrapper.js.map +1 -1
  441. package/dist/Light/Wrappers/SpotLightWrapper.d.ts +1 -1
  442. package/dist/Light/Wrappers/SpotLightWrapper.js.map +1 -1
  443. package/dist/LoadingManager/Factories/LoadingManagerFactory.d.ts +1 -1
  444. package/dist/LoadingManager/Factories/LoadingManagerFactory.js.map +1 -1
  445. package/dist/LoadingManager/Models/TLoadingEvent.d.ts +1 -1
  446. package/dist/LoadingManager/Models/TLoadingManagerFactory.d.ts +1 -1
  447. package/dist/LoadingManager/Models/TLoadingManagerParams.d.ts +1 -1
  448. package/dist/LoadingManager/Models/TLoadingManagerRegistry.d.ts +1 -1
  449. package/dist/LoadingManager/Models/TLoadingManagerService.d.ts +2 -2
  450. package/dist/LoadingManager/Models/TLoadingManagerWrapper.d.ts +3 -3
  451. package/dist/LoadingManager/Registries/LoadingManagerRegistry.d.ts +1 -1
  452. package/dist/LoadingManager/Registries/LoadingManagerRegistry.js.map +1 -1
  453. package/dist/LoadingManager/Services/LoadingManagerService.d.ts +1 -1
  454. package/dist/LoadingManager/Services/LoadingManagerService.js.map +1 -1
  455. package/dist/LoadingManager/Wrappers/LoadingManagerWrapper.d.ts +1 -1
  456. package/dist/LoadingManager/Wrappers/LoadingManagerWrapper.js.map +1 -1
  457. package/dist/Loop/Constants/LoopsDefaultSettings.d.ts +1 -1
  458. package/dist/Loop/Constants/LoopsDefaultSettings.js.map +1 -1
  459. package/dist/Loop/Entities/DeltaCalculator.d.ts +1 -1
  460. package/dist/Loop/Entities/DeltaCalculator.js.map +1 -1
  461. package/dist/Loop/Entities/Loop.d.ts +1 -1
  462. package/dist/Loop/Entities/Loop.js.map +1 -1
  463. package/dist/Loop/Factories/LoopFactory.d.ts +1 -1
  464. package/dist/Loop/Factories/LoopFactory.js.map +1 -1
  465. package/dist/Loop/Models/TDelta.d.ts +1 -1
  466. package/dist/Loop/Models/TDeltaCalculator.d.ts +1 -1
  467. package/dist/Loop/Models/TLoop.d.ts +3 -3
  468. package/dist/Loop/Models/TLoopFactory.d.ts +1 -1
  469. package/dist/Loop/Models/TLoopParams.d.ts +1 -1
  470. package/dist/Loop/Models/TLoopRegistry.d.ts +1 -1
  471. package/dist/Loop/Models/TLoopService.d.ts +14 -14
  472. package/dist/Loop/Models/TLoopWorkerRequestData.d.ts +1 -1
  473. package/dist/Loop/Models/TLoopWorkerResponseData.d.ts +1 -1
  474. package/dist/Loop/Registries/LoopRegistry.d.ts +1 -1
  475. package/dist/Loop/Registries/LoopRegistry.js.map +1 -1
  476. package/dist/Loop/Services/LoopService.d.ts +1 -1
  477. package/dist/Loop/Services/LoopService.js.map +1 -1
  478. package/dist/Loop/Utils/LoopDebugUtils.d.ts +1 -1
  479. package/dist/Loop/Utils/LoopDebugUtils.js.map +1 -1
  480. package/dist/Loop/Utils/LoopUtils.d.ts +1 -1
  481. package/dist/Loop/Utils/LoopUtils.js.map +1 -1
  482. package/dist/Material/Adapters/ConfigToParams.d.ts +1 -1
  483. package/dist/Material/Adapters/ConfigToParams.js.map +1 -1
  484. package/dist/Material/Adapters/EntityToConfig.d.ts +1 -1
  485. package/dist/Material/Adapters/EntityToConfig.js.map +1 -1
  486. package/dist/Material/Constants/Material/MaterialMap.d.ts +1 -1
  487. package/dist/Material/Constants/Material/MaterialMap.js.map +1 -1
  488. package/dist/Material/Factories/MaterialFactory.d.ts +1 -1
  489. package/dist/Material/Factories/MaterialFactory.js.map +1 -1
  490. package/dist/Material/Mixins/WithMaterial.d.ts +2 -2
  491. package/dist/Material/Mixins/WithMaterial.js.map +1 -1
  492. package/dist/Material/Models/TAnyMaterialWrapper.d.ts +1 -1
  493. package/dist/Material/Models/TMaterialConfigOptions.d.ts +2 -2
  494. package/dist/Material/Models/TMaterialConfigToParamsDependencies.d.ts +1 -1
  495. package/dist/Material/Models/TMaterialEntityToConfigDependencies.d.ts +1 -1
  496. package/dist/Material/Models/TMaterialFactory.d.ts +1 -1
  497. package/dist/Material/Models/TMaterialParams.d.ts +1 -1
  498. package/dist/Material/Models/TMaterialParamsTextures.d.ts +1 -1
  499. package/dist/Material/Models/TMaterialRegistry.d.ts +1 -1
  500. package/dist/Material/Models/TMaterialService.d.ts +2 -2
  501. package/dist/Material/Models/TMaterialServiceDependencies.d.ts +1 -1
  502. package/dist/Material/Models/TWithMaterialType.d.ts +1 -1
  503. package/dist/Material/Registries/MaterialRegistry.d.ts +1 -1
  504. package/dist/Material/Registries/MaterialRegistry.js.map +1 -1
  505. package/dist/Material/Services/MaterialService.d.ts +1 -1
  506. package/dist/Material/Services/MaterialService.js.map +1 -1
  507. package/dist/Material/Utils/MaterialUtils.d.ts +2 -2
  508. package/dist/Material/Utils/MaterialUtils.js.map +1 -1
  509. package/dist/Material/Wrappers/MaterialWrapper.d.ts +1 -1
  510. package/dist/Material/Wrappers/MaterialWrapper.js.map +1 -1
  511. package/dist/Math/Utils/AnglesUtils.d.ts +3 -3
  512. package/dist/Math/Utils/AnglesUtils.js.map +1 -1
  513. package/dist/Math/Utils/DistanceUtils.d.ts +1 -1
  514. package/dist/Math/Utils/DistanceUtils.js.map +1 -1
  515. package/dist/Measurements/Constants/Distance.d.ts +1 -1
  516. package/dist/Measurements/Constants/Distance.js.map +1 -1
  517. package/dist/Measurements/Constants/Time.d.ts +1 -1
  518. package/dist/Measurements/Constants/Time.js.map +1 -1
  519. package/dist/Measurements/Utils/MeasurementsUtils.d.ts +1 -1
  520. package/dist/Measurements/Utils/MeasurementsUtils.js.map +1 -1
  521. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveBy2dMixin.d.ts +1 -1
  522. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveBy2dMixin.js.map +1 -1
  523. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveBy3dMixin.d.ts +1 -1
  524. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveBy3dMixin.js.map +1 -1
  525. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveBy4dMixin.d.ts +1 -1
  526. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveBy4dMixin.js.map +1 -1
  527. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByWMixin.d.ts +1 -1
  528. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByWMixin.js.map +1 -1
  529. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByXMixin.d.ts +1 -1
  530. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByXMixin.js.map +1 -1
  531. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByYMixin.d.ts +1 -1
  532. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByYMixin.js.map +1 -1
  533. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByZMixin.d.ts +1 -1
  534. package/dist/Mixins/GameObjects/Mixins/Movable/WithMoveByZMixin.js.map +1 -1
  535. package/dist/Mixins/GameObjects/Mixins/Position/WithPosition2dMixin.d.ts +1 -1
  536. package/dist/Mixins/GameObjects/Mixins/Position/WithPosition2dMixin.js.map +1 -1
  537. package/dist/Mixins/GameObjects/Mixins/Position/WithPosition3dMixin.d.ts +1 -1
  538. package/dist/Mixins/GameObjects/Mixins/Position/WithPosition3dMixin.js.map +1 -1
  539. package/dist/Mixins/GameObjects/Mixins/Position/WithPosition4dMixin.d.ts +1 -1
  540. package/dist/Mixins/GameObjects/Mixins/Position/WithPosition4dMixin.js.map +1 -1
  541. package/dist/Mixins/GameObjects/Mixins/Position/WithPositionMixin.d.ts +1 -1
  542. package/dist/Mixins/GameObjects/Mixins/Position/WithPositionMixin.js.map +1 -1
  543. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByWMixin.d.ts +1 -1
  544. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByWMixin.js.map +1 -1
  545. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByXMixin.d.ts +1 -1
  546. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByXMixin.js.map +1 -1
  547. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByXyzMixin.d.ts +1 -1
  548. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByXyzMixin.js.map +1 -1
  549. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByYMixin.d.ts +1 -1
  550. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByYMixin.js.map +1 -1
  551. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByZMixin.d.ts +1 -1
  552. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationByZMixin.js.map +1 -1
  553. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationMixin.d.ts +1 -1
  554. package/dist/Mixins/GameObjects/Mixins/Rotatable/WithRotationMixin.js.map +1 -1
  555. package/dist/Mixins/GameObjects/Mixins/Scalable/WithScaleMixin.d.ts +1 -1
  556. package/dist/Mixins/GameObjects/Mixins/Scalable/WithScaleMixin.js.map +1 -1
  557. package/dist/Mixins/GameObjects/Mixins/WithObject3D.d.ts +2 -2
  558. package/dist/Mixins/GameObjects/Mixins/WithObject3D.js.map +1 -1
  559. package/dist/Mixins/Generics/DestroyableMixin.d.ts +1 -1
  560. package/dist/Mixins/Generics/DestroyableMixin.js.map +1 -1
  561. package/dist/Mixins/Generics/ExtractSerializableRegistrableFields.d.ts +1 -1
  562. package/dist/Mixins/Generics/ExtractSerializableRegistrableFields.js.map +1 -1
  563. package/dist/Mixins/Generics/Models/TWithActiveMixinResult.d.ts +1 -1
  564. package/dist/Mixins/Generics/WithActiveEntityServiceMixin.d.ts +2 -2
  565. package/dist/Mixins/Generics/WithActiveEntityServiceMixin.js.map +1 -1
  566. package/dist/Mixins/Generics/WithActiveMixin.d.ts +1 -1
  567. package/dist/Mixins/Generics/WithActiveMixin.js.map +1 -1
  568. package/dist/Mixins/Generics/WithNameAndNameAccessorsMixin.d.ts +1 -1
  569. package/dist/Mixins/Generics/WithNameAndNameAccessorsMixin.js.map +1 -1
  570. package/dist/Mixins/Services/Models/TWithFactoryService.d.ts +1 -1
  571. package/dist/Mixins/Services/Models/TWithLoadResourcesAsyncService.d.ts +1 -1
  572. package/dist/Mixins/Services/Models/TWithLoadResourcesService.d.ts +1 -1
  573. package/dist/Mixins/Services/Models/TWithResourcesMetaInfoRegistryService.d.ts +1 -1
  574. package/dist/Mixins/Services/Models/TWithSceneGetterService.d.ts +1 -1
  575. package/dist/Mixins/Services/Models/TWithSerializableEntities.d.ts +1 -1
  576. package/dist/Mixins/Services/WithCreateFromConfigService.d.ts +2 -2
  577. package/dist/Mixins/Services/WithCreateFromConfigService.js.map +1 -1
  578. package/dist/Mixins/Services/WithCreateService.d.ts +2 -2
  579. package/dist/Mixins/Services/WithCreateService.js.map +1 -1
  580. package/dist/Mixins/Services/WithFactoryService.d.ts +2 -2
  581. package/dist/Mixins/Services/WithFactoryService.js.map +1 -1
  582. package/dist/Mixins/Services/WithRegistryService.d.ts +1 -1
  583. package/dist/Mixins/Services/WithRegistryService.js.map +1 -1
  584. package/dist/Mixins/Services/WithSceneGetterService.d.ts +2 -2
  585. package/dist/Mixins/Services/WithSceneGetterService.js.map +1 -1
  586. package/dist/Mixins/Services/WithSerializableEntities.d.ts +3 -3
  587. package/dist/Mixins/Services/WithSerializableEntities.js.map +1 -1
  588. package/dist/Mixins/Services/WithSerializeAllResources.d.ts +2 -2
  589. package/dist/Mixins/Services/WithSerializeAllResources.js.map +1 -1
  590. package/dist/Models3d/Adapters/ConfigToParams.d.ts +1 -1
  591. package/dist/Models3d/Adapters/ConfigToParams.js.map +1 -1
  592. package/dist/Models3d/Adapters/EntityToConfig.d.ts +1 -1
  593. package/dist/Models3d/Adapters/EntityToConfig.js.map +1 -1
  594. package/dist/Models3d/Entities/Model3d.d.ts +1 -1
  595. package/dist/Models3d/Entities/Model3d.js.map +1 -1
  596. package/dist/Models3d/Factories/Models3dFactory.d.ts +1 -1
  597. package/dist/Models3d/Factories/Models3dFactory.js.map +1 -1
  598. package/dist/Models3d/Loaders/Loader3dCore.d.ts +3 -3
  599. package/dist/Models3d/Loaders/Loader3dCore.js.map +1 -1
  600. package/dist/Models3d/Loaders/Models3dLoader.d.ts +3 -3
  601. package/dist/Models3d/Loaders/Models3dLoader.js.map +1 -1
  602. package/dist/Models3d/Mixins/WithModel3dEntities.d.ts +1 -1
  603. package/dist/Models3d/Mixins/WithModel3dEntities.js.map +1 -1
  604. package/dist/Models3d/Models/TModel3d.d.ts +2 -2
  605. package/dist/Models3d/Models/TModel3dConfig.d.ts +3 -3
  606. package/dist/Models3d/Models/TModel3dConfigToParamsDependencies.d.ts +2 -2
  607. package/dist/Models3d/Models/TModel3dDependencies.d.ts +1 -1
  608. package/dist/Models3d/Models/TModel3dEntities.d.ts +1 -1
  609. package/dist/Models3d/Models/TModel3dOptions.d.ts +1 -1
  610. package/dist/Models3d/Models/TModel3dParams.d.ts +5 -5
  611. package/dist/Models3d/Models/TModel3dRawToModel3dConnectionRegistry.d.ts +1 -1
  612. package/dist/Models3d/Models/TModel3dResourceConfig.d.ts +2 -2
  613. package/dist/Models3d/Models/TModels3dFactory.d.ts +1 -1
  614. package/dist/Models3d/Models/TModels3dLoader.d.ts +1 -1
  615. package/dist/Models3d/Models/TModels3dMetaInfoRegistry.d.ts +1 -1
  616. package/dist/Models3d/Models/TModels3dRegistry.d.ts +1 -1
  617. package/dist/Models3d/Models/TModels3dResourceAsyncRegistry.d.ts +1 -1
  618. package/dist/Models3d/Models/TModels3dService.d.ts +5 -5
  619. package/dist/Models3d/Models/TModels3dServiceDependencies.d.ts +2 -2
  620. package/dist/Models3d/Models/TPrimitiveModel3dParams.d.ts +1 -1
  621. package/dist/Models3d/Models/TWithModel3dEntities.d.ts +1 -1
  622. package/dist/Models3d/Models/index.d.ts +1 -0
  623. package/dist/Models3d/Registries/Model3dRawToModel3dConnectionRegistry.d.ts +1 -1
  624. package/dist/Models3d/Registries/Model3dRawToModel3dConnectionRegistry.js.map +1 -1
  625. package/dist/Models3d/Registries/Models3dMetaInfoRegistry.d.ts +1 -1
  626. package/dist/Models3d/Registries/Models3dMetaInfoRegistry.js.map +1 -1
  627. package/dist/Models3d/Registries/Models3dRegistry.d.ts +1 -1
  628. package/dist/Models3d/Registries/Models3dRegistry.js.map +1 -1
  629. package/dist/Models3d/Registries/Models3dResourceAsyncRegistry.d.ts +1 -1
  630. package/dist/Models3d/Registries/Models3dResourceAsyncRegistry.js.map +1 -1
  631. package/dist/Models3d/Services/Models3dService.d.ts +3 -3
  632. package/dist/Models3d/Services/Models3dService.js.map +1 -1
  633. package/dist/Models3d/Utils/SerializationUtils.d.ts +1 -1
  634. package/dist/Models3d/Utils/SerializationUtils.js.map +1 -1
  635. package/dist/Models3d/Utils/UtilsModel3d.d.ts +3 -3
  636. package/dist/Models3d/Utils/UtilsModel3d.js.map +1 -1
  637. package/dist/Models3d/Utils/UtilsModels3dService.d.ts +2 -2
  638. package/dist/Models3d/Utils/UtilsModels3dService.js.map +1 -1
  639. package/dist/Models3d/Utils/UtilsPrimitiveModels3d.d.ts +2 -2
  640. package/dist/Models3d/Utils/UtilsPrimitiveModels3d.js.map +1 -1
  641. package/dist/Mouse/Factories/MouseClickWatcherFactory.d.ts +1 -1
  642. package/dist/Mouse/Factories/MouseClickWatcherFactory.js.map +1 -1
  643. package/dist/Mouse/Factories/MousePositionWatcherFactory.d.ts +1 -1
  644. package/dist/Mouse/Factories/MousePositionWatcherFactory.js.map +1 -1
  645. package/dist/Mouse/Models/TMouseClickWatcher.d.ts +1 -1
  646. package/dist/Mouse/Models/TMouseClickWatcherFactory.d.ts +1 -1
  647. package/dist/Mouse/Models/TMouseClickWatcherParams.d.ts +2 -2
  648. package/dist/Mouse/Models/TMouseClickWatcherRegistry.d.ts +1 -1
  649. package/dist/Mouse/Models/TMouseLoop.d.ts +1 -1
  650. package/dist/Mouse/Models/TMousePositionWatcher.d.ts +1 -1
  651. package/dist/Mouse/Models/TMousePositionWatcherFactory.d.ts +2 -2
  652. package/dist/Mouse/Models/TMousePositionWatcherParams.d.ts +2 -2
  653. package/dist/Mouse/Models/TMousePositionWatcherRegistry.d.ts +1 -1
  654. package/dist/Mouse/Models/TMouseService.d.ts +1 -1
  655. package/dist/Mouse/Models/TMouseWatcherEvent.d.ts +1 -1
  656. package/dist/Mouse/Registries/MouseClickWatcherRegistry.d.ts +1 -1
  657. package/dist/Mouse/Registries/MouseClickWatcherRegistry.js.map +1 -1
  658. package/dist/Mouse/Registries/MousePositionWatcherRegistry.d.ts +1 -1
  659. package/dist/Mouse/Registries/MousePositionWatcherRegistry.js.map +1 -1
  660. package/dist/Mouse/Services/MouseService.d.ts +3 -3
  661. package/dist/Mouse/Services/MouseService.js.map +1 -1
  662. package/dist/Mouse/Utils/MouseUtils.d.ts +2 -2
  663. package/dist/Mouse/Utils/MouseUtils.js.map +1 -1
  664. package/dist/Mouse/Watchers/MouseClickWatcher.d.ts +1 -1
  665. package/dist/Mouse/Watchers/MouseClickWatcher.js.map +1 -1
  666. package/dist/Mouse/Watchers/MousePositionWatcher.d.ts +1 -1
  667. package/dist/Mouse/Watchers/MousePositionWatcher.js.map +1 -1
  668. package/dist/Particles/Adapters/ConfigToParams.d.ts +1 -1
  669. package/dist/Particles/Adapters/ConfigToParams.js.map +1 -1
  670. package/dist/Particles/Adapters/EntityToConfig.d.ts +1 -1
  671. package/dist/Particles/Adapters/EntityToConfig.js.map +1 -1
  672. package/dist/Particles/Factories/ParticlesFactory.d.ts +1 -1
  673. package/dist/Particles/Factories/ParticlesFactory.js.map +1 -1
  674. package/dist/Particles/Models/TParticlesConfig.d.ts +1 -1
  675. package/dist/Particles/Models/TParticlesConfigToParamsDependencies.d.ts +1 -1
  676. package/dist/Particles/Models/TParticlesFactory.d.ts +1 -1
  677. package/dist/Particles/Models/TParticlesParams.d.ts +4 -4
  678. package/dist/Particles/Models/TParticlesRegistry.d.ts +1 -1
  679. package/dist/Particles/Models/TParticlesService.d.ts +2 -2
  680. package/dist/Particles/Models/TParticlesServiceDependencies.d.ts +2 -2
  681. package/dist/Particles/Models/TParticlesTransformAgents.d.ts +2 -2
  682. package/dist/Particles/Models/TParticlesTransformDrive.d.ts +1 -1
  683. package/dist/Particles/Models/TParticlesWrapper.d.ts +6 -6
  684. package/dist/Particles/Registries/ParticlesRegistry.d.ts +1 -1
  685. package/dist/Particles/Registries/ParticlesRegistry.js.map +1 -1
  686. package/dist/Particles/Services/ParticlesService.d.ts +2 -2
  687. package/dist/Particles/Services/ParticlesService.js.map +1 -1
  688. package/dist/Particles/TransformDrive/ParticlesTransformDrive.d.ts +1 -1
  689. package/dist/Particles/TransformDrive/ParticlesTransformDrive.js.map +1 -1
  690. package/dist/Particles/Wrappers/ParticlesWrapper.d.ts +1 -1
  691. package/dist/Particles/Wrappers/ParticlesWrapper.js.map +1 -1
  692. package/dist/Physics/Adapters/EntityToConfig.d.ts +1 -1
  693. package/dist/Physics/Adapters/EntityToConfig.js.map +1 -1
  694. package/dist/Physics/Adapters/PhysicsBodyConfigToParams.d.ts +1 -1
  695. package/dist/Physics/Adapters/PhysicsBodyConfigToParams.js.map +1 -1
  696. package/dist/Physics/Adapters/PhysicsWorldConfigToParams.d.ts +1 -1
  697. package/dist/Physics/Adapters/PhysicsWorldConfigToParams.js.map +1 -1
  698. package/dist/Physics/Constants/RigidBodyTypesMap.d.ts +1 -1
  699. package/dist/Physics/Constants/RigidBodyTypesMap.js +1 -1
  700. package/dist/Physics/Constants/RigidBodyTypesMap.js.map +1 -1
  701. package/dist/Physics/Entities/PhysicsBody.d.ts +1 -1
  702. package/dist/Physics/Entities/PhysicsBody.js.map +1 -1
  703. package/dist/Physics/Entities/PhysicsBodyUtils.d.ts +1 -1
  704. package/dist/Physics/Entities/PhysicsBodyUtils.js.map +1 -1
  705. package/dist/Physics/Factories/PhysicsBodyFactory.d.ts +1 -1
  706. package/dist/Physics/Factories/PhysicsBodyFactory.js.map +1 -1
  707. package/dist/Physics/Mixins/WithPhysicsBodyEntities.d.ts +1 -1
  708. package/dist/Physics/Mixins/WithPhysicsBodyEntities.js.map +1 -1
  709. package/dist/Physics/Models/TPhysicsBody.d.ts +2 -2
  710. package/dist/Physics/Models/TPhysicsBodyConfig.d.ts +1 -1
  711. package/dist/Physics/Models/TPhysicsBodyFactory.d.ts +1 -1
  712. package/dist/Physics/Models/TPhysicsBodyParams.d.ts +3 -3
  713. package/dist/Physics/Models/TPhysicsBodyRegistry.d.ts +1 -1
  714. package/dist/Physics/Models/TPhysicsBodyService.d.ts +3 -3
  715. package/dist/Physics/Models/TPhysicsDebugRenderer.d.ts +1 -1
  716. package/dist/Physics/Models/TPhysicsLoop.d.ts +1 -1
  717. package/dist/Physics/Models/TPhysicsWorldService.d.ts +2 -2
  718. package/dist/Physics/Registries/PhysicsBodyRegistry.d.ts +1 -1
  719. package/dist/Physics/Registries/PhysicsBodyRegistry.js.map +1 -1
  720. package/dist/Physics/Renderers/PhysicsDebugRenderer.d.ts +2 -2
  721. package/dist/Physics/Renderers/PhysicsDebugRenderer.js.map +1 -1
  722. package/dist/Physics/Services/PhysicsBodyService.d.ts +1 -1
  723. package/dist/Physics/Services/PhysicsBodyService.js.map +1 -1
  724. package/dist/Physics/Services/PhysicsWorldService.d.ts +3 -3
  725. package/dist/Physics/Services/PhysicsWorldService.js.map +1 -1
  726. package/dist/Physics/Utils/ParamsUtils.d.ts +1 -1
  727. package/dist/Physics/Utils/ParamsUtils.js.map +1 -1
  728. package/dist/Physics/Utils/PhysicsMovementUtils.d.ts +4 -4
  729. package/dist/Physics/Utils/PhysicsMovementUtils.js.map +1 -1
  730. package/dist/Renderer/Adapters/ConfigToParams.d.ts +1 -1
  731. package/dist/Renderer/Adapters/ConfigToParams.js.map +1 -1
  732. package/dist/Renderer/Adapters/EntityToConfig.d.ts +1 -1
  733. package/dist/Renderer/Adapters/EntityToConfig.js.map +1 -1
  734. package/dist/Renderer/Factories/RendererFactory.d.ts +1 -1
  735. package/dist/Renderer/Factories/RendererFactory.js.map +1 -1
  736. package/dist/Renderer/Loop/RendererLoopEffect.d.ts +4 -4
  737. package/dist/Renderer/Loop/RendererLoopEffect.js.map +1 -1
  738. package/dist/Renderer/Mixins/WithThreeJsRendererParamsAccessors.d.ts +1 -1
  739. package/dist/Renderer/Mixins/WithThreeJsRendererParamsAccessors.js.map +1 -1
  740. package/dist/Renderer/Mixins/WithThreeJsRendererPropsAccessors.d.ts +1 -1
  741. package/dist/Renderer/Mixins/WithThreeJsRendererPropsAccessors.js.map +1 -1
  742. package/dist/Renderer/Models/TRendererFactory.d.ts +1 -1
  743. package/dist/Renderer/Models/TRendererParams.d.ts +2 -2
  744. package/dist/Renderer/Models/TRendererRegistry.d.ts +1 -1
  745. package/dist/Renderer/Models/TRendererService.d.ts +2 -2
  746. package/dist/Renderer/Models/TRendererServiceDependencies.d.ts +2 -2
  747. package/dist/Renderer/Models/TRendererWrapper.d.ts +2 -2
  748. package/dist/Renderer/Models/TRendererWrapperDependencies.d.ts +2 -2
  749. package/dist/Renderer/Registries/RendererRegistry.d.ts +1 -1
  750. package/dist/Renderer/Registries/RendererRegistry.js.map +1 -1
  751. package/dist/Renderer/Services/RendererService.d.ts +3 -3
  752. package/dist/Renderer/Services/RendererService.js.map +1 -1
  753. package/dist/Renderer/Wrappers/Accessors.d.ts +1 -1
  754. package/dist/Renderer/Wrappers/Accessors.js.map +1 -1
  755. package/dist/Renderer/Wrappers/RendererWrapper.d.ts +1 -1
  756. package/dist/Renderer/Wrappers/RendererWrapper.js.map +1 -1
  757. package/dist/Scene/Adapters/ConfigToParams.d.ts +1 -1
  758. package/dist/Scene/Adapters/ConfigToParams.js.map +1 -1
  759. package/dist/Scene/Adapters/EntityToConfig.d.ts +1 -1
  760. package/dist/Scene/Adapters/EntityToConfig.js.map +1 -1
  761. package/dist/Scene/Factories/SceneFactory.d.ts +1 -1
  762. package/dist/Scene/Factories/SceneFactory.js.map +1 -1
  763. package/dist/Scene/Models/TSceneAccessors.d.ts +10 -10
  764. package/dist/Scene/Models/TSceneConfig.d.ts +1 -1
  765. package/dist/Scene/Models/TSceneFactory.d.ts +1 -1
  766. package/dist/Scene/Models/TSceneObject.d.ts +1 -1
  767. package/dist/Scene/Models/TSceneParams.d.ts +3 -3
  768. package/dist/Scene/Models/TSceneRegistry.d.ts +1 -1
  769. package/dist/Scene/Models/TSceneWrapper.d.ts +2 -2
  770. package/dist/Scene/Models/TScenesService.d.ts +2 -2
  771. package/dist/Scene/Registries/SceneRegistry.d.ts +1 -1
  772. package/dist/Scene/Registries/SceneRegistry.js.map +1 -1
  773. package/dist/Scene/Services/ScenesService.d.ts +1 -1
  774. package/dist/Scene/Services/ScenesService.js.map +1 -1
  775. package/dist/Scene/Wrappers/SceneWrapper.d.ts +1 -1
  776. package/dist/Scene/Wrappers/SceneWrapper.js.map +1 -1
  777. package/dist/Space/Adapters/ConfigToParams.d.ts +1 -1
  778. package/dist/Space/Adapters/ConfigToParams.js.map +1 -1
  779. package/dist/Space/Adapters/EntityToConfig.d.ts +1 -1
  780. package/dist/Space/Adapters/EntityToConfig.js.map +1 -1
  781. package/dist/Space/Entities/Space.d.ts +1 -1
  782. package/dist/Space/Entities/Space.js.map +1 -1
  783. package/dist/Space/Entities/SpaceFromConfig.d.ts +1 -1
  784. package/dist/Space/Entities/SpaceFromConfig.js.map +1 -1
  785. package/dist/Space/Factories/SpaceFactory.d.ts +1 -1
  786. package/dist/Space/Factories/SpaceFactory.js.map +1 -1
  787. package/dist/Space/Models/TRenderLoop.d.ts +1 -1
  788. package/dist/Space/Models/TSpace.d.ts +2 -2
  789. package/dist/Space/Models/TSpaceBaseServices.d.ts +2 -2
  790. package/dist/Space/Models/TSpaceConfig.d.ts +1 -1
  791. package/dist/Space/Models/TSpaceConfigEntities.d.ts +16 -16
  792. package/dist/Space/Models/TSpaceConfigResources.d.ts +5 -5
  793. package/dist/Space/Models/TSpaceEvents.d.ts +1 -1
  794. package/dist/Space/Models/TSpaceFactory.d.ts +1 -1
  795. package/dist/Space/Models/TSpaceLoops.d.ts +10 -10
  796. package/dist/Space/Models/TSpaceParams.d.ts +3 -3
  797. package/dist/Space/Models/TSpaceParamsEntities.d.ts +16 -16
  798. package/dist/Space/Models/TSpaceRegistry.d.ts +1 -1
  799. package/dist/Space/Models/TSpaceService.d.ts +2 -2
  800. package/dist/Space/Models/TSpaceServices.d.ts +25 -25
  801. package/dist/Space/Models/TSpaceSettings.d.ts +2 -2
  802. package/dist/Space/Registries/SpaceRegistry.d.ts +1 -1
  803. package/dist/Space/Registries/SpaceRegistry.js.map +1 -1
  804. package/dist/Space/Services/SpaceService.d.ts +1 -1
  805. package/dist/Space/Services/SpaceService.js.map +1 -1
  806. package/dist/Space/Utils/CanvasUtils.d.ts +2 -2
  807. package/dist/Space/Utils/CanvasUtils.js.map +1 -1
  808. package/dist/Space/Utils/CreateEntitiesUtils.d.ts +3 -3
  809. package/dist/Space/Utils/CreateEntitiesUtils.js.map +1 -1
  810. package/dist/Space/Utils/CreateLoopsUtils.d.ts +2 -2
  811. package/dist/Space/Utils/CreateLoopsUtils.js.map +1 -1
  812. package/dist/Space/Utils/LoadResourcesUtils.d.ts +1 -1
  813. package/dist/Space/Utils/LoadResourcesUtils.js.map +1 -1
  814. package/dist/Space/Utils/PrepareServicesUtils.d.ts +3 -3
  815. package/dist/Space/Utils/PrepareServicesUtils.js.map +1 -1
  816. package/dist/Space/Utils/SchemaValidationUtils.d.ts +6 -6
  817. package/dist/Space/Utils/SchemaValidationUtils.js.map +1 -1
  818. package/dist/Space/Validators/SchemasValidator.d.ts +1 -1
  819. package/dist/Space/Validators/SchemasValidator.js.map +1 -1
  820. package/dist/Space/Validators/ValidateConfig.d.ts +1 -1
  821. package/dist/Space/Validators/ValidateConfig.js.map +1 -1
  822. package/dist/Space/Validators/ValidateSpace.d.ts +1 -1
  823. package/dist/Space/Validators/ValidateSpace.js.map +1 -1
  824. package/dist/Spatial/Adapters/ConfigToParams.d.ts +1 -1
  825. package/dist/Spatial/Adapters/ConfigToParams.js.map +1 -1
  826. package/dist/Spatial/Adapters/ConfigToParamsSpatialData.d.ts +1 -1
  827. package/dist/Spatial/Adapters/ConfigToParamsSpatialData.js.map +1 -1
  828. package/dist/Spatial/Adapters/EntityToConfig.d.ts +1 -1
  829. package/dist/Spatial/Adapters/EntityToConfig.js.map +1 -1
  830. package/dist/Spatial/Factories/SpatialGridFactory.d.ts +1 -1
  831. package/dist/Spatial/Factories/SpatialGridFactory.js.map +1 -1
  832. package/dist/Spatial/Mixins/WithReactivePosition.d.ts +1 -1
  833. package/dist/Spatial/Mixins/WithReactivePosition.js.map +1 -1
  834. package/dist/Spatial/Mixins/WithReactiveRotation.d.ts +1 -1
  835. package/dist/Spatial/Mixins/WithReactiveRotation.js.map +1 -1
  836. package/dist/Spatial/Mixins/WithSpatial.d.ts +2 -2
  837. package/dist/Spatial/Mixins/WithSpatial.js.map +1 -1
  838. package/dist/Spatial/Mixins/WithUpdateSpatialCell.d.ts +1 -1
  839. package/dist/Spatial/Mixins/WithUpdateSpatialCell.js.map +1 -1
  840. package/dist/Spatial/Models/TParamsFromConfigSpatial.d.ts +1 -1
  841. package/dist/Spatial/Models/TSpatialCell.d.ts +1 -1
  842. package/dist/Spatial/Models/TSpatialCellParams.d.ts +1 -1
  843. package/dist/Spatial/Models/TSpatialCellWrapper.d.ts +3 -3
  844. package/dist/Spatial/Models/TSpatialData.d.ts +1 -1
  845. package/dist/Spatial/Models/TSpatialGridFactory.d.ts +1 -1
  846. package/dist/Spatial/Models/TSpatialGridParams.d.ts +1 -1
  847. package/dist/Spatial/Models/TSpatialGridRegistry.d.ts +1 -1
  848. package/dist/Spatial/Models/TSpatialGridService.d.ts +2 -2
  849. package/dist/Spatial/Models/TSpatialGridWrapper.d.ts +4 -4
  850. package/dist/Spatial/Models/TSpatialLoop.d.ts +1 -1
  851. package/dist/Spatial/Models/TSpatialMethods.d.ts +1 -1
  852. package/dist/Spatial/Models/TSpatialPerformanceOptions.d.ts +1 -1
  853. package/dist/Spatial/Models/TWithSpatial.d.ts +1 -1
  854. package/dist/Spatial/Models/TWithUpdateSpatialCell.d.ts +1 -1
  855. package/dist/Spatial/Registries/SpatialGridRegistry.d.ts +1 -1
  856. package/dist/Spatial/Registries/SpatialGridRegistry.js.map +1 -1
  857. package/dist/Spatial/Services/SpatialGridService.d.ts +1 -1
  858. package/dist/Spatial/Services/SpatialGridService.js.map +1 -1
  859. package/dist/Spatial/Services/SpatialHelper.d.ts +1 -1
  860. package/dist/Spatial/Services/SpatialHelper.js.map +1 -1
  861. package/dist/Spatial/Wrappers/SpatialCellWrapper.d.ts +1 -1
  862. package/dist/Spatial/Wrappers/SpatialCellWrapper.js.map +1 -1
  863. package/dist/Spatial/Wrappers/SpatialGridWrapper.d.ts +1 -1
  864. package/dist/Spatial/Wrappers/SpatialGridWrapper.js.map +1 -1
  865. package/dist/Text/Adapters/ConfigToParams.d.ts +1 -1
  866. package/dist/Text/Adapters/ConfigToParams.js.map +1 -1
  867. package/dist/Text/Adapters/EntityToConfig.d.ts +1 -1
  868. package/dist/Text/Adapters/EntityToConfig.js.map +1 -1
  869. package/dist/Text/Factories/TextFactory.d.ts +1 -1
  870. package/dist/Text/Factories/TextFactory.js.map +1 -1
  871. package/dist/Text/Loop/TextLoopEffect.d.ts +3 -3
  872. package/dist/Text/Loop/TextLoopEffect.js.map +1 -1
  873. package/dist/Text/Models/TAbstractTextWrapper.d.ts +3 -3
  874. package/dist/Text/Models/TTextConfig.d.ts +2 -2
  875. package/dist/Text/Models/TTextCssProps.d.ts +2 -2
  876. package/dist/Text/Models/TTextFactory.d.ts +2 -2
  877. package/dist/Text/Models/TTextLoop.d.ts +1 -1
  878. package/dist/Text/Models/TTextParams.d.ts +6 -6
  879. package/dist/Text/Models/TTextRegistry.d.ts +2 -2
  880. package/dist/Text/Models/TTextRenderer.d.ts +2 -2
  881. package/dist/Text/Models/TTextRendererRegistry.d.ts +1 -1
  882. package/dist/Text/Models/TTextService.d.ts +3 -3
  883. package/dist/Text/Models/TTextServiceDependencies.d.ts +4 -4
  884. package/dist/Text/Models/TTextTextureWrapper.d.ts +3 -3
  885. package/dist/Text/Models/TTextTransformAgents.d.ts +1 -1
  886. package/dist/Text/Models/TTextTransformDrive.d.ts +1 -1
  887. package/dist/Text/Models/TTextTransformDriveDependencies.d.ts +2 -2
  888. package/dist/Text/Models/TTextWrapper.d.ts +4 -4
  889. package/dist/Text/Models/index.d.ts +1 -0
  890. package/dist/Text/Registries/Text2dRegistry.d.ts +1 -1
  891. package/dist/Text/Registries/Text2dRegistry.js.map +1 -1
  892. package/dist/Text/Registries/Text2dRendererRegistry.d.ts +1 -1
  893. package/dist/Text/Registries/Text2dRendererRegistry.js.map +1 -1
  894. package/dist/Text/Registries/Text3dRegistry.d.ts +1 -1
  895. package/dist/Text/Registries/Text3dRegistry.js.map +1 -1
  896. package/dist/Text/Registries/Text3dRendererRegistry.d.ts +1 -1
  897. package/dist/Text/Registries/Text3dRendererRegistry.js.map +1 -1
  898. package/dist/Text/Registries/Text3dTextureRegistry.d.ts +1 -1
  899. package/dist/Text/Registries/Text3dTextureRegistry.js.map +1 -1
  900. package/dist/Text/Renderers/Text2dRenderer.d.ts +2 -2
  901. package/dist/Text/Renderers/Text2dRenderer.js.map +1 -1
  902. package/dist/Text/Renderers/Text3dRenderer.d.ts +2 -2
  903. package/dist/Text/Renderers/Text3dRenderer.js.map +1 -1
  904. package/dist/Text/Renderers/TextRendererBuilder.d.ts +3 -3
  905. package/dist/Text/Renderers/TextRendererBuilder.js.map +1 -1
  906. package/dist/Text/Services/TextService.d.ts +3 -3
  907. package/dist/Text/Services/TextService.js.map +1 -1
  908. package/dist/Text/TransformDrive/TextTransformDrive.d.ts +1 -1
  909. package/dist/Text/TransformDrive/TextTransformDrive.js.map +1 -1
  910. package/dist/Text/Utils/TextUtils.d.ts +1 -1
  911. package/dist/Text/Utils/TextUtils.js.map +1 -1
  912. package/dist/Text/Wrappers/Accessors.d.ts +1 -1
  913. package/dist/Text/Wrappers/Accessors.js.map +1 -1
  914. package/dist/Text/Wrappers/Text2dWrapper.d.ts +1 -1
  915. package/dist/Text/Wrappers/Text2dWrapper.js.map +1 -1
  916. package/dist/Text/Wrappers/Text3dTextureWrapper.d.ts +1 -1
  917. package/dist/Text/Wrappers/Text3dTextureWrapper.js.map +1 -1
  918. package/dist/Text/Wrappers/Text3dWrapper.d.ts +1 -1
  919. package/dist/Text/Wrappers/Text3dWrapper.js.map +1 -1
  920. package/dist/Text/Wrappers/TextTextureWrapper.d.ts +2 -2
  921. package/dist/Text/Wrappers/TextTextureWrapper.js.map +1 -1
  922. package/dist/Text/Wrappers/TextWrapper.d.ts +2 -2
  923. package/dist/Text/Wrappers/TextWrapper.js.map +1 -1
  924. package/dist/Text/Wrappers/TextWrapperBuilder.d.ts +1 -1
  925. package/dist/Text/Wrappers/TextWrapperBuilder.js.map +1 -1
  926. package/dist/Text/Wrappers/TextWrapperHelper.d.ts +3 -3
  927. package/dist/Text/Wrappers/TextWrapperHelper.js.map +1 -1
  928. package/dist/Texture/Loaders/TexturesLoader.d.ts +2 -2
  929. package/dist/Texture/Loaders/TexturesLoader.js.map +1 -1
  930. package/dist/Texture/Models/TTextureAsyncRegistry.d.ts +1 -1
  931. package/dist/Texture/Models/TTextureMetaInfoRegistry.d.ts +1 -1
  932. package/dist/Texture/Models/TTextureResourceConfig.d.ts +1 -1
  933. package/dist/Texture/Models/TTextureService.d.ts +2 -2
  934. package/dist/Texture/Models/TTexturesLoader.d.ts +1 -1
  935. package/dist/Texture/Registries/TextureMetaInfoRegistry.d.ts +1 -1
  936. package/dist/Texture/Registries/TextureMetaInfoRegistry.js.map +1 -1
  937. package/dist/Texture/Registries/TextureResourceAsyncRegistry.d.ts +1 -1
  938. package/dist/Texture/Registries/TextureResourceAsyncRegistry.js.map +1 -1
  939. package/dist/Texture/Services/TextureService.d.ts +2 -2
  940. package/dist/Texture/Services/TextureService.js.map +1 -1
  941. package/dist/Texture/Utils/TextureServiceHelper.d.ts +1 -1
  942. package/dist/Texture/Utils/TextureServiceHelper.js.map +1 -1
  943. package/dist/ThreeLib/Models/TBoxGeometryParams.d.ts +1 -1
  944. package/dist/ThreeLib/Models/TPlaneGeometryParams.d.ts +1 -1
  945. package/dist/ThreeLib/Models/TSphereGeometryParams.d.ts +1 -1
  946. package/dist/ThreeLib/Utils/Object3dUtils.d.ts +1 -1
  947. package/dist/ThreeLib/Utils/Object3dUtils.js.map +1 -1
  948. package/dist/TransformDrive/Adapters/EntityToConfig.d.ts +1 -1
  949. package/dist/TransformDrive/Adapters/EntityToConfig.js.map +1 -1
  950. package/dist/TransformDrive/Entities/Agents/AbstractTransformAgent.d.ts +2 -2
  951. package/dist/TransformDrive/Entities/Agents/AbstractTransformAgent.js.map +1 -1
  952. package/dist/TransformDrive/Entities/Agents/ConnectedTransformAgent.d.ts +1 -1
  953. package/dist/TransformDrive/Entities/Agents/ConnectedTransformAgent.js.map +1 -1
  954. package/dist/TransformDrive/Entities/Agents/DefaultTransformAgent.d.ts +1 -1
  955. package/dist/TransformDrive/Entities/Agents/DefaultTransformAgent.js.map +1 -1
  956. package/dist/TransformDrive/Entities/Agents/KinematicTransformAgent.d.ts +1 -1
  957. package/dist/TransformDrive/Entities/Agents/KinematicTransformAgent.js.map +1 -1
  958. package/dist/TransformDrive/Entities/Agents/PhysicsTransformAgent.d.ts +1 -1
  959. package/dist/TransformDrive/Entities/Agents/PhysicsTransformAgent.js.map +1 -1
  960. package/dist/TransformDrive/Entities/Connectors/DriveToTargetConnector.d.ts +2 -2
  961. package/dist/TransformDrive/Entities/Connectors/DriveToTargetConnector.js.map +1 -1
  962. package/dist/TransformDrive/Entities/Drive/TransformDrive.d.ts +2 -2
  963. package/dist/TransformDrive/Entities/Drive/TransformDrive.js.map +1 -1
  964. package/dist/TransformDrive/Factories/TransformDriveFactory.d.ts +1 -1
  965. package/dist/TransformDrive/Factories/TransformDriveFactory.js.map +1 -1
  966. package/dist/TransformDrive/Mixins/WithMutablePositionConnector.d.ts +2 -2
  967. package/dist/TransformDrive/Mixins/WithMutablePositionConnector.js.map +1 -1
  968. package/dist/TransformDrive/Mixins/WithMutableRotationConnector.d.ts +2 -2
  969. package/dist/TransformDrive/Mixins/WithMutableRotationConnector.js.map +1 -1
  970. package/dist/TransformDrive/Mixins/WithMutableScaleConnector.d.ts +2 -2
  971. package/dist/TransformDrive/Mixins/WithMutableScaleConnector.js.map +1 -1
  972. package/dist/TransformDrive/Mixins/WithProxyTransform.d.ts +2 -2
  973. package/dist/TransformDrive/Mixins/WithProxyTransform.js.map +1 -1
  974. package/dist/TransformDrive/Models/TAbstractTransformAgent.d.ts +3 -3
  975. package/dist/TransformDrive/Models/TConnectedTransformAgent.d.ts +1 -1
  976. package/dist/TransformDrive/Models/TDefaultTransformAgent.d.ts +1 -1
  977. package/dist/TransformDrive/Models/TDriveToTargetConnector.d.ts +1 -1
  978. package/dist/TransformDrive/Models/TGetTransformAgentsParams.d.ts +3 -3
  979. package/dist/TransformDrive/Models/TKinematicAgentDependencies.d.ts +1 -1
  980. package/dist/TransformDrive/Models/TKinematicSpeed.d.ts +2 -2
  981. package/dist/TransformDrive/Models/TKinematicTransformAgent.d.ts +2 -2
  982. package/dist/TransformDrive/Models/TKinematicTransformAgentParams.d.ts +1 -1
  983. package/dist/TransformDrive/Models/TOffsets.d.ts +1 -1
  984. package/dist/TransformDrive/Models/TPhysicsAgentDependencies.d.ts +1 -1
  985. package/dist/TransformDrive/Models/TPhysicsTransformAgent.d.ts +2 -2
  986. package/dist/TransformDrive/Models/TPhysicsTransformAgentParams.d.ts +1 -1
  987. package/dist/TransformDrive/Models/TReadonlyTransform.d.ts +1 -1
  988. package/dist/TransformDrive/Models/TTransformAgentPerformanceParams.d.ts +1 -1
  989. package/dist/TransformDrive/Models/TTransformAgents.d.ts +1 -1
  990. package/dist/TransformDrive/Models/TTransformDrive.d.ts +4 -4
  991. package/dist/TransformDrive/Models/TTransformDriveFactory.d.ts +1 -1
  992. package/dist/TransformDrive/Models/TTransformDriveFactoryParams.d.ts +1 -1
  993. package/dist/TransformDrive/Models/TTransformDriveParams.d.ts +1 -1
  994. package/dist/TransformDrive/Models/TTransformDrivePerformanceOptions.d.ts +1 -1
  995. package/dist/TransformDrive/Models/TTransformDriveRegistry.d.ts +1 -1
  996. package/dist/TransformDrive/Models/TTransformDriveSerializedData.d.ts +3 -3
  997. package/dist/TransformDrive/Models/TTransformDriveService.d.ts +3 -3
  998. package/dist/TransformDrive/Models/TTransformDriveServiceDependencies.d.ts +1 -1
  999. package/dist/TransformDrive/Models/TTransformLoop.d.ts +1 -1
  1000. package/dist/TransformDrive/Models/TWithMutableRotationConnector.d.ts +1 -1
  1001. package/dist/TransformDrive/Models/TWithTransformAgentParam.d.ts +1 -1
  1002. package/dist/TransformDrive/Registries/TransformDriveRegistry.d.ts +1 -1
  1003. package/dist/TransformDrive/Registries/TransformDriveRegistry.js.map +1 -1
  1004. package/dist/TransformDrive/Services/TransformDriveService.d.ts +1 -1
  1005. package/dist/TransformDrive/Services/TransformDriveService.js.map +1 -1
  1006. package/dist/TransformDrive/Utils/ActorDriveUtils.d.ts +1 -1
  1007. package/dist/TransformDrive/Utils/ActorDriveUtils.js.map +1 -1
  1008. package/dist/TransformDrive/Utils/AgentUtils.d.ts +2 -2
  1009. package/dist/TransformDrive/Utils/AgentUtils.js.map +1 -1
  1010. package/dist/TransformDrive/Utils/KinematicAgentUtils.d.ts +4 -4
  1011. package/dist/TransformDrive/Utils/KinematicAgentUtils.js.map +1 -1
  1012. package/dist/TransformDrive/Utils/PhysicsTransformAgentUtils.d.ts +4 -4
  1013. package/dist/TransformDrive/Utils/PhysicsTransformAgentUtils.js.map +1 -1
  1014. package/dist/TransformDrive/Utils/TransformDriveUtils.d.ts +3 -3
  1015. package/dist/TransformDrive/Utils/TransformDriveUtils.js.map +1 -1
  1016. package/dist/Utils/CheckUtils.d.ts +5 -5
  1017. package/dist/Utils/CheckUtils.js.map +1 -1
  1018. package/dist/Utils/CoordsUtils.d.ts +2 -2
  1019. package/dist/Utils/CoordsUtils.js.map +1 -1
  1020. package/dist/Utils/DestroyUtils.d.ts +4 -4
  1021. package/dist/Utils/DestroyUtils.js.map +1 -1
  1022. package/dist/Utils/DomUtils.d.ts +2 -2
  1023. package/dist/Utils/DomUtils.js.map +1 -1
  1024. package/dist/Utils/EntityUtils.d.ts +1 -1
  1025. package/dist/Utils/EntityUtils.js.map +1 -1
  1026. package/dist/Utils/RegistryAsyncUtils.d.ts +2 -2
  1027. package/dist/Utils/RegistryAsyncUtils.js.map +1 -1
  1028. package/dist/Utils/RegistryUtils.d.ts +3 -3
  1029. package/dist/Utils/RegistryUtils.js.map +1 -1
  1030. package/dist/Utils/ScreenUtils.d.ts +2 -2
  1031. package/dist/Utils/ScreenUtils.js.map +1 -1
  1032. package/dist/Utils/TagsUtils.d.ts +1 -1
  1033. package/dist/Utils/TagsUtils.js.map +1 -1
  1034. package/dist/Utils/TransformUtils.d.ts +1 -1
  1035. package/dist/Utils/TransformUtils.js.map +1 -1
  1036. package/dist/Utils/WrapperHelpers.d.ts +3 -3
  1037. package/dist/Utils/WrapperHelpers.js.map +1 -1
  1038. package/dist/assets/Loop.worker-D1bMWlsN.js.map +1 -1
  1039. package/dist/packages/anarchy-shared/src/Utils/AsyncUtils.js.map +1 -1
  1040. package/dist/packages/anarchy-shared/src/Utils/CssUtils.js.map +1 -1
  1041. package/dist/packages/anarchy-shared/src/Utils/ObjectUtils.js.map +1 -1
  1042. package/legal/NOTICE.md +1 -1
  1043. package/legal/THIRD_PARTY_LICENSES.md +1 -1
  1044. package/package.json +6 -4
@@ -1,4 +1,4 @@
1
- import { TMeters, TRadians } from '@hellpig/anarchy-engine/Math';
1
+ import { TMeters, TRadians } from '../../Math';
2
2
  export type TTransformDrivePerformanceOptions = Readonly<{
3
3
  positionNoiseThreshold?: TMeters;
4
4
  rotationNoiseThreshold?: TRadians;
@@ -1,3 +1,3 @@
1
- import { TAbstractEntityRegistry } from '@hellpig/anarchy-engine/Abstract';
1
+ import { TAbstractEntityRegistry } from '../../Abstract';
2
2
  import { TTransformDrive, TTransformDriveCompatibleEntity } from './TTransformDrive';
3
3
  export type TTransformDriveRegistry = TAbstractEntityRegistry<TTransformDrive<TTransformDriveCompatibleEntity>>;
@@ -1,6 +1,6 @@
1
- import { TKinematicConfig } from '@hellpig/anarchy-engine/Kinematic';
2
- import { TEulerLike } from '@hellpig/anarchy-engine/ThreeLib';
3
- import { TransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Constants';
1
+ import { TKinematicConfig } from '../../Kinematic';
2
+ import { TEulerLike } from '../../ThreeLib';
3
+ import { TransformAgent } from '../Constants';
4
4
  import { Vector3Like } from 'three';
5
5
  export type TTransformDriveSerializedData = Readonly<{
6
6
  physicsBodyName?: string;
@@ -1,6 +1,6 @@
1
- import { TSerializableEntitiesService } from '@hellpig/anarchy-engine/Abstract';
2
- import { TWithFactoryService, TWithRegistryService } from '@hellpig/anarchy-engine/Mixins';
3
- import { TransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Constants';
1
+ import { TSerializableEntitiesService } from '../../Abstract';
2
+ import { TWithFactoryService, TWithRegistryService } from '../../Mixins';
3
+ import { TransformAgent } from '../Constants';
4
4
  import { TOptional } from '@hellpig/anarchy-shared/Utils';
5
5
  import { TAbstractTransformAgent } from './TAbstractTransformAgent';
6
6
  import { TGetTransformAgentsOptions, TGetTransformAgentsParams } from './TGetTransformAgentsParams';
@@ -1,4 +1,4 @@
1
- import { TLoopService } from '@hellpig/anarchy-engine/Loop';
1
+ import { TLoopService } from '../../Loop';
2
2
  export type TTransformDriveServiceDependencies = Readonly<{
3
3
  loopService: TLoopService;
4
4
  }>;
@@ -1,4 +1,4 @@
1
- import { TLoop } from '@hellpig/anarchy-engine/Loop';
1
+ import { TLoop } from '../../Loop';
2
2
  export type TTransformLoop = TLoop & {
3
3
  __brand: 'transform_loop';
4
4
  };
@@ -1,4 +1,4 @@
1
- import { TEulerLike } from '@hellpig/anarchy-engine/ThreeLib';
1
+ import { TEulerLike } from '../../ThreeLib';
2
2
  import { TWriteable } from '@hellpig/anarchy-shared/Utils';
3
3
  import { QuaternionLike } from 'three';
4
4
  export type TWithMutableRotationConnector = Readonly<{
@@ -1,4 +1,4 @@
1
- import { TransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Constants';
1
+ import { TransformAgent } from '../Constants';
2
2
  export type TWithTransformAgentParam = Readonly<{
3
3
  agent?: TransformAgent;
4
4
  }>;
@@ -1,2 +1,2 @@
1
- import { TTransformDriveRegistry } from '@hellpig/anarchy-engine/TransformDrive/Models';
1
+ import { TTransformDriveRegistry } from '../Models';
2
2
  export declare function TransformDriveRegistry(): TTransformDriveRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"TransformDriveRegistry.js","sources":["../../../src/TransformDrive/Registries/TransformDriveRegistry.ts"],"sourcesContent":["import { AbstractEntityRegistry, RegistryType } from '@hellpig/anarchy-engine/Abstract';\nimport type { TTransformDrive, TTransformDriveCompatibleEntity, TTransformDriveRegistry } from '@hellpig/anarchy-engine/TransformDrive/Models';\n\nexport function TransformDriveRegistry(): TTransformDriveRegistry {\n return AbstractEntityRegistry<TTransformDrive<TTransformDriveCompatibleEntity>>(RegistryType.TransformDrive);\n}\n"],"names":["TransformDriveRegistry","AbstractEntityRegistry","RegistryType","TransformDrive"],"mappings":"2JAGO,SAASA,yBACd,OAAOC,uBAAyEC,aAAaC,eAC/F"}
1
+ {"version":3,"file":"TransformDriveRegistry.js","sources":["../../../src/TransformDrive/Registries/TransformDriveRegistry.ts"],"sourcesContent":["import { AbstractEntityRegistry, RegistryType } from '@Anarchy/Engine/Abstract';\nimport type { TTransformDrive, TTransformDriveCompatibleEntity, TTransformDriveRegistry } from '@Anarchy/Engine/TransformDrive/Models';\n\nexport function TransformDriveRegistry(): TTransformDriveRegistry {\n return AbstractEntityRegistry<TTransformDrive<TTransformDriveCompatibleEntity>>(RegistryType.TransformDrive);\n}\n"],"names":["TransformDriveRegistry","AbstractEntityRegistry","RegistryType","TransformDrive"],"mappings":"2JAGO,SAASA,yBACd,OAAOC,uBAAyEC,aAAaC,eAC/F"}
@@ -1,2 +1,2 @@
1
- import { TTransformDriveFactory, TTransformDriveRegistry, TTransformDriveService, TTransformDriveServiceDependencies } from '@hellpig/anarchy-engine/TransformDrive/Models';
1
+ import { TTransformDriveFactory, TTransformDriveRegistry, TTransformDriveService, TTransformDriveServiceDependencies } from '../Models';
2
2
  export declare function TransformDriveService(factory: TTransformDriveFactory, registry: TTransformDriveRegistry, { loopService }: TTransformDriveServiceDependencies): TTransformDriveService;
@@ -1 +1 @@
1
- {"version":3,"file":"TransformDriveService.js","sources":["../../../src/TransformDrive/Services/TransformDriveService.ts"],"sourcesContent":["import type { TAbstractService } from '@hellpig/anarchy-engine/Abstract';\nimport { AbstractService } from '@hellpig/anarchy-engine/Abstract';\nimport type { TKinematicLoop } from '@hellpig/anarchy-engine/Kinematic';\nimport { toQuaternion } from '@hellpig/anarchy-engine/Math';\nimport type { TDisposable } from '@hellpig/anarchy-engine/Mixins';\nimport { withFactoryService, withRegistryService, withSerializableEntities } from '@hellpig/anarchy-engine/Mixins';\nimport type { TPhysicsLoop } from '@hellpig/anarchy-engine/Physics';\nimport { TransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Constants';\nimport { ConnectedTransformAgent, DefaultTransformAgent, PhysicsTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Entities';\nimport type {\n TAbstractTransformAgent,\n TGetTransformAgentsOptions,\n TGetTransformAgentsParams,\n TTransformAgentParams,\n TTransformAgents,\n TTransformDrive,\n TTransformDriveCompatibleEntity,\n TTransformDriveFactory,\n TTransformDriveParams,\n TTransformDriveRegistry,\n TTransformDriveSerializedData,\n TTransformDriveService,\n TTransformDriveServiceDependencies,\n TTransformDriveServiceWithFactory,\n TTransformDriveServiceWithRegistry\n} from '@hellpig/anarchy-engine/TransformDrive/Models';\nimport { getKinematicTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Utils';\nimport { mergeAll } from '@hellpig/anarchy-engine/Utils';\nimport type { TOptional, TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport { isDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { Subscription } from 'rxjs';\nimport { Quaternion, Vector3 } from 'three';\n\nexport function TransformDriveService(factory: TTransformDriveFactory, registry: TTransformDriveRegistry, { loopService }: TTransformDriveServiceDependencies): TTransformDriveService {\n const factorySub$: Subscription = factory.entityCreated$.subscribe((entity: TTransformDrive<TTransformDriveCompatibleEntity>): void => registry.add(entity));\n const disposable: ReadonlyArray<TDisposable> = [registry, factory, factorySub$];\n const abstractService: TAbstractService = AbstractService(disposable);\n\n const create = <T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(params: TTransformDriveParams, agents: T): TTransformDrive<T> => {\n return factory.create({ params, agents }, undefined) as TTransformDrive<T>;\n };\n const createFromList = <T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(\n paramsList: ReadonlyArray<TTransformDriveParams>,\n agentsList: ReadonlyArray<T>\n ): ReadonlyArray<TTransformDrive<T>> => {\n if (paramsList.length !== agentsList.length) throw new Error('TransformDriveService: paramsList and agentsList should have the same length');\n return paramsList.map((p: TTransformDriveParams, i: number): TTransformDrive<T> => create(p, agentsList[i] as T));\n };\n\n const withFactory: TTransformDriveServiceWithFactory = withFactoryService(factory);\n const withRegistry: TTransformDriveServiceWithRegistry = withRegistryService(registry);\n\n function getTransformAgents(\n { position, rotation, scale, kinematic, physicsBody }: TGetTransformAgentsParams,\n { hasKinematic, hasPhysics, hasConnected }: TGetTransformAgentsOptions\n ): TOptional<TTransformAgents> {\n const result: TWriteable<TOptional<TTransformAgents>> = {};\n\n //PhysicsTransformAgent might need a special \"onDeactivated\" hook if it supposed to switch physics/non-physics mode in runtime\n const agentParams: TTransformAgentParams = {\n position: position,\n rotation: rotation ? toQuaternion(rotation) : new Quaternion(),\n scale: scale ?? new Vector3(1, 1, 1),\n onDeactivated: undefined,\n onActivated: undefined\n };\n\n if (hasKinematic) {\n const kinematicLoop: TKinematicLoop = loopService.getKinematicLoop();\n // eslint-disable-next-line functional/immutable-data\n result[TransformAgent.Kinematic] = getKinematicTransformAgent(agentParams, kinematic, { kinematicLoop });\n }\n\n if (hasPhysics && isDefined(physicsBody)) {\n const physicsLoop: TPhysicsLoop = loopService.getPhysicsLoop();\n // eslint-disable-next-line functional/immutable-data\n result[TransformAgent.Physics] = PhysicsTransformAgent({ ...agentParams, physicsBody: physicsBody }, { physicsLoop });\n }\n\n // eslint-disable-next-line functional/immutable-data\n if (hasConnected) result[TransformAgent.Connected] = ConnectedTransformAgent(agentParams);\n\n // eslint-disable-next-line functional/immutable-data\n result[TransformAgent.Default] = DefaultTransformAgent(agentParams);\n\n return result;\n }\n\n return mergeAll(abstractService, withFactory, withRegistry, withSerializableEntities<TTransformDrive<TTransformDriveCompatibleEntity>, TTransformDriveSerializedData, undefined>(registry), {\n create,\n createFromList,\n getTransformAgents\n });\n}\n"],"names":["TransformDriveService","factory","registry","loopService","factorySub$","entityCreated$","subscribe","entity","add","abstractService","AbstractService","create","params","agents","withFactory","withFactoryService","withRegistry","withRegistryService","mergeAll","withSerializableEntities","createFromList","paramsList","agentsList","length","Error","map","p","i","getTransformAgents","position","rotation","scale","kinematic","physicsBody","hasKinematic","hasPhysics","hasConnected","result","agentParams","toQuaternion","Quaternion","Vector3","onDeactivated","onActivated","kinematicLoop","getKinematicLoop","TransformAgent","Kinematic","getKinematicTransformAgent","isDefined","physicsLoop","getPhysicsLoop","Physics","PhysicsTransformAgent","Connected","ConnectedTransformAgent","Default","DefaultTransformAgent"],"mappings":"m4BAiCO,SAASA,sBAAsBC,QAAiCC,UAAmCC,YAAEA,cAC1G,MAAMC,YAA4BH,QAAQI,eAAeC,UAAWC,QAAmEL,SAASM,IAAID,SAE9IE,gBAAoCC,gBADK,CAACR,SAAUD,QAASG,cAG7DO,OAAS,CAAqEC,OAA+BC,SAC1GZ,QAAQU,OAAO,CAAEC,cAAQC,oBAAU,GAUtCC,YAAiDC,mBAAmBd,SACpEe,aAAmDC,oBAAoBf,UAsC7E,OAAOgB,SAAST,gBAAiBK,YAAaE,aAAcG,yBAAqHjB,UAAW,CAC1LS,cACAS,eAjDqB,CACrBC,WACAC,cAEA,GAAID,WAAWE,SAAWD,WAAWC,OAAQ,MAAM,IAAIC,MAAM,gFAC7D,OAAOH,WAAWI,IAAI,CAACC,EAA0BC,IAAkChB,OAAOe,EAAGJ,WAAWK,MA6CxGC,mBAvCF,UACEC,SAAEA,SAAAC,SAAUA,SAAAC,MAAUA,MAAAC,UAAOA,UAAAC,YAAWA,cACxCC,aAAEA,aAAAC,WAAcA,WAAAC,aAAYA,eAE5B,MAAMC,OAAkD,CAAA,EAGlDC,YAAqC,CACzCT,kBACAC,SAAUA,SAAWS,aAAaT,UAAY,IAAIU,WAClDT,MAAOA,OAAS,IAAIU,QAAQ,EAAG,EAAG,GAClCC,mBAAe,EACfC,iBAAa,GAGf,GAAIT,aAAc,CAChB,MAAMU,cAAgCzC,YAAY0C,mBAElDR,OAAOS,eAAeC,WAAaC,2BAA2BV,YAAaN,UAAW,CAAEY,6BAC1F,CAEA,GAAIT,YAAcc,UAAUhB,aAAc,CACxC,MAAMiB,YAA4B/C,YAAYgD,iBAE9Cd,OAAOS,eAAeM,SAAWC,sBAAsB,IAAKf,YAAaL,yBAA4B,CAAEiB,yBACzG,CAQA,OALId,eAAcC,OAAOS,eAAeQ,WAAaC,wBAAwBjB,cAG7ED,OAAOS,eAAeU,SAAWC,sBAAsBnB,aAEhDD,MACT,GAOF"}
1
+ {"version":3,"file":"TransformDriveService.js","sources":["../../../src/TransformDrive/Services/TransformDriveService.ts"],"sourcesContent":["import type { TAbstractService } from '@Anarchy/Engine/Abstract';\nimport { AbstractService } from '@Anarchy/Engine/Abstract';\nimport type { TKinematicLoop } from '@Anarchy/Engine/Kinematic';\nimport { toQuaternion } from '@Anarchy/Engine/Math';\nimport type { TDisposable } from '@Anarchy/Engine/Mixins';\nimport { withFactoryService, withRegistryService, withSerializableEntities } from '@Anarchy/Engine/Mixins';\nimport type { TPhysicsLoop } from '@Anarchy/Engine/Physics';\nimport { TransformAgent } from '@Anarchy/Engine/TransformDrive/Constants';\nimport { ConnectedTransformAgent, DefaultTransformAgent, PhysicsTransformAgent } from '@Anarchy/Engine/TransformDrive/Entities';\nimport type {\n TAbstractTransformAgent,\n TGetTransformAgentsOptions,\n TGetTransformAgentsParams,\n TTransformAgentParams,\n TTransformAgents,\n TTransformDrive,\n TTransformDriveCompatibleEntity,\n TTransformDriveFactory,\n TTransformDriveParams,\n TTransformDriveRegistry,\n TTransformDriveSerializedData,\n TTransformDriveService,\n TTransformDriveServiceDependencies,\n TTransformDriveServiceWithFactory,\n TTransformDriveServiceWithRegistry\n} from '@Anarchy/Engine/TransformDrive/Models';\nimport { getKinematicTransformAgent } from '@Anarchy/Engine/TransformDrive/Utils';\nimport { mergeAll } from '@Anarchy/Engine/Utils';\nimport type { TOptional, TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport { isDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { Subscription } from 'rxjs';\nimport { Quaternion, Vector3 } from 'three';\n\nexport function TransformDriveService(factory: TTransformDriveFactory, registry: TTransformDriveRegistry, { loopService }: TTransformDriveServiceDependencies): TTransformDriveService {\n const factorySub$: Subscription = factory.entityCreated$.subscribe((entity: TTransformDrive<TTransformDriveCompatibleEntity>): void => registry.add(entity));\n const disposable: ReadonlyArray<TDisposable> = [registry, factory, factorySub$];\n const abstractService: TAbstractService = AbstractService(disposable);\n\n const create = <T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(params: TTransformDriveParams, agents: T): TTransformDrive<T> => {\n return factory.create({ params, agents }, undefined) as TTransformDrive<T>;\n };\n const createFromList = <T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(\n paramsList: ReadonlyArray<TTransformDriveParams>,\n agentsList: ReadonlyArray<T>\n ): ReadonlyArray<TTransformDrive<T>> => {\n if (paramsList.length !== agentsList.length) throw new Error('TransformDriveService: paramsList and agentsList should have the same length');\n return paramsList.map((p: TTransformDriveParams, i: number): TTransformDrive<T> => create(p, agentsList[i] as T));\n };\n\n const withFactory: TTransformDriveServiceWithFactory = withFactoryService(factory);\n const withRegistry: TTransformDriveServiceWithRegistry = withRegistryService(registry);\n\n function getTransformAgents(\n { position, rotation, scale, kinematic, physicsBody }: TGetTransformAgentsParams,\n { hasKinematic, hasPhysics, hasConnected }: TGetTransformAgentsOptions\n ): TOptional<TTransformAgents> {\n const result: TWriteable<TOptional<TTransformAgents>> = {};\n\n //PhysicsTransformAgent might need a special \"onDeactivated\" hook if it supposed to switch physics/non-physics mode in runtime\n const agentParams: TTransformAgentParams = {\n position: position,\n rotation: rotation ? toQuaternion(rotation) : new Quaternion(),\n scale: scale ?? new Vector3(1, 1, 1),\n onDeactivated: undefined,\n onActivated: undefined\n };\n\n if (hasKinematic) {\n const kinematicLoop: TKinematicLoop = loopService.getKinematicLoop();\n // eslint-disable-next-line functional/immutable-data\n result[TransformAgent.Kinematic] = getKinematicTransformAgent(agentParams, kinematic, { kinematicLoop });\n }\n\n if (hasPhysics && isDefined(physicsBody)) {\n const physicsLoop: TPhysicsLoop = loopService.getPhysicsLoop();\n // eslint-disable-next-line functional/immutable-data\n result[TransformAgent.Physics] = PhysicsTransformAgent({ ...agentParams, physicsBody: physicsBody }, { physicsLoop });\n }\n\n // eslint-disable-next-line functional/immutable-data\n if (hasConnected) result[TransformAgent.Connected] = ConnectedTransformAgent(agentParams);\n\n // eslint-disable-next-line functional/immutable-data\n result[TransformAgent.Default] = DefaultTransformAgent(agentParams);\n\n return result;\n }\n\n return mergeAll(abstractService, withFactory, withRegistry, withSerializableEntities<TTransformDrive<TTransformDriveCompatibleEntity>, TTransformDriveSerializedData, undefined>(registry), {\n create,\n createFromList,\n getTransformAgents\n });\n}\n"],"names":["TransformDriveService","factory","registry","loopService","factorySub$","entityCreated$","subscribe","entity","add","abstractService","AbstractService","create","params","agents","withFactory","withFactoryService","withRegistry","withRegistryService","mergeAll","withSerializableEntities","createFromList","paramsList","agentsList","length","Error","map","p","i","getTransformAgents","position","rotation","scale","kinematic","physicsBody","hasKinematic","hasPhysics","hasConnected","result","agentParams","toQuaternion","Quaternion","Vector3","onDeactivated","onActivated","kinematicLoop","getKinematicLoop","TransformAgent","Kinematic","getKinematicTransformAgent","isDefined","physicsLoop","getPhysicsLoop","Physics","PhysicsTransformAgent","Connected","ConnectedTransformAgent","Default","DefaultTransformAgent"],"mappings":"m4BAiCO,SAASA,sBAAsBC,QAAiCC,UAAmCC,YAAEA,cAC1G,MAAMC,YAA4BH,QAAQI,eAAeC,UAAWC,QAAmEL,SAASM,IAAID,SAE9IE,gBAAoCC,gBADK,CAACR,SAAUD,QAASG,cAG7DO,OAAS,CAAqEC,OAA+BC,SAC1GZ,QAAQU,OAAO,CAAEC,cAAQC,oBAAU,GAUtCC,YAAiDC,mBAAmBd,SACpEe,aAAmDC,oBAAoBf,UAsC7E,OAAOgB,SAAST,gBAAiBK,YAAaE,aAAcG,yBAAqHjB,UAAW,CAC1LS,cACAS,eAjDqB,CACrBC,WACAC,cAEA,GAAID,WAAWE,SAAWD,WAAWC,OAAQ,MAAM,IAAIC,MAAM,gFAC7D,OAAOH,WAAWI,IAAI,CAACC,EAA0BC,IAAkChB,OAAOe,EAAGJ,WAAWK,MA6CxGC,mBAvCF,UACEC,SAAEA,SAAAC,SAAUA,SAAAC,MAAUA,MAAAC,UAAOA,UAAAC,YAAWA,cACxCC,aAAEA,aAAAC,WAAcA,WAAAC,aAAYA,eAE5B,MAAMC,OAAkD,CAAA,EAGlDC,YAAqC,CACzCT,kBACAC,SAAUA,SAAWS,aAAaT,UAAY,IAAIU,WAClDT,MAAOA,OAAS,IAAIU,QAAQ,EAAG,EAAG,GAClCC,mBAAe,EACfC,iBAAa,GAGf,GAAIT,aAAc,CAChB,MAAMU,cAAgCzC,YAAY0C,mBAElDR,OAAOS,eAAeC,WAAaC,2BAA2BV,YAAaN,UAAW,CAAEY,6BAC1F,CAEA,GAAIT,YAAcc,UAAUhB,aAAc,CACxC,MAAMiB,YAA4B/C,YAAYgD,iBAE9Cd,OAAOS,eAAeM,SAAWC,sBAAsB,IAAKf,YAAaL,yBAA4B,CAAEiB,yBACzG,CAQA,OALId,eAAcC,OAAOS,eAAeQ,WAAaC,wBAAwBjB,cAG7ED,OAAOS,eAAeU,SAAWC,sBAAsBnB,aAEhDD,MACT,GAOF"}
@@ -1,4 +1,4 @@
1
- import { TVector3OrEuler, TVector4OrQuaternion } from '@hellpig/anarchy-engine/ThreeLib';
1
+ import { TVector3OrEuler, TVector4OrQuaternion } from '../../ThreeLib';
2
2
  import { TWriteable } from '@hellpig/anarchy-shared/Utils';
3
3
  import { Subject } from 'rxjs';
4
4
  export declare function getXyzUpdateProxy<T extends TVector3OrEuler>(coordsObj: TWriteable<TVector3OrEuler>, subj$: Subject<T>): TVector3OrEuler;
@@ -1 +1 @@
1
- {"version":3,"file":"ActorDriveUtils.js","sources":["../../../src/TransformDrive/Utils/ActorDriveUtils.ts"],"sourcesContent":["import type { TVector3OrEuler, TVector4OrQuaternion } from '@hellpig/anarchy-engine/ThreeLib';\nimport type { TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport type { Subject } from 'rxjs';\n\nexport function getXyzUpdateProxy<T extends TVector3OrEuler>(coordsObj: TWriteable<TVector3OrEuler>, subj$: Subject<T>): TVector3OrEuler {\n return new Proxy(coordsObj, {\n set(target: TWriteable<TVector3OrEuler>, prop: string, value: number): boolean {\n if (prop === 'x' || prop === 'y' || prop === 'z') {\n // eslint-disable-next-line functional/immutable-data\n target[prop] = value;\n subj$.next(target.clone() as T);\n }\n return true;\n }\n });\n}\n\nexport function getXyzwUpdateProxy<T extends TVector4OrQuaternion>(coordsObj: TWriteable<TVector4OrQuaternion>, subj$: Subject<T>): TVector4OrQuaternion {\n return new Proxy(coordsObj, {\n set(target: TWriteable<TVector4OrQuaternion>, prop: string, value: number): boolean {\n if (prop === 'x' || prop === 'y' || prop === 'z' || prop === 'w') {\n // eslint-disable-next-line functional/immutable-data\n target[prop] = value;\n subj$.next(target.clone() as T);\n }\n return true;\n }\n });\n}\n"],"names":["getXyzUpdateProxy","coordsObj","subj$","Proxy","set","target","prop","value","next","clone","getXyzwUpdateProxy"],"mappings":"AAIO,SAASA,kBAA6CC,UAAwCC,OACnG,OAAO,IAAIC,MAAMF,UAAW,CAC1BG,IAAA,CAAIC,OAAqCC,KAAcC,SACxC,MAATD,MAAyB,MAATA,MAAyB,MAATA,OAElCD,OAAOC,MAAQC,MACfL,MAAMM,KAAKH,OAAOI,WAEb,IAGb,CAEO,SAASC,mBAAmDT,UAA6CC,OAC9G,OAAO,IAAIC,MAAMF,UAAW,CAC1BG,IAAA,CAAIC,OAA0CC,KAAcC,SAC7C,MAATD,MAAyB,MAATA,MAAyB,MAATA,MAAyB,MAATA,OAElDD,OAAOC,MAAQC,MACfL,MAAMM,KAAKH,OAAOI,WAEb,IAGb"}
1
+ {"version":3,"file":"ActorDriveUtils.js","sources":["../../../src/TransformDrive/Utils/ActorDriveUtils.ts"],"sourcesContent":["import type { TVector3OrEuler, TVector4OrQuaternion } from '@Anarchy/Engine/ThreeLib';\nimport type { TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport type { Subject } from 'rxjs';\n\nexport function getXyzUpdateProxy<T extends TVector3OrEuler>(coordsObj: TWriteable<TVector3OrEuler>, subj$: Subject<T>): TVector3OrEuler {\n return new Proxy(coordsObj, {\n set(target: TWriteable<TVector3OrEuler>, prop: string, value: number): boolean {\n if (prop === 'x' || prop === 'y' || prop === 'z') {\n // eslint-disable-next-line functional/immutable-data\n target[prop] = value;\n subj$.next(target.clone() as T);\n }\n return true;\n }\n });\n}\n\nexport function getXyzwUpdateProxy<T extends TVector4OrQuaternion>(coordsObj: TWriteable<TVector4OrQuaternion>, subj$: Subject<T>): TVector4OrQuaternion {\n return new Proxy(coordsObj, {\n set(target: TWriteable<TVector4OrQuaternion>, prop: string, value: number): boolean {\n if (prop === 'x' || prop === 'y' || prop === 'z' || prop === 'w') {\n // eslint-disable-next-line functional/immutable-data\n target[prop] = value;\n subj$.next(target.clone() as T);\n }\n return true;\n }\n });\n}\n"],"names":["getXyzUpdateProxy","coordsObj","subj$","Proxy","set","target","prop","value","next","clone","getXyzwUpdateProxy"],"mappings":"AAIO,SAASA,kBAA6CC,UAAwCC,OACnG,OAAO,IAAIC,MAAMF,UAAW,CAC1BG,IAAA,CAAIC,OAAqCC,KAAcC,SACxC,MAATD,MAAyB,MAATA,MAAyB,MAATA,OAElCD,OAAOC,MAAQC,MACfL,MAAMM,KAAKH,OAAOI,WAEb,IAGb,CAEO,SAASC,mBAAmDT,UAA6CC,OAC9G,OAAO,IAAIC,MAAMF,UAAW,CAC1BG,IAAA,CAAIC,OAA0CC,KAAcC,SAC7C,MAATD,MAAyB,MAATA,MAAyB,MAATA,MAAyB,MAATA,OAElDD,OAAOC,MAAQC,MACfL,MAAMM,KAAKH,OAAOI,WAEb,IAGb"}
@@ -1,5 +1,5 @@
1
- import { TKinematicData, TKinematicParams } from '@hellpig/anarchy-engine/Kinematic';
2
- import { TKinematicAgentDependencies, TKinematicTransformAgent, TTransformAgentParams } from '@hellpig/anarchy-engine/TransformDrive/Models';
1
+ import { TKinematicData, TKinematicParams } from '../../Kinematic';
2
+ import { TKinematicAgentDependencies, TKinematicTransformAgent, TTransformAgentParams } from '../Models';
3
3
  import { TOptional } from '@hellpig/anarchy-shared/Utils';
4
4
  export declare function getKinematicTransformAgent(params: TTransformAgentParams, kinematic: TOptional<TKinematicParams> | undefined, dependencies: TKinematicAgentDependencies): TKinematicTransformAgent;
5
5
  export declare function getKinematicWithDefaults(kinematic: TOptional<TKinematicParams> | undefined): TKinematicData;
@@ -1 +1 @@
1
- {"version":3,"file":"AgentUtils.js","sources":["../../../src/TransformDrive/Utils/AgentUtils.ts"],"sourcesContent":["import type { TKinematicData, TKinematicParams } from '@hellpig/anarchy-engine/Kinematic';\nimport { DEFAULT_RADIUS, ForwardAxis } from '@hellpig/anarchy-engine/Kinematic';\nimport { KinematicTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Entities/Agents/KinematicTransformAgent';\nimport type { TKinematicAgentDependencies, TKinematicTransformAgent, TKinematicTransformAgentParams, TTransformAgentParams } from '@hellpig/anarchy-engine/TransformDrive/Models';\nimport type { TOptional } from '@hellpig/anarchy-shared/Utils';\nimport { Quaternion, Vector3 } from 'three';\n\nexport function getKinematicTransformAgent(params: TTransformAgentParams, kinematic: TOptional<TKinematicParams> | undefined, dependencies: TKinematicAgentDependencies): TKinematicTransformAgent {\n const agentParams: TTransformAgentParams = { position: params.position, rotation: params.rotation, scale: params.scale ?? new Vector3(1, 1, 1) };\n const kinematicData: TKinematicData = getKinematicWithDefaults(kinematic);\n const kinematicAgentParams: TKinematicTransformAgentParams = { ...agentParams, ...kinematicData, isAutoUpdate: kinematic?.isAutoUpdate ?? true };\n return KinematicTransformAgent(kinematicAgentParams, dependencies);\n}\n\nexport function getKinematicWithDefaults(kinematic: TOptional<TKinematicParams> | undefined): TKinematicData {\n const state = kinematic?.state ?? {};\n const target = kinematic?.target ?? {};\n const { linearSpeed, linearDirection, angularDirection, angularSpeed, radius } = state;\n const { position, rotation, positionThreshold, rotationThreshold } = target;\n\n return {\n state: {\n linearSpeed: linearSpeed ?? 0,\n linearDirection: linearDirection ?? new Vector3(),\n angularSpeed: angularSpeed ?? 0,\n angularDirection: angularDirection ?? new Quaternion(),\n radius: radius ?? DEFAULT_RADIUS,\n forwardAxis: ForwardAxis.X,\n isInfiniteRotation: false\n },\n target: {\n positionThreshold: positionThreshold ?? 0.01,\n position,\n rotationThreshold: rotationThreshold ?? 0.0001,\n rotation\n }\n };\n}\n"],"names":["getKinematicTransformAgent","params","kinematic","dependencies","kinematicAgentParams","position","rotation","scale","Vector3","getKinematicWithDefaults","isAutoUpdate","KinematicTransformAgent","state","target","linearSpeed","linearDirection","angularDirection","angularSpeed","radius","positionThreshold","rotationThreshold","Quaternion","DEFAULT_RADIUS","forwardAxis","ForwardAxis","X","isInfiniteRotation"],"mappings":"uQAOO,SAASA,2BAA2BC,OAA+BC,UAAoDC,cAC5H,MAEMC,qBAAuD,CAFhBC,SAAUJ,OAAOI,SAAUC,SAAUL,OAAOK,SAAUC,MAAON,OAAOM,OAAS,IAAIC,QAAQ,EAAG,EAAG,MACtGC,yBAAyBP,WACkCQ,aAAcR,WAAWQ,eAAgB,GAC1I,OAAOC,wBAAwBP,qBAAsBD,aACvD,CAEO,SAASM,yBAAyBP,WACvC,MAAMU,MAAQV,WAAWU,OAAS,CAAA,EAC5BC,OAASX,WAAWW,QAAU,CAAA,GAC9BC,YAAEA,YAAAC,gBAAaA,gBAAAC,iBAAiBA,iBAAAC,aAAkBA,aAAAC,OAAcA,QAAWN,OAC3EP,SAAEA,SAAAC,SAAUA,SAAAa,kBAAUA,kBAAAC,kBAAmBA,mBAAsBP,OAErE,MAAO,CACLD,MAAO,CACLE,YAAaA,aAAe,EAC5BC,gBAAiBA,iBAAmB,IAAIP,QACxCS,aAAcA,cAAgB,EAC9BD,iBAAkBA,kBAAoB,IAAIK,WAC1CH,OAAQA,QAAUI,eAClBC,YAAaC,YAAYC,EACzBC,oBAAoB,GAEtBb,OAAQ,CACNM,kBAAmBA,mBAAqB,IACxCd,kBACAe,kBAAmBA,mBAAqB,KACxCd,mBAGN"}
1
+ {"version":3,"file":"AgentUtils.js","sources":["../../../src/TransformDrive/Utils/AgentUtils.ts"],"sourcesContent":["import type { TKinematicData, TKinematicParams } from '@Anarchy/Engine/Kinematic';\nimport { DEFAULT_RADIUS, ForwardAxis } from '@Anarchy/Engine/Kinematic';\nimport { KinematicTransformAgent } from '@Anarchy/Engine/TransformDrive/Entities/Agents/KinematicTransformAgent';\nimport type { TKinematicAgentDependencies, TKinematicTransformAgent, TKinematicTransformAgentParams, TTransformAgentParams } from '@Anarchy/Engine/TransformDrive/Models';\nimport type { TOptional } from '@hellpig/anarchy-shared/Utils';\nimport { Quaternion, Vector3 } from 'three';\n\nexport function getKinematicTransformAgent(params: TTransformAgentParams, kinematic: TOptional<TKinematicParams> | undefined, dependencies: TKinematicAgentDependencies): TKinematicTransformAgent {\n const agentParams: TTransformAgentParams = { position: params.position, rotation: params.rotation, scale: params.scale ?? new Vector3(1, 1, 1) };\n const kinematicData: TKinematicData = getKinematicWithDefaults(kinematic);\n const kinematicAgentParams: TKinematicTransformAgentParams = { ...agentParams, ...kinematicData, isAutoUpdate: kinematic?.isAutoUpdate ?? true };\n return KinematicTransformAgent(kinematicAgentParams, dependencies);\n}\n\nexport function getKinematicWithDefaults(kinematic: TOptional<TKinematicParams> | undefined): TKinematicData {\n const state = kinematic?.state ?? {};\n const target = kinematic?.target ?? {};\n const { linearSpeed, linearDirection, angularDirection, angularSpeed, radius } = state;\n const { position, rotation, positionThreshold, rotationThreshold } = target;\n\n return {\n state: {\n linearSpeed: linearSpeed ?? 0,\n linearDirection: linearDirection ?? new Vector3(),\n angularSpeed: angularSpeed ?? 0,\n angularDirection: angularDirection ?? new Quaternion(),\n radius: radius ?? DEFAULT_RADIUS,\n forwardAxis: ForwardAxis.X,\n isInfiniteRotation: false\n },\n target: {\n positionThreshold: positionThreshold ?? 0.01,\n position,\n rotationThreshold: rotationThreshold ?? 0.0001,\n rotation\n }\n };\n}\n"],"names":["getKinematicTransformAgent","params","kinematic","dependencies","kinematicAgentParams","position","rotation","scale","Vector3","getKinematicWithDefaults","isAutoUpdate","KinematicTransformAgent","state","target","linearSpeed","linearDirection","angularDirection","angularSpeed","radius","positionThreshold","rotationThreshold","Quaternion","DEFAULT_RADIUS","forwardAxis","ForwardAxis","X","isInfiniteRotation"],"mappings":"uQAOO,SAASA,2BAA2BC,OAA+BC,UAAoDC,cAC5H,MAEMC,qBAAuD,CAFhBC,SAAUJ,OAAOI,SAAUC,SAAUL,OAAOK,SAAUC,MAAON,OAAOM,OAAS,IAAIC,QAAQ,EAAG,EAAG,MACtGC,yBAAyBP,WACkCQ,aAAcR,WAAWQ,eAAgB,GAC1I,OAAOC,wBAAwBP,qBAAsBD,aACvD,CAEO,SAASM,yBAAyBP,WACvC,MAAMU,MAAQV,WAAWU,OAAS,CAAA,EAC5BC,OAASX,WAAWW,QAAU,CAAA,GAC9BC,YAAEA,YAAAC,gBAAaA,gBAAAC,iBAAiBA,iBAAAC,aAAkBA,aAAAC,OAAcA,QAAWN,OAC3EP,SAAEA,SAAAC,SAAUA,SAAAa,kBAAUA,kBAAAC,kBAAmBA,mBAAsBP,OAErE,MAAO,CACLD,MAAO,CACLE,YAAaA,aAAe,EAC5BC,gBAAiBA,iBAAmB,IAAIP,QACxCS,aAAcA,cAAgB,EAC9BD,iBAAkBA,kBAAoB,IAAIK,WAC1CH,OAAQA,QAAUI,eAClBC,YAAaC,YAAYC,EACzBC,oBAAoB,GAEtBb,OAAQ,CACNM,kBAAmBA,mBAAqB,IACxCd,kBACAe,kBAAmBA,mBAAqB,KACxCd,mBAGN"}
@@ -1,7 +1,7 @@
1
- import { TKinematicState, TKinematicTarget, KinematicSpeed } from '@hellpig/anarchy-engine/Kinematic';
2
- import { TRadians } from '@hellpig/anarchy-engine/Math';
3
- import { TReadonlyQuaternion, TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';
4
- import { TKinematicSpeed, TKinematicTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Models';
1
+ import { TKinematicState, TKinematicTarget, KinematicSpeed } from '../../Kinematic';
2
+ import { TRadians } from '../../Math';
3
+ import { TReadonlyQuaternion, TReadonlyVector3 } from '../../ThreeLib';
4
+ import { TKinematicSpeed, TKinematicTransformAgent } from '../Models';
5
5
  import { TWriteable } from '@hellpig/anarchy-shared/Utils';
6
6
  import { Quaternion } from 'three';
7
7
  export declare function getStepRotation(agent: TKinematicTransformAgent, rotationStep: TRadians, infinite: boolean): Quaternion | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"KinematicAgentUtils.js","sources":["../../../src/TransformDrive/Utils/KinematicAgentUtils.ts"],"sourcesContent":["import type { TKinematicState, TKinematicTarget } from '@hellpig/anarchy-engine/Kinematic';\nimport { KinematicSpeed } from '@hellpig/anarchy-engine/Kinematic';\nimport type { TMeters, TRadians } from '@hellpig/anarchy-engine/Math';\nimport type { TReadonlyQuaternion, TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';\nimport type { TKinematicSpeed, TKinematicTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Models';\nimport type { TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\nimport { Quaternion, Vector3 } from 'three';\n\nexport function getStepRotation(agent: TKinematicTransformAgent, rotationStep: TRadians, infinite: boolean): Quaternion | undefined {\n if (!infinite && isNotDefined(agent.data.target?.rotation)) return undefined;\n\n // Retrieve the target rotation (for infinite mode, it's used as a descriptor).\n const targetRotation: Quaternion = agent.data.target?.rotation ?? new Quaternion();\n const targetNormalized: Quaternion = targetRotation.clone().normalize();\n\n // Clamp w-component to prevent floating-point errors.\n const clamped: number = Math.min(Math.max(targetNormalized.w, -1), 1);\n let angle: number = 2 * Math.acos(clamped);\n\n // Correct angle to take the shortest rotation path.\n if (angle > Math.PI) angle -= 2 * Math.PI;\n\n const sinHalfAngle: number = Math.sqrt(1 - clamped * clamped);\n\n // Extract rotation axis; use a default axis if sinHalfAngle is too small.\n const axis: Vector3 = sinHalfAngle > 1e-6 ? new Vector3(targetNormalized.x, targetNormalized.y, targetNormalized.z).divideScalar(sinHalfAngle).normalize() : new Vector3(0, 1, 0);\n\n // Infinite Rotation Mode\n if (infinite) {\n // Use the computed sign (after correction) to determine a rotation direction.\n const stepAngle: number = Math.sign(angle) * rotationStep;\n return new Quaternion().setFromAxisAngle(axis, stepAngle);\n }\n\n // Finite Rotation Mode\n const currentRotation: Quaternion = agent.rotation$.value.clone().normalize();\n const qRelative: Quaternion = currentRotation.clone().invert().multiply(targetNormalized);\n\n // Clamp w-component for relative rotation.\n const relativeClampedW: number = Math.min(Math.max(qRelative.w, -1), 1);\n let relativeAngle: number = 2 * Math.acos(relativeClampedW);\n\n // Correct relative angle for the shortest path.\n if (relativeAngle > Math.PI) relativeAngle -= 2 * Math.PI;\n\n const relativeSinHalfAngle: number = Math.sqrt(1 - relativeClampedW * relativeClampedW);\n\n // Extract the relative rotation axis.\n const relativeAxis: Vector3 = relativeSinHalfAngle > 1e-6 ? new Vector3(qRelative.x, qRelative.y, qRelative.z).divideScalar(relativeSinHalfAngle).normalize() : new Vector3(0, 1, 0);\n\n // Compute the rotation step with the shortest path correction.\n const stepAngle: number = Math.sign(relativeAngle) * Math.min(Math.abs(relativeAngle), rotationStep);\n\n return stepAngle !== 0 ? new Quaternion().setFromAxisAngle(relativeAxis, stepAngle) : undefined;\n}\n\nexport function isPointReached(target: TKinematicTarget | undefined, position: TReadonlyVector3, state: TKinematicState): boolean {\n if (isNotDefined(target)) return false;\n const { position: targetPosition, positionThreshold } = target;\n if (isNotDefined(targetPosition)) return false;\n\n const { linearSpeed, linearDirection } = state;\n\n // If the agent is already at the target, do not move\n if (linearSpeed === 0) return true;\n\n const vectorToTarget: Vector3 = targetPosition.clone().sub(position);\n const distanceSquared: TMeters = vectorToTarget.lengthSq() as TMeters;\n\n // If the agent is close enough to the target, stop\n if (distanceSquared < positionThreshold * positionThreshold) return true;\n\n const crossedTarget: boolean = vectorToTarget.dot(linearDirection) < 0;\n // If the agent has passed the target, stop\n if (crossedTarget) return true;\n\n return false;\n}\n\nexport function isRotationReached(target: TKinematicTarget | undefined, rotation: TReadonlyQuaternion, state: TKinematicState): boolean {\n if (isNotDefined(target)) return false;\n const { rotation: targetRotation, rotationThreshold } = target;\n\n if (isNotDefined(targetRotation)) return false;\n\n const { angularSpeed } = state;\n\n // If the speed is 0, do nothing\n if (angularSpeed === 0) return true;\n\n // Calculate the current angle to the target\n const angleToTarget: TRadians = rotation.angleTo(targetRotation) as TRadians;\n\n // If the agent is close enough to the target, stop\n if (angleToTarget < rotationThreshold) return true;\n\n return false;\n}\n\nexport function rotateInstantly(agent: TWriteable<TKinematicTransformAgent>, targetRotation: TReadonlyQuaternion): void {\n agent.setAngularSpeed(0);\n // eslint-disable-next-line functional/immutable-data\n if (isDefined(agent.data.target?.rotation)) (agent.data.target as TWriteable<TKinematicTarget>).rotation = undefined;\n // eslint-disable-next-line functional/immutable-data\n (agent.data.state as TWriteable<TKinematicState>).angularDirection = targetRotation.clone().normalize();\n agent.rotation$.next(agent.data.state.angularDirection);\n return;\n}\n\nexport function moveInstantly(agent: TWriteable<TKinematicTransformAgent>, targetPosition: TReadonlyVector3): void {\n agent.setLinearSpeed(0);\n // eslint-disable-next-line functional/immutable-data\n if (isDefined(agent.data.target?.position)) (agent.data.target as TWriteable<TKinematicTarget>).position = undefined;\n agent.position$.next(targetPosition);\n return;\n}\n\nexport function isInstant(speed: TKinematicSpeed): speed is KinematicSpeed.Instant {\n return speed === KinematicSpeed.Instant;\n}\n"],"names":["getStepRotation","agent","rotationStep","infinite","isNotDefined","data","target","rotation","targetNormalized","Quaternion","clone","normalize","clamped","Math","min","max","w","angle","acos","PI","sinHalfAngle","sqrt","axis","Vector3","x","y","z","divideScalar","stepAngle","sign","setFromAxisAngle","qRelative","rotation$","value","invert","multiply","relativeClampedW","relativeAngle","relativeSinHalfAngle","relativeAxis","abs","isPointReached","position","state","targetPosition","positionThreshold","linearSpeed","linearDirection","vectorToTarget","sub","lengthSq","dot","isRotationReached","targetRotation","rotationThreshold","angularSpeed","angleTo","rotateInstantly","setAngularSpeed","isDefined","angularDirection","next","moveInstantly","setLinearSpeed","position$","isInstant","speed","KinematicSpeed","Instant"],"mappings":"4MASO,SAASA,gBAAgBC,MAAiCC,aAAwBC,UACvF,IAAKA,UAAYC,aAAaH,MAAMI,KAAKC,QAAQC,UAAW,OAG5D,MACMC,kBAD6BP,MAAMI,KAAKC,QAAQC,UAAY,IAAIE,YAClBC,QAAQC,YAGtDC,QAAkBC,KAAKC,IAAID,KAAKE,IAAIP,iBAAiBQ,MAAQ,GACnE,IAAIC,MAAgB,EAAIJ,KAAKK,KAAKN,SAG9BK,MAAQJ,KAAKM,KAAIF,OAAS,EAAIJ,KAAKM,IAEvC,MAAMC,aAAuBP,KAAKQ,KAAK,EAAIT,QAAUA,SAG/CU,KAAgBF,aAAe,KAAO,IAAIG,QAAQf,iBAAiBgB,EAAGhB,iBAAiBiB,EAAGjB,iBAAiBkB,GAAGC,aAAaP,cAAcT,YAAc,IAAIY,QAAQ,EAAG,EAAG,GAG/K,GAAIpB,SAAU,CAEZ,MAAMyB,WAAoBf,KAAKgB,KAAKZ,OAASf,aAC7C,OAAO,IAAIO,YAAaqB,iBAAiBR,KAAMM,WACjD,CAGA,MACMG,UAD8B9B,MAAM+B,UAAUC,MAAMvB,QAAQC,YACpBD,QAAQwB,SAASC,SAAS3B,kBAGlE4B,iBAA2BvB,KAAKC,IAAID,KAAKE,IAAIgB,UAAUf,MAAQ,GACrE,IAAIqB,cAAwB,EAAIxB,KAAKK,KAAKkB,kBAGtCC,cAAgBxB,KAAKM,KAAIkB,eAAiB,EAAIxB,KAAKM,IAEvD,MAAMmB,qBAA+BzB,KAAKQ,KAAK,EAAIe,iBAAmBA,kBAGhEG,aAAwBD,qBAAuB,KAAO,IAAIf,QAAQQ,UAAUP,EAAGO,UAAUN,EAAGM,UAAUL,GAAGC,aAAaW,sBAAsB3B,YAAc,IAAIY,QAAQ,EAAG,EAAG,GAG5KK,UAAoBf,KAAKgB,KAAKQ,eAAiBxB,KAAKC,IAAID,KAAK2B,IAAIH,eAAgBnC,cAEvF,OAAqB,IAAd0B,WAAkB,IAAInB,YAAaqB,iBAAiBS,aAAcX,gBAAa,CACxF,CAEO,SAASa,eAAenC,OAAsCoC,SAA4BC,OAC/F,GAAIvC,aAAaE,QAAS,OAAO,EACjC,MAAQoC,SAAUE,eAAAC,kBAAgBA,mBAAsBvC,OACxD,GAAIF,aAAawC,gBAAiB,OAAO,EAEzC,MAAME,YAAEA,YAAAC,gBAAaA,iBAAoBJ,MAGzC,GAAoB,IAAhBG,YAAmB,OAAO,EAE9B,MAAME,eAA0BJ,eAAelC,QAAQuC,IAAIP,UAI3D,OAHiCM,eAAeE,WAG1BL,kBAAoBA,sBAEXG,eAAeG,IAAIJ,iBAAmB,EAKvE,CAEO,SAASK,kBAAkB9C,OAAsCC,SAA+BoC,OACrG,GAAIvC,aAAaE,QAAS,OAAO,EACjC,MAAQC,SAAU8C,eAAAC,kBAAgBA,mBAAsBhD,OAExD,GAAIF,aAAaiD,gBAAiB,OAAO,EAEzC,MAAME,aAAEA,cAAiBZ,MAGzB,OAAqB,IAAjBY,cAG4BhD,SAASiD,QAAQH,gBAG7BC,iBAGtB,CAEO,SAASG,gBAAgBxD,MAA6CoD,gBAC3EpD,MAAMyD,gBAAgB,GAElBC,UAAU1D,MAAMI,KAAKC,QAAQC,YAAYN,MAAMI,KAAKC,OAAwCC,cAAW,GAE1GN,MAAMI,KAAKsC,MAAsCiB,iBAAmBP,eAAe3C,QAAQC,YAC5FV,MAAM+B,UAAU6B,KAAK5D,MAAMI,KAAKsC,MAAMiB,iBAExC,CAEO,SAASE,cAAc7D,MAA6C2C,gBACzE3C,MAAM8D,eAAe,GAEjBJ,UAAU1D,MAAMI,KAAKC,QAAQoC,YAAYzC,MAAMI,KAAKC,OAAwCoC,cAAW,GAC3GzC,MAAM+D,UAAUH,KAAKjB,eAEvB,CAEO,SAASqB,UAAUC,OACxB,OAAOA,QAAUC,eAAeC,OAClC"}
1
+ {"version":3,"file":"KinematicAgentUtils.js","sources":["../../../src/TransformDrive/Utils/KinematicAgentUtils.ts"],"sourcesContent":["import type { TKinematicState, TKinematicTarget } from '@Anarchy/Engine/Kinematic';\nimport { KinematicSpeed } from '@Anarchy/Engine/Kinematic';\nimport type { TMeters, TRadians } from '@Anarchy/Engine/Math';\nimport type { TReadonlyQuaternion, TReadonlyVector3 } from '@Anarchy/Engine/ThreeLib';\nimport type { TKinematicSpeed, TKinematicTransformAgent } from '@Anarchy/Engine/TransformDrive/Models';\nimport type { TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\nimport { Quaternion, Vector3 } from 'three';\n\nexport function getStepRotation(agent: TKinematicTransformAgent, rotationStep: TRadians, infinite: boolean): Quaternion | undefined {\n if (!infinite && isNotDefined(agent.data.target?.rotation)) return undefined;\n\n // Retrieve the target rotation (for infinite mode, it's used as a descriptor).\n const targetRotation: Quaternion = agent.data.target?.rotation ?? new Quaternion();\n const targetNormalized: Quaternion = targetRotation.clone().normalize();\n\n // Clamp w-component to prevent floating-point errors.\n const clamped: number = Math.min(Math.max(targetNormalized.w, -1), 1);\n let angle: number = 2 * Math.acos(clamped);\n\n // Correct angle to take the shortest rotation path.\n if (angle > Math.PI) angle -= 2 * Math.PI;\n\n const sinHalfAngle: number = Math.sqrt(1 - clamped * clamped);\n\n // Extract rotation axis; use a default axis if sinHalfAngle is too small.\n const axis: Vector3 = sinHalfAngle > 1e-6 ? new Vector3(targetNormalized.x, targetNormalized.y, targetNormalized.z).divideScalar(sinHalfAngle).normalize() : new Vector3(0, 1, 0);\n\n // Infinite Rotation Mode\n if (infinite) {\n // Use the computed sign (after correction) to determine a rotation direction.\n const stepAngle: number = Math.sign(angle) * rotationStep;\n return new Quaternion().setFromAxisAngle(axis, stepAngle);\n }\n\n // Finite Rotation Mode\n const currentRotation: Quaternion = agent.rotation$.value.clone().normalize();\n const qRelative: Quaternion = currentRotation.clone().invert().multiply(targetNormalized);\n\n // Clamp w-component for relative rotation.\n const relativeClampedW: number = Math.min(Math.max(qRelative.w, -1), 1);\n let relativeAngle: number = 2 * Math.acos(relativeClampedW);\n\n // Correct relative angle for the shortest path.\n if (relativeAngle > Math.PI) relativeAngle -= 2 * Math.PI;\n\n const relativeSinHalfAngle: number = Math.sqrt(1 - relativeClampedW * relativeClampedW);\n\n // Extract the relative rotation axis.\n const relativeAxis: Vector3 = relativeSinHalfAngle > 1e-6 ? new Vector3(qRelative.x, qRelative.y, qRelative.z).divideScalar(relativeSinHalfAngle).normalize() : new Vector3(0, 1, 0);\n\n // Compute the rotation step with the shortest path correction.\n const stepAngle: number = Math.sign(relativeAngle) * Math.min(Math.abs(relativeAngle), rotationStep);\n\n return stepAngle !== 0 ? new Quaternion().setFromAxisAngle(relativeAxis, stepAngle) : undefined;\n}\n\nexport function isPointReached(target: TKinematicTarget | undefined, position: TReadonlyVector3, state: TKinematicState): boolean {\n if (isNotDefined(target)) return false;\n const { position: targetPosition, positionThreshold } = target;\n if (isNotDefined(targetPosition)) return false;\n\n const { linearSpeed, linearDirection } = state;\n\n // If the agent is already at the target, do not move\n if (linearSpeed === 0) return true;\n\n const vectorToTarget: Vector3 = targetPosition.clone().sub(position);\n const distanceSquared: TMeters = vectorToTarget.lengthSq() as TMeters;\n\n // If the agent is close enough to the target, stop\n if (distanceSquared < positionThreshold * positionThreshold) return true;\n\n const crossedTarget: boolean = vectorToTarget.dot(linearDirection) < 0;\n // If the agent has passed the target, stop\n if (crossedTarget) return true;\n\n return false;\n}\n\nexport function isRotationReached(target: TKinematicTarget | undefined, rotation: TReadonlyQuaternion, state: TKinematicState): boolean {\n if (isNotDefined(target)) return false;\n const { rotation: targetRotation, rotationThreshold } = target;\n\n if (isNotDefined(targetRotation)) return false;\n\n const { angularSpeed } = state;\n\n // If the speed is 0, do nothing\n if (angularSpeed === 0) return true;\n\n // Calculate the current angle to the target\n const angleToTarget: TRadians = rotation.angleTo(targetRotation) as TRadians;\n\n // If the agent is close enough to the target, stop\n if (angleToTarget < rotationThreshold) return true;\n\n return false;\n}\n\nexport function rotateInstantly(agent: TWriteable<TKinematicTransformAgent>, targetRotation: TReadonlyQuaternion): void {\n agent.setAngularSpeed(0);\n // eslint-disable-next-line functional/immutable-data\n if (isDefined(agent.data.target?.rotation)) (agent.data.target as TWriteable<TKinematicTarget>).rotation = undefined;\n // eslint-disable-next-line functional/immutable-data\n (agent.data.state as TWriteable<TKinematicState>).angularDirection = targetRotation.clone().normalize();\n agent.rotation$.next(agent.data.state.angularDirection);\n return;\n}\n\nexport function moveInstantly(agent: TWriteable<TKinematicTransformAgent>, targetPosition: TReadonlyVector3): void {\n agent.setLinearSpeed(0);\n // eslint-disable-next-line functional/immutable-data\n if (isDefined(agent.data.target?.position)) (agent.data.target as TWriteable<TKinematicTarget>).position = undefined;\n agent.position$.next(targetPosition);\n return;\n}\n\nexport function isInstant(speed: TKinematicSpeed): speed is KinematicSpeed.Instant {\n return speed === KinematicSpeed.Instant;\n}\n"],"names":["getStepRotation","agent","rotationStep","infinite","isNotDefined","data","target","rotation","targetNormalized","Quaternion","clone","normalize","clamped","Math","min","max","w","angle","acos","PI","sinHalfAngle","sqrt","axis","Vector3","x","y","z","divideScalar","stepAngle","sign","setFromAxisAngle","qRelative","rotation$","value","invert","multiply","relativeClampedW","relativeAngle","relativeSinHalfAngle","relativeAxis","abs","isPointReached","position","state","targetPosition","positionThreshold","linearSpeed","linearDirection","vectorToTarget","sub","lengthSq","dot","isRotationReached","targetRotation","rotationThreshold","angularSpeed","angleTo","rotateInstantly","setAngularSpeed","isDefined","angularDirection","next","moveInstantly","setLinearSpeed","position$","isInstant","speed","KinematicSpeed","Instant"],"mappings":"4MASO,SAASA,gBAAgBC,MAAiCC,aAAwBC,UACvF,IAAKA,UAAYC,aAAaH,MAAMI,KAAKC,QAAQC,UAAW,OAG5D,MACMC,kBAD6BP,MAAMI,KAAKC,QAAQC,UAAY,IAAIE,YAClBC,QAAQC,YAGtDC,QAAkBC,KAAKC,IAAID,KAAKE,IAAIP,iBAAiBQ,MAAQ,GACnE,IAAIC,MAAgB,EAAIJ,KAAKK,KAAKN,SAG9BK,MAAQJ,KAAKM,KAAIF,OAAS,EAAIJ,KAAKM,IAEvC,MAAMC,aAAuBP,KAAKQ,KAAK,EAAIT,QAAUA,SAG/CU,KAAgBF,aAAe,KAAO,IAAIG,QAAQf,iBAAiBgB,EAAGhB,iBAAiBiB,EAAGjB,iBAAiBkB,GAAGC,aAAaP,cAAcT,YAAc,IAAIY,QAAQ,EAAG,EAAG,GAG/K,GAAIpB,SAAU,CAEZ,MAAMyB,WAAoBf,KAAKgB,KAAKZ,OAASf,aAC7C,OAAO,IAAIO,YAAaqB,iBAAiBR,KAAMM,WACjD,CAGA,MACMG,UAD8B9B,MAAM+B,UAAUC,MAAMvB,QAAQC,YACpBD,QAAQwB,SAASC,SAAS3B,kBAGlE4B,iBAA2BvB,KAAKC,IAAID,KAAKE,IAAIgB,UAAUf,MAAQ,GACrE,IAAIqB,cAAwB,EAAIxB,KAAKK,KAAKkB,kBAGtCC,cAAgBxB,KAAKM,KAAIkB,eAAiB,EAAIxB,KAAKM,IAEvD,MAAMmB,qBAA+BzB,KAAKQ,KAAK,EAAIe,iBAAmBA,kBAGhEG,aAAwBD,qBAAuB,KAAO,IAAIf,QAAQQ,UAAUP,EAAGO,UAAUN,EAAGM,UAAUL,GAAGC,aAAaW,sBAAsB3B,YAAc,IAAIY,QAAQ,EAAG,EAAG,GAG5KK,UAAoBf,KAAKgB,KAAKQ,eAAiBxB,KAAKC,IAAID,KAAK2B,IAAIH,eAAgBnC,cAEvF,OAAqB,IAAd0B,WAAkB,IAAInB,YAAaqB,iBAAiBS,aAAcX,gBAAa,CACxF,CAEO,SAASa,eAAenC,OAAsCoC,SAA4BC,OAC/F,GAAIvC,aAAaE,QAAS,OAAO,EACjC,MAAQoC,SAAUE,eAAAC,kBAAgBA,mBAAsBvC,OACxD,GAAIF,aAAawC,gBAAiB,OAAO,EAEzC,MAAME,YAAEA,YAAAC,gBAAaA,iBAAoBJ,MAGzC,GAAoB,IAAhBG,YAAmB,OAAO,EAE9B,MAAME,eAA0BJ,eAAelC,QAAQuC,IAAIP,UAI3D,OAHiCM,eAAeE,WAG1BL,kBAAoBA,sBAEXG,eAAeG,IAAIJ,iBAAmB,EAKvE,CAEO,SAASK,kBAAkB9C,OAAsCC,SAA+BoC,OACrG,GAAIvC,aAAaE,QAAS,OAAO,EACjC,MAAQC,SAAU8C,eAAAC,kBAAgBA,mBAAsBhD,OAExD,GAAIF,aAAaiD,gBAAiB,OAAO,EAEzC,MAAME,aAAEA,cAAiBZ,MAGzB,OAAqB,IAAjBY,cAG4BhD,SAASiD,QAAQH,gBAG7BC,iBAGtB,CAEO,SAASG,gBAAgBxD,MAA6CoD,gBAC3EpD,MAAMyD,gBAAgB,GAElBC,UAAU1D,MAAMI,KAAKC,QAAQC,YAAYN,MAAMI,KAAKC,OAAwCC,cAAW,GAE1GN,MAAMI,KAAKsC,MAAsCiB,iBAAmBP,eAAe3C,QAAQC,YAC5FV,MAAM+B,UAAU6B,KAAK5D,MAAMI,KAAKsC,MAAMiB,iBAExC,CAEO,SAASE,cAAc7D,MAA6C2C,gBACzE3C,MAAM8D,eAAe,GAEjBJ,UAAU1D,MAAMI,KAAKC,QAAQoC,YAAYzC,MAAMI,KAAKC,OAAwCoC,cAAW,GAC3GzC,MAAM+D,UAAUH,KAAKjB,eAEvB,CAEO,SAASqB,UAAUC,OACxB,OAAOA,QAAUC,eAAeC,OAClC"}
@@ -1,8 +1,8 @@
1
+ import { TMeters, TRadians } from '../../Math';
2
+ import { TPhysicsBody, TPhysicsBodyParams, TPhysicsBodyService } from '../../Physics';
3
+ import { TReadonlyQuaternion, TReadonlyVector3 } from '../../ThreeLib';
4
+ import { TRigidBodyTransformData } from '../Models';
1
5
  import { RigidBody } from '@dimforge/rapier3d';
2
- import { TMeters, TRadians } from '@hellpig/anarchy-engine/Math';
3
- import { TPhysicsBody, TPhysicsBodyParams, TPhysicsBodyService } from '@hellpig/anarchy-engine/Physics';
4
- import { TReadonlyQuaternion, TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';
5
- import { TRigidBodyTransformData } from '@hellpig/anarchy-engine/TransformDrive/Models';
6
6
  export declare function getPhysicsBodyTransform(body: RigidBody | undefined, prevPosition: Float32Array, prevRotation: Float32Array, tmpPosition: Float32Array, tmpRotation: Float32Array, positionNoiseThreshold: TMeters, rotationNoiseThreshold: TRadians): TRigidBodyTransformData | undefined;
7
7
  export declare function createPhysicsBody(physicsBodyParams: TPhysicsBodyParams, physicsBodyService: TPhysicsBodyService): TPhysicsBody | undefined;
8
8
  export declare function applyLatestTransform(rigidBody: RigidBody | undefined, position: TReadonlyVector3, rotation: TReadonlyQuaternion): void;
@@ -1 +1 @@
1
- {"version":3,"file":"PhysicsTransformAgentUtils.js","sources":["../../../src/TransformDrive/Utils/PhysicsTransformAgentUtils.ts"],"sourcesContent":["import type { RigidBody, Rotation, Vector } from '@dimforge/rapier3d';\nimport type { TMeters, TRadians } from '@hellpig/anarchy-engine/Math';\nimport type { TPhysicsBody, TPhysicsBodyParams, TPhysicsBodyService } from '@hellpig/anarchy-engine/Physics';\nimport { isPhysicsBodyParamsComplete } from '@hellpig/anarchy-engine/Physics';\nimport type { TReadonlyQuaternion, TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';\nimport type { TRigidBodyTransformData } from '@hellpig/anarchy-engine/TransformDrive/Models';\nimport { isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport function getPhysicsBodyTransform(\n body: RigidBody | undefined,\n prevPosition: Float32Array,\n prevRotation: Float32Array,\n tmpPosition: Float32Array,\n tmpRotation: Float32Array,\n positionNoiseThreshold: TMeters,\n rotationNoiseThreshold: TRadians\n): TRigidBodyTransformData | undefined {\n if (isNotDefined(body)) return undefined;\n\n const translation: Vector = body.translation();\n // eslint-disable-next-line functional/immutable-data\n tmpPosition[0] = translation.x;\n // eslint-disable-next-line functional/immutable-data\n tmpPosition[1] = translation.y;\n // eslint-disable-next-line functional/immutable-data\n tmpPosition[2] = translation.z;\n\n const rotation: Rotation = body.rotation();\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[0] = rotation.x;\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[1] = rotation.y;\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[2] = rotation.z;\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[3] = rotation.w;\n\n const changedPosition: boolean =\n Math.abs(tmpPosition[0] - prevPosition[0]) > positionNoiseThreshold ||\n Math.abs(tmpPosition[1] - prevPosition[1]) > positionNoiseThreshold ||\n Math.abs(tmpPosition[2] - prevPosition[2]) > positionNoiseThreshold;\n\n const changedRotation: boolean =\n Math.abs(tmpRotation[0] - prevRotation[0]) > rotationNoiseThreshold ||\n Math.abs(tmpRotation[1] - prevRotation[1]) > rotationNoiseThreshold ||\n Math.abs(tmpRotation[2] - prevRotation[2]) > rotationNoiseThreshold ||\n Math.abs(tmpRotation[3] - prevRotation[3]) > rotationNoiseThreshold;\n\n if (!changedPosition && !changedRotation) return undefined;\n\n if (changedPosition) prevPosition.set(tmpPosition);\n if (changedRotation) prevRotation.set(tmpRotation);\n\n return {\n position: changedPosition ? new Float32Array(prevPosition) : undefined,\n rotation: changedRotation ? new Float32Array(prevRotation) : undefined\n };\n}\n\nexport function createPhysicsBody(physicsBodyParams: TPhysicsBodyParams, physicsBodyService: TPhysicsBodyService): TPhysicsBody | undefined {\n if (!isPhysicsBodyParamsComplete(physicsBodyParams)) return undefined;\n return physicsBodyService.create(physicsBodyParams);\n}\n\nexport function applyLatestTransform(rigidBody: RigidBody | undefined, position: TReadonlyVector3, rotation: TReadonlyQuaternion): void {\n if (isNotDefined(rigidBody)) return;\n rigidBody.setTranslation(position, false);\n rigidBody.setRotation(rotation, false);\n}\n"],"names":["getPhysicsBodyTransform","body","prevPosition","prevRotation","tmpPosition","tmpRotation","positionNoiseThreshold","rotationNoiseThreshold","isNotDefined","translation","x","y","z","rotation","w","changedPosition","Math","abs","changedRotation","set","position","Float32Array","createPhysicsBody","physicsBodyParams","physicsBodyService","isPhysicsBodyParamsComplete","create","applyLatestTransform","rigidBody","setTranslation","setRotation"],"mappings":"4JAQO,SAASA,wBACdC,KACAC,aACAC,aACAC,YACAC,YACAC,uBACAC,wBAEA,GAAIC,aAAaP,MAAO,OAExB,MAAMQ,YAAsBR,KAAKQ,cAEjCL,YAAY,GAAKK,YAAYC,EAE7BN,YAAY,GAAKK,YAAYE,EAE7BP,YAAY,GAAKK,YAAYG,EAE7B,MAAMC,SAAqBZ,KAAKY,WAEhCR,YAAY,GAAKQ,SAASH,EAE1BL,YAAY,GAAKQ,SAASF,EAE1BN,YAAY,GAAKQ,SAASD,EAE1BP,YAAY,GAAKQ,SAASC,EAE1B,MAAMC,gBACJC,KAAKC,IAAIb,YAAY,GAAKF,aAAa,IAAMI,wBAC7CU,KAAKC,IAAIb,YAAY,GAAKF,aAAa,IAAMI,wBAC7CU,KAAKC,IAAIb,YAAY,GAAKF,aAAa,IAAMI,uBAEzCY,gBACJF,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,wBAC7CS,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,wBAC7CS,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,wBAC7CS,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,uBAE/C,OAAKQ,iBAAoBG,iBAErBH,iBAAiBb,aAAaiB,IAAIf,aAClCc,iBAAiBf,aAAagB,IAAId,aAE/B,CACLe,SAAUL,gBAAkB,IAAIM,aAAanB,mBAAgB,EAC7DW,SAAUK,gBAAkB,IAAIG,aAAalB,mBAAgB,SAP/D,CASF,CAEO,SAASmB,kBAAkBC,kBAAuCC,oBACvE,GAAKC,4BAA4BF,mBACjC,OAAOC,mBAAmBE,OAAOH,kBACnC,CAEO,SAASI,qBAAqBC,UAAkCR,SAA4BP,UAC7FL,aAAaoB,aACjBA,UAAUC,eAAeT,UAAU,GACnCQ,UAAUE,YAAYjB,UAAU,GAClC"}
1
+ {"version":3,"file":"PhysicsTransformAgentUtils.js","sources":["../../../src/TransformDrive/Utils/PhysicsTransformAgentUtils.ts"],"sourcesContent":["import type { TMeters, TRadians } from '@Anarchy/Engine/Math';\nimport type { TPhysicsBody, TPhysicsBodyParams, TPhysicsBodyService } from '@Anarchy/Engine/Physics';\nimport { isPhysicsBodyParamsComplete } from '@Anarchy/Engine/Physics';\nimport type { TReadonlyQuaternion, TReadonlyVector3 } from '@Anarchy/Engine/ThreeLib';\nimport type { TRigidBodyTransformData } from '@Anarchy/Engine/TransformDrive/Models';\nimport type { RigidBody, Rotation, Vector } from '@dimforge/rapier3d';\nimport { isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport function getPhysicsBodyTransform(\n body: RigidBody | undefined,\n prevPosition: Float32Array,\n prevRotation: Float32Array,\n tmpPosition: Float32Array,\n tmpRotation: Float32Array,\n positionNoiseThreshold: TMeters,\n rotationNoiseThreshold: TRadians\n): TRigidBodyTransformData | undefined {\n if (isNotDefined(body)) return undefined;\n\n const translation: Vector = body.translation();\n // eslint-disable-next-line functional/immutable-data\n tmpPosition[0] = translation.x;\n // eslint-disable-next-line functional/immutable-data\n tmpPosition[1] = translation.y;\n // eslint-disable-next-line functional/immutable-data\n tmpPosition[2] = translation.z;\n\n const rotation: Rotation = body.rotation();\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[0] = rotation.x;\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[1] = rotation.y;\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[2] = rotation.z;\n // eslint-disable-next-line functional/immutable-data\n tmpRotation[3] = rotation.w;\n\n const changedPosition: boolean =\n Math.abs(tmpPosition[0] - prevPosition[0]) > positionNoiseThreshold ||\n Math.abs(tmpPosition[1] - prevPosition[1]) > positionNoiseThreshold ||\n Math.abs(tmpPosition[2] - prevPosition[2]) > positionNoiseThreshold;\n\n const changedRotation: boolean =\n Math.abs(tmpRotation[0] - prevRotation[0]) > rotationNoiseThreshold ||\n Math.abs(tmpRotation[1] - prevRotation[1]) > rotationNoiseThreshold ||\n Math.abs(tmpRotation[2] - prevRotation[2]) > rotationNoiseThreshold ||\n Math.abs(tmpRotation[3] - prevRotation[3]) > rotationNoiseThreshold;\n\n if (!changedPosition && !changedRotation) return undefined;\n\n if (changedPosition) prevPosition.set(tmpPosition);\n if (changedRotation) prevRotation.set(tmpRotation);\n\n return {\n position: changedPosition ? new Float32Array(prevPosition) : undefined,\n rotation: changedRotation ? new Float32Array(prevRotation) : undefined\n };\n}\n\nexport function createPhysicsBody(physicsBodyParams: TPhysicsBodyParams, physicsBodyService: TPhysicsBodyService): TPhysicsBody | undefined {\n if (!isPhysicsBodyParamsComplete(physicsBodyParams)) return undefined;\n return physicsBodyService.create(physicsBodyParams);\n}\n\nexport function applyLatestTransform(rigidBody: RigidBody | undefined, position: TReadonlyVector3, rotation: TReadonlyQuaternion): void {\n if (isNotDefined(rigidBody)) return;\n rigidBody.setTranslation(position, false);\n rigidBody.setRotation(rotation, false);\n}\n"],"names":["getPhysicsBodyTransform","body","prevPosition","prevRotation","tmpPosition","tmpRotation","positionNoiseThreshold","rotationNoiseThreshold","isNotDefined","translation","x","y","z","rotation","w","changedPosition","Math","abs","changedRotation","set","position","Float32Array","createPhysicsBody","physicsBodyParams","physicsBodyService","isPhysicsBodyParamsComplete","create","applyLatestTransform","rigidBody","setTranslation","setRotation"],"mappings":"4JAQO,SAASA,wBACdC,KACAC,aACAC,aACAC,YACAC,YACAC,uBACAC,wBAEA,GAAIC,aAAaP,MAAO,OAExB,MAAMQ,YAAsBR,KAAKQ,cAEjCL,YAAY,GAAKK,YAAYC,EAE7BN,YAAY,GAAKK,YAAYE,EAE7BP,YAAY,GAAKK,YAAYG,EAE7B,MAAMC,SAAqBZ,KAAKY,WAEhCR,YAAY,GAAKQ,SAASH,EAE1BL,YAAY,GAAKQ,SAASF,EAE1BN,YAAY,GAAKQ,SAASD,EAE1BP,YAAY,GAAKQ,SAASC,EAE1B,MAAMC,gBACJC,KAAKC,IAAIb,YAAY,GAAKF,aAAa,IAAMI,wBAC7CU,KAAKC,IAAIb,YAAY,GAAKF,aAAa,IAAMI,wBAC7CU,KAAKC,IAAIb,YAAY,GAAKF,aAAa,IAAMI,uBAEzCY,gBACJF,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,wBAC7CS,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,wBAC7CS,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,wBAC7CS,KAAKC,IAAIZ,YAAY,GAAKF,aAAa,IAAMI,uBAE/C,OAAKQ,iBAAoBG,iBAErBH,iBAAiBb,aAAaiB,IAAIf,aAClCc,iBAAiBf,aAAagB,IAAId,aAE/B,CACLe,SAAUL,gBAAkB,IAAIM,aAAanB,mBAAgB,EAC7DW,SAAUK,gBAAkB,IAAIG,aAAalB,mBAAgB,SAP/D,CASF,CAEO,SAASmB,kBAAkBC,kBAAuCC,oBACvE,GAAKC,4BAA4BF,mBACjC,OAAOC,mBAAmBE,OAAOH,kBACnC,CAEO,SAASI,qBAAqBC,UAAkCR,SAA4BP,UAC7FL,aAAaoB,aACjBA,UAAUC,eAAeT,UAAU,GACnCQ,UAAUE,YAAYjB,UAAU,GAClC"}
@@ -1,6 +1,6 @@
1
- import { TReadonlyQuaternion, TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';
2
- import { TransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Constants';
3
- import { TAbstractTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Models';
1
+ import { TReadonlyQuaternion, TReadonlyVector3 } from '../../ThreeLib';
2
+ import { TransformAgent } from '../Constants';
3
+ import { TAbstractTransformAgent } from '../Models';
4
4
  import { BehaviorSubject, Observable } from 'rxjs';
5
5
  export declare function getDynamicAgents<T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(agents: T): T;
6
6
  export declare function updateFromActiveAgent<T extends TReadonlyVector3 | TReadonlyQuaternion>(activeAgent$: BehaviorSubject<TAbstractTransformAgent>, agentProp: 'position$' | 'rotation$' | 'scale$', { threshold }: Readonly<{
@@ -1 +1 @@
1
- {"version":3,"file":"TransformDriveUtils.js","sources":["../../../src/TransformDrive/Utils/TransformDriveUtils.ts"],"sourcesContent":["import type { TReadonlyQuaternion, TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';\nimport type { TransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Constants';\nimport type { TAbstractTransformAgent } from '@hellpig/anarchy-engine/TransformDrive/Models';\nimport { isEqualOrSimilarByXyzCoords } from '@hellpig/anarchy-engine/Utils';\nimport { isDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { BehaviorSubject, Observable, Subject } from 'rxjs';\nimport { distinctUntilChanged, EMPTY, switchMap, tap } from 'rxjs';\n\nexport function getDynamicAgents<T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(agents: T): T {\n return Object.fromEntries(Object.entries(agents).map((v) => [v[0], v[1]])) as T;\n}\n\nexport function updateFromActiveAgent<T extends TReadonlyVector3 | TReadonlyQuaternion>(\n activeAgent$: BehaviorSubject<TAbstractTransformAgent>,\n agentProp: 'position$' | 'rotation$' | 'scale$',\n { threshold }: Readonly<{ threshold: number }>\n): Observable<T> {\n const prevValue: Float32Array = new Float32Array([0, 0, 0]);\n\n return activeAgent$.pipe(\n switchMap((agent: TAbstractTransformAgent): Subject<T> | Observable<never> => {\n return isDefined(agent) ? (agent[agentProp] as unknown as Subject<T>) : EMPTY;\n }),\n distinctUntilChanged((_prev: T, curr: T): boolean => isEqualOrSimilarByXyzCoords(prevValue[0], prevValue[1], prevValue[2], curr.x, curr.y, curr.z, threshold)),\n tap((value: T): void => {\n // eslint-disable-next-line functional/immutable-data\n prevValue[0] = value.x;\n // eslint-disable-next-line functional/immutable-data\n prevValue[1] = value.y;\n // eslint-disable-next-line functional/immutable-data\n prevValue[2] = value.z;\n })\n );\n}\n"],"names":["getDynamicAgents","agents","Object","fromEntries","entries","map","v","updateFromActiveAgent","activeAgent$","agentProp","threshold","prevValue","Float32Array","pipe","switchMap","agent","isDefined","EMPTY","distinctUntilChanged","_prev","curr","isEqualOrSimilarByXyzCoords","x","y","z","tap","value"],"mappings":"2fAQO,SAASA,iBAAqFC,QACnG,OAAOC,OAAOC,YAAYD,OAAOE,QAAQH,QAAQI,IAAKC,GAAM,CAACA,EAAE,GAAIA,EAAE,KACvE,CAEO,SAASC,sBACdC,aACAC,WACAC,UAAEA,YAEF,MAAMC,UAA0B,IAAIC,aAAa,CAAC,EAAG,EAAG,IAExD,OAAOJ,aAAaK,KAClBC,UAAWC,OACFC,UAAUD,OAAUA,MAAMN,WAAuCQ,OAE1EC,qBAAqB,CAACC,MAAUC,OAAqBC,4BAA4BV,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIS,KAAKE,EAAGF,KAAKG,EAAGH,KAAKI,EAAGd,YACnJe,IAAKC,QAEHf,UAAU,GAAKe,MAAMJ,EAErBX,UAAU,GAAKe,MAAMH,EAErBZ,UAAU,GAAKe,MAAMF,IAG3B"}
1
+ {"version":3,"file":"TransformDriveUtils.js","sources":["../../../src/TransformDrive/Utils/TransformDriveUtils.ts"],"sourcesContent":["import type { TReadonlyQuaternion, TReadonlyVector3 } from '@Anarchy/Engine/ThreeLib';\nimport type { TransformAgent } from '@Anarchy/Engine/TransformDrive/Constants';\nimport type { TAbstractTransformAgent } from '@Anarchy/Engine/TransformDrive/Models';\nimport { isEqualOrSimilarByXyzCoords } from '@Anarchy/Engine/Utils';\nimport { isDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { BehaviorSubject, Observable, Subject } from 'rxjs';\nimport { distinctUntilChanged, EMPTY, switchMap, tap } from 'rxjs';\n\nexport function getDynamicAgents<T extends Partial<Record<TransformAgent, TAbstractTransformAgent>>>(agents: T): T {\n return Object.fromEntries(Object.entries(agents).map((v) => [v[0], v[1]])) as T;\n}\n\nexport function updateFromActiveAgent<T extends TReadonlyVector3 | TReadonlyQuaternion>(\n activeAgent$: BehaviorSubject<TAbstractTransformAgent>,\n agentProp: 'position$' | 'rotation$' | 'scale$',\n { threshold }: Readonly<{ threshold: number }>\n): Observable<T> {\n const prevValue: Float32Array = new Float32Array([0, 0, 0]);\n\n return activeAgent$.pipe(\n switchMap((agent: TAbstractTransformAgent): Subject<T> | Observable<never> => {\n return isDefined(agent) ? (agent[agentProp] as unknown as Subject<T>) : EMPTY;\n }),\n distinctUntilChanged((_prev: T, curr: T): boolean => isEqualOrSimilarByXyzCoords(prevValue[0], prevValue[1], prevValue[2], curr.x, curr.y, curr.z, threshold)),\n tap((value: T): void => {\n // eslint-disable-next-line functional/immutable-data\n prevValue[0] = value.x;\n // eslint-disable-next-line functional/immutable-data\n prevValue[1] = value.y;\n // eslint-disable-next-line functional/immutable-data\n prevValue[2] = value.z;\n })\n );\n}\n"],"names":["getDynamicAgents","agents","Object","fromEntries","entries","map","v","updateFromActiveAgent","activeAgent$","agentProp","threshold","prevValue","Float32Array","pipe","switchMap","agent","isDefined","EMPTY","distinctUntilChanged","_prev","curr","isEqualOrSimilarByXyzCoords","x","y","z","tap","value"],"mappings":"2fAQO,SAASA,iBAAqFC,QACnG,OAAOC,OAAOC,YAAYD,OAAOE,QAAQH,QAAQI,IAAKC,GAAM,CAACA,EAAE,GAAIA,EAAE,KACvE,CAEO,SAASC,sBACdC,aACAC,WACAC,UAAEA,YAEF,MAAMC,UAA0B,IAAIC,aAAa,CAAC,EAAG,EAAG,IAExD,OAAOJ,aAAaK,KAClBC,UAAWC,OACFC,UAAUD,OAAUA,MAAMN,WAAuCQ,OAE1EC,qBAAqB,CAACC,MAAUC,OAAqBC,4BAA4BV,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIS,KAAKE,EAAGF,KAAKG,EAAGH,KAAKI,EAAGd,YACnJe,IAAKC,QAEHf,UAAU,GAAKe,MAAMJ,EAErBX,UAAU,GAAKe,MAAMH,EAErBZ,UAAU,GAAKe,MAAMF,IAG3B"}
@@ -1,8 +1,8 @@
1
- import { TAbstractAsyncEntityRegistry, TAbstractEntityRegistry, TWithUserData, TWithWrapperId, TWithWrapperIdEntity } from '@hellpig/anarchy-engine/Abstract/Models';
2
- import { TColorWrapper } from '@hellpig/anarchy-engine/Color';
3
- import { TDestroyable, TWithPosition2dProperty, TWithPosition3dProperty, TWithPosition4dProperty, TWithPositionProperty } from '@hellpig/anarchy-engine/Mixins';
4
- import { TEulerLike } from '@hellpig/anarchy-engine/ThreeLib';
5
- import { TTransformDriveCompatibleEntity, TWithTransformDrive } from '@hellpig/anarchy-engine/TransformDrive';
1
+ import { TAbstractAsyncEntityRegistry, TAbstractEntityRegistry, TWithUserData, TWithWrapperId, TWithWrapperIdEntity } from '../Abstract/Models';
2
+ import { TColorWrapper } from '../Color';
3
+ import { TDestroyable, TWithPosition2dProperty, TWithPosition3dProperty, TWithPosition4dProperty, TWithPositionProperty } from '../Mixins';
4
+ import { TEulerLike } from '../ThreeLib';
5
+ import { TTransformDriveCompatibleEntity, TWithTransformDrive } from '../TransformDrive';
6
6
  import { BufferGeometry, Euler, Material, Quaternion, QuaternionLike, Vector2, Vector2Like, Vector3, Vector3Like, Vector4, Vector4Like } from 'three';
7
7
  export declare function isDestroyable(obj: unknown): obj is TDestroyable;
8
8
  export declare const isColorWrapper: (obj: unknown) => obj is TColorWrapper;
@@ -1 +1 @@
1
- {"version":3,"file":"CheckUtils.js","sources":["../../src/Utils/CheckUtils.ts"],"sourcesContent":["import type { TAbstractAsyncEntityRegistry, TAbstractEntityRegistry, TWithUserData, TWithWrapperId, TWithWrapperIdEntity } from '@hellpig/anarchy-engine/Abstract/Models';\nimport type { TColorWrapper } from '@hellpig/anarchy-engine/Color';\nimport type { TDestroyable, TWithPosition2dProperty, TWithPosition3dProperty, TWithPosition4dProperty, TWithPositionProperty } from '@hellpig/anarchy-engine/Mixins';\nimport type { TEulerLike } from '@hellpig/anarchy-engine/ThreeLib';\nimport type { TTransformDriveCompatibleEntity, TWithTransformDrive } from '@hellpig/anarchy-engine/TransformDrive';\nimport { isDefined, isNotDefined, isObject } from '@hellpig/anarchy-shared/Utils';\nimport type { BufferGeometry, Euler, Material, Quaternion, QuaternionLike, Vector2, Vector2Like, Vector3, Vector3Like, Vector4, Vector4Like } from 'three';\nimport { Color } from 'three';\n\nexport function isDestroyable(obj: unknown): obj is TDestroyable {\n return isDefined((obj as TDestroyable).destroy$);\n}\n\nexport const isColorWrapper = (obj: unknown): obj is TColorWrapper => isDefined((obj as TColorWrapper).entity) && (obj as TColorWrapper).entity instanceof Color;\n\nexport const isWithUserData = (entity: any): entity is TWithUserData => isDefined((entity as TWithUserData).userData);\n\nexport const isWithWrapperIdAccessors = (entity: any): entity is TWithWrapperId => isDefined((entity as TWithWrapperId).setWrapperId) && isDefined((entity as TWithWrapperId).getWrapperId);\n\nexport function isWithWrapperId<T extends TWithUserData>(obj: unknown): obj is TWithWrapperIdEntity<T> {\n return isDefined(obj) && isObject(obj) && isDefined((obj as TWithWrapperIdEntity<T>).userData) && isDefined((obj as TWithWrapperIdEntity<T>).userData.wrapperId);\n}\n\ntype TMetrics = Vector2 | Vector3 | Vector4 | Vector2Like | Vector3Like | Vector4Like | Quaternion | Euler | QuaternionLike | TEulerLike;\nexport const isVector2Like = (obj: TMetrics): obj is Vector2Like => isDefined(obj.x) && isDefined(obj.x) && isNotDefined((obj as Vector3).z) && isNotDefined((obj as Vector4).w);\nexport const isVector3Like = (obj: TMetrics): obj is Vector3Like => isDefined(obj.x) && isDefined(obj.x) && isDefined((obj as Vector3).z) && isNotDefined((obj as Vector4).w);\nexport const isVector4Like = (obj: TMetrics): obj is Vector4Like => isDefined(obj.x) && isDefined(obj.x) && isDefined((obj as Vector4).z) && isDefined((obj as Vector4).w);\n\n// TODO add unit tests\nexport const isQuaternionLike = (obj: TMetrics): obj is QuaternionLike => isVector4Like(obj as Vector4);\n// TODO add unit tests\nexport const isEulerLike = (obj: TMetrics): obj is Euler => isVector3Like(obj as Vector3);\n\nexport const isEntityWith2dPosition = (obj: TWithPositionProperty): obj is TWithPosition2dProperty => isVector2Like(obj.position as Vector2);\nexport const isEntityWith3dPosition = (obj: TWithPositionProperty): obj is TWithPosition3dProperty => isVector3Like(obj.position as Vector3);\nexport const isEntityWith4dPosition = (obj: TWithPositionProperty): obj is TWithPosition4dProperty => isVector4Like(obj.position as Vector4);\n\nexport const isAsyncEntityRegistry = (registry: TAbstractEntityRegistry<any> | TAbstractAsyncEntityRegistry<any>): registry is TAbstractAsyncEntityRegistry<any> =>\n isDefined((registry as TAbstractAsyncEntityRegistry<any>).findByTagsAsync) && isDefined((registry as TAbstractAsyncEntityRegistry<any>).findByTagAsync);\n\nexport const hasMaterial = (entity: unknown): entity is { material?: Material | Array<Material> | null } => isDefined((entity as any).material);\n\nexport const hasGeometry = (entity: unknown): entity is { geometry?: BufferGeometry | null } => isDefined((entity as any).geometry);\n\nexport function hasTransformDrive<T extends TTransformDriveCompatibleEntity>(entity: unknown): entity is TWithTransformDrive<T> {\n return isDefined((entity as TWithTransformDrive<T>).drive) && isDefined((entity as TWithTransformDrive<T>).driveToTargetConnector);\n}\n"],"names":["isDestroyable","obj","isDefined","destroy$","isColorWrapper","entity","Color","isWithUserData","userData","isWithWrapperIdAccessors","setWrapperId","getWrapperId","isWithWrapperId","isObject","wrapperId","isVector2Like","x","isNotDefined","z","w","isVector3Like","isVector4Like","isQuaternionLike","isEulerLike","isEntityWith2dPosition","position","isEntityWith3dPosition","isEntityWith4dPosition","isAsyncEntityRegistry","registry","findByTagsAsync","findByTagAsync","hasMaterial","material","hasGeometry","geometry","hasTransformDrive","drive","driveToTargetConnector"],"mappings":"0LASO,SAASA,cAAcC,KAC5B,OAAOC,UAAWD,IAAqBE,SACzC,CAEO,MAAMC,eAAkBH,KAAuCC,UAAWD,IAAsBI,SAAYJ,IAAsBI,kBAAkBC,MAE9IC,eAAkBF,QAAyCH,UAAWG,OAAyBG,UAE/FC,yBAA4BJ,QAA0CH,UAAWG,OAA0BK,eAAiBR,UAAWG,OAA0BM,cAEvK,SAASC,gBAAyCX,KACvD,OAAOC,UAAUD,MAAQY,SAASZ,MAAQC,UAAWD,IAAgCO,WAAaN,UAAWD,IAAgCO,SAASM,UACxJ,CAGO,MAAMC,cAAiBd,KAAsCC,UAAUD,IAAIe,IAAMd,UAAUD,IAAIe,IAAMC,aAAchB,IAAgBiB,IAAMD,aAAchB,IAAgBkB,GACjKC,cAAiBnB,KAAsCC,UAAUD,IAAIe,IAAMd,UAAUD,IAAIe,IAAMd,UAAWD,IAAgBiB,IAAMD,aAAchB,IAAgBkB,GAC9JE,cAAiBpB,KAAsCC,UAAUD,IAAIe,IAAMd,UAAUD,IAAIe,IAAMd,UAAWD,IAAgBiB,IAAMhB,UAAWD,IAAgBkB,GAG3JG,iBAAoBrB,KAAyCoB,cAAcpB,KAE3EsB,YAAetB,KAAgCmB,cAAcnB,KAE7DuB,uBAA0BvB,KAA+Dc,cAAcd,IAAIwB,UAC3GC,uBAA0BzB,KAA+DmB,cAAcnB,IAAIwB,UAC3GE,uBAA0B1B,KAA+DoB,cAAcpB,IAAIwB,UAE3GG,sBAAyBC,UACpC3B,UAAW2B,SAA+CC,kBAAoB5B,UAAW2B,SAA+CE,gBAE7HC,YAAe3B,QAAgFH,UAAWG,OAAe4B,UAEzHC,YAAe7B,QAAoEH,UAAWG,OAAe8B,UAEnH,SAASC,kBAA6D/B,QAC3E,OAAOH,UAAWG,OAAkCgC,QAAUnC,UAAWG,OAAkCiC,uBAC7G"}
1
+ {"version":3,"file":"CheckUtils.js","sources":["../../src/Utils/CheckUtils.ts"],"sourcesContent":["import type { TAbstractAsyncEntityRegistry, TAbstractEntityRegistry, TWithUserData, TWithWrapperId, TWithWrapperIdEntity } from '@Anarchy/Engine/Abstract/Models';\nimport type { TColorWrapper } from '@Anarchy/Engine/Color';\nimport type { TDestroyable, TWithPosition2dProperty, TWithPosition3dProperty, TWithPosition4dProperty, TWithPositionProperty } from '@Anarchy/Engine/Mixins';\nimport type { TEulerLike } from '@Anarchy/Engine/ThreeLib';\nimport type { TTransformDriveCompatibleEntity, TWithTransformDrive } from '@Anarchy/Engine/TransformDrive';\nimport { isDefined, isNotDefined, isObject } from '@hellpig/anarchy-shared/Utils';\nimport type { BufferGeometry, Euler, Material, Quaternion, QuaternionLike, Vector2, Vector2Like, Vector3, Vector3Like, Vector4, Vector4Like } from 'three';\nimport { Color } from 'three';\n\nexport function isDestroyable(obj: unknown): obj is TDestroyable {\n return isDefined((obj as TDestroyable).destroy$);\n}\n\nexport const isColorWrapper = (obj: unknown): obj is TColorWrapper => isDefined((obj as TColorWrapper).entity) && (obj as TColorWrapper).entity instanceof Color;\n\nexport const isWithUserData = (entity: any): entity is TWithUserData => isDefined((entity as TWithUserData).userData);\n\nexport const isWithWrapperIdAccessors = (entity: any): entity is TWithWrapperId => isDefined((entity as TWithWrapperId).setWrapperId) && isDefined((entity as TWithWrapperId).getWrapperId);\n\nexport function isWithWrapperId<T extends TWithUserData>(obj: unknown): obj is TWithWrapperIdEntity<T> {\n return isDefined(obj) && isObject(obj) && isDefined((obj as TWithWrapperIdEntity<T>).userData) && isDefined((obj as TWithWrapperIdEntity<T>).userData.wrapperId);\n}\n\ntype TMetrics = Vector2 | Vector3 | Vector4 | Vector2Like | Vector3Like | Vector4Like | Quaternion | Euler | QuaternionLike | TEulerLike;\nexport const isVector2Like = (obj: TMetrics): obj is Vector2Like => isDefined(obj.x) && isDefined(obj.x) && isNotDefined((obj as Vector3).z) && isNotDefined((obj as Vector4).w);\nexport const isVector3Like = (obj: TMetrics): obj is Vector3Like => isDefined(obj.x) && isDefined(obj.x) && isDefined((obj as Vector3).z) && isNotDefined((obj as Vector4).w);\nexport const isVector4Like = (obj: TMetrics): obj is Vector4Like => isDefined(obj.x) && isDefined(obj.x) && isDefined((obj as Vector4).z) && isDefined((obj as Vector4).w);\n\n// TODO add unit tests\nexport const isQuaternionLike = (obj: TMetrics): obj is QuaternionLike => isVector4Like(obj as Vector4);\n// TODO add unit tests\nexport const isEulerLike = (obj: TMetrics): obj is Euler => isVector3Like(obj as Vector3);\n\nexport const isEntityWith2dPosition = (obj: TWithPositionProperty): obj is TWithPosition2dProperty => isVector2Like(obj.position as Vector2);\nexport const isEntityWith3dPosition = (obj: TWithPositionProperty): obj is TWithPosition3dProperty => isVector3Like(obj.position as Vector3);\nexport const isEntityWith4dPosition = (obj: TWithPositionProperty): obj is TWithPosition4dProperty => isVector4Like(obj.position as Vector4);\n\nexport const isAsyncEntityRegistry = (registry: TAbstractEntityRegistry<any> | TAbstractAsyncEntityRegistry<any>): registry is TAbstractAsyncEntityRegistry<any> =>\n isDefined((registry as TAbstractAsyncEntityRegistry<any>).findByTagsAsync) && isDefined((registry as TAbstractAsyncEntityRegistry<any>).findByTagAsync);\n\nexport const hasMaterial = (entity: unknown): entity is { material?: Material | Array<Material> | null } => isDefined((entity as any).material);\n\nexport const hasGeometry = (entity: unknown): entity is { geometry?: BufferGeometry | null } => isDefined((entity as any).geometry);\n\nexport function hasTransformDrive<T extends TTransformDriveCompatibleEntity>(entity: unknown): entity is TWithTransformDrive<T> {\n return isDefined((entity as TWithTransformDrive<T>).drive) && isDefined((entity as TWithTransformDrive<T>).driveToTargetConnector);\n}\n"],"names":["isDestroyable","obj","isDefined","destroy$","isColorWrapper","entity","Color","isWithUserData","userData","isWithWrapperIdAccessors","setWrapperId","getWrapperId","isWithWrapperId","isObject","wrapperId","isVector2Like","x","isNotDefined","z","w","isVector3Like","isVector4Like","isQuaternionLike","isEulerLike","isEntityWith2dPosition","position","isEntityWith3dPosition","isEntityWith4dPosition","isAsyncEntityRegistry","registry","findByTagsAsync","findByTagAsync","hasMaterial","material","hasGeometry","geometry","hasTransformDrive","drive","driveToTargetConnector"],"mappings":"0LASO,SAASA,cAAcC,KAC5B,OAAOC,UAAWD,IAAqBE,SACzC,CAEO,MAAMC,eAAkBH,KAAuCC,UAAWD,IAAsBI,SAAYJ,IAAsBI,kBAAkBC,MAE9IC,eAAkBF,QAAyCH,UAAWG,OAAyBG,UAE/FC,yBAA4BJ,QAA0CH,UAAWG,OAA0BK,eAAiBR,UAAWG,OAA0BM,cAEvK,SAASC,gBAAyCX,KACvD,OAAOC,UAAUD,MAAQY,SAASZ,MAAQC,UAAWD,IAAgCO,WAAaN,UAAWD,IAAgCO,SAASM,UACxJ,CAGO,MAAMC,cAAiBd,KAAsCC,UAAUD,IAAIe,IAAMd,UAAUD,IAAIe,IAAMC,aAAchB,IAAgBiB,IAAMD,aAAchB,IAAgBkB,GACjKC,cAAiBnB,KAAsCC,UAAUD,IAAIe,IAAMd,UAAUD,IAAIe,IAAMd,UAAWD,IAAgBiB,IAAMD,aAAchB,IAAgBkB,GAC9JE,cAAiBpB,KAAsCC,UAAUD,IAAIe,IAAMd,UAAUD,IAAIe,IAAMd,UAAWD,IAAgBiB,IAAMhB,UAAWD,IAAgBkB,GAG3JG,iBAAoBrB,KAAyCoB,cAAcpB,KAE3EsB,YAAetB,KAAgCmB,cAAcnB,KAE7DuB,uBAA0BvB,KAA+Dc,cAAcd,IAAIwB,UAC3GC,uBAA0BzB,KAA+DmB,cAAcnB,IAAIwB,UAC3GE,uBAA0B1B,KAA+DoB,cAAcpB,IAAIwB,UAE3GG,sBAAyBC,UACpC3B,UAAW2B,SAA+CC,kBAAoB5B,UAAW2B,SAA+CE,gBAE7HC,YAAe3B,QAAgFH,UAAWG,OAAe4B,UAEzHC,YAAe7B,QAAoEH,UAAWG,OAAe8B,UAEnH,SAASC,kBAA6D/B,QAC3E,OAAOH,UAAWG,OAAkCgC,QAAUnC,UAAWG,OAAkCiC,uBAC7G"}
@@ -1,5 +1,5 @@
1
- import { TMeters, TRadians } from '@hellpig/anarchy-engine/Math';
2
- import { TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';
1
+ import { TMeters, TRadians } from '../Math';
2
+ import { TReadonlyVector3 } from '../ThreeLib';
3
3
  import { Vector3 } from 'three';
4
4
  export declare function generateAnglesForCircle(numberOfPoints: number, numberOfCircles?: number, startAngle?: number): ReadonlyArray<TRadians>;
5
5
  export declare function createCirclePathXY(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3>;
@@ -1 +1 @@
1
- {"version":3,"file":"CoordsUtils.js","sources":["../../src/Utils/CoordsUtils.ts"],"sourcesContent":["import type { TMeters, TRadians } from '@hellpig/anarchy-engine/Math';\nimport { getAzimuthFromDirection, getElevationFromDirection } from '@hellpig/anarchy-engine/Math';\nimport type { TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';\nimport { Vector3 } from 'three';\n\ntype TTempCoords = Readonly<{\n coord1: number;\n coord2: number;\n}>;\n\n//Generates an array of angles that could be used for circular movement\nexport function generateAnglesForCircle(numberOfPoints: number, numberOfCircles: number = 1, startAngle: number = 0): ReadonlyArray<TRadians> {\n let angleArray: ReadonlyArray<TRadians> = [];\n const fullCircle: TRadians = (2 * Math.PI * numberOfCircles) as TRadians;\n const angleStep: TRadians = (fullCircle / numberOfPoints) as TRadians;\n\n // eslint-disable-next-line functional/no-loop-statements\n for (let i: number = 0; i <= numberOfPoints; i++) {\n angleArray = [...angleArray, (startAngle + i * angleStep) as TRadians];\n }\n\n return angleArray;\n}\n\n// Generates coords for circular movement\nfunction createCirclePath(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: TTempCoords): ReadonlyArray<TTempCoords> {\n return angleArray.map((angle: TRadians) => {\n return {\n coord1: Math.cos(angle) * radius + circleCenter.coord1,\n coord2: Math.sin(angle) * radius + circleCenter.coord2\n };\n });\n}\n\nexport function createCirclePathXY(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3> {\n return createCirclePath(angleArray, radius, { coord1: circleCenter.x, coord2: circleCenter.y }).map((coords: TTempCoords): Vector3 => new Vector3(coords.coord1, coords.coord2, circleCenter.z));\n}\n\nexport function createCirclePathXZ(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3> {\n return createCirclePath(angleArray, radius, { coord1: circleCenter.x, coord2: circleCenter.z }).map((coords: TTempCoords): Vector3 => new Vector3(coords.coord1, circleCenter.y, coords.coord2));\n}\n\nexport function createCirclePathYZ(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3> {\n return createCirclePath(angleArray, radius, { coord1: circleCenter.y, coord2: circleCenter.z }).map((coords: TTempCoords): Vector3 => new Vector3(circleCenter.x, coords.coord1, coords.coord2));\n}\n\nexport function getMouseAzimuthAndElevation(mousePosition: TReadonlyVector3, playerPosition: TReadonlyVector3): Readonly<{ azimuth: TRadians; elevation: TRadians }> {\n const direction: TReadonlyVector3 = mousePosition.clone().sub(playerPosition).normalize();\n const azimuth: TRadians = getAzimuthFromDirection(direction);\n const elevation: TRadians = getElevationFromDirection(direction);\n\n return { azimuth, elevation };\n}\n"],"names":["generateAnglesForCircle","numberOfPoints","numberOfCircles","startAngle","angleArray","angleStep","Math","PI","i","createCirclePath","radius","circleCenter","map","angle","coord1","cos","coord2","sin","createCirclePathXY","x","y","coords","Vector3","z","createCirclePathXZ","createCirclePathYZ","getMouseAzimuthAndElevation","mousePosition","playerPosition","direction","clone","sub","normalize","azimuth","getAzimuthFromDirection","elevation","getElevationFromDirection"],"mappings":"uHAWO,SAASA,wBAAwBC,eAAwBC,gBAA0B,EAAGC,WAAqB,GAChH,IAAIC,WAAsC,GAC1C,MACMC,UADwB,EAAIC,KAAKC,GAAKL,gBACFD,eAG1C,IAAA,IAASO,EAAY,EAAGA,GAAKP,eAAgBO,IAC3CJ,WAAa,IAAIA,WAAaD,WAAaK,EAAIH,WAGjD,OAAOD,UACT,CAGA,SAASK,iBAAiBL,WAAqCM,OAAiBC,cAC9E,OAAOP,WAAWQ,IAAKC,QACd,CACLC,OAAQR,KAAKS,IAAIF,OAASH,OAASC,aAAaG,OAChDE,OAAQV,KAAKW,IAAIJ,OAASH,OAASC,aAAaK,SAGtD,CAEO,SAASE,mBAAmBd,WAAqCM,OAAiBC,cACvF,OAAOF,iBAAiBL,WAAYM,OAAQ,CAAEI,OAAQH,aAAaQ,EAAGH,OAAQL,aAAaS,IAAKR,IAAKS,QAAiC,IAAIC,QAAQD,OAAOP,OAAQO,OAAOL,OAAQL,aAAaY,GAC/L,CAEO,SAASC,mBAAmBpB,WAAqCM,OAAiBC,cACvF,OAAOF,iBAAiBL,WAAYM,OAAQ,CAAEI,OAAQH,aAAaQ,EAAGH,OAAQL,aAAaY,IAAKX,IAAKS,QAAiC,IAAIC,QAAQD,OAAOP,OAAQH,aAAaS,EAAGC,OAAOL,QAC1L,CAEO,SAASS,mBAAmBrB,WAAqCM,OAAiBC,cACvF,OAAOF,iBAAiBL,WAAYM,OAAQ,CAAEI,OAAQH,aAAaS,EAAGJ,OAAQL,aAAaY,IAAKX,IAAKS,QAAiC,IAAIC,QAAQX,aAAaQ,EAAGE,OAAOP,OAAQO,OAAOL,QAC1L,CAEO,SAASU,4BAA4BC,cAAiCC,gBAC3E,MAAMC,UAA8BF,cAAcG,QAAQC,IAAIH,gBAAgBI,YAI9E,MAAO,CAAEC,QAHiBC,wBAAwBL,WAGhCM,UAFUC,0BAA0BP,WAGxD"}
1
+ {"version":3,"file":"CoordsUtils.js","sources":["../../src/Utils/CoordsUtils.ts"],"sourcesContent":["import type { TMeters, TRadians } from '@Anarchy/Engine/Math';\nimport { getAzimuthFromDirection, getElevationFromDirection } from '@Anarchy/Engine/Math';\nimport type { TReadonlyVector3 } from '@Anarchy/Engine/ThreeLib';\nimport { Vector3 } from 'three';\n\ntype TTempCoords = Readonly<{\n coord1: number;\n coord2: number;\n}>;\n\n//Generates an array of angles that could be used for circular movement\nexport function generateAnglesForCircle(numberOfPoints: number, numberOfCircles: number = 1, startAngle: number = 0): ReadonlyArray<TRadians> {\n let angleArray: ReadonlyArray<TRadians> = [];\n const fullCircle: TRadians = (2 * Math.PI * numberOfCircles) as TRadians;\n const angleStep: TRadians = (fullCircle / numberOfPoints) as TRadians;\n\n // eslint-disable-next-line functional/no-loop-statements\n for (let i: number = 0; i <= numberOfPoints; i++) {\n angleArray = [...angleArray, (startAngle + i * angleStep) as TRadians];\n }\n\n return angleArray;\n}\n\n// Generates coords for circular movement\nfunction createCirclePath(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: TTempCoords): ReadonlyArray<TTempCoords> {\n return angleArray.map((angle: TRadians) => {\n return {\n coord1: Math.cos(angle) * radius + circleCenter.coord1,\n coord2: Math.sin(angle) * radius + circleCenter.coord2\n };\n });\n}\n\nexport function createCirclePathXY(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3> {\n return createCirclePath(angleArray, radius, { coord1: circleCenter.x, coord2: circleCenter.y }).map((coords: TTempCoords): Vector3 => new Vector3(coords.coord1, coords.coord2, circleCenter.z));\n}\n\nexport function createCirclePathXZ(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3> {\n return createCirclePath(angleArray, radius, { coord1: circleCenter.x, coord2: circleCenter.z }).map((coords: TTempCoords): Vector3 => new Vector3(coords.coord1, circleCenter.y, coords.coord2));\n}\n\nexport function createCirclePathYZ(angleArray: ReadonlyArray<TRadians>, radius: TMeters, circleCenter: Vector3): ReadonlyArray<Vector3> {\n return createCirclePath(angleArray, radius, { coord1: circleCenter.y, coord2: circleCenter.z }).map((coords: TTempCoords): Vector3 => new Vector3(circleCenter.x, coords.coord1, coords.coord2));\n}\n\nexport function getMouseAzimuthAndElevation(mousePosition: TReadonlyVector3, playerPosition: TReadonlyVector3): Readonly<{ azimuth: TRadians; elevation: TRadians }> {\n const direction: TReadonlyVector3 = mousePosition.clone().sub(playerPosition).normalize();\n const azimuth: TRadians = getAzimuthFromDirection(direction);\n const elevation: TRadians = getElevationFromDirection(direction);\n\n return { azimuth, elevation };\n}\n"],"names":["generateAnglesForCircle","numberOfPoints","numberOfCircles","startAngle","angleArray","angleStep","Math","PI","i","createCirclePath","radius","circleCenter","map","angle","coord1","cos","coord2","sin","createCirclePathXY","x","y","coords","Vector3","z","createCirclePathXZ","createCirclePathYZ","getMouseAzimuthAndElevation","mousePosition","playerPosition","direction","clone","sub","normalize","azimuth","getAzimuthFromDirection","elevation","getElevationFromDirection"],"mappings":"uHAWO,SAASA,wBAAwBC,eAAwBC,gBAA0B,EAAGC,WAAqB,GAChH,IAAIC,WAAsC,GAC1C,MACMC,UADwB,EAAIC,KAAKC,GAAKL,gBACFD,eAG1C,IAAA,IAASO,EAAY,EAAGA,GAAKP,eAAgBO,IAC3CJ,WAAa,IAAIA,WAAaD,WAAaK,EAAIH,WAGjD,OAAOD,UACT,CAGA,SAASK,iBAAiBL,WAAqCM,OAAiBC,cAC9E,OAAOP,WAAWQ,IAAKC,QACd,CACLC,OAAQR,KAAKS,IAAIF,OAASH,OAASC,aAAaG,OAChDE,OAAQV,KAAKW,IAAIJ,OAASH,OAASC,aAAaK,SAGtD,CAEO,SAASE,mBAAmBd,WAAqCM,OAAiBC,cACvF,OAAOF,iBAAiBL,WAAYM,OAAQ,CAAEI,OAAQH,aAAaQ,EAAGH,OAAQL,aAAaS,IAAKR,IAAKS,QAAiC,IAAIC,QAAQD,OAAOP,OAAQO,OAAOL,OAAQL,aAAaY,GAC/L,CAEO,SAASC,mBAAmBpB,WAAqCM,OAAiBC,cACvF,OAAOF,iBAAiBL,WAAYM,OAAQ,CAAEI,OAAQH,aAAaQ,EAAGH,OAAQL,aAAaY,IAAKX,IAAKS,QAAiC,IAAIC,QAAQD,OAAOP,OAAQH,aAAaS,EAAGC,OAAOL,QAC1L,CAEO,SAASS,mBAAmBrB,WAAqCM,OAAiBC,cACvF,OAAOF,iBAAiBL,WAAYM,OAAQ,CAAEI,OAAQH,aAAaS,EAAGJ,OAAQL,aAAaY,IAAKX,IAAKS,QAAiC,IAAIC,QAAQX,aAAaQ,EAAGE,OAAOP,OAAQO,OAAOL,QAC1L,CAEO,SAASU,4BAA4BC,cAAiCC,gBAC3E,MAAMC,UAA8BF,cAAcG,QAAQC,IAAIH,gBAAgBI,YAI9E,MAAO,CAAEC,QAHiBC,wBAAwBL,WAGhCM,UAFUC,0BAA0BP,WAGxD"}
@@ -1,7 +1,7 @@
1
- import { TAbstractEntity } from '@hellpig/anarchy-engine/Abstract';
2
- import { TAnyAudio } from '@hellpig/anarchy-engine/Audio';
3
- import { TAnyMaterialWrapper, TMaterials } from '@hellpig/anarchy-engine/Material';
4
- import { TWithModel3dEntities } from '@hellpig/anarchy-engine/Models3d';
1
+ import { TAbstractEntity } from '../Abstract';
2
+ import { TAnyAudio } from '../Audio';
3
+ import { TAnyMaterialWrapper, TMaterials } from '../Material';
4
+ import { TWithModel3dEntities } from '../Models3d';
5
5
  import { Material, Object3D } from 'three';
6
6
  export declare function disposeGltf(gltf: Object3D | null): void;
7
7
  export declare function destroyTransformDriveInEntity(entity: unknown): void;
@@ -1 +1 @@
1
- {"version":3,"file":"DestroyUtils.js","sources":["../../src/Utils/DestroyUtils.ts"],"sourcesContent":["import type { TAbstractEntity } from '@hellpig/anarchy-engine/Abstract';\nimport type { TAnyAudio } from '@hellpig/anarchy-engine/Audio';\nimport type { TAnyMaterialWrapper, TMaterials } from '@hellpig/anarchy-engine/Material';\nimport type { TWithModel3d, TWithModel3dEntities } from '@hellpig/anarchy-engine/Models3d';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { AnimationAction, AnimationClip, Material, Object3D, PositionalAudio } from 'three';\nimport { Mesh, Texture } from 'three';\n\nimport { hasGeometry, hasMaterial, hasTransformDrive } from './CheckUtils';\nimport { isWrapper } from './WrapperHelpers';\n\nexport function disposeGltf(gltf: Object3D | null): void {\n if (!gltf) return;\n\n gltf.removeFromParent();\n\n gltf.traverse((child: Object3D): void => {\n if (child instanceof Mesh) {\n if (child.geometry) (child as any).geometry?.dispose();\n\n const materials: ReadonlyArray<Material> = Array.isArray(child.material) ? child.material : [child.material];\n disposeMaterialDeep(materials);\n }\n });\n\n // eslint-disable-next-line functional/immutable-data\n if (isDefined((gltf as any).animations)) gltf.animations.length = 0;\n // eslint-disable-next-line functional/immutable-data\n gltf.userData = {};\n gltf.clear?.();\n // eslint-disable-next-line functional/immutable-data\n gltf.children.length = 0;\n gltf = null;\n}\n\nexport function destroyTransformDriveInEntity(entity: unknown): void {\n if (!hasTransformDrive(entity)) return;\n entity.drive.destroy$.next();\n entity.driveToTargetConnector.destroy$.next();\n}\n\nexport function destroyMaterialInEntity<T extends { material: TMaterials | TAnyMaterialWrapper | ReadonlyArray<TMaterials> | ReadonlyArray<TAnyMaterialWrapper> }>(entity: T): void {\n if (isNotDefined(entity)) return;\n if (!hasMaterial(entity)) return;\n if (isNotDefined(entity.material)) return;\n\n const materials = Array.isArray(entity.material) ? entity.material : [entity.material];\n disposeMaterialDeep(materials);\n\n // eslint-disable-next-line functional/immutable-data\n entity.material = null as any;\n}\n\nexport function disposeMaterialDeep(material: Material | TAnyMaterialWrapper | ReadonlyArray<Material> | ReadonlyArray<TAnyMaterialWrapper> | undefined | null): void {\n if (isNotDefined(material)) return;\n const materials: ReadonlyArray<Material> | ReadonlyArray<TAnyMaterialWrapper> = Array.isArray(material) ? material : [material];\n\n materials.forEach((material: Material | TAnyMaterialWrapper | null): void => {\n if (isNotDefined(material)) return;\n if (isWrapper(material)) {\n material.destroy$.next();\n return;\n }\n\n Object.values(material).forEach((value: any): void => {\n if (value instanceof Texture) value.dispose();\n });\n\n material.dispose();\n });\n}\n\nexport function destroyGeometryInEntity(entity: unknown): void {\n if (!hasGeometry(entity)) return;\n\n entity.geometry?.dispose?.();\n (entity as any).skeleton?.dispose?.();\n // eslint-disable-next-line functional/immutable-data\n entity.geometry = null;\n}\n\nexport function removeFromParent(entity: any): void {\n if (isDefined(entity.removeFromParent)) return entity.removeFromParent();\n return entity.parent?.remove(entity);\n}\n\nexport function stopParenting(entity: any): void {\n if (typeof entity.traverse === 'function') {\n entity.children?.forEach((child: any | undefined): void => {\n try {\n child?.traverse((descendant: any): void => {\n if (descendant.parent?.remove) descendant.parent.remove(descendant);\n });\n } catch (e: unknown) {\n console.log('Destroy: [stopParenting] Failed to traverse child:', e);\n }\n });\n }\n}\n\nexport function destroyModel3dAnimationEntities({ model3dSource, mixer, actions }: TAbstractEntity<TWithModel3dEntities>): void {\n if (isNotDefined(mixer)) return;\n\n Object.values(actions).forEach((action: AnimationAction): void => {\n action.stop();\n action.reset();\n mixer.uncacheAction(action.getClip(), action.getRoot());\n });\n\n mixer.stopAllAction();\n\n mixer.uncacheRoot(model3dSource);\n\n model3dSource.animations?.forEach((clip: AnimationClip): void => {\n mixer.uncacheClip(clip);\n mixer.uncacheAction(clip);\n });\n\n // eslint-disable-next-line functional/immutable-data\n model3dSource.animations.length = 0;\n}\n\nexport function destroyAudio(entity: TAnyAudio): void {\n if (isNotDefined(entity)) return;\n\n try {\n entity.stop?.();\n entity.disconnect?.();\n } catch {\n console.warn('Audio: failed to stop or disconnect audio (probably already stopped or disconnected)');\n }\n\n // eslint-disable-next-line functional/immutable-data\n entity.buffer = null as any;\n // eslint-disable-next-line functional/immutable-data\n entity.listener = null as any;\n // eslint-disable-next-line functional/immutable-data\n entity.source = null as any;\n // eslint-disable-next-line functional/immutable-data\n if (isDefined((entity as PositionalAudio).panner)) (entity as PositionalAudio).panner = null as any;\n\n entity.removeFromParent();\n entity.clear?.();\n}\n\nexport function genericEntityCleanUp(entity: any): void {\n if (isNotDefined(entity)) return;\n\n //Tell the children that they have no parent anymore\n stopParenting(entity);\n\n //Remove from parent (scene)\n removeFromParent(entity);\n\n //Clean up transform drive\n destroyTransformDriveInEntity(entity);\n\n //Trigger destroy$ for model3d\n if (isDefined((entity as unknown as TWithModel3d).model3d)) (entity as unknown as TWithModel3d).model3d.destroy$.next();\n\n // Destroy Threejs fields and resources\n destroyGeometryInEntity(entity);\n destroyMaterialInEntity(entity);\n\n // Clear children if possible\n (entity as any).destroy$?.next();\n\n //Not the best solution, but for some entities (e.g., spatial grids), we need to call .clear() after destroy$.next() kinda done,\n setTimeout((): void => {\n // Clear children if possible\n (entity as any).clear?.();\n }, 10);\n\n // Dispose itself if possible\n (entity as any).dispose?.();\n}\n"],"names":["disposeGltf","gltf","removeFromParent","traverse","child","Mesh","geometry","dispose","disposeMaterialDeep","Array","isArray","material","isDefined","animations","length","userData","clear","children","destroyTransformDriveInEntity","entity","hasTransformDrive","drive","destroy$","next","driveToTargetConnector","destroyMaterialInEntity","isNotDefined","hasMaterial","forEach","isWrapper","Object","values","value","Texture","destroyGeometryInEntity","hasGeometry","skeleton","parent","remove","stopParenting","descendant","e","console","log","destroyModel3dAnimationEntities","model3dSource","mixer","actions","action","stop","reset","uncacheAction","getClip","getRoot","stopAllAction","uncacheRoot","clip","uncacheClip","destroyAudio","disconnect","warn","buffer","listener","source","panner","genericEntityCleanUp","model3d","setTimeout"],"mappings":"yOAWO,SAASA,YAAYC,MACrBA,OAELA,KAAKC,mBAELD,KAAKE,SAAUC,QACTA,iBAAiBC,OACfD,MAAME,UAAWF,MAAcE,UAAUC,UAG7CC,oBAD2CC,MAAMC,QAAQN,MAAMO,UAAYP,MAAMO,SAAW,CAACP,MAAMO,cAMnGC,UAAWX,KAAaY,cAAaZ,KAAKY,WAAWC,OAAS,GAElEb,KAAKc,SAAW,CAAA,EAChBd,KAAKe,UAELf,KAAKgB,SAASH,OAAS,EACvBb,KAAO,KACT,CAEO,SAASiB,8BAA8BC,QACvCC,kBAAkBD,UACvBA,OAAOE,MAAMC,SAASC,OACtBJ,OAAOK,uBAAuBF,SAASC,OACzC,CAEO,SAASE,wBAAmJN,QAC7JO,aAAaP,SACZQ,YAAYR,UACbO,aAAaP,OAAOR,YAGxBH,oBADkBC,MAAMC,QAAQS,OAAOR,UAAYQ,OAAOR,SAAW,CAACQ,OAAOR,WAI7EQ,OAAOR,SAAW,MACpB,CAEO,SAASH,oBAAoBG,UAC9Be,aAAaf,YAC+DF,MAAMC,QAAQC,UAAYA,SAAW,CAACA,WAE5GiB,QAASjB,YACbe,aAAaf,aACbkB,UAAUlB,WACZA,UAASW,SAASC,QAIpBO,OAAOC,OAAOpB,WAAUiB,QAASI,QAC3BA,iBAAiBC,SAASD,MAAMzB,YAGtCI,UAASJ,aAEb,CAEO,SAAS2B,wBAAwBf,QACjCgB,YAAYhB,UAEjBA,OAAOb,UAAUC,YAChBY,OAAeiB,UAAU7B,YAE1BY,OAAOb,SAAW,KACpB,CAEO,SAASJ,iBAAiBiB,QAC/B,OAAIP,UAAUO,OAAOjB,kBAA0BiB,OAAOjB,mBAC/CiB,OAAOkB,QAAQC,OAAOnB,OAC/B,CAEO,SAASoB,cAAcpB,QACG,mBAApBA,OAAOhB,UAChBgB,OAAOF,UAAUW,QAASxB,QACxB,IACEA,OAAOD,SAAUqC,aACXA,WAAWH,QAAQC,QAAQE,WAAWH,OAAOC,OAAOE,aAE5D,OAASC,GACPC,QAAQC,IAAI,qDAAsDF,EACpE,GAGN,CAEO,SAASG,iCAAgCC,cAAEA,cAAAC,MAAeA,MAAAC,QAAOA,UAClErB,aAAaoB,SAEjBhB,OAAOC,OAAOgB,SAASnB,QAASoB,SAC9BA,OAAOC,OACPD,OAAOE,QACPJ,MAAMK,cAAcH,OAAOI,UAAWJ,OAAOK,aAG/CP,MAAMQ,gBAENR,MAAMS,YAAYV,eAElBA,cAAchC,YAAYe,QAAS4B,OACjCV,MAAMW,YAAYD,MAClBV,MAAMK,cAAcK,QAItBX,cAAchC,WAAWC,OAAS,EACpC,CAEO,SAAS4C,aAAavC,QAC3B,IAAIO,aAAaP,QAAjB,CAEA,IACEA,OAAO8B,SACP9B,OAAOwC,cACT,CAAA,MACEjB,QAAQkB,KAAK,uFACf,CAGAzC,OAAO0C,OAAS,KAEhB1C,OAAO2C,SAAW,KAElB3C,OAAO4C,OAAS,KAEZnD,UAAWO,OAA2B6C,UAAU7C,OAA2B6C,OAAS,MAExF7C,OAAOjB,mBACPiB,OAAOH,SAnBmB,CAoB5B,CAEO,SAASiD,qBAAqB9C,QAC/BO,aAAaP,UAGjBoB,cAAcpB,QAGdjB,iBAAiBiB,QAGjBD,8BAA8BC,QAG1BP,UAAWO,OAAmC+C,UAAW/C,OAAmC+C,QAAQ5C,SAASC,OAGjHW,wBAAwBf,QACxBM,wBAAwBN,QAGvBA,OAAeG,UAAUC,OAG1B4C,WAAW,KAERhD,OAAeH,WACf,IAGFG,OAAeZ,YAClB"}
1
+ {"version":3,"file":"DestroyUtils.js","sources":["../../src/Utils/DestroyUtils.ts"],"sourcesContent":["import type { TAbstractEntity } from '@Anarchy/Engine/Abstract';\nimport type { TAnyAudio } from '@Anarchy/Engine/Audio';\nimport type { TAnyMaterialWrapper, TMaterials } from '@Anarchy/Engine/Material';\nimport type { TWithModel3d, TWithModel3dEntities } from '@Anarchy/Engine/Models3d';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { AnimationAction, AnimationClip, Material, Object3D, PositionalAudio } from 'three';\nimport { Mesh, Texture } from 'three';\n\nimport { hasGeometry, hasMaterial, hasTransformDrive } from './CheckUtils';\nimport { isWrapper } from './WrapperHelpers';\n\nexport function disposeGltf(gltf: Object3D | null): void {\n if (!gltf) return;\n\n gltf.removeFromParent();\n\n gltf.traverse((child: Object3D): void => {\n if (child instanceof Mesh) {\n if (child.geometry) (child as any).geometry?.dispose();\n\n const materials: ReadonlyArray<Material> = Array.isArray(child.material) ? child.material : [child.material];\n disposeMaterialDeep(materials);\n }\n });\n\n // eslint-disable-next-line functional/immutable-data\n if (isDefined((gltf as any).animations)) gltf.animations.length = 0;\n // eslint-disable-next-line functional/immutable-data\n gltf.userData = {};\n gltf.clear?.();\n // eslint-disable-next-line functional/immutable-data\n gltf.children.length = 0;\n gltf = null;\n}\n\nexport function destroyTransformDriveInEntity(entity: unknown): void {\n if (!hasTransformDrive(entity)) return;\n entity.drive.destroy$.next();\n entity.driveToTargetConnector.destroy$.next();\n}\n\nexport function destroyMaterialInEntity<T extends { material: TMaterials | TAnyMaterialWrapper | ReadonlyArray<TMaterials> | ReadonlyArray<TAnyMaterialWrapper> }>(entity: T): void {\n if (isNotDefined(entity)) return;\n if (!hasMaterial(entity)) return;\n if (isNotDefined(entity.material)) return;\n\n const materials = Array.isArray(entity.material) ? entity.material : [entity.material];\n disposeMaterialDeep(materials);\n\n // eslint-disable-next-line functional/immutable-data\n entity.material = null as any;\n}\n\nexport function disposeMaterialDeep(material: Material | TAnyMaterialWrapper | ReadonlyArray<Material> | ReadonlyArray<TAnyMaterialWrapper> | undefined | null): void {\n if (isNotDefined(material)) return;\n const materials: ReadonlyArray<Material> | ReadonlyArray<TAnyMaterialWrapper> = Array.isArray(material) ? material : [material];\n\n materials.forEach((material: Material | TAnyMaterialWrapper | null): void => {\n if (isNotDefined(material)) return;\n if (isWrapper(material)) {\n material.destroy$.next();\n return;\n }\n\n Object.values(material).forEach((value: any): void => {\n if (value instanceof Texture) value.dispose();\n });\n\n material.dispose();\n });\n}\n\nexport function destroyGeometryInEntity(entity: unknown): void {\n if (!hasGeometry(entity)) return;\n\n entity.geometry?.dispose?.();\n (entity as any).skeleton?.dispose?.();\n // eslint-disable-next-line functional/immutable-data\n entity.geometry = null;\n}\n\nexport function removeFromParent(entity: any): void {\n if (isDefined(entity.removeFromParent)) return entity.removeFromParent();\n return entity.parent?.remove(entity);\n}\n\nexport function stopParenting(entity: any): void {\n if (typeof entity.traverse === 'function') {\n entity.children?.forEach((child: any | undefined): void => {\n try {\n child?.traverse((descendant: any): void => {\n if (descendant.parent?.remove) descendant.parent.remove(descendant);\n });\n } catch (e: unknown) {\n console.log('Destroy: [stopParenting] Failed to traverse child:', e);\n }\n });\n }\n}\n\nexport function destroyModel3dAnimationEntities({ model3dSource, mixer, actions }: TAbstractEntity<TWithModel3dEntities>): void {\n if (isNotDefined(mixer)) return;\n\n Object.values(actions).forEach((action: AnimationAction): void => {\n action.stop();\n action.reset();\n mixer.uncacheAction(action.getClip(), action.getRoot());\n });\n\n mixer.stopAllAction();\n\n mixer.uncacheRoot(model3dSource);\n\n model3dSource.animations?.forEach((clip: AnimationClip): void => {\n mixer.uncacheClip(clip);\n mixer.uncacheAction(clip);\n });\n\n // eslint-disable-next-line functional/immutable-data\n model3dSource.animations.length = 0;\n}\n\nexport function destroyAudio(entity: TAnyAudio): void {\n if (isNotDefined(entity)) return;\n\n try {\n entity.stop?.();\n entity.disconnect?.();\n } catch {\n console.warn('Audio: failed to stop or disconnect audio (probably already stopped or disconnected)');\n }\n\n // eslint-disable-next-line functional/immutable-data\n entity.buffer = null as any;\n // eslint-disable-next-line functional/immutable-data\n entity.listener = null as any;\n // eslint-disable-next-line functional/immutable-data\n entity.source = null as any;\n // eslint-disable-next-line functional/immutable-data\n if (isDefined((entity as PositionalAudio).panner)) (entity as PositionalAudio).panner = null as any;\n\n entity.removeFromParent();\n entity.clear?.();\n}\n\nexport function genericEntityCleanUp(entity: any): void {\n if (isNotDefined(entity)) return;\n\n //Tell the children that they have no parent anymore\n stopParenting(entity);\n\n //Remove from parent (scene)\n removeFromParent(entity);\n\n //Clean up transform drive\n destroyTransformDriveInEntity(entity);\n\n //Trigger destroy$ for model3d\n if (isDefined((entity as unknown as TWithModel3d).model3d)) (entity as unknown as TWithModel3d).model3d.destroy$.next();\n\n // Destroy Threejs fields and resources\n destroyGeometryInEntity(entity);\n destroyMaterialInEntity(entity);\n\n // Clear children if possible\n (entity as any).destroy$?.next();\n\n //Not the best solution, but for some entities (e.g., spatial grids), we need to call .clear() after destroy$.next() kinda done,\n setTimeout((): void => {\n // Clear children if possible\n (entity as any).clear?.();\n }, 10);\n\n // Dispose itself if possible\n (entity as any).dispose?.();\n}\n"],"names":["disposeGltf","gltf","removeFromParent","traverse","child","Mesh","geometry","dispose","disposeMaterialDeep","Array","isArray","material","isDefined","animations","length","userData","clear","children","destroyTransformDriveInEntity","entity","hasTransformDrive","drive","destroy$","next","driveToTargetConnector","destroyMaterialInEntity","isNotDefined","hasMaterial","forEach","isWrapper","Object","values","value","Texture","destroyGeometryInEntity","hasGeometry","skeleton","parent","remove","stopParenting","descendant","e","console","log","destroyModel3dAnimationEntities","model3dSource","mixer","actions","action","stop","reset","uncacheAction","getClip","getRoot","stopAllAction","uncacheRoot","clip","uncacheClip","destroyAudio","disconnect","warn","buffer","listener","source","panner","genericEntityCleanUp","model3d","setTimeout"],"mappings":"yOAWO,SAASA,YAAYC,MACrBA,OAELA,KAAKC,mBAELD,KAAKE,SAAUC,QACTA,iBAAiBC,OACfD,MAAME,UAAWF,MAAcE,UAAUC,UAG7CC,oBAD2CC,MAAMC,QAAQN,MAAMO,UAAYP,MAAMO,SAAW,CAACP,MAAMO,cAMnGC,UAAWX,KAAaY,cAAaZ,KAAKY,WAAWC,OAAS,GAElEb,KAAKc,SAAW,CAAA,EAChBd,KAAKe,UAELf,KAAKgB,SAASH,OAAS,EACvBb,KAAO,KACT,CAEO,SAASiB,8BAA8BC,QACvCC,kBAAkBD,UACvBA,OAAOE,MAAMC,SAASC,OACtBJ,OAAOK,uBAAuBF,SAASC,OACzC,CAEO,SAASE,wBAAmJN,QAC7JO,aAAaP,SACZQ,YAAYR,UACbO,aAAaP,OAAOR,YAGxBH,oBADkBC,MAAMC,QAAQS,OAAOR,UAAYQ,OAAOR,SAAW,CAACQ,OAAOR,WAI7EQ,OAAOR,SAAW,MACpB,CAEO,SAASH,oBAAoBG,UAC9Be,aAAaf,YAC+DF,MAAMC,QAAQC,UAAYA,SAAW,CAACA,WAE5GiB,QAASjB,YACbe,aAAaf,aACbkB,UAAUlB,WACZA,UAASW,SAASC,QAIpBO,OAAOC,OAAOpB,WAAUiB,QAASI,QAC3BA,iBAAiBC,SAASD,MAAMzB,YAGtCI,UAASJ,aAEb,CAEO,SAAS2B,wBAAwBf,QACjCgB,YAAYhB,UAEjBA,OAAOb,UAAUC,YAChBY,OAAeiB,UAAU7B,YAE1BY,OAAOb,SAAW,KACpB,CAEO,SAASJ,iBAAiBiB,QAC/B,OAAIP,UAAUO,OAAOjB,kBAA0BiB,OAAOjB,mBAC/CiB,OAAOkB,QAAQC,OAAOnB,OAC/B,CAEO,SAASoB,cAAcpB,QACG,mBAApBA,OAAOhB,UAChBgB,OAAOF,UAAUW,QAASxB,QACxB,IACEA,OAAOD,SAAUqC,aACXA,WAAWH,QAAQC,QAAQE,WAAWH,OAAOC,OAAOE,aAE5D,OAASC,GACPC,QAAQC,IAAI,qDAAsDF,EACpE,GAGN,CAEO,SAASG,iCAAgCC,cAAEA,cAAAC,MAAeA,MAAAC,QAAOA,UAClErB,aAAaoB,SAEjBhB,OAAOC,OAAOgB,SAASnB,QAASoB,SAC9BA,OAAOC,OACPD,OAAOE,QACPJ,MAAMK,cAAcH,OAAOI,UAAWJ,OAAOK,aAG/CP,MAAMQ,gBAENR,MAAMS,YAAYV,eAElBA,cAAchC,YAAYe,QAAS4B,OACjCV,MAAMW,YAAYD,MAClBV,MAAMK,cAAcK,QAItBX,cAAchC,WAAWC,OAAS,EACpC,CAEO,SAAS4C,aAAavC,QAC3B,IAAIO,aAAaP,QAAjB,CAEA,IACEA,OAAO8B,SACP9B,OAAOwC,cACT,CAAA,MACEjB,QAAQkB,KAAK,uFACf,CAGAzC,OAAO0C,OAAS,KAEhB1C,OAAO2C,SAAW,KAElB3C,OAAO4C,OAAS,KAEZnD,UAAWO,OAA2B6C,UAAU7C,OAA2B6C,OAAS,MAExF7C,OAAOjB,mBACPiB,OAAOH,SAnBmB,CAoB5B,CAEO,SAASiD,qBAAqB9C,QAC/BO,aAAaP,UAGjBoB,cAAcpB,QAGdjB,iBAAiBiB,QAGjBD,8BAA8BC,QAG1BP,UAAWO,OAAmC+C,UAAW/C,OAAmC+C,QAAQ5C,SAASC,OAGjHW,wBAAwBf,QACxBM,wBAAwBN,QAGvBA,OAAeG,UAAUC,OAG1B4C,WAAW,KAERhD,OAAeH,WACf,IAGFG,OAAeZ,YAClB"}
@@ -1,5 +1,5 @@
1
- import { TAmbientContext } from '@hellpig/anarchy-engine/Context';
2
- import { TAppGlobalContainer, TContainerDecorator } from '@hellpig/anarchy-engine/Global';
1
+ import { TAmbientContext } from '../Context';
2
+ import { TAppGlobalContainer, TContainerDecorator } from '../Global';
3
3
  import { Observable } from 'rxjs';
4
4
  export declare function findDomElement(ambientContext: TAmbientContext, canvasSelector: string): HTMLElement | null;
5
5
  export declare function createDomElement(ambientContext: TAmbientContext, tagName: string, parent?: HTMLElement | undefined, classes?: ReadonlyArray<string>, id?: string, style?: string): HTMLElement;
@@ -1 +1 @@
1
- {"version":3,"file":"DomUtils.js","sources":["../../src/Utils/DomUtils.ts"],"sourcesContent":["import type { TAmbientContext } from '@hellpig/anarchy-engine/Context';\nimport type { TAppGlobalContainer, TContainerDecorator } from '@hellpig/anarchy-engine/Global';\nimport { ContainerEvents } from '@hellpig/anarchy-engine/Global/Constants';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { Subscriber } from 'rxjs';\nimport { distinctUntilChanged, fromEvent, map, merge, Observable, startWith } from 'rxjs';\n\nexport function findDomElement(ambientContext: TAmbientContext, canvasSelector: string): HTMLElement | null {\n const appContainer: TAppGlobalContainer = ambientContext.globalContainer.getAppContainer();\n return appContainer.document.querySelector(canvasSelector);\n}\n\nexport function createDomElement(ambientContext: TAmbientContext, tagName: string, parent?: HTMLElement | undefined, classes?: ReadonlyArray<string>, id?: string, style?: string): HTMLElement {\n const appContainer: TAppGlobalContainer = ambientContext.globalContainer.getAppContainer();\n const element: HTMLElement = appContainer.document.createElement(tagName);\n\n if (isDefined(id)) element.setAttribute('id', id);\n if (isDefined(classes)) element.setAttribute('class', classes.join(' '));\n if (isDefined(style)) element.setAttribute('style', style);\n\n (parent ?? appContainer.document.body).appendChild(element);\n\n return element;\n}\n\nexport function isCanvasElement(element: HTMLElement | unknown): element is HTMLCanvasElement {\n return element instanceof HTMLCanvasElement;\n}\n\nexport function getOrCreateCanvasFromSelector(ambientContext: TAmbientContext, fullSelector: string): HTMLCanvasElement {\n const trimmed: string = fullSelector.trim();\n if (!trimmed) throw new Error('Canvas selector must not be empty');\n\n const parts: Array<string> = trimmed.split(/\\s+/);\n // eslint-disable-next-line functional/immutable-data\n const canvasSelector: string | undefined = parts.pop();\n if (isNotDefined(canvasSelector)) throw new Error('Canvas selector must be defined');\n const parentSelector: string = parts.join(' ');\n\n const parent: HTMLElement = parentSelector ? (document.querySelector(parentSelector) as HTMLElement) : document.body;\n if (isNotDefined(parent)) throw new Error(`Parent element not found for selector: \"${parentSelector}\"`);\n\n let canvas: HTMLCanvasElement | null = parent.querySelector(canvasSelector) as HTMLCanvasElement | null;\n if (isDefined(canvas)) return canvas;\n\n const id: string = getIdFromSelector(canvasSelector);\n const classes: ReadonlyArray<string> = [];\n canvas = createDomElement(ambientContext, 'canvas', undefined, classes, id) as HTMLCanvasElement;\n parent.appendChild(canvas);\n\n return canvas;\n}\n\nfunction getIdFromSelector(selector: string): string {\n const id: string | undefined = selector.match(/#([a-zA-Z0-9\\-_]+)/)?.[1];\n if (isNotDefined(id)) throw new Error(`Canvas selector must contain id: \"${selector}\"`);\n return id;\n}\n\nexport function getWindowFromDomElement(element: HTMLElement | Window): TAppGlobalContainer | null {\n //SSR\n if (typeof window === 'undefined') return null;\n if (element === window) return window;\n return (element as Element).ownerDocument.defaultView;\n}\n\nexport function isAppGlobalContainer(container: TAppGlobalContainer | TContainerDecorator | HTMLElement): container is TAppGlobalContainer {\n return isDefined((container as TAppGlobalContainer).document);\n}\n\nfunction getRect(container: HTMLElement | TAppGlobalContainer): DOMRect {\n if (isAppGlobalContainer(container)) {\n return {\n top: 0,\n left: 0,\n width: window.innerWidth,\n height: window.innerHeight\n } as DOMRect;\n } else {\n return container.getBoundingClientRect();\n }\n}\n\nexport function observeContainerRect(container: HTMLElement | TAppGlobalContainer): Observable<DOMRect> {\n const resizeObserver$ = new Observable<DOMRect>((observer: Subscriber<DOMRect>) => {\n if (isAppGlobalContainer(container)) return undefined;\n\n const resizeObserver = new ResizeObserver((): void => observer.next(getRect(container)));\n resizeObserver.observe(container as HTMLElement);\n\n return (): void => resizeObserver.disconnect();\n });\n\n const generalEvents$: Observable<DOMRect> = merge(\n fromEvent(window, ContainerEvents.Resize),\n fromEvent(window, ContainerEvents.Scroll, { passive: true }),\n fromEvent(document, ContainerEvents.FullscreenChange),\n fromEvent(window, ContainerEvents.OrientationChange),\n fromEvent(document, ContainerEvents.VisibilityChange)\n ).pipe(map((): DOMRect => getRect(container)));\n\n return merge(generalEvents$, resizeObserver$).pipe(\n startWith(getRect(container)),\n distinctUntilChanged((a: DOMRect, b: DOMRect): boolean => a.top === b.top && a.left === b.left && a.width === b.width && a.height === b.height)\n );\n}\n\nexport function observeResize(\n container: TAppGlobalContainer | HTMLElement,\n callback: (list: ReadonlyArray<ResizeObserverEntry> | Event) => void\n): Readonly<{\n stop: () => void;\n}> {\n if (isAppGlobalContainer(container)) {\n window.addEventListener('resize', callback);\n return {\n stop: (): void => window.removeEventListener('resize', callback)\n };\n }\n\n const resizeObserver = new ResizeObserver(callback);\n resizeObserver.observe(container);\n\n return {\n stop: (): void => {\n resizeObserver.unobserve(container);\n resizeObserver.disconnect();\n }\n };\n}\n\nexport function injectStyle(ambientContext: TAmbientContext, css: string, id: string): void {\n if (document.getElementById(id)) return;\n\n const tag: HTMLStyleElement = document.createElement('style');\n // eslint-disable-next-line functional/immutable-data\n tag.id = id;\n // eslint-disable-next-line functional/immutable-data\n tag.textContent = css;\n const appContainer: TAppGlobalContainer = ambientContext.globalContainer.getAppContainer();\n appContainer.document.head.appendChild(tag);\n}\n"],"names":["findDomElement","ambientContext","canvasSelector","globalContainer","getAppContainer","document","querySelector","createDomElement","tagName","parent","classes","id","style","appContainer","element","createElement","isDefined","setAttribute","join","body","appendChild","isCanvasElement","HTMLCanvasElement","getOrCreateCanvasFromSelector","fullSelector","trimmed","trim","Error","parts","split","pop","isNotDefined","parentSelector","canvas","selector","match","getIdFromSelector","getWindowFromDomElement","window","ownerDocument","defaultView","isAppGlobalContainer","container","getRect","top","left","width","innerWidth","height","innerHeight","getBoundingClientRect","observeContainerRect","resizeObserver$","Observable","observer","resizeObserver","ResizeObserver","next","observe","disconnect","generalEvents$","merge","fromEvent","ContainerEvents","Resize","Scroll","passive","FullscreenChange","OrientationChange","VisibilityChange","pipe","map","startWith","distinctUntilChanged","a","b","observeResize","callback","addEventListener","stop","removeEventListener","unobserve","injectStyle","css","getElementById","tag","textContent","head"],"mappings":"2pBAOO,SAASA,eAAeC,eAAiCC,gBAE9D,OAD0CD,eAAeE,gBAAgBC,kBACrDC,SAASC,cAAcJ,eAC7C,CAEO,SAASK,iBAAiBN,eAAiCO,QAAiBC,OAAkCC,QAAiCC,GAAaC,OACjK,MAAMC,aAAoCZ,eAAeE,gBAAgBC,kBACnEU,QAAuBD,aAAaR,SAASU,cAAcP,SAQjE,OANIQ,UAAUL,KAAKG,QAAQG,aAAa,KAAMN,IAC1CK,UAAUN,UAAUI,QAAQG,aAAa,QAASP,QAAQQ,KAAK,MAC/DF,UAAUJ,QAAQE,QAAQG,aAAa,QAASL,QAEnDH,QAAUI,aAAaR,SAASc,MAAMC,YAAYN,SAE5CA,OACT,CAEO,SAASO,gBAAgBP,SAC9B,OAAOA,mBAAmBQ,iBAC5B,CAEO,SAASC,8BAA8BtB,eAAiCuB,cAC7E,MAAMC,QAAkBD,aAAaE,OACrC,IAAKD,QAAS,MAAM,IAAIE,MAAM,qCAE9B,MAAMC,MAAuBH,QAAQI,MAAM,OAErC3B,eAAqC0B,MAAME,MACjD,GAAIC,aAAa7B,gBAAiB,MAAM,IAAIyB,MAAM,mCAClD,MAAMK,eAAyBJ,MAAMV,KAAK,KAEpCT,OAAsBuB,eAAkB3B,SAASC,cAAc0B,gBAAkC3B,SAASc,KAChH,GAAIY,aAAatB,QAAS,MAAM,IAAIkB,MAAM,2CAA2CK,mBAErF,IAAIC,OAAmCxB,OAAOH,cAAcJ,gBAC5D,OAAIc,UAAUiB,UAIdA,OAAS1B,iBAAiBN,eAAgB,cAAU,EADb,GAOzC,SAA2BiC,UACzB,MAAMvB,GAAyBuB,SAASC,MAAM,wBAAwB,GACtE,GAAIJ,aAAapB,IAAK,MAAM,IAAIgB,MAAM,qCAAqCO,aAC3E,OAAOvB,EACT,CAZqByB,CAAkBlC,iBAGrCO,OAAOW,YAAYa,SALWA,MAQhC,CAQO,SAASI,wBAAwBvB,SAEtC,MAAsB,oBAAXwB,OAA+B,KACtCxB,UAAYwB,OAAeA,OACvBxB,QAAoByB,cAAcC,WAC5C,CAEO,SAASC,qBAAqBC,WACnC,OAAO1B,UAAW0B,UAAkCrC,SACtD,CAEA,SAASsC,QAAQD,WACf,OAAID,qBAAqBC,WAChB,CACLE,IAAK,EACLC,KAAM,EACNC,MAAOR,OAAOS,WACdC,OAAQV,OAAOW,aAGVP,UAAUQ,uBAErB,CAEO,SAASC,qBAAqBT,WACnC,MAAMU,gBAAkB,IAAIC,WAAqBC,WAC/C,GAAIb,qBAAqBC,WAAY,OAErC,MAAMa,eAAiB,IAAIC,eAAe,IAAYF,SAASG,KAAKd,QAAQD,aAG5E,OAFAa,eAAeG,QAAQhB,WAEhB,IAAYa,eAAeI,eAG9BC,eAAsCC,MAC1CC,UAAUxB,OAAQyB,gBAAgBC,QAClCF,UAAUxB,OAAQyB,gBAAgBE,OAAQ,CAAEC,SAAS,IACrDJ,UAAUzD,SAAU0D,gBAAgBI,kBACpCL,UAAUxB,OAAQyB,gBAAgBK,mBAClCN,UAAUzD,SAAU0D,gBAAgBM,mBACpCC,KAAKC,IAAI,IAAe5B,QAAQD,aAElC,OAAOmB,MAAMD,eAAgBR,iBAAiBkB,KAC5CE,UAAU7B,QAAQD,YAClB+B,qBAAqB,CAACC,EAAYC,IAAwBD,EAAE9B,MAAQ+B,EAAE/B,KAAO8B,EAAE7B,OAAS8B,EAAE9B,MAAQ6B,EAAE5B,QAAU6B,EAAE7B,OAAS4B,EAAE1B,SAAW2B,EAAE3B,QAE5I,CAEO,SAAS4B,cACdlC,UACAmC,UAIA,GAAIpC,qBAAqBC,WAEvB,OADAJ,OAAOwC,iBAAiB,SAAUD,UAC3B,CACLE,KAAM,IAAYzC,OAAO0C,oBAAoB,SAAUH,WAI3D,MAAMtB,eAAiB,IAAIC,eAAeqB,UAG1C,OAFAtB,eAAeG,QAAQhB,WAEhB,CACLqC,KAAM,KACJxB,eAAe0B,UAAUvC,WACzBa,eAAeI,cAGrB,CAEO,SAASuB,YAAYjF,eAAiCkF,IAAaxE,IACxE,GAAIN,SAAS+E,eAAezE,IAAK,OAEjC,MAAM0E,IAAwBhF,SAASU,cAAc,SAErDsE,IAAI1E,GAAKA,GAET0E,IAAIC,YAAcH,IACwBlF,eAAeE,gBAAgBC,kBAC5DC,SAASkF,KAAKnE,YAAYiE,IACzC"}
1
+ {"version":3,"file":"DomUtils.js","sources":["../../src/Utils/DomUtils.ts"],"sourcesContent":["import type { TAmbientContext } from '@Anarchy/Engine/Context';\nimport type { TAppGlobalContainer, TContainerDecorator } from '@Anarchy/Engine/Global';\nimport { ContainerEvents } from '@Anarchy/Engine/Global/Constants';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\nimport type { Subscriber } from 'rxjs';\nimport { distinctUntilChanged, fromEvent, map, merge, Observable, startWith } from 'rxjs';\n\nexport function findDomElement(ambientContext: TAmbientContext, canvasSelector: string): HTMLElement | null {\n const appContainer: TAppGlobalContainer = ambientContext.globalContainer.getAppContainer();\n return appContainer.document.querySelector(canvasSelector);\n}\n\nexport function createDomElement(ambientContext: TAmbientContext, tagName: string, parent?: HTMLElement | undefined, classes?: ReadonlyArray<string>, id?: string, style?: string): HTMLElement {\n const appContainer: TAppGlobalContainer = ambientContext.globalContainer.getAppContainer();\n const element: HTMLElement = appContainer.document.createElement(tagName);\n\n if (isDefined(id)) element.setAttribute('id', id);\n if (isDefined(classes)) element.setAttribute('class', classes.join(' '));\n if (isDefined(style)) element.setAttribute('style', style);\n\n (parent ?? appContainer.document.body).appendChild(element);\n\n return element;\n}\n\nexport function isCanvasElement(element: HTMLElement | unknown): element is HTMLCanvasElement {\n return element instanceof HTMLCanvasElement;\n}\n\nexport function getOrCreateCanvasFromSelector(ambientContext: TAmbientContext, fullSelector: string): HTMLCanvasElement {\n const trimmed: string = fullSelector.trim();\n if (!trimmed) throw new Error('Canvas selector must not be empty');\n\n const parts: Array<string> = trimmed.split(/\\s+/);\n // eslint-disable-next-line functional/immutable-data\n const canvasSelector: string | undefined = parts.pop();\n if (isNotDefined(canvasSelector)) throw new Error('Canvas selector must be defined');\n const parentSelector: string = parts.join(' ');\n\n const parent: HTMLElement = parentSelector ? (document.querySelector(parentSelector) as HTMLElement) : document.body;\n if (isNotDefined(parent)) throw new Error(`Parent element not found for selector: \"${parentSelector}\"`);\n\n let canvas: HTMLCanvasElement | null = parent.querySelector(canvasSelector) as HTMLCanvasElement | null;\n if (isDefined(canvas)) return canvas;\n\n const id: string = getIdFromSelector(canvasSelector);\n const classes: ReadonlyArray<string> = [];\n canvas = createDomElement(ambientContext, 'canvas', undefined, classes, id) as HTMLCanvasElement;\n parent.appendChild(canvas);\n\n return canvas;\n}\n\nfunction getIdFromSelector(selector: string): string {\n const id: string | undefined = selector.match(/#([a-zA-Z0-9\\-_]+)/)?.[1];\n if (isNotDefined(id)) throw new Error(`Canvas selector must contain id: \"${selector}\"`);\n return id;\n}\n\nexport function getWindowFromDomElement(element: HTMLElement | Window): TAppGlobalContainer | null {\n //SSR\n if (typeof window === 'undefined') return null;\n if (element === window) return window;\n return (element as Element).ownerDocument.defaultView;\n}\n\nexport function isAppGlobalContainer(container: TAppGlobalContainer | TContainerDecorator | HTMLElement): container is TAppGlobalContainer {\n return isDefined((container as TAppGlobalContainer).document);\n}\n\nfunction getRect(container: HTMLElement | TAppGlobalContainer): DOMRect {\n if (isAppGlobalContainer(container)) {\n return {\n top: 0,\n left: 0,\n width: window.innerWidth,\n height: window.innerHeight\n } as DOMRect;\n } else {\n return container.getBoundingClientRect();\n }\n}\n\nexport function observeContainerRect(container: HTMLElement | TAppGlobalContainer): Observable<DOMRect> {\n const resizeObserver$ = new Observable<DOMRect>((observer: Subscriber<DOMRect>) => {\n if (isAppGlobalContainer(container)) return undefined;\n\n const resizeObserver = new ResizeObserver((): void => observer.next(getRect(container)));\n resizeObserver.observe(container as HTMLElement);\n\n return (): void => resizeObserver.disconnect();\n });\n\n const generalEvents$: Observable<DOMRect> = merge(\n fromEvent(window, ContainerEvents.Resize),\n fromEvent(window, ContainerEvents.Scroll, { passive: true }),\n fromEvent(document, ContainerEvents.FullscreenChange),\n fromEvent(window, ContainerEvents.OrientationChange),\n fromEvent(document, ContainerEvents.VisibilityChange)\n ).pipe(map((): DOMRect => getRect(container)));\n\n return merge(generalEvents$, resizeObserver$).pipe(\n startWith(getRect(container)),\n distinctUntilChanged((a: DOMRect, b: DOMRect): boolean => a.top === b.top && a.left === b.left && a.width === b.width && a.height === b.height)\n );\n}\n\nexport function observeResize(\n container: TAppGlobalContainer | HTMLElement,\n callback: (list: ReadonlyArray<ResizeObserverEntry> | Event) => void\n): Readonly<{\n stop: () => void;\n}> {\n if (isAppGlobalContainer(container)) {\n window.addEventListener('resize', callback);\n return {\n stop: (): void => window.removeEventListener('resize', callback)\n };\n }\n\n const resizeObserver = new ResizeObserver(callback);\n resizeObserver.observe(container);\n\n return {\n stop: (): void => {\n resizeObserver.unobserve(container);\n resizeObserver.disconnect();\n }\n };\n}\n\nexport function injectStyle(ambientContext: TAmbientContext, css: string, id: string): void {\n if (document.getElementById(id)) return;\n\n const tag: HTMLStyleElement = document.createElement('style');\n // eslint-disable-next-line functional/immutable-data\n tag.id = id;\n // eslint-disable-next-line functional/immutable-data\n tag.textContent = css;\n const appContainer: TAppGlobalContainer = ambientContext.globalContainer.getAppContainer();\n appContainer.document.head.appendChild(tag);\n}\n"],"names":["findDomElement","ambientContext","canvasSelector","globalContainer","getAppContainer","document","querySelector","createDomElement","tagName","parent","classes","id","style","appContainer","element","createElement","isDefined","setAttribute","join","body","appendChild","isCanvasElement","HTMLCanvasElement","getOrCreateCanvasFromSelector","fullSelector","trimmed","trim","Error","parts","split","pop","isNotDefined","parentSelector","canvas","selector","match","getIdFromSelector","getWindowFromDomElement","window","ownerDocument","defaultView","isAppGlobalContainer","container","getRect","top","left","width","innerWidth","height","innerHeight","getBoundingClientRect","observeContainerRect","resizeObserver$","Observable","observer","resizeObserver","ResizeObserver","next","observe","disconnect","generalEvents$","merge","fromEvent","ContainerEvents","Resize","Scroll","passive","FullscreenChange","OrientationChange","VisibilityChange","pipe","map","startWith","distinctUntilChanged","a","b","observeResize","callback","addEventListener","stop","removeEventListener","unobserve","injectStyle","css","getElementById","tag","textContent","head"],"mappings":"2pBAOO,SAASA,eAAeC,eAAiCC,gBAE9D,OAD0CD,eAAeE,gBAAgBC,kBACrDC,SAASC,cAAcJ,eAC7C,CAEO,SAASK,iBAAiBN,eAAiCO,QAAiBC,OAAkCC,QAAiCC,GAAaC,OACjK,MAAMC,aAAoCZ,eAAeE,gBAAgBC,kBACnEU,QAAuBD,aAAaR,SAASU,cAAcP,SAQjE,OANIQ,UAAUL,KAAKG,QAAQG,aAAa,KAAMN,IAC1CK,UAAUN,UAAUI,QAAQG,aAAa,QAASP,QAAQQ,KAAK,MAC/DF,UAAUJ,QAAQE,QAAQG,aAAa,QAASL,QAEnDH,QAAUI,aAAaR,SAASc,MAAMC,YAAYN,SAE5CA,OACT,CAEO,SAASO,gBAAgBP,SAC9B,OAAOA,mBAAmBQ,iBAC5B,CAEO,SAASC,8BAA8BtB,eAAiCuB,cAC7E,MAAMC,QAAkBD,aAAaE,OACrC,IAAKD,QAAS,MAAM,IAAIE,MAAM,qCAE9B,MAAMC,MAAuBH,QAAQI,MAAM,OAErC3B,eAAqC0B,MAAME,MACjD,GAAIC,aAAa7B,gBAAiB,MAAM,IAAIyB,MAAM,mCAClD,MAAMK,eAAyBJ,MAAMV,KAAK,KAEpCT,OAAsBuB,eAAkB3B,SAASC,cAAc0B,gBAAkC3B,SAASc,KAChH,GAAIY,aAAatB,QAAS,MAAM,IAAIkB,MAAM,2CAA2CK,mBAErF,IAAIC,OAAmCxB,OAAOH,cAAcJ,gBAC5D,OAAIc,UAAUiB,UAIdA,OAAS1B,iBAAiBN,eAAgB,cAAU,EADb,GAOzC,SAA2BiC,UACzB,MAAMvB,GAAyBuB,SAASC,MAAM,wBAAwB,GACtE,GAAIJ,aAAapB,IAAK,MAAM,IAAIgB,MAAM,qCAAqCO,aAC3E,OAAOvB,EACT,CAZqByB,CAAkBlC,iBAGrCO,OAAOW,YAAYa,SALWA,MAQhC,CAQO,SAASI,wBAAwBvB,SAEtC,MAAsB,oBAAXwB,OAA+B,KACtCxB,UAAYwB,OAAeA,OACvBxB,QAAoByB,cAAcC,WAC5C,CAEO,SAASC,qBAAqBC,WACnC,OAAO1B,UAAW0B,UAAkCrC,SACtD,CAEA,SAASsC,QAAQD,WACf,OAAID,qBAAqBC,WAChB,CACLE,IAAK,EACLC,KAAM,EACNC,MAAOR,OAAOS,WACdC,OAAQV,OAAOW,aAGVP,UAAUQ,uBAErB,CAEO,SAASC,qBAAqBT,WACnC,MAAMU,gBAAkB,IAAIC,WAAqBC,WAC/C,GAAIb,qBAAqBC,WAAY,OAErC,MAAMa,eAAiB,IAAIC,eAAe,IAAYF,SAASG,KAAKd,QAAQD,aAG5E,OAFAa,eAAeG,QAAQhB,WAEhB,IAAYa,eAAeI,eAG9BC,eAAsCC,MAC1CC,UAAUxB,OAAQyB,gBAAgBC,QAClCF,UAAUxB,OAAQyB,gBAAgBE,OAAQ,CAAEC,SAAS,IACrDJ,UAAUzD,SAAU0D,gBAAgBI,kBACpCL,UAAUxB,OAAQyB,gBAAgBK,mBAClCN,UAAUzD,SAAU0D,gBAAgBM,mBACpCC,KAAKC,IAAI,IAAe5B,QAAQD,aAElC,OAAOmB,MAAMD,eAAgBR,iBAAiBkB,KAC5CE,UAAU7B,QAAQD,YAClB+B,qBAAqB,CAACC,EAAYC,IAAwBD,EAAE9B,MAAQ+B,EAAE/B,KAAO8B,EAAE7B,OAAS8B,EAAE9B,MAAQ6B,EAAE5B,QAAU6B,EAAE7B,OAAS4B,EAAE1B,SAAW2B,EAAE3B,QAE5I,CAEO,SAAS4B,cACdlC,UACAmC,UAIA,GAAIpC,qBAAqBC,WAEvB,OADAJ,OAAOwC,iBAAiB,SAAUD,UAC3B,CACLE,KAAM,IAAYzC,OAAO0C,oBAAoB,SAAUH,WAI3D,MAAMtB,eAAiB,IAAIC,eAAeqB,UAG1C,OAFAtB,eAAeG,QAAQhB,WAEhB,CACLqC,KAAM,KACJxB,eAAe0B,UAAUvC,WACzBa,eAAeI,cAGrB,CAEO,SAASuB,YAAYjF,eAAiCkF,IAAaxE,IACxE,GAAIN,SAAS+E,eAAezE,IAAK,OAEjC,MAAM0E,IAAwBhF,SAASU,cAAc,SAErDsE,IAAI1E,GAAKA,GAET0E,IAAIC,YAAcH,IACwBlF,eAAeE,gBAAgBC,kBAC5DC,SAASkF,KAAKnE,YAAYiE,IACzC"}
@@ -1,2 +1,2 @@
1
- import { TWrapper } from '@hellpig/anarchy-engine/Abstract';
1
+ import { TWrapper } from '../Abstract';
2
2
  export declare function unWrapEntities<T>(list: ReadonlyArray<TWrapper<T>>): ReadonlyArray<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"EntityUtils.js","sources":["../../src/Utils/EntityUtils.ts"],"sourcesContent":["import type { TWrapper } from '@hellpig/anarchy-engine/Abstract';\n\nexport function unWrapEntities<T>(list: ReadonlyArray<TWrapper<T>>): ReadonlyArray<T> {\n return list.map(({ entity }: Readonly<TWrapper<T>>) => entity);\n}\n"],"names":["unWrapEntities","list","map","entity"],"mappings":"AAEO,SAASA,eAAkBC,MAChC,OAAOA,KAAKC,IAAI,EAAGC,iBAAoCA,OACzD"}
1
+ {"version":3,"file":"EntityUtils.js","sources":["../../src/Utils/EntityUtils.ts"],"sourcesContent":["import type { TWrapper } from '@Anarchy/Engine/Abstract';\n\nexport function unWrapEntities<T>(list: ReadonlyArray<TWrapper<T>>): ReadonlyArray<T> {\n return list.map(({ entity }: Readonly<TWrapper<T>>) => entity);\n}\n"],"names":["unWrapEntities","list","map","entity"],"mappings":"AAEO,SAASA,eAAkBC,MAChC,OAAOA,KAAKC,IAAI,EAAGC,iBAAoCA,OACzD"}
@@ -1,5 +1,5 @@
1
- import { LookUpStrategy, TAbstractAsyncEntityRegistry, TAbstractEntityRegistry, TAbstractResourceAsyncRegistry, TAbstractSimpleRegistry, TRegistryPack } from '@hellpig/anarchy-engine/Abstract';
2
- import { TMultitonRegistrable, TRegistrable } from '@hellpig/anarchy-engine/Mixins';
1
+ import { LookUpStrategy, TAbstractAsyncEntityRegistry, TAbstractEntityRegistry, TAbstractResourceAsyncRegistry, TAbstractSimpleRegistry, TRegistryPack } from '../Abstract';
2
+ import { TMultitonRegistrable, TRegistrable } from '../Mixins';
3
3
  import { Observable } from 'rxjs';
4
4
  export declare function getUniqEntityWithTagsAsync<T extends TRegistrable>(tags: ReadonlyArray<string>, registry: TAbstractEntityRegistry<T> | TAbstractAsyncEntityRegistry<T>, strategy: LookUpStrategy, waitingTime?: number): Promise<T | undefined>;
5
5
  export declare function getAsyncUniqEntityWithTag<T extends TRegistrable>(tag: string, registry: TAbstractEntityRegistry<T> | TAbstractAsyncEntityRegistry<T>, waitingTime?: number): Promise<T | undefined>;