ee-core 4.1.4 → 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.
- package/dist/cjs/app/application.d.ts +6 -0
- package/dist/cjs/app/application.d.ts.map +1 -0
- package/dist/cjs/app/application.js +21 -0
- package/dist/cjs/app/application.js.map +1 -0
- package/dist/cjs/app/boot.d.ts +9 -0
- package/dist/cjs/app/boot.d.ts.map +1 -0
- package/dist/cjs/app/boot.js +75 -0
- package/dist/cjs/app/boot.js.map +1 -0
- package/{app → dist/cjs/app}/dir.d.ts +2 -1
- package/dist/cjs/app/dir.d.ts.map +1 -0
- package/dist/cjs/app/dir.js +27 -0
- package/dist/cjs/app/dir.js.map +1 -0
- package/dist/cjs/app/events.d.ts +15 -0
- package/dist/cjs/app/events.d.ts.map +1 -0
- package/dist/cjs/app/events.js +44 -0
- package/dist/cjs/app/events.js.map +1 -0
- package/dist/cjs/config/config_loader.d.ts +10 -0
- package/dist/cjs/config/config_loader.d.ts.map +1 -0
- package/dist/cjs/config/config_loader.js +56 -0
- package/dist/cjs/config/config_loader.js.map +1 -0
- package/dist/cjs/config/default_config.d.ts +3 -0
- package/dist/cjs/config/default_config.d.ts.map +1 -0
- package/dist/cjs/config/default_config.js +109 -0
- package/dist/cjs/config/default_config.js.map +1 -0
- package/dist/cjs/config/index.d.ts +4 -0
- package/dist/cjs/config/index.d.ts.map +1 -0
- package/dist/cjs/config/index.js +17 -0
- package/dist/cjs/config/index.js.map +1 -0
- package/dist/cjs/const/channel.d.ts +17 -0
- package/dist/cjs/const/channel.d.ts.map +1 -0
- package/dist/cjs/const/channel.js +20 -0
- package/dist/cjs/const/channel.js.map +1 -0
- package/dist/cjs/controller/controller_loader.d.ts +10 -0
- package/dist/cjs/controller/controller_loader.d.ts.map +1 -0
- package/dist/cjs/controller/controller_loader.js +78 -0
- package/dist/cjs/controller/controller_loader.js.map +1 -0
- package/dist/cjs/controller/index.d.ts +4 -0
- package/dist/cjs/controller/index.d.ts.map +1 -0
- package/dist/cjs/controller/index.js +22 -0
- package/dist/cjs/controller/index.js.map +1 -0
- package/{core → dist/cjs/core}/loader/file_loader.d.ts +61 -66
- package/dist/cjs/core/loader/file_loader.d.ts.map +1 -0
- package/dist/cjs/core/loader/file_loader.js +157 -0
- package/dist/cjs/core/loader/file_loader.js.map +1 -0
- package/dist/cjs/core/utils/index.d.ts +15 -0
- package/dist/cjs/core/utils/index.d.ts.map +1 -0
- package/dist/cjs/core/utils/index.js +73 -0
- package/dist/cjs/core/utils/index.js.map +1 -0
- package/dist/cjs/core/utils/timing.d.ts +18 -0
- package/dist/cjs/core/utils/timing.d.ts.map +1 -0
- package/dist/cjs/core/utils/timing.js +67 -0
- package/dist/cjs/core/utils/timing.js.map +1 -0
- package/dist/cjs/cross/cross.d.ts +25 -0
- package/dist/cjs/cross/cross.d.ts.map +1 -0
- package/dist/cjs/cross/cross.js +132 -0
- package/dist/cjs/cross/cross.js.map +1 -0
- package/dist/cjs/cross/crossProcess.d.ts +47 -0
- package/dist/cjs/cross/crossProcess.d.ts.map +1 -0
- package/dist/cjs/cross/crossProcess.js +190 -0
- package/dist/cjs/cross/crossProcess.js.map +1 -0
- package/dist/cjs/cross/index.d.ts +4 -0
- package/dist/cjs/cross/index.d.ts.map +1 -0
- package/dist/cjs/cross/index.js +9 -0
- package/dist/cjs/cross/index.js.map +1 -0
- package/{electron → dist/cjs/electron}/app/index.d.ts +7 -5
- package/dist/cjs/electron/app/index.d.ts.map +1 -0
- package/dist/cjs/electron/app/index.js +75 -0
- package/dist/cjs/electron/app/index.js.map +1 -0
- package/dist/cjs/electron/index.d.ts +4 -0
- package/dist/cjs/electron/index.d.ts.map +1 -0
- package/dist/cjs/electron/index.js +20 -0
- package/dist/cjs/electron/index.js.map +1 -0
- package/dist/cjs/electron/window/index.d.ts +8 -0
- package/dist/cjs/electron/window/index.d.ts.map +1 -0
- package/dist/cjs/electron/window/index.js +255 -0
- package/dist/cjs/electron/window/index.js.map +1 -0
- package/dist/cjs/exception/index.d.ts +3 -0
- package/dist/cjs/exception/index.d.ts.map +1 -0
- package/dist/cjs/exception/index.js +87 -0
- package/dist/cjs/exception/index.js.map +1 -0
- package/{html → dist/cjs/html}/index.d.ts +2 -1
- package/dist/cjs/html/index.d.ts.map +1 -0
- package/dist/cjs/html/index.js +17 -0
- package/dist/cjs/html/index.js.map +1 -0
- package/dist/cjs/index.d.ts +32 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +198 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/jobs/child/app.d.ts +2 -0
- package/dist/cjs/jobs/child/app.d.ts.map +1 -0
- package/dist/cjs/jobs/child/app.js +71 -0
- package/dist/cjs/jobs/child/app.js.map +1 -0
- package/dist/cjs/jobs/child/index.d.ts +29 -0
- package/dist/cjs/jobs/child/index.d.ts.map +1 -0
- package/dist/cjs/jobs/child/index.js +78 -0
- package/dist/cjs/jobs/child/index.js.map +1 -0
- package/dist/cjs/jobs/child/jobProcess.d.ts +34 -0
- package/dist/cjs/jobs/child/jobProcess.d.ts.map +1 -0
- package/dist/cjs/jobs/child/jobProcess.js +121 -0
- package/dist/cjs/jobs/child/jobProcess.js.map +1 -0
- package/dist/cjs/jobs/child-pool/index.d.ts +30 -0
- package/dist/cjs/jobs/child-pool/index.d.ts.map +1 -0
- package/dist/cjs/jobs/child-pool/index.js +165 -0
- package/dist/cjs/jobs/child-pool/index.js.map +1 -0
- package/dist/cjs/jobs/index.d.ts +8 -0
- package/dist/cjs/jobs/index.d.ts.map +1 -0
- package/dist/cjs/jobs/index.js +12 -0
- package/dist/cjs/jobs/index.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts +5 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.js +26 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.js +27 -0
- package/dist/cjs/jobs/load-balancer/algorithm/minimumConnection.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/polling.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/polling.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/polling.js +15 -0
- package/dist/cjs/jobs/load-balancer/algorithm/polling.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/random.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/random.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/random.js +12 -0
- package/dist/cjs/jobs/load-balancer/algorithm/random.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/specify.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/specify.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/specify.js +18 -0
- package/dist/cjs/jobs/load-balancer/algorithm/specify.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weights.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weights.js +30 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weights.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js +37 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.js +26 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsPolling.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.d.ts +6 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.js +22 -0
- package/dist/cjs/jobs/load-balancer/algorithm/weightsRandom.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/consts.d.ts +13 -0
- package/dist/cjs/jobs/load-balancer/consts.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/consts.js +14 -0
- package/dist/cjs/jobs/load-balancer/consts.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/index.d.ts +84 -0
- package/dist/cjs/jobs/load-balancer/index.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/index.js +195 -0
- package/dist/cjs/jobs/load-balancer/index.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/scheduler.d.ts +17 -0
- package/dist/cjs/jobs/load-balancer/scheduler.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/scheduler.js +36 -0
- package/dist/cjs/jobs/load-balancer/scheduler.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/types.d.ts +22 -0
- package/dist/cjs/jobs/load-balancer/types.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/types.js +3 -0
- package/dist/cjs/jobs/load-balancer/types.js.map +1 -0
- package/dist/cjs/loader/index.d.ts +6 -0
- package/dist/cjs/loader/index.d.ts.map +1 -0
- package/dist/cjs/loader/index.js +82 -0
- package/dist/cjs/loader/index.js.map +1 -0
- package/dist/cjs/log/index.d.ts +18 -0
- package/dist/cjs/log/index.d.ts.map +1 -0
- package/dist/cjs/log/index.js +84 -0
- package/dist/cjs/log/index.js.map +1 -0
- package/dist/cjs/log/logger.d.ts +9 -0
- package/dist/cjs/log/logger.d.ts.map +1 -0
- package/dist/cjs/log/logger.js +126 -0
- package/dist/cjs/log/logger.js.map +1 -0
- package/dist/cjs/message/childMessage.d.ts +8 -0
- package/dist/cjs/message/childMessage.d.ts.map +1 -0
- package/dist/cjs/message/childMessage.js +37 -0
- package/dist/cjs/message/childMessage.js.map +1 -0
- package/dist/cjs/message/index.d.ts +2 -0
- package/dist/cjs/message/index.d.ts.map +1 -0
- package/dist/cjs/message/index.js +7 -0
- package/dist/cjs/message/index.js.map +1 -0
- package/{ps → dist/cjs/ps}/index.d.ts +43 -39
- package/dist/cjs/ps/index.d.ts.map +1 -0
- package/dist/cjs/ps/index.js +235 -0
- package/dist/cjs/ps/index.js.map +1 -0
- package/dist/cjs/socket/httpServer.d.ts +21 -0
- package/dist/cjs/socket/httpServer.d.ts.map +1 -0
- package/dist/cjs/socket/httpServer.js +174 -0
- package/dist/cjs/socket/httpServer.js.map +1 -0
- package/dist/cjs/socket/index.d.ts +18 -0
- package/dist/cjs/socket/index.d.ts.map +1 -0
- package/dist/cjs/socket/index.js +67 -0
- package/dist/cjs/socket/index.js.map +1 -0
- package/dist/cjs/socket/ipcServer.d.ts +10 -0
- package/dist/cjs/socket/ipcServer.d.ts.map +1 -0
- package/dist/cjs/socket/ipcServer.js +107 -0
- package/dist/cjs/socket/ipcServer.js.map +1 -0
- package/dist/cjs/socket/socketServer.d.ts +12 -0
- package/dist/cjs/socket/socketServer.d.ts.map +1 -0
- package/dist/cjs/socket/socketServer.js +77 -0
- package/dist/cjs/socket/socketServer.js.map +1 -0
- package/dist/cjs/storage/index.d.ts +2 -0
- package/dist/cjs/storage/index.d.ts.map +1 -0
- package/dist/cjs/storage/index.js +6 -0
- package/dist/cjs/storage/index.js.map +1 -0
- package/dist/cjs/storage/sqliteStorage.d.ts +28 -0
- package/dist/cjs/storage/sqliteStorage.d.ts.map +1 -0
- package/dist/cjs/storage/sqliteStorage.js +85 -0
- package/dist/cjs/storage/sqliteStorage.js.map +1 -0
- package/dist/cjs/types/index.d.ts +156 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/utils/extend.d.ts +3 -0
- package/dist/cjs/utils/extend.d.ts.map +1 -0
- package/dist/cjs/utils/extend.js +57 -0
- package/dist/cjs/utils/extend.js.map +1 -0
- package/dist/cjs/utils/helper.d.ts +16 -0
- package/dist/cjs/utils/helper.d.ts.map +1 -0
- package/dist/cjs/utils/helper.js +174 -0
- package/dist/cjs/utils/helper.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +20 -0
- package/dist/cjs/utils/index.d.ts.map +1 -0
- package/dist/cjs/utils/index.js +220 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/ip.d.ts +13 -0
- package/dist/cjs/utils/ip.d.ts.map +1 -0
- package/dist/cjs/utils/ip.js +185 -0
- package/dist/cjs/utils/ip.js.map +1 -0
- package/{utils → dist/cjs/utils}/is.d.ts +15 -14
- package/dist/cjs/utils/is.d.ts.map +1 -0
- package/dist/cjs/utils/is.js +91 -0
- package/dist/cjs/utils/is.js.map +1 -0
- package/dist/cjs/utils/json.d.ts +10 -0
- package/dist/cjs/utils/json.d.ts.map +1 -0
- package/dist/cjs/utils/json.js +60 -0
- package/dist/cjs/utils/json.js.map +1 -0
- package/dist/cjs/utils/pargv.d.ts +16 -0
- package/dist/cjs/utils/pargv.d.ts.map +1 -0
- package/dist/cjs/utils/pargv.js +268 -0
- package/dist/cjs/utils/pargv.js.map +1 -0
- package/dist/cjs/utils/port/index.d.ts +6 -0
- package/dist/cjs/utils/port/index.d.ts.map +1 -0
- package/dist/cjs/utils/port/index.js +112 -0
- package/dist/cjs/utils/port/index.js.map +1 -0
- package/dist/cjs/utils/type_check.d.ts +9 -0
- package/dist/cjs/utils/type_check.d.ts.map +1 -0
- package/dist/cjs/utils/type_check.js +35 -0
- package/dist/cjs/utils/type_check.js.map +1 -0
- package/dist/cjs/utils/wrap.d.ts +5 -0
- package/dist/cjs/utils/wrap.d.ts.map +1 -0
- package/dist/cjs/utils/wrap.js +51 -0
- package/dist/cjs/utils/wrap.js.map +1 -0
- package/dist/esm/app/application.d.ts +6 -0
- package/dist/esm/app/application.d.ts.map +1 -0
- package/dist/esm/app/application.js +21 -0
- package/dist/esm/app/application.js.map +1 -0
- package/dist/esm/app/boot.d.ts +9 -0
- package/dist/esm/app/boot.d.ts.map +1 -0
- package/dist/esm/app/boot.js +75 -0
- package/dist/esm/app/boot.js.map +1 -0
- package/dist/esm/app/dir.d.ts +2 -0
- package/dist/esm/app/dir.d.ts.map +1 -0
- package/dist/esm/app/dir.js +27 -0
- package/dist/esm/app/dir.js.map +1 -0
- package/dist/esm/app/events.d.ts +15 -0
- package/dist/esm/app/events.d.ts.map +1 -0
- package/dist/esm/app/events.js +44 -0
- package/dist/esm/app/events.js.map +1 -0
- package/dist/esm/config/config_loader.d.ts +10 -0
- package/dist/esm/config/config_loader.d.ts.map +1 -0
- package/dist/esm/config/config_loader.js +56 -0
- package/dist/esm/config/config_loader.js.map +1 -0
- package/dist/esm/config/default_config.d.ts +3 -0
- package/dist/esm/config/default_config.d.ts.map +1 -0
- package/dist/esm/config/default_config.js +109 -0
- package/dist/esm/config/default_config.js.map +1 -0
- package/dist/esm/config/index.d.ts +4 -0
- package/dist/esm/config/index.d.ts.map +1 -0
- package/dist/esm/config/index.js +17 -0
- package/dist/esm/config/index.js.map +1 -0
- package/dist/esm/const/channel.d.ts +17 -0
- package/dist/esm/const/channel.d.ts.map +1 -0
- package/dist/esm/const/channel.js +20 -0
- package/dist/esm/const/channel.js.map +1 -0
- package/dist/esm/controller/controller_loader.d.ts +10 -0
- package/dist/esm/controller/controller_loader.d.ts.map +1 -0
- package/dist/esm/controller/controller_loader.js +78 -0
- package/dist/esm/controller/controller_loader.js.map +1 -0
- package/dist/esm/controller/index.d.ts +4 -0
- package/dist/esm/controller/index.d.ts.map +1 -0
- package/dist/esm/controller/index.js +22 -0
- package/dist/esm/controller/index.js.map +1 -0
- package/dist/esm/core/loader/file_loader.d.ts +61 -0
- package/dist/esm/core/loader/file_loader.d.ts.map +1 -0
- package/dist/esm/core/loader/file_loader.js +157 -0
- package/dist/esm/core/loader/file_loader.js.map +1 -0
- package/dist/esm/core/utils/index.d.ts +15 -0
- package/dist/esm/core/utils/index.d.ts.map +1 -0
- package/dist/esm/core/utils/index.js +73 -0
- package/dist/esm/core/utils/index.js.map +1 -0
- package/dist/esm/core/utils/timing.d.ts +18 -0
- package/dist/esm/core/utils/timing.d.ts.map +1 -0
- package/dist/esm/core/utils/timing.js +67 -0
- package/dist/esm/core/utils/timing.js.map +1 -0
- package/dist/esm/cross/cross.d.ts +25 -0
- package/dist/esm/cross/cross.d.ts.map +1 -0
- package/dist/esm/cross/cross.js +132 -0
- package/dist/esm/cross/cross.js.map +1 -0
- package/dist/esm/cross/crossProcess.d.ts +47 -0
- package/dist/esm/cross/crossProcess.d.ts.map +1 -0
- package/dist/esm/cross/crossProcess.js +190 -0
- package/dist/esm/cross/crossProcess.js.map +1 -0
- package/dist/esm/cross/index.d.ts +4 -0
- package/dist/esm/cross/index.d.ts.map +1 -0
- package/dist/esm/cross/index.js +9 -0
- package/dist/esm/cross/index.js.map +1 -0
- package/dist/esm/electron/app/index.d.ts +7 -0
- package/dist/esm/electron/app/index.d.ts.map +1 -0
- package/dist/esm/electron/app/index.js +75 -0
- package/dist/esm/electron/app/index.js.map +1 -0
- package/dist/esm/electron/index.d.ts +4 -0
- package/dist/esm/electron/index.d.ts.map +1 -0
- package/dist/esm/electron/index.js +20 -0
- package/dist/esm/electron/index.js.map +1 -0
- package/dist/esm/electron/window/index.d.ts +8 -0
- package/dist/esm/electron/window/index.d.ts.map +1 -0
- package/dist/esm/electron/window/index.js +255 -0
- package/dist/esm/electron/window/index.js.map +1 -0
- package/dist/esm/exception/index.d.ts +3 -0
- package/dist/esm/exception/index.d.ts.map +1 -0
- package/dist/esm/exception/index.js +87 -0
- package/dist/esm/exception/index.js.map +1 -0
- package/dist/esm/html/index.d.ts +2 -0
- package/dist/esm/html/index.d.ts.map +1 -0
- package/dist/esm/html/index.js +17 -0
- package/dist/esm/html/index.js.map +1 -0
- package/dist/esm/index.d.ts +32 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +198 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/jobs/child/app.d.ts +2 -0
- package/dist/esm/jobs/child/app.d.ts.map +1 -0
- package/dist/esm/jobs/child/app.js +71 -0
- package/dist/esm/jobs/child/app.js.map +1 -0
- package/dist/esm/jobs/child/index.d.ts +29 -0
- package/dist/esm/jobs/child/index.d.ts.map +1 -0
- package/dist/esm/jobs/child/index.js +78 -0
- package/dist/esm/jobs/child/index.js.map +1 -0
- package/dist/esm/jobs/child/jobProcess.d.ts +34 -0
- package/dist/esm/jobs/child/jobProcess.d.ts.map +1 -0
- package/dist/esm/jobs/child/jobProcess.js +121 -0
- package/dist/esm/jobs/child/jobProcess.js.map +1 -0
- package/dist/esm/jobs/child-pool/index.d.ts +30 -0
- package/dist/esm/jobs/child-pool/index.d.ts.map +1 -0
- package/dist/esm/jobs/child-pool/index.js +165 -0
- package/dist/esm/jobs/child-pool/index.js.map +1 -0
- package/dist/esm/jobs/index.d.ts +8 -0
- package/dist/esm/jobs/index.d.ts.map +1 -0
- package/dist/esm/jobs/index.js +12 -0
- package/dist/esm/jobs/index.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.d.ts +5 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.js +26 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.js +27 -0
- package/dist/esm/jobs/load-balancer/algorithm/minimumConnection.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/polling.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/polling.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/polling.js +15 -0
- package/dist/esm/jobs/load-balancer/algorithm/polling.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/random.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/random.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/random.js +12 -0
- package/dist/esm/jobs/load-balancer/algorithm/random.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/specify.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/specify.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/specify.js +18 -0
- package/dist/esm/jobs/load-balancer/algorithm/specify.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/weights.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weights.js +30 -0
- package/dist/esm/jobs/load-balancer/algorithm/weights.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js +37 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsMinimumConnection.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.js +26 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsPolling.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.d.ts +6 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.js +22 -0
- package/dist/esm/jobs/load-balancer/algorithm/weightsRandom.js.map +1 -0
- package/dist/esm/jobs/load-balancer/consts.d.ts +13 -0
- package/dist/esm/jobs/load-balancer/consts.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/consts.js +14 -0
- package/dist/esm/jobs/load-balancer/consts.js.map +1 -0
- package/dist/esm/jobs/load-balancer/index.d.ts +84 -0
- package/dist/esm/jobs/load-balancer/index.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/index.js +195 -0
- package/dist/esm/jobs/load-balancer/index.js.map +1 -0
- package/dist/esm/jobs/load-balancer/scheduler.d.ts +17 -0
- package/dist/esm/jobs/load-balancer/scheduler.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/scheduler.js +36 -0
- package/dist/esm/jobs/load-balancer/scheduler.js.map +1 -0
- package/dist/esm/jobs/load-balancer/types.d.ts +22 -0
- package/dist/esm/jobs/load-balancer/types.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/types.js +3 -0
- package/dist/esm/jobs/load-balancer/types.js.map +1 -0
- package/dist/esm/loader/index.d.ts +6 -0
- package/dist/esm/loader/index.d.ts.map +1 -0
- package/dist/esm/loader/index.js +82 -0
- package/dist/esm/loader/index.js.map +1 -0
- package/dist/esm/log/index.d.ts +18 -0
- package/dist/esm/log/index.d.ts.map +1 -0
- package/dist/esm/log/index.js +84 -0
- package/dist/esm/log/index.js.map +1 -0
- package/dist/esm/log/logger.d.ts +9 -0
- package/dist/esm/log/logger.d.ts.map +1 -0
- package/dist/esm/log/logger.js +126 -0
- package/dist/esm/log/logger.js.map +1 -0
- package/dist/esm/message/childMessage.d.ts +8 -0
- package/dist/esm/message/childMessage.d.ts.map +1 -0
- package/dist/esm/message/childMessage.js +37 -0
- package/dist/esm/message/childMessage.js.map +1 -0
- package/dist/esm/message/index.d.ts +2 -0
- package/dist/esm/message/index.d.ts.map +1 -0
- package/dist/esm/message/index.js +7 -0
- package/dist/esm/message/index.js.map +1 -0
- package/dist/esm/ps/index.d.ts +43 -0
- package/dist/esm/ps/index.d.ts.map +1 -0
- package/dist/esm/ps/index.js +235 -0
- package/dist/esm/ps/index.js.map +1 -0
- package/dist/esm/socket/httpServer.d.ts +21 -0
- package/dist/esm/socket/httpServer.d.ts.map +1 -0
- package/dist/esm/socket/httpServer.js +174 -0
- package/dist/esm/socket/httpServer.js.map +1 -0
- package/dist/esm/socket/index.d.ts +18 -0
- package/dist/esm/socket/index.d.ts.map +1 -0
- package/dist/esm/socket/index.js +67 -0
- package/dist/esm/socket/index.js.map +1 -0
- package/dist/esm/socket/ipcServer.d.ts +10 -0
- package/dist/esm/socket/ipcServer.d.ts.map +1 -0
- package/dist/esm/socket/ipcServer.js +107 -0
- package/dist/esm/socket/ipcServer.js.map +1 -0
- package/dist/esm/socket/socketServer.d.ts +12 -0
- package/dist/esm/socket/socketServer.d.ts.map +1 -0
- package/dist/esm/socket/socketServer.js +77 -0
- package/dist/esm/socket/socketServer.js.map +1 -0
- package/dist/esm/storage/index.d.ts +2 -0
- package/dist/esm/storage/index.d.ts.map +1 -0
- package/dist/esm/storage/index.js +6 -0
- package/dist/esm/storage/index.js.map +1 -0
- package/dist/esm/storage/sqliteStorage.d.ts +28 -0
- package/dist/esm/storage/sqliteStorage.d.ts.map +1 -0
- package/dist/esm/storage/sqliteStorage.js +85 -0
- package/dist/esm/storage/sqliteStorage.js.map +1 -0
- package/dist/esm/types/index.d.ts +156 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +3 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/utils/extend.d.ts +3 -0
- package/dist/esm/utils/extend.d.ts.map +1 -0
- package/dist/esm/utils/extend.js +57 -0
- package/dist/esm/utils/extend.js.map +1 -0
- package/dist/esm/utils/helper.d.ts +16 -0
- package/dist/esm/utils/helper.d.ts.map +1 -0
- package/dist/esm/utils/helper.js +174 -0
- package/dist/esm/utils/helper.js.map +1 -0
- package/dist/esm/utils/index.d.ts +20 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +220 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/ip.d.ts +13 -0
- package/dist/esm/utils/ip.d.ts.map +1 -0
- package/dist/esm/utils/ip.js +185 -0
- package/dist/esm/utils/ip.js.map +1 -0
- package/dist/esm/utils/is.d.ts +15 -0
- package/dist/esm/utils/is.d.ts.map +1 -0
- package/dist/esm/utils/is.js +91 -0
- package/dist/esm/utils/is.js.map +1 -0
- package/dist/esm/utils/json.d.ts +10 -0
- package/dist/esm/utils/json.d.ts.map +1 -0
- package/dist/esm/utils/json.js +60 -0
- package/dist/esm/utils/json.js.map +1 -0
- package/dist/esm/utils/pargv.d.ts +16 -0
- package/dist/esm/utils/pargv.d.ts.map +1 -0
- package/dist/esm/utils/pargv.js +268 -0
- package/dist/esm/utils/pargv.js.map +1 -0
- package/dist/esm/utils/port/index.d.ts +6 -0
- package/dist/esm/utils/port/index.d.ts.map +1 -0
- package/dist/esm/utils/port/index.js +112 -0
- package/dist/esm/utils/port/index.js.map +1 -0
- package/dist/esm/utils/type_check.d.ts +9 -0
- package/dist/esm/utils/type_check.d.ts.map +1 -0
- package/dist/esm/utils/type_check.js +35 -0
- package/dist/esm/utils/type_check.js.map +1 -0
- package/dist/esm/utils/wrap.d.ts +5 -0
- package/dist/esm/utils/wrap.d.ts.map +1 -0
- package/dist/esm/utils/wrap.js +51 -0
- package/dist/esm/utils/wrap.js.map +1 -0
- package/package.json +439 -42
- package/LICENSE +0 -21
- package/README.md +0 -66
- package/app/application.d.ts +0 -5
- package/app/application.js +0 -31
- package/app/boot.d.ts +0 -5
- package/app/boot.js +0 -81
- package/app/dir.js +0 -27
- package/app/events.d.ts +0 -14
- package/app/events.js +0 -56
- package/app/index.d.ts +0 -2
- package/app/index.js +0 -7
- package/config/config_loader.d.ts +0 -13
- package/config/config_loader.js +0 -66
- package/config/default_config.d.ts +0 -95
- package/config/default_config.js +0 -111
- package/config/index.d.ts +0 -28
- package/config/index.js +0 -25
- package/const/channel.d.ts +0 -16
- package/const/channel.js +0 -28
- package/controller/controller_loader.d.ts +0 -9
- package/controller/controller_loader.js +0 -78
- package/controller/index.d.ts +0 -2
- package/controller/index.js +0 -24
- package/core/index.d.ts +0 -2
- package/core/index.js +0 -12
- package/core/loader/file_loader.js +0 -212
- package/core/utils/index.d.ts +0 -12
- package/core/utils/index.js +0 -83
- package/core/utils/timing.d.ts +0 -22
- package/core/utils/timing.js +0 -78
- package/cross/cross.d.ts +0 -19
- package/cross/cross.js +0 -152
- package/cross/crossProcess.d.ts +0 -29
- package/cross/crossProcess.js +0 -173
- package/cross/index.d.ts +0 -2
- package/cross/index.js +0 -8
- package/electron/app/index.js +0 -48
- package/electron/index.d.ts +0 -3
- package/electron/index.js +0 -16
- package/electron/window/index.d.ts +0 -6
- package/electron/window/index.js +0 -269
- package/exception/index.d.ts +0 -9
- package/exception/index.js +0 -101
- package/html/boot.html +0 -98
- package/html/cross-failure.html +0 -28
- package/html/failure.html +0 -28
- package/html/index.js +0 -11
- package/index.d.ts +0 -2
- package/index.js +0 -7
- package/jobs/child/app.d.ts +0 -1
- package/jobs/child/app.js +0 -70
- package/jobs/child/index.d.ts +0 -13
- package/jobs/child/index.js +0 -85
- package/jobs/child/jobProcess.d.ts +0 -16
- package/jobs/child/jobProcess.js +0 -134
- package/jobs/child-pool/index.d.ts +0 -26
- package/jobs/child-pool/index.js +0 -190
- package/jobs/index.d.ts +0 -3
- package/jobs/index.js +0 -7
- package/jobs/load-balancer/algorithm/index.d.ts +0 -4
- package/jobs/load-balancer/algorithm/index.js +0 -12
- package/jobs/load-balancer/algorithm/minimumConnection.d.ts +0 -2
- package/jobs/load-balancer/algorithm/minimumConnection.js +0 -19
- package/jobs/load-balancer/algorithm/polling.d.ts +0 -2
- package/jobs/load-balancer/algorithm/polling.js +0 -12
- package/jobs/load-balancer/algorithm/random.d.ts +0 -2
- package/jobs/load-balancer/algorithm/random.js +0 -10
- package/jobs/load-balancer/algorithm/specify.d.ts +0 -2
- package/jobs/load-balancer/algorithm/specify.js +0 -15
- package/jobs/load-balancer/algorithm/weights.d.ts +0 -2
- package/jobs/load-balancer/algorithm/weights.js +0 -22
- package/jobs/load-balancer/algorithm/weightsMinimumConnection.d.ts +0 -2
- package/jobs/load-balancer/algorithm/weightsMinimumConnection.js +0 -30
- package/jobs/load-balancer/algorithm/weightsPolling.d.ts +0 -2
- package/jobs/load-balancer/algorithm/weightsPolling.js +0 -23
- package/jobs/load-balancer/algorithm/weightsRandom.d.ts +0 -2
- package/jobs/load-balancer/algorithm/weightsRandom.js +0 -17
- package/jobs/load-balancer/consts.d.ts +0 -8
- package/jobs/load-balancer/consts.js +0 -10
- package/jobs/load-balancer/index.d.ts +0 -96
- package/jobs/load-balancer/index.js +0 -202
- package/jobs/load-balancer/scheduler.d.ts +0 -16
- package/jobs/load-balancer/scheduler.js +0 -32
- package/loader/index.d.ts +0 -9
- package/loader/index.js +0 -99
- package/log/index.d.ts +0 -5
- package/log/index.js +0 -86
- package/log/logger.d.ts +0 -2
- package/log/logger.js +0 -95
- package/message/childMessage.d.ts +0 -10
- package/message/childMessage.js +0 -43
- package/message/index.d.ts +0 -3
- package/message/index.js +0 -10
- package/ps/index.js +0 -295
- package/socket/httpServer.d.ts +0 -8
- package/socket/httpServer.js +0 -199
- package/socket/index.d.ts +0 -10
- package/socket/index.js +0 -65
- package/socket/ipcServer.d.ts +0 -9
- package/socket/ipcServer.js +0 -106
- package/socket/socketServer.d.ts +0 -10
- package/socket/socketServer.js +0 -82
- package/storage/index.d.ts +0 -5
- package/storage/index.js +0 -7
- package/storage/sqliteStorage.d.ts +0 -16
- package/storage/sqliteStorage.js +0 -124
- package/tsconfig.json +0 -14
- package/utils/extend.d.ts +0 -2
- package/utils/extend.js +0 -78
- package/utils/helper.d.ts +0 -14
- package/utils/helper.js +0 -207
- package/utils/index.d.ts +0 -10
- package/utils/index.js +0 -167
- package/utils/ip.d.ts +0 -2
- package/utils/ip.js +0 -221
- package/utils/is.js +0 -112
- package/utils/json.d.ts +0 -5
- package/utils/json.js +0 -80
- package/utils/pargv.d.ts +0 -3
- package/utils/pargv.js +0 -267
- package/utils/port/index.d.ts +0 -1
- package/utils/port/index.js +0 -126
- package/utils/wrap.d.ts +0 -4
- 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 @@
|
|
|
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
|