mirror of
https://github.com/fofolee/uTools-quickcommand.git
synced 2025-12-18 01:44:36 +08:00
新建命令正则匹配功能改为直接导入命令
This commit is contained in:
@@ -4,21 +4,25 @@
|
||||
|
||||
// 是否含有 quickcommand 键值
|
||||
let isJsonQc = (obj, strict = true) => {
|
||||
var keys = strict ? ["features", "program", "cmd", "output"] : ["program", "cmd"]
|
||||
if (keys.filter(x => typeof obj[x] == 'undefined').length) return false
|
||||
return true
|
||||
}
|
||||
var keys = strict
|
||||
? ["features", "program", "cmd", "output"]
|
||||
: ["program", "cmd"];
|
||||
if (keys.filter((x) => typeof obj[x] == "undefined").length) return false;
|
||||
return true;
|
||||
};
|
||||
|
||||
// 判断是否为可导入的快捷命令
|
||||
let qcparser = (json, strict = true) => {
|
||||
try {
|
||||
var qc = JSON.parse(json)
|
||||
} catch (error) {
|
||||
return false
|
||||
}
|
||||
if (isJsonQc(qc, strict)) return { single: true, qc: qc }
|
||||
else if (!Object.values(qc).filter(q => !isJsonQc(q, strict)).length) return { single: false, qc: qc }
|
||||
else return false
|
||||
}
|
||||
try {
|
||||
if (json.slice(0, 3) === "qc=") json = window.base64Decode(json.slice(3));
|
||||
var qc = JSON.parse(json);
|
||||
} catch (error) {
|
||||
return false;
|
||||
}
|
||||
if (isJsonQc(qc, strict)) return { single: true, qc: qc };
|
||||
else if (!Object.values(qc).filter((q) => !isJsonQc(q, strict)).length)
|
||||
return { single: false, qc: qc };
|
||||
else return false;
|
||||
};
|
||||
|
||||
export default qcparser
|
||||
export default qcparser;
|
||||
|
||||
Reference in New Issue
Block a user