StorageController.default.js 943 B

12345678910111213141516171819202122232425262728293031323334353637
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
  3. var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
  4. /**
  5. * @flow
  6. * @private
  7. */
  8. // When there is no native storage interface, we default to an in-memory map
  9. var memMap = {};
  10. var StorageController = {
  11. async: 0,
  12. getItem: function (path /*: string*/) /*: ?string*/{
  13. if (memMap.hasOwnProperty(path)) {
  14. return memMap[path];
  15. }
  16. return null;
  17. },
  18. setItem: function (path /*: string*/, value /*: string*/) {
  19. memMap[path] = String(value);
  20. },
  21. removeItem: function (path /*: string*/) {
  22. delete memMap[path];
  23. },
  24. getAllKeys: function () {
  25. return (0, _keys.default)(memMap);
  26. },
  27. clear: function () {
  28. for (var key in memMap) {
  29. if (memMap.hasOwnProperty(key)) {
  30. delete memMap[key];
  31. }
  32. }
  33. }
  34. };
  35. module.exports = StorageController;