mirror of
https://github.com/standardnotes/mobile.git
synced 2026-04-26 17:17:04 -04:00
50 lines
1.1 KiB
JavaScript
50 lines
1.1 KiB
JavaScript
import { AsyncStorage } from 'react-native';
|
|
|
|
export default class Storage {
|
|
|
|
static async getItem(key) {
|
|
try {
|
|
return AsyncStorage.getItem(key);
|
|
} catch (error) {
|
|
console.log("Error getting item", error);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
static async getMultiItems(keys) {
|
|
return AsyncStorage.multiGet(keys).then((stores) => {
|
|
var items = {};
|
|
stores.map((result, i, store) => {
|
|
let key = store[i][0];
|
|
let value = store[i][1];
|
|
items[key] = value;
|
|
});
|
|
return items;
|
|
});
|
|
}
|
|
|
|
static async setItem(key, value) {
|
|
if(value == null || value == undefined || key == null || key == undefined) {
|
|
return;
|
|
}
|
|
try {
|
|
return AsyncStorage.setItem(key, value);
|
|
} catch (error) {
|
|
console.log("Error setting item", error);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
static async removeItem(key) {
|
|
return await AsyncStorage.removeItem(key);
|
|
}
|
|
|
|
static async clearKeys(keys) {
|
|
return AsyncStorage.multiRemove(keys);
|
|
}
|
|
|
|
static async clear() {
|
|
return AsyncStorage.clear();
|
|
}
|
|
}
|