bard-legends-framework 0.10.9 → 0.12.0
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.
- package/dist/actions-performance.test.d.ts +1 -0
- package/dist/actions-performance.test.js +83 -0
- package/dist/game-entities/controller/controller.d.ts +2 -3
- package/dist/game-entities/controller/controller.js +9 -8
- package/dist/game-entities/controller/controller.test.js +2 -2
- package/dist/game-entities/entity/entity.d.ts +11 -9
- package/dist/game-entities/entity/entity.js +20 -16
- package/dist/game-entities/entity/entity.test.js +116 -147
- package/dist/game-entities/entity/helpers/entity-store.helper.d.ts +6 -9
- package/dist/game-entities/entity/helpers/entity-store.helper.js +22 -57
- package/dist/game-entities/entity/helpers/entity-store.helper.test.d.ts +1 -0
- package/dist/game-entities/entity/helpers/entity-store.helper.test.js +136 -0
- package/dist/game-entities/entity/helpers/entity-views.helper.d.ts +7 -7
- package/dist/game-entities/entity/helpers/entity-views.helper.js +28 -23
- package/dist/game-entities/entity/singleton-entity.d.ts +3 -3
- package/dist/game-entities/entity/singleton-entity.js +1 -1
- package/dist/game-entities/entity/singleton-entity.test.js +9 -31
- package/dist/game-entities/hard-reset.d.ts +5 -0
- package/dist/game-entities/hard-reset.js +14 -0
- package/dist/game-entities/index.d.ts +1 -3
- package/dist/game-entities/index.js +3 -7
- package/dist/game-entities/scene/scene.d.ts +15 -15
- package/dist/game-entities/scene/scene.js +61 -60
- package/dist/game-entities/scene/scene.test.js +97 -67
- package/dist/game-entities/service/service.d.ts +1 -4
- package/dist/game-entities/service/service.js +15 -14
- package/dist/game-entities/service/service.test.js +33 -38
- package/dist/game-entities/unit-test.helper.d.ts +5 -0
- package/dist/game-entities/unit-test.helper.js +14 -0
- package/dist/game-entities/update-cycle.d.ts +10 -9
- package/dist/game-entities/update-cycle.js +34 -23
- package/dist/game-entities/view/view.d.ts +10 -11
- package/dist/game-entities/view/view.js +17 -35
- package/dist/game-entities/view/view.test.js +73 -250
- package/dist/physics/entity-types/immovable-physics-entity.d.ts +2 -4
- package/dist/physics/entity-types/immovable-physics-entity.js +4 -6
- package/dist/physics/entity-types/movable-entity.d.ts +1 -1
- package/dist/physics/entity-types/movable-entity.js +6 -6
- package/dist/physics/entity-types/movable-physics-entity.d.ts +10 -11
- package/dist/physics/entity-types/movable-physics-entity.js +31 -32
- package/dist/physics/entity-types/physics-entity.d.ts +12 -15
- package/dist/physics/entity-types/physics-entity.js +30 -28
- package/dist/physics/interfaces.d.ts +6 -6
- package/dist/physics/interfaces.js +4 -4
- package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics-internal.controller.d.ts +16 -16
- package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics-internal.controller.js +22 -22
- package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics.controller.d.ts +20 -20
- package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics.controller.js +30 -30
- package/dist/physics/module//342/232/234/357/270/217gateways/dtos/requests.dto.d.ts +3 -3
- package/dist/physics/module//342/232/234/357/270/217gateways/physics-internal.gateway.d.ts +10 -10
- package/dist/physics/module//342/232/234/357/270/217gateways/physics-internal.gateway.js +16 -16
- package/dist/physics/module//342/232/234/357/270/217gateways/physics.gateway.d.ts +11 -11
- package/dist/physics/module//342/232/234/357/270/217gateways/physics.gateway.js +18 -18
- package/dist/physics/module//360/237/223/220services/collision/collisions.service.d.ts +5 -5
- package/dist/physics/module//360/237/223/220services/collision/collisions.service.js +17 -17
- package/dist/physics/module//360/237/223/220services/collision/hit-test.service.d.ts +4 -4
- package/dist/physics/module//360/237/223/220services/collision/hit-test.service.js +11 -11
- package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.d.ts +2 -2
- package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.js +4 -4
- package/dist/physics/module//360/237/223/220services/creation/border.service.d.ts +2 -2
- package/dist/physics/module//360/237/223/220services/creation/border.service.js +9 -9
- package/dist/physics/module//360/237/223/220services/creation/materials.service.d.ts +7 -7
- package/dist/physics/module//360/237/223/220services/creation/materials.service.js +17 -17
- package/dist/physics/module//360/237/223/220services/creation/physics-world.service.d.ts +11 -11
- package/dist/physics/module//360/237/223/220services/creation/physics-world.service.js +28 -27
- package/dist/physics/module//360/237/223/220services/creation/shape-creation.service.d.ts +4 -4
- package/dist/physics/module//360/237/223/220services/creation/shape-creation.service.js +13 -13
- package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.d.ts +9 -9
- package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.js +19 -19
- package/dist/physics/module//360/237/223/220services/impact/explosion.service.d.ts +9 -9
- package/dist/physics/module//360/237/223/220services/impact/explosion.service.js +20 -20
- package/dist/physics/module//360/237/223/220services/impact/ray-cast-hit-converter.d.ts +1 -1
- package/dist/physics/module//360/237/223/220services/impact/ray-cast-hit-converter.js +4 -4
- package/dist/physics/module//360/237/223/220services/path-finding/availability-grid-cache.service.d.ts +2 -2
- package/dist/physics/module//360/237/223/220services/path-finding/availability-grid-cache.service.js +3 -3
- package/dist/physics/module//360/237/223/220services/path-finding/availability-grid.service.d.ts +5 -5
- package/dist/physics/module//360/237/223/220services/path-finding/availability-grid.service.js +13 -13
- package/dist/physics/module//360/237/223/220services/path-finding/path-finder.service.d.ts +4 -4
- package/dist/physics/module//360/237/223/220services/path-finding/path-finder.service.js +13 -13
- package/dist/physics/module//360/237/223/220services/query/physics-query.service.d.ts +4 -4
- package/dist/physics/module//360/237/223/220services/query/physics-query.service.js +4 -4
- package/dist/physics/module//360/237/223/220services/ray-casting/ray-casting.service.d.ts +1 -4
- package/dist/physics/module//360/237/223/220services/ray-casting/ray-casting.service.js +7 -15
- package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.d.ts +9 -9
- package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.js +60 -49
- package/dist/physics/module//360/237/247/212entities/border.entity.d.ts +1 -1
- package/dist/physics/module//360/237/247/212entities/border.entity.js +3 -3
- package/dist/physics/module//360/237/247/212entities/physics-world.entity.js +2 -2
- package/dist/pixi/components/display-object-array.d.ts +5 -5
- package/dist/pixi/components/display-object-array.js +14 -14
- package/dist/pixi/components/helpers/smooth-scroller.d.ts +7 -7
- package/dist/pixi/components/helpers/smooth-scroller.js +23 -23
- package/dist/pixi/components/helpers/smooth-scroller.test.js +14 -14
- package/dist/pixi/components/menu/menu-entity.d.ts +14 -0
- package/dist/pixi/components/menu/menu-entity.js +48 -0
- package/dist/pixi/components/menu/menu.ui.d.ts +23 -0
- package/dist/pixi/components/menu/menu.ui.js +97 -0
- package/dist/pixi/components/mouse-wheel-listener.ui.d.ts +4 -3
- package/dist/pixi/components/mouse-wheel-listener.ui.js +15 -14
- package/dist/pixi/components/scroll-area.ui.d.ts +1 -1
- package/dist/pixi/components/scroll-area.ui.js +9 -9
- package/dist/pixi/components/scroll-mask.ui.d.ts +9 -8
- package/dist/pixi/components/scroll-mask.ui.js +25 -24
- package/dist/pixi/display-object/container-attributes.d.ts +24 -26
- package/dist/pixi/display-object/container-attributes.js +27 -28
- package/dist/pixi/display-object/container.d.ts +3 -6
- package/dist/pixi/display-object/container.js +2 -12
- package/dist/pixi/display-object/filters/base-filters/blur.filter.d.ts +9 -9
- package/dist/pixi/display-object/filters/base-filters/blur.filter.js +25 -25
- package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.d.ts +7 -7
- package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.js +17 -17
- package/dist/pixi/display-object/filters/composite-filters/glow-filter.d.ts +6 -6
- package/dist/pixi/display-object/filters/composite-filters/glow-filter.js +10 -11
- package/dist/pixi/display-object/filters/helpers/gaussian-values.helper.d.ts +2 -2
- package/dist/pixi/display-object/filters/helpers/gaussian-values.helper.js +5 -5
- package/dist/pixi/display-object/filters/templates/checking-neighbors.template.d.ts +5 -5
- package/dist/pixi/display-object/filters/templates/checking-neighbors.template.js +8 -8
- package/dist/pixi/display-object/filters/templates/plane.template.d.ts +5 -5
- package/dist/pixi/display-object/filters/templates/plane.template.js +7 -7
- package/dist/pixi/display-object/filters.d.ts +7 -7
- package/dist/pixi/display-object/filters.js +34 -34
- package/dist/pixi/display-object/index.d.ts +1 -1
- package/dist/pixi/display-object/objects/graphics/graphics.d.ts +9 -9
- package/dist/pixi/display-object/objects/graphics/graphics.js +25 -25
- package/dist/pixi/display-object/objects/placeholder.d.ts +1 -1
- package/dist/pixi/display-object/objects/placeholder.js +7 -7
- package/dist/pixi/display-object/objects/sprite/glow-sprite-generator.d.ts +9 -9
- package/dist/pixi/display-object/objects/sprite/glow-sprite-generator.js +29 -26
- package/dist/pixi/display-object/objects/sprite/sprite.d.ts +10 -9
- package/dist/pixi/display-object/objects/sprite/sprite.js +62 -53
- package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/pixi-text-style-converter.d.ts +4 -3
- package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.d.ts +6 -6
- package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.js +16 -16
- package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.test.js +28 -28
- package/dist/pixi/display-object/objects/text/helpers/process-steps/2-wrapping-text/consistent-space-text-wrapper.d.ts +1 -1
- package/dist/pixi/display-object/objects/text/helpers/process-steps/2-wrapping-text/consistent-space-text-wrapper.js +3 -3
- package/dist/pixi/display-object/objects/text/helpers/process-steps/2-wrapping-text/rich-text-typewriter.d.ts +17 -17
- package/dist/pixi/display-object/objects/text/helpers/process-steps/2-wrapping-text/rich-text-typewriter.js +62 -62
- package/dist/pixi/display-object/objects/text/helpers/process-steps/2-wrapping-text/rich-text-typewriter.test.js +2 -2
- package/dist/pixi/display-object/objects/text/helpers/process-steps/3-data-out-converter/rich-text-data-out-converter.d.ts +3 -3
- package/dist/pixi/display-object/objects/text/helpers/process-steps/3-data-out-converter/rich-text-data-out-converter.js +6 -6
- package/dist/pixi/display-object/objects/text/helpers/process-steps/3-data-out-converter/rich-text-data-out-converter.test.js +12 -12
- package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.d.ts +2 -2
- package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.test.js +5 -5
- package/dist/pixi/display-object/objects/text/rich-text.d.ts +0 -1
- package/dist/pixi/display-object/objects/text/rich-text.js +0 -1
- package/dist/pixi/display-object/objects/text/text.d.ts +9 -10
- package/dist/pixi/display-object/objects/text/text.js +34 -35
- package/dist/pixi/game.d.ts +26 -17
- package/dist/pixi/game.js +53 -39
- package/dist/pixi/helpers/game-assets.d.ts +5 -5
- package/dist/pixi/helpers/game-assets.js +14 -11
- package/dist/pixi/helpers/position-conversion.helper.d.ts +4 -4
- package/dist/pixi/helpers/position-conversion.helper.js +3 -3
- package/dist/pixi/index.d.ts +3 -37
- package/dist/pixi/index.js +6 -22
- package/dist/pixi/modules/CAMERA/camera.d.ts +5 -4
- package/dist/pixi/modules/CAMERA/camera.js +9 -9
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/camera-view.gateway.d.ts +3 -2
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/camera-view.gateway.js +1 -1
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/controllers/camera-view.controller.d.ts +3 -2
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/controllers/camera-view.controller.js +5 -5
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/controllers/camera.controller.d.ts +3 -3
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/controllers/camera.controller.js +7 -7
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/dtos/requests.dto.d.ts +8 -8
- package/dist/pixi/modules/CAMERA//342/232/234/357/270/217gateways/dtos/requests.dto.js +8 -8
- package/dist/pixi/modules/CAMERA//360/237/223/220services/camera.service.d.ts +2 -2
- package/dist/pixi/modules/CAMERA//360/237/223/220services/camera.service.js +12 -12
- package/dist/pixi/modules/CAMERA//360/237/247/212entities/camera.entity.js +4 -4
- package/dist/pixi/modules/CAMERA//360/237/247/251views/camera.view.d.ts +17 -16
- package/dist/pixi/modules/CAMERA//360/237/247/251views/camera.view.js +50 -49
- package/dist/pixi/pixi-definitions.d.ts +38 -0
- package/dist/pixi/pixi-definitions.js +37 -0
- package/dist/pixi/services/keyboard/keyboard.d.ts +6 -4
- package/dist/pixi/services/keyboard/keyboard.js +15 -13
- package/dist/pixi/services/mouse/mouse-target-focus.service.d.ts +12 -11
- package/dist/pixi/services/mouse/mouse-target-focus.service.js +31 -30
- package/dist/pixi/services/mouse/mouse.service.d.ts +16 -6
- package/dist/pixi/services/mouse/mouse.service.js +42 -22
- package/dist/utilities/animator/animating-content/fade-in-content.d.ts +18 -0
- package/dist/utilities/animator/animating-content/fade-in-content.js +37 -0
- package/dist/utilities/animator/animating-content/fade-in-content.test.d.ts +1 -0
- package/dist/utilities/animator/animating-content/fade-in-content.test.js +10 -0
- package/dist/utilities/animator/animating-content/slide-in-content.d.ts +37 -0
- package/dist/utilities/animator/animating-content/slide-in-content.js +99 -0
- package/dist/utilities/animator/animating-content/slide-in-content.test.d.ts +1 -0
- package/dist/utilities/animator/animating-content/slide-in-content.test.js +10 -0
- package/dist/utilities/animator/animations.d.ts +45 -0
- package/dist/utilities/animator/animations.js +92 -0
- package/dist/utilities/animator/animator/animator.d.ts +44 -0
- package/dist/utilities/animator/animator/animator.js +234 -0
- package/dist/utilities/animator/animator/animator.memory-leak.test.d.ts +1 -0
- package/dist/utilities/animator/animator/animator.memory-leak.test.js +73 -0
- package/dist/utilities/animator/animator/animator.performance.test.d.ts +1 -0
- package/dist/utilities/animator/animator/animator.performance.test.js +116 -0
- package/dist/utilities/animator/animator/animator.test.d.ts +1 -0
- package/dist/utilities/animator/animator/animator.test.js +1046 -0
- package/dist/utilities/animator/animator.d.ts +60 -0
- package/dist/utilities/animator/animator.js +322 -0
- package/dist/utilities/animator/animator.performance.test.d.ts +1 -0
- package/dist/utilities/animator/animator.performance.test.js +46 -0
- package/dist/utilities/animator/animator.test.d.ts +1 -0
- package/dist/utilities/animator/animator.test.js +928 -0
- package/dist/utilities/animator/animator2/animator.d.ts +42 -0
- package/dist/utilities/animator/animator2/animator.js +222 -0
- package/dist/utilities/animator/animator2/animator.memory-leak.test.d.ts +1 -0
- package/dist/utilities/animator/animator2/animator.memory-leak.test.js +73 -0
- package/dist/utilities/animator/animator2/animator.performance.test.d.ts +1 -0
- package/dist/utilities/animator/animator2/animator.performance.test.js +65 -0
- package/dist/utilities/animator/animator2/animator.test.d.ts +1 -0
- package/dist/utilities/animator/animator2/animator.test.js +1007 -0
- package/dist/utilities/animator/animator_old/animator.d.ts +60 -0
- package/dist/utilities/animator/animator_old/animator.js +337 -0
- package/dist/utilities/animator/animator_old/animator.performance.test.d.ts +1 -0
- package/dist/utilities/animator/animator_old/animator.performance.test.js +121 -0
- package/dist/utilities/animator/animator_old/animator.test.d.ts +1 -0
- package/dist/utilities/animator/animator_old/animator.test.js +996 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-content.d.ts +18 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-content.js +37 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-content.test.d.ts +1 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-content.test.js +10 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-state-animation.d.ts +38 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-state-animation.js +208 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/content-animations/fade-in/fade-in-state-animation.test.js +439 -0
- package/dist/utilities/animator/content-animations/slide/slide-in-content.d.ts +41 -0
- package/dist/utilities/animator/content-animations/slide/slide-in-content.js +107 -0
- package/dist/utilities/animator/content-animations/slide/slide-in-content.test.d.ts +1 -0
- package/dist/utilities/animator/content-animations/slide/slide-in-content.test.js +10 -0
- package/dist/utilities/animator/content-animations/slide/slide-state-animation.d.ts +24 -0
- package/dist/utilities/animator/content-animations/slide/slide-state-animation.js +138 -0
- package/dist/utilities/animator/content-animations/slide/slide-state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/content-animations/slide/slide-state-animation.test.js +307 -0
- package/dist/utilities/animator/content-animations/slide/state-animation.d.ts +37 -0
- package/dist/utilities/animator/content-animations/slide/state-animation.js +170 -0
- package/dist/utilities/animator/content-animations/slide/state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/content-animations/slide/state-animation.test.js +340 -0
- package/dist/utilities/animator/index.d.ts +7 -0
- package/dist/utilities/animator/index.js +24 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-content.d.ts +18 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-content.js +37 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-content.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-content.test.js +10 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-state-animation.d.ts +32 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-state-animation.js +168 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/fade-in/fade-in-state-animation.test.js +431 -0
- package/dist/utilities/animator/state-animation/slide/slide-in-content.d.ts +37 -0
- package/dist/utilities/animator/state-animation/slide/slide-in-content.js +100 -0
- package/dist/utilities/animator/state-animation/slide/slide-in-content.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/slide/slide-in-content.test.js +10 -0
- package/dist/utilities/animator/state-animation/slide/slide-state-animation.d.ts +24 -0
- package/dist/utilities/animator/state-animation/slide/slide-state-animation.js +130 -0
- package/dist/utilities/animator/state-animation/slide/slide-state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/slide/slide-state-animation.test.js +301 -0
- package/dist/utilities/animator/state-animation/slide-state-animation.d.ts +24 -0
- package/dist/utilities/animator/state-animation/slide-state-animation.js +130 -0
- package/dist/utilities/animator/state-animation/slide-state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/slide-state-animation.test.js +301 -0
- package/dist/utilities/animator/state-animation/state-animation.d.ts +33 -0
- package/dist/utilities/animator/state-animation/state-animation.js +146 -0
- package/dist/utilities/animator/state-animation/state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/state-animation.test.js +335 -0
- package/dist/utilities/animator/state-animation/visit-disappear-state-animation.d.ts +32 -0
- package/dist/utilities/animator/state-animation/visit-disappear-state-animation.js +168 -0
- package/dist/utilities/animator/state-animation/visit-disappear-state-animation.test.d.ts +1 -0
- package/dist/utilities/animator/state-animation/visit-disappear-state-animation.test.js +431 -0
- package/dist/utilities/data-structures/vector-set/vector-set.d.ts +7 -0
- package/dist/utilities/data-structures/vector-set/vector-set.js +26 -0
- package/dist/utilities/delta-time/delta-time.d.ts +3 -0
- package/dist/utilities/delta-time/delta-time.js +10 -0
- package/dist/utilities/grid-algorithms/closest-available-space/closest-available-space.helper.d.ts +6 -0
- package/dist/utilities/grid-algorithms/closest-available-space/closest-available-space.helper.js +55 -0
- package/dist/utilities/grid-algorithms/closest-available-space/closest-available-space.helper.test.d.ts +1 -0
- package/dist/utilities/grid-algorithms/closest-available-space/closest-available-space.helper.test.js +100 -0
- package/dist/utilities/grid-algorithms/path-finder/path-finder.d.ts +8 -0
- package/dist/utilities/grid-algorithms/path-finder/path-finder.js +98 -0
- package/dist/utilities/grid-algorithms/path-finder/path-finder.test.d.ts +1 -0
- package/dist/utilities/grid-algorithms/path-finder/path-finder.test.js +155 -0
- package/dist/utilities/grid-algorithms/position-to-grid-position-converter.d.ts +6 -0
- package/dist/utilities/grid-algorithms/position-to-grid-position-converter.js +17 -0
- package/dist/utilities/grid-algorithms/vector-field-path-finder/vector-field-path-finder.d.ts +18 -0
- package/dist/utilities/grid-algorithms/vector-field-path-finder/vector-field-path-finder.js +129 -0
- package/dist/utilities/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.d.ts +1 -0
- package/dist/utilities/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.js +254 -0
- package/dist/utilities/index.d.ts +6 -6
- package/dist/utilities/index.js +6 -6
- package/package.json +8 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const actions_lib_1 = require("actions-lib");
|
|
4
|
+
const helpers_lib_1 = require("helpers-lib");
|
|
5
|
+
const vitest_1 = require("vitest");
|
|
6
|
+
vitest_1.describe.skipIf(!process.env.MANUAL)('Performance Tests', () => {
|
|
7
|
+
(0, vitest_1.test)('lib test', async () => {
|
|
8
|
+
let sequence = actions_lib_1.SingleEvent.instant()
|
|
9
|
+
.read(() => { })
|
|
10
|
+
.attachToRoot();
|
|
11
|
+
sequence.destroy();
|
|
12
|
+
}, 60000);
|
|
13
|
+
(0, vitest_1.test)('instant single event', async () => {
|
|
14
|
+
await helpers_lib_1.UnitTestHelper.testPerformance(() => {
|
|
15
|
+
let sequence = actions_lib_1.SingleEvent.instant()
|
|
16
|
+
.read(() => { })
|
|
17
|
+
.attachToRoot();
|
|
18
|
+
sequence.destroy();
|
|
19
|
+
});
|
|
20
|
+
// sequence: 1.2411999702453613
|
|
21
|
+
}, 60000);
|
|
22
|
+
(0, vitest_1.test)('sequence instant', async () => {
|
|
23
|
+
await helpers_lib_1.UnitTestHelper.testPerformance(() => {
|
|
24
|
+
let sequence = actions_lib_1.Sequence.instant()
|
|
25
|
+
.read(() => { })
|
|
26
|
+
.attachToRoot();
|
|
27
|
+
sequence.destroy();
|
|
28
|
+
});
|
|
29
|
+
// 1.1551003456115723
|
|
30
|
+
}, 60000);
|
|
31
|
+
(0, vitest_1.test)('sequence 10x map and resolve', async () => {
|
|
32
|
+
await helpers_lib_1.UnitTestHelper.testPerformance(() => {
|
|
33
|
+
let resolve;
|
|
34
|
+
let sequence = actions_lib_1.Sequence.create(r => {
|
|
35
|
+
resolve = r;
|
|
36
|
+
});
|
|
37
|
+
sequence
|
|
38
|
+
.map(() => { })
|
|
39
|
+
.map(() => { })
|
|
40
|
+
.map(() => { })
|
|
41
|
+
.map(() => { })
|
|
42
|
+
.map(() => { })
|
|
43
|
+
.map(() => { })
|
|
44
|
+
.map(() => { })
|
|
45
|
+
.map(() => { })
|
|
46
|
+
.map(() => { })
|
|
47
|
+
.map(() => { })
|
|
48
|
+
.attachToRoot();
|
|
49
|
+
resolve();
|
|
50
|
+
resolve();
|
|
51
|
+
resolve();
|
|
52
|
+
resolve();
|
|
53
|
+
resolve();
|
|
54
|
+
resolve();
|
|
55
|
+
resolve();
|
|
56
|
+
resolve();
|
|
57
|
+
resolve();
|
|
58
|
+
resolve();
|
|
59
|
+
resolve();
|
|
60
|
+
sequence.destroy();
|
|
61
|
+
});
|
|
62
|
+
// 17.77519989013672
|
|
63
|
+
}, 60000);
|
|
64
|
+
(0, vitest_1.test)('sequence 10x map', async () => {
|
|
65
|
+
await helpers_lib_1.UnitTestHelper.testPerformance(() => {
|
|
66
|
+
let sequence = actions_lib_1.SingleEvent.create(resolve => resolve())
|
|
67
|
+
.map(() => { })
|
|
68
|
+
.map(() => { })
|
|
69
|
+
.map(() => { })
|
|
70
|
+
.map(() => { })
|
|
71
|
+
.map(() => { })
|
|
72
|
+
.map(() => { })
|
|
73
|
+
.map(() => { })
|
|
74
|
+
.map(() => { })
|
|
75
|
+
.map(() => { })
|
|
76
|
+
.map(() => { })
|
|
77
|
+
.attachToRoot();
|
|
78
|
+
sequence.destroy();
|
|
79
|
+
});
|
|
80
|
+
// 3.063300132751465
|
|
81
|
+
}, 60000);
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=actions-performance.test.js.map
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
export declare class ControllerLink {
|
|
2
|
-
private
|
|
3
|
-
private
|
|
2
|
+
private _controllers;
|
|
3
|
+
private _registeredFunctionNames;
|
|
4
4
|
trigger<T>(functionName: string, ...args: any[]): T;
|
|
5
|
-
private registerController;
|
|
6
5
|
}
|
|
7
6
|
export interface ControllerDecoratorMeta {
|
|
8
7
|
controllerLink: ControllerLink;
|
|
@@ -4,11 +4,11 @@ exports.ControllerDecorator = exports.ControllerLink = void 0;
|
|
|
4
4
|
const service_1 = require("../service/service");
|
|
5
5
|
class ControllerLink {
|
|
6
6
|
constructor() {
|
|
7
|
-
this.
|
|
8
|
-
this.
|
|
7
|
+
this._controllers = [];
|
|
8
|
+
this._registeredFunctionNames = [];
|
|
9
9
|
}
|
|
10
10
|
trigger(functionName, ...args) {
|
|
11
|
-
let correspondingController = this.
|
|
11
|
+
let correspondingController = this._controllers.find(controller => !!controller[functionName]);
|
|
12
12
|
if (!correspondingController) {
|
|
13
13
|
throw new Error(`ServiceLink: no defined function with the name: "${functionName}", found in the linked controllers!`);
|
|
14
14
|
}
|
|
@@ -16,30 +16,31 @@ class ControllerLink {
|
|
|
16
16
|
return correspondingController[functionName](...args);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
+
/** @internal */
|
|
19
20
|
registerController(controller) {
|
|
20
21
|
Reflect.ownKeys(controller.constructor.prototype)
|
|
21
22
|
.filter(functionName => functionName !== 'constructor')
|
|
22
23
|
.map(functionName => functionName.toString())
|
|
23
24
|
.forEach(functionName => {
|
|
24
|
-
if (this.
|
|
25
|
+
if (this._registeredFunctionNames.includes(functionName)) {
|
|
25
26
|
throw new Error(`ServiceLink: the function is already registered, function name: "${functionName}"`);
|
|
26
27
|
}
|
|
27
28
|
else {
|
|
28
|
-
this.
|
|
29
|
+
this._registeredFunctionNames.push(functionName);
|
|
29
30
|
}
|
|
30
31
|
});
|
|
31
|
-
this.
|
|
32
|
+
this._controllers.push(controller);
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
exports.ControllerLink = ControllerLink;
|
|
35
36
|
function ControllerDecorator(meta) {
|
|
36
37
|
return function (ControllerClass) {
|
|
37
|
-
let paramtypes = service_1.Service.
|
|
38
|
+
let paramtypes = service_1.Service._getParametersMeta(ControllerClass);
|
|
38
39
|
if (paramtypes.some(type => !type)) {
|
|
39
40
|
console.error(`Circular dependency: ${ControllerClass.name}`);
|
|
40
41
|
}
|
|
41
42
|
else {
|
|
42
|
-
let resolvedArgs = service_1.Service.
|
|
43
|
+
let resolvedArgs = service_1.Service._resolveParameters([], paramtypes);
|
|
43
44
|
let controller = new ControllerClass(...resolvedArgs);
|
|
44
45
|
meta.controllerLink.registerController(controller);
|
|
45
46
|
}
|
|
@@ -7,12 +7,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const vitest_1 = require("vitest");
|
|
10
|
+
const hard_reset_1 = require("../hard-reset");
|
|
10
11
|
const service_1 = require("../service/service");
|
|
11
|
-
const update_cycle_1 = require("../update-cycle");
|
|
12
12
|
const controller_1 = require("./controller");
|
|
13
13
|
(0, vitest_1.describe)('CONTROLLER', () => {
|
|
14
14
|
(0, vitest_1.beforeEach)(() => {
|
|
15
|
-
|
|
15
|
+
hard_reset_1.BardLegendsHardReset.hardReset();
|
|
16
16
|
});
|
|
17
17
|
(0, vitest_1.test)('when gateway triggers service link, it should trigger the controller function', () => {
|
|
18
18
|
let sampleLink = new controller_1.ControllerLink();
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import { Attachable } from '
|
|
2
|
-
export type EntityClassType = new (...args: any[]) =>
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
static
|
|
8
|
-
|
|
1
|
+
import { Attachable, IDAttachable } from 'actions-lib';
|
|
2
|
+
export type EntityClassType<T extends Entity = Entity> = (new (...args: any[]) => T) & {
|
|
3
|
+
id: number;
|
|
4
|
+
};
|
|
5
|
+
export declare function EntityDecorator(): <T extends Entity>(EntityClass: EntityClassType<T>) => any;
|
|
6
|
+
export declare abstract class Entity extends IDAttachable {
|
|
7
|
+
static getInstanceByID<T extends Entity>(this: EntityClassType<T>, entityID: number | undefined): T | undefined;
|
|
8
|
+
static getInstanceByIDOrFail<T extends Entity>(this: EntityClassType<T>, entityID: number): T;
|
|
9
|
+
static getEntities<T extends Entity>(this: EntityClassType<T>): T[];
|
|
9
10
|
constructor();
|
|
10
11
|
destroy(): void;
|
|
11
|
-
attach(parent: Attachable
|
|
12
|
+
attach(parent: Attachable): this;
|
|
13
|
+
attachByID(id: number): this;
|
|
12
14
|
attachToRoot(): this;
|
|
13
15
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Entity = exports.EntityDecorator = void 0;
|
|
4
|
-
const
|
|
4
|
+
const actions_lib_1 = require("actions-lib");
|
|
5
5
|
const update_cycle_1 = require("../update-cycle");
|
|
6
6
|
const entity_store_helper_1 = require("./helpers/entity-store.helper");
|
|
7
7
|
const entity_views_helper_1 = require("./helpers/entity-views.helper");
|
|
@@ -14,16 +14,16 @@ function EntityDecorator() {
|
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
16
|
exports.EntityDecorator = EntityDecorator;
|
|
17
|
-
class Entity extends
|
|
18
|
-
static
|
|
19
|
-
if (
|
|
20
|
-
return entity_store_helper_1.EntityStoreHelper.
|
|
17
|
+
class Entity extends actions_lib_1.IDAttachable {
|
|
18
|
+
static getInstanceByID(entityID) {
|
|
19
|
+
if (entityID) {
|
|
20
|
+
return entity_store_helper_1.EntityStoreHelper.getEntity(this, entityID);
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
static
|
|
24
|
-
let entity = entity_store_helper_1.EntityStoreHelper.
|
|
23
|
+
static getInstanceByIDOrFail(entityID) {
|
|
24
|
+
let entity = entity_store_helper_1.EntityStoreHelper.getEntity(this, entityID);
|
|
25
25
|
if (!entity) {
|
|
26
|
-
throw new Error(`Entity: entity is not found! Name: "${this.name}", id: "${
|
|
26
|
+
throw new Error(`Entity: entity is not found! Name: "${this.name}", id: "${entityID}"`);
|
|
27
27
|
}
|
|
28
28
|
return entity;
|
|
29
29
|
}
|
|
@@ -32,34 +32,38 @@ class Entity extends attachable_1.Attachable {
|
|
|
32
32
|
}
|
|
33
33
|
constructor() {
|
|
34
34
|
super();
|
|
35
|
-
|
|
35
|
+
/** @internal */
|
|
36
|
+
this._viewCreationHelper = new entity_views_helper_1.EntityViewsHelper(this);
|
|
36
37
|
entity_store_helper_1.EntityStoreHelper.registerEntity(this);
|
|
37
38
|
update_cycle_1.UpdateCycle.sceneUpdateAction
|
|
38
39
|
.subscribe(updateData => {
|
|
39
40
|
if (!this.destroyed) {
|
|
40
41
|
this.update(updateData.time, updateData.delta);
|
|
41
|
-
this.
|
|
42
|
+
this._viewCreationHelper.updateViews(updateData.time, updateData.delta);
|
|
42
43
|
}
|
|
43
44
|
})
|
|
44
45
|
.attach(this);
|
|
45
46
|
}
|
|
46
47
|
destroy() {
|
|
47
48
|
if (!this.destroyed) {
|
|
48
|
-
this.
|
|
49
|
-
entity_store_helper_1.EntityStoreHelper.unregisterEntity(this.constructor
|
|
49
|
+
this._viewCreationHelper.destroyViews();
|
|
50
|
+
entity_store_helper_1.EntityStoreHelper.unregisterEntity(this.constructor, this.id);
|
|
50
51
|
super.destroy();
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
|
-
// make the destroy function non-internal
|
|
54
54
|
attach(parent) {
|
|
55
55
|
super.attach(parent);
|
|
56
|
-
this.
|
|
56
|
+
this._viewCreationHelper.createViews();
|
|
57
|
+
return this;
|
|
58
|
+
}
|
|
59
|
+
attachByID(id) {
|
|
60
|
+
super.attachByID(id);
|
|
61
|
+
this._viewCreationHelper.createViews();
|
|
57
62
|
return this;
|
|
58
63
|
}
|
|
59
|
-
// make the destroy function non-internal
|
|
60
64
|
attachToRoot() {
|
|
61
65
|
super.attachToRoot();
|
|
62
|
-
this.
|
|
66
|
+
this._viewCreationHelper.createViews();
|
|
63
67
|
return this;
|
|
64
68
|
}
|
|
65
69
|
/** @internal */
|
|
@@ -1,137 +1,38 @@
|
|
|
1
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
2
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
3
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
4
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
5
|
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;
|
|
22
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
7
|
};
|
|
24
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
-
if (mod && mod.__esModule) return mod;
|
|
26
|
-
var result = {};
|
|
27
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
-
__setModuleDefault(result, mod);
|
|
29
|
-
return result;
|
|
30
|
-
};
|
|
31
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
10
|
};
|
|
34
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
const
|
|
36
|
-
const helpers_lib_1 = require("helpers-lib");
|
|
12
|
+
const actions_lib_1 = require("actions-lib");
|
|
37
13
|
const vitest_1 = require("vitest");
|
|
38
|
-
const
|
|
14
|
+
const hard_reset_1 = require("../hard-reset");
|
|
39
15
|
const scene_1 = require("../scene/scene");
|
|
40
16
|
const update_cycle_1 = require("../update-cycle");
|
|
41
17
|
const view_1 = require("../view/view");
|
|
42
18
|
const entity_1 = require("./entity");
|
|
43
|
-
decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
44
19
|
(0, vitest_1.describe)('ENTITY', () => {
|
|
45
20
|
(0, vitest_1.beforeEach)(() => {
|
|
46
|
-
|
|
21
|
+
hard_reset_1.BardLegendsHardReset.hardReset();
|
|
47
22
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
48
|
-
|
|
23
|
+
init() {
|
|
24
|
+
return actions_lib_1.SingleEvent.instant();
|
|
25
|
+
}
|
|
49
26
|
update() { }
|
|
50
|
-
|
|
27
|
+
prepareToClose() {
|
|
28
|
+
return actions_lib_1.SingleEvent.instant();
|
|
29
|
+
}
|
|
51
30
|
};
|
|
52
31
|
SampleScene = __decorate([
|
|
53
32
|
(0, scene_1.SceneDecorator)()
|
|
54
33
|
], SampleScene);
|
|
55
34
|
SampleScene.open();
|
|
56
35
|
});
|
|
57
|
-
(0, vitest_1.test)('entities should have ids', () => {
|
|
58
|
-
let Sample = class Sample extends entity_1.Entity {
|
|
59
|
-
};
|
|
60
|
-
Sample = __decorate([
|
|
61
|
-
(0, entity_1.EntityDecorator)()
|
|
62
|
-
], Sample);
|
|
63
|
-
let sample = new Sample().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
64
|
-
(0, vitest_1.expect)(sample.id).toBeDefined();
|
|
65
|
-
});
|
|
66
|
-
(0, vitest_1.test)('entities ids should be unique', () => {
|
|
67
|
-
let BaseEntity = class BaseEntity extends entity_1.Entity {
|
|
68
|
-
};
|
|
69
|
-
BaseEntity = __decorate([
|
|
70
|
-
(0, entity_1.EntityDecorator)()
|
|
71
|
-
], BaseEntity);
|
|
72
|
-
let baseEntity = new BaseEntity().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
73
|
-
let Sample = class Sample extends entity_1.Entity {
|
|
74
|
-
};
|
|
75
|
-
Sample = __decorate([
|
|
76
|
-
(0, entity_1.EntityDecorator)()
|
|
77
|
-
], Sample);
|
|
78
|
-
let sample1 = new Sample().attach(baseEntity);
|
|
79
|
-
let sample2 = new Sample().attach(baseEntity);
|
|
80
|
-
(0, vitest_1.expect)(sample1.id !== sample2.id).toBeTruthy();
|
|
81
|
-
});
|
|
82
|
-
(0, vitest_1.test)('class names should be unique', () => {
|
|
83
|
-
(0, vitest_1.expect)(() => {
|
|
84
|
-
{
|
|
85
|
-
let _Sample = class _Sample extends entity_1.Entity {
|
|
86
|
-
};
|
|
87
|
-
_Sample = __decorate([
|
|
88
|
-
(0, entity_1.EntityDecorator)()
|
|
89
|
-
], _Sample);
|
|
90
|
-
}
|
|
91
|
-
{
|
|
92
|
-
let _Sample = class _Sample extends entity_1.Entity {
|
|
93
|
-
};
|
|
94
|
-
_Sample = __decorate([
|
|
95
|
-
(0, entity_1.EntityDecorator)()
|
|
96
|
-
], _Sample);
|
|
97
|
-
}
|
|
98
|
-
}).toThrow();
|
|
99
|
-
});
|
|
100
|
-
(0, vitest_1.test)('attach', async () => {
|
|
101
|
-
var Child_1;
|
|
102
|
-
let Parent = class Parent extends entity_1.Entity {
|
|
103
|
-
};
|
|
104
|
-
Parent = __decorate([
|
|
105
|
-
(0, entity_1.EntityDecorator)()
|
|
106
|
-
], Parent);
|
|
107
|
-
let Child = class Child extends entity_1.Entity {
|
|
108
|
-
static { Child_1 = this; }
|
|
109
|
-
static { this.destroyCalled = false; }
|
|
110
|
-
destroy() {
|
|
111
|
-
if (!this.destroyed) {
|
|
112
|
-
Child_1.destroyCalled = true;
|
|
113
|
-
super.destroy();
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
};
|
|
117
|
-
Child = Child_1 = __decorate([
|
|
118
|
-
(0, entity_1.EntityDecorator)()
|
|
119
|
-
], Child);
|
|
120
|
-
let parent = new Parent().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
121
|
-
new Child().attach(parent);
|
|
122
|
-
parent.destroy();
|
|
123
|
-
await update_cycle_1.UpdateCycle.triggerUpdateTick(1); // Update cycle should take place to destroy functions to be called
|
|
124
|
-
(0, vitest_1.expect)(Child.destroyCalled).toBeTruthy();
|
|
125
|
-
});
|
|
126
|
-
(0, vitest_1.test)('decorator should not effect static variables', () => {
|
|
127
|
-
let Sample = class Sample extends entity_1.Entity {
|
|
128
|
-
static { this.test = 'test'; }
|
|
129
|
-
};
|
|
130
|
-
Sample = __decorate([
|
|
131
|
-
(0, entity_1.EntityDecorator)()
|
|
132
|
-
], Sample);
|
|
133
|
-
(0, vitest_1.expect)(Sample.test).toEqual('test');
|
|
134
|
-
});
|
|
135
36
|
(0, vitest_1.test)('get entity by id basic sample', () => {
|
|
136
37
|
let Sample = class Sample extends entity_1.Entity {
|
|
137
38
|
};
|
|
@@ -139,35 +40,45 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
139
40
|
(0, entity_1.EntityDecorator)()
|
|
140
41
|
], Sample);
|
|
141
42
|
let sample = new Sample().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
142
|
-
(0, vitest_1.expect)(Sample.
|
|
43
|
+
(0, vitest_1.expect)(Sample.getInstanceByID(sample.id)).toEqual(sample);
|
|
143
44
|
});
|
|
144
45
|
(0, vitest_1.test)('get entity by id or fail should return error', () => {
|
|
145
46
|
let Sample1 = class Sample1 extends entity_1.Entity {
|
|
47
|
+
constructor(foo) {
|
|
48
|
+
super();
|
|
49
|
+
this.foo = foo;
|
|
50
|
+
}
|
|
146
51
|
};
|
|
147
52
|
Sample1 = __decorate([
|
|
148
|
-
(0, entity_1.EntityDecorator)()
|
|
53
|
+
(0, entity_1.EntityDecorator)(),
|
|
54
|
+
__metadata("design:paramtypes", [String])
|
|
149
55
|
], Sample1);
|
|
150
56
|
let Sample2 = class Sample2 extends entity_1.Entity {
|
|
57
|
+
constructor(foo) {
|
|
58
|
+
super();
|
|
59
|
+
this.foo = foo;
|
|
60
|
+
}
|
|
151
61
|
};
|
|
152
62
|
Sample2 = __decorate([
|
|
153
|
-
(0, entity_1.EntityDecorator)()
|
|
63
|
+
(0, entity_1.EntityDecorator)(),
|
|
64
|
+
__metadata("design:paramtypes", [String])
|
|
154
65
|
], Sample2);
|
|
155
|
-
|
|
156
|
-
new
|
|
157
|
-
|
|
158
|
-
(0, vitest_1.expect)(() => Sample2.
|
|
66
|
+
// Foo is added to see that there should not be type complaining about the constructor parameters
|
|
67
|
+
let sample1 = new Sample1('foo').attach(scene_1.Scene.getActiveSceneOrFail());
|
|
68
|
+
new Sample2('foo').attach(sample1);
|
|
69
|
+
(0, vitest_1.expect)(() => Sample2.getInstanceByIDOrFail(sample1.id)).toThrow();
|
|
70
|
+
(0, vitest_1.expect)(() => Sample2.getInstanceByIDOrFail(-1)).toThrow();
|
|
159
71
|
});
|
|
160
|
-
(0, vitest_1.test)('destroyed entities should not be reached by
|
|
72
|
+
(0, vitest_1.test)('destroyed entities should not be reached by getInstanceByID', () => {
|
|
161
73
|
let Sample = class Sample extends entity_1.Entity {
|
|
162
74
|
};
|
|
163
75
|
Sample = __decorate([
|
|
164
76
|
(0, entity_1.EntityDecorator)()
|
|
165
77
|
], Sample);
|
|
166
78
|
let sample = new Sample().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
167
|
-
(0, vitest_1.expect)(Sample.
|
|
79
|
+
(0, vitest_1.expect)(Sample.getInstanceByID(sample.id)).toBeDefined();
|
|
168
80
|
sample.destroy();
|
|
169
|
-
|
|
170
|
-
(0, vitest_1.expect)(Sample.getInstanceById(sample.id)).toBeUndefined();
|
|
81
|
+
(0, vitest_1.expect)(Sample.getInstanceByID(sample.id)).toBeUndefined();
|
|
171
82
|
});
|
|
172
83
|
(0, vitest_1.test)('select entities', () => {
|
|
173
84
|
let BaseEntity = class BaseEntity extends entity_1.Entity {
|
|
@@ -185,25 +96,77 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
185
96
|
let sample2 = new Sample().attach(baseEntity);
|
|
186
97
|
(0, vitest_1.expect)(Sample.getEntities()).toEqual([sample1, sample2]);
|
|
187
98
|
});
|
|
188
|
-
(0, vitest_1.test)('
|
|
189
|
-
|
|
99
|
+
(0, vitest_1.test)('decorator should not complain aboutentity with constructor parameters', () => {
|
|
100
|
+
let _Sample = class _Sample extends entity_1.Entity {
|
|
101
|
+
constructor(foo) {
|
|
102
|
+
super();
|
|
103
|
+
this.foo = foo;
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
_Sample = __decorate([
|
|
107
|
+
(0, entity_1.EntityDecorator)(),
|
|
108
|
+
__metadata("design:paramtypes", [String])
|
|
109
|
+
], _Sample);
|
|
110
|
+
});
|
|
111
|
+
(0, vitest_1.test)('if entity get destroyed, the update should not be called', () => {
|
|
112
|
+
scene_1.Scene['_activeScene'].set(undefined);
|
|
113
|
+
let updateCount = 0;
|
|
114
|
+
let entity;
|
|
115
|
+
let _SampleScene = class _SampleScene extends scene_1.Scene {
|
|
116
|
+
init() {
|
|
117
|
+
return actions_lib_1.SingleEvent.instant();
|
|
118
|
+
}
|
|
119
|
+
update() {
|
|
120
|
+
if (entity) {
|
|
121
|
+
entity.destroy();
|
|
122
|
+
entity = undefined;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
prepareToClose() {
|
|
126
|
+
return actions_lib_1.SingleEvent.instant();
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
_SampleScene = __decorate([
|
|
130
|
+
(0, scene_1.SceneDecorator)()
|
|
131
|
+
], _SampleScene);
|
|
132
|
+
let Sample = class Sample extends entity_1.Entity {
|
|
133
|
+
update() {
|
|
134
|
+
updateCount++;
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
Sample = __decorate([
|
|
138
|
+
(0, entity_1.EntityDecorator)()
|
|
139
|
+
], Sample);
|
|
140
|
+
_SampleScene.open();
|
|
141
|
+
(0, vitest_1.expect)(scene_1.Scene.getActiveScene()).toEqual(_SampleScene.getInstance());
|
|
142
|
+
(0, vitest_1.expect)(scene_1.Scene.getActiveScene()).toBeDefined();
|
|
143
|
+
entity = new Sample().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
144
|
+
(0, vitest_1.expect)(updateCount).toEqual(0);
|
|
145
|
+
update_cycle_1.UpdateCycle.triggerUpdateTick(1);
|
|
146
|
+
(0, vitest_1.expect)(updateCount).toEqual(0);
|
|
147
|
+
});
|
|
148
|
+
(0, vitest_1.test)('lifecycle events', () => {
|
|
149
|
+
scene_1.Scene['_activeScene'].set(undefined);
|
|
190
150
|
let callStack = [];
|
|
191
151
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
192
152
|
constructor() {
|
|
193
153
|
super();
|
|
194
154
|
callStack.push('scene constructor');
|
|
195
|
-
this.onDestroy
|
|
196
|
-
.
|
|
155
|
+
this.onDestroy()
|
|
156
|
+
.tap(() => {
|
|
197
157
|
callStack.push('scene destroy');
|
|
198
158
|
})
|
|
199
|
-
.
|
|
159
|
+
.attachToRoot();
|
|
160
|
+
}
|
|
161
|
+
init() {
|
|
162
|
+
return actions_lib_1.SingleEvent.instant();
|
|
200
163
|
}
|
|
201
|
-
async init() { }
|
|
202
164
|
update() {
|
|
203
165
|
callStack.push('scene update');
|
|
204
166
|
}
|
|
205
|
-
|
|
167
|
+
prepareToClose() {
|
|
206
168
|
callStack.push('scene prepare to close');
|
|
169
|
+
return actions_lib_1.SingleEvent.instant();
|
|
207
170
|
}
|
|
208
171
|
};
|
|
209
172
|
SampleScene = __decorate([
|
|
@@ -211,9 +174,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
211
174
|
__metadata("design:paramtypes", [])
|
|
212
175
|
], SampleScene);
|
|
213
176
|
let OtherScene = class OtherScene extends scene_1.Scene {
|
|
214
|
-
|
|
177
|
+
init() {
|
|
178
|
+
return actions_lib_1.SingleEvent.instant();
|
|
179
|
+
}
|
|
215
180
|
update() { }
|
|
216
|
-
|
|
181
|
+
prepareToClose() {
|
|
182
|
+
return actions_lib_1.SingleEvent.instant();
|
|
183
|
+
}
|
|
217
184
|
};
|
|
218
185
|
OtherScene = __decorate([
|
|
219
186
|
(0, scene_1.SceneDecorator)()
|
|
@@ -222,12 +189,11 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
222
189
|
constructor() {
|
|
223
190
|
super();
|
|
224
191
|
callStack.push('entity constructor');
|
|
225
|
-
this.onDestroy
|
|
226
|
-
.
|
|
227
|
-
console.log('entity destroy');
|
|
192
|
+
this.onDestroy()
|
|
193
|
+
.tap(() => {
|
|
228
194
|
callStack.push('entity destroy');
|
|
229
195
|
})
|
|
230
|
-
.
|
|
196
|
+
.attachToRoot();
|
|
231
197
|
}
|
|
232
198
|
update() {
|
|
233
199
|
callStack.push('entity update');
|
|
@@ -238,14 +204,14 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
238
204
|
__metadata("design:paramtypes", [])
|
|
239
205
|
], Sample);
|
|
240
206
|
let _SampleView = class _SampleView extends view_1.View {
|
|
241
|
-
constructor(
|
|
207
|
+
constructor(_) {
|
|
242
208
|
super();
|
|
243
209
|
callStack.push('view constructor');
|
|
244
|
-
this.onDestroy
|
|
245
|
-
.
|
|
210
|
+
this.onDestroy()
|
|
211
|
+
.tap(() => {
|
|
246
212
|
callStack.push('view destroy');
|
|
247
213
|
})
|
|
248
|
-
.
|
|
214
|
+
.attachToRoot();
|
|
249
215
|
}
|
|
250
216
|
update() {
|
|
251
217
|
callStack.push('view update');
|
|
@@ -255,17 +221,19 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
255
221
|
(0, view_1.ViewDecorator)({ entity: Sample }),
|
|
256
222
|
__metadata("design:paramtypes", [Sample])
|
|
257
223
|
], _SampleView);
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
224
|
+
let finalized = false;
|
|
225
|
+
SampleScene.open()
|
|
226
|
+
.asyncMap(() => {
|
|
227
|
+
update_cycle_1.UpdateCycle.triggerUpdateTick(1);
|
|
228
|
+
new Sample().attach(SampleScene.getInstanceOrFail());
|
|
229
|
+
update_cycle_1.UpdateCycle.triggerUpdateTick(1);
|
|
230
|
+
return SampleScene.getInstanceOrFail().close();
|
|
231
|
+
})
|
|
232
|
+
.asyncMap(() => OtherScene.open())
|
|
233
|
+
.tap(() => {
|
|
234
|
+
finalized = true;
|
|
235
|
+
})
|
|
236
|
+
.attachToRoot();
|
|
269
237
|
(0, vitest_1.expect)(callStack).toEqual([
|
|
270
238
|
'scene constructor',
|
|
271
239
|
'scene update',
|
|
@@ -279,6 +247,7 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
279
247
|
'entity destroy',
|
|
280
248
|
'scene destroy'
|
|
281
249
|
]);
|
|
250
|
+
(0, vitest_1.expect)(finalized).toBeTruthy();
|
|
282
251
|
});
|
|
283
252
|
});
|
|
284
253
|
//# sourceMappingURL=entity.test.js.map
|