From 82161b1254c7ce2c2b1f0b8f5d45f0c8bd8719cb Mon Sep 17 00:00:00 2001 From: Dennis Li Date: Thu, 9 Nov 2017 21:37:07 -0800 Subject: [PATCH] Adapter for using `chrome.storage.local` and `chrome.storage.sync` Also see [`dennisli92/Chrome-StorageArea-Adapter`](https://github.com/dennisli92/Chrome-StorageArea-Adapter) --- src/adapters/storageArea/adapter.js | 19 +++++++++++++++++++ src/adapters/storageArea/index.js | 1 + 2 files changed, 20 insertions(+) create mode 100644 src/adapters/storageArea/adapter.js create mode 100644 src/adapters/storageArea/index.js diff --git a/src/adapters/storageArea/adapter.js b/src/adapters/storageArea/adapter.js new file mode 100644 index 0000000..e972b03 --- /dev/null +++ b/src/adapters/storageArea/adapter.js @@ -0,0 +1,19 @@ +export default (storage) => ({ + 0: storage, + + put(key, value, callback) { + storage.set({ [key]: value }, callback) + }, + + get(key, callback) { + try { + storage.get(key, (items) => { callback(null, items[key]) }) + } catch (e) { + callback(e) + } + }, + + del(key, callback) { + storage.remove(key, callback) + }, +}) diff --git a/src/adapters/storageArea/index.js b/src/adapters/storageArea/index.js new file mode 100644 index 0000000..27f83c3 --- /dev/null +++ b/src/adapters/storageArea/index.js @@ -0,0 +1 @@ +export { default } from './adapter.js' \ No newline at end of file