Push.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.getPushStatus = getPushStatus;
  6. exports.send = send;
  7. var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
  8. var _CoreManager = _interopRequireDefault(require("./CoreManager"));
  9. var _ParseQuery = _interopRequireDefault(require("./ParseQuery"));
  10. function send(data) {
  11. var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  12. if (data.where && data.where instanceof _ParseQuery.default) {
  13. data.where = data.where.toJSON().where;
  14. }
  15. if (data.push_time && typeof data.push_time === 'object') {
  16. data.push_time = data.push_time.toJSON();
  17. }
  18. if (data.expiration_time && typeof data.expiration_time === 'object') {
  19. data.expiration_time = data.expiration_time.toJSON();
  20. }
  21. if (data.expiration_time && data.expiration_interval) {
  22. throw new Error('expiration_time and expiration_interval cannot both be set.');
  23. }
  24. var pushOptions = {
  25. useMasterKey: true
  26. };
  27. if (options.hasOwnProperty('useMasterKey')) {
  28. pushOptions.useMasterKey = options.useMasterKey;
  29. }
  30. return _CoreManager.default.getPushController().send(data, pushOptions);
  31. }
  32. function getPushStatus(pushStatusId) {
  33. var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  34. var pushOptions = {
  35. useMasterKey: true
  36. };
  37. if (options.hasOwnProperty('useMasterKey')) {
  38. pushOptions.useMasterKey = options.useMasterKey;
  39. }
  40. var query = new _ParseQuery.default('_PushStatus');
  41. return query.get(pushStatusId, pushOptions);
  42. }
  43. var DefaultController = {
  44. send: function () {
  45. var _send = (0, _asyncToGenerator2.default)(function* (data, options) {
  46. var _response$_headers;
  47. options.returnStatus = true;
  48. var response = yield _CoreManager.default.getRESTController().request('POST', 'push', data, options);
  49. return (_response$_headers = response._headers) == null ? void 0 : _response$_headers['X-Parse-Push-Status-Id'];
  50. });
  51. function send() {
  52. return _send.apply(this, arguments);
  53. }
  54. return send;
  55. }()
  56. };
  57. _CoreManager.default.setPushController(DefaultController);