UNPKG

@openweb3-io/wallet-pay

Version:

Wallet Pay API client and wallet pay verification library

253 lines 10 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); }) : (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" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ObjectSerializer = void 0; __exportStar(require("./CreateEndpointRequest"), exports); __exportStar(require("./CreateOrderRequest"), exports); __exportStar(require("./CreateRefundRequest"), exports); __exportStar(require("./Currency"), exports); __exportStar(require("./CurrencyNetwork"), exports); __exportStar(require("./CurrencyPair"), exports); __exportStar(require("./CursorPageCurrency"), exports); __exportStar(require("./CursorPageEndpoint"), exports); __exportStar(require("./Endpoint"), exports); __exportStar(require("./EstimateResponse"), exports); __exportStar(require("./GetRatesRequest"), exports); __exportStar(require("./GetRatesResponse"), exports); __exportStar(require("./ModelError"), exports); __exportStar(require("./Order"), exports); __exportStar(require("./PageOrder"), exports); __exportStar(require("./PageRefund"), exports); __exportStar(require("./Rate"), exports); __exportStar(require("./Refund"), exports); __exportStar(require("./TransferRequest"), exports); __exportStar(require("./TransferResponse"), exports); const CreateEndpointRequest_1 = require("./CreateEndpointRequest"); const CreateOrderRequest_1 = require("./CreateOrderRequest"); const CreateRefundRequest_1 = require("./CreateRefundRequest"); const Currency_1 = require("./Currency"); const CurrencyNetwork_1 = require("./CurrencyNetwork"); const CurrencyPair_1 = require("./CurrencyPair"); const CursorPageCurrency_1 = require("./CursorPageCurrency"); const CursorPageEndpoint_1 = require("./CursorPageEndpoint"); const Endpoint_1 = require("./Endpoint"); const EstimateResponse_1 = require("./EstimateResponse"); const GetRatesRequest_1 = require("./GetRatesRequest"); const GetRatesResponse_1 = require("./GetRatesResponse"); const ModelError_1 = require("./ModelError"); const Order_1 = require("./Order"); const PageOrder_1 = require("./PageOrder"); const PageRefund_1 = require("./PageRefund"); const Rate_1 = require("./Rate"); const Refund_1 = require("./Refund"); const TransferRequest_1 = require("./TransferRequest"); const TransferResponse_1 = require("./TransferResponse"); let primitives = [ "string", "boolean", "double", "integer", "long", "float", "number", "any" ]; const supportedMediaTypes = { "application/json": Infinity, "application/octet-stream": 0 }; let enumsMap = new Set([]); let typeMap = { "CreateEndpointRequest": CreateEndpointRequest_1.CreateEndpointRequest, "CreateOrderRequest": CreateOrderRequest_1.CreateOrderRequest, "CreateRefundRequest": CreateRefundRequest_1.CreateRefundRequest, "Currency": Currency_1.Currency, "CurrencyNetwork": CurrencyNetwork_1.CurrencyNetwork, "CurrencyPair": CurrencyPair_1.CurrencyPair, "CursorPageCurrency": CursorPageCurrency_1.CursorPageCurrency, "CursorPageEndpoint": CursorPageEndpoint_1.CursorPageEndpoint, "Endpoint": Endpoint_1.Endpoint, "EstimateResponse": EstimateResponse_1.EstimateResponse, "GetRatesRequest": GetRatesRequest_1.GetRatesRequest, "GetRatesResponse": GetRatesResponse_1.GetRatesResponse, "ModelError": ModelError_1.ModelError, "Order": Order_1.Order, "PageOrder": PageOrder_1.PageOrder, "PageRefund": PageRefund_1.PageRefund, "Rate": Rate_1.Rate, "Refund": Refund_1.Refund, "TransferRequest": TransferRequest_1.TransferRequest, "TransferResponse": TransferResponse_1.TransferResponse, }; 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.has(expectedType)) { return expectedType; } if (!typeMap[expectedType]) { return expectedType; } let discriminatorProperty = typeMap[expectedType].discriminator; if (discriminatorProperty == null) { return expectedType; } else { if (data[discriminatorProperty]) { var discriminatorType = data[discriminatorProperty]; if (typeMap[discriminatorType]) { return discriminatorType; } else { return expectedType; } } else { return expectedType; } } } } static serialize(data, type, format) { if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; } else if (type.lastIndexOf("Array<", 0) === 0) { let subType = type.replace("Array<", ""); subType = subType.substring(0, subType.length - 1); let transformedData = []; for (let index in data) { let date = data[index]; transformedData.push(ObjectSerializer.serialize(date, subType, format)); } return transformedData; } else if (type === "Date") { if (format == "date") { let month = data.getMonth() + 1; month = month < 10 ? "0" + month.toString() : month.toString(); let day = data.getDate(); day = day < 10 ? "0" + day.toString() : day.toString(); return data.getFullYear() + "-" + month + "-" + day; } else { return data.toISOString(); } } else { if (enumsMap.has(type)) { return data; } if (!typeMap[type]) { return data; } type = this.findCorrectType(data, type); let attributeTypes = typeMap[type].getAttributeTypeMap(); let instance = {}; for (let index in attributeTypes) { let attributeType = attributeTypes[index]; instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type, attributeType.format); } return instance; } } static deserialize(data, type, format) { 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) { let subType = type.replace("Array<", ""); subType = subType.substring(0, subType.length - 1); let transformedData = []; for (let index in data) { let date = data[index]; transformedData.push(ObjectSerializer.deserialize(date, subType, format)); } return transformedData; } else if (type === "Date") { return new Date(data); } else { if (enumsMap.has(type)) { return data; } if (!typeMap[type]) { return data; } let instance = new typeMap[type](); let attributeTypes = typeMap[type].getAttributeTypeMap(); for (let index in attributeTypes) { let attributeType = attributeTypes[index]; instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type, attributeType.format); } return instance; } } static normalizeMediaType(mediaType) { if (mediaType === undefined) { return undefined; } return mediaType.split(";")[0].trim().toLowerCase(); } static getPreferredMediaType(mediaTypes) { if (!mediaTypes) { return "application/json"; } const normalMediaTypes = mediaTypes.map(this.normalizeMediaType); let selectedMediaType = undefined; let selectedRank = -Infinity; for (const mediaType of normalMediaTypes) { if (supportedMediaTypes[mediaType] > selectedRank) { selectedMediaType = mediaType; selectedRank = supportedMediaTypes[mediaType]; } } if (selectedMediaType === undefined) { throw new Error("None of the given media types are supported: " + mediaTypes.join(", ")); } return selectedMediaType; } static stringify(data, mediaType) { if (mediaType === "application/json") { return JSON.stringify(data); } throw new Error("The mediaType " + mediaType + " is not supported by ObjectSerializer.stringify."); } static parse(rawData, mediaType) { if (mediaType === undefined) { throw new Error("Cannot parse content. No Content-Type defined."); } if (mediaType === "application/json") { return JSON.parse(rawData); } throw new Error("The mediaType " + mediaType + " is not supported by ObjectSerializer.parse."); } } exports.ObjectSerializer = ObjectSerializer; //# sourceMappingURL=ObjectSerializer.js.map