StorageController.react-native.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
  3. var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
  4. var _CoreManager = _interopRequireDefault(require("./CoreManager"));
  5. /**
  6. * Copyright (c) 2015-present, Parse, LLC.
  7. * All rights reserved.
  8. *
  9. * This source code is licensed under the BSD-style license found in the
  10. * LICENSE file in the root directory of this source tree. An additional grant
  11. * of patent rights can be found in the PATENTS file in the same directory.
  12. *
  13. * @flow
  14. * @private
  15. */
  16. var StorageController = {
  17. async: 1,
  18. getItemAsync: function (path
  19. /*: string*/
  20. )
  21. /*: Promise*/
  22. {
  23. return new _promise.default(function (resolve, reject) {
  24. _CoreManager.default.getAsyncStorage().getItem(path, function (err, value) {
  25. if (err) {
  26. reject(err);
  27. } else {
  28. resolve(value);
  29. }
  30. });
  31. });
  32. },
  33. setItemAsync: function (path
  34. /*: string*/
  35. , value
  36. /*: string*/
  37. )
  38. /*: Promise*/
  39. {
  40. return new _promise.default(function (resolve, reject) {
  41. _CoreManager.default.getAsyncStorage().setItem(path, value, function (err, value) {
  42. if (err) {
  43. reject(err);
  44. } else {
  45. resolve(value);
  46. }
  47. });
  48. });
  49. },
  50. removeItemAsync: function (path
  51. /*: string*/
  52. )
  53. /*: Promise*/
  54. {
  55. return new _promise.default(function (resolve, reject) {
  56. _CoreManager.default.getAsyncStorage().removeItem(path, function (err) {
  57. if (err) {
  58. reject(err);
  59. } else {
  60. resolve();
  61. }
  62. });
  63. });
  64. },
  65. getAllKeysAsync: function ()
  66. /*: Promise*/
  67. {
  68. return new _promise.default(function (resolve, reject) {
  69. _CoreManager.default.getAsyncStorage().getAllKeys(function (err, keys) {
  70. if (err) {
  71. reject(err);
  72. } else {
  73. resolve(keys);
  74. }
  75. });
  76. });
  77. },
  78. multiGet: function (keys
  79. /*: Array<string>*/
  80. )
  81. /*: Promise<Array<Array<string>>>*/
  82. {
  83. return new _promise.default(function (resolve, reject) {
  84. _CoreManager.default.getAsyncStorage().multiGet(keys, function (err, result) {
  85. if (err) {
  86. reject(err);
  87. } else {
  88. resolve(result);
  89. }
  90. });
  91. });
  92. },
  93. multiRemove: function (keys
  94. /*: Array<string>*/
  95. )
  96. /*: Promise*/
  97. {
  98. return new _promise.default(function (resolve, reject) {
  99. _CoreManager.default.getAsyncStorage().multiRemove(keys, function (err) {
  100. if (err) {
  101. reject(err);
  102. } else {
  103. resolve(keys);
  104. }
  105. });
  106. });
  107. },
  108. clear: function () {
  109. return _CoreManager.default.getAsyncStorage().clear();
  110. }
  111. };
  112. module.exports = StorageController;