mirror of
https://github.com/gorhill/uBlock.git
synced 2024-10-06 09:37:12 +02:00
Add support to remove values in set-local-storage-item
scriptlet
Related feedback: - https://github.com/uBlockOrigin/uBlock-issues/discussions/2697#discussioncomment-6278359 When using the special value `$remove$`, the scriptlet will remove the item from the local storage.
This commit is contained in:
parent
d54fad26b7
commit
b283d6aa33
@ -2838,7 +2838,8 @@ function setLocalStorageItem(
|
|||||||
'undefined', 'null',
|
'undefined', 'null',
|
||||||
'false', 'true',
|
'false', 'true',
|
||||||
'yes', 'no',
|
'yes', 'no',
|
||||||
'{}', '[]', "''",
|
'{}', '[]', '""',
|
||||||
|
'$remove$',
|
||||||
];
|
];
|
||||||
let actualValue;
|
let actualValue;
|
||||||
if ( validValues.includes(value) ) {
|
if ( validValues.includes(value) ) {
|
||||||
@ -2851,10 +2852,10 @@ function setLocalStorageItem(
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if ( actualValue !== undefined ) {
|
if ( actualValue === '$remove$' ) {
|
||||||
self.localStorage.setItem(key, `${actualValue}`);
|
|
||||||
} else {
|
|
||||||
self.localStorage.removeItem(key);
|
self.localStorage.removeItem(key);
|
||||||
|
} else {
|
||||||
|
self.localStorage.setItem(key, `${actualValue}`);
|
||||||
}
|
}
|
||||||
} catch(ex) {
|
} catch(ex) {
|
||||||
}
|
}
|
||||||
@ -3024,7 +3025,6 @@ function trustedSetLocalStorageItem(
|
|||||||
value = ''
|
value = ''
|
||||||
) {
|
) {
|
||||||
if ( key === '' ) { return; }
|
if ( key === '' ) { return; }
|
||||||
if ( value === '' ) { return; }
|
|
||||||
|
|
||||||
let actualValue = value;
|
let actualValue = value;
|
||||||
if ( value === '$now$' ) {
|
if ( value === '$now$' ) {
|
||||||
@ -3034,7 +3034,11 @@ function trustedSetLocalStorageItem(
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
if ( actualValue === '$remove$' ) {
|
||||||
|
self.localStorage.removeItem(key);
|
||||||
|
} else {
|
||||||
self.localStorage.setItem(key, `${actualValue}`);
|
self.localStorage.setItem(key, `${actualValue}`);
|
||||||
|
}
|
||||||
} catch(ex) {
|
} catch(ex) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user