From bce216205f6805165d444fd61139d01f82a7be49 Mon Sep 17 00:00:00 2001 From: Serraniel Date: Sun, 8 Nov 2020 13:01:05 +0100 Subject: [PATCH] #32 Added implementation for firefox api --- src/javascript/browserApi/storageProvider.js | 21 +++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/javascript/browserApi/storageProvider.js b/src/javascript/browserApi/storageProvider.js index 06d621a..cae3bf6 100644 --- a/src/javascript/browserApi/storageProvider.js +++ b/src/javascript/browserApi/storageProvider.js @@ -32,13 +32,32 @@ class StorageProviderChromium { class StorageProviderFirefox { - setData(key, value, callback) { + setData(key, value) { + let obj = {}; + obj[key] = value; + + this.getStorage().set(obj); } getData(key, defaultValue, callback) { + let promise = this.getStorage().get(key); + + promise.then(items => { + if (assigned(items) && assigned(items[key])) { + callback(items[key]); + } + else { + callback(defaultValue); + } + }); } getStorage() { + if (assigned(browser.storage.sync)) { + return browser.storage.sync; + } + + return browser.storage.local; } }