ee-core 4.1.5 → 5.0.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/app/application.d.ts +41 -0
- package/dist/cjs/app/application.d.ts.map +1 -0
- package/dist/cjs/app/application.js +68 -0
- package/dist/cjs/app/application.js.map +1 -0
- package/dist/cjs/app/boot.d.ts +64 -0
- package/dist/cjs/app/boot.d.ts.map +1 -0
- package/dist/cjs/app/boot.js +138 -0
- package/dist/cjs/app/boot.js.map +1 -0
- package/dist/cjs/app/dir.d.ts +12 -0
- package/dist/cjs/app/dir.d.ts.map +1 -0
- package/dist/cjs/app/dir.js +88 -0
- package/dist/cjs/app/dir.js.map +1 -0
- package/dist/cjs/app/events.d.ts +71 -0
- package/dist/cjs/app/events.d.ts.map +1 -0
- package/dist/cjs/app/events.js +124 -0
- package/dist/cjs/app/events.js.map +1 -0
- package/dist/cjs/config/config_loader.d.ts +54 -0
- package/dist/cjs/config/config_loader.d.ts.map +1 -0
- package/dist/cjs/config/config_loader.js +137 -0
- package/dist/cjs/config/config_loader.js.map +1 -0
- package/dist/cjs/config/default_config.d.ts +8 -0
- package/dist/cjs/config/default_config.d.ts.map +1 -0
- package/dist/cjs/config/default_config.js +196 -0
- package/dist/cjs/config/default_config.js.map +1 -0
- package/dist/cjs/config/index.d.ts +34 -0
- package/dist/cjs/config/index.d.ts.map +1 -0
- package/dist/cjs/config/index.js +69 -0
- package/dist/cjs/config/index.js.map +1 -0
- package/dist/cjs/const/channel.d.ts +34 -0
- package/dist/cjs/const/channel.d.ts.map +1 -0
- package/dist/cjs/const/channel.js +37 -0
- package/dist/cjs/const/channel.js.map +1 -0
- package/dist/cjs/controller/controller_loader.d.ts +29 -0
- package/dist/cjs/controller/controller_loader.d.ts.map +1 -0
- package/dist/cjs/controller/controller_loader.js +158 -0
- package/dist/cjs/controller/controller_loader.js.map +1 -0
- package/dist/cjs/controller/index.d.ts +36 -0
- package/dist/cjs/controller/index.d.ts.map +1 -0
- package/dist/cjs/controller/index.js +88 -0
- package/dist/cjs/controller/index.js.map +1 -0
- package/dist/cjs/core/loader/file_loader.d.ts +112 -0
- package/dist/cjs/core/loader/file_loader.d.ts.map +1 -0
- package/dist/cjs/core/loader/file_loader.js +283 -0
- package/dist/cjs/core/loader/file_loader.js.map +1 -0
- package/dist/cjs/core/utils/index.d.ts +70 -0
- package/dist/cjs/core/utils/index.d.ts.map +1 -0
- package/dist/cjs/core/utils/index.js +181 -0
- package/dist/cjs/core/utils/index.js.map +1 -0
- package/dist/cjs/core/utils/timing.d.ts +65 -0
- package/dist/cjs/core/utils/timing.d.ts.map +1 -0
- package/dist/cjs/core/utils/timing.js +107 -0
- package/dist/cjs/core/utils/timing.js.map +1 -0
- package/dist/cjs/cross/cross.d.ts +104 -0
- package/dist/cjs/cross/cross.d.ts.map +1 -0
- package/dist/cjs/cross/cross.js +202 -0
- package/dist/cjs/cross/cross.js.map +1 -0
- package/dist/cjs/cross/crossProcess.d.ts +118 -0
- package/dist/cjs/cross/crossProcess.d.ts.map +1 -0
- package/dist/cjs/cross/crossProcess.js +262 -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/dist/cjs/electron/app/index.d.ts +23 -0
- package/dist/cjs/electron/app/index.d.ts.map +1 -0
- package/dist/cjs/electron/app/index.js +99 -0
- package/dist/cjs/electron/app/index.js.map +1 -0
- package/dist/cjs/electron/index.d.ts +10 -0
- package/dist/cjs/electron/index.d.ts.map +1 -0
- package/dist/cjs/electron/index.js +35 -0
- package/dist/cjs/electron/index.js.map +1 -0
- package/dist/cjs/electron/window/index.d.ts +45 -0
- package/dist/cjs/electron/window/index.d.ts.map +1 -0
- package/dist/cjs/electron/window/index.js +311 -0
- package/dist/cjs/electron/window/index.js.map +1 -0
- package/dist/cjs/exception/index.d.ts +15 -0
- package/dist/cjs/exception/index.d.ts.map +1 -0
- package/dist/cjs/exception/index.js +145 -0
- package/dist/cjs/exception/index.js.map +1 -0
- package/dist/cjs/html/index.d.ts +21 -0
- package/dist/cjs/html/index.d.ts.map +1 -0
- package/dist/cjs/html/index.js +59 -0
- package/dist/cjs/html/index.js.map +1 -0
- package/dist/cjs/index.d.ts +60 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +245 -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 +132 -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 +102 -0
- package/dist/cjs/jobs/child/jobProcess.d.ts.map +1 -0
- package/dist/cjs/jobs/child/jobProcess.js +196 -0
- package/dist/cjs/jobs/child/jobProcess.js.map +1 -0
- package/dist/cjs/jobs/child-pool/index.d.ts +126 -0
- package/dist/cjs/jobs/child-pool/index.d.ts.map +1 -0
- package/dist/cjs/jobs/child-pool/index.js +252 -0
- package/dist/cjs/jobs/child-pool/index.js.map +1 -0
- package/dist/cjs/jobs/index.d.ts +18 -0
- package/dist/cjs/jobs/index.d.ts.map +1 -0
- package/dist/cjs/jobs/index.js +22 -0
- package/dist/cjs/jobs/index.js.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts +7 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/algorithm/index.js +32 -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 +26 -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 +32 -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 +35 -0
- package/dist/cjs/jobs/load-balancer/consts.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/consts.js +36 -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 +43 -0
- package/dist/cjs/jobs/load-balancer/types.d.ts.map +1 -0
- package/dist/cjs/jobs/load-balancer/types.js +7 -0
- package/dist/cjs/jobs/load-balancer/types.js.map +1 -0
- package/dist/cjs/jobs/registry.d.ts +24 -0
- package/dist/cjs/jobs/registry.d.ts.map +1 -0
- package/dist/cjs/jobs/registry.js +52 -0
- package/dist/cjs/jobs/registry.js.map +1 -0
- package/dist/cjs/loader/index.d.ts +58 -0
- package/dist/cjs/loader/index.d.ts.map +1 -0
- package/dist/cjs/loader/index.js +151 -0
- package/dist/cjs/loader/index.js.map +1 -0
- package/dist/cjs/log/index.d.ts +59 -0
- package/dist/cjs/log/index.d.ts.map +1 -0
- package/dist/cjs/log/index.js +123 -0
- package/dist/cjs/log/index.js.map +1 -0
- package/dist/cjs/log/logger.d.ts +35 -0
- package/dist/cjs/log/logger.d.ts.map +1 -0
- package/dist/cjs/log/logger.js +246 -0
- package/dist/cjs/log/logger.js.map +1 -0
- package/dist/cjs/message/childMessage.d.ts +58 -0
- package/dist/cjs/message/childMessage.d.ts.map +1 -0
- package/dist/cjs/message/childMessage.js +118 -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/dist/cjs/ps/index.d.ts +155 -0
- package/dist/cjs/ps/index.d.ts.map +1 -0
- package/dist/cjs/ps/index.js +369 -0
- package/dist/cjs/ps/index.js.map +1 -0
- package/dist/cjs/socket/httpServer.d.ts +74 -0
- package/dist/cjs/socket/httpServer.d.ts.map +1 -0
- package/dist/cjs/socket/httpServer.js +240 -0
- package/dist/cjs/socket/httpServer.js.map +1 -0
- package/dist/cjs/socket/index.d.ts +60 -0
- package/dist/cjs/socket/index.d.ts.map +1 -0
- package/dist/cjs/socket/index.js +103 -0
- package/dist/cjs/socket/index.js.map +1 -0
- package/dist/cjs/socket/ipcServer.d.ts +40 -0
- package/dist/cjs/socket/ipcServer.d.ts.map +1 -0
- package/dist/cjs/socket/ipcServer.js +124 -0
- package/dist/cjs/socket/ipcServer.js.map +1 -0
- package/dist/cjs/socket/socketServer.d.ts +43 -0
- package/dist/cjs/socket/socketServer.d.ts.map +1 -0
- package/dist/cjs/socket/socketServer.js +116 -0
- package/dist/cjs/socket/socketServer.js.map +1 -0
- package/dist/cjs/socket/utils.d.ts +13 -0
- package/dist/cjs/socket/utils.d.ts.map +1 -0
- package/dist/cjs/socket/utils.js +41 -0
- package/dist/cjs/socket/utils.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 +117 -0
- package/dist/cjs/storage/sqliteStorage.d.ts.map +1 -0
- package/dist/cjs/storage/sqliteStorage.js +197 -0
- package/dist/cjs/storage/sqliteStorage.js.map +1 -0
- package/dist/cjs/types/index.d.ts +524 -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 +46 -0
- package/dist/cjs/utils/extend.d.ts.map +1 -0
- package/dist/cjs/utils/extend.js +105 -0
- package/dist/cjs/utils/extend.js.map +1 -0
- package/dist/cjs/utils/helper.d.ts +169 -0
- package/dist/cjs/utils/helper.d.ts.map +1 -0
- package/dist/cjs/utils/helper.js +351 -0
- package/dist/cjs/utils/helper.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +113 -0
- package/dist/cjs/utils/index.d.ts.map +1 -0
- package/dist/cjs/utils/index.js +344 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/ip.d.ts +42 -0
- package/dist/cjs/utils/ip.d.ts.map +1 -0
- package/dist/cjs/utils/ip.js +276 -0
- package/dist/cjs/utils/ip.js.map +1 -0
- package/dist/cjs/utils/is.d.ts +138 -0
- package/dist/cjs/utils/is.d.ts.map +1 -0
- package/dist/cjs/utils/is.js +203 -0
- package/dist/cjs/utils/is.js.map +1 -0
- package/dist/cjs/utils/json.d.ts +64 -0
- package/dist/cjs/utils/json.d.ts.map +1 -0
- package/dist/cjs/utils/json.js +122 -0
- package/dist/cjs/utils/json.js.map +1 -0
- package/dist/cjs/utils/pargv.d.ts +67 -0
- package/dist/cjs/utils/pargv.d.ts.map +1 -0
- package/dist/cjs/utils/pargv.js +406 -0
- package/dist/cjs/utils/pargv.js.map +1 -0
- package/dist/cjs/utils/port/index.d.ts +48 -0
- package/dist/cjs/utils/port/index.d.ts.map +1 -0
- package/dist/cjs/utils/port/index.js +235 -0
- package/dist/cjs/utils/port/index.js.map +1 -0
- package/dist/cjs/utils/type_check.d.ts +88 -0
- package/dist/cjs/utils/type_check.d.ts.map +1 -0
- package/dist/cjs/utils/type_check.js +121 -0
- package/dist/cjs/utils/type_check.js.map +1 -0
- package/dist/cjs/utils/wrap.d.ts +31 -0
- package/dist/cjs/utils/wrap.d.ts.map +1 -0
- package/dist/cjs/utils/wrap.js +88 -0
- package/dist/cjs/utils/wrap.js.map +1 -0
- package/dist/esm/app/application.d.ts +41 -0
- package/dist/esm/app/application.d.ts.map +1 -0
- package/dist/esm/app/application.js +68 -0
- package/dist/esm/app/application.js.map +1 -0
- package/dist/esm/app/boot.d.ts +64 -0
- package/dist/esm/app/boot.d.ts.map +1 -0
- package/dist/esm/app/boot.js +138 -0
- package/dist/esm/app/boot.js.map +1 -0
- package/dist/esm/app/dir.d.ts +12 -0
- package/dist/esm/app/dir.d.ts.map +1 -0
- package/dist/esm/app/dir.js +88 -0
- package/dist/esm/app/dir.js.map +1 -0
- package/dist/esm/app/events.d.ts +71 -0
- package/dist/esm/app/events.d.ts.map +1 -0
- package/dist/esm/app/events.js +124 -0
- package/dist/esm/app/events.js.map +1 -0
- package/dist/esm/config/config_loader.d.ts +54 -0
- package/dist/esm/config/config_loader.d.ts.map +1 -0
- package/dist/esm/config/config_loader.js +137 -0
- package/dist/esm/config/config_loader.js.map +1 -0
- package/dist/esm/config/default_config.d.ts +8 -0
- package/dist/esm/config/default_config.d.ts.map +1 -0
- package/dist/esm/config/default_config.js +196 -0
- package/dist/esm/config/default_config.js.map +1 -0
- package/dist/esm/config/index.d.ts +34 -0
- package/dist/esm/config/index.d.ts.map +1 -0
- package/dist/esm/config/index.js +69 -0
- package/dist/esm/config/index.js.map +1 -0
- package/dist/esm/const/channel.d.ts +34 -0
- package/dist/esm/const/channel.d.ts.map +1 -0
- package/dist/esm/const/channel.js +37 -0
- package/dist/esm/const/channel.js.map +1 -0
- package/dist/esm/controller/controller_loader.d.ts +29 -0
- package/dist/esm/controller/controller_loader.d.ts.map +1 -0
- package/dist/esm/controller/controller_loader.js +158 -0
- package/dist/esm/controller/controller_loader.js.map +1 -0
- package/dist/esm/controller/index.d.ts +36 -0
- package/dist/esm/controller/index.d.ts.map +1 -0
- package/dist/esm/controller/index.js +88 -0
- package/dist/esm/controller/index.js.map +1 -0
- package/dist/esm/core/loader/file_loader.d.ts +112 -0
- package/dist/esm/core/loader/file_loader.d.ts.map +1 -0
- package/dist/esm/core/loader/file_loader.js +283 -0
- package/dist/esm/core/loader/file_loader.js.map +1 -0
- package/dist/esm/core/utils/index.d.ts +70 -0
- package/dist/esm/core/utils/index.d.ts.map +1 -0
- package/dist/esm/core/utils/index.js +148 -0
- package/dist/esm/core/utils/index.js.map +1 -0
- package/dist/esm/core/utils/timing.d.ts +65 -0
- package/dist/esm/core/utils/timing.d.ts.map +1 -0
- package/dist/esm/core/utils/timing.js +107 -0
- package/dist/esm/core/utils/timing.js.map +1 -0
- package/dist/esm/cross/cross.d.ts +104 -0
- package/dist/esm/cross/cross.d.ts.map +1 -0
- package/dist/esm/cross/cross.js +202 -0
- package/dist/esm/cross/cross.js.map +1 -0
- package/dist/esm/cross/crossProcess.d.ts +118 -0
- package/dist/esm/cross/crossProcess.d.ts.map +1 -0
- package/dist/esm/cross/crossProcess.js +262 -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 +23 -0
- package/dist/esm/electron/app/index.d.ts.map +1 -0
- package/dist/esm/electron/app/index.js +99 -0
- package/dist/esm/electron/app/index.js.map +1 -0
- package/dist/esm/electron/index.d.ts +10 -0
- package/dist/esm/electron/index.d.ts.map +1 -0
- package/dist/esm/electron/index.js +35 -0
- package/dist/esm/electron/index.js.map +1 -0
- package/dist/esm/electron/window/index.d.ts +45 -0
- package/dist/esm/electron/window/index.d.ts.map +1 -0
- package/dist/esm/electron/window/index.js +311 -0
- package/dist/esm/electron/window/index.js.map +1 -0
- package/dist/esm/exception/index.d.ts +15 -0
- package/dist/esm/exception/index.d.ts.map +1 -0
- package/dist/esm/exception/index.js +145 -0
- package/dist/esm/exception/index.js.map +1 -0
- package/dist/esm/html/index.d.ts +21 -0
- package/dist/esm/html/index.d.ts.map +1 -0
- package/dist/esm/html/index.js +59 -0
- package/dist/esm/html/index.js.map +1 -0
- package/dist/esm/index.d.ts +60 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +245 -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 +132 -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 +102 -0
- package/dist/esm/jobs/child/jobProcess.d.ts.map +1 -0
- package/dist/esm/jobs/child/jobProcess.js +196 -0
- package/dist/esm/jobs/child/jobProcess.js.map +1 -0
- package/dist/esm/jobs/child-pool/index.d.ts +126 -0
- package/dist/esm/jobs/child-pool/index.d.ts.map +1 -0
- package/dist/esm/jobs/child-pool/index.js +252 -0
- package/dist/esm/jobs/child-pool/index.js.map +1 -0
- package/dist/esm/jobs/index.d.ts +18 -0
- package/dist/esm/jobs/index.d.ts.map +1 -0
- package/dist/esm/jobs/index.js +22 -0
- package/dist/esm/jobs/index.js.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.d.ts +7 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/algorithm/index.js +32 -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 +26 -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 +32 -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 +35 -0
- package/dist/esm/jobs/load-balancer/consts.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/consts.js +36 -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 +43 -0
- package/dist/esm/jobs/load-balancer/types.d.ts.map +1 -0
- package/dist/esm/jobs/load-balancer/types.js +7 -0
- package/dist/esm/jobs/load-balancer/types.js.map +1 -0
- package/dist/esm/jobs/registry.d.ts +24 -0
- package/dist/esm/jobs/registry.d.ts.map +1 -0
- package/dist/esm/jobs/registry.js +52 -0
- package/dist/esm/jobs/registry.js.map +1 -0
- package/dist/esm/loader/index.d.ts +58 -0
- package/dist/esm/loader/index.d.ts.map +1 -0
- package/dist/esm/loader/index.js +151 -0
- package/dist/esm/loader/index.js.map +1 -0
- package/dist/esm/log/index.d.ts +59 -0
- package/dist/esm/log/index.d.ts.map +1 -0
- package/dist/esm/log/index.js +123 -0
- package/dist/esm/log/index.js.map +1 -0
- package/dist/esm/log/logger.d.ts +35 -0
- package/dist/esm/log/logger.d.ts.map +1 -0
- package/dist/esm/log/logger.js +246 -0
- package/dist/esm/log/logger.js.map +1 -0
- package/dist/esm/message/childMessage.d.ts +58 -0
- package/dist/esm/message/childMessage.d.ts.map +1 -0
- package/dist/esm/message/childMessage.js +118 -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 +155 -0
- package/dist/esm/ps/index.d.ts.map +1 -0
- package/dist/esm/ps/index.js +369 -0
- package/dist/esm/ps/index.js.map +1 -0
- package/dist/esm/socket/httpServer.d.ts +74 -0
- package/dist/esm/socket/httpServer.d.ts.map +1 -0
- package/dist/esm/socket/httpServer.js +240 -0
- package/dist/esm/socket/httpServer.js.map +1 -0
- package/dist/esm/socket/index.d.ts +60 -0
- package/dist/esm/socket/index.d.ts.map +1 -0
- package/dist/esm/socket/index.js +103 -0
- package/dist/esm/socket/index.js.map +1 -0
- package/dist/esm/socket/ipcServer.d.ts +40 -0
- package/dist/esm/socket/ipcServer.d.ts.map +1 -0
- package/dist/esm/socket/ipcServer.js +124 -0
- package/dist/esm/socket/ipcServer.js.map +1 -0
- package/dist/esm/socket/socketServer.d.ts +43 -0
- package/dist/esm/socket/socketServer.d.ts.map +1 -0
- package/dist/esm/socket/socketServer.js +116 -0
- package/dist/esm/socket/socketServer.js.map +1 -0
- package/dist/esm/socket/utils.d.ts +13 -0
- package/dist/esm/socket/utils.d.ts.map +1 -0
- package/dist/esm/socket/utils.js +41 -0
- package/dist/esm/socket/utils.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 +117 -0
- package/dist/esm/storage/sqliteStorage.d.ts.map +1 -0
- package/dist/esm/storage/sqliteStorage.js +197 -0
- package/dist/esm/storage/sqliteStorage.js.map +1 -0
- package/dist/esm/types/index.d.ts +524 -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 +46 -0
- package/dist/esm/utils/extend.d.ts.map +1 -0
- package/dist/esm/utils/extend.js +105 -0
- package/dist/esm/utils/extend.js.map +1 -0
- package/dist/esm/utils/helper.d.ts +169 -0
- package/dist/esm/utils/helper.d.ts.map +1 -0
- package/dist/esm/utils/helper.js +351 -0
- package/dist/esm/utils/helper.js.map +1 -0
- package/dist/esm/utils/index.d.ts +113 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +344 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/ip.d.ts +42 -0
- package/dist/esm/utils/ip.d.ts.map +1 -0
- package/dist/esm/utils/ip.js +276 -0
- package/dist/esm/utils/ip.js.map +1 -0
- package/dist/esm/utils/is.d.ts +138 -0
- package/dist/esm/utils/is.d.ts.map +1 -0
- package/dist/esm/utils/is.js +203 -0
- package/dist/esm/utils/is.js.map +1 -0
- package/dist/esm/utils/json.d.ts +64 -0
- package/dist/esm/utils/json.d.ts.map +1 -0
- package/dist/esm/utils/json.js +122 -0
- package/dist/esm/utils/json.js.map +1 -0
- package/dist/esm/utils/pargv.d.ts +67 -0
- package/dist/esm/utils/pargv.d.ts.map +1 -0
- package/dist/esm/utils/pargv.js +406 -0
- package/dist/esm/utils/pargv.js.map +1 -0
- package/dist/esm/utils/port/index.d.ts +48 -0
- package/dist/esm/utils/port/index.d.ts.map +1 -0
- package/dist/esm/utils/port/index.js +235 -0
- package/dist/esm/utils/port/index.js.map +1 -0
- package/dist/esm/utils/type_check.d.ts +88 -0
- package/dist/esm/utils/type_check.d.ts.map +1 -0
- package/dist/esm/utils/type_check.js +121 -0
- package/dist/esm/utils/type_check.js.map +1 -0
- package/dist/esm/utils/wrap.d.ts +31 -0
- package/dist/esm/utils/wrap.d.ts.map +1 -0
- package/dist/esm/utils/wrap.js +88 -0
- package/dist/esm/utils/wrap.js.map +1 -0
- package/package.json +424 -27
- 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.d.ts +0 -1
- 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.d.ts +0 -66
- 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 -153
- 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.d.ts +0 -5
- 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.d.ts +0 -1
- 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.d.ts +0 -39
- 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 -11
- package/utils/index.js +0 -198
- package/utils/ip.d.ts +0 -2
- package/utils/ip.js +0 -221
- package/utils/is.d.ts +0 -14
- 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,276 @@
|
|
|
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.publicIpv4 = publicIpv4;
|
|
7
|
+
exports.publicIpv6 = publicIpv6;
|
|
8
|
+
/**
|
|
9
|
+
* @module utils/ip
|
|
10
|
+
* @description Public IP address query utility. Obtains the machine's public IPv4/IPv6 address
|
|
11
|
+
* via DNS resolution or HTTPS requests.
|
|
12
|
+
*
|
|
13
|
+
* Supports three query methods:
|
|
14
|
+
* - DNS query: resolves via OpenDNS special domain myip.opendns.com
|
|
15
|
+
* - HTTPS query: obtains via third-party IP query services (icanhazip, ipify)
|
|
16
|
+
* - Combined query (all): tries DNS first, falls back to HTTPS on failure
|
|
17
|
+
*
|
|
18
|
+
* All query methods return Promises with an attached cancel() method, allowing cancellation at any time.
|
|
19
|
+
*/
|
|
20
|
+
const dgram_1 = __importDefault(require("dgram"));
|
|
21
|
+
const net_1 = require("net");
|
|
22
|
+
const dns_socket_1 = __importDefault(require("dns-socket"));
|
|
23
|
+
const urllib_1 = require("urllib");
|
|
24
|
+
/** Empty string constant, indicates query failure with no result */
|
|
25
|
+
const emptyIP = '';
|
|
26
|
+
/** Default query options */
|
|
27
|
+
const defaults = {
|
|
28
|
+
/** Query timeout (ms) */
|
|
29
|
+
timeout: 3000,
|
|
30
|
+
/** Query method: 'http' uses HTTPS interface, 'dns' uses DNS resolution, 'all' tries DNS then HTTPS */
|
|
31
|
+
type: 'http',
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Pre-configured DNS server list
|
|
35
|
+
*
|
|
36
|
+
* Uses OpenDNS public DNS servers, obtains the machine's public IP by querying
|
|
37
|
+
* the A/AAAA records of myip.opendns.com. OpenDNS returns the querier's IP
|
|
38
|
+
* address as the response.
|
|
39
|
+
*/
|
|
40
|
+
const dnsServers = [
|
|
41
|
+
{
|
|
42
|
+
v4: {
|
|
43
|
+
servers: [
|
|
44
|
+
'208.67.222.222',
|
|
45
|
+
'208.67.220.220',
|
|
46
|
+
'208.67.222.220',
|
|
47
|
+
'208.67.220.222',
|
|
48
|
+
],
|
|
49
|
+
name: 'myip.opendns.com',
|
|
50
|
+
type: 'A',
|
|
51
|
+
},
|
|
52
|
+
v6: {
|
|
53
|
+
servers: [
|
|
54
|
+
'2620:0:ccc::2',
|
|
55
|
+
'2620:0:ccd::2',
|
|
56
|
+
],
|
|
57
|
+
name: 'myip.opendns.com',
|
|
58
|
+
type: 'AAAA',
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
];
|
|
62
|
+
/**
|
|
63
|
+
* Query configuration organized by protocol version
|
|
64
|
+
*
|
|
65
|
+
* IPv4 and IPv6 each use different DNS record types (A/AAAA)
|
|
66
|
+
* and different HTTPS query endpoints.
|
|
67
|
+
*/
|
|
68
|
+
const ipType = {
|
|
69
|
+
v4: {
|
|
70
|
+
dnsServers: dnsServers.map(({ v4: { servers, ...question } }) => ({
|
|
71
|
+
servers,
|
|
72
|
+
question,
|
|
73
|
+
})),
|
|
74
|
+
httpsUrls: [
|
|
75
|
+
'https://icanhazip.com/',
|
|
76
|
+
'https://api.ipify.org/',
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
v6: {
|
|
80
|
+
dnsServers: dnsServers.map(({ v6: { servers, ...question } }) => ({
|
|
81
|
+
servers,
|
|
82
|
+
question,
|
|
83
|
+
})),
|
|
84
|
+
httpsUrls: [
|
|
85
|
+
'https://icanhazip.com/',
|
|
86
|
+
'https://api6.ipify.org/',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Query public IP via DNS
|
|
92
|
+
*
|
|
93
|
+
* Sends a special domain query to OpenDNS servers; OpenDNS returns the querier's
|
|
94
|
+
* IP address as the DNS response. Tries servers in the list sequentially until success.
|
|
95
|
+
*
|
|
96
|
+
* @param version - IP version, 'v4' or 'v6'
|
|
97
|
+
* @param options - Query options
|
|
98
|
+
* @returns Promise of IP address string, with cancel() method to cancel the query
|
|
99
|
+
*/
|
|
100
|
+
function queryDns(version, options) {
|
|
101
|
+
const data = ipType[version];
|
|
102
|
+
const socket = (0, dns_socket_1.default)({
|
|
103
|
+
retries: 0,
|
|
104
|
+
maxQueries: 1,
|
|
105
|
+
// IPv6 uses udp6 Socket, IPv4 uses udp4 Socket
|
|
106
|
+
socket: dgram_1.default.createSocket(version === 'v6' ? 'udp6' : 'udp4'),
|
|
107
|
+
timeout: options.timeout,
|
|
108
|
+
});
|
|
109
|
+
const promise = (async () => {
|
|
110
|
+
for (const dnsServerInfo of data.dnsServers) {
|
|
111
|
+
const { servers, question } = dnsServerInfo;
|
|
112
|
+
for (const server of servers) {
|
|
113
|
+
// If socket has been cancelled, return empty immediately
|
|
114
|
+
if (socket.destroyed) {
|
|
115
|
+
return emptyIP;
|
|
116
|
+
}
|
|
117
|
+
try {
|
|
118
|
+
const { name, type } = question;
|
|
119
|
+
const dnsResponse = await socket.query({ questions: [{ name, type }] }, 53, server);
|
|
120
|
+
const answer = dnsResponse.answers[0];
|
|
121
|
+
if (!answer)
|
|
122
|
+
continue;
|
|
123
|
+
const response = (typeof answer.data === 'string' ? answer.data : answer.data.toString()).trim();
|
|
124
|
+
const ip = response;
|
|
125
|
+
// Validate the returned IP format
|
|
126
|
+
const method = version === 'v6' ? net_1.isIPv6 : net_1.isIPv4;
|
|
127
|
+
if (ip && method(ip)) {
|
|
128
|
+
socket.destroy();
|
|
129
|
+
return ip;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
// Single server query failure does not affect subsequent attempts
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
socket.destroy();
|
|
138
|
+
return emptyIP;
|
|
139
|
+
})();
|
|
140
|
+
// Provide cancel method, allowing external cancellation of ongoing DNS queries
|
|
141
|
+
promise.cancel = () => {
|
|
142
|
+
socket.destroy();
|
|
143
|
+
};
|
|
144
|
+
return promise;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Query public IP via HTTPS interface
|
|
148
|
+
*
|
|
149
|
+
* Sends HTTP GET requests to third-party IP query services; the response body is the public IP address.
|
|
150
|
+
* Tries URLs in the list sequentially until success.
|
|
151
|
+
*
|
|
152
|
+
* @param version - IP version, 'v4' or 'v6'
|
|
153
|
+
* @param options - Query options
|
|
154
|
+
* @returns Promise of IP address string, with cancel() method
|
|
155
|
+
*/
|
|
156
|
+
function queryHttps(version, options) {
|
|
157
|
+
let cancelFn;
|
|
158
|
+
const promise = (async () => {
|
|
159
|
+
const requestOptions = {
|
|
160
|
+
method: 'GET',
|
|
161
|
+
timeout: options.timeout,
|
|
162
|
+
dataType: 'text',
|
|
163
|
+
};
|
|
164
|
+
// Combine default URLs with user-provided fallback URLs
|
|
165
|
+
const urls = [
|
|
166
|
+
...ipType[version].httpsUrls,
|
|
167
|
+
...(options.fallbackUrls ?? []),
|
|
168
|
+
];
|
|
169
|
+
for (const url of urls) {
|
|
170
|
+
try {
|
|
171
|
+
const response = await (0, urllib_1.request)(url, requestOptions);
|
|
172
|
+
const result = response.res.status === 200 ? response.data.toString() : '';
|
|
173
|
+
const ip = result.trim();
|
|
174
|
+
// Validate the returned IP format
|
|
175
|
+
const method = version === 'v6' ? net_1.isIPv6 : net_1.isIPv4;
|
|
176
|
+
if (ip && method(ip)) {
|
|
177
|
+
return ip;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
catch {
|
|
181
|
+
// Single URL request failure does not affect subsequent attempts
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return emptyIP;
|
|
185
|
+
})();
|
|
186
|
+
promise.cancel = function () {
|
|
187
|
+
return cancelFn?.apply(this);
|
|
188
|
+
};
|
|
189
|
+
return promise;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Combined query for public IP (DNS first, then HTTPS)
|
|
193
|
+
*
|
|
194
|
+
* Tries DNS query first; when DNS fails, automatically falls back to HTTPS query,
|
|
195
|
+
* ensuring the public IP can still be obtained in restricted network environments.
|
|
196
|
+
*
|
|
197
|
+
* @param version - IP version, 'v4' or 'v6'
|
|
198
|
+
* @param options - Query options
|
|
199
|
+
* @returns Promise of IP address string, with cancel() method
|
|
200
|
+
*/
|
|
201
|
+
function queryAll(version, options) {
|
|
202
|
+
let cancelFn;
|
|
203
|
+
const promise = (async () => {
|
|
204
|
+
let response;
|
|
205
|
+
// Try DNS query first
|
|
206
|
+
const dnsPromise = queryDns(version, options);
|
|
207
|
+
cancelFn = dnsPromise.cancel ?? (() => { });
|
|
208
|
+
try {
|
|
209
|
+
response = await dnsPromise;
|
|
210
|
+
}
|
|
211
|
+
catch {
|
|
212
|
+
// DNS query failed, fall back to HTTPS
|
|
213
|
+
const httpsPromise = queryHttps(version, options);
|
|
214
|
+
cancelFn = httpsPromise.cancel ?? (() => { });
|
|
215
|
+
response = await httpsPromise;
|
|
216
|
+
}
|
|
217
|
+
return response;
|
|
218
|
+
})();
|
|
219
|
+
promise.cancel = () => {
|
|
220
|
+
cancelFn?.();
|
|
221
|
+
};
|
|
222
|
+
return promise;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Query public IPv4 address
|
|
226
|
+
*
|
|
227
|
+
* @param options - Query options (type, timeout, fallbackUrls)
|
|
228
|
+
* @returns Promise of IPv4 address string, with cancel() method to cancel the query
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```ts
|
|
232
|
+
* const p = publicIpv4({ type: 'http', timeout: 5000 });
|
|
233
|
+
* const ip = await p;
|
|
234
|
+
* // Or cancel the query
|
|
235
|
+
* p.cancel();
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
238
|
+
function publicIpv4(options) {
|
|
239
|
+
const merged = {
|
|
240
|
+
...defaults,
|
|
241
|
+
...options,
|
|
242
|
+
};
|
|
243
|
+
if (merged.type === 'http') {
|
|
244
|
+
return queryHttps('v4', merged);
|
|
245
|
+
}
|
|
246
|
+
if (merged.type === 'dns') {
|
|
247
|
+
return queryDns('v4', merged);
|
|
248
|
+
}
|
|
249
|
+
// type === 'all': DNS first, then HTTPS
|
|
250
|
+
return queryAll('v4', merged);
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Query public IPv6 address
|
|
254
|
+
*
|
|
255
|
+
* @param options - Query options (type, timeout, fallbackUrls)
|
|
256
|
+
* @returns Promise of IPv6 address string, with cancel() method to cancel the query
|
|
257
|
+
*
|
|
258
|
+
* @example
|
|
259
|
+
* ```ts
|
|
260
|
+
* const ip = await publicIpv6({ type: 'dns' });
|
|
261
|
+
* ```
|
|
262
|
+
*/
|
|
263
|
+
function publicIpv6(options) {
|
|
264
|
+
const merged = {
|
|
265
|
+
...defaults,
|
|
266
|
+
...options,
|
|
267
|
+
};
|
|
268
|
+
if (merged.type === 'http') {
|
|
269
|
+
return queryHttps('v6', merged);
|
|
270
|
+
}
|
|
271
|
+
if (merged.type === 'dns') {
|
|
272
|
+
return queryDns('v6', merged);
|
|
273
|
+
}
|
|
274
|
+
return queryAll('v6', merged);
|
|
275
|
+
}
|
|
276
|
+
//# sourceMappingURL=ip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ip.js","sourceRoot":"","sources":["../../../src/utils/ip.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module utils/is
|
|
3
|
+
* @description Electron runtime environment detection utility. Provides a set of functions
|
|
4
|
+
* for determining the current process type, operating system platform, and processor
|
|
5
|
+
* architecture, enabling framework code to execute different logic for different environments.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { main, osx, all } from './is.js';
|
|
10
|
+
* if (all(main, osx)) { /* main process + macOS *\/ }
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Detect whether currently running in the renderer process
|
|
15
|
+
*
|
|
16
|
+
* Electron process.type values:
|
|
17
|
+
* - 'renderer': renderer process
|
|
18
|
+
* - 'browser': main process
|
|
19
|
+
* - 'worker': Worker process
|
|
20
|
+
*
|
|
21
|
+
* @returns true if currently in the renderer process
|
|
22
|
+
*/
|
|
23
|
+
export declare function renderer(): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Detect whether currently running in the main process
|
|
26
|
+
*
|
|
27
|
+
* The main process's process.type is 'browser' in Electron.
|
|
28
|
+
*
|
|
29
|
+
* @returns true if currently in the main process
|
|
30
|
+
*/
|
|
31
|
+
export declare function main(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Detect whether the current operating system is macOS
|
|
34
|
+
*
|
|
35
|
+
* Based on process.platform === 'darwin'.
|
|
36
|
+
* macOS, iOS, and other Apple systems all have platform 'darwin'.
|
|
37
|
+
*
|
|
38
|
+
* @returns true if currently running on macOS
|
|
39
|
+
*/
|
|
40
|
+
export declare function osx(): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Detect whether the current operating system is macOS (alias for osx)
|
|
43
|
+
*
|
|
44
|
+
* @returns true if currently running on macOS
|
|
45
|
+
*/
|
|
46
|
+
export declare function macOS(): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Detect whether the current operating system is Windows
|
|
49
|
+
*
|
|
50
|
+
* Based on process.platform === 'win32'.
|
|
51
|
+
* Note: 64-bit Windows also has platform 'win32'.
|
|
52
|
+
*
|
|
53
|
+
* @returns true if currently running on Windows
|
|
54
|
+
*/
|
|
55
|
+
export declare function windows(): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Detect whether the current operating system is Linux
|
|
58
|
+
*
|
|
59
|
+
* @returns true if currently running on Linux
|
|
60
|
+
*/
|
|
61
|
+
export declare function linux(): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Detect whether the current operating system is OpenHarmony
|
|
64
|
+
*
|
|
65
|
+
* @returns true if currently running on OpenHarmony
|
|
66
|
+
*/
|
|
67
|
+
export declare function openharmony(): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Detect whether the processor architecture is x86 (32-bit)
|
|
70
|
+
*
|
|
71
|
+
* Based on process.arch === 'ia32'.
|
|
72
|
+
*
|
|
73
|
+
* @returns true for 32-bit x86 architecture
|
|
74
|
+
*/
|
|
75
|
+
export declare function x86(): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Detect whether the processor architecture is x64 (64-bit)
|
|
78
|
+
*
|
|
79
|
+
* Based on process.arch === 'x64'.
|
|
80
|
+
*
|
|
81
|
+
* @returns true for 64-bit x86 architecture
|
|
82
|
+
*/
|
|
83
|
+
export declare function x64(): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Detect whether the app is running in a macOS sandbox environment
|
|
86
|
+
*
|
|
87
|
+
* macOS sandbox apps contain APP_SANDBOX_CONTAINER_ID in environment variables.
|
|
88
|
+
*
|
|
89
|
+
* @returns true if running in a sandbox environment
|
|
90
|
+
*/
|
|
91
|
+
export declare function sandbox(): boolean;
|
|
92
|
+
/**
|
|
93
|
+
* Detect whether the app is a Mac App Store build
|
|
94
|
+
*
|
|
95
|
+
* Electron's process.mas property is true in MAS builds.
|
|
96
|
+
*
|
|
97
|
+
* @returns true for MAS build
|
|
98
|
+
*/
|
|
99
|
+
export declare function mas(): boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Detect whether the app is a Windows Store (appx) build
|
|
102
|
+
*
|
|
103
|
+
* Electron's process.windowsStore property is true in Windows Store builds.
|
|
104
|
+
*
|
|
105
|
+
* @returns true for Windows Store build
|
|
106
|
+
*/
|
|
107
|
+
export declare function windowsStore(): boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Determine if all condition functions are true
|
|
110
|
+
*
|
|
111
|
+
* Accepts multiple functions returning boolean values, executes each and checks the result.
|
|
112
|
+
* Returns false at the first false result; returns true only if all are true.
|
|
113
|
+
*
|
|
114
|
+
* @param isFunctions - List of condition functions
|
|
115
|
+
* @returns true if all are true, false if any is false, undefined if no arguments
|
|
116
|
+
*/
|
|
117
|
+
export declare function all(...isFunctions: Array<() => boolean>): boolean | undefined;
|
|
118
|
+
/**
|
|
119
|
+
* Determine if all condition functions are false
|
|
120
|
+
*
|
|
121
|
+
* Accepts multiple functions returning boolean values, executes each and checks the result.
|
|
122
|
+
* Returns false at the first true result; returns true only if all are false.
|
|
123
|
+
*
|
|
124
|
+
* @param isFunctions - List of condition functions
|
|
125
|
+
* @returns true if all are false, false if any is true, undefined if no arguments
|
|
126
|
+
*/
|
|
127
|
+
export declare function none(...isFunctions: Array<() => boolean>): boolean | undefined;
|
|
128
|
+
/**
|
|
129
|
+
* Determine if at least one condition function is true
|
|
130
|
+
*
|
|
131
|
+
* Accepts multiple functions returning boolean values, executes each and checks the result.
|
|
132
|
+
* Returns true at the first true result; returns false only if all are false.
|
|
133
|
+
*
|
|
134
|
+
* @param isFunctions - List of condition functions
|
|
135
|
+
* @returns true if any is true, false if all are false, undefined if no arguments
|
|
136
|
+
*/
|
|
137
|
+
export declare function one(...isFunctions: Array<() => boolean>): boolean | undefined;
|
|
138
|
+
//# sourceMappingURL=is.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is.d.ts","sourceRoot":"","sources":["../../../src/utils/is.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,IAAI,OAAO,CAE9B;AAED;;;;;;;GAOG;AACH,wBAAgB,GAAG,IAAI,OAAO,CAE7B;AAED;;;;GAIG;AACH,wBAAgB,KAAK,IAAI,OAAO,CAE/B;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,IAAI,OAAO,CAEjC;AAED;;;;GAIG;AACH,wBAAgB,KAAK,IAAI,OAAO,CAE/B;AAED;;;;GAIG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,IAAI,OAAO,CAE7B;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,IAAI,OAAO,CAE7B;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,IAAI,OAAO,CAEjC;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,IAAI,OAAO,CAE7B;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;;;;;;;GAQG;AACH,wBAAgB,GAAG,CAAC,GAAG,WAAW,EAAE,KAAK,CAAC,MAAM,OAAO,CAAC,GAAG,OAAO,GAAG,SAAS,CAM7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,IAAI,CAAC,GAAG,WAAW,EAAE,KAAK,CAAC,MAAM,OAAO,CAAC,GAAG,OAAO,GAAG,SAAS,CAM9E;AAED;;;;;;;;GAQG;AACH,wBAAgB,GAAG,CAAC,GAAG,WAAW,EAAE,KAAK,CAAC,MAAM,OAAO,CAAC,GAAG,OAAO,GAAG,SAAS,CAM7E"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderer = renderer;
|
|
4
|
+
exports.main = main;
|
|
5
|
+
exports.osx = osx;
|
|
6
|
+
exports.macOS = macOS;
|
|
7
|
+
exports.windows = windows;
|
|
8
|
+
exports.linux = linux;
|
|
9
|
+
exports.openharmony = openharmony;
|
|
10
|
+
exports.x86 = x86;
|
|
11
|
+
exports.x64 = x64;
|
|
12
|
+
exports.sandbox = sandbox;
|
|
13
|
+
exports.mas = mas;
|
|
14
|
+
exports.windowsStore = windowsStore;
|
|
15
|
+
exports.all = all;
|
|
16
|
+
exports.none = none;
|
|
17
|
+
exports.one = one;
|
|
18
|
+
/**
|
|
19
|
+
* @module utils/is
|
|
20
|
+
* @description Electron runtime environment detection utility. Provides a set of functions
|
|
21
|
+
* for determining the current process type, operating system platform, and processor
|
|
22
|
+
* architecture, enabling framework code to execute different logic for different environments.
|
|
23
|
+
*
|
|
24
|
+
* Usage:
|
|
25
|
+
* ```ts
|
|
26
|
+
* import { main, osx, all } from './is.js';
|
|
27
|
+
* if (all(main, osx)) { /* main process + macOS *\/ }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Detect whether currently running in the renderer process
|
|
32
|
+
*
|
|
33
|
+
* Electron process.type values:
|
|
34
|
+
* - 'renderer': renderer process
|
|
35
|
+
* - 'browser': main process
|
|
36
|
+
* - 'worker': Worker process
|
|
37
|
+
*
|
|
38
|
+
* @returns true if currently in the renderer process
|
|
39
|
+
*/
|
|
40
|
+
function renderer() {
|
|
41
|
+
return process.type === 'renderer';
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Detect whether currently running in the main process
|
|
45
|
+
*
|
|
46
|
+
* The main process's process.type is 'browser' in Electron.
|
|
47
|
+
*
|
|
48
|
+
* @returns true if currently in the main process
|
|
49
|
+
*/
|
|
50
|
+
function main() {
|
|
51
|
+
return process.type === 'browser';
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Detect whether the current operating system is macOS
|
|
55
|
+
*
|
|
56
|
+
* Based on process.platform === 'darwin'.
|
|
57
|
+
* macOS, iOS, and other Apple systems all have platform 'darwin'.
|
|
58
|
+
*
|
|
59
|
+
* @returns true if currently running on macOS
|
|
60
|
+
*/
|
|
61
|
+
function osx() {
|
|
62
|
+
return process.platform === 'darwin';
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Detect whether the current operating system is macOS (alias for osx)
|
|
66
|
+
*
|
|
67
|
+
* @returns true if currently running on macOS
|
|
68
|
+
*/
|
|
69
|
+
function macOS() {
|
|
70
|
+
return osx();
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Detect whether the current operating system is Windows
|
|
74
|
+
*
|
|
75
|
+
* Based on process.platform === 'win32'.
|
|
76
|
+
* Note: 64-bit Windows also has platform 'win32'.
|
|
77
|
+
*
|
|
78
|
+
* @returns true if currently running on Windows
|
|
79
|
+
*/
|
|
80
|
+
function windows() {
|
|
81
|
+
return process.platform === 'win32';
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Detect whether the current operating system is Linux
|
|
85
|
+
*
|
|
86
|
+
* @returns true if currently running on Linux
|
|
87
|
+
*/
|
|
88
|
+
function linux() {
|
|
89
|
+
return process.platform === 'linux';
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Detect whether the current operating system is OpenHarmony
|
|
93
|
+
*
|
|
94
|
+
* @returns true if currently running on OpenHarmony
|
|
95
|
+
*/
|
|
96
|
+
function openharmony() {
|
|
97
|
+
return process.platform === 'openharmony';
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Detect whether the processor architecture is x86 (32-bit)
|
|
101
|
+
*
|
|
102
|
+
* Based on process.arch === 'ia32'.
|
|
103
|
+
*
|
|
104
|
+
* @returns true for 32-bit x86 architecture
|
|
105
|
+
*/
|
|
106
|
+
function x86() {
|
|
107
|
+
return process.arch === 'ia32';
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Detect whether the processor architecture is x64 (64-bit)
|
|
111
|
+
*
|
|
112
|
+
* Based on process.arch === 'x64'.
|
|
113
|
+
*
|
|
114
|
+
* @returns true for 64-bit x86 architecture
|
|
115
|
+
*/
|
|
116
|
+
function x64() {
|
|
117
|
+
return process.arch === 'x64';
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Detect whether the app is running in a macOS sandbox environment
|
|
121
|
+
*
|
|
122
|
+
* macOS sandbox apps contain APP_SANDBOX_CONTAINER_ID in environment variables.
|
|
123
|
+
*
|
|
124
|
+
* @returns true if running in a sandbox environment
|
|
125
|
+
*/
|
|
126
|
+
function sandbox() {
|
|
127
|
+
return 'APP_SANDBOX_CONTAINER_ID' in process.env;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Detect whether the app is a Mac App Store build
|
|
131
|
+
*
|
|
132
|
+
* Electron's process.mas property is true in MAS builds.
|
|
133
|
+
*
|
|
134
|
+
* @returns true for MAS build
|
|
135
|
+
*/
|
|
136
|
+
function mas() {
|
|
137
|
+
return process.mas === true;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Detect whether the app is a Windows Store (appx) build
|
|
141
|
+
*
|
|
142
|
+
* Electron's process.windowsStore property is true in Windows Store builds.
|
|
143
|
+
*
|
|
144
|
+
* @returns true for Windows Store build
|
|
145
|
+
*/
|
|
146
|
+
function windowsStore() {
|
|
147
|
+
return process.windowsStore === true;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Determine if all condition functions are true
|
|
151
|
+
*
|
|
152
|
+
* Accepts multiple functions returning boolean values, executes each and checks the result.
|
|
153
|
+
* Returns false at the first false result; returns true only if all are true.
|
|
154
|
+
*
|
|
155
|
+
* @param isFunctions - List of condition functions
|
|
156
|
+
* @returns true if all are true, false if any is false, undefined if no arguments
|
|
157
|
+
*/
|
|
158
|
+
function all(...isFunctions) {
|
|
159
|
+
if (!isFunctions.length)
|
|
160
|
+
return undefined;
|
|
161
|
+
for (const fn of isFunctions) {
|
|
162
|
+
if (!fn())
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
165
|
+
return true;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Determine if all condition functions are false
|
|
169
|
+
*
|
|
170
|
+
* Accepts multiple functions returning boolean values, executes each and checks the result.
|
|
171
|
+
* Returns false at the first true result; returns true only if all are false.
|
|
172
|
+
*
|
|
173
|
+
* @param isFunctions - List of condition functions
|
|
174
|
+
* @returns true if all are false, false if any is true, undefined if no arguments
|
|
175
|
+
*/
|
|
176
|
+
function none(...isFunctions) {
|
|
177
|
+
if (!isFunctions.length)
|
|
178
|
+
return undefined;
|
|
179
|
+
for (const fn of isFunctions) {
|
|
180
|
+
if (fn())
|
|
181
|
+
return false;
|
|
182
|
+
}
|
|
183
|
+
return true;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Determine if at least one condition function is true
|
|
187
|
+
*
|
|
188
|
+
* Accepts multiple functions returning boolean values, executes each and checks the result.
|
|
189
|
+
* Returns true at the first true result; returns false only if all are false.
|
|
190
|
+
*
|
|
191
|
+
* @param isFunctions - List of condition functions
|
|
192
|
+
* @returns true if any is true, false if all are false, undefined if no arguments
|
|
193
|
+
*/
|
|
194
|
+
function one(...isFunctions) {
|
|
195
|
+
if (!isFunctions.length)
|
|
196
|
+
return undefined;
|
|
197
|
+
for (const fn of isFunctions) {
|
|
198
|
+
if (fn())
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
201
|
+
return false;
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=is.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is.js","sourceRoot":"","sources":["../../../src/utils/is.ts"],"names":[],"mappings":";;AAsBA,4BAEC;AASD,oBAEC;AAUD,kBAEC;AAOD,sBAEC;AAUD,0BAEC;AAOD,sBAEC;AAOD,kCAEC;AASD,kBAEC;AASD,kBAEC;AASD,0BAEC;AASD,kBAEC;AASD,oCAEC;AAWD,kBAMC;AAWD,oBAMC;AAWD,kBAMC;AAhMD;;;;;;;;;;;GAWG;AACH;;;;;;;;;GASG;AACH,SAAgB,QAAQ;IACtB,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,IAAI;IAClB,OAAO,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,GAAG;IACjB,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAgB,KAAK;IACnB,OAAO,GAAG,EAAE,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,OAAO;IACrB,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,SAAgB,KAAK;IACnB,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,SAAgB,WAAW;IACzB,OAAQ,OAAO,CAAC,QAAmB,KAAK,aAAa,CAAC;AACxD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,GAAG;IACjB,OAAO,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC;AACjC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,GAAG;IACjB,OAAO,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC;AAChC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO;IACrB,OAAO,0BAA0B,IAAI,OAAO,CAAC,GAAG,CAAC;AACnD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,GAAG;IACjB,OAAO,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY;IAC1B,OAAO,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,GAAG,CAAC,GAAG,WAAiC;IACtD,IAAI,CAAC,WAAW,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC1C,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,IAAI,CAAC,EAAE,EAAE;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,IAAI,CAAC,GAAG,WAAiC;IACvD,IAAI,CAAC,WAAW,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC1C,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,IAAI,EAAE,EAAE;YAAE,OAAO,KAAK,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,GAAG,CAAC,GAAG,WAAiC;IACtD,IAAI,CAAC,WAAW,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC1C,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,IAAI,EAAE,EAAE;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|