mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-15 09:25:55 +08:00
feat: 预处理支持 Base64 兜底
This commit is contained in:
parent
04e12a4836
commit
ef2d6be8eb
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "sub-store",
|
"name": "sub-store",
|
||||||
"version": "2.19.45",
|
"version": "2.19.46",
|
||||||
"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": {
|
||||||
|
@ -50,6 +50,26 @@ function Base64Encoded() {
|
|||||||
return { name, test, parse };
|
return { name, test, parse };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function fallbackBase64Encoded() {
|
||||||
|
const name = 'Fallback Base64 Pre-processor';
|
||||||
|
|
||||||
|
const test = function (raw) {
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
const parse = function (raw) {
|
||||||
|
const decoded = Base64.decode(raw);
|
||||||
|
if (!/^\w+(:\/\/|\s*?=\s*?)\w+/m.test(decoded)) {
|
||||||
|
$.error(
|
||||||
|
`Fallback Base64 Pre-processor error: decoded line does not start with protocol`,
|
||||||
|
);
|
||||||
|
return raw;
|
||||||
|
}
|
||||||
|
|
||||||
|
return decoded;
|
||||||
|
};
|
||||||
|
return { name, test, parse };
|
||||||
|
}
|
||||||
|
|
||||||
function Clash() {
|
function Clash() {
|
||||||
const name = 'Clash Pre-processor';
|
const name = 'Clash Pre-processor';
|
||||||
const test = function (raw) {
|
const test = function (raw) {
|
||||||
@ -163,4 +183,11 @@ function FullConfig() {
|
|||||||
return { name, test, parse };
|
return { name, test, parse };
|
||||||
}
|
}
|
||||||
|
|
||||||
export default [HTML(), Clash(), Base64Encoded(), SSD(), FullConfig()];
|
export default [
|
||||||
|
HTML(),
|
||||||
|
Clash(),
|
||||||
|
Base64Encoded(),
|
||||||
|
SSD(),
|
||||||
|
FullConfig(),
|
||||||
|
fallbackBase64Encoded(),
|
||||||
|
];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user