Initial commit: added frontend and backend
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
export const saveToDB = (key, value) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
const request = indexedDB.open('ElixifyDB', 1);
|
||||
request.onupgradeneeded = e => {
|
||||
const db = e.target.result;
|
||||
if (!db.objectStoreNames.contains('analysisStore')) {
|
||||
db.createObjectStore('analysisStore');
|
||||
}
|
||||
};
|
||||
request.onsuccess = e => {
|
||||
const db = e.target.result;
|
||||
const tx = db.transaction('analysisStore', 'readwrite');
|
||||
const store = tx.objectStore('analysisStore');
|
||||
const req = value === null ? store.delete(key) : store.put(value, key);
|
||||
req.onsuccess = () => resolve();
|
||||
req.onerror = () => reject(req.error);
|
||||
};
|
||||
request.onerror = () => reject(request.error);
|
||||
});
|
||||
};
|
||||
|
||||
export const loadFromDB = (key) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
const request = indexedDB.open('ElixifyDB', 1);
|
||||
request.onupgradeneeded = e => {
|
||||
const db = e.target.result;
|
||||
if (!db.objectStoreNames.contains('analysisStore')) {
|
||||
db.createObjectStore('analysisStore');
|
||||
}
|
||||
};
|
||||
request.onsuccess = e => {
|
||||
const db = e.target.result;
|
||||
if (!db.objectStoreNames.contains('analysisStore')) return resolve(null);
|
||||
const tx = db.transaction('analysisStore', 'readonly');
|
||||
const store = tx.objectStore('analysisStore');
|
||||
const req = store.get(key);
|
||||
req.onsuccess = () => resolve(req.result);
|
||||
req.onerror = () => reject(req.error);
|
||||
};
|
||||
request.onerror = () => reject(request.error);
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user