| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 | "use strict";var _CoreManager = _interopRequireDefault(require("./CoreManager"));function _interopRequireDefault(obj) {  return obj && obj.__esModule ? obj : {    default: obj  };}/** * @flow */const Storage = {  async() /*: boolean*/{    const controller = _CoreManager.default.getStorageController();    return !!controller.async;  },  getItem(path /*: string*/) /*: ?string*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      throw new Error('Synchronous storage is not supported by the current storage controller');    }    return controller.getItem(path);  },  getItemAsync(path /*: string*/) /*: Promise<string>*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      return controller.getItemAsync(path);    }    return Promise.resolve(controller.getItem(path));  },  setItem(path /*: string*/, value /*: string*/) /*: void*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      throw new Error('Synchronous storage is not supported by the current storage controller');    }    return controller.setItem(path, value);  },  setItemAsync(path /*: string*/, value /*: string*/) /*: Promise<void>*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      return controller.setItemAsync(path, value);    }    return Promise.resolve(controller.setItem(path, value));  },  removeItem(path /*: string*/) /*: void*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      throw new Error('Synchronous storage is not supported by the current storage controller');    }    return controller.removeItem(path);  },  removeItemAsync(path /*: string*/) /*: Promise<void>*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      return controller.removeItemAsync(path);    }    return Promise.resolve(controller.removeItem(path));  },  getAllKeys() /*: Array<string>*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      throw new Error('Synchronous storage is not supported by the current storage controller');    }    return controller.getAllKeys();  },  getAllKeysAsync() /*: Promise<Array<string>>*/{    const controller = _CoreManager.default.getStorageController();    if (controller.async === 1) {      return controller.getAllKeysAsync();    }    return Promise.resolve(controller.getAllKeys());  },  generatePath(path /*: string*/) /*: string*/{    if (!_CoreManager.default.get('APPLICATION_ID')) {      throw new Error('You need to call Parse.initialize before using Parse.');    }    if (typeof path !== 'string') {      throw new Error('Tried to get a Storage path that was not a String.');    }    if (path[0] === '/') {      path = path.substr(1);    }    return 'Parse/' + _CoreManager.default.get('APPLICATION_ID') + '/' + path;  },  _clear() {    const controller = _CoreManager.default.getStorageController();    if (controller.hasOwnProperty('clear')) {      controller.clear();    }  }};module.exports = Storage;_CoreManager.default.setStorageController(require('./StorageController.default'));
 |