UNPKG

@rudymalhi/intacct-sdk

Version:

Sage Intacct SDK for JavaScript

64 lines 2.23 kB
"use strict"; /** * @module Intacct/SDK/Xml/Response */ Object.defineProperty(exports, "__esModule", { value: true }); /** * Copyright 2019 Sage Intacct, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not * use this file except in compliance with the License. You may obtain a copy * of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * or in the "LICENSE" file accompanying this file. This file is distributed on * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ const striptags = require("striptags"); class ErrorMessage { get errors() { return this._errors; } set errors(errors) { this._errors = errors; } constructor(errorMessages) { const errorContents = []; if (errorMessages.hasOwnProperty("error")) { const errors = errorMessages["error"]; if (Array.isArray(errors)) { for (const index in errors) { if (errors.hasOwnProperty(index)) { const errorObject = errors[index]; const pieces = this.combineErrorMessageElements(errorObject); errorContents.push(pieces.join(" ")); } } } else if (errorMessages instanceof Object) { const pieces = this.combineErrorMessageElements(errors); errorContents.push(pieces.join(" ")); } } this._errors = errorContents; } combineErrorMessageElements(errorObject) { const pieces = []; for (const errorField in errorObject) { if (errorObject.hasOwnProperty(errorField)) { const value = errorObject[errorField]; let piece = striptags(value); piece = piece.trim(); if (piece.length > 0) { pieces.push(piece); } } } return pieces; } } exports.default = ErrorMessage; //# sourceMappingURL=ErrorMessage.js.map