@adaas/a-concept 0.0.33 → 0.0.34
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/README.md +156 -8
- package/dist/index.d.ts +3 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/src/base/A-Config/A-Config.container.d.ts +5 -2
- package/dist/src/base/A-Config/A-Config.container.js +7 -2
- package/dist/src/base/A-Config/A-Config.container.js.map +1 -1
- package/dist/src/base/A-Config/components/ConfigReader.component.js +1 -1
- package/dist/src/base/A-Config/components/ConfigReader.component.js.map +1 -1
- package/dist/src/base/A-Config/components/FileConfigReader.component.js.map +1 -1
- package/dist/src/base/A-Errors/A-Errors.context.js.map +1 -1
- package/dist/src/base/A-Logger/A-Logger.component.js.map +1 -1
- package/dist/src/decorators/A-Abstraction/{A-Abstraction.decorator.d.ts → A-Abstraction-Extend.decorator.d.ts} +1 -1
- package/dist/src/decorators/A-Abstraction/{A-Abstraction.decorator.js → A-Abstraction-Extend.decorator.js} +6 -6
- package/dist/src/decorators/A-Abstraction/A-Abstraction-Extend.decorator.js.map +1 -0
- package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.d.ts +1 -1
- package/dist/src/decorators/A-Connect/A-Connect.decorator.js.map +1 -1
- package/dist/src/decorators/A-Entity/A-Entity.decorator.types.d.ts +1 -1
- package/dist/src/decorators/A-Feature/A-Feature-Define.decorator.d.ts +3 -3
- package/dist/src/decorators/A-Feature/A-Feature-Define.decorator.js +20 -4
- package/dist/src/decorators/A-Feature/A-Feature-Define.decorator.js.map +1 -1
- package/dist/src/decorators/A-Feature/A-Feature.decorator.types.d.ts +3 -2
- package/dist/src/decorators/A-Inject/A-Inject.decorator.d.ts +1 -1
- package/dist/src/decorators/A-Inject/A-Inject.decorator.js +23 -2
- package/dist/src/decorators/A-Inject/A-Inject.decorator.js.map +1 -1
- package/dist/src/decorators/A-Inject/A-Inject.decorator.types.d.ts +3 -3
- package/dist/src/global/A-Abstraction/A-Abstraction.class.d.ts +40 -0
- package/dist/src/global/A-Abstraction/A-Abstraction.class.js +113 -0
- package/dist/src/global/A-Abstraction/A-Abstraction.class.js.map +1 -0
- package/dist/src/global/A-Abstraction/A-Abstraction.types.d.ts +13 -0
- package/dist/src/global/A-Abstraction/A-Abstraction.types.js +11 -0
- package/dist/src/global/A-Abstraction/A-Abstraction.types.js.map +1 -0
- package/dist/src/global/A-Channel/A-Channel.class.js +0 -1
- package/dist/src/global/A-Channel/A-Channel.class.js.map +1 -1
- package/dist/src/global/A-Channel/A-Channel.types.d.ts +2 -1
- package/dist/src/global/A-Component/A-Component.class.d.ts +5 -30
- package/dist/src/global/A-Component/A-Component.class.js +6 -10
- package/dist/src/global/A-Component/A-Component.class.js.map +1 -1
- package/dist/src/global/A-Component/A-Component.meta.d.ts +9 -2
- package/dist/src/global/A-Component/A-Component.meta.js +10 -1
- package/dist/src/global/A-Component/A-Component.meta.js.map +1 -1
- package/dist/src/global/A-Concept/A_Concept.class.d.ts +16 -17
- package/dist/src/global/A-Concept/A_Concept.class.js +31 -65
- package/dist/src/global/A-Concept/A_Concept.class.js.map +1 -1
- package/dist/src/global/A-Concept/A_Concept.meta.d.ts +10 -0
- package/dist/src/global/A-Concept/A_Concept.meta.js +20 -0
- package/dist/src/global/A-Concept/A_Concept.meta.js.map +1 -1
- package/dist/src/global/A-Concept/A_Concept.types.d.ts +2 -2
- package/dist/src/global/A-Container/A-Container.class.d.ts +7 -50
- package/dist/src/global/A-Container/A-Container.class.js +9 -19
- package/dist/src/global/A-Container/A-Container.class.js.map +1 -1
- package/dist/src/global/A-Container/A-Container.meta.d.ts +15 -0
- package/dist/src/global/A-Container/A-Container.meta.js +20 -0
- package/dist/src/global/A-Container/A-Container.meta.js.map +1 -1
- package/dist/src/global/A-Context/A-Context.class.d.ts +20 -20
- package/dist/src/global/A-Context/A-Context.class.js +57 -15
- package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
- package/dist/src/global/A-Entity/A-Entity.class.d.ts +10 -18
- package/dist/src/global/A-Entity/A-Entity.class.js +21 -31
- package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
- package/dist/src/global/A-Entity/A-Entity.meta.js.map +1 -1
- package/dist/src/global/A-Entity/A-Entity.types.d.ts +3 -2
- package/dist/src/global/A-Entity/A-Entity.types.js +1 -0
- package/dist/src/global/A-Entity/A-Entity.types.js.map +1 -1
- package/dist/src/global/A-Feature/A-Feature.class.d.ts +2 -1
- package/dist/src/global/A-Feature/A-Feature.class.js +14 -4
- package/dist/src/global/A-Feature/A-Feature.class.js.map +1 -1
- package/dist/src/global/A-Feature/A-Feature.types.d.ts +9 -0
- package/dist/src/global/A-Feature/A-Feature.types.js.map +1 -1
- package/dist/src/global/A-Meta/A-Meta.class.d.ts +1 -0
- package/dist/src/global/A-Meta/A-Meta.class.js +3 -6
- package/dist/src/global/A-Meta/A-Meta.class.js.map +1 -1
- package/dist/src/global/A-Scope/A-Scope.class.d.ts +4 -2
- package/dist/src/global/A-Scope/A-Scope.class.js +23 -16
- package/dist/src/global/A-Scope/A-Scope.class.js.map +1 -1
- package/dist/src/global/A-Scope/A-Scope.types.d.ts +0 -8
- package/dist/src/global/A-Stage/A-Stage.class.d.ts +3 -3
- package/dist/src/global/A-Stage/A-Stage.class.js +11 -10
- package/dist/src/global/A-Stage/A-Stage.class.js.map +1 -1
- package/dist/src/global/A-Stage/A-Stage.types.d.ts +1 -1
- package/dist/src/global/A-Stage/A-Stage.types.js.map +1 -1
- package/dist/src/helpers/StepsManager.class.d.ts +1 -0
- package/dist/src/helpers/StepsManager.class.js +10 -7
- package/dist/src/helpers/StepsManager.class.js.map +1 -1
- package/docs/a-concept-logo.png +0 -0
- package/docs/a-logo-docs.png +0 -0
- package/examples/fe-be/channels/Test.channel.ts +6 -3
- package/examples/simple/components/A.component.ts +7 -0
- package/examples/simple/components/B.component.ts +9 -0
- package/examples/simple/concept.ts +38 -60
- package/examples/simple/containers/Main.container.ts +24 -11
- package/examples/simple/entities/EntityA.entity.ts +3 -5
- package/examples/simple-http-server/components/http-request-handler.component.ts +6 -4
- package/examples/simple-http-server/concept.ts +24 -21
- package/examples/simple-http-server/containers/http-server.container.ts +4 -3
- package/index.ts +4 -1
- package/package.json +6 -2
- package/src/base/A-Config/A-Config.container.ts +12 -4
- package/src/base/A-Config/components/ConfigReader.component.ts +4 -5
- package/src/base/A-Config/components/FileConfigReader.component.ts +0 -2
- package/src/base/A-Errors/A-Error.entity.ts +1 -1
- package/src/base/A-Errors/A-Errors.context.ts +2 -1
- package/src/base/A-Logger/A-Logger.component.ts +0 -1
- package/src/decorators/A-Abstraction/{A-Abstraction.decorator.ts → A-Abstraction-Extend.decorator.ts} +5 -6
- package/src/decorators/A-Abstraction/A-Abstraction.decorator.types.ts +1 -1
- package/src/decorators/A-Connect/A-Connect.decorator.ts +1 -1
- package/src/decorators/A-Entity/A-Entity.decorator.types.ts +1 -1
- package/src/decorators/A-Feature/A-Feature-Define.decorator.ts +37 -10
- package/src/decorators/A-Feature/A-Feature.decorator.types.ts +12 -12
- package/src/decorators/A-Inject/A-Inject.decorator.ts +31 -4
- package/src/decorators/A-Inject/A-Inject.decorator.types.ts +4 -3
- package/src/global/A-Abstraction/A-Abstraction.class.ts +130 -0
- package/src/global/A-Abstraction/A-Abstraction.types.ts +22 -0
- package/src/global/A-Channel/A-Channel.class.ts +0 -2
- package/src/global/A-Channel/A-Channel.types.ts +2 -1
- package/src/global/A-Component/A-Component.class.ts +12 -52
- package/src/global/A-Component/A-Component.meta.ts +19 -2
- package/src/global/A-Concept/A_Concept.class.ts +45 -126
- package/src/global/A-Concept/A_Concept.meta.ts +68 -0
- package/src/global/A-Concept/A_Concept.types.ts +2 -2
- package/src/global/A-Container/A-Container.class.ts +11 -90
- package/src/global/A-Container/A-Container.meta.ts +33 -0
- package/src/global/A-Context/A-Context.class.ts +134 -56
- package/src/global/A-Entity/A-Entity.class.ts +22 -69
- package/src/global/A-Entity/A-Entity.meta.ts +3 -2
- package/src/global/A-Entity/A-Entity.types.ts +2 -1
- package/src/global/A-Feature/A-Feature.class.ts +18 -7
- package/src/global/A-Feature/A-Feature.types.ts +10 -2
- package/src/global/A-Meta/A-Meta.class.ts +5 -8
- package/src/global/A-Scope/A-Scope.class.ts +38 -21
- package/src/global/A-Scope/A-Scope.types.ts +2 -2
- package/src/global/A-Stage/A-Stage.class.ts +20 -20
- package/src/global/A-Stage/A-Stage.types.ts +2 -3
- package/src/helpers/StepsManager.class.ts +11 -7
- package/trace-require.js +46 -0
- package/tsconfig.build.json +57 -0
- package/dist/examples/fe-be/channels/Test.channel.d.ts +0 -6
- package/dist/examples/fe-be/channels/Test.channel.js +0 -14
- package/dist/examples/fe-be/channels/Test.channel.js.map +0 -1
- package/dist/examples/fe-be/components/BE-Controller.component.d.ts +0 -4
- package/dist/examples/fe-be/components/BE-Controller.component.js +0 -24
- package/dist/examples/fe-be/components/BE-Controller.component.js.map +0 -1
- package/dist/examples/fe-be/components/FE.component.d.ts +0 -4
- package/dist/examples/fe-be/components/FE.component.js +0 -31
- package/dist/examples/fe-be/components/FE.component.js.map +0 -1
- package/dist/examples/fe-be/components/UserActions.component.d.ts +0 -5
- package/dist/examples/fe-be/components/UserActions.component.js +0 -25
- package/dist/examples/fe-be/components/UserActions.component.js.map +0 -1
- package/dist/examples/fe-be/concept.d.ts +0 -0
- package/dist/examples/fe-be/concept.js +0 -2
- package/dist/examples/fe-be/concept.js.map +0 -1
- package/dist/examples/fe-be/containers/ServerApp.container.d.ts +0 -3
- package/dist/examples/fe-be/containers/ServerApp.container.js +0 -8
- package/dist/examples/fe-be/containers/ServerApp.container.js.map +0 -1
- package/dist/examples/fe-be/containers/WebApp.container.d.ts +0 -3
- package/dist/examples/fe-be/containers/WebApp.container.js +0 -8
- package/dist/examples/fe-be/containers/WebApp.container.js.map +0 -1
- package/dist/examples/multi-container/channels/Direct.channel.d.ts +0 -9
- package/dist/examples/multi-container/channels/Direct.channel.js +0 -32
- package/dist/examples/multi-container/channels/Direct.channel.js.map +0 -1
- package/dist/examples/multi-container/concept.d.ts +0 -0
- package/dist/examples/multi-container/concept.js +0 -2
- package/dist/examples/multi-container/concept.js.map +0 -1
- package/dist/examples/multi-container/containers/Command.container.d.ts +0 -11
- package/dist/examples/multi-container/containers/Command.container.js +0 -51
- package/dist/examples/multi-container/containers/Command.container.js.map +0 -1
- package/dist/examples/multi-container/containers/Schedule.container.d.ts +0 -15
- package/dist/examples/multi-container/containers/Schedule.container.js +0 -67
- package/dist/examples/multi-container/containers/Schedule.container.js.map +0 -1
- package/dist/examples/sdk/concept.d.ts +0 -0
- package/dist/examples/sdk/concept.js +0 -21
- package/dist/examples/sdk/concept.js.map +0 -1
- package/dist/examples/sdk/orders.api.d.ts +0 -0
- package/dist/examples/sdk/orders.api.js +0 -16
- package/dist/examples/sdk/orders.api.js.map +0 -1
- package/dist/examples/sdk/users.api.d.ts +0 -0
- package/dist/examples/sdk/users.api.js +0 -16
- package/dist/examples/sdk/users.api.js.map +0 -1
- package/dist/examples/simple/components/A.component.d.ts +0 -9
- package/dist/examples/simple/components/A.component.js +0 -60
- package/dist/examples/simple/components/A.component.js.map +0 -1
- package/dist/examples/simple/components/B.component.d.ts +0 -13
- package/dist/examples/simple/components/B.component.js +0 -88
- package/dist/examples/simple/components/B.component.js.map +0 -1
- package/dist/examples/simple/concept.d.ts +0 -1
- package/dist/examples/simple/concept.js +0 -82
- package/dist/examples/simple/concept.js.map +0 -1
- package/dist/examples/simple/containers/Main.container.d.ts +0 -11
- package/dist/examples/simple/containers/Main.container.js +0 -86
- package/dist/examples/simple/containers/Main.container.js.map +0 -1
- package/dist/examples/simple/context/Fragment_A.context.d.ts +0 -6
- package/dist/examples/simple/context/Fragment_A.context.js +0 -16
- package/dist/examples/simple/context/Fragment_A.context.js.map +0 -1
- package/dist/examples/simple/context/Fragment_B.context.d.ts +0 -6
- package/dist/examples/simple/context/Fragment_B.context.js +0 -16
- package/dist/examples/simple/context/Fragment_B.context.js.map +0 -1
- package/dist/examples/simple/entities/EntityA.entity.d.ts +0 -8
- package/dist/examples/simple/entities/EntityA.entity.js +0 -22
- package/dist/examples/simple/entities/EntityA.entity.js.map +0 -1
- package/dist/examples/simple-http-server/components/http-error-handler.component.d.ts +0 -10
- package/dist/examples/simple-http-server/components/http-error-handler.component.js +0 -65
- package/dist/examples/simple-http-server/components/http-error-handler.component.js.map +0 -1
- package/dist/examples/simple-http-server/components/http-request-handler.component.d.ts +0 -3
- package/dist/examples/simple-http-server/components/http-request-handler.component.js +0 -8
- package/dist/examples/simple-http-server/components/http-request-handler.component.js.map +0 -1
- package/dist/examples/simple-http-server/concept.d.ts +0 -1
- package/dist/examples/simple-http-server/concept.js +0 -35
- package/dist/examples/simple-http-server/concept.js.map +0 -1
- package/dist/examples/simple-http-server/containers/http-server.container.d.ts +0 -11
- package/dist/examples/simple-http-server/containers/http-server.container.js +0 -73
- package/dist/examples/simple-http-server/containers/http-server.container.js.map +0 -1
- package/dist/examples/simple-http-server/containers/http-server.controller.d.ts +0 -7
- package/dist/examples/simple-http-server/containers/http-server.controller.js +0 -37
- package/dist/examples/simple-http-server/containers/http-server.controller.js.map +0 -1
- package/dist/examples/simple-http-server/containers/http-server.router.d.ts +0 -6
- package/dist/examples/simple-http-server/containers/http-server.router.js +0 -39
- package/dist/examples/simple-http-server/containers/http-server.router.js.map +0 -1
- package/dist/examples/simple-http-server/contexts/http-request.context.d.ts +0 -12
- package/dist/examples/simple-http-server/contexts/http-request.context.js +0 -49
- package/dist/examples/simple-http-server/contexts/http-request.context.js.map +0 -1
- package/dist/examples/simple-http-server/contexts/http-server.context.types.d.ts +0 -0
- package/dist/examples/simple-http-server/contexts/http-server.context.types.js +0 -2
- package/dist/examples/simple-http-server/contexts/http-server.context.types.js.map +0 -1
- package/dist/examples/simple-http-server/contexts/http-server.namespace.d.ts +0 -10
- package/dist/examples/simple-http-server/contexts/http-server.namespace.js +0 -26
- package/dist/examples/simple-http-server/contexts/http-server.namespace.js.map +0 -1
- package/dist/examples/simple-http-server/controllers/orders.controller.d.ts +0 -5
- package/dist/examples/simple-http-server/controllers/orders.controller.js +0 -32
- package/dist/examples/simple-http-server/controllers/orders.controller.js.map +0 -1
- package/dist/examples/simple-http-server/controllers/users.controller.d.ts +0 -0
- package/dist/examples/simple-http-server/controllers/users.controller.js +0 -87
- package/dist/examples/simple-http-server/controllers/users.controller.js.map +0 -1
- package/dist/examples/simple-http-server/modules/simple-http-server.context.d.ts +0 -5
- package/dist/examples/simple-http-server/modules/simple-http-server.context.js +0 -25
- package/dist/examples/simple-http-server/modules/simple-http-server.context.js.map +0 -1
- package/dist/examples/simple-http-server/modules/simple-http-server.module.d.ts +0 -16
- package/dist/examples/simple-http-server/modules/simple-http-server.module.js +0 -8
- package/dist/examples/simple-http-server/modules/simple-http-server.module.js.map +0 -1
- package/dist/examples/simple-http-server/modules/simple-http-server.types.d.ts +0 -2
- package/dist/examples/simple-http-server/modules/simple-http-server.types.js +0 -3
- package/dist/examples/simple-http-server/modules/simple-http-server.types.js.map +0 -1
- package/dist/examples/simple-http-server/test.d.ts +0 -68
- package/dist/examples/simple-http-server/test.js +0 -162
- package/dist/examples/simple-http-server/test.js.map +0 -1
- package/dist/src/containers/A-Config/A-Config.container.d.ts +0 -7
- package/dist/src/containers/A-Config/A-Config.container.js +0 -65
- package/dist/src/containers/A-Config/A-Config.container.js.map +0 -1
- package/dist/src/containers/A-Config/A-Config.namespace.d.ts +0 -28
- package/dist/src/containers/A-Config/A-Config.namespace.js +0 -54
- package/dist/src/containers/A-Config/A-Config.namespace.js.map +0 -1
- package/dist/src/containers/A-Config/A-Config.types.d.ts +0 -12
- package/dist/src/containers/A-Config/A-Config.types.js +0 -3
- package/dist/src/containers/A-Config/A-Config.types.js.map +0 -1
- package/dist/src/containers/A-Config/components/ConfigReader.component.d.ts +0 -18
- package/dist/src/containers/A-Config/components/ConfigReader.component.js +0 -37
- package/dist/src/containers/A-Config/components/ConfigReader.component.js.map +0 -1
- package/dist/src/containers/A-Config/components/ENVConfigReader.component.d.ts +0 -10
- package/dist/src/containers/A-Config/components/ENVConfigReader.component.js +0 -37
- package/dist/src/containers/A-Config/components/ENVConfigReader.component.js.map +0 -1
- package/dist/src/containers/A-Config/components/FileConfigReader.component.d.ts +0 -11
- package/dist/src/containers/A-Config/components/FileConfigReader.component.js +0 -47
- package/dist/src/containers/A-Config/components/FileConfigReader.component.js.map +0 -1
- package/dist/src/containers/A-Errors/A-Errors.container.d.ts +0 -5
- package/dist/src/containers/A-Errors/A-Errors.container.js +0 -32
- package/dist/src/containers/A-Errors/A-Errors.container.js.map +0 -1
- package/dist/src/containers/A-Errors/A-Errors.namespace.d.ts +0 -40
- package/dist/src/containers/A-Errors/A-Errors.namespace.js +0 -76
- package/dist/src/containers/A-Errors/A-Errors.namespace.js.map +0 -1
- package/dist/src/containers/A-Errors/A-Errors.types.d.ts +0 -5
- package/dist/src/containers/A-Errors/A-Errors.types.js +0 -3
- package/dist/src/containers/A-Errors/A-Errors.types.js.map +0 -1
- package/dist/src/containers/A-Logger/A-Logger.container.d.ts +0 -6
- package/dist/src/containers/A-Logger/A-Logger.container.js +0 -41
- package/dist/src/containers/A-Logger/A-Logger.container.js.map +0 -1
- package/dist/src/containers/A-Logger/A-Logger.namespace.d.ts +0 -17
- package/dist/src/containers/A-Logger/A-Logger.namespace.js +0 -22
- package/dist/src/containers/A-Logger/A-Logger.namespace.js.map +0 -1
- package/dist/src/containers/A-Logger/A-Logger.types.d.ts +0 -0
- package/dist/src/containers/A-Logger/A-Logger.types.js +0 -2
- package/dist/src/containers/A-Logger/A-Logger.types.js.map +0 -1
- package/dist/src/containers/A-Logger/components/Logger.component.d.ts +0 -29
- package/dist/src/containers/A-Logger/components/Logger.component.js +0 -128
- package/dist/src/containers/A-Logger/components/Logger.component.js.map +0 -1
- package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.js.map +0 -1
- package/dist/src/decorators/A-ConceptLifecycle/A-ConceptLifecycle.decorator.types.d.ts +0 -34
- package/dist/src/decorators/A-ConceptLifecycle/A-ConceptLifecycle.decorator.types.js +0 -3
- package/dist/src/decorators/A-ConceptLifecycle/A-ConceptLifecycle.decorator.types.js.map +0 -1
- package/dist/src/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator.d.ts +0 -11
- package/dist/src/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator.js +0 -36
- package/dist/src/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator.js.map +0 -1
- package/dist/src/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator.types.d.ts +0 -7
- package/dist/src/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator.types.js +0 -3
- package/dist/src/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator.types.js.map +0 -1
- package/dist/src/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator.d.ts +0 -17
- package/dist/src/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator.js +0 -42
- package/dist/src/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator.js.map +0 -1
- package/dist/src/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator.types.d.ts +0 -8
- package/dist/src/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator.types.js +0 -3
- package/dist/src/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator.types.js.map +0 -1
- package/dist/src/decorators/A-ConceptLifecycle/index.d.ts +0 -7
- package/dist/src/decorators/A-ConceptLifecycle/index.js +0 -11
- package/dist/src/decorators/A-ConceptLifecycle/index.js.map +0 -1
- package/dist/src/decorators/A-Define/Feature/Feature.decorator.d.ts +0 -16
- package/dist/src/decorators/A-Define/Feature/Feature.decorator.js +0 -36
- package/dist/src/decorators/A-Define/Feature/Feature.decorator.js.map +0 -1
- package/dist/src/decorators/A-Define/Feature/Feature.decorator.types.d.ts +0 -8
- package/dist/src/decorators/A-Define/Feature/Feature.decorator.types.js +0 -3
- package/dist/src/decorators/A-Define/Feature/Feature.decorator.types.js.map +0 -1
- package/dist/src/decorators/A-Define/Lifecycle/Lifecycle.decorator.d.ts +0 -14
- package/dist/src/decorators/A-Define/Lifecycle/Lifecycle.decorator.js +0 -24
- package/dist/src/decorators/A-Define/Lifecycle/Lifecycle.decorator.js.map +0 -1
- package/dist/src/decorators/A-Define/Lifecycle/Lifecycle.decorator.types.d.ts +0 -8
- package/dist/src/decorators/A-Define/Lifecycle/Lifecycle.decorator.types.js +0 -3
- package/dist/src/decorators/A-Define/Lifecycle/Lifecycle.decorator.types.js.map +0 -1
- package/dist/src/decorators/A-Define/index.d.ts +0 -7
- package/dist/src/decorators/A-Define/index.js +0 -10
- package/dist/src/decorators/A-Define/index.js.map +0 -1
- package/dist/src/decorators/A-Extend/A-Extend.decorator.d.ts +0 -18
- package/dist/src/decorators/A-Extend/A-Extend.decorator.js +0 -37
- package/dist/src/decorators/A-Extend/A-Extend.decorator.js.map +0 -1
- package/dist/src/decorators/A-Extend/A-Extend.decorator.types.d.ts +0 -21
- package/dist/src/decorators/A-Extend/A-Extend.decorator.types.js +0 -3
- package/dist/src/decorators/A-Extend/A-Extend.decorator.types.js.map +0 -1
- package/dist/src/decorators/A-Feature/A-Feature.decorator.d.ts +0 -0
- package/dist/src/decorators/A-Feature/A-Feature.decorator.js +0 -11
- package/dist/src/decorators/A-Feature/A-Feature.decorator.js.map +0 -1
- package/dist/src/decorators/A-Stage/A-Stage.decorator.d.ts +0 -13
- package/dist/src/decorators/A-Stage/A-Stage.decorator.js +0 -52
- package/dist/src/decorators/A-Stage/A-Stage.decorator.js.map +0 -1
- package/dist/src/decorators/A-Stage/A-Stage.decorator.types.d.ts +0 -2
- package/dist/src/decorators/A-Stage/A-Stage.decorator.types.js +0 -3
- package/dist/src/decorators/A-Stage/A-Stage.decorator.types.js.map +0 -1
- package/dist/src/decorators/A_ConceptMethods.decorator.d.ts +0 -0
- package/dist/src/decorators/A_ConceptMethods.decorator.js +0 -2
- package/dist/src/decorators/A_ConceptMethods.decorator.js.map +0 -1
- package/dist/src/decorators/A_Lazy.decorator.d.ts +0 -5
- package/dist/src/decorators/A_Lazy.decorator.js +0 -20
- package/dist/src/decorators/A_Lazy.decorator.js.map +0 -1
- package/dist/src/global/A-Context/A-ContextFragment.class.d.ts +0 -12
- package/dist/src/global/A-Context/A-ContextFragment.class.js +0 -19
- package/dist/src/global/A-Context/A-ContextFragment.class.js.map +0 -1
- package/dist/src/global/A-Namespace/A_Namespace.class.d.ts +0 -47
- package/dist/src/global/A-Namespace/A_Namespace.class.js +0 -112
- package/dist/src/global/A-Namespace/A_Namespace.class.js.map +0 -1
- package/dist/src/global/A-Namespace/A_Namespace.types.d.ts +0 -19
- package/dist/src/global/A-Namespace/A_Namespace.types.js +0 -3
- package/dist/src/global/A-Namespace/A_Namespace.types.js.map +0 -1
- package/dist/src/managers/A_DependencyManager.class.d.ts +0 -24
- package/dist/src/managers/A_DependencyManager.class.js +0 -129
- package/dist/src/managers/A_DependencyManager.class.js.map +0 -1
- package/dist/src/storage/A_Component.storage.d.ts +0 -10
- package/dist/src/storage/A_Component.storage.js +0 -17
- package/dist/src/storage/A_Component.storage.js.map +0 -1
- package/dist/src/storage/A_Concept.storage.d.ts +0 -19
- package/dist/src/storage/A_Concept.storage.js +0 -29
- package/dist/src/storage/A_Concept.storage.js.map +0 -1
- package/dist/src/storage/A_Container.storage.d.ts +0 -8
- package/dist/src/storage/A_Container.storage.js +0 -17
- package/dist/src/storage/A_Container.storage.js.map +0 -1
- package/dist/src/storage/A_Inject.storage.d.ts +0 -9
- package/dist/src/storage/A_Inject.storage.js +0 -13
- package/dist/src/storage/A_Inject.storage.js.map +0 -1
- package/dist/src/types/A_DependencyManager.types.d.ts +0 -15
- package/dist/src/types/A_DependencyManager.types.js +0 -3
- package/dist/src/types/A_DependencyManager.types.js.map +0 -1
|
@@ -10,7 +10,6 @@ const A_Scope_class_1 = require("../A-Scope/A-Scope.class");
|
|
|
10
10
|
const A_Meta_class_1 = require("../A-Meta/A-Meta.class");
|
|
11
11
|
const A_Component_meta_1 = require("../A-Component/A-Component.meta");
|
|
12
12
|
const A_Container_meta_1 = require("../A-Container/A-Container.meta");
|
|
13
|
-
const A_Concept_class_1 = require("../A-Concept/A_Concept.class");
|
|
14
13
|
const A_Entity_types_1 = require("../A-Entity/A-Entity.types");
|
|
15
14
|
const A_Entity_class_1 = require("../A-Entity/A-Entity.class");
|
|
16
15
|
const A_Entity_meta_1 = require("../A-Entity/A-Entity.meta");
|
|
@@ -33,10 +32,6 @@ class A_Context {
|
|
|
33
32
|
* A set of globally registered features.
|
|
34
33
|
*/
|
|
35
34
|
this.features = new WeakMap();
|
|
36
|
-
/**
|
|
37
|
-
* A set of globally registered concepts.
|
|
38
|
-
*/
|
|
39
|
-
this.concepts = new WeakMap();
|
|
40
35
|
/**
|
|
41
36
|
* Uses to store the scope of every element in the program.
|
|
42
37
|
*/
|
|
@@ -44,12 +39,14 @@ class A_Context {
|
|
|
44
39
|
/**
|
|
45
40
|
* A set of allocated scopes per every element in the program.
|
|
46
41
|
*/
|
|
47
|
-
this.conceptsMeta = new Map();
|
|
48
42
|
this.containersMeta = new Map();
|
|
49
43
|
this.componentsMeta = new Map();
|
|
50
44
|
this.entitiesMeta = new Map();
|
|
51
45
|
// uses to allow to store custom meta data
|
|
52
46
|
this.customMeta = new Map();
|
|
47
|
+
this._root = new A_Scope_class_1.A_Scope({
|
|
48
|
+
name: 'root'
|
|
49
|
+
});
|
|
53
50
|
}
|
|
54
51
|
// ===================================================================================================
|
|
55
52
|
// ================================ META OPERATIONS ==================================================
|
|
@@ -74,8 +71,6 @@ class A_Context {
|
|
|
74
71
|
static allocate(param1, param2) {
|
|
75
72
|
const instance = this.getInstance();
|
|
76
73
|
const newScope = new A_Scope_class_1.A_Scope(param2, param2);
|
|
77
|
-
if (!instance._root)
|
|
78
|
-
instance._root = newScope;
|
|
79
74
|
switch (true) {
|
|
80
75
|
case param1 instanceof A_Container_class_1.A_Container:
|
|
81
76
|
instance.containers.set(param1, newScope);
|
|
@@ -83,9 +78,6 @@ class A_Context {
|
|
|
83
78
|
case param1 instanceof A_Feature_class_1.A_Feature:
|
|
84
79
|
instance.features.set(param1, newScope);
|
|
85
80
|
break;
|
|
86
|
-
case param1 instanceof A_Concept_class_1.A_Concept:
|
|
87
|
-
instance.concepts.set(param1, newScope);
|
|
88
|
-
break;
|
|
89
81
|
default:
|
|
90
82
|
throw new Error(`[!] A-Concept Context: Unknown type of the parameter.`);
|
|
91
83
|
}
|
|
@@ -153,8 +145,6 @@ class A_Context {
|
|
|
153
145
|
return instance.containers.get(param1);
|
|
154
146
|
case param1 instanceof A_Feature_class_1.A_Feature:
|
|
155
147
|
return instance.features.get(param1);
|
|
156
|
-
case param1 instanceof A_Concept_class_1.A_Concept:
|
|
157
|
-
return instance.concepts.get(param1);
|
|
158
148
|
case param1 instanceof A_Entity_class_1.A_Entity:
|
|
159
149
|
return instance.registry.get(param1);
|
|
160
150
|
case param1 instanceof A_Component_class_1.A_Component:
|
|
@@ -228,12 +218,16 @@ class A_Context {
|
|
|
228
218
|
metaKey = A_Container_types_1.A_TYPES__ContainerMetaKey.FEATURES;
|
|
229
219
|
break;
|
|
230
220
|
case component instanceof A_Component_class_1.A_Component:
|
|
231
|
-
|
|
221
|
+
{
|
|
222
|
+
metaKey = A_Component_types_1.A_TYPES__ComponentMetaKey.FEATURES;
|
|
223
|
+
}
|
|
232
224
|
break;
|
|
233
225
|
default:
|
|
234
226
|
throw new Error(`A-Feature cannot be defined on the ${component} level`);
|
|
235
227
|
}
|
|
236
|
-
const featureDefinition = this.meta(component)
|
|
228
|
+
const featureDefinition = this.meta(component)
|
|
229
|
+
.get(metaKey)
|
|
230
|
+
.get(param2);
|
|
237
231
|
if (!featureDefinition)
|
|
238
232
|
throw new Error(`[!] A-Concept Context: Feature not found.`);
|
|
239
233
|
const steps = [
|
|
@@ -268,6 +262,54 @@ class A_Context {
|
|
|
268
262
|
parent: scope
|
|
269
263
|
};
|
|
270
264
|
}
|
|
265
|
+
static abstractionDefinition(scope, param1, param2, param3) {
|
|
266
|
+
const instance = this.getInstance();
|
|
267
|
+
const component = param1;
|
|
268
|
+
const config = param3 || {};
|
|
269
|
+
let metaKey;
|
|
270
|
+
switch (true) {
|
|
271
|
+
case component instanceof A_Entity_class_1.A_Entity:
|
|
272
|
+
metaKey = A_Entity_types_1.A_TYPES__EntityMetaKey.FEATURES;
|
|
273
|
+
break;
|
|
274
|
+
case component instanceof A_Container_class_1.A_Container:
|
|
275
|
+
metaKey = A_Container_types_1.A_TYPES__ContainerMetaKey.ABSTRACTIONS;
|
|
276
|
+
break;
|
|
277
|
+
case component instanceof A_Component_class_1.A_Component:
|
|
278
|
+
{
|
|
279
|
+
metaKey = A_Component_types_1.A_TYPES__ComponentMetaKey.ABSTRACTIONS;
|
|
280
|
+
}
|
|
281
|
+
break;
|
|
282
|
+
default:
|
|
283
|
+
throw new Error(`A-Feature cannot be defined on the ${component} level`);
|
|
284
|
+
}
|
|
285
|
+
const featureDefinition = this.meta(component)
|
|
286
|
+
.get(metaKey)
|
|
287
|
+
.get(param2) || [];
|
|
288
|
+
const steps = [
|
|
289
|
+
...featureDefinition
|
|
290
|
+
];
|
|
291
|
+
const feature = `${component.constructor.name}.${param2}`;
|
|
292
|
+
// We need to get all components that has extensions for the feature in component
|
|
293
|
+
instance.componentsMeta
|
|
294
|
+
.forEach((meta, constructor) => {
|
|
295
|
+
// Just try to make sure that component not only Indexed but also presented in scope
|
|
296
|
+
if (scope.has(constructor))
|
|
297
|
+
// Get all extensions for the feature
|
|
298
|
+
meta
|
|
299
|
+
.abstractions(feature)
|
|
300
|
+
.forEach((declaration) => {
|
|
301
|
+
steps.push(Object.assign({ component: constructor }, declaration));
|
|
302
|
+
});
|
|
303
|
+
});
|
|
304
|
+
return {
|
|
305
|
+
name: feature,
|
|
306
|
+
fragments: config.fragments || [],
|
|
307
|
+
components: config.components || [],
|
|
308
|
+
entities: config.entities || [],
|
|
309
|
+
steps,
|
|
310
|
+
parent: scope
|
|
311
|
+
};
|
|
312
|
+
}
|
|
271
313
|
static feature(scope, param1, param2, param3) {
|
|
272
314
|
const featureConstructor = this.featureDefinition(scope, param1, param2, param3);
|
|
273
315
|
const newFeature = new A_Feature_class_1.A_Feature(featureConstructor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { A_TYPES__Entity_JSON,
|
|
1
|
+
import { ASEID } from "@adaas/a-utils";
|
|
2
|
+
import { A_TYPES__Entity_JSON, A_TYPES__IEntity } from "./A-Entity.types";
|
|
3
|
+
import { A_TYPES__FeatureCallParams } from "../A-Feature/A-Feature.types";
|
|
3
4
|
/**
|
|
4
5
|
* A_Entity is another abstraction that describes all major participants in the system business logic.
|
|
5
6
|
* Each Entity should have a clear definition and a clear set of responsibilities.
|
|
@@ -7,7 +8,7 @@ import { A_TYPES__Entity_JSON, A_TYPES__EntityBaseMethod, A_TYPES__EntityBaseMet
|
|
|
7
8
|
*
|
|
8
9
|
* Each entity should be connected to the ContextFragment (Scope) and should be able to communicate with other entities.
|
|
9
10
|
*/
|
|
10
|
-
export declare class A_Entity<_ConstructorType = any, _SerializedType extends A_TYPES__Entity_JSON = A_TYPES__Entity_JSON
|
|
11
|
+
export declare class A_Entity<_ConstructorType = any, _SerializedType extends A_TYPES__Entity_JSON = A_TYPES__Entity_JSON> implements A_TYPES__IEntity {
|
|
11
12
|
aseid: ASEID;
|
|
12
13
|
/**
|
|
13
14
|
* Entity Identifier that corresponds to the class name
|
|
@@ -54,27 +55,18 @@ export declare class A_Entity<_ConstructorType = any, _SerializedType extends A_
|
|
|
54
55
|
* @param lifecycleMethod
|
|
55
56
|
* @param args
|
|
56
57
|
*/
|
|
57
|
-
call(
|
|
58
|
+
call(feature: string, params?: Partial<A_TYPES__FeatureCallParams>): Promise<any>;
|
|
58
59
|
/**
|
|
59
|
-
*
|
|
60
|
+
* The default method that can be called and extended to load entity data.
|
|
60
61
|
*/
|
|
61
|
-
|
|
62
|
-
call(
|
|
62
|
+
load(): Promise<void>;
|
|
63
63
|
/**
|
|
64
|
-
*
|
|
64
|
+
* The default method that can be called and extended to destroy entity data.
|
|
65
65
|
*/
|
|
66
|
-
|
|
67
|
-
call(
|
|
68
|
-
/**
|
|
69
|
-
* A-Feature method name to be called
|
|
70
|
-
*/
|
|
71
|
-
feature: _FeatureNames[number],
|
|
66
|
+
destroy(): Promise<void>;
|
|
72
67
|
/**
|
|
73
|
-
*
|
|
68
|
+
* The default method that can be called and extended to save entity data.
|
|
74
69
|
*/
|
|
75
|
-
params: Partial<A_TYPES__EntityCallParams<_FeatureNames[number]>>): Promise<any>;
|
|
76
|
-
load(): Promise<void>;
|
|
77
|
-
destroy(): Promise<void>;
|
|
78
70
|
save(): Promise<void>;
|
|
79
71
|
fromNew(newEntity: _ConstructorType): void;
|
|
80
72
|
fromJSON(serialized: _SerializedType): void;
|
|
@@ -11,7 +11,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.A_Entity = void 0;
|
|
13
13
|
const a_utils_1 = require("@adaas/a-utils");
|
|
14
|
-
const A_Entity_types_1 = require("./A-Entity.types");
|
|
15
14
|
const errors_constants_1 = require("@adaas/a-utils/dist/src/constants/errors.constants");
|
|
16
15
|
const A_Context_class_1 = require("../A-Context/A-Context.class");
|
|
17
16
|
/**
|
|
@@ -95,15 +94,15 @@ class A_Entity {
|
|
|
95
94
|
get shard() {
|
|
96
95
|
return this.aseid.shard;
|
|
97
96
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
97
|
+
/**
|
|
98
|
+
* Call a feature of the component
|
|
99
|
+
*
|
|
100
|
+
* @param lifecycleMethod
|
|
101
|
+
* @param args
|
|
102
|
+
*/
|
|
103
|
+
call(feature_1) {
|
|
104
|
+
return __awaiter(this, arguments, void 0, function* (feature, params = {}) {
|
|
105
|
+
params.entities = params.entities || [this];
|
|
107
106
|
const newFeature = A_Context_class_1.A_Context.feature(A_Context_class_1.A_Context.scope(this), this, feature, params);
|
|
108
107
|
return yield newFeature.process();
|
|
109
108
|
});
|
|
@@ -111,32 +110,23 @@ class A_Entity {
|
|
|
111
110
|
// ====================================================================
|
|
112
111
|
// ================== Entity Base Methods =============================
|
|
113
112
|
// ====================================================================
|
|
113
|
+
/**
|
|
114
|
+
* The default method that can be called and extended to load entity data.
|
|
115
|
+
*/
|
|
114
116
|
load() {
|
|
115
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
-
yield this.call(A_Entity_types_1.A_TYPES__EntityBaseMethod.DESTROY, {
|
|
117
|
-
entities: [
|
|
118
|
-
this
|
|
119
|
-
]
|
|
120
|
-
});
|
|
121
|
-
});
|
|
117
|
+
return __awaiter(this, void 0, void 0, function* () { });
|
|
122
118
|
}
|
|
119
|
+
/**
|
|
120
|
+
* The default method that can be called and extended to destroy entity data.
|
|
121
|
+
*/
|
|
123
122
|
destroy() {
|
|
124
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
125
|
-
yield this.call(A_Entity_types_1.A_TYPES__EntityBaseMethod.DESTROY, {
|
|
126
|
-
entities: [
|
|
127
|
-
this
|
|
128
|
-
],
|
|
129
|
-
});
|
|
130
|
-
});
|
|
123
|
+
return __awaiter(this, void 0, void 0, function* () { });
|
|
131
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* The default method that can be called and extended to save entity data.
|
|
127
|
+
*/
|
|
132
128
|
save() {
|
|
133
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
134
|
-
yield this.call(A_Entity_types_1.A_TYPES__EntityBaseMethod.SAVE, {
|
|
135
|
-
entities: [
|
|
136
|
-
this
|
|
137
|
-
]
|
|
138
|
-
});
|
|
139
|
-
});
|
|
129
|
+
return __awaiter(this, void 0, void 0, function* () { });
|
|
140
130
|
}
|
|
141
131
|
// ====================================================================
|
|
142
132
|
// ================== Entity Serialization ============================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAIwB;
|
|
1
|
+
{"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Entity.meta.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.meta.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"A-Entity.meta.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.meta.ts"],"names":[],"mappings":";;;AACA,yDAAgD;AAIhD,MAAa,YAAa,SAAQ,qBAA2B;CAI5D;AAJD,oCAIC"}
|
|
@@ -6,7 +6,7 @@ import { A_Entity } from "./A-Entity.class";
|
|
|
6
6
|
export type A_TYPES__EntityCallParams<T extends string> = {
|
|
7
7
|
name: T;
|
|
8
8
|
fragments: Array<A_Fragment>;
|
|
9
|
-
entities: Array<A_Entity<any, any
|
|
9
|
+
entities: Array<A_Entity<any, any>>;
|
|
10
10
|
components: Array<{
|
|
11
11
|
new (...args: any[]): any;
|
|
12
12
|
}>;
|
|
@@ -56,5 +56,6 @@ export type A_TYPES__EntityMeta = {
|
|
|
56
56
|
};
|
|
57
57
|
export declare enum A_TYPES__EntityMetaKey {
|
|
58
58
|
EXTENSIONS = "a-component-extensions",
|
|
59
|
-
FEATURES = "a-component-features"
|
|
59
|
+
FEATURES = "a-component-features",
|
|
60
|
+
ABSTRACTIONS = "a-component-abstractions"
|
|
60
61
|
}
|
|
@@ -12,5 +12,6 @@ var A_TYPES__EntityMetaKey;
|
|
|
12
12
|
(function (A_TYPES__EntityMetaKey) {
|
|
13
13
|
A_TYPES__EntityMetaKey["EXTENSIONS"] = "a-component-extensions";
|
|
14
14
|
A_TYPES__EntityMetaKey["FEATURES"] = "a-component-features";
|
|
15
|
+
A_TYPES__EntityMetaKey["ABSTRACTIONS"] = "a-component-abstractions";
|
|
15
16
|
})(A_TYPES__EntityMetaKey || (exports.A_TYPES__EntityMetaKey = A_TYPES__EntityMetaKey = {}));
|
|
16
17
|
//# sourceMappingURL=A-Entity.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Entity.types.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.types.ts"],"names":[],"mappings":";;;AAsBA,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACjC,0CAAa,CAAA;IACb,gDAAmB,CAAA;IACnB,0CAAa,CAAA;AACjB,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAOA,CAAC;AAuCF,IAAY,
|
|
1
|
+
{"version":3,"file":"A-Entity.types.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.types.ts"],"names":[],"mappings":";;;AAsBA,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACjC,0CAAa,CAAA;IACb,gDAAmB,CAAA;IACnB,0CAAa,CAAA;AACjB,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAOA,CAAC;AAuCF,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAC9B,+DAAqC,CAAA;IACrC,2DAAiC,CAAA;IACjC,mEAAyC,CAAA;AAC7C,CAAC,EAJW,sBAAsB,sCAAtB,sBAAsB,QAIjC"}
|
|
@@ -28,6 +28,7 @@ export declare class A_Feature {
|
|
|
28
28
|
state: A_TYPES__FeatureState;
|
|
29
29
|
result?: any;
|
|
30
30
|
error?: A_Error;
|
|
31
|
+
readonly name: string;
|
|
31
32
|
constructor(params: A_TYPES__Required<Partial<A_TYPES__FeatureConstructor>, ['steps']>);
|
|
32
33
|
/**
|
|
33
34
|
* Custom iterator to iterate over the steps of the feature
|
|
@@ -73,6 +74,6 @@ export declare class A_Feature {
|
|
|
73
74
|
* This method processes the feature by executing all the stages
|
|
74
75
|
*
|
|
75
76
|
*/
|
|
76
|
-
process(): Promise<
|
|
77
|
+
process(): Promise<any>;
|
|
77
78
|
protected errorHandler(error: Error | A_Error | unknown): Promise<void>;
|
|
78
79
|
}
|
|
@@ -10,11 +10,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.A_Feature = void 0;
|
|
13
|
+
const A_Context_class_1 = require("../A-Context/A-Context.class");
|
|
13
14
|
const A_Feature_Define_decorator_1 = require("../../decorators/A-Feature/A-Feature-Define.decorator");
|
|
14
15
|
const A_Feature_Extend_decorator_1 = require("../../decorators/A-Feature/A-Feature-Extend.decorator");
|
|
15
16
|
const A_Feature_types_1 = require("./A-Feature.types");
|
|
16
17
|
const a_utils_1 = require("@adaas/a-utils");
|
|
17
|
-
const A_Context_class_1 = require("../A-Context/A-Context.class");
|
|
18
18
|
const StepsManager_class_1 = require("../../helpers/StepsManager.class");
|
|
19
19
|
/**
|
|
20
20
|
* A_Feature is representing a feature that can be executed across multiple components
|
|
@@ -42,6 +42,7 @@ class A_Feature {
|
|
|
42
42
|
this.stages = [];
|
|
43
43
|
this._index = 0;
|
|
44
44
|
this.state = A_Feature_types_1.A_TYPES__FeatureState.INITIALIZED;
|
|
45
|
+
this.name = params.name || this.constructor.name;
|
|
45
46
|
this.SM = new StepsManager_class_1.StepsManager(params.steps);
|
|
46
47
|
this.stages = this.SM.toStages(this);
|
|
47
48
|
this._current = this.stages[0];
|
|
@@ -138,9 +139,18 @@ class A_Feature {
|
|
|
138
139
|
*/
|
|
139
140
|
process() {
|
|
140
141
|
return __awaiter(this, void 0, void 0, function* () {
|
|
141
|
-
this.
|
|
142
|
-
|
|
143
|
-
|
|
142
|
+
if (this.isDone()) {
|
|
143
|
+
return this.result;
|
|
144
|
+
}
|
|
145
|
+
try {
|
|
146
|
+
this.state = A_Feature_types_1.A_TYPES__FeatureState.PROCESSING;
|
|
147
|
+
for (const stage of this.stages) {
|
|
148
|
+
yield stage.process();
|
|
149
|
+
}
|
|
150
|
+
yield this.completed();
|
|
151
|
+
}
|
|
152
|
+
catch (error) {
|
|
153
|
+
yield this.failed(error);
|
|
144
154
|
}
|
|
145
155
|
});
|
|
146
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Feature.class.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iHAAoG;AACpG,iHAAoG;AACpG,uDAAwF;AACxF,4CAA4D;
|
|
1
|
+
{"version":3,"file":"A-Feature.class.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { A_TYPES__ScopeConfig, A_TYPES__ScopeConstructor } from "../A-Scope/A-Scope.types";
|
|
2
2
|
import { A_TYPES__A_StageStep } from "../A-Stage/A-Stage.types";
|
|
3
|
+
import { A_Fragment } from "../A-Fragment/A-Fragment.class";
|
|
4
|
+
import { A_Entity } from "../A-Entity/A-Entity.class";
|
|
3
5
|
export type A_TYPES__FeatureIteratorReturn<T extends any = any> = () => Promise<T>;
|
|
6
|
+
export type A_TYPES__FeatureCallParams = {
|
|
7
|
+
fragments: Array<A_Fragment>;
|
|
8
|
+
entities: Array<A_Entity<any, any>>;
|
|
9
|
+
components: Array<{
|
|
10
|
+
new (...args: any[]): any;
|
|
11
|
+
}>;
|
|
12
|
+
};
|
|
4
13
|
export type A_TYPES__FeatureConstructor = {
|
|
5
14
|
steps: A_TYPES__A_StageStep[];
|
|
6
15
|
} & A_TYPES__ScopeConstructor & A_TYPES__ScopeConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Feature.types.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"A-Feature.types.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.types.ts"],"names":[],"mappings":";;;AAqBA,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC7B,oDAA2B,CAAA;IAC3B,kDAAyB,CAAA;IAEzB,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACrB,CAAC,EANW,qBAAqB,qCAArB,qBAAqB,QAMhC;AAGD,uCAAuC;AACvC,UAAU;AACV,oCAAoC;AACpC,UAAU;AACV,qCAAqC;AACrC,UAAU;AACV,kDAAkD;AAClD,UAAU;AACV,uBAAuB;AACvB,UAAU;AACV,yCAAyC;AACzC,UAAU;AACV,sCAAsC;AACtC,UAAU;AACV,UAAU;AACV,oBAAoB;AACpB,UAAU;AACV,8CAA8C;AAC9C,UAAU;AACV,4CAA4C;AAC5C,IAAI"}
|
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
3
|
exports.A_Meta = void 0;
|
|
10
4
|
/**
|
|
@@ -154,6 +148,9 @@ class A_Meta {
|
|
|
154
148
|
clear() {
|
|
155
149
|
this.meta.clear();
|
|
156
150
|
}
|
|
151
|
+
toArray() {
|
|
152
|
+
return Array.from(this.meta.entries());
|
|
153
|
+
}
|
|
157
154
|
}
|
|
158
155
|
exports.A_Meta = A_Meta;
|
|
159
156
|
//# sourceMappingURL=A-Meta.class.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Meta.class.js","sourceRoot":"","sources":["../../../../src/global/A-Meta/A-Meta.class.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"A-Meta.class.js","sourceRoot":"","sources":["../../../../src/global/A-Meta/A-Meta.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,11 +17,11 @@ import { A_TYPES__A_InjectDecorator_EntityInjectionInstructions, A_TYPES__A_Inje
|
|
|
17
17
|
*
|
|
18
18
|
*/
|
|
19
19
|
export declare class A_Scope {
|
|
20
|
-
name: string;
|
|
20
|
+
readonly name: string;
|
|
21
21
|
private _components;
|
|
22
22
|
private _fragments;
|
|
23
23
|
private _entities;
|
|
24
|
-
private
|
|
24
|
+
private _parent?;
|
|
25
25
|
protected params: A_TYPES__ScopeConstructor;
|
|
26
26
|
constructor(params: Partial<A_TYPES__ScopeConstructor>, config?: Partial<A_TYPES__ScopeConfig>);
|
|
27
27
|
private initComponents;
|
|
@@ -29,6 +29,8 @@ export declare class A_Scope {
|
|
|
29
29
|
private initFragments;
|
|
30
30
|
get components(): (new (...args: any[]) => A_Component)[];
|
|
31
31
|
get fragments(): A_Fragment[];
|
|
32
|
+
parent(setValue: A_Scope): void;
|
|
33
|
+
parent(): A_Scope;
|
|
32
34
|
/**
|
|
33
35
|
* This method is used to check if the component is available in the scope
|
|
34
36
|
*
|
|
@@ -33,15 +33,15 @@ class A_Scope {
|
|
|
33
33
|
components: [],
|
|
34
34
|
fragments: [],
|
|
35
35
|
entities: [],
|
|
36
|
-
import: [],
|
|
37
|
-
export: [],
|
|
36
|
+
// import: [],
|
|
37
|
+
// export: [],
|
|
38
38
|
};
|
|
39
39
|
this.params = Object.assign(Object.assign({}, defaultParams), params);
|
|
40
40
|
this.initComponents(params.components || []);
|
|
41
41
|
this.initFragments(params.fragments || []);
|
|
42
42
|
this.initEntities(params.entities || []);
|
|
43
43
|
if (config.parent) {
|
|
44
|
-
this.
|
|
44
|
+
this._parent = config.parent;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
initComponents(_components) {
|
|
@@ -61,12 +61,19 @@ class A_Scope {
|
|
|
61
61
|
get fragments() {
|
|
62
62
|
return this.params.fragments || [];
|
|
63
63
|
}
|
|
64
|
+
parent(setValue) {
|
|
65
|
+
if (setValue) {
|
|
66
|
+
this._parent = setValue;
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
return this._parent;
|
|
70
|
+
}
|
|
64
71
|
has(entity) {
|
|
65
72
|
switch (true) {
|
|
66
73
|
case a_utils_1.A_CommonHelper.isInheritedFrom(entity, A_Component_class_1.A_Component): {
|
|
67
74
|
const found = this.params.components.includes(entity);
|
|
68
|
-
if (!found && !!this.
|
|
69
|
-
return this.
|
|
75
|
+
if (!found && !!this._parent)
|
|
76
|
+
return this._parent.has(entity);
|
|
70
77
|
return found;
|
|
71
78
|
}
|
|
72
79
|
case a_utils_1.A_CommonHelper.isInheritedFrom(entity, A_Entity_class_1.A_Entity): {
|
|
@@ -76,8 +83,8 @@ class A_Scope {
|
|
|
76
83
|
}
|
|
77
84
|
case a_utils_1.A_CommonHelper.isInheritedFrom(entity, A_Fragment_class_1.A_Fragment): {
|
|
78
85
|
const found = this._fragments.has(entity);
|
|
79
|
-
if (!found && !!this.
|
|
80
|
-
return this.
|
|
86
|
+
if (!found && !!this._parent)
|
|
87
|
+
return this._parent.has(entity);
|
|
81
88
|
return found;
|
|
82
89
|
}
|
|
83
90
|
default: {
|
|
@@ -128,8 +135,8 @@ class A_Scope {
|
|
|
128
135
|
switch (true) {
|
|
129
136
|
case !!found:
|
|
130
137
|
return found;
|
|
131
|
-
case !found && !!this.
|
|
132
|
-
return this.
|
|
138
|
+
case !found && !!this._parent:
|
|
139
|
+
return this._parent.resolveEntity(entity, instructions);
|
|
133
140
|
default:
|
|
134
141
|
throw new Error(`Fragment ${entity.name} not found in the scope ${this.name}`);
|
|
135
142
|
}
|
|
@@ -165,8 +172,8 @@ class A_Scope {
|
|
|
165
172
|
return this._fragments.get(fragment);
|
|
166
173
|
case fragmentInstancePresented && !this._fragments.has(fragment):
|
|
167
174
|
return this.fragments.find(fr => fr instanceof fragment);
|
|
168
|
-
case !fragmentInstancePresented && !!this.
|
|
169
|
-
return this.
|
|
175
|
+
case !fragmentInstancePresented && !!this._parent:
|
|
176
|
+
return this._parent.resolveFragment(fragment);
|
|
170
177
|
default:
|
|
171
178
|
throw new Error(`Fragment ${fragment.name} not found in the scope ${this.name}`);
|
|
172
179
|
}
|
|
@@ -175,8 +182,8 @@ class A_Scope {
|
|
|
175
182
|
return this;
|
|
176
183
|
}
|
|
177
184
|
resolveComponent(component) {
|
|
178
|
-
// The idea here that in case when Scope has no exact component we have to resolve it from the
|
|
179
|
-
// BUT: if it's not presented in
|
|
185
|
+
// The idea here that in case when Scope has no exact component we have to resolve it from the _parent
|
|
186
|
+
// BUT: if it's not presented in _parent we have to check for inheritance
|
|
180
187
|
// That means that we should ensure that there's no components that are children of the required component
|
|
181
188
|
switch (true) {
|
|
182
189
|
// In case when the component is available and exists in the scope
|
|
@@ -204,9 +211,9 @@ class A_Scope {
|
|
|
204
211
|
const found = this.components.find(el => a_utils_1.A_CommonHelper.isInheritedFrom(el, component));
|
|
205
212
|
return this.resolveComponent(found);
|
|
206
213
|
}
|
|
207
|
-
// In case when the component is not available in the scope but the
|
|
208
|
-
case !this.components.includes(component) && !!this.
|
|
209
|
-
return this.
|
|
214
|
+
// In case when the component is not available in the scope but the _parent is available
|
|
215
|
+
case !this.components.includes(component) && !!this._parent: {
|
|
216
|
+
return this._parent.resolveComponent(component);
|
|
210
217
|
}
|
|
211
218
|
default:
|
|
212
219
|
throw new Error(`Component ${component.name} not found in the scope ${this.name}`);
|