change(tracking): More broad userpage filter

This commit is contained in:
tecc 2022-09-27 21:11:27 +02:00
parent 1943d5d8fd
commit 0a5ea0cf25

View File

@ -21,20 +21,23 @@ function redact(redactor, base = defaultHandler) {
})
}
const USER_AT = /^\/@.+/;
const USER_SUBPAGE = /^\/(u|card)\/.*/;
const TRACKER_OVERRIDES = [
{
test(v) {
return /^\/@.+/.test(v);
return USER_AT.test(v) || USER_SUBPAGE.test(v);
},
handling: redact((v) => {
const parts = v.pathname.split('/').filter((v) => v.length > 0);
for (const i in parts) { // NOTE(tecc): This might be overengineering but that's fine
const part = parts[i];
if (/^@.+$/.test(part)) {
parts[i] = '@--redacted--';
}
let pathname = v.pathname;
if (USER_AT.test(pathname)) {
pathname = pathname.replace(USER_AT, '/@--redacted--')
}
v.pathname = '/' + parts.join('/');
if (USER_SUBPAGE.test(pathname)) {
pathname = pathname.replace(USER_SUBPAGE, '/$1/--redacted--');
}
v.pathname = pathname;
return v;
})
}