@@ -3,7 +3,12 @@ import * as Comlink from 'comlink';
33import { resolveWebPowerSyncFlags } from '../../PowerSyncDatabase' ;
44import { OpenAsyncDatabaseConnection } from '../AsyncDatabaseConnection' ;
55import { LockedAsyncDatabaseAdapter } from '../LockedAsyncDatabaseAdapter' ;
6- import { ResolvedWebSQLOpenOptions , TemporaryStorageOption , WebSQLFlags } from '../web-sql-flags' ;
6+ import {
7+ DEFAULT_CACHE_SIZE_KB ,
8+ ResolvedWebSQLOpenOptions ,
9+ TemporaryStorageOption ,
10+ WebSQLFlags
11+ } from '../web-sql-flags' ;
712import { WorkerWrappedAsyncDatabaseConnection } from '../WorkerWrappedAsyncDatabaseConnection' ;
813import { WASQLiteVFS } from './WASQLiteConnection' ;
914import { WASQLiteOpenFactory } from './WASQLiteOpenFactory' ;
@@ -27,6 +32,7 @@ export interface WASQLiteDBAdapterOptions extends Omit<PowerSyncOpenFactoryOptio
2732
2833 vfs ?: WASQLiteVFS ;
2934 temporaryStorage ?: TemporaryStorageOption ;
35+ cacheSizeKb ?: number ;
3036
3137 /**
3238 * Encryption key for the database.
@@ -43,7 +49,7 @@ export class WASQLiteDBAdapter extends LockedAsyncDatabaseAdapter {
4349 super ( {
4450 name : options . dbFilename ,
4551 openConnection : async ( ) => {
46- const { workerPort, temporaryStorage } = options ;
52+ const { workerPort, temporaryStorage, cacheSizeKb } = options ;
4753 if ( workerPort ) {
4854 const remote = Comlink . wrap < OpenAsyncDatabaseConnection > ( workerPort ) ;
4955 return new WorkerWrappedAsyncDatabaseConnection ( {
@@ -52,6 +58,7 @@ export class WASQLiteDBAdapter extends LockedAsyncDatabaseAdapter {
5258 baseConnection : await remote ( {
5359 ...options ,
5460 temporaryStorage : temporaryStorage ?? TemporaryStorageOption . MEMORY ,
61+ cacheSizeKb : cacheSizeKb ?? DEFAULT_CACHE_SIZE_KB ,
5562 flags : resolveWebPowerSyncFlags ( options . flags ) ,
5663 encryptionKey : options . encryptionKey
5764 } )
@@ -63,6 +70,7 @@ export class WASQLiteDBAdapter extends LockedAsyncDatabaseAdapter {
6370 debugMode : options . debugMode ,
6471 flags : options . flags ,
6572 temporaryStorage,
73+ cacheSizeKb,
6674 logger : options . logger ,
6775 vfs : options . vfs ,
6876 encryptionKey : options . encryptionKey ,
0 commit comments