@@ -38,6 +38,7 @@ import { AsyncDbAdapter } from './adapters/AsyncWebAdapter.js';
3838
3939export interface WebPowerSyncFlags extends WebSQLFlags {
4040 /**
41+ * @deprecated This flag is no longer used. Navigator locks now handle tab detection automatically.
4142 * Externally unload open PowerSync database instances when the window closes.
4243 * Setting this to `true` requires calling `close` on all open PowerSyncDatabase
4344 * instances before the window unloads
@@ -127,7 +128,6 @@ function assertValidDatabaseOptions(options: WebPowerSyncDatabaseOptions): void
127128export class PowerSyncDatabase extends AbstractPowerSyncDatabase {
128129 static SHARED_MUTEX = new Mutex ( ) ;
129130
130- protected unloadListener ?: ( ) => Promise < void > ;
131131 protected resolvedFlags : WebPowerSyncFlags ;
132132
133133 constructor ( options : WebPowerSyncDatabaseOptionsWithAdapter ) ;
@@ -140,11 +140,6 @@ export class PowerSyncDatabase extends AbstractPowerSyncDatabase {
140140 assertValidDatabaseOptions ( options ) ;
141141
142142 this . resolvedFlags = resolveWebPowerSyncFlags ( options . flags ) ;
143-
144- if ( this . resolvedFlags . enableMultiTabs && ! this . resolvedFlags . externallyUnload ) {
145- this . unloadListener = ( ) => this . close ( { disconnect : false } ) ;
146- window . addEventListener ( 'unload' , this . unloadListener ) ;
147- }
148143 }
149144
150145 async _initialize ( ) : Promise < void > {
@@ -190,9 +185,6 @@ export class PowerSyncDatabase extends AbstractPowerSyncDatabase {
190185 * multiple tabs are not enabled.
191186 */
192187 close ( options ?: PowerSyncCloseOptions ) : Promise < void > {
193- if ( this . unloadListener ) {
194- window . removeEventListener ( 'unload' , this . unloadListener ) ;
195- }
196188 return super . close ( {
197189 // Don't disconnect by default if multiple tabs are enabled
198190 disconnect : options ?. disconnect ?? ! this . resolvedFlags . enableMultiTabs
0 commit comments