diff --git a/extension/title-privacy.js b/extension/title-privacy.js index 29addda..8c2aac6 100644 --- a/extension/title-privacy.js +++ b/extension/title-privacy.js @@ -19,7 +19,7 @@ export function normalizeSendTabTitle(sendTabTitle, legacyMode = TITLE_PRIVACY_M export function normalizeTabTitle(title) { if (typeof title !== 'string') return null; - const normalized = title.replace(/^\s*(?:\(\d{1,2}\+?\)|\[\d{1,2}\+?\])\s+/, '').trim(); + const normalized = title.replace(/^\s*(?:\((?:\d{1,2}|\d+\+)\)|\[(?:\d{1,2}|\d+\+)\])\s+/, '').trim(); return normalized.length > 0 ? normalized : null; } diff --git a/scripts/test-title-privacy.mjs b/scripts/test-title-privacy.mjs index 6993d3a..eb87981 100644 --- a/scripts/test-title-privacy.mjs +++ b/scripts/test-title-privacy.mjs @@ -19,7 +19,11 @@ assert.equal(normalizeSendTabTitle(false, TITLE_PRIVACY_MODES.FULL), false); assert.equal(normalizeTabTitle('(12) Testvideo - YouTube'), 'Testvideo - YouTube'); assert.equal(normalizeTabTitle('[7] Testvideo - YouTube'), 'Testvideo - YouTube'); assert.equal(normalizeTabTitle('(99+) Testvideo - YouTube'), 'Testvideo - YouTube'); +assert.equal(normalizeTabTitle('(999+) Testvideo - YouTube'), 'Testvideo - YouTube'); +assert.equal(normalizeTabTitle('[999+] Testvideo - YouTube'), 'Testvideo - YouTube'); assert.equal(normalizeTabTitle('(500) Days of Summer'), '(500) Days of Summer'); +assert.equal(normalizeTabTitle('(101) Days of Summer'), '(101) Days of Summer'); +assert.equal(normalizeTabTitle('[101] Days of Summer'), '[101] Days of Summer'); assert.equal(normalizeTabTitle(' '), null); assert.equal(sanitizeTabTitle('Private Tab', true), 'Private Tab');