Merge pull request #220 from xream/fix/FullConfig

fix: Full Config Preprocessor
This commit is contained in:
Hsiaoyi 2023-07-23 17:42:06 +08:00 committed by GitHub
commit e862235cb8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 18 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "sub-store", "name": "sub-store",
"version": "2.14.0", "version": "2.14.1",
"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": {

View File

@ -95,22 +95,10 @@ function FullConfig() {
return /^(\[server_local\]|\[Proxy\])/gm.test(raw); return /^(\[server_local\]|\[Proxy\])/gm.test(raw);
}; };
const parse = function (raw) { const parse = function (raw) {
const regex = /^\[server_local]|\[Proxy]/gm; const match = raw.match(
const match = regex.exec(raw); /^\[server_local|Proxy\]([\s\S]+?)^\[.+?\](\r?\n|$)/im,
const results = []; )?.[1];
return match || raw;
let first = true;
if (match) {
raw = raw.substring(match.index);
for (const line of raw.split('\n')) {
if (!first && !line.test(/^\s*\[/)) {
results.push(line);
}
// skip the first line
first = false;
}
return results.join('\n');
}
}; };
return { name, test, parse }; return { name, test, parse };
} }