extension-storage-promise
Promise-based wrapper around the browser (chrome) extension storage API that makes working with browser storage easier. Works with both sync
and local
storageArea.
Install
npm i -S extension-storage-promise
Usage
Some examples of usage. Whole API can be found below.
;// or// import { localStorage, syncStorage } from 'extension-storage'; // let's store a new record - an array - under 'newRecord' keystoragesync; // then get all records from storageconst record = await storagesync;// returns { newRecord: [1, 2, 3] } // or one specific record by keyconst record = await storagesync;// returns [1, 2, 3] // remove specific record from storage by keyawait storagesync; // clean whole storageawait storagesync;
Methods
These methods can be used under both sync
and local
storageArea namespaces:
getAllRecords(): Promise<Record<string, unknown>>
Example:
const allRecords = await storagesync;// resolves object { record1: 'value', record2: 'value2', ... }
getRecords(keys: string[]): Promise<Record<string, unknown>>
Example:
const records = await storagesync;// resolves object { record1: 'value', record2: 'value2' }
getOneRecord(key: string): Promise<unknown>
Example:
const record = await storagesync;// resolves 'value2'
setOneRecord(key: string, value: unknown): Promise<void>
Example:
await storagesync;// adds new record with value 'value5' under key 'record5' to storage object
setRecords(records: Record<string, unknown>): Promise<void>
Example:
await storagesync;// adds multiple new records under given keys to storage object
removeOneRecord(key: string): Promise<void>
Example:
await storagesync;// removes record with key 'record3' from storage object
removeRecords(keys: string[]): Promise<void>
Example:
await storagesync;// removes records with keys 'record1', 'record2' and 'record3' from storage object
clearRecords(): Promise<void>
Example:
await storagesync;// removes all records storage object