aboutsummaryrefslogtreecommitdiff
path: root/src/settings/storage.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/settings/storage.ts')
-rw-r--r--src/settings/storage.ts15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/settings/storage.ts b/src/settings/storage.ts
new file mode 100644
index 0000000..c0005b7
--- /dev/null
+++ b/src/settings/storage.ts
@@ -0,0 +1,15 @@
+import SettingData, { DefaultSettingData } from '../shared/SettingData';
+
+export const load = async(): Promise<SettingData> => {
+ let { settings } = await browser.storage.local.get('settings');
+ if (!settings) {
+ return DefaultSettingData;
+ }
+ return SettingData.valueOf(settings as any);
+};
+
+export const save = (data: SettingData) => {
+ return browser.storage.local.set({
+ settings: data.toJSON(),
+ });
+};