ee-core 5.0.0-beta.2 → 5.0.0-beta.6

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 (454) hide show
  1. package/README.md +178 -0
  2. package/dist/cjs/app/application.d.ts +36 -1
  3. package/dist/cjs/app/application.d.ts.map +1 -1
  4. package/dist/cjs/app/application.js +49 -2
  5. package/dist/cjs/app/application.js.map +1 -1
  6. package/dist/cjs/app/boot.d.ts +56 -1
  7. package/dist/cjs/app/boot.d.ts.map +1 -1
  8. package/dist/cjs/app/boot.js +74 -11
  9. package/dist/cjs/app/boot.js.map +1 -1
  10. package/dist/cjs/app/dir.d.ts +10 -0
  11. package/dist/cjs/app/dir.d.ts.map +1 -1
  12. package/dist/cjs/app/dir.js +71 -10
  13. package/dist/cjs/app/dir.js.map +1 -1
  14. package/dist/cjs/app/events.d.ts +58 -2
  15. package/dist/cjs/app/events.d.ts.map +1 -1
  16. package/dist/cjs/app/events.js +92 -12
  17. package/dist/cjs/app/events.js.map +1 -1
  18. package/dist/cjs/config/config_loader.d.ts +44 -0
  19. package/dist/cjs/config/config_loader.d.ts.map +1 -1
  20. package/dist/cjs/config/config_loader.js +82 -1
  21. package/dist/cjs/config/config_loader.js.map +1 -1
  22. package/dist/cjs/config/default_config.d.ts +5 -0
  23. package/dist/cjs/config/default_config.d.ts.map +1 -1
  24. package/dist/cjs/config/default_config.js +98 -11
  25. package/dist/cjs/config/default_config.js.map +1 -1
  26. package/dist/cjs/config/index.d.ts +31 -1
  27. package/dist/cjs/config/index.d.ts.map +1 -1
  28. package/dist/cjs/config/index.js +52 -0
  29. package/dist/cjs/config/index.js.map +1 -1
  30. package/dist/cjs/const/channel.d.ts +17 -0
  31. package/dist/cjs/const/channel.d.ts.map +1 -1
  32. package/dist/cjs/const/channel.js +17 -0
  33. package/dist/cjs/const/channel.js.map +1 -1
  34. package/dist/cjs/controller/controller_loader.d.ts +20 -1
  35. package/dist/cjs/controller/controller_loader.d.ts.map +1 -1
  36. package/dist/cjs/controller/controller_loader.js +89 -9
  37. package/dist/cjs/controller/controller_loader.js.map +1 -1
  38. package/dist/cjs/controller/index.d.ts +32 -0
  39. package/dist/cjs/controller/index.d.ts.map +1 -1
  40. package/dist/cjs/controller/index.js +66 -0
  41. package/dist/cjs/controller/index.js.map +1 -1
  42. package/dist/cjs/core/loader/file_loader.d.ts +77 -27
  43. package/dist/cjs/core/loader/file_loader.d.ts.map +1 -1
  44. package/dist/cjs/core/loader/file_loader.js +239 -75
  45. package/dist/cjs/core/loader/file_loader.js.map +1 -1
  46. package/dist/cjs/core/utils/index.d.ts +57 -2
  47. package/dist/cjs/core/utils/index.d.ts.map +1 -1
  48. package/dist/cjs/core/utils/index.js +120 -12
  49. package/dist/cjs/core/utils/index.js.map +1 -1
  50. package/dist/cjs/core/utils/timing.d.ts +47 -0
  51. package/dist/cjs/core/utils/timing.d.ts.map +1 -1
  52. package/dist/cjs/core/utils/timing.js +42 -2
  53. package/dist/cjs/core/utils/timing.js.map +1 -1
  54. package/dist/cjs/cross/cross.d.ts +81 -2
  55. package/dist/cjs/cross/cross.d.ts.map +1 -1
  56. package/dist/cjs/cross/cross.js +86 -16
  57. package/dist/cjs/cross/cross.js.map +1 -1
  58. package/dist/cjs/cross/crossProcess.d.ts +85 -14
  59. package/dist/cjs/cross/crossProcess.d.ts.map +1 -1
  60. package/dist/cjs/cross/crossProcess.js +85 -13
  61. package/dist/cjs/cross/crossProcess.js.map +1 -1
  62. package/dist/cjs/electron/app/index.d.ts +17 -1
  63. package/dist/cjs/electron/app/index.d.ts.map +1 -1
  64. package/dist/cjs/electron/app/index.js +27 -3
  65. package/dist/cjs/electron/app/index.js.map +1 -1
  66. package/dist/cjs/electron/index.d.ts +6 -0
  67. package/dist/cjs/electron/index.d.ts.map +1 -1
  68. package/dist/cjs/electron/index.js +16 -1
  69. package/dist/cjs/electron/index.js.map +1 -1
  70. package/dist/cjs/electron/window/index.d.ts +37 -0
  71. package/dist/cjs/electron/window/index.d.ts.map +1 -1
  72. package/dist/cjs/electron/window/index.js +144 -88
  73. package/dist/cjs/electron/window/index.js.map +1 -1
  74. package/dist/cjs/exception/index.d.ts +12 -0
  75. package/dist/cjs/exception/index.d.ts.map +1 -1
  76. package/dist/cjs/exception/index.js +67 -9
  77. package/dist/cjs/exception/index.js.map +1 -1
  78. package/dist/cjs/html/index.d.ts +19 -0
  79. package/dist/cjs/html/index.d.ts.map +1 -1
  80. package/dist/cjs/html/index.js +42 -0
  81. package/dist/cjs/html/index.js.map +1 -1
  82. package/dist/cjs/index.d.ts +35 -7
  83. package/dist/cjs/index.d.ts.map +1 -1
  84. package/dist/cjs/index.js +127 -80
  85. package/dist/cjs/index.js.map +1 -1
  86. package/dist/cjs/jobs/child/app.js +86 -25
  87. package/dist/cjs/jobs/child/app.js.map +1 -1
  88. package/dist/cjs/jobs/child/index.d.ts +5 -5
  89. package/dist/cjs/jobs/child/index.js +5 -5
  90. package/dist/cjs/jobs/child/jobProcess.d.ts +68 -0
  91. package/dist/cjs/jobs/child/jobProcess.d.ts.map +1 -1
  92. package/dist/cjs/jobs/child/jobProcess.js +86 -11
  93. package/dist/cjs/jobs/child/jobProcess.js.map +1 -1
  94. package/dist/cjs/jobs/child-pool/index.d.ts +96 -0
  95. package/dist/cjs/jobs/child-pool/index.d.ts.map +1 -1
  96. package/dist/cjs/jobs/child-pool/index.js +91 -4
  97. package/dist/cjs/jobs/child-pool/index.js.map +1 -1
  98. package/dist/cjs/jobs/index.d.ts +10 -0
  99. package/dist/cjs/jobs/index.d.ts.map +1 -1
  100. package/dist/cjs/jobs/index.js +10 -0
  101. package/dist/cjs/jobs/index.js.map +1 -1
  102. package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts +2 -0
  103. package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts.map +1 -1
  104. package/dist/cjs/jobs/load-balancer/algorithm/index.js +6 -0
  105. package/dist/cjs/jobs/load-balancer/algorithm/index.js.map +1 -1
  106. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.d.ts +1 -1
  107. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.js +1 -1
  108. package/dist/cjs/jobs/load-balancer/algorithm/polling.d.ts +1 -1
  109. package/dist/cjs/jobs/load-balancer/algorithm/polling.js +1 -1
  110. package/dist/cjs/jobs/load-balancer/algorithm/random.d.ts +1 -1
  111. package/dist/cjs/jobs/load-balancer/algorithm/random.js +1 -1
  112. package/dist/cjs/jobs/load-balancer/algorithm/specify.d.ts +1 -1
  113. package/dist/cjs/jobs/load-balancer/algorithm/specify.js +1 -1
  114. package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts +1 -1
  115. package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts.map +1 -1
  116. package/dist/cjs/jobs/load-balancer/algorithm/weights.js +4 -8
  117. package/dist/cjs/jobs/load-balancer/algorithm/weights.js.map +1 -1
  118. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +1 -1
  119. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -1
  120. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js +6 -11
  121. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -1
  122. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.d.ts +1 -1
  123. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.js +1 -1
  124. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.d.ts +1 -1
  125. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.js +1 -1
  126. package/dist/cjs/jobs/load-balancer/consts.d.ts +22 -0
  127. package/dist/cjs/jobs/load-balancer/consts.d.ts.map +1 -1
  128. package/dist/cjs/jobs/load-balancer/consts.js +22 -0
  129. package/dist/cjs/jobs/load-balancer/consts.js.map +1 -1
  130. package/dist/cjs/jobs/load-balancer/index.d.ts +18 -18
  131. package/dist/cjs/jobs/load-balancer/index.js +18 -18
  132. package/dist/cjs/jobs/load-balancer/scheduler.d.ts +3 -3
  133. package/dist/cjs/jobs/load-balancer/scheduler.js +3 -3
  134. package/dist/cjs/jobs/load-balancer/types.d.ts +21 -0
  135. package/dist/cjs/jobs/load-balancer/types.d.ts.map +1 -1
  136. package/dist/cjs/jobs/load-balancer/types.js +4 -0
  137. package/dist/cjs/jobs/load-balancer/types.js.map +1 -1
  138. package/dist/cjs/jobs/registry.d.ts +24 -0
  139. package/dist/cjs/jobs/registry.d.ts.map +1 -0
  140. package/dist/cjs/jobs/registry.js +52 -0
  141. package/dist/cjs/jobs/registry.js.map +1 -0
  142. package/dist/cjs/loader/index.d.ts +52 -0
  143. package/dist/cjs/loader/index.d.ts.map +1 -1
  144. package/dist/cjs/loader/index.js +79 -10
  145. package/dist/cjs/loader/index.js.map +1 -1
  146. package/dist/cjs/log/index.d.ts +41 -0
  147. package/dist/cjs/log/index.d.ts.map +1 -1
  148. package/dist/cjs/log/index.js +59 -20
  149. package/dist/cjs/log/index.js.map +1 -1
  150. package/dist/cjs/log/logger.d.ts +26 -0
  151. package/dist/cjs/log/logger.d.ts.map +1 -1
  152. package/dist/cjs/log/logger.js +122 -2
  153. package/dist/cjs/log/logger.js.map +1 -1
  154. package/dist/cjs/message/childMessage.d.ts +50 -0
  155. package/dist/cjs/message/childMessage.d.ts.map +1 -1
  156. package/dist/cjs/message/childMessage.js +83 -2
  157. package/dist/cjs/message/childMessage.js.map +1 -1
  158. package/dist/cjs/ps/index.d.ts +112 -0
  159. package/dist/cjs/ps/index.d.ts.map +1 -1
  160. package/dist/cjs/ps/index.js +175 -41
  161. package/dist/cjs/ps/index.js.map +1 -1
  162. package/dist/cjs/socket/httpServer.d.ts +58 -5
  163. package/dist/cjs/socket/httpServer.d.ts.map +1 -1
  164. package/dist/cjs/socket/httpServer.js +94 -28
  165. package/dist/cjs/socket/httpServer.js.map +1 -1
  166. package/dist/cjs/socket/index.d.ts +45 -3
  167. package/dist/cjs/socket/index.d.ts.map +1 -1
  168. package/dist/cjs/socket/index.js +50 -14
  169. package/dist/cjs/socket/index.js.map +1 -1
  170. package/dist/cjs/socket/ipcServer.d.ts +31 -1
  171. package/dist/cjs/socket/ipcServer.d.ts.map +1 -1
  172. package/dist/cjs/socket/ipcServer.js +60 -43
  173. package/dist/cjs/socket/ipcServer.js.map +1 -1
  174. package/dist/cjs/socket/socketServer.d.ts +32 -1
  175. package/dist/cjs/socket/socketServer.d.ts.map +1 -1
  176. package/dist/cjs/socket/socketServer.js +53 -14
  177. package/dist/cjs/socket/socketServer.js.map +1 -1
  178. package/dist/cjs/socket/utils.d.ts +13 -0
  179. package/dist/cjs/socket/utils.d.ts.map +1 -0
  180. package/dist/cjs/socket/utils.js +41 -0
  181. package/dist/cjs/socket/utils.js.map +1 -0
  182. package/dist/cjs/storage/sqliteStorage.d.ts +93 -4
  183. package/dist/cjs/storage/sqliteStorage.d.ts.map +1 -1
  184. package/dist/cjs/storage/sqliteStorage.js +121 -9
  185. package/dist/cjs/storage/sqliteStorage.js.map +1 -1
  186. package/dist/cjs/types/index.d.ts +373 -5
  187. package/dist/cjs/types/index.d.ts.map +1 -1
  188. package/dist/cjs/utils/extend.d.ts +44 -1
  189. package/dist/cjs/utils/extend.d.ts.map +1 -1
  190. package/dist/cjs/utils/extend.js +67 -19
  191. package/dist/cjs/utils/extend.js.map +1 -1
  192. package/dist/cjs/utils/helper.d.ts +154 -1
  193. package/dist/cjs/utils/helper.d.ts.map +1 -1
  194. package/dist/cjs/utils/helper.js +205 -28
  195. package/dist/cjs/utils/helper.js.map +1 -1
  196. package/dist/cjs/utils/index.d.ts +93 -0
  197. package/dist/cjs/utils/index.d.ts.map +1 -1
  198. package/dist/cjs/utils/index.js +136 -12
  199. package/dist/cjs/utils/index.js.map +1 -1
  200. package/dist/cjs/utils/ip.d.ts +29 -0
  201. package/dist/cjs/utils/ip.d.ts.map +1 -1
  202. package/dist/cjs/utils/ip.js +95 -4
  203. package/dist/cjs/utils/ip.js.map +1 -1
  204. package/dist/cjs/utils/is.d.ts +123 -0
  205. package/dist/cjs/utils/is.d.ts.map +1 -1
  206. package/dist/cjs/utils/is.js +126 -14
  207. package/dist/cjs/utils/is.js.map +1 -1
  208. package/dist/cjs/utils/json.d.ts +54 -0
  209. package/dist/cjs/utils/json.d.ts.map +1 -1
  210. package/dist/cjs/utils/json.js +62 -0
  211. package/dist/cjs/utils/json.js.map +1 -1
  212. package/dist/cjs/utils/pargv.d.ts +51 -0
  213. package/dist/cjs/utils/pargv.d.ts.map +1 -1
  214. package/dist/cjs/utils/pargv.js +141 -3
  215. package/dist/cjs/utils/pargv.js.map +1 -1
  216. package/dist/cjs/utils/port/index.d.ts +42 -0
  217. package/dist/cjs/utils/port/index.d.ts.map +1 -1
  218. package/dist/cjs/utils/port/index.js +130 -7
  219. package/dist/cjs/utils/port/index.js.map +1 -1
  220. package/dist/cjs/utils/type_check.d.ts +79 -0
  221. package/dist/cjs/utils/type_check.d.ts.map +1 -1
  222. package/dist/cjs/utils/type_check.js +87 -1
  223. package/dist/cjs/utils/type_check.js.map +1 -1
  224. package/dist/cjs/utils/wrap.d.ts +26 -0
  225. package/dist/cjs/utils/wrap.d.ts.map +1 -1
  226. package/dist/cjs/utils/wrap.js +47 -10
  227. package/dist/cjs/utils/wrap.js.map +1 -1
  228. package/dist/esm/app/application.d.ts +36 -1
  229. package/dist/esm/app/application.d.ts.map +1 -1
  230. package/dist/esm/app/application.js +49 -2
  231. package/dist/esm/app/application.js.map +1 -1
  232. package/dist/esm/app/boot.d.ts +56 -1
  233. package/dist/esm/app/boot.d.ts.map +1 -1
  234. package/dist/esm/app/boot.js +74 -11
  235. package/dist/esm/app/boot.js.map +1 -1
  236. package/dist/esm/app/dir.d.ts +10 -0
  237. package/dist/esm/app/dir.d.ts.map +1 -1
  238. package/dist/esm/app/dir.js +71 -10
  239. package/dist/esm/app/dir.js.map +1 -1
  240. package/dist/esm/app/events.d.ts +58 -2
  241. package/dist/esm/app/events.d.ts.map +1 -1
  242. package/dist/esm/app/events.js +92 -12
  243. package/dist/esm/app/events.js.map +1 -1
  244. package/dist/esm/config/config_loader.d.ts +44 -0
  245. package/dist/esm/config/config_loader.d.ts.map +1 -1
  246. package/dist/esm/config/config_loader.js +82 -1
  247. package/dist/esm/config/config_loader.js.map +1 -1
  248. package/dist/esm/config/default_config.d.ts +5 -0
  249. package/dist/esm/config/default_config.d.ts.map +1 -1
  250. package/dist/esm/config/default_config.js +98 -11
  251. package/dist/esm/config/default_config.js.map +1 -1
  252. package/dist/esm/config/index.d.ts +31 -1
  253. package/dist/esm/config/index.d.ts.map +1 -1
  254. package/dist/esm/config/index.js +52 -0
  255. package/dist/esm/config/index.js.map +1 -1
  256. package/dist/esm/const/channel.d.ts +17 -0
  257. package/dist/esm/const/channel.d.ts.map +1 -1
  258. package/dist/esm/const/channel.js +17 -0
  259. package/dist/esm/const/channel.js.map +1 -1
  260. package/dist/esm/controller/controller_loader.d.ts +20 -1
  261. package/dist/esm/controller/controller_loader.d.ts.map +1 -1
  262. package/dist/esm/controller/controller_loader.js +89 -9
  263. package/dist/esm/controller/controller_loader.js.map +1 -1
  264. package/dist/esm/controller/index.d.ts +32 -0
  265. package/dist/esm/controller/index.d.ts.map +1 -1
  266. package/dist/esm/controller/index.js +66 -0
  267. package/dist/esm/controller/index.js.map +1 -1
  268. package/dist/esm/core/loader/file_loader.d.ts +77 -27
  269. package/dist/esm/core/loader/file_loader.d.ts.map +1 -1
  270. package/dist/esm/core/loader/file_loader.js +239 -75
  271. package/dist/esm/core/loader/file_loader.js.map +1 -1
  272. package/dist/esm/core/utils/index.d.ts +57 -2
  273. package/dist/esm/core/utils/index.d.ts.map +1 -1
  274. package/dist/esm/core/utils/index.js +87 -12
  275. package/dist/esm/core/utils/index.js.map +1 -1
  276. package/dist/esm/core/utils/timing.d.ts +47 -0
  277. package/dist/esm/core/utils/timing.d.ts.map +1 -1
  278. package/dist/esm/core/utils/timing.js +42 -2
  279. package/dist/esm/core/utils/timing.js.map +1 -1
  280. package/dist/esm/cross/cross.d.ts +81 -2
  281. package/dist/esm/cross/cross.d.ts.map +1 -1
  282. package/dist/esm/cross/cross.js +86 -16
  283. package/dist/esm/cross/cross.js.map +1 -1
  284. package/dist/esm/cross/crossProcess.d.ts +85 -14
  285. package/dist/esm/cross/crossProcess.d.ts.map +1 -1
  286. package/dist/esm/cross/crossProcess.js +85 -13
  287. package/dist/esm/cross/crossProcess.js.map +1 -1
  288. package/dist/esm/electron/app/index.d.ts +17 -1
  289. package/dist/esm/electron/app/index.d.ts.map +1 -1
  290. package/dist/esm/electron/app/index.js +27 -3
  291. package/dist/esm/electron/app/index.js.map +1 -1
  292. package/dist/esm/electron/index.d.ts +6 -0
  293. package/dist/esm/electron/index.d.ts.map +1 -1
  294. package/dist/esm/electron/index.js +16 -1
  295. package/dist/esm/electron/index.js.map +1 -1
  296. package/dist/esm/electron/window/index.d.ts +37 -0
  297. package/dist/esm/electron/window/index.d.ts.map +1 -1
  298. package/dist/esm/electron/window/index.js +144 -88
  299. package/dist/esm/electron/window/index.js.map +1 -1
  300. package/dist/esm/exception/index.d.ts +12 -0
  301. package/dist/esm/exception/index.d.ts.map +1 -1
  302. package/dist/esm/exception/index.js +67 -9
  303. package/dist/esm/exception/index.js.map +1 -1
  304. package/dist/esm/html/index.d.ts +19 -0
  305. package/dist/esm/html/index.d.ts.map +1 -1
  306. package/dist/esm/html/index.js +42 -0
  307. package/dist/esm/html/index.js.map +1 -1
  308. package/dist/esm/index.d.ts +35 -7
  309. package/dist/esm/index.d.ts.map +1 -1
  310. package/dist/esm/index.js +127 -80
  311. package/dist/esm/index.js.map +1 -1
  312. package/dist/esm/jobs/child/app.js +86 -25
  313. package/dist/esm/jobs/child/app.js.map +1 -1
  314. package/dist/esm/jobs/child/index.d.ts +5 -5
  315. package/dist/esm/jobs/child/index.js +5 -5
  316. package/dist/esm/jobs/child/jobProcess.d.ts +68 -0
  317. package/dist/esm/jobs/child/jobProcess.d.ts.map +1 -1
  318. package/dist/esm/jobs/child/jobProcess.js +86 -11
  319. package/dist/esm/jobs/child/jobProcess.js.map +1 -1
  320. package/dist/esm/jobs/child-pool/index.d.ts +96 -0
  321. package/dist/esm/jobs/child-pool/index.d.ts.map +1 -1
  322. package/dist/esm/jobs/child-pool/index.js +91 -4
  323. package/dist/esm/jobs/child-pool/index.js.map +1 -1
  324. package/dist/esm/jobs/index.d.ts +10 -0
  325. package/dist/esm/jobs/index.d.ts.map +1 -1
  326. package/dist/esm/jobs/index.js +10 -0
  327. package/dist/esm/jobs/index.js.map +1 -1
  328. package/dist/esm/jobs/load-balancer/algorithm/index.d.ts +2 -0
  329. package/dist/esm/jobs/load-balancer/algorithm/index.d.ts.map +1 -1
  330. package/dist/esm/jobs/load-balancer/algorithm/index.js +6 -0
  331. package/dist/esm/jobs/load-balancer/algorithm/index.js.map +1 -1
  332. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.d.ts +1 -1
  333. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.js +1 -1
  334. package/dist/esm/jobs/load-balancer/algorithm/polling.d.ts +1 -1
  335. package/dist/esm/jobs/load-balancer/algorithm/polling.js +1 -1
  336. package/dist/esm/jobs/load-balancer/algorithm/random.d.ts +1 -1
  337. package/dist/esm/jobs/load-balancer/algorithm/random.js +1 -1
  338. package/dist/esm/jobs/load-balancer/algorithm/specify.d.ts +1 -1
  339. package/dist/esm/jobs/load-balancer/algorithm/specify.js +1 -1
  340. package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts +1 -1
  341. package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts.map +1 -1
  342. package/dist/esm/jobs/load-balancer/algorithm/weights.js +4 -8
  343. package/dist/esm/jobs/load-balancer/algorithm/weights.js.map +1 -1
  344. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +1 -1
  345. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -1
  346. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js +6 -11
  347. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -1
  348. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.d.ts +1 -1
  349. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.js +1 -1
  350. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.d.ts +1 -1
  351. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.js +1 -1
  352. package/dist/esm/jobs/load-balancer/consts.d.ts +22 -0
  353. package/dist/esm/jobs/load-balancer/consts.d.ts.map +1 -1
  354. package/dist/esm/jobs/load-balancer/consts.js +22 -0
  355. package/dist/esm/jobs/load-balancer/consts.js.map +1 -1
  356. package/dist/esm/jobs/load-balancer/index.d.ts +18 -18
  357. package/dist/esm/jobs/load-balancer/index.js +18 -18
  358. package/dist/esm/jobs/load-balancer/scheduler.d.ts +3 -3
  359. package/dist/esm/jobs/load-balancer/scheduler.js +3 -3
  360. package/dist/esm/jobs/load-balancer/types.d.ts +21 -0
  361. package/dist/esm/jobs/load-balancer/types.d.ts.map +1 -1
  362. package/dist/esm/jobs/load-balancer/types.js +4 -0
  363. package/dist/esm/jobs/load-balancer/types.js.map +1 -1
  364. package/dist/esm/jobs/registry.d.ts +24 -0
  365. package/dist/esm/jobs/registry.d.ts.map +1 -0
  366. package/dist/esm/jobs/registry.js +52 -0
  367. package/dist/esm/jobs/registry.js.map +1 -0
  368. package/dist/esm/loader/index.d.ts +52 -0
  369. package/dist/esm/loader/index.d.ts.map +1 -1
  370. package/dist/esm/loader/index.js +79 -10
  371. package/dist/esm/loader/index.js.map +1 -1
  372. package/dist/esm/log/index.d.ts +41 -0
  373. package/dist/esm/log/index.d.ts.map +1 -1
  374. package/dist/esm/log/index.js +59 -20
  375. package/dist/esm/log/index.js.map +1 -1
  376. package/dist/esm/log/logger.d.ts +26 -0
  377. package/dist/esm/log/logger.d.ts.map +1 -1
  378. package/dist/esm/log/logger.js +122 -2
  379. package/dist/esm/log/logger.js.map +1 -1
  380. package/dist/esm/message/childMessage.d.ts +50 -0
  381. package/dist/esm/message/childMessage.d.ts.map +1 -1
  382. package/dist/esm/message/childMessage.js +83 -2
  383. package/dist/esm/message/childMessage.js.map +1 -1
  384. package/dist/esm/ps/index.d.ts +112 -0
  385. package/dist/esm/ps/index.d.ts.map +1 -1
  386. package/dist/esm/ps/index.js +175 -41
  387. package/dist/esm/ps/index.js.map +1 -1
  388. package/dist/esm/socket/httpServer.d.ts +58 -5
  389. package/dist/esm/socket/httpServer.d.ts.map +1 -1
  390. package/dist/esm/socket/httpServer.js +94 -28
  391. package/dist/esm/socket/httpServer.js.map +1 -1
  392. package/dist/esm/socket/index.d.ts +45 -3
  393. package/dist/esm/socket/index.d.ts.map +1 -1
  394. package/dist/esm/socket/index.js +50 -14
  395. package/dist/esm/socket/index.js.map +1 -1
  396. package/dist/esm/socket/ipcServer.d.ts +31 -1
  397. package/dist/esm/socket/ipcServer.d.ts.map +1 -1
  398. package/dist/esm/socket/ipcServer.js +60 -43
  399. package/dist/esm/socket/ipcServer.js.map +1 -1
  400. package/dist/esm/socket/socketServer.d.ts +32 -1
  401. package/dist/esm/socket/socketServer.d.ts.map +1 -1
  402. package/dist/esm/socket/socketServer.js +53 -14
  403. package/dist/esm/socket/socketServer.js.map +1 -1
  404. package/dist/esm/socket/utils.d.ts +13 -0
  405. package/dist/esm/socket/utils.d.ts.map +1 -0
  406. package/dist/esm/socket/utils.js +41 -0
  407. package/dist/esm/socket/utils.js.map +1 -0
  408. package/dist/esm/storage/sqliteStorage.d.ts +93 -4
  409. package/dist/esm/storage/sqliteStorage.d.ts.map +1 -1
  410. package/dist/esm/storage/sqliteStorage.js +121 -9
  411. package/dist/esm/storage/sqliteStorage.js.map +1 -1
  412. package/dist/esm/types/index.d.ts +373 -5
  413. package/dist/esm/types/index.d.ts.map +1 -1
  414. package/dist/esm/utils/extend.d.ts +44 -1
  415. package/dist/esm/utils/extend.d.ts.map +1 -1
  416. package/dist/esm/utils/extend.js +67 -19
  417. package/dist/esm/utils/extend.js.map +1 -1
  418. package/dist/esm/utils/helper.d.ts +154 -1
  419. package/dist/esm/utils/helper.d.ts.map +1 -1
  420. package/dist/esm/utils/helper.js +205 -28
  421. package/dist/esm/utils/helper.js.map +1 -1
  422. package/dist/esm/utils/index.d.ts +93 -0
  423. package/dist/esm/utils/index.d.ts.map +1 -1
  424. package/dist/esm/utils/index.js +136 -12
  425. package/dist/esm/utils/index.js.map +1 -1
  426. package/dist/esm/utils/ip.d.ts +29 -0
  427. package/dist/esm/utils/ip.d.ts.map +1 -1
  428. package/dist/esm/utils/ip.js +95 -4
  429. package/dist/esm/utils/ip.js.map +1 -1
  430. package/dist/esm/utils/is.d.ts +123 -0
  431. package/dist/esm/utils/is.d.ts.map +1 -1
  432. package/dist/esm/utils/is.js +126 -14
  433. package/dist/esm/utils/is.js.map +1 -1
  434. package/dist/esm/utils/json.d.ts +54 -0
  435. package/dist/esm/utils/json.d.ts.map +1 -1
  436. package/dist/esm/utils/json.js +62 -0
  437. package/dist/esm/utils/json.js.map +1 -1
  438. package/dist/esm/utils/pargv.d.ts +51 -0
  439. package/dist/esm/utils/pargv.d.ts.map +1 -1
  440. package/dist/esm/utils/pargv.js +141 -3
  441. package/dist/esm/utils/pargv.js.map +1 -1
  442. package/dist/esm/utils/port/index.d.ts +42 -0
  443. package/dist/esm/utils/port/index.d.ts.map +1 -1
  444. package/dist/esm/utils/port/index.js +130 -7
  445. package/dist/esm/utils/port/index.js.map +1 -1
  446. package/dist/esm/utils/type_check.d.ts +79 -0
  447. package/dist/esm/utils/type_check.d.ts.map +1 -1
  448. package/dist/esm/utils/type_check.js +87 -1
  449. package/dist/esm/utils/type_check.js.map +1 -1
  450. package/dist/esm/utils/wrap.d.ts +26 -0
  451. package/dist/esm/utils/wrap.d.ts.map +1 -1
  452. package/dist/esm/utils/wrap.js +47 -10
  453. package/dist/esm/utils/wrap.js.map +1 -1
  454. package/package.json +12 -13
@@ -4,15 +4,15 @@ exports.LoadBalancer = void 0;
4
4
  const consts_js_1 = require("./consts.js");
5
5
  const scheduler_js_1 = require("./scheduler.js");
6
6
  /**
7
- * 负载均衡器
8
- * @intro 参考electron-re项目,并做了一些改动
7
+ * Load Balancer
8
+ * @intro Based on the electron-re project with some modifications
9
9
  * @since 1.0.0
10
10
  */
11
11
  class LoadBalancer {
12
12
  /**
13
- * @param options - 配置选项
14
- * @param options.targets - 负载均衡目标列表 [{id: 1, weight: 1}, {id: 2, weight: 2}]
15
- * @param options.algorithm - 算法名称
13
+ * @param options - Configuration options
14
+ * @param options.targets - Load balancing target list [{id: 1, weight: 1}, {id: 2, weight: 2}]
15
+ * @param options.algorithm - Algorithm name
16
16
  */
17
17
  constructor(options) {
18
18
  this.targets = options.targets;
@@ -30,7 +30,7 @@ class LoadBalancer {
30
30
  this.calculateWeightIndex();
31
31
  }
32
32
  /**
33
- * 算法参数
33
+ * Algorithm parameters
34
34
  */
35
35
  memorizedParams() {
36
36
  return {
@@ -45,7 +45,7 @@ class LoadBalancer {
45
45
  };
46
46
  }
47
47
  /**
48
- * 刷新参数
48
+ * Refresh parameters
49
49
  */
50
50
  refreshParams(pidMap) {
51
51
  const infos = Object.values(pidMap);
@@ -55,7 +55,7 @@ class LoadBalancer {
55
55
  }
56
56
  }
57
57
  /**
58
- * 选举出一个进程
58
+ * Elect a single process
59
59
  */
60
60
  pickOne(...params) {
61
61
  const memoFn = this.memoParams[this.algorithm];
@@ -65,13 +65,13 @@ class LoadBalancer {
65
65
  return this.scheduler.calculate(this.targets, memoFn(...params));
66
66
  }
67
67
  /**
68
- * 选举出多个进程
68
+ * Elect multiple processes
69
69
  */
70
70
  pickMulti(count = 1, ...params) {
71
71
  return new Array(count).fill(null).map(() => this.pickOne(...params));
72
72
  }
73
73
  /**
74
- * 计算权重
74
+ * Calculate weights
75
75
  */
76
76
  calculateWeightIndex() {
77
77
  this.params.weightTotal = this.targets.reduce((total, cur) => total + (cur.weight || 0), 0);
@@ -80,7 +80,7 @@ class LoadBalancer {
80
80
  }
81
81
  }
82
82
  /**
83
- * 计算索引
83
+ * Calculate index
84
84
  */
85
85
  calculateIndex() {
86
86
  if (this.params.currentIndex >= this.targets.length) {
@@ -88,7 +88,7 @@ class LoadBalancer {
88
88
  }
89
89
  }
90
90
  /**
91
- * 清除data
91
+ * Clean data
92
92
  */
93
93
  clean(id) {
94
94
  if (id !== undefined) {
@@ -108,7 +108,7 @@ class LoadBalancer {
108
108
  }
109
109
  }
110
110
  /**
111
- * 添加一个进程信息
111
+ * Add a process entry
112
112
  */
113
113
  add(task) {
114
114
  if (this.targets.find(target => target.id === task.id)) {
@@ -119,7 +119,7 @@ class LoadBalancer {
119
119
  this.calculateWeightIndex();
120
120
  }
121
121
  /**
122
- * 删除一个进程信息
122
+ * Delete a process entry
123
123
  */
124
124
  del(target) {
125
125
  let found = false;
@@ -141,7 +141,7 @@ class LoadBalancer {
141
141
  }
142
142
  }
143
143
  /**
144
- * 擦除
144
+ * Wipe all data
145
145
  */
146
146
  wipe() {
147
147
  this.targets = [];
@@ -149,7 +149,7 @@ class LoadBalancer {
149
149
  this.clean();
150
150
  }
151
151
  /**
152
- * 更新计算参数
152
+ * Update calculation parameters
153
153
  */
154
154
  updateParams(object) {
155
155
  Object.entries(object).forEach(([key, value]) => {
@@ -159,7 +159,7 @@ class LoadBalancer {
159
159
  });
160
160
  }
161
161
  /**
162
- * 设置targets
162
+ * Set targets
163
163
  */
164
164
  setTargets(targets) {
165
165
  const targetsMap = targets.reduce((total, cur) => {
@@ -176,7 +176,7 @@ class LoadBalancer {
176
176
  this.calculateWeightIndex();
177
177
  }
178
178
  /**
179
- * 设置算法
179
+ * Set algorithm
180
180
  */
181
181
  setAlgorithm(algorithm) {
182
182
  if (algorithm in consts_js_1.AlgorithmType) {
@@ -1,16 +1,16 @@
1
1
  import type { LoadBalancerTarget } from './types.js';
2
2
  /**
3
- * 算法调度器
3
+ * Algorithm scheduler
4
4
  */
5
5
  export declare class Scheduler {
6
6
  private algorithm;
7
7
  constructor(algorithm?: string);
8
8
  /**
9
- * 计算
9
+ * Calculate
10
10
  */
11
11
  calculate(tasks: LoadBalancerTarget[], params: unknown[]): LoadBalancerTarget | null;
12
12
  /**
13
- * 设置算法
13
+ * Set algorithm
14
14
  */
15
15
  setAlgorithm(algorithm: string): void;
16
16
  }
@@ -7,21 +7,21 @@ exports.Scheduler = void 0;
7
7
  const consts_js_1 = require("./consts.js");
8
8
  const index_js_1 = __importDefault(require("./algorithm/index.js"));
9
9
  /**
10
- * 算法调度器
10
+ * Algorithm scheduler
11
11
  */
12
12
  class Scheduler {
13
13
  constructor(algorithm) {
14
14
  this.algorithm = algorithm || consts_js_1.AlgorithmType.polling;
15
15
  }
16
16
  /**
17
- * 计算
17
+ * Calculate
18
18
  */
19
19
  calculate(tasks, params) {
20
20
  const algo = index_js_1.default[this.algorithm];
21
21
  return algo(tasks, ...params);
22
22
  }
23
23
  /**
24
- * 设置算法
24
+ * Set algorithm
25
25
  */
26
26
  setAlgorithm(algorithm) {
27
27
  if (algorithm in consts_js_1.AlgorithmType) {
@@ -1,22 +1,43 @@
1
+ /**
2
+ * @module jobs/load-balancer/types
3
+ * @description Load balancer type definitions.
4
+ */
5
+ /** Load balancer target (child process) */
1
6
  export interface LoadBalancerTarget {
7
+ /** Target identifier (usually child process PID) */
2
8
  id: string | number;
9
+ /** Weight value (used by weighted algorithms) */
3
10
  weight?: number;
4
11
  }
12
+ /** Load balancer runtime parameters */
5
13
  export interface LoadBalancerParams {
14
+ /** Current polling index */
6
15
  currentIndex: number;
16
+ /** Current weight index (for weighted round-robin) */
7
17
  weightIndex: number;
18
+ /** Sum of all weights */
8
19
  weightTotal: number;
20
+ /** Connections map: pid -> current connection count */
9
21
  connectionsMap: Record<string | number, number>;
22
+ /** CPU occupancy map: pid -> CPU usage */
10
23
  cpuOccupancyMap: Record<string | number, number>;
24
+ /** Memory occupancy map: pid -> memory usage */
11
25
  memoryOccupancyMap: Record<string | number, number>;
12
26
  }
27
+ /** Load balancer configuration options */
13
28
  export interface LoadBalancerOptions {
29
+ /** Target list */
14
30
  targets: LoadBalancerTarget[];
31
+ /** Algorithm name (default: polling) */
15
32
  algorithm?: string;
16
33
  }
34
+ /** Process info (CPU/memory) */
17
35
  export interface PidInfo {
36
+ /** Process ID */
18
37
  pid: string | number;
38
+ /** CPU usage */
19
39
  cpu: number;
40
+ /** Memory usage */
20
41
  memory: number;
21
42
  }
22
43
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,eAAe,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,kBAAkB,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,2CAA2C;AAC3C,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,4BAA4B;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,0CAA0C;IAC1C,eAAe,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,gDAAgD;IAChD,kBAAkB,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;CACrD;AAED,0CAA0C;AAC1C,MAAM,WAAW,mBAAmB;IAClC,kBAAkB;IAClB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,gCAAgC;AAChC,MAAM,WAAW,OAAO;IACtB,iBAAiB;IACjB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,gBAAgB;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -1,3 +1,7 @@
1
1
  "use strict";
2
+ /**
3
+ * @module jobs/load-balancer/types
4
+ * @description Load balancer type definitions.
5
+ */
2
6
  Object.defineProperty(exports, "__esModule", { value: true });
3
7
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,24 @@
1
+ /** Killable job manager interface */
2
+ type Killable = {
3
+ killAll: () => void;
4
+ } | {
5
+ getPids: () => string[];
6
+ kill: (pid: string | number) => void;
7
+ };
8
+ /**
9
+ * Register a job manager
10
+ *
11
+ * Called after creating a ChildJob or ChildPoolJob to ensure cleanup on application exit.
12
+ *
13
+ * @param job - Job manager instance (ChildJob or ChildPoolJob)
14
+ */
15
+ export declare function registerJobManager(job: Killable): void;
16
+ /**
17
+ * Kill all registered job managers
18
+ *
19
+ * Called in the Electron before-quit event to ensure all child processes are properly terminated.
20
+ * Prefers killAll(), falls back to killing individual processes.
21
+ */
22
+ export declare function killAllJobs(): void;
23
+ export {};
24
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/jobs/registry.ts"],"names":[],"mappings":"AAOA,qCAAqC;AACrC,KAAK,QAAQ,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;CAAE,CAAC;AAK5G;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAoBlC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerJobManager = registerJobManager;
4
+ exports.killAllJobs = killAllJobs;
5
+ /**
6
+ * @module jobs/registry
7
+ * @description Job manager registry. Centrally manages all ChildJob and ChildPoolJob instances,
8
+ * terminating all child processes on application exit (before-quit) to prevent process leaks.
9
+ */
10
+ const index_js_1 = require("../log/index.js");
11
+ /** List of registered job managers */
12
+ const registeredJobs = [];
13
+ /**
14
+ * Register a job manager
15
+ *
16
+ * Called after creating a ChildJob or ChildPoolJob to ensure cleanup on application exit.
17
+ *
18
+ * @param job - Job manager instance (ChildJob or ChildPoolJob)
19
+ */
20
+ function registerJobManager(job) {
21
+ registeredJobs.push(job);
22
+ }
23
+ /**
24
+ * Kill all registered job managers
25
+ *
26
+ * Called in the Electron before-quit event to ensure all child processes are properly terminated.
27
+ * Prefers killAll(), falls back to killing individual processes.
28
+ */
29
+ function killAllJobs() {
30
+ const failed = [];
31
+ for (const job of registeredJobs) {
32
+ try {
33
+ if ('killAll' in job && typeof job.killAll === 'function') {
34
+ job.killAll();
35
+ }
36
+ else if ('getPids' in job && 'kill' in job) {
37
+ const pids = job.getPids();
38
+ for (const pid of pids) {
39
+ job.kill(typeof pid === 'string' ? parseInt(pid, 10) : pid);
40
+ }
41
+ }
42
+ }
43
+ catch (err) {
44
+ index_js_1.coreLogger.error('[jobs/registry] error killing job manager:', err);
45
+ failed.push(err);
46
+ }
47
+ }
48
+ if (failed.length > 0) {
49
+ index_js_1.coreLogger.error(`[jobs/registry] ${failed.length} job manager(s) failed to kill, processes may be orphaned`);
50
+ }
51
+ }
52
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/jobs/registry.ts"],"names":[],"mappings":";;AAoBA,gDAEC;AAQD,kCAoBC;AAlDD;;;;GAIG;AACH,8CAA6C;AAK7C,sCAAsC;AACtC,MAAM,cAAc,GAAe,EAAE,CAAC;AAEtC;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,GAAa;IAC9C,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW;IACzB,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,IAAI,SAAS,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,CAAC;iBAAM,IAAI,SAAS,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;gBAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;gBAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;oBACvB,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,qBAAU,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;YACpE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,qBAAU,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,MAAM,2DAA2D,CAAC,CAAC;IAChH,CAAC;AACH,CAAC"}
@@ -1,6 +1,58 @@
1
+ /**
2
+ * Load a file and automatically execute function exports
3
+ *
4
+ * If the file exports a plain function (not a class or bytecode class), automatically calls that function
5
+ * and returns the execution result. Suitable for config files that need to dynamically return content based on appInfo.
6
+ *
7
+ * @param filepath - File path (relative paths are based on electronDir)
8
+ * @param inject - Arguments passed to the function export (spread into the call)
9
+ * @returns File export content or function execution result
10
+ * @throws Throws an error if the file does not exist
11
+ */
1
12
  export declare function loadFile(filepath: string, ...inject: unknown[]): unknown;
13
+ /**
14
+ * Load a file (without auto-execution)
15
+ *
16
+ * Returns the module export content directly, without any processing.
17
+ * Suitable for scenarios where the original module reference is needed (e.g. child process task loading).
18
+ *
19
+ * @param filepath - Absolute file path
20
+ * @returns Module export content
21
+ */
2
22
  export declare function requireFile(filepath: string): unknown;
23
+ /**
24
+ * Load and run a file
25
+ *
26
+ * Determines execution method based on export type:
27
+ * - Class/bytecode class -> Instantiate with new, inject as constructor arguments
28
+ * - Plain function -> Call directly, inject as function arguments
29
+ * - Other -> Return as-is
30
+ *
31
+ * @param filepath - Absolute file path
32
+ * @param inject - Arguments passed to the constructor or function (spread into the call)
33
+ * @returns Instantiated class object or function execution result
34
+ */
3
35
  export declare function execFile(filepath: string, ...inject: unknown[]): unknown;
36
+ /**
37
+ * Resolve the absolute path of a module
38
+ *
39
+ * First tries require.resolve(), then falls back to suffix-based rules:
40
+ * - .default / .prod -> Try .jsc (bytecode version)
41
+ * - .js -> Try .jsc
42
+ * - No suffix -> Try .js and .jsc
43
+ *
44
+ * @param filepath - Module path
45
+ * @returns Absolute path of the module, or undefined if it cannot be resolved
46
+ */
4
47
  export declare function resolveModule(filepath: string): string | undefined;
48
+ /**
49
+ * Get the absolute path of a file under the electron directory
50
+ *
51
+ * Relative paths are resolved based on electronDir, and resolveModule is also attempted to find the actual file.
52
+ *
53
+ * @param filepath - File path (relative or absolute)
54
+ * @returns Absolute path of the file
55
+ * @throws Throws an error if the file does not exist
56
+ */
5
57
  export declare function getFullpath(filepath: string): string;
6
58
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/loader/index.ts"],"names":[],"mappings":"AAOA,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAiBxE;AAGD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAErD;AAGD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAQxE;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAmBlE;AAGD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYpD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/loader/index.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAkBxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAQxE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA4BlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYpD"}
@@ -8,12 +8,34 @@ exports.requireFile = requireFile;
8
8
  exports.execFile = execFile;
9
9
  exports.resolveModule = resolveModule;
10
10
  exports.getFullpath = getFullpath;
11
+ /**
12
+ * @module loader
13
+ * @description File loading module. Provides multiple file loading and execution methods,
14
+ * serving as the foundational dependency for controller loading, config loading, and task execution.
15
+ *
16
+ * Core functions:
17
+ * - loadFile: Load a file, automatically execute if the export is a function
18
+ * - requireFile: Load a file without auto-execution
19
+ * - execFile: Load a file, instantiate if class, execute if function
20
+ * - resolveModule: Resolve the absolute path of a module
21
+ * - getFullpath: Get the absolute path of a file under the electron directory
22
+ */
11
23
  const type_check_js_1 = require("../utils/type_check.js");
12
24
  const fs_1 = __importDefault(require("fs"));
13
25
  const path_1 = __importDefault(require("path"));
14
26
  const index_js_1 = require("../core/utils/index.js");
15
27
  const index_js_2 = require("../ps/index.js");
16
- // 加载单个文件(如果是函数,将被执行)
28
+ /**
29
+ * Load a file and automatically execute function exports
30
+ *
31
+ * If the file exports a plain function (not a class or bytecode class), automatically calls that function
32
+ * and returns the execution result. Suitable for config files that need to dynamically return content based on appInfo.
33
+ *
34
+ * @param filepath - File path (relative paths are based on electronDir)
35
+ * @param inject - Arguments passed to the function export (spread into the call)
36
+ * @returns File export content or function execution result
37
+ * @throws Throws an error if the file does not exist
38
+ */
17
39
  function loadFile(filepath, ...inject) {
18
40
  let fullpath = filepath;
19
41
  const isAbsolute = path_1.default.isAbsolute(fullpath);
@@ -25,39 +47,78 @@ function loadFile(filepath, ...inject) {
25
47
  throw new Error(`[ee-core] [loader/index] loadFile ${filepath} does not exist`);
26
48
  }
27
49
  let ret = (0, index_js_1.loadFile)(fullpath);
50
+ // Plain function export: auto-execute, inject arguments (e.g. appInfo)
28
51
  if ((0, type_check_js_1.isFunction)(ret) && !(0, type_check_js_1.isClass)(ret) && !(0, index_js_1.isBytecodeClass)(ret)) {
29
52
  ret = ret(...inject);
30
53
  }
31
54
  return ret;
32
55
  }
33
- // requireFile
56
+ /**
57
+ * Load a file (without auto-execution)
58
+ *
59
+ * Returns the module export content directly, without any processing.
60
+ * Suitable for scenarios where the original module reference is needed (e.g. child process task loading).
61
+ *
62
+ * @param filepath - Absolute file path
63
+ * @returns Module export content
64
+ */
34
65
  function requireFile(filepath) {
35
66
  return (0, index_js_1.loadFile)(filepath);
36
67
  }
37
- // 加载并运行文件
68
+ /**
69
+ * Load and run a file
70
+ *
71
+ * Determines execution method based on export type:
72
+ * - Class/bytecode class -> Instantiate with new, inject as constructor arguments
73
+ * - Plain function -> Call directly, inject as function arguments
74
+ * - Other -> Return as-is
75
+ *
76
+ * @param filepath - Absolute file path
77
+ * @param inject - Arguments passed to the constructor or function (spread into the call)
78
+ * @returns Instantiated class object or function execution result
79
+ */
38
80
  function execFile(filepath, ...inject) {
39
81
  let ret = (0, index_js_1.loadFile)(filepath);
40
82
  if ((0, type_check_js_1.isClass)(ret) || (0, index_js_1.isBytecodeClass)(ret)) {
41
- ret = new ret(inject);
83
+ ret = new ret(...inject);
42
84
  }
43
85
  else if ((0, type_check_js_1.isFunction)(ret)) {
44
- ret = ret(inject);
86
+ ret = ret(...inject);
45
87
  }
46
88
  return ret;
47
89
  }
48
- // 模块的绝对路径
90
+ /**
91
+ * Resolve the absolute path of a module
92
+ *
93
+ * First tries require.resolve(), then falls back to suffix-based rules:
94
+ * - .default / .prod -> Try .jsc (bytecode version)
95
+ * - .js -> Try .jsc
96
+ * - No suffix -> Try .js and .jsc
97
+ *
98
+ * @param filepath - Module path
99
+ * @returns Absolute path of the module, or undefined if it cannot be resolved
100
+ */
49
101
  function resolveModule(filepath) {
50
102
  let fullpath;
51
103
  try {
52
104
  fullpath = require.resolve(filepath);
53
105
  }
54
106
  catch {
55
- // 特殊后缀处理
56
- if (filepath && (filepath.endsWith('.defalut') || filepath.endsWith('.prod'))) {
107
+ // Special suffix handling: config filenames like config.default, config.prod
108
+ if (filepath && (filepath.endsWith('.default') || filepath.endsWith('.prod'))) {
57
109
  fullpath = filepath + '.jsc';
58
110
  }
59
111
  else if (filepath && filepath.endsWith('.js')) {
60
- fullpath = filepath + 'c';
112
+ fullpath = filepath + 'c'; // .js → .jsc
113
+ }
114
+ // In packaged mode, require.resolve may fail; try checking if the file exists directly
115
+ if (!fullpath || !fs_1.default.existsSync(fullpath)) {
116
+ if (fs_1.default.existsSync(filepath + '.js')) {
117
+ fullpath = filepath + '.js';
118
+ }
119
+ else if (fs_1.default.existsSync(filepath + '.jsc')) {
120
+ fullpath = filepath + '.jsc';
121
+ }
61
122
  }
62
123
  if (!fs_1.default.existsSync(filepath) && (!fullpath || !fs_1.default.existsSync(fullpath))) {
63
124
  console.warn(`[ee-core] [loader] resolveModule unknow filepath: ${JSON.stringify({ filepath, fullpath })}`);
@@ -66,7 +127,15 @@ function resolveModule(filepath) {
66
127
  }
67
128
  return fullpath;
68
129
  }
69
- // 获取electron目录下文件的绝对路径
130
+ /**
131
+ * Get the absolute path of a file under the electron directory
132
+ *
133
+ * Relative paths are resolved based on electronDir, and resolveModule is also attempted to find the actual file.
134
+ *
135
+ * @param filepath - File path (relative or absolute)
136
+ * @returns Absolute path of the file
137
+ * @throws Throws an error if the file does not exist
138
+ */
70
139
  function getFullpath(filepath) {
71
140
  let fullpath;
72
141
  const isAbsolute = path_1.default.isAbsolute(filepath);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/loader/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/loader/index.ts"],"names":[],"mappings":";;;;;AA6BA,4BAkBC;AAWD,kCAEC;AAcD,4BAQC;AAaD,sCA4BC;AAWD,kCAYC;AAlJD;;;;;;;;;;;GAWG;AACH,0DAA6D;AAC7D,4CAAoB;AACpB,gDAAwB;AACxB,qDAAmF;AACnF,6CAAgD;AAEhD;;;;;;;;;;GAUG;AACH,SAAgB,QAAQ,CAAC,QAAgB,EAAE,GAAG,MAAiB;IAC7D,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,MAAM,UAAU,GAAG,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,IAAA,yBAAc,GAAE,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC;IAC/C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,iBAAiB,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,GAAG,GAAG,IAAA,mBAAY,EAAC,QAAQ,CAAC,CAAC;IACjC,uEAAuE;IACvE,IAAI,IAAA,0BAAU,EAAC,GAAG,CAAC,IAAI,CAAC,IAAA,uBAAO,EAAC,GAAG,CAAC,IAAI,CAAC,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC;QAC9D,GAAG,GAAI,GAAuC,CAAC,GAAG,MAAM,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,OAAO,IAAA,mBAAY,EAAC,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,QAAgB,EAAE,GAAG,MAAiB;IAC7D,IAAI,GAAG,GAAG,IAAA,mBAAY,EAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,IAAA,uBAAO,EAAC,GAAG,CAAC,IAAI,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC;QACzC,GAAG,GAAG,IAAK,GAA2C,CAAC,GAAG,MAAM,CAAC,CAAC;IACpE,CAAC;SAAM,IAAI,IAAA,0BAAU,EAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,GAAG,GAAI,GAAuC,CAAC,GAAG,MAAM,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,aAAa,CAAC,QAAgB;IAC5C,IAAI,QAA4B,CAAC;IACjC,IAAI,CAAC;QACH,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;QAC7E,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YAC9E,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;QAC/B,CAAC;aAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,QAAQ,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC,aAAa;QAC1C,CAAC;QAED,uFAAuF;QACvF,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC;gBACpC,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;YAC9B,CAAC;iBAAM,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;gBAC5C,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,qDAAqD,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5G,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,IAAI,QAA4B,CAAC;IACjC,MAAM,UAAU,GAAG,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,IAAA,yBAAc,GAAE,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,2CAA2C,QAAQ,aAAa,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,5 +1,25 @@
1
+ /**
2
+ * @module log
3
+ * @description Log module entry point. Provides log creation, loading, and retrieval functionality.
4
+ *
5
+ * Three log instances:
6
+ * - logger: Application log, records business code output
7
+ * - coreLogger: Framework core log, records framework internal runtime information
8
+ * - errorLogger: Error log, only records error/fatal levels
9
+ *
10
+ * Wraps log methods with Proxy, compatible with multiple calling styles:
11
+ * - pino standard: logger.info({ key: 'value' }, 'message')
12
+ * - pino printf: logger.info('count: %d', 42)
13
+ * - Concatenation mode: logger.info('msg:', value) → auto-concatenates to 'msg: value'
14
+ */
1
15
  import pino from 'pino';
2
16
  import { PinoLoggers } from './logger.js';
17
+ /**
18
+ * EeLogger interface
19
+ *
20
+ * Defines the framework's unified log interface, shielding pino internal implementation details.
21
+ * Supports six levels: trace/debug/info/warn/error/fatal and child() sub-logger.
22
+ */
3
23
  export interface EeLogger {
4
24
  trace(...args: unknown[]): void;
5
25
  debug(...args: unknown[]): void;
@@ -9,10 +29,31 @@ export interface EeLogger {
9
29
  fatal(...args: unknown[]): void;
10
30
  child(bindings: pino.Bindings): EeLogger;
11
31
  }
32
+ /**
33
+ * Create log instances
34
+ *
35
+ * @param config - Custom log configuration (optional)
36
+ * @returns PinoLoggers object
37
+ */
12
38
  export declare function createLog(config?: Record<string, unknown>): PinoLoggers;
39
+ /**
40
+ * Load log system
41
+ *
42
+ * Creates log instances using system configuration. Called by boot.ts init() during framework startup flow.
43
+ */
13
44
  export declare function loadLog(): void;
45
+ /**
46
+ * Get log instance collection
47
+ *
48
+ * If logs have not been loaded yet, automatically triggers loading.
49
+ *
50
+ * @returns PinoLoggers object
51
+ */
14
52
  export declare function getLoggers(): PinoLoggers;
53
+ /** Application log instance (Proxy wrapped) */
15
54
  export declare const logger: EeLogger;
55
+ /** Framework core log instance (Proxy wrapped) */
16
56
  export declare const coreLogger: EeLogger;
57
+ /** Error log instance (Proxy wrapped, error/fatal level only) */
17
58
  export declare const errorLogger: EeLogger;
18
59
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/log/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,WAAW,EAAU,MAAM,aAAa,CAAC;AAElD,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;CAC1C;AAID,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,CAEvE;AAED,wBAAgB,OAAO,IAAI,IAAI,CAE9B;AAED,wBAAgB,UAAU,IAAI,WAAW,CAGxC;AA6DD,eAAO,MAAM,MAAM,EAAE,QAAwC,CAAC;AAC9D,eAAO,MAAM,UAAU,EAAE,QAA4C,CAAC;AACtE,eAAO,MAAM,WAAW,EAAE,QAA6C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/log/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,WAAW,EAAU,MAAM,aAAa,CAAC;AAElD;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;CAC1C;AAKD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,OAAO,IAAI,IAAI,CAE9B;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,IAAI,WAAW,CAGxC;AAgFD,+CAA+C;AAC/C,eAAO,MAAM,MAAM,EAAE,QAA0D,CAAC;AAChF,kDAAkD;AAClD,eAAO,MAAM,UAAU,EAAE,QAA8D,CAAC;AACxF,iEAAiE;AACjE,eAAO,MAAM,WAAW,EAAE,QAA+D,CAAC"}