bruno/renderer/providers/Store/useIdb.js

27 lines
698 B
JavaScript
Raw Normal View History

2022-01-29 19:23:22 +01:00
import { useEffect } from 'react';
import { openDB } from 'idb';
import actions from './actions';
const useIdb = (dispatch) => {
2022-01-29 19:23:22 +01:00
useEffect(() => {
let dbName = `grafnode`;
let connection = openDB(dbName, 1, {
upgrade(db, oldVersion, newVersion, transaction) {
switch(oldVersion) {
case 0:
2022-03-10 04:31:05 +01:00
const collectionStore = db.createObjectStore('collection', { keyPath: 'uid' });
2022-01-29 19:23:22 +01:00
collectionStore.createIndex('transactionIdIndex', 'transaction_id');
}
}
});
connection.then(() => {
dispatch({
type: actions.IDB_CONNECTION_READY,
connection: connection
});
});
}, []);
};
export default useIdb;