UNPKG

@adyen/api-library

Version:

The Adyen API Library for NodeJS enables you to work with Adyen APIs.

206 lines 9.09 kB
"use strict"; /* * The version of the OpenAPI document: v1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit this class manually. */ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ObjectSerializer = void 0; __exportStar(require("./address"), exports); __exportStar(require("./assignTerminalsRequest"), exports); __exportStar(require("./assignTerminalsResponse"), exports); __exportStar(require("./findTerminalRequest"), exports); __exportStar(require("./findTerminalResponse"), exports); __exportStar(require("./getStoresUnderAccountRequest"), exports); __exportStar(require("./getStoresUnderAccountResponse"), exports); __exportStar(require("./getTerminalDetailsRequest"), exports); __exportStar(require("./getTerminalDetailsResponse"), exports); __exportStar(require("./getTerminalsUnderAccountRequest"), exports); __exportStar(require("./getTerminalsUnderAccountResponse"), exports); __exportStar(require("./merchantAccount"), exports); __exportStar(require("./serviceError"), exports); __exportStar(require("./store"), exports); const address_1 = require("./address"); const assignTerminalsRequest_1 = require("./assignTerminalsRequest"); const assignTerminalsResponse_1 = require("./assignTerminalsResponse"); const findTerminalRequest_1 = require("./findTerminalRequest"); const findTerminalResponse_1 = require("./findTerminalResponse"); const getStoresUnderAccountRequest_1 = require("./getStoresUnderAccountRequest"); const getStoresUnderAccountResponse_1 = require("./getStoresUnderAccountResponse"); const getTerminalDetailsRequest_1 = require("./getTerminalDetailsRequest"); const getTerminalDetailsResponse_1 = require("./getTerminalDetailsResponse"); const getTerminalsUnderAccountRequest_1 = require("./getTerminalsUnderAccountRequest"); const getTerminalsUnderAccountResponse_1 = require("./getTerminalsUnderAccountResponse"); const merchantAccount_1 = require("./merchantAccount"); const serviceError_1 = require("./serviceError"); const store_1 = require("./store"); /* tslint:disable:no-unused-variable */ let primitives = [ "string", "boolean", "double", "integer", "long", "float", "number", "any" ]; let enumsMap = { "GetTerminalDetailsResponse.TerminalStatusEnum": getTerminalDetailsResponse_1.GetTerminalDetailsResponse.TerminalStatusEnum, }; let typeMap = { "Address": address_1.Address, "AssignTerminalsRequest": assignTerminalsRequest_1.AssignTerminalsRequest, "AssignTerminalsResponse": assignTerminalsResponse_1.AssignTerminalsResponse, "FindTerminalRequest": findTerminalRequest_1.FindTerminalRequest, "FindTerminalResponse": findTerminalResponse_1.FindTerminalResponse, "GetStoresUnderAccountRequest": getStoresUnderAccountRequest_1.GetStoresUnderAccountRequest, "GetStoresUnderAccountResponse": getStoresUnderAccountResponse_1.GetStoresUnderAccountResponse, "GetTerminalDetailsRequest": getTerminalDetailsRequest_1.GetTerminalDetailsRequest, "GetTerminalDetailsResponse": getTerminalDetailsResponse_1.GetTerminalDetailsResponse, "GetTerminalsUnderAccountRequest": getTerminalsUnderAccountRequest_1.GetTerminalsUnderAccountRequest, "GetTerminalsUnderAccountResponse": getTerminalsUnderAccountResponse_1.GetTerminalsUnderAccountResponse, "MerchantAccount": merchantAccount_1.MerchantAccount, "ServiceError": serviceError_1.ServiceError, "Store": store_1.Store, }; class ObjectSerializer { static findCorrectType(data, expectedType) { if (data == undefined) { return expectedType; } else if (primitives.indexOf(expectedType.toLowerCase()) !== -1) { return expectedType; } else if (expectedType === "Date") { return expectedType; } else { if (enumsMap[expectedType]) { return expectedType; } if (!typeMap[expectedType]) { return expectedType; // w/e we don't know the type } // Check the discriminator let discriminatorProperty = typeMap[expectedType].discriminator; if (discriminatorProperty == null) { return expectedType; // the type does not have a discriminator. use it. } else { if (data[discriminatorProperty]) { var discriminatorType = data[discriminatorProperty]; if (typeMap[discriminatorType]) { return discriminatorType; // use the type given in the discriminator } else { return expectedType; // discriminator did not map to a type } } else { return expectedType; // discriminator was not present (or an empty string) } } } } static serialize(data, type) { if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; } else if (type.lastIndexOf("Array<", 0) === 0) { // string.startsWith pre es6 let subType = type.replace("Array<", ""); // Array<Type> => Type> subType = subType.substring(0, subType.length - 1); // Type> => Type let transformedData = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.serialize(datum, subType)); } return transformedData; } else if (type === "Date") { return data.toISOString(); } else if (type === "SaleToAcquirerData") { const dataString = JSON.stringify(data); return Buffer.from(dataString).toString("base64"); } else { if (enumsMap[type]) { return data; } if (!typeMap[type]) { // in case we dont know the type return data; } // Get the actual type of this object type = this.findCorrectType(data, type); // get the map for the correct type. let attributeTypes = typeMap[type].getAttributeTypeMap(); let instance = {}; for (let index = 0; index < attributeTypes.length; index++) { let attributeType = attributeTypes[index]; instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type); } return instance; } } static deserialize(data, type) { // polymorphism may change the actual type. type = ObjectSerializer.findCorrectType(data, type); if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; } else if (type.lastIndexOf("Array<", 0) === 0) { // string.startsWith pre es6 let subType = type.replace("Array<", ""); // Array<Type> => Type> subType = subType.substring(0, subType.length - 1); // Type> => Type let transformedData = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.deserialize(datum, subType)); } return transformedData; } else if (type === "Date") { return new Date(data); } else { if (enumsMap[type]) { // is Enum return data; } if (!typeMap[type]) { // dont know the type return data; } let instance = new typeMap[type](); let attributeTypes = typeMap[type].getAttributeTypeMap(); for (let index = 0; index < attributeTypes.length; index++) { let attributeType = attributeTypes[index]; instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type); } return instance; } } } exports.ObjectSerializer = ObjectSerializer; //# sourceMappingURL=models.js.map