mirror of https://github.com/BTCPrivate/copay.git
Removes chrome-storage
This commit is contained in:
parent
4cb54aad02
commit
29e281e4ed
|
@ -28,14 +28,6 @@
|
|||
</head>
|
||||
<body>
|
||||
|
||||
<!-- Workaround to prevent autofill -->
|
||||
<div style="display: none;">
|
||||
<input type="text"
|
||||
id="PreventChromeAutocomplete"
|
||||
name="PreventChromeAutocomplete"
|
||||
autocomplete="address-level4" />
|
||||
</div>
|
||||
|
||||
<!-- Ionic's root component and where the app will load -->
|
||||
<ion-app></ion-app>
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ import { Logger } from '@nsalaun/ng-logger';
|
|||
import { AppProvider } from '../providers/app/app';
|
||||
import { ProfileProvider } from '../providers/profile/profile';
|
||||
import { ConfigProvider } from '../providers/config/config';
|
||||
import { TouchIdProvider } from '../providers/touchid/touchid';
|
||||
|
||||
import { TabsPage } from '../pages/tabs/tabs';
|
||||
import { OnboardingPage } from '../pages/onboarding/onboarding';
|
||||
|
@ -14,7 +15,8 @@ import { PinModalPage } from '../pages/pin/pin';
|
|||
import { FingerprintModalPage } from '../pages/fingerprint/fingerprint';
|
||||
|
||||
@Component({
|
||||
templateUrl: 'app.html'
|
||||
templateUrl: 'app.html',
|
||||
providers: [TouchIdProvider]
|
||||
})
|
||||
export class CopayApp {
|
||||
rootPage: any;
|
||||
|
|
|
@ -7,7 +7,6 @@ import { PersistenceProvider } from './persistence';
|
|||
import { IStorage, ISTORAGE } from './storage/istorage';
|
||||
import { RamStorage } from './storage/ram-storage';
|
||||
import { LocalStorage } from './storage/local-storage';
|
||||
import { ChromeStorage } from './storage/chrome-storage';
|
||||
import { FileStorage } from './storage/file-storage';
|
||||
|
||||
describe('Storage Service', () => {
|
||||
|
|
|
@ -1,12 +1,11 @@
|
|||
import { Injectable } from '@angular/core';
|
||||
import { InjectionToken, Inject } from '@angular/core';
|
||||
import { Inject } from '@angular/core';
|
||||
import { Logger } from '@nsalaun/ng-logger';
|
||||
import * as _ from 'lodash';
|
||||
|
||||
import { IStorage, ISTORAGE } from './storage/istorage';
|
||||
import { PlatformProvider } from '../platform/platform';
|
||||
import { LocalStorage } from './storage/local-storage';
|
||||
import { ChromeStorage } from './storage/chrome-storage';
|
||||
import { FileStorage } from './storage/file-storage';
|
||||
import { RamStorage } from './storage/ram-storage';
|
||||
|
||||
|
|
|
@ -1,58 +0,0 @@
|
|||
import { Injectable } from '@angular/core';
|
||||
import { Logger } from '@nsalaun/ng-logger';
|
||||
import * as _ from 'lodash';
|
||||
|
||||
import { IStorage, KeyAlreadyExistsError } from './istorage';
|
||||
|
||||
@Injectable()
|
||||
export class ChromeStorage implements IStorage {
|
||||
ls: chrome.storage.StorageArea;
|
||||
constructor(private log: Logger) {
|
||||
let chrome: any;
|
||||
if (!chrome.storage || !chrome.storage.local) throw new Error('Chrome storage not supported');
|
||||
this.ls = chrome.storage.local;
|
||||
}
|
||||
|
||||
get(k: string): Promise<any> {
|
||||
return new Promise(resolve => {
|
||||
let v = this.ls.get(k, (v) => {
|
||||
if (!v) return resolve(null);
|
||||
if (!_.isString(v)) return resolve(v);
|
||||
let parsed: any;
|
||||
try {
|
||||
parsed = JSON.parse(v);
|
||||
} catch (e) {
|
||||
}
|
||||
resolve(parsed || v);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
set(k: string, v: any): Promise<void> {
|
||||
if (_.isObject(v)) {
|
||||
v = JSON.stringify(v);
|
||||
}
|
||||
if (v && !_.isString(v)) {
|
||||
v = v.toString();
|
||||
}
|
||||
|
||||
let obj = {};
|
||||
obj[k] = v;
|
||||
return new Promise<void>(resolve => {
|
||||
this.ls.set(obj, resolve);
|
||||
});
|
||||
}
|
||||
|
||||
remove(k: string): Promise<void> {
|
||||
return new Promise<void>(resolve => {
|
||||
this.ls.remove(k, resolve);
|
||||
});
|
||||
}
|
||||
|
||||
create(k: string, v: any): Promise<void> {
|
||||
return this.get(k).then((data) => {
|
||||
if (data) throw new KeyAlreadyExistsError();
|
||||
this.set(k, v);
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue