@elasticemail/elasticemail-client
Version:
Official ElasticEmail SDK. This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach.
314 lines (291 loc) • 14.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _ApiClient = _interopRequireDefault(require("../ApiClient"));
var _EmailJobFailedStatus = _interopRequireDefault(require("./EmailJobFailedStatus"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
* Elastic Email REST API
* This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
*
* The version of the OpenAPI document: 4.0.0
* Contact: support@elasticemail.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*
*/
/**
* The EmailJobStatus model module.
* @module model/EmailJobStatus
* @version 4.0.26
*/
var EmailJobStatus = /*#__PURE__*/function () {
/**
* Constructs a new <code>EmailJobStatus</code>.
* @alias module:model/EmailJobStatus
*/
function EmailJobStatus() {
_classCallCheck(this, EmailJobStatus);
EmailJobStatus.initialize(this);
}
/**
* Initializes the fields of this object.
* This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins).
* Only for internal use.
*/
return _createClass(EmailJobStatus, null, [{
key: "initialize",
value: function initialize(obj) {}
/**
* Constructs a <code>EmailJobStatus</code> from a plain JavaScript object, optionally creating a new instance.
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @param {module:model/EmailJobStatus} obj Optional instance to populate.
* @return {module:model/EmailJobStatus} The populated <code>EmailJobStatus</code> instance.
*/
}, {
key: "constructFromObject",
value: function constructFromObject(data, obj) {
if (data) {
obj = obj || new EmailJobStatus();
if (data.hasOwnProperty('ID')) {
obj['ID'] = _ApiClient["default"].convertToType(data['ID'], 'String');
}
if (data.hasOwnProperty('Status')) {
obj['Status'] = _ApiClient["default"].convertToType(data['Status'], 'String');
}
if (data.hasOwnProperty('RecipientsCount')) {
obj['RecipientsCount'] = _ApiClient["default"].convertToType(data['RecipientsCount'], 'Number');
}
if (data.hasOwnProperty('Failed')) {
obj['Failed'] = _ApiClient["default"].convertToType(data['Failed'], [_EmailJobFailedStatus["default"]]);
}
if (data.hasOwnProperty('FailedCount')) {
obj['FailedCount'] = _ApiClient["default"].convertToType(data['FailedCount'], 'Number');
}
if (data.hasOwnProperty('Sent')) {
obj['Sent'] = _ApiClient["default"].convertToType(data['Sent'], ['String']);
}
if (data.hasOwnProperty('SentCount')) {
obj['SentCount'] = _ApiClient["default"].convertToType(data['SentCount'], 'Number');
}
if (data.hasOwnProperty('Delivered')) {
obj['Delivered'] = _ApiClient["default"].convertToType(data['Delivered'], ['String']);
}
if (data.hasOwnProperty('DeliveredCount')) {
obj['DeliveredCount'] = _ApiClient["default"].convertToType(data['DeliveredCount'], 'Number');
}
if (data.hasOwnProperty('Pending')) {
obj['Pending'] = _ApiClient["default"].convertToType(data['Pending'], ['String']);
}
if (data.hasOwnProperty('PendingCount')) {
obj['PendingCount'] = _ApiClient["default"].convertToType(data['PendingCount'], 'Number');
}
if (data.hasOwnProperty('Opened')) {
obj['Opened'] = _ApiClient["default"].convertToType(data['Opened'], ['String']);
}
if (data.hasOwnProperty('OpenedCount')) {
obj['OpenedCount'] = _ApiClient["default"].convertToType(data['OpenedCount'], 'Number');
}
if (data.hasOwnProperty('Clicked')) {
obj['Clicked'] = _ApiClient["default"].convertToType(data['Clicked'], ['String']);
}
if (data.hasOwnProperty('ClickedCount')) {
obj['ClickedCount'] = _ApiClient["default"].convertToType(data['ClickedCount'], 'Number');
}
if (data.hasOwnProperty('Unsubscribed')) {
obj['Unsubscribed'] = _ApiClient["default"].convertToType(data['Unsubscribed'], ['String']);
}
if (data.hasOwnProperty('UnsubscribedCount')) {
obj['UnsubscribedCount'] = _ApiClient["default"].convertToType(data['UnsubscribedCount'], 'Number');
}
if (data.hasOwnProperty('AbuseReports')) {
obj['AbuseReports'] = _ApiClient["default"].convertToType(data['AbuseReports'], ['String']);
}
if (data.hasOwnProperty('AbuseReportsCount')) {
obj['AbuseReportsCount'] = _ApiClient["default"].convertToType(data['AbuseReportsCount'], 'Number');
}
if (data.hasOwnProperty('MessageIDs')) {
obj['MessageIDs'] = _ApiClient["default"].convertToType(data['MessageIDs'], ['String']);
}
}
return obj;
}
/**
* Validates the JSON data with respect to <code>EmailJobStatus</code>.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @return {boolean} to indicate whether the JSON data is valid with respect to <code>EmailJobStatus</code>.
*/
}, {
key: "validateJSON",
value: function validateJSON(data) {
// ensure the json data is a string
if (data['ID'] && !(typeof data['ID'] === 'string' || data['ID'] instanceof String)) {
throw new Error("Expected the field `ID` to be a primitive type in the JSON string but got " + data['ID']);
}
// ensure the json data is a string
if (data['Status'] && !(typeof data['Status'] === 'string' || data['Status'] instanceof String)) {
throw new Error("Expected the field `Status` to be a primitive type in the JSON string but got " + data['Status']);
}
if (data['Failed']) {
// data not null
// ensure the json data is an array
if (!Array.isArray(data['Failed'])) {
throw new Error("Expected the field `Failed` to be an array in the JSON data but got " + data['Failed']);
}
// validate the optional field `Failed` (array)
var _iterator = _createForOfIteratorHelper(data['Failed']),
_step;
try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var item = _step.value;
_EmailJobFailedStatus["default"].validateJSON(item);
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}
;
}
// ensure the json data is an array
if (!Array.isArray(data['Sent'])) {
throw new Error("Expected the field `Sent` to be an array in the JSON data but got " + data['Sent']);
}
// ensure the json data is an array
if (!Array.isArray(data['Delivered'])) {
throw new Error("Expected the field `Delivered` to be an array in the JSON data but got " + data['Delivered']);
}
// ensure the json data is an array
if (!Array.isArray(data['Pending'])) {
throw new Error("Expected the field `Pending` to be an array in the JSON data but got " + data['Pending']);
}
// ensure the json data is an array
if (!Array.isArray(data['Opened'])) {
throw new Error("Expected the field `Opened` to be an array in the JSON data but got " + data['Opened']);
}
// ensure the json data is an array
if (!Array.isArray(data['Clicked'])) {
throw new Error("Expected the field `Clicked` to be an array in the JSON data but got " + data['Clicked']);
}
// ensure the json data is an array
if (!Array.isArray(data['Unsubscribed'])) {
throw new Error("Expected the field `Unsubscribed` to be an array in the JSON data but got " + data['Unsubscribed']);
}
// ensure the json data is an array
if (!Array.isArray(data['AbuseReports'])) {
throw new Error("Expected the field `AbuseReports` to be an array in the JSON data but got " + data['AbuseReports']);
}
// ensure the json data is an array
if (!Array.isArray(data['MessageIDs'])) {
throw new Error("Expected the field `MessageIDs` to be an array in the JSON data but got " + data['MessageIDs']);
}
return true;
}
}]);
}();
/**
* ID number of your attachment
* @member {String} ID
*/
EmailJobStatus.prototype['ID'] = undefined;
/**
* Name of status: submitted, complete, in_progress
* @member {String} Status
*/
EmailJobStatus.prototype['Status'] = undefined;
/**
* @member {Number} RecipientsCount
*/
EmailJobStatus.prototype['RecipientsCount'] = undefined;
/**
* @member {Array.<module:model/EmailJobFailedStatus>} Failed
*/
EmailJobStatus.prototype['Failed'] = undefined;
/**
* Total emails failed.
* @member {Number} FailedCount
*/
EmailJobStatus.prototype['FailedCount'] = undefined;
/**
* @member {Array.<String>} Sent
*/
EmailJobStatus.prototype['Sent'] = undefined;
/**
* Total emails sent.
* @member {Number} SentCount
*/
EmailJobStatus.prototype['SentCount'] = undefined;
/**
* Number of delivered messages
* @member {Array.<String>} Delivered
*/
EmailJobStatus.prototype['Delivered'] = undefined;
/**
* @member {Number} DeliveredCount
*/
EmailJobStatus.prototype['DeliveredCount'] = undefined;
/**
* @member {Array.<String>} Pending
*/
EmailJobStatus.prototype['Pending'] = undefined;
/**
* @member {Number} PendingCount
*/
EmailJobStatus.prototype['PendingCount'] = undefined;
/**
* Number of opened messages
* @member {Array.<String>} Opened
*/
EmailJobStatus.prototype['Opened'] = undefined;
/**
* Total emails opened.
* @member {Number} OpenedCount
*/
EmailJobStatus.prototype['OpenedCount'] = undefined;
/**
* Number of clicked messages
* @member {Array.<String>} Clicked
*/
EmailJobStatus.prototype['Clicked'] = undefined;
/**
* Total emails clicked
* @member {Number} ClickedCount
*/
EmailJobStatus.prototype['ClickedCount'] = undefined;
/**
* Number of unsubscribed messages
* @member {Array.<String>} Unsubscribed
*/
EmailJobStatus.prototype['Unsubscribed'] = undefined;
/**
* Total emails unsubscribed
* @member {Number} UnsubscribedCount
*/
EmailJobStatus.prototype['UnsubscribedCount'] = undefined;
/**
* @member {Array.<String>} AbuseReports
*/
EmailJobStatus.prototype['AbuseReports'] = undefined;
/**
* @member {Number} AbuseReportsCount
*/
EmailJobStatus.prototype['AbuseReportsCount'] = undefined;
/**
* List of all MessageIDs for this job.
* @member {Array.<String>} MessageIDs
*/
EmailJobStatus.prototype['MessageIDs'] = undefined;
var _default = exports["default"] = EmailJobStatus;