surgio 2.25.3 → 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 (265) hide show
  1. package/LICENSE +1 -1
  2. package/bin/dev +17 -0
  3. package/bin/dev.cmd +3 -0
  4. package/bin/run +8 -0
  5. package/bin/run.cmd +3 -0
  6. package/build/base-command.d.ts +19 -0
  7. package/build/base-command.js +75 -0
  8. package/build/base-command.js.map +1 -0
  9. package/build/commands/check.d.ts +10 -0
  10. package/build/commands/check.js +88 -0
  11. package/build/commands/check.js.map +1 -0
  12. package/build/commands/clean-cache.d.ts +6 -0
  13. package/build/commands/clean-cache.js +29 -0
  14. package/build/commands/clean-cache.js.map +1 -0
  15. package/build/commands/doctor.d.ts +6 -0
  16. package/build/commands/doctor.js +21 -0
  17. package/build/commands/doctor.js.map +1 -0
  18. package/build/commands/generate.d.ts +7 -0
  19. package/build/commands/generate.js +93 -0
  20. package/build/commands/generate.js.map +1 -0
  21. package/build/commands/lint.d.ts +6 -0
  22. package/build/commands/lint.js +36 -0
  23. package/build/commands/lint.js.map +1 -0
  24. package/build/commands/new.d.ts +6 -0
  25. package/build/commands/new.js +36 -0
  26. package/build/commands/new.js.map +1 -0
  27. package/build/commands/subscriptions.d.ts +7 -0
  28. package/build/commands/subscriptions.js +96 -0
  29. package/build/commands/subscriptions.js.map +1 -0
  30. package/build/commands/upload.d.ts +6 -0
  31. package/build/commands/upload.js +89 -0
  32. package/build/commands/upload.js.map +1 -0
  33. package/build/config.d.ts +6 -0
  34. package/build/config.js +151 -0
  35. package/build/config.js.map +1 -0
  36. package/build/configurables.d.ts +80 -0
  37. package/build/configurables.js +52 -0
  38. package/build/configurables.js.map +1 -0
  39. package/build/constant/constant.d.ts +16 -16
  40. package/build/constant/constant.js +3 -13
  41. package/build/constant/constant.js.map +1 -0
  42. package/build/constant/env.js +1 -1
  43. package/build/constant/env.js.map +1 -0
  44. package/build/constant/error.js +1 -1
  45. package/build/constant/error.js.map +1 -0
  46. package/build/constant/index.js +1 -1
  47. package/build/constant/index.js.map +1 -0
  48. package/build/generator/artifact.d.ts +302 -67
  49. package/build/generator/artifact.js +141 -101
  50. package/build/generator/artifact.js.map +1 -0
  51. package/build/generator/index.d.ts +2 -0
  52. package/build/generator/index.js +19 -0
  53. package/build/generator/index.js.map +1 -0
  54. package/build/generator/template.js +2 -28
  55. package/build/generator/template.js.map +1 -0
  56. package/build/hooks/init.d.ts +3 -0
  57. package/build/hooks/init.js +33 -0
  58. package/build/hooks/init.js.map +1 -0
  59. package/build/index.d.ts +68 -66
  60. package/build/index.js +11 -51
  61. package/build/index.js.map +1 -0
  62. package/build/internal.d.ts +5 -0
  63. package/build/internal.js +25 -0
  64. package/build/internal.js.map +1 -0
  65. package/build/misc/deprecation.d.ts +1 -6
  66. package/build/misc/deprecation.js +1 -8
  67. package/build/misc/deprecation.js.map +1 -0
  68. package/build/misc/flag_cn.d.ts +49 -50
  69. package/build/misc/flag_cn.js +3 -3
  70. package/build/misc/flag_cn.js.map +1 -0
  71. package/build/provider/BlackSSLProvider.d.ts +4 -3
  72. package/build/provider/BlackSSLProvider.js +28 -16
  73. package/build/provider/BlackSSLProvider.js.map +1 -0
  74. package/build/provider/ClashProvider.d.ts +7 -10
  75. package/build/provider/ClashProvider.js +168 -76
  76. package/build/provider/ClashProvider.js.map +1 -0
  77. package/build/provider/CustomProvider.d.ts +4 -3
  78. package/build/provider/CustomProvider.js +98 -54
  79. package/build/provider/CustomProvider.js.map +1 -0
  80. package/build/provider/Provider.d.ts +9 -22
  81. package/build/provider/Provider.js +34 -69
  82. package/build/provider/Provider.js.map +1 -0
  83. package/build/provider/ShadowsocksJsonSubscribeProvider.d.ts +4 -5
  84. package/build/provider/ShadowsocksJsonSubscribeProvider.js +31 -21
  85. package/build/provider/ShadowsocksJsonSubscribeProvider.js.map +1 -0
  86. package/build/provider/ShadowsocksSubscribeProvider.d.ts +5 -8
  87. package/build/provider/ShadowsocksSubscribeProvider.js +33 -27
  88. package/build/provider/ShadowsocksSubscribeProvider.js.map +1 -0
  89. package/build/provider/ShadowsocksrSubscribeProvider.d.ts +5 -8
  90. package/build/provider/ShadowsocksrSubscribeProvider.js +33 -23
  91. package/build/provider/ShadowsocksrSubscribeProvider.js.map +1 -0
  92. package/build/provider/SsdProvider.d.ts +5 -8
  93. package/build/provider/SsdProvider.js +59 -39
  94. package/build/provider/SsdProvider.js.map +1 -0
  95. package/build/provider/TrojanProvider.d.ts +5 -8
  96. package/build/provider/TrojanProvider.js +40 -30
  97. package/build/provider/TrojanProvider.js.map +1 -0
  98. package/build/provider/V2rayNSubscribeProvider.d.ts +4 -5
  99. package/build/provider/V2rayNSubscribeProvider.js +64 -33
  100. package/build/provider/V2rayNSubscribeProvider.js.map +1 -0
  101. package/build/provider/index.d.ts +16 -2
  102. package/build/provider/index.js +12 -5
  103. package/build/provider/index.js.map +1 -0
  104. package/build/provider/types.d.ts +10 -1
  105. package/build/provider/types.js +1 -1
  106. package/build/provider/types.js.map +1 -0
  107. package/build/redis.js +1 -1
  108. package/build/redis.js.map +1 -0
  109. package/build/types.d.ts +42 -236
  110. package/build/types.js +2 -1
  111. package/build/types.js.map +1 -0
  112. package/build/utils/cache.js +29 -27
  113. package/build/utils/cache.js.map +1 -0
  114. package/build/utils/clash.d.ts +204 -3
  115. package/build/utils/clash.js +247 -110
  116. package/build/utils/clash.js.map +1 -0
  117. package/build/utils/constant.js +1 -1
  118. package/build/utils/constant.js.map +1 -0
  119. package/build/utils/dns.js +1 -1
  120. package/build/utils/dns.js.map +1 -0
  121. package/build/utils/doctor.d.ts +2 -0
  122. package/build/utils/doctor.js +38 -0
  123. package/build/utils/doctor.js.map +1 -0
  124. package/build/utils/env-flag.js +2 -2
  125. package/build/utils/env-flag.js.map +1 -0
  126. package/build/utils/error-helper.d.ts +2 -2
  127. package/build/utils/error-helper.js +51 -16
  128. package/build/utils/error-helper.js.map +1 -0
  129. package/build/utils/errors.d.ts +19 -0
  130. package/build/utils/errors.js +60 -0
  131. package/build/utils/errors.js.map +1 -0
  132. package/build/utils/filter.d.ts +46 -43
  133. package/build/utils/filter.js +57 -59
  134. package/build/utils/filter.js.map +1 -0
  135. package/build/utils/flag.js +6 -6
  136. package/build/utils/flag.js.map +1 -0
  137. package/build/utils/http-client.js +38 -5
  138. package/build/utils/http-client.js.map +1 -0
  139. package/build/utils/index.d.ts +14 -21
  140. package/build/utils/index.js +102 -118
  141. package/build/utils/index.js.map +1 -0
  142. package/build/utils/linter.js +5 -2
  143. package/build/utils/linter.js.map +1 -0
  144. package/build/utils/loon.d.ts +3 -2
  145. package/build/utils/loon.js +67 -5
  146. package/build/utils/loon.js.map +1 -0
  147. package/build/utils/quantumult.d.ts +3 -3
  148. package/build/utils/quantumult.js +190 -258
  149. package/build/utils/quantumult.js.map +1 -0
  150. package/build/utils/relayable-url.js +1 -1
  151. package/build/utils/relayable-url.js.map +1 -0
  152. package/build/utils/remote-snippet.js +37 -14
  153. package/build/utils/remote-snippet.js.map +1 -0
  154. package/build/utils/ss.js +27 -17
  155. package/build/utils/ss.js.map +1 -0
  156. package/build/utils/ssr.js +3 -4
  157. package/build/utils/ssr.js.map +1 -0
  158. package/build/utils/subscription.js +10 -9
  159. package/build/utils/subscription.js.map +1 -0
  160. package/build/utils/surfboard.d.ts +3 -2
  161. package/build/utils/surfboard.js +142 -126
  162. package/build/utils/surfboard.js.map +1 -0
  163. package/build/utils/surge.d.ts +4 -2
  164. package/build/utils/surge.js +328 -300
  165. package/build/utils/surge.js.map +1 -0
  166. package/build/utils/time.d.ts +1 -0
  167. package/build/utils/time.js +6 -0
  168. package/build/utils/time.js.map +1 -0
  169. package/build/utils/tmp-helper.js +8 -1
  170. package/build/utils/tmp-helper.js.map +1 -0
  171. package/build/utils/trojan.js +19 -11
  172. package/build/utils/trojan.js.map +1 -0
  173. package/build/validators/artifact.d.ts +35 -0
  174. package/build/validators/artifact.js +17 -0
  175. package/build/validators/artifact.js.map +1 -0
  176. package/build/validators/common.d.ts +121 -0
  177. package/build/validators/common.js +65 -0
  178. package/build/validators/common.js.map +1 -0
  179. package/build/validators/filter.d.ts +10 -0
  180. package/build/validators/filter.js +15 -0
  181. package/build/validators/filter.js.map +1 -0
  182. package/build/validators/hooks.d.ts +9 -0
  183. package/build/validators/hooks.js +11 -0
  184. package/build/validators/hooks.js.map +1 -0
  185. package/build/validators/http.d.ts +137 -0
  186. package/build/validators/http.js +19 -0
  187. package/build/validators/http.js.map +1 -0
  188. package/build/validators/index.d.ts +15 -0
  189. package/build/validators/index.js +32 -0
  190. package/build/validators/index.js.map +1 -0
  191. package/build/validators/provider.d.ts +114 -0
  192. package/build/validators/provider.js +42 -0
  193. package/build/validators/provider.js.map +1 -0
  194. package/build/validators/shadowsocks.d.ts +86 -0
  195. package/build/validators/shadowsocks.js +29 -0
  196. package/build/validators/shadowsocks.js.map +1 -0
  197. package/build/validators/shadowsocksr.d.ts +77 -0
  198. package/build/validators/shadowsocksr.js +19 -0
  199. package/build/validators/shadowsocksr.js.map +1 -0
  200. package/build/validators/snell.d.ts +71 -0
  201. package/build/validators/snell.js +17 -0
  202. package/build/validators/snell.js.map +1 -0
  203. package/build/validators/socks5.d.ts +77 -0
  204. package/build/validators/socks5.js +19 -0
  205. package/build/validators/socks5.js.map +1 -0
  206. package/build/validators/surgio-config.d.ts +307 -0
  207. package/build/validators/surgio-config.js +95 -0
  208. package/build/validators/surgio-config.js.map +1 -0
  209. package/build/validators/trojan.d.ts +86 -0
  210. package/build/validators/trojan.js +15 -0
  211. package/build/validators/trojan.js.map +1 -0
  212. package/build/validators/tuic.d.ts +301 -0
  213. package/build/validators/tuic.js +21 -0
  214. package/build/validators/tuic.js.map +1 -0
  215. package/build/validators/vmess.d.ts +92 -0
  216. package/build/validators/vmess.js +29 -0
  217. package/build/validators/vmess.js.map +1 -0
  218. package/build/validators/wireguard.d.ts +123 -0
  219. package/build/validators/wireguard.js +26 -0
  220. package/build/validators/wireguard.js.map +1 -0
  221. package/config.d.ts +1 -0
  222. package/config.js +1 -0
  223. package/constant.d.ts +1 -0
  224. package/constant.js +1 -0
  225. package/generator.d.ts +1 -0
  226. package/generator.js +1 -0
  227. package/hygen-template/artifact/new/index.js +15 -15
  228. package/hygen-template/provider/new/index.js +8 -7
  229. package/hygen-template/template/new/index.js +3 -3
  230. package/index.d.ts +1 -0
  231. package/index.js +1 -0
  232. package/internal.d.ts +1 -0
  233. package/internal.js +1 -0
  234. package/package.json +120 -80
  235. package/provider.d.ts +1 -0
  236. package/provider.js +1 -0
  237. package/utils.d.ts +1 -0
  238. package/utils.js +1 -0
  239. package/bin/surgio.js +0 -8
  240. package/build/command/check.d.ts +0 -9
  241. package/build/command/check.js +0 -79
  242. package/build/command/clean-cache.d.ts +0 -8
  243. package/build/command/clean-cache.js +0 -43
  244. package/build/command/doctor.d.ts +0 -9
  245. package/build/command/doctor.js +0 -63
  246. package/build/command/generate.d.ts +0 -8
  247. package/build/command/generate.js +0 -64
  248. package/build/command/lint.d.ts +0 -7
  249. package/build/command/lint.js +0 -42
  250. package/build/command/new.d.ts +0 -7
  251. package/build/command/new.js +0 -44
  252. package/build/command/subscriptions.d.ts +0 -10
  253. package/build/command/subscriptions.js +0 -87
  254. package/build/command/upload.d.ts +0 -9
  255. package/build/command/upload.js +0 -101
  256. package/build/generate.d.ts +0 -4
  257. package/build/generate.js +0 -75
  258. package/build/utils/command.d.ts +0 -2
  259. package/build/utils/command.js +0 -23
  260. package/build/utils/config.d.ts +0 -6
  261. package/build/utils/config.js +0 -245
  262. package/build/utils/patch-proxy.d.ts +0 -1
  263. package/build/utils/patch-proxy.js +0 -19
  264. package/build/utils/v2ray.d.ts +0 -4
  265. package/build/utils/v2ray.js +0 -41
@@ -5,14 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Artifact = void 0;
7
7
  const logger_1 = require("@surgio/logger");
8
- const assert_1 = __importDefault(require("assert"));
9
8
  const bluebird_1 = __importDefault(require("bluebird"));
9
+ const events_1 = require("events");
10
10
  const fs_extra_1 = __importDefault(require("fs-extra"));
11
11
  const lodash_1 = __importDefault(require("lodash"));
12
12
  const path_1 = __importDefault(require("path"));
13
- const events_1 = require("events");
14
- const util_1 = require("util");
15
- const deprecation_1 = require("../misc/deprecation");
16
13
  const provider_1 = require("../provider");
17
14
  const types_1 = require("../types");
18
15
  const utils_1 = require("../utils");
@@ -20,29 +17,24 @@ const dns_1 = require("../utils/dns");
20
17
  const env_flag_1 = require("../utils/env-flag");
21
18
  const filter_1 = require("../utils/filter");
22
19
  const flag_1 = require("../utils/flag");
23
- const loon_1 = require("../utils/loon");
24
20
  const template_1 = require("./template");
25
- const showDEP009 = (0, util_1.deprecate)(lodash_1.default.noop, deprecation_1.DEP009, 'DEP009');
26
21
  class Artifact extends events_1.EventEmitter {
22
+ surgioConfig;
23
+ artifact;
24
+ options;
25
+ initProgress = 0;
26
+ providerNameList;
27
+ nodeConfigListMap = new Map();
28
+ providerMap = new Map();
29
+ nodeList = [];
30
+ customFilters = {};
31
+ netflixFilter = filter_1.netflixFilter;
32
+ youtubePremiumFilter = filter_1.youtubePremiumFilter;
27
33
  constructor(surgioConfig, artifact, options = {}) {
28
34
  super();
29
35
  this.surgioConfig = surgioConfig;
30
36
  this.artifact = artifact;
31
37
  this.options = options;
32
- this.initProgress = 0;
33
- this.nodeConfigListMap = new Map();
34
- this.providerMap = new Map();
35
- this.nodeList = [];
36
- this.nodeNameList = [];
37
- const { name: artifactName, template, templateString } = artifact;
38
- (0, assert_1.default)(artifactName, '必须指定 artifact 的 name 属性');
39
- (0, assert_1.default)(artifact.provider, '必须指定 artifact 的 provider 属性');
40
- if (!templateString) {
41
- (0, assert_1.default)(template, '必须指定 artifact 的 template 属性');
42
- }
43
- if (this.artifact.proxyGroupModifier) {
44
- showDEP009();
45
- }
46
38
  const mainProviderName = artifact.provider;
47
39
  const combineProviders = artifact.combineProviders || [];
48
40
  this.providerNameList = [mainProviderName].concat(combineProviders);
@@ -53,30 +45,43 @@ class Artifact extends events_1.EventEmitter {
53
45
  getRenderContext(extendRenderContext = {}) {
54
46
  const config = this.surgioConfig;
55
47
  const gatewayConfig = config.gateway;
56
- const gatewayToken = (gatewayConfig === null || gatewayConfig === void 0 ? void 0 : gatewayConfig.viewerToken) || (gatewayConfig === null || gatewayConfig === void 0 ? void 0 : gatewayConfig.accessToken);
57
- const { name: artifactName, customParams, downloadUrl } = this.artifact;
58
- const { nodeList, nodeNameList, netflixFilter, youtubePremiumFilter, customFilters, } = this;
48
+ const gatewayToken = gatewayConfig?.viewerToken || gatewayConfig?.accessToken;
49
+ const { name: artifactName, downloadUrl } = this.artifact;
50
+ const { nodeList, netflixFilter, youtubePremiumFilter, customFilters } = this;
59
51
  const remoteSnippets = lodash_1.default.keyBy(this.options.remoteSnippetList || [], (item) => item.name);
60
- const globalCustomParams = config.customParams;
61
- const mergedCustomParams = lodash_1.default.merge({}, globalCustomParams, customParams, extendRenderContext === null || extendRenderContext === void 0 ? void 0 : extendRenderContext.urlParams);
62
- return Object.assign({ proxyTestUrl: config.proxyTestUrl, downloadUrl: downloadUrl
52
+ const mergedCustomParams = this.getMergedCustomParams(extendRenderContext);
53
+ return {
54
+ proxyTestUrl: config.proxyTestUrl,
55
+ internetTestUrl: config.internetTestUrl,
56
+ downloadUrl: downloadUrl
63
57
  ? downloadUrl
64
- : (0, utils_1.getDownloadUrl)(config.urlBase, artifactName, true, gatewayToken), snippet: (filePath) => {
58
+ : (0, utils_1.getDownloadUrl)(config.urlBase, artifactName, true, gatewayToken),
59
+ snippet: (filePath) => {
65
60
  return (0, template_1.loadLocalSnippet)(config.templateDir, filePath);
66
- }, nodes: nodeList, names: nodeNameList, remoteSnippets,
67
- nodeList, provider: this.artifact.provider, providerName: this.artifact.provider, artifactName, getDownloadUrl: (name) => (0, utils_1.getDownloadUrl)(config.urlBase, name, true, gatewayToken), getUrl: (p) => (0, utils_1.getUrl)(config.publicUrl, p, gatewayToken), getNodeNames: utils_1.getNodeNames,
68
- getClashNodeNames: utils_1.getClashNodeNames,
61
+ },
62
+ remoteSnippets,
63
+ nodeList,
64
+ provider: this.artifact.provider,
65
+ providerName: this.artifact.provider,
66
+ artifactName,
67
+ getDownloadUrl: (name) => (0, utils_1.getDownloadUrl)(config.urlBase, name, true, gatewayToken),
68
+ getUrl: (p) => (0, utils_1.getUrl)(config.publicUrl, p, gatewayToken),
69
+ getNodeNames: utils_1.getNodeNames,
69
70
  getClashNodes: utils_1.getClashNodes,
71
+ getClashNodeNames: utils_1.getClashNodeNames,
70
72
  getSurgeNodes: utils_1.getSurgeNodes,
73
+ getSurgeNodeNames: utils_1.getSurgeNodeNames,
74
+ getSurgeWireguardNodes: utils_1.getSurgeWireguardNodes,
71
75
  getSurfboardNodes: utils_1.getSurfboardNodes,
76
+ getSurfboardNodeNames: utils_1.getSurfboardNodeNames,
72
77
  getShadowsocksNodes: utils_1.getShadowsocksNodes,
73
78
  getShadowsocksNodesJSON: utils_1.getShadowsocksNodesJSON,
74
79
  getShadowsocksrNodes: utils_1.getShadowsocksrNodes,
75
- getQuantumultNodes: utils_1.getQuantumultNodes,
76
80
  getV2rayNNodes: utils_1.getV2rayNNodes,
77
81
  getQuantumultXNodes: utils_1.getQuantumultXNodes,
78
- getMellowNodes: utils_1.getMellowNodes,
79
- getLoonNodes: loon_1.getLoonNodes,
82
+ getQuantumultXNodeNames: utils_1.getQuantumultXNodeNames,
83
+ getLoonNodes: utils_1.getLoonNodes,
84
+ getLoonNodeNames: utils_1.getLoonNodeNames,
80
85
  usFilter: filter_1.usFilter,
81
86
  hkFilter: filter_1.hkFilter,
82
87
  japanFilter: filter_1.japanFilter,
@@ -94,39 +99,23 @@ class Artifact extends events_1.EventEmitter {
94
99
  httpsFilter: filter_1.httpsFilter,
95
100
  trojanFilter: filter_1.trojanFilter,
96
101
  socks5Filter: filter_1.socks5Filter,
102
+ wireguardFilter: filter_1.wireguardFilter,
97
103
  toUrlSafeBase64: utils_1.toUrlSafeBase64,
98
104
  toBase64: utils_1.toBase64,
99
105
  encodeURIComponent,
100
106
  netflixFilter,
101
107
  youtubePremiumFilter,
102
- customFilters, customParams: mergedCustomParams }, (this.artifact.proxyGroupModifier
103
- ? {
104
- clashProxyConfig: {
105
- proxies: (0, utils_1.getClashNodes)(nodeList),
106
- 'proxy-groups': (0, utils_1.normalizeClashProxyGroupConfig)(nodeList, Object.assign({ usFilter: filter_1.usFilter,
107
- hkFilter: filter_1.hkFilter,
108
- japanFilter: filter_1.japanFilter,
109
- koreaFilter: filter_1.koreaFilter,
110
- singaporeFilter: filter_1.singaporeFilter,
111
- taiwanFilter: filter_1.taiwanFilter,
112
- chinaBackFilter: filter_1.chinaBackFilter,
113
- chinaOutFilter: filter_1.chinaOutFilter,
114
- netflixFilter,
115
- youtubePremiumFilter }, customFilters), this.artifact.proxyGroupModifier, {
116
- proxyTestUrl: config.proxyTestUrl,
117
- proxyTestInterval: config.proxyTestInterval,
118
- }),
119
- },
120
- }
121
- : {}));
108
+ customFilters,
109
+ customParams: mergedCustomParams,
110
+ };
122
111
  }
123
- async init({ requestUserAgent, } = {}) {
112
+ async init(params = {}) {
124
113
  if (this.isReady) {
125
114
  throw new Error('Artifact 已经初始化完成');
126
115
  }
127
116
  this.emit('initArtifact:start', { artifact: this.artifact });
128
117
  await bluebird_1.default.map(this.providerNameList, async (providerName) => {
129
- await this.providerMapper(providerName, { requestUserAgent });
118
+ await this.providerMapper(providerName, params.getNodeListParams);
130
119
  }, {
131
120
  concurrency: (0, env_flag_1.getNetworkConcurrency)(),
132
121
  });
@@ -135,12 +124,6 @@ class Artifact extends events_1.EventEmitter {
135
124
  if (nodeConfigList) {
136
125
  nodeConfigList.forEach((nodeConfig) => {
137
126
  if (nodeConfig) {
138
- this.nodeNameList.push({
139
- type: nodeConfig.type,
140
- enable: nodeConfig.enable,
141
- nodeName: nodeConfig.nodeName,
142
- provider: nodeConfig.provider,
143
- });
144
127
  this.nodeList.push(nodeConfig);
145
128
  }
146
129
  });
@@ -149,6 +132,12 @@ class Artifact extends events_1.EventEmitter {
149
132
  this.emit('initArtifact:end', { artifact: this.artifact });
150
133
  return this;
151
134
  }
135
+ getMergedCustomParams(extendableCustomParams = {}) {
136
+ const globalCustomParams = this.surgioConfig.customParams;
137
+ const { customParams: artifactCustomParams } = this.artifact;
138
+ const merged = lodash_1.default.merge({}, globalCustomParams, artifactCustomParams, extendableCustomParams);
139
+ return Object.freeze(merged);
140
+ }
152
141
  render(templateEngine, extendRenderContext) {
153
142
  if (!this.isReady) {
154
143
  throw new Error('Artifact 还未初始化');
@@ -160,12 +149,18 @@ class Artifact extends events_1.EventEmitter {
160
149
  const renderContext = this.getRenderContext(extendRenderContext);
161
150
  const { templateString, template } = this.artifact;
162
151
  const result = templateString
163
- ? targetTemplateEngine.renderString(templateString, Object.assign({ templateEngine: targetTemplateEngine }, renderContext))
164
- : targetTemplateEngine.render(`${template}.tpl`, Object.assign({ templateEngine: targetTemplateEngine }, renderContext));
152
+ ? targetTemplateEngine.renderString(templateString, {
153
+ templateEngine: targetTemplateEngine,
154
+ ...renderContext,
155
+ })
156
+ : targetTemplateEngine.render(`${template}.tpl`, {
157
+ templateEngine: targetTemplateEngine,
158
+ ...renderContext,
159
+ });
165
160
  this.emit('renderArtifact', { artifact: this.artifact, result });
166
161
  return result;
167
162
  }
168
- async providerMapper(providerName, { requestUserAgent } = {}) {
163
+ async providerMapper(providerName, getNodeListParams = {}) {
169
164
  const config = this.surgioConfig;
170
165
  const mainProviderName = this.artifact.provider;
171
166
  const filePath = path_1.default.resolve(config.providerDir, `${providerName}.js`);
@@ -184,51 +179,93 @@ class Artifact extends events_1.EventEmitter {
184
179
  this.providerMap.set(providerName, provider);
185
180
  }
186
181
  catch (err) /* istanbul ignore next */ {
187
- err.message = `处理 ${providerName} 时出现错误,相关文件 ${filePath} ,错误原因: ${err.message}`;
188
- throw err;
182
+ if ((0, utils_1.isSurgioError)(err)) {
183
+ err.providerName = providerName;
184
+ err.providerPath = filePath;
185
+ throw err;
186
+ }
187
+ else {
188
+ throw new utils_1.SurgioError((0, utils_1.isError)(err) ? err.message : '处理 Provider 失败', {
189
+ cause: err,
190
+ providerName,
191
+ providerPath: filePath,
192
+ });
193
+ }
189
194
  }
190
195
  try {
191
- nodeConfigList = await provider.getNodeList({ requestUserAgent });
196
+ try {
197
+ nodeConfigList = await provider.getNodeList(this.getMergedCustomParams(getNodeListParams));
198
+ }
199
+ catch (err) {
200
+ if (provider.config.hooks?.onError && (0, utils_1.isError)(err)) {
201
+ const result = await provider.config.hooks.onError(err);
202
+ if (Array.isArray(result)) {
203
+ const adHocProvider = new provider_1.CustomProvider('ad-hoc', {
204
+ type: types_1.SupportProviderEnum.Custom,
205
+ nodeList: result,
206
+ });
207
+ nodeConfigList = await adHocProvider.getNodeList();
208
+ }
209
+ else {
210
+ nodeConfigList = [];
211
+ }
212
+ }
213
+ else {
214
+ throw err;
215
+ }
216
+ }
192
217
  }
193
218
  catch (err) /* istanbul ignore next */ {
194
- err.message = `获取 ${providerName} 节点时出现错误,相关文件 ${filePath} ,错误原因: ${err.message}`;
195
- throw err;
219
+ if ((0, utils_1.isSurgioError)(err)) {
220
+ err.providerName = providerName;
221
+ err.providerPath = filePath;
222
+ throw err;
223
+ }
224
+ else {
225
+ throw new utils_1.SurgioError((0, utils_1.isError)(err) ? err.message : '处理 Provider 失败', {
226
+ cause: err,
227
+ providerName,
228
+ providerPath: filePath,
229
+ });
230
+ }
196
231
  }
197
232
  // Filter 仅使用第一个 Provider 中的定义
198
233
  if (providerName === mainProviderName) {
199
- if (!this.netflixFilter) {
200
- this.netflixFilter = provider.netflixFilter || filter_1.netflixFilter;
201
- }
202
- if (!this.youtubePremiumFilter) {
203
- this.youtubePremiumFilter =
204
- provider.youtubePremiumFilter || filter_1.youtubePremiumFilter;
234
+ if (provider.config.netflixFilter !== undefined) {
235
+ this.netflixFilter = provider.config.netflixFilter;
205
236
  }
206
- if (!this.customFilters) {
207
- this.customFilters = Object.assign(Object.assign({}, config.customFilters), provider.customFilters);
237
+ if (provider.config.youtubePremiumFilter !== undefined) {
238
+ this.youtubePremiumFilter = provider.config.youtubePremiumFilter;
208
239
  }
240
+ this.customFilters = {
241
+ ...this.customFilters,
242
+ ...config.customFilters,
243
+ ...provider.config.customFilters,
244
+ };
209
245
  }
210
- if ((0, filter_1.validateFilter)(provider.nodeFilter) &&
211
- typeof provider.nodeFilter === 'object' &&
212
- provider.nodeFilter.supportSort) {
213
- nodeConfigList = provider.nodeFilter.filter(nodeConfigList);
246
+ if ((0, filter_1.validateFilter)(provider.config.nodeFilter) &&
247
+ typeof provider.config.nodeFilter === 'object' &&
248
+ provider.config.nodeFilter.supportSort) {
249
+ nodeConfigList = provider.config.nodeFilter.filter(nodeConfigList);
214
250
  }
215
251
  nodeConfigList = (await bluebird_1.default.map(nodeConfigList, async (nodeConfig) => {
216
- var _a;
217
252
  let isValid = false;
218
253
  if (nodeConfig.enable === false) {
219
254
  return undefined;
220
255
  }
221
- if (!provider.nodeFilter) {
256
+ if (!provider.config.nodeFilter) {
222
257
  isValid = true;
223
258
  }
224
- else if ((0, filter_1.validateFilter)(provider.nodeFilter)) {
259
+ else if ((0, filter_1.validateFilter)(provider.config.nodeFilter)) {
225
260
  isValid =
226
- typeof provider.nodeFilter === 'function'
227
- ? provider.nodeFilter(nodeConfig)
261
+ typeof provider.config.nodeFilter === 'function'
262
+ ? provider.config.nodeFilter(nodeConfig)
228
263
  : true;
229
264
  }
230
265
  if (isValid) {
231
- if (config.binPath && config.binPath[nodeConfig.type]) {
266
+ if (config.binPath &&
267
+ nodeConfig.type === types_1.NodeTypeEnum.Shadowsocksr &&
268
+ config.binPath[nodeConfig.type]) {
232
269
  nodeConfig.binPath = config.binPath[nodeConfig.type];
233
270
  nodeConfig.localPort = provider.nextPort;
234
271
  }
@@ -237,34 +274,36 @@ class Artifact extends events_1.EventEmitter {
237
274
  nodeConfig.clashConfig = config.clashConfig;
238
275
  nodeConfig.quantumultXConfig = config.quantumultXConfig;
239
276
  nodeConfig.surfboardConfig = config.surfboardConfig;
240
- if (provider.renameNode) {
241
- const newName = provider.renameNode(nodeConfig.nodeName);
277
+ if (provider.config.renameNode) {
278
+ const newName = provider.config.renameNode(nodeConfig.nodeName);
242
279
  if (newName) {
243
280
  nodeConfig.nodeName = newName;
244
281
  }
245
282
  }
246
- if (provider.addFlag) {
283
+ if (provider.config.addFlag) {
247
284
  // 给节点名加国旗
248
- nodeConfig.nodeName = (0, flag_1.prependFlag)(nodeConfig.nodeName, provider.removeExistingFlag);
285
+ nodeConfig.nodeName = (0, flag_1.prependFlag)(nodeConfig.nodeName, provider.config.removeExistingFlag);
249
286
  }
250
- else if (provider.removeExistingFlag) {
287
+ else if (provider.config.removeExistingFlag) {
251
288
  // 去掉名称中的国旗
252
289
  nodeConfig.nodeName = (0, flag_1.removeFlag)(nodeConfig.nodeName);
253
290
  }
254
291
  // TCP Fast Open
255
- if (provider.tfo) {
256
- nodeConfig.tfo = provider.tfo;
292
+ if (provider.config.tfo) {
293
+ nodeConfig.tfo = provider.config.tfo;
257
294
  }
258
295
  // MPTCP
259
- if (provider.mptcp) {
260
- nodeConfig.mptcp = provider.mptcp;
296
+ if (provider.config.mptcp) {
297
+ nodeConfig.mptcp = provider.config.mptcp;
261
298
  }
262
299
  // Underlying Proxy
263
- if (!nodeConfig.underlyingProxy && provider.underlyingProxy) {
264
- nodeConfig.underlyingProxy = provider.underlyingProxy;
300
+ if (!nodeConfig.underlyingProxy && provider.config.underlyingProxy) {
301
+ nodeConfig.underlyingProxy = provider.config.underlyingProxy;
265
302
  }
266
303
  // check whether the hostname resolves in case of blocking clash's node heurestic
267
- if ((config === null || config === void 0 ? void 0 : config.checkHostname) && !(0, utils_1.isIp)(nodeConfig.hostname)) {
304
+ if (config?.checkHostname &&
305
+ 'hostname' in nodeConfig &&
306
+ !(0, utils_1.isIp)(nodeConfig.hostname)) {
268
307
  try {
269
308
  const domains = await (0, dns_1.resolveDomain)(nodeConfig.hostname);
270
309
  if (domains.length < 1) {
@@ -277,7 +316,8 @@ class Artifact extends events_1.EventEmitter {
277
316
  return undefined;
278
317
  }
279
318
  }
280
- if (((_a = config === null || config === void 0 ? void 0 : config.surgeConfig) === null || _a === void 0 ? void 0 : _a.resolveHostname) &&
319
+ if (config?.surgeConfig?.resolveHostname &&
320
+ 'hostname' in nodeConfig &&
281
321
  !(0, utils_1.isIp)(nodeConfig.hostname) &&
282
322
  [types_1.NodeTypeEnum.Vmess, types_1.NodeTypeEnum.Shadowsocksr].includes(nodeConfig.type)) {
283
323
  try {
@@ -301,4 +341,4 @@ class Artifact extends events_1.EventEmitter {
301
341
  }
302
342
  }
303
343
  exports.Artifact = Artifact;
304
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWZhY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZ2VuZXJhdG9yL2FydGlmYWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDJDQUF3QztBQUN4QyxvREFBNEI7QUFDNUIsd0RBQWdDO0FBQ2hDLHdEQUEwQjtBQUMxQixvREFBdUI7QUFFdkIsZ0RBQXdCO0FBQ3hCLG1DQUFzQztBQUN0QywrQkFBaUM7QUFFakMscURBQTZDO0FBQzdDLDBDQUEwQztBQUMxQyxvQ0FRa0I7QUFDbEIsb0NBbUJrQjtBQUNsQixzQ0FBNkM7QUFDN0MsZ0RBQTBEO0FBQzFELDRDQXFCeUI7QUFDekIsd0NBQXdEO0FBQ3hELHdDQUE2QztBQUM3Qyx5Q0FBOEM7QUFJOUMsTUFBTSxVQUFVLEdBQUcsSUFBQSxnQkFBUyxFQUFDLGdCQUFDLENBQUMsSUFBSSxFQUFFLG9CQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFXdkQsTUFBYSxRQUFTLFNBQVEscUJBQVk7SUFpQnhDLFlBQ1MsWUFBMkIsRUFDM0IsUUFBd0IsRUFDdkIsVUFBMkIsRUFBRTtRQUVyQyxLQUFLLEVBQUUsQ0FBQztRQUpELGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBQzNCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBbkJoQyxpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUdqQixzQkFBaUIsR0FDdEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNMLGdCQUFXLEdBQ2hCLElBQUksR0FBRyxFQUFFLENBQUM7UUFDTCxhQUFRLEdBQTZCLEVBQUUsQ0FBQztRQUN4QyxpQkFBWSxHQUF1QixFQUFFLENBQUM7UUFlM0MsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxHQUFHLFFBQVEsQ0FBQztRQUVsRSxJQUFBLGdCQUFNLEVBQUMsWUFBWSxFQUFFLHlCQUF5QixDQUFDLENBQUM7UUFD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
344
+ //# sourceMappingURL=artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../src/generator/artifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './artifact';
2
+ export * from './template';
@@ -0,0 +1,19 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./artifact"), exports);
18
+ __exportStar(require("./template"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,6CAA0B"}
@@ -8,11 +8,8 @@ const fs_extra_1 = __importDefault(require("fs-extra"));
8
8
  const nunjucks_1 = __importDefault(require("nunjucks"));
9
9
  const path_1 = __importDefault(require("path"));
10
10
  const yaml_1 = __importDefault(require("yaml"));
11
- const util_1 = require("util");
12
- const deprecation_1 = require("../misc/deprecation");
13
11
  const utils_1 = require("../utils");
14
12
  const constant_1 = require("../constant");
15
- const remote_snippet_1 = require("../utils/remote-snippet");
16
13
  function getEngine(templateDir) {
17
14
  const engine = nunjucks_1.default.configure(templateDir, {
18
15
  autoescape: false,
@@ -39,7 +36,6 @@ function getEngine(templateDir) {
39
36
  .filter((item) => !!item)
40
37
  .join('\n');
41
38
  };
42
- engine.addFilter('patchYamlArray', (0, util_1.deprecate)(clashFilter, deprecation_1.DEP007, 'DEP007'));
43
39
  engine.addFilter('clash', clashFilter);
44
40
  engine.addFilter('quantumultx', (str) => {
45
41
  // istanbul ignore next
@@ -80,28 +76,6 @@ function getEngine(templateDir) {
80
76
  .filter((item) => !!item)
81
77
  .join('\n');
82
78
  });
83
- engine.addFilter('mellow', (str) => {
84
- // istanbul ignore next
85
- if (!str) {
86
- return '';
87
- }
88
- const array = str.split('\n');
89
- return array
90
- .filter((item) => {
91
- const testString = !!item && item.trim() !== '' ? item.toUpperCase() : '';
92
- return constant_1.MELLOW_UNSUPPORTED_RULE.every((s) => !testString.startsWith(s));
93
- })
94
- .map((item) => {
95
- if (item.startsWith('#') || str.trim() === '') {
96
- return item;
97
- }
98
- return item
99
- .replace(/,no-resolve/, '')
100
- .replace(/\/\/.*$/, '')
101
- .trim();
102
- })
103
- .join('\n');
104
- });
105
79
  engine.addFilter('loon', (str) => {
106
80
  // istanbul ignore next
107
81
  if (!str) {
@@ -233,9 +207,9 @@ const loadLocalSnippet = (cwd, relativeFilePath) => {
233
207
  return {
234
208
  url: absFilePath,
235
209
  name: '',
236
- main: (rule) => (0, remote_snippet_1.addProxyToSurgeRuleSet)(file, rule),
210
+ main: (rule) => (0, utils_1.addProxyToSurgeRuleSet)(file, rule),
237
211
  text: file,
238
212
  };
239
213
  };
240
214
  exports.loadLocalSnippet = loadLocalSnippet;
241
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZ2VuZXJhdG9yL3RlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEwQjtBQUMxQix3REFBZ0M7QUFDaEMsZ0RBQXdCO0FBRXhCLGdEQUF3QjtBQUN4QiwrQkFBaUM7QUFDakMscURBQTZDO0FBRzdDLG9DQUFzRDtBQUN0RCwwQ0FNcUI7QUFDckIsNERBQWlFO0FBRWpFLFNBQWdCLFNBQVMsQ0FBQyxXQUFtQjtJQUMzQyxNQUFNLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7UUFDN0MsVUFBVSxFQUFFLEtBQUs7S0FDbEIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFZLEVBQVUsRUFBRTtRQUMzQyx1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNSLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFFRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTlCLE9BQU8sS0FBSzthQUNULEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1osTUFBTSxVQUFVLEdBQ2QsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUV6RCxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksVUFBVSxLQUFLLEVBQUUsRUFBRTtnQkFDbkQsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFFL0MsSUFBSSxPQUFPLElBQUksK0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7Z0JBQ2pFLGFBQWE7Z0JBQ2IsT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDbEQ7WUFFRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQzthQUNELE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzthQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0lBRUYsTUFBTSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFBLGdCQUFTLEVBQUMsV0FBVyxFQUFFLG9CQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM3RSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUV2QyxNQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFDLEdBQVksRUFBVSxFQUFFO1FBQ3ZELHVCQUF1QjtRQUN2QixJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1IsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFOUIsT0FBTyxLQUFLO2FBQ1QsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWixNQUFNLFVBQVUsR0FDZCxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRXpELElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxVQUFVLEtBQUssRUFBRSxFQUFFO2dCQUNuRCxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsa0JBQWtCO1lBQ2xCLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsRUFBRTtnQkFDMUMsT0FBTyxJQUFBLHNEQUE4QyxFQUFDLElBQUksQ0FBQyxDQUFDO2FBQzdEO1lBQ0QsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUN6QyxPQUFPLElBQUEsc0RBQThDLEVBQUMsSUFBSSxDQUFDLENBQUM7YUFDN0Q7WUFDRCxJQUFJLDBCQUEwQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDekMsT0FBTyxJQUFBLHlEQUFpRCxFQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2hFO1lBQ0QsSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3hDLE9BQU8sSUFBQSx5REFBaUQsRUFBQyxJQUFJLENBQUMsQ0FBQzthQUNoRTtZQUVELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFFL0MsSUFDRSxPQUFPO2dCQUNQLHNDQUEyQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUN6RDtnQkFDQSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxVQUFVLEVBQUU7b0JBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7aUJBQzlDO2dCQUVELGFBQWE7Z0JBQ2IsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO2FBQ0QsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBWSxFQUFVLEVBQUU7UUFDbEQsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5QixPQUFPLEtBQUs7YUFDVCxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNmLE1BQU0sVUFBVSxHQUNkLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFFekQsT0FBTyxrQ0FBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLENBQUMsQ0FBQzthQUNELEdBQUcsQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ3BCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUM3QyxPQUFPLElBQUksQ0FBQzthQUNiO1lBQ0QsT0FBTyxJQUFJO2lCQUNSLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDO2lCQUMxQixPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztpQkFDdEIsSUFBSSxFQUFFLENBQUM7UUFDWixDQUFDLENBQUM7YUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEIsQ0FBQyxDQUFDLENBQUM7SUFFSCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQVksRUFBVSxFQUFFO1FBQ2hELHVCQUF1QjtRQUN2QixJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1IsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFOUIsT0FBTyxLQUFLO2FBQ1QsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWixNQUFNLFVBQVUsR0FDZCxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRXpELElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxVQUFVLEtBQUssRUFBRSxFQUFFO2dCQUNuRCxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUUvQyxJQUFJLE9BQU8sSUFBSSw4QkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDaEUsYUFBYTtnQkFDYixPQUFPLEdBQUcsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNoRDtZQUVELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO2FBQ0QsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBWSxFQUFVLEVBQUU7UUFDckQsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5QixPQUFPLEtBQUs7YUFDVCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNaLE1BQU0sVUFBVSxHQUNkLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFFekQsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLFVBQVUsS0FBSyxFQUFFLEVBQUU7Z0JBQ25ELE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBRS9DLElBQUksT0FBTyxJQUFJLG1DQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUNyRSxhQUFhO2dCQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3BCO1lBRUQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUM7YUFDRCxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7YUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTztJQUNQLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBZSxFQUFFLEVBQUUsQ0FBQyxjQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFbkUsU0FBUztJQUNULE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFBLGdCQUFRLEVBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUUzRCxPQUFPO0lBQ1AsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUVuRSxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBMUxELDhCQTBMQztBQUVNLE1BQU0sOENBQThDLEdBQUcsQ0FDNUQsR0FBVyxFQUNILEVBQUU7SUFDVixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztJQUU1QixRQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUNoQixLQUFLLGVBQWUsQ0FBQyxDQUFDO1lBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUEsd0JBQWdCLEVBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDckUsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sYUFBYSxHQUFHLGVBQWUsSUFBSSxNQUFNLENBQUM7WUFFaEQsSUFBSSxhQUFhLEVBQUU7Z0JBQ2pCLGlDQUFpQztnQkFDakMsTUFBTSxDQUFDLElBQUksQ0FDVCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsS0FBSyxFQUNMLHNCQUFzQixFQUN0QixVQUFvQixDQUNyQixDQUFDO2FBQ0g7aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLElBQUksQ0FDVCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsS0FBSyxFQUNMLHdCQUF3QixFQUN4QixVQUFvQixDQUNyQixDQUFDO2FBQ0g7WUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDekI7UUFDRCxLQUFLLGNBQWMsQ0FBQyxDQUFDO1lBQ25CLE1BQU0sTUFBTSxHQUFHLElBQUEsd0JBQWdCLEVBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDckUsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sYUFBYSxHQUFHLGVBQWUsSUFBSSxNQUFNLENBQUM7WUFFaEQsSUFBSSxhQUFhLEVBQUU7Z0JBQ2pCLGlDQUFpQztnQkFDakMsTUFBTSxDQUFDLElBQUksQ0FDVCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsS0FBSyxFQUNMLHFCQUFxQixFQUNyQixVQUFvQixDQUNyQixDQUFDO2FBQ0g7aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLElBQUksQ0FDVCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsS0FBSyxFQUNMLHVCQUF1QixFQUN2QixVQUFvQixDQUNyQixDQUFDO2FBQ0g7WUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDekI7UUFDRDtZQUNFLE9BQU8sRUFBRSxDQUFDO0tBQ2I7QUFDSCxDQUFDLENBQUM7QUExRFcsUUFBQSw4Q0FBOEMsa0RBMER6RDtBQUVLLE1BQU0saURBQWlELEdBQUcsQ0FDL0QsR0FBVyxFQUNILEVBQUU7SUFDVixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztJQUU1QixJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ1osT0FBTyxFQUFFLENBQUM7S0FDWDtJQUVELE1BQU0sTUFBTSxHQUFHLElBQUEsd0JBQWdCLEVBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRTlELFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUNuQixLQUFLLGVBQWUsQ0FBQyxDQUFDO1lBQ3BCLE1BQU0sYUFBYSxHQUFHLGVBQWUsSUFBSSxNQUFNLENBQUM7WUFFaEQsSUFBSSxhQUFhLEVBQUU7Z0JBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQ1QsTUFBTSxDQUFDLE9BQWlCLEVBQ3hCLEtBQUssRUFDTCxzQkFBc0IsRUFDdEIsTUFBTSxDQUFDLGFBQWEsQ0FBVyxDQUNoQyxDQUFDO2FBQ0g7aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLElBQUksQ0FDVCxNQUFNLENBQUMsT0FBaUIsRUFDeEIsS0FBSyxFQUNMLHdCQUF3QixFQUN4QixNQUFNLENBQUMsYUFBYSxDQUFXLENBQ2hDLENBQUM7YUFDSDtZQUVELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUNELEtBQUssY0FBYyxDQUFDLENBQUM7WUFDbkIsTUFBTSxhQUFhLEdBQUcsZUFBZSxJQUFJLE1BQU0sQ0FBQztZQUVoRCxJQUFJLGFBQWEsRUFBRTtnQkFDakIsTUFBTSxDQUFDLElBQUksQ0FDVCxNQUFNLENBQUMsT0FBaUIsRUFDeEIsS0FBSyxFQUNMLHFCQUFxQixFQUNyQixNQUFNLENBQUMsYUFBYSxDQUFXLENBQ2hDLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxNQUFNLENBQUMsSUFBSSxDQUNULE1BQU0sQ0FBQyxPQUFpQixFQUN4QixLQUFLLEVBQ0wsdUJBQXVCLEVBQ3ZCLE1BQU0sQ0FBQyxhQUFhLENBQVcsQ0FDaEMsQ0FBQzthQUNIO1lBRUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pCO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsQ0FBQztLQUNiO0FBQ0gsQ0FBQyxDQUFDO0FBMURXLFFBQUEsaURBQWlELHFEQTBENUQ7QUFFSyxNQUFNLGdCQUFnQixHQUFHLENBQzlCLEdBQVcsRUFDWCxnQkFBeUIsRUFDVixFQUFFO0lBQ2pCLHVCQUF1QjtJQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUU7UUFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUM3QjtJQUVELE1BQU0sV0FBVyxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDckQsTUFBTSxJQUFJLEdBQUcsa0JBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFFakUsT0FBTztRQUNMLEdBQUcsRUFBRSxXQUFXO1FBQ2hCLElBQUksRUFBRSxFQUFFO1FBQ1IsSUFBSSxFQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxJQUFBLHVDQUFzQixFQUFDLElBQUksRUFBRSxJQUFJLENBQUM7UUFDMUQsSUFBSSxFQUFFLElBQUk7S0FDWCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBbEJXLFFBQUEsZ0JBQWdCLG9CQWtCM0IifQ==
215
+ //# sourceMappingURL=template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/generator/template.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Hook } from '@oclif/core';
2
+ declare const hook: Hook<'init'>;
3
+ export default hook;
@@ -0,0 +1,33 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const hook = async function (opts) {
27
+ // @ts-ignore
28
+ Promise.resolve().then(() => __importStar(require('update-notifier'))).then(({ default: updateNotifier }) => {
29
+ updateNotifier({ pkg: opts.config.pjson }).notify();
30
+ });
31
+ };
32
+ exports.default = hook;
33
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/hooks/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAM,IAAI,GAAiB,KAAK,WAAW,IAAI;IAC7C,aAAa;IACb,kDAAO,iBAAiB,IAAE,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE;QAC7D,cAAc,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;IACrD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,kBAAe,IAAI,CAAA"}