mirror of
				https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
				synced 2025-11-01 07:21:09 +08:00 
			
		
		
		
	feat: Surge 密码解析支持首尾成对的单引号双引号, 输出时增加双引号
This commit is contained in:
		
							parent
							
								
									56fd495fb6
								
							
						
					
					
						commit
						4790bf47d1
					
				| @ -1,6 +1,6 @@ | ||||
| { | ||||
|   "name": "sub-store", | ||||
|   "version": "2.14.417", | ||||
|   "version": "2.14.418", | ||||
|   "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", | ||||
|   "main": "src/main.js", | ||||
|   "scripts": { | ||||
|  | ||||
| @ -193,7 +193,7 @@ snell_psk = comma "psk" equals match:[^,]+ { proxy.psk = match.join(""); } | ||||
| snell_version = comma "version" equals match:$[0-9]+ { proxy.version = parseInt(match.trim()); } | ||||
| 
 | ||||
| usernamek = comma "username" equals match:[^,]+ { proxy.username = match.join(""); } | ||||
| passwordk = comma "password" equals match:[^,]+ { proxy.password = match.join(""); } | ||||
| passwordk = comma "password" equals match:[^,]+ { proxy.password = match.join("").replace(/^"(.*?)"$/, '$1').replace(/^'(.*?)'$/, '$1'); } | ||||
| vmess_uuid = comma "username" equals match:[^,]+ { proxy.uuid = match.join(""); } | ||||
| vmess_aead = comma "vmess-aead" equals flag:bool { proxy.aead = flag; } | ||||
| 
 | ||||
|  | ||||
| @ -191,7 +191,7 @@ snell_psk = comma "psk" equals match:[^,]+ { proxy.psk = match.join(""); } | ||||
| snell_version = comma "version" equals match:$[0-9]+ { proxy.version = parseInt(match.trim()); } | ||||
| 
 | ||||
| usernamek = comma "username" equals match:[^,]+ { proxy.username = match.join(""); } | ||||
| passwordk = comma "password" equals match:[^,]+ { proxy.password = match.join(""); } | ||||
| passwordk = comma "password" equals match:[^,]+ { proxy.password = match.join("").replace(/^"(.*?)"$/, '$1').replace(/^'(.*?)'$/, '$1'); } | ||||
| vmess_uuid = comma "username" equals match:[^,]+ { proxy.uuid = match.join(""); } | ||||
| vmess_aead = comma "vmess-aead" equals flag:bool { proxy.aead = flag; } | ||||
| 
 | ||||
|  | ||||
| @ -93,7 +93,7 @@ function shadowsocks(proxy, includeUnsupportedProxy) { | ||||
|         throw new Error(`cipher ${proxy.cipher} is not supported`); | ||||
|     } | ||||
|     result.append(`,encrypt-method=${proxy.cipher}`); | ||||
|     result.appendIfPresent(`,password=${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,password="${proxy.password}"`, 'password'); | ||||
| 
 | ||||
|     const ip_version = ipVersions[proxy['ip-version']] || proxy['ip-version']; | ||||
|     result.appendIfPresent(`,ip-version=${ip_version}`, 'ip-version'); | ||||
| @ -193,7 +193,7 @@ function shadowsocks(proxy, includeUnsupportedProxy) { | ||||
| function trojan(proxy) { | ||||
|     const result = new Result(proxy); | ||||
|     result.append(`${proxy.name}=${proxy.type},${proxy.server},${proxy.port}`); | ||||
|     result.appendIfPresent(`,password=${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,password="${proxy.password}"`, 'password'); | ||||
| 
 | ||||
|     const ip_version = ipVersions[proxy['ip-version']] || proxy['ip-version']; | ||||
|     result.appendIfPresent(`,ip-version=${ip_version}`, 'ip-version'); | ||||
| @ -366,7 +366,7 @@ function ssh(proxy) { | ||||
|     result.append(`${proxy.name}=ssh,${proxy.server},${proxy.port}`); | ||||
|     result.appendIfPresent(`,${proxy.username}`, 'username'); | ||||
|     // 所有的类似的字段都有双引号的问题 暂不处理
 | ||||
|     result.appendIfPresent(`,${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,"${proxy.password}"`, 'password'); | ||||
| 
 | ||||
|     // https://manual.nssurge.com/policy/ssh.html
 | ||||
|     // 需配合 Keystore
 | ||||
| @ -431,7 +431,7 @@ function http(proxy) { | ||||
|     const type = proxy.tls ? 'https' : 'http'; | ||||
|     result.append(`${proxy.name}=${type},${proxy.server},${proxy.port}`); | ||||
|     result.appendIfPresent(`,${proxy.username}`, 'username'); | ||||
|     result.appendIfPresent(`,${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,"${proxy.password}"`, 'password'); | ||||
| 
 | ||||
|     const ip_version = ipVersions[proxy['ip-version']] || proxy['ip-version']; | ||||
|     result.appendIfPresent(`,ip-version=${ip_version}`, 'ip-version'); | ||||
| @ -509,7 +509,7 @@ function socks5(proxy) { | ||||
|     const type = proxy.tls ? 'socks5-tls' : 'socks5'; | ||||
|     result.append(`${proxy.name}=${type},${proxy.server},${proxy.port}`); | ||||
|     result.appendIfPresent(`,${proxy.username}`, 'username'); | ||||
|     result.appendIfPresent(`,${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,"${proxy.password}"`, 'password'); | ||||
| 
 | ||||
|     const ip_version = ipVersions[proxy['ip-version']] || proxy['ip-version']; | ||||
|     result.appendIfPresent(`,ip-version=${ip_version}`, 'ip-version'); | ||||
| @ -675,7 +675,7 @@ function tuic(proxy) { | ||||
|     result.append(`${proxy.name}=${type},${proxy.server},${proxy.port}`); | ||||
| 
 | ||||
|     result.appendIfPresent(`,uuid=${proxy.uuid}`, 'uuid'); | ||||
|     result.appendIfPresent(`,password=${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,password="${proxy.password}"`, 'password'); | ||||
|     result.appendIfPresent(`,token=${proxy.token}`, 'token'); | ||||
| 
 | ||||
|     result.appendIfPresent( | ||||
| @ -950,7 +950,7 @@ function hysteria2(proxy) { | ||||
|     const result = new Result(proxy); | ||||
|     result.append(`${proxy.name}=hysteria2,${proxy.server},${proxy.port}`); | ||||
| 
 | ||||
|     result.appendIfPresent(`,password=${proxy.password}`, 'password'); | ||||
|     result.appendIfPresent(`,password="${proxy.password}"`, 'password'); | ||||
| 
 | ||||
|     if (isPresent(proxy, 'ports')) { | ||||
|         result.append(`,port-hopping="${proxy.ports.replace(/,/g, ';')}"`); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 xream
						xream