files.com
Version:
Files.com SDK for JavaScript
209 lines (208 loc) • 10.1 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
exports.__esModule = true;
exports.default = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _Api = _interopRequireDefault(require("../Api"));
var errors = _interopRequireWildcard(require("../Errors"));
var _utils = require("../utils");
var _FileCommentReaction;
/* eslint-disable no-unused-vars */
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/* eslint-enable no-unused-vars */
/**
* Class FileCommentReaction
*/
var FileCommentReaction = /*#__PURE__*/(0, _createClass2.default)(function FileCommentReaction() {
var _this = this;
var attributes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
(0, _classCallCheck2.default)(this, FileCommentReaction);
(0, _defineProperty2.default)(this, "attributes", {});
(0, _defineProperty2.default)(this, "options", {});
(0, _defineProperty2.default)(this, "isLoaded", function () {
return !!_this.attributes.id;
});
// int64 # Reaction ID
(0, _defineProperty2.default)(this, "getId", function () {
return _this.attributes.id;
});
(0, _defineProperty2.default)(this, "setId", function (value) {
_this.attributes.id = value;
});
// string # Emoji used in the reaction.
(0, _defineProperty2.default)(this, "getEmoji", function () {
return _this.attributes.emoji;
});
(0, _defineProperty2.default)(this, "setEmoji", function (value) {
_this.attributes.emoji = value;
});
// int64 # User ID. Provide a value of `0` to operate the current session's user.
(0, _defineProperty2.default)(this, "getUserId", function () {
return _this.attributes.user_id;
});
(0, _defineProperty2.default)(this, "setUserId", function (value) {
_this.attributes.user_id = value;
});
// int64 # ID of file comment to attach reaction to.
(0, _defineProperty2.default)(this, "getFileCommentId", function () {
return _this.attributes.file_comment_id;
});
(0, _defineProperty2.default)(this, "setFileCommentId", function (value) {
_this.attributes.file_comment_id = value;
});
(0, _defineProperty2.default)(this, "delete", /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
var params,
_args = arguments;
return _regenerator.default.wrap(function (_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
params = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
if (_this.attributes.id) {
_context.next = 1;
break;
}
throw new errors.EmptyPropertyError('Current object has no id');
case 1:
if ((0, _utils.isObject)(params)) {
_context.next = 2;
break;
}
throw new errors.InvalidParameterError("Bad parameter: params must be of type object, received ".concat((0, _utils.getType)(params)));
case 2:
params.id = _this.attributes.id;
if (!(params.id && !(0, _utils.isInt)(params.id))) {
_context.next = 3;
break;
}
throw new errors.InvalidParameterError("Bad parameter: id must be of type Int, received ".concat((0, _utils.getType)(params.id)));
case 3:
if (params.id) {
_context.next = 5;
break;
}
if (!_this.attributes.id) {
_context.next = 4;
break;
}
params.id = _this.id;
_context.next = 5;
break;
case 4:
throw new errors.MissingParameterError('Parameter missing: id');
case 5:
_context.next = 6;
return _Api.default.sendRequest("/file_comment_reactions/".concat(encodeURIComponent(params.id)), 'DELETE', params, _this.options);
case 6:
case "end":
return _context.stop();
}
}, _callee);
})));
(0, _defineProperty2.default)(this, "destroy", function () {
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return _this.delete(params);
});
(0, _defineProperty2.default)(this, "save", /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
var newObject;
return _regenerator.default.wrap(function (_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
if (!_this.attributes.id) {
_context2.next = 1;
break;
}
throw new errors.NotImplementedError('The FileCommentReaction object doesn\'t support updates.');
case 1:
_context2.next = 2;
return FileCommentReaction.create(_this.attributes, _this.options);
case 2:
newObject = _context2.sent;
_this.attributes = _objectSpread({}, newObject.attributes);
return _context2.abrupt("return", true);
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
})));
Object.entries(attributes).forEach(function (_ref3) {
var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
key = _ref4[0],
value = _ref4[1];
var normalizedKey = key.replace('?', '');
_this.attributes[normalizedKey] = value;
Object.defineProperty(_this, normalizedKey, {
value: value,
writable: false
});
});
this.options = _objectSpread({}, options);
});
_FileCommentReaction = FileCommentReaction;
// Parameters:
// user_id - int64 - User ID. Provide a value of `0` to operate the current session's user.
// file_comment_id (required) - int64 - ID of file comment to attach reaction to.
// emoji (required) - string - Emoji to react with.
(0, _defineProperty2.default)(FileCommentReaction, "create", /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
var params,
options,
response,
_args3 = arguments;
return _regenerator.default.wrap(function (_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
params = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {};
options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
if (params.file_comment_id) {
_context3.next = 1;
break;
}
throw new errors.MissingParameterError('Parameter missing: file_comment_id');
case 1:
if (params.emoji) {
_context3.next = 2;
break;
}
throw new errors.MissingParameterError('Parameter missing: emoji');
case 2:
if (!(params.user_id && !(0, _utils.isInt)(params.user_id))) {
_context3.next = 3;
break;
}
throw new errors.InvalidParameterError("Bad parameter: user_id must be of type Int, received ".concat((0, _utils.getType)(params.user_id)));
case 3:
if (!(params.file_comment_id && !(0, _utils.isInt)(params.file_comment_id))) {
_context3.next = 4;
break;
}
throw new errors.InvalidParameterError("Bad parameter: file_comment_id must be of type Int, received ".concat((0, _utils.getType)(params.file_comment_id)));
case 4:
if (!(params.emoji && !(0, _utils.isString)(params.emoji))) {
_context3.next = 5;
break;
}
throw new errors.InvalidParameterError("Bad parameter: emoji must be of type String, received ".concat((0, _utils.getType)(params.emoji)));
case 5:
_context3.next = 6;
return _Api.default.sendRequest('/file_comment_reactions', 'POST', params, options);
case 6:
response = _context3.sent;
return _context3.abrupt("return", new _FileCommentReaction(response === null || response === void 0 ? void 0 : response.data, options));
case 7:
case "end":
return _context3.stop();
}
}, _callee3);
})));
var _default = exports.default = FileCommentReaction;
module.exports = FileCommentReaction;
module.exports.default = FileCommentReaction;
;