@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-Logger/A-Logger.constants.ts","../../src/lib/A-Logger/A-Logger.component.ts","../../src/lib/A-Logger/A-Logger.env.ts"],"names":[],"mappings":"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","file":"chunk-TK5UEYMZ.mjs","sourcesContent":["/**\n * A-Logger Constants\n * \n * Configuration constants and default values for the A_Logger component\n */\n\n/**\n * Default scope length for consistent message alignment\n */\nexport const A_LOGGER_DEFAULT_SCOPE_LENGTH = 20;\n\n/**\n * Default log level when none is specified\n */\nexport const A_LOGGER_DEFAULT_LEVEL = 'all';\n\n/**\n * Terminal color codes mapping\n */\nexport const A_LOGGER_COLORS = {\n // System colors (reserved for specific purposes)\n red: '31', // Errors, critical issues\n yellow: '33', // Warnings, caution messages\n green: '32', // Success, completion messages\n \n // Safe palette for random selection (grey-blue-violet theme)\n blue: '34', // Info, general messages\n cyan: '36', // Headers, titles\n magenta: '35', // Special highlighting\n gray: '90', // Debug, less important info\n brightBlue: '94', // Bright blue variant\n brightCyan: '96', // Bright cyan variant\n brightMagenta: '95', // Bright magenta variant\n darkGray: '30', // Dark gray\n lightGray: '37', // Light gray (white)\n \n // Extended blue-violet palette\n indigo: '38;5;54', // Deep indigo\n violet: '38;5;93', // Violet\n purple: '38;5;129', // Purple\n lavender: '38;5;183', // Lavender\n skyBlue: '38;5;117', // Sky blue\n steelBlue: '38;5;67', // Steel blue\n slateBlue: '38;5;62', // Slate blue\n deepBlue: '38;5;18', // Deep blue\n lightBlue: '38;5;153', // Light blue\n periwinkle: '38;5;111', // Periwinkle\n cornflower: '38;5;69', // Cornflower blue\n powder: '38;5;152', // Powder blue\n \n // Additional grays for variety\n charcoal: '38;5;236', // Charcoal\n silver: '38;5;250', // Silver\n smoke: '38;5;244', // Smoke gray\n slate: '38;5;240', // Slate gray\n} as const;\n\n/**\n * Safe colors for random selection - grey-blue-violet palette\n * Excludes system colors (red, yellow, green) to avoid confusion with warnings/errors\n */\nexport const A_LOGGER_SAFE_RANDOM_COLORS = [\n 'blue', 'cyan', 'magenta', 'gray', 'brightBlue', 'brightCyan', 'brightMagenta',\n 'darkGray', 'lightGray', 'indigo', 'violet', 'purple', 'lavender', 'skyBlue',\n 'steelBlue', 'slateBlue', 'deepBlue', 'lightBlue', 'periwinkle', 'cornflower',\n 'powder', 'charcoal', 'silver', 'smoke', 'slate'\n] as const;\n\n/**\n * ANSI escape codes\n */\nexport const A_LOGGER_ANSI = {\n RESET: '\\x1b[0m',\n PREFIX: '\\x1b[',\n SUFFIX: 'm'\n} as const;\n\n/**\n * Timestamp format configuration\n */\nexport const A_LOGGER_TIME_FORMAT = {\n MINUTES_PAD: 2,\n SECONDS_PAD: 2,\n MILLISECONDS_PAD: 3,\n SEPARATOR: ':'\n} as const;\n\n/**\n * Log message structure constants\n */\nexport const A_LOGGER_FORMAT = {\n SCOPE_OPEN: '[',\n SCOPE_CLOSE: ']',\n TIME_OPEN: '|',\n TIME_CLOSE: '|',\n SEPARATOR: '-------------------------------',\n INDENT_BASE: 3,\n PIPE: '| '\n} as const;\n\n/**\n * Environment variable keys\n */\n/**\n * Terminal width configuration\n */\nexport const A_LOGGER_TERMINAL = {\n DEFAULT_WIDTH: 80, // Default terminal width when can't be detected\n MIN_WIDTH: 40, // Minimum width for formatted output\n MAX_LINE_LENGTH_RATIO: 0.8, // Use 80% of terminal width for content\n BROWSER_DEFAULT_WIDTH: 120 // Default width for browser console\n} as const;\n\n/**\n * Environment variable keys\n */\nexport const A_LOGGER_ENV_KEYS = {\n LOG_LEVEL: 'A_LOGGER_LEVEL',\n DEFAULT_SCOPE_LENGTH: 'A_LOGGER_DEFAULT_SCOPE_LENGTH',\n DEFAULT_SCOPE_COLOR: 'A_LOGGER_DEFAULT_SCOPE_COLOR',\n DEFAULT_LOG_COLOR: 'A_LOGGER_DEFAULT_LOG_COLOR'\n} as const;","import { A_Component, A_Context, A_Error, A_Inject, A_Scope } from \"@adaas/a-concept\";\n\nimport { A_Config } from \"@adaas/a-utils/a-config\";\nimport { A_LoggerEnvVariablesType } from \"./A-Logger.env\";\nimport { A_LoggerLevel, A_LoggerColorName } from \"./A-Logger.types\";\nimport {\n A_LOGGER_DEFAULT_SCOPE_LENGTH,\n A_LOGGER_COLORS,\n A_LOGGER_ANSI,\n A_LOGGER_TIME_FORMAT,\n A_LOGGER_FORMAT,\n A_LOGGER_ENV_KEYS,\n A_LOGGER_SAFE_RANDOM_COLORS,\n A_LOGGER_TERMINAL\n} from \"./A-Logger.constants\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n/**\n * A_Logger - Advanced Logging Component with Scope-based Output Formatting\n * \n * This component provides comprehensive logging capabilities with:\n * - Color-coded console output for different log levels\n * - Scope-based message formatting with consistent alignment\n * - Support for multiple data types (objects, errors, strings)\n * - Configurable log levels for filtering output\n * - Special handling for A_Error and native Error objects\n * - Timestamp inclusion for better debugging\n * \n * Key Features:\n * - **Scope Integration**: Uses A_Scope for consistent message prefixing\n * - **Color Support**: Terminal color codes for visual distinction\n * - **Object Formatting**: Pretty-prints JSON objects with proper indentation\n * - **Error Handling**: Special formatting for A_Error and Error objects\n * - **Log Level Filtering**: Configurable filtering based on severity\n * - **Multi-line Support**: Proper alignment for multi-line messages\n * \n * @example\n * ```typescript\n * // Basic usage with dependency injection (uses deterministic colors based on scope name)\n * class MyService {\n * constructor(@A_Inject(A_Logger) private logger: A_Logger) {}\n * \n * doSomething() {\n * this.logger.info('Processing started'); // Uses scope-name-based colors, always shows\n * this.logger.debug('Debug information'); // Only shows when debug level enabled\n * \n * // Color overload methods with enum support\n * this.logger.info('green', 'Success message'); // Green message, scope stays default\n * this.logger.debug('gray', 'Verbose debug info'); // Gray message for less important info\n * this.logger.info('brightBlue', 'Important notification');\n * \n * // Terminal width aware formatting - automatically wraps long lines\n * this.logger.info('This is a very long message that will be automatically wrapped to fit within the terminal width while maintaining proper indentation and formatting');\n * \n * this.logger.warning('Something might be wrong');\n * this.logger.error(new Error('Something failed'));\n * }\n * }\n * \n * // Same scope names will always get the same colors automatically\n * const logger1 = new A_Logger(new A_Scope({name: 'UserService'})); // Gets consistent colors\n * const logger2 = new A_Logger(new A_Scope({name: 'UserService'})); // Gets same colors as logger1\n * \n * // Available color names (A_LoggerColorName enum):\n * // 'red', 'yellow', 'green', 'blue', 'cyan', 'magenta', 'gray',\n * // 'brightBlue', 'brightCyan', 'brightMagenta', 'darkGray', 'lightGray',\n * // 'indigo', 'violet', 'purple', 'lavender', 'skyBlue', 'steelBlue',\n * // 'slateBlue', 'deepBlue', 'lightBlue', 'periwinkle', 'cornflower',\n * // 'powder', 'charcoal', 'silver', 'smoke', 'slate'\n * \n * // Configuration via environment variables or A_Config (overrides automatic selection)\n * process.env.A_LOGGER_DEFAULT_SCOPE_COLOR = 'magenta';\n * process.env.A_LOGGER_DEFAULT_LOG_COLOR = 'green';\n * \n * // Or through A_Config instance\n * const config = new A_Config({\n * A_LOGGER_DEFAULT_SCOPE_COLOR: 'red',\n * A_LOGGER_DEFAULT_LOG_COLOR: 'white'\n * });\n * const logger = new A_Logger(scope, config);\n * ```\n */\n@A_Frame.Component({\n namespace: 'A-Utils',\n name: 'A_Logger',\n description: 'Advanced Logging Component with Scope-based Output Formatting that provides color-coded console output, multi-type support, and configurable log levels for enhanced debugging and monitoring.'\n})\nexport class A_Logger extends A_Component {\n\n // =============================================\n // Configuration and Constants\n // =============================================\n\n /**\n * Terminal color codes for different log levels and custom styling\n * These codes work with ANSI escape sequences for colored terminal output\n */\n readonly COLORS;\n\n /**\n * Standard scope length for consistent formatting\n * This ensures all log messages align properly regardless of scope name length\n */\n private readonly STANDARD_SCOPE_LENGTH;\n\n /**\n * Default color for the scope portion of log messages\n * This color is used for the scope brackets and content, and remains consistent\n * for this logger instance regardless of message color overrides\n */\n private readonly DEFAULT_SCOPE_COLOR: keyof typeof A_LOGGER_COLORS;\n\n /**\n * Default color for log message content when no explicit color is provided\n * This color is used for the message body when logging without specifying a color\n */\n private readonly DEFAULT_LOG_COLOR: keyof typeof A_LOGGER_COLORS;\n\n /**\n * Current terminal width for responsive formatting\n * Automatically detected or falls back to default values\n */\n private readonly TERMINAL_WIDTH: number;\n\n /**\n * Maximum content width based on terminal size\n * Used for word wrapping and line length calculations\n */\n private readonly MAX_CONTENT_WIDTH: number;\n\n // =============================================\n // Constructor and Initialization\n // =============================\n\n /**\n * Initialize A_Logger with dependency injection\n * Colors are configured through A_Config or generated randomly if not provided\n * \n * @param scope - The current scope context for message prefixing\n * @param config - Optional configuration for log level filtering and color settings\n */\n constructor(\n @A_Inject(A_Scope) protected scope: A_Scope,\n @A_Inject(A_Config) protected config?: A_Config<A_LoggerEnvVariablesType>\n ) {\n super();\n this.COLORS = A_LOGGER_COLORS;\n this.STANDARD_SCOPE_LENGTH = config?.get(A_LOGGER_ENV_KEYS.DEFAULT_SCOPE_LENGTH) || A_LOGGER_DEFAULT_SCOPE_LENGTH;\n\n // Get colors from config or generate deterministic colors based on scope name\n const configScopeColor = config?.get(A_LOGGER_ENV_KEYS.DEFAULT_SCOPE_COLOR) as keyof typeof A_LOGGER_COLORS;\n const configLogColor = config?.get(A_LOGGER_ENV_KEYS.DEFAULT_LOG_COLOR) as keyof typeof A_LOGGER_COLORS;\n\n if (configScopeColor || configLogColor) {\n // If any color is configured, use config values or fallback to scope-based selection\n this.DEFAULT_SCOPE_COLOR = configScopeColor || this.generateColorFromScopeName(this.scope.name);\n this.DEFAULT_LOG_COLOR = configLogColor || this.generateColorFromScopeName(this.scope.name);\n } else {\n // If no colors configured, generate complementary pair based on scope name\n const complementaryColors = this.generateComplementaryColorsFromScope(this.scope.name);\n this.DEFAULT_SCOPE_COLOR = complementaryColors.scopeColor;\n this.DEFAULT_LOG_COLOR = complementaryColors.logColor;\n }\n\n // Initialize terminal width detection\n this.TERMINAL_WIDTH = this.detectTerminalWidth();\n this.MAX_CONTENT_WIDTH = Math.floor(this.TERMINAL_WIDTH * A_LOGGER_TERMINAL.MAX_LINE_LENGTH_RATIO);\n }\n\n // =============================================\n // Color Generation Utilities\n // =============================================\n\n /**\n * Generate a simple hash from a string\n * Used to create deterministic color selection based on scope name\n * \n * @param str - The string to hash\n * @returns A numeric hash value\n */\n private simpleHash(str: string): number {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n const char = str.charCodeAt(i);\n hash = ((hash << 5) - hash) + char;\n hash = hash & hash; // Convert to 32-bit integer\n }\n return Math.abs(hash);\n }\n\n /**\n * Generate a deterministic color based on scope name\n * Same scope names will always get the same color, but uses safe color palette\n * \n * @param scopeName - The scope name to generate color for\n * @returns A color key from the safe colors palette\n */\n private generateColorFromScopeName(scopeName: string): keyof typeof A_LOGGER_COLORS {\n const safeColors = A_LOGGER_SAFE_RANDOM_COLORS;\n const hash = this.simpleHash(scopeName);\n const colorIndex = hash % safeColors.length;\n return safeColors[colorIndex];\n }\n\n /**\n * Generate a pair of complementary colors based on scope name\n * Ensures visual harmony between scope and message colors while being deterministic\n * \n * @param scopeName - The scope name to base colors on\n * @returns Object with scopeColor and logColor that work well together\n */\n private generateComplementaryColorsFromScope(scopeName: string): { scopeColor: keyof typeof A_LOGGER_COLORS, logColor: keyof typeof A_LOGGER_COLORS } {\n // Define color groups that work well together\n const colorPairs = [\n { scopeColor: 'indigo' as const, logColor: 'lightBlue' as const },\n { scopeColor: 'deepBlue' as const, logColor: 'cyan' as const },\n { scopeColor: 'purple' as const, logColor: 'lavender' as const },\n { scopeColor: 'steelBlue' as const, logColor: 'skyBlue' as const },\n { scopeColor: 'slateBlue' as const, logColor: 'periwinkle' as const },\n { scopeColor: 'charcoal' as const, logColor: 'silver' as const },\n { scopeColor: 'violet' as const, logColor: 'brightMagenta' as const },\n { scopeColor: 'darkGray' as const, logColor: 'lightGray' as const },\n { scopeColor: 'cornflower' as const, logColor: 'powder' as const },\n { scopeColor: 'slate' as const, logColor: 'smoke' as const },\n ];\n\n const hash = this.simpleHash(scopeName);\n const pairIndex = hash % colorPairs.length;\n return colorPairs[pairIndex];\n }\n\n // =============================================\n // Terminal Width Detection\n // =============================================\n\n /**\n * Detect current terminal width based on environment\n * \n * Returns appropriate width for different environments:\n * - Node.js: Uses process.stdout.columns if available\n * - Browser: Returns browser default width\n * - Fallback: Returns default terminal width\n * \n * @returns Terminal width in characters\n */\n private detectTerminalWidth(): number {\n try {\n // Browser environment\n if (A_Context.environment === 'browser') {\n return A_LOGGER_TERMINAL.BROWSER_DEFAULT_WIDTH;\n }\n\n // Node.js environment - try to get actual terminal width\n if (typeof process !== 'undefined' && process.stdout && process.stdout.columns) {\n const cols = process.stdout.columns;\n // Ensure minimum width for readability\n return Math.max(cols, A_LOGGER_TERMINAL.MIN_WIDTH);\n }\n\n // Fallback to default width\n return A_LOGGER_TERMINAL.DEFAULT_WIDTH;\n } catch (error) {\n // If any error occurs, fall back to default width\n return A_LOGGER_TERMINAL.DEFAULT_WIDTH;\n }\n }\n\n /**\n * Wrap text to fit within terminal width while preserving formatting\n * \n * @param text - Text to wrap\n * @param scopePadding - The scope padding string for alignment\n * @param isFirstLine - Whether this is the first line (affects available width calculation)\n * @returns Array of wrapped lines with proper indentation\n */\n private wrapText(text: string, scopePadding: string, isFirstLine: boolean = true): string[] {\n if (A_Context.environment === 'browser') {\n // In browser, don't wrap - let browser console handle it\n return [text];\n }\n\n // Calculate available width for text content\n // First line: terminal_width - scope_header_length (includes [scope] |time| part)\n // Continuation lines: terminal_width - scope_padding - pipe_length\n const scopeHeaderLength = this.formattedScope.length + 4 + this.getTime().length + 4; // [scope] |time| \n const continuationIndent = `${scopePadding}${A_LOGGER_FORMAT.PIPE}`;\n\n const firstLineMaxWidth = Math.max(this.TERMINAL_WIDTH - scopeHeaderLength - 1, 20); // -1 for space\n const continuationMaxWidth = Math.max(this.TERMINAL_WIDTH - continuationIndent.length, 20);\n\n // If text fits on first line, return as is\n if (isFirstLine && text.length <= firstLineMaxWidth) {\n return [text];\n }\n\n const lines: string[] = [];\n const words = text.split(' ');\n let currentLine = '';\n let currentMaxWidth = isFirstLine ? firstLineMaxWidth : continuationMaxWidth;\n let isCurrentLineFirst = isFirstLine;\n\n for (const word of words) {\n const spaceNeeded = currentLine ? 1 : 0; // Space before word\n const totalLength = currentLine.length + spaceNeeded + word.length;\n\n // If adding this word would exceed current line's max width\n if (totalLength > currentMaxWidth) {\n if (currentLine) {\n lines.push(currentLine);\n currentLine = word;\n // After first line, all subsequent lines use continuation width\n currentMaxWidth = continuationMaxWidth;\n isCurrentLineFirst = false;\n } else {\n // Word itself is too long, split it\n if (word.length > currentMaxWidth) {\n const chunks = this.splitLongWord(word, currentMaxWidth);\n lines.push(...chunks.slice(0, -1));\n currentLine = chunks[chunks.length - 1];\n } else {\n currentLine = word;\n }\n currentMaxWidth = continuationMaxWidth;\n isCurrentLineFirst = false;\n }\n } else {\n currentLine += (currentLine ? ' ' : '') + word;\n }\n }\n\n if (currentLine) {\n lines.push(currentLine);\n }\n\n return lines.length ? lines : [text];\n }\n\n /**\n * Split a long word that doesn't fit on a single line\n * \n * @param word - Word to split\n * @param maxLength - Maximum length per chunk\n * @returns Array of word chunks\n */\n private splitLongWord(word: string, maxLength: number): string[] {\n const chunks: string[] = [];\n for (let i = 0; i < word.length; i += maxLength) {\n chunks.push(word.slice(i, i + maxLength));\n }\n return chunks;\n }\n\n // =============================================\n // Factory Methods\n // =============================\n\n\n\n // =============================================\n // Scope and Formatting Utilities\n // =============================================\n\n /**\n * Get the formatted scope length for consistent message alignment\n * Uses a standard length to ensure all messages align properly regardless of scope name\n * \n * @returns The scope length to use for padding calculations\n */\n get scopeLength(): number {\n return Math.max(this.scope.name.length, this.STANDARD_SCOPE_LENGTH);\n }\n\n /**\n * Get the formatted scope name with proper padding, centered within the container\n * Ensures consistent width for all scope names in log output with centered alignment\n * \n * @returns Centered and padded scope name for consistent formatting\n */\n get formattedScope(): string {\n const scopeName = this.scope.name;\n const totalLength = this.STANDARD_SCOPE_LENGTH;\n\n // If scope name is longer than standard length, truncate it\n if (scopeName.length >= totalLength) {\n return scopeName.substring(0, totalLength);\n }\n\n // Calculate padding for centering\n const totalPadding = totalLength - scopeName.length;\n const leftPadding = Math.floor(totalPadding / 2);\n const rightPadding = totalPadding - leftPadding;\n\n return ' '.repeat(leftPadding) + scopeName + ' '.repeat(rightPadding);\n }\n\n\n // =============================================\n // Message Compilation and Formatting\n // =============================================\n\n /**\n * Compile log arguments into formatted console output with colors and proper alignment\n * \n * This method handles the core formatting logic for all log messages:\n * - Applies separate colors for scope and message content\n * - Formats scope names with consistent padding\n * - Handles different data types appropriately\n * - Maintains proper indentation for multi-line content\n * \n * @param messageColor - The color key to apply to the message content\n * @param args - Variable arguments to format and display\n * @returns Array of formatted strings and/or objects ready for console output\n */\n compile(\n messageColor: keyof typeof this.COLORS,\n ...args: any[]\n ): Array<any> {\n const timeString = this.getTime();\n // Calculate padding based on actual displayed scope width (STANDARD_SCOPE_LENGTH)\n // Plus 3 for the brackets and space: [scope] \n const scopePadding = ' '.repeat(this.STANDARD_SCOPE_LENGTH + 3);\n const isMultiArg = args.length > 1;\n\n return [\n // Header with separate colors for scope and message content\n `${A_LOGGER_ANSI.PREFIX}${this.COLORS[this.DEFAULT_SCOPE_COLOR]}${A_LOGGER_ANSI.SUFFIX}${A_LOGGER_FORMAT.SCOPE_OPEN}${this.formattedScope}${A_LOGGER_FORMAT.SCOPE_CLOSE}${A_LOGGER_ANSI.RESET} ${A_LOGGER_ANSI.PREFIX}${this.COLORS[messageColor]}${A_LOGGER_ANSI.SUFFIX}${A_LOGGER_FORMAT.TIME_OPEN}${timeString}${A_LOGGER_FORMAT.TIME_CLOSE}`,\n\n // Top separator for multi-argument messages\n isMultiArg ? '\\n' + `${scopePadding}${A_LOGGER_FORMAT.TIME_OPEN}${A_LOGGER_FORMAT.SEPARATOR}` : '',\n\n // Process each argument with appropriate formatting\n ...args.map((arg, i) => {\n const shouldAddNewline = i > 0 || isMultiArg;\n\n switch (true) {\n case arg instanceof A_Error:\n return this.compile_A_Error(arg);\n\n case arg instanceof Error:\n return this.compile_Error(arg);\n\n case typeof arg === 'object' && arg !== null:\n return this.formatObject(arg, shouldAddNewline, scopePadding);\n\n default:\n return this.formatString(String(arg), shouldAddNewline, scopePadding);\n }\n }),\n\n // Bottom separator and color reset\n isMultiArg\n ? '\\n' + `${scopePadding}${A_LOGGER_FORMAT.TIME_OPEN}${A_LOGGER_FORMAT.SEPARATOR}${A_LOGGER_ANSI.RESET}`\n : A_LOGGER_ANSI.RESET\n ];\n }\n\n /**\n * Format an object for display with proper JSON indentation and terminal width awareness\n * \n * @param obj - The object to format\n * @param shouldAddNewline - Whether to add a newline prefix\n * @param scopePadding - The padding string for consistent alignment\n * @returns Formatted object string or the object itself for browser environments\n */\n private formatObject(obj: any, shouldAddNewline: boolean, scopePadding: string): any {\n\n // In case it's browser, return the object as is to use native console object rendering\n // This allows the browser console to display objects with its native interactive features\n if (A_Context.environment === 'browser') {\n return obj;\n }\n\n // Handle null and undefined values\n if (obj === null) {\n return shouldAddNewline ? `\\n${scopePadding}${A_LOGGER_FORMAT.PIPE}null` : 'null';\n }\n if (obj === undefined) {\n return shouldAddNewline ? `\\n${scopePadding}${A_LOGGER_FORMAT.PIPE}undefined` : 'undefined';\n }\n\n let jsonString: string;\n try {\n jsonString = JSON.stringify(obj, null, 2);\n } catch (error) {\n // Handle circular references and other JSON errors\n try {\n const seen = new WeakSet();\n jsonString = JSON.stringify(obj, (key, value) => {\n if (typeof value === 'object' && value !== null) {\n if (seen.has(value)) {\n return '[Circular Reference]';\n }\n seen.add(value);\n }\n return value;\n }, 2);\n } catch (fallbackError) {\n // If all else fails, convert to string\n jsonString = String(obj);\n }\n }\n\n // Apply terminal width wrapping to long JSON string values\n const continuationIndent = `${scopePadding}${A_LOGGER_FORMAT.PIPE}`;\n const maxJsonLineWidth = this.TERMINAL_WIDTH - continuationIndent.length - 4; // -4 for JSON indentation\n\n // Split into lines and wrap long string values\n const lines = jsonString.split('\\n').map(line => {\n // Check if this line contains a long string value\n const stringValueMatch = line.match(/^(\\s*\"[^\"]+\":\\s*\")([^\"]+)(\".*)?$/);\n if (stringValueMatch && stringValueMatch[2].length > maxJsonLineWidth - stringValueMatch[1].length - (stringValueMatch[3] || '').length) {\n const [, prefix, value, suffix = ''] = stringValueMatch;\n\n // Wrap the string value if it's too long\n if (value.length > maxJsonLineWidth - prefix.length - suffix.length) {\n const wrappedValue = this.wrapJsonStringValue(value, maxJsonLineWidth - prefix.length - suffix.length);\n return prefix + wrappedValue + suffix;\n }\n }\n return line;\n });\n\n const formatted = lines.join('\\n' + continuationIndent);\n return shouldAddNewline ? '\\n' + continuationIndent + formatted : formatted;\n }\n\n /**\n * Wrap a long JSON string value while preserving readability\n * \n * @param value - The string value to wrap\n * @param maxWidth - Maximum width for the value\n * @returns Wrapped string value\n */\n private wrapJsonStringValue(value: string, maxWidth: number): string {\n if (value.length <= maxWidth) {\n return value;\n }\n\n // For JSON string values, truncate with ellipsis to maintain JSON validity\n // This prevents the JSON from becoming unreadable due to excessive wrapping\n // while still showing the most important part of the string\n if (maxWidth > 6) { // Ensure we have room for ellipsis\n return value.substring(0, maxWidth - 3) + '...';\n } else {\n // If maxWidth is very small, just return truncated value\n return value.substring(0, Math.max(1, maxWidth));\n }\n }\n\n /**\n * Format a string for display with proper indentation and terminal width wrapping\n * \n * @param str - The string to format\n * @param shouldAddNewline - Whether to add a newline prefix\n * @param scopePadding - The padding string for consistent alignment\n * @returns Formatted string\n */\n private formatString(str: string, shouldAddNewline: boolean, scopePadding: string): string {\n // In browser environment, keep simple formatting\n if (A_Context.environment === 'browser') {\n const prefix = shouldAddNewline ? '\\n' : '';\n return (prefix + str).replace(/\\n/g, '\\n' + `${scopePadding}${A_LOGGER_FORMAT.PIPE}`);\n }\n\n // For terminal, apply intelligent text wrapping\n const wrappedLines = this.wrapText(str, scopePadding, !shouldAddNewline);\n const continuationIndent = `${scopePadding}${A_LOGGER_FORMAT.PIPE}`;\n\n // Format the wrapped lines with proper indentation\n const formattedLines = wrappedLines.map((line, index) => {\n if (index === 0 && !shouldAddNewline) {\n // First line in inline mode (no newline prefix)\n return line;\n } else {\n // Continuation lines or first line with newline prefix\n return `${continuationIndent}${line}`;\n }\n });\n\n if (shouldAddNewline) {\n return '\\n' + formattedLines.join('\\n');\n } else {\n return formattedLines.join('\\n');\n }\n }\n\n // =============================================\n // Log Level Management\n // =============================================\n\n /**\n * Determine if a log message should be output based on configured log level\n * \n * Log level hierarchy:\n * - debug: Shows all messages (debug, info, warning, error)\n * - info: Shows info, warning, and error messages\n * - warn: Shows warning and error messages only\n * - error: Shows error messages only\n * - all: Shows all messages (alias for debug)\n * \n * @param logMethod - The type of log method being called\n * @returns True if the message should be logged, false otherwise\n */\n protected shouldLog(logMethod: 'debug' | 'info' | 'warning' | 'error'): boolean {\n const shouldLog: A_LoggerLevel = this.config?.get(A_LOGGER_ENV_KEYS.LOG_LEVEL) || 'info';\n\n switch (shouldLog) {\n case 'debug':\n return true;\n case 'info':\n return logMethod === 'info' || logMethod === 'warning' || logMethod === 'error';\n case 'warn':\n return logMethod === 'warning' || logMethod === 'error';\n case 'error':\n return logMethod === 'error';\n case 'all':\n return true;\n default:\n return false;\n }\n }\n\n\n // =============================================\n // Public Logging Methods\n // =============================================\n\n /**\n * Debug logging method with optional color specification\n * Only logs when debug level is enabled\n * \n * Supports two usage patterns:\n * 1. debug(message, ...args) - Uses instance's default log color\n * 2. debug(color, message, ...args) - Uses specified color for message content only\n * \n * Note: The scope color always remains the instance's default scope color,\n * only the message content color changes when explicitly specified.\n * \n * @param color - Optional color name from A_LoggerColorName enum or the first message argument\n * @param args - Additional arguments to log\n * \n * @example\n * ```typescript\n * logger.debug('Debug information'); // Uses instance default colors\n * logger.debug('gray', 'Debug message'); // Gray message, scope stays instance color\n * logger.debug('Processing user:', { id: 1, name: 'John' });\n * ```\n */\n debug(color: A_LoggerColorName, ...args: any[]): void;\n debug(...args: any[]): void;\n debug(param1: any, ...args: any[]): void {\n if (!this.shouldLog('debug')) return;\n\n // Check if first parameter is a valid color key\n if (typeof param1 === 'string' && this.COLORS[param1 as keyof typeof this.COLORS]) {\n console.log(...this.compile(param1 as keyof typeof this.COLORS, ...args));\n } else {\n // Use instance's default log color and treat param1 as first message argument\n console.log(...this.compile(this.DEFAULT_LOG_COLOR, param1, ...args));\n }\n }\n\n /**\n * Info logging method with optional color specification\n * Logs without any restrictions (always shows regardless of log level)\n * \n * Supports two usage patterns:\n * 1. info(message, ...args) - Uses instance's default log color\n * 2. info(color, message, ...args) - Uses specified color for message content only\n * \n * Note: The scope color always remains the instance's default scope color,\n * only the message content color changes when explicitly specified.\n * \n * @param color - Optional color name from A_LoggerColorName enum or the first message argument\n * @param args - Additional arguments to log\n * \n * @example\n * ```typescript\n * logger.info('Hello World'); // Uses instance default colors\n * logger.info('green', 'Success message'); // Green message, scope stays instance color\n * logger.info('Processing user:', { id: 1, name: 'John' });\n * ```\n */\n info(color: A_LoggerColorName, ...args: any[]): void;\n info(...args: any[]): void;\n info(param1: any, ...args: any[]): void {\n if (!this.shouldLog('info')) return;\n\n // Check if first parameter is a valid color key\n if (typeof param1 === 'string' && this.COLORS[param1 as keyof typeof this.COLORS]) {\n console.log(...this.compile(param1 as keyof typeof this.COLORS, ...args));\n } else {\n // Use instance's default log color and treat param1 as first message argument\n console.log(...this.compile(this.DEFAULT_LOG_COLOR, param1, ...args));\n }\n }\n\n /**\n * Legacy log method (kept for backward compatibility)\n * @deprecated Use info() method instead\n * \n * @param color - Optional color name from A_LoggerColorName enum or the first message argument\n * @param args - Additional arguments to log\n */\n log(color: A_LoggerColorName, ...args: any[]): void;\n log(...args: any[]): void;\n log(param1: any, ...args: any[]): void {\n // Delegate to info method for backward compatibility\n this.info(param1, ...args);\n }\n\n /**\n * Log warning messages with yellow color coding\n * \n * Use for non-critical issues that should be brought to attention\n * but don't prevent normal operation\n * \n * @param args - Arguments to log as warnings\n * \n * @example\n * ```typescript\n * logger.warning('Deprecated method used');\n * logger.warning('Rate limit approaching:', { current: 95, limit: 100 });\n * ```\n */\n warning(...args: any[]): void {\n if (!this.shouldLog('warning')) return;\n console.log(...this.compile('yellow', ...args));\n }\n\n /**\n * Log error messages with red color coding\n * \n * Use for critical issues, exceptions, and failures that need immediate attention\n * \n * @param args - Arguments to log as errors\n * @returns void (for compatibility with console.log)\n * \n * @example\n * ```typescript\n * logger.error('Database connection failed');\n * logger.error(new Error('Validation failed'));\n * logger.error('Critical error:', error, { context: 'user-registration' });\n * ```\n */\n error(...args: any[]): void {\n if (!this.shouldLog('error')) return;\n console.log(...this.compile('red', ...args));\n }\n\n // =============================================\n // Specialized Error Formatting\n // =============================================\n\n /**\n * Legacy method for A_Error logging (kept for backward compatibility)\n * \n * @deprecated Use error() method instead which handles A_Error automatically\n * @param error - The A_Error instance to log\n */\n protected log_A_Error(error: A_Error): void {\n const time = this.getTime();\n const scopePadding = ' '.repeat(this.STANDARD_SCOPE_LENGTH + 3);\n\n console.log(`\\x1b[31m[${this.formattedScope}] |${time}| ERROR ${error.code}\n${scopePadding}| ${error.message}\n${scopePadding}| ${error.description} \n${scopePadding}|-------------------------------\n${scopePadding}| ${error.stack?.split('\\n').map((line, index) => index === 0 ? line : `${scopePadding}| ${line}`).join('\\n') || 'No stack trace'}\n${scopePadding}|-------------------------------\n\\x1b[0m`\n + (error.originalError ? `\\x1b[31m${scopePadding}| Wrapped From ${error.originalError.message}\n${scopePadding}|-------------------------------\n${scopePadding}| ${error.originalError.stack?.split('\\n').map((line, index) => index === 0 ? line : `${scopePadding}| ${line}`).join('\\n') || 'No stack trace'}\n${scopePadding}|-------------------------------\n\\x1b[0m`: '')\n + (error.link ? `\\x1b[31m${scopePadding}| Read in docs: ${error.link}\n${scopePadding}|-------------------------------\n\\x1b[0m`: ''));\n }\n\n /**\n * Format A_Error instances for inline display within compiled messages\n * \n * Provides detailed formatting for A_Error objects with:\n * - Error code, message, and description\n * - Original error information FIRST (better UX for debugging)\n * - Stack traces with terminal width awareness\n * - Documentation links (if available)\n * - Consistent formatting with rest of logger\n * \n * @param error - The A_Error instance to format\n * @returns Formatted string ready for display\n */\n protected compile_A_Error(error: A_Error): string {\n const continuationIndent = `${' '.repeat(this.STANDARD_SCOPE_LENGTH + 3)}${A_LOGGER_FORMAT.PIPE}`;\n const separator = `${continuationIndent}-------------------------------`;\n const lines: string[] = [];\n\n // Add error header\n lines.push('');\n lines.push(separator);\n lines.push(`${continuationIndent}A_ERROR: ${error.code}`);\n lines.push(separator);\n\n // Format and wrap error message and description\n const errorMessage = this.wrapText(`Message: ${error.message}`, continuationIndent, false);\n const errorDescription = this.wrapText(`Description: ${error.description}`, continuationIndent, false);\n\n lines.push(...errorMessage.map(line => `${continuationIndent}${line}`));\n lines.push(...errorDescription.map(line => `${continuationIndent}${line}`));\n\n // Show original error FIRST (more important for debugging)\n if (error.originalError) {\n lines.push(separator);\n lines.push(`${continuationIndent}ORIGINAL ERROR:`);\n lines.push(separator);\n\n const originalMessage = this.wrapText(`${error.originalError.name}: ${error.originalError.message}`, continuationIndent, false);\n lines.push(...originalMessage.map(line => `${continuationIndent}${line}`));\n\n if (error.originalError.stack) {\n lines.push(`${continuationIndent}Stack trace:`);\n const stackLines = this.formatStackTrace(error.originalError.stack, continuationIndent);\n lines.push(...stackLines);\n }\n }\n\n // Then show A_Error stack trace\n if (error.stack) {\n lines.push(separator);\n lines.push(`${continuationIndent}A_ERROR STACK:`);\n lines.push(separator);\n const stackLines = this.formatStackTrace(error.stack, continuationIndent);\n lines.push(...stackLines);\n }\n\n // Documentation link at the end\n if (error.link) {\n lines.push(separator);\n const linkText = this.wrapText(`Documentation: ${error.link}`, continuationIndent, false);\n lines.push(...linkText.map(line => `${continuationIndent}${line}`));\n }\n\n lines.push(separator);\n\n return lines.join('\\n');\n }\n\n /**\n * Format stack trace with proper terminal width wrapping and indentation\n * \n * @param stack - The stack trace string\n * @param baseIndent - Base indentation for continuation lines\n * @returns Array of formatted stack trace lines\n */\n private formatStackTrace(stack: string, baseIndent: string): string[] {\n const stackLines = stack.split('\\n');\n const formatted: string[] = [];\n\n stackLines.forEach((line, index) => {\n if (line.trim()) {\n // Add extra indentation for stack trace lines\n const stackIndent = index === 0 ? baseIndent : `${baseIndent} `;\n const wrappedLines = this.wrapText(line.trim(), stackIndent, false);\n formatted.push(...wrappedLines.map(wrappedLine =>\n index === 0 && wrappedLine === wrappedLines[0]\n ? `${baseIndent}${wrappedLine}`\n : `${baseIndent} ${wrappedLine}`\n ));\n }\n });\n\n return formatted;\n }\n\n /**\n * Format standard Error instances for inline display within compiled messages\n * \n * Provides clean, readable formatting for standard JavaScript errors with:\n * - Terminal width aware message wrapping\n * - Properly formatted stack traces\n * - Consistent indentation with rest of logger\n * \n * @param error - The Error instance to format\n * @returns Formatted string ready for display\n */\n protected compile_Error(error: Error): string {\n const continuationIndent = `${' '.repeat(this.STANDARD_SCOPE_LENGTH + 3)}${A_LOGGER_FORMAT.PIPE}`;\n const separator = `${continuationIndent}-------------------------------`;\n const lines: string[] = [];\n\n // Add error header\n lines.push('');\n lines.push(separator);\n lines.push(`${continuationIndent}ERROR: ${error.name}`);\n lines.push(separator);\n\n // Format and wrap error message\n const errorMessage = this.wrapText(`Message: ${error.message}`, continuationIndent, false);\n lines.push(...errorMessage.map(line => `${continuationIndent}${line}`));\n\n // Format stack trace if available\n if (error.stack) {\n lines.push(separator);\n lines.push(`${continuationIndent}STACK TRACE:`);\n lines.push(separator);\n const stackLines = this.formatStackTrace(error.stack, continuationIndent);\n lines.push(...stackLines);\n }\n\n lines.push(separator);\n\n return lines.join('\\n');\n }\n\n // =============================================\n // Utility Methods\n // =============================================\n\n /**\n * Generate timestamp string for log messages\n * \n * Format: MM:SS:mmm (minutes:seconds:milliseconds)\n * This provides sufficient precision for debugging while remaining readable\n * \n * @returns Formatted timestamp string\n * \n * @example\n * Returns: \"15:42:137\" for 3:42:15 PM and 137 milliseconds\n */\n protected getTime(): string {\n const now = new Date();\n const minutes = String(now.getMinutes()).padStart(A_LOGGER_TIME_FORMAT.MINUTES_PAD, '0');\n const seconds = String(now.getSeconds()).padStart(A_LOGGER_TIME_FORMAT.SECONDS_PAD, '0');\n const milliseconds = String(now.getMilliseconds()).padStart(A_LOGGER_TIME_FORMAT.MILLISECONDS_PAD, '0');\n return `${minutes}${A_LOGGER_TIME_FORMAT.SEPARATOR}${seconds}${A_LOGGER_TIME_FORMAT.SEPARATOR}${milliseconds}`;\n }\n}","\n\nexport const A_LoggerEnvVariables = {\n /**\n * Sets the log level for the logger\n * \n * @example 'debug', 'info', 'warn', 'error'\n */\n A_LOGGER_LEVEL: 'A_LOGGER_LEVEL',\n\n /** \n * Sets the default scope length for log messages\n * \n * @example 'A_LOGGER_DEFAULT_SCOPE_LENGTH'\n */\n A_LOGGER_DEFAULT_SCOPE_LENGTH: 'A_LOGGER_DEFAULT_SCOPE_LENGTH',\n\n /**\n * Sets the default color for scope display in log messages\n * \n * @example 'green', 'blue', 'red', 'yellow', 'gray', 'magenta', 'cyan', 'white', 'pink'\n */\n A_LOGGER_DEFAULT_SCOPE_COLOR: 'A_LOGGER_DEFAULT_SCOPE_COLOR',\n\n /**\n * Sets the default color for log message content\n * \n * @example 'green', 'blue', 'red', 'yellow', 'gray', 'magenta', 'cyan', 'white', 'pink'\n */\n A_LOGGER_DEFAULT_LOG_COLOR: 'A_LOGGER_DEFAULT_LOG_COLOR',\n} as const;\n\n\n\nexport const A_LoggerEnvVariablesArray = [\n A_LoggerEnvVariables.A_LOGGER_LEVEL,\n A_LoggerEnvVariables.A_LOGGER_DEFAULT_SCOPE_LENGTH,\n A_LoggerEnvVariables.A_LOGGER_DEFAULT_SCOPE_COLOR,\n A_LoggerEnvVariables.A_LOGGER_DEFAULT_LOG_COLOR,\n] as const;\n\n\nexport type A_LoggerEnvVariablesType = (typeof A_LoggerEnvVariables)[keyof typeof A_LoggerEnvVariables][];"]}
@@ -0,0 +1,56 @@
1
+ import { __decorateClass } from './chunk-EQQGB2QZ.mjs';
2
+ import { A_Fragment, A_Meta } from '@adaas/a-concept';
3
+ import { A_Frame } from '@adaas/a-frame';
4
+
5
+ var A_ExecutionContext = class extends A_Fragment {
6
+ constructor(name, defaults) {
7
+ super({ name });
8
+ this._meta = new A_Meta();
9
+ for (const key in defaults) {
10
+ this._meta.set(key, defaults[key]);
11
+ }
12
+ }
13
+ [Symbol.iterator]() {
14
+ return this._meta[Symbol.iterator]();
15
+ }
16
+ get meta() {
17
+ return this._meta;
18
+ }
19
+ get(key) {
20
+ return this._meta.get(key);
21
+ }
22
+ set(key, value) {
23
+ this._meta.set(key, value);
24
+ return this;
25
+ }
26
+ has(key) {
27
+ return this._meta.has(key);
28
+ }
29
+ drop(key) {
30
+ this._meta.delete(key);
31
+ }
32
+ clear() {
33
+ this._meta.clear();
34
+ return this;
35
+ }
36
+ toRaw() {
37
+ return this._meta.toJSON();
38
+ }
39
+ toJSON() {
40
+ return {
41
+ name: this.name,
42
+ ...this.meta.toJSON()
43
+ };
44
+ }
45
+ };
46
+ A_ExecutionContext = __decorateClass([
47
+ A_Frame.Fragment({
48
+ namespace: "A-Utils",
49
+ name: "A-ExecutionContext",
50
+ description: "Execution context fragment that provides a structured way to manage metadata and serialized data for execution environments. It allows storing and retrieving key-value pairs, facilitating context-aware operations within the application. It useful in cases when it's necessary to share some runtime data across multiple steps of thee features, or components."
51
+ })
52
+ ], A_ExecutionContext);
53
+
54
+ export { A_ExecutionContext };
55
+ //# sourceMappingURL=chunk-TQ5UON22.mjs.map
56
+ //# sourceMappingURL=chunk-TQ5UON22.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/A-Execution/A-Execution.context.ts"],"names":[],"mappings":";;;;AAWO,IAAM,kBAAA,GAAN,cAGG,UAAA,CAAW;AAAA,EAKjB,WAAA,CACI,MACA,QAAA,EACF;AACE,IAAA,KAAA,CAAM,EAAE,MAAM,CAAA;AACd,IAAA,IAAA,CAAK,KAAA,GAAQ,IAAI,MAAA,EAAmC;AAEpD,IAAA,KAAA,MAAW,OAAO,QAAA,EAAU;AACxB,MAAA,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,GAAA,EAAwB,QAAA,CAAS,GAAsB,CAA+B,CAAA;AAAA,IACzG;AAAA,EACJ;AAAA,EAGA,CAAC,MAAA,CAAO,QAAQ,CAAA,GAA6D;AACzE,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,QAAQ,CAAA,EAAE;AAAA,EACvC;AAAA,EAGA,IAAI,IAAA,GAA0B;AAC1B,IAAA,OAAO,IAAA,CAAK,KAAA;AAAA,EAChB;AAAA,EAGA,IAA+B,GAAA,EAAkC;AAC7D,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,GAAG,CAAA;AAAA,EAC7B;AAAA,EAEA,GAAA,CAA+B,KAAQ,KAAA,EAA2B;AAC9D,IAAA,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,GAAA,EAAK,KAAK,CAAA;AACzB,IAAA,OAAO,IAAA;AAAA,EACX;AAAA,EAEA,IAAI,GAAA,EAA+B;AAC/B,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,GAAG,CAAA;AAAA,EAC7B;AAAA,EAEA,KAAK,GAAA,EAA4B;AAC7B,IAAA,IAAA,CAAK,KAAA,CAAM,OAAO,GAAG,CAAA;AAAA,EACzB;AAAA,EAEA,KAAA,GAAc;AACV,IAAA,IAAA,CAAK,MAAM,KAAA,EAAM;AACjB,IAAA,OAAO,IAAA;AAAA,EACX;AAAA,EAGA,KAAA,GAAyB;AACrB,IAAA,OAAO,IAAA,CAAK,MAAM,MAAA,EAAO;AAAA,EAC7B;AAAA,EAEA,MAAA,GAAuC;AACnC,IAAA,OAAO;AAAA,MACH,MAAM,IAAA,CAAK,IAAA;AAAA,MACX,GAAG,IAAA,CAAK,IAAA,CAAK,MAAA;AAAO,KACxB;AAAA,EACJ;AACJ;AAhEa,kBAAA,GAAN,eAAA,CAAA;AAAA,EALN,QAAQ,QAAA,CAAS;AAAA,IACd,SAAA,EAAW,SAAA;AAAA,IACX,IAAA,EAAM,oBAAA;AAAA,IACN,WAAA,EAAa;AAAA,GAChB;AAAA,CAAA,EACY,kBAAA,CAAA","file":"chunk-TQ5UON22.mjs","sourcesContent":["import { A_Fragment, A_Meta, A_TYPES__Fragment_Serialized } from \"@adaas/a-concept\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n\n\n@A_Frame.Fragment({\n namespace: 'A-Utils',\n name: 'A-ExecutionContext',\n description: 'Execution context fragment that provides a structured way to manage metadata and serialized data for execution environments. It allows storing and retrieving key-value pairs, facilitating context-aware operations within the application. It useful in cases when it\\'s necessary to share some runtime data across multiple steps of thee features, or components.'\n})\nexport class A_ExecutionContext<\n _MetaType extends Record<string, any> = Record<string, any>,\n _SerializedType extends Record<string, any> = Record<string, any>\n> extends A_Fragment {\n\n\n protected _meta: A_Meta<_MetaType, _SerializedType>;\n\n constructor(\n name: string,\n defaults?: Partial<_MetaType>,\n ) {\n super({ name });\n this._meta = new A_Meta<_MetaType, _SerializedType>();\n\n for (const key in defaults) {\n this._meta.set(key as keyof _MetaType, defaults[key as keyof _MetaType] as _MetaType[keyof _MetaType]);\n }\n }\n\n\n [Symbol.iterator](): Iterator<[keyof _MetaType, _MetaType[keyof _MetaType]]> {\n return this._meta[Symbol.iterator]();\n }\n\n\n get meta(): A_Meta<_MetaType> {\n return this._meta;\n }\n\n\n get<K extends keyof _MetaType>(key: K): _MetaType[K] | undefined {\n return this._meta.get(key);\n }\n\n set<K extends keyof _MetaType>(key: K, value: _MetaType[K]): this {\n this._meta.set(key, value);\n return this;\n }\n\n has(key: keyof _MetaType): boolean {\n return this._meta.has(key);\n }\n\n drop(key: keyof _MetaType): void {\n this._meta.delete(key);\n }\n\n clear(): this {\n this._meta.clear();\n return this;\n }\n\n\n toRaw(): _SerializedType {\n return this._meta.toJSON();\n }\n\n toJSON(): A_TYPES__Fragment_Serialized {\n return {\n name: this.name,\n ...this.meta.toJSON(),\n }\n }\n}"]}
@@ -0,0 +1,409 @@
1
+ import { A_Command_Status, A_CommandEvent, A_CommandTransitions, A_CommandFeatures } from './lib/A-Command/A-Command.constants.mjs';
2
+ import { A_TYPES__Error_Serialized, A_TYPES__Entity_Serialized, A_Entity, A_Scope, A_Error } from '@adaas/a-concept';
3
+ import { A_StateMachine } from './lib/A-StateMachine/A-StateMachine.component.mjs';
4
+ import { A_StateMachineTransition } from './lib/A-StateMachine/A-StateMachineTransition.context.mjs';
5
+ import { A_ExecutionContext } from './lib/A-Execution/A-Execution.context.mjs';
6
+ import { A_StateMachineFeatures } from './lib/A-StateMachine/A-StateMachine.constants.mjs';
7
+ import { A_Logger } from './lib/A-Logger/A-Logger.component.mjs';
8
+
9
+ /**
10
+ * Command Constructor Type
11
+ *
12
+ * Generic constructor type for creating command instances.
13
+ * Used for dependency injection and factory patterns.
14
+ *
15
+ * @template T - The command class type extending A_Command
16
+ */
17
+ type A_TYPES__Command_Constructor<T = A_Command> = new (...args: any[]) => T;
18
+ /**
19
+ * Command Initialization Parameters
20
+ *
21
+ * Base type for command parameters. Commands should extend this with
22
+ * specific parameter types for their use case.
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * interface UserCommandParams extends A_TYPES__Command_Init {
27
+ * userId: string;
28
+ * action: 'create' | 'update' | 'delete';
29
+ * }
30
+ * ```
31
+ */
32
+ type A_TYPES__Command_Init = Record<string, any>;
33
+ /**
34
+ * Command Serialized Format
35
+ *
36
+ * Complete serialized representation of a command including all state,
37
+ * timing information, results, and errors. Used for persistence,
38
+ * transmission between services, and state restoration.
39
+ *
40
+ * @template ParamsType - Type of command parameters
41
+ * @template ResultType - Type of command execution result
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * const serialized: A_TYPES__Command_Serialized<
46
+ * { userId: string },
47
+ * { success: boolean }
48
+ * > = command.toJSON();
49
+ * ```
50
+ */
51
+ type A_TYPES__Command_Serialized<ParamsType extends Record<string, any> = Record<string, any>, ResultType extends Record<string, any> = Record<string, any>> = {
52
+ /**
53
+ * Unique identifier for the command type (derived from class name)
54
+ */
55
+ code: string;
56
+ /**
57
+ * Current execution status of the command
58
+ */
59
+ status: A_Command_Status;
60
+ /**
61
+ * Parameters used to initialize the command
62
+ */
63
+ params: ParamsType;
64
+ /**
65
+ * ISO timestamp when the command was created
66
+ */
67
+ createdAt: string;
68
+ /**
69
+ * ISO timestamp when command execution started (if started)
70
+ */
71
+ startedAt?: string;
72
+ /**
73
+ * ISO timestamp when command execution ended (if completed/failed)
74
+ */
75
+ endedAt?: string;
76
+ /**
77
+ * Total execution duration in milliseconds (if completed/failed)
78
+ */
79
+ duration?: number;
80
+ /**
81
+ * Time between creation and execution start in milliseconds
82
+ */
83
+ idleTime?: number;
84
+ /**
85
+ * Result data produced by successful command execution
86
+ */
87
+ result?: ResultType;
88
+ /**
89
+ * Array of serialized errors that occurred during execution
90
+ */
91
+ error?: A_TYPES__Error_Serialized;
92
+ } & A_TYPES__Entity_Serialized;
93
+ /**
94
+ * Command Event Listener Function
95
+ *
96
+ * Type definition for event listener functions that can be registered
97
+ * to respond to command lifecycle events.
98
+ *
99
+ * @template InvokeType - Type of command initialization parameters
100
+ * @template ResultType - Type of command execution result
101
+ * @template LifecycleEvents - Union type of custom lifecycle event names
102
+ *
103
+ * @param command - The command instance that triggered the event
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * const listener: A_TYPES__Command_Listener<UserParams, UserResult> = (command) => {
108
+ * console.log(`Command ${command?.code} triggered event`);
109
+ * };
110
+ *
111
+ * command.on('onExecute', listener);
112
+ * ```
113
+ */
114
+ type A_TYPES__Command_Listener<InvokeType extends A_TYPES__Command_Init = A_TYPES__Command_Init, ResultType extends Record<string, any> = Record<string, any>, LifecycleEvents extends string = keyof typeof A_CommandEvent> = (command?: A_Command<InvokeType, ResultType, LifecycleEvents>) => void;
115
+ type A_Command_ExecutionContext<InvokeType extends A_TYPES__Command_Init = A_TYPES__Command_Init, ResultType extends Record<string, any> = Record<string, any>> = {
116
+ result: ResultType;
117
+ params: InvokeType;
118
+ };
119
+
120
+ /**
121
+ * A_Command - Advanced Command Pattern Implementation
122
+ *
123
+ * A comprehensive command pattern implementation that encapsulates business logic
124
+ * as executable commands with full lifecycle management, event handling, and
125
+ * state persistence capabilities.
126
+ *
127
+ * ## Key Features
128
+ * - **Structured Lifecycle**: Automatic progression through init → compile → execute → complete/fail
129
+ * - **Event-Driven**: Subscribe to lifecycle events and emit custom events
130
+ * - **State Persistence**: Full serialization/deserialization for cross-service communication
131
+ * - **Type Safety**: Generic types for parameters, results, and custom events
132
+ * - **Dependency Injection**: Integrated with A-Concept's DI system
133
+ * - **Error Management**: Comprehensive error capture and handling
134
+ * - **Execution Tracking**: Built-in timing and performance metrics
135
+ *
136
+ * ## Lifecycle Phases
137
+ * 1. **CREATED** - Command instantiated but not initialized
138
+ * 2. **INITIALIZED** - Execution scope and dependencies set up
139
+ * 3. **COMPILED** - Ready for execution with all resources prepared
140
+ * 4. **EXECUTING** - Currently running business logic
141
+ * 5. **COMPLETED** - Successfully finished execution
142
+ * 6. **FAILED** - Execution failed with errors captured
143
+ *
144
+ * @template InvokeType - Type definition for command parameters
145
+ * @template ResultType - Type definition for command execution result
146
+ * @template LifecycleEvents - Union type of custom lifecycle event names
147
+ *
148
+ * @example
149
+ * ```typescript
150
+ * // Define parameter and result types
151
+ * interface UserCreateParams {
152
+ * name: string;
153
+ * email: string;
154
+ * role: 'admin' | 'user';
155
+ * }
156
+ *
157
+ * interface UserCreateResult {
158
+ * userId: string;
159
+ * success: boolean;
160
+ * }
161
+ *
162
+ * // Create custom command
163
+ * class CreateUserCommand extends A_Command<UserCreateParams, UserCreateResult> {}
164
+ *
165
+ * // Execute command
166
+ * const command = new CreateUserCommand({
167
+ * name: 'John Doe',
168
+ * email: 'john@example.com',
169
+ * role: 'user'
170
+ * });
171
+ *
172
+ * scope.register(command);
173
+ * await command.execute();
174
+ *
175
+ * console.log('Result:', command.result);
176
+ * console.log('Status:', command.status);
177
+ * ```
178
+ */
179
+ declare class A_Command<InvokeType extends A_TYPES__Command_Init = A_TYPES__Command_Init, ResultType extends Record<string, any> = Record<string, any>, LifecycleEvents extends string | keyof typeof A_CommandEvent = keyof typeof A_CommandEvent> extends A_Entity<InvokeType, A_TYPES__Command_Serialized<InvokeType, ResultType>> {
180
+ /**
181
+ * Static command identifier derived from the class name
182
+ * Used for command registration and serialization
183
+ */
184
+ static get code(): string;
185
+ /** The origin of the command, used to know has it been created from serialization or invoked */
186
+ protected _origin: 'invoked' | 'serialized';
187
+ /** Command execution scope for dependency injection and feature resolution */
188
+ protected _executionScope: A_Scope;
189
+ /** Result data produced by successful command execution */
190
+ protected _result?: ResultType;
191
+ /** Set of errors that occurred during command execution */
192
+ protected _error: A_Error;
193
+ /** Command initialization parameters */
194
+ protected _params: InvokeType;
195
+ /** Current lifecycle status of the command */
196
+ protected _status: A_Command_Status;
197
+ /** Map of event listeners organized by event name */
198
+ protected _listeners: Map<LifecycleEvents | keyof typeof A_CommandEvent, Set<A_TYPES__Command_Listener<InvokeType, ResultType, LifecycleEvents>>>;
199
+ /** Timestamp when command execution started */
200
+ protected _startTime?: Date;
201
+ /** Timestamp when command execution ended */
202
+ protected _endTime?: Date;
203
+ /** Timestamp when command was created */
204
+ protected _createdAt: Date;
205
+ /**
206
+ * Total execution duration in milliseconds
207
+ *
208
+ * - If completed/failed: Returns total time from start to end
209
+ * - If currently executing: Returns elapsed time since start
210
+ * - If not started: Returns undefined
211
+ */
212
+ get duration(): number | undefined;
213
+ /**
214
+ * Idle time before execution started in milliseconds
215
+ *
216
+ * Time between command creation and execution start.
217
+ * Useful for monitoring command queue performance.
218
+ */
219
+ get idleTime(): number | undefined;
220
+ /**
221
+ * Command execution scope for dependency injection
222
+ *
223
+ * Provides access to components, services, and shared resources
224
+ * during command execution. Inherits from the scope where the
225
+ * command was registered.
226
+ */
227
+ get scope(): A_Scope;
228
+ /**
229
+ * Execution context associated with the command
230
+ */
231
+ get context(): A_ExecutionContext<A_Command_ExecutionContext<InvokeType, ResultType>>;
232
+ /**
233
+ * Unique command type identifier
234
+ *
235
+ * Derived from the class name and used for:
236
+ * - Command registration and resolution
237
+ * - Serialization and deserialization
238
+ * - Logging and debugging
239
+ *
240
+ * @example 'create-user-command', 'process-order-command'
241
+ */
242
+ get code(): string;
243
+ /**
244
+ * Current lifecycle status of the command
245
+ *
246
+ * Indicates the current phase in the command execution lifecycle.
247
+ * Used to track progress and determine available operations.
248
+ */
249
+ get status(): A_Command_Status;
250
+ /**
251
+ * Timestamp when the command was created
252
+ *
253
+ * Marks the initial instantiation time, useful for tracking
254
+ * command age and queue performance metrics.
255
+ */
256
+ get createdAt(): Date;
257
+ /**
258
+ * Timestamp when command execution started
259
+ *
260
+ * Undefined until execution begins. Used for calculating
261
+ * execution duration and idle time.
262
+ */
263
+ get startedAt(): Date | undefined;
264
+ /**
265
+ * Timestamp when command execution ended
266
+ *
267
+ * Set when command reaches COMPLETED or FAILED status.
268
+ * Used for calculating total execution duration.
269
+ */
270
+ get endedAt(): Date | undefined;
271
+ /**
272
+ * Result data produced by command execution
273
+ *
274
+ * Contains the output data from successful command execution.
275
+ * Undefined until command completes successfully.
276
+ */
277
+ get result(): ResultType | undefined;
278
+ /**
279
+ * Array of errors that occurred during execution
280
+ *
281
+ * Automatically wraps native errors in A_Error instances
282
+ * for consistent error handling. Empty array if no errors occurred.
283
+ */
284
+ get error(): A_Error | undefined;
285
+ /**
286
+ * Command initialization parameters
287
+ *
288
+ * Contains the input data used to create and configure the command.
289
+ * These parameters are immutable during command execution.
290
+ return new A_Error(err);
291
+ }
292
+ });
293
+ }
294
+
295
+ /**
296
+ * Command initialization parameters
297
+ *
298
+ * Contains the input data used to create and configure the command.
299
+ * These parameters are immutable during command execution.
300
+ */
301
+ get params(): InvokeType;
302
+ /**
303
+ * Indicates if the command has been processed (completed or failed)
304
+ *
305
+ * Returns true if the command has completed or failed, false otherwise.
306
+ */
307
+ get isProcessed(): boolean;
308
+ /**
309
+ *
310
+ * A-Command represents an executable command with a specific code and parameters.
311
+ * It can be executed within a given scope and stores execution results and errors.
312
+ *
313
+ *
314
+ * A-Command should be context independent and execution logic should be based on attached components
315
+ *
316
+ * @param code
317
+ * @param params
318
+ */
319
+ constructor(
320
+ /**
321
+ * Command invocation parameters
322
+ */
323
+ params: InvokeType | A_TYPES__Command_Serialized<InvokeType, ResultType> | string);
324
+ protected [A_StateMachineFeatures.onBeforeTransition](transition: A_StateMachineTransition, logger?: A_Logger, ...args: any[]): Promise<void>;
325
+ protected [A_CommandTransitions.CREATED_TO_INITIALIZED](transition: A_StateMachineTransition, ...args: any[]): Promise<void>;
326
+ protected [A_CommandTransitions.INITIALIZED_TO_EXECUTING](transition: A_StateMachineTransition, ...args: any[]): Promise<void>;
327
+ protected [A_CommandTransitions.EXECUTING_TO_COMPLETED](transition: A_StateMachineTransition, ...args: any[]): Promise<void>;
328
+ protected [A_CommandTransitions.EXECUTING_TO_FAILED](transition: A_StateMachineTransition, error: A_Error, ...args: any[]): Promise<void>;
329
+ protected [A_CommandFeatures.onInit](stateMachine: A_StateMachine, ...args: any[]): Promise<void>;
330
+ protected [A_CommandFeatures.onBeforeExecute](stateMachine: A_StateMachine, ...args: any[]): Promise<void>;
331
+ protected [A_CommandFeatures.onExecute](...args: any[]): Promise<void>;
332
+ protected [A_CommandFeatures.onAfterExecute](...args: any[]): Promise<void>;
333
+ protected [A_CommandFeatures.onComplete](stateMachine: A_StateMachine, ...args: any[]): Promise<void>;
334
+ protected [A_CommandFeatures.onFail](stateMachine: A_StateMachine, operation: A_ExecutionContext<A_Command_ExecutionContext<InvokeType, ResultType>>, ...args: any[]): Promise<void>;
335
+ /**
336
+ * Initializes the command before execution.
337
+ */
338
+ init(): Promise<void>;
339
+ /**
340
+ * Executes the command logic.
341
+ */
342
+ execute(): Promise<any>;
343
+ /**
344
+ * Marks the command as completed
345
+ *
346
+ *
347
+ * Calling This method will set the command status to COMPLETED, record the end time,
348
+ * store the result, emit the onComplete event, and destroy the execution scope.
349
+ *
350
+ * [!] After Calling this method, the command is considered fully processed And further processing will be INTERRUPTED.
351
+ * [!] If the command is already processed (COMPLETED or FAILED), this method does nothing.
352
+ * [!] This method can be called with optional result data to store with the command.
353
+ *
354
+ * @param result - Optional result data to store with the command
355
+ */
356
+ complete(result?: ResultType): Promise<void>;
357
+ /**
358
+ * Marks the command as failed
359
+ */
360
+ fail(error?: A_Error): Promise<void>;
361
+ /**
362
+ * Registers an event listener for a specific event
363
+ *
364
+ * @param event
365
+ * @param listener
366
+ */
367
+ on(event: LifecycleEvents | A_CommandEvent, listener: A_TYPES__Command_Listener<InvokeType, ResultType, LifecycleEvents>): void;
368
+ /**
369
+ * Removes an event listener for a specific event
370
+ *
371
+ * @param event
372
+ * @param listener
373
+ */
374
+ off(event: LifecycleEvents | A_CommandEvent, listener: A_TYPES__Command_Listener<InvokeType, ResultType, LifecycleEvents>): void;
375
+ /**
376
+ * Emits an event to all registered listeners
377
+ *
378
+ * @param event
379
+ */
380
+ emit(event: LifecycleEvents | keyof typeof A_CommandEvent): void;
381
+ /**
382
+ * Allows to create a Command instance from new data
383
+ *
384
+ * @param newEntity
385
+ */
386
+ fromNew(newEntity: InvokeType): void;
387
+ /**
388
+ * Allows to convert serialized data to Command instance
389
+ *
390
+ * [!] By default it omits params as they are not stored in the serialized data
391
+ *
392
+ * @param serialized
393
+ */
394
+ fromJSON(serialized: A_TYPES__Command_Serialized<InvokeType, ResultType>): void;
395
+ /**
396
+ * Converts the Command instance to a plain object
397
+ *
398
+ * @returns
399
+ */
400
+ toJSON(): A_TYPES__Command_Serialized<InvokeType, ResultType>;
401
+ /**
402
+ * Ensures that the command's execution scope inherits from the context scope
403
+ *
404
+ * Throws an error if the command is not bound to any context scope
405
+ */
406
+ protected checkScopeInheritance(): void;
407
+ }
408
+
409
+ export { A_Command as A, type A_Command_ExecutionContext as a, type A_TYPES__Command_Constructor as b, type A_TYPES__Command_Init as c, type A_TYPES__Command_Listener as d, type A_TYPES__Command_Serialized as e };