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
|
@@ -2,104 +2,105 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Scene = exports.SceneDecorator = void 0;
|
|
4
4
|
const actions_lib_1 = require("actions-lib");
|
|
5
|
-
const
|
|
5
|
+
const hard_reset_1 = require("../hard-reset");
|
|
6
6
|
const service_1 = require("../service/service");
|
|
7
7
|
const update_cycle_1 = require("../update-cycle");
|
|
8
8
|
function SceneDecorator() {
|
|
9
9
|
return function (SceneClass) {
|
|
10
10
|
SceneClass.$meta = {
|
|
11
|
-
paramtypes: service_1.Service
|
|
11
|
+
paramtypes: service_1.Service._getParametersMeta(SceneClass),
|
|
12
12
|
type: 'scene'
|
|
13
13
|
};
|
|
14
14
|
return SceneClass;
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
exports.SceneDecorator = SceneDecorator;
|
|
18
|
-
class Scene extends
|
|
19
|
-
static { this.
|
|
20
|
-
static { this.
|
|
18
|
+
class Scene extends actions_lib_1.IDAttachable {
|
|
19
|
+
static { this._sceneTransitioning = false; }
|
|
20
|
+
static { this._activeScene = new actions_lib_1.Variable(undefined); }
|
|
21
|
+
static { this.activeScene = this._activeScene.notifier; }
|
|
21
22
|
static getActiveScene() {
|
|
22
|
-
return Scene.
|
|
23
|
+
return Scene._activeScene.value;
|
|
23
24
|
}
|
|
24
25
|
static getActiveSceneOrFail() {
|
|
25
|
-
if (!Scene.
|
|
26
|
+
if (!Scene._activeScene.value) {
|
|
26
27
|
throw new Error(`Scene: getActiveSceneOrFail is called when there is no active scene!`);
|
|
27
28
|
}
|
|
28
|
-
return Scene.
|
|
29
|
+
return Scene._activeScene.value;
|
|
29
30
|
}
|
|
30
31
|
static isActive() {
|
|
31
|
-
return Scene.
|
|
32
|
+
return Scene._activeScene.value instanceof this;
|
|
32
33
|
}
|
|
33
34
|
static getInstance() {
|
|
34
|
-
return Scene.
|
|
35
|
+
return Scene._activeScene.value instanceof this ? Scene._activeScene.value : undefined;
|
|
35
36
|
}
|
|
36
37
|
static getInstanceOrFail() {
|
|
37
|
-
if (!Scene.
|
|
38
|
+
if (!Scene._activeScene.value) {
|
|
38
39
|
throw new Error(`Scene: getInstance is called when there is no active scene!`);
|
|
39
40
|
}
|
|
40
|
-
if (!(Scene.
|
|
41
|
-
throw new Error(`Scene: getInstance is called while "${this.name}" was not the active scene. Current scene is: "${Scene.
|
|
41
|
+
if (!(Scene._activeScene.value instanceof this)) {
|
|
42
|
+
throw new Error(`Scene: getInstance is called while "${this.name}" was not the active scene. Current scene is: "${Scene._activeScene.value}"!`);
|
|
42
43
|
}
|
|
43
|
-
return Scene.
|
|
44
|
+
return Scene._activeScene.value;
|
|
44
45
|
}
|
|
45
|
-
static open(...
|
|
46
|
-
if (Scene.
|
|
46
|
+
static open(...args2) {
|
|
47
|
+
if (Scene._sceneTransitioning) {
|
|
47
48
|
throw new Error('Scene: you cannot open a scene while a scene is transitioning!');
|
|
48
49
|
}
|
|
49
|
-
else if (Scene.
|
|
50
|
+
else if (Scene._activeScene.value) {
|
|
50
51
|
throw new Error('Scene: you cannot open a scene while there is already another active scene!');
|
|
51
52
|
}
|
|
52
|
-
let input =
|
|
53
|
-
|
|
54
|
-
let
|
|
55
|
-
let onOpen = new Promise((resolve, reject) => {
|
|
56
|
-
onOpenResolve = resolve;
|
|
57
|
-
});
|
|
58
|
-
let onClose = new Promise((resolve, reject) => {
|
|
59
|
-
onCloseResolve = resolve;
|
|
60
|
-
});
|
|
61
|
-
Scene.sceneTransitioning = true;
|
|
62
|
-
let resolvedArgs = service_1.Service['resolveParameters']([], this.$meta.paramtypes);
|
|
53
|
+
let input = args2[0];
|
|
54
|
+
Scene._sceneTransitioning = true;
|
|
55
|
+
let resolvedArgs = service_1.Service._resolveParameters([], this.$meta.paramtypes);
|
|
63
56
|
let scene = new this(...resolvedArgs).attachToRoot();
|
|
64
|
-
Scene.
|
|
65
|
-
scene
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return { onOpen, onClose };
|
|
57
|
+
Scene._activeScene.set(scene);
|
|
58
|
+
return scene
|
|
59
|
+
.init(input)
|
|
60
|
+
.map(() => {
|
|
61
|
+
Scene._sceneTransitioning = false;
|
|
62
|
+
return scene;
|
|
63
|
+
})
|
|
64
|
+
.chainToRoot();
|
|
73
65
|
}
|
|
74
66
|
constructor() {
|
|
75
67
|
super();
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
this.update(updateData.time, updateData.delta);
|
|
80
|
-
}
|
|
81
|
-
})
|
|
82
|
-
.attach(this);
|
|
83
|
-
this.closePromise = new Promise(resolve => (this.resolveClosePromise = resolve));
|
|
68
|
+
this._onClose = new actions_lib_1.Action();
|
|
69
|
+
this.onClose = this._onClose.notifier;
|
|
70
|
+
update_cycle_1.UpdateCycle.sceneUpdateAction.subscribe(updateData => this.update(updateData.time, updateData.delta)).attach(this);
|
|
84
71
|
}
|
|
85
|
-
|
|
86
|
-
if (Scene.
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
72
|
+
close(...args) {
|
|
73
|
+
if (Scene._activeScene.value !== this) {
|
|
74
|
+
if (Scene._sceneTransitioning) {
|
|
75
|
+
throw new Error('Scene: you cannot close a scene while a scene is transitioning!');
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
throw new Error('Internal Error: Scene instance is accessed while it is not the active scene!');
|
|
79
|
+
}
|
|
91
80
|
}
|
|
92
81
|
let output = args[0];
|
|
93
|
-
Scene.
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
82
|
+
Scene._sceneTransitioning = true;
|
|
83
|
+
return this.prepareToClose()
|
|
84
|
+
.map(() => {
|
|
85
|
+
super.destroy();
|
|
86
|
+
Scene._activeScene.set(undefined);
|
|
87
|
+
Scene._sceneTransitioning = false;
|
|
88
|
+
this._onClose.trigger(output);
|
|
89
|
+
return output;
|
|
90
|
+
})
|
|
91
|
+
.chainToRoot();
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* @deprecated
|
|
95
|
+
*/
|
|
96
|
+
destroy() {
|
|
97
|
+
throw new Error('To close a scene use the "close()" function');
|
|
99
98
|
}
|
|
100
99
|
}
|
|
101
100
|
exports.Scene = Scene;
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
101
|
+
hard_reset_1.BardLegendsHardReset.onHardReset
|
|
102
|
+
.subscribe(() => {
|
|
103
|
+
Scene['_activeScene'].set(undefined);
|
|
104
|
+
})
|
|
105
|
+
.attachToRoot();
|
|
105
106
|
//# sourceMappingURL=scene.js.map
|
|
@@ -1,72 +1,54 @@
|
|
|
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 decorate_actions_lib_1 = require("../base/helpers/decorate-actions-lib");
|
|
39
14
|
const entity_1 = require("../entity/entity");
|
|
15
|
+
const hard_reset_1 = require("../hard-reset");
|
|
40
16
|
const service_1 = require("../service/service");
|
|
41
17
|
const update_cycle_1 = require("../update-cycle");
|
|
42
18
|
const view_1 = require("../view/view");
|
|
43
19
|
const scene_1 = require("./scene");
|
|
44
|
-
decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
45
20
|
(0, vitest_1.describe)('SCENE', () => {
|
|
46
21
|
(0, vitest_1.beforeEach)(() => {
|
|
47
|
-
|
|
22
|
+
hard_reset_1.BardLegendsHardReset.hardReset();
|
|
48
23
|
});
|
|
49
24
|
(0, vitest_1.test)('create scene', () => {
|
|
50
25
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
51
|
-
|
|
26
|
+
init() {
|
|
27
|
+
return actions_lib_1.SingleEvent.instant();
|
|
28
|
+
}
|
|
52
29
|
update() { }
|
|
53
|
-
|
|
30
|
+
prepareToClose() {
|
|
31
|
+
return actions_lib_1.SingleEvent.instant();
|
|
32
|
+
}
|
|
54
33
|
};
|
|
55
34
|
SampleScene = __decorate([
|
|
56
35
|
(0, scene_1.SceneDecorator)()
|
|
57
36
|
], SampleScene);
|
|
58
37
|
SampleScene.open();
|
|
59
|
-
(0, vitest_1.expect)(scene_1.Scene.
|
|
60
|
-
(0, vitest_1.expect)(scene_1.Scene.
|
|
38
|
+
(0, vitest_1.expect)(scene_1.Scene.getActiveScene()).toBeDefined();
|
|
39
|
+
(0, vitest_1.expect)(scene_1.Scene.getActiveScene()).toBeInstanceOf(SampleScene);
|
|
61
40
|
});
|
|
62
41
|
(0, vitest_1.test)('arguments in open call should be passed to the init function', () => {
|
|
63
42
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
64
|
-
|
|
43
|
+
init(input) {
|
|
65
44
|
(0, vitest_1.expect)(input.arg1).toEqual('test');
|
|
66
45
|
(0, vitest_1.expect)(input.arg2).toEqual(1);
|
|
46
|
+
return actions_lib_1.SingleEvent.instant();
|
|
67
47
|
}
|
|
68
48
|
update() { }
|
|
69
|
-
|
|
49
|
+
prepareToClose() {
|
|
50
|
+
return actions_lib_1.SingleEvent.instant();
|
|
51
|
+
}
|
|
70
52
|
};
|
|
71
53
|
SampleScene = __decorate([
|
|
72
54
|
(0, scene_1.SceneDecorator)()
|
|
@@ -83,15 +65,18 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
83
65
|
(0, service_1.ServiceDecorator)()
|
|
84
66
|
], SampleService);
|
|
85
67
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
86
|
-
constructor(
|
|
68
|
+
constructor(_sampleService) {
|
|
87
69
|
super();
|
|
88
|
-
this.
|
|
70
|
+
this._sampleService = _sampleService;
|
|
89
71
|
}
|
|
90
|
-
|
|
91
|
-
(0, vitest_1.expect)(this.
|
|
72
|
+
init() {
|
|
73
|
+
(0, vitest_1.expect)(this._sampleService.value).toEqual('test');
|
|
74
|
+
return actions_lib_1.SingleEvent.instant();
|
|
92
75
|
}
|
|
93
76
|
update() { }
|
|
94
|
-
|
|
77
|
+
prepareToClose() {
|
|
78
|
+
return actions_lib_1.SingleEvent.instant();
|
|
79
|
+
}
|
|
95
80
|
};
|
|
96
81
|
SampleScene = __decorate([
|
|
97
82
|
(0, scene_1.SceneDecorator)(),
|
|
@@ -101,9 +86,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
101
86
|
});
|
|
102
87
|
(0, vitest_1.test)('get instance should return the scene with its type', () => {
|
|
103
88
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
104
|
-
|
|
89
|
+
init() {
|
|
90
|
+
return actions_lib_1.SingleEvent.instant();
|
|
91
|
+
}
|
|
105
92
|
update() { }
|
|
106
|
-
|
|
93
|
+
prepareToClose() {
|
|
94
|
+
return actions_lib_1.SingleEvent.instant();
|
|
95
|
+
}
|
|
107
96
|
};
|
|
108
97
|
SampleScene = __decorate([
|
|
109
98
|
(0, scene_1.SceneDecorator)()
|
|
@@ -113,9 +102,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
113
102
|
});
|
|
114
103
|
(0, vitest_1.test)('getInstance should throw error when there is no active scene', () => {
|
|
115
104
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
116
|
-
|
|
105
|
+
init() {
|
|
106
|
+
return actions_lib_1.SingleEvent.instant();
|
|
107
|
+
}
|
|
117
108
|
update() { }
|
|
118
|
-
|
|
109
|
+
prepareToClose() {
|
|
110
|
+
return actions_lib_1.SingleEvent.instant();
|
|
111
|
+
}
|
|
119
112
|
};
|
|
120
113
|
SampleScene = __decorate([
|
|
121
114
|
(0, scene_1.SceneDecorator)()
|
|
@@ -124,17 +117,25 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
124
117
|
});
|
|
125
118
|
(0, vitest_1.test)('getInstance should throw error when called while the open scene belongs to another class', () => {
|
|
126
119
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
127
|
-
|
|
120
|
+
init() {
|
|
121
|
+
return actions_lib_1.SingleEvent.instant();
|
|
122
|
+
}
|
|
128
123
|
update() { }
|
|
129
|
-
|
|
124
|
+
prepareToClose() {
|
|
125
|
+
return actions_lib_1.SingleEvent.instant();
|
|
126
|
+
}
|
|
130
127
|
};
|
|
131
128
|
SampleScene = __decorate([
|
|
132
129
|
(0, scene_1.SceneDecorator)()
|
|
133
130
|
], SampleScene);
|
|
134
131
|
let SampleScene2 = class SampleScene2 extends scene_1.Scene {
|
|
135
|
-
|
|
132
|
+
init() {
|
|
133
|
+
return actions_lib_1.SingleEvent.instant();
|
|
134
|
+
}
|
|
136
135
|
update() { }
|
|
137
|
-
|
|
136
|
+
prepareToClose() {
|
|
137
|
+
return actions_lib_1.SingleEvent.instant();
|
|
138
|
+
}
|
|
138
139
|
};
|
|
139
140
|
SampleScene2 = __decorate([
|
|
140
141
|
(0, scene_1.SceneDecorator)()
|
|
@@ -142,12 +143,16 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
142
143
|
SampleScene.open();
|
|
143
144
|
(0, vitest_1.expect)(() => SampleScene2.getInstanceOrFail()).toThrow();
|
|
144
145
|
});
|
|
145
|
-
(0, vitest_1.test)('destroyed scenes should destroy its entities and its views',
|
|
146
|
+
(0, vitest_1.test)('destroyed scenes should destroy its entities and its views', () => {
|
|
146
147
|
var SampleEntity_1;
|
|
147
148
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
148
|
-
|
|
149
|
+
init() {
|
|
150
|
+
return actions_lib_1.SingleEvent.instant();
|
|
151
|
+
}
|
|
149
152
|
update() { }
|
|
150
|
-
|
|
153
|
+
prepareToClose() {
|
|
154
|
+
return actions_lib_1.SingleEvent.instant();
|
|
155
|
+
}
|
|
151
156
|
};
|
|
152
157
|
SampleScene = __decorate([
|
|
153
158
|
(0, scene_1.SceneDecorator)()
|
|
@@ -179,23 +184,36 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
179
184
|
entity: SampleEntity
|
|
180
185
|
})
|
|
181
186
|
], _SampleView);
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
187
|
+
let finalized = false;
|
|
188
|
+
SampleScene.open()
|
|
189
|
+
.asyncMap(() => {
|
|
190
|
+
new SampleEntity().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
191
|
+
return SampleScene.getInstanceOrFail().close();
|
|
192
|
+
})
|
|
193
|
+
.tap(() => {
|
|
194
|
+
(0, vitest_1.expect)(SampleEntity.entityDestroyCalled).toBeTruthy();
|
|
195
|
+
(0, vitest_1.expect)(viewDestroyCalled).toBeTruthy();
|
|
196
|
+
})
|
|
197
|
+
.tap(() => {
|
|
198
|
+
finalized = true;
|
|
199
|
+
})
|
|
200
|
+
.attachToRoot();
|
|
201
|
+
(0, vitest_1.expect)(finalized).toBeTruthy();
|
|
188
202
|
});
|
|
189
|
-
(0, vitest_1.test)('entity should create the update cycle',
|
|
203
|
+
(0, vitest_1.test)('entity should create the update cycle', () => {
|
|
190
204
|
var SampleScene_1;
|
|
191
205
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
192
206
|
static { SampleScene_1 = this; }
|
|
193
207
|
static { this.sceneUpdateCalled = false; }
|
|
194
|
-
|
|
208
|
+
init() {
|
|
209
|
+
return actions_lib_1.SingleEvent.instant();
|
|
210
|
+
}
|
|
195
211
|
update(time, delta) {
|
|
196
212
|
SampleScene_1.sceneUpdateCalled = true;
|
|
197
213
|
}
|
|
198
|
-
|
|
214
|
+
prepareToClose() {
|
|
215
|
+
return actions_lib_1.SingleEvent.instant();
|
|
216
|
+
}
|
|
199
217
|
};
|
|
200
218
|
SampleScene = SampleScene_1 = __decorate([
|
|
201
219
|
(0, scene_1.SceneDecorator)()
|
|
@@ -222,24 +240,36 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
222
240
|
], _SampleView);
|
|
223
241
|
SampleScene.open();
|
|
224
242
|
new SampleEntity().attach(scene_1.Scene.getActiveSceneOrFail());
|
|
225
|
-
await (0, helpers_lib_1.Wait)(); // Wait for the async view init to expect the update call
|
|
226
243
|
update_cycle_1.UpdateCycle.triggerUpdateTick(1);
|
|
227
244
|
(0, vitest_1.expect)(SampleScene.sceneUpdateCalled).toBeTruthy();
|
|
228
245
|
(0, vitest_1.expect)(viewUpdateCalled).toBeTruthy();
|
|
229
246
|
});
|
|
230
|
-
(0, vitest_1.test)('closing scene should destroy it',
|
|
247
|
+
(0, vitest_1.test)('closing scene should destroy it', () => {
|
|
231
248
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
232
|
-
|
|
249
|
+
init() {
|
|
250
|
+
return actions_lib_1.SingleEvent.instant();
|
|
251
|
+
}
|
|
233
252
|
update() { }
|
|
234
|
-
|
|
253
|
+
prepareToClose() {
|
|
254
|
+
return actions_lib_1.SingleEvent.instant();
|
|
255
|
+
}
|
|
235
256
|
};
|
|
236
257
|
SampleScene = __decorate([
|
|
237
258
|
(0, scene_1.SceneDecorator)()
|
|
238
259
|
], SampleScene);
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
260
|
+
let finalized = false;
|
|
261
|
+
SampleScene.open()
|
|
262
|
+
.asyncMap(scene => {
|
|
263
|
+
return scene.close().map(() => scene);
|
|
264
|
+
})
|
|
265
|
+
.tap(scene => {
|
|
266
|
+
(0, vitest_1.expect)(scene.destroyed).toBeTruthy();
|
|
267
|
+
})
|
|
268
|
+
.tap(() => {
|
|
269
|
+
finalized = true;
|
|
270
|
+
})
|
|
271
|
+
.attachToRoot();
|
|
272
|
+
(0, vitest_1.expect)(finalized).toBeTruthy();
|
|
243
273
|
});
|
|
244
274
|
});
|
|
245
275
|
//# sourceMappingURL=scene.test.js.map
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
2
|
export declare function ServiceDecorator(): (ServiceClass: any) => any;
|
|
3
3
|
export declare class Service {
|
|
4
|
-
private static
|
|
4
|
+
private static _serviceInstances;
|
|
5
5
|
static get<T extends Service>(ServiceClass: new (...args: any[]) => T): T;
|
|
6
|
-
private static getParametersMeta;
|
|
7
|
-
private static resolveParameters;
|
|
8
|
-
private static hardReset;
|
|
9
6
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Service = exports.ServiceDecorator = void 0;
|
|
4
|
-
const
|
|
4
|
+
const hard_reset_1 = require("../hard-reset");
|
|
5
5
|
require("reflect-metadata");
|
|
6
6
|
function ServiceDecorator() {
|
|
7
7
|
return function (ServiceClass) {
|
|
8
|
-
let paramtypes = Service.
|
|
8
|
+
let paramtypes = Service._getParametersMeta(ServiceClass);
|
|
9
9
|
ServiceClass.$meta = {
|
|
10
10
|
paramtypes,
|
|
11
11
|
type: 'service'
|
|
@@ -14,27 +14,29 @@ function ServiceDecorator() {
|
|
|
14
14
|
}
|
|
15
15
|
exports.ServiceDecorator = ServiceDecorator;
|
|
16
16
|
class Service {
|
|
17
|
-
static { this.
|
|
17
|
+
static { this._serviceInstances = new Map(); }
|
|
18
18
|
static get(ServiceClass) {
|
|
19
|
-
let service = this.
|
|
19
|
+
let service = this._serviceInstances.get(ServiceClass);
|
|
20
20
|
if (!service) {
|
|
21
21
|
if (!ServiceClass.$meta) {
|
|
22
22
|
throw new Error(`Service: service class is not decorated by @ServiceDecorator(), class: "${ServiceClass.name}"`);
|
|
23
23
|
}
|
|
24
|
-
let resolvedArgs = this.
|
|
24
|
+
let resolvedArgs = this._resolveParameters([], ServiceClass.$meta.paramtypes);
|
|
25
25
|
service = new ServiceClass(...resolvedArgs);
|
|
26
|
-
this.
|
|
26
|
+
this._serviceInstances.set(ServiceClass, service);
|
|
27
27
|
}
|
|
28
28
|
return service;
|
|
29
29
|
}
|
|
30
|
-
|
|
30
|
+
/** @internal */
|
|
31
|
+
static _getParametersMeta(target) {
|
|
31
32
|
let paramtypes = Reflect.getMetadata('design:paramtypes', target) || [];
|
|
32
33
|
if (paramtypes.some(type => !type)) {
|
|
33
34
|
console.error(`Circular dependency: ${target.name}`);
|
|
34
35
|
}
|
|
35
36
|
return paramtypes;
|
|
36
37
|
}
|
|
37
|
-
|
|
38
|
+
/** @internal */
|
|
39
|
+
static _resolveParameters(knownArgs, paramtypes) {
|
|
38
40
|
let params = [...knownArgs];
|
|
39
41
|
if (paramtypes.length > knownArgs.length) {
|
|
40
42
|
let remainingParamTypes = paramtypes.slice(knownArgs.length);
|
|
@@ -47,12 +49,11 @@ class Service {
|
|
|
47
49
|
}
|
|
48
50
|
return params;
|
|
49
51
|
}
|
|
50
|
-
static hardReset() {
|
|
51
|
-
this.serviceInstances = new Map();
|
|
52
|
-
}
|
|
53
52
|
}
|
|
54
53
|
exports.Service = Service;
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
hard_reset_1.BardLegendsHardReset.onHardReset
|
|
55
|
+
.subscribe(() => {
|
|
56
|
+
Service['_serviceInstances'] = new Map();
|
|
57
|
+
})
|
|
58
|
+
.attachToRoot();
|
|
58
59
|
//# sourceMappingURL=service.js.map
|
|
@@ -1,49 +1,24 @@
|
|
|
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
|
|
12
|
+
const actions_lib_1 = require("actions-lib");
|
|
36
13
|
const vitest_1 = require("vitest");
|
|
37
|
-
const decorate_actions_lib_1 = require("../base/helpers/decorate-actions-lib");
|
|
38
14
|
const entity_1 = require("../entity/entity");
|
|
15
|
+
const hard_reset_1 = require("../hard-reset");
|
|
39
16
|
const scene_1 = require("../scene/scene");
|
|
40
|
-
const update_cycle_1 = require("../update-cycle");
|
|
41
17
|
const view_1 = require("../view/view");
|
|
42
18
|
const service_1 = require("./service");
|
|
43
|
-
decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
44
19
|
(0, vitest_1.describe)('SERVICE', () => {
|
|
45
20
|
(0, vitest_1.beforeEach)(() => {
|
|
46
|
-
|
|
21
|
+
hard_reset_1.BardLegendsHardReset.hardReset();
|
|
47
22
|
});
|
|
48
23
|
(0, vitest_1.test)('get services', () => {
|
|
49
24
|
var SampleService_1;
|
|
@@ -64,9 +39,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
64
39
|
(0, vitest_1.test)('inject services to views', () => {
|
|
65
40
|
var SampleService_2, SampleView_1;
|
|
66
41
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
67
|
-
|
|
42
|
+
init() {
|
|
43
|
+
return actions_lib_1.SingleEvent.instant();
|
|
44
|
+
}
|
|
68
45
|
update() { }
|
|
69
|
-
|
|
46
|
+
prepareToClose() {
|
|
47
|
+
return actions_lib_1.SingleEvent.instant();
|
|
48
|
+
}
|
|
70
49
|
};
|
|
71
50
|
SampleScene = __decorate([
|
|
72
51
|
(0, scene_1.SceneDecorator)()
|
|
@@ -133,9 +112,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
133
112
|
super();
|
|
134
113
|
this.service2 = service2;
|
|
135
114
|
}
|
|
136
|
-
|
|
115
|
+
init() {
|
|
116
|
+
return actions_lib_1.SingleEvent.instant();
|
|
117
|
+
}
|
|
137
118
|
update() { }
|
|
138
|
-
|
|
119
|
+
prepareToClose() {
|
|
120
|
+
return actions_lib_1.SingleEvent.instant();
|
|
121
|
+
}
|
|
139
122
|
};
|
|
140
123
|
SampleScene = __decorate([
|
|
141
124
|
(0, scene_1.SceneDecorator)(),
|
|
@@ -190,9 +173,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
190
173
|
this.service2 = service2;
|
|
191
174
|
this.service3 = service3;
|
|
192
175
|
}
|
|
193
|
-
|
|
176
|
+
init() {
|
|
177
|
+
return actions_lib_1.SingleEvent.instant();
|
|
178
|
+
}
|
|
194
179
|
update() { }
|
|
195
|
-
|
|
180
|
+
prepareToClose() {
|
|
181
|
+
return actions_lib_1.SingleEvent.instant();
|
|
182
|
+
}
|
|
196
183
|
};
|
|
197
184
|
SampleScene = __decorate([
|
|
198
185
|
(0, scene_1.SceneDecorator)(),
|
|
@@ -224,9 +211,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
224
211
|
super();
|
|
225
212
|
this.service = service;
|
|
226
213
|
}
|
|
227
|
-
|
|
214
|
+
init() {
|
|
215
|
+
return actions_lib_1.SingleEvent.instant();
|
|
216
|
+
}
|
|
228
217
|
update() { }
|
|
229
|
-
|
|
218
|
+
prepareToClose() {
|
|
219
|
+
return actions_lib_1.SingleEvent.instant();
|
|
220
|
+
}
|
|
230
221
|
};
|
|
231
222
|
SampleScene = __decorate([
|
|
232
223
|
(0, scene_1.SceneDecorator)(),
|
|
@@ -239,9 +230,13 @@ decorate_actions_lib_1.ActionsLibDecorator.decorate(ActionsLib);
|
|
|
239
230
|
(0, vitest_1.test)('resolve parameters should pass known parameters with falsely values', () => {
|
|
240
231
|
var Parent_1;
|
|
241
232
|
let SampleScene = class SampleScene extends scene_1.Scene {
|
|
242
|
-
|
|
233
|
+
init() {
|
|
234
|
+
return actions_lib_1.SingleEvent.instant();
|
|
235
|
+
}
|
|
243
236
|
update() { }
|
|
244
|
-
|
|
237
|
+
prepareToClose() {
|
|
238
|
+
return actions_lib_1.SingleEvent.instant();
|
|
239
|
+
}
|
|
245
240
|
};
|
|
246
241
|
SampleScene = __decorate([
|
|
247
242
|
(0, scene_1.SceneDecorator)()
|