add file chuck upload, file validation, redirect to home page incase route doesnt exist and refresh token interceptor

This commit is contained in:
Peter Maquiran
2023-11-09 11:45:04 +01:00
parent a05f85a37f
commit a16e97a59a
41 changed files with 48604 additions and 1902 deletions
+19 -13
View File
@@ -1,46 +1,52 @@
// inspire by https://github.com/hc-oss/use-indexeddb
export class IndexedDBConnector {
static connect(config) {
return new Promise((resolve, reject) => {
return new Promise(async (resolve, reject) => {
const idbInstance = indexedDB || self.indexedDB || self.mozIndexedDB || self.webkitIndexedDB || self.msIndexedDB;
if (idbInstance) {
const request = idbInstance.open(config.databaseName, config.version);
request.onsuccess = () => {
resolve(request.result);
return resolve(request.result);
};
request.onerror = (e) => {
reject(e.target.error.name);
};
request.onupgradeneeded = async (e) => {
await this.migrate(config);
return await this.connect(config);
const db = e.target.result;
await this.runMigrations(db, config);
resolve(await this.connect(config))
};
// request.onblocked = async (e: any) => {
// reject(e.target.error.name);
// }
}
else {
reject("IDBDatabase not supported inside webworker");
reject("IDBDatabase not supported inside webworker");
}
});
}
static migrate(config) {
return new Promise((resolve, reject) => {
return new Promise(async (resolve, reject) => {
const idbInstance = indexedDB || self.indexedDB || self.mozIndexedDB || self.webkitIndexedDB || self.msIndexedDB;
if (idbInstance) {
const request = idbInstance.open(config.databaseName, config.version);
request.onsuccess = () => {
// request.result.close()
resolve(false);
request.onsuccess = async () => {
resolve(false);
};
request.onerror = (e) => {
//console.log("error migrate " + config.databaseName)
//console.log("error migrate"+ e.target.error)
reject(e.target.error.name);
};
request.onupgradeneeded = async (e) => {
const db = e.target.result;
await this.runMigrations(db, config);
db.close();
resolve(true);
// console.log("migrate create db")
const db = e.target.result;
await this.runMigrations(db, config);
db.close();
resolve(true);
};
}
else {