@esengine/ecs-framework 2.0.4 → 2.0.6

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 (73) hide show
  1. package/bin/Core.js +2 -4
  2. package/bin/Core.js.map +1 -1
  3. package/bin/ECS/Core/EventSystem.js +1 -1
  4. package/bin/ECS/Core/EventSystem.js.map +1 -1
  5. package/bin/ECS/Core/FluentAPI.d.ts +0 -21
  6. package/bin/ECS/Core/FluentAPI.d.ts.map +1 -1
  7. package/bin/ECS/Core/FluentAPI.js +0 -33
  8. package/bin/ECS/Core/FluentAPI.js.map +1 -1
  9. package/bin/ECS/Entity.d.ts +23 -70
  10. package/bin/ECS/Entity.d.ts.map +1 -1
  11. package/bin/ECS/Entity.js +19 -68
  12. package/bin/ECS/Entity.js.map +1 -1
  13. package/bin/ECS/Scene.js +5 -8
  14. package/bin/ECS/Scene.js.map +1 -1
  15. package/bin/ECS/index.d.ts +0 -1
  16. package/bin/ECS/index.d.ts.map +1 -1
  17. package/bin/ECS/index.js +1 -2
  18. package/bin/ECS/index.js.map +1 -1
  19. package/bin/Utils/AccelerationProvider.d.ts +192 -0
  20. package/bin/Utils/AccelerationProvider.d.ts.map +1 -0
  21. package/bin/Utils/AccelerationProvider.js +261 -0
  22. package/bin/Utils/AccelerationProvider.js.map +1 -0
  23. package/bin/Utils/Extensions/index.d.ts +0 -1
  24. package/bin/Utils/Extensions/index.d.ts.map +1 -1
  25. package/bin/Utils/Extensions/index.js +0 -1
  26. package/bin/Utils/Extensions/index.js.map +1 -1
  27. package/bin/Utils/PerformanceMonitor.js +2 -2
  28. package/bin/Utils/PerformanceMonitor.js.map +1 -1
  29. package/bin/Utils/WasmBridge.d.ts +152 -0
  30. package/bin/Utils/WasmBridge.d.ts.map +1 -0
  31. package/bin/Utils/WasmBridge.js +336 -0
  32. package/bin/Utils/WasmBridge.js.map +1 -0
  33. package/bin/Utils/index.d.ts +0 -1
  34. package/bin/Utils/index.d.ts.map +1 -1
  35. package/bin/Utils/index.js +0 -1
  36. package/bin/Utils/index.js.map +1 -1
  37. package/bin/index.d.ts +0 -2
  38. package/bin/index.d.ts.map +1 -1
  39. package/bin/index.js +0 -3
  40. package/bin/index.js.map +1 -1
  41. package/package.json +7 -1
  42. package/bin/ECS/Transform.d.ts +0 -178
  43. package/bin/ECS/Transform.d.ts.map +0 -1
  44. package/bin/ECS/Transform.js +0 -249
  45. package/bin/ECS/Transform.js.map +0 -1
  46. package/bin/Math/Edge.d.ts +0 -23
  47. package/bin/Math/Edge.d.ts.map +0 -1
  48. package/bin/Math/Edge.js +0 -24
  49. package/bin/Math/Edge.js.map +0 -1
  50. package/bin/Math/MathHelper.d.ts +0 -75
  51. package/bin/Math/MathHelper.d.ts.map +0 -1
  52. package/bin/Math/MathHelper.js +0 -91
  53. package/bin/Math/MathHelper.js.map +0 -1
  54. package/bin/Math/Rectangle.d.ts +0 -126
  55. package/bin/Math/Rectangle.d.ts.map +0 -1
  56. package/bin/Math/Rectangle.js +0 -181
  57. package/bin/Math/Rectangle.js.map +0 -1
  58. package/bin/Math/Vector2.d.ts +0 -229
  59. package/bin/Math/Vector2.d.ts.map +0 -1
  60. package/bin/Math/Vector2.js +0 -338
  61. package/bin/Math/Vector2.js.map +0 -1
  62. package/bin/Math/index.d.ts +0 -5
  63. package/bin/Math/index.d.ts.map +0 -1
  64. package/bin/Math/index.js +0 -6
  65. package/bin/Math/index.js.map +0 -1
  66. package/bin/Utils/Extensions/EdgeExt.d.ts +0 -26
  67. package/bin/Utils/Extensions/EdgeExt.d.ts.map +0 -1
  68. package/bin/Utils/Extensions/EdgeExt.js +0 -41
  69. package/bin/Utils/Extensions/EdgeExt.js.map +0 -1
  70. package/bin/Utils/Screen.d.ts +0 -12
  71. package/bin/Utils/Screen.d.ts.map +0 -1
  72. package/bin/Utils/Screen.js +0 -14
  73. package/bin/Utils/Screen.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../src/ECS/Entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../src/ECS/Entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,yBAAyB,CAAC;AAE3E;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACvB;;;;;;OAMG;IACI,OAAO,CAAC,IAAY,EAAE,KAAa;QACtC,IAAI,OAAO,GAAG,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACnD,IAAI,OAAO,IAAI,CAAC;YACZ,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAoBD;;GAEG;AACH,MAAM,cAAc;IAKhB,YAAY,SAA+B;QACvC,OAAO,EAAE,EAAE;QACX,GAAG,EAAE,IAAI;QACT,SAAS,EAAE,IAAI;KAClB;QARO,UAAK,GAAG,IAAI,GAAG,EAAsC,CAAC;QACtD,gBAAW,GAAoB,EAAE,CAAC;QAQtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAEM,GAAG,CAAsB,IAAsB;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,QAAQ;QACR,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,SAAS;QACT,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,KAAK,CAAC,WAAW,EAAE,CAAC;QAEpB,UAAU;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,KAAK,CAAC,SAAc,CAAC;IAChC,CAAC;IAEM,GAAG,CAAsB,IAAsB,EAAE,SAAY;QAChE,WAAW;QACX,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAClC,CAAC;QAED,MAAM,KAAK,GAA2B;YAClC,SAAS;YACT,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;YACxB,WAAW,EAAE,CAAC;SACjB,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE5B,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAmB;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAChC,CAAC;IAEM,GAAG,CAAC,IAAmB;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,sBAAsB;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3B,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,IAAmB;QACzC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,qBAAqB,CAAC,IAAmB;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAEM,QAAQ;QAMX,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACtC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC;YACjC,SAAS,EAAE,CAAC;QAChB,CAAC;QAED,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YACtD,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC9E,CAAC;IACN,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,OAAO,MAAM;IA2Hf;;;;;OAKG;IACH,YAAY,IAAY,EAAE,EAAU;QA7GpC;;;;WAIG;QACa,eAAU,GAAgB,EAAE,CAAC;QAS7C;;;;WAIG;QACI,mBAAc,GAAW,CAAC,CAAC;QAElC;;;;WAIG;QACI,iBAAY,GAAY,KAAK,CAAC;QAErC;;;;WAIG;QACK,YAAO,GAAkB,IAAI,CAAC;QAEtC;;;;WAIG;QACK,cAAS,GAAa,EAAE,CAAC;QAEjC;;;;WAIG;QACK,YAAO,GAAY,IAAI,CAAC;QAEhC;;;;WAIG;QACK,SAAI,GAAW,CAAC,CAAC;QAEzB;;;;WAIG;QACK,aAAQ,GAAY,IAAI,CAAC;QAEjC;;;;WAIG;QACK,iBAAY,GAAW,CAAC,CAAC;QAEjC;;;;WAIG;QACK,mBAAc,GAAW,MAAM,CAAC,CAAC,CAAC,CAAC;QAE3C;;;;WAIG;QACK,0BAAqB,GAAG,IAAI,GAAG,EAAyB,CAAC;QASjE;;;;WAIG;QACK,0BAAqB,GAAG,IAAI,GAAG,EAKnC,CAAC;QASD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QAEb,UAAU;QACV,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,EAAE,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ;QACf,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;;;OAMG;IACH,IAAW,MAAM,CAAC,KAAc;QAC5B,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,IAAW,iBAAiB;QACxB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACxD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,IAAW,GAAG,CAAC,KAAa;QACxB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAW,OAAO,CAAC,KAAc;QAC7B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACH,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,IAAW,WAAW,CAAC,KAAa;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACI,eAAe,CAClB,aAA+B,EAC/B,GAAG,IAAW;QAEd,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACK,oBAAoB,CAAsB,SAAY;QAC1D,MAAM,aAAa,GAAG,SAAS,CAAC,WAA+B,CAAC;QAEhE,iBAAiB;QACjB,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;YACjD,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC9C,CAAC;QAED,YAAY;QACZ,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;QAExB,iBAAiB;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAErD,QAAQ;QACR,IAAI,CAAC,cAAc,IAAI,iBAAiB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAEnE,QAAQ;QACR,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAEnD,UAAU;QACV,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,EAAE;YAC1C,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;YACxB,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;SACjB,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACI,YAAY,CAAsB,SAAY;QACjD,MAAM,aAAa,GAAG,SAAS,CAAC,WAA+B,CAAC;QAEhE,eAAe;QACf,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,IAAI,0BAA0B,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;QACvF,CAAC;QAED,aAAa;QACb,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAErC,yBAAyB;QACzB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC;QAED,cAAc;QACd,SAAS,CAAC,eAAe,EAAE,CAAC;QAE5B,YAAY;QACZ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC5C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;gBAC7D,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAsB,IAAsB;QAC3D,SAAS;QACT,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;QAEtC,eAAe;QACf,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,gBAAgB;QAChB,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,eAAe,EAAE,CAAC;YAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC1B,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,kBAAkB;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACxD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,SAAS,IAAI,SAAS,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;gBAC9C,QAAQ;gBACR,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC1B,OAAO,SAAc,CAAC;YAC1B,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;YACnD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACjF,IAAI,SAAS,EAAE,CAAC;gBACZ,YAAY;gBACZ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC1C,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QAED,iBAAiB;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,SAAS,YAAY,IAAI,EAAE,CAAC;gBAC5B,SAAS;gBACT,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC1B,OAAO,SAAc,CAAC;YAC1B,CAAC;QACL,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,0BAA0B,CAAC,IAAmB;QAClD,IAAI,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,KAAK,GAAG;gBACJ,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;gBACxB,SAAS,EAAE,CAAC;gBACZ,WAAW,EAAE,CAAC;aACjB,CAAC;YACF,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;QAED,KAAK,CAAC,WAAW,EAAE,CAAC;QACpB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACK,cAAc,CAAC,IAAmB;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,KAAK,EAAE,CAAC;YACR,KAAK,CAAC,SAAS,EAAE,CAAC;QACtB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,eAAe,CAAC,IAAmB;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,KAAK,EAAE,CAAC;YACR,KAAK,CAAC,WAAW,EAAE,CAAC;QACxB,CAAC;IACL,CAAC;IAED;;OAEG;IACK,qBAAqB;QACzB,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;QAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,aAAa,GAAG,SAAS,CAAC,WAA4B,CAAC;YAC7D,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QACrD,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAsB,IAAsB;QAC3D,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACI,oBAAoB,CACvB,IAAsB,EACtB,GAAG,IAAW;QAEd,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACI,eAAe,CAAC,SAAoB;QACvC,MAAM,aAAa,GAAG,SAAS,CAAC,WAA4B,CAAC;QAE7D,WAAW;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAEjC,sBAAsB;YACtB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACjC,CAAC;QAED,SAAS;QACT,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAE3C,SAAS;QACT,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAEjD,QAAQ;QACR,IAAI,iBAAiB,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QACxE,CAAC;QAED,cAAc;QACd,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC/E,CAAC;QAED,cAAc;QACd,SAAS,CAAC,mBAAmB,EAAE,CAAC;QAEhC,YAAY;QACZ,SAAS,CAAC,MAAM,GAAG,IAAW,CAAC;QAE/B,YAAY;QACZ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC5C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;gBAC7D,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,qBAAqB,CAAsB,IAAsB;QACpE,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACI,mBAAmB;QACtB,kBAAkB;QAClB,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QAEhD,YAAY;QACZ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAEhC,OAAO;QACP,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;YACzC,MAAM,aAAa,GAAG,SAAS,CAAC,WAA4B,CAAC;YAE7D,cAAc;YACd,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;gBACnD,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;YAC/E,CAAC;YAED,cAAc;YACd,SAAS,CAAC,mBAAmB,EAAE,CAAC;YAEhC,YAAY;YACZ,SAAS,CAAC,MAAM,GAAG,IAAW,CAAC;QACnC,CAAC;QAED,SAAS;QACT,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;QAE3B,YAAY;QACZ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC5C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;gBAC7D,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,aAAa,CAAsB,UAAe;QACrD,MAAM,eAAe,GAAQ,EAAE,CAAC;QAEhC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACjC,IAAI,CAAC;gBACD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,sBAAsB;gBACtB,OAAO,CAAC,IAAI,CAAC,2BAA2B,SAAS,CAAC,WAAW,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;YAClF,CAAC;QACL,CAAC;QAED,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACI,uBAAuB,CAAsB,cAAkC;QAClF,MAAM,iBAAiB,GAAiB,EAAE,CAAC;QAE3C,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YACzC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,sBAAsB;QAYzB,MAAM,WAAW,GAAG,IAAI,GAAG,EAMvB,CAAC;QAEL,KAAK,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC;YAClD,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE;gBAChC,GAAG,KAAK;gBACR,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;aACnD,CAAC,CAAC;QACP,CAAC;QAED,OAAO;YACH,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE;YAC3C,WAAW;YACX,gBAAgB,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI;YACjD,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM;SAC1C,CAAC;IACN,CAAC;IAED;;;;OAIG;IACI,oBAAoB;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,aAAa,GAAG,SAAS,CAAC,WAA4B,CAAC;YAE7D,SAAS;YACT,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAEjD,QAAQ;YACR,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,qBAAqB;QACxB,6BAA6B;QAC7B,sBAAsB;QAEtB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,kBAAkB;QAElD,KAAK,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC9D,IAAI,GAAG,GAAG,KAAK,CAAC,YAAY,GAAG,gBAAgB,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBACvE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,aAAa,CAAsB,IAAsB;QAC5D,MAAM,MAAM,GAAQ,EAAE,CAAC;QAEvB,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,SAAS,YAAY,IAAI,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,SAAc,CAAC,CAAC;YAChC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,KAAa;QACzB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,CAAC,SAAS;QAC3B,CAAC;QAED,sBAAsB;QACtB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,SAAS;QACT,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3B,uBAAuB;QACvB,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACI,WAAW,CAAC,KAAa;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,SAAS;QACT,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAChC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAErB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACI,iBAAiB;QACpB,mBAAmB;QACnB,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAE7C,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,SAAS,CAAC,IAAY,EAAE,YAAqB,KAAK;QACrD,YAAY;QACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACtB,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC;QAED,OAAO;QACP,IAAI,SAAS,EAAE,CAAC;YACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1C,IAAI,KAAK,EAAE,CAAC;oBACR,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACI,iBAAiB,CAAC,GAAW,EAAE,YAAqB,KAAK;QAC5D,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,YAAY;QACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;QAED,OAAO;QACP,IAAI,SAAS,EAAE,CAAC;YACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACvD,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACI,OAAO;QACV,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,MAAc;QAC9B,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC7B,OAAO,OAAO,EAAE,CAAC;YACb,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACI,cAAc,CAAC,MAAc;QAChC,OAAO,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACI,QAAQ;QACX,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3B,OAAO,OAAO,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,QAAgD,EAAE,YAAqB,KAAK;QAC5F,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACpC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACvB,IAAI,SAAS,EAAE,CAAC;gBACZ,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,eAAe;QACnB,eAAe;QACf,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,iBAAiB,IAAI,SAAS,IAAI,OAAO,SAAS,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;gBACnF,SAAiB,CAAC,eAAe,EAAE,CAAC;YACzC,CAAC;QACL,CAAC;QAED,aAAa;QACb,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,sBAAsB,EAAE;gBACpD,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;aAC5C,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/C,OAAO;QACX,CAAC;QAED,SAAS;QACT,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACpB,SAAS,CAAC,MAAM,EAAE,CAAC;YACvB,CAAC;QACL,CAAC;QAED,UAAU;QACV,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,MAAM,EAAE,CAAC;QACnB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,OAAO;QACV,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,UAAU;QACV,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;YACpC,KAAK,CAAC,OAAO,EAAE,CAAC;QACpB,CAAC;QAED,UAAU;QACV,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,SAAS;QACT,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,SAAS;QACT,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,KAAa;QAC1B,OAAO,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACI,QAAQ;QACX,OAAO,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,GAAG,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,YAAY;QA8Bf,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACjD,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1F,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE;SAC3D,CAAC,CAAC,CAAC;QAEJ,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM;YACtC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;YAC5D,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ;YACxD,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI;YAClC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;YACjC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE;YACtB,cAAc,EAAE,UAAU,CAAC,UAAU;YACrC,oBAAoB,EAAE,gBAAgB;YACtC,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;SAChD,CAAC;IACN,CAAC;;AA/kCD;;GAEG;AACW,qBAAc,GAAmB,IAAI,cAAc,EAAE,AAAvC,CAAwC"}
package/bin/ECS/Scene.js CHANGED
@@ -252,14 +252,11 @@ export class Scene {
252
252
  componentCount: entity.components.length,
253
253
  componentTypes: entity.components.map(c => c.constructor.name)
254
254
  })),
255
- processors: this.entityProcessors.processors.map(processor => {
256
- var _a;
257
- return ({
258
- name: processor.constructor.name,
259
- updateOrder: processor.updateOrder,
260
- entityCount: ((_a = processor._entities) === null || _a === void 0 ? void 0 : _a.length) || 0
261
- });
262
- }),
255
+ processors: this.entityProcessors.processors.map(processor => ({
256
+ name: processor.constructor.name,
257
+ updateOrder: processor.updateOrder,
258
+ entityCount: processor._entities?.length || 0
259
+ })),
263
260
  componentStats: this.componentStorageManager.getAllStats()
264
261
  };
265
262
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Scene.js","sourceRoot":"","sources":["../../src/ECS/Scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAqB,MAAM,oBAAoB,CAAC;AAE5E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,KAAK;IAuDd;;OAEG;IACH,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH;QAhEA;;;;WAIG;QACI,SAAI,GAAW,EAAE,CAAC;QA4CzB;;WAEG;QACK,mBAAc,GAAY,KAAK,CAAC;QAapC,IAAI,CAAC,QAAQ,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,uBAAuB,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAC7D,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,UAAU;IACjB,CAAC;IAED;;;;OAIG;IACI,OAAO;IACd,CAAC;IAED;;;;OAIG;IACI,MAAM;IACb,CAAC;IAED;;;;OAIG;IACI,KAAK;QACR,UAAU;QACV,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI;YAC7B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAElC,wBAAwB;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACI,GAAG;QACN,YAAY;QACZ,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAE5B,SAAS;QACT,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAElC,SAAS;QACT,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;QAErC,UAAU;QACV,IAAI,IAAI,CAAC,gBAAgB;YACrB,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC;QAEhC,SAAS;QACT,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED;;OAEG;IACI,MAAM;QACT,SAAS;QACT,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE5B,UAAU;QACV,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI;YAC7B,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAEnC,QAAQ;QACR,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAEvB,gBAAgB;QAChB,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI;YAC7B,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACI,YAAY,CAAC,IAAY;QAC5B,IAAI,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED;;;OAGG;IACI,SAAS,CAAC,MAAc;QAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QAEpB,aAAa;QACb,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEnC,WAAW;QACX,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAEnE,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACI,kBAAkB;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACtC,CAAC;IACL,CAAC;IAED;;;OAGG;IACI,UAAU,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACI,iBAAiB,CAAC,GAAW;QAChC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxC,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,eAAe,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,GAAW;QAC/B,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACI,kBAAkB,CAAC,SAAuB;QAC7C,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAErC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC1D,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;OAGG;IACI,SAAS,CAAC,MAAoB;QACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACI,qBAAqB,CAAC,SAAuB;QAChD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACI,kBAAkB,CAAyB,IAA+B;QAC7E,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACI,QAAQ;QAKX,OAAO;YACH,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAChC,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK;YAC3C,qBAAqB,EAAE,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE;SACpE,CAAC;IACN,CAAC;IAED;;OAEG;IACI,uBAAuB;QAC1B,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACI,YAAY;QAkBf,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAC3B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAChC,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK;YAC3C,SAAS,EAAE,IAAI,CAAC,cAAc;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC1C,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM;gBACxC,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;aACjE,CAAC,CAAC;YACH,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;;gBAAC,OAAA,CAAC;oBAC3D,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,IAAI;oBAChC,WAAW,EAAE,SAAS,CAAC,WAAW;oBAClC,WAAW,EAAE,CAAA,MAAC,SAAiB,CAAC,SAAS,0CAAE,MAAM,KAAI,CAAC;iBACzD,CAAC,CAAA;aAAA,CAAC;YACH,cAAc,EAAE,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE;SAC7D,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"Scene.js","sourceRoot":"","sources":["../../src/ECS/Scene.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  export { Entity } from './Entity';
2
2
  export { Component } from './Component';
3
- export { Transform } from './Transform';
4
3
  export { CoreEvents } from './CoreEvents';
5
4
  export * from './Systems';
6
5
  export * from './Utils';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ECS/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ECS/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
package/bin/ECS/index.js CHANGED
@@ -1,7 +1,6 @@
1
- // Core目录已删除,直接导出核心类
1
+ // 导出核心ECS类
2
2
  export { Entity } from './Entity';
3
3
  export { Component } from './Component';
4
- export { Transform } from './Transform';
5
4
  export { CoreEvents } from './CoreEvents';
6
5
  export * from './Systems';
7
6
  export * from './Utils';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ECS/index.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ECS/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,192 @@
1
+ /**
2
+ * ECS框架加速提供者接口
3
+ *
4
+ * 提供可替换的性能加速实现,专注于ECS实体查询功能
5
+ * 支持JavaScript、WebAssembly等不同后端实现
6
+ */
7
+ /**
8
+ * 实体查询结果
9
+ */
10
+ export interface QueryResult {
11
+ /** 查询到的实体ID数组 */
12
+ entities: Uint32Array;
13
+ /** 查询到的实体数量 */
14
+ count: number;
15
+ }
16
+ /**
17
+ * 实体查询接口
18
+ *
19
+ * 提供高性能的ECS实体查询功能
20
+ */
21
+ export interface QueryProvider {
22
+ /**
23
+ * 根据单个组件掩码查询实体
24
+ * @param componentMask 组件掩码
25
+ * @param maxResults 最大结果数量
26
+ * @returns 查询结果
27
+ */
28
+ queryByComponent(componentMask: bigint, maxResults: number): QueryResult;
29
+ /**
30
+ * 根据多个组件掩码查询实体(AND操作)
31
+ * @param componentMasks 组件掩码数组
32
+ * @param maxResults 最大结果数量
33
+ * @returns 查询结果
34
+ */
35
+ queryByComponents(componentMasks: bigint[], maxResults: number): QueryResult;
36
+ /**
37
+ * 查询包含指定组件但排除其他组件的实体
38
+ * @param includeMask 必须包含的组件掩码
39
+ * @param excludeMask 必须排除的组件掩码
40
+ * @param maxResults 最大结果数量
41
+ * @returns 查询结果
42
+ */
43
+ queryExcluding(includeMask: bigint, excludeMask: bigint, maxResults: number): QueryResult;
44
+ /**
45
+ * 更新实体的组件掩码
46
+ * @param entityId 实体ID
47
+ * @param componentMask 新的组件掩码
48
+ */
49
+ updateEntityMask(entityId: number, componentMask: bigint): void;
50
+ /**
51
+ * 批量更新实体掩码
52
+ * @param entityIds 实体ID数组
53
+ * @param masks 掩码数组
54
+ */
55
+ batchUpdateMasks(entityIds: Uint32Array, masks: BigUint64Array): void;
56
+ }
57
+ /**
58
+ * 加速提供者接口
59
+ *
60
+ * 定义了ECS框架加速提供者的基本契约
61
+ */
62
+ export interface AccelerationProvider {
63
+ /** 提供者名称 */
64
+ readonly name: string;
65
+ /** 提供者版本 */
66
+ readonly version: string;
67
+ /** 是否为WebAssembly实现 */
68
+ readonly isWasm: boolean;
69
+ /** 实体查询功能模块 */
70
+ query: QueryProvider;
71
+ /**
72
+ * 初始化提供者
73
+ * @throws {Error} 初始化失败时抛出错误
74
+ */
75
+ initialize(): Promise<void>;
76
+ /**
77
+ * 检查是否支持指定功能
78
+ * @param feature 功能名称
79
+ * @returns 是否支持该功能
80
+ */
81
+ supports(feature: string): boolean;
82
+ /**
83
+ * 获取性能信息
84
+ * @returns 性能统计信息
85
+ */
86
+ getPerformanceInfo(): {
87
+ /** 每秒操作数 */
88
+ operationsPerSecond: number;
89
+ /** 内存使用量(字节) */
90
+ memoryUsage: number;
91
+ /** 支持的功能列表 */
92
+ features: string[];
93
+ };
94
+ /**
95
+ * 清理资源
96
+ */
97
+ dispose(): void;
98
+ }
99
+ /**
100
+ * JavaScript实现的基础加速提供者
101
+ *
102
+ * 提供纯JavaScript的ECS查询实现,作为默认后端
103
+ */
104
+ export declare class JavaScriptProvider implements AccelerationProvider {
105
+ readonly name = "JavaScript";
106
+ readonly version = "1.0.0";
107
+ readonly isWasm = false;
108
+ /** 实体查询功能模块 */
109
+ query: QueryProvider;
110
+ /**
111
+ * 构造函数
112
+ */
113
+ constructor();
114
+ /**
115
+ * 初始化提供者
116
+ */
117
+ initialize(): Promise<void>;
118
+ /**
119
+ * 检查是否支持指定功能
120
+ * @param feature 功能名称
121
+ * @returns 是否支持该功能
122
+ */
123
+ supports(feature: string): boolean;
124
+ /**
125
+ * 获取性能信息
126
+ * @returns 性能统计信息
127
+ */
128
+ getPerformanceInfo(): {
129
+ operationsPerSecond: number;
130
+ memoryUsage: number;
131
+ features: string[];
132
+ };
133
+ /**
134
+ * 清理资源
135
+ */
136
+ dispose(): void;
137
+ }
138
+ /**
139
+ * 加速提供者管理器
140
+ *
141
+ * 管理不同的加速提供者实现,支持动态切换和性能测试
142
+ */
143
+ export declare class AccelerationManager {
144
+ /** 单例实例 */
145
+ private static instance;
146
+ /** 当前使用的提供者 */
147
+ private currentProvider;
148
+ /** 可用的提供者映射 */
149
+ private availableProviders;
150
+ /**
151
+ * 私有构造函数
152
+ */
153
+ private constructor();
154
+ /**
155
+ * 获取单例实例
156
+ * @returns 管理器实例
157
+ */
158
+ static getInstance(): AccelerationManager;
159
+ /**
160
+ * 注册新的加速提供者
161
+ * @param name 提供者名称
162
+ * @param provider 提供者实例
163
+ */
164
+ registerProvider(name: string, provider: AccelerationProvider): void;
165
+ /**
166
+ * 切换加速提供者
167
+ * @param name 提供者名称
168
+ * @returns 是否切换成功
169
+ */
170
+ setProvider(name: string): Promise<boolean>;
171
+ /**
172
+ * 获取当前提供者
173
+ * @returns 当前提供者实例
174
+ */
175
+ getProvider(): AccelerationProvider;
176
+ /**
177
+ * 获取所有可用提供者名称
178
+ * @returns 提供者名称数组
179
+ */
180
+ getAvailableProviders(): string[];
181
+ /**
182
+ * 自动选择最佳提供者
183
+ * 优先选择WebAssembly提供者,回退到JavaScript提供者
184
+ */
185
+ selectBestProvider(): Promise<void>;
186
+ /**
187
+ * 性能基准测试
188
+ * @returns 各提供者的性能测试结果(操作/秒)
189
+ */
190
+ benchmarkProviders(): Promise<Map<string, number>>;
191
+ }
192
+ //# sourceMappingURL=AccelerationProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccelerationProvider.d.ts","sourceRoot":"","sources":["../../src/Utils/AccelerationProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,261 @@
1
+ /**
2
+ * ECS框架加速提供者接口
3
+ *
4
+ * 提供可替换的性能加速实现,专注于ECS实体查询功能
5
+ * 支持JavaScript、WebAssembly等不同后端实现
6
+ */
7
+ // ================================
8
+ // JavaScript实现
9
+ // ================================
10
+ /**
11
+ * JavaScript实现的基础加速提供者
12
+ *
13
+ * 提供纯JavaScript的ECS查询实现,作为默认后端
14
+ */
15
+ export class JavaScriptProvider {
16
+ /**
17
+ * 构造函数
18
+ */
19
+ constructor() {
20
+ this.name = 'JavaScript';
21
+ this.version = '1.0.0';
22
+ this.isWasm = false;
23
+ this.query = new JSQueryProvider();
24
+ }
25
+ /**
26
+ * 初始化提供者
27
+ */
28
+ async initialize() {
29
+ // JavaScript版本无需初始化
30
+ }
31
+ /**
32
+ * 检查是否支持指定功能
33
+ * @param feature 功能名称
34
+ * @returns 是否支持该功能
35
+ */
36
+ supports(feature) {
37
+ const supportedFeatures = [
38
+ 'entity-query', 'batch-operations', 'component-masks'
39
+ ];
40
+ return supportedFeatures.includes(feature);
41
+ }
42
+ /**
43
+ * 获取性能信息
44
+ * @returns 性能统计信息
45
+ */
46
+ getPerformanceInfo() {
47
+ return {
48
+ operationsPerSecond: 1000000, // 100万次/秒
49
+ memoryUsage: 0,
50
+ features: ['entity-query', 'batch-operations', 'component-masks']
51
+ };
52
+ }
53
+ /**
54
+ * 清理资源
55
+ */
56
+ dispose() {
57
+ // JavaScript版本无需清理
58
+ }
59
+ }
60
+ /**
61
+ * JavaScript查询实现
62
+ *
63
+ * 使用Map存储实体掩码,提供基础的查询功能
64
+ */
65
+ class JSQueryProvider {
66
+ constructor() {
67
+ /** 实体掩码存储 */
68
+ this.entityMasks = new Map();
69
+ }
70
+ /**
71
+ * 根据单个组件掩码查询实体
72
+ * @param componentMask 组件掩码
73
+ * @param maxResults 最大结果数量
74
+ * @returns 查询结果
75
+ */
76
+ queryByComponent(componentMask, maxResults) {
77
+ const results = new Uint32Array(maxResults);
78
+ let count = 0;
79
+ for (const [entityId, mask] of this.entityMasks) {
80
+ if ((mask & componentMask) === componentMask && count < maxResults) {
81
+ results[count++] = entityId;
82
+ }
83
+ }
84
+ return { entities: results.slice(0, count), count };
85
+ }
86
+ /**
87
+ * 根据多个组件掩码查询实体(AND操作)
88
+ * @param componentMasks 组件掩码数组
89
+ * @param maxResults 最大结果数量
90
+ * @returns 查询结果
91
+ */
92
+ queryByComponents(componentMasks, maxResults) {
93
+ const results = new Uint32Array(maxResults);
94
+ let count = 0;
95
+ for (const [entityId, mask] of this.entityMasks) {
96
+ let matches = true;
97
+ for (const componentMask of componentMasks) {
98
+ if ((mask & componentMask) !== componentMask) {
99
+ matches = false;
100
+ break;
101
+ }
102
+ }
103
+ if (matches && count < maxResults) {
104
+ results[count++] = entityId;
105
+ }
106
+ }
107
+ return { entities: results.slice(0, count), count };
108
+ }
109
+ /**
110
+ * 查询包含指定组件但排除其他组件的实体
111
+ * @param includeMask 必须包含的组件掩码
112
+ * @param excludeMask 必须排除的组件掩码
113
+ * @param maxResults 最大结果数量
114
+ * @returns 查询结果
115
+ */
116
+ queryExcluding(includeMask, excludeMask, maxResults) {
117
+ const results = new Uint32Array(maxResults);
118
+ let count = 0;
119
+ for (const [entityId, mask] of this.entityMasks) {
120
+ if ((mask & includeMask) === includeMask && (mask & excludeMask) === 0n && count < maxResults) {
121
+ results[count++] = entityId;
122
+ }
123
+ }
124
+ return { entities: results.slice(0, count), count };
125
+ }
126
+ /**
127
+ * 更新实体的组件掩码
128
+ * @param entityId 实体ID
129
+ * @param componentMask 新的组件掩码
130
+ */
131
+ updateEntityMask(entityId, componentMask) {
132
+ this.entityMasks.set(entityId, componentMask);
133
+ }
134
+ /**
135
+ * 批量更新实体掩码
136
+ * @param entityIds 实体ID数组
137
+ * @param masks 掩码数组
138
+ */
139
+ batchUpdateMasks(entityIds, masks) {
140
+ for (let i = 0; i < entityIds.length; i++) {
141
+ this.entityMasks.set(entityIds[i], masks[i]);
142
+ }
143
+ }
144
+ }
145
+ // ================================
146
+ // 管理器类
147
+ // ================================
148
+ /**
149
+ * 加速提供者管理器
150
+ *
151
+ * 管理不同的加速提供者实现,支持动态切换和性能测试
152
+ */
153
+ export class AccelerationManager {
154
+ /**
155
+ * 私有构造函数
156
+ */
157
+ constructor() {
158
+ /** 可用的提供者映射 */
159
+ this.availableProviders = new Map();
160
+ // 默认使用JavaScript提供者
161
+ this.currentProvider = new JavaScriptProvider();
162
+ this.availableProviders.set('javascript', this.currentProvider);
163
+ }
164
+ /**
165
+ * 获取单例实例
166
+ * @returns 管理器实例
167
+ */
168
+ static getInstance() {
169
+ if (!AccelerationManager.instance) {
170
+ AccelerationManager.instance = new AccelerationManager();
171
+ }
172
+ return AccelerationManager.instance;
173
+ }
174
+ /**
175
+ * 注册新的加速提供者
176
+ * @param name 提供者名称
177
+ * @param provider 提供者实例
178
+ */
179
+ registerProvider(name, provider) {
180
+ this.availableProviders.set(name, provider);
181
+ }
182
+ /**
183
+ * 切换加速提供者
184
+ * @param name 提供者名称
185
+ * @returns 是否切换成功
186
+ */
187
+ async setProvider(name) {
188
+ const provider = this.availableProviders.get(name);
189
+ if (!provider) {
190
+ console.warn(`Acceleration provider '${name}' not found`);
191
+ return false;
192
+ }
193
+ try {
194
+ await provider.initialize();
195
+ this.currentProvider = provider;
196
+ console.log(`Switched to acceleration provider: ${provider.name} v${provider.version}`);
197
+ return true;
198
+ }
199
+ catch (error) {
200
+ console.error(`Failed to initialize provider '${name}':`, error);
201
+ return false;
202
+ }
203
+ }
204
+ /**
205
+ * 获取当前提供者
206
+ * @returns 当前提供者实例
207
+ */
208
+ getProvider() {
209
+ return this.currentProvider;
210
+ }
211
+ /**
212
+ * 获取所有可用提供者名称
213
+ * @returns 提供者名称数组
214
+ */
215
+ getAvailableProviders() {
216
+ return Array.from(this.availableProviders.keys());
217
+ }
218
+ /**
219
+ * 自动选择最佳提供者
220
+ * 优先选择WebAssembly提供者,回退到JavaScript提供者
221
+ */
222
+ async selectBestProvider() {
223
+ const providers = Array.from(this.availableProviders.values());
224
+ // 优先选择WebAssembly提供者
225
+ const wasmProvider = providers.find(p => p.isWasm);
226
+ if (wasmProvider) {
227
+ const success = await this.setProvider(wasmProvider.name);
228
+ if (success)
229
+ return;
230
+ }
231
+ // 回退到JavaScript提供者
232
+ await this.setProvider('javascript');
233
+ }
234
+ /**
235
+ * 性能基准测试
236
+ * @returns 各提供者的性能测试结果(操作/秒)
237
+ */
238
+ async benchmarkProviders() {
239
+ const results = new Map();
240
+ for (const [name, provider] of this.availableProviders) {
241
+ try {
242
+ await provider.initialize();
243
+ // 简单的查询性能测试
244
+ const start = performance.now();
245
+ const testMask = 15n; // 测试掩码
246
+ for (let i = 0; i < 10000; i++) {
247
+ provider.query.queryByComponent(testMask, 100);
248
+ }
249
+ const end = performance.now();
250
+ results.set(name, 10000 / (end - start) * 1000); // 操作/秒
251
+ provider.dispose();
252
+ }
253
+ catch (error) {
254
+ console.warn(`Benchmark failed for provider '${name}':`, error);
255
+ results.set(name, 0);
256
+ }
257
+ }
258
+ return results;
259
+ }
260
+ }
261
+ //# sourceMappingURL=AccelerationProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccelerationProvider.js","sourceRoot":"","sources":["../../src/Utils/AccelerationProvider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
1
  export { TypeUtils } from './TypeUtils';
2
2
  export { NumberExtension } from './NumberExtension';
3
- export { EdgeExt } from './EdgeExt';
4
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Utils/Extensions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Utils/Extensions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}