Extract neutral settings storage infrastructure into VG-Core
Dieser Commit ist enthalten in:
@@ -28,6 +28,7 @@
|
|||||||
"src/background/db/db-retention.js",
|
"src/background/db/db-retention.js",
|
||||||
"src/background/db/db-record-locks.js",
|
"src/background/db/db-record-locks.js",
|
||||||
"src/background/utils.js",
|
"src/background/utils.js",
|
||||||
|
"src/core/settings-storage.js",
|
||||||
"src/background/settings.js",
|
"src/background/settings.js",
|
||||||
"src/core/maintenance-guard.js",
|
"src/core/maintenance-guard.js",
|
||||||
"src/background/consent-memory.js",
|
"src/background/consent-memory.js",
|
||||||
|
|||||||
@@ -6,25 +6,19 @@ const DEFAULT_VENDORGET_SETTINGS = {
|
|||||||
const VENDORGET_SETTINGS_STORAGE_KEY = "vendorgetSettings";
|
const VENDORGET_SETTINGS_STORAGE_KEY = "vendorgetSettings";
|
||||||
|
|
||||||
async function getVendorGetSettings() {
|
async function getVendorGetSettings() {
|
||||||
const storedSettings = await browser.storage.local.get(
|
return getSettingsFromStorage(
|
||||||
VENDORGET_SETTINGS_STORAGE_KEY
|
VENDORGET_SETTINGS_STORAGE_KEY,
|
||||||
|
DEFAULT_VENDORGET_SETTINGS
|
||||||
);
|
);
|
||||||
|
|
||||||
return {
|
|
||||||
...DEFAULT_VENDORGET_SETTINGS,
|
|
||||||
...(storedSettings[VENDORGET_SETTINGS_STORAGE_KEY] ?? {})
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function setVendorGetSetting(key, value) {
|
async function setVendorGetSetting(key, value) {
|
||||||
const settings = await getVendorGetSettings();
|
return setSettingInStorage(
|
||||||
|
VENDORGET_SETTINGS_STORAGE_KEY,
|
||||||
await browser.storage.local.set({
|
DEFAULT_VENDORGET_SETTINGS,
|
||||||
[VENDORGET_SETTINGS_STORAGE_KEY]: {
|
key,
|
||||||
...settings,
|
value
|
||||||
[key]: value
|
);
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function isConsentCaptureEnabled() {
|
async function isConsentCaptureEnabled() {
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
async function getSettingsFromStorage(storageKey, defaultSettings) {
|
||||||
|
const storedSettings = await browser.storage.local.get(storageKey);
|
||||||
|
|
||||||
|
return {
|
||||||
|
...defaultSettings,
|
||||||
|
...(storedSettings[storageKey] ?? {})
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
async function setSettingInStorage(storageKey, defaultSettings, key, value) {
|
||||||
|
const settings = await getSettingsFromStorage(storageKey, defaultSettings);
|
||||||
|
|
||||||
|
await browser.storage.local.set({
|
||||||
|
[storageKey]: {
|
||||||
|
...settings,
|
||||||
|
[key]: value
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
In neuem Issue referenzieren
Einen Benutzer sperren