aboutsummaryrefslogtreecommitdiffstats
path: root/apps/browser-extension/src/utils/settings.ts
diff options
context:
space:
mode:
Diffstat (limited to 'apps/browser-extension/src/utils/settings.ts')
-rw-r--r--apps/browser-extension/src/utils/settings.ts11
1 files changed, 11 insertions, 0 deletions
diff --git a/apps/browser-extension/src/utils/settings.ts b/apps/browser-extension/src/utils/settings.ts
index ef290555..76ff0f61 100644
--- a/apps/browser-extension/src/utils/settings.ts
+++ b/apps/browser-extension/src/utils/settings.ts
@@ -21,3 +21,14 @@ export default function usePluginSettings() {
export async function getPluginSettings() {
return (await chrome.storage.sync.get("settings")).settings as Settings;
}
+
+export function subscribeToSettingsChanges(
+ callback: (settings: Settings) => void,
+) {
+ chrome.storage.sync.onChanged.addListener((changes) => {
+ if (changes.settings === undefined) {
+ return;
+ }
+ callback(changes.settings.newValue as Settings);
+ });
+}