mirror of
https://github.com/KOP-XIAO/QuantumultX.git
synced 2026-01-25 21:25:09 +00:00
update
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
☑️ 资源解析器 ©𝐒𝐡𝐚𝐰𝐧 ⟦2021-10-06 10:05⟧
|
☑️ 资源解析器 ©𝐒𝐡𝐚𝐰𝐧 ⟦2021-10-09 18:05⟧
|
||||||
----------------------------------------------------------
|
----------------------------------------------------------
|
||||||
🛠 发现 𝐁𝐔𝐆 请反馈: @ShawnKOP_bot
|
🛠 发现 𝐁𝐔𝐆 请反馈: @ShawnKOP_bot
|
||||||
⛳️ 关注 🆃🅶 相关频道: https://t.me/QuanX_API
|
⛳️ 关注 🆃🅶 相关频道: https://t.me/QuanX_API
|
||||||
@@ -992,11 +992,11 @@ function Rule_Handle(subs, Pout, Pin) {
|
|||||||
|
|
||||||
function Rule_Policy(content) { //增加、替换 policy
|
function Rule_Policy(content) { //增加、替换 policy
|
||||||
var cnt = content.replace(/^\s*\-\s/g,"").replace(/REJECT-TINYGIF/gi,"reject").trim().split("//")[0].split(",");
|
var cnt = content.replace(/^\s*\-\s/g,"").replace(/REJECT-TINYGIF/gi,"reject").trim().split("//")[0].split(",");
|
||||||
var RuleK = ["//", "#", ";"];
|
var RuleK = ["//", "#", ";","[","/"];
|
||||||
var RuleK1 = ["host", "domain", "ip-cidr", "geoip", "user-agent", "ip6-cidr"];
|
var RuleK1 = ["host", "domain", "ip-cidr", "geoip", "user-agent", "ip6-cidr"];
|
||||||
const RuleCheck = (item) => cnt[0].trim().toLowerCase().indexOf(item) == 0; //无视注释行
|
const RuleCheck = (item) => cnt[0].trim().toLowerCase().indexOf(item) == 0; //无视注释行
|
||||||
const RuleCheck1 = (item) => cnt[0].trim().toLowerCase().indexOf(item) != -1; //无视 quanx 不支持的规则类别
|
const RuleCheck1 = (item) => cnt[0].trim().toLowerCase().indexOf(item) != -1; //无视 quanx 不支持的规则类别
|
||||||
if (RuleK1.some(RuleCheck1)) {
|
if (RuleK1.some(RuleCheck1) && !RuleK.some(RuleCheck)) {
|
||||||
if (cnt.length == 3 && cnt.indexOf("no-resolve") == -1) {
|
if (cnt.length == 3 && cnt.indexOf("no-resolve") == -1) {
|
||||||
ply0 = Ppolicy != "Shawn" ? Ppolicy : cnt[2]
|
ply0 = Ppolicy != "Shawn" ? Ppolicy : cnt[2]
|
||||||
nn = cnt[0] + ", " + cnt[1] + ", " + ply0
|
nn = cnt[0] + ", " + cnt[1] + ", " + ply0
|
||||||
@@ -1017,9 +1017,26 @@ function Rule_Policy(content) { //增加、替换 policy
|
|||||||
nn = ""
|
nn = ""
|
||||||
} else { nn = nn.replace("IP-CIDR6", "ip6-cidr") }
|
} else { nn = nn.replace("IP-CIDR6", "ip6-cidr") }
|
||||||
return nn
|
return nn
|
||||||
|
} else if (cnt.length == 1 && !RuleK.some(RuleCheck)) { // 纯域名/ip 列表
|
||||||
|
return rule_list_handle(cnt[0])
|
||||||
} else { return "" }//if RuleK1 check
|
} else { return "" }//if RuleK1 check
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 处理纯列表
|
||||||
|
function rule_list_handle(cnt) {
|
||||||
|
if(cnt.indexOf(":")!=-1 && cnt.indexOf("/")!=-1) { // ip-v6?
|
||||||
|
cnt = "ip6-cidr, " + cnt
|
||||||
|
cnt = Ppolicy == "Shawn" ? cnt+", Shawn" : cnt+", "+Ppolicy
|
||||||
|
} else if (cnt.split("/").length == 2) {//ip-cide
|
||||||
|
cnt = "ip-cidr, " + cnt
|
||||||
|
cnt = Ppolicy == "Shawn" ? cnt+", Shawn" : cnt+", "+Ppolicy
|
||||||
|
} else if (cnt) { //host - suffix
|
||||||
|
cnt = "host-suffix, " + cnt
|
||||||
|
cnt = Ppolicy == "Shawn" ? cnt+", Shawn" : cnt+", "+Ppolicy
|
||||||
|
}
|
||||||
|
return cnt
|
||||||
|
}
|
||||||
|
|
||||||
// Domain-Set
|
// Domain-Set
|
||||||
function Domain2Rule(content) {
|
function Domain2Rule(content) {
|
||||||
var cnt = content.split("\n");
|
var cnt = content.split("\n");
|
||||||
|
|||||||
Reference in New Issue
Block a user