From 16e879147253b7a7dda3a392ff6963795e03f801 Mon Sep 17 00:00:00 2001 From: MystiPanda Date: Sat, 6 Jul 2024 10:35:29 +0800 Subject: [PATCH] fix: rule parser --- src/components/profile/rule-item.tsx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/components/profile/rule-item.tsx b/src/components/profile/rule-item.tsx index 96fca7da..dfff9ef8 100644 --- a/src/components/profile/rule-item.tsx +++ b/src/components/profile/rule-item.tsx @@ -18,7 +18,12 @@ interface Props { export const RuleItem = (props: Props) => { let { type, ruleRaw, onDelete } = props; const sortable = type === "prepend" || type === "append"; - const rule = ruleRaw.replace(",no-resolve", "").split(","); + const rule = ruleRaw.replace(",no-resolve", ""); + + const ruleType = rule.match(/^[^,]+/)?.[0] ?? ""; + const proxyPolicy = rule.match(/[^,]+$/)?.[0] ?? ""; + const ruleContent = rule.slice(ruleType.length + 1, -proxyPolicy.length - 1); + const { attributes, listeners, setNodeRef, transform, transition } = sortable ? useSortable({ id: ruleRaw }) : { @@ -56,7 +61,7 @@ export const RuleItem = (props: Props) => { - {rule.length === 3 ? rule[1] : "-"} + {ruleContent || "-"} } secondary={ @@ -70,10 +75,10 @@ export const RuleItem = (props: Props) => { }} > - {rule[0]} + {ruleType} - {rule.length === 3 ? rule[2] : rule[1]} + {proxyPolicy} }