bard-legends-framework 0.9.5 → 0.9.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 (239) hide show
  1. package/dist/_interfaces/index.d.ts +2 -2
  2. package/dist/_interfaces/index.js +2 -3
  3. package/dist/game-entities/attachable/attachable.d.ts +6 -6
  4. package/dist/game-entities/attachable/attachable.js +28 -30
  5. package/dist/game-entities/attachable/attachable.spec.js +129 -128
  6. package/dist/game-entities/attachable/attachable.store.d.ts +5 -5
  7. package/dist/game-entities/attachable/attachable.store.js +34 -32
  8. package/dist/game-entities/attachable/attachable.test.js +132 -131
  9. package/dist/game-entities/attachable/destroyable.d.ts +13 -13
  10. package/dist/game-entities/attachable/destroyable.js +64 -69
  11. package/dist/game-entities/attachable/helpers/decorate-actions-lib.d.ts +15 -15
  12. package/dist/game-entities/attachable/helpers/decorate-actions-lib.js +125 -116
  13. package/dist/game-entities/attachable/helpers/referance-variable.d.ts +15 -15
  14. package/dist/game-entities/attachable/helpers/referance-variable.js +47 -48
  15. package/dist/game-entities/attachable/interfaces.d.ts +6 -6
  16. package/dist/game-entities/attachable/interfaces.js +2 -3
  17. package/dist/game-entities/base/helpers/decorate-actions-lib.js +0 -1
  18. package/dist/game-entities/controller/controller.js +0 -1
  19. package/dist/game-entities/controller/controller.spec.js +128 -125
  20. package/dist/game-entities/entity/entity.spec.js +263 -293
  21. package/dist/game-entities/entity/helpers/view-creation.helper.d.ts +7 -7
  22. package/dist/game-entities/entity/helpers/view-creation.helper.js +48 -48
  23. package/dist/game-entities/scene/scene.spec.js +219 -223
  24. package/dist/game-entities/service/service.js +0 -4
  25. package/dist/game-entities/service/service.spec.js +265 -237
  26. package/dist/game-entities/service/service.test.js +4 -2
  27. package/dist/game-entities/update-loop.d.ts +18 -18
  28. package/dist/game-entities/update-loop.js +46 -28
  29. package/dist/game-entities/view/view.js +1 -1
  30. package/dist/game-entities/view/view.spec.js +490 -506
  31. package/dist/game-entities/view/view.test.js +1 -1
  32. package/dist/lib/animator/animations.d.ts +13 -13
  33. package/dist/lib/animator/animations.js +43 -40
  34. package/dist/lib/animator/animator.d.ts +41 -41
  35. package/dist/lib/animator/animator.js +194 -197
  36. package/dist/lib/animator/animator.spec.js +699 -612
  37. package/dist/lib/animator/index.js +24 -19
  38. package/dist/lib/libraries/animator/animations.d.ts +13 -13
  39. package/dist/lib/libraries/animator/animations.js +43 -40
  40. package/dist/lib/libraries/animator/animator.d.ts +41 -41
  41. package/dist/lib/libraries/animator/animator.js +194 -197
  42. package/dist/lib/libraries/animator/animator.spec.js +699 -612
  43. package/dist/lib/libraries/animator/index.js +24 -19
  44. package/dist/lib/libraries/path-finder/path-finder.d.ts +2 -2
  45. package/dist/lib/libraries/path-finder/path-finder.js +19 -20
  46. package/dist/lib/path-finder/path-finder.d.ts +2 -2
  47. package/dist/lib/path-finder/path-finder.js +19 -20
  48. package/dist/lib/services/keyboard/keyboard.d.ts +4 -4
  49. package/dist/lib/services/keyboard/keyboard.js +39 -31
  50. package/dist/lib/services/mouse/mouse.service.d.ts +8 -8
  51. package/dist/lib/services/mouse/mouse.service.js +65 -53
  52. package/dist/lib/services/mouse/mouser-target-focus.service.d.ts +11 -11
  53. package/dist/lib/services/mouse/mouser-target-focus.service.js +83 -81
  54. package/dist/lib/update-loop.d.ts +10 -10
  55. package/dist/lib/update-loop.js +35 -27
  56. package/dist/physics/entitity-types/immovable-physics-entity.d.ts +6 -6
  57. package/dist/physics/entitity-types/immovable-physics-entity.js +23 -24
  58. package/dist/physics/entitity-types/movable-entity.d.ts +6 -6
  59. package/dist/physics/entitity-types/movable-entity.js +21 -22
  60. package/dist/physics/entitity-types/movable-physics-entity.d.ts +14 -14
  61. package/dist/physics/entitity-types/movable-physics-entity.js +83 -88
  62. package/dist/physics/entitity-types/physics-entity.d.ts +23 -23
  63. package/dist/physics/entitity-types/physics-entity.js +97 -88
  64. package/dist/physics/helpers/closest-available-space.helper.d.ts +16 -16
  65. package/dist/physics/helpers/closest-available-space.helper.js +98 -96
  66. package/dist/physics/helpers/closest-available-space.helper.spec.js +115 -68
  67. package/dist/physics/helpers/p2js.helper.d.ts +3 -3
  68. package/dist/physics/helpers/p2js.helper.js +21 -22
  69. package/dist/physics/helpers/shape-factory.d.ts +9 -4
  70. package/dist/physics/helpers/shape-factory.js +99 -75
  71. package/dist/physics/libs/p2js.helper.js +1 -1
  72. package/dist/physics/libs/position-to-grid-position-converter.d.ts +3 -3
  73. package/dist/physics/libs/position-to-grid-position-converter.js +15 -13
  74. package/dist/physics/module//360/237/223/220services/availability-grid.service.d.ts +10 -5
  75. package/dist/physics/module//360/237/223/220services/availability-grid.service.js +77 -57
  76. package/dist/physics/module//360/237/223/220services/border.service.d.ts +2 -2
  77. package/dist/physics/module//360/237/223/220services/border.service.js +57 -37
  78. package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.js +1 -1
  79. package/dist/physics/module//360/237/223/220services/collisions.service.d.ts +7 -7
  80. package/dist/physics/module//360/237/223/220services/collisions.service.js +110 -98
  81. package/dist/physics/module//360/237/223/220services/debug-visuals.service.d.ts +28 -6
  82. package/dist/physics/module//360/237/223/220services/debug-visuals.service.js +121 -89
  83. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.d.ts +15 -7
  84. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.js +117 -93
  85. package/dist/physics/module//360/237/223/220services/explosion.service.d.ts +14 -7
  86. package/dist/physics/module//360/237/223/220services/explosion.service.js +102 -77
  87. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.d.ts +15 -7
  88. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.js +117 -93
  89. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.d.ts +14 -7
  90. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.js +102 -77
  91. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.d.ts +3 -3
  92. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.js +71 -67
  93. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.d.ts +3 -3
  94. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.js +71 -67
  95. package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.js +1 -1
  96. package/dist/physics/module//360/237/223/220services/materials.service.d.ts +16 -11
  97. package/dist/physics/module//360/237/223/220services/materials.service.js +118 -108
  98. package/dist/physics/module//360/237/223/220services/path-finder.service.d.ts +19 -8
  99. package/dist/physics/module//360/237/223/220services/path-finder.service.js +121 -82
  100. package/dist/physics/module//360/237/223/220services/physics-world.service.d.ts +30 -15
  101. package/dist/physics/module//360/237/223/220services/physics-world.service.js +122 -100
  102. package/dist/physics/module//360/237/223/220services/ray-casting.service.d.ts +3 -3
  103. package/dist/physics/module//360/237/223/220services/ray-casting.service.js +87 -86
  104. package/dist/physics/module//360/237/223/220services/shape-creation.service.d.ts +9 -4
  105. package/dist/physics/module//360/237/223/220services/shape-creation.service.js +113 -84
  106. package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.js +2 -1
  107. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.d.ts +8 -8
  108. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.js +32 -33
  109. package/dist/physics/physics-world.d.ts +50 -34
  110. package/dist/physics/physics-world.js +142 -133
  111. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.d.ts +3 -3
  112. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.js +15 -13
  113. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.d.ts +9 -9
  114. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.js +82 -77
  115. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.d.ts +18 -14
  116. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.js +91 -79
  117. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.d.ts +11 -11
  118. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.js +84 -76
  119. package/dist/physics/sub-elements/collisions/physics-collision.d.ts +7 -7
  120. package/dist/physics/sub-elements/collisions/physics-collision.js +43 -44
  121. package/dist/physics/sub-elements/elements/physics-body-groups.d.ts +11 -11
  122. package/dist/physics/sub-elements/elements/physics-body-groups.js +54 -54
  123. package/dist/physics/sub-elements/elements/physics-materials.d.ts +15 -10
  124. package/dist/physics/sub-elements/elements/physics-materials.js +101 -100
  125. package/dist/physics/sub-elements/elements/physics-world-borders.d.ts +3 -3
  126. package/dist/physics/sub-elements/elements/physics-world-borders.js +69 -45
  127. package/dist/physics/sub-elements/physics-body-groups.d.ts +8 -8
  128. package/dist/physics/sub-elements/physics-body-groups.js +41 -42
  129. package/dist/physics/sub-elements/physics-collision.d.ts +16 -16
  130. package/dist/physics/sub-elements/physics-collision.js +141 -121
  131. package/dist/physics/sub-elements/physics-materials.d.ts +15 -10
  132. package/dist/physics/sub-elements/physics-materials.js +101 -100
  133. package/dist/physics/sub-elements/physics-world-borders.d.ts +2 -2
  134. package/dist/physics/sub-elements/physics-world-borders.js +25 -26
  135. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.d.ts +15 -11
  136. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.js +59 -59
  137. package/dist/physics/sub-elements/raycasting/physics-explosion.d.ts +13 -6
  138. package/dist/physics/sub-elements/raycasting/physics-explosion.js +108 -73
  139. package/dist/physics/sub-elements/raycasting/ray-cast.d.ts +19 -19
  140. package/dist/physics/sub-elements/raycasting/ray-cast.js +93 -98
  141. package/dist/pixi/display-object/components/filters.d.ts +18 -18
  142. package/dist/pixi/display-object/components/filters.js +106 -81
  143. package/dist/pixi/display-object/components/glow-effect.d.ts +8 -8
  144. package/dist/pixi/display-object/components/glow-effect.js +33 -36
  145. package/dist/pixi/display-object/components/glow-filter.d.ts +8 -8
  146. package/dist/pixi/display-object/components/glow-filter.js +33 -36
  147. package/dist/pixi/display-object/container-attributes.js +1 -1
  148. package/dist/pixi/display-object/display-object-attributes.d.ts +41 -41
  149. package/dist/pixi/display-object/display-object-attributes.js +148 -150
  150. package/dist/pixi/display-object/display-object.d.ts +17 -17
  151. package/dist/pixi/display-object/display-object.js +79 -75
  152. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.d.ts +9 -4
  153. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.js +89 -77
  154. package/dist/pixi/display-object/filters/base-filters/blur.filter.js +30 -30
  155. package/dist/pixi/display-object/filters/base-filters/contrast-filter.d.ts +9 -4
  156. package/dist/pixi/display-object/filters/base-filters/contrast-filter.js +62 -53
  157. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.d.ts +10 -5
  158. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.js +93 -81
  159. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.d.ts +12 -7
  160. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.js +120 -109
  161. package/dist/pixi/display-object/filters/base-filters/expand-with-color.d.ts +10 -5
  162. package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.js +32 -32
  163. package/dist/pixi/display-object/filters/base-filters/expand-with-color.js +92 -85
  164. package/dist/pixi/display-object/filters/templates/checking-neighbors.template.js +28 -28
  165. package/dist/pixi/display-object/filters/templates/plane.template.js +20 -20
  166. package/dist/pixi/display-object/filters.js +20 -4
  167. package/dist/pixi/display-object/objects/components/filters.d.ts +18 -18
  168. package/dist/pixi/display-object/objects/components/filters.js +106 -81
  169. package/dist/pixi/display-object/objects/container.d.ts +2 -2
  170. package/dist/pixi/display-object/objects/container.js +39 -30
  171. package/dist/pixi/display-object/objects/graphics.d.ts +28 -28
  172. package/dist/pixi/display-object/objects/graphics.js +218 -202
  173. package/dist/pixi/display-object/objects/helpers/filters.d.ts +25 -25
  174. package/dist/pixi/display-object/objects/helpers/filters.js +150 -124
  175. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.d.ts +7 -7
  176. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js +114 -95
  177. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.d.ts +5 -5
  178. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.js +81 -57
  179. package/dist/pixi/display-object/objects/sprite.d.ts +43 -43
  180. package/dist/pixi/display-object/objects/sprite.js +248 -233
  181. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.js +1 -1
  182. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.test.js +9 -9
  183. package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.d.ts +1 -1
  184. package/dist/pixi/display-object/objects/text.d.ts +25 -25
  185. package/dist/pixi/display-object/objects/text.js +111 -102
  186. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.d.ts +13 -9
  187. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.js +96 -67
  188. package/dist/pixi/game.d.ts +1 -1
  189. package/dist/pixi/game.js +2 -2
  190. package/dist/pixi/helpers/glow-sprite-generator.d.ts +6 -6
  191. package/dist/pixi/helpers/glow-sprite-generator.js +99 -84
  192. package/dist/pixi/helpers/pixi-container.helper.d.ts +1 -1
  193. package/dist/pixi/helpers/pixi-container.helper.js +10 -8
  194. package/dist/pixi/helpers/screen-position-to-stage.helper.d.ts +1 -1
  195. package/dist/pixi/helpers/screen-position-to-stage.helper.js +12 -12
  196. package/dist/pixi/helpers/screen-position-to-stage.helper.test.js +174 -79
  197. package/dist/pixi/modules/CAMERA/index.d.ts +1 -1
  198. package/dist/pixi/modules/CAMERA/index.js +3 -3
  199. package/dist/services/keyboard/keyboard.d.ts +4 -4
  200. package/dist/services/keyboard/keyboard.js +39 -31
  201. package/dist/services/mouse/mouse.service.d.ts +8 -8
  202. package/dist/services/mouse/mouse.service.js +65 -53
  203. package/dist/services/mouse/mouser-target-focus.service.d.ts +11 -11
  204. package/dist/services/mouse/mouser-target-focus.service.js +83 -81
  205. package/dist/utilities/libraries/animator/animating-content/state-animation.d.ts +29 -26
  206. package/dist/utilities/libraries/animator/animating-content/state-animation.js +159 -165
  207. package/dist/utilities/libraries/animator/animating-content/state-animation.test.js +386 -375
  208. package/dist/utilities/libraries/animator/animator.spec.js +765 -656
  209. package/dist/utilities/libraries/binary-heap/binary-heap.d.ts +11 -11
  210. package/dist/utilities/libraries/binary-heap/binary-heap.js +79 -81
  211. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.d.ts +11 -11
  212. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.js +79 -81
  213. package/dist/utilities/libraries/data-structures/grid/grid.d.ts +35 -31
  214. package/dist/utilities/libraries/data-structures/grid/grid.js +128 -117
  215. package/dist/utilities/libraries/data-structures/grid/grid.spec.js +176 -138
  216. package/dist/utilities/libraries/data-structures/grid/grid.test.js +218 -141
  217. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.d.ts +3 -3
  218. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.js +15 -13
  219. package/dist/utilities/libraries/data-structures/queue/queue.d.ts +21 -21
  220. package/dist/utilities/libraries/data-structures/queue/queue.js +63 -66
  221. package/dist/utilities/libraries/data-structures/queue/queue.test.js +54 -55
  222. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.spec.js +122 -68
  223. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.spec.js +140 -135
  224. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.spec.js +293 -229
  225. package/dist/utilities/libraries/path-finder/path-finder.d.ts +7 -7
  226. package/dist/utilities/libraries/path-finder/path-finder.js +113 -109
  227. package/dist/utilities/libraries/path-finder/path-finder.spec.js +131 -106
  228. package/dist/utilities/services/keyboard/keyboard.d.ts +4 -4
  229. package/dist/utilities/services/keyboard/keyboard.js +42 -34
  230. package/dist/utilities/services/mouse/helpers/mouse-position.helper.d.ts +1 -1
  231. package/dist/utilities/services/mouse/helpers/mouse-position.helper.js +12 -12
  232. package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js +168 -73
  233. package/dist/utilities/services/mouse/mouse-target-focus.service.d.ts +15 -15
  234. package/dist/utilities/services/mouse/mouse-target-focus.service.js +79 -76
  235. package/dist/utilities/services/mouse/mouse.service.d.ts +9 -9
  236. package/dist/utilities/services/mouse/mouse.service.js +86 -72
  237. package/dist/utilities/services/mouse/mouser-target-focus.service.d.ts +11 -11
  238. package/dist/utilities/services/mouse/mouser-target-focus.service.js +83 -81
  239. package/package.json +6 -12
@@ -1,57 +1,57 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ Object.defineProperty(exports, '__esModule', { value: true });
3
2
  exports.ViewCreationHelper = void 0;
4
- const update_cycle_1 = require("../../update-cycle");
5
- const service_1 = require("../../service/service");
6
- const entity_store_helper_1 = require("./entity-store.helper");
3
+ const update_cycle_1 = require('../../update-cycle');
4
+ const service_1 = require('../../service/service');
5
+ const entity_store_helper_1 = require('./entity-store.helper');
7
6
  class ViewCreationHelper {
8
- static { this.viewRegistries = new Map(); }
9
- static registerView(ViewClass, EntityClass) {
10
- if (!ViewCreationHelper.viewRegistries.has(EntityClass)) {
11
- ViewCreationHelper.viewRegistries.set(EntityClass, []);
12
- }
13
- let relatedRegistries = ViewCreationHelper.viewRegistries.get(EntityClass);
14
- relatedRegistries && relatedRegistries.push(ViewClass);
15
- let alreadyCreatedEntities = entity_store_helper_1.EntityStoreHelper.getEntities(EntityClass);
16
- alreadyCreatedEntities.forEach(entity => {
17
- this.createView(entity, ViewClass);
18
- });
19
- }
20
- static createView(entity, ViewClass) {
21
- let timeout = setTimeout(() => {
22
- console.warn(`View - createView: view init is taking too long! entity: "${ViewClass.name}"`);
23
- }, 1000);
24
- try {
25
- let resolvedViewArgs = service_1.Service.resolveParameters([this], ViewClass.$meta.paramtypes);
26
- let view = new ViewClass(entity, ...resolvedViewArgs.slice(1));
27
- view['_entity'] = entity;
28
- view['init']().then(() => {
29
- clearTimeout(timeout);
30
- view['afterInit']();
31
- });
32
- entity['viewCreationHelper'].views.push(view);
33
- }
34
- catch (e) {
35
- console.error(e);
36
- }
7
+ static {
8
+ ViewCreationHelper.viewRegistries = new Map();
9
+ }
10
+ static registerView(ViewClass, EntityClass) {
11
+ if (!ViewCreationHelper.viewRegistries.has(EntityClass)) {
12
+ ViewCreationHelper.viewRegistries.set(EntityClass, []);
37
13
  }
38
- constructor(entity) {
39
- this.entity = entity;
40
- this.views = [];
14
+ const relatedRegistries = ViewCreationHelper.viewRegistries.get(EntityClass);
15
+ relatedRegistries && relatedRegistries.push(ViewClass);
16
+ const alreadyCreatedEntities = entity_store_helper_1.EntityStoreHelper.getEntities(EntityClass);
17
+ alreadyCreatedEntities.forEach(entity => {
18
+ ViewCreationHelper.createView(entity, ViewClass);
19
+ });
20
+ }
21
+ static createView(entity, ViewClass) {
22
+ const timeout = setTimeout(() => {
23
+ console.warn(`View - createView: view init is taking too long! entity: "${ViewClass.name}"`);
24
+ }, 1000);
25
+ try {
26
+ const resolvedViewArgs = service_1.Service.resolveParameters([ViewCreationHelper], ViewClass.$meta.paramtypes);
27
+ const view = new ViewClass(entity, ...resolvedViewArgs.slice(1));
28
+ view['_entity'] = entity;
29
+ view['init']().then(() => {
30
+ clearTimeout(timeout);
31
+ view['afterInit']();
32
+ });
33
+ entity['viewCreationHelper'].views.push(view);
34
+ } catch (e) {
35
+ console.error(e);
41
36
  }
42
- createViews() {
43
- if (!this.entity['destroyed']) {
44
- let registeredViewClasses = ViewCreationHelper.viewRegistries.get(this.entity.constructor);
45
- if (registeredViewClasses) {
46
- registeredViewClasses.forEach(ViewClass => {
47
- ViewCreationHelper.createView(this.entity, ViewClass);
48
- });
49
- }
50
- }
37
+ }
38
+ constructor(entity) {
39
+ this.entity = entity;
40
+ this.views = [];
41
+ }
42
+ createViews() {
43
+ if (!this.entity['destroyed']) {
44
+ const registeredViewClasses = ViewCreationHelper.viewRegistries.get(this.entity.constructor);
45
+ if (registeredViewClasses) {
46
+ registeredViewClasses.forEach(ViewClass => {
47
+ ViewCreationHelper.createView(this.entity, ViewClass);
48
+ });
49
+ }
51
50
  }
51
+ }
52
52
  }
53
53
  exports.ViewCreationHelper = ViewCreationHelper;
54
54
  update_cycle_1.UpdateCycle.hardResetAction.subscribe(() => {
55
- ViewCreationHelper['viewRegistries'] = new Map();
55
+ ViewCreationHelper['viewRegistries'] = new Map();
56
56
  });
57
- //# sourceMappingURL=view-creation.helper.js.map
57
+ //# sourceMappingURL=view-creation.helper.js.map
@@ -1,231 +1,227 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1
+ var __createBinding =
2
+ (this && this.__createBinding) ||
3
+ (Object.create
4
+ ? (o, m, k, k2) => {
5
+ if (k2 === undefined) k2 = k;
6
+ var desc = Object.getOwnPropertyDescriptor(m, k);
7
+ if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
+ desc = { enumerable: true, get: () => m[k] };
9
+ }
10
+ Object.defineProperty(o, k2, desc);
11
+ }
12
+ : (o, m, k, k2) => {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ });
16
+ var __setModuleDefault =
17
+ (this && this.__setModuleDefault) ||
18
+ (Object.create
19
+ ? (o, v) => {
20
+ Object.defineProperty(o, 'default', { enumerable: true, value: v });
21
+ }
22
+ : (o, v) => {
23
+ o['default'] = v;
24
+ });
25
+ var __decorate =
26
+ (this && this.__decorate) ||
27
+ ((decorators, target, key, desc) => {
28
+ var c = arguments.length,
29
+ r = c < 3 ? target : desc === null ? (desc = Object.getOwnPropertyDescriptor(target, key)) : desc,
30
+ d;
31
+ if (typeof Reflect === 'object' && typeof Reflect.decorate === 'function')
32
+ r = Reflect.decorate(decorators, target, key, desc);
33
+ else
34
+ for (var i = decorators.length - 1; i >= 0; i--)
35
+ if ((d = decorators[i])) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
36
  return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
- var __importStar = (this && this.__importStar) || function (mod) {
37
+ });
38
+ var __importStar =
39
+ (this && this.__importStar) ||
40
+ (mod => {
25
41
  if (mod && mod.__esModule) return mod;
26
42
  var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
43
+ if (mod != null) for (var k in mod) if (k !== 'default' && Object.hasOwn(mod, k)) __createBinding(result, mod, k);
28
44
  __setModuleDefault(result, mod);
29
45
  return result;
30
- };
31
- var __metadata = (this && this.__metadata) || function (k, v) {
32
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
- };
34
- Object.defineProperty(exports, "__esModule", { value: true });
35
- const vitest_1 = require("vitest");
36
- const helpers_lib_1 = require("helpers-lib");
37
- const ActionsLib = __importStar(require("actions-lib"));
38
- const update_loop_1 = require("../update-loop");
39
- const scene_1 = require("./scene");
40
- const entity_1 = require("../entity/entity");
41
- const view_1 = require("../view/view");
42
- const service_1 = require("../service/service");
43
- const decorate_actions_lib_1 = require("../attachable/helpers/decorate-actions-lib");
46
+ });
47
+ var __metadata =
48
+ (this && this.__metadata) ||
49
+ ((k, v) => {
50
+ if (typeof Reflect === 'object' && typeof Reflect.metadata === 'function') return Reflect.metadata(k, v);
51
+ });
52
+ Object.defineProperty(exports, '__esModule', { value: true });
53
+ const vitest_1 = require('vitest');
54
+ const helpers_lib_1 = require('helpers-lib');
55
+ const ActionsLib = __importStar(require('actions-lib'));
56
+ const update_loop_1 = require('../update-loop');
57
+ const scene_1 = require('./scene');
58
+ const entity_1 = require('../entity/entity');
59
+ const view_1 = require('../view/view');
60
+ const service_1 = require('../service/service');
61
+ const decorate_actions_lib_1 = require('../attachable/helpers/decorate-actions-lib');
44
62
  decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
45
63
  (0, vitest_1.describe)('SCENE', () => {
46
- (0, vitest_1.beforeEach)(() => {
47
- update_loop_1.UpdateCycle.hardResetAction.trigger();
48
- });
49
- (0, vitest_1.test)('create scene', () => {
50
- let SampleScene = class SampleScene extends scene_1.Scene {
51
- };
52
- SampleScene = __decorate([
53
- (0, scene_1.SceneDecorator)()
54
- ], SampleScene);
55
- SampleScene.open(undefined);
56
- (0, vitest_1.expect)(scene_1.Scene.activeScene).toBeDefined();
57
- (0, vitest_1.expect)(scene_1.Scene.activeScene).toBeInstanceOf(SampleScene);
58
- });
59
- (0, vitest_1.test)('arguments in open call should be passed to the init function', () => {
60
- let SampleScene = class SampleScene extends scene_1.Scene {
61
- init(input) {
62
- (0, vitest_1.expect)(input.arg1).toEqual('test');
63
- (0, vitest_1.expect)(input.arg2).toEqual(1);
64
- }
65
- };
66
- SampleScene = __decorate([
67
- (0, scene_1.SceneDecorator)()
68
- ], SampleScene);
69
- SampleScene.open({ arg1: 'test', arg2: 1 });
70
- });
71
- (0, vitest_1.test)('should inject service', () => {
72
- let SampleService = class SampleService {
73
- constructor() {
74
- this.value = 'test';
75
- }
76
- };
77
- SampleService = __decorate([
78
- (0, service_1.ServiceDecorator)()
79
- ], SampleService);
80
- let SampleScene = class SampleScene extends scene_1.Scene {
81
- constructor(sampleService) {
82
- super();
83
- this.sampleService = sampleService;
84
- }
85
- init() {
86
- (0, vitest_1.expect)(this.sampleService.value).toEqual('test');
87
- }
88
- };
89
- SampleScene = __decorate([
90
- (0, scene_1.SceneDecorator)(),
91
- __metadata("design:paramtypes", [SampleService])
92
- ], SampleScene);
93
- SampleScene.open(undefined);
94
- });
95
- (0, vitest_1.test)('open scene should destroy the previous scene', () => {
96
- var SampleScene1_1;
97
- let SampleScene1 = class SampleScene1 extends scene_1.Scene {
98
- static { SampleScene1_1 = this; }
99
- static { this.destroyCalled = false; }
100
- destroy() {
101
- SampleScene1_1.destroyCalled = true;
102
- }
103
- };
104
- SampleScene1 = SampleScene1_1 = __decorate([
105
- (0, scene_1.SceneDecorator)()
106
- ], SampleScene1);
107
- let SampleScene2 = class SampleScene2 extends scene_1.Scene {
108
- };
109
- SampleScene2 = __decorate([
110
- (0, scene_1.SceneDecorator)()
111
- ], SampleScene2);
112
- SampleScene1.open(undefined);
113
- update_loop_1.UpdateCycle.triggerUpdateTick(0); // Update cycle should take place to destroy functions to be called
114
- (0, vitest_1.expect)(SampleScene1.destroyCalled).toBeFalsy();
115
- SampleScene2.open(undefined);
116
- update_loop_1.UpdateCycle.triggerUpdateTick(0); // Update cycle should take place to destroy functions to be called
117
- (0, vitest_1.expect)(scene_1.Scene.activeScene).toBeInstanceOf(SampleScene2);
118
- (0, vitest_1.expect)(SampleScene1.destroyCalled).toBeTruthy();
119
- });
120
- (0, vitest_1.test)('get instance should return the scene with its type', () => {
121
- let SampleScene = class SampleScene extends scene_1.Scene {
122
- };
123
- SampleScene = __decorate([
124
- (0, scene_1.SceneDecorator)()
125
- ], SampleScene);
126
- SampleScene.open(undefined);
127
- (0, vitest_1.expect)(SampleScene.getInstanceOrFail()).toBeInstanceOf(SampleScene);
128
- });
129
- (0, vitest_1.test)('getInstance should throw error when there is no active scene', () => {
130
- let SampleScene = class SampleScene extends scene_1.Scene {
131
- };
132
- SampleScene = __decorate([
133
- (0, scene_1.SceneDecorator)()
134
- ], SampleScene);
135
- (0, vitest_1.expect)(() => SampleScene.getInstanceOrFail()).toThrow();
136
- });
137
- (0, vitest_1.test)('getInstance should throw error when called while the open scene belongs to another class', () => {
138
- let SampleScene = class SampleScene extends scene_1.Scene {
139
- };
140
- SampleScene = __decorate([
141
- (0, scene_1.SceneDecorator)()
142
- ], SampleScene);
143
- let SampleScene2 = class SampleScene2 extends scene_1.Scene {
144
- };
145
- SampleScene2 = __decorate([
146
- (0, scene_1.SceneDecorator)()
147
- ], SampleScene2);
148
- SampleScene.open(undefined);
149
- (0, vitest_1.expect)(() => SampleScene2.getInstanceOrFail()).toThrow();
150
- });
151
- (0, vitest_1.test)('destroyed scenes should destroy its entities and its views', () => {
152
- var SampleEntity_1;
153
- let SampleScene = class SampleScene extends scene_1.Scene {
154
- };
155
- SampleScene = __decorate([
156
- (0, scene_1.SceneDecorator)()
157
- ], SampleScene);
158
- let SampleScene2 = class SampleScene2 extends scene_1.Scene {
159
- };
160
- SampleScene2 = __decorate([
161
- (0, scene_1.SceneDecorator)()
162
- ], SampleScene2);
163
- let SampleEntity = class SampleEntity extends entity_1.Entity {
164
- static { SampleEntity_1 = this; }
165
- static { this.entityDestroyCalled = false; }
166
- destroy() {
167
- SampleEntity_1.entityDestroyCalled = true;
168
- }
169
- };
170
- SampleEntity = SampleEntity_1 = __decorate([
171
- (0, entity_1.EntityDecorator)()
172
- ], SampleEntity);
173
- let viewDestroyCalled = false;
174
- let SampleView = class SampleView extends view_1.View {
175
- destroy() {
176
- viewDestroyCalled = true;
177
- }
178
- };
179
- SampleView = __decorate([
180
- (0, view_1.ViewDecorator)({
181
- entity: SampleEntity
182
- })
183
- ], SampleView);
184
- SampleScene.open(undefined);
185
- new SampleEntity().attach(scene_1.Scene.activeScene);
186
- SampleScene2.open(undefined);
187
- update_loop_1.UpdateCycle.triggerUpdateTick(0); // Update cycle should take place to destroy functions to be called
188
- (0, vitest_1.expect)(SampleEntity.entityDestroyCalled).toBeTruthy();
189
- (0, vitest_1.expect)(viewDestroyCalled).toBeTruthy();
190
- });
191
- (0, vitest_1.test)('entity should create the update cycle', async () => {
192
- var SampleScene_1;
193
- let SampleScene = class SampleScene extends scene_1.Scene {
194
- static { SampleScene_1 = this; }
195
- static { this.sceneUpdateCalled = false; }
196
- update(time, delta) {
197
- SampleScene_1.sceneUpdateCalled = true;
198
- }
199
- };
200
- SampleScene = SampleScene_1 = __decorate([
201
- (0, scene_1.SceneDecorator)()
202
- ], SampleScene);
203
- let SampleEntity = class SampleEntity extends entity_1.Entity {
204
- };
205
- SampleEntity = __decorate([
206
- (0, entity_1.EntityDecorator)()
207
- ], SampleEntity);
208
- let viewUpdateCalled = false;
209
- let SampleView = class SampleView extends view_1.View {
210
- constructor(entity) {
211
- super();
212
- }
213
- update() {
214
- viewUpdateCalled = true;
215
- }
216
- };
217
- SampleView = __decorate([
218
- (0, view_1.ViewDecorator)({
219
- entity: SampleEntity
220
- }),
221
- __metadata("design:paramtypes", [SampleEntity])
222
- ], SampleView);
223
- SampleScene.open(undefined);
224
- new SampleEntity().attach(scene_1.Scene.activeScene);
225
- await (0, helpers_lib_1.Wait)(); // Wait for the async view init to expect the update call
226
- update_loop_1.UpdateCycle.triggerUpdateTick(0);
227
- (0, vitest_1.expect)(SampleScene.sceneUpdateCalled).toBeTruthy();
228
- (0, vitest_1.expect)(viewUpdateCalled).toBeTruthy();
229
- });
64
+ (0, vitest_1.beforeEach)(() => {
65
+ update_loop_1.UpdateCycle.hardResetAction.trigger();
66
+ });
67
+ (0, vitest_1.test)('create scene', () => {
68
+ let SampleScene = class SampleScene extends scene_1.Scene {};
69
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
70
+ SampleScene.open(undefined);
71
+ (0, vitest_1.expect)(scene_1.Scene.activeScene).toBeDefined();
72
+ (0, vitest_1.expect)(scene_1.Scene.activeScene).toBeInstanceOf(SampleScene);
73
+ });
74
+ (0, vitest_1.test)('arguments in open call should be passed to the init function', () => {
75
+ let SampleScene = class SampleScene extends scene_1.Scene {
76
+ init(input) {
77
+ (0, vitest_1.expect)(input.arg1).toEqual('test');
78
+ (0, vitest_1.expect)(input.arg2).toEqual(1);
79
+ }
80
+ };
81
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
82
+ SampleScene.open({ arg1: 'test', arg2: 1 });
83
+ });
84
+ (0, vitest_1.test)('should inject service', () => {
85
+ let SampleService = class SampleService {
86
+ constructor() {
87
+ this.value = 'test';
88
+ }
89
+ };
90
+ SampleService = __decorate([(0, service_1.ServiceDecorator)()], SampleService);
91
+ let SampleScene = class SampleScene extends scene_1.Scene {
92
+ constructor(sampleService) {
93
+ super();
94
+ this.sampleService = sampleService;
95
+ }
96
+ init() {
97
+ (0, vitest_1.expect)(this.sampleService.value).toEqual('test');
98
+ }
99
+ };
100
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)(), __metadata('design:paramtypes', [SampleService])], SampleScene);
101
+ SampleScene.open(undefined);
102
+ });
103
+ (0, vitest_1.test)('open scene should destroy the previous scene', () => {
104
+ var SampleScene1_1;
105
+ let SampleScene1 = class SampleScene1 extends scene_1.Scene {
106
+ static {
107
+ SampleScene1_1 = SampleScene1;
108
+ }
109
+ static {
110
+ SampleScene1.destroyCalled = false;
111
+ }
112
+ destroy() {
113
+ SampleScene1_1.destroyCalled = true;
114
+ }
115
+ };
116
+ SampleScene1 = SampleScene1_1 = __decorate([(0, scene_1.SceneDecorator)()], SampleScene1);
117
+ let SampleScene2 = class SampleScene2 extends scene_1.Scene {};
118
+ SampleScene2 = __decorate([(0, scene_1.SceneDecorator)()], SampleScene2);
119
+ SampleScene1.open(undefined);
120
+ update_loop_1.UpdateCycle.triggerUpdateTick(0); // Update cycle should take place to destroy functions to be called
121
+ (0, vitest_1.expect)(SampleScene1.destroyCalled).toBeFalsy();
122
+ SampleScene2.open(undefined);
123
+ update_loop_1.UpdateCycle.triggerUpdateTick(0); // Update cycle should take place to destroy functions to be called
124
+ (0, vitest_1.expect)(scene_1.Scene.activeScene).toBeInstanceOf(SampleScene2);
125
+ (0, vitest_1.expect)(SampleScene1.destroyCalled).toBeTruthy();
126
+ });
127
+ (0, vitest_1.test)('get instance should return the scene with its type', () => {
128
+ let SampleScene = class SampleScene extends scene_1.Scene {};
129
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
130
+ SampleScene.open(undefined);
131
+ (0, vitest_1.expect)(SampleScene.getInstanceOrFail()).toBeInstanceOf(SampleScene);
132
+ });
133
+ (0, vitest_1.test)('getInstance should throw error when there is no active scene', () => {
134
+ let SampleScene = class SampleScene extends scene_1.Scene {};
135
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
136
+ (0, vitest_1.expect)(() => SampleScene.getInstanceOrFail()).toThrow();
137
+ });
138
+ (0, vitest_1.test)('getInstance should throw error when called while the open scene belongs to another class', () => {
139
+ let SampleScene = class SampleScene extends scene_1.Scene {};
140
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
141
+ let SampleScene2 = class SampleScene2 extends scene_1.Scene {};
142
+ SampleScene2 = __decorate([(0, scene_1.SceneDecorator)()], SampleScene2);
143
+ SampleScene.open(undefined);
144
+ (0, vitest_1.expect)(() => SampleScene2.getInstanceOrFail()).toThrow();
145
+ });
146
+ (0, vitest_1.test)('destroyed scenes should destroy its entities and its views', () => {
147
+ var SampleEntity_1;
148
+ let SampleScene = class SampleScene extends scene_1.Scene {};
149
+ SampleScene = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
150
+ let SampleScene2 = class SampleScene2 extends scene_1.Scene {};
151
+ SampleScene2 = __decorate([(0, scene_1.SceneDecorator)()], SampleScene2);
152
+ let SampleEntity = class SampleEntity extends entity_1.Entity {
153
+ static {
154
+ SampleEntity_1 = SampleEntity;
155
+ }
156
+ static {
157
+ SampleEntity.entityDestroyCalled = false;
158
+ }
159
+ destroy() {
160
+ SampleEntity_1.entityDestroyCalled = true;
161
+ }
162
+ };
163
+ SampleEntity = SampleEntity_1 = __decorate([(0, entity_1.EntityDecorator)()], SampleEntity);
164
+ let viewDestroyCalled = false;
165
+ let SampleView = class SampleView extends view_1.View {
166
+ destroy() {
167
+ viewDestroyCalled = true;
168
+ }
169
+ };
170
+ SampleView = __decorate(
171
+ [
172
+ (0, view_1.ViewDecorator)({
173
+ entity: SampleEntity
174
+ })
175
+ ],
176
+ SampleView
177
+ );
178
+ SampleScene.open(undefined);
179
+ new SampleEntity().attach(scene_1.Scene.activeScene);
180
+ SampleScene2.open(undefined);
181
+ update_loop_1.UpdateCycle.triggerUpdateTick(0); // Update cycle should take place to destroy functions to be called
182
+ (0, vitest_1.expect)(SampleEntity.entityDestroyCalled).toBeTruthy();
183
+ (0, vitest_1.expect)(viewDestroyCalled).toBeTruthy();
184
+ });
185
+ (0, vitest_1.test)('entity should create the update cycle', async () => {
186
+ var SampleScene_1;
187
+ let SampleScene = class SampleScene extends scene_1.Scene {
188
+ static {
189
+ SampleScene_1 = SampleScene;
190
+ }
191
+ static {
192
+ SampleScene.sceneUpdateCalled = false;
193
+ }
194
+ update(time, delta) {
195
+ SampleScene_1.sceneUpdateCalled = true;
196
+ }
197
+ };
198
+ SampleScene = SampleScene_1 = __decorate([(0, scene_1.SceneDecorator)()], SampleScene);
199
+ let SampleEntity = class SampleEntity extends entity_1.Entity {};
200
+ SampleEntity = __decorate([(0, entity_1.EntityDecorator)()], SampleEntity);
201
+ let viewUpdateCalled = false;
202
+ let SampleView = class SampleView extends view_1.View {
203
+ constructor(entity) {
204
+ super();
205
+ }
206
+ update() {
207
+ viewUpdateCalled = true;
208
+ }
209
+ };
210
+ SampleView = __decorate(
211
+ [
212
+ (0, view_1.ViewDecorator)({
213
+ entity: SampleEntity
214
+ }),
215
+ __metadata('design:paramtypes', [SampleEntity])
216
+ ],
217
+ SampleView
218
+ );
219
+ SampleScene.open(undefined);
220
+ new SampleEntity().attach(scene_1.Scene.activeScene);
221
+ await (0, helpers_lib_1.Wait)(); // Wait for the async view init to expect the update call
222
+ update_loop_1.UpdateCycle.triggerUpdateTick(0);
223
+ (0, vitest_1.expect)(SampleScene.sceneUpdateCalled).toBeTruthy();
224
+ (0, vitest_1.expect)(viewUpdateCalled).toBeTruthy();
225
+ });
230
226
  });
231
- //# sourceMappingURL=scene.spec.js.map
227
+ //# sourceMappingURL=scene.spec.js.map
@@ -4,12 +4,8 @@ exports.Service = exports.ServiceDecorator = void 0;
4
4
  const update_cycle_1 = require("../update-cycle");
5
5
  require("reflect-metadata");
6
6
  function ServiceDecorator() {
7
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
8
7
  return function (ServiceClass) {
9
8
  let paramtypes = Service.getParametersMeta(ServiceClass);
10
- if (paramtypes.some(type => !type)) {
11
- console.error(`Circular dependency: ${ServiceClass.name}`);
12
- }
13
9
  ServiceClass.$meta = {
14
10
  paramtypes,
15
11
  type: 'service'