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

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 (453) hide show
  1. package/dist/cjs/app/application.d.ts +36 -1
  2. package/dist/cjs/app/application.d.ts.map +1 -1
  3. package/dist/cjs/app/application.js +49 -2
  4. package/dist/cjs/app/application.js.map +1 -1
  5. package/dist/cjs/app/boot.d.ts +56 -1
  6. package/dist/cjs/app/boot.d.ts.map +1 -1
  7. package/dist/cjs/app/boot.js +74 -11
  8. package/dist/cjs/app/boot.js.map +1 -1
  9. package/dist/cjs/app/dir.d.ts +10 -0
  10. package/dist/cjs/app/dir.d.ts.map +1 -1
  11. package/dist/cjs/app/dir.js +71 -10
  12. package/dist/cjs/app/dir.js.map +1 -1
  13. package/dist/cjs/app/events.d.ts +58 -2
  14. package/dist/cjs/app/events.d.ts.map +1 -1
  15. package/dist/cjs/app/events.js +92 -12
  16. package/dist/cjs/app/events.js.map +1 -1
  17. package/dist/cjs/config/config_loader.d.ts +44 -0
  18. package/dist/cjs/config/config_loader.d.ts.map +1 -1
  19. package/dist/cjs/config/config_loader.js +82 -1
  20. package/dist/cjs/config/config_loader.js.map +1 -1
  21. package/dist/cjs/config/default_config.d.ts +5 -0
  22. package/dist/cjs/config/default_config.d.ts.map +1 -1
  23. package/dist/cjs/config/default_config.js +98 -11
  24. package/dist/cjs/config/default_config.js.map +1 -1
  25. package/dist/cjs/config/index.d.ts +31 -1
  26. package/dist/cjs/config/index.d.ts.map +1 -1
  27. package/dist/cjs/config/index.js +52 -0
  28. package/dist/cjs/config/index.js.map +1 -1
  29. package/dist/cjs/const/channel.d.ts +17 -0
  30. package/dist/cjs/const/channel.d.ts.map +1 -1
  31. package/dist/cjs/const/channel.js +17 -0
  32. package/dist/cjs/const/channel.js.map +1 -1
  33. package/dist/cjs/controller/controller_loader.d.ts +20 -1
  34. package/dist/cjs/controller/controller_loader.d.ts.map +1 -1
  35. package/dist/cjs/controller/controller_loader.js +89 -9
  36. package/dist/cjs/controller/controller_loader.js.map +1 -1
  37. package/dist/cjs/controller/index.d.ts +32 -0
  38. package/dist/cjs/controller/index.d.ts.map +1 -1
  39. package/dist/cjs/controller/index.js +66 -0
  40. package/dist/cjs/controller/index.js.map +1 -1
  41. package/dist/cjs/core/loader/file_loader.d.ts +78 -27
  42. package/dist/cjs/core/loader/file_loader.d.ts.map +1 -1
  43. package/dist/cjs/core/loader/file_loader.js +194 -68
  44. package/dist/cjs/core/loader/file_loader.js.map +1 -1
  45. package/dist/cjs/core/utils/index.d.ts +57 -2
  46. package/dist/cjs/core/utils/index.d.ts.map +1 -1
  47. package/dist/cjs/core/utils/index.js +120 -12
  48. package/dist/cjs/core/utils/index.js.map +1 -1
  49. package/dist/cjs/core/utils/timing.d.ts +47 -0
  50. package/dist/cjs/core/utils/timing.d.ts.map +1 -1
  51. package/dist/cjs/core/utils/timing.js +42 -2
  52. package/dist/cjs/core/utils/timing.js.map +1 -1
  53. package/dist/cjs/cross/cross.d.ts +81 -2
  54. package/dist/cjs/cross/cross.d.ts.map +1 -1
  55. package/dist/cjs/cross/cross.js +86 -16
  56. package/dist/cjs/cross/cross.js.map +1 -1
  57. package/dist/cjs/cross/crossProcess.d.ts +85 -14
  58. package/dist/cjs/cross/crossProcess.d.ts.map +1 -1
  59. package/dist/cjs/cross/crossProcess.js +85 -13
  60. package/dist/cjs/cross/crossProcess.js.map +1 -1
  61. package/dist/cjs/electron/app/index.d.ts +17 -1
  62. package/dist/cjs/electron/app/index.d.ts.map +1 -1
  63. package/dist/cjs/electron/app/index.js +27 -3
  64. package/dist/cjs/electron/app/index.js.map +1 -1
  65. package/dist/cjs/electron/index.d.ts +6 -0
  66. package/dist/cjs/electron/index.d.ts.map +1 -1
  67. package/dist/cjs/electron/index.js +16 -1
  68. package/dist/cjs/electron/index.js.map +1 -1
  69. package/dist/cjs/electron/window/index.d.ts +37 -0
  70. package/dist/cjs/electron/window/index.d.ts.map +1 -1
  71. package/dist/cjs/electron/window/index.js +144 -88
  72. package/dist/cjs/electron/window/index.js.map +1 -1
  73. package/dist/cjs/exception/index.d.ts +12 -0
  74. package/dist/cjs/exception/index.d.ts.map +1 -1
  75. package/dist/cjs/exception/index.js +67 -9
  76. package/dist/cjs/exception/index.js.map +1 -1
  77. package/dist/cjs/html/index.d.ts +19 -0
  78. package/dist/cjs/html/index.d.ts.map +1 -1
  79. package/dist/cjs/html/index.js +42 -0
  80. package/dist/cjs/html/index.js.map +1 -1
  81. package/dist/cjs/index.d.ts +35 -7
  82. package/dist/cjs/index.d.ts.map +1 -1
  83. package/dist/cjs/index.js +127 -80
  84. package/dist/cjs/index.js.map +1 -1
  85. package/dist/cjs/jobs/child/app.js +86 -25
  86. package/dist/cjs/jobs/child/app.js.map +1 -1
  87. package/dist/cjs/jobs/child/index.d.ts +5 -5
  88. package/dist/cjs/jobs/child/index.js +5 -5
  89. package/dist/cjs/jobs/child/jobProcess.d.ts +68 -0
  90. package/dist/cjs/jobs/child/jobProcess.d.ts.map +1 -1
  91. package/dist/cjs/jobs/child/jobProcess.js +86 -11
  92. package/dist/cjs/jobs/child/jobProcess.js.map +1 -1
  93. package/dist/cjs/jobs/child-pool/index.d.ts +96 -0
  94. package/dist/cjs/jobs/child-pool/index.d.ts.map +1 -1
  95. package/dist/cjs/jobs/child-pool/index.js +91 -4
  96. package/dist/cjs/jobs/child-pool/index.js.map +1 -1
  97. package/dist/cjs/jobs/index.d.ts +10 -0
  98. package/dist/cjs/jobs/index.d.ts.map +1 -1
  99. package/dist/cjs/jobs/index.js +10 -0
  100. package/dist/cjs/jobs/index.js.map +1 -1
  101. package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts +2 -0
  102. package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts.map +1 -1
  103. package/dist/cjs/jobs/load-balancer/algorithm/index.js +6 -0
  104. package/dist/cjs/jobs/load-balancer/algorithm/index.js.map +1 -1
  105. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.d.ts +1 -1
  106. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.js +1 -1
  107. package/dist/cjs/jobs/load-balancer/algorithm/polling.d.ts +1 -1
  108. package/dist/cjs/jobs/load-balancer/algorithm/polling.js +1 -1
  109. package/dist/cjs/jobs/load-balancer/algorithm/random.d.ts +1 -1
  110. package/dist/cjs/jobs/load-balancer/algorithm/random.js +1 -1
  111. package/dist/cjs/jobs/load-balancer/algorithm/specify.d.ts +1 -1
  112. package/dist/cjs/jobs/load-balancer/algorithm/specify.js +1 -1
  113. package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts +1 -1
  114. package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts.map +1 -1
  115. package/dist/cjs/jobs/load-balancer/algorithm/weights.js +4 -8
  116. package/dist/cjs/jobs/load-balancer/algorithm/weights.js.map +1 -1
  117. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +1 -1
  118. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -1
  119. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js +6 -11
  120. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -1
  121. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.d.ts +1 -1
  122. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.js +1 -1
  123. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.d.ts +1 -1
  124. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.js +1 -1
  125. package/dist/cjs/jobs/load-balancer/consts.d.ts +22 -0
  126. package/dist/cjs/jobs/load-balancer/consts.d.ts.map +1 -1
  127. package/dist/cjs/jobs/load-balancer/consts.js +22 -0
  128. package/dist/cjs/jobs/load-balancer/consts.js.map +1 -1
  129. package/dist/cjs/jobs/load-balancer/index.d.ts +18 -18
  130. package/dist/cjs/jobs/load-balancer/index.js +18 -18
  131. package/dist/cjs/jobs/load-balancer/scheduler.d.ts +3 -3
  132. package/dist/cjs/jobs/load-balancer/scheduler.js +3 -3
  133. package/dist/cjs/jobs/load-balancer/types.d.ts +21 -0
  134. package/dist/cjs/jobs/load-balancer/types.d.ts.map +1 -1
  135. package/dist/cjs/jobs/load-balancer/types.js +4 -0
  136. package/dist/cjs/jobs/load-balancer/types.js.map +1 -1
  137. package/dist/cjs/jobs/registry.d.ts +24 -0
  138. package/dist/cjs/jobs/registry.d.ts.map +1 -0
  139. package/dist/cjs/jobs/registry.js +52 -0
  140. package/dist/cjs/jobs/registry.js.map +1 -0
  141. package/dist/cjs/loader/index.d.ts +52 -0
  142. package/dist/cjs/loader/index.d.ts.map +1 -1
  143. package/dist/cjs/loader/index.js +79 -10
  144. package/dist/cjs/loader/index.js.map +1 -1
  145. package/dist/cjs/log/index.d.ts +41 -0
  146. package/dist/cjs/log/index.d.ts.map +1 -1
  147. package/dist/cjs/log/index.js +59 -20
  148. package/dist/cjs/log/index.js.map +1 -1
  149. package/dist/cjs/log/logger.d.ts +26 -0
  150. package/dist/cjs/log/logger.d.ts.map +1 -1
  151. package/dist/cjs/log/logger.js +122 -2
  152. package/dist/cjs/log/logger.js.map +1 -1
  153. package/dist/cjs/message/childMessage.d.ts +50 -0
  154. package/dist/cjs/message/childMessage.d.ts.map +1 -1
  155. package/dist/cjs/message/childMessage.js +83 -2
  156. package/dist/cjs/message/childMessage.js.map +1 -1
  157. package/dist/cjs/ps/index.d.ts +112 -0
  158. package/dist/cjs/ps/index.d.ts.map +1 -1
  159. package/dist/cjs/ps/index.js +175 -41
  160. package/dist/cjs/ps/index.js.map +1 -1
  161. package/dist/cjs/socket/httpServer.d.ts +58 -5
  162. package/dist/cjs/socket/httpServer.d.ts.map +1 -1
  163. package/dist/cjs/socket/httpServer.js +94 -28
  164. package/dist/cjs/socket/httpServer.js.map +1 -1
  165. package/dist/cjs/socket/index.d.ts +45 -3
  166. package/dist/cjs/socket/index.d.ts.map +1 -1
  167. package/dist/cjs/socket/index.js +50 -14
  168. package/dist/cjs/socket/index.js.map +1 -1
  169. package/dist/cjs/socket/ipcServer.d.ts +31 -1
  170. package/dist/cjs/socket/ipcServer.d.ts.map +1 -1
  171. package/dist/cjs/socket/ipcServer.js +60 -43
  172. package/dist/cjs/socket/ipcServer.js.map +1 -1
  173. package/dist/cjs/socket/socketServer.d.ts +32 -1
  174. package/dist/cjs/socket/socketServer.d.ts.map +1 -1
  175. package/dist/cjs/socket/socketServer.js +53 -14
  176. package/dist/cjs/socket/socketServer.js.map +1 -1
  177. package/dist/cjs/socket/utils.d.ts +13 -0
  178. package/dist/cjs/socket/utils.d.ts.map +1 -0
  179. package/dist/cjs/socket/utils.js +41 -0
  180. package/dist/cjs/socket/utils.js.map +1 -0
  181. package/dist/cjs/storage/sqliteStorage.d.ts +93 -4
  182. package/dist/cjs/storage/sqliteStorage.d.ts.map +1 -1
  183. package/dist/cjs/storage/sqliteStorage.js +121 -9
  184. package/dist/cjs/storage/sqliteStorage.js.map +1 -1
  185. package/dist/cjs/types/index.d.ts +373 -5
  186. package/dist/cjs/types/index.d.ts.map +1 -1
  187. package/dist/cjs/utils/extend.d.ts +44 -1
  188. package/dist/cjs/utils/extend.d.ts.map +1 -1
  189. package/dist/cjs/utils/extend.js +67 -19
  190. package/dist/cjs/utils/extend.js.map +1 -1
  191. package/dist/cjs/utils/helper.d.ts +154 -1
  192. package/dist/cjs/utils/helper.d.ts.map +1 -1
  193. package/dist/cjs/utils/helper.js +205 -28
  194. package/dist/cjs/utils/helper.js.map +1 -1
  195. package/dist/cjs/utils/index.d.ts +93 -0
  196. package/dist/cjs/utils/index.d.ts.map +1 -1
  197. package/dist/cjs/utils/index.js +136 -12
  198. package/dist/cjs/utils/index.js.map +1 -1
  199. package/dist/cjs/utils/ip.d.ts +29 -0
  200. package/dist/cjs/utils/ip.d.ts.map +1 -1
  201. package/dist/cjs/utils/ip.js +95 -4
  202. package/dist/cjs/utils/ip.js.map +1 -1
  203. package/dist/cjs/utils/is.d.ts +123 -0
  204. package/dist/cjs/utils/is.d.ts.map +1 -1
  205. package/dist/cjs/utils/is.js +126 -14
  206. package/dist/cjs/utils/is.js.map +1 -1
  207. package/dist/cjs/utils/json.d.ts +54 -0
  208. package/dist/cjs/utils/json.d.ts.map +1 -1
  209. package/dist/cjs/utils/json.js +62 -0
  210. package/dist/cjs/utils/json.js.map +1 -1
  211. package/dist/cjs/utils/pargv.d.ts +51 -0
  212. package/dist/cjs/utils/pargv.d.ts.map +1 -1
  213. package/dist/cjs/utils/pargv.js +141 -3
  214. package/dist/cjs/utils/pargv.js.map +1 -1
  215. package/dist/cjs/utils/port/index.d.ts +42 -0
  216. package/dist/cjs/utils/port/index.d.ts.map +1 -1
  217. package/dist/cjs/utils/port/index.js +130 -7
  218. package/dist/cjs/utils/port/index.js.map +1 -1
  219. package/dist/cjs/utils/type_check.d.ts +79 -0
  220. package/dist/cjs/utils/type_check.d.ts.map +1 -1
  221. package/dist/cjs/utils/type_check.js +87 -1
  222. package/dist/cjs/utils/type_check.js.map +1 -1
  223. package/dist/cjs/utils/wrap.d.ts +26 -0
  224. package/dist/cjs/utils/wrap.d.ts.map +1 -1
  225. package/dist/cjs/utils/wrap.js +47 -10
  226. package/dist/cjs/utils/wrap.js.map +1 -1
  227. package/dist/esm/app/application.d.ts +36 -1
  228. package/dist/esm/app/application.d.ts.map +1 -1
  229. package/dist/esm/app/application.js +49 -2
  230. package/dist/esm/app/application.js.map +1 -1
  231. package/dist/esm/app/boot.d.ts +56 -1
  232. package/dist/esm/app/boot.d.ts.map +1 -1
  233. package/dist/esm/app/boot.js +74 -11
  234. package/dist/esm/app/boot.js.map +1 -1
  235. package/dist/esm/app/dir.d.ts +10 -0
  236. package/dist/esm/app/dir.d.ts.map +1 -1
  237. package/dist/esm/app/dir.js +71 -10
  238. package/dist/esm/app/dir.js.map +1 -1
  239. package/dist/esm/app/events.d.ts +58 -2
  240. package/dist/esm/app/events.d.ts.map +1 -1
  241. package/dist/esm/app/events.js +92 -12
  242. package/dist/esm/app/events.js.map +1 -1
  243. package/dist/esm/config/config_loader.d.ts +44 -0
  244. package/dist/esm/config/config_loader.d.ts.map +1 -1
  245. package/dist/esm/config/config_loader.js +82 -1
  246. package/dist/esm/config/config_loader.js.map +1 -1
  247. package/dist/esm/config/default_config.d.ts +5 -0
  248. package/dist/esm/config/default_config.d.ts.map +1 -1
  249. package/dist/esm/config/default_config.js +98 -11
  250. package/dist/esm/config/default_config.js.map +1 -1
  251. package/dist/esm/config/index.d.ts +31 -1
  252. package/dist/esm/config/index.d.ts.map +1 -1
  253. package/dist/esm/config/index.js +52 -0
  254. package/dist/esm/config/index.js.map +1 -1
  255. package/dist/esm/const/channel.d.ts +17 -0
  256. package/dist/esm/const/channel.d.ts.map +1 -1
  257. package/dist/esm/const/channel.js +17 -0
  258. package/dist/esm/const/channel.js.map +1 -1
  259. package/dist/esm/controller/controller_loader.d.ts +20 -1
  260. package/dist/esm/controller/controller_loader.d.ts.map +1 -1
  261. package/dist/esm/controller/controller_loader.js +89 -9
  262. package/dist/esm/controller/controller_loader.js.map +1 -1
  263. package/dist/esm/controller/index.d.ts +32 -0
  264. package/dist/esm/controller/index.d.ts.map +1 -1
  265. package/dist/esm/controller/index.js +66 -0
  266. package/dist/esm/controller/index.js.map +1 -1
  267. package/dist/esm/core/loader/file_loader.d.ts +78 -27
  268. package/dist/esm/core/loader/file_loader.d.ts.map +1 -1
  269. package/dist/esm/core/loader/file_loader.js +194 -68
  270. package/dist/esm/core/loader/file_loader.js.map +1 -1
  271. package/dist/esm/core/utils/index.d.ts +57 -2
  272. package/dist/esm/core/utils/index.d.ts.map +1 -1
  273. package/dist/esm/core/utils/index.js +87 -12
  274. package/dist/esm/core/utils/index.js.map +1 -1
  275. package/dist/esm/core/utils/timing.d.ts +47 -0
  276. package/dist/esm/core/utils/timing.d.ts.map +1 -1
  277. package/dist/esm/core/utils/timing.js +42 -2
  278. package/dist/esm/core/utils/timing.js.map +1 -1
  279. package/dist/esm/cross/cross.d.ts +81 -2
  280. package/dist/esm/cross/cross.d.ts.map +1 -1
  281. package/dist/esm/cross/cross.js +86 -16
  282. package/dist/esm/cross/cross.js.map +1 -1
  283. package/dist/esm/cross/crossProcess.d.ts +85 -14
  284. package/dist/esm/cross/crossProcess.d.ts.map +1 -1
  285. package/dist/esm/cross/crossProcess.js +85 -13
  286. package/dist/esm/cross/crossProcess.js.map +1 -1
  287. package/dist/esm/electron/app/index.d.ts +17 -1
  288. package/dist/esm/electron/app/index.d.ts.map +1 -1
  289. package/dist/esm/electron/app/index.js +27 -3
  290. package/dist/esm/electron/app/index.js.map +1 -1
  291. package/dist/esm/electron/index.d.ts +6 -0
  292. package/dist/esm/electron/index.d.ts.map +1 -1
  293. package/dist/esm/electron/index.js +16 -1
  294. package/dist/esm/electron/index.js.map +1 -1
  295. package/dist/esm/electron/window/index.d.ts +37 -0
  296. package/dist/esm/electron/window/index.d.ts.map +1 -1
  297. package/dist/esm/electron/window/index.js +144 -88
  298. package/dist/esm/electron/window/index.js.map +1 -1
  299. package/dist/esm/exception/index.d.ts +12 -0
  300. package/dist/esm/exception/index.d.ts.map +1 -1
  301. package/dist/esm/exception/index.js +67 -9
  302. package/dist/esm/exception/index.js.map +1 -1
  303. package/dist/esm/html/index.d.ts +19 -0
  304. package/dist/esm/html/index.d.ts.map +1 -1
  305. package/dist/esm/html/index.js +42 -0
  306. package/dist/esm/html/index.js.map +1 -1
  307. package/dist/esm/index.d.ts +35 -7
  308. package/dist/esm/index.d.ts.map +1 -1
  309. package/dist/esm/index.js +127 -80
  310. package/dist/esm/index.js.map +1 -1
  311. package/dist/esm/jobs/child/app.js +86 -25
  312. package/dist/esm/jobs/child/app.js.map +1 -1
  313. package/dist/esm/jobs/child/index.d.ts +5 -5
  314. package/dist/esm/jobs/child/index.js +5 -5
  315. package/dist/esm/jobs/child/jobProcess.d.ts +68 -0
  316. package/dist/esm/jobs/child/jobProcess.d.ts.map +1 -1
  317. package/dist/esm/jobs/child/jobProcess.js +86 -11
  318. package/dist/esm/jobs/child/jobProcess.js.map +1 -1
  319. package/dist/esm/jobs/child-pool/index.d.ts +96 -0
  320. package/dist/esm/jobs/child-pool/index.d.ts.map +1 -1
  321. package/dist/esm/jobs/child-pool/index.js +91 -4
  322. package/dist/esm/jobs/child-pool/index.js.map +1 -1
  323. package/dist/esm/jobs/index.d.ts +10 -0
  324. package/dist/esm/jobs/index.d.ts.map +1 -1
  325. package/dist/esm/jobs/index.js +10 -0
  326. package/dist/esm/jobs/index.js.map +1 -1
  327. package/dist/esm/jobs/load-balancer/algorithm/index.d.ts +2 -0
  328. package/dist/esm/jobs/load-balancer/algorithm/index.d.ts.map +1 -1
  329. package/dist/esm/jobs/load-balancer/algorithm/index.js +6 -0
  330. package/dist/esm/jobs/load-balancer/algorithm/index.js.map +1 -1
  331. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.d.ts +1 -1
  332. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.js +1 -1
  333. package/dist/esm/jobs/load-balancer/algorithm/polling.d.ts +1 -1
  334. package/dist/esm/jobs/load-balancer/algorithm/polling.js +1 -1
  335. package/dist/esm/jobs/load-balancer/algorithm/random.d.ts +1 -1
  336. package/dist/esm/jobs/load-balancer/algorithm/random.js +1 -1
  337. package/dist/esm/jobs/load-balancer/algorithm/specify.d.ts +1 -1
  338. package/dist/esm/jobs/load-balancer/algorithm/specify.js +1 -1
  339. package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts +1 -1
  340. package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts.map +1 -1
  341. package/dist/esm/jobs/load-balancer/algorithm/weights.js +4 -8
  342. package/dist/esm/jobs/load-balancer/algorithm/weights.js.map +1 -1
  343. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +1 -1
  344. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -1
  345. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js +6 -11
  346. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -1
  347. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.d.ts +1 -1
  348. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.js +1 -1
  349. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.d.ts +1 -1
  350. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.js +1 -1
  351. package/dist/esm/jobs/load-balancer/consts.d.ts +22 -0
  352. package/dist/esm/jobs/load-balancer/consts.d.ts.map +1 -1
  353. package/dist/esm/jobs/load-balancer/consts.js +22 -0
  354. package/dist/esm/jobs/load-balancer/consts.js.map +1 -1
  355. package/dist/esm/jobs/load-balancer/index.d.ts +18 -18
  356. package/dist/esm/jobs/load-balancer/index.js +18 -18
  357. package/dist/esm/jobs/load-balancer/scheduler.d.ts +3 -3
  358. package/dist/esm/jobs/load-balancer/scheduler.js +3 -3
  359. package/dist/esm/jobs/load-balancer/types.d.ts +21 -0
  360. package/dist/esm/jobs/load-balancer/types.d.ts.map +1 -1
  361. package/dist/esm/jobs/load-balancer/types.js +4 -0
  362. package/dist/esm/jobs/load-balancer/types.js.map +1 -1
  363. package/dist/esm/jobs/registry.d.ts +24 -0
  364. package/dist/esm/jobs/registry.d.ts.map +1 -0
  365. package/dist/esm/jobs/registry.js +52 -0
  366. package/dist/esm/jobs/registry.js.map +1 -0
  367. package/dist/esm/loader/index.d.ts +52 -0
  368. package/dist/esm/loader/index.d.ts.map +1 -1
  369. package/dist/esm/loader/index.js +79 -10
  370. package/dist/esm/loader/index.js.map +1 -1
  371. package/dist/esm/log/index.d.ts +41 -0
  372. package/dist/esm/log/index.d.ts.map +1 -1
  373. package/dist/esm/log/index.js +59 -20
  374. package/dist/esm/log/index.js.map +1 -1
  375. package/dist/esm/log/logger.d.ts +26 -0
  376. package/dist/esm/log/logger.d.ts.map +1 -1
  377. package/dist/esm/log/logger.js +122 -2
  378. package/dist/esm/log/logger.js.map +1 -1
  379. package/dist/esm/message/childMessage.d.ts +50 -0
  380. package/dist/esm/message/childMessage.d.ts.map +1 -1
  381. package/dist/esm/message/childMessage.js +83 -2
  382. package/dist/esm/message/childMessage.js.map +1 -1
  383. package/dist/esm/ps/index.d.ts +112 -0
  384. package/dist/esm/ps/index.d.ts.map +1 -1
  385. package/dist/esm/ps/index.js +175 -41
  386. package/dist/esm/ps/index.js.map +1 -1
  387. package/dist/esm/socket/httpServer.d.ts +58 -5
  388. package/dist/esm/socket/httpServer.d.ts.map +1 -1
  389. package/dist/esm/socket/httpServer.js +94 -28
  390. package/dist/esm/socket/httpServer.js.map +1 -1
  391. package/dist/esm/socket/index.d.ts +45 -3
  392. package/dist/esm/socket/index.d.ts.map +1 -1
  393. package/dist/esm/socket/index.js +50 -14
  394. package/dist/esm/socket/index.js.map +1 -1
  395. package/dist/esm/socket/ipcServer.d.ts +31 -1
  396. package/dist/esm/socket/ipcServer.d.ts.map +1 -1
  397. package/dist/esm/socket/ipcServer.js +60 -43
  398. package/dist/esm/socket/ipcServer.js.map +1 -1
  399. package/dist/esm/socket/socketServer.d.ts +32 -1
  400. package/dist/esm/socket/socketServer.d.ts.map +1 -1
  401. package/dist/esm/socket/socketServer.js +53 -14
  402. package/dist/esm/socket/socketServer.js.map +1 -1
  403. package/dist/esm/socket/utils.d.ts +13 -0
  404. package/dist/esm/socket/utils.d.ts.map +1 -0
  405. package/dist/esm/socket/utils.js +41 -0
  406. package/dist/esm/socket/utils.js.map +1 -0
  407. package/dist/esm/storage/sqliteStorage.d.ts +93 -4
  408. package/dist/esm/storage/sqliteStorage.d.ts.map +1 -1
  409. package/dist/esm/storage/sqliteStorage.js +121 -9
  410. package/dist/esm/storage/sqliteStorage.js.map +1 -1
  411. package/dist/esm/types/index.d.ts +373 -5
  412. package/dist/esm/types/index.d.ts.map +1 -1
  413. package/dist/esm/utils/extend.d.ts +44 -1
  414. package/dist/esm/utils/extend.d.ts.map +1 -1
  415. package/dist/esm/utils/extend.js +67 -19
  416. package/dist/esm/utils/extend.js.map +1 -1
  417. package/dist/esm/utils/helper.d.ts +154 -1
  418. package/dist/esm/utils/helper.d.ts.map +1 -1
  419. package/dist/esm/utils/helper.js +205 -28
  420. package/dist/esm/utils/helper.js.map +1 -1
  421. package/dist/esm/utils/index.d.ts +93 -0
  422. package/dist/esm/utils/index.d.ts.map +1 -1
  423. package/dist/esm/utils/index.js +136 -12
  424. package/dist/esm/utils/index.js.map +1 -1
  425. package/dist/esm/utils/ip.d.ts +29 -0
  426. package/dist/esm/utils/ip.d.ts.map +1 -1
  427. package/dist/esm/utils/ip.js +95 -4
  428. package/dist/esm/utils/ip.js.map +1 -1
  429. package/dist/esm/utils/is.d.ts +123 -0
  430. package/dist/esm/utils/is.d.ts.map +1 -1
  431. package/dist/esm/utils/is.js +126 -14
  432. package/dist/esm/utils/is.js.map +1 -1
  433. package/dist/esm/utils/json.d.ts +54 -0
  434. package/dist/esm/utils/json.d.ts.map +1 -1
  435. package/dist/esm/utils/json.js +62 -0
  436. package/dist/esm/utils/json.js.map +1 -1
  437. package/dist/esm/utils/pargv.d.ts +51 -0
  438. package/dist/esm/utils/pargv.d.ts.map +1 -1
  439. package/dist/esm/utils/pargv.js +141 -3
  440. package/dist/esm/utils/pargv.js.map +1 -1
  441. package/dist/esm/utils/port/index.d.ts +42 -0
  442. package/dist/esm/utils/port/index.d.ts.map +1 -1
  443. package/dist/esm/utils/port/index.js +130 -7
  444. package/dist/esm/utils/port/index.js.map +1 -1
  445. package/dist/esm/utils/type_check.d.ts +79 -0
  446. package/dist/esm/utils/type_check.d.ts.map +1 -1
  447. package/dist/esm/utils/type_check.js +87 -1
  448. package/dist/esm/utils/type_check.js.map +1 -1
  449. package/dist/esm/utils/wrap.d.ts +26 -0
  450. package/dist/esm/utils/wrap.d.ts.map +1 -1
  451. package/dist/esm/utils/wrap.js +47 -10
  452. package/dist/esm/utils/wrap.js.map +1 -1
  453. package/package.json +13 -13
@@ -1,6 +1,6 @@
1
1
  import type { LoadBalancerTarget, LoadBalancerParams } from '../types.js';
2
2
  /**
3
- * 权重轮询算法
3
+ * Weighted round-robin algorithm
4
4
  */
5
5
  export default function weightsPolling(tasks: LoadBalancerTarget[], weightIndex: number, weightTotal: number, context: LoadBalancerParams): LoadBalancerTarget | null;
6
6
  //# sourceMappingURL=weightsPolling.d.ts.map
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = weightsPolling;
4
4
  /**
5
- * 权重轮询算法
5
+ * Weighted round-robin algorithm
6
6
  */
7
7
  function weightsPolling(tasks, weightIndex, weightTotal, context) {
8
8
  if (!tasks.length)
@@ -1,6 +1,6 @@
1
1
  import type { LoadBalancerTarget } from '../types.js';
2
2
  /**
3
- * 权重随机算法
3
+ * Weighted random algorithm
4
4
  */
5
5
  export default function weightsRandom(tasks: LoadBalancerTarget[], weightTotal: number): LoadBalancerTarget | null;
6
6
  //# sourceMappingURL=weightsRandom.d.ts.map
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = weightsRandom;
4
4
  /**
5
- * 权重随机算法
5
+ * Weighted random algorithm
6
6
  */
7
7
  function weightsRandom(tasks, weightTotal) {
8
8
  let task;
@@ -1,11 +1,33 @@
1
+ /**
2
+ * @module jobs/load-balancer/consts
3
+ * @description Load balancing algorithm type constants.
4
+ *
5
+ * Supported algorithms:
6
+ * - polling: Round-robin, select in sequence
7
+ * - weights: Weighted, select by weight
8
+ * - random: Random selection
9
+ * - specify: Select by specified ID
10
+ * - weightsPolling: Weighted round-robin
11
+ * - weightsRandom: Weighted random
12
+ * - minimumConnection: Least connections
13
+ * - weightsMinimumConnection: Weighted least connections
14
+ */
1
15
  export declare const AlgorithmType: {
16
+ /** Polling: select the next target in sequence */
2
17
  readonly polling: "polling";
18
+ /** Weighted: select by weight ratio */
3
19
  readonly weights: "weights";
20
+ /** Random: randomly select a target */
4
21
  readonly random: "random";
22
+ /** Specify: select a target by ID */
5
23
  readonly specify: "specify";
24
+ /** Weighted polling: combines weight and round-robin */
6
25
  readonly weightsPolling: "weightsPolling";
26
+ /** Weighted random: combines weight and random selection */
7
27
  readonly weightsRandom: "weightsRandom";
28
+ /** Least connections: select the target with the fewest current connections */
8
29
  readonly minimumConnection: "minimumConnection";
30
+ /** Weighted least connections: combines weight and least connections */
9
31
  readonly weightsMinimumConnection: "weightsMinimumConnection";
10
32
  };
11
33
  export type AlgorithmTypeKey = keyof typeof AlgorithmType;
@@ -1 +1 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;;;;;;CAShB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,aAAa,CAAC;AAC1D,MAAM,MAAM,kBAAkB,GAAG,OAAO,aAAa,CAAC,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/consts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,aAAa;IACxB,kDAAkD;;IAElD,uCAAuC;;IAEvC,uCAAuC;;IAEvC,qCAAqC;;IAErC,wDAAwD;;IAExD,4DAA4D;;IAE5D,+EAA+E;;IAE/E,wEAAwE;;CAEhE,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,aAAa,CAAC;AAC1D,MAAM,MAAM,kBAAkB,GAAG,OAAO,aAAa,CAAC,gBAAgB,CAAC,CAAC"}
@@ -1,14 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AlgorithmType = void 0;
4
+ /**
5
+ * @module jobs/load-balancer/consts
6
+ * @description Load balancing algorithm type constants.
7
+ *
8
+ * Supported algorithms:
9
+ * - polling: Round-robin, select in sequence
10
+ * - weights: Weighted, select by weight
11
+ * - random: Random selection
12
+ * - specify: Select by specified ID
13
+ * - weightsPolling: Weighted round-robin
14
+ * - weightsRandom: Weighted random
15
+ * - minimumConnection: Least connections
16
+ * - weightsMinimumConnection: Weighted least connections
17
+ */
4
18
  exports.AlgorithmType = {
19
+ /** Polling: select the next target in sequence */
5
20
  polling: 'polling',
21
+ /** Weighted: select by weight ratio */
6
22
  weights: 'weights',
23
+ /** Random: randomly select a target */
7
24
  random: 'random',
25
+ /** Specify: select a target by ID */
8
26
  specify: 'specify',
27
+ /** Weighted polling: combines weight and round-robin */
9
28
  weightsPolling: 'weightsPolling',
29
+ /** Weighted random: combines weight and random selection */
10
30
  weightsRandom: 'weightsRandom',
31
+ /** Least connections: select the target with the fewest current connections */
11
32
  minimumConnection: 'minimumConnection',
33
+ /** Weighted least connections: combines weight and least connections */
12
34
  weightsMinimumConnection: 'weightsMinimumConnection',
13
35
  };
14
36
  //# sourceMappingURL=consts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/consts.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,gBAAgB;IAChC,aAAa,EAAE,eAAe;IAC9B,iBAAiB,EAAE,mBAAmB;IACtC,wBAAwB,EAAE,0BAA0B;CAC5C,CAAC"}
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../../../src/jobs/load-balancer/consts.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;GAaG;AACU,QAAA,aAAa,GAAG;IAC3B,kDAAkD;IAClD,OAAO,EAAE,SAAS;IAClB,uCAAuC;IACvC,OAAO,EAAE,SAAS;IAClB,uCAAuC;IACvC,MAAM,EAAE,QAAQ;IAChB,qCAAqC;IACrC,OAAO,EAAE,SAAS;IAClB,wDAAwD;IACxD,cAAc,EAAE,gBAAgB;IAChC,4DAA4D;IAC5D,aAAa,EAAE,eAAe;IAC9B,+EAA+E;IAC/E,iBAAiB,EAAE,mBAAmB;IACtC,wEAAwE;IACxE,wBAAwB,EAAE,0BAA0B;CAC5C,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { Scheduler } from './scheduler.js';
2
2
  import type { LoadBalancerTarget, LoadBalancerParams, LoadBalancerOptions, PidInfo } from './types.js';
3
3
  /**
4
- * 负载均衡器
5
- * @intro 参考electron-re项目,并做了一些改动
4
+ * Load Balancer
5
+ * @intro Based on the electron-re project with some modifications
6
6
  * @since 1.0.0
7
7
  */
8
8
  export declare class LoadBalancer {
@@ -22,61 +22,61 @@ export declare class LoadBalancer {
22
22
  scheduler: Scheduler;
23
23
  memoParams: Record<string, (...args: unknown[]) => unknown[]>;
24
24
  /**
25
- * @param options - 配置选项
26
- * @param options.targets - 负载均衡目标列表 [{id: 1, weight: 1}, {id: 2, weight: 2}]
27
- * @param options.algorithm - 算法名称
25
+ * @param options - Configuration options
26
+ * @param options.targets - Load balancing target list [{id: 1, weight: 1}, {id: 2, weight: 2}]
27
+ * @param options.algorithm - Algorithm name
28
28
  */
29
29
  constructor(options: LoadBalancerOptions);
30
30
  /**
31
- * 算法参数
31
+ * Algorithm parameters
32
32
  */
33
33
  memorizedParams(): Record<string, (...args: unknown[]) => unknown[]>;
34
34
  /**
35
- * 刷新参数
35
+ * Refresh parameters
36
36
  */
37
37
  refreshParams(pidMap: Record<string | number, PidInfo>): void;
38
38
  /**
39
- * 选举出一个进程
39
+ * Elect a single process
40
40
  */
41
41
  pickOne(...params: unknown[]): LoadBalancerTarget | null;
42
42
  /**
43
- * 选举出多个进程
43
+ * Elect multiple processes
44
44
  */
45
45
  pickMulti(count?: number, ...params: unknown[]): (LoadBalancerTarget | null)[];
46
46
  /**
47
- * 计算权重
47
+ * Calculate weights
48
48
  */
49
49
  calculateWeightIndex(): void;
50
50
  /**
51
- * 计算索引
51
+ * Calculate index
52
52
  */
53
53
  calculateIndex(): void;
54
54
  /**
55
- * 清除data
55
+ * Clean data
56
56
  */
57
57
  clean(id?: string | number): void;
58
58
  /**
59
- * 添加一个进程信息
59
+ * Add a process entry
60
60
  */
61
61
  add(task: LoadBalancerTarget): void;
62
62
  /**
63
- * 删除一个进程信息
63
+ * Delete a process entry
64
64
  */
65
65
  del(target: LoadBalancerTarget): void;
66
66
  /**
67
- * 擦除
67
+ * Wipe all data
68
68
  */
69
69
  wipe(): void;
70
70
  /**
71
- * 更新计算参数
71
+ * Update calculation parameters
72
72
  */
73
73
  updateParams(object: Partial<LoadBalancerParams>): void;
74
74
  /**
75
- * 设置targets
75
+ * Set targets
76
76
  */
77
77
  setTargets(targets: LoadBalancerTarget[]): void;
78
78
  /**
79
- * 设置算法
79
+ * Set algorithm
80
80
  */
81
81
  setAlgorithm(algorithm: string): void;
82
82
  }
@@ -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"}