comp-hub 0.42.8 → 0.43.9
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/README.md +13 -2
- package/README.zh-CN.md +144 -0
- package/README.zh-Hant.md +144 -0
- package/dist/cli.js +44 -0
- package/dist/index.js +14 -33
- package/dist/master.js +19 -19
- package/package.json +16 -18
- package/bin/cli.js +0 -59
- package/bin/lib/commands.js +0 -173
- package/bin/lib/constants.js +0 -22
- package/bin/lib/http.js +0 -130
- package/bin/lib/startup.js +0 -254
- package/bin/lib/utils.js +0 -112
- package/dist/website/container/assets/index-BmW7jge6.css +0 -1
- package/dist/website/container/assets/index-E15UfKFM.js +0 -33
- package/dist/website/container/favicon.ico +0 -0
- package/dist/website/container/index.html +0 -39
- package/dist/website/container/js/less-compiler.js +0 -41
- package/dist/website/container/js/react-jsx-loader.js +0 -233
- package/dist/website/container/js/sass-compiler.js +0 -418
- package/dist/website/container/js/vue2-sfc-loader.js +0 -261
- package/dist/website/container/js/vue3-sfc-loader.js +0 -290
- package/dist/website/item/assets/index-CfkvQ31V.css +0 -1
- package/dist/website/item/assets/index-CwtVkGPL.js +0 -62
- package/dist/website/item/favicon.ico +0 -0
- package/dist/website/item/index.html +0 -34
- package/dist/website/main/assets/AuthCodeSendBtn.vue_vue_type_script_setup_true_lang-D-jhE3yA.js +0 -1
- package/dist/website/main/assets/BaseBadge-BReHrAqs.js +0 -1
- package/dist/website/main/assets/BaseBadge-ledSuDnX.css +0 -1
- package/dist/website/main/assets/BaseDialog.vue_vue_type_script_setup_true_lang-BK7dbjCA.js +0 -1
- package/dist/website/main/assets/BaseSegmented.vue_vue_type_script_setup_true_lang-CcSntY2B.js +0 -1
- package/dist/website/main/assets/CanvasAnimation.vue_vue_type_script_setup_true_lang-T5vn0JFD.js +0 -1
- package/dist/website/main/assets/CodeMirrorEditor-Cqow8ROO-DYjlZgX9.js +0 -12
- package/dist/website/main/assets/EmptyStatusContainer.vue_vue_type_script_setup_true_lang-CNOUTt3S.js +0 -1
- package/dist/website/main/assets/GithubCallback-UUNSnoh7.js +0 -1
- package/dist/website/main/assets/LoadingWrapper.vue_vue_type_script_setup_true_lang-BYA4gUOI.js +0 -1
- package/dist/website/main/assets/ReplyForm.vue_vue_type_script_setup_true_lang-CEqkWYsv.js +0 -1
- package/dist/website/main/assets/SiteLogo-Bpm2Ah9F.js +0 -1
- package/dist/website/main/assets/SiteLogo-CszHjM2d.css +0 -1
- package/dist/website/main/assets/apl-B4CMkyY2.js +0 -1
- package/dist/website/main/assets/asciiarmor-Df11BRmG.js +0 -1
- package/dist/website/main/assets/asn1-EdZsLKOL.js +0 -1
- package/dist/website/main/assets/asterisk-B-8jnY81.js +0 -1
- package/dist/website/main/assets/brainfuck-C4LP7Hcl.js +0 -1
- package/dist/website/main/assets/clike-B9uivgTg.js +0 -1
- package/dist/website/main/assets/clojure-BMjYHr_A.js +0 -1
- package/dist/website/main/assets/cloud-upload-BqJFdj_J.js +0 -1
- package/dist/website/main/assets/cloud-upload-j3Y0taC9.css +0 -1
- package/dist/website/main/assets/cmake-BQqOBYOt.js +0 -1
- package/dist/website/main/assets/cobol-CWcv1MsR.js +0 -1
- package/dist/website/main/assets/coffeescript-S37ZYGWr.js +0 -1
- package/dist/website/main/assets/commonlisp-DBKNyK5s.js +0 -1
- package/dist/website/main/assets/crystal-SjHAIU92.js +0 -1
- package/dist/website/main/assets/css-BnMrqG3P.js +0 -1
- package/dist/website/main/assets/cypher-C_CwsFkJ.js +0 -1
- package/dist/website/main/assets/d-pRatUO7H.js +0 -1
- package/dist/website/main/assets/diff-DbItnlRl.js +0 -1
- package/dist/website/main/assets/dockerfile-BKs6k2Af.js +0 -1
- package/dist/website/main/assets/dtd-DF_7sFjM.js +0 -1
- package/dist/website/main/assets/dylan-DwRh75JA.js +0 -1
- package/dist/website/main/assets/ebnf-CDyGwa7X.js +0 -1
- package/dist/website/main/assets/ecl-Cabwm37j.js +0 -1
- package/dist/website/main/assets/eiffel-CnydiIhH.js +0 -1
- package/dist/website/main/assets/el-card-BAyktVMS.css +0 -1
- package/dist/website/main/assets/el-dropdown-item-BeIfAqTO.css +0 -1
- package/dist/website/main/assets/el-empty-S7fQQ3B8.css +0 -1
- package/dist/website/main/assets/el-link-CPQZ-olG.css +0 -1
- package/dist/website/main/assets/el-table-column-B3ZEEuPD.css +0 -1
- package/dist/website/main/assets/el-table-column-C2GQUl4R.js +0 -1
- package/dist/website/main/assets/elm-vLlmbW-K.js +0 -1
- package/dist/website/main/assets/en-DJCBTPEu.js +0 -1
- package/dist/website/main/assets/erlang-BNw1qcRV.js +0 -1
- package/dist/website/main/assets/factor-kuTfRLto.js +0 -1
- package/dist/website/main/assets/fcl-Kvtd6kyn.js +0 -1
- package/dist/website/main/assets/forth-Ffai-XNe.js +0 -1
- package/dist/website/main/assets/fortran-DYz_wnZ1.js +0 -1
- package/dist/website/main/assets/gas-Bneqetm1.js +0 -1
- package/dist/website/main/assets/gherkin-heZmZLOM.js +0 -1
- package/dist/website/main/assets/groovy-D9Dt4D0W.js +0 -1
- package/dist/website/main/assets/haskell-Cw1EW3IL.js +0 -1
- package/dist/website/main/assets/haxe-H-WmDvRZ.js +0 -1
- package/dist/website/main/assets/home-rounded-B4KVwSYb.css +0 -1
- package/dist/website/main/assets/home-rounded-CN0qCDnE.js +0 -1
- package/dist/website/main/assets/http-DBlCnlav.js +0 -1
- package/dist/website/main/assets/idl-BEugSyMb.js +0 -1
- package/dist/website/main/assets/index-4S2NYemE.js +0 -1
- package/dist/website/main/assets/index-6zg8j_nT.js +0 -1
- package/dist/website/main/assets/index-72rReQ2I-C_aIAupr.js +0 -6
- package/dist/website/main/assets/index-8dCw6Y2Z.css +0 -1
- package/dist/website/main/assets/index-B1K6cAvN.js +0 -1
- package/dist/website/main/assets/index-B2qulmRp.js +0 -1
- package/dist/website/main/assets/index-B5rd6Qgm.js +0 -1
- package/dist/website/main/assets/index-B6JeEo9g.js +0 -1
- package/dist/website/main/assets/index-B6Oo99Ej.js +0 -1
- package/dist/website/main/assets/index-BA02DjBI.js +0 -3
- package/dist/website/main/assets/index-BD8DwKlG.js +0 -1
- package/dist/website/main/assets/index-BF2ETnQh.js +0 -1
- package/dist/website/main/assets/index-BNwWVTCF.js +0 -1
- package/dist/website/main/assets/index-BPdEkCOx.js +0 -1
- package/dist/website/main/assets/index-BTmh_pkn.js +0 -1
- package/dist/website/main/assets/index-BWh3R1jI.js +0 -6
- package/dist/website/main/assets/index-BX3Tl9jb.js +0 -1
- package/dist/website/main/assets/index-Bn5vi5XZ.css +0 -1
- package/dist/website/main/assets/index-BvmEG8Qn.css +0 -1
- package/dist/website/main/assets/index-By_sRNiP.js +0 -1
- package/dist/website/main/assets/index-C0WquRMM.css +0 -1
- package/dist/website/main/assets/index-C1zFaUVE.js +0 -1
- package/dist/website/main/assets/index-CCJiyDal.js +0 -1
- package/dist/website/main/assets/index-CLT68CCM.css +0 -1
- package/dist/website/main/assets/index-CMiBqyhH.js +0 -1
- package/dist/website/main/assets/index-CaoAcCMA.js +0 -2
- package/dist/website/main/assets/index-CbOKlsZn.js +0 -2
- package/dist/website/main/assets/index-CdWXO9ks.css +0 -1
- package/dist/website/main/assets/index-CeiBBtdW.js +0 -1
- package/dist/website/main/assets/index-ChFpxx4T.css +0 -1
- package/dist/website/main/assets/index-CioMG7I6.css +0 -1
- package/dist/website/main/assets/index-CtNrOkJr.js +0 -1
- package/dist/website/main/assets/index-CuCbuNEj.js +0 -1
- package/dist/website/main/assets/index-D-25wqLa.js +0 -1
- package/dist/website/main/assets/index-D-HOLV6Z.js +0 -1
- package/dist/website/main/assets/index-D-zBzPPy.css +0 -1
- package/dist/website/main/assets/index-D6zFRika.js +0 -1
- package/dist/website/main/assets/index-D76eWsZ1-a1NwqrGS.js +0 -1
- package/dist/website/main/assets/index-DFsl7Pen.css +0 -1
- package/dist/website/main/assets/index-DOlF0Z_P.css +0 -1
- package/dist/website/main/assets/index-DR4j8Ql1.js +0 -1
- package/dist/website/main/assets/index-DRsSRfwD.js +0 -1
- package/dist/website/main/assets/index-DS44gjNL.js +0 -2
- package/dist/website/main/assets/index-D_NvG8ob.js +0 -1
- package/dist/website/main/assets/index-Dblv7zZt.js +0 -1
- package/dist/website/main/assets/index-Dcp6qLr1.js +0 -1
- package/dist/website/main/assets/index-DdIWt0oE.js +0 -1
- package/dist/website/main/assets/index-DdqWCLvd.js +0 -1
- package/dist/website/main/assets/index-DgQa2ZqK.js +0 -4
- package/dist/website/main/assets/index-DgrizPPB.js +0 -50
- package/dist/website/main/assets/index-DlkXaOkE.css +0 -1
- package/dist/website/main/assets/index-Dms7ZQ2h-DZe32-4Q.js +0 -1
- package/dist/website/main/assets/index-DpUmZw4S.js +0 -1
- package/dist/website/main/assets/index-DqiFCfGx-Be_VzFT8.js +0 -1
- package/dist/website/main/assets/index-DvFQxOj2.js +0 -1
- package/dist/website/main/assets/index-DxypSQ0K-DZ74HfZS.js +0 -1
- package/dist/website/main/assets/index-Dy0c-ddP.js +0 -1
- package/dist/website/main/assets/index-DyFpWAJM.js +0 -1
- package/dist/website/main/assets/index-Ji2WmMDE.css +0 -1
- package/dist/website/main/assets/index-KhSB9wFh.js +0 -84
- package/dist/website/main/assets/index-Mnu1wKgu.css +0 -1
- package/dist/website/main/assets/index-RrkKKQjp.js +0 -1
- package/dist/website/main/assets/index-S0EB9acK.js +0 -7
- package/dist/website/main/assets/index-T76vWLBU-iHnxnk3E.js +0 -13
- package/dist/website/main/assets/index-VpAGAhRh.js +0 -1
- package/dist/website/main/assets/index-VyPJ3PyN.js +0 -1
- package/dist/website/main/assets/index-Zt46lwNk.js +0 -1
- package/dist/website/main/assets/index-ex5YI_gC.js +0 -1
- package/dist/website/main/assets/index-fZBcgzqR-CqMOhDrG.js +0 -1
- package/dist/website/main/assets/index-mqeGrL6B-C5oP0065.js +0 -1
- package/dist/website/main/assets/index-wd7ZswFD.js +0 -1
- package/dist/website/main/assets/index-z8BnmFXm.js +0 -1
- package/dist/website/main/assets/index.vue_vue_type_script_setup_true_lang-Ap8wTvsB.js +0 -2
- package/dist/website/main/assets/index.vue_vue_type_script_setup_true_lang-B05SHLQS.js +0 -1
- package/dist/website/main/assets/index.vue_vue_type_script_setup_true_lang-BOkD4Vs3.js +0 -1
- package/dist/website/main/assets/index.vue_vue_type_script_setup_true_lang-Bs4fbZK8.js +0 -1
- package/dist/website/main/assets/index.vue_vue_type_script_setup_true_lang-ByHasmxS.js +0 -1
- package/dist/website/main/assets/index.vue_vue_type_script_setup_true_lang-Dsu1eY0B.js +0 -1
- package/dist/website/main/assets/index.vue_vue_type_style_index_0_lang-66fUtqSq.js +0 -6
- package/dist/website/main/assets/index.vue_vue_type_style_index_0_lang-CUQ5yd-1.js +0 -1
- package/dist/website/main/assets/index3-BiHnTK1Z.js +0 -1
- package/dist/website/main/assets/javascript-iXu5QeM3.js +0 -1
- package/dist/website/main/assets/julia-DuME0IfC.js +0 -1
- package/dist/website/main/assets/kid-star-CiMfD7Sa.js +0 -1
- package/dist/website/main/assets/kid-star-D1M-aC1C.css +0 -1
- package/dist/website/main/assets/livescript-BwQOo05w.js +0 -1
- package/dist/website/main/assets/lua-VAEuO923.js +0 -1
- package/dist/website/main/assets/mathematica-DTrFuWx2.js +0 -1
- package/dist/website/main/assets/mbox-CNhZ1qSd.js +0 -1
- package/dist/website/main/assets/md5-Dkj6ZNQB.js +0 -1
- package/dist/website/main/assets/mirc-CjQqDB4T.js +0 -1
- package/dist/website/main/assets/mllike-CXdrOF99.js +0 -1
- package/dist/website/main/assets/modelica-Dc1JOy9r.js +0 -1
- package/dist/website/main/assets/moment-B-YVwB4U.js +0 -4
- package/dist/website/main/assets/mscgen-BA5vi2Kp.js +0 -1
- package/dist/website/main/assets/mumps-BT43cFF4.js +0 -1
- package/dist/website/main/assets/nginx-DdIZxoE0.js +0 -1
- package/dist/website/main/assets/nsis-LdVXkNf5.js +0 -1
- package/dist/website/main/assets/ntriples-BfvgReVJ.js +0 -1
- package/dist/website/main/assets/octave-Ck1zUtKM.js +0 -1
- package/dist/website/main/assets/oz-BzwKVEFT.js +0 -1
- package/dist/website/main/assets/papaparse.min-Brc8PWCw-BsyFjD51.js +0 -10
- package/dist/website/main/assets/pascal--L3eBynH.js +0 -1
- package/dist/website/main/assets/perl-CdXCOZ3F.js +0 -1
- package/dist/website/main/assets/pig-CevX1Tat.js +0 -1
- package/dist/website/main/assets/powershell-CFHJl5sT.js +0 -1
- package/dist/website/main/assets/properties-C78fOPTZ.js +0 -1
- package/dist/website/main/assets/protobuf-ChK-085T.js +0 -1
- package/dist/website/main/assets/pug-DeIclll2.js +0 -1
- package/dist/website/main/assets/puppet-DMA9R1ak.js +0 -1
- package/dist/website/main/assets/python-BuPzkPfP.js +0 -1
- package/dist/website/main/assets/q-pXgVlZs6.js +0 -1
- package/dist/website/main/assets/r-B6wPVr8A.js +0 -1
- package/dist/website/main/assets/rpm-CTu-6PCP.js +0 -1
- package/dist/website/main/assets/ruby-B2Rjki9n.js +0 -1
- package/dist/website/main/assets/sas-B4kiWyti.js +0 -1
- package/dist/website/main/assets/scheme-C41bIUwD.js +0 -1
- package/dist/website/main/assets/settings-BhagQj3w.css +0 -1
- package/dist/website/main/assets/settings-CSr4nQM1.js +0 -1
- package/dist/website/main/assets/shell-CjFT_Tl9.js +0 -1
- package/dist/website/main/assets/sieve-C3Gn_uJK.js +0 -1
- package/dist/website/main/assets/simple-mode-GW_nhZxv.js +0 -1
- package/dist/website/main/assets/smalltalk-CnHTOXQT.js +0 -1
- package/dist/website/main/assets/solr-DehyRSwq.js +0 -1
- package/dist/website/main/assets/sparql-DkYu6x3z.js +0 -1
- package/dist/website/main/assets/spreadsheet-BCZA_wO0.js +0 -1
- package/dist/website/main/assets/sql-D0XecflT.js +0 -1
- package/dist/website/main/assets/stex-C3f8Ysf7.js +0 -1
- package/dist/website/main/assets/stylus-B533Al4x.js +0 -1
- package/dist/website/main/assets/supervised-user-circle-BwUSx6w_.js +0 -1
- package/dist/website/main/assets/supervised-user-circle-CZYpyCV4.css +0 -1
- package/dist/website/main/assets/swift-BzpIVaGY.js +0 -1
- package/dist/website/main/assets/sync-saved-locally-rounded-DyESI323.js +0 -1
- package/dist/website/main/assets/sync-saved-locally-rounded-wbwASI26.css +0 -1
- package/dist/website/main/assets/tcl-DVfN8rqt.js +0 -1
- package/dist/website/main/assets/terminal-DAZ0JqKA.js +0 -1
- package/dist/website/main/assets/terminal-DFt3N_TH.css +0 -1
- package/dist/website/main/assets/textile-CnDTJFAw.js +0 -1
- package/dist/website/main/assets/tiddlywiki-DO-Gjzrf.js +0 -1
- package/dist/website/main/assets/tiki-DGYXhP31.js +0 -1
- package/dist/website/main/assets/toml-Bm5Em-hy.js +0 -1
- package/dist/website/main/assets/troff-wAsdV37c.js +0 -1
- package/dist/website/main/assets/ttcn-CfJYG6tj.js +0 -1
- package/dist/website/main/assets/ttcn-cfg-B9xdYoR4.js +0 -1
- package/dist/website/main/assets/turtle-B1tBg_DP.js +0 -1
- package/dist/website/main/assets/useCacheOssStore-C6-kY3lP.js +0 -1
- package/dist/website/main/assets/useCompEditStore-B7__tBPJ.js +0 -70
- package/dist/website/main/assets/useCompEditStore-C2cDxPfw.css +0 -1
- package/dist/website/main/assets/useCompMetaLocalStore-DUMtt_yz.js +0 -1
- package/dist/website/main/assets/useKeyword-O-wdQuD_.js +0 -1
- package/dist/website/main/assets/useMessage-yR4W8KDP.js +0 -1
- package/dist/website/main/assets/useTeamHeaders-BMHQzwDq.css +0 -1
- package/dist/website/main/assets/useTeamHeaders-BbJQSrjN.js +0 -380
- package/dist/website/main/assets/useUnreadStore-COt1XJEP.js +0 -1
- package/dist/website/main/assets/useVscodeOpen-CCvngYEV.js +0 -1
- package/dist/website/main/assets/v4-EwEgHOG0.js +0 -1
- package/dist/website/main/assets/vb-CmGdzxic.js +0 -1
- package/dist/website/main/assets/vbscript-BuJXcnF6.js +0 -1
- package/dist/website/main/assets/velocity-D8B20fx6.js +0 -1
- package/dist/website/main/assets/vendor-core-CNXB6kVe.js +0 -3
- package/dist/website/main/assets/vendor-ui-Cvgmewma.js +0 -50
- package/dist/website/main/assets/vendor-xterm-mNFjEaKn.js +0 -9
- package/dist/website/main/assets/verilog-C6RDOZhf.js +0 -1
- package/dist/website/main/assets/vhdl-lSbBsy5d.js +0 -1
- package/dist/website/main/assets/webidl-ZXfAyPTL.js +0 -1
- package/dist/website/main/assets/xquery-DzFWVndE.js +0 -1
- package/dist/website/main/assets/yacas-BJ4BC0dw.js +0 -1
- package/dist/website/main/assets/z80-Hz9HOZM7.js +0 -1
- package/dist/website/main/assets/zhCN-VSAW5gZn.js +0 -1
- package/dist/website/main/favicon.ico +0 -0
- package/dist/website/main/index.html +0 -111
- package/dist/website/main/md/COMP_REPEAT.en.md +0 -20
- package/dist/website/main/md/COMP_REPEAT.zh.md +0 -20
- package/dist/website/main/md/PUT_TREATY.en.md +0 -68
- package/dist/website/main/md/PUT_TREATY.zh.md +0 -68
package/bin/lib/utils.js
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
const path = require("path");
|
|
2
|
-
const fs = require("fs");
|
|
3
|
-
const crypto = require("crypto");
|
|
4
|
-
const { MASTER_RUNTIME_FILE } = require("./constants");
|
|
5
|
-
|
|
6
|
-
const projectRoot = path.resolve(__dirname, "../..");
|
|
7
|
-
|
|
8
|
-
function readJson(p) {
|
|
9
|
-
return JSON.parse(fs.readFileSync(p, "utf8"));
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* 加载项目根目录的 .comphub.json 或 .comphub.js
|
|
14
|
-
* 作为命令行参数的 fallback,优先级低于 CLI 选项
|
|
15
|
-
*/
|
|
16
|
-
function loadComphubConfig(cwd) {
|
|
17
|
-
const jsonPath = path.join(cwd, ".comphub.json");
|
|
18
|
-
const jsPath = path.join(cwd, ".comphub.js");
|
|
19
|
-
|
|
20
|
-
try {
|
|
21
|
-
if (fs.existsSync(jsonPath)) {
|
|
22
|
-
return readJson(jsonPath);
|
|
23
|
-
}
|
|
24
|
-
} catch {
|
|
25
|
-
/* corrupted json, try js */
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
try {
|
|
29
|
-
if (fs.existsSync(jsPath)) {
|
|
30
|
-
const mod = require(jsPath);
|
|
31
|
-
return mod.default || mod;
|
|
32
|
-
}
|
|
33
|
-
} catch {
|
|
34
|
-
/* ignore */
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return {};
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
function getLocalPkgInfo() {
|
|
41
|
-
const pkgPath = path.join(projectRoot, "package.json");
|
|
42
|
-
const pkg = readJson(pkgPath);
|
|
43
|
-
const entry = path.join(projectRoot, pkg.main || "dist/index.js");
|
|
44
|
-
return { pkg, entry };
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
function computeHash(dir) {
|
|
48
|
-
return crypto.createHash("sha256").update(dir).digest("hex").slice(0, 8);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
async function readMasterRuntime() {
|
|
52
|
-
try {
|
|
53
|
-
if (fs.existsSync(MASTER_RUNTIME_FILE)) {
|
|
54
|
-
const data = JSON.parse(fs.readFileSync(MASTER_RUNTIME_FILE, "utf8"));
|
|
55
|
-
try {
|
|
56
|
-
process.kill(data.pid, 0);
|
|
57
|
-
// PID 存活不一定是 master 进程(PID 可能被复用),
|
|
58
|
-
// 额外通过健康检查确认端口确实在服务
|
|
59
|
-
const alive = await checkMasterAlive(data.managementPort);
|
|
60
|
-
if (alive) return data;
|
|
61
|
-
} catch {
|
|
62
|
-
/* PID not found */
|
|
63
|
-
}
|
|
64
|
-
try {
|
|
65
|
-
fs.unlinkSync(MASTER_RUNTIME_FILE);
|
|
66
|
-
} catch {
|
|
67
|
-
/* best effort */
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
} catch {
|
|
71
|
-
/* corrupted file */
|
|
72
|
-
}
|
|
73
|
-
return null;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
function checkMasterAlive(port) {
|
|
77
|
-
const { ADMIN_API } = require("./constants");
|
|
78
|
-
const http = require("http");
|
|
79
|
-
return new Promise(resolve => {
|
|
80
|
-
const req = http.get(`http://localhost:${port}${ADMIN_API.HEALTH}`, res => {
|
|
81
|
-
let body = "";
|
|
82
|
-
res.on("data", chunk => (body += chunk));
|
|
83
|
-
res.on("end", () => {
|
|
84
|
-
try {
|
|
85
|
-
const json = JSON.parse(body);
|
|
86
|
-
resolve(typeof json.status === "string");
|
|
87
|
-
} catch {
|
|
88
|
-
resolve(false);
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
});
|
|
92
|
-
req.on("error", () => resolve(false));
|
|
93
|
-
req.setTimeout(2000, () => {
|
|
94
|
-
req.destroy();
|
|
95
|
-
resolve(false);
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const colors = {
|
|
101
|
-
cyan: s => `\x1b[36m${s}\x1b[0m`,
|
|
102
|
-
green: s => `\x1b[32m${s}\x1b[0m`,
|
|
103
|
-
white: s => `\x1b[37m${s}\x1b[0m`,
|
|
104
|
-
yellow: s => `\x1b[33m${s}\x1b[0m`,
|
|
105
|
-
red: s => `\x1b[31m${s}\x1b[0m`
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
function apiUrl(port, pathname) {
|
|
109
|
-
return `http://localhost:${port}${pathname}`;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
module.exports = { getLocalPkgInfo, computeHash, projectRoot, readMasterRuntime, loadComphubConfig, colors, apiUrl };
|