boldsign
Version:
NodeJS client for boldsign
212 lines • 7.29 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.VoidAuth = exports.OAuth = exports.ApiKeyAuth = exports.HttpBearerAuth = exports.HttpBasicAuth = exports.ObjectSerializer = void 0;
const _1 = require("./");
let primitives = [
"string",
"boolean",
"double",
"integer",
"long",
"float",
"number",
"any"
];
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 (_1.enumsMap[expectedType]) {
return expectedType;
}
if (!_1.typeMap[expectedType]) {
return expectedType;
}
let discriminatorProperty = _1.typeMap[expectedType].discriminator;
let discriminatorValue = data[discriminatorProperty];
if (_1.typeMap[expectedType].hasOwnProperty('discriminatorClassName')) {
let discriminatorClass = _1.typeMap[expectedType].discriminatorClassName(discriminatorValue);
if (discriminatorClass) {
return discriminatorClass;
}
}
if (discriminatorProperty == null) {
return expectedType;
}
else {
if (data[discriminatorProperty]) {
var discriminatorType = data[discriminatorProperty];
if (_1.typeMap[discriminatorType]) {
return discriminatorType;
}
else {
return expectedType;
}
}
else {
return expectedType;
}
}
}
}
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) {
let subType = type.replace("Array<", "");
subType = subType.substring(0, subType.length - 1);
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 (_1.enumsMap[type]) {
return data;
}
if (!_1.typeMap[type]) {
return data;
}
type = this.findCorrectType(data, type);
let attributeTypes = _1.typeMap[type].getAttributeTypeMap();
let instance = {};
for (let index = 0; index < attributeTypes.length; index++) {
let attributeType = attributeTypes[index];
let value = ObjectSerializer.serialize(data[attributeType.name], attributeType.type);
if (value !== undefined) {
instance[attributeType.baseName] = value;
}
}
return instance;
}
}
static deserialize(data, 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) {
let subType = type.replace("Array<", "");
subType = subType.substring(0, subType.length - 1);
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 (_1.enumsMap[type]) {
return data;
}
if (!_1.typeMap[type]) {
return data;
}
let instance = new _1.typeMap[type]();
let attributeTypes = _1.typeMap[type].getAttributeTypeMap();
for (let index = 0; index < attributeTypes.length; index++) {
let attributeType = attributeTypes[index];
const propertyKey = data[attributeType.baseName] !== undefined
? attributeType.baseName
: attributeType.name;
instance[attributeType.name] = ObjectSerializer.deserialize(data[propertyKey], attributeType.type);
}
return instance;
}
}
}
exports.ObjectSerializer = ObjectSerializer;
class HttpBasicAuth {
constructor() {
this.username = '';
this.password = '';
}
applyToRequest(requestOptions) {
requestOptions.auth = {
username: this.username, password: this.password
};
}
}
exports.HttpBasicAuth = HttpBasicAuth;
class HttpBearerAuth {
constructor() {
this.accessToken = '';
}
applyToRequest(requestOptions) {
if (requestOptions && requestOptions.headers) {
const accessToken = typeof this.accessToken === 'function'
? this.accessToken()
: this.accessToken;
requestOptions.headers["Authorization"] = "Bearer " + accessToken;
}
}
}
exports.HttpBearerAuth = HttpBearerAuth;
class ApiKeyAuth {
constructor(location, paramName) {
this.location = location;
this.paramName = paramName;
this.apiKey = '';
}
applyToRequest(requestOptions) {
if (this.location == "query") {
requestOptions.params[this.paramName] = this.apiKey;
}
else if (this.location == "header" && requestOptions && requestOptions.headers) {
requestOptions.headers[this.paramName] = this.apiKey;
}
else if (this.location == 'cookie' && requestOptions && requestOptions.headers) {
if (requestOptions.headers['Cookie']) {
requestOptions.headers['Cookie'] += '; ' + this.paramName + '=' + encodeURIComponent(this.apiKey);
}
else {
requestOptions.headers['Cookie'] = this.paramName + '=' + encodeURIComponent(this.apiKey);
}
}
}
}
exports.ApiKeyAuth = ApiKeyAuth;
class OAuth {
constructor() {
this.accessToken = '';
}
applyToRequest(requestOptions) {
if (requestOptions && requestOptions.headers) {
requestOptions.headers["Authorization"] = "Bearer " + this.accessToken;
}
}
}
exports.OAuth = OAuth;
class VoidAuth {
constructor() {
this.username = '';
this.password = '';
}
applyToRequest(_) {
}
}
exports.VoidAuth = VoidAuth;
//# sourceMappingURL=models.js.map