mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-11 21:09:05 +08:00
Minor refactor
This commit is contained in:
parent
f76096f244
commit
56ada242d2
4
backend/dist/sub-store-parser.loon.min.js
vendored
4
backend/dist/sub-store-parser.loon.min.js
vendored
File diff suppressed because one or more lines are too long
@ -15,7 +15,7 @@ export function peggy() {
|
||||
.pipe(tap(function (file) {
|
||||
const filename = path.basename(file.path).split(".")[0] + ".js";
|
||||
const raw = fs.readFileSync(file.path, 'utf8');
|
||||
const contents = `const grammars = String.raw\`\n${raw}\n\`;\nexport default grammars;`;
|
||||
const contents = `import * as peggy from 'peggy';\nconst grammars = String.raw\`\n${raw}\n\`;\nlet parser;\nexport default function getParser() { if(!parser) { parser = peggy.generate(grammars); } return parser; }`;
|
||||
return newFile(filename, contents)
|
||||
.pipe(gulp.dest(path.dirname(file.path)))
|
||||
}));
|
||||
|
@ -1,31 +1,7 @@
|
||||
import surge from './grammars/surge';
|
||||
import loon from './grammars/loon';
|
||||
import getSurgeParser from './peggy/surge';
|
||||
import getLoonParser from './peggy/loon';
|
||||
import getQXParser from './peggy/qx';
|
||||
import { Base64 } from 'js-base64';
|
||||
import qx from './grammars/qx';
|
||||
import * as peggy from 'peggy';
|
||||
|
||||
let QXParser, LoonParser, SurgeParser;
|
||||
|
||||
function getQXParser() {
|
||||
if (!QXParser) {
|
||||
QXParser = peggy.generate(qx);
|
||||
}
|
||||
return QXParser;
|
||||
}
|
||||
|
||||
function getLoonParser() {
|
||||
if (!LoonParser) {
|
||||
LoonParser = peggy.generate(loon);
|
||||
}
|
||||
return LoonParser;
|
||||
}
|
||||
|
||||
function getSurgeParser() {
|
||||
if (!SurgeParser) {
|
||||
SurgeParser = peggy.generate(surge);
|
||||
}
|
||||
return SurgeParser;
|
||||
}
|
||||
|
||||
// Parse SS URI format (only supports new SIP002, legacy format is depreciated).
|
||||
// reference: https://shadowsocks.org/en/spec/SIP002-URI-Scheme.html
|
||||
|
@ -1,3 +1,4 @@
|
||||
import * as peggy from 'peggy';
|
||||
const grammars = String.raw`
|
||||
// global initializer
|
||||
{{
|
||||
@ -169,4 +170,10 @@ _ = [ \r\t]*
|
||||
bool = b:("true"/"false") { return b === "true" }
|
||||
others = comma [^=,]+ equals [^=,]+
|
||||
`;
|
||||
export default grammars;
|
||||
let parser;
|
||||
export default function getParser() {
|
||||
if (!parser) {
|
||||
parser = peggy.generate(grammars);
|
||||
}
|
||||
return parser;
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
import * as peggy from 'peggy';
|
||||
const grammars = String.raw`
|
||||
// global initializer
|
||||
{{
|
||||
@ -168,4 +169,10 @@ equals = _ "=" _
|
||||
_ = [ \r\t]*
|
||||
bool = b:("true"/"false") { return b === "true" }
|
||||
`;
|
||||
export default grammars;
|
||||
let parser;
|
||||
export default function getParser() {
|
||||
if (!parser) {
|
||||
parser = peggy.generate(grammars);
|
||||
}
|
||||
return parser;
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
import * as peggy from 'peggy';
|
||||
const grammars = String.raw`
|
||||
// global initializer
|
||||
{{
|
||||
@ -169,4 +170,10 @@ _ = [ \r\t]*
|
||||
bool = b:("true"/"false") { return b === "true" }
|
||||
others = comma [^=,]+ equals [^=,]+
|
||||
`;
|
||||
export default grammars;
|
||||
let parser;
|
||||
export default function getParser() {
|
||||
if (!parser) {
|
||||
parser = peggy.generate(grammars);
|
||||
}
|
||||
return parser;
|
||||
}
|
4
backend/sub-store.min.js
vendored
4
backend/sub-store.min.js
vendored
File diff suppressed because one or more lines are too long
@ -1,10 +1,9 @@
|
||||
import { expect } from 'chai';
|
||||
import * as peggy from 'peggy';
|
||||
import loon from '../../src/core/proxy-utils/grammars/loon';
|
||||
import getLoonParser from '../../src/core/proxy-utils/peggy/loon';
|
||||
import testcases from './testcases';
|
||||
import { describe, it } from 'mocha';
|
||||
|
||||
const parser = peggy.generate(loon);
|
||||
const parser = getLoonParser();
|
||||
|
||||
describe('Loon', function() {
|
||||
describe('shadowsocks', function() {
|
||||
|
@ -1,12 +1,11 @@
|
||||
import * as peggy from 'peggy';
|
||||
import qx from '../../src/core/proxy-utils/grammars/qx';
|
||||
import getQXParser from '../../src/core/proxy-utils/peggy/qx';
|
||||
import { expect } from 'chai';
|
||||
import testcases from './testcases';
|
||||
import { describe, it } from 'mocha';
|
||||
|
||||
|
||||
|
||||
const parser = peggy.generate(qx);
|
||||
const parser = getQXParser();
|
||||
|
||||
describe('QX', function() {
|
||||
describe('shadowsocks', function() {
|
||||
|
@ -1,11 +1,9 @@
|
||||
import * as peggy from 'peggy';
|
||||
import surge from '../../src/core/proxy-utils/grammars/surge';
|
||||
import getSurgeParser from '../../src/core/proxy-utils/peggy/surge';
|
||||
import { expect } from 'chai';
|
||||
import testcases from './testcases';
|
||||
import { describe, it } from 'mocha';
|
||||
|
||||
|
||||
const parser = peggy.generate(surge);
|
||||
const parser = getSurgeParser();
|
||||
|
||||
describe('Surge', function() {
|
||||
describe('shadowsocks', function() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user