@paciolan/cybersource-sdk
Version:
CyberSource REST API Typescript SDK
174 lines (173 loc) • 11.2 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ReportDownloadsApi = exports.ReportDownloadsApiFactory = exports.ReportDownloadsApiFp = exports.ReportDownloadsApiAxiosParamCreator = void 0;
/* tslint:disable */
/* eslint-disable */
/**
* CyberSource Merged Spec
* All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
*
* OpenAPI spec version: 0.0.1
*
*
* NOTE: This class is auto generated by the swagger code generator program.
* https://github.com/swagger-api/swagger-codegen.git
* Do not edit the class manually.
*/
const axios_1 = __importDefault(require("axios"));
const AuthenticationHeader_1 = require("../authentication/core/AuthenticationHeader");
// Some imports not used depending on template conditions
// @ts-ignore
const base_1 = require("../base");
/**
* ReportDownloadsApi - axios parameter creator
* @export
*/
const ReportDownloadsApiAxiosParamCreator = function (configuration) {
return {
/**
* Download a report using the unique report name and date.
* @summary Download a Report
* @param {string} reportDate Valid date on which to download the report in **ISO 8601 format** Please refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14) **Example date format:** yyyy-mm-dd For reports that span multiple days, this value would be the end date of the report in the time zone of the report subscription. Example 1: If your report start date is 2020-03-06 and the end date is 2020-03-09, the reportDate passed in the query is 2020-03-09. Example 2: If your report runs from midnight to midnight on 2020-03-09, the reportDate passed in the query is 2020-03-10
* @param {string} reportName Name of the report to download
* @param {string} [organizationId] Valid Organization Id
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
downloadReport: (reportDate, reportName, organizationId, options = {}) => __awaiter(this, void 0, void 0, function* () {
// verify required parameter 'reportDate' is not null or undefined
if (reportDate === null || reportDate === undefined) {
throw new base_1.RequiredError('reportDate', 'Required parameter reportDate was null or undefined when calling downloadReport.');
}
// verify required parameter 'reportName' is not null or undefined
if (reportName === null || reportName === undefined) {
throw new base_1.RequiredError('reportName', 'Required parameter reportName was null or undefined when calling downloadReport.');
}
const localVarPath = `/reporting/v3/report-downloads`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
if (organizationId !== undefined) {
localVarQueryParameter['organizationId'] = organizationId;
}
if (reportDate !== undefined) {
localVarQueryParameter['reportDate'] = (reportDate instanceof Date) ?
reportDate.toISOString().substr(0, 10) :
reportDate;
}
if (reportName !== undefined) {
localVarQueryParameter['reportName'] = reportName;
}
const query = new URLSearchParams(localVarUrlObj.search);
for (const key in localVarQueryParameter) {
query.set(key, localVarQueryParameter[key]);
}
for (const key in options.params) {
query.set(key, options.params[key]);
}
localVarUrlObj.search = (new URLSearchParams(query)).toString();
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
const authHeader = new AuthenticationHeader_1.AuthenticationHeader();
authHeader.setConfiguration(Object.assign(Object.assign({}, configuration), options));
localVarRequestOptions.headers = authHeader.callAuthenticationHeader(localVarRequestOptions.method, localVarPath, localVarRequestOptions.data, localVarRequestOptions.headers);
return {
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
options: localVarRequestOptions,
};
}),
};
};
exports.ReportDownloadsApiAxiosParamCreator = ReportDownloadsApiAxiosParamCreator;
/**
* ReportDownloadsApi - functional programming interface
* @export
*/
const ReportDownloadsApiFp = function (configuration) {
return {
/**
* Download a report using the unique report name and date.
* @summary Download a Report
* @param {string} reportDate Valid date on which to download the report in **ISO 8601 format** Please refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14) **Example date format:** yyyy-mm-dd For reports that span multiple days, this value would be the end date of the report in the time zone of the report subscription. Example 1: If your report start date is 2020-03-06 and the end date is 2020-03-09, the reportDate passed in the query is 2020-03-09. Example 2: If your report runs from midnight to midnight on 2020-03-09, the reportDate passed in the query is 2020-03-10
* @param {string} reportName Name of the report to download
* @param {string} [organizationId] Valid Organization Id
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
downloadReport(reportDate, reportName, organizationId, options) {
return __awaiter(this, void 0, void 0, function* () {
const localVarAxiosArgs = yield (0, exports.ReportDownloadsApiAxiosParamCreator)(configuration).downloadReport(reportDate, reportName, organizationId, options);
return (axios = axios_1.default, basePath = base_1.BASE_PATH) => {
const axiosRequestArgs = Object.assign(Object.assign({}, localVarAxiosArgs.options), { url: basePath + localVarAxiosArgs.url });
return axios.request(axiosRequestArgs);
};
});
},
};
};
exports.ReportDownloadsApiFp = ReportDownloadsApiFp;
/**
* ReportDownloadsApi - factory interface
* @export
*/
const ReportDownloadsApiFactory = function (configuration, basePath, axios) {
return {
/**
* Download a report using the unique report name and date.
* @summary Download a Report
* @param {string} reportDate Valid date on which to download the report in **ISO 8601 format** Please refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14) **Example date format:** yyyy-mm-dd For reports that span multiple days, this value would be the end date of the report in the time zone of the report subscription. Example 1: If your report start date is 2020-03-06 and the end date is 2020-03-09, the reportDate passed in the query is 2020-03-09. Example 2: If your report runs from midnight to midnight on 2020-03-09, the reportDate passed in the query is 2020-03-10
* @param {string} reportName Name of the report to download
* @param {string} [organizationId] Valid Organization Id
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
downloadReport(reportDate, reportName, organizationId, options) {
return __awaiter(this, void 0, void 0, function* () {
return (0, exports.ReportDownloadsApiFp)(configuration).downloadReport(reportDate, reportName, organizationId, options).then((request) => request(axios, basePath));
});
},
};
};
exports.ReportDownloadsApiFactory = ReportDownloadsApiFactory;
/**
* ReportDownloadsApi - object-oriented interface
* @export
* @class ReportDownloadsApi
* @extends {BaseAPI}
*/
class ReportDownloadsApi extends base_1.BaseAPI {
/**
* Download a report using the unique report name and date.
* @summary Download a Report
* @param {string} reportDate Valid date on which to download the report in **ISO 8601 format** Please refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14) **Example date format:** yyyy-mm-dd For reports that span multiple days, this value would be the end date of the report in the time zone of the report subscription. Example 1: If your report start date is 2020-03-06 and the end date is 2020-03-09, the reportDate passed in the query is 2020-03-09. Example 2: If your report runs from midnight to midnight on 2020-03-09, the reportDate passed in the query is 2020-03-10
* @param {string} reportName Name of the report to download
* @param {string} [organizationId] Valid Organization Id
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof ReportDownloadsApi
*/
downloadReport(reportDate, reportName, organizationId, options) {
return __awaiter(this, void 0, void 0, function* () {
return (0, exports.ReportDownloadsApiFp)(this.configuration).downloadReport(reportDate, reportName, organizationId, options).then((request) => request(this.axios, options.runEnvironment != null ? `https://${options.runEnvironment}` : this.basePath));
});
}
}
exports.ReportDownloadsApi = ReportDownloadsApi;