@adaas/a-utils 0.2.8 → 0.2.9

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 (801) hide show
  1. package/.conf/tsconfig.base.json +91 -0
  2. package/.conf/tsconfig.browser.json +26 -0
  3. package/.conf/tsconfig.node.json +30 -0
  4. package/dist/browser/A-Logger.component-Be-LMV3I.d.mts +467 -0
  5. package/dist/browser/A-StateMachineTransition.context-BINjcsgq.d.mts +221 -0
  6. package/dist/browser/a-channel.d.mts +456 -0
  7. package/dist/browser/a-channel.mjs +367 -0
  8. package/dist/browser/a-channel.mjs.map +1 -0
  9. package/dist/browser/a-command.d.mts +555 -0
  10. package/dist/browser/a-command.mjs +567 -0
  11. package/dist/browser/a-command.mjs.map +1 -0
  12. package/dist/browser/a-config.d.mts +60 -0
  13. package/dist/browser/a-config.mjs +6 -0
  14. package/dist/browser/a-config.mjs.map +1 -0
  15. package/dist/browser/a-execution.d.mts +17 -0
  16. package/dist/browser/a-execution.mjs +4 -0
  17. package/dist/browser/a-execution.mjs.map +1 -0
  18. package/dist/browser/a-logger.d.mts +107 -0
  19. package/dist/browser/a-logger.mjs +7 -0
  20. package/dist/browser/a-logger.mjs.map +1 -0
  21. package/dist/browser/a-manifest.d.mts +111 -0
  22. package/dist/browser/a-manifest.mjs +176 -0
  23. package/dist/browser/a-manifest.mjs.map +1 -0
  24. package/dist/browser/a-memory.d.mts +163 -0
  25. package/dist/browser/a-memory.mjs +375 -0
  26. package/dist/browser/a-memory.mjs.map +1 -0
  27. package/dist/browser/a-operation.d.mts +52 -0
  28. package/dist/browser/a-operation.mjs +5 -0
  29. package/dist/browser/a-operation.mjs.map +1 -0
  30. package/dist/browser/a-polyfill.d.mts +275 -0
  31. package/dist/browser/a-polyfill.mjs +4 -0
  32. package/dist/browser/a-polyfill.mjs.map +1 -0
  33. package/dist/browser/a-route.d.mts +25 -0
  34. package/dist/browser/a-route.mjs +98 -0
  35. package/dist/browser/a-route.mjs.map +1 -0
  36. package/dist/browser/a-schedule.d.mts +111 -0
  37. package/dist/browser/a-schedule.mjs +97 -0
  38. package/dist/browser/a-schedule.mjs.map +1 -0
  39. package/dist/browser/a-service.d.mts +40 -0
  40. package/dist/browser/a-service.mjs +197 -0
  41. package/dist/browser/a-service.mjs.map +1 -0
  42. package/dist/browser/a-signal.d.mts +402 -0
  43. package/dist/browser/a-signal.mjs +588 -0
  44. package/dist/browser/a-signal.mjs.map +1 -0
  45. package/dist/browser/a-state-machine.d.mts +11 -0
  46. package/dist/browser/a-state-machine.mjs +6 -0
  47. package/dist/browser/a-state-machine.mjs.map +1 -0
  48. package/dist/browser/chunk-72ANHWNG.mjs +48 -0
  49. package/dist/browser/chunk-72ANHWNG.mjs.map +1 -0
  50. package/dist/browser/chunk-ECSGFDRQ.mjs +264 -0
  51. package/dist/browser/chunk-ECSGFDRQ.mjs.map +1 -0
  52. package/dist/browser/chunk-EQQGB2QZ.mjs +15 -0
  53. package/dist/browser/chunk-EQQGB2QZ.mjs.map +1 -0
  54. package/dist/browser/chunk-HWSDIXPG.mjs +776 -0
  55. package/dist/browser/chunk-HWSDIXPG.mjs.map +1 -0
  56. package/dist/browser/chunk-J6CLHXFQ.mjs +679 -0
  57. package/dist/browser/chunk-J6CLHXFQ.mjs.map +1 -0
  58. package/dist/browser/chunk-JTQYATZ5.mjs +679 -0
  59. package/dist/browser/chunk-JTQYATZ5.mjs.map +1 -0
  60. package/dist/browser/chunk-NLPSQYIQ.mjs +149 -0
  61. package/dist/browser/chunk-NLPSQYIQ.mjs.map +1 -0
  62. package/dist/browser/chunk-RLXT47QH.mjs +264 -0
  63. package/dist/browser/chunk-RLXT47QH.mjs.map +1 -0
  64. package/dist/browser/chunk-TK5UEYMZ.mjs +776 -0
  65. package/dist/browser/chunk-TK5UEYMZ.mjs.map +1 -0
  66. package/dist/browser/chunk-TQ5UON22.mjs +56 -0
  67. package/dist/browser/chunk-TQ5UON22.mjs.map +1 -0
  68. package/dist/node/A-Command.entity-24rvXQLC.d.mts +409 -0
  69. package/dist/node/A-Command.entity-ISgSk8wB.d.ts +409 -0
  70. package/dist/node/A-Manifest.context-D2uynD9t.d.mts +66 -0
  71. package/dist/node/A-Manifest.context-rZnvR17w.d.ts +66 -0
  72. package/dist/node/A-Signal.types-P5VKMKMs.d.mts +114 -0
  73. package/dist/node/A-Signal.types-P5VKMKMs.d.ts +114 -0
  74. package/dist/node/chunk-EQQGB2QZ.mjs +15 -0
  75. package/dist/node/chunk-EQQGB2QZ.mjs.map +1 -0
  76. package/dist/node/constants/errors.constants.d.mts +2 -0
  77. package/dist/node/constants/errors.constants.d.ts +2 -0
  78. package/dist/node/constants/errors.constants.js +4 -0
  79. package/dist/node/constants/errors.constants.js.map +1 -0
  80. package/dist/node/constants/errors.constants.mjs +3 -0
  81. package/dist/node/constants/errors.constants.mjs.map +1 -0
  82. package/dist/node/lib/A-Channel/A-Channel.component.d.mts +365 -0
  83. package/dist/node/lib/A-Channel/A-Channel.component.d.ts +365 -0
  84. package/dist/node/lib/A-Channel/A-Channel.component.js +303 -0
  85. package/dist/node/lib/A-Channel/A-Channel.component.js.map +1 -0
  86. package/dist/node/lib/A-Channel/A-Channel.component.mjs +294 -0
  87. package/dist/node/lib/A-Channel/A-Channel.component.mjs.map +1 -0
  88. package/dist/node/lib/A-Channel/A-Channel.constants.d.mts +68 -0
  89. package/dist/node/lib/A-Channel/A-Channel.constants.d.ts +68 -0
  90. package/dist/node/lib/A-Channel/A-Channel.constants.js +28 -0
  91. package/dist/node/lib/A-Channel/A-Channel.constants.js.map +1 -0
  92. package/dist/node/lib/A-Channel/A-Channel.constants.mjs +27 -0
  93. package/dist/node/lib/A-Channel/A-Channel.constants.mjs.map +1 -0
  94. package/dist/node/lib/A-Channel/A-Channel.error.d.mts +23 -0
  95. package/dist/node/lib/A-Channel/A-Channel.error.d.ts +23 -0
  96. package/dist/node/lib/A-Channel/A-Channel.error.js +36 -0
  97. package/dist/node/lib/A-Channel/A-Channel.error.js.map +1 -0
  98. package/dist/node/lib/A-Channel/A-Channel.error.mjs +35 -0
  99. package/dist/node/lib/A-Channel/A-Channel.error.mjs.map +1 -0
  100. package/dist/node/lib/A-Channel/A-Channel.types.d.mts +2 -0
  101. package/dist/node/lib/A-Channel/A-Channel.types.d.ts +2 -0
  102. package/dist/node/lib/A-Channel/A-Channel.types.js +4 -0
  103. package/dist/node/lib/A-Channel/A-Channel.types.js.map +1 -0
  104. package/dist/node/lib/A-Channel/A-Channel.types.mjs +3 -0
  105. package/dist/node/lib/A-Channel/A-Channel.types.mjs.map +1 -0
  106. package/dist/node/lib/A-Channel/A-ChannelRequest.context.d.mts +17 -0
  107. package/dist/node/lib/A-Channel/A-ChannelRequest.context.d.ts +17 -0
  108. package/dist/node/lib/A-Channel/A-ChannelRequest.context.js +41 -0
  109. package/dist/node/lib/A-Channel/A-ChannelRequest.context.js.map +1 -0
  110. package/dist/node/lib/A-Channel/A-ChannelRequest.context.mjs +34 -0
  111. package/dist/node/lib/A-Channel/A-ChannelRequest.context.mjs.map +1 -0
  112. package/dist/node/lib/A-Channel/index.d.mts +8 -0
  113. package/dist/node/lib/A-Channel/index.d.ts +8 -0
  114. package/dist/node/lib/A-Channel/index.js +36 -0
  115. package/dist/node/lib/A-Channel/index.js.map +1 -0
  116. package/dist/node/lib/A-Channel/index.mjs +8 -0
  117. package/dist/node/lib/A-Channel/index.mjs.map +1 -0
  118. package/dist/node/lib/A-Command/A-Command.constants.d.mts +139 -0
  119. package/dist/node/lib/A-Command/A-Command.constants.d.ts +139 -0
  120. package/dist/node/lib/A-Command/A-Command.constants.js +45 -0
  121. package/dist/node/lib/A-Command/A-Command.constants.js.map +1 -0
  122. package/dist/node/lib/A-Command/A-Command.constants.mjs +42 -0
  123. package/dist/node/lib/A-Command/A-Command.constants.mjs.map +1 -0
  124. package/dist/node/lib/A-Command/A-Command.entity.d.mts +16 -0
  125. package/dist/node/lib/A-Command/A-Command.entity.d.ts +16 -0
  126. package/dist/node/lib/A-Command/A-Command.entity.js +530 -0
  127. package/dist/node/lib/A-Command/A-Command.entity.js.map +1 -0
  128. package/dist/node/lib/A-Command/A-Command.entity.mjs +520 -0
  129. package/dist/node/lib/A-Command/A-Command.entity.mjs.map +1 -0
  130. package/dist/node/lib/A-Command/A-Command.error.d.mts +13 -0
  131. package/dist/node/lib/A-Command/A-Command.error.d.ts +13 -0
  132. package/dist/node/lib/A-Command/A-Command.error.js +17 -0
  133. package/dist/node/lib/A-Command/A-Command.error.js.map +1 -0
  134. package/dist/node/lib/A-Command/A-Command.error.mjs +16 -0
  135. package/dist/node/lib/A-Command/A-Command.error.mjs.map +1 -0
  136. package/dist/node/lib/A-Command/A-Command.types.d.mts +16 -0
  137. package/dist/node/lib/A-Command/A-Command.types.d.ts +16 -0
  138. package/dist/node/lib/A-Command/A-Command.types.js +4 -0
  139. package/dist/node/lib/A-Command/A-Command.types.js.map +1 -0
  140. package/dist/node/lib/A-Command/A-Command.types.mjs +3 -0
  141. package/dist/node/lib/A-Command/A-Command.types.mjs.map +1 -0
  142. package/dist/node/lib/A-Command/index.d.mts +17 -0
  143. package/dist/node/lib/A-Command/index.d.ts +17 -0
  144. package/dist/node/lib/A-Command/index.js +31 -0
  145. package/dist/node/lib/A-Command/index.js.map +1 -0
  146. package/dist/node/lib/A-Command/index.mjs +7 -0
  147. package/dist/node/lib/A-Command/index.mjs.map +1 -0
  148. package/dist/node/lib/A-Config/A-Config.constants.d.mts +5 -0
  149. package/dist/node/lib/A-Config/A-Config.constants.d.ts +5 -0
  150. package/dist/node/lib/A-Config/A-Config.constants.js +9 -0
  151. package/dist/node/lib/A-Config/A-Config.constants.js.map +1 -0
  152. package/dist/node/lib/A-Config/A-Config.constants.mjs +8 -0
  153. package/dist/node/lib/A-Config/A-Config.constants.mjs.map +1 -0
  154. package/dist/node/lib/A-Config/A-Config.container.d.mts +33 -0
  155. package/dist/node/lib/A-Config/A-Config.container.d.ts +33 -0
  156. package/dist/node/lib/A-Config/A-Config.container.js +78 -0
  157. package/dist/node/lib/A-Config/A-Config.container.js.map +1 -0
  158. package/dist/node/lib/A-Config/A-Config.container.mjs +68 -0
  159. package/dist/node/lib/A-Config/A-Config.container.mjs.map +1 -0
  160. package/dist/node/lib/A-Config/A-Config.context.d.mts +42 -0
  161. package/dist/node/lib/A-Config/A-Config.context.d.ts +42 -0
  162. package/dist/node/lib/A-Config/A-Config.context.js +65 -0
  163. package/dist/node/lib/A-Config/A-Config.context.js.map +1 -0
  164. package/dist/node/lib/A-Config/A-Config.context.mjs +58 -0
  165. package/dist/node/lib/A-Config/A-Config.context.mjs.map +1 -0
  166. package/dist/node/lib/A-Config/A-Config.error.d.mts +7 -0
  167. package/dist/node/lib/A-Config/A-Config.error.d.ts +7 -0
  168. package/dist/node/lib/A-Config/A-Config.error.js +11 -0
  169. package/dist/node/lib/A-Config/A-Config.error.js.map +1 -0
  170. package/dist/node/lib/A-Config/A-Config.error.mjs +10 -0
  171. package/dist/node/lib/A-Config/A-Config.error.mjs.map +1 -0
  172. package/dist/node/lib/A-Config/A-Config.types.d.mts +22 -0
  173. package/dist/node/lib/A-Config/A-Config.types.d.ts +22 -0
  174. package/dist/node/lib/A-Config/A-Config.types.js +9 -0
  175. package/dist/node/lib/A-Config/A-Config.types.js.map +1 -0
  176. package/dist/node/lib/A-Config/A-Config.types.mjs +9 -0
  177. package/dist/node/lib/A-Config/A-Config.types.mjs.map +1 -0
  178. package/dist/node/lib/A-Config/components/ConfigReader.component.d.mts +50 -0
  179. package/dist/node/lib/A-Config/components/ConfigReader.component.d.ts +50 -0
  180. package/dist/node/lib/A-Config/components/ConfigReader.component.js +81 -0
  181. package/dist/node/lib/A-Config/components/ConfigReader.component.js.map +1 -0
  182. package/dist/node/lib/A-Config/components/ConfigReader.component.mjs +71 -0
  183. package/dist/node/lib/A-Config/components/ConfigReader.component.mjs.map +1 -0
  184. package/dist/node/lib/A-Config/components/ENVConfigReader.component.d.mts +40 -0
  185. package/dist/node/lib/A-Config/components/ENVConfigReader.component.d.ts +40 -0
  186. package/dist/node/lib/A-Config/components/ENVConfigReader.component.js +69 -0
  187. package/dist/node/lib/A-Config/components/ENVConfigReader.component.js.map +1 -0
  188. package/dist/node/lib/A-Config/components/ENVConfigReader.component.mjs +59 -0
  189. package/dist/node/lib/A-Config/components/ENVConfigReader.component.mjs.map +1 -0
  190. package/dist/node/lib/A-Config/components/FileConfigReader.component.d.mts +40 -0
  191. package/dist/node/lib/A-Config/components/FileConfigReader.component.d.ts +40 -0
  192. package/dist/node/lib/A-Config/components/FileConfigReader.component.js +50 -0
  193. package/dist/node/lib/A-Config/components/FileConfigReader.component.js.map +1 -0
  194. package/dist/node/lib/A-Config/components/FileConfigReader.component.mjs +43 -0
  195. package/dist/node/lib/A-Config/components/FileConfigReader.component.mjs.map +1 -0
  196. package/dist/node/lib/A-Config/index.d.mts +31 -0
  197. package/dist/node/lib/A-Config/index.d.ts +31 -0
  198. package/dist/node/lib/A-Config/index.js +51 -0
  199. package/dist/node/lib/A-Config/index.js.map +1 -0
  200. package/dist/node/lib/A-Config/index.mjs +11 -0
  201. package/dist/node/lib/A-Config/index.mjs.map +1 -0
  202. package/dist/node/lib/A-Execution/A-Execution.context.d.mts +17 -0
  203. package/dist/node/lib/A-Execution/A-Execution.context.d.ts +17 -0
  204. package/dist/node/lib/A-Execution/A-Execution.context.js +63 -0
  205. package/dist/node/lib/A-Execution/A-Execution.context.js.map +1 -0
  206. package/dist/node/lib/A-Execution/A-Execution.context.mjs +56 -0
  207. package/dist/node/lib/A-Execution/A-Execution.context.mjs.map +1 -0
  208. package/dist/node/lib/A-Execution/A-Execution.types.d.mts +2 -0
  209. package/dist/node/lib/A-Execution/A-Execution.types.d.ts +2 -0
  210. package/dist/node/lib/A-Execution/A-Execution.types.js +4 -0
  211. package/dist/node/lib/A-Execution/A-Execution.types.js.map +1 -0
  212. package/dist/node/lib/A-Execution/A-Execution.types.mjs +3 -0
  213. package/dist/node/lib/A-Execution/A-Execution.types.mjs.map +1 -0
  214. package/dist/node/lib/A-Execution/index.d.mts +2 -0
  215. package/dist/node/lib/A-Execution/index.d.ts +2 -0
  216. package/dist/node/lib/A-Execution/index.js +12 -0
  217. package/dist/node/lib/A-Execution/index.js.map +1 -0
  218. package/dist/node/lib/A-Execution/index.mjs +4 -0
  219. package/dist/node/lib/A-Execution/index.mjs.map +1 -0
  220. package/dist/node/lib/A-Logger/A-Logger.component.d.mts +377 -0
  221. package/dist/node/lib/A-Logger/A-Logger.component.d.ts +377 -0
  222. package/dist/node/lib/A-Logger/A-Logger.component.js +623 -0
  223. package/dist/node/lib/A-Logger/A-Logger.component.js.map +1 -0
  224. package/dist/node/lib/A-Logger/A-Logger.component.mjs +615 -0
  225. package/dist/node/lib/A-Logger/A-Logger.component.mjs.map +1 -0
  226. package/dist/node/lib/A-Logger/A-Logger.constants.d.mts +103 -0
  227. package/dist/node/lib/A-Logger/A-Logger.constants.d.ts +103 -0
  228. package/dist/node/lib/A-Logger/A-Logger.constants.js +141 -0
  229. package/dist/node/lib/A-Logger/A-Logger.constants.js.map +1 -0
  230. package/dist/node/lib/A-Logger/A-Logger.constants.mjs +133 -0
  231. package/dist/node/lib/A-Logger/A-Logger.constants.mjs.map +1 -0
  232. package/dist/node/lib/A-Logger/A-Logger.env.d.mts +30 -0
  233. package/dist/node/lib/A-Logger/A-Logger.env.d.ts +30 -0
  234. package/dist/node/lib/A-Logger/A-Logger.env.js +39 -0
  235. package/dist/node/lib/A-Logger/A-Logger.env.js.map +1 -0
  236. package/dist/node/lib/A-Logger/A-Logger.env.mjs +38 -0
  237. package/dist/node/lib/A-Logger/A-Logger.env.mjs.map +1 -0
  238. package/dist/node/lib/A-Logger/A-Logger.types.d.mts +8 -0
  239. package/dist/node/lib/A-Logger/A-Logger.types.d.ts +8 -0
  240. package/dist/node/lib/A-Logger/A-Logger.types.js +4 -0
  241. package/dist/node/lib/A-Logger/A-Logger.types.js.map +1 -0
  242. package/dist/node/lib/A-Logger/A-Logger.types.mjs +3 -0
  243. package/dist/node/lib/A-Logger/A-Logger.types.mjs.map +1 -0
  244. package/dist/node/lib/A-Logger/index.d.mts +9 -0
  245. package/dist/node/lib/A-Logger/index.d.ts +9 -0
  246. package/dist/node/lib/A-Logger/index.js +35 -0
  247. package/dist/node/lib/A-Logger/index.js.map +1 -0
  248. package/dist/node/lib/A-Logger/index.mjs +6 -0
  249. package/dist/node/lib/A-Logger/index.mjs.map +1 -0
  250. package/dist/node/lib/A-Manifest/A-Manifest.context.d.mts +3 -0
  251. package/dist/node/lib/A-Manifest/A-Manifest.context.d.ts +3 -0
  252. package/dist/node/lib/A-Manifest/A-Manifest.context.js +164 -0
  253. package/dist/node/lib/A-Manifest/A-Manifest.context.js.map +1 -0
  254. package/dist/node/lib/A-Manifest/A-Manifest.context.mjs +157 -0
  255. package/dist/node/lib/A-Manifest/A-Manifest.context.mjs.map +1 -0
  256. package/dist/node/lib/A-Manifest/A-Manifest.error.d.mts +7 -0
  257. package/dist/node/lib/A-Manifest/A-Manifest.error.d.ts +7 -0
  258. package/dist/node/lib/A-Manifest/A-Manifest.error.js +11 -0
  259. package/dist/node/lib/A-Manifest/A-Manifest.error.js.map +1 -0
  260. package/dist/node/lib/A-Manifest/A-Manifest.error.mjs +10 -0
  261. package/dist/node/lib/A-Manifest/A-Manifest.error.mjs.map +1 -0
  262. package/dist/node/lib/A-Manifest/A-Manifest.types.d.mts +45 -0
  263. package/dist/node/lib/A-Manifest/A-Manifest.types.d.ts +45 -0
  264. package/dist/node/lib/A-Manifest/A-Manifest.types.js +4 -0
  265. package/dist/node/lib/A-Manifest/A-Manifest.types.js.map +1 -0
  266. package/dist/node/lib/A-Manifest/A-Manifest.types.mjs +3 -0
  267. package/dist/node/lib/A-Manifest/A-Manifest.types.mjs.map +1 -0
  268. package/dist/node/lib/A-Manifest/classes/A-ManifestChecker.class.d.mts +3 -0
  269. package/dist/node/lib/A-Manifest/classes/A-ManifestChecker.class.d.ts +3 -0
  270. package/dist/node/lib/A-Manifest/classes/A-ManifestChecker.class.js +22 -0
  271. package/dist/node/lib/A-Manifest/classes/A-ManifestChecker.class.js.map +1 -0
  272. package/dist/node/lib/A-Manifest/classes/A-ManifestChecker.class.mjs +22 -0
  273. package/dist/node/lib/A-Manifest/classes/A-ManifestChecker.class.mjs.map +1 -0
  274. package/dist/node/lib/A-Manifest/index.d.mts +4 -0
  275. package/dist/node/lib/A-Manifest/index.d.ts +4 -0
  276. package/dist/node/lib/A-Manifest/index.js +29 -0
  277. package/dist/node/lib/A-Manifest/index.js.map +1 -0
  278. package/dist/node/lib/A-Manifest/index.mjs +7 -0
  279. package/dist/node/lib/A-Manifest/index.mjs.map +1 -0
  280. package/dist/node/lib/A-Memory/A-Memory.component.d.mts +86 -0
  281. package/dist/node/lib/A-Memory/A-Memory.component.d.ts +86 -0
  282. package/dist/node/lib/A-Memory/A-Memory.component.js +335 -0
  283. package/dist/node/lib/A-Memory/A-Memory.component.js.map +1 -0
  284. package/dist/node/lib/A-Memory/A-Memory.component.mjs +325 -0
  285. package/dist/node/lib/A-Memory/A-Memory.component.mjs.map +1 -0
  286. package/dist/node/lib/A-Memory/A-Memory.constants.d.mts +44 -0
  287. package/dist/node/lib/A-Memory/A-Memory.constants.d.ts +44 -0
  288. package/dist/node/lib/A-Memory/A-Memory.constants.js +19 -0
  289. package/dist/node/lib/A-Memory/A-Memory.constants.js.map +1 -0
  290. package/dist/node/lib/A-Memory/A-Memory.constants.mjs +19 -0
  291. package/dist/node/lib/A-Memory/A-Memory.constants.mjs.map +1 -0
  292. package/dist/node/lib/A-Memory/A-Memory.context.d.mts +12 -0
  293. package/dist/node/lib/A-Memory/A-Memory.context.d.ts +12 -0
  294. package/dist/node/lib/A-Memory/A-Memory.context.js +43 -0
  295. package/dist/node/lib/A-Memory/A-Memory.context.js.map +1 -0
  296. package/dist/node/lib/A-Memory/A-Memory.context.mjs +36 -0
  297. package/dist/node/lib/A-Memory/A-Memory.context.mjs.map +1 -0
  298. package/dist/node/lib/A-Memory/A-Memory.error.d.mts +14 -0
  299. package/dist/node/lib/A-Memory/A-Memory.error.d.ts +14 -0
  300. package/dist/node/lib/A-Memory/A-Memory.error.js +18 -0
  301. package/dist/node/lib/A-Memory/A-Memory.error.js.map +1 -0
  302. package/dist/node/lib/A-Memory/A-Memory.error.mjs +17 -0
  303. package/dist/node/lib/A-Memory/A-Memory.error.mjs.map +1 -0
  304. package/dist/node/lib/A-Memory/A-Memory.types.d.mts +24 -0
  305. package/dist/node/lib/A-Memory/A-Memory.types.d.ts +24 -0
  306. package/dist/node/lib/A-Memory/A-Memory.types.js +4 -0
  307. package/dist/node/lib/A-Memory/A-Memory.types.js.map +1 -0
  308. package/dist/node/lib/A-Memory/A-Memory.types.mjs +3 -0
  309. package/dist/node/lib/A-Memory/A-Memory.types.mjs.map +1 -0
  310. package/dist/node/lib/A-Memory/index.d.mts +9 -0
  311. package/dist/node/lib/A-Memory/index.d.ts +9 -0
  312. package/dist/node/lib/A-Memory/index.js +36 -0
  313. package/dist/node/lib/A-Memory/index.js.map +1 -0
  314. package/dist/node/lib/A-Memory/index.mjs +8 -0
  315. package/dist/node/lib/A-Memory/index.mjs.map +1 -0
  316. package/dist/node/lib/A-Operation/A-Operation.context.d.mts +16 -0
  317. package/dist/node/lib/A-Operation/A-Operation.context.d.ts +16 -0
  318. package/dist/node/lib/A-Operation/A-Operation.context.js +55 -0
  319. package/dist/node/lib/A-Operation/A-Operation.context.js.map +1 -0
  320. package/dist/node/lib/A-Operation/A-Operation.context.mjs +48 -0
  321. package/dist/node/lib/A-Operation/A-Operation.context.mjs.map +1 -0
  322. package/dist/node/lib/A-Operation/A-Operation.types.d.mts +40 -0
  323. package/dist/node/lib/A-Operation/A-Operation.types.d.ts +40 -0
  324. package/dist/node/lib/A-Operation/A-Operation.types.js +4 -0
  325. package/dist/node/lib/A-Operation/A-Operation.types.js.map +1 -0
  326. package/dist/node/lib/A-Operation/A-Operation.types.mjs +3 -0
  327. package/dist/node/lib/A-Operation/A-Operation.types.mjs.map +1 -0
  328. package/dist/node/lib/A-Operation/index.d.mts +4 -0
  329. package/dist/node/lib/A-Operation/index.d.ts +4 -0
  330. package/dist/node/lib/A-Operation/index.js +19 -0
  331. package/dist/node/lib/A-Operation/index.js.map +1 -0
  332. package/dist/node/lib/A-Operation/index.mjs +5 -0
  333. package/dist/node/lib/A-Operation/index.mjs.map +1 -0
  334. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-browser.d.mts +108 -0
  335. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-browser.d.ts +108 -0
  336. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-browser.js +163 -0
  337. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-browser.js.map +1 -0
  338. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-browser.mjs +153 -0
  339. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-browser.mjs.map +1 -0
  340. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-node.d.mts +108 -0
  341. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-node.d.ts +108 -0
  342. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-node.js +160 -0
  343. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-node.js.map +1 -0
  344. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-node.mjs +150 -0
  345. package/dist/node/lib/A-Polyfill/A-Polyfill.component.env-node.mjs.map +1 -0
  346. package/dist/node/lib/A-Polyfill/A-Polyfill.types.d.mts +59 -0
  347. package/dist/node/lib/A-Polyfill/A-Polyfill.types.d.ts +59 -0
  348. package/dist/node/lib/A-Polyfill/A-Polyfill.types.js +4 -0
  349. package/dist/node/lib/A-Polyfill/A-Polyfill.types.js.map +1 -0
  350. package/dist/node/lib/A-Polyfill/A-Polyfill.types.mjs +3 -0
  351. package/dist/node/lib/A-Polyfill/A-Polyfill.types.mjs.map +1 -0
  352. package/dist/node/lib/A-Polyfill/base/A-Buffer-Polyfill.base.d.mts +22 -0
  353. package/dist/node/lib/A-Polyfill/base/A-Buffer-Polyfill.base.d.ts +22 -0
  354. package/dist/node/lib/A-Polyfill/base/A-Buffer-Polyfill.base.js +30 -0
  355. package/dist/node/lib/A-Polyfill/base/A-Buffer-Polyfill.base.js.map +1 -0
  356. package/dist/node/lib/A-Polyfill/base/A-Buffer-Polyfill.base.mjs +30 -0
  357. package/dist/node/lib/A-Polyfill/base/A-Buffer-Polyfill.base.mjs.map +1 -0
  358. package/dist/node/lib/A-Polyfill/base/A-Crypto-Polyfill.base.d.mts +23 -0
  359. package/dist/node/lib/A-Polyfill/base/A-Crypto-Polyfill.base.d.ts +23 -0
  360. package/dist/node/lib/A-Polyfill/base/A-Crypto-Polyfill.base.js +31 -0
  361. package/dist/node/lib/A-Polyfill/base/A-Crypto-Polyfill.base.js.map +1 -0
  362. package/dist/node/lib/A-Polyfill/base/A-Crypto-Polyfill.base.mjs +31 -0
  363. package/dist/node/lib/A-Polyfill/base/A-Crypto-Polyfill.base.mjs.map +1 -0
  364. package/dist/node/lib/A-Polyfill/base/A-FS-Polyfill.base.d.mts +22 -0
  365. package/dist/node/lib/A-Polyfill/base/A-FS-Polyfill.base.d.ts +22 -0
  366. package/dist/node/lib/A-Polyfill/base/A-FS-Polyfill.base.js +30 -0
  367. package/dist/node/lib/A-Polyfill/base/A-FS-Polyfill.base.js.map +1 -0
  368. package/dist/node/lib/A-Polyfill/base/A-FS-Polyfill.base.mjs +30 -0
  369. package/dist/node/lib/A-Polyfill/base/A-FS-Polyfill.base.mjs.map +1 -0
  370. package/dist/node/lib/A-Polyfill/base/A-Http-Polyfill.base.d.mts +22 -0
  371. package/dist/node/lib/A-Polyfill/base/A-Http-Polyfill.base.d.ts +22 -0
  372. package/dist/node/lib/A-Polyfill/base/A-Http-Polyfill.base.js +30 -0
  373. package/dist/node/lib/A-Polyfill/base/A-Http-Polyfill.base.js.map +1 -0
  374. package/dist/node/lib/A-Polyfill/base/A-Http-Polyfill.base.mjs +30 -0
  375. package/dist/node/lib/A-Polyfill/base/A-Http-Polyfill.base.mjs.map +1 -0
  376. package/dist/node/lib/A-Polyfill/base/A-Https-Polyfill.base.d.mts +22 -0
  377. package/dist/node/lib/A-Polyfill/base/A-Https-Polyfill.base.d.ts +22 -0
  378. package/dist/node/lib/A-Polyfill/base/A-Https-Polyfill.base.js +30 -0
  379. package/dist/node/lib/A-Polyfill/base/A-Https-Polyfill.base.js.map +1 -0
  380. package/dist/node/lib/A-Polyfill/base/A-Https-Polyfill.base.mjs +30 -0
  381. package/dist/node/lib/A-Polyfill/base/A-Https-Polyfill.base.mjs.map +1 -0
  382. package/dist/node/lib/A-Polyfill/base/A-Path-Polyfill.base.d.mts +22 -0
  383. package/dist/node/lib/A-Polyfill/base/A-Path-Polyfill.base.d.ts +22 -0
  384. package/dist/node/lib/A-Polyfill/base/A-Path-Polyfill.base.js +30 -0
  385. package/dist/node/lib/A-Polyfill/base/A-Path-Polyfill.base.js.map +1 -0
  386. package/dist/node/lib/A-Polyfill/base/A-Path-Polyfill.base.mjs +30 -0
  387. package/dist/node/lib/A-Polyfill/base/A-Path-Polyfill.base.mjs.map +1 -0
  388. package/dist/node/lib/A-Polyfill/base/A-Process-Polyfill.base.d.mts +22 -0
  389. package/dist/node/lib/A-Polyfill/base/A-Process-Polyfill.base.d.ts +22 -0
  390. package/dist/node/lib/A-Polyfill/base/A-Process-Polyfill.base.js +30 -0
  391. package/dist/node/lib/A-Polyfill/base/A-Process-Polyfill.base.js.map +1 -0
  392. package/dist/node/lib/A-Polyfill/base/A-Process-Polyfill.base.mjs +30 -0
  393. package/dist/node/lib/A-Polyfill/base/A-Process-Polyfill.base.mjs.map +1 -0
  394. package/dist/node/lib/A-Polyfill/base/A-Url-Polyfill.base.d.mts +22 -0
  395. package/dist/node/lib/A-Polyfill/base/A-Url-Polyfill.base.d.ts +22 -0
  396. package/dist/node/lib/A-Polyfill/base/A-Url-Polyfill.base.js +30 -0
  397. package/dist/node/lib/A-Polyfill/base/A-Url-Polyfill.base.js.map +1 -0
  398. package/dist/node/lib/A-Polyfill/base/A-Url-Polyfill.base.mjs +30 -0
  399. package/dist/node/lib/A-Polyfill/base/A-Url-Polyfill.base.mjs.map +1 -0
  400. package/dist/node/lib/A-Polyfill/base/index.d.mts +17 -0
  401. package/dist/node/lib/A-Polyfill/base/index.d.ts +17 -0
  402. package/dist/node/lib/A-Polyfill/base/index.js +47 -0
  403. package/dist/node/lib/A-Polyfill/base/index.js.map +1 -0
  404. package/dist/node/lib/A-Polyfill/base/index.mjs +11 -0
  405. package/dist/node/lib/A-Polyfill/base/index.mjs.map +1 -0
  406. package/dist/node/lib/A-Polyfill/browser/A-Buffer-Polyfill.d.mts +17 -0
  407. package/dist/node/lib/A-Polyfill/browser/A-Buffer-Polyfill.d.ts +17 -0
  408. package/dist/node/lib/A-Polyfill/browser/A-Buffer-Polyfill.js +46 -0
  409. package/dist/node/lib/A-Polyfill/browser/A-Buffer-Polyfill.js.map +1 -0
  410. package/dist/node/lib/A-Polyfill/browser/A-Buffer-Polyfill.mjs +45 -0
  411. package/dist/node/lib/A-Polyfill/browser/A-Buffer-Polyfill.mjs.map +1 -0
  412. package/dist/node/lib/A-Polyfill/browser/A-Crypto-Polyfill.d.mts +17 -0
  413. package/dist/node/lib/A-Polyfill/browser/A-Crypto-Polyfill.d.ts +17 -0
  414. package/dist/node/lib/A-Polyfill/browser/A-Crypto-Polyfill.js +36 -0
  415. package/dist/node/lib/A-Polyfill/browser/A-Crypto-Polyfill.js.map +1 -0
  416. package/dist/node/lib/A-Polyfill/browser/A-Crypto-Polyfill.mjs +35 -0
  417. package/dist/node/lib/A-Polyfill/browser/A-Crypto-Polyfill.mjs.map +1 -0
  418. package/dist/node/lib/A-Polyfill/browser/A-FS-Polyfill.d.mts +17 -0
  419. package/dist/node/lib/A-Polyfill/browser/A-FS-Polyfill.d.ts +17 -0
  420. package/dist/node/lib/A-Polyfill/browser/A-FS-Polyfill.js +29 -0
  421. package/dist/node/lib/A-Polyfill/browser/A-FS-Polyfill.js.map +1 -0
  422. package/dist/node/lib/A-Polyfill/browser/A-FS-Polyfill.mjs +28 -0
  423. package/dist/node/lib/A-Polyfill/browser/A-FS-Polyfill.mjs.map +1 -0
  424. package/dist/node/lib/A-Polyfill/browser/A-Http-Polyfill.d.mts +18 -0
  425. package/dist/node/lib/A-Polyfill/browser/A-Http-Polyfill.d.ts +18 -0
  426. package/dist/node/lib/A-Polyfill/browser/A-Http-Polyfill.js +58 -0
  427. package/dist/node/lib/A-Polyfill/browser/A-Http-Polyfill.js.map +1 -0
  428. package/dist/node/lib/A-Polyfill/browser/A-Http-Polyfill.mjs +57 -0
  429. package/dist/node/lib/A-Polyfill/browser/A-Http-Polyfill.mjs.map +1 -0
  430. package/dist/node/lib/A-Polyfill/browser/A-Https-Polyfill.d.mts +18 -0
  431. package/dist/node/lib/A-Polyfill/browser/A-Https-Polyfill.d.ts +18 -0
  432. package/dist/node/lib/A-Polyfill/browser/A-Https-Polyfill.js +58 -0
  433. package/dist/node/lib/A-Polyfill/browser/A-Https-Polyfill.js.map +1 -0
  434. package/dist/node/lib/A-Polyfill/browser/A-Https-Polyfill.mjs +57 -0
  435. package/dist/node/lib/A-Polyfill/browser/A-Https-Polyfill.mjs.map +1 -0
  436. package/dist/node/lib/A-Polyfill/browser/A-Path-Polyfill.d.mts +17 -0
  437. package/dist/node/lib/A-Polyfill/browser/A-Path-Polyfill.d.ts +17 -0
  438. package/dist/node/lib/A-Polyfill/browser/A-Path-Polyfill.js +64 -0
  439. package/dist/node/lib/A-Polyfill/browser/A-Path-Polyfill.js.map +1 -0
  440. package/dist/node/lib/A-Polyfill/browser/A-Path-Polyfill.mjs +63 -0
  441. package/dist/node/lib/A-Polyfill/browser/A-Path-Polyfill.mjs.map +1 -0
  442. package/dist/node/lib/A-Polyfill/browser/A-Process-Polyfill.d.mts +17 -0
  443. package/dist/node/lib/A-Polyfill/browser/A-Process-Polyfill.d.ts +17 -0
  444. package/dist/node/lib/A-Polyfill/browser/A-Process-Polyfill.js +33 -0
  445. package/dist/node/lib/A-Polyfill/browser/A-Process-Polyfill.js.map +1 -0
  446. package/dist/node/lib/A-Polyfill/browser/A-Process-Polyfill.mjs +32 -0
  447. package/dist/node/lib/A-Polyfill/browser/A-Process-Polyfill.mjs.map +1 -0
  448. package/dist/node/lib/A-Polyfill/browser/A-Url-Polyfill.d.mts +17 -0
  449. package/dist/node/lib/A-Polyfill/browser/A-Url-Polyfill.d.ts +17 -0
  450. package/dist/node/lib/A-Polyfill/browser/A-Url-Polyfill.js +50 -0
  451. package/dist/node/lib/A-Polyfill/browser/A-Url-Polyfill.js.map +1 -0
  452. package/dist/node/lib/A-Polyfill/browser/A-Url-Polyfill.mjs +49 -0
  453. package/dist/node/lib/A-Polyfill/browser/A-Url-Polyfill.mjs.map +1 -0
  454. package/dist/node/lib/A-Polyfill/browser/index.d.mts +23 -0
  455. package/dist/node/lib/A-Polyfill/browser/index.d.ts +23 -0
  456. package/dist/node/lib/A-Polyfill/browser/index.js +56 -0
  457. package/dist/node/lib/A-Polyfill/browser/index.js.map +1 -0
  458. package/dist/node/lib/A-Polyfill/browser/index.mjs +9 -0
  459. package/dist/node/lib/A-Polyfill/browser/index.mjs.map +1 -0
  460. package/dist/node/lib/A-Polyfill/index.browser.d.mts +26 -0
  461. package/dist/node/lib/A-Polyfill/index.browser.d.ts +26 -0
  462. package/dist/node/lib/A-Polyfill/index.browser.js +33 -0
  463. package/dist/node/lib/A-Polyfill/index.browser.js.map +1 -0
  464. package/dist/node/lib/A-Polyfill/index.browser.mjs +7 -0
  465. package/dist/node/lib/A-Polyfill/index.browser.mjs.map +1 -0
  466. package/dist/node/lib/A-Polyfill/index.node.d.mts +26 -0
  467. package/dist/node/lib/A-Polyfill/index.node.d.ts +26 -0
  468. package/dist/node/lib/A-Polyfill/index.node.js +33 -0
  469. package/dist/node/lib/A-Polyfill/index.node.js.map +1 -0
  470. package/dist/node/lib/A-Polyfill/index.node.mjs +7 -0
  471. package/dist/node/lib/A-Polyfill/index.node.mjs.map +1 -0
  472. package/dist/node/lib/A-Polyfill/node/A-Buffer-Polyfill.d.mts +17 -0
  473. package/dist/node/lib/A-Polyfill/node/A-Buffer-Polyfill.d.ts +17 -0
  474. package/dist/node/lib/A-Polyfill/node/A-Buffer-Polyfill.js +27 -0
  475. package/dist/node/lib/A-Polyfill/node/A-Buffer-Polyfill.js.map +1 -0
  476. package/dist/node/lib/A-Polyfill/node/A-Buffer-Polyfill.mjs +22 -0
  477. package/dist/node/lib/A-Polyfill/node/A-Buffer-Polyfill.mjs.map +1 -0
  478. package/dist/node/lib/A-Polyfill/node/A-Crypto-Polyfill.d.mts +17 -0
  479. package/dist/node/lib/A-Polyfill/node/A-Crypto-Polyfill.d.ts +17 -0
  480. package/dist/node/lib/A-Polyfill/node/A-Crypto-Polyfill.js +39 -0
  481. package/dist/node/lib/A-Polyfill/node/A-Crypto-Polyfill.js.map +1 -0
  482. package/dist/node/lib/A-Polyfill/node/A-Crypto-Polyfill.mjs +34 -0
  483. package/dist/node/lib/A-Polyfill/node/A-Crypto-Polyfill.mjs.map +1 -0
  484. package/dist/node/lib/A-Polyfill/node/A-FS-Polyfill.d.mts +17 -0
  485. package/dist/node/lib/A-Polyfill/node/A-FS-Polyfill.d.ts +17 -0
  486. package/dist/node/lib/A-Polyfill/node/A-FS-Polyfill.js +21 -0
  487. package/dist/node/lib/A-Polyfill/node/A-FS-Polyfill.js.map +1 -0
  488. package/dist/node/lib/A-Polyfill/node/A-FS-Polyfill.mjs +16 -0
  489. package/dist/node/lib/A-Polyfill/node/A-FS-Polyfill.mjs.map +1 -0
  490. package/dist/node/lib/A-Polyfill/node/A-Http-Polyfill.d.mts +17 -0
  491. package/dist/node/lib/A-Polyfill/node/A-Http-Polyfill.d.ts +17 -0
  492. package/dist/node/lib/A-Polyfill/node/A-Http-Polyfill.js +25 -0
  493. package/dist/node/lib/A-Polyfill/node/A-Http-Polyfill.js.map +1 -0
  494. package/dist/node/lib/A-Polyfill/node/A-Http-Polyfill.mjs +20 -0
  495. package/dist/node/lib/A-Polyfill/node/A-Http-Polyfill.mjs.map +1 -0
  496. package/dist/node/lib/A-Polyfill/node/A-Https-Polyfill.d.mts +17 -0
  497. package/dist/node/lib/A-Polyfill/node/A-Https-Polyfill.d.ts +17 -0
  498. package/dist/node/lib/A-Polyfill/node/A-Https-Polyfill.js +25 -0
  499. package/dist/node/lib/A-Polyfill/node/A-Https-Polyfill.js.map +1 -0
  500. package/dist/node/lib/A-Polyfill/node/A-Https-Polyfill.mjs +20 -0
  501. package/dist/node/lib/A-Polyfill/node/A-Https-Polyfill.mjs.map +1 -0
  502. package/dist/node/lib/A-Polyfill/node/A-Path-Polyfill.d.mts +17 -0
  503. package/dist/node/lib/A-Polyfill/node/A-Path-Polyfill.d.ts +17 -0
  504. package/dist/node/lib/A-Polyfill/node/A-Path-Polyfill.js +34 -0
  505. package/dist/node/lib/A-Polyfill/node/A-Path-Polyfill.js.map +1 -0
  506. package/dist/node/lib/A-Polyfill/node/A-Path-Polyfill.mjs +29 -0
  507. package/dist/node/lib/A-Polyfill/node/A-Path-Polyfill.mjs.map +1 -0
  508. package/dist/node/lib/A-Polyfill/node/A-Process-Polyfill.d.mts +17 -0
  509. package/dist/node/lib/A-Polyfill/node/A-Process-Polyfill.d.ts +17 -0
  510. package/dist/node/lib/A-Polyfill/node/A-Process-Polyfill.js +25 -0
  511. package/dist/node/lib/A-Polyfill/node/A-Process-Polyfill.js.map +1 -0
  512. package/dist/node/lib/A-Polyfill/node/A-Process-Polyfill.mjs +24 -0
  513. package/dist/node/lib/A-Polyfill/node/A-Process-Polyfill.mjs.map +1 -0
  514. package/dist/node/lib/A-Polyfill/node/A-Url-Polyfill.d.mts +17 -0
  515. package/dist/node/lib/A-Polyfill/node/A-Url-Polyfill.d.ts +17 -0
  516. package/dist/node/lib/A-Polyfill/node/A-Url-Polyfill.js +27 -0
  517. package/dist/node/lib/A-Polyfill/node/A-Url-Polyfill.js.map +1 -0
  518. package/dist/node/lib/A-Polyfill/node/A-Url-Polyfill.mjs +22 -0
  519. package/dist/node/lib/A-Polyfill/node/A-Url-Polyfill.mjs.map +1 -0
  520. package/dist/node/lib/A-Polyfill/node/index.d.mts +23 -0
  521. package/dist/node/lib/A-Polyfill/node/index.d.ts +23 -0
  522. package/dist/node/lib/A-Polyfill/node/index.js +56 -0
  523. package/dist/node/lib/A-Polyfill/node/index.js.map +1 -0
  524. package/dist/node/lib/A-Polyfill/node/index.mjs +9 -0
  525. package/dist/node/lib/A-Polyfill/node/index.mjs.map +1 -0
  526. package/dist/node/lib/A-Route/A-Route.entity.d.mts +25 -0
  527. package/dist/node/lib/A-Route/A-Route.entity.d.ts +25 -0
  528. package/dist/node/lib/A-Route/A-Route.entity.js +105 -0
  529. package/dist/node/lib/A-Route/A-Route.entity.js.map +1 -0
  530. package/dist/node/lib/A-Route/A-Route.entity.mjs +98 -0
  531. package/dist/node/lib/A-Route/A-Route.entity.mjs.map +1 -0
  532. package/dist/node/lib/A-Route/A-Route.types.d.mts +2 -0
  533. package/dist/node/lib/A-Route/A-Route.types.d.ts +2 -0
  534. package/dist/node/lib/A-Route/A-Route.types.js +4 -0
  535. package/dist/node/lib/A-Route/A-Route.types.js.map +1 -0
  536. package/dist/node/lib/A-Route/A-Route.types.mjs +3 -0
  537. package/dist/node/lib/A-Route/A-Route.types.mjs.map +1 -0
  538. package/dist/node/lib/A-Route/index.d.mts +2 -0
  539. package/dist/node/lib/A-Route/index.d.ts +2 -0
  540. package/dist/node/lib/A-Route/index.js +12 -0
  541. package/dist/node/lib/A-Route/index.js.map +1 -0
  542. package/dist/node/lib/A-Route/index.mjs +4 -0
  543. package/dist/node/lib/A-Route/index.mjs.map +1 -0
  544. package/dist/node/lib/A-Schedule/A-Deferred.class.d.mts +14 -0
  545. package/dist/node/lib/A-Schedule/A-Deferred.class.d.ts +14 -0
  546. package/dist/node/lib/A-Schedule/A-Deferred.class.js +24 -0
  547. package/dist/node/lib/A-Schedule/A-Deferred.class.js.map +1 -0
  548. package/dist/node/lib/A-Schedule/A-Deferred.class.mjs +24 -0
  549. package/dist/node/lib/A-Schedule/A-Deferred.class.mjs.map +1 -0
  550. package/dist/node/lib/A-Schedule/A-Schedule.component.d.mts +60 -0
  551. package/dist/node/lib/A-Schedule/A-Schedule.component.d.ts +60 -0
  552. package/dist/node/lib/A-Schedule/A-Schedule.component.js +46 -0
  553. package/dist/node/lib/A-Schedule/A-Schedule.component.js.map +1 -0
  554. package/dist/node/lib/A-Schedule/A-Schedule.component.mjs +39 -0
  555. package/dist/node/lib/A-Schedule/A-Schedule.component.mjs.map +1 -0
  556. package/dist/node/lib/A-Schedule/A-Schedule.types.d.mts +12 -0
  557. package/dist/node/lib/A-Schedule/A-Schedule.types.d.ts +12 -0
  558. package/dist/node/lib/A-Schedule/A-Schedule.types.js +4 -0
  559. package/dist/node/lib/A-Schedule/A-Schedule.types.js.map +1 -0
  560. package/dist/node/lib/A-Schedule/A-Schedule.types.mjs +3 -0
  561. package/dist/node/lib/A-Schedule/A-Schedule.types.mjs.map +1 -0
  562. package/dist/node/lib/A-Schedule/A-ScheduleObject.class.d.mts +32 -0
  563. package/dist/node/lib/A-Schedule/A-ScheduleObject.class.d.ts +32 -0
  564. package/dist/node/lib/A-Schedule/A-ScheduleObject.class.js +49 -0
  565. package/dist/node/lib/A-Schedule/A-ScheduleObject.class.js.map +1 -0
  566. package/dist/node/lib/A-Schedule/A-ScheduleObject.class.mjs +48 -0
  567. package/dist/node/lib/A-Schedule/A-ScheduleObject.class.mjs.map +1 -0
  568. package/dist/node/lib/A-Schedule/index.d.mts +5 -0
  569. package/dist/node/lib/A-Schedule/index.d.ts +5 -0
  570. package/dist/node/lib/A-Schedule/index.js +29 -0
  571. package/dist/node/lib/A-Schedule/index.js.map +1 -0
  572. package/dist/node/lib/A-Schedule/index.mjs +7 -0
  573. package/dist/node/lib/A-Schedule/index.mjs.map +1 -0
  574. package/dist/node/lib/A-Service/A-Service.constants.d.mts +14 -0
  575. package/dist/node/lib/A-Service/A-Service.constants.d.ts +14 -0
  576. package/dist/node/lib/A-Service/A-Service.constants.js +19 -0
  577. package/dist/node/lib/A-Service/A-Service.constants.js.map +1 -0
  578. package/dist/node/lib/A-Service/A-Service.constants.mjs +19 -0
  579. package/dist/node/lib/A-Service/A-Service.constants.mjs.map +1 -0
  580. package/dist/node/lib/A-Service/A-Service.container.d.mts +50 -0
  581. package/dist/node/lib/A-Service/A-Service.container.d.ts +50 -0
  582. package/dist/node/lib/A-Service/A-Service.container.js +188 -0
  583. package/dist/node/lib/A-Service/A-Service.container.js.map +1 -0
  584. package/dist/node/lib/A-Service/A-Service.container.mjs +178 -0
  585. package/dist/node/lib/A-Service/A-Service.container.mjs.map +1 -0
  586. package/dist/node/lib/A-Service/A-Service.error.d.mts +9 -0
  587. package/dist/node/lib/A-Service/A-Service.error.d.ts +9 -0
  588. package/dist/node/lib/A-Service/A-Service.error.js +13 -0
  589. package/dist/node/lib/A-Service/A-Service.error.js.map +1 -0
  590. package/dist/node/lib/A-Service/A-Service.error.mjs +12 -0
  591. package/dist/node/lib/A-Service/A-Service.error.mjs.map +1 -0
  592. package/dist/node/lib/A-Service/A-Service.types.d.mts +27 -0
  593. package/dist/node/lib/A-Service/A-Service.types.d.ts +27 -0
  594. package/dist/node/lib/A-Service/A-Service.types.js +16 -0
  595. package/dist/node/lib/A-Service/A-Service.types.js.map +1 -0
  596. package/dist/node/lib/A-Service/A-Service.types.mjs +16 -0
  597. package/dist/node/lib/A-Service/A-Service.types.mjs.map +1 -0
  598. package/dist/node/lib/A-Service/index.d.mts +28 -0
  599. package/dist/node/lib/A-Service/index.d.ts +28 -0
  600. package/dist/node/lib/A-Service/index.js +19 -0
  601. package/dist/node/lib/A-Service/index.js.map +1 -0
  602. package/dist/node/lib/A-Service/index.mjs +5 -0
  603. package/dist/node/lib/A-Service/index.mjs.map +1 -0
  604. package/dist/node/lib/A-Signal/A-Signal.constants.d.mts +2 -0
  605. package/dist/node/lib/A-Signal/A-Signal.constants.d.ts +2 -0
  606. package/dist/node/lib/A-Signal/A-Signal.constants.js +4 -0
  607. package/dist/node/lib/A-Signal/A-Signal.constants.js.map +1 -0
  608. package/dist/node/lib/A-Signal/A-Signal.constants.mjs +3 -0
  609. package/dist/node/lib/A-Signal/A-Signal.constants.mjs.map +1 -0
  610. package/dist/node/lib/A-Signal/A-Signal.error.d.mts +2 -0
  611. package/dist/node/lib/A-Signal/A-Signal.error.d.ts +2 -0
  612. package/dist/node/lib/A-Signal/A-Signal.error.js +4 -0
  613. package/dist/node/lib/A-Signal/A-Signal.error.js.map +1 -0
  614. package/dist/node/lib/A-Signal/A-Signal.error.mjs +3 -0
  615. package/dist/node/lib/A-Signal/A-Signal.error.mjs.map +1 -0
  616. package/dist/node/lib/A-Signal/A-Signal.types.d.mts +2 -0
  617. package/dist/node/lib/A-Signal/A-Signal.types.d.ts +2 -0
  618. package/dist/node/lib/A-Signal/A-Signal.types.js +4 -0
  619. package/dist/node/lib/A-Signal/A-Signal.types.js.map +1 -0
  620. package/dist/node/lib/A-Signal/A-Signal.types.mjs +3 -0
  621. package/dist/node/lib/A-Signal/A-Signal.types.mjs.map +1 -0
  622. package/dist/node/lib/A-Signal/components/A-SignalBus.component.d.mts +44 -0
  623. package/dist/node/lib/A-Signal/components/A-SignalBus.component.d.ts +44 -0
  624. package/dist/node/lib/A-Signal/components/A-SignalBus.component.js +132 -0
  625. package/dist/node/lib/A-Signal/components/A-SignalBus.component.js.map +1 -0
  626. package/dist/node/lib/A-Signal/components/A-SignalBus.component.mjs +122 -0
  627. package/dist/node/lib/A-Signal/components/A-SignalBus.component.mjs.map +1 -0
  628. package/dist/node/lib/A-Signal/components/A-SignalBus.constants.d.mts +7 -0
  629. package/dist/node/lib/A-Signal/components/A-SignalBus.constants.d.ts +7 -0
  630. package/dist/node/lib/A-Signal/components/A-SignalBus.constants.js +12 -0
  631. package/dist/node/lib/A-Signal/components/A-SignalBus.constants.js.map +1 -0
  632. package/dist/node/lib/A-Signal/components/A-SignalBus.constants.mjs +12 -0
  633. package/dist/node/lib/A-Signal/components/A-SignalBus.constants.mjs.map +1 -0
  634. package/dist/node/lib/A-Signal/components/A-SignalBus.error.d.mts +7 -0
  635. package/dist/node/lib/A-Signal/components/A-SignalBus.error.d.ts +7 -0
  636. package/dist/node/lib/A-Signal/components/A-SignalBus.error.js +11 -0
  637. package/dist/node/lib/A-Signal/components/A-SignalBus.error.js.map +1 -0
  638. package/dist/node/lib/A-Signal/components/A-SignalBus.error.mjs +10 -0
  639. package/dist/node/lib/A-Signal/components/A-SignalBus.error.mjs.map +1 -0
  640. package/dist/node/lib/A-Signal/components/A-SignalBus.types.d.mts +2 -0
  641. package/dist/node/lib/A-Signal/components/A-SignalBus.types.d.ts +2 -0
  642. package/dist/node/lib/A-Signal/components/A-SignalBus.types.js +4 -0
  643. package/dist/node/lib/A-Signal/components/A-SignalBus.types.js.map +1 -0
  644. package/dist/node/lib/A-Signal/components/A-SignalBus.types.mjs +3 -0
  645. package/dist/node/lib/A-Signal/components/A-SignalBus.types.mjs.map +1 -0
  646. package/dist/node/lib/A-Signal/context/A-SignalConfig.context.d.mts +36 -0
  647. package/dist/node/lib/A-Signal/context/A-SignalConfig.context.d.ts +36 -0
  648. package/dist/node/lib/A-Signal/context/A-SignalConfig.context.js +68 -0
  649. package/dist/node/lib/A-Signal/context/A-SignalConfig.context.js.map +1 -0
  650. package/dist/node/lib/A-Signal/context/A-SignalConfig.context.mjs +61 -0
  651. package/dist/node/lib/A-Signal/context/A-SignalConfig.context.mjs.map +1 -0
  652. package/dist/node/lib/A-Signal/context/A-SignalState.context.d.mts +111 -0
  653. package/dist/node/lib/A-Signal/context/A-SignalState.context.d.ts +111 -0
  654. package/dist/node/lib/A-Signal/context/A-SignalState.context.js +114 -0
  655. package/dist/node/lib/A-Signal/context/A-SignalState.context.js.map +1 -0
  656. package/dist/node/lib/A-Signal/context/A-SignalState.context.mjs +107 -0
  657. package/dist/node/lib/A-Signal/context/A-SignalState.context.mjs.map +1 -0
  658. package/dist/node/lib/A-Signal/entities/A-Signal.entity.d.mts +2 -0
  659. package/dist/node/lib/A-Signal/entities/A-Signal.entity.d.ts +2 -0
  660. package/dist/node/lib/A-Signal/entities/A-Signal.entity.js +120 -0
  661. package/dist/node/lib/A-Signal/entities/A-Signal.entity.js.map +1 -0
  662. package/dist/node/lib/A-Signal/entities/A-Signal.entity.mjs +113 -0
  663. package/dist/node/lib/A-Signal/entities/A-Signal.entity.mjs.map +1 -0
  664. package/dist/node/lib/A-Signal/entities/A-SignalVector.entity.d.mts +113 -0
  665. package/dist/node/lib/A-Signal/entities/A-SignalVector.entity.d.ts +113 -0
  666. package/dist/node/lib/A-Signal/entities/A-SignalVector.entity.js +217 -0
  667. package/dist/node/lib/A-Signal/entities/A-SignalVector.entity.js.map +1 -0
  668. package/dist/node/lib/A-Signal/entities/A-SignalVector.entity.mjs +210 -0
  669. package/dist/node/lib/A-Signal/entities/A-SignalVector.entity.mjs.map +1 -0
  670. package/dist/node/lib/A-Signal/index.d.mts +15 -0
  671. package/dist/node/lib/A-Signal/index.d.ts +15 -0
  672. package/dist/node/lib/A-Signal/index.js +51 -0
  673. package/dist/node/lib/A-Signal/index.js.map +1 -0
  674. package/dist/node/lib/A-Signal/index.mjs +11 -0
  675. package/dist/node/lib/A-Signal/index.mjs.map +1 -0
  676. package/dist/node/lib/A-StateMachine/A-StateMachine.component.d.mts +180 -0
  677. package/dist/node/lib/A-StateMachine/A-StateMachine.component.d.ts +180 -0
  678. package/dist/node/lib/A-StateMachine/A-StateMachine.component.js +119 -0
  679. package/dist/node/lib/A-StateMachine/A-StateMachine.component.js.map +1 -0
  680. package/dist/node/lib/A-StateMachine/A-StateMachine.component.mjs +110 -0
  681. package/dist/node/lib/A-StateMachine/A-StateMachine.component.mjs.map +1 -0
  682. package/dist/node/lib/A-StateMachine/A-StateMachine.constants.d.mts +20 -0
  683. package/dist/node/lib/A-StateMachine/A-StateMachine.constants.d.ts +20 -0
  684. package/dist/node/lib/A-StateMachine/A-StateMachine.constants.js +13 -0
  685. package/dist/node/lib/A-StateMachine/A-StateMachine.constants.js.map +1 -0
  686. package/dist/node/lib/A-StateMachine/A-StateMachine.constants.mjs +13 -0
  687. package/dist/node/lib/A-StateMachine/A-StateMachine.constants.mjs.map +1 -0
  688. package/dist/node/lib/A-StateMachine/A-StateMachine.error.d.mts +8 -0
  689. package/dist/node/lib/A-StateMachine/A-StateMachine.error.d.ts +8 -0
  690. package/dist/node/lib/A-StateMachine/A-StateMachine.error.js +12 -0
  691. package/dist/node/lib/A-StateMachine/A-StateMachine.error.js.map +1 -0
  692. package/dist/node/lib/A-StateMachine/A-StateMachine.error.mjs +11 -0
  693. package/dist/node/lib/A-StateMachine/A-StateMachine.error.mjs.map +1 -0
  694. package/dist/node/lib/A-StateMachine/A-StateMachine.types.d.mts +14 -0
  695. package/dist/node/lib/A-StateMachine/A-StateMachine.types.d.ts +14 -0
  696. package/dist/node/lib/A-StateMachine/A-StateMachine.types.js +4 -0
  697. package/dist/node/lib/A-StateMachine/A-StateMachine.types.js.map +1 -0
  698. package/dist/node/lib/A-StateMachine/A-StateMachine.types.mjs +3 -0
  699. package/dist/node/lib/A-StateMachine/A-StateMachine.types.mjs.map +1 -0
  700. package/dist/node/lib/A-StateMachine/A-StateMachineTransition.context.d.mts +19 -0
  701. package/dist/node/lib/A-StateMachine/A-StateMachineTransition.context.d.ts +19 -0
  702. package/dist/node/lib/A-StateMachine/A-StateMachineTransition.context.js +43 -0
  703. package/dist/node/lib/A-StateMachine/A-StateMachineTransition.context.js.map +1 -0
  704. package/dist/node/lib/A-StateMachine/A-StateMachineTransition.context.mjs +36 -0
  705. package/dist/node/lib/A-StateMachine/A-StateMachineTransition.context.mjs.map +1 -0
  706. package/dist/node/lib/A-StateMachine/index.d.mts +9 -0
  707. package/dist/node/lib/A-StateMachine/index.d.ts +9 -0
  708. package/dist/node/lib/A-StateMachine/index.js +36 -0
  709. package/dist/node/lib/A-StateMachine/index.js.map +1 -0
  710. package/dist/node/lib/A-StateMachine/index.mjs +8 -0
  711. package/dist/node/lib/A-StateMachine/index.mjs.map +1 -0
  712. package/examples/A-Logger-examples.ts +1 -2
  713. package/jest.config.ts +20 -7
  714. package/package.json +232 -15
  715. package/src/lib/A-Channel/A-Channel.component.ts +1 -1
  716. package/src/lib/A-Channel/A-Channel.error.ts +1 -1
  717. package/src/lib/A-Channel/A-Channel.types.ts +0 -3
  718. package/src/lib/A-Channel/A-ChannelRequest.context.ts +1 -1
  719. package/src/lib/A-Channel/index.ts +6 -0
  720. package/src/lib/A-Command/A-Command.entity.ts +3 -5
  721. package/src/lib/A-Command/index.ts +5 -0
  722. package/src/lib/A-Config/A-Config.container.ts +3 -4
  723. package/src/lib/A-Config/A-Config.context.ts +1 -1
  724. package/src/lib/A-Config/components/ConfigReader.component.ts +10 -21
  725. package/src/lib/A-Config/components/ENVConfigReader.component.ts +13 -12
  726. package/src/lib/A-Config/index.ts +9 -0
  727. package/src/lib/A-Execution/index.ts +3 -0
  728. package/src/lib/A-Logger/A-Logger.component.ts +3 -1
  729. package/src/lib/A-Logger/index.ts +5 -0
  730. package/src/lib/A-Manifest/index.ts +5 -0
  731. package/src/lib/A-Memory/A-Memory.component.ts +1 -1
  732. package/src/lib/A-Memory/A-Memory.types.ts +1 -1
  733. package/src/lib/A-Memory/index.ts +6 -0
  734. package/src/lib/A-Operation/A-Operation.context.ts +1 -1
  735. package/src/lib/A-Operation/index.ts +3 -0
  736. package/src/lib/A-Polyfill/{A-Polyfill.component.ts → A-Polyfill.component.env-browser.ts} +26 -27
  737. package/src/lib/A-Polyfill/A-Polyfill.component.env-node.ts +184 -0
  738. package/src/lib/A-Polyfill/base/A-Buffer-Polyfill.base.ts +34 -0
  739. package/src/lib/A-Polyfill/base/A-Crypto-Polyfill.base.ts +36 -0
  740. package/src/lib/A-Polyfill/base/A-FS-Polyfill.base.ts +34 -0
  741. package/src/lib/A-Polyfill/base/A-Http-Polyfill.base.ts +34 -0
  742. package/src/lib/A-Polyfill/base/A-Https-Polyfill.base.ts +34 -0
  743. package/src/lib/A-Polyfill/base/A-Path-Polyfill.base.ts +34 -0
  744. package/src/lib/A-Polyfill/base/A-Process-Polyfill.base.ts +34 -0
  745. package/src/lib/A-Polyfill/base/A-Url-Polyfill.base.ts +34 -0
  746. package/src/lib/A-Polyfill/base/index.ts +9 -0
  747. package/src/lib/A-Polyfill/browser/A-Buffer-Polyfill.ts +42 -0
  748. package/src/lib/A-Polyfill/browser/A-Crypto-Polyfill.ts +32 -0
  749. package/src/lib/A-Polyfill/browser/A-FS-Polyfill.ts +25 -0
  750. package/src/lib/A-Polyfill/{classes/A-Http-Polyfill.class.ts → browser/A-Http-Polyfill.ts} +6 -46
  751. package/src/lib/A-Polyfill/{classes/A-Https-Polyfill.class.ts → browser/A-Https-Polyfill.ts} +6 -46
  752. package/src/lib/A-Polyfill/{classes/A-Path-Polyfill.class.ts → browser/A-Path-Polyfill.ts} +6 -42
  753. package/src/lib/A-Polyfill/browser/A-Process-Polyfill.ts +29 -0
  754. package/src/lib/A-Polyfill/browser/A-Url-Polyfill.ts +46 -0
  755. package/src/lib/A-Polyfill/browser/index.ts +8 -0
  756. package/src/lib/A-Polyfill/index.browser.ts +5 -0
  757. package/src/lib/A-Polyfill/index.node.ts +5 -0
  758. package/src/lib/A-Polyfill/node/A-Buffer-Polyfill.ts +19 -0
  759. package/src/lib/A-Polyfill/node/A-Crypto-Polyfill.ts +31 -0
  760. package/src/lib/A-Polyfill/node/A-FS-Polyfill.ts +14 -0
  761. package/src/lib/A-Polyfill/node/A-Http-Polyfill.ts +17 -0
  762. package/src/lib/A-Polyfill/node/A-Https-Polyfill.ts +18 -0
  763. package/src/lib/A-Polyfill/node/A-Path-Polyfill.ts +27 -0
  764. package/src/lib/A-Polyfill/node/A-Process-Polyfill.ts +21 -0
  765. package/src/lib/A-Polyfill/node/A-Url-Polyfill.ts +19 -0
  766. package/src/lib/A-Polyfill/node/index.ts +8 -0
  767. package/src/lib/A-Route/index.ts +3 -0
  768. package/src/lib/A-Schedule/index.ts +5 -0
  769. package/src/lib/A-Service/A-Service.container.ts +2 -4
  770. package/src/lib/A-Service/index.ts +4 -0
  771. package/src/lib/A-Signal/components/A-SignalBus.component.ts +2 -2
  772. package/src/lib/A-Signal/index.ts +11 -0
  773. package/src/lib/A-StateMachine/A-StateMachine.types.ts +1 -1
  774. package/src/lib/A-StateMachine/A-StateMachineTransition.context.ts +1 -1
  775. package/src/lib/A-StateMachine/index.ts +6 -0
  776. package/tests/A-Channel.test.ts +3 -5
  777. package/tests/A-Command.test.ts +4 -9
  778. package/tests/A-Config.test.ts +8 -7
  779. package/tests/A-Logger.test.ts +1 -3
  780. package/tests/A-Manifest.test.ts +1 -1
  781. package/tests/A-Memory.test.ts +1 -3
  782. package/tests/A-Polyfill.test.ts +2 -2
  783. package/tests/A-Route.test.ts +1 -3
  784. package/tests/A-Schedule.test.ts +1 -1
  785. package/tests/A-Signal.test.ts +1 -5
  786. package/tests/A-StateMachine.test.ts +2 -5
  787. package/tests/main.test.ts +30 -0
  788. package/tsconfig.json +39 -57
  789. package/tsup.config.ts +94 -28
  790. package/dist/index.cjs +0 -35
  791. package/dist/index.cjs.map +0 -1
  792. package/dist/index.d.mts +0 -2976
  793. package/dist/index.d.ts +0 -2976
  794. package/dist/index.mjs +0 -35
  795. package/dist/index.mjs.map +0 -1
  796. package/src/index.ts +0 -124
  797. package/src/lib/A-Polyfill/classes/A-Buffer-Polyfill.class.ts +0 -85
  798. package/src/lib/A-Polyfill/classes/A-Crypto-Polyfill.class.ts +0 -87
  799. package/src/lib/A-Polyfill/classes/A-FS-Polyfill.class.ts +0 -61
  800. package/src/lib/A-Polyfill/classes/A-Process-Polyfill.class.ts +0 -73
  801. package/src/lib/A-Polyfill/classes/A-Url-Polyfill.class.ts +0 -88
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Channel/A-Channel.component.ts"],"names":["A_Channel","A_Component","A_ChannelFeatures","A_Scope","A_IdentityHelper","A_Context","A_ChannelRequest","A_ChannelError","A_OperationContext","A_Feature","A_Frame"],"mappings":"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","file":"A-Channel.component.js","sourcesContent":["import { A_Component, A_Context, A_Feature, A_IdentityHelper, A_Scope } from \"@adaas/a-concept\";\nimport { A_ChannelError } from \"./A-Channel.error\";\nimport { A_ChannelFeatures } from \"./A-Channel.constants\";\nimport { A_OperationContext } from \"@adaas/a-utils/a-operation\";\nimport { A_ChannelRequest } from \"./A-ChannelRequest.context\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n/**\n * A-Channel - A powerful, extensible communication channel component\n * \n * A-Channel provides a structured approach to implementing various communication patterns\n * such as HTTP clients, WebSocket connections, message queues, and other messaging systems.\n * It offers a complete lifecycle management system with extensible hooks for custom behavior.\n * \n * ## Key Features:\n * - 🔄 **Lifecycle Management** - Complete connection and processing lifecycle with hooks\n * - 📡 **Multiple Communication Patterns** - Request/Response and Fire-and-Forget messaging \n * - 🛡️ **Error Handling** - Comprehensive error capture and management\n * - 🎯 **Type Safety** - Full TypeScript support with generic types\n * - 🔧 **Extensible** - Component-based architecture for custom behavior\n * - ⚡ **Concurrent Processing** - Handle multiple requests simultaneously\n * \n * ## Basic Usage:\n * ```typescript\n * const channel = new A_Channel();\n * A_Context.root.register(channel);\n * \n * // Request/Response pattern\n * const response = await channel.request({ action: 'getData', id: 123 });\n * \n * // Fire-and-forget pattern \n * await channel.send({ type: 'notification', message: 'Hello World' });\n * ```\n * \n * ## Custom Implementation:\n * ```typescript\n * class HttpChannel extends A_Channel {}\n * \n * class HttpProcessor extends A_Component {\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * const response = await fetch(context.params.url);\n * (context as any)._result = await response.json();\n * }\n * }\n * ```\n * \n * @see {@link ./README.md} For complete documentation and examples\n */\n@A_Frame.Namespace('A-Utils')\n@A_Frame.Component({\n name: 'A-Channel',\n description: 'Component uses as abstract channel for communication patterns. Can be inherited and extended to implement custom channels.'\n})\nexport class A_Channel extends A_Component {\n\n /**\n * Indicates whether the channel is currently processing requests.\n * This flag is managed automatically during request/send operations.\n * \n * @readonly\n */\n protected _processing: boolean = false;\n\n /**\n * Promise that resolves when the channel initialization is complete.\n * Ensures that onConnect lifecycle hook has been executed before\n * any communication operations.\n * \n * @private\n */\n protected _initialized?: Promise<void>;\n\n /**\n * Internal cache storage for channel-specific data.\n * Can be used by custom implementations for caching responses,\n * connection pools, or other channel-specific state.\n * \n * @protected\n */\n protected _cache: Map<string, any> = new Map();\n\n /**\n * Creates a new A_Channel instance.\n * \n * The channel must be registered with A_Context before use:\n * ```typescript\n * const channel = new A_Channel();\n * A_Context.root.register(channel);\n * ```\n */\n constructor() {\n super();\n }\n\n /**\n * Indicates whether the channel is currently processing requests.\n * \n * @returns {boolean} True if channel is processing, false otherwise\n */\n get processing(): boolean {\n return this._processing;\n }\n\n /**\n * Promise that resolves when the channel is fully initialized.\n * \n * Automatically calls the onConnect lifecycle hook if not already called.\n * This ensures the channel is ready for communication operations.\n * \n * @returns {Promise<void>} Promise that resolves when initialization is complete\n */\n get initialize(): Promise<void> {\n if (!this._initialized) {\n this._initialized = this.connect();\n }\n return this._initialized;\n }\n\n // ==========================================================\n // ================ Lifecycle Extension Points =============\n // ==========================================================\n\n /**\n * Connection lifecycle hook - called during channel initialization.\n * \n * Override this method in custom components to implement connection logic:\n * - Initialize network connections\n * - Load configuration\n * - Validate environment\n * - Set up connection pools\n * \n * @example\n * ```typescript\n * class DatabaseChannel extends A_Channel {}\n * \n * class DatabaseConnector extends A_Component {\n * @A_Feature.Extend({ scope: [DatabaseChannel] })\n * async [A_ChannelFeatures.onConnect]() {\n * await this.initializeDatabase();\n * console.log('Database channel connected');\n * }\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onConnect\n })\n async onConnect(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Disconnection lifecycle hook - called during channel cleanup.\n * \n * Override this method in custom components to implement cleanup logic:\n * - Close network connections\n * - Save state\n * - Release resources\n * - Clear caches\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [DatabaseChannel] })\n * async [A_ChannelFeatures.onDisconnect]() {\n * await this.closeConnections();\n * console.log('Database channel disconnected');\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onDisconnect\n })\n async onDisconnect(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Pre-request processing hook - called before main request processing.\n * \n * Use this hook for:\n * - Request validation\n * - Authentication\n * - Rate limiting\n * - Logging\n * - Request transformation\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onBeforeRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * // Validate required parameters\n * if (!context.params.url) {\n * throw new Error('URL is required');\n * }\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onBeforeRequest\n })\n async onBeforeRequest(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Main request processing hook - core business logic goes here.\n * \n * This is where the main communication logic should be implemented:\n * - Make HTTP requests\n * - Send messages to queues\n * - Execute database queries\n * - Process business logic\n * \n * Set the result in the context: `(context as any)._result = yourResult;`\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * const response = await fetch(context.params.url);\n * (context as any)._result = await response.json();\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onRequest\n })\n async onRequest(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Post-request processing hook - called after successful request processing.\n * \n * Use this hook for:\n * - Response transformation\n * - Logging\n * - Analytics\n * - Caching results\n * - Cleanup\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onAfterRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * console.log(`Request completed in ${Date.now() - context.startTime}ms`);\n * await this.cacheResponse(context.params, context.data);\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onAfterRequest\n })\n async onAfterRequest(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Error handling hook - called when any operation fails.\n * \n * Use this hook for:\n * - Error logging\n * - Error transformation\n * - Alerting\n * - Retry logic\n * - Fallback mechanisms\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onError](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * console.error('Request failed:', context.params, context.failed);\n * await this.logError(context);\n * await this.sendAlert(context);\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onError\n })\n async onError(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Send operation hook - called for fire-and-forget messaging.\n * \n * Use this hook for:\n * - Message broadcasting\n * - Event publishing\n * - Notification sending\n * - Queue operations\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [EventChannel] })\n * async [A_ChannelFeatures.onSend](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * const { eventType, payload } = context.params;\n * await this.publishEvent(eventType, payload);\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onSend\n })\n async onSend(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n // ==========================================================\n // ================= Public API Methods ===================\n // ==========================================================\n\n /**\n * Initializes the channel by calling the onConnect lifecycle hook.\n * \n * This method is called automatically when accessing the `initialize` property.\n * You can also call it manually if needed.\n * \n * @returns {Promise<void>} Promise that resolves when connection is established\n */\n async connect() {\n await this.call(A_ChannelFeatures.onConnect);\n }\n\n /**\n * Disconnects the channel by calling the onDisconnect lifecycle hook.\n * \n * Use this method to properly cleanup resources when the channel is no longer needed.\n * \n * @returns {Promise<void>} Promise that resolves when cleanup is complete\n */\n async disconnect() {\n await this.call(A_ChannelFeatures.onDisconnect);\n }\n\n /**\n * Sends a request and waits for a response (Request/Response pattern).\n * \n * This method follows the complete request lifecycle:\n * 1. Ensures channel is initialized\n * 2. Creates request scope and context\n * 3. Calls onBeforeRequest hook\n * 4. Calls onRequest hook (main processing)\n * 5. Calls onAfterRequest hook\n * 6. Returns the response context\n * \n * If any step fails, the onError hook is called and the error is captured\n * in the returned context.\n * \n * @template _ParamsType The type of request parameters\n * @template _ResultType The type of response data\n * @param params The request parameters\n * @returns {Promise<A_ChannelRequest<_ParamsType, _ResultType>>} Request context with response\n * \n * @example\n * ```typescript\n * // Basic usage\n * const response = await channel.request({ action: 'getData', id: 123 });\n * \n * // Typed usage\n * interface UserRequest { userId: string; }\n * interface UserResponse { name: string; email: string; }\n * \n * const userResponse = await channel.request<UserRequest, UserResponse>({\n * userId: 'user-123'\n * });\n * \n * if (!userResponse.failed) {\n * console.log('User:', userResponse.data.name);\n * }\n * ```\n */\n async request<\n _ParamsType extends Record<string, any> = Record<string, any>,\n _ResultType extends Record<string, any> = Record<string, any>,\n >(params: _ParamsType): Promise<A_ChannelRequest<_ParamsType, _ResultType>> {\n // Ensure channel is initialized before processing\n await this.initialize;\n\n // Set processing flag\n this._processing = true;\n\n // Create isolated scope for this request\n const requestScope = new A_Scope({\n name: `a-channel@scope:request:${A_IdentityHelper.generateTimeId()}`\n })\n .inherit(A_Context.scope(this));\n\n // Create request context\n const context = new A_ChannelRequest<_ParamsType, _ResultType>(params);\n\n try {\n // Set up dependency injection scope\n requestScope.register(context);\n\n // Execute request lifecycle\n await this.call(A_ChannelFeatures.onBeforeRequest, requestScope);\n await this.call(A_ChannelFeatures.onRequest, requestScope);\n await this.call(A_ChannelFeatures.onAfterRequest, requestScope);\n\n this._processing = false;\n\n return context;\n\n } catch (error) {\n this._processing = false;\n\n // Create channel-specific error\n const channelError = new A_ChannelError(error);\n context.fail(channelError);\n requestScope.register(channelError);\n\n // Call error handling hook\n await this.call(A_ChannelFeatures.onError, requestScope);\n\n requestScope.destroy();\n\n throw channelError;\n }\n }\n\n /**\n * Sends a fire-and-forget message (Send pattern).\n * \n * This method is used for one-way communication where no response is expected:\n * - Event broadcasting\n * - Notification sending\n * - Message queuing\n * - Logging operations\n * \n * The method follows this lifecycle:\n * 1. Ensures channel is initialized\n * 2. Creates send scope and context\n * 3. Calls onSend hook\n * 4. Completes without returning data\n * \n * If the operation fails, the onError hook is called but no error is thrown\n * to the caller (fire-and-forget semantics).\n * \n * @template _ParamsType The type of message parameters\n * @param message The message to send\n * @returns {Promise<void>} Promise that resolves when send is complete\n * \n * @example\n * ```typescript\n * // Send notification\n * await channel.send({\n * type: 'user.login',\n * userId: 'user-123',\n * timestamp: new Date().toISOString()\n * });\n * \n * // Send to message queue\n * await channel.send({\n * queue: 'email-queue',\n * payload: {\n * to: 'user@example.com',\n * subject: 'Welcome!',\n * body: 'Welcome to our service!'\n * }\n * });\n * ```\n */\n async send<_ParamsType extends Record<string, any> = Record<string, any>>(\n message: _ParamsType\n ): Promise<void> {\n // Ensure channel is initialized before processing\n await this.initialize;\n\n // Set processing flag\n this._processing = true;\n\n // Create isolated scope for this send operation\n const requestScope = new A_Scope({\n name: `a-channel@scope:send:${A_IdentityHelper.generateTimeId()}`\n })\n .inherit(A_Context.scope(this));\n\n\n // Create request context for the message\n const context = new A_OperationContext('send', message);\n\n try {\n // Set up dependency injection scope\n requestScope.inherit(A_Context.scope(this));\n requestScope.register(context);\n\n // Execute send operation\n await this.call(A_ChannelFeatures.onSend, requestScope);\n\n this._processing = false;\n\n } catch (error) {\n this._processing = false;\n\n // Create channel-specific error\n const channelError = new A_ChannelError(error);\n requestScope.register(channelError);\n context.fail(channelError);\n\n // Call error handling hook\n await this.call(A_ChannelFeatures.onError, requestScope);\n\n requestScope.destroy();\n\n // Note: We don't re-throw the error for fire-and-forget operations\n // The error is handled by the onError hook\n }\n }\n\n /**\n * @deprecated This method is deprecated and will be removed in future versions.\n * Use request() or send() methods instead depending on your communication pattern.\n * \n * For request/response pattern: Use request()\n * For fire-and-forget pattern: Use send()\n * For consumer patterns: Implement custom consumer logic using request() in a loop\n */\n async consume<T extends Record<string, any> = Record<string, any>>(): Promise<A_OperationContext<any, T>> {\n await this.initialize;\n\n this._processing = true;\n\n const requestScope = new A_Scope({ name: `a-channel@scope:consume:${A_IdentityHelper.generateTimeId()}` })\n .inherit(A_Context.scope(this));\n\n\n const context = new A_OperationContext('consume', {} as T);\n\n try {\n requestScope.inherit(A_Context.scope(this));\n requestScope.register(context);\n\n\n await this.call(A_ChannelFeatures.onConsume, requestScope);\n\n this._processing = false;\n\n return context as A_OperationContext<any, T>;\n\n } catch (error) {\n\n this._processing = false;\n\n const channelError = new A_ChannelError(error)\n\n context.fail(channelError);\n\n await this.call(A_ChannelFeatures.onError, requestScope);\n\n return context as A_OperationContext<any, T>;\n }\n }\n\n}"]}
@@ -0,0 +1,294 @@
1
+ import { __decorateClass } from '../../chunk-EQQGB2QZ.mjs';
2
+ import { A_Feature, A_Component, A_Scope, A_IdentityHelper, A_Context } from '@adaas/a-concept';
3
+ import { A_ChannelError } from './A-Channel.error';
4
+ import { A_ChannelFeatures } from './A-Channel.constants';
5
+ import { A_OperationContext } from '@adaas/a-utils/a-operation';
6
+ import { A_ChannelRequest } from './A-ChannelRequest.context';
7
+ import { A_Frame } from '@adaas/a-frame';
8
+
9
+ let A_Channel = class extends A_Component {
10
+ /**
11
+ * Creates a new A_Channel instance.
12
+ *
13
+ * The channel must be registered with A_Context before use:
14
+ * ```typescript
15
+ * const channel = new A_Channel();
16
+ * A_Context.root.register(channel);
17
+ * ```
18
+ */
19
+ constructor() {
20
+ super();
21
+ /**
22
+ * Indicates whether the channel is currently processing requests.
23
+ * This flag is managed automatically during request/send operations.
24
+ *
25
+ * @readonly
26
+ */
27
+ this._processing = false;
28
+ /**
29
+ * Internal cache storage for channel-specific data.
30
+ * Can be used by custom implementations for caching responses,
31
+ * connection pools, or other channel-specific state.
32
+ *
33
+ * @protected
34
+ */
35
+ this._cache = /* @__PURE__ */ new Map();
36
+ }
37
+ /**
38
+ * Indicates whether the channel is currently processing requests.
39
+ *
40
+ * @returns {boolean} True if channel is processing, false otherwise
41
+ */
42
+ get processing() {
43
+ return this._processing;
44
+ }
45
+ /**
46
+ * Promise that resolves when the channel is fully initialized.
47
+ *
48
+ * Automatically calls the onConnect lifecycle hook if not already called.
49
+ * This ensures the channel is ready for communication operations.
50
+ *
51
+ * @returns {Promise<void>} Promise that resolves when initialization is complete
52
+ */
53
+ get initialize() {
54
+ if (!this._initialized) {
55
+ this._initialized = this.connect();
56
+ }
57
+ return this._initialized;
58
+ }
59
+ async onConnect(...args) {
60
+ }
61
+ async onDisconnect(...args) {
62
+ }
63
+ async onBeforeRequest(...args) {
64
+ }
65
+ async onRequest(...args) {
66
+ }
67
+ async onAfterRequest(...args) {
68
+ }
69
+ async onError(...args) {
70
+ }
71
+ async onSend(...args) {
72
+ }
73
+ // ==========================================================
74
+ // ================= Public API Methods ===================
75
+ // ==========================================================
76
+ /**
77
+ * Initializes the channel by calling the onConnect lifecycle hook.
78
+ *
79
+ * This method is called automatically when accessing the `initialize` property.
80
+ * You can also call it manually if needed.
81
+ *
82
+ * @returns {Promise<void>} Promise that resolves when connection is established
83
+ */
84
+ async connect() {
85
+ await this.call(A_ChannelFeatures.onConnect);
86
+ }
87
+ /**
88
+ * Disconnects the channel by calling the onDisconnect lifecycle hook.
89
+ *
90
+ * Use this method to properly cleanup resources when the channel is no longer needed.
91
+ *
92
+ * @returns {Promise<void>} Promise that resolves when cleanup is complete
93
+ */
94
+ async disconnect() {
95
+ await this.call(A_ChannelFeatures.onDisconnect);
96
+ }
97
+ /**
98
+ * Sends a request and waits for a response (Request/Response pattern).
99
+ *
100
+ * This method follows the complete request lifecycle:
101
+ * 1. Ensures channel is initialized
102
+ * 2. Creates request scope and context
103
+ * 3. Calls onBeforeRequest hook
104
+ * 4. Calls onRequest hook (main processing)
105
+ * 5. Calls onAfterRequest hook
106
+ * 6. Returns the response context
107
+ *
108
+ * If any step fails, the onError hook is called and the error is captured
109
+ * in the returned context.
110
+ *
111
+ * @template _ParamsType The type of request parameters
112
+ * @template _ResultType The type of response data
113
+ * @param params The request parameters
114
+ * @returns {Promise<A_ChannelRequest<_ParamsType, _ResultType>>} Request context with response
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * // Basic usage
119
+ * const response = await channel.request({ action: 'getData', id: 123 });
120
+ *
121
+ * // Typed usage
122
+ * interface UserRequest { userId: string; }
123
+ * interface UserResponse { name: string; email: string; }
124
+ *
125
+ * const userResponse = await channel.request<UserRequest, UserResponse>({
126
+ * userId: 'user-123'
127
+ * });
128
+ *
129
+ * if (!userResponse.failed) {
130
+ * console.log('User:', userResponse.data.name);
131
+ * }
132
+ * ```
133
+ */
134
+ async request(params) {
135
+ await this.initialize;
136
+ this._processing = true;
137
+ const requestScope = new A_Scope({
138
+ name: `a-channel@scope:request:${A_IdentityHelper.generateTimeId()}`
139
+ }).inherit(A_Context.scope(this));
140
+ const context = new A_ChannelRequest(params);
141
+ try {
142
+ requestScope.register(context);
143
+ await this.call(A_ChannelFeatures.onBeforeRequest, requestScope);
144
+ await this.call(A_ChannelFeatures.onRequest, requestScope);
145
+ await this.call(A_ChannelFeatures.onAfterRequest, requestScope);
146
+ this._processing = false;
147
+ return context;
148
+ } catch (error) {
149
+ this._processing = false;
150
+ const channelError = new A_ChannelError(error);
151
+ context.fail(channelError);
152
+ requestScope.register(channelError);
153
+ await this.call(A_ChannelFeatures.onError, requestScope);
154
+ requestScope.destroy();
155
+ throw channelError;
156
+ }
157
+ }
158
+ /**
159
+ * Sends a fire-and-forget message (Send pattern).
160
+ *
161
+ * This method is used for one-way communication where no response is expected:
162
+ * - Event broadcasting
163
+ * - Notification sending
164
+ * - Message queuing
165
+ * - Logging operations
166
+ *
167
+ * The method follows this lifecycle:
168
+ * 1. Ensures channel is initialized
169
+ * 2. Creates send scope and context
170
+ * 3. Calls onSend hook
171
+ * 4. Completes without returning data
172
+ *
173
+ * If the operation fails, the onError hook is called but no error is thrown
174
+ * to the caller (fire-and-forget semantics).
175
+ *
176
+ * @template _ParamsType The type of message parameters
177
+ * @param message The message to send
178
+ * @returns {Promise<void>} Promise that resolves when send is complete
179
+ *
180
+ * @example
181
+ * ```typescript
182
+ * // Send notification
183
+ * await channel.send({
184
+ * type: 'user.login',
185
+ * userId: 'user-123',
186
+ * timestamp: new Date().toISOString()
187
+ * });
188
+ *
189
+ * // Send to message queue
190
+ * await channel.send({
191
+ * queue: 'email-queue',
192
+ * payload: {
193
+ * to: 'user@example.com',
194
+ * subject: 'Welcome!',
195
+ * body: 'Welcome to our service!'
196
+ * }
197
+ * });
198
+ * ```
199
+ */
200
+ async send(message) {
201
+ await this.initialize;
202
+ this._processing = true;
203
+ const requestScope = new A_Scope({
204
+ name: `a-channel@scope:send:${A_IdentityHelper.generateTimeId()}`
205
+ }).inherit(A_Context.scope(this));
206
+ const context = new A_OperationContext("send", message);
207
+ try {
208
+ requestScope.inherit(A_Context.scope(this));
209
+ requestScope.register(context);
210
+ await this.call(A_ChannelFeatures.onSend, requestScope);
211
+ this._processing = false;
212
+ } catch (error) {
213
+ this._processing = false;
214
+ const channelError = new A_ChannelError(error);
215
+ requestScope.register(channelError);
216
+ context.fail(channelError);
217
+ await this.call(A_ChannelFeatures.onError, requestScope);
218
+ requestScope.destroy();
219
+ }
220
+ }
221
+ /**
222
+ * @deprecated This method is deprecated and will be removed in future versions.
223
+ * Use request() or send() methods instead depending on your communication pattern.
224
+ *
225
+ * For request/response pattern: Use request()
226
+ * For fire-and-forget pattern: Use send()
227
+ * For consumer patterns: Implement custom consumer logic using request() in a loop
228
+ */
229
+ async consume() {
230
+ await this.initialize;
231
+ this._processing = true;
232
+ const requestScope = new A_Scope({ name: `a-channel@scope:consume:${A_IdentityHelper.generateTimeId()}` }).inherit(A_Context.scope(this));
233
+ const context = new A_OperationContext("consume", {});
234
+ try {
235
+ requestScope.inherit(A_Context.scope(this));
236
+ requestScope.register(context);
237
+ await this.call(A_ChannelFeatures.onConsume, requestScope);
238
+ this._processing = false;
239
+ return context;
240
+ } catch (error) {
241
+ this._processing = false;
242
+ const channelError = new A_ChannelError(error);
243
+ context.fail(channelError);
244
+ await this.call(A_ChannelFeatures.onError, requestScope);
245
+ return context;
246
+ }
247
+ }
248
+ };
249
+ __decorateClass([
250
+ A_Feature.Extend({
251
+ name: A_ChannelFeatures.onConnect
252
+ })
253
+ ], A_Channel.prototype, "onConnect", 1);
254
+ __decorateClass([
255
+ A_Feature.Extend({
256
+ name: A_ChannelFeatures.onDisconnect
257
+ })
258
+ ], A_Channel.prototype, "onDisconnect", 1);
259
+ __decorateClass([
260
+ A_Feature.Extend({
261
+ name: A_ChannelFeatures.onBeforeRequest
262
+ })
263
+ ], A_Channel.prototype, "onBeforeRequest", 1);
264
+ __decorateClass([
265
+ A_Feature.Extend({
266
+ name: A_ChannelFeatures.onRequest
267
+ })
268
+ ], A_Channel.prototype, "onRequest", 1);
269
+ __decorateClass([
270
+ A_Feature.Extend({
271
+ name: A_ChannelFeatures.onAfterRequest
272
+ })
273
+ ], A_Channel.prototype, "onAfterRequest", 1);
274
+ __decorateClass([
275
+ A_Feature.Extend({
276
+ name: A_ChannelFeatures.onError
277
+ })
278
+ ], A_Channel.prototype, "onError", 1);
279
+ __decorateClass([
280
+ A_Feature.Extend({
281
+ name: A_ChannelFeatures.onSend
282
+ })
283
+ ], A_Channel.prototype, "onSend", 1);
284
+ A_Channel = __decorateClass([
285
+ A_Frame.Namespace("A-Utils"),
286
+ A_Frame.Component({
287
+ name: "A-Channel",
288
+ description: "Component uses as abstract channel for communication patterns. Can be inherited and extended to implement custom channels."
289
+ })
290
+ ], A_Channel);
291
+
292
+ export { A_Channel };
293
+ //# sourceMappingURL=A-Channel.component.mjs.map
294
+ //# sourceMappingURL=A-Channel.component.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Channel/A-Channel.component.ts"],"names":[],"mappings":"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","file":"A-Channel.component.mjs","sourcesContent":["import { A_Component, A_Context, A_Feature, A_IdentityHelper, A_Scope } from \"@adaas/a-concept\";\nimport { A_ChannelError } from \"./A-Channel.error\";\nimport { A_ChannelFeatures } from \"./A-Channel.constants\";\nimport { A_OperationContext } from \"@adaas/a-utils/a-operation\";\nimport { A_ChannelRequest } from \"./A-ChannelRequest.context\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n/**\n * A-Channel - A powerful, extensible communication channel component\n * \n * A-Channel provides a structured approach to implementing various communication patterns\n * such as HTTP clients, WebSocket connections, message queues, and other messaging systems.\n * It offers a complete lifecycle management system with extensible hooks for custom behavior.\n * \n * ## Key Features:\n * - 🔄 **Lifecycle Management** - Complete connection and processing lifecycle with hooks\n * - 📡 **Multiple Communication Patterns** - Request/Response and Fire-and-Forget messaging \n * - 🛡️ **Error Handling** - Comprehensive error capture and management\n * - 🎯 **Type Safety** - Full TypeScript support with generic types\n * - 🔧 **Extensible** - Component-based architecture for custom behavior\n * - ⚡ **Concurrent Processing** - Handle multiple requests simultaneously\n * \n * ## Basic Usage:\n * ```typescript\n * const channel = new A_Channel();\n * A_Context.root.register(channel);\n * \n * // Request/Response pattern\n * const response = await channel.request({ action: 'getData', id: 123 });\n * \n * // Fire-and-forget pattern \n * await channel.send({ type: 'notification', message: 'Hello World' });\n * ```\n * \n * ## Custom Implementation:\n * ```typescript\n * class HttpChannel extends A_Channel {}\n * \n * class HttpProcessor extends A_Component {\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * const response = await fetch(context.params.url);\n * (context as any)._result = await response.json();\n * }\n * }\n * ```\n * \n * @see {@link ./README.md} For complete documentation and examples\n */\n@A_Frame.Namespace('A-Utils')\n@A_Frame.Component({\n name: 'A-Channel',\n description: 'Component uses as abstract channel for communication patterns. Can be inherited and extended to implement custom channels.'\n})\nexport class A_Channel extends A_Component {\n\n /**\n * Indicates whether the channel is currently processing requests.\n * This flag is managed automatically during request/send operations.\n * \n * @readonly\n */\n protected _processing: boolean = false;\n\n /**\n * Promise that resolves when the channel initialization is complete.\n * Ensures that onConnect lifecycle hook has been executed before\n * any communication operations.\n * \n * @private\n */\n protected _initialized?: Promise<void>;\n\n /**\n * Internal cache storage for channel-specific data.\n * Can be used by custom implementations for caching responses,\n * connection pools, or other channel-specific state.\n * \n * @protected\n */\n protected _cache: Map<string, any> = new Map();\n\n /**\n * Creates a new A_Channel instance.\n * \n * The channel must be registered with A_Context before use:\n * ```typescript\n * const channel = new A_Channel();\n * A_Context.root.register(channel);\n * ```\n */\n constructor() {\n super();\n }\n\n /**\n * Indicates whether the channel is currently processing requests.\n * \n * @returns {boolean} True if channel is processing, false otherwise\n */\n get processing(): boolean {\n return this._processing;\n }\n\n /**\n * Promise that resolves when the channel is fully initialized.\n * \n * Automatically calls the onConnect lifecycle hook if not already called.\n * This ensures the channel is ready for communication operations.\n * \n * @returns {Promise<void>} Promise that resolves when initialization is complete\n */\n get initialize(): Promise<void> {\n if (!this._initialized) {\n this._initialized = this.connect();\n }\n return this._initialized;\n }\n\n // ==========================================================\n // ================ Lifecycle Extension Points =============\n // ==========================================================\n\n /**\n * Connection lifecycle hook - called during channel initialization.\n * \n * Override this method in custom components to implement connection logic:\n * - Initialize network connections\n * - Load configuration\n * - Validate environment\n * - Set up connection pools\n * \n * @example\n * ```typescript\n * class DatabaseChannel extends A_Channel {}\n * \n * class DatabaseConnector extends A_Component {\n * @A_Feature.Extend({ scope: [DatabaseChannel] })\n * async [A_ChannelFeatures.onConnect]() {\n * await this.initializeDatabase();\n * console.log('Database channel connected');\n * }\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onConnect\n })\n async onConnect(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Disconnection lifecycle hook - called during channel cleanup.\n * \n * Override this method in custom components to implement cleanup logic:\n * - Close network connections\n * - Save state\n * - Release resources\n * - Clear caches\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [DatabaseChannel] })\n * async [A_ChannelFeatures.onDisconnect]() {\n * await this.closeConnections();\n * console.log('Database channel disconnected');\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onDisconnect\n })\n async onDisconnect(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Pre-request processing hook - called before main request processing.\n * \n * Use this hook for:\n * - Request validation\n * - Authentication\n * - Rate limiting\n * - Logging\n * - Request transformation\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onBeforeRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * // Validate required parameters\n * if (!context.params.url) {\n * throw new Error('URL is required');\n * }\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onBeforeRequest\n })\n async onBeforeRequest(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Main request processing hook - core business logic goes here.\n * \n * This is where the main communication logic should be implemented:\n * - Make HTTP requests\n * - Send messages to queues\n * - Execute database queries\n * - Process business logic\n * \n * Set the result in the context: `(context as any)._result = yourResult;`\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * const response = await fetch(context.params.url);\n * (context as any)._result = await response.json();\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onRequest\n })\n async onRequest(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Post-request processing hook - called after successful request processing.\n * \n * Use this hook for:\n * - Response transformation\n * - Logging\n * - Analytics\n * - Caching results\n * - Cleanup\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onAfterRequest](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * console.log(`Request completed in ${Date.now() - context.startTime}ms`);\n * await this.cacheResponse(context.params, context.data);\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onAfterRequest\n })\n async onAfterRequest(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Error handling hook - called when any operation fails.\n * \n * Use this hook for:\n * - Error logging\n * - Error transformation\n * - Alerting\n * - Retry logic\n * - Fallback mechanisms\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [HttpChannel] })\n * async [A_ChannelFeatures.onError](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * console.error('Request failed:', context.params, context.failed);\n * await this.logError(context);\n * await this.sendAlert(context);\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onError\n })\n async onError(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n /**\n * Send operation hook - called for fire-and-forget messaging.\n * \n * Use this hook for:\n * - Message broadcasting\n * - Event publishing\n * - Notification sending\n * - Queue operations\n * \n * @example\n * ```typescript\n * @A_Feature.Extend({ scope: [EventChannel] })\n * async [A_ChannelFeatures.onSend](\n * @A_Inject(A_ChannelRequest) context: A_ChannelRequest\n * ) {\n * const { eventType, payload } = context.params;\n * await this.publishEvent(eventType, payload);\n * }\n * ```\n */\n @A_Feature.Extend({\n name: A_ChannelFeatures.onSend\n })\n async onSend(...args: any[]) {\n // Default implementation - no operation\n // Override in custom implementations\n }\n\n // ==========================================================\n // ================= Public API Methods ===================\n // ==========================================================\n\n /**\n * Initializes the channel by calling the onConnect lifecycle hook.\n * \n * This method is called automatically when accessing the `initialize` property.\n * You can also call it manually if needed.\n * \n * @returns {Promise<void>} Promise that resolves when connection is established\n */\n async connect() {\n await this.call(A_ChannelFeatures.onConnect);\n }\n\n /**\n * Disconnects the channel by calling the onDisconnect lifecycle hook.\n * \n * Use this method to properly cleanup resources when the channel is no longer needed.\n * \n * @returns {Promise<void>} Promise that resolves when cleanup is complete\n */\n async disconnect() {\n await this.call(A_ChannelFeatures.onDisconnect);\n }\n\n /**\n * Sends a request and waits for a response (Request/Response pattern).\n * \n * This method follows the complete request lifecycle:\n * 1. Ensures channel is initialized\n * 2. Creates request scope and context\n * 3. Calls onBeforeRequest hook\n * 4. Calls onRequest hook (main processing)\n * 5. Calls onAfterRequest hook\n * 6. Returns the response context\n * \n * If any step fails, the onError hook is called and the error is captured\n * in the returned context.\n * \n * @template _ParamsType The type of request parameters\n * @template _ResultType The type of response data\n * @param params The request parameters\n * @returns {Promise<A_ChannelRequest<_ParamsType, _ResultType>>} Request context with response\n * \n * @example\n * ```typescript\n * // Basic usage\n * const response = await channel.request({ action: 'getData', id: 123 });\n * \n * // Typed usage\n * interface UserRequest { userId: string; }\n * interface UserResponse { name: string; email: string; }\n * \n * const userResponse = await channel.request<UserRequest, UserResponse>({\n * userId: 'user-123'\n * });\n * \n * if (!userResponse.failed) {\n * console.log('User:', userResponse.data.name);\n * }\n * ```\n */\n async request<\n _ParamsType extends Record<string, any> = Record<string, any>,\n _ResultType extends Record<string, any> = Record<string, any>,\n >(params: _ParamsType): Promise<A_ChannelRequest<_ParamsType, _ResultType>> {\n // Ensure channel is initialized before processing\n await this.initialize;\n\n // Set processing flag\n this._processing = true;\n\n // Create isolated scope for this request\n const requestScope = new A_Scope({\n name: `a-channel@scope:request:${A_IdentityHelper.generateTimeId()}`\n })\n .inherit(A_Context.scope(this));\n\n // Create request context\n const context = new A_ChannelRequest<_ParamsType, _ResultType>(params);\n\n try {\n // Set up dependency injection scope\n requestScope.register(context);\n\n // Execute request lifecycle\n await this.call(A_ChannelFeatures.onBeforeRequest, requestScope);\n await this.call(A_ChannelFeatures.onRequest, requestScope);\n await this.call(A_ChannelFeatures.onAfterRequest, requestScope);\n\n this._processing = false;\n\n return context;\n\n } catch (error) {\n this._processing = false;\n\n // Create channel-specific error\n const channelError = new A_ChannelError(error);\n context.fail(channelError);\n requestScope.register(channelError);\n\n // Call error handling hook\n await this.call(A_ChannelFeatures.onError, requestScope);\n\n requestScope.destroy();\n\n throw channelError;\n }\n }\n\n /**\n * Sends a fire-and-forget message (Send pattern).\n * \n * This method is used for one-way communication where no response is expected:\n * - Event broadcasting\n * - Notification sending\n * - Message queuing\n * - Logging operations\n * \n * The method follows this lifecycle:\n * 1. Ensures channel is initialized\n * 2. Creates send scope and context\n * 3. Calls onSend hook\n * 4. Completes without returning data\n * \n * If the operation fails, the onError hook is called but no error is thrown\n * to the caller (fire-and-forget semantics).\n * \n * @template _ParamsType The type of message parameters\n * @param message The message to send\n * @returns {Promise<void>} Promise that resolves when send is complete\n * \n * @example\n * ```typescript\n * // Send notification\n * await channel.send({\n * type: 'user.login',\n * userId: 'user-123',\n * timestamp: new Date().toISOString()\n * });\n * \n * // Send to message queue\n * await channel.send({\n * queue: 'email-queue',\n * payload: {\n * to: 'user@example.com',\n * subject: 'Welcome!',\n * body: 'Welcome to our service!'\n * }\n * });\n * ```\n */\n async send<_ParamsType extends Record<string, any> = Record<string, any>>(\n message: _ParamsType\n ): Promise<void> {\n // Ensure channel is initialized before processing\n await this.initialize;\n\n // Set processing flag\n this._processing = true;\n\n // Create isolated scope for this send operation\n const requestScope = new A_Scope({\n name: `a-channel@scope:send:${A_IdentityHelper.generateTimeId()}`\n })\n .inherit(A_Context.scope(this));\n\n\n // Create request context for the message\n const context = new A_OperationContext('send', message);\n\n try {\n // Set up dependency injection scope\n requestScope.inherit(A_Context.scope(this));\n requestScope.register(context);\n\n // Execute send operation\n await this.call(A_ChannelFeatures.onSend, requestScope);\n\n this._processing = false;\n\n } catch (error) {\n this._processing = false;\n\n // Create channel-specific error\n const channelError = new A_ChannelError(error);\n requestScope.register(channelError);\n context.fail(channelError);\n\n // Call error handling hook\n await this.call(A_ChannelFeatures.onError, requestScope);\n\n requestScope.destroy();\n\n // Note: We don't re-throw the error for fire-and-forget operations\n // The error is handled by the onError hook\n }\n }\n\n /**\n * @deprecated This method is deprecated and will be removed in future versions.\n * Use request() or send() methods instead depending on your communication pattern.\n * \n * For request/response pattern: Use request()\n * For fire-and-forget pattern: Use send()\n * For consumer patterns: Implement custom consumer logic using request() in a loop\n */\n async consume<T extends Record<string, any> = Record<string, any>>(): Promise<A_OperationContext<any, T>> {\n await this.initialize;\n\n this._processing = true;\n\n const requestScope = new A_Scope({ name: `a-channel@scope:consume:${A_IdentityHelper.generateTimeId()}` })\n .inherit(A_Context.scope(this));\n\n\n const context = new A_OperationContext('consume', {} as T);\n\n try {\n requestScope.inherit(A_Context.scope(this));\n requestScope.register(context);\n\n\n await this.call(A_ChannelFeatures.onConsume, requestScope);\n\n this._processing = false;\n\n return context as A_OperationContext<any, T>;\n\n } catch (error) {\n\n this._processing = false;\n\n const channelError = new A_ChannelError(error)\n\n context.fail(channelError);\n\n await this.call(A_ChannelFeatures.onError, requestScope);\n\n return context as A_OperationContext<any, T>;\n }\n }\n\n}"]}
@@ -0,0 +1,68 @@
1
+ declare enum A_ChannelFeatures {
2
+ /**
3
+ * Allows to extend timeout logic and behavior
4
+ */
5
+ onTimeout = "_A_Channel_onTimeout",
6
+ /**
7
+ * Allows to extend retry logic and behavior
8
+ */
9
+ onRetry = "_A_Channel_onRetry",
10
+ /**
11
+ * Allows to extend circuit breaker logic and behavior
12
+ */
13
+ onCircuitBreakerOpen = "_A_Channel_onCircuitBreakerOpen",
14
+ /**
15
+ * Allows to extend cache logic and behavior
16
+ */
17
+ onCache = "_A_Channel_onCache",
18
+ /**
19
+ * Allows to extend connection logic and behavior
20
+ */
21
+ onConnect = "_A_Channel_onConnect",
22
+ /**
23
+ * Allows to extend disconnection logic and behavior
24
+ */
25
+ onDisconnect = "_A_Channel_onDisconnect",
26
+ /**
27
+ * Allows to extend request preparation logic and behavior
28
+ */
29
+ onBeforeRequest = "_A_Channel_onBeforeRequest",
30
+ /**
31
+ * Allows to extend request sending logic and behavior
32
+ */
33
+ onRequest = "_A_Channel_onRequest",
34
+ /**
35
+ * Allows to extend request post-processing logic and behavior
36
+ */
37
+ onAfterRequest = "_A_Channel_onAfterRequest",
38
+ /**
39
+ * Allows to extend error handling logic and behavior
40
+ *
41
+ * [!] The same approach uses for ALL errors within the channel
42
+ */
43
+ onError = "_A_Channel_onError",
44
+ /**
45
+ * Allows to extend send logic and behavior
46
+ */
47
+ onSend = "_A_Channel_onSend",
48
+ /**
49
+ * Allows to extend consume logic and behavior
50
+ */
51
+ onConsume = "_A_Channel_onConsume"
52
+ }
53
+ declare enum A_ChannelRequestStatuses {
54
+ /**
55
+ * Request is pending
56
+ */
57
+ PENDING = "PENDING",
58
+ /***
59
+ * Request was successful
60
+ */
61
+ SUCCESS = "SUCCESS",
62
+ /**
63
+ * Request failed
64
+ */
65
+ FAILED = "FAILED"
66
+ }
67
+
68
+ export { A_ChannelFeatures, A_ChannelRequestStatuses };
@@ -0,0 +1,68 @@
1
+ declare enum A_ChannelFeatures {
2
+ /**
3
+ * Allows to extend timeout logic and behavior
4
+ */
5
+ onTimeout = "_A_Channel_onTimeout",
6
+ /**
7
+ * Allows to extend retry logic and behavior
8
+ */
9
+ onRetry = "_A_Channel_onRetry",
10
+ /**
11
+ * Allows to extend circuit breaker logic and behavior
12
+ */
13
+ onCircuitBreakerOpen = "_A_Channel_onCircuitBreakerOpen",
14
+ /**
15
+ * Allows to extend cache logic and behavior
16
+ */
17
+ onCache = "_A_Channel_onCache",
18
+ /**
19
+ * Allows to extend connection logic and behavior
20
+ */
21
+ onConnect = "_A_Channel_onConnect",
22
+ /**
23
+ * Allows to extend disconnection logic and behavior
24
+ */
25
+ onDisconnect = "_A_Channel_onDisconnect",
26
+ /**
27
+ * Allows to extend request preparation logic and behavior
28
+ */
29
+ onBeforeRequest = "_A_Channel_onBeforeRequest",
30
+ /**
31
+ * Allows to extend request sending logic and behavior
32
+ */
33
+ onRequest = "_A_Channel_onRequest",
34
+ /**
35
+ * Allows to extend request post-processing logic and behavior
36
+ */
37
+ onAfterRequest = "_A_Channel_onAfterRequest",
38
+ /**
39
+ * Allows to extend error handling logic and behavior
40
+ *
41
+ * [!] The same approach uses for ALL errors within the channel
42
+ */
43
+ onError = "_A_Channel_onError",
44
+ /**
45
+ * Allows to extend send logic and behavior
46
+ */
47
+ onSend = "_A_Channel_onSend",
48
+ /**
49
+ * Allows to extend consume logic and behavior
50
+ */
51
+ onConsume = "_A_Channel_onConsume"
52
+ }
53
+ declare enum A_ChannelRequestStatuses {
54
+ /**
55
+ * Request is pending
56
+ */
57
+ PENDING = "PENDING",
58
+ /***
59
+ * Request was successful
60
+ */
61
+ SUCCESS = "SUCCESS",
62
+ /**
63
+ * Request failed
64
+ */
65
+ FAILED = "FAILED"
66
+ }
67
+
68
+ export { A_ChannelFeatures, A_ChannelRequestStatuses };
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ var A_ChannelFeatures = /* @__PURE__ */ ((A_ChannelFeatures2) => {
4
+ A_ChannelFeatures2["onTimeout"] = "_A_Channel_onTimeout";
5
+ A_ChannelFeatures2["onRetry"] = "_A_Channel_onRetry";
6
+ A_ChannelFeatures2["onCircuitBreakerOpen"] = "_A_Channel_onCircuitBreakerOpen";
7
+ A_ChannelFeatures2["onCache"] = "_A_Channel_onCache";
8
+ A_ChannelFeatures2["onConnect"] = "_A_Channel_onConnect";
9
+ A_ChannelFeatures2["onDisconnect"] = "_A_Channel_onDisconnect";
10
+ A_ChannelFeatures2["onBeforeRequest"] = "_A_Channel_onBeforeRequest";
11
+ A_ChannelFeatures2["onRequest"] = "_A_Channel_onRequest";
12
+ A_ChannelFeatures2["onAfterRequest"] = "_A_Channel_onAfterRequest";
13
+ A_ChannelFeatures2["onError"] = "_A_Channel_onError";
14
+ A_ChannelFeatures2["onSend"] = "_A_Channel_onSend";
15
+ A_ChannelFeatures2["onConsume"] = "_A_Channel_onConsume";
16
+ return A_ChannelFeatures2;
17
+ })(A_ChannelFeatures || {});
18
+ var A_ChannelRequestStatuses = /* @__PURE__ */ ((A_ChannelRequestStatuses2) => {
19
+ A_ChannelRequestStatuses2["PENDING"] = "PENDING";
20
+ A_ChannelRequestStatuses2["SUCCESS"] = "SUCCESS";
21
+ A_ChannelRequestStatuses2["FAILED"] = "FAILED";
22
+ return A_ChannelRequestStatuses2;
23
+ })(A_ChannelRequestStatuses || {});
24
+
25
+ exports.A_ChannelFeatures = A_ChannelFeatures;
26
+ exports.A_ChannelRequestStatuses = A_ChannelRequestStatuses;
27
+ //# sourceMappingURL=A-Channel.constants.js.map
28
+ //# sourceMappingURL=A-Channel.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Channel/A-Channel.constants.ts"],"names":["A_ChannelFeatures","A_ChannelRequestStatuses"],"mappings":";;AAKO,IAAK,iBAAA,qBAAAA,kBAAAA,KAAL;AAIH,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAIZ,EAAAA,mBAAA,SAAA,CAAA,GAAU,oBAAA;AAIV,EAAAA,mBAAA,sBAAA,CAAA,GAAuB,iCAAA;AAIvB,EAAAA,mBAAA,SAAA,CAAA,GAAU,oBAAA;AAIV,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAIZ,EAAAA,mBAAA,cAAA,CAAA,GAAe,yBAAA;AAIf,EAAAA,mBAAA,iBAAA,CAAA,GAAkB,4BAAA;AAIlB,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAIZ,EAAAA,mBAAA,gBAAA,CAAA,GAAiB,2BAAA;AAMjB,EAAAA,mBAAA,SAAA,CAAA,GAAU,oBAAA;AAIV,EAAAA,mBAAA,QAAA,CAAA,GAAS,mBAAA;AAIT,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAlDJ,EAAA,OAAAA,kBAAAA;AAAA,CAAA,EAAA,iBAAA,IAAA,EAAA;AAyDL,IAAK,wBAAA,qBAAAC,yBAAAA,KAAL;AAIH,EAAAA,0BAAA,SAAA,CAAA,GAAU,SAAA;AAIV,EAAAA,0BAAA,SAAA,CAAA,GAAU,SAAA;AAIV,EAAAA,0BAAA,QAAA,CAAA,GAAS,QAAA;AAZD,EAAA,OAAAA,yBAAAA;AAAA,CAAA,EAAA,wBAAA,IAAA,EAAA","file":"A-Channel.constants.js","sourcesContent":["\n\n// ===============================================================\n// ADAAS A-Channel Constants\n// ===============================================================\nexport enum A_ChannelFeatures {\n /**\n * Allows to extend timeout logic and behavior\n */\n onTimeout = '_A_Channel_onTimeout',\n /**\n * Allows to extend retry logic and behavior\n */\n onRetry = '_A_Channel_onRetry',\n /**\n * Allows to extend circuit breaker logic and behavior\n */\n onCircuitBreakerOpen = '_A_Channel_onCircuitBreakerOpen',\n /**\n * Allows to extend cache logic and behavior\n */\n onCache = '_A_Channel_onCache',\n /**\n * Allows to extend connection logic and behavior\n */\n onConnect = '_A_Channel_onConnect',\n /**\n * Allows to extend disconnection logic and behavior\n */\n onDisconnect = '_A_Channel_onDisconnect',\n /**\n * Allows to extend request preparation logic and behavior\n */\n onBeforeRequest = '_A_Channel_onBeforeRequest',\n /**\n * Allows to extend request sending logic and behavior\n */\n onRequest = '_A_Channel_onRequest',\n /**\n * Allows to extend request post-processing logic and behavior\n */\n onAfterRequest = '_A_Channel_onAfterRequest',\n /**\n * Allows to extend error handling logic and behavior\n * \n * [!] The same approach uses for ALL errors within the channel\n */\n onError = '_A_Channel_onError',\n /**\n * Allows to extend send logic and behavior\n */\n onSend = '_A_Channel_onSend',\n /**\n * Allows to extend consume logic and behavior\n */\n onConsume = '_A_Channel_onConsume',\n}\n\n\n// ==============================================================\n// A-Channel Request Constants\n// ===============================================================\nexport enum A_ChannelRequestStatuses {\n /**\n * Request is pending\n */\n PENDING = 'PENDING',\n /***\n * Request was successful\n */\n SUCCESS = 'SUCCESS',\n /**\n * Request failed\n */\n FAILED = 'FAILED',\n}"]}
@@ -0,0 +1,27 @@
1
+ import '../../chunk-EQQGB2QZ.mjs';
2
+
3
+ var A_ChannelFeatures = /* @__PURE__ */ ((A_ChannelFeatures2) => {
4
+ A_ChannelFeatures2["onTimeout"] = "_A_Channel_onTimeout";
5
+ A_ChannelFeatures2["onRetry"] = "_A_Channel_onRetry";
6
+ A_ChannelFeatures2["onCircuitBreakerOpen"] = "_A_Channel_onCircuitBreakerOpen";
7
+ A_ChannelFeatures2["onCache"] = "_A_Channel_onCache";
8
+ A_ChannelFeatures2["onConnect"] = "_A_Channel_onConnect";
9
+ A_ChannelFeatures2["onDisconnect"] = "_A_Channel_onDisconnect";
10
+ A_ChannelFeatures2["onBeforeRequest"] = "_A_Channel_onBeforeRequest";
11
+ A_ChannelFeatures2["onRequest"] = "_A_Channel_onRequest";
12
+ A_ChannelFeatures2["onAfterRequest"] = "_A_Channel_onAfterRequest";
13
+ A_ChannelFeatures2["onError"] = "_A_Channel_onError";
14
+ A_ChannelFeatures2["onSend"] = "_A_Channel_onSend";
15
+ A_ChannelFeatures2["onConsume"] = "_A_Channel_onConsume";
16
+ return A_ChannelFeatures2;
17
+ })(A_ChannelFeatures || {});
18
+ var A_ChannelRequestStatuses = /* @__PURE__ */ ((A_ChannelRequestStatuses2) => {
19
+ A_ChannelRequestStatuses2["PENDING"] = "PENDING";
20
+ A_ChannelRequestStatuses2["SUCCESS"] = "SUCCESS";
21
+ A_ChannelRequestStatuses2["FAILED"] = "FAILED";
22
+ return A_ChannelRequestStatuses2;
23
+ })(A_ChannelRequestStatuses || {});
24
+
25
+ export { A_ChannelFeatures, A_ChannelRequestStatuses };
26
+ //# sourceMappingURL=A-Channel.constants.mjs.map
27
+ //# sourceMappingURL=A-Channel.constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Channel/A-Channel.constants.ts"],"names":["A_ChannelFeatures","A_ChannelRequestStatuses"],"mappings":";;AAKO,IAAK,iBAAA,qBAAAA,kBAAAA,KAAL;AAIH,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAIZ,EAAAA,mBAAA,SAAA,CAAA,GAAU,oBAAA;AAIV,EAAAA,mBAAA,sBAAA,CAAA,GAAuB,iCAAA;AAIvB,EAAAA,mBAAA,SAAA,CAAA,GAAU,oBAAA;AAIV,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAIZ,EAAAA,mBAAA,cAAA,CAAA,GAAe,yBAAA;AAIf,EAAAA,mBAAA,iBAAA,CAAA,GAAkB,4BAAA;AAIlB,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAIZ,EAAAA,mBAAA,gBAAA,CAAA,GAAiB,2BAAA;AAMjB,EAAAA,mBAAA,SAAA,CAAA,GAAU,oBAAA;AAIV,EAAAA,mBAAA,QAAA,CAAA,GAAS,mBAAA;AAIT,EAAAA,mBAAA,WAAA,CAAA,GAAY,sBAAA;AAlDJ,EAAA,OAAAA,kBAAAA;AAAA,CAAA,EAAA,iBAAA,IAAA,EAAA;AAyDL,IAAK,wBAAA,qBAAAC,yBAAAA,KAAL;AAIH,EAAAA,0BAAA,SAAA,CAAA,GAAU,SAAA;AAIV,EAAAA,0BAAA,SAAA,CAAA,GAAU,SAAA;AAIV,EAAAA,0BAAA,QAAA,CAAA,GAAS,QAAA;AAZD,EAAA,OAAAA,yBAAAA;AAAA,CAAA,EAAA,wBAAA,IAAA,EAAA","file":"A-Channel.constants.mjs","sourcesContent":["\n\n// ===============================================================\n// ADAAS A-Channel Constants\n// ===============================================================\nexport enum A_ChannelFeatures {\n /**\n * Allows to extend timeout logic and behavior\n */\n onTimeout = '_A_Channel_onTimeout',\n /**\n * Allows to extend retry logic and behavior\n */\n onRetry = '_A_Channel_onRetry',\n /**\n * Allows to extend circuit breaker logic and behavior\n */\n onCircuitBreakerOpen = '_A_Channel_onCircuitBreakerOpen',\n /**\n * Allows to extend cache logic and behavior\n */\n onCache = '_A_Channel_onCache',\n /**\n * Allows to extend connection logic and behavior\n */\n onConnect = '_A_Channel_onConnect',\n /**\n * Allows to extend disconnection logic and behavior\n */\n onDisconnect = '_A_Channel_onDisconnect',\n /**\n * Allows to extend request preparation logic and behavior\n */\n onBeforeRequest = '_A_Channel_onBeforeRequest',\n /**\n * Allows to extend request sending logic and behavior\n */\n onRequest = '_A_Channel_onRequest',\n /**\n * Allows to extend request post-processing logic and behavior\n */\n onAfterRequest = '_A_Channel_onAfterRequest',\n /**\n * Allows to extend error handling logic and behavior\n * \n * [!] The same approach uses for ALL errors within the channel\n */\n onError = '_A_Channel_onError',\n /**\n * Allows to extend send logic and behavior\n */\n onSend = '_A_Channel_onSend',\n /**\n * Allows to extend consume logic and behavior\n */\n onConsume = '_A_Channel_onConsume',\n}\n\n\n// ==============================================================\n// A-Channel Request Constants\n// ===============================================================\nexport enum A_ChannelRequestStatuses {\n /**\n * Request is pending\n */\n PENDING = 'PENDING',\n /***\n * Request was successful\n */\n SUCCESS = 'SUCCESS',\n /**\n * Request failed\n */\n FAILED = 'FAILED',\n}"]}
@@ -0,0 +1,23 @@
1
+ import { A_Error } from '@adaas/a-concept';
2
+ import { A_OperationContext } from '../A-Operation/A-Operation.context.mjs';
3
+ import '../A-Operation/A-Operation.types.mjs';
4
+ import '../A-Execution/A-Execution.context.mjs';
5
+
6
+ declare class A_ChannelError extends A_Error {
7
+ static readonly MethodNotImplemented = "A-Channel Method Not Implemented";
8
+ protected _context?: A_OperationContext;
9
+ /**
10
+ * Channel Error allows to keep track of errors within a channel if something goes wrong
11
+ *
12
+ *
13
+ * @param originalError
14
+ * @param context
15
+ */
16
+ constructor(originalError: string | A_Error | Error | any, context?: A_OperationContext | string);
17
+ /***
18
+ * Returns Context of the error
19
+ */
20
+ get context(): A_OperationContext | undefined;
21
+ }
22
+
23
+ export { A_ChannelError };