surgio 2.10.3 → 2.13.1
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/CHANGELOG.md +88 -50
- package/build/command/clean-cache.js +2 -2
- package/build/constant/constant.d.ts +20 -0
- package/build/constant/constant.js +70 -0
- package/build/constant/env.d.ts +8 -0
- package/build/constant/env.js +12 -0
- package/build/constant/error.d.ts +1 -0
- package/build/constant/error.js +5 -0
- package/build/constant/index.d.ts +3 -0
- package/build/constant/index.js +16 -0
- package/build/generator/artifact.js +3 -3
- package/build/generator/template.js +2 -2
- package/build/index.js +7 -3
- package/build/provider/BlackSSLProvider.js +2 -2
- package/build/provider/ClashProvider.js +21 -48
- package/build/provider/CustomProvider.js +2 -2
- package/build/provider/Provider.d.ts +4 -0
- package/build/provider/Provider.js +33 -2
- package/build/provider/ShadowsocksJsonSubscribeProvider.js +2 -2
- package/build/provider/ShadowsocksSubscribeProvider.js +3 -19
- package/build/provider/ShadowsocksrSubscribeProvider.js +3 -18
- package/build/provider/SsdProvider.js +3 -19
- package/build/provider/TrojanProvider.d.ts +18 -0
- package/build/provider/TrojanProvider.js +78 -0
- package/build/provider/V2rayNSubscribeProvider.d.ts +3 -2
- package/build/provider/V2rayNSubscribeProvider.js +35 -18
- package/build/provider/index.js +4 -1
- package/build/types.d.ts +7 -1
- package/build/types.js +2 -1
- package/build/utils/cache.js +4 -4
- package/build/utils/config.js +3 -3
- package/build/utils/constant.d.ts +1 -28
- package/build/utils/constant.js +12 -95
- package/build/utils/dns.js +5 -15
- package/build/utils/env-flag.d.ts +8 -0
- package/build/utils/env-flag.js +40 -0
- package/build/utils/http-client.js +5 -4
- package/build/utils/index.d.ts +1 -0
- package/build/utils/index.js +19 -6
- package/build/utils/loon.js +2 -2
- package/build/utils/relayable-url.js +2 -2
- package/build/utils/remote-snippet.js +5 -5
- package/build/utils/tmp-helper.js +2 -2
- package/build/utils/trojan.d.ts +2 -0
- package/build/utils/trojan.js +33 -0
- package/hygen-template/provider/new/index.js +3 -0
- package/package.json +6 -8
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const constant_1 = require("
|
|
3
|
+
const constant_1 = require("../constant");
|
|
4
4
|
function relayableUrl(url, relayUrl) {
|
|
5
5
|
if (typeof relayUrl === 'boolean') {
|
|
6
6
|
return `${constant_1.RELAY_SERVICE}${url}`;
|
|
@@ -19,4 +19,4 @@ function relayableUrl(url, relayUrl) {
|
|
|
19
19
|
return url;
|
|
20
20
|
}
|
|
21
21
|
exports.default = relayableUrl;
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXlhYmxlLXVybC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi91dGlscy9yZWxheWFibGUtdXJsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMENBQTRDO0FBRTVDLFNBQXdCLFlBQVksQ0FDbEMsR0FBVyxFQUNYLFFBQTJCO0lBRTNCLElBQUksT0FBTyxRQUFRLEtBQUssU0FBUyxFQUFFO1FBQ2pDLE9BQU8sR0FBRyx3QkFBYSxHQUFHLEdBQUcsRUFBRSxDQUFDO0tBQ2pDO1NBQU0sSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLEVBQUU7UUFDdkMsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ2hDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUM3RDthQUFNLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZDO2FBQU07WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7U0FDekQ7S0FDRjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQWhCRCwrQkFnQkMifQ==
|
|
@@ -10,8 +10,8 @@ const logger_1 = require("@surgio/logger");
|
|
|
10
10
|
const detect_newline_1 = __importDefault(require("detect-newline"));
|
|
11
11
|
const nunjucks_1 = __importDefault(require("nunjucks"));
|
|
12
12
|
const espree_1 = __importDefault(require("espree"));
|
|
13
|
-
const constant_1 = require("./constant");
|
|
14
13
|
const cache_1 = require("./cache");
|
|
14
|
+
const env_flag_1 = require("./env-flag");
|
|
15
15
|
const http_client_1 = __importDefault(require("./http-client"));
|
|
16
16
|
const index_1 = require("./index");
|
|
17
17
|
const tmp_helper_1 = require("./tmp-helper");
|
|
@@ -112,7 +112,7 @@ const loadRemoteSnippetList = (remoteSnippetList, cacheSnippet = true) => {
|
|
|
112
112
|
const isSurgioSnippet = item.surgioSnippet;
|
|
113
113
|
return (async () => {
|
|
114
114
|
if (cacheSnippet || (0, index_1.isNow)()) {
|
|
115
|
-
const tmp = tmpFactory(fileMd5,
|
|
115
|
+
const tmp = tmpFactory(fileMd5, (0, env_flag_1.getRemoteSnippetCacheMaxage)());
|
|
116
116
|
const tmpContent = await tmp.getContent();
|
|
117
117
|
let snippet;
|
|
118
118
|
if (tmpContent) {
|
|
@@ -135,7 +135,7 @@ const loadRemoteSnippetList = (remoteSnippetList, cacheSnippet = true) => {
|
|
|
135
135
|
const snippet = cache_1.ConfigCache.has(item.url)
|
|
136
136
|
? cache_1.ConfigCache.get(item.url)
|
|
137
137
|
: await load(item.url).then((res) => {
|
|
138
|
-
cache_1.ConfigCache.set(item.url, res,
|
|
138
|
+
cache_1.ConfigCache.set(item.url, res, (0, env_flag_1.getRemoteSnippetCacheMaxage)());
|
|
139
139
|
return res;
|
|
140
140
|
});
|
|
141
141
|
return {
|
|
@@ -149,8 +149,8 @@ const loadRemoteSnippetList = (remoteSnippetList, cacheSnippet = true) => {
|
|
|
149
149
|
}
|
|
150
150
|
})();
|
|
151
151
|
}, {
|
|
152
|
-
concurrency:
|
|
152
|
+
concurrency: (0, env_flag_1.getNetworkConcurrency)(),
|
|
153
153
|
});
|
|
154
154
|
};
|
|
155
155
|
exports.loadRemoteSnippetList = loadRemoteSnippetList;
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3RlLXNuaXBwZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdXRpbHMvcmVtb3RlLXNuaXBwZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0RBQWdDO0FBQ2hDLG9EQUE0QjtBQUM1QiwyQ0FBd0M7QUFDeEMsb0VBQTJDO0FBQzNDLHdEQUFnQztBQUNoQyxvREFBeUQ7QUFHekQsbUNBQXNDO0FBQ3RDLHlDQUFnRjtBQUNoRixnRUFBdUM7QUFDdkMsbUNBQWdDO0FBQ2hDLDZDQUFnRDtBQUV6QyxNQUFNLFVBQVUsR0FBRyxDQUN4QixPQUFlLEVBSWYsRUFBRTtJQUNGLE1BQU0sS0FBSyxHQUFHLHVCQUF1QixDQUFDO0lBQ3RDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFbEMsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7S0FDL0I7SUFFRCxNQUFNLEdBQUcsR0FBRyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2RCxJQUFJLFNBQThDLENBQUM7SUFFbkQsS0FBSyxNQUFNLElBQUksSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFO1FBQzNCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxxQkFBcUIsRUFBRTtZQUN2QyxTQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ2pCLE1BQU07U0FDUDtLQUNGO0lBRUQsSUFDRSxDQUFDLFNBQVM7UUFDVixTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksS0FBSyxnQkFBZ0I7UUFDOUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFDM0M7UUFDQSxNQUFNLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQy9C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
|
|
@@ -8,7 +8,7 @@ const logger_1 = require("@surgio/logger");
|
|
|
8
8
|
const os_1 = __importDefault(require("os"));
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
11
|
-
const constant_1 = require("
|
|
11
|
+
const constant_1 = require("../constant");
|
|
12
12
|
const logger = (0, logger_1.createLogger)({ service: 'surgio:utils:tmp-helper' });
|
|
13
13
|
const tmpDir = path_1.default.join(os_1.default.tmpdir(), constant_1.TMP_FOLDER_NAME);
|
|
14
14
|
class TmpFile {
|
|
@@ -62,4 +62,4 @@ const createTmpFactory = (baseDir) => {
|
|
|
62
62
|
return (filePath, maxAge) => new TmpFile(path_1.default.join(baseDir, filePath), maxAge);
|
|
63
63
|
};
|
|
64
64
|
exports.createTmpFactory = createTmpFactory;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG1wLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi91dGlscy90bXAtaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDJDQUE4QztBQUM5Qyw0Q0FBb0I7QUFDcEIsZ0RBQXdCO0FBQ3hCLHdEQUEwQjtBQUUxQiwwQ0FBOEM7QUFFOUMsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxFQUFDLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLENBQUMsQ0FBQztBQUNwRSxNQUFNLE1BQU0sR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLFlBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSwwQkFBZSxDQUFDLENBQUM7QUFFdkQsTUFBYSxPQUFPO0lBSWxCLFlBQW1CLFFBQWdCLEVBQVMsTUFBZTtRQUF4QyxhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUN6RCxJQUFJLENBQUMsUUFBUSxHQUFHLGNBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXRDLGtCQUFFLENBQUMsVUFBVSxDQUFDLGNBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLGtCQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQWU7UUFDckMsTUFBTSxrQkFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hDLE9BQU87WUFDUCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsWUFBWSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFO1NBQ25DLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLEtBQUssQ0FBQyxVQUFVO1FBQ3JCLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2hELElBQUksVUFBVSxFQUFFO1lBQ2QsT0FBTyxVQUFVLENBQUMsT0FBTyxDQUFDO1NBQzNCO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVPLEtBQUssQ0FBQyxlQUFlO1FBQzNCLElBQUksQ0FBQyxrQkFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDakMsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxNQUFNLFVBQVUsR0FBZSxNQUFNLGtCQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDdEIsT0FBTyxVQUFVLENBQUM7U0FDbkI7YUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksR0FBRyxHQUFHLFVBQVUsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNyRSxPQUFPLFVBQVUsQ0FBQztTQUNuQjthQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1NBQ2pDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBL0NELDBCQStDQztBQVFNLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsT0FBZSxFQUNtQyxFQUFFO0lBQ3BELE9BQU8sR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVyQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVwQyxJQUFJLENBQUMsa0JBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDM0Isa0JBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDeEI7SUFFRCxPQUFPLENBQUMsUUFBZ0IsRUFBRSxNQUFlLEVBQUUsRUFBRSxDQUMzQyxJQUFJLE9BQU8sQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUN0RCxDQUFDLENBQUM7QUFiVyxRQUFBLGdCQUFnQixvQkFhM0IifQ==
|
|
@@ -0,0 +1,33 @@
|
|
|
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.parseTrojanUri = void 0;
|
|
7
|
+
const debug_1 = __importDefault(require("debug"));
|
|
8
|
+
const url_1 = require("url");
|
|
9
|
+
const types_1 = require("../types");
|
|
10
|
+
const debug = (0, debug_1.default)('surgio:utils:trojan');
|
|
11
|
+
const parseTrojanUri = (str) => {
|
|
12
|
+
debug('Trojan URI', str);
|
|
13
|
+
const scheme = new url_1.URL(str);
|
|
14
|
+
if (scheme.protocol !== 'trojan:') {
|
|
15
|
+
throw new Error('Invalid Trojan URI.');
|
|
16
|
+
}
|
|
17
|
+
const allowInsecure = scheme.searchParams.get('allowInsecure') === '1' ||
|
|
18
|
+
scheme.searchParams.get('allowInsecure') === 'true';
|
|
19
|
+
const sni = scheme.searchParams.get('sni') || scheme.searchParams.get('peer');
|
|
20
|
+
return Object.assign(Object.assign({ type: types_1.NodeTypeEnum.Trojan, hostname: scheme.hostname, port: scheme.port, password: scheme.username, nodeName: scheme.hash
|
|
21
|
+
? decodeURIComponent(scheme.hash.slice(1))
|
|
22
|
+
: `${scheme.hostname}:${scheme.port}` }, (allowInsecure
|
|
23
|
+
? {
|
|
24
|
+
skipCertVerify: true,
|
|
25
|
+
}
|
|
26
|
+
: null)), (sni
|
|
27
|
+
? {
|
|
28
|
+
sni,
|
|
29
|
+
}
|
|
30
|
+
: null));
|
|
31
|
+
};
|
|
32
|
+
exports.parseTrojanUri = parseTrojanUri;
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJvamFuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL3V0aWxzL3Ryb2phbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrREFBMEI7QUFDMUIsNkJBQTBCO0FBRTFCLG9DQUEwRDtBQUUxRCxNQUFNLEtBQUssR0FBRyxJQUFBLGVBQUssRUFBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBRXBDLE1BQU0sY0FBYyxHQUFHLENBQUMsR0FBVyxFQUFvQixFQUFFO0lBQzlELEtBQUssQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsSUFBSSxTQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFNUIsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLFNBQVMsRUFBRTtRQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7S0FDeEM7SUFFRCxNQUFNLGFBQWEsR0FDakIsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEtBQUssR0FBRztRQUNoRCxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsS0FBSyxNQUFNLENBQUM7SUFDdEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFOUUscUNBQ0UsSUFBSSxFQUFFLG9CQUFZLENBQUMsTUFBTSxFQUN6QixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFDekIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQ2pCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUN6QixRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDbkIsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxJQUNwQyxDQUFDLGFBQWE7UUFDZixDQUFDLENBQUM7WUFDRSxjQUFjLEVBQUUsSUFBSTtTQUNyQjtRQUNILENBQUMsQ0FBQyxJQUFJLENBQUMsR0FDTixDQUFDLEdBQUc7UUFDTCxDQUFDLENBQUM7WUFDRSxHQUFHO1NBQ0o7UUFDSCxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ1Q7QUFDSixDQUFDLENBQUM7QUFqQ1csUUFBQSxjQUFjLGtCQWlDekIifQ==
|
|
@@ -29,6 +29,7 @@ module.exports = {
|
|
|
29
29
|
SupportProviderEnum.ShadowsocksJsonSubscribe,
|
|
30
30
|
SupportProviderEnum.ShadowsocksrSubscribe,
|
|
31
31
|
SupportProviderEnum.ShadowsocksSubscribe,
|
|
32
|
+
SupportProviderEnum.Trojan,
|
|
32
33
|
].includes(results.type);
|
|
33
34
|
},
|
|
34
35
|
validate: (str) => /^https?:\/{2}/.test(str),
|
|
@@ -49,6 +50,7 @@ module.exports = {
|
|
|
49
50
|
SupportProviderEnum.ShadowsocksJsonSubscribe,
|
|
50
51
|
SupportProviderEnum.ShadowsocksrSubscribe,
|
|
51
52
|
SupportProviderEnum.ShadowsocksSubscribe,
|
|
53
|
+
SupportProviderEnum.Trojan,
|
|
52
54
|
].includes(results.type);
|
|
53
55
|
},
|
|
54
56
|
},
|
|
@@ -64,6 +66,7 @@ module.exports = {
|
|
|
64
66
|
SupportProviderEnum.ShadowsocksJsonSubscribe,
|
|
65
67
|
SupportProviderEnum.ShadowsocksrSubscribe,
|
|
66
68
|
SupportProviderEnum.ShadowsocksSubscribe,
|
|
69
|
+
SupportProviderEnum.Trojan,
|
|
67
70
|
].includes(results.type);
|
|
68
71
|
},
|
|
69
72
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "surgio",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.13.1",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"typings": "build/index.d.ts",
|
|
6
6
|
"bin": {
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"@types/lru-cache": "^5.1.0",
|
|
35
35
|
"@types/node": "^12",
|
|
36
36
|
"@types/nunjucks": "^3.2.0",
|
|
37
|
+
"@types/sinon": "^10.0.6",
|
|
37
38
|
"@types/urlsafe-base64": "^1.0.28",
|
|
38
|
-
"@types/yaml": "^1.9.7",
|
|
39
39
|
"@typescript-eslint/eslint-plugin": "^4.31.2",
|
|
40
40
|
"@typescript-eslint/parser": "^4.31.2",
|
|
41
41
|
"@vuepress/plugin-docsearch": "^2.0.0-beta.26",
|
|
@@ -48,8 +48,6 @@
|
|
|
48
48
|
"codecov": "^3.7.1",
|
|
49
49
|
"coffee": "^5.3.0",
|
|
50
50
|
"conventional-changelog-cli": "^2.0.31",
|
|
51
|
-
"esbuild": "^0.13.9",
|
|
52
|
-
"esbuild-register": "^3.0.0",
|
|
53
51
|
"eslint-config-prettier": "^8.3.0",
|
|
54
52
|
"eslint-plugin-prettier": "^4.0.0",
|
|
55
53
|
"husky": "^4.3.0",
|
|
@@ -63,9 +61,9 @@
|
|
|
63
61
|
"nyc": "^15.0.1",
|
|
64
62
|
"pkg": "^4.4.8",
|
|
65
63
|
"prettier": "^2.4.1",
|
|
66
|
-
"sinon": "^
|
|
64
|
+
"sinon": "^12.0.1",
|
|
67
65
|
"sitemap": "^3.0.0",
|
|
68
|
-
"ts-node": "^
|
|
66
|
+
"ts-node": "^10.4.0",
|
|
69
67
|
"type-fest": "^2.3.4",
|
|
70
68
|
"typescript": "^4.4.3",
|
|
71
69
|
"vuepress": "^2.0.0-beta.26"
|
|
@@ -87,7 +85,6 @@
|
|
|
87
85
|
"docs:build": "vuepress build docs"
|
|
88
86
|
},
|
|
89
87
|
"dependencies": {
|
|
90
|
-
"@hapi/joi": "^17.1.1",
|
|
91
88
|
"@royli/hygen": "^5.0.4",
|
|
92
89
|
"@surgio/eslint-config-surgio": "^1.0.3",
|
|
93
90
|
"@surgio/logger": "^1.1.0",
|
|
@@ -113,6 +110,7 @@
|
|
|
113
110
|
"global-agent": "^2.1.7",
|
|
114
111
|
"got": "^11.6.1",
|
|
115
112
|
"inquirer": "^7.1.0",
|
|
113
|
+
"joi": "^17.1.1",
|
|
116
114
|
"listr": "^0.14.3",
|
|
117
115
|
"lodash": "^4.17.19",
|
|
118
116
|
"lru-cache": "^6.0.0",
|
|
@@ -142,7 +140,7 @@
|
|
|
142
140
|
"lib/**/*.test.ts"
|
|
143
141
|
],
|
|
144
142
|
"require": [
|
|
145
|
-
"
|
|
143
|
+
"ts-node/register",
|
|
146
144
|
"./test/stub-axios.js"
|
|
147
145
|
]
|
|
148
146
|
},
|