feat: add socks support

This commit is contained in:
divocat
2025-10-20 21:24:08 +03:00
parent 49dd1d608f
commit f0290fcc9e
7 changed files with 221 additions and 5 deletions

View File

@@ -2,6 +2,7 @@ import { ValidationResult } from './types';
import { validateShadowsocksUrl } from './validateShadowsocksUrl';
import { validateVlessUrl } from './validateVlessUrl';
import { validateTrojanUrl } from './validateTrojanUrl';
import { validateSocksUrl } from './validateSocksUrl';
// TODO refactor current validation and add tests
export function validateProxyUrl(url: string): ValidationResult {
@@ -17,8 +18,14 @@ export function validateProxyUrl(url: string): ValidationResult {
return validateTrojanUrl(url);
}
if (/^socks(4|4a|5):\/\//.test(url)) {
return validateSocksUrl(url);
}
return {
valid: false,
message: _('URL must start with vless:// or ss:// or trojan://'),
message: _(
'URL must start with vless://, ss://, trojan://, or socks4/5://',
),
};
}