UNPKG

@ionic/storage-angular

Version:
89 lines (85 loc) 3 kB
import { __awaiter } from 'tslib'; import { isPlatformServer } from '@angular/common'; import * as i0 from '@angular/core'; import { InjectionToken, PLATFORM_ID, NgModule } from '@angular/core'; import { Storage } from '@ionic/storage'; export { Storage } from '@ionic/storage'; const StorageConfigToken = new InjectionToken('STORAGE_CONFIG_TOKEN'); class NoopStorage extends Storage { constructor() { super(); } create() { return __awaiter(this, void 0, void 0, function* () { return this; }); } defineDriver() { return __awaiter(this, void 0, void 0, function* () { }); } get driver() { return 'noop'; } get(key) { return __awaiter(this, void 0, void 0, function* () { return null; }); } set(key, value) { return __awaiter(this, void 0, void 0, function* () { }); } remove(key) { return __awaiter(this, void 0, void 0, function* () { }); } clear() { return __awaiter(this, void 0, void 0, function* () { }); } length() { return __awaiter(this, void 0, void 0, function* () { return 0; }); } keys() { return __awaiter(this, void 0, void 0, function* () { return []; }); } // eslint-disable-next-line @typescript-eslint/ban-types forEach(iteratorCallback) { return __awaiter(this, void 0, void 0, function* () { }); } setEncryptionKey(key) { } } function provideStorage(platformId, storageConfig) { if (isPlatformServer(platformId)) { // When running in a server context return the NoopStorage return new NoopStorage(); } return new Storage(storageConfig); } class IonicStorageModule { static forRoot(storageConfig = null) { return { ngModule: IonicStorageModule, providers: [ { provide: StorageConfigToken, useValue: storageConfig }, { provide: Storage, useFactory: provideStorage, deps: [PLATFORM_ID, StorageConfigToken], }, ], }; } } IonicStorageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: IonicStorageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); IonicStorageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: IonicStorageModule }); IonicStorageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: IonicStorageModule }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: IonicStorageModule, decorators: [{ type: NgModule }] }); /** * Generated bundle index. Do not edit. */ export { IonicStorageModule, StorageConfigToken, provideStorage }; //# sourceMappingURL=ionic-storage-angular.mjs.map