strata-storage
Version:
Zero-dependency universal storage plugin providing a unified API for all storage operations across web, Android, and iOS platforms
33 lines (32 loc) • 688 B
JavaScript
/**
* Storage Observer - Watch for storage changes
*/
export class StorageObserver {
observers = new Set();
/**
* Subscribe to storage events
*/
subscribe(callback) {
this.observers.add(callback);
return () => this.observers.delete(callback);
}
/**
* Emit a storage event
*/
emit(event) {
this.observers.forEach((callback) => {
try {
callback(event);
}
catch (error) {
console.error('Error in storage observer:', error);
}
});
}
/**
* Clear all observers
*/
clear() {
this.observers.clear();
}
}