diff --git a/substore/iriscloud-rename.js b/substore/iriscloud-rename.js index 7786d57..7d4c169 100644 --- a/substore/iriscloud-rename.js +++ b/substore/iriscloud-rename.js @@ -49,6 +49,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 @@ -104,6 +108,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; });