@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
@@ -1,68 +0,0 @@
1
- import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
2
- import { ContextFragmentB } from "../context/Fragment_B.context";
3
- import { ContextFragmentA } from "../context/Fragment_A.context";
4
- import { A_Feature } from "@adaas/a-concept/global/A-Feature/A-Feature.class";
5
- import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class";
6
- import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
7
- import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
8
-
9
-
10
- export class ComponentB extends A_Component {
11
-
12
- constructor(
13
- @A_Inject(A_Logger) private logger: A_Logger
14
- ) {
15
- super();
16
- }
17
-
18
-
19
- @A_Concept.Load()
20
- @A_Feature.Extend()
21
- async load() {
22
- console.log('Component B -> load()');
23
- }
24
-
25
- @A_Concept.Load()
26
- async test(
27
- @A_Inject(A_Logger) logger: A_Logger
28
- ) {
29
- console.log('Component B -> test() TEST!!!!!!!!!!!!!!!');
30
- }
31
-
32
-
33
- @A_Feature.Extend()
34
- async method_B(
35
- @A_Inject(A_Logger) logger: A_Logger
36
- ) {
37
- logger.log('cyan', 'Component B -> method_B()');
38
- }
39
-
40
- @A_Feature.Extend({
41
- name: 'method_B'
42
- })
43
- async someMethod(
44
-
45
- ) {
46
- this.logger.log('pink', 'Component B -> method_B() -> someMethod()');
47
- this.logger.log('Component B -> method_B() -> someMethod()');
48
- }
49
-
50
-
51
- @A_Feature.Extend({
52
- name: 'method_B'
53
- })
54
- async someMethod2() {
55
- this.logger.log('yellow', 'Component B -> method_B() -> someMethod2()');
56
- }
57
-
58
- @A_Feature.Extend({
59
- name: 'method_A'
60
- })
61
- async someMethod3(
62
- @A_Inject(ContextFragmentB) context: ContextFragmentB,
63
- @A_Inject(ContextFragmentA) context2: ContextFragmentA
64
- ) {
65
- console.log('Component B -> method_A() -> someMethod3()');
66
- }
67
-
68
- }
@@ -1,87 +0,0 @@
1
- import { MainContainer } from "./containers/Main.container";
2
- import { ComponentA } from "./components/A.component";
3
- import { ComponentB } from "./components/B.component";
4
- import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
5
- import { ContextFragmentA } from "./context/Fragment_A.context";
6
- import { ContextFragmentB } from "./context/Fragment_B.context";
7
- import { A_Config } from "@adaas/a-concept/base/A-Config/A-Config.context";
8
- import { A_ConfigLoader } from "@adaas/a-concept/base/A-Config/A-Config.container";
9
- import { ENVConfigReader } from "@adaas/a-concept/base/A-Config/components/ENVConfigReader.component";
10
- import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
11
- import { SecondaryContainer } from "./containers/Secondary.container";
12
- import { EntityA } from "./entities/EntityA.entity";
13
-
14
- (async () => {
15
-
16
- const main = new MainContainer({
17
- name: 'MainContainer',
18
- components: [
19
- A_Logger,
20
- ComponentA,
21
- ComponentB
22
- ],
23
- fragments: [
24
- new ContextFragmentA(),
25
- new ContextFragmentB()
26
- ]
27
- })
28
-
29
- const second = new SecondaryContainer({
30
- name: 'SecondaryContainer',
31
- components: [
32
- A_Logger,
33
- ComponentA,
34
- ComponentB
35
- ],
36
- fragments: [
37
- new ContextFragmentA(),
38
- new ContextFragmentB()
39
- ]
40
- })
41
-
42
- const concept = new A_Concept({
43
- name: 'test-simple',
44
- fragments: [
45
- new A_Config({
46
- variables: ['CONFIG_VERBOSE'],
47
- defaults: {
48
- 'CONFIG_VERBOSE': true
49
- }
50
- })
51
- ],
52
- containers: [
53
- new A_ConfigLoader({
54
- components: [
55
- ENVConfigReader
56
- ]
57
- }),
58
- main,
59
- second
60
- ],
61
- entities: [
62
- new EntityA({ bar: 'bar' }),
63
- new EntityA({ bar: 'bar' }),
64
- new EntityA({ bar: 'barZ' }),
65
- ]
66
- });
67
-
68
- // await concept.load();
69
- // await concept.start();
70
-
71
-
72
- await main.method_A()
73
-
74
-
75
- // await main.method_C();
76
-
77
- try {
78
- await main.call('method_C')
79
- await second.call('method_C')
80
-
81
- } catch (error) {
82
- console.error('Error occurred:', error);
83
- }
84
-
85
-
86
-
87
- })();
@@ -1,88 +0,0 @@
1
- import { A_Container } from "@adaas/a-concept/global/A-Container/A-Container.class";
2
- import { A_Feature } from "@adaas/a-concept/global/A-Feature/A-Feature.class";
3
- import { ContextFragmentA } from "../context/Fragment_A.context";
4
- import { ContextFragmentB } from "../context/Fragment_B.context";
5
- import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
6
- import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
7
- import { A_Context } from "@adaas/a-concept/global/A-Context/A-Context.class";
8
- import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
9
- import { A_Scope } from "@adaas/a-concept/global/A-Scope/A-Scope.class";
10
- import { EntityA } from "../entities/EntityA.entity";
11
-
12
-
13
-
14
- export class MainContainer extends A_Container {
15
-
16
- @A_Concept.Load()
17
- async load(
18
- @A_Inject(A_Logger) logger: A_Logger
19
-
20
- ) {
21
- logger.log('Main container loaded');
22
- }
23
-
24
- @A_Concept.Start()
25
- async start(
26
- @A_Inject(A_Scope) scope: A_Scope,
27
- @A_Inject(A_Logger) logger: A_Logger
28
- ) {
29
- await this.call('method_A');
30
-
31
- // A_Context.feature(scope, this, 'method_A');
32
- }
33
-
34
-
35
-
36
- @A_Feature.Define()
37
- async method_A() {
38
- console.log('Method A');
39
- await this.call('method_A', new A_Scope({
40
- name: `method-A::${Date.now()}`,
41
- fragments: [
42
- new ContextFragmentA(),
43
- new ContextFragmentB()
44
- ]
45
- }));
46
- }
47
-
48
-
49
- @A_Feature.Define({
50
- invoke:false
51
- })
52
- async method_B(
53
- ) {
54
- console.log('Method B', A_Context.root.name);
55
-
56
- const entity = new EntityA('test@test:test:0000000001');
57
-
58
- this.Scope.register(entity);
59
-
60
- await entity.doSomething();
61
-
62
-
63
- const logger = this.Scope.resolve(A_Logger);
64
-
65
- // or you can manually call the feature
66
- const feature = A_Context.feature(this, 'method_B', new A_Scope({
67
- name: `method-B::${Date.now()}`,
68
- fragments: [new ContextFragmentA(), new ContextFragmentB()]
69
- }));
70
-
71
- for (const stage of feature) {
72
- logger.log('Manual Loop Execution Step', feature.stage);
73
-
74
- await stage.process();
75
- }
76
- }
77
-
78
-
79
-
80
- @A_Feature.Define()
81
- async method_C() {
82
-
83
- const logger = this.Scope.resolve(A_Logger);
84
-
85
- logger.log('Method C');
86
-
87
- }
88
- }
@@ -1,26 +0,0 @@
1
- import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
2
- import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
3
- import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
4
- import { A_Container } from "@adaas/a-concept/global/A-Container/A-Container.class";
5
- import { A_Scope } from "@adaas/a-concept/global/A-Scope/A-Scope.class";
6
-
7
-
8
-
9
- export class SecondaryContainer extends A_Container {
10
-
11
- @A_Concept.Load()
12
- async load(
13
- @A_Inject(A_Logger) logger: A_Logger
14
-
15
- ) {
16
- logger.log('Secondary container loaded');
17
- }
18
-
19
- @A_Concept.Start()
20
- async start(
21
- @A_Inject(A_Scope) scope: A_Scope,
22
- @A_Inject(A_Logger) logger: A_Logger
23
- ) {
24
- await this.call('method_C');
25
- }
26
- }
@@ -1,25 +0,0 @@
1
- import { A_Fragment } from "@adaas/a-concept/global/A-Fragment/A-Fragment.class";
2
-
3
-
4
-
5
-
6
- export class ContextFragmentA extends A_Fragment {
7
-
8
-
9
- variable: number = 0;
10
-
11
- constructor() {
12
- super();
13
- }
14
-
15
-
16
-
17
-
18
- decrement(): void {
19
- this.variable--;
20
-
21
- console.log('ContextFragmentA -> Variable decremented to: ', this.variable);
22
- }
23
- }
24
-
25
-
@@ -1,19 +0,0 @@
1
- import { A_Fragment } from "@adaas/a-concept/global/A-Fragment/A-Fragment.class";
2
-
3
-
4
- export class ContextFragmentB extends A_Fragment {
5
-
6
- variable: number = 0;
7
-
8
- constructor() {
9
- super();
10
- }
11
-
12
-
13
- increment(): void {
14
- this.variable++;
15
-
16
- console.log('ContextFragmentB -> Variable incremented to: ', this.variable);
17
- }
18
-
19
- }
@@ -1,32 +0,0 @@
1
- import { A_Entity } from "@adaas/a-concept/global/A-Entity/A-Entity.class";
2
- import { A_TYPES__EntityBaseMethods } from "@adaas/a-concept/global/A-Entity/A-Entity.types";
3
- import { ASEID } from "@adaas/a-utils";
4
- import { A_Feature } from "index";
5
-
6
-
7
-
8
- export class EntityA extends A_Entity {
9
-
10
-
11
- public bar: string = 'bar';
12
-
13
- get Foo(){
14
- return 'bar';
15
- }
16
-
17
- fromNew(newEntity: any): void {
18
-
19
- this.aseid = new ASEID({
20
- namespace: 'default',
21
- scope: 'default',
22
- entity: 'entity-a',
23
- id: Math.floor(Math.random() * 1000000000).toString(),
24
- })
25
- this.bar = newEntity.bar;
26
- }
27
-
28
- @A_Feature.Define()
29
- async doSomething() {
30
- await this.call('doSomething');
31
- }
32
- }
@@ -1,47 +0,0 @@
1
- import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
2
- import { HTTPRequest } from "../contexts/http-request.context";
3
- import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
4
- import { HttpServer } from "../containers/http-server.container";
5
- import { A_Feature } from "@adaas/a-concept/global/A-Feature/A-Feature.class";
6
- import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class";
7
-
8
-
9
- export class HTTPErrorHandler extends A_Component {
10
-
11
- constructor(
12
- @A_Inject(A_Logger) private logger: A_Logger
13
- ) {
14
- super();
15
- }
16
-
17
-
18
-
19
- @A_Feature.Extend({
20
- name: 'onRequest',
21
- scope: [HttpServer]
22
- })
23
- async onErrorPage(
24
- @A_Inject(HTTPRequest) request: HTTPRequest,
25
- @A_Inject(A_Feature) feature: A_Feature
26
- ) {
27
- this.logger.log('HTTP Error Handler -> onErrorPage()');
28
-
29
- await feature.completed();
30
-
31
- if (request.state !== 'end' && request.request.url === '/error')
32
- request.end('Error Page');
33
-
34
- }
35
-
36
-
37
-
38
- @A_Feature.Extend()
39
- async onRequest(
40
- @A_Inject(HTTPRequest) request: HTTPRequest
41
- ) {
42
- this.logger.log('HTTP Error Handler -> onRequest()');
43
-
44
- if (request.state !== 'end')
45
- request.end('Error');
46
- }
47
- }
@@ -1,13 +0,0 @@
1
- import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class";
2
- import { A_Feature } from "index";
3
-
4
- export class HTTPRequestHandler extends A_Component {
5
-
6
-
7
-
8
- @A_Feature.Extend()
9
- onRequest() {
10
- console.log('HTTPRequestHandler -> onRequest()');
11
- }
12
-
13
- }
@@ -1,35 +0,0 @@
1
- import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
2
- import { HttpServer } from "./containers/http-server.container";
3
- import { A_Config } from "@adaas/a-concept/base/A-Config/A-Config.context";
4
- import { HTTPErrorHandler } from "./components/http-error-handler.component";
5
- import { HTTPRequestHandler } from "./components/http-request-handler.component";
6
-
7
-
8
- (async () => {
9
- const simpleConcept = new A_Concept({
10
- name: 'test-server',
11
-
12
- containers: [
13
- new HttpServer({
14
- components: [
15
- HTTPErrorHandler,
16
- HTTPRequestHandler
17
- ]
18
- })
19
- ],
20
- fragments: [
21
- new A_Config({
22
- variables: ['PORT'],
23
- defaults: {
24
- PORT: 3030,
25
- }
26
- })
27
- ],
28
- })
29
-
30
-
31
- await simpleConcept.load();
32
-
33
- await simpleConcept.start();
34
-
35
- })();
@@ -1,57 +0,0 @@
1
- import { A_Container } from "@adaas/a-concept/global/A-Container/A-Container.class";
2
- import { createServer, IncomingMessage, Server, ServerResponse } from "http";
3
- import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
4
- import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
5
- import { A_Config } from "@adaas/a-concept/base/A-Config/A-Config.context";
6
- import { A_Feature } from "@adaas/a-concept/global/A-Feature/A-Feature.class";
7
- import { HTTPRequest } from "../contexts/http-request.context";
8
- import { A_Scope } from "@adaas/a-concept/global/A-Scope/A-Scope.class";
9
-
10
-
11
-
12
-
13
-
14
- export class HttpServer extends A_Container {
15
-
16
- server!: Server
17
- port!: number
18
-
19
-
20
- @A_Concept.Load()
21
- async create(
22
- @A_Inject(A_Config) config: A_Config<'PORT'>
23
- ) {
24
- // Set the server to listen on port 3000
25
- this.port = config.get('PORT') || 3000;
26
-
27
- // Create the HTTP server
28
- this.server = createServer(this.onRequest.bind(this));
29
- }
30
-
31
- @A_Concept.Start()
32
- async run() {
33
- this.server.listen(this.port, () => {
34
- console.log(`Server is running on http://localhost:${this.port}`);
35
- });
36
- }
37
-
38
-
39
- @A_Feature.Define({
40
- invoke: false
41
- })
42
- async onRequest(
43
- req: IncomingMessage,
44
- res: ServerResponse
45
- ) {
46
- return await this.call('onRequest', new A_Scope({
47
- name: `http-request::${Date.now()}`,
48
- fragments: [
49
- new HTTPRequest(req, res)
50
- ]
51
- }));
52
- }
53
-
54
-
55
- @A_Concept.Stop()
56
- async stop() { }
57
- }
@@ -1,59 +0,0 @@
1
- import { A_Fragment } from "@adaas/a-concept/global/A-Fragment/A-Fragment.class";
2
- import { IncomingMessage, ServerResponse } from "http";
3
-
4
-
5
-
6
-
7
- export class HTTPRequest extends A_Fragment {
8
-
9
-
10
- public request: IncomingMessage
11
- public response: ServerResponse
12
-
13
- private _body: any
14
-
15
- state: 'open' | 'end' = 'open'
16
-
17
-
18
- constructor(
19
- request: IncomingMessage,
20
- response: ServerResponse
21
- ) {
22
-
23
- super();
24
-
25
- this.request = request;
26
- this.response = response;
27
- }
28
-
29
-
30
- protected async onInit(): Promise<void> {
31
- this.response.statusCode = 200;
32
- this.response.setHeader('Content-Type', 'text/plain');
33
- }
34
-
35
-
36
- // async toJSON<T extends any>(): Promise<T> {
37
- // if (!this._body) {
38
- // this._body = await this.parseBody();
39
- // }
40
-
41
- // return this._body;
42
- // }
43
-
44
- private parseBody(): Promise<any> {
45
- return new Promise((resolve, reject) => {
46
- let body = '';
47
- this.request.on('data', chunk => body += chunk.toString());
48
- this.request.on('end', () => resolve(JSON.parse(body)));
49
- this.request.on('error', reject);
50
- });
51
- }
52
-
53
-
54
- async end(body: string): Promise<void> {
55
- this.state = 'end';
56
- this.response.end(body);
57
- }
58
-
59
- }
@@ -1,20 +0,0 @@
1
-
2
- // declare module "../modules/simple-http-server.types" {
3
- // interface SimpleHTTPServerModuleControllers {
4
- // Orders: OrderController
5
- // }
6
- // }
7
-
8
- import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class"
9
-
10
- export class OrderController extends A_Component {
11
-
12
- async makeSome1() {
13
- console.log('Making some request')
14
- }
15
-
16
- async makeSome2() {
17
- console.log('Making some request')
18
- }
19
-
20
- }
@@ -1,104 +0,0 @@
1
- // import { A_Load } from "@adaas/a-concept/decorators/A-ConceptLifecycle/A-Load/A-Load.decorator"
2
- // import { A_Module } from "@adaas/a-concept/global/A_Module.class"
3
- // import { SimpleHTTPServerModule } from "../modules/simple-http-server.module"
4
- // import { IncomingMessage, ServerResponse } from "http"
5
- // import { SimpleHTTPServerContext } from "../modules/simple-http-server.context"
6
- // import { A_Dependency } from "@adaas/a-concept/decorators/A-Dependency/A-Dependency.decorator"
7
- // import { A_Run } from "@adaas/a-concept/decorators/A-ConceptLifecycle/A-Run/A-Run.decorator"
8
- // import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator"
9
- // import { OrderController } from "./orders.controller"
10
-
11
- // declare module "../modules/simple-http-server.types" {
12
- // interface SimpleHTTPServerModuleControllers {
13
- // Users: UserController
14
- // }
15
- // }
16
-
17
- // declare module "../modules/simple-http-server.context" {
18
- // interface SimpleHTTPServerContext {
19
- // users: Array<any>
20
- // }
21
- // }
22
-
23
-
24
-
25
- // // @A_Dependency({
26
- // // name: 'users-controller',
27
- // // version: '0.0.1',
28
- // // dependencies: [
29
- // // SimpleHTTPServerModule
30
- // // ]
31
- // // })
32
- // export class UserController extends A_Module {
33
-
34
-
35
- // private SomeModule = A_Inject(OrderController)
36
-
37
-
38
- // @A_Load(
39
- // // after: [SimpleHTTPServerModule]
40
- // )
41
- // async defineListeners(
42
- // ) {
43
-
44
- // /**
45
- // * Approach with Dependency Manager allows to resolve the module and context in the method
46
- // */
47
- // const simpleHTTPServerModule1 = await this.DM.resolve(SimpleHTTPServerModule);
48
- // const context1 = await this.DM.resolve(SimpleHTTPServerContext);
49
- // /**
50
- // * OR
51
- // *
52
- // * It's possible to resolve multiple dependencies at once
53
- // */
54
- // const [
55
- // simpleHTTPServerModule2,
56
- // context
57
- // ] = await this.DM.resolve([
58
- // SimpleHTTPServerModule,
59
- // SimpleHTTPServerContext
60
- // ]);
61
-
62
- // // simpleHTTPServerModule.create();
63
- // context.users = [
64
- // { id: 1, name: 'John Doe' },
65
- // { id: 2, name: 'Jane Doe' }
66
- // ];
67
- // }
68
-
69
-
70
-
71
- // @A_Load()
72
- // /**
73
- // *
74
- // * Approach with direct injection allows to use the module directly in the method
75
- // * However, this approach is not recommended as it makes the code less readable and testable
76
- // * In the example below Injection changes the original method signature that may impact the readability/testability of the code
77
- // *
78
- // */
79
- // async run(
80
- // @A_Inject(SimpleHTTPServerModule) simpleHTTPServerModule: SimpleHTTPServerModule
81
- // ) {
82
- // // simpleHTTPServerModule.create();
83
- // }
84
-
85
-
86
- // async getUser(
87
- // req: IncomingMessage,
88
- // res: ServerResponse,
89
- // id: number
90
- // ) {
91
-
92
- // const context = new SimpleHTTPServerContext()
93
-
94
-
95
- // const user = context.users.find(u => u.id === id);
96
- // if (user) {
97
- // res.writeHead(200);
98
- // res.end(JSON.stringify(user));
99
- // } else {
100
- // res.writeHead(404);
101
- // res.end(JSON.stringify({ message: 'User not found' }));
102
- // }
103
- // }
104
- // }