bard-legends-framework 0.9.6 → 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 (238) 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.spec.js +490 -506
  30. package/dist/game-entities/view/view.test.js +1 -1
  31. package/dist/lib/animator/animations.d.ts +13 -13
  32. package/dist/lib/animator/animations.js +43 -40
  33. package/dist/lib/animator/animator.d.ts +41 -41
  34. package/dist/lib/animator/animator.js +194 -197
  35. package/dist/lib/animator/animator.spec.js +699 -612
  36. package/dist/lib/animator/index.js +24 -19
  37. package/dist/lib/libraries/animator/animations.d.ts +13 -13
  38. package/dist/lib/libraries/animator/animations.js +43 -40
  39. package/dist/lib/libraries/animator/animator.d.ts +41 -41
  40. package/dist/lib/libraries/animator/animator.js +194 -197
  41. package/dist/lib/libraries/animator/animator.spec.js +699 -612
  42. package/dist/lib/libraries/animator/index.js +24 -19
  43. package/dist/lib/libraries/path-finder/path-finder.d.ts +2 -2
  44. package/dist/lib/libraries/path-finder/path-finder.js +19 -20
  45. package/dist/lib/path-finder/path-finder.d.ts +2 -2
  46. package/dist/lib/path-finder/path-finder.js +19 -20
  47. package/dist/lib/services/keyboard/keyboard.d.ts +4 -4
  48. package/dist/lib/services/keyboard/keyboard.js +39 -31
  49. package/dist/lib/services/mouse/mouse.service.d.ts +8 -8
  50. package/dist/lib/services/mouse/mouse.service.js +65 -53
  51. package/dist/lib/services/mouse/mouser-target-focus.service.d.ts +11 -11
  52. package/dist/lib/services/mouse/mouser-target-focus.service.js +83 -81
  53. package/dist/lib/update-loop.d.ts +10 -10
  54. package/dist/lib/update-loop.js +35 -27
  55. package/dist/physics/entitity-types/immovable-physics-entity.d.ts +6 -6
  56. package/dist/physics/entitity-types/immovable-physics-entity.js +23 -24
  57. package/dist/physics/entitity-types/movable-entity.d.ts +6 -6
  58. package/dist/physics/entitity-types/movable-entity.js +21 -22
  59. package/dist/physics/entitity-types/movable-physics-entity.d.ts +14 -14
  60. package/dist/physics/entitity-types/movable-physics-entity.js +83 -88
  61. package/dist/physics/entitity-types/physics-entity.d.ts +23 -23
  62. package/dist/physics/entitity-types/physics-entity.js +97 -88
  63. package/dist/physics/helpers/closest-available-space.helper.d.ts +16 -16
  64. package/dist/physics/helpers/closest-available-space.helper.js +98 -96
  65. package/dist/physics/helpers/closest-available-space.helper.spec.js +115 -68
  66. package/dist/physics/helpers/p2js.helper.d.ts +3 -3
  67. package/dist/physics/helpers/p2js.helper.js +21 -22
  68. package/dist/physics/helpers/shape-factory.d.ts +9 -4
  69. package/dist/physics/helpers/shape-factory.js +99 -75
  70. package/dist/physics/libs/p2js.helper.js +1 -1
  71. package/dist/physics/libs/position-to-grid-position-converter.d.ts +3 -3
  72. package/dist/physics/libs/position-to-grid-position-converter.js +15 -13
  73. package/dist/physics/module//360/237/223/220services/availability-grid.service.d.ts +10 -5
  74. package/dist/physics/module//360/237/223/220services/availability-grid.service.js +77 -57
  75. package/dist/physics/module//360/237/223/220services/border.service.d.ts +2 -2
  76. package/dist/physics/module//360/237/223/220services/border.service.js +57 -37
  77. package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.js +1 -1
  78. package/dist/physics/module//360/237/223/220services/collisions.service.d.ts +7 -7
  79. package/dist/physics/module//360/237/223/220services/collisions.service.js +110 -98
  80. package/dist/physics/module//360/237/223/220services/debug-visuals.service.d.ts +28 -6
  81. package/dist/physics/module//360/237/223/220services/debug-visuals.service.js +121 -89
  82. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.d.ts +15 -7
  83. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.js +117 -93
  84. package/dist/physics/module//360/237/223/220services/explosion.service.d.ts +14 -7
  85. package/dist/physics/module//360/237/223/220services/explosion.service.js +102 -77
  86. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.d.ts +15 -7
  87. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.js +117 -93
  88. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.d.ts +14 -7
  89. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.js +102 -77
  90. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.d.ts +3 -3
  91. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.js +71 -67
  92. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.d.ts +3 -3
  93. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.js +71 -67
  94. package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.js +1 -1
  95. package/dist/physics/module//360/237/223/220services/materials.service.d.ts +16 -11
  96. package/dist/physics/module//360/237/223/220services/materials.service.js +118 -108
  97. package/dist/physics/module//360/237/223/220services/path-finder.service.d.ts +19 -8
  98. package/dist/physics/module//360/237/223/220services/path-finder.service.js +121 -82
  99. package/dist/physics/module//360/237/223/220services/physics-world.service.d.ts +30 -15
  100. package/dist/physics/module//360/237/223/220services/physics-world.service.js +122 -100
  101. package/dist/physics/module//360/237/223/220services/ray-casting.service.d.ts +3 -3
  102. package/dist/physics/module//360/237/223/220services/ray-casting.service.js +87 -86
  103. package/dist/physics/module//360/237/223/220services/shape-creation.service.d.ts +9 -4
  104. package/dist/physics/module//360/237/223/220services/shape-creation.service.js +113 -84
  105. package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.js +2 -1
  106. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.d.ts +8 -8
  107. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.js +32 -33
  108. package/dist/physics/physics-world.d.ts +50 -34
  109. package/dist/physics/physics-world.js +142 -133
  110. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.d.ts +3 -3
  111. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.js +15 -13
  112. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.d.ts +9 -9
  113. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.js +82 -77
  114. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.d.ts +18 -14
  115. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.js +91 -79
  116. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.d.ts +11 -11
  117. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.js +84 -76
  118. package/dist/physics/sub-elements/collisions/physics-collision.d.ts +7 -7
  119. package/dist/physics/sub-elements/collisions/physics-collision.js +43 -44
  120. package/dist/physics/sub-elements/elements/physics-body-groups.d.ts +11 -11
  121. package/dist/physics/sub-elements/elements/physics-body-groups.js +54 -54
  122. package/dist/physics/sub-elements/elements/physics-materials.d.ts +15 -10
  123. package/dist/physics/sub-elements/elements/physics-materials.js +101 -100
  124. package/dist/physics/sub-elements/elements/physics-world-borders.d.ts +3 -3
  125. package/dist/physics/sub-elements/elements/physics-world-borders.js +69 -45
  126. package/dist/physics/sub-elements/physics-body-groups.d.ts +8 -8
  127. package/dist/physics/sub-elements/physics-body-groups.js +41 -42
  128. package/dist/physics/sub-elements/physics-collision.d.ts +16 -16
  129. package/dist/physics/sub-elements/physics-collision.js +141 -121
  130. package/dist/physics/sub-elements/physics-materials.d.ts +15 -10
  131. package/dist/physics/sub-elements/physics-materials.js +101 -100
  132. package/dist/physics/sub-elements/physics-world-borders.d.ts +2 -2
  133. package/dist/physics/sub-elements/physics-world-borders.js +25 -26
  134. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.d.ts +15 -11
  135. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.js +59 -59
  136. package/dist/physics/sub-elements/raycasting/physics-explosion.d.ts +13 -6
  137. package/dist/physics/sub-elements/raycasting/physics-explosion.js +108 -73
  138. package/dist/physics/sub-elements/raycasting/ray-cast.d.ts +19 -19
  139. package/dist/physics/sub-elements/raycasting/ray-cast.js +93 -98
  140. package/dist/pixi/display-object/components/filters.d.ts +18 -18
  141. package/dist/pixi/display-object/components/filters.js +106 -81
  142. package/dist/pixi/display-object/components/glow-effect.d.ts +8 -8
  143. package/dist/pixi/display-object/components/glow-effect.js +33 -36
  144. package/dist/pixi/display-object/components/glow-filter.d.ts +8 -8
  145. package/dist/pixi/display-object/components/glow-filter.js +33 -36
  146. package/dist/pixi/display-object/container-attributes.js +1 -1
  147. package/dist/pixi/display-object/display-object-attributes.d.ts +41 -41
  148. package/dist/pixi/display-object/display-object-attributes.js +148 -150
  149. package/dist/pixi/display-object/display-object.d.ts +17 -17
  150. package/dist/pixi/display-object/display-object.js +79 -75
  151. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.d.ts +9 -4
  152. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.js +89 -77
  153. package/dist/pixi/display-object/filters/base-filters/blur.filter.js +30 -30
  154. package/dist/pixi/display-object/filters/base-filters/contrast-filter.d.ts +9 -4
  155. package/dist/pixi/display-object/filters/base-filters/contrast-filter.js +62 -53
  156. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.d.ts +10 -5
  157. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.js +93 -81
  158. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.d.ts +12 -7
  159. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.js +120 -109
  160. package/dist/pixi/display-object/filters/base-filters/expand-with-color.d.ts +10 -5
  161. package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.js +32 -32
  162. package/dist/pixi/display-object/filters/base-filters/expand-with-color.js +92 -85
  163. package/dist/pixi/display-object/filters/templates/checking-neighbors.template.js +28 -28
  164. package/dist/pixi/display-object/filters/templates/plane.template.js +20 -20
  165. package/dist/pixi/display-object/filters.js +20 -4
  166. package/dist/pixi/display-object/objects/components/filters.d.ts +18 -18
  167. package/dist/pixi/display-object/objects/components/filters.js +106 -81
  168. package/dist/pixi/display-object/objects/container.d.ts +2 -2
  169. package/dist/pixi/display-object/objects/container.js +39 -30
  170. package/dist/pixi/display-object/objects/graphics.d.ts +28 -28
  171. package/dist/pixi/display-object/objects/graphics.js +218 -202
  172. package/dist/pixi/display-object/objects/helpers/filters.d.ts +25 -25
  173. package/dist/pixi/display-object/objects/helpers/filters.js +150 -124
  174. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.d.ts +7 -7
  175. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js +114 -95
  176. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.d.ts +5 -5
  177. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.js +81 -57
  178. package/dist/pixi/display-object/objects/sprite.d.ts +43 -43
  179. package/dist/pixi/display-object/objects/sprite.js +248 -233
  180. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.js +1 -1
  181. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.test.js +9 -9
  182. package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.d.ts +1 -1
  183. package/dist/pixi/display-object/objects/text.d.ts +25 -25
  184. package/dist/pixi/display-object/objects/text.js +111 -102
  185. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.d.ts +13 -9
  186. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.js +96 -67
  187. package/dist/pixi/game.d.ts +1 -1
  188. package/dist/pixi/game.js +2 -2
  189. package/dist/pixi/helpers/glow-sprite-generator.d.ts +6 -6
  190. package/dist/pixi/helpers/glow-sprite-generator.js +99 -84
  191. package/dist/pixi/helpers/pixi-container.helper.d.ts +1 -1
  192. package/dist/pixi/helpers/pixi-container.helper.js +10 -8
  193. package/dist/pixi/helpers/screen-position-to-stage.helper.d.ts +1 -1
  194. package/dist/pixi/helpers/screen-position-to-stage.helper.js +12 -12
  195. package/dist/pixi/helpers/screen-position-to-stage.helper.test.js +174 -79
  196. package/dist/pixi/modules/CAMERA/index.d.ts +1 -1
  197. package/dist/pixi/modules/CAMERA/index.js +3 -3
  198. package/dist/services/keyboard/keyboard.d.ts +4 -4
  199. package/dist/services/keyboard/keyboard.js +39 -31
  200. package/dist/services/mouse/mouse.service.d.ts +8 -8
  201. package/dist/services/mouse/mouse.service.js +65 -53
  202. package/dist/services/mouse/mouser-target-focus.service.d.ts +11 -11
  203. package/dist/services/mouse/mouser-target-focus.service.js +83 -81
  204. package/dist/utilities/libraries/animator/animating-content/state-animation.d.ts +29 -26
  205. package/dist/utilities/libraries/animator/animating-content/state-animation.js +159 -165
  206. package/dist/utilities/libraries/animator/animating-content/state-animation.test.js +386 -375
  207. package/dist/utilities/libraries/animator/animator.spec.js +765 -656
  208. package/dist/utilities/libraries/binary-heap/binary-heap.d.ts +11 -11
  209. package/dist/utilities/libraries/binary-heap/binary-heap.js +79 -81
  210. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.d.ts +11 -11
  211. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.js +79 -81
  212. package/dist/utilities/libraries/data-structures/grid/grid.d.ts +35 -31
  213. package/dist/utilities/libraries/data-structures/grid/grid.js +128 -117
  214. package/dist/utilities/libraries/data-structures/grid/grid.spec.js +176 -138
  215. package/dist/utilities/libraries/data-structures/grid/grid.test.js +218 -141
  216. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.d.ts +3 -3
  217. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.js +15 -13
  218. package/dist/utilities/libraries/data-structures/queue/queue.d.ts +21 -21
  219. package/dist/utilities/libraries/data-structures/queue/queue.js +63 -66
  220. package/dist/utilities/libraries/data-structures/queue/queue.test.js +54 -55
  221. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.spec.js +122 -68
  222. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.spec.js +140 -135
  223. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.spec.js +293 -229
  224. package/dist/utilities/libraries/path-finder/path-finder.d.ts +7 -7
  225. package/dist/utilities/libraries/path-finder/path-finder.js +113 -109
  226. package/dist/utilities/libraries/path-finder/path-finder.spec.js +131 -106
  227. package/dist/utilities/services/keyboard/keyboard.d.ts +4 -4
  228. package/dist/utilities/services/keyboard/keyboard.js +42 -34
  229. package/dist/utilities/services/mouse/helpers/mouse-position.helper.d.ts +1 -1
  230. package/dist/utilities/services/mouse/helpers/mouse-position.helper.js +12 -12
  231. package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js +168 -73
  232. package/dist/utilities/services/mouse/mouse-target-focus.service.d.ts +15 -15
  233. package/dist/utilities/services/mouse/mouse-target-focus.service.js +79 -76
  234. package/dist/utilities/services/mouse/mouse.service.d.ts +9 -9
  235. package/dist/utilities/services/mouse/mouse.service.js +86 -72
  236. package/dist/utilities/services/mouse/mouser-target-focus.service.d.ts +11 -11
  237. package/dist/utilities/services/mouse/mouser-target-focus.service.js +83 -81
  238. package/package.json +4 -10
@@ -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'