From 1f2757197a533618848ef6086f32e4179b539f96 Mon Sep 17 00:00:00 2001 From: Peng-YM <1048217874pengym@gmail.com> Date: Sun, 6 Sep 2020 11:53:07 +0800 Subject: [PATCH] Fixed YAML parse --- backend/sub-store.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/backend/sub-store.js b/backend/sub-store.js index 344d335..c843595 100644 --- a/backend/sub-store.js +++ b/backend/sub-store.js @@ -653,14 +653,17 @@ function ProxyParser(targetPlatform) { // https://github.com/KOP-XIAO/QuantumultX if (raw.indexOf("{") !== -1) { raw = raw + .replace(/ - /g, " - ") + .replace(/:(?!\s)/g, ": ") + .replace(/\,\"/g, ", \"") .replace(/: {/g, ": {, ") .replace(/, (host|path|tls|mux|skip)/g, ", $1") - .replace(/{name: /g, '{name: "') - .replace(/, server:/g, '", server:') + .replace(/{name: /g, "{name: \"") + .replace(/, server:/g, "\", server:") .replace(/{|}/g, "") - .replace(/,/g, "\n "); + .replace(/,/g, "\n ") } - raw = raw.replace(/ -\n.*name/g, " - name"); + raw = raw.replace(/ -\n.*name/g, " - name").replace(/\$|\`/g, "").split("proxy-providers:")[0].split("proxy-groups:")[0].replace(/\"(name|type|server|port|cipher|password|)\"/g, "$1") const proxies = YAML.eval(raw).proxies; output = proxies.map((p) => JSON.stringify(p)); } else {