surgio 3.11.2 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/bin/dev +0 -0
  2. package/package.json +69 -75
  3. package/build/base-command.d.ts +0 -20
  4. package/build/base-command.js +0 -75
  5. package/build/base-command.js.map +0 -1
  6. package/build/commands/check.d.ts +0 -10
  7. package/build/commands/check.js +0 -87
  8. package/build/commands/check.js.map +0 -1
  9. package/build/commands/clean-cache.d.ts +0 -6
  10. package/build/commands/clean-cache.js +0 -28
  11. package/build/commands/clean-cache.js.map +0 -1
  12. package/build/commands/doctor.d.ts +0 -6
  13. package/build/commands/doctor.js +0 -20
  14. package/build/commands/doctor.js.map +0 -1
  15. package/build/commands/generate.d.ts +0 -7
  16. package/build/commands/generate.js +0 -94
  17. package/build/commands/generate.js.map +0 -1
  18. package/build/commands/lint.d.ts +0 -6
  19. package/build/commands/lint.js +0 -37
  20. package/build/commands/lint.js.map +0 -1
  21. package/build/commands/new.d.ts +0 -6
  22. package/build/commands/new.js +0 -37
  23. package/build/commands/new.js.map +0 -1
  24. package/build/commands/subscriptions.d.ts +0 -7
  25. package/build/commands/subscriptions.js +0 -95
  26. package/build/commands/subscriptions.js.map +0 -1
  27. package/build/commands/upload.d.ts +0 -6
  28. package/build/commands/upload.js +0 -91
  29. package/build/commands/upload.js.map +0 -1
  30. package/build/config.d.ts +0 -6
  31. package/build/config.js +0 -156
  32. package/build/config.js.map +0 -1
  33. package/build/configurables.d.ts +0 -88
  34. package/build/configurables.js +0 -52
  35. package/build/configurables.js.map +0 -1
  36. package/build/constant/constant.d.ts +0 -36
  37. package/build/constant/constant.js +0 -160
  38. package/build/constant/constant.js.map +0 -1
  39. package/build/constant/env.d.ts +0 -9
  40. package/build/constant/env.js +0 -13
  41. package/build/constant/env.js.map +0 -1
  42. package/build/constant/error.d.ts +0 -1
  43. package/build/constant/error.js +0 -5
  44. package/build/constant/error.js.map +0 -1
  45. package/build/constant/index.d.ts +0 -3
  46. package/build/constant/index.js +0 -20
  47. package/build/constant/index.js.map +0 -1
  48. package/build/filters/classes.d.ts +0 -13
  49. package/build/filters/classes.js +0 -42
  50. package/build/filters/classes.js.map +0 -1
  51. package/build/filters/filters.d.ts +0 -25
  52. package/build/filters/filters.js +0 -107
  53. package/build/filters/filters.js.map +0 -1
  54. package/build/filters/index.d.ts +0 -2
  55. package/build/filters/index.js +0 -32
  56. package/build/filters/index.js.map +0 -1
  57. package/build/filters/utils.d.ts +0 -16
  58. package/build/filters/utils.js +0 -159
  59. package/build/filters/utils.js.map +0 -1
  60. package/build/generator/artifact.d.ts +0 -142
  61. package/build/generator/artifact.js +0 -370
  62. package/build/generator/artifact.js.map +0 -1
  63. package/build/generator/index.d.ts +0 -3
  64. package/build/generator/index.js +0 -25
  65. package/build/generator/index.js.map +0 -1
  66. package/build/generator/json-template.d.ts +0 -11
  67. package/build/generator/json-template.js +0 -66
  68. package/build/generator/json-template.js.map +0 -1
  69. package/build/generator/template.d.ts +0 -8
  70. package/build/generator/template.js +0 -234
  71. package/build/generator/template.js.map +0 -1
  72. package/build/hooks/init.d.ts +0 -3
  73. package/build/hooks/init.js +0 -33
  74. package/build/hooks/init.js.map +0 -1
  75. package/build/index.d.ts +0 -85
  76. package/build/index.js +0 -64
  77. package/build/index.js.map +0 -1
  78. package/build/internal.d.ts +0 -5
  79. package/build/internal.js +0 -25
  80. package/build/internal.js.map +0 -1
  81. package/build/misc/deprecation.d.ts +0 -0
  82. package/build/misc/deprecation.js +0 -2
  83. package/build/misc/deprecation.js.map +0 -1
  84. package/build/misc/flag_cn.d.ts +0 -56
  85. package/build/misc/flag_cn.js +0 -154
  86. package/build/misc/flag_cn.js.map +0 -1
  87. package/build/provider/BlackSSLProvider.d.ts +0 -11
  88. package/build/provider/BlackSSLProvider.js +0 -93
  89. package/build/provider/BlackSSLProvider.js.map +0 -1
  90. package/build/provider/ClashProvider.d.ts +0 -24
  91. package/build/provider/ClashProvider.js +0 -476
  92. package/build/provider/ClashProvider.js.map +0 -1
  93. package/build/provider/CustomProvider.d.ts +0 -10
  94. package/build/provider/CustomProvider.js +0 -144
  95. package/build/provider/CustomProvider.js.map +0 -1
  96. package/build/provider/Provider.d.ts +0 -17
  97. package/build/provider/Provider.js +0 -111
  98. package/build/provider/Provider.js.map +0 -1
  99. package/build/provider/ShadowsocksJsonSubscribeProvider.d.ts +0 -11
  100. package/build/provider/ShadowsocksJsonSubscribeProvider.js +0 -86
  101. package/build/provider/ShadowsocksJsonSubscribeProvider.js.map +0 -1
  102. package/build/provider/ShadowsocksSubscribeProvider.d.ts +0 -18
  103. package/build/provider/ShadowsocksSubscribeProvider.js +0 -84
  104. package/build/provider/ShadowsocksSubscribeProvider.js.map +0 -1
  105. package/build/provider/ShadowsocksrSubscribeProvider.d.ts +0 -15
  106. package/build/provider/ShadowsocksrSubscribeProvider.js +0 -93
  107. package/build/provider/ShadowsocksrSubscribeProvider.js.map +0 -1
  108. package/build/provider/SsdProvider.d.ts +0 -39
  109. package/build/provider/SsdProvider.js +0 -138
  110. package/build/provider/SsdProvider.js.map +0 -1
  111. package/build/provider/TrojanProvider.d.ts +0 -24
  112. package/build/provider/TrojanProvider.js +0 -98
  113. package/build/provider/TrojanProvider.js.map +0 -1
  114. package/build/provider/V2rayNSubscribeProvider.d.ts +0 -25
  115. package/build/provider/V2rayNSubscribeProvider.js +0 -181
  116. package/build/provider/V2rayNSubscribeProvider.js.map +0 -1
  117. package/build/provider/index.d.ts +0 -17
  118. package/build/provider/index.js +0 -54
  119. package/build/provider/index.js.map +0 -1
  120. package/build/provider/types.d.ts +0 -18
  121. package/build/provider/types.js +0 -3
  122. package/build/provider/types.js.map +0 -1
  123. package/build/redis.d.ts +0 -9
  124. package/build/redis.js +0 -63
  125. package/build/redis.js.map +0 -1
  126. package/build/types.d.ts +0 -138
  127. package/build/types.js +0 -31
  128. package/build/types.js.map +0 -1
  129. package/build/utils/cache.d.ts +0 -23
  130. package/build/utils/cache.js +0 -98
  131. package/build/utils/cache.js.map +0 -1
  132. package/build/utils/clash.d.ts +0 -3
  133. package/build/utils/clash.js +0 -448
  134. package/build/utils/clash.js.map +0 -1
  135. package/build/utils/constant.d.ts +0 -1
  136. package/build/utils/constant.js +0 -19
  137. package/build/utils/constant.js.map +0 -1
  138. package/build/utils/dns.d.ts +0 -4
  139. package/build/utils/dns.js +0 -51
  140. package/build/utils/dns.js.map +0 -1
  141. package/build/utils/doctor.d.ts +0 -2
  142. package/build/utils/doctor.js +0 -38
  143. package/build/utils/doctor.js.map +0 -1
  144. package/build/utils/env-flag.d.ts +0 -9
  145. package/build/utils/env-flag.js +0 -41
  146. package/build/utils/env-flag.js.map +0 -1
  147. package/build/utils/error-helper.d.ts +0 -2
  148. package/build/utils/error-helper.js +0 -62
  149. package/build/utils/error-helper.js.map +0 -1
  150. package/build/utils/errors.d.ts +0 -19
  151. package/build/utils/errors.js +0 -60
  152. package/build/utils/errors.js.map +0 -1
  153. package/build/utils/flag.d.ts +0 -3
  154. package/build/utils/flag.js +0 -79
  155. package/build/utils/flag.js.map +0 -1
  156. package/build/utils/http-client.d.ts +0 -3
  157. package/build/utils/http-client.js +0 -82
  158. package/build/utils/http-client.js.map +0 -1
  159. package/build/utils/index.d.ts +0 -90
  160. package/build/utils/index.js +0 -529
  161. package/build/utils/index.js.map +0 -1
  162. package/build/utils/linter.d.ts +0 -4
  163. package/build/utils/linter.js +0 -49
  164. package/build/utils/linter.js.map +0 -1
  165. package/build/utils/loon.d.ts +0 -3
  166. package/build/utils/loon.js +0 -236
  167. package/build/utils/loon.js.map +0 -1
  168. package/build/utils/quantumult.d.ts +0 -6
  169. package/build/utils/quantumult.js +0 -240
  170. package/build/utils/quantumult.js.map +0 -1
  171. package/build/utils/relayable-url.d.ts +0 -1
  172. package/build/utils/relayable-url.js +0 -18
  173. package/build/utils/relayable-url.js.map +0 -1
  174. package/build/utils/remote-snippet.d.ts +0 -8
  175. package/build/utils/remote-snippet.js +0 -198
  176. package/build/utils/remote-snippet.js.map +0 -1
  177. package/build/utils/singbox.d.ts +0 -3
  178. package/build/utils/singbox.js +0 -377
  179. package/build/utils/singbox.js.map +0 -1
  180. package/build/utils/ss.d.ts +0 -3
  181. package/build/utils/ss.js +0 -97
  182. package/build/utils/ss.js.map +0 -1
  183. package/build/utils/ssr.d.ts +0 -7
  184. package/build/utils/ssr.js +0 -53
  185. package/build/utils/ssr.js.map +0 -1
  186. package/build/utils/subscription.d.ts +0 -11
  187. package/build/utils/subscription.js +0 -68
  188. package/build/utils/subscription.js.map +0 -1
  189. package/build/utils/surfboard.d.ts +0 -7
  190. package/build/utils/surfboard.js +0 -184
  191. package/build/utils/surfboard.js.map +0 -1
  192. package/build/utils/surge.d.ts +0 -8
  193. package/build/utils/surge.js +0 -407
  194. package/build/utils/surge.js.map +0 -1
  195. package/build/utils/time.d.ts +0 -1
  196. package/build/utils/time.js +0 -6
  197. package/build/utils/time.js.map +0 -1
  198. package/build/utils/tmp-helper.d.ts +0 -30
  199. package/build/utils/tmp-helper.js +0 -102
  200. package/build/utils/tmp-helper.js.map +0 -1
  201. package/build/utils/trojan.d.ts +0 -2
  202. package/build/utils/trojan.js +0 -38
  203. package/build/utils/trojan.js.map +0 -1
  204. package/build/utils/useragent.d.ts +0 -18
  205. package/build/utils/useragent.js +0 -210
  206. package/build/utils/useragent.js.map +0 -1
  207. package/build/validators/artifact.d.ts +0 -44
  208. package/build/validators/artifact.js +0 -26
  209. package/build/validators/artifact.js.map +0 -1
  210. package/build/validators/common.d.ts +0 -377
  211. package/build/validators/common.js +0 -106
  212. package/build/validators/common.js.map +0 -1
  213. package/build/validators/filter.d.ts +0 -10
  214. package/build/validators/filter.js +0 -15
  215. package/build/validators/filter.js.map +0 -1
  216. package/build/validators/hooks.d.ts +0 -9
  217. package/build/validators/hooks.js +0 -11
  218. package/build/validators/hooks.js.map +0 -1
  219. package/build/validators/http.d.ts +0 -366
  220. package/build/validators/http.js +0 -23
  221. package/build/validators/http.js.map +0 -1
  222. package/build/validators/hysteria2.d.ts +0 -196
  223. package/build/validators/hysteria2.js +0 -15
  224. package/build/validators/hysteria2.js.map +0 -1
  225. package/build/validators/index.d.ts +0 -17
  226. package/build/validators/index.js +0 -34
  227. package/build/validators/index.js.map +0 -1
  228. package/build/validators/provider.d.ts +0 -120
  229. package/build/validators/provider.js +0 -46
  230. package/build/validators/provider.js.map +0 -1
  231. package/build/validators/shadowsocks.d.ts +0 -252
  232. package/build/validators/shadowsocks.js +0 -31
  233. package/build/validators/shadowsocks.js.map +0 -1
  234. package/build/validators/shadowsocksr.d.ts +0 -184
  235. package/build/validators/shadowsocksr.js +0 -19
  236. package/build/validators/shadowsocksr.js.map +0 -1
  237. package/build/validators/snell.d.ts +0 -178
  238. package/build/validators/snell.js +0 -17
  239. package/build/validators/snell.js.map +0 -1
  240. package/build/validators/socks5.d.ts +0 -196
  241. package/build/validators/socks5.js +0 -15
  242. package/build/validators/socks5.js.map +0 -1
  243. package/build/validators/surgio-config.d.ts +0 -387
  244. package/build/validators/surgio-config.js +0 -101
  245. package/build/validators/surgio-config.js.map +0 -1
  246. package/build/validators/trojan.d.ts +0 -255
  247. package/build/validators/trojan.js +0 -16
  248. package/build/validators/trojan.js.map +0 -1
  249. package/build/validators/tuic.d.ts +0 -741
  250. package/build/validators/tuic.js +0 -21
  251. package/build/validators/tuic.js.map +0 -1
  252. package/build/validators/vless.d.ts +0 -389
  253. package/build/validators/vless.js +0 -31
  254. package/build/validators/vless.js.map +0 -1
  255. package/build/validators/vmess.d.ts +0 -425
  256. package/build/validators/vmess.js +0 -86
  257. package/build/validators/vmess.js.map +0 -1
  258. package/build/validators/wireguard.d.ts +0 -230
  259. package/build/validators/wireguard.js +0 -26
  260. package/build/validators/wireguard.js.map +0 -1
@@ -1,37 +0,0 @@
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
- // istanbul ignore file
7
- const core_1 = require("@oclif/core");
8
- const base_command_1 = __importDefault(require("../base-command"));
9
- const linter_1 = require("../utils/linter");
10
- class LintCommand extends base_command_1.default {
11
- static description = '运行 JS 语法检查';
12
- async run() {
13
- let result;
14
- if (this.flags.fix) {
15
- result = await (0, linter_1.checkAndFix)(this.projectDir);
16
- }
17
- else {
18
- result = await (0, linter_1.check)(this.projectDir);
19
- }
20
- if (!result) {
21
- console.warn('⚠️ JS 语法检查不通过,请根据提示修改文件(可添加参数 --fix 自动修复部分错误, 参考 https://url.royli.dev/SeB6m)');
22
- process.exit(1);
23
- }
24
- else {
25
- console.log('✅ JS 语法检查通过');
26
- }
27
- await this.cleanup();
28
- }
29
- }
30
- LintCommand.flags = {
31
- fix: core_1.Flags.boolean({
32
- default: false,
33
- description: '自动修复部分 Lint 错误',
34
- }),
35
- };
36
- exports.default = LintCommand;
37
- //# sourceMappingURL=lint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":";;;;;AAAA,uBAAuB;AACvB,sCAAmC;AAEnC,mEAAyC;AACzC,4CAAoD;AAEpD,MAAM,WAAY,SAAQ,sBAA+B;IACvD,MAAM,CAAC,WAAW,GAAG,YAAY,CAAA;IAE1B,KAAK,CAAC,GAAG;QACd,IAAI,MAAM,CAAA;QAEV,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACnB,MAAM,GAAG,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC7C,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,IAAA,cAAK,EAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CACV,gFAAgF,CACjF,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC7B,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;IACtB,CAAC;;AAGH,WAAW,CAAC,KAAK,GAAG;IAClB,GAAG,EAAE,YAAK,CAAC,OAAO,CAAC;QACjB,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,gBAAgB;KAC9B,CAAC;CACH,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -1,6 +0,0 @@
1
- import BaseCommand from '../base-command';
2
- declare class NewCommand extends BaseCommand<typeof NewCommand> {
3
- static description: string;
4
- run(): Promise<void>;
5
- }
6
- export default NewCommand;
@@ -1,37 +0,0 @@
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
- // istanbul ignore file
7
- const path_1 = require("path");
8
- const core_1 = require("@oclif/core");
9
- const hygen_1 = require("@royli/hygen");
10
- const base_command_1 = __importDefault(require("../base-command"));
11
- const defaultTemplates = (0, path_1.join)(__dirname, '../../hygen-template');
12
- class NewCommand extends base_command_1.default {
13
- static description = '新建文件助手';
14
- async run() {
15
- const args = [...this.argv].concat('new'); // [type] new ...
16
- await (0, hygen_1.runner)(args, {
17
- templates: defaultTemplates,
18
- cwd: this.projectDir,
19
- logger: new hygen_1.Logger(console.log.bind(console)),
20
- createPrompter: () => require('inquirer'),
21
- exec: async (action, body) => {
22
- const opts = body && body.length > 0 ? { input: body } : {};
23
- await require('execa')(action, opts);
24
- },
25
- });
26
- await this.cleanup();
27
- }
28
- }
29
- NewCommand.args = {
30
- type: core_1.Args.custom({
31
- description: '文件类型',
32
- required: true,
33
- options: ['provider', 'template', 'artifact'],
34
- })(),
35
- };
36
- exports.default = NewCommand;
37
- //# sourceMappingURL=new.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":";;;;;AAAA,uBAAuB;AACvB,+BAA2B;AAC3B,sCAAkC;AAClC,wCAA6C;AAE7C,mEAAyC;AACzC,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,sBAAsB,CAAC,CAAA;AAEhE,MAAM,UAAW,SAAQ,sBAA8B;IACrD,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAA;IAEtB,KAAK,CAAC,GAAG;QACd,MAAM,IAAI,GAAa,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,CAAC,iBAAiB;QAErE,MAAM,IAAA,cAAM,EAAC,IAAI,EAAE;YACjB,SAAS,EAAE,gBAAgB;YAC3B,GAAG,EAAE,IAAI,CAAC,UAAU;YACpB,MAAM,EAAE,IAAI,cAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7C,cAAc,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;YACzC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAC3B,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC3D,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACtC,CAAC;SACF,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;IACtB,CAAC;;AAGH,UAAU,CAAC,IAAI,GAAG;IAChB,IAAI,EAAE,WAAI,CAAC,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;KAC9C,CAAC,EAAE;CACL,CAAA;AAED,kBAAe,UAAU,CAAA"}
@@ -1,7 +0,0 @@
1
- import BaseCommand from '../base-command';
2
- declare class SubscriptionsCommand extends BaseCommand<typeof SubscriptionsCommand> {
3
- static description: string;
4
- run(): Promise<void>;
5
- private listProviders;
6
- }
7
- export default SubscriptionsCommand;
@@ -1,95 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- // istanbul ignore file
30
- const fs_1 = require("fs");
31
- const path_1 = require("path");
32
- const logger_1 = require("@surgio/logger");
33
- const base_command_1 = __importDefault(require("../base-command"));
34
- const provider_1 = require("../provider");
35
- const utils_1 = require("../utils");
36
- const logger = (0, logger_1.createLogger)({
37
- service: 'surgio:SubscriptionsCommand',
38
- });
39
- class SubscriptionsCommand extends base_command_1.default {
40
- static description = '查询订阅信息';
41
- async run() {
42
- const providerList = await this.listProviders();
43
- for (const provider of providerList) {
44
- if (provider.supportGetSubscriptionUserInfo) {
45
- const userInfo = await provider.getSubscriptionUserInfo();
46
- if (userInfo) {
47
- const format = (0, utils_1.formatSubscriptionUserInfo)(userInfo);
48
- console.log('🤟 %s 已用流量:%s 剩余流量:%s 有效期至:%s', provider.name, format.used, format.left, format.expire);
49
- }
50
- else {
51
- console.log('⚠️ 无法查询 %s 的流量信息', provider.name);
52
- }
53
- }
54
- else {
55
- console.log('⚠️ 无法查询 %s 的流量信息', provider.name);
56
- }
57
- }
58
- await this.cleanup();
59
- }
60
- async listProviders() {
61
- const files = await fs_1.promises.readdir(this.surgioConfig.providerDir, {
62
- encoding: 'utf8',
63
- });
64
- const providerList = [];
65
- async function readProvider(path) {
66
- let provider;
67
- try {
68
- const providerName = (0, path_1.basename)(path, '.js');
69
- const module = await Promise.resolve(`${path}`).then(s => __importStar(require(s)));
70
- logger.debug('read %s %s', providerName, path);
71
- // eslint-disable-next-line prefer-const
72
- provider = await (0, provider_1.getProvider)(providerName, module.default);
73
- }
74
- catch (err) {
75
- logger.debug(`${path} 不是一个合法的模块`);
76
- return undefined;
77
- }
78
- if (!provider?.type) {
79
- logger.debug(`${path} 不是一个 Provider`);
80
- return undefined;
81
- }
82
- logger.debug('got provider %j', provider);
83
- return provider;
84
- }
85
- for (const file of files) {
86
- const result = await readProvider((0, path_1.join)(this.surgioConfig.providerDir, file));
87
- if (result) {
88
- providerList.push(result);
89
- }
90
- }
91
- return providerList;
92
- }
93
- }
94
- exports.default = SubscriptionsCommand;
95
- //# sourceMappingURL=subscriptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subscriptions.js","sourceRoot":"","sources":["../../src/commands/subscriptions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import BaseCommand from '../base-command';
2
- declare class UploadCommand extends BaseCommand<typeof UploadCommand> {
3
- static description: string;
4
- run(): Promise<void>;
5
- }
6
- export default UploadCommand;
@@ -1,91 +0,0 @@
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
- // istanbul ignore file
7
- const path_1 = __importDefault(require("path"));
8
- const core_1 = require("@oclif/core");
9
- const ali_oss_1 = __importDefault(require("ali-oss"));
10
- const fs_extra_1 = __importDefault(require("fs-extra"));
11
- const node_dir_1 = __importDefault(require("node-dir"));
12
- const base_command_1 = __importDefault(require("../base-command"));
13
- const config_1 = require("../config");
14
- class UploadCommand extends base_command_1.default {
15
- static description = '上传规则到阿里云 OSS';
16
- async run() {
17
- const config = this.surgioConfig;
18
- if (this.flags.output) {
19
- (0, config_1.setConfig)('output', this.flags.output);
20
- }
21
- const region = config?.upload?.region;
22
- const bucket = config?.upload?.bucket;
23
- const endpoint = config?.upload?.endpoint;
24
- const accessKeyId = process.env.OSS_ACCESS_KEY_ID ?? config?.upload?.accessKeyId;
25
- const accessKeySecret = process.env.OSS_ACCESS_KEY_SECRET ?? config?.upload?.accessKeySecret;
26
- if (!accessKeyId || !accessKeySecret) {
27
- throw new Error('请在配置文件中配置 OSS 的 accessKeyId 和 accessKeySecret');
28
- }
29
- const client = new ali_oss_1.default({
30
- secure: true,
31
- region,
32
- bucket,
33
- endpoint,
34
- accessKeyId,
35
- accessKeySecret,
36
- });
37
- const prefix = config?.upload?.prefix || '/';
38
- const fileList = await node_dir_1.default.promiseFiles(config.output);
39
- const files = fileList.map((filePath) => ({
40
- fileName: path_1.default.basename(filePath),
41
- filePath,
42
- }));
43
- const fileNameList = files.map((file) => file.fileName);
44
- const upload = () => {
45
- return Promise.all(files.map((file) => {
46
- const { fileName, filePath } = file;
47
- const objectName = `${prefix}${fileName}`;
48
- const readStream = fs_extra_1.default.createReadStream(filePath);
49
- return client.put(objectName, readStream, {
50
- mime: 'text/plain; charset=utf-8',
51
- headers: {
52
- 'Cache-Control': 'private, no-cache, no-store',
53
- },
54
- });
55
- }));
56
- };
57
- const deleteUnwanted = async () => {
58
- const list = await client.list({
59
- prefix,
60
- delimiter: '/',
61
- 'max-keys': 100,
62
- }, {});
63
- const deleteList = [];
64
- for (const key in list.objects) {
65
- if (list.objects.hasOwnProperty(key)) {
66
- const object = list.objects[key];
67
- const objectName = object.name.replace(prefix, '');
68
- const isExist = fileNameList.indexOf(objectName) > -1;
69
- if (objectName && !isExist) {
70
- deleteList.push(object.name);
71
- }
72
- }
73
- }
74
- if (deleteList.length) {
75
- await client.deleteMulti(deleteList);
76
- }
77
- };
78
- this.ora.start('开始上传到阿里云 OSS');
79
- await upload();
80
- await deleteUnwanted();
81
- await this.cleanup();
82
- }
83
- }
84
- UploadCommand.flags = {
85
- output: core_1.Flags.string({
86
- char: 'o',
87
- description: '生成规则的目录',
88
- }),
89
- };
90
- exports.default = UploadCommand;
91
- //# sourceMappingURL=upload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/commands/upload.ts"],"names":[],"mappings":"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"}
package/build/config.d.ts DELETED
@@ -1,6 +0,0 @@
1
- import { CommandConfig, CommandConfigBeforeNormalize } from './types';
2
- export declare const loadConfig: (cwd: string, override?: Partial<CommandConfig>) => CommandConfig;
3
- export declare const getConfig: () => CommandConfig;
4
- export declare const setConfig: <T extends "customParams" | "customFilters" | "resolveHostname" | "surgeConfig" | "surfboardConfig" | "quantumultXConfig" | "clashConfig" | "binPath" | "artifacts" | "remoteSnippets" | "urlBase" | "upload" | "flags" | "gateway" | "checkHostname" | "proxyTestUrl" | "proxyTestInterval" | "internetTestUrl" | "internetTestInterval" | "analytics" | "cache" | "publicUrl" | "output" | "providerDir" | "templateDir" | "configDir">(key: T, value: CommandConfig[T]) => CommandConfig;
5
- export declare const normalizeConfig: (cwd: string, userConfig: Partial<CommandConfigBeforeNormalize>) => CommandConfig;
6
- export declare const validateConfig: (userConfig: Partial<CommandConfig>) => CommandConfigBeforeNormalize;
package/build/config.js DELETED
@@ -1,156 +0,0 @@
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.validateConfig = exports.normalizeConfig = exports.setConfig = exports.getConfig = exports.loadConfig = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const url_1 = require("url");
9
- const fs_extra_1 = __importDefault(require("fs-extra"));
10
- const lodash_1 = __importDefault(require("lodash"));
11
- const constant_1 = require("./constant");
12
- const redis_1 = __importDefault(require("./redis"));
13
- const validators_1 = require("./validators");
14
- const flag_1 = require("./utils/flag");
15
- const utils_1 = require("./utils");
16
- let finalConfig = null;
17
- const loadConfig = (cwd, override) => {
18
- const absPath = path_1.default.join(cwd, 'surgio.conf.js');
19
- // istanbul ignore next
20
- if (!fs_extra_1.default.existsSync(absPath)) {
21
- throw new Error(`配置文件 ${absPath} 不存在`);
22
- }
23
- const userConfig = (0, exports.validateConfig)(lodash_1.default.cloneDeep(require(absPath)));
24
- if (userConfig.flags) {
25
- Object.keys(userConfig.flags).forEach((emoji) => {
26
- if (userConfig.flags) {
27
- if (typeof userConfig.flags[emoji] === 'string') {
28
- (0, flag_1.addFlagMap)(userConfig.flags[emoji], emoji);
29
- }
30
- else if (lodash_1.default.isRegExp(userConfig.flags[emoji])) {
31
- (0, flag_1.addFlagMap)(userConfig.flags[emoji], emoji);
32
- }
33
- else {
34
- ;
35
- userConfig.flags[emoji].forEach((name) => {
36
- (0, flag_1.addFlagMap)(name, emoji);
37
- });
38
- }
39
- }
40
- });
41
- }
42
- if (override) {
43
- return {
44
- ...(0, exports.normalizeConfig)(cwd, userConfig),
45
- ...override,
46
- };
47
- }
48
- finalConfig = (0, exports.normalizeConfig)(cwd, userConfig);
49
- return finalConfig;
50
- };
51
- exports.loadConfig = loadConfig;
52
- const getConfig = () => {
53
- // istanbul ignore next
54
- if (!finalConfig) {
55
- throw new Error('请先调用 loadConfig 方法');
56
- }
57
- return finalConfig;
58
- };
59
- exports.getConfig = getConfig;
60
- const setConfig = (key, value) => {
61
- // istanbul ignore next
62
- if (!finalConfig) {
63
- throw new Error('请先调用 loadConfig 方法');
64
- }
65
- if (lodash_1.default.isPlainObject(value)) {
66
- finalConfig[key] = {
67
- ...finalConfig[key],
68
- ...value,
69
- };
70
- }
71
- else {
72
- finalConfig[key] = value;
73
- }
74
- return finalConfig;
75
- };
76
- exports.setConfig = setConfig;
77
- const normalizeConfig = (cwd, userConfig) => {
78
- const defaultConfig = {
79
- artifacts: [],
80
- urlBase: '/',
81
- output: path_1.default.join(cwd, './dist'),
82
- templateDir: path_1.default.join(cwd, './template'),
83
- providerDir: path_1.default.join(cwd, './provider'),
84
- configDir: (0, utils_1.ensureConfigFolder)(),
85
- surgeConfig: {
86
- resolveHostname: false,
87
- vmessAEAD: true,
88
- },
89
- clashConfig: {
90
- enableShadowTls: false,
91
- enableTuic: false,
92
- enableHysteria2: false,
93
- enableVless: false,
94
- clashCore: 'clash',
95
- },
96
- quantumultXConfig: {
97
- vmessAEAD: true,
98
- },
99
- surfboardConfig: {
100
- vmessAEAD: true,
101
- },
102
- proxyTestUrl: constant_1.PROXY_TEST_URL,
103
- proxyTestInterval: constant_1.PROXY_TEST_INTERVAL,
104
- internetTestUrl: constant_1.INTERNET_TEST_URL,
105
- internetTestInterval: constant_1.INTERNET_TEST_INTERVAL,
106
- checkHostname: false,
107
- resolveHostname: false,
108
- cache: {
109
- type: 'default',
110
- },
111
- gateway: {
112
- passRequestUserAgent: false,
113
- },
114
- };
115
- const config = lodash_1.default.defaultsDeep(userConfig, defaultConfig);
116
- // istanbul ignore next
117
- if (!fs_extra_1.default.existsSync(config.templateDir)) {
118
- throw new Error(`仓库内缺少 ${config.templateDir} 目录`);
119
- }
120
- // istanbul ignore next
121
- if (!fs_extra_1.default.existsSync(config.providerDir)) {
122
- throw new Error(`仓库内缺少 ${config.providerDir} 目录`);
123
- }
124
- if (/http/i.test(config.urlBase)) {
125
- const urlObject = new url_1.URL(config.urlBase);
126
- config.publicUrl = urlObject.origin + '/';
127
- }
128
- else {
129
- config.publicUrl = '/';
130
- }
131
- // istanbul ignore next
132
- if (config.cache && config.cache.type === 'redis') {
133
- if (!config.cache.redisUrl) {
134
- throw new Error('缓存配置错误,请检查 cache.redisUrl 配置');
135
- }
136
- redis_1.default.createRedis(config.cache.redisUrl);
137
- }
138
- // istanbul ignore next
139
- if (config.gateway) {
140
- if (config.gateway.auth && !config.gateway.accessToken) {
141
- throw new Error('请检查 gateway.accessToken 配置');
142
- }
143
- }
144
- return config;
145
- };
146
- exports.normalizeConfig = normalizeConfig;
147
- const validateConfig = (userConfig) => {
148
- const result = validators_1.SurgioConfigValidator.safeParse(userConfig);
149
- // istanbul ignore next
150
- if (!result.success) {
151
- throw result.error;
152
- }
153
- return result.data;
154
- };
155
- exports.validateConfig = validateConfig;
156
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AACvB,6BAAyB;AACzB,wDAAyB;AACzB,oDAAsB;AAEtB,yCAKmB;AACnB,oDAA2B;AAE3B,6CAAoD;AACpD,uCAAyC;AACzC,mCAA4C;AAE5C,IAAI,WAAW,GAAyB,IAAI,CAAA;AAErC,MAAM,UAAU,GAAG,CACxB,GAAW,EACX,QAAiC,EAClB,EAAE;IACjB,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAA;IAEhD,uBAAuB;IACvB,IAAI,CAAC,kBAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,MAAM,CAAC,CAAA;IACxC,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,sBAAc,EAAC,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAEhE,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC9C,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,IAAI,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;oBAChD,IAAA,iBAAU,EAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAW,EAAE,KAAK,CAAC,CAAA;gBACtD,CAAC;qBAAM,IAAI,gBAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC/C,IAAA,iBAAU,EAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAW,EAAE,KAAK,CAAC,CAAA;gBACtD,CAAC;qBAAM,CAAC;oBACN,CAAC;oBAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAoC,CAAC,OAAO,CAClE,CAAC,IAAI,EAAE,EAAE;wBACP,IAAA,iBAAU,EAAC,IAAI,EAAE,KAAK,CAAC,CAAA;oBACzB,CAAC,CACF,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,GAAG,IAAA,uBAAe,EAAC,GAAG,EAAE,UAAU,CAAC;YACnC,GAAG,QAAQ;SACZ,CAAA;IACH,CAAC;IAED,WAAW,GAAG,IAAA,uBAAe,EAAC,GAAG,EAAE,UAAU,CAAC,CAAA;IAE9C,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAzCY,QAAA,UAAU,cAyCtB;AAEM,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,uBAAuB;IACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAPY,QAAA,SAAS,aAOrB;AAEM,MAAM,SAAS,GAAG,CACvB,GAAM,EACN,KAAuB,EACR,EAAE;IACjB,uBAAuB;IACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IAED,IAAI,gBAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,WAAW,CAAC,GAAG,CAAC,GAAG;YACjB,GAAI,WAAW,CAAC,GAAG,CAAY;YAC/B,GAAI,KAAgB;SACD,CAAA;IACvB,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAnBY,QAAA,SAAS,aAmBrB;AAEM,MAAM,eAAe,GAAG,CAC7B,GAAW,EACX,UAAiD,EAClC,EAAE;IACjB,MAAM,aAAa,GAA2B;QAC5C,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,GAAG;QACZ,MAAM,EAAE,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC;QAChC,WAAW,EAAE,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC;QACzC,WAAW,EAAE,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC;QACzC,SAAS,EAAE,IAAA,0BAAkB,GAAE;QAC/B,WAAW,EAAE;YACX,eAAe,EAAE,KAAK;YACtB,SAAS,EAAE,IAAI;SAChB;QACD,WAAW,EAAE;YACX,eAAe,EAAE,KAAK;YACtB,UAAU,EAAE,KAAK;YACjB,eAAe,EAAE,KAAK;YACtB,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,OAAO;SACnB;QACD,iBAAiB,EAAE;YACjB,SAAS,EAAE,IAAI;SAChB;QACD,eAAe,EAAE;YACf,SAAS,EAAE,IAAI;SAChB;QACD,YAAY,EAAE,yBAAc;QAC5B,iBAAiB,EAAE,8BAAmB;QACtC,eAAe,EAAE,4BAAiB;QAClC,oBAAoB,EAAE,iCAAsB;QAC5C,aAAa,EAAE,KAAK;QACpB,eAAe,EAAE,KAAK;QACtB,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;SAChB;QACD,OAAO,EAAE;YACP,oBAAoB,EAAE,KAAK;SAC5B;KACF,CAAA;IACD,MAAM,MAAM,GAAkB,gBAAC,CAAC,YAAY,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IAEvE,uBAAuB;IACvB,IAAI,CAAC,kBAAE,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,CAAC,WAAW,KAAK,CAAC,CAAA;IACnD,CAAC;IACD,uBAAuB;IACvB,IAAI,CAAC,kBAAE,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,CAAC,WAAW,KAAK,CAAC,CAAA;IACnD,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,SAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACzC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,GAAG,CAAA;IAC3C,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,SAAS,GAAG,GAAG,CAAA;IACxB,CAAC;IAED,uBAAuB;IACvB,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACjD,CAAC;QAED,eAAK,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAED,uBAAuB;IACvB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AA5EY,QAAA,eAAe,mBA4E3B;AAEM,MAAM,cAAc,GAAG,CAC5B,UAAkC,EACJ,EAAE;IAChC,MAAM,MAAM,GAAG,kCAAqB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IAE1D,uBAAuB;IACvB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC,KAAK,CAAA;IACpB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAA;AAXY,QAAA,cAAc,kBAW1B"}
@@ -1,88 +0,0 @@
1
- import { Promisable } from 'type-fest';
2
- import { BlackSSLProviderConfig, ClashProviderConfig, CommandConfigBeforeNormalize, CustomProviderConfig, PossibleProviderConfigType, ShadowsocksJsonSubscribeProviderConfig, ShadowsocksrSubscribeProviderConfig, ShadowsocksSubscribeProviderConfig, SsdProviderConfig, TrojanProviderConfig, V2rayNSubscribeProviderConfig } from './types';
3
- export declare const defineSurgioConfig: (config: CommandConfigBeforeNormalize) => {
4
- artifacts: {
5
- name: string;
6
- template: string;
7
- provider: string;
8
- templateType?: "default" | "json" | undefined;
9
- extendTemplate?: ((args_0: unknown, ...args_1: unknown[]) => unknown) | undefined;
10
- categories?: string[] | undefined;
11
- combineProviders?: string[] | undefined;
12
- customParams?: Record<string, any> | undefined;
13
- customFilters?: Record<string, (...args: unknown[]) => unknown> | undefined;
14
- destDir?: string | undefined;
15
- downloadUrl?: string | undefined;
16
- templateString?: string | undefined;
17
- subscriptionUserInfoProvider?: string | undefined;
18
- }[];
19
- remoteSnippets?: {
20
- name: string;
21
- url: string;
22
- surgioSnippet?: boolean | undefined;
23
- }[] | undefined;
24
- urlBase?: string | undefined;
25
- upload?: {
26
- bucket: string;
27
- accessKeyId: string;
28
- accessKeySecret: string;
29
- prefix?: string | undefined;
30
- region?: string | undefined;
31
- endpoint?: string | undefined;
32
- } | undefined;
33
- binPath?: {
34
- shadowsocksr: string;
35
- } | undefined;
36
- flags?: Record<string, string | RegExp | (string | RegExp)[]> | undefined;
37
- surgeConfig?: {
38
- resolveHostname?: boolean | undefined;
39
- vmessAEAD?: boolean | undefined;
40
- } | undefined;
41
- surfboardConfig?: {
42
- vmessAEAD?: boolean | undefined;
43
- } | undefined;
44
- quantumultXConfig?: {
45
- vmessAEAD?: boolean | undefined;
46
- } | undefined;
47
- clashConfig?: {
48
- enableTuic?: boolean | undefined;
49
- enableShadowTls?: boolean | undefined;
50
- enableHysteria2?: boolean | undefined;
51
- enableVless?: boolean | undefined;
52
- clashCore?: "clash" | "clash.meta" | "stash" | undefined;
53
- } | undefined;
54
- gateway?: {
55
- accessToken?: string | undefined;
56
- viewerToken?: string | undefined;
57
- auth?: boolean | undefined;
58
- cookieMaxAge?: number | undefined;
59
- useCacheOnError?: boolean | undefined;
60
- passRequestUserAgent?: boolean | undefined;
61
- } | undefined;
62
- checkHostname?: boolean | undefined;
63
- resolveHostname?: boolean | undefined;
64
- proxyTestUrl?: string | undefined;
65
- proxyTestInterval?: number | undefined;
66
- internetTestUrl?: string | undefined;
67
- internetTestInterval?: number | undefined;
68
- customFilters?: Record<string, ((nodeConfig: import("./types").PossibleNodeConfigType) => boolean) | {
69
- readonly filter: <T extends import("./types").PossibleNodeConfigType>(nodeList: readonly T[]) => readonly T[];
70
- readonly supportSort: true;
71
- }> | undefined;
72
- customParams?: Record<string, any> | undefined;
73
- analytics?: boolean | undefined;
74
- cache?: {
75
- type?: "default" | "redis" | undefined;
76
- redisUrl?: string | undefined;
77
- } | undefined;
78
- };
79
- export type ProviderDefineFunction<T extends PossibleProviderConfigType, U = Omit<T, 'type'>> = (config: U) => T | Promisable<T>;
80
- export declare const defineBlackSSLProvider: ProviderDefineFunction<BlackSSLProviderConfig>;
81
- export declare const defineClashProvider: ProviderDefineFunction<ClashProviderConfig>;
82
- export declare const defineCustomProvider: ProviderDefineFunction<CustomProviderConfig>;
83
- export declare const defineShadowsocksJsonSubscribeProvider: ProviderDefineFunction<ShadowsocksJsonSubscribeProviderConfig>;
84
- export declare const defineShadowsocksSubscribeProvider: ProviderDefineFunction<ShadowsocksSubscribeProviderConfig>;
85
- export declare const defineShadowsocksrSubscribeProvider: ProviderDefineFunction<ShadowsocksrSubscribeProviderConfig>;
86
- export declare const defineSsdProvider: ProviderDefineFunction<SsdProviderConfig>;
87
- export declare const defineTrojanProvider: ProviderDefineFunction<TrojanProviderConfig>;
88
- export declare const defineV2rayNSubscribeProvider: ProviderDefineFunction<V2rayNSubscribeProviderConfig>;
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defineV2rayNSubscribeProvider = exports.defineTrojanProvider = exports.defineSsdProvider = exports.defineShadowsocksrSubscribeProvider = exports.defineShadowsocksSubscribeProvider = exports.defineShadowsocksJsonSubscribeProvider = exports.defineCustomProvider = exports.defineClashProvider = exports.defineBlackSSLProvider = exports.defineSurgioConfig = void 0;
4
- const types_1 = require("./types");
5
- const defineSurgioConfig = (config) => config;
6
- exports.defineSurgioConfig = defineSurgioConfig;
7
- const defineBlackSSLProvider = (config) => ({
8
- ...config,
9
- type: types_1.SupportProviderEnum.BlackSSL,
10
- });
11
- exports.defineBlackSSLProvider = defineBlackSSLProvider;
12
- const defineClashProvider = (config) => ({
13
- ...config,
14
- type: types_1.SupportProviderEnum.Clash,
15
- });
16
- exports.defineClashProvider = defineClashProvider;
17
- const defineCustomProvider = (config) => ({
18
- ...config,
19
- type: types_1.SupportProviderEnum.Custom,
20
- });
21
- exports.defineCustomProvider = defineCustomProvider;
22
- const defineShadowsocksJsonSubscribeProvider = (config) => ({
23
- ...config,
24
- type: types_1.SupportProviderEnum.ShadowsocksJsonSubscribe,
25
- });
26
- exports.defineShadowsocksJsonSubscribeProvider = defineShadowsocksJsonSubscribeProvider;
27
- const defineShadowsocksSubscribeProvider = (config) => ({
28
- ...config,
29
- type: types_1.SupportProviderEnum.ShadowsocksSubscribe,
30
- });
31
- exports.defineShadowsocksSubscribeProvider = defineShadowsocksSubscribeProvider;
32
- const defineShadowsocksrSubscribeProvider = (config) => ({
33
- ...config,
34
- type: types_1.SupportProviderEnum.ShadowsocksrSubscribe,
35
- });
36
- exports.defineShadowsocksrSubscribeProvider = defineShadowsocksrSubscribeProvider;
37
- const defineSsdProvider = (config) => ({
38
- ...config,
39
- type: types_1.SupportProviderEnum.Ssd,
40
- });
41
- exports.defineSsdProvider = defineSsdProvider;
42
- const defineTrojanProvider = (config) => ({
43
- ...config,
44
- type: types_1.SupportProviderEnum.Trojan,
45
- });
46
- exports.defineTrojanProvider = defineTrojanProvider;
47
- const defineV2rayNSubscribeProvider = (config) => ({
48
- ...config,
49
- type: types_1.SupportProviderEnum.V2rayNSubscribe,
50
- });
51
- exports.defineV2rayNSubscribeProvider = defineV2rayNSubscribeProvider;
52
- //# sourceMappingURL=configurables.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"configurables.js","sourceRoot":"","sources":["../src/configurables.ts"],"names":[],"mappings":";;;AAEA,mCAagB;AAET,MAAM,kBAAkB,GAAG,CAAC,MAAoC,EAAE,EAAE,CACzE,MAAM,CAAA;AADK,QAAA,kBAAkB,sBACvB;AAOD,MAAM,sBAAsB,GAE/B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,QAAQ;CACnC,CAAC,CAAA;AALW,QAAA,sBAAsB,0BAKjC;AAEK,MAAM,mBAAmB,GAE5B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,KAAK;CAChC,CAAC,CAAA;AALW,QAAA,mBAAmB,uBAK9B;AAEK,MAAM,oBAAoB,GAE7B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,MAAM;CACjC,CAAC,CAAA;AALW,QAAA,oBAAoB,wBAK/B;AAEK,MAAM,sCAAsC,GAE/C,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,wBAAwB;CACnD,CAAC,CAAA;AALW,QAAA,sCAAsC,0CAKjD;AAEK,MAAM,kCAAkC,GAE3C,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,oBAAoB;CAC/C,CAAC,CAAA;AALW,QAAA,kCAAkC,sCAK7C;AAEK,MAAM,mCAAmC,GAE5C,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,qBAAqB;CAChD,CAAC,CAAA;AALW,QAAA,mCAAmC,uCAK9C;AAEK,MAAM,iBAAiB,GAA8C,CAC1E,MAAM,EACN,EAAE,CAAC,CAAC;IACJ,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,GAAG;CAC9B,CAAC,CAAA;AALW,QAAA,iBAAiB,qBAK5B;AAEK,MAAM,oBAAoB,GAE7B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,MAAM;CACjC,CAAC,CAAA;AALW,QAAA,oBAAoB,wBAK/B;AAEK,MAAM,6BAA6B,GAEtC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACf,GAAG,MAAM;IACT,IAAI,EAAE,2BAAmB,CAAC,eAAe;CAC1C,CAAC,CAAA;AALW,QAAA,6BAA6B,iCAKxC"}