forked from um/web
14 lines
468 B
TypeScript
14 lines
468 B
TypeScript
|
import BaseStorage from './BaseStorage';
|
||
|
import BrowserNativeStorage from './BrowserNativeStorage';
|
||
|
import ChromeExtensionStorage from './ChromeExtensionStorage';
|
||
|
import InMemoryStorage from './InMemoryStorage';
|
||
|
|
||
|
export default function storageFactory(): BaseStorage {
|
||
|
if (ChromeExtensionStorage.works) {
|
||
|
return new ChromeExtensionStorage();
|
||
|
} else if (BrowserNativeStorage.works) {
|
||
|
return new BrowserNativeStorage();
|
||
|
}
|
||
|
return new InMemoryStorage();
|
||
|
}
|