From 868e2b093173131172db94e62a1e5303eed840fe Mon Sep 17 00:00:00 2001 From: Orion Date: Tue, 23 Jun 2026 10:27:19 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(core):=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E6=8C=89=E5=80=8D=E7=8E=87=E6=95=B0=E5=80=BC=E5=AF=B9=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E8=BF=9B=E8=A1=8C=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 multiplierValueOf 函数,将倍率字符串(如带有X的后缀)转换为数值 - 在节点排序逻辑中,当区域排序相同时,优先按倍率数值升序排列 - 修正了由于大段代码结构调整和闭合括号错位引起的作用域结构 --- substore/iriscloud-rename.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/substore/iriscloud-rename.js b/substore/iriscloud-rename.js index a4fc574..13ba593 100644 --- a/substore/iriscloud-rename.js +++ b/substore/iriscloud-rename.js @@ -50,6 +50,10 @@ async function operator(proxies) { return match ? `${match[1]}X` : ''; }; + const multiplierValueOf = multiplier => ( + multiplier ? Number(multiplier.replace(/X$/i, '')) : Number.NEGATIVE_INFINITY + ); + const cleanCoreName = name => { const { text } = utils.splitLeadingOrInlineFlag(name); return text @@ -105,6 +109,11 @@ async function operator(proxies) { const firstRegionOrder = regionOrder[firstItem.regionPrefix]; const secondRegionOrder = regionOrder[secondItem.regionPrefix]; if (firstRegionOrder !== secondRegionOrder) return firstRegionOrder - secondRegionOrder; + const firstMultiplierValue = multiplierValueOf(firstItem.multiplier); + const secondMultiplierValue = multiplierValueOf(secondItem.multiplier); + if (firstMultiplierValue !== secondMultiplierValue) { + return firstMultiplierValue - secondMultiplierValue; + } return firstItem.originalIndex - secondItem.originalIndex; });