@adaas/a-concept 0.0.64 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/dist/index.d.ts +24 -32
  2. package/dist/index.js +35 -52
  3. package/dist/index.js.map +1 -1
  4. package/dist/src/constants/env.constants.d.ts +15 -8
  5. package/dist/src/constants/env.constants.js +17 -10
  6. package/dist/src/constants/env.constants.js.map +1 -1
  7. package/dist/src/global/A-Abstraction/A-Abstraction-Extend.decorator.d.ts +23 -0
  8. package/dist/src/global/A-Abstraction/A-Abstraction-Extend.decorator.js +69 -0
  9. package/dist/src/global/A-Abstraction/A-Abstraction-Extend.decorator.js.map +1 -0
  10. package/dist/src/global/A-Abstraction/A-Abstraction.class.d.ts +47 -20
  11. package/dist/src/global/A-Abstraction/A-Abstraction.class.js +55 -48
  12. package/dist/src/global/A-Abstraction/A-Abstraction.class.js.map +1 -1
  13. package/dist/src/global/A-Abstraction/A-Abstraction.error.d.ts +7 -0
  14. package/dist/src/global/A-Abstraction/A-Abstraction.error.js +12 -0
  15. package/dist/src/global/A-Abstraction/A-Abstraction.error.js.map +1 -0
  16. package/dist/src/global/A-Abstraction/A-Abstraction.types.d.ts +27 -12
  17. package/dist/src/global/A-Abstraction/A-Abstraction.types.js +0 -8
  18. package/dist/src/global/A-Abstraction/A-Abstraction.types.js.map +1 -1
  19. package/dist/src/global/A-Caller/A_Caller.class.d.ts +33 -0
  20. package/dist/src/global/A-Caller/A_Caller.class.js +44 -0
  21. package/dist/src/global/A-Caller/A_Caller.class.js.map +1 -0
  22. package/dist/src/global/A-Caller/A_Caller.error.d.ts +7 -0
  23. package/dist/src/global/A-Caller/A_Caller.error.js +12 -0
  24. package/dist/src/global/A-Caller/A_Caller.error.js.map +1 -0
  25. package/dist/src/global/A-Caller/A_Caller.types.d.ts +18 -0
  26. package/dist/src/{base/A-Errors/A-Errors.types.js → global/A-Caller/A_Caller.types.js} +1 -1
  27. package/dist/src/global/A-Caller/A_Caller.types.js.map +1 -0
  28. package/dist/src/global/A-Component/A-Component.class.d.ts +20 -3
  29. package/dist/src/global/A-Component/A-Component.class.js +35 -19
  30. package/dist/src/global/A-Component/A-Component.class.js.map +1 -1
  31. package/dist/src/global/A-Component/A-Component.constants.d.ts +6 -0
  32. package/dist/src/global/A-Component/A-Component.constants.js +11 -0
  33. package/dist/src/global/A-Component/A-Component.constants.js.map +1 -0
  34. package/dist/src/global/A-Component/A-Component.meta.d.ts +4 -4
  35. package/dist/src/global/A-Component/A-Component.meta.js +6 -8
  36. package/dist/src/global/A-Component/A-Component.meta.js.map +1 -1
  37. package/dist/src/global/A-Component/A-Component.types.d.ts +40 -22
  38. package/dist/src/global/A-Component/A-Component.types.js +1 -8
  39. package/dist/src/global/A-Component/A-Component.types.js.map +1 -1
  40. package/dist/src/global/A-Concept/A-Concept.class.d.ts +153 -0
  41. package/dist/src/global/A-Concept/A-Concept.class.js +260 -0
  42. package/dist/src/global/A-Concept/A-Concept.class.js.map +1 -0
  43. package/dist/src/global/A-Concept/A-Concept.constants.d.ts +33 -0
  44. package/dist/src/global/A-Concept/A-Concept.constants.js +39 -0
  45. package/dist/src/global/A-Concept/A-Concept.constants.js.map +1 -0
  46. package/dist/src/global/A-Concept/{A_Concept.meta.js → A-Concept.meta.js} +1 -2
  47. package/dist/src/global/A-Concept/A-Concept.meta.js.map +1 -0
  48. package/dist/src/global/A-Concept/A-Concept.types.d.ts +83 -0
  49. package/dist/src/global/{A-Channel/A-Channel.types.js → A-Concept/A-Concept.types.js} +1 -1
  50. package/dist/src/global/A-Concept/A-Concept.types.js.map +1 -0
  51. package/dist/src/global/A-Container/A-Container.class.d.ts +31 -35
  52. package/dist/src/global/A-Container/A-Container.class.js +34 -55
  53. package/dist/src/global/A-Container/A-Container.class.js.map +1 -1
  54. package/dist/src/global/A-Container/A-Container.constants.d.ts +5 -0
  55. package/dist/src/global/A-Container/A-Container.constants.js +10 -0
  56. package/dist/src/global/A-Container/A-Container.constants.js.map +1 -0
  57. package/dist/src/global/A-Container/A-Container.meta.d.ts +6 -6
  58. package/dist/src/global/A-Container/A-Container.meta.js +5 -6
  59. package/dist/src/global/A-Container/A-Container.meta.js.map +1 -1
  60. package/dist/src/global/A-Container/A-Container.types.d.ts +31 -25
  61. package/dist/src/global/A-Container/A-Container.types.js +1 -7
  62. package/dist/src/global/A-Container/A-Container.types.js.map +1 -1
  63. package/dist/src/global/A-Context/A-Context.class.d.ts +302 -76
  64. package/dist/src/global/A-Context/A-Context.class.js +436 -244
  65. package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
  66. package/dist/src/global/A-Context/A-Context.error.d.ts +20 -0
  67. package/dist/src/global/A-Context/A-Context.error.js +25 -0
  68. package/dist/src/global/A-Context/A-Context.error.js.map +1 -0
  69. package/dist/src/global/A-Context/A-Context.types.d.ts +5 -0
  70. package/dist/src/global/A-Context/A-Context.types.js +1 -0
  71. package/dist/src/global/A-Entity/A-Entity.class.d.ts +18 -18
  72. package/dist/src/global/A-Entity/A-Entity.class.js +36 -43
  73. package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
  74. package/dist/src/global/A-Entity/A-Entity.constants.d.ts +11 -0
  75. package/dist/src/global/A-Entity/A-Entity.constants.js +17 -0
  76. package/dist/src/global/A-Entity/A-Entity.constants.js.map +1 -0
  77. package/dist/src/global/A-Entity/A-Entity.error.d.ts +7 -0
  78. package/dist/src/global/A-Entity/A-Entity.error.js +12 -0
  79. package/dist/src/global/A-Entity/A-Entity.error.js.map +1 -0
  80. package/dist/src/global/A-Entity/A-Entity.meta.d.ts +2 -2
  81. package/dist/src/global/A-Entity/A-Entity.meta.js +2 -2
  82. package/dist/src/global/A-Entity/A-Entity.meta.js.map +1 -1
  83. package/dist/src/global/A-Entity/A-Entity.types.d.ts +24 -29
  84. package/dist/src/global/A-Entity/A-Entity.types.js +1 -13
  85. package/dist/src/global/A-Entity/A-Entity.types.js.map +1 -1
  86. package/dist/src/global/A-Error/A_Error.class.d.ts +219 -0
  87. package/dist/src/global/A-Error/A_Error.class.js +267 -0
  88. package/dist/src/global/A-Error/A_Error.class.js.map +1 -0
  89. package/dist/src/global/A-Error/A_Error.constants.d.ts +5 -0
  90. package/dist/src/global/A-Error/A_Error.constants.js +9 -0
  91. package/dist/src/global/A-Error/A_Error.constants.js.map +1 -0
  92. package/dist/src/global/A-Error/A_Error.types.d.ts +89 -0
  93. package/dist/src/{decorators/A-Inject/A-Inject.decorator.types.js → global/A-Error/A_Error.types.js} +1 -1
  94. package/dist/src/global/A-Error/A_Error.types.js.map +1 -0
  95. package/dist/src/global/A-Feature/A-Feature-Define.decorator.d.ts +15 -0
  96. package/dist/src/{decorators → global}/A-Feature/A-Feature-Define.decorator.js +21 -27
  97. package/dist/src/global/A-Feature/A-Feature-Define.decorator.js.map +1 -0
  98. package/dist/src/{decorators → global}/A-Feature/A-Feature-Extend.decorator.d.ts +26 -3
  99. package/dist/src/global/A-Feature/A-Feature-Extend.decorator.js +97 -0
  100. package/dist/src/global/A-Feature/A-Feature-Extend.decorator.js.map +1 -0
  101. package/dist/src/global/A-Feature/A-Feature.class.d.ts +120 -30
  102. package/dist/src/global/A-Feature/A-Feature.class.js +205 -73
  103. package/dist/src/global/A-Feature/A-Feature.class.js.map +1 -1
  104. package/dist/src/global/A-Feature/A-Feature.error.d.ts +25 -0
  105. package/dist/src/global/A-Feature/A-Feature.error.js +33 -0
  106. package/dist/src/global/A-Feature/A-Feature.error.js.map +1 -0
  107. package/dist/src/global/A-Feature/A-Feature.types.d.ts +241 -18
  108. package/dist/src/global/A-Feature/A-Feature.types.js +16 -22
  109. package/dist/src/global/A-Feature/A-Feature.types.js.map +1 -1
  110. package/dist/src/global/A-Fragment/A-Fragment.class.d.ts +19 -27
  111. package/dist/src/global/A-Fragment/A-Fragment.class.js +21 -91
  112. package/dist/src/global/A-Fragment/A-Fragment.class.js.map +1 -1
  113. package/dist/src/global/A-Fragment/A-Fragment.types.d.ts +19 -1
  114. package/dist/src/global/A-Fragment/A-Fragment.types.js +3 -0
  115. package/dist/src/global/A-Fragment/A-Fragment.types.js.map +1 -1
  116. package/dist/src/global/A-Inject/A-Inject.decorator.d.ts +80 -0
  117. package/dist/src/global/A-Inject/A-Inject.decorator.js +49 -0
  118. package/dist/src/global/A-Inject/A-Inject.decorator.js.map +1 -0
  119. package/dist/src/global/A-Inject/A-Inject.error.d.ts +5 -0
  120. package/dist/src/global/A-Inject/A-Inject.error.js +10 -0
  121. package/dist/src/global/A-Inject/A-Inject.error.js.map +1 -0
  122. package/dist/src/global/A-Inject/A-Inject.types.d.ts +42 -0
  123. package/dist/src/{decorators/A-Entity/A-Entity.decorator.types.js → global/A-Inject/A-Inject.types.js} +1 -1
  124. package/dist/src/global/A-Inject/A-Inject.types.js.map +1 -0
  125. package/dist/src/global/A-Meta/A-Meta.class.d.ts +1 -1
  126. package/dist/src/global/A-Meta/A-Meta.types.d.ts +14 -0
  127. package/dist/src/global/A-Meta/A-Meta.types.js +1 -0
  128. package/dist/src/global/A-Scope/A-Scope.class.d.ts +124 -142
  129. package/dist/src/global/A-Scope/A-Scope.class.js +163 -209
  130. package/dist/src/global/A-Scope/A-Scope.class.js.map +1 -1
  131. package/dist/src/global/A-Scope/A-Scope.error.d.ts +6 -0
  132. package/dist/src/global/A-Scope/A-Scope.error.js +11 -0
  133. package/dist/src/global/A-Scope/A-Scope.error.js.map +1 -0
  134. package/dist/src/global/A-Scope/A-Scope.types.d.ts +48 -13
  135. package/dist/src/global/A-Stage/A-Stage.class.d.ts +31 -23
  136. package/dist/src/global/A-Stage/A-Stage.class.js +100 -68
  137. package/dist/src/global/A-Stage/A-Stage.class.js.map +1 -1
  138. package/dist/src/global/A-Stage/A-Stage.error.d.ts +2 -1
  139. package/dist/src/global/A-Stage/A-Stage.error.js +5 -2
  140. package/dist/src/global/A-Stage/A-Stage.error.js.map +1 -1
  141. package/dist/src/global/A-Stage/A-Stage.types.d.ts +4 -16
  142. package/dist/src/global/A-Stage/A-Stage.types.js +0 -16
  143. package/dist/src/global/A-Stage/A-Stage.types.js.map +1 -1
  144. package/dist/src/global/ASEID/ASEID.class.d.ts +130 -0
  145. package/dist/src/global/ASEID/ASEID.class.js +167 -0
  146. package/dist/src/global/ASEID/ASEID.class.js.map +1 -0
  147. package/dist/src/global/ASEID/ASEID.constants.js +2 -0
  148. package/dist/src/global/ASEID/ASEID.constants.js.map +1 -0
  149. package/dist/src/global/ASEID/ASEID.error.d.ts +5 -0
  150. package/dist/src/global/ASEID/ASEID.error.js +10 -0
  151. package/dist/src/global/ASEID/ASEID.error.js.map +1 -0
  152. package/dist/src/global/ASEID/ASEID.types.d.ts +65 -0
  153. package/dist/src/global/ASEID/ASEID.types.js +5 -0
  154. package/dist/src/global/ASEID/ASEID.types.js.map +1 -0
  155. package/dist/src/helpers/A_Common.helper.d.ts +28 -0
  156. package/dist/src/helpers/A_Common.helper.js +170 -0
  157. package/dist/src/helpers/A_Common.helper.js.map +1 -0
  158. package/dist/src/helpers/A_Formatter.helper.d.ts +35 -0
  159. package/dist/src/helpers/A_Formatter.helper.js +62 -0
  160. package/dist/src/helpers/A_Formatter.helper.js.map +1 -0
  161. package/dist/src/helpers/A_Identity.helper.d.ts +29 -0
  162. package/dist/src/helpers/A_Identity.helper.js +43 -0
  163. package/dist/src/helpers/A_Identity.helper.js.map +1 -0
  164. package/dist/src/helpers/{StepsManager.class.d.ts → A_StepsManager.class.d.ts} +4 -2
  165. package/dist/src/helpers/{StepsManager.class.js → A_StepsManager.class.js} +10 -5
  166. package/dist/src/helpers/A_StepsManager.class.js.map +1 -0
  167. package/dist/src/helpers/A_TypeGuards.helper.d.ts +205 -0
  168. package/dist/src/helpers/A_TypeGuards.helper.js +288 -0
  169. package/dist/src/helpers/A_TypeGuards.helper.js.map +1 -0
  170. package/dist/src/types/A_Common.types.d.ts +36 -0
  171. package/dist/src/types/A_Common.types.js +3 -0
  172. package/dist/src/types/A_Common.types.js.map +1 -0
  173. package/index.ts +27 -51
  174. package/jest.config.ts +1 -0
  175. package/package.json +1 -2
  176. package/src/constants/env.constants.ts +18 -11
  177. package/src/global/A-Abstraction/A-Abstraction-Extend.decorator.ts +103 -0
  178. package/src/global/A-Abstraction/A-Abstraction.class.ts +71 -65
  179. package/src/global/A-Abstraction/A-Abstraction.error.ts +9 -0
  180. package/src/global/A-Abstraction/A-Abstraction.types.ts +52 -13
  181. package/src/global/A-Caller/A_Caller.class.ts +61 -0
  182. package/src/global/A-Caller/A_Caller.error.ts +10 -0
  183. package/src/global/A-Caller/A_Caller.types.ts +25 -0
  184. package/src/global/A-Component/A-Component.class.ts +26 -15
  185. package/src/global/A-Component/A-Component.constants.ts +9 -0
  186. package/src/global/A-Component/A-Component.meta.ts +6 -16
  187. package/src/global/A-Component/A-Component.types.ts +53 -28
  188. package/src/global/A-Concept/A-Concept.class.ts +316 -0
  189. package/src/global/A-Concept/A-Concept.constants.ts +36 -0
  190. package/src/global/A-Concept/A-Concept.meta.ts +17 -0
  191. package/src/global/A-Concept/A-Concept.types.ts +100 -0
  192. package/src/global/A-Container/A-Container.class.ts +42 -83
  193. package/src/global/A-Container/A-Container.constants.ts +5 -0
  194. package/src/global/A-Container/A-Container.meta.ts +7 -11
  195. package/src/global/A-Container/A-Container.types.ts +38 -34
  196. package/src/global/A-Context/A-Context.class.ts +648 -412
  197. package/src/global/A-Context/A-Context.error.ts +44 -0
  198. package/src/global/A-Context/A-Context.types.ts +14 -0
  199. package/src/global/A-Entity/A-Entity.class.ts +39 -52
  200. package/src/global/A-Entity/A-Entity.constants.ts +12 -0
  201. package/src/global/A-Entity/A-Entity.error.ts +12 -0
  202. package/src/global/A-Entity/A-Entity.meta.ts +4 -4
  203. package/src/global/A-Entity/A-Entity.types.ts +31 -36
  204. package/src/global/A-Error/A_Error.class.ts +408 -0
  205. package/src/global/A-Error/A_Error.constants.ts +11 -0
  206. package/src/global/A-Error/A_Error.types.ts +96 -0
  207. package/src/{decorators → global}/A-Feature/A-Feature-Define.decorator.ts +31 -37
  208. package/src/global/A-Feature/A-Feature-Extend.decorator.ts +187 -0
  209. package/src/global/A-Feature/A-Feature.class.ts +279 -122
  210. package/src/global/A-Feature/A-Feature.error.ts +33 -0
  211. package/src/global/A-Feature/A-Feature.types.ts +278 -40
  212. package/src/global/A-Fragment/A-Fragment.class.ts +29 -100
  213. package/src/global/A-Fragment/A-Fragment.types.ts +25 -3
  214. package/src/global/A-Inject/A-Inject.decorator.ts +167 -0
  215. package/src/global/A-Inject/A-Inject.error.ts +8 -0
  216. package/src/global/A-Inject/A-Inject.types.ts +75 -0
  217. package/src/global/A-Meta/A-Meta.class.ts +1 -1
  218. package/src/global/A-Meta/A-Meta.types.ts +21 -0
  219. package/src/global/A-Scope/A-Scope.class.ts +288 -299
  220. package/src/global/A-Scope/A-Scope.error.ts +13 -0
  221. package/src/global/A-Scope/A-Scope.types.ts +61 -27
  222. package/src/global/A-Stage/A-Stage.class.ts +142 -80
  223. package/src/global/A-Stage/A-Stage.error.ts +4 -2
  224. package/src/global/A-Stage/A-Stage.types.ts +4 -25
  225. package/src/global/ASEID/ASEID.class.ts +275 -0
  226. package/src/global/ASEID/ASEID.error.ts +12 -0
  227. package/src/global/ASEID/ASEID.types.ts +79 -0
  228. package/src/helpers/A_Common.helper.ts +204 -0
  229. package/src/helpers/A_Formatter.helper.ts +58 -0
  230. package/src/helpers/A_Identity.helper.ts +53 -0
  231. package/src/helpers/{StepsManager.class.ts → A_StepsManager.class.ts} +19 -3
  232. package/src/helpers/A_TypeGuards.helper.ts +318 -0
  233. package/src/types/A_Common.types.ts +79 -0
  234. package/tests/A-Common.test.ts +117 -0
  235. package/tests/A-Component.test.ts +11 -6
  236. package/tests/A-Concept.test.ts +19 -22
  237. package/tests/A-Entity.test.ts +24 -24
  238. package/tests/A-Error.test.ts +129 -0
  239. package/tests/A-Feature.test.ts +34 -25
  240. package/tests/A-Scope.test.ts +50 -22
  241. package/tests/ASEID.test.ts +74 -0
  242. package/tsconfig.build.json +2 -1
  243. package/tsconfig.json +3 -2
  244. package/dist/src/base/A-Config/A-Config.container.d.ts +0 -9
  245. package/dist/src/base/A-Config/A-Config.container.js +0 -69
  246. package/dist/src/base/A-Config/A-Config.container.js.map +0 -1
  247. package/dist/src/base/A-Config/A-Config.context.d.ts +0 -30
  248. package/dist/src/base/A-Config/A-Config.context.js +0 -60
  249. package/dist/src/base/A-Config/A-Config.context.js.map +0 -1
  250. package/dist/src/base/A-Config/A-Config.types.d.ts +0 -20
  251. package/dist/src/base/A-Config/A-Config.types.js +0 -7
  252. package/dist/src/base/A-Config/A-Config.types.js.map +0 -1
  253. package/dist/src/base/A-Config/components/ConfigReader.component.d.ts +0 -29
  254. package/dist/src/base/A-Config/components/ConfigReader.component.js +0 -84
  255. package/dist/src/base/A-Config/components/ConfigReader.component.js.map +0 -1
  256. package/dist/src/base/A-Config/components/ENVConfigReader.component.d.ts +0 -10
  257. package/dist/src/base/A-Config/components/ENVConfigReader.component.js +0 -37
  258. package/dist/src/base/A-Config/components/ENVConfigReader.component.js.map +0 -1
  259. package/dist/src/base/A-Config/components/FileConfigReader.component.d.ts +0 -11
  260. package/dist/src/base/A-Config/components/FileConfigReader.component.js +0 -48
  261. package/dist/src/base/A-Config/components/FileConfigReader.component.js.map +0 -1
  262. package/dist/src/base/A-Errors/A-Error.entity.d.ts +0 -3
  263. package/dist/src/base/A-Errors/A-Error.entity.js +0 -8
  264. package/dist/src/base/A-Errors/A-Error.entity.js.map +0 -1
  265. package/dist/src/base/A-Errors/A-Errors.component.d.ts +0 -19
  266. package/dist/src/base/A-Errors/A-Errors.component.js +0 -87
  267. package/dist/src/base/A-Errors/A-Errors.component.js.map +0 -1
  268. package/dist/src/base/A-Errors/A-Errors.context.d.ts +0 -27
  269. package/dist/src/base/A-Errors/A-Errors.context.js +0 -50
  270. package/dist/src/base/A-Errors/A-Errors.context.js.map +0 -1
  271. package/dist/src/base/A-Errors/A-Errors.types.d.ts +0 -5
  272. package/dist/src/base/A-Errors/A-Errors.types.js.map +0 -1
  273. package/dist/src/base/A-Logger/A-Logger.component.d.ts +0 -31
  274. package/dist/src/base/A-Logger/A-Logger.component.js +0 -155
  275. package/dist/src/base/A-Logger/A-Logger.component.js.map +0 -1
  276. package/dist/src/base/A-Logger/A-Logger.types.js +0 -2
  277. package/dist/src/base/A-Logger/A-Logger.types.js.map +0 -1
  278. package/dist/src/base/A-Polyfill/A-Polyfill.component.d.ts +0 -5
  279. package/dist/src/base/A-Polyfill/A-Polyfill.component.js +0 -34
  280. package/dist/src/base/A-Polyfill/A-Polyfill.component.js.map +0 -1
  281. package/dist/src/decorators/A-Abstraction/A-Abstraction-Extend.decorator.d.ts +0 -14
  282. package/dist/src/decorators/A-Abstraction/A-Abstraction-Extend.decorator.js +0 -53
  283. package/dist/src/decorators/A-Abstraction/A-Abstraction-Extend.decorator.js.map +0 -1
  284. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.d.ts +0 -2
  285. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.js +0 -3
  286. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.js.map +0 -1
  287. package/dist/src/decorators/A-Connect/A-Connect.decorator.d.ts +0 -19
  288. package/dist/src/decorators/A-Connect/A-Connect.decorator.js +0 -31
  289. package/dist/src/decorators/A-Connect/A-Connect.decorator.js.map +0 -1
  290. package/dist/src/decorators/A-Connect/A-Connect.decorator.types.d.ts +0 -1
  291. package/dist/src/decorators/A-Connect/A-Connect.decorator.types.js +0 -3
  292. package/dist/src/decorators/A-Connect/A-Connect.decorator.types.js.map +0 -1
  293. package/dist/src/decorators/A-Entity/A-Entity-List.decorator.d.ts +0 -1
  294. package/dist/src/decorators/A-Entity/A-Entity-List.decorator.js +0 -8
  295. package/dist/src/decorators/A-Entity/A-Entity-List.decorator.js.map +0 -1
  296. package/dist/src/decorators/A-Entity/A-Entity.decorator.types.d.ts +0 -14
  297. package/dist/src/decorators/A-Entity/A-Entity.decorator.types.js.map +0 -1
  298. package/dist/src/decorators/A-Feature/A-Feature-Define.decorator.d.ts +0 -19
  299. package/dist/src/decorators/A-Feature/A-Feature-Define.decorator.js.map +0 -1
  300. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.js +0 -81
  301. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.js.map +0 -1
  302. package/dist/src/decorators/A-Feature/A-Feature.decorator.types.d.ts +0 -96
  303. package/dist/src/decorators/A-Feature/A-Feature.decorator.types.js +0 -3
  304. package/dist/src/decorators/A-Feature/A-Feature.decorator.types.js.map +0 -1
  305. package/dist/src/decorators/A-Inject/A-Inject.decorator.d.ts +0 -30
  306. package/dist/src/decorators/A-Inject/A-Inject.decorator.js +0 -47
  307. package/dist/src/decorators/A-Inject/A-Inject.decorator.js.map +0 -1
  308. package/dist/src/decorators/A-Inject/A-Inject.decorator.types.d.ts +0 -48
  309. package/dist/src/decorators/A-Inject/A-Inject.decorator.types.js.map +0 -1
  310. package/dist/src/global/A-Channel/A-Channel.class.d.ts +0 -16
  311. package/dist/src/global/A-Channel/A-Channel.class.js +0 -59
  312. package/dist/src/global/A-Channel/A-Channel.class.js.map +0 -1
  313. package/dist/src/global/A-Channel/A-Channel.types.d.ts +0 -68
  314. package/dist/src/global/A-Channel/A-Channel.types.js.map +0 -1
  315. package/dist/src/global/A-Command/A-Command.class.d.ts +0 -187
  316. package/dist/src/global/A-Command/A-Command.class.js +0 -349
  317. package/dist/src/global/A-Command/A-Command.class.js.map +0 -1
  318. package/dist/src/global/A-Command/A-Command.constants.d.ts +0 -17
  319. package/dist/src/global/A-Command/A-Command.constants.js +0 -22
  320. package/dist/src/global/A-Command/A-Command.constants.js.map +0 -1
  321. package/dist/src/global/A-Command/A-Command.meta.d.ts +0 -11
  322. package/dist/src/global/A-Command/A-Command.meta.js +0 -18
  323. package/dist/src/global/A-Command/A-Command.meta.js.map +0 -1
  324. package/dist/src/global/A-Command/A-Command.types.d.ts +0 -43
  325. package/dist/src/global/A-Command/A-Command.types.js +0 -10
  326. package/dist/src/global/A-Command/A-Command.types.js.map +0 -1
  327. package/dist/src/global/A-Command/context/A_Command.context.d.ts +0 -64
  328. package/dist/src/global/A-Command/context/A_Command.context.js +0 -85
  329. package/dist/src/global/A-Command/context/A_Command.context.js.map +0 -1
  330. package/dist/src/global/A-Concept/A_Concept.class.d.ts +0 -104
  331. package/dist/src/global/A-Concept/A_Concept.class.js +0 -217
  332. package/dist/src/global/A-Concept/A_Concept.class.js.map +0 -1
  333. package/dist/src/global/A-Concept/A_Concept.meta.js.map +0 -1
  334. package/dist/src/global/A-Concept/A_Concept.types.d.ts +0 -103
  335. package/dist/src/global/A-Concept/A_Concept.types.js +0 -28
  336. package/dist/src/global/A-Concept/A_Concept.types.js.map +0 -1
  337. package/dist/src/global/A-Feature/A-FeatureCaller.class.d.ts +0 -22
  338. package/dist/src/global/A-Feature/A-FeatureCaller.class.js +0 -26
  339. package/dist/src/global/A-Feature/A-FeatureCaller.class.js.map +0 -1
  340. package/dist/src/global/A-Scope/A-Scope.constants.d.ts +0 -2
  341. package/dist/src/global/A-Scope/A-Scope.constants.js +0 -11
  342. package/dist/src/global/A-Scope/A-Scope.constants.js.map +0 -1
  343. package/dist/src/helpers/StepsManager.class.js.map +0 -1
  344. package/dist/src/types/A_Module.types.d.ts +0 -17
  345. package/dist/src/types/A_Module.types.js +0 -22
  346. package/dist/src/types/A_Module.types.js.map +0 -1
  347. package/examples/entity/concept.ts +0 -68
  348. package/examples/entity/entities/Task.entity.ts +0 -110
  349. package/examples/entity/entities/User.entity.ts +0 -62
  350. package/examples/fe-be/channels/Test.channel.ts +0 -27
  351. package/examples/fe-be/components/BE-Controller.component.ts +0 -20
  352. package/examples/fe-be/components/FE.component.ts +0 -13
  353. package/examples/fe-be/containers/ServerApp.container.ts +0 -8
  354. package/examples/fe-be/containers/WebApp.container.ts +0 -13
  355. package/examples/multi-container/channels/Direct.channel.ts +0 -39
  356. package/examples/multi-container/concept.ts +0 -0
  357. package/examples/multi-container/containers/Command.container.ts +0 -41
  358. package/examples/multi-container/containers/Schedule.container.ts +0 -52
  359. package/examples/simple/components/A.component.ts +0 -71
  360. package/examples/simple/components/B.component.ts +0 -68
  361. package/examples/simple/concept.ts +0 -87
  362. package/examples/simple/containers/Main.container.ts +0 -88
  363. package/examples/simple/containers/Secondary.container.ts +0 -26
  364. package/examples/simple/context/Fragment_A.context.ts +0 -25
  365. package/examples/simple/context/Fragment_B.context.ts +0 -19
  366. package/examples/simple/entities/EntityA.entity.ts +0 -32
  367. package/examples/simple-http-server/components/http-error-handler.component.ts +0 -47
  368. package/examples/simple-http-server/components/http-request-handler.component.ts +0 -13
  369. package/examples/simple-http-server/concept.ts +0 -35
  370. package/examples/simple-http-server/containers/http-server.container.ts +0 -57
  371. package/examples/simple-http-server/contexts/http-request.context.ts +0 -59
  372. package/examples/simple-http-server/contexts/http-server.context.types.ts +0 -0
  373. package/examples/simple-http-server/controllers/orders.controller.ts +0 -20
  374. package/examples/simple-http-server/controllers/users.controller.ts +0 -104
  375. package/examples/simple-http-server/test.ts +0 -290
  376. package/src/base/A-Config/A-Config.container.ts +0 -68
  377. package/src/base/A-Config/A-Config.context.ts +0 -114
  378. package/src/base/A-Config/A-Config.types.ts +0 -28
  379. package/src/base/A-Config/components/ConfigReader.component.ts +0 -68
  380. package/src/base/A-Config/components/ENVConfigReader.component.ts +0 -31
  381. package/src/base/A-Config/components/FileConfigReader.component.ts +0 -41
  382. package/src/base/A-Errors/A-Error.entity.ts +0 -10
  383. package/src/base/A-Errors/A-Errors.component.ts +0 -103
  384. package/src/base/A-Errors/A-Errors.context.ts +0 -90
  385. package/src/base/A-Errors/A-Errors.types.ts +0 -6
  386. package/src/base/A-Logger/A-Logger.component.ts +0 -192
  387. package/src/base/A-Logger/A-Logger.types.ts +0 -0
  388. package/src/base/A-Polyfill/A-Polyfill.component.ts +0 -18
  389. package/src/decorators/A-Abstraction/A-Abstraction-Extend.decorator.ts +0 -81
  390. package/src/decorators/A-Abstraction/A-Abstraction.decorator.types.ts +0 -21
  391. package/src/decorators/A-Connect/A-Connect.decorator.ts +0 -71
  392. package/src/decorators/A-Connect/A-Connect.decorator.types.ts +0 -6
  393. package/src/decorators/A-Entity/A-Entity-List.decorator.ts +0 -12
  394. package/src/decorators/A-Entity/A-Entity.decorator.types.ts +0 -18
  395. package/src/decorators/A-Feature/A-Feature-Extend.decorator.ts +0 -151
  396. package/src/decorators/A-Feature/A-Feature.decorator.types.ts +0 -142
  397. package/src/decorators/A-Inject/A-Inject.decorator.ts +0 -119
  398. package/src/decorators/A-Inject/A-Inject.decorator.types.ts +0 -85
  399. package/src/global/A-Channel/A-Channel.class.ts +0 -111
  400. package/src/global/A-Channel/A-Channel.types.ts +0 -114
  401. package/src/global/A-Command/A-Command.class.ts +0 -419
  402. package/src/global/A-Command/A-Command.constants.ts +0 -27
  403. package/src/global/A-Command/A-Command.meta.ts +0 -22
  404. package/src/global/A-Command/A-Command.types.ts +0 -73
  405. package/src/global/A-Command/context/A_Command.context.ts +0 -114
  406. package/src/global/A-Concept/A_Concept.class.ts +0 -298
  407. package/src/global/A-Concept/A_Concept.meta.ts +0 -32
  408. package/src/global/A-Concept/A_Concept.types.ts +0 -143
  409. package/src/global/A-Feature/A-FeatureCaller.class.ts +0 -38
  410. package/src/global/A-Scope/A-Scope.constants.ts +0 -9
  411. package/src/types/A_Module.types.ts +0 -23
  412. package/tests/A-Command.test.ts +0 -133
  413. package/tests/A-Config.test.ts +0 -172
  414. /package/dist/src/global/A-Concept/{A_Concept.meta.d.ts → A-Concept.meta.d.ts} +0 -0
  415. /package/dist/src/{base/A-Logger/A-Logger.types.d.ts → global/ASEID/ASEID.constants.d.ts} +0 -0
  416. /package/{examples/fe-be/concept.ts → src/global/ASEID/ASEID.constants.ts} +0 -0
@@ -10,13 +10,16 @@ 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_Feature_Define_decorator_1 = require("../../decorators/A-Feature/A-Feature-Define.decorator");
14
- const A_Feature_Extend_decorator_1 = require("../../decorators/A-Feature/A-Feature-Extend.decorator");
15
13
  const A_Feature_types_1 = require("./A-Feature.types");
16
- const a_utils_1 = require("@adaas/a-utils");
17
- const StepsManager_class_1 = require("../../helpers/StepsManager.class");
18
- const A_Stage_error_1 = require("../A-Stage/A-Stage.error");
19
- const A_FeatureCaller_class_1 = require("./A-FeatureCaller.class");
14
+ const A_Feature_Define_decorator_1 = require("./A-Feature-Define.decorator");
15
+ const A_Feature_Extend_decorator_1 = require("./A-Feature-Extend.decorator");
16
+ const A_StepsManager_class_1 = require("../../helpers/A_StepsManager.class");
17
+ const A_TypeGuards_helper_1 = require("../../helpers/A_TypeGuards.helper");
18
+ const A_Feature_error_1 = require("./A-Feature.error");
19
+ const A_Context_class_1 = require("../A-Context/A-Context.class");
20
+ const A_Caller_class_1 = require("../A-Caller/A_Caller.class");
21
+ const A_Scope_class_1 = require("../A-Scope/A-Scope.class");
22
+ const A_Component_class_1 = require("../A-Component/A-Component.class");
20
23
  /**
21
24
  * A_Feature is representing a feature that can be executed across multiple components
22
25
  * This class stores the steps of the feature and executes them in order of appearance
@@ -26,6 +29,9 @@ const A_FeatureCaller_class_1 = require("./A-FeatureCaller.class");
26
29
  *
27
30
  */
28
31
  class A_Feature {
32
+ // =============================================================================
33
+ // --------------------------- Static Methods ---------------------------------
34
+ // =============================================================================
29
35
  /**
30
36
  * Define a new A-Feature
31
37
  */
@@ -38,39 +44,88 @@ class A_Feature {
38
44
  static get Extend() {
39
45
  return A_Feature_Extend_decorator_1.A_Feature_Extend;
40
46
  }
41
- constructor(params) {
42
- // protected scope: A_Scope
43
- this.stages = [];
47
+ /**
48
+ * A-Feature is a pipeline distributed by multiple components that can be easily attached or detached from the scope.
49
+ * Feature itself does not have scope, but attached to the caller who dictates how feature should be processed.
50
+ *
51
+ * Comparing to A-Command Feature does not store any state except statuses for better analysis.
52
+ *
53
+ * [!] Note: If A-Feature should have result use A-Fragment
54
+ *
55
+ * @param params
56
+ */
57
+ constructor(
58
+ /**
59
+ * Feature Initialization parameters
60
+ */
61
+ params) {
62
+ /**
63
+ * List of stages that are part of this Feature
64
+ */
65
+ this._stages = [];
66
+ /**
67
+ * Actual Index of the current Stage being processed
68
+ */
44
69
  this._index = 0;
45
- this.state = A_Feature_types_1.A_TYPES__FeatureState.INITIALIZED;
46
- this.name = params.name || this.constructor.name;
47
- this.Scope = params.scope;
48
- this.SM = new StepsManager_class_1.StepsManager(params.steps);
49
- this.stages = this.SM.toStages(this);
50
- this._current = this.stages[0];
51
- this._caller = new A_FeatureCaller_class_1.A_FeatureCaller(params.caller);
70
+ /**
71
+ * The current state of the Feature
72
+ */
73
+ this._state = A_Feature_types_1.A_TYPES__FeatureState.INITIALIZED;
74
+ this.validateParams(params);
75
+ const initializer = this.getInitializer(params);
76
+ // the returned initializer is already bound to `this` (we used .bind(this)),
77
+ // so calling it will run the appropriate logic on this instance:
78
+ initializer.call(this, params);
52
79
  }
80
+ /**
81
+ * The name of the Feature
82
+ */
83
+ get name() { return this._name; }
84
+ /**
85
+ * The error that caused the Feature to be interrupted
86
+ */
87
+ get error() { return this._error; }
88
+ /**
89
+ * The current state of the Feature
90
+ */
91
+ get state() { return this._state; }
92
+ /**
93
+ * Sets the current state of the Feature
94
+ */
95
+ get index() { return this._index; }
53
96
  /**
54
97
  * Returns the current A-Feature Stage
98
+ */
99
+ get stage() { return this._current; }
100
+ /**
101
+ * The Caller that initiated the Feature call
102
+ */
103
+ get caller() { return this._caller; }
104
+ /**
105
+ * The Scope allocated for the Feature Execution
106
+ */
107
+ get scope() { return A_Context_class_1.A_Context.scope(this); }
108
+ /**
109
+ * This method checks if the A-Feature is done
55
110
  *
111
+ * @returns
56
112
  */
57
- get stage() {
58
- return this._current;
59
- }
60
- get Caller() {
61
- return this._caller;
113
+ get isDone() {
114
+ return !this.stage
115
+ || this._index >= this._stages.length
116
+ || this.state === A_Feature_types_1.A_TYPES__FeatureState.COMPLETED
117
+ || this.state === A_Feature_types_1.A_TYPES__FeatureState.INTERRUPTED;
62
118
  }
63
119
  /**
64
- * Custom iterator to iterate over the steps of the feature
120
+ * Iterator to iterate over the steps of the feature
65
121
  *
66
122
  * @returns
67
123
  */
68
124
  [Symbol.iterator]() {
69
125
  return {
70
- // Custom next method
71
126
  next: () => {
72
- if (!this.isDone()) {
73
- this._current = this.stages[this._index];
127
+ if (!this.isDone) {
128
+ this._current = this._stages[this._index];
74
129
  return {
75
130
  value: this._current,
76
131
  done: false
@@ -86,16 +141,116 @@ class A_Feature {
86
141
  }
87
142
  };
88
143
  }
144
+ // ============================================================================
145
+ // ------------------------ Initialization Methods ----------------------------
146
+ // ============================================================================
89
147
  /**
90
- * This method checks if the A-Feature is done
148
+ * Validates the provided parameters for A-Feature initialization
91
149
  *
150
+ * @param params
151
+ */
152
+ validateParams(params) {
153
+ if (!params || typeof params !== 'object') {
154
+ throw new A_Feature_error_1.A_FeatureError(A_Feature_error_1.A_FeatureError.FeatureInitializationError, `Invalid A-Feature initialization parameters of type: ${typeof params} with value: ${JSON.stringify(params).slice(0, 100)}...`);
155
+ }
156
+ }
157
+ /**
158
+ * Returns the appropriate initializer method based on the provided parameters
159
+ *
160
+ * @param params
92
161
  * @returns
93
162
  */
94
- isDone() {
95
- return !this.stage
96
- || this._index >= this.stages.length
97
- || this.state === A_Feature_types_1.A_TYPES__FeatureState.COMPLETED
98
- || this.state === A_Feature_types_1.A_TYPES__FeatureState.FAILED;
163
+ getInitializer(params) {
164
+ switch (true) {
165
+ case 'component' in params:
166
+ return this.fromComponent;
167
+ case 'template' in params:
168
+ return this.fromTemplate;
169
+ default:
170
+ throw new A_Feature_error_1.A_FeatureError(A_Feature_error_1.A_FeatureError.FeatureInitializationError, `Invalid A-Feature initialization parameters of type: ${typeof params} with value: ${JSON.stringify(params).slice(0, 100)}...`);
171
+ }
172
+ }
173
+ /**
174
+ * Initializes the A-Feature from the provided template
175
+ *
176
+ * @param params
177
+ */
178
+ fromTemplate(params) {
179
+ if (!params.template || !Array.isArray(params.template)) {
180
+ throw new A_Feature_error_1.A_FeatureError(A_Feature_error_1.A_FeatureError.FeatureInitializationError, `Invalid A-Feature template provided of type: ${typeof params.template} with value: ${JSON.stringify(params.template).slice(0, 100)}...`);
181
+ }
182
+ if (!params.scope || !(params.scope instanceof A_Scope_class_1.A_Scope)) {
183
+ throw new A_Feature_error_1.A_FeatureError(A_Feature_error_1.A_FeatureError.FeatureInitializationError, `Invalid A-Feature scope provided of type: ${typeof params.scope} with value: ${JSON.stringify(params.scope).slice(0, 100)}...`);
184
+ }
185
+ // 1) save feature name
186
+ this._name = params.name;
187
+ // 2) get scope from where feature is called
188
+ const componentScope = params.scope;
189
+ // 3) create caller wrapper for the simple injection of the caller component
190
+ // - Just to prevent issues with undefined caller in features without component
191
+ // - TODO: maybe would be better to allow passing caller in params?
192
+ this._caller = new A_Caller_class_1.A_Caller(new A_Component_class_1.A_Component());
193
+ // 4) allocate new scope for the feature
194
+ const scope = A_Context_class_1.A_Context.allocate(this);
195
+ // 5) ensure that the scope of the caller component is inherited by the feature scope
196
+ scope.inherit(componentScope);
197
+ // 6) create steps manager to organize steps into stages
198
+ this._SM = new A_StepsManager_class_1.A_StepsManager(params.template);
199
+ // 7) create stages from the steps
200
+ this._stages = this._SM.toStages(this);
201
+ // 8) set the first stage as current
202
+ this._current = this._stages[0];
203
+ }
204
+ /**
205
+ * Initializes the A-Feature from the provided component
206
+ *
207
+ * @param params
208
+ */
209
+ fromComponent(params) {
210
+ if (!params.component || !A_TypeGuards_helper_1.A_TypeGuards.isAllowedForFeatureDefinition(params.component)) {
211
+ throw new A_Feature_error_1.A_FeatureError(A_Feature_error_1.A_FeatureError.FeatureInitializationError, `Invalid A-Feature component provided of type: ${typeof params.component} with value: ${JSON.stringify(params.component).slice(0, 100)}...`);
212
+ }
213
+ // 1) save feature name
214
+ this._name = params.name;
215
+ // 2) get scope from where feature is called
216
+ const componentScope = A_Context_class_1.A_Context.scope(params.component);
217
+ // 3) create caller wrapper for the simple injection of the caller component
218
+ this._caller = new A_Caller_class_1.A_Caller(params.component);
219
+ // 4) allocate new scope for the feature
220
+ const scope = A_Context_class_1.A_Context.allocate(this);
221
+ // 5) ensure that the scope of the caller component is inherited by the feature scope
222
+ scope.inherit(componentScope);
223
+ // 6) retrieve the template from the context
224
+ const template = A_Context_class_1.A_Context.featureTemplate(this._name, this._caller.component, scope);
225
+ // 7) create steps manager to organize steps into stages
226
+ this._SM = new A_StepsManager_class_1.A_StepsManager(template);
227
+ // 8) create stages from the steps
228
+ this._stages = this._SM.toStages(this);
229
+ // 9) set the first stage as current
230
+ this._current = this._stages[0];
231
+ }
232
+ // ============================================================================
233
+ // ----------------------- Main Processing Methods ----------------------------
234
+ // ============================================================================
235
+ /**
236
+ * This method processes the feature by executing all the stages
237
+ *
238
+ */
239
+ process(
240
+ /**
241
+ * Optional scope to be used to resolve the steps dependencies
242
+ * If not provided, the scope of the caller component will be used
243
+ */
244
+ scope) {
245
+ return __awaiter(this, void 0, void 0, function* () {
246
+ if (this.isDone)
247
+ return;
248
+ this._state = A_Feature_types_1.A_TYPES__FeatureState.PROCESSING;
249
+ for (const stage of this._stages) {
250
+ yield stage.process(scope);
251
+ }
252
+ return yield this.completed();
253
+ });
99
254
  }
100
255
  /**
101
256
  * This method moves the feature to the next stage
@@ -103,9 +258,9 @@ class A_Feature {
103
258
  * @param stage
104
259
  */
105
260
  next(stage) {
106
- const stageIndex = this.stages.indexOf(stage);
261
+ const stageIndex = this._stages.indexOf(stage);
107
262
  this._index = stageIndex + 1;
108
- if (this._index >= this.stages.length) {
263
+ if (this._index >= this._stages.length) {
109
264
  this.completed();
110
265
  }
111
266
  }
@@ -113,16 +268,12 @@ class A_Feature {
113
268
  * This method marks the feature as completed and returns the result
114
269
  * Uses to interrupt or end the feature processing
115
270
  *
116
- * The result of the feature is a Scope Fragments
117
- *
118
271
  * @param result
119
272
  * @returns
120
273
  */
121
274
  completed() {
122
275
  return __awaiter(this, void 0, void 0, function* () {
123
- this.result = this.Scope.toJSON();
124
- this.state = A_Feature_types_1.A_TYPES__FeatureState.COMPLETED;
125
- return this.result;
276
+ this._state = A_Feature_types_1.A_TYPES__FeatureState.COMPLETED;
126
277
  });
127
278
  }
128
279
  /**
@@ -131,47 +282,28 @@ class A_Feature {
131
282
  *
132
283
  * @param error
133
284
  */
134
- failed(error) {
135
- return __awaiter(this, void 0, void 0, function* () {
136
- this.error = error;
137
- this.state = A_Feature_types_1.A_TYPES__FeatureState.FAILED;
138
- yield this.errorHandler(error);
139
- });
140
- }
285
+ interrupt(
141
286
  /**
142
- * This method processes the feature by executing all the stages
143
- *
287
+ * The reason of feature interruption
144
288
  */
145
- process(scope) {
146
- return __awaiter(this, void 0, void 0, function* () {
147
- // console.log('Processing feature:', this.name);
148
- if (this.isDone()) {
149
- return this.result;
150
- }
151
- try {
152
- this.state = A_Feature_types_1.A_TYPES__FeatureState.PROCESSING;
153
- for (const stage of this.stages) {
154
- // console.log('Processing stage:', stage.name);
155
- yield stage.process();
156
- // console.log('Stage processed:', stage.name, 'Status:', stage.status);
157
- }
158
- return yield this.completed();
159
- }
160
- catch (error) {
161
- return yield this.failed(error);
162
- }
163
- });
164
- }
165
- errorHandler(error) {
289
+ reason) {
166
290
  return __awaiter(this, void 0, void 0, function* () {
167
291
  switch (true) {
168
- case error instanceof A_Stage_error_1.A_StageError:
169
- return; // Do nothing, already handled in the stage
170
- case error instanceof a_utils_1.A_Error:
171
- throw error;
292
+ case A_TypeGuards_helper_1.A_TypeGuards.isString(reason):
293
+ this._error = new A_Feature_error_1.A_FeatureError(A_Feature_error_1.A_FeatureError.Interruption, reason);
294
+ break;
295
+ case A_TypeGuards_helper_1.A_TypeGuards.isErrorInstance(reason):
296
+ this._error = new A_Feature_error_1.A_FeatureError({
297
+ code: A_Feature_error_1.A_FeatureError.Interruption,
298
+ message: reason.message,
299
+ description: reason.description,
300
+ originalError: reason
301
+ });
302
+ break;
172
303
  default:
173
- throw error;
304
+ break;
174
305
  }
306
+ this._state = A_Feature_types_1.A_TYPES__FeatureState.INTERRUPTED;
175
307
  });
176
308
  }
177
309
  }
@@ -1 +1 @@
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
+ {"version":3,"file":"A-Feature.class.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.class.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { A_Error } from "../A-Error/A_Error.class";
2
+ export declare class A_FeatureError extends A_Error {
3
+ /**
4
+ * Indicates that the Feature has been interrupted
5
+ */
6
+ static readonly Interruption = "Feature Interrupted";
7
+ /**
8
+ * Indicates that there was an error initializing the Feature
9
+ *
10
+ * Failed during the A-Feature initialization process
11
+ */
12
+ static readonly FeatureInitializationError = "Unable to initialize A-Feature";
13
+ /**
14
+ * Indicates that there was an error defining the Feature
15
+ *
16
+ * Failed during the @A_Feature.Define() decorator execution
17
+ */
18
+ static readonly FeatureDefinitionError = "Unable to define A-Feature";
19
+ /**
20
+ * Indicates that there was an error extending the Feature
21
+ *
22
+ * Failed during the @A_Feature.Extend() decorator execution
23
+ */
24
+ static readonly FeatureExtensionError = "Unable to extend A-Feature";
25
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.A_FeatureError = void 0;
4
+ const A_Error_class_1 = require("../A-Error/A_Error.class");
5
+ class A_FeatureError extends A_Error_class_1.A_Error {
6
+ }
7
+ exports.A_FeatureError = A_FeatureError;
8
+ /**
9
+ * Indicates that the Feature has been interrupted
10
+ */
11
+ A_FeatureError.Interruption = 'Feature Interrupted';
12
+ /**
13
+ * Indicates that there was an error initializing the Feature
14
+ *
15
+ * Failed during the A-Feature initialization process
16
+ */
17
+ A_FeatureError.FeatureInitializationError = 'Unable to initialize A-Feature';
18
+ // =======================================================================
19
+ // ---------------------- Decorator Errors -----------------------------
20
+ // =======================================================================
21
+ /**
22
+ * Indicates that there was an error defining the Feature
23
+ *
24
+ * Failed during the @A_Feature.Define() decorator execution
25
+ */
26
+ A_FeatureError.FeatureDefinitionError = 'Unable to define A-Feature';
27
+ /**
28
+ * Indicates that there was an error extending the Feature
29
+ *
30
+ * Failed during the @A_Feature.Extend() decorator execution
31
+ */
32
+ A_FeatureError.FeatureExtensionError = 'Unable to extend A-Feature';
33
+ //# sourceMappingURL=A-Feature.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A-Feature.error.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.error.ts"],"names":[],"mappings":";;;AAAA,4DAAmD;AAInD,MAAa,cAAe,SAAQ,uBAAO;;AAA3C,wCA4BC;AA1BG;;GAEG;AACa,2BAAY,GAAG,qBAAqB,CAAC;AACrD;;;;GAIG;AACa,yCAA0B,GAAG,gCAAgC,CAAC;AAE9E,0EAA0E;AAC1E,wEAAwE;AACxE,0EAA0E;AAC1E;;;;GAIG;AACa,qCAAsB,GAAG,4BAA4B,CAAC;AACtE;;;;GAIG;AACa,oCAAqB,GAAG,4BAA4B,CAAC"}