StorageController.react-native.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  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. getAsyncStorage: function ()
  19. /*: any*/
  20. {
  21. return _CoreManager.default.getAsyncStorage();
  22. },
  23. getItemAsync: function (path
  24. /*: string*/
  25. )
  26. /*: Promise*/
  27. {
  28. var _this = this;
  29. return new _promise.default(function (resolve, reject) {
  30. _this.getAsyncStorage().getItem(path, function (err, value) {
  31. if (err) {
  32. reject(err);
  33. } else {
  34. resolve(value);
  35. }
  36. });
  37. });
  38. },
  39. setItemAsync: function (path
  40. /*: string*/
  41. , value
  42. /*: string*/
  43. )
  44. /*: Promise*/
  45. {
  46. var _this2 = this;
  47. return new _promise.default(function (resolve, reject) {
  48. _this2.getAsyncStorage().setItem(path, value, function (err, value) {
  49. if (err) {
  50. reject(err);
  51. } else {
  52. resolve(value);
  53. }
  54. });
  55. });
  56. },
  57. removeItemAsync: function (path
  58. /*: string*/
  59. )
  60. /*: Promise*/
  61. {
  62. var _this3 = this;
  63. return new _promise.default(function (resolve, reject) {
  64. _this3.getAsyncStorage().removeItem(path, function (err) {
  65. if (err) {
  66. reject(err);
  67. } else {
  68. resolve();
  69. }
  70. });
  71. });
  72. },
  73. getAllKeysAsync: function ()
  74. /*: Promise*/
  75. {
  76. var _this4 = this;
  77. return new _promise.default(function (resolve, reject) {
  78. _this4.getAsyncStorage().getAllKeys(function (err, keys) {
  79. if (err) {
  80. reject(err);
  81. } else {
  82. resolve(keys);
  83. }
  84. });
  85. });
  86. },
  87. multiGet: function (keys
  88. /*: Array<string>*/
  89. )
  90. /*: Promise<Array<Array<string>>>*/
  91. {
  92. var _this5 = this;
  93. return new _promise.default(function (resolve, reject) {
  94. _this5.getAsyncStorage().multiGet(keys, function (err, result) {
  95. if (err) {
  96. reject(err);
  97. } else {
  98. resolve(result);
  99. }
  100. });
  101. });
  102. },
  103. multiRemove: function (keys
  104. /*: Array<string>*/
  105. )
  106. /*: Promise*/
  107. {
  108. var _this6 = this;
  109. return new _promise.default(function (resolve, reject) {
  110. _this6.getAsyncStorage().multiRemove(keys, function (err) {
  111. if (err) {
  112. reject(err);
  113. } else {
  114. resolve(keys);
  115. }
  116. });
  117. });
  118. },
  119. clear: function () {
  120. return this.getAsyncStorage().clear();
  121. }
  122. };
  123. module.exports = StorageController;