@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,9 +1,9 @@
1
- import { TAbstractResourceConfig } from '@hellpig/anarchy-engine/Abstract';
2
- import { TActorConfig } from '@hellpig/anarchy-engine/Actor';
3
- import { TAnyAudioConfig, TAudioResourceConfig } from '@hellpig/anarchy-engine/Audio';
4
- import { TWithName, TWithNameOptional, TWithTags } from '@hellpig/anarchy-engine/Mixins';
5
- import { TModel3dConfig, TModel3dResourceConfig } from '@hellpig/anarchy-engine/Models3d';
6
- import { TPhysicsConfig } from '@hellpig/anarchy-engine/Physics';
1
+ import { TAbstractResourceConfig } from '../../Abstract';
2
+ import { TActorConfig } from '../../Actor';
3
+ import { TAnyAudioConfig, TAudioResourceConfig } from '../../Audio';
4
+ import { TWithName, TWithNameOptional, TWithTags } from '../../Mixins';
5
+ import { TModel3dConfig, TModel3dResourceConfig } from '../../Models3d';
6
+ import { TPhysicsConfig } from '../../Physics';
7
7
  export declare const validateNames: (entities: ReadonlyArray<TWithNameOptional>) => boolean;
8
8
  export declare const validateName: (entity: TWithNameOptional) => boolean;
9
9
  export declare const validateCameraNames: (entities: ReadonlyArray<Readonly<{
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaValidationUtils.js","sources":["../../../src/Space/Utils/SchemaValidationUtils.ts"],"sourcesContent":["import type { TAbstractResourceConfig } from '@hellpig/anarchy-engine/Abstract';\nimport type { TActorConfig } from '@hellpig/anarchy-engine/Actor';\nimport type { TAnyAudioConfig, TAudioResourceConfig } from '@hellpig/anarchy-engine/Audio';\nimport type { TWithName, TWithNameOptional, TWithTags } from '@hellpig/anarchy-engine/Mixins';\nimport type { TModel3dConfig, TModel3dResourceConfig } from '@hellpig/anarchy-engine/Models3d';\nimport { isPrimitiveModel3dResourceConfig, isPrimitiveModel3dSource } from '@hellpig/anarchy-engine/Models3d';\nimport type { TPhysicsBodyConfig, TPhysicsConfig } from '@hellpig/anarchy-engine/Physics';\nimport { findDuplicateString, isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport const validateNames = (entities: ReadonlyArray<TWithNameOptional>): boolean => entities.every(validateName);\nexport const validateName = (entity: TWithNameOptional): boolean => validateField(entity, 'name');\nexport const validateCameraNames = (\n entities: ReadonlyArray<\n Readonly<{\n cameraName: string;\n }>\n >\n): boolean => entities.every(validateCameraName);\nexport const validateCameraName = (entity: Readonly<{ cameraName: string }>): boolean => validateField(entity, 'cameraName');\n\nexport const validateActorNamesForEveryEntity = (\n entities: ReadonlyArray<\n Readonly<{\n actorNames: ReadonlyArray<string>;\n }>\n >\n): boolean => entities.every(validateActorNames);\n\nexport const validateActorNames = (\n entity: Readonly<{\n actorNames: ReadonlyArray<string>;\n }>\n): boolean => validateArrayField(entity, 'actorNames');\n\nexport const validateTagsForEveryEntity = (entities: ReadonlyArray<TWithTags>): boolean => entities.every((e: TWithTags): boolean => validateTags(e.tags));\nexport const validateTags = (tags: ReadonlyArray<string> | undefined): boolean => (tags ? tags.every(validate) : true);\n\nexport const validateField = <T extends Record<string, any>>(obj: T, field: keyof T): boolean => validate(obj[field]);\nexport const validateArrayField = <T extends Record<string, any>>(obj: T, field: keyof T): boolean => obj[field].every(validate);\n\nexport const validate = (str: string | undefined): boolean => (isDefined(str) ? str.length > 0 && /^[A-z0-9_]+$/gm.test(str) : true);\n\nexport function validateAllActorsHasModel3d(actors: ReadonlyArray<TActorConfig>, models3d: ReadonlyArray<TModel3dConfig> | undefined): boolean {\n const sources: ReadonlyArray<string> = models3d?.map((v: TModel3dConfig): string => v.name) ?? [];\n return actors.every((actor: TActorConfig): boolean => (isNotDefined(models3d) ? true : sources.includes(actor.model3dSource)));\n}\n\nexport function validateAllActorsWithPhysicsHasRelatedPhysicsBody(actors: ReadonlyArray<TActorConfig>, physics: TPhysicsConfig): boolean {\n if (isNotDefined(physics.bodies)) return true;\n const { bodies } = physics;\n if (bodies.length === 0) return true;\n\n return actors.every((actor: TActorConfig): boolean => {\n if (isNotDefined(actor.physicsBodyName)) return true;\n return bodies.some((body: TPhysicsBodyConfig): boolean => body.name === actor.physicsBodyName);\n });\n}\n\nexport function validateNoSameName(entities: ReadonlyArray<TWithName>): string | undefined {\n const duplicate: string | undefined = findDuplicateString(entities.map((e: TWithName): string => e.name));\n return duplicate ? `Name \"${duplicate}\" is duplicated` : undefined;\n}\n\n// TODO would be nice to check all the resources and relations (e.g. materials)\nexport function validateAllModel3dEntityHasValidResource(entities: ReadonlyArray<TModel3dConfig>, resources: ReadonlyArray<TModel3dResourceConfig>): boolean {\n return entities.every((entity: TModel3dConfig): boolean => {\n if (isPrimitiveModel3dSource(entity.model3dSource)) return true;\n return resources.some((resource: TModel3dResourceConfig): boolean => resource.name === entity.model3dSource);\n });\n}\n\nexport function validateAllAudioEntityHasValidResource(entities: ReadonlyArray<TAnyAudioConfig>, resources: ReadonlyArray<TAudioResourceConfig>): boolean {\n return entities.every((entity: TAnyAudioConfig): boolean => {\n return resources.some((resource: TAudioResourceConfig): boolean => resource.name === entity.audioSource);\n });\n}\n\nexport function validateModel3dFileUrls(configs: ReadonlyArray<TModel3dResourceConfig>): boolean {\n return configs.every((config: TModel3dResourceConfig): boolean => {\n if (isPrimitiveModel3dResourceConfig(config)) return true;\n return validateFileUrl(config.url);\n });\n}\n\nexport function validateFileUrls(configs: ReadonlyArray<TAbstractResourceConfig>): boolean {\n return configs.every(({ url }: TAbstractResourceConfig): boolean => validateFileUrl(url));\n}\n\nexport function validateFileUrl(url: string): boolean {\n const regex = /^(\\/?|[a-zA-Z]:\\\\)[a-zA-Z0-9_\\-/\\\\]+\\.([A-z0-9]{1,4})$/;\n return regex.test(url);\n}\n"],"names":["validateNames","entities","every","validateName","entity","validateField","validateCameraNames","validateCameraName","validateActorNamesForEveryEntity","validateActorNames","validateArrayField","validateTagsForEveryEntity","e","validateTags","tags","validate","obj","field","str","isDefined","length","test","validateAllActorsHasModel3d","actors","models3d","sources","map","v","name","actor","isNotDefined","includes","model3dSource","validateAllActorsWithPhysicsHasRelatedPhysicsBody","physics","bodies","physicsBodyName","some","body","validateNoSameName","duplicate","findDuplicateString","validateAllModel3dEntityHasValidResource","resources","isPrimitiveModel3dSource","resource","validateAllAudioEntityHasValidResource","audioSource","validateModel3dFileUrls","configs","config","isPrimitiveModel3dResourceConfig","validateFileUrl","url","validateFileUrls"],"mappings":"uSASO,MAAMA,cAAiBC,UAAwDA,SAASC,MAAMC,cACxFA,aAAgBC,QAAuCC,cAAcD,OAAQ,QAC7EE,oBACXL,UAKYA,SAASC,MAAMK,oBAChBA,mBAAsBH,QAAsDC,cAAcD,OAAQ,cAElGI,iCACXP,UAKYA,SAASC,MAAMO,oBAEhBA,mBACXL,QAGYM,mBAAmBN,OAAQ,cAE5BO,2BAA8BV,UAAgDA,SAASC,MAAOU,GAA0BC,aAAaD,EAAEE,OACvID,aAAgBC,OAAsDA,MAAOA,KAAKZ,MAAMa,UAExFV,cAAgB,CAAgCW,IAAQC,QAA4BF,SAASC,IAAIC,QACjGP,mBAAqB,CAAgCM,IAAQC,QAA4BD,IAAIC,OAAOf,MAAMa,UAE1GA,SAAYG,MAAsCC,UAAUD,MAAOA,IAAIE,OAAS,GAAK,iBAAiBC,KAAKH,KAEjH,SAASI,4BAA4BC,OAAqCC,UAC/E,MAAMC,QAAiCD,UAAUE,IAAKC,GAA8BA,EAAEC,OAAS,GAC/F,OAAOL,OAAOrB,MAAO2B,SAAkCC,aAAaN,WAAmBC,QAAQM,SAASF,MAAMG,eAChH,CAEO,SAASC,kDAAkDV,OAAqCW,SACrG,GAAIJ,aAAaI,QAAQC,QAAS,OAAO,EACzC,MAAMA,OAAEA,QAAWD,QACnB,OAAsB,IAAlBC,OAAOf,QAEJG,OAAOrB,MAAO2B,SACfC,aAAaD,MAAMO,kBAChBD,OAAOE,KAAMC,MAAsCA,KAAKV,OAASC,MAAMO,iBAElF,CAEO,SAASG,mBAAmBtC,UACjC,MAAMuC,UAAgCC,oBAAoBxC,SAASyB,IAAKd,GAAyBA,EAAEgB,OACnG,OAAOY,UAAY,SAASA,gCAA6B,CAC3D,CAGO,SAASE,yCAAyCzC,SAAyC0C,WAChG,OAAO1C,SAASC,MAAOE,UACjBwC,yBAAyBxC,OAAO4B,gBAC7BW,UAAUN,KAAMQ,UAA8CA,SAASjB,OAASxB,OAAO4B,eAElG,CAEO,SAASc,uCAAuC7C,SAA0C0C,WAC/F,OAAO1C,SAASC,MAAOE,QACduC,UAAUN,KAAMQ,UAA4CA,SAASjB,OAASxB,OAAO2C,aAEhG,CAEO,SAASC,wBAAwBC,SACtC,OAAOA,QAAQ/C,MAAOgD,UAChBC,iCAAiCD,SAC9BE,gBAAgBF,OAAOG,KAElC,CAEO,SAASC,iBAAiBL,SAC/B,OAAOA,QAAQ/C,MAAM,EAAGmD,WAA4CD,gBAAgBC,KACtF,CAEO,SAASD,gBAAgBC,KAE9B,MADc,yDACDhC,KAAKgC,IACpB"}
1
+ {"version":3,"file":"SchemaValidationUtils.js","sources":["../../../src/Space/Utils/SchemaValidationUtils.ts"],"sourcesContent":["import type { TAbstractResourceConfig } from '@Anarchy/Engine/Abstract';\nimport type { TActorConfig } from '@Anarchy/Engine/Actor';\nimport type { TAnyAudioConfig, TAudioResourceConfig } from '@Anarchy/Engine/Audio';\nimport type { TWithName, TWithNameOptional, TWithTags } from '@Anarchy/Engine/Mixins';\nimport type { TModel3dConfig, TModel3dResourceConfig } from '@Anarchy/Engine/Models3d';\nimport { isPrimitiveModel3dResourceConfig, isPrimitiveModel3dSource } from '@Anarchy/Engine/Models3d';\nimport type { TPhysicsBodyConfig, TPhysicsConfig } from '@Anarchy/Engine/Physics';\nimport { findDuplicateString, isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport const validateNames = (entities: ReadonlyArray<TWithNameOptional>): boolean => entities.every(validateName);\nexport const validateName = (entity: TWithNameOptional): boolean => validateField(entity, 'name');\nexport const validateCameraNames = (\n entities: ReadonlyArray<\n Readonly<{\n cameraName: string;\n }>\n >\n): boolean => entities.every(validateCameraName);\nexport const validateCameraName = (entity: Readonly<{ cameraName: string }>): boolean => validateField(entity, 'cameraName');\n\nexport const validateActorNamesForEveryEntity = (\n entities: ReadonlyArray<\n Readonly<{\n actorNames: ReadonlyArray<string>;\n }>\n >\n): boolean => entities.every(validateActorNames);\n\nexport const validateActorNames = (\n entity: Readonly<{\n actorNames: ReadonlyArray<string>;\n }>\n): boolean => validateArrayField(entity, 'actorNames');\n\nexport const validateTagsForEveryEntity = (entities: ReadonlyArray<TWithTags>): boolean => entities.every((e: TWithTags): boolean => validateTags(e.tags));\nexport const validateTags = (tags: ReadonlyArray<string> | undefined): boolean => (tags ? tags.every(validate) : true);\n\nexport const validateField = <T extends Record<string, any>>(obj: T, field: keyof T): boolean => validate(obj[field]);\nexport const validateArrayField = <T extends Record<string, any>>(obj: T, field: keyof T): boolean => obj[field].every(validate);\n\nexport const validate = (str: string | undefined): boolean => (isDefined(str) ? str.length > 0 && /^[A-z0-9_]+$/gm.test(str) : true);\n\nexport function validateAllActorsHasModel3d(actors: ReadonlyArray<TActorConfig>, models3d: ReadonlyArray<TModel3dConfig> | undefined): boolean {\n const sources: ReadonlyArray<string> = models3d?.map((v: TModel3dConfig): string => v.name) ?? [];\n return actors.every((actor: TActorConfig): boolean => (isNotDefined(models3d) ? true : sources.includes(actor.model3dSource)));\n}\n\nexport function validateAllActorsWithPhysicsHasRelatedPhysicsBody(actors: ReadonlyArray<TActorConfig>, physics: TPhysicsConfig): boolean {\n if (isNotDefined(physics.bodies)) return true;\n const { bodies } = physics;\n if (bodies.length === 0) return true;\n\n return actors.every((actor: TActorConfig): boolean => {\n if (isNotDefined(actor.physicsBodyName)) return true;\n return bodies.some((body: TPhysicsBodyConfig): boolean => body.name === actor.physicsBodyName);\n });\n}\n\nexport function validateNoSameName(entities: ReadonlyArray<TWithName>): string | undefined {\n const duplicate: string | undefined = findDuplicateString(entities.map((e: TWithName): string => e.name));\n return duplicate ? `Name \"${duplicate}\" is duplicated` : undefined;\n}\n\n// TODO would be nice to check all the resources and relations (e.g. materials)\nexport function validateAllModel3dEntityHasValidResource(entities: ReadonlyArray<TModel3dConfig>, resources: ReadonlyArray<TModel3dResourceConfig>): boolean {\n return entities.every((entity: TModel3dConfig): boolean => {\n if (isPrimitiveModel3dSource(entity.model3dSource)) return true;\n return resources.some((resource: TModel3dResourceConfig): boolean => resource.name === entity.model3dSource);\n });\n}\n\nexport function validateAllAudioEntityHasValidResource(entities: ReadonlyArray<TAnyAudioConfig>, resources: ReadonlyArray<TAudioResourceConfig>): boolean {\n return entities.every((entity: TAnyAudioConfig): boolean => {\n return resources.some((resource: TAudioResourceConfig): boolean => resource.name === entity.audioSource);\n });\n}\n\nexport function validateModel3dFileUrls(configs: ReadonlyArray<TModel3dResourceConfig>): boolean {\n return configs.every((config: TModel3dResourceConfig): boolean => {\n if (isPrimitiveModel3dResourceConfig(config)) return true;\n return validateFileUrl(config.url);\n });\n}\n\nexport function validateFileUrls(configs: ReadonlyArray<TAbstractResourceConfig>): boolean {\n return configs.every(({ url }: TAbstractResourceConfig): boolean => validateFileUrl(url));\n}\n\nexport function validateFileUrl(url: string): boolean {\n const regex = /^(\\/?|[a-zA-Z]:\\\\)[a-zA-Z0-9_\\-/\\\\]+\\.([A-z0-9]{1,4})$/;\n return regex.test(url);\n}\n"],"names":["validateNames","entities","every","validateName","entity","validateField","validateCameraNames","validateCameraName","validateActorNamesForEveryEntity","validateActorNames","validateArrayField","validateTagsForEveryEntity","e","validateTags","tags","validate","obj","field","str","isDefined","length","test","validateAllActorsHasModel3d","actors","models3d","sources","map","v","name","actor","isNotDefined","includes","model3dSource","validateAllActorsWithPhysicsHasRelatedPhysicsBody","physics","bodies","physicsBodyName","some","body","validateNoSameName","duplicate","findDuplicateString","validateAllModel3dEntityHasValidResource","resources","isPrimitiveModel3dSource","resource","validateAllAudioEntityHasValidResource","audioSource","validateModel3dFileUrls","configs","config","isPrimitiveModel3dResourceConfig","validateFileUrl","url","validateFileUrls"],"mappings":"uSASO,MAAMA,cAAiBC,UAAwDA,SAASC,MAAMC,cACxFA,aAAgBC,QAAuCC,cAAcD,OAAQ,QAC7EE,oBACXL,UAKYA,SAASC,MAAMK,oBAChBA,mBAAsBH,QAAsDC,cAAcD,OAAQ,cAElGI,iCACXP,UAKYA,SAASC,MAAMO,oBAEhBA,mBACXL,QAGYM,mBAAmBN,OAAQ,cAE5BO,2BAA8BV,UAAgDA,SAASC,MAAOU,GAA0BC,aAAaD,EAAEE,OACvID,aAAgBC,OAAsDA,MAAOA,KAAKZ,MAAMa,UAExFV,cAAgB,CAAgCW,IAAQC,QAA4BF,SAASC,IAAIC,QACjGP,mBAAqB,CAAgCM,IAAQC,QAA4BD,IAAIC,OAAOf,MAAMa,UAE1GA,SAAYG,MAAsCC,UAAUD,MAAOA,IAAIE,OAAS,GAAK,iBAAiBC,KAAKH,KAEjH,SAASI,4BAA4BC,OAAqCC,UAC/E,MAAMC,QAAiCD,UAAUE,IAAKC,GAA8BA,EAAEC,OAAS,GAC/F,OAAOL,OAAOrB,MAAO2B,SAAkCC,aAAaN,WAAmBC,QAAQM,SAASF,MAAMG,eAChH,CAEO,SAASC,kDAAkDV,OAAqCW,SACrG,GAAIJ,aAAaI,QAAQC,QAAS,OAAO,EACzC,MAAMA,OAAEA,QAAWD,QACnB,OAAsB,IAAlBC,OAAOf,QAEJG,OAAOrB,MAAO2B,SACfC,aAAaD,MAAMO,kBAChBD,OAAOE,KAAMC,MAAsCA,KAAKV,OAASC,MAAMO,iBAElF,CAEO,SAASG,mBAAmBtC,UACjC,MAAMuC,UAAgCC,oBAAoBxC,SAASyB,IAAKd,GAAyBA,EAAEgB,OACnG,OAAOY,UAAY,SAASA,gCAA6B,CAC3D,CAGO,SAASE,yCAAyCzC,SAAyC0C,WAChG,OAAO1C,SAASC,MAAOE,UACjBwC,yBAAyBxC,OAAO4B,gBAC7BW,UAAUN,KAAMQ,UAA8CA,SAASjB,OAASxB,OAAO4B,eAElG,CAEO,SAASc,uCAAuC7C,SAA0C0C,WAC/F,OAAO1C,SAASC,MAAOE,QACduC,UAAUN,KAAMQ,UAA4CA,SAASjB,OAASxB,OAAO2C,aAEhG,CAEO,SAASC,wBAAwBC,SACtC,OAAOA,QAAQ/C,MAAOgD,UAChBC,iCAAiCD,SAC9BE,gBAAgBF,OAAOG,KAElC,CAEO,SAASC,iBAAiBL,SAC/B,OAAOA,QAAQ/C,MAAM,EAAGmD,WAA4CD,gBAAgBC,KACtF,CAEO,SAASD,gBAAgBC,KAE9B,MADc,yDACDhC,KAAKgC,IACpB"}
@@ -1,4 +1,4 @@
1
- import { TSpaceConfig } from '@hellpig/anarchy-engine/Space/Models';
1
+ import { TSpaceConfig } from '../Models';
2
2
  type TSchemaValidationResult = Readonly<{
3
3
  isValid: boolean;
4
4
  errors: ReadonlyArray<any> | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"SchemasValidator.js","sources":["../../../src/Space/Validators/SchemasValidator.ts"],"sourcesContent":["import type { Schema } from '@cfworker/json-schema';\nimport { Validator } from '@cfworker/json-schema';\nimport type { TAbstractResourceConfig } from '@hellpig/anarchy-engine/Abstract';\nimport type { TActorConfig } from '@hellpig/anarchy-engine/Actor';\nimport type { TAnyAudioConfig, TAudioResourceConfig } from '@hellpig/anarchy-engine/Audio';\nimport type { TAnyCameraConfig } from '@hellpig/anarchy-engine/Camera';\nimport type { TControlsConfig } from '@hellpig/anarchy-engine/Controls';\nimport type { TAnyIntersectionsWatcherConfig } from '@hellpig/anarchy-engine/Intersections';\nimport { isIntersectionsCameraWatcherConfig } from '@hellpig/anarchy-engine/Intersections';\nimport type { TActive, TWithName, TWithNameOptional, TWithTags } from '@hellpig/anarchy-engine/Mixins';\nimport type { TModel3dConfig, TModel3dResourceConfig } from '@hellpig/anarchy-engine/Models3d';\nimport type { TPhysicsBodyConfig, TPhysicsConfig } from '@hellpig/anarchy-engine/Physics';\nimport type { TSceneConfig } from '@hellpig/anarchy-engine/Scene/Models';\nimport { SpaceSchemaVersion } from '@hellpig/anarchy-engine/Space/Constants';\nimport type { TSpaceConfig, TSpaceConfigEntities, TSpaceConfigResources } from '@hellpig/anarchy-engine/Space/Models';\nimport TSpaceConfigSchema from '@hellpig/anarchy-engine/Space/Schemas/TSpaceConfig.json';\nimport {\n validate,\n validateActorNamesForEveryEntity,\n validateAllActorsHasModel3d,\n validateAllActorsWithPhysicsHasRelatedPhysicsBody,\n validateAllAudioEntityHasValidResource,\n validateAllModel3dEntityHasValidResource,\n validateCameraNames,\n validateFileUrls,\n validateModel3dFileUrls,\n validateNames,\n validateNoSameName,\n validateTags,\n validateTagsForEveryEntity\n} from '@hellpig/anarchy-engine/Space/Utils';\nimport { isDefined } from '@hellpig/anarchy-shared/Utils';\nimport { isArray } from 'lodash-es';\n\ntype TSchemaValidationResult = Readonly<{ isValid: boolean; errors: ReadonlyArray<any> | null | undefined }>;\n\nexport function validSpaceConfig(config: TSpaceConfig): TSchemaValidationResult {\n const jsonResult = validateJsonSchema(config);\n const dataResult = validateData(config);\n const jsonErrors: ReadonlyArray<any> = jsonResult.errors ?? [];\n const dataErrors: ReadonlyArray<any> = dataResult.errors ?? [];\n\n return { isValid: jsonResult.isValid && dataResult.isValid, errors: [...jsonErrors, ...dataErrors] };\n}\n\nfunction validateJsonSchema(config: TSpaceConfig): TSchemaValidationResult {\n const validator = new Validator(TSpaceConfigSchema as Schema, '7');\n const { valid, errors } = validator.validate(config);\n return { isValid: valid, errors };\n}\n\nfunction validateData({ name, version, scenes, resources, entities, canvasSelector, tags }: TSpaceConfig): TSchemaValidationResult {\n const { models3d: models3dResources, audio: audioResources, envMaps, textures } = resources;\n const { actors, audio, cameras, spatialGrids, controls, intersections, lights, materials, models3d: models3dEntities, physics, fogs, texts } = entities;\n\n const basicErrors: ReadonlyArray<string> = validateConfigBasics(name, version, scenes, canvasSelector, tags);\n const activeErrors: ReadonlyArray<string> = validateActiveEntities({ cameras, scenes, controls });\n const relationsErrors: ReadonlyArray<string> = validateRelations(controls, cameras, actors, models3dEntities, models3dResources, audioResources, audio, intersections, physics);\n const namesErrors: ReadonlyArray<string> = validateEntityNames({\n scenes,\n spatialGrids,\n actors,\n cameras,\n intersections,\n lights,\n fogs,\n texts,\n controls,\n models3dResources,\n materials,\n envMaps,\n textures\n });\n const tagsErrors: ReadonlyArray<string> = validateEntityTags({\n scenes,\n spatialGrids,\n actors,\n cameras,\n intersections,\n lights,\n fogs,\n texts,\n controls,\n models3dResources,\n materials,\n envMaps,\n textures\n });\n const duplicationErrors: ReadonlyArray<string> = validateNamesDuplication(entities, resources);\n const urlsErrors: ReadonlyArray<string> = validateUrls({ models3dResources }, { envMaps, textures });\n\n const errors: ReadonlyArray<string> = [...basicErrors, ...activeErrors, ...relationsErrors, ...namesErrors, ...tagsErrors, ...duplicationErrors, ...urlsErrors];\n\n return { isValid: errors.length === 0, errors };\n}\n\nfunction validateConfigBasics(name: string, version: SpaceSchemaVersion, scenes: ReadonlyArray<TSceneConfig>, canvasSelector: string, tags?: ReadonlyArray<string>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n if (version !== SpaceSchemaVersion.V1) errors = [...errors, `Unsupported schema's version(${version}). Supported version is: ${SpaceSchemaVersion.V2}`];\n if (scenes.length === 0) errors = [...errors, 'No scenes are defined'];\n if (!/^[a-zA-Z0-9\\s.#\\-_>[\\]='\"*^$~|(),:]+$/.test(canvasSelector)) errors = [...errors, 'Canvas selector must be defined and contain only allowed characters (a normal css selector)'];\n if (!validateTags(tags)) errors = [...errors, 'Space config tags must contain only letters, numbers and underscores'];\n if (!validate(name)) errors = [...errors, 'Space config name must be defined and contain only letters, numbers and underscores'];\n\n return errors;\n}\n\nfunction validateActiveEntities(entities: Record<string, ReadonlyArray<TActive>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(entities).forEach((list): void => {\n const [, key] = Object.entries(list)[0];\n const [, value] = Object.entries(list)[1];\n\n if ((value as ReadonlyArray<TActive>).filter((v: TActive): boolean => v.isActive).length > 1) errors = [...errors, `Must be only one active entity of \"${key}\", but multiple are active`];\n });\n\n return errors;\n}\n\nfunction validateRelations(\n controls: ReadonlyArray<TControlsConfig>,\n cameras: ReadonlyArray<TAnyCameraConfig>,\n actors: ReadonlyArray<TActorConfig>,\n models3dEntities: ReadonlyArray<TModel3dConfig>,\n models3dResources: ReadonlyArray<TModel3dResourceConfig>,\n audioResources: ReadonlyArray<TAudioResourceConfig>,\n audio: ReadonlyArray<TAnyAudioConfig>,\n intersections: ReadonlyArray<TAnyIntersectionsWatcherConfig>,\n physics: TPhysicsConfig\n): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n if (controls.length > 0 && cameras.length === 0) errors = [...errors, 'Controls cannot be defined without at least one camera, but there are no cameras'];\n if (!controls.every((control: TControlsConfig): boolean => cameras.some((camera: TAnyCameraConfig): boolean => camera.name === control.cameraName)))\n errors = [...errors, 'Not every control has a camera'];\n if (!validateAllActorsHasModel3d(actors, models3dEntities)) errors = [...errors, 'Not every actor has a defined model3dSource (check actors model3dSource against models3d entities)'];\n if (!validateAllActorsWithPhysicsHasRelatedPhysicsBody(actors, physics)) errors = [...errors, 'Not every actor has a defined model3dSource (check actors model3dSource against models3d entities)'];\n if (!validateAllModel3dEntityHasValidResource(models3dEntities, models3dResources)) errors = [...errors, 'Not every model3d entity has a valid resource (must be a primitive or an url)'];\n if (!validateAllAudioEntityHasValidResource(audio, audioResources)) errors = [...errors, 'Not every audio entity has a valid resource (must be a primitive or an url)'];\n if (!validateCameraNames(intersections.filter(isIntersectionsCameraWatcherConfig))) errors = [...errors, 'Not every intersection camera name is valid'];\n if (!validateActorNamesForEveryEntity(intersections)) errors = [...errors, 'Not every intersection actor name is valid'];\n\n return errors;\n}\n\nfunction validateEntityNames(entities: Record<string, ReadonlyArray<TWithNameOptional | TWithName>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(entities).forEach((list): void => {\n const [, key] = Object.entries(list)[0];\n const [, value] = Object.entries(list)[1];\n\n const isValid: boolean = validateNames(value as ReadonlyArray<TWithNameOptional | TWithName>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") names must be defined and contain only letters, numbers and underscores`];\n });\n\n return errors;\n}\n\nfunction validateEntityTags(entities: Record<string, ReadonlyArray<TWithTags>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(entities).forEach((list): void => {\n const [, key] = Object.entries(list)[0];\n const [, value] = Object.entries(list)[1];\n\n const isValid: boolean = validateTagsForEveryEntity(value as ReadonlyArray<Record<string, TWithTags>>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") tags must contain only letters, numbers and underscores`];\n });\n\n return errors;\n}\n\nfunction validateNamesDuplication(entities: TSpaceConfigEntities, resources: TSpaceConfigResources): ReadonlyArray<string> {\n const bodies: ReadonlyArray<TPhysicsBodyConfig> = entities.physics?.bodies ?? [];\n\n return [\n //\"physics\" is not an array, but we could check the bodies\n ...Object.values(entities).filter(isArray).map(validateNoSameName),\n validateNoSameName(bodies),\n ...Object.values(resources).map(validateNoSameName)\n ].filter(isDefined);\n}\n\nfunction validateUrls(models3dResources: Record<string, ReadonlyArray<TModel3dResourceConfig>>, withFileUrls: Record<string, ReadonlyArray<TAbstractResourceConfig>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(models3dResources).forEach((configs): void => {\n const [, key] = Object.entries(configs)[0];\n const [, value] = Object.entries(configs)[1];\n const isValid: boolean = validateModel3dFileUrls(value as ReadonlyArray<TModel3dResourceConfig>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") URLs must contain only letters, numbers and underscores`];\n });\n\n Object.entries(withFileUrls).forEach((configs): void => {\n const [, key] = Object.entries(configs)[0];\n const [, value] = Object.entries(configs)[1];\n const isValid: boolean = validateFileUrls(value as ReadonlyArray<TAbstractResourceConfig>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") URLs must contain only letters, numbers and underscores`];\n });\n\n return errors;\n}\n"],"names":["validSpaceConfig","config","jsonResult","validator","Validator","TSpaceConfigSchema","valid","errors","validate","isValid","validateJsonSchema","dataResult","name","version","scenes","resources","entities","canvasSelector","tags","models3d","models3dResources","audio","audioResources","envMaps","textures","actors","cameras","spatialGrids","controls","intersections","lights","materials","models3dEntities","physics","fogs","texts","basicErrors","SpaceSchemaVersion","V1","V2","length","test","validateTags","validateConfigBasics","activeErrors","Object","entries","forEach","list","key","value","filter","v","isActive","validateActiveEntities","relationsErrors","every","control","some","camera","cameraName","validateAllActorsHasModel3d","validateAllActorsWithPhysicsHasRelatedPhysicsBody","validateAllModel3dEntityHasValidResource","validateAllAudioEntityHasValidResource","validateCameraNames","isIntersectionsCameraWatcherConfig","validateActorNamesForEveryEntity","validateRelations","namesErrors","validateNames","validateEntityNames","tagsErrors","validateTagsForEveryEntity","validateEntityTags","duplicationErrors","bodies","values","isArray","map","validateNoSameName","isDefined","validateNamesDuplication","urlsErrors","withFileUrls","configs","validateModel3dFileUrls","validateFileUrls","validateUrls","validateData"],"mappings":"u0BAoCO,SAASA,iBAAiBC,QAC/B,MAAMC,WAQR,SAA4BD,QAC1B,MAAME,UAAY,IAAIC,UAAUC,mBAA8B,MACxDC,MAAEA,MAAAC,OAAOA,QAAWJ,UAAUK,SAASP,QAC7C,MAAO,CAAEQ,QAASH,MAAOC,cAC3B,CAZqBG,CAAmBT,QAChCU,WAaR,UAAsBC,KAAEA,KAAAC,QAAMA,QAAAC,OAASA,iBAAQC,UAAAC,SAAWA,SAAAC,eAAUA,eAAAC,KAAgBA,OAClF,MAAQC,SAAUC,kBAAmBC,MAAOC,eAAAC,QAAgBA,QAAAC,SAASA,UAAaT,WAC5EU,OAAEA,OAAAJ,MAAQA,MAAAK,QAAOA,QAAAC,aAASA,sBAAcC,SAAAC,cAAUA,cAAAC,OAAeA,OAAAC,UAAQA,UAAWZ,SAAUa,iBAAAC,QAAkBA,QAAAC,KAASA,KAAAC,MAAMA,OAAUnB,SAEzIoB,YAyCR,SAA8BxB,KAAcC,QAA6BC,OAAqCG,eAAwBC,MACpI,IAAIX,OAAgC,GAQpC,OANIM,UAAYwB,mBAAmBC,KAAI/B,OAAS,IAAIA,OAAQ,gCAAgCM,mCAAmCwB,mBAAmBE,OAC5H,IAAlBzB,OAAO0B,gBAAuB,IAAIjC,OAAQ,0BACzC,wCAAwCkC,KAAKxB,kBAAiBV,OAAS,IAAIA,OAAQ,gGACnFmC,aAAaxB,eAAgB,IAAIX,OAAQ,yEACzCC,SAASI,eAAgB,IAAIL,OAAQ,wFAEnCA,MACT,CAnD6CoC,CAAqB/B,KAAMC,QAASC,OAAQG,eAAgBC,MACjG0B,aAoDR,SAAgC5B,UAC9B,IAAIT,OAAgC,GASpC,OAPAsC,OAAOC,QAAQ9B,UAAU+B,QAASC,OAChC,MAAM,CAAGC,KAAOJ,OAAOC,QAAQE,MAAM,IAC/B,CAAGE,OAASL,OAAOC,QAAQE,MAAM,GAElCE,MAAiCC,OAAQC,GAAwBA,EAAEC,UAAUb,OAAS,WAAY,IAAIjC,OAAQ,sCAAsC0C,oCAGpJ1C,MACT,CA/D8C+C,CAAuB,CAAE5B,gBAASZ,cAAQc,oBAChF2B,gBAgER,SACE3B,SACAF,QACAD,OACAO,iBACAZ,kBACAE,eACAD,MACAQ,cACAI,SAEA,IAAI1B,OAAgC,GAYpC,OAVIqB,SAASY,OAAS,GAAwB,IAAnBd,QAAQc,SAAcjC,OAAS,IAAIA,OAAQ,qFACjEqB,SAAS4B,MAAOC,SAAsC/B,QAAQgC,KAAMC,QAAsCA,OAAO/C,OAAS6C,QAAQG,eACrIrD,OAAS,IAAIA,OAAQ,mCAClBsD,4BAA4BpC,OAAQO,oBAAmBzB,OAAS,IAAIA,OAAQ,uGAC5EuD,kDAAkDrC,OAAQQ,WAAU1B,OAAS,IAAIA,OAAQ,uGACzFwD,yCAAyC/B,iBAAkBZ,qBAAoBb,OAAS,IAAIA,OAAQ,kFACpGyD,uCAAuC3C,MAAOC,kBAAiBf,OAAS,IAAIA,OAAQ,gFACpF0D,oBAAoBpC,cAAcsB,OAAOe,uCAAsC3D,OAAS,IAAIA,OAAQ,gDACpG4D,iCAAiCtC,wBAAyB,IAAItB,OAAQ,+CAEpEA,MACT,CAxFiD6D,CAAkBxC,SAAUF,QAASD,OAAQO,iBAAkBZ,kBAAmBE,eAAgBD,MAAOQ,cAAeI,SACjKoC,YAyFR,SAA6BrD,UAC3B,IAAIT,OAAgC,GAUpC,OARAsC,OAAOC,QAAQ9B,UAAU+B,QAASC,OAChC,MAAM,CAAGC,KAAOJ,OAAOC,QAAQE,MAAM,IAC/B,CAAGE,OAASL,OAAOC,QAAQE,MAAM,GAEdsB,cAAcpB,SACzB3C,OAAS,IAAIA,OAAQ,YAAY0C,oFAG1C1C,MACT,CArG6CgE,CAAoB,CAC7DzD,cACAa,0BACAF,cACAC,gBACAG,4BACAC,cACAI,UACAC,YACAP,kBACAR,oCACAW,oBACAR,gBACAC,oBAEIgD,WAwFR,SAA4BxD,UAC1B,IAAIT,OAAgC,GAUpC,OARAsC,OAAOC,QAAQ9B,UAAU+B,QAASC,OAChC,MAAM,CAAGC,KAAOJ,OAAOC,QAAQE,MAAM,IAC/B,CAAGE,OAASL,OAAOC,QAAQE,MAAM,GAEdyB,2BAA2BvB,SACtC3C,OAAS,IAAIA,OAAQ,YAAY0C,oEAG1C1C,MACT,CApG4CmE,CAAmB,CAC3D5D,cACAa,0BACAF,cACAC,gBACAG,4BACAC,cACAI,UACAC,YACAP,kBACAR,oCACAW,oBACAR,gBACAC,oBAEImD,kBAuFR,SAAkC3D,SAAgCD,WAChE,MAAM6D,OAA4C5D,SAASiB,SAAS2C,QAAU,GAE9E,MAAO,IAEF/B,OAAOgC,OAAO7D,UAAUmC,OAAO2B,SAASC,IAAIC,oBAC/CA,mBAAmBJ,WAChB/B,OAAOgC,OAAO9D,WAAWgE,IAAIC,qBAChC7B,OAAO8B,UACX,CAhGmDC,CAAyBlE,SAAUD,WAC9EoE,WAiGR,SAAsB/D,kBAA0EgE,cAC9F,IAAI7E,OAAgC,GAgBpC,OAdAsC,OAAOC,QAAQ1B,mBAAmB2B,QAASsC,UACzC,MAAM,CAAGpC,KAAOJ,OAAOC,QAAQuC,SAAS,IAClC,CAAGnC,OAASL,OAAOC,QAAQuC,SAAS,GACjBC,wBAAwBpC,SACnC3C,OAAS,IAAIA,OAAQ,YAAY0C,oEAGjDJ,OAAOC,QAAQsC,cAAcrC,QAASsC,UACpC,MAAM,CAAGpC,KAAOJ,OAAOC,QAAQuC,SAAS,IAClC,CAAGnC,OAASL,OAAOC,QAAQuC,SAAS,GACjBE,iBAAiBrC,SAC5B3C,OAAS,IAAIA,OAAQ,YAAY0C,oEAG1C1C,MACT,CAnH4CiF,CAAa,CAAEpE,qCAAqB,CAAEG,gBAASC,oBAEnFjB,OAAgC,IAAI6B,eAAgBQ,gBAAiBW,mBAAoBc,eAAgBG,cAAeG,qBAAsBQ,YAEpJ,MAAO,CAAE1E,QAA2B,IAAlBF,OAAOiC,OAAcjC,cACzC,CAxDqBkF,CAAaxF,QAIhC,MAAO,CAAEQ,QAASP,WAAWO,SAAWE,WAAWF,QAASF,OAAQ,IAH7BL,WAAWK,QAAU,MACrBI,WAAWJ,QAAU,IAG9D"}
1
+ {"version":3,"file":"SchemasValidator.js","sources":["../../../src/Space/Validators/SchemasValidator.ts"],"sourcesContent":["import type { TAbstractResourceConfig } from '@Anarchy/Engine/Abstract';\nimport type { TActorConfig } from '@Anarchy/Engine/Actor';\nimport type { TAnyAudioConfig, TAudioResourceConfig } from '@Anarchy/Engine/Audio';\nimport type { TAnyCameraConfig } from '@Anarchy/Engine/Camera';\nimport type { TControlsConfig } from '@Anarchy/Engine/Controls';\nimport type { TAnyIntersectionsWatcherConfig } from '@Anarchy/Engine/Intersections';\nimport { isIntersectionsCameraWatcherConfig } from '@Anarchy/Engine/Intersections';\nimport type { TActive, TWithName, TWithNameOptional, TWithTags } from '@Anarchy/Engine/Mixins';\nimport type { TModel3dConfig, TModel3dResourceConfig } from '@Anarchy/Engine/Models3d';\nimport type { TPhysicsBodyConfig, TPhysicsConfig } from '@Anarchy/Engine/Physics';\nimport type { TSceneConfig } from '@Anarchy/Engine/Scene/Models';\nimport { SpaceSchemaVersion } from '@Anarchy/Engine/Space/Constants';\nimport type { TSpaceConfig, TSpaceConfigEntities, TSpaceConfigResources } from '@Anarchy/Engine/Space/Models';\nimport TSpaceConfigSchema from '@Anarchy/Engine/Space/Schemas/TSpaceConfig.json';\nimport {\n validate,\n validateActorNamesForEveryEntity,\n validateAllActorsHasModel3d,\n validateAllActorsWithPhysicsHasRelatedPhysicsBody,\n validateAllAudioEntityHasValidResource,\n validateAllModel3dEntityHasValidResource,\n validateCameraNames,\n validateFileUrls,\n validateModel3dFileUrls,\n validateNames,\n validateNoSameName,\n validateTags,\n validateTagsForEveryEntity\n} from '@Anarchy/Engine/Space/Utils';\nimport type { Schema } from '@cfworker/json-schema';\nimport { Validator } from '@cfworker/json-schema';\nimport { isDefined } from '@hellpig/anarchy-shared/Utils';\nimport { isArray } from 'lodash-es';\n\ntype TSchemaValidationResult = Readonly<{ isValid: boolean; errors: ReadonlyArray<any> | null | undefined }>;\n\nexport function validSpaceConfig(config: TSpaceConfig): TSchemaValidationResult {\n const jsonResult = validateJsonSchema(config);\n const dataResult = validateData(config);\n const jsonErrors: ReadonlyArray<any> = jsonResult.errors ?? [];\n const dataErrors: ReadonlyArray<any> = dataResult.errors ?? [];\n\n return { isValid: jsonResult.isValid && dataResult.isValid, errors: [...jsonErrors, ...dataErrors] };\n}\n\nfunction validateJsonSchema(config: TSpaceConfig): TSchemaValidationResult {\n const validator = new Validator(TSpaceConfigSchema as Schema, '7');\n const { valid, errors } = validator.validate(config);\n return { isValid: valid, errors };\n}\n\nfunction validateData({ name, version, scenes, resources, entities, canvasSelector, tags }: TSpaceConfig): TSchemaValidationResult {\n const { models3d: models3dResources, audio: audioResources, envMaps, textures } = resources;\n const { actors, audio, cameras, spatialGrids, controls, intersections, lights, materials, models3d: models3dEntities, physics, fogs, texts } = entities;\n\n const basicErrors: ReadonlyArray<string> = validateConfigBasics(name, version, scenes, canvasSelector, tags);\n const activeErrors: ReadonlyArray<string> = validateActiveEntities({ cameras, scenes, controls });\n const relationsErrors: ReadonlyArray<string> = validateRelations(controls, cameras, actors, models3dEntities, models3dResources, audioResources, audio, intersections, physics);\n const namesErrors: ReadonlyArray<string> = validateEntityNames({\n scenes,\n spatialGrids,\n actors,\n cameras,\n intersections,\n lights,\n fogs,\n texts,\n controls,\n models3dResources,\n materials,\n envMaps,\n textures\n });\n const tagsErrors: ReadonlyArray<string> = validateEntityTags({\n scenes,\n spatialGrids,\n actors,\n cameras,\n intersections,\n lights,\n fogs,\n texts,\n controls,\n models3dResources,\n materials,\n envMaps,\n textures\n });\n const duplicationErrors: ReadonlyArray<string> = validateNamesDuplication(entities, resources);\n const urlsErrors: ReadonlyArray<string> = validateUrls({ models3dResources }, { envMaps, textures });\n\n const errors: ReadonlyArray<string> = [...basicErrors, ...activeErrors, ...relationsErrors, ...namesErrors, ...tagsErrors, ...duplicationErrors, ...urlsErrors];\n\n return { isValid: errors.length === 0, errors };\n}\n\nfunction validateConfigBasics(name: string, version: SpaceSchemaVersion, scenes: ReadonlyArray<TSceneConfig>, canvasSelector: string, tags?: ReadonlyArray<string>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n if (version !== SpaceSchemaVersion.V1) errors = [...errors, `Unsupported schema's version(${version}). Supported version is: ${SpaceSchemaVersion.V2}`];\n if (scenes.length === 0) errors = [...errors, 'No scenes are defined'];\n if (!/^[a-zA-Z0-9\\s.#\\-_>[\\]='\"*^$~|(),:]+$/.test(canvasSelector)) errors = [...errors, 'Canvas selector must be defined and contain only allowed characters (a normal css selector)'];\n if (!validateTags(tags)) errors = [...errors, 'Space config tags must contain only letters, numbers and underscores'];\n if (!validate(name)) errors = [...errors, 'Space config name must be defined and contain only letters, numbers and underscores'];\n\n return errors;\n}\n\nfunction validateActiveEntities(entities: Record<string, ReadonlyArray<TActive>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(entities).forEach((list): void => {\n const [, key] = Object.entries(list)[0];\n const [, value] = Object.entries(list)[1];\n\n if ((value as ReadonlyArray<TActive>).filter((v: TActive): boolean => v.isActive).length > 1) errors = [...errors, `Must be only one active entity of \"${key}\", but multiple are active`];\n });\n\n return errors;\n}\n\nfunction validateRelations(\n controls: ReadonlyArray<TControlsConfig>,\n cameras: ReadonlyArray<TAnyCameraConfig>,\n actors: ReadonlyArray<TActorConfig>,\n models3dEntities: ReadonlyArray<TModel3dConfig>,\n models3dResources: ReadonlyArray<TModel3dResourceConfig>,\n audioResources: ReadonlyArray<TAudioResourceConfig>,\n audio: ReadonlyArray<TAnyAudioConfig>,\n intersections: ReadonlyArray<TAnyIntersectionsWatcherConfig>,\n physics: TPhysicsConfig\n): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n if (controls.length > 0 && cameras.length === 0) errors = [...errors, 'Controls cannot be defined without at least one camera, but there are no cameras'];\n if (!controls.every((control: TControlsConfig): boolean => cameras.some((camera: TAnyCameraConfig): boolean => camera.name === control.cameraName)))\n errors = [...errors, 'Not every control has a camera'];\n if (!validateAllActorsHasModel3d(actors, models3dEntities)) errors = [...errors, 'Not every actor has a defined model3dSource (check actors model3dSource against models3d entities)'];\n if (!validateAllActorsWithPhysicsHasRelatedPhysicsBody(actors, physics)) errors = [...errors, 'Not every actor has a defined model3dSource (check actors model3dSource against models3d entities)'];\n if (!validateAllModel3dEntityHasValidResource(models3dEntities, models3dResources)) errors = [...errors, 'Not every model3d entity has a valid resource (must be a primitive or an url)'];\n if (!validateAllAudioEntityHasValidResource(audio, audioResources)) errors = [...errors, 'Not every audio entity has a valid resource (must be a primitive or an url)'];\n if (!validateCameraNames(intersections.filter(isIntersectionsCameraWatcherConfig))) errors = [...errors, 'Not every intersection camera name is valid'];\n if (!validateActorNamesForEveryEntity(intersections)) errors = [...errors, 'Not every intersection actor name is valid'];\n\n return errors;\n}\n\nfunction validateEntityNames(entities: Record<string, ReadonlyArray<TWithNameOptional | TWithName>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(entities).forEach((list): void => {\n const [, key] = Object.entries(list)[0];\n const [, value] = Object.entries(list)[1];\n\n const isValid: boolean = validateNames(value as ReadonlyArray<TWithNameOptional | TWithName>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") names must be defined and contain only letters, numbers and underscores`];\n });\n\n return errors;\n}\n\nfunction validateEntityTags(entities: Record<string, ReadonlyArray<TWithTags>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(entities).forEach((list): void => {\n const [, key] = Object.entries(list)[0];\n const [, value] = Object.entries(list)[1];\n\n const isValid: boolean = validateTagsForEveryEntity(value as ReadonlyArray<Record<string, TWithTags>>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") tags must contain only letters, numbers and underscores`];\n });\n\n return errors;\n}\n\nfunction validateNamesDuplication(entities: TSpaceConfigEntities, resources: TSpaceConfigResources): ReadonlyArray<string> {\n const bodies: ReadonlyArray<TPhysicsBodyConfig> = entities.physics?.bodies ?? [];\n\n return [\n //\"physics\" is not an array, but we could check the bodies\n ...Object.values(entities).filter(isArray).map(validateNoSameName),\n validateNoSameName(bodies),\n ...Object.values(resources).map(validateNoSameName)\n ].filter(isDefined);\n}\n\nfunction validateUrls(models3dResources: Record<string, ReadonlyArray<TModel3dResourceConfig>>, withFileUrls: Record<string, ReadonlyArray<TAbstractResourceConfig>>): ReadonlyArray<string> {\n let errors: ReadonlyArray<string> = [];\n\n Object.entries(models3dResources).forEach((configs): void => {\n const [, key] = Object.entries(configs)[0];\n const [, value] = Object.entries(configs)[1];\n const isValid: boolean = validateModel3dFileUrls(value as ReadonlyArray<TModel3dResourceConfig>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") URLs must contain only letters, numbers and underscores`];\n });\n\n Object.entries(withFileUrls).forEach((configs): void => {\n const [, key] = Object.entries(configs)[0];\n const [, value] = Object.entries(configs)[1];\n const isValid: boolean = validateFileUrls(value as ReadonlyArray<TAbstractResourceConfig>);\n if (!isValid) errors = [...errors, `Entity (\"${key}\") URLs must contain only letters, numbers and underscores`];\n });\n\n return errors;\n}\n"],"names":["validSpaceConfig","config","jsonResult","validator","Validator","TSpaceConfigSchema","valid","errors","validate","isValid","validateJsonSchema","dataResult","name","version","scenes","resources","entities","canvasSelector","tags","models3d","models3dResources","audio","audioResources","envMaps","textures","actors","cameras","spatialGrids","controls","intersections","lights","materials","models3dEntities","physics","fogs","texts","basicErrors","SpaceSchemaVersion","V1","V2","length","test","validateTags","validateConfigBasics","activeErrors","Object","entries","forEach","list","key","value","filter","v","isActive","validateActiveEntities","relationsErrors","every","control","some","camera","cameraName","validateAllActorsHasModel3d","validateAllActorsWithPhysicsHasRelatedPhysicsBody","validateAllModel3dEntityHasValidResource","validateAllAudioEntityHasValidResource","validateCameraNames","isIntersectionsCameraWatcherConfig","validateActorNamesForEveryEntity","validateRelations","namesErrors","validateNames","validateEntityNames","tagsErrors","validateTagsForEveryEntity","validateEntityTags","duplicationErrors","bodies","values","isArray","map","validateNoSameName","isDefined","validateNamesDuplication","urlsErrors","withFileUrls","configs","validateModel3dFileUrls","validateFileUrls","validateUrls","validateData"],"mappings":"u0BAoCO,SAASA,iBAAiBC,QAC/B,MAAMC,WAQR,SAA4BD,QAC1B,MAAME,UAAY,IAAIC,UAAUC,mBAA8B,MACxDC,MAAEA,MAAAC,OAAOA,QAAWJ,UAAUK,SAASP,QAC7C,MAAO,CAAEQ,QAASH,MAAOC,cAC3B,CAZqBG,CAAmBT,QAChCU,WAaR,UAAsBC,KAAEA,KAAAC,QAAMA,QAAAC,OAASA,iBAAQC,UAAAC,SAAWA,SAAAC,eAAUA,eAAAC,KAAgBA,OAClF,MAAQC,SAAUC,kBAAmBC,MAAOC,eAAAC,QAAgBA,QAAAC,SAASA,UAAaT,WAC5EU,OAAEA,OAAAJ,MAAQA,MAAAK,QAAOA,QAAAC,aAASA,sBAAcC,SAAAC,cAAUA,cAAAC,OAAeA,OAAAC,UAAQA,UAAWZ,SAAUa,iBAAAC,QAAkBA,QAAAC,KAASA,KAAAC,MAAMA,OAAUnB,SAEzIoB,YAyCR,SAA8BxB,KAAcC,QAA6BC,OAAqCG,eAAwBC,MACpI,IAAIX,OAAgC,GAQpC,OANIM,UAAYwB,mBAAmBC,KAAI/B,OAAS,IAAIA,OAAQ,gCAAgCM,mCAAmCwB,mBAAmBE,OAC5H,IAAlBzB,OAAO0B,gBAAuB,IAAIjC,OAAQ,0BACzC,wCAAwCkC,KAAKxB,kBAAiBV,OAAS,IAAIA,OAAQ,gGACnFmC,aAAaxB,eAAgB,IAAIX,OAAQ,yEACzCC,SAASI,eAAgB,IAAIL,OAAQ,wFAEnCA,MACT,CAnD6CoC,CAAqB/B,KAAMC,QAASC,OAAQG,eAAgBC,MACjG0B,aAoDR,SAAgC5B,UAC9B,IAAIT,OAAgC,GASpC,OAPAsC,OAAOC,QAAQ9B,UAAU+B,QAASC,OAChC,MAAM,CAAGC,KAAOJ,OAAOC,QAAQE,MAAM,IAC/B,CAAGE,OAASL,OAAOC,QAAQE,MAAM,GAElCE,MAAiCC,OAAQC,GAAwBA,EAAEC,UAAUb,OAAS,WAAY,IAAIjC,OAAQ,sCAAsC0C,oCAGpJ1C,MACT,CA/D8C+C,CAAuB,CAAE5B,gBAASZ,cAAQc,oBAChF2B,gBAgER,SACE3B,SACAF,QACAD,OACAO,iBACAZ,kBACAE,eACAD,MACAQ,cACAI,SAEA,IAAI1B,OAAgC,GAYpC,OAVIqB,SAASY,OAAS,GAAwB,IAAnBd,QAAQc,SAAcjC,OAAS,IAAIA,OAAQ,qFACjEqB,SAAS4B,MAAOC,SAAsC/B,QAAQgC,KAAMC,QAAsCA,OAAO/C,OAAS6C,QAAQG,eACrIrD,OAAS,IAAIA,OAAQ,mCAClBsD,4BAA4BpC,OAAQO,oBAAmBzB,OAAS,IAAIA,OAAQ,uGAC5EuD,kDAAkDrC,OAAQQ,WAAU1B,OAAS,IAAIA,OAAQ,uGACzFwD,yCAAyC/B,iBAAkBZ,qBAAoBb,OAAS,IAAIA,OAAQ,kFACpGyD,uCAAuC3C,MAAOC,kBAAiBf,OAAS,IAAIA,OAAQ,gFACpF0D,oBAAoBpC,cAAcsB,OAAOe,uCAAsC3D,OAAS,IAAIA,OAAQ,gDACpG4D,iCAAiCtC,wBAAyB,IAAItB,OAAQ,+CAEpEA,MACT,CAxFiD6D,CAAkBxC,SAAUF,QAASD,OAAQO,iBAAkBZ,kBAAmBE,eAAgBD,MAAOQ,cAAeI,SACjKoC,YAyFR,SAA6BrD,UAC3B,IAAIT,OAAgC,GAUpC,OARAsC,OAAOC,QAAQ9B,UAAU+B,QAASC,OAChC,MAAM,CAAGC,KAAOJ,OAAOC,QAAQE,MAAM,IAC/B,CAAGE,OAASL,OAAOC,QAAQE,MAAM,GAEdsB,cAAcpB,SACzB3C,OAAS,IAAIA,OAAQ,YAAY0C,oFAG1C1C,MACT,CArG6CgE,CAAoB,CAC7DzD,cACAa,0BACAF,cACAC,gBACAG,4BACAC,cACAI,UACAC,YACAP,kBACAR,oCACAW,oBACAR,gBACAC,oBAEIgD,WAwFR,SAA4BxD,UAC1B,IAAIT,OAAgC,GAUpC,OARAsC,OAAOC,QAAQ9B,UAAU+B,QAASC,OAChC,MAAM,CAAGC,KAAOJ,OAAOC,QAAQE,MAAM,IAC/B,CAAGE,OAASL,OAAOC,QAAQE,MAAM,GAEdyB,2BAA2BvB,SACtC3C,OAAS,IAAIA,OAAQ,YAAY0C,oEAG1C1C,MACT,CApG4CmE,CAAmB,CAC3D5D,cACAa,0BACAF,cACAC,gBACAG,4BACAC,cACAI,UACAC,YACAP,kBACAR,oCACAW,oBACAR,gBACAC,oBAEImD,kBAuFR,SAAkC3D,SAAgCD,WAChE,MAAM6D,OAA4C5D,SAASiB,SAAS2C,QAAU,GAE9E,MAAO,IAEF/B,OAAOgC,OAAO7D,UAAUmC,OAAO2B,SAASC,IAAIC,oBAC/CA,mBAAmBJ,WAChB/B,OAAOgC,OAAO9D,WAAWgE,IAAIC,qBAChC7B,OAAO8B,UACX,CAhGmDC,CAAyBlE,SAAUD,WAC9EoE,WAiGR,SAAsB/D,kBAA0EgE,cAC9F,IAAI7E,OAAgC,GAgBpC,OAdAsC,OAAOC,QAAQ1B,mBAAmB2B,QAASsC,UACzC,MAAM,CAAGpC,KAAOJ,OAAOC,QAAQuC,SAAS,IAClC,CAAGnC,OAASL,OAAOC,QAAQuC,SAAS,GACjBC,wBAAwBpC,SACnC3C,OAAS,IAAIA,OAAQ,YAAY0C,oEAGjDJ,OAAOC,QAAQsC,cAAcrC,QAASsC,UACpC,MAAM,CAAGpC,KAAOJ,OAAOC,QAAQuC,SAAS,IAClC,CAAGnC,OAASL,OAAOC,QAAQuC,SAAS,GACjBE,iBAAiBrC,SAC5B3C,OAAS,IAAIA,OAAQ,YAAY0C,oEAG1C1C,MACT,CAnH4CiF,CAAa,CAAEpE,qCAAqB,CAAEG,gBAASC,oBAEnFjB,OAAgC,IAAI6B,eAAgBQ,gBAAiBW,mBAAoBc,eAAgBG,cAAeG,qBAAsBQ,YAEpJ,MAAO,CAAE1E,QAA2B,IAAlBF,OAAOiC,OAAcjC,cACzC,CAxDqBkF,CAAaxF,QAIhC,MAAO,CAAEQ,QAASP,WAAWO,SAAWE,WAAWF,QAASF,OAAQ,IAH7BL,WAAWK,QAAU,MACrBI,WAAWJ,QAAU,IAG9D"}
@@ -1,2 +1,2 @@
1
- import { TSpaceConfig } from '@hellpig/anarchy-engine/Space/Models';
1
+ import { TSpaceConfig } from '../Models';
2
2
  export declare function validateConfig(config: TSpaceConfig): void | never;
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateConfig.js","sources":["../../../src/Space/Validators/ValidateConfig.ts"],"sourcesContent":["import type { TSpaceConfig } from '@hellpig/anarchy-engine/Space/Models';\nimport { validSpaceConfig } from '@hellpig/anarchy-engine/Space/Validators/SchemasValidator';\n\nexport function validateConfig(config: TSpaceConfig): void | never {\n const { isValid, errors } = validSpaceConfig(config);\n if (!isValid) {\n // TODO LOGGER: should be forwarded to the errors hub (which is not implemented yet)\n console.error(errors);\n throw new Error('Failed to launch a space: invalid data format');\n }\n}\n"],"names":["validateConfig","config","isValid","errors","validSpaceConfig","console","error","Error"],"mappings":"oDAGO,SAASA,eAAeC,QAC7B,MAAMC,QAAEA,QAAAC,OAASA,QAAWC,iBAAiBH,QAC7C,IAAKC,QAGH,MADAG,QAAQC,MAAMH,QACR,IAAII,MAAM,gDAEpB"}
1
+ {"version":3,"file":"ValidateConfig.js","sources":["../../../src/Space/Validators/ValidateConfig.ts"],"sourcesContent":["import type { TSpaceConfig } from '@Anarchy/Engine/Space/Models';\nimport { validSpaceConfig } from '@Anarchy/Engine/Space/Validators/SchemasValidator';\n\nexport function validateConfig(config: TSpaceConfig): void | never {\n const { isValid, errors } = validSpaceConfig(config);\n if (!isValid) {\n // TODO LOGGER: should be forwarded to the errors hub (which is not implemented yet)\n console.error(errors);\n throw new Error('Failed to launch a space: invalid data format');\n }\n}\n"],"names":["validateConfig","config","isValid","errors","validSpaceConfig","console","error","Error"],"mappings":"oDAGO,SAASA,eAAeC,QAC7B,MAAMC,QAAEA,QAAAC,OAASA,QAAWC,iBAAiBH,QAC7C,IAAKC,QAGH,MADAG,QAAQC,MAAMH,QACR,IAAII,MAAM,gDAEpB"}
@@ -1,2 +1,2 @@
1
- import { TSpace, TSpaceRegistry } from '@hellpig/anarchy-engine/Space/Models';
1
+ import { TSpace, TSpaceRegistry } from '../Models';
2
2
  export declare function validateSpacesDoNotUseSameCanvas(registry: TSpaceRegistry, space: TSpace): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateSpace.js","sources":["../../../src/Space/Validators/ValidateSpace.ts"],"sourcesContent":["import type { TSpace, TSpaceRegistry } from '@hellpig/anarchy-engine/Space/Models';\nimport { isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport function validateSpacesDoNotUseSameCanvas(registry: TSpaceRegistry, space: TSpace): boolean {\n const duplicates: TSpace | undefined = registry.find((s: TSpace): boolean => Object.is(s.getCanvasElement(), space.getCanvasElement()));\n return isNotDefined(duplicates);\n}\n"],"names":["validateSpacesDoNotUseSameCanvas","registry","space","duplicates","find","s","Object","is","getCanvasElement","isNotDefined"],"mappings":"gFAGO,SAASA,iCAAiCC,SAA0BC,OACzE,MAAMC,WAAiCF,SAASG,KAAMC,GAAuBC,OAAOC,GAAGF,EAAEG,mBAAoBN,MAAMM,qBACnH,OAAOC,aAAaN,WACtB"}
1
+ {"version":3,"file":"ValidateSpace.js","sources":["../../../src/Space/Validators/ValidateSpace.ts"],"sourcesContent":["import type { TSpace, TSpaceRegistry } from '@Anarchy/Engine/Space/Models';\nimport { isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport function validateSpacesDoNotUseSameCanvas(registry: TSpaceRegistry, space: TSpace): boolean {\n const duplicates: TSpace | undefined = registry.find((s: TSpace): boolean => Object.is(s.getCanvasElement(), space.getCanvasElement()));\n return isNotDefined(duplicates);\n}\n"],"names":["validateSpacesDoNotUseSameCanvas","registry","space","duplicates","find","s","Object","is","getCanvasElement","isNotDefined"],"mappings":"gFAGO,SAASA,iCAAiCC,SAA0BC,OACzE,MAAMC,WAAiCF,SAASG,KAAMC,GAAuBC,OAAOC,GAAGF,EAAEG,mBAAoBN,MAAMM,qBACnH,OAAOC,aAAaN,WACtB"}
@@ -1,2 +1,2 @@
1
- import { TSpatialGridConfig, TSpatialGridParams } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialGridConfig, TSpatialGridParams } from '../Models';
2
2
  export declare function spatialConfigToParams(config: TSpatialGridConfig): TSpatialGridParams;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigToParams.js","sources":["../../../src/Spatial/Adapters/ConfigToParams.ts"],"sourcesContent":["import type { TSpatialGridConfig, TSpatialGridParams } from '@hellpig/anarchy-engine/Spatial/Models';\n\nexport function spatialConfigToParams(config: TSpatialGridConfig): TSpatialGridParams {\n return {\n ...config\n };\n}\n"],"names":["spatialConfigToParams","config"],"mappings":"AAEO,SAASA,sBAAsBC,QACpC,MAAO,IACFA,OAEP"}
1
+ {"version":3,"file":"ConfigToParams.js","sources":["../../../src/Spatial/Adapters/ConfigToParams.ts"],"sourcesContent":["import type { TSpatialGridConfig, TSpatialGridParams } from '@Anarchy/Engine/Spatial/Models';\n\nexport function spatialConfigToParams(config: TSpatialGridConfig): TSpatialGridParams {\n return {\n ...config\n };\n}\n"],"names":["spatialConfigToParams","config"],"mappings":"AAEO,SAASA,sBAAsBC,QACpC,MAAO,IACFA,OAEP"}
@@ -1,2 +1,2 @@
1
- import { TSpatialConfigToParamsSpatialDataDependencies, TSpatialDataConfig, TSpatialDataParams } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialConfigToParamsSpatialDataDependencies, TSpatialDataConfig, TSpatialDataParams } from '../Models';
2
2
  export declare function spatialDataConfigToParams(config: TSpatialDataConfig, { spatialGridRegistry }: TSpatialConfigToParamsSpatialDataDependencies): TSpatialDataParams;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigToParamsSpatialData.js","sources":["../../../src/Spatial/Adapters/ConfigToParamsSpatialData.ts"],"sourcesContent":["import type { TSpatialConfigToParamsSpatialDataDependencies, TSpatialDataConfig, TSpatialDataParams } from '@hellpig/anarchy-engine/Spatial/Models';\n\nexport function spatialDataConfigToParams(config: TSpatialDataConfig, { spatialGridRegistry }: TSpatialConfigToParamsSpatialDataDependencies): TSpatialDataParams {\n return {\n ...config,\n grid: config.grid ? spatialGridRegistry.getByName(config.grid) : undefined\n };\n}\n"],"names":["spatialDataConfigToParams","config","spatialGridRegistry","grid","getByName"],"mappings":"AAEO,SAASA,0BAA0BC,QAA4BC,oBAAEA,sBACtE,MAAO,IACFD,OACHE,KAAMF,OAAOE,KAAOD,oBAAoBE,UAAUH,OAAOE,WAAQ,EAErE"}
1
+ {"version":3,"file":"ConfigToParamsSpatialData.js","sources":["../../../src/Spatial/Adapters/ConfigToParamsSpatialData.ts"],"sourcesContent":["import type { TSpatialConfigToParamsSpatialDataDependencies, TSpatialDataConfig, TSpatialDataParams } from '@Anarchy/Engine/Spatial/Models';\n\nexport function spatialDataConfigToParams(config: TSpatialDataConfig, { spatialGridRegistry }: TSpatialConfigToParamsSpatialDataDependencies): TSpatialDataParams {\n return {\n ...config,\n grid: config.grid ? spatialGridRegistry.getByName(config.grid) : undefined\n };\n}\n"],"names":["spatialDataConfigToParams","config","spatialGridRegistry","grid","getByName"],"mappings":"AAEO,SAASA,0BAA0BC,QAA4BC,oBAAEA,sBACtE,MAAO,IACFD,OACHE,KAAMF,OAAOE,KAAOD,oBAAoBE,UAAUH,OAAOE,WAAQ,EAErE"}
@@ -1,3 +1,3 @@
1
- import { TSpatialCellSerializedData, TSpatialCellWrapper, TSpatialGridConfig, TSpatialGridWrapper } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialCellSerializedData, TSpatialCellWrapper, TSpatialGridConfig, TSpatialGridWrapper } from '../Models';
2
2
  export declare function spatialGridEntityToConfig(entity: TSpatialGridWrapper): TSpatialGridConfig;
3
3
  export declare function entityToConfigSpatialCell(entity: TSpatialCellWrapper): TSpatialCellSerializedData;
@@ -1 +1 @@
1
- {"version":3,"file":"EntityToConfig.js","sources":["../../../src/Spatial/Adapters/EntityToConfig.ts"],"sourcesContent":["import type { TActor } from '@hellpig/anarchy-engine/Actor';\nimport { extractSerializableRegistrableFields } from '@hellpig/anarchy-engine/Mixins';\nimport type { TSpatialCellId, TSpatialCellSerializedData, TSpatialCellWrapper, TSpatialGridConfig, TSpatialGridWrapper } from '@hellpig/anarchy-engine/Spatial/Models';\nimport { filterOutEmptyFields } from '@hellpig/anarchy-shared/Utils';\n\nexport function spatialGridEntityToConfig(entity: TSpatialGridWrapper): TSpatialGridConfig {\n return filterOutEmptyFields({\n ...entity.getParams(),\n ...extractSerializableRegistrableFields(entity)\n });\n}\n\nexport function entityToConfigSpatialCell(entity: TSpatialCellWrapper): TSpatialCellSerializedData {\n const { minX, minY, maxX, maxY } = entity;\n const objects: ReadonlyArray<string> = entity.getObjects().map((v: TActor): string => v.id);\n const id: TSpatialCellId = entity.id as TSpatialCellId;\n return filterOutEmptyFields({ id, minX, minY, maxX, maxY, objects, version: entity.getVersion() });\n}\n"],"names":["spatialGridEntityToConfig","entity","filterOutEmptyFields","getParams","extractSerializableRegistrableFields","entityToConfigSpatialCell","minX","minY","maxX","maxY","objects","getObjects","map","v","id","version","getVersion"],"mappings":"yMAKO,SAASA,0BAA0BC,QACxC,OAAOC,qBAAqB,IACvBD,OAAOE,eACPC,qCAAqCH,SAE5C,CAEO,SAASI,0BAA0BJ,QACxC,MAAMK,KAAEA,KAAAC,KAAMA,KAAAC,KAAMA,KAAAC,KAAMA,MAASR,OAC7BS,QAAiCT,OAAOU,aAAaC,IAAKC,GAAsBA,EAAEC,IAExF,OAAOZ,qBAAqB,CAAEY,GADHb,OAAOa,GACAR,UAAMC,UAAMC,UAAMC,UAAMC,gBAASK,QAASd,OAAOe,cACrF"}
1
+ {"version":3,"file":"EntityToConfig.js","sources":["../../../src/Spatial/Adapters/EntityToConfig.ts"],"sourcesContent":["import type { TActor } from '@Anarchy/Engine/Actor';\nimport { extractSerializableRegistrableFields } from '@Anarchy/Engine/Mixins';\nimport type { TSpatialCellId, TSpatialCellSerializedData, TSpatialCellWrapper, TSpatialGridConfig, TSpatialGridWrapper } from '@Anarchy/Engine/Spatial/Models';\nimport { filterOutEmptyFields } from '@hellpig/anarchy-shared/Utils';\n\nexport function spatialGridEntityToConfig(entity: TSpatialGridWrapper): TSpatialGridConfig {\n return filterOutEmptyFields({\n ...entity.getParams(),\n ...extractSerializableRegistrableFields(entity)\n });\n}\n\nexport function entityToConfigSpatialCell(entity: TSpatialCellWrapper): TSpatialCellSerializedData {\n const { minX, minY, maxX, maxY } = entity;\n const objects: ReadonlyArray<string> = entity.getObjects().map((v: TActor): string => v.id);\n const id: TSpatialCellId = entity.id as TSpatialCellId;\n return filterOutEmptyFields({ id, minX, minY, maxX, maxY, objects, version: entity.getVersion() });\n}\n"],"names":["spatialGridEntityToConfig","entity","filterOutEmptyFields","getParams","extractSerializableRegistrableFields","entityToConfigSpatialCell","minX","minY","maxX","maxY","objects","getObjects","map","v","id","version","getVersion"],"mappings":"yMAKO,SAASA,0BAA0BC,QACxC,OAAOC,qBAAqB,IACvBD,OAAOE,eACPC,qCAAqCH,SAE5C,CAEO,SAASI,0BAA0BJ,QACxC,MAAMK,KAAEA,KAAAC,KAAMA,KAAAC,KAAMA,KAAAC,KAAMA,MAASR,OAC7BS,QAAiCT,OAAOU,aAAaC,IAAKC,GAAsBA,EAAEC,IAExF,OAAOZ,qBAAqB,CAAEY,GADHb,OAAOa,GACAR,UAAMC,UAAMC,UAAMC,UAAMC,gBAASK,QAASd,OAAOe,cACrF"}
@@ -1,2 +1,2 @@
1
- import { TSpatialGridFactory } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialGridFactory } from '../Models';
2
2
  export declare function SpatialGridFactory(): TSpatialGridFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"SpatialGridFactory.js","sources":["../../../src/Spatial/Factories/SpatialGridFactory.ts"],"sourcesContent":["import type { TReactiveFactory } from '@hellpig/anarchy-engine/Abstract';\nimport { FactoryType, ReactiveFactory } from '@hellpig/anarchy-engine/Abstract';\nimport { spatialConfigToParams as configToParams } from '@hellpig/anarchy-engine/Spatial/Adapters';\nimport type { TSpatialGridFactory, TSpatialGridParams, TSpatialGridWrapper } from '@hellpig/anarchy-engine/Spatial/Models';\nimport { SpatialGridWrapper } from '@hellpig/anarchy-engine/Spatial/Wrappers';\n\nexport function SpatialGridFactory(): TSpatialGridFactory {\n const factory: TReactiveFactory<TSpatialGridWrapper, TSpatialGridParams> = ReactiveFactory(FactoryType.SpatialGrid, SpatialGridWrapper);\n\n // eslint-disable-next-line functional/immutable-data\n return Object.assign(factory, { configToParams });\n}\n"],"names":["SpatialGridFactory","factory","ReactiveFactory","FactoryType","SpatialGrid","SpatialGridWrapper","Object","assign","configToParams"],"mappings":"6QAMO,SAASA,qBACd,MAAMC,QAAqEC,gBAAgBC,YAAYC,YAAaC,oBAGpH,OAAOC,OAAOC,OAAON,QAAS,CAAAO,eAAEA,uBAClC"}
1
+ {"version":3,"file":"SpatialGridFactory.js","sources":["../../../src/Spatial/Factories/SpatialGridFactory.ts"],"sourcesContent":["import type { TReactiveFactory } from '@Anarchy/Engine/Abstract';\nimport { FactoryType, ReactiveFactory } from '@Anarchy/Engine/Abstract';\nimport { spatialConfigToParams as configToParams } from '@Anarchy/Engine/Spatial/Adapters';\nimport type { TSpatialGridFactory, TSpatialGridParams, TSpatialGridWrapper } from '@Anarchy/Engine/Spatial/Models';\nimport { SpatialGridWrapper } from '@Anarchy/Engine/Spatial/Wrappers';\n\nexport function SpatialGridFactory(): TSpatialGridFactory {\n const factory: TReactiveFactory<TSpatialGridWrapper, TSpatialGridParams> = ReactiveFactory(FactoryType.SpatialGrid, SpatialGridWrapper);\n\n // eslint-disable-next-line functional/immutable-data\n return Object.assign(factory, { configToParams });\n}\n"],"names":["SpatialGridFactory","factory","ReactiveFactory","FactoryType","SpatialGrid","SpatialGridWrapper","Object","assign","configToParams"],"mappings":"6QAMO,SAASA,qBACd,MAAMC,QAAqEC,gBAAgBC,YAAYC,YAAaC,oBAGpH,OAAOC,OAAOC,OAAON,QAAS,CAAAO,eAAEA,uBAClC"}
@@ -1,3 +1,3 @@
1
- import { TWithReactivePosition } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TWithReactivePosition } from '../Models';
2
2
  import { Group, Mesh, Object3D } from 'three';
3
3
  export declare function withReactivePosition(entity: Mesh | Group | Object3D): TWithReactivePosition;
@@ -1 +1 @@
1
- {"version":3,"file":"WithReactivePosition.js","sources":["../../../src/Spatial/Mixins/WithReactivePosition.ts"],"sourcesContent":["import type { TWithReactivePosition } from '@hellpig/anarchy-engine/Spatial/Models';\nimport { Subject } from 'rxjs';\nimport type { Group, Mesh, Object3D } from 'three';\nimport { Vector3 } from 'three';\n\nexport function withReactivePosition(entity: Mesh | Group | Object3D): TWithReactivePosition {\n const position$: Subject<Vector3> = new Subject<Vector3>();\n let prevPosition: Vector3 = new Vector3();\n\n function update(): void {\n if (prevPosition.equals(entity.position)) return;\n\n const newPosition: Vector3 = entity.position.clone();\n position$.next(newPosition);\n prevPosition = newPosition;\n }\n\n return { value$: position$, update };\n}\n"],"names":["withReactivePosition","entity","position$","Subject","prevPosition","Vector3","value$","update","equals","position","newPosition","clone","next"],"mappings":"sGAKO,SAASA,qBAAqBC,QACnC,MAAMC,UAA8B,IAAIC,QACxC,IAAIC,aAAwB,IAAIC,QAUhC,MAAO,CAAEC,OAAQJ,UAAWK,OAR5B,WACE,GAAIH,aAAaI,OAAOP,OAAOQ,UAAW,OAE1C,MAAMC,YAAuBT,OAAOQ,SAASE,QAC7CT,UAAUU,KAAKF,aACfN,aAAeM,WACjB,EAGF"}
1
+ {"version":3,"file":"WithReactivePosition.js","sources":["../../../src/Spatial/Mixins/WithReactivePosition.ts"],"sourcesContent":["import type { TWithReactivePosition } from '@Anarchy/Engine/Spatial/Models';\nimport { Subject } from 'rxjs';\nimport type { Group, Mesh, Object3D } from 'three';\nimport { Vector3 } from 'three';\n\nexport function withReactivePosition(entity: Mesh | Group | Object3D): TWithReactivePosition {\n const position$: Subject<Vector3> = new Subject<Vector3>();\n let prevPosition: Vector3 = new Vector3();\n\n function update(): void {\n if (prevPosition.equals(entity.position)) return;\n\n const newPosition: Vector3 = entity.position.clone();\n position$.next(newPosition);\n prevPosition = newPosition;\n }\n\n return { value$: position$, update };\n}\n"],"names":["withReactivePosition","entity","position$","Subject","prevPosition","Vector3","value$","update","equals","position","newPosition","clone","next"],"mappings":"sGAKO,SAASA,qBAAqBC,QACnC,MAAMC,UAA8B,IAAIC,QACxC,IAAIC,aAAwB,IAAIC,QAUhC,MAAO,CAAEC,OAAQJ,UAAWK,OAR5B,WACE,GAAIH,aAAaI,OAAOP,OAAOQ,UAAW,OAE1C,MAAMC,YAAuBT,OAAOQ,SAASE,QAC7CT,UAAUU,KAAKF,aACfN,aAAeM,WACjB,EAGF"}
@@ -1,3 +1,3 @@
1
- import { TWithReactiveRotation } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TWithReactiveRotation } from '../Models';
2
2
  import { Group, Mesh, Object3D } from 'three';
3
3
  export declare function withReactiveRotation(entity: Mesh | Group | Object3D): TWithReactiveRotation;
@@ -1 +1 @@
1
- {"version":3,"file":"WithReactiveRotation.js","sources":["../../../src/Spatial/Mixins/WithReactiveRotation.ts"],"sourcesContent":["import type { TWithReactiveRotation } from '@hellpig/anarchy-engine/Spatial/Models';\nimport { Subject } from 'rxjs';\nimport type { Group, Mesh, Object3D } from 'three';\nimport { Euler } from 'three';\n\nexport function withReactiveRotation(entity: Mesh | Group | Object3D): TWithReactiveRotation {\n const rotation$: Subject<Euler> = new Subject<Euler>();\n let prevRotation: Euler = new Euler();\n\n function update(): void {\n if (prevRotation.equals(entity.rotation)) return;\n\n const newRotation: Euler = entity.rotation.clone();\n rotation$.next(newRotation);\n prevRotation = newRotation;\n }\n\n return { value$: rotation$, update };\n}\n"],"names":["withReactiveRotation","entity","rotation$","Subject","prevRotation","Euler","value$","update","equals","rotation","newRotation","clone","next"],"mappings":"oGAKO,SAASA,qBAAqBC,QACnC,MAAMC,UAA4B,IAAIC,QACtC,IAAIC,aAAsB,IAAIC,MAU9B,MAAO,CAAEC,OAAQJ,UAAWK,OAR5B,WACE,GAAIH,aAAaI,OAAOP,OAAOQ,UAAW,OAE1C,MAAMC,YAAqBT,OAAOQ,SAASE,QAC3CT,UAAUU,KAAKF,aACfN,aAAeM,WACjB,EAGF"}
1
+ {"version":3,"file":"WithReactiveRotation.js","sources":["../../../src/Spatial/Mixins/WithReactiveRotation.ts"],"sourcesContent":["import type { TWithReactiveRotation } from '@Anarchy/Engine/Spatial/Models';\nimport { Subject } from 'rxjs';\nimport type { Group, Mesh, Object3D } from 'three';\nimport { Euler } from 'three';\n\nexport function withReactiveRotation(entity: Mesh | Group | Object3D): TWithReactiveRotation {\n const rotation$: Subject<Euler> = new Subject<Euler>();\n let prevRotation: Euler = new Euler();\n\n function update(): void {\n if (prevRotation.equals(entity.rotation)) return;\n\n const newRotation: Euler = entity.rotation.clone();\n rotation$.next(newRotation);\n prevRotation = newRotation;\n }\n\n return { value$: rotation$, update };\n}\n"],"names":["withReactiveRotation","entity","rotation$","Subject","prevRotation","Euler","value$","update","equals","rotation","newRotation","clone","next"],"mappings":"oGAKO,SAASA,qBAAqBC,QACnC,MAAMC,UAA4B,IAAIC,QACtC,IAAIC,aAAsB,IAAIC,MAU9B,MAAO,CAAEC,OAAQJ,UAAWK,OAR5B,WACE,GAAIH,aAAaI,OAAOP,OAAOQ,UAAW,OAE1C,MAAMC,YAAqBT,OAAOQ,SAASE,QAC3CT,UAAUU,KAAKF,aACfN,aAAeM,WACjB,EAGF"}
@@ -1,3 +1,3 @@
1
- import { TActorParams } from '@hellpig/anarchy-engine/Actor';
2
- import { TWithSpatial } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TActorParams } from '../../Actor';
2
+ import { TWithSpatial } from '../Models';
3
3
  export declare function withSpatial(params: TActorParams): TWithSpatial;
@@ -1 +1 @@
1
- {"version":3,"file":"WithSpatial.js","sources":["../../../src/Spatial/Mixins/WithSpatial.ts"],"sourcesContent":["import type { TActorParams } from '@hellpig/anarchy-engine/Actor';\nimport { LoopUpdatePriority } from '@hellpig/anarchy-engine/Loop';\nimport type { TDestroyable } from '@hellpig/anarchy-engine/Mixins';\nimport { destroyableMixin } from '@hellpig/anarchy-engine/Mixins';\nimport type { TSpatialCellWrapper, TSpatialData, TSpatialGridWrapper, TWithSpatial } from '@hellpig/anarchy-engine/Spatial/Models';\nimport type { TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport type { Subscription } from 'rxjs';\nimport { BehaviorSubject, Subject } from 'rxjs';\n\nexport function withSpatial(params: TActorParams): TWithSpatial {\n const autoUpdate$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(params.spatial.isAutoUpdate);\n const cellsChanged$: Subject<ReadonlyArray<TSpatialCellWrapper>> = new Subject<ReadonlyArray<TSpatialCellWrapper>>();\n\n const destroyable: TDestroyable = destroyableMixin();\n\n const result: TWithSpatial = {\n spatial: {\n data: {\n updatePriority: params.spatial.updatePriority ?? LoopUpdatePriority.LOW,\n grid: params.spatial.grid || undefined,\n cells: []\n },\n setData({ updatePriority, cells }: TSpatialData): void {\n this.setSpatialUpdatePriority(updatePriority);\n this.setSpatialCells(cells);\n },\n getData(): TSpatialData {\n return this.data;\n },\n setSpatialUpdatePriority(value: LoopUpdatePriority): void {\n // eslint-disable-next-line functional/immutable-data\n (this.data as TWriteable<TSpatialData>).updatePriority = value;\n },\n getSpatialUpdatePriority(): LoopUpdatePriority {\n return this.data.updatePriority;\n },\n setGrid(grid: TSpatialGridWrapper): void {\n // eslint-disable-next-line functional/immutable-data\n (this.data as TWriteable<TSpatialData>).grid = grid;\n },\n getGrid(): TSpatialGridWrapper | undefined {\n return this.data.grid;\n },\n resetGrid(): void {\n this.setGrid(undefined as unknown as TSpatialGridWrapper);\n },\n getSpatialCells(): ReadonlyArray<TSpatialCellWrapper> {\n return this.data.cells;\n },\n setSpatialCells(cells: ReadonlyArray<TSpatialCellWrapper>): void {\n // eslint-disable-next-line functional/immutable-data\n (this.data as TWriteable<TSpatialData>).cells = cells;\n cellsChanged$.next(cells);\n },\n resetSpatialCells(): void {\n this.setSpatialCells([]);\n },\n ...destroyable,\n autoUpdate$,\n cellsChanged$: cellsChanged$.asObservable()\n }\n };\n\n const destroySub$: Subscription = destroyable.destroy$.subscribe((): void => {\n destroySub$.unsubscribe();\n\n result.spatial.resetGrid();\n result.spatial.resetSpatialCells();\n cellsChanged$.complete();\n });\n\n return result;\n}\n"],"names":["withSpatial","params","autoUpdate$","BehaviorSubject","spatial","isAutoUpdate","cellsChanged$","Subject","destroyable","destroyableMixin","result","data","updatePriority","LoopUpdatePriority","LOW","grid","cells","setData","this","setSpatialUpdatePriority","setSpatialCells","getData","value","getSpatialUpdatePriority","setGrid","getGrid","resetGrid","getSpatialCells","next","resetSpatialCells","asObservable","destroySub$","destroy$","subscribe","unsubscribe","complete"],"mappings":"yTASO,SAASA,YAAYC,QAC1B,MAAMC,YAAwC,IAAIC,gBAAyBF,OAAOG,QAAQC,cACpFC,cAA6D,IAAIC,QAEjEC,YAA4BC,mBAE5BC,OAAuB,CAC3BN,QAAS,CACPO,KAAM,CACJC,eAAgBX,OAAOG,QAAQQ,gBAAkBC,mBAAmBC,IACpEC,KAAMd,OAAOG,QAAQW,WAAQ,EAC7BC,MAAO,IAET,OAAAC,EAAQL,eAAEA,eAAAI,MAAgBA,QACxBE,KAAKC,yBAAyBP,gBAC9BM,KAAKE,gBAAgBJ,MACvB,EACA,OAAAK,GACE,OAAOH,KAAKP,IACd,EACA,wBAAAQ,CAAyBG,OAEtBJ,KAAKP,KAAkCC,eAAiBU,KAC3D,EACA,wBAAAC,GACE,OAAOL,KAAKP,KAAKC,cACnB,EACA,OAAAY,CAAQT,MAELG,KAAKP,KAAkCI,KAAOA,IACjD,EACA,OAAAU,GACE,OAAOP,KAAKP,KAAKI,IACnB,EACA,SAAAW,GACER,KAAKM,eACP,EACA,eAAAG,GACE,OAAOT,KAAKP,KAAKK,KACnB,EACA,eAAAI,CAAgBJ,OAEbE,KAAKP,KAAkCK,MAAQA,MAChDV,cAAcsB,KAAKZ,MACrB,EACA,iBAAAa,GACEX,KAAKE,gBAAgB,GACvB,KACGZ,YACHN,wBACAI,cAAeA,cAAcwB,iBAI3BC,YAA4BvB,YAAYwB,SAASC,UAAU,KAC/DF,YAAYG,cAEZxB,OAAON,QAAQsB,YACfhB,OAAON,QAAQyB,oBACfvB,cAAc6B,aAGhB,OAAOzB,MACT"}
1
+ {"version":3,"file":"WithSpatial.js","sources":["../../../src/Spatial/Mixins/WithSpatial.ts"],"sourcesContent":["import type { TActorParams } from '@Anarchy/Engine/Actor';\nimport { LoopUpdatePriority } from '@Anarchy/Engine/Loop';\nimport type { TDestroyable } from '@Anarchy/Engine/Mixins';\nimport { destroyableMixin } from '@Anarchy/Engine/Mixins';\nimport type { TSpatialCellWrapper, TSpatialData, TSpatialGridWrapper, TWithSpatial } from '@Anarchy/Engine/Spatial/Models';\nimport type { TWriteable } from '@hellpig/anarchy-shared/Utils';\nimport type { Subscription } from 'rxjs';\nimport { BehaviorSubject, Subject } from 'rxjs';\n\nexport function withSpatial(params: TActorParams): TWithSpatial {\n const autoUpdate$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(params.spatial.isAutoUpdate);\n const cellsChanged$: Subject<ReadonlyArray<TSpatialCellWrapper>> = new Subject<ReadonlyArray<TSpatialCellWrapper>>();\n\n const destroyable: TDestroyable = destroyableMixin();\n\n const result: TWithSpatial = {\n spatial: {\n data: {\n updatePriority: params.spatial.updatePriority ?? LoopUpdatePriority.LOW,\n grid: params.spatial.grid || undefined,\n cells: []\n },\n setData({ updatePriority, cells }: TSpatialData): void {\n this.setSpatialUpdatePriority(updatePriority);\n this.setSpatialCells(cells);\n },\n getData(): TSpatialData {\n return this.data;\n },\n setSpatialUpdatePriority(value: LoopUpdatePriority): void {\n // eslint-disable-next-line functional/immutable-data\n (this.data as TWriteable<TSpatialData>).updatePriority = value;\n },\n getSpatialUpdatePriority(): LoopUpdatePriority {\n return this.data.updatePriority;\n },\n setGrid(grid: TSpatialGridWrapper): void {\n // eslint-disable-next-line functional/immutable-data\n (this.data as TWriteable<TSpatialData>).grid = grid;\n },\n getGrid(): TSpatialGridWrapper | undefined {\n return this.data.grid;\n },\n resetGrid(): void {\n this.setGrid(undefined as unknown as TSpatialGridWrapper);\n },\n getSpatialCells(): ReadonlyArray<TSpatialCellWrapper> {\n return this.data.cells;\n },\n setSpatialCells(cells: ReadonlyArray<TSpatialCellWrapper>): void {\n // eslint-disable-next-line functional/immutable-data\n (this.data as TWriteable<TSpatialData>).cells = cells;\n cellsChanged$.next(cells);\n },\n resetSpatialCells(): void {\n this.setSpatialCells([]);\n },\n ...destroyable,\n autoUpdate$,\n cellsChanged$: cellsChanged$.asObservable()\n }\n };\n\n const destroySub$: Subscription = destroyable.destroy$.subscribe((): void => {\n destroySub$.unsubscribe();\n\n result.spatial.resetGrid();\n result.spatial.resetSpatialCells();\n cellsChanged$.complete();\n });\n\n return result;\n}\n"],"names":["withSpatial","params","autoUpdate$","BehaviorSubject","spatial","isAutoUpdate","cellsChanged$","Subject","destroyable","destroyableMixin","result","data","updatePriority","LoopUpdatePriority","LOW","grid","cells","setData","this","setSpatialUpdatePriority","setSpatialCells","getData","value","getSpatialUpdatePriority","setGrid","getGrid","resetGrid","getSpatialCells","next","resetSpatialCells","asObservable","destroySub$","destroy$","subscribe","unsubscribe","complete"],"mappings":"yTASO,SAASA,YAAYC,QAC1B,MAAMC,YAAwC,IAAIC,gBAAyBF,OAAOG,QAAQC,cACpFC,cAA6D,IAAIC,QAEjEC,YAA4BC,mBAE5BC,OAAuB,CAC3BN,QAAS,CACPO,KAAM,CACJC,eAAgBX,OAAOG,QAAQQ,gBAAkBC,mBAAmBC,IACpEC,KAAMd,OAAOG,QAAQW,WAAQ,EAC7BC,MAAO,IAET,OAAAC,EAAQL,eAAEA,eAAAI,MAAgBA,QACxBE,KAAKC,yBAAyBP,gBAC9BM,KAAKE,gBAAgBJ,MACvB,EACA,OAAAK,GACE,OAAOH,KAAKP,IACd,EACA,wBAAAQ,CAAyBG,OAEtBJ,KAAKP,KAAkCC,eAAiBU,KAC3D,EACA,wBAAAC,GACE,OAAOL,KAAKP,KAAKC,cACnB,EACA,OAAAY,CAAQT,MAELG,KAAKP,KAAkCI,KAAOA,IACjD,EACA,OAAAU,GACE,OAAOP,KAAKP,KAAKI,IACnB,EACA,SAAAW,GACER,KAAKM,eACP,EACA,eAAAG,GACE,OAAOT,KAAKP,KAAKK,KACnB,EACA,eAAAI,CAAgBJ,OAEbE,KAAKP,KAAkCK,MAAQA,MAChDV,cAAcsB,KAAKZ,MACrB,EACA,iBAAAa,GACEX,KAAKE,gBAAgB,GACvB,KACGZ,YACHN,wBACAI,cAAeA,cAAcwB,iBAI3BC,YAA4BvB,YAAYwB,SAASC,UAAU,KAC/DF,YAAYG,cAEZxB,OAAON,QAAQsB,YACfhB,OAAON,QAAQyB,oBACfvB,cAAc6B,aAGhB,OAAOzB,MACT"}
@@ -1,2 +1,2 @@
1
- import { TWithUpdateSpatialCell } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TWithUpdateSpatialCell } from '../Models';
2
2
  export declare function withUpdateSpatialCell(): TWithUpdateSpatialCell;
@@ -1 +1 @@
1
- {"version":3,"file":"WithUpdateSpatialCell.js","sources":["../../../src/Spatial/Mixins/WithUpdateSpatialCell.ts"],"sourcesContent":["import type { TActor } from '@hellpig/anarchy-engine/Actor';\nimport type { TSpatialCell, TSpatialCellWrapper, TSpatialGridWrapper, TWithUpdateSpatialCell } from '@hellpig/anarchy-engine/Spatial/Models';\nimport type { TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport function withUpdateSpatialCell(): TWithUpdateSpatialCell {\n let prevCells: ReadonlyArray<Pick<TSpatialCell, 'maxX' | 'maxY' | 'minX' | 'minY'>> = [];\n\n function updateSpatialCells(this: TActor, newPosition: TReadonlyVector3): void | never {\n const grid: TSpatialGridWrapper | undefined = this.spatial.getGrid();\n if (isNotDefined(grid)) throw new Error(`Grid is not defined for Actor name: \"${this.name}\", id: \"${this.id}\"`);\n const cells: ReadonlyArray<TSpatialCellWrapper> = this.spatial.getSpatialCells();\n\n //first run\n if (prevCells.length === 0) {\n prevCells = cells.map(({ maxX, maxY, minX, minY }: TSpatialCellWrapper): Pick<TSpatialCell, 'maxX' | 'maxY' | 'minX' | 'minY'> => ({ maxX, maxY, minX, minY }));\n return;\n }\n\n const isOutside = ({ minX, minY, maxX, maxY }: Pick<TSpatialCell, 'maxX' | 'maxY' | 'minX' | 'minY'>, newPosition: TReadonlyVector3): boolean => {\n return newPosition.x < minX || newPosition.x > maxX || newPosition.z < minY || newPosition.z > maxY;\n };\n\n // eslint-disable-next-line functional/no-loop-statements\n for (let index: number = 0; index < cells.length; index++) {\n if (isDefined(prevCells[index]) && isOutside(prevCells[index], newPosition)) {\n if (isNotDefined(grid)) throw new Error(`Cannot update actor's (id: \"${this.id}\") spatial grid's cell: grid is not defined`);\n grid.updateActorCell(this);\n }\n }\n\n prevCells = cells.map(({ maxX, maxY, minX, minY }: TSpatialCellWrapper) => ({ maxX, maxY, minX, minY }));\n }\n\n return {\n updateSpatialCells\n };\n}\n"],"names":["withUpdateSpatialCell","prevCells","updateSpatialCells","newPosition","grid","this","spatial","getGrid","isNotDefined","Error","name","id","cells","getSpatialCells","length","map","maxX","maxY","minX","minY","isOutside","x","z","index","isDefined","updateActorCell"],"mappings":"0FAKO,SAASA,wBACd,IAAIC,UAAkF,GA4BtF,MAAO,CACLC,mBA3BF,SAA0CC,aACxC,MAAMC,KAAwCC,KAAKC,QAAQC,UAC3D,GAAIC,aAAaJ,MAAO,MAAM,IAAIK,MAAM,wCAAwCJ,KAAKK,eAAeL,KAAKM,OACzG,MAAMC,MAA4CP,KAAKC,QAAQO,kBAG/D,GAAyB,IAArBZ,UAAUa,OAEZ,YADAb,UAAYW,MAAMG,IAAI,EAAGC,UAAMC,UAAMC,UAAMC,cAAK,CAAqFH,UAAMC,UAAMC,UAAMC,cAIzJ,MAAMC,UAAY,EAAGF,UAAMC,UAAMH,UAAMC,WAA+Dd,eAC7FA,aAAYkB,EAAIH,MAAQf,aAAYkB,EAAIL,MAAQb,aAAYmB,EAAIH,MAAQhB,aAAYmB,EAAIL,KAIjG,IAAA,IAASM,MAAgB,EAAGA,MAAQX,MAAME,OAAQS,QAChD,GAAIC,UAAUvB,UAAUsB,SAAWH,UAAUnB,UAAUsB,OAAQpB,aAAc,CAC3E,GAAIK,aAAaJ,MAAO,MAAM,IAAIK,MAAM,+BAA+BJ,KAAKM,iDAC5EP,KAAKqB,gBAAgBpB,KACvB,CAGFJ,UAAYW,MAAMG,IAAI,EAAGC,UAAMC,UAAMC,UAAMC,cAAK,CAA8BH,UAAMC,UAAMC,UAAMC,YAClG,EAKF"}
1
+ {"version":3,"file":"WithUpdateSpatialCell.js","sources":["../../../src/Spatial/Mixins/WithUpdateSpatialCell.ts"],"sourcesContent":["import type { TActor } from '@Anarchy/Engine/Actor';\nimport type { TSpatialCell, TSpatialCellWrapper, TSpatialGridWrapper, TWithUpdateSpatialCell } from '@Anarchy/Engine/Spatial/Models';\nimport type { TReadonlyVector3 } from '@Anarchy/Engine/ThreeLib';\nimport { isDefined, isNotDefined } from '@hellpig/anarchy-shared/Utils';\n\nexport function withUpdateSpatialCell(): TWithUpdateSpatialCell {\n let prevCells: ReadonlyArray<Pick<TSpatialCell, 'maxX' | 'maxY' | 'minX' | 'minY'>> = [];\n\n function updateSpatialCells(this: TActor, newPosition: TReadonlyVector3): void | never {\n const grid: TSpatialGridWrapper | undefined = this.spatial.getGrid();\n if (isNotDefined(grid)) throw new Error(`Grid is not defined for Actor name: \"${this.name}\", id: \"${this.id}\"`);\n const cells: ReadonlyArray<TSpatialCellWrapper> = this.spatial.getSpatialCells();\n\n //first run\n if (prevCells.length === 0) {\n prevCells = cells.map(({ maxX, maxY, minX, minY }: TSpatialCellWrapper): Pick<TSpatialCell, 'maxX' | 'maxY' | 'minX' | 'minY'> => ({ maxX, maxY, minX, minY }));\n return;\n }\n\n const isOutside = ({ minX, minY, maxX, maxY }: Pick<TSpatialCell, 'maxX' | 'maxY' | 'minX' | 'minY'>, newPosition: TReadonlyVector3): boolean => {\n return newPosition.x < minX || newPosition.x > maxX || newPosition.z < minY || newPosition.z > maxY;\n };\n\n // eslint-disable-next-line functional/no-loop-statements\n for (let index: number = 0; index < cells.length; index++) {\n if (isDefined(prevCells[index]) && isOutside(prevCells[index], newPosition)) {\n if (isNotDefined(grid)) throw new Error(`Cannot update actor's (id: \"${this.id}\") spatial grid's cell: grid is not defined`);\n grid.updateActorCell(this);\n }\n }\n\n prevCells = cells.map(({ maxX, maxY, minX, minY }: TSpatialCellWrapper) => ({ maxX, maxY, minX, minY }));\n }\n\n return {\n updateSpatialCells\n };\n}\n"],"names":["withUpdateSpatialCell","prevCells","updateSpatialCells","newPosition","grid","this","spatial","getGrid","isNotDefined","Error","name","id","cells","getSpatialCells","length","map","maxX","maxY","minX","minY","isOutside","x","z","index","isDefined","updateActorCell"],"mappings":"0FAKO,SAASA,wBACd,IAAIC,UAAkF,GA4BtF,MAAO,CACLC,mBA3BF,SAA0CC,aACxC,MAAMC,KAAwCC,KAAKC,QAAQC,UAC3D,GAAIC,aAAaJ,MAAO,MAAM,IAAIK,MAAM,wCAAwCJ,KAAKK,eAAeL,KAAKM,OACzG,MAAMC,MAA4CP,KAAKC,QAAQO,kBAG/D,GAAyB,IAArBZ,UAAUa,OAEZ,YADAb,UAAYW,MAAMG,IAAI,EAAGC,UAAMC,UAAMC,UAAMC,cAAK,CAAqFH,UAAMC,UAAMC,UAAMC,cAIzJ,MAAMC,UAAY,EAAGF,UAAMC,UAAMH,UAAMC,WAA+Dd,eAC7FA,aAAYkB,EAAIH,MAAQf,aAAYkB,EAAIL,MAAQb,aAAYmB,EAAIH,MAAQhB,aAAYmB,EAAIL,KAIjG,IAAA,IAASM,MAAgB,EAAGA,MAAQX,MAAME,OAAQS,QAChD,GAAIC,UAAUvB,UAAUsB,SAAWH,UAAUnB,UAAUsB,OAAQpB,aAAc,CAC3E,GAAIK,aAAaJ,MAAO,MAAM,IAAIK,MAAM,+BAA+BJ,KAAKM,iDAC5EP,KAAKqB,gBAAgBpB,KACvB,CAGFJ,UAAYW,MAAMG,IAAI,EAAGC,UAAMC,UAAMC,UAAMC,cAAK,CAA8BH,UAAMC,UAAMC,UAAMC,YAClG,EAKF"}
@@ -1,4 +1,4 @@
1
- import { TParamsFromConfig } from '@hellpig/anarchy-engine/Abstract';
1
+ import { TParamsFromConfig } from '../../Abstract';
2
2
  import { TSpatialGridConfig } from './TSpatialGridConfig';
3
3
  import { TSpatialGridParams } from './TSpatialGridParams';
4
4
  export type TParamsFromConfigSpatial = TParamsFromConfig<TSpatialGridConfig, TSpatialGridParams>;
@@ -1,4 +1,4 @@
1
- import { TActor } from '@hellpig/anarchy-engine/Actor';
1
+ import { TActor } from '../../Actor';
2
2
  import { BBox } from 'rbush';
3
3
  import { TSpatialCellId } from './TSpatialCellId';
4
4
  export type TSpatialCell = BBox & Readonly<{
@@ -1,4 +1,4 @@
1
- import { TWithNameOptional } from '@hellpig/anarchy-engine/Mixins';
1
+ import { TWithNameOptional } from '../../Mixins';
2
2
  export type TSpatialCellParams = Readonly<{
3
3
  minX: number;
4
4
  minZ: number;
@@ -1,6 +1,6 @@
1
- import { TWrapper } from '@hellpig/anarchy-engine/Abstract';
2
- import { TActor } from '@hellpig/anarchy-engine/Actor';
3
- import { TWithName } from '@hellpig/anarchy-engine/Mixins';
1
+ import { TWrapper } from '../../Abstract';
2
+ import { TActor } from '../../Actor';
3
+ import { TWithName } from '../../Mixins';
4
4
  import { Observable } from 'rxjs';
5
5
  import { TSpatialCell } from './TSpatialCell';
6
6
  export type TSpatialCellWrapper = Omit<TWrapper<TSpatialCell>, 'name'> & Readonly<{
@@ -1,4 +1,4 @@
1
- import { LoopUpdatePriority } from '@hellpig/anarchy-engine/Loop';
1
+ import { LoopUpdatePriority } from '../../Loop';
2
2
  import { TSpatialCellWrapper } from './TSpatialCellWrapper';
3
3
  import { TSpatialGridWrapper } from './TSpatialGridWrapper';
4
4
  export type TSpatialData = Readonly<{
@@ -1,4 +1,4 @@
1
- import { TReactiveFactory } from '@hellpig/anarchy-engine/Abstract';
1
+ import { TReactiveFactory } from '../../Abstract';
2
2
  import { TParamsFromConfigSpatial } from './TParamsFromConfigSpatial';
3
3
  import { TSpatialGridParams } from './TSpatialGridParams';
4
4
  import { TSpatialGridWrapper } from './TSpatialGridWrapper';
@@ -1,4 +1,4 @@
1
- import { TWithName, TWithTags } from '@hellpig/anarchy-engine/Mixins';
1
+ import { TWithName, TWithTags } from '../../Mixins';
2
2
  export type TSpatialGridParams = Readonly<{
3
3
  mapWidth: number;
4
4
  mapHeight: number;
@@ -1,3 +1,3 @@
1
- import { TAbstractEntityRegistry } from '@hellpig/anarchy-engine/Abstract/Models';
1
+ import { TAbstractEntityRegistry } from '../../Abstract/Models';
2
2
  import { TSpatialGridWrapper } from './TSpatialGridWrapper';
3
3
  export type TSpatialGridRegistry = TAbstractEntityRegistry<TSpatialGridWrapper>;
@@ -1,5 +1,5 @@
1
- import { TSerializableEntitiesService } from '@hellpig/anarchy-engine/Abstract';
2
- import { TWithCreateFromConfigService, TWithCreateService, TWithFactoryService, TWithRegistryService } from '@hellpig/anarchy-engine/Mixins';
1
+ import { TSerializableEntitiesService } from '../../Abstract';
2
+ import { TWithCreateFromConfigService, TWithCreateService, TWithFactoryService, TWithRegistryService } from '../../Mixins';
3
3
  import { TSpatialGridConfig } from './TSpatialGridConfig';
4
4
  import { TSpatialGridFactory } from './TSpatialGridFactory';
5
5
  import { TSpatialGridParams } from './TSpatialGridParams';
@@ -1,7 +1,7 @@
1
- import { TWrapper } from '@hellpig/anarchy-engine/Abstract';
2
- import { TActor } from '@hellpig/anarchy-engine/Actor';
3
- import { TDestroyable } from '@hellpig/anarchy-engine/Mixins';
4
- import { TSceneWrapper } from '@hellpig/anarchy-engine/Scene';
1
+ import { TWrapper } from '../../Abstract';
2
+ import { TActor } from '../../Actor';
3
+ import { TDestroyable } from '../../Mixins';
4
+ import { TSceneWrapper } from '../../Scene';
5
5
  import { Observable } from 'rxjs';
6
6
  import { ColorRepresentation } from 'three';
7
7
  import { TSpatialCellId } from './TSpatialCellId';
@@ -1,4 +1,4 @@
1
- import { TLoop } from '@hellpig/anarchy-engine/Loop/Models';
1
+ import { TLoop } from '../../Loop/Models';
2
2
  export type TSpatialLoop = TLoop & {
3
3
  __brand: 'spatial_loop';
4
4
  };
@@ -1,4 +1,4 @@
1
- import { LoopUpdatePriority } from '@hellpig/anarchy-engine/Loop';
1
+ import { LoopUpdatePriority } from '../../Loop';
2
2
  import { TSpatialCellWrapper } from './TSpatialCellWrapper';
3
3
  import { TSpatialData } from './TSpatialData';
4
4
  import { TSpatialGridWrapper } from './TSpatialGridWrapper';
@@ -1,4 +1,4 @@
1
- import { TMeters } from '@hellpig/anarchy-engine/Math';
1
+ import { TMeters } from '../../Math';
2
2
  export type TSpatialPerformanceOptions = Readonly<{
3
3
  noiseThreshold: TMeters;
4
4
  }>;
@@ -1,4 +1,4 @@
1
- import { TDestroyable } from '@hellpig/anarchy-engine/Mixins';
1
+ import { TDestroyable } from '../../Mixins';
2
2
  import { BehaviorSubject, Observable } from 'rxjs';
3
3
  import { TSpatialCellWrapper } from './TSpatialCellWrapper';
4
4
  import { TSpatialData } from './TSpatialData';
@@ -1,4 +1,4 @@
1
- import { TReadonlyVector3 } from '@hellpig/anarchy-engine/ThreeLib';
1
+ import { TReadonlyVector3 } from '../../ThreeLib';
2
2
  export type TWithUpdateSpatialCell = Readonly<{
3
3
  updateSpatialCells: (newPosition: TReadonlyVector3) => void | never;
4
4
  }>;
@@ -1,2 +1,2 @@
1
- import { TSpatialGridRegistry } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialGridRegistry } from '../Models';
2
2
  export declare function SpatialGridRegistry(): TSpatialGridRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"SpatialGridRegistry.js","sources":["../../../src/Spatial/Registries/SpatialGridRegistry.ts"],"sourcesContent":["import { RegistryType } from '@hellpig/anarchy-engine/Abstract/Constants';\nimport { AbstractEntityRegistry } from '@hellpig/anarchy-engine/Abstract/Registries';\nimport type { TSpatialGridRegistry, TSpatialGridWrapper } from '@hellpig/anarchy-engine/Spatial/Models';\n\nexport function SpatialGridRegistry(): TSpatialGridRegistry {\n return AbstractEntityRegistry<TSpatialGridWrapper>(RegistryType.SpatialGrid);\n}\n"],"names":["SpatialGridRegistry","AbstractEntityRegistry","RegistryType","SpatialGrid"],"mappings":"2JAIO,SAASA,sBACd,OAAOC,uBAA4CC,aAAaC,YAClE"}
1
+ {"version":3,"file":"SpatialGridRegistry.js","sources":["../../../src/Spatial/Registries/SpatialGridRegistry.ts"],"sourcesContent":["import { RegistryType } from '@Anarchy/Engine/Abstract/Constants';\nimport { AbstractEntityRegistry } from '@Anarchy/Engine/Abstract/Registries';\nimport type { TSpatialGridRegistry, TSpatialGridWrapper } from '@Anarchy/Engine/Spatial/Models';\n\nexport function SpatialGridRegistry(): TSpatialGridRegistry {\n return AbstractEntityRegistry<TSpatialGridWrapper>(RegistryType.SpatialGrid);\n}\n"],"names":["SpatialGridRegistry","AbstractEntityRegistry","RegistryType","SpatialGrid"],"mappings":"2JAIO,SAASA,sBACd,OAAOC,uBAA4CC,aAAaC,YAClE"}
@@ -1,2 +1,2 @@
1
- import { TSpatialGridFactory, TSpatialGridRegistry, TSpatialGridService } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialGridFactory, TSpatialGridRegistry, TSpatialGridService } from '../Models';
2
2
  export declare function SpatialGridService(factory: TSpatialGridFactory, registry: TSpatialGridRegistry): TSpatialGridService;
@@ -1 +1 @@
1
- {"version":3,"file":"SpatialGridService.js","sources":["../../../src/Spatial/Services/SpatialGridService.ts"],"sourcesContent":["import type { TAbstractService } from '@hellpig/anarchy-engine/Abstract';\nimport { AbstractService } from '@hellpig/anarchy-engine/Abstract';\nimport type { TDisposable } from '@hellpig/anarchy-engine/Mixins';\nimport { withCreateServiceMixin, withSerializableEntities } from '@hellpig/anarchy-engine/Mixins';\nimport { withCreateFromConfigServiceMixin } from '@hellpig/anarchy-engine/Mixins/Services/WithCreateFromConfigService';\nimport { withFactoryService } from '@hellpig/anarchy-engine/Mixins/Services/WithFactoryService';\nimport { withRegistryService } from '@hellpig/anarchy-engine/Mixins/Services/WithRegistryService';\nimport type {\n TSpatialGridConfig,\n TSpatialGridFactory,\n TSpatialGridRegistry,\n TSpatialGridService,\n TSpatialGridServiceWithCreate,\n TSpatialGridServiceWithCreateFromConfig,\n TSpatialGridServiceWithFactory,\n TSpatialGridServiceWithRegistry,\n TSpatialGridWrapper\n} from '@hellpig/anarchy-engine/Spatial/Models';\nimport { mergeAll } from '@hellpig/anarchy-engine/Utils';\nimport type { Subscription } from 'rxjs';\n\nexport function SpatialGridService(factory: TSpatialGridFactory, registry: TSpatialGridRegistry): TSpatialGridService {\n const factorySub$: Subscription = factory.entityCreated$.subscribe((spatialGrid: TSpatialGridWrapper): void => registry.add(spatialGrid));\n const disposable: ReadonlyArray<TDisposable> = [registry, factory, factorySub$];\n const abstractService: TAbstractService = AbstractService(disposable);\n\n const withCreateService: TSpatialGridServiceWithCreate = withCreateServiceMixin(factory, undefined);\n const withCreateFromConfigService: TSpatialGridServiceWithCreateFromConfig = withCreateFromConfigServiceMixin(withCreateService.create, factory.configToParams, undefined);\n const withFactory: TSpatialGridServiceWithFactory = withFactoryService(factory);\n const withRegistry: TSpatialGridServiceWithRegistry = withRegistryService(registry);\n\n return mergeAll(abstractService, withCreateService, withCreateFromConfigService, withFactory, withRegistry, withSerializableEntities<TSpatialGridWrapper, TSpatialGridConfig, undefined>(registry));\n}\n"],"names":["SpatialGridService","factory","registry","factorySub$","entityCreated$","subscribe","spatialGrid","add","abstractService","AbstractService","withCreateService","withCreateServiceMixin","withCreateFromConfigService","withCreateFromConfigServiceMixin","create","configToParams","withFactory","withFactoryService","withRegistry","withRegistryService","mergeAll","withSerializableEntities"],"mappings":"6hBAqBO,SAASA,mBAAmBC,QAA8BC,UAC/D,MAAMC,YAA4BF,QAAQG,eAAeC,UAAWC,aAA2CJ,SAASK,IAAID,cAEtHE,gBAAoCC,gBADK,CAACP,SAAUD,QAASE,cAG7DO,kBAAmDC,uBAAuBV,gBAC1EW,4BAAuEC,iCAAiCH,kBAAkBI,OAAQb,QAAQc,uBAC1IC,YAA8CC,mBAAmBhB,SACjEiB,aAAgDC,oBAAoBjB,UAE1E,OAAOkB,SAASZ,gBAAiBE,kBAAmBE,4BAA6BI,YAAaE,aAAcG,yBAA6EnB,UAC3L"}
1
+ {"version":3,"file":"SpatialGridService.js","sources":["../../../src/Spatial/Services/SpatialGridService.ts"],"sourcesContent":["import type { TAbstractService } from '@Anarchy/Engine/Abstract';\nimport { AbstractService } from '@Anarchy/Engine/Abstract';\nimport type { TDisposable } from '@Anarchy/Engine/Mixins';\nimport { withCreateServiceMixin, withSerializableEntities } from '@Anarchy/Engine/Mixins';\nimport { withCreateFromConfigServiceMixin } from '@Anarchy/Engine/Mixins/Services/WithCreateFromConfigService';\nimport { withFactoryService } from '@Anarchy/Engine/Mixins/Services/WithFactoryService';\nimport { withRegistryService } from '@Anarchy/Engine/Mixins/Services/WithRegistryService';\nimport type {\n TSpatialGridConfig,\n TSpatialGridFactory,\n TSpatialGridRegistry,\n TSpatialGridService,\n TSpatialGridServiceWithCreate,\n TSpatialGridServiceWithCreateFromConfig,\n TSpatialGridServiceWithFactory,\n TSpatialGridServiceWithRegistry,\n TSpatialGridWrapper\n} from '@Anarchy/Engine/Spatial/Models';\nimport { mergeAll } from '@Anarchy/Engine/Utils';\nimport type { Subscription } from 'rxjs';\n\nexport function SpatialGridService(factory: TSpatialGridFactory, registry: TSpatialGridRegistry): TSpatialGridService {\n const factorySub$: Subscription = factory.entityCreated$.subscribe((spatialGrid: TSpatialGridWrapper): void => registry.add(spatialGrid));\n const disposable: ReadonlyArray<TDisposable> = [registry, factory, factorySub$];\n const abstractService: TAbstractService = AbstractService(disposable);\n\n const withCreateService: TSpatialGridServiceWithCreate = withCreateServiceMixin(factory, undefined);\n const withCreateFromConfigService: TSpatialGridServiceWithCreateFromConfig = withCreateFromConfigServiceMixin(withCreateService.create, factory.configToParams, undefined);\n const withFactory: TSpatialGridServiceWithFactory = withFactoryService(factory);\n const withRegistry: TSpatialGridServiceWithRegistry = withRegistryService(registry);\n\n return mergeAll(abstractService, withCreateService, withCreateFromConfigService, withFactory, withRegistry, withSerializableEntities<TSpatialGridWrapper, TSpatialGridConfig, undefined>(registry));\n}\n"],"names":["SpatialGridService","factory","registry","factorySub$","entityCreated$","subscribe","spatialGrid","add","abstractService","AbstractService","withCreateService","withCreateServiceMixin","withCreateFromConfigService","withCreateFromConfigServiceMixin","create","configToParams","withFactory","withFactoryService","withRegistry","withRegistryService","mergeAll","withSerializableEntities"],"mappings":"6hBAqBO,SAASA,mBAAmBC,QAA8BC,UAC/D,MAAMC,YAA4BF,QAAQG,eAAeC,UAAWC,aAA2CJ,SAASK,IAAID,cAEtHE,gBAAoCC,gBADK,CAACP,SAAUD,QAASE,cAG7DO,kBAAmDC,uBAAuBV,gBAC1EW,4BAAuEC,iCAAiCH,kBAAkBI,OAAQb,QAAQc,uBAC1IC,YAA8CC,mBAAmBhB,SACjEiB,aAAgDC,oBAAoBjB,UAE1E,OAAOkB,SAASZ,gBAAiBE,kBAAmBE,4BAA6BI,YAAaE,aAAcG,yBAA6EnB,UAC3L"}
@@ -1,4 +1,4 @@
1
- import { TActor } from '@hellpig/anarchy-engine/Actor';
1
+ import { TActor } from '../../Actor';
2
2
  import { ColorRepresentation, Mesh } from 'three';
3
3
  import { Line2 } from '../../../../../node_modules/@types/three/examples/jsm/lines/Line2';
4
4
  export declare function createLine(color: ColorRepresentation, width: number, positions: Array<number>): Line2;
@@ -1 +1 @@
1
- {"version":3,"file":"SpatialHelper.js","sources":["../../../src/Spatial/Services/SpatialHelper.ts"],"sourcesContent":["import type { TActor } from '@hellpig/anarchy-engine/Actor';\nimport { meters } from '@hellpig/anarchy-engine/Measurements/Utils';\nimport type { ColorRepresentation, Vector3 } from 'three';\nimport { Box3, Mesh, MeshBasicMaterial, PlaneGeometry } from 'three';\nimport { Line2 } from 'three/examples/jsm/lines/Line2';\nimport { LineGeometry } from 'three/examples/jsm/lines/LineGeometry';\nimport { LineMaterial } from 'three/examples/jsm/lines/LineMaterial';\n\nexport function createLine(color: ColorRepresentation, width: number, positions: Array<number>): Line2 {\n const material = new LineMaterial({\n color,\n linewidth: meters(width),\n worldUnits: true,\n alphaToCoverage: true\n });\n const geometry: LineGeometry = new LineGeometry();\n geometry.setPositions(positions);\n\n return new Line2(geometry, material);\n}\n\nexport function createOutline(actor: TActor, color: ColorRepresentation, lineWidth: number): Line2 {\n const boundingBox = new Box3().setFromObject(actor.model3d.getRawModel3d());\n const min: Vector3 = boundingBox.min;\n const max: Vector3 = boundingBox.max;\n const positions = getBoxEdges(min, max);\n\n return createLine(color, lineWidth, positions);\n}\n\nfunction getBoxEdges(min: Vector3, max: Vector3): Array<number> {\n return [\n // Bottom edges\n min.x,\n min.y,\n min.z,\n max.x,\n min.y,\n min.z,\n max.x,\n min.y,\n min.z,\n max.x,\n min.y,\n max.z,\n max.x,\n min.y,\n max.z,\n min.x,\n min.y,\n max.z,\n min.x,\n min.y,\n max.z,\n min.x,\n min.y,\n min.z,\n\n // Top edges\n min.x,\n max.y,\n min.z,\n max.x,\n max.y,\n min.z,\n max.x,\n max.y,\n min.z,\n max.x,\n max.y,\n max.z,\n max.x,\n max.y,\n max.z,\n min.x,\n max.y,\n max.z,\n min.x,\n max.y,\n max.z,\n min.x,\n max.y,\n min.z,\n\n // Vertical edges\n min.x,\n min.y,\n min.z,\n min.x,\n max.y,\n min.z,\n max.x,\n min.y,\n min.z,\n max.x,\n max.y,\n min.z,\n max.x,\n min.y,\n max.z,\n max.x,\n max.y,\n max.z,\n min.x,\n min.y,\n max.z,\n min.x,\n max.y,\n max.z\n ];\n}\n\nexport function createBoundingBox(minX: number, minZ: number, maxX: number, maxZ: number, color: ColorRepresentation = '#00ff00', wireframe: boolean = true, height: number = 0): Mesh {\n const geometry: PlaneGeometry = new PlaneGeometry(maxX - minX, maxZ - minZ);\n const material: MeshBasicMaterial = new MeshBasicMaterial({ color, wireframe });\n const plane: Mesh = new Mesh(geometry, material);\n plane.position.set((minX + maxX) / 2, height, (minZ + maxZ) / 2);\n // eslint-disable-next-line functional/immutable-data\n plane.rotation.x = -Math.PI / 2;\n return plane;\n}\n"],"names":["createLine","color","width","positions","material","LineMaterial","linewidth","meters","worldUnits","alphaToCoverage","geometry","LineGeometry","setPositions","Line2","createOutline","actor","lineWidth","boundingBox","Box3","setFromObject","model3d","getRawModel3d","min","max","x","y","z","createBoundingBox","minX","minZ","maxX","maxZ","wireframe","height","PlaneGeometry","MeshBasicMaterial","plane","Mesh","position","set","rotation","Math","PI"],"mappings":"iTAQO,SAASA,WAAWC,MAA4BC,MAAeC,WACpE,MAAMC,SAAW,IAAIC,aAAa,CAChCJ,YACAK,UAAWC,OAAOL,OAClBM,YAAY,EACZC,iBAAiB,IAEbC,SAAyB,IAAIC,aAGnC,OAFAD,SAASE,aAAaT,WAEf,IAAIU,MAAMH,SAAUN,SAC7B,CAEO,SAASU,cAAcC,MAAed,MAA4Be,WACvE,MAAMC,aAAc,IAAIC,MAAOC,cAAcJ,MAAMK,QAAQC,iBAQ7D,IAAqBC,IAAcC,IAHjC,OAAOvB,WAAWC,MAAOe,UAIlB,EADYM,IAPEL,YAAYK,KAU3BE,EACJF,IAAIG,EACJH,IAAII,GAL2BH,IANZN,YAAYM,KAY3BC,EACJF,IAAIG,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJF,IAAIG,EACJH,IAAIC,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJH,IAAII,EAGJJ,IAAIE,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJF,IAAIG,EACJH,IAAIC,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJH,IAAII,EAGJJ,IAAIE,EACJF,IAAIG,EACJH,IAAII,EACJJ,IAAIE,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJF,IAAIG,EACJH,IAAIC,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJF,IAAIG,GAhFR,CAoFO,SAASC,kBAAkBC,KAAcC,KAAcC,KAAcC,KAAc9B,MAA6B,UAAW+B,WAAqB,EAAMC,OAAiB,GAC5K,MAAMvB,SAA0B,IAAIwB,cAAcJ,KAAOF,KAAMG,KAAOF,MAChEzB,SAA8B,IAAI+B,kBAAkB,CAAElC,YAAO+B,sBAC7DI,MAAc,IAAIC,KAAK3B,SAAUN,UAIvC,OAHAgC,MAAME,SAASC,KAAKX,KAAOE,MAAQ,EAAGG,QAASJ,KAAOE,MAAQ,GAE9DK,MAAMI,SAAShB,GAAKiB,KAAKC,GAAK,EACvBN,KACT"}
1
+ {"version":3,"file":"SpatialHelper.js","sources":["../../../src/Spatial/Services/SpatialHelper.ts"],"sourcesContent":["import type { TActor } from '@Anarchy/Engine/Actor';\nimport { meters } from '@Anarchy/Engine/Measurements/Utils';\nimport type { ColorRepresentation, Vector3 } from 'three';\nimport { Box3, Mesh, MeshBasicMaterial, PlaneGeometry } from 'three';\nimport { Line2 } from 'three/examples/jsm/lines/Line2';\nimport { LineGeometry } from 'three/examples/jsm/lines/LineGeometry';\nimport { LineMaterial } from 'three/examples/jsm/lines/LineMaterial';\n\nexport function createLine(color: ColorRepresentation, width: number, positions: Array<number>): Line2 {\n const material = new LineMaterial({\n color,\n linewidth: meters(width),\n worldUnits: true,\n alphaToCoverage: true\n });\n const geometry: LineGeometry = new LineGeometry();\n geometry.setPositions(positions);\n\n return new Line2(geometry, material);\n}\n\nexport function createOutline(actor: TActor, color: ColorRepresentation, lineWidth: number): Line2 {\n const boundingBox = new Box3().setFromObject(actor.model3d.getRawModel3d());\n const min: Vector3 = boundingBox.min;\n const max: Vector3 = boundingBox.max;\n const positions = getBoxEdges(min, max);\n\n return createLine(color, lineWidth, positions);\n}\n\nfunction getBoxEdges(min: Vector3, max: Vector3): Array<number> {\n return [\n // Bottom edges\n min.x,\n min.y,\n min.z,\n max.x,\n min.y,\n min.z,\n max.x,\n min.y,\n min.z,\n max.x,\n min.y,\n max.z,\n max.x,\n min.y,\n max.z,\n min.x,\n min.y,\n max.z,\n min.x,\n min.y,\n max.z,\n min.x,\n min.y,\n min.z,\n\n // Top edges\n min.x,\n max.y,\n min.z,\n max.x,\n max.y,\n min.z,\n max.x,\n max.y,\n min.z,\n max.x,\n max.y,\n max.z,\n max.x,\n max.y,\n max.z,\n min.x,\n max.y,\n max.z,\n min.x,\n max.y,\n max.z,\n min.x,\n max.y,\n min.z,\n\n // Vertical edges\n min.x,\n min.y,\n min.z,\n min.x,\n max.y,\n min.z,\n max.x,\n min.y,\n min.z,\n max.x,\n max.y,\n min.z,\n max.x,\n min.y,\n max.z,\n max.x,\n max.y,\n max.z,\n min.x,\n min.y,\n max.z,\n min.x,\n max.y,\n max.z\n ];\n}\n\nexport function createBoundingBox(minX: number, minZ: number, maxX: number, maxZ: number, color: ColorRepresentation = '#00ff00', wireframe: boolean = true, height: number = 0): Mesh {\n const geometry: PlaneGeometry = new PlaneGeometry(maxX - minX, maxZ - minZ);\n const material: MeshBasicMaterial = new MeshBasicMaterial({ color, wireframe });\n const plane: Mesh = new Mesh(geometry, material);\n plane.position.set((minX + maxX) / 2, height, (minZ + maxZ) / 2);\n // eslint-disable-next-line functional/immutable-data\n plane.rotation.x = -Math.PI / 2;\n return plane;\n}\n"],"names":["createLine","color","width","positions","material","LineMaterial","linewidth","meters","worldUnits","alphaToCoverage","geometry","LineGeometry","setPositions","Line2","createOutline","actor","lineWidth","boundingBox","Box3","setFromObject","model3d","getRawModel3d","min","max","x","y","z","createBoundingBox","minX","minZ","maxX","maxZ","wireframe","height","PlaneGeometry","MeshBasicMaterial","plane","Mesh","position","set","rotation","Math","PI"],"mappings":"iTAQO,SAASA,WAAWC,MAA4BC,MAAeC,WACpE,MAAMC,SAAW,IAAIC,aAAa,CAChCJ,YACAK,UAAWC,OAAOL,OAClBM,YAAY,EACZC,iBAAiB,IAEbC,SAAyB,IAAIC,aAGnC,OAFAD,SAASE,aAAaT,WAEf,IAAIU,MAAMH,SAAUN,SAC7B,CAEO,SAASU,cAAcC,MAAed,MAA4Be,WACvE,MAAMC,aAAc,IAAIC,MAAOC,cAAcJ,MAAMK,QAAQC,iBAQ7D,IAAqBC,IAAcC,IAHjC,OAAOvB,WAAWC,MAAOe,UAIlB,EADYM,IAPEL,YAAYK,KAU3BE,EACJF,IAAIG,EACJH,IAAII,GAL2BH,IANZN,YAAYM,KAY3BC,EACJF,IAAIG,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJF,IAAIG,EACJH,IAAIC,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJH,IAAII,EAGJJ,IAAIE,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJF,IAAIG,EACJH,IAAIC,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJH,IAAII,EAGJJ,IAAIE,EACJF,IAAIG,EACJH,IAAII,EACJJ,IAAIE,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJH,IAAII,EACJH,IAAIC,EACJD,IAAIE,EACJH,IAAII,EACJH,IAAIC,EACJF,IAAIG,EACJF,IAAIG,EACJH,IAAIC,EACJD,IAAIE,EACJF,IAAIG,EACJJ,IAAIE,EACJF,IAAIG,EACJF,IAAIG,EACJJ,IAAIE,EACJD,IAAIE,EACJF,IAAIG,GAhFR,CAoFO,SAASC,kBAAkBC,KAAcC,KAAcC,KAAcC,KAAc9B,MAA6B,UAAW+B,WAAqB,EAAMC,OAAiB,GAC5K,MAAMvB,SAA0B,IAAIwB,cAAcJ,KAAOF,KAAMG,KAAOF,MAChEzB,SAA8B,IAAI+B,kBAAkB,CAAElC,YAAO+B,sBAC7DI,MAAc,IAAIC,KAAK3B,SAAUN,UAIvC,OAHAgC,MAAME,SAASC,KAAKX,KAAOE,MAAQ,EAAGG,QAASJ,KAAOE,MAAQ,GAE9DK,MAAMI,SAAShB,GAAKiB,KAAKC,GAAK,EACvBN,KACT"}
@@ -1,2 +1,2 @@
1
- import { TSpatialCellParams, TSpatialCellWrapper } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialCellParams, TSpatialCellWrapper } from '../Models';
2
2
  export declare function SpatialCellWrapper(params: TSpatialCellParams): TSpatialCellWrapper;
@@ -1 +1 @@
1
- {"version":3,"file":"SpatialCellWrapper.js","sources":["../../../src/Spatial/Wrappers/SpatialCellWrapper.ts"],"sourcesContent":["import type { TAbstractWrapper } from '@hellpig/anarchy-engine/Abstract';\nimport { AbstractWrapper, WrapperType } from '@hellpig/anarchy-engine/Abstract';\nimport type { TActor } from '@hellpig/anarchy-engine/Actor';\nimport { entityToConfigSpatialCell } from '@hellpig/anarchy-engine/Spatial/Adapters';\nimport type { TSpatialCell, TSpatialCellParams, TSpatialCellSerializedData, TSpatialCellWrapper } from '@hellpig/anarchy-engine/Spatial/Models';\nimport type { Subscription } from 'rxjs';\nimport { Subject } from 'rxjs';\n\nexport function SpatialCellWrapper(params: TSpatialCellParams): TSpatialCellWrapper {\n const entity: TSpatialCell = {\n minX: params.minX,\n minY: params.minZ,\n maxX: params.maxX,\n maxY: params.maxZ,\n id: `spatial_cell_${params.x}_${params.z}`,\n version: 0,\n objects: []\n };\n\n const wrapper: TAbstractWrapper<TSpatialCell> = AbstractWrapper(entity, WrapperType.SpatialCell, params as any);\n const update$: Subject<TSpatialCell> = new Subject<TSpatialCell>();\n\n const sub$: Subscription = wrapper.destroy$.subscribe((): void => {\n sub$.unsubscribe();\n\n // eslint-disable-next-line functional/immutable-data\n entity.objects.length = 0;\n\n update$.complete();\n });\n\n const findObject = (id: string): TActor | undefined => entity.objects.find((o: TActor): boolean => o.id === id);\n\n function addObject(object: TActor): void {\n // eslint-disable-next-line functional/immutable-data\n entity.objects.push(object);\n // eslint-disable-next-line functional/immutable-data\n entity.version++;\n update$.next(entity);\n }\n\n const getObjects = (): ReadonlyArray<TActor> => entity.objects;\n\n const removeObject = (actor: TActor): void => {\n const index: number = getObjects().indexOf(actor);\n if (index === -1) throw new Error(`Cannot remove actor (id: \"${actor.id}\", name: \"${actor.name}\") from spatial cell (id: \"${entity.id}\"). Such actor is not in the cell`);\n\n // eslint-disable-next-line functional/immutable-data\n entity.objects.splice(index, 1);\n // eslint-disable-next-line functional/immutable-data\n entity.version++;\n update$.next(entity);\n };\n\n // eslint-disable-next-line functional/immutable-data\n const result = Object.assign(wrapper, {\n name: params.name ?? entity.id,\n // eslint-disable-next-line no-restricted-syntax\n get minX(): number {\n return entity.minX;\n },\n // eslint-disable-next-line no-restricted-syntax\n get minY(): number {\n return entity.minY;\n },\n // eslint-disable-next-line no-restricted-syntax\n get maxX(): number {\n return entity.maxX;\n },\n // eslint-disable-next-line no-restricted-syntax\n get maxY(): number {\n return entity.maxY;\n },\n getVersion: (): number => entity.version,\n findObject,\n addObject,\n getObjects,\n removeObject,\n update$: update$.asObservable(),\n serialize: (): TSpatialCellSerializedData => entityToConfigSpatialCell(result)\n });\n\n return result;\n}\n"],"names":["SpatialCellWrapper","params","entity","minX","minY","minZ","maxX","maxY","maxZ","id","x","z","version","objects","wrapper","AbstractWrapper","WrapperType","SpatialCell","update$","Subject","sub$","destroy$","subscribe","unsubscribe","length","complete","getObjects","result","Object","assign","name","getVersion","findObject","find","o","addObject","object","push","next","removeObject","actor","index","indexOf","Error","splice","asObservable","serialize","entityToConfigSpatialCell"],"mappings":"yRAQO,SAASA,mBAAmBC,QACjC,MAAMC,OAAuB,CAC3BC,KAAMF,OAAOE,KACbC,KAAMH,OAAOI,KACbC,KAAML,OAAOK,KACbC,KAAMN,OAAOO,KACbC,GAAI,gBAAgBR,OAAOS,KAAKT,OAAOU,IACvCC,QAAS,EACTC,QAAS,IAGLC,QAA0CC,gBAAgBb,OAAQc,YAAYC,YAAahB,QAC3FiB,QAAiC,IAAIC,QAErCC,KAAqBN,QAAQO,SAASC,UAAU,KACpDF,KAAKG,cAGLrB,OAAOW,QAAQW,OAAS,EAExBN,QAAQO,aAaJC,WAAa,IAA6BxB,OAAOW,QAcjDc,OAASC,OAAOC,OAAOf,QAAS,CACpCgB,KAAM7B,OAAO6B,MAAQ5B,OAAOO,GAE5B,QAAIN,GACF,OAAOD,OAAOC,IAChB,EAEA,QAAIC,GACF,OAAOF,OAAOE,IAChB,EAEA,QAAIE,GACF,OAAOJ,OAAOI,IAChB,EAEA,QAAIC,GACF,OAAOL,OAAOK,IAChB,EACAwB,WAAY,IAAc7B,OAAOU,QACjCoB,WA3CkBvB,IAAmCP,OAAOW,QAAQoB,KAAMC,GAAuBA,EAAEzB,KAAOA,IA4C1G0B,UA1CF,SAAmBC,QAEjBlC,OAAOW,QAAQwB,KAAKD,QAEpBlC,OAAOU,UACPM,QAAQoB,KAAKpC,OACf,EAqCEwB,sBACAa,aAlCoBC,QACpB,MAAMC,MAAgBf,aAAagB,QAAQF,OAC3C,IAAc,IAAVC,MAAc,MAAM,IAAIE,MAAM,6BAA6BH,MAAM/B,eAAe+B,MAAMV,kCAAkC5B,OAAOO,uCAGnIP,OAAOW,QAAQ+B,OAAOH,MAAO,GAE7BvC,OAAOU,UACPM,QAAQoB,KAAKpC,SA2BbgB,QAASA,QAAQ2B,eACjBC,UAAW,IAAkCC,0BAA0BpB,UAGzE,OAAOA,MACT"}
1
+ {"version":3,"file":"SpatialCellWrapper.js","sources":["../../../src/Spatial/Wrappers/SpatialCellWrapper.ts"],"sourcesContent":["import type { TAbstractWrapper } from '@Anarchy/Engine/Abstract';\nimport { AbstractWrapper, WrapperType } from '@Anarchy/Engine/Abstract';\nimport type { TActor } from '@Anarchy/Engine/Actor';\nimport { entityToConfigSpatialCell } from '@Anarchy/Engine/Spatial/Adapters';\nimport type { TSpatialCell, TSpatialCellParams, TSpatialCellSerializedData, TSpatialCellWrapper } from '@Anarchy/Engine/Spatial/Models';\nimport type { Subscription } from 'rxjs';\nimport { Subject } from 'rxjs';\n\nexport function SpatialCellWrapper(params: TSpatialCellParams): TSpatialCellWrapper {\n const entity: TSpatialCell = {\n minX: params.minX,\n minY: params.minZ,\n maxX: params.maxX,\n maxY: params.maxZ,\n id: `spatial_cell_${params.x}_${params.z}`,\n version: 0,\n objects: []\n };\n\n const wrapper: TAbstractWrapper<TSpatialCell> = AbstractWrapper(entity, WrapperType.SpatialCell, params as any);\n const update$: Subject<TSpatialCell> = new Subject<TSpatialCell>();\n\n const sub$: Subscription = wrapper.destroy$.subscribe((): void => {\n sub$.unsubscribe();\n\n // eslint-disable-next-line functional/immutable-data\n entity.objects.length = 0;\n\n update$.complete();\n });\n\n const findObject = (id: string): TActor | undefined => entity.objects.find((o: TActor): boolean => o.id === id);\n\n function addObject(object: TActor): void {\n // eslint-disable-next-line functional/immutable-data\n entity.objects.push(object);\n // eslint-disable-next-line functional/immutable-data\n entity.version++;\n update$.next(entity);\n }\n\n const getObjects = (): ReadonlyArray<TActor> => entity.objects;\n\n const removeObject = (actor: TActor): void => {\n const index: number = getObjects().indexOf(actor);\n if (index === -1) throw new Error(`Cannot remove actor (id: \"${actor.id}\", name: \"${actor.name}\") from spatial cell (id: \"${entity.id}\"). Such actor is not in the cell`);\n\n // eslint-disable-next-line functional/immutable-data\n entity.objects.splice(index, 1);\n // eslint-disable-next-line functional/immutable-data\n entity.version++;\n update$.next(entity);\n };\n\n // eslint-disable-next-line functional/immutable-data\n const result = Object.assign(wrapper, {\n name: params.name ?? entity.id,\n // eslint-disable-next-line no-restricted-syntax\n get minX(): number {\n return entity.minX;\n },\n // eslint-disable-next-line no-restricted-syntax\n get minY(): number {\n return entity.minY;\n },\n // eslint-disable-next-line no-restricted-syntax\n get maxX(): number {\n return entity.maxX;\n },\n // eslint-disable-next-line no-restricted-syntax\n get maxY(): number {\n return entity.maxY;\n },\n getVersion: (): number => entity.version,\n findObject,\n addObject,\n getObjects,\n removeObject,\n update$: update$.asObservable(),\n serialize: (): TSpatialCellSerializedData => entityToConfigSpatialCell(result)\n });\n\n return result;\n}\n"],"names":["SpatialCellWrapper","params","entity","minX","minY","minZ","maxX","maxY","maxZ","id","x","z","version","objects","wrapper","AbstractWrapper","WrapperType","SpatialCell","update$","Subject","sub$","destroy$","subscribe","unsubscribe","length","complete","getObjects","result","Object","assign","name","getVersion","findObject","find","o","addObject","object","push","next","removeObject","actor","index","indexOf","Error","splice","asObservable","serialize","entityToConfigSpatialCell"],"mappings":"yRAQO,SAASA,mBAAmBC,QACjC,MAAMC,OAAuB,CAC3BC,KAAMF,OAAOE,KACbC,KAAMH,OAAOI,KACbC,KAAML,OAAOK,KACbC,KAAMN,OAAOO,KACbC,GAAI,gBAAgBR,OAAOS,KAAKT,OAAOU,IACvCC,QAAS,EACTC,QAAS,IAGLC,QAA0CC,gBAAgBb,OAAQc,YAAYC,YAAahB,QAC3FiB,QAAiC,IAAIC,QAErCC,KAAqBN,QAAQO,SAASC,UAAU,KACpDF,KAAKG,cAGLrB,OAAOW,QAAQW,OAAS,EAExBN,QAAQO,aAaJC,WAAa,IAA6BxB,OAAOW,QAcjDc,OAASC,OAAOC,OAAOf,QAAS,CACpCgB,KAAM7B,OAAO6B,MAAQ5B,OAAOO,GAE5B,QAAIN,GACF,OAAOD,OAAOC,IAChB,EAEA,QAAIC,GACF,OAAOF,OAAOE,IAChB,EAEA,QAAIE,GACF,OAAOJ,OAAOI,IAChB,EAEA,QAAIC,GACF,OAAOL,OAAOK,IAChB,EACAwB,WAAY,IAAc7B,OAAOU,QACjCoB,WA3CkBvB,IAAmCP,OAAOW,QAAQoB,KAAMC,GAAuBA,EAAEzB,KAAOA,IA4C1G0B,UA1CF,SAAmBC,QAEjBlC,OAAOW,QAAQwB,KAAKD,QAEpBlC,OAAOU,UACPM,QAAQoB,KAAKpC,OACf,EAqCEwB,sBACAa,aAlCoBC,QACpB,MAAMC,MAAgBf,aAAagB,QAAQF,OAC3C,IAAc,IAAVC,MAAc,MAAM,IAAIE,MAAM,6BAA6BH,MAAM/B,eAAe+B,MAAMV,kCAAkC5B,OAAOO,uCAGnIP,OAAOW,QAAQ+B,OAAOH,MAAO,GAE7BvC,OAAOU,UACPM,QAAQoB,KAAKpC,SA2BbgB,QAASA,QAAQ2B,eACjBC,UAAW,IAAkCC,0BAA0BpB,UAGzE,OAAOA,MACT"}
@@ -1,2 +1,2 @@
1
- import { TSpatialGridParams, TSpatialGridWrapper } from '@hellpig/anarchy-engine/Spatial/Models';
1
+ import { TSpatialGridParams, TSpatialGridWrapper } from '../Models';
2
2
  export declare function SpatialGridWrapper(params: TSpatialGridParams): TSpatialGridWrapper;