@ionic/storage-angular
Advanced tools
Comparing version 3.0.0-alpha.5 to 3.0.2
@@ -298,96 +298,2 @@ (function (global, factory) { | ||
} | ||
/** | ||
* Storage is an easy way to store key/value pairs and JSON objects. | ||
* Storage uses a variety of storage engines underneath, picking the best one available | ||
* depending on the platform. | ||
* | ||
* When running in a native app context, Storage will prioritize using SQLite, as it's one of | ||
* the most stable and widely used file-based databases, and avoids some of the | ||
* pitfalls of things like localstorage and IndexedDB, such as the OS deciding to clear out such | ||
* data in low disk-space situations. | ||
* | ||
* When running in the web or as a Progressive Web App, Storage will attempt to use | ||
* IndexedDB, WebSQL, and localstorage, in that order. | ||
* | ||
* @usage | ||
* First, if you'd like to use SQLite, install the cordova-sqlite-storage plugin: | ||
* ```bash | ||
* ionic cordova plugin add cordova-sqlite-storage | ||
* ``` | ||
* | ||
* Next, install the package (comes by default for Ionic apps > Ionic V1): | ||
* ```bash | ||
* npm install --save @ionic/storage | ||
* ``` | ||
* | ||
* Next, add it to the imports list in your `NgModule` declaration (for example, in `src/app/app.module.ts`): | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [ | ||
* // ... | ||
* ], | ||
* imports: [ | ||
* BrowserModule, | ||
* IonicModule.forRoot(MyApp), | ||
* IonicStorageModule.forRoot() | ||
* ], | ||
* bootstrap: [IonicApp], | ||
* entryComponents: [ | ||
* // ... | ||
* ], | ||
* providers: [ | ||
* // ... | ||
* ] | ||
* }) | ||
* export class AppModule {} | ||
*``` | ||
* | ||
* Finally, inject it into any of your components or pages: | ||
* ```typescript | ||
* import { Storage } from '@ionic/storage'; | ||
* export class MyApp { | ||
* constructor(private storage: Storage) { } | ||
* | ||
* ... | ||
* | ||
* // set a key/value | ||
* storage.set('name', 'Max'); | ||
* | ||
* // Or to get a key/value pair | ||
* storage.get('age').then((val) => { | ||
* console.log('Your age is', val); | ||
* }); | ||
* } | ||
* ``` | ||
* | ||
* | ||
* ### Configuring Storage | ||
* | ||
* The Storage engine can be configured both with specific storage engine priorities, or custom configuration | ||
* options to pass to localForage. See the localForage config docs for possible options: https://github.com/localForage/localForage#configuration | ||
* | ||
* Note: Any custom configurations will be merged with the default configuration | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [...], | ||
* imports: [ | ||
* IonicStorageModule.forRoot({ | ||
* name: '__mydb', | ||
driverOrder: ['indexeddb', 'sqlite', 'websql'] | ||
* }) | ||
* ], | ||
* bootstrap: [...], | ||
* entryComponents: [...], | ||
* providers: [...] | ||
* }) | ||
* export class AppModule { } | ||
* ``` | ||
*/ | ||
var IonicStorageModule = /** @class */ (function () { | ||
@@ -394,0 +300,0 @@ function IonicStorageModule() { |
@@ -54,96 +54,2 @@ var IonicStorageModule_1; | ||
} | ||
/** | ||
* Storage is an easy way to store key/value pairs and JSON objects. | ||
* Storage uses a variety of storage engines underneath, picking the best one available | ||
* depending on the platform. | ||
* | ||
* When running in a native app context, Storage will prioritize using SQLite, as it's one of | ||
* the most stable and widely used file-based databases, and avoids some of the | ||
* pitfalls of things like localstorage and IndexedDB, such as the OS deciding to clear out such | ||
* data in low disk-space situations. | ||
* | ||
* When running in the web or as a Progressive Web App, Storage will attempt to use | ||
* IndexedDB, WebSQL, and localstorage, in that order. | ||
* | ||
* @usage | ||
* First, if you'd like to use SQLite, install the cordova-sqlite-storage plugin: | ||
* ```bash | ||
* ionic cordova plugin add cordova-sqlite-storage | ||
* ``` | ||
* | ||
* Next, install the package (comes by default for Ionic apps > Ionic V1): | ||
* ```bash | ||
* npm install --save @ionic/storage | ||
* ``` | ||
* | ||
* Next, add it to the imports list in your `NgModule` declaration (for example, in `src/app/app.module.ts`): | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [ | ||
* // ... | ||
* ], | ||
* imports: [ | ||
* BrowserModule, | ||
* IonicModule.forRoot(MyApp), | ||
* IonicStorageModule.forRoot() | ||
* ], | ||
* bootstrap: [IonicApp], | ||
* entryComponents: [ | ||
* // ... | ||
* ], | ||
* providers: [ | ||
* // ... | ||
* ] | ||
* }) | ||
* export class AppModule {} | ||
*``` | ||
* | ||
* Finally, inject it into any of your components or pages: | ||
* ```typescript | ||
* import { Storage } from '@ionic/storage'; | ||
* export class MyApp { | ||
* constructor(private storage: Storage) { } | ||
* | ||
* ... | ||
* | ||
* // set a key/value | ||
* storage.set('name', 'Max'); | ||
* | ||
* // Or to get a key/value pair | ||
* storage.get('age').then((val) => { | ||
* console.log('Your age is', val); | ||
* }); | ||
* } | ||
* ``` | ||
* | ||
* | ||
* ### Configuring Storage | ||
* | ||
* The Storage engine can be configured both with specific storage engine priorities, or custom configuration | ||
* options to pass to localForage. See the localForage config docs for possible options: https://github.com/localForage/localForage#configuration | ||
* | ||
* Note: Any custom configurations will be merged with the default configuration | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [...], | ||
* imports: [ | ||
* IonicStorageModule.forRoot({ | ||
* name: '__mydb', | ||
driverOrder: ['indexeddb', 'sqlite', 'websql'] | ||
* }) | ||
* ], | ||
* bootstrap: [...], | ||
* entryComponents: [...], | ||
* providers: [...] | ||
* }) | ||
* export class AppModule { } | ||
* ``` | ||
*/ | ||
let IonicStorageModule = IonicStorageModule_1 = class IonicStorageModule { | ||
@@ -168,2 +74,2 @@ static forRoot(storageConfig = null) { | ||
export { IonicStorageModule }; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW9uaWMvc3RvcmFnZS1hbmd1bGFyLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFvQyxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0YsT0FBTyxFQUNMLE9BQU8sRUFFUixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQzNDLHNCQUFzQixDQUN2QixDQUFDO0FBRUYsT0FBTyxFQUFpQixrQkFBa0IsRUFBRSxPQUFPLEVBQUUsQ0FBQztBQUV0RCxNQUFNLFdBQVksU0FBUSxPQUFPO0lBQy9CO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBQ0ssTUFBTTs7WUFDVixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FBQTtJQUNLLFlBQVk7O1FBQ2xCLENBQUM7S0FBQTtJQUNELElBQUksTUFBTTtRQUNSLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDSyxHQUFHLENBQUMsR0FBVzs4REFBSSxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7S0FBQTtJQUNqQyxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVU7OERBQUksQ0FBQztLQUFBO0lBQ2hDLE1BQU0sQ0FBQyxHQUFXOzhEQUFrQixDQUFDO0tBQUE7SUFDckMsS0FBSzs4REFBb0IsQ0FBQztLQUFBO0lBQzFCLE1BQU07OERBQXNCLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUFBO0lBQ3ZDLElBQUk7OERBQUssT0FBTyxFQUFFLENBQUEsQ0FBQyxDQUFDO0tBQUE7SUFDcEIsT0FBTyxDQUFDLGdCQUEyRTs4REFBbUIsQ0FBQztLQUFBO0lBQzdHLGdCQUFnQixDQUFDLEdBQVcsSUFBSSxDQUFDO0NBQ2xDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsYUFBNEI7SUFFNUIsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDckMsMERBQTBEO1FBQzFELE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQztLQUMxQjtJQUVELE9BQU8sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUdEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Rkc7QUFFSCxJQUFhLGtCQUFrQiwwQkFBL0IsTUFBYSxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBK0IsSUFBSTtRQUNoRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLG9CQUFrQjtZQUM1QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRTtnQkFDeEQ7b0JBQ0UsT0FBTyxFQUFFLE9BQU87b0JBQ2hCLFVBQVUsRUFBRSxjQUFjO29CQUMxQixJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDM0I7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0NBQ0YsQ0FBQTtBQWRZLGtCQUFrQjtJQUQ5QixRQUFRLEVBQUU7R0FDRSxrQkFBa0IsQ0FjOUI7U0FkWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycywgUExBVEZPUk1fSUQsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFN0b3JhZ2UsXG4gIFN0b3JhZ2VDb25maWdcbn0gZnJvbSAnQGlvbmljL3N0b3JhZ2UnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmNvbnN0IFN0b3JhZ2VDb25maWdUb2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxhbnk+KFxuICAnU1RPUkFHRV9DT05GSUdfVE9LRU4nXG4pO1xuXG5leHBvcnQgeyBTdG9yYWdlQ29uZmlnLCBTdG9yYWdlQ29uZmlnVG9rZW4sIFN0b3JhZ2UgfTtcblxuY2xhc3MgTm9vcFN0b3JhZ2UgZXh0ZW5kcyBTdG9yYWdlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuICBhc3luYyBjcmVhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbiAgYXN5bmMgZGVmaW5lRHJpdmVyKCkge1xuICB9XG4gIGdldCBkcml2ZXIoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuICdub29wJztcbiAgfVxuICBhc3luYyBnZXQoa2V5OiBzdHJpbmcpIHsgcmV0dXJuIG51bGw7IH1cbiAgYXN5bmMgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7IH1cbiAgYXN5bmMgcmVtb3ZlKGtleTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHsgfVxuICBhc3luYyBjbGVhcigpOiBQcm9taXNlPHZvaWQ+IHsgfVxuICBhc3luYyBsZW5ndGgoKTogUHJvbWlzZTxudW1iZXI+IHsgcmV0dXJuIDA7IH1cbiAgYXN5bmMga2V5cygpIHsgcmV0dXJuIFtdIH1cbiAgYXN5bmMgZm9yRWFjaChpdGVyYXRvckNhbGxiYWNrOiAodmFsdWU6IGFueSwga2V5OiBzdHJpbmcsIGl0ZXJhdGlvbk51bWJlcjogTnVtYmVyKSA9PiBhbnkpOiBQcm9taXNlPHZvaWQ+IHsgfVxuICBzZXRFbmNyeXB0aW9uS2V5KGtleTogc3RyaW5nKSB7IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVTdG9yYWdlKFxuICBzdG9yYWdlQ29uZmlnOiBTdG9yYWdlQ29uZmlnXG4pOiBTdG9yYWdlIHtcbiAgaWYgKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgIC8vIFdoZW4gcnVubmluZyBpbiBhIHNlcnZlciBjb250ZXh0IHJldHVybiB0aGUgTm9vcFN0b3JhZ2VcbiAgICByZXR1cm4gbmV3IE5vb3BTdG9yYWdlKCk7XG4gIH1cblxuICByZXR1cm4gbmV3IFN0b3JhZ2Uoc3RvcmFnZUNvbmZpZyk7XG59XG5cblxuLyoqXG4gKiBTdG9yYWdlIGlzIGFuIGVhc3kgd2F5IHRvIHN0b3JlIGtleS92YWx1ZSBwYWlycyBhbmQgSlNPTiBvYmplY3RzLlxuICogU3RvcmFnZSB1c2VzIGEgdmFyaWV0eSBvZiBzdG9yYWdlIGVuZ2luZXMgdW5kZXJuZWF0aCwgcGlja2luZyB0aGUgYmVzdCBvbmUgYXZhaWxhYmxlXG4gKiBkZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtLlxuICpcbiAqIFdoZW4gcnVubmluZyBpbiBhIG5hdGl2ZSBhcHAgY29udGV4dCwgU3RvcmFnZSB3aWxsIHByaW9yaXRpemUgdXNpbmcgU1FMaXRlLCBhcyBpdCdzIG9uZSBvZlxuICogdGhlIG1vc3Qgc3RhYmxlIGFuZCB3aWRlbHkgdXNlZCBmaWxlLWJhc2VkIGRhdGFiYXNlcywgYW5kIGF2b2lkcyBzb21lIG9mIHRoZVxuICogcGl0ZmFsbHMgb2YgdGhpbmdzIGxpa2UgbG9jYWxzdG9yYWdlIGFuZCBJbmRleGVkREIsIHN1Y2ggYXMgdGhlIE9TIGRlY2lkaW5nIHRvIGNsZWFyIG91dCBzdWNoXG4gKiBkYXRhIGluIGxvdyBkaXNrLXNwYWNlIHNpdHVhdGlvbnMuXG4gKlxuICogV2hlbiBydW5uaW5nIGluIHRoZSB3ZWIgb3IgYXMgYSBQcm9ncmVzc2l2ZSBXZWIgQXBwLCBTdG9yYWdlIHdpbGwgYXR0ZW1wdCB0byB1c2VcbiAqIEluZGV4ZWREQiwgV2ViU1FMLCBhbmQgbG9jYWxzdG9yYWdlLCBpbiB0aGF0IG9yZGVyLlxuICpcbiAqIEB1c2FnZVxuICogRmlyc3QsIGlmIHlvdSdkIGxpa2UgdG8gdXNlIFNRTGl0ZSwgaW5zdGFsbCB0aGUgY29yZG92YS1zcWxpdGUtc3RvcmFnZSBwbHVnaW46XG4gKiBgYGBiYXNoXG4gKiBpb25pYyBjb3Jkb3ZhIHBsdWdpbiBhZGQgY29yZG92YS1zcWxpdGUtc3RvcmFnZVxuICogYGBgXG4gKlxuICogTmV4dCwgaW5zdGFsbCB0aGUgcGFja2FnZSAoY29tZXMgYnkgZGVmYXVsdCBmb3IgSW9uaWMgYXBwcyA+IElvbmljIFYxKTpcbiAqIGBgYGJhc2hcbiAqIG5wbSBpbnN0YWxsIC0tc2F2ZSBAaW9uaWMvc3RvcmFnZVxuICogYGBgXG4gKlxuICogTmV4dCwgYWRkIGl0IHRvIHRoZSBpbXBvcnRzIGxpc3QgaW4geW91ciBgTmdNb2R1bGVgIGRlY2xhcmF0aW9uIChmb3IgZXhhbXBsZSwgaW4gYHNyYy9hcHAvYXBwLm1vZHVsZS50c2ApOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IElvbmljU3RvcmFnZU1vZHVsZSB9IGZyb20gJ0Bpb25pYy9zdG9yYWdlJztcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBkZWNsYXJhdGlvbnM6IFtcbiAqICAgICAvLyAuLi5cbiAqICAgXSxcbiAqICAgaW1wb3J0czogW1xuICogICAgIEJyb3dzZXJNb2R1bGUsXG4gKiAgICAgSW9uaWNNb2R1bGUuZm9yUm9vdChNeUFwcCksXG4gKiAgICAgSW9uaWNTdG9yYWdlTW9kdWxlLmZvclJvb3QoKVxuICogICBdLFxuICogICBib290c3RyYXA6IFtJb25pY0FwcF0sXG4gKiAgIGVudHJ5Q29tcG9uZW50czogW1xuICogICAgIC8vIC4uLlxuICogICBdLFxuICogICBwcm92aWRlcnM6IFtcbiAqICAgICAvLyAuLi5cbiAqICAgXVxuICogfSlcbiAqIGV4cG9ydCBjbGFzcyBBcHBNb2R1bGUge31cbiAqYGBgXG4gKlxuICogRmluYWxseSwgaW5qZWN0IGl0IGludG8gYW55IG9mIHlvdXIgY29tcG9uZW50cyBvciBwYWdlczpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IFN0b3JhZ2UgfSBmcm9tICdAaW9uaWMvc3RvcmFnZSc7XG5cbiAqIGV4cG9ydCBjbGFzcyBNeUFwcCB7XG4gKiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmFnZTogU3RvcmFnZSkgeyB9XG4gKlxuICogICAuLi5cbiAqXG4gKiAgIC8vIHNldCBhIGtleS92YWx1ZVxuICogICBzdG9yYWdlLnNldCgnbmFtZScsICdNYXgnKTtcbiAqXG4gKiAgIC8vIE9yIHRvIGdldCBhIGtleS92YWx1ZSBwYWlyXG4gKiAgIHN0b3JhZ2UuZ2V0KCdhZ2UnKS50aGVuKCh2YWwpID0+IHtcbiAqICAgICBjb25zb2xlLmxvZygnWW91ciBhZ2UgaXMnLCB2YWwpO1xuICogICB9KTtcbiAqIH1cbiAqIGBgYFxuICpcbiAqXG4gKiAjIyMgQ29uZmlndXJpbmcgU3RvcmFnZVxuICpcbiAqIFRoZSBTdG9yYWdlIGVuZ2luZSBjYW4gYmUgY29uZmlndXJlZCBib3RoIHdpdGggc3BlY2lmaWMgc3RvcmFnZSBlbmdpbmUgcHJpb3JpdGllcywgb3IgY3VzdG9tIGNvbmZpZ3VyYXRpb25cbiAqIG9wdGlvbnMgdG8gcGFzcyB0byBsb2NhbEZvcmFnZS4gU2VlIHRoZSBsb2NhbEZvcmFnZSBjb25maWcgZG9jcyBmb3IgcG9zc2libGUgb3B0aW9uczogaHR0cHM6Ly9naXRodWIuY29tL2xvY2FsRm9yYWdlL2xvY2FsRm9yYWdlI2NvbmZpZ3VyYXRpb25cbiAqXG4gKiBOb3RlOiBBbnkgY3VzdG9tIGNvbmZpZ3VyYXRpb25zIHdpbGwgYmUgbWVyZ2VkIHdpdGggdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IElvbmljU3RvcmFnZU1vZHVsZSB9IGZyb20gJ0Bpb25pYy9zdG9yYWdlJztcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBkZWNsYXJhdGlvbnM6IFsuLi5dLFxuICogICBpbXBvcnRzOiBbXG4gKiAgICAgSW9uaWNTdG9yYWdlTW9kdWxlLmZvclJvb3Qoe1xuICogICAgICAgbmFtZTogJ19fbXlkYicsXG4gICAgICAgICBkcml2ZXJPcmRlcjogWydpbmRleGVkZGInLCAnc3FsaXRlJywgJ3dlYnNxbCddXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqICAgYm9vdHN0cmFwOiBbLi4uXSxcbiAqICAgZW50cnlDb21wb25lbnRzOiBbLi4uXSxcbiAqICAgIHByb3ZpZGVyczogWy4uLl1cbiAqIH0pXG4gKiBleHBvcnQgY2xhc3MgQXBwTW9kdWxlIHsgfVxuICogYGBgXG4gKi9cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgSW9uaWNTdG9yYWdlTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3Qoc3RvcmFnZUNvbmZpZzogU3RvcmFnZUNvbmZpZyA9IG51bGwpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPElvbmljU3RvcmFnZU1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogSW9uaWNTdG9yYWdlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU3RvcmFnZUNvbmZpZ1Rva2VuLCB1c2VWYWx1ZTogc3RvcmFnZUNvbmZpZyB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogU3RvcmFnZSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBwcm92aWRlU3RvcmFnZSxcbiAgICAgICAgICBkZXBzOiBbU3RvcmFnZUNvbmZpZ1Rva2VuXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW9uaWMvc3RvcmFnZS1hbmd1bGFyLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFvQyxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0YsT0FBTyxFQUNMLE9BQU8sRUFFUixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQzNDLHNCQUFzQixDQUN2QixDQUFDO0FBRUYsT0FBTyxFQUFpQixrQkFBa0IsRUFBRSxPQUFPLEVBQUUsQ0FBQztBQUV0RCxNQUFNLFdBQVksU0FBUSxPQUFPO0lBQy9CO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBQ0ssTUFBTTs7WUFDVixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FBQTtJQUNLLFlBQVk7O1FBQ2xCLENBQUM7S0FBQTtJQUNELElBQUksTUFBTTtRQUNSLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDSyxHQUFHLENBQUMsR0FBVzs4REFBSSxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7S0FBQTtJQUNqQyxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVU7OERBQUksQ0FBQztLQUFBO0lBQ2hDLE1BQU0sQ0FBQyxHQUFXOzhEQUFrQixDQUFDO0tBQUE7SUFDckMsS0FBSzs4REFBb0IsQ0FBQztLQUFBO0lBQzFCLE1BQU07OERBQXNCLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUFBO0lBQ3ZDLElBQUk7OERBQUssT0FBTyxFQUFFLENBQUEsQ0FBQyxDQUFDO0tBQUE7SUFDcEIsT0FBTyxDQUFDLGdCQUEyRTs4REFBbUIsQ0FBQztLQUFBO0lBQzdHLGdCQUFnQixDQUFDLEdBQVcsSUFBSSxDQUFDO0NBQ2xDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsYUFBNEI7SUFFNUIsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDckMsMERBQTBEO1FBQzFELE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQztLQUMxQjtJQUVELE9BQU8sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUdELElBQWEsa0JBQWtCLDBCQUEvQixNQUFhLGtCQUFrQjtJQUM3QixNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUErQixJQUFJO1FBQ2hELE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO2dCQUN4RDtvQkFDRSxPQUFPLEVBQUUsT0FBTztvQkFDaEIsVUFBVSxFQUFFLGNBQWM7b0JBQzFCLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUMzQjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRixDQUFBO0FBZFksa0JBQWtCO0lBRDlCLFFBQVEsRUFBRTtHQUNFLGtCQUFrQixDQWM5QjtTQWRZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBQTEFURk9STV9JRCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU3RvcmFnZSxcbiAgU3RvcmFnZUNvbmZpZ1xufSBmcm9tICdAaW9uaWMvc3RvcmFnZSc7XG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuY29uc3QgU3RvcmFnZUNvbmZpZ1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oXG4gICdTVE9SQUdFX0NPTkZJR19UT0tFTidcbik7XG5cbmV4cG9ydCB7IFN0b3JhZ2VDb25maWcsIFN0b3JhZ2VDb25maWdUb2tlbiwgU3RvcmFnZSB9O1xuXG5jbGFzcyBOb29wU3RvcmFnZSBleHRlbmRzIFN0b3JhZ2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIGFzeW5jIGNyZWF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuICBhc3luYyBkZWZpbmVEcml2ZXIoKSB7XG4gIH1cbiAgZ2V0IGRyaXZlcigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gJ25vb3AnO1xuICB9XG4gIGFzeW5jIGdldChrZXk6IHN0cmluZykgeyByZXR1cm4gbnVsbDsgfVxuICBhc3luYyBzZXQoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpIHsgfVxuICBhc3luYyByZW1vdmUoa2V5OiBzdHJpbmcpOiBQcm9taXNlPGFueT4geyB9XG4gIGFzeW5jIGNsZWFyKCk6IFByb21pc2U8dm9pZD4geyB9XG4gIGFzeW5jIGxlbmd0aCgpOiBQcm9taXNlPG51bWJlcj4geyByZXR1cm4gMDsgfVxuICBhc3luYyBrZXlzKCkgeyByZXR1cm4gW10gfVxuICBhc3luYyBmb3JFYWNoKGl0ZXJhdG9yQ2FsbGJhY2s6ICh2YWx1ZTogYW55LCBrZXk6IHN0cmluZywgaXRlcmF0aW9uTnVtYmVyOiBOdW1iZXIpID0+IGFueSk6IFByb21pc2U8dm9pZD4geyB9XG4gIHNldEVuY3J5cHRpb25LZXkoa2V5OiBzdHJpbmcpIHsgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0b3JhZ2UoXG4gIHN0b3JhZ2VDb25maWc6IFN0b3JhZ2VDb25maWdcbik6IFN0b3JhZ2Uge1xuICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgLy8gV2hlbiBydW5uaW5nIGluIGEgc2VydmVyIGNvbnRleHQgcmV0dXJuIHRoZSBOb29wU3RvcmFnZVxuICAgIHJldHVybiBuZXcgTm9vcFN0b3JhZ2UoKTtcbiAgfVxuXG4gIHJldHVybiBuZXcgU3RvcmFnZShzdG9yYWdlQ29uZmlnKTtcbn1cblxuQE5nTW9kdWxlKClcbmV4cG9ydCBjbGFzcyBJb25pY1N0b3JhZ2VNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChzdG9yYWdlQ29uZmlnOiBTdG9yYWdlQ29uZmlnID0gbnVsbCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SW9uaWNTdG9yYWdlTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBJb25pY1N0b3JhZ2VNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBTdG9yYWdlQ29uZmlnVG9rZW4sIHVzZVZhbHVlOiBzdG9yYWdlQ29uZmlnIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBTdG9yYWdlLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IHByb3ZpZGVTdG9yYWdlLFxuICAgICAgICAgIGRlcHM6IFtTdG9yYWdlQ29uZmlnVG9rZW5dXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0= |
@@ -78,96 +78,2 @@ import { __awaiter, __decorate, __extends, __generator } from "tslib"; | ||
} | ||
/** | ||
* Storage is an easy way to store key/value pairs and JSON objects. | ||
* Storage uses a variety of storage engines underneath, picking the best one available | ||
* depending on the platform. | ||
* | ||
* When running in a native app context, Storage will prioritize using SQLite, as it's one of | ||
* the most stable and widely used file-based databases, and avoids some of the | ||
* pitfalls of things like localstorage and IndexedDB, such as the OS deciding to clear out such | ||
* data in low disk-space situations. | ||
* | ||
* When running in the web or as a Progressive Web App, Storage will attempt to use | ||
* IndexedDB, WebSQL, and localstorage, in that order. | ||
* | ||
* @usage | ||
* First, if you'd like to use SQLite, install the cordova-sqlite-storage plugin: | ||
* ```bash | ||
* ionic cordova plugin add cordova-sqlite-storage | ||
* ``` | ||
* | ||
* Next, install the package (comes by default for Ionic apps > Ionic V1): | ||
* ```bash | ||
* npm install --save @ionic/storage | ||
* ``` | ||
* | ||
* Next, add it to the imports list in your `NgModule` declaration (for example, in `src/app/app.module.ts`): | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [ | ||
* // ... | ||
* ], | ||
* imports: [ | ||
* BrowserModule, | ||
* IonicModule.forRoot(MyApp), | ||
* IonicStorageModule.forRoot() | ||
* ], | ||
* bootstrap: [IonicApp], | ||
* entryComponents: [ | ||
* // ... | ||
* ], | ||
* providers: [ | ||
* // ... | ||
* ] | ||
* }) | ||
* export class AppModule {} | ||
*``` | ||
* | ||
* Finally, inject it into any of your components or pages: | ||
* ```typescript | ||
* import { Storage } from '@ionic/storage'; | ||
* export class MyApp { | ||
* constructor(private storage: Storage) { } | ||
* | ||
* ... | ||
* | ||
* // set a key/value | ||
* storage.set('name', 'Max'); | ||
* | ||
* // Or to get a key/value pair | ||
* storage.get('age').then((val) => { | ||
* console.log('Your age is', val); | ||
* }); | ||
* } | ||
* ``` | ||
* | ||
* | ||
* ### Configuring Storage | ||
* | ||
* The Storage engine can be configured both with specific storage engine priorities, or custom configuration | ||
* options to pass to localForage. See the localForage config docs for possible options: https://github.com/localForage/localForage#configuration | ||
* | ||
* Note: Any custom configurations will be merged with the default configuration | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [...], | ||
* imports: [ | ||
* IonicStorageModule.forRoot({ | ||
* name: '__mydb', | ||
driverOrder: ['indexeddb', 'sqlite', 'websql'] | ||
* }) | ||
* ], | ||
* bootstrap: [...], | ||
* entryComponents: [...], | ||
* providers: [...] | ||
* }) | ||
* export class AppModule { } | ||
* ``` | ||
*/ | ||
var IonicStorageModule = /** @class */ (function () { | ||
@@ -198,2 +104,2 @@ function IonicStorageModule() { | ||
export { IonicStorageModule }; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW9uaWMvc3RvcmFnZS1hbmd1bGFyLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQW9DLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzRixPQUFPLEVBQ0wsT0FBTyxFQUVSLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsSUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FDM0Msc0JBQXNCLENBQ3ZCLENBQUM7QUFFRixPQUFPLEVBQWlCLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxDQUFDO0FBRXREO0lBQTBCLCtCQUFPO0lBQy9CO2VBQ0UsaUJBQU87SUFDVCxDQUFDO0lBQ0ssNEJBQU0sR0FBWjs7O2dCQUNFLHNCQUFPLElBQUksRUFBQzs7O0tBQ2I7SUFDSyxrQ0FBWSxHQUFsQjs7Ozs7O0tBQ0M7SUFDRCxzQkFBSSwrQkFBTTthQUFWO1lBQ0UsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQzs7O09BQUE7SUFDSyx5QkFBRyxHQUFULFVBQVUsR0FBVzs7WUFBSSxzQkFBTyxJQUFJLEVBQUM7O0tBQUU7SUFDakMseUJBQUcsR0FBVCxVQUFVLEdBQVcsRUFBRSxLQUFVOzs7O0tBQUs7SUFDaEMsNEJBQU0sR0FBWixVQUFhLEdBQVc7Ozs7S0FBbUI7SUFDckMsMkJBQUssR0FBWDs7OztLQUFnQztJQUMxQiw0QkFBTSxHQUFaOztZQUFrQyxzQkFBTyxDQUFDLEVBQUM7O0tBQUU7SUFDdkMsMEJBQUksR0FBVjs7WUFBZSxzQkFBTyxFQUFFLEVBQUE7O0tBQUU7SUFDcEIsNkJBQU8sR0FBYixVQUFjLGdCQUEyRTs7OztLQUFvQjtJQUM3RyxzQ0FBZ0IsR0FBaEIsVUFBaUIsR0FBVyxJQUFJLENBQUM7SUFDbkMsa0JBQUM7QUFBRCxDQUFDLEFBcEJELENBQTBCLE9BQU8sR0FvQmhDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsYUFBNEI7SUFFNUIsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDckMsMERBQTBEO1FBQzFELE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQztLQUMxQjtJQUVELE9BQU8sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUdEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Rkc7QUFFSDtJQUFBO0lBY0EsQ0FBQzsyQkFkWSxrQkFBa0I7SUFDdEIsMEJBQU8sR0FBZCxVQUFlLGFBQW1DO1FBQW5DLDhCQUFBLEVBQUEsb0JBQW1DO1FBQ2hELE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO2dCQUN4RDtvQkFDRSxPQUFPLEVBQUUsT0FBTztvQkFDaEIsVUFBVSxFQUFFLGNBQWM7b0JBQzFCLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUMzQjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7O0lBYlUsa0JBQWtCO1FBRDlCLFFBQVEsRUFBRTtPQUNFLGtCQUFrQixDQWM5QjtJQUFELHlCQUFDO0NBQUEsQUFkRCxJQWNDO1NBZFksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMsIFBMQVRGT1JNX0lELCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBTdG9yYWdlLFxuICBTdG9yYWdlQ29uZmlnXG59IGZyb20gJ0Bpb25pYy9zdG9yYWdlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1TZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5jb25zdCBTdG9yYWdlQ29uZmlnVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PihcbiAgJ1NUT1JBR0VfQ09ORklHX1RPS0VOJ1xuKTtcblxuZXhwb3J0IHsgU3RvcmFnZUNvbmZpZywgU3RvcmFnZUNvbmZpZ1Rva2VuLCBTdG9yYWdlIH07XG5cbmNsYXNzIE5vb3BTdG9yYWdlIGV4dGVuZHMgU3RvcmFnZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cbiAgYXN5bmMgY3JlYXRlKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9XG4gIGFzeW5jIGRlZmluZURyaXZlcigpIHtcbiAgfVxuICBnZXQgZHJpdmVyKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiAnbm9vcCc7XG4gIH1cbiAgYXN5bmMgZ2V0KGtleTogc3RyaW5nKSB7IHJldHVybiBudWxsOyB9XG4gIGFzeW5jIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSkgeyB9XG4gIGFzeW5jIHJlbW92ZShrZXk6IHN0cmluZyk6IFByb21pc2U8YW55PiB7IH1cbiAgYXN5bmMgY2xlYXIoKTogUHJvbWlzZTx2b2lkPiB7IH1cbiAgYXN5bmMgbGVuZ3RoKCk6IFByb21pc2U8bnVtYmVyPiB7IHJldHVybiAwOyB9XG4gIGFzeW5jIGtleXMoKSB7IHJldHVybiBbXSB9XG4gIGFzeW5jIGZvckVhY2goaXRlcmF0b3JDYWxsYmFjazogKHZhbHVlOiBhbnksIGtleTogc3RyaW5nLCBpdGVyYXRpb25OdW1iZXI6IE51bWJlcikgPT4gYW55KTogUHJvbWlzZTx2b2lkPiB7IH1cbiAgc2V0RW5jcnlwdGlvbktleShrZXk6IHN0cmluZykgeyB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlU3RvcmFnZShcbiAgc3RvcmFnZUNvbmZpZzogU3RvcmFnZUNvbmZpZ1xuKTogU3RvcmFnZSB7XG4gIGlmIChpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAvLyBXaGVuIHJ1bm5pbmcgaW4gYSBzZXJ2ZXIgY29udGV4dCByZXR1cm4gdGhlIE5vb3BTdG9yYWdlXG4gICAgcmV0dXJuIG5ldyBOb29wU3RvcmFnZSgpO1xuICB9XG5cbiAgcmV0dXJuIG5ldyBTdG9yYWdlKHN0b3JhZ2VDb25maWcpO1xufVxuXG5cbi8qKlxuICogU3RvcmFnZSBpcyBhbiBlYXN5IHdheSB0byBzdG9yZSBrZXkvdmFsdWUgcGFpcnMgYW5kIEpTT04gb2JqZWN0cy5cbiAqIFN0b3JhZ2UgdXNlcyBhIHZhcmlldHkgb2Ygc3RvcmFnZSBlbmdpbmVzIHVuZGVybmVhdGgsIHBpY2tpbmcgdGhlIGJlc3Qgb25lIGF2YWlsYWJsZVxuICogZGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybS5cbiAqXG4gKiBXaGVuIHJ1bm5pbmcgaW4gYSBuYXRpdmUgYXBwIGNvbnRleHQsIFN0b3JhZ2Ugd2lsbCBwcmlvcml0aXplIHVzaW5nIFNRTGl0ZSwgYXMgaXQncyBvbmUgb2ZcbiAqIHRoZSBtb3N0IHN0YWJsZSBhbmQgd2lkZWx5IHVzZWQgZmlsZS1iYXNlZCBkYXRhYmFzZXMsIGFuZCBhdm9pZHMgc29tZSBvZiB0aGVcbiAqIHBpdGZhbGxzIG9mIHRoaW5ncyBsaWtlIGxvY2Fsc3RvcmFnZSBhbmQgSW5kZXhlZERCLCBzdWNoIGFzIHRoZSBPUyBkZWNpZGluZyB0byBjbGVhciBvdXQgc3VjaFxuICogZGF0YSBpbiBsb3cgZGlzay1zcGFjZSBzaXR1YXRpb25zLlxuICpcbiAqIFdoZW4gcnVubmluZyBpbiB0aGUgd2ViIG9yIGFzIGEgUHJvZ3Jlc3NpdmUgV2ViIEFwcCwgU3RvcmFnZSB3aWxsIGF0dGVtcHQgdG8gdXNlXG4gKiBJbmRleGVkREIsIFdlYlNRTCwgYW5kIGxvY2Fsc3RvcmFnZSwgaW4gdGhhdCBvcmRlci5cbiAqXG4gKiBAdXNhZ2VcbiAqIEZpcnN0LCBpZiB5b3UnZCBsaWtlIHRvIHVzZSBTUUxpdGUsIGluc3RhbGwgdGhlIGNvcmRvdmEtc3FsaXRlLXN0b3JhZ2UgcGx1Z2luOlxuICogYGBgYmFzaFxuICogaW9uaWMgY29yZG92YSBwbHVnaW4gYWRkIGNvcmRvdmEtc3FsaXRlLXN0b3JhZ2VcbiAqIGBgYFxuICpcbiAqIE5leHQsIGluc3RhbGwgdGhlIHBhY2thZ2UgKGNvbWVzIGJ5IGRlZmF1bHQgZm9yIElvbmljIGFwcHMgPiBJb25pYyBWMSk6XG4gKiBgYGBiYXNoXG4gKiBucG0gaW5zdGFsbCAtLXNhdmUgQGlvbmljL3N0b3JhZ2VcbiAqIGBgYFxuICpcbiAqIE5leHQsIGFkZCBpdCB0byB0aGUgaW1wb3J0cyBsaXN0IGluIHlvdXIgYE5nTW9kdWxlYCBkZWNsYXJhdGlvbiAoZm9yIGV4YW1wbGUsIGluIGBzcmMvYXBwL2FwcC5tb2R1bGUudHNgKTpcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBJb25pY1N0b3JhZ2VNb2R1bGUgfSBmcm9tICdAaW9uaWMvc3RvcmFnZSc7XG4gKlxuICogQE5nTW9kdWxlKHtcbiAqICAgZGVjbGFyYXRpb25zOiBbXG4gKiAgICAgLy8gLi4uXG4gKiAgIF0sXG4gKiAgIGltcG9ydHM6IFtcbiAqICAgICBCcm93c2VyTW9kdWxlLFxuICogICAgIElvbmljTW9kdWxlLmZvclJvb3QoTXlBcHApLFxuICogICAgIElvbmljU3RvcmFnZU1vZHVsZS5mb3JSb290KClcbiAqICAgXSxcbiAqICAgYm9vdHN0cmFwOiBbSW9uaWNBcHBdLFxuICogICBlbnRyeUNvbXBvbmVudHM6IFtcbiAqICAgICAvLyAuLi5cbiAqICAgXSxcbiAqICAgcHJvdmlkZXJzOiBbXG4gKiAgICAgLy8gLi4uXG4gKiAgIF1cbiAqIH0pXG4gKiBleHBvcnQgY2xhc3MgQXBwTW9kdWxlIHt9XG4gKmBgYFxuICpcbiAqIEZpbmFsbHksIGluamVjdCBpdCBpbnRvIGFueSBvZiB5b3VyIGNvbXBvbmVudHMgb3IgcGFnZXM6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBTdG9yYWdlIH0gZnJvbSAnQGlvbmljL3N0b3JhZ2UnO1xuXG4gKiBleHBvcnQgY2xhc3MgTXlBcHAge1xuICogICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JhZ2U6IFN0b3JhZ2UpIHsgfVxuICpcbiAqICAgLi4uXG4gKlxuICogICAvLyBzZXQgYSBrZXkvdmFsdWVcbiAqICAgc3RvcmFnZS5zZXQoJ25hbWUnLCAnTWF4Jyk7XG4gKlxuICogICAvLyBPciB0byBnZXQgYSBrZXkvdmFsdWUgcGFpclxuICogICBzdG9yYWdlLmdldCgnYWdlJykudGhlbigodmFsKSA9PiB7XG4gKiAgICAgY29uc29sZS5sb2coJ1lvdXIgYWdlIGlzJywgdmFsKTtcbiAqICAgfSk7XG4gKiB9XG4gKiBgYGBcbiAqXG4gKlxuICogIyMjIENvbmZpZ3VyaW5nIFN0b3JhZ2VcbiAqXG4gKiBUaGUgU3RvcmFnZSBlbmdpbmUgY2FuIGJlIGNvbmZpZ3VyZWQgYm90aCB3aXRoIHNwZWNpZmljIHN0b3JhZ2UgZW5naW5lIHByaW9yaXRpZXMsIG9yIGN1c3RvbSBjb25maWd1cmF0aW9uXG4gKiBvcHRpb25zIHRvIHBhc3MgdG8gbG9jYWxGb3JhZ2UuIFNlZSB0aGUgbG9jYWxGb3JhZ2UgY29uZmlnIGRvY3MgZm9yIHBvc3NpYmxlIG9wdGlvbnM6IGh0dHBzOi8vZ2l0aHViLmNvbS9sb2NhbEZvcmFnZS9sb2NhbEZvcmFnZSNjb25maWd1cmF0aW9uXG4gKlxuICogTm90ZTogQW55IGN1c3RvbSBjb25maWd1cmF0aW9ucyB3aWxsIGJlIG1lcmdlZCB3aXRoIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb25cbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBJb25pY1N0b3JhZ2VNb2R1bGUgfSBmcm9tICdAaW9uaWMvc3RvcmFnZSc7XG4gKlxuICogQE5nTW9kdWxlKHtcbiAqICAgZGVjbGFyYXRpb25zOiBbLi4uXSxcbiAqICAgaW1wb3J0czogW1xuICogICAgIElvbmljU3RvcmFnZU1vZHVsZS5mb3JSb290KHtcbiAqICAgICAgIG5hbWU6ICdfX215ZGInLFxuICAgICAgICAgZHJpdmVyT3JkZXI6IFsnaW5kZXhlZGRiJywgJ3NxbGl0ZScsICd3ZWJzcWwnXVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiAgIGJvb3RzdHJhcDogWy4uLl0sXG4gKiAgIGVudHJ5Q29tcG9uZW50czogWy4uLl0sXG4gKiAgICBwcm92aWRlcnM6IFsuLi5dXG4gKiB9KVxuICogZXhwb3J0IGNsYXNzIEFwcE1vZHVsZSB7IH1cbiAqIGBgYFxuICovXG5ATmdNb2R1bGUoKVxuZXhwb3J0IGNsYXNzIElvbmljU3RvcmFnZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KHN0b3JhZ2VDb25maWc6IFN0b3JhZ2VDb25maWcgPSBudWxsKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJb25pY1N0b3JhZ2VNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IElvbmljU3RvcmFnZU1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IFN0b3JhZ2VDb25maWdUb2tlbiwgdXNlVmFsdWU6IHN0b3JhZ2VDb25maWcgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IFN0b3JhZ2UsXG4gICAgICAgICAgdXNlRmFjdG9yeTogcHJvdmlkZVN0b3JhZ2UsXG4gICAgICAgICAgZGVwczogW1N0b3JhZ2VDb25maWdUb2tlbl1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW9uaWMvc3RvcmFnZS1hbmd1bGFyLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQW9DLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzRixPQUFPLEVBQ0wsT0FBTyxFQUVSLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsSUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FDM0Msc0JBQXNCLENBQ3ZCLENBQUM7QUFFRixPQUFPLEVBQWlCLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxDQUFDO0FBRXREO0lBQTBCLCtCQUFPO0lBQy9CO2VBQ0UsaUJBQU87SUFDVCxDQUFDO0lBQ0ssNEJBQU0sR0FBWjs7O2dCQUNFLHNCQUFPLElBQUksRUFBQzs7O0tBQ2I7SUFDSyxrQ0FBWSxHQUFsQjs7Ozs7O0tBQ0M7SUFDRCxzQkFBSSwrQkFBTTthQUFWO1lBQ0UsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQzs7O09BQUE7SUFDSyx5QkFBRyxHQUFULFVBQVUsR0FBVzs7WUFBSSxzQkFBTyxJQUFJLEVBQUM7O0tBQUU7SUFDakMseUJBQUcsR0FBVCxVQUFVLEdBQVcsRUFBRSxLQUFVOzs7O0tBQUs7SUFDaEMsNEJBQU0sR0FBWixVQUFhLEdBQVc7Ozs7S0FBbUI7SUFDckMsMkJBQUssR0FBWDs7OztLQUFnQztJQUMxQiw0QkFBTSxHQUFaOztZQUFrQyxzQkFBTyxDQUFDLEVBQUM7O0tBQUU7SUFDdkMsMEJBQUksR0FBVjs7WUFBZSxzQkFBTyxFQUFFLEVBQUE7O0tBQUU7SUFDcEIsNkJBQU8sR0FBYixVQUFjLGdCQUEyRTs7OztLQUFvQjtJQUM3RyxzQ0FBZ0IsR0FBaEIsVUFBaUIsR0FBVyxJQUFJLENBQUM7SUFDbkMsa0JBQUM7QUFBRCxDQUFDLEFBcEJELENBQTBCLE9BQU8sR0FvQmhDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsYUFBNEI7SUFFNUIsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDckMsMERBQTBEO1FBQzFELE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQztLQUMxQjtJQUVELE9BQU8sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUdEO0lBQUE7SUFjQSxDQUFDOzJCQWRZLGtCQUFrQjtJQUN0QiwwQkFBTyxHQUFkLFVBQWUsYUFBbUM7UUFBbkMsOEJBQUEsRUFBQSxvQkFBbUM7UUFDaEQsT0FBTztZQUNMLFFBQVEsRUFBRSxvQkFBa0I7WUFDNUIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUU7Z0JBQ3hEO29CQUNFLE9BQU8sRUFBRSxPQUFPO29CQUNoQixVQUFVLEVBQUUsY0FBYztvQkFDMUIsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7aUJBQzNCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7SUFiVSxrQkFBa0I7UUFEOUIsUUFBUSxFQUFFO09BQ0Usa0JBQWtCLENBYzlCO0lBQUQseUJBQUM7Q0FBQSxBQWRELElBY0M7U0FkWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycywgUExBVEZPUk1fSUQsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFN0b3JhZ2UsXG4gIFN0b3JhZ2VDb25maWdcbn0gZnJvbSAnQGlvbmljL3N0b3JhZ2UnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmNvbnN0IFN0b3JhZ2VDb25maWdUb2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxhbnk+KFxuICAnU1RPUkFHRV9DT05GSUdfVE9LRU4nXG4pO1xuXG5leHBvcnQgeyBTdG9yYWdlQ29uZmlnLCBTdG9yYWdlQ29uZmlnVG9rZW4sIFN0b3JhZ2UgfTtcblxuY2xhc3MgTm9vcFN0b3JhZ2UgZXh0ZW5kcyBTdG9yYWdlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuICBhc3luYyBjcmVhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbiAgYXN5bmMgZGVmaW5lRHJpdmVyKCkge1xuICB9XG4gIGdldCBkcml2ZXIoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuICdub29wJztcbiAgfVxuICBhc3luYyBnZXQoa2V5OiBzdHJpbmcpIHsgcmV0dXJuIG51bGw7IH1cbiAgYXN5bmMgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7IH1cbiAgYXN5bmMgcmVtb3ZlKGtleTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHsgfVxuICBhc3luYyBjbGVhcigpOiBQcm9taXNlPHZvaWQ+IHsgfVxuICBhc3luYyBsZW5ndGgoKTogUHJvbWlzZTxudW1iZXI+IHsgcmV0dXJuIDA7IH1cbiAgYXN5bmMga2V5cygpIHsgcmV0dXJuIFtdIH1cbiAgYXN5bmMgZm9yRWFjaChpdGVyYXRvckNhbGxiYWNrOiAodmFsdWU6IGFueSwga2V5OiBzdHJpbmcsIGl0ZXJhdGlvbk51bWJlcjogTnVtYmVyKSA9PiBhbnkpOiBQcm9taXNlPHZvaWQ+IHsgfVxuICBzZXRFbmNyeXB0aW9uS2V5KGtleTogc3RyaW5nKSB7IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVTdG9yYWdlKFxuICBzdG9yYWdlQ29uZmlnOiBTdG9yYWdlQ29uZmlnXG4pOiBTdG9yYWdlIHtcbiAgaWYgKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgIC8vIFdoZW4gcnVubmluZyBpbiBhIHNlcnZlciBjb250ZXh0IHJldHVybiB0aGUgTm9vcFN0b3JhZ2VcbiAgICByZXR1cm4gbmV3IE5vb3BTdG9yYWdlKCk7XG4gIH1cblxuICByZXR1cm4gbmV3IFN0b3JhZ2Uoc3RvcmFnZUNvbmZpZyk7XG59XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgSW9uaWNTdG9yYWdlTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3Qoc3RvcmFnZUNvbmZpZzogU3RvcmFnZUNvbmZpZyA9IG51bGwpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPElvbmljU3RvcmFnZU1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogSW9uaWNTdG9yYWdlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU3RvcmFnZUNvbmZpZ1Rva2VuLCB1c2VWYWx1ZTogc3RvcmFnZUNvbmZpZyB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogU3RvcmFnZSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBwcm92aWRlU3RvcmFnZSxcbiAgICAgICAgICBkZXBzOiBbU3RvcmFnZUNvbmZpZ1Rva2VuXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19 |
@@ -55,96 +55,2 @@ import { __awaiter, __decorate } from 'tslib'; | ||
} | ||
/** | ||
* Storage is an easy way to store key/value pairs and JSON objects. | ||
* Storage uses a variety of storage engines underneath, picking the best one available | ||
* depending on the platform. | ||
* | ||
* When running in a native app context, Storage will prioritize using SQLite, as it's one of | ||
* the most stable and widely used file-based databases, and avoids some of the | ||
* pitfalls of things like localstorage and IndexedDB, such as the OS deciding to clear out such | ||
* data in low disk-space situations. | ||
* | ||
* When running in the web or as a Progressive Web App, Storage will attempt to use | ||
* IndexedDB, WebSQL, and localstorage, in that order. | ||
* | ||
* @usage | ||
* First, if you'd like to use SQLite, install the cordova-sqlite-storage plugin: | ||
* ```bash | ||
* ionic cordova plugin add cordova-sqlite-storage | ||
* ``` | ||
* | ||
* Next, install the package (comes by default for Ionic apps > Ionic V1): | ||
* ```bash | ||
* npm install --save @ionic/storage | ||
* ``` | ||
* | ||
* Next, add it to the imports list in your `NgModule` declaration (for example, in `src/app/app.module.ts`): | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [ | ||
* // ... | ||
* ], | ||
* imports: [ | ||
* BrowserModule, | ||
* IonicModule.forRoot(MyApp), | ||
* IonicStorageModule.forRoot() | ||
* ], | ||
* bootstrap: [IonicApp], | ||
* entryComponents: [ | ||
* // ... | ||
* ], | ||
* providers: [ | ||
* // ... | ||
* ] | ||
* }) | ||
* export class AppModule {} | ||
*``` | ||
* | ||
* Finally, inject it into any of your components or pages: | ||
* ```typescript | ||
* import { Storage } from '@ionic/storage'; | ||
* export class MyApp { | ||
* constructor(private storage: Storage) { } | ||
* | ||
* ... | ||
* | ||
* // set a key/value | ||
* storage.set('name', 'Max'); | ||
* | ||
* // Or to get a key/value pair | ||
* storage.get('age').then((val) => { | ||
* console.log('Your age is', val); | ||
* }); | ||
* } | ||
* ``` | ||
* | ||
* | ||
* ### Configuring Storage | ||
* | ||
* The Storage engine can be configured both with specific storage engine priorities, or custom configuration | ||
* options to pass to localForage. See the localForage config docs for possible options: https://github.com/localForage/localForage#configuration | ||
* | ||
* Note: Any custom configurations will be merged with the default configuration | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [...], | ||
* imports: [ | ||
* IonicStorageModule.forRoot({ | ||
* name: '__mydb', | ||
driverOrder: ['indexeddb', 'sqlite', 'websql'] | ||
* }) | ||
* ], | ||
* bootstrap: [...], | ||
* entryComponents: [...], | ||
* providers: [...] | ||
* }) | ||
* export class AppModule { } | ||
* ``` | ||
*/ | ||
let IonicStorageModule = IonicStorageModule_1 = class IonicStorageModule { | ||
@@ -151,0 +57,0 @@ static forRoot(storageConfig = null) { |
@@ -79,96 +79,2 @@ import { __extends, __awaiter, __generator, __decorate } from 'tslib'; | ||
} | ||
/** | ||
* Storage is an easy way to store key/value pairs and JSON objects. | ||
* Storage uses a variety of storage engines underneath, picking the best one available | ||
* depending on the platform. | ||
* | ||
* When running in a native app context, Storage will prioritize using SQLite, as it's one of | ||
* the most stable and widely used file-based databases, and avoids some of the | ||
* pitfalls of things like localstorage and IndexedDB, such as the OS deciding to clear out such | ||
* data in low disk-space situations. | ||
* | ||
* When running in the web or as a Progressive Web App, Storage will attempt to use | ||
* IndexedDB, WebSQL, and localstorage, in that order. | ||
* | ||
* @usage | ||
* First, if you'd like to use SQLite, install the cordova-sqlite-storage plugin: | ||
* ```bash | ||
* ionic cordova plugin add cordova-sqlite-storage | ||
* ``` | ||
* | ||
* Next, install the package (comes by default for Ionic apps > Ionic V1): | ||
* ```bash | ||
* npm install --save @ionic/storage | ||
* ``` | ||
* | ||
* Next, add it to the imports list in your `NgModule` declaration (for example, in `src/app/app.module.ts`): | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [ | ||
* // ... | ||
* ], | ||
* imports: [ | ||
* BrowserModule, | ||
* IonicModule.forRoot(MyApp), | ||
* IonicStorageModule.forRoot() | ||
* ], | ||
* bootstrap: [IonicApp], | ||
* entryComponents: [ | ||
* // ... | ||
* ], | ||
* providers: [ | ||
* // ... | ||
* ] | ||
* }) | ||
* export class AppModule {} | ||
*``` | ||
* | ||
* Finally, inject it into any of your components or pages: | ||
* ```typescript | ||
* import { Storage } from '@ionic/storage'; | ||
* export class MyApp { | ||
* constructor(private storage: Storage) { } | ||
* | ||
* ... | ||
* | ||
* // set a key/value | ||
* storage.set('name', 'Max'); | ||
* | ||
* // Or to get a key/value pair | ||
* storage.get('age').then((val) => { | ||
* console.log('Your age is', val); | ||
* }); | ||
* } | ||
* ``` | ||
* | ||
* | ||
* ### Configuring Storage | ||
* | ||
* The Storage engine can be configured both with specific storage engine priorities, or custom configuration | ||
* options to pass to localForage. See the localForage config docs for possible options: https://github.com/localForage/localForage#configuration | ||
* | ||
* Note: Any custom configurations will be merged with the default configuration | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [...], | ||
* imports: [ | ||
* IonicStorageModule.forRoot({ | ||
* name: '__mydb', | ||
driverOrder: ['indexeddb', 'sqlite', 'websql'] | ||
* }) | ||
* ], | ||
* bootstrap: [...], | ||
* entryComponents: [...], | ||
* providers: [...] | ||
* }) | ||
* export class AppModule { } | ||
* ``` | ||
*/ | ||
var IonicStorageModule = /** @class */ (function () { | ||
@@ -175,0 +81,0 @@ function IonicStorageModule() { |
@@ -6,98 +6,4 @@ import { ModuleWithProviders, InjectionToken } from '@angular/core'; | ||
export declare function provideStorage(storageConfig: StorageConfig): Storage; | ||
/** | ||
* Storage is an easy way to store key/value pairs and JSON objects. | ||
* Storage uses a variety of storage engines underneath, picking the best one available | ||
* depending on the platform. | ||
* | ||
* When running in a native app context, Storage will prioritize using SQLite, as it's one of | ||
* the most stable and widely used file-based databases, and avoids some of the | ||
* pitfalls of things like localstorage and IndexedDB, such as the OS deciding to clear out such | ||
* data in low disk-space situations. | ||
* | ||
* When running in the web or as a Progressive Web App, Storage will attempt to use | ||
* IndexedDB, WebSQL, and localstorage, in that order. | ||
* | ||
* @usage | ||
* First, if you'd like to use SQLite, install the cordova-sqlite-storage plugin: | ||
* ```bash | ||
* ionic cordova plugin add cordova-sqlite-storage | ||
* ``` | ||
* | ||
* Next, install the package (comes by default for Ionic apps > Ionic V1): | ||
* ```bash | ||
* npm install --save @ionic/storage | ||
* ``` | ||
* | ||
* Next, add it to the imports list in your `NgModule` declaration (for example, in `src/app/app.module.ts`): | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [ | ||
* // ... | ||
* ], | ||
* imports: [ | ||
* BrowserModule, | ||
* IonicModule.forRoot(MyApp), | ||
* IonicStorageModule.forRoot() | ||
* ], | ||
* bootstrap: [IonicApp], | ||
* entryComponents: [ | ||
* // ... | ||
* ], | ||
* providers: [ | ||
* // ... | ||
* ] | ||
* }) | ||
* export class AppModule {} | ||
*``` | ||
* | ||
* Finally, inject it into any of your components or pages: | ||
* ```typescript | ||
* import { Storage } from '@ionic/storage'; | ||
* export class MyApp { | ||
* constructor(private storage: Storage) { } | ||
* | ||
* ... | ||
* | ||
* // set a key/value | ||
* storage.set('name', 'Max'); | ||
* | ||
* // Or to get a key/value pair | ||
* storage.get('age').then((val) => { | ||
* console.log('Your age is', val); | ||
* }); | ||
* } | ||
* ``` | ||
* | ||
* | ||
* ### Configuring Storage | ||
* | ||
* The Storage engine can be configured both with specific storage engine priorities, or custom configuration | ||
* options to pass to localForage. See the localForage config docs for possible options: https://github.com/localForage/localForage#configuration | ||
* | ||
* Note: Any custom configurations will be merged with the default configuration | ||
* | ||
* ```typescript | ||
* import { IonicStorageModule } from '@ionic/storage'; | ||
* | ||
* @NgModule({ | ||
* declarations: [...], | ||
* imports: [ | ||
* IonicStorageModule.forRoot({ | ||
* name: '__mydb', | ||
driverOrder: ['indexeddb', 'sqlite', 'websql'] | ||
* }) | ||
* ], | ||
* bootstrap: [...], | ||
* entryComponents: [...], | ||
* providers: [...] | ||
* }) | ||
* export class AppModule { } | ||
* ``` | ||
*/ | ||
export declare class IonicStorageModule { | ||
static forRoot(storageConfig?: StorageConfig): ModuleWithProviders<IonicStorageModule>; | ||
} |
@@ -1,1 +0,1 @@ | ||
{"__symbolic":"module","version":4,"metadata":{"StorageConfigToken":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":8,"character":31},"arguments":["STORAGE_CONFIG_TOKEN"]},"provideStorage":{"__symbolic":"function"},"IonicStorageModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":142,"character":1}}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["storageConfig"],"defaults":[null],"value":{"ngModule":{"__symbolic":"reference","name":"IonicStorageModule"},"providers":[{"provide":{"__symbolic":"reference","name":"StorageConfigToken"},"useValue":{"__symbolic":"reference","name":"storageConfig"}},{"provide":{"__symbolic":"reference","module":"@ionic/storage","name":"Storage","line":150,"character":19},"useFactory":{"__symbolic":"reference","name":"provideStorage"},"deps":[{"__symbolic":"reference","name":"StorageConfigToken"}]}]}}}}},"origins":{"StorageConfigToken":"./index","StorageConfig":"@ionic/storage","Storage":"@ionic/storage","provideStorage":"./index","IonicStorageModule":"./index"},"importAs":"@ionic/storage-angular"} | ||
{"__symbolic":"module","version":4,"metadata":{"StorageConfigToken":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":8,"character":31},"arguments":["STORAGE_CONFIG_TOKEN"]},"provideStorage":{"__symbolic":"function"},"IonicStorageModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":47,"character":1}}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["storageConfig"],"defaults":[null],"value":{"ngModule":{"__symbolic":"reference","name":"IonicStorageModule"},"providers":[{"provide":{"__symbolic":"reference","name":"StorageConfigToken"},"useValue":{"__symbolic":"reference","name":"storageConfig"}},{"provide":{"__symbolic":"reference","module":"@ionic/storage","name":"Storage","line":55,"character":19},"useFactory":{"__symbolic":"reference","name":"provideStorage"},"deps":[{"__symbolic":"reference","name":"StorageConfigToken"}]}]}}}}},"origins":{"StorageConfigToken":"./index","StorageConfig":"@ionic/storage","Storage":"@ionic/storage","provideStorage":"./index","IonicStorageModule":"./index"},"importAs":"@ionic/storage-angular"} |
{ | ||
"name": "@ionic/storage-angular", | ||
"version": "3.0.0-alpha.5", | ||
"version": "3.0.2", | ||
"description": "Ionic Storage utility", | ||
@@ -22,4 +22,3 @@ "repository": { | ||
"dependencies": { | ||
"localforage": "1.7.1", | ||
"localforage-cordovasqlitedriver": "1.7.0", | ||
"@ionic/storage": "3.0.0-alpha.2", | ||
"tslib": "^1.10.0" | ||
@@ -62,3 +61,3 @@ }, | ||
}, | ||
"gitHead": "d711a0c40addba50180df24a063226f1bdaf0aa9", | ||
"gitHead": "0b550acdc2d21c95c68e0655b28698ec60fa283a", | ||
"main": "bundles/ionic-storage-angular.umd.js", | ||
@@ -65,0 +64,0 @@ "module": "fesm5/ionic-storage-angular.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
4
1
0
98765
16
709
+ Added@ionic/storage@3.0.0-alpha.2
+ Added@ionic/storage@3.0.0-alpha.2(transitive)
+ Addedlocalforage@1.10.0(transitive)
- Removedlocalforage@1.7.1
- Removedlocalforage@1.7.1(transitive)
- Removedlocalforage-cordovasqlitedriver@1.7.0(transitive)