mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-10 11:28:59 +08:00
feat: 当节点端口号为合法端口号时, 将类型转为整数(便于脚本判断)
This commit is contained in:
parent
5ac73b863a
commit
36db057e32
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "sub-store",
|
"name": "sub-store",
|
||||||
"version": "2.14.132",
|
"version": "2.14.133",
|
||||||
"description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.",
|
"description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.",
|
||||||
"main": "src/main.js",
|
"main": "src/main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import download from '@/utils/download';
|
import download from '@/utils/download';
|
||||||
import { isIPv4, isIPv6 } from '@/utils';
|
import { isIPv4, isIPv6, isValidPortNumber } from '@/utils';
|
||||||
import PROXY_PROCESSORS, { ApplyProcessor } from './processors';
|
import PROXY_PROCESSORS, { ApplyProcessor } from './processors';
|
||||||
import PROXY_PREPROCESSORS from './preprocessors';
|
import PROXY_PREPROCESSORS from './preprocessors';
|
||||||
import PROXY_PRODUCERS from './producers';
|
import PROXY_PRODUCERS from './producers';
|
||||||
@ -214,6 +214,9 @@ function safeMatch(parser, line) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function lastParse(proxy) {
|
function lastParse(proxy) {
|
||||||
|
if (isValidPortNumber(proxy.port)) {
|
||||||
|
proxy.port = parseInt(proxy.port, 10);
|
||||||
|
}
|
||||||
if (proxy.server) {
|
if (proxy.server) {
|
||||||
proxy.server = proxy.server
|
proxy.server = proxy.server
|
||||||
.trim()
|
.trim()
|
||||||
|
@ -13,6 +13,12 @@ function isIPv6(ip) {
|
|||||||
return IPV6_REGEX.test(ip);
|
return IPV6_REGEX.test(ip);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isValidPortNumber(port) {
|
||||||
|
return /^((6553[0-5])|(655[0-2][0-9])|(65[0-4][0-9]{2})|(6[0-4][0-9]{3})|([1-5][0-9]{4})|([0-5]{0,5})|([0-9]{1,4}))$/.test(
|
||||||
|
port,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
function isNotBlank(str) {
|
function isNotBlank(str) {
|
||||||
return typeof str === 'string' && str.trim().length > 0;
|
return typeof str === 'string' && str.trim().length > 0;
|
||||||
}
|
}
|
||||||
@ -29,4 +35,12 @@ function getIfPresent(obj, defaultValue) {
|
|||||||
return isPresent(obj) ? obj : defaultValue;
|
return isPresent(obj) ? obj : defaultValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
export { isIPv4, isIPv6, isNotBlank, getIfNotBlank, isPresent, getIfPresent };
|
export {
|
||||||
|
isIPv4,
|
||||||
|
isIPv6,
|
||||||
|
isValidPortNumber,
|
||||||
|
isNotBlank,
|
||||||
|
getIfNotBlank,
|
||||||
|
isPresent,
|
||||||
|
getIfPresent,
|
||||||
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user