11// ==UserScript==
22// @name Improve Privacy
3- // @version 0.20
3+ // @version 0.21
44// @downloadURL https://userscripts.codonaft.com/improve-privacy.user.js
55// ==/UserScript==
66
@@ -25,6 +25,12 @@ const cleanup = node => {
2525 const href = node . href ;
2626 if ( ! href ) return true ;
2727
28+ const url = new URL ( href ) ;
29+ [ ...url . searchParams . keys ( ) ]
30+ . filter ( k => k . startsWith ( 'utm_' ) )
31+ . forEach ( k => url . searchParams . delete ( k ) ) ;
32+ maybeUpdateUrl ( node , url , href ) ;
33+
2834 if ( h === 'tagpacker.com' && ! node . closest ?. ( 'ul.nav' ) ) {
2935 node . addEventListener ( 'click' , _ => {
3036 if ( ! event . isTrusted ) return ;
@@ -39,24 +45,27 @@ const cleanup = node => {
3945 const maps = href . startsWith ?. ( 'https://maps.app.goo.gl/' ) ;
4046 if ( ! youtube && ! maps ) return true ;
4147
42- const url = new URL ( href ) ;
4348 [ ...url . searchParams . keys ( ) ]
4449 . filter ( k => maps || ! [ 'index' , 'list' , 't' , 'v' ] . includes ( k ) )
4550 . forEach ( k => url . searchParams . delete ( k ) ) ;
4651
47- const newHref = url . toString ( ) ;
48- if ( newHref !== href ) {
49- node . href = newHref ;
50- if ( node . textContent ?. trim ( ) === href ) {
51- node . innerHTML = newHref ;
52- }
53- }
52+ maybeUpdateUrl ( node , url , href ) ;
5453 } catch ( e ) {
5554 err ( e , node ) ;
5655 }
5756 return true ;
5857} ;
5958
59+ const maybeUpdateUrl = ( node , url , href ) => {
60+ const newHref = url . toString ( ) ;
61+ if ( newHref !== href ) {
62+ node . href = newHref ;
63+ if ( node . textContent ?. trim ( ) === href ) {
64+ node . innerHTML = newHref ;
65+ }
66+ }
67+ }
68+
6069const subscribeOnChanges = ( node , selector , f ) => {
6170 const apply = ( node , observer ) => {
6271 if ( node ?. nodeType !== 1 ) return ;
0 commit comments