Merge pull request #843 from vector-im/dbkr/dev_mode_idb_no_worker
Use IndexedDB storage in dev mode, just without the worker
This commit is contained in:
commit
73682b67ba
1 changed files with 7 additions and 2 deletions
|
@ -94,12 +94,17 @@ export async function initClient(
|
||||||
|
|
||||||
const storeOpts = {} as ICreateClientOpts;
|
const storeOpts = {} as ICreateClientOpts;
|
||||||
|
|
||||||
if (indexedDB && localStorage && !import.meta.env.DEV) {
|
if (indexedDB && localStorage) {
|
||||||
storeOpts.store = new IndexedDBStore({
|
storeOpts.store = new IndexedDBStore({
|
||||||
indexedDB: window.indexedDB,
|
indexedDB: window.indexedDB,
|
||||||
localStorage,
|
localStorage,
|
||||||
dbName: SYNC_STORE_NAME,
|
dbName: SYNC_STORE_NAME,
|
||||||
workerFactory: () => new IndexedDBWorker(),
|
// We can't use the worker in dev mode because Vite simply doesn't bundle workers
|
||||||
|
// in dev mode: it expects them to use native modules. Ours don't, and even then only
|
||||||
|
// Chrome supports it. (It bundles them fine in production mode.)
|
||||||
|
workerFactory: import.meta.env.DEV
|
||||||
|
? undefined
|
||||||
|
: () => new IndexedDBWorker(),
|
||||||
});
|
});
|
||||||
} else if (localStorage) {
|
} else if (localStorage) {
|
||||||
storeOpts.store = new MemoryStore({ localStorage });
|
storeOpts.store = new MemoryStore({ localStorage });
|
||||||
|
|
Loading…
Add table
Reference in a new issue