@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-Signal/entities/A-Signal.entity.ts","../../src/lib/A-Signal/entities/A-SignalVector.entity.ts","../../src/lib/A-Signal/context/A-SignalState.context.ts","../../src/lib/A-Signal/context/A-SignalConfig.context.ts","../../src/lib/A-Signal/components/A-SignalBus.constants.ts","../../src/lib/A-Signal/components/A-SignalBus.error.ts","../../src/lib/A-Signal/components/A-SignalBus.component.ts"],"names":["A_Entity","A_Frame","A_Fragment","A_Context","A_SignalBusFeatures","A_Scope","A_Error"],"mappings":"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","file":"a-signal.mjs","sourcesContent":["import { A_Entity, A_Scope } from \"@adaas/a-concept\";\nimport { A_Signal_Init, A_Signal_Serialized } from \"../A-Signal.types\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n/**\n * A Signal Entity is an individual signal instance that carries data.\n * Signals is a event types that uses for vectors of signals to be used for further processing. \n * \n * Comparing to standard events, signals should be used in case when the event impacts some \"state\" \n * and the state should be used instead of the event itself.\n * \n * For example, a signal can represent the current status of a user (online/offline/away), \n * while an event would represent a single action (user logged in/logged out).\n * \n * Signals are typically used in scenarios where the current state is more important than individual events, \n * such as monitoring systems, real-time dashboards, or stateful applications.\n */\n@A_Frame.Entity({\n namespace: 'A-Utils',\n name: 'A-Signal',\n description: 'A Signal Entity represents an individual signal instance that carries data, used for managing state within an application context. Signals are designed to reflect the current state rather than individual events, making them suitable for scenarios where state monitoring and real-time updates are essential.'\n})\nexport class A_Signal<\n _TSignalDataType extends Record<string, any> = Record<string, any>\n> extends A_Entity<A_Signal_Init<_TSignalDataType>, A_Signal_Serialized<_TSignalDataType>> {\n\n\n // ========================================================================\n // ========================== Static Methods ==============================\n // ========================================================================\n /**\n * Allows to define default data for the signal.\n * \n * If no data is provided during initialization, the default data will be used.\n * \n * @returns \n */\n static async default(): Promise<A_Signal | undefined> {\n return undefined;\n }\n\n // ========================================================================\n // ========================== Instance Properties ========================\n // ========================================================================\n\n /**\n * The actual data carried by the signal.\n */\n data!: _TSignalDataType;\n\n /**\n * Generates signal hash uses for comparison\n * \n * @param str \n */\n protected createHash(str?: string): string\n protected createHash(str?: undefined): string\n protected createHash(str?: Record<string, any>): string\n protected createHash(str?: Array<any>): string\n protected createHash(str?: number): string\n protected createHash(str?: boolean): string\n protected createHash(str?: null): string\n protected createHash(map?: Map<any, any>): string\n protected createHash(set?: Set<any>): string\n protected createHash(str?: any): string {\n let hashSource: string;\n\n if (str instanceof Map) {\n hashSource = JSON.stringify(Array.from(str.entries()));\n } else if (str instanceof Set) {\n hashSource = JSON.stringify(Array.from(str.values()));\n } else {\n switch (typeof str) {\n case 'string':\n hashSource = str;\n break;\n case 'undefined':\n hashSource = 'undefined';\n break;\n\n case 'object':\n if ('toJSON' in str)\n hashSource = JSON.stringify(str.toJSON());\n\n else\n hashSource = JSON.stringify(str);\n break;\n case 'number':\n hashSource = str.toString();\n break;\n case 'boolean':\n hashSource = str ? 'true' : 'false';\n break;\n case 'function':\n hashSource = str.toString();\n break;\n default:\n hashSource = String(str);\n }\n }\n\n let hash = 0, i, chr;\n for (i = 0; i < hashSource.length; i++) {\n chr = hashSource.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0; // Convert to 32bit integer\n }\n\n const hashString = hash.toString();\n\n return hashString;\n }\n\n /**\n * This method compares the current signal with another signal instance by deduplication ID\n * this id can be configured during initialization with the \"id\" property.\n * \n * example: \n * * const signalA = new A_Signal({ id: ['user-status', 'user123'], data: { status: 'online' } });\n * * const signalB = new A_Signal({ id: ['user-status', 'user123'], data: { status: 'offline' } });\n * \n * signalA.compare(signalB) // true because both signals have the same deduplication ID\n * \n * @param other \n * @returns \n */\n compare(other: A_Signal<_TSignalDataType>): boolean {\n if (this.aseid.id !== other.aseid.id) {\n return false;\n }\n\n return true;\n }\n \n\n\n fromJSON(serializedEntity: A_Signal_Serialized<_TSignalDataType>): void {\n super.fromJSON(serializedEntity);\n this.data = serializedEntity.data;\n }\n\n\n fromNew(newEntity: A_Signal_Init<_TSignalDataType>): void {\n this.data = newEntity.data;\n\n const identity = newEntity.id || {\n name: newEntity.name,\n data: this.data\n };\n\n const id = this.createHash(identity);\n\n this.aseid = this.generateASEID({\n entity: newEntity.name,\n id: id,\n });\n }\n\n\n toJSON(): A_Signal_Serialized<_TSignalDataType> {\n return {\n ...super.toJSON(),\n data: this.data\n };\n }\n\n}","import { A_Entity, A_Scope, A_TYPES__Component_Constructor, A_TYPES__Entity_Constructor } from \"@adaas/a-concept\";\nimport { A_SignalVector_Serialized, A_SignalVector_Init, A_Signal_TSignalsConstructors, A_SignalTValue, A_SignalTValueArray } from \"../A-Signal.types\";\nimport { A_Signal } from \"./A-Signal.entity\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n/**\n * A Signal Vector Entity is a collection of signals structured in a specific way.\n * It allows grouping multiple signals together for batch processing or transmission.\n * \n * Signal Vectors are useful in scenarios where multiple related signals need to be handled together,\n * as a state of the system or a snapshot of various parameters at a given time.\n * \n * @template TSignalsConstructors - Array of signal constructor types (e.g., [typeof MySignal, typeof CustomSignal])\n * @template TSignals - Array of signal instances derived from constructors\n */\n@A_Frame.Entity({\n namespace: 'A-Utils',\n name: 'A-SignalVector',\n description: 'A Signal Vector Entity represents a collection of signals structured in a specific way, allowing for batch processing and transmission of related signals as a unified state representation.'\n})\nexport class A_SignalVector<\n TSignals extends A_Signal[] = A_Signal[],\n> extends A_Entity<A_SignalVector_Init<TSignals>> {\n\n /**\n * The structure of the signal vector, defining the types of signals it contains.\n * \n * For example:\n * [UserSignInSignal, UserStatusSignal, UserActivitySignal]\n * \n * [!] if not provided, it will be derived from the signals values.\n */\n protected _structure?: A_Signal_TSignalsConstructors<TSignals>;\n /**\n * It's actual vector Values of Signals like :\n * [UserActionSignal, UserMousePositionSignal, ExternalDependencySignal]\n */\n protected _signals!: TSignals\n\n constructor(values: TSignals, structure?: { [K in keyof TSignals]: TSignals[K] extends A_Signal ? A_TYPES__Entity_Constructor<TSignals[K]> : never })\n constructor(serialized: A_SignalVector_Serialized)\n constructor(param1: TSignals | A_SignalVector_Serialized, param2?: A_Signal_TSignalsConstructors<TSignals>) {\n\n if ('aseid' in param1) {\n // Handle serialized case\n super(param1 as A_SignalVector_Serialized);\n } else {\n // Handle init case \n super({\n structure: param2 ? param2 : (param1 as TSignals).map(s => s.constructor as A_TYPES__Entity_Constructor<TSignals[number]>) as A_Signal_TSignalsConstructors<TSignals>,\n values: param1 as TSignals\n } as A_SignalVector_Init<TSignals>);\n }\n }\n\n\n fromNew(newEntity: A_SignalVector_Init<TSignals>): void {\n super.fromNew(newEntity);\n this._structure = newEntity.structure;\n this._signals = newEntity.values;\n }\n\n /**\n * The structure of the signal vector, defining the types of signals it contains.\n * \n * For example:\n * [UserSignInSignal, UserStatusSignal, UserActivitySignal]\n * \n */\n get structure(): A_Signal_TSignalsConstructors<TSignals> {\n return this._structure || this._signals.map(s => s.constructor as A_TYPES__Entity_Constructor<TSignals[number]>) as A_Signal_TSignalsConstructors<TSignals>;\n }\n\n\n get length(): number {\n return this.structure.length;\n }\n\n\n /**\n * Enables iteration over the signals in the vector.\n * \n * @returns \n */\n [Symbol.iterator](): Iterator<TSignals[number]> {\n let pointer = 0;\n const signals = this.structure.map((signalConstructor) => {\n const signalIndex = this._signals.findIndex(s => s.constructor === signalConstructor);\n return signalIndex !== -1 ? this._signals[signalIndex] : undefined;\n }) as TSignals[number][];\n\n return {\n next(): IteratorResult<TSignals[number]> {\n if (pointer < signals.length) {\n return {\n done: false,\n value: signals[pointer++]\n };\n } else {\n return {\n done: true,\n value: undefined as any\n };\n }\n }\n };\n }\n\n\n /**\n * Allows to match the current Signal Vector with another Signal Vector by comparing each signal in the structure.\n * This method returns true if all signals in the vector match the corresponding signals in the other vector.\n * \n * @param other \n * @returns \n */\n match(other: A_SignalVector<TSignals>): boolean {\n if (this.length !== other.length) {\n return false;\n }\n\n for (let i = 0; i < this.length; i++) {\n const thisSignalConstructor = this.structure[i];\n const otherSignalConstructor = other.structure[i];\n\n if (thisSignalConstructor !== otherSignalConstructor) {\n return false;\n }\n\n const thisSignalIndex = this._signals.findIndex(s => s.constructor === thisSignalConstructor);\n const otherSignalIndex = other._signals.findIndex(s => s.constructor === otherSignalConstructor);\n\n const thisSignal = thisSignalIndex !== -1 ? this._signals[thisSignalIndex] : undefined;\n const otherSignal = otherSignalIndex !== -1 ? other._signals[otherSignalIndex] : undefined;\n\n if (thisSignal && otherSignal) {\n if (!thisSignal.compare(otherSignal)) {\n return false;\n }\n } else if (thisSignal || otherSignal) {\n return false;\n }\n }\n\n return true;\n }\n\n \n /**\n * This method should ensure that the current Signal Vector contains all signals from the provided Signal Vector.\n * \n * @param signal \n */\n contains(signal: A_SignalVector): boolean{\n for (const signalConstructor of signal.structure) {\n const signalIndex = this._signals.findIndex(s => s.constructor === signalConstructor);\n if (signalIndex === -1) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Checks if the vector contains a signal of the specified type.\n * \n * @param signal \n */\n has(signal: A_Signal): boolean\n has(signalConstructor: A_TYPES__Entity_Constructor<A_Signal>): boolean\n has(param1: A_Signal | A_TYPES__Entity_Constructor<A_Signal>): boolean {\n let signalConstructor: A_TYPES__Entity_Constructor<A_Signal>;\n if (param1 instanceof A_Entity) {\n signalConstructor = param1.constructor as A_TYPES__Entity_Constructor<A_Signal>;\n } else {\n signalConstructor = param1;\n }\n return this.structure.includes(signalConstructor as any);\n }\n\n /**\n * Retrieves the signal of the specified type from the vector.\n * \n * @param signal \n */\n get<T extends A_Signal>(signal: T): T | undefined\n get<T extends A_Signal>(signalConstructor: A_TYPES__Entity_Constructor<T>): T | undefined\n get<T extends A_Signal>(param1: T | A_TYPES__Entity_Constructor<T>): T | undefined {\n let signalConstructor: A_TYPES__Entity_Constructor<A_Signal>;\n\n if (param1 instanceof A_Entity) {\n signalConstructor = param1.constructor as A_TYPES__Entity_Constructor<A_Signal>;\n } else {\n signalConstructor = param1 as A_TYPES__Entity_Constructor<A_Signal>;\n }\n\n const index = this._signals.findIndex(s => s.constructor === signalConstructor);\n if (index === -1) {\n return undefined;\n }\n return this._signals[index] as T;\n }\n\n\n /**\n * Converts to Array of values of signals in the vector\n * Maintains the order specified in the structure/generic type\n * \n * @param structure - Optional structure to override the default ordering\n * @returns Array of signal instances in the specified order\n */\n async toVector<\n T extends Array<A_Signal> = TSignals,\n >(\n structure?: A_Signal_TSignalsConstructors<T>\n ): Promise<T> {\n const usedStructure = structure || this.structure;\n\n return usedStructure.map((signalConstructor) => {\n const signalIndex = this._signals.findIndex(s => s.constructor === signalConstructor);\n return signalIndex !== -1 ? this._signals[signalIndex] : undefined;\n }) as T;\n }\n\n\n /**\n * Converts to Array of data of signals in the vector\n * Maintains the order specified in the structure/generic type\n * \n * @param structure - Optional structure to override the default ordering\n * @returns Array of serialized signal data in the specified order\n */\n async toDataVector<\n T extends A_Signal[] = TSignals,\n >(\n structure?: A_Signal_TSignalsConstructors<T>\n ): Promise<A_SignalTValueArray<T>> {\n\n const usedStructure = structure || this.structure;\n\n const results: Array<any> = [];\n\n for (const signalConstructor of usedStructure) {\n const signalIndex = this._signals.findIndex(s => s.constructor === signalConstructor);\n let data: any;\n if (signalIndex === -1) {\n\n data = await (signalConstructor as typeof A_Signal).default()\n\n } else {\n const signal = this._signals[signalIndex];\n data = signal;\n }\n\n\n results.push(data?.toJSON().data);\n }\n\n return results as A_SignalTValueArray<T>;\n }\n\n /**\n * Converts to Object with signal constructor names as keys and their corresponding data values\n * Uses the structure ordering to ensure consistent key ordering\n * \n * @returns Object with signal constructor names as keys and signal data as values\n */\n async toObject<\n T extends Array<A_Signal> = TSignals,\n >(\n structure?: { [K in keyof T]: T[K] extends A_Signal ? A_TYPES__Entity_Constructor<T[K]> : never }\n ): Promise<{ [key: string]: T[number] extends A_Signal<infer D> ? D | undefined : never }> {\n\n const usedStructure = structure || this.structure;\n\n const obj: { [key: string]: T[number] extends A_Signal<infer D> ? D | undefined : never } = {};\n usedStructure.forEach((signalConstructor) => {\n const signalName = signalConstructor.name;\n const signalIndex = this._signals.findIndex(s => s.constructor === signalConstructor);\n\n if (signalIndex !== -1) {\n const signal = this._signals[signalIndex];\n obj[signalName] = signal.toJSON().data as any;\n } else {\n obj[signalName] = undefined as any;\n }\n });\n\n return obj;\n }\n\n\n /**\n * Serializes the Signal Vector to a JSON-compatible format.\n * \n * \n * @returns \n */\n toJSON(): A_SignalVector_Serialized {\n return {\n ...super.toJSON(),\n structure: this.structure.map(s => s.name),\n values: this._signals.map(s => s.toJSON())\n };\n }\n}\n","import { A_Context, A_Fragment, A_TYPES__Component_Constructor } from \"@adaas/a-concept\";\nimport { A_Signal } from \"../entities/A-Signal.entity\";\nimport { A_SignalVector } from \"../entities/A-SignalVector.entity\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n/**\n * A_SignalState manages the latest state of all signals within a given scope.\n * \n * This class maintains a mapping between signal constructors and their most recently emitted values,\n * providing a centralized state store for signal management within an application context.\n * \n * @template TSignalData - Union type of all possible signal data types that can be stored (must extend Record<string, any>)\n * \n * The generic ensures type safety by maintaining correspondence between:\n * - Signal constructor types and their data types\n * - Signal instances and their emitted value types\n * - Vector structure and the data it contains\n */\n@A_Frame.Fragment({\n namespace: 'A-Utils',\n name: 'A-SignalState',\n description: 'Manages the latest state of all signals within a given scope, maintaining a mapping between signal constructors and their most recently emitted values.'\n})\nexport class A_SignalState<\n TSignalData extends Record<string, any> = Record<string, any>\n> extends A_Fragment {\n\n /**\n * Internal map storing the relationship between signal constructors and their latest values\n * Key: Signal constructor function\n * Value: Latest emitted data from that signal type\n */\n protected _state: Map<A_TYPES__Component_Constructor<A_Signal>, A_Signal> = new Map();\n\n /**\n * Previous state map to track changes between signal emissions\n * Key: Signal constructor function\n * Value: Previous emitted data from that signal type\n */\n protected _prevState: Map<A_TYPES__Component_Constructor<A_Signal>, A_Signal> = new Map();\n\n /**\n * Optional structure defining the ordered list of signal constructors\n * Used for vector operations and initialization\n */\n protected _structure: Array<A_TYPES__Component_Constructor<A_Signal>>;\n\n\n /**\n * Gets the ordered structure of signal constructors\n * @returns Array of signal constructors in their defined order\n */\n get structure(): Array<A_TYPES__Component_Constructor<A_Signal>> {\n return this._structure || [];\n }\n\n /**\n * Creates a new A_SignalState instance\n * \n * @param structure - Optional array defining the ordered structure of signal constructors\n * This structure is used for vector operations and determines the order\n * in which signals are processed and serialized\n */\n constructor(\n structure: A_TYPES__Component_Constructor<A_Signal>[]\n ) {\n super({ name: \"A_SignalState\" });\n\n this._structure = structure;\n\n // Initialize the state map with undefined values for each signal in the structure\n // This ensures all expected signals have entries in the state map from the start\n \n }\n\n\n /**\n * Sets the latest value for a specific signal type\n * \n * @param signal - The signal constructor to associate the value with\n * @param value - The data value emitted by the signal\n */\n set(\n signal: A_Signal,\n value: A_Signal\n ): void\n set(\n signal: A_Signal\n ): void\n set(\n signal: A_TYPES__Component_Constructor<A_Signal>,\n value: A_Signal\n ): void\n set(\n param1: A_TYPES__Component_Constructor<A_Signal> | A_Signal,\n param2?: A_Signal\n ): void {\n const signal = param1 instanceof A_Signal ? param1.constructor as A_TYPES__Component_Constructor<A_Signal> : param1;\n const value = param1 instanceof A_Signal ? param1 : param2!;\n\n this._prevState.set(signal, this._state.get(signal)!);\n this._state.set(signal, value);\n }\n\n /**\n * Retrieves the latest value for a specific signal type\n * \n * @param signal - The signal constructor to get the value for\n * @returns The latest data value or undefined if no value has been set\n */\n get(\n signal: A_Signal\n ): A_Signal | undefined\n get(\n signal: A_TYPES__Component_Constructor<A_Signal>\n ): A_Signal | undefined\n get(\n param: A_TYPES__Component_Constructor<A_Signal> | A_Signal\n ): A_Signal | undefined {\n const signal = param instanceof A_Signal ? param.constructor as A_TYPES__Component_Constructor<A_Signal> : param;\n return this._state.get(signal);\n }\n\n /**\n * Retrieves the previous value for a specific signal type\n * \n * @param signal \n */\n getPrev(\n signal: A_Signal\n ): A_Signal | undefined\n getPrev(\n signal: A_TYPES__Component_Constructor<A_Signal>\n ): A_Signal | undefined\n getPrev(\n param: A_TYPES__Component_Constructor<A_Signal> | A_Signal\n ): A_Signal | undefined {\n const signal = param instanceof A_Signal ? param.constructor as A_TYPES__Component_Constructor<A_Signal> : param;\n return this._prevState.get(signal);\n } \n\n /**\n * Checks if a signal type has been registered in the state\n * \n * @param signal - The signal constructor to check for\n * @returns True if the signal type exists in the state map\n */\n has(\n signal: A_Signal\n ): boolean\n has(\n signal: A_TYPES__Component_Constructor<A_Signal>\n ): boolean\n has(\n param: A_TYPES__Component_Constructor<A_Signal> | A_Signal\n ): boolean {\n const signal = param instanceof A_Signal ? param.constructor as A_TYPES__Component_Constructor<A_Signal> : param;\n\n return this.structure.includes(signal);\n }\n\n /**\n * Removes a signal type and its associated value from the state\n * \n * @param signal - The signal constructor to remove\n * @returns True if the signal was successfully deleted, false if it didn't exist\n */\n delete(\n signal: A_Signal\n ): boolean\n delete(\n signal: A_TYPES__Component_Constructor<A_Signal>\n ): boolean\n delete(\n param: A_TYPES__Component_Constructor<A_Signal> | A_Signal\n ): boolean {\n const signal = param instanceof A_Signal ? param.constructor as A_TYPES__Component_Constructor<A_Signal> : param;\n return this._state.delete(signal);\n }\n\n\n /**\n * Converts the current state to a vector (ordered array) format\n * \n * The order is determined by the structure array provided during construction.\n * Each position in the vector corresponds to a specific signal type's latest value.\n * \n * @returns Array of signal values in the order defined by the structure\n * @throws Error if structure is not defined or if any signal value is undefined\n */\n toVector(): A_SignalVector {\n const vector: Array<A_Signal> = [];\n\n this._state.forEach((value, key) => {\n vector.push(value);\n });\n\n return new A_SignalVector(vector, this.structure);\n }\n\n /**\n * Converts the current state to an object with signal constructor names as keys\n * \n * This provides a more readable representation of the state where each signal\n * type is identified by its constructor name.\n * \n * @returns Object mapping signal constructor names to their latest values\n * @throws Error if any signal value is undefined\n */\n toObject(): Record<string, A_Signal> {\n const obj: Record<string, A_Signal> = {};\n\n this.structure.forEach((signalConstructor) => {\n const value = this._state.get(signalConstructor);\n if (value === undefined) {\n throw new Error(`Signal ${signalConstructor.name} has no value in state`);\n }\n obj[signalConstructor.name] = value;\n });\n\n return obj;\n }\n\n}","import { A_CommonHelper, A_Context, A_Fragment, A_TYPES__Component_Constructor, A_TYPES__Entity_Constructor } from \"@adaas/a-concept\";\nimport { A_SignalConfig_Init } from \"../A-Signal.types\";\nimport { A_Signal } from \"../entities/A-Signal.entity\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n\n/**\n * This component should dictate a structure of the vector for all signals within a given scope.\n * so if there're multiple signals it should say what type at what position should be expected.\n * \n * e.g. [A_RouterWatcher, A_ScopeWatcher, A_LoggerWatcher]\n * This structure then should be used for any further processing of signals within the scope.\n */\n@A_Frame.Fragment({\n namespace: 'A-Utils',\n name: 'A-SignalConfig',\n description: 'Signal configuration fragment that defines the structure and types of signals within a given scope. It allows specifying the expected signal constructors and their order, facilitating consistent signal management and processing across components that emit or listen to signals.'\n})\nexport class A_SignalConfig extends A_Fragment {\n\n protected _structure?: Array<A_TYPES__Entity_Constructor<A_Signal>>;\n\n protected _config: A_SignalConfig_Init\n\n protected _ready?: Promise<void>;\n\n get structure(): Array<A_TYPES__Entity_Constructor<A_Signal>> {\n if (this._structure) {\n return this._structure;\n }\n\n const scope = A_Context.scope(this);\n\n // just sort by constructor name to have consistent order\n const constructors = [...scope.allowedEntities]\n .filter(e => A_CommonHelper.isInheritedFrom(e, A_Signal))\n .sort((a, b) => a.constructor.name.localeCompare(b.name))\n .map(s => scope.resolveConstructor<A_Signal>(s.name));\n\n return constructors.filter(s => s) as Array<A_TYPES__Entity_Constructor<A_Signal>>;\n }\n\n /**\n * Uses for synchronization to ensure the config is initialized.\n * \n * @returns True if the configuration has been initialized.\n */\n get ready() {\n return this._ready;\n }\n\n constructor(\n params: A_SignalConfig_Init\n ) {\n super({ name: \"A_SignalConfig\" });\n this._config = params;\n }\n\n\n /**\n * Initializes the signal configuration if not already initialized.\n * \n * @returns \n */\n async initialize() {\n if (!this._ready) {\n this._ready = this._initialize();\n }\n return this._ready;\n }\n\n /**\n * Initializes the signal configuration by processing the provided structure or string representation.\n * This method sets up the internal structure of signal constructors based on the configuration.\n */\n protected async _initialize() {\n if (this._config.structure) {\n this._structure = this._config.structure;\n } else if (this._config.stringStructure) {\n const stringStructure = this._config.stringStructure.split(',').map(s => s.trim());\n this._structure = stringStructure\n .map(name => A_Context.scope(this).resolveConstructor<A_Signal>(name))\n .filter(s => s);\n }\n\n }\n\n}","\nexport enum A_SignalBusFeatures {\n onBeforeNext = '_A_SignalBusFeatures_onBeforeNext',\n onNext = '_A_SignalBusFeatures_onNext',\n\n onError = '_A_SignalBusFeatures_onError',\n}","import { A_Error } from \"@adaas/a-concept\";\n\n\n\nexport class A_SignalBusError extends A_Error {\n\n\n static readonly SignalProcessingError = 'Signal processing error';\n}","import { A_Caller, A_Component, A_Context, A_Dependency, A_Error, A_Feature, A_Inject, A_Scope } from \"@adaas/a-concept\";\nimport { A_SignalState } from \"../context/A-SignalState.context\";\nimport { A_SignalConfig } from \"../context/A-SignalConfig.context\";\nimport { A_Signal } from \"../entities/A-Signal.entity\";\nimport { A_Config } from \"@adaas/a-utils/a-config\";\nimport { A_Logger } from \"@adaas/a-utils/a-logger\";\nimport { A_Frame } from \"@adaas/a-frame\";\nimport { A_SignalBusFeatures } from \"./A-SignalBus.constants\";\nimport { A_SignalBusError } from \"./A-SignalBus.error\";\n\n\n\n/**\n * This component should listen for all available signal watchers components in this and all parent scopes. \n * When a signal is emitted, it should forward the signal to all registered watchers.\n * \n * A_SignalBus should always return the same vector structure of the signals, and that's why it should store the state of the latest behavior. \n * For example if there are 3 watchers registered, the bus should always return a vector of 3 elements, based on the A_SignalConfig structure.\n * \n * \n * The component itself is stateless and all methods uses only parameters (context) is provided with.\n */\n@A_Frame.Component({\n namespace: 'A-Utils',\n name: 'A-SignalBus',\n description: 'Signal bus component that manages the emission and state of signals within a given scope. It listens for emitted signals, updates their state, and forwards them to registered watchers. The bus ensures a consistent signal vector structure based on the defined configuration, facilitating signal management across multiple components.'\n})\nexport class A_SignalBus extends A_Component {\n\n\n @A_Frame.Method({\n description: 'Emit multiple signals through the signal bus.'\n })\n async next(...signals: A_Signal[]) {\n const scope = new A_Scope({\n name: `A_SignalBus-Next-Scope`,\n entities: signals\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_SignalBusFeatures.onBeforeNext, scope);\n\n await this.call(A_SignalBusFeatures.onNext, scope);\n\n scope.destroy();\n\n } catch (error) {\n\n let wrappedError;\n\n switch (true) {\n case error instanceof A_SignalBusError:\n wrappedError = error;\n break;\n\n case error instanceof A_Error && error.originalError instanceof A_SignalBusError:\n wrappedError = error.originalError;\n break;\n\n default:\n wrappedError = new A_SignalBusError({\n title: A_SignalBusError.SignalProcessingError,\n description: `An error occurred while processing the signal.`,\n originalError: error\n })\n break;\n }\n\n scope.register(wrappedError);\n\n await this.call(A_SignalBusFeatures.onError);\n\n scope.destroy();\n }\n }\n\n\n @A_Feature.Extend({\n before: /.*/\n })\n protected async [A_SignalBusFeatures.onError](\n @A_Inject(A_Error) error: A_Error,\n @A_Inject(A_Logger) logger?: A_Logger,\n ...args: any[]\n ) {\n logger?.error(error);\n }\n\n @A_Feature.Extend({\n scope: [A_SignalBus],\n before: /.*/\n })\n async [A_SignalBusFeatures.onBeforeNext](\n @A_Inject(A_Scope) scope: A_Scope,\n\n @A_Inject(A_Config) globalConfig?: A_Config<['A_SIGNAL_VECTOR_STRUCTURE']>,\n @A_Inject(A_SignalState) state?: A_SignalState,\n\n @A_Inject(A_Logger) logger?: A_Logger,\n @A_Inject(A_SignalConfig) config?: A_SignalConfig,\n ) {\n /**\n * We need a context where component is registered, to prevent any duplicate registrations\n */\n const componentContext = A_Context.scope(this);\n\n if (!config) {\n config = new A_SignalConfig({\n stringStructure: globalConfig?.get('A_SIGNAL_VECTOR_STRUCTURE') || undefined\n });\n\n componentContext.register(config);\n }\n\n if (!config.ready)\n await config.initialize();\n\n if (!state) {\n state = new A_SignalState(config.structure);\n componentContext.register(state);\n }\n }\n\n /**\n * This methods extends A-Signal Emit feature to handle signal emission within the bus.\n * \n * It updates the signal state and emits the updated signal vector.\n * \n * @param signal \n * @param globalConfig \n * @param logger \n * @param state \n * @param config \n * @returns \n */\n @A_Feature.Extend({\n scope: [A_SignalBus],\n before: /.*/\n })\n async [A_SignalBusFeatures.onNext](\n @A_Dependency.Flat()\n @A_Dependency.All()\n @A_Inject(A_Signal) signals: A_Signal[],\n @A_Inject(A_Scope) scope: A_Scope,\n\n @A_Dependency.Required()\n @A_Inject(A_SignalState) state: A_SignalState,\n\n @A_Inject(A_Config) globalConfig?: A_Config<['A_SIGNAL_VECTOR_STRUCTURE']>,\n @A_Inject(A_Logger) logger?: A_Logger,\n @A_Inject(A_SignalConfig) config?: A_SignalConfig,\n ) {\n /*\n 1) create a signal when it occurs via new A_Signal('somedata')\n 2) emit a signal when needed via bus.next(signal)\n 3) the bus should listen for all emitted signals within the scope\n 4) when a signal is emitted, the bus should store a signal in some place (probably it's memory)\n */\n // const signals = scope.resolveFlatAll<A_Signal>(A_Signal);\n\n for (const signal of signals) {\n\n if (!state.has(signal))\n return;\n\n // ------------------------------------------------------------------\n // And finally if all checks are passed, we can update the state\n // ------------------------------------------------------------------\n\n logger?.debug(`A_SignalBus: Updating state for signal '${signal.constructor.name}' with data:`, signal.data);\n\n state.set(signal);\n }\n\n const vector = state.toVector();\n\n scope.register(vector);\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ export { A as A_StateMachine, a as A_StateMachineFeatures, b as A_StateMachineTransition, c as A_StateMachineTransitionParams, d as A_StateMachineTransitionStorage } from './A-StateMachineTransition.context-BINjcsgq.mjs';
2
+ import { A_Error } from '@adaas/a-concept';
3
+ import './a-operation.mjs';
4
+ import './a-execution.mjs';
5
+
6
+ declare class A_StateMachineError extends A_Error {
7
+ static readonly InitializationError = "A-StateMachine Initialization Error";
8
+ static readonly TransitionError = "A-StateMachine Transition Error";
9
+ }
10
+
11
+ export { A_StateMachineError };
@@ -0,0 +1,6 @@
1
+ export { A_StateMachine, A_StateMachineError, A_StateMachineFeatures, A_StateMachineTransition } from './chunk-NLPSQYIQ.mjs';
2
+ import './chunk-72ANHWNG.mjs';
3
+ import './chunk-TQ5UON22.mjs';
4
+ import './chunk-EQQGB2QZ.mjs';
5
+ //# sourceMappingURL=a-state-machine.mjs.map
6
+ //# sourceMappingURL=a-state-machine.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"a-state-machine.mjs"}
@@ -0,0 +1,48 @@
1
+ import { A_ExecutionContext } from './chunk-TQ5UON22.mjs';
2
+ import { __decorateClass } from './chunk-EQQGB2QZ.mjs';
3
+ import { A_Frame } from '@adaas/a-frame';
4
+
5
+ var A_OperationContext = class extends A_ExecutionContext {
6
+ constructor(operation, params) {
7
+ super("operation-context");
8
+ this.meta.set("name", operation);
9
+ this.meta.set("params", params || {});
10
+ }
11
+ get name() {
12
+ return this._meta.get("name") || this._name;
13
+ }
14
+ get result() {
15
+ return this._meta.get("result");
16
+ }
17
+ get error() {
18
+ return this._meta.get("error");
19
+ }
20
+ get params() {
21
+ return this._meta.get("params") || {};
22
+ }
23
+ fail(error) {
24
+ this._meta.set("error", error);
25
+ }
26
+ succeed(result) {
27
+ this._meta.set("result", result);
28
+ }
29
+ toJSON() {
30
+ return {
31
+ name: this.name,
32
+ params: this.params,
33
+ result: this.result || {},
34
+ error: this.error?.toJSON()
35
+ };
36
+ }
37
+ };
38
+ A_OperationContext = __decorateClass([
39
+ A_Frame.Fragment({
40
+ namespace: "A-Utils",
41
+ name: "A-OperationContext",
42
+ description: "Operation execution context that encapsulates the metadata and serialized data related to a specific operation. It provides structured access to operation parameters, results, and error handling, facilitating the management of operation lifecycles within the application."
43
+ })
44
+ ], A_OperationContext);
45
+
46
+ export { A_OperationContext };
47
+ //# sourceMappingURL=chunk-72ANHWNG.mjs.map
48
+ //# sourceMappingURL=chunk-72ANHWNG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/A-Operation/A-Operation.context.ts"],"names":[],"mappings":";;;;AAYO,IAAM,kBAAA,GAAN,cAKG,kBAAA,CAGR;AAAA,EAEE,WAAA,CACI,WACA,MAAA,EACF;AACE,IAAA,KAAA,CAAM,mBAAmB,CAAA;AAEzB,IAAA,IAAA,CAAK,IAAA,CAAK,GAAA,CAAI,MAAA,EAAQ,SAAS,CAAA;AAC/B,IAAA,IAAA,CAAK,IAAA,CAAK,GAAA,CAAI,QAAA,EAAU,MAAA,IAAU,EAAiB,CAAA;AAAA,EACvD;AAAA,EAEA,IAAI,IAAA,GAA2B;AAC3B,IAAA,OAAQ,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,MAAM,KAAK,IAAA,CAAK,KAAA;AAAA,EAC3C;AAAA,EAEA,IAAI,MAAA,GAAkC;AAClC,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,QAAQ,CAAA;AAAA,EAClC;AAAA,EAEA,IAAI,KAAA,GAA6B;AAC7B,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,OAAO,CAAA;AAAA,EACjC;AAAA,EAEA,IAAI,MAAA,GAAsB;AACtB,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,QAAQ,KAAK,EAAC;AAAA,EACxC;AAAA,EAGA,KAAK,KAAA,EAAsB;AACvB,IAAA,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,OAAA,EAAS,KAAK,CAAA;AAAA,EACjC;AAAA,EAEA,QAAQ,MAAA,EAA2B;AAC/B,IAAA,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,QAAA,EAAU,MAAM,CAAA;AAAA,EACnC;AAAA,EAGA,MAAA,GAA2D;AACvD,IAAA,OAAO;AAAA,MACH,MAAM,IAAA,CAAK,IAAA;AAAA,MACX,QAAQ,IAAA,CAAK,MAAA;AAAA,MACb,MAAA,EAAQ,IAAA,CAAK,MAAA,IAAU,EAAC;AAAA,MACxB,KAAA,EAAO,IAAA,CAAK,KAAA,EAAO,MAAA;AAAO,KAC9B;AAAA,EACJ;AACJ;AAtDa,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-72ANHWNG.mjs","sourcesContent":["import { A_Error, A_Fragment } from \"@adaas/a-concept\";\nimport { A_Operation_Serialized, A_Operation_Storage } from \"./A-Operation.types\";\nimport { A_ExecutionContext } from \"@adaas/a-utils/a-execution\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n\n@A_Frame.Fragment({\n namespace: 'A-Utils',\n name: 'A-OperationContext',\n description: 'Operation execution context that encapsulates the metadata and serialized data related to a specific operation. It provides structured access to operation parameters, results, and error handling, facilitating the management of operation lifecycles within the application.'\n})\nexport class A_OperationContext<\n _AllowedOperations extends string = string,\n _ParamsType extends Record<string, any> = Record<string, any>,\n _ResultType = any,\n _StorageType extends A_Operation_Storage<_ResultType, _ParamsType> = A_Operation_Storage<_ResultType, _ParamsType>\n> extends A_ExecutionContext<\n _StorageType,\n A_Operation_Serialized<_ResultType, _ParamsType>\n> {\n\n constructor(\n operation: _AllowedOperations,\n params?: _ParamsType\n ) {\n super('operation-context');\n\n this.meta.set('name', operation);\n this.meta.set('params', params || {} as _ParamsType);\n }\n\n get name(): _AllowedOperations {\n return (this._meta.get('name') || this._name) as _AllowedOperations;\n }\n\n get result(): _ResultType | undefined {\n return this._meta.get('result');\n }\n\n get error(): A_Error | undefined {\n return this._meta.get('error');\n }\n\n get params(): _ParamsType {\n return this._meta.get('params') || {} as _ParamsType;\n }\n\n\n fail(error: A_Error): void {\n this._meta.set('error', error);\n }\n\n succeed(result: _ResultType): void {\n this._meta.set('result', result);\n }\n\n\n toJSON(): A_Operation_Serialized<_ResultType, _ParamsType> {\n return {\n name: this.name,\n params: this.params,\n result: this.result || {} as _ResultType,\n error: this.error?.toJSON(),\n }\n }\n}"]}
@@ -0,0 +1,264 @@
1
+ import { A_Polyfill } from './chunk-J6CLHXFQ.mjs';
2
+ import { A_ExecutionContext } from './chunk-TQ5UON22.mjs';
3
+ import { __decorateClass, __decorateParam } from './chunk-EQQGB2QZ.mjs';
4
+ import { A_Concept, A_Inject, A_Container, A_Scope, A_Dependency, A_Feature, A_Error, A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY, A_FormatterHelper, A_Component, A_CONCEPT_ENV, A_Context, A_ScopeError } from '@adaas/a-concept';
5
+ import { A_Frame } from '@adaas/a-frame';
6
+
7
+ // src/lib/A-Config/A-Config.constants.ts
8
+ var A_CONSTANTS__CONFIG_ENV_VARIABLES = {};
9
+ var A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY = [];
10
+ var A_ConfigError = class extends A_Error {
11
+ };
12
+ A_ConfigError.InitializationError = "A-Config Initialization Error";
13
+ var A_Config = class extends A_ExecutionContext {
14
+ constructor(config) {
15
+ super("a-config");
16
+ this.DEFAULT_ALLOWED_TO_READ_PROPERTIES = [
17
+ ...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,
18
+ ...A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY
19
+ ];
20
+ this._strict = config.strict ?? false;
21
+ this._configProperties = config.variables ?? [];
22
+ for (const key in config.defaults) {
23
+ this.set(
24
+ A_FormatterHelper.toUpperSnakeCase(key),
25
+ config.defaults[key]
26
+ );
27
+ }
28
+ }
29
+ get strict() {
30
+ return this._strict;
31
+ }
32
+ /**
33
+ * This method is used to get the configuration property by name
34
+ *
35
+ * @param property
36
+ * @returns
37
+ */
38
+ get(property) {
39
+ if (this._configProperties.includes(property) || this.DEFAULT_ALLOWED_TO_READ_PROPERTIES.includes(property) || !this._strict)
40
+ return super.get(A_FormatterHelper.toUpperSnakeCase(property));
41
+ throw new A_ConfigError("Property not exists or not allowed to read");
42
+ }
43
+ set(property, value) {
44
+ const array = Array.isArray(property) ? property : typeof property === "string" ? [{ property, value }] : Object.keys(property).map((key) => ({
45
+ property: key,
46
+ value: property[key]
47
+ }));
48
+ for (const { property: property2, value: value2 } of array) {
49
+ super.set(A_FormatterHelper.toUpperSnakeCase(property2), value2);
50
+ }
51
+ }
52
+ };
53
+ A_Config = __decorateClass([
54
+ A_Frame.Fragment({
55
+ namespace: "A-Utils",
56
+ name: "A-Config",
57
+ description: "Configuration management context that provides structured access to application configuration variables, supporting defaults and strict mode for enhanced reliability. Default environment variables are included for comprehensive configuration handling."
58
+ })
59
+ ], A_Config);
60
+ var ConfigReader = class extends A_Component {
61
+ constructor(polyfill) {
62
+ super();
63
+ this.polyfill = polyfill;
64
+ this.DEFAULT_ALLOWED_TO_READ_PROPERTIES = [
65
+ ...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,
66
+ ...A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY
67
+ ];
68
+ }
69
+ async attachContext(container, context, config) {
70
+ if (!config) {
71
+ config = new A_Config({
72
+ defaults: {}
73
+ });
74
+ container.scope.register(config);
75
+ }
76
+ config.set("A_CONCEPT_ROOT_FOLDER", A_CONCEPT_ENV.A_CONCEPT_ROOT_FOLDER);
77
+ }
78
+ async initialize(config) {
79
+ const data = await this.read();
80
+ for (const key in data) {
81
+ config.set(key, data[key]);
82
+ }
83
+ }
84
+ /**
85
+ * Get the configuration property by Name
86
+ * @param property
87
+ */
88
+ resolve(property) {
89
+ return property;
90
+ }
91
+ /**
92
+ * This method reads the configuration and sets the values to the context
93
+ *
94
+ * @returns
95
+ */
96
+ async read(variables = []) {
97
+ return {};
98
+ }
99
+ };
100
+ __decorateClass([
101
+ A_Concept.Load(),
102
+ __decorateParam(0, A_Inject(A_Container)),
103
+ __decorateParam(1, A_Inject(A_Scope)),
104
+ __decorateParam(2, A_Inject(A_Config))
105
+ ], ConfigReader.prototype, "attachContext", 1);
106
+ __decorateClass([
107
+ A_Concept.Load(),
108
+ __decorateParam(0, A_Dependency.Required()),
109
+ __decorateParam(0, A_Inject(A_Config))
110
+ ], ConfigReader.prototype, "initialize", 1);
111
+ ConfigReader = __decorateClass([
112
+ A_Frame.Component({
113
+ namespace: "A-Utils",
114
+ name: "ConfigReader",
115
+ description: "Abstract component for reading configuration data from various sources such as files, environment variables, or remote services. This component can be extended to implement specific configuration reading strategies."
116
+ }),
117
+ __decorateParam(0, A_Dependency.Required()),
118
+ __decorateParam(0, A_Inject(A_Polyfill))
119
+ ], ConfigReader);
120
+ var FileConfigReader = class extends ConfigReader {
121
+ constructor() {
122
+ super(...arguments);
123
+ this.FileData = /* @__PURE__ */ new Map();
124
+ }
125
+ /**
126
+ * Get the configuration property Name
127
+ * @param property
128
+ */
129
+ getConfigurationProperty_File_Alias(property) {
130
+ return A_FormatterHelper.toCamelCase(property);
131
+ }
132
+ resolve(property) {
133
+ return this.FileData.get(this.getConfigurationProperty_File_Alias(property));
134
+ }
135
+ async read(variables) {
136
+ const fs = await this.polyfill.fs();
137
+ try {
138
+ const data = fs.readFileSync(`${A_Context.concept}.conf.json`, "utf8");
139
+ const config = JSON.parse(data);
140
+ this.FileData = new Map(Object.entries(config));
141
+ return config;
142
+ } catch (error) {
143
+ return {};
144
+ }
145
+ }
146
+ };
147
+ FileConfigReader = __decorateClass([
148
+ A_Frame.Component({
149
+ namespace: "A-Utils",
150
+ name: "FileConfigReader",
151
+ description: "Configuration reader that loads configuration data from a JSON file located in the application root directory. It reads the file named after the current concept with a .conf.json extension and parses its contents into the configuration context."
152
+ })
153
+ ], FileConfigReader);
154
+ var ENVConfigReader = class extends ConfigReader {
155
+ async readEnvFile(config, polyfill, feature) {
156
+ const fs = await polyfill.fs();
157
+ if (fs.existsSync(".env"))
158
+ fs.readFileSync(`${config.get("A_CONCEPT_ROOT_FOLDER")}/.env`, "utf-8").split("\n").forEach((line) => {
159
+ const [key, value] = line.split("=");
160
+ if (key && value) {
161
+ A_CONCEPT_ENV.set(key.trim(), value.trim());
162
+ }
163
+ });
164
+ }
165
+ /**
166
+ * Get the configuration property Name
167
+ * @param property
168
+ */
169
+ getConfigurationProperty_ENV_Alias(property) {
170
+ return A_FormatterHelper.toUpperSnakeCase(property);
171
+ }
172
+ resolve(property) {
173
+ return A_CONCEPT_ENV.get(this.getConfigurationProperty_ENV_Alias(property));
174
+ }
175
+ async read(variables = []) {
176
+ const allVariables = [
177
+ ...variables,
178
+ ...A_CONCEPT_ENV.getAllKeys()
179
+ ];
180
+ const config = {};
181
+ allVariables.forEach((variable) => {
182
+ config[variable] = this.resolve(variable);
183
+ });
184
+ return config;
185
+ }
186
+ };
187
+ __decorateClass([
188
+ A_Concept.Load({
189
+ before: ["ENVConfigReader.initialize"]
190
+ }),
191
+ __decorateParam(0, A_Inject(A_Config)),
192
+ __decorateParam(1, A_Inject(A_Polyfill)),
193
+ __decorateParam(2, A_Inject(A_Feature))
194
+ ], ENVConfigReader.prototype, "readEnvFile", 1);
195
+ ENVConfigReader = __decorateClass([
196
+ A_Frame.Component({
197
+ namespace: "A-Utils",
198
+ name: "ENVConfigReader",
199
+ description: "Configuration reader that sources configuration data from environment variables. It supports loading variables from a .env file and maps them to the configuration context, making it suitable for applications running in diverse environments such as local development, staging, and production."
200
+ })
201
+ ], ENVConfigReader);
202
+ var A_ConfigLoader = class extends A_Container {
203
+ async prepare(polyfill) {
204
+ if (!this.scope.has(A_Config)) {
205
+ const newConfig = new A_Config({
206
+ variables: [
207
+ ...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,
208
+ ...A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY
209
+ ],
210
+ defaults: {}
211
+ });
212
+ this.scope.register(newConfig);
213
+ }
214
+ const fs = await polyfill.fs();
215
+ try {
216
+ switch (true) {
217
+ case (A_Context.environment === "server" && !!fs.existsSync(`${A_Context.concept}.conf.json`)):
218
+ this.reader = this.scope.resolve(FileConfigReader);
219
+ break;
220
+ case (A_Context.environment === "server" && !fs.existsSync(`${A_Context.concept}.conf.json`)):
221
+ this.reader = this.scope.resolve(ENVConfigReader);
222
+ break;
223
+ case A_Context.environment === "browser":
224
+ this.reader = this.scope.resolve(ENVConfigReader);
225
+ break;
226
+ default:
227
+ throw new A_ConfigError(
228
+ A_ConfigError.InitializationError,
229
+ `Environment ${A_Context.environment} is not supported`
230
+ );
231
+ }
232
+ } catch (error) {
233
+ if (error instanceof A_ScopeError) {
234
+ throw new A_ConfigError({
235
+ title: A_ConfigError.InitializationError,
236
+ description: `Failed to initialize A_ConfigLoader. Reader not found for environment ${A_Context.environment}`,
237
+ originalError: error
238
+ });
239
+ }
240
+ }
241
+ }
242
+ };
243
+ __decorateClass([
244
+ A_Concept.Load({
245
+ before: /.*/
246
+ }),
247
+ __decorateParam(0, A_Inject(A_Polyfill))
248
+ ], A_ConfigLoader.prototype, "prepare", 1);
249
+ A_ConfigLoader = __decorateClass([
250
+ A_Frame.Container({
251
+ namespace: "A-Utils",
252
+ name: "A-ConfigLoader",
253
+ description: "Container responsible for loading and initializing the A_Config component based on the environment and available configuration sources. It can be useful for application that need a separated configuration management and sharable across multiple containers."
254
+ })
255
+ ], A_ConfigLoader);
256
+
257
+ // src/lib/A-Config/A-Config.types.ts
258
+ var A_TYPES__ConfigFeature = /* @__PURE__ */ ((A_TYPES__ConfigFeature2) => {
259
+ return A_TYPES__ConfigFeature2;
260
+ })(A_TYPES__ConfigFeature || {});
261
+
262
+ export { A_CONSTANTS__CONFIG_ENV_VARIABLES, A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY, A_Config, A_ConfigError, A_ConfigLoader, A_TYPES__ConfigFeature, ConfigReader, ENVConfigReader, FileConfigReader };
263
+ //# sourceMappingURL=chunk-ECSGFDRQ.mjs.map
264
+ //# sourceMappingURL=chunk-ECSGFDRQ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/A-Config/A-Config.constants.ts","../../src/lib/A-Config/A-Config.error.ts","../../src/lib/A-Config/A-Config.context.ts","../../src/lib/A-Config/components/ConfigReader.component.ts","../../src/lib/A-Config/components/FileConfigReader.component.ts","../../src/lib/A-Config/components/ENVConfigReader.component.ts","../../src/lib/A-Config/A-Config.container.ts","../../src/lib/A-Config/A-Config.types.ts"],"names":["property","value","A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY","A_Frame","A_FormatterHelper","A_CONCEPT_ENV","A_Concept","A_Inject","A_Container","A_Context","A_TYPES__ConfigFeature"],"mappings":"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","file":"chunk-ECSGFDRQ.mjs","sourcesContent":["export const A_CONSTANTS__CONFIG_ENV_VARIABLES = {\n\n} as const\n\n\n//should be an array\nexport type A_TYPES__ConfigENVVariables = (typeof A_CONSTANTS__CONFIG_ENV_VARIABLES)[keyof typeof A_CONSTANTS__CONFIG_ENV_VARIABLES][];\n\n\nexport const A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY = [\n\n] as const;\n\n","import { A_Error } from \"@adaas/a-concept\";\n\n\nexport class A_ConfigError extends A_Error {\n\n static readonly InitializationError = 'A-Config Initialization Error';\n}","import { A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY, A_FormatterHelper, A_TYPES__ConceptENVVariables } from \"@adaas/a-concept\";\nimport { A_TYPES__ConfigContainerConstructor } from \"./A-Config.types\";\nimport { A_ExecutionContext } from \"@adaas/a-utils/a-execution\";\nimport { A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY } from \"./A-Config.constants\";\nimport { A_ConfigError } from \"./A-Config.error\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n\n@A_Frame.Fragment({\n namespace: 'A-Utils',\n name: 'A-Config',\n description: 'Configuration management context that provides structured access to application configuration variables, supporting defaults and strict mode for enhanced reliability. Default environment variables are included for comprehensive configuration handling.'\n})\nexport class A_Config<\n T extends Array<string | A_TYPES__ConceptENVVariables[number]> = any[]\n> extends A_ExecutionContext<\n { [key in T[number]]: any; } & {\n [key in typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY[number]]: any\n } & {\n [key in typeof A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY[number]]: any\n }\n> {\n protected _strict: boolean;\n protected _configProperties!: T;\n\n protected DEFAULT_ALLOWED_TO_READ_PROPERTIES = [\n ...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,\n ...A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY\n ];\n\n\n constructor(\n config: Partial<A_TYPES__ConfigContainerConstructor<T>>\n ) {\n super('a-config');\n\n this._strict = config.strict ?? false;\n this._configProperties = config.variables ?? [] as any;\n\n\n for (const key in config.defaults) {\n this.set(\n A_FormatterHelper.toUpperSnakeCase(key),\n config.defaults[key as T[number]]\n );\n }\n }\n\n\n get strict(): boolean {\n return this._strict;\n }\n\n\n /** \n * This method is used to get the configuration property by name\n * \n * @param property \n * @returns \n */\n get<K extends T[number]>(\n property: K | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]\n ): { [key in T[number]]: any; }[K] | undefined {\n if (this._configProperties.includes(property as any)\n || this.DEFAULT_ALLOWED_TO_READ_PROPERTIES.includes(property as any)\n || !this._strict\n )\n return super.get(A_FormatterHelper.toUpperSnakeCase(property));\n\n throw new A_ConfigError('Property not exists or not allowed to read');\n }\n\n\n /**\n * \n * This method is used to set the configuration property by name\n * OR set multiple properties at once by passing an array of objects\n * \n * @param variables \n */\n set(\n variables: Array<{\n property: T[number] | A_TYPES__ConceptENVVariables[number],\n value: any\n }>\n )\n set(\n variables: Partial<Record<T[number] | A_TYPES__ConceptENVVariables[number], any>>\n )\n set(\n property: T[number] | A_TYPES__ConceptENVVariables[number],\n value: any\n )\n set(\n property: T[number] | A_TYPES__ConceptENVVariables[number] | Array<{\n property: T[number] | A_TYPES__ConceptENVVariables[number],\n value: any\n }> | Partial<Record<T[number] | A_TYPES__ConceptENVVariables[number], any>>,\n value?: any\n ) {\n const array = Array.isArray(property)\n ? property\n : typeof property === 'string'\n ? [{ property, value }]\n : Object\n .keys(property)\n .map((key) => ({\n property: key,\n value: property[key]\n }));\n\n for (const { property, value } of array) {\n super.set(A_FormatterHelper.toUpperSnakeCase(property), value);\n }\n }\n}","import {\n A_Component, A_CONCEPT_ENV,\n A_Concept, A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,\n A_Container, A_Dependency,\n A_Inject, A_Scope\n} from \"@adaas/a-concept\";\nimport { A_Frame } from \"@adaas/a-frame\";\nimport { A_Config } from \"../A-Config.context\";\nimport { A_Polyfill } from \"@adaas/a-utils/a-polyfill\";\nimport { A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY } from \"../A-Config.constants\";\n\n/**\n * Config Reader\n */\n@A_Frame.Component({\n namespace: 'A-Utils',\n name: 'ConfigReader',\n description: 'Abstract component for reading configuration data from various sources such as files, environment variables, or remote services. This component can be extended to implement specific configuration reading strategies.'\n})\nexport class ConfigReader extends A_Component {\n\n protected DEFAULT_ALLOWED_TO_READ_PROPERTIES = [\n ...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,\n ...A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY\n ];\n\n constructor(\n @A_Dependency.Required()\n @A_Inject(A_Polyfill) protected polyfill: A_Polyfill,\n ) {\n super();\n }\n\n @A_Concept.Load()\n async attachContext(\n @A_Inject(A_Container) container: A_Container,\n @A_Inject(A_Scope) context: A_Scope,\n @A_Inject(A_Config) config?: A_Config<any>,\n ) {\n if (!config) {\n config = new A_Config({\n defaults: {}\n });\n\n container.scope.register(config);\n }\n \n config.set('A_CONCEPT_ROOT_FOLDER', A_CONCEPT_ENV.A_CONCEPT_ROOT_FOLDER);\n }\n\n @A_Concept.Load()\n async initialize(\n @A_Dependency.Required()\n @A_Inject(A_Config) config: A_Config,\n ) {\n const data = await this.read();\n\n for (const key in data) {\n config.set(key, data[key]);\n }\n }\n\n /**\n * Get the configuration property by Name\n * @param property \n */\n resolve<_ReturnType = any>(property: string): _ReturnType {\n return property as _ReturnType;\n }\n\n /**\n * This method reads the configuration and sets the values to the context\n * \n * @returns \n */\n async read<T extends string>(\n variables: Array<T> = []\n ): Promise<Record<T, any>> {\n return {} as Record<T, any>;\n }\n}","import { A_Context, A_FormatterHelper } from \"@adaas/a-concept\";\nimport { ConfigReader } from \"./ConfigReader.component\";\nimport { A_Frame } from \"@adaas/a-frame\";\n\n\n\n@A_Frame.Component({\n namespace: 'A-Utils',\n name: 'FileConfigReader',\n description: 'Configuration reader that loads configuration data from a JSON file located in the application root directory. It reads the file named after the current concept with a .conf.json extension and parses its contents into the configuration context.'\n})\nexport class FileConfigReader extends ConfigReader {\n\n private FileData: Map<string, any> = new Map<string, any>();\n\n /**\n * Get the configuration property Name\n * @param property \n */\n getConfigurationProperty_File_Alias(property: string): string {\n return A_FormatterHelper.toCamelCase(property);\n }\n\n\n resolve<_ReturnType = any>(property: string): _ReturnType {\n return this.FileData.get(this.getConfigurationProperty_File_Alias(property)) as _ReturnType;\n }\n\n\n async read<T extends string>(\n variables?: Array<T>\n ): Promise<Record<T, any>> {\n\n const fs = await this.polyfill.fs();\n\n try {\n const data = fs.readFileSync(`${A_Context.concept}.conf.json`, 'utf8');\n\n const config: Record<T, any> = JSON.parse(data);\n\n this.FileData = new Map(Object.entries(config));\n\n return config;\n\n } catch (error) {\n // this.context.Logger.error(error);\n return {} as Record<T, any>;\n }\n }\n}\n","import {\n A_Concept, A_CONCEPT_ENV,\n A_Feature,\n A_FormatterHelper, A_Inject, A_TYPES__ConceptENVVariables\n} from \"@adaas/a-concept\";\nimport { ConfigReader } from \"./ConfigReader.component\";\nimport { A_Config } from \"../A-Config.context\";\nimport { A_Frame } from \"@adaas/a-frame\";\nimport { A_Polyfill } from \"@adaas/a-utils/a-polyfill\";\n\n@A_Frame.Component({\n namespace: 'A-Utils',\n name: 'ENVConfigReader',\n description: 'Configuration reader that sources configuration data from environment variables. It supports loading variables from a .env file and maps them to the configuration context, making it suitable for applications running in diverse environments such as local development, staging, and production.'\n})\nexport class ENVConfigReader extends ConfigReader {\n\n\n @A_Concept.Load({\n before: ['ENVConfigReader.initialize']\n })\n async readEnvFile(\n @A_Inject(A_Config) config: A_Config<A_TYPES__ConceptENVVariables>,\n @A_Inject(A_Polyfill) polyfill: A_Polyfill,\n @A_Inject(A_Feature) feature: A_Feature,\n ) {\n const fs = await polyfill.fs();\n\n if (fs.existsSync('.env'))\n fs.readFileSync(`${config.get('A_CONCEPT_ROOT_FOLDER')}/.env`, 'utf-8').split('\\n').forEach(line => {\n const [key, value] = line.split('=');\n if (key && value) {\n A_CONCEPT_ENV.set(key.trim(), value.trim());\n }\n });\n }\n\n\n /**\n * Get the configuration property Name \n * @param property \n */\n getConfigurationProperty_ENV_Alias(property: string): string {\n return A_FormatterHelper.toUpperSnakeCase(property);\n }\n\n\n resolve<_ReturnType = any>(property: string): _ReturnType {\n return A_CONCEPT_ENV.get(this.getConfigurationProperty_ENV_Alias(property)) as _ReturnType;\n }\n\n\n async read<T extends string>(variables: Array<T> = []): Promise<Record<T, any>> {\n const allVariables = [\n ...variables,\n ...A_CONCEPT_ENV.getAllKeys()\n ] as const;\n\n const config: Record<string, any> = {};\n\n allVariables.forEach((variable) => {\n config[variable] = this.resolve(variable);\n });\n\n return config as Record<T, any>;\n }\n} ","import { A_Concept, A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY, A_Container, A_Context, A_Fragment, A_Inject, A_Scope, A_ScopeError } from \"@adaas/a-concept\";\nimport { ConfigReader } from \"./components/ConfigReader.component\";\nimport { A_Config } from \"./A-Config.context\";\nimport { A_ConfigError } from \"./A-Config.error\";\nimport { FileConfigReader } from \"./components/FileConfigReader.component\";\nimport { ENVConfigReader } from \"./components/ENVConfigReader.component\";\nimport { A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY } from \"./A-Config.constants\";\nimport { A_Frame } from \"@adaas/a-frame\";\nimport { A_Polyfill } from \"@adaas/a-utils/a-polyfill\"\n\n\n@A_Frame.Container({\n namespace: 'A-Utils',\n name: 'A-ConfigLoader',\n description: 'Container responsible for loading and initializing the A_Config component based on the environment and available configuration sources. It can be useful for application that need a separated configuration management and sharable across multiple containers.'\n})\nexport class A_ConfigLoader extends A_Container {\n\n private reader!: ConfigReader\n\n\n @A_Concept.Load({\n before: /.*/\n })\n async prepare(\n @A_Inject(A_Polyfill) polyfill: A_Polyfill,\n ) {\n if (!this.scope.has(A_Config)) {\n const newConfig = new A_Config({\n variables: [\n ...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,\n ...A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY\n ] as const,\n defaults: {}\n });\n\n this.scope.register<A_Fragment>(newConfig);\n }\n\n\n const fs = await polyfill.fs();\n\n try {\n switch (true) {\n\n case A_Context.environment === 'server' && !!fs.existsSync(`${A_Context.concept}.conf.json`):\n this.reader = this.scope.resolve<ConfigReader>(FileConfigReader)!;\n break;\n\n case A_Context.environment === 'server' && !fs.existsSync(`${A_Context.concept}.conf.json`):\n this.reader = this.scope.resolve<ConfigReader>(ENVConfigReader)!;\n break;\n\n case A_Context.environment === 'browser':\n this.reader = this.scope.resolve<ConfigReader>(ENVConfigReader)!;\n break;\n\n default:\n throw new A_ConfigError(\n A_ConfigError.InitializationError,\n `Environment ${A_Context.environment} is not supported`\n );\n }\n } catch (error) {\n if (error instanceof A_ScopeError) {\n throw new A_ConfigError({\n title: A_ConfigError.InitializationError,\n description: `Failed to initialize A_ConfigLoader. Reader not found for environment ${A_Context.environment}`,\n originalError: error,\n })\n }\n }\n }\n}","import { A_TYPES__ConceptENVVariables, A_TYPES__Fragment_Constructor } from \"@adaas/a-concept\";\n\nexport enum A_TYPES__ConfigFeature {\n\n}\n\n\nexport type A_TYPES__ConfigContainerConstructor<T extends Array<string | A_TYPES__ConceptENVVariables[number]>> = {\n\n /**\n * If set to true, the SDK will throw an error if the variable is not defined OR not presented in the defaults\n */\n strict: boolean\n\n /**\n * Allows to define the names of variable to be loaded\n */\n variables: T\n\n /**\n * Allows to set the default values for the variables\n */\n defaults: {\n [key in T[number]]?: any\n }\n} & A_TYPES__Fragment_Constructor;\n"]}
@@ -0,0 +1,15 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __decorateClass = (decorators, target, key, kind) => {
4
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
6
+ if (decorator = decorators[i])
7
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
8
+ if (kind && result) __defProp(target, key, result);
9
+ return result;
10
+ };
11
+ var __decorateParam = (index, decorator) => (target, key) => decorator(target, key, index);
12
+
13
+ export { __decorateClass, __decorateParam };
14
+ //# sourceMappingURL=chunk-EQQGB2QZ.mjs.map
15
+ //# sourceMappingURL=chunk-EQQGB2QZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-EQQGB2QZ.mjs"}