ee-core 4.1.5 → 5.0.0-beta.2

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 (629) hide show
  1. package/dist/cjs/app/application.d.ts +6 -0
  2. package/dist/cjs/app/application.d.ts.map +1 -0
  3. package/dist/cjs/app/application.js +21 -0
  4. package/dist/cjs/app/application.js.map +1 -0
  5. package/dist/cjs/app/boot.d.ts +9 -0
  6. package/dist/cjs/app/boot.d.ts.map +1 -0
  7. package/dist/cjs/app/boot.js +75 -0
  8. package/dist/cjs/app/boot.js.map +1 -0
  9. package/{app → dist/cjs/app}/dir.d.ts +1 -0
  10. package/dist/cjs/app/dir.d.ts.map +1 -0
  11. package/dist/cjs/app/dir.js +27 -0
  12. package/dist/cjs/app/dir.js.map +1 -0
  13. package/dist/cjs/app/events.d.ts +15 -0
  14. package/dist/cjs/app/events.d.ts.map +1 -0
  15. package/dist/cjs/app/events.js +44 -0
  16. package/dist/cjs/app/events.js.map +1 -0
  17. package/dist/cjs/config/config_loader.d.ts +10 -0
  18. package/dist/cjs/config/config_loader.d.ts.map +1 -0
  19. package/dist/cjs/config/config_loader.js +56 -0
  20. package/dist/cjs/config/config_loader.js.map +1 -0
  21. package/dist/cjs/config/default_config.d.ts +3 -0
  22. package/dist/cjs/config/default_config.d.ts.map +1 -0
  23. package/dist/cjs/config/default_config.js +109 -0
  24. package/dist/cjs/config/default_config.js.map +1 -0
  25. package/dist/cjs/config/index.d.ts +4 -0
  26. package/dist/cjs/config/index.d.ts.map +1 -0
  27. package/dist/cjs/config/index.js +17 -0
  28. package/dist/cjs/config/index.js.map +1 -0
  29. package/dist/cjs/const/channel.d.ts +17 -0
  30. package/dist/cjs/const/channel.d.ts.map +1 -0
  31. package/dist/cjs/const/channel.js +20 -0
  32. package/dist/cjs/const/channel.js.map +1 -0
  33. package/dist/cjs/controller/controller_loader.d.ts +10 -0
  34. package/dist/cjs/controller/controller_loader.d.ts.map +1 -0
  35. package/dist/cjs/controller/controller_loader.js +78 -0
  36. package/dist/cjs/controller/controller_loader.js.map +1 -0
  37. package/dist/cjs/controller/index.d.ts +4 -0
  38. package/dist/cjs/controller/index.d.ts.map +1 -0
  39. package/dist/cjs/controller/index.js +22 -0
  40. package/dist/cjs/controller/index.js.map +1 -0
  41. package/{core → dist/cjs/core}/loader/file_loader.d.ts +25 -30
  42. package/dist/cjs/core/loader/file_loader.d.ts.map +1 -0
  43. package/dist/cjs/core/loader/file_loader.js +157 -0
  44. package/dist/cjs/core/loader/file_loader.js.map +1 -0
  45. package/dist/cjs/core/utils/index.d.ts +15 -0
  46. package/dist/cjs/core/utils/index.d.ts.map +1 -0
  47. package/dist/cjs/core/utils/index.js +73 -0
  48. package/dist/cjs/core/utils/index.js.map +1 -0
  49. package/dist/cjs/core/utils/timing.d.ts +18 -0
  50. package/dist/cjs/core/utils/timing.d.ts.map +1 -0
  51. package/dist/cjs/core/utils/timing.js +67 -0
  52. package/dist/cjs/core/utils/timing.js.map +1 -0
  53. package/dist/cjs/cross/cross.d.ts +25 -0
  54. package/dist/cjs/cross/cross.d.ts.map +1 -0
  55. package/dist/cjs/cross/cross.js +132 -0
  56. package/dist/cjs/cross/cross.js.map +1 -0
  57. package/dist/cjs/cross/crossProcess.d.ts +47 -0
  58. package/dist/cjs/cross/crossProcess.d.ts.map +1 -0
  59. package/dist/cjs/cross/crossProcess.js +190 -0
  60. package/dist/cjs/cross/crossProcess.js.map +1 -0
  61. package/dist/cjs/cross/index.d.ts +4 -0
  62. package/dist/cjs/cross/index.d.ts.map +1 -0
  63. package/dist/cjs/cross/index.js +9 -0
  64. package/dist/cjs/cross/index.js.map +1 -0
  65. package/{electron → dist/cjs/electron}/app/index.d.ts +3 -1
  66. package/dist/cjs/electron/app/index.d.ts.map +1 -0
  67. package/dist/cjs/electron/app/index.js +75 -0
  68. package/dist/cjs/electron/app/index.js.map +1 -0
  69. package/dist/cjs/electron/index.d.ts +4 -0
  70. package/dist/cjs/electron/index.d.ts.map +1 -0
  71. package/dist/cjs/electron/index.js +20 -0
  72. package/dist/cjs/electron/index.js.map +1 -0
  73. package/dist/cjs/electron/window/index.d.ts +8 -0
  74. package/dist/cjs/electron/window/index.d.ts.map +1 -0
  75. package/dist/cjs/electron/window/index.js +255 -0
  76. package/dist/cjs/electron/window/index.js.map +1 -0
  77. package/dist/cjs/exception/index.d.ts +3 -0
  78. package/dist/cjs/exception/index.d.ts.map +1 -0
  79. package/dist/cjs/exception/index.js +87 -0
  80. package/dist/cjs/exception/index.js.map +1 -0
  81. package/{html → dist/cjs/html}/index.d.ts +1 -0
  82. package/dist/cjs/html/index.d.ts.map +1 -0
  83. package/dist/cjs/html/index.js +17 -0
  84. package/dist/cjs/html/index.js.map +1 -0
  85. package/dist/cjs/index.d.ts +32 -0
  86. package/dist/cjs/index.d.ts.map +1 -0
  87. package/dist/cjs/index.js +198 -0
  88. package/dist/cjs/index.js.map +1 -0
  89. package/dist/cjs/jobs/child/app.d.ts +2 -0
  90. package/dist/cjs/jobs/child/app.d.ts.map +1 -0
  91. package/dist/cjs/jobs/child/app.js +71 -0
  92. package/dist/cjs/jobs/child/app.js.map +1 -0
  93. package/dist/cjs/jobs/child/index.d.ts +29 -0
  94. package/dist/cjs/jobs/child/index.d.ts.map +1 -0
  95. package/dist/cjs/jobs/child/index.js +78 -0
  96. package/dist/cjs/jobs/child/index.js.map +1 -0
  97. package/dist/cjs/jobs/child/jobProcess.d.ts +34 -0
  98. package/dist/cjs/jobs/child/jobProcess.d.ts.map +1 -0
  99. package/dist/cjs/jobs/child/jobProcess.js +121 -0
  100. package/dist/cjs/jobs/child/jobProcess.js.map +1 -0
  101. package/dist/cjs/jobs/child-pool/index.d.ts +30 -0
  102. package/dist/cjs/jobs/child-pool/index.d.ts.map +1 -0
  103. package/dist/cjs/jobs/child-pool/index.js +165 -0
  104. package/dist/cjs/jobs/child-pool/index.js.map +1 -0
  105. package/dist/cjs/jobs/index.d.ts +8 -0
  106. package/dist/cjs/jobs/index.d.ts.map +1 -0
  107. package/dist/cjs/jobs/index.js +12 -0
  108. package/dist/cjs/jobs/index.js.map +1 -0
  109. package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts +5 -0
  110. package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts.map +1 -0
  111. package/dist/cjs/jobs/load-balancer/algorithm/index.js +26 -0
  112. package/dist/cjs/jobs/load-balancer/algorithm/index.js.map +1 -0
  113. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.d.ts +6 -0
  114. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.d.ts.map +1 -0
  115. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.js +27 -0
  116. package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.js.map +1 -0
  117. package/dist/cjs/jobs/load-balancer/algorithm/polling.d.ts +6 -0
  118. package/dist/cjs/jobs/load-balancer/algorithm/polling.d.ts.map +1 -0
  119. package/dist/cjs/jobs/load-balancer/algorithm/polling.js +15 -0
  120. package/dist/cjs/jobs/load-balancer/algorithm/polling.js.map +1 -0
  121. package/dist/cjs/jobs/load-balancer/algorithm/random.d.ts +6 -0
  122. package/dist/cjs/jobs/load-balancer/algorithm/random.d.ts.map +1 -0
  123. package/dist/cjs/jobs/load-balancer/algorithm/random.js +12 -0
  124. package/dist/cjs/jobs/load-balancer/algorithm/random.js.map +1 -0
  125. package/dist/cjs/jobs/load-balancer/algorithm/specify.d.ts +6 -0
  126. package/dist/cjs/jobs/load-balancer/algorithm/specify.d.ts.map +1 -0
  127. package/dist/cjs/jobs/load-balancer/algorithm/specify.js +18 -0
  128. package/dist/cjs/jobs/load-balancer/algorithm/specify.js.map +1 -0
  129. package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts +6 -0
  130. package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts.map +1 -0
  131. package/dist/cjs/jobs/load-balancer/algorithm/weights.js +30 -0
  132. package/dist/cjs/jobs/load-balancer/algorithm/weights.js.map +1 -0
  133. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +6 -0
  134. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -0
  135. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js +37 -0
  136. package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -0
  137. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.d.ts +6 -0
  138. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.d.ts.map +1 -0
  139. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.js +26 -0
  140. package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.js.map +1 -0
  141. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.d.ts +6 -0
  142. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.d.ts.map +1 -0
  143. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.js +22 -0
  144. package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.js.map +1 -0
  145. package/dist/cjs/jobs/load-balancer/consts.d.ts +13 -0
  146. package/dist/cjs/jobs/load-balancer/consts.d.ts.map +1 -0
  147. package/dist/cjs/jobs/load-balancer/consts.js +14 -0
  148. package/dist/cjs/jobs/load-balancer/consts.js.map +1 -0
  149. package/dist/cjs/jobs/load-balancer/index.d.ts +84 -0
  150. package/dist/cjs/jobs/load-balancer/index.d.ts.map +1 -0
  151. package/dist/cjs/jobs/load-balancer/index.js +195 -0
  152. package/dist/cjs/jobs/load-balancer/index.js.map +1 -0
  153. package/dist/cjs/jobs/load-balancer/scheduler.d.ts +17 -0
  154. package/dist/cjs/jobs/load-balancer/scheduler.d.ts.map +1 -0
  155. package/dist/cjs/jobs/load-balancer/scheduler.js +36 -0
  156. package/dist/cjs/jobs/load-balancer/scheduler.js.map +1 -0
  157. package/dist/cjs/jobs/load-balancer/types.d.ts +22 -0
  158. package/dist/cjs/jobs/load-balancer/types.d.ts.map +1 -0
  159. package/dist/cjs/jobs/load-balancer/types.js +3 -0
  160. package/dist/cjs/jobs/load-balancer/types.js.map +1 -0
  161. package/dist/cjs/loader/index.d.ts +6 -0
  162. package/dist/cjs/loader/index.d.ts.map +1 -0
  163. package/dist/cjs/loader/index.js +82 -0
  164. package/dist/cjs/loader/index.js.map +1 -0
  165. package/dist/cjs/log/index.d.ts +18 -0
  166. package/dist/cjs/log/index.d.ts.map +1 -0
  167. package/dist/cjs/log/index.js +84 -0
  168. package/dist/cjs/log/index.js.map +1 -0
  169. package/dist/cjs/log/logger.d.ts +9 -0
  170. package/dist/cjs/log/logger.d.ts.map +1 -0
  171. package/dist/cjs/log/logger.js +126 -0
  172. package/dist/cjs/log/logger.js.map +1 -0
  173. package/dist/cjs/message/childMessage.d.ts +8 -0
  174. package/dist/cjs/message/childMessage.d.ts.map +1 -0
  175. package/dist/cjs/message/childMessage.js +37 -0
  176. package/dist/cjs/message/childMessage.js.map +1 -0
  177. package/dist/cjs/message/index.d.ts +2 -0
  178. package/dist/cjs/message/index.d.ts.map +1 -0
  179. package/dist/cjs/message/index.js +7 -0
  180. package/dist/cjs/message/index.js.map +1 -0
  181. package/{ps → dist/cjs/ps}/index.d.ts +13 -9
  182. package/dist/cjs/ps/index.d.ts.map +1 -0
  183. package/dist/cjs/ps/index.js +235 -0
  184. package/dist/cjs/ps/index.js.map +1 -0
  185. package/dist/cjs/socket/httpServer.d.ts +21 -0
  186. package/dist/cjs/socket/httpServer.d.ts.map +1 -0
  187. package/dist/cjs/socket/httpServer.js +174 -0
  188. package/dist/cjs/socket/httpServer.js.map +1 -0
  189. package/dist/cjs/socket/index.d.ts +18 -0
  190. package/dist/cjs/socket/index.d.ts.map +1 -0
  191. package/dist/cjs/socket/index.js +67 -0
  192. package/dist/cjs/socket/index.js.map +1 -0
  193. package/dist/cjs/socket/ipcServer.d.ts +10 -0
  194. package/dist/cjs/socket/ipcServer.d.ts.map +1 -0
  195. package/dist/cjs/socket/ipcServer.js +107 -0
  196. package/dist/cjs/socket/ipcServer.js.map +1 -0
  197. package/dist/cjs/socket/socketServer.d.ts +12 -0
  198. package/dist/cjs/socket/socketServer.d.ts.map +1 -0
  199. package/dist/cjs/socket/socketServer.js +77 -0
  200. package/dist/cjs/socket/socketServer.js.map +1 -0
  201. package/dist/cjs/storage/index.d.ts +2 -0
  202. package/dist/cjs/storage/index.d.ts.map +1 -0
  203. package/dist/cjs/storage/index.js +6 -0
  204. package/dist/cjs/storage/index.js.map +1 -0
  205. package/dist/cjs/storage/sqliteStorage.d.ts +28 -0
  206. package/dist/cjs/storage/sqliteStorage.d.ts.map +1 -0
  207. package/dist/cjs/storage/sqliteStorage.js +85 -0
  208. package/dist/cjs/storage/sqliteStorage.js.map +1 -0
  209. package/dist/cjs/types/index.d.ts +156 -0
  210. package/dist/cjs/types/index.d.ts.map +1 -0
  211. package/dist/cjs/types/index.js +3 -0
  212. package/dist/cjs/types/index.js.map +1 -0
  213. package/dist/cjs/utils/extend.d.ts +3 -0
  214. package/dist/cjs/utils/extend.d.ts.map +1 -0
  215. package/dist/cjs/utils/extend.js +57 -0
  216. package/dist/cjs/utils/extend.js.map +1 -0
  217. package/dist/cjs/utils/helper.d.ts +16 -0
  218. package/dist/cjs/utils/helper.d.ts.map +1 -0
  219. package/dist/cjs/utils/helper.js +174 -0
  220. package/dist/cjs/utils/helper.js.map +1 -0
  221. package/dist/cjs/utils/index.d.ts +20 -0
  222. package/dist/cjs/utils/index.d.ts.map +1 -0
  223. package/dist/cjs/utils/index.js +220 -0
  224. package/dist/cjs/utils/index.js.map +1 -0
  225. package/dist/cjs/utils/ip.d.ts +13 -0
  226. package/dist/cjs/utils/ip.d.ts.map +1 -0
  227. package/dist/cjs/utils/ip.js +185 -0
  228. package/dist/cjs/utils/ip.js.map +1 -0
  229. package/{utils → dist/cjs/utils}/is.d.ts +4 -3
  230. package/dist/cjs/utils/is.d.ts.map +1 -0
  231. package/dist/cjs/utils/is.js +91 -0
  232. package/dist/cjs/utils/is.js.map +1 -0
  233. package/dist/cjs/utils/json.d.ts +10 -0
  234. package/dist/cjs/utils/json.d.ts.map +1 -0
  235. package/dist/cjs/utils/json.js +60 -0
  236. package/dist/cjs/utils/json.js.map +1 -0
  237. package/dist/cjs/utils/pargv.d.ts +16 -0
  238. package/dist/cjs/utils/pargv.d.ts.map +1 -0
  239. package/dist/cjs/utils/pargv.js +268 -0
  240. package/dist/cjs/utils/pargv.js.map +1 -0
  241. package/dist/cjs/utils/port/index.d.ts +6 -0
  242. package/dist/cjs/utils/port/index.d.ts.map +1 -0
  243. package/dist/cjs/utils/port/index.js +112 -0
  244. package/dist/cjs/utils/port/index.js.map +1 -0
  245. package/dist/cjs/utils/type_check.d.ts +9 -0
  246. package/dist/cjs/utils/type_check.d.ts.map +1 -0
  247. package/dist/cjs/utils/type_check.js +35 -0
  248. package/dist/cjs/utils/type_check.js.map +1 -0
  249. package/dist/cjs/utils/wrap.d.ts +5 -0
  250. package/dist/cjs/utils/wrap.d.ts.map +1 -0
  251. package/dist/cjs/utils/wrap.js +51 -0
  252. package/dist/cjs/utils/wrap.js.map +1 -0
  253. package/dist/esm/app/application.d.ts +6 -0
  254. package/dist/esm/app/application.d.ts.map +1 -0
  255. package/dist/esm/app/application.js +21 -0
  256. package/dist/esm/app/application.js.map +1 -0
  257. package/dist/esm/app/boot.d.ts +9 -0
  258. package/dist/esm/app/boot.d.ts.map +1 -0
  259. package/dist/esm/app/boot.js +75 -0
  260. package/dist/esm/app/boot.js.map +1 -0
  261. package/dist/esm/app/dir.d.ts +2 -0
  262. package/dist/esm/app/dir.d.ts.map +1 -0
  263. package/dist/esm/app/dir.js +27 -0
  264. package/dist/esm/app/dir.js.map +1 -0
  265. package/dist/esm/app/events.d.ts +15 -0
  266. package/dist/esm/app/events.d.ts.map +1 -0
  267. package/dist/esm/app/events.js +44 -0
  268. package/dist/esm/app/events.js.map +1 -0
  269. package/dist/esm/config/config_loader.d.ts +10 -0
  270. package/dist/esm/config/config_loader.d.ts.map +1 -0
  271. package/dist/esm/config/config_loader.js +56 -0
  272. package/dist/esm/config/config_loader.js.map +1 -0
  273. package/dist/esm/config/default_config.d.ts +3 -0
  274. package/dist/esm/config/default_config.d.ts.map +1 -0
  275. package/dist/esm/config/default_config.js +109 -0
  276. package/dist/esm/config/default_config.js.map +1 -0
  277. package/dist/esm/config/index.d.ts +4 -0
  278. package/dist/esm/config/index.d.ts.map +1 -0
  279. package/dist/esm/config/index.js +17 -0
  280. package/dist/esm/config/index.js.map +1 -0
  281. package/dist/esm/const/channel.d.ts +17 -0
  282. package/dist/esm/const/channel.d.ts.map +1 -0
  283. package/dist/esm/const/channel.js +20 -0
  284. package/dist/esm/const/channel.js.map +1 -0
  285. package/dist/esm/controller/controller_loader.d.ts +10 -0
  286. package/dist/esm/controller/controller_loader.d.ts.map +1 -0
  287. package/dist/esm/controller/controller_loader.js +78 -0
  288. package/dist/esm/controller/controller_loader.js.map +1 -0
  289. package/dist/esm/controller/index.d.ts +4 -0
  290. package/dist/esm/controller/index.d.ts.map +1 -0
  291. package/dist/esm/controller/index.js +22 -0
  292. package/dist/esm/controller/index.js.map +1 -0
  293. package/dist/esm/core/loader/file_loader.d.ts +61 -0
  294. package/dist/esm/core/loader/file_loader.d.ts.map +1 -0
  295. package/dist/esm/core/loader/file_loader.js +157 -0
  296. package/dist/esm/core/loader/file_loader.js.map +1 -0
  297. package/dist/esm/core/utils/index.d.ts +15 -0
  298. package/dist/esm/core/utils/index.d.ts.map +1 -0
  299. package/dist/esm/core/utils/index.js +73 -0
  300. package/dist/esm/core/utils/index.js.map +1 -0
  301. package/dist/esm/core/utils/timing.d.ts +18 -0
  302. package/dist/esm/core/utils/timing.d.ts.map +1 -0
  303. package/dist/esm/core/utils/timing.js +67 -0
  304. package/dist/esm/core/utils/timing.js.map +1 -0
  305. package/dist/esm/cross/cross.d.ts +25 -0
  306. package/dist/esm/cross/cross.d.ts.map +1 -0
  307. package/dist/esm/cross/cross.js +132 -0
  308. package/dist/esm/cross/cross.js.map +1 -0
  309. package/dist/esm/cross/crossProcess.d.ts +47 -0
  310. package/dist/esm/cross/crossProcess.d.ts.map +1 -0
  311. package/dist/esm/cross/crossProcess.js +190 -0
  312. package/dist/esm/cross/crossProcess.js.map +1 -0
  313. package/dist/esm/cross/index.d.ts +4 -0
  314. package/dist/esm/cross/index.d.ts.map +1 -0
  315. package/dist/esm/cross/index.js +9 -0
  316. package/dist/esm/cross/index.js.map +1 -0
  317. package/dist/esm/electron/app/index.d.ts +7 -0
  318. package/dist/esm/electron/app/index.d.ts.map +1 -0
  319. package/dist/esm/electron/app/index.js +75 -0
  320. package/dist/esm/electron/app/index.js.map +1 -0
  321. package/dist/esm/electron/index.d.ts +4 -0
  322. package/dist/esm/electron/index.d.ts.map +1 -0
  323. package/dist/esm/electron/index.js +20 -0
  324. package/dist/esm/electron/index.js.map +1 -0
  325. package/dist/esm/electron/window/index.d.ts +8 -0
  326. package/dist/esm/electron/window/index.d.ts.map +1 -0
  327. package/dist/esm/electron/window/index.js +255 -0
  328. package/dist/esm/electron/window/index.js.map +1 -0
  329. package/dist/esm/exception/index.d.ts +3 -0
  330. package/dist/esm/exception/index.d.ts.map +1 -0
  331. package/dist/esm/exception/index.js +87 -0
  332. package/dist/esm/exception/index.js.map +1 -0
  333. package/dist/esm/html/index.d.ts +2 -0
  334. package/dist/esm/html/index.d.ts.map +1 -0
  335. package/dist/esm/html/index.js +17 -0
  336. package/dist/esm/html/index.js.map +1 -0
  337. package/dist/esm/index.d.ts +32 -0
  338. package/dist/esm/index.d.ts.map +1 -0
  339. package/dist/esm/index.js +198 -0
  340. package/dist/esm/index.js.map +1 -0
  341. package/dist/esm/jobs/child/app.d.ts +2 -0
  342. package/dist/esm/jobs/child/app.d.ts.map +1 -0
  343. package/dist/esm/jobs/child/app.js +71 -0
  344. package/dist/esm/jobs/child/app.js.map +1 -0
  345. package/dist/esm/jobs/child/index.d.ts +29 -0
  346. package/dist/esm/jobs/child/index.d.ts.map +1 -0
  347. package/dist/esm/jobs/child/index.js +78 -0
  348. package/dist/esm/jobs/child/index.js.map +1 -0
  349. package/dist/esm/jobs/child/jobProcess.d.ts +34 -0
  350. package/dist/esm/jobs/child/jobProcess.d.ts.map +1 -0
  351. package/dist/esm/jobs/child/jobProcess.js +121 -0
  352. package/dist/esm/jobs/child/jobProcess.js.map +1 -0
  353. package/dist/esm/jobs/child-pool/index.d.ts +30 -0
  354. package/dist/esm/jobs/child-pool/index.d.ts.map +1 -0
  355. package/dist/esm/jobs/child-pool/index.js +165 -0
  356. package/dist/esm/jobs/child-pool/index.js.map +1 -0
  357. package/dist/esm/jobs/index.d.ts +8 -0
  358. package/dist/esm/jobs/index.d.ts.map +1 -0
  359. package/dist/esm/jobs/index.js +12 -0
  360. package/dist/esm/jobs/index.js.map +1 -0
  361. package/dist/esm/jobs/load-balancer/algorithm/index.d.ts +5 -0
  362. package/dist/esm/jobs/load-balancer/algorithm/index.d.ts.map +1 -0
  363. package/dist/esm/jobs/load-balancer/algorithm/index.js +26 -0
  364. package/dist/esm/jobs/load-balancer/algorithm/index.js.map +1 -0
  365. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.d.ts +6 -0
  366. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.d.ts.map +1 -0
  367. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.js +27 -0
  368. package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.js.map +1 -0
  369. package/dist/esm/jobs/load-balancer/algorithm/polling.d.ts +6 -0
  370. package/dist/esm/jobs/load-balancer/algorithm/polling.d.ts.map +1 -0
  371. package/dist/esm/jobs/load-balancer/algorithm/polling.js +15 -0
  372. package/dist/esm/jobs/load-balancer/algorithm/polling.js.map +1 -0
  373. package/dist/esm/jobs/load-balancer/algorithm/random.d.ts +6 -0
  374. package/dist/esm/jobs/load-balancer/algorithm/random.d.ts.map +1 -0
  375. package/dist/esm/jobs/load-balancer/algorithm/random.js +12 -0
  376. package/dist/esm/jobs/load-balancer/algorithm/random.js.map +1 -0
  377. package/dist/esm/jobs/load-balancer/algorithm/specify.d.ts +6 -0
  378. package/dist/esm/jobs/load-balancer/algorithm/specify.d.ts.map +1 -0
  379. package/dist/esm/jobs/load-balancer/algorithm/specify.js +18 -0
  380. package/dist/esm/jobs/load-balancer/algorithm/specify.js.map +1 -0
  381. package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts +6 -0
  382. package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts.map +1 -0
  383. package/dist/esm/jobs/load-balancer/algorithm/weights.js +30 -0
  384. package/dist/esm/jobs/load-balancer/algorithm/weights.js.map +1 -0
  385. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +6 -0
  386. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -0
  387. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js +37 -0
  388. package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -0
  389. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.d.ts +6 -0
  390. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.d.ts.map +1 -0
  391. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.js +26 -0
  392. package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.js.map +1 -0
  393. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.d.ts +6 -0
  394. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.d.ts.map +1 -0
  395. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.js +22 -0
  396. package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.js.map +1 -0
  397. package/dist/esm/jobs/load-balancer/consts.d.ts +13 -0
  398. package/dist/esm/jobs/load-balancer/consts.d.ts.map +1 -0
  399. package/dist/esm/jobs/load-balancer/consts.js +14 -0
  400. package/dist/esm/jobs/load-balancer/consts.js.map +1 -0
  401. package/dist/esm/jobs/load-balancer/index.d.ts +84 -0
  402. package/dist/esm/jobs/load-balancer/index.d.ts.map +1 -0
  403. package/dist/esm/jobs/load-balancer/index.js +195 -0
  404. package/dist/esm/jobs/load-balancer/index.js.map +1 -0
  405. package/dist/esm/jobs/load-balancer/scheduler.d.ts +17 -0
  406. package/dist/esm/jobs/load-balancer/scheduler.d.ts.map +1 -0
  407. package/dist/esm/jobs/load-balancer/scheduler.js +36 -0
  408. package/dist/esm/jobs/load-balancer/scheduler.js.map +1 -0
  409. package/dist/esm/jobs/load-balancer/types.d.ts +22 -0
  410. package/dist/esm/jobs/load-balancer/types.d.ts.map +1 -0
  411. package/dist/esm/jobs/load-balancer/types.js +3 -0
  412. package/dist/esm/jobs/load-balancer/types.js.map +1 -0
  413. package/dist/esm/loader/index.d.ts +6 -0
  414. package/dist/esm/loader/index.d.ts.map +1 -0
  415. package/dist/esm/loader/index.js +82 -0
  416. package/dist/esm/loader/index.js.map +1 -0
  417. package/dist/esm/log/index.d.ts +18 -0
  418. package/dist/esm/log/index.d.ts.map +1 -0
  419. package/dist/esm/log/index.js +84 -0
  420. package/dist/esm/log/index.js.map +1 -0
  421. package/dist/esm/log/logger.d.ts +9 -0
  422. package/dist/esm/log/logger.d.ts.map +1 -0
  423. package/dist/esm/log/logger.js +126 -0
  424. package/dist/esm/log/logger.js.map +1 -0
  425. package/dist/esm/message/childMessage.d.ts +8 -0
  426. package/dist/esm/message/childMessage.d.ts.map +1 -0
  427. package/dist/esm/message/childMessage.js +37 -0
  428. package/dist/esm/message/childMessage.js.map +1 -0
  429. package/dist/esm/message/index.d.ts +2 -0
  430. package/dist/esm/message/index.d.ts.map +1 -0
  431. package/dist/esm/message/index.js +7 -0
  432. package/dist/esm/message/index.js.map +1 -0
  433. package/dist/esm/ps/index.d.ts +43 -0
  434. package/dist/esm/ps/index.d.ts.map +1 -0
  435. package/dist/esm/ps/index.js +235 -0
  436. package/dist/esm/ps/index.js.map +1 -0
  437. package/dist/esm/socket/httpServer.d.ts +21 -0
  438. package/dist/esm/socket/httpServer.d.ts.map +1 -0
  439. package/dist/esm/socket/httpServer.js +174 -0
  440. package/dist/esm/socket/httpServer.js.map +1 -0
  441. package/dist/esm/socket/index.d.ts +18 -0
  442. package/dist/esm/socket/index.d.ts.map +1 -0
  443. package/dist/esm/socket/index.js +67 -0
  444. package/dist/esm/socket/index.js.map +1 -0
  445. package/dist/esm/socket/ipcServer.d.ts +10 -0
  446. package/dist/esm/socket/ipcServer.d.ts.map +1 -0
  447. package/dist/esm/socket/ipcServer.js +107 -0
  448. package/dist/esm/socket/ipcServer.js.map +1 -0
  449. package/dist/esm/socket/socketServer.d.ts +12 -0
  450. package/dist/esm/socket/socketServer.d.ts.map +1 -0
  451. package/dist/esm/socket/socketServer.js +77 -0
  452. package/dist/esm/socket/socketServer.js.map +1 -0
  453. package/dist/esm/storage/index.d.ts +2 -0
  454. package/dist/esm/storage/index.d.ts.map +1 -0
  455. package/dist/esm/storage/index.js +6 -0
  456. package/dist/esm/storage/index.js.map +1 -0
  457. package/dist/esm/storage/sqliteStorage.d.ts +28 -0
  458. package/dist/esm/storage/sqliteStorage.d.ts.map +1 -0
  459. package/dist/esm/storage/sqliteStorage.js +85 -0
  460. package/dist/esm/storage/sqliteStorage.js.map +1 -0
  461. package/dist/esm/types/index.d.ts +156 -0
  462. package/dist/esm/types/index.d.ts.map +1 -0
  463. package/dist/esm/types/index.js +3 -0
  464. package/dist/esm/types/index.js.map +1 -0
  465. package/dist/esm/utils/extend.d.ts +3 -0
  466. package/dist/esm/utils/extend.d.ts.map +1 -0
  467. package/dist/esm/utils/extend.js +57 -0
  468. package/dist/esm/utils/extend.js.map +1 -0
  469. package/dist/esm/utils/helper.d.ts +16 -0
  470. package/dist/esm/utils/helper.d.ts.map +1 -0
  471. package/dist/esm/utils/helper.js +174 -0
  472. package/dist/esm/utils/helper.js.map +1 -0
  473. package/dist/esm/utils/index.d.ts +20 -0
  474. package/dist/esm/utils/index.d.ts.map +1 -0
  475. package/dist/esm/utils/index.js +220 -0
  476. package/dist/esm/utils/index.js.map +1 -0
  477. package/dist/esm/utils/ip.d.ts +13 -0
  478. package/dist/esm/utils/ip.d.ts.map +1 -0
  479. package/dist/esm/utils/ip.js +185 -0
  480. package/dist/esm/utils/ip.js.map +1 -0
  481. package/dist/esm/utils/is.d.ts +15 -0
  482. package/dist/esm/utils/is.d.ts.map +1 -0
  483. package/dist/esm/utils/is.js +91 -0
  484. package/dist/esm/utils/is.js.map +1 -0
  485. package/dist/esm/utils/json.d.ts +10 -0
  486. package/dist/esm/utils/json.d.ts.map +1 -0
  487. package/dist/esm/utils/json.js +60 -0
  488. package/dist/esm/utils/json.js.map +1 -0
  489. package/dist/esm/utils/pargv.d.ts +16 -0
  490. package/dist/esm/utils/pargv.d.ts.map +1 -0
  491. package/dist/esm/utils/pargv.js +268 -0
  492. package/dist/esm/utils/pargv.js.map +1 -0
  493. package/dist/esm/utils/port/index.d.ts +6 -0
  494. package/dist/esm/utils/port/index.d.ts.map +1 -0
  495. package/dist/esm/utils/port/index.js +112 -0
  496. package/dist/esm/utils/port/index.js.map +1 -0
  497. package/dist/esm/utils/type_check.d.ts +9 -0
  498. package/dist/esm/utils/type_check.d.ts.map +1 -0
  499. package/dist/esm/utils/type_check.js +35 -0
  500. package/dist/esm/utils/type_check.js.map +1 -0
  501. package/dist/esm/utils/wrap.d.ts +5 -0
  502. package/dist/esm/utils/wrap.d.ts.map +1 -0
  503. package/dist/esm/utils/wrap.js +51 -0
  504. package/dist/esm/utils/wrap.js.map +1 -0
  505. package/package.json +416 -19
  506. package/LICENSE +0 -21
  507. package/README.md +0 -66
  508. package/app/application.d.ts +0 -5
  509. package/app/application.js +0 -31
  510. package/app/boot.d.ts +0 -5
  511. package/app/boot.js +0 -81
  512. package/app/dir.js +0 -27
  513. package/app/events.d.ts +0 -14
  514. package/app/events.js +0 -56
  515. package/app/index.d.ts +0 -2
  516. package/app/index.js +0 -7
  517. package/config/config_loader.d.ts +0 -13
  518. package/config/config_loader.js +0 -66
  519. package/config/default_config.d.ts +0 -95
  520. package/config/default_config.js +0 -111
  521. package/config/index.d.ts +0 -28
  522. package/config/index.js +0 -25
  523. package/const/channel.d.ts +0 -16
  524. package/const/channel.js +0 -28
  525. package/controller/controller_loader.d.ts +0 -9
  526. package/controller/controller_loader.js +0 -78
  527. package/controller/index.d.ts +0 -2
  528. package/controller/index.js +0 -24
  529. package/core/index.d.ts +0 -2
  530. package/core/index.js +0 -12
  531. package/core/loader/file_loader.js +0 -212
  532. package/core/utils/index.d.ts +0 -12
  533. package/core/utils/index.js +0 -83
  534. package/core/utils/timing.d.ts +0 -22
  535. package/core/utils/timing.js +0 -78
  536. package/cross/cross.d.ts +0 -19
  537. package/cross/cross.js +0 -153
  538. package/cross/crossProcess.d.ts +0 -29
  539. package/cross/crossProcess.js +0 -173
  540. package/cross/index.d.ts +0 -2
  541. package/cross/index.js +0 -8
  542. package/electron/app/index.js +0 -48
  543. package/electron/index.d.ts +0 -3
  544. package/electron/index.js +0 -16
  545. package/electron/window/index.d.ts +0 -6
  546. package/electron/window/index.js +0 -269
  547. package/exception/index.d.ts +0 -9
  548. package/exception/index.js +0 -101
  549. package/html/boot.html +0 -98
  550. package/html/cross-failure.html +0 -28
  551. package/html/failure.html +0 -28
  552. package/html/index.js +0 -11
  553. package/index.d.ts +0 -2
  554. package/index.js +0 -7
  555. package/jobs/child/app.d.ts +0 -1
  556. package/jobs/child/app.js +0 -70
  557. package/jobs/child/index.d.ts +0 -13
  558. package/jobs/child/index.js +0 -85
  559. package/jobs/child/jobProcess.d.ts +0 -16
  560. package/jobs/child/jobProcess.js +0 -134
  561. package/jobs/child-pool/index.d.ts +0 -26
  562. package/jobs/child-pool/index.js +0 -190
  563. package/jobs/index.d.ts +0 -3
  564. package/jobs/index.js +0 -7
  565. package/jobs/load-balancer/algorithm/index.d.ts +0 -4
  566. package/jobs/load-balancer/algorithm/index.js +0 -12
  567. package/jobs/load-balancer/algorithm/minimumConnection.d.ts +0 -2
  568. package/jobs/load-balancer/algorithm/minimumConnection.js +0 -19
  569. package/jobs/load-balancer/algorithm/polling.d.ts +0 -2
  570. package/jobs/load-balancer/algorithm/polling.js +0 -12
  571. package/jobs/load-balancer/algorithm/random.d.ts +0 -2
  572. package/jobs/load-balancer/algorithm/random.js +0 -10
  573. package/jobs/load-balancer/algorithm/specify.d.ts +0 -2
  574. package/jobs/load-balancer/algorithm/specify.js +0 -15
  575. package/jobs/load-balancer/algorithm/weights.d.ts +0 -2
  576. package/jobs/load-balancer/algorithm/weights.js +0 -22
  577. package/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +0 -2
  578. package/jobs/load-balancer/algorithm/weightsMinimumConnection.js +0 -30
  579. package/jobs/load-balancer/algorithm/weightsPolling.d.ts +0 -2
  580. package/jobs/load-balancer/algorithm/weightsPolling.js +0 -23
  581. package/jobs/load-balancer/algorithm/weightsRandom.d.ts +0 -2
  582. package/jobs/load-balancer/algorithm/weightsRandom.js +0 -17
  583. package/jobs/load-balancer/consts.d.ts +0 -8
  584. package/jobs/load-balancer/consts.js +0 -10
  585. package/jobs/load-balancer/index.d.ts +0 -96
  586. package/jobs/load-balancer/index.js +0 -202
  587. package/jobs/load-balancer/scheduler.d.ts +0 -16
  588. package/jobs/load-balancer/scheduler.js +0 -32
  589. package/loader/index.d.ts +0 -9
  590. package/loader/index.js +0 -99
  591. package/log/index.d.ts +0 -5
  592. package/log/index.js +0 -86
  593. package/log/logger.d.ts +0 -2
  594. package/log/logger.js +0 -95
  595. package/message/childMessage.d.ts +0 -10
  596. package/message/childMessage.js +0 -43
  597. package/message/index.d.ts +0 -3
  598. package/message/index.js +0 -10
  599. package/ps/index.js +0 -295
  600. package/socket/httpServer.d.ts +0 -8
  601. package/socket/httpServer.js +0 -199
  602. package/socket/index.d.ts +0 -10
  603. package/socket/index.js +0 -65
  604. package/socket/ipcServer.d.ts +0 -9
  605. package/socket/ipcServer.js +0 -106
  606. package/socket/socketServer.d.ts +0 -10
  607. package/socket/socketServer.js +0 -82
  608. package/storage/index.d.ts +0 -5
  609. package/storage/index.js +0 -7
  610. package/storage/sqliteStorage.d.ts +0 -16
  611. package/storage/sqliteStorage.js +0 -124
  612. package/tsconfig.json +0 -14
  613. package/utils/extend.d.ts +0 -2
  614. package/utils/extend.js +0 -78
  615. package/utils/helper.d.ts +0 -14
  616. package/utils/helper.js +0 -207
  617. package/utils/index.d.ts +0 -11
  618. package/utils/index.js +0 -198
  619. package/utils/ip.d.ts +0 -2
  620. package/utils/ip.js +0 -221
  621. package/utils/is.js +0 -112
  622. package/utils/json.d.ts +0 -5
  623. package/utils/json.js +0 -80
  624. package/utils/pargv.d.ts +0 -3
  625. package/utils/pargv.js +0 -267
  626. package/utils/port/index.d.ts +0 -1
  627. package/utils/port/index.js +0 -126
  628. package/utils/wrap.d.ts +0 -4
  629. package/utils/wrap.js +0 -41
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HttpServer = void 0;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const assert_1 = __importDefault(require("assert"));
9
+ const type_check_js_1 = require("../utils/type_check.js");
10
+ const koa_1 = __importDefault(require("koa"));
11
+ const koa2_cors_1 = __importDefault(require("koa2-cors"));
12
+ const koa_body_1 = __importDefault(require("koa-body"));
13
+ const https_1 = __importDefault(require("https"));
14
+ const fs_1 = __importDefault(require("fs"));
15
+ const path_1 = __importDefault(require("path"));
16
+ const index_js_1 = require("../log/index.js");
17
+ const index_js_2 = require("../ps/index.js");
18
+ const index_js_3 = require("../controller/index.js");
19
+ const index_js_4 = require("../config/index.js");
20
+ const index_js_5 = require("../utils/port/index.js");
21
+ const debugLog = (0, debug_1.default)('ee-core:socket:httpServer');
22
+ class HttpServer {
23
+ constructor() {
24
+ const config = (0, index_js_4.getConfig)();
25
+ this.config = config.httpServer;
26
+ this.channelSeparator = config.mainServer.channelSeparator || '/';
27
+ this.httpApp = undefined;
28
+ this.init();
29
+ }
30
+ async init() {
31
+ if (this.config.enable === false) {
32
+ return;
33
+ }
34
+ const port = await (0, index_js_5.getPort)({ port: this.config.port });
35
+ if (!port) {
36
+ throw new Error('[ee-core] [socket/HttpServer] http port required, and must be a number !');
37
+ }
38
+ process.env.EE_HTTP_PORT = String(port);
39
+ this.config.port = port;
40
+ this._create();
41
+ }
42
+ async _create() {
43
+ const config = this.config;
44
+ const koaConfig = config.koaConfig || {};
45
+ const preMiddleware = koaConfig.preMiddleware || [];
46
+ const postMiddleware = koaConfig.postMiddleware || [];
47
+ const errorHandler = koaConfig.errorHandler;
48
+ const isHttps = config.https.enable === true;
49
+ const sslOptions = {};
50
+ if (isHttps) {
51
+ config.protocol = 'https://';
52
+ const httpsConfig = config.https;
53
+ const keyFile = path_1.default.join((0, index_js_2.getBaseDir)(), httpsConfig.key);
54
+ const certFile = path_1.default.join((0, index_js_2.getBaseDir)(), httpsConfig.cert);
55
+ (0, assert_1.default)(fs_1.default.existsSync(keyFile), 'ssl key file is required');
56
+ (0, assert_1.default)(fs_1.default.existsSync(certFile), 'ssl cert file is required');
57
+ sslOptions.key = fs_1.default.readFileSync(keyFile);
58
+ sslOptions.cert = fs_1.default.readFileSync(certFile);
59
+ }
60
+ const url = config.protocol + config.host + ':' + config.port;
61
+ const corsOptions = config.cors;
62
+ const koaApp = new koa_1.default();
63
+ // 设置错误处理器,便于统一错误代码处理
64
+ this._setupErrorHandler(koaApp, errorHandler);
65
+ // 加载前置中间件
66
+ this._loadMiddlewares(koaApp, preMiddleware, 'pre');
67
+ // 核心中间件
68
+ koaApp.use((0, koa2_cors_1.default)(corsOptions));
69
+ koaApp.use((0, koa_body_1.default)(config.body));
70
+ koaApp.use(this._dispatch.bind(this));
71
+ // 加载后置中间件
72
+ this._loadMiddlewares(koaApp, postMiddleware, 'post');
73
+ let msg = '[socket/http] server is: ' + url;
74
+ const listenOpt = { host: config.host, port: config.port };
75
+ if (isHttps) {
76
+ const server = https_1.default.createServer(sslOptions, koaApp.callback());
77
+ server.on('error', (err) => {
78
+ index_js_1.coreLogger.error(`[socket/http] https server error: ${err.message}`);
79
+ });
80
+ server.listen(listenOpt, () => {
81
+ index_js_1.coreLogger.info(msg);
82
+ });
83
+ }
84
+ else {
85
+ const server = koaApp.listen(listenOpt, () => {
86
+ index_js_1.coreLogger.info(msg);
87
+ });
88
+ server.on('error', (err) => {
89
+ index_js_1.coreLogger.error(`[socket/http] http server error: ${err.message}`);
90
+ });
91
+ }
92
+ this.httpApp = koaApp;
93
+ }
94
+ async _dispatch(ctx, next) {
95
+ const controller = (0, index_js_3.getController)();
96
+ const { filterRequest } = (0, index_js_4.getConfig)().httpServer;
97
+ let uriPath = ctx.request.path;
98
+ const method = ctx.request.method;
99
+ let params = ctx.request.query;
100
+ params = (0, type_check_js_1.isObject)(params) ? JSON.parse(JSON.stringify(params)) : {};
101
+ const body = ctx.request.body;
102
+ ctx.response.status = 200;
103
+ try {
104
+ // 找函数
105
+ // 去除开头的 '/'
106
+ if (uriPath.indexOf('/') === 0) {
107
+ uriPath = uriPath.substring(1);
108
+ }
109
+ // 过滤
110
+ if (filterRequest.uris.includes(uriPath)) {
111
+ ctx.response.body = filterRequest.returnData;
112
+ await next();
113
+ return;
114
+ }
115
+ if (uriPath.slice(0, 10) !== 'controller') {
116
+ uriPath = 'controller/' + uriPath;
117
+ }
118
+ const cmd = uriPath.split('/').join(this.channelSeparator);
119
+ debugLog('[request] uri %s', cmd);
120
+ const args = method === 'POST' ? body : params;
121
+ let fn = null;
122
+ if ((0, type_check_js_1.isString)(cmd)) {
123
+ const actions = cmd.split(this.channelSeparator);
124
+ let obj = { controller };
125
+ actions.forEach((key) => {
126
+ obj = obj[key];
127
+ if (!obj)
128
+ throw new Error(`class or function '${key}' not exists`);
129
+ });
130
+ fn = obj;
131
+ }
132
+ if (!fn)
133
+ throw new Error('function not exists');
134
+ const result = await fn.call(controller, args, ctx);
135
+ ctx.response.body = result;
136
+ }
137
+ catch (err) {
138
+ index_js_1.coreLogger.error('[httpServer] throw error:', err);
139
+ }
140
+ await next();
141
+ }
142
+ getHttpApp() {
143
+ return this.httpApp;
144
+ }
145
+ // 设置错误处理函数
146
+ _setupErrorHandler(app, errorHandler) {
147
+ if ((0, type_check_js_1.isFunction)(errorHandler)) {
148
+ app.on('error', errorHandler);
149
+ }
150
+ }
151
+ /**
152
+ * 加载前置、后置中间件
153
+ * @param {*} app koaApp示例
154
+ * @param {*} middlewares 中间件数组
155
+ * @param {*} type 类型,pre/post
156
+ */
157
+ _loadMiddlewares(app, middlewares = [], type = 'pre') {
158
+ if ((0, type_check_js_1.isArray)(middlewares)) {
159
+ middlewares.forEach((middleware) => {
160
+ if ((0, type_check_js_1.isFunction)(middleware)) {
161
+ // middleware是一个方法
162
+ // 返回值是中间件(ctx, next) => {}的异步函数
163
+ // 便于使用async/await进行同步编程
164
+ app.use(middleware());
165
+ }
166
+ else {
167
+ index_js_1.coreLogger.warn(`[ee-core/httpServer] Invalid ${type} middleware detected, skipping.`);
168
+ }
169
+ });
170
+ }
171
+ }
172
+ }
173
+ exports.HttpServer = HttpServer;
174
+ //# sourceMappingURL=httpServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../../src/socket/httpServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export { SocketServer } from './socketServer.js';
2
+ export { HttpServer } from './httpServer.js';
3
+ export { IpcServer } from './ipcServer.js';
4
+ import { Server as IoServer } from 'socket.io';
5
+ import IoClient from 'socket.io-client';
6
+ import Koa from 'koa';
7
+ import { SocketServer } from './socketServer.js';
8
+ import { HttpServer } from './httpServer.js';
9
+ import { IpcServer } from './ipcServer.js';
10
+ export { Koa, IoServer, IoClient };
11
+ export declare function createSocketServer(): SocketServer;
12
+ export declare function getSocketServer(): SocketServer | null;
13
+ export declare function createHttpServer(): HttpServer;
14
+ export declare function getHttpServer(): HttpServer | null;
15
+ export declare function createIpcServer(): IpcServer;
16
+ export declare function getIpcServer(): IpcServer | null;
17
+ export declare function loadSocket(): void;
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/socket/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AACxC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAanC,wBAAgB,kBAAkB,IAAI,YAAY,CAGjD;AAGD,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAErD;AAGD,wBAAgB,gBAAgB,IAAI,UAAU,CAG7C;AAGD,wBAAgB,aAAa,IAAI,UAAU,GAAG,IAAI,CAEjD;AAGD,wBAAgB,eAAe,IAAI,SAAS,CAG3C;AAGD,wBAAgB,YAAY,IAAI,SAAS,GAAG,IAAI,CAE/C;AAGD,wBAAgB,UAAU,IAAI,IAAI,CAIjC"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.IoClient = exports.IoServer = exports.Koa = exports.IpcServer = exports.HttpServer = exports.SocketServer = void 0;
7
+ exports.createSocketServer = createSocketServer;
8
+ exports.getSocketServer = getSocketServer;
9
+ exports.createHttpServer = createHttpServer;
10
+ exports.getHttpServer = getHttpServer;
11
+ exports.createIpcServer = createIpcServer;
12
+ exports.getIpcServer = getIpcServer;
13
+ exports.loadSocket = loadSocket;
14
+ var socketServer_js_1 = require("./socketServer.js");
15
+ Object.defineProperty(exports, "SocketServer", { enumerable: true, get: function () { return socketServer_js_1.SocketServer; } });
16
+ var httpServer_js_1 = require("./httpServer.js");
17
+ Object.defineProperty(exports, "HttpServer", { enumerable: true, get: function () { return httpServer_js_1.HttpServer; } });
18
+ var ipcServer_js_1 = require("./ipcServer.js");
19
+ Object.defineProperty(exports, "IpcServer", { enumerable: true, get: function () { return ipcServer_js_1.IpcServer; } });
20
+ const socket_io_1 = require("socket.io");
21
+ Object.defineProperty(exports, "IoServer", { enumerable: true, get: function () { return socket_io_1.Server; } });
22
+ const socket_io_client_1 = __importDefault(require("socket.io-client"));
23
+ exports.IoClient = socket_io_client_1.default;
24
+ const koa_1 = __importDefault(require("koa"));
25
+ exports.Koa = koa_1.default;
26
+ const socketServer_js_2 = require("./socketServer.js");
27
+ const httpServer_js_2 = require("./httpServer.js");
28
+ const ipcServer_js_2 = require("./ipcServer.js");
29
+ const Instance = {
30
+ socketServer: null,
31
+ httpServer: null,
32
+ ipcServer: null,
33
+ };
34
+ // create SocketServer
35
+ function createSocketServer() {
36
+ Instance.socketServer = new socketServer_js_2.SocketServer();
37
+ return Instance.socketServer;
38
+ }
39
+ // socketServer
40
+ function getSocketServer() {
41
+ return Instance.socketServer;
42
+ }
43
+ // create Http Server
44
+ function createHttpServer() {
45
+ Instance.httpServer = new httpServer_js_2.HttpServer();
46
+ return Instance.httpServer;
47
+ }
48
+ // httpServer
49
+ function getHttpServer() {
50
+ return Instance.httpServer;
51
+ }
52
+ // create IPC Server
53
+ function createIpcServer() {
54
+ Instance.ipcServer = new ipcServer_js_2.IpcServer();
55
+ return Instance.ipcServer;
56
+ }
57
+ // ipcServer
58
+ function getIpcServer() {
59
+ return Instance.ipcServer;
60
+ }
61
+ // load socket server
62
+ function loadSocket() {
63
+ createSocketServer();
64
+ createHttpServer();
65
+ createIpcServer();
66
+ }
67
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/socket/index.ts"],"names":[],"mappings":";;;;;;AAwBA,gDAGC;AAGD,0CAEC;AAGD,4CAGC;AAGD,sCAEC;AAGD,0CAGC;AAGD,oCAEC;AAGD,gCAIC;AA7DD,qDAAiD;AAAxC,+GAAA,YAAY,OAAA;AACrB,iDAA6C;AAApC,2GAAA,UAAU,OAAA;AACnB,+CAA2C;AAAlC,yGAAA,SAAS,OAAA;AAElB,yCAA+C;AAOjC,yFAPK,kBAAQ,OAOL;AANtB,wEAAwC;AAMhB,mBANjB,0BAAQ,CAMiB;AALhC,8CAAsB;AAKb,cALF,aAAG,CAKE;AAJZ,uDAAiD;AACjD,mDAA6C;AAC7C,iDAA2C;AAI3C,MAAM,QAAQ,GAIV;IACF,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF,sBAAsB;AACtB,SAAgB,kBAAkB;IAChC,QAAQ,CAAC,YAAY,GAAG,IAAI,8BAAY,EAAE,CAAC;IAC3C,OAAO,QAAQ,CAAC,YAAY,CAAC;AAC/B,CAAC;AAED,eAAe;AACf,SAAgB,eAAe;IAC7B,OAAO,QAAQ,CAAC,YAAY,CAAC;AAC/B,CAAC;AAED,qBAAqB;AACrB,SAAgB,gBAAgB;IAC9B,QAAQ,CAAC,UAAU,GAAG,IAAI,0BAAU,EAAE,CAAC;IACvC,OAAO,QAAQ,CAAC,UAAU,CAAC;AAC7B,CAAC;AAED,aAAa;AACb,SAAgB,aAAa;IAC3B,OAAO,QAAQ,CAAC,UAAU,CAAC;AAC7B,CAAC;AAED,oBAAoB;AACpB,SAAgB,eAAe;IAC7B,QAAQ,CAAC,SAAS,GAAG,IAAI,wBAAS,EAAE,CAAC;IACrC,OAAO,QAAQ,CAAC,SAAS,CAAC;AAC5B,CAAC;AAED,YAAY;AACZ,SAAgB,YAAY;IAC1B,OAAO,QAAQ,CAAC,SAAS,CAAC;AAC5B,CAAC;AAED,qBAAqB;AACrB,SAAgB,UAAU;IACxB,kBAAkB,EAAE,CAAC;IACrB,gBAAgB,EAAE,CAAC;IACnB,eAAe,EAAE,CAAC;AACpB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare class IpcServer {
2
+ channelSeparator: string;
3
+ directory: string;
4
+ constructor();
5
+ init(): void;
6
+ loop(obj: Record<string, unknown>, pathname: string): void;
7
+ register(exportObj: Record<string, unknown>, propertyChain: string): void;
8
+ findFn(controller: Record<string, unknown>, c: string): ((...args: unknown[]) => unknown) | null;
9
+ }
10
+ //# sourceMappingURL=ipcServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ipcServer.d.ts","sourceRoot":"","sources":["../../../src/socket/ipcServer.ts"],"names":[],"mappings":"AAUA,qBAAa,SAAS;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;;IAQlB,IAAI,IAAI,IAAI;IAKZ,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAiB1D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAqCzE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,IAAI;CAsBjG"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.IpcServer = void 0;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const type_check_js_1 = require("../utils/type_check.js");
9
+ const electron_1 = require("electron");
10
+ const index_js_1 = require("../log/index.js");
11
+ const index_js_2 = require("../controller/index.js");
12
+ const file_loader_js_1 = require("../core/loader/file_loader.js");
13
+ const index_js_3 = require("../config/index.js");
14
+ const debugLog = (0, debug_1.default)('ee-core:socket:ipcServer');
15
+ class IpcServer {
16
+ constructor() {
17
+ this.channelSeparator = (0, index_js_3.getConfig)().mainServer.channelSeparator || '/';
18
+ this.directory = 'controller';
19
+ this.init();
20
+ }
21
+ init() {
22
+ const controller = (0, index_js_2.getController)();
23
+ this.loop(controller, this.directory);
24
+ }
25
+ loop(obj, pathname) {
26
+ const keys = Object.keys(obj);
27
+ // debugLog("[loop] keys: %j", keys);
28
+ for (const key of keys) {
29
+ if (key === 'constructor')
30
+ continue;
31
+ const subObj = obj[key];
32
+ const propertyChain = pathname + '.' + key;
33
+ if (subObj && subObj[file_loader_js_1.EXPORTS] === true) {
34
+ this.register(subObj, propertyChain);
35
+ }
36
+ else if (typeof subObj === 'object') {
37
+ // 如果子对象依然是对象,则递归调用继续判断
38
+ this.loop(subObj, propertyChain);
39
+ }
40
+ }
41
+ }
42
+ register(exportObj, propertyChain) {
43
+ const controller = (0, index_js_2.getController)();
44
+ const keys = Object.keys(exportObj);
45
+ for (const key of keys) {
46
+ // Supports two types of routing separators
47
+ // channel: controller.file.function | controller/file/function
48
+ const tmpChannel = `${propertyChain}.${key}`;
49
+ const channel = tmpChannel.split('.').join(this.channelSeparator);
50
+ debugLog('[register] channel %s', channel);
51
+ // send/on model
52
+ electron_1.ipcMain.on(channel, async (event, params) => {
53
+ try {
54
+ const fn = this.findFn(controller, channel);
55
+ if (!fn)
56
+ return;
57
+ const result = await fn.call(controller, params, event);
58
+ event.returnValue = result;
59
+ event.reply(channel, result);
60
+ }
61
+ catch (e) {
62
+ index_js_1.coreLogger.error('[socket/IpcServer] send/on throw error:', e);
63
+ }
64
+ });
65
+ // invoke/handle model
66
+ electron_1.ipcMain.handle(channel, async (event, params) => {
67
+ try {
68
+ const fn = this.findFn(controller, channel);
69
+ if (!fn)
70
+ return undefined;
71
+ return await fn.call(controller, params, event);
72
+ }
73
+ catch (e) {
74
+ index_js_1.coreLogger.error('[socket/IpcServer] invoke/handle throw error:', e);
75
+ return undefined;
76
+ }
77
+ });
78
+ }
79
+ }
80
+ findFn(controller, c) {
81
+ try {
82
+ // 找函数
83
+ const cmd = c;
84
+ let fn = null;
85
+ if ((0, type_check_js_1.isString)(cmd)) {
86
+ const actions = cmd.split(this.channelSeparator);
87
+ debugLog('[findFn] channel %o', actions);
88
+ let obj = { controller };
89
+ for (const key of actions) {
90
+ obj = obj[key];
91
+ if (!obj)
92
+ throw new Error(`class or function '${key}' not exists`);
93
+ }
94
+ fn = obj;
95
+ }
96
+ if (!fn)
97
+ throw new Error('function not exists');
98
+ return fn;
99
+ }
100
+ catch (err) {
101
+ index_js_1.coreLogger.error('[socket/IpcServer] throw error:', err);
102
+ return null;
103
+ }
104
+ }
105
+ }
106
+ exports.IpcServer = IpcServer;
107
+ //# sourceMappingURL=ipcServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ipcServer.js","sourceRoot":"","sources":["../../../src/socket/ipcServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { Server } from 'socket.io';
2
+ import type { SocketServerConfig } from '../types/index.js';
3
+ export declare class SocketServer {
4
+ config: SocketServerConfig;
5
+ channelSeparator: string;
6
+ socket: ReturnType<Server['on']> | undefined;
7
+ io: Server | undefined;
8
+ constructor();
9
+ init(): Promise<void>;
10
+ connect(): void;
11
+ }
12
+ //# sourceMappingURL=socketServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socketServer.d.ts","sourceRoot":"","sources":["../../../src/socket/socketServer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAMnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAI5D,qBAAa,YAAY;IACvB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;IAC7C,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;;IASjB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB3B,OAAO,IAAI,IAAI;CAqChB"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SocketServer = void 0;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const type_check_js_1 = require("../utils/type_check.js");
9
+ const socket_io_1 = require("socket.io");
10
+ const index_js_1 = require("../log/index.js");
11
+ const index_js_2 = require("../config/index.js");
12
+ const channel_js_1 = require("../const/channel.js");
13
+ const index_js_3 = require("../controller/index.js");
14
+ const index_js_4 = require("../utils/port/index.js");
15
+ const debugLog = (0, debug_1.default)('ee-core:socket:socketServer');
16
+ class SocketServer {
17
+ constructor() {
18
+ const config = (0, index_js_2.getConfig)();
19
+ this.config = config.socketServer;
20
+ this.channelSeparator = config.mainServer.channelSeparator || '/';
21
+ this.init();
22
+ }
23
+ async init() {
24
+ if (this.config.enable === false) {
25
+ return;
26
+ }
27
+ const port = await (0, index_js_4.getPort)({ port: this.config.port });
28
+ if (!port) {
29
+ throw new Error('[ee-core] [socket/socketServer] socekt port required, and must be a number !');
30
+ }
31
+ index_js_1.coreLogger.info('[socket/socketServer] port is:', port);
32
+ process.env.EE_SOCKET_PORT = String(port);
33
+ this.config.port = port;
34
+ this.io = new socket_io_1.Server(port, this.config);
35
+ this.connect();
36
+ }
37
+ connect() {
38
+ const controller = (0, index_js_3.getController)();
39
+ if (!this.io)
40
+ return;
41
+ this.io.on('connection', (socket) => {
42
+ const channel = this.config.channel || channel_js_1.SocketIO.partySoftware;
43
+ this.socket = socket;
44
+ socket.on(channel, async (message, callback) => {
45
+ index_js_1.coreLogger.info('[socket/socketServer] socket id:' + socket.id + ' message cmd: ' + message.cmd);
46
+ try {
47
+ const cmd = message.cmd;
48
+ const args = message.args;
49
+ let fn = null;
50
+ debugLog('[socket] channel %s', cmd);
51
+ if ((0, type_check_js_1.isString)(cmd)) {
52
+ const actions = cmd.split(this.channelSeparator);
53
+ debugLog('[findFn] channel %o', actions);
54
+ let obj = { controller };
55
+ actions.forEach((key) => {
56
+ obj = obj[key];
57
+ if (!obj)
58
+ throw new Error(`class or function '${key}' not exists`);
59
+ });
60
+ fn = obj;
61
+ }
62
+ if (!fn)
63
+ throw new Error('function not exists');
64
+ const result = await fn.call(controller, args);
65
+ if (callback) {
66
+ callback(result);
67
+ }
68
+ }
69
+ catch (err) {
70
+ index_js_1.coreLogger.error('[socket/socketServer] throw error:', err);
71
+ }
72
+ });
73
+ });
74
+ }
75
+ }
76
+ exports.SocketServer = SocketServer;
77
+ //# sourceMappingURL=socketServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socketServer.js","sourceRoot":"","sources":["../../../src/socket/socketServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { SqliteStorage } from './sqliteStorage.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqliteStorage = void 0;
4
+ var sqliteStorage_js_1 = require("./sqliteStorage.js");
5
+ Object.defineProperty(exports, "SqliteStorage", { enumerable: true, get: function () { return sqliteStorage_js_1.SqliteStorage; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/storage/index.ts"],"names":[],"mappings":";;;AAAA,uDAAmD;AAA1C,iHAAA,aAAa,OAAA"}
@@ -0,0 +1,28 @@
1
+ import Database from 'better-sqlite3';
2
+ export declare class SqliteStorage {
3
+ name: string;
4
+ mode: string;
5
+ dbDir: string;
6
+ fileName: string;
7
+ db: Database.Database;
8
+ constructor(name: string, opt?: Record<string, unknown>);
9
+ /**
10
+ * 初始化db
11
+ */
12
+ _initDB(opt?: Record<string, unknown>): Database.Database;
13
+ /**
14
+ * 获取文件名
15
+ */
16
+ _formatFileName(name: string): string;
17
+ /**
18
+ * 创建storage目录
19
+ */
20
+ _createDatabaseDir(): string;
21
+ /**
22
+ * 获取file path 模式
23
+ */
24
+ getMode(name: string): string;
25
+ getDbDir(): string;
26
+ getFilePath(): string;
27
+ }
28
+ //# sourceMappingURL=sqliteStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqliteStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/sqliteStorage.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAItC,qBAAa,aAAa;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;gBAEV,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAU3D;;OAEG;IACH,OAAO,CAAC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,QAAQ,CAAC,QAAQ;IAmB7D;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAOrC;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAa5B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAiB7B,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,MAAM;CAGtB"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SqliteStorage = void 0;
7
+ const assert_1 = __importDefault(require("assert"));
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
11
+ const helper_js_1 = require("../utils/helper.js");
12
+ const index_js_1 = require("../ps/index.js");
13
+ class SqliteStorage {
14
+ constructor(name, opt = {}) {
15
+ (0, assert_1.default)(name, `db name ${name} Cannot be empty`);
16
+ this.name = name;
17
+ this.mode = this.getMode(name);
18
+ this.dbDir = this._createDatabaseDir();
19
+ this.fileName = this._formatFileName(name);
20
+ this.db = this._initDB(opt);
21
+ }
22
+ /**
23
+ * 初始化db
24
+ */
25
+ _initDB(opt = {}) {
26
+ const options = Object.assign({ timeout: 5000 }, opt);
27
+ // 存储类型:db文件、内存(:memory:)
28
+ let dbPath = this.name;
29
+ if (this.mode !== 'memory') {
30
+ dbPath = this.getFilePath();
31
+ }
32
+ const db = new better_sqlite3_1.default(dbPath, options);
33
+ // 如果是文件类型,判断文件是否创建成功
34
+ if (this.mode !== 'memory') {
35
+ (0, assert_1.default)(fs_1.default.existsSync(dbPath), `error: db ${dbPath} not exists`);
36
+ }
37
+ return db;
38
+ }
39
+ /**
40
+ * 获取文件名
41
+ */
42
+ _formatFileName(name) {
43
+ if (this.mode === 'memory') {
44
+ return name;
45
+ }
46
+ return path_1.default.basename(name);
47
+ }
48
+ /**
49
+ * 创建storage目录
50
+ */
51
+ _createDatabaseDir() {
52
+ let dbDir = path_1.default.join((0, index_js_1.getDataDir)(), 'db');
53
+ if (this.mode === 'absolute') {
54
+ dbDir = path_1.default.dirname(this.name);
55
+ }
56
+ if (!fs_1.default.existsSync(dbDir)) {
57
+ (0, helper_js_1.mkdir)(dbDir, { mode: 0o755 });
58
+ }
59
+ return dbDir;
60
+ }
61
+ /**
62
+ * 获取file path 模式
63
+ */
64
+ getMode(name) {
65
+ // 内存模式
66
+ if (name === ':memory:') {
67
+ return 'memory';
68
+ }
69
+ (0, assert_1.default)(path_1.default.extname(name) === '.db', `error: db ${name} file ext name must be .db`);
70
+ // 路径模式
71
+ const normalized = name.replace(/[/\\]/g, '/');
72
+ if (normalized.indexOf('/') !== -1) {
73
+ return path_1.default.isAbsolute(name) ? 'absolute' : 'relative';
74
+ }
75
+ return 'onlyName';
76
+ }
77
+ getDbDir() {
78
+ return this.dbDir;
79
+ }
80
+ getFilePath() {
81
+ return path_1.default.join(this.dbDir, this.fileName);
82
+ }
83
+ }
84
+ exports.SqliteStorage = SqliteStorage;
85
+ //# sourceMappingURL=sqliteStorage.js.map