surgio 3.0.0-alpha.0 → 3.0.0-alpha.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.
Files changed (190) hide show
  1. package/LICENSE +1 -1
  2. package/build/base-command.d.ts +1 -0
  3. package/build/base-command.js +2 -1
  4. package/build/base-command.js.map +1 -0
  5. package/build/commands/check.js +1 -1
  6. package/build/commands/check.js.map +1 -0
  7. package/build/commands/clean-cache.js +1 -1
  8. package/build/commands/clean-cache.js.map +1 -0
  9. package/build/commands/doctor.js +1 -1
  10. package/build/commands/doctor.js.map +1 -0
  11. package/build/commands/generate.js +2 -2
  12. package/build/commands/generate.js.map +1 -0
  13. package/build/commands/lint.js +1 -1
  14. package/build/commands/lint.js.map +1 -0
  15. package/build/commands/new.js +1 -1
  16. package/build/commands/new.js.map +1 -0
  17. package/build/commands/subscriptions.js +1 -1
  18. package/build/commands/subscriptions.js.map +1 -0
  19. package/build/commands/upload.js +3 -1
  20. package/build/commands/upload.js.map +1 -0
  21. package/build/config.js +1 -1
  22. package/build/config.js.map +1 -0
  23. package/build/{utils/configurables.d.ts → configurables.d.ts} +16 -7
  24. package/build/configurables.js +52 -0
  25. package/build/configurables.js.map +1 -0
  26. package/build/constant/constant.d.ts +0 -1
  27. package/build/constant/constant.js +2 -13
  28. package/build/constant/constant.js.map +1 -0
  29. package/build/constant/env.js +1 -1
  30. package/build/constant/env.js.map +1 -0
  31. package/build/constant/error.js +1 -1
  32. package/build/constant/error.js.map +1 -0
  33. package/build/constant/index.js +1 -1
  34. package/build/constant/index.js.map +1 -0
  35. package/build/generator/artifact.d.ts +7 -7
  36. package/build/generator/artifact.js +70 -28
  37. package/build/generator/artifact.js.map +1 -0
  38. package/build/generator/index.js +1 -1
  39. package/build/generator/index.js.map +1 -0
  40. package/build/generator/template.js +1 -23
  41. package/build/generator/template.js.map +1 -0
  42. package/build/hooks/init.js +2 -1
  43. package/build/hooks/init.js.map +1 -0
  44. package/build/index.d.ts +58 -58
  45. package/build/index.js +3 -5
  46. package/build/index.js.map +1 -0
  47. package/build/internal.d.ts +1 -0
  48. package/build/internal.js +6 -2
  49. package/build/internal.js.map +1 -0
  50. package/build/misc/deprecation.js +1 -1
  51. package/build/misc/deprecation.js.map +1 -0
  52. package/build/misc/flag_cn.d.ts +49 -50
  53. package/build/misc/flag_cn.js +3 -3
  54. package/build/misc/flag_cn.js.map +1 -0
  55. package/build/provider/BlackSSLProvider.js +8 -4
  56. package/build/provider/BlackSSLProvider.js.map +1 -0
  57. package/build/provider/ClashProvider.js +7 -4
  58. package/build/provider/ClashProvider.js.map +1 -0
  59. package/build/provider/CustomProvider.js +69 -56
  60. package/build/provider/CustomProvider.js.map +1 -0
  61. package/build/provider/Provider.js +5 -2
  62. package/build/provider/Provider.js.map +1 -0
  63. package/build/provider/ShadowsocksJsonSubscribeProvider.js +8 -4
  64. package/build/provider/ShadowsocksJsonSubscribeProvider.js.map +1 -0
  65. package/build/provider/ShadowsocksSubscribeProvider.js +7 -4
  66. package/build/provider/ShadowsocksSubscribeProvider.js.map +1 -0
  67. package/build/provider/ShadowsocksrSubscribeProvider.js +7 -4
  68. package/build/provider/ShadowsocksrSubscribeProvider.js.map +1 -0
  69. package/build/provider/SsdProvider.js +7 -4
  70. package/build/provider/SsdProvider.js.map +1 -0
  71. package/build/provider/TrojanProvider.js +7 -4
  72. package/build/provider/TrojanProvider.js.map +1 -0
  73. package/build/provider/V2rayNSubscribeProvider.js +7 -4
  74. package/build/provider/V2rayNSubscribeProvider.js.map +1 -0
  75. package/build/provider/index.d.ts +2 -2
  76. package/build/provider/index.js +1 -1
  77. package/build/provider/index.js.map +1 -0
  78. package/build/provider/types.d.ts +1 -1
  79. package/build/provider/types.js +1 -1
  80. package/build/provider/types.js.map +1 -0
  81. package/build/redis.js +1 -1
  82. package/build/redis.js.map +1 -0
  83. package/build/types.d.ts +0 -3
  84. package/build/types.js +1 -1
  85. package/build/types.js.map +1 -0
  86. package/build/utils/cache.js +1 -1
  87. package/build/utils/cache.js.map +1 -0
  88. package/build/utils/clash.d.ts +1 -1
  89. package/build/utils/clash.js +2 -2
  90. package/build/utils/clash.js.map +1 -0
  91. package/build/utils/constant.js +1 -1
  92. package/build/utils/constant.js.map +1 -0
  93. package/build/utils/dns.js +1 -1
  94. package/build/utils/dns.js.map +1 -0
  95. package/build/utils/doctor.js +1 -1
  96. package/build/utils/doctor.js.map +1 -0
  97. package/build/utils/env-flag.js +1 -1
  98. package/build/utils/env-flag.js.map +1 -0
  99. package/build/utils/error-helper.js +27 -6
  100. package/build/utils/error-helper.js.map +1 -0
  101. package/build/utils/errors.d.ts +19 -0
  102. package/build/utils/errors.js +60 -0
  103. package/build/utils/errors.js.map +1 -0
  104. package/build/utils/filter.js +7 -30
  105. package/build/utils/filter.js.map +1 -0
  106. package/build/utils/flag.js +6 -6
  107. package/build/utils/flag.js.map +1 -0
  108. package/build/utils/http-client.js +1 -1
  109. package/build/utils/http-client.js.map +1 -0
  110. package/build/utils/index.d.ts +1 -0
  111. package/build/utils/index.js +5 -2
  112. package/build/utils/index.js.map +1 -0
  113. package/build/utils/linter.js +1 -1
  114. package/build/utils/linter.js.map +1 -0
  115. package/build/utils/loon.js +1 -1
  116. package/build/utils/loon.js.map +1 -0
  117. package/build/utils/quantumult.js +1 -1
  118. package/build/utils/quantumult.js.map +1 -0
  119. package/build/utils/relayable-url.js +1 -1
  120. package/build/utils/relayable-url.js.map +1 -0
  121. package/build/utils/remote-snippet.js +35 -11
  122. package/build/utils/remote-snippet.js.map +1 -0
  123. package/build/utils/ss.js +1 -1
  124. package/build/utils/ss.js.map +1 -0
  125. package/build/utils/ssr.js +1 -1
  126. package/build/utils/ssr.js.map +1 -0
  127. package/build/utils/subscription.js +4 -3
  128. package/build/utils/subscription.js.map +1 -0
  129. package/build/utils/surfboard.js +1 -1
  130. package/build/utils/surfboard.js.map +1 -0
  131. package/build/utils/surge.js +1 -1
  132. package/build/utils/surge.js.map +1 -0
  133. package/build/utils/time.js +1 -1
  134. package/build/utils/time.js.map +1 -0
  135. package/build/utils/tmp-helper.js +1 -1
  136. package/build/utils/tmp-helper.js.map +1 -0
  137. package/build/utils/trojan.js +1 -1
  138. package/build/utils/trojan.js.map +1 -0
  139. package/build/validators/artifact.d.ts +3 -3
  140. package/build/validators/artifact.js +2 -2
  141. package/build/validators/artifact.js.map +1 -0
  142. package/build/validators/common.d.ts +20 -20
  143. package/build/validators/common.js +23 -10
  144. package/build/validators/common.js.map +1 -0
  145. package/build/validators/filter.js +1 -1
  146. package/build/validators/filter.js.map +1 -0
  147. package/build/validators/hooks.d.ts +4 -2
  148. package/build/validators/hooks.js +6 -3
  149. package/build/validators/hooks.js.map +1 -0
  150. package/build/validators/http.d.ts +40 -40
  151. package/build/validators/http.js +1 -1
  152. package/build/validators/http.js.map +1 -0
  153. package/build/validators/index.js +1 -1
  154. package/build/validators/index.js.map +1 -0
  155. package/build/validators/provider.d.ts +10 -5
  156. package/build/validators/provider.js +3 -2
  157. package/build/validators/provider.js.map +1 -0
  158. package/build/validators/shadowsocks.d.ts +16 -16
  159. package/build/validators/shadowsocks.js +1 -1
  160. package/build/validators/shadowsocks.js.map +1 -0
  161. package/build/validators/shadowsocksr.d.ts +16 -16
  162. package/build/validators/shadowsocksr.js +1 -1
  163. package/build/validators/shadowsocksr.js.map +1 -0
  164. package/build/validators/snell.d.ts +14 -14
  165. package/build/validators/snell.js +2 -5
  166. package/build/validators/snell.js.map +1 -0
  167. package/build/validators/socks5.d.ts +14 -14
  168. package/build/validators/socks5.js +1 -1
  169. package/build/validators/socks5.js.map +1 -0
  170. package/build/validators/surgio-config.d.ts +8 -8
  171. package/build/validators/surgio-config.js +2 -2
  172. package/build/validators/surgio-config.js.map +1 -0
  173. package/build/validators/trojan.d.ts +20 -20
  174. package/build/validators/trojan.js +1 -1
  175. package/build/validators/trojan.js.map +1 -0
  176. package/build/validators/tuic.d.ts +80 -80
  177. package/build/validators/tuic.js +1 -1
  178. package/build/validators/tuic.js.map +1 -0
  179. package/build/validators/vmess.d.ts +14 -14
  180. package/build/validators/vmess.js +1 -1
  181. package/build/validators/vmess.js.map +1 -0
  182. package/build/validators/wireguard.d.ts +12 -12
  183. package/build/validators/wireguard.js +1 -1
  184. package/build/validators/wireguard.js.map +1 -0
  185. package/package.json +12 -9
  186. package/build/generate.d.ts +0 -3
  187. package/build/generate.js +0 -13
  188. package/build/utils/configurables.js +0 -8
  189. package/build/utils/v2ray.d.ts +0 -4
  190. package/build/utils/v2ray.js +0 -41
@@ -1,24 +1,24 @@
1
1
  import { z } from 'zod';
2
2
  import { NodeTypeEnum } from '../types';
3
3
  export declare const VmessNodeConfigValidator: z.ZodObject<{
4
+ mptcp: z.ZodOptional<z.ZodBoolean>;
5
+ tfo: z.ZodOptional<z.ZodBoolean>;
6
+ underlyingProxy: z.ZodOptional<z.ZodString>;
4
7
  nodeName: z.ZodString;
5
8
  enable: z.ZodOptional<z.ZodBoolean>;
6
- tfo: z.ZodOptional<z.ZodBoolean>;
7
- mptcp: z.ZodOptional<z.ZodBoolean>;
8
9
  shadowTls: z.ZodOptional<z.ZodObject<{
9
- version: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
10
+ version: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string | number, string | number>>;
10
11
  password: z.ZodString;
11
12
  sni: z.ZodString;
12
13
  }, "strip", z.ZodTypeAny, {
13
14
  password: string;
14
15
  sni: string;
15
- version?: number | undefined;
16
+ version?: string | number | undefined;
16
17
  }, {
17
18
  password: string;
18
19
  sni: string;
19
20
  version?: string | number | undefined;
20
21
  }>>;
21
- underlyingProxy: z.ZodOptional<z.ZodString>;
22
22
  testUrl: z.ZodOptional<z.ZodString>;
23
23
  type: z.ZodLiteral<NodeTypeEnum.Vmess>;
24
24
  hostname: z.ZodString;
@@ -37,23 +37,23 @@ export declare const VmessNodeConfigValidator: z.ZodObject<{
37
37
  serverCertFingerprintSha256: z.ZodOptional<z.ZodString>;
38
38
  }, "strip", z.ZodTypeAny, {
39
39
  type: NodeTypeEnum.Vmess;
40
- port: string | number;
41
40
  nodeName: string;
42
41
  hostname: string;
42
+ port: string | number;
43
43
  method: "none" | "aes-128-gcm" | "chacha20-ietf-poly1305" | "auto";
44
44
  tls: boolean;
45
45
  uuid: string;
46
46
  alterId: string;
47
47
  network: "ws" | "tcp";
48
- enable?: boolean | undefined;
49
- tfo?: boolean | undefined;
50
48
  mptcp?: boolean | undefined;
49
+ tfo?: boolean | undefined;
50
+ underlyingProxy?: string | undefined;
51
+ enable?: boolean | undefined;
51
52
  shadowTls?: {
52
53
  password: string;
53
54
  sni: string;
54
- version?: number | undefined;
55
+ version?: string | number | undefined;
55
56
  } | undefined;
56
- underlyingProxy?: string | undefined;
57
57
  testUrl?: string | undefined;
58
58
  host?: string | undefined;
59
59
  path?: string | undefined;
@@ -64,23 +64,23 @@ export declare const VmessNodeConfigValidator: z.ZodObject<{
64
64
  serverCertFingerprintSha256?: string | undefined;
65
65
  }, {
66
66
  type: NodeTypeEnum.Vmess;
67
- port: string | number;
68
67
  nodeName: string;
69
68
  hostname: string;
69
+ port: string | number;
70
70
  method: "none" | "aes-128-gcm" | "chacha20-ietf-poly1305" | "auto";
71
71
  tls: boolean;
72
72
  uuid: string;
73
73
  alterId: string;
74
74
  network: "ws" | "tcp";
75
- enable?: boolean | undefined;
76
- tfo?: boolean | undefined;
77
75
  mptcp?: boolean | undefined;
76
+ tfo?: boolean | undefined;
77
+ underlyingProxy?: string | undefined;
78
+ enable?: boolean | undefined;
78
79
  shadowTls?: {
79
80
  password: string;
80
81
  sni: string;
81
82
  version?: string | number | undefined;
82
83
  } | undefined;
83
- underlyingProxy?: string | undefined;
84
84
  testUrl?: string | undefined;
85
85
  host?: string | undefined;
86
86
  path?: string | undefined;
@@ -26,4 +26,4 @@ exports.VmessNodeConfigValidator = common_1.SimpleNodeConfigValidator.extend({
26
26
  wsHeaders: zod_1.z.record(zod_1.z.string()).optional(),
27
27
  serverCertFingerprintSha256: zod_1.z.ostring(),
28
28
  });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm1lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmFsaWRhdG9ycy92bWVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBdUI7QUFFdkIsb0NBQXVDO0FBQ3ZDLHFDQUFtRTtBQUV0RCxRQUFBLHdCQUF3QixHQUFHLGtDQUF5QixDQUFDLE1BQU0sQ0FBQztJQUN2RSxJQUFJLEVBQUUsT0FBQyxDQUFDLE9BQU8sQ0FBQyxvQkFBWSxDQUFDLEtBQUssQ0FBQztJQUNuQyxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNwQixJQUFJLEVBQUUsc0JBQWE7SUFDbkIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUM7UUFDZCxPQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUNqQixPQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUN4QixPQUFDLENBQUMsT0FBTyxDQUFDLHdCQUF3QixDQUFDO1FBQ25DLE9BQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO0tBQ2xCLENBQUM7SUFDRixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRTtJQUN2QixPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNuQixPQUFPLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3JELEdBQUcsRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFO0lBQ2hCLElBQUksRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFO0lBQ2pCLElBQUksRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFO0lBQ2pCLFFBQVEsRUFBRSxPQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3RCLEtBQUssRUFBRSxPQUFDLENBQUMsUUFBUSxFQUFFO0lBQ25CLGNBQWMsRUFBRSxPQUFDLENBQUMsUUFBUSxFQUFFO0lBQzVCLFNBQVMsRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUMxQywyQkFBMkIsRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFO0NBQ3pDLENBQUMsQ0FBQSJ9
29
+ //# sourceMappingURL=vmess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vmess.js","sourceRoot":"","sources":["../../src/validators/vmess.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB,oCAAuC;AACvC,qCAAmE;AAEtD,QAAA,wBAAwB,GAAG,kCAAyB,CAAC,MAAM,CAAC;IACvE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,oBAAY,CAAC,KAAK,CAAC;IACnC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,IAAI,EAAE,sBAAa;IACnB,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;QACd,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACjB,OAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACxB,OAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC;QACnC,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;KAClB,CAAC;IACF,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACvB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACrD,GAAG,EAAE,OAAC,CAAC,OAAO,EAAE;IAChB,IAAI,EAAE,OAAC,CAAC,OAAO,EAAE;IACjB,IAAI,EAAE,OAAC,CAAC,OAAO,EAAE;IACjB,QAAQ,EAAE,OAAC,CAAC,QAAQ,EAAE;IACtB,KAAK,EAAE,OAAC,CAAC,QAAQ,EAAE;IACnB,cAAc,EAAE,OAAC,CAAC,QAAQ,EAAE;IAC5B,SAAS,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1C,2BAA2B,EAAE,OAAC,CAAC,OAAO,EAAE;CACzC,CAAC,CAAA"}
@@ -1,24 +1,24 @@
1
1
  import { z } from 'zod';
2
2
  import { NodeTypeEnum } from '../types';
3
3
  export declare const WireguardNodeConfigValidator: z.ZodObject<{
4
+ mptcp: z.ZodOptional<z.ZodBoolean>;
5
+ tfo: z.ZodOptional<z.ZodBoolean>;
6
+ underlyingProxy: z.ZodOptional<z.ZodString>;
4
7
  nodeName: z.ZodString;
5
8
  enable: z.ZodOptional<z.ZodBoolean>;
6
- tfo: z.ZodOptional<z.ZodBoolean>;
7
- mptcp: z.ZodOptional<z.ZodBoolean>;
8
9
  shadowTls: z.ZodOptional<z.ZodObject<{
9
- version: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
10
+ version: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string | number, string | number>>;
10
11
  password: z.ZodString;
11
12
  sni: z.ZodString;
12
13
  }, "strip", z.ZodTypeAny, {
13
14
  password: string;
14
15
  sni: string;
15
- version?: number | undefined;
16
+ version?: string | number | undefined;
16
17
  }, {
17
18
  password: string;
18
19
  sni: string;
19
20
  version?: string | number | undefined;
20
21
  }>>;
21
- underlyingProxy: z.ZodOptional<z.ZodString>;
22
22
  testUrl: z.ZodOptional<z.ZodString>;
23
23
  type: z.ZodLiteral<NodeTypeEnum.Wireguard>;
24
24
  selfIp: z.ZodString;
@@ -70,15 +70,15 @@ export declare const WireguardNodeConfigValidator: z.ZodObject<{
70
70
  presharedKey?: string | undefined;
71
71
  reservedBits?: number[] | undefined;
72
72
  }[]];
73
- enable?: boolean | undefined;
74
- tfo?: boolean | undefined;
75
73
  mptcp?: boolean | undefined;
74
+ tfo?: boolean | undefined;
75
+ underlyingProxy?: string | undefined;
76
+ enable?: boolean | undefined;
76
77
  shadowTls?: {
77
78
  password: string;
78
79
  sni: string;
79
- version?: number | undefined;
80
+ version?: string | number | undefined;
80
81
  } | undefined;
81
- underlyingProxy?: string | undefined;
82
82
  testUrl?: string | undefined;
83
83
  selfIpV6?: string | undefined;
84
84
  preferIpv6?: boolean | undefined;
@@ -105,15 +105,15 @@ export declare const WireguardNodeConfigValidator: z.ZodObject<{
105
105
  presharedKey?: string | undefined;
106
106
  reservedBits?: number[] | undefined;
107
107
  }[]];
108
- enable?: boolean | undefined;
109
- tfo?: boolean | undefined;
110
108
  mptcp?: boolean | undefined;
109
+ tfo?: boolean | undefined;
110
+ underlyingProxy?: string | undefined;
111
+ enable?: boolean | undefined;
111
112
  shadowTls?: {
112
113
  password: string;
113
114
  sni: string;
114
115
  version?: string | number | undefined;
115
116
  } | undefined;
116
- underlyingProxy?: string | undefined;
117
117
  testUrl?: string | undefined;
118
118
  selfIpV6?: string | undefined;
119
119
  preferIpv6?: boolean | undefined;
@@ -23,4 +23,4 @@ exports.WireguardNodeConfigValidator = common_1.SimpleNodeConfigValidator.extend
23
23
  peers: zod_1.z.array(WireguardPeerConfigValidator).nonempty(),
24
24
  reservedBits: zod_1.z.array(zod_1.z.number()).optional(),
25
25
  });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lyZWd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZhbGlkYXRvcnMvd2lyZWd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUF1QjtBQUV2QixvQ0FBdUM7QUFDdkMscUNBQW9EO0FBRXBELE1BQU0sNEJBQTRCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxTQUFTLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNyQixRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7SUFDbEMsVUFBVSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDakMsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDaEMsWUFBWSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbkMsWUFBWSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQzdDLENBQUMsQ0FBQTtBQUVXLFFBQUEsNEJBQTRCLEdBQUcsa0NBQXlCLENBQUMsTUFBTSxDQUFDO0lBQzNFLElBQUksRUFBRSxPQUFDLENBQUMsT0FBTyxDQUFDLG9CQUFZLENBQUMsU0FBUyxDQUFDO0lBQ3ZDLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3hDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3JELFVBQVUsRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLFVBQVUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO0lBQ3RCLEdBQUcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFCLFVBQVUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMxRCxLQUFLLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUN2RCxZQUFZLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7Q0FDN0MsQ0FBQyxDQUFBIn0=
26
+ //# sourceMappingURL=wireguard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wireguard.js","sourceRoot":"","sources":["../../src/validators/wireguard.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB,oCAAuC;AACvC,qCAAoD;AAEpD,MAAM,4BAA4B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;IAClC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAA;AAEW,QAAA,4BAA4B,GAAG,kCAAyB,CAAC,MAAM,CAAC;IAC3E,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,oBAAY,CAAC,SAAS,CAAC;IACvC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACxC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrD,UAAU,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,UAAU,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1D,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,QAAQ,EAAE;IACvD,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "surgio",
3
3
  "description": "Generating rules for Surge, Clash, Quantumult like a PRO",
4
- "version": "3.0.0-alpha.0",
4
+ "version": "3.0.0-alpha.1",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",
7
7
  "bin": {
8
8
  "surgio": "bin/run"
9
9
  },
10
10
  "repository": "https://github.com/geekdada/surgio",
11
- "author": "Yihang Li <me@royli.dev>",
11
+ "author": "Roy Li <me@royli.dev>",
12
12
  "license": "MIT",
13
13
  "files": [
14
14
  "bin",
@@ -32,7 +32,7 @@
32
32
  "bugs": {
33
33
  "url": "https://github.com/geekdada/surgio/issues"
34
34
  },
35
- "homepage": "https://surgio.royli.dev",
35
+ "homepage": "https://surgio.js.org",
36
36
  "scripts": {
37
37
  "dev": "npm run build -- --watch",
38
38
  "test": "run-s build test:*",
@@ -46,8 +46,8 @@
46
46
  "prepublishOnly": "npm run clean && npm run build",
47
47
  "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
48
48
  "prepare": "husky install",
49
- "docs:dev": "vuepress dev docs",
50
- "docs:build": "vuepress build docs"
49
+ "docs:dev": "NODE_ENV=development vuepress dev docs",
50
+ "docs:build": "NODE_ENV=production vuepress build docs"
51
51
  },
52
52
  "oclif": {
53
53
  "bin": "surgio",
@@ -88,7 +88,6 @@
88
88
  "dotenv": "^16.1.2",
89
89
  "emoji-regex": "^10.2.1",
90
90
  "eslint": "^8.41.0",
91
- "espree": "^7.3.1",
92
91
  "execa": "^4.1.0",
93
92
  "filesize": "^10.0.7",
94
93
  "fs-extra": "^11.1.1",
@@ -127,8 +126,10 @@
127
126
  "@types/inquirer": "^8.2.6",
128
127
  "@types/ioredis-mock": "^8.2.2",
129
128
  "@types/lodash": "^4.14.195",
129
+ "@types/micromatch": "^4.0.2",
130
130
  "@types/mocha": "^10.0.1",
131
- "@types/node": "^16.18.34",
131
+ "@types/ms": "^0.7.31",
132
+ "@types/node": "^18",
132
133
  "@types/nunjucks": "^3.2.2",
133
134
  "@types/sinon": "^10.0.15",
134
135
  "@types/urlsafe-base64": "^1.0.28",
@@ -163,8 +164,10 @@
163
164
  "sinon": "^15.1.0",
164
165
  "ts-node": "^10.9.1",
165
166
  "typescript": "^5.0.4",
167
+ "vue": "^3.3.4",
166
168
  "vuepress": "2.0.0-beta.62",
167
- "vuepress-plugin-sitemap2": "2.0.0-beta.205"
169
+ "vuepress-plugin-sitemap2": "2.0.0-beta.205",
170
+ "vuepress-plugin-umami-analytics": "^1.2.0"
168
171
  },
169
172
  "ava": {
170
173
  "failFast": false,
@@ -191,7 +194,7 @@
191
194
  ]
192
195
  },
193
196
  "engines": {
194
- "node": ">=16.9.0"
197
+ "node": ">=18.0.0"
195
198
  },
196
199
  "lint-staged": {
197
200
  "*.js": "eslint",
@@ -1,3 +0,0 @@
1
- import { Environment } from 'nunjucks';
2
- import { ArtifactConfig, CommandConfig, RemoteSnippet } from './types';
3
- export declare function generate(config: CommandConfig, artifact: ArtifactConfig, remoteSnippetList: ReadonlyArray<RemoteSnippet>, templateEngine: Environment): Promise<string>;
package/build/generate.js DELETED
@@ -1,13 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generate = void 0;
4
- const generator_1 = require("./generator");
5
- async function generate(config, artifact, remoteSnippetList, templateEngine) {
6
- const artifactInstance = new generator_1.Artifact(config, artifact, {
7
- remoteSnippetList,
8
- });
9
- await artifactInstance.init();
10
- return artifactInstance.render(templateEngine);
11
- }
12
- exports.generate = generate;
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZ2VuZXJhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFBOzs7QUFJWiwyQ0FBc0M7QUFHL0IsS0FBSyxVQUFVLFFBQVEsQ0FDNUIsTUFBcUIsRUFDckIsUUFBd0IsRUFDeEIsaUJBQStDLEVBQy9DLGNBQTJCO0lBRTNCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxvQkFBUSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUU7UUFDdEQsaUJBQWlCO0tBQ2xCLENBQUMsQ0FBQTtJQUVGLE1BQU0sZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUE7SUFFN0IsT0FBTyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUE7QUFDaEQsQ0FBQztBQWJELDRCQWFDIn0=
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defineProvider = exports.defineSurgioConfig = void 0;
4
- const defineSurgioConfig = (config) => config;
5
- exports.defineSurgioConfig = defineSurgioConfig;
6
- const defineProvider = (config) => config;
7
- exports.defineProvider = defineProvider;
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhYmxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9jb25maWd1cmFibGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdPLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxNQUFvQyxFQUFFLEVBQUUsQ0FDekUsTUFBTSxDQUFBO0FBREssUUFBQSxrQkFBa0Isc0JBQ3ZCO0FBRUQsTUFBTSxjQUFjLEdBQUcsQ0FDNUIsTUFBMEQsRUFDMUQsRUFBRSxDQUFDLE1BQU0sQ0FBQTtBQUZFLFFBQUEsY0FBYyxrQkFFaEIifQ==
@@ -1,4 +0,0 @@
1
- import { VmessNodeConfig } from '../types';
2
- export declare const formatVmessUri: (nodeConfig: VmessNodeConfig, options?: {
3
- readonly isMellow: boolean;
4
- }) => string;
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatVmessUri = void 0;
4
- const url_1 = require("url");
5
- // https://github.com/v2ray/v2ray-core/issues/1569
6
- const formatVmessUri = (nodeConfig, options) => {
7
- const uri = [
8
- nodeConfig.uuid,
9
- '@',
10
- `${nodeConfig.hostname}:${nodeConfig.port}`,
11
- nodeConfig.path || '/',
12
- ];
13
- const queries = {
14
- network: nodeConfig.network,
15
- tls: nodeConfig.tls ? 'true' : 'false',
16
- };
17
- if (nodeConfig.skipCertVerify) {
18
- queries['tls.allowInsecure'] = 'true';
19
- }
20
- if (nodeConfig.network === 'ws') {
21
- if (typeof nodeConfig.wsHeaders !== 'undefined') {
22
- Object.keys(nodeConfig.wsHeaders).forEach((key) => {
23
- if (!/host/i.test(key)) {
24
- queries[`ws.headers.${key}`] = nodeConfig.wsHeaders[key];
25
- }
26
- });
27
- }
28
- if (nodeConfig.host) {
29
- if (options?.isMellow) {
30
- queries[`ws.host`] = nodeConfig.host;
31
- }
32
- else {
33
- queries[`ws.headers.host`] = nodeConfig.host;
34
- }
35
- }
36
- }
37
- const queryObject = new url_1.URLSearchParams(queries);
38
- return `vmess://${uri.join('')}?${queryObject.toString()}`;
39
- };
40
- exports.formatVmessUri = formatVmessUri;
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjJyYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvdjJyYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQXFDO0FBR3JDLGtEQUFrRDtBQUMzQyxNQUFNLGNBQWMsR0FBRyxDQUM1QixVQUEyQixFQUMzQixPQUF3QyxFQUNoQyxFQUFFO0lBQ1YsTUFBTSxHQUFHLEdBQWE7UUFDcEIsVUFBVSxDQUFDLElBQUk7UUFDZixHQUFHO1FBQ0gsR0FBRyxVQUFVLENBQUMsUUFBUSxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUU7UUFDM0MsVUFBVSxDQUFDLElBQUksSUFBSSxHQUFHO0tBQ3ZCLENBQUE7SUFDRCxNQUFNLE9BQU8sR0FBMkI7UUFDdEMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPO1FBQzNCLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU87S0FDdkMsQ0FBQTtJQUVELElBQUksVUFBVSxDQUFDLGNBQWMsRUFBRTtRQUM3QixPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxNQUFNLENBQUE7S0FDdEM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFO1FBQy9CLElBQUksT0FBTyxVQUFVLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRTtZQUMvQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDaEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ3RCLE9BQU8sQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLFNBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtpQkFDMUQ7WUFDSCxDQUFDLENBQUMsQ0FBQTtTQUNIO1FBQ0QsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFO1lBQ25CLElBQUksT0FBTyxFQUFFLFFBQVEsRUFBRTtnQkFDckIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUE7YUFDckM7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQTthQUM3QztTQUNGO0tBQ0Y7SUFFRCxNQUFNLFdBQVcsR0FBRyxJQUFJLHFCQUFlLENBQUMsT0FBTyxDQUFDLENBQUE7SUFFaEQsT0FBTyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUE7QUFDNUQsQ0FBQyxDQUFBO0FBdkNZLFFBQUEsY0FBYyxrQkF1QzFCIn0=