@esengine/ecs-framework 2.3.0 → 2.3.2

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 (490) hide show
  1. package/index.cjs +2 -0
  2. package/index.cjs.map +1 -0
  3. package/index.d.ts +13466 -0
  4. package/index.es5.js +4 -0
  5. package/index.es5.js.map +1 -0
  6. package/index.mjs +2 -0
  7. package/index.mjs.map +1 -0
  8. package/index.umd.js +4 -0
  9. package/index.umd.js.map +1 -0
  10. package/package.json +47 -84
  11. package/bin/Core/DI/Decorators.d.ts +0 -206
  12. package/bin/Core/DI/Decorators.d.ts.map +0 -1
  13. package/bin/Core/DI/Decorators.js +0 -253
  14. package/bin/Core/DI/Decorators.js.map +0 -1
  15. package/bin/Core/DI/index.d.ts +0 -8
  16. package/bin/Core/DI/index.d.ts.map +0 -1
  17. package/bin/Core/DI/index.js +0 -7
  18. package/bin/Core/DI/index.js.map +0 -1
  19. package/bin/Core/Plugin.d.ts +0 -112
  20. package/bin/Core/Plugin.d.ts.map +0 -1
  21. package/bin/Core/Plugin.js +0 -19
  22. package/bin/Core/Plugin.js.map +0 -1
  23. package/bin/Core/PluginManager.d.ts +0 -118
  24. package/bin/Core/PluginManager.d.ts.map +0 -1
  25. package/bin/Core/PluginManager.js +0 -229
  26. package/bin/Core/PluginManager.js.map +0 -1
  27. package/bin/Core/ServiceContainer.d.ts +0 -221
  28. package/bin/Core/ServiceContainer.d.ts.map +0 -1
  29. package/bin/Core/ServiceContainer.js +0 -352
  30. package/bin/Core/ServiceContainer.js.map +0 -1
  31. package/bin/Core.d.ts +0 -379
  32. package/bin/Core.d.ts.map +0 -1
  33. package/bin/Core.js +0 -553
  34. package/bin/Core.js.map +0 -1
  35. package/bin/ECS/Component.d.ts +0 -104
  36. package/bin/ECS/Component.d.ts.map +0 -1
  37. package/bin/ECS/Component.js +0 -105
  38. package/bin/ECS/Component.js.map +0 -1
  39. package/bin/ECS/Components/HierarchyComponent.d.ts +0 -46
  40. package/bin/ECS/Components/HierarchyComponent.d.ts.map +0 -1
  41. package/bin/ECS/Components/HierarchyComponent.js +0 -65
  42. package/bin/ECS/Components/HierarchyComponent.js.map +0 -1
  43. package/bin/ECS/Components/index.d.ts +0 -2
  44. package/bin/ECS/Components/index.d.ts.map +0 -1
  45. package/bin/ECS/Components/index.js +0 -2
  46. package/bin/ECS/Components/index.js.map +0 -1
  47. package/bin/ECS/Core/ArchetypeSystem.d.ts +0 -103
  48. package/bin/ECS/Core/ArchetypeSystem.d.ts.map +0 -1
  49. package/bin/ECS/Core/ArchetypeSystem.js +0 -244
  50. package/bin/ECS/Core/ArchetypeSystem.js.map +0 -1
  51. package/bin/ECS/Core/CommandBuffer.d.ts +0 -154
  52. package/bin/ECS/Core/CommandBuffer.d.ts.map +0 -1
  53. package/bin/ECS/Core/CommandBuffer.js +0 -244
  54. package/bin/ECS/Core/CommandBuffer.js.map +0 -1
  55. package/bin/ECS/Core/ComponentPool.d.ts +0 -139
  56. package/bin/ECS/Core/ComponentPool.d.ts.map +0 -1
  57. package/bin/ECS/Core/ComponentPool.js +0 -276
  58. package/bin/ECS/Core/ComponentPool.js.map +0 -1
  59. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.d.ts +0 -127
  60. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.d.ts.map +0 -1
  61. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.js +0 -235
  62. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.js.map +0 -1
  63. package/bin/ECS/Core/ComponentStorage.d.ts +0 -185
  64. package/bin/ECS/Core/ComponentStorage.d.ts.map +0 -1
  65. package/bin/ECS/Core/ComponentStorage.js +0 -321
  66. package/bin/ECS/Core/ComponentStorage.js.map +0 -1
  67. package/bin/ECS/Core/EntityLifecyclePolicy.d.ts +0 -26
  68. package/bin/ECS/Core/EntityLifecyclePolicy.d.ts.map +0 -1
  69. package/bin/ECS/Core/EntityLifecyclePolicy.js +0 -2
  70. package/bin/ECS/Core/EntityLifecyclePolicy.js.map +0 -1
  71. package/bin/ECS/Core/EventBus.d.ts +0 -210
  72. package/bin/ECS/Core/EventBus.d.ts.map +0 -1
  73. package/bin/ECS/Core/EventBus.js +0 -370
  74. package/bin/ECS/Core/EventBus.js.map +0 -1
  75. package/bin/ECS/Core/EventSystem.d.ts +0 -225
  76. package/bin/ECS/Core/EventSystem.d.ts.map +0 -1
  77. package/bin/ECS/Core/EventSystem.js +0 -448
  78. package/bin/ECS/Core/EventSystem.js.map +0 -1
  79. package/bin/ECS/Core/Events/index.d.ts +0 -3
  80. package/bin/ECS/Core/Events/index.d.ts.map +0 -1
  81. package/bin/ECS/Core/Events/index.js +0 -3
  82. package/bin/ECS/Core/Events/index.js.map +0 -1
  83. package/bin/ECS/Core/FluentAPI/ComponentBuilder.d.ts +0 -35
  84. package/bin/ECS/Core/FluentAPI/ComponentBuilder.d.ts.map +0 -1
  85. package/bin/ECS/Core/FluentAPI/ComponentBuilder.js +0 -48
  86. package/bin/ECS/Core/FluentAPI/ComponentBuilder.js.map +0 -1
  87. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.d.ts +0 -135
  88. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.d.ts.map +0 -1
  89. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.js +0 -166
  90. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.js.map +0 -1
  91. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.d.ts +0 -58
  92. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.d.ts.map +0 -1
  93. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.js +0 -85
  94. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.js.map +0 -1
  95. package/bin/ECS/Core/FluentAPI/EntityBuilder.d.ts +0 -110
  96. package/bin/ECS/Core/FluentAPI/EntityBuilder.d.ts.map +0 -1
  97. package/bin/ECS/Core/FluentAPI/EntityBuilder.js +0 -181
  98. package/bin/ECS/Core/FluentAPI/EntityBuilder.js.map +0 -1
  99. package/bin/ECS/Core/FluentAPI/SceneBuilder.d.ts +0 -53
  100. package/bin/ECS/Core/FluentAPI/SceneBuilder.d.ts.map +0 -1
  101. package/bin/ECS/Core/FluentAPI/SceneBuilder.js +0 -79
  102. package/bin/ECS/Core/FluentAPI/SceneBuilder.js.map +0 -1
  103. package/bin/ECS/Core/FluentAPI/index.d.ts +0 -6
  104. package/bin/ECS/Core/FluentAPI/index.d.ts.map +0 -1
  105. package/bin/ECS/Core/FluentAPI/index.js +0 -6
  106. package/bin/ECS/Core/FluentAPI/index.js.map +0 -1
  107. package/bin/ECS/Core/FluentAPI.d.ts +0 -2
  108. package/bin/ECS/Core/FluentAPI.d.ts.map +0 -1
  109. package/bin/ECS/Core/FluentAPI.js +0 -3
  110. package/bin/ECS/Core/FluentAPI.js.map +0 -1
  111. package/bin/ECS/Core/Query/TypedQuery.d.ts +0 -214
  112. package/bin/ECS/Core/Query/TypedQuery.d.ts.map +0 -1
  113. package/bin/ECS/Core/Query/TypedQuery.js +0 -294
  114. package/bin/ECS/Core/Query/TypedQuery.js.map +0 -1
  115. package/bin/ECS/Core/Query/index.d.ts +0 -3
  116. package/bin/ECS/Core/Query/index.d.ts.map +0 -1
  117. package/bin/ECS/Core/Query/index.js +0 -3
  118. package/bin/ECS/Core/Query/index.js.map +0 -1
  119. package/bin/ECS/Core/QuerySystem.d.ts +0 -458
  120. package/bin/ECS/Core/QuerySystem.d.ts.map +0 -1
  121. package/bin/ECS/Core/QuerySystem.js +0 -1069
  122. package/bin/ECS/Core/QuerySystem.js.map +0 -1
  123. package/bin/ECS/Core/QueryTypes.d.ts +0 -34
  124. package/bin/ECS/Core/QueryTypes.d.ts.map +0 -1
  125. package/bin/ECS/Core/QueryTypes.js +0 -13
  126. package/bin/ECS/Core/QueryTypes.js.map +0 -1
  127. package/bin/ECS/Core/ReactiveQuery.d.ts +0 -211
  128. package/bin/ECS/Core/ReactiveQuery.d.ts.map +0 -1
  129. package/bin/ECS/Core/ReactiveQuery.js +0 -401
  130. package/bin/ECS/Core/ReactiveQuery.js.map +0 -1
  131. package/bin/ECS/Core/ReferenceTracker.d.ts +0 -111
  132. package/bin/ECS/Core/ReferenceTracker.d.ts.map +0 -1
  133. package/bin/ECS/Core/ReferenceTracker.js +0 -254
  134. package/bin/ECS/Core/ReferenceTracker.js.map +0 -1
  135. package/bin/ECS/Core/SoASerializer.d.ts +0 -28
  136. package/bin/ECS/Core/SoASerializer.d.ts.map +0 -1
  137. package/bin/ECS/Core/SoASerializer.js +0 -85
  138. package/bin/ECS/Core/SoASerializer.js.map +0 -1
  139. package/bin/ECS/Core/SoAStorage.d.ts +0 -129
  140. package/bin/ECS/Core/SoAStorage.d.ts.map +0 -1
  141. package/bin/ECS/Core/SoAStorage.js +0 -685
  142. package/bin/ECS/Core/SoAStorage.js.map +0 -1
  143. package/bin/ECS/Core/SoATypeRegistry.d.ts +0 -50
  144. package/bin/ECS/Core/SoATypeRegistry.d.ts.map +0 -1
  145. package/bin/ECS/Core/SoATypeRegistry.js +0 -135
  146. package/bin/ECS/Core/SoATypeRegistry.js.map +0 -1
  147. package/bin/ECS/Core/Storage/index.d.ts +0 -4
  148. package/bin/ECS/Core/Storage/index.d.ts.map +0 -1
  149. package/bin/ECS/Core/Storage/index.js +0 -4
  150. package/bin/ECS/Core/Storage/index.js.map +0 -1
  151. package/bin/ECS/Core/StorageDecorators.d.ts +0 -20
  152. package/bin/ECS/Core/StorageDecorators.d.ts.map +0 -1
  153. package/bin/ECS/Core/StorageDecorators.js +0 -27
  154. package/bin/ECS/Core/StorageDecorators.js.map +0 -1
  155. package/bin/ECS/CoreEvents.d.ts +0 -131
  156. package/bin/ECS/CoreEvents.d.ts.map +0 -1
  157. package/bin/ECS/CoreEvents.js +0 -163
  158. package/bin/ECS/CoreEvents.js.map +0 -1
  159. package/bin/ECS/Decorators/EntityRefDecorator.d.ts +0 -46
  160. package/bin/ECS/Decorators/EntityRefDecorator.d.ts.map +0 -1
  161. package/bin/ECS/Decorators/EntityRefDecorator.js +0 -118
  162. package/bin/ECS/Decorators/EntityRefDecorator.js.map +0 -1
  163. package/bin/ECS/Decorators/PropertyDecorator.d.ts +0 -168
  164. package/bin/ECS/Decorators/PropertyDecorator.d.ts.map +0 -1
  165. package/bin/ECS/Decorators/PropertyDecorator.js +0 -40
  166. package/bin/ECS/Decorators/PropertyDecorator.js.map +0 -1
  167. package/bin/ECS/Decorators/TypeDecorators.d.ts +0 -124
  168. package/bin/ECS/Decorators/TypeDecorators.d.ts.map +0 -1
  169. package/bin/ECS/Decorators/TypeDecorators.js +0 -151
  170. package/bin/ECS/Decorators/TypeDecorators.js.map +0 -1
  171. package/bin/ECS/Decorators/index.d.ts +0 -7
  172. package/bin/ECS/Decorators/index.d.ts.map +0 -1
  173. package/bin/ECS/Decorators/index.js +0 -4
  174. package/bin/ECS/Decorators/index.js.map +0 -1
  175. package/bin/ECS/Entity.d.ts +0 -415
  176. package/bin/ECS/Entity.d.ts.map +0 -1
  177. package/bin/ECS/Entity.js +0 -683
  178. package/bin/ECS/Entity.js.map +0 -1
  179. package/bin/ECS/EntityTags.d.ts +0 -71
  180. package/bin/ECS/EntityTags.d.ts.map +0 -1
  181. package/bin/ECS/EntityTags.js +0 -82
  182. package/bin/ECS/EntityTags.js.map +0 -1
  183. package/bin/ECS/IScene.d.ts +0 -308
  184. package/bin/ECS/IScene.d.ts.map +0 -1
  185. package/bin/ECS/IScene.js +0 -2
  186. package/bin/ECS/IScene.js.map +0 -1
  187. package/bin/ECS/Scene.d.ts +0 -799
  188. package/bin/ECS/Scene.d.ts.map +0 -1
  189. package/bin/ECS/Scene.js +0 -1203
  190. package/bin/ECS/Scene.js.map +0 -1
  191. package/bin/ECS/SceneManager.d.ts +0 -197
  192. package/bin/ECS/SceneManager.d.ts.map +0 -1
  193. package/bin/ECS/SceneManager.js +0 -264
  194. package/bin/ECS/SceneManager.js.map +0 -1
  195. package/bin/ECS/Serialization/ComponentSerializer.d.ts +0 -106
  196. package/bin/ECS/Serialization/ComponentSerializer.d.ts.map +0 -1
  197. package/bin/ECS/Serialization/ComponentSerializer.js +0 -251
  198. package/bin/ECS/Serialization/ComponentSerializer.js.map +0 -1
  199. package/bin/ECS/Serialization/EntitySerializer.d.ts +0 -111
  200. package/bin/ECS/Serialization/EntitySerializer.d.ts.map +0 -1
  201. package/bin/ECS/Serialization/EntitySerializer.js +0 -155
  202. package/bin/ECS/Serialization/EntitySerializer.js.map +0 -1
  203. package/bin/ECS/Serialization/IncrementalSerializer.d.ts +0 -259
  204. package/bin/ECS/Serialization/IncrementalSerializer.d.ts.map +0 -1
  205. package/bin/ECS/Serialization/IncrementalSerializer.js +0 -500
  206. package/bin/ECS/Serialization/IncrementalSerializer.js.map +0 -1
  207. package/bin/ECS/Serialization/SceneSerializer.d.ts +0 -213
  208. package/bin/ECS/Serialization/SceneSerializer.d.ts.map +0 -1
  209. package/bin/ECS/Serialization/SceneSerializer.js +0 -387
  210. package/bin/ECS/Serialization/SceneSerializer.js.map +0 -1
  211. package/bin/ECS/Serialization/SerializationDecorators.d.ts +0 -136
  212. package/bin/ECS/Serialization/SerializationDecorators.d.ts.map +0 -1
  213. package/bin/ECS/Serialization/SerializationDecorators.js +0 -216
  214. package/bin/ECS/Serialization/SerializationDecorators.js.map +0 -1
  215. package/bin/ECS/Serialization/VersionMigration.d.ts +0 -156
  216. package/bin/ECS/Serialization/VersionMigration.d.ts.map +0 -1
  217. package/bin/ECS/Serialization/VersionMigration.js +0 -279
  218. package/bin/ECS/Serialization/VersionMigration.js.map +0 -1
  219. package/bin/ECS/Serialization/index.d.ts +0 -18
  220. package/bin/ECS/Serialization/index.d.ts.map +0 -1
  221. package/bin/ECS/Serialization/index.js +0 -18
  222. package/bin/ECS/Serialization/index.js.map +0 -1
  223. package/bin/ECS/Systems/EntityCache.d.ts +0 -114
  224. package/bin/ECS/Systems/EntityCache.d.ts.map +0 -1
  225. package/bin/ECS/Systems/EntityCache.js +0 -145
  226. package/bin/ECS/Systems/EntityCache.js.map +0 -1
  227. package/bin/ECS/Systems/EntitySystem.d.ts +0 -591
  228. package/bin/ECS/Systems/EntitySystem.d.ts.map +0 -1
  229. package/bin/ECS/Systems/EntitySystem.js +0 -1102
  230. package/bin/ECS/Systems/EntitySystem.js.map +0 -1
  231. package/bin/ECS/Systems/HierarchySystem.d.ts +0 -155
  232. package/bin/ECS/Systems/HierarchySystem.d.ts.map +0 -1
  233. package/bin/ECS/Systems/HierarchySystem.js +0 -498
  234. package/bin/ECS/Systems/HierarchySystem.js.map +0 -1
  235. package/bin/ECS/Systems/IntervalSystem.d.ts +0 -33
  236. package/bin/ECS/Systems/IntervalSystem.d.ts.map +0 -1
  237. package/bin/ECS/Systems/IntervalSystem.js +0 -50
  238. package/bin/ECS/Systems/IntervalSystem.js.map +0 -1
  239. package/bin/ECS/Systems/PassiveSystem.d.ts +0 -17
  240. package/bin/ECS/Systems/PassiveSystem.d.ts.map +0 -1
  241. package/bin/ECS/Systems/PassiveSystem.js +0 -19
  242. package/bin/ECS/Systems/PassiveSystem.js.map +0 -1
  243. package/bin/ECS/Systems/ProcessingSystem.d.ts +0 -21
  244. package/bin/ECS/Systems/ProcessingSystem.d.ts.map +0 -1
  245. package/bin/ECS/Systems/ProcessingSystem.js +0 -20
  246. package/bin/ECS/Systems/ProcessingSystem.js.map +0 -1
  247. package/bin/ECS/Systems/WorkerEntitySystem.d.ts +0 -313
  248. package/bin/ECS/Systems/WorkerEntitySystem.d.ts.map +0 -1
  249. package/bin/ECS/Systems/WorkerEntitySystem.js +0 -792
  250. package/bin/ECS/Systems/WorkerEntitySystem.js.map +0 -1
  251. package/bin/ECS/Systems/index.d.ts +0 -8
  252. package/bin/ECS/Systems/index.d.ts.map +0 -1
  253. package/bin/ECS/Systems/index.js +0 -8
  254. package/bin/ECS/Systems/index.js.map +0 -1
  255. package/bin/ECS/TypedEntity.d.ts +0 -192
  256. package/bin/ECS/TypedEntity.d.ts.map +0 -1
  257. package/bin/ECS/TypedEntity.js +0 -254
  258. package/bin/ECS/TypedEntity.js.map +0 -1
  259. package/bin/ECS/Utils/BigIntCompatibility.d.ts +0 -151
  260. package/bin/ECS/Utils/BigIntCompatibility.d.ts.map +0 -1
  261. package/bin/ECS/Utils/BigIntCompatibility.js +0 -476
  262. package/bin/ECS/Utils/BigIntCompatibility.js.map +0 -1
  263. package/bin/ECS/Utils/BitMaskHashMap.d.ts +0 -28
  264. package/bin/ECS/Utils/BitMaskHashMap.d.ts.map +0 -1
  265. package/bin/ECS/Utils/BitMaskHashMap.js +0 -127
  266. package/bin/ECS/Utils/BitMaskHashMap.js.map +0 -1
  267. package/bin/ECS/Utils/Bits.d.ts +0 -154
  268. package/bin/ECS/Utils/Bits.d.ts.map +0 -1
  269. package/bin/ECS/Utils/Bits.js +0 -331
  270. package/bin/ECS/Utils/Bits.js.map +0 -1
  271. package/bin/ECS/Utils/ComponentSparseSet.d.ts +0 -143
  272. package/bin/ECS/Utils/ComponentSparseSet.d.ts.map +0 -1
  273. package/bin/ECS/Utils/ComponentSparseSet.js +0 -347
  274. package/bin/ECS/Utils/ComponentSparseSet.js.map +0 -1
  275. package/bin/ECS/Utils/EntityList.d.ts +0 -115
  276. package/bin/ECS/Utils/EntityList.d.ts.map +0 -1
  277. package/bin/ECS/Utils/EntityList.js +0 -258
  278. package/bin/ECS/Utils/EntityList.js.map +0 -1
  279. package/bin/ECS/Utils/EntityProcessorList.d.ts +0 -56
  280. package/bin/ECS/Utils/EntityProcessorList.d.ts.map +0 -1
  281. package/bin/ECS/Utils/EntityProcessorList.js +0 -113
  282. package/bin/ECS/Utils/EntityProcessorList.js.map +0 -1
  283. package/bin/ECS/Utils/IdentifierPool.d.ts +0 -203
  284. package/bin/ECS/Utils/IdentifierPool.d.ts.map +0 -1
  285. package/bin/ECS/Utils/IdentifierPool.js +0 -325
  286. package/bin/ECS/Utils/IdentifierPool.js.map +0 -1
  287. package/bin/ECS/Utils/Matcher.d.ts +0 -171
  288. package/bin/ECS/Utils/Matcher.d.ts.map +0 -1
  289. package/bin/ECS/Utils/Matcher.js +0 -293
  290. package/bin/ECS/Utils/Matcher.js.map +0 -1
  291. package/bin/ECS/Utils/SparseSet.d.ts +0 -170
  292. package/bin/ECS/Utils/SparseSet.d.ts.map +0 -1
  293. package/bin/ECS/Utils/SparseSet.js +0 -280
  294. package/bin/ECS/Utils/SparseSet.js.map +0 -1
  295. package/bin/ECS/Utils/index.d.ts +0 -9
  296. package/bin/ECS/Utils/index.d.ts.map +0 -1
  297. package/bin/ECS/Utils/index.js +0 -10
  298. package/bin/ECS/Utils/index.js.map +0 -1
  299. package/bin/ECS/World.d.ts +0 -238
  300. package/bin/ECS/World.d.ts.map +0 -1
  301. package/bin/ECS/World.js +0 -416
  302. package/bin/ECS/World.js.map +0 -1
  303. package/bin/ECS/WorldManager.d.ts +0 -224
  304. package/bin/ECS/WorldManager.d.ts.map +0 -1
  305. package/bin/ECS/WorldManager.js +0 -365
  306. package/bin/ECS/WorldManager.js.map +0 -1
  307. package/bin/ECS/index.d.ts +0 -26
  308. package/bin/ECS/index.d.ts.map +0 -1
  309. package/bin/ECS/index.js +0 -21
  310. package/bin/ECS/index.js.map +0 -1
  311. package/bin/Platform/IPlatformAdapter.d.ts +0 -169
  312. package/bin/Platform/IPlatformAdapter.d.ts.map +0 -1
  313. package/bin/Platform/IPlatformAdapter.js +0 -2
  314. package/bin/Platform/IPlatformAdapter.js.map +0 -1
  315. package/bin/Platform/PlatformDetector.d.ts +0 -56
  316. package/bin/Platform/PlatformDetector.d.ts.map +0 -1
  317. package/bin/Platform/PlatformDetector.js +0 -247
  318. package/bin/Platform/PlatformDetector.js.map +0 -1
  319. package/bin/Platform/PlatformManager.d.ts +0 -50
  320. package/bin/Platform/PlatformManager.d.ts.map +0 -1
  321. package/bin/Platform/PlatformManager.js +0 -114
  322. package/bin/Platform/PlatformManager.js.map +0 -1
  323. package/bin/Platform/index.d.ts +0 -19
  324. package/bin/Platform/index.d.ts.map +0 -1
  325. package/bin/Platform/index.js +0 -29
  326. package/bin/Platform/index.js.map +0 -1
  327. package/bin/Plugins/DebugPlugin.d.ts +0 -156
  328. package/bin/Plugins/DebugPlugin.d.ts.map +0 -1
  329. package/bin/Plugins/DebugPlugin.js +0 -248
  330. package/bin/Plugins/DebugPlugin.js.map +0 -1
  331. package/bin/Plugins/index.d.ts +0 -2
  332. package/bin/Plugins/index.d.ts.map +0 -1
  333. package/bin/Plugins/index.js +0 -2
  334. package/bin/Plugins/index.js.map +0 -1
  335. package/bin/Types/IUpdatable.d.ts +0 -18
  336. package/bin/Types/IUpdatable.d.ts.map +0 -1
  337. package/bin/Types/IUpdatable.js +0 -7
  338. package/bin/Types/IUpdatable.js.map +0 -1
  339. package/bin/Types/TypeHelpers.d.ts +0 -238
  340. package/bin/Types/TypeHelpers.d.ts.map +0 -1
  341. package/bin/Types/TypeHelpers.js +0 -19
  342. package/bin/Types/TypeHelpers.js.map +0 -1
  343. package/bin/Types/index.d.ts +0 -466
  344. package/bin/Types/index.d.ts.map +0 -1
  345. package/bin/Types/index.js +0 -7
  346. package/bin/Types/index.js.map +0 -1
  347. package/bin/Utils/BinarySerializer.d.ts +0 -23
  348. package/bin/Utils/BinarySerializer.d.ts.map +0 -1
  349. package/bin/Utils/BinarySerializer.js +0 -100
  350. package/bin/Utils/BinarySerializer.js.map +0 -1
  351. package/bin/Utils/Debug/AdvancedProfilerCollector.d.ts +0 -153
  352. package/bin/Utils/Debug/AdvancedProfilerCollector.d.ts.map +0 -1
  353. package/bin/Utils/Debug/AdvancedProfilerCollector.js +0 -406
  354. package/bin/Utils/Debug/AdvancedProfilerCollector.js.map +0 -1
  355. package/bin/Utils/Debug/ComponentDataCollector.d.ts +0 -32
  356. package/bin/Utils/Debug/ComponentDataCollector.d.ts.map +0 -1
  357. package/bin/Utils/Debug/ComponentDataCollector.js +0 -250
  358. package/bin/Utils/Debug/ComponentDataCollector.js.map +0 -1
  359. package/bin/Utils/Debug/DebugConfigService.d.ts +0 -16
  360. package/bin/Utils/Debug/DebugConfigService.d.ts.map +0 -1
  361. package/bin/Utils/Debug/DebugConfigService.js +0 -42
  362. package/bin/Utils/Debug/DebugConfigService.js.map +0 -1
  363. package/bin/Utils/Debug/DebugManager.d.ts +0 -131
  364. package/bin/Utils/Debug/DebugManager.d.ts.map +0 -1
  365. package/bin/Utils/Debug/DebugManager.js +0 -848
  366. package/bin/Utils/Debug/DebugManager.js.map +0 -1
  367. package/bin/Utils/Debug/EntityDataCollector.d.ts +0 -115
  368. package/bin/Utils/Debug/EntityDataCollector.d.ts.map +0 -1
  369. package/bin/Utils/Debug/EntityDataCollector.js +0 -870
  370. package/bin/Utils/Debug/EntityDataCollector.js.map +0 -1
  371. package/bin/Utils/Debug/PerformanceDataCollector.d.ts +0 -31
  372. package/bin/Utils/Debug/PerformanceDataCollector.d.ts.map +0 -1
  373. package/bin/Utils/Debug/PerformanceDataCollector.js +0 -203
  374. package/bin/Utils/Debug/PerformanceDataCollector.js.map +0 -1
  375. package/bin/Utils/Debug/SceneDataCollector.d.ts +0 -18
  376. package/bin/Utils/Debug/SceneDataCollector.d.ts.map +0 -1
  377. package/bin/Utils/Debug/SceneDataCollector.js +0 -43
  378. package/bin/Utils/Debug/SceneDataCollector.js.map +0 -1
  379. package/bin/Utils/Debug/SystemDataCollector.d.ts +0 -14
  380. package/bin/Utils/Debug/SystemDataCollector.d.ts.map +0 -1
  381. package/bin/Utils/Debug/SystemDataCollector.js +0 -60
  382. package/bin/Utils/Debug/SystemDataCollector.js.map +0 -1
  383. package/bin/Utils/Debug/WebSocketManager.d.ts +0 -54
  384. package/bin/Utils/Debug/WebSocketManager.d.ts.map +0 -1
  385. package/bin/Utils/Debug/WebSocketManager.js +0 -141
  386. package/bin/Utils/Debug/WebSocketManager.js.map +0 -1
  387. package/bin/Utils/Debug/index.d.ts +0 -11
  388. package/bin/Utils/Debug/index.d.ts.map +0 -1
  389. package/bin/Utils/Debug/index.js +0 -10
  390. package/bin/Utils/Debug/index.js.map +0 -1
  391. package/bin/Utils/Emitter.d.ts +0 -61
  392. package/bin/Utils/Emitter.d.ts.map +0 -1
  393. package/bin/Utils/Emitter.js +0 -101
  394. package/bin/Utils/Emitter.js.map +0 -1
  395. package/bin/Utils/Extensions/NumberExtension.d.ts +0 -13
  396. package/bin/Utils/Extensions/NumberExtension.d.ts.map +0 -1
  397. package/bin/Utils/Extensions/NumberExtension.js +0 -17
  398. package/bin/Utils/Extensions/NumberExtension.js.map +0 -1
  399. package/bin/Utils/Extensions/TypeUtils.d.ts +0 -13
  400. package/bin/Utils/Extensions/TypeUtils.d.ts.map +0 -1
  401. package/bin/Utils/Extensions/TypeUtils.js +0 -15
  402. package/bin/Utils/Extensions/TypeUtils.js.map +0 -1
  403. package/bin/Utils/Extensions/index.d.ts +0 -3
  404. package/bin/Utils/Extensions/index.d.ts.map +0 -1
  405. package/bin/Utils/Extensions/index.js +0 -4
  406. package/bin/Utils/Extensions/index.js.map +0 -1
  407. package/bin/Utils/GlobalManager.d.ts +0 -29
  408. package/bin/Utils/GlobalManager.d.ts.map +0 -1
  409. package/bin/Utils/GlobalManager.js +0 -50
  410. package/bin/Utils/GlobalManager.js.map +0 -1
  411. package/bin/Utils/Logger/ConsoleLogger.d.ts +0 -74
  412. package/bin/Utils/Logger/ConsoleLogger.d.ts.map +0 -1
  413. package/bin/Utils/Logger/ConsoleLogger.js +0 -187
  414. package/bin/Utils/Logger/ConsoleLogger.js.map +0 -1
  415. package/bin/Utils/Logger/Constants.d.ts +0 -36
  416. package/bin/Utils/Logger/Constants.d.ts.map +0 -1
  417. package/bin/Utils/Logger/Constants.js +0 -40
  418. package/bin/Utils/Logger/Constants.js.map +0 -1
  419. package/bin/Utils/Logger/LoggerManager.d.ts +0 -91
  420. package/bin/Utils/Logger/LoggerManager.d.ts.map +0 -1
  421. package/bin/Utils/Logger/LoggerManager.js +0 -167
  422. package/bin/Utils/Logger/LoggerManager.js.map +0 -1
  423. package/bin/Utils/Logger/Types.d.ts +0 -40
  424. package/bin/Utils/Logger/Types.d.ts.map +0 -1
  425. package/bin/Utils/Logger/Types.js +0 -2
  426. package/bin/Utils/Logger/Types.js.map +0 -1
  427. package/bin/Utils/Logger/index.d.ts +0 -5
  428. package/bin/Utils/Logger/index.d.ts.map +0 -1
  429. package/bin/Utils/Logger/index.js +0 -5
  430. package/bin/Utils/Logger/index.js.map +0 -1
  431. package/bin/Utils/PerformanceMonitor.d.ts +0 -196
  432. package/bin/Utils/PerformanceMonitor.d.ts.map +0 -1
  433. package/bin/Utils/PerformanceMonitor.js +0 -244
  434. package/bin/Utils/PerformanceMonitor.js.map +0 -1
  435. package/bin/Utils/Pool/IPoolable.d.ts +0 -29
  436. package/bin/Utils/Pool/IPoolable.d.ts.map +0 -1
  437. package/bin/Utils/Pool/IPoolable.js +0 -2
  438. package/bin/Utils/Pool/IPoolable.js.map +0 -1
  439. package/bin/Utils/Pool/Pool.d.ts +0 -109
  440. package/bin/Utils/Pool/Pool.d.ts.map +0 -1
  441. package/bin/Utils/Pool/Pool.js +0 -238
  442. package/bin/Utils/Pool/Pool.js.map +0 -1
  443. package/bin/Utils/Pool/PoolManager.d.ts +0 -96
  444. package/bin/Utils/Pool/PoolManager.d.ts.map +0 -1
  445. package/bin/Utils/Pool/PoolManager.js +0 -199
  446. package/bin/Utils/Pool/PoolManager.js.map +0 -1
  447. package/bin/Utils/Pool/index.d.ts +0 -4
  448. package/bin/Utils/Pool/index.d.ts.map +0 -1
  449. package/bin/Utils/Pool/index.js +0 -4
  450. package/bin/Utils/Pool/index.js.map +0 -1
  451. package/bin/Utils/Profiler/AutoProfiler.d.ts +0 -160
  452. package/bin/Utils/Profiler/AutoProfiler.d.ts.map +0 -1
  453. package/bin/Utils/Profiler/AutoProfiler.js +0 -503
  454. package/bin/Utils/Profiler/AutoProfiler.js.map +0 -1
  455. package/bin/Utils/Profiler/ProfilerSDK.d.ts +0 -175
  456. package/bin/Utils/Profiler/ProfilerSDK.d.ts.map +0 -1
  457. package/bin/Utils/Profiler/ProfilerSDK.js +0 -727
  458. package/bin/Utils/Profiler/ProfilerSDK.js.map +0 -1
  459. package/bin/Utils/Profiler/ProfilerTypes.d.ts +0 -218
  460. package/bin/Utils/Profiler/ProfilerTypes.d.ts.map +0 -1
  461. package/bin/Utils/Profiler/ProfilerTypes.js +0 -47
  462. package/bin/Utils/Profiler/ProfilerTypes.js.map +0 -1
  463. package/bin/Utils/Profiler/index.d.ts +0 -8
  464. package/bin/Utils/Profiler/index.d.ts.map +0 -1
  465. package/bin/Utils/Profiler/index.js +0 -7
  466. package/bin/Utils/Profiler/index.js.map +0 -1
  467. package/bin/Utils/Time.d.ts +0 -47
  468. package/bin/Utils/Time.d.ts.map +0 -1
  469. package/bin/Utils/Time.js +0 -64
  470. package/bin/Utils/Time.js.map +0 -1
  471. package/bin/Utils/Timers/ITimer.d.ts +0 -16
  472. package/bin/Utils/Timers/ITimer.d.ts.map +0 -1
  473. package/bin/Utils/Timers/ITimer.js +0 -2
  474. package/bin/Utils/Timers/ITimer.js.map +0 -1
  475. package/bin/Utils/Timers/Timer.d.ts +0 -30
  476. package/bin/Utils/Timers/Timer.d.ts.map +0 -1
  477. package/bin/Utils/Timers/Timer.js +0 -58
  478. package/bin/Utils/Timers/Timer.js.map +0 -1
  479. package/bin/Utils/Timers/TimerManager.d.ts +0 -26
  480. package/bin/Utils/Timers/TimerManager.d.ts.map +0 -1
  481. package/bin/Utils/Timers/TimerManager.js +0 -48
  482. package/bin/Utils/Timers/TimerManager.js.map +0 -1
  483. package/bin/Utils/index.d.ts +0 -11
  484. package/bin/Utils/index.d.ts.map +0 -1
  485. package/bin/Utils/index.js +0 -11
  486. package/bin/Utils/index.js.map +0 -1
  487. package/bin/index.d.ts +0 -29
  488. package/bin/index.d.ts.map +0 -1
  489. package/bin/index.js +0 -36
  490. package/bin/index.js.map +0 -1
@@ -1,214 +0,0 @@
1
- /**
2
- * 类型安全的Query查询系统
3
- *
4
- * 提供完整的TypeScript类型推断,在编译时确保类型安全
5
- */
6
- import type { Entity } from '../../Entity';
7
- import type { ComponentConstructor } from '../../../Types/TypeHelpers';
8
- import { Matcher, type QueryCondition } from '../../Utils/Matcher';
9
- /**
10
- * 类型安全的查询结果
11
- *
12
- * 根据查询条件自动推断实体必定拥有的组件类型
13
- */
14
- export declare class TypedQueryResult<TAll extends readonly ComponentConstructor[]> {
15
- private _entities;
16
- private _componentTypes;
17
- constructor(entities: readonly Entity[], componentTypes: TAll);
18
- /**
19
- * 获取实体列表
20
- */
21
- get entities(): readonly Entity[];
22
- /**
23
- * 实体数量
24
- */
25
- get length(): number;
26
- /**
27
- * 遍历所有实体
28
- *
29
- * @example
30
- * ```typescript
31
- * query.forEach((entity) => {
32
- * // entity.getComponent返回类型自动推断
33
- * const pos = entity.getComponent(Position); // Position类型
34
- * const vel = entity.getComponent(Velocity); // Velocity类型
35
- * });
36
- * ```
37
- */
38
- forEach(callback: (entity: Entity, index: number) => void): void;
39
- /**
40
- * 映射转换实体
41
- */
42
- map<R>(callback: (entity: Entity, index: number) => R): R[];
43
- /**
44
- * 过滤实体
45
- */
46
- filter(predicate: (entity: Entity, index: number) => boolean): TypedQueryResult<TAll>;
47
- /**
48
- * 查找第一个匹配的实体
49
- */
50
- find(predicate: (entity: Entity, index: number) => boolean): Entity | undefined;
51
- /**
52
- * 检查是否存在匹配的实体
53
- */
54
- some(predicate: (entity: Entity, index: number) => boolean): boolean;
55
- /**
56
- * 检查是否所有实体都匹配
57
- */
58
- every(predicate: (entity: Entity, index: number) => boolean): boolean;
59
- /**
60
- * 获取指定索引的实体
61
- */
62
- get(index: number): Entity | undefined;
63
- /**
64
- * 获取第一个实体
65
- */
66
- get first(): Entity | undefined;
67
- /**
68
- * 获取最后一个实体
69
- */
70
- get last(): Entity | undefined;
71
- /**
72
- * 检查查询结果是否为空
73
- */
74
- get isEmpty(): boolean;
75
- /**
76
- * 转换为数组
77
- */
78
- toArray(): Entity[];
79
- /**
80
- * 获取组件类型信息(用于调试)
81
- */
82
- getComponentTypes(): readonly ComponentConstructor[];
83
- /**
84
- * 迭代器支持
85
- */
86
- [Symbol.iterator](): Iterator<Entity>;
87
- }
88
- /**
89
- * 类型安全的查询构建器
90
- *
91
- * 支持链式调用,自动推断查询结果的类型
92
- *
93
- * @example
94
- * ```typescript
95
- * // 基础查询
96
- * const query = new TypedQueryBuilder()
97
- * .withAll(Position, Velocity)
98
- * .build();
99
- *
100
- * // 复杂查询
101
- * const complexQuery = new TypedQueryBuilder()
102
- * .withAll(Transform, Renderer)
103
- * .withAny(BoxCollider, CircleCollider)
104
- * .withNone(Disabled)
105
- * .withTag(EntityTags.Enemy)
106
- * .build();
107
- * ```
108
- */
109
- export declare class TypedQueryBuilder<TAll extends readonly ComponentConstructor[] = [], TAny extends readonly ComponentConstructor[] = [], TNone extends readonly ComponentConstructor[] = []> {
110
- private _all;
111
- private _any;
112
- private _none;
113
- private _tag?;
114
- private _name?;
115
- constructor(all?: TAll, any?: TAny, none?: TNone, tag?: number, name?: string);
116
- /**
117
- * 要求实体拥有所有指定的组件
118
- *
119
- * @param types 组件类型
120
- * @returns 新的查询构建器,类型参数更新
121
- */
122
- withAll<TNewAll extends readonly ComponentConstructor[]>(...types: TNewAll): TypedQueryBuilder<readonly [...TAll, ...TNewAll], TAny, TNone>;
123
- /**
124
- * 要求实体至少拥有一个指定的组件
125
- *
126
- * @param types 组件类型
127
- * @returns 新的查询构建器
128
- */
129
- withAny<TNewAny extends readonly ComponentConstructor[]>(...types: TNewAny): TypedQueryBuilder<TAll, readonly [...TAny, ...TNewAny], TNone>;
130
- /**
131
- * 排除拥有指定组件的实体
132
- *
133
- * @param types 组件类型
134
- * @returns 新的查询构建器
135
- */
136
- withNone<TNewNone extends readonly ComponentConstructor[]>(...types: TNewNone): TypedQueryBuilder<TAll, TAny, readonly [...TNone, ...TNewNone]>;
137
- /**
138
- * 按标签过滤实体
139
- *
140
- * @param tag 标签值
141
- * @returns 新的查询构建器
142
- */
143
- withTag(tag: number): TypedQueryBuilder<TAll, TAny, TNone>;
144
- /**
145
- * 按名称过滤实体
146
- *
147
- * @param name 实体名称
148
- * @returns 新的查询构建器
149
- */
150
- withName(name: string): TypedQueryBuilder<TAll, TAny, TNone>;
151
- /**
152
- * 构建Matcher对象
153
- *
154
- * @returns Matcher实例,用于传统查询API
155
- */
156
- buildMatcher(): Matcher;
157
- /**
158
- * 获取查询条件
159
- *
160
- * @returns 查询条件对象
161
- */
162
- getCondition(): QueryCondition;
163
- /**
164
- * 获取required组件类型(用于类型推断)
165
- */
166
- getRequiredTypes(): TAll;
167
- /**
168
- * 克隆查询构建器
169
- */
170
- clone(): TypedQueryBuilder<TAll, TAny, TNone>;
171
- }
172
- /**
173
- * 创建类型安全的查询构建器
174
- *
175
- * @example
176
- * ```typescript
177
- * const query = createQuery()
178
- * .withAll(Position, Velocity)
179
- * .withNone(Disabled);
180
- *
181
- * // 在System或Scene中使用
182
- * const entities = scene.query(query);
183
- * entities.forEach(entity => {
184
- * const pos = entity.getComponent(Position); // 自动推断为Position
185
- * const vel = entity.getComponent(Velocity); // 自动推断为Velocity
186
- * });
187
- * ```
188
- */
189
- export declare function createQuery(): TypedQueryBuilder<[], [], []>;
190
- /**
191
- * 创建单组件查询的便捷方法
192
- *
193
- * @param componentType 组件类型
194
- * @returns 查询构建器
195
- *
196
- * @example
197
- * ```typescript
198
- * const healthEntities = queryFor(HealthComponent);
199
- * ```
200
- */
201
- export declare function queryFor<T extends ComponentConstructor>(componentType: T): TypedQueryBuilder<readonly [T], [], []>;
202
- /**
203
- * 创建多组件查询的便捷方法
204
- *
205
- * @param types 组件类型数组
206
- * @returns 查询构建器
207
- *
208
- * @example
209
- * ```typescript
210
- * const movableEntities = queryForAll(Position, Velocity);
211
- * ```
212
- */
213
- export declare function queryForAll<T extends readonly ComponentConstructor[]>(...types: T): TypedQueryBuilder<T, [], []>;
214
- //# sourceMappingURL=TypedQuery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TypedQuery.d.ts","sourceRoot":"","sources":["../../../../src/ECS/Core/Query/TypedQuery.ts"],"names":[],"mappings":"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"}
@@ -1,294 +0,0 @@
1
- /**
2
- * 类型安全的Query查询系统
3
- *
4
- * 提供完整的TypeScript类型推断,在编译时确保类型安全
5
- */
6
- import { Matcher } from '../../Utils/Matcher';
7
- /**
8
- * 类型安全的查询结果
9
- *
10
- * 根据查询条件自动推断实体必定拥有的组件类型
11
- */
12
- export class TypedQueryResult {
13
- constructor(entities, componentTypes) {
14
- this._entities = entities;
15
- this._componentTypes = componentTypes;
16
- }
17
- /**
18
- * 获取实体列表
19
- */
20
- get entities() {
21
- return this._entities;
22
- }
23
- /**
24
- * 实体数量
25
- */
26
- get length() {
27
- return this._entities.length;
28
- }
29
- /**
30
- * 遍历所有实体
31
- *
32
- * @example
33
- * ```typescript
34
- * query.forEach((entity) => {
35
- * // entity.getComponent返回类型自动推断
36
- * const pos = entity.getComponent(Position); // Position类型
37
- * const vel = entity.getComponent(Velocity); // Velocity类型
38
- * });
39
- * ```
40
- */
41
- forEach(callback) {
42
- this._entities.forEach(callback);
43
- }
44
- /**
45
- * 映射转换实体
46
- */
47
- map(callback) {
48
- return this._entities.map(callback);
49
- }
50
- /**
51
- * 过滤实体
52
- */
53
- filter(predicate) {
54
- return new TypedQueryResult(this._entities.filter(predicate), this._componentTypes);
55
- }
56
- /**
57
- * 查找第一个匹配的实体
58
- */
59
- find(predicate) {
60
- return this._entities.find(predicate);
61
- }
62
- /**
63
- * 检查是否存在匹配的实体
64
- */
65
- some(predicate) {
66
- return this._entities.some(predicate);
67
- }
68
- /**
69
- * 检查是否所有实体都匹配
70
- */
71
- every(predicate) {
72
- return this._entities.every(predicate);
73
- }
74
- /**
75
- * 获取指定索引的实体
76
- */
77
- get(index) {
78
- return this._entities[index];
79
- }
80
- /**
81
- * 获取第一个实体
82
- */
83
- get first() {
84
- return this._entities[0];
85
- }
86
- /**
87
- * 获取最后一个实体
88
- */
89
- get last() {
90
- return this._entities[this._entities.length - 1];
91
- }
92
- /**
93
- * 检查查询结果是否为空
94
- */
95
- get isEmpty() {
96
- return this._entities.length === 0;
97
- }
98
- /**
99
- * 转换为数组
100
- */
101
- toArray() {
102
- return [...this._entities];
103
- }
104
- /**
105
- * 获取组件类型信息(用于调试)
106
- */
107
- getComponentTypes() {
108
- return this._componentTypes;
109
- }
110
- /**
111
- * 迭代器支持
112
- */
113
- [Symbol.iterator]() {
114
- return this._entities[Symbol.iterator]();
115
- }
116
- }
117
- /**
118
- * 类型安全的查询构建器
119
- *
120
- * 支持链式调用,自动推断查询结果的类型
121
- *
122
- * @example
123
- * ```typescript
124
- * // 基础查询
125
- * const query = new TypedQueryBuilder()
126
- * .withAll(Position, Velocity)
127
- * .build();
128
- *
129
- * // 复杂查询
130
- * const complexQuery = new TypedQueryBuilder()
131
- * .withAll(Transform, Renderer)
132
- * .withAny(BoxCollider, CircleCollider)
133
- * .withNone(Disabled)
134
- * .withTag(EntityTags.Enemy)
135
- * .build();
136
- * ```
137
- */
138
- export class TypedQueryBuilder {
139
- constructor(all, any, none, tag, name) {
140
- this._all = (all || []);
141
- this._any = (any || []);
142
- this._none = (none || []);
143
- if (tag !== undefined) {
144
- this._tag = tag;
145
- }
146
- if (name !== undefined) {
147
- this._name = name;
148
- }
149
- }
150
- /**
151
- * 要求实体拥有所有指定的组件
152
- *
153
- * @param types 组件类型
154
- * @returns 新的查询构建器,类型参数更新
155
- */
156
- withAll(...types) {
157
- return new TypedQueryBuilder([...this._all, ...types], this._any, this._none, this._tag, this._name);
158
- }
159
- /**
160
- * 要求实体至少拥有一个指定的组件
161
- *
162
- * @param types 组件类型
163
- * @returns 新的查询构建器
164
- */
165
- withAny(...types) {
166
- return new TypedQueryBuilder(this._all, [...this._any, ...types], this._none, this._tag, this._name);
167
- }
168
- /**
169
- * 排除拥有指定组件的实体
170
- *
171
- * @param types 组件类型
172
- * @returns 新的查询构建器
173
- */
174
- withNone(...types) {
175
- return new TypedQueryBuilder(this._all, this._any, [...this._none, ...types], this._tag, this._name);
176
- }
177
- /**
178
- * 按标签过滤实体
179
- *
180
- * @param tag 标签值
181
- * @returns 新的查询构建器
182
- */
183
- withTag(tag) {
184
- return new TypedQueryBuilder(this._all, this._any, this._none, tag, this._name);
185
- }
186
- /**
187
- * 按名称过滤实体
188
- *
189
- * @param name 实体名称
190
- * @returns 新的查询构建器
191
- */
192
- withName(name) {
193
- return new TypedQueryBuilder(this._all, this._any, this._none, this._tag, name);
194
- }
195
- /**
196
- * 构建Matcher对象
197
- *
198
- * @returns Matcher实例,用于传统查询API
199
- */
200
- buildMatcher() {
201
- let matcher = Matcher.complex();
202
- if (this._all.length > 0) {
203
- matcher = matcher.all(...this._all);
204
- }
205
- if (this._any.length > 0) {
206
- matcher = matcher.any(...this._any);
207
- }
208
- if (this._none.length > 0) {
209
- matcher = matcher.none(...this._none);
210
- }
211
- if (this._tag !== undefined) {
212
- matcher = matcher.withTag(this._tag);
213
- }
214
- if (this._name !== undefined) {
215
- matcher = matcher.withName(this._name);
216
- }
217
- return matcher;
218
- }
219
- /**
220
- * 获取查询条件
221
- *
222
- * @returns 查询条件对象
223
- */
224
- getCondition() {
225
- return {
226
- all: [...this._all],
227
- any: [...this._any],
228
- none: [...this._none],
229
- ...(this._tag !== undefined && { tag: this._tag }),
230
- ...(this._name !== undefined && { name: this._name })
231
- };
232
- }
233
- /**
234
- * 获取required组件类型(用于类型推断)
235
- */
236
- getRequiredTypes() {
237
- return this._all;
238
- }
239
- /**
240
- * 克隆查询构建器
241
- */
242
- clone() {
243
- return new TypedQueryBuilder([...this._all], [...this._any], [...this._none], this._tag, this._name);
244
- }
245
- }
246
- /**
247
- * 创建类型安全的查询构建器
248
- *
249
- * @example
250
- * ```typescript
251
- * const query = createQuery()
252
- * .withAll(Position, Velocity)
253
- * .withNone(Disabled);
254
- *
255
- * // 在System或Scene中使用
256
- * const entities = scene.query(query);
257
- * entities.forEach(entity => {
258
- * const pos = entity.getComponent(Position); // 自动推断为Position
259
- * const vel = entity.getComponent(Velocity); // 自动推断为Velocity
260
- * });
261
- * ```
262
- */
263
- export function createQuery() {
264
- return new TypedQueryBuilder();
265
- }
266
- /**
267
- * 创建单组件查询的便捷方法
268
- *
269
- * @param componentType 组件类型
270
- * @returns 查询构建器
271
- *
272
- * @example
273
- * ```typescript
274
- * const healthEntities = queryFor(HealthComponent);
275
- * ```
276
- */
277
- export function queryFor(componentType) {
278
- return new TypedQueryBuilder([componentType]);
279
- }
280
- /**
281
- * 创建多组件查询的便捷方法
282
- *
283
- * @param types 组件类型数组
284
- * @returns 查询构建器
285
- *
286
- * @example
287
- * ```typescript
288
- * const movableEntities = queryForAll(Position, Velocity);
289
- * ```
290
- */
291
- export function queryForAll(...types) {
292
- return new TypedQueryBuilder(types);
293
- }
294
- //# sourceMappingURL=TypedQuery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TypedQuery.js","sourceRoot":"","sources":["../../../../src/ECS/Core/Query/TypedQuery.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export { QuerySystem } from '../QuerySystem';
2
- export { ECSFluentAPI, createECSAPI } from '../FluentAPI';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ECS/Core/Query/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
@@ -1,3 +0,0 @@
1
- export { QuerySystem } from '../QuerySystem';
2
- export { ECSFluentAPI, createECSAPI } from '../FluentAPI';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ECS/Core/Query/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}